diff --git a/generated/prisma/client.d.ts b/generated/prisma/client.d.ts index 6d1e0ee8..bc20c6c1 100644 --- a/generated/prisma/client.d.ts +++ b/generated/prisma/client.d.ts @@ -1 +1 @@ -export * from "./index"; +export * from "./index" \ No newline at end of file diff --git a/generated/prisma/client.js b/generated/prisma/client.js index 69c5b842..6ac8a817 100644 --- a/generated/prisma/client.js +++ b/generated/prisma/client.js @@ -1,4 +1,5 @@ + /* !!! This is code generated by Prisma. Do not edit directly. !!! /* eslint-disable */ // biome-ignore-all lint: generated file -module.exports = { ...require(".") }; +module.exports = { ...require('.') } \ No newline at end of file diff --git a/generated/prisma/default.d.ts b/generated/prisma/default.d.ts index 6d1e0ee8..bc20c6c1 100644 --- a/generated/prisma/default.d.ts +++ b/generated/prisma/default.d.ts @@ -1 +1 @@ -export * from "./index"; +export * from "./index" \ No newline at end of file diff --git a/generated/prisma/default.js b/generated/prisma/default.js index 4a880b7a..eb556755 100644 --- a/generated/prisma/default.js +++ b/generated/prisma/default.js @@ -1,4 +1,5 @@ + /* !!! This is code generated by Prisma. Do not edit directly. !!! /* eslint-disable */ // biome-ignore-all lint: generated file -module.exports = { ...require("#main-entry-point") }; +module.exports = { ...require('#main-entry-point') } \ No newline at end of file diff --git a/generated/prisma/edge.d.ts b/generated/prisma/edge.d.ts index f348fd43..274b8fa6 100644 --- a/generated/prisma/edge.d.ts +++ b/generated/prisma/edge.d.ts @@ -1 +1 @@ -export * from "./default"; +export * from "./default" \ No newline at end of file diff --git a/generated/prisma/edge.js b/generated/prisma/edge.js index 3e9355f9..606b3d2b 100644 --- a/generated/prisma/edge.js +++ b/generated/prisma/edge.js @@ -1,3 +1,4 @@ + /* !!! This is code generated by Prisma. Do not edit directly. !!! /* eslint-disable */ // biome-ignore-all lint: generated file @@ -26,12 +27,13 @@ const { Public, getRuntime, createParam, -} = require("./runtime/edge.js"); +} = require('./runtime/edge.js') -const Prisma = {}; -exports.Prisma = Prisma; -exports.$Enums = {}; +const Prisma = {} + +exports.Prisma = Prisma +exports.$Enums = {} /** * Prisma Client JS version: 6.19.2 @@ -39,239 +41,288 @@ exports.$Enums = {}; */ Prisma.prismaVersion = { client: "6.19.2", - engine: "c2990dca591cba766e3b7ef5d9e8a84796e47ab7", -}; + engine: "c2990dca591cba766e3b7ef5d9e8a84796e47ab7" +} Prisma.PrismaClientKnownRequestError = PrismaClientKnownRequestError; -Prisma.PrismaClientUnknownRequestError = PrismaClientUnknownRequestError; -Prisma.PrismaClientRustPanicError = PrismaClientRustPanicError; -Prisma.PrismaClientInitializationError = PrismaClientInitializationError; -Prisma.PrismaClientValidationError = PrismaClientValidationError; -Prisma.Decimal = Decimal; +Prisma.PrismaClientUnknownRequestError = PrismaClientUnknownRequestError +Prisma.PrismaClientRustPanicError = PrismaClientRustPanicError +Prisma.PrismaClientInitializationError = PrismaClientInitializationError +Prisma.PrismaClientValidationError = PrismaClientValidationError +Prisma.Decimal = Decimal /** * Re-export of sql-template-tag */ -Prisma.sql = sqltag; -Prisma.empty = empty; -Prisma.join = join; -Prisma.raw = raw; -Prisma.validator = Public.validator; +Prisma.sql = sqltag +Prisma.empty = empty +Prisma.join = join +Prisma.raw = raw +Prisma.validator = Public.validator /** - * Extensions - */ -Prisma.getExtensionContext = Extensions.getExtensionContext; -Prisma.defineExtension = Extensions.defineExtension; +* Extensions +*/ +Prisma.getExtensionContext = Extensions.getExtensionContext +Prisma.defineExtension = Extensions.defineExtension /** * Shorthand utilities for JSON filtering */ -Prisma.DbNull = objectEnumValues.instances.DbNull; -Prisma.JsonNull = objectEnumValues.instances.JsonNull; -Prisma.AnyNull = objectEnumValues.instances.AnyNull; +Prisma.DbNull = objectEnumValues.instances.DbNull +Prisma.JsonNull = objectEnumValues.instances.JsonNull +Prisma.AnyNull = objectEnumValues.instances.AnyNull Prisma.NullTypes = { DbNull: objectEnumValues.classes.DbNull, JsonNull: objectEnumValues.classes.JsonNull, - AnyNull: objectEnumValues.classes.AnyNull, -}; + AnyNull: objectEnumValues.classes.AnyNull +} + + + + /** * Enums */ exports.Prisma.TransactionIsolationLevel = makeStrictEnum({ - ReadUncommitted: "ReadUncommitted", - ReadCommitted: "ReadCommitted", - RepeatableRead: "RepeatableRead", - Serializable: "Serializable", + ReadUncommitted: 'ReadUncommitted', + ReadCommitted: 'ReadCommitted', + RepeatableRead: 'RepeatableRead', + Serializable: 'Serializable' }); -exports.Prisma.PostScalarFieldEnum = { - id: "id", - name: "name", - createdAt: "createdAt", - updatedAt: "updatedAt", - createdById: "createdById", -}; - exports.Prisma.AccountScalarFieldEnum = { - id: "id", - userId: "userId", - type: "type", - provider: "provider", - providerAccountId: "providerAccountId", - refresh_token: "refresh_token", - access_token: "access_token", - expires_at: "expires_at", - token_type: "token_type", - scope: "scope", - id_token: "id_token", - session_state: "session_state", - refresh_token_expires_in: "refresh_token_expires_in", + id: 'id', + userId: 'userId', + type: 'type', + provider: 'provider', + providerAccountId: 'providerAccountId', + refresh_token: 'refresh_token', + access_token: 'access_token', + expires_at: 'expires_at', + token_type: 'token_type', + scope: 'scope', + id_token: 'id_token', + session_state: 'session_state', + refresh_token_expires_in: 'refresh_token_expires_in' }; exports.Prisma.SessionScalarFieldEnum = { - id: "id", - sessionToken: "sessionToken", - userId: "userId", - expires: "expires", + id: 'id', + sessionToken: 'sessionToken', + userId: 'userId', + expires: 'expires' }; exports.Prisma.UserScalarFieldEnum = { - id: "id", - name: "name", - email: "email", - emailVerified: "emailVerified", - image: "image", + id: 'id', + name: 'name', + email: 'email', + emailVerified: 'emailVerified', + image: 'image', + balance: 'balance' }; exports.Prisma.VerificationTokenScalarFieldEnum = { - identifier: "identifier", - token: "token", - expires: "expires", + identifier: 'identifier', + token: 'token', + expires: 'expires' +}; + +exports.Prisma.ShopScalarFieldEnum = { + id: 'id', + userId: 'userId', + label: 'label' +}; + +exports.Prisma.ItemScalarFieldEnum = { + item_name: 'item_name', + stock: 'stock', + shopId: 'shopId' +}; + +exports.Prisma.SellableScalarFieldEnum = { + id: 'id', + item_name: 'item_name', + amount: 'amount', + price: 'price', + shopId: 'shopId', + enabled: 'enabled' +}; + +exports.Prisma.CartScalarFieldEnum = { + id: 'id', + userId: 'userId' +}; + +exports.Prisma.CartItemScalarFieldEnum = { + itemId: 'itemId', + quantity: 'quantity', + cartId: 'cartId' +}; + +exports.Prisma.AdressScalarFieldEnum = { + id: 'id', + userId: 'userId', + adress: 'adress' }; exports.Prisma.SortOrder = { - asc: "asc", - desc: "desc", -}; - -exports.Prisma.PostOrderByRelevanceFieldEnum = { - name: "name", - createdById: "createdById", + asc: 'asc', + desc: 'desc' }; exports.Prisma.NullsOrder = { - first: "first", - last: "last", + first: 'first', + last: 'last' }; exports.Prisma.AccountOrderByRelevanceFieldEnum = { - id: "id", - userId: "userId", - type: "type", - provider: "provider", - providerAccountId: "providerAccountId", - refresh_token: "refresh_token", - access_token: "access_token", - token_type: "token_type", - scope: "scope", - id_token: "id_token", - session_state: "session_state", + id: 'id', + userId: 'userId', + type: 'type', + provider: 'provider', + providerAccountId: 'providerAccountId', + refresh_token: 'refresh_token', + access_token: 'access_token', + token_type: 'token_type', + scope: 'scope', + id_token: 'id_token', + session_state: 'session_state' }; exports.Prisma.SessionOrderByRelevanceFieldEnum = { - id: "id", - sessionToken: "sessionToken", - userId: "userId", + id: 'id', + sessionToken: 'sessionToken', + userId: 'userId' }; exports.Prisma.UserOrderByRelevanceFieldEnum = { - id: "id", - name: "name", - email: "email", - image: "image", + id: 'id', + name: 'name', + email: 'email', + image: 'image' }; exports.Prisma.VerificationTokenOrderByRelevanceFieldEnum = { - identifier: "identifier", - token: "token", + identifier: 'identifier', + token: 'token' }; +exports.Prisma.ShopOrderByRelevanceFieldEnum = { + userId: 'userId', + label: 'label' +}; + +exports.Prisma.ItemOrderByRelevanceFieldEnum = { + item_name: 'item_name' +}; + +exports.Prisma.SellableOrderByRelevanceFieldEnum = { + id: 'id', + item_name: 'item_name' +}; + +exports.Prisma.CartOrderByRelevanceFieldEnum = { + id: 'id', + userId: 'userId' +}; + +exports.Prisma.CartItemOrderByRelevanceFieldEnum = { + itemId: 'itemId', + cartId: 'cartId' +}; + +exports.Prisma.AdressOrderByRelevanceFieldEnum = { + id: 'id', + userId: 'userId', + adress: 'adress' +}; + + exports.Prisma.ModelName = { - Post: "Post", - Account: "Account", - Session: "Session", - User: "User", - VerificationToken: "VerificationToken", + Account: 'Account', + Session: 'Session', + User: 'User', + VerificationToken: 'VerificationToken', + Shop: 'Shop', + Item: 'Item', + Sellable: 'Sellable', + Cart: 'Cart', + CartItem: 'CartItem', + Adress: 'Adress' }; /** * Create the Client */ const config = { - generator: { - name: "client", - provider: { - fromEnvVar: null, - value: "prisma-client-js", + "generator": { + "name": "client", + "provider": { + "fromEnvVar": null, + "value": "prisma-client-js" }, - output: { - value: - "/var/home/zaremate/Documents/cc-create-shop/cc-create-shop/generated/prisma", - fromEnvVar: null, + "output": { + "value": "/var/home/zaremate/Documents/cc-create-shop/generated/prisma", + "fromEnvVar": null }, - config: { - engineType: "library", + "config": { + "engineType": "library" }, - binaryTargets: [ + "binaryTargets": [ { - fromEnvVar: null, - value: "rhel-openssl-3.0.x", - native: true, - }, + "fromEnvVar": null, + "value": "rhel-openssl-3.0.x", + "native": true + } ], - previewFeatures: [], - sourceFilePath: - "/var/home/zaremate/Documents/cc-create-shop/cc-create-shop/prisma/schema.prisma", - isCustomOutput: true, + "previewFeatures": [], + "sourceFilePath": "/var/home/zaremate/Documents/cc-create-shop/prisma/schema.prisma", + "isCustomOutput": true }, - relativeEnvPaths: { - rootEnvPath: null, - schemaEnvPath: "../../.env", + "relativeEnvPaths": { + "rootEnvPath": null, + "schemaEnvPath": "../../.env" }, - relativePath: "../../prisma", - clientVersion: "6.19.2", - engineVersion: "c2990dca591cba766e3b7ef5d9e8a84796e47ab7", - datasourceNames: ["db"], - activeProvider: "mysql", - postinstall: false, - inlineDatasources: { - db: { - url: { - fromEnvVar: "DATABASE_URL", - value: null, - }, - }, + "relativePath": "../../prisma", + "clientVersion": "6.19.2", + "engineVersion": "c2990dca591cba766e3b7ef5d9e8a84796e47ab7", + "datasourceNames": [ + "db" + ], + "activeProvider": "mysql", + "inlineDatasources": { + "db": { + "url": { + "fromEnvVar": "DATABASE_URL", + "value": null + } + } }, - inlineSchema: - '// This is your Prisma schema file,\n// learn more about it in the docs: https://pris.ly/d/prisma-schema\n\ngenerator client {\n provider = "prisma-client-js"\n output = "../generated/prisma"\n}\n\ndatasource db {\n provider = "mysql"\n // NOTE: When using mysql or sqlserver, uncomment the @db.Text annotations in model Account below\n // Further reading:\n // https://next-auth.js.org/adapters/prisma#create-the-prisma-schema\n // https://www.prisma.io/docs/reference/api-reference/prisma-schema-reference#string\n url = env("DATABASE_URL")\n}\n\nmodel Post {\n id Int @id @default(autoincrement())\n name String\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n createdBy User @relation(fields: [createdById], references: [id])\n createdById String\n\n @@index([name])\n}\n\n// Necessary for Next auth\nmodel Account {\n id String @id @default(cuid())\n userId String\n type String\n provider String\n providerAccountId String\n refresh_token String? @db.Text\n access_token String? // @db.Text\n expires_at Int?\n token_type String?\n scope String?\n id_token String? // @db.Text\n session_state String?\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n refresh_token_expires_in Int?\n\n @@unique([provider, providerAccountId])\n}\n\nmodel Session {\n id String @id @default(cuid())\n sessionToken String @unique\n userId String\n expires DateTime\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n}\n\nmodel User {\n id String @id @default(cuid())\n name String?\n email String? @unique\n emailVerified DateTime?\n image String?\n accounts Account[]\n sessions Session[]\n posts Post[]\n}\n\nmodel VerificationToken {\n identifier String\n token String @unique\n expires DateTime\n\n @@unique([identifier, token])\n}\n', - inlineSchemaHash: - "c08474639a944941f1c88b34cba4f0bee4e979c206a6c528fbeed6fac72671f9", - copyEngine: true, -}; -config.dirname = "/"; + "inlineSchema": "// This is your Prisma schema file,\n// learn more about it in the docs: https://pris.ly/d/prisma-schema\n\ngenerator client {\n provider = \"prisma-client-js\"\n output = \"../generated/prisma\"\n}\n\ndatasource db {\n provider = \"mysql\"\n // NOTE: When using mysql or sqlserver, uncomment the @db.Text annotations in model Account below\n // Further reading:\n // https://next-auth.js.org/adapters/prisma#create-the-prisma-schema\n // https://www.prisma.io/docs/reference/api-reference/prisma-schema-reference#string\n url = env(\"DATABASE_URL\")\n}\n\n// Necessary for Next auth\nmodel Account {\n id String @id @default(cuid())\n userId String\n type String\n provider String\n providerAccountId String\n refresh_token String? @db.Text\n access_token String? // @db.Text\n expires_at Int?\n token_type String?\n scope String?\n id_token String? // @db.Text\n session_state String?\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n refresh_token_expires_in Int?\n\n @@unique([provider, providerAccountId])\n}\n\nmodel Session {\n id String @id @default(cuid())\n sessionToken String @unique\n userId String\n expires DateTime\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n}\n\nmodel User {\n id String @id @default(cuid())\n name String?\n email String? @unique\n emailVerified DateTime?\n image String?\n balance Float @default(1000)\n\n accounts Account[]\n sessions Session[]\n shops Shop[]\n carts Cart[]\n adresses Adress[]\n}\n\nmodel VerificationToken {\n identifier String\n token String @unique\n expires DateTime\n\n @@unique([identifier, token])\n}\n\n//////////////////////\n// SHOP\n//////////////////////\n\nmodel Shop {\n id Int @id\n userId String\n label String\n\n user User @relation(fields: [userId], references: [id], onDelete: Cascade, onUpdate: Cascade)\n items Item[]\n sellables Sellable[]\n}\n\nmodel Item {\n item_name String @id\n stock Int\n shopId Int\n\n shop Shop @relation(fields: [shopId], references: [id], onDelete: Cascade, onUpdate: Cascade)\n sellables Sellable[]\n}\n\nmodel Sellable {\n id String @id @default(cuid())\n item_name String\n amount Int\n price Float\n shopId Int\n enabled Boolean @default(true)\n\n shop Shop @relation(fields: [shopId], references: [id], onDelete: Cascade, onUpdate: Cascade)\n item Item @relation(fields: [item_name], references: [item_name], onDelete: Cascade, onUpdate: Cascade)\n cartItems CartItem[]\n}\n\n//////////////////////\n// CART\n//////////////////////\n\nmodel Cart {\n id String @id\n userId String\n\n user User @relation(fields: [userId], references: [id], onDelete: Cascade, onUpdate: Cascade)\n cartItems CartItem[]\n}\n\nmodel CartItem {\n itemId String @id\n quantity Int\n cartId String\n\n cart Cart @relation(fields: [cartId], references: [id], onDelete: Cascade, onUpdate: Cascade)\n sellable Sellable @relation(fields: [itemId], references: [id], onDelete: Cascade, onUpdate: Cascade)\n}\n\n//////////////////////\n// ADDRESS\n//////////////////////\n\nmodel Adress {\n id String @id @default(cuid())\n userId String\n adress String\n\n user User @relation(fields: [userId], references: [id], onDelete: Cascade, onUpdate: Cascade)\n}\n", + "inlineSchemaHash": "c329b0b4b5e81ae3d0db879cefdad70ba729b53e86e9bbf3275b8a13ef241636", + "copyEngine": true +} +config.dirname = '/' -config.runtimeDataModel = JSON.parse( - '{"models":{"Post":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":{"name":"autoincrement","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"name","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"createdBy","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"User","nativeType":null,"relationName":"PostToUser","relationFromFields":["createdById"],"relationToFields":["id"],"isGenerated":false,"isUpdatedAt":false},{"name":"createdById","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"Account":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"userId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"type","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"provider","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"providerAccountId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"refresh_token","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":["Text",[]],"isGenerated":false,"isUpdatedAt":false},{"name":"access_token","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"expires_at","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"token_type","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"scope","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"id_token","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"session_state","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"user","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"User","nativeType":null,"relationName":"AccountToUser","relationFromFields":["userId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"refresh_token_expires_in","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[["provider","providerAccountId"]],"uniqueIndexes":[{"name":null,"fields":["provider","providerAccountId"]}],"isGenerated":false},"Session":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"sessionToken","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"userId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"expires","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"user","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"User","nativeType":null,"relationName":"SessionToUser","relationFromFields":["userId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"User":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"name","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"email","kind":"scalar","isList":false,"isRequired":false,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"emailVerified","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"image","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"accounts","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Account","nativeType":null,"relationName":"AccountToUser","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"sessions","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Session","nativeType":null,"relationName":"SessionToUser","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"posts","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Post","nativeType":null,"relationName":"PostToUser","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"VerificationToken":{"dbName":null,"schema":null,"fields":[{"name":"identifier","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"token","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"expires","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[["identifier","token"]],"uniqueIndexes":[{"name":null,"fields":["identifier","token"]}],"isGenerated":false}},"enums":{},"types":{}}', -); -defineDmmfProperty(exports.Prisma, config.runtimeDataModel); -config.engineWasm = undefined; -config.compilerWasm = undefined; +config.runtimeDataModel = JSON.parse("{\"models\":{\"Account\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"String\",\"nativeType\":null,\"default\":{\"name\":\"cuid\",\"args\":[1]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"userId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"type\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"provider\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"providerAccountId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"refresh_token\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"Text\",[]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"access_token\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"expires_at\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"token_type\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"scope\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"id_token\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"session_state\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"User\",\"nativeType\":null,\"relationName\":\"AccountToUser\",\"relationFromFields\":[\"userId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"refresh_token_expires_in\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[[\"provider\",\"providerAccountId\"]],\"uniqueIndexes\":[{\"name\":null,\"fields\":[\"provider\",\"providerAccountId\"]}],\"isGenerated\":false},\"Session\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"String\",\"nativeType\":null,\"default\":{\"name\":\"cuid\",\"args\":[1]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"sessionToken\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":true,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"userId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"expires\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"User\",\"nativeType\":null,\"relationName\":\"SessionToUser\",\"relationFromFields\":[\"userId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"User\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"String\",\"nativeType\":null,\"default\":{\"name\":\"cuid\",\"args\":[1]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"email\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":true,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"emailVerified\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"image\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"balance\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Float\",\"nativeType\":null,\"default\":1000,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"accounts\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Account\",\"nativeType\":null,\"relationName\":\"AccountToUser\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"sessions\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Session\",\"nativeType\":null,\"relationName\":\"SessionToUser\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"shops\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Shop\",\"nativeType\":null,\"relationName\":\"ShopToUser\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"carts\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Cart\",\"nativeType\":null,\"relationName\":\"CartToUser\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"adresses\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Adress\",\"nativeType\":null,\"relationName\":\"AdressToUser\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"VerificationToken\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"identifier\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"token\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":true,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"expires\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[[\"identifier\",\"token\"]],\"uniqueIndexes\":[{\"name\":null,\"fields\":[\"identifier\",\"token\"]}],\"isGenerated\":false},\"Shop\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"userId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"label\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"User\",\"nativeType\":null,\"relationName\":\"ShopToUser\",\"relationFromFields\":[\"userId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"relationOnUpdate\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"items\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Item\",\"nativeType\":null,\"relationName\":\"ItemToShop\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"sellables\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Sellable\",\"nativeType\":null,\"relationName\":\"SellableToShop\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"Item\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"item_name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"stock\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"shopId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"shop\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Shop\",\"nativeType\":null,\"relationName\":\"ItemToShop\",\"relationFromFields\":[\"shopId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"relationOnUpdate\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"sellables\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Sellable\",\"nativeType\":null,\"relationName\":\"ItemToSellable\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"Sellable\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"String\",\"nativeType\":null,\"default\":{\"name\":\"cuid\",\"args\":[1]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"item_name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"amount\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"price\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"shopId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"enabled\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Boolean\",\"nativeType\":null,\"default\":true,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"shop\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Shop\",\"nativeType\":null,\"relationName\":\"SellableToShop\",\"relationFromFields\":[\"shopId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"relationOnUpdate\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"item\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Item\",\"nativeType\":null,\"relationName\":\"ItemToSellable\",\"relationFromFields\":[\"item_name\"],\"relationToFields\":[\"item_name\"],\"relationOnDelete\":\"Cascade\",\"relationOnUpdate\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"cartItems\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"CartItem\",\"nativeType\":null,\"relationName\":\"CartItemToSellable\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"Cart\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"userId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"User\",\"nativeType\":null,\"relationName\":\"CartToUser\",\"relationFromFields\":[\"userId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"relationOnUpdate\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"cartItems\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"CartItem\",\"nativeType\":null,\"relationName\":\"CartToCartItem\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"CartItem\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"itemId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"quantity\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"cartId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"cart\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Cart\",\"nativeType\":null,\"relationName\":\"CartToCartItem\",\"relationFromFields\":[\"cartId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"relationOnUpdate\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"sellable\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Sellable\",\"nativeType\":null,\"relationName\":\"CartItemToSellable\",\"relationFromFields\":[\"itemId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"relationOnUpdate\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"Adress\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"String\",\"nativeType\":null,\"default\":{\"name\":\"cuid\",\"args\":[1]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"userId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"adress\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"User\",\"nativeType\":null,\"relationName\":\"AdressToUser\",\"relationFromFields\":[\"userId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"relationOnUpdate\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false}},\"enums\":{},\"types\":{}}") +defineDmmfProperty(exports.Prisma, config.runtimeDataModel) +config.engineWasm = undefined +config.compilerWasm = undefined config.injectableEdgeEnv = () => ({ parsed: { - DATABASE_URL: - (typeof globalThis !== "undefined" && globalThis["DATABASE_URL"]) || - (typeof process !== "undefined" && - process.env && - process.env.DATABASE_URL) || - undefined, - }, -}); + DATABASE_URL: typeof globalThis !== 'undefined' && globalThis['DATABASE_URL'] || typeof process !== 'undefined' && process.env && process.env.DATABASE_URL || undefined + } +}) -if ( - (typeof globalThis !== "undefined" && globalThis["DEBUG"]) || - (typeof process !== "undefined" && process.env && process.env.DEBUG) || - undefined -) { - Debug.enable( - (typeof globalThis !== "undefined" && globalThis["DEBUG"]) || - (typeof process !== "undefined" && process.env && process.env.DEBUG) || - undefined, - ); +if (typeof globalThis !== 'undefined' && globalThis['DEBUG'] || typeof process !== 'undefined' && process.env && process.env.DEBUG || undefined) { + Debug.enable(typeof globalThis !== 'undefined' && globalThis['DEBUG'] || typeof process !== 'undefined' && process.env && process.env.DEBUG || undefined) } -const PrismaClient = getPrismaClient(config); -exports.PrismaClient = PrismaClient; -Object.assign(exports, Prisma); +const PrismaClient = getPrismaClient(config) +exports.PrismaClient = PrismaClient +Object.assign(exports, Prisma) + diff --git a/generated/prisma/index-browser.js b/generated/prisma/index-browser.js index 953127da..fd1cc015 100644 --- a/generated/prisma/index-browser.js +++ b/generated/prisma/index-browser.js @@ -1,3 +1,4 @@ + /* !!! This is code generated by Prisma. Do not edit directly. !!! /* eslint-disable */ // biome-ignore-all lint: generated file @@ -10,13 +11,14 @@ const { makeStrictEnum, Public, getRuntime, - skip, -} = require("./runtime/index-browser.js"); + skip +} = require('./runtime/index-browser.js') -const Prisma = {}; -exports.Prisma = Prisma; -exports.$Enums = {}; +const Prisma = {} + +exports.Prisma = Prisma +exports.$Enums = {} /** * Prisma Client JS version: 6.19.2 @@ -24,35 +26,35 @@ exports.$Enums = {}; */ Prisma.prismaVersion = { client: "6.19.2", - engine: "c2990dca591cba766e3b7ef5d9e8a84796e47ab7", -}; + engine: "c2990dca591cba766e3b7ef5d9e8a84796e47ab7" +} Prisma.PrismaClientKnownRequestError = () => { const runtimeName = getRuntime().prettyName; throw new Error(`PrismaClientKnownRequestError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}). -In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`); -}; +In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`, +)}; Prisma.PrismaClientUnknownRequestError = () => { const runtimeName = getRuntime().prettyName; throw new Error(`PrismaClientUnknownRequestError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}). -In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`); -}; +In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`, +)} Prisma.PrismaClientRustPanicError = () => { const runtimeName = getRuntime().prettyName; throw new Error(`PrismaClientRustPanicError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}). -In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`); -}; +In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`, +)} Prisma.PrismaClientInitializationError = () => { const runtimeName = getRuntime().prettyName; throw new Error(`PrismaClientInitializationError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}). -In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`); -}; +In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`, +)} Prisma.PrismaClientValidationError = () => { const runtimeName = getRuntime().prettyName; throw new Error(`PrismaClientValidationError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}). -In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`); -}; -Prisma.Decimal = Decimal; +In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`, +)} +Prisma.Decimal = Decimal /** * Re-export of sql-template-tag @@ -60,161 +62,225 @@ Prisma.Decimal = Decimal; Prisma.sql = () => { const runtimeName = getRuntime().prettyName; throw new Error(`sqltag is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}). -In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`); -}; +In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`, +)} Prisma.empty = () => { const runtimeName = getRuntime().prettyName; throw new Error(`empty is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}). -In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`); -}; +In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`, +)} Prisma.join = () => { const runtimeName = getRuntime().prettyName; throw new Error(`join is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}). -In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`); -}; +In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`, +)} Prisma.raw = () => { const runtimeName = getRuntime().prettyName; throw new Error(`raw is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}). -In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`); -}; -Prisma.validator = Public.validator; +In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`, +)} +Prisma.validator = Public.validator /** - * Extensions - */ +* Extensions +*/ Prisma.getExtensionContext = () => { const runtimeName = getRuntime().prettyName; throw new Error(`Extensions.getExtensionContext is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}). -In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`); -}; +In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`, +)} Prisma.defineExtension = () => { const runtimeName = getRuntime().prettyName; throw new Error(`Extensions.defineExtension is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}). -In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`); -}; +In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`, +)} /** * Shorthand utilities for JSON filtering */ -Prisma.DbNull = objectEnumValues.instances.DbNull; -Prisma.JsonNull = objectEnumValues.instances.JsonNull; -Prisma.AnyNull = objectEnumValues.instances.AnyNull; +Prisma.DbNull = objectEnumValues.instances.DbNull +Prisma.JsonNull = objectEnumValues.instances.JsonNull +Prisma.AnyNull = objectEnumValues.instances.AnyNull Prisma.NullTypes = { DbNull: objectEnumValues.classes.DbNull, JsonNull: objectEnumValues.classes.JsonNull, - AnyNull: objectEnumValues.classes.AnyNull, -}; + AnyNull: objectEnumValues.classes.AnyNull +} + + /** * Enums */ exports.Prisma.TransactionIsolationLevel = makeStrictEnum({ - ReadUncommitted: "ReadUncommitted", - ReadCommitted: "ReadCommitted", - RepeatableRead: "RepeatableRead", - Serializable: "Serializable", + ReadUncommitted: 'ReadUncommitted', + ReadCommitted: 'ReadCommitted', + RepeatableRead: 'RepeatableRead', + Serializable: 'Serializable' }); -exports.Prisma.PostScalarFieldEnum = { - id: "id", - name: "name", - createdAt: "createdAt", - updatedAt: "updatedAt", - createdById: "createdById", -}; - exports.Prisma.AccountScalarFieldEnum = { - id: "id", - userId: "userId", - type: "type", - provider: "provider", - providerAccountId: "providerAccountId", - refresh_token: "refresh_token", - access_token: "access_token", - expires_at: "expires_at", - token_type: "token_type", - scope: "scope", - id_token: "id_token", - session_state: "session_state", - refresh_token_expires_in: "refresh_token_expires_in", + id: 'id', + userId: 'userId', + type: 'type', + provider: 'provider', + providerAccountId: 'providerAccountId', + refresh_token: 'refresh_token', + access_token: 'access_token', + expires_at: 'expires_at', + token_type: 'token_type', + scope: 'scope', + id_token: 'id_token', + session_state: 'session_state', + refresh_token_expires_in: 'refresh_token_expires_in' }; exports.Prisma.SessionScalarFieldEnum = { - id: "id", - sessionToken: "sessionToken", - userId: "userId", - expires: "expires", + id: 'id', + sessionToken: 'sessionToken', + userId: 'userId', + expires: 'expires' }; exports.Prisma.UserScalarFieldEnum = { - id: "id", - name: "name", - email: "email", - emailVerified: "emailVerified", - image: "image", + id: 'id', + name: 'name', + email: 'email', + emailVerified: 'emailVerified', + image: 'image', + balance: 'balance' }; exports.Prisma.VerificationTokenScalarFieldEnum = { - identifier: "identifier", - token: "token", - expires: "expires", + identifier: 'identifier', + token: 'token', + expires: 'expires' +}; + +exports.Prisma.ShopScalarFieldEnum = { + id: 'id', + userId: 'userId', + label: 'label' +}; + +exports.Prisma.ItemScalarFieldEnum = { + item_name: 'item_name', + stock: 'stock', + shopId: 'shopId' +}; + +exports.Prisma.SellableScalarFieldEnum = { + id: 'id', + item_name: 'item_name', + amount: 'amount', + price: 'price', + shopId: 'shopId', + enabled: 'enabled' +}; + +exports.Prisma.CartScalarFieldEnum = { + id: 'id', + userId: 'userId' +}; + +exports.Prisma.CartItemScalarFieldEnum = { + itemId: 'itemId', + quantity: 'quantity', + cartId: 'cartId' +}; + +exports.Prisma.AdressScalarFieldEnum = { + id: 'id', + userId: 'userId', + adress: 'adress' }; exports.Prisma.SortOrder = { - asc: "asc", - desc: "desc", -}; - -exports.Prisma.PostOrderByRelevanceFieldEnum = { - name: "name", - createdById: "createdById", + asc: 'asc', + desc: 'desc' }; exports.Prisma.NullsOrder = { - first: "first", - last: "last", + first: 'first', + last: 'last' }; exports.Prisma.AccountOrderByRelevanceFieldEnum = { - id: "id", - userId: "userId", - type: "type", - provider: "provider", - providerAccountId: "providerAccountId", - refresh_token: "refresh_token", - access_token: "access_token", - token_type: "token_type", - scope: "scope", - id_token: "id_token", - session_state: "session_state", + id: 'id', + userId: 'userId', + type: 'type', + provider: 'provider', + providerAccountId: 'providerAccountId', + refresh_token: 'refresh_token', + access_token: 'access_token', + token_type: 'token_type', + scope: 'scope', + id_token: 'id_token', + session_state: 'session_state' }; exports.Prisma.SessionOrderByRelevanceFieldEnum = { - id: "id", - sessionToken: "sessionToken", - userId: "userId", + id: 'id', + sessionToken: 'sessionToken', + userId: 'userId' }; exports.Prisma.UserOrderByRelevanceFieldEnum = { - id: "id", - name: "name", - email: "email", - image: "image", + id: 'id', + name: 'name', + email: 'email', + image: 'image' }; exports.Prisma.VerificationTokenOrderByRelevanceFieldEnum = { - identifier: "identifier", - token: "token", + identifier: 'identifier', + token: 'token' }; +exports.Prisma.ShopOrderByRelevanceFieldEnum = { + userId: 'userId', + label: 'label' +}; + +exports.Prisma.ItemOrderByRelevanceFieldEnum = { + item_name: 'item_name' +}; + +exports.Prisma.SellableOrderByRelevanceFieldEnum = { + id: 'id', + item_name: 'item_name' +}; + +exports.Prisma.CartOrderByRelevanceFieldEnum = { + id: 'id', + userId: 'userId' +}; + +exports.Prisma.CartItemOrderByRelevanceFieldEnum = { + itemId: 'itemId', + cartId: 'cartId' +}; + +exports.Prisma.AdressOrderByRelevanceFieldEnum = { + id: 'id', + userId: 'userId', + adress: 'adress' +}; + + exports.Prisma.ModelName = { - Post: "Post", - Account: "Account", - Session: "Session", - User: "User", - VerificationToken: "VerificationToken", + Account: 'Account', + Session: 'Session', + User: 'User', + VerificationToken: 'VerificationToken', + Shop: 'Shop', + Item: 'Item', + Sellable: 'Sellable', + Cart: 'Cart', + CartItem: 'CartItem', + Adress: 'Adress' }; /** @@ -224,29 +290,26 @@ class PrismaClient { constructor() { return new Proxy(this, { get(target, prop) { - let message; - const runtime = getRuntime(); + let message + const runtime = getRuntime() if (runtime.isEdge) { message = `PrismaClient is not configured to run in ${runtime.prettyName}. In order to run Prisma Client on edge runtime, either: - Use Prisma Accelerate: https://pris.ly/d/accelerate - Use Driver Adapters: https://pris.ly/d/driver-adapters `; } else { - message = - "PrismaClient is unable to run in this browser environment, or has been bundled for the browser (running in `" + - runtime.prettyName + - "`)."; + message = 'PrismaClient is unable to run in this browser environment, or has been bundled for the browser (running in `' + runtime.prettyName + '`).' } message += ` -If this is unexpected, please open an issue: https://pris.ly/prisma-prisma-bug-report`; +If this is unexpected, please open an issue: https://pris.ly/prisma-prisma-bug-report` - throw new Error(message); - }, - }); + throw new Error(message) + } + }) } } -exports.PrismaClient = PrismaClient; +exports.PrismaClient = PrismaClient -Object.assign(exports, Prisma); +Object.assign(exports, Prisma) diff --git a/generated/prisma/index.d.ts b/generated/prisma/index.d.ts index 15240be8..9e33f886 100644 --- a/generated/prisma/index.d.ts +++ b/generated/prisma/index.d.ts @@ -1,42 +1,68 @@ + /** * Client - **/ +**/ -import * as runtime from "./runtime/library.js"; -import $Types = runtime.Types; // general types -import $Public = runtime.Types.Public; -import $Utils = runtime.Types.Utils; -import $Extensions = runtime.Types.Extensions; -import $Result = runtime.Types.Result; +import * as runtime from './runtime/library.js'; +import $Types = runtime.Types // general types +import $Public = runtime.Types.Public +import $Utils = runtime.Types.Utils +import $Extensions = runtime.Types.Extensions +import $Result = runtime.Types.Result + +export type PrismaPromise = $Public.PrismaPromise -export type PrismaPromise = $Public.PrismaPromise; -/** - * Model Post - * - */ -export type Post = $Result.DefaultSelection; /** * Model Account - * + * */ -export type Account = $Result.DefaultSelection; +export type Account = $Result.DefaultSelection /** * Model Session - * + * */ -export type Session = $Result.DefaultSelection; +export type Session = $Result.DefaultSelection /** * Model User - * + * */ -export type User = $Result.DefaultSelection; +export type User = $Result.DefaultSelection /** * Model VerificationToken - * + * */ -export type VerificationToken = - $Result.DefaultSelection; +export type VerificationToken = $Result.DefaultSelection +/** + * Model Shop + * + */ +export type Shop = $Result.DefaultSelection +/** + * Model Item + * + */ +export type Item = $Result.DefaultSelection +/** + * Model Sellable + * + */ +export type Sellable = $Result.DefaultSelection +/** + * Model Cart + * + */ +export type Cart = $Result.DefaultSelection +/** + * Model CartItem + * + */ +export type CartItem = $Result.DefaultSelection +/** + * Model Adress + * + */ +export type Adress = $Result.DefaultSelection /** * ## Prisma Client ʲˢ @@ -45,8 +71,8 @@ export type VerificationToken = * @example * ``` * const prisma = new PrismaClient() - * // Fetch zero or more Posts - * const posts = await prisma.post.findMany() + * // Fetch zero or more Accounts + * const accounts = await prisma.account.findMany() * ``` * * @@ -54,39 +80,28 @@ export type VerificationToken = */ export class PrismaClient< ClientOptions extends Prisma.PrismaClientOptions = Prisma.PrismaClientOptions, - const U = "log" extends keyof ClientOptions - ? ClientOptions["log"] extends Array - ? Prisma.GetEvents - : never - : never, - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, + const U = 'log' extends keyof ClientOptions ? ClientOptions['log'] extends Array ? Prisma.GetEvents : never : never, + ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs > { - [K: symbol]: { types: Prisma.TypeMap["other"] }; + [K: symbol]: { types: Prisma.TypeMap['other'] } - /** + /** * ## Prisma Client ʲˢ * * Type-safe database client for TypeScript & Node.js * @example * ``` * const prisma = new PrismaClient() - * // Fetch zero or more Posts - * const posts = await prisma.post.findMany() + * // Fetch zero or more Accounts + * const accounts = await prisma.account.findMany() * ``` * * * Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client). */ - constructor( - optionsArg?: Prisma.Subset, - ); - $on( - eventType: V, - callback: ( - event: V extends "query" ? Prisma.QueryEvent : Prisma.LogEvent, - ) => void, - ): PrismaClient; + constructor(optionsArg ?: Prisma.Subset); + $on(eventType: V, callback: (event: V extends 'query' ? Prisma.QueryEvent : Prisma.LogEvent) => void): PrismaClient; /** * Connect with the database @@ -98,7 +113,7 @@ export class PrismaClient< */ $disconnect(): $Utils.JsPromise; - /** +/** * Executes a prepared raw query and returns the number of affected rows. * @example * ``` @@ -107,10 +122,7 @@ export class PrismaClient< * * Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/raw-database-access). */ - $executeRaw( - query: TemplateStringsArray | Prisma.Sql, - ...values: any[] - ): Prisma.PrismaPromise; + $executeRaw(query: TemplateStringsArray | Prisma.Sql, ...values: any[]): Prisma.PrismaPromise; /** * Executes a raw query and returns the number of affected rows. @@ -122,10 +134,7 @@ export class PrismaClient< * * Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/raw-database-access). */ - $executeRawUnsafe( - query: string, - ...values: any[] - ): Prisma.PrismaPromise; + $executeRawUnsafe(query: string, ...values: any[]): Prisma.PrismaPromise; /** * Performs a prepared raw query and returns the `SELECT` data. @@ -136,10 +145,7 @@ export class PrismaClient< * * Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/raw-database-access). */ - $queryRaw( - query: TemplateStringsArray | Prisma.Sql, - ...values: any[] - ): Prisma.PrismaPromise; + $queryRaw(query: TemplateStringsArray | Prisma.Sql, ...values: any[]): Prisma.PrismaPromise; /** * Performs a raw query and returns the `SELECT` data. @@ -151,10 +157,8 @@ export class PrismaClient< * * Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/raw-database-access). */ - $queryRawUnsafe( - query: string, - ...values: any[] - ): Prisma.PrismaPromise; + $queryRawUnsafe(query: string, ...values: any[]): Prisma.PrismaPromise; + /** * Allows the running of a sequence of read/write operations that are guaranteed to either succeed or fail as a whole. @@ -166,165 +170,196 @@ export class PrismaClient< * prisma.user.create({ data: { name: 'Alice' } }), * ]) * ``` - * + * * Read more in our [docs](https://www.prisma.io/docs/concepts/components/prisma-client/transactions). */ - $transaction

[]>( - arg: [...P], - options?: { isolationLevel?: Prisma.TransactionIsolationLevel }, - ): $Utils.JsPromise>; + $transaction

[]>(arg: [...P], options?: { isolationLevel?: Prisma.TransactionIsolationLevel }): $Utils.JsPromise> - $transaction( - fn: ( - prisma: Omit, - ) => $Utils.JsPromise, - options?: { - maxWait?: number; - timeout?: number; - isolationLevel?: Prisma.TransactionIsolationLevel; - }, - ): $Utils.JsPromise; + $transaction(fn: (prisma: Omit) => $Utils.JsPromise, options?: { maxWait?: number, timeout?: number, isolationLevel?: Prisma.TransactionIsolationLevel }): $Utils.JsPromise - $extends: $Extensions.ExtendsHook< - "extends", - Prisma.TypeMapCb, - ExtArgs, - $Utils.Call< - Prisma.TypeMapCb, - { - extArgs: ExtArgs; - } - > - >; - /** - * `prisma.post`: Exposes CRUD operations for the **Post** model. - * Example usage: - * ```ts - * // Fetch zero or more Posts - * const posts = await prisma.post.findMany() - * ``` - */ - get post(): Prisma.PostDelegate; + $extends: $Extensions.ExtendsHook<"extends", Prisma.TypeMapCb, ExtArgs, $Utils.Call, { + extArgs: ExtArgs + }>> - /** + /** * `prisma.account`: Exposes CRUD operations for the **Account** model. - * Example usage: - * ```ts - * // Fetch zero or more Accounts - * const accounts = await prisma.account.findMany() - * ``` - */ + * Example usage: + * ```ts + * // Fetch zero or more Accounts + * const accounts = await prisma.account.findMany() + * ``` + */ get account(): Prisma.AccountDelegate; /** * `prisma.session`: Exposes CRUD operations for the **Session** model. - * Example usage: - * ```ts - * // Fetch zero or more Sessions - * const sessions = await prisma.session.findMany() - * ``` - */ + * Example usage: + * ```ts + * // Fetch zero or more Sessions + * const sessions = await prisma.session.findMany() + * ``` + */ get session(): Prisma.SessionDelegate; /** * `prisma.user`: Exposes CRUD operations for the **User** model. - * Example usage: - * ```ts - * // Fetch zero or more Users - * const users = await prisma.user.findMany() - * ``` - */ + * Example usage: + * ```ts + * // Fetch zero or more Users + * const users = await prisma.user.findMany() + * ``` + */ get user(): Prisma.UserDelegate; /** * `prisma.verificationToken`: Exposes CRUD operations for the **VerificationToken** model. - * Example usage: - * ```ts - * // Fetch zero or more VerificationTokens - * const verificationTokens = await prisma.verificationToken.findMany() - * ``` - */ - get verificationToken(): Prisma.VerificationTokenDelegate< - ExtArgs, - ClientOptions - >; + * Example usage: + * ```ts + * // Fetch zero or more VerificationTokens + * const verificationTokens = await prisma.verificationToken.findMany() + * ``` + */ + get verificationToken(): Prisma.VerificationTokenDelegate; + + /** + * `prisma.shop`: Exposes CRUD operations for the **Shop** model. + * Example usage: + * ```ts + * // Fetch zero or more Shops + * const shops = await prisma.shop.findMany() + * ``` + */ + get shop(): Prisma.ShopDelegate; + + /** + * `prisma.item`: Exposes CRUD operations for the **Item** model. + * Example usage: + * ```ts + * // Fetch zero or more Items + * const items = await prisma.item.findMany() + * ``` + */ + get item(): Prisma.ItemDelegate; + + /** + * `prisma.sellable`: Exposes CRUD operations for the **Sellable** model. + * Example usage: + * ```ts + * // Fetch zero or more Sellables + * const sellables = await prisma.sellable.findMany() + * ``` + */ + get sellable(): Prisma.SellableDelegate; + + /** + * `prisma.cart`: Exposes CRUD operations for the **Cart** model. + * Example usage: + * ```ts + * // Fetch zero or more Carts + * const carts = await prisma.cart.findMany() + * ``` + */ + get cart(): Prisma.CartDelegate; + + /** + * `prisma.cartItem`: Exposes CRUD operations for the **CartItem** model. + * Example usage: + * ```ts + * // Fetch zero or more CartItems + * const cartItems = await prisma.cartItem.findMany() + * ``` + */ + get cartItem(): Prisma.CartItemDelegate; + + /** + * `prisma.adress`: Exposes CRUD operations for the **Adress** model. + * Example usage: + * ```ts + * // Fetch zero or more Adresses + * const adresses = await prisma.adress.findMany() + * ``` + */ + get adress(): Prisma.AdressDelegate; } export namespace Prisma { - export import DMMF = runtime.DMMF; + export import DMMF = runtime.DMMF - export type PrismaPromise = $Public.PrismaPromise; + export type PrismaPromise = $Public.PrismaPromise /** * Validator */ - export import validator = runtime.Public.validator; + export import validator = runtime.Public.validator /** * Prisma Errors */ - export import PrismaClientKnownRequestError = runtime.PrismaClientKnownRequestError; - export import PrismaClientUnknownRequestError = runtime.PrismaClientUnknownRequestError; - export import PrismaClientRustPanicError = runtime.PrismaClientRustPanicError; - export import PrismaClientInitializationError = runtime.PrismaClientInitializationError; - export import PrismaClientValidationError = runtime.PrismaClientValidationError; + export import PrismaClientKnownRequestError = runtime.PrismaClientKnownRequestError + export import PrismaClientUnknownRequestError = runtime.PrismaClientUnknownRequestError + export import PrismaClientRustPanicError = runtime.PrismaClientRustPanicError + export import PrismaClientInitializationError = runtime.PrismaClientInitializationError + export import PrismaClientValidationError = runtime.PrismaClientValidationError /** * Re-export of sql-template-tag */ - export import sql = runtime.sqltag; - export import empty = runtime.empty; - export import join = runtime.join; - export import raw = runtime.raw; - export import Sql = runtime.Sql; + export import sql = runtime.sqltag + export import empty = runtime.empty + export import join = runtime.join + export import raw = runtime.raw + export import Sql = runtime.Sql + + /** * Decimal.js */ - export import Decimal = runtime.Decimal; + export import Decimal = runtime.Decimal - export type DecimalJsLike = runtime.DecimalJsLike; + export type DecimalJsLike = runtime.DecimalJsLike /** * Metrics */ - export type Metrics = runtime.Metrics; - export type Metric = runtime.Metric; - export type MetricHistogram = runtime.MetricHistogram; - export type MetricHistogramBucket = runtime.MetricHistogramBucket; + export type Metrics = runtime.Metrics + export type Metric = runtime.Metric + export type MetricHistogram = runtime.MetricHistogram + export type MetricHistogramBucket = runtime.MetricHistogramBucket /** - * Extensions - */ - export import Extension = $Extensions.UserArgs; - export import getExtensionContext = runtime.Extensions.getExtensionContext; - export import Args = $Public.Args; - export import Payload = $Public.Payload; - export import Result = $Public.Result; - export import Exact = $Public.Exact; + * Extensions + */ + export import Extension = $Extensions.UserArgs + export import getExtensionContext = runtime.Extensions.getExtensionContext + export import Args = $Public.Args + export import Payload = $Public.Payload + export import Result = $Public.Result + export import Exact = $Public.Exact /** * Prisma Client JS version: 6.19.2 * Query Engine version: c2990dca591cba766e3b7ef5d9e8a84796e47ab7 */ export type PrismaVersion = { - client: string; - }; + client: string + } - export const prismaVersion: PrismaVersion; + export const prismaVersion: PrismaVersion /** * Utility Types */ - export import Bytes = runtime.Bytes; - export import JsonObject = runtime.JsonObject; - export import JsonArray = runtime.JsonArray; - export import JsonValue = runtime.JsonValue; - export import InputJsonObject = runtime.InputJsonObject; - export import InputJsonArray = runtime.InputJsonArray; - export import InputJsonValue = runtime.InputJsonValue; + + export import Bytes = runtime.Bytes + export import JsonObject = runtime.JsonObject + export import JsonArray = runtime.JsonArray + export import JsonValue = runtime.JsonValue + export import InputJsonObject = runtime.InputJsonObject + export import InputJsonArray = runtime.InputJsonArray + export import InputJsonValue = runtime.InputJsonValue /** * Types of the values used to represent different kinds of `null` values when working with JSON fields. @@ -333,39 +368,39 @@ export namespace Prisma { */ namespace NullTypes { /** - * Type of `Prisma.DbNull`. - * - * You cannot use other instances of this class. Please use the `Prisma.DbNull` value. - * - * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field - */ + * Type of `Prisma.DbNull`. + * + * You cannot use other instances of this class. Please use the `Prisma.DbNull` value. + * + * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field + */ class DbNull { - private DbNull: never; - private constructor(); + private DbNull: never + private constructor() } /** - * Type of `Prisma.JsonNull`. - * - * You cannot use other instances of this class. Please use the `Prisma.JsonNull` value. - * - * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field - */ + * Type of `Prisma.JsonNull`. + * + * You cannot use other instances of this class. Please use the `Prisma.JsonNull` value. + * + * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field + */ class JsonNull { - private JsonNull: never; - private constructor(); + private JsonNull: never + private constructor() } /** - * Type of `Prisma.AnyNull`. - * - * You cannot use other instances of this class. Please use the `Prisma.AnyNull` value. - * - * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field - */ + * Type of `Prisma.AnyNull`. + * + * You cannot use other instances of this class. Please use the `Prisma.AnyNull` value. + * + * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field + */ class AnyNull { - private AnyNull: never; - private constructor(); + private AnyNull: never + private constructor() } } @@ -374,63 +409,61 @@ export namespace Prisma { * * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field */ - export const DbNull: NullTypes.DbNull; + export const DbNull: NullTypes.DbNull /** * Helper for filtering JSON entries that have JSON `null` values (not empty on the db) * * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field */ - export const JsonNull: NullTypes.JsonNull; + export const JsonNull: NullTypes.JsonNull /** * Helper for filtering JSON entries that are `Prisma.DbNull` or `Prisma.JsonNull` * * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field */ - export const AnyNull: NullTypes.AnyNull; + export const AnyNull: NullTypes.AnyNull type SelectAndInclude = { - select: any; - include: any; - }; + select: any + include: any + } type SelectAndOmit = { - select: any; - omit: any; - }; + select: any + omit: any + } /** * Get the type of the value, that the Promise holds. */ - export type PromiseType> = - T extends PromiseLike ? U : T; + export type PromiseType> = T extends PromiseLike ? U : T; /** * Get the return type of a function which returns a Promise. */ - export type PromiseReturnType< - T extends (...args: any) => $Utils.JsPromise, - > = PromiseType>; + export type PromiseReturnType $Utils.JsPromise> = PromiseType> /** * From T, pick a set of properties whose keys are in the union K */ type Prisma__Pick = { - [P in K]: T[P]; + [P in K]: T[P]; }; + export type Enumerable = T | Array; export type RequiredKeys = { - [K in keyof T]-?: {} extends Prisma__Pick ? never : K; - }[keyof T]; + [K in keyof T]-?: {} extends Prisma__Pick ? never : K + }[keyof T] export type TruthyKeys = keyof { - [K in keyof T as T[K] extends false | undefined | null ? never : K]: K; - }; + [K in keyof T as T[K] extends false | undefined | null ? never : K]: K + } - export type TrueKeys = TruthyKeys>>; + export type TrueKeys = TruthyKeys>> /** * Subset @@ -446,20 +479,22 @@ export namespace Prisma { * Additionally, it validates, if both select and include are present. If the case, it errors. */ export type SelectSubset = { - [key in keyof T]: key extends keyof U ? T[key] : never; - } & (T extends SelectAndInclude - ? "Please either choose `select` or `include`." - : T extends SelectAndOmit - ? "Please either choose `select` or `omit`." - : {}); + [key in keyof T]: key extends keyof U ? T[key] : never + } & + (T extends SelectAndInclude + ? 'Please either choose `select` or `include`.' + : T extends SelectAndOmit + ? 'Please either choose `select` or `omit`.' + : {}) /** * Subset + Intersection * @desc From `T` pick properties that exist in `U` and intersect `K` */ export type SubsetIntersection = { - [key in keyof T]: key extends keyof U ? T[key] : never; - } & K; + [key in keyof T]: key extends keyof U ? T[key] : never + } & + K type Without = { [P in Exclude]?: never }; @@ -467,32 +502,33 @@ export namespace Prisma { * XOR is needed to have a real mutually exclusive union type * https://stackoverflow.com/questions/42123407/does-typescript-support-mutually-exclusive-types */ - type XOR = T extends object - ? U extends object - ? (Without & U) | (Without & T) - : U - : T; + type XOR = + T extends object ? + U extends object ? + (Without & U) | (Without & T) + : U : T + /** * Is T a Record? */ - type IsObject = - T extends Array - ? False - : T extends Date - ? False - : T extends Uint8Array - ? False - : T extends BigInt - ? False - : T extends object - ? True - : False; + type IsObject = T extends Array + ? False + : T extends Date + ? False + : T extends Uint8Array + ? False + : T extends BigInt + ? False + : T extends object + ? True + : False + /** * If it's T[], return T */ - export type UnEnumerate = T extends Array ? U : T; + export type UnEnumerate = T extends Array ? U : T /** * From ts-toolbelt @@ -501,74 +537,61 @@ export namespace Prisma { type __Either = Omit & { // Merge all but K - [P in K]: Prisma__Pick; // With K possibilities - }[K]; + [P in K]: Prisma__Pick // With K possibilities + }[K] - type EitherStrict = Strict<__Either>; + type EitherStrict = Strict<__Either> - type EitherLoose = ComputeRaw< - __Either - >; + type EitherLoose = ComputeRaw<__Either> - type _Either = { - 1: EitherStrict; - 0: EitherLoose; - }[strict]; + type _Either< + O extends object, + K extends Key, + strict extends Boolean + > = { + 1: EitherStrict + 0: EitherLoose + }[strict] type Either< O extends object, K extends Key, - strict extends Boolean = 1, - > = O extends unknown ? _Either : never; + strict extends Boolean = 1 + > = O extends unknown ? _Either : never - export type Union = any; + export type Union = any type PatchUndefined = { - [K in keyof O]: O[K] extends undefined ? At : O[K]; - } & {}; + [K in keyof O]: O[K] extends undefined ? At : O[K] + } & {} /** Helper Types for "Merge" **/ export type IntersectOf = ( U extends unknown ? (k: U) => void : never ) extends (k: infer I) => void ? I - : never; + : never export type Overwrite = { - [K in keyof O]: K extends keyof O1 ? O1[K] : O[K]; + [K in keyof O]: K extends keyof O1 ? O1[K] : O[K]; } & {}; - type _Merge = IntersectOf< - Overwrite< - U, - { - [K in keyof U]-?: At; - } - > - >; + type _Merge = IntersectOf; + }>>; type Key = string | number | symbol; - type AtBasic = K extends keyof O - ? O[K] - : never; + type AtBasic = K extends keyof O ? O[K] : never; type AtStrict = O[K & keyof O]; - type AtLoose = O extends unknown - ? AtStrict - : never; - export type At< - O extends object, - K extends Key, - strict extends Boolean = 1, - > = { - 1: AtStrict; - 0: AtLoose; + type AtLoose = O extends unknown ? AtStrict : never; + export type At = { + 1: AtStrict; + 0: AtLoose; }[strict]; - export type ComputeRaw = A extends Function - ? A - : { - [K in keyof A]: A[K]; - } & {}; + export type ComputeRaw = A extends Function ? A : { + [K in keyof A]: A[K]; + } & {}; export type OptionalFlat = { [K in keyof O]?: O[K]; @@ -584,15 +607,11 @@ export namespace Prisma { // this type assumes the passed object is entirely optional type AtLeast = NoExpand< O extends unknown - ? - | (K extends keyof O ? { [P in K]: O[P] } & O : O) - | ({ [P in keyof O as P extends K ? P : never]-?: O[P] } & O) - : never - >; + ? | (K extends keyof O ? { [P in K]: O[P] } & O : O) + | {[P in keyof O as P extends K ? P : never]-?: O[P]} & O + : never>; - type _Strict = U extends unknown - ? U & OptionalFlat<_Record, keyof U>, never>> - : never; + type _Strict = U extends unknown ? U & OptionalFlat<_Record, keyof U>, never>> : never; export type Strict = ComputeRaw<_Strict>; /** End Helper Types for "Merge" **/ @@ -602,529 +621,845 @@ export namespace Prisma { /** A [[Boolean]] */ - export type Boolean = True | False; + export type Boolean = True | False // /** // 1 // */ - export type True = 1; + export type True = 1 /** 0 */ - export type False = 0; + export type False = 0 export type Not = { - 0: 1; - 1: 0; - }[B]; + 0: 1 + 1: 0 + }[B] export type Extends = [A1] extends [never] ? 0 // anything `never` is false : A1 extends A2 - ? 1 - : 0; + ? 1 + : 0 export type Has = Not< Extends, U1> - >; + > export type Or = { 0: { - 0: 0; - 1: 1; - }; + 0: 0 + 1: 1 + } 1: { - 0: 1; - 1: 1; - }; - }[B1][B2]; + 0: 1 + 1: 1 + } + }[B1][B2] - export type Keys = U extends unknown ? keyof U : never; + export type Keys = U extends unknown ? keyof U : never type Cast = A extends B ? A : B; export const type: unique symbol; + + /** * Used by group by */ - export type GetScalarType = O extends object - ? { - [P in keyof T]: P extends keyof O ? O[P] : never; - } - : never; + export type GetScalarType = O extends object ? { + [P in keyof T]: P extends keyof O + ? O[P] + : never + } : never type FieldPaths< T, - U = Omit, - > = IsObject extends True ? U : T; + U = Omit + > = IsObject extends True ? U : T type GetHavingFields = { [K in keyof T]: Or< - Or, Extends<"AND", K>>, - Extends<"NOT", K> + Or, Extends<'AND', K>>, + Extends<'NOT', K> > extends True ? // infer is only needed to not hit TS limit // based on the brilliant idea of Pierre-Antoine Mills // https://github.com/microsoft/TypeScript/issues/30188#issuecomment-478938437 T[K] extends infer TK - ? GetHavingFields< - UnEnumerate extends object ? Merge> : never - > + ? GetHavingFields extends object ? Merge> : never> : never : {} extends FieldPaths - ? never - : K; - }[keyof T]; + ? never + : K + }[keyof T] /** * Convert tuple to union */ - type _TupleToUnion = T extends (infer E)[] ? E : never; - type TupleToUnion = _TupleToUnion; - type MaybeTupleToUnion = T extends any[] ? TupleToUnion : T; + type _TupleToUnion = T extends (infer E)[] ? E : never + type TupleToUnion = _TupleToUnion + type MaybeTupleToUnion = T extends any[] ? TupleToUnion : T /** * Like `Pick`, but additionally can also accept an array of keys */ - type PickEnumerable< - T, - K extends Enumerable | keyof T, - > = Prisma__Pick>; + type PickEnumerable | keyof T> = Prisma__Pick> /** * Exclude all keys with underscores */ - type ExcludeUnderscoreKeys = T extends `_${string}` - ? never - : T; + type ExcludeUnderscoreKeys = T extends `_${string}` ? never : T - export type FieldRef = runtime.FieldRef; - type FieldRefInputType = Model extends never - ? never - : FieldRef; + export type FieldRef = runtime.FieldRef + + type FieldRefInputType = Model extends never ? never : FieldRef + export const ModelName: { - Post: "Post"; - Account: "Account"; - Session: "Session"; - User: "User"; - VerificationToken: "VerificationToken"; + Account: 'Account', + Session: 'Session', + User: 'User', + VerificationToken: 'VerificationToken', + Shop: 'Shop', + Item: 'Item', + Sellable: 'Sellable', + Cart: 'Cart', + CartItem: 'CartItem', + Adress: 'Adress' }; - export type ModelName = (typeof ModelName)[keyof typeof ModelName]; + export type ModelName = (typeof ModelName)[keyof typeof ModelName] + export type Datasources = { - db?: Datasource; - }; - - interface TypeMapCb extends $Utils.Fn< - { extArgs: $Extensions.InternalArgs }, - $Utils.Record - > { - returns: Prisma.TypeMap< - this["params"]["extArgs"], - ClientOptions extends { omit: infer OmitOptions } ? OmitOptions : {} - >; + db?: Datasource } - export type TypeMap< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - GlobalOmitOptions = {}, - > = { + interface TypeMapCb extends $Utils.Fn<{extArgs: $Extensions.InternalArgs }, $Utils.Record> { + returns: Prisma.TypeMap + } + + export type TypeMap = { globalOmitOptions: { - omit: GlobalOmitOptions; - }; + omit: GlobalOmitOptions + } meta: { - modelProps: "post" | "account" | "session" | "user" | "verificationToken"; - txIsolationLevel: Prisma.TransactionIsolationLevel; - }; + modelProps: "account" | "session" | "user" | "verificationToken" | "shop" | "item" | "sellable" | "cart" | "cartItem" | "adress" + txIsolationLevel: Prisma.TransactionIsolationLevel + } model: { - Post: { - payload: Prisma.$PostPayload; - fields: Prisma.PostFieldRefs; - operations: { - findUnique: { - args: Prisma.PostFindUniqueArgs; - result: $Utils.PayloadToResult | null; - }; - findUniqueOrThrow: { - args: Prisma.PostFindUniqueOrThrowArgs; - result: $Utils.PayloadToResult; - }; - findFirst: { - args: Prisma.PostFindFirstArgs; - result: $Utils.PayloadToResult | null; - }; - findFirstOrThrow: { - args: Prisma.PostFindFirstOrThrowArgs; - result: $Utils.PayloadToResult; - }; - findMany: { - args: Prisma.PostFindManyArgs; - result: $Utils.PayloadToResult[]; - }; - create: { - args: Prisma.PostCreateArgs; - result: $Utils.PayloadToResult; - }; - createMany: { - args: Prisma.PostCreateManyArgs; - result: BatchPayload; - }; - delete: { - args: Prisma.PostDeleteArgs; - result: $Utils.PayloadToResult; - }; - update: { - args: Prisma.PostUpdateArgs; - result: $Utils.PayloadToResult; - }; - deleteMany: { - args: Prisma.PostDeleteManyArgs; - result: BatchPayload; - }; - updateMany: { - args: Prisma.PostUpdateManyArgs; - result: BatchPayload; - }; - upsert: { - args: Prisma.PostUpsertArgs; - result: $Utils.PayloadToResult; - }; - aggregate: { - args: Prisma.PostAggregateArgs; - result: $Utils.Optional; - }; - groupBy: { - args: Prisma.PostGroupByArgs; - result: $Utils.Optional[]; - }; - count: { - args: Prisma.PostCountArgs; - result: $Utils.Optional | number; - }; - }; - }; Account: { - payload: Prisma.$AccountPayload; - fields: Prisma.AccountFieldRefs; + payload: Prisma.$AccountPayload + fields: Prisma.AccountFieldRefs operations: { findUnique: { - args: Prisma.AccountFindUniqueArgs; - result: $Utils.PayloadToResult | null; - }; + args: Prisma.AccountFindUniqueArgs + result: $Utils.PayloadToResult | null + } findUniqueOrThrow: { - args: Prisma.AccountFindUniqueOrThrowArgs; - result: $Utils.PayloadToResult; - }; + args: Prisma.AccountFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } findFirst: { - args: Prisma.AccountFindFirstArgs; - result: $Utils.PayloadToResult | null; - }; + args: Prisma.AccountFindFirstArgs + result: $Utils.PayloadToResult | null + } findFirstOrThrow: { - args: Prisma.AccountFindFirstOrThrowArgs; - result: $Utils.PayloadToResult; - }; + args: Prisma.AccountFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } findMany: { - args: Prisma.AccountFindManyArgs; - result: $Utils.PayloadToResult[]; - }; + args: Prisma.AccountFindManyArgs + result: $Utils.PayloadToResult[] + } create: { - args: Prisma.AccountCreateArgs; - result: $Utils.PayloadToResult; - }; + args: Prisma.AccountCreateArgs + result: $Utils.PayloadToResult + } createMany: { - args: Prisma.AccountCreateManyArgs; - result: BatchPayload; - }; + args: Prisma.AccountCreateManyArgs + result: BatchPayload + } delete: { - args: Prisma.AccountDeleteArgs; - result: $Utils.PayloadToResult; - }; + args: Prisma.AccountDeleteArgs + result: $Utils.PayloadToResult + } update: { - args: Prisma.AccountUpdateArgs; - result: $Utils.PayloadToResult; - }; + args: Prisma.AccountUpdateArgs + result: $Utils.PayloadToResult + } deleteMany: { - args: Prisma.AccountDeleteManyArgs; - result: BatchPayload; - }; + args: Prisma.AccountDeleteManyArgs + result: BatchPayload + } updateMany: { - args: Prisma.AccountUpdateManyArgs; - result: BatchPayload; - }; + args: Prisma.AccountUpdateManyArgs + result: BatchPayload + } upsert: { - args: Prisma.AccountUpsertArgs; - result: $Utils.PayloadToResult; - }; + args: Prisma.AccountUpsertArgs + result: $Utils.PayloadToResult + } aggregate: { - args: Prisma.AccountAggregateArgs; - result: $Utils.Optional; - }; + args: Prisma.AccountAggregateArgs + result: $Utils.Optional + } groupBy: { - args: Prisma.AccountGroupByArgs; - result: $Utils.Optional[]; - }; + args: Prisma.AccountGroupByArgs + result: $Utils.Optional[] + } count: { - args: Prisma.AccountCountArgs; - result: $Utils.Optional | number; - }; - }; - }; + args: Prisma.AccountCountArgs + result: $Utils.Optional | number + } + } + } Session: { - payload: Prisma.$SessionPayload; - fields: Prisma.SessionFieldRefs; + payload: Prisma.$SessionPayload + fields: Prisma.SessionFieldRefs operations: { findUnique: { - args: Prisma.SessionFindUniqueArgs; - result: $Utils.PayloadToResult | null; - }; + args: Prisma.SessionFindUniqueArgs + result: $Utils.PayloadToResult | null + } findUniqueOrThrow: { - args: Prisma.SessionFindUniqueOrThrowArgs; - result: $Utils.PayloadToResult; - }; + args: Prisma.SessionFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } findFirst: { - args: Prisma.SessionFindFirstArgs; - result: $Utils.PayloadToResult | null; - }; + args: Prisma.SessionFindFirstArgs + result: $Utils.PayloadToResult | null + } findFirstOrThrow: { - args: Prisma.SessionFindFirstOrThrowArgs; - result: $Utils.PayloadToResult; - }; + args: Prisma.SessionFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } findMany: { - args: Prisma.SessionFindManyArgs; - result: $Utils.PayloadToResult[]; - }; + args: Prisma.SessionFindManyArgs + result: $Utils.PayloadToResult[] + } create: { - args: Prisma.SessionCreateArgs; - result: $Utils.PayloadToResult; - }; + args: Prisma.SessionCreateArgs + result: $Utils.PayloadToResult + } createMany: { - args: Prisma.SessionCreateManyArgs; - result: BatchPayload; - }; + args: Prisma.SessionCreateManyArgs + result: BatchPayload + } delete: { - args: Prisma.SessionDeleteArgs; - result: $Utils.PayloadToResult; - }; + args: Prisma.SessionDeleteArgs + result: $Utils.PayloadToResult + } update: { - args: Prisma.SessionUpdateArgs; - result: $Utils.PayloadToResult; - }; + args: Prisma.SessionUpdateArgs + result: $Utils.PayloadToResult + } deleteMany: { - args: Prisma.SessionDeleteManyArgs; - result: BatchPayload; - }; + args: Prisma.SessionDeleteManyArgs + result: BatchPayload + } updateMany: { - args: Prisma.SessionUpdateManyArgs; - result: BatchPayload; - }; + args: Prisma.SessionUpdateManyArgs + result: BatchPayload + } upsert: { - args: Prisma.SessionUpsertArgs; - result: $Utils.PayloadToResult; - }; + args: Prisma.SessionUpsertArgs + result: $Utils.PayloadToResult + } aggregate: { - args: Prisma.SessionAggregateArgs; - result: $Utils.Optional; - }; + args: Prisma.SessionAggregateArgs + result: $Utils.Optional + } groupBy: { - args: Prisma.SessionGroupByArgs; - result: $Utils.Optional[]; - }; + args: Prisma.SessionGroupByArgs + result: $Utils.Optional[] + } count: { - args: Prisma.SessionCountArgs; - result: $Utils.Optional | number; - }; - }; - }; + args: Prisma.SessionCountArgs + result: $Utils.Optional | number + } + } + } User: { - payload: Prisma.$UserPayload; - fields: Prisma.UserFieldRefs; + payload: Prisma.$UserPayload + fields: Prisma.UserFieldRefs operations: { findUnique: { - args: Prisma.UserFindUniqueArgs; - result: $Utils.PayloadToResult | null; - }; + args: Prisma.UserFindUniqueArgs + result: $Utils.PayloadToResult | null + } findUniqueOrThrow: { - args: Prisma.UserFindUniqueOrThrowArgs; - result: $Utils.PayloadToResult; - }; + args: Prisma.UserFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } findFirst: { - args: Prisma.UserFindFirstArgs; - result: $Utils.PayloadToResult | null; - }; + args: Prisma.UserFindFirstArgs + result: $Utils.PayloadToResult | null + } findFirstOrThrow: { - args: Prisma.UserFindFirstOrThrowArgs; - result: $Utils.PayloadToResult; - }; + args: Prisma.UserFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } findMany: { - args: Prisma.UserFindManyArgs; - result: $Utils.PayloadToResult[]; - }; + args: Prisma.UserFindManyArgs + result: $Utils.PayloadToResult[] + } create: { - args: Prisma.UserCreateArgs; - result: $Utils.PayloadToResult; - }; + args: Prisma.UserCreateArgs + result: $Utils.PayloadToResult + } createMany: { - args: Prisma.UserCreateManyArgs; - result: BatchPayload; - }; + args: Prisma.UserCreateManyArgs + result: BatchPayload + } delete: { - args: Prisma.UserDeleteArgs; - result: $Utils.PayloadToResult; - }; + args: Prisma.UserDeleteArgs + result: $Utils.PayloadToResult + } update: { - args: Prisma.UserUpdateArgs; - result: $Utils.PayloadToResult; - }; + args: Prisma.UserUpdateArgs + result: $Utils.PayloadToResult + } deleteMany: { - args: Prisma.UserDeleteManyArgs; - result: BatchPayload; - }; + args: Prisma.UserDeleteManyArgs + result: BatchPayload + } updateMany: { - args: Prisma.UserUpdateManyArgs; - result: BatchPayload; - }; + args: Prisma.UserUpdateManyArgs + result: BatchPayload + } upsert: { - args: Prisma.UserUpsertArgs; - result: $Utils.PayloadToResult; - }; + args: Prisma.UserUpsertArgs + result: $Utils.PayloadToResult + } aggregate: { - args: Prisma.UserAggregateArgs; - result: $Utils.Optional; - }; + args: Prisma.UserAggregateArgs + result: $Utils.Optional + } groupBy: { - args: Prisma.UserGroupByArgs; - result: $Utils.Optional[]; - }; + args: Prisma.UserGroupByArgs + result: $Utils.Optional[] + } count: { - args: Prisma.UserCountArgs; - result: $Utils.Optional | number; - }; - }; - }; + args: Prisma.UserCountArgs + result: $Utils.Optional | number + } + } + } VerificationToken: { - payload: Prisma.$VerificationTokenPayload; - fields: Prisma.VerificationTokenFieldRefs; + payload: Prisma.$VerificationTokenPayload + fields: Prisma.VerificationTokenFieldRefs operations: { findUnique: { - args: Prisma.VerificationTokenFindUniqueArgs; - result: $Utils.PayloadToResult | null; - }; + args: Prisma.VerificationTokenFindUniqueArgs + result: $Utils.PayloadToResult | null + } findUniqueOrThrow: { - args: Prisma.VerificationTokenFindUniqueOrThrowArgs; - result: $Utils.PayloadToResult; - }; + args: Prisma.VerificationTokenFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } findFirst: { - args: Prisma.VerificationTokenFindFirstArgs; - result: $Utils.PayloadToResult | null; - }; + args: Prisma.VerificationTokenFindFirstArgs + result: $Utils.PayloadToResult | null + } findFirstOrThrow: { - args: Prisma.VerificationTokenFindFirstOrThrowArgs; - result: $Utils.PayloadToResult; - }; + args: Prisma.VerificationTokenFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } findMany: { - args: Prisma.VerificationTokenFindManyArgs; - result: $Utils.PayloadToResult[]; - }; + args: Prisma.VerificationTokenFindManyArgs + result: $Utils.PayloadToResult[] + } create: { - args: Prisma.VerificationTokenCreateArgs; - result: $Utils.PayloadToResult; - }; + args: Prisma.VerificationTokenCreateArgs + result: $Utils.PayloadToResult + } createMany: { - args: Prisma.VerificationTokenCreateManyArgs; - result: BatchPayload; - }; + args: Prisma.VerificationTokenCreateManyArgs + result: BatchPayload + } delete: { - args: Prisma.VerificationTokenDeleteArgs; - result: $Utils.PayloadToResult; - }; + args: Prisma.VerificationTokenDeleteArgs + result: $Utils.PayloadToResult + } update: { - args: Prisma.VerificationTokenUpdateArgs; - result: $Utils.PayloadToResult; - }; + args: Prisma.VerificationTokenUpdateArgs + result: $Utils.PayloadToResult + } deleteMany: { - args: Prisma.VerificationTokenDeleteManyArgs; - result: BatchPayload; - }; + args: Prisma.VerificationTokenDeleteManyArgs + result: BatchPayload + } updateMany: { - args: Prisma.VerificationTokenUpdateManyArgs; - result: BatchPayload; - }; + args: Prisma.VerificationTokenUpdateManyArgs + result: BatchPayload + } upsert: { - args: Prisma.VerificationTokenUpsertArgs; - result: $Utils.PayloadToResult; - }; + args: Prisma.VerificationTokenUpsertArgs + result: $Utils.PayloadToResult + } aggregate: { - args: Prisma.VerificationTokenAggregateArgs; - result: $Utils.Optional; - }; + args: Prisma.VerificationTokenAggregateArgs + result: $Utils.Optional + } groupBy: { - args: Prisma.VerificationTokenGroupByArgs; - result: $Utils.Optional[]; - }; + args: Prisma.VerificationTokenGroupByArgs + result: $Utils.Optional[] + } count: { - args: Prisma.VerificationTokenCountArgs; - result: - | $Utils.Optional - | number; - }; - }; - }; - }; + args: Prisma.VerificationTokenCountArgs + result: $Utils.Optional | number + } + } + } + Shop: { + payload: Prisma.$ShopPayload + fields: Prisma.ShopFieldRefs + operations: { + findUnique: { + args: Prisma.ShopFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.ShopFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.ShopFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.ShopFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.ShopFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.ShopCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.ShopCreateManyArgs + result: BatchPayload + } + delete: { + args: Prisma.ShopDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.ShopUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.ShopDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.ShopUpdateManyArgs + result: BatchPayload + } + upsert: { + args: Prisma.ShopUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.ShopAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.ShopGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.ShopCountArgs + result: $Utils.Optional | number + } + } + } + Item: { + payload: Prisma.$ItemPayload + fields: Prisma.ItemFieldRefs + operations: { + findUnique: { + args: Prisma.ItemFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.ItemFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.ItemFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.ItemFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.ItemFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.ItemCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.ItemCreateManyArgs + result: BatchPayload + } + delete: { + args: Prisma.ItemDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.ItemUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.ItemDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.ItemUpdateManyArgs + result: BatchPayload + } + upsert: { + args: Prisma.ItemUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.ItemAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.ItemGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.ItemCountArgs + result: $Utils.Optional | number + } + } + } + Sellable: { + payload: Prisma.$SellablePayload + fields: Prisma.SellableFieldRefs + operations: { + findUnique: { + args: Prisma.SellableFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.SellableFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.SellableFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.SellableFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.SellableFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.SellableCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.SellableCreateManyArgs + result: BatchPayload + } + delete: { + args: Prisma.SellableDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.SellableUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.SellableDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.SellableUpdateManyArgs + result: BatchPayload + } + upsert: { + args: Prisma.SellableUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.SellableAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.SellableGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.SellableCountArgs + result: $Utils.Optional | number + } + } + } + Cart: { + payload: Prisma.$CartPayload + fields: Prisma.CartFieldRefs + operations: { + findUnique: { + args: Prisma.CartFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.CartFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.CartFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.CartFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.CartFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.CartCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.CartCreateManyArgs + result: BatchPayload + } + delete: { + args: Prisma.CartDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.CartUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.CartDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.CartUpdateManyArgs + result: BatchPayload + } + upsert: { + args: Prisma.CartUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.CartAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.CartGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.CartCountArgs + result: $Utils.Optional | number + } + } + } + CartItem: { + payload: Prisma.$CartItemPayload + fields: Prisma.CartItemFieldRefs + operations: { + findUnique: { + args: Prisma.CartItemFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.CartItemFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.CartItemFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.CartItemFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.CartItemFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.CartItemCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.CartItemCreateManyArgs + result: BatchPayload + } + delete: { + args: Prisma.CartItemDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.CartItemUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.CartItemDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.CartItemUpdateManyArgs + result: BatchPayload + } + upsert: { + args: Prisma.CartItemUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.CartItemAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.CartItemGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.CartItemCountArgs + result: $Utils.Optional | number + } + } + } + Adress: { + payload: Prisma.$AdressPayload + fields: Prisma.AdressFieldRefs + operations: { + findUnique: { + args: Prisma.AdressFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.AdressFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.AdressFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.AdressFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.AdressFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.AdressCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.AdressCreateManyArgs + result: BatchPayload + } + delete: { + args: Prisma.AdressDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.AdressUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.AdressDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.AdressUpdateManyArgs + result: BatchPayload + } + upsert: { + args: Prisma.AdressUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.AdressAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.AdressGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.AdressCountArgs + result: $Utils.Optional | number + } + } + } + } } & { other: { - payload: any; + payload: any operations: { $executeRaw: { - args: [query: TemplateStringsArray | Prisma.Sql, ...values: any[]]; - result: any; - }; + args: [query: TemplateStringsArray | Prisma.Sql, ...values: any[]], + result: any + } $executeRawUnsafe: { - args: [query: string, ...values: any[]]; - result: any; - }; + args: [query: string, ...values: any[]], + result: any + } $queryRaw: { - args: [query: TemplateStringsArray | Prisma.Sql, ...values: any[]]; - result: any; - }; + args: [query: TemplateStringsArray | Prisma.Sql, ...values: any[]], + result: any + } $queryRawUnsafe: { - args: [query: string, ...values: any[]]; - result: any; - }; - }; - }; - }; - export const defineExtension: $Extensions.ExtendsHook< - "define", - Prisma.TypeMapCb, - $Extensions.DefaultArgs - >; - export type DefaultPrismaClient = PrismaClient; - export type ErrorFormat = "pretty" | "colorless" | "minimal"; + args: [query: string, ...values: any[]], + result: any + } + } + } + } + export const defineExtension: $Extensions.ExtendsHook<"define", Prisma.TypeMapCb, $Extensions.DefaultArgs> + export type DefaultPrismaClient = PrismaClient + export type ErrorFormat = 'pretty' | 'colorless' | 'minimal' export interface PrismaClientOptions { /** * Overwrites the datasource url from your schema.prisma file */ - datasources?: Datasources; + datasources?: Datasources /** * Overwrites the datasource url from your schema.prisma file */ - datasourceUrl?: string; + datasourceUrl?: string /** * @default "colorless" */ - errorFormat?: ErrorFormat; + errorFormat?: ErrorFormat /** * @example * ``` * // Shorthand for `emit: 'stdout'` * log: ['query', 'info', 'warn', 'error'] - * + * * // Emit as events only * log: [ * { emit: 'event', level: 'query' }, @@ -1132,35 +1467,35 @@ export namespace Prisma { * { emit: 'event', level: 'warn' } * { emit: 'event', level: 'error' } * ] - * + * * / Emit as events and log to stdout * og: [ * { emit: 'stdout', level: 'query' }, * { emit: 'stdout', level: 'info' }, * { emit: 'stdout', level: 'warn' } * { emit: 'stdout', level: 'error' } - * + * * ``` * Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/logging#the-log-option). */ - log?: (LogLevel | LogDefinition)[]; + log?: (LogLevel | LogDefinition)[] /** * The default values for transactionOptions * maxWait ?= 2000 * timeout ?= 5000 */ transactionOptions?: { - maxWait?: number; - timeout?: number; - isolationLevel?: Prisma.TransactionIsolationLevel; - }; + maxWait?: number + timeout?: number + isolationLevel?: Prisma.TransactionIsolationLevel + } /** * Instance of a Driver Adapter, e.g., like one provided by `@prisma/adapter-planetscale` */ - adapter?: runtime.SqlDriverAdapterFactory | null; + adapter?: runtime.SqlDriverAdapterFactory | null /** * Global configuration for omitting model fields by default. - * + * * @example * ``` * const prisma = new PrismaClient({ @@ -1172,1673 +1507,622 @@ export namespace Prisma { * }) * ``` */ - omit?: Prisma.GlobalOmitConfig; + omit?: Prisma.GlobalOmitConfig } export type GlobalOmitConfig = { - post?: PostOmit; - account?: AccountOmit; - session?: SessionOmit; - user?: UserOmit; - verificationToken?: VerificationTokenOmit; - }; + account?: AccountOmit + session?: SessionOmit + user?: UserOmit + verificationToken?: VerificationTokenOmit + shop?: ShopOmit + item?: ItemOmit + sellable?: SellableOmit + cart?: CartOmit + cartItem?: CartItemOmit + adress?: AdressOmit + } /* Types for Logging */ - export type LogLevel = "info" | "query" | "warn" | "error"; + export type LogLevel = 'info' | 'query' | 'warn' | 'error' export type LogDefinition = { - level: LogLevel; - emit: "stdout" | "event"; - }; + level: LogLevel + emit: 'stdout' | 'event' + } export type CheckIsLogLevel = T extends LogLevel ? T : never; export type GetLogType = CheckIsLogLevel< - T extends LogDefinition ? T["level"] : T + T extends LogDefinition ? T['level'] : T >; - export type GetEvents = - T extends Array ? GetLogType : never; + export type GetEvents = T extends Array + ? GetLogType + : never; export type QueryEvent = { - timestamp: Date; - query: string; - params: string; - duration: number; - target: string; - }; + timestamp: Date + query: string + params: string + duration: number + target: string + } export type LogEvent = { - timestamp: Date; - message: string; - target: string; - }; + timestamp: Date + message: string + target: string + } /* End Types for Logging */ + export type PrismaAction = - | "findUnique" - | "findUniqueOrThrow" - | "findMany" - | "findFirst" - | "findFirstOrThrow" - | "create" - | "createMany" - | "createManyAndReturn" - | "update" - | "updateMany" - | "updateManyAndReturn" - | "upsert" - | "delete" - | "deleteMany" - | "executeRaw" - | "queryRaw" - | "aggregate" - | "count" - | "runCommandRaw" - | "findRaw" - | "groupBy"; + | 'findUnique' + | 'findUniqueOrThrow' + | 'findMany' + | 'findFirst' + | 'findFirstOrThrow' + | 'create' + | 'createMany' + | 'createManyAndReturn' + | 'update' + | 'updateMany' + | 'updateManyAndReturn' + | 'upsert' + | 'delete' + | 'deleteMany' + | 'executeRaw' + | 'queryRaw' + | 'aggregate' + | 'count' + | 'runCommandRaw' + | 'findRaw' + | 'groupBy' // tested in getLogLevel.test.ts - export function getLogLevel( - log: Array, - ): LogLevel | undefined; + export function getLogLevel(log: Array): LogLevel | undefined; /** * `PrismaClient` proxy available in interactive transactions. */ - export type TransactionClient = Omit< - Prisma.DefaultPrismaClient, - runtime.ITXClientDenyList - >; + export type TransactionClient = Omit export type Datasource = { - url?: string; - }; + url?: string + } /** * Count Types */ + /** * Count Type UserCountOutputType */ export type UserCountOutputType = { - accounts: number; - sessions: number; - posts: number; - }; + accounts: number + sessions: number + shops: number + carts: number + adresses: number + } - export type UserCountOutputTypeSelect< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - accounts?: boolean | UserCountOutputTypeCountAccountsArgs; - sessions?: boolean | UserCountOutputTypeCountSessionsArgs; - posts?: boolean | UserCountOutputTypeCountPostsArgs; - }; + export type UserCountOutputTypeSelect = { + accounts?: boolean | UserCountOutputTypeCountAccountsArgs + sessions?: boolean | UserCountOutputTypeCountSessionsArgs + shops?: boolean | UserCountOutputTypeCountShopsArgs + carts?: boolean | UserCountOutputTypeCountCartsArgs + adresses?: boolean | UserCountOutputTypeCountAdressesArgs + } // Custom InputTypes /** * UserCountOutputType without action */ - export type UserCountOutputTypeDefaultArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type UserCountOutputTypeDefaultArgs = { /** * Select specific fields to fetch from the UserCountOutputType */ - select?: UserCountOutputTypeSelect | null; - }; + select?: UserCountOutputTypeSelect | null + } /** * UserCountOutputType without action */ - export type UserCountOutputTypeCountAccountsArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - where?: AccountWhereInput; - }; + export type UserCountOutputTypeCountAccountsArgs = { + where?: AccountWhereInput + } /** * UserCountOutputType without action */ - export type UserCountOutputTypeCountSessionsArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - where?: SessionWhereInput; - }; + export type UserCountOutputTypeCountSessionsArgs = { + where?: SessionWhereInput + } /** * UserCountOutputType without action */ - export type UserCountOutputTypeCountPostsArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - where?: PostWhereInput; - }; + export type UserCountOutputTypeCountShopsArgs = { + where?: ShopWhereInput + } + + /** + * UserCountOutputType without action + */ + export type UserCountOutputTypeCountCartsArgs = { + where?: CartWhereInput + } + + /** + * UserCountOutputType without action + */ + export type UserCountOutputTypeCountAdressesArgs = { + where?: AdressWhereInput + } + + + /** + * Count Type ShopCountOutputType + */ + + export type ShopCountOutputType = { + items: number + sellables: number + } + + export type ShopCountOutputTypeSelect = { + items?: boolean | ShopCountOutputTypeCountItemsArgs + sellables?: boolean | ShopCountOutputTypeCountSellablesArgs + } + + // Custom InputTypes + /** + * ShopCountOutputType without action + */ + export type ShopCountOutputTypeDefaultArgs = { + /** + * Select specific fields to fetch from the ShopCountOutputType + */ + select?: ShopCountOutputTypeSelect | null + } + + /** + * ShopCountOutputType without action + */ + export type ShopCountOutputTypeCountItemsArgs = { + where?: ItemWhereInput + } + + /** + * ShopCountOutputType without action + */ + export type ShopCountOutputTypeCountSellablesArgs = { + where?: SellableWhereInput + } + + + /** + * Count Type ItemCountOutputType + */ + + export type ItemCountOutputType = { + sellables: number + } + + export type ItemCountOutputTypeSelect = { + sellables?: boolean | ItemCountOutputTypeCountSellablesArgs + } + + // Custom InputTypes + /** + * ItemCountOutputType without action + */ + export type ItemCountOutputTypeDefaultArgs = { + /** + * Select specific fields to fetch from the ItemCountOutputType + */ + select?: ItemCountOutputTypeSelect | null + } + + /** + * ItemCountOutputType without action + */ + export type ItemCountOutputTypeCountSellablesArgs = { + where?: SellableWhereInput + } + + + /** + * Count Type SellableCountOutputType + */ + + export type SellableCountOutputType = { + cartItems: number + } + + export type SellableCountOutputTypeSelect = { + cartItems?: boolean | SellableCountOutputTypeCountCartItemsArgs + } + + // Custom InputTypes + /** + * SellableCountOutputType without action + */ + export type SellableCountOutputTypeDefaultArgs = { + /** + * Select specific fields to fetch from the SellableCountOutputType + */ + select?: SellableCountOutputTypeSelect | null + } + + /** + * SellableCountOutputType without action + */ + export type SellableCountOutputTypeCountCartItemsArgs = { + where?: CartItemWhereInput + } + + + /** + * Count Type CartCountOutputType + */ + + export type CartCountOutputType = { + cartItems: number + } + + export type CartCountOutputTypeSelect = { + cartItems?: boolean | CartCountOutputTypeCountCartItemsArgs + } + + // Custom InputTypes + /** + * CartCountOutputType without action + */ + export type CartCountOutputTypeDefaultArgs = { + /** + * Select specific fields to fetch from the CartCountOutputType + */ + select?: CartCountOutputTypeSelect | null + } + + /** + * CartCountOutputType without action + */ + export type CartCountOutputTypeCountCartItemsArgs = { + where?: CartItemWhereInput + } + /** * Models */ - /** - * Model Post - */ - - export type AggregatePost = { - _count: PostCountAggregateOutputType | null; - _avg: PostAvgAggregateOutputType | null; - _sum: PostSumAggregateOutputType | null; - _min: PostMinAggregateOutputType | null; - _max: PostMaxAggregateOutputType | null; - }; - - export type PostAvgAggregateOutputType = { - id: number | null; - }; - - export type PostSumAggregateOutputType = { - id: number | null; - }; - - export type PostMinAggregateOutputType = { - id: number | null; - name: string | null; - createdAt: Date | null; - updatedAt: Date | null; - createdById: string | null; - }; - - export type PostMaxAggregateOutputType = { - id: number | null; - name: string | null; - createdAt: Date | null; - updatedAt: Date | null; - createdById: string | null; - }; - - export type PostCountAggregateOutputType = { - id: number; - name: number; - createdAt: number; - updatedAt: number; - createdById: number; - _all: number; - }; - - export type PostAvgAggregateInputType = { - id?: true; - }; - - export type PostSumAggregateInputType = { - id?: true; - }; - - export type PostMinAggregateInputType = { - id?: true; - name?: true; - createdAt?: true; - updatedAt?: true; - createdById?: true; - }; - - export type PostMaxAggregateInputType = { - id?: true; - name?: true; - createdAt?: true; - updatedAt?: true; - createdById?: true; - }; - - export type PostCountAggregateInputType = { - id?: true; - name?: true; - createdAt?: true; - updatedAt?: true; - createdById?: true; - _all?: true; - }; - - export type PostAggregateArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - /** - * Filter which Post to aggregate. - */ - where?: PostWhereInput; - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * - * Determine the order of Posts to fetch. - */ - orderBy?: PostOrderByWithRelationInput | PostOrderByWithRelationInput[]; - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * - * Sets the start position - */ - cursor?: PostWhereUniqueInput; - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * - * Take `±n` Posts from the position of the cursor. - */ - take?: number; - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * - * Skip the first `n` Posts. - */ - skip?: number; - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * - * Count returned Posts - **/ - _count?: true | PostCountAggregateInputType; - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * - * Select which fields to average - **/ - _avg?: PostAvgAggregateInputType; - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * - * Select which fields to sum - **/ - _sum?: PostSumAggregateInputType; - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * - * Select which fields to find the minimum value - **/ - _min?: PostMinAggregateInputType; - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * - * Select which fields to find the maximum value - **/ - _max?: PostMaxAggregateInputType; - }; - - export type GetPostAggregateType = { - [P in keyof T & keyof AggregatePost]: P extends "_count" | "count" - ? T[P] extends true - ? number - : GetScalarType - : GetScalarType; - }; - - export type PostGroupByArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - where?: PostWhereInput; - orderBy?: - | PostOrderByWithAggregationInput - | PostOrderByWithAggregationInput[]; - by: PostScalarFieldEnum[] | PostScalarFieldEnum; - having?: PostScalarWhereWithAggregatesInput; - take?: number; - skip?: number; - _count?: PostCountAggregateInputType | true; - _avg?: PostAvgAggregateInputType; - _sum?: PostSumAggregateInputType; - _min?: PostMinAggregateInputType; - _max?: PostMaxAggregateInputType; - }; - - export type PostGroupByOutputType = { - id: number; - name: string; - createdAt: Date; - updatedAt: Date; - createdById: string; - _count: PostCountAggregateOutputType | null; - _avg: PostAvgAggregateOutputType | null; - _sum: PostSumAggregateOutputType | null; - _min: PostMinAggregateOutputType | null; - _max: PostMaxAggregateOutputType | null; - }; - - type GetPostGroupByPayload = Prisma.PrismaPromise< - Array< - PickEnumerable & { - [P in keyof T & keyof PostGroupByOutputType]: P extends "_count" - ? T[P] extends boolean - ? number - : GetScalarType - : GetScalarType; - } - > - >; - - export type PostSelect< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = $Extensions.GetSelect< - { - id?: boolean; - name?: boolean; - createdAt?: boolean; - updatedAt?: boolean; - createdById?: boolean; - createdBy?: boolean | UserDefaultArgs; - }, - ExtArgs["result"]["post"] - >; - - export type PostSelectScalar = { - id?: boolean; - name?: boolean; - createdAt?: boolean; - updatedAt?: boolean; - createdById?: boolean; - }; - - export type PostOmit< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = $Extensions.GetOmit< - "id" | "name" | "createdAt" | "updatedAt" | "createdById", - ExtArgs["result"]["post"] - >; - export type PostInclude< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - createdBy?: boolean | UserDefaultArgs; - }; - - export type $PostPayload< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - name: "Post"; - objects: { - createdBy: Prisma.$UserPayload; - }; - scalars: $Extensions.GetPayloadResult< - { - id: number; - name: string; - createdAt: Date; - updatedAt: Date; - createdById: string; - }, - ExtArgs["result"]["post"] - >; - composites: {}; - }; - - type PostGetPayload = - $Result.GetResult; - - type PostCountArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = Omit & { - select?: PostCountAggregateInputType | true; - }; - - export interface PostDelegate< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - GlobalOmitOptions = {}, - > { - [K: symbol]: { - types: Prisma.TypeMap["model"]["Post"]; - meta: { name: "Post" }; - }; - /** - * Find zero or one Post that matches the filter. - * @param {PostFindUniqueArgs} args - Arguments to find a Post - * @example - * // Get one Post - * const post = await prisma.post.findUnique({ - * where: { - * // ... provide filter here - * } - * }) - */ - findUnique( - args: SelectSubset>, - ): Prisma__PostClient< - $Result.GetResult< - Prisma.$PostPayload, - T, - "findUnique", - GlobalOmitOptions - > | null, - null, - ExtArgs, - GlobalOmitOptions - >; - - /** - * Find one Post that matches the filter or throw an error with `error.code='P2025'` - * if no matches were found. - * @param {PostFindUniqueOrThrowArgs} args - Arguments to find a Post - * @example - * // Get one Post - * const post = await prisma.post.findUniqueOrThrow({ - * where: { - * // ... provide filter here - * } - * }) - */ - findUniqueOrThrow( - args: SelectSubset>, - ): Prisma__PostClient< - $Result.GetResult< - Prisma.$PostPayload, - T, - "findUniqueOrThrow", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; - - /** - * Find the first Post that matches the filter. - * Note, that providing `undefined` is treated as the value not being there. - * Read more here: https://pris.ly/d/null-undefined - * @param {PostFindFirstArgs} args - Arguments to find a Post - * @example - * // Get one Post - * const post = await prisma.post.findFirst({ - * where: { - * // ... provide filter here - * } - * }) - */ - findFirst( - args?: SelectSubset>, - ): Prisma__PostClient< - $Result.GetResult< - Prisma.$PostPayload, - T, - "findFirst", - GlobalOmitOptions - > | null, - null, - ExtArgs, - GlobalOmitOptions - >; - - /** - * Find the first Post that matches the filter or - * throw `PrismaKnownClientError` with `P2025` code if no matches were found. - * Note, that providing `undefined` is treated as the value not being there. - * Read more here: https://pris.ly/d/null-undefined - * @param {PostFindFirstOrThrowArgs} args - Arguments to find a Post - * @example - * // Get one Post - * const post = await prisma.post.findFirstOrThrow({ - * where: { - * // ... provide filter here - * } - * }) - */ - findFirstOrThrow( - args?: SelectSubset>, - ): Prisma__PostClient< - $Result.GetResult< - Prisma.$PostPayload, - T, - "findFirstOrThrow", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; - - /** - * Find zero or more Posts that matches the filter. - * Note, that providing `undefined` is treated as the value not being there. - * Read more here: https://pris.ly/d/null-undefined - * @param {PostFindManyArgs} args - Arguments to filter and select certain fields only. - * @example - * // Get all Posts - * const posts = await prisma.post.findMany() - * - * // Get first 10 Posts - * const posts = await prisma.post.findMany({ take: 10 }) - * - * // Only select the `id` - * const postWithIdOnly = await prisma.post.findMany({ select: { id: true } }) - * - */ - findMany( - args?: SelectSubset>, - ): Prisma.PrismaPromise< - $Result.GetResult< - Prisma.$PostPayload, - T, - "findMany", - GlobalOmitOptions - > - >; - - /** - * Create a Post. - * @param {PostCreateArgs} args - Arguments to create a Post. - * @example - * // Create one Post - * const Post = await prisma.post.create({ - * data: { - * // ... data to create a Post - * } - * }) - * - */ - create( - args: SelectSubset>, - ): Prisma__PostClient< - $Result.GetResult< - Prisma.$PostPayload, - T, - "create", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; - - /** - * Create many Posts. - * @param {PostCreateManyArgs} args - Arguments to create many Posts. - * @example - * // Create many Posts - * const post = await prisma.post.createMany({ - * data: [ - * // ... provide data here - * ] - * }) - * - */ - createMany( - args?: SelectSubset>, - ): Prisma.PrismaPromise; - - /** - * Delete a Post. - * @param {PostDeleteArgs} args - Arguments to delete one Post. - * @example - * // Delete one Post - * const Post = await prisma.post.delete({ - * where: { - * // ... filter to delete one Post - * } - * }) - * - */ - delete( - args: SelectSubset>, - ): Prisma__PostClient< - $Result.GetResult< - Prisma.$PostPayload, - T, - "delete", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; - - /** - * Update one Post. - * @param {PostUpdateArgs} args - Arguments to update one Post. - * @example - * // Update one Post - * const post = await prisma.post.update({ - * where: { - * // ... provide filter here - * }, - * data: { - * // ... provide data here - * } - * }) - * - */ - update( - args: SelectSubset>, - ): Prisma__PostClient< - $Result.GetResult< - Prisma.$PostPayload, - T, - "update", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; - - /** - * Delete zero or more Posts. - * @param {PostDeleteManyArgs} args - Arguments to filter Posts to delete. - * @example - * // Delete a few Posts - * const { count } = await prisma.post.deleteMany({ - * where: { - * // ... provide filter here - * } - * }) - * - */ - deleteMany( - args?: SelectSubset>, - ): Prisma.PrismaPromise; - - /** - * Update zero or more Posts. - * Note, that providing `undefined` is treated as the value not being there. - * Read more here: https://pris.ly/d/null-undefined - * @param {PostUpdateManyArgs} args - Arguments to update one or more rows. - * @example - * // Update many Posts - * const post = await prisma.post.updateMany({ - * where: { - * // ... provide filter here - * }, - * data: { - * // ... provide data here - * } - * }) - * - */ - updateMany( - args: SelectSubset>, - ): Prisma.PrismaPromise; - - /** - * Create or update one Post. - * @param {PostUpsertArgs} args - Arguments to update or create a Post. - * @example - * // Update or create a Post - * const post = await prisma.post.upsert({ - * create: { - * // ... data to create a Post - * }, - * update: { - * // ... in case it already exists, update - * }, - * where: { - * // ... the filter for the Post we want to update - * } - * }) - */ - upsert( - args: SelectSubset>, - ): Prisma__PostClient< - $Result.GetResult< - Prisma.$PostPayload, - T, - "upsert", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; - - /** - * Count the number of Posts. - * Note, that providing `undefined` is treated as the value not being there. - * Read more here: https://pris.ly/d/null-undefined - * @param {PostCountArgs} args - Arguments to filter Posts to count. - * @example - * // Count the number of Posts - * const count = await prisma.post.count({ - * where: { - * // ... the filter for the Posts we want to count - * } - * }) - **/ - count( - args?: Subset, - ): Prisma.PrismaPromise< - T extends $Utils.Record<"select", any> - ? T["select"] extends true - ? number - : GetScalarType - : number - >; - - /** - * Allows you to perform aggregations operations on a Post. - * Note, that providing `undefined` is treated as the value not being there. - * Read more here: https://pris.ly/d/null-undefined - * @param {PostAggregateArgs} args - Select which aggregations you would like to apply and on what fields. - * @example - * // Ordered by age ascending - * // Where email contains prisma.io - * // Limited to the 10 users - * const aggregations = await prisma.user.aggregate({ - * _avg: { - * age: true, - * }, - * where: { - * email: { - * contains: "prisma.io", - * }, - * }, - * orderBy: { - * age: "asc", - * }, - * take: 10, - * }) - **/ - aggregate( - args: Subset, - ): Prisma.PrismaPromise>; - - /** - * Group by Post. - * Note, that providing `undefined` is treated as the value not being there. - * Read more here: https://pris.ly/d/null-undefined - * @param {PostGroupByArgs} args - Group by arguments. - * @example - * // Group by city, order by createdAt, get count - * const result = await prisma.user.groupBy({ - * by: ['city', 'createdAt'], - * orderBy: { - * createdAt: true - * }, - * _count: { - * _all: true - * }, - * }) - * - **/ - groupBy< - T extends PostGroupByArgs, - HasSelectOrTake extends Or< - Extends<"skip", Keys>, - Extends<"take", Keys> - >, - OrderByArg extends True extends HasSelectOrTake - ? { orderBy: PostGroupByArgs["orderBy"] } - : { orderBy?: PostGroupByArgs["orderBy"] }, - OrderFields extends ExcludeUnderscoreKeys< - Keys> - >, - ByFields extends MaybeTupleToUnion, - ByValid extends Has, - HavingFields extends GetHavingFields, - HavingValid extends Has, - ByEmpty extends T["by"] extends never[] ? True : False, - InputErrors extends ByEmpty extends True - ? `Error: "by" must not be empty.` - : HavingValid extends False - ? { - [P in HavingFields]: P extends ByFields - ? never - : P extends string - ? `Error: Field "${P}" used in "having" needs to be provided in "by".` - : [ - Error, - "Field ", - P, - ` in "having" needs to be provided in "by"`, - ]; - }[HavingFields] - : "take" extends Keys - ? "orderBy" extends Keys - ? ByValid extends True - ? {} - : { - [P in OrderFields]: P extends ByFields - ? never - : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`; - }[OrderFields] - : 'Error: If you provide "take", you also need to provide "orderBy"' - : "skip" extends Keys - ? "orderBy" extends Keys - ? ByValid extends True - ? {} - : { - [P in OrderFields]: P extends ByFields - ? never - : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`; - }[OrderFields] - : 'Error: If you provide "skip", you also need to provide "orderBy"' - : ByValid extends True - ? {} - : { - [P in OrderFields]: P extends ByFields - ? never - : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`; - }[OrderFields], - >( - args: SubsetIntersection & InputErrors, - ): {} extends InputErrors - ? GetPostGroupByPayload - : Prisma.PrismaPromise; - /** - * Fields of the Post model - */ - readonly fields: PostFieldRefs; - } - - /** - * The delegate class that acts as a "Promise-like" for Post. - * Why is this prefixed with `Prisma__`? - * Because we want to prevent naming conflicts as mentioned in - * https://github.com/prisma/prisma-client-js/issues/707 - */ - export interface Prisma__PostClient< - T, - Null = never, - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - GlobalOmitOptions = {}, - > extends Prisma.PrismaPromise { - readonly [Symbol.toStringTag]: "PrismaPromise"; - createdBy = {}>( - args?: Subset>, - ): Prisma__UserClient< - | $Result.GetResult< - Prisma.$UserPayload, - T, - "findUniqueOrThrow", - GlobalOmitOptions - > - | Null, - Null, - ExtArgs, - GlobalOmitOptions - >; - /** - * Attaches callbacks for the resolution and/or rejection of the Promise. - * @param onfulfilled The callback to execute when the Promise is resolved. - * @param onrejected The callback to execute when the Promise is rejected. - * @returns A Promise for the completion of which ever callback is executed. - */ - then( - onfulfilled?: - | ((value: T) => TResult1 | PromiseLike) - | undefined - | null, - onrejected?: - | ((reason: any) => TResult2 | PromiseLike) - | undefined - | null, - ): $Utils.JsPromise; - /** - * Attaches a callback for only the rejection of the Promise. - * @param onrejected The callback to execute when the Promise is rejected. - * @returns A Promise for the completion of the callback. - */ - catch( - onrejected?: - | ((reason: any) => TResult | PromiseLike) - | undefined - | null, - ): $Utils.JsPromise; - /** - * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The - * resolved value cannot be modified from the callback. - * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). - * @returns A Promise for the completion of the callback. - */ - finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise; - } - - /** - * Fields of the Post model - */ - interface PostFieldRefs { - readonly id: FieldRef<"Post", "Int">; - readonly name: FieldRef<"Post", "String">; - readonly createdAt: FieldRef<"Post", "DateTime">; - readonly updatedAt: FieldRef<"Post", "DateTime">; - readonly createdById: FieldRef<"Post", "String">; - } - - // Custom InputTypes - /** - * Post findUnique - */ - export type PostFindUniqueArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - /** - * Select specific fields to fetch from the Post - */ - select?: PostSelect | null; - /** - * Omit specific fields from the Post - */ - omit?: PostOmit | null; - /** - * Choose, which related nodes to fetch as well - */ - include?: PostInclude | null; - /** - * Filter, which Post to fetch. - */ - where: PostWhereUniqueInput; - }; - - /** - * Post findUniqueOrThrow - */ - export type PostFindUniqueOrThrowArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - /** - * Select specific fields to fetch from the Post - */ - select?: PostSelect | null; - /** - * Omit specific fields from the Post - */ - omit?: PostOmit | null; - /** - * Choose, which related nodes to fetch as well - */ - include?: PostInclude | null; - /** - * Filter, which Post to fetch. - */ - where: PostWhereUniqueInput; - }; - - /** - * Post findFirst - */ - export type PostFindFirstArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - /** - * Select specific fields to fetch from the Post - */ - select?: PostSelect | null; - /** - * Omit specific fields from the Post - */ - omit?: PostOmit | null; - /** - * Choose, which related nodes to fetch as well - */ - include?: PostInclude | null; - /** - * Filter, which Post to fetch. - */ - where?: PostWhereInput; - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * - * Determine the order of Posts to fetch. - */ - orderBy?: PostOrderByWithRelationInput | PostOrderByWithRelationInput[]; - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * - * Sets the position for searching for Posts. - */ - cursor?: PostWhereUniqueInput; - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * - * Take `±n` Posts from the position of the cursor. - */ - take?: number; - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * - * Skip the first `n` Posts. - */ - skip?: number; - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} - * - * Filter by unique combinations of Posts. - */ - distinct?: PostScalarFieldEnum | PostScalarFieldEnum[]; - }; - - /** - * Post findFirstOrThrow - */ - export type PostFindFirstOrThrowArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - /** - * Select specific fields to fetch from the Post - */ - select?: PostSelect | null; - /** - * Omit specific fields from the Post - */ - omit?: PostOmit | null; - /** - * Choose, which related nodes to fetch as well - */ - include?: PostInclude | null; - /** - * Filter, which Post to fetch. - */ - where?: PostWhereInput; - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * - * Determine the order of Posts to fetch. - */ - orderBy?: PostOrderByWithRelationInput | PostOrderByWithRelationInput[]; - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * - * Sets the position for searching for Posts. - */ - cursor?: PostWhereUniqueInput; - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * - * Take `±n` Posts from the position of the cursor. - */ - take?: number; - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * - * Skip the first `n` Posts. - */ - skip?: number; - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} - * - * Filter by unique combinations of Posts. - */ - distinct?: PostScalarFieldEnum | PostScalarFieldEnum[]; - }; - - /** - * Post findMany - */ - export type PostFindManyArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - /** - * Select specific fields to fetch from the Post - */ - select?: PostSelect | null; - /** - * Omit specific fields from the Post - */ - omit?: PostOmit | null; - /** - * Choose, which related nodes to fetch as well - */ - include?: PostInclude | null; - /** - * Filter, which Posts to fetch. - */ - where?: PostWhereInput; - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * - * Determine the order of Posts to fetch. - */ - orderBy?: PostOrderByWithRelationInput | PostOrderByWithRelationInput[]; - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * - * Sets the position for listing Posts. - */ - cursor?: PostWhereUniqueInput; - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * - * Take `±n` Posts from the position of the cursor. - */ - take?: number; - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * - * Skip the first `n` Posts. - */ - skip?: number; - distinct?: PostScalarFieldEnum | PostScalarFieldEnum[]; - }; - - /** - * Post create - */ - export type PostCreateArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - /** - * Select specific fields to fetch from the Post - */ - select?: PostSelect | null; - /** - * Omit specific fields from the Post - */ - omit?: PostOmit | null; - /** - * Choose, which related nodes to fetch as well - */ - include?: PostInclude | null; - /** - * The data needed to create a Post. - */ - data: XOR; - }; - - /** - * Post createMany - */ - export type PostCreateManyArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - /** - * The data used to create many Posts. - */ - data: PostCreateManyInput | PostCreateManyInput[]; - skipDuplicates?: boolean; - }; - - /** - * Post update - */ - export type PostUpdateArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - /** - * Select specific fields to fetch from the Post - */ - select?: PostSelect | null; - /** - * Omit specific fields from the Post - */ - omit?: PostOmit | null; - /** - * Choose, which related nodes to fetch as well - */ - include?: PostInclude | null; - /** - * The data needed to update a Post. - */ - data: XOR; - /** - * Choose, which Post to update. - */ - where: PostWhereUniqueInput; - }; - - /** - * Post updateMany - */ - export type PostUpdateManyArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - /** - * The data used to update Posts. - */ - data: XOR; - /** - * Filter which Posts to update - */ - where?: PostWhereInput; - /** - * Limit how many Posts to update. - */ - limit?: number; - }; - - /** - * Post upsert - */ - export type PostUpsertArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - /** - * Select specific fields to fetch from the Post - */ - select?: PostSelect | null; - /** - * Omit specific fields from the Post - */ - omit?: PostOmit | null; - /** - * Choose, which related nodes to fetch as well - */ - include?: PostInclude | null; - /** - * The filter to search for the Post to update in case it exists. - */ - where: PostWhereUniqueInput; - /** - * In case the Post found by the `where` argument doesn't exist, create a new Post with this data. - */ - create: XOR; - /** - * In case the Post was found with the provided `where` argument, update it with this data. - */ - update: XOR; - }; - - /** - * Post delete - */ - export type PostDeleteArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - /** - * Select specific fields to fetch from the Post - */ - select?: PostSelect | null; - /** - * Omit specific fields from the Post - */ - omit?: PostOmit | null; - /** - * Choose, which related nodes to fetch as well - */ - include?: PostInclude | null; - /** - * Filter which Post to delete. - */ - where: PostWhereUniqueInput; - }; - - /** - * Post deleteMany - */ - export type PostDeleteManyArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - /** - * Filter which Posts to delete - */ - where?: PostWhereInput; - /** - * Limit how many Posts to delete. - */ - limit?: number; - }; - - /** - * Post without action - */ - export type PostDefaultArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - /** - * Select specific fields to fetch from the Post - */ - select?: PostSelect | null; - /** - * Omit specific fields from the Post - */ - omit?: PostOmit | null; - /** - * Choose, which related nodes to fetch as well - */ - include?: PostInclude | null; - }; - /** * Model Account */ export type AggregateAccount = { - _count: AccountCountAggregateOutputType | null; - _avg: AccountAvgAggregateOutputType | null; - _sum: AccountSumAggregateOutputType | null; - _min: AccountMinAggregateOutputType | null; - _max: AccountMaxAggregateOutputType | null; - }; + _count: AccountCountAggregateOutputType | null + _avg: AccountAvgAggregateOutputType | null + _sum: AccountSumAggregateOutputType | null + _min: AccountMinAggregateOutputType | null + _max: AccountMaxAggregateOutputType | null + } export type AccountAvgAggregateOutputType = { - expires_at: number | null; - refresh_token_expires_in: number | null; - }; + expires_at: number | null + refresh_token_expires_in: number | null + } export type AccountSumAggregateOutputType = { - expires_at: number | null; - refresh_token_expires_in: number | null; - }; + expires_at: number | null + refresh_token_expires_in: number | null + } export type AccountMinAggregateOutputType = { - id: string | null; - userId: string | null; - type: string | null; - provider: string | null; - providerAccountId: string | null; - refresh_token: string | null; - access_token: string | null; - expires_at: number | null; - token_type: string | null; - scope: string | null; - id_token: string | null; - session_state: string | null; - refresh_token_expires_in: number | null; - }; + id: string | null + userId: string | null + type: string | null + provider: string | null + providerAccountId: string | null + refresh_token: string | null + access_token: string | null + expires_at: number | null + token_type: string | null + scope: string | null + id_token: string | null + session_state: string | null + refresh_token_expires_in: number | null + } export type AccountMaxAggregateOutputType = { - id: string | null; - userId: string | null; - type: string | null; - provider: string | null; - providerAccountId: string | null; - refresh_token: string | null; - access_token: string | null; - expires_at: number | null; - token_type: string | null; - scope: string | null; - id_token: string | null; - session_state: string | null; - refresh_token_expires_in: number | null; - }; + id: string | null + userId: string | null + type: string | null + provider: string | null + providerAccountId: string | null + refresh_token: string | null + access_token: string | null + expires_at: number | null + token_type: string | null + scope: string | null + id_token: string | null + session_state: string | null + refresh_token_expires_in: number | null + } export type AccountCountAggregateOutputType = { - id: number; - userId: number; - type: number; - provider: number; - providerAccountId: number; - refresh_token: number; - access_token: number; - expires_at: number; - token_type: number; - scope: number; - id_token: number; - session_state: number; - refresh_token_expires_in: number; - _all: number; - }; + id: number + userId: number + type: number + provider: number + providerAccountId: number + refresh_token: number + access_token: number + expires_at: number + token_type: number + scope: number + id_token: number + session_state: number + refresh_token_expires_in: number + _all: number + } + export type AccountAvgAggregateInputType = { - expires_at?: true; - refresh_token_expires_in?: true; - }; + expires_at?: true + refresh_token_expires_in?: true + } export type AccountSumAggregateInputType = { - expires_at?: true; - refresh_token_expires_in?: true; - }; + expires_at?: true + refresh_token_expires_in?: true + } export type AccountMinAggregateInputType = { - id?: true; - userId?: true; - type?: true; - provider?: true; - providerAccountId?: true; - refresh_token?: true; - access_token?: true; - expires_at?: true; - token_type?: true; - scope?: true; - id_token?: true; - session_state?: true; - refresh_token_expires_in?: true; - }; + id?: true + userId?: true + type?: true + provider?: true + providerAccountId?: true + refresh_token?: true + access_token?: true + expires_at?: true + token_type?: true + scope?: true + id_token?: true + session_state?: true + refresh_token_expires_in?: true + } export type AccountMaxAggregateInputType = { - id?: true; - userId?: true; - type?: true; - provider?: true; - providerAccountId?: true; - refresh_token?: true; - access_token?: true; - expires_at?: true; - token_type?: true; - scope?: true; - id_token?: true; - session_state?: true; - refresh_token_expires_in?: true; - }; + id?: true + userId?: true + type?: true + provider?: true + providerAccountId?: true + refresh_token?: true + access_token?: true + expires_at?: true + token_type?: true + scope?: true + id_token?: true + session_state?: true + refresh_token_expires_in?: true + } export type AccountCountAggregateInputType = { - id?: true; - userId?: true; - type?: true; - provider?: true; - providerAccountId?: true; - refresh_token?: true; - access_token?: true; - expires_at?: true; - token_type?: true; - scope?: true; - id_token?: true; - session_state?: true; - refresh_token_expires_in?: true; - _all?: true; - }; + id?: true + userId?: true + type?: true + provider?: true + providerAccountId?: true + refresh_token?: true + access_token?: true + expires_at?: true + token_type?: true + scope?: true + id_token?: true + session_state?: true + refresh_token_expires_in?: true + _all?: true + } - export type AccountAggregateArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type AccountAggregateArgs = { /** * Filter which Account to aggregate. */ - where?: AccountWhereInput; + where?: AccountWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * + * * Determine the order of Accounts to fetch. */ - orderBy?: - | AccountOrderByWithRelationInput - | AccountOrderByWithRelationInput[]; + orderBy?: AccountOrderByWithRelationInput | AccountOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * + * * Sets the start position */ - cursor?: AccountWhereUniqueInput; + cursor?: AccountWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Take `±n` Accounts from the position of the cursor. */ - take?: number; + take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Skip the first `n` Accounts. */ - skip?: number; + skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * + * * Count returned Accounts - **/ - _count?: true | AccountCountAggregateInputType; + **/ + _count?: true | AccountCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * + * * Select which fields to average - **/ - _avg?: AccountAvgAggregateInputType; + **/ + _avg?: AccountAvgAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * + * * Select which fields to sum - **/ - _sum?: AccountSumAggregateInputType; + **/ + _sum?: AccountSumAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * + * * Select which fields to find the minimum value - **/ - _min?: AccountMinAggregateInputType; + **/ + _min?: AccountMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * + * * Select which fields to find the maximum value - **/ - _max?: AccountMaxAggregateInputType; - }; + **/ + _max?: AccountMaxAggregateInputType + } export type GetAccountAggregateType = { - [P in keyof T & keyof AggregateAccount]: P extends "_count" | "count" + [P in keyof T & keyof AggregateAccount]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType - : GetScalarType; - }; + : GetScalarType + } - export type AccountGroupByArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - where?: AccountWhereInput; - orderBy?: - | AccountOrderByWithAggregationInput - | AccountOrderByWithAggregationInput[]; - by: AccountScalarFieldEnum[] | AccountScalarFieldEnum; - having?: AccountScalarWhereWithAggregatesInput; - take?: number; - skip?: number; - _count?: AccountCountAggregateInputType | true; - _avg?: AccountAvgAggregateInputType; - _sum?: AccountSumAggregateInputType; - _min?: AccountMinAggregateInputType; - _max?: AccountMaxAggregateInputType; - }; + + + + export type AccountGroupByArgs = { + where?: AccountWhereInput + orderBy?: AccountOrderByWithAggregationInput | AccountOrderByWithAggregationInput[] + by: AccountScalarFieldEnum[] | AccountScalarFieldEnum + having?: AccountScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: AccountCountAggregateInputType | true + _avg?: AccountAvgAggregateInputType + _sum?: AccountSumAggregateInputType + _min?: AccountMinAggregateInputType + _max?: AccountMaxAggregateInputType + } export type AccountGroupByOutputType = { - id: string; - userId: string; - type: string; - provider: string; - providerAccountId: string; - refresh_token: string | null; - access_token: string | null; - expires_at: number | null; - token_type: string | null; - scope: string | null; - id_token: string | null; - session_state: string | null; - refresh_token_expires_in: number | null; - _count: AccountCountAggregateOutputType | null; - _avg: AccountAvgAggregateOutputType | null; - _sum: AccountSumAggregateOutputType | null; - _min: AccountMinAggregateOutputType | null; - _max: AccountMaxAggregateOutputType | null; - }; + id: string + userId: string + type: string + provider: string + providerAccountId: string + refresh_token: string | null + access_token: string | null + expires_at: number | null + token_type: string | null + scope: string | null + id_token: string | null + session_state: string | null + refresh_token_expires_in: number | null + _count: AccountCountAggregateOutputType | null + _avg: AccountAvgAggregateOutputType | null + _sum: AccountSumAggregateOutputType | null + _min: AccountMinAggregateOutputType | null + _max: AccountMaxAggregateOutputType | null + } - type GetAccountGroupByPayload = - Prisma.PrismaPromise< - Array< - PickEnumerable & { - [P in keyof T & keyof AccountGroupByOutputType]: P extends "_count" + type GetAccountGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof AccountGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType - : GetScalarType; + : GetScalarType } > - >; + > + + + export type AccountSelect = $Extensions.GetSelect<{ + id?: boolean + userId?: boolean + type?: boolean + provider?: boolean + providerAccountId?: boolean + refresh_token?: boolean + access_token?: boolean + expires_at?: boolean + token_type?: boolean + scope?: boolean + id_token?: boolean + session_state?: boolean + refresh_token_expires_in?: boolean + user?: boolean | UserDefaultArgs + }, ExtArgs["result"]["account"]> + - export type AccountSelect< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = $Extensions.GetSelect< - { - id?: boolean; - userId?: boolean; - type?: boolean; - provider?: boolean; - providerAccountId?: boolean; - refresh_token?: boolean; - access_token?: boolean; - expires_at?: boolean; - token_type?: boolean; - scope?: boolean; - id_token?: boolean; - session_state?: boolean; - refresh_token_expires_in?: boolean; - user?: boolean | UserDefaultArgs; - }, - ExtArgs["result"]["account"] - >; export type AccountSelectScalar = { - id?: boolean; - userId?: boolean; - type?: boolean; - provider?: boolean; - providerAccountId?: boolean; - refresh_token?: boolean; - access_token?: boolean; - expires_at?: boolean; - token_type?: boolean; - scope?: boolean; - id_token?: boolean; - session_state?: boolean; - refresh_token_expires_in?: boolean; - }; + id?: boolean + userId?: boolean + type?: boolean + provider?: boolean + providerAccountId?: boolean + refresh_token?: boolean + access_token?: boolean + expires_at?: boolean + token_type?: boolean + scope?: boolean + id_token?: boolean + session_state?: boolean + refresh_token_expires_in?: boolean + } - export type AccountOmit< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = $Extensions.GetOmit< - | "id" - | "userId" - | "type" - | "provider" - | "providerAccountId" - | "refresh_token" - | "access_token" - | "expires_at" - | "token_type" - | "scope" - | "id_token" - | "session_state" - | "refresh_token_expires_in", - ExtArgs["result"]["account"] - >; - export type AccountInclude< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - user?: boolean | UserDefaultArgs; - }; + export type AccountOmit = $Extensions.GetOmit<"id" | "userId" | "type" | "provider" | "providerAccountId" | "refresh_token" | "access_token" | "expires_at" | "token_type" | "scope" | "id_token" | "session_state" | "refresh_token_expires_in", ExtArgs["result"]["account"]> + export type AccountInclude = { + user?: boolean | UserDefaultArgs + } - export type $AccountPayload< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - name: "Account"; + export type $AccountPayload = { + name: "Account" objects: { - user: Prisma.$UserPayload; - }; - scalars: $Extensions.GetPayloadResult< - { - id: string; - userId: string; - type: string; - provider: string; - providerAccountId: string; - refresh_token: string | null; - access_token: string | null; - expires_at: number | null; - token_type: string | null; - scope: string | null; - id_token: string | null; - session_state: string | null; - refresh_token_expires_in: number | null; - }, - ExtArgs["result"]["account"] - >; - composites: {}; - }; + user: Prisma.$UserPayload + } + scalars: $Extensions.GetPayloadResult<{ + id: string + userId: string + type: string + provider: string + providerAccountId: string + refresh_token: string | null + access_token: string | null + expires_at: number | null + token_type: string | null + scope: string | null + id_token: string | null + session_state: string | null + refresh_token_expires_in: number | null + }, ExtArgs["result"]["account"]> + composites: {} + } - type AccountGetPayload< - S extends boolean | null | undefined | AccountDefaultArgs, - > = $Result.GetResult; + type AccountGetPayload = $Result.GetResult - type AccountCountArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = Omit & { - select?: AccountCountAggregateInputType | true; - }; + type AccountCountArgs = + Omit & { + select?: AccountCountAggregateInputType | true + } - export interface AccountDelegate< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - GlobalOmitOptions = {}, - > { - [K: symbol]: { - types: Prisma.TypeMap["model"]["Account"]; - meta: { name: "Account" }; - }; + export interface AccountDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['Account'], meta: { name: 'Account' } } /** * Find zero or one Account that matches the filter. * @param {AccountFindUniqueArgs} args - Arguments to find a Account @@ -2850,19 +2134,7 @@ export namespace Prisma { * } * }) */ - findUnique( - args: SelectSubset>, - ): Prisma__AccountClient< - $Result.GetResult< - Prisma.$AccountPayload, - T, - "findUnique", - GlobalOmitOptions - > | null, - null, - ExtArgs, - GlobalOmitOptions - >; + findUnique(args: SelectSubset>): Prisma__AccountClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> /** * Find one Account that matches the filter or throw an error with `error.code='P2025'` @@ -2876,19 +2148,7 @@ export namespace Prisma { * } * }) */ - findUniqueOrThrow( - args: SelectSubset>, - ): Prisma__AccountClient< - $Result.GetResult< - Prisma.$AccountPayload, - T, - "findUniqueOrThrow", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; + findUniqueOrThrow(args: SelectSubset>): Prisma__AccountClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> /** * Find the first Account that matches the filter. @@ -2903,19 +2163,7 @@ export namespace Prisma { * } * }) */ - findFirst( - args?: SelectSubset>, - ): Prisma__AccountClient< - $Result.GetResult< - Prisma.$AccountPayload, - T, - "findFirst", - GlobalOmitOptions - > | null, - null, - ExtArgs, - GlobalOmitOptions - >; + findFirst(args?: SelectSubset>): Prisma__AccountClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> /** * Find the first Account that matches the filter or @@ -2931,19 +2179,7 @@ export namespace Prisma { * } * }) */ - findFirstOrThrow( - args?: SelectSubset>, - ): Prisma__AccountClient< - $Result.GetResult< - Prisma.$AccountPayload, - T, - "findFirstOrThrow", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; + findFirstOrThrow(args?: SelectSubset>): Prisma__AccountClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> /** * Find zero or more Accounts that matches the filter. @@ -2953,24 +2189,15 @@ export namespace Prisma { * @example * // Get all Accounts * const accounts = await prisma.account.findMany() - * + * * // Get first 10 Accounts * const accounts = await prisma.account.findMany({ take: 10 }) - * + * * // Only select the `id` * const accountWithIdOnly = await prisma.account.findMany({ select: { id: true } }) - * + * */ - findMany( - args?: SelectSubset>, - ): Prisma.PrismaPromise< - $Result.GetResult< - Prisma.$AccountPayload, - T, - "findMany", - GlobalOmitOptions - > - >; + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> /** * Create a Account. @@ -2982,21 +2209,9 @@ export namespace Prisma { * // ... data to create a Account * } * }) - * + * */ - create( - args: SelectSubset>, - ): Prisma__AccountClient< - $Result.GetResult< - Prisma.$AccountPayload, - T, - "create", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; + create(args: SelectSubset>): Prisma__AccountClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> /** * Create many Accounts. @@ -3008,11 +2223,9 @@ export namespace Prisma { * // ... provide data here * ] * }) - * + * */ - createMany( - args?: SelectSubset>, - ): Prisma.PrismaPromise; + createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Delete a Account. @@ -3024,21 +2237,9 @@ export namespace Prisma { * // ... filter to delete one Account * } * }) - * + * */ - delete( - args: SelectSubset>, - ): Prisma__AccountClient< - $Result.GetResult< - Prisma.$AccountPayload, - T, - "delete", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; + delete(args: SelectSubset>): Prisma__AccountClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> /** * Update one Account. @@ -3053,21 +2254,9 @@ export namespace Prisma { * // ... provide data here * } * }) - * + * */ - update( - args: SelectSubset>, - ): Prisma__AccountClient< - $Result.GetResult< - Prisma.$AccountPayload, - T, - "update", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; + update(args: SelectSubset>): Prisma__AccountClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> /** * Delete zero or more Accounts. @@ -3079,11 +2268,9 @@ export namespace Prisma { * // ... provide filter here * } * }) - * + * */ - deleteMany( - args?: SelectSubset>, - ): Prisma.PrismaPromise; + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more Accounts. @@ -3100,11 +2287,9 @@ export namespace Prisma { * // ... provide data here * } * }) - * + * */ - updateMany( - args: SelectSubset>, - ): Prisma.PrismaPromise; + updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one Account. @@ -3123,19 +2308,8 @@ export namespace Prisma { * } * }) */ - upsert( - args: SelectSubset>, - ): Prisma__AccountClient< - $Result.GetResult< - Prisma.$AccountPayload, - T, - "upsert", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; + upsert(args: SelectSubset>): Prisma__AccountClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + /** * Count the number of Accounts. @@ -3149,16 +2323,16 @@ export namespace Prisma { * // ... the filter for the Accounts we want to count * } * }) - **/ + **/ count( args?: Subset, ): Prisma.PrismaPromise< - T extends $Utils.Record<"select", any> - ? T["select"] extends true + T extends $Utils.Record<'select', any> + ? T['select'] extends true ? number - : GetScalarType + : GetScalarType : number - >; + > /** * Allows you to perform aggregations operations on a Account. @@ -3183,10 +2357,8 @@ export namespace Prisma { * }, * take: 10, * }) - **/ - aggregate( - args: Subset, - ): Prisma.PrismaPromise>; + **/ + aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by Account. @@ -3204,76 +2376,70 @@ export namespace Prisma { * _all: true * }, * }) - * - **/ + * + **/ groupBy< T extends AccountGroupByArgs, HasSelectOrTake extends Or< - Extends<"skip", Keys>, - Extends<"take", Keys> + Extends<'skip', Keys>, + Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake - ? { orderBy: AccountGroupByArgs["orderBy"] } - : { orderBy?: AccountGroupByArgs["orderBy"] }, - OrderFields extends ExcludeUnderscoreKeys< - Keys> - >, - ByFields extends MaybeTupleToUnion, + ? { orderBy: AccountGroupByArgs['orderBy'] } + : { orderBy?: AccountGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, ByValid extends Has, - HavingFields extends GetHavingFields, + HavingFields extends GetHavingFields, HavingValid extends Has, - ByEmpty extends T["by"] extends never[] ? True : False, + ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True - ? `Error: "by" must not be empty.` - : HavingValid extends False - ? { - [P in HavingFields]: P extends ByFields + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields ? never - : P extends string - ? `Error: Field "${P}" used in "having" needs to be provided in "by".` - : [ - Error, - "Field ", - P, - ` in "having" needs to be provided in "by"`, - ]; - }[HavingFields] - : "take" extends Keys - ? "orderBy" extends Keys - ? ByValid extends True - ? {} - : { - [P in OrderFields]: P extends ByFields - ? never - : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`; - }[OrderFields] - : 'Error: If you provide "take", you also need to provide "orderBy"' - : "skip" extends Keys - ? "orderBy" extends Keys - ? ByValid extends True - ? {} - : { - [P in OrderFields]: P extends ByFields - ? never - : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`; - }[OrderFields] - : 'Error: If you provide "skip", you also need to provide "orderBy"' - : ByValid extends True - ? {} - : { - [P in OrderFields]: P extends ByFields - ? never - : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`; - }[OrderFields], - >( - args: SubsetIntersection & InputErrors, - ): {} extends InputErrors - ? GetAccountGroupByPayload - : Prisma.PrismaPromise; - /** - * Fields of the Account model - */ - readonly fields: AccountFieldRefs; + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetAccountGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the Account model + */ + readonly fields: AccountFieldRefs; } /** @@ -3282,694 +2448,608 @@ export namespace Prisma { * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ - export interface Prisma__AccountClient< - T, - Null = never, - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - GlobalOmitOptions = {}, - > extends Prisma.PrismaPromise { - readonly [Symbol.toStringTag]: "PrismaPromise"; - user = {}>( - args?: Subset>, - ): Prisma__UserClient< - | $Result.GetResult< - Prisma.$UserPayload, - T, - "findUniqueOrThrow", - GlobalOmitOptions - > - | Null, - Null, - ExtArgs, - GlobalOmitOptions - >; + export interface Prisma__AccountClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + user = {}>(args?: Subset>): Prisma__UserClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ - then( - onfulfilled?: - | ((value: T) => TResult1 | PromiseLike) - | undefined - | null, - onrejected?: - | ((reason: any) => TResult2 | PromiseLike) - | undefined - | null, - ): $Utils.JsPromise; + then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ - catch( - onrejected?: - | ((reason: any) => TResult | PromiseLike) - | undefined - | null, - ): $Utils.JsPromise; + catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ - finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise; + finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } + + + /** * Fields of the Account model */ interface AccountFieldRefs { - readonly id: FieldRef<"Account", "String">; - readonly userId: FieldRef<"Account", "String">; - readonly type: FieldRef<"Account", "String">; - readonly provider: FieldRef<"Account", "String">; - readonly providerAccountId: FieldRef<"Account", "String">; - readonly refresh_token: FieldRef<"Account", "String">; - readonly access_token: FieldRef<"Account", "String">; - readonly expires_at: FieldRef<"Account", "Int">; - readonly token_type: FieldRef<"Account", "String">; - readonly scope: FieldRef<"Account", "String">; - readonly id_token: FieldRef<"Account", "String">; - readonly session_state: FieldRef<"Account", "String">; - readonly refresh_token_expires_in: FieldRef<"Account", "Int">; + readonly id: FieldRef<"Account", 'String'> + readonly userId: FieldRef<"Account", 'String'> + readonly type: FieldRef<"Account", 'String'> + readonly provider: FieldRef<"Account", 'String'> + readonly providerAccountId: FieldRef<"Account", 'String'> + readonly refresh_token: FieldRef<"Account", 'String'> + readonly access_token: FieldRef<"Account", 'String'> + readonly expires_at: FieldRef<"Account", 'Int'> + readonly token_type: FieldRef<"Account", 'String'> + readonly scope: FieldRef<"Account", 'String'> + readonly id_token: FieldRef<"Account", 'String'> + readonly session_state: FieldRef<"Account", 'String'> + readonly refresh_token_expires_in: FieldRef<"Account", 'Int'> } + // Custom InputTypes /** * Account findUnique */ - export type AccountFindUniqueArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type AccountFindUniqueArgs = { /** * Select specific fields to fetch from the Account */ - select?: AccountSelect | null; + select?: AccountSelect | null /** * Omit specific fields from the Account */ - omit?: AccountOmit | null; + omit?: AccountOmit | null /** * Choose, which related nodes to fetch as well */ - include?: AccountInclude | null; + include?: AccountInclude | null /** * Filter, which Account to fetch. */ - where: AccountWhereUniqueInput; - }; + where: AccountWhereUniqueInput + } /** * Account findUniqueOrThrow */ - export type AccountFindUniqueOrThrowArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type AccountFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the Account */ - select?: AccountSelect | null; + select?: AccountSelect | null /** * Omit specific fields from the Account */ - omit?: AccountOmit | null; + omit?: AccountOmit | null /** * Choose, which related nodes to fetch as well */ - include?: AccountInclude | null; + include?: AccountInclude | null /** * Filter, which Account to fetch. */ - where: AccountWhereUniqueInput; - }; + where: AccountWhereUniqueInput + } /** * Account findFirst */ - export type AccountFindFirstArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type AccountFindFirstArgs = { /** * Select specific fields to fetch from the Account */ - select?: AccountSelect | null; + select?: AccountSelect | null /** * Omit specific fields from the Account */ - omit?: AccountOmit | null; + omit?: AccountOmit | null /** * Choose, which related nodes to fetch as well */ - include?: AccountInclude | null; + include?: AccountInclude | null /** * Filter, which Account to fetch. */ - where?: AccountWhereInput; + where?: AccountWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * + * * Determine the order of Accounts to fetch. */ - orderBy?: - | AccountOrderByWithRelationInput - | AccountOrderByWithRelationInput[]; + orderBy?: AccountOrderByWithRelationInput | AccountOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * + * * Sets the position for searching for Accounts. */ - cursor?: AccountWhereUniqueInput; + cursor?: AccountWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Take `±n` Accounts from the position of the cursor. */ - take?: number; + take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Skip the first `n` Accounts. */ - skip?: number; + skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} - * + * * Filter by unique combinations of Accounts. */ - distinct?: AccountScalarFieldEnum | AccountScalarFieldEnum[]; - }; + distinct?: AccountScalarFieldEnum | AccountScalarFieldEnum[] + } /** * Account findFirstOrThrow */ - export type AccountFindFirstOrThrowArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type AccountFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the Account */ - select?: AccountSelect | null; + select?: AccountSelect | null /** * Omit specific fields from the Account */ - omit?: AccountOmit | null; + omit?: AccountOmit | null /** * Choose, which related nodes to fetch as well */ - include?: AccountInclude | null; + include?: AccountInclude | null /** * Filter, which Account to fetch. */ - where?: AccountWhereInput; + where?: AccountWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * + * * Determine the order of Accounts to fetch. */ - orderBy?: - | AccountOrderByWithRelationInput - | AccountOrderByWithRelationInput[]; + orderBy?: AccountOrderByWithRelationInput | AccountOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * + * * Sets the position for searching for Accounts. */ - cursor?: AccountWhereUniqueInput; + cursor?: AccountWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Take `±n` Accounts from the position of the cursor. */ - take?: number; + take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Skip the first `n` Accounts. */ - skip?: number; + skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} - * + * * Filter by unique combinations of Accounts. */ - distinct?: AccountScalarFieldEnum | AccountScalarFieldEnum[]; - }; + distinct?: AccountScalarFieldEnum | AccountScalarFieldEnum[] + } /** * Account findMany */ - export type AccountFindManyArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type AccountFindManyArgs = { /** * Select specific fields to fetch from the Account */ - select?: AccountSelect | null; + select?: AccountSelect | null /** * Omit specific fields from the Account */ - omit?: AccountOmit | null; + omit?: AccountOmit | null /** * Choose, which related nodes to fetch as well */ - include?: AccountInclude | null; + include?: AccountInclude | null /** * Filter, which Accounts to fetch. */ - where?: AccountWhereInput; + where?: AccountWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * + * * Determine the order of Accounts to fetch. */ - orderBy?: - | AccountOrderByWithRelationInput - | AccountOrderByWithRelationInput[]; + orderBy?: AccountOrderByWithRelationInput | AccountOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * + * * Sets the position for listing Accounts. */ - cursor?: AccountWhereUniqueInput; + cursor?: AccountWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Take `±n` Accounts from the position of the cursor. */ - take?: number; + take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Skip the first `n` Accounts. */ - skip?: number; - distinct?: AccountScalarFieldEnum | AccountScalarFieldEnum[]; - }; + skip?: number + distinct?: AccountScalarFieldEnum | AccountScalarFieldEnum[] + } /** * Account create */ - export type AccountCreateArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type AccountCreateArgs = { /** * Select specific fields to fetch from the Account */ - select?: AccountSelect | null; + select?: AccountSelect | null /** * Omit specific fields from the Account */ - omit?: AccountOmit | null; + omit?: AccountOmit | null /** * Choose, which related nodes to fetch as well */ - include?: AccountInclude | null; + include?: AccountInclude | null /** * The data needed to create a Account. */ - data: XOR; - }; + data: XOR + } /** * Account createMany */ - export type AccountCreateManyArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type AccountCreateManyArgs = { /** * The data used to create many Accounts. */ - data: AccountCreateManyInput | AccountCreateManyInput[]; - skipDuplicates?: boolean; - }; + data: AccountCreateManyInput | AccountCreateManyInput[] + skipDuplicates?: boolean + } /** * Account update */ - export type AccountUpdateArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type AccountUpdateArgs = { /** * Select specific fields to fetch from the Account */ - select?: AccountSelect | null; + select?: AccountSelect | null /** * Omit specific fields from the Account */ - omit?: AccountOmit | null; + omit?: AccountOmit | null /** * Choose, which related nodes to fetch as well */ - include?: AccountInclude | null; + include?: AccountInclude | null /** * The data needed to update a Account. */ - data: XOR; + data: XOR /** * Choose, which Account to update. */ - where: AccountWhereUniqueInput; - }; + where: AccountWhereUniqueInput + } /** * Account updateMany */ - export type AccountUpdateManyArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type AccountUpdateManyArgs = { /** * The data used to update Accounts. */ - data: XOR; + data: XOR /** * Filter which Accounts to update */ - where?: AccountWhereInput; + where?: AccountWhereInput /** * Limit how many Accounts to update. */ - limit?: number; - }; + limit?: number + } /** * Account upsert */ - export type AccountUpsertArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type AccountUpsertArgs = { /** * Select specific fields to fetch from the Account */ - select?: AccountSelect | null; + select?: AccountSelect | null /** * Omit specific fields from the Account */ - omit?: AccountOmit | null; + omit?: AccountOmit | null /** * Choose, which related nodes to fetch as well */ - include?: AccountInclude | null; + include?: AccountInclude | null /** * The filter to search for the Account to update in case it exists. */ - where: AccountWhereUniqueInput; + where: AccountWhereUniqueInput /** * In case the Account found by the `where` argument doesn't exist, create a new Account with this data. */ - create: XOR; + create: XOR /** * In case the Account was found with the provided `where` argument, update it with this data. */ - update: XOR; - }; + update: XOR + } /** * Account delete */ - export type AccountDeleteArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type AccountDeleteArgs = { /** * Select specific fields to fetch from the Account */ - select?: AccountSelect | null; + select?: AccountSelect | null /** * Omit specific fields from the Account */ - omit?: AccountOmit | null; + omit?: AccountOmit | null /** * Choose, which related nodes to fetch as well */ - include?: AccountInclude | null; + include?: AccountInclude | null /** * Filter which Account to delete. */ - where: AccountWhereUniqueInput; - }; + where: AccountWhereUniqueInput + } /** * Account deleteMany */ - export type AccountDeleteManyArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type AccountDeleteManyArgs = { /** * Filter which Accounts to delete */ - where?: AccountWhereInput; + where?: AccountWhereInput /** * Limit how many Accounts to delete. */ - limit?: number; - }; + limit?: number + } /** * Account without action */ - export type AccountDefaultArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type AccountDefaultArgs = { /** * Select specific fields to fetch from the Account */ - select?: AccountSelect | null; + select?: AccountSelect | null /** * Omit specific fields from the Account */ - omit?: AccountOmit | null; + omit?: AccountOmit | null /** * Choose, which related nodes to fetch as well */ - include?: AccountInclude | null; - }; + include?: AccountInclude | null + } + /** * Model Session */ export type AggregateSession = { - _count: SessionCountAggregateOutputType | null; - _min: SessionMinAggregateOutputType | null; - _max: SessionMaxAggregateOutputType | null; - }; + _count: SessionCountAggregateOutputType | null + _min: SessionMinAggregateOutputType | null + _max: SessionMaxAggregateOutputType | null + } export type SessionMinAggregateOutputType = { - id: string | null; - sessionToken: string | null; - userId: string | null; - expires: Date | null; - }; + id: string | null + sessionToken: string | null + userId: string | null + expires: Date | null + } export type SessionMaxAggregateOutputType = { - id: string | null; - sessionToken: string | null; - userId: string | null; - expires: Date | null; - }; + id: string | null + sessionToken: string | null + userId: string | null + expires: Date | null + } export type SessionCountAggregateOutputType = { - id: number; - sessionToken: number; - userId: number; - expires: number; - _all: number; - }; + id: number + sessionToken: number + userId: number + expires: number + _all: number + } + export type SessionMinAggregateInputType = { - id?: true; - sessionToken?: true; - userId?: true; - expires?: true; - }; + id?: true + sessionToken?: true + userId?: true + expires?: true + } export type SessionMaxAggregateInputType = { - id?: true; - sessionToken?: true; - userId?: true; - expires?: true; - }; + id?: true + sessionToken?: true + userId?: true + expires?: true + } export type SessionCountAggregateInputType = { - id?: true; - sessionToken?: true; - userId?: true; - expires?: true; - _all?: true; - }; + id?: true + sessionToken?: true + userId?: true + expires?: true + _all?: true + } - export type SessionAggregateArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type SessionAggregateArgs = { /** * Filter which Session to aggregate. */ - where?: SessionWhereInput; + where?: SessionWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * + * * Determine the order of Sessions to fetch. */ - orderBy?: - | SessionOrderByWithRelationInput - | SessionOrderByWithRelationInput[]; + orderBy?: SessionOrderByWithRelationInput | SessionOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * + * * Sets the start position */ - cursor?: SessionWhereUniqueInput; + cursor?: SessionWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Take `±n` Sessions from the position of the cursor. */ - take?: number; + take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Skip the first `n` Sessions. */ - skip?: number; + skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * + * * Count returned Sessions - **/ - _count?: true | SessionCountAggregateInputType; + **/ + _count?: true | SessionCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * + * * Select which fields to find the minimum value - **/ - _min?: SessionMinAggregateInputType; + **/ + _min?: SessionMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * + * * Select which fields to find the maximum value - **/ - _max?: SessionMaxAggregateInputType; - }; + **/ + _max?: SessionMaxAggregateInputType + } export type GetSessionAggregateType = { - [P in keyof T & keyof AggregateSession]: P extends "_count" | "count" + [P in keyof T & keyof AggregateSession]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType - : GetScalarType; - }; + : GetScalarType + } - export type SessionGroupByArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - where?: SessionWhereInput; - orderBy?: - | SessionOrderByWithAggregationInput - | SessionOrderByWithAggregationInput[]; - by: SessionScalarFieldEnum[] | SessionScalarFieldEnum; - having?: SessionScalarWhereWithAggregatesInput; - take?: number; - skip?: number; - _count?: SessionCountAggregateInputType | true; - _min?: SessionMinAggregateInputType; - _max?: SessionMaxAggregateInputType; - }; + + + + export type SessionGroupByArgs = { + where?: SessionWhereInput + orderBy?: SessionOrderByWithAggregationInput | SessionOrderByWithAggregationInput[] + by: SessionScalarFieldEnum[] | SessionScalarFieldEnum + having?: SessionScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: SessionCountAggregateInputType | true + _min?: SessionMinAggregateInputType + _max?: SessionMaxAggregateInputType + } export type SessionGroupByOutputType = { - id: string; - sessionToken: string; - userId: string; - expires: Date; - _count: SessionCountAggregateOutputType | null; - _min: SessionMinAggregateOutputType | null; - _max: SessionMaxAggregateOutputType | null; - }; + id: string + sessionToken: string + userId: string + expires: Date + _count: SessionCountAggregateOutputType | null + _min: SessionMinAggregateOutputType | null + _max: SessionMaxAggregateOutputType | null + } - type GetSessionGroupByPayload = - Prisma.PrismaPromise< - Array< - PickEnumerable & { - [P in keyof T & keyof SessionGroupByOutputType]: P extends "_count" + type GetSessionGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof SessionGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : GetScalarType - : GetScalarType; + : GetScalarType } > - >; + > + + + export type SessionSelect = $Extensions.GetSelect<{ + id?: boolean + sessionToken?: boolean + userId?: boolean + expires?: boolean + user?: boolean | UserDefaultArgs + }, ExtArgs["result"]["session"]> + - export type SessionSelect< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = $Extensions.GetSelect< - { - id?: boolean; - sessionToken?: boolean; - userId?: boolean; - expires?: boolean; - user?: boolean | UserDefaultArgs; - }, - ExtArgs["result"]["session"] - >; export type SessionSelectScalar = { - id?: boolean; - sessionToken?: boolean; - userId?: boolean; - expires?: boolean; - }; + id?: boolean + sessionToken?: boolean + userId?: boolean + expires?: boolean + } - export type SessionOmit< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = $Extensions.GetOmit< - "id" | "sessionToken" | "userId" | "expires", - ExtArgs["result"]["session"] - >; - export type SessionInclude< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - user?: boolean | UserDefaultArgs; - }; + export type SessionOmit = $Extensions.GetOmit<"id" | "sessionToken" | "userId" | "expires", ExtArgs["result"]["session"]> + export type SessionInclude = { + user?: boolean | UserDefaultArgs + } - export type $SessionPayload< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - name: "Session"; + export type $SessionPayload = { + name: "Session" objects: { - user: Prisma.$UserPayload; - }; - scalars: $Extensions.GetPayloadResult< - { - id: string; - sessionToken: string; - userId: string; - expires: Date; - }, - ExtArgs["result"]["session"] - >; - composites: {}; - }; + user: Prisma.$UserPayload + } + scalars: $Extensions.GetPayloadResult<{ + id: string + sessionToken: string + userId: string + expires: Date + }, ExtArgs["result"]["session"]> + composites: {} + } - type SessionGetPayload< - S extends boolean | null | undefined | SessionDefaultArgs, - > = $Result.GetResult; + type SessionGetPayload = $Result.GetResult - type SessionCountArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = Omit & { - select?: SessionCountAggregateInputType | true; - }; + type SessionCountArgs = + Omit & { + select?: SessionCountAggregateInputType | true + } - export interface SessionDelegate< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - GlobalOmitOptions = {}, - > { - [K: symbol]: { - types: Prisma.TypeMap["model"]["Session"]; - meta: { name: "Session" }; - }; + export interface SessionDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['Session'], meta: { name: 'Session' } } /** * Find zero or one Session that matches the filter. * @param {SessionFindUniqueArgs} args - Arguments to find a Session @@ -3981,19 +3061,7 @@ export namespace Prisma { * } * }) */ - findUnique( - args: SelectSubset>, - ): Prisma__SessionClient< - $Result.GetResult< - Prisma.$SessionPayload, - T, - "findUnique", - GlobalOmitOptions - > | null, - null, - ExtArgs, - GlobalOmitOptions - >; + findUnique(args: SelectSubset>): Prisma__SessionClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> /** * Find one Session that matches the filter or throw an error with `error.code='P2025'` @@ -4007,19 +3075,7 @@ export namespace Prisma { * } * }) */ - findUniqueOrThrow( - args: SelectSubset>, - ): Prisma__SessionClient< - $Result.GetResult< - Prisma.$SessionPayload, - T, - "findUniqueOrThrow", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; + findUniqueOrThrow(args: SelectSubset>): Prisma__SessionClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> /** * Find the first Session that matches the filter. @@ -4034,19 +3090,7 @@ export namespace Prisma { * } * }) */ - findFirst( - args?: SelectSubset>, - ): Prisma__SessionClient< - $Result.GetResult< - Prisma.$SessionPayload, - T, - "findFirst", - GlobalOmitOptions - > | null, - null, - ExtArgs, - GlobalOmitOptions - >; + findFirst(args?: SelectSubset>): Prisma__SessionClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> /** * Find the first Session that matches the filter or @@ -4062,19 +3106,7 @@ export namespace Prisma { * } * }) */ - findFirstOrThrow( - args?: SelectSubset>, - ): Prisma__SessionClient< - $Result.GetResult< - Prisma.$SessionPayload, - T, - "findFirstOrThrow", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; + findFirstOrThrow(args?: SelectSubset>): Prisma__SessionClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> /** * Find zero or more Sessions that matches the filter. @@ -4084,24 +3116,15 @@ export namespace Prisma { * @example * // Get all Sessions * const sessions = await prisma.session.findMany() - * + * * // Get first 10 Sessions * const sessions = await prisma.session.findMany({ take: 10 }) - * + * * // Only select the `id` * const sessionWithIdOnly = await prisma.session.findMany({ select: { id: true } }) - * + * */ - findMany( - args?: SelectSubset>, - ): Prisma.PrismaPromise< - $Result.GetResult< - Prisma.$SessionPayload, - T, - "findMany", - GlobalOmitOptions - > - >; + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> /** * Create a Session. @@ -4113,21 +3136,9 @@ export namespace Prisma { * // ... data to create a Session * } * }) - * + * */ - create( - args: SelectSubset>, - ): Prisma__SessionClient< - $Result.GetResult< - Prisma.$SessionPayload, - T, - "create", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; + create(args: SelectSubset>): Prisma__SessionClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> /** * Create many Sessions. @@ -4139,11 +3150,9 @@ export namespace Prisma { * // ... provide data here * ] * }) - * + * */ - createMany( - args?: SelectSubset>, - ): Prisma.PrismaPromise; + createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Delete a Session. @@ -4155,21 +3164,9 @@ export namespace Prisma { * // ... filter to delete one Session * } * }) - * + * */ - delete( - args: SelectSubset>, - ): Prisma__SessionClient< - $Result.GetResult< - Prisma.$SessionPayload, - T, - "delete", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; + delete(args: SelectSubset>): Prisma__SessionClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> /** * Update one Session. @@ -4184,21 +3181,9 @@ export namespace Prisma { * // ... provide data here * } * }) - * + * */ - update( - args: SelectSubset>, - ): Prisma__SessionClient< - $Result.GetResult< - Prisma.$SessionPayload, - T, - "update", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; + update(args: SelectSubset>): Prisma__SessionClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> /** * Delete zero or more Sessions. @@ -4210,11 +3195,9 @@ export namespace Prisma { * // ... provide filter here * } * }) - * + * */ - deleteMany( - args?: SelectSubset>, - ): Prisma.PrismaPromise; + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more Sessions. @@ -4231,11 +3214,9 @@ export namespace Prisma { * // ... provide data here * } * }) - * + * */ - updateMany( - args: SelectSubset>, - ): Prisma.PrismaPromise; + updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one Session. @@ -4254,19 +3235,8 @@ export namespace Prisma { * } * }) */ - upsert( - args: SelectSubset>, - ): Prisma__SessionClient< - $Result.GetResult< - Prisma.$SessionPayload, - T, - "upsert", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; + upsert(args: SelectSubset>): Prisma__SessionClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + /** * Count the number of Sessions. @@ -4280,16 +3250,16 @@ export namespace Prisma { * // ... the filter for the Sessions we want to count * } * }) - **/ + **/ count( args?: Subset, ): Prisma.PrismaPromise< - T extends $Utils.Record<"select", any> - ? T["select"] extends true + T extends $Utils.Record<'select', any> + ? T['select'] extends true ? number - : GetScalarType + : GetScalarType : number - >; + > /** * Allows you to perform aggregations operations on a Session. @@ -4314,10 +3284,8 @@ export namespace Prisma { * }, * take: 10, * }) - **/ - aggregate( - args: Subset, - ): Prisma.PrismaPromise>; + **/ + aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by Session. @@ -4335,76 +3303,70 @@ export namespace Prisma { * _all: true * }, * }) - * - **/ + * + **/ groupBy< T extends SessionGroupByArgs, HasSelectOrTake extends Or< - Extends<"skip", Keys>, - Extends<"take", Keys> + Extends<'skip', Keys>, + Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake - ? { orderBy: SessionGroupByArgs["orderBy"] } - : { orderBy?: SessionGroupByArgs["orderBy"] }, - OrderFields extends ExcludeUnderscoreKeys< - Keys> - >, - ByFields extends MaybeTupleToUnion, + ? { orderBy: SessionGroupByArgs['orderBy'] } + : { orderBy?: SessionGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, ByValid extends Has, - HavingFields extends GetHavingFields, + HavingFields extends GetHavingFields, HavingValid extends Has, - ByEmpty extends T["by"] extends never[] ? True : False, + ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True - ? `Error: "by" must not be empty.` - : HavingValid extends False - ? { - [P in HavingFields]: P extends ByFields + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields ? never - : P extends string - ? `Error: Field "${P}" used in "having" needs to be provided in "by".` - : [ - Error, - "Field ", - P, - ` in "having" needs to be provided in "by"`, - ]; - }[HavingFields] - : "take" extends Keys - ? "orderBy" extends Keys - ? ByValid extends True - ? {} - : { - [P in OrderFields]: P extends ByFields - ? never - : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`; - }[OrderFields] - : 'Error: If you provide "take", you also need to provide "orderBy"' - : "skip" extends Keys - ? "orderBy" extends Keys - ? ByValid extends True - ? {} - : { - [P in OrderFields]: P extends ByFields - ? never - : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`; - }[OrderFields] - : 'Error: If you provide "skip", you also need to provide "orderBy"' - : ByValid extends True - ? {} - : { - [P in OrderFields]: P extends ByFields - ? never - : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`; - }[OrderFields], - >( - args: SubsetIntersection & InputErrors, - ): {} extends InputErrors - ? GetSessionGroupByPayload - : Prisma.PrismaPromise; - /** - * Fields of the Session model - */ - readonly fields: SessionFieldRefs; + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetSessionGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the Session model + */ + readonly fields: SessionFieldRefs; } /** @@ -4413,699 +3375,667 @@ export namespace Prisma { * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ - export interface Prisma__SessionClient< - T, - Null = never, - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - GlobalOmitOptions = {}, - > extends Prisma.PrismaPromise { - readonly [Symbol.toStringTag]: "PrismaPromise"; - user = {}>( - args?: Subset>, - ): Prisma__UserClient< - | $Result.GetResult< - Prisma.$UserPayload, - T, - "findUniqueOrThrow", - GlobalOmitOptions - > - | Null, - Null, - ExtArgs, - GlobalOmitOptions - >; + export interface Prisma__SessionClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + user = {}>(args?: Subset>): Prisma__UserClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ - then( - onfulfilled?: - | ((value: T) => TResult1 | PromiseLike) - | undefined - | null, - onrejected?: - | ((reason: any) => TResult2 | PromiseLike) - | undefined - | null, - ): $Utils.JsPromise; + then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ - catch( - onrejected?: - | ((reason: any) => TResult | PromiseLike) - | undefined - | null, - ): $Utils.JsPromise; + catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ - finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise; + finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } + + + /** * Fields of the Session model */ interface SessionFieldRefs { - readonly id: FieldRef<"Session", "String">; - readonly sessionToken: FieldRef<"Session", "String">; - readonly userId: FieldRef<"Session", "String">; - readonly expires: FieldRef<"Session", "DateTime">; + readonly id: FieldRef<"Session", 'String'> + readonly sessionToken: FieldRef<"Session", 'String'> + readonly userId: FieldRef<"Session", 'String'> + readonly expires: FieldRef<"Session", 'DateTime'> } + // Custom InputTypes /** * Session findUnique */ - export type SessionFindUniqueArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type SessionFindUniqueArgs = { /** * Select specific fields to fetch from the Session */ - select?: SessionSelect | null; + select?: SessionSelect | null /** * Omit specific fields from the Session */ - omit?: SessionOmit | null; + omit?: SessionOmit | null /** * Choose, which related nodes to fetch as well */ - include?: SessionInclude | null; + include?: SessionInclude | null /** * Filter, which Session to fetch. */ - where: SessionWhereUniqueInput; - }; + where: SessionWhereUniqueInput + } /** * Session findUniqueOrThrow */ - export type SessionFindUniqueOrThrowArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type SessionFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the Session */ - select?: SessionSelect | null; + select?: SessionSelect | null /** * Omit specific fields from the Session */ - omit?: SessionOmit | null; + omit?: SessionOmit | null /** * Choose, which related nodes to fetch as well */ - include?: SessionInclude | null; + include?: SessionInclude | null /** * Filter, which Session to fetch. */ - where: SessionWhereUniqueInput; - }; + where: SessionWhereUniqueInput + } /** * Session findFirst */ - export type SessionFindFirstArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type SessionFindFirstArgs = { /** * Select specific fields to fetch from the Session */ - select?: SessionSelect | null; + select?: SessionSelect | null /** * Omit specific fields from the Session */ - omit?: SessionOmit | null; + omit?: SessionOmit | null /** * Choose, which related nodes to fetch as well */ - include?: SessionInclude | null; + include?: SessionInclude | null /** * Filter, which Session to fetch. */ - where?: SessionWhereInput; + where?: SessionWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * + * * Determine the order of Sessions to fetch. */ - orderBy?: - | SessionOrderByWithRelationInput - | SessionOrderByWithRelationInput[]; + orderBy?: SessionOrderByWithRelationInput | SessionOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * + * * Sets the position for searching for Sessions. */ - cursor?: SessionWhereUniqueInput; + cursor?: SessionWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Take `±n` Sessions from the position of the cursor. */ - take?: number; + take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Skip the first `n` Sessions. */ - skip?: number; + skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} - * + * * Filter by unique combinations of Sessions. */ - distinct?: SessionScalarFieldEnum | SessionScalarFieldEnum[]; - }; + distinct?: SessionScalarFieldEnum | SessionScalarFieldEnum[] + } /** * Session findFirstOrThrow */ - export type SessionFindFirstOrThrowArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type SessionFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the Session */ - select?: SessionSelect | null; + select?: SessionSelect | null /** * Omit specific fields from the Session */ - omit?: SessionOmit | null; + omit?: SessionOmit | null /** * Choose, which related nodes to fetch as well */ - include?: SessionInclude | null; + include?: SessionInclude | null /** * Filter, which Session to fetch. */ - where?: SessionWhereInput; + where?: SessionWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * + * * Determine the order of Sessions to fetch. */ - orderBy?: - | SessionOrderByWithRelationInput - | SessionOrderByWithRelationInput[]; + orderBy?: SessionOrderByWithRelationInput | SessionOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * + * * Sets the position for searching for Sessions. */ - cursor?: SessionWhereUniqueInput; + cursor?: SessionWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Take `±n` Sessions from the position of the cursor. */ - take?: number; + take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Skip the first `n` Sessions. */ - skip?: number; + skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} - * + * * Filter by unique combinations of Sessions. */ - distinct?: SessionScalarFieldEnum | SessionScalarFieldEnum[]; - }; + distinct?: SessionScalarFieldEnum | SessionScalarFieldEnum[] + } /** * Session findMany */ - export type SessionFindManyArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type SessionFindManyArgs = { /** * Select specific fields to fetch from the Session */ - select?: SessionSelect | null; + select?: SessionSelect | null /** * Omit specific fields from the Session */ - omit?: SessionOmit | null; + omit?: SessionOmit | null /** * Choose, which related nodes to fetch as well */ - include?: SessionInclude | null; + include?: SessionInclude | null /** * Filter, which Sessions to fetch. */ - where?: SessionWhereInput; + where?: SessionWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * + * * Determine the order of Sessions to fetch. */ - orderBy?: - | SessionOrderByWithRelationInput - | SessionOrderByWithRelationInput[]; + orderBy?: SessionOrderByWithRelationInput | SessionOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * + * * Sets the position for listing Sessions. */ - cursor?: SessionWhereUniqueInput; + cursor?: SessionWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Take `±n` Sessions from the position of the cursor. */ - take?: number; + take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Skip the first `n` Sessions. */ - skip?: number; - distinct?: SessionScalarFieldEnum | SessionScalarFieldEnum[]; - }; + skip?: number + distinct?: SessionScalarFieldEnum | SessionScalarFieldEnum[] + } /** * Session create */ - export type SessionCreateArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type SessionCreateArgs = { /** * Select specific fields to fetch from the Session */ - select?: SessionSelect | null; + select?: SessionSelect | null /** * Omit specific fields from the Session */ - omit?: SessionOmit | null; + omit?: SessionOmit | null /** * Choose, which related nodes to fetch as well */ - include?: SessionInclude | null; + include?: SessionInclude | null /** * The data needed to create a Session. */ - data: XOR; - }; + data: XOR + } /** * Session createMany */ - export type SessionCreateManyArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type SessionCreateManyArgs = { /** * The data used to create many Sessions. */ - data: SessionCreateManyInput | SessionCreateManyInput[]; - skipDuplicates?: boolean; - }; + data: SessionCreateManyInput | SessionCreateManyInput[] + skipDuplicates?: boolean + } /** * Session update */ - export type SessionUpdateArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type SessionUpdateArgs = { /** * Select specific fields to fetch from the Session */ - select?: SessionSelect | null; + select?: SessionSelect | null /** * Omit specific fields from the Session */ - omit?: SessionOmit | null; + omit?: SessionOmit | null /** * Choose, which related nodes to fetch as well */ - include?: SessionInclude | null; + include?: SessionInclude | null /** * The data needed to update a Session. */ - data: XOR; + data: XOR /** * Choose, which Session to update. */ - where: SessionWhereUniqueInput; - }; + where: SessionWhereUniqueInput + } /** * Session updateMany */ - export type SessionUpdateManyArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type SessionUpdateManyArgs = { /** * The data used to update Sessions. */ - data: XOR; + data: XOR /** * Filter which Sessions to update */ - where?: SessionWhereInput; + where?: SessionWhereInput /** * Limit how many Sessions to update. */ - limit?: number; - }; + limit?: number + } /** * Session upsert */ - export type SessionUpsertArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type SessionUpsertArgs = { /** * Select specific fields to fetch from the Session */ - select?: SessionSelect | null; + select?: SessionSelect | null /** * Omit specific fields from the Session */ - omit?: SessionOmit | null; + omit?: SessionOmit | null /** * Choose, which related nodes to fetch as well */ - include?: SessionInclude | null; + include?: SessionInclude | null /** * The filter to search for the Session to update in case it exists. */ - where: SessionWhereUniqueInput; + where: SessionWhereUniqueInput /** * In case the Session found by the `where` argument doesn't exist, create a new Session with this data. */ - create: XOR; + create: XOR /** * In case the Session was found with the provided `where` argument, update it with this data. */ - update: XOR; - }; + update: XOR + } /** * Session delete */ - export type SessionDeleteArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type SessionDeleteArgs = { /** * Select specific fields to fetch from the Session */ - select?: SessionSelect | null; + select?: SessionSelect | null /** * Omit specific fields from the Session */ - omit?: SessionOmit | null; + omit?: SessionOmit | null /** * Choose, which related nodes to fetch as well */ - include?: SessionInclude | null; + include?: SessionInclude | null /** * Filter which Session to delete. */ - where: SessionWhereUniqueInput; - }; + where: SessionWhereUniqueInput + } /** * Session deleteMany */ - export type SessionDeleteManyArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type SessionDeleteManyArgs = { /** * Filter which Sessions to delete */ - where?: SessionWhereInput; + where?: SessionWhereInput /** * Limit how many Sessions to delete. */ - limit?: number; - }; + limit?: number + } /** * Session without action */ - export type SessionDefaultArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type SessionDefaultArgs = { /** * Select specific fields to fetch from the Session */ - select?: SessionSelect | null; + select?: SessionSelect | null /** * Omit specific fields from the Session */ - omit?: SessionOmit | null; + omit?: SessionOmit | null /** * Choose, which related nodes to fetch as well */ - include?: SessionInclude | null; - }; + include?: SessionInclude | null + } + /** * Model User */ export type AggregateUser = { - _count: UserCountAggregateOutputType | null; - _min: UserMinAggregateOutputType | null; - _max: UserMaxAggregateOutputType | null; - }; + _count: UserCountAggregateOutputType | null + _avg: UserAvgAggregateOutputType | null + _sum: UserSumAggregateOutputType | null + _min: UserMinAggregateOutputType | null + _max: UserMaxAggregateOutputType | null + } + + export type UserAvgAggregateOutputType = { + balance: number | null + } + + export type UserSumAggregateOutputType = { + balance: number | null + } export type UserMinAggregateOutputType = { - id: string | null; - name: string | null; - email: string | null; - emailVerified: Date | null; - image: string | null; - }; + id: string | null + name: string | null + email: string | null + emailVerified: Date | null + image: string | null + balance: number | null + } export type UserMaxAggregateOutputType = { - id: string | null; - name: string | null; - email: string | null; - emailVerified: Date | null; - image: string | null; - }; + id: string | null + name: string | null + email: string | null + emailVerified: Date | null + image: string | null + balance: number | null + } export type UserCountAggregateOutputType = { - id: number; - name: number; - email: number; - emailVerified: number; - image: number; - _all: number; - }; + id: number + name: number + email: number + emailVerified: number + image: number + balance: number + _all: number + } + + + export type UserAvgAggregateInputType = { + balance?: true + } + + export type UserSumAggregateInputType = { + balance?: true + } export type UserMinAggregateInputType = { - id?: true; - name?: true; - email?: true; - emailVerified?: true; - image?: true; - }; + id?: true + name?: true + email?: true + emailVerified?: true + image?: true + balance?: true + } export type UserMaxAggregateInputType = { - id?: true; - name?: true; - email?: true; - emailVerified?: true; - image?: true; - }; + id?: true + name?: true + email?: true + emailVerified?: true + image?: true + balance?: true + } export type UserCountAggregateInputType = { - id?: true; - name?: true; - email?: true; - emailVerified?: true; - image?: true; - _all?: true; - }; + id?: true + name?: true + email?: true + emailVerified?: true + image?: true + balance?: true + _all?: true + } - export type UserAggregateArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type UserAggregateArgs = { /** * Filter which User to aggregate. */ - where?: UserWhereInput; + where?: UserWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * + * * Determine the order of Users to fetch. */ - orderBy?: UserOrderByWithRelationInput | UserOrderByWithRelationInput[]; + orderBy?: UserOrderByWithRelationInput | UserOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * + * * Sets the start position */ - cursor?: UserWhereUniqueInput; + cursor?: UserWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Take `±n` Users from the position of the cursor. */ - take?: number; + take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Skip the first `n` Users. */ - skip?: number; + skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * + * * Count returned Users - **/ - _count?: true | UserCountAggregateInputType; + **/ + _count?: true | UserCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * + * + * Select which fields to average + **/ + _avg?: UserAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: UserSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * * Select which fields to find the minimum value - **/ - _min?: UserMinAggregateInputType; + **/ + _min?: UserMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * + * * Select which fields to find the maximum value - **/ - _max?: UserMaxAggregateInputType; - }; + **/ + _max?: UserMaxAggregateInputType + } export type GetUserAggregateType = { - [P in keyof T & keyof AggregateUser]: P extends "_count" | "count" + [P in keyof T & keyof AggregateUser]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType - : GetScalarType; - }; + : GetScalarType + } - export type UserGroupByArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - where?: UserWhereInput; - orderBy?: - | UserOrderByWithAggregationInput - | UserOrderByWithAggregationInput[]; - by: UserScalarFieldEnum[] | UserScalarFieldEnum; - having?: UserScalarWhereWithAggregatesInput; - take?: number; - skip?: number; - _count?: UserCountAggregateInputType | true; - _min?: UserMinAggregateInputType; - _max?: UserMaxAggregateInputType; - }; + + + + export type UserGroupByArgs = { + where?: UserWhereInput + orderBy?: UserOrderByWithAggregationInput | UserOrderByWithAggregationInput[] + by: UserScalarFieldEnum[] | UserScalarFieldEnum + having?: UserScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: UserCountAggregateInputType | true + _avg?: UserAvgAggregateInputType + _sum?: UserSumAggregateInputType + _min?: UserMinAggregateInputType + _max?: UserMaxAggregateInputType + } export type UserGroupByOutputType = { - id: string; - name: string | null; - email: string | null; - emailVerified: Date | null; - image: string | null; - _count: UserCountAggregateOutputType | null; - _min: UserMinAggregateOutputType | null; - _max: UserMaxAggregateOutputType | null; - }; + id: string + name: string | null + email: string | null + emailVerified: Date | null + image: string | null + balance: number + _count: UserCountAggregateOutputType | null + _avg: UserAvgAggregateOutputType | null + _sum: UserSumAggregateOutputType | null + _min: UserMinAggregateOutputType | null + _max: UserMaxAggregateOutputType | null + } type GetUserGroupByPayload = Prisma.PrismaPromise< Array< - PickEnumerable & { - [P in keyof T & keyof UserGroupByOutputType]: P extends "_count" - ? T[P] extends boolean - ? number + PickEnumerable & + { + [P in ((keyof T) & (keyof UserGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType : GetScalarType - : GetScalarType; - } + } + > > - >; - export type UserSelect< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = $Extensions.GetSelect< - { - id?: boolean; - name?: boolean; - email?: boolean; - emailVerified?: boolean; - image?: boolean; - accounts?: boolean | User$accountsArgs; - sessions?: boolean | User$sessionsArgs; - posts?: boolean | User$postsArgs; - _count?: boolean | UserCountOutputTypeDefaultArgs; - }, - ExtArgs["result"]["user"] - >; + + export type UserSelect = $Extensions.GetSelect<{ + id?: boolean + name?: boolean + email?: boolean + emailVerified?: boolean + image?: boolean + balance?: boolean + accounts?: boolean | User$accountsArgs + sessions?: boolean | User$sessionsArgs + shops?: boolean | User$shopsArgs + carts?: boolean | User$cartsArgs + adresses?: boolean | User$adressesArgs + _count?: boolean | UserCountOutputTypeDefaultArgs + }, ExtArgs["result"]["user"]> + + export type UserSelectScalar = { - id?: boolean; - name?: boolean; - email?: boolean; - emailVerified?: boolean; - image?: boolean; - }; + id?: boolean + name?: boolean + email?: boolean + emailVerified?: boolean + image?: boolean + balance?: boolean + } - export type UserOmit< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = $Extensions.GetOmit< - "id" | "name" | "email" | "emailVerified" | "image", - ExtArgs["result"]["user"] - >; - export type UserInclude< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - accounts?: boolean | User$accountsArgs; - sessions?: boolean | User$sessionsArgs; - posts?: boolean | User$postsArgs; - _count?: boolean | UserCountOutputTypeDefaultArgs; - }; + export type UserOmit = $Extensions.GetOmit<"id" | "name" | "email" | "emailVerified" | "image" | "balance", ExtArgs["result"]["user"]> + export type UserInclude = { + accounts?: boolean | User$accountsArgs + sessions?: boolean | User$sessionsArgs + shops?: boolean | User$shopsArgs + carts?: boolean | User$cartsArgs + adresses?: boolean | User$adressesArgs + _count?: boolean | UserCountOutputTypeDefaultArgs + } - export type $UserPayload< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - name: "User"; + export type $UserPayload = { + name: "User" objects: { - accounts: Prisma.$AccountPayload[]; - sessions: Prisma.$SessionPayload[]; - posts: Prisma.$PostPayload[]; - }; - scalars: $Extensions.GetPayloadResult< - { - id: string; - name: string | null; - email: string | null; - emailVerified: Date | null; - image: string | null; - }, - ExtArgs["result"]["user"] - >; - composites: {}; - }; + accounts: Prisma.$AccountPayload[] + sessions: Prisma.$SessionPayload[] + shops: Prisma.$ShopPayload[] + carts: Prisma.$CartPayload[] + adresses: Prisma.$AdressPayload[] + } + scalars: $Extensions.GetPayloadResult<{ + id: string + name: string | null + email: string | null + emailVerified: Date | null + image: string | null + balance: number + }, ExtArgs["result"]["user"]> + composites: {} + } - type UserGetPayload = - $Result.GetResult; + type UserGetPayload = $Result.GetResult - type UserCountArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = Omit & { - select?: UserCountAggregateInputType | true; - }; + type UserCountArgs = + Omit & { + select?: UserCountAggregateInputType | true + } - export interface UserDelegate< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - GlobalOmitOptions = {}, - > { - [K: symbol]: { - types: Prisma.TypeMap["model"]["User"]; - meta: { name: "User" }; - }; + export interface UserDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['User'], meta: { name: 'User' } } /** * Find zero or one User that matches the filter. * @param {UserFindUniqueArgs} args - Arguments to find a User @@ -5117,19 +4047,7 @@ export namespace Prisma { * } * }) */ - findUnique( - args: SelectSubset>, - ): Prisma__UserClient< - $Result.GetResult< - Prisma.$UserPayload, - T, - "findUnique", - GlobalOmitOptions - > | null, - null, - ExtArgs, - GlobalOmitOptions - >; + findUnique(args: SelectSubset>): Prisma__UserClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> /** * Find one User that matches the filter or throw an error with `error.code='P2025'` @@ -5143,19 +4061,7 @@ export namespace Prisma { * } * }) */ - findUniqueOrThrow( - args: SelectSubset>, - ): Prisma__UserClient< - $Result.GetResult< - Prisma.$UserPayload, - T, - "findUniqueOrThrow", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; + findUniqueOrThrow(args: SelectSubset>): Prisma__UserClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> /** * Find the first User that matches the filter. @@ -5170,19 +4076,7 @@ export namespace Prisma { * } * }) */ - findFirst( - args?: SelectSubset>, - ): Prisma__UserClient< - $Result.GetResult< - Prisma.$UserPayload, - T, - "findFirst", - GlobalOmitOptions - > | null, - null, - ExtArgs, - GlobalOmitOptions - >; + findFirst(args?: SelectSubset>): Prisma__UserClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> /** * Find the first User that matches the filter or @@ -5198,19 +4092,7 @@ export namespace Prisma { * } * }) */ - findFirstOrThrow( - args?: SelectSubset>, - ): Prisma__UserClient< - $Result.GetResult< - Prisma.$UserPayload, - T, - "findFirstOrThrow", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; + findFirstOrThrow(args?: SelectSubset>): Prisma__UserClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> /** * Find zero or more Users that matches the filter. @@ -5220,24 +4102,15 @@ export namespace Prisma { * @example * // Get all Users * const users = await prisma.user.findMany() - * + * * // Get first 10 Users * const users = await prisma.user.findMany({ take: 10 }) - * + * * // Only select the `id` * const userWithIdOnly = await prisma.user.findMany({ select: { id: true } }) - * + * */ - findMany( - args?: SelectSubset>, - ): Prisma.PrismaPromise< - $Result.GetResult< - Prisma.$UserPayload, - T, - "findMany", - GlobalOmitOptions - > - >; + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> /** * Create a User. @@ -5249,21 +4122,9 @@ export namespace Prisma { * // ... data to create a User * } * }) - * + * */ - create( - args: SelectSubset>, - ): Prisma__UserClient< - $Result.GetResult< - Prisma.$UserPayload, - T, - "create", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; + create(args: SelectSubset>): Prisma__UserClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> /** * Create many Users. @@ -5275,11 +4136,9 @@ export namespace Prisma { * // ... provide data here * ] * }) - * + * */ - createMany( - args?: SelectSubset>, - ): Prisma.PrismaPromise; + createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Delete a User. @@ -5291,21 +4150,9 @@ export namespace Prisma { * // ... filter to delete one User * } * }) - * + * */ - delete( - args: SelectSubset>, - ): Prisma__UserClient< - $Result.GetResult< - Prisma.$UserPayload, - T, - "delete", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; + delete(args: SelectSubset>): Prisma__UserClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> /** * Update one User. @@ -5320,21 +4167,9 @@ export namespace Prisma { * // ... provide data here * } * }) - * + * */ - update( - args: SelectSubset>, - ): Prisma__UserClient< - $Result.GetResult< - Prisma.$UserPayload, - T, - "update", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; + update(args: SelectSubset>): Prisma__UserClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> /** * Delete zero or more Users. @@ -5346,11 +4181,9 @@ export namespace Prisma { * // ... provide filter here * } * }) - * + * */ - deleteMany( - args?: SelectSubset>, - ): Prisma.PrismaPromise; + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more Users. @@ -5367,11 +4200,9 @@ export namespace Prisma { * // ... provide data here * } * }) - * + * */ - updateMany( - args: SelectSubset>, - ): Prisma.PrismaPromise; + updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one User. @@ -5390,19 +4221,8 @@ export namespace Prisma { * } * }) */ - upsert( - args: SelectSubset>, - ): Prisma__UserClient< - $Result.GetResult< - Prisma.$UserPayload, - T, - "upsert", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; + upsert(args: SelectSubset>): Prisma__UserClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + /** * Count the number of Users. @@ -5416,16 +4236,16 @@ export namespace Prisma { * // ... the filter for the Users we want to count * } * }) - **/ + **/ count( args?: Subset, ): Prisma.PrismaPromise< - T extends $Utils.Record<"select", any> - ? T["select"] extends true + T extends $Utils.Record<'select', any> + ? T['select'] extends true ? number - : GetScalarType + : GetScalarType : number - >; + > /** * Allows you to perform aggregations operations on a User. @@ -5450,10 +4270,8 @@ export namespace Prisma { * }, * take: 10, * }) - **/ - aggregate( - args: Subset, - ): Prisma.PrismaPromise>; + **/ + aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by User. @@ -5471,76 +4289,70 @@ export namespace Prisma { * _all: true * }, * }) - * - **/ + * + **/ groupBy< T extends UserGroupByArgs, HasSelectOrTake extends Or< - Extends<"skip", Keys>, - Extends<"take", Keys> + Extends<'skip', Keys>, + Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake - ? { orderBy: UserGroupByArgs["orderBy"] } - : { orderBy?: UserGroupByArgs["orderBy"] }, - OrderFields extends ExcludeUnderscoreKeys< - Keys> - >, - ByFields extends MaybeTupleToUnion, + ? { orderBy: UserGroupByArgs['orderBy'] } + : { orderBy?: UserGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, ByValid extends Has, - HavingFields extends GetHavingFields, + HavingFields extends GetHavingFields, HavingValid extends Has, - ByEmpty extends T["by"] extends never[] ? True : False, + ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True - ? `Error: "by" must not be empty.` - : HavingValid extends False - ? { - [P in HavingFields]: P extends ByFields + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields ? never - : P extends string - ? `Error: Field "${P}" used in "having" needs to be provided in "by".` - : [ - Error, - "Field ", - P, - ` in "having" needs to be provided in "by"`, - ]; - }[HavingFields] - : "take" extends Keys - ? "orderBy" extends Keys - ? ByValid extends True - ? {} - : { - [P in OrderFields]: P extends ByFields - ? never - : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`; - }[OrderFields] - : 'Error: If you provide "take", you also need to provide "orderBy"' - : "skip" extends Keys - ? "orderBy" extends Keys - ? ByValid extends True - ? {} - : { - [P in OrderFields]: P extends ByFields - ? never - : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`; - }[OrderFields] - : 'Error: If you provide "skip", you also need to provide "orderBy"' - : ByValid extends True - ? {} - : { - [P in OrderFields]: P extends ByFields - ? never - : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`; - }[OrderFields], - >( - args: SubsetIntersection & InputErrors, - ): {} extends InputErrors - ? GetUserGroupByPayload - : Prisma.PrismaPromise; - /** - * Fields of the User model - */ - readonly fields: UserFieldRefs; + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetUserGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the User model + */ + readonly fields: UserFieldRefs; } /** @@ -5549,772 +4361,709 @@ export namespace Prisma { * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ - export interface Prisma__UserClient< - T, - Null = never, - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - GlobalOmitOptions = {}, - > extends Prisma.PrismaPromise { - readonly [Symbol.toStringTag]: "PrismaPromise"; - accounts = {}>( - args?: Subset>, - ): Prisma.PrismaPromise< - | $Result.GetResult< - Prisma.$AccountPayload, - T, - "findMany", - GlobalOmitOptions - > - | Null - >; - sessions = {}>( - args?: Subset>, - ): Prisma.PrismaPromise< - | $Result.GetResult< - Prisma.$SessionPayload, - T, - "findMany", - GlobalOmitOptions - > - | Null - >; - posts = {}>( - args?: Subset>, - ): Prisma.PrismaPromise< - | $Result.GetResult< - Prisma.$PostPayload, - T, - "findMany", - GlobalOmitOptions - > - | Null - >; + export interface Prisma__UserClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + accounts = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions> | Null> + sessions = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions> | Null> + shops = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions> | Null> + carts = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions> | Null> + adresses = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions> | Null> /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ - then( - onfulfilled?: - | ((value: T) => TResult1 | PromiseLike) - | undefined - | null, - onrejected?: - | ((reason: any) => TResult2 | PromiseLike) - | undefined - | null, - ): $Utils.JsPromise; + then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ - catch( - onrejected?: - | ((reason: any) => TResult | PromiseLike) - | undefined - | null, - ): $Utils.JsPromise; + catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ - finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise; + finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } + + + /** * Fields of the User model */ interface UserFieldRefs { - readonly id: FieldRef<"User", "String">; - readonly name: FieldRef<"User", "String">; - readonly email: FieldRef<"User", "String">; - readonly emailVerified: FieldRef<"User", "DateTime">; - readonly image: FieldRef<"User", "String">; + readonly id: FieldRef<"User", 'String'> + readonly name: FieldRef<"User", 'String'> + readonly email: FieldRef<"User", 'String'> + readonly emailVerified: FieldRef<"User", 'DateTime'> + readonly image: FieldRef<"User", 'String'> + readonly balance: FieldRef<"User", 'Float'> } + // Custom InputTypes /** * User findUnique */ - export type UserFindUniqueArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type UserFindUniqueArgs = { /** * Select specific fields to fetch from the User */ - select?: UserSelect | null; + select?: UserSelect | null /** * Omit specific fields from the User */ - omit?: UserOmit | null; + omit?: UserOmit | null /** * Choose, which related nodes to fetch as well */ - include?: UserInclude | null; + include?: UserInclude | null /** * Filter, which User to fetch. */ - where: UserWhereUniqueInput; - }; + where: UserWhereUniqueInput + } /** * User findUniqueOrThrow */ - export type UserFindUniqueOrThrowArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type UserFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the User */ - select?: UserSelect | null; + select?: UserSelect | null /** * Omit specific fields from the User */ - omit?: UserOmit | null; + omit?: UserOmit | null /** * Choose, which related nodes to fetch as well */ - include?: UserInclude | null; + include?: UserInclude | null /** * Filter, which User to fetch. */ - where: UserWhereUniqueInput; - }; + where: UserWhereUniqueInput + } /** * User findFirst */ - export type UserFindFirstArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type UserFindFirstArgs = { /** * Select specific fields to fetch from the User */ - select?: UserSelect | null; + select?: UserSelect | null /** * Omit specific fields from the User */ - omit?: UserOmit | null; + omit?: UserOmit | null /** * Choose, which related nodes to fetch as well */ - include?: UserInclude | null; + include?: UserInclude | null /** * Filter, which User to fetch. */ - where?: UserWhereInput; + where?: UserWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * + * * Determine the order of Users to fetch. */ - orderBy?: UserOrderByWithRelationInput | UserOrderByWithRelationInput[]; + orderBy?: UserOrderByWithRelationInput | UserOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * + * * Sets the position for searching for Users. */ - cursor?: UserWhereUniqueInput; + cursor?: UserWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Take `±n` Users from the position of the cursor. */ - take?: number; + take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Skip the first `n` Users. */ - skip?: number; + skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} - * + * * Filter by unique combinations of Users. */ - distinct?: UserScalarFieldEnum | UserScalarFieldEnum[]; - }; + distinct?: UserScalarFieldEnum | UserScalarFieldEnum[] + } /** * User findFirstOrThrow */ - export type UserFindFirstOrThrowArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type UserFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the User */ - select?: UserSelect | null; + select?: UserSelect | null /** * Omit specific fields from the User */ - omit?: UserOmit | null; + omit?: UserOmit | null /** * Choose, which related nodes to fetch as well */ - include?: UserInclude | null; + include?: UserInclude | null /** * Filter, which User to fetch. */ - where?: UserWhereInput; + where?: UserWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * + * * Determine the order of Users to fetch. */ - orderBy?: UserOrderByWithRelationInput | UserOrderByWithRelationInput[]; + orderBy?: UserOrderByWithRelationInput | UserOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * + * * Sets the position for searching for Users. */ - cursor?: UserWhereUniqueInput; + cursor?: UserWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Take `±n` Users from the position of the cursor. */ - take?: number; + take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Skip the first `n` Users. */ - skip?: number; + skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} - * + * * Filter by unique combinations of Users. */ - distinct?: UserScalarFieldEnum | UserScalarFieldEnum[]; - }; + distinct?: UserScalarFieldEnum | UserScalarFieldEnum[] + } /** * User findMany */ - export type UserFindManyArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type UserFindManyArgs = { /** * Select specific fields to fetch from the User */ - select?: UserSelect | null; + select?: UserSelect | null /** * Omit specific fields from the User */ - omit?: UserOmit | null; + omit?: UserOmit | null /** * Choose, which related nodes to fetch as well */ - include?: UserInclude | null; + include?: UserInclude | null /** * Filter, which Users to fetch. */ - where?: UserWhereInput; + where?: UserWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * + * * Determine the order of Users to fetch. */ - orderBy?: UserOrderByWithRelationInput | UserOrderByWithRelationInput[]; + orderBy?: UserOrderByWithRelationInput | UserOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * + * * Sets the position for listing Users. */ - cursor?: UserWhereUniqueInput; + cursor?: UserWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Take `±n` Users from the position of the cursor. */ - take?: number; + take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Skip the first `n` Users. */ - skip?: number; - distinct?: UserScalarFieldEnum | UserScalarFieldEnum[]; - }; + skip?: number + distinct?: UserScalarFieldEnum | UserScalarFieldEnum[] + } /** * User create */ - export type UserCreateArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type UserCreateArgs = { /** * Select specific fields to fetch from the User */ - select?: UserSelect | null; + select?: UserSelect | null /** * Omit specific fields from the User */ - omit?: UserOmit | null; + omit?: UserOmit | null /** * Choose, which related nodes to fetch as well */ - include?: UserInclude | null; + include?: UserInclude | null /** * The data needed to create a User. */ - data?: XOR; - }; + data?: XOR + } /** * User createMany */ - export type UserCreateManyArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type UserCreateManyArgs = { /** * The data used to create many Users. */ - data: UserCreateManyInput | UserCreateManyInput[]; - skipDuplicates?: boolean; - }; + data: UserCreateManyInput | UserCreateManyInput[] + skipDuplicates?: boolean + } /** * User update */ - export type UserUpdateArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type UserUpdateArgs = { /** * Select specific fields to fetch from the User */ - select?: UserSelect | null; + select?: UserSelect | null /** * Omit specific fields from the User */ - omit?: UserOmit | null; + omit?: UserOmit | null /** * Choose, which related nodes to fetch as well */ - include?: UserInclude | null; + include?: UserInclude | null /** * The data needed to update a User. */ - data: XOR; + data: XOR /** * Choose, which User to update. */ - where: UserWhereUniqueInput; - }; + where: UserWhereUniqueInput + } /** * User updateMany */ - export type UserUpdateManyArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type UserUpdateManyArgs = { /** * The data used to update Users. */ - data: XOR; + data: XOR /** * Filter which Users to update */ - where?: UserWhereInput; + where?: UserWhereInput /** * Limit how many Users to update. */ - limit?: number; - }; + limit?: number + } /** * User upsert */ - export type UserUpsertArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type UserUpsertArgs = { /** * Select specific fields to fetch from the User */ - select?: UserSelect | null; + select?: UserSelect | null /** * Omit specific fields from the User */ - omit?: UserOmit | null; + omit?: UserOmit | null /** * Choose, which related nodes to fetch as well */ - include?: UserInclude | null; + include?: UserInclude | null /** * The filter to search for the User to update in case it exists. */ - where: UserWhereUniqueInput; + where: UserWhereUniqueInput /** * In case the User found by the `where` argument doesn't exist, create a new User with this data. */ - create: XOR; + create: XOR /** * In case the User was found with the provided `where` argument, update it with this data. */ - update: XOR; - }; + update: XOR + } /** * User delete */ - export type UserDeleteArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type UserDeleteArgs = { /** * Select specific fields to fetch from the User */ - select?: UserSelect | null; + select?: UserSelect | null /** * Omit specific fields from the User */ - omit?: UserOmit | null; + omit?: UserOmit | null /** * Choose, which related nodes to fetch as well */ - include?: UserInclude | null; + include?: UserInclude | null /** * Filter which User to delete. */ - where: UserWhereUniqueInput; - }; + where: UserWhereUniqueInput + } /** * User deleteMany */ - export type UserDeleteManyArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type UserDeleteManyArgs = { /** * Filter which Users to delete */ - where?: UserWhereInput; + where?: UserWhereInput /** * Limit how many Users to delete. */ - limit?: number; - }; + limit?: number + } /** * User.accounts */ - export type User$accountsArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type User$accountsArgs = { /** * Select specific fields to fetch from the Account */ - select?: AccountSelect | null; + select?: AccountSelect | null /** * Omit specific fields from the Account */ - omit?: AccountOmit | null; + omit?: AccountOmit | null /** * Choose, which related nodes to fetch as well */ - include?: AccountInclude | null; - where?: AccountWhereInput; - orderBy?: - | AccountOrderByWithRelationInput - | AccountOrderByWithRelationInput[]; - cursor?: AccountWhereUniqueInput; - take?: number; - skip?: number; - distinct?: AccountScalarFieldEnum | AccountScalarFieldEnum[]; - }; + include?: AccountInclude | null + where?: AccountWhereInput + orderBy?: AccountOrderByWithRelationInput | AccountOrderByWithRelationInput[] + cursor?: AccountWhereUniqueInput + take?: number + skip?: number + distinct?: AccountScalarFieldEnum | AccountScalarFieldEnum[] + } /** * User.sessions */ - export type User$sessionsArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type User$sessionsArgs = { /** * Select specific fields to fetch from the Session */ - select?: SessionSelect | null; + select?: SessionSelect | null /** * Omit specific fields from the Session */ - omit?: SessionOmit | null; + omit?: SessionOmit | null /** * Choose, which related nodes to fetch as well */ - include?: SessionInclude | null; - where?: SessionWhereInput; - orderBy?: - | SessionOrderByWithRelationInput - | SessionOrderByWithRelationInput[]; - cursor?: SessionWhereUniqueInput; - take?: number; - skip?: number; - distinct?: SessionScalarFieldEnum | SessionScalarFieldEnum[]; - }; + include?: SessionInclude | null + where?: SessionWhereInput + orderBy?: SessionOrderByWithRelationInput | SessionOrderByWithRelationInput[] + cursor?: SessionWhereUniqueInput + take?: number + skip?: number + distinct?: SessionScalarFieldEnum | SessionScalarFieldEnum[] + } /** - * User.posts + * User.shops */ - export type User$postsArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type User$shopsArgs = { /** - * Select specific fields to fetch from the Post + * Select specific fields to fetch from the Shop */ - select?: PostSelect | null; + select?: ShopSelect | null /** - * Omit specific fields from the Post + * Omit specific fields from the Shop */ - omit?: PostOmit | null; + omit?: ShopOmit | null /** * Choose, which related nodes to fetch as well */ - include?: PostInclude | null; - where?: PostWhereInput; - orderBy?: PostOrderByWithRelationInput | PostOrderByWithRelationInput[]; - cursor?: PostWhereUniqueInput; - take?: number; - skip?: number; - distinct?: PostScalarFieldEnum | PostScalarFieldEnum[]; - }; + include?: ShopInclude | null + where?: ShopWhereInput + orderBy?: ShopOrderByWithRelationInput | ShopOrderByWithRelationInput[] + cursor?: ShopWhereUniqueInput + take?: number + skip?: number + distinct?: ShopScalarFieldEnum | ShopScalarFieldEnum[] + } + + /** + * User.carts + */ + export type User$cartsArgs = { + /** + * Select specific fields to fetch from the Cart + */ + select?: CartSelect | null + /** + * Omit specific fields from the Cart + */ + omit?: CartOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: CartInclude | null + where?: CartWhereInput + orderBy?: CartOrderByWithRelationInput | CartOrderByWithRelationInput[] + cursor?: CartWhereUniqueInput + take?: number + skip?: number + distinct?: CartScalarFieldEnum | CartScalarFieldEnum[] + } + + /** + * User.adresses + */ + export type User$adressesArgs = { + /** + * Select specific fields to fetch from the Adress + */ + select?: AdressSelect | null + /** + * Omit specific fields from the Adress + */ + omit?: AdressOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: AdressInclude | null + where?: AdressWhereInput + orderBy?: AdressOrderByWithRelationInput | AdressOrderByWithRelationInput[] + cursor?: AdressWhereUniqueInput + take?: number + skip?: number + distinct?: AdressScalarFieldEnum | AdressScalarFieldEnum[] + } /** * User without action */ - export type UserDefaultArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type UserDefaultArgs = { /** * Select specific fields to fetch from the User */ - select?: UserSelect | null; + select?: UserSelect | null /** * Omit specific fields from the User */ - omit?: UserOmit | null; + omit?: UserOmit | null /** * Choose, which related nodes to fetch as well */ - include?: UserInclude | null; - }; + include?: UserInclude | null + } + /** * Model VerificationToken */ export type AggregateVerificationToken = { - _count: VerificationTokenCountAggregateOutputType | null; - _min: VerificationTokenMinAggregateOutputType | null; - _max: VerificationTokenMaxAggregateOutputType | null; - }; + _count: VerificationTokenCountAggregateOutputType | null + _min: VerificationTokenMinAggregateOutputType | null + _max: VerificationTokenMaxAggregateOutputType | null + } export type VerificationTokenMinAggregateOutputType = { - identifier: string | null; - token: string | null; - expires: Date | null; - }; + identifier: string | null + token: string | null + expires: Date | null + } export type VerificationTokenMaxAggregateOutputType = { - identifier: string | null; - token: string | null; - expires: Date | null; - }; + identifier: string | null + token: string | null + expires: Date | null + } export type VerificationTokenCountAggregateOutputType = { - identifier: number; - token: number; - expires: number; - _all: number; - }; + identifier: number + token: number + expires: number + _all: number + } + export type VerificationTokenMinAggregateInputType = { - identifier?: true; - token?: true; - expires?: true; - }; + identifier?: true + token?: true + expires?: true + } export type VerificationTokenMaxAggregateInputType = { - identifier?: true; - token?: true; - expires?: true; - }; + identifier?: true + token?: true + expires?: true + } export type VerificationTokenCountAggregateInputType = { - identifier?: true; - token?: true; - expires?: true; - _all?: true; - }; + identifier?: true + token?: true + expires?: true + _all?: true + } - export type VerificationTokenAggregateArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type VerificationTokenAggregateArgs = { /** * Filter which VerificationToken to aggregate. */ - where?: VerificationTokenWhereInput; + where?: VerificationTokenWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * + * * Determine the order of VerificationTokens to fetch. */ - orderBy?: - | VerificationTokenOrderByWithRelationInput - | VerificationTokenOrderByWithRelationInput[]; + orderBy?: VerificationTokenOrderByWithRelationInput | VerificationTokenOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * + * * Sets the start position */ - cursor?: VerificationTokenWhereUniqueInput; + cursor?: VerificationTokenWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Take `±n` VerificationTokens from the position of the cursor. */ - take?: number; + take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Skip the first `n` VerificationTokens. */ - skip?: number; + skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * + * * Count returned VerificationTokens - **/ - _count?: true | VerificationTokenCountAggregateInputType; + **/ + _count?: true | VerificationTokenCountAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * + * * Select which fields to find the minimum value - **/ - _min?: VerificationTokenMinAggregateInputType; + **/ + _min?: VerificationTokenMinAggregateInputType /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * + * * Select which fields to find the maximum value - **/ - _max?: VerificationTokenMaxAggregateInputType; - }; + **/ + _max?: VerificationTokenMaxAggregateInputType + } - export type GetVerificationTokenAggregateType< - T extends VerificationTokenAggregateArgs, - > = { - [P in keyof T & keyof AggregateVerificationToken]: P extends - | "_count" - | "count" + export type GetVerificationTokenAggregateType = { + [P in keyof T & keyof AggregateVerificationToken]: P extends '_count' | 'count' ? T[P] extends true ? number : GetScalarType - : GetScalarType; - }; + : GetScalarType + } - export type VerificationTokenGroupByArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - where?: VerificationTokenWhereInput; - orderBy?: - | VerificationTokenOrderByWithAggregationInput - | VerificationTokenOrderByWithAggregationInput[]; - by: VerificationTokenScalarFieldEnum[] | VerificationTokenScalarFieldEnum; - having?: VerificationTokenScalarWhereWithAggregatesInput; - take?: number; - skip?: number; - _count?: VerificationTokenCountAggregateInputType | true; - _min?: VerificationTokenMinAggregateInputType; - _max?: VerificationTokenMaxAggregateInputType; - }; + + + + export type VerificationTokenGroupByArgs = { + where?: VerificationTokenWhereInput + orderBy?: VerificationTokenOrderByWithAggregationInput | VerificationTokenOrderByWithAggregationInput[] + by: VerificationTokenScalarFieldEnum[] | VerificationTokenScalarFieldEnum + having?: VerificationTokenScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: VerificationTokenCountAggregateInputType | true + _min?: VerificationTokenMinAggregateInputType + _max?: VerificationTokenMaxAggregateInputType + } export type VerificationTokenGroupByOutputType = { - identifier: string; - token: string; - expires: Date; - _count: VerificationTokenCountAggregateOutputType | null; - _min: VerificationTokenMinAggregateOutputType | null; - _max: VerificationTokenMaxAggregateOutputType | null; - }; + identifier: string + token: string + expires: Date + _count: VerificationTokenCountAggregateOutputType | null + _min: VerificationTokenMinAggregateOutputType | null + _max: VerificationTokenMaxAggregateOutputType | null + } - type GetVerificationTokenGroupByPayload< - T extends VerificationTokenGroupByArgs, - > = Prisma.PrismaPromise< + type GetVerificationTokenGroupByPayload = Prisma.PrismaPromise< Array< - PickEnumerable & { - [P in keyof T & - keyof VerificationTokenGroupByOutputType]: P extends "_count" - ? T[P] extends boolean - ? number + PickEnumerable & + { + [P in ((keyof T) & (keyof VerificationTokenGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType : GetScalarType - : GetScalarType; - } + } + > > - >; - export type VerificationTokenSelect< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = $Extensions.GetSelect< - { - identifier?: boolean; - token?: boolean; - expires?: boolean; - }, - ExtArgs["result"]["verificationToken"] - >; + + export type VerificationTokenSelect = $Extensions.GetSelect<{ + identifier?: boolean + token?: boolean + expires?: boolean + }, ExtArgs["result"]["verificationToken"]> + + export type VerificationTokenSelectScalar = { - identifier?: boolean; - token?: boolean; - expires?: boolean; - }; + identifier?: boolean + token?: boolean + expires?: boolean + } - export type VerificationTokenOmit< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = $Extensions.GetOmit< - "identifier" | "token" | "expires", - ExtArgs["result"]["verificationToken"] - >; + export type VerificationTokenOmit = $Extensions.GetOmit<"identifier" | "token" | "expires", ExtArgs["result"]["verificationToken"]> - export type $VerificationTokenPayload< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { - name: "VerificationToken"; - objects: {}; - scalars: $Extensions.GetPayloadResult< - { - identifier: string; - token: string; - expires: Date; - }, - ExtArgs["result"]["verificationToken"] - >; - composites: {}; - }; + export type $VerificationTokenPayload = { + name: "VerificationToken" + objects: {} + scalars: $Extensions.GetPayloadResult<{ + identifier: string + token: string + expires: Date + }, ExtArgs["result"]["verificationToken"]> + composites: {} + } - type VerificationTokenGetPayload< - S extends boolean | null | undefined | VerificationTokenDefaultArgs, - > = $Result.GetResult; + type VerificationTokenGetPayload = $Result.GetResult - type VerificationTokenCountArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = Omit< - VerificationTokenFindManyArgs, - "select" | "include" | "distinct" | "omit" - > & { - select?: VerificationTokenCountAggregateInputType | true; - }; + type VerificationTokenCountArgs = + Omit & { + select?: VerificationTokenCountAggregateInputType | true + } - export interface VerificationTokenDelegate< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - GlobalOmitOptions = {}, - > { - [K: symbol]: { - types: Prisma.TypeMap["model"]["VerificationToken"]; - meta: { name: "VerificationToken" }; - }; + export interface VerificationTokenDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['VerificationToken'], meta: { name: 'VerificationToken' } } /** * Find zero or one VerificationToken that matches the filter. * @param {VerificationTokenFindUniqueArgs} args - Arguments to find a VerificationToken @@ -6326,19 +5075,7 @@ export namespace Prisma { * } * }) */ - findUnique( - args: SelectSubset>, - ): Prisma__VerificationTokenClient< - $Result.GetResult< - Prisma.$VerificationTokenPayload, - T, - "findUnique", - GlobalOmitOptions - > | null, - null, - ExtArgs, - GlobalOmitOptions - >; + findUnique(args: SelectSubset>): Prisma__VerificationTokenClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> /** * Find one VerificationToken that matches the filter or throw an error with `error.code='P2025'` @@ -6352,19 +5089,7 @@ export namespace Prisma { * } * }) */ - findUniqueOrThrow( - args: SelectSubset>, - ): Prisma__VerificationTokenClient< - $Result.GetResult< - Prisma.$VerificationTokenPayload, - T, - "findUniqueOrThrow", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; + findUniqueOrThrow(args: SelectSubset>): Prisma__VerificationTokenClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> /** * Find the first VerificationToken that matches the filter. @@ -6379,19 +5104,7 @@ export namespace Prisma { * } * }) */ - findFirst( - args?: SelectSubset>, - ): Prisma__VerificationTokenClient< - $Result.GetResult< - Prisma.$VerificationTokenPayload, - T, - "findFirst", - GlobalOmitOptions - > | null, - null, - ExtArgs, - GlobalOmitOptions - >; + findFirst(args?: SelectSubset>): Prisma__VerificationTokenClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> /** * Find the first VerificationToken that matches the filter or @@ -6407,19 +5120,7 @@ export namespace Prisma { * } * }) */ - findFirstOrThrow( - args?: SelectSubset>, - ): Prisma__VerificationTokenClient< - $Result.GetResult< - Prisma.$VerificationTokenPayload, - T, - "findFirstOrThrow", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; + findFirstOrThrow(args?: SelectSubset>): Prisma__VerificationTokenClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> /** * Find zero or more VerificationTokens that matches the filter. @@ -6429,24 +5130,15 @@ export namespace Prisma { * @example * // Get all VerificationTokens * const verificationTokens = await prisma.verificationToken.findMany() - * + * * // Get first 10 VerificationTokens * const verificationTokens = await prisma.verificationToken.findMany({ take: 10 }) - * + * * // Only select the `identifier` * const verificationTokenWithIdentifierOnly = await prisma.verificationToken.findMany({ select: { identifier: true } }) - * + * */ - findMany( - args?: SelectSubset>, - ): Prisma.PrismaPromise< - $Result.GetResult< - Prisma.$VerificationTokenPayload, - T, - "findMany", - GlobalOmitOptions - > - >; + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> /** * Create a VerificationToken. @@ -6458,21 +5150,9 @@ export namespace Prisma { * // ... data to create a VerificationToken * } * }) - * + * */ - create( - args: SelectSubset>, - ): Prisma__VerificationTokenClient< - $Result.GetResult< - Prisma.$VerificationTokenPayload, - T, - "create", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; + create(args: SelectSubset>): Prisma__VerificationTokenClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> /** * Create many VerificationTokens. @@ -6484,11 +5164,9 @@ export namespace Prisma { * // ... provide data here * ] * }) - * + * */ - createMany( - args?: SelectSubset>, - ): Prisma.PrismaPromise; + createMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Delete a VerificationToken. @@ -6500,21 +5178,9 @@ export namespace Prisma { * // ... filter to delete one VerificationToken * } * }) - * + * */ - delete( - args: SelectSubset>, - ): Prisma__VerificationTokenClient< - $Result.GetResult< - Prisma.$VerificationTokenPayload, - T, - "delete", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; + delete(args: SelectSubset>): Prisma__VerificationTokenClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> /** * Update one VerificationToken. @@ -6529,21 +5195,9 @@ export namespace Prisma { * // ... provide data here * } * }) - * + * */ - update( - args: SelectSubset>, - ): Prisma__VerificationTokenClient< - $Result.GetResult< - Prisma.$VerificationTokenPayload, - T, - "update", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; + update(args: SelectSubset>): Prisma__VerificationTokenClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> /** * Delete zero or more VerificationTokens. @@ -6555,11 +5209,9 @@ export namespace Prisma { * // ... provide filter here * } * }) - * + * */ - deleteMany( - args?: SelectSubset>, - ): Prisma.PrismaPromise; + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise /** * Update zero or more VerificationTokens. @@ -6576,11 +5228,9 @@ export namespace Prisma { * // ... provide data here * } * }) - * + * */ - updateMany( - args: SelectSubset>, - ): Prisma.PrismaPromise; + updateMany(args: SelectSubset>): Prisma.PrismaPromise /** * Create or update one VerificationToken. @@ -6599,19 +5249,8 @@ export namespace Prisma { * } * }) */ - upsert( - args: SelectSubset>, - ): Prisma__VerificationTokenClient< - $Result.GetResult< - Prisma.$VerificationTokenPayload, - T, - "upsert", - GlobalOmitOptions - >, - never, - ExtArgs, - GlobalOmitOptions - >; + upsert(args: SelectSubset>): Prisma__VerificationTokenClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + /** * Count the number of VerificationTokens. @@ -6625,19 +5264,16 @@ export namespace Prisma { * // ... the filter for the VerificationTokens we want to count * } * }) - **/ + **/ count( args?: Subset, ): Prisma.PrismaPromise< - T extends $Utils.Record<"select", any> - ? T["select"] extends true + T extends $Utils.Record<'select', any> + ? T['select'] extends true ? number - : GetScalarType< - T["select"], - VerificationTokenCountAggregateOutputType - > + : GetScalarType : number - >; + > /** * Allows you to perform aggregations operations on a VerificationToken. @@ -6662,10 +5298,8 @@ export namespace Prisma { * }, * take: 10, * }) - **/ - aggregate( - args: Subset, - ): Prisma.PrismaPromise>; + **/ + aggregate(args: Subset): Prisma.PrismaPromise> /** * Group by VerificationToken. @@ -6683,77 +5317,70 @@ export namespace Prisma { * _all: true * }, * }) - * - **/ + * + **/ groupBy< T extends VerificationTokenGroupByArgs, HasSelectOrTake extends Or< - Extends<"skip", Keys>, - Extends<"take", Keys> + Extends<'skip', Keys>, + Extends<'take', Keys> >, OrderByArg extends True extends HasSelectOrTake - ? { orderBy: VerificationTokenGroupByArgs["orderBy"] } - : { orderBy?: VerificationTokenGroupByArgs["orderBy"] }, - OrderFields extends ExcludeUnderscoreKeys< - Keys> - >, - ByFields extends MaybeTupleToUnion, + ? { orderBy: VerificationTokenGroupByArgs['orderBy'] } + : { orderBy?: VerificationTokenGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, ByValid extends Has, - HavingFields extends GetHavingFields, + HavingFields extends GetHavingFields, HavingValid extends Has, - ByEmpty extends T["by"] extends never[] ? True : False, + ByEmpty extends T['by'] extends never[] ? True : False, InputErrors extends ByEmpty extends True - ? `Error: "by" must not be empty.` - : HavingValid extends False - ? { - [P in HavingFields]: P extends ByFields + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields ? never - : P extends string - ? `Error: Field "${P}" used in "having" needs to be provided in "by".` - : [ - Error, - "Field ", - P, - ` in "having" needs to be provided in "by"`, - ]; - }[HavingFields] - : "take" extends Keys - ? "orderBy" extends Keys - ? ByValid extends True - ? {} - : { - [P in OrderFields]: P extends ByFields - ? never - : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`; - }[OrderFields] - : 'Error: If you provide "take", you also need to provide "orderBy"' - : "skip" extends Keys - ? "orderBy" extends Keys - ? ByValid extends True - ? {} - : { - [P in OrderFields]: P extends ByFields - ? never - : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`; - }[OrderFields] - : 'Error: If you provide "skip", you also need to provide "orderBy"' - : ByValid extends True - ? {} - : { - [P in OrderFields]: P extends ByFields - ? never - : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`; - }[OrderFields], - >( - args: SubsetIntersection & - InputErrors, - ): {} extends InputErrors - ? GetVerificationTokenGroupByPayload - : Prisma.PrismaPromise; - /** - * Fields of the VerificationToken model - */ - readonly fields: VerificationTokenFieldRefs; + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetVerificationTokenGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the VerificationToken model + */ + readonly fields: VerificationTokenFieldRefs; } /** @@ -6762,2882 +5389,10378 @@ export namespace Prisma { * Because we want to prevent naming conflicts as mentioned in * https://github.com/prisma/prisma-client-js/issues/707 */ - export interface Prisma__VerificationTokenClient< - T, - Null = never, - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - GlobalOmitOptions = {}, - > extends Prisma.PrismaPromise { - readonly [Symbol.toStringTag]: "PrismaPromise"; + export interface Prisma__VerificationTokenClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of which ever callback is executed. */ - then( - onfulfilled?: - | ((value: T) => TResult1 | PromiseLike) - | undefined - | null, - onrejected?: - | ((reason: any) => TResult2 | PromiseLike) - | undefined - | null, - ): $Utils.JsPromise; + then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback for only the rejection of the Promise. * @param onrejected The callback to execute when the Promise is rejected. * @returns A Promise for the completion of the callback. */ - catch( - onrejected?: - | ((reason: any) => TResult | PromiseLike) - | undefined - | null, - ): $Utils.JsPromise; + catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise /** * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The * resolved value cannot be modified from the callback. * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). * @returns A Promise for the completion of the callback. */ - finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise; + finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise } + + + /** * Fields of the VerificationToken model */ interface VerificationTokenFieldRefs { - readonly identifier: FieldRef<"VerificationToken", "String">; - readonly token: FieldRef<"VerificationToken", "String">; - readonly expires: FieldRef<"VerificationToken", "DateTime">; + readonly identifier: FieldRef<"VerificationToken", 'String'> + readonly token: FieldRef<"VerificationToken", 'String'> + readonly expires: FieldRef<"VerificationToken", 'DateTime'> } + // Custom InputTypes /** * VerificationToken findUnique */ - export type VerificationTokenFindUniqueArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type VerificationTokenFindUniqueArgs = { /** * Select specific fields to fetch from the VerificationToken */ - select?: VerificationTokenSelect | null; + select?: VerificationTokenSelect | null /** * Omit specific fields from the VerificationToken */ - omit?: VerificationTokenOmit | null; + omit?: VerificationTokenOmit | null /** * Filter, which VerificationToken to fetch. */ - where: VerificationTokenWhereUniqueInput; - }; + where: VerificationTokenWhereUniqueInput + } /** * VerificationToken findUniqueOrThrow */ - export type VerificationTokenFindUniqueOrThrowArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type VerificationTokenFindUniqueOrThrowArgs = { /** * Select specific fields to fetch from the VerificationToken */ - select?: VerificationTokenSelect | null; + select?: VerificationTokenSelect | null /** * Omit specific fields from the VerificationToken */ - omit?: VerificationTokenOmit | null; + omit?: VerificationTokenOmit | null /** * Filter, which VerificationToken to fetch. */ - where: VerificationTokenWhereUniqueInput; - }; + where: VerificationTokenWhereUniqueInput + } /** * VerificationToken findFirst */ - export type VerificationTokenFindFirstArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type VerificationTokenFindFirstArgs = { /** * Select specific fields to fetch from the VerificationToken */ - select?: VerificationTokenSelect | null; + select?: VerificationTokenSelect | null /** * Omit specific fields from the VerificationToken */ - omit?: VerificationTokenOmit | null; + omit?: VerificationTokenOmit | null /** * Filter, which VerificationToken to fetch. */ - where?: VerificationTokenWhereInput; + where?: VerificationTokenWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * + * * Determine the order of VerificationTokens to fetch. */ - orderBy?: - | VerificationTokenOrderByWithRelationInput - | VerificationTokenOrderByWithRelationInput[]; + orderBy?: VerificationTokenOrderByWithRelationInput | VerificationTokenOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * + * * Sets the position for searching for VerificationTokens. */ - cursor?: VerificationTokenWhereUniqueInput; + cursor?: VerificationTokenWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Take `±n` VerificationTokens from the position of the cursor. */ - take?: number; + take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Skip the first `n` VerificationTokens. */ - skip?: number; + skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} - * + * * Filter by unique combinations of VerificationTokens. */ - distinct?: - | VerificationTokenScalarFieldEnum - | VerificationTokenScalarFieldEnum[]; - }; + distinct?: VerificationTokenScalarFieldEnum | VerificationTokenScalarFieldEnum[] + } /** * VerificationToken findFirstOrThrow */ - export type VerificationTokenFindFirstOrThrowArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type VerificationTokenFindFirstOrThrowArgs = { /** * Select specific fields to fetch from the VerificationToken */ - select?: VerificationTokenSelect | null; + select?: VerificationTokenSelect | null /** * Omit specific fields from the VerificationToken */ - omit?: VerificationTokenOmit | null; + omit?: VerificationTokenOmit | null /** * Filter, which VerificationToken to fetch. */ - where?: VerificationTokenWhereInput; + where?: VerificationTokenWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * + * * Determine the order of VerificationTokens to fetch. */ - orderBy?: - | VerificationTokenOrderByWithRelationInput - | VerificationTokenOrderByWithRelationInput[]; + orderBy?: VerificationTokenOrderByWithRelationInput | VerificationTokenOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * + * * Sets the position for searching for VerificationTokens. */ - cursor?: VerificationTokenWhereUniqueInput; + cursor?: VerificationTokenWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Take `±n` VerificationTokens from the position of the cursor. */ - take?: number; + take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Skip the first `n` VerificationTokens. */ - skip?: number; + skip?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} - * + * * Filter by unique combinations of VerificationTokens. */ - distinct?: - | VerificationTokenScalarFieldEnum - | VerificationTokenScalarFieldEnum[]; - }; + distinct?: VerificationTokenScalarFieldEnum | VerificationTokenScalarFieldEnum[] + } /** * VerificationToken findMany */ - export type VerificationTokenFindManyArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type VerificationTokenFindManyArgs = { /** * Select specific fields to fetch from the VerificationToken */ - select?: VerificationTokenSelect | null; + select?: VerificationTokenSelect | null /** * Omit specific fields from the VerificationToken */ - omit?: VerificationTokenOmit | null; + omit?: VerificationTokenOmit | null /** * Filter, which VerificationTokens to fetch. */ - where?: VerificationTokenWhereInput; + where?: VerificationTokenWhereInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * + * * Determine the order of VerificationTokens to fetch. */ - orderBy?: - | VerificationTokenOrderByWithRelationInput - | VerificationTokenOrderByWithRelationInput[]; + orderBy?: VerificationTokenOrderByWithRelationInput | VerificationTokenOrderByWithRelationInput[] /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * + * * Sets the position for listing VerificationTokens. */ - cursor?: VerificationTokenWhereUniqueInput; + cursor?: VerificationTokenWhereUniqueInput /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Take `±n` VerificationTokens from the position of the cursor. */ - take?: number; + take?: number /** * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * + * * Skip the first `n` VerificationTokens. */ - skip?: number; - distinct?: - | VerificationTokenScalarFieldEnum - | VerificationTokenScalarFieldEnum[]; - }; + skip?: number + distinct?: VerificationTokenScalarFieldEnum | VerificationTokenScalarFieldEnum[] + } /** * VerificationToken create */ - export type VerificationTokenCreateArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type VerificationTokenCreateArgs = { /** * Select specific fields to fetch from the VerificationToken */ - select?: VerificationTokenSelect | null; + select?: VerificationTokenSelect | null /** * Omit specific fields from the VerificationToken */ - omit?: VerificationTokenOmit | null; + omit?: VerificationTokenOmit | null /** * The data needed to create a VerificationToken. */ - data: XOR< - VerificationTokenCreateInput, - VerificationTokenUncheckedCreateInput - >; - }; + data: XOR + } /** * VerificationToken createMany */ - export type VerificationTokenCreateManyArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type VerificationTokenCreateManyArgs = { /** * The data used to create many VerificationTokens. */ - data: VerificationTokenCreateManyInput | VerificationTokenCreateManyInput[]; - skipDuplicates?: boolean; - }; + data: VerificationTokenCreateManyInput | VerificationTokenCreateManyInput[] + skipDuplicates?: boolean + } /** * VerificationToken update */ - export type VerificationTokenUpdateArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type VerificationTokenUpdateArgs = { /** * Select specific fields to fetch from the VerificationToken */ - select?: VerificationTokenSelect | null; + select?: VerificationTokenSelect | null /** * Omit specific fields from the VerificationToken */ - omit?: VerificationTokenOmit | null; + omit?: VerificationTokenOmit | null /** * The data needed to update a VerificationToken. */ - data: XOR< - VerificationTokenUpdateInput, - VerificationTokenUncheckedUpdateInput - >; + data: XOR /** * Choose, which VerificationToken to update. */ - where: VerificationTokenWhereUniqueInput; - }; + where: VerificationTokenWhereUniqueInput + } /** * VerificationToken updateMany */ - export type VerificationTokenUpdateManyArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type VerificationTokenUpdateManyArgs = { /** * The data used to update VerificationTokens. */ - data: XOR< - VerificationTokenUpdateManyMutationInput, - VerificationTokenUncheckedUpdateManyInput - >; + data: XOR /** * Filter which VerificationTokens to update */ - where?: VerificationTokenWhereInput; + where?: VerificationTokenWhereInput /** * Limit how many VerificationTokens to update. */ - limit?: number; - }; + limit?: number + } /** * VerificationToken upsert */ - export type VerificationTokenUpsertArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type VerificationTokenUpsertArgs = { /** * Select specific fields to fetch from the VerificationToken */ - select?: VerificationTokenSelect | null; + select?: VerificationTokenSelect | null /** * Omit specific fields from the VerificationToken */ - omit?: VerificationTokenOmit | null; + omit?: VerificationTokenOmit | null /** * The filter to search for the VerificationToken to update in case it exists. */ - where: VerificationTokenWhereUniqueInput; + where: VerificationTokenWhereUniqueInput /** * In case the VerificationToken found by the `where` argument doesn't exist, create a new VerificationToken with this data. */ - create: XOR< - VerificationTokenCreateInput, - VerificationTokenUncheckedCreateInput - >; + create: XOR /** * In case the VerificationToken was found with the provided `where` argument, update it with this data. */ - update: XOR< - VerificationTokenUpdateInput, - VerificationTokenUncheckedUpdateInput - >; - }; + update: XOR + } /** * VerificationToken delete */ - export type VerificationTokenDeleteArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type VerificationTokenDeleteArgs = { /** * Select specific fields to fetch from the VerificationToken */ - select?: VerificationTokenSelect | null; + select?: VerificationTokenSelect | null /** * Omit specific fields from the VerificationToken */ - omit?: VerificationTokenOmit | null; + omit?: VerificationTokenOmit | null /** * Filter which VerificationToken to delete. */ - where: VerificationTokenWhereUniqueInput; - }; + where: VerificationTokenWhereUniqueInput + } /** * VerificationToken deleteMany */ - export type VerificationTokenDeleteManyArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type VerificationTokenDeleteManyArgs = { /** * Filter which VerificationTokens to delete */ - where?: VerificationTokenWhereInput; + where?: VerificationTokenWhereInput /** * Limit how many VerificationTokens to delete. */ - limit?: number; - }; + limit?: number + } /** * VerificationToken without action */ - export type VerificationTokenDefaultArgs< - ExtArgs extends $Extensions.InternalArgs = $Extensions.DefaultArgs, - > = { + export type VerificationTokenDefaultArgs = { /** * Select specific fields to fetch from the VerificationToken */ - select?: VerificationTokenSelect | null; + select?: VerificationTokenSelect | null /** * Omit specific fields from the VerificationToken */ - omit?: VerificationTokenOmit | null; - }; + omit?: VerificationTokenOmit | null + } + + + /** + * Model Shop + */ + + export type AggregateShop = { + _count: ShopCountAggregateOutputType | null + _avg: ShopAvgAggregateOutputType | null + _sum: ShopSumAggregateOutputType | null + _min: ShopMinAggregateOutputType | null + _max: ShopMaxAggregateOutputType | null + } + + export type ShopAvgAggregateOutputType = { + id: number | null + } + + export type ShopSumAggregateOutputType = { + id: number | null + } + + export type ShopMinAggregateOutputType = { + id: number | null + userId: string | null + label: string | null + } + + export type ShopMaxAggregateOutputType = { + id: number | null + userId: string | null + label: string | null + } + + export type ShopCountAggregateOutputType = { + id: number + userId: number + label: number + _all: number + } + + + export type ShopAvgAggregateInputType = { + id?: true + } + + export type ShopSumAggregateInputType = { + id?: true + } + + export type ShopMinAggregateInputType = { + id?: true + userId?: true + label?: true + } + + export type ShopMaxAggregateInputType = { + id?: true + userId?: true + label?: true + } + + export type ShopCountAggregateInputType = { + id?: true + userId?: true + label?: true + _all?: true + } + + export type ShopAggregateArgs = { + /** + * Filter which Shop to aggregate. + */ + where?: ShopWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Shops to fetch. + */ + orderBy?: ShopOrderByWithRelationInput | ShopOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: ShopWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Shops from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` Shops. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned Shops + **/ + _count?: true | ShopCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: ShopAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: ShopSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: ShopMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: ShopMaxAggregateInputType + } + + export type GetShopAggregateType = { + [P in keyof T & keyof AggregateShop]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type ShopGroupByArgs = { + where?: ShopWhereInput + orderBy?: ShopOrderByWithAggregationInput | ShopOrderByWithAggregationInput[] + by: ShopScalarFieldEnum[] | ShopScalarFieldEnum + having?: ShopScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: ShopCountAggregateInputType | true + _avg?: ShopAvgAggregateInputType + _sum?: ShopSumAggregateInputType + _min?: ShopMinAggregateInputType + _max?: ShopMaxAggregateInputType + } + + export type ShopGroupByOutputType = { + id: number + userId: string + label: string + _count: ShopCountAggregateOutputType | null + _avg: ShopAvgAggregateOutputType | null + _sum: ShopSumAggregateOutputType | null + _min: ShopMinAggregateOutputType | null + _max: ShopMaxAggregateOutputType | null + } + + type GetShopGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof ShopGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type ShopSelect = $Extensions.GetSelect<{ + id?: boolean + userId?: boolean + label?: boolean + user?: boolean | UserDefaultArgs + items?: boolean | Shop$itemsArgs + sellables?: boolean | Shop$sellablesArgs + _count?: boolean | ShopCountOutputTypeDefaultArgs + }, ExtArgs["result"]["shop"]> + + + + export type ShopSelectScalar = { + id?: boolean + userId?: boolean + label?: boolean + } + + export type ShopOmit = $Extensions.GetOmit<"id" | "userId" | "label", ExtArgs["result"]["shop"]> + export type ShopInclude = { + user?: boolean | UserDefaultArgs + items?: boolean | Shop$itemsArgs + sellables?: boolean | Shop$sellablesArgs + _count?: boolean | ShopCountOutputTypeDefaultArgs + } + + export type $ShopPayload = { + name: "Shop" + objects: { + user: Prisma.$UserPayload + items: Prisma.$ItemPayload[] + sellables: Prisma.$SellablePayload[] + } + scalars: $Extensions.GetPayloadResult<{ + id: number + userId: string + label: string + }, ExtArgs["result"]["shop"]> + composites: {} + } + + type ShopGetPayload = $Result.GetResult + + type ShopCountArgs = + Omit & { + select?: ShopCountAggregateInputType | true + } + + export interface ShopDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['Shop'], meta: { name: 'Shop' } } + /** + * Find zero or one Shop that matches the filter. + * @param {ShopFindUniqueArgs} args - Arguments to find a Shop + * @example + * // Get one Shop + * const shop = await prisma.shop.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__ShopClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one Shop that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {ShopFindUniqueOrThrowArgs} args - Arguments to find a Shop + * @example + * // Get one Shop + * const shop = await prisma.shop.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__ShopClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Shop that matches the filter. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ShopFindFirstArgs} args - Arguments to find a Shop + * @example + * // Get one Shop + * const shop = await prisma.shop.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__ShopClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Shop that matches the filter or + * throw `PrismaKnownClientError` with `P2025` code if no matches were found. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ShopFindFirstOrThrowArgs} args - Arguments to find a Shop + * @example + * // Get one Shop + * const shop = await prisma.shop.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__ShopClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more Shops that matches the filter. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ShopFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all Shops + * const shops = await prisma.shop.findMany() + * + * // Get first 10 Shops + * const shops = await prisma.shop.findMany({ take: 10 }) + * + * // Only select the `id` + * const shopWithIdOnly = await prisma.shop.findMany({ select: { id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a Shop. + * @param {ShopCreateArgs} args - Arguments to create a Shop. + * @example + * // Create one Shop + * const Shop = await prisma.shop.create({ + * data: { + * // ... data to create a Shop + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__ShopClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many Shops. + * @param {ShopCreateManyArgs} args - Arguments to create many Shops. + * @example + * // Create many Shops + * const shop = await prisma.shop.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Delete a Shop. + * @param {ShopDeleteArgs} args - Arguments to delete one Shop. + * @example + * // Delete one Shop + * const Shop = await prisma.shop.delete({ + * where: { + * // ... filter to delete one Shop + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__ShopClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one Shop. + * @param {ShopUpdateArgs} args - Arguments to update one Shop. + * @example + * // Update one Shop + * const shop = await prisma.shop.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__ShopClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more Shops. + * @param {ShopDeleteManyArgs} args - Arguments to filter Shops to delete. + * @example + * // Delete a few Shops + * const { count } = await prisma.shop.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Shops. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ShopUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many Shops + * const shop = await prisma.shop.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Create or update one Shop. + * @param {ShopUpsertArgs} args - Arguments to update or create a Shop. + * @example + * // Update or create a Shop + * const shop = await prisma.shop.upsert({ + * create: { + * // ... data to create a Shop + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the Shop we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__ShopClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of Shops. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ShopCountArgs} args - Arguments to filter Shops to count. + * @example + * // Count the number of Shops + * const count = await prisma.shop.count({ + * where: { + * // ... the filter for the Shops we want to count + * } + * }) + **/ + count( + args?: Subset, + ): Prisma.PrismaPromise< + T extends $Utils.Record<'select', any> + ? T['select'] extends true + ? number + : GetScalarType + : number + > + + /** + * Allows you to perform aggregations operations on a Shop. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ShopAggregateArgs} args - Select which aggregations you would like to apply and on what fields. + * @example + * // Ordered by age ascending + * // Where email contains prisma.io + * // Limited to the 10 users + * const aggregations = await prisma.user.aggregate({ + * _avg: { + * age: true, + * }, + * where: { + * email: { + * contains: "prisma.io", + * }, + * }, + * orderBy: { + * age: "asc", + * }, + * take: 10, + * }) + **/ + aggregate(args: Subset): Prisma.PrismaPromise> + + /** + * Group by Shop. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ShopGroupByArgs} args - Group by arguments. + * @example + * // Group by city, order by createdAt, get count + * const result = await prisma.user.groupBy({ + * by: ['city', 'createdAt'], + * orderBy: { + * createdAt: true + * }, + * _count: { + * _all: true + * }, + * }) + * + **/ + groupBy< + T extends ShopGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: ShopGroupByArgs['orderBy'] } + : { orderBy?: ShopGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetShopGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the Shop model + */ + readonly fields: ShopFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for Shop. + * Why is this prefixed with `Prisma__`? + * Because we want to prevent naming conflicts as mentioned in + * https://github.com/prisma/prisma-client-js/issues/707 + */ + export interface Prisma__ShopClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + user = {}>(args?: Subset>): Prisma__UserClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> + items = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions> | Null> + sellables = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions> | Null> + /** + * Attaches callbacks for the resolution and/or rejection of the Promise. + * @param onfulfilled The callback to execute when the Promise is resolved. + * @param onrejected The callback to execute when the Promise is rejected. + * @returns A Promise for the completion of which ever callback is executed. + */ + then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise + /** + * Attaches a callback for only the rejection of the Promise. + * @param onrejected The callback to execute when the Promise is rejected. + * @returns A Promise for the completion of the callback. + */ + catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise + /** + * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The + * resolved value cannot be modified from the callback. + * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). + * @returns A Promise for the completion of the callback. + */ + finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise + } + + + + + /** + * Fields of the Shop model + */ + interface ShopFieldRefs { + readonly id: FieldRef<"Shop", 'Int'> + readonly userId: FieldRef<"Shop", 'String'> + readonly label: FieldRef<"Shop", 'String'> + } + + + // Custom InputTypes + /** + * Shop findUnique + */ + export type ShopFindUniqueArgs = { + /** + * Select specific fields to fetch from the Shop + */ + select?: ShopSelect | null + /** + * Omit specific fields from the Shop + */ + omit?: ShopOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: ShopInclude | null + /** + * Filter, which Shop to fetch. + */ + where: ShopWhereUniqueInput + } + + /** + * Shop findUniqueOrThrow + */ + export type ShopFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the Shop + */ + select?: ShopSelect | null + /** + * Omit specific fields from the Shop + */ + omit?: ShopOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: ShopInclude | null + /** + * Filter, which Shop to fetch. + */ + where: ShopWhereUniqueInput + } + + /** + * Shop findFirst + */ + export type ShopFindFirstArgs = { + /** + * Select specific fields to fetch from the Shop + */ + select?: ShopSelect | null + /** + * Omit specific fields from the Shop + */ + omit?: ShopOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: ShopInclude | null + /** + * Filter, which Shop to fetch. + */ + where?: ShopWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Shops to fetch. + */ + orderBy?: ShopOrderByWithRelationInput | ShopOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for Shops. + */ + cursor?: ShopWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Shops from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` Shops. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of Shops. + */ + distinct?: ShopScalarFieldEnum | ShopScalarFieldEnum[] + } + + /** + * Shop findFirstOrThrow + */ + export type ShopFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the Shop + */ + select?: ShopSelect | null + /** + * Omit specific fields from the Shop + */ + omit?: ShopOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: ShopInclude | null + /** + * Filter, which Shop to fetch. + */ + where?: ShopWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Shops to fetch. + */ + orderBy?: ShopOrderByWithRelationInput | ShopOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for Shops. + */ + cursor?: ShopWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Shops from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` Shops. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of Shops. + */ + distinct?: ShopScalarFieldEnum | ShopScalarFieldEnum[] + } + + /** + * Shop findMany + */ + export type ShopFindManyArgs = { + /** + * Select specific fields to fetch from the Shop + */ + select?: ShopSelect | null + /** + * Omit specific fields from the Shop + */ + omit?: ShopOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: ShopInclude | null + /** + * Filter, which Shops to fetch. + */ + where?: ShopWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Shops to fetch. + */ + orderBy?: ShopOrderByWithRelationInput | ShopOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing Shops. + */ + cursor?: ShopWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Shops from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` Shops. + */ + skip?: number + distinct?: ShopScalarFieldEnum | ShopScalarFieldEnum[] + } + + /** + * Shop create + */ + export type ShopCreateArgs = { + /** + * Select specific fields to fetch from the Shop + */ + select?: ShopSelect | null + /** + * Omit specific fields from the Shop + */ + omit?: ShopOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: ShopInclude | null + /** + * The data needed to create a Shop. + */ + data: XOR + } + + /** + * Shop createMany + */ + export type ShopCreateManyArgs = { + /** + * The data used to create many Shops. + */ + data: ShopCreateManyInput | ShopCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * Shop update + */ + export type ShopUpdateArgs = { + /** + * Select specific fields to fetch from the Shop + */ + select?: ShopSelect | null + /** + * Omit specific fields from the Shop + */ + omit?: ShopOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: ShopInclude | null + /** + * The data needed to update a Shop. + */ + data: XOR + /** + * Choose, which Shop to update. + */ + where: ShopWhereUniqueInput + } + + /** + * Shop updateMany + */ + export type ShopUpdateManyArgs = { + /** + * The data used to update Shops. + */ + data: XOR + /** + * Filter which Shops to update + */ + where?: ShopWhereInput + /** + * Limit how many Shops to update. + */ + limit?: number + } + + /** + * Shop upsert + */ + export type ShopUpsertArgs = { + /** + * Select specific fields to fetch from the Shop + */ + select?: ShopSelect | null + /** + * Omit specific fields from the Shop + */ + omit?: ShopOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: ShopInclude | null + /** + * The filter to search for the Shop to update in case it exists. + */ + where: ShopWhereUniqueInput + /** + * In case the Shop found by the `where` argument doesn't exist, create a new Shop with this data. + */ + create: XOR + /** + * In case the Shop was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * Shop delete + */ + export type ShopDeleteArgs = { + /** + * Select specific fields to fetch from the Shop + */ + select?: ShopSelect | null + /** + * Omit specific fields from the Shop + */ + omit?: ShopOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: ShopInclude | null + /** + * Filter which Shop to delete. + */ + where: ShopWhereUniqueInput + } + + /** + * Shop deleteMany + */ + export type ShopDeleteManyArgs = { + /** + * Filter which Shops to delete + */ + where?: ShopWhereInput + /** + * Limit how many Shops to delete. + */ + limit?: number + } + + /** + * Shop.items + */ + export type Shop$itemsArgs = { + /** + * Select specific fields to fetch from the Item + */ + select?: ItemSelect | null + /** + * Omit specific fields from the Item + */ + omit?: ItemOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: ItemInclude | null + where?: ItemWhereInput + orderBy?: ItemOrderByWithRelationInput | ItemOrderByWithRelationInput[] + cursor?: ItemWhereUniqueInput + take?: number + skip?: number + distinct?: ItemScalarFieldEnum | ItemScalarFieldEnum[] + } + + /** + * Shop.sellables + */ + export type Shop$sellablesArgs = { + /** + * Select specific fields to fetch from the Sellable + */ + select?: SellableSelect | null + /** + * Omit specific fields from the Sellable + */ + omit?: SellableOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: SellableInclude | null + where?: SellableWhereInput + orderBy?: SellableOrderByWithRelationInput | SellableOrderByWithRelationInput[] + cursor?: SellableWhereUniqueInput + take?: number + skip?: number + distinct?: SellableScalarFieldEnum | SellableScalarFieldEnum[] + } + + /** + * Shop without action + */ + export type ShopDefaultArgs = { + /** + * Select specific fields to fetch from the Shop + */ + select?: ShopSelect | null + /** + * Omit specific fields from the Shop + */ + omit?: ShopOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: ShopInclude | null + } + + + /** + * Model Item + */ + + export type AggregateItem = { + _count: ItemCountAggregateOutputType | null + _avg: ItemAvgAggregateOutputType | null + _sum: ItemSumAggregateOutputType | null + _min: ItemMinAggregateOutputType | null + _max: ItemMaxAggregateOutputType | null + } + + export type ItemAvgAggregateOutputType = { + stock: number | null + shopId: number | null + } + + export type ItemSumAggregateOutputType = { + stock: number | null + shopId: number | null + } + + export type ItemMinAggregateOutputType = { + item_name: string | null + stock: number | null + shopId: number | null + } + + export type ItemMaxAggregateOutputType = { + item_name: string | null + stock: number | null + shopId: number | null + } + + export type ItemCountAggregateOutputType = { + item_name: number + stock: number + shopId: number + _all: number + } + + + export type ItemAvgAggregateInputType = { + stock?: true + shopId?: true + } + + export type ItemSumAggregateInputType = { + stock?: true + shopId?: true + } + + export type ItemMinAggregateInputType = { + item_name?: true + stock?: true + shopId?: true + } + + export type ItemMaxAggregateInputType = { + item_name?: true + stock?: true + shopId?: true + } + + export type ItemCountAggregateInputType = { + item_name?: true + stock?: true + shopId?: true + _all?: true + } + + export type ItemAggregateArgs = { + /** + * Filter which Item to aggregate. + */ + where?: ItemWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Items to fetch. + */ + orderBy?: ItemOrderByWithRelationInput | ItemOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: ItemWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Items from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` Items. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned Items + **/ + _count?: true | ItemCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: ItemAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: ItemSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: ItemMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: ItemMaxAggregateInputType + } + + export type GetItemAggregateType = { + [P in keyof T & keyof AggregateItem]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type ItemGroupByArgs = { + where?: ItemWhereInput + orderBy?: ItemOrderByWithAggregationInput | ItemOrderByWithAggregationInput[] + by: ItemScalarFieldEnum[] | ItemScalarFieldEnum + having?: ItemScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: ItemCountAggregateInputType | true + _avg?: ItemAvgAggregateInputType + _sum?: ItemSumAggregateInputType + _min?: ItemMinAggregateInputType + _max?: ItemMaxAggregateInputType + } + + export type ItemGroupByOutputType = { + item_name: string + stock: number + shopId: number + _count: ItemCountAggregateOutputType | null + _avg: ItemAvgAggregateOutputType | null + _sum: ItemSumAggregateOutputType | null + _min: ItemMinAggregateOutputType | null + _max: ItemMaxAggregateOutputType | null + } + + type GetItemGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof ItemGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type ItemSelect = $Extensions.GetSelect<{ + item_name?: boolean + stock?: boolean + shopId?: boolean + shop?: boolean | ShopDefaultArgs + sellables?: boolean | Item$sellablesArgs + _count?: boolean | ItemCountOutputTypeDefaultArgs + }, ExtArgs["result"]["item"]> + + + + export type ItemSelectScalar = { + item_name?: boolean + stock?: boolean + shopId?: boolean + } + + export type ItemOmit = $Extensions.GetOmit<"item_name" | "stock" | "shopId", ExtArgs["result"]["item"]> + export type ItemInclude = { + shop?: boolean | ShopDefaultArgs + sellables?: boolean | Item$sellablesArgs + _count?: boolean | ItemCountOutputTypeDefaultArgs + } + + export type $ItemPayload = { + name: "Item" + objects: { + shop: Prisma.$ShopPayload + sellables: Prisma.$SellablePayload[] + } + scalars: $Extensions.GetPayloadResult<{ + item_name: string + stock: number + shopId: number + }, ExtArgs["result"]["item"]> + composites: {} + } + + type ItemGetPayload = $Result.GetResult + + type ItemCountArgs = + Omit & { + select?: ItemCountAggregateInputType | true + } + + export interface ItemDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['Item'], meta: { name: 'Item' } } + /** + * Find zero or one Item that matches the filter. + * @param {ItemFindUniqueArgs} args - Arguments to find a Item + * @example + * // Get one Item + * const item = await prisma.item.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__ItemClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one Item that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {ItemFindUniqueOrThrowArgs} args - Arguments to find a Item + * @example + * // Get one Item + * const item = await prisma.item.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__ItemClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Item that matches the filter. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ItemFindFirstArgs} args - Arguments to find a Item + * @example + * // Get one Item + * const item = await prisma.item.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__ItemClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Item that matches the filter or + * throw `PrismaKnownClientError` with `P2025` code if no matches were found. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ItemFindFirstOrThrowArgs} args - Arguments to find a Item + * @example + * // Get one Item + * const item = await prisma.item.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__ItemClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more Items that matches the filter. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ItemFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all Items + * const items = await prisma.item.findMany() + * + * // Get first 10 Items + * const items = await prisma.item.findMany({ take: 10 }) + * + * // Only select the `item_name` + * const itemWithItem_nameOnly = await prisma.item.findMany({ select: { item_name: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a Item. + * @param {ItemCreateArgs} args - Arguments to create a Item. + * @example + * // Create one Item + * const Item = await prisma.item.create({ + * data: { + * // ... data to create a Item + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__ItemClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many Items. + * @param {ItemCreateManyArgs} args - Arguments to create many Items. + * @example + * // Create many Items + * const item = await prisma.item.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Delete a Item. + * @param {ItemDeleteArgs} args - Arguments to delete one Item. + * @example + * // Delete one Item + * const Item = await prisma.item.delete({ + * where: { + * // ... filter to delete one Item + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__ItemClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one Item. + * @param {ItemUpdateArgs} args - Arguments to update one Item. + * @example + * // Update one Item + * const item = await prisma.item.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__ItemClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more Items. + * @param {ItemDeleteManyArgs} args - Arguments to filter Items to delete. + * @example + * // Delete a few Items + * const { count } = await prisma.item.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Items. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ItemUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many Items + * const item = await prisma.item.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Create or update one Item. + * @param {ItemUpsertArgs} args - Arguments to update or create a Item. + * @example + * // Update or create a Item + * const item = await prisma.item.upsert({ + * create: { + * // ... data to create a Item + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the Item we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__ItemClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of Items. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ItemCountArgs} args - Arguments to filter Items to count. + * @example + * // Count the number of Items + * const count = await prisma.item.count({ + * where: { + * // ... the filter for the Items we want to count + * } + * }) + **/ + count( + args?: Subset, + ): Prisma.PrismaPromise< + T extends $Utils.Record<'select', any> + ? T['select'] extends true + ? number + : GetScalarType + : number + > + + /** + * Allows you to perform aggregations operations on a Item. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ItemAggregateArgs} args - Select which aggregations you would like to apply and on what fields. + * @example + * // Ordered by age ascending + * // Where email contains prisma.io + * // Limited to the 10 users + * const aggregations = await prisma.user.aggregate({ + * _avg: { + * age: true, + * }, + * where: { + * email: { + * contains: "prisma.io", + * }, + * }, + * orderBy: { + * age: "asc", + * }, + * take: 10, + * }) + **/ + aggregate(args: Subset): Prisma.PrismaPromise> + + /** + * Group by Item. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ItemGroupByArgs} args - Group by arguments. + * @example + * // Group by city, order by createdAt, get count + * const result = await prisma.user.groupBy({ + * by: ['city', 'createdAt'], + * orderBy: { + * createdAt: true + * }, + * _count: { + * _all: true + * }, + * }) + * + **/ + groupBy< + T extends ItemGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: ItemGroupByArgs['orderBy'] } + : { orderBy?: ItemGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetItemGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the Item model + */ + readonly fields: ItemFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for Item. + * Why is this prefixed with `Prisma__`? + * Because we want to prevent naming conflicts as mentioned in + * https://github.com/prisma/prisma-client-js/issues/707 + */ + export interface Prisma__ItemClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + shop = {}>(args?: Subset>): Prisma__ShopClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> + sellables = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions> | Null> + /** + * Attaches callbacks for the resolution and/or rejection of the Promise. + * @param onfulfilled The callback to execute when the Promise is resolved. + * @param onrejected The callback to execute when the Promise is rejected. + * @returns A Promise for the completion of which ever callback is executed. + */ + then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise + /** + * Attaches a callback for only the rejection of the Promise. + * @param onrejected The callback to execute when the Promise is rejected. + * @returns A Promise for the completion of the callback. + */ + catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise + /** + * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The + * resolved value cannot be modified from the callback. + * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). + * @returns A Promise for the completion of the callback. + */ + finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise + } + + + + + /** + * Fields of the Item model + */ + interface ItemFieldRefs { + readonly item_name: FieldRef<"Item", 'String'> + readonly stock: FieldRef<"Item", 'Int'> + readonly shopId: FieldRef<"Item", 'Int'> + } + + + // Custom InputTypes + /** + * Item findUnique + */ + export type ItemFindUniqueArgs = { + /** + * Select specific fields to fetch from the Item + */ + select?: ItemSelect | null + /** + * Omit specific fields from the Item + */ + omit?: ItemOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: ItemInclude | null + /** + * Filter, which Item to fetch. + */ + where: ItemWhereUniqueInput + } + + /** + * Item findUniqueOrThrow + */ + export type ItemFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the Item + */ + select?: ItemSelect | null + /** + * Omit specific fields from the Item + */ + omit?: ItemOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: ItemInclude | null + /** + * Filter, which Item to fetch. + */ + where: ItemWhereUniqueInput + } + + /** + * Item findFirst + */ + export type ItemFindFirstArgs = { + /** + * Select specific fields to fetch from the Item + */ + select?: ItemSelect | null + /** + * Omit specific fields from the Item + */ + omit?: ItemOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: ItemInclude | null + /** + * Filter, which Item to fetch. + */ + where?: ItemWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Items to fetch. + */ + orderBy?: ItemOrderByWithRelationInput | ItemOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for Items. + */ + cursor?: ItemWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Items from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` Items. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of Items. + */ + distinct?: ItemScalarFieldEnum | ItemScalarFieldEnum[] + } + + /** + * Item findFirstOrThrow + */ + export type ItemFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the Item + */ + select?: ItemSelect | null + /** + * Omit specific fields from the Item + */ + omit?: ItemOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: ItemInclude | null + /** + * Filter, which Item to fetch. + */ + where?: ItemWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Items to fetch. + */ + orderBy?: ItemOrderByWithRelationInput | ItemOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for Items. + */ + cursor?: ItemWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Items from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` Items. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of Items. + */ + distinct?: ItemScalarFieldEnum | ItemScalarFieldEnum[] + } + + /** + * Item findMany + */ + export type ItemFindManyArgs = { + /** + * Select specific fields to fetch from the Item + */ + select?: ItemSelect | null + /** + * Omit specific fields from the Item + */ + omit?: ItemOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: ItemInclude | null + /** + * Filter, which Items to fetch. + */ + where?: ItemWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Items to fetch. + */ + orderBy?: ItemOrderByWithRelationInput | ItemOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing Items. + */ + cursor?: ItemWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Items from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` Items. + */ + skip?: number + distinct?: ItemScalarFieldEnum | ItemScalarFieldEnum[] + } + + /** + * Item create + */ + export type ItemCreateArgs = { + /** + * Select specific fields to fetch from the Item + */ + select?: ItemSelect | null + /** + * Omit specific fields from the Item + */ + omit?: ItemOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: ItemInclude | null + /** + * The data needed to create a Item. + */ + data: XOR + } + + /** + * Item createMany + */ + export type ItemCreateManyArgs = { + /** + * The data used to create many Items. + */ + data: ItemCreateManyInput | ItemCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * Item update + */ + export type ItemUpdateArgs = { + /** + * Select specific fields to fetch from the Item + */ + select?: ItemSelect | null + /** + * Omit specific fields from the Item + */ + omit?: ItemOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: ItemInclude | null + /** + * The data needed to update a Item. + */ + data: XOR + /** + * Choose, which Item to update. + */ + where: ItemWhereUniqueInput + } + + /** + * Item updateMany + */ + export type ItemUpdateManyArgs = { + /** + * The data used to update Items. + */ + data: XOR + /** + * Filter which Items to update + */ + where?: ItemWhereInput + /** + * Limit how many Items to update. + */ + limit?: number + } + + /** + * Item upsert + */ + export type ItemUpsertArgs = { + /** + * Select specific fields to fetch from the Item + */ + select?: ItemSelect | null + /** + * Omit specific fields from the Item + */ + omit?: ItemOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: ItemInclude | null + /** + * The filter to search for the Item to update in case it exists. + */ + where: ItemWhereUniqueInput + /** + * In case the Item found by the `where` argument doesn't exist, create a new Item with this data. + */ + create: XOR + /** + * In case the Item was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * Item delete + */ + export type ItemDeleteArgs = { + /** + * Select specific fields to fetch from the Item + */ + select?: ItemSelect | null + /** + * Omit specific fields from the Item + */ + omit?: ItemOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: ItemInclude | null + /** + * Filter which Item to delete. + */ + where: ItemWhereUniqueInput + } + + /** + * Item deleteMany + */ + export type ItemDeleteManyArgs = { + /** + * Filter which Items to delete + */ + where?: ItemWhereInput + /** + * Limit how many Items to delete. + */ + limit?: number + } + + /** + * Item.sellables + */ + export type Item$sellablesArgs = { + /** + * Select specific fields to fetch from the Sellable + */ + select?: SellableSelect | null + /** + * Omit specific fields from the Sellable + */ + omit?: SellableOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: SellableInclude | null + where?: SellableWhereInput + orderBy?: SellableOrderByWithRelationInput | SellableOrderByWithRelationInput[] + cursor?: SellableWhereUniqueInput + take?: number + skip?: number + distinct?: SellableScalarFieldEnum | SellableScalarFieldEnum[] + } + + /** + * Item without action + */ + export type ItemDefaultArgs = { + /** + * Select specific fields to fetch from the Item + */ + select?: ItemSelect | null + /** + * Omit specific fields from the Item + */ + omit?: ItemOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: ItemInclude | null + } + + + /** + * Model Sellable + */ + + export type AggregateSellable = { + _count: SellableCountAggregateOutputType | null + _avg: SellableAvgAggregateOutputType | null + _sum: SellableSumAggregateOutputType | null + _min: SellableMinAggregateOutputType | null + _max: SellableMaxAggregateOutputType | null + } + + export type SellableAvgAggregateOutputType = { + amount: number | null + price: number | null + shopId: number | null + } + + export type SellableSumAggregateOutputType = { + amount: number | null + price: number | null + shopId: number | null + } + + export type SellableMinAggregateOutputType = { + id: string | null + item_name: string | null + amount: number | null + price: number | null + shopId: number | null + enabled: boolean | null + } + + export type SellableMaxAggregateOutputType = { + id: string | null + item_name: string | null + amount: number | null + price: number | null + shopId: number | null + enabled: boolean | null + } + + export type SellableCountAggregateOutputType = { + id: number + item_name: number + amount: number + price: number + shopId: number + enabled: number + _all: number + } + + + export type SellableAvgAggregateInputType = { + amount?: true + price?: true + shopId?: true + } + + export type SellableSumAggregateInputType = { + amount?: true + price?: true + shopId?: true + } + + export type SellableMinAggregateInputType = { + id?: true + item_name?: true + amount?: true + price?: true + shopId?: true + enabled?: true + } + + export type SellableMaxAggregateInputType = { + id?: true + item_name?: true + amount?: true + price?: true + shopId?: true + enabled?: true + } + + export type SellableCountAggregateInputType = { + id?: true + item_name?: true + amount?: true + price?: true + shopId?: true + enabled?: true + _all?: true + } + + export type SellableAggregateArgs = { + /** + * Filter which Sellable to aggregate. + */ + where?: SellableWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Sellables to fetch. + */ + orderBy?: SellableOrderByWithRelationInput | SellableOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: SellableWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Sellables from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` Sellables. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned Sellables + **/ + _count?: true | SellableCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: SellableAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: SellableSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: SellableMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: SellableMaxAggregateInputType + } + + export type GetSellableAggregateType = { + [P in keyof T & keyof AggregateSellable]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type SellableGroupByArgs = { + where?: SellableWhereInput + orderBy?: SellableOrderByWithAggregationInput | SellableOrderByWithAggregationInput[] + by: SellableScalarFieldEnum[] | SellableScalarFieldEnum + having?: SellableScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: SellableCountAggregateInputType | true + _avg?: SellableAvgAggregateInputType + _sum?: SellableSumAggregateInputType + _min?: SellableMinAggregateInputType + _max?: SellableMaxAggregateInputType + } + + export type SellableGroupByOutputType = { + id: string + item_name: string + amount: number + price: number + shopId: number + enabled: boolean + _count: SellableCountAggregateOutputType | null + _avg: SellableAvgAggregateOutputType | null + _sum: SellableSumAggregateOutputType | null + _min: SellableMinAggregateOutputType | null + _max: SellableMaxAggregateOutputType | null + } + + type GetSellableGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof SellableGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type SellableSelect = $Extensions.GetSelect<{ + id?: boolean + item_name?: boolean + amount?: boolean + price?: boolean + shopId?: boolean + enabled?: boolean + shop?: boolean | ShopDefaultArgs + item?: boolean | ItemDefaultArgs + cartItems?: boolean | Sellable$cartItemsArgs + _count?: boolean | SellableCountOutputTypeDefaultArgs + }, ExtArgs["result"]["sellable"]> + + + + export type SellableSelectScalar = { + id?: boolean + item_name?: boolean + amount?: boolean + price?: boolean + shopId?: boolean + enabled?: boolean + } + + export type SellableOmit = $Extensions.GetOmit<"id" | "item_name" | "amount" | "price" | "shopId" | "enabled", ExtArgs["result"]["sellable"]> + export type SellableInclude = { + shop?: boolean | ShopDefaultArgs + item?: boolean | ItemDefaultArgs + cartItems?: boolean | Sellable$cartItemsArgs + _count?: boolean | SellableCountOutputTypeDefaultArgs + } + + export type $SellablePayload = { + name: "Sellable" + objects: { + shop: Prisma.$ShopPayload + item: Prisma.$ItemPayload + cartItems: Prisma.$CartItemPayload[] + } + scalars: $Extensions.GetPayloadResult<{ + id: string + item_name: string + amount: number + price: number + shopId: number + enabled: boolean + }, ExtArgs["result"]["sellable"]> + composites: {} + } + + type SellableGetPayload = $Result.GetResult + + type SellableCountArgs = + Omit & { + select?: SellableCountAggregateInputType | true + } + + export interface SellableDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['Sellable'], meta: { name: 'Sellable' } } + /** + * Find zero or one Sellable that matches the filter. + * @param {SellableFindUniqueArgs} args - Arguments to find a Sellable + * @example + * // Get one Sellable + * const sellable = await prisma.sellable.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__SellableClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one Sellable that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {SellableFindUniqueOrThrowArgs} args - Arguments to find a Sellable + * @example + * // Get one Sellable + * const sellable = await prisma.sellable.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__SellableClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Sellable that matches the filter. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {SellableFindFirstArgs} args - Arguments to find a Sellable + * @example + * // Get one Sellable + * const sellable = await prisma.sellable.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__SellableClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Sellable that matches the filter or + * throw `PrismaKnownClientError` with `P2025` code if no matches were found. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {SellableFindFirstOrThrowArgs} args - Arguments to find a Sellable + * @example + * // Get one Sellable + * const sellable = await prisma.sellable.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__SellableClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more Sellables that matches the filter. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {SellableFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all Sellables + * const sellables = await prisma.sellable.findMany() + * + * // Get first 10 Sellables + * const sellables = await prisma.sellable.findMany({ take: 10 }) + * + * // Only select the `id` + * const sellableWithIdOnly = await prisma.sellable.findMany({ select: { id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a Sellable. + * @param {SellableCreateArgs} args - Arguments to create a Sellable. + * @example + * // Create one Sellable + * const Sellable = await prisma.sellable.create({ + * data: { + * // ... data to create a Sellable + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__SellableClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many Sellables. + * @param {SellableCreateManyArgs} args - Arguments to create many Sellables. + * @example + * // Create many Sellables + * const sellable = await prisma.sellable.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Delete a Sellable. + * @param {SellableDeleteArgs} args - Arguments to delete one Sellable. + * @example + * // Delete one Sellable + * const Sellable = await prisma.sellable.delete({ + * where: { + * // ... filter to delete one Sellable + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__SellableClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one Sellable. + * @param {SellableUpdateArgs} args - Arguments to update one Sellable. + * @example + * // Update one Sellable + * const sellable = await prisma.sellable.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__SellableClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more Sellables. + * @param {SellableDeleteManyArgs} args - Arguments to filter Sellables to delete. + * @example + * // Delete a few Sellables + * const { count } = await prisma.sellable.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Sellables. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {SellableUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many Sellables + * const sellable = await prisma.sellable.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Create or update one Sellable. + * @param {SellableUpsertArgs} args - Arguments to update or create a Sellable. + * @example + * // Update or create a Sellable + * const sellable = await prisma.sellable.upsert({ + * create: { + * // ... data to create a Sellable + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the Sellable we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__SellableClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of Sellables. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {SellableCountArgs} args - Arguments to filter Sellables to count. + * @example + * // Count the number of Sellables + * const count = await prisma.sellable.count({ + * where: { + * // ... the filter for the Sellables we want to count + * } + * }) + **/ + count( + args?: Subset, + ): Prisma.PrismaPromise< + T extends $Utils.Record<'select', any> + ? T['select'] extends true + ? number + : GetScalarType + : number + > + + /** + * Allows you to perform aggregations operations on a Sellable. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {SellableAggregateArgs} args - Select which aggregations you would like to apply and on what fields. + * @example + * // Ordered by age ascending + * // Where email contains prisma.io + * // Limited to the 10 users + * const aggregations = await prisma.user.aggregate({ + * _avg: { + * age: true, + * }, + * where: { + * email: { + * contains: "prisma.io", + * }, + * }, + * orderBy: { + * age: "asc", + * }, + * take: 10, + * }) + **/ + aggregate(args: Subset): Prisma.PrismaPromise> + + /** + * Group by Sellable. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {SellableGroupByArgs} args - Group by arguments. + * @example + * // Group by city, order by createdAt, get count + * const result = await prisma.user.groupBy({ + * by: ['city', 'createdAt'], + * orderBy: { + * createdAt: true + * }, + * _count: { + * _all: true + * }, + * }) + * + **/ + groupBy< + T extends SellableGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: SellableGroupByArgs['orderBy'] } + : { orderBy?: SellableGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetSellableGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the Sellable model + */ + readonly fields: SellableFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for Sellable. + * Why is this prefixed with `Prisma__`? + * Because we want to prevent naming conflicts as mentioned in + * https://github.com/prisma/prisma-client-js/issues/707 + */ + export interface Prisma__SellableClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + shop = {}>(args?: Subset>): Prisma__ShopClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> + item = {}>(args?: Subset>): Prisma__ItemClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> + cartItems = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions> | Null> + /** + * Attaches callbacks for the resolution and/or rejection of the Promise. + * @param onfulfilled The callback to execute when the Promise is resolved. + * @param onrejected The callback to execute when the Promise is rejected. + * @returns A Promise for the completion of which ever callback is executed. + */ + then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise + /** + * Attaches a callback for only the rejection of the Promise. + * @param onrejected The callback to execute when the Promise is rejected. + * @returns A Promise for the completion of the callback. + */ + catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise + /** + * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The + * resolved value cannot be modified from the callback. + * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). + * @returns A Promise for the completion of the callback. + */ + finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise + } + + + + + /** + * Fields of the Sellable model + */ + interface SellableFieldRefs { + readonly id: FieldRef<"Sellable", 'String'> + readonly item_name: FieldRef<"Sellable", 'String'> + readonly amount: FieldRef<"Sellable", 'Int'> + readonly price: FieldRef<"Sellable", 'Float'> + readonly shopId: FieldRef<"Sellable", 'Int'> + readonly enabled: FieldRef<"Sellable", 'Boolean'> + } + + + // Custom InputTypes + /** + * Sellable findUnique + */ + export type SellableFindUniqueArgs = { + /** + * Select specific fields to fetch from the Sellable + */ + select?: SellableSelect | null + /** + * Omit specific fields from the Sellable + */ + omit?: SellableOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: SellableInclude | null + /** + * Filter, which Sellable to fetch. + */ + where: SellableWhereUniqueInput + } + + /** + * Sellable findUniqueOrThrow + */ + export type SellableFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the Sellable + */ + select?: SellableSelect | null + /** + * Omit specific fields from the Sellable + */ + omit?: SellableOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: SellableInclude | null + /** + * Filter, which Sellable to fetch. + */ + where: SellableWhereUniqueInput + } + + /** + * Sellable findFirst + */ + export type SellableFindFirstArgs = { + /** + * Select specific fields to fetch from the Sellable + */ + select?: SellableSelect | null + /** + * Omit specific fields from the Sellable + */ + omit?: SellableOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: SellableInclude | null + /** + * Filter, which Sellable to fetch. + */ + where?: SellableWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Sellables to fetch. + */ + orderBy?: SellableOrderByWithRelationInput | SellableOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for Sellables. + */ + cursor?: SellableWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Sellables from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` Sellables. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of Sellables. + */ + distinct?: SellableScalarFieldEnum | SellableScalarFieldEnum[] + } + + /** + * Sellable findFirstOrThrow + */ + export type SellableFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the Sellable + */ + select?: SellableSelect | null + /** + * Omit specific fields from the Sellable + */ + omit?: SellableOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: SellableInclude | null + /** + * Filter, which Sellable to fetch. + */ + where?: SellableWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Sellables to fetch. + */ + orderBy?: SellableOrderByWithRelationInput | SellableOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for Sellables. + */ + cursor?: SellableWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Sellables from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` Sellables. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of Sellables. + */ + distinct?: SellableScalarFieldEnum | SellableScalarFieldEnum[] + } + + /** + * Sellable findMany + */ + export type SellableFindManyArgs = { + /** + * Select specific fields to fetch from the Sellable + */ + select?: SellableSelect | null + /** + * Omit specific fields from the Sellable + */ + omit?: SellableOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: SellableInclude | null + /** + * Filter, which Sellables to fetch. + */ + where?: SellableWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Sellables to fetch. + */ + orderBy?: SellableOrderByWithRelationInput | SellableOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing Sellables. + */ + cursor?: SellableWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Sellables from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` Sellables. + */ + skip?: number + distinct?: SellableScalarFieldEnum | SellableScalarFieldEnum[] + } + + /** + * Sellable create + */ + export type SellableCreateArgs = { + /** + * Select specific fields to fetch from the Sellable + */ + select?: SellableSelect | null + /** + * Omit specific fields from the Sellable + */ + omit?: SellableOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: SellableInclude | null + /** + * The data needed to create a Sellable. + */ + data: XOR + } + + /** + * Sellable createMany + */ + export type SellableCreateManyArgs = { + /** + * The data used to create many Sellables. + */ + data: SellableCreateManyInput | SellableCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * Sellable update + */ + export type SellableUpdateArgs = { + /** + * Select specific fields to fetch from the Sellable + */ + select?: SellableSelect | null + /** + * Omit specific fields from the Sellable + */ + omit?: SellableOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: SellableInclude | null + /** + * The data needed to update a Sellable. + */ + data: XOR + /** + * Choose, which Sellable to update. + */ + where: SellableWhereUniqueInput + } + + /** + * Sellable updateMany + */ + export type SellableUpdateManyArgs = { + /** + * The data used to update Sellables. + */ + data: XOR + /** + * Filter which Sellables to update + */ + where?: SellableWhereInput + /** + * Limit how many Sellables to update. + */ + limit?: number + } + + /** + * Sellable upsert + */ + export type SellableUpsertArgs = { + /** + * Select specific fields to fetch from the Sellable + */ + select?: SellableSelect | null + /** + * Omit specific fields from the Sellable + */ + omit?: SellableOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: SellableInclude | null + /** + * The filter to search for the Sellable to update in case it exists. + */ + where: SellableWhereUniqueInput + /** + * In case the Sellable found by the `where` argument doesn't exist, create a new Sellable with this data. + */ + create: XOR + /** + * In case the Sellable was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * Sellable delete + */ + export type SellableDeleteArgs = { + /** + * Select specific fields to fetch from the Sellable + */ + select?: SellableSelect | null + /** + * Omit specific fields from the Sellable + */ + omit?: SellableOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: SellableInclude | null + /** + * Filter which Sellable to delete. + */ + where: SellableWhereUniqueInput + } + + /** + * Sellable deleteMany + */ + export type SellableDeleteManyArgs = { + /** + * Filter which Sellables to delete + */ + where?: SellableWhereInput + /** + * Limit how many Sellables to delete. + */ + limit?: number + } + + /** + * Sellable.cartItems + */ + export type Sellable$cartItemsArgs = { + /** + * Select specific fields to fetch from the CartItem + */ + select?: CartItemSelect | null + /** + * Omit specific fields from the CartItem + */ + omit?: CartItemOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: CartItemInclude | null + where?: CartItemWhereInput + orderBy?: CartItemOrderByWithRelationInput | CartItemOrderByWithRelationInput[] + cursor?: CartItemWhereUniqueInput + take?: number + skip?: number + distinct?: CartItemScalarFieldEnum | CartItemScalarFieldEnum[] + } + + /** + * Sellable without action + */ + export type SellableDefaultArgs = { + /** + * Select specific fields to fetch from the Sellable + */ + select?: SellableSelect | null + /** + * Omit specific fields from the Sellable + */ + omit?: SellableOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: SellableInclude | null + } + + + /** + * Model Cart + */ + + export type AggregateCart = { + _count: CartCountAggregateOutputType | null + _min: CartMinAggregateOutputType | null + _max: CartMaxAggregateOutputType | null + } + + export type CartMinAggregateOutputType = { + id: string | null + userId: string | null + } + + export type CartMaxAggregateOutputType = { + id: string | null + userId: string | null + } + + export type CartCountAggregateOutputType = { + id: number + userId: number + _all: number + } + + + export type CartMinAggregateInputType = { + id?: true + userId?: true + } + + export type CartMaxAggregateInputType = { + id?: true + userId?: true + } + + export type CartCountAggregateInputType = { + id?: true + userId?: true + _all?: true + } + + export type CartAggregateArgs = { + /** + * Filter which Cart to aggregate. + */ + where?: CartWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Carts to fetch. + */ + orderBy?: CartOrderByWithRelationInput | CartOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: CartWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Carts from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` Carts. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned Carts + **/ + _count?: true | CartCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: CartMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: CartMaxAggregateInputType + } + + export type GetCartAggregateType = { + [P in keyof T & keyof AggregateCart]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type CartGroupByArgs = { + where?: CartWhereInput + orderBy?: CartOrderByWithAggregationInput | CartOrderByWithAggregationInput[] + by: CartScalarFieldEnum[] | CartScalarFieldEnum + having?: CartScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: CartCountAggregateInputType | true + _min?: CartMinAggregateInputType + _max?: CartMaxAggregateInputType + } + + export type CartGroupByOutputType = { + id: string + userId: string + _count: CartCountAggregateOutputType | null + _min: CartMinAggregateOutputType | null + _max: CartMaxAggregateOutputType | null + } + + type GetCartGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof CartGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type CartSelect = $Extensions.GetSelect<{ + id?: boolean + userId?: boolean + user?: boolean | UserDefaultArgs + cartItems?: boolean | Cart$cartItemsArgs + _count?: boolean | CartCountOutputTypeDefaultArgs + }, ExtArgs["result"]["cart"]> + + + + export type CartSelectScalar = { + id?: boolean + userId?: boolean + } + + export type CartOmit = $Extensions.GetOmit<"id" | "userId", ExtArgs["result"]["cart"]> + export type CartInclude = { + user?: boolean | UserDefaultArgs + cartItems?: boolean | Cart$cartItemsArgs + _count?: boolean | CartCountOutputTypeDefaultArgs + } + + export type $CartPayload = { + name: "Cart" + objects: { + user: Prisma.$UserPayload + cartItems: Prisma.$CartItemPayload[] + } + scalars: $Extensions.GetPayloadResult<{ + id: string + userId: string + }, ExtArgs["result"]["cart"]> + composites: {} + } + + type CartGetPayload = $Result.GetResult + + type CartCountArgs = + Omit & { + select?: CartCountAggregateInputType | true + } + + export interface CartDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['Cart'], meta: { name: 'Cart' } } + /** + * Find zero or one Cart that matches the filter. + * @param {CartFindUniqueArgs} args - Arguments to find a Cart + * @example + * // Get one Cart + * const cart = await prisma.cart.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__CartClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one Cart that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {CartFindUniqueOrThrowArgs} args - Arguments to find a Cart + * @example + * // Get one Cart + * const cart = await prisma.cart.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__CartClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Cart that matches the filter. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {CartFindFirstArgs} args - Arguments to find a Cart + * @example + * // Get one Cart + * const cart = await prisma.cart.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__CartClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Cart that matches the filter or + * throw `PrismaKnownClientError` with `P2025` code if no matches were found. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {CartFindFirstOrThrowArgs} args - Arguments to find a Cart + * @example + * // Get one Cart + * const cart = await prisma.cart.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__CartClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more Carts that matches the filter. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {CartFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all Carts + * const carts = await prisma.cart.findMany() + * + * // Get first 10 Carts + * const carts = await prisma.cart.findMany({ take: 10 }) + * + * // Only select the `id` + * const cartWithIdOnly = await prisma.cart.findMany({ select: { id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a Cart. + * @param {CartCreateArgs} args - Arguments to create a Cart. + * @example + * // Create one Cart + * const Cart = await prisma.cart.create({ + * data: { + * // ... data to create a Cart + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__CartClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many Carts. + * @param {CartCreateManyArgs} args - Arguments to create many Carts. + * @example + * // Create many Carts + * const cart = await prisma.cart.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Delete a Cart. + * @param {CartDeleteArgs} args - Arguments to delete one Cart. + * @example + * // Delete one Cart + * const Cart = await prisma.cart.delete({ + * where: { + * // ... filter to delete one Cart + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__CartClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one Cart. + * @param {CartUpdateArgs} args - Arguments to update one Cart. + * @example + * // Update one Cart + * const cart = await prisma.cart.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__CartClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more Carts. + * @param {CartDeleteManyArgs} args - Arguments to filter Carts to delete. + * @example + * // Delete a few Carts + * const { count } = await prisma.cart.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Carts. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {CartUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many Carts + * const cart = await prisma.cart.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Create or update one Cart. + * @param {CartUpsertArgs} args - Arguments to update or create a Cart. + * @example + * // Update or create a Cart + * const cart = await prisma.cart.upsert({ + * create: { + * // ... data to create a Cart + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the Cart we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__CartClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of Carts. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {CartCountArgs} args - Arguments to filter Carts to count. + * @example + * // Count the number of Carts + * const count = await prisma.cart.count({ + * where: { + * // ... the filter for the Carts we want to count + * } + * }) + **/ + count( + args?: Subset, + ): Prisma.PrismaPromise< + T extends $Utils.Record<'select', any> + ? T['select'] extends true + ? number + : GetScalarType + : number + > + + /** + * Allows you to perform aggregations operations on a Cart. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {CartAggregateArgs} args - Select which aggregations you would like to apply and on what fields. + * @example + * // Ordered by age ascending + * // Where email contains prisma.io + * // Limited to the 10 users + * const aggregations = await prisma.user.aggregate({ + * _avg: { + * age: true, + * }, + * where: { + * email: { + * contains: "prisma.io", + * }, + * }, + * orderBy: { + * age: "asc", + * }, + * take: 10, + * }) + **/ + aggregate(args: Subset): Prisma.PrismaPromise> + + /** + * Group by Cart. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {CartGroupByArgs} args - Group by arguments. + * @example + * // Group by city, order by createdAt, get count + * const result = await prisma.user.groupBy({ + * by: ['city', 'createdAt'], + * orderBy: { + * createdAt: true + * }, + * _count: { + * _all: true + * }, + * }) + * + **/ + groupBy< + T extends CartGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: CartGroupByArgs['orderBy'] } + : { orderBy?: CartGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetCartGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the Cart model + */ + readonly fields: CartFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for Cart. + * Why is this prefixed with `Prisma__`? + * Because we want to prevent naming conflicts as mentioned in + * https://github.com/prisma/prisma-client-js/issues/707 + */ + export interface Prisma__CartClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + user = {}>(args?: Subset>): Prisma__UserClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> + cartItems = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions> | Null> + /** + * Attaches callbacks for the resolution and/or rejection of the Promise. + * @param onfulfilled The callback to execute when the Promise is resolved. + * @param onrejected The callback to execute when the Promise is rejected. + * @returns A Promise for the completion of which ever callback is executed. + */ + then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise + /** + * Attaches a callback for only the rejection of the Promise. + * @param onrejected The callback to execute when the Promise is rejected. + * @returns A Promise for the completion of the callback. + */ + catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise + /** + * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The + * resolved value cannot be modified from the callback. + * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). + * @returns A Promise for the completion of the callback. + */ + finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise + } + + + + + /** + * Fields of the Cart model + */ + interface CartFieldRefs { + readonly id: FieldRef<"Cart", 'String'> + readonly userId: FieldRef<"Cart", 'String'> + } + + + // Custom InputTypes + /** + * Cart findUnique + */ + export type CartFindUniqueArgs = { + /** + * Select specific fields to fetch from the Cart + */ + select?: CartSelect | null + /** + * Omit specific fields from the Cart + */ + omit?: CartOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: CartInclude | null + /** + * Filter, which Cart to fetch. + */ + where: CartWhereUniqueInput + } + + /** + * Cart findUniqueOrThrow + */ + export type CartFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the Cart + */ + select?: CartSelect | null + /** + * Omit specific fields from the Cart + */ + omit?: CartOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: CartInclude | null + /** + * Filter, which Cart to fetch. + */ + where: CartWhereUniqueInput + } + + /** + * Cart findFirst + */ + export type CartFindFirstArgs = { + /** + * Select specific fields to fetch from the Cart + */ + select?: CartSelect | null + /** + * Omit specific fields from the Cart + */ + omit?: CartOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: CartInclude | null + /** + * Filter, which Cart to fetch. + */ + where?: CartWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Carts to fetch. + */ + orderBy?: CartOrderByWithRelationInput | CartOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for Carts. + */ + cursor?: CartWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Carts from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` Carts. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of Carts. + */ + distinct?: CartScalarFieldEnum | CartScalarFieldEnum[] + } + + /** + * Cart findFirstOrThrow + */ + export type CartFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the Cart + */ + select?: CartSelect | null + /** + * Omit specific fields from the Cart + */ + omit?: CartOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: CartInclude | null + /** + * Filter, which Cart to fetch. + */ + where?: CartWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Carts to fetch. + */ + orderBy?: CartOrderByWithRelationInput | CartOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for Carts. + */ + cursor?: CartWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Carts from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` Carts. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of Carts. + */ + distinct?: CartScalarFieldEnum | CartScalarFieldEnum[] + } + + /** + * Cart findMany + */ + export type CartFindManyArgs = { + /** + * Select specific fields to fetch from the Cart + */ + select?: CartSelect | null + /** + * Omit specific fields from the Cart + */ + omit?: CartOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: CartInclude | null + /** + * Filter, which Carts to fetch. + */ + where?: CartWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Carts to fetch. + */ + orderBy?: CartOrderByWithRelationInput | CartOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing Carts. + */ + cursor?: CartWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Carts from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` Carts. + */ + skip?: number + distinct?: CartScalarFieldEnum | CartScalarFieldEnum[] + } + + /** + * Cart create + */ + export type CartCreateArgs = { + /** + * Select specific fields to fetch from the Cart + */ + select?: CartSelect | null + /** + * Omit specific fields from the Cart + */ + omit?: CartOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: CartInclude | null + /** + * The data needed to create a Cart. + */ + data: XOR + } + + /** + * Cart createMany + */ + export type CartCreateManyArgs = { + /** + * The data used to create many Carts. + */ + data: CartCreateManyInput | CartCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * Cart update + */ + export type CartUpdateArgs = { + /** + * Select specific fields to fetch from the Cart + */ + select?: CartSelect | null + /** + * Omit specific fields from the Cart + */ + omit?: CartOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: CartInclude | null + /** + * The data needed to update a Cart. + */ + data: XOR + /** + * Choose, which Cart to update. + */ + where: CartWhereUniqueInput + } + + /** + * Cart updateMany + */ + export type CartUpdateManyArgs = { + /** + * The data used to update Carts. + */ + data: XOR + /** + * Filter which Carts to update + */ + where?: CartWhereInput + /** + * Limit how many Carts to update. + */ + limit?: number + } + + /** + * Cart upsert + */ + export type CartUpsertArgs = { + /** + * Select specific fields to fetch from the Cart + */ + select?: CartSelect | null + /** + * Omit specific fields from the Cart + */ + omit?: CartOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: CartInclude | null + /** + * The filter to search for the Cart to update in case it exists. + */ + where: CartWhereUniqueInput + /** + * In case the Cart found by the `where` argument doesn't exist, create a new Cart with this data. + */ + create: XOR + /** + * In case the Cart was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * Cart delete + */ + export type CartDeleteArgs = { + /** + * Select specific fields to fetch from the Cart + */ + select?: CartSelect | null + /** + * Omit specific fields from the Cart + */ + omit?: CartOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: CartInclude | null + /** + * Filter which Cart to delete. + */ + where: CartWhereUniqueInput + } + + /** + * Cart deleteMany + */ + export type CartDeleteManyArgs = { + /** + * Filter which Carts to delete + */ + where?: CartWhereInput + /** + * Limit how many Carts to delete. + */ + limit?: number + } + + /** + * Cart.cartItems + */ + export type Cart$cartItemsArgs = { + /** + * Select specific fields to fetch from the CartItem + */ + select?: CartItemSelect | null + /** + * Omit specific fields from the CartItem + */ + omit?: CartItemOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: CartItemInclude | null + where?: CartItemWhereInput + orderBy?: CartItemOrderByWithRelationInput | CartItemOrderByWithRelationInput[] + cursor?: CartItemWhereUniqueInput + take?: number + skip?: number + distinct?: CartItemScalarFieldEnum | CartItemScalarFieldEnum[] + } + + /** + * Cart without action + */ + export type CartDefaultArgs = { + /** + * Select specific fields to fetch from the Cart + */ + select?: CartSelect | null + /** + * Omit specific fields from the Cart + */ + omit?: CartOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: CartInclude | null + } + + + /** + * Model CartItem + */ + + export type AggregateCartItem = { + _count: CartItemCountAggregateOutputType | null + _avg: CartItemAvgAggregateOutputType | null + _sum: CartItemSumAggregateOutputType | null + _min: CartItemMinAggregateOutputType | null + _max: CartItemMaxAggregateOutputType | null + } + + export type CartItemAvgAggregateOutputType = { + quantity: number | null + } + + export type CartItemSumAggregateOutputType = { + quantity: number | null + } + + export type CartItemMinAggregateOutputType = { + itemId: string | null + quantity: number | null + cartId: string | null + } + + export type CartItemMaxAggregateOutputType = { + itemId: string | null + quantity: number | null + cartId: string | null + } + + export type CartItemCountAggregateOutputType = { + itemId: number + quantity: number + cartId: number + _all: number + } + + + export type CartItemAvgAggregateInputType = { + quantity?: true + } + + export type CartItemSumAggregateInputType = { + quantity?: true + } + + export type CartItemMinAggregateInputType = { + itemId?: true + quantity?: true + cartId?: true + } + + export type CartItemMaxAggregateInputType = { + itemId?: true + quantity?: true + cartId?: true + } + + export type CartItemCountAggregateInputType = { + itemId?: true + quantity?: true + cartId?: true + _all?: true + } + + export type CartItemAggregateArgs = { + /** + * Filter which CartItem to aggregate. + */ + where?: CartItemWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of CartItems to fetch. + */ + orderBy?: CartItemOrderByWithRelationInput | CartItemOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: CartItemWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` CartItems from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` CartItems. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned CartItems + **/ + _count?: true | CartItemCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: CartItemAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: CartItemSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: CartItemMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: CartItemMaxAggregateInputType + } + + export type GetCartItemAggregateType = { + [P in keyof T & keyof AggregateCartItem]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type CartItemGroupByArgs = { + where?: CartItemWhereInput + orderBy?: CartItemOrderByWithAggregationInput | CartItemOrderByWithAggregationInput[] + by: CartItemScalarFieldEnum[] | CartItemScalarFieldEnum + having?: CartItemScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: CartItemCountAggregateInputType | true + _avg?: CartItemAvgAggregateInputType + _sum?: CartItemSumAggregateInputType + _min?: CartItemMinAggregateInputType + _max?: CartItemMaxAggregateInputType + } + + export type CartItemGroupByOutputType = { + itemId: string + quantity: number + cartId: string + _count: CartItemCountAggregateOutputType | null + _avg: CartItemAvgAggregateOutputType | null + _sum: CartItemSumAggregateOutputType | null + _min: CartItemMinAggregateOutputType | null + _max: CartItemMaxAggregateOutputType | null + } + + type GetCartItemGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof CartItemGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type CartItemSelect = $Extensions.GetSelect<{ + itemId?: boolean + quantity?: boolean + cartId?: boolean + cart?: boolean | CartDefaultArgs + sellable?: boolean | SellableDefaultArgs + }, ExtArgs["result"]["cartItem"]> + + + + export type CartItemSelectScalar = { + itemId?: boolean + quantity?: boolean + cartId?: boolean + } + + export type CartItemOmit = $Extensions.GetOmit<"itemId" | "quantity" | "cartId", ExtArgs["result"]["cartItem"]> + export type CartItemInclude = { + cart?: boolean | CartDefaultArgs + sellable?: boolean | SellableDefaultArgs + } + + export type $CartItemPayload = { + name: "CartItem" + objects: { + cart: Prisma.$CartPayload + sellable: Prisma.$SellablePayload + } + scalars: $Extensions.GetPayloadResult<{ + itemId: string + quantity: number + cartId: string + }, ExtArgs["result"]["cartItem"]> + composites: {} + } + + type CartItemGetPayload = $Result.GetResult + + type CartItemCountArgs = + Omit & { + select?: CartItemCountAggregateInputType | true + } + + export interface CartItemDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['CartItem'], meta: { name: 'CartItem' } } + /** + * Find zero or one CartItem that matches the filter. + * @param {CartItemFindUniqueArgs} args - Arguments to find a CartItem + * @example + * // Get one CartItem + * const cartItem = await prisma.cartItem.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__CartItemClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one CartItem that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {CartItemFindUniqueOrThrowArgs} args - Arguments to find a CartItem + * @example + * // Get one CartItem + * const cartItem = await prisma.cartItem.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__CartItemClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first CartItem that matches the filter. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {CartItemFindFirstArgs} args - Arguments to find a CartItem + * @example + * // Get one CartItem + * const cartItem = await prisma.cartItem.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__CartItemClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first CartItem that matches the filter or + * throw `PrismaKnownClientError` with `P2025` code if no matches were found. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {CartItemFindFirstOrThrowArgs} args - Arguments to find a CartItem + * @example + * // Get one CartItem + * const cartItem = await prisma.cartItem.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__CartItemClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more CartItems that matches the filter. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {CartItemFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all CartItems + * const cartItems = await prisma.cartItem.findMany() + * + * // Get first 10 CartItems + * const cartItems = await prisma.cartItem.findMany({ take: 10 }) + * + * // Only select the `itemId` + * const cartItemWithItemIdOnly = await prisma.cartItem.findMany({ select: { itemId: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a CartItem. + * @param {CartItemCreateArgs} args - Arguments to create a CartItem. + * @example + * // Create one CartItem + * const CartItem = await prisma.cartItem.create({ + * data: { + * // ... data to create a CartItem + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__CartItemClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many CartItems. + * @param {CartItemCreateManyArgs} args - Arguments to create many CartItems. + * @example + * // Create many CartItems + * const cartItem = await prisma.cartItem.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Delete a CartItem. + * @param {CartItemDeleteArgs} args - Arguments to delete one CartItem. + * @example + * // Delete one CartItem + * const CartItem = await prisma.cartItem.delete({ + * where: { + * // ... filter to delete one CartItem + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__CartItemClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one CartItem. + * @param {CartItemUpdateArgs} args - Arguments to update one CartItem. + * @example + * // Update one CartItem + * const cartItem = await prisma.cartItem.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__CartItemClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more CartItems. + * @param {CartItemDeleteManyArgs} args - Arguments to filter CartItems to delete. + * @example + * // Delete a few CartItems + * const { count } = await prisma.cartItem.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more CartItems. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {CartItemUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many CartItems + * const cartItem = await prisma.cartItem.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Create or update one CartItem. + * @param {CartItemUpsertArgs} args - Arguments to update or create a CartItem. + * @example + * // Update or create a CartItem + * const cartItem = await prisma.cartItem.upsert({ + * create: { + * // ... data to create a CartItem + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the CartItem we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__CartItemClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of CartItems. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {CartItemCountArgs} args - Arguments to filter CartItems to count. + * @example + * // Count the number of CartItems + * const count = await prisma.cartItem.count({ + * where: { + * // ... the filter for the CartItems we want to count + * } + * }) + **/ + count( + args?: Subset, + ): Prisma.PrismaPromise< + T extends $Utils.Record<'select', any> + ? T['select'] extends true + ? number + : GetScalarType + : number + > + + /** + * Allows you to perform aggregations operations on a CartItem. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {CartItemAggregateArgs} args - Select which aggregations you would like to apply and on what fields. + * @example + * // Ordered by age ascending + * // Where email contains prisma.io + * // Limited to the 10 users + * const aggregations = await prisma.user.aggregate({ + * _avg: { + * age: true, + * }, + * where: { + * email: { + * contains: "prisma.io", + * }, + * }, + * orderBy: { + * age: "asc", + * }, + * take: 10, + * }) + **/ + aggregate(args: Subset): Prisma.PrismaPromise> + + /** + * Group by CartItem. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {CartItemGroupByArgs} args - Group by arguments. + * @example + * // Group by city, order by createdAt, get count + * const result = await prisma.user.groupBy({ + * by: ['city', 'createdAt'], + * orderBy: { + * createdAt: true + * }, + * _count: { + * _all: true + * }, + * }) + * + **/ + groupBy< + T extends CartItemGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: CartItemGroupByArgs['orderBy'] } + : { orderBy?: CartItemGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetCartItemGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the CartItem model + */ + readonly fields: CartItemFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for CartItem. + * Why is this prefixed with `Prisma__`? + * Because we want to prevent naming conflicts as mentioned in + * https://github.com/prisma/prisma-client-js/issues/707 + */ + export interface Prisma__CartItemClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + cart = {}>(args?: Subset>): Prisma__CartClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> + sellable = {}>(args?: Subset>): Prisma__SellableClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> + /** + * Attaches callbacks for the resolution and/or rejection of the Promise. + * @param onfulfilled The callback to execute when the Promise is resolved. + * @param onrejected The callback to execute when the Promise is rejected. + * @returns A Promise for the completion of which ever callback is executed. + */ + then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise + /** + * Attaches a callback for only the rejection of the Promise. + * @param onrejected The callback to execute when the Promise is rejected. + * @returns A Promise for the completion of the callback. + */ + catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise + /** + * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The + * resolved value cannot be modified from the callback. + * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). + * @returns A Promise for the completion of the callback. + */ + finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise + } + + + + + /** + * Fields of the CartItem model + */ + interface CartItemFieldRefs { + readonly itemId: FieldRef<"CartItem", 'String'> + readonly quantity: FieldRef<"CartItem", 'Int'> + readonly cartId: FieldRef<"CartItem", 'String'> + } + + + // Custom InputTypes + /** + * CartItem findUnique + */ + export type CartItemFindUniqueArgs = { + /** + * Select specific fields to fetch from the CartItem + */ + select?: CartItemSelect | null + /** + * Omit specific fields from the CartItem + */ + omit?: CartItemOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: CartItemInclude | null + /** + * Filter, which CartItem to fetch. + */ + where: CartItemWhereUniqueInput + } + + /** + * CartItem findUniqueOrThrow + */ + export type CartItemFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the CartItem + */ + select?: CartItemSelect | null + /** + * Omit specific fields from the CartItem + */ + omit?: CartItemOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: CartItemInclude | null + /** + * Filter, which CartItem to fetch. + */ + where: CartItemWhereUniqueInput + } + + /** + * CartItem findFirst + */ + export type CartItemFindFirstArgs = { + /** + * Select specific fields to fetch from the CartItem + */ + select?: CartItemSelect | null + /** + * Omit specific fields from the CartItem + */ + omit?: CartItemOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: CartItemInclude | null + /** + * Filter, which CartItem to fetch. + */ + where?: CartItemWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of CartItems to fetch. + */ + orderBy?: CartItemOrderByWithRelationInput | CartItemOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for CartItems. + */ + cursor?: CartItemWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` CartItems from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` CartItems. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of CartItems. + */ + distinct?: CartItemScalarFieldEnum | CartItemScalarFieldEnum[] + } + + /** + * CartItem findFirstOrThrow + */ + export type CartItemFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the CartItem + */ + select?: CartItemSelect | null + /** + * Omit specific fields from the CartItem + */ + omit?: CartItemOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: CartItemInclude | null + /** + * Filter, which CartItem to fetch. + */ + where?: CartItemWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of CartItems to fetch. + */ + orderBy?: CartItemOrderByWithRelationInput | CartItemOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for CartItems. + */ + cursor?: CartItemWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` CartItems from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` CartItems. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of CartItems. + */ + distinct?: CartItemScalarFieldEnum | CartItemScalarFieldEnum[] + } + + /** + * CartItem findMany + */ + export type CartItemFindManyArgs = { + /** + * Select specific fields to fetch from the CartItem + */ + select?: CartItemSelect | null + /** + * Omit specific fields from the CartItem + */ + omit?: CartItemOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: CartItemInclude | null + /** + * Filter, which CartItems to fetch. + */ + where?: CartItemWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of CartItems to fetch. + */ + orderBy?: CartItemOrderByWithRelationInput | CartItemOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing CartItems. + */ + cursor?: CartItemWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` CartItems from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` CartItems. + */ + skip?: number + distinct?: CartItemScalarFieldEnum | CartItemScalarFieldEnum[] + } + + /** + * CartItem create + */ + export type CartItemCreateArgs = { + /** + * Select specific fields to fetch from the CartItem + */ + select?: CartItemSelect | null + /** + * Omit specific fields from the CartItem + */ + omit?: CartItemOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: CartItemInclude | null + /** + * The data needed to create a CartItem. + */ + data: XOR + } + + /** + * CartItem createMany + */ + export type CartItemCreateManyArgs = { + /** + * The data used to create many CartItems. + */ + data: CartItemCreateManyInput | CartItemCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * CartItem update + */ + export type CartItemUpdateArgs = { + /** + * Select specific fields to fetch from the CartItem + */ + select?: CartItemSelect | null + /** + * Omit specific fields from the CartItem + */ + omit?: CartItemOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: CartItemInclude | null + /** + * The data needed to update a CartItem. + */ + data: XOR + /** + * Choose, which CartItem to update. + */ + where: CartItemWhereUniqueInput + } + + /** + * CartItem updateMany + */ + export type CartItemUpdateManyArgs = { + /** + * The data used to update CartItems. + */ + data: XOR + /** + * Filter which CartItems to update + */ + where?: CartItemWhereInput + /** + * Limit how many CartItems to update. + */ + limit?: number + } + + /** + * CartItem upsert + */ + export type CartItemUpsertArgs = { + /** + * Select specific fields to fetch from the CartItem + */ + select?: CartItemSelect | null + /** + * Omit specific fields from the CartItem + */ + omit?: CartItemOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: CartItemInclude | null + /** + * The filter to search for the CartItem to update in case it exists. + */ + where: CartItemWhereUniqueInput + /** + * In case the CartItem found by the `where` argument doesn't exist, create a new CartItem with this data. + */ + create: XOR + /** + * In case the CartItem was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * CartItem delete + */ + export type CartItemDeleteArgs = { + /** + * Select specific fields to fetch from the CartItem + */ + select?: CartItemSelect | null + /** + * Omit specific fields from the CartItem + */ + omit?: CartItemOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: CartItemInclude | null + /** + * Filter which CartItem to delete. + */ + where: CartItemWhereUniqueInput + } + + /** + * CartItem deleteMany + */ + export type CartItemDeleteManyArgs = { + /** + * Filter which CartItems to delete + */ + where?: CartItemWhereInput + /** + * Limit how many CartItems to delete. + */ + limit?: number + } + + /** + * CartItem without action + */ + export type CartItemDefaultArgs = { + /** + * Select specific fields to fetch from the CartItem + */ + select?: CartItemSelect | null + /** + * Omit specific fields from the CartItem + */ + omit?: CartItemOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: CartItemInclude | null + } + + + /** + * Model Adress + */ + + export type AggregateAdress = { + _count: AdressCountAggregateOutputType | null + _min: AdressMinAggregateOutputType | null + _max: AdressMaxAggregateOutputType | null + } + + export type AdressMinAggregateOutputType = { + id: string | null + userId: string | null + adress: string | null + } + + export type AdressMaxAggregateOutputType = { + id: string | null + userId: string | null + adress: string | null + } + + export type AdressCountAggregateOutputType = { + id: number + userId: number + adress: number + _all: number + } + + + export type AdressMinAggregateInputType = { + id?: true + userId?: true + adress?: true + } + + export type AdressMaxAggregateInputType = { + id?: true + userId?: true + adress?: true + } + + export type AdressCountAggregateInputType = { + id?: true + userId?: true + adress?: true + _all?: true + } + + export type AdressAggregateArgs = { + /** + * Filter which Adress to aggregate. + */ + where?: AdressWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Adresses to fetch. + */ + orderBy?: AdressOrderByWithRelationInput | AdressOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: AdressWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Adresses from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` Adresses. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned Adresses + **/ + _count?: true | AdressCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: AdressMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: AdressMaxAggregateInputType + } + + export type GetAdressAggregateType = { + [P in keyof T & keyof AggregateAdress]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type AdressGroupByArgs = { + where?: AdressWhereInput + orderBy?: AdressOrderByWithAggregationInput | AdressOrderByWithAggregationInput[] + by: AdressScalarFieldEnum[] | AdressScalarFieldEnum + having?: AdressScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: AdressCountAggregateInputType | true + _min?: AdressMinAggregateInputType + _max?: AdressMaxAggregateInputType + } + + export type AdressGroupByOutputType = { + id: string + userId: string + adress: string + _count: AdressCountAggregateOutputType | null + _min: AdressMinAggregateOutputType | null + _max: AdressMaxAggregateOutputType | null + } + + type GetAdressGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof AdressGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type AdressSelect = $Extensions.GetSelect<{ + id?: boolean + userId?: boolean + adress?: boolean + user?: boolean | UserDefaultArgs + }, ExtArgs["result"]["adress"]> + + + + export type AdressSelectScalar = { + id?: boolean + userId?: boolean + adress?: boolean + } + + export type AdressOmit = $Extensions.GetOmit<"id" | "userId" | "adress", ExtArgs["result"]["adress"]> + export type AdressInclude = { + user?: boolean | UserDefaultArgs + } + + export type $AdressPayload = { + name: "Adress" + objects: { + user: Prisma.$UserPayload + } + scalars: $Extensions.GetPayloadResult<{ + id: string + userId: string + adress: string + }, ExtArgs["result"]["adress"]> + composites: {} + } + + type AdressGetPayload = $Result.GetResult + + type AdressCountArgs = + Omit & { + select?: AdressCountAggregateInputType | true + } + + export interface AdressDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['Adress'], meta: { name: 'Adress' } } + /** + * Find zero or one Adress that matches the filter. + * @param {AdressFindUniqueArgs} args - Arguments to find a Adress + * @example + * // Get one Adress + * const adress = await prisma.adress.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__AdressClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one Adress that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {AdressFindUniqueOrThrowArgs} args - Arguments to find a Adress + * @example + * // Get one Adress + * const adress = await prisma.adress.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__AdressClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Adress that matches the filter. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {AdressFindFirstArgs} args - Arguments to find a Adress + * @example + * // Get one Adress + * const adress = await prisma.adress.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__AdressClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Adress that matches the filter or + * throw `PrismaKnownClientError` with `P2025` code if no matches were found. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {AdressFindFirstOrThrowArgs} args - Arguments to find a Adress + * @example + * // Get one Adress + * const adress = await prisma.adress.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__AdressClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more Adresses that matches the filter. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {AdressFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all Adresses + * const adresses = await prisma.adress.findMany() + * + * // Get first 10 Adresses + * const adresses = await prisma.adress.findMany({ take: 10 }) + * + * // Only select the `id` + * const adressWithIdOnly = await prisma.adress.findMany({ select: { id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a Adress. + * @param {AdressCreateArgs} args - Arguments to create a Adress. + * @example + * // Create one Adress + * const Adress = await prisma.adress.create({ + * data: { + * // ... data to create a Adress + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__AdressClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many Adresses. + * @param {AdressCreateManyArgs} args - Arguments to create many Adresses. + * @example + * // Create many Adresses + * const adress = await prisma.adress.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Delete a Adress. + * @param {AdressDeleteArgs} args - Arguments to delete one Adress. + * @example + * // Delete one Adress + * const Adress = await prisma.adress.delete({ + * where: { + * // ... filter to delete one Adress + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__AdressClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one Adress. + * @param {AdressUpdateArgs} args - Arguments to update one Adress. + * @example + * // Update one Adress + * const adress = await prisma.adress.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__AdressClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more Adresses. + * @param {AdressDeleteManyArgs} args - Arguments to filter Adresses to delete. + * @example + * // Delete a few Adresses + * const { count } = await prisma.adress.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Adresses. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {AdressUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many Adresses + * const adress = await prisma.adress.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Create or update one Adress. + * @param {AdressUpsertArgs} args - Arguments to update or create a Adress. + * @example + * // Update or create a Adress + * const adress = await prisma.adress.upsert({ + * create: { + * // ... data to create a Adress + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the Adress we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__AdressClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of Adresses. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {AdressCountArgs} args - Arguments to filter Adresses to count. + * @example + * // Count the number of Adresses + * const count = await prisma.adress.count({ + * where: { + * // ... the filter for the Adresses we want to count + * } + * }) + **/ + count( + args?: Subset, + ): Prisma.PrismaPromise< + T extends $Utils.Record<'select', any> + ? T['select'] extends true + ? number + : GetScalarType + : number + > + + /** + * Allows you to perform aggregations operations on a Adress. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {AdressAggregateArgs} args - Select which aggregations you would like to apply and on what fields. + * @example + * // Ordered by age ascending + * // Where email contains prisma.io + * // Limited to the 10 users + * const aggregations = await prisma.user.aggregate({ + * _avg: { + * age: true, + * }, + * where: { + * email: { + * contains: "prisma.io", + * }, + * }, + * orderBy: { + * age: "asc", + * }, + * take: 10, + * }) + **/ + aggregate(args: Subset): Prisma.PrismaPromise> + + /** + * Group by Adress. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {AdressGroupByArgs} args - Group by arguments. + * @example + * // Group by city, order by createdAt, get count + * const result = await prisma.user.groupBy({ + * by: ['city', 'createdAt'], + * orderBy: { + * createdAt: true + * }, + * _count: { + * _all: true + * }, + * }) + * + **/ + groupBy< + T extends AdressGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: AdressGroupByArgs['orderBy'] } + : { orderBy?: AdressGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetAdressGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the Adress model + */ + readonly fields: AdressFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for Adress. + * Why is this prefixed with `Prisma__`? + * Because we want to prevent naming conflicts as mentioned in + * https://github.com/prisma/prisma-client-js/issues/707 + */ + export interface Prisma__AdressClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + user = {}>(args?: Subset>): Prisma__UserClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> + /** + * Attaches callbacks for the resolution and/or rejection of the Promise. + * @param onfulfilled The callback to execute when the Promise is resolved. + * @param onrejected The callback to execute when the Promise is rejected. + * @returns A Promise for the completion of which ever callback is executed. + */ + then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): $Utils.JsPromise + /** + * Attaches a callback for only the rejection of the Promise. + * @param onrejected The callback to execute when the Promise is rejected. + * @returns A Promise for the completion of the callback. + */ + catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): $Utils.JsPromise + /** + * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The + * resolved value cannot be modified from the callback. + * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected). + * @returns A Promise for the completion of the callback. + */ + finally(onfinally?: (() => void) | undefined | null): $Utils.JsPromise + } + + + + + /** + * Fields of the Adress model + */ + interface AdressFieldRefs { + readonly id: FieldRef<"Adress", 'String'> + readonly userId: FieldRef<"Adress", 'String'> + readonly adress: FieldRef<"Adress", 'String'> + } + + + // Custom InputTypes + /** + * Adress findUnique + */ + export type AdressFindUniqueArgs = { + /** + * Select specific fields to fetch from the Adress + */ + select?: AdressSelect | null + /** + * Omit specific fields from the Adress + */ + omit?: AdressOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: AdressInclude | null + /** + * Filter, which Adress to fetch. + */ + where: AdressWhereUniqueInput + } + + /** + * Adress findUniqueOrThrow + */ + export type AdressFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the Adress + */ + select?: AdressSelect | null + /** + * Omit specific fields from the Adress + */ + omit?: AdressOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: AdressInclude | null + /** + * Filter, which Adress to fetch. + */ + where: AdressWhereUniqueInput + } + + /** + * Adress findFirst + */ + export type AdressFindFirstArgs = { + /** + * Select specific fields to fetch from the Adress + */ + select?: AdressSelect | null + /** + * Omit specific fields from the Adress + */ + omit?: AdressOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: AdressInclude | null + /** + * Filter, which Adress to fetch. + */ + where?: AdressWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Adresses to fetch. + */ + orderBy?: AdressOrderByWithRelationInput | AdressOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for Adresses. + */ + cursor?: AdressWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Adresses from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` Adresses. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of Adresses. + */ + distinct?: AdressScalarFieldEnum | AdressScalarFieldEnum[] + } + + /** + * Adress findFirstOrThrow + */ + export type AdressFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the Adress + */ + select?: AdressSelect | null + /** + * Omit specific fields from the Adress + */ + omit?: AdressOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: AdressInclude | null + /** + * Filter, which Adress to fetch. + */ + where?: AdressWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Adresses to fetch. + */ + orderBy?: AdressOrderByWithRelationInput | AdressOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for Adresses. + */ + cursor?: AdressWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Adresses from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` Adresses. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of Adresses. + */ + distinct?: AdressScalarFieldEnum | AdressScalarFieldEnum[] + } + + /** + * Adress findMany + */ + export type AdressFindManyArgs = { + /** + * Select specific fields to fetch from the Adress + */ + select?: AdressSelect | null + /** + * Omit specific fields from the Adress + */ + omit?: AdressOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: AdressInclude | null + /** + * Filter, which Adresses to fetch. + */ + where?: AdressWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Adresses to fetch. + */ + orderBy?: AdressOrderByWithRelationInput | AdressOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing Adresses. + */ + cursor?: AdressWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Adresses from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` Adresses. + */ + skip?: number + distinct?: AdressScalarFieldEnum | AdressScalarFieldEnum[] + } + + /** + * Adress create + */ + export type AdressCreateArgs = { + /** + * Select specific fields to fetch from the Adress + */ + select?: AdressSelect | null + /** + * Omit specific fields from the Adress + */ + omit?: AdressOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: AdressInclude | null + /** + * The data needed to create a Adress. + */ + data: XOR + } + + /** + * Adress createMany + */ + export type AdressCreateManyArgs = { + /** + * The data used to create many Adresses. + */ + data: AdressCreateManyInput | AdressCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * Adress update + */ + export type AdressUpdateArgs = { + /** + * Select specific fields to fetch from the Adress + */ + select?: AdressSelect | null + /** + * Omit specific fields from the Adress + */ + omit?: AdressOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: AdressInclude | null + /** + * The data needed to update a Adress. + */ + data: XOR + /** + * Choose, which Adress to update. + */ + where: AdressWhereUniqueInput + } + + /** + * Adress updateMany + */ + export type AdressUpdateManyArgs = { + /** + * The data used to update Adresses. + */ + data: XOR + /** + * Filter which Adresses to update + */ + where?: AdressWhereInput + /** + * Limit how many Adresses to update. + */ + limit?: number + } + + /** + * Adress upsert + */ + export type AdressUpsertArgs = { + /** + * Select specific fields to fetch from the Adress + */ + select?: AdressSelect | null + /** + * Omit specific fields from the Adress + */ + omit?: AdressOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: AdressInclude | null + /** + * The filter to search for the Adress to update in case it exists. + */ + where: AdressWhereUniqueInput + /** + * In case the Adress found by the `where` argument doesn't exist, create a new Adress with this data. + */ + create: XOR + /** + * In case the Adress was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * Adress delete + */ + export type AdressDeleteArgs = { + /** + * Select specific fields to fetch from the Adress + */ + select?: AdressSelect | null + /** + * Omit specific fields from the Adress + */ + omit?: AdressOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: AdressInclude | null + /** + * Filter which Adress to delete. + */ + where: AdressWhereUniqueInput + } + + /** + * Adress deleteMany + */ + export type AdressDeleteManyArgs = { + /** + * Filter which Adresses to delete + */ + where?: AdressWhereInput + /** + * Limit how many Adresses to delete. + */ + limit?: number + } + + /** + * Adress without action + */ + export type AdressDefaultArgs = { + /** + * Select specific fields to fetch from the Adress + */ + select?: AdressSelect | null + /** + * Omit specific fields from the Adress + */ + omit?: AdressOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: AdressInclude | null + } + /** * Enums */ export const TransactionIsolationLevel: { - ReadUncommitted: "ReadUncommitted"; - ReadCommitted: "ReadCommitted"; - RepeatableRead: "RepeatableRead"; - Serializable: "Serializable"; + ReadUncommitted: 'ReadUncommitted', + ReadCommitted: 'ReadCommitted', + RepeatableRead: 'RepeatableRead', + Serializable: 'Serializable' }; - export type TransactionIsolationLevel = - (typeof TransactionIsolationLevel)[keyof typeof TransactionIsolationLevel]; + export type TransactionIsolationLevel = (typeof TransactionIsolationLevel)[keyof typeof TransactionIsolationLevel] - export const PostScalarFieldEnum: { - id: "id"; - name: "name"; - createdAt: "createdAt"; - updatedAt: "updatedAt"; - createdById: "createdById"; - }; - - export type PostScalarFieldEnum = - (typeof PostScalarFieldEnum)[keyof typeof PostScalarFieldEnum]; export const AccountScalarFieldEnum: { - id: "id"; - userId: "userId"; - type: "type"; - provider: "provider"; - providerAccountId: "providerAccountId"; - refresh_token: "refresh_token"; - access_token: "access_token"; - expires_at: "expires_at"; - token_type: "token_type"; - scope: "scope"; - id_token: "id_token"; - session_state: "session_state"; - refresh_token_expires_in: "refresh_token_expires_in"; + id: 'id', + userId: 'userId', + type: 'type', + provider: 'provider', + providerAccountId: 'providerAccountId', + refresh_token: 'refresh_token', + access_token: 'access_token', + expires_at: 'expires_at', + token_type: 'token_type', + scope: 'scope', + id_token: 'id_token', + session_state: 'session_state', + refresh_token_expires_in: 'refresh_token_expires_in' }; - export type AccountScalarFieldEnum = - (typeof AccountScalarFieldEnum)[keyof typeof AccountScalarFieldEnum]; + export type AccountScalarFieldEnum = (typeof AccountScalarFieldEnum)[keyof typeof AccountScalarFieldEnum] + export const SessionScalarFieldEnum: { - id: "id"; - sessionToken: "sessionToken"; - userId: "userId"; - expires: "expires"; + id: 'id', + sessionToken: 'sessionToken', + userId: 'userId', + expires: 'expires' }; - export type SessionScalarFieldEnum = - (typeof SessionScalarFieldEnum)[keyof typeof SessionScalarFieldEnum]; + export type SessionScalarFieldEnum = (typeof SessionScalarFieldEnum)[keyof typeof SessionScalarFieldEnum] + export const UserScalarFieldEnum: { - id: "id"; - name: "name"; - email: "email"; - emailVerified: "emailVerified"; - image: "image"; + id: 'id', + name: 'name', + email: 'email', + emailVerified: 'emailVerified', + image: 'image', + balance: 'balance' }; - export type UserScalarFieldEnum = - (typeof UserScalarFieldEnum)[keyof typeof UserScalarFieldEnum]; + export type UserScalarFieldEnum = (typeof UserScalarFieldEnum)[keyof typeof UserScalarFieldEnum] + export const VerificationTokenScalarFieldEnum: { - identifier: "identifier"; - token: "token"; - expires: "expires"; + identifier: 'identifier', + token: 'token', + expires: 'expires' }; - export type VerificationTokenScalarFieldEnum = - (typeof VerificationTokenScalarFieldEnum)[keyof typeof VerificationTokenScalarFieldEnum]; + export type VerificationTokenScalarFieldEnum = (typeof VerificationTokenScalarFieldEnum)[keyof typeof VerificationTokenScalarFieldEnum] + + + export const ShopScalarFieldEnum: { + id: 'id', + userId: 'userId', + label: 'label' + }; + + export type ShopScalarFieldEnum = (typeof ShopScalarFieldEnum)[keyof typeof ShopScalarFieldEnum] + + + export const ItemScalarFieldEnum: { + item_name: 'item_name', + stock: 'stock', + shopId: 'shopId' + }; + + export type ItemScalarFieldEnum = (typeof ItemScalarFieldEnum)[keyof typeof ItemScalarFieldEnum] + + + export const SellableScalarFieldEnum: { + id: 'id', + item_name: 'item_name', + amount: 'amount', + price: 'price', + shopId: 'shopId', + enabled: 'enabled' + }; + + export type SellableScalarFieldEnum = (typeof SellableScalarFieldEnum)[keyof typeof SellableScalarFieldEnum] + + + export const CartScalarFieldEnum: { + id: 'id', + userId: 'userId' + }; + + export type CartScalarFieldEnum = (typeof CartScalarFieldEnum)[keyof typeof CartScalarFieldEnum] + + + export const CartItemScalarFieldEnum: { + itemId: 'itemId', + quantity: 'quantity', + cartId: 'cartId' + }; + + export type CartItemScalarFieldEnum = (typeof CartItemScalarFieldEnum)[keyof typeof CartItemScalarFieldEnum] + + + export const AdressScalarFieldEnum: { + id: 'id', + userId: 'userId', + adress: 'adress' + }; + + export type AdressScalarFieldEnum = (typeof AdressScalarFieldEnum)[keyof typeof AdressScalarFieldEnum] + export const SortOrder: { - asc: "asc"; - desc: "desc"; + asc: 'asc', + desc: 'desc' }; - export type SortOrder = (typeof SortOrder)[keyof typeof SortOrder]; + export type SortOrder = (typeof SortOrder)[keyof typeof SortOrder] - export const PostOrderByRelevanceFieldEnum: { - name: "name"; - createdById: "createdById"; - }; - - export type PostOrderByRelevanceFieldEnum = - (typeof PostOrderByRelevanceFieldEnum)[keyof typeof PostOrderByRelevanceFieldEnum]; export const NullsOrder: { - first: "first"; - last: "last"; + first: 'first', + last: 'last' }; - export type NullsOrder = (typeof NullsOrder)[keyof typeof NullsOrder]; + export type NullsOrder = (typeof NullsOrder)[keyof typeof NullsOrder] + export const AccountOrderByRelevanceFieldEnum: { - id: "id"; - userId: "userId"; - type: "type"; - provider: "provider"; - providerAccountId: "providerAccountId"; - refresh_token: "refresh_token"; - access_token: "access_token"; - token_type: "token_type"; - scope: "scope"; - id_token: "id_token"; - session_state: "session_state"; + id: 'id', + userId: 'userId', + type: 'type', + provider: 'provider', + providerAccountId: 'providerAccountId', + refresh_token: 'refresh_token', + access_token: 'access_token', + token_type: 'token_type', + scope: 'scope', + id_token: 'id_token', + session_state: 'session_state' }; - export type AccountOrderByRelevanceFieldEnum = - (typeof AccountOrderByRelevanceFieldEnum)[keyof typeof AccountOrderByRelevanceFieldEnum]; + export type AccountOrderByRelevanceFieldEnum = (typeof AccountOrderByRelevanceFieldEnum)[keyof typeof AccountOrderByRelevanceFieldEnum] + export const SessionOrderByRelevanceFieldEnum: { - id: "id"; - sessionToken: "sessionToken"; - userId: "userId"; + id: 'id', + sessionToken: 'sessionToken', + userId: 'userId' }; - export type SessionOrderByRelevanceFieldEnum = - (typeof SessionOrderByRelevanceFieldEnum)[keyof typeof SessionOrderByRelevanceFieldEnum]; + export type SessionOrderByRelevanceFieldEnum = (typeof SessionOrderByRelevanceFieldEnum)[keyof typeof SessionOrderByRelevanceFieldEnum] + export const UserOrderByRelevanceFieldEnum: { - id: "id"; - name: "name"; - email: "email"; - image: "image"; + id: 'id', + name: 'name', + email: 'email', + image: 'image' }; - export type UserOrderByRelevanceFieldEnum = - (typeof UserOrderByRelevanceFieldEnum)[keyof typeof UserOrderByRelevanceFieldEnum]; + export type UserOrderByRelevanceFieldEnum = (typeof UserOrderByRelevanceFieldEnum)[keyof typeof UserOrderByRelevanceFieldEnum] + export const VerificationTokenOrderByRelevanceFieldEnum: { - identifier: "identifier"; - token: "token"; + identifier: 'identifier', + token: 'token' }; - export type VerificationTokenOrderByRelevanceFieldEnum = - (typeof VerificationTokenOrderByRelevanceFieldEnum)[keyof typeof VerificationTokenOrderByRelevanceFieldEnum]; + export type VerificationTokenOrderByRelevanceFieldEnum = (typeof VerificationTokenOrderByRelevanceFieldEnum)[keyof typeof VerificationTokenOrderByRelevanceFieldEnum] + + + export const ShopOrderByRelevanceFieldEnum: { + userId: 'userId', + label: 'label' + }; + + export type ShopOrderByRelevanceFieldEnum = (typeof ShopOrderByRelevanceFieldEnum)[keyof typeof ShopOrderByRelevanceFieldEnum] + + + export const ItemOrderByRelevanceFieldEnum: { + item_name: 'item_name' + }; + + export type ItemOrderByRelevanceFieldEnum = (typeof ItemOrderByRelevanceFieldEnum)[keyof typeof ItemOrderByRelevanceFieldEnum] + + + export const SellableOrderByRelevanceFieldEnum: { + id: 'id', + item_name: 'item_name' + }; + + export type SellableOrderByRelevanceFieldEnum = (typeof SellableOrderByRelevanceFieldEnum)[keyof typeof SellableOrderByRelevanceFieldEnum] + + + export const CartOrderByRelevanceFieldEnum: { + id: 'id', + userId: 'userId' + }; + + export type CartOrderByRelevanceFieldEnum = (typeof CartOrderByRelevanceFieldEnum)[keyof typeof CartOrderByRelevanceFieldEnum] + + + export const CartItemOrderByRelevanceFieldEnum: { + itemId: 'itemId', + cartId: 'cartId' + }; + + export type CartItemOrderByRelevanceFieldEnum = (typeof CartItemOrderByRelevanceFieldEnum)[keyof typeof CartItemOrderByRelevanceFieldEnum] + + + export const AdressOrderByRelevanceFieldEnum: { + id: 'id', + userId: 'userId', + adress: 'adress' + }; + + export type AdressOrderByRelevanceFieldEnum = (typeof AdressOrderByRelevanceFieldEnum)[keyof typeof AdressOrderByRelevanceFieldEnum] + /** * Field references */ - /** - * Reference to a field of type 'Int' - */ - export type IntFieldRefInput<$PrismaModel> = FieldRefInputType< - $PrismaModel, - "Int" - >; /** * Reference to a field of type 'String' */ - export type StringFieldRefInput<$PrismaModel> = FieldRefInputType< - $PrismaModel, - "String" - >; + export type StringFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'String'> + + + + /** + * Reference to a field of type 'Int' + */ + export type IntFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Int'> + + /** * Reference to a field of type 'DateTime' */ - export type DateTimeFieldRefInput<$PrismaModel> = FieldRefInputType< - $PrismaModel, - "DateTime" - >; + export type DateTimeFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'DateTime'> + + /** * Reference to a field of type 'Float' */ - export type FloatFieldRefInput<$PrismaModel> = FieldRefInputType< - $PrismaModel, - "Float" - >; + export type FloatFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Float'> + + + /** + * Reference to a field of type 'Boolean' + */ + export type BooleanFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Boolean'> + /** * Deep Input Types */ - export type PostWhereInput = { - AND?: PostWhereInput | PostWhereInput[]; - OR?: PostWhereInput[]; - NOT?: PostWhereInput | PostWhereInput[]; - id?: IntFilter<"Post"> | number; - name?: StringFilter<"Post"> | string; - createdAt?: DateTimeFilter<"Post"> | Date | string; - updatedAt?: DateTimeFilter<"Post"> | Date | string; - createdById?: StringFilter<"Post"> | string; - createdBy?: XOR; - }; - - export type PostOrderByWithRelationInput = { - id?: SortOrder; - name?: SortOrder; - createdAt?: SortOrder; - updatedAt?: SortOrder; - createdById?: SortOrder; - createdBy?: UserOrderByWithRelationInput; - _relevance?: PostOrderByRelevanceInput; - }; - - export type PostWhereUniqueInput = Prisma.AtLeast< - { - id?: number; - AND?: PostWhereInput | PostWhereInput[]; - OR?: PostWhereInput[]; - NOT?: PostWhereInput | PostWhereInput[]; - name?: StringFilter<"Post"> | string; - createdAt?: DateTimeFilter<"Post"> | Date | string; - updatedAt?: DateTimeFilter<"Post"> | Date | string; - createdById?: StringFilter<"Post"> | string; - createdBy?: XOR; - }, - "id" - >; - - export type PostOrderByWithAggregationInput = { - id?: SortOrder; - name?: SortOrder; - createdAt?: SortOrder; - updatedAt?: SortOrder; - createdById?: SortOrder; - _count?: PostCountOrderByAggregateInput; - _avg?: PostAvgOrderByAggregateInput; - _max?: PostMaxOrderByAggregateInput; - _min?: PostMinOrderByAggregateInput; - _sum?: PostSumOrderByAggregateInput; - }; - - export type PostScalarWhereWithAggregatesInput = { - AND?: - | PostScalarWhereWithAggregatesInput - | PostScalarWhereWithAggregatesInput[]; - OR?: PostScalarWhereWithAggregatesInput[]; - NOT?: - | PostScalarWhereWithAggregatesInput - | PostScalarWhereWithAggregatesInput[]; - id?: IntWithAggregatesFilter<"Post"> | number; - name?: StringWithAggregatesFilter<"Post"> | string; - createdAt?: DateTimeWithAggregatesFilter<"Post"> | Date | string; - updatedAt?: DateTimeWithAggregatesFilter<"Post"> | Date | string; - createdById?: StringWithAggregatesFilter<"Post"> | string; - }; export type AccountWhereInput = { - AND?: AccountWhereInput | AccountWhereInput[]; - OR?: AccountWhereInput[]; - NOT?: AccountWhereInput | AccountWhereInput[]; - id?: StringFilter<"Account"> | string; - userId?: StringFilter<"Account"> | string; - type?: StringFilter<"Account"> | string; - provider?: StringFilter<"Account"> | string; - providerAccountId?: StringFilter<"Account"> | string; - refresh_token?: StringNullableFilter<"Account"> | string | null; - access_token?: StringNullableFilter<"Account"> | string | null; - expires_at?: IntNullableFilter<"Account"> | number | null; - token_type?: StringNullableFilter<"Account"> | string | null; - scope?: StringNullableFilter<"Account"> | string | null; - id_token?: StringNullableFilter<"Account"> | string | null; - session_state?: StringNullableFilter<"Account"> | string | null; - refresh_token_expires_in?: IntNullableFilter<"Account"> | number | null; - user?: XOR; - }; + AND?: AccountWhereInput | AccountWhereInput[] + OR?: AccountWhereInput[] + NOT?: AccountWhereInput | AccountWhereInput[] + id?: StringFilter<"Account"> | string + userId?: StringFilter<"Account"> | string + type?: StringFilter<"Account"> | string + provider?: StringFilter<"Account"> | string + providerAccountId?: StringFilter<"Account"> | string + refresh_token?: StringNullableFilter<"Account"> | string | null + access_token?: StringNullableFilter<"Account"> | string | null + expires_at?: IntNullableFilter<"Account"> | number | null + token_type?: StringNullableFilter<"Account"> | string | null + scope?: StringNullableFilter<"Account"> | string | null + id_token?: StringNullableFilter<"Account"> | string | null + session_state?: StringNullableFilter<"Account"> | string | null + refresh_token_expires_in?: IntNullableFilter<"Account"> | number | null + user?: XOR + } export type AccountOrderByWithRelationInput = { - id?: SortOrder; - userId?: SortOrder; - type?: SortOrder; - provider?: SortOrder; - providerAccountId?: SortOrder; - refresh_token?: SortOrderInput | SortOrder; - access_token?: SortOrderInput | SortOrder; - expires_at?: SortOrderInput | SortOrder; - token_type?: SortOrderInput | SortOrder; - scope?: SortOrderInput | SortOrder; - id_token?: SortOrderInput | SortOrder; - session_state?: SortOrderInput | SortOrder; - refresh_token_expires_in?: SortOrderInput | SortOrder; - user?: UserOrderByWithRelationInput; - _relevance?: AccountOrderByRelevanceInput; - }; + id?: SortOrder + userId?: SortOrder + type?: SortOrder + provider?: SortOrder + providerAccountId?: SortOrder + refresh_token?: SortOrderInput | SortOrder + access_token?: SortOrderInput | SortOrder + expires_at?: SortOrderInput | SortOrder + token_type?: SortOrderInput | SortOrder + scope?: SortOrderInput | SortOrder + id_token?: SortOrderInput | SortOrder + session_state?: SortOrderInput | SortOrder + refresh_token_expires_in?: SortOrderInput | SortOrder + user?: UserOrderByWithRelationInput + _relevance?: AccountOrderByRelevanceInput + } - export type AccountWhereUniqueInput = Prisma.AtLeast< - { - id?: string; - provider_providerAccountId?: AccountProviderProviderAccountIdCompoundUniqueInput; - AND?: AccountWhereInput | AccountWhereInput[]; - OR?: AccountWhereInput[]; - NOT?: AccountWhereInput | AccountWhereInput[]; - userId?: StringFilter<"Account"> | string; - type?: StringFilter<"Account"> | string; - provider?: StringFilter<"Account"> | string; - providerAccountId?: StringFilter<"Account"> | string; - refresh_token?: StringNullableFilter<"Account"> | string | null; - access_token?: StringNullableFilter<"Account"> | string | null; - expires_at?: IntNullableFilter<"Account"> | number | null; - token_type?: StringNullableFilter<"Account"> | string | null; - scope?: StringNullableFilter<"Account"> | string | null; - id_token?: StringNullableFilter<"Account"> | string | null; - session_state?: StringNullableFilter<"Account"> | string | null; - refresh_token_expires_in?: IntNullableFilter<"Account"> | number | null; - user?: XOR; - }, - "id" | "provider_providerAccountId" - >; + export type AccountWhereUniqueInput = Prisma.AtLeast<{ + id?: string + provider_providerAccountId?: AccountProviderProviderAccountIdCompoundUniqueInput + AND?: AccountWhereInput | AccountWhereInput[] + OR?: AccountWhereInput[] + NOT?: AccountWhereInput | AccountWhereInput[] + userId?: StringFilter<"Account"> | string + type?: StringFilter<"Account"> | string + provider?: StringFilter<"Account"> | string + providerAccountId?: StringFilter<"Account"> | string + refresh_token?: StringNullableFilter<"Account"> | string | null + access_token?: StringNullableFilter<"Account"> | string | null + expires_at?: IntNullableFilter<"Account"> | number | null + token_type?: StringNullableFilter<"Account"> | string | null + scope?: StringNullableFilter<"Account"> | string | null + id_token?: StringNullableFilter<"Account"> | string | null + session_state?: StringNullableFilter<"Account"> | string | null + refresh_token_expires_in?: IntNullableFilter<"Account"> | number | null + user?: XOR + }, "id" | "provider_providerAccountId"> export type AccountOrderByWithAggregationInput = { - id?: SortOrder; - userId?: SortOrder; - type?: SortOrder; - provider?: SortOrder; - providerAccountId?: SortOrder; - refresh_token?: SortOrderInput | SortOrder; - access_token?: SortOrderInput | SortOrder; - expires_at?: SortOrderInput | SortOrder; - token_type?: SortOrderInput | SortOrder; - scope?: SortOrderInput | SortOrder; - id_token?: SortOrderInput | SortOrder; - session_state?: SortOrderInput | SortOrder; - refresh_token_expires_in?: SortOrderInput | SortOrder; - _count?: AccountCountOrderByAggregateInput; - _avg?: AccountAvgOrderByAggregateInput; - _max?: AccountMaxOrderByAggregateInput; - _min?: AccountMinOrderByAggregateInput; - _sum?: AccountSumOrderByAggregateInput; - }; + id?: SortOrder + userId?: SortOrder + type?: SortOrder + provider?: SortOrder + providerAccountId?: SortOrder + refresh_token?: SortOrderInput | SortOrder + access_token?: SortOrderInput | SortOrder + expires_at?: SortOrderInput | SortOrder + token_type?: SortOrderInput | SortOrder + scope?: SortOrderInput | SortOrder + id_token?: SortOrderInput | SortOrder + session_state?: SortOrderInput | SortOrder + refresh_token_expires_in?: SortOrderInput | SortOrder + _count?: AccountCountOrderByAggregateInput + _avg?: AccountAvgOrderByAggregateInput + _max?: AccountMaxOrderByAggregateInput + _min?: AccountMinOrderByAggregateInput + _sum?: AccountSumOrderByAggregateInput + } export type AccountScalarWhereWithAggregatesInput = { - AND?: - | AccountScalarWhereWithAggregatesInput - | AccountScalarWhereWithAggregatesInput[]; - OR?: AccountScalarWhereWithAggregatesInput[]; - NOT?: - | AccountScalarWhereWithAggregatesInput - | AccountScalarWhereWithAggregatesInput[]; - id?: StringWithAggregatesFilter<"Account"> | string; - userId?: StringWithAggregatesFilter<"Account"> | string; - type?: StringWithAggregatesFilter<"Account"> | string; - provider?: StringWithAggregatesFilter<"Account"> | string; - providerAccountId?: StringWithAggregatesFilter<"Account"> | string; - refresh_token?: - | StringNullableWithAggregatesFilter<"Account"> - | string - | null; - access_token?: - | StringNullableWithAggregatesFilter<"Account"> - | string - | null; - expires_at?: IntNullableWithAggregatesFilter<"Account"> | number | null; - token_type?: StringNullableWithAggregatesFilter<"Account"> | string | null; - scope?: StringNullableWithAggregatesFilter<"Account"> | string | null; - id_token?: StringNullableWithAggregatesFilter<"Account"> | string | null; - session_state?: - | StringNullableWithAggregatesFilter<"Account"> - | string - | null; - refresh_token_expires_in?: - | IntNullableWithAggregatesFilter<"Account"> - | number - | null; - }; + AND?: AccountScalarWhereWithAggregatesInput | AccountScalarWhereWithAggregatesInput[] + OR?: AccountScalarWhereWithAggregatesInput[] + NOT?: AccountScalarWhereWithAggregatesInput | AccountScalarWhereWithAggregatesInput[] + id?: StringWithAggregatesFilter<"Account"> | string + userId?: StringWithAggregatesFilter<"Account"> | string + type?: StringWithAggregatesFilter<"Account"> | string + provider?: StringWithAggregatesFilter<"Account"> | string + providerAccountId?: StringWithAggregatesFilter<"Account"> | string + refresh_token?: StringNullableWithAggregatesFilter<"Account"> | string | null + access_token?: StringNullableWithAggregatesFilter<"Account"> | string | null + expires_at?: IntNullableWithAggregatesFilter<"Account"> | number | null + token_type?: StringNullableWithAggregatesFilter<"Account"> | string | null + scope?: StringNullableWithAggregatesFilter<"Account"> | string | null + id_token?: StringNullableWithAggregatesFilter<"Account"> | string | null + session_state?: StringNullableWithAggregatesFilter<"Account"> | string | null + refresh_token_expires_in?: IntNullableWithAggregatesFilter<"Account"> | number | null + } export type SessionWhereInput = { - AND?: SessionWhereInput | SessionWhereInput[]; - OR?: SessionWhereInput[]; - NOT?: SessionWhereInput | SessionWhereInput[]; - id?: StringFilter<"Session"> | string; - sessionToken?: StringFilter<"Session"> | string; - userId?: StringFilter<"Session"> | string; - expires?: DateTimeFilter<"Session"> | Date | string; - user?: XOR; - }; + AND?: SessionWhereInput | SessionWhereInput[] + OR?: SessionWhereInput[] + NOT?: SessionWhereInput | SessionWhereInput[] + id?: StringFilter<"Session"> | string + sessionToken?: StringFilter<"Session"> | string + userId?: StringFilter<"Session"> | string + expires?: DateTimeFilter<"Session"> | Date | string + user?: XOR + } export type SessionOrderByWithRelationInput = { - id?: SortOrder; - sessionToken?: SortOrder; - userId?: SortOrder; - expires?: SortOrder; - user?: UserOrderByWithRelationInput; - _relevance?: SessionOrderByRelevanceInput; - }; + id?: SortOrder + sessionToken?: SortOrder + userId?: SortOrder + expires?: SortOrder + user?: UserOrderByWithRelationInput + _relevance?: SessionOrderByRelevanceInput + } - export type SessionWhereUniqueInput = Prisma.AtLeast< - { - id?: string; - sessionToken?: string; - AND?: SessionWhereInput | SessionWhereInput[]; - OR?: SessionWhereInput[]; - NOT?: SessionWhereInput | SessionWhereInput[]; - userId?: StringFilter<"Session"> | string; - expires?: DateTimeFilter<"Session"> | Date | string; - user?: XOR; - }, - "id" | "sessionToken" - >; + export type SessionWhereUniqueInput = Prisma.AtLeast<{ + id?: string + sessionToken?: string + AND?: SessionWhereInput | SessionWhereInput[] + OR?: SessionWhereInput[] + NOT?: SessionWhereInput | SessionWhereInput[] + userId?: StringFilter<"Session"> | string + expires?: DateTimeFilter<"Session"> | Date | string + user?: XOR + }, "id" | "sessionToken"> export type SessionOrderByWithAggregationInput = { - id?: SortOrder; - sessionToken?: SortOrder; - userId?: SortOrder; - expires?: SortOrder; - _count?: SessionCountOrderByAggregateInput; - _max?: SessionMaxOrderByAggregateInput; - _min?: SessionMinOrderByAggregateInput; - }; + id?: SortOrder + sessionToken?: SortOrder + userId?: SortOrder + expires?: SortOrder + _count?: SessionCountOrderByAggregateInput + _max?: SessionMaxOrderByAggregateInput + _min?: SessionMinOrderByAggregateInput + } export type SessionScalarWhereWithAggregatesInput = { - AND?: - | SessionScalarWhereWithAggregatesInput - | SessionScalarWhereWithAggregatesInput[]; - OR?: SessionScalarWhereWithAggregatesInput[]; - NOT?: - | SessionScalarWhereWithAggregatesInput - | SessionScalarWhereWithAggregatesInput[]; - id?: StringWithAggregatesFilter<"Session"> | string; - sessionToken?: StringWithAggregatesFilter<"Session"> | string; - userId?: StringWithAggregatesFilter<"Session"> | string; - expires?: DateTimeWithAggregatesFilter<"Session"> | Date | string; - }; + AND?: SessionScalarWhereWithAggregatesInput | SessionScalarWhereWithAggregatesInput[] + OR?: SessionScalarWhereWithAggregatesInput[] + NOT?: SessionScalarWhereWithAggregatesInput | SessionScalarWhereWithAggregatesInput[] + id?: StringWithAggregatesFilter<"Session"> | string + sessionToken?: StringWithAggregatesFilter<"Session"> | string + userId?: StringWithAggregatesFilter<"Session"> | string + expires?: DateTimeWithAggregatesFilter<"Session"> | Date | string + } export type UserWhereInput = { - AND?: UserWhereInput | UserWhereInput[]; - OR?: UserWhereInput[]; - NOT?: UserWhereInput | UserWhereInput[]; - id?: StringFilter<"User"> | string; - name?: StringNullableFilter<"User"> | string | null; - email?: StringNullableFilter<"User"> | string | null; - emailVerified?: DateTimeNullableFilter<"User"> | Date | string | null; - image?: StringNullableFilter<"User"> | string | null; - accounts?: AccountListRelationFilter; - sessions?: SessionListRelationFilter; - posts?: PostListRelationFilter; - }; + AND?: UserWhereInput | UserWhereInput[] + OR?: UserWhereInput[] + NOT?: UserWhereInput | UserWhereInput[] + id?: StringFilter<"User"> | string + name?: StringNullableFilter<"User"> | string | null + email?: StringNullableFilter<"User"> | string | null + emailVerified?: DateTimeNullableFilter<"User"> | Date | string | null + image?: StringNullableFilter<"User"> | string | null + balance?: FloatFilter<"User"> | number + accounts?: AccountListRelationFilter + sessions?: SessionListRelationFilter + shops?: ShopListRelationFilter + carts?: CartListRelationFilter + adresses?: AdressListRelationFilter + } export type UserOrderByWithRelationInput = { - id?: SortOrder; - name?: SortOrderInput | SortOrder; - email?: SortOrderInput | SortOrder; - emailVerified?: SortOrderInput | SortOrder; - image?: SortOrderInput | SortOrder; - accounts?: AccountOrderByRelationAggregateInput; - sessions?: SessionOrderByRelationAggregateInput; - posts?: PostOrderByRelationAggregateInput; - _relevance?: UserOrderByRelevanceInput; - }; + id?: SortOrder + name?: SortOrderInput | SortOrder + email?: SortOrderInput | SortOrder + emailVerified?: SortOrderInput | SortOrder + image?: SortOrderInput | SortOrder + balance?: SortOrder + accounts?: AccountOrderByRelationAggregateInput + sessions?: SessionOrderByRelationAggregateInput + shops?: ShopOrderByRelationAggregateInput + carts?: CartOrderByRelationAggregateInput + adresses?: AdressOrderByRelationAggregateInput + _relevance?: UserOrderByRelevanceInput + } - export type UserWhereUniqueInput = Prisma.AtLeast< - { - id?: string; - email?: string; - AND?: UserWhereInput | UserWhereInput[]; - OR?: UserWhereInput[]; - NOT?: UserWhereInput | UserWhereInput[]; - name?: StringNullableFilter<"User"> | string | null; - emailVerified?: DateTimeNullableFilter<"User"> | Date | string | null; - image?: StringNullableFilter<"User"> | string | null; - accounts?: AccountListRelationFilter; - sessions?: SessionListRelationFilter; - posts?: PostListRelationFilter; - }, - "id" | "email" - >; + export type UserWhereUniqueInput = Prisma.AtLeast<{ + id?: string + email?: string + AND?: UserWhereInput | UserWhereInput[] + OR?: UserWhereInput[] + NOT?: UserWhereInput | UserWhereInput[] + name?: StringNullableFilter<"User"> | string | null + emailVerified?: DateTimeNullableFilter<"User"> | Date | string | null + image?: StringNullableFilter<"User"> | string | null + balance?: FloatFilter<"User"> | number + accounts?: AccountListRelationFilter + sessions?: SessionListRelationFilter + shops?: ShopListRelationFilter + carts?: CartListRelationFilter + adresses?: AdressListRelationFilter + }, "id" | "email"> export type UserOrderByWithAggregationInput = { - id?: SortOrder; - name?: SortOrderInput | SortOrder; - email?: SortOrderInput | SortOrder; - emailVerified?: SortOrderInput | SortOrder; - image?: SortOrderInput | SortOrder; - _count?: UserCountOrderByAggregateInput; - _max?: UserMaxOrderByAggregateInput; - _min?: UserMinOrderByAggregateInput; - }; + id?: SortOrder + name?: SortOrderInput | SortOrder + email?: SortOrderInput | SortOrder + emailVerified?: SortOrderInput | SortOrder + image?: SortOrderInput | SortOrder + balance?: SortOrder + _count?: UserCountOrderByAggregateInput + _avg?: UserAvgOrderByAggregateInput + _max?: UserMaxOrderByAggregateInput + _min?: UserMinOrderByAggregateInput + _sum?: UserSumOrderByAggregateInput + } export type UserScalarWhereWithAggregatesInput = { - AND?: - | UserScalarWhereWithAggregatesInput - | UserScalarWhereWithAggregatesInput[]; - OR?: UserScalarWhereWithAggregatesInput[]; - NOT?: - | UserScalarWhereWithAggregatesInput - | UserScalarWhereWithAggregatesInput[]; - id?: StringWithAggregatesFilter<"User"> | string; - name?: StringNullableWithAggregatesFilter<"User"> | string | null; - email?: StringNullableWithAggregatesFilter<"User"> | string | null; - emailVerified?: - | DateTimeNullableWithAggregatesFilter<"User"> - | Date - | string - | null; - image?: StringNullableWithAggregatesFilter<"User"> | string | null; - }; + AND?: UserScalarWhereWithAggregatesInput | UserScalarWhereWithAggregatesInput[] + OR?: UserScalarWhereWithAggregatesInput[] + NOT?: UserScalarWhereWithAggregatesInput | UserScalarWhereWithAggregatesInput[] + id?: StringWithAggregatesFilter<"User"> | string + name?: StringNullableWithAggregatesFilter<"User"> | string | null + email?: StringNullableWithAggregatesFilter<"User"> | string | null + emailVerified?: DateTimeNullableWithAggregatesFilter<"User"> | Date | string | null + image?: StringNullableWithAggregatesFilter<"User"> | string | null + balance?: FloatWithAggregatesFilter<"User"> | number + } export type VerificationTokenWhereInput = { - AND?: VerificationTokenWhereInput | VerificationTokenWhereInput[]; - OR?: VerificationTokenWhereInput[]; - NOT?: VerificationTokenWhereInput | VerificationTokenWhereInput[]; - identifier?: StringFilter<"VerificationToken"> | string; - token?: StringFilter<"VerificationToken"> | string; - expires?: DateTimeFilter<"VerificationToken"> | Date | string; - }; + AND?: VerificationTokenWhereInput | VerificationTokenWhereInput[] + OR?: VerificationTokenWhereInput[] + NOT?: VerificationTokenWhereInput | VerificationTokenWhereInput[] + identifier?: StringFilter<"VerificationToken"> | string + token?: StringFilter<"VerificationToken"> | string + expires?: DateTimeFilter<"VerificationToken"> | Date | string + } export type VerificationTokenOrderByWithRelationInput = { - identifier?: SortOrder; - token?: SortOrder; - expires?: SortOrder; - _relevance?: VerificationTokenOrderByRelevanceInput; - }; + identifier?: SortOrder + token?: SortOrder + expires?: SortOrder + _relevance?: VerificationTokenOrderByRelevanceInput + } - export type VerificationTokenWhereUniqueInput = Prisma.AtLeast< - { - token?: string; - identifier_token?: VerificationTokenIdentifierTokenCompoundUniqueInput; - AND?: VerificationTokenWhereInput | VerificationTokenWhereInput[]; - OR?: VerificationTokenWhereInput[]; - NOT?: VerificationTokenWhereInput | VerificationTokenWhereInput[]; - identifier?: StringFilter<"VerificationToken"> | string; - expires?: DateTimeFilter<"VerificationToken"> | Date | string; - }, - "token" | "identifier_token" - >; + export type VerificationTokenWhereUniqueInput = Prisma.AtLeast<{ + token?: string + identifier_token?: VerificationTokenIdentifierTokenCompoundUniqueInput + AND?: VerificationTokenWhereInput | VerificationTokenWhereInput[] + OR?: VerificationTokenWhereInput[] + NOT?: VerificationTokenWhereInput | VerificationTokenWhereInput[] + identifier?: StringFilter<"VerificationToken"> | string + expires?: DateTimeFilter<"VerificationToken"> | Date | string + }, "token" | "identifier_token"> export type VerificationTokenOrderByWithAggregationInput = { - identifier?: SortOrder; - token?: SortOrder; - expires?: SortOrder; - _count?: VerificationTokenCountOrderByAggregateInput; - _max?: VerificationTokenMaxOrderByAggregateInput; - _min?: VerificationTokenMinOrderByAggregateInput; - }; + identifier?: SortOrder + token?: SortOrder + expires?: SortOrder + _count?: VerificationTokenCountOrderByAggregateInput + _max?: VerificationTokenMaxOrderByAggregateInput + _min?: VerificationTokenMinOrderByAggregateInput + } export type VerificationTokenScalarWhereWithAggregatesInput = { - AND?: - | VerificationTokenScalarWhereWithAggregatesInput - | VerificationTokenScalarWhereWithAggregatesInput[]; - OR?: VerificationTokenScalarWhereWithAggregatesInput[]; - NOT?: - | VerificationTokenScalarWhereWithAggregatesInput - | VerificationTokenScalarWhereWithAggregatesInput[]; - identifier?: StringWithAggregatesFilter<"VerificationToken"> | string; - token?: StringWithAggregatesFilter<"VerificationToken"> | string; - expires?: DateTimeWithAggregatesFilter<"VerificationToken"> | Date | string; - }; + AND?: VerificationTokenScalarWhereWithAggregatesInput | VerificationTokenScalarWhereWithAggregatesInput[] + OR?: VerificationTokenScalarWhereWithAggregatesInput[] + NOT?: VerificationTokenScalarWhereWithAggregatesInput | VerificationTokenScalarWhereWithAggregatesInput[] + identifier?: StringWithAggregatesFilter<"VerificationToken"> | string + token?: StringWithAggregatesFilter<"VerificationToken"> | string + expires?: DateTimeWithAggregatesFilter<"VerificationToken"> | Date | string + } - export type PostCreateInput = { - name: string; - createdAt?: Date | string; - updatedAt?: Date | string; - createdBy: UserCreateNestedOneWithoutPostsInput; - }; + export type ShopWhereInput = { + AND?: ShopWhereInput | ShopWhereInput[] + OR?: ShopWhereInput[] + NOT?: ShopWhereInput | ShopWhereInput[] + id?: IntFilter<"Shop"> | number + userId?: StringFilter<"Shop"> | string + label?: StringFilter<"Shop"> | string + user?: XOR + items?: ItemListRelationFilter + sellables?: SellableListRelationFilter + } - export type PostUncheckedCreateInput = { - id?: number; - name: string; - createdAt?: Date | string; - updatedAt?: Date | string; - createdById: string; - }; + export type ShopOrderByWithRelationInput = { + id?: SortOrder + userId?: SortOrder + label?: SortOrder + user?: UserOrderByWithRelationInput + items?: ItemOrderByRelationAggregateInput + sellables?: SellableOrderByRelationAggregateInput + _relevance?: ShopOrderByRelevanceInput + } - export type PostUpdateInput = { - name?: StringFieldUpdateOperationsInput | string; - createdAt?: DateTimeFieldUpdateOperationsInput | Date | string; - updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string; - createdBy?: UserUpdateOneRequiredWithoutPostsNestedInput; - }; + export type ShopWhereUniqueInput = Prisma.AtLeast<{ + id?: number + AND?: ShopWhereInput | ShopWhereInput[] + OR?: ShopWhereInput[] + NOT?: ShopWhereInput | ShopWhereInput[] + userId?: StringFilter<"Shop"> | string + label?: StringFilter<"Shop"> | string + user?: XOR + items?: ItemListRelationFilter + sellables?: SellableListRelationFilter + }, "id"> - export type PostUncheckedUpdateInput = { - id?: IntFieldUpdateOperationsInput | number; - name?: StringFieldUpdateOperationsInput | string; - createdAt?: DateTimeFieldUpdateOperationsInput | Date | string; - updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string; - createdById?: StringFieldUpdateOperationsInput | string; - }; + export type ShopOrderByWithAggregationInput = { + id?: SortOrder + userId?: SortOrder + label?: SortOrder + _count?: ShopCountOrderByAggregateInput + _avg?: ShopAvgOrderByAggregateInput + _max?: ShopMaxOrderByAggregateInput + _min?: ShopMinOrderByAggregateInput + _sum?: ShopSumOrderByAggregateInput + } - export type PostCreateManyInput = { - id?: number; - name: string; - createdAt?: Date | string; - updatedAt?: Date | string; - createdById: string; - }; + export type ShopScalarWhereWithAggregatesInput = { + AND?: ShopScalarWhereWithAggregatesInput | ShopScalarWhereWithAggregatesInput[] + OR?: ShopScalarWhereWithAggregatesInput[] + NOT?: ShopScalarWhereWithAggregatesInput | ShopScalarWhereWithAggregatesInput[] + id?: IntWithAggregatesFilter<"Shop"> | number + userId?: StringWithAggregatesFilter<"Shop"> | string + label?: StringWithAggregatesFilter<"Shop"> | string + } - export type PostUpdateManyMutationInput = { - name?: StringFieldUpdateOperationsInput | string; - createdAt?: DateTimeFieldUpdateOperationsInput | Date | string; - updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string; - }; + export type ItemWhereInput = { + AND?: ItemWhereInput | ItemWhereInput[] + OR?: ItemWhereInput[] + NOT?: ItemWhereInput | ItemWhereInput[] + item_name?: StringFilter<"Item"> | string + stock?: IntFilter<"Item"> | number + shopId?: IntFilter<"Item"> | number + shop?: XOR + sellables?: SellableListRelationFilter + } - export type PostUncheckedUpdateManyInput = { - id?: IntFieldUpdateOperationsInput | number; - name?: StringFieldUpdateOperationsInput | string; - createdAt?: DateTimeFieldUpdateOperationsInput | Date | string; - updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string; - createdById?: StringFieldUpdateOperationsInput | string; - }; + export type ItemOrderByWithRelationInput = { + item_name?: SortOrder + stock?: SortOrder + shopId?: SortOrder + shop?: ShopOrderByWithRelationInput + sellables?: SellableOrderByRelationAggregateInput + _relevance?: ItemOrderByRelevanceInput + } + + export type ItemWhereUniqueInput = Prisma.AtLeast<{ + item_name?: string + AND?: ItemWhereInput | ItemWhereInput[] + OR?: ItemWhereInput[] + NOT?: ItemWhereInput | ItemWhereInput[] + stock?: IntFilter<"Item"> | number + shopId?: IntFilter<"Item"> | number + shop?: XOR + sellables?: SellableListRelationFilter + }, "item_name"> + + export type ItemOrderByWithAggregationInput = { + item_name?: SortOrder + stock?: SortOrder + shopId?: SortOrder + _count?: ItemCountOrderByAggregateInput + _avg?: ItemAvgOrderByAggregateInput + _max?: ItemMaxOrderByAggregateInput + _min?: ItemMinOrderByAggregateInput + _sum?: ItemSumOrderByAggregateInput + } + + export type ItemScalarWhereWithAggregatesInput = { + AND?: ItemScalarWhereWithAggregatesInput | ItemScalarWhereWithAggregatesInput[] + OR?: ItemScalarWhereWithAggregatesInput[] + NOT?: ItemScalarWhereWithAggregatesInput | ItemScalarWhereWithAggregatesInput[] + item_name?: StringWithAggregatesFilter<"Item"> | string + stock?: IntWithAggregatesFilter<"Item"> | number + shopId?: IntWithAggregatesFilter<"Item"> | number + } + + export type SellableWhereInput = { + AND?: SellableWhereInput | SellableWhereInput[] + OR?: SellableWhereInput[] + NOT?: SellableWhereInput | SellableWhereInput[] + id?: StringFilter<"Sellable"> | string + item_name?: StringFilter<"Sellable"> | string + amount?: IntFilter<"Sellable"> | number + price?: FloatFilter<"Sellable"> | number + shopId?: IntFilter<"Sellable"> | number + enabled?: BoolFilter<"Sellable"> | boolean + shop?: XOR + item?: XOR + cartItems?: CartItemListRelationFilter + } + + export type SellableOrderByWithRelationInput = { + id?: SortOrder + item_name?: SortOrder + amount?: SortOrder + price?: SortOrder + shopId?: SortOrder + enabled?: SortOrder + shop?: ShopOrderByWithRelationInput + item?: ItemOrderByWithRelationInput + cartItems?: CartItemOrderByRelationAggregateInput + _relevance?: SellableOrderByRelevanceInput + } + + export type SellableWhereUniqueInput = Prisma.AtLeast<{ + id?: string + AND?: SellableWhereInput | SellableWhereInput[] + OR?: SellableWhereInput[] + NOT?: SellableWhereInput | SellableWhereInput[] + item_name?: StringFilter<"Sellable"> | string + amount?: IntFilter<"Sellable"> | number + price?: FloatFilter<"Sellable"> | number + shopId?: IntFilter<"Sellable"> | number + enabled?: BoolFilter<"Sellable"> | boolean + shop?: XOR + item?: XOR + cartItems?: CartItemListRelationFilter + }, "id"> + + export type SellableOrderByWithAggregationInput = { + id?: SortOrder + item_name?: SortOrder + amount?: SortOrder + price?: SortOrder + shopId?: SortOrder + enabled?: SortOrder + _count?: SellableCountOrderByAggregateInput + _avg?: SellableAvgOrderByAggregateInput + _max?: SellableMaxOrderByAggregateInput + _min?: SellableMinOrderByAggregateInput + _sum?: SellableSumOrderByAggregateInput + } + + export type SellableScalarWhereWithAggregatesInput = { + AND?: SellableScalarWhereWithAggregatesInput | SellableScalarWhereWithAggregatesInput[] + OR?: SellableScalarWhereWithAggregatesInput[] + NOT?: SellableScalarWhereWithAggregatesInput | SellableScalarWhereWithAggregatesInput[] + id?: StringWithAggregatesFilter<"Sellable"> | string + item_name?: StringWithAggregatesFilter<"Sellable"> | string + amount?: IntWithAggregatesFilter<"Sellable"> | number + price?: FloatWithAggregatesFilter<"Sellable"> | number + shopId?: IntWithAggregatesFilter<"Sellable"> | number + enabled?: BoolWithAggregatesFilter<"Sellable"> | boolean + } + + export type CartWhereInput = { + AND?: CartWhereInput | CartWhereInput[] + OR?: CartWhereInput[] + NOT?: CartWhereInput | CartWhereInput[] + id?: StringFilter<"Cart"> | string + userId?: StringFilter<"Cart"> | string + user?: XOR + cartItems?: CartItemListRelationFilter + } + + export type CartOrderByWithRelationInput = { + id?: SortOrder + userId?: SortOrder + user?: UserOrderByWithRelationInput + cartItems?: CartItemOrderByRelationAggregateInput + _relevance?: CartOrderByRelevanceInput + } + + export type CartWhereUniqueInput = Prisma.AtLeast<{ + id?: string + AND?: CartWhereInput | CartWhereInput[] + OR?: CartWhereInput[] + NOT?: CartWhereInput | CartWhereInput[] + userId?: StringFilter<"Cart"> | string + user?: XOR + cartItems?: CartItemListRelationFilter + }, "id"> + + export type CartOrderByWithAggregationInput = { + id?: SortOrder + userId?: SortOrder + _count?: CartCountOrderByAggregateInput + _max?: CartMaxOrderByAggregateInput + _min?: CartMinOrderByAggregateInput + } + + export type CartScalarWhereWithAggregatesInput = { + AND?: CartScalarWhereWithAggregatesInput | CartScalarWhereWithAggregatesInput[] + OR?: CartScalarWhereWithAggregatesInput[] + NOT?: CartScalarWhereWithAggregatesInput | CartScalarWhereWithAggregatesInput[] + id?: StringWithAggregatesFilter<"Cart"> | string + userId?: StringWithAggregatesFilter<"Cart"> | string + } + + export type CartItemWhereInput = { + AND?: CartItemWhereInput | CartItemWhereInput[] + OR?: CartItemWhereInput[] + NOT?: CartItemWhereInput | CartItemWhereInput[] + itemId?: StringFilter<"CartItem"> | string + quantity?: IntFilter<"CartItem"> | number + cartId?: StringFilter<"CartItem"> | string + cart?: XOR + sellable?: XOR + } + + export type CartItemOrderByWithRelationInput = { + itemId?: SortOrder + quantity?: SortOrder + cartId?: SortOrder + cart?: CartOrderByWithRelationInput + sellable?: SellableOrderByWithRelationInput + _relevance?: CartItemOrderByRelevanceInput + } + + export type CartItemWhereUniqueInput = Prisma.AtLeast<{ + itemId?: string + AND?: CartItemWhereInput | CartItemWhereInput[] + OR?: CartItemWhereInput[] + NOT?: CartItemWhereInput | CartItemWhereInput[] + quantity?: IntFilter<"CartItem"> | number + cartId?: StringFilter<"CartItem"> | string + cart?: XOR + sellable?: XOR + }, "itemId"> + + export type CartItemOrderByWithAggregationInput = { + itemId?: SortOrder + quantity?: SortOrder + cartId?: SortOrder + _count?: CartItemCountOrderByAggregateInput + _avg?: CartItemAvgOrderByAggregateInput + _max?: CartItemMaxOrderByAggregateInput + _min?: CartItemMinOrderByAggregateInput + _sum?: CartItemSumOrderByAggregateInput + } + + export type CartItemScalarWhereWithAggregatesInput = { + AND?: CartItemScalarWhereWithAggregatesInput | CartItemScalarWhereWithAggregatesInput[] + OR?: CartItemScalarWhereWithAggregatesInput[] + NOT?: CartItemScalarWhereWithAggregatesInput | CartItemScalarWhereWithAggregatesInput[] + itemId?: StringWithAggregatesFilter<"CartItem"> | string + quantity?: IntWithAggregatesFilter<"CartItem"> | number + cartId?: StringWithAggregatesFilter<"CartItem"> | string + } + + export type AdressWhereInput = { + AND?: AdressWhereInput | AdressWhereInput[] + OR?: AdressWhereInput[] + NOT?: AdressWhereInput | AdressWhereInput[] + id?: StringFilter<"Adress"> | string + userId?: StringFilter<"Adress"> | string + adress?: StringFilter<"Adress"> | string + user?: XOR + } + + export type AdressOrderByWithRelationInput = { + id?: SortOrder + userId?: SortOrder + adress?: SortOrder + user?: UserOrderByWithRelationInput + _relevance?: AdressOrderByRelevanceInput + } + + export type AdressWhereUniqueInput = Prisma.AtLeast<{ + id?: string + AND?: AdressWhereInput | AdressWhereInput[] + OR?: AdressWhereInput[] + NOT?: AdressWhereInput | AdressWhereInput[] + userId?: StringFilter<"Adress"> | string + adress?: StringFilter<"Adress"> | string + user?: XOR + }, "id"> + + export type AdressOrderByWithAggregationInput = { + id?: SortOrder + userId?: SortOrder + adress?: SortOrder + _count?: AdressCountOrderByAggregateInput + _max?: AdressMaxOrderByAggregateInput + _min?: AdressMinOrderByAggregateInput + } + + export type AdressScalarWhereWithAggregatesInput = { + AND?: AdressScalarWhereWithAggregatesInput | AdressScalarWhereWithAggregatesInput[] + OR?: AdressScalarWhereWithAggregatesInput[] + NOT?: AdressScalarWhereWithAggregatesInput | AdressScalarWhereWithAggregatesInput[] + id?: StringWithAggregatesFilter<"Adress"> | string + userId?: StringWithAggregatesFilter<"Adress"> | string + adress?: StringWithAggregatesFilter<"Adress"> | string + } export type AccountCreateInput = { - id?: string; - type: string; - provider: string; - providerAccountId: string; - refresh_token?: string | null; - access_token?: string | null; - expires_at?: number | null; - token_type?: string | null; - scope?: string | null; - id_token?: string | null; - session_state?: string | null; - refresh_token_expires_in?: number | null; - user: UserCreateNestedOneWithoutAccountsInput; - }; + id?: string + type: string + provider: string + providerAccountId: string + refresh_token?: string | null + access_token?: string | null + expires_at?: number | null + token_type?: string | null + scope?: string | null + id_token?: string | null + session_state?: string | null + refresh_token_expires_in?: number | null + user: UserCreateNestedOneWithoutAccountsInput + } export type AccountUncheckedCreateInput = { - id?: string; - userId: string; - type: string; - provider: string; - providerAccountId: string; - refresh_token?: string | null; - access_token?: string | null; - expires_at?: number | null; - token_type?: string | null; - scope?: string | null; - id_token?: string | null; - session_state?: string | null; - refresh_token_expires_in?: number | null; - }; + id?: string + userId: string + type: string + provider: string + providerAccountId: string + refresh_token?: string | null + access_token?: string | null + expires_at?: number | null + token_type?: string | null + scope?: string | null + id_token?: string | null + session_state?: string | null + refresh_token_expires_in?: number | null + } export type AccountUpdateInput = { - id?: StringFieldUpdateOperationsInput | string; - type?: StringFieldUpdateOperationsInput | string; - provider?: StringFieldUpdateOperationsInput | string; - providerAccountId?: StringFieldUpdateOperationsInput | string; - refresh_token?: NullableStringFieldUpdateOperationsInput | string | null; - access_token?: NullableStringFieldUpdateOperationsInput | string | null; - expires_at?: NullableIntFieldUpdateOperationsInput | number | null; - token_type?: NullableStringFieldUpdateOperationsInput | string | null; - scope?: NullableStringFieldUpdateOperationsInput | string | null; - id_token?: NullableStringFieldUpdateOperationsInput | string | null; - session_state?: NullableStringFieldUpdateOperationsInput | string | null; - refresh_token_expires_in?: - | NullableIntFieldUpdateOperationsInput - | number - | null; - user?: UserUpdateOneRequiredWithoutAccountsNestedInput; - }; + id?: StringFieldUpdateOperationsInput | string + type?: StringFieldUpdateOperationsInput | string + provider?: StringFieldUpdateOperationsInput | string + providerAccountId?: StringFieldUpdateOperationsInput | string + refresh_token?: NullableStringFieldUpdateOperationsInput | string | null + access_token?: NullableStringFieldUpdateOperationsInput | string | null + expires_at?: NullableIntFieldUpdateOperationsInput | number | null + token_type?: NullableStringFieldUpdateOperationsInput | string | null + scope?: NullableStringFieldUpdateOperationsInput | string | null + id_token?: NullableStringFieldUpdateOperationsInput | string | null + session_state?: NullableStringFieldUpdateOperationsInput | string | null + refresh_token_expires_in?: NullableIntFieldUpdateOperationsInput | number | null + user?: UserUpdateOneRequiredWithoutAccountsNestedInput + } export type AccountUncheckedUpdateInput = { - id?: StringFieldUpdateOperationsInput | string; - userId?: StringFieldUpdateOperationsInput | string; - type?: StringFieldUpdateOperationsInput | string; - provider?: StringFieldUpdateOperationsInput | string; - providerAccountId?: StringFieldUpdateOperationsInput | string; - refresh_token?: NullableStringFieldUpdateOperationsInput | string | null; - access_token?: NullableStringFieldUpdateOperationsInput | string | null; - expires_at?: NullableIntFieldUpdateOperationsInput | number | null; - token_type?: NullableStringFieldUpdateOperationsInput | string | null; - scope?: NullableStringFieldUpdateOperationsInput | string | null; - id_token?: NullableStringFieldUpdateOperationsInput | string | null; - session_state?: NullableStringFieldUpdateOperationsInput | string | null; - refresh_token_expires_in?: - | NullableIntFieldUpdateOperationsInput - | number - | null; - }; + id?: StringFieldUpdateOperationsInput | string + userId?: StringFieldUpdateOperationsInput | string + type?: StringFieldUpdateOperationsInput | string + provider?: StringFieldUpdateOperationsInput | string + providerAccountId?: StringFieldUpdateOperationsInput | string + refresh_token?: NullableStringFieldUpdateOperationsInput | string | null + access_token?: NullableStringFieldUpdateOperationsInput | string | null + expires_at?: NullableIntFieldUpdateOperationsInput | number | null + token_type?: NullableStringFieldUpdateOperationsInput | string | null + scope?: NullableStringFieldUpdateOperationsInput | string | null + id_token?: NullableStringFieldUpdateOperationsInput | string | null + session_state?: NullableStringFieldUpdateOperationsInput | string | null + refresh_token_expires_in?: NullableIntFieldUpdateOperationsInput | number | null + } export type AccountCreateManyInput = { - id?: string; - userId: string; - type: string; - provider: string; - providerAccountId: string; - refresh_token?: string | null; - access_token?: string | null; - expires_at?: number | null; - token_type?: string | null; - scope?: string | null; - id_token?: string | null; - session_state?: string | null; - refresh_token_expires_in?: number | null; - }; + id?: string + userId: string + type: string + provider: string + providerAccountId: string + refresh_token?: string | null + access_token?: string | null + expires_at?: number | null + token_type?: string | null + scope?: string | null + id_token?: string | null + session_state?: string | null + refresh_token_expires_in?: number | null + } export type AccountUpdateManyMutationInput = { - id?: StringFieldUpdateOperationsInput | string; - type?: StringFieldUpdateOperationsInput | string; - provider?: StringFieldUpdateOperationsInput | string; - providerAccountId?: StringFieldUpdateOperationsInput | string; - refresh_token?: NullableStringFieldUpdateOperationsInput | string | null; - access_token?: NullableStringFieldUpdateOperationsInput | string | null; - expires_at?: NullableIntFieldUpdateOperationsInput | number | null; - token_type?: NullableStringFieldUpdateOperationsInput | string | null; - scope?: NullableStringFieldUpdateOperationsInput | string | null; - id_token?: NullableStringFieldUpdateOperationsInput | string | null; - session_state?: NullableStringFieldUpdateOperationsInput | string | null; - refresh_token_expires_in?: - | NullableIntFieldUpdateOperationsInput - | number - | null; - }; + id?: StringFieldUpdateOperationsInput | string + type?: StringFieldUpdateOperationsInput | string + provider?: StringFieldUpdateOperationsInput | string + providerAccountId?: StringFieldUpdateOperationsInput | string + refresh_token?: NullableStringFieldUpdateOperationsInput | string | null + access_token?: NullableStringFieldUpdateOperationsInput | string | null + expires_at?: NullableIntFieldUpdateOperationsInput | number | null + token_type?: NullableStringFieldUpdateOperationsInput | string | null + scope?: NullableStringFieldUpdateOperationsInput | string | null + id_token?: NullableStringFieldUpdateOperationsInput | string | null + session_state?: NullableStringFieldUpdateOperationsInput | string | null + refresh_token_expires_in?: NullableIntFieldUpdateOperationsInput | number | null + } export type AccountUncheckedUpdateManyInput = { - id?: StringFieldUpdateOperationsInput | string; - userId?: StringFieldUpdateOperationsInput | string; - type?: StringFieldUpdateOperationsInput | string; - provider?: StringFieldUpdateOperationsInput | string; - providerAccountId?: StringFieldUpdateOperationsInput | string; - refresh_token?: NullableStringFieldUpdateOperationsInput | string | null; - access_token?: NullableStringFieldUpdateOperationsInput | string | null; - expires_at?: NullableIntFieldUpdateOperationsInput | number | null; - token_type?: NullableStringFieldUpdateOperationsInput | string | null; - scope?: NullableStringFieldUpdateOperationsInput | string | null; - id_token?: NullableStringFieldUpdateOperationsInput | string | null; - session_state?: NullableStringFieldUpdateOperationsInput | string | null; - refresh_token_expires_in?: - | NullableIntFieldUpdateOperationsInput - | number - | null; - }; + id?: StringFieldUpdateOperationsInput | string + userId?: StringFieldUpdateOperationsInput | string + type?: StringFieldUpdateOperationsInput | string + provider?: StringFieldUpdateOperationsInput | string + providerAccountId?: StringFieldUpdateOperationsInput | string + refresh_token?: NullableStringFieldUpdateOperationsInput | string | null + access_token?: NullableStringFieldUpdateOperationsInput | string | null + expires_at?: NullableIntFieldUpdateOperationsInput | number | null + token_type?: NullableStringFieldUpdateOperationsInput | string | null + scope?: NullableStringFieldUpdateOperationsInput | string | null + id_token?: NullableStringFieldUpdateOperationsInput | string | null + session_state?: NullableStringFieldUpdateOperationsInput | string | null + refresh_token_expires_in?: NullableIntFieldUpdateOperationsInput | number | null + } export type SessionCreateInput = { - id?: string; - sessionToken: string; - expires: Date | string; - user: UserCreateNestedOneWithoutSessionsInput; - }; + id?: string + sessionToken: string + expires: Date | string + user: UserCreateNestedOneWithoutSessionsInput + } export type SessionUncheckedCreateInput = { - id?: string; - sessionToken: string; - userId: string; - expires: Date | string; - }; + id?: string + sessionToken: string + userId: string + expires: Date | string + } export type SessionUpdateInput = { - id?: StringFieldUpdateOperationsInput | string; - sessionToken?: StringFieldUpdateOperationsInput | string; - expires?: DateTimeFieldUpdateOperationsInput | Date | string; - user?: UserUpdateOneRequiredWithoutSessionsNestedInput; - }; + id?: StringFieldUpdateOperationsInput | string + sessionToken?: StringFieldUpdateOperationsInput | string + expires?: DateTimeFieldUpdateOperationsInput | Date | string + user?: UserUpdateOneRequiredWithoutSessionsNestedInput + } export type SessionUncheckedUpdateInput = { - id?: StringFieldUpdateOperationsInput | string; - sessionToken?: StringFieldUpdateOperationsInput | string; - userId?: StringFieldUpdateOperationsInput | string; - expires?: DateTimeFieldUpdateOperationsInput | Date | string; - }; + id?: StringFieldUpdateOperationsInput | string + sessionToken?: StringFieldUpdateOperationsInput | string + userId?: StringFieldUpdateOperationsInput | string + expires?: DateTimeFieldUpdateOperationsInput | Date | string + } export type SessionCreateManyInput = { - id?: string; - sessionToken: string; - userId: string; - expires: Date | string; - }; + id?: string + sessionToken: string + userId: string + expires: Date | string + } export type SessionUpdateManyMutationInput = { - id?: StringFieldUpdateOperationsInput | string; - sessionToken?: StringFieldUpdateOperationsInput | string; - expires?: DateTimeFieldUpdateOperationsInput | Date | string; - }; + id?: StringFieldUpdateOperationsInput | string + sessionToken?: StringFieldUpdateOperationsInput | string + expires?: DateTimeFieldUpdateOperationsInput | Date | string + } export type SessionUncheckedUpdateManyInput = { - id?: StringFieldUpdateOperationsInput | string; - sessionToken?: StringFieldUpdateOperationsInput | string; - userId?: StringFieldUpdateOperationsInput | string; - expires?: DateTimeFieldUpdateOperationsInput | Date | string; - }; + id?: StringFieldUpdateOperationsInput | string + sessionToken?: StringFieldUpdateOperationsInput | string + userId?: StringFieldUpdateOperationsInput | string + expires?: DateTimeFieldUpdateOperationsInput | Date | string + } export type UserCreateInput = { - id?: string; - name?: string | null; - email?: string | null; - emailVerified?: Date | string | null; - image?: string | null; - accounts?: AccountCreateNestedManyWithoutUserInput; - sessions?: SessionCreateNestedManyWithoutUserInput; - posts?: PostCreateNestedManyWithoutCreatedByInput; - }; + id?: string + name?: string | null + email?: string | null + emailVerified?: Date | string | null + image?: string | null + balance?: number + accounts?: AccountCreateNestedManyWithoutUserInput + sessions?: SessionCreateNestedManyWithoutUserInput + shops?: ShopCreateNestedManyWithoutUserInput + carts?: CartCreateNestedManyWithoutUserInput + adresses?: AdressCreateNestedManyWithoutUserInput + } export type UserUncheckedCreateInput = { - id?: string; - name?: string | null; - email?: string | null; - emailVerified?: Date | string | null; - image?: string | null; - accounts?: AccountUncheckedCreateNestedManyWithoutUserInput; - sessions?: SessionUncheckedCreateNestedManyWithoutUserInput; - posts?: PostUncheckedCreateNestedManyWithoutCreatedByInput; - }; + id?: string + name?: string | null + email?: string | null + emailVerified?: Date | string | null + image?: string | null + balance?: number + accounts?: AccountUncheckedCreateNestedManyWithoutUserInput + sessions?: SessionUncheckedCreateNestedManyWithoutUserInput + shops?: ShopUncheckedCreateNestedManyWithoutUserInput + carts?: CartUncheckedCreateNestedManyWithoutUserInput + adresses?: AdressUncheckedCreateNestedManyWithoutUserInput + } export type UserUpdateInput = { - id?: StringFieldUpdateOperationsInput | string; - name?: NullableStringFieldUpdateOperationsInput | string | null; - email?: NullableStringFieldUpdateOperationsInput | string | null; - emailVerified?: - | NullableDateTimeFieldUpdateOperationsInput - | Date - | string - | null; - image?: NullableStringFieldUpdateOperationsInput | string | null; - accounts?: AccountUpdateManyWithoutUserNestedInput; - sessions?: SessionUpdateManyWithoutUserNestedInput; - posts?: PostUpdateManyWithoutCreatedByNestedInput; - }; + id?: StringFieldUpdateOperationsInput | string + name?: NullableStringFieldUpdateOperationsInput | string | null + email?: NullableStringFieldUpdateOperationsInput | string | null + emailVerified?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + image?: NullableStringFieldUpdateOperationsInput | string | null + balance?: FloatFieldUpdateOperationsInput | number + accounts?: AccountUpdateManyWithoutUserNestedInput + sessions?: SessionUpdateManyWithoutUserNestedInput + shops?: ShopUpdateManyWithoutUserNestedInput + carts?: CartUpdateManyWithoutUserNestedInput + adresses?: AdressUpdateManyWithoutUserNestedInput + } export type UserUncheckedUpdateInput = { - id?: StringFieldUpdateOperationsInput | string; - name?: NullableStringFieldUpdateOperationsInput | string | null; - email?: NullableStringFieldUpdateOperationsInput | string | null; - emailVerified?: - | NullableDateTimeFieldUpdateOperationsInput - | Date - | string - | null; - image?: NullableStringFieldUpdateOperationsInput | string | null; - accounts?: AccountUncheckedUpdateManyWithoutUserNestedInput; - sessions?: SessionUncheckedUpdateManyWithoutUserNestedInput; - posts?: PostUncheckedUpdateManyWithoutCreatedByNestedInput; - }; + id?: StringFieldUpdateOperationsInput | string + name?: NullableStringFieldUpdateOperationsInput | string | null + email?: NullableStringFieldUpdateOperationsInput | string | null + emailVerified?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + image?: NullableStringFieldUpdateOperationsInput | string | null + balance?: FloatFieldUpdateOperationsInput | number + accounts?: AccountUncheckedUpdateManyWithoutUserNestedInput + sessions?: SessionUncheckedUpdateManyWithoutUserNestedInput + shops?: ShopUncheckedUpdateManyWithoutUserNestedInput + carts?: CartUncheckedUpdateManyWithoutUserNestedInput + adresses?: AdressUncheckedUpdateManyWithoutUserNestedInput + } export type UserCreateManyInput = { - id?: string; - name?: string | null; - email?: string | null; - emailVerified?: Date | string | null; - image?: string | null; - }; + id?: string + name?: string | null + email?: string | null + emailVerified?: Date | string | null + image?: string | null + balance?: number + } export type UserUpdateManyMutationInput = { - id?: StringFieldUpdateOperationsInput | string; - name?: NullableStringFieldUpdateOperationsInput | string | null; - email?: NullableStringFieldUpdateOperationsInput | string | null; - emailVerified?: - | NullableDateTimeFieldUpdateOperationsInput - | Date - | string - | null; - image?: NullableStringFieldUpdateOperationsInput | string | null; - }; + id?: StringFieldUpdateOperationsInput | string + name?: NullableStringFieldUpdateOperationsInput | string | null + email?: NullableStringFieldUpdateOperationsInput | string | null + emailVerified?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + image?: NullableStringFieldUpdateOperationsInput | string | null + balance?: FloatFieldUpdateOperationsInput | number + } export type UserUncheckedUpdateManyInput = { - id?: StringFieldUpdateOperationsInput | string; - name?: NullableStringFieldUpdateOperationsInput | string | null; - email?: NullableStringFieldUpdateOperationsInput | string | null; - emailVerified?: - | NullableDateTimeFieldUpdateOperationsInput - | Date - | string - | null; - image?: NullableStringFieldUpdateOperationsInput | string | null; - }; + id?: StringFieldUpdateOperationsInput | string + name?: NullableStringFieldUpdateOperationsInput | string | null + email?: NullableStringFieldUpdateOperationsInput | string | null + emailVerified?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + image?: NullableStringFieldUpdateOperationsInput | string | null + balance?: FloatFieldUpdateOperationsInput | number + } export type VerificationTokenCreateInput = { - identifier: string; - token: string; - expires: Date | string; - }; + identifier: string + token: string + expires: Date | string + } export type VerificationTokenUncheckedCreateInput = { - identifier: string; - token: string; - expires: Date | string; - }; + identifier: string + token: string + expires: Date | string + } export type VerificationTokenUpdateInput = { - identifier?: StringFieldUpdateOperationsInput | string; - token?: StringFieldUpdateOperationsInput | string; - expires?: DateTimeFieldUpdateOperationsInput | Date | string; - }; + identifier?: StringFieldUpdateOperationsInput | string + token?: StringFieldUpdateOperationsInput | string + expires?: DateTimeFieldUpdateOperationsInput | Date | string + } export type VerificationTokenUncheckedUpdateInput = { - identifier?: StringFieldUpdateOperationsInput | string; - token?: StringFieldUpdateOperationsInput | string; - expires?: DateTimeFieldUpdateOperationsInput | Date | string; - }; + identifier?: StringFieldUpdateOperationsInput | string + token?: StringFieldUpdateOperationsInput | string + expires?: DateTimeFieldUpdateOperationsInput | Date | string + } export type VerificationTokenCreateManyInput = { - identifier: string; - token: string; - expires: Date | string; - }; + identifier: string + token: string + expires: Date | string + } export type VerificationTokenUpdateManyMutationInput = { - identifier?: StringFieldUpdateOperationsInput | string; - token?: StringFieldUpdateOperationsInput | string; - expires?: DateTimeFieldUpdateOperationsInput | Date | string; - }; + identifier?: StringFieldUpdateOperationsInput | string + token?: StringFieldUpdateOperationsInput | string + expires?: DateTimeFieldUpdateOperationsInput | Date | string + } export type VerificationTokenUncheckedUpdateManyInput = { - identifier?: StringFieldUpdateOperationsInput | string; - token?: StringFieldUpdateOperationsInput | string; - expires?: DateTimeFieldUpdateOperationsInput | Date | string; - }; + identifier?: StringFieldUpdateOperationsInput | string + token?: StringFieldUpdateOperationsInput | string + expires?: DateTimeFieldUpdateOperationsInput | Date | string + } - export type IntFilter<$PrismaModel = never> = { - equals?: number | IntFieldRefInput<$PrismaModel>; - in?: number[]; - notIn?: number[]; - lt?: number | IntFieldRefInput<$PrismaModel>; - lte?: number | IntFieldRefInput<$PrismaModel>; - gt?: number | IntFieldRefInput<$PrismaModel>; - gte?: number | IntFieldRefInput<$PrismaModel>; - not?: NestedIntFilter<$PrismaModel> | number; - }; + export type ShopCreateInput = { + id: number + label: string + user: UserCreateNestedOneWithoutShopsInput + items?: ItemCreateNestedManyWithoutShopInput + sellables?: SellableCreateNestedManyWithoutShopInput + } + + export type ShopUncheckedCreateInput = { + id: number + userId: string + label: string + items?: ItemUncheckedCreateNestedManyWithoutShopInput + sellables?: SellableUncheckedCreateNestedManyWithoutShopInput + } + + export type ShopUpdateInput = { + id?: IntFieldUpdateOperationsInput | number + label?: StringFieldUpdateOperationsInput | string + user?: UserUpdateOneRequiredWithoutShopsNestedInput + items?: ItemUpdateManyWithoutShopNestedInput + sellables?: SellableUpdateManyWithoutShopNestedInput + } + + export type ShopUncheckedUpdateInput = { + id?: IntFieldUpdateOperationsInput | number + userId?: StringFieldUpdateOperationsInput | string + label?: StringFieldUpdateOperationsInput | string + items?: ItemUncheckedUpdateManyWithoutShopNestedInput + sellables?: SellableUncheckedUpdateManyWithoutShopNestedInput + } + + export type ShopCreateManyInput = { + id: number + userId: string + label: string + } + + export type ShopUpdateManyMutationInput = { + id?: IntFieldUpdateOperationsInput | number + label?: StringFieldUpdateOperationsInput | string + } + + export type ShopUncheckedUpdateManyInput = { + id?: IntFieldUpdateOperationsInput | number + userId?: StringFieldUpdateOperationsInput | string + label?: StringFieldUpdateOperationsInput | string + } + + export type ItemCreateInput = { + item_name: string + stock: number + shop: ShopCreateNestedOneWithoutItemsInput + sellables?: SellableCreateNestedManyWithoutItemInput + } + + export type ItemUncheckedCreateInput = { + item_name: string + stock: number + shopId: number + sellables?: SellableUncheckedCreateNestedManyWithoutItemInput + } + + export type ItemUpdateInput = { + item_name?: StringFieldUpdateOperationsInput | string + stock?: IntFieldUpdateOperationsInput | number + shop?: ShopUpdateOneRequiredWithoutItemsNestedInput + sellables?: SellableUpdateManyWithoutItemNestedInput + } + + export type ItemUncheckedUpdateInput = { + item_name?: StringFieldUpdateOperationsInput | string + stock?: IntFieldUpdateOperationsInput | number + shopId?: IntFieldUpdateOperationsInput | number + sellables?: SellableUncheckedUpdateManyWithoutItemNestedInput + } + + export type ItemCreateManyInput = { + item_name: string + stock: number + shopId: number + } + + export type ItemUpdateManyMutationInput = { + item_name?: StringFieldUpdateOperationsInput | string + stock?: IntFieldUpdateOperationsInput | number + } + + export type ItemUncheckedUpdateManyInput = { + item_name?: StringFieldUpdateOperationsInput | string + stock?: IntFieldUpdateOperationsInput | number + shopId?: IntFieldUpdateOperationsInput | number + } + + export type SellableCreateInput = { + id?: string + amount: number + price: number + enabled?: boolean + shop: ShopCreateNestedOneWithoutSellablesInput + item: ItemCreateNestedOneWithoutSellablesInput + cartItems?: CartItemCreateNestedManyWithoutSellableInput + } + + export type SellableUncheckedCreateInput = { + id?: string + item_name: string + amount: number + price: number + shopId: number + enabled?: boolean + cartItems?: CartItemUncheckedCreateNestedManyWithoutSellableInput + } + + export type SellableUpdateInput = { + id?: StringFieldUpdateOperationsInput | string + amount?: IntFieldUpdateOperationsInput | number + price?: FloatFieldUpdateOperationsInput | number + enabled?: BoolFieldUpdateOperationsInput | boolean + shop?: ShopUpdateOneRequiredWithoutSellablesNestedInput + item?: ItemUpdateOneRequiredWithoutSellablesNestedInput + cartItems?: CartItemUpdateManyWithoutSellableNestedInput + } + + export type SellableUncheckedUpdateInput = { + id?: StringFieldUpdateOperationsInput | string + item_name?: StringFieldUpdateOperationsInput | string + amount?: IntFieldUpdateOperationsInput | number + price?: FloatFieldUpdateOperationsInput | number + shopId?: IntFieldUpdateOperationsInput | number + enabled?: BoolFieldUpdateOperationsInput | boolean + cartItems?: CartItemUncheckedUpdateManyWithoutSellableNestedInput + } + + export type SellableCreateManyInput = { + id?: string + item_name: string + amount: number + price: number + shopId: number + enabled?: boolean + } + + export type SellableUpdateManyMutationInput = { + id?: StringFieldUpdateOperationsInput | string + amount?: IntFieldUpdateOperationsInput | number + price?: FloatFieldUpdateOperationsInput | number + enabled?: BoolFieldUpdateOperationsInput | boolean + } + + export type SellableUncheckedUpdateManyInput = { + id?: StringFieldUpdateOperationsInput | string + item_name?: StringFieldUpdateOperationsInput | string + amount?: IntFieldUpdateOperationsInput | number + price?: FloatFieldUpdateOperationsInput | number + shopId?: IntFieldUpdateOperationsInput | number + enabled?: BoolFieldUpdateOperationsInput | boolean + } + + export type CartCreateInput = { + id: string + user: UserCreateNestedOneWithoutCartsInput + cartItems?: CartItemCreateNestedManyWithoutCartInput + } + + export type CartUncheckedCreateInput = { + id: string + userId: string + cartItems?: CartItemUncheckedCreateNestedManyWithoutCartInput + } + + export type CartUpdateInput = { + id?: StringFieldUpdateOperationsInput | string + user?: UserUpdateOneRequiredWithoutCartsNestedInput + cartItems?: CartItemUpdateManyWithoutCartNestedInput + } + + export type CartUncheckedUpdateInput = { + id?: StringFieldUpdateOperationsInput | string + userId?: StringFieldUpdateOperationsInput | string + cartItems?: CartItemUncheckedUpdateManyWithoutCartNestedInput + } + + export type CartCreateManyInput = { + id: string + userId: string + } + + export type CartUpdateManyMutationInput = { + id?: StringFieldUpdateOperationsInput | string + } + + export type CartUncheckedUpdateManyInput = { + id?: StringFieldUpdateOperationsInput | string + userId?: StringFieldUpdateOperationsInput | string + } + + export type CartItemCreateInput = { + quantity: number + cart: CartCreateNestedOneWithoutCartItemsInput + sellable: SellableCreateNestedOneWithoutCartItemsInput + } + + export type CartItemUncheckedCreateInput = { + itemId: string + quantity: number + cartId: string + } + + export type CartItemUpdateInput = { + quantity?: IntFieldUpdateOperationsInput | number + cart?: CartUpdateOneRequiredWithoutCartItemsNestedInput + sellable?: SellableUpdateOneRequiredWithoutCartItemsNestedInput + } + + export type CartItemUncheckedUpdateInput = { + itemId?: StringFieldUpdateOperationsInput | string + quantity?: IntFieldUpdateOperationsInput | number + cartId?: StringFieldUpdateOperationsInput | string + } + + export type CartItemCreateManyInput = { + itemId: string + quantity: number + cartId: string + } + + export type CartItemUpdateManyMutationInput = { + quantity?: IntFieldUpdateOperationsInput | number + } + + export type CartItemUncheckedUpdateManyInput = { + itemId?: StringFieldUpdateOperationsInput | string + quantity?: IntFieldUpdateOperationsInput | number + cartId?: StringFieldUpdateOperationsInput | string + } + + export type AdressCreateInput = { + id?: string + adress: string + user: UserCreateNestedOneWithoutAdressesInput + } + + export type AdressUncheckedCreateInput = { + id?: string + userId: string + adress: string + } + + export type AdressUpdateInput = { + id?: StringFieldUpdateOperationsInput | string + adress?: StringFieldUpdateOperationsInput | string + user?: UserUpdateOneRequiredWithoutAdressesNestedInput + } + + export type AdressUncheckedUpdateInput = { + id?: StringFieldUpdateOperationsInput | string + userId?: StringFieldUpdateOperationsInput | string + adress?: StringFieldUpdateOperationsInput | string + } + + export type AdressCreateManyInput = { + id?: string + userId: string + adress: string + } + + export type AdressUpdateManyMutationInput = { + id?: StringFieldUpdateOperationsInput | string + adress?: StringFieldUpdateOperationsInput | string + } + + export type AdressUncheckedUpdateManyInput = { + id?: StringFieldUpdateOperationsInput | string + userId?: StringFieldUpdateOperationsInput | string + adress?: StringFieldUpdateOperationsInput | string + } export type StringFilter<$PrismaModel = never> = { - equals?: string | StringFieldRefInput<$PrismaModel>; - in?: string[]; - notIn?: string[]; - lt?: string | StringFieldRefInput<$PrismaModel>; - lte?: string | StringFieldRefInput<$PrismaModel>; - gt?: string | StringFieldRefInput<$PrismaModel>; - gte?: string | StringFieldRefInput<$PrismaModel>; - contains?: string | StringFieldRefInput<$PrismaModel>; - startsWith?: string | StringFieldRefInput<$PrismaModel>; - endsWith?: string | StringFieldRefInput<$PrismaModel>; - search?: string; - not?: NestedStringFilter<$PrismaModel> | string; - }; - - export type DateTimeFilter<$PrismaModel = never> = { - equals?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - in?: Date[] | string[]; - notIn?: Date[] | string[]; - lt?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - lte?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - gt?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - gte?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - not?: NestedDateTimeFilter<$PrismaModel> | Date | string; - }; - - export type UserScalarRelationFilter = { - is?: UserWhereInput; - isNot?: UserWhereInput; - }; - - export type PostOrderByRelevanceInput = { - fields: PostOrderByRelevanceFieldEnum | PostOrderByRelevanceFieldEnum[]; - sort: SortOrder; - search: string; - }; - - export type PostCountOrderByAggregateInput = { - id?: SortOrder; - name?: SortOrder; - createdAt?: SortOrder; - updatedAt?: SortOrder; - createdById?: SortOrder; - }; - - export type PostAvgOrderByAggregateInput = { - id?: SortOrder; - }; - - export type PostMaxOrderByAggregateInput = { - id?: SortOrder; - name?: SortOrder; - createdAt?: SortOrder; - updatedAt?: SortOrder; - createdById?: SortOrder; - }; - - export type PostMinOrderByAggregateInput = { - id?: SortOrder; - name?: SortOrder; - createdAt?: SortOrder; - updatedAt?: SortOrder; - createdById?: SortOrder; - }; - - export type PostSumOrderByAggregateInput = { - id?: SortOrder; - }; - - export type IntWithAggregatesFilter<$PrismaModel = never> = { - equals?: number | IntFieldRefInput<$PrismaModel>; - in?: number[]; - notIn?: number[]; - lt?: number | IntFieldRefInput<$PrismaModel>; - lte?: number | IntFieldRefInput<$PrismaModel>; - gt?: number | IntFieldRefInput<$PrismaModel>; - gte?: number | IntFieldRefInput<$PrismaModel>; - not?: NestedIntWithAggregatesFilter<$PrismaModel> | number; - _count?: NestedIntFilter<$PrismaModel>; - _avg?: NestedFloatFilter<$PrismaModel>; - _sum?: NestedIntFilter<$PrismaModel>; - _min?: NestedIntFilter<$PrismaModel>; - _max?: NestedIntFilter<$PrismaModel>; - }; - - export type StringWithAggregatesFilter<$PrismaModel = never> = { - equals?: string | StringFieldRefInput<$PrismaModel>; - in?: string[]; - notIn?: string[]; - lt?: string | StringFieldRefInput<$PrismaModel>; - lte?: string | StringFieldRefInput<$PrismaModel>; - gt?: string | StringFieldRefInput<$PrismaModel>; - gte?: string | StringFieldRefInput<$PrismaModel>; - contains?: string | StringFieldRefInput<$PrismaModel>; - startsWith?: string | StringFieldRefInput<$PrismaModel>; - endsWith?: string | StringFieldRefInput<$PrismaModel>; - search?: string; - not?: NestedStringWithAggregatesFilter<$PrismaModel> | string; - _count?: NestedIntFilter<$PrismaModel>; - _min?: NestedStringFilter<$PrismaModel>; - _max?: NestedStringFilter<$PrismaModel>; - }; - - export type DateTimeWithAggregatesFilter<$PrismaModel = never> = { - equals?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - in?: Date[] | string[]; - notIn?: Date[] | string[]; - lt?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - lte?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - gt?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - gte?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - not?: NestedDateTimeWithAggregatesFilter<$PrismaModel> | Date | string; - _count?: NestedIntFilter<$PrismaModel>; - _min?: NestedDateTimeFilter<$PrismaModel>; - _max?: NestedDateTimeFilter<$PrismaModel>; - }; + equals?: string | StringFieldRefInput<$PrismaModel> + in?: string[] + notIn?: string[] + lt?: string | StringFieldRefInput<$PrismaModel> + lte?: string | StringFieldRefInput<$PrismaModel> + gt?: string | StringFieldRefInput<$PrismaModel> + gte?: string | StringFieldRefInput<$PrismaModel> + contains?: string | StringFieldRefInput<$PrismaModel> + startsWith?: string | StringFieldRefInput<$PrismaModel> + endsWith?: string | StringFieldRefInput<$PrismaModel> + search?: string + not?: NestedStringFilter<$PrismaModel> | string + } export type StringNullableFilter<$PrismaModel = never> = { - equals?: string | StringFieldRefInput<$PrismaModel> | null; - in?: string[] | null; - notIn?: string[] | null; - lt?: string | StringFieldRefInput<$PrismaModel>; - lte?: string | StringFieldRefInput<$PrismaModel>; - gt?: string | StringFieldRefInput<$PrismaModel>; - gte?: string | StringFieldRefInput<$PrismaModel>; - contains?: string | StringFieldRefInput<$PrismaModel>; - startsWith?: string | StringFieldRefInput<$PrismaModel>; - endsWith?: string | StringFieldRefInput<$PrismaModel>; - search?: string; - not?: NestedStringNullableFilter<$PrismaModel> | string | null; - }; + equals?: string | StringFieldRefInput<$PrismaModel> | null + in?: string[] | null + notIn?: string[] | null + lt?: string | StringFieldRefInput<$PrismaModel> + lte?: string | StringFieldRefInput<$PrismaModel> + gt?: string | StringFieldRefInput<$PrismaModel> + gte?: string | StringFieldRefInput<$PrismaModel> + contains?: string | StringFieldRefInput<$PrismaModel> + startsWith?: string | StringFieldRefInput<$PrismaModel> + endsWith?: string | StringFieldRefInput<$PrismaModel> + search?: string + not?: NestedStringNullableFilter<$PrismaModel> | string | null + } export type IntNullableFilter<$PrismaModel = never> = { - equals?: number | IntFieldRefInput<$PrismaModel> | null; - in?: number[] | null; - notIn?: number[] | null; - lt?: number | IntFieldRefInput<$PrismaModel>; - lte?: number | IntFieldRefInput<$PrismaModel>; - gt?: number | IntFieldRefInput<$PrismaModel>; - gte?: number | IntFieldRefInput<$PrismaModel>; - not?: NestedIntNullableFilter<$PrismaModel> | number | null; - }; + equals?: number | IntFieldRefInput<$PrismaModel> | null + in?: number[] | null + notIn?: number[] | null + lt?: number | IntFieldRefInput<$PrismaModel> + lte?: number | IntFieldRefInput<$PrismaModel> + gt?: number | IntFieldRefInput<$PrismaModel> + gte?: number | IntFieldRefInput<$PrismaModel> + not?: NestedIntNullableFilter<$PrismaModel> | number | null + } + + export type UserScalarRelationFilter = { + is?: UserWhereInput + isNot?: UserWhereInput + } export type SortOrderInput = { - sort: SortOrder; - nulls?: NullsOrder; - }; + sort: SortOrder + nulls?: NullsOrder + } export type AccountOrderByRelevanceInput = { - fields: - | AccountOrderByRelevanceFieldEnum - | AccountOrderByRelevanceFieldEnum[]; - sort: SortOrder; - search: string; - }; + fields: AccountOrderByRelevanceFieldEnum | AccountOrderByRelevanceFieldEnum[] + sort: SortOrder + search: string + } export type AccountProviderProviderAccountIdCompoundUniqueInput = { - provider: string; - providerAccountId: string; - }; + provider: string + providerAccountId: string + } export type AccountCountOrderByAggregateInput = { - id?: SortOrder; - userId?: SortOrder; - type?: SortOrder; - provider?: SortOrder; - providerAccountId?: SortOrder; - refresh_token?: SortOrder; - access_token?: SortOrder; - expires_at?: SortOrder; - token_type?: SortOrder; - scope?: SortOrder; - id_token?: SortOrder; - session_state?: SortOrder; - refresh_token_expires_in?: SortOrder; - }; + id?: SortOrder + userId?: SortOrder + type?: SortOrder + provider?: SortOrder + providerAccountId?: SortOrder + refresh_token?: SortOrder + access_token?: SortOrder + expires_at?: SortOrder + token_type?: SortOrder + scope?: SortOrder + id_token?: SortOrder + session_state?: SortOrder + refresh_token_expires_in?: SortOrder + } export type AccountAvgOrderByAggregateInput = { - expires_at?: SortOrder; - refresh_token_expires_in?: SortOrder; - }; + expires_at?: SortOrder + refresh_token_expires_in?: SortOrder + } export type AccountMaxOrderByAggregateInput = { - id?: SortOrder; - userId?: SortOrder; - type?: SortOrder; - provider?: SortOrder; - providerAccountId?: SortOrder; - refresh_token?: SortOrder; - access_token?: SortOrder; - expires_at?: SortOrder; - token_type?: SortOrder; - scope?: SortOrder; - id_token?: SortOrder; - session_state?: SortOrder; - refresh_token_expires_in?: SortOrder; - }; + id?: SortOrder + userId?: SortOrder + type?: SortOrder + provider?: SortOrder + providerAccountId?: SortOrder + refresh_token?: SortOrder + access_token?: SortOrder + expires_at?: SortOrder + token_type?: SortOrder + scope?: SortOrder + id_token?: SortOrder + session_state?: SortOrder + refresh_token_expires_in?: SortOrder + } export type AccountMinOrderByAggregateInput = { - id?: SortOrder; - userId?: SortOrder; - type?: SortOrder; - provider?: SortOrder; - providerAccountId?: SortOrder; - refresh_token?: SortOrder; - access_token?: SortOrder; - expires_at?: SortOrder; - token_type?: SortOrder; - scope?: SortOrder; - id_token?: SortOrder; - session_state?: SortOrder; - refresh_token_expires_in?: SortOrder; - }; + id?: SortOrder + userId?: SortOrder + type?: SortOrder + provider?: SortOrder + providerAccountId?: SortOrder + refresh_token?: SortOrder + access_token?: SortOrder + expires_at?: SortOrder + token_type?: SortOrder + scope?: SortOrder + id_token?: SortOrder + session_state?: SortOrder + refresh_token_expires_in?: SortOrder + } export type AccountSumOrderByAggregateInput = { - expires_at?: SortOrder; - refresh_token_expires_in?: SortOrder; - }; + expires_at?: SortOrder + refresh_token_expires_in?: SortOrder + } + + export type StringWithAggregatesFilter<$PrismaModel = never> = { + equals?: string | StringFieldRefInput<$PrismaModel> + in?: string[] + notIn?: string[] + lt?: string | StringFieldRefInput<$PrismaModel> + lte?: string | StringFieldRefInput<$PrismaModel> + gt?: string | StringFieldRefInput<$PrismaModel> + gte?: string | StringFieldRefInput<$PrismaModel> + contains?: string | StringFieldRefInput<$PrismaModel> + startsWith?: string | StringFieldRefInput<$PrismaModel> + endsWith?: string | StringFieldRefInput<$PrismaModel> + search?: string + not?: NestedStringWithAggregatesFilter<$PrismaModel> | string + _count?: NestedIntFilter<$PrismaModel> + _min?: NestedStringFilter<$PrismaModel> + _max?: NestedStringFilter<$PrismaModel> + } export type StringNullableWithAggregatesFilter<$PrismaModel = never> = { - equals?: string | StringFieldRefInput<$PrismaModel> | null; - in?: string[] | null; - notIn?: string[] | null; - lt?: string | StringFieldRefInput<$PrismaModel>; - lte?: string | StringFieldRefInput<$PrismaModel>; - gt?: string | StringFieldRefInput<$PrismaModel>; - gte?: string | StringFieldRefInput<$PrismaModel>; - contains?: string | StringFieldRefInput<$PrismaModel>; - startsWith?: string | StringFieldRefInput<$PrismaModel>; - endsWith?: string | StringFieldRefInput<$PrismaModel>; - search?: string; - not?: - | NestedStringNullableWithAggregatesFilter<$PrismaModel> - | string - | null; - _count?: NestedIntNullableFilter<$PrismaModel>; - _min?: NestedStringNullableFilter<$PrismaModel>; - _max?: NestedStringNullableFilter<$PrismaModel>; - }; + equals?: string | StringFieldRefInput<$PrismaModel> | null + in?: string[] | null + notIn?: string[] | null + lt?: string | StringFieldRefInput<$PrismaModel> + lte?: string | StringFieldRefInput<$PrismaModel> + gt?: string | StringFieldRefInput<$PrismaModel> + gte?: string | StringFieldRefInput<$PrismaModel> + contains?: string | StringFieldRefInput<$PrismaModel> + startsWith?: string | StringFieldRefInput<$PrismaModel> + endsWith?: string | StringFieldRefInput<$PrismaModel> + search?: string + not?: NestedStringNullableWithAggregatesFilter<$PrismaModel> | string | null + _count?: NestedIntNullableFilter<$PrismaModel> + _min?: NestedStringNullableFilter<$PrismaModel> + _max?: NestedStringNullableFilter<$PrismaModel> + } export type IntNullableWithAggregatesFilter<$PrismaModel = never> = { - equals?: number | IntFieldRefInput<$PrismaModel> | null; - in?: number[] | null; - notIn?: number[] | null; - lt?: number | IntFieldRefInput<$PrismaModel>; - lte?: number | IntFieldRefInput<$PrismaModel>; - gt?: number | IntFieldRefInput<$PrismaModel>; - gte?: number | IntFieldRefInput<$PrismaModel>; - not?: NestedIntNullableWithAggregatesFilter<$PrismaModel> | number | null; - _count?: NestedIntNullableFilter<$PrismaModel>; - _avg?: NestedFloatNullableFilter<$PrismaModel>; - _sum?: NestedIntNullableFilter<$PrismaModel>; - _min?: NestedIntNullableFilter<$PrismaModel>; - _max?: NestedIntNullableFilter<$PrismaModel>; - }; + equals?: number | IntFieldRefInput<$PrismaModel> | null + in?: number[] | null + notIn?: number[] | null + lt?: number | IntFieldRefInput<$PrismaModel> + lte?: number | IntFieldRefInput<$PrismaModel> + gt?: number | IntFieldRefInput<$PrismaModel> + gte?: number | IntFieldRefInput<$PrismaModel> + not?: NestedIntNullableWithAggregatesFilter<$PrismaModel> | number | null + _count?: NestedIntNullableFilter<$PrismaModel> + _avg?: NestedFloatNullableFilter<$PrismaModel> + _sum?: NestedIntNullableFilter<$PrismaModel> + _min?: NestedIntNullableFilter<$PrismaModel> + _max?: NestedIntNullableFilter<$PrismaModel> + } + + export type DateTimeFilter<$PrismaModel = never> = { + equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> + in?: Date[] | string[] + notIn?: Date[] | string[] + lt?: Date | string | DateTimeFieldRefInput<$PrismaModel> + lte?: Date | string | DateTimeFieldRefInput<$PrismaModel> + gt?: Date | string | DateTimeFieldRefInput<$PrismaModel> + gte?: Date | string | DateTimeFieldRefInput<$PrismaModel> + not?: NestedDateTimeFilter<$PrismaModel> | Date | string + } export type SessionOrderByRelevanceInput = { - fields: - | SessionOrderByRelevanceFieldEnum - | SessionOrderByRelevanceFieldEnum[]; - sort: SortOrder; - search: string; - }; + fields: SessionOrderByRelevanceFieldEnum | SessionOrderByRelevanceFieldEnum[] + sort: SortOrder + search: string + } export type SessionCountOrderByAggregateInput = { - id?: SortOrder; - sessionToken?: SortOrder; - userId?: SortOrder; - expires?: SortOrder; - }; + id?: SortOrder + sessionToken?: SortOrder + userId?: SortOrder + expires?: SortOrder + } export type SessionMaxOrderByAggregateInput = { - id?: SortOrder; - sessionToken?: SortOrder; - userId?: SortOrder; - expires?: SortOrder; - }; + id?: SortOrder + sessionToken?: SortOrder + userId?: SortOrder + expires?: SortOrder + } export type SessionMinOrderByAggregateInput = { - id?: SortOrder; - sessionToken?: SortOrder; - userId?: SortOrder; - expires?: SortOrder; - }; + id?: SortOrder + sessionToken?: SortOrder + userId?: SortOrder + expires?: SortOrder + } + + export type DateTimeWithAggregatesFilter<$PrismaModel = never> = { + equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> + in?: Date[] | string[] + notIn?: Date[] | string[] + lt?: Date | string | DateTimeFieldRefInput<$PrismaModel> + lte?: Date | string | DateTimeFieldRefInput<$PrismaModel> + gt?: Date | string | DateTimeFieldRefInput<$PrismaModel> + gte?: Date | string | DateTimeFieldRefInput<$PrismaModel> + not?: NestedDateTimeWithAggregatesFilter<$PrismaModel> | Date | string + _count?: NestedIntFilter<$PrismaModel> + _min?: NestedDateTimeFilter<$PrismaModel> + _max?: NestedDateTimeFilter<$PrismaModel> + } export type DateTimeNullableFilter<$PrismaModel = never> = { - equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> | null; - in?: Date[] | string[] | null; - notIn?: Date[] | string[] | null; - lt?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - lte?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - gt?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - gte?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - not?: NestedDateTimeNullableFilter<$PrismaModel> | Date | string | null; - }; + equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> | null + in?: Date[] | string[] | null + notIn?: Date[] | string[] | null + lt?: Date | string | DateTimeFieldRefInput<$PrismaModel> + lte?: Date | string | DateTimeFieldRefInput<$PrismaModel> + gt?: Date | string | DateTimeFieldRefInput<$PrismaModel> + gte?: Date | string | DateTimeFieldRefInput<$PrismaModel> + not?: NestedDateTimeNullableFilter<$PrismaModel> | Date | string | null + } + + export type FloatFilter<$PrismaModel = never> = { + equals?: number | FloatFieldRefInput<$PrismaModel> + in?: number[] + notIn?: number[] + lt?: number | FloatFieldRefInput<$PrismaModel> + lte?: number | FloatFieldRefInput<$PrismaModel> + gt?: number | FloatFieldRefInput<$PrismaModel> + gte?: number | FloatFieldRefInput<$PrismaModel> + not?: NestedFloatFilter<$PrismaModel> | number + } export type AccountListRelationFilter = { - every?: AccountWhereInput; - some?: AccountWhereInput; - none?: AccountWhereInput; - }; + every?: AccountWhereInput + some?: AccountWhereInput + none?: AccountWhereInput + } export type SessionListRelationFilter = { - every?: SessionWhereInput; - some?: SessionWhereInput; - none?: SessionWhereInput; - }; + every?: SessionWhereInput + some?: SessionWhereInput + none?: SessionWhereInput + } - export type PostListRelationFilter = { - every?: PostWhereInput; - some?: PostWhereInput; - none?: PostWhereInput; - }; + export type ShopListRelationFilter = { + every?: ShopWhereInput + some?: ShopWhereInput + none?: ShopWhereInput + } + + export type CartListRelationFilter = { + every?: CartWhereInput + some?: CartWhereInput + none?: CartWhereInput + } + + export type AdressListRelationFilter = { + every?: AdressWhereInput + some?: AdressWhereInput + none?: AdressWhereInput + } export type AccountOrderByRelationAggregateInput = { - _count?: SortOrder; - }; + _count?: SortOrder + } export type SessionOrderByRelationAggregateInput = { - _count?: SortOrder; - }; + _count?: SortOrder + } - export type PostOrderByRelationAggregateInput = { - _count?: SortOrder; - }; + export type ShopOrderByRelationAggregateInput = { + _count?: SortOrder + } + + export type CartOrderByRelationAggregateInput = { + _count?: SortOrder + } + + export type AdressOrderByRelationAggregateInput = { + _count?: SortOrder + } export type UserOrderByRelevanceInput = { - fields: UserOrderByRelevanceFieldEnum | UserOrderByRelevanceFieldEnum[]; - sort: SortOrder; - search: string; - }; + fields: UserOrderByRelevanceFieldEnum | UserOrderByRelevanceFieldEnum[] + sort: SortOrder + search: string + } export type UserCountOrderByAggregateInput = { - id?: SortOrder; - name?: SortOrder; - email?: SortOrder; - emailVerified?: SortOrder; - image?: SortOrder; - }; + id?: SortOrder + name?: SortOrder + email?: SortOrder + emailVerified?: SortOrder + image?: SortOrder + balance?: SortOrder + } + + export type UserAvgOrderByAggregateInput = { + balance?: SortOrder + } export type UserMaxOrderByAggregateInput = { - id?: SortOrder; - name?: SortOrder; - email?: SortOrder; - emailVerified?: SortOrder; - image?: SortOrder; - }; + id?: SortOrder + name?: SortOrder + email?: SortOrder + emailVerified?: SortOrder + image?: SortOrder + balance?: SortOrder + } export type UserMinOrderByAggregateInput = { - id?: SortOrder; - name?: SortOrder; - email?: SortOrder; - emailVerified?: SortOrder; - image?: SortOrder; - }; + id?: SortOrder + name?: SortOrder + email?: SortOrder + emailVerified?: SortOrder + image?: SortOrder + balance?: SortOrder + } + + export type UserSumOrderByAggregateInput = { + balance?: SortOrder + } export type DateTimeNullableWithAggregatesFilter<$PrismaModel = never> = { - equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> | null; - in?: Date[] | string[] | null; - notIn?: Date[] | string[] | null; - lt?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - lte?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - gt?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - gte?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - not?: - | NestedDateTimeNullableWithAggregatesFilter<$PrismaModel> - | Date - | string - | null; - _count?: NestedIntNullableFilter<$PrismaModel>; - _min?: NestedDateTimeNullableFilter<$PrismaModel>; - _max?: NestedDateTimeNullableFilter<$PrismaModel>; - }; + equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> | null + in?: Date[] | string[] | null + notIn?: Date[] | string[] | null + lt?: Date | string | DateTimeFieldRefInput<$PrismaModel> + lte?: Date | string | DateTimeFieldRefInput<$PrismaModel> + gt?: Date | string | DateTimeFieldRefInput<$PrismaModel> + gte?: Date | string | DateTimeFieldRefInput<$PrismaModel> + not?: NestedDateTimeNullableWithAggregatesFilter<$PrismaModel> | Date | string | null + _count?: NestedIntNullableFilter<$PrismaModel> + _min?: NestedDateTimeNullableFilter<$PrismaModel> + _max?: NestedDateTimeNullableFilter<$PrismaModel> + } + + export type FloatWithAggregatesFilter<$PrismaModel = never> = { + equals?: number | FloatFieldRefInput<$PrismaModel> + in?: number[] + notIn?: number[] + lt?: number | FloatFieldRefInput<$PrismaModel> + lte?: number | FloatFieldRefInput<$PrismaModel> + gt?: number | FloatFieldRefInput<$PrismaModel> + gte?: number | FloatFieldRefInput<$PrismaModel> + not?: NestedFloatWithAggregatesFilter<$PrismaModel> | number + _count?: NestedIntFilter<$PrismaModel> + _avg?: NestedFloatFilter<$PrismaModel> + _sum?: NestedFloatFilter<$PrismaModel> + _min?: NestedFloatFilter<$PrismaModel> + _max?: NestedFloatFilter<$PrismaModel> + } export type VerificationTokenOrderByRelevanceInput = { - fields: - | VerificationTokenOrderByRelevanceFieldEnum - | VerificationTokenOrderByRelevanceFieldEnum[]; - sort: SortOrder; - search: string; - }; + fields: VerificationTokenOrderByRelevanceFieldEnum | VerificationTokenOrderByRelevanceFieldEnum[] + sort: SortOrder + search: string + } export type VerificationTokenIdentifierTokenCompoundUniqueInput = { - identifier: string; - token: string; - }; + identifier: string + token: string + } export type VerificationTokenCountOrderByAggregateInput = { - identifier?: SortOrder; - token?: SortOrder; - expires?: SortOrder; - }; + identifier?: SortOrder + token?: SortOrder + expires?: SortOrder + } export type VerificationTokenMaxOrderByAggregateInput = { - identifier?: SortOrder; - token?: SortOrder; - expires?: SortOrder; - }; + identifier?: SortOrder + token?: SortOrder + expires?: SortOrder + } export type VerificationTokenMinOrderByAggregateInput = { - identifier?: SortOrder; - token?: SortOrder; - expires?: SortOrder; - }; + identifier?: SortOrder + token?: SortOrder + expires?: SortOrder + } - export type UserCreateNestedOneWithoutPostsInput = { - create?: XOR< - UserCreateWithoutPostsInput, - UserUncheckedCreateWithoutPostsInput - >; - connectOrCreate?: UserCreateOrConnectWithoutPostsInput; - connect?: UserWhereUniqueInput; - }; + export type IntFilter<$PrismaModel = never> = { + equals?: number | IntFieldRefInput<$PrismaModel> + in?: number[] + notIn?: number[] + lt?: number | IntFieldRefInput<$PrismaModel> + lte?: number | IntFieldRefInput<$PrismaModel> + gt?: number | IntFieldRefInput<$PrismaModel> + gte?: number | IntFieldRefInput<$PrismaModel> + not?: NestedIntFilter<$PrismaModel> | number + } - export type StringFieldUpdateOperationsInput = { - set?: string; - }; + export type ItemListRelationFilter = { + every?: ItemWhereInput + some?: ItemWhereInput + none?: ItemWhereInput + } - export type DateTimeFieldUpdateOperationsInput = { - set?: Date | string; - }; + export type SellableListRelationFilter = { + every?: SellableWhereInput + some?: SellableWhereInput + none?: SellableWhereInput + } - export type UserUpdateOneRequiredWithoutPostsNestedInput = { - create?: XOR< - UserCreateWithoutPostsInput, - UserUncheckedCreateWithoutPostsInput - >; - connectOrCreate?: UserCreateOrConnectWithoutPostsInput; - upsert?: UserUpsertWithoutPostsInput; - connect?: UserWhereUniqueInput; - update?: XOR< - XOR< - UserUpdateToOneWithWhereWithoutPostsInput, - UserUpdateWithoutPostsInput - >, - UserUncheckedUpdateWithoutPostsInput - >; - }; + export type ItemOrderByRelationAggregateInput = { + _count?: SortOrder + } - export type IntFieldUpdateOperationsInput = { - set?: number; - increment?: number; - decrement?: number; - multiply?: number; - divide?: number; - }; + export type SellableOrderByRelationAggregateInput = { + _count?: SortOrder + } + + export type ShopOrderByRelevanceInput = { + fields: ShopOrderByRelevanceFieldEnum | ShopOrderByRelevanceFieldEnum[] + sort: SortOrder + search: string + } + + export type ShopCountOrderByAggregateInput = { + id?: SortOrder + userId?: SortOrder + label?: SortOrder + } + + export type ShopAvgOrderByAggregateInput = { + id?: SortOrder + } + + export type ShopMaxOrderByAggregateInput = { + id?: SortOrder + userId?: SortOrder + label?: SortOrder + } + + export type ShopMinOrderByAggregateInput = { + id?: SortOrder + userId?: SortOrder + label?: SortOrder + } + + export type ShopSumOrderByAggregateInput = { + id?: SortOrder + } + + export type IntWithAggregatesFilter<$PrismaModel = never> = { + equals?: number | IntFieldRefInput<$PrismaModel> + in?: number[] + notIn?: number[] + lt?: number | IntFieldRefInput<$PrismaModel> + lte?: number | IntFieldRefInput<$PrismaModel> + gt?: number | IntFieldRefInput<$PrismaModel> + gte?: number | IntFieldRefInput<$PrismaModel> + not?: NestedIntWithAggregatesFilter<$PrismaModel> | number + _count?: NestedIntFilter<$PrismaModel> + _avg?: NestedFloatFilter<$PrismaModel> + _sum?: NestedIntFilter<$PrismaModel> + _min?: NestedIntFilter<$PrismaModel> + _max?: NestedIntFilter<$PrismaModel> + } + + export type ShopScalarRelationFilter = { + is?: ShopWhereInput + isNot?: ShopWhereInput + } + + export type ItemOrderByRelevanceInput = { + fields: ItemOrderByRelevanceFieldEnum | ItemOrderByRelevanceFieldEnum[] + sort: SortOrder + search: string + } + + export type ItemCountOrderByAggregateInput = { + item_name?: SortOrder + stock?: SortOrder + shopId?: SortOrder + } + + export type ItemAvgOrderByAggregateInput = { + stock?: SortOrder + shopId?: SortOrder + } + + export type ItemMaxOrderByAggregateInput = { + item_name?: SortOrder + stock?: SortOrder + shopId?: SortOrder + } + + export type ItemMinOrderByAggregateInput = { + item_name?: SortOrder + stock?: SortOrder + shopId?: SortOrder + } + + export type ItemSumOrderByAggregateInput = { + stock?: SortOrder + shopId?: SortOrder + } + + export type BoolFilter<$PrismaModel = never> = { + equals?: boolean | BooleanFieldRefInput<$PrismaModel> + not?: NestedBoolFilter<$PrismaModel> | boolean + } + + export type ItemScalarRelationFilter = { + is?: ItemWhereInput + isNot?: ItemWhereInput + } + + export type CartItemListRelationFilter = { + every?: CartItemWhereInput + some?: CartItemWhereInput + none?: CartItemWhereInput + } + + export type CartItemOrderByRelationAggregateInput = { + _count?: SortOrder + } + + export type SellableOrderByRelevanceInput = { + fields: SellableOrderByRelevanceFieldEnum | SellableOrderByRelevanceFieldEnum[] + sort: SortOrder + search: string + } + + export type SellableCountOrderByAggregateInput = { + id?: SortOrder + item_name?: SortOrder + amount?: SortOrder + price?: SortOrder + shopId?: SortOrder + enabled?: SortOrder + } + + export type SellableAvgOrderByAggregateInput = { + amount?: SortOrder + price?: SortOrder + shopId?: SortOrder + } + + export type SellableMaxOrderByAggregateInput = { + id?: SortOrder + item_name?: SortOrder + amount?: SortOrder + price?: SortOrder + shopId?: SortOrder + enabled?: SortOrder + } + + export type SellableMinOrderByAggregateInput = { + id?: SortOrder + item_name?: SortOrder + amount?: SortOrder + price?: SortOrder + shopId?: SortOrder + enabled?: SortOrder + } + + export type SellableSumOrderByAggregateInput = { + amount?: SortOrder + price?: SortOrder + shopId?: SortOrder + } + + export type BoolWithAggregatesFilter<$PrismaModel = never> = { + equals?: boolean | BooleanFieldRefInput<$PrismaModel> + not?: NestedBoolWithAggregatesFilter<$PrismaModel> | boolean + _count?: NestedIntFilter<$PrismaModel> + _min?: NestedBoolFilter<$PrismaModel> + _max?: NestedBoolFilter<$PrismaModel> + } + + export type CartOrderByRelevanceInput = { + fields: CartOrderByRelevanceFieldEnum | CartOrderByRelevanceFieldEnum[] + sort: SortOrder + search: string + } + + export type CartCountOrderByAggregateInput = { + id?: SortOrder + userId?: SortOrder + } + + export type CartMaxOrderByAggregateInput = { + id?: SortOrder + userId?: SortOrder + } + + export type CartMinOrderByAggregateInput = { + id?: SortOrder + userId?: SortOrder + } + + export type CartScalarRelationFilter = { + is?: CartWhereInput + isNot?: CartWhereInput + } + + export type SellableScalarRelationFilter = { + is?: SellableWhereInput + isNot?: SellableWhereInput + } + + export type CartItemOrderByRelevanceInput = { + fields: CartItemOrderByRelevanceFieldEnum | CartItemOrderByRelevanceFieldEnum[] + sort: SortOrder + search: string + } + + export type CartItemCountOrderByAggregateInput = { + itemId?: SortOrder + quantity?: SortOrder + cartId?: SortOrder + } + + export type CartItemAvgOrderByAggregateInput = { + quantity?: SortOrder + } + + export type CartItemMaxOrderByAggregateInput = { + itemId?: SortOrder + quantity?: SortOrder + cartId?: SortOrder + } + + export type CartItemMinOrderByAggregateInput = { + itemId?: SortOrder + quantity?: SortOrder + cartId?: SortOrder + } + + export type CartItemSumOrderByAggregateInput = { + quantity?: SortOrder + } + + export type AdressOrderByRelevanceInput = { + fields: AdressOrderByRelevanceFieldEnum | AdressOrderByRelevanceFieldEnum[] + sort: SortOrder + search: string + } + + export type AdressCountOrderByAggregateInput = { + id?: SortOrder + userId?: SortOrder + adress?: SortOrder + } + + export type AdressMaxOrderByAggregateInput = { + id?: SortOrder + userId?: SortOrder + adress?: SortOrder + } + + export type AdressMinOrderByAggregateInput = { + id?: SortOrder + userId?: SortOrder + adress?: SortOrder + } export type UserCreateNestedOneWithoutAccountsInput = { - create?: XOR< - UserCreateWithoutAccountsInput, - UserUncheckedCreateWithoutAccountsInput - >; - connectOrCreate?: UserCreateOrConnectWithoutAccountsInput; - connect?: UserWhereUniqueInput; - }; + create?: XOR + connectOrCreate?: UserCreateOrConnectWithoutAccountsInput + connect?: UserWhereUniqueInput + } + + export type StringFieldUpdateOperationsInput = { + set?: string + } export type NullableStringFieldUpdateOperationsInput = { - set?: string | null; - }; + set?: string | null + } export type NullableIntFieldUpdateOperationsInput = { - set?: number | null; - increment?: number; - decrement?: number; - multiply?: number; - divide?: number; - }; + set?: number | null + increment?: number + decrement?: number + multiply?: number + divide?: number + } export type UserUpdateOneRequiredWithoutAccountsNestedInput = { - create?: XOR< - UserCreateWithoutAccountsInput, - UserUncheckedCreateWithoutAccountsInput - >; - connectOrCreate?: UserCreateOrConnectWithoutAccountsInput; - upsert?: UserUpsertWithoutAccountsInput; - connect?: UserWhereUniqueInput; - update?: XOR< - XOR< - UserUpdateToOneWithWhereWithoutAccountsInput, - UserUpdateWithoutAccountsInput - >, - UserUncheckedUpdateWithoutAccountsInput - >; - }; + create?: XOR + connectOrCreate?: UserCreateOrConnectWithoutAccountsInput + upsert?: UserUpsertWithoutAccountsInput + connect?: UserWhereUniqueInput + update?: XOR, UserUncheckedUpdateWithoutAccountsInput> + } export type UserCreateNestedOneWithoutSessionsInput = { - create?: XOR< - UserCreateWithoutSessionsInput, - UserUncheckedCreateWithoutSessionsInput - >; - connectOrCreate?: UserCreateOrConnectWithoutSessionsInput; - connect?: UserWhereUniqueInput; - }; + create?: XOR + connectOrCreate?: UserCreateOrConnectWithoutSessionsInput + connect?: UserWhereUniqueInput + } + + export type DateTimeFieldUpdateOperationsInput = { + set?: Date | string + } export type UserUpdateOneRequiredWithoutSessionsNestedInput = { - create?: XOR< - UserCreateWithoutSessionsInput, - UserUncheckedCreateWithoutSessionsInput - >; - connectOrCreate?: UserCreateOrConnectWithoutSessionsInput; - upsert?: UserUpsertWithoutSessionsInput; - connect?: UserWhereUniqueInput; - update?: XOR< - XOR< - UserUpdateToOneWithWhereWithoutSessionsInput, - UserUpdateWithoutSessionsInput - >, - UserUncheckedUpdateWithoutSessionsInput - >; - }; + create?: XOR + connectOrCreate?: UserCreateOrConnectWithoutSessionsInput + upsert?: UserUpsertWithoutSessionsInput + connect?: UserWhereUniqueInput + update?: XOR, UserUncheckedUpdateWithoutSessionsInput> + } export type AccountCreateNestedManyWithoutUserInput = { - create?: - | XOR< - AccountCreateWithoutUserInput, - AccountUncheckedCreateWithoutUserInput - > - | AccountCreateWithoutUserInput[] - | AccountUncheckedCreateWithoutUserInput[]; - connectOrCreate?: - | AccountCreateOrConnectWithoutUserInput - | AccountCreateOrConnectWithoutUserInput[]; - createMany?: AccountCreateManyUserInputEnvelope; - connect?: AccountWhereUniqueInput | AccountWhereUniqueInput[]; - }; + create?: XOR | AccountCreateWithoutUserInput[] | AccountUncheckedCreateWithoutUserInput[] + connectOrCreate?: AccountCreateOrConnectWithoutUserInput | AccountCreateOrConnectWithoutUserInput[] + createMany?: AccountCreateManyUserInputEnvelope + connect?: AccountWhereUniqueInput | AccountWhereUniqueInput[] + } export type SessionCreateNestedManyWithoutUserInput = { - create?: - | XOR< - SessionCreateWithoutUserInput, - SessionUncheckedCreateWithoutUserInput - > - | SessionCreateWithoutUserInput[] - | SessionUncheckedCreateWithoutUserInput[]; - connectOrCreate?: - | SessionCreateOrConnectWithoutUserInput - | SessionCreateOrConnectWithoutUserInput[]; - createMany?: SessionCreateManyUserInputEnvelope; - connect?: SessionWhereUniqueInput | SessionWhereUniqueInput[]; - }; + create?: XOR | SessionCreateWithoutUserInput[] | SessionUncheckedCreateWithoutUserInput[] + connectOrCreate?: SessionCreateOrConnectWithoutUserInput | SessionCreateOrConnectWithoutUserInput[] + createMany?: SessionCreateManyUserInputEnvelope + connect?: SessionWhereUniqueInput | SessionWhereUniqueInput[] + } - export type PostCreateNestedManyWithoutCreatedByInput = { - create?: - | XOR< - PostCreateWithoutCreatedByInput, - PostUncheckedCreateWithoutCreatedByInput - > - | PostCreateWithoutCreatedByInput[] - | PostUncheckedCreateWithoutCreatedByInput[]; - connectOrCreate?: - | PostCreateOrConnectWithoutCreatedByInput - | PostCreateOrConnectWithoutCreatedByInput[]; - createMany?: PostCreateManyCreatedByInputEnvelope; - connect?: PostWhereUniqueInput | PostWhereUniqueInput[]; - }; + export type ShopCreateNestedManyWithoutUserInput = { + create?: XOR | ShopCreateWithoutUserInput[] | ShopUncheckedCreateWithoutUserInput[] + connectOrCreate?: ShopCreateOrConnectWithoutUserInput | ShopCreateOrConnectWithoutUserInput[] + createMany?: ShopCreateManyUserInputEnvelope + connect?: ShopWhereUniqueInput | ShopWhereUniqueInput[] + } + + export type CartCreateNestedManyWithoutUserInput = { + create?: XOR | CartCreateWithoutUserInput[] | CartUncheckedCreateWithoutUserInput[] + connectOrCreate?: CartCreateOrConnectWithoutUserInput | CartCreateOrConnectWithoutUserInput[] + createMany?: CartCreateManyUserInputEnvelope + connect?: CartWhereUniqueInput | CartWhereUniqueInput[] + } + + export type AdressCreateNestedManyWithoutUserInput = { + create?: XOR | AdressCreateWithoutUserInput[] | AdressUncheckedCreateWithoutUserInput[] + connectOrCreate?: AdressCreateOrConnectWithoutUserInput | AdressCreateOrConnectWithoutUserInput[] + createMany?: AdressCreateManyUserInputEnvelope + connect?: AdressWhereUniqueInput | AdressWhereUniqueInput[] + } export type AccountUncheckedCreateNestedManyWithoutUserInput = { - create?: - | XOR< - AccountCreateWithoutUserInput, - AccountUncheckedCreateWithoutUserInput - > - | AccountCreateWithoutUserInput[] - | AccountUncheckedCreateWithoutUserInput[]; - connectOrCreate?: - | AccountCreateOrConnectWithoutUserInput - | AccountCreateOrConnectWithoutUserInput[]; - createMany?: AccountCreateManyUserInputEnvelope; - connect?: AccountWhereUniqueInput | AccountWhereUniqueInput[]; - }; + create?: XOR | AccountCreateWithoutUserInput[] | AccountUncheckedCreateWithoutUserInput[] + connectOrCreate?: AccountCreateOrConnectWithoutUserInput | AccountCreateOrConnectWithoutUserInput[] + createMany?: AccountCreateManyUserInputEnvelope + connect?: AccountWhereUniqueInput | AccountWhereUniqueInput[] + } export type SessionUncheckedCreateNestedManyWithoutUserInput = { - create?: - | XOR< - SessionCreateWithoutUserInput, - SessionUncheckedCreateWithoutUserInput - > - | SessionCreateWithoutUserInput[] - | SessionUncheckedCreateWithoutUserInput[]; - connectOrCreate?: - | SessionCreateOrConnectWithoutUserInput - | SessionCreateOrConnectWithoutUserInput[]; - createMany?: SessionCreateManyUserInputEnvelope; - connect?: SessionWhereUniqueInput | SessionWhereUniqueInput[]; - }; + create?: XOR | SessionCreateWithoutUserInput[] | SessionUncheckedCreateWithoutUserInput[] + connectOrCreate?: SessionCreateOrConnectWithoutUserInput | SessionCreateOrConnectWithoutUserInput[] + createMany?: SessionCreateManyUserInputEnvelope + connect?: SessionWhereUniqueInput | SessionWhereUniqueInput[] + } - export type PostUncheckedCreateNestedManyWithoutCreatedByInput = { - create?: - | XOR< - PostCreateWithoutCreatedByInput, - PostUncheckedCreateWithoutCreatedByInput - > - | PostCreateWithoutCreatedByInput[] - | PostUncheckedCreateWithoutCreatedByInput[]; - connectOrCreate?: - | PostCreateOrConnectWithoutCreatedByInput - | PostCreateOrConnectWithoutCreatedByInput[]; - createMany?: PostCreateManyCreatedByInputEnvelope; - connect?: PostWhereUniqueInput | PostWhereUniqueInput[]; - }; + export type ShopUncheckedCreateNestedManyWithoutUserInput = { + create?: XOR | ShopCreateWithoutUserInput[] | ShopUncheckedCreateWithoutUserInput[] + connectOrCreate?: ShopCreateOrConnectWithoutUserInput | ShopCreateOrConnectWithoutUserInput[] + createMany?: ShopCreateManyUserInputEnvelope + connect?: ShopWhereUniqueInput | ShopWhereUniqueInput[] + } + + export type CartUncheckedCreateNestedManyWithoutUserInput = { + create?: XOR | CartCreateWithoutUserInput[] | CartUncheckedCreateWithoutUserInput[] + connectOrCreate?: CartCreateOrConnectWithoutUserInput | CartCreateOrConnectWithoutUserInput[] + createMany?: CartCreateManyUserInputEnvelope + connect?: CartWhereUniqueInput | CartWhereUniqueInput[] + } + + export type AdressUncheckedCreateNestedManyWithoutUserInput = { + create?: XOR | AdressCreateWithoutUserInput[] | AdressUncheckedCreateWithoutUserInput[] + connectOrCreate?: AdressCreateOrConnectWithoutUserInput | AdressCreateOrConnectWithoutUserInput[] + createMany?: AdressCreateManyUserInputEnvelope + connect?: AdressWhereUniqueInput | AdressWhereUniqueInput[] + } export type NullableDateTimeFieldUpdateOperationsInput = { - set?: Date | string | null; - }; + set?: Date | string | null + } + + export type FloatFieldUpdateOperationsInput = { + set?: number + increment?: number + decrement?: number + multiply?: number + divide?: number + } export type AccountUpdateManyWithoutUserNestedInput = { - create?: - | XOR< - AccountCreateWithoutUserInput, - AccountUncheckedCreateWithoutUserInput - > - | AccountCreateWithoutUserInput[] - | AccountUncheckedCreateWithoutUserInput[]; - connectOrCreate?: - | AccountCreateOrConnectWithoutUserInput - | AccountCreateOrConnectWithoutUserInput[]; - upsert?: - | AccountUpsertWithWhereUniqueWithoutUserInput - | AccountUpsertWithWhereUniqueWithoutUserInput[]; - createMany?: AccountCreateManyUserInputEnvelope; - set?: AccountWhereUniqueInput | AccountWhereUniqueInput[]; - disconnect?: AccountWhereUniqueInput | AccountWhereUniqueInput[]; - delete?: AccountWhereUniqueInput | AccountWhereUniqueInput[]; - connect?: AccountWhereUniqueInput | AccountWhereUniqueInput[]; - update?: - | AccountUpdateWithWhereUniqueWithoutUserInput - | AccountUpdateWithWhereUniqueWithoutUserInput[]; - updateMany?: - | AccountUpdateManyWithWhereWithoutUserInput - | AccountUpdateManyWithWhereWithoutUserInput[]; - deleteMany?: AccountScalarWhereInput | AccountScalarWhereInput[]; - }; + create?: XOR | AccountCreateWithoutUserInput[] | AccountUncheckedCreateWithoutUserInput[] + connectOrCreate?: AccountCreateOrConnectWithoutUserInput | AccountCreateOrConnectWithoutUserInput[] + upsert?: AccountUpsertWithWhereUniqueWithoutUserInput | AccountUpsertWithWhereUniqueWithoutUserInput[] + createMany?: AccountCreateManyUserInputEnvelope + set?: AccountWhereUniqueInput | AccountWhereUniqueInput[] + disconnect?: AccountWhereUniqueInput | AccountWhereUniqueInput[] + delete?: AccountWhereUniqueInput | AccountWhereUniqueInput[] + connect?: AccountWhereUniqueInput | AccountWhereUniqueInput[] + update?: AccountUpdateWithWhereUniqueWithoutUserInput | AccountUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: AccountUpdateManyWithWhereWithoutUserInput | AccountUpdateManyWithWhereWithoutUserInput[] + deleteMany?: AccountScalarWhereInput | AccountScalarWhereInput[] + } export type SessionUpdateManyWithoutUserNestedInput = { - create?: - | XOR< - SessionCreateWithoutUserInput, - SessionUncheckedCreateWithoutUserInput - > - | SessionCreateWithoutUserInput[] - | SessionUncheckedCreateWithoutUserInput[]; - connectOrCreate?: - | SessionCreateOrConnectWithoutUserInput - | SessionCreateOrConnectWithoutUserInput[]; - upsert?: - | SessionUpsertWithWhereUniqueWithoutUserInput - | SessionUpsertWithWhereUniqueWithoutUserInput[]; - createMany?: SessionCreateManyUserInputEnvelope; - set?: SessionWhereUniqueInput | SessionWhereUniqueInput[]; - disconnect?: SessionWhereUniqueInput | SessionWhereUniqueInput[]; - delete?: SessionWhereUniqueInput | SessionWhereUniqueInput[]; - connect?: SessionWhereUniqueInput | SessionWhereUniqueInput[]; - update?: - | SessionUpdateWithWhereUniqueWithoutUserInput - | SessionUpdateWithWhereUniqueWithoutUserInput[]; - updateMany?: - | SessionUpdateManyWithWhereWithoutUserInput - | SessionUpdateManyWithWhereWithoutUserInput[]; - deleteMany?: SessionScalarWhereInput | SessionScalarWhereInput[]; - }; + create?: XOR | SessionCreateWithoutUserInput[] | SessionUncheckedCreateWithoutUserInput[] + connectOrCreate?: SessionCreateOrConnectWithoutUserInput | SessionCreateOrConnectWithoutUserInput[] + upsert?: SessionUpsertWithWhereUniqueWithoutUserInput | SessionUpsertWithWhereUniqueWithoutUserInput[] + createMany?: SessionCreateManyUserInputEnvelope + set?: SessionWhereUniqueInput | SessionWhereUniqueInput[] + disconnect?: SessionWhereUniqueInput | SessionWhereUniqueInput[] + delete?: SessionWhereUniqueInput | SessionWhereUniqueInput[] + connect?: SessionWhereUniqueInput | SessionWhereUniqueInput[] + update?: SessionUpdateWithWhereUniqueWithoutUserInput | SessionUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: SessionUpdateManyWithWhereWithoutUserInput | SessionUpdateManyWithWhereWithoutUserInput[] + deleteMany?: SessionScalarWhereInput | SessionScalarWhereInput[] + } - export type PostUpdateManyWithoutCreatedByNestedInput = { - create?: - | XOR< - PostCreateWithoutCreatedByInput, - PostUncheckedCreateWithoutCreatedByInput - > - | PostCreateWithoutCreatedByInput[] - | PostUncheckedCreateWithoutCreatedByInput[]; - connectOrCreate?: - | PostCreateOrConnectWithoutCreatedByInput - | PostCreateOrConnectWithoutCreatedByInput[]; - upsert?: - | PostUpsertWithWhereUniqueWithoutCreatedByInput - | PostUpsertWithWhereUniqueWithoutCreatedByInput[]; - createMany?: PostCreateManyCreatedByInputEnvelope; - set?: PostWhereUniqueInput | PostWhereUniqueInput[]; - disconnect?: PostWhereUniqueInput | PostWhereUniqueInput[]; - delete?: PostWhereUniqueInput | PostWhereUniqueInput[]; - connect?: PostWhereUniqueInput | PostWhereUniqueInput[]; - update?: - | PostUpdateWithWhereUniqueWithoutCreatedByInput - | PostUpdateWithWhereUniqueWithoutCreatedByInput[]; - updateMany?: - | PostUpdateManyWithWhereWithoutCreatedByInput - | PostUpdateManyWithWhereWithoutCreatedByInput[]; - deleteMany?: PostScalarWhereInput | PostScalarWhereInput[]; - }; + export type ShopUpdateManyWithoutUserNestedInput = { + create?: XOR | ShopCreateWithoutUserInput[] | ShopUncheckedCreateWithoutUserInput[] + connectOrCreate?: ShopCreateOrConnectWithoutUserInput | ShopCreateOrConnectWithoutUserInput[] + upsert?: ShopUpsertWithWhereUniqueWithoutUserInput | ShopUpsertWithWhereUniqueWithoutUserInput[] + createMany?: ShopCreateManyUserInputEnvelope + set?: ShopWhereUniqueInput | ShopWhereUniqueInput[] + disconnect?: ShopWhereUniqueInput | ShopWhereUniqueInput[] + delete?: ShopWhereUniqueInput | ShopWhereUniqueInput[] + connect?: ShopWhereUniqueInput | ShopWhereUniqueInput[] + update?: ShopUpdateWithWhereUniqueWithoutUserInput | ShopUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: ShopUpdateManyWithWhereWithoutUserInput | ShopUpdateManyWithWhereWithoutUserInput[] + deleteMany?: ShopScalarWhereInput | ShopScalarWhereInput[] + } + + export type CartUpdateManyWithoutUserNestedInput = { + create?: XOR | CartCreateWithoutUserInput[] | CartUncheckedCreateWithoutUserInput[] + connectOrCreate?: CartCreateOrConnectWithoutUserInput | CartCreateOrConnectWithoutUserInput[] + upsert?: CartUpsertWithWhereUniqueWithoutUserInput | CartUpsertWithWhereUniqueWithoutUserInput[] + createMany?: CartCreateManyUserInputEnvelope + set?: CartWhereUniqueInput | CartWhereUniqueInput[] + disconnect?: CartWhereUniqueInput | CartWhereUniqueInput[] + delete?: CartWhereUniqueInput | CartWhereUniqueInput[] + connect?: CartWhereUniqueInput | CartWhereUniqueInput[] + update?: CartUpdateWithWhereUniqueWithoutUserInput | CartUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: CartUpdateManyWithWhereWithoutUserInput | CartUpdateManyWithWhereWithoutUserInput[] + deleteMany?: CartScalarWhereInput | CartScalarWhereInput[] + } + + export type AdressUpdateManyWithoutUserNestedInput = { + create?: XOR | AdressCreateWithoutUserInput[] | AdressUncheckedCreateWithoutUserInput[] + connectOrCreate?: AdressCreateOrConnectWithoutUserInput | AdressCreateOrConnectWithoutUserInput[] + upsert?: AdressUpsertWithWhereUniqueWithoutUserInput | AdressUpsertWithWhereUniqueWithoutUserInput[] + createMany?: AdressCreateManyUserInputEnvelope + set?: AdressWhereUniqueInput | AdressWhereUniqueInput[] + disconnect?: AdressWhereUniqueInput | AdressWhereUniqueInput[] + delete?: AdressWhereUniqueInput | AdressWhereUniqueInput[] + connect?: AdressWhereUniqueInput | AdressWhereUniqueInput[] + update?: AdressUpdateWithWhereUniqueWithoutUserInput | AdressUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: AdressUpdateManyWithWhereWithoutUserInput | AdressUpdateManyWithWhereWithoutUserInput[] + deleteMany?: AdressScalarWhereInput | AdressScalarWhereInput[] + } export type AccountUncheckedUpdateManyWithoutUserNestedInput = { - create?: - | XOR< - AccountCreateWithoutUserInput, - AccountUncheckedCreateWithoutUserInput - > - | AccountCreateWithoutUserInput[] - | AccountUncheckedCreateWithoutUserInput[]; - connectOrCreate?: - | AccountCreateOrConnectWithoutUserInput - | AccountCreateOrConnectWithoutUserInput[]; - upsert?: - | AccountUpsertWithWhereUniqueWithoutUserInput - | AccountUpsertWithWhereUniqueWithoutUserInput[]; - createMany?: AccountCreateManyUserInputEnvelope; - set?: AccountWhereUniqueInput | AccountWhereUniqueInput[]; - disconnect?: AccountWhereUniqueInput | AccountWhereUniqueInput[]; - delete?: AccountWhereUniqueInput | AccountWhereUniqueInput[]; - connect?: AccountWhereUniqueInput | AccountWhereUniqueInput[]; - update?: - | AccountUpdateWithWhereUniqueWithoutUserInput - | AccountUpdateWithWhereUniqueWithoutUserInput[]; - updateMany?: - | AccountUpdateManyWithWhereWithoutUserInput - | AccountUpdateManyWithWhereWithoutUserInput[]; - deleteMany?: AccountScalarWhereInput | AccountScalarWhereInput[]; - }; + create?: XOR | AccountCreateWithoutUserInput[] | AccountUncheckedCreateWithoutUserInput[] + connectOrCreate?: AccountCreateOrConnectWithoutUserInput | AccountCreateOrConnectWithoutUserInput[] + upsert?: AccountUpsertWithWhereUniqueWithoutUserInput | AccountUpsertWithWhereUniqueWithoutUserInput[] + createMany?: AccountCreateManyUserInputEnvelope + set?: AccountWhereUniqueInput | AccountWhereUniqueInput[] + disconnect?: AccountWhereUniqueInput | AccountWhereUniqueInput[] + delete?: AccountWhereUniqueInput | AccountWhereUniqueInput[] + connect?: AccountWhereUniqueInput | AccountWhereUniqueInput[] + update?: AccountUpdateWithWhereUniqueWithoutUserInput | AccountUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: AccountUpdateManyWithWhereWithoutUserInput | AccountUpdateManyWithWhereWithoutUserInput[] + deleteMany?: AccountScalarWhereInput | AccountScalarWhereInput[] + } export type SessionUncheckedUpdateManyWithoutUserNestedInput = { - create?: - | XOR< - SessionCreateWithoutUserInput, - SessionUncheckedCreateWithoutUserInput - > - | SessionCreateWithoutUserInput[] - | SessionUncheckedCreateWithoutUserInput[]; - connectOrCreate?: - | SessionCreateOrConnectWithoutUserInput - | SessionCreateOrConnectWithoutUserInput[]; - upsert?: - | SessionUpsertWithWhereUniqueWithoutUserInput - | SessionUpsertWithWhereUniqueWithoutUserInput[]; - createMany?: SessionCreateManyUserInputEnvelope; - set?: SessionWhereUniqueInput | SessionWhereUniqueInput[]; - disconnect?: SessionWhereUniqueInput | SessionWhereUniqueInput[]; - delete?: SessionWhereUniqueInput | SessionWhereUniqueInput[]; - connect?: SessionWhereUniqueInput | SessionWhereUniqueInput[]; - update?: - | SessionUpdateWithWhereUniqueWithoutUserInput - | SessionUpdateWithWhereUniqueWithoutUserInput[]; - updateMany?: - | SessionUpdateManyWithWhereWithoutUserInput - | SessionUpdateManyWithWhereWithoutUserInput[]; - deleteMany?: SessionScalarWhereInput | SessionScalarWhereInput[]; - }; + create?: XOR | SessionCreateWithoutUserInput[] | SessionUncheckedCreateWithoutUserInput[] + connectOrCreate?: SessionCreateOrConnectWithoutUserInput | SessionCreateOrConnectWithoutUserInput[] + upsert?: SessionUpsertWithWhereUniqueWithoutUserInput | SessionUpsertWithWhereUniqueWithoutUserInput[] + createMany?: SessionCreateManyUserInputEnvelope + set?: SessionWhereUniqueInput | SessionWhereUniqueInput[] + disconnect?: SessionWhereUniqueInput | SessionWhereUniqueInput[] + delete?: SessionWhereUniqueInput | SessionWhereUniqueInput[] + connect?: SessionWhereUniqueInput | SessionWhereUniqueInput[] + update?: SessionUpdateWithWhereUniqueWithoutUserInput | SessionUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: SessionUpdateManyWithWhereWithoutUserInput | SessionUpdateManyWithWhereWithoutUserInput[] + deleteMany?: SessionScalarWhereInput | SessionScalarWhereInput[] + } - export type PostUncheckedUpdateManyWithoutCreatedByNestedInput = { - create?: - | XOR< - PostCreateWithoutCreatedByInput, - PostUncheckedCreateWithoutCreatedByInput - > - | PostCreateWithoutCreatedByInput[] - | PostUncheckedCreateWithoutCreatedByInput[]; - connectOrCreate?: - | PostCreateOrConnectWithoutCreatedByInput - | PostCreateOrConnectWithoutCreatedByInput[]; - upsert?: - | PostUpsertWithWhereUniqueWithoutCreatedByInput - | PostUpsertWithWhereUniqueWithoutCreatedByInput[]; - createMany?: PostCreateManyCreatedByInputEnvelope; - set?: PostWhereUniqueInput | PostWhereUniqueInput[]; - disconnect?: PostWhereUniqueInput | PostWhereUniqueInput[]; - delete?: PostWhereUniqueInput | PostWhereUniqueInput[]; - connect?: PostWhereUniqueInput | PostWhereUniqueInput[]; - update?: - | PostUpdateWithWhereUniqueWithoutCreatedByInput - | PostUpdateWithWhereUniqueWithoutCreatedByInput[]; - updateMany?: - | PostUpdateManyWithWhereWithoutCreatedByInput - | PostUpdateManyWithWhereWithoutCreatedByInput[]; - deleteMany?: PostScalarWhereInput | PostScalarWhereInput[]; - }; + export type ShopUncheckedUpdateManyWithoutUserNestedInput = { + create?: XOR | ShopCreateWithoutUserInput[] | ShopUncheckedCreateWithoutUserInput[] + connectOrCreate?: ShopCreateOrConnectWithoutUserInput | ShopCreateOrConnectWithoutUserInput[] + upsert?: ShopUpsertWithWhereUniqueWithoutUserInput | ShopUpsertWithWhereUniqueWithoutUserInput[] + createMany?: ShopCreateManyUserInputEnvelope + set?: ShopWhereUniqueInput | ShopWhereUniqueInput[] + disconnect?: ShopWhereUniqueInput | ShopWhereUniqueInput[] + delete?: ShopWhereUniqueInput | ShopWhereUniqueInput[] + connect?: ShopWhereUniqueInput | ShopWhereUniqueInput[] + update?: ShopUpdateWithWhereUniqueWithoutUserInput | ShopUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: ShopUpdateManyWithWhereWithoutUserInput | ShopUpdateManyWithWhereWithoutUserInput[] + deleteMany?: ShopScalarWhereInput | ShopScalarWhereInput[] + } - export type NestedIntFilter<$PrismaModel = never> = { - equals?: number | IntFieldRefInput<$PrismaModel>; - in?: number[]; - notIn?: number[]; - lt?: number | IntFieldRefInput<$PrismaModel>; - lte?: number | IntFieldRefInput<$PrismaModel>; - gt?: number | IntFieldRefInput<$PrismaModel>; - gte?: number | IntFieldRefInput<$PrismaModel>; - not?: NestedIntFilter<$PrismaModel> | number; - }; + export type CartUncheckedUpdateManyWithoutUserNestedInput = { + create?: XOR | CartCreateWithoutUserInput[] | CartUncheckedCreateWithoutUserInput[] + connectOrCreate?: CartCreateOrConnectWithoutUserInput | CartCreateOrConnectWithoutUserInput[] + upsert?: CartUpsertWithWhereUniqueWithoutUserInput | CartUpsertWithWhereUniqueWithoutUserInput[] + createMany?: CartCreateManyUserInputEnvelope + set?: CartWhereUniqueInput | CartWhereUniqueInput[] + disconnect?: CartWhereUniqueInput | CartWhereUniqueInput[] + delete?: CartWhereUniqueInput | CartWhereUniqueInput[] + connect?: CartWhereUniqueInput | CartWhereUniqueInput[] + update?: CartUpdateWithWhereUniqueWithoutUserInput | CartUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: CartUpdateManyWithWhereWithoutUserInput | CartUpdateManyWithWhereWithoutUserInput[] + deleteMany?: CartScalarWhereInput | CartScalarWhereInput[] + } + + export type AdressUncheckedUpdateManyWithoutUserNestedInput = { + create?: XOR | AdressCreateWithoutUserInput[] | AdressUncheckedCreateWithoutUserInput[] + connectOrCreate?: AdressCreateOrConnectWithoutUserInput | AdressCreateOrConnectWithoutUserInput[] + upsert?: AdressUpsertWithWhereUniqueWithoutUserInput | AdressUpsertWithWhereUniqueWithoutUserInput[] + createMany?: AdressCreateManyUserInputEnvelope + set?: AdressWhereUniqueInput | AdressWhereUniqueInput[] + disconnect?: AdressWhereUniqueInput | AdressWhereUniqueInput[] + delete?: AdressWhereUniqueInput | AdressWhereUniqueInput[] + connect?: AdressWhereUniqueInput | AdressWhereUniqueInput[] + update?: AdressUpdateWithWhereUniqueWithoutUserInput | AdressUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: AdressUpdateManyWithWhereWithoutUserInput | AdressUpdateManyWithWhereWithoutUserInput[] + deleteMany?: AdressScalarWhereInput | AdressScalarWhereInput[] + } + + export type UserCreateNestedOneWithoutShopsInput = { + create?: XOR + connectOrCreate?: UserCreateOrConnectWithoutShopsInput + connect?: UserWhereUniqueInput + } + + export type ItemCreateNestedManyWithoutShopInput = { + create?: XOR | ItemCreateWithoutShopInput[] | ItemUncheckedCreateWithoutShopInput[] + connectOrCreate?: ItemCreateOrConnectWithoutShopInput | ItemCreateOrConnectWithoutShopInput[] + createMany?: ItemCreateManyShopInputEnvelope + connect?: ItemWhereUniqueInput | ItemWhereUniqueInput[] + } + + export type SellableCreateNestedManyWithoutShopInput = { + create?: XOR | SellableCreateWithoutShopInput[] | SellableUncheckedCreateWithoutShopInput[] + connectOrCreate?: SellableCreateOrConnectWithoutShopInput | SellableCreateOrConnectWithoutShopInput[] + createMany?: SellableCreateManyShopInputEnvelope + connect?: SellableWhereUniqueInput | SellableWhereUniqueInput[] + } + + export type ItemUncheckedCreateNestedManyWithoutShopInput = { + create?: XOR | ItemCreateWithoutShopInput[] | ItemUncheckedCreateWithoutShopInput[] + connectOrCreate?: ItemCreateOrConnectWithoutShopInput | ItemCreateOrConnectWithoutShopInput[] + createMany?: ItemCreateManyShopInputEnvelope + connect?: ItemWhereUniqueInput | ItemWhereUniqueInput[] + } + + export type SellableUncheckedCreateNestedManyWithoutShopInput = { + create?: XOR | SellableCreateWithoutShopInput[] | SellableUncheckedCreateWithoutShopInput[] + connectOrCreate?: SellableCreateOrConnectWithoutShopInput | SellableCreateOrConnectWithoutShopInput[] + createMany?: SellableCreateManyShopInputEnvelope + connect?: SellableWhereUniqueInput | SellableWhereUniqueInput[] + } + + export type IntFieldUpdateOperationsInput = { + set?: number + increment?: number + decrement?: number + multiply?: number + divide?: number + } + + export type UserUpdateOneRequiredWithoutShopsNestedInput = { + create?: XOR + connectOrCreate?: UserCreateOrConnectWithoutShopsInput + upsert?: UserUpsertWithoutShopsInput + connect?: UserWhereUniqueInput + update?: XOR, UserUncheckedUpdateWithoutShopsInput> + } + + export type ItemUpdateManyWithoutShopNestedInput = { + create?: XOR | ItemCreateWithoutShopInput[] | ItemUncheckedCreateWithoutShopInput[] + connectOrCreate?: ItemCreateOrConnectWithoutShopInput | ItemCreateOrConnectWithoutShopInput[] + upsert?: ItemUpsertWithWhereUniqueWithoutShopInput | ItemUpsertWithWhereUniqueWithoutShopInput[] + createMany?: ItemCreateManyShopInputEnvelope + set?: ItemWhereUniqueInput | ItemWhereUniqueInput[] + disconnect?: ItemWhereUniqueInput | ItemWhereUniqueInput[] + delete?: ItemWhereUniqueInput | ItemWhereUniqueInput[] + connect?: ItemWhereUniqueInput | ItemWhereUniqueInput[] + update?: ItemUpdateWithWhereUniqueWithoutShopInput | ItemUpdateWithWhereUniqueWithoutShopInput[] + updateMany?: ItemUpdateManyWithWhereWithoutShopInput | ItemUpdateManyWithWhereWithoutShopInput[] + deleteMany?: ItemScalarWhereInput | ItemScalarWhereInput[] + } + + export type SellableUpdateManyWithoutShopNestedInput = { + create?: XOR | SellableCreateWithoutShopInput[] | SellableUncheckedCreateWithoutShopInput[] + connectOrCreate?: SellableCreateOrConnectWithoutShopInput | SellableCreateOrConnectWithoutShopInput[] + upsert?: SellableUpsertWithWhereUniqueWithoutShopInput | SellableUpsertWithWhereUniqueWithoutShopInput[] + createMany?: SellableCreateManyShopInputEnvelope + set?: SellableWhereUniqueInput | SellableWhereUniqueInput[] + disconnect?: SellableWhereUniqueInput | SellableWhereUniqueInput[] + delete?: SellableWhereUniqueInput | SellableWhereUniqueInput[] + connect?: SellableWhereUniqueInput | SellableWhereUniqueInput[] + update?: SellableUpdateWithWhereUniqueWithoutShopInput | SellableUpdateWithWhereUniqueWithoutShopInput[] + updateMany?: SellableUpdateManyWithWhereWithoutShopInput | SellableUpdateManyWithWhereWithoutShopInput[] + deleteMany?: SellableScalarWhereInput | SellableScalarWhereInput[] + } + + export type ItemUncheckedUpdateManyWithoutShopNestedInput = { + create?: XOR | ItemCreateWithoutShopInput[] | ItemUncheckedCreateWithoutShopInput[] + connectOrCreate?: ItemCreateOrConnectWithoutShopInput | ItemCreateOrConnectWithoutShopInput[] + upsert?: ItemUpsertWithWhereUniqueWithoutShopInput | ItemUpsertWithWhereUniqueWithoutShopInput[] + createMany?: ItemCreateManyShopInputEnvelope + set?: ItemWhereUniqueInput | ItemWhereUniqueInput[] + disconnect?: ItemWhereUniqueInput | ItemWhereUniqueInput[] + delete?: ItemWhereUniqueInput | ItemWhereUniqueInput[] + connect?: ItemWhereUniqueInput | ItemWhereUniqueInput[] + update?: ItemUpdateWithWhereUniqueWithoutShopInput | ItemUpdateWithWhereUniqueWithoutShopInput[] + updateMany?: ItemUpdateManyWithWhereWithoutShopInput | ItemUpdateManyWithWhereWithoutShopInput[] + deleteMany?: ItemScalarWhereInput | ItemScalarWhereInput[] + } + + export type SellableUncheckedUpdateManyWithoutShopNestedInput = { + create?: XOR | SellableCreateWithoutShopInput[] | SellableUncheckedCreateWithoutShopInput[] + connectOrCreate?: SellableCreateOrConnectWithoutShopInput | SellableCreateOrConnectWithoutShopInput[] + upsert?: SellableUpsertWithWhereUniqueWithoutShopInput | SellableUpsertWithWhereUniqueWithoutShopInput[] + createMany?: SellableCreateManyShopInputEnvelope + set?: SellableWhereUniqueInput | SellableWhereUniqueInput[] + disconnect?: SellableWhereUniqueInput | SellableWhereUniqueInput[] + delete?: SellableWhereUniqueInput | SellableWhereUniqueInput[] + connect?: SellableWhereUniqueInput | SellableWhereUniqueInput[] + update?: SellableUpdateWithWhereUniqueWithoutShopInput | SellableUpdateWithWhereUniqueWithoutShopInput[] + updateMany?: SellableUpdateManyWithWhereWithoutShopInput | SellableUpdateManyWithWhereWithoutShopInput[] + deleteMany?: SellableScalarWhereInput | SellableScalarWhereInput[] + } + + export type ShopCreateNestedOneWithoutItemsInput = { + create?: XOR + connectOrCreate?: ShopCreateOrConnectWithoutItemsInput + connect?: ShopWhereUniqueInput + } + + export type SellableCreateNestedManyWithoutItemInput = { + create?: XOR | SellableCreateWithoutItemInput[] | SellableUncheckedCreateWithoutItemInput[] + connectOrCreate?: SellableCreateOrConnectWithoutItemInput | SellableCreateOrConnectWithoutItemInput[] + createMany?: SellableCreateManyItemInputEnvelope + connect?: SellableWhereUniqueInput | SellableWhereUniqueInput[] + } + + export type SellableUncheckedCreateNestedManyWithoutItemInput = { + create?: XOR | SellableCreateWithoutItemInput[] | SellableUncheckedCreateWithoutItemInput[] + connectOrCreate?: SellableCreateOrConnectWithoutItemInput | SellableCreateOrConnectWithoutItemInput[] + createMany?: SellableCreateManyItemInputEnvelope + connect?: SellableWhereUniqueInput | SellableWhereUniqueInput[] + } + + export type ShopUpdateOneRequiredWithoutItemsNestedInput = { + create?: XOR + connectOrCreate?: ShopCreateOrConnectWithoutItemsInput + upsert?: ShopUpsertWithoutItemsInput + connect?: ShopWhereUniqueInput + update?: XOR, ShopUncheckedUpdateWithoutItemsInput> + } + + export type SellableUpdateManyWithoutItemNestedInput = { + create?: XOR | SellableCreateWithoutItemInput[] | SellableUncheckedCreateWithoutItemInput[] + connectOrCreate?: SellableCreateOrConnectWithoutItemInput | SellableCreateOrConnectWithoutItemInput[] + upsert?: SellableUpsertWithWhereUniqueWithoutItemInput | SellableUpsertWithWhereUniqueWithoutItemInput[] + createMany?: SellableCreateManyItemInputEnvelope + set?: SellableWhereUniqueInput | SellableWhereUniqueInput[] + disconnect?: SellableWhereUniqueInput | SellableWhereUniqueInput[] + delete?: SellableWhereUniqueInput | SellableWhereUniqueInput[] + connect?: SellableWhereUniqueInput | SellableWhereUniqueInput[] + update?: SellableUpdateWithWhereUniqueWithoutItemInput | SellableUpdateWithWhereUniqueWithoutItemInput[] + updateMany?: SellableUpdateManyWithWhereWithoutItemInput | SellableUpdateManyWithWhereWithoutItemInput[] + deleteMany?: SellableScalarWhereInput | SellableScalarWhereInput[] + } + + export type SellableUncheckedUpdateManyWithoutItemNestedInput = { + create?: XOR | SellableCreateWithoutItemInput[] | SellableUncheckedCreateWithoutItemInput[] + connectOrCreate?: SellableCreateOrConnectWithoutItemInput | SellableCreateOrConnectWithoutItemInput[] + upsert?: SellableUpsertWithWhereUniqueWithoutItemInput | SellableUpsertWithWhereUniqueWithoutItemInput[] + createMany?: SellableCreateManyItemInputEnvelope + set?: SellableWhereUniqueInput | SellableWhereUniqueInput[] + disconnect?: SellableWhereUniqueInput | SellableWhereUniqueInput[] + delete?: SellableWhereUniqueInput | SellableWhereUniqueInput[] + connect?: SellableWhereUniqueInput | SellableWhereUniqueInput[] + update?: SellableUpdateWithWhereUniqueWithoutItemInput | SellableUpdateWithWhereUniqueWithoutItemInput[] + updateMany?: SellableUpdateManyWithWhereWithoutItemInput | SellableUpdateManyWithWhereWithoutItemInput[] + deleteMany?: SellableScalarWhereInput | SellableScalarWhereInput[] + } + + export type ShopCreateNestedOneWithoutSellablesInput = { + create?: XOR + connectOrCreate?: ShopCreateOrConnectWithoutSellablesInput + connect?: ShopWhereUniqueInput + } + + export type ItemCreateNestedOneWithoutSellablesInput = { + create?: XOR + connectOrCreate?: ItemCreateOrConnectWithoutSellablesInput + connect?: ItemWhereUniqueInput + } + + export type CartItemCreateNestedManyWithoutSellableInput = { + create?: XOR | CartItemCreateWithoutSellableInput[] | CartItemUncheckedCreateWithoutSellableInput[] + connectOrCreate?: CartItemCreateOrConnectWithoutSellableInput | CartItemCreateOrConnectWithoutSellableInput[] + createMany?: CartItemCreateManySellableInputEnvelope + connect?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[] + } + + export type CartItemUncheckedCreateNestedManyWithoutSellableInput = { + create?: XOR | CartItemCreateWithoutSellableInput[] | CartItemUncheckedCreateWithoutSellableInput[] + connectOrCreate?: CartItemCreateOrConnectWithoutSellableInput | CartItemCreateOrConnectWithoutSellableInput[] + createMany?: CartItemCreateManySellableInputEnvelope + connect?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[] + } + + export type BoolFieldUpdateOperationsInput = { + set?: boolean + } + + export type ShopUpdateOneRequiredWithoutSellablesNestedInput = { + create?: XOR + connectOrCreate?: ShopCreateOrConnectWithoutSellablesInput + upsert?: ShopUpsertWithoutSellablesInput + connect?: ShopWhereUniqueInput + update?: XOR, ShopUncheckedUpdateWithoutSellablesInput> + } + + export type ItemUpdateOneRequiredWithoutSellablesNestedInput = { + create?: XOR + connectOrCreate?: ItemCreateOrConnectWithoutSellablesInput + upsert?: ItemUpsertWithoutSellablesInput + connect?: ItemWhereUniqueInput + update?: XOR, ItemUncheckedUpdateWithoutSellablesInput> + } + + export type CartItemUpdateManyWithoutSellableNestedInput = { + create?: XOR | CartItemCreateWithoutSellableInput[] | CartItemUncheckedCreateWithoutSellableInput[] + connectOrCreate?: CartItemCreateOrConnectWithoutSellableInput | CartItemCreateOrConnectWithoutSellableInput[] + upsert?: CartItemUpsertWithWhereUniqueWithoutSellableInput | CartItemUpsertWithWhereUniqueWithoutSellableInput[] + createMany?: CartItemCreateManySellableInputEnvelope + set?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[] + disconnect?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[] + delete?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[] + connect?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[] + update?: CartItemUpdateWithWhereUniqueWithoutSellableInput | CartItemUpdateWithWhereUniqueWithoutSellableInput[] + updateMany?: CartItemUpdateManyWithWhereWithoutSellableInput | CartItemUpdateManyWithWhereWithoutSellableInput[] + deleteMany?: CartItemScalarWhereInput | CartItemScalarWhereInput[] + } + + export type CartItemUncheckedUpdateManyWithoutSellableNestedInput = { + create?: XOR | CartItemCreateWithoutSellableInput[] | CartItemUncheckedCreateWithoutSellableInput[] + connectOrCreate?: CartItemCreateOrConnectWithoutSellableInput | CartItemCreateOrConnectWithoutSellableInput[] + upsert?: CartItemUpsertWithWhereUniqueWithoutSellableInput | CartItemUpsertWithWhereUniqueWithoutSellableInput[] + createMany?: CartItemCreateManySellableInputEnvelope + set?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[] + disconnect?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[] + delete?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[] + connect?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[] + update?: CartItemUpdateWithWhereUniqueWithoutSellableInput | CartItemUpdateWithWhereUniqueWithoutSellableInput[] + updateMany?: CartItemUpdateManyWithWhereWithoutSellableInput | CartItemUpdateManyWithWhereWithoutSellableInput[] + deleteMany?: CartItemScalarWhereInput | CartItemScalarWhereInput[] + } + + export type UserCreateNestedOneWithoutCartsInput = { + create?: XOR + connectOrCreate?: UserCreateOrConnectWithoutCartsInput + connect?: UserWhereUniqueInput + } + + export type CartItemCreateNestedManyWithoutCartInput = { + create?: XOR | CartItemCreateWithoutCartInput[] | CartItemUncheckedCreateWithoutCartInput[] + connectOrCreate?: CartItemCreateOrConnectWithoutCartInput | CartItemCreateOrConnectWithoutCartInput[] + createMany?: CartItemCreateManyCartInputEnvelope + connect?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[] + } + + export type CartItemUncheckedCreateNestedManyWithoutCartInput = { + create?: XOR | CartItemCreateWithoutCartInput[] | CartItemUncheckedCreateWithoutCartInput[] + connectOrCreate?: CartItemCreateOrConnectWithoutCartInput | CartItemCreateOrConnectWithoutCartInput[] + createMany?: CartItemCreateManyCartInputEnvelope + connect?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[] + } + + export type UserUpdateOneRequiredWithoutCartsNestedInput = { + create?: XOR + connectOrCreate?: UserCreateOrConnectWithoutCartsInput + upsert?: UserUpsertWithoutCartsInput + connect?: UserWhereUniqueInput + update?: XOR, UserUncheckedUpdateWithoutCartsInput> + } + + export type CartItemUpdateManyWithoutCartNestedInput = { + create?: XOR | CartItemCreateWithoutCartInput[] | CartItemUncheckedCreateWithoutCartInput[] + connectOrCreate?: CartItemCreateOrConnectWithoutCartInput | CartItemCreateOrConnectWithoutCartInput[] + upsert?: CartItemUpsertWithWhereUniqueWithoutCartInput | CartItemUpsertWithWhereUniqueWithoutCartInput[] + createMany?: CartItemCreateManyCartInputEnvelope + set?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[] + disconnect?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[] + delete?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[] + connect?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[] + update?: CartItemUpdateWithWhereUniqueWithoutCartInput | CartItemUpdateWithWhereUniqueWithoutCartInput[] + updateMany?: CartItemUpdateManyWithWhereWithoutCartInput | CartItemUpdateManyWithWhereWithoutCartInput[] + deleteMany?: CartItemScalarWhereInput | CartItemScalarWhereInput[] + } + + export type CartItemUncheckedUpdateManyWithoutCartNestedInput = { + create?: XOR | CartItemCreateWithoutCartInput[] | CartItemUncheckedCreateWithoutCartInput[] + connectOrCreate?: CartItemCreateOrConnectWithoutCartInput | CartItemCreateOrConnectWithoutCartInput[] + upsert?: CartItemUpsertWithWhereUniqueWithoutCartInput | CartItemUpsertWithWhereUniqueWithoutCartInput[] + createMany?: CartItemCreateManyCartInputEnvelope + set?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[] + disconnect?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[] + delete?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[] + connect?: CartItemWhereUniqueInput | CartItemWhereUniqueInput[] + update?: CartItemUpdateWithWhereUniqueWithoutCartInput | CartItemUpdateWithWhereUniqueWithoutCartInput[] + updateMany?: CartItemUpdateManyWithWhereWithoutCartInput | CartItemUpdateManyWithWhereWithoutCartInput[] + deleteMany?: CartItemScalarWhereInput | CartItemScalarWhereInput[] + } + + export type CartCreateNestedOneWithoutCartItemsInput = { + create?: XOR + connectOrCreate?: CartCreateOrConnectWithoutCartItemsInput + connect?: CartWhereUniqueInput + } + + export type SellableCreateNestedOneWithoutCartItemsInput = { + create?: XOR + connectOrCreate?: SellableCreateOrConnectWithoutCartItemsInput + connect?: SellableWhereUniqueInput + } + + export type CartUpdateOneRequiredWithoutCartItemsNestedInput = { + create?: XOR + connectOrCreate?: CartCreateOrConnectWithoutCartItemsInput + upsert?: CartUpsertWithoutCartItemsInput + connect?: CartWhereUniqueInput + update?: XOR, CartUncheckedUpdateWithoutCartItemsInput> + } + + export type SellableUpdateOneRequiredWithoutCartItemsNestedInput = { + create?: XOR + connectOrCreate?: SellableCreateOrConnectWithoutCartItemsInput + upsert?: SellableUpsertWithoutCartItemsInput + connect?: SellableWhereUniqueInput + update?: XOR, SellableUncheckedUpdateWithoutCartItemsInput> + } + + export type UserCreateNestedOneWithoutAdressesInput = { + create?: XOR + connectOrCreate?: UserCreateOrConnectWithoutAdressesInput + connect?: UserWhereUniqueInput + } + + export type UserUpdateOneRequiredWithoutAdressesNestedInput = { + create?: XOR + connectOrCreate?: UserCreateOrConnectWithoutAdressesInput + upsert?: UserUpsertWithoutAdressesInput + connect?: UserWhereUniqueInput + update?: XOR, UserUncheckedUpdateWithoutAdressesInput> + } export type NestedStringFilter<$PrismaModel = never> = { - equals?: string | StringFieldRefInput<$PrismaModel>; - in?: string[]; - notIn?: string[]; - lt?: string | StringFieldRefInput<$PrismaModel>; - lte?: string | StringFieldRefInput<$PrismaModel>; - gt?: string | StringFieldRefInput<$PrismaModel>; - gte?: string | StringFieldRefInput<$PrismaModel>; - contains?: string | StringFieldRefInput<$PrismaModel>; - startsWith?: string | StringFieldRefInput<$PrismaModel>; - endsWith?: string | StringFieldRefInput<$PrismaModel>; - search?: string; - not?: NestedStringFilter<$PrismaModel> | string; - }; - - export type NestedDateTimeFilter<$PrismaModel = never> = { - equals?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - in?: Date[] | string[]; - notIn?: Date[] | string[]; - lt?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - lte?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - gt?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - gte?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - not?: NestedDateTimeFilter<$PrismaModel> | Date | string; - }; - - export type NestedIntWithAggregatesFilter<$PrismaModel = never> = { - equals?: number | IntFieldRefInput<$PrismaModel>; - in?: number[]; - notIn?: number[]; - lt?: number | IntFieldRefInput<$PrismaModel>; - lte?: number | IntFieldRefInput<$PrismaModel>; - gt?: number | IntFieldRefInput<$PrismaModel>; - gte?: number | IntFieldRefInput<$PrismaModel>; - not?: NestedIntWithAggregatesFilter<$PrismaModel> | number; - _count?: NestedIntFilter<$PrismaModel>; - _avg?: NestedFloatFilter<$PrismaModel>; - _sum?: NestedIntFilter<$PrismaModel>; - _min?: NestedIntFilter<$PrismaModel>; - _max?: NestedIntFilter<$PrismaModel>; - }; - - export type NestedFloatFilter<$PrismaModel = never> = { - equals?: number | FloatFieldRefInput<$PrismaModel>; - in?: number[]; - notIn?: number[]; - lt?: number | FloatFieldRefInput<$PrismaModel>; - lte?: number | FloatFieldRefInput<$PrismaModel>; - gt?: number | FloatFieldRefInput<$PrismaModel>; - gte?: number | FloatFieldRefInput<$PrismaModel>; - not?: NestedFloatFilter<$PrismaModel> | number; - }; - - export type NestedStringWithAggregatesFilter<$PrismaModel = never> = { - equals?: string | StringFieldRefInput<$PrismaModel>; - in?: string[]; - notIn?: string[]; - lt?: string | StringFieldRefInput<$PrismaModel>; - lte?: string | StringFieldRefInput<$PrismaModel>; - gt?: string | StringFieldRefInput<$PrismaModel>; - gte?: string | StringFieldRefInput<$PrismaModel>; - contains?: string | StringFieldRefInput<$PrismaModel>; - startsWith?: string | StringFieldRefInput<$PrismaModel>; - endsWith?: string | StringFieldRefInput<$PrismaModel>; - search?: string; - not?: NestedStringWithAggregatesFilter<$PrismaModel> | string; - _count?: NestedIntFilter<$PrismaModel>; - _min?: NestedStringFilter<$PrismaModel>; - _max?: NestedStringFilter<$PrismaModel>; - }; - - export type NestedDateTimeWithAggregatesFilter<$PrismaModel = never> = { - equals?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - in?: Date[] | string[]; - notIn?: Date[] | string[]; - lt?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - lte?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - gt?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - gte?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - not?: NestedDateTimeWithAggregatesFilter<$PrismaModel> | Date | string; - _count?: NestedIntFilter<$PrismaModel>; - _min?: NestedDateTimeFilter<$PrismaModel>; - _max?: NestedDateTimeFilter<$PrismaModel>; - }; + equals?: string | StringFieldRefInput<$PrismaModel> + in?: string[] + notIn?: string[] + lt?: string | StringFieldRefInput<$PrismaModel> + lte?: string | StringFieldRefInput<$PrismaModel> + gt?: string | StringFieldRefInput<$PrismaModel> + gte?: string | StringFieldRefInput<$PrismaModel> + contains?: string | StringFieldRefInput<$PrismaModel> + startsWith?: string | StringFieldRefInput<$PrismaModel> + endsWith?: string | StringFieldRefInput<$PrismaModel> + search?: string + not?: NestedStringFilter<$PrismaModel> | string + } export type NestedStringNullableFilter<$PrismaModel = never> = { - equals?: string | StringFieldRefInput<$PrismaModel> | null; - in?: string[] | null; - notIn?: string[] | null; - lt?: string | StringFieldRefInput<$PrismaModel>; - lte?: string | StringFieldRefInput<$PrismaModel>; - gt?: string | StringFieldRefInput<$PrismaModel>; - gte?: string | StringFieldRefInput<$PrismaModel>; - contains?: string | StringFieldRefInput<$PrismaModel>; - startsWith?: string | StringFieldRefInput<$PrismaModel>; - endsWith?: string | StringFieldRefInput<$PrismaModel>; - search?: string; - not?: NestedStringNullableFilter<$PrismaModel> | string | null; - }; + equals?: string | StringFieldRefInput<$PrismaModel> | null + in?: string[] | null + notIn?: string[] | null + lt?: string | StringFieldRefInput<$PrismaModel> + lte?: string | StringFieldRefInput<$PrismaModel> + gt?: string | StringFieldRefInput<$PrismaModel> + gte?: string | StringFieldRefInput<$PrismaModel> + contains?: string | StringFieldRefInput<$PrismaModel> + startsWith?: string | StringFieldRefInput<$PrismaModel> + endsWith?: string | StringFieldRefInput<$PrismaModel> + search?: string + not?: NestedStringNullableFilter<$PrismaModel> | string | null + } export type NestedIntNullableFilter<$PrismaModel = never> = { - equals?: number | IntFieldRefInput<$PrismaModel> | null; - in?: number[] | null; - notIn?: number[] | null; - lt?: number | IntFieldRefInput<$PrismaModel>; - lte?: number | IntFieldRefInput<$PrismaModel>; - gt?: number | IntFieldRefInput<$PrismaModel>; - gte?: number | IntFieldRefInput<$PrismaModel>; - not?: NestedIntNullableFilter<$PrismaModel> | number | null; - }; + equals?: number | IntFieldRefInput<$PrismaModel> | null + in?: number[] | null + notIn?: number[] | null + lt?: number | IntFieldRefInput<$PrismaModel> + lte?: number | IntFieldRefInput<$PrismaModel> + gt?: number | IntFieldRefInput<$PrismaModel> + gte?: number | IntFieldRefInput<$PrismaModel> + not?: NestedIntNullableFilter<$PrismaModel> | number | null + } + + export type NestedStringWithAggregatesFilter<$PrismaModel = never> = { + equals?: string | StringFieldRefInput<$PrismaModel> + in?: string[] + notIn?: string[] + lt?: string | StringFieldRefInput<$PrismaModel> + lte?: string | StringFieldRefInput<$PrismaModel> + gt?: string | StringFieldRefInput<$PrismaModel> + gte?: string | StringFieldRefInput<$PrismaModel> + contains?: string | StringFieldRefInput<$PrismaModel> + startsWith?: string | StringFieldRefInput<$PrismaModel> + endsWith?: string | StringFieldRefInput<$PrismaModel> + search?: string + not?: NestedStringWithAggregatesFilter<$PrismaModel> | string + _count?: NestedIntFilter<$PrismaModel> + _min?: NestedStringFilter<$PrismaModel> + _max?: NestedStringFilter<$PrismaModel> + } + + export type NestedIntFilter<$PrismaModel = never> = { + equals?: number | IntFieldRefInput<$PrismaModel> + in?: number[] + notIn?: number[] + lt?: number | IntFieldRefInput<$PrismaModel> + lte?: number | IntFieldRefInput<$PrismaModel> + gt?: number | IntFieldRefInput<$PrismaModel> + gte?: number | IntFieldRefInput<$PrismaModel> + not?: NestedIntFilter<$PrismaModel> | number + } export type NestedStringNullableWithAggregatesFilter<$PrismaModel = never> = { - equals?: string | StringFieldRefInput<$PrismaModel> | null; - in?: string[] | null; - notIn?: string[] | null; - lt?: string | StringFieldRefInput<$PrismaModel>; - lte?: string | StringFieldRefInput<$PrismaModel>; - gt?: string | StringFieldRefInput<$PrismaModel>; - gte?: string | StringFieldRefInput<$PrismaModel>; - contains?: string | StringFieldRefInput<$PrismaModel>; - startsWith?: string | StringFieldRefInput<$PrismaModel>; - endsWith?: string | StringFieldRefInput<$PrismaModel>; - search?: string; - not?: - | NestedStringNullableWithAggregatesFilter<$PrismaModel> - | string - | null; - _count?: NestedIntNullableFilter<$PrismaModel>; - _min?: NestedStringNullableFilter<$PrismaModel>; - _max?: NestedStringNullableFilter<$PrismaModel>; - }; + equals?: string | StringFieldRefInput<$PrismaModel> | null + in?: string[] | null + notIn?: string[] | null + lt?: string | StringFieldRefInput<$PrismaModel> + lte?: string | StringFieldRefInput<$PrismaModel> + gt?: string | StringFieldRefInput<$PrismaModel> + gte?: string | StringFieldRefInput<$PrismaModel> + contains?: string | StringFieldRefInput<$PrismaModel> + startsWith?: string | StringFieldRefInput<$PrismaModel> + endsWith?: string | StringFieldRefInput<$PrismaModel> + search?: string + not?: NestedStringNullableWithAggregatesFilter<$PrismaModel> | string | null + _count?: NestedIntNullableFilter<$PrismaModel> + _min?: NestedStringNullableFilter<$PrismaModel> + _max?: NestedStringNullableFilter<$PrismaModel> + } export type NestedIntNullableWithAggregatesFilter<$PrismaModel = never> = { - equals?: number | IntFieldRefInput<$PrismaModel> | null; - in?: number[] | null; - notIn?: number[] | null; - lt?: number | IntFieldRefInput<$PrismaModel>; - lte?: number | IntFieldRefInput<$PrismaModel>; - gt?: number | IntFieldRefInput<$PrismaModel>; - gte?: number | IntFieldRefInput<$PrismaModel>; - not?: NestedIntNullableWithAggregatesFilter<$PrismaModel> | number | null; - _count?: NestedIntNullableFilter<$PrismaModel>; - _avg?: NestedFloatNullableFilter<$PrismaModel>; - _sum?: NestedIntNullableFilter<$PrismaModel>; - _min?: NestedIntNullableFilter<$PrismaModel>; - _max?: NestedIntNullableFilter<$PrismaModel>; - }; + equals?: number | IntFieldRefInput<$PrismaModel> | null + in?: number[] | null + notIn?: number[] | null + lt?: number | IntFieldRefInput<$PrismaModel> + lte?: number | IntFieldRefInput<$PrismaModel> + gt?: number | IntFieldRefInput<$PrismaModel> + gte?: number | IntFieldRefInput<$PrismaModel> + not?: NestedIntNullableWithAggregatesFilter<$PrismaModel> | number | null + _count?: NestedIntNullableFilter<$PrismaModel> + _avg?: NestedFloatNullableFilter<$PrismaModel> + _sum?: NestedIntNullableFilter<$PrismaModel> + _min?: NestedIntNullableFilter<$PrismaModel> + _max?: NestedIntNullableFilter<$PrismaModel> + } export type NestedFloatNullableFilter<$PrismaModel = never> = { - equals?: number | FloatFieldRefInput<$PrismaModel> | null; - in?: number[] | null; - notIn?: number[] | null; - lt?: number | FloatFieldRefInput<$PrismaModel>; - lte?: number | FloatFieldRefInput<$PrismaModel>; - gt?: number | FloatFieldRefInput<$PrismaModel>; - gte?: number | FloatFieldRefInput<$PrismaModel>; - not?: NestedFloatNullableFilter<$PrismaModel> | number | null; - }; + equals?: number | FloatFieldRefInput<$PrismaModel> | null + in?: number[] | null + notIn?: number[] | null + lt?: number | FloatFieldRefInput<$PrismaModel> + lte?: number | FloatFieldRefInput<$PrismaModel> + gt?: number | FloatFieldRefInput<$PrismaModel> + gte?: number | FloatFieldRefInput<$PrismaModel> + not?: NestedFloatNullableFilter<$PrismaModel> | number | null + } + + export type NestedDateTimeFilter<$PrismaModel = never> = { + equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> + in?: Date[] | string[] + notIn?: Date[] | string[] + lt?: Date | string | DateTimeFieldRefInput<$PrismaModel> + lte?: Date | string | DateTimeFieldRefInput<$PrismaModel> + gt?: Date | string | DateTimeFieldRefInput<$PrismaModel> + gte?: Date | string | DateTimeFieldRefInput<$PrismaModel> + not?: NestedDateTimeFilter<$PrismaModel> | Date | string + } + + export type NestedDateTimeWithAggregatesFilter<$PrismaModel = never> = { + equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> + in?: Date[] | string[] + notIn?: Date[] | string[] + lt?: Date | string | DateTimeFieldRefInput<$PrismaModel> + lte?: Date | string | DateTimeFieldRefInput<$PrismaModel> + gt?: Date | string | DateTimeFieldRefInput<$PrismaModel> + gte?: Date | string | DateTimeFieldRefInput<$PrismaModel> + not?: NestedDateTimeWithAggregatesFilter<$PrismaModel> | Date | string + _count?: NestedIntFilter<$PrismaModel> + _min?: NestedDateTimeFilter<$PrismaModel> + _max?: NestedDateTimeFilter<$PrismaModel> + } export type NestedDateTimeNullableFilter<$PrismaModel = never> = { - equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> | null; - in?: Date[] | string[] | null; - notIn?: Date[] | string[] | null; - lt?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - lte?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - gt?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - gte?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - not?: NestedDateTimeNullableFilter<$PrismaModel> | Date | string | null; - }; + equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> | null + in?: Date[] | string[] | null + notIn?: Date[] | string[] | null + lt?: Date | string | DateTimeFieldRefInput<$PrismaModel> + lte?: Date | string | DateTimeFieldRefInput<$PrismaModel> + gt?: Date | string | DateTimeFieldRefInput<$PrismaModel> + gte?: Date | string | DateTimeFieldRefInput<$PrismaModel> + not?: NestedDateTimeNullableFilter<$PrismaModel> | Date | string | null + } - export type NestedDateTimeNullableWithAggregatesFilter<$PrismaModel = never> = - { - equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> | null; - in?: Date[] | string[] | null; - notIn?: Date[] | string[] | null; - lt?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - lte?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - gt?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - gte?: Date | string | DateTimeFieldRefInput<$PrismaModel>; - not?: - | NestedDateTimeNullableWithAggregatesFilter<$PrismaModel> - | Date - | string - | null; - _count?: NestedIntNullableFilter<$PrismaModel>; - _min?: NestedDateTimeNullableFilter<$PrismaModel>; - _max?: NestedDateTimeNullableFilter<$PrismaModel>; - }; + export type NestedFloatFilter<$PrismaModel = never> = { + equals?: number | FloatFieldRefInput<$PrismaModel> + in?: number[] + notIn?: number[] + lt?: number | FloatFieldRefInput<$PrismaModel> + lte?: number | FloatFieldRefInput<$PrismaModel> + gt?: number | FloatFieldRefInput<$PrismaModel> + gte?: number | FloatFieldRefInput<$PrismaModel> + not?: NestedFloatFilter<$PrismaModel> | number + } - export type UserCreateWithoutPostsInput = { - id?: string; - name?: string | null; - email?: string | null; - emailVerified?: Date | string | null; - image?: string | null; - accounts?: AccountCreateNestedManyWithoutUserInput; - sessions?: SessionCreateNestedManyWithoutUserInput; - }; + export type NestedDateTimeNullableWithAggregatesFilter<$PrismaModel = never> = { + equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> | null + in?: Date[] | string[] | null + notIn?: Date[] | string[] | null + lt?: Date | string | DateTimeFieldRefInput<$PrismaModel> + lte?: Date | string | DateTimeFieldRefInput<$PrismaModel> + gt?: Date | string | DateTimeFieldRefInput<$PrismaModel> + gte?: Date | string | DateTimeFieldRefInput<$PrismaModel> + not?: NestedDateTimeNullableWithAggregatesFilter<$PrismaModel> | Date | string | null + _count?: NestedIntNullableFilter<$PrismaModel> + _min?: NestedDateTimeNullableFilter<$PrismaModel> + _max?: NestedDateTimeNullableFilter<$PrismaModel> + } - export type UserUncheckedCreateWithoutPostsInput = { - id?: string; - name?: string | null; - email?: string | null; - emailVerified?: Date | string | null; - image?: string | null; - accounts?: AccountUncheckedCreateNestedManyWithoutUserInput; - sessions?: SessionUncheckedCreateNestedManyWithoutUserInput; - }; + export type NestedFloatWithAggregatesFilter<$PrismaModel = never> = { + equals?: number | FloatFieldRefInput<$PrismaModel> + in?: number[] + notIn?: number[] + lt?: number | FloatFieldRefInput<$PrismaModel> + lte?: number | FloatFieldRefInput<$PrismaModel> + gt?: number | FloatFieldRefInput<$PrismaModel> + gte?: number | FloatFieldRefInput<$PrismaModel> + not?: NestedFloatWithAggregatesFilter<$PrismaModel> | number + _count?: NestedIntFilter<$PrismaModel> + _avg?: NestedFloatFilter<$PrismaModel> + _sum?: NestedFloatFilter<$PrismaModel> + _min?: NestedFloatFilter<$PrismaModel> + _max?: NestedFloatFilter<$PrismaModel> + } - export type UserCreateOrConnectWithoutPostsInput = { - where: UserWhereUniqueInput; - create: XOR< - UserCreateWithoutPostsInput, - UserUncheckedCreateWithoutPostsInput - >; - }; + export type NestedIntWithAggregatesFilter<$PrismaModel = never> = { + equals?: number | IntFieldRefInput<$PrismaModel> + in?: number[] + notIn?: number[] + lt?: number | IntFieldRefInput<$PrismaModel> + lte?: number | IntFieldRefInput<$PrismaModel> + gt?: number | IntFieldRefInput<$PrismaModel> + gte?: number | IntFieldRefInput<$PrismaModel> + not?: NestedIntWithAggregatesFilter<$PrismaModel> | number + _count?: NestedIntFilter<$PrismaModel> + _avg?: NestedFloatFilter<$PrismaModel> + _sum?: NestedIntFilter<$PrismaModel> + _min?: NestedIntFilter<$PrismaModel> + _max?: NestedIntFilter<$PrismaModel> + } - export type UserUpsertWithoutPostsInput = { - update: XOR< - UserUpdateWithoutPostsInput, - UserUncheckedUpdateWithoutPostsInput - >; - create: XOR< - UserCreateWithoutPostsInput, - UserUncheckedCreateWithoutPostsInput - >; - where?: UserWhereInput; - }; + export type NestedBoolFilter<$PrismaModel = never> = { + equals?: boolean | BooleanFieldRefInput<$PrismaModel> + not?: NestedBoolFilter<$PrismaModel> | boolean + } - export type UserUpdateToOneWithWhereWithoutPostsInput = { - where?: UserWhereInput; - data: XOR< - UserUpdateWithoutPostsInput, - UserUncheckedUpdateWithoutPostsInput - >; - }; - - export type UserUpdateWithoutPostsInput = { - id?: StringFieldUpdateOperationsInput | string; - name?: NullableStringFieldUpdateOperationsInput | string | null; - email?: NullableStringFieldUpdateOperationsInput | string | null; - emailVerified?: - | NullableDateTimeFieldUpdateOperationsInput - | Date - | string - | null; - image?: NullableStringFieldUpdateOperationsInput | string | null; - accounts?: AccountUpdateManyWithoutUserNestedInput; - sessions?: SessionUpdateManyWithoutUserNestedInput; - }; - - export type UserUncheckedUpdateWithoutPostsInput = { - id?: StringFieldUpdateOperationsInput | string; - name?: NullableStringFieldUpdateOperationsInput | string | null; - email?: NullableStringFieldUpdateOperationsInput | string | null; - emailVerified?: - | NullableDateTimeFieldUpdateOperationsInput - | Date - | string - | null; - image?: NullableStringFieldUpdateOperationsInput | string | null; - accounts?: AccountUncheckedUpdateManyWithoutUserNestedInput; - sessions?: SessionUncheckedUpdateManyWithoutUserNestedInput; - }; + export type NestedBoolWithAggregatesFilter<$PrismaModel = never> = { + equals?: boolean | BooleanFieldRefInput<$PrismaModel> + not?: NestedBoolWithAggregatesFilter<$PrismaModel> | boolean + _count?: NestedIntFilter<$PrismaModel> + _min?: NestedBoolFilter<$PrismaModel> + _max?: NestedBoolFilter<$PrismaModel> + } export type UserCreateWithoutAccountsInput = { - id?: string; - name?: string | null; - email?: string | null; - emailVerified?: Date | string | null; - image?: string | null; - sessions?: SessionCreateNestedManyWithoutUserInput; - posts?: PostCreateNestedManyWithoutCreatedByInput; - }; + id?: string + name?: string | null + email?: string | null + emailVerified?: Date | string | null + image?: string | null + balance?: number + sessions?: SessionCreateNestedManyWithoutUserInput + shops?: ShopCreateNestedManyWithoutUserInput + carts?: CartCreateNestedManyWithoutUserInput + adresses?: AdressCreateNestedManyWithoutUserInput + } export type UserUncheckedCreateWithoutAccountsInput = { - id?: string; - name?: string | null; - email?: string | null; - emailVerified?: Date | string | null; - image?: string | null; - sessions?: SessionUncheckedCreateNestedManyWithoutUserInput; - posts?: PostUncheckedCreateNestedManyWithoutCreatedByInput; - }; + id?: string + name?: string | null + email?: string | null + emailVerified?: Date | string | null + image?: string | null + balance?: number + sessions?: SessionUncheckedCreateNestedManyWithoutUserInput + shops?: ShopUncheckedCreateNestedManyWithoutUserInput + carts?: CartUncheckedCreateNestedManyWithoutUserInput + adresses?: AdressUncheckedCreateNestedManyWithoutUserInput + } export type UserCreateOrConnectWithoutAccountsInput = { - where: UserWhereUniqueInput; - create: XOR< - UserCreateWithoutAccountsInput, - UserUncheckedCreateWithoutAccountsInput - >; - }; + where: UserWhereUniqueInput + create: XOR + } export type UserUpsertWithoutAccountsInput = { - update: XOR< - UserUpdateWithoutAccountsInput, - UserUncheckedUpdateWithoutAccountsInput - >; - create: XOR< - UserCreateWithoutAccountsInput, - UserUncheckedCreateWithoutAccountsInput - >; - where?: UserWhereInput; - }; + update: XOR + create: XOR + where?: UserWhereInput + } export type UserUpdateToOneWithWhereWithoutAccountsInput = { - where?: UserWhereInput; - data: XOR< - UserUpdateWithoutAccountsInput, - UserUncheckedUpdateWithoutAccountsInput - >; - }; + where?: UserWhereInput + data: XOR + } export type UserUpdateWithoutAccountsInput = { - id?: StringFieldUpdateOperationsInput | string; - name?: NullableStringFieldUpdateOperationsInput | string | null; - email?: NullableStringFieldUpdateOperationsInput | string | null; - emailVerified?: - | NullableDateTimeFieldUpdateOperationsInput - | Date - | string - | null; - image?: NullableStringFieldUpdateOperationsInput | string | null; - sessions?: SessionUpdateManyWithoutUserNestedInput; - posts?: PostUpdateManyWithoutCreatedByNestedInput; - }; + id?: StringFieldUpdateOperationsInput | string + name?: NullableStringFieldUpdateOperationsInput | string | null + email?: NullableStringFieldUpdateOperationsInput | string | null + emailVerified?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + image?: NullableStringFieldUpdateOperationsInput | string | null + balance?: FloatFieldUpdateOperationsInput | number + sessions?: SessionUpdateManyWithoutUserNestedInput + shops?: ShopUpdateManyWithoutUserNestedInput + carts?: CartUpdateManyWithoutUserNestedInput + adresses?: AdressUpdateManyWithoutUserNestedInput + } export type UserUncheckedUpdateWithoutAccountsInput = { - id?: StringFieldUpdateOperationsInput | string; - name?: NullableStringFieldUpdateOperationsInput | string | null; - email?: NullableStringFieldUpdateOperationsInput | string | null; - emailVerified?: - | NullableDateTimeFieldUpdateOperationsInput - | Date - | string - | null; - image?: NullableStringFieldUpdateOperationsInput | string | null; - sessions?: SessionUncheckedUpdateManyWithoutUserNestedInput; - posts?: PostUncheckedUpdateManyWithoutCreatedByNestedInput; - }; + id?: StringFieldUpdateOperationsInput | string + name?: NullableStringFieldUpdateOperationsInput | string | null + email?: NullableStringFieldUpdateOperationsInput | string | null + emailVerified?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + image?: NullableStringFieldUpdateOperationsInput | string | null + balance?: FloatFieldUpdateOperationsInput | number + sessions?: SessionUncheckedUpdateManyWithoutUserNestedInput + shops?: ShopUncheckedUpdateManyWithoutUserNestedInput + carts?: CartUncheckedUpdateManyWithoutUserNestedInput + adresses?: AdressUncheckedUpdateManyWithoutUserNestedInput + } export type UserCreateWithoutSessionsInput = { - id?: string; - name?: string | null; - email?: string | null; - emailVerified?: Date | string | null; - image?: string | null; - accounts?: AccountCreateNestedManyWithoutUserInput; - posts?: PostCreateNestedManyWithoutCreatedByInput; - }; + id?: string + name?: string | null + email?: string | null + emailVerified?: Date | string | null + image?: string | null + balance?: number + accounts?: AccountCreateNestedManyWithoutUserInput + shops?: ShopCreateNestedManyWithoutUserInput + carts?: CartCreateNestedManyWithoutUserInput + adresses?: AdressCreateNestedManyWithoutUserInput + } export type UserUncheckedCreateWithoutSessionsInput = { - id?: string; - name?: string | null; - email?: string | null; - emailVerified?: Date | string | null; - image?: string | null; - accounts?: AccountUncheckedCreateNestedManyWithoutUserInput; - posts?: PostUncheckedCreateNestedManyWithoutCreatedByInput; - }; + id?: string + name?: string | null + email?: string | null + emailVerified?: Date | string | null + image?: string | null + balance?: number + accounts?: AccountUncheckedCreateNestedManyWithoutUserInput + shops?: ShopUncheckedCreateNestedManyWithoutUserInput + carts?: CartUncheckedCreateNestedManyWithoutUserInput + adresses?: AdressUncheckedCreateNestedManyWithoutUserInput + } export type UserCreateOrConnectWithoutSessionsInput = { - where: UserWhereUniqueInput; - create: XOR< - UserCreateWithoutSessionsInput, - UserUncheckedCreateWithoutSessionsInput - >; - }; + where: UserWhereUniqueInput + create: XOR + } export type UserUpsertWithoutSessionsInput = { - update: XOR< - UserUpdateWithoutSessionsInput, - UserUncheckedUpdateWithoutSessionsInput - >; - create: XOR< - UserCreateWithoutSessionsInput, - UserUncheckedCreateWithoutSessionsInput - >; - where?: UserWhereInput; - }; + update: XOR + create: XOR + where?: UserWhereInput + } export type UserUpdateToOneWithWhereWithoutSessionsInput = { - where?: UserWhereInput; - data: XOR< - UserUpdateWithoutSessionsInput, - UserUncheckedUpdateWithoutSessionsInput - >; - }; + where?: UserWhereInput + data: XOR + } export type UserUpdateWithoutSessionsInput = { - id?: StringFieldUpdateOperationsInput | string; - name?: NullableStringFieldUpdateOperationsInput | string | null; - email?: NullableStringFieldUpdateOperationsInput | string | null; - emailVerified?: - | NullableDateTimeFieldUpdateOperationsInput - | Date - | string - | null; - image?: NullableStringFieldUpdateOperationsInput | string | null; - accounts?: AccountUpdateManyWithoutUserNestedInput; - posts?: PostUpdateManyWithoutCreatedByNestedInput; - }; + id?: StringFieldUpdateOperationsInput | string + name?: NullableStringFieldUpdateOperationsInput | string | null + email?: NullableStringFieldUpdateOperationsInput | string | null + emailVerified?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + image?: NullableStringFieldUpdateOperationsInput | string | null + balance?: FloatFieldUpdateOperationsInput | number + accounts?: AccountUpdateManyWithoutUserNestedInput + shops?: ShopUpdateManyWithoutUserNestedInput + carts?: CartUpdateManyWithoutUserNestedInput + adresses?: AdressUpdateManyWithoutUserNestedInput + } export type UserUncheckedUpdateWithoutSessionsInput = { - id?: StringFieldUpdateOperationsInput | string; - name?: NullableStringFieldUpdateOperationsInput | string | null; - email?: NullableStringFieldUpdateOperationsInput | string | null; - emailVerified?: - | NullableDateTimeFieldUpdateOperationsInput - | Date - | string - | null; - image?: NullableStringFieldUpdateOperationsInput | string | null; - accounts?: AccountUncheckedUpdateManyWithoutUserNestedInput; - posts?: PostUncheckedUpdateManyWithoutCreatedByNestedInput; - }; + id?: StringFieldUpdateOperationsInput | string + name?: NullableStringFieldUpdateOperationsInput | string | null + email?: NullableStringFieldUpdateOperationsInput | string | null + emailVerified?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + image?: NullableStringFieldUpdateOperationsInput | string | null + balance?: FloatFieldUpdateOperationsInput | number + accounts?: AccountUncheckedUpdateManyWithoutUserNestedInput + shops?: ShopUncheckedUpdateManyWithoutUserNestedInput + carts?: CartUncheckedUpdateManyWithoutUserNestedInput + adresses?: AdressUncheckedUpdateManyWithoutUserNestedInput + } export type AccountCreateWithoutUserInput = { - id?: string; - type: string; - provider: string; - providerAccountId: string; - refresh_token?: string | null; - access_token?: string | null; - expires_at?: number | null; - token_type?: string | null; - scope?: string | null; - id_token?: string | null; - session_state?: string | null; - refresh_token_expires_in?: number | null; - }; + id?: string + type: string + provider: string + providerAccountId: string + refresh_token?: string | null + access_token?: string | null + expires_at?: number | null + token_type?: string | null + scope?: string | null + id_token?: string | null + session_state?: string | null + refresh_token_expires_in?: number | null + } export type AccountUncheckedCreateWithoutUserInput = { - id?: string; - type: string; - provider: string; - providerAccountId: string; - refresh_token?: string | null; - access_token?: string | null; - expires_at?: number | null; - token_type?: string | null; - scope?: string | null; - id_token?: string | null; - session_state?: string | null; - refresh_token_expires_in?: number | null; - }; + id?: string + type: string + provider: string + providerAccountId: string + refresh_token?: string | null + access_token?: string | null + expires_at?: number | null + token_type?: string | null + scope?: string | null + id_token?: string | null + session_state?: string | null + refresh_token_expires_in?: number | null + } export type AccountCreateOrConnectWithoutUserInput = { - where: AccountWhereUniqueInput; - create: XOR< - AccountCreateWithoutUserInput, - AccountUncheckedCreateWithoutUserInput - >; - }; + where: AccountWhereUniqueInput + create: XOR + } export type AccountCreateManyUserInputEnvelope = { - data: AccountCreateManyUserInput | AccountCreateManyUserInput[]; - skipDuplicates?: boolean; - }; + data: AccountCreateManyUserInput | AccountCreateManyUserInput[] + skipDuplicates?: boolean + } export type SessionCreateWithoutUserInput = { - id?: string; - sessionToken: string; - expires: Date | string; - }; + id?: string + sessionToken: string + expires: Date | string + } export type SessionUncheckedCreateWithoutUserInput = { - id?: string; - sessionToken: string; - expires: Date | string; - }; + id?: string + sessionToken: string + expires: Date | string + } export type SessionCreateOrConnectWithoutUserInput = { - where: SessionWhereUniqueInput; - create: XOR< - SessionCreateWithoutUserInput, - SessionUncheckedCreateWithoutUserInput - >; - }; + where: SessionWhereUniqueInput + create: XOR + } export type SessionCreateManyUserInputEnvelope = { - data: SessionCreateManyUserInput | SessionCreateManyUserInput[]; - skipDuplicates?: boolean; - }; + data: SessionCreateManyUserInput | SessionCreateManyUserInput[] + skipDuplicates?: boolean + } - export type PostCreateWithoutCreatedByInput = { - name: string; - createdAt?: Date | string; - updatedAt?: Date | string; - }; + export type ShopCreateWithoutUserInput = { + id: number + label: string + items?: ItemCreateNestedManyWithoutShopInput + sellables?: SellableCreateNestedManyWithoutShopInput + } - export type PostUncheckedCreateWithoutCreatedByInput = { - id?: number; - name: string; - createdAt?: Date | string; - updatedAt?: Date | string; - }; + export type ShopUncheckedCreateWithoutUserInput = { + id: number + label: string + items?: ItemUncheckedCreateNestedManyWithoutShopInput + sellables?: SellableUncheckedCreateNestedManyWithoutShopInput + } - export type PostCreateOrConnectWithoutCreatedByInput = { - where: PostWhereUniqueInput; - create: XOR< - PostCreateWithoutCreatedByInput, - PostUncheckedCreateWithoutCreatedByInput - >; - }; + export type ShopCreateOrConnectWithoutUserInput = { + where: ShopWhereUniqueInput + create: XOR + } - export type PostCreateManyCreatedByInputEnvelope = { - data: PostCreateManyCreatedByInput | PostCreateManyCreatedByInput[]; - skipDuplicates?: boolean; - }; + export type ShopCreateManyUserInputEnvelope = { + data: ShopCreateManyUserInput | ShopCreateManyUserInput[] + skipDuplicates?: boolean + } + + export type CartCreateWithoutUserInput = { + id: string + cartItems?: CartItemCreateNestedManyWithoutCartInput + } + + export type CartUncheckedCreateWithoutUserInput = { + id: string + cartItems?: CartItemUncheckedCreateNestedManyWithoutCartInput + } + + export type CartCreateOrConnectWithoutUserInput = { + where: CartWhereUniqueInput + create: XOR + } + + export type CartCreateManyUserInputEnvelope = { + data: CartCreateManyUserInput | CartCreateManyUserInput[] + skipDuplicates?: boolean + } + + export type AdressCreateWithoutUserInput = { + id?: string + adress: string + } + + export type AdressUncheckedCreateWithoutUserInput = { + id?: string + adress: string + } + + export type AdressCreateOrConnectWithoutUserInput = { + where: AdressWhereUniqueInput + create: XOR + } + + export type AdressCreateManyUserInputEnvelope = { + data: AdressCreateManyUserInput | AdressCreateManyUserInput[] + skipDuplicates?: boolean + } export type AccountUpsertWithWhereUniqueWithoutUserInput = { - where: AccountWhereUniqueInput; - update: XOR< - AccountUpdateWithoutUserInput, - AccountUncheckedUpdateWithoutUserInput - >; - create: XOR< - AccountCreateWithoutUserInput, - AccountUncheckedCreateWithoutUserInput - >; - }; + where: AccountWhereUniqueInput + update: XOR + create: XOR + } export type AccountUpdateWithWhereUniqueWithoutUserInput = { - where: AccountWhereUniqueInput; - data: XOR< - AccountUpdateWithoutUserInput, - AccountUncheckedUpdateWithoutUserInput - >; - }; + where: AccountWhereUniqueInput + data: XOR + } export type AccountUpdateManyWithWhereWithoutUserInput = { - where: AccountScalarWhereInput; - data: XOR< - AccountUpdateManyMutationInput, - AccountUncheckedUpdateManyWithoutUserInput - >; - }; + where: AccountScalarWhereInput + data: XOR + } export type AccountScalarWhereInput = { - AND?: AccountScalarWhereInput | AccountScalarWhereInput[]; - OR?: AccountScalarWhereInput[]; - NOT?: AccountScalarWhereInput | AccountScalarWhereInput[]; - id?: StringFilter<"Account"> | string; - userId?: StringFilter<"Account"> | string; - type?: StringFilter<"Account"> | string; - provider?: StringFilter<"Account"> | string; - providerAccountId?: StringFilter<"Account"> | string; - refresh_token?: StringNullableFilter<"Account"> | string | null; - access_token?: StringNullableFilter<"Account"> | string | null; - expires_at?: IntNullableFilter<"Account"> | number | null; - token_type?: StringNullableFilter<"Account"> | string | null; - scope?: StringNullableFilter<"Account"> | string | null; - id_token?: StringNullableFilter<"Account"> | string | null; - session_state?: StringNullableFilter<"Account"> | string | null; - refresh_token_expires_in?: IntNullableFilter<"Account"> | number | null; - }; + AND?: AccountScalarWhereInput | AccountScalarWhereInput[] + OR?: AccountScalarWhereInput[] + NOT?: AccountScalarWhereInput | AccountScalarWhereInput[] + id?: StringFilter<"Account"> | string + userId?: StringFilter<"Account"> | string + type?: StringFilter<"Account"> | string + provider?: StringFilter<"Account"> | string + providerAccountId?: StringFilter<"Account"> | string + refresh_token?: StringNullableFilter<"Account"> | string | null + access_token?: StringNullableFilter<"Account"> | string | null + expires_at?: IntNullableFilter<"Account"> | number | null + token_type?: StringNullableFilter<"Account"> | string | null + scope?: StringNullableFilter<"Account"> | string | null + id_token?: StringNullableFilter<"Account"> | string | null + session_state?: StringNullableFilter<"Account"> | string | null + refresh_token_expires_in?: IntNullableFilter<"Account"> | number | null + } export type SessionUpsertWithWhereUniqueWithoutUserInput = { - where: SessionWhereUniqueInput; - update: XOR< - SessionUpdateWithoutUserInput, - SessionUncheckedUpdateWithoutUserInput - >; - create: XOR< - SessionCreateWithoutUserInput, - SessionUncheckedCreateWithoutUserInput - >; - }; + where: SessionWhereUniqueInput + update: XOR + create: XOR + } export type SessionUpdateWithWhereUniqueWithoutUserInput = { - where: SessionWhereUniqueInput; - data: XOR< - SessionUpdateWithoutUserInput, - SessionUncheckedUpdateWithoutUserInput - >; - }; + where: SessionWhereUniqueInput + data: XOR + } export type SessionUpdateManyWithWhereWithoutUserInput = { - where: SessionScalarWhereInput; - data: XOR< - SessionUpdateManyMutationInput, - SessionUncheckedUpdateManyWithoutUserInput - >; - }; + where: SessionScalarWhereInput + data: XOR + } export type SessionScalarWhereInput = { - AND?: SessionScalarWhereInput | SessionScalarWhereInput[]; - OR?: SessionScalarWhereInput[]; - NOT?: SessionScalarWhereInput | SessionScalarWhereInput[]; - id?: StringFilter<"Session"> | string; - sessionToken?: StringFilter<"Session"> | string; - userId?: StringFilter<"Session"> | string; - expires?: DateTimeFilter<"Session"> | Date | string; - }; + AND?: SessionScalarWhereInput | SessionScalarWhereInput[] + OR?: SessionScalarWhereInput[] + NOT?: SessionScalarWhereInput | SessionScalarWhereInput[] + id?: StringFilter<"Session"> | string + sessionToken?: StringFilter<"Session"> | string + userId?: StringFilter<"Session"> | string + expires?: DateTimeFilter<"Session"> | Date | string + } - export type PostUpsertWithWhereUniqueWithoutCreatedByInput = { - where: PostWhereUniqueInput; - update: XOR< - PostUpdateWithoutCreatedByInput, - PostUncheckedUpdateWithoutCreatedByInput - >; - create: XOR< - PostCreateWithoutCreatedByInput, - PostUncheckedCreateWithoutCreatedByInput - >; - }; + export type ShopUpsertWithWhereUniqueWithoutUserInput = { + where: ShopWhereUniqueInput + update: XOR + create: XOR + } - export type PostUpdateWithWhereUniqueWithoutCreatedByInput = { - where: PostWhereUniqueInput; - data: XOR< - PostUpdateWithoutCreatedByInput, - PostUncheckedUpdateWithoutCreatedByInput - >; - }; + export type ShopUpdateWithWhereUniqueWithoutUserInput = { + where: ShopWhereUniqueInput + data: XOR + } - export type PostUpdateManyWithWhereWithoutCreatedByInput = { - where: PostScalarWhereInput; - data: XOR< - PostUpdateManyMutationInput, - PostUncheckedUpdateManyWithoutCreatedByInput - >; - }; + export type ShopUpdateManyWithWhereWithoutUserInput = { + where: ShopScalarWhereInput + data: XOR + } - export type PostScalarWhereInput = { - AND?: PostScalarWhereInput | PostScalarWhereInput[]; - OR?: PostScalarWhereInput[]; - NOT?: PostScalarWhereInput | PostScalarWhereInput[]; - id?: IntFilter<"Post"> | number; - name?: StringFilter<"Post"> | string; - createdAt?: DateTimeFilter<"Post"> | Date | string; - updatedAt?: DateTimeFilter<"Post"> | Date | string; - createdById?: StringFilter<"Post"> | string; - }; + export type ShopScalarWhereInput = { + AND?: ShopScalarWhereInput | ShopScalarWhereInput[] + OR?: ShopScalarWhereInput[] + NOT?: ShopScalarWhereInput | ShopScalarWhereInput[] + id?: IntFilter<"Shop"> | number + userId?: StringFilter<"Shop"> | string + label?: StringFilter<"Shop"> | string + } + + export type CartUpsertWithWhereUniqueWithoutUserInput = { + where: CartWhereUniqueInput + update: XOR + create: XOR + } + + export type CartUpdateWithWhereUniqueWithoutUserInput = { + where: CartWhereUniqueInput + data: XOR + } + + export type CartUpdateManyWithWhereWithoutUserInput = { + where: CartScalarWhereInput + data: XOR + } + + export type CartScalarWhereInput = { + AND?: CartScalarWhereInput | CartScalarWhereInput[] + OR?: CartScalarWhereInput[] + NOT?: CartScalarWhereInput | CartScalarWhereInput[] + id?: StringFilter<"Cart"> | string + userId?: StringFilter<"Cart"> | string + } + + export type AdressUpsertWithWhereUniqueWithoutUserInput = { + where: AdressWhereUniqueInput + update: XOR + create: XOR + } + + export type AdressUpdateWithWhereUniqueWithoutUserInput = { + where: AdressWhereUniqueInput + data: XOR + } + + export type AdressUpdateManyWithWhereWithoutUserInput = { + where: AdressScalarWhereInput + data: XOR + } + + export type AdressScalarWhereInput = { + AND?: AdressScalarWhereInput | AdressScalarWhereInput[] + OR?: AdressScalarWhereInput[] + NOT?: AdressScalarWhereInput | AdressScalarWhereInput[] + id?: StringFilter<"Adress"> | string + userId?: StringFilter<"Adress"> | string + adress?: StringFilter<"Adress"> | string + } + + export type UserCreateWithoutShopsInput = { + id?: string + name?: string | null + email?: string | null + emailVerified?: Date | string | null + image?: string | null + balance?: number + accounts?: AccountCreateNestedManyWithoutUserInput + sessions?: SessionCreateNestedManyWithoutUserInput + carts?: CartCreateNestedManyWithoutUserInput + adresses?: AdressCreateNestedManyWithoutUserInput + } + + export type UserUncheckedCreateWithoutShopsInput = { + id?: string + name?: string | null + email?: string | null + emailVerified?: Date | string | null + image?: string | null + balance?: number + accounts?: AccountUncheckedCreateNestedManyWithoutUserInput + sessions?: SessionUncheckedCreateNestedManyWithoutUserInput + carts?: CartUncheckedCreateNestedManyWithoutUserInput + adresses?: AdressUncheckedCreateNestedManyWithoutUserInput + } + + export type UserCreateOrConnectWithoutShopsInput = { + where: UserWhereUniqueInput + create: XOR + } + + export type ItemCreateWithoutShopInput = { + item_name: string + stock: number + sellables?: SellableCreateNestedManyWithoutItemInput + } + + export type ItemUncheckedCreateWithoutShopInput = { + item_name: string + stock: number + sellables?: SellableUncheckedCreateNestedManyWithoutItemInput + } + + export type ItemCreateOrConnectWithoutShopInput = { + where: ItemWhereUniqueInput + create: XOR + } + + export type ItemCreateManyShopInputEnvelope = { + data: ItemCreateManyShopInput | ItemCreateManyShopInput[] + skipDuplicates?: boolean + } + + export type SellableCreateWithoutShopInput = { + id?: string + amount: number + price: number + enabled?: boolean + item: ItemCreateNestedOneWithoutSellablesInput + cartItems?: CartItemCreateNestedManyWithoutSellableInput + } + + export type SellableUncheckedCreateWithoutShopInput = { + id?: string + item_name: string + amount: number + price: number + enabled?: boolean + cartItems?: CartItemUncheckedCreateNestedManyWithoutSellableInput + } + + export type SellableCreateOrConnectWithoutShopInput = { + where: SellableWhereUniqueInput + create: XOR + } + + export type SellableCreateManyShopInputEnvelope = { + data: SellableCreateManyShopInput | SellableCreateManyShopInput[] + skipDuplicates?: boolean + } + + export type UserUpsertWithoutShopsInput = { + update: XOR + create: XOR + where?: UserWhereInput + } + + export type UserUpdateToOneWithWhereWithoutShopsInput = { + where?: UserWhereInput + data: XOR + } + + export type UserUpdateWithoutShopsInput = { + id?: StringFieldUpdateOperationsInput | string + name?: NullableStringFieldUpdateOperationsInput | string | null + email?: NullableStringFieldUpdateOperationsInput | string | null + emailVerified?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + image?: NullableStringFieldUpdateOperationsInput | string | null + balance?: FloatFieldUpdateOperationsInput | number + accounts?: AccountUpdateManyWithoutUserNestedInput + sessions?: SessionUpdateManyWithoutUserNestedInput + carts?: CartUpdateManyWithoutUserNestedInput + adresses?: AdressUpdateManyWithoutUserNestedInput + } + + export type UserUncheckedUpdateWithoutShopsInput = { + id?: StringFieldUpdateOperationsInput | string + name?: NullableStringFieldUpdateOperationsInput | string | null + email?: NullableStringFieldUpdateOperationsInput | string | null + emailVerified?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + image?: NullableStringFieldUpdateOperationsInput | string | null + balance?: FloatFieldUpdateOperationsInput | number + accounts?: AccountUncheckedUpdateManyWithoutUserNestedInput + sessions?: SessionUncheckedUpdateManyWithoutUserNestedInput + carts?: CartUncheckedUpdateManyWithoutUserNestedInput + adresses?: AdressUncheckedUpdateManyWithoutUserNestedInput + } + + export type ItemUpsertWithWhereUniqueWithoutShopInput = { + where: ItemWhereUniqueInput + update: XOR + create: XOR + } + + export type ItemUpdateWithWhereUniqueWithoutShopInput = { + where: ItemWhereUniqueInput + data: XOR + } + + export type ItemUpdateManyWithWhereWithoutShopInput = { + where: ItemScalarWhereInput + data: XOR + } + + export type ItemScalarWhereInput = { + AND?: ItemScalarWhereInput | ItemScalarWhereInput[] + OR?: ItemScalarWhereInput[] + NOT?: ItemScalarWhereInput | ItemScalarWhereInput[] + item_name?: StringFilter<"Item"> | string + stock?: IntFilter<"Item"> | number + shopId?: IntFilter<"Item"> | number + } + + export type SellableUpsertWithWhereUniqueWithoutShopInput = { + where: SellableWhereUniqueInput + update: XOR + create: XOR + } + + export type SellableUpdateWithWhereUniqueWithoutShopInput = { + where: SellableWhereUniqueInput + data: XOR + } + + export type SellableUpdateManyWithWhereWithoutShopInput = { + where: SellableScalarWhereInput + data: XOR + } + + export type SellableScalarWhereInput = { + AND?: SellableScalarWhereInput | SellableScalarWhereInput[] + OR?: SellableScalarWhereInput[] + NOT?: SellableScalarWhereInput | SellableScalarWhereInput[] + id?: StringFilter<"Sellable"> | string + item_name?: StringFilter<"Sellable"> | string + amount?: IntFilter<"Sellable"> | number + price?: FloatFilter<"Sellable"> | number + shopId?: IntFilter<"Sellable"> | number + enabled?: BoolFilter<"Sellable"> | boolean + } + + export type ShopCreateWithoutItemsInput = { + id: number + label: string + user: UserCreateNestedOneWithoutShopsInput + sellables?: SellableCreateNestedManyWithoutShopInput + } + + export type ShopUncheckedCreateWithoutItemsInput = { + id: number + userId: string + label: string + sellables?: SellableUncheckedCreateNestedManyWithoutShopInput + } + + export type ShopCreateOrConnectWithoutItemsInput = { + where: ShopWhereUniqueInput + create: XOR + } + + export type SellableCreateWithoutItemInput = { + id?: string + amount: number + price: number + enabled?: boolean + shop: ShopCreateNestedOneWithoutSellablesInput + cartItems?: CartItemCreateNestedManyWithoutSellableInput + } + + export type SellableUncheckedCreateWithoutItemInput = { + id?: string + amount: number + price: number + shopId: number + enabled?: boolean + cartItems?: CartItemUncheckedCreateNestedManyWithoutSellableInput + } + + export type SellableCreateOrConnectWithoutItemInput = { + where: SellableWhereUniqueInput + create: XOR + } + + export type SellableCreateManyItemInputEnvelope = { + data: SellableCreateManyItemInput | SellableCreateManyItemInput[] + skipDuplicates?: boolean + } + + export type ShopUpsertWithoutItemsInput = { + update: XOR + create: XOR + where?: ShopWhereInput + } + + export type ShopUpdateToOneWithWhereWithoutItemsInput = { + where?: ShopWhereInput + data: XOR + } + + export type ShopUpdateWithoutItemsInput = { + id?: IntFieldUpdateOperationsInput | number + label?: StringFieldUpdateOperationsInput | string + user?: UserUpdateOneRequiredWithoutShopsNestedInput + sellables?: SellableUpdateManyWithoutShopNestedInput + } + + export type ShopUncheckedUpdateWithoutItemsInput = { + id?: IntFieldUpdateOperationsInput | number + userId?: StringFieldUpdateOperationsInput | string + label?: StringFieldUpdateOperationsInput | string + sellables?: SellableUncheckedUpdateManyWithoutShopNestedInput + } + + export type SellableUpsertWithWhereUniqueWithoutItemInput = { + where: SellableWhereUniqueInput + update: XOR + create: XOR + } + + export type SellableUpdateWithWhereUniqueWithoutItemInput = { + where: SellableWhereUniqueInput + data: XOR + } + + export type SellableUpdateManyWithWhereWithoutItemInput = { + where: SellableScalarWhereInput + data: XOR + } + + export type ShopCreateWithoutSellablesInput = { + id: number + label: string + user: UserCreateNestedOneWithoutShopsInput + items?: ItemCreateNestedManyWithoutShopInput + } + + export type ShopUncheckedCreateWithoutSellablesInput = { + id: number + userId: string + label: string + items?: ItemUncheckedCreateNestedManyWithoutShopInput + } + + export type ShopCreateOrConnectWithoutSellablesInput = { + where: ShopWhereUniqueInput + create: XOR + } + + export type ItemCreateWithoutSellablesInput = { + item_name: string + stock: number + shop: ShopCreateNestedOneWithoutItemsInput + } + + export type ItemUncheckedCreateWithoutSellablesInput = { + item_name: string + stock: number + shopId: number + } + + export type ItemCreateOrConnectWithoutSellablesInput = { + where: ItemWhereUniqueInput + create: XOR + } + + export type CartItemCreateWithoutSellableInput = { + quantity: number + cart: CartCreateNestedOneWithoutCartItemsInput + } + + export type CartItemUncheckedCreateWithoutSellableInput = { + quantity: number + cartId: string + } + + export type CartItemCreateOrConnectWithoutSellableInput = { + where: CartItemWhereUniqueInput + create: XOR + } + + export type CartItemCreateManySellableInputEnvelope = { + data: CartItemCreateManySellableInput | CartItemCreateManySellableInput[] + skipDuplicates?: boolean + } + + export type ShopUpsertWithoutSellablesInput = { + update: XOR + create: XOR + where?: ShopWhereInput + } + + export type ShopUpdateToOneWithWhereWithoutSellablesInput = { + where?: ShopWhereInput + data: XOR + } + + export type ShopUpdateWithoutSellablesInput = { + id?: IntFieldUpdateOperationsInput | number + label?: StringFieldUpdateOperationsInput | string + user?: UserUpdateOneRequiredWithoutShopsNestedInput + items?: ItemUpdateManyWithoutShopNestedInput + } + + export type ShopUncheckedUpdateWithoutSellablesInput = { + id?: IntFieldUpdateOperationsInput | number + userId?: StringFieldUpdateOperationsInput | string + label?: StringFieldUpdateOperationsInput | string + items?: ItemUncheckedUpdateManyWithoutShopNestedInput + } + + export type ItemUpsertWithoutSellablesInput = { + update: XOR + create: XOR + where?: ItemWhereInput + } + + export type ItemUpdateToOneWithWhereWithoutSellablesInput = { + where?: ItemWhereInput + data: XOR + } + + export type ItemUpdateWithoutSellablesInput = { + item_name?: StringFieldUpdateOperationsInput | string + stock?: IntFieldUpdateOperationsInput | number + shop?: ShopUpdateOneRequiredWithoutItemsNestedInput + } + + export type ItemUncheckedUpdateWithoutSellablesInput = { + item_name?: StringFieldUpdateOperationsInput | string + stock?: IntFieldUpdateOperationsInput | number + shopId?: IntFieldUpdateOperationsInput | number + } + + export type CartItemUpsertWithWhereUniqueWithoutSellableInput = { + where: CartItemWhereUniqueInput + update: XOR + create: XOR + } + + export type CartItemUpdateWithWhereUniqueWithoutSellableInput = { + where: CartItemWhereUniqueInput + data: XOR + } + + export type CartItemUpdateManyWithWhereWithoutSellableInput = { + where: CartItemScalarWhereInput + data: XOR + } + + export type CartItemScalarWhereInput = { + AND?: CartItemScalarWhereInput | CartItemScalarWhereInput[] + OR?: CartItemScalarWhereInput[] + NOT?: CartItemScalarWhereInput | CartItemScalarWhereInput[] + itemId?: StringFilter<"CartItem"> | string + quantity?: IntFilter<"CartItem"> | number + cartId?: StringFilter<"CartItem"> | string + } + + export type UserCreateWithoutCartsInput = { + id?: string + name?: string | null + email?: string | null + emailVerified?: Date | string | null + image?: string | null + balance?: number + accounts?: AccountCreateNestedManyWithoutUserInput + sessions?: SessionCreateNestedManyWithoutUserInput + shops?: ShopCreateNestedManyWithoutUserInput + adresses?: AdressCreateNestedManyWithoutUserInput + } + + export type UserUncheckedCreateWithoutCartsInput = { + id?: string + name?: string | null + email?: string | null + emailVerified?: Date | string | null + image?: string | null + balance?: number + accounts?: AccountUncheckedCreateNestedManyWithoutUserInput + sessions?: SessionUncheckedCreateNestedManyWithoutUserInput + shops?: ShopUncheckedCreateNestedManyWithoutUserInput + adresses?: AdressUncheckedCreateNestedManyWithoutUserInput + } + + export type UserCreateOrConnectWithoutCartsInput = { + where: UserWhereUniqueInput + create: XOR + } + + export type CartItemCreateWithoutCartInput = { + quantity: number + sellable: SellableCreateNestedOneWithoutCartItemsInput + } + + export type CartItemUncheckedCreateWithoutCartInput = { + itemId: string + quantity: number + } + + export type CartItemCreateOrConnectWithoutCartInput = { + where: CartItemWhereUniqueInput + create: XOR + } + + export type CartItemCreateManyCartInputEnvelope = { + data: CartItemCreateManyCartInput | CartItemCreateManyCartInput[] + skipDuplicates?: boolean + } + + export type UserUpsertWithoutCartsInput = { + update: XOR + create: XOR + where?: UserWhereInput + } + + export type UserUpdateToOneWithWhereWithoutCartsInput = { + where?: UserWhereInput + data: XOR + } + + export type UserUpdateWithoutCartsInput = { + id?: StringFieldUpdateOperationsInput | string + name?: NullableStringFieldUpdateOperationsInput | string | null + email?: NullableStringFieldUpdateOperationsInput | string | null + emailVerified?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + image?: NullableStringFieldUpdateOperationsInput | string | null + balance?: FloatFieldUpdateOperationsInput | number + accounts?: AccountUpdateManyWithoutUserNestedInput + sessions?: SessionUpdateManyWithoutUserNestedInput + shops?: ShopUpdateManyWithoutUserNestedInput + adresses?: AdressUpdateManyWithoutUserNestedInput + } + + export type UserUncheckedUpdateWithoutCartsInput = { + id?: StringFieldUpdateOperationsInput | string + name?: NullableStringFieldUpdateOperationsInput | string | null + email?: NullableStringFieldUpdateOperationsInput | string | null + emailVerified?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + image?: NullableStringFieldUpdateOperationsInput | string | null + balance?: FloatFieldUpdateOperationsInput | number + accounts?: AccountUncheckedUpdateManyWithoutUserNestedInput + sessions?: SessionUncheckedUpdateManyWithoutUserNestedInput + shops?: ShopUncheckedUpdateManyWithoutUserNestedInput + adresses?: AdressUncheckedUpdateManyWithoutUserNestedInput + } + + export type CartItemUpsertWithWhereUniqueWithoutCartInput = { + where: CartItemWhereUniqueInput + update: XOR + create: XOR + } + + export type CartItemUpdateWithWhereUniqueWithoutCartInput = { + where: CartItemWhereUniqueInput + data: XOR + } + + export type CartItemUpdateManyWithWhereWithoutCartInput = { + where: CartItemScalarWhereInput + data: XOR + } + + export type CartCreateWithoutCartItemsInput = { + id: string + user: UserCreateNestedOneWithoutCartsInput + } + + export type CartUncheckedCreateWithoutCartItemsInput = { + id: string + userId: string + } + + export type CartCreateOrConnectWithoutCartItemsInput = { + where: CartWhereUniqueInput + create: XOR + } + + export type SellableCreateWithoutCartItemsInput = { + id?: string + amount: number + price: number + enabled?: boolean + shop: ShopCreateNestedOneWithoutSellablesInput + item: ItemCreateNestedOneWithoutSellablesInput + } + + export type SellableUncheckedCreateWithoutCartItemsInput = { + id?: string + item_name: string + amount: number + price: number + shopId: number + enabled?: boolean + } + + export type SellableCreateOrConnectWithoutCartItemsInput = { + where: SellableWhereUniqueInput + create: XOR + } + + export type CartUpsertWithoutCartItemsInput = { + update: XOR + create: XOR + where?: CartWhereInput + } + + export type CartUpdateToOneWithWhereWithoutCartItemsInput = { + where?: CartWhereInput + data: XOR + } + + export type CartUpdateWithoutCartItemsInput = { + id?: StringFieldUpdateOperationsInput | string + user?: UserUpdateOneRequiredWithoutCartsNestedInput + } + + export type CartUncheckedUpdateWithoutCartItemsInput = { + id?: StringFieldUpdateOperationsInput | string + userId?: StringFieldUpdateOperationsInput | string + } + + export type SellableUpsertWithoutCartItemsInput = { + update: XOR + create: XOR + where?: SellableWhereInput + } + + export type SellableUpdateToOneWithWhereWithoutCartItemsInput = { + where?: SellableWhereInput + data: XOR + } + + export type SellableUpdateWithoutCartItemsInput = { + id?: StringFieldUpdateOperationsInput | string + amount?: IntFieldUpdateOperationsInput | number + price?: FloatFieldUpdateOperationsInput | number + enabled?: BoolFieldUpdateOperationsInput | boolean + shop?: ShopUpdateOneRequiredWithoutSellablesNestedInput + item?: ItemUpdateOneRequiredWithoutSellablesNestedInput + } + + export type SellableUncheckedUpdateWithoutCartItemsInput = { + id?: StringFieldUpdateOperationsInput | string + item_name?: StringFieldUpdateOperationsInput | string + amount?: IntFieldUpdateOperationsInput | number + price?: FloatFieldUpdateOperationsInput | number + shopId?: IntFieldUpdateOperationsInput | number + enabled?: BoolFieldUpdateOperationsInput | boolean + } + + export type UserCreateWithoutAdressesInput = { + id?: string + name?: string | null + email?: string | null + emailVerified?: Date | string | null + image?: string | null + balance?: number + accounts?: AccountCreateNestedManyWithoutUserInput + sessions?: SessionCreateNestedManyWithoutUserInput + shops?: ShopCreateNestedManyWithoutUserInput + carts?: CartCreateNestedManyWithoutUserInput + } + + export type UserUncheckedCreateWithoutAdressesInput = { + id?: string + name?: string | null + email?: string | null + emailVerified?: Date | string | null + image?: string | null + balance?: number + accounts?: AccountUncheckedCreateNestedManyWithoutUserInput + sessions?: SessionUncheckedCreateNestedManyWithoutUserInput + shops?: ShopUncheckedCreateNestedManyWithoutUserInput + carts?: CartUncheckedCreateNestedManyWithoutUserInput + } + + export type UserCreateOrConnectWithoutAdressesInput = { + where: UserWhereUniqueInput + create: XOR + } + + export type UserUpsertWithoutAdressesInput = { + update: XOR + create: XOR + where?: UserWhereInput + } + + export type UserUpdateToOneWithWhereWithoutAdressesInput = { + where?: UserWhereInput + data: XOR + } + + export type UserUpdateWithoutAdressesInput = { + id?: StringFieldUpdateOperationsInput | string + name?: NullableStringFieldUpdateOperationsInput | string | null + email?: NullableStringFieldUpdateOperationsInput | string | null + emailVerified?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + image?: NullableStringFieldUpdateOperationsInput | string | null + balance?: FloatFieldUpdateOperationsInput | number + accounts?: AccountUpdateManyWithoutUserNestedInput + sessions?: SessionUpdateManyWithoutUserNestedInput + shops?: ShopUpdateManyWithoutUserNestedInput + carts?: CartUpdateManyWithoutUserNestedInput + } + + export type UserUncheckedUpdateWithoutAdressesInput = { + id?: StringFieldUpdateOperationsInput | string + name?: NullableStringFieldUpdateOperationsInput | string | null + email?: NullableStringFieldUpdateOperationsInput | string | null + emailVerified?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + image?: NullableStringFieldUpdateOperationsInput | string | null + balance?: FloatFieldUpdateOperationsInput | number + accounts?: AccountUncheckedUpdateManyWithoutUserNestedInput + sessions?: SessionUncheckedUpdateManyWithoutUserNestedInput + shops?: ShopUncheckedUpdateManyWithoutUserNestedInput + carts?: CartUncheckedUpdateManyWithoutUserNestedInput + } export type AccountCreateManyUserInput = { - id?: string; - type: string; - provider: string; - providerAccountId: string; - refresh_token?: string | null; - access_token?: string | null; - expires_at?: number | null; - token_type?: string | null; - scope?: string | null; - id_token?: string | null; - session_state?: string | null; - refresh_token_expires_in?: number | null; - }; + id?: string + type: string + provider: string + providerAccountId: string + refresh_token?: string | null + access_token?: string | null + expires_at?: number | null + token_type?: string | null + scope?: string | null + id_token?: string | null + session_state?: string | null + refresh_token_expires_in?: number | null + } export type SessionCreateManyUserInput = { - id?: string; - sessionToken: string; - expires: Date | string; - }; + id?: string + sessionToken: string + expires: Date | string + } - export type PostCreateManyCreatedByInput = { - id?: number; - name: string; - createdAt?: Date | string; - updatedAt?: Date | string; - }; + export type ShopCreateManyUserInput = { + id: number + label: string + } + + export type CartCreateManyUserInput = { + id: string + } + + export type AdressCreateManyUserInput = { + id?: string + adress: string + } export type AccountUpdateWithoutUserInput = { - id?: StringFieldUpdateOperationsInput | string; - type?: StringFieldUpdateOperationsInput | string; - provider?: StringFieldUpdateOperationsInput | string; - providerAccountId?: StringFieldUpdateOperationsInput | string; - refresh_token?: NullableStringFieldUpdateOperationsInput | string | null; - access_token?: NullableStringFieldUpdateOperationsInput | string | null; - expires_at?: NullableIntFieldUpdateOperationsInput | number | null; - token_type?: NullableStringFieldUpdateOperationsInput | string | null; - scope?: NullableStringFieldUpdateOperationsInput | string | null; - id_token?: NullableStringFieldUpdateOperationsInput | string | null; - session_state?: NullableStringFieldUpdateOperationsInput | string | null; - refresh_token_expires_in?: - | NullableIntFieldUpdateOperationsInput - | number - | null; - }; + id?: StringFieldUpdateOperationsInput | string + type?: StringFieldUpdateOperationsInput | string + provider?: StringFieldUpdateOperationsInput | string + providerAccountId?: StringFieldUpdateOperationsInput | string + refresh_token?: NullableStringFieldUpdateOperationsInput | string | null + access_token?: NullableStringFieldUpdateOperationsInput | string | null + expires_at?: NullableIntFieldUpdateOperationsInput | number | null + token_type?: NullableStringFieldUpdateOperationsInput | string | null + scope?: NullableStringFieldUpdateOperationsInput | string | null + id_token?: NullableStringFieldUpdateOperationsInput | string | null + session_state?: NullableStringFieldUpdateOperationsInput | string | null + refresh_token_expires_in?: NullableIntFieldUpdateOperationsInput | number | null + } export type AccountUncheckedUpdateWithoutUserInput = { - id?: StringFieldUpdateOperationsInput | string; - type?: StringFieldUpdateOperationsInput | string; - provider?: StringFieldUpdateOperationsInput | string; - providerAccountId?: StringFieldUpdateOperationsInput | string; - refresh_token?: NullableStringFieldUpdateOperationsInput | string | null; - access_token?: NullableStringFieldUpdateOperationsInput | string | null; - expires_at?: NullableIntFieldUpdateOperationsInput | number | null; - token_type?: NullableStringFieldUpdateOperationsInput | string | null; - scope?: NullableStringFieldUpdateOperationsInput | string | null; - id_token?: NullableStringFieldUpdateOperationsInput | string | null; - session_state?: NullableStringFieldUpdateOperationsInput | string | null; - refresh_token_expires_in?: - | NullableIntFieldUpdateOperationsInput - | number - | null; - }; + id?: StringFieldUpdateOperationsInput | string + type?: StringFieldUpdateOperationsInput | string + provider?: StringFieldUpdateOperationsInput | string + providerAccountId?: StringFieldUpdateOperationsInput | string + refresh_token?: NullableStringFieldUpdateOperationsInput | string | null + access_token?: NullableStringFieldUpdateOperationsInput | string | null + expires_at?: NullableIntFieldUpdateOperationsInput | number | null + token_type?: NullableStringFieldUpdateOperationsInput | string | null + scope?: NullableStringFieldUpdateOperationsInput | string | null + id_token?: NullableStringFieldUpdateOperationsInput | string | null + session_state?: NullableStringFieldUpdateOperationsInput | string | null + refresh_token_expires_in?: NullableIntFieldUpdateOperationsInput | number | null + } export type AccountUncheckedUpdateManyWithoutUserInput = { - id?: StringFieldUpdateOperationsInput | string; - type?: StringFieldUpdateOperationsInput | string; - provider?: StringFieldUpdateOperationsInput | string; - providerAccountId?: StringFieldUpdateOperationsInput | string; - refresh_token?: NullableStringFieldUpdateOperationsInput | string | null; - access_token?: NullableStringFieldUpdateOperationsInput | string | null; - expires_at?: NullableIntFieldUpdateOperationsInput | number | null; - token_type?: NullableStringFieldUpdateOperationsInput | string | null; - scope?: NullableStringFieldUpdateOperationsInput | string | null; - id_token?: NullableStringFieldUpdateOperationsInput | string | null; - session_state?: NullableStringFieldUpdateOperationsInput | string | null; - refresh_token_expires_in?: - | NullableIntFieldUpdateOperationsInput - | number - | null; - }; + id?: StringFieldUpdateOperationsInput | string + type?: StringFieldUpdateOperationsInput | string + provider?: StringFieldUpdateOperationsInput | string + providerAccountId?: StringFieldUpdateOperationsInput | string + refresh_token?: NullableStringFieldUpdateOperationsInput | string | null + access_token?: NullableStringFieldUpdateOperationsInput | string | null + expires_at?: NullableIntFieldUpdateOperationsInput | number | null + token_type?: NullableStringFieldUpdateOperationsInput | string | null + scope?: NullableStringFieldUpdateOperationsInput | string | null + id_token?: NullableStringFieldUpdateOperationsInput | string | null + session_state?: NullableStringFieldUpdateOperationsInput | string | null + refresh_token_expires_in?: NullableIntFieldUpdateOperationsInput | number | null + } export type SessionUpdateWithoutUserInput = { - id?: StringFieldUpdateOperationsInput | string; - sessionToken?: StringFieldUpdateOperationsInput | string; - expires?: DateTimeFieldUpdateOperationsInput | Date | string; - }; + id?: StringFieldUpdateOperationsInput | string + sessionToken?: StringFieldUpdateOperationsInput | string + expires?: DateTimeFieldUpdateOperationsInput | Date | string + } export type SessionUncheckedUpdateWithoutUserInput = { - id?: StringFieldUpdateOperationsInput | string; - sessionToken?: StringFieldUpdateOperationsInput | string; - expires?: DateTimeFieldUpdateOperationsInput | Date | string; - }; + id?: StringFieldUpdateOperationsInput | string + sessionToken?: StringFieldUpdateOperationsInput | string + expires?: DateTimeFieldUpdateOperationsInput | Date | string + } export type SessionUncheckedUpdateManyWithoutUserInput = { - id?: StringFieldUpdateOperationsInput | string; - sessionToken?: StringFieldUpdateOperationsInput | string; - expires?: DateTimeFieldUpdateOperationsInput | Date | string; - }; + id?: StringFieldUpdateOperationsInput | string + sessionToken?: StringFieldUpdateOperationsInput | string + expires?: DateTimeFieldUpdateOperationsInput | Date | string + } - export type PostUpdateWithoutCreatedByInput = { - name?: StringFieldUpdateOperationsInput | string; - createdAt?: DateTimeFieldUpdateOperationsInput | Date | string; - updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string; - }; + export type ShopUpdateWithoutUserInput = { + id?: IntFieldUpdateOperationsInput | number + label?: StringFieldUpdateOperationsInput | string + items?: ItemUpdateManyWithoutShopNestedInput + sellables?: SellableUpdateManyWithoutShopNestedInput + } + + export type ShopUncheckedUpdateWithoutUserInput = { + id?: IntFieldUpdateOperationsInput | number + label?: StringFieldUpdateOperationsInput | string + items?: ItemUncheckedUpdateManyWithoutShopNestedInput + sellables?: SellableUncheckedUpdateManyWithoutShopNestedInput + } + + export type ShopUncheckedUpdateManyWithoutUserInput = { + id?: IntFieldUpdateOperationsInput | number + label?: StringFieldUpdateOperationsInput | string + } + + export type CartUpdateWithoutUserInput = { + id?: StringFieldUpdateOperationsInput | string + cartItems?: CartItemUpdateManyWithoutCartNestedInput + } + + export type CartUncheckedUpdateWithoutUserInput = { + id?: StringFieldUpdateOperationsInput | string + cartItems?: CartItemUncheckedUpdateManyWithoutCartNestedInput + } + + export type CartUncheckedUpdateManyWithoutUserInput = { + id?: StringFieldUpdateOperationsInput | string + } + + export type AdressUpdateWithoutUserInput = { + id?: StringFieldUpdateOperationsInput | string + adress?: StringFieldUpdateOperationsInput | string + } + + export type AdressUncheckedUpdateWithoutUserInput = { + id?: StringFieldUpdateOperationsInput | string + adress?: StringFieldUpdateOperationsInput | string + } + + export type AdressUncheckedUpdateManyWithoutUserInput = { + id?: StringFieldUpdateOperationsInput | string + adress?: StringFieldUpdateOperationsInput | string + } + + export type ItemCreateManyShopInput = { + item_name: string + stock: number + } + + export type SellableCreateManyShopInput = { + id?: string + item_name: string + amount: number + price: number + enabled?: boolean + } + + export type ItemUpdateWithoutShopInput = { + item_name?: StringFieldUpdateOperationsInput | string + stock?: IntFieldUpdateOperationsInput | number + sellables?: SellableUpdateManyWithoutItemNestedInput + } + + export type ItemUncheckedUpdateWithoutShopInput = { + item_name?: StringFieldUpdateOperationsInput | string + stock?: IntFieldUpdateOperationsInput | number + sellables?: SellableUncheckedUpdateManyWithoutItemNestedInput + } + + export type ItemUncheckedUpdateManyWithoutShopInput = { + item_name?: StringFieldUpdateOperationsInput | string + stock?: IntFieldUpdateOperationsInput | number + } + + export type SellableUpdateWithoutShopInput = { + id?: StringFieldUpdateOperationsInput | string + amount?: IntFieldUpdateOperationsInput | number + price?: FloatFieldUpdateOperationsInput | number + enabled?: BoolFieldUpdateOperationsInput | boolean + item?: ItemUpdateOneRequiredWithoutSellablesNestedInput + cartItems?: CartItemUpdateManyWithoutSellableNestedInput + } + + export type SellableUncheckedUpdateWithoutShopInput = { + id?: StringFieldUpdateOperationsInput | string + item_name?: StringFieldUpdateOperationsInput | string + amount?: IntFieldUpdateOperationsInput | number + price?: FloatFieldUpdateOperationsInput | number + enabled?: BoolFieldUpdateOperationsInput | boolean + cartItems?: CartItemUncheckedUpdateManyWithoutSellableNestedInput + } + + export type SellableUncheckedUpdateManyWithoutShopInput = { + id?: StringFieldUpdateOperationsInput | string + item_name?: StringFieldUpdateOperationsInput | string + amount?: IntFieldUpdateOperationsInput | number + price?: FloatFieldUpdateOperationsInput | number + enabled?: BoolFieldUpdateOperationsInput | boolean + } + + export type SellableCreateManyItemInput = { + id?: string + amount: number + price: number + shopId: number + enabled?: boolean + } + + export type SellableUpdateWithoutItemInput = { + id?: StringFieldUpdateOperationsInput | string + amount?: IntFieldUpdateOperationsInput | number + price?: FloatFieldUpdateOperationsInput | number + enabled?: BoolFieldUpdateOperationsInput | boolean + shop?: ShopUpdateOneRequiredWithoutSellablesNestedInput + cartItems?: CartItemUpdateManyWithoutSellableNestedInput + } + + export type SellableUncheckedUpdateWithoutItemInput = { + id?: StringFieldUpdateOperationsInput | string + amount?: IntFieldUpdateOperationsInput | number + price?: FloatFieldUpdateOperationsInput | number + shopId?: IntFieldUpdateOperationsInput | number + enabled?: BoolFieldUpdateOperationsInput | boolean + cartItems?: CartItemUncheckedUpdateManyWithoutSellableNestedInput + } + + export type SellableUncheckedUpdateManyWithoutItemInput = { + id?: StringFieldUpdateOperationsInput | string + amount?: IntFieldUpdateOperationsInput | number + price?: FloatFieldUpdateOperationsInput | number + shopId?: IntFieldUpdateOperationsInput | number + enabled?: BoolFieldUpdateOperationsInput | boolean + } + + export type CartItemCreateManySellableInput = { + quantity: number + cartId: string + } + + export type CartItemUpdateWithoutSellableInput = { + quantity?: IntFieldUpdateOperationsInput | number + cart?: CartUpdateOneRequiredWithoutCartItemsNestedInput + } + + export type CartItemUncheckedUpdateWithoutSellableInput = { + quantity?: IntFieldUpdateOperationsInput | number + cartId?: StringFieldUpdateOperationsInput | string + } + + export type CartItemUncheckedUpdateManyWithoutSellableInput = { + quantity?: IntFieldUpdateOperationsInput | number + cartId?: StringFieldUpdateOperationsInput | string + } + + export type CartItemCreateManyCartInput = { + itemId: string + quantity: number + } + + export type CartItemUpdateWithoutCartInput = { + quantity?: IntFieldUpdateOperationsInput | number + sellable?: SellableUpdateOneRequiredWithoutCartItemsNestedInput + } + + export type CartItemUncheckedUpdateWithoutCartInput = { + itemId?: StringFieldUpdateOperationsInput | string + quantity?: IntFieldUpdateOperationsInput | number + } + + export type CartItemUncheckedUpdateManyWithoutCartInput = { + itemId?: StringFieldUpdateOperationsInput | string + quantity?: IntFieldUpdateOperationsInput | number + } - export type PostUncheckedUpdateWithoutCreatedByInput = { - id?: IntFieldUpdateOperationsInput | number; - name?: StringFieldUpdateOperationsInput | string; - createdAt?: DateTimeFieldUpdateOperationsInput | Date | string; - updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string; - }; - export type PostUncheckedUpdateManyWithoutCreatedByInput = { - id?: IntFieldUpdateOperationsInput | number; - name?: StringFieldUpdateOperationsInput | string; - createdAt?: DateTimeFieldUpdateOperationsInput | Date | string; - updatedAt?: DateTimeFieldUpdateOperationsInput | Date | string; - }; /** * Batch Payload for updateMany & deleteMany & createMany */ export type BatchPayload = { - count: number; - }; + count: number + } /** * DMMF */ - export const dmmf: runtime.BaseDMMF; -} + export const dmmf: runtime.BaseDMMF +} \ No newline at end of file diff --git a/generated/prisma/index.js b/generated/prisma/index.js index ec0c4e00..53ebb4f6 100644 --- a/generated/prisma/index.js +++ b/generated/prisma/index.js @@ -1,3 +1,4 @@ + /* !!! This is code generated by Prisma. Do not edit directly. !!! /* eslint-disable */ // biome-ignore-all lint: generated file @@ -26,12 +27,13 @@ const { Public, getRuntime, createParam, -} = require("./runtime/library.js"); +} = require('./runtime/library.js') -const Prisma = {}; -exports.Prisma = Prisma; -exports.$Enums = {}; +const Prisma = {} + +exports.Prisma = Prisma +exports.$Enums = {} /** * Prisma Client JS version: 6.19.2 @@ -39,253 +41,309 @@ exports.$Enums = {}; */ Prisma.prismaVersion = { client: "6.19.2", - engine: "c2990dca591cba766e3b7ef5d9e8a84796e47ab7", -}; + engine: "c2990dca591cba766e3b7ef5d9e8a84796e47ab7" +} Prisma.PrismaClientKnownRequestError = PrismaClientKnownRequestError; -Prisma.PrismaClientUnknownRequestError = PrismaClientUnknownRequestError; -Prisma.PrismaClientRustPanicError = PrismaClientRustPanicError; -Prisma.PrismaClientInitializationError = PrismaClientInitializationError; -Prisma.PrismaClientValidationError = PrismaClientValidationError; -Prisma.Decimal = Decimal; +Prisma.PrismaClientUnknownRequestError = PrismaClientUnknownRequestError +Prisma.PrismaClientRustPanicError = PrismaClientRustPanicError +Prisma.PrismaClientInitializationError = PrismaClientInitializationError +Prisma.PrismaClientValidationError = PrismaClientValidationError +Prisma.Decimal = Decimal /** * Re-export of sql-template-tag */ -Prisma.sql = sqltag; -Prisma.empty = empty; -Prisma.join = join; -Prisma.raw = raw; -Prisma.validator = Public.validator; +Prisma.sql = sqltag +Prisma.empty = empty +Prisma.join = join +Prisma.raw = raw +Prisma.validator = Public.validator /** - * Extensions - */ -Prisma.getExtensionContext = Extensions.getExtensionContext; -Prisma.defineExtension = Extensions.defineExtension; +* Extensions +*/ +Prisma.getExtensionContext = Extensions.getExtensionContext +Prisma.defineExtension = Extensions.defineExtension /** * Shorthand utilities for JSON filtering */ -Prisma.DbNull = objectEnumValues.instances.DbNull; -Prisma.JsonNull = objectEnumValues.instances.JsonNull; -Prisma.AnyNull = objectEnumValues.instances.AnyNull; +Prisma.DbNull = objectEnumValues.instances.DbNull +Prisma.JsonNull = objectEnumValues.instances.JsonNull +Prisma.AnyNull = objectEnumValues.instances.AnyNull Prisma.NullTypes = { DbNull: objectEnumValues.classes.DbNull, JsonNull: objectEnumValues.classes.JsonNull, - AnyNull: objectEnumValues.classes.AnyNull, -}; + AnyNull: objectEnumValues.classes.AnyNull +} -const path = require("path"); + + + + const path = require('path') /** * Enums */ exports.Prisma.TransactionIsolationLevel = makeStrictEnum({ - ReadUncommitted: "ReadUncommitted", - ReadCommitted: "ReadCommitted", - RepeatableRead: "RepeatableRead", - Serializable: "Serializable", + ReadUncommitted: 'ReadUncommitted', + ReadCommitted: 'ReadCommitted', + RepeatableRead: 'RepeatableRead', + Serializable: 'Serializable' }); -exports.Prisma.PostScalarFieldEnum = { - id: "id", - name: "name", - createdAt: "createdAt", - updatedAt: "updatedAt", - createdById: "createdById", -}; - exports.Prisma.AccountScalarFieldEnum = { - id: "id", - userId: "userId", - type: "type", - provider: "provider", - providerAccountId: "providerAccountId", - refresh_token: "refresh_token", - access_token: "access_token", - expires_at: "expires_at", - token_type: "token_type", - scope: "scope", - id_token: "id_token", - session_state: "session_state", - refresh_token_expires_in: "refresh_token_expires_in", + id: 'id', + userId: 'userId', + type: 'type', + provider: 'provider', + providerAccountId: 'providerAccountId', + refresh_token: 'refresh_token', + access_token: 'access_token', + expires_at: 'expires_at', + token_type: 'token_type', + scope: 'scope', + id_token: 'id_token', + session_state: 'session_state', + refresh_token_expires_in: 'refresh_token_expires_in' }; exports.Prisma.SessionScalarFieldEnum = { - id: "id", - sessionToken: "sessionToken", - userId: "userId", - expires: "expires", + id: 'id', + sessionToken: 'sessionToken', + userId: 'userId', + expires: 'expires' }; exports.Prisma.UserScalarFieldEnum = { - id: "id", - name: "name", - email: "email", - emailVerified: "emailVerified", - image: "image", + id: 'id', + name: 'name', + email: 'email', + emailVerified: 'emailVerified', + image: 'image', + balance: 'balance' }; exports.Prisma.VerificationTokenScalarFieldEnum = { - identifier: "identifier", - token: "token", - expires: "expires", + identifier: 'identifier', + token: 'token', + expires: 'expires' +}; + +exports.Prisma.ShopScalarFieldEnum = { + id: 'id', + userId: 'userId', + label: 'label' +}; + +exports.Prisma.ItemScalarFieldEnum = { + item_name: 'item_name', + stock: 'stock', + shopId: 'shopId' +}; + +exports.Prisma.SellableScalarFieldEnum = { + id: 'id', + item_name: 'item_name', + amount: 'amount', + price: 'price', + shopId: 'shopId', + enabled: 'enabled' +}; + +exports.Prisma.CartScalarFieldEnum = { + id: 'id', + userId: 'userId' +}; + +exports.Prisma.CartItemScalarFieldEnum = { + itemId: 'itemId', + quantity: 'quantity', + cartId: 'cartId' +}; + +exports.Prisma.AdressScalarFieldEnum = { + id: 'id', + userId: 'userId', + adress: 'adress' }; exports.Prisma.SortOrder = { - asc: "asc", - desc: "desc", -}; - -exports.Prisma.PostOrderByRelevanceFieldEnum = { - name: "name", - createdById: "createdById", + asc: 'asc', + desc: 'desc' }; exports.Prisma.NullsOrder = { - first: "first", - last: "last", + first: 'first', + last: 'last' }; exports.Prisma.AccountOrderByRelevanceFieldEnum = { - id: "id", - userId: "userId", - type: "type", - provider: "provider", - providerAccountId: "providerAccountId", - refresh_token: "refresh_token", - access_token: "access_token", - token_type: "token_type", - scope: "scope", - id_token: "id_token", - session_state: "session_state", + id: 'id', + userId: 'userId', + type: 'type', + provider: 'provider', + providerAccountId: 'providerAccountId', + refresh_token: 'refresh_token', + access_token: 'access_token', + token_type: 'token_type', + scope: 'scope', + id_token: 'id_token', + session_state: 'session_state' }; exports.Prisma.SessionOrderByRelevanceFieldEnum = { - id: "id", - sessionToken: "sessionToken", - userId: "userId", + id: 'id', + sessionToken: 'sessionToken', + userId: 'userId' }; exports.Prisma.UserOrderByRelevanceFieldEnum = { - id: "id", - name: "name", - email: "email", - image: "image", + id: 'id', + name: 'name', + email: 'email', + image: 'image' }; exports.Prisma.VerificationTokenOrderByRelevanceFieldEnum = { - identifier: "identifier", - token: "token", + identifier: 'identifier', + token: 'token' }; +exports.Prisma.ShopOrderByRelevanceFieldEnum = { + userId: 'userId', + label: 'label' +}; + +exports.Prisma.ItemOrderByRelevanceFieldEnum = { + item_name: 'item_name' +}; + +exports.Prisma.SellableOrderByRelevanceFieldEnum = { + id: 'id', + item_name: 'item_name' +}; + +exports.Prisma.CartOrderByRelevanceFieldEnum = { + id: 'id', + userId: 'userId' +}; + +exports.Prisma.CartItemOrderByRelevanceFieldEnum = { + itemId: 'itemId', + cartId: 'cartId' +}; + +exports.Prisma.AdressOrderByRelevanceFieldEnum = { + id: 'id', + userId: 'userId', + adress: 'adress' +}; + + exports.Prisma.ModelName = { - Post: "Post", - Account: "Account", - Session: "Session", - User: "User", - VerificationToken: "VerificationToken", + Account: 'Account', + Session: 'Session', + User: 'User', + VerificationToken: 'VerificationToken', + Shop: 'Shop', + Item: 'Item', + Sellable: 'Sellable', + Cart: 'Cart', + CartItem: 'CartItem', + Adress: 'Adress' }; /** * Create the Client */ const config = { - generator: { - name: "client", - provider: { - fromEnvVar: null, - value: "prisma-client-js", + "generator": { + "name": "client", + "provider": { + "fromEnvVar": null, + "value": "prisma-client-js" }, - output: { - value: - "/var/home/zaremate/Documents/cc-create-shop/cc-create-shop/generated/prisma", - fromEnvVar: null, + "output": { + "value": "/var/home/zaremate/Documents/cc-create-shop/generated/prisma", + "fromEnvVar": null }, - config: { - engineType: "library", + "config": { + "engineType": "library" }, - binaryTargets: [ + "binaryTargets": [ { - fromEnvVar: null, - value: "rhel-openssl-3.0.x", - native: true, - }, + "fromEnvVar": null, + "value": "rhel-openssl-3.0.x", + "native": true + } ], - previewFeatures: [], - sourceFilePath: - "/var/home/zaremate/Documents/cc-create-shop/cc-create-shop/prisma/schema.prisma", - isCustomOutput: true, + "previewFeatures": [], + "sourceFilePath": "/var/home/zaremate/Documents/cc-create-shop/prisma/schema.prisma", + "isCustomOutput": true }, - relativeEnvPaths: { - rootEnvPath: null, - schemaEnvPath: "../../.env", + "relativeEnvPaths": { + "rootEnvPath": null, + "schemaEnvPath": "../../.env" }, - relativePath: "../../prisma", - clientVersion: "6.19.2", - engineVersion: "c2990dca591cba766e3b7ef5d9e8a84796e47ab7", - datasourceNames: ["db"], - activeProvider: "mysql", - postinstall: false, - inlineDatasources: { - db: { - url: { - fromEnvVar: "DATABASE_URL", - value: null, - }, - }, + "relativePath": "../../prisma", + "clientVersion": "6.19.2", + "engineVersion": "c2990dca591cba766e3b7ef5d9e8a84796e47ab7", + "datasourceNames": [ + "db" + ], + "activeProvider": "mysql", + "inlineDatasources": { + "db": { + "url": { + "fromEnvVar": "DATABASE_URL", + "value": null + } + } }, - inlineSchema: - '// This is your Prisma schema file,\n// learn more about it in the docs: https://pris.ly/d/prisma-schema\n\ngenerator client {\n provider = "prisma-client-js"\n output = "../generated/prisma"\n}\n\ndatasource db {\n provider = "mysql"\n // NOTE: When using mysql or sqlserver, uncomment the @db.Text annotations in model Account below\n // Further reading:\n // https://next-auth.js.org/adapters/prisma#create-the-prisma-schema\n // https://www.prisma.io/docs/reference/api-reference/prisma-schema-reference#string\n url = env("DATABASE_URL")\n}\n\nmodel Post {\n id Int @id @default(autoincrement())\n name String\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n createdBy User @relation(fields: [createdById], references: [id])\n createdById String\n\n @@index([name])\n}\n\n// Necessary for Next auth\nmodel Account {\n id String @id @default(cuid())\n userId String\n type String\n provider String\n providerAccountId String\n refresh_token String? @db.Text\n access_token String? // @db.Text\n expires_at Int?\n token_type String?\n scope String?\n id_token String? // @db.Text\n session_state String?\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n refresh_token_expires_in Int?\n\n @@unique([provider, providerAccountId])\n}\n\nmodel Session {\n id String @id @default(cuid())\n sessionToken String @unique\n userId String\n expires DateTime\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n}\n\nmodel User {\n id String @id @default(cuid())\n name String?\n email String? @unique\n emailVerified DateTime?\n image String?\n accounts Account[]\n sessions Session[]\n posts Post[]\n}\n\nmodel VerificationToken {\n identifier String\n token String @unique\n expires DateTime\n\n @@unique([identifier, token])\n}\n', - inlineSchemaHash: - "c08474639a944941f1c88b34cba4f0bee4e979c206a6c528fbeed6fac72671f9", - copyEngine: true, -}; - -const fs = require("fs"); - -config.dirname = __dirname; -if (!fs.existsSync(path.join(__dirname, "schema.prisma"))) { - const alternativePaths = ["generated/prisma", "prisma"]; - - const alternativePath = - alternativePaths.find((altPath) => { - return fs.existsSync(path.join(process.cwd(), altPath, "schema.prisma")); - }) ?? alternativePaths[0]; - - config.dirname = path.join(process.cwd(), alternativePath); - config.isBundled = true; + "inlineSchema": "// This is your Prisma schema file,\n// learn more about it in the docs: https://pris.ly/d/prisma-schema\n\ngenerator client {\n provider = \"prisma-client-js\"\n output = \"../generated/prisma\"\n}\n\ndatasource db {\n provider = \"mysql\"\n // NOTE: When using mysql or sqlserver, uncomment the @db.Text annotations in model Account below\n // Further reading:\n // https://next-auth.js.org/adapters/prisma#create-the-prisma-schema\n // https://www.prisma.io/docs/reference/api-reference/prisma-schema-reference#string\n url = env(\"DATABASE_URL\")\n}\n\n// Necessary for Next auth\nmodel Account {\n id String @id @default(cuid())\n userId String\n type String\n provider String\n providerAccountId String\n refresh_token String? @db.Text\n access_token String? // @db.Text\n expires_at Int?\n token_type String?\n scope String?\n id_token String? // @db.Text\n session_state String?\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n refresh_token_expires_in Int?\n\n @@unique([provider, providerAccountId])\n}\n\nmodel Session {\n id String @id @default(cuid())\n sessionToken String @unique\n userId String\n expires DateTime\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n}\n\nmodel User {\n id String @id @default(cuid())\n name String?\n email String? @unique\n emailVerified DateTime?\n image String?\n balance Float @default(1000)\n\n accounts Account[]\n sessions Session[]\n shops Shop[]\n carts Cart[]\n adresses Adress[]\n}\n\nmodel VerificationToken {\n identifier String\n token String @unique\n expires DateTime\n\n @@unique([identifier, token])\n}\n\n//////////////////////\n// SHOP\n//////////////////////\n\nmodel Shop {\n id Int @id\n userId String\n label String\n\n user User @relation(fields: [userId], references: [id], onDelete: Cascade, onUpdate: Cascade)\n items Item[]\n sellables Sellable[]\n}\n\nmodel Item {\n item_name String @id\n stock Int\n shopId Int\n\n shop Shop @relation(fields: [shopId], references: [id], onDelete: Cascade, onUpdate: Cascade)\n sellables Sellable[]\n}\n\nmodel Sellable {\n id String @id @default(cuid())\n item_name String\n amount Int\n price Float\n shopId Int\n enabled Boolean @default(true)\n\n shop Shop @relation(fields: [shopId], references: [id], onDelete: Cascade, onUpdate: Cascade)\n item Item @relation(fields: [item_name], references: [item_name], onDelete: Cascade, onUpdate: Cascade)\n cartItems CartItem[]\n}\n\n//////////////////////\n// CART\n//////////////////////\n\nmodel Cart {\n id String @id\n userId String\n\n user User @relation(fields: [userId], references: [id], onDelete: Cascade, onUpdate: Cascade)\n cartItems CartItem[]\n}\n\nmodel CartItem {\n itemId String @id\n quantity Int\n cartId String\n\n cart Cart @relation(fields: [cartId], references: [id], onDelete: Cascade, onUpdate: Cascade)\n sellable Sellable @relation(fields: [itemId], references: [id], onDelete: Cascade, onUpdate: Cascade)\n}\n\n//////////////////////\n// ADDRESS\n//////////////////////\n\nmodel Adress {\n id String @id @default(cuid())\n userId String\n adress String\n\n user User @relation(fields: [userId], references: [id], onDelete: Cascade, onUpdate: Cascade)\n}\n", + "inlineSchemaHash": "c329b0b4b5e81ae3d0db879cefdad70ba729b53e86e9bbf3275b8a13ef241636", + "copyEngine": true } -config.runtimeDataModel = JSON.parse( - '{"models":{"Post":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":{"name":"autoincrement","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"name","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"createdBy","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"User","nativeType":null,"relationName":"PostToUser","relationFromFields":["createdById"],"relationToFields":["id"],"isGenerated":false,"isUpdatedAt":false},{"name":"createdById","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"Account":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"userId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"type","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"provider","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"providerAccountId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"refresh_token","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":["Text",[]],"isGenerated":false,"isUpdatedAt":false},{"name":"access_token","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"expires_at","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"token_type","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"scope","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"id_token","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"session_state","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"user","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"User","nativeType":null,"relationName":"AccountToUser","relationFromFields":["userId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"refresh_token_expires_in","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[["provider","providerAccountId"]],"uniqueIndexes":[{"name":null,"fields":["provider","providerAccountId"]}],"isGenerated":false},"Session":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"sessionToken","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"userId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"expires","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"user","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"User","nativeType":null,"relationName":"SessionToUser","relationFromFields":["userId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"User":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"name","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"email","kind":"scalar","isList":false,"isRequired":false,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"emailVerified","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"image","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"accounts","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Account","nativeType":null,"relationName":"AccountToUser","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"sessions","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Session","nativeType":null,"relationName":"SessionToUser","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"posts","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Post","nativeType":null,"relationName":"PostToUser","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"VerificationToken":{"dbName":null,"schema":null,"fields":[{"name":"identifier","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"token","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"expires","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[["identifier","token"]],"uniqueIndexes":[{"name":null,"fields":["identifier","token"]}],"isGenerated":false}},"enums":{},"types":{}}', -); -defineDmmfProperty(exports.Prisma, config.runtimeDataModel); -config.engineWasm = undefined; -config.compilerWasm = undefined; +const fs = require('fs') -const { warnEnvConflicts } = require("./runtime/library.js"); +config.dirname = __dirname +if (!fs.existsSync(path.join(__dirname, 'schema.prisma'))) { + const alternativePaths = [ + "generated/prisma", + "prisma", + ] + + const alternativePath = alternativePaths.find((altPath) => { + return fs.existsSync(path.join(process.cwd(), altPath, 'schema.prisma')) + }) ?? alternativePaths[0] + + config.dirname = path.join(process.cwd(), alternativePath) + config.isBundled = true +} + +config.runtimeDataModel = JSON.parse("{\"models\":{\"Account\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"String\",\"nativeType\":null,\"default\":{\"name\":\"cuid\",\"args\":[1]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"userId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"type\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"provider\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"providerAccountId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"refresh_token\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"Text\",[]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"access_token\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"expires_at\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"token_type\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"scope\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"id_token\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"session_state\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"User\",\"nativeType\":null,\"relationName\":\"AccountToUser\",\"relationFromFields\":[\"userId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"refresh_token_expires_in\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[[\"provider\",\"providerAccountId\"]],\"uniqueIndexes\":[{\"name\":null,\"fields\":[\"provider\",\"providerAccountId\"]}],\"isGenerated\":false},\"Session\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"String\",\"nativeType\":null,\"default\":{\"name\":\"cuid\",\"args\":[1]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"sessionToken\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":true,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"userId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"expires\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"User\",\"nativeType\":null,\"relationName\":\"SessionToUser\",\"relationFromFields\":[\"userId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"User\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"String\",\"nativeType\":null,\"default\":{\"name\":\"cuid\",\"args\":[1]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"email\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":true,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"emailVerified\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"image\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"balance\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Float\",\"nativeType\":null,\"default\":1000,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"accounts\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Account\",\"nativeType\":null,\"relationName\":\"AccountToUser\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"sessions\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Session\",\"nativeType\":null,\"relationName\":\"SessionToUser\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"shops\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Shop\",\"nativeType\":null,\"relationName\":\"ShopToUser\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"carts\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Cart\",\"nativeType\":null,\"relationName\":\"CartToUser\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"adresses\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Adress\",\"nativeType\":null,\"relationName\":\"AdressToUser\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"VerificationToken\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"identifier\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"token\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":true,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"expires\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[[\"identifier\",\"token\"]],\"uniqueIndexes\":[{\"name\":null,\"fields\":[\"identifier\",\"token\"]}],\"isGenerated\":false},\"Shop\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"userId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"label\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"User\",\"nativeType\":null,\"relationName\":\"ShopToUser\",\"relationFromFields\":[\"userId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"relationOnUpdate\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"items\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Item\",\"nativeType\":null,\"relationName\":\"ItemToShop\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"sellables\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Sellable\",\"nativeType\":null,\"relationName\":\"SellableToShop\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"Item\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"item_name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"stock\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"shopId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"shop\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Shop\",\"nativeType\":null,\"relationName\":\"ItemToShop\",\"relationFromFields\":[\"shopId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"relationOnUpdate\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"sellables\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Sellable\",\"nativeType\":null,\"relationName\":\"ItemToSellable\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"Sellable\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"String\",\"nativeType\":null,\"default\":{\"name\":\"cuid\",\"args\":[1]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"item_name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"amount\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"price\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"shopId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"enabled\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Boolean\",\"nativeType\":null,\"default\":true,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"shop\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Shop\",\"nativeType\":null,\"relationName\":\"SellableToShop\",\"relationFromFields\":[\"shopId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"relationOnUpdate\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"item\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Item\",\"nativeType\":null,\"relationName\":\"ItemToSellable\",\"relationFromFields\":[\"item_name\"],\"relationToFields\":[\"item_name\"],\"relationOnDelete\":\"Cascade\",\"relationOnUpdate\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"cartItems\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"CartItem\",\"nativeType\":null,\"relationName\":\"CartItemToSellable\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"Cart\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"userId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"User\",\"nativeType\":null,\"relationName\":\"CartToUser\",\"relationFromFields\":[\"userId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"relationOnUpdate\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"cartItems\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"CartItem\",\"nativeType\":null,\"relationName\":\"CartToCartItem\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"CartItem\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"itemId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"quantity\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"cartId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"cart\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Cart\",\"nativeType\":null,\"relationName\":\"CartToCartItem\",\"relationFromFields\":[\"cartId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"relationOnUpdate\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"sellable\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Sellable\",\"nativeType\":null,\"relationName\":\"CartItemToSellable\",\"relationFromFields\":[\"itemId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"relationOnUpdate\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"Adress\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"String\",\"nativeType\":null,\"default\":{\"name\":\"cuid\",\"args\":[1]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"userId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"adress\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"User\",\"nativeType\":null,\"relationName\":\"AdressToUser\",\"relationFromFields\":[\"userId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"relationOnUpdate\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false}},\"enums\":{},\"types\":{}}") +defineDmmfProperty(exports.Prisma, config.runtimeDataModel) +config.engineWasm = undefined +config.compilerWasm = undefined + + +const { warnEnvConflicts } = require('./runtime/library.js') warnEnvConflicts({ - rootEnvPath: - config.relativeEnvPaths.rootEnvPath && - path.resolve(config.dirname, config.relativeEnvPaths.rootEnvPath), - schemaEnvPath: - config.relativeEnvPaths.schemaEnvPath && - path.resolve(config.dirname, config.relativeEnvPaths.schemaEnvPath), -}); + rootEnvPath: config.relativeEnvPaths.rootEnvPath && path.resolve(config.dirname, config.relativeEnvPaths.rootEnvPath), + schemaEnvPath: config.relativeEnvPaths.schemaEnvPath && path.resolve(config.dirname, config.relativeEnvPaths.schemaEnvPath) +}) -const PrismaClient = getPrismaClient(config); -exports.PrismaClient = PrismaClient; -Object.assign(exports, Prisma); +const PrismaClient = getPrismaClient(config) +exports.PrismaClient = PrismaClient +Object.assign(exports, Prisma) // file annotations for bundling tools to include these files path.join(__dirname, "libquery_engine-rhel-openssl-3.0.x.so.node"); -path.join( - process.cwd(), - "generated/prisma/libquery_engine-rhel-openssl-3.0.x.so.node", -); +path.join(process.cwd(), "generated/prisma/libquery_engine-rhel-openssl-3.0.x.so.node") // file annotations for bundling tools to include these files path.join(__dirname, "schema.prisma"); -path.join(process.cwd(), "generated/prisma/schema.prisma"); +path.join(process.cwd(), "generated/prisma/schema.prisma") diff --git a/generated/prisma/package.json b/generated/prisma/package.json index 4830e541..f975d23d 100644 --- a/generated/prisma/package.json +++ b/generated/prisma/package.json @@ -1,5 +1,5 @@ { - "name": "prisma-client-911e318997f98a7538e07274ddf89a2435e18dcb45de16b3e390038aa52a2516", + "name": "prisma-client-1d666464292a599bad3179d365e160013075f010f27e15f565fd192ad5ef967d", "main": "index.js", "types": "index.d.ts", "browser": "default.js", diff --git a/generated/prisma/query_engine_bg.js b/generated/prisma/query_engine_bg.js index 5d98fb4d..31436918 100644 --- a/generated/prisma/query_engine_bg.js +++ b/generated/prisma/query_engine_bg.js @@ -1,812 +1,2 @@ -"use strict"; -var F = Object.defineProperty; -var B = Object.getOwnPropertyDescriptor; -var R = Object.getOwnPropertyNames; -var U = Object.prototype.hasOwnProperty; -var L = (e, t) => { - for (var n in t) F(e, n, { get: t[n], enumerable: !0 }); - }, - N = (e, t, n, _) => { - if ((t && typeof t == "object") || typeof t == "function") - for (let o of R(t)) - !U.call(e, o) && - o !== n && - F(e, o, { - get: () => t[o], - enumerable: !(_ = B(t, o)) || _.enumerable, - }); - return e; - }; -var C = (e) => N(F({}, "__esModule", { value: !0 }), e); -var qt = {}; -L(qt, { - QueryEngine: () => E, - __wbg_Error_e83987f665cf5504: () => J, - __wbg_Number_bb48ca12f395cd08: () => X, - __wbg_String_8f0eb39a4a4c2f66: () => Y, - __wbg___wbindgen_bigint_get_as_i64_f3ebc5a755000afd: () => K, - __wbg___wbindgen_boolean_get_6d5a1ee65bab5f68: () => Z, - __wbg___wbindgen_debug_string_df47ffb5e35e6763: () => ee, - __wbg___wbindgen_in_bb933bd9e1b3bc0f: () => te, - __wbg___wbindgen_is_bigint_cb320707dcd35f0b: () => ne, - __wbg___wbindgen_is_function_ee8a6c5833c90377: () => re, - __wbg___wbindgen_is_object_c818261d21f283a4: () => _e, - __wbg___wbindgen_is_string_fbb76cb2940daafd: () => oe, - __wbg___wbindgen_is_undefined_2d472862bd29a478: () => ce, - __wbg___wbindgen_jsval_eq_6b13ab83478b1c50: () => ie, - __wbg___wbindgen_jsval_loose_eq_b664b38a2f582147: () => se, - __wbg___wbindgen_number_get_a20bf9b85341449d: () => ue, - __wbg___wbindgen_string_get_e4f06c90489ad01b: () => be, - __wbg___wbindgen_throw_b855445ff6a94295: () => fe, - __wbg__wbg_cb_unref_2454a539ea5790d9: () => ae, - __wbg_call_525440f72fbfc0ea: () => ge, - __wbg_call_e762c39fa8ea36bf: () => le, - __wbg_crypto_805be4ce92f1e370: () => de, - __wbg_done_2042aa2670fb1db1: () => we, - __wbg_entries_e171b586f8f6bdbf: () => pe, - __wbg_getRandomValues_f6a868620c8bab49: () => xe, - __wbg_getTime_14776bfb48a1bff9: () => ye, - __wbg_get_7bed016f185add81: () => me, - __wbg_get_ece95cf6585650d9: () => he, - __wbg_get_efcb449f58ec27c2: () => Te, - __wbg_get_with_ref_key_1dc361bd10053bfe: () => Ae, - __wbg_has_787fafc980c3ccdb: () => Se, - __wbg_instanceof_ArrayBuffer_70beb1189ca63b38: () => Fe, - __wbg_instanceof_Map_8579b5e2ab5437c7: () => Ie, - __wbg_instanceof_Promise_001fdd42afa1b7ef: () => qe, - __wbg_instanceof_Uint8Array_20c8e73002f7af98: () => ke, - __wbg_isArray_96e0af9891d0945d: () => Ee, - __wbg_isSafeInteger_d216eda7911dde36: () => Oe, - __wbg_iterator_e5822695327a3c39: () => Me, - __wbg_keys_b4d27b02ad14f4be: () => ve, - __wbg_length_69bca3cb64fc8748: () => De, - __wbg_length_cdd215e10d9dd507: () => je, - __wbg_msCrypto_2ac4d17c4748234a: () => Be, - __wbg_new_0_f9740686d739025c: () => Re, - __wbg_new_1acc0b6eea89d040: () => Ue, - __wbg_new_3c3d849046688a66: () => Le, - __wbg_new_5a79be3ab53b8aa5: () => Ne, - __wbg_new_68651c719dcda04e: () => Ce, - __wbg_new_e17d9f43105b08be: () => $e, - __wbg_new_from_slice_92f4d78ca282a2d2: () => Ve, - __wbg_new_no_args_ee98eee5275000a4: () => We, - __wbg_new_with_length_01aa0dc35aa13543: () => ze, - __wbg_next_020810e0ae8ebcb0: () => Pe, - __wbg_next_2c826fe5dfec6b6a: () => Ge, - __wbg_node_ecc8306b9857f33d: () => Qe, - __wbg_now_793306c526e2e3b6: () => He, - __wbg_now_7fd00a794a07d388: () => Je, - __wbg_now_b3f7572f6ef3d3a9: () => Xe, - __wbg_process_5cff2739921be718: () => Ye, - __wbg_prototypesetcall_2a6620b6922694b2: () => Ke, - __wbg_push_df81a39d04db858c: () => Ze, - __wbg_queueMicrotask_5a8a9131f3f0b37b: () => et, - __wbg_queueMicrotask_6d79674585219521: () => tt, - __wbg_randomFillSync_d3c85af7e31cf1f8: () => nt, - __wbg_require_0c566c6f2eef6c79: () => rt, - __wbg_resolve_caf97c30b83f7053: () => _t, - __wbg_setTimeout_5d6a1d4fc51ea450: () => ot, - __wbg_set_3f1d0b984ed272ed: () => ct, - __wbg_set_907fb406c34a251d: () => it, - __wbg_set_c213c871859d6500: () => st, - __wbg_set_c2abbebe8b9ebee1: () => ut, - __wbg_set_wasm: () => $, - __wbg_static_accessor_GLOBAL_89e1d9ac6a1b250e: () => bt, - __wbg_static_accessor_GLOBAL_THIS_8b530f326a9e48ac: () => ft, - __wbg_static_accessor_SELF_6fdf4b64710cc91b: () => at, - __wbg_static_accessor_WINDOW_b45bfc5a37f6cfa2: () => gt, - __wbg_subarray_480600f3d6a9f26c: () => lt, - __wbg_then_4f46f6544e6b4a28: () => dt, - __wbg_then_70d05cf780a18d77: () => wt, - __wbg_valueOf_9eee4828c11458ca: () => pt, - __wbg_value_692627309814bb8c: () => xt, - __wbg_versions_a8e5a362e1f16442: () => yt, - __wbindgen_cast_022f8b2bf9dce4aa: () => mt, - __wbindgen_cast_2241b6af4c4b2941: () => ht, - __wbindgen_cast_4625c577ab2ec9ee: () => Tt, - __wbindgen_cast_9ae0607507abb057: () => At, - __wbindgen_cast_cb9088102bce6b30: () => St, - __wbindgen_cast_d6cd19b81560fd6e: () => Ft, - __wbindgen_init_externref_table: () => It, - debug_panic: () => P, - getBuildTimeInfo: () => G, -}); -module.exports = C(qt); -var h = () => {}; -h.prototype = h; -let r; -function $(e) { - r = e; -} -let T = null; -function p() { - return ( - (T === null || T.byteLength === 0) && (T = new Uint8Array(r.memory.buffer)), - T - ); -} -let A = new TextDecoder("utf-8", { ignoreBOM: !0, fatal: !0 }); -A.decode(); -const V = 2146435072; -let I = 0; -function W(e, t) { - return ( - (I += t), - I >= V && - ((A = new TextDecoder("utf-8", { ignoreBOM: !0, fatal: !0 })), - A.decode(), - (I = t)), - A.decode(p().subarray(e, e + t)) - ); -} -function S(e, t) { - return ((e = e >>> 0), W(e, t)); -} -let u = 0; -const x = new TextEncoder(); -"encodeInto" in x || - (x.encodeInto = function (e, t) { - const n = x.encode(e); - return (t.set(n), { read: e.length, written: n.length }); - }); -function b(e, t, n) { - if (n === void 0) { - const s = x.encode(e), - f = t(s.length, 1) >>> 0; - return ( - p() - .subarray(f, f + s.length) - .set(s), - (u = s.length), - f - ); - } - let _ = e.length, - o = t(_, 1) >>> 0; - const i = p(); - let c = 0; - for (; c < _; c++) { - const s = e.charCodeAt(c); - if (s > 127) break; - i[o + c] = s; - } - if (c !== _) { - (c !== 0 && (e = e.slice(c)), - (o = n(o, _, (_ = c + e.length * 3), 1) >>> 0)); - const s = p().subarray(o + c, o + _), - f = x.encodeInto(e, s); - ((c += f.written), (o = n(o, _, c, 1) >>> 0)); - } - return ((u = c), o); -} -let w = null; -function l() { - return ( - (w === null || - w.buffer.detached === !0 || - (w.buffer.detached === void 0 && w.buffer !== r.memory.buffer)) && - (w = new DataView(r.memory.buffer)), - w - ); -} -function a(e) { - return e == null; -} -function q(e) { - const t = typeof e; - if (t == "number" || t == "boolean" || e == null) return `${e}`; - if (t == "string") return `"${e}"`; - if (t == "symbol") { - const o = e.description; - return o == null ? "Symbol" : `Symbol(${o})`; - } - if (t == "function") { - const o = e.name; - return typeof o == "string" && o.length > 0 ? `Function(${o})` : "Function"; - } - if (Array.isArray(e)) { - const o = e.length; - let i = "["; - o > 0 && (i += q(e[0])); - for (let c = 1; c < o; c++) i += ", " + q(e[c]); - return ((i += "]"), i); - } - const n = /\[object ([^\]]+)\]/.exec(toString.call(e)); - let _; - if (n && n.length > 1) _ = n[1]; - else return toString.call(e); - if (_ == "Object") - try { - return "Object(" + JSON.stringify(e) + ")"; - } catch { - return "Object"; - } - return e instanceof Error - ? `${e.name}: ${e.message} -${e.stack}` - : _; -} -function y(e) { - const t = r.__externref_table_alloc(); - return (r.__wbindgen_externrefs.set(t, e), t); -} -function g(e, t) { - try { - return e.apply(this, t); - } catch (n) { - const _ = y(n); - r.__wbindgen_exn_store(_); - } -} -function k(e, t) { - return ((e = e >>> 0), p().subarray(e / 1, e / 1 + t)); -} -const O = - typeof FinalizationRegistry > "u" - ? { register: () => {}, unregister: () => {} } - : new FinalizationRegistry((e) => e.dtor(e.a, e.b)); -function z(e, t, n, _) { - const o = { a: e, b: t, cnt: 1, dtor: n }, - i = (...c) => { - o.cnt++; - const s = o.a; - o.a = 0; - try { - return _(s, o.b, ...c); - } finally { - ((o.a = s), i._wbg_cb_unref()); - } - }; - return ( - (i._wbg_cb_unref = () => { - --o.cnt === 0 && (o.dtor(o.a, o.b), (o.a = 0), O.unregister(o)); - }), - O.register(i, o, o), - i - ); -} -function M(e) { - const t = r.__wbindgen_externrefs.get(e); - return (r.__externref_table_dealloc(e), t); -} -function P(e) { - var t = a(e) ? 0 : b(e, r.__wbindgen_malloc, r.__wbindgen_realloc), - n = u; - const _ = r.debug_panic(t, n); - if (_[1]) throw M(_[0]); -} -function G() { - return r.getBuildTimeInfo(); -} -function Q(e, t, n) { - r.wasm_bindgen__convert__closures_____invoke__ha235f3ea55a06a09(e, t, n); -} -function H(e, t, n, _) { - r.wasm_bindgen__convert__closures_____invoke__h1a2f20be69ab8911(e, t, n, _); -} -const v = - typeof FinalizationRegistry > "u" - ? { register: () => {}, unregister: () => {} } - : new FinalizationRegistry((e) => r.__wbg_queryengine_free(e >>> 0, 1)); -class E { - __destroy_into_raw() { - const t = this.__wbg_ptr; - return ((this.__wbg_ptr = 0), v.unregister(this), t); - } - free() { - const t = this.__destroy_into_raw(); - r.__wbg_queryengine_free(t, 0); - } - disconnect(t, n) { - const _ = b(t, r.__wbindgen_malloc, r.__wbindgen_realloc), - o = u, - i = b(n, r.__wbindgen_malloc, r.__wbindgen_realloc), - c = u; - return r.queryengine_disconnect(this.__wbg_ptr, _, o, i, c); - } - startTransaction(t, n, _) { - const o = b(t, r.__wbindgen_malloc, r.__wbindgen_realloc), - i = u, - c = b(n, r.__wbindgen_malloc, r.__wbindgen_realloc), - s = u, - f = b(_, r.__wbindgen_malloc, r.__wbindgen_realloc), - d = u; - return r.queryengine_startTransaction(this.__wbg_ptr, o, i, c, s, f, d); - } - commitTransaction(t, n, _) { - const o = b(t, r.__wbindgen_malloc, r.__wbindgen_realloc), - i = u, - c = b(n, r.__wbindgen_malloc, r.__wbindgen_realloc), - s = u, - f = b(_, r.__wbindgen_malloc, r.__wbindgen_realloc), - d = u; - return r.queryengine_commitTransaction(this.__wbg_ptr, o, i, c, s, f, d); - } - rollbackTransaction(t, n, _) { - const o = b(t, r.__wbindgen_malloc, r.__wbindgen_realloc), - i = u, - c = b(n, r.__wbindgen_malloc, r.__wbindgen_realloc), - s = u, - f = b(_, r.__wbindgen_malloc, r.__wbindgen_realloc), - d = u; - return r.queryengine_rollbackTransaction(this.__wbg_ptr, o, i, c, s, f, d); - } - constructor(t, n, _) { - const o = r.queryengine_new(t, n, _); - if (o[2]) throw M(o[1]); - return ( - (this.__wbg_ptr = o[0] >>> 0), - v.register(this, this.__wbg_ptr, this), - this - ); - } - query(t, n, _, o) { - const i = b(t, r.__wbindgen_malloc, r.__wbindgen_realloc), - c = u, - s = b(n, r.__wbindgen_malloc, r.__wbindgen_realloc), - f = u; - var d = a(_) ? 0 : b(_, r.__wbindgen_malloc, r.__wbindgen_realloc), - m = u; - const D = b(o, r.__wbindgen_malloc, r.__wbindgen_realloc), - j = u; - return r.queryengine_query(this.__wbg_ptr, i, c, s, f, d, m, D, j); - } - trace(t) { - const n = b(t, r.__wbindgen_malloc, r.__wbindgen_realloc), - _ = u; - return r.queryengine_trace(this.__wbg_ptr, n, _); - } - connect(t, n) { - const _ = b(t, r.__wbindgen_malloc, r.__wbindgen_realloc), - o = u, - i = b(n, r.__wbindgen_malloc, r.__wbindgen_realloc), - c = u; - return r.queryengine_connect(this.__wbg_ptr, _, o, i, c); - } - metrics(t) { - const n = b(t, r.__wbindgen_malloc, r.__wbindgen_realloc), - _ = u; - return r.queryengine_metrics(this.__wbg_ptr, n, _); - } -} -Symbol.dispose && (E.prototype[Symbol.dispose] = E.prototype.free); -function J(e, t) { - return Error(S(e, t)); -} -function X(e) { - return Number(e); -} -function Y(e, t) { - const n = String(t), - _ = b(n, r.__wbindgen_malloc, r.__wbindgen_realloc), - o = u; - (l().setInt32(e + 4 * 1, o, !0), l().setInt32(e + 4 * 0, _, !0)); -} -function K(e, t) { - const n = t, - _ = typeof n == "bigint" ? n : void 0; - (l().setBigInt64(e + 8 * 1, a(_) ? BigInt(0) : _, !0), - l().setInt32(e + 4 * 0, !a(_), !0)); -} -function Z(e) { - const t = e, - n = typeof t == "boolean" ? t : void 0; - return a(n) ? 16777215 : n ? 1 : 0; -} -function ee(e, t) { - const n = q(t), - _ = b(n, r.__wbindgen_malloc, r.__wbindgen_realloc), - o = u; - (l().setInt32(e + 4 * 1, o, !0), l().setInt32(e + 4 * 0, _, !0)); -} -function te(e, t) { - return e in t; -} -function ne(e) { - return typeof e == "bigint"; -} -function re(e) { - return typeof e == "function"; -} -function _e(e) { - const t = e; - return typeof t == "object" && t !== null; -} -function oe(e) { - return typeof e == "string"; -} -function ce(e) { - return e === void 0; -} -function ie(e, t) { - return e === t; -} -function se(e, t) { - return e == t; -} -function ue(e, t) { - const n = t, - _ = typeof n == "number" ? n : void 0; - (l().setFloat64(e + 8 * 1, a(_) ? 0 : _, !0), - l().setInt32(e + 4 * 0, !a(_), !0)); -} -function be(e, t) { - const n = t, - _ = typeof n == "string" ? n : void 0; - var o = a(_) ? 0 : b(_, r.__wbindgen_malloc, r.__wbindgen_realloc), - i = u; - (l().setInt32(e + 4 * 1, i, !0), l().setInt32(e + 4 * 0, o, !0)); -} -function fe(e, t) { - throw new Error(S(e, t)); -} -function ae(e) { - e._wbg_cb_unref(); -} -function ge() { - return g(function (e, t, n) { - return e.call(t, n); - }, arguments); -} -function le() { - return g(function (e, t) { - return e.call(t); - }, arguments); -} -function de(e) { - return e.crypto; -} -function we(e) { - return e.done; -} -function pe(e) { - return Object.entries(e); -} -function xe() { - return g(function (e, t) { - e.getRandomValues(t); - }, arguments); -} -function ye(e) { - return e.getTime(); -} -function me(e, t) { - return e[t >>> 0]; -} -function he() { - return g(function (e, t) { - return e[t]; - }, arguments); -} -function Te() { - return g(function (e, t) { - return Reflect.get(e, t); - }, arguments); -} -function Ae(e, t) { - return e[t]; -} -function Se() { - return g(function (e, t) { - return Reflect.has(e, t); - }, arguments); -} -function Fe(e) { - let t; - try { - t = e instanceof ArrayBuffer; - } catch { - t = !1; - } - return t; -} -function Ie(e) { - let t; - try { - t = e instanceof Map; - } catch { - t = !1; - } - return t; -} -function qe(e) { - let t; - try { - t = e instanceof Promise; - } catch { - t = !1; - } - return t; -} -function ke(e) { - let t; - try { - t = e instanceof Uint8Array; - } catch { - t = !1; - } - return t; -} -function Ee(e) { - return Array.isArray(e); -} -function Oe(e) { - return Number.isSafeInteger(e); -} -function Me() { - return Symbol.iterator; -} -function ve(e) { - return Object.keys(e); -} -function De(e) { - return e.length; -} -function je(e) { - return e.length; -} -function Be(e) { - return e.msCrypto; -} -function Re() { - return new Date(); -} -function Ue() { - return new Object(); -} -function Le(e, t) { - try { - var n = { a: e, b: t }, - _ = (i, c) => { - const s = n.a; - n.a = 0; - try { - return H(s, n.b, i, c); - } finally { - n.a = s; - } - }; - return new Promise(_); - } finally { - n.a = n.b = 0; - } -} -function Ne(e) { - return new Uint8Array(e); -} -function Ce() { - return new Map(); -} -function $e() { - return new Array(); -} -function Ve(e, t) { - return new Uint8Array(k(e, t)); -} -function We(e, t) { - return new h(S(e, t)); -} -function ze(e) { - return new Uint8Array(e >>> 0); -} -function Pe() { - return g(function (e) { - return e.next(); - }, arguments); -} -function Ge(e) { - return e.next; -} -function Qe(e) { - return e.node; -} -function He() { - return Date.now(); -} -function Je(e) { - return e.now(); -} -function Xe() { - return g(function () { - return Date.now(); - }, arguments); -} -function Ye(e) { - return e.process; -} -function Ke(e, t, n) { - Uint8Array.prototype.set.call(k(e, t), n); -} -function Ze(e, t) { - return e.push(t); -} -function et(e) { - return e.queueMicrotask; -} -function tt(e) { - queueMicrotask(e); -} -function nt() { - return g(function (e, t) { - e.randomFillSync(t); - }, arguments); -} -function rt() { - return g(function () { - return module.require; - }, arguments); -} -function _t(e) { - return Promise.resolve(e); -} -function ot(e, t) { - return setTimeout(e, t >>> 0); -} -function ct(e, t, n) { - e[t] = n; -} -function it(e, t, n) { - return e.set(t, n); -} -function st(e, t, n) { - e[t >>> 0] = n; -} -function ut() { - return g(function (e, t, n) { - return Reflect.set(e, t, n); - }, arguments); -} -function bt() { - const e = typeof global > "u" ? null : global; - return a(e) ? 0 : y(e); -} -function ft() { - const e = typeof globalThis > "u" ? null : globalThis; - return a(e) ? 0 : y(e); -} -function at() { - const e = typeof self > "u" ? null : self; - return a(e) ? 0 : y(e); -} -function gt() { - const e = typeof window > "u" ? null : window; - return a(e) ? 0 : y(e); -} -function lt(e, t, n) { - return e.subarray(t >>> 0, n >>> 0); -} -function dt(e, t) { - return e.then(t); -} -function wt(e, t, n) { - return e.then(t, n); -} -function pt(e) { - return e.valueOf(); -} -function xt(e) { - return e.value; -} -function yt(e) { - return e.versions; -} -function mt(e, t) { - return z(e, t, r.wasm_bindgen__closure__destroy__hf9ae564cf31e91c2, Q); -} -function ht(e, t) { - return S(e, t); -} -function Tt(e) { - return BigInt.asUintN(64, e); -} -function At(e) { - return e; -} -function St(e, t) { - return k(e, t); -} -function Ft(e) { - return e; -} -function It() { - const e = r.__wbindgen_externrefs, - t = e.grow(4); - (e.set(0, void 0), - e.set(t + 0, void 0), - e.set(t + 1, null), - e.set(t + 2, !0), - e.set(t + 3, !1)); -} -0 && - (module.exports = { - QueryEngine, - __wbg_Error_e83987f665cf5504, - __wbg_Number_bb48ca12f395cd08, - __wbg_String_8f0eb39a4a4c2f66, - __wbg___wbindgen_bigint_get_as_i64_f3ebc5a755000afd, - __wbg___wbindgen_boolean_get_6d5a1ee65bab5f68, - __wbg___wbindgen_debug_string_df47ffb5e35e6763, - __wbg___wbindgen_in_bb933bd9e1b3bc0f, - __wbg___wbindgen_is_bigint_cb320707dcd35f0b, - __wbg___wbindgen_is_function_ee8a6c5833c90377, - __wbg___wbindgen_is_object_c818261d21f283a4, - __wbg___wbindgen_is_string_fbb76cb2940daafd, - __wbg___wbindgen_is_undefined_2d472862bd29a478, - __wbg___wbindgen_jsval_eq_6b13ab83478b1c50, - __wbg___wbindgen_jsval_loose_eq_b664b38a2f582147, - __wbg___wbindgen_number_get_a20bf9b85341449d, - __wbg___wbindgen_string_get_e4f06c90489ad01b, - __wbg___wbindgen_throw_b855445ff6a94295, - __wbg__wbg_cb_unref_2454a539ea5790d9, - __wbg_call_525440f72fbfc0ea, - __wbg_call_e762c39fa8ea36bf, - __wbg_crypto_805be4ce92f1e370, - __wbg_done_2042aa2670fb1db1, - __wbg_entries_e171b586f8f6bdbf, - __wbg_getRandomValues_f6a868620c8bab49, - __wbg_getTime_14776bfb48a1bff9, - __wbg_get_7bed016f185add81, - __wbg_get_ece95cf6585650d9, - __wbg_get_efcb449f58ec27c2, - __wbg_get_with_ref_key_1dc361bd10053bfe, - __wbg_has_787fafc980c3ccdb, - __wbg_instanceof_ArrayBuffer_70beb1189ca63b38, - __wbg_instanceof_Map_8579b5e2ab5437c7, - __wbg_instanceof_Promise_001fdd42afa1b7ef, - __wbg_instanceof_Uint8Array_20c8e73002f7af98, - __wbg_isArray_96e0af9891d0945d, - __wbg_isSafeInteger_d216eda7911dde36, - __wbg_iterator_e5822695327a3c39, - __wbg_keys_b4d27b02ad14f4be, - __wbg_length_69bca3cb64fc8748, - __wbg_length_cdd215e10d9dd507, - __wbg_msCrypto_2ac4d17c4748234a, - __wbg_new_0_f9740686d739025c, - __wbg_new_1acc0b6eea89d040, - __wbg_new_3c3d849046688a66, - __wbg_new_5a79be3ab53b8aa5, - __wbg_new_68651c719dcda04e, - __wbg_new_e17d9f43105b08be, - __wbg_new_from_slice_92f4d78ca282a2d2, - __wbg_new_no_args_ee98eee5275000a4, - __wbg_new_with_length_01aa0dc35aa13543, - __wbg_next_020810e0ae8ebcb0, - __wbg_next_2c826fe5dfec6b6a, - __wbg_node_ecc8306b9857f33d, - __wbg_now_793306c526e2e3b6, - __wbg_now_7fd00a794a07d388, - __wbg_now_b3f7572f6ef3d3a9, - __wbg_process_5cff2739921be718, - __wbg_prototypesetcall_2a6620b6922694b2, - __wbg_push_df81a39d04db858c, - __wbg_queueMicrotask_5a8a9131f3f0b37b, - __wbg_queueMicrotask_6d79674585219521, - __wbg_randomFillSync_d3c85af7e31cf1f8, - __wbg_require_0c566c6f2eef6c79, - __wbg_resolve_caf97c30b83f7053, - __wbg_setTimeout_5d6a1d4fc51ea450, - __wbg_set_3f1d0b984ed272ed, - __wbg_set_907fb406c34a251d, - __wbg_set_c213c871859d6500, - __wbg_set_c2abbebe8b9ebee1, - __wbg_set_wasm, - __wbg_static_accessor_GLOBAL_89e1d9ac6a1b250e, - __wbg_static_accessor_GLOBAL_THIS_8b530f326a9e48ac, - __wbg_static_accessor_SELF_6fdf4b64710cc91b, - __wbg_static_accessor_WINDOW_b45bfc5a37f6cfa2, - __wbg_subarray_480600f3d6a9f26c, - __wbg_then_4f46f6544e6b4a28, - __wbg_then_70d05cf780a18d77, - __wbg_valueOf_9eee4828c11458ca, - __wbg_value_692627309814bb8c, - __wbg_versions_a8e5a362e1f16442, - __wbindgen_cast_022f8b2bf9dce4aa, - __wbindgen_cast_2241b6af4c4b2941, - __wbindgen_cast_4625c577ab2ec9ee, - __wbindgen_cast_9ae0607507abb057, - __wbindgen_cast_cb9088102bce6b30, - __wbindgen_cast_d6cd19b81560fd6e, - __wbindgen_init_externref_table, - debug_panic, - getBuildTimeInfo, - }); +"use strict";var F=Object.defineProperty;var B=Object.getOwnPropertyDescriptor;var R=Object.getOwnPropertyNames;var U=Object.prototype.hasOwnProperty;var L=(e,t)=>{for(var n in t)F(e,n,{get:t[n],enumerable:!0})},N=(e,t,n,_)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of R(t))!U.call(e,o)&&o!==n&&F(e,o,{get:()=>t[o],enumerable:!(_=B(t,o))||_.enumerable});return e};var C=e=>N(F({},"__esModule",{value:!0}),e);var qt={};L(qt,{QueryEngine:()=>E,__wbg_Error_e83987f665cf5504:()=>J,__wbg_Number_bb48ca12f395cd08:()=>X,__wbg_String_8f0eb39a4a4c2f66:()=>Y,__wbg___wbindgen_bigint_get_as_i64_f3ebc5a755000afd:()=>K,__wbg___wbindgen_boolean_get_6d5a1ee65bab5f68:()=>Z,__wbg___wbindgen_debug_string_df47ffb5e35e6763:()=>ee,__wbg___wbindgen_in_bb933bd9e1b3bc0f:()=>te,__wbg___wbindgen_is_bigint_cb320707dcd35f0b:()=>ne,__wbg___wbindgen_is_function_ee8a6c5833c90377:()=>re,__wbg___wbindgen_is_object_c818261d21f283a4:()=>_e,__wbg___wbindgen_is_string_fbb76cb2940daafd:()=>oe,__wbg___wbindgen_is_undefined_2d472862bd29a478:()=>ce,__wbg___wbindgen_jsval_eq_6b13ab83478b1c50:()=>ie,__wbg___wbindgen_jsval_loose_eq_b664b38a2f582147:()=>se,__wbg___wbindgen_number_get_a20bf9b85341449d:()=>ue,__wbg___wbindgen_string_get_e4f06c90489ad01b:()=>be,__wbg___wbindgen_throw_b855445ff6a94295:()=>fe,__wbg__wbg_cb_unref_2454a539ea5790d9:()=>ae,__wbg_call_525440f72fbfc0ea:()=>ge,__wbg_call_e762c39fa8ea36bf:()=>le,__wbg_crypto_805be4ce92f1e370:()=>de,__wbg_done_2042aa2670fb1db1:()=>we,__wbg_entries_e171b586f8f6bdbf:()=>pe,__wbg_getRandomValues_f6a868620c8bab49:()=>xe,__wbg_getTime_14776bfb48a1bff9:()=>ye,__wbg_get_7bed016f185add81:()=>me,__wbg_get_ece95cf6585650d9:()=>he,__wbg_get_efcb449f58ec27c2:()=>Te,__wbg_get_with_ref_key_1dc361bd10053bfe:()=>Ae,__wbg_has_787fafc980c3ccdb:()=>Se,__wbg_instanceof_ArrayBuffer_70beb1189ca63b38:()=>Fe,__wbg_instanceof_Map_8579b5e2ab5437c7:()=>Ie,__wbg_instanceof_Promise_001fdd42afa1b7ef:()=>qe,__wbg_instanceof_Uint8Array_20c8e73002f7af98:()=>ke,__wbg_isArray_96e0af9891d0945d:()=>Ee,__wbg_isSafeInteger_d216eda7911dde36:()=>Oe,__wbg_iterator_e5822695327a3c39:()=>Me,__wbg_keys_b4d27b02ad14f4be:()=>ve,__wbg_length_69bca3cb64fc8748:()=>De,__wbg_length_cdd215e10d9dd507:()=>je,__wbg_msCrypto_2ac4d17c4748234a:()=>Be,__wbg_new_0_f9740686d739025c:()=>Re,__wbg_new_1acc0b6eea89d040:()=>Ue,__wbg_new_3c3d849046688a66:()=>Le,__wbg_new_5a79be3ab53b8aa5:()=>Ne,__wbg_new_68651c719dcda04e:()=>Ce,__wbg_new_e17d9f43105b08be:()=>$e,__wbg_new_from_slice_92f4d78ca282a2d2:()=>Ve,__wbg_new_no_args_ee98eee5275000a4:()=>We,__wbg_new_with_length_01aa0dc35aa13543:()=>ze,__wbg_next_020810e0ae8ebcb0:()=>Pe,__wbg_next_2c826fe5dfec6b6a:()=>Ge,__wbg_node_ecc8306b9857f33d:()=>Qe,__wbg_now_793306c526e2e3b6:()=>He,__wbg_now_7fd00a794a07d388:()=>Je,__wbg_now_b3f7572f6ef3d3a9:()=>Xe,__wbg_process_5cff2739921be718:()=>Ye,__wbg_prototypesetcall_2a6620b6922694b2:()=>Ke,__wbg_push_df81a39d04db858c:()=>Ze,__wbg_queueMicrotask_5a8a9131f3f0b37b:()=>et,__wbg_queueMicrotask_6d79674585219521:()=>tt,__wbg_randomFillSync_d3c85af7e31cf1f8:()=>nt,__wbg_require_0c566c6f2eef6c79:()=>rt,__wbg_resolve_caf97c30b83f7053:()=>_t,__wbg_setTimeout_5d6a1d4fc51ea450:()=>ot,__wbg_set_3f1d0b984ed272ed:()=>ct,__wbg_set_907fb406c34a251d:()=>it,__wbg_set_c213c871859d6500:()=>st,__wbg_set_c2abbebe8b9ebee1:()=>ut,__wbg_set_wasm:()=>$,__wbg_static_accessor_GLOBAL_89e1d9ac6a1b250e:()=>bt,__wbg_static_accessor_GLOBAL_THIS_8b530f326a9e48ac:()=>ft,__wbg_static_accessor_SELF_6fdf4b64710cc91b:()=>at,__wbg_static_accessor_WINDOW_b45bfc5a37f6cfa2:()=>gt,__wbg_subarray_480600f3d6a9f26c:()=>lt,__wbg_then_4f46f6544e6b4a28:()=>dt,__wbg_then_70d05cf780a18d77:()=>wt,__wbg_valueOf_9eee4828c11458ca:()=>pt,__wbg_value_692627309814bb8c:()=>xt,__wbg_versions_a8e5a362e1f16442:()=>yt,__wbindgen_cast_022f8b2bf9dce4aa:()=>mt,__wbindgen_cast_2241b6af4c4b2941:()=>ht,__wbindgen_cast_4625c577ab2ec9ee:()=>Tt,__wbindgen_cast_9ae0607507abb057:()=>At,__wbindgen_cast_cb9088102bce6b30:()=>St,__wbindgen_cast_d6cd19b81560fd6e:()=>Ft,__wbindgen_init_externref_table:()=>It,debug_panic:()=>P,getBuildTimeInfo:()=>G});module.exports=C(qt);var h=()=>{};h.prototype=h;let r;function $(e){r=e}let T=null;function p(){return(T===null||T.byteLength===0)&&(T=new Uint8Array(r.memory.buffer)),T}let A=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0});A.decode();const V=2146435072;let I=0;function W(e,t){return I+=t,I>=V&&(A=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}),A.decode(),I=t),A.decode(p().subarray(e,e+t))}function S(e,t){return e=e>>>0,W(e,t)}let u=0;const x=new TextEncoder;"encodeInto"in x||(x.encodeInto=function(e,t){const n=x.encode(e);return t.set(n),{read:e.length,written:n.length}});function b(e,t,n){if(n===void 0){const s=x.encode(e),f=t(s.length,1)>>>0;return p().subarray(f,f+s.length).set(s),u=s.length,f}let _=e.length,o=t(_,1)>>>0;const i=p();let c=0;for(;c<_;c++){const s=e.charCodeAt(c);if(s>127)break;i[o+c]=s}if(c!==_){c!==0&&(e=e.slice(c)),o=n(o,_,_=c+e.length*3,1)>>>0;const s=p().subarray(o+c,o+_),f=x.encodeInto(e,s);c+=f.written,o=n(o,_,c,1)>>>0}return u=c,o}let w=null;function l(){return(w===null||w.buffer.detached===!0||w.buffer.detached===void 0&&w.buffer!==r.memory.buffer)&&(w=new DataView(r.memory.buffer)),w}function a(e){return e==null}function q(e){const t=typeof e;if(t=="number"||t=="boolean"||e==null)return`${e}`;if(t=="string")return`"${e}"`;if(t=="symbol"){const o=e.description;return o==null?"Symbol":`Symbol(${o})`}if(t=="function"){const o=e.name;return typeof o=="string"&&o.length>0?`Function(${o})`:"Function"}if(Array.isArray(e)){const o=e.length;let i="[";o>0&&(i+=q(e[0]));for(let c=1;c1)_=n[1];else return toString.call(e);if(_=="Object")try{return"Object("+JSON.stringify(e)+")"}catch{return"Object"}return e instanceof Error?`${e.name}: ${e.message} +${e.stack}`:_}function y(e){const t=r.__externref_table_alloc();return r.__wbindgen_externrefs.set(t,e),t}function g(e,t){try{return e.apply(this,t)}catch(n){const _=y(n);r.__wbindgen_exn_store(_)}}function k(e,t){return e=e>>>0,p().subarray(e/1,e/1+t)}const O=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(e=>e.dtor(e.a,e.b));function z(e,t,n,_){const o={a:e,b:t,cnt:1,dtor:n},i=(...c)=>{o.cnt++;const s=o.a;o.a=0;try{return _(s,o.b,...c)}finally{o.a=s,i._wbg_cb_unref()}};return i._wbg_cb_unref=()=>{--o.cnt===0&&(o.dtor(o.a,o.b),o.a=0,O.unregister(o))},O.register(i,o,o),i}function M(e){const t=r.__wbindgen_externrefs.get(e);return r.__externref_table_dealloc(e),t}function P(e){var t=a(e)?0:b(e,r.__wbindgen_malloc,r.__wbindgen_realloc),n=u;const _=r.debug_panic(t,n);if(_[1])throw M(_[0])}function G(){return r.getBuildTimeInfo()}function Q(e,t,n){r.wasm_bindgen__convert__closures_____invoke__ha235f3ea55a06a09(e,t,n)}function H(e,t,n,_){r.wasm_bindgen__convert__closures_____invoke__h1a2f20be69ab8911(e,t,n,_)}const v=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(e=>r.__wbg_queryengine_free(e>>>0,1));class E{__destroy_into_raw(){const t=this.__wbg_ptr;return this.__wbg_ptr=0,v.unregister(this),t}free(){const t=this.__destroy_into_raw();r.__wbg_queryengine_free(t,0)}disconnect(t,n){const _=b(t,r.__wbindgen_malloc,r.__wbindgen_realloc),o=u,i=b(n,r.__wbindgen_malloc,r.__wbindgen_realloc),c=u;return r.queryengine_disconnect(this.__wbg_ptr,_,o,i,c)}startTransaction(t,n,_){const o=b(t,r.__wbindgen_malloc,r.__wbindgen_realloc),i=u,c=b(n,r.__wbindgen_malloc,r.__wbindgen_realloc),s=u,f=b(_,r.__wbindgen_malloc,r.__wbindgen_realloc),d=u;return r.queryengine_startTransaction(this.__wbg_ptr,o,i,c,s,f,d)}commitTransaction(t,n,_){const o=b(t,r.__wbindgen_malloc,r.__wbindgen_realloc),i=u,c=b(n,r.__wbindgen_malloc,r.__wbindgen_realloc),s=u,f=b(_,r.__wbindgen_malloc,r.__wbindgen_realloc),d=u;return r.queryengine_commitTransaction(this.__wbg_ptr,o,i,c,s,f,d)}rollbackTransaction(t,n,_){const o=b(t,r.__wbindgen_malloc,r.__wbindgen_realloc),i=u,c=b(n,r.__wbindgen_malloc,r.__wbindgen_realloc),s=u,f=b(_,r.__wbindgen_malloc,r.__wbindgen_realloc),d=u;return r.queryengine_rollbackTransaction(this.__wbg_ptr,o,i,c,s,f,d)}constructor(t,n,_){const o=r.queryengine_new(t,n,_);if(o[2])throw M(o[1]);return this.__wbg_ptr=o[0]>>>0,v.register(this,this.__wbg_ptr,this),this}query(t,n,_,o){const i=b(t,r.__wbindgen_malloc,r.__wbindgen_realloc),c=u,s=b(n,r.__wbindgen_malloc,r.__wbindgen_realloc),f=u;var d=a(_)?0:b(_,r.__wbindgen_malloc,r.__wbindgen_realloc),m=u;const D=b(o,r.__wbindgen_malloc,r.__wbindgen_realloc),j=u;return r.queryengine_query(this.__wbg_ptr,i,c,s,f,d,m,D,j)}trace(t){const n=b(t,r.__wbindgen_malloc,r.__wbindgen_realloc),_=u;return r.queryengine_trace(this.__wbg_ptr,n,_)}connect(t,n){const _=b(t,r.__wbindgen_malloc,r.__wbindgen_realloc),o=u,i=b(n,r.__wbindgen_malloc,r.__wbindgen_realloc),c=u;return r.queryengine_connect(this.__wbg_ptr,_,o,i,c)}metrics(t){const n=b(t,r.__wbindgen_malloc,r.__wbindgen_realloc),_=u;return r.queryengine_metrics(this.__wbg_ptr,n,_)}}Symbol.dispose&&(E.prototype[Symbol.dispose]=E.prototype.free);function J(e,t){return Error(S(e,t))}function X(e){return Number(e)}function Y(e,t){const n=String(t),_=b(n,r.__wbindgen_malloc,r.__wbindgen_realloc),o=u;l().setInt32(e+4*1,o,!0),l().setInt32(e+4*0,_,!0)}function K(e,t){const n=t,_=typeof n=="bigint"?n:void 0;l().setBigInt64(e+8*1,a(_)?BigInt(0):_,!0),l().setInt32(e+4*0,!a(_),!0)}function Z(e){const t=e,n=typeof t=="boolean"?t:void 0;return a(n)?16777215:n?1:0}function ee(e,t){const n=q(t),_=b(n,r.__wbindgen_malloc,r.__wbindgen_realloc),o=u;l().setInt32(e+4*1,o,!0),l().setInt32(e+4*0,_,!0)}function te(e,t){return e in t}function ne(e){return typeof e=="bigint"}function re(e){return typeof e=="function"}function _e(e){const t=e;return typeof t=="object"&&t!==null}function oe(e){return typeof e=="string"}function ce(e){return e===void 0}function ie(e,t){return e===t}function se(e,t){return e==t}function ue(e,t){const n=t,_=typeof n=="number"?n:void 0;l().setFloat64(e+8*1,a(_)?0:_,!0),l().setInt32(e+4*0,!a(_),!0)}function be(e,t){const n=t,_=typeof n=="string"?n:void 0;var o=a(_)?0:b(_,r.__wbindgen_malloc,r.__wbindgen_realloc),i=u;l().setInt32(e+4*1,i,!0),l().setInt32(e+4*0,o,!0)}function fe(e,t){throw new Error(S(e,t))}function ae(e){e._wbg_cb_unref()}function ge(){return g(function(e,t,n){return e.call(t,n)},arguments)}function le(){return g(function(e,t){return e.call(t)},arguments)}function de(e){return e.crypto}function we(e){return e.done}function pe(e){return Object.entries(e)}function xe(){return g(function(e,t){e.getRandomValues(t)},arguments)}function ye(e){return e.getTime()}function me(e,t){return e[t>>>0]}function he(){return g(function(e,t){return e[t]},arguments)}function Te(){return g(function(e,t){return Reflect.get(e,t)},arguments)}function Ae(e,t){return e[t]}function Se(){return g(function(e,t){return Reflect.has(e,t)},arguments)}function Fe(e){let t;try{t=e instanceof ArrayBuffer}catch{t=!1}return t}function Ie(e){let t;try{t=e instanceof Map}catch{t=!1}return t}function qe(e){let t;try{t=e instanceof Promise}catch{t=!1}return t}function ke(e){let t;try{t=e instanceof Uint8Array}catch{t=!1}return t}function Ee(e){return Array.isArray(e)}function Oe(e){return Number.isSafeInteger(e)}function Me(){return Symbol.iterator}function ve(e){return Object.keys(e)}function De(e){return e.length}function je(e){return e.length}function Be(e){return e.msCrypto}function Re(){return new Date}function Ue(){return new Object}function Le(e,t){try{var n={a:e,b:t},_=(i,c)=>{const s=n.a;n.a=0;try{return H(s,n.b,i,c)}finally{n.a=s}};return new Promise(_)}finally{n.a=n.b=0}}function Ne(e){return new Uint8Array(e)}function Ce(){return new Map}function $e(){return new Array}function Ve(e,t){return new Uint8Array(k(e,t))}function We(e,t){return new h(S(e,t))}function ze(e){return new Uint8Array(e>>>0)}function Pe(){return g(function(e){return e.next()},arguments)}function Ge(e){return e.next}function Qe(e){return e.node}function He(){return Date.now()}function Je(e){return e.now()}function Xe(){return g(function(){return Date.now()},arguments)}function Ye(e){return e.process}function Ke(e,t,n){Uint8Array.prototype.set.call(k(e,t),n)}function Ze(e,t){return e.push(t)}function et(e){return e.queueMicrotask}function tt(e){queueMicrotask(e)}function nt(){return g(function(e,t){e.randomFillSync(t)},arguments)}function rt(){return g(function(){return module.require},arguments)}function _t(e){return Promise.resolve(e)}function ot(e,t){return setTimeout(e,t>>>0)}function ct(e,t,n){e[t]=n}function it(e,t,n){return e.set(t,n)}function st(e,t,n){e[t>>>0]=n}function ut(){return g(function(e,t,n){return Reflect.set(e,t,n)},arguments)}function bt(){const e=typeof global>"u"?null:global;return a(e)?0:y(e)}function ft(){const e=typeof globalThis>"u"?null:globalThis;return a(e)?0:y(e)}function at(){const e=typeof self>"u"?null:self;return a(e)?0:y(e)}function gt(){const e=typeof window>"u"?null:window;return a(e)?0:y(e)}function lt(e,t,n){return e.subarray(t>>>0,n>>>0)}function dt(e,t){return e.then(t)}function wt(e,t,n){return e.then(t,n)}function pt(e){return e.valueOf()}function xt(e){return e.value}function yt(e){return e.versions}function mt(e,t){return z(e,t,r.wasm_bindgen__closure__destroy__hf9ae564cf31e91c2,Q)}function ht(e,t){return S(e,t)}function Tt(e){return BigInt.asUintN(64,e)}function At(e){return e}function St(e,t){return k(e,t)}function Ft(e){return e}function It(){const e=r.__wbindgen_externrefs,t=e.grow(4);e.set(0,void 0),e.set(t+0,void 0),e.set(t+1,null),e.set(t+2,!0),e.set(t+3,!1)}0&&(module.exports={QueryEngine,__wbg_Error_e83987f665cf5504,__wbg_Number_bb48ca12f395cd08,__wbg_String_8f0eb39a4a4c2f66,__wbg___wbindgen_bigint_get_as_i64_f3ebc5a755000afd,__wbg___wbindgen_boolean_get_6d5a1ee65bab5f68,__wbg___wbindgen_debug_string_df47ffb5e35e6763,__wbg___wbindgen_in_bb933bd9e1b3bc0f,__wbg___wbindgen_is_bigint_cb320707dcd35f0b,__wbg___wbindgen_is_function_ee8a6c5833c90377,__wbg___wbindgen_is_object_c818261d21f283a4,__wbg___wbindgen_is_string_fbb76cb2940daafd,__wbg___wbindgen_is_undefined_2d472862bd29a478,__wbg___wbindgen_jsval_eq_6b13ab83478b1c50,__wbg___wbindgen_jsval_loose_eq_b664b38a2f582147,__wbg___wbindgen_number_get_a20bf9b85341449d,__wbg___wbindgen_string_get_e4f06c90489ad01b,__wbg___wbindgen_throw_b855445ff6a94295,__wbg__wbg_cb_unref_2454a539ea5790d9,__wbg_call_525440f72fbfc0ea,__wbg_call_e762c39fa8ea36bf,__wbg_crypto_805be4ce92f1e370,__wbg_done_2042aa2670fb1db1,__wbg_entries_e171b586f8f6bdbf,__wbg_getRandomValues_f6a868620c8bab49,__wbg_getTime_14776bfb48a1bff9,__wbg_get_7bed016f185add81,__wbg_get_ece95cf6585650d9,__wbg_get_efcb449f58ec27c2,__wbg_get_with_ref_key_1dc361bd10053bfe,__wbg_has_787fafc980c3ccdb,__wbg_instanceof_ArrayBuffer_70beb1189ca63b38,__wbg_instanceof_Map_8579b5e2ab5437c7,__wbg_instanceof_Promise_001fdd42afa1b7ef,__wbg_instanceof_Uint8Array_20c8e73002f7af98,__wbg_isArray_96e0af9891d0945d,__wbg_isSafeInteger_d216eda7911dde36,__wbg_iterator_e5822695327a3c39,__wbg_keys_b4d27b02ad14f4be,__wbg_length_69bca3cb64fc8748,__wbg_length_cdd215e10d9dd507,__wbg_msCrypto_2ac4d17c4748234a,__wbg_new_0_f9740686d739025c,__wbg_new_1acc0b6eea89d040,__wbg_new_3c3d849046688a66,__wbg_new_5a79be3ab53b8aa5,__wbg_new_68651c719dcda04e,__wbg_new_e17d9f43105b08be,__wbg_new_from_slice_92f4d78ca282a2d2,__wbg_new_no_args_ee98eee5275000a4,__wbg_new_with_length_01aa0dc35aa13543,__wbg_next_020810e0ae8ebcb0,__wbg_next_2c826fe5dfec6b6a,__wbg_node_ecc8306b9857f33d,__wbg_now_793306c526e2e3b6,__wbg_now_7fd00a794a07d388,__wbg_now_b3f7572f6ef3d3a9,__wbg_process_5cff2739921be718,__wbg_prototypesetcall_2a6620b6922694b2,__wbg_push_df81a39d04db858c,__wbg_queueMicrotask_5a8a9131f3f0b37b,__wbg_queueMicrotask_6d79674585219521,__wbg_randomFillSync_d3c85af7e31cf1f8,__wbg_require_0c566c6f2eef6c79,__wbg_resolve_caf97c30b83f7053,__wbg_setTimeout_5d6a1d4fc51ea450,__wbg_set_3f1d0b984ed272ed,__wbg_set_907fb406c34a251d,__wbg_set_c213c871859d6500,__wbg_set_c2abbebe8b9ebee1,__wbg_set_wasm,__wbg_static_accessor_GLOBAL_89e1d9ac6a1b250e,__wbg_static_accessor_GLOBAL_THIS_8b530f326a9e48ac,__wbg_static_accessor_SELF_6fdf4b64710cc91b,__wbg_static_accessor_WINDOW_b45bfc5a37f6cfa2,__wbg_subarray_480600f3d6a9f26c,__wbg_then_4f46f6544e6b4a28,__wbg_then_70d05cf780a18d77,__wbg_valueOf_9eee4828c11458ca,__wbg_value_692627309814bb8c,__wbg_versions_a8e5a362e1f16442,__wbindgen_cast_022f8b2bf9dce4aa,__wbindgen_cast_2241b6af4c4b2941,__wbindgen_cast_4625c577ab2ec9ee,__wbindgen_cast_9ae0607507abb057,__wbindgen_cast_cb9088102bce6b30,__wbindgen_cast_d6cd19b81560fd6e,__wbindgen_init_externref_table,debug_panic,getBuildTimeInfo}); diff --git a/generated/prisma/runtime/edge-esm.js b/generated/prisma/runtime/edge-esm.js index a8e93ae7..312b7a94 100644 --- a/generated/prisma/runtime/edge-esm.js +++ b/generated/prisma/runtime/edge-esm.js @@ -1,10087 +1,35 @@ + /* !!! This is code generated by Prisma. Do not edit directly. !!! /* eslint-disable */ // biome-ignore-all lint: generated file -var ca = Object.create; -var rn = Object.defineProperty; -var pa = Object.getOwnPropertyDescriptor; -var ma = Object.getOwnPropertyNames; -var fa = Object.getPrototypeOf, - da = Object.prototype.hasOwnProperty; -var fe = (e, t) => () => (e && (t = e((e = 0))), t); -var Je = (e, t) => () => (t || e((t = { exports: {} }).exports, t), t.exports), - or = (e, t) => { - for (var r in t) rn(e, r, { get: t[r], enumerable: !0 }); - }, - ga = (e, t, r, n) => { - if ((t && typeof t == "object") || typeof t == "function") - for (let i of ma(t)) - !da.call(e, i) && - i !== r && - rn(e, i, { - get: () => t[i], - enumerable: !(n = pa(t, i)) || n.enumerable, - }); - return e; - }; -var Qe = (e, t, r) => ( - (r = e != null ? ca(fa(e)) : {}), - ga( - t || !e || !e.__esModule - ? rn(r, "default", { value: e, enumerable: !0 }) - : r, - e, - ) -); -var y, - b, - u = fe(() => { - "use strict"; - ((y = { - nextTick: (e, ...t) => { - setTimeout(() => { - e(...t); - }, 0); - }, - env: {}, - version: "", - cwd: () => "/", - stderr: {}, - argv: ["/bin/node"], - pid: 1e4, - }), - ({ cwd: b } = y)); - }); -var x, - c = fe(() => { - "use strict"; - x = - globalThis.performance ?? - (() => { - let e = Date.now(); - return { now: () => Date.now() - e }; - })(); - }); -var E, - p = fe(() => { - "use strict"; - E = () => {}; - E.prototype = E; - }); -var m = fe(() => { - "use strict"; -}); -var Ti = Je((ze) => { - "use strict"; - f(); - u(); - c(); - p(); - m(); - var ci = (e, t) => () => ( - t || e((t = { exports: {} }).exports, t), - t.exports - ), - ha = ci((e) => { - "use strict"; - ((e.byteLength = l), (e.toByteArray = g), (e.fromByteArray = I)); - var t = [], - r = [], - n = typeof Uint8Array < "u" ? Uint8Array : Array, - i = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; - for (o = 0, s = i.length; o < s; ++o) - ((t[o] = i[o]), (r[i.charCodeAt(o)] = o)); - var o, s; - ((r[45] = 62), (r[95] = 63)); - function a(S) { - var C = S.length; - if (C % 4 > 0) - throw new Error("Invalid string. Length must be a multiple of 4"); - var M = S.indexOf("="); - M === -1 && (M = C); - var F = M === C ? 0 : 4 - (M % 4); - return [M, F]; - } - function l(S) { - var C = a(S), - M = C[0], - F = C[1]; - return ((M + F) * 3) / 4 - F; - } - function d(S, C, M) { - return ((C + M) * 3) / 4 - M; - } - function g(S) { - var C, - M = a(S), - F = M[0], - B = M[1], - O = new n(d(S, F, B)), - L = 0, - oe = B > 0 ? F - 4 : F, - J; - for (J = 0; J < oe; J += 4) - ((C = - (r[S.charCodeAt(J)] << 18) | - (r[S.charCodeAt(J + 1)] << 12) | - (r[S.charCodeAt(J + 2)] << 6) | - r[S.charCodeAt(J + 3)]), - (O[L++] = (C >> 16) & 255), - (O[L++] = (C >> 8) & 255), - (O[L++] = C & 255)); - return ( - B === 2 && - ((C = (r[S.charCodeAt(J)] << 2) | (r[S.charCodeAt(J + 1)] >> 4)), - (O[L++] = C & 255)), - B === 1 && - ((C = - (r[S.charCodeAt(J)] << 10) | - (r[S.charCodeAt(J + 1)] << 4) | - (r[S.charCodeAt(J + 2)] >> 2)), - (O[L++] = (C >> 8) & 255), - (O[L++] = C & 255)), - O - ); - } - function h(S) { - return ( - t[(S >> 18) & 63] + t[(S >> 12) & 63] + t[(S >> 6) & 63] + t[S & 63] - ); - } - function T(S, C, M) { - for (var F, B = [], O = C; O < M; O += 3) - ((F = - ((S[O] << 16) & 16711680) + - ((S[O + 1] << 8) & 65280) + - (S[O + 2] & 255)), - B.push(h(F))); - return B.join(""); - } - function I(S) { - for ( - var C, M = S.length, F = M % 3, B = [], O = 16383, L = 0, oe = M - F; - L < oe; - L += O - ) - B.push(T(S, L, L + O > oe ? oe : L + O)); - return ( - F === 1 - ? ((C = S[M - 1]), B.push(t[C >> 2] + t[(C << 4) & 63] + "==")) - : F === 2 && - ((C = (S[M - 2] << 8) + S[M - 1]), - B.push(t[C >> 10] + t[(C >> 4) & 63] + t[(C << 2) & 63] + "=")), - B.join("") - ); - } - }), - ya = ci((e) => { - ((e.read = function (t, r, n, i, o) { - var s, - a, - l = o * 8 - i - 1, - d = (1 << l) - 1, - g = d >> 1, - h = -7, - T = n ? o - 1 : 0, - I = n ? -1 : 1, - S = t[r + T]; - for ( - T += I, s = S & ((1 << -h) - 1), S >>= -h, h += l; - h > 0; - s = s * 256 + t[r + T], T += I, h -= 8 - ); - for ( - a = s & ((1 << -h) - 1), s >>= -h, h += i; - h > 0; - a = a * 256 + t[r + T], T += I, h -= 8 - ); - if (s === 0) s = 1 - g; - else { - if (s === d) return a ? NaN : (S ? -1 : 1) * (1 / 0); - ((a = a + Math.pow(2, i)), (s = s - g)); - } - return (S ? -1 : 1) * a * Math.pow(2, s - i); - }), - (e.write = function (t, r, n, i, o, s) { - var a, - l, - d, - g = s * 8 - o - 1, - h = (1 << g) - 1, - T = h >> 1, - I = o === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0, - S = i ? 0 : s - 1, - C = i ? 1 : -1, - M = r < 0 || (r === 0 && 1 / r < 0) ? 1 : 0; - for ( - r = Math.abs(r), - isNaN(r) || r === 1 / 0 - ? ((l = isNaN(r) ? 1 : 0), (a = h)) - : ((a = Math.floor(Math.log(r) / Math.LN2)), - r * (d = Math.pow(2, -a)) < 1 && (a--, (d *= 2)), - a + T >= 1 ? (r += I / d) : (r += I * Math.pow(2, 1 - T)), - r * d >= 2 && (a++, (d /= 2)), - a + T >= h - ? ((l = 0), (a = h)) - : a + T >= 1 - ? ((l = (r * d - 1) * Math.pow(2, o)), (a = a + T)) - : ((l = r * Math.pow(2, T - 1) * Math.pow(2, o)), - (a = 0))); - o >= 8; - t[n + S] = l & 255, S += C, l /= 256, o -= 8 - ); - for ( - a = (a << o) | l, g += o; - g > 0; - t[n + S] = a & 255, S += C, a /= 256, g -= 8 - ); - t[n + S - C] |= M * 128; - })); - }), - nn = ha(), - We = ya(), - si = - typeof Symbol == "function" && typeof Symbol.for == "function" - ? Symbol.for("nodejs.util.inspect.custom") - : null; - ze.Buffer = A; - ze.SlowBuffer = va; - ze.INSPECT_MAX_BYTES = 50; - var sr = 2147483647; - ze.kMaxLength = sr; - A.TYPED_ARRAY_SUPPORT = wa(); - !A.TYPED_ARRAY_SUPPORT && - typeof console < "u" && - typeof console.error == "function" && - console.error( - "This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.", - ); - function wa() { - try { - let e = new Uint8Array(1), - t = { - foo: function () { - return 42; - }, - }; - return ( - Object.setPrototypeOf(t, Uint8Array.prototype), - Object.setPrototypeOf(e, t), - e.foo() === 42 - ); - } catch { - return !1; - } - } - Object.defineProperty(A.prototype, "parent", { - enumerable: !0, - get: function () { - if (A.isBuffer(this)) return this.buffer; - }, - }); - Object.defineProperty(A.prototype, "offset", { - enumerable: !0, - get: function () { - if (A.isBuffer(this)) return this.byteOffset; - }, - }); - function xe(e) { - if (e > sr) - throw new RangeError( - 'The value "' + e + '" is invalid for option "size"', - ); - let t = new Uint8Array(e); - return (Object.setPrototypeOf(t, A.prototype), t); - } - function A(e, t, r) { - if (typeof e == "number") { - if (typeof t == "string") - throw new TypeError( - 'The "string" argument must be of type string. Received type number', - ); - return an(e); - } - return pi(e, t, r); - } - A.poolSize = 8192; - function pi(e, t, r) { - if (typeof e == "string") return ba(e, t); - if (ArrayBuffer.isView(e)) return xa(e); - if (e == null) - throw new TypeError( - "The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + - typeof e, - ); - if ( - de(e, ArrayBuffer) || - (e && de(e.buffer, ArrayBuffer)) || - (typeof SharedArrayBuffer < "u" && - (de(e, SharedArrayBuffer) || (e && de(e.buffer, SharedArrayBuffer)))) - ) - return fi(e, t, r); - if (typeof e == "number") - throw new TypeError( - 'The "value" argument must not be of type number. Received type number', - ); - let n = e.valueOf && e.valueOf(); - if (n != null && n !== e) return A.from(n, t, r); - let i = Pa(e); - if (i) return i; - if ( - typeof Symbol < "u" && - Symbol.toPrimitive != null && - typeof e[Symbol.toPrimitive] == "function" - ) - return A.from(e[Symbol.toPrimitive]("string"), t, r); - throw new TypeError( - "The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + - typeof e, - ); - } - A.from = function (e, t, r) { - return pi(e, t, r); - }; - Object.setPrototypeOf(A.prototype, Uint8Array.prototype); - Object.setPrototypeOf(A, Uint8Array); - function mi(e) { - if (typeof e != "number") - throw new TypeError('"size" argument must be of type number'); - if (e < 0) - throw new RangeError( - 'The value "' + e + '" is invalid for option "size"', - ); - } - function Ea(e, t, r) { - return ( - mi(e), - e <= 0 - ? xe(e) - : t !== void 0 - ? typeof r == "string" - ? xe(e).fill(t, r) - : xe(e).fill(t) - : xe(e) - ); - } - A.alloc = function (e, t, r) { - return Ea(e, t, r); - }; - function an(e) { - return (mi(e), xe(e < 0 ? 0 : ln(e) | 0)); - } - A.allocUnsafe = function (e) { - return an(e); - }; - A.allocUnsafeSlow = function (e) { - return an(e); - }; - function ba(e, t) { - if (((typeof t != "string" || t === "") && (t = "utf8"), !A.isEncoding(t))) - throw new TypeError("Unknown encoding: " + t); - let r = di(e, t) | 0, - n = xe(r), - i = n.write(e, t); - return (i !== r && (n = n.slice(0, i)), n); - } - function on(e) { - let t = e.length < 0 ? 0 : ln(e.length) | 0, - r = xe(t); - for (let n = 0; n < t; n += 1) r[n] = e[n] & 255; - return r; - } - function xa(e) { - if (de(e, Uint8Array)) { - let t = new Uint8Array(e); - return fi(t.buffer, t.byteOffset, t.byteLength); - } - return on(e); - } - function fi(e, t, r) { - if (t < 0 || e.byteLength < t) - throw new RangeError('"offset" is outside of buffer bounds'); - if (e.byteLength < t + (r || 0)) - throw new RangeError('"length" is outside of buffer bounds'); - let n; - return ( - t === void 0 && r === void 0 - ? (n = new Uint8Array(e)) - : r === void 0 - ? (n = new Uint8Array(e, t)) - : (n = new Uint8Array(e, t, r)), - Object.setPrototypeOf(n, A.prototype), - n - ); - } - function Pa(e) { - if (A.isBuffer(e)) { - let t = ln(e.length) | 0, - r = xe(t); - return (r.length === 0 || e.copy(r, 0, 0, t), r); - } - if (e.length !== void 0) - return typeof e.length != "number" || cn(e.length) ? xe(0) : on(e); - if (e.type === "Buffer" && Array.isArray(e.data)) return on(e.data); - } - function ln(e) { - if (e >= sr) - throw new RangeError( - "Attempt to allocate Buffer larger than maximum size: 0x" + - sr.toString(16) + - " bytes", - ); - return e | 0; - } - function va(e) { - return (+e != e && (e = 0), A.alloc(+e)); - } - A.isBuffer = function (e) { - return e != null && e._isBuffer === !0 && e !== A.prototype; - }; - A.compare = function (e, t) { - if ( - (de(e, Uint8Array) && (e = A.from(e, e.offset, e.byteLength)), - de(t, Uint8Array) && (t = A.from(t, t.offset, t.byteLength)), - !A.isBuffer(e) || !A.isBuffer(t)) - ) - throw new TypeError( - 'The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array', - ); - if (e === t) return 0; - let r = e.length, - n = t.length; - for (let i = 0, o = Math.min(r, n); i < o; ++i) - if (e[i] !== t[i]) { - ((r = e[i]), (n = t[i])); - break; - } - return r < n ? -1 : n < r ? 1 : 0; - }; - A.isEncoding = function (e) { - switch (String(e).toLowerCase()) { - case "hex": - case "utf8": - case "utf-8": - case "ascii": - case "latin1": - case "binary": - case "base64": - case "ucs2": - case "ucs-2": - case "utf16le": - case "utf-16le": - return !0; - default: - return !1; - } - }; - A.concat = function (e, t) { - if (!Array.isArray(e)) - throw new TypeError('"list" argument must be an Array of Buffers'); - if (e.length === 0) return A.alloc(0); - let r; - if (t === void 0) for (t = 0, r = 0; r < e.length; ++r) t += e[r].length; - let n = A.allocUnsafe(t), - i = 0; - for (r = 0; r < e.length; ++r) { - let o = e[r]; - if (de(o, Uint8Array)) - i + o.length > n.length - ? (A.isBuffer(o) || (o = A.from(o)), o.copy(n, i)) - : Uint8Array.prototype.set.call(n, o, i); - else if (A.isBuffer(o)) o.copy(n, i); - else throw new TypeError('"list" argument must be an Array of Buffers'); - i += o.length; - } - return n; - }; - function di(e, t) { - if (A.isBuffer(e)) return e.length; - if (ArrayBuffer.isView(e) || de(e, ArrayBuffer)) return e.byteLength; - if (typeof e != "string") - throw new TypeError( - 'The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type ' + - typeof e, - ); - let r = e.length, - n = arguments.length > 2 && arguments[2] === !0; - if (!n && r === 0) return 0; - let i = !1; - for (;;) - switch (t) { - case "ascii": - case "latin1": - case "binary": - return r; - case "utf8": - case "utf-8": - return sn(e).length; - case "ucs2": - case "ucs-2": - case "utf16le": - case "utf-16le": - return r * 2; - case "hex": - return r >>> 1; - case "base64": - return vi(e).length; - default: - if (i) return n ? -1 : sn(e).length; - ((t = ("" + t).toLowerCase()), (i = !0)); - } - } - A.byteLength = di; - function Ta(e, t, r) { - let n = !1; - if ( - ((t === void 0 || t < 0) && (t = 0), - t > this.length || - ((r === void 0 || r > this.length) && (r = this.length), r <= 0) || - ((r >>>= 0), (t >>>= 0), r <= t)) - ) - return ""; - for (e || (e = "utf8"); ; ) - switch (e) { - case "hex": - return _a(this, t, r); - case "utf8": - case "utf-8": - return hi(this, t, r); - case "ascii": - return Da(this, t, r); - case "latin1": - case "binary": - return Ma(this, t, r); - case "base64": - return Oa(this, t, r); - case "ucs2": - case "ucs-2": - case "utf16le": - case "utf-16le": - return Na(this, t, r); - default: - if (n) throw new TypeError("Unknown encoding: " + e); - ((e = (e + "").toLowerCase()), (n = !0)); - } - } - A.prototype._isBuffer = !0; - function Le(e, t, r) { - let n = e[t]; - ((e[t] = e[r]), (e[r] = n)); - } - A.prototype.swap16 = function () { - let e = this.length; - if (e % 2 !== 0) - throw new RangeError("Buffer size must be a multiple of 16-bits"); - for (let t = 0; t < e; t += 2) Le(this, t, t + 1); - return this; - }; - A.prototype.swap32 = function () { - let e = this.length; - if (e % 4 !== 0) - throw new RangeError("Buffer size must be a multiple of 32-bits"); - for (let t = 0; t < e; t += 4) (Le(this, t, t + 3), Le(this, t + 1, t + 2)); - return this; - }; - A.prototype.swap64 = function () { - let e = this.length; - if (e % 8 !== 0) - throw new RangeError("Buffer size must be a multiple of 64-bits"); - for (let t = 0; t < e; t += 8) - (Le(this, t, t + 7), - Le(this, t + 1, t + 6), - Le(this, t + 2, t + 5), - Le(this, t + 3, t + 4)); - return this; - }; - A.prototype.toString = function () { - let e = this.length; - return e === 0 - ? "" - : arguments.length === 0 - ? hi(this, 0, e) - : Ta.apply(this, arguments); - }; - A.prototype.toLocaleString = A.prototype.toString; - A.prototype.equals = function (e) { - if (!A.isBuffer(e)) throw new TypeError("Argument must be a Buffer"); - return this === e ? !0 : A.compare(this, e) === 0; - }; - A.prototype.inspect = function () { - let e = "", - t = ze.INSPECT_MAX_BYTES; - return ( - (e = this.toString("hex", 0, t) - .replace(/(.{2})/g, "$1 ") - .trim()), - this.length > t && (e += " ... "), - "" - ); - }; - si && (A.prototype[si] = A.prototype.inspect); - A.prototype.compare = function (e, t, r, n, i) { - if ( - (de(e, Uint8Array) && (e = A.from(e, e.offset, e.byteLength)), - !A.isBuffer(e)) - ) - throw new TypeError( - 'The "target" argument must be one of type Buffer or Uint8Array. Received type ' + - typeof e, - ); - if ( - (t === void 0 && (t = 0), - r === void 0 && (r = e ? e.length : 0), - n === void 0 && (n = 0), - i === void 0 && (i = this.length), - t < 0 || r > e.length || n < 0 || i > this.length) - ) - throw new RangeError("out of range index"); - if (n >= i && t >= r) return 0; - if (n >= i) return -1; - if (t >= r) return 1; - if (((t >>>= 0), (r >>>= 0), (n >>>= 0), (i >>>= 0), this === e)) return 0; - let o = i - n, - s = r - t, - a = Math.min(o, s), - l = this.slice(n, i), - d = e.slice(t, r); - for (let g = 0; g < a; ++g) - if (l[g] !== d[g]) { - ((o = l[g]), (s = d[g])); - break; - } - return o < s ? -1 : s < o ? 1 : 0; - }; - function gi(e, t, r, n, i) { - if (e.length === 0) return -1; - if ( - (typeof r == "string" - ? ((n = r), (r = 0)) - : r > 2147483647 - ? (r = 2147483647) - : r < -2147483648 && (r = -2147483648), - (r = +r), - cn(r) && (r = i ? 0 : e.length - 1), - r < 0 && (r = e.length + r), - r >= e.length) - ) { - if (i) return -1; - r = e.length - 1; - } else if (r < 0) - if (i) r = 0; - else return -1; - if ((typeof t == "string" && (t = A.from(t, n)), A.isBuffer(t))) - return t.length === 0 ? -1 : ai(e, t, r, n, i); - if (typeof t == "number") - return ( - (t = t & 255), - typeof Uint8Array.prototype.indexOf == "function" - ? i - ? Uint8Array.prototype.indexOf.call(e, t, r) - : Uint8Array.prototype.lastIndexOf.call(e, t, r) - : ai(e, [t], r, n, i) - ); - throw new TypeError("val must be string, number or Buffer"); - } - function ai(e, t, r, n, i) { - let o = 1, - s = e.length, - a = t.length; - if ( - n !== void 0 && - ((n = String(n).toLowerCase()), - n === "ucs2" || n === "ucs-2" || n === "utf16le" || n === "utf-16le") - ) { - if (e.length < 2 || t.length < 2) return -1; - ((o = 2), (s /= 2), (a /= 2), (r /= 2)); - } - function l(g, h) { - return o === 1 ? g[h] : g.readUInt16BE(h * o); - } - let d; - if (i) { - let g = -1; - for (d = r; d < s; d++) - if (l(e, d) === l(t, g === -1 ? 0 : d - g)) { - if ((g === -1 && (g = d), d - g + 1 === a)) return g * o; - } else (g !== -1 && (d -= d - g), (g = -1)); - } else - for (r + a > s && (r = s - a), d = r; d >= 0; d--) { - let g = !0; - for (let h = 0; h < a; h++) - if (l(e, d + h) !== l(t, h)) { - g = !1; - break; - } - if (g) return d; - } - return -1; - } - A.prototype.includes = function (e, t, r) { - return this.indexOf(e, t, r) !== -1; - }; - A.prototype.indexOf = function (e, t, r) { - return gi(this, e, t, r, !0); - }; - A.prototype.lastIndexOf = function (e, t, r) { - return gi(this, e, t, r, !1); - }; - function Aa(e, t, r, n) { - r = Number(r) || 0; - let i = e.length - r; - n ? ((n = Number(n)), n > i && (n = i)) : (n = i); - let o = t.length; - n > o / 2 && (n = o / 2); - let s; - for (s = 0; s < n; ++s) { - let a = parseInt(t.substr(s * 2, 2), 16); - if (cn(a)) return s; - e[r + s] = a; - } - return s; - } - function Ra(e, t, r, n) { - return ar(sn(t, e.length - r), e, r, n); - } - function Ca(e, t, r, n) { - return ar(Ba(t), e, r, n); - } - function Sa(e, t, r, n) { - return ar(vi(t), e, r, n); - } - function Ia(e, t, r, n) { - return ar(qa(t, e.length - r), e, r, n); - } - A.prototype.write = function (e, t, r, n) { - if (t === void 0) ((n = "utf8"), (r = this.length), (t = 0)); - else if (r === void 0 && typeof t == "string") - ((n = t), (r = this.length), (t = 0)); - else if (isFinite(t)) - ((t = t >>> 0), - isFinite(r) - ? ((r = r >>> 0), n === void 0 && (n = "utf8")) - : ((n = r), (r = void 0))); - else - throw new Error( - "Buffer.write(string, encoding, offset[, length]) is no longer supported", - ); - let i = this.length - t; - if ( - ((r === void 0 || r > i) && (r = i), - (e.length > 0 && (r < 0 || t < 0)) || t > this.length) - ) - throw new RangeError("Attempt to write outside buffer bounds"); - n || (n = "utf8"); - let o = !1; - for (;;) - switch (n) { - case "hex": - return Aa(this, e, t, r); - case "utf8": - case "utf-8": - return Ra(this, e, t, r); - case "ascii": - case "latin1": - case "binary": - return Ca(this, e, t, r); - case "base64": - return Sa(this, e, t, r); - case "ucs2": - case "ucs-2": - case "utf16le": - case "utf-16le": - return Ia(this, e, t, r); - default: - if (o) throw new TypeError("Unknown encoding: " + n); - ((n = ("" + n).toLowerCase()), (o = !0)); - } - }; - A.prototype.toJSON = function () { - return { - type: "Buffer", - data: Array.prototype.slice.call(this._arr || this, 0), - }; - }; - function Oa(e, t, r) { - return t === 0 && r === e.length - ? nn.fromByteArray(e) - : nn.fromByteArray(e.slice(t, r)); - } - function hi(e, t, r) { - r = Math.min(e.length, r); - let n = [], - i = t; - for (; i < r; ) { - let o = e[i], - s = null, - a = o > 239 ? 4 : o > 223 ? 3 : o > 191 ? 2 : 1; - if (i + a <= r) { - let l, d, g, h; - switch (a) { - case 1: - o < 128 && (s = o); - break; - case 2: - ((l = e[i + 1]), - (l & 192) === 128 && - ((h = ((o & 31) << 6) | (l & 63)), h > 127 && (s = h))); - break; - case 3: - ((l = e[i + 1]), - (d = e[i + 2]), - (l & 192) === 128 && - (d & 192) === 128 && - ((h = ((o & 15) << 12) | ((l & 63) << 6) | (d & 63)), - h > 2047 && (h < 55296 || h > 57343) && (s = h))); - break; - case 4: - ((l = e[i + 1]), - (d = e[i + 2]), - (g = e[i + 3]), - (l & 192) === 128 && - (d & 192) === 128 && - (g & 192) === 128 && - ((h = - ((o & 15) << 18) | - ((l & 63) << 12) | - ((d & 63) << 6) | - (g & 63)), - h > 65535 && h < 1114112 && (s = h))); - } - } - (s === null - ? ((s = 65533), (a = 1)) - : s > 65535 && - ((s -= 65536), - n.push(((s >>> 10) & 1023) | 55296), - (s = 56320 | (s & 1023))), - n.push(s), - (i += a)); - } - return ka(n); - } - var li = 4096; - function ka(e) { - let t = e.length; - if (t <= li) return String.fromCharCode.apply(String, e); - let r = "", - n = 0; - for (; n < t; ) - r += String.fromCharCode.apply(String, e.slice(n, (n += li))); - return r; - } - function Da(e, t, r) { - let n = ""; - r = Math.min(e.length, r); - for (let i = t; i < r; ++i) n += String.fromCharCode(e[i] & 127); - return n; - } - function Ma(e, t, r) { - let n = ""; - r = Math.min(e.length, r); - for (let i = t; i < r; ++i) n += String.fromCharCode(e[i]); - return n; - } - function _a(e, t, r) { - let n = e.length; - ((!t || t < 0) && (t = 0), (!r || r < 0 || r > n) && (r = n)); - let i = ""; - for (let o = t; o < r; ++o) i += Va[e[o]]; - return i; - } - function Na(e, t, r) { - let n = e.slice(t, r), - i = ""; - for (let o = 0; o < n.length - 1; o += 2) - i += String.fromCharCode(n[o] + n[o + 1] * 256); - return i; - } - A.prototype.slice = function (e, t) { - let r = this.length; - ((e = ~~e), - (t = t === void 0 ? r : ~~t), - e < 0 ? ((e += r), e < 0 && (e = 0)) : e > r && (e = r), - t < 0 ? ((t += r), t < 0 && (t = 0)) : t > r && (t = r), - t < e && (t = e)); - let n = this.subarray(e, t); - return (Object.setPrototypeOf(n, A.prototype), n); - }; - function W(e, t, r) { - if (e % 1 !== 0 || e < 0) throw new RangeError("offset is not uint"); - if (e + t > r) - throw new RangeError("Trying to access beyond buffer length"); - } - A.prototype.readUintLE = A.prototype.readUIntLE = function (e, t, r) { - ((e = e >>> 0), (t = t >>> 0), r || W(e, t, this.length)); - let n = this[e], - i = 1, - o = 0; - for (; ++o < t && (i *= 256); ) n += this[e + o] * i; - return n; - }; - A.prototype.readUintBE = A.prototype.readUIntBE = function (e, t, r) { - ((e = e >>> 0), (t = t >>> 0), r || W(e, t, this.length)); - let n = this[e + --t], - i = 1; - for (; t > 0 && (i *= 256); ) n += this[e + --t] * i; - return n; - }; - A.prototype.readUint8 = A.prototype.readUInt8 = function (e, t) { - return ((e = e >>> 0), t || W(e, 1, this.length), this[e]); - }; - A.prototype.readUint16LE = A.prototype.readUInt16LE = function (e, t) { - return ( - (e = e >>> 0), - t || W(e, 2, this.length), - this[e] | (this[e + 1] << 8) - ); - }; - A.prototype.readUint16BE = A.prototype.readUInt16BE = function (e, t) { - return ( - (e = e >>> 0), - t || W(e, 2, this.length), - (this[e] << 8) | this[e + 1] - ); - }; - A.prototype.readUint32LE = A.prototype.readUInt32LE = function (e, t) { - return ( - (e = e >>> 0), - t || W(e, 4, this.length), - (this[e] | (this[e + 1] << 8) | (this[e + 2] << 16)) + - this[e + 3] * 16777216 - ); - }; - A.prototype.readUint32BE = A.prototype.readUInt32BE = function (e, t) { - return ( - (e = e >>> 0), - t || W(e, 4, this.length), - this[e] * 16777216 + - ((this[e + 1] << 16) | (this[e + 2] << 8) | this[e + 3]) - ); - }; - A.prototype.readBigUInt64LE = Re(function (e) { - ((e = e >>> 0), He(e, "offset")); - let t = this[e], - r = this[e + 7]; - (t === void 0 || r === void 0) && xt(e, this.length - 8); - let n = t + this[++e] * 2 ** 8 + this[++e] * 2 ** 16 + this[++e] * 2 ** 24, - i = this[++e] + this[++e] * 2 ** 8 + this[++e] * 2 ** 16 + r * 2 ** 24; - return BigInt(n) + (BigInt(i) << BigInt(32)); - }); - A.prototype.readBigUInt64BE = Re(function (e) { - ((e = e >>> 0), He(e, "offset")); - let t = this[e], - r = this[e + 7]; - (t === void 0 || r === void 0) && xt(e, this.length - 8); - let n = t * 2 ** 24 + this[++e] * 2 ** 16 + this[++e] * 2 ** 8 + this[++e], - i = this[++e] * 2 ** 24 + this[++e] * 2 ** 16 + this[++e] * 2 ** 8 + r; - return (BigInt(n) << BigInt(32)) + BigInt(i); - }); - A.prototype.readIntLE = function (e, t, r) { - ((e = e >>> 0), (t = t >>> 0), r || W(e, t, this.length)); - let n = this[e], - i = 1, - o = 0; - for (; ++o < t && (i *= 256); ) n += this[e + o] * i; - return ((i *= 128), n >= i && (n -= Math.pow(2, 8 * t)), n); - }; - A.prototype.readIntBE = function (e, t, r) { - ((e = e >>> 0), (t = t >>> 0), r || W(e, t, this.length)); - let n = t, - i = 1, - o = this[e + --n]; - for (; n > 0 && (i *= 256); ) o += this[e + --n] * i; - return ((i *= 128), o >= i && (o -= Math.pow(2, 8 * t)), o); - }; - A.prototype.readInt8 = function (e, t) { - return ( - (e = e >>> 0), - t || W(e, 1, this.length), - this[e] & 128 ? (255 - this[e] + 1) * -1 : this[e] - ); - }; - A.prototype.readInt16LE = function (e, t) { - ((e = e >>> 0), t || W(e, 2, this.length)); - let r = this[e] | (this[e + 1] << 8); - return r & 32768 ? r | 4294901760 : r; - }; - A.prototype.readInt16BE = function (e, t) { - ((e = e >>> 0), t || W(e, 2, this.length)); - let r = this[e + 1] | (this[e] << 8); - return r & 32768 ? r | 4294901760 : r; - }; - A.prototype.readInt32LE = function (e, t) { - return ( - (e = e >>> 0), - t || W(e, 4, this.length), - this[e] | (this[e + 1] << 8) | (this[e + 2] << 16) | (this[e + 3] << 24) - ); - }; - A.prototype.readInt32BE = function (e, t) { - return ( - (e = e >>> 0), - t || W(e, 4, this.length), - (this[e] << 24) | (this[e + 1] << 16) | (this[e + 2] << 8) | this[e + 3] - ); - }; - A.prototype.readBigInt64LE = Re(function (e) { - ((e = e >>> 0), He(e, "offset")); - let t = this[e], - r = this[e + 7]; - (t === void 0 || r === void 0) && xt(e, this.length - 8); - let n = - this[e + 4] + this[e + 5] * 2 ** 8 + this[e + 6] * 2 ** 16 + (r << 24); - return ( - (BigInt(n) << BigInt(32)) + - BigInt(t + this[++e] * 2 ** 8 + this[++e] * 2 ** 16 + this[++e] * 2 ** 24) - ); - }); - A.prototype.readBigInt64BE = Re(function (e) { - ((e = e >>> 0), He(e, "offset")); - let t = this[e], - r = this[e + 7]; - (t === void 0 || r === void 0) && xt(e, this.length - 8); - let n = (t << 24) + this[++e] * 2 ** 16 + this[++e] * 2 ** 8 + this[++e]; - return ( - (BigInt(n) << BigInt(32)) + - BigInt(this[++e] * 2 ** 24 + this[++e] * 2 ** 16 + this[++e] * 2 ** 8 + r) - ); - }); - A.prototype.readFloatLE = function (e, t) { - return ( - (e = e >>> 0), - t || W(e, 4, this.length), - We.read(this, e, !0, 23, 4) - ); - }; - A.prototype.readFloatBE = function (e, t) { - return ( - (e = e >>> 0), - t || W(e, 4, this.length), - We.read(this, e, !1, 23, 4) - ); - }; - A.prototype.readDoubleLE = function (e, t) { - return ( - (e = e >>> 0), - t || W(e, 8, this.length), - We.read(this, e, !0, 52, 8) - ); - }; - A.prototype.readDoubleBE = function (e, t) { - return ( - (e = e >>> 0), - t || W(e, 8, this.length), - We.read(this, e, !1, 52, 8) - ); - }; - function re(e, t, r, n, i, o) { - if (!A.isBuffer(e)) - throw new TypeError('"buffer" argument must be a Buffer instance'); - if (t > i || t < o) - throw new RangeError('"value" argument is out of bounds'); - if (r + n > e.length) throw new RangeError("Index out of range"); - } - A.prototype.writeUintLE = A.prototype.writeUIntLE = function (e, t, r, n) { - if (((e = +e), (t = t >>> 0), (r = r >>> 0), !n)) { - let s = Math.pow(2, 8 * r) - 1; - re(this, e, t, r, s, 0); - } - let i = 1, - o = 0; - for (this[t] = e & 255; ++o < r && (i *= 256); ) - this[t + o] = (e / i) & 255; - return t + r; - }; - A.prototype.writeUintBE = A.prototype.writeUIntBE = function (e, t, r, n) { - if (((e = +e), (t = t >>> 0), (r = r >>> 0), !n)) { - let s = Math.pow(2, 8 * r) - 1; - re(this, e, t, r, s, 0); - } - let i = r - 1, - o = 1; - for (this[t + i] = e & 255; --i >= 0 && (o *= 256); ) - this[t + i] = (e / o) & 255; - return t + r; - }; - A.prototype.writeUint8 = A.prototype.writeUInt8 = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || re(this, e, t, 1, 255, 0), - (this[t] = e & 255), - t + 1 - ); - }; - A.prototype.writeUint16LE = A.prototype.writeUInt16LE = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || re(this, e, t, 2, 65535, 0), - (this[t] = e & 255), - (this[t + 1] = e >>> 8), - t + 2 - ); - }; - A.prototype.writeUint16BE = A.prototype.writeUInt16BE = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || re(this, e, t, 2, 65535, 0), - (this[t] = e >>> 8), - (this[t + 1] = e & 255), - t + 2 - ); - }; - A.prototype.writeUint32LE = A.prototype.writeUInt32LE = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || re(this, e, t, 4, 4294967295, 0), - (this[t + 3] = e >>> 24), - (this[t + 2] = e >>> 16), - (this[t + 1] = e >>> 8), - (this[t] = e & 255), - t + 4 - ); - }; - A.prototype.writeUint32BE = A.prototype.writeUInt32BE = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || re(this, e, t, 4, 4294967295, 0), - (this[t] = e >>> 24), - (this[t + 1] = e >>> 16), - (this[t + 2] = e >>> 8), - (this[t + 3] = e & 255), - t + 4 - ); - }; - function yi(e, t, r, n, i) { - Pi(t, n, i, e, r, 7); - let o = Number(t & BigInt(4294967295)); - ((e[r++] = o), - (o = o >> 8), - (e[r++] = o), - (o = o >> 8), - (e[r++] = o), - (o = o >> 8), - (e[r++] = o)); - let s = Number((t >> BigInt(32)) & BigInt(4294967295)); - return ( - (e[r++] = s), - (s = s >> 8), - (e[r++] = s), - (s = s >> 8), - (e[r++] = s), - (s = s >> 8), - (e[r++] = s), - r - ); - } - function wi(e, t, r, n, i) { - Pi(t, n, i, e, r, 7); - let o = Number(t & BigInt(4294967295)); - ((e[r + 7] = o), - (o = o >> 8), - (e[r + 6] = o), - (o = o >> 8), - (e[r + 5] = o), - (o = o >> 8), - (e[r + 4] = o)); - let s = Number((t >> BigInt(32)) & BigInt(4294967295)); - return ( - (e[r + 3] = s), - (s = s >> 8), - (e[r + 2] = s), - (s = s >> 8), - (e[r + 1] = s), - (s = s >> 8), - (e[r] = s), - r + 8 - ); - } - A.prototype.writeBigUInt64LE = Re(function (e, t = 0) { - return yi(this, e, t, BigInt(0), BigInt("0xffffffffffffffff")); - }); - A.prototype.writeBigUInt64BE = Re(function (e, t = 0) { - return wi(this, e, t, BigInt(0), BigInt("0xffffffffffffffff")); - }); - A.prototype.writeIntLE = function (e, t, r, n) { - if (((e = +e), (t = t >>> 0), !n)) { - let a = Math.pow(2, 8 * r - 1); - re(this, e, t, r, a - 1, -a); - } - let i = 0, - o = 1, - s = 0; - for (this[t] = e & 255; ++i < r && (o *= 256); ) - (e < 0 && s === 0 && this[t + i - 1] !== 0 && (s = 1), - (this[t + i] = (((e / o) >> 0) - s) & 255)); - return t + r; - }; - A.prototype.writeIntBE = function (e, t, r, n) { - if (((e = +e), (t = t >>> 0), !n)) { - let a = Math.pow(2, 8 * r - 1); - re(this, e, t, r, a - 1, -a); - } - let i = r - 1, - o = 1, - s = 0; - for (this[t + i] = e & 255; --i >= 0 && (o *= 256); ) - (e < 0 && s === 0 && this[t + i + 1] !== 0 && (s = 1), - (this[t + i] = (((e / o) >> 0) - s) & 255)); - return t + r; - }; - A.prototype.writeInt8 = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || re(this, e, t, 1, 127, -128), - e < 0 && (e = 255 + e + 1), - (this[t] = e & 255), - t + 1 - ); - }; - A.prototype.writeInt16LE = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || re(this, e, t, 2, 32767, -32768), - (this[t] = e & 255), - (this[t + 1] = e >>> 8), - t + 2 - ); - }; - A.prototype.writeInt16BE = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || re(this, e, t, 2, 32767, -32768), - (this[t] = e >>> 8), - (this[t + 1] = e & 255), - t + 2 - ); - }; - A.prototype.writeInt32LE = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || re(this, e, t, 4, 2147483647, -2147483648), - (this[t] = e & 255), - (this[t + 1] = e >>> 8), - (this[t + 2] = e >>> 16), - (this[t + 3] = e >>> 24), - t + 4 - ); - }; - A.prototype.writeInt32BE = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || re(this, e, t, 4, 2147483647, -2147483648), - e < 0 && (e = 4294967295 + e + 1), - (this[t] = e >>> 24), - (this[t + 1] = e >>> 16), - (this[t + 2] = e >>> 8), - (this[t + 3] = e & 255), - t + 4 - ); - }; - A.prototype.writeBigInt64LE = Re(function (e, t = 0) { - return yi( - this, - e, - t, - -BigInt("0x8000000000000000"), - BigInt("0x7fffffffffffffff"), - ); - }); - A.prototype.writeBigInt64BE = Re(function (e, t = 0) { - return wi( - this, - e, - t, - -BigInt("0x8000000000000000"), - BigInt("0x7fffffffffffffff"), - ); - }); - function Ei(e, t, r, n, i, o) { - if (r + n > e.length) throw new RangeError("Index out of range"); - if (r < 0) throw new RangeError("Index out of range"); - } - function bi(e, t, r, n, i) { - return ( - (t = +t), - (r = r >>> 0), - i || Ei(e, t, r, 4, 34028234663852886e22, -34028234663852886e22), - We.write(e, t, r, n, 23, 4), - r + 4 - ); - } - A.prototype.writeFloatLE = function (e, t, r) { - return bi(this, e, t, !0, r); - }; - A.prototype.writeFloatBE = function (e, t, r) { - return bi(this, e, t, !1, r); - }; - function xi(e, t, r, n, i) { - return ( - (t = +t), - (r = r >>> 0), - i || Ei(e, t, r, 8, 17976931348623157e292, -17976931348623157e292), - We.write(e, t, r, n, 52, 8), - r + 8 - ); - } - A.prototype.writeDoubleLE = function (e, t, r) { - return xi(this, e, t, !0, r); - }; - A.prototype.writeDoubleBE = function (e, t, r) { - return xi(this, e, t, !1, r); - }; - A.prototype.copy = function (e, t, r, n) { - if (!A.isBuffer(e)) throw new TypeError("argument should be a Buffer"); - if ( - (r || (r = 0), - !n && n !== 0 && (n = this.length), - t >= e.length && (t = e.length), - t || (t = 0), - n > 0 && n < r && (n = r), - n === r || e.length === 0 || this.length === 0) - ) - return 0; - if (t < 0) throw new RangeError("targetStart out of bounds"); - if (r < 0 || r >= this.length) throw new RangeError("Index out of range"); - if (n < 0) throw new RangeError("sourceEnd out of bounds"); - (n > this.length && (n = this.length), - e.length - t < n - r && (n = e.length - t + r)); - let i = n - r; - return ( - this === e && typeof Uint8Array.prototype.copyWithin == "function" - ? this.copyWithin(t, r, n) - : Uint8Array.prototype.set.call(e, this.subarray(r, n), t), - i - ); - }; - A.prototype.fill = function (e, t, r, n) { - if (typeof e == "string") { - if ( - (typeof t == "string" - ? ((n = t), (t = 0), (r = this.length)) - : typeof r == "string" && ((n = r), (r = this.length)), - n !== void 0 && typeof n != "string") - ) - throw new TypeError("encoding must be a string"); - if (typeof n == "string" && !A.isEncoding(n)) - throw new TypeError("Unknown encoding: " + n); - if (e.length === 1) { - let o = e.charCodeAt(0); - ((n === "utf8" && o < 128) || n === "latin1") && (e = o); - } - } else - typeof e == "number" - ? (e = e & 255) - : typeof e == "boolean" && (e = Number(e)); - if (t < 0 || this.length < t || this.length < r) - throw new RangeError("Out of range index"); - if (r <= t) return this; - ((t = t >>> 0), (r = r === void 0 ? this.length : r >>> 0), e || (e = 0)); - let i; - if (typeof e == "number") for (i = t; i < r; ++i) this[i] = e; - else { - let o = A.isBuffer(e) ? e : A.from(e, n), - s = o.length; - if (s === 0) - throw new TypeError( - 'The value "' + e + '" is invalid for argument "value"', - ); - for (i = 0; i < r - t; ++i) this[i + t] = o[i % s]; - } - return this; - }; - var Ke = {}; - function un(e, t, r) { - Ke[e] = class extends r { - constructor() { - (super(), - Object.defineProperty(this, "message", { - value: t.apply(this, arguments), - writable: !0, - configurable: !0, - }), - (this.name = `${this.name} [${e}]`), - this.stack, - delete this.name); - } - get code() { - return e; - } - set code(n) { - Object.defineProperty(this, "code", { - configurable: !0, - enumerable: !0, - value: n, - writable: !0, - }); - } - toString() { - return `${this.name} [${e}]: ${this.message}`; - } - }; - } - un( - "ERR_BUFFER_OUT_OF_BOUNDS", - function (e) { - return e - ? `${e} is outside of buffer bounds` - : "Attempt to access memory outside buffer bounds"; - }, - RangeError, - ); - un( - "ERR_INVALID_ARG_TYPE", - function (e, t) { - return `The "${e}" argument must be of type number. Received type ${typeof t}`; - }, - TypeError, - ); - un( - "ERR_OUT_OF_RANGE", - function (e, t, r) { - let n = `The value of "${e}" is out of range.`, - i = r; - return ( - Number.isInteger(r) && Math.abs(r) > 2 ** 32 - ? (i = ui(String(r))) - : typeof r == "bigint" && - ((i = String(r)), - (r > BigInt(2) ** BigInt(32) || r < -(BigInt(2) ** BigInt(32))) && - (i = ui(i)), - (i += "n")), - (n += ` It must be ${t}. Received ${i}`), - n - ); - }, - RangeError, - ); - function ui(e) { - let t = "", - r = e.length, - n = e[0] === "-" ? 1 : 0; - for (; r >= n + 4; r -= 3) t = `_${e.slice(r - 3, r)}${t}`; - return `${e.slice(0, r)}${t}`; - } - function Fa(e, t, r) { - (He(t, "offset"), - (e[t] === void 0 || e[t + r] === void 0) && xt(t, e.length - (r + 1))); - } - function Pi(e, t, r, n, i, o) { - if (e > r || e < t) { - let s = typeof t == "bigint" ? "n" : "", - a; - throw ( - o > 3 - ? t === 0 || t === BigInt(0) - ? (a = `>= 0${s} and < 2${s} ** ${(o + 1) * 8}${s}`) - : (a = `>= -(2${s} ** ${(o + 1) * 8 - 1}${s}) and < 2 ** ${(o + 1) * 8 - 1}${s}`) - : (a = `>= ${t}${s} and <= ${r}${s}`), - new Ke.ERR_OUT_OF_RANGE("value", a, e) - ); - } - Fa(n, i, o); - } - function He(e, t) { - if (typeof e != "number") throw new Ke.ERR_INVALID_ARG_TYPE(t, "number", e); - } - function xt(e, t, r) { - throw Math.floor(e) !== e - ? (He(e, r), new Ke.ERR_OUT_OF_RANGE(r || "offset", "an integer", e)) - : t < 0 - ? new Ke.ERR_BUFFER_OUT_OF_BOUNDS() - : new Ke.ERR_OUT_OF_RANGE( - r || "offset", - `>= ${r ? 1 : 0} and <= ${t}`, - e, - ); - } - var La = /[^+/0-9A-Za-z-_]/g; - function Ua(e) { - if (((e = e.split("=")[0]), (e = e.trim().replace(La, "")), e.length < 2)) - return ""; - for (; e.length % 4 !== 0; ) e = e + "="; - return e; - } - function sn(e, t) { - t = t || 1 / 0; - let r, - n = e.length, - i = null, - o = []; - for (let s = 0; s < n; ++s) { - if (((r = e.charCodeAt(s)), r > 55295 && r < 57344)) { - if (!i) { - if (r > 56319) { - (t -= 3) > -1 && o.push(239, 191, 189); - continue; - } else if (s + 1 === n) { - (t -= 3) > -1 && o.push(239, 191, 189); - continue; - } - i = r; - continue; - } - if (r < 56320) { - ((t -= 3) > -1 && o.push(239, 191, 189), (i = r)); - continue; - } - r = (((i - 55296) << 10) | (r - 56320)) + 65536; - } else i && (t -= 3) > -1 && o.push(239, 191, 189); - if (((i = null), r < 128)) { - if ((t -= 1) < 0) break; - o.push(r); - } else if (r < 2048) { - if ((t -= 2) < 0) break; - o.push((r >> 6) | 192, (r & 63) | 128); - } else if (r < 65536) { - if ((t -= 3) < 0) break; - o.push((r >> 12) | 224, ((r >> 6) & 63) | 128, (r & 63) | 128); - } else if (r < 1114112) { - if ((t -= 4) < 0) break; - o.push( - (r >> 18) | 240, - ((r >> 12) & 63) | 128, - ((r >> 6) & 63) | 128, - (r & 63) | 128, - ); - } else throw new Error("Invalid code point"); - } - return o; - } - function Ba(e) { - let t = []; - for (let r = 0; r < e.length; ++r) t.push(e.charCodeAt(r) & 255); - return t; - } - function qa(e, t) { - let r, - n, - i, - o = []; - for (let s = 0; s < e.length && !((t -= 2) < 0); ++s) - ((r = e.charCodeAt(s)), - (n = r >> 8), - (i = r % 256), - o.push(i), - o.push(n)); - return o; - } - function vi(e) { - return nn.toByteArray(Ua(e)); - } - function ar(e, t, r, n) { - let i; - for (i = 0; i < n && !(i + r >= t.length || i >= e.length); ++i) - t[i + r] = e[i]; - return i; - } - function de(e, t) { - return ( - e instanceof t || - (e != null && - e.constructor != null && - e.constructor.name != null && - e.constructor.name === t.name) - ); - } - function cn(e) { - return e !== e; - } - var Va = (function () { - let e = "0123456789abcdef", - t = new Array(256); - for (let r = 0; r < 16; ++r) { - let n = r * 16; - for (let i = 0; i < 16; ++i) t[n + i] = e[r] + e[i]; - } - return t; - })(); - function Re(e) { - return typeof BigInt > "u" ? $a : e; - } - function $a() { - throw new Error("BigInt not supported"); - } -}); -var w, - f = fe(() => { - "use strict"; - w = Qe(Ti()); - }); -function Wa() { - return !1; -} -function fn() { - return { - dev: 0, - ino: 0, - mode: 0, - nlink: 0, - uid: 0, - gid: 0, - rdev: 0, - size: 0, - blksize: 0, - blocks: 0, - atimeMs: 0, - mtimeMs: 0, - ctimeMs: 0, - birthtimeMs: 0, - atime: new Date(), - mtime: new Date(), - ctime: new Date(), - birthtime: new Date(), - }; -} -function Ha() { - return fn(); -} -function za() { - return []; -} -function Ya(e) { - e(null, []); -} -function Za() { - return ""; -} -function Xa() { - return ""; -} -function el() {} -function tl() {} -function rl() {} -function nl() {} -function il() {} -function ol() {} -function sl() {} -function al() {} -function ll() { - return { close: () => {}, on: () => {}, removeAllListeners: () => {} }; -} -function ul(e, t) { - t(null, fn()); -} -var cl, - pl, - ji, - Gi = fe(() => { - "use strict"; - f(); - u(); - c(); - p(); - m(); - ((cl = {}), - (pl = { - existsSync: Wa, - lstatSync: fn, - stat: ul, - statSync: Ha, - readdirSync: za, - readdir: Ya, - readlinkSync: Za, - realpathSync: Xa, - chmodSync: el, - renameSync: tl, - mkdirSync: rl, - rmdirSync: nl, - rmSync: il, - unlinkSync: ol, - watchFile: sl, - unwatchFile: al, - watch: ll, - promises: cl, - }), - (ji = pl)); - }); -var Ji = Je((mf, ml) => { - ml.exports = { - name: "@prisma/internals", - version: "6.19.2", - description: "This package is intended for Prisma's internal use", - main: "dist/index.js", - types: "dist/index.d.ts", - repository: { - type: "git", - url: "https://github.com/prisma/prisma.git", - directory: "packages/internals", - }, - homepage: "https://www.prisma.io", - author: "Tim Suchanek ", - bugs: "https://github.com/prisma/prisma/issues", - license: "Apache-2.0", - scripts: { - dev: "DEV=true tsx helpers/build.ts", - build: "tsx helpers/build.ts", - test: "dotenv -e ../../.db.env -- jest --silent", - prepublishOnly: "pnpm run build", - }, - files: [ - "README.md", - "dist", - "!**/libquery_engine*", - "!dist/get-generators/engines/*", - "scripts", - ], - devDependencies: { - "@babel/helper-validator-identifier": "7.25.9", - "@opentelemetry/api": "1.9.0", - "@swc/core": "1.11.5", - "@swc/jest": "0.2.37", - "@types/babel__helper-validator-identifier": "7.15.2", - "@types/jest": "29.5.14", - "@types/node": "18.19.76", - "@types/resolve": "1.20.6", - archiver: "6.0.2", - "checkpoint-client": "1.1.33", - "cli-truncate": "4.0.0", - dotenv: "16.5.0", - empathic: "2.0.0", - "escape-string-regexp": "5.0.0", - execa: "8.0.1", - "fast-glob": "3.3.3", - "find-up": "7.0.0", - "fp-ts": "2.16.9", - "fs-extra": "11.3.0", - "global-directory": "4.0.0", - globby: "11.1.0", - "identifier-regex": "1.0.0", - "indent-string": "4.0.0", - "is-windows": "1.0.2", - "is-wsl": "3.1.0", - jest: "29.7.0", - "jest-junit": "16.0.0", - kleur: "4.1.5", - "mock-stdin": "1.0.0", - "new-github-issue-url": "0.2.1", - "node-fetch": "3.3.2", - "npm-packlist": "5.1.3", - open: "7.4.2", - "p-map": "4.0.0", - resolve: "1.22.10", - "string-width": "7.2.0", - "strip-indent": "4.0.0", - "temp-dir": "2.0.0", - tempy: "1.0.1", - "terminal-link": "4.0.0", - tmp: "0.2.3", - "ts-pattern": "5.6.2", - "ts-toolbelt": "9.6.0", - typescript: "5.4.5", - yarn: "1.22.22", - }, - dependencies: { - "@prisma/config": "workspace:*", - "@prisma/debug": "workspace:*", - "@prisma/dmmf": "workspace:*", - "@prisma/driver-adapter-utils": "workspace:*", - "@prisma/engines": "workspace:*", - "@prisma/fetch-engine": "workspace:*", - "@prisma/generator": "workspace:*", - "@prisma/generator-helper": "workspace:*", - "@prisma/get-platform": "workspace:*", - "@prisma/prisma-schema-wasm": - "7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7", - "@prisma/schema-engine-wasm": - "7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7", - "@prisma/schema-files-loader": "workspace:*", - arg: "5.0.2", - prompts: "2.4.2", - }, - peerDependencies: { typescript: ">=5.1.0" }, - peerDependenciesMeta: { typescript: { optional: !0 } }, - sideEffects: !1, - }; -}); -function dl(...e) { - return e.join("/"); -} -function gl(...e) { - return e.join("/"); -} -function hl(e) { - let t = Qi(e), - r = Ki(e), - [n, i] = t.split("."); - return { root: "/", dir: r, base: t, ext: i, name: n }; -} -function Qi(e) { - let t = e.split("/"); - return t[t.length - 1]; -} -function Ki(e) { - return e.split("/").slice(0, -1).join("/"); -} -function wl(e) { - let t = e.split("/").filter((i) => i !== "" && i !== "."), - r = []; - for (let i of t) i === ".." ? r.pop() : r.push(i); - let n = r.join("/"); - return e.startsWith("/") ? "/" + n : n; -} -var Wi, - yl, - El, - bl, - pr, - Hi = fe(() => { - "use strict"; - f(); - u(); - c(); - p(); - m(); - ((Wi = "/"), (yl = ":")); - ((El = { sep: Wi }), - (bl = { - basename: Qi, - delimiter: yl, - dirname: Ki, - join: gl, - normalize: wl, - parse: hl, - posix: El, - resolve: dl, - sep: Wi, - }), - (pr = bl)); - }); -var gn = Je((kf, vl) => { - vl.exports = { - name: "@prisma/engines-version", - version: "7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7", - main: "index.js", - types: "index.d.ts", - license: "Apache-2.0", - author: "Tim Suchanek ", - prisma: { enginesVersion: "c2990dca591cba766e3b7ef5d9e8a84796e47ab7" }, - repository: { - type: "git", - url: "https://github.com/prisma/engines-wrapper.git", - directory: "packages/engines-version", - }, - devDependencies: { "@types/node": "18.19.76", typescript: "4.9.5" }, - files: ["index.js", "index.d.ts"], - scripts: { build: "tsc -d" }, - }; -}); -var zi = Je((mr) => { - "use strict"; - f(); - u(); - c(); - p(); - m(); - Object.defineProperty(mr, "__esModule", { value: !0 }); - mr.enginesVersion = void 0; - mr.enginesVersion = gn().prisma.enginesVersion; -}); -var Xi = Je((Gf, Zi) => { - "use strict"; - f(); - u(); - c(); - p(); - m(); - Zi.exports = (e, t = 1, r) => { - if ( - ((r = { indent: " ", includeEmptyLines: !1, ...r }), typeof e != "string") - ) - throw new TypeError( - `Expected \`input\` to be a \`string\`, got \`${typeof e}\``, - ); - if (typeof t != "number") - throw new TypeError( - `Expected \`count\` to be a \`number\`, got \`${typeof t}\``, - ); - if (typeof r.indent != "string") - throw new TypeError( - `Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``, - ); - if (t === 0) return e; - let n = r.includeEmptyLines ? /^/gm : /^(?!\s*$)/gm; - return e.replace(n, r.indent.repeat(t)); - }; -}); -var Sn = Je((jy, Eo) => { - "use strict"; - f(); - u(); - c(); - p(); - m(); - Eo.exports = (function () { - function e(t, r, n, i, o) { - return t < r || n < r ? (t > n ? n + 1 : t + 1) : i === o ? r : r + 1; - } - return function (t, r) { - if (t === r) return 0; - if (t.length > r.length) { - var n = t; - ((t = r), (r = n)); - } - for ( - var i = t.length, o = r.length; - i > 0 && t.charCodeAt(i - 1) === r.charCodeAt(o - 1); - ) - (i--, o--); - for (var s = 0; s < i && t.charCodeAt(s) === r.charCodeAt(s); ) s++; - if (((i -= s), (o -= s), i === 0 || o < 3)) return o; - var a = 0, - l, - d, - g, - h, - T, - I, - S, - C, - M, - F, - B, - O, - L = []; - for (l = 0; l < i; l++) (L.push(l + 1), L.push(t.charCodeAt(s + l))); - for (var oe = L.length - 1; a < o - 3; ) - for ( - M = r.charCodeAt(s + (d = a)), - F = r.charCodeAt(s + (g = a + 1)), - B = r.charCodeAt(s + (h = a + 2)), - O = r.charCodeAt(s + (T = a + 3)), - I = a += 4, - l = 0; - l < oe; - l += 2 - ) - ((S = L[l]), - (C = L[l + 1]), - (d = e(S, d, g, M, C)), - (g = e(d, g, h, F, C)), - (h = e(g, h, T, B, C)), - (I = e(h, T, I, O, C)), - (L[l] = I), - (T = h), - (h = g), - (g = d), - (d = S)); - for (; a < o; ) - for (M = r.charCodeAt(s + (d = a)), I = ++a, l = 0; l < oe; l += 2) - ((S = L[l]), (L[l] = I = e(S, d, I, M, L[l + 1])), (d = S)); - return I; - }; - })(); -}); -var To = fe(() => { - "use strict"; - f(); - u(); - c(); - p(); - m(); -}); -var Ao = fe(() => { - "use strict"; - f(); - u(); - c(); - p(); - m(); -}); -var Vr, - Qo = fe(() => { - "use strict"; - f(); - u(); - c(); - p(); - m(); - Vr = class { - events = {}; - on(t, r) { - return ( - this.events[t] || (this.events[t] = []), - this.events[t].push(r), - this - ); - } - emit(t, ...r) { - return this.events[t] - ? (this.events[t].forEach((n) => { - n(...r); - }), - !0) - : !1; - } - }; - }); -f(); -u(); -c(); -p(); -m(); -var Ci = {}; -or(Ci, { defineExtension: () => Ai, getExtensionContext: () => Ri }); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -function Ai(e) { - return typeof e == "function" ? e : (t) => t.$extends(e); -} -f(); -u(); -c(); -p(); -m(); -function Ri(e) { - return e; -} -var Ii = {}; -or(Ii, { validator: () => Si }); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -function Si(...e) { - return (t) => t; -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var pn, - Oi, - ki, - Di, - Mi = !0; -typeof y < "u" && - (({ - FORCE_COLOR: pn, - NODE_DISABLE_COLORS: Oi, - NO_COLOR: ki, - TERM: Di, - } = y.env || {}), - (Mi = y.stdout && y.stdout.isTTY)); -var ja = { - enabled: - !Oi && ki == null && Di !== "dumb" && ((pn != null && pn !== "0") || Mi), -}; -function j(e, t) { - let r = new RegExp(`\\x1b\\[${t}m`, "g"), - n = `\x1B[${e}m`, - i = `\x1B[${t}m`; - return function (o) { - return !ja.enabled || o == null - ? o - : n + (~("" + o).indexOf(i) ? o.replace(r, i + n) : o) + i; - }; -} -var bm = j(0, 0), - lr = j(1, 22), - ur = j(2, 22), - xm = j(3, 23), - _i = j(4, 24), - Pm = j(7, 27), - vm = j(8, 28), - Tm = j(9, 29), - Am = j(30, 39), - Ye = j(31, 39), - Ni = j(32, 39), - Fi = j(33, 39), - Li = j(34, 39), - Rm = j(35, 39), - Ui = j(36, 39), - Cm = j(37, 39), - Bi = j(90, 39), - Sm = j(90, 39), - Im = j(40, 49), - Om = j(41, 49), - km = j(42, 49), - Dm = j(43, 49), - Mm = j(44, 49), - _m = j(45, 49), - Nm = j(46, 49), - Fm = j(47, 49); -f(); -u(); -c(); -p(); -m(); -var Ga = 100, - qi = ["green", "yellow", "blue", "magenta", "cyan", "red"], - cr = [], - Vi = Date.now(), - Ja = 0, - mn = typeof y < "u" ? y.env : {}; -globalThis.DEBUG ??= mn.DEBUG ?? ""; -globalThis.DEBUG_COLORS ??= mn.DEBUG_COLORS ? mn.DEBUG_COLORS === "true" : !0; -var Pt = { - enable(e) { - typeof e == "string" && (globalThis.DEBUG = e); - }, - disable() { - let e = globalThis.DEBUG; - return ((globalThis.DEBUG = ""), e); - }, - enabled(e) { - let t = globalThis.DEBUG.split(",").map((i) => - i.replace(/[.+?^${}()|[\]\\]/g, "\\$&"), - ), - r = t.some((i) => - i === "" || i[0] === "-" - ? !1 - : e.match(RegExp(i.split("*").join(".*") + "$")), - ), - n = t.some((i) => - i === "" || i[0] !== "-" - ? !1 - : e.match(RegExp(i.slice(1).split("*").join(".*") + "$")), - ); - return r && !n; - }, - log: (...e) => { - let [t, r, ...n] = e; - (console.warn ?? console.log)(`${t} ${r}`, ...n); - }, - formatters: {}, -}; -function Qa(e) { - let t = { - color: qi[Ja++ % qi.length], - enabled: Pt.enabled(e), - namespace: e, - log: Pt.log, - extend: () => {}, - }, - r = (...n) => { - let { enabled: i, namespace: o, color: s, log: a } = t; - if ( - (n.length !== 0 && cr.push([o, ...n]), - cr.length > Ga && cr.shift(), - Pt.enabled(o) || i) - ) { - let l = n.map((g) => (typeof g == "string" ? g : Ka(g))), - d = `+${Date.now() - Vi}ms`; - ((Vi = Date.now()), a(o, ...l, d)); - } - }; - return new Proxy(r, { get: (n, i) => t[i], set: (n, i, o) => (t[i] = o) }); -} -var Z = new Proxy(Qa, { get: (e, t) => Pt[t], set: (e, t, r) => (Pt[t] = r) }); -function Ka(e, t = 2) { - let r = new Set(); - return JSON.stringify( - e, - (n, i) => { - if (typeof i == "object" && i !== null) { - if (r.has(i)) return "[Circular *]"; - r.add(i); - } else if (typeof i == "bigint") return i.toString(); - return i; - }, - t, - ); -} -function $i() { - cr.length = 0; -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var fl = Ji(), - dn = fl.version; -f(); -u(); -c(); -p(); -m(); -function Ze(e) { - let t = xl(); - return ( - t || - (e?.config.engineType === "library" - ? "library" - : e?.config.engineType === "binary" - ? "binary" - : e?.config.engineType === "client" - ? "client" - : Pl()) - ); -} -function xl() { - let e = y.env.PRISMA_CLIENT_ENGINE_TYPE; - return e === "library" - ? "library" - : e === "binary" - ? "binary" - : e === "client" - ? "client" - : void 0; -} -function Pl() { - return "library"; -} -f(); -u(); -c(); -p(); -m(); -var Yi = "prisma+postgres", - fr = `${Yi}:`; -function dr(e) { - return e?.toString().startsWith(`${fr}//`) ?? !1; -} -function hn(e) { - if (!dr(e)) return !1; - let { host: t } = new URL(e); - return ( - t.includes("localhost") || t.includes("127.0.0.1") || t.includes("[::1]") - ); -} -var Tt = {}; -or(Tt, { - error: () => Rl, - info: () => Al, - log: () => Tl, - query: () => Cl, - should: () => eo, - tags: () => vt, - warn: () => yn, -}); -f(); -u(); -c(); -p(); -m(); -var vt = { - error: Ye("prisma:error"), - warn: Fi("prisma:warn"), - info: Ui("prisma:info"), - query: Li("prisma:query"), - }, - eo = { warn: () => !y.env.PRISMA_DISABLE_WARNINGS }; -function Tl(...e) { - console.log(...e); -} -function yn(e, ...t) { - eo.warn() && console.warn(`${vt.warn} ${e}`, ...t); -} -function Al(e, ...t) { - console.info(`${vt.info} ${e}`, ...t); -} -function Rl(e, ...t) { - console.error(`${vt.error} ${e}`, ...t); -} -function Cl(e, ...t) { - console.log(`${vt.query} ${e}`, ...t); -} -f(); -u(); -c(); -p(); -m(); -function Ue(e, t) { - throw new Error(t); -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -function wn({ onlyFirst: e = !1 } = {}) { - let r = [ - "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))", - "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))", - ].join("|"); - return new RegExp(r, e ? void 0 : "g"); -} -var Sl = wn(); -function En(e) { - if (typeof e != "string") - throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``); - return e.replace(Sl, ""); -} -f(); -u(); -c(); -p(); -m(); -function bn(e, t) { - return Object.prototype.hasOwnProperty.call(e, t); -} -f(); -u(); -c(); -p(); -m(); -function gr(e, t) { - let r = {}; - for (let n of Object.keys(e)) r[n] = t(e[n], n); - return r; -} -f(); -u(); -c(); -p(); -m(); -function xn(e, t) { - if (e.length === 0) return; - let r = e[0]; - for (let n = 1; n < e.length; n++) t(r, e[n]) < 0 && (r = e[n]); - return r; -} -f(); -u(); -c(); -p(); -m(); -function N(e, t) { - Object.defineProperty(e, "name", { value: t, configurable: !0 }); -} -f(); -u(); -c(); -p(); -m(); -var to = new Set(), - hr = (e, t, ...r) => { - to.has(e) || (to.add(e), yn(t, ...r)); - }; -var Q = class e extends Error { - clientVersion; - errorCode; - retryable; - constructor(t, r, n) { - (super(t), - (this.name = "PrismaClientInitializationError"), - (this.clientVersion = r), - (this.errorCode = n), - Error.captureStackTrace(e)); - } - get [Symbol.toStringTag]() { - return "PrismaClientInitializationError"; - } -}; -N(Q, "PrismaClientInitializationError"); -f(); -u(); -c(); -p(); -m(); -var se = class extends Error { - code; - meta; - clientVersion; - batchRequestIdx; - constructor(t, { code: r, clientVersion: n, meta: i, batchRequestIdx: o }) { - (super(t), - (this.name = "PrismaClientKnownRequestError"), - (this.code = r), - (this.clientVersion = n), - (this.meta = i), - Object.defineProperty(this, "batchRequestIdx", { - value: o, - enumerable: !1, - writable: !0, - })); - } - get [Symbol.toStringTag]() { - return "PrismaClientKnownRequestError"; - } -}; -N(se, "PrismaClientKnownRequestError"); -f(); -u(); -c(); -p(); -m(); -var Ce = class extends Error { - clientVersion; - constructor(t, r) { - (super(t), - (this.name = "PrismaClientRustPanicError"), - (this.clientVersion = r)); - } - get [Symbol.toStringTag]() { - return "PrismaClientRustPanicError"; - } -}; -N(Ce, "PrismaClientRustPanicError"); -f(); -u(); -c(); -p(); -m(); -var ae = class extends Error { - clientVersion; - batchRequestIdx; - constructor(t, { clientVersion: r, batchRequestIdx: n }) { - (super(t), - (this.name = "PrismaClientUnknownRequestError"), - (this.clientVersion = r), - Object.defineProperty(this, "batchRequestIdx", { - value: n, - writable: !0, - enumerable: !1, - })); - } - get [Symbol.toStringTag]() { - return "PrismaClientUnknownRequestError"; - } -}; -N(ae, "PrismaClientUnknownRequestError"); -f(); -u(); -c(); -p(); -m(); -var ee = class extends Error { - name = "PrismaClientValidationError"; - clientVersion; - constructor(t, { clientVersion: r }) { - (super(t), (this.clientVersion = r)); - } - get [Symbol.toStringTag]() { - return "PrismaClientValidationError"; - } -}; -N(ee, "PrismaClientValidationError"); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var ge = class { - _map = new Map(); - get(t) { - return this._map.get(t)?.value; - } - set(t, r) { - this._map.set(t, { value: r }); - } - getOrCreate(t, r) { - let n = this._map.get(t); - if (n) return n.value; - let i = r(); - return (this.set(t, i), i); - } -}; -f(); -u(); -c(); -p(); -m(); -function Se(e) { - return e.substring(0, 1).toLowerCase() + e.substring(1); -} -f(); -u(); -c(); -p(); -m(); -function no(e, t) { - let r = {}; - for (let n of e) { - let i = n[t]; - r[i] = n; - } - return r; -} -f(); -u(); -c(); -p(); -m(); -function At(e) { - let t; - return { - get() { - return (t || (t = { value: e() }), t.value); - }, - }; -} -f(); -u(); -c(); -p(); -m(); -function Il(e) { - return { models: Pn(e.models), enums: Pn(e.enums), types: Pn(e.types) }; -} -function Pn(e) { - let t = {}; - for (let { name: r, ...n } of e) t[r] = n; - return t; -} -f(); -u(); -c(); -p(); -m(); -function Xe(e) { - return ( - e instanceof Date || Object.prototype.toString.call(e) === "[object Date]" - ); -} -function yr(e) { - return e.toString() !== "Invalid Date"; -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var et = 9e15, - De = 1e9, - vn = "0123456789abcdef", - br = - "2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058", - xr = - "3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789", - Tn = { - precision: 20, - rounding: 4, - modulo: 1, - toExpNeg: -7, - toExpPos: 21, - minE: -et, - maxE: et, - crypto: !1, - }, - ao, - Pe, - _ = !0, - vr = "[DecimalError] ", - ke = vr + "Invalid argument: ", - lo = vr + "Precision limit exceeded", - uo = vr + "crypto unavailable", - co = "[object Decimal]", - X = Math.floor, - K = Math.pow, - Ol = /^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i, - kl = /^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i, - Dl = /^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i, - po = /^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i, - pe = 1e7, - D = 7, - Ml = 9007199254740991, - _l = br.length - 1, - An = xr.length - 1, - R = { toStringTag: co }; -R.absoluteValue = R.abs = function () { - var e = new this.constructor(this); - return (e.s < 0 && (e.s = 1), k(e)); -}; -R.ceil = function () { - return k(new this.constructor(this), this.e + 1, 2); -}; -R.clampedTo = R.clamp = function (e, t) { - var r, - n = this, - i = n.constructor; - if (((e = new i(e)), (t = new i(t)), !e.s || !t.s)) return new i(NaN); - if (e.gt(t)) throw Error(ke + t); - return ((r = n.cmp(e)), r < 0 ? e : n.cmp(t) > 0 ? t : new i(n)); -}; -R.comparedTo = R.cmp = function (e) { - var t, - r, - n, - i, - o = this, - s = o.d, - a = (e = new o.constructor(e)).d, - l = o.s, - d = e.s; - if (!s || !a) - return !l || !d ? NaN : l !== d ? l : s === a ? 0 : !s ^ (l < 0) ? 1 : -1; - if (!s[0] || !a[0]) return s[0] ? l : a[0] ? -d : 0; - if (l !== d) return l; - if (o.e !== e.e) return (o.e > e.e) ^ (l < 0) ? 1 : -1; - for (n = s.length, i = a.length, t = 0, r = n < i ? n : i; t < r; ++t) - if (s[t] !== a[t]) return (s[t] > a[t]) ^ (l < 0) ? 1 : -1; - return n === i ? 0 : (n > i) ^ (l < 0) ? 1 : -1; -}; -R.cosine = R.cos = function () { - var e, - t, - r = this, - n = r.constructor; - return r.d - ? r.d[0] - ? ((e = n.precision), - (t = n.rounding), - (n.precision = e + Math.max(r.e, r.sd()) + D), - (n.rounding = 1), - (r = Nl(n, yo(n, r))), - (n.precision = e), - (n.rounding = t), - k(Pe == 2 || Pe == 3 ? r.neg() : r, e, t, !0)) - : new n(1) - : new n(NaN); -}; -R.cubeRoot = R.cbrt = function () { - var e, - t, - r, - n, - i, - o, - s, - a, - l, - d, - g = this, - h = g.constructor; - if (!g.isFinite() || g.isZero()) return new h(g); - for ( - _ = !1, - o = g.s * K(g.s * g, 1 / 3), - !o || Math.abs(o) == 1 / 0 - ? ((r = z(g.d)), - (e = g.e), - (o = (e - r.length + 1) % 3) && (r += o == 1 || o == -2 ? "0" : "00"), - (o = K(r, 1 / 3)), - (e = X((e + 1) / 3) - (e % 3 == (e < 0 ? -1 : 2))), - o == 1 / 0 - ? (r = "5e" + e) - : ((r = o.toExponential()), - (r = r.slice(0, r.indexOf("e") + 1) + e)), - (n = new h(r)), - (n.s = g.s)) - : (n = new h(o.toString())), - s = (e = h.precision) + 3; - ; - ) - if ( - ((a = n), - (l = a.times(a).times(a)), - (d = l.plus(g)), - (n = V(d.plus(g).times(a), d.plus(l), s + 2, 1)), - z(a.d).slice(0, s) === (r = z(n.d)).slice(0, s)) - ) - if (((r = r.slice(s - 3, s + 1)), r == "9999" || (!i && r == "4999"))) { - if (!i && (k(a, e + 1, 0), a.times(a).times(a).eq(g))) { - n = a; - break; - } - ((s += 4), (i = 1)); - } else { - (!+r || (!+r.slice(1) && r.charAt(0) == "5")) && - (k(n, e + 1, 1), (t = !n.times(n).times(n).eq(g))); - break; - } - return ((_ = !0), k(n, e, h.rounding, t)); -}; -R.decimalPlaces = R.dp = function () { - var e, - t = this.d, - r = NaN; - if (t) { - if (((e = t.length - 1), (r = (e - X(this.e / D)) * D), (e = t[e]), e)) - for (; e % 10 == 0; e /= 10) r--; - r < 0 && (r = 0); - } - return r; -}; -R.dividedBy = R.div = function (e) { - return V(this, new this.constructor(e)); -}; -R.dividedToIntegerBy = R.divToInt = function (e) { - var t = this, - r = t.constructor; - return k(V(t, new r(e), 0, 1, 1), r.precision, r.rounding); -}; -R.equals = R.eq = function (e) { - return this.cmp(e) === 0; -}; -R.floor = function () { - return k(new this.constructor(this), this.e + 1, 3); -}; -R.greaterThan = R.gt = function (e) { - return this.cmp(e) > 0; -}; -R.greaterThanOrEqualTo = R.gte = function (e) { - var t = this.cmp(e); - return t == 1 || t === 0; -}; -R.hyperbolicCosine = R.cosh = function () { - var e, - t, - r, - n, - i, - o = this, - s = o.constructor, - a = new s(1); - if (!o.isFinite()) return new s(o.s ? 1 / 0 : NaN); - if (o.isZero()) return a; - ((r = s.precision), - (n = s.rounding), - (s.precision = r + Math.max(o.e, o.sd()) + 4), - (s.rounding = 1), - (i = o.d.length), - i < 32 - ? ((e = Math.ceil(i / 3)), (t = (1 / Ar(4, e)).toString())) - : ((e = 16), (t = "2.3283064365386962890625e-10")), - (o = tt(s, 1, o.times(t), new s(1), !0))); - for (var l, d = e, g = new s(8); d--; ) - ((l = o.times(o)), (o = a.minus(l.times(g.minus(l.times(g)))))); - return k(o, (s.precision = r), (s.rounding = n), !0); -}; -R.hyperbolicSine = R.sinh = function () { - var e, - t, - r, - n, - i = this, - o = i.constructor; - if (!i.isFinite() || i.isZero()) return new o(i); - if ( - ((t = o.precision), - (r = o.rounding), - (o.precision = t + Math.max(i.e, i.sd()) + 4), - (o.rounding = 1), - (n = i.d.length), - n < 3) - ) - i = tt(o, 2, i, i, !0); - else { - ((e = 1.4 * Math.sqrt(n)), - (e = e > 16 ? 16 : e | 0), - (i = i.times(1 / Ar(5, e))), - (i = tt(o, 2, i, i, !0))); - for (var s, a = new o(5), l = new o(16), d = new o(20); e--; ) - ((s = i.times(i)), (i = i.times(a.plus(s.times(l.times(s).plus(d)))))); - } - return ((o.precision = t), (o.rounding = r), k(i, t, r, !0)); -}; -R.hyperbolicTangent = R.tanh = function () { - var e, - t, - r = this, - n = r.constructor; - return r.isFinite() - ? r.isZero() - ? new n(r) - : ((e = n.precision), - (t = n.rounding), - (n.precision = e + 7), - (n.rounding = 1), - V(r.sinh(), r.cosh(), (n.precision = e), (n.rounding = t))) - : new n(r.s); -}; -R.inverseCosine = R.acos = function () { - var e = this, - t = e.constructor, - r = e.abs().cmp(1), - n = t.precision, - i = t.rounding; - return r !== -1 - ? r === 0 - ? e.isNeg() - ? he(t, n, i) - : new t(0) - : new t(NaN) - : e.isZero() - ? he(t, n + 4, i).times(0.5) - : ((t.precision = n + 6), - (t.rounding = 1), - (e = new t(1).minus(e).div(e.plus(1)).sqrt().atan()), - (t.precision = n), - (t.rounding = i), - e.times(2)); -}; -R.inverseHyperbolicCosine = R.acosh = function () { - var e, - t, - r = this, - n = r.constructor; - return r.lte(1) - ? new n(r.eq(1) ? 0 : NaN) - : r.isFinite() - ? ((e = n.precision), - (t = n.rounding), - (n.precision = e + Math.max(Math.abs(r.e), r.sd()) + 4), - (n.rounding = 1), - (_ = !1), - (r = r.times(r).minus(1).sqrt().plus(r)), - (_ = !0), - (n.precision = e), - (n.rounding = t), - r.ln()) - : new n(r); -}; -R.inverseHyperbolicSine = R.asinh = function () { - var e, - t, - r = this, - n = r.constructor; - return !r.isFinite() || r.isZero() - ? new n(r) - : ((e = n.precision), - (t = n.rounding), - (n.precision = e + 2 * Math.max(Math.abs(r.e), r.sd()) + 6), - (n.rounding = 1), - (_ = !1), - (r = r.times(r).plus(1).sqrt().plus(r)), - (_ = !0), - (n.precision = e), - (n.rounding = t), - r.ln()); -}; -R.inverseHyperbolicTangent = R.atanh = function () { - var e, - t, - r, - n, - i = this, - o = i.constructor; - return i.isFinite() - ? i.e >= 0 - ? new o(i.abs().eq(1) ? i.s / 0 : i.isZero() ? i : NaN) - : ((e = o.precision), - (t = o.rounding), - (n = i.sd()), - Math.max(n, e) < 2 * -i.e - 1 - ? k(new o(i), e, t, !0) - : ((o.precision = r = n - i.e), - (i = V(i.plus(1), new o(1).minus(i), r + e, 1)), - (o.precision = e + 4), - (o.rounding = 1), - (i = i.ln()), - (o.precision = e), - (o.rounding = t), - i.times(0.5))) - : new o(NaN); -}; -R.inverseSine = R.asin = function () { - var e, - t, - r, - n, - i = this, - o = i.constructor; - return i.isZero() - ? new o(i) - : ((t = i.abs().cmp(1)), - (r = o.precision), - (n = o.rounding), - t !== -1 - ? t === 0 - ? ((e = he(o, r + 4, n).times(0.5)), (e.s = i.s), e) - : new o(NaN) - : ((o.precision = r + 6), - (o.rounding = 1), - (i = i.div(new o(1).minus(i.times(i)).sqrt().plus(1)).atan()), - (o.precision = r), - (o.rounding = n), - i.times(2))); -}; -R.inverseTangent = R.atan = function () { - var e, - t, - r, - n, - i, - o, - s, - a, - l, - d = this, - g = d.constructor, - h = g.precision, - T = g.rounding; - if (d.isFinite()) { - if (d.isZero()) return new g(d); - if (d.abs().eq(1) && h + 4 <= An) - return ((s = he(g, h + 4, T).times(0.25)), (s.s = d.s), s); - } else { - if (!d.s) return new g(NaN); - if (h + 4 <= An) return ((s = he(g, h + 4, T).times(0.5)), (s.s = d.s), s); - } - for ( - g.precision = a = h + 10, - g.rounding = 1, - r = Math.min(28, (a / D + 2) | 0), - e = r; - e; - --e - ) - d = d.div(d.times(d).plus(1).sqrt().plus(1)); - for ( - _ = !1, t = Math.ceil(a / D), n = 1, l = d.times(d), s = new g(d), i = d; - e !== -1; - ) - if ( - ((i = i.times(l)), - (o = s.minus(i.div((n += 2)))), - (i = i.times(l)), - (s = o.plus(i.div((n += 2)))), - s.d[t] !== void 0) - ) - for (e = t; s.d[e] === o.d[e] && e--; ); - return ( - r && (s = s.times(2 << (r - 1))), - (_ = !0), - k(s, (g.precision = h), (g.rounding = T), !0) - ); -}; -R.isFinite = function () { - return !!this.d; -}; -R.isInteger = R.isInt = function () { - return !!this.d && X(this.e / D) > this.d.length - 2; -}; -R.isNaN = function () { - return !this.s; -}; -R.isNegative = R.isNeg = function () { - return this.s < 0; -}; -R.isPositive = R.isPos = function () { - return this.s > 0; -}; -R.isZero = function () { - return !!this.d && this.d[0] === 0; -}; -R.lessThan = R.lt = function (e) { - return this.cmp(e) < 0; -}; -R.lessThanOrEqualTo = R.lte = function (e) { - return this.cmp(e) < 1; -}; -R.logarithm = R.log = function (e) { - var t, - r, - n, - i, - o, - s, - a, - l, - d = this, - g = d.constructor, - h = g.precision, - T = g.rounding, - I = 5; - if (e == null) ((e = new g(10)), (t = !0)); - else { - if (((e = new g(e)), (r = e.d), e.s < 0 || !r || !r[0] || e.eq(1))) - return new g(NaN); - t = e.eq(10); - } - if (((r = d.d), d.s < 0 || !r || !r[0] || d.eq(1))) - return new g(r && !r[0] ? -1 / 0 : d.s != 1 ? NaN : r ? 0 : 1 / 0); - if (t) - if (r.length > 1) o = !0; - else { - for (i = r[0]; i % 10 === 0; ) i /= 10; - o = i !== 1; - } - if ( - ((_ = !1), - (a = h + I), - (s = Oe(d, a)), - (n = t ? Pr(g, a + 10) : Oe(e, a)), - (l = V(s, n, a, 1)), - Rt(l.d, (i = h), T)) - ) - do - if ( - ((a += 10), - (s = Oe(d, a)), - (n = t ? Pr(g, a + 10) : Oe(e, a)), - (l = V(s, n, a, 1)), - !o) - ) { - +z(l.d).slice(i + 1, i + 15) + 1 == 1e14 && (l = k(l, h + 1, 0)); - break; - } - while (Rt(l.d, (i += 10), T)); - return ((_ = !0), k(l, h, T)); -}; -R.minus = R.sub = function (e) { - var t, - r, - n, - i, - o, - s, - a, - l, - d, - g, - h, - T, - I = this, - S = I.constructor; - if (((e = new S(e)), !I.d || !e.d)) - return ( - !I.s || !e.s - ? (e = new S(NaN)) - : I.d - ? (e.s = -e.s) - : (e = new S(e.d || I.s !== e.s ? I : NaN)), - e - ); - if (I.s != e.s) return ((e.s = -e.s), I.plus(e)); - if ( - ((d = I.d), (T = e.d), (a = S.precision), (l = S.rounding), !d[0] || !T[0]) - ) { - if (T[0]) e.s = -e.s; - else if (d[0]) e = new S(I); - else return new S(l === 3 ? -0 : 0); - return _ ? k(e, a, l) : e; - } - if (((r = X(e.e / D)), (g = X(I.e / D)), (d = d.slice()), (o = g - r), o)) { - for ( - h = o < 0, - h - ? ((t = d), (o = -o), (s = T.length)) - : ((t = T), (r = g), (s = d.length)), - n = Math.max(Math.ceil(a / D), s) + 2, - o > n && ((o = n), (t.length = 1)), - t.reverse(), - n = o; - n--; - ) - t.push(0); - t.reverse(); - } else { - for (n = d.length, s = T.length, h = n < s, h && (s = n), n = 0; n < s; n++) - if (d[n] != T[n]) { - h = d[n] < T[n]; - break; - } - o = 0; - } - for ( - h && ((t = d), (d = T), (T = t), (e.s = -e.s)), - s = d.length, - n = T.length - s; - n > 0; - --n - ) - d[s++] = 0; - for (n = T.length; n > o; ) { - if (d[--n] < T[n]) { - for (i = n; i && d[--i] === 0; ) d[i] = pe - 1; - (--d[i], (d[n] += pe)); - } - d[n] -= T[n]; - } - for (; d[--s] === 0; ) d.pop(); - for (; d[0] === 0; d.shift()) --r; - return d[0] - ? ((e.d = d), (e.e = Tr(d, r)), _ ? k(e, a, l) : e) - : new S(l === 3 ? -0 : 0); -}; -R.modulo = R.mod = function (e) { - var t, - r = this, - n = r.constructor; - return ( - (e = new n(e)), - !r.d || !e.s || (e.d && !e.d[0]) - ? new n(NaN) - : !e.d || (r.d && !r.d[0]) - ? k(new n(r), n.precision, n.rounding) - : ((_ = !1), - n.modulo == 9 - ? ((t = V(r, e.abs(), 0, 3, 1)), (t.s *= e.s)) - : (t = V(r, e, 0, n.modulo, 1)), - (t = t.times(e)), - (_ = !0), - r.minus(t)) - ); -}; -R.naturalExponential = R.exp = function () { - return Rn(this); -}; -R.naturalLogarithm = R.ln = function () { - return Oe(this); -}; -R.negated = R.neg = function () { - var e = new this.constructor(this); - return ((e.s = -e.s), k(e)); -}; -R.plus = R.add = function (e) { - var t, - r, - n, - i, - o, - s, - a, - l, - d, - g, - h = this, - T = h.constructor; - if (((e = new T(e)), !h.d || !e.d)) - return ( - !h.s || !e.s - ? (e = new T(NaN)) - : h.d || (e = new T(e.d || h.s === e.s ? h : NaN)), - e - ); - if (h.s != e.s) return ((e.s = -e.s), h.minus(e)); - if ( - ((d = h.d), (g = e.d), (a = T.precision), (l = T.rounding), !d[0] || !g[0]) - ) - return (g[0] || (e = new T(h)), _ ? k(e, a, l) : e); - if (((o = X(h.e / D)), (n = X(e.e / D)), (d = d.slice()), (i = o - n), i)) { - for ( - i < 0 - ? ((r = d), (i = -i), (s = g.length)) - : ((r = g), (n = o), (s = d.length)), - o = Math.ceil(a / D), - s = o > s ? o + 1 : s + 1, - i > s && ((i = s), (r.length = 1)), - r.reverse(); - i--; - ) - r.push(0); - r.reverse(); - } - for ( - s = d.length, - i = g.length, - s - i < 0 && ((i = s), (r = g), (g = d), (d = r)), - t = 0; - i; - ) - ((t = ((d[--i] = d[i] + g[i] + t) / pe) | 0), (d[i] %= pe)); - for (t && (d.unshift(t), ++n), s = d.length; d[--s] == 0; ) d.pop(); - return ((e.d = d), (e.e = Tr(d, n)), _ ? k(e, a, l) : e); -}; -R.precision = R.sd = function (e) { - var t, - r = this; - if (e !== void 0 && e !== !!e && e !== 1 && e !== 0) throw Error(ke + e); - return ( - r.d ? ((t = mo(r.d)), e && r.e + 1 > t && (t = r.e + 1)) : (t = NaN), - t - ); -}; -R.round = function () { - var e = this, - t = e.constructor; - return k(new t(e), e.e + 1, t.rounding); -}; -R.sine = R.sin = function () { - var e, - t, - r = this, - n = r.constructor; - return r.isFinite() - ? r.isZero() - ? new n(r) - : ((e = n.precision), - (t = n.rounding), - (n.precision = e + Math.max(r.e, r.sd()) + D), - (n.rounding = 1), - (r = Ll(n, yo(n, r))), - (n.precision = e), - (n.rounding = t), - k(Pe > 2 ? r.neg() : r, e, t, !0)) - : new n(NaN); -}; -R.squareRoot = R.sqrt = function () { - var e, - t, - r, - n, - i, - o, - s = this, - a = s.d, - l = s.e, - d = s.s, - g = s.constructor; - if (d !== 1 || !a || !a[0]) - return new g(!d || (d < 0 && (!a || a[0])) ? NaN : a ? s : 1 / 0); - for ( - _ = !1, - d = Math.sqrt(+s), - d == 0 || d == 1 / 0 - ? ((t = z(a)), - (t.length + l) % 2 == 0 && (t += "0"), - (d = Math.sqrt(t)), - (l = X((l + 1) / 2) - (l < 0 || l % 2)), - d == 1 / 0 - ? (t = "5e" + l) - : ((t = d.toExponential()), - (t = t.slice(0, t.indexOf("e") + 1) + l)), - (n = new g(t))) - : (n = new g(d.toString())), - r = (l = g.precision) + 3; - ; - ) - if ( - ((o = n), - (n = o.plus(V(s, o, r + 2, 1)).times(0.5)), - z(o.d).slice(0, r) === (t = z(n.d)).slice(0, r)) - ) - if (((t = t.slice(r - 3, r + 1)), t == "9999" || (!i && t == "4999"))) { - if (!i && (k(o, l + 1, 0), o.times(o).eq(s))) { - n = o; - break; - } - ((r += 4), (i = 1)); - } else { - (!+t || (!+t.slice(1) && t.charAt(0) == "5")) && - (k(n, l + 1, 1), (e = !n.times(n).eq(s))); - break; - } - return ((_ = !0), k(n, l, g.rounding, e)); -}; -R.tangent = R.tan = function () { - var e, - t, - r = this, - n = r.constructor; - return r.isFinite() - ? r.isZero() - ? new n(r) - : ((e = n.precision), - (t = n.rounding), - (n.precision = e + 10), - (n.rounding = 1), - (r = r.sin()), - (r.s = 1), - (r = V(r, new n(1).minus(r.times(r)).sqrt(), e + 10, 0)), - (n.precision = e), - (n.rounding = t), - k(Pe == 2 || Pe == 4 ? r.neg() : r, e, t, !0)) - : new n(NaN); -}; -R.times = R.mul = function (e) { - var t, - r, - n, - i, - o, - s, - a, - l, - d, - g = this, - h = g.constructor, - T = g.d, - I = (e = new h(e)).d; - if (((e.s *= g.s), !T || !T[0] || !I || !I[0])) - return new h( - !e.s || (T && !T[0] && !I) || (I && !I[0] && !T) - ? NaN - : !T || !I - ? e.s / 0 - : e.s * 0, - ); - for ( - r = X(g.e / D) + X(e.e / D), - l = T.length, - d = I.length, - l < d && ((o = T), (T = I), (I = o), (s = l), (l = d), (d = s)), - o = [], - s = l + d, - n = s; - n--; - ) - o.push(0); - for (n = d; --n >= 0; ) { - for (t = 0, i = l + n; i > n; ) - ((a = o[i] + I[n] * T[i - n - 1] + t), - (o[i--] = (a % pe) | 0), - (t = (a / pe) | 0)); - o[i] = ((o[i] + t) % pe) | 0; - } - for (; !o[--s]; ) o.pop(); - return ( - t ? ++r : o.shift(), - (e.d = o), - (e.e = Tr(o, r)), - _ ? k(e, h.precision, h.rounding) : e - ); -}; -R.toBinary = function (e, t) { - return Cn(this, 2, e, t); -}; -R.toDecimalPlaces = R.toDP = function (e, t) { - var r = this, - n = r.constructor; - return ( - (r = new n(r)), - e === void 0 - ? r - : (ne(e, 0, De), - t === void 0 ? (t = n.rounding) : ne(t, 0, 8), - k(r, e + r.e + 1, t)) - ); -}; -R.toExponential = function (e, t) { - var r, - n = this, - i = n.constructor; - return ( - e === void 0 - ? (r = ye(n, !0)) - : (ne(e, 0, De), - t === void 0 ? (t = i.rounding) : ne(t, 0, 8), - (n = k(new i(n), e + 1, t)), - (r = ye(n, !0, e + 1))), - n.isNeg() && !n.isZero() ? "-" + r : r - ); -}; -R.toFixed = function (e, t) { - var r, - n, - i = this, - o = i.constructor; - return ( - e === void 0 - ? (r = ye(i)) - : (ne(e, 0, De), - t === void 0 ? (t = o.rounding) : ne(t, 0, 8), - (n = k(new o(i), e + i.e + 1, t)), - (r = ye(n, !1, e + n.e + 1))), - i.isNeg() && !i.isZero() ? "-" + r : r - ); -}; -R.toFraction = function (e) { - var t, - r, - n, - i, - o, - s, - a, - l, - d, - g, - h, - T, - I = this, - S = I.d, - C = I.constructor; - if (!S) return new C(I); - if ( - ((d = r = new C(1)), - (n = l = new C(0)), - (t = new C(n)), - (o = t.e = mo(S) - I.e - 1), - (s = o % D), - (t.d[0] = K(10, s < 0 ? D + s : s)), - e == null) - ) - e = o > 0 ? t : d; - else { - if (((a = new C(e)), !a.isInt() || a.lt(d))) throw Error(ke + a); - e = a.gt(t) ? (o > 0 ? t : d) : a; - } - for ( - _ = !1, - a = new C(z(S)), - g = C.precision, - C.precision = o = S.length * D * 2; - (h = V(a, t, 0, 1, 1)), (i = r.plus(h.times(n))), i.cmp(e) != 1; - ) - ((r = n), - (n = i), - (i = d), - (d = l.plus(h.times(i))), - (l = i), - (i = t), - (t = a.minus(h.times(i))), - (a = i)); - return ( - (i = V(e.minus(r), n, 0, 1, 1)), - (l = l.plus(i.times(d))), - (r = r.plus(i.times(n))), - (l.s = d.s = I.s), - (T = - V(d, n, o, 1) - .minus(I) - .abs() - .cmp(V(l, r, o, 1).minus(I).abs()) < 1 - ? [d, n] - : [l, r]), - (C.precision = g), - (_ = !0), - T - ); -}; -R.toHexadecimal = R.toHex = function (e, t) { - return Cn(this, 16, e, t); -}; -R.toNearest = function (e, t) { - var r = this, - n = r.constructor; - if (((r = new n(r)), e == null)) { - if (!r.d) return r; - ((e = new n(1)), (t = n.rounding)); - } else { - if (((e = new n(e)), t === void 0 ? (t = n.rounding) : ne(t, 0, 8), !r.d)) - return e.s ? r : e; - if (!e.d) return (e.s && (e.s = r.s), e); - } - return ( - e.d[0] - ? ((_ = !1), (r = V(r, e, 0, t, 1).times(e)), (_ = !0), k(r)) - : ((e.s = r.s), (r = e)), - r - ); -}; -R.toNumber = function () { - return +this; -}; -R.toOctal = function (e, t) { - return Cn(this, 8, e, t); -}; -R.toPower = R.pow = function (e) { - var t, - r, - n, - i, - o, - s, - a = this, - l = a.constructor, - d = +(e = new l(e)); - if (!a.d || !e.d || !a.d[0] || !e.d[0]) return new l(K(+a, d)); - if (((a = new l(a)), a.eq(1))) return a; - if (((n = l.precision), (o = l.rounding), e.eq(1))) return k(a, n, o); - if (((t = X(e.e / D)), t >= e.d.length - 1 && (r = d < 0 ? -d : d) <= Ml)) - return ((i = fo(l, a, r, n)), e.s < 0 ? new l(1).div(i) : k(i, n, o)); - if (((s = a.s), s < 0)) { - if (t < e.d.length - 1) return new l(NaN); - if ( - ((e.d[t] & 1) == 0 && (s = 1), a.e == 0 && a.d[0] == 1 && a.d.length == 1) - ) - return ((a.s = s), a); - } - return ( - (r = K(+a, d)), - (t = - r == 0 || !isFinite(r) - ? X(d * (Math.log("0." + z(a.d)) / Math.LN10 + a.e + 1)) - : new l(r + "").e), - t > l.maxE + 1 || t < l.minE - 1 - ? new l(t > 0 ? s / 0 : 0) - : ((_ = !1), - (l.rounding = a.s = 1), - (r = Math.min(12, (t + "").length)), - (i = Rn(e.times(Oe(a, n + r)), n)), - i.d && - ((i = k(i, n + 5, 1)), - Rt(i.d, n, o) && - ((t = n + 10), - (i = k(Rn(e.times(Oe(a, t + r)), t), t + 5, 1)), - +z(i.d).slice(n + 1, n + 15) + 1 == 1e14 && (i = k(i, n + 1, 0)))), - (i.s = s), - (_ = !0), - (l.rounding = o), - k(i, n, o)) - ); -}; -R.toPrecision = function (e, t) { - var r, - n = this, - i = n.constructor; - return ( - e === void 0 - ? (r = ye(n, n.e <= i.toExpNeg || n.e >= i.toExpPos)) - : (ne(e, 1, De), - t === void 0 ? (t = i.rounding) : ne(t, 0, 8), - (n = k(new i(n), e, t)), - (r = ye(n, e <= n.e || n.e <= i.toExpNeg, e))), - n.isNeg() && !n.isZero() ? "-" + r : r - ); -}; -R.toSignificantDigits = R.toSD = function (e, t) { - var r = this, - n = r.constructor; - return ( - e === void 0 - ? ((e = n.precision), (t = n.rounding)) - : (ne(e, 1, De), t === void 0 ? (t = n.rounding) : ne(t, 0, 8)), - k(new n(r), e, t) - ); -}; -R.toString = function () { - var e = this, - t = e.constructor, - r = ye(e, e.e <= t.toExpNeg || e.e >= t.toExpPos); - return e.isNeg() && !e.isZero() ? "-" + r : r; -}; -R.truncated = R.trunc = function () { - return k(new this.constructor(this), this.e + 1, 1); -}; -R.valueOf = R.toJSON = function () { - var e = this, - t = e.constructor, - r = ye(e, e.e <= t.toExpNeg || e.e >= t.toExpPos); - return e.isNeg() ? "-" + r : r; -}; -function z(e) { - var t, - r, - n, - i = e.length - 1, - o = "", - s = e[0]; - if (i > 0) { - for (o += s, t = 1; t < i; t++) - ((n = e[t] + ""), (r = D - n.length), r && (o += Ie(r)), (o += n)); - ((s = e[t]), (n = s + ""), (r = D - n.length), r && (o += Ie(r))); - } else if (s === 0) return "0"; - for (; s % 10 === 0; ) s /= 10; - return o + s; -} -function ne(e, t, r) { - if (e !== ~~e || e < t || e > r) throw Error(ke + e); -} -function Rt(e, t, r, n) { - var i, o, s, a; - for (o = e[0]; o >= 10; o /= 10) --t; - return ( - --t < 0 ? ((t += D), (i = 0)) : ((i = Math.ceil((t + 1) / D)), (t %= D)), - (o = K(10, D - t)), - (a = (e[i] % o) | 0), - n == null - ? t < 3 - ? (t == 0 ? (a = (a / 100) | 0) : t == 1 && (a = (a / 10) | 0), - (s = - (r < 4 && a == 99999) || - (r > 3 && a == 49999) || - a == 5e4 || - a == 0)) - : (s = - (((r < 4 && a + 1 == o) || (r > 3 && a + 1 == o / 2)) && - ((e[i + 1] / o / 100) | 0) == K(10, t - 2) - 1) || - ((a == o / 2 || a == 0) && ((e[i + 1] / o / 100) | 0) == 0)) - : t < 4 - ? (t == 0 - ? (a = (a / 1e3) | 0) - : t == 1 - ? (a = (a / 100) | 0) - : t == 2 && (a = (a / 10) | 0), - (s = ((n || r < 4) && a == 9999) || (!n && r > 3 && a == 4999))) - : (s = - (((n || r < 4) && a + 1 == o) || (!n && r > 3 && a + 1 == o / 2)) && - ((e[i + 1] / o / 1e3) | 0) == K(10, t - 3) - 1), - s - ); -} -function wr(e, t, r) { - for (var n, i = [0], o, s = 0, a = e.length; s < a; ) { - for (o = i.length; o--; ) i[o] *= t; - for (i[0] += vn.indexOf(e.charAt(s++)), n = 0; n < i.length; n++) - i[n] > r - 1 && - (i[n + 1] === void 0 && (i[n + 1] = 0), - (i[n + 1] += (i[n] / r) | 0), - (i[n] %= r)); - } - return i.reverse(); -} -function Nl(e, t) { - var r, n, i; - if (t.isZero()) return t; - ((n = t.d.length), - n < 32 - ? ((r = Math.ceil(n / 3)), (i = (1 / Ar(4, r)).toString())) - : ((r = 16), (i = "2.3283064365386962890625e-10")), - (e.precision += r), - (t = tt(e, 1, t.times(i), new e(1)))); - for (var o = r; o--; ) { - var s = t.times(t); - t = s.times(s).minus(s).times(8).plus(1); - } - return ((e.precision -= r), t); -} -var V = (function () { - function e(n, i, o) { - var s, - a = 0, - l = n.length; - for (n = n.slice(); l--; ) - ((s = n[l] * i + a), (n[l] = (s % o) | 0), (a = (s / o) | 0)); - return (a && n.unshift(a), n); - } - function t(n, i, o, s) { - var a, l; - if (o != s) l = o > s ? 1 : -1; - else - for (a = l = 0; a < o; a++) - if (n[a] != i[a]) { - l = n[a] > i[a] ? 1 : -1; - break; - } - return l; - } - function r(n, i, o, s) { - for (var a = 0; o--; ) - ((n[o] -= a), (a = n[o] < i[o] ? 1 : 0), (n[o] = a * s + n[o] - i[o])); - for (; !n[0] && n.length > 1; ) n.shift(); - } - return function (n, i, o, s, a, l) { - var d, - g, - h, - T, - I, - S, - C, - M, - F, - B, - O, - L, - oe, - J, - Xr, - rr, - bt, - en, - ce, - nr, - ir = n.constructor, - tn = n.s == i.s ? 1 : -1, - Y = n.d, - $ = i.d; - if (!Y || !Y[0] || !$ || !$[0]) - return new ir( - !n.s || !i.s || (Y ? $ && Y[0] == $[0] : !$) - ? NaN - : (Y && Y[0] == 0) || !$ - ? tn * 0 - : tn / 0, - ); - for ( - l - ? ((I = 1), (g = n.e - i.e)) - : ((l = pe), (I = D), (g = X(n.e / I) - X(i.e / I))), - ce = $.length, - bt = Y.length, - F = new ir(tn), - B = F.d = [], - h = 0; - $[h] == (Y[h] || 0); - h++ - ); - if ( - ($[h] > (Y[h] || 0) && g--, - o == null - ? ((J = o = ir.precision), (s = ir.rounding)) - : a - ? (J = o + (n.e - i.e) + 1) - : (J = o), - J < 0) - ) - (B.push(1), (S = !0)); - else { - if (((J = (J / I + 2) | 0), (h = 0), ce == 1)) { - for (T = 0, $ = $[0], J++; (h < bt || T) && J--; h++) - ((Xr = T * l + (Y[h] || 0)), - (B[h] = (Xr / $) | 0), - (T = (Xr % $) | 0)); - S = T || h < bt; - } else { - for ( - T = (l / ($[0] + 1)) | 0, - T > 1 && - (($ = e($, T, l)), - (Y = e(Y, T, l)), - (ce = $.length), - (bt = Y.length)), - rr = ce, - O = Y.slice(0, ce), - L = O.length; - L < ce; - ) - O[L++] = 0; - ((nr = $.slice()), nr.unshift(0), (en = $[0]), $[1] >= l / 2 && ++en); - do - ((T = 0), - (d = t($, O, ce, L)), - d < 0 - ? ((oe = O[0]), - ce != L && (oe = oe * l + (O[1] || 0)), - (T = (oe / en) | 0), - T > 1 - ? (T >= l && (T = l - 1), - (C = e($, T, l)), - (M = C.length), - (L = O.length), - (d = t(C, O, M, L)), - d == 1 && (T--, r(C, ce < M ? nr : $, M, l))) - : (T == 0 && (d = T = 1), (C = $.slice())), - (M = C.length), - M < L && C.unshift(0), - r(O, C, L, l), - d == -1 && - ((L = O.length), - (d = t($, O, ce, L)), - d < 1 && (T++, r(O, ce < L ? nr : $, L, l))), - (L = O.length)) - : d === 0 && (T++, (O = [0])), - (B[h++] = T), - d && O[0] ? (O[L++] = Y[rr] || 0) : ((O = [Y[rr]]), (L = 1))); - while ((rr++ < bt || O[0] !== void 0) && J--); - S = O[0] !== void 0; - } - B[0] || B.shift(); - } - if (I == 1) ((F.e = g), (ao = S)); - else { - for (h = 1, T = B[0]; T >= 10; T /= 10) h++; - ((F.e = h + g * I - 1), k(F, a ? o + F.e + 1 : o, s, S)); - } - return F; - }; -})(); -function k(e, t, r, n) { - var i, - o, - s, - a, - l, - d, - g, - h, - T, - I = e.constructor; - e: if (t != null) { - if (((h = e.d), !h)) return e; - for (i = 1, a = h[0]; a >= 10; a /= 10) i++; - if (((o = t - i), o < 0)) - ((o += D), - (s = t), - (g = h[(T = 0)]), - (l = ((g / K(10, i - s - 1)) % 10) | 0)); - else if (((T = Math.ceil((o + 1) / D)), (a = h.length), T >= a)) - if (n) { - for (; a++ <= T; ) h.push(0); - ((g = l = 0), (i = 1), (o %= D), (s = o - D + 1)); - } else break e; - else { - for (g = a = h[T], i = 1; a >= 10; a /= 10) i++; - ((o %= D), - (s = o - D + i), - (l = s < 0 ? 0 : ((g / K(10, i - s - 1)) % 10) | 0)); - } - if ( - ((n = - n || - t < 0 || - h[T + 1] !== void 0 || - (s < 0 ? g : g % K(10, i - s - 1))), - (d = - r < 4 - ? (l || n) && (r == 0 || r == (e.s < 0 ? 3 : 2)) - : l > 5 || - (l == 5 && - (r == 4 || - n || - (r == 6 && - ((o > 0 ? (s > 0 ? g / K(10, i - s) : 0) : h[T - 1]) % 10) & - 1) || - r == (e.s < 0 ? 8 : 7)))), - t < 1 || !h[0]) - ) - return ( - (h.length = 0), - d - ? ((t -= e.e + 1), (h[0] = K(10, (D - (t % D)) % D)), (e.e = -t || 0)) - : (h[0] = e.e = 0), - e - ); - if ( - (o == 0 - ? ((h.length = T), (a = 1), T--) - : ((h.length = T + 1), - (a = K(10, D - o)), - (h[T] = s > 0 ? (((g / K(10, i - s)) % K(10, s)) | 0) * a : 0)), - d) - ) - for (;;) - if (T == 0) { - for (o = 1, s = h[0]; s >= 10; s /= 10) o++; - for (s = h[0] += a, a = 1; s >= 10; s /= 10) a++; - o != a && (e.e++, h[0] == pe && (h[0] = 1)); - break; - } else { - if (((h[T] += a), h[T] != pe)) break; - ((h[T--] = 0), (a = 1)); - } - for (o = h.length; h[--o] === 0; ) h.pop(); - } - return ( - _ && - (e.e > I.maxE - ? ((e.d = null), (e.e = NaN)) - : e.e < I.minE && ((e.e = 0), (e.d = [0]))), - e - ); -} -function ye(e, t, r) { - if (!e.isFinite()) return ho(e); - var n, - i = e.e, - o = z(e.d), - s = o.length; - return ( - t - ? (r && (n = r - s) > 0 - ? (o = o.charAt(0) + "." + o.slice(1) + Ie(n)) - : s > 1 && (o = o.charAt(0) + "." + o.slice(1)), - (o = o + (e.e < 0 ? "e" : "e+") + e.e)) - : i < 0 - ? ((o = "0." + Ie(-i - 1) + o), r && (n = r - s) > 0 && (o += Ie(n))) - : i >= s - ? ((o += Ie(i + 1 - s)), - r && (n = r - i - 1) > 0 && (o = o + "." + Ie(n))) - : ((n = i + 1) < s && (o = o.slice(0, n) + "." + o.slice(n)), - r && (n = r - s) > 0 && (i + 1 === s && (o += "."), (o += Ie(n)))), - o - ); -} -function Tr(e, t) { - var r = e[0]; - for (t *= D; r >= 10; r /= 10) t++; - return t; -} -function Pr(e, t, r) { - if (t > _l) throw ((_ = !0), r && (e.precision = r), Error(lo)); - return k(new e(br), t, 1, !0); -} -function he(e, t, r) { - if (t > An) throw Error(lo); - return k(new e(xr), t, r, !0); -} -function mo(e) { - var t = e.length - 1, - r = t * D + 1; - if (((t = e[t]), t)) { - for (; t % 10 == 0; t /= 10) r--; - for (t = e[0]; t >= 10; t /= 10) r++; - } - return r; -} -function Ie(e) { - for (var t = ""; e--; ) t += "0"; - return t; -} -function fo(e, t, r, n) { - var i, - o = new e(1), - s = Math.ceil(n / D + 4); - for (_ = !1; ; ) { - if ( - (r % 2 && ((o = o.times(t)), oo(o.d, s) && (i = !0)), - (r = X(r / 2)), - r === 0) - ) { - ((r = o.d.length - 1), i && o.d[r] === 0 && ++o.d[r]); - break; - } - ((t = t.times(t)), oo(t.d, s)); - } - return ((_ = !0), o); -} -function io(e) { - return e.d[e.d.length - 1] & 1; -} -function go(e, t, r) { - for (var n, i, o = new e(t[0]), s = 0; ++s < t.length; ) { - if (((i = new e(t[s])), !i.s)) { - o = i; - break; - } - ((n = o.cmp(i)), (n === r || (n === 0 && o.s === r)) && (o = i)); - } - return o; -} -function Rn(e, t) { - var r, - n, - i, - o, - s, - a, - l, - d = 0, - g = 0, - h = 0, - T = e.constructor, - I = T.rounding, - S = T.precision; - if (!e.d || !e.d[0] || e.e > 17) - return new T( - e.d - ? e.d[0] - ? e.s < 0 - ? 0 - : 1 / 0 - : 1 - : e.s - ? e.s < 0 - ? 0 - : e - : NaN, - ); - for ( - t == null ? ((_ = !1), (l = S)) : (l = t), a = new T(0.03125); - e.e > -2; - ) - ((e = e.times(a)), (h += 5)); - for ( - n = ((Math.log(K(2, h)) / Math.LN10) * 2 + 5) | 0, - l += n, - r = o = s = new T(1), - T.precision = l; - ; - ) { - if ( - ((o = k(o.times(e), l, 1)), - (r = r.times(++g)), - (a = s.plus(V(o, r, l, 1))), - z(a.d).slice(0, l) === z(s.d).slice(0, l)) - ) { - for (i = h; i--; ) s = k(s.times(s), l, 1); - if (t == null) - if (d < 3 && Rt(s.d, l - n, I, d)) - ((T.precision = l += 10), (r = o = a = new T(1)), (g = 0), d++); - else return k(s, (T.precision = S), I, (_ = !0)); - else return ((T.precision = S), s); - } - s = a; - } -} -function Oe(e, t) { - var r, - n, - i, - o, - s, - a, - l, - d, - g, - h, - T, - I = 1, - S = 10, - C = e, - M = C.d, - F = C.constructor, - B = F.rounding, - O = F.precision; - if (C.s < 0 || !M || !M[0] || (!C.e && M[0] == 1 && M.length == 1)) - return new F(M && !M[0] ? -1 / 0 : C.s != 1 ? NaN : M ? 0 : C); - if ( - (t == null ? ((_ = !1), (g = O)) : (g = t), - (F.precision = g += S), - (r = z(M)), - (n = r.charAt(0)), - Math.abs((o = C.e)) < 15e14) - ) { - for (; (n < 7 && n != 1) || (n == 1 && r.charAt(1) > 3); ) - ((C = C.times(e)), (r = z(C.d)), (n = r.charAt(0)), I++); - ((o = C.e), - n > 1 ? ((C = new F("0." + r)), o++) : (C = new F(n + "." + r.slice(1)))); - } else - return ( - (d = Pr(F, g + 2, O).times(o + "")), - (C = Oe(new F(n + "." + r.slice(1)), g - S).plus(d)), - (F.precision = O), - t == null ? k(C, O, B, (_ = !0)) : C - ); - for ( - h = C, - l = s = C = V(C.minus(1), C.plus(1), g, 1), - T = k(C.times(C), g, 1), - i = 3; - ; - ) { - if ( - ((s = k(s.times(T), g, 1)), - (d = l.plus(V(s, new F(i), g, 1))), - z(d.d).slice(0, g) === z(l.d).slice(0, g)) - ) - if ( - ((l = l.times(2)), - o !== 0 && (l = l.plus(Pr(F, g + 2, O).times(o + ""))), - (l = V(l, new F(I), g, 1)), - t == null) - ) - if (Rt(l.d, g - S, B, a)) - ((F.precision = g += S), - (d = s = C = V(h.minus(1), h.plus(1), g, 1)), - (T = k(C.times(C), g, 1)), - (i = a = 1)); - else return k(l, (F.precision = O), B, (_ = !0)); - else return ((F.precision = O), l); - ((l = d), (i += 2)); - } -} -function ho(e) { - return String((e.s * e.s) / 0); -} -function Er(e, t) { - var r, n, i; - for ( - (r = t.indexOf(".")) > -1 && (t = t.replace(".", "")), - (n = t.search(/e/i)) > 0 - ? (r < 0 && (r = n), (r += +t.slice(n + 1)), (t = t.substring(0, n))) - : r < 0 && (r = t.length), - n = 0; - t.charCodeAt(n) === 48; - n++ - ); - for (i = t.length; t.charCodeAt(i - 1) === 48; --i); - if (((t = t.slice(n, i)), t)) { - if ( - ((i -= n), - (e.e = r = r - n - 1), - (e.d = []), - (n = (r + 1) % D), - r < 0 && (n += D), - n < i) - ) { - for (n && e.d.push(+t.slice(0, n)), i -= D; n < i; ) - e.d.push(+t.slice(n, (n += D))); - ((t = t.slice(n)), (n = D - t.length)); - } else n -= i; - for (; n--; ) t += "0"; - (e.d.push(+t), - _ && - (e.e > e.constructor.maxE - ? ((e.d = null), (e.e = NaN)) - : e.e < e.constructor.minE && ((e.e = 0), (e.d = [0])))); - } else ((e.e = 0), (e.d = [0])); - return e; -} -function Fl(e, t) { - var r, n, i, o, s, a, l, d, g; - if (t.indexOf("_") > -1) { - if (((t = t.replace(/(\d)_(?=\d)/g, "$1")), po.test(t))) return Er(e, t); - } else if (t === "Infinity" || t === "NaN") - return (+t || (e.s = NaN), (e.e = NaN), (e.d = null), e); - if (kl.test(t)) ((r = 16), (t = t.toLowerCase())); - else if (Ol.test(t)) r = 2; - else if (Dl.test(t)) r = 8; - else throw Error(ke + t); - for ( - o = t.search(/p/i), - o > 0 - ? ((l = +t.slice(o + 1)), (t = t.substring(2, o))) - : (t = t.slice(2)), - o = t.indexOf("."), - s = o >= 0, - n = e.constructor, - s && - ((t = t.replace(".", "")), - (a = t.length), - (o = a - o), - (i = fo(n, new n(r), o, o * 2))), - d = wr(t, r, pe), - g = d.length - 1, - o = g; - d[o] === 0; - --o - ) - d.pop(); - return o < 0 - ? new n(e.s * 0) - : ((e.e = Tr(d, g)), - (e.d = d), - (_ = !1), - s && (e = V(e, i, a * 4)), - l && (e = e.times(Math.abs(l) < 54 ? K(2, l) : ve.pow(2, l))), - (_ = !0), - e); -} -function Ll(e, t) { - var r, - n = t.d.length; - if (n < 3) return t.isZero() ? t : tt(e, 2, t, t); - ((r = 1.4 * Math.sqrt(n)), - (r = r > 16 ? 16 : r | 0), - (t = t.times(1 / Ar(5, r))), - (t = tt(e, 2, t, t))); - for (var i, o = new e(5), s = new e(16), a = new e(20); r--; ) - ((i = t.times(t)), (t = t.times(o.plus(i.times(s.times(i).minus(a)))))); - return t; -} -function tt(e, t, r, n, i) { - var o, - s, - a, - l, - d = 1, - g = e.precision, - h = Math.ceil(g / D); - for (_ = !1, l = r.times(r), a = new e(n); ; ) { - if ( - ((s = V(a.times(l), new e(t++ * t++), g, 1)), - (a = i ? n.plus(s) : n.minus(s)), - (n = V(s.times(l), new e(t++ * t++), g, 1)), - (s = a.plus(n)), - s.d[h] !== void 0) - ) { - for (o = h; s.d[o] === a.d[o] && o--; ); - if (o == -1) break; - } - ((o = a), (a = n), (n = s), (s = o), d++); - } - return ((_ = !0), (s.d.length = h + 1), s); -} -function Ar(e, t) { - for (var r = e; --t; ) r *= e; - return r; -} -function yo(e, t) { - var r, - n = t.s < 0, - i = he(e, e.precision, 1), - o = i.times(0.5); - if (((t = t.abs()), t.lte(o))) return ((Pe = n ? 4 : 1), t); - if (((r = t.divToInt(i)), r.isZero())) Pe = n ? 3 : 2; - else { - if (((t = t.minus(r.times(i))), t.lte(o))) - return ((Pe = io(r) ? (n ? 2 : 3) : n ? 4 : 1), t); - Pe = io(r) ? (n ? 1 : 4) : n ? 3 : 2; - } - return t.minus(i).abs(); -} -function Cn(e, t, r, n) { - var i, - o, - s, - a, - l, - d, - g, - h, - T, - I = e.constructor, - S = r !== void 0; - if ( - (S - ? (ne(r, 1, De), n === void 0 ? (n = I.rounding) : ne(n, 0, 8)) - : ((r = I.precision), (n = I.rounding)), - !e.isFinite()) - ) - g = ho(e); - else { - for ( - g = ye(e), - s = g.indexOf("."), - S - ? ((i = 2), t == 16 ? (r = r * 4 - 3) : t == 8 && (r = r * 3 - 2)) - : (i = t), - s >= 0 && - ((g = g.replace(".", "")), - (T = new I(1)), - (T.e = g.length - s), - (T.d = wr(ye(T), 10, i)), - (T.e = T.d.length)), - h = wr(g, 10, i), - o = l = h.length; - h[--l] == 0; - ) - h.pop(); - if (!h[0]) g = S ? "0p+0" : "0"; - else { - if ( - (s < 0 - ? o-- - : ((e = new I(e)), - (e.d = h), - (e.e = o), - (e = V(e, T, r, n, 0, i)), - (h = e.d), - (o = e.e), - (d = ao)), - (s = h[r]), - (a = i / 2), - (d = d || h[r + 1] !== void 0), - (d = - n < 4 - ? (s !== void 0 || d) && (n === 0 || n === (e.s < 0 ? 3 : 2)) - : s > a || - (s === a && - (n === 4 || - d || - (n === 6 && h[r - 1] & 1) || - n === (e.s < 0 ? 8 : 7)))), - (h.length = r), - d) - ) - for (; ++h[--r] > i - 1; ) ((h[r] = 0), r || (++o, h.unshift(1))); - for (l = h.length; !h[l - 1]; --l); - for (s = 0, g = ""; s < l; s++) g += vn.charAt(h[s]); - if (S) { - if (l > 1) - if (t == 16 || t == 8) { - for (s = t == 16 ? 4 : 3, --l; l % s; l++) g += "0"; - for (h = wr(g, i, t), l = h.length; !h[l - 1]; --l); - for (s = 1, g = "1."; s < l; s++) g += vn.charAt(h[s]); - } else g = g.charAt(0) + "." + g.slice(1); - g = g + (o < 0 ? "p" : "p+") + o; - } else if (o < 0) { - for (; ++o; ) g = "0" + g; - g = "0." + g; - } else if (++o > l) for (o -= l; o--; ) g += "0"; - else o < l && (g = g.slice(0, o) + "." + g.slice(o)); - } - g = (t == 16 ? "0x" : t == 2 ? "0b" : t == 8 ? "0o" : "") + g; - } - return e.s < 0 ? "-" + g : g; -} -function oo(e, t) { - if (e.length > t) return ((e.length = t), !0); -} -function Ul(e) { - return new this(e).abs(); -} -function Bl(e) { - return new this(e).acos(); -} -function ql(e) { - return new this(e).acosh(); -} -function Vl(e, t) { - return new this(e).plus(t); -} -function $l(e) { - return new this(e).asin(); -} -function jl(e) { - return new this(e).asinh(); -} -function Gl(e) { - return new this(e).atan(); -} -function Jl(e) { - return new this(e).atanh(); -} -function Ql(e, t) { - ((e = new this(e)), (t = new this(t))); - var r, - n = this.precision, - i = this.rounding, - o = n + 4; - return ( - !e.s || !t.s - ? (r = new this(NaN)) - : !e.d && !t.d - ? ((r = he(this, o, 1).times(t.s > 0 ? 0.25 : 0.75)), (r.s = e.s)) - : !t.d || e.isZero() - ? ((r = t.s < 0 ? he(this, n, i) : new this(0)), (r.s = e.s)) - : !e.d || t.isZero() - ? ((r = he(this, o, 1).times(0.5)), (r.s = e.s)) - : t.s < 0 - ? ((this.precision = o), - (this.rounding = 1), - (r = this.atan(V(e, t, o, 1))), - (t = he(this, o, 1)), - (this.precision = n), - (this.rounding = i), - (r = e.s < 0 ? r.minus(t) : r.plus(t))) - : (r = this.atan(V(e, t, o, 1))), - r - ); -} -function Kl(e) { - return new this(e).cbrt(); -} -function Wl(e) { - return k((e = new this(e)), e.e + 1, 2); -} -function Hl(e, t, r) { - return new this(e).clamp(t, r); -} -function zl(e) { - if (!e || typeof e != "object") throw Error(vr + "Object expected"); - var t, - r, - n, - i = e.defaults === !0, - o = [ - "precision", - 1, - De, - "rounding", - 0, - 8, - "toExpNeg", - -et, - 0, - "toExpPos", - 0, - et, - "maxE", - 0, - et, - "minE", - -et, - 0, - "modulo", - 0, - 9, - ]; - for (t = 0; t < o.length; t += 3) - if (((r = o[t]), i && (this[r] = Tn[r]), (n = e[r]) !== void 0)) - if (X(n) === n && n >= o[t + 1] && n <= o[t + 2]) this[r] = n; - else throw Error(ke + r + ": " + n); - if (((r = "crypto"), i && (this[r] = Tn[r]), (n = e[r]) !== void 0)) - if (n === !0 || n === !1 || n === 0 || n === 1) - if (n) - if ( - typeof crypto < "u" && - crypto && - (crypto.getRandomValues || crypto.randomBytes) - ) - this[r] = !0; - else throw Error(uo); - else this[r] = !1; - else throw Error(ke + r + ": " + n); - return this; -} -function Yl(e) { - return new this(e).cos(); -} -function Zl(e) { - return new this(e).cosh(); -} -function wo(e) { - var t, r, n; - function i(o) { - var s, - a, - l, - d = this; - if (!(d instanceof i)) return new i(o); - if (((d.constructor = i), so(o))) { - ((d.s = o.s), - _ - ? !o.d || o.e > i.maxE - ? ((d.e = NaN), (d.d = null)) - : o.e < i.minE - ? ((d.e = 0), (d.d = [0])) - : ((d.e = o.e), (d.d = o.d.slice())) - : ((d.e = o.e), (d.d = o.d ? o.d.slice() : o.d))); - return; - } - if (((l = typeof o), l === "number")) { - if (o === 0) { - ((d.s = 1 / o < 0 ? -1 : 1), (d.e = 0), (d.d = [0])); - return; - } - if ((o < 0 ? ((o = -o), (d.s = -1)) : (d.s = 1), o === ~~o && o < 1e7)) { - for (s = 0, a = o; a >= 10; a /= 10) s++; - _ - ? s > i.maxE - ? ((d.e = NaN), (d.d = null)) - : s < i.minE - ? ((d.e = 0), (d.d = [0])) - : ((d.e = s), (d.d = [o])) - : ((d.e = s), (d.d = [o])); - return; - } - if (o * 0 !== 0) { - (o || (d.s = NaN), (d.e = NaN), (d.d = null)); - return; - } - return Er(d, o.toString()); - } - if (l === "string") - return ( - (a = o.charCodeAt(0)) === 45 - ? ((o = o.slice(1)), (d.s = -1)) - : (a === 43 && (o = o.slice(1)), (d.s = 1)), - po.test(o) ? Er(d, o) : Fl(d, o) - ); - if (l === "bigint") - return (o < 0 ? ((o = -o), (d.s = -1)) : (d.s = 1), Er(d, o.toString())); - throw Error(ke + o); - } - if ( - ((i.prototype = R), - (i.ROUND_UP = 0), - (i.ROUND_DOWN = 1), - (i.ROUND_CEIL = 2), - (i.ROUND_FLOOR = 3), - (i.ROUND_HALF_UP = 4), - (i.ROUND_HALF_DOWN = 5), - (i.ROUND_HALF_EVEN = 6), - (i.ROUND_HALF_CEIL = 7), - (i.ROUND_HALF_FLOOR = 8), - (i.EUCLID = 9), - (i.config = i.set = zl), - (i.clone = wo), - (i.isDecimal = so), - (i.abs = Ul), - (i.acos = Bl), - (i.acosh = ql), - (i.add = Vl), - (i.asin = $l), - (i.asinh = jl), - (i.atan = Gl), - (i.atanh = Jl), - (i.atan2 = Ql), - (i.cbrt = Kl), - (i.ceil = Wl), - (i.clamp = Hl), - (i.cos = Yl), - (i.cosh = Zl), - (i.div = Xl), - (i.exp = eu), - (i.floor = tu), - (i.hypot = ru), - (i.ln = nu), - (i.log = iu), - (i.log10 = su), - (i.log2 = ou), - (i.max = au), - (i.min = lu), - (i.mod = uu), - (i.mul = cu), - (i.pow = pu), - (i.random = mu), - (i.round = fu), - (i.sign = du), - (i.sin = gu), - (i.sinh = hu), - (i.sqrt = yu), - (i.sub = wu), - (i.sum = Eu), - (i.tan = bu), - (i.tanh = xu), - (i.trunc = Pu), - e === void 0 && (e = {}), - e && e.defaults !== !0) - ) - for ( - n = [ - "precision", - "rounding", - "toExpNeg", - "toExpPos", - "maxE", - "minE", - "modulo", - "crypto", - ], - t = 0; - t < n.length; - ) - e.hasOwnProperty((r = n[t++])) || (e[r] = this[r]); - return (i.config(e), i); -} -function Xl(e, t) { - return new this(e).div(t); -} -function eu(e) { - return new this(e).exp(); -} -function tu(e) { - return k((e = new this(e)), e.e + 1, 3); -} -function ru() { - var e, - t, - r = new this(0); - for (_ = !1, e = 0; e < arguments.length; ) - if (((t = new this(arguments[e++])), t.d)) r.d && (r = r.plus(t.times(t))); - else { - if (t.s) return ((_ = !0), new this(1 / 0)); - r = t; - } - return ((_ = !0), r.sqrt()); -} -function so(e) { - return e instanceof ve || (e && e.toStringTag === co) || !1; -} -function nu(e) { - return new this(e).ln(); -} -function iu(e, t) { - return new this(e).log(t); -} -function ou(e) { - return new this(e).log(2); -} -function su(e) { - return new this(e).log(10); -} -function au() { - return go(this, arguments, -1); -} -function lu() { - return go(this, arguments, 1); -} -function uu(e, t) { - return new this(e).mod(t); -} -function cu(e, t) { - return new this(e).mul(t); -} -function pu(e, t) { - return new this(e).pow(t); -} -function mu(e) { - var t, - r, - n, - i, - o = 0, - s = new this(1), - a = []; - if ( - (e === void 0 ? (e = this.precision) : ne(e, 1, De), - (n = Math.ceil(e / D)), - this.crypto) - ) - if (crypto.getRandomValues) - for (t = crypto.getRandomValues(new Uint32Array(n)); o < n; ) - ((i = t[o]), - i >= 429e7 - ? (t[o] = crypto.getRandomValues(new Uint32Array(1))[0]) - : (a[o++] = i % 1e7)); - else if (crypto.randomBytes) { - for (t = crypto.randomBytes((n *= 4)); o < n; ) - ((i = - t[o] + (t[o + 1] << 8) + (t[o + 2] << 16) + ((t[o + 3] & 127) << 24)), - i >= 214e7 - ? crypto.randomBytes(4).copy(t, o) - : (a.push(i % 1e7), (o += 4))); - o = n / 4; - } else throw Error(uo); - else for (; o < n; ) a[o++] = (Math.random() * 1e7) | 0; - for ( - n = a[--o], - e %= D, - n && e && ((i = K(10, D - e)), (a[o] = ((n / i) | 0) * i)); - a[o] === 0; - o-- - ) - a.pop(); - if (o < 0) ((r = 0), (a = [0])); - else { - for (r = -1; a[0] === 0; r -= D) a.shift(); - for (n = 1, i = a[0]; i >= 10; i /= 10) n++; - n < D && (r -= D - n); - } - return ((s.e = r), (s.d = a), s); -} -function fu(e) { - return k((e = new this(e)), e.e + 1, this.rounding); -} -function du(e) { - return ((e = new this(e)), e.d ? (e.d[0] ? e.s : 0 * e.s) : e.s || NaN); -} -function gu(e) { - return new this(e).sin(); -} -function hu(e) { - return new this(e).sinh(); -} -function yu(e) { - return new this(e).sqrt(); -} -function wu(e, t) { - return new this(e).sub(t); -} -function Eu() { - var e = 0, - t = arguments, - r = new this(t[e]); - for (_ = !1; r.s && ++e < t.length; ) r = r.plus(t[e]); - return ((_ = !0), k(r, this.precision, this.rounding)); -} -function bu(e) { - return new this(e).tan(); -} -function xu(e) { - return new this(e).tanh(); -} -function Pu(e) { - return k((e = new this(e)), e.e + 1, 1); -} -R[Symbol.for("nodejs.util.inspect.custom")] = R.toString; -R[Symbol.toStringTag] = "Decimal"; -var ve = (R.constructor = wo(Tn)); -br = new ve(br); -xr = new ve(xr); -var Me = ve; -function rt(e) { - return ve.isDecimal(e) - ? !0 - : e !== null && - typeof e == "object" && - typeof e.s == "number" && - typeof e.e == "number" && - typeof e.toFixed == "function" && - Array.isArray(e.d); -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var Rr = {}; -or(Rr, { ModelAction: () => Ct, datamodelEnumToSchemaEnum: () => vu }); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -function vu(e) { - return { name: e.name, values: e.values.map((t) => t.name) }; -} -f(); -u(); -c(); -p(); -m(); -var Ct = ((O) => ( - (O.findUnique = "findUnique"), - (O.findUniqueOrThrow = "findUniqueOrThrow"), - (O.findFirst = "findFirst"), - (O.findFirstOrThrow = "findFirstOrThrow"), - (O.findMany = "findMany"), - (O.create = "create"), - (O.createMany = "createMany"), - (O.createManyAndReturn = "createManyAndReturn"), - (O.update = "update"), - (O.updateMany = "updateMany"), - (O.updateManyAndReturn = "updateManyAndReturn"), - (O.upsert = "upsert"), - (O.delete = "delete"), - (O.deleteMany = "deleteMany"), - (O.groupBy = "groupBy"), - (O.count = "count"), - (O.aggregate = "aggregate"), - (O.findRaw = "findRaw"), - (O.aggregateRaw = "aggregateRaw"), - O -))(Ct || {}); -var Tu = Qe(Xi()); -var Au = { - red: Ye, - gray: Bi, - dim: ur, - bold: lr, - underline: _i, - highlightSource: (e) => e.highlight(), - }, - Ru = { - red: (e) => e, - gray: (e) => e, - dim: (e) => e, - bold: (e) => e, - underline: (e) => e, - highlightSource: (e) => e, - }; -function Cu({ message: e, originalMethod: t, isPanic: r, callArguments: n }) { - return { - functionName: `prisma.${t}()`, - message: e, - isPanic: r ?? !1, - callArguments: n, - }; -} -function Su( - { - functionName: e, - location: t, - message: r, - isPanic: n, - contextLines: i, - callArguments: o, - }, - s, -) { - let a = [""], - l = t ? " in" : ":"; - if ( - (n - ? (a.push( - s.red( - `Oops, an unknown error occurred! This is ${s.bold("on us")}, you did nothing wrong.`, - ), - ), - a.push( - s.red(`It occurred in the ${s.bold(`\`${e}\``)} invocation${l}`), - )) - : a.push(s.red(`Invalid ${s.bold(`\`${e}\``)} invocation${l}`)), - t && a.push(s.underline(Iu(t))), - i) - ) { - a.push(""); - let d = [i.toString()]; - (o && (d.push(o), d.push(s.dim(")"))), a.push(d.join("")), o && a.push("")); - } else (a.push(""), o && a.push(o), a.push("")); - return ( - a.push(r), - a.join(` -`) - ); -} -function Iu(e) { - let t = [e.fileName]; - return ( - e.lineNumber && t.push(String(e.lineNumber)), - e.columnNumber && t.push(String(e.columnNumber)), - t.join(":") - ); -} -function Cr(e) { - let t = e.showColors ? Au : Ru, - r; - return ( - typeof $getTemplateParameters < "u" - ? (r = $getTemplateParameters(e, t)) - : (r = Cu(e)), - Su(r, t) - ); -} -f(); -u(); -c(); -p(); -m(); -var Co = Qe(Sn()); -f(); -u(); -c(); -p(); -m(); -function Po(e, t, r) { - let n = vo(e), - i = Ou(n), - o = Du(i); - o ? Sr(o, t, r) : t.addErrorMessage(() => "Unknown error"); -} -function vo(e) { - return e.errors.flatMap((t) => (t.kind === "Union" ? vo(t) : [t])); -} -function Ou(e) { - let t = new Map(), - r = []; - for (let n of e) { - if (n.kind !== "InvalidArgumentType") { - r.push(n); - continue; - } - let i = `${n.selectionPath.join(".")}:${n.argumentPath.join(".")}`, - o = t.get(i); - o - ? t.set(i, { - ...n, - argument: { - ...n.argument, - typeNames: ku(o.argument.typeNames, n.argument.typeNames), - }, - }) - : t.set(i, n); - } - return (r.push(...t.values()), r); -} -function ku(e, t) { - return [...new Set(e.concat(t))]; -} -function Du(e) { - return xn(e, (t, r) => { - let n = bo(t), - i = bo(r); - return n !== i ? n - i : xo(t) - xo(r); - }); -} -function bo(e) { - let t = 0; - return ( - Array.isArray(e.selectionPath) && (t += e.selectionPath.length), - Array.isArray(e.argumentPath) && (t += e.argumentPath.length), - t - ); -} -function xo(e) { - switch (e.kind) { - case "InvalidArgumentValue": - case "ValueTooLarge": - return 20; - case "InvalidArgumentType": - return 10; - case "RequiredArgumentMissing": - return -10; - default: - return 0; - } -} -f(); -u(); -c(); -p(); -m(); -var le = class { - constructor(t, r) { - this.name = t; - this.value = r; - } - isRequired = !1; - makeRequired() { - return ((this.isRequired = !0), this); - } - write(t) { - let { - colors: { green: r }, - } = t.context; - (t.addMarginSymbol(r(this.isRequired ? "+" : "?")), - t.write(r(this.name)), - this.isRequired || t.write(r("?")), - t.write(r(": ")), - typeof this.value == "string" - ? t.write(r(this.value)) - : t.write(this.value)); - } -}; -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -Ao(); -f(); -u(); -c(); -p(); -m(); -var nt = class { - constructor(t = 0, r) { - this.context = r; - this.currentIndent = t; - } - lines = []; - currentLine = ""; - currentIndent = 0; - marginSymbol; - afterNextNewLineCallback; - write(t) { - return ( - typeof t == "string" ? (this.currentLine += t) : t.write(this), - this - ); - } - writeJoined(t, r, n = (i, o) => o.write(i)) { - let i = r.length - 1; - for (let o = 0; o < r.length; o++) - (n(r[o], this), o !== i && this.write(t)); - return this; - } - writeLine(t) { - return this.write(t).newLine(); - } - newLine() { - (this.lines.push(this.indentedCurrentLine()), - (this.currentLine = ""), - (this.marginSymbol = void 0)); - let t = this.afterNextNewLineCallback; - return ((this.afterNextNewLineCallback = void 0), t?.(), this); - } - withIndent(t) { - return (this.indent(), t(this), this.unindent(), this); - } - afterNextNewline(t) { - return ((this.afterNextNewLineCallback = t), this); - } - indent() { - return (this.currentIndent++, this); - } - unindent() { - return (this.currentIndent > 0 && this.currentIndent--, this); - } - addMarginSymbol(t) { - return ((this.marginSymbol = t), this); - } - toString() { - return this.lines.concat(this.indentedCurrentLine()).join(` -`); - } - getCurrentLineLength() { - return this.currentLine.length; - } - indentedCurrentLine() { - let t = this.currentLine.padStart( - this.currentLine.length + 2 * this.currentIndent, - ); - return this.marginSymbol ? this.marginSymbol + t.slice(1) : t; - } -}; -To(); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var Ir = class { - constructor(t) { - this.value = t; - } - write(t) { - t.write(this.value); - } - markAsError() { - this.value.markAsError(); - } -}; -f(); -u(); -c(); -p(); -m(); -var Or = (e) => e, - kr = { bold: Or, red: Or, green: Or, dim: Or, enabled: !1 }, - Ro = { bold: lr, red: Ye, green: Ni, dim: ur, enabled: !0 }, - it = { - write(e) { - e.writeLine(","); - }, - }; -f(); -u(); -c(); -p(); -m(); -var we = class { - constructor(t) { - this.contents = t; - } - isUnderlined = !1; - color = (t) => t; - underline() { - return ((this.isUnderlined = !0), this); - } - setColor(t) { - return ((this.color = t), this); - } - write(t) { - let r = t.getCurrentLineLength(); - (t.write(this.color(this.contents)), - this.isUnderlined && - t.afterNextNewline(() => { - t.write(" ".repeat(r)).writeLine( - this.color("~".repeat(this.contents.length)), - ); - })); - } -}; -f(); -u(); -c(); -p(); -m(); -var _e = class { - hasError = !1; - markAsError() { - return ((this.hasError = !0), this); - } -}; -var ot = class extends _e { - items = []; - addItem(t) { - return (this.items.push(new Ir(t)), this); - } - getField(t) { - return this.items[t]; - } - getPrintWidth() { - return this.items.length === 0 - ? 2 - : Math.max(...this.items.map((r) => r.value.getPrintWidth())) + 2; - } - write(t) { - if (this.items.length === 0) { - this.writeEmpty(t); - return; - } - this.writeWithItems(t); - } - writeEmpty(t) { - let r = new we("[]"); - (this.hasError && r.setColor(t.context.colors.red).underline(), t.write(r)); - } - writeWithItems(t) { - let { colors: r } = t.context; - (t - .writeLine("[") - .withIndent(() => t.writeJoined(it, this.items).newLine()) - .write("]"), - this.hasError && - t.afterNextNewline(() => { - t.writeLine(r.red("~".repeat(this.getPrintWidth()))); - })); - } - asObject() {} -}; -var st = class e extends _e { - fields = {}; - suggestions = []; - addField(t) { - this.fields[t.name] = t; - } - addSuggestion(t) { - this.suggestions.push(t); - } - getField(t) { - return this.fields[t]; - } - getDeepField(t) { - let [r, ...n] = t, - i = this.getField(r); - if (!i) return; - let o = i; - for (let s of n) { - let a; - if ( - (o.value instanceof e - ? (a = o.value.getField(s)) - : o.value instanceof ot && (a = o.value.getField(Number(s))), - !a) - ) - return; - o = a; - } - return o; - } - getDeepFieldValue(t) { - return t.length === 0 ? this : this.getDeepField(t)?.value; - } - hasField(t) { - return !!this.getField(t); - } - removeAllFields() { - this.fields = {}; - } - removeField(t) { - delete this.fields[t]; - } - getFields() { - return this.fields; - } - isEmpty() { - return Object.keys(this.fields).length === 0; - } - getFieldValue(t) { - return this.getField(t)?.value; - } - getDeepSubSelectionValue(t) { - let r = this; - for (let n of t) { - if (!(r instanceof e)) return; - let i = r.getSubSelectionValue(n); - if (!i) return; - r = i; - } - return r; - } - getDeepSelectionParent(t) { - let r = this.getSelectionParent(); - if (!r) return; - let n = r; - for (let i of t) { - let o = n.value.getFieldValue(i); - if (!o || !(o instanceof e)) return; - let s = o.getSelectionParent(); - if (!s) return; - n = s; - } - return n; - } - getSelectionParent() { - let t = this.getField("select")?.value.asObject(); - if (t) return { kind: "select", value: t }; - let r = this.getField("include")?.value.asObject(); - if (r) return { kind: "include", value: r }; - } - getSubSelectionValue(t) { - return this.getSelectionParent()?.value.fields[t].value; - } - getPrintWidth() { - let t = Object.values(this.fields); - return t.length == 0 ? 2 : Math.max(...t.map((n) => n.getPrintWidth())) + 2; - } - write(t) { - let r = Object.values(this.fields); - if (r.length === 0 && this.suggestions.length === 0) { - this.writeEmpty(t); - return; - } - this.writeWithContents(t, r); - } - asObject() { - return this; - } - writeEmpty(t) { - let r = new we("{}"); - (this.hasError && r.setColor(t.context.colors.red).underline(), t.write(r)); - } - writeWithContents(t, r) { - (t.writeLine("{").withIndent(() => { - t.writeJoined(it, [...r, ...this.suggestions]).newLine(); - }), - t.write("}"), - this.hasError && - t.afterNextNewline(() => { - t.writeLine(t.context.colors.red("~".repeat(this.getPrintWidth()))); - })); - } -}; -f(); -u(); -c(); -p(); -m(); -var H = class extends _e { - constructor(r) { - super(); - this.text = r; - } - getPrintWidth() { - return this.text.length; - } - write(r) { - let n = new we(this.text); - (this.hasError && n.underline().setColor(r.context.colors.red), r.write(n)); - } - asObject() {} -}; -f(); -u(); -c(); -p(); -m(); -var St = class { - fields = []; - addField(t, r) { - return ( - this.fields.push({ - write(n) { - let { green: i, dim: o } = n.context.colors; - n.write(i(o(`${t}: ${r}`))).addMarginSymbol(i(o("+"))); - }, - }), - this - ); - } - write(t) { - let { - colors: { green: r }, - } = t.context; - t.writeLine(r("{")) - .withIndent(() => { - t.writeJoined(it, this.fields).newLine(); - }) - .write(r("}")) - .addMarginSymbol(r("+")); - } -}; -function Sr(e, t, r) { - switch (e.kind) { - case "MutuallyExclusiveFields": - Mu(e, t); - break; - case "IncludeOnScalar": - _u(e, t); - break; - case "EmptySelection": - Nu(e, t, r); - break; - case "UnknownSelectionField": - Bu(e, t); - break; - case "InvalidSelectionValue": - qu(e, t); - break; - case "UnknownArgument": - Vu(e, t); - break; - case "UnknownInputField": - $u(e, t); - break; - case "RequiredArgumentMissing": - ju(e, t); - break; - case "InvalidArgumentType": - Gu(e, t); - break; - case "InvalidArgumentValue": - Ju(e, t); - break; - case "ValueTooLarge": - Qu(e, t); - break; - case "SomeFieldsMissing": - Ku(e, t); - break; - case "TooManyFieldsGiven": - Wu(e, t); - break; - case "Union": - Po(e, t, r); - break; - default: - throw new Error("not implemented: " + e.kind); - } -} -function Mu(e, t) { - let r = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - (r && - (r.getField(e.firstField)?.markAsError(), - r.getField(e.secondField)?.markAsError()), - t.addErrorMessage( - (n) => - `Please ${n.bold("either")} use ${n.green(`\`${e.firstField}\``)} or ${n.green(`\`${e.secondField}\``)}, but ${n.red("not both")} at the same time.`, - )); -} -function _u(e, t) { - let [r, n] = at(e.selectionPath), - i = e.outputType, - o = t.arguments.getDeepSelectionParent(r)?.value; - if (o && (o.getField(n)?.markAsError(), i)) - for (let s of i.fields) - s.isRelation && o.addSuggestion(new le(s.name, "true")); - t.addErrorMessage((s) => { - let a = `Invalid scalar field ${s.red(`\`${n}\``)} for ${s.bold("include")} statement`; - return ( - i ? (a += ` on model ${s.bold(i.name)}. ${It(s)}`) : (a += "."), - (a += ` -Note that ${s.bold("include")} statements only accept relation fields.`), - a - ); - }); -} -function Nu(e, t, r) { - let n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - if (n) { - let i = n.getField("omit")?.value.asObject(); - if (i) { - Fu(e, t, i); - return; - } - if (n.hasField("select")) { - Lu(e, t); - return; - } - } - if (r?.[Se(e.outputType.name)]) { - Uu(e, t); - return; - } - t.addErrorMessage( - () => `Unknown field at "${e.selectionPath.join(".")} selection"`, - ); -} -function Fu(e, t, r) { - r.removeAllFields(); - for (let n of e.outputType.fields) r.addSuggestion(new le(n.name, "false")); - t.addErrorMessage( - (n) => - `The ${n.red("omit")} statement includes every field of the model ${n.bold(e.outputType.name)}. At least one field must be included in the result`, - ); -} -function Lu(e, t) { - let r = e.outputType, - n = t.arguments.getDeepSelectionParent(e.selectionPath)?.value, - i = n?.isEmpty() ?? !1; - (n && (n.removeAllFields(), Oo(n, r)), - t.addErrorMessage((o) => - i - ? `The ${o.red("`select`")} statement for type ${o.bold(r.name)} must not be empty. ${It(o)}` - : `The ${o.red("`select`")} statement for type ${o.bold(r.name)} needs ${o.bold("at least one truthy value")}.`, - )); -} -function Uu(e, t) { - let r = new St(); - for (let i of e.outputType.fields) - i.isRelation || r.addField(i.name, "false"); - let n = new le("omit", r).makeRequired(); - if (e.selectionPath.length === 0) t.arguments.addSuggestion(n); - else { - let [i, o] = at(e.selectionPath), - a = t.arguments.getDeepSelectionParent(i)?.value.asObject()?.getField(o); - if (a) { - let l = a?.value.asObject() ?? new st(); - (l.addSuggestion(n), (a.value = l)); - } - } - t.addErrorMessage( - (i) => - `The global ${i.red("omit")} configuration excludes every field of the model ${i.bold(e.outputType.name)}. At least one field must be included in the result`, - ); -} -function Bu(e, t) { - let r = ko(e.selectionPath, t); - if (r.parentKind !== "unknown") { - r.field.markAsError(); - let n = r.parent; - switch (r.parentKind) { - case "select": - Oo(n, e.outputType); - break; - case "include": - Hu(n, e.outputType); - break; - case "omit": - zu(n, e.outputType); - break; - } - } - t.addErrorMessage((n) => { - let i = [`Unknown field ${n.red(`\`${r.fieldName}\``)}`]; - return ( - r.parentKind !== "unknown" && - i.push(`for ${n.bold(r.parentKind)} statement`), - i.push(`on model ${n.bold(`\`${e.outputType.name}\``)}.`), - i.push(It(n)), - i.join(" ") - ); - }); -} -function qu(e, t) { - let r = ko(e.selectionPath, t); - (r.parentKind !== "unknown" && r.field.value.markAsError(), - t.addErrorMessage( - (n) => - `Invalid value for selection field \`${n.red(r.fieldName)}\`: ${e.underlyingError}`, - )); -} -function Vu(e, t) { - let r = e.argumentPath[0], - n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - (n && (n.getField(r)?.markAsError(), Yu(n, e.arguments)), - t.addErrorMessage((i) => - So( - i, - r, - e.arguments.map((o) => o.name), - ), - )); -} -function $u(e, t) { - let [r, n] = at(e.argumentPath), - i = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - if (i) { - i.getDeepField(e.argumentPath)?.markAsError(); - let o = i.getDeepFieldValue(r)?.asObject(); - o && Do(o, e.inputType); - } - t.addErrorMessage((o) => - So( - o, - n, - e.inputType.fields.map((s) => s.name), - ), - ); -} -function So(e, t, r) { - let n = [`Unknown argument \`${e.red(t)}\`.`], - i = Xu(t, r); - return ( - i && n.push(`Did you mean \`${e.green(i)}\`?`), - r.length > 0 && n.push(It(e)), - n.join(" ") - ); -} -function ju(e, t) { - let r; - t.addErrorMessage((l) => - r?.value instanceof H && r.value.text === "null" - ? `Argument \`${l.green(o)}\` must not be ${l.red("null")}.` - : `Argument \`${l.green(o)}\` is missing.`, - ); - let n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - if (!n) return; - let [i, o] = at(e.argumentPath), - s = new St(), - a = n.getDeepFieldValue(i)?.asObject(); - if (a) { - if ( - ((r = a.getField(o)), - r && a.removeField(o), - e.inputTypes.length === 1 && e.inputTypes[0].kind === "object") - ) { - for (let l of e.inputTypes[0].fields) - s.addField(l.name, l.typeNames.join(" | ")); - a.addSuggestion(new le(o, s).makeRequired()); - } else { - let l = e.inputTypes.map(Io).join(" | "); - a.addSuggestion(new le(o, l).makeRequired()); - } - if (e.dependentArgumentPath) { - n.getDeepField(e.dependentArgumentPath)?.markAsError(); - let [, l] = at(e.dependentArgumentPath); - t.addErrorMessage( - (d) => - `Argument \`${d.green(o)}\` is required because argument \`${d.green(l)}\` was provided.`, - ); - } - } -} -function Io(e) { - return e.kind === "list" ? `${Io(e.elementType)}[]` : e.name; -} -function Gu(e, t) { - let r = e.argument.name, - n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - (n && n.getDeepFieldValue(e.argumentPath)?.markAsError(), - t.addErrorMessage((i) => { - let o = Dr( - "or", - e.argument.typeNames.map((s) => i.green(s)), - ); - return `Argument \`${i.bold(r)}\`: Invalid value provided. Expected ${o}, provided ${i.red(e.inferredType)}.`; - })); -} -function Ju(e, t) { - let r = e.argument.name, - n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - (n && n.getDeepFieldValue(e.argumentPath)?.markAsError(), - t.addErrorMessage((i) => { - let o = [`Invalid value for argument \`${i.bold(r)}\``]; - if ( - (e.underlyingError && o.push(`: ${e.underlyingError}`), - o.push("."), - e.argument.typeNames.length > 0) - ) { - let s = Dr( - "or", - e.argument.typeNames.map((a) => i.green(a)), - ); - o.push(` Expected ${s}.`); - } - return o.join(""); - })); -} -function Qu(e, t) { - let r = e.argument.name, - n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(), - i; - if (n) { - let s = n.getDeepField(e.argumentPath)?.value; - (s?.markAsError(), s instanceof H && (i = s.text)); - } - t.addErrorMessage((o) => { - let s = ["Unable to fit value"]; - return ( - i && s.push(o.red(i)), - s.push(`into a 64-bit signed integer for field \`${o.bold(r)}\``), - s.join(" ") - ); - }); -} -function Ku(e, t) { - let r = e.argumentPath[e.argumentPath.length - 1], - n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - if (n) { - let i = n.getDeepFieldValue(e.argumentPath)?.asObject(); - i && Do(i, e.inputType); - } - t.addErrorMessage((i) => { - let o = [ - `Argument \`${i.bold(r)}\` of type ${i.bold(e.inputType.name)} needs`, - ]; - return ( - e.constraints.minFieldCount === 1 - ? e.constraints.requiredFields - ? o.push( - `${i.green("at least one of")} ${Dr( - "or", - e.constraints.requiredFields.map((s) => `\`${i.bold(s)}\``), - )} arguments.`, - ) - : o.push(`${i.green("at least one")} argument.`) - : o.push( - `${i.green(`at least ${e.constraints.minFieldCount}`)} arguments.`, - ), - o.push(It(i)), - o.join(" ") - ); - }); -} -function Wu(e, t) { - let r = e.argumentPath[e.argumentPath.length - 1], - n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(), - i = []; - if (n) { - let o = n.getDeepFieldValue(e.argumentPath)?.asObject(); - o && (o.markAsError(), (i = Object.keys(o.getFields()))); - } - t.addErrorMessage((o) => { - let s = [ - `Argument \`${o.bold(r)}\` of type ${o.bold(e.inputType.name)} needs`, - ]; - return ( - e.constraints.minFieldCount === 1 && e.constraints.maxFieldCount == 1 - ? s.push(`${o.green("exactly one")} argument,`) - : e.constraints.maxFieldCount == 1 - ? s.push(`${o.green("at most one")} argument,`) - : s.push( - `${o.green(`at most ${e.constraints.maxFieldCount}`)} arguments,`, - ), - s.push( - `but you provided ${Dr( - "and", - i.map((a) => o.red(a)), - )}. Please choose`, - ), - e.constraints.maxFieldCount === 1 - ? s.push("one.") - : s.push(`${e.constraints.maxFieldCount}.`), - s.join(" ") - ); - }); -} -function Oo(e, t) { - for (let r of t.fields) - e.hasField(r.name) || e.addSuggestion(new le(r.name, "true")); -} -function Hu(e, t) { - for (let r of t.fields) - r.isRelation && - !e.hasField(r.name) && - e.addSuggestion(new le(r.name, "true")); -} -function zu(e, t) { - for (let r of t.fields) - !e.hasField(r.name) && - !r.isRelation && - e.addSuggestion(new le(r.name, "true")); -} -function Yu(e, t) { - for (let r of t) - e.hasField(r.name) || - e.addSuggestion(new le(r.name, r.typeNames.join(" | "))); -} -function ko(e, t) { - let [r, n] = at(e), - i = t.arguments.getDeepSubSelectionValue(r)?.asObject(); - if (!i) return { parentKind: "unknown", fieldName: n }; - let o = i.getFieldValue("select")?.asObject(), - s = i.getFieldValue("include")?.asObject(), - a = i.getFieldValue("omit")?.asObject(), - l = o?.getField(n); - return o && l - ? { parentKind: "select", parent: o, field: l, fieldName: n } - : ((l = s?.getField(n)), - s && l - ? { parentKind: "include", field: l, parent: s, fieldName: n } - : ((l = a?.getField(n)), - a && l - ? { parentKind: "omit", field: l, parent: a, fieldName: n } - : { parentKind: "unknown", fieldName: n })); -} -function Do(e, t) { - if (t.kind === "object") - for (let r of t.fields) - e.hasField(r.name) || - e.addSuggestion(new le(r.name, r.typeNames.join(" | "))); -} -function at(e) { - let t = [...e], - r = t.pop(); - if (!r) throw new Error("unexpected empty path"); - return [t, r]; -} -function It({ green: e, enabled: t }) { - return ( - "Available options are " + - (t ? `listed in ${e("green")}` : "marked with ?") + - "." - ); -} -function Dr(e, t) { - if (t.length === 1) return t[0]; - let r = [...t], - n = r.pop(); - return `${r.join(", ")} ${e} ${n}`; -} -var Zu = 3; -function Xu(e, t) { - let r = 1 / 0, - n; - for (let i of t) { - let o = (0, Co.default)(e, i); - o > Zu || (o < r && ((r = o), (n = i))); - } - return n; -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var Ot = class { - modelName; - name; - typeName; - isList; - isEnum; - constructor(t, r, n, i, o) { - ((this.modelName = t), - (this.name = r), - (this.typeName = n), - (this.isList = i), - (this.isEnum = o)); - } - _toGraphQLInputType() { - let t = this.isList ? "List" : "", - r = this.isEnum ? "Enum" : ""; - return `${t}${r}${this.typeName}FieldRefInput<${this.modelName}>`; - } -}; -function lt(e) { - return e instanceof Ot; -} -f(); -u(); -c(); -p(); -m(); -var Mr = Symbol(), - On = new WeakMap(), - Te = class { - constructor(t) { - t === Mr - ? On.set(this, `Prisma.${this._getName()}`) - : On.set( - this, - `new Prisma.${this._getNamespace()}.${this._getName()}()`, - ); - } - _getName() { - return this.constructor.name; - } - toString() { - return On.get(this); - } - }, - kt = class extends Te { - _getNamespace() { - return "NullTypes"; - } - }, - Dt = class extends kt { - #e; - }; -Dn(Dt, "DbNull"); -var Mt = class extends kt { - #e; -}; -Dn(Mt, "JsonNull"); -var _t = class extends kt { - #e; -}; -Dn(_t, "AnyNull"); -var kn = { - classes: { DbNull: Dt, JsonNull: Mt, AnyNull: _t }, - instances: { DbNull: new Dt(Mr), JsonNull: new Mt(Mr), AnyNull: new _t(Mr) }, -}; -function Dn(e, t) { - Object.defineProperty(e, "name", { value: t, configurable: !0 }); -} -f(); -u(); -c(); -p(); -m(); -var Mo = ": ", - _r = class { - constructor(t, r) { - this.name = t; - this.value = r; - } - hasError = !1; - markAsError() { - this.hasError = !0; - } - getPrintWidth() { - return this.name.length + this.value.getPrintWidth() + Mo.length; - } - write(t) { - let r = new we(this.name); - (this.hasError && r.underline().setColor(t.context.colors.red), - t.write(r).write(Mo).write(this.value)); - } - }; -var Mn = class { - arguments; - errorMessages = []; - constructor(t) { - this.arguments = t; - } - write(t) { - t.write(this.arguments); - } - addErrorMessage(t) { - this.errorMessages.push(t); - } - renderAllMessages(t) { - return this.errorMessages.map((r) => r(t)).join(` -`); - } -}; -function ut(e) { - return new Mn(_o(e)); -} -function _o(e) { - let t = new st(); - for (let [r, n] of Object.entries(e)) { - let i = new _r(r, No(n)); - t.addField(i); - } - return t; -} -function No(e) { - if (typeof e == "string") return new H(JSON.stringify(e)); - if (typeof e == "number" || typeof e == "boolean") return new H(String(e)); - if (typeof e == "bigint") return new H(`${e}n`); - if (e === null) return new H("null"); - if (e === void 0) return new H("undefined"); - if (rt(e)) return new H(`new Prisma.Decimal("${e.toFixed()}")`); - if (e instanceof Uint8Array) - return w.Buffer.isBuffer(e) - ? new H(`Buffer.alloc(${e.byteLength})`) - : new H(`new Uint8Array(${e.byteLength})`); - if (e instanceof Date) { - let t = yr(e) ? e.toISOString() : "Invalid Date"; - return new H(`new Date("${t}")`); - } - return e instanceof Te - ? new H(`Prisma.${e._getName()}`) - : lt(e) - ? new H(`prisma.${Se(e.modelName)}.$fields.${e.name}`) - : Array.isArray(e) - ? ec(e) - : typeof e == "object" - ? _o(e) - : new H(Object.prototype.toString.call(e)); -} -function ec(e) { - let t = new ot(); - for (let r of e) t.addItem(No(r)); - return t; -} -function Nr(e, t) { - let r = t === "pretty" ? Ro : kr, - n = e.renderAllMessages(r), - i = new nt(0, { colors: r }).write(e).toString(); - return { message: n, args: i }; -} -function Fr({ - args: e, - errors: t, - errorFormat: r, - callsite: n, - originalMethod: i, - clientVersion: o, - globalOmit: s, -}) { - let a = ut(e); - for (let h of t) Sr(h, a, s); - let { message: l, args: d } = Nr(a, r), - g = Cr({ - message: l, - callsite: n, - originalMethod: i, - showColors: r === "pretty", - callArguments: d, - }); - throw new ee(g, { clientVersion: o }); -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -function Ee(e) { - return e.replace(/^./, (t) => t.toLowerCase()); -} -f(); -u(); -c(); -p(); -m(); -function Lo(e, t, r) { - let n = Ee(r); - return !t.result || !(t.result.$allModels || t.result[n]) - ? e - : tc({ - ...e, - ...Fo(t.name, e, t.result.$allModels), - ...Fo(t.name, e, t.result[n]), - }); -} -function tc(e) { - let t = new ge(), - r = (n, i) => - t.getOrCreate(n, () => - i.has(n) - ? [n] - : (i.add(n), e[n] ? e[n].needs.flatMap((o) => r(o, i)) : [n]), - ); - return gr(e, (n) => ({ ...n, needs: r(n.name, new Set()) })); -} -function Fo(e, t, r) { - return r - ? gr(r, ({ needs: n, compute: i }, o) => ({ - name: o, - needs: n ? Object.keys(n).filter((s) => n[s]) : [], - compute: rc(t, o, i), - })) - : {}; -} -function rc(e, t, r) { - let n = e?.[t]?.compute; - return n ? (i) => r({ ...i, [t]: n(i) }) : r; -} -function Uo(e, t) { - if (!t) return e; - let r = { ...e }; - for (let n of Object.values(t)) - if (e[n.name]) for (let i of n.needs) r[i] = !0; - return r; -} -function Bo(e, t) { - if (!t) return e; - let r = { ...e }; - for (let n of Object.values(t)) - if (!e[n.name]) for (let i of n.needs) delete r[i]; - return r; -} -var Lr = class { - constructor(t, r) { - this.extension = t; - this.previous = r; - } - computedFieldsCache = new ge(); - modelExtensionsCache = new ge(); - queryCallbacksCache = new ge(); - clientExtensions = At(() => - this.extension.client - ? { - ...this.previous?.getAllClientExtensions(), - ...this.extension.client, - } - : this.previous?.getAllClientExtensions(), - ); - batchCallbacks = At(() => { - let t = this.previous?.getAllBatchQueryCallbacks() ?? [], - r = this.extension.query?.$__internalBatch; - return r ? t.concat(r) : t; - }); - getAllComputedFields(t) { - return this.computedFieldsCache.getOrCreate(t, () => - Lo(this.previous?.getAllComputedFields(t), this.extension, t), - ); - } - getAllClientExtensions() { - return this.clientExtensions.get(); - } - getAllModelExtensions(t) { - return this.modelExtensionsCache.getOrCreate(t, () => { - let r = Ee(t); - return !this.extension.model || - !(this.extension.model[r] || this.extension.model.$allModels) - ? this.previous?.getAllModelExtensions(t) - : { - ...this.previous?.getAllModelExtensions(t), - ...this.extension.model.$allModels, - ...this.extension.model[r], - }; - }); - } - getAllQueryCallbacks(t, r) { - return this.queryCallbacksCache.getOrCreate(`${t}:${r}`, () => { - let n = this.previous?.getAllQueryCallbacks(t, r) ?? [], - i = [], - o = this.extension.query; - return !o || !(o[t] || o.$allModels || o[r] || o.$allOperations) - ? n - : (o[t] !== void 0 && - (o[t][r] !== void 0 && i.push(o[t][r]), - o[t].$allOperations !== void 0 && i.push(o[t].$allOperations)), - t !== "$none" && - o.$allModels !== void 0 && - (o.$allModels[r] !== void 0 && i.push(o.$allModels[r]), - o.$allModels.$allOperations !== void 0 && - i.push(o.$allModels.$allOperations)), - o[r] !== void 0 && i.push(o[r]), - o.$allOperations !== void 0 && i.push(o.$allOperations), - n.concat(i)); - }); - } - getAllBatchQueryCallbacks() { - return this.batchCallbacks.get(); - } - }, - ct = class e { - constructor(t) { - this.head = t; - } - static empty() { - return new e(); - } - static single(t) { - return new e(new Lr(t)); - } - isEmpty() { - return this.head === void 0; - } - append(t) { - return new e(new Lr(t, this.head)); - } - getAllComputedFields(t) { - return this.head?.getAllComputedFields(t); - } - getAllClientExtensions() { - return this.head?.getAllClientExtensions(); - } - getAllModelExtensions(t) { - return this.head?.getAllModelExtensions(t); - } - getAllQueryCallbacks(t, r) { - return this.head?.getAllQueryCallbacks(t, r) ?? []; - } - getAllBatchQueryCallbacks() { - return this.head?.getAllBatchQueryCallbacks() ?? []; - } - }; -f(); -u(); -c(); -p(); -m(); -var Ur = class { - constructor(t) { - this.name = t; - } -}; -function qo(e) { - return e instanceof Ur; -} -function nc(e) { - return new Ur(e); -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var Vo = Symbol(), - Nt = class { - constructor(t) { - if (t !== Vo) - throw new Error("Skip instance can not be constructed directly"); - } - ifUndefined(t) { - return t === void 0 ? _n : t; - } - }, - _n = new Nt(Vo); -function be(e) { - return e instanceof Nt; -} -var ic = { - findUnique: "findUnique", - findUniqueOrThrow: "findUniqueOrThrow", - findFirst: "findFirst", - findFirstOrThrow: "findFirstOrThrow", - findMany: "findMany", - count: "aggregate", - create: "createOne", - createMany: "createMany", - createManyAndReturn: "createManyAndReturn", - update: "updateOne", - updateMany: "updateMany", - updateManyAndReturn: "updateManyAndReturn", - upsert: "upsertOne", - delete: "deleteOne", - deleteMany: "deleteMany", - executeRaw: "executeRaw", - queryRaw: "queryRaw", - aggregate: "aggregate", - groupBy: "groupBy", - runCommandRaw: "runCommandRaw", - findRaw: "findRaw", - aggregateRaw: "aggregateRaw", - }, - $o = "explicitly `undefined` values are not allowed"; -function Fn({ - modelName: e, - action: t, - args: r, - runtimeDataModel: n, - extensions: i = ct.empty(), - callsite: o, - clientMethod: s, - errorFormat: a, - clientVersion: l, - previewFeatures: d, - globalOmit: g, -}) { - let h = new Nn({ - runtimeDataModel: n, - modelName: e, - action: t, - rootArgs: r, - callsite: o, - extensions: i, - selectionPath: [], - argumentPath: [], - originalMethod: s, - errorFormat: a, - clientVersion: l, - previewFeatures: d, - globalOmit: g, - }); - return { modelName: e, action: ic[t], query: Ft(r, h) }; -} -function Ft({ select: e, include: t, ...r } = {}, n) { - let i = r.omit; - return (delete r.omit, { arguments: Go(r, n), selection: oc(e, t, i, n) }); -} -function oc(e, t, r, n) { - return e - ? (t - ? n.throwValidationError({ - kind: "MutuallyExclusiveFields", - firstField: "include", - secondField: "select", - selectionPath: n.getSelectionPath(), - }) - : r && - n.throwValidationError({ - kind: "MutuallyExclusiveFields", - firstField: "omit", - secondField: "select", - selectionPath: n.getSelectionPath(), - }), - uc(e, n)) - : sc(n, t, r); -} -function sc(e, t, r) { - let n = {}; - return ( - e.modelOrType && - !e.isRawAction() && - ((n.$composites = !0), (n.$scalars = !0)), - t && ac(n, t, e), - lc(n, r, e), - n - ); -} -function ac(e, t, r) { - for (let [n, i] of Object.entries(t)) { - if (be(i)) continue; - let o = r.nestSelection(n); - if ((Ln(i, o), i === !1 || i === void 0)) { - e[n] = !1; - continue; - } - let s = r.findField(n); - if ( - (s && - s.kind !== "object" && - r.throwValidationError({ - kind: "IncludeOnScalar", - selectionPath: r.getSelectionPath().concat(n), - outputType: r.getOutputTypeDescription(), - }), - s) - ) { - e[n] = Ft(i === !0 ? {} : i, o); - continue; - } - if (i === !0) { - e[n] = !0; - continue; - } - e[n] = Ft(i, o); - } -} -function lc(e, t, r) { - let n = r.getComputedFields(), - i = { ...r.getGlobalOmit(), ...t }, - o = Bo(i, n); - for (let [s, a] of Object.entries(o)) { - if (be(a)) continue; - Ln(a, r.nestSelection(s)); - let l = r.findField(s); - (n?.[s] && !l) || (e[s] = !a); - } -} -function uc(e, t) { - let r = {}, - n = t.getComputedFields(), - i = Uo(e, n); - for (let [o, s] of Object.entries(i)) { - if (be(s)) continue; - let a = t.nestSelection(o); - Ln(s, a); - let l = t.findField(o); - if (!(n?.[o] && !l)) { - if (s === !1 || s === void 0 || be(s)) { - r[o] = !1; - continue; - } - if (s === !0) { - l?.kind === "object" ? (r[o] = Ft({}, a)) : (r[o] = !0); - continue; - } - r[o] = Ft(s, a); - } - } - return r; -} -function jo(e, t) { - if (e === null) return null; - if (typeof e == "string" || typeof e == "number" || typeof e == "boolean") - return e; - if (typeof e == "bigint") return { $type: "BigInt", value: String(e) }; - if (Xe(e)) { - if (yr(e)) return { $type: "DateTime", value: e.toISOString() }; - t.throwValidationError({ - kind: "InvalidArgumentValue", - selectionPath: t.getSelectionPath(), - argumentPath: t.getArgumentPath(), - argument: { name: t.getArgumentName(), typeNames: ["Date"] }, - underlyingError: "Provided Date object is invalid", - }); - } - if (qo(e)) return { $type: "Param", value: e.name }; - if (lt(e)) - return { - $type: "FieldRef", - value: { _ref: e.name, _container: e.modelName }, - }; - if (Array.isArray(e)) return cc(e, t); - if (ArrayBuffer.isView(e)) { - let { buffer: r, byteOffset: n, byteLength: i } = e; - return { $type: "Bytes", value: w.Buffer.from(r, n, i).toString("base64") }; - } - if (pc(e)) return e.values; - if (rt(e)) return { $type: "Decimal", value: e.toFixed() }; - if (e instanceof Te) { - if (e !== kn.instances[e._getName()]) - throw new Error("Invalid ObjectEnumValue"); - return { $type: "Enum", value: e._getName() }; - } - if (mc(e)) return e.toJSON(); - if (typeof e == "object") return Go(e, t); - t.throwValidationError({ - kind: "InvalidArgumentValue", - selectionPath: t.getSelectionPath(), - argumentPath: t.getArgumentPath(), - argument: { name: t.getArgumentName(), typeNames: [] }, - underlyingError: `We could not serialize ${Object.prototype.toString.call(e)} value. Serialize the object to JSON or implement a ".toJSON()" method on it`, - }); -} -function Go(e, t) { - if (e.$type) return { $type: "Raw", value: e }; - let r = {}; - for (let n in e) { - let i = e[n], - o = t.nestArgument(n); - be(i) || - (i !== void 0 - ? (r[n] = jo(i, o)) - : t.isPreviewFeatureOn("strictUndefinedChecks") && - t.throwValidationError({ - kind: "InvalidArgumentValue", - argumentPath: o.getArgumentPath(), - selectionPath: t.getSelectionPath(), - argument: { name: t.getArgumentName(), typeNames: [] }, - underlyingError: $o, - })); - } - return r; -} -function cc(e, t) { - let r = []; - for (let n = 0; n < e.length; n++) { - let i = t.nestArgument(String(n)), - o = e[n]; - if (o === void 0 || be(o)) { - let s = o === void 0 ? "undefined" : "Prisma.skip"; - t.throwValidationError({ - kind: "InvalidArgumentValue", - selectionPath: i.getSelectionPath(), - argumentPath: i.getArgumentPath(), - argument: { name: `${t.getArgumentName()}[${n}]`, typeNames: [] }, - underlyingError: `Can not use \`${s}\` value within array. Use \`null\` or filter out \`${s}\` values`, - }); - } - r.push(jo(o, i)); - } - return r; -} -function pc(e) { - return typeof e == "object" && e !== null && e.__prismaRawParameters__ === !0; -} -function mc(e) { - return typeof e == "object" && e !== null && typeof e.toJSON == "function"; -} -function Ln(e, t) { - e === void 0 && - t.isPreviewFeatureOn("strictUndefinedChecks") && - t.throwValidationError({ - kind: "InvalidSelectionValue", - selectionPath: t.getSelectionPath(), - underlyingError: $o, - }); -} -var Nn = class e { - constructor(t) { - this.params = t; - this.params.modelName && - (this.modelOrType = - this.params.runtimeDataModel.models[this.params.modelName] ?? - this.params.runtimeDataModel.types[this.params.modelName]); - } - modelOrType; - throwValidationError(t) { - Fr({ - errors: [t], - originalMethod: this.params.originalMethod, - args: this.params.rootArgs ?? {}, - callsite: this.params.callsite, - errorFormat: this.params.errorFormat, - clientVersion: this.params.clientVersion, - globalOmit: this.params.globalOmit, - }); - } - getSelectionPath() { - return this.params.selectionPath; - } - getArgumentPath() { - return this.params.argumentPath; - } - getArgumentName() { - return this.params.argumentPath[this.params.argumentPath.length - 1]; - } - getOutputTypeDescription() { - if (!(!this.params.modelName || !this.modelOrType)) - return { - name: this.params.modelName, - fields: this.modelOrType.fields.map((t) => ({ - name: t.name, - typeName: "boolean", - isRelation: t.kind === "object", - })), - }; - } - isRawAction() { - return [ - "executeRaw", - "queryRaw", - "runCommandRaw", - "findRaw", - "aggregateRaw", - ].includes(this.params.action); - } - isPreviewFeatureOn(t) { - return this.params.previewFeatures.includes(t); - } - getComputedFields() { - if (this.params.modelName) - return this.params.extensions.getAllComputedFields(this.params.modelName); - } - findField(t) { - return this.modelOrType?.fields.find((r) => r.name === t); - } - nestSelection(t) { - let r = this.findField(t), - n = r?.kind === "object" ? r.type : void 0; - return new e({ - ...this.params, - modelName: n, - selectionPath: this.params.selectionPath.concat(t), - }); - } - getGlobalOmit() { - return this.params.modelName && this.shouldApplyGlobalOmit() - ? (this.params.globalOmit?.[Se(this.params.modelName)] ?? {}) - : {}; - } - shouldApplyGlobalOmit() { - switch (this.params.action) { - case "findFirst": - case "findFirstOrThrow": - case "findUniqueOrThrow": - case "findMany": - case "upsert": - case "findUnique": - case "createManyAndReturn": - case "create": - case "update": - case "updateManyAndReturn": - case "delete": - return !0; - case "executeRaw": - case "aggregateRaw": - case "runCommandRaw": - case "findRaw": - case "createMany": - case "deleteMany": - case "groupBy": - case "updateMany": - case "count": - case "aggregate": - case "queryRaw": - return !1; - default: - Ue(this.params.action, "Unknown action"); - } - } - nestArgument(t) { - return new e({ - ...this.params, - argumentPath: this.params.argumentPath.concat(t), - }); - } -}; -f(); -u(); -c(); -p(); -m(); -function Jo(e) { - if (!e._hasPreviewFlag("metrics")) - throw new ee( - "`metrics` preview feature must be enabled in order to access metrics API", - { clientVersion: e._clientVersion }, - ); -} -var Lt = class { - _client; - constructor(t) { - this._client = t; - } - prometheus(t) { - return ( - Jo(this._client), - this._client._engine.metrics({ format: "prometheus", ...t }) - ); - } - json(t) { - return ( - Jo(this._client), - this._client._engine.metrics({ format: "json", ...t }) - ); - } -}; -f(); -u(); -c(); -p(); -m(); -function fc(e, t) { - let r = At(() => dc(t)); - Object.defineProperty(e, "dmmf", { get: () => r.get() }); -} -function dc(e) { - return { - datamodel: { models: Un(e.models), enums: Un(e.enums), types: Un(e.types) }, - }; -} -function Un(e) { - return Object.entries(e).map(([t, r]) => ({ name: t, ...r })); -} -f(); -u(); -c(); -p(); -m(); -var Bn = new WeakMap(), - Br = "$$PrismaTypedSql", - Ut = class { - constructor(t, r) { - (Bn.set(this, { sql: t, values: r }), - Object.defineProperty(this, Br, { value: Br })); - } - get sql() { - return Bn.get(this).sql; - } - get values() { - return Bn.get(this).values; - } - }; -function gc(e) { - return (...t) => new Ut(e, t); -} -function qr(e) { - return e != null && e[Br] === Br; -} -f(); -u(); -c(); -p(); -m(); -var ua = Qe(gn()); -f(); -u(); -c(); -p(); -m(); -Qo(); -Gi(); -Hi(); -f(); -u(); -c(); -p(); -m(); -var ue = class e { - constructor(t, r) { - if (t.length - 1 !== r.length) - throw t.length === 0 - ? new TypeError("Expected at least 1 string") - : new TypeError( - `Expected ${t.length} strings to have ${t.length - 1} values`, - ); - let n = r.reduce((s, a) => s + (a instanceof e ? a.values.length : 1), 0); - ((this.values = new Array(n)), - (this.strings = new Array(n + 1)), - (this.strings[0] = t[0])); - let i = 0, - o = 0; - for (; i < r.length; ) { - let s = r[i++], - a = t[i]; - if (s instanceof e) { - this.strings[o] += s.strings[0]; - let l = 0; - for (; l < s.values.length; ) - ((this.values[o++] = s.values[l++]), - (this.strings[o] = s.strings[l])); - this.strings[o] += a; - } else ((this.values[o++] = s), (this.strings[o] = a)); - } - } - get sql() { - let t = this.strings.length, - r = 1, - n = this.strings[0]; - for (; r < t; ) n += `?${this.strings[r++]}`; - return n; - } - get statement() { - let t = this.strings.length, - r = 1, - n = this.strings[0]; - for (; r < t; ) n += `:${r}${this.strings[r++]}`; - return n; - } - get text() { - let t = this.strings.length, - r = 1, - n = this.strings[0]; - for (; r < t; ) n += `$${r}${this.strings[r++]}`; - return n; - } - inspect() { - return { - sql: this.sql, - statement: this.statement, - text: this.text, - values: this.values, - }; - } -}; -function hc(e, t = ",", r = "", n = "") { - if (e.length === 0) - throw new TypeError( - "Expected `join([])` to be called with an array of multiple elements, but got an empty array", - ); - return new ue([r, ...Array(e.length - 1).fill(t), n], e); -} -function Ko(e) { - return new ue([e], []); -} -var yc = Ko(""); -function Wo(e, ...t) { - return new ue(e, t); -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -function Bt(e) { - return { - getKeys() { - return Object.keys(e); - }, - getPropertyValue(t) { - return e[t]; - }, - }; -} -f(); -u(); -c(); -p(); -m(); -function te(e, t) { - return { - getKeys() { - return [e]; - }, - getPropertyValue() { - return t(); - }, - }; -} -f(); -u(); -c(); -p(); -m(); -function Be(e) { - let t = new ge(); - return { - getKeys() { - return e.getKeys(); - }, - getPropertyValue(r) { - return t.getOrCreate(r, () => e.getPropertyValue(r)); - }, - getPropertyDescriptor(r) { - return e.getPropertyDescriptor?.(r); - }, - }; -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var $r = { enumerable: !0, configurable: !0, writable: !0 }; -function jr(e) { - let t = new Set(e); - return { - getPrototypeOf: () => Object.prototype, - getOwnPropertyDescriptor: () => $r, - has: (r, n) => t.has(n), - set: (r, n, i) => t.add(n) && Reflect.set(r, n, i), - ownKeys: () => [...t], - }; -} -var Ho = Symbol.for("nodejs.util.inspect.custom"); -function me(e, t) { - let r = wc(t), - n = new Set(), - i = new Proxy(e, { - get(o, s) { - if (n.has(s)) return o[s]; - let a = r.get(s); - return a ? a.getPropertyValue(s) : o[s]; - }, - has(o, s) { - if (n.has(s)) return !0; - let a = r.get(s); - return a ? (a.has?.(s) ?? !0) : Reflect.has(o, s); - }, - ownKeys(o) { - let s = zo(Reflect.ownKeys(o), r), - a = zo(Array.from(r.keys()), r); - return [...new Set([...s, ...a, ...n])]; - }, - set(o, s, a) { - return r.get(s)?.getPropertyDescriptor?.(s)?.writable === !1 - ? !1 - : (n.add(s), Reflect.set(o, s, a)); - }, - getOwnPropertyDescriptor(o, s) { - let a = Reflect.getOwnPropertyDescriptor(o, s); - if (a && !a.configurable) return a; - let l = r.get(s); - return l - ? l.getPropertyDescriptor - ? { ...$r, ...l?.getPropertyDescriptor(s) } - : $r - : a; - }, - defineProperty(o, s, a) { - return (n.add(s), Reflect.defineProperty(o, s, a)); - }, - getPrototypeOf: () => Object.prototype, - }); - return ( - (i[Ho] = function () { - let o = { ...this }; - return (delete o[Ho], o); - }), - i - ); -} -function wc(e) { - let t = new Map(); - for (let r of e) { - let n = r.getKeys(); - for (let i of n) t.set(i, r); - } - return t; -} -function zo(e, t) { - return e.filter((r) => t.get(r)?.has?.(r) ?? !0); -} -f(); -u(); -c(); -p(); -m(); -function pt(e) { - return { - getKeys() { - return e; - }, - has() { - return !1; - }, - getPropertyValue() {}, - }; -} -f(); -u(); -c(); -p(); -m(); -function Gr(e, t) { - return { - batch: e, - transaction: - t?.kind === "batch" - ? { isolationLevel: t.options.isolationLevel } - : void 0, - }; -} -f(); -u(); -c(); -p(); -m(); -function Yo(e) { - if (e === void 0) return ""; - let t = ut(e); - return new nt(0, { colors: kr }).write(t).toString(); -} -f(); -u(); -c(); -p(); -m(); -var Ec = "P2037"; -function Jr({ error: e, user_facing_error: t }, r, n) { - return t.error_code - ? new se(bc(t, n), { - code: t.error_code, - clientVersion: r, - meta: t.meta, - batchRequestIdx: t.batch_request_idx, - }) - : new ae(e, { clientVersion: r, batchRequestIdx: t.batch_request_idx }); -} -function bc(e, t) { - let r = e.message; - return ( - (t === "postgresql" || t === "postgres" || t === "mysql") && - e.error_code === Ec && - (r += ` -Prisma Accelerate has built-in connection pooling to prevent such errors: https://pris.ly/client/error-accelerate`), - r - ); -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var qn = class { - getLocation() { - return null; - } -}; -function Ne(e) { - return typeof $EnabledCallSite == "function" && e !== "minimal" - ? new $EnabledCallSite() - : new qn(); -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var Zo = { _avg: !0, _count: !0, _sum: !0, _min: !0, _max: !0 }; -function mt(e = {}) { - let t = Pc(e); - return Object.entries(t).reduce( - (n, [i, o]) => ( - Zo[i] !== void 0 ? (n.select[i] = { select: o }) : (n[i] = o), - n - ), - { select: {} }, - ); -} -function Pc(e = {}) { - return typeof e._count == "boolean" - ? { ...e, _count: { _all: e._count } } - : e; -} -function Qr(e = {}) { - return (t) => (typeof e._count == "boolean" && (t._count = t._count._all), t); -} -function Xo(e, t) { - let r = Qr(e); - return t({ action: "aggregate", unpacker: r, argsMapper: mt })(e); -} -f(); -u(); -c(); -p(); -m(); -function vc(e = {}) { - let { select: t, ...r } = e; - return typeof t == "object" - ? mt({ ...r, _count: t }) - : mt({ ...r, _count: { _all: !0 } }); -} -function Tc(e = {}) { - return typeof e.select == "object" - ? (t) => Qr(e)(t)._count - : (t) => Qr(e)(t)._count._all; -} -function es(e, t) { - return t({ action: "count", unpacker: Tc(e), argsMapper: vc })(e); -} -f(); -u(); -c(); -p(); -m(); -function Ac(e = {}) { - let t = mt(e); - if (Array.isArray(t.by)) - for (let r of t.by) typeof r == "string" && (t.select[r] = !0); - else typeof t.by == "string" && (t.select[t.by] = !0); - return t; -} -function Rc(e = {}) { - return (t) => ( - typeof e?._count == "boolean" && - t.forEach((r) => { - r._count = r._count._all; - }), - t - ); -} -function ts(e, t) { - return t({ action: "groupBy", unpacker: Rc(e), argsMapper: Ac })(e); -} -function rs(e, t, r) { - if (t === "aggregate") return (n) => Xo(n, r); - if (t === "count") return (n) => es(n, r); - if (t === "groupBy") return (n) => ts(n, r); -} -f(); -u(); -c(); -p(); -m(); -function ns(e, t) { - let r = t.fields.filter((i) => !i.relationName), - n = no(r, "name"); - return new Proxy( - {}, - { - get(i, o) { - if (o in i || typeof o == "symbol") return i[o]; - let s = n[o]; - if (s) return new Ot(e, o, s.type, s.isList, s.kind === "enum"); - }, - ...jr(Object.keys(n)), - }, - ); -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var is = (e) => (Array.isArray(e) ? e : e.split(".")), - Vn = (e, t) => is(t).reduce((r, n) => r && r[n], e), - os = (e, t, r) => - is(t).reduceRight( - (n, i, o, s) => Object.assign({}, Vn(e, s.slice(0, o)), { [i]: n }), - r, - ); -function Cc(e, t) { - return e === void 0 || t === void 0 ? [] : [...t, "select", e]; -} -function Sc(e, t, r) { - return t === void 0 ? (e ?? {}) : os(t, r, e || !0); -} -function $n(e, t, r, n, i, o) { - let a = e._runtimeDataModel.models[t].fields.reduce( - (l, d) => ({ ...l, [d.name]: d }), - {}, - ); - return (l) => { - let d = Ne(e._errorFormat), - g = Cc(n, i), - h = Sc(l, o, g), - T = r({ dataPath: g, callsite: d })(h), - I = Ic(e, t); - return new Proxy(T, { - get(S, C) { - if (!I.includes(C)) return S[C]; - let F = [a[C].type, r, C], - B = [g, h]; - return $n(e, ...F, ...B); - }, - ...jr([...I, ...Object.getOwnPropertyNames(T)]), - }); - }; -} -function Ic(e, t) { - return e._runtimeDataModel.models[t].fields - .filter((r) => r.kind === "object") - .map((r) => r.name); -} -var Oc = [ - "findUnique", - "findUniqueOrThrow", - "findFirst", - "findFirstOrThrow", - "create", - "update", - "upsert", - "delete", - ], - kc = ["aggregate", "count", "groupBy"]; -function jn(e, t) { - let r = e._extensions.getAllModelExtensions(t) ?? {}, - n = [ - Dc(e, t), - _c(e, t), - Bt(r), - te("name", () => t), - te("$name", () => t), - te("$parent", () => e._appliedParent), - ]; - return me({}, n); -} -function Dc(e, t) { - let r = Ee(t), - n = Object.keys(Ct).concat("count"); - return { - getKeys() { - return n; - }, - getPropertyValue(i) { - let o = i, - s = (a) => (l) => { - let d = Ne(e._errorFormat); - return e._createPrismaPromise( - (g) => { - let h = { - args: l, - dataPath: [], - action: o, - model: t, - clientMethod: `${r}.${i}`, - jsModelName: r, - transaction: g, - callsite: d, - }; - return e._request({ ...h, ...a }); - }, - { action: o, args: l, model: t }, - ); - }; - return Oc.includes(o) ? $n(e, t, s) : Mc(i) ? rs(e, i, s) : s({}); - }, - }; -} -function Mc(e) { - return kc.includes(e); -} -function _c(e, t) { - return Be( - te("fields", () => { - let r = e._runtimeDataModel.models[t]; - return ns(t, r); - }), - ); -} -f(); -u(); -c(); -p(); -m(); -function ss(e) { - return e.replace(/^./, (t) => t.toUpperCase()); -} -var Gn = Symbol(); -function qt(e) { - let t = [ - Nc(e), - Fc(e), - te(Gn, () => e), - te("$parent", () => e._appliedParent), - ], - r = e._extensions.getAllClientExtensions(); - return (r && t.push(Bt(r)), me(e, t)); -} -function Nc(e) { - let t = Object.getPrototypeOf(e._originalClient), - r = [...new Set(Object.getOwnPropertyNames(t))]; - return { - getKeys() { - return r; - }, - getPropertyValue(n) { - return e[n]; - }, - }; -} -function Fc(e) { - let t = Object.keys(e._runtimeDataModel.models), - r = t.map(Ee), - n = [...new Set(t.concat(r))]; - return Be({ - getKeys() { - return n; - }, - getPropertyValue(i) { - let o = ss(i); - if (e._runtimeDataModel.models[o] !== void 0) return jn(e, o); - if (e._runtimeDataModel.models[i] !== void 0) return jn(e, i); - }, - getPropertyDescriptor(i) { - if (!r.includes(i)) return { enumerable: !1 }; - }, - }); -} -function as(e) { - return e[Gn] ? e[Gn] : e; -} -function ls(e) { - if (typeof e == "function") return e(this); - if (e.client?.__AccelerateEngine) { - let r = e.client.__AccelerateEngine; - this._originalClient._engine = new r( - this._originalClient._accelerateEngineConfig, - ); - } - let t = Object.create(this._originalClient, { - _extensions: { value: this._extensions.append(e) }, - _appliedParent: { value: this, configurable: !0 }, - $on: { value: void 0 }, - }); - return qt(t); -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -function us({ result: e, modelName: t, select: r, omit: n, extensions: i }) { - let o = i.getAllComputedFields(t); - if (!o) return e; - let s = [], - a = []; - for (let l of Object.values(o)) { - if (n) { - if (n[l.name]) continue; - let d = l.needs.filter((g) => n[g]); - d.length > 0 && a.push(pt(d)); - } else if (r) { - if (!r[l.name]) continue; - let d = l.needs.filter((g) => !r[g]); - d.length > 0 && a.push(pt(d)); - } - Lc(e, l.needs) && s.push(Uc(l, me(e, s))); - } - return s.length > 0 || a.length > 0 ? me(e, [...s, ...a]) : e; -} -function Lc(e, t) { - return t.every((r) => bn(e, r)); -} -function Uc(e, t) { - return Be(te(e.name, () => e.compute(t))); -} -f(); -u(); -c(); -p(); -m(); -function Kr({ - visitor: e, - result: t, - args: r, - runtimeDataModel: n, - modelName: i, -}) { - if (Array.isArray(t)) { - for (let s = 0; s < t.length; s++) - t[s] = Kr({ - result: t[s], - args: r, - modelName: i, - runtimeDataModel: n, - visitor: e, - }); - return t; - } - let o = e(t, i, r) ?? t; - return ( - r.include && - cs({ - includeOrSelect: r.include, - result: o, - parentModelName: i, - runtimeDataModel: n, - visitor: e, - }), - r.select && - cs({ - includeOrSelect: r.select, - result: o, - parentModelName: i, - runtimeDataModel: n, - visitor: e, - }), - o - ); -} -function cs({ - includeOrSelect: e, - result: t, - parentModelName: r, - runtimeDataModel: n, - visitor: i, -}) { - for (let [o, s] of Object.entries(e)) { - if (!s || t[o] == null || be(s)) continue; - let l = n.models[r].fields.find((g) => g.name === o); - if (!l || l.kind !== "object" || !l.relationName) continue; - let d = typeof s == "object" ? s : {}; - t[o] = Kr({ - visitor: i, - result: t[o], - args: d, - modelName: l.type, - runtimeDataModel: n, - }); - } -} -function ps({ - result: e, - modelName: t, - args: r, - extensions: n, - runtimeDataModel: i, - globalOmit: o, -}) { - return n.isEmpty() || e == null || typeof e != "object" || !i.models[t] - ? e - : Kr({ - result: e, - args: r ?? {}, - modelName: t, - runtimeDataModel: i, - visitor: (a, l, d) => { - let g = Ee(l); - return us({ - result: a, - modelName: g, - select: d.select, - omit: d.select ? void 0 : { ...o?.[g], ...d.omit }, - extensions: n, - }); - }, - }); -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var Bc = ["$connect", "$disconnect", "$on", "$transaction", "$extends"], - ms = Bc; -function fs(e) { - if (e instanceof ue) return qc(e); - if (qr(e)) return Vc(e); - if (Array.isArray(e)) { - let r = [e[0]]; - for (let n = 1; n < e.length; n++) r[n] = Vt(e[n]); - return r; - } - let t = {}; - for (let r in e) t[r] = Vt(e[r]); - return t; -} -function qc(e) { - return new ue(e.strings, e.values); -} -function Vc(e) { - return new Ut(e.sql, e.values); -} -function Vt(e) { - if (typeof e != "object" || e == null || e instanceof Te || lt(e)) return e; - if (rt(e)) return new Me(e.toFixed()); - if (Xe(e)) return new Date(+e); - if (ArrayBuffer.isView(e)) return e.slice(0); - if (Array.isArray(e)) { - let t = e.length, - r; - for (r = Array(t); t--; ) r[t] = Vt(e[t]); - return r; - } - if (typeof e == "object") { - let t = {}; - for (let r in e) - r === "__proto__" - ? Object.defineProperty(t, r, { - value: Vt(e[r]), - configurable: !0, - enumerable: !0, - writable: !0, - }) - : (t[r] = Vt(e[r])); - return t; - } - Ue(e, "Unknown value"); -} -function gs(e, t, r, n = 0) { - return e._createPrismaPromise((i) => { - let o = t.customDataProxyFetch; - return ( - "transaction" in t && - i !== void 0 && - (t.transaction?.kind === "batch" && t.transaction.lock.then(), - (t.transaction = i)), - n === r.length - ? e._executeRequest(t) - : r[n]({ - model: t.model, - operation: t.model ? t.action : t.clientMethod, - args: fs(t.args ?? {}), - __internalParams: t, - query: (s, a = t) => { - let l = a.customDataProxyFetch; - return ( - (a.customDataProxyFetch = Es(o, l)), - (a.args = s), - gs(e, a, r, n + 1) - ); - }, - }) - ); - }); -} -function hs(e, t) { - let { jsModelName: r, action: n, clientMethod: i } = t, - o = r ? n : i; - if (e._extensions.isEmpty()) return e._executeRequest(t); - let s = e._extensions.getAllQueryCallbacks(r ?? "$none", o); - return gs(e, t, s); -} -function ys(e) { - return (t) => { - let r = { requests: t }, - n = t[0].extensions.getAllBatchQueryCallbacks(); - return n.length ? ws(r, n, 0, e) : e(r); - }; -} -function ws(e, t, r, n) { - if (r === t.length) return n(e); - let i = e.customDataProxyFetch, - o = e.requests[0].transaction; - return t[r]({ - args: { - queries: e.requests.map((s) => ({ - model: s.modelName, - operation: s.action, - args: s.args, - })), - transaction: o - ? { isolationLevel: o.kind === "batch" ? o.isolationLevel : void 0 } - : void 0, - }, - __internalParams: e, - query(s, a = e) { - let l = a.customDataProxyFetch; - return ((a.customDataProxyFetch = Es(i, l)), ws(a, t, r + 1, n)); - }, - }); -} -var ds = (e) => e; -function Es(e = ds, t = ds) { - return (r) => e(t(r)); -} -f(); -u(); -c(); -p(); -m(); -var bs = Z("prisma:client"), - xs = { Vercel: "vercel", "Netlify CI": "netlify" }; -function Ps({ postinstall: e, ciName: t, clientVersion: r, generator: n }) { - if ( - (bs("checkPlatformCaching:postinstall", e), - bs("checkPlatformCaching:ciName", t), - e === !0 && - !( - n?.output && typeof (n.output.fromEnvVar ?? n.output.value) == "string" - ) && - t && - t in xs) - ) { - let i = `Prisma has detected that this project was built on ${t}, which caches dependencies. This leads to an outdated Prisma Client because Prisma's auto-generation isn't triggered. To fix this, make sure to run the \`prisma generate\` command during the build process. +var ca=Object.create;var rn=Object.defineProperty;var pa=Object.getOwnPropertyDescriptor;var ma=Object.getOwnPropertyNames;var fa=Object.getPrototypeOf,da=Object.prototype.hasOwnProperty;var fe=(e,t)=>()=>(e&&(t=e(e=0)),t);var Je=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),or=(e,t)=>{for(var r in t)rn(e,r,{get:t[r],enumerable:!0})},ga=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of ma(t))!da.call(e,i)&&i!==r&&rn(e,i,{get:()=>t[i],enumerable:!(n=pa(t,i))||n.enumerable});return e};var Qe=(e,t,r)=>(r=e!=null?ca(fa(e)):{},ga(t||!e||!e.__esModule?rn(r,"default",{value:e,enumerable:!0}):r,e));var y,b,u=fe(()=>{"use strict";y={nextTick:(e,...t)=>{setTimeout(()=>{e(...t)},0)},env:{},version:"",cwd:()=>"/",stderr:{},argv:["/bin/node"],pid:1e4},{cwd:b}=y});var x,c=fe(()=>{"use strict";x=globalThis.performance??(()=>{let e=Date.now();return{now:()=>Date.now()-e}})()});var E,p=fe(()=>{"use strict";E=()=>{};E.prototype=E});var m=fe(()=>{"use strict"});var Ti=Je(ze=>{"use strict";f();u();c();p();m();var ci=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),ha=ci(e=>{"use strict";e.byteLength=l,e.toByteArray=g,e.fromByteArray=I;var t=[],r=[],n=typeof Uint8Array<"u"?Uint8Array:Array,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(o=0,s=i.length;o0)throw new Error("Invalid string. Length must be a multiple of 4");var M=S.indexOf("=");M===-1&&(M=C);var F=M===C?0:4-M%4;return[M,F]}function l(S){var C=a(S),M=C[0],F=C[1];return(M+F)*3/4-F}function d(S,C,M){return(C+M)*3/4-M}function g(S){var C,M=a(S),F=M[0],B=M[1],O=new n(d(S,F,B)),L=0,oe=B>0?F-4:F,J;for(J=0;J>16&255,O[L++]=C>>8&255,O[L++]=C&255;return B===2&&(C=r[S.charCodeAt(J)]<<2|r[S.charCodeAt(J+1)]>>4,O[L++]=C&255),B===1&&(C=r[S.charCodeAt(J)]<<10|r[S.charCodeAt(J+1)]<<4|r[S.charCodeAt(J+2)]>>2,O[L++]=C>>8&255,O[L++]=C&255),O}function h(S){return t[S>>18&63]+t[S>>12&63]+t[S>>6&63]+t[S&63]}function T(S,C,M){for(var F,B=[],O=C;Ooe?oe:L+O));return F===1?(C=S[M-1],B.push(t[C>>2]+t[C<<4&63]+"==")):F===2&&(C=(S[M-2]<<8)+S[M-1],B.push(t[C>>10]+t[C>>4&63]+t[C<<2&63]+"=")),B.join("")}}),ya=ci(e=>{e.read=function(t,r,n,i,o){var s,a,l=o*8-i-1,d=(1<>1,h=-7,T=n?o-1:0,I=n?-1:1,S=t[r+T];for(T+=I,s=S&(1<<-h)-1,S>>=-h,h+=l;h>0;s=s*256+t[r+T],T+=I,h-=8);for(a=s&(1<<-h)-1,s>>=-h,h+=i;h>0;a=a*256+t[r+T],T+=I,h-=8);if(s===0)s=1-g;else{if(s===d)return a?NaN:(S?-1:1)*(1/0);a=a+Math.pow(2,i),s=s-g}return(S?-1:1)*a*Math.pow(2,s-i)},e.write=function(t,r,n,i,o,s){var a,l,d,g=s*8-o-1,h=(1<>1,I=o===23?Math.pow(2,-24)-Math.pow(2,-77):0,S=i?0:s-1,C=i?1:-1,M=r<0||r===0&&1/r<0?1:0;for(r=Math.abs(r),isNaN(r)||r===1/0?(l=isNaN(r)?1:0,a=h):(a=Math.floor(Math.log(r)/Math.LN2),r*(d=Math.pow(2,-a))<1&&(a--,d*=2),a+T>=1?r+=I/d:r+=I*Math.pow(2,1-T),r*d>=2&&(a++,d/=2),a+T>=h?(l=0,a=h):a+T>=1?(l=(r*d-1)*Math.pow(2,o),a=a+T):(l=r*Math.pow(2,T-1)*Math.pow(2,o),a=0));o>=8;t[n+S]=l&255,S+=C,l/=256,o-=8);for(a=a<0;t[n+S]=a&255,S+=C,a/=256,g-=8);t[n+S-C]|=M*128}}),nn=ha(),We=ya(),si=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;ze.Buffer=A;ze.SlowBuffer=va;ze.INSPECT_MAX_BYTES=50;var sr=2147483647;ze.kMaxLength=sr;A.TYPED_ARRAY_SUPPORT=wa();!A.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function wa(){try{let e=new Uint8Array(1),t={foo:function(){return 42}};return Object.setPrototypeOf(t,Uint8Array.prototype),Object.setPrototypeOf(e,t),e.foo()===42}catch{return!1}}Object.defineProperty(A.prototype,"parent",{enumerable:!0,get:function(){if(A.isBuffer(this))return this.buffer}});Object.defineProperty(A.prototype,"offset",{enumerable:!0,get:function(){if(A.isBuffer(this))return this.byteOffset}});function xe(e){if(e>sr)throw new RangeError('The value "'+e+'" is invalid for option "size"');let t=new Uint8Array(e);return Object.setPrototypeOf(t,A.prototype),t}function A(e,t,r){if(typeof e=="number"){if(typeof t=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return an(e)}return pi(e,t,r)}A.poolSize=8192;function pi(e,t,r){if(typeof e=="string")return ba(e,t);if(ArrayBuffer.isView(e))return xa(e);if(e==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(de(e,ArrayBuffer)||e&&de(e.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(de(e,SharedArrayBuffer)||e&&de(e.buffer,SharedArrayBuffer)))return fi(e,t,r);if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let n=e.valueOf&&e.valueOf();if(n!=null&&n!==e)return A.from(n,t,r);let i=Pa(e);if(i)return i;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof e[Symbol.toPrimitive]=="function")return A.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}A.from=function(e,t,r){return pi(e,t,r)};Object.setPrototypeOf(A.prototype,Uint8Array.prototype);Object.setPrototypeOf(A,Uint8Array);function mi(e){if(typeof e!="number")throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function Ea(e,t,r){return mi(e),e<=0?xe(e):t!==void 0?typeof r=="string"?xe(e).fill(t,r):xe(e).fill(t):xe(e)}A.alloc=function(e,t,r){return Ea(e,t,r)};function an(e){return mi(e),xe(e<0?0:ln(e)|0)}A.allocUnsafe=function(e){return an(e)};A.allocUnsafeSlow=function(e){return an(e)};function ba(e,t){if((typeof t!="string"||t==="")&&(t="utf8"),!A.isEncoding(t))throw new TypeError("Unknown encoding: "+t);let r=di(e,t)|0,n=xe(r),i=n.write(e,t);return i!==r&&(n=n.slice(0,i)),n}function on(e){let t=e.length<0?0:ln(e.length)|0,r=xe(t);for(let n=0;n=sr)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+sr.toString(16)+" bytes");return e|0}function va(e){return+e!=e&&(e=0),A.alloc(+e)}A.isBuffer=function(e){return e!=null&&e._isBuffer===!0&&e!==A.prototype};A.compare=function(e,t){if(de(e,Uint8Array)&&(e=A.from(e,e.offset,e.byteLength)),de(t,Uint8Array)&&(t=A.from(t,t.offset,t.byteLength)),!A.isBuffer(e)||!A.isBuffer(t))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(e===t)return 0;let r=e.length,n=t.length;for(let i=0,o=Math.min(r,n);in.length?(A.isBuffer(o)||(o=A.from(o)),o.copy(n,i)):Uint8Array.prototype.set.call(n,o,i);else if(A.isBuffer(o))o.copy(n,i);else throw new TypeError('"list" argument must be an Array of Buffers');i+=o.length}return n};function di(e,t){if(A.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||de(e,ArrayBuffer))return e.byteLength;if(typeof e!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);let r=e.length,n=arguments.length>2&&arguments[2]===!0;if(!n&&r===0)return 0;let i=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return sn(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return r*2;case"hex":return r>>>1;case"base64":return vi(e).length;default:if(i)return n?-1:sn(e).length;t=(""+t).toLowerCase(),i=!0}}A.byteLength=di;function Ta(e,t,r){let n=!1;if((t===void 0||t<0)&&(t=0),t>this.length||((r===void 0||r>this.length)&&(r=this.length),r<=0)||(r>>>=0,t>>>=0,r<=t))return"";for(e||(e="utf8");;)switch(e){case"hex":return _a(this,t,r);case"utf8":case"utf-8":return hi(this,t,r);case"ascii":return Da(this,t,r);case"latin1":case"binary":return Ma(this,t,r);case"base64":return Oa(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Na(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}A.prototype._isBuffer=!0;function Le(e,t,r){let n=e[t];e[t]=e[r],e[r]=n}A.prototype.swap16=function(){let e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let t=0;tt&&(e+=" ... "),""};si&&(A.prototype[si]=A.prototype.inspect);A.prototype.compare=function(e,t,r,n,i){if(de(e,Uint8Array)&&(e=A.from(e,e.offset,e.byteLength)),!A.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(t===void 0&&(t=0),r===void 0&&(r=e?e.length:0),n===void 0&&(n=0),i===void 0&&(i=this.length),t<0||r>e.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=r)return 0;if(n>=i)return-1;if(t>=r)return 1;if(t>>>=0,r>>>=0,n>>>=0,i>>>=0,this===e)return 0;let o=i-n,s=r-t,a=Math.min(o,s),l=this.slice(n,i),d=e.slice(t,r);for(let g=0;g2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,cn(r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0)if(i)r=0;else return-1;if(typeof t=="string"&&(t=A.from(t,n)),A.isBuffer(t))return t.length===0?-1:ai(e,t,r,n,i);if(typeof t=="number")return t=t&255,typeof Uint8Array.prototype.indexOf=="function"?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):ai(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function ai(e,t,r,n,i){let o=1,s=e.length,a=t.length;if(n!==void 0&&(n=String(n).toLowerCase(),n==="ucs2"||n==="ucs-2"||n==="utf16le"||n==="utf-16le")){if(e.length<2||t.length<2)return-1;o=2,s/=2,a/=2,r/=2}function l(g,h){return o===1?g[h]:g.readUInt16BE(h*o)}let d;if(i){let g=-1;for(d=r;ds&&(r=s-a),d=r;d>=0;d--){let g=!0;for(let h=0;hi&&(n=i)):n=i;let o=t.length;n>o/2&&(n=o/2);let s;for(s=0;s>>0,isFinite(r)?(r=r>>>0,n===void 0&&(n="utf8")):(n=r,r=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let i=this.length-t;if((r===void 0||r>i)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");let o=!1;for(;;)switch(n){case"hex":return Aa(this,e,t,r);case"utf8":case"utf-8":return Ra(this,e,t,r);case"ascii":case"latin1":case"binary":return Ca(this,e,t,r);case"base64":return Sa(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Ia(this,e,t,r);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}};A.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function Oa(e,t,r){return t===0&&r===e.length?nn.fromByteArray(e):nn.fromByteArray(e.slice(t,r))}function hi(e,t,r){r=Math.min(e.length,r);let n=[],i=t;for(;i239?4:o>223?3:o>191?2:1;if(i+a<=r){let l,d,g,h;switch(a){case 1:o<128&&(s=o);break;case 2:l=e[i+1],(l&192)===128&&(h=(o&31)<<6|l&63,h>127&&(s=h));break;case 3:l=e[i+1],d=e[i+2],(l&192)===128&&(d&192)===128&&(h=(o&15)<<12|(l&63)<<6|d&63,h>2047&&(h<55296||h>57343)&&(s=h));break;case 4:l=e[i+1],d=e[i+2],g=e[i+3],(l&192)===128&&(d&192)===128&&(g&192)===128&&(h=(o&15)<<18|(l&63)<<12|(d&63)<<6|g&63,h>65535&&h<1114112&&(s=h))}}s===null?(s=65533,a=1):s>65535&&(s-=65536,n.push(s>>>10&1023|55296),s=56320|s&1023),n.push(s),i+=a}return ka(n)}var li=4096;function ka(e){let t=e.length;if(t<=li)return String.fromCharCode.apply(String,e);let r="",n=0;for(;nn)&&(r=n);let i="";for(let o=t;or&&(e=r),t<0?(t+=r,t<0&&(t=0)):t>r&&(t=r),tr)throw new RangeError("Trying to access beyond buffer length")}A.prototype.readUintLE=A.prototype.readUIntLE=function(e,t,r){e=e>>>0,t=t>>>0,r||W(e,t,this.length);let n=this[e],i=1,o=0;for(;++o>>0,t=t>>>0,r||W(e,t,this.length);let n=this[e+--t],i=1;for(;t>0&&(i*=256);)n+=this[e+--t]*i;return n};A.prototype.readUint8=A.prototype.readUInt8=function(e,t){return e=e>>>0,t||W(e,1,this.length),this[e]};A.prototype.readUint16LE=A.prototype.readUInt16LE=function(e,t){return e=e>>>0,t||W(e,2,this.length),this[e]|this[e+1]<<8};A.prototype.readUint16BE=A.prototype.readUInt16BE=function(e,t){return e=e>>>0,t||W(e,2,this.length),this[e]<<8|this[e+1]};A.prototype.readUint32LE=A.prototype.readUInt32LE=function(e,t){return e=e>>>0,t||W(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+this[e+3]*16777216};A.prototype.readUint32BE=A.prototype.readUInt32BE=function(e,t){return e=e>>>0,t||W(e,4,this.length),this[e]*16777216+(this[e+1]<<16|this[e+2]<<8|this[e+3])};A.prototype.readBigUInt64LE=Re(function(e){e=e>>>0,He(e,"offset");let t=this[e],r=this[e+7];(t===void 0||r===void 0)&&xt(e,this.length-8);let n=t+this[++e]*2**8+this[++e]*2**16+this[++e]*2**24,i=this[++e]+this[++e]*2**8+this[++e]*2**16+r*2**24;return BigInt(n)+(BigInt(i)<>>0,He(e,"offset");let t=this[e],r=this[e+7];(t===void 0||r===void 0)&&xt(e,this.length-8);let n=t*2**24+this[++e]*2**16+this[++e]*2**8+this[++e],i=this[++e]*2**24+this[++e]*2**16+this[++e]*2**8+r;return(BigInt(n)<>>0,t=t>>>0,r||W(e,t,this.length);let n=this[e],i=1,o=0;for(;++o=i&&(n-=Math.pow(2,8*t)),n};A.prototype.readIntBE=function(e,t,r){e=e>>>0,t=t>>>0,r||W(e,t,this.length);let n=t,i=1,o=this[e+--n];for(;n>0&&(i*=256);)o+=this[e+--n]*i;return i*=128,o>=i&&(o-=Math.pow(2,8*t)),o};A.prototype.readInt8=function(e,t){return e=e>>>0,t||W(e,1,this.length),this[e]&128?(255-this[e]+1)*-1:this[e]};A.prototype.readInt16LE=function(e,t){e=e>>>0,t||W(e,2,this.length);let r=this[e]|this[e+1]<<8;return r&32768?r|4294901760:r};A.prototype.readInt16BE=function(e,t){e=e>>>0,t||W(e,2,this.length);let r=this[e+1]|this[e]<<8;return r&32768?r|4294901760:r};A.prototype.readInt32LE=function(e,t){return e=e>>>0,t||W(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24};A.prototype.readInt32BE=function(e,t){return e=e>>>0,t||W(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]};A.prototype.readBigInt64LE=Re(function(e){e=e>>>0,He(e,"offset");let t=this[e],r=this[e+7];(t===void 0||r===void 0)&&xt(e,this.length-8);let n=this[e+4]+this[e+5]*2**8+this[e+6]*2**16+(r<<24);return(BigInt(n)<>>0,He(e,"offset");let t=this[e],r=this[e+7];(t===void 0||r===void 0)&&xt(e,this.length-8);let n=(t<<24)+this[++e]*2**16+this[++e]*2**8+this[++e];return(BigInt(n)<>>0,t||W(e,4,this.length),We.read(this,e,!0,23,4)};A.prototype.readFloatBE=function(e,t){return e=e>>>0,t||W(e,4,this.length),We.read(this,e,!1,23,4)};A.prototype.readDoubleLE=function(e,t){return e=e>>>0,t||W(e,8,this.length),We.read(this,e,!0,52,8)};A.prototype.readDoubleBE=function(e,t){return e=e>>>0,t||W(e,8,this.length),We.read(this,e,!1,52,8)};function re(e,t,r,n,i,o){if(!A.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}A.prototype.writeUintLE=A.prototype.writeUIntLE=function(e,t,r,n){if(e=+e,t=t>>>0,r=r>>>0,!n){let s=Math.pow(2,8*r)-1;re(this,e,t,r,s,0)}let i=1,o=0;for(this[t]=e&255;++o>>0,r=r>>>0,!n){let s=Math.pow(2,8*r)-1;re(this,e,t,r,s,0)}let i=r-1,o=1;for(this[t+i]=e&255;--i>=0&&(o*=256);)this[t+i]=e/o&255;return t+r};A.prototype.writeUint8=A.prototype.writeUInt8=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,1,255,0),this[t]=e&255,t+1};A.prototype.writeUint16LE=A.prototype.writeUInt16LE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,2,65535,0),this[t]=e&255,this[t+1]=e>>>8,t+2};A.prototype.writeUint16BE=A.prototype.writeUInt16BE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=e&255,t+2};A.prototype.writeUint32LE=A.prototype.writeUInt32LE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=e&255,t+4};A.prototype.writeUint32BE=A.prototype.writeUInt32BE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4};function yi(e,t,r,n,i){Pi(t,n,i,e,r,7);let o=Number(t&BigInt(4294967295));e[r++]=o,o=o>>8,e[r++]=o,o=o>>8,e[r++]=o,o=o>>8,e[r++]=o;let s=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=s,s=s>>8,e[r++]=s,s=s>>8,e[r++]=s,s=s>>8,e[r++]=s,r}function wi(e,t,r,n,i){Pi(t,n,i,e,r,7);let o=Number(t&BigInt(4294967295));e[r+7]=o,o=o>>8,e[r+6]=o,o=o>>8,e[r+5]=o,o=o>>8,e[r+4]=o;let s=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=s,s=s>>8,e[r+2]=s,s=s>>8,e[r+1]=s,s=s>>8,e[r]=s,r+8}A.prototype.writeBigUInt64LE=Re(function(e,t=0){return yi(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))});A.prototype.writeBigUInt64BE=Re(function(e,t=0){return wi(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))});A.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t=t>>>0,!n){let a=Math.pow(2,8*r-1);re(this,e,t,r,a-1,-a)}let i=0,o=1,s=0;for(this[t]=e&255;++i>0)-s&255;return t+r};A.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t=t>>>0,!n){let a=Math.pow(2,8*r-1);re(this,e,t,r,a-1,-a)}let i=r-1,o=1,s=0;for(this[t+i]=e&255;--i>=0&&(o*=256);)e<0&&s===0&&this[t+i+1]!==0&&(s=1),this[t+i]=(e/o>>0)-s&255;return t+r};A.prototype.writeInt8=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=e&255,t+1};A.prototype.writeInt16LE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,2,32767,-32768),this[t]=e&255,this[t+1]=e>>>8,t+2};A.prototype.writeInt16BE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=e&255,t+2};A.prototype.writeInt32LE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,4,2147483647,-2147483648),this[t]=e&255,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4};A.prototype.writeInt32BE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4};A.prototype.writeBigInt64LE=Re(function(e,t=0){return yi(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});A.prototype.writeBigInt64BE=Re(function(e,t=0){return wi(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function Ei(e,t,r,n,i,o){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function bi(e,t,r,n,i){return t=+t,r=r>>>0,i||Ei(e,t,r,4,34028234663852886e22,-34028234663852886e22),We.write(e,t,r,n,23,4),r+4}A.prototype.writeFloatLE=function(e,t,r){return bi(this,e,t,!0,r)};A.prototype.writeFloatBE=function(e,t,r){return bi(this,e,t,!1,r)};function xi(e,t,r,n,i){return t=+t,r=r>>>0,i||Ei(e,t,r,8,17976931348623157e292,-17976931348623157e292),We.write(e,t,r,n,52,8),r+8}A.prototype.writeDoubleLE=function(e,t,r){return xi(this,e,t,!0,r)};A.prototype.writeDoubleBE=function(e,t,r){return xi(this,e,t,!1,r)};A.prototype.copy=function(e,t,r,n){if(!A.isBuffer(e))throw new TypeError("argument should be a Buffer");if(r||(r=0),!n&&n!==0&&(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t>>0,r=r===void 0?this.length:r>>>0,e||(e=0);let i;if(typeof e=="number")for(i=t;i2**32?i=ui(String(r)):typeof r=="bigint"&&(i=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(i=ui(i)),i+="n"),n+=` It must be ${t}. Received ${i}`,n},RangeError);function ui(e){let t="",r=e.length,n=e[0]==="-"?1:0;for(;r>=n+4;r-=3)t=`_${e.slice(r-3,r)}${t}`;return`${e.slice(0,r)}${t}`}function Fa(e,t,r){He(t,"offset"),(e[t]===void 0||e[t+r]===void 0)&&xt(t,e.length-(r+1))}function Pi(e,t,r,n,i,o){if(e>r||e3?t===0||t===BigInt(0)?a=`>= 0${s} and < 2${s} ** ${(o+1)*8}${s}`:a=`>= -(2${s} ** ${(o+1)*8-1}${s}) and < 2 ** ${(o+1)*8-1}${s}`:a=`>= ${t}${s} and <= ${r}${s}`,new Ke.ERR_OUT_OF_RANGE("value",a,e)}Fa(n,i,o)}function He(e,t){if(typeof e!="number")throw new Ke.ERR_INVALID_ARG_TYPE(t,"number",e)}function xt(e,t,r){throw Math.floor(e)!==e?(He(e,r),new Ke.ERR_OUT_OF_RANGE(r||"offset","an integer",e)):t<0?new Ke.ERR_BUFFER_OUT_OF_BOUNDS:new Ke.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${t}`,e)}var La=/[^+/0-9A-Za-z-_]/g;function Ua(e){if(e=e.split("=")[0],e=e.trim().replace(La,""),e.length<2)return"";for(;e.length%4!==0;)e=e+"=";return e}function sn(e,t){t=t||1/0;let r,n=e.length,i=null,o=[];for(let s=0;s55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&o.push(239,191,189);continue}else if(s+1===n){(t-=3)>-1&&o.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&o.push(239,191,189),i=r;continue}r=(i-55296<<10|r-56320)+65536}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;o.push(r)}else if(r<2048){if((t-=2)<0)break;o.push(r>>6|192,r&63|128)}else if(r<65536){if((t-=3)<0)break;o.push(r>>12|224,r>>6&63|128,r&63|128)}else if(r<1114112){if((t-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,r&63|128)}else throw new Error("Invalid code point")}return o}function Ba(e){let t=[];for(let r=0;r>8,i=r%256,o.push(i),o.push(n);return o}function vi(e){return nn.toByteArray(Ua(e))}function ar(e,t,r,n){let i;for(i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function de(e,t){return e instanceof t||e!=null&&e.constructor!=null&&e.constructor.name!=null&&e.constructor.name===t.name}function cn(e){return e!==e}var Va=function(){let e="0123456789abcdef",t=new Array(256);for(let r=0;r<16;++r){let n=r*16;for(let i=0;i<16;++i)t[n+i]=e[r]+e[i]}return t}();function Re(e){return typeof BigInt>"u"?$a:e}function $a(){throw new Error("BigInt not supported")}});var w,f=fe(()=>{"use strict";w=Qe(Ti())});function Wa(){return!1}function fn(){return{dev:0,ino:0,mode:0,nlink:0,uid:0,gid:0,rdev:0,size:0,blksize:0,blocks:0,atimeMs:0,mtimeMs:0,ctimeMs:0,birthtimeMs:0,atime:new Date,mtime:new Date,ctime:new Date,birthtime:new Date}}function Ha(){return fn()}function za(){return[]}function Ya(e){e(null,[])}function Za(){return""}function Xa(){return""}function el(){}function tl(){}function rl(){}function nl(){}function il(){}function ol(){}function sl(){}function al(){}function ll(){return{close:()=>{},on:()=>{},removeAllListeners:()=>{}}}function ul(e,t){t(null,fn())}var cl,pl,ji,Gi=fe(()=>{"use strict";f();u();c();p();m();cl={},pl={existsSync:Wa,lstatSync:fn,stat:ul,statSync:Ha,readdirSync:za,readdir:Ya,readlinkSync:Za,realpathSync:Xa,chmodSync:el,renameSync:tl,mkdirSync:rl,rmdirSync:nl,rmSync:il,unlinkSync:ol,watchFile:sl,unwatchFile:al,watch:ll,promises:cl},ji=pl});var Ji=Je((mf,ml)=>{ml.exports={name:"@prisma/internals",version:"6.19.2",description:"This package is intended for Prisma's internal use",main:"dist/index.js",types:"dist/index.d.ts",repository:{type:"git",url:"https://github.com/prisma/prisma.git",directory:"packages/internals"},homepage:"https://www.prisma.io",author:"Tim Suchanek ",bugs:"https://github.com/prisma/prisma/issues",license:"Apache-2.0",scripts:{dev:"DEV=true tsx helpers/build.ts",build:"tsx helpers/build.ts",test:"dotenv -e ../../.db.env -- jest --silent",prepublishOnly:"pnpm run build"},files:["README.md","dist","!**/libquery_engine*","!dist/get-generators/engines/*","scripts"],devDependencies:{"@babel/helper-validator-identifier":"7.25.9","@opentelemetry/api":"1.9.0","@swc/core":"1.11.5","@swc/jest":"0.2.37","@types/babel__helper-validator-identifier":"7.15.2","@types/jest":"29.5.14","@types/node":"18.19.76","@types/resolve":"1.20.6",archiver:"6.0.2","checkpoint-client":"1.1.33","cli-truncate":"4.0.0",dotenv:"16.5.0",empathic:"2.0.0","escape-string-regexp":"5.0.0",execa:"8.0.1","fast-glob":"3.3.3","find-up":"7.0.0","fp-ts":"2.16.9","fs-extra":"11.3.0","global-directory":"4.0.0",globby:"11.1.0","identifier-regex":"1.0.0","indent-string":"4.0.0","is-windows":"1.0.2","is-wsl":"3.1.0",jest:"29.7.0","jest-junit":"16.0.0",kleur:"4.1.5","mock-stdin":"1.0.0","new-github-issue-url":"0.2.1","node-fetch":"3.3.2","npm-packlist":"5.1.3",open:"7.4.2","p-map":"4.0.0",resolve:"1.22.10","string-width":"7.2.0","strip-indent":"4.0.0","temp-dir":"2.0.0",tempy:"1.0.1","terminal-link":"4.0.0",tmp:"0.2.3","ts-pattern":"5.6.2","ts-toolbelt":"9.6.0",typescript:"5.4.5",yarn:"1.22.22"},dependencies:{"@prisma/config":"workspace:*","@prisma/debug":"workspace:*","@prisma/dmmf":"workspace:*","@prisma/driver-adapter-utils":"workspace:*","@prisma/engines":"workspace:*","@prisma/fetch-engine":"workspace:*","@prisma/generator":"workspace:*","@prisma/generator-helper":"workspace:*","@prisma/get-platform":"workspace:*","@prisma/prisma-schema-wasm":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/schema-engine-wasm":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/schema-files-loader":"workspace:*",arg:"5.0.2",prompts:"2.4.2"},peerDependencies:{typescript:">=5.1.0"},peerDependenciesMeta:{typescript:{optional:!0}},sideEffects:!1}});function dl(...e){return e.join("/")}function gl(...e){return e.join("/")}function hl(e){let t=Qi(e),r=Ki(e),[n,i]=t.split(".");return{root:"/",dir:r,base:t,ext:i,name:n}}function Qi(e){let t=e.split("/");return t[t.length-1]}function Ki(e){return e.split("/").slice(0,-1).join("/")}function wl(e){let t=e.split("/").filter(i=>i!==""&&i!=="."),r=[];for(let i of t)i===".."?r.pop():r.push(i);let n=r.join("/");return e.startsWith("/")?"/"+n:n}var Wi,yl,El,bl,pr,Hi=fe(()=>{"use strict";f();u();c();p();m();Wi="/",yl=":";El={sep:Wi},bl={basename:Qi,delimiter:yl,dirname:Ki,join:gl,normalize:wl,parse:hl,posix:El,resolve:dl,sep:Wi},pr=bl});var gn=Je((kf,vl)=>{vl.exports={name:"@prisma/engines-version",version:"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7",main:"index.js",types:"index.d.ts",license:"Apache-2.0",author:"Tim Suchanek ",prisma:{enginesVersion:"c2990dca591cba766e3b7ef5d9e8a84796e47ab7"},repository:{type:"git",url:"https://github.com/prisma/engines-wrapper.git",directory:"packages/engines-version"},devDependencies:{"@types/node":"18.19.76",typescript:"4.9.5"},files:["index.js","index.d.ts"],scripts:{build:"tsc -d"}}});var zi=Je(mr=>{"use strict";f();u();c();p();m();Object.defineProperty(mr,"__esModule",{value:!0});mr.enginesVersion=void 0;mr.enginesVersion=gn().prisma.enginesVersion});var Xi=Je((Gf,Zi)=>{"use strict";f();u();c();p();m();Zi.exports=(e,t=1,r)=>{if(r={indent:" ",includeEmptyLines:!1,...r},typeof e!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof e}\``);if(typeof t!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof t}\``);if(typeof r.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``);if(t===0)return e;let n=r.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return e.replace(n,r.indent.repeat(t))}});var Sn=Je((jy,Eo)=>{"use strict";f();u();c();p();m();Eo.exports=function(){function e(t,r,n,i,o){return tn?n+1:t+1:i===o?r:r+1}return function(t,r){if(t===r)return 0;if(t.length>r.length){var n=t;t=r,r=n}for(var i=t.length,o=r.length;i>0&&t.charCodeAt(i-1)===r.charCodeAt(o-1);)i--,o--;for(var s=0;s{"use strict";f();u();c();p();m()});var Ao=fe(()=>{"use strict";f();u();c();p();m()});var Vr,Qo=fe(()=>{"use strict";f();u();c();p();m();Vr=class{events={};on(t,r){return this.events[t]||(this.events[t]=[]),this.events[t].push(r),this}emit(t,...r){return this.events[t]?(this.events[t].forEach(n=>{n(...r)}),!0):!1}}});f();u();c();p();m();var Ci={};or(Ci,{defineExtension:()=>Ai,getExtensionContext:()=>Ri});f();u();c();p();m();f();u();c();p();m();function Ai(e){return typeof e=="function"?e:t=>t.$extends(e)}f();u();c();p();m();function Ri(e){return e}var Ii={};or(Ii,{validator:()=>Si});f();u();c();p();m();f();u();c();p();m();function Si(...e){return t=>t}f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var pn,Oi,ki,Di,Mi=!0;typeof y<"u"&&({FORCE_COLOR:pn,NODE_DISABLE_COLORS:Oi,NO_COLOR:ki,TERM:Di}=y.env||{},Mi=y.stdout&&y.stdout.isTTY);var ja={enabled:!Oi&&ki==null&&Di!=="dumb"&&(pn!=null&&pn!=="0"||Mi)};function j(e,t){let r=new RegExp(`\\x1b\\[${t}m`,"g"),n=`\x1B[${e}m`,i=`\x1B[${t}m`;return function(o){return!ja.enabled||o==null?o:n+(~(""+o).indexOf(i)?o.replace(r,i+n):o)+i}}var bm=j(0,0),lr=j(1,22),ur=j(2,22),xm=j(3,23),_i=j(4,24),Pm=j(7,27),vm=j(8,28),Tm=j(9,29),Am=j(30,39),Ye=j(31,39),Ni=j(32,39),Fi=j(33,39),Li=j(34,39),Rm=j(35,39),Ui=j(36,39),Cm=j(37,39),Bi=j(90,39),Sm=j(90,39),Im=j(40,49),Om=j(41,49),km=j(42,49),Dm=j(43,49),Mm=j(44,49),_m=j(45,49),Nm=j(46,49),Fm=j(47,49);f();u();c();p();m();var Ga=100,qi=["green","yellow","blue","magenta","cyan","red"],cr=[],Vi=Date.now(),Ja=0,mn=typeof y<"u"?y.env:{};globalThis.DEBUG??=mn.DEBUG??"";globalThis.DEBUG_COLORS??=mn.DEBUG_COLORS?mn.DEBUG_COLORS==="true":!0;var Pt={enable(e){typeof e=="string"&&(globalThis.DEBUG=e)},disable(){let e=globalThis.DEBUG;return globalThis.DEBUG="",e},enabled(e){let t=globalThis.DEBUG.split(",").map(i=>i.replace(/[.+?^${}()|[\]\\]/g,"\\$&")),r=t.some(i=>i===""||i[0]==="-"?!1:e.match(RegExp(i.split("*").join(".*")+"$"))),n=t.some(i=>i===""||i[0]!=="-"?!1:e.match(RegExp(i.slice(1).split("*").join(".*")+"$")));return r&&!n},log:(...e)=>{let[t,r,...n]=e;(console.warn??console.log)(`${t} ${r}`,...n)},formatters:{}};function Qa(e){let t={color:qi[Ja++%qi.length],enabled:Pt.enabled(e),namespace:e,log:Pt.log,extend:()=>{}},r=(...n)=>{let{enabled:i,namespace:o,color:s,log:a}=t;if(n.length!==0&&cr.push([o,...n]),cr.length>Ga&&cr.shift(),Pt.enabled(o)||i){let l=n.map(g=>typeof g=="string"?g:Ka(g)),d=`+${Date.now()-Vi}ms`;Vi=Date.now(),a(o,...l,d)}};return new Proxy(r,{get:(n,i)=>t[i],set:(n,i,o)=>t[i]=o})}var Z=new Proxy(Qa,{get:(e,t)=>Pt[t],set:(e,t,r)=>Pt[t]=r});function Ka(e,t=2){let r=new Set;return JSON.stringify(e,(n,i)=>{if(typeof i=="object"&&i!==null){if(r.has(i))return"[Circular *]";r.add(i)}else if(typeof i=="bigint")return i.toString();return i},t)}function $i(){cr.length=0}f();u();c();p();m();f();u();c();p();m();var fl=Ji(),dn=fl.version;f();u();c();p();m();function Ze(e){let t=xl();return t||(e?.config.engineType==="library"?"library":e?.config.engineType==="binary"?"binary":e?.config.engineType==="client"?"client":Pl())}function xl(){let e=y.env.PRISMA_CLIENT_ENGINE_TYPE;return e==="library"?"library":e==="binary"?"binary":e==="client"?"client":void 0}function Pl(){return"library"}f();u();c();p();m();var Yi="prisma+postgres",fr=`${Yi}:`;function dr(e){return e?.toString().startsWith(`${fr}//`)??!1}function hn(e){if(!dr(e))return!1;let{host:t}=new URL(e);return t.includes("localhost")||t.includes("127.0.0.1")||t.includes("[::1]")}var Tt={};or(Tt,{error:()=>Rl,info:()=>Al,log:()=>Tl,query:()=>Cl,should:()=>eo,tags:()=>vt,warn:()=>yn});f();u();c();p();m();var vt={error:Ye("prisma:error"),warn:Fi("prisma:warn"),info:Ui("prisma:info"),query:Li("prisma:query")},eo={warn:()=>!y.env.PRISMA_DISABLE_WARNINGS};function Tl(...e){console.log(...e)}function yn(e,...t){eo.warn()&&console.warn(`${vt.warn} ${e}`,...t)}function Al(e,...t){console.info(`${vt.info} ${e}`,...t)}function Rl(e,...t){console.error(`${vt.error} ${e}`,...t)}function Cl(e,...t){console.log(`${vt.query} ${e}`,...t)}f();u();c();p();m();function Ue(e,t){throw new Error(t)}f();u();c();p();m();f();u();c();p();m();function wn({onlyFirst:e=!1}={}){let r=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(r,e?void 0:"g")}var Sl=wn();function En(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(Sl,"")}f();u();c();p();m();function bn(e,t){return Object.prototype.hasOwnProperty.call(e,t)}f();u();c();p();m();function gr(e,t){let r={};for(let n of Object.keys(e))r[n]=t(e[n],n);return r}f();u();c();p();m();function xn(e,t){if(e.length===0)return;let r=e[0];for(let n=1;n{to.has(e)||(to.add(e),yn(t,...r))};var Q=class e extends Error{clientVersion;errorCode;retryable;constructor(t,r,n){super(t),this.name="PrismaClientInitializationError",this.clientVersion=r,this.errorCode=n,Error.captureStackTrace(e)}get[Symbol.toStringTag](){return"PrismaClientInitializationError"}};N(Q,"PrismaClientInitializationError");f();u();c();p();m();var se=class extends Error{code;meta;clientVersion;batchRequestIdx;constructor(t,{code:r,clientVersion:n,meta:i,batchRequestIdx:o}){super(t),this.name="PrismaClientKnownRequestError",this.code=r,this.clientVersion=n,this.meta=i,Object.defineProperty(this,"batchRequestIdx",{value:o,enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return"PrismaClientKnownRequestError"}};N(se,"PrismaClientKnownRequestError");f();u();c();p();m();var Ce=class extends Error{clientVersion;constructor(t,r){super(t),this.name="PrismaClientRustPanicError",this.clientVersion=r}get[Symbol.toStringTag](){return"PrismaClientRustPanicError"}};N(Ce,"PrismaClientRustPanicError");f();u();c();p();m();var ae=class extends Error{clientVersion;batchRequestIdx;constructor(t,{clientVersion:r,batchRequestIdx:n}){super(t),this.name="PrismaClientUnknownRequestError",this.clientVersion=r,Object.defineProperty(this,"batchRequestIdx",{value:n,writable:!0,enumerable:!1})}get[Symbol.toStringTag](){return"PrismaClientUnknownRequestError"}};N(ae,"PrismaClientUnknownRequestError");f();u();c();p();m();var ee=class extends Error{name="PrismaClientValidationError";clientVersion;constructor(t,{clientVersion:r}){super(t),this.clientVersion=r}get[Symbol.toStringTag](){return"PrismaClientValidationError"}};N(ee,"PrismaClientValidationError");f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var ge=class{_map=new Map;get(t){return this._map.get(t)?.value}set(t,r){this._map.set(t,{value:r})}getOrCreate(t,r){let n=this._map.get(t);if(n)return n.value;let i=r();return this.set(t,i),i}};f();u();c();p();m();function Se(e){return e.substring(0,1).toLowerCase()+e.substring(1)}f();u();c();p();m();function no(e,t){let r={};for(let n of e){let i=n[t];r[i]=n}return r}f();u();c();p();m();function At(e){let t;return{get(){return t||(t={value:e()}),t.value}}}f();u();c();p();m();function Il(e){return{models:Pn(e.models),enums:Pn(e.enums),types:Pn(e.types)}}function Pn(e){let t={};for(let{name:r,...n}of e)t[r]=n;return t}f();u();c();p();m();function Xe(e){return e instanceof Date||Object.prototype.toString.call(e)==="[object Date]"}function yr(e){return e.toString()!=="Invalid Date"}f();u();c();p();m();f();u();c();p();m();var et=9e15,De=1e9,vn="0123456789abcdef",br="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",xr="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",Tn={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-et,maxE:et,crypto:!1},ao,Pe,_=!0,vr="[DecimalError] ",ke=vr+"Invalid argument: ",lo=vr+"Precision limit exceeded",uo=vr+"crypto unavailable",co="[object Decimal]",X=Math.floor,K=Math.pow,Ol=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,kl=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,Dl=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,po=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,pe=1e7,D=7,Ml=9007199254740991,_l=br.length-1,An=xr.length-1,R={toStringTag:co};R.absoluteValue=R.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),k(e)};R.ceil=function(){return k(new this.constructor(this),this.e+1,2)};R.clampedTo=R.clamp=function(e,t){var r,n=this,i=n.constructor;if(e=new i(e),t=new i(t),!e.s||!t.s)return new i(NaN);if(e.gt(t))throw Error(ke+t);return r=n.cmp(e),r<0?e:n.cmp(t)>0?t:new i(n)};R.comparedTo=R.cmp=function(e){var t,r,n,i,o=this,s=o.d,a=(e=new o.constructor(e)).d,l=o.s,d=e.s;if(!s||!a)return!l||!d?NaN:l!==d?l:s===a?0:!s^l<0?1:-1;if(!s[0]||!a[0])return s[0]?l:a[0]?-d:0;if(l!==d)return l;if(o.e!==e.e)return o.e>e.e^l<0?1:-1;for(n=s.length,i=a.length,t=0,r=na[t]^l<0?1:-1;return n===i?0:n>i^l<0?1:-1};R.cosine=R.cos=function(){var e,t,r=this,n=r.constructor;return r.d?r.d[0]?(e=n.precision,t=n.rounding,n.precision=e+Math.max(r.e,r.sd())+D,n.rounding=1,r=Nl(n,yo(n,r)),n.precision=e,n.rounding=t,k(Pe==2||Pe==3?r.neg():r,e,t,!0)):new n(1):new n(NaN)};R.cubeRoot=R.cbrt=function(){var e,t,r,n,i,o,s,a,l,d,g=this,h=g.constructor;if(!g.isFinite()||g.isZero())return new h(g);for(_=!1,o=g.s*K(g.s*g,1/3),!o||Math.abs(o)==1/0?(r=z(g.d),e=g.e,(o=(e-r.length+1)%3)&&(r+=o==1||o==-2?"0":"00"),o=K(r,1/3),e=X((e+1)/3)-(e%3==(e<0?-1:2)),o==1/0?r="5e"+e:(r=o.toExponential(),r=r.slice(0,r.indexOf("e")+1)+e),n=new h(r),n.s=g.s):n=new h(o.toString()),s=(e=h.precision)+3;;)if(a=n,l=a.times(a).times(a),d=l.plus(g),n=V(d.plus(g).times(a),d.plus(l),s+2,1),z(a.d).slice(0,s)===(r=z(n.d)).slice(0,s))if(r=r.slice(s-3,s+1),r=="9999"||!i&&r=="4999"){if(!i&&(k(a,e+1,0),a.times(a).times(a).eq(g))){n=a;break}s+=4,i=1}else{(!+r||!+r.slice(1)&&r.charAt(0)=="5")&&(k(n,e+1,1),t=!n.times(n).times(n).eq(g));break}return _=!0,k(n,e,h.rounding,t)};R.decimalPlaces=R.dp=function(){var e,t=this.d,r=NaN;if(t){if(e=t.length-1,r=(e-X(this.e/D))*D,e=t[e],e)for(;e%10==0;e/=10)r--;r<0&&(r=0)}return r};R.dividedBy=R.div=function(e){return V(this,new this.constructor(e))};R.dividedToIntegerBy=R.divToInt=function(e){var t=this,r=t.constructor;return k(V(t,new r(e),0,1,1),r.precision,r.rounding)};R.equals=R.eq=function(e){return this.cmp(e)===0};R.floor=function(){return k(new this.constructor(this),this.e+1,3)};R.greaterThan=R.gt=function(e){return this.cmp(e)>0};R.greaterThanOrEqualTo=R.gte=function(e){var t=this.cmp(e);return t==1||t===0};R.hyperbolicCosine=R.cosh=function(){var e,t,r,n,i,o=this,s=o.constructor,a=new s(1);if(!o.isFinite())return new s(o.s?1/0:NaN);if(o.isZero())return a;r=s.precision,n=s.rounding,s.precision=r+Math.max(o.e,o.sd())+4,s.rounding=1,i=o.d.length,i<32?(e=Math.ceil(i/3),t=(1/Ar(4,e)).toString()):(e=16,t="2.3283064365386962890625e-10"),o=tt(s,1,o.times(t),new s(1),!0);for(var l,d=e,g=new s(8);d--;)l=o.times(o),o=a.minus(l.times(g.minus(l.times(g))));return k(o,s.precision=r,s.rounding=n,!0)};R.hyperbolicSine=R.sinh=function(){var e,t,r,n,i=this,o=i.constructor;if(!i.isFinite()||i.isZero())return new o(i);if(t=o.precision,r=o.rounding,o.precision=t+Math.max(i.e,i.sd())+4,o.rounding=1,n=i.d.length,n<3)i=tt(o,2,i,i,!0);else{e=1.4*Math.sqrt(n),e=e>16?16:e|0,i=i.times(1/Ar(5,e)),i=tt(o,2,i,i,!0);for(var s,a=new o(5),l=new o(16),d=new o(20);e--;)s=i.times(i),i=i.times(a.plus(s.times(l.times(s).plus(d))))}return o.precision=t,o.rounding=r,k(i,t,r,!0)};R.hyperbolicTangent=R.tanh=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+7,n.rounding=1,V(r.sinh(),r.cosh(),n.precision=e,n.rounding=t)):new n(r.s)};R.inverseCosine=R.acos=function(){var e=this,t=e.constructor,r=e.abs().cmp(1),n=t.precision,i=t.rounding;return r!==-1?r===0?e.isNeg()?he(t,n,i):new t(0):new t(NaN):e.isZero()?he(t,n+4,i).times(.5):(t.precision=n+6,t.rounding=1,e=new t(1).minus(e).div(e.plus(1)).sqrt().atan(),t.precision=n,t.rounding=i,e.times(2))};R.inverseHyperbolicCosine=R.acosh=function(){var e,t,r=this,n=r.constructor;return r.lte(1)?new n(r.eq(1)?0:NaN):r.isFinite()?(e=n.precision,t=n.rounding,n.precision=e+Math.max(Math.abs(r.e),r.sd())+4,n.rounding=1,_=!1,r=r.times(r).minus(1).sqrt().plus(r),_=!0,n.precision=e,n.rounding=t,r.ln()):new n(r)};R.inverseHyperbolicSine=R.asinh=function(){var e,t,r=this,n=r.constructor;return!r.isFinite()||r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+2*Math.max(Math.abs(r.e),r.sd())+6,n.rounding=1,_=!1,r=r.times(r).plus(1).sqrt().plus(r),_=!0,n.precision=e,n.rounding=t,r.ln())};R.inverseHyperbolicTangent=R.atanh=function(){var e,t,r,n,i=this,o=i.constructor;return i.isFinite()?i.e>=0?new o(i.abs().eq(1)?i.s/0:i.isZero()?i:NaN):(e=o.precision,t=o.rounding,n=i.sd(),Math.max(n,e)<2*-i.e-1?k(new o(i),e,t,!0):(o.precision=r=n-i.e,i=V(i.plus(1),new o(1).minus(i),r+e,1),o.precision=e+4,o.rounding=1,i=i.ln(),o.precision=e,o.rounding=t,i.times(.5))):new o(NaN)};R.inverseSine=R.asin=function(){var e,t,r,n,i=this,o=i.constructor;return i.isZero()?new o(i):(t=i.abs().cmp(1),r=o.precision,n=o.rounding,t!==-1?t===0?(e=he(o,r+4,n).times(.5),e.s=i.s,e):new o(NaN):(o.precision=r+6,o.rounding=1,i=i.div(new o(1).minus(i.times(i)).sqrt().plus(1)).atan(),o.precision=r,o.rounding=n,i.times(2)))};R.inverseTangent=R.atan=function(){var e,t,r,n,i,o,s,a,l,d=this,g=d.constructor,h=g.precision,T=g.rounding;if(d.isFinite()){if(d.isZero())return new g(d);if(d.abs().eq(1)&&h+4<=An)return s=he(g,h+4,T).times(.25),s.s=d.s,s}else{if(!d.s)return new g(NaN);if(h+4<=An)return s=he(g,h+4,T).times(.5),s.s=d.s,s}for(g.precision=a=h+10,g.rounding=1,r=Math.min(28,a/D+2|0),e=r;e;--e)d=d.div(d.times(d).plus(1).sqrt().plus(1));for(_=!1,t=Math.ceil(a/D),n=1,l=d.times(d),s=new g(d),i=d;e!==-1;)if(i=i.times(l),o=s.minus(i.div(n+=2)),i=i.times(l),s=o.plus(i.div(n+=2)),s.d[t]!==void 0)for(e=t;s.d[e]===o.d[e]&&e--;);return r&&(s=s.times(2<this.d.length-2};R.isNaN=function(){return!this.s};R.isNegative=R.isNeg=function(){return this.s<0};R.isPositive=R.isPos=function(){return this.s>0};R.isZero=function(){return!!this.d&&this.d[0]===0};R.lessThan=R.lt=function(e){return this.cmp(e)<0};R.lessThanOrEqualTo=R.lte=function(e){return this.cmp(e)<1};R.logarithm=R.log=function(e){var t,r,n,i,o,s,a,l,d=this,g=d.constructor,h=g.precision,T=g.rounding,I=5;if(e==null)e=new g(10),t=!0;else{if(e=new g(e),r=e.d,e.s<0||!r||!r[0]||e.eq(1))return new g(NaN);t=e.eq(10)}if(r=d.d,d.s<0||!r||!r[0]||d.eq(1))return new g(r&&!r[0]?-1/0:d.s!=1?NaN:r?0:1/0);if(t)if(r.length>1)o=!0;else{for(i=r[0];i%10===0;)i/=10;o=i!==1}if(_=!1,a=h+I,s=Oe(d,a),n=t?Pr(g,a+10):Oe(e,a),l=V(s,n,a,1),Rt(l.d,i=h,T))do if(a+=10,s=Oe(d,a),n=t?Pr(g,a+10):Oe(e,a),l=V(s,n,a,1),!o){+z(l.d).slice(i+1,i+15)+1==1e14&&(l=k(l,h+1,0));break}while(Rt(l.d,i+=10,T));return _=!0,k(l,h,T)};R.minus=R.sub=function(e){var t,r,n,i,o,s,a,l,d,g,h,T,I=this,S=I.constructor;if(e=new S(e),!I.d||!e.d)return!I.s||!e.s?e=new S(NaN):I.d?e.s=-e.s:e=new S(e.d||I.s!==e.s?I:NaN),e;if(I.s!=e.s)return e.s=-e.s,I.plus(e);if(d=I.d,T=e.d,a=S.precision,l=S.rounding,!d[0]||!T[0]){if(T[0])e.s=-e.s;else if(d[0])e=new S(I);else return new S(l===3?-0:0);return _?k(e,a,l):e}if(r=X(e.e/D),g=X(I.e/D),d=d.slice(),o=g-r,o){for(h=o<0,h?(t=d,o=-o,s=T.length):(t=T,r=g,s=d.length),n=Math.max(Math.ceil(a/D),s)+2,o>n&&(o=n,t.length=1),t.reverse(),n=o;n--;)t.push(0);t.reverse()}else{for(n=d.length,s=T.length,h=n0;--n)d[s++]=0;for(n=T.length;n>o;){if(d[--n]s?o+1:s+1,i>s&&(i=s,r.length=1),r.reverse();i--;)r.push(0);r.reverse()}for(s=d.length,i=g.length,s-i<0&&(i=s,r=g,g=d,d=r),t=0;i;)t=(d[--i]=d[i]+g[i]+t)/pe|0,d[i]%=pe;for(t&&(d.unshift(t),++n),s=d.length;d[--s]==0;)d.pop();return e.d=d,e.e=Tr(d,n),_?k(e,a,l):e};R.precision=R.sd=function(e){var t,r=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(ke+e);return r.d?(t=mo(r.d),e&&r.e+1>t&&(t=r.e+1)):t=NaN,t};R.round=function(){var e=this,t=e.constructor;return k(new t(e),e.e+1,t.rounding)};R.sine=R.sin=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+Math.max(r.e,r.sd())+D,n.rounding=1,r=Ll(n,yo(n,r)),n.precision=e,n.rounding=t,k(Pe>2?r.neg():r,e,t,!0)):new n(NaN)};R.squareRoot=R.sqrt=function(){var e,t,r,n,i,o,s=this,a=s.d,l=s.e,d=s.s,g=s.constructor;if(d!==1||!a||!a[0])return new g(!d||d<0&&(!a||a[0])?NaN:a?s:1/0);for(_=!1,d=Math.sqrt(+s),d==0||d==1/0?(t=z(a),(t.length+l)%2==0&&(t+="0"),d=Math.sqrt(t),l=X((l+1)/2)-(l<0||l%2),d==1/0?t="5e"+l:(t=d.toExponential(),t=t.slice(0,t.indexOf("e")+1)+l),n=new g(t)):n=new g(d.toString()),r=(l=g.precision)+3;;)if(o=n,n=o.plus(V(s,o,r+2,1)).times(.5),z(o.d).slice(0,r)===(t=z(n.d)).slice(0,r))if(t=t.slice(r-3,r+1),t=="9999"||!i&&t=="4999"){if(!i&&(k(o,l+1,0),o.times(o).eq(s))){n=o;break}r+=4,i=1}else{(!+t||!+t.slice(1)&&t.charAt(0)=="5")&&(k(n,l+1,1),e=!n.times(n).eq(s));break}return _=!0,k(n,l,g.rounding,e)};R.tangent=R.tan=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+10,n.rounding=1,r=r.sin(),r.s=1,r=V(r,new n(1).minus(r.times(r)).sqrt(),e+10,0),n.precision=e,n.rounding=t,k(Pe==2||Pe==4?r.neg():r,e,t,!0)):new n(NaN)};R.times=R.mul=function(e){var t,r,n,i,o,s,a,l,d,g=this,h=g.constructor,T=g.d,I=(e=new h(e)).d;if(e.s*=g.s,!T||!T[0]||!I||!I[0])return new h(!e.s||T&&!T[0]&&!I||I&&!I[0]&&!T?NaN:!T||!I?e.s/0:e.s*0);for(r=X(g.e/D)+X(e.e/D),l=T.length,d=I.length,l=0;){for(t=0,i=l+n;i>n;)a=o[i]+I[n]*T[i-n-1]+t,o[i--]=a%pe|0,t=a/pe|0;o[i]=(o[i]+t)%pe|0}for(;!o[--s];)o.pop();return t?++r:o.shift(),e.d=o,e.e=Tr(o,r),_?k(e,h.precision,h.rounding):e};R.toBinary=function(e,t){return Cn(this,2,e,t)};R.toDecimalPlaces=R.toDP=function(e,t){var r=this,n=r.constructor;return r=new n(r),e===void 0?r:(ne(e,0,De),t===void 0?t=n.rounding:ne(t,0,8),k(r,e+r.e+1,t))};R.toExponential=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=ye(n,!0):(ne(e,0,De),t===void 0?t=i.rounding:ne(t,0,8),n=k(new i(n),e+1,t),r=ye(n,!0,e+1)),n.isNeg()&&!n.isZero()?"-"+r:r};R.toFixed=function(e,t){var r,n,i=this,o=i.constructor;return e===void 0?r=ye(i):(ne(e,0,De),t===void 0?t=o.rounding:ne(t,0,8),n=k(new o(i),e+i.e+1,t),r=ye(n,!1,e+n.e+1)),i.isNeg()&&!i.isZero()?"-"+r:r};R.toFraction=function(e){var t,r,n,i,o,s,a,l,d,g,h,T,I=this,S=I.d,C=I.constructor;if(!S)return new C(I);if(d=r=new C(1),n=l=new C(0),t=new C(n),o=t.e=mo(S)-I.e-1,s=o%D,t.d[0]=K(10,s<0?D+s:s),e==null)e=o>0?t:d;else{if(a=new C(e),!a.isInt()||a.lt(d))throw Error(ke+a);e=a.gt(t)?o>0?t:d:a}for(_=!1,a=new C(z(S)),g=C.precision,C.precision=o=S.length*D*2;h=V(a,t,0,1,1),i=r.plus(h.times(n)),i.cmp(e)!=1;)r=n,n=i,i=d,d=l.plus(h.times(i)),l=i,i=t,t=a.minus(h.times(i)),a=i;return i=V(e.minus(r),n,0,1,1),l=l.plus(i.times(d)),r=r.plus(i.times(n)),l.s=d.s=I.s,T=V(d,n,o,1).minus(I).abs().cmp(V(l,r,o,1).minus(I).abs())<1?[d,n]:[l,r],C.precision=g,_=!0,T};R.toHexadecimal=R.toHex=function(e,t){return Cn(this,16,e,t)};R.toNearest=function(e,t){var r=this,n=r.constructor;if(r=new n(r),e==null){if(!r.d)return r;e=new n(1),t=n.rounding}else{if(e=new n(e),t===void 0?t=n.rounding:ne(t,0,8),!r.d)return e.s?r:e;if(!e.d)return e.s&&(e.s=r.s),e}return e.d[0]?(_=!1,r=V(r,e,0,t,1).times(e),_=!0,k(r)):(e.s=r.s,r=e),r};R.toNumber=function(){return+this};R.toOctal=function(e,t){return Cn(this,8,e,t)};R.toPower=R.pow=function(e){var t,r,n,i,o,s,a=this,l=a.constructor,d=+(e=new l(e));if(!a.d||!e.d||!a.d[0]||!e.d[0])return new l(K(+a,d));if(a=new l(a),a.eq(1))return a;if(n=l.precision,o=l.rounding,e.eq(1))return k(a,n,o);if(t=X(e.e/D),t>=e.d.length-1&&(r=d<0?-d:d)<=Ml)return i=fo(l,a,r,n),e.s<0?new l(1).div(i):k(i,n,o);if(s=a.s,s<0){if(tl.maxE+1||t0?s/0:0):(_=!1,l.rounding=a.s=1,r=Math.min(12,(t+"").length),i=Rn(e.times(Oe(a,n+r)),n),i.d&&(i=k(i,n+5,1),Rt(i.d,n,o)&&(t=n+10,i=k(Rn(e.times(Oe(a,t+r)),t),t+5,1),+z(i.d).slice(n+1,n+15)+1==1e14&&(i=k(i,n+1,0)))),i.s=s,_=!0,l.rounding=o,k(i,n,o))};R.toPrecision=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=ye(n,n.e<=i.toExpNeg||n.e>=i.toExpPos):(ne(e,1,De),t===void 0?t=i.rounding:ne(t,0,8),n=k(new i(n),e,t),r=ye(n,e<=n.e||n.e<=i.toExpNeg,e)),n.isNeg()&&!n.isZero()?"-"+r:r};R.toSignificantDigits=R.toSD=function(e,t){var r=this,n=r.constructor;return e===void 0?(e=n.precision,t=n.rounding):(ne(e,1,De),t===void 0?t=n.rounding:ne(t,0,8)),k(new n(r),e,t)};R.toString=function(){var e=this,t=e.constructor,r=ye(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()&&!e.isZero()?"-"+r:r};R.truncated=R.trunc=function(){return k(new this.constructor(this),this.e+1,1)};R.valueOf=R.toJSON=function(){var e=this,t=e.constructor,r=ye(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()?"-"+r:r};function z(e){var t,r,n,i=e.length-1,o="",s=e[0];if(i>0){for(o+=s,t=1;tr)throw Error(ke+e)}function Rt(e,t,r,n){var i,o,s,a;for(o=e[0];o>=10;o/=10)--t;return--t<0?(t+=D,i=0):(i=Math.ceil((t+1)/D),t%=D),o=K(10,D-t),a=e[i]%o|0,n==null?t<3?(t==0?a=a/100|0:t==1&&(a=a/10|0),s=r<4&&a==99999||r>3&&a==49999||a==5e4||a==0):s=(r<4&&a+1==o||r>3&&a+1==o/2)&&(e[i+1]/o/100|0)==K(10,t-2)-1||(a==o/2||a==0)&&(e[i+1]/o/100|0)==0:t<4?(t==0?a=a/1e3|0:t==1?a=a/100|0:t==2&&(a=a/10|0),s=(n||r<4)&&a==9999||!n&&r>3&&a==4999):s=((n||r<4)&&a+1==o||!n&&r>3&&a+1==o/2)&&(e[i+1]/o/1e3|0)==K(10,t-3)-1,s}function wr(e,t,r){for(var n,i=[0],o,s=0,a=e.length;sr-1&&(i[n+1]===void 0&&(i[n+1]=0),i[n+1]+=i[n]/r|0,i[n]%=r)}return i.reverse()}function Nl(e,t){var r,n,i;if(t.isZero())return t;n=t.d.length,n<32?(r=Math.ceil(n/3),i=(1/Ar(4,r)).toString()):(r=16,i="2.3283064365386962890625e-10"),e.precision+=r,t=tt(e,1,t.times(i),new e(1));for(var o=r;o--;){var s=t.times(t);t=s.times(s).minus(s).times(8).plus(1)}return e.precision-=r,t}var V=function(){function e(n,i,o){var s,a=0,l=n.length;for(n=n.slice();l--;)s=n[l]*i+a,n[l]=s%o|0,a=s/o|0;return a&&n.unshift(a),n}function t(n,i,o,s){var a,l;if(o!=s)l=o>s?1:-1;else for(a=l=0;ai[a]?1:-1;break}return l}function r(n,i,o,s){for(var a=0;o--;)n[o]-=a,a=n[o]1;)n.shift()}return function(n,i,o,s,a,l){var d,g,h,T,I,S,C,M,F,B,O,L,oe,J,Xr,rr,bt,en,ce,nr,ir=n.constructor,tn=n.s==i.s?1:-1,Y=n.d,$=i.d;if(!Y||!Y[0]||!$||!$[0])return new ir(!n.s||!i.s||(Y?$&&Y[0]==$[0]:!$)?NaN:Y&&Y[0]==0||!$?tn*0:tn/0);for(l?(I=1,g=n.e-i.e):(l=pe,I=D,g=X(n.e/I)-X(i.e/I)),ce=$.length,bt=Y.length,F=new ir(tn),B=F.d=[],h=0;$[h]==(Y[h]||0);h++);if($[h]>(Y[h]||0)&&g--,o==null?(J=o=ir.precision,s=ir.rounding):a?J=o+(n.e-i.e)+1:J=o,J<0)B.push(1),S=!0;else{if(J=J/I+2|0,h=0,ce==1){for(T=0,$=$[0],J++;(h1&&($=e($,T,l),Y=e(Y,T,l),ce=$.length,bt=Y.length),rr=ce,O=Y.slice(0,ce),L=O.length;L=l/2&&++en;do T=0,d=t($,O,ce,L),d<0?(oe=O[0],ce!=L&&(oe=oe*l+(O[1]||0)),T=oe/en|0,T>1?(T>=l&&(T=l-1),C=e($,T,l),M=C.length,L=O.length,d=t(C,O,M,L),d==1&&(T--,r(C,ce=10;T/=10)h++;F.e=h+g*I-1,k(F,a?o+F.e+1:o,s,S)}return F}}();function k(e,t,r,n){var i,o,s,a,l,d,g,h,T,I=e.constructor;e:if(t!=null){if(h=e.d,!h)return e;for(i=1,a=h[0];a>=10;a/=10)i++;if(o=t-i,o<0)o+=D,s=t,g=h[T=0],l=g/K(10,i-s-1)%10|0;else if(T=Math.ceil((o+1)/D),a=h.length,T>=a)if(n){for(;a++<=T;)h.push(0);g=l=0,i=1,o%=D,s=o-D+1}else break e;else{for(g=a=h[T],i=1;a>=10;a/=10)i++;o%=D,s=o-D+i,l=s<0?0:g/K(10,i-s-1)%10|0}if(n=n||t<0||h[T+1]!==void 0||(s<0?g:g%K(10,i-s-1)),d=r<4?(l||n)&&(r==0||r==(e.s<0?3:2)):l>5||l==5&&(r==4||n||r==6&&(o>0?s>0?g/K(10,i-s):0:h[T-1])%10&1||r==(e.s<0?8:7)),t<1||!h[0])return h.length=0,d?(t-=e.e+1,h[0]=K(10,(D-t%D)%D),e.e=-t||0):h[0]=e.e=0,e;if(o==0?(h.length=T,a=1,T--):(h.length=T+1,a=K(10,D-o),h[T]=s>0?(g/K(10,i-s)%K(10,s)|0)*a:0),d)for(;;)if(T==0){for(o=1,s=h[0];s>=10;s/=10)o++;for(s=h[0]+=a,a=1;s>=10;s/=10)a++;o!=a&&(e.e++,h[0]==pe&&(h[0]=1));break}else{if(h[T]+=a,h[T]!=pe)break;h[T--]=0,a=1}for(o=h.length;h[--o]===0;)h.pop()}return _&&(e.e>I.maxE?(e.d=null,e.e=NaN):e.e0?o=o.charAt(0)+"."+o.slice(1)+Ie(n):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(e.e<0?"e":"e+")+e.e):i<0?(o="0."+Ie(-i-1)+o,r&&(n=r-s)>0&&(o+=Ie(n))):i>=s?(o+=Ie(i+1-s),r&&(n=r-i-1)>0&&(o=o+"."+Ie(n))):((n=i+1)0&&(i+1===s&&(o+="."),o+=Ie(n))),o}function Tr(e,t){var r=e[0];for(t*=D;r>=10;r/=10)t++;return t}function Pr(e,t,r){if(t>_l)throw _=!0,r&&(e.precision=r),Error(lo);return k(new e(br),t,1,!0)}function he(e,t,r){if(t>An)throw Error(lo);return k(new e(xr),t,r,!0)}function mo(e){var t=e.length-1,r=t*D+1;if(t=e[t],t){for(;t%10==0;t/=10)r--;for(t=e[0];t>=10;t/=10)r++}return r}function Ie(e){for(var t="";e--;)t+="0";return t}function fo(e,t,r,n){var i,o=new e(1),s=Math.ceil(n/D+4);for(_=!1;;){if(r%2&&(o=o.times(t),oo(o.d,s)&&(i=!0)),r=X(r/2),r===0){r=o.d.length-1,i&&o.d[r]===0&&++o.d[r];break}t=t.times(t),oo(t.d,s)}return _=!0,o}function io(e){return e.d[e.d.length-1]&1}function go(e,t,r){for(var n,i,o=new e(t[0]),s=0;++s17)return new T(e.d?e.d[0]?e.s<0?0:1/0:1:e.s?e.s<0?0:e:NaN);for(t==null?(_=!1,l=S):l=t,a=new T(.03125);e.e>-2;)e=e.times(a),h+=5;for(n=Math.log(K(2,h))/Math.LN10*2+5|0,l+=n,r=o=s=new T(1),T.precision=l;;){if(o=k(o.times(e),l,1),r=r.times(++g),a=s.plus(V(o,r,l,1)),z(a.d).slice(0,l)===z(s.d).slice(0,l)){for(i=h;i--;)s=k(s.times(s),l,1);if(t==null)if(d<3&&Rt(s.d,l-n,I,d))T.precision=l+=10,r=o=a=new T(1),g=0,d++;else return k(s,T.precision=S,I,_=!0);else return T.precision=S,s}s=a}}function Oe(e,t){var r,n,i,o,s,a,l,d,g,h,T,I=1,S=10,C=e,M=C.d,F=C.constructor,B=F.rounding,O=F.precision;if(C.s<0||!M||!M[0]||!C.e&&M[0]==1&&M.length==1)return new F(M&&!M[0]?-1/0:C.s!=1?NaN:M?0:C);if(t==null?(_=!1,g=O):g=t,F.precision=g+=S,r=z(M),n=r.charAt(0),Math.abs(o=C.e)<15e14){for(;n<7&&n!=1||n==1&&r.charAt(1)>3;)C=C.times(e),r=z(C.d),n=r.charAt(0),I++;o=C.e,n>1?(C=new F("0."+r),o++):C=new F(n+"."+r.slice(1))}else return d=Pr(F,g+2,O).times(o+""),C=Oe(new F(n+"."+r.slice(1)),g-S).plus(d),F.precision=O,t==null?k(C,O,B,_=!0):C;for(h=C,l=s=C=V(C.minus(1),C.plus(1),g,1),T=k(C.times(C),g,1),i=3;;){if(s=k(s.times(T),g,1),d=l.plus(V(s,new F(i),g,1)),z(d.d).slice(0,g)===z(l.d).slice(0,g))if(l=l.times(2),o!==0&&(l=l.plus(Pr(F,g+2,O).times(o+""))),l=V(l,new F(I),g,1),t==null)if(Rt(l.d,g-S,B,a))F.precision=g+=S,d=s=C=V(h.minus(1),h.plus(1),g,1),T=k(C.times(C),g,1),i=a=1;else return k(l,F.precision=O,B,_=!0);else return F.precision=O,l;l=d,i+=2}}function ho(e){return String(e.s*e.s/0)}function Er(e,t){var r,n,i;for((r=t.indexOf("."))>-1&&(t=t.replace(".","")),(n=t.search(/e/i))>0?(r<0&&(r=n),r+=+t.slice(n+1),t=t.substring(0,n)):r<0&&(r=t.length),n=0;t.charCodeAt(n)===48;n++);for(i=t.length;t.charCodeAt(i-1)===48;--i);if(t=t.slice(n,i),t){if(i-=n,e.e=r=r-n-1,e.d=[],n=(r+1)%D,r<0&&(n+=D),ne.constructor.maxE?(e.d=null,e.e=NaN):e.e-1){if(t=t.replace(/(\d)_(?=\d)/g,"$1"),po.test(t))return Er(e,t)}else if(t==="Infinity"||t==="NaN")return+t||(e.s=NaN),e.e=NaN,e.d=null,e;if(kl.test(t))r=16,t=t.toLowerCase();else if(Ol.test(t))r=2;else if(Dl.test(t))r=8;else throw Error(ke+t);for(o=t.search(/p/i),o>0?(l=+t.slice(o+1),t=t.substring(2,o)):t=t.slice(2),o=t.indexOf("."),s=o>=0,n=e.constructor,s&&(t=t.replace(".",""),a=t.length,o=a-o,i=fo(n,new n(r),o,o*2)),d=wr(t,r,pe),g=d.length-1,o=g;d[o]===0;--o)d.pop();return o<0?new n(e.s*0):(e.e=Tr(d,g),e.d=d,_=!1,s&&(e=V(e,i,a*4)),l&&(e=e.times(Math.abs(l)<54?K(2,l):ve.pow(2,l))),_=!0,e)}function Ll(e,t){var r,n=t.d.length;if(n<3)return t.isZero()?t:tt(e,2,t,t);r=1.4*Math.sqrt(n),r=r>16?16:r|0,t=t.times(1/Ar(5,r)),t=tt(e,2,t,t);for(var i,o=new e(5),s=new e(16),a=new e(20);r--;)i=t.times(t),t=t.times(o.plus(i.times(s.times(i).minus(a))));return t}function tt(e,t,r,n,i){var o,s,a,l,d=1,g=e.precision,h=Math.ceil(g/D);for(_=!1,l=r.times(r),a=new e(n);;){if(s=V(a.times(l),new e(t++*t++),g,1),a=i?n.plus(s):n.minus(s),n=V(s.times(l),new e(t++*t++),g,1),s=a.plus(n),s.d[h]!==void 0){for(o=h;s.d[o]===a.d[o]&&o--;);if(o==-1)break}o=a,a=n,n=s,s=o,d++}return _=!0,s.d.length=h+1,s}function Ar(e,t){for(var r=e;--t;)r*=e;return r}function yo(e,t){var r,n=t.s<0,i=he(e,e.precision,1),o=i.times(.5);if(t=t.abs(),t.lte(o))return Pe=n?4:1,t;if(r=t.divToInt(i),r.isZero())Pe=n?3:2;else{if(t=t.minus(r.times(i)),t.lte(o))return Pe=io(r)?n?2:3:n?4:1,t;Pe=io(r)?n?1:4:n?3:2}return t.minus(i).abs()}function Cn(e,t,r,n){var i,o,s,a,l,d,g,h,T,I=e.constructor,S=r!==void 0;if(S?(ne(r,1,De),n===void 0?n=I.rounding:ne(n,0,8)):(r=I.precision,n=I.rounding),!e.isFinite())g=ho(e);else{for(g=ye(e),s=g.indexOf("."),S?(i=2,t==16?r=r*4-3:t==8&&(r=r*3-2)):i=t,s>=0&&(g=g.replace(".",""),T=new I(1),T.e=g.length-s,T.d=wr(ye(T),10,i),T.e=T.d.length),h=wr(g,10,i),o=l=h.length;h[--l]==0;)h.pop();if(!h[0])g=S?"0p+0":"0";else{if(s<0?o--:(e=new I(e),e.d=h,e.e=o,e=V(e,T,r,n,0,i),h=e.d,o=e.e,d=ao),s=h[r],a=i/2,d=d||h[r+1]!==void 0,d=n<4?(s!==void 0||d)&&(n===0||n===(e.s<0?3:2)):s>a||s===a&&(n===4||d||n===6&&h[r-1]&1||n===(e.s<0?8:7)),h.length=r,d)for(;++h[--r]>i-1;)h[r]=0,r||(++o,h.unshift(1));for(l=h.length;!h[l-1];--l);for(s=0,g="";s1)if(t==16||t==8){for(s=t==16?4:3,--l;l%s;l++)g+="0";for(h=wr(g,i,t),l=h.length;!h[l-1];--l);for(s=1,g="1.";sl)for(o-=l;o--;)g+="0";else ot)return e.length=t,!0}function Ul(e){return new this(e).abs()}function Bl(e){return new this(e).acos()}function ql(e){return new this(e).acosh()}function Vl(e,t){return new this(e).plus(t)}function $l(e){return new this(e).asin()}function jl(e){return new this(e).asinh()}function Gl(e){return new this(e).atan()}function Jl(e){return new this(e).atanh()}function Ql(e,t){e=new this(e),t=new this(t);var r,n=this.precision,i=this.rounding,o=n+4;return!e.s||!t.s?r=new this(NaN):!e.d&&!t.d?(r=he(this,o,1).times(t.s>0?.25:.75),r.s=e.s):!t.d||e.isZero()?(r=t.s<0?he(this,n,i):new this(0),r.s=e.s):!e.d||t.isZero()?(r=he(this,o,1).times(.5),r.s=e.s):t.s<0?(this.precision=o,this.rounding=1,r=this.atan(V(e,t,o,1)),t=he(this,o,1),this.precision=n,this.rounding=i,r=e.s<0?r.minus(t):r.plus(t)):r=this.atan(V(e,t,o,1)),r}function Kl(e){return new this(e).cbrt()}function Wl(e){return k(e=new this(e),e.e+1,2)}function Hl(e,t,r){return new this(e).clamp(t,r)}function zl(e){if(!e||typeof e!="object")throw Error(vr+"Object expected");var t,r,n,i=e.defaults===!0,o=["precision",1,De,"rounding",0,8,"toExpNeg",-et,0,"toExpPos",0,et,"maxE",0,et,"minE",-et,0,"modulo",0,9];for(t=0;t=o[t+1]&&n<=o[t+2])this[r]=n;else throw Error(ke+r+": "+n);if(r="crypto",i&&(this[r]=Tn[r]),(n=e[r])!==void 0)if(n===!0||n===!1||n===0||n===1)if(n)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))this[r]=!0;else throw Error(uo);else this[r]=!1;else throw Error(ke+r+": "+n);return this}function Yl(e){return new this(e).cos()}function Zl(e){return new this(e).cosh()}function wo(e){var t,r,n;function i(o){var s,a,l,d=this;if(!(d instanceof i))return new i(o);if(d.constructor=i,so(o)){d.s=o.s,_?!o.d||o.e>i.maxE?(d.e=NaN,d.d=null):o.e=10;a/=10)s++;_?s>i.maxE?(d.e=NaN,d.d=null):s=429e7?t[o]=crypto.getRandomValues(new Uint32Array(1))[0]:a[o++]=i%1e7;else if(crypto.randomBytes){for(t=crypto.randomBytes(n*=4);o=214e7?crypto.randomBytes(4).copy(t,o):(a.push(i%1e7),o+=4);o=n/4}else throw Error(uo);else for(;o=10;i/=10)n++;nCt,datamodelEnumToSchemaEnum:()=>vu});f();u();c();p();m();f();u();c();p();m();function vu(e){return{name:e.name,values:e.values.map(t=>t.name)}}f();u();c();p();m();var Ct=(O=>(O.findUnique="findUnique",O.findUniqueOrThrow="findUniqueOrThrow",O.findFirst="findFirst",O.findFirstOrThrow="findFirstOrThrow",O.findMany="findMany",O.create="create",O.createMany="createMany",O.createManyAndReturn="createManyAndReturn",O.update="update",O.updateMany="updateMany",O.updateManyAndReturn="updateManyAndReturn",O.upsert="upsert",O.delete="delete",O.deleteMany="deleteMany",O.groupBy="groupBy",O.count="count",O.aggregate="aggregate",O.findRaw="findRaw",O.aggregateRaw="aggregateRaw",O))(Ct||{});var Tu=Qe(Xi());var Au={red:Ye,gray:Bi,dim:ur,bold:lr,underline:_i,highlightSource:e=>e.highlight()},Ru={red:e=>e,gray:e=>e,dim:e=>e,bold:e=>e,underline:e=>e,highlightSource:e=>e};function Cu({message:e,originalMethod:t,isPanic:r,callArguments:n}){return{functionName:`prisma.${t}()`,message:e,isPanic:r??!1,callArguments:n}}function Su({functionName:e,location:t,message:r,isPanic:n,contextLines:i,callArguments:o},s){let a=[""],l=t?" in":":";if(n?(a.push(s.red(`Oops, an unknown error occurred! This is ${s.bold("on us")}, you did nothing wrong.`)),a.push(s.red(`It occurred in the ${s.bold(`\`${e}\``)} invocation${l}`))):a.push(s.red(`Invalid ${s.bold(`\`${e}\``)} invocation${l}`)),t&&a.push(s.underline(Iu(t))),i){a.push("");let d=[i.toString()];o&&(d.push(o),d.push(s.dim(")"))),a.push(d.join("")),o&&a.push("")}else a.push(""),o&&a.push(o),a.push("");return a.push(r),a.join(` +`)}function Iu(e){let t=[e.fileName];return e.lineNumber&&t.push(String(e.lineNumber)),e.columnNumber&&t.push(String(e.columnNumber)),t.join(":")}function Cr(e){let t=e.showColors?Au:Ru,r;return typeof $getTemplateParameters<"u"?r=$getTemplateParameters(e,t):r=Cu(e),Su(r,t)}f();u();c();p();m();var Co=Qe(Sn());f();u();c();p();m();function Po(e,t,r){let n=vo(e),i=Ou(n),o=Du(i);o?Sr(o,t,r):t.addErrorMessage(()=>"Unknown error")}function vo(e){return e.errors.flatMap(t=>t.kind==="Union"?vo(t):[t])}function Ou(e){let t=new Map,r=[];for(let n of e){if(n.kind!=="InvalidArgumentType"){r.push(n);continue}let i=`${n.selectionPath.join(".")}:${n.argumentPath.join(".")}`,o=t.get(i);o?t.set(i,{...n,argument:{...n.argument,typeNames:ku(o.argument.typeNames,n.argument.typeNames)}}):t.set(i,n)}return r.push(...t.values()),r}function ku(e,t){return[...new Set(e.concat(t))]}function Du(e){return xn(e,(t,r)=>{let n=bo(t),i=bo(r);return n!==i?n-i:xo(t)-xo(r)})}function bo(e){let t=0;return Array.isArray(e.selectionPath)&&(t+=e.selectionPath.length),Array.isArray(e.argumentPath)&&(t+=e.argumentPath.length),t}function xo(e){switch(e.kind){case"InvalidArgumentValue":case"ValueTooLarge":return 20;case"InvalidArgumentType":return 10;case"RequiredArgumentMissing":return-10;default:return 0}}f();u();c();p();m();var le=class{constructor(t,r){this.name=t;this.value=r}isRequired=!1;makeRequired(){return this.isRequired=!0,this}write(t){let{colors:{green:r}}=t.context;t.addMarginSymbol(r(this.isRequired?"+":"?")),t.write(r(this.name)),this.isRequired||t.write(r("?")),t.write(r(": ")),typeof this.value=="string"?t.write(r(this.value)):t.write(this.value)}};f();u();c();p();m();f();u();c();p();m();Ao();f();u();c();p();m();var nt=class{constructor(t=0,r){this.context=r;this.currentIndent=t}lines=[];currentLine="";currentIndent=0;marginSymbol;afterNextNewLineCallback;write(t){return typeof t=="string"?this.currentLine+=t:t.write(this),this}writeJoined(t,r,n=(i,o)=>o.write(i)){let i=r.length-1;for(let o=0;o0&&this.currentIndent--,this}addMarginSymbol(t){return this.marginSymbol=t,this}toString(){return this.lines.concat(this.indentedCurrentLine()).join(` +`)}getCurrentLineLength(){return this.currentLine.length}indentedCurrentLine(){let t=this.currentLine.padStart(this.currentLine.length+2*this.currentIndent);return this.marginSymbol?this.marginSymbol+t.slice(1):t}};To();f();u();c();p();m();f();u();c();p();m();var Ir=class{constructor(t){this.value=t}write(t){t.write(this.value)}markAsError(){this.value.markAsError()}};f();u();c();p();m();var Or=e=>e,kr={bold:Or,red:Or,green:Or,dim:Or,enabled:!1},Ro={bold:lr,red:Ye,green:Ni,dim:ur,enabled:!0},it={write(e){e.writeLine(",")}};f();u();c();p();m();var we=class{constructor(t){this.contents=t}isUnderlined=!1;color=t=>t;underline(){return this.isUnderlined=!0,this}setColor(t){return this.color=t,this}write(t){let r=t.getCurrentLineLength();t.write(this.color(this.contents)),this.isUnderlined&&t.afterNextNewline(()=>{t.write(" ".repeat(r)).writeLine(this.color("~".repeat(this.contents.length)))})}};f();u();c();p();m();var _e=class{hasError=!1;markAsError(){return this.hasError=!0,this}};var ot=class extends _e{items=[];addItem(t){return this.items.push(new Ir(t)),this}getField(t){return this.items[t]}getPrintWidth(){return this.items.length===0?2:Math.max(...this.items.map(r=>r.value.getPrintWidth()))+2}write(t){if(this.items.length===0){this.writeEmpty(t);return}this.writeWithItems(t)}writeEmpty(t){let r=new we("[]");this.hasError&&r.setColor(t.context.colors.red).underline(),t.write(r)}writeWithItems(t){let{colors:r}=t.context;t.writeLine("[").withIndent(()=>t.writeJoined(it,this.items).newLine()).write("]"),this.hasError&&t.afterNextNewline(()=>{t.writeLine(r.red("~".repeat(this.getPrintWidth())))})}asObject(){}};var st=class e extends _e{fields={};suggestions=[];addField(t){this.fields[t.name]=t}addSuggestion(t){this.suggestions.push(t)}getField(t){return this.fields[t]}getDeepField(t){let[r,...n]=t,i=this.getField(r);if(!i)return;let o=i;for(let s of n){let a;if(o.value instanceof e?a=o.value.getField(s):o.value instanceof ot&&(a=o.value.getField(Number(s))),!a)return;o=a}return o}getDeepFieldValue(t){return t.length===0?this:this.getDeepField(t)?.value}hasField(t){return!!this.getField(t)}removeAllFields(){this.fields={}}removeField(t){delete this.fields[t]}getFields(){return this.fields}isEmpty(){return Object.keys(this.fields).length===0}getFieldValue(t){return this.getField(t)?.value}getDeepSubSelectionValue(t){let r=this;for(let n of t){if(!(r instanceof e))return;let i=r.getSubSelectionValue(n);if(!i)return;r=i}return r}getDeepSelectionParent(t){let r=this.getSelectionParent();if(!r)return;let n=r;for(let i of t){let o=n.value.getFieldValue(i);if(!o||!(o instanceof e))return;let s=o.getSelectionParent();if(!s)return;n=s}return n}getSelectionParent(){let t=this.getField("select")?.value.asObject();if(t)return{kind:"select",value:t};let r=this.getField("include")?.value.asObject();if(r)return{kind:"include",value:r}}getSubSelectionValue(t){return this.getSelectionParent()?.value.fields[t].value}getPrintWidth(){let t=Object.values(this.fields);return t.length==0?2:Math.max(...t.map(n=>n.getPrintWidth()))+2}write(t){let r=Object.values(this.fields);if(r.length===0&&this.suggestions.length===0){this.writeEmpty(t);return}this.writeWithContents(t,r)}asObject(){return this}writeEmpty(t){let r=new we("{}");this.hasError&&r.setColor(t.context.colors.red).underline(),t.write(r)}writeWithContents(t,r){t.writeLine("{").withIndent(()=>{t.writeJoined(it,[...r,...this.suggestions]).newLine()}),t.write("}"),this.hasError&&t.afterNextNewline(()=>{t.writeLine(t.context.colors.red("~".repeat(this.getPrintWidth())))})}};f();u();c();p();m();var H=class extends _e{constructor(r){super();this.text=r}getPrintWidth(){return this.text.length}write(r){let n=new we(this.text);this.hasError&&n.underline().setColor(r.context.colors.red),r.write(n)}asObject(){}};f();u();c();p();m();var St=class{fields=[];addField(t,r){return this.fields.push({write(n){let{green:i,dim:o}=n.context.colors;n.write(i(o(`${t}: ${r}`))).addMarginSymbol(i(o("+")))}}),this}write(t){let{colors:{green:r}}=t.context;t.writeLine(r("{")).withIndent(()=>{t.writeJoined(it,this.fields).newLine()}).write(r("}")).addMarginSymbol(r("+"))}};function Sr(e,t,r){switch(e.kind){case"MutuallyExclusiveFields":Mu(e,t);break;case"IncludeOnScalar":_u(e,t);break;case"EmptySelection":Nu(e,t,r);break;case"UnknownSelectionField":Bu(e,t);break;case"InvalidSelectionValue":qu(e,t);break;case"UnknownArgument":Vu(e,t);break;case"UnknownInputField":$u(e,t);break;case"RequiredArgumentMissing":ju(e,t);break;case"InvalidArgumentType":Gu(e,t);break;case"InvalidArgumentValue":Ju(e,t);break;case"ValueTooLarge":Qu(e,t);break;case"SomeFieldsMissing":Ku(e,t);break;case"TooManyFieldsGiven":Wu(e,t);break;case"Union":Po(e,t,r);break;default:throw new Error("not implemented: "+e.kind)}}function Mu(e,t){let r=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();r&&(r.getField(e.firstField)?.markAsError(),r.getField(e.secondField)?.markAsError()),t.addErrorMessage(n=>`Please ${n.bold("either")} use ${n.green(`\`${e.firstField}\``)} or ${n.green(`\`${e.secondField}\``)}, but ${n.red("not both")} at the same time.`)}function _u(e,t){let[r,n]=at(e.selectionPath),i=e.outputType,o=t.arguments.getDeepSelectionParent(r)?.value;if(o&&(o.getField(n)?.markAsError(),i))for(let s of i.fields)s.isRelation&&o.addSuggestion(new le(s.name,"true"));t.addErrorMessage(s=>{let a=`Invalid scalar field ${s.red(`\`${n}\``)} for ${s.bold("include")} statement`;return i?a+=` on model ${s.bold(i.name)}. ${It(s)}`:a+=".",a+=` +Note that ${s.bold("include")} statements only accept relation fields.`,a})}function Nu(e,t,r){let n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(n){let i=n.getField("omit")?.value.asObject();if(i){Fu(e,t,i);return}if(n.hasField("select")){Lu(e,t);return}}if(r?.[Se(e.outputType.name)]){Uu(e,t);return}t.addErrorMessage(()=>`Unknown field at "${e.selectionPath.join(".")} selection"`)}function Fu(e,t,r){r.removeAllFields();for(let n of e.outputType.fields)r.addSuggestion(new le(n.name,"false"));t.addErrorMessage(n=>`The ${n.red("omit")} statement includes every field of the model ${n.bold(e.outputType.name)}. At least one field must be included in the result`)}function Lu(e,t){let r=e.outputType,n=t.arguments.getDeepSelectionParent(e.selectionPath)?.value,i=n?.isEmpty()??!1;n&&(n.removeAllFields(),Oo(n,r)),t.addErrorMessage(o=>i?`The ${o.red("`select`")} statement for type ${o.bold(r.name)} must not be empty. ${It(o)}`:`The ${o.red("`select`")} statement for type ${o.bold(r.name)} needs ${o.bold("at least one truthy value")}.`)}function Uu(e,t){let r=new St;for(let i of e.outputType.fields)i.isRelation||r.addField(i.name,"false");let n=new le("omit",r).makeRequired();if(e.selectionPath.length===0)t.arguments.addSuggestion(n);else{let[i,o]=at(e.selectionPath),a=t.arguments.getDeepSelectionParent(i)?.value.asObject()?.getField(o);if(a){let l=a?.value.asObject()??new st;l.addSuggestion(n),a.value=l}}t.addErrorMessage(i=>`The global ${i.red("omit")} configuration excludes every field of the model ${i.bold(e.outputType.name)}. At least one field must be included in the result`)}function Bu(e,t){let r=ko(e.selectionPath,t);if(r.parentKind!=="unknown"){r.field.markAsError();let n=r.parent;switch(r.parentKind){case"select":Oo(n,e.outputType);break;case"include":Hu(n,e.outputType);break;case"omit":zu(n,e.outputType);break}}t.addErrorMessage(n=>{let i=[`Unknown field ${n.red(`\`${r.fieldName}\``)}`];return r.parentKind!=="unknown"&&i.push(`for ${n.bold(r.parentKind)} statement`),i.push(`on model ${n.bold(`\`${e.outputType.name}\``)}.`),i.push(It(n)),i.join(" ")})}function qu(e,t){let r=ko(e.selectionPath,t);r.parentKind!=="unknown"&&r.field.value.markAsError(),t.addErrorMessage(n=>`Invalid value for selection field \`${n.red(r.fieldName)}\`: ${e.underlyingError}`)}function Vu(e,t){let r=e.argumentPath[0],n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&(n.getField(r)?.markAsError(),Yu(n,e.arguments)),t.addErrorMessage(i=>So(i,r,e.arguments.map(o=>o.name)))}function $u(e,t){let[r,n]=at(e.argumentPath),i=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(i){i.getDeepField(e.argumentPath)?.markAsError();let o=i.getDeepFieldValue(r)?.asObject();o&&Do(o,e.inputType)}t.addErrorMessage(o=>So(o,n,e.inputType.fields.map(s=>s.name)))}function So(e,t,r){let n=[`Unknown argument \`${e.red(t)}\`.`],i=Xu(t,r);return i&&n.push(`Did you mean \`${e.green(i)}\`?`),r.length>0&&n.push(It(e)),n.join(" ")}function ju(e,t){let r;t.addErrorMessage(l=>r?.value instanceof H&&r.value.text==="null"?`Argument \`${l.green(o)}\` must not be ${l.red("null")}.`:`Argument \`${l.green(o)}\` is missing.`);let n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(!n)return;let[i,o]=at(e.argumentPath),s=new St,a=n.getDeepFieldValue(i)?.asObject();if(a){if(r=a.getField(o),r&&a.removeField(o),e.inputTypes.length===1&&e.inputTypes[0].kind==="object"){for(let l of e.inputTypes[0].fields)s.addField(l.name,l.typeNames.join(" | "));a.addSuggestion(new le(o,s).makeRequired())}else{let l=e.inputTypes.map(Io).join(" | ");a.addSuggestion(new le(o,l).makeRequired())}if(e.dependentArgumentPath){n.getDeepField(e.dependentArgumentPath)?.markAsError();let[,l]=at(e.dependentArgumentPath);t.addErrorMessage(d=>`Argument \`${d.green(o)}\` is required because argument \`${d.green(l)}\` was provided.`)}}}function Io(e){return e.kind==="list"?`${Io(e.elementType)}[]`:e.name}function Gu(e,t){let r=e.argument.name,n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&n.getDeepFieldValue(e.argumentPath)?.markAsError(),t.addErrorMessage(i=>{let o=Dr("or",e.argument.typeNames.map(s=>i.green(s)));return`Argument \`${i.bold(r)}\`: Invalid value provided. Expected ${o}, provided ${i.red(e.inferredType)}.`})}function Ju(e,t){let r=e.argument.name,n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&n.getDeepFieldValue(e.argumentPath)?.markAsError(),t.addErrorMessage(i=>{let o=[`Invalid value for argument \`${i.bold(r)}\``];if(e.underlyingError&&o.push(`: ${e.underlyingError}`),o.push("."),e.argument.typeNames.length>0){let s=Dr("or",e.argument.typeNames.map(a=>i.green(a)));o.push(` Expected ${s}.`)}return o.join("")})}function Qu(e,t){let r=e.argument.name,n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(),i;if(n){let s=n.getDeepField(e.argumentPath)?.value;s?.markAsError(),s instanceof H&&(i=s.text)}t.addErrorMessage(o=>{let s=["Unable to fit value"];return i&&s.push(o.red(i)),s.push(`into a 64-bit signed integer for field \`${o.bold(r)}\``),s.join(" ")})}function Ku(e,t){let r=e.argumentPath[e.argumentPath.length-1],n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(n){let i=n.getDeepFieldValue(e.argumentPath)?.asObject();i&&Do(i,e.inputType)}t.addErrorMessage(i=>{let o=[`Argument \`${i.bold(r)}\` of type ${i.bold(e.inputType.name)} needs`];return e.constraints.minFieldCount===1?e.constraints.requiredFields?o.push(`${i.green("at least one of")} ${Dr("or",e.constraints.requiredFields.map(s=>`\`${i.bold(s)}\``))} arguments.`):o.push(`${i.green("at least one")} argument.`):o.push(`${i.green(`at least ${e.constraints.minFieldCount}`)} arguments.`),o.push(It(i)),o.join(" ")})}function Wu(e,t){let r=e.argumentPath[e.argumentPath.length-1],n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(),i=[];if(n){let o=n.getDeepFieldValue(e.argumentPath)?.asObject();o&&(o.markAsError(),i=Object.keys(o.getFields()))}t.addErrorMessage(o=>{let s=[`Argument \`${o.bold(r)}\` of type ${o.bold(e.inputType.name)} needs`];return e.constraints.minFieldCount===1&&e.constraints.maxFieldCount==1?s.push(`${o.green("exactly one")} argument,`):e.constraints.maxFieldCount==1?s.push(`${o.green("at most one")} argument,`):s.push(`${o.green(`at most ${e.constraints.maxFieldCount}`)} arguments,`),s.push(`but you provided ${Dr("and",i.map(a=>o.red(a)))}. Please choose`),e.constraints.maxFieldCount===1?s.push("one."):s.push(`${e.constraints.maxFieldCount}.`),s.join(" ")})}function Oo(e,t){for(let r of t.fields)e.hasField(r.name)||e.addSuggestion(new le(r.name,"true"))}function Hu(e,t){for(let r of t.fields)r.isRelation&&!e.hasField(r.name)&&e.addSuggestion(new le(r.name,"true"))}function zu(e,t){for(let r of t.fields)!e.hasField(r.name)&&!r.isRelation&&e.addSuggestion(new le(r.name,"true"))}function Yu(e,t){for(let r of t)e.hasField(r.name)||e.addSuggestion(new le(r.name,r.typeNames.join(" | ")))}function ko(e,t){let[r,n]=at(e),i=t.arguments.getDeepSubSelectionValue(r)?.asObject();if(!i)return{parentKind:"unknown",fieldName:n};let o=i.getFieldValue("select")?.asObject(),s=i.getFieldValue("include")?.asObject(),a=i.getFieldValue("omit")?.asObject(),l=o?.getField(n);return o&&l?{parentKind:"select",parent:o,field:l,fieldName:n}:(l=s?.getField(n),s&&l?{parentKind:"include",field:l,parent:s,fieldName:n}:(l=a?.getField(n),a&&l?{parentKind:"omit",field:l,parent:a,fieldName:n}:{parentKind:"unknown",fieldName:n}))}function Do(e,t){if(t.kind==="object")for(let r of t.fields)e.hasField(r.name)||e.addSuggestion(new le(r.name,r.typeNames.join(" | ")))}function at(e){let t=[...e],r=t.pop();if(!r)throw new Error("unexpected empty path");return[t,r]}function It({green:e,enabled:t}){return"Available options are "+(t?`listed in ${e("green")}`:"marked with ?")+"."}function Dr(e,t){if(t.length===1)return t[0];let r=[...t],n=r.pop();return`${r.join(", ")} ${e} ${n}`}var Zu=3;function Xu(e,t){let r=1/0,n;for(let i of t){let o=(0,Co.default)(e,i);o>Zu||o`}};function lt(e){return e instanceof Ot}f();u();c();p();m();var Mr=Symbol(),On=new WeakMap,Te=class{constructor(t){t===Mr?On.set(this,`Prisma.${this._getName()}`):On.set(this,`new Prisma.${this._getNamespace()}.${this._getName()}()`)}_getName(){return this.constructor.name}toString(){return On.get(this)}},kt=class extends Te{_getNamespace(){return"NullTypes"}},Dt=class extends kt{#e};Dn(Dt,"DbNull");var Mt=class extends kt{#e};Dn(Mt,"JsonNull");var _t=class extends kt{#e};Dn(_t,"AnyNull");var kn={classes:{DbNull:Dt,JsonNull:Mt,AnyNull:_t},instances:{DbNull:new Dt(Mr),JsonNull:new Mt(Mr),AnyNull:new _t(Mr)}};function Dn(e,t){Object.defineProperty(e,"name",{value:t,configurable:!0})}f();u();c();p();m();var Mo=": ",_r=class{constructor(t,r){this.name=t;this.value=r}hasError=!1;markAsError(){this.hasError=!0}getPrintWidth(){return this.name.length+this.value.getPrintWidth()+Mo.length}write(t){let r=new we(this.name);this.hasError&&r.underline().setColor(t.context.colors.red),t.write(r).write(Mo).write(this.value)}};var Mn=class{arguments;errorMessages=[];constructor(t){this.arguments=t}write(t){t.write(this.arguments)}addErrorMessage(t){this.errorMessages.push(t)}renderAllMessages(t){return this.errorMessages.map(r=>r(t)).join(` +`)}};function ut(e){return new Mn(_o(e))}function _o(e){let t=new st;for(let[r,n]of Object.entries(e)){let i=new _r(r,No(n));t.addField(i)}return t}function No(e){if(typeof e=="string")return new H(JSON.stringify(e));if(typeof e=="number"||typeof e=="boolean")return new H(String(e));if(typeof e=="bigint")return new H(`${e}n`);if(e===null)return new H("null");if(e===void 0)return new H("undefined");if(rt(e))return new H(`new Prisma.Decimal("${e.toFixed()}")`);if(e instanceof Uint8Array)return w.Buffer.isBuffer(e)?new H(`Buffer.alloc(${e.byteLength})`):new H(`new Uint8Array(${e.byteLength})`);if(e instanceof Date){let t=yr(e)?e.toISOString():"Invalid Date";return new H(`new Date("${t}")`)}return e instanceof Te?new H(`Prisma.${e._getName()}`):lt(e)?new H(`prisma.${Se(e.modelName)}.$fields.${e.name}`):Array.isArray(e)?ec(e):typeof e=="object"?_o(e):new H(Object.prototype.toString.call(e))}function ec(e){let t=new ot;for(let r of e)t.addItem(No(r));return t}function Nr(e,t){let r=t==="pretty"?Ro:kr,n=e.renderAllMessages(r),i=new nt(0,{colors:r}).write(e).toString();return{message:n,args:i}}function Fr({args:e,errors:t,errorFormat:r,callsite:n,originalMethod:i,clientVersion:o,globalOmit:s}){let a=ut(e);for(let h of t)Sr(h,a,s);let{message:l,args:d}=Nr(a,r),g=Cr({message:l,callsite:n,originalMethod:i,showColors:r==="pretty",callArguments:d});throw new ee(g,{clientVersion:o})}f();u();c();p();m();f();u();c();p();m();function Ee(e){return e.replace(/^./,t=>t.toLowerCase())}f();u();c();p();m();function Lo(e,t,r){let n=Ee(r);return!t.result||!(t.result.$allModels||t.result[n])?e:tc({...e,...Fo(t.name,e,t.result.$allModels),...Fo(t.name,e,t.result[n])})}function tc(e){let t=new ge,r=(n,i)=>t.getOrCreate(n,()=>i.has(n)?[n]:(i.add(n),e[n]?e[n].needs.flatMap(o=>r(o,i)):[n]));return gr(e,n=>({...n,needs:r(n.name,new Set)}))}function Fo(e,t,r){return r?gr(r,({needs:n,compute:i},o)=>({name:o,needs:n?Object.keys(n).filter(s=>n[s]):[],compute:rc(t,o,i)})):{}}function rc(e,t,r){let n=e?.[t]?.compute;return n?i=>r({...i,[t]:n(i)}):r}function Uo(e,t){if(!t)return e;let r={...e};for(let n of Object.values(t))if(e[n.name])for(let i of n.needs)r[i]=!0;return r}function Bo(e,t){if(!t)return e;let r={...e};for(let n of Object.values(t))if(!e[n.name])for(let i of n.needs)delete r[i];return r}var Lr=class{constructor(t,r){this.extension=t;this.previous=r}computedFieldsCache=new ge;modelExtensionsCache=new ge;queryCallbacksCache=new ge;clientExtensions=At(()=>this.extension.client?{...this.previous?.getAllClientExtensions(),...this.extension.client}:this.previous?.getAllClientExtensions());batchCallbacks=At(()=>{let t=this.previous?.getAllBatchQueryCallbacks()??[],r=this.extension.query?.$__internalBatch;return r?t.concat(r):t});getAllComputedFields(t){return this.computedFieldsCache.getOrCreate(t,()=>Lo(this.previous?.getAllComputedFields(t),this.extension,t))}getAllClientExtensions(){return this.clientExtensions.get()}getAllModelExtensions(t){return this.modelExtensionsCache.getOrCreate(t,()=>{let r=Ee(t);return!this.extension.model||!(this.extension.model[r]||this.extension.model.$allModels)?this.previous?.getAllModelExtensions(t):{...this.previous?.getAllModelExtensions(t),...this.extension.model.$allModels,...this.extension.model[r]}})}getAllQueryCallbacks(t,r){return this.queryCallbacksCache.getOrCreate(`${t}:${r}`,()=>{let n=this.previous?.getAllQueryCallbacks(t,r)??[],i=[],o=this.extension.query;return!o||!(o[t]||o.$allModels||o[r]||o.$allOperations)?n:(o[t]!==void 0&&(o[t][r]!==void 0&&i.push(o[t][r]),o[t].$allOperations!==void 0&&i.push(o[t].$allOperations)),t!=="$none"&&o.$allModels!==void 0&&(o.$allModels[r]!==void 0&&i.push(o.$allModels[r]),o.$allModels.$allOperations!==void 0&&i.push(o.$allModels.$allOperations)),o[r]!==void 0&&i.push(o[r]),o.$allOperations!==void 0&&i.push(o.$allOperations),n.concat(i))})}getAllBatchQueryCallbacks(){return this.batchCallbacks.get()}},ct=class e{constructor(t){this.head=t}static empty(){return new e}static single(t){return new e(new Lr(t))}isEmpty(){return this.head===void 0}append(t){return new e(new Lr(t,this.head))}getAllComputedFields(t){return this.head?.getAllComputedFields(t)}getAllClientExtensions(){return this.head?.getAllClientExtensions()}getAllModelExtensions(t){return this.head?.getAllModelExtensions(t)}getAllQueryCallbacks(t,r){return this.head?.getAllQueryCallbacks(t,r)??[]}getAllBatchQueryCallbacks(){return this.head?.getAllBatchQueryCallbacks()??[]}};f();u();c();p();m();var Ur=class{constructor(t){this.name=t}};function qo(e){return e instanceof Ur}function nc(e){return new Ur(e)}f();u();c();p();m();f();u();c();p();m();var Vo=Symbol(),Nt=class{constructor(t){if(t!==Vo)throw new Error("Skip instance can not be constructed directly")}ifUndefined(t){return t===void 0?_n:t}},_n=new Nt(Vo);function be(e){return e instanceof Nt}var ic={findUnique:"findUnique",findUniqueOrThrow:"findUniqueOrThrow",findFirst:"findFirst",findFirstOrThrow:"findFirstOrThrow",findMany:"findMany",count:"aggregate",create:"createOne",createMany:"createMany",createManyAndReturn:"createManyAndReturn",update:"updateOne",updateMany:"updateMany",updateManyAndReturn:"updateManyAndReturn",upsert:"upsertOne",delete:"deleteOne",deleteMany:"deleteMany",executeRaw:"executeRaw",queryRaw:"queryRaw",aggregate:"aggregate",groupBy:"groupBy",runCommandRaw:"runCommandRaw",findRaw:"findRaw",aggregateRaw:"aggregateRaw"},$o="explicitly `undefined` values are not allowed";function Fn({modelName:e,action:t,args:r,runtimeDataModel:n,extensions:i=ct.empty(),callsite:o,clientMethod:s,errorFormat:a,clientVersion:l,previewFeatures:d,globalOmit:g}){let h=new Nn({runtimeDataModel:n,modelName:e,action:t,rootArgs:r,callsite:o,extensions:i,selectionPath:[],argumentPath:[],originalMethod:s,errorFormat:a,clientVersion:l,previewFeatures:d,globalOmit:g});return{modelName:e,action:ic[t],query:Ft(r,h)}}function Ft({select:e,include:t,...r}={},n){let i=r.omit;return delete r.omit,{arguments:Go(r,n),selection:oc(e,t,i,n)}}function oc(e,t,r,n){return e?(t?n.throwValidationError({kind:"MutuallyExclusiveFields",firstField:"include",secondField:"select",selectionPath:n.getSelectionPath()}):r&&n.throwValidationError({kind:"MutuallyExclusiveFields",firstField:"omit",secondField:"select",selectionPath:n.getSelectionPath()}),uc(e,n)):sc(n,t,r)}function sc(e,t,r){let n={};return e.modelOrType&&!e.isRawAction()&&(n.$composites=!0,n.$scalars=!0),t&&ac(n,t,e),lc(n,r,e),n}function ac(e,t,r){for(let[n,i]of Object.entries(t)){if(be(i))continue;let o=r.nestSelection(n);if(Ln(i,o),i===!1||i===void 0){e[n]=!1;continue}let s=r.findField(n);if(s&&s.kind!=="object"&&r.throwValidationError({kind:"IncludeOnScalar",selectionPath:r.getSelectionPath().concat(n),outputType:r.getOutputTypeDescription()}),s){e[n]=Ft(i===!0?{}:i,o);continue}if(i===!0){e[n]=!0;continue}e[n]=Ft(i,o)}}function lc(e,t,r){let n=r.getComputedFields(),i={...r.getGlobalOmit(),...t},o=Bo(i,n);for(let[s,a]of Object.entries(o)){if(be(a))continue;Ln(a,r.nestSelection(s));let l=r.findField(s);n?.[s]&&!l||(e[s]=!a)}}function uc(e,t){let r={},n=t.getComputedFields(),i=Uo(e,n);for(let[o,s]of Object.entries(i)){if(be(s))continue;let a=t.nestSelection(o);Ln(s,a);let l=t.findField(o);if(!(n?.[o]&&!l)){if(s===!1||s===void 0||be(s)){r[o]=!1;continue}if(s===!0){l?.kind==="object"?r[o]=Ft({},a):r[o]=!0;continue}r[o]=Ft(s,a)}}return r}function jo(e,t){if(e===null)return null;if(typeof e=="string"||typeof e=="number"||typeof e=="boolean")return e;if(typeof e=="bigint")return{$type:"BigInt",value:String(e)};if(Xe(e)){if(yr(e))return{$type:"DateTime",value:e.toISOString()};t.throwValidationError({kind:"InvalidArgumentValue",selectionPath:t.getSelectionPath(),argumentPath:t.getArgumentPath(),argument:{name:t.getArgumentName(),typeNames:["Date"]},underlyingError:"Provided Date object is invalid"})}if(qo(e))return{$type:"Param",value:e.name};if(lt(e))return{$type:"FieldRef",value:{_ref:e.name,_container:e.modelName}};if(Array.isArray(e))return cc(e,t);if(ArrayBuffer.isView(e)){let{buffer:r,byteOffset:n,byteLength:i}=e;return{$type:"Bytes",value:w.Buffer.from(r,n,i).toString("base64")}}if(pc(e))return e.values;if(rt(e))return{$type:"Decimal",value:e.toFixed()};if(e instanceof Te){if(e!==kn.instances[e._getName()])throw new Error("Invalid ObjectEnumValue");return{$type:"Enum",value:e._getName()}}if(mc(e))return e.toJSON();if(typeof e=="object")return Go(e,t);t.throwValidationError({kind:"InvalidArgumentValue",selectionPath:t.getSelectionPath(),argumentPath:t.getArgumentPath(),argument:{name:t.getArgumentName(),typeNames:[]},underlyingError:`We could not serialize ${Object.prototype.toString.call(e)} value. Serialize the object to JSON or implement a ".toJSON()" method on it`})}function Go(e,t){if(e.$type)return{$type:"Raw",value:e};let r={};for(let n in e){let i=e[n],o=t.nestArgument(n);be(i)||(i!==void 0?r[n]=jo(i,o):t.isPreviewFeatureOn("strictUndefinedChecks")&&t.throwValidationError({kind:"InvalidArgumentValue",argumentPath:o.getArgumentPath(),selectionPath:t.getSelectionPath(),argument:{name:t.getArgumentName(),typeNames:[]},underlyingError:$o}))}return r}function cc(e,t){let r=[];for(let n=0;n({name:t.name,typeName:"boolean",isRelation:t.kind==="object"}))}}isRawAction(){return["executeRaw","queryRaw","runCommandRaw","findRaw","aggregateRaw"].includes(this.params.action)}isPreviewFeatureOn(t){return this.params.previewFeatures.includes(t)}getComputedFields(){if(this.params.modelName)return this.params.extensions.getAllComputedFields(this.params.modelName)}findField(t){return this.modelOrType?.fields.find(r=>r.name===t)}nestSelection(t){let r=this.findField(t),n=r?.kind==="object"?r.type:void 0;return new e({...this.params,modelName:n,selectionPath:this.params.selectionPath.concat(t)})}getGlobalOmit(){return this.params.modelName&&this.shouldApplyGlobalOmit()?this.params.globalOmit?.[Se(this.params.modelName)]??{}:{}}shouldApplyGlobalOmit(){switch(this.params.action){case"findFirst":case"findFirstOrThrow":case"findUniqueOrThrow":case"findMany":case"upsert":case"findUnique":case"createManyAndReturn":case"create":case"update":case"updateManyAndReturn":case"delete":return!0;case"executeRaw":case"aggregateRaw":case"runCommandRaw":case"findRaw":case"createMany":case"deleteMany":case"groupBy":case"updateMany":case"count":case"aggregate":case"queryRaw":return!1;default:Ue(this.params.action,"Unknown action")}}nestArgument(t){return new e({...this.params,argumentPath:this.params.argumentPath.concat(t)})}};f();u();c();p();m();function Jo(e){if(!e._hasPreviewFlag("metrics"))throw new ee("`metrics` preview feature must be enabled in order to access metrics API",{clientVersion:e._clientVersion})}var Lt=class{_client;constructor(t){this._client=t}prometheus(t){return Jo(this._client),this._client._engine.metrics({format:"prometheus",...t})}json(t){return Jo(this._client),this._client._engine.metrics({format:"json",...t})}};f();u();c();p();m();function fc(e,t){let r=At(()=>dc(t));Object.defineProperty(e,"dmmf",{get:()=>r.get()})}function dc(e){return{datamodel:{models:Un(e.models),enums:Un(e.enums),types:Un(e.types)}}}function Un(e){return Object.entries(e).map(([t,r])=>({name:t,...r}))}f();u();c();p();m();var Bn=new WeakMap,Br="$$PrismaTypedSql",Ut=class{constructor(t,r){Bn.set(this,{sql:t,values:r}),Object.defineProperty(this,Br,{value:Br})}get sql(){return Bn.get(this).sql}get values(){return Bn.get(this).values}};function gc(e){return(...t)=>new Ut(e,t)}function qr(e){return e!=null&&e[Br]===Br}f();u();c();p();m();var ua=Qe(gn());f();u();c();p();m();Qo();Gi();Hi();f();u();c();p();m();var ue=class e{constructor(t,r){if(t.length-1!==r.length)throw t.length===0?new TypeError("Expected at least 1 string"):new TypeError(`Expected ${t.length} strings to have ${t.length-1} values`);let n=r.reduce((s,a)=>s+(a instanceof e?a.values.length:1),0);this.values=new Array(n),this.strings=new Array(n+1),this.strings[0]=t[0];let i=0,o=0;for(;ie.getPropertyValue(r))},getPropertyDescriptor(r){return e.getPropertyDescriptor?.(r)}}}f();u();c();p();m();f();u();c();p();m();var $r={enumerable:!0,configurable:!0,writable:!0};function jr(e){let t=new Set(e);return{getPrototypeOf:()=>Object.prototype,getOwnPropertyDescriptor:()=>$r,has:(r,n)=>t.has(n),set:(r,n,i)=>t.add(n)&&Reflect.set(r,n,i),ownKeys:()=>[...t]}}var Ho=Symbol.for("nodejs.util.inspect.custom");function me(e,t){let r=wc(t),n=new Set,i=new Proxy(e,{get(o,s){if(n.has(s))return o[s];let a=r.get(s);return a?a.getPropertyValue(s):o[s]},has(o,s){if(n.has(s))return!0;let a=r.get(s);return a?a.has?.(s)??!0:Reflect.has(o,s)},ownKeys(o){let s=zo(Reflect.ownKeys(o),r),a=zo(Array.from(r.keys()),r);return[...new Set([...s,...a,...n])]},set(o,s,a){return r.get(s)?.getPropertyDescriptor?.(s)?.writable===!1?!1:(n.add(s),Reflect.set(o,s,a))},getOwnPropertyDescriptor(o,s){let a=Reflect.getOwnPropertyDescriptor(o,s);if(a&&!a.configurable)return a;let l=r.get(s);return l?l.getPropertyDescriptor?{...$r,...l?.getPropertyDescriptor(s)}:$r:a},defineProperty(o,s,a){return n.add(s),Reflect.defineProperty(o,s,a)},getPrototypeOf:()=>Object.prototype});return i[Ho]=function(){let o={...this};return delete o[Ho],o},i}function wc(e){let t=new Map;for(let r of e){let n=r.getKeys();for(let i of n)t.set(i,r)}return t}function zo(e,t){return e.filter(r=>t.get(r)?.has?.(r)??!0)}f();u();c();p();m();function pt(e){return{getKeys(){return e},has(){return!1},getPropertyValue(){}}}f();u();c();p();m();function Gr(e,t){return{batch:e,transaction:t?.kind==="batch"?{isolationLevel:t.options.isolationLevel}:void 0}}f();u();c();p();m();function Yo(e){if(e===void 0)return"";let t=ut(e);return new nt(0,{colors:kr}).write(t).toString()}f();u();c();p();m();var Ec="P2037";function Jr({error:e,user_facing_error:t},r,n){return t.error_code?new se(bc(t,n),{code:t.error_code,clientVersion:r,meta:t.meta,batchRequestIdx:t.batch_request_idx}):new ae(e,{clientVersion:r,batchRequestIdx:t.batch_request_idx})}function bc(e,t){let r=e.message;return(t==="postgresql"||t==="postgres"||t==="mysql")&&e.error_code===Ec&&(r+=` +Prisma Accelerate has built-in connection pooling to prevent such errors: https://pris.ly/client/error-accelerate`),r}f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var qn=class{getLocation(){return null}};function Ne(e){return typeof $EnabledCallSite=="function"&&e!=="minimal"?new $EnabledCallSite:new qn}f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var Zo={_avg:!0,_count:!0,_sum:!0,_min:!0,_max:!0};function mt(e={}){let t=Pc(e);return Object.entries(t).reduce((n,[i,o])=>(Zo[i]!==void 0?n.select[i]={select:o}:n[i]=o,n),{select:{}})}function Pc(e={}){return typeof e._count=="boolean"?{...e,_count:{_all:e._count}}:e}function Qr(e={}){return t=>(typeof e._count=="boolean"&&(t._count=t._count._all),t)}function Xo(e,t){let r=Qr(e);return t({action:"aggregate",unpacker:r,argsMapper:mt})(e)}f();u();c();p();m();function vc(e={}){let{select:t,...r}=e;return typeof t=="object"?mt({...r,_count:t}):mt({...r,_count:{_all:!0}})}function Tc(e={}){return typeof e.select=="object"?t=>Qr(e)(t)._count:t=>Qr(e)(t)._count._all}function es(e,t){return t({action:"count",unpacker:Tc(e),argsMapper:vc})(e)}f();u();c();p();m();function Ac(e={}){let t=mt(e);if(Array.isArray(t.by))for(let r of t.by)typeof r=="string"&&(t.select[r]=!0);else typeof t.by=="string"&&(t.select[t.by]=!0);return t}function Rc(e={}){return t=>(typeof e?._count=="boolean"&&t.forEach(r=>{r._count=r._count._all}),t)}function ts(e,t){return t({action:"groupBy",unpacker:Rc(e),argsMapper:Ac})(e)}function rs(e,t,r){if(t==="aggregate")return n=>Xo(n,r);if(t==="count")return n=>es(n,r);if(t==="groupBy")return n=>ts(n,r)}f();u();c();p();m();function ns(e,t){let r=t.fields.filter(i=>!i.relationName),n=no(r,"name");return new Proxy({},{get(i,o){if(o in i||typeof o=="symbol")return i[o];let s=n[o];if(s)return new Ot(e,o,s.type,s.isList,s.kind==="enum")},...jr(Object.keys(n))})}f();u();c();p();m();f();u();c();p();m();var is=e=>Array.isArray(e)?e:e.split("."),Vn=(e,t)=>is(t).reduce((r,n)=>r&&r[n],e),os=(e,t,r)=>is(t).reduceRight((n,i,o,s)=>Object.assign({},Vn(e,s.slice(0,o)),{[i]:n}),r);function Cc(e,t){return e===void 0||t===void 0?[]:[...t,"select",e]}function Sc(e,t,r){return t===void 0?e??{}:os(t,r,e||!0)}function $n(e,t,r,n,i,o){let a=e._runtimeDataModel.models[t].fields.reduce((l,d)=>({...l,[d.name]:d}),{});return l=>{let d=Ne(e._errorFormat),g=Cc(n,i),h=Sc(l,o,g),T=r({dataPath:g,callsite:d})(h),I=Ic(e,t);return new Proxy(T,{get(S,C){if(!I.includes(C))return S[C];let F=[a[C].type,r,C],B=[g,h];return $n(e,...F,...B)},...jr([...I,...Object.getOwnPropertyNames(T)])})}}function Ic(e,t){return e._runtimeDataModel.models[t].fields.filter(r=>r.kind==="object").map(r=>r.name)}var Oc=["findUnique","findUniqueOrThrow","findFirst","findFirstOrThrow","create","update","upsert","delete"],kc=["aggregate","count","groupBy"];function jn(e,t){let r=e._extensions.getAllModelExtensions(t)??{},n=[Dc(e,t),_c(e,t),Bt(r),te("name",()=>t),te("$name",()=>t),te("$parent",()=>e._appliedParent)];return me({},n)}function Dc(e,t){let r=Ee(t),n=Object.keys(Ct).concat("count");return{getKeys(){return n},getPropertyValue(i){let o=i,s=a=>l=>{let d=Ne(e._errorFormat);return e._createPrismaPromise(g=>{let h={args:l,dataPath:[],action:o,model:t,clientMethod:`${r}.${i}`,jsModelName:r,transaction:g,callsite:d};return e._request({...h,...a})},{action:o,args:l,model:t})};return Oc.includes(o)?$n(e,t,s):Mc(i)?rs(e,i,s):s({})}}}function Mc(e){return kc.includes(e)}function _c(e,t){return Be(te("fields",()=>{let r=e._runtimeDataModel.models[t];return ns(t,r)}))}f();u();c();p();m();function ss(e){return e.replace(/^./,t=>t.toUpperCase())}var Gn=Symbol();function qt(e){let t=[Nc(e),Fc(e),te(Gn,()=>e),te("$parent",()=>e._appliedParent)],r=e._extensions.getAllClientExtensions();return r&&t.push(Bt(r)),me(e,t)}function Nc(e){let t=Object.getPrototypeOf(e._originalClient),r=[...new Set(Object.getOwnPropertyNames(t))];return{getKeys(){return r},getPropertyValue(n){return e[n]}}}function Fc(e){let t=Object.keys(e._runtimeDataModel.models),r=t.map(Ee),n=[...new Set(t.concat(r))];return Be({getKeys(){return n},getPropertyValue(i){let o=ss(i);if(e._runtimeDataModel.models[o]!==void 0)return jn(e,o);if(e._runtimeDataModel.models[i]!==void 0)return jn(e,i)},getPropertyDescriptor(i){if(!r.includes(i))return{enumerable:!1}}})}function as(e){return e[Gn]?e[Gn]:e}function ls(e){if(typeof e=="function")return e(this);if(e.client?.__AccelerateEngine){let r=e.client.__AccelerateEngine;this._originalClient._engine=new r(this._originalClient._accelerateEngineConfig)}let t=Object.create(this._originalClient,{_extensions:{value:this._extensions.append(e)},_appliedParent:{value:this,configurable:!0},$on:{value:void 0}});return qt(t)}f();u();c();p();m();f();u();c();p();m();function us({result:e,modelName:t,select:r,omit:n,extensions:i}){let o=i.getAllComputedFields(t);if(!o)return e;let s=[],a=[];for(let l of Object.values(o)){if(n){if(n[l.name])continue;let d=l.needs.filter(g=>n[g]);d.length>0&&a.push(pt(d))}else if(r){if(!r[l.name])continue;let d=l.needs.filter(g=>!r[g]);d.length>0&&a.push(pt(d))}Lc(e,l.needs)&&s.push(Uc(l,me(e,s)))}return s.length>0||a.length>0?me(e,[...s,...a]):e}function Lc(e,t){return t.every(r=>bn(e,r))}function Uc(e,t){return Be(te(e.name,()=>e.compute(t)))}f();u();c();p();m();function Kr({visitor:e,result:t,args:r,runtimeDataModel:n,modelName:i}){if(Array.isArray(t)){for(let s=0;sg.name===o);if(!l||l.kind!=="object"||!l.relationName)continue;let d=typeof s=="object"?s:{};t[o]=Kr({visitor:i,result:t[o],args:d,modelName:l.type,runtimeDataModel:n})}}function ps({result:e,modelName:t,args:r,extensions:n,runtimeDataModel:i,globalOmit:o}){return n.isEmpty()||e==null||typeof e!="object"||!i.models[t]?e:Kr({result:e,args:r??{},modelName:t,runtimeDataModel:i,visitor:(a,l,d)=>{let g=Ee(l);return us({result:a,modelName:g,select:d.select,omit:d.select?void 0:{...o?.[g],...d.omit},extensions:n})}})}f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var Bc=["$connect","$disconnect","$on","$transaction","$extends"],ms=Bc;function fs(e){if(e instanceof ue)return qc(e);if(qr(e))return Vc(e);if(Array.isArray(e)){let r=[e[0]];for(let n=1;n{let o=t.customDataProxyFetch;return"transaction"in t&&i!==void 0&&(t.transaction?.kind==="batch"&&t.transaction.lock.then(),t.transaction=i),n===r.length?e._executeRequest(t):r[n]({model:t.model,operation:t.model?t.action:t.clientMethod,args:fs(t.args??{}),__internalParams:t,query:(s,a=t)=>{let l=a.customDataProxyFetch;return a.customDataProxyFetch=Es(o,l),a.args=s,gs(e,a,r,n+1)}})})}function hs(e,t){let{jsModelName:r,action:n,clientMethod:i}=t,o=r?n:i;if(e._extensions.isEmpty())return e._executeRequest(t);let s=e._extensions.getAllQueryCallbacks(r??"$none",o);return gs(e,t,s)}function ys(e){return t=>{let r={requests:t},n=t[0].extensions.getAllBatchQueryCallbacks();return n.length?ws(r,n,0,e):e(r)}}function ws(e,t,r,n){if(r===t.length)return n(e);let i=e.customDataProxyFetch,o=e.requests[0].transaction;return t[r]({args:{queries:e.requests.map(s=>({model:s.modelName,operation:s.action,args:s.args})),transaction:o?{isolationLevel:o.kind==="batch"?o.isolationLevel:void 0}:void 0},__internalParams:e,query(s,a=e){let l=a.customDataProxyFetch;return a.customDataProxyFetch=Es(i,l),ws(a,t,r+1,n)}})}var ds=e=>e;function Es(e=ds,t=ds){return r=>e(t(r))}f();u();c();p();m();var bs=Z("prisma:client"),xs={Vercel:"vercel","Netlify CI":"netlify"};function Ps({postinstall:e,ciName:t,clientVersion:r,generator:n}){if(bs("checkPlatformCaching:postinstall",e),bs("checkPlatformCaching:ciName",t),e===!0&&!(n?.output&&typeof(n.output.fromEnvVar??n.output.value)=="string")&&t&&t in xs){let i=`Prisma has detected that this project was built on ${t}, which caches dependencies. This leads to an outdated Prisma Client because Prisma's auto-generation isn't triggered. To fix this, make sure to run the \`prisma generate\` command during the build process. -Learn how: https://pris.ly/d/${xs[t]}-build`; - throw (console.error(i), new Q(i, r)); - } -} -f(); -u(); -c(); -p(); -m(); -function vs(e, t) { - return e - ? e.datasources - ? e.datasources - : e.datasourceUrl - ? { [t[0]]: { url: e.datasourceUrl } } - : {} - : {}; -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -function Ts(e, t) { - throw new Error(t); -} -function $c(e) { - return e !== null && typeof e == "object" && typeof e.$type == "string"; -} -function jc(e, t) { - let r = {}; - for (let n of Object.keys(e)) r[n] = t(e[n], n); - return r; -} -function $t(e) { - return e === null - ? e - : Array.isArray(e) - ? e.map($t) - : typeof e == "object" - ? $c(e) - ? Gc(e) - : e.constructor !== null && e.constructor.name !== "Object" - ? e - : jc(e, $t) - : e; -} -function Gc({ $type: e, value: t }) { - switch (e) { - case "BigInt": - return BigInt(t); - case "Bytes": { - let { - buffer: r, - byteOffset: n, - byteLength: i, - } = w.Buffer.from(t, "base64"); - return new Uint8Array(r, n, i); - } - case "DateTime": - return new Date(t); - case "Decimal": - return new ve(t); - case "Json": - return JSON.parse(t); - default: - Ts(t, "Unknown tagged value"); - } -} -var As = "6.19.2"; -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var Qc = () => globalThis.process?.release?.name === "node", - Kc = () => !!globalThis.Bun || !!globalThis.process?.versions?.bun, - Wc = () => !!globalThis.Deno, - Hc = () => typeof globalThis.Netlify == "object", - zc = () => typeof globalThis.EdgeRuntime == "object", - Yc = () => globalThis.navigator?.userAgent === "Cloudflare-Workers"; -function Zc() { - return ( - [ - [Hc, "netlify"], - [zc, "edge-light"], - [Yc, "workerd"], - [Wc, "deno"], - [Kc, "bun"], - [Qc, "node"], - ] - .flatMap((r) => (r[0]() ? [r[1]] : [])) - .at(0) ?? "" - ); -} -var Xc = { - node: "Node.js", - workerd: "Cloudflare Workers", - deno: "Deno and Deno Deploy", - netlify: "Netlify Edge Functions", - "edge-light": - "Edge Runtime (Vercel Edge Functions, Vercel Edge Middleware, Next.js (Pages Router) Edge API Routes, Next.js (App Router) Edge Route Handlers or Next.js Middleware)", -}; -function Jn() { - let e = Zc(); - return { - id: e, - prettyName: Xc[e] || e, - isEdge: ["workerd", "deno", "netlify", "edge-light"].includes(e), - }; -} -function ft({ - inlineDatasources: e, - overrideDatasources: t, - env: r, - clientVersion: n, -}) { - let i, - o = Object.keys(e)[0], - s = e[o]?.url, - a = t[o]?.url; - if ( - (o === void 0 - ? (i = void 0) - : a - ? (i = a) - : s?.value - ? (i = s.value) - : s?.fromEnvVar && (i = r[s.fromEnvVar]), - s?.fromEnvVar !== void 0 && i === void 0) - ) - throw Jn().id === "workerd" - ? new Q( - `error: Environment variable not found: ${s.fromEnvVar}. +Learn how: https://pris.ly/d/${xs[t]}-build`;throw console.error(i),new Q(i,r)}}f();u();c();p();m();function vs(e,t){return e?e.datasources?e.datasources:e.datasourceUrl?{[t[0]]:{url:e.datasourceUrl}}:{}:{}}f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();function Ts(e,t){throw new Error(t)}function $c(e){return e!==null&&typeof e=="object"&&typeof e.$type=="string"}function jc(e,t){let r={};for(let n of Object.keys(e))r[n]=t(e[n],n);return r}function $t(e){return e===null?e:Array.isArray(e)?e.map($t):typeof e=="object"?$c(e)?Gc(e):e.constructor!==null&&e.constructor.name!=="Object"?e:jc(e,$t):e}function Gc({$type:e,value:t}){switch(e){case"BigInt":return BigInt(t);case"Bytes":{let{buffer:r,byteOffset:n,byteLength:i}=w.Buffer.from(t,"base64");return new Uint8Array(r,n,i)}case"DateTime":return new Date(t);case"Decimal":return new ve(t);case"Json":return JSON.parse(t);default:Ts(t,"Unknown tagged value")}}var As="6.19.2";f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var Qc=()=>globalThis.process?.release?.name==="node",Kc=()=>!!globalThis.Bun||!!globalThis.process?.versions?.bun,Wc=()=>!!globalThis.Deno,Hc=()=>typeof globalThis.Netlify=="object",zc=()=>typeof globalThis.EdgeRuntime=="object",Yc=()=>globalThis.navigator?.userAgent==="Cloudflare-Workers";function Zc(){return[[Hc,"netlify"],[zc,"edge-light"],[Yc,"workerd"],[Wc,"deno"],[Kc,"bun"],[Qc,"node"]].flatMap(r=>r[0]()?[r[1]]:[]).at(0)??""}var Xc={node:"Node.js",workerd:"Cloudflare Workers",deno:"Deno and Deno Deploy",netlify:"Netlify Edge Functions","edge-light":"Edge Runtime (Vercel Edge Functions, Vercel Edge Middleware, Next.js (Pages Router) Edge API Routes, Next.js (App Router) Edge Route Handlers or Next.js Middleware)"};function Jn(){let e=Zc();return{id:e,prettyName:Xc[e]||e,isEdge:["workerd","deno","netlify","edge-light"].includes(e)}}function ft({inlineDatasources:e,overrideDatasources:t,env:r,clientVersion:n}){let i,o=Object.keys(e)[0],s=e[o]?.url,a=t[o]?.url;if(o===void 0?i=void 0:a?i=a:s?.value?i=s.value:s?.fromEnvVar&&(i=r[s.fromEnvVar]),s?.fromEnvVar!==void 0&&i===void 0)throw Jn().id==="workerd"?new Q(`error: Environment variable not found: ${s.fromEnvVar}. In Cloudflare module Workers, environment variables are available only in the Worker's \`env\` parameter of \`fetch\`. -To solve this, provide the connection string directly: https://pris.ly/d/cloudflare-datasource-url`, - n, - ) - : new Q(`error: Environment variable not found: ${s.fromEnvVar}.`, n); - if (i === void 0) - throw new Q( - "error: Missing URL environment variable, value, or override.", - n, - ); - return i; -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var Wr = class extends Error { - clientVersion; - cause; - constructor(t, r) { - (super(t), (this.clientVersion = r.clientVersion), (this.cause = r.cause)); - } - get [Symbol.toStringTag]() { - return this.name; - } -}; -var ie = class extends Wr { - isRetryable; - constructor(t, r) { - (super(t, r), (this.isRetryable = r.isRetryable ?? !0)); - } -}; -f(); -u(); -c(); -p(); -m(); -function U(e, t) { - return { ...e, isRetryable: t }; -} -var qe = class extends ie { - name = "InvalidDatasourceError"; - code = "P6001"; - constructor(t, r) { - super(t, U(r, !1)); - } -}; -N(qe, "InvalidDatasourceError"); -function Rs(e) { - let t = { clientVersion: e.clientVersion }, - r = Object.keys(e.inlineDatasources)[0], - n = ft({ - inlineDatasources: e.inlineDatasources, - overrideDatasources: e.overrideDatasources, - clientVersion: e.clientVersion, - env: { ...e.env, ...(typeof y < "u" ? y.env : {}) }, - }), - i; - try { - i = new URL(n); - } catch { - throw new qe( - `Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\``, - t, - ); - } - let { protocol: o, searchParams: s } = i; - if (o !== "prisma:" && o !== fr) - throw new qe( - `Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\` or \`prisma+postgres://\``, - t, - ); - let a = s.get("api_key"); - if (a === null || a.length < 1) - throw new qe( - `Error validating datasource \`${r}\`: the URL must contain a valid API key`, - t, - ); - let l = hn(i) ? "http:" : "https:"; - y.env.TEST_CLIENT_ENGINE_REMOTE_EXECUTOR && - i.searchParams.has("use_http") && - (l = "http:"); - let d = new URL(i.href.replace(o, l)); - return { apiKey: a, url: d }; -} -f(); -u(); -c(); -p(); -m(); -var Cs = Qe(zi()), - Hr = class { - apiKey; - tracingHelper; - logLevel; - logQueries; - engineHash; - constructor({ - apiKey: t, - tracingHelper: r, - logLevel: n, - logQueries: i, - engineHash: o, - }) { - ((this.apiKey = t), - (this.tracingHelper = r), - (this.logLevel = n), - (this.logQueries = i), - (this.engineHash = o)); - } - build({ traceparent: t, transactionId: r } = {}) { - let n = { - Accept: "application/json", - Authorization: `Bearer ${this.apiKey}`, - "Content-Type": "application/json", - "Prisma-Engine-Hash": this.engineHash, - "Prisma-Engine-Version": Cs.enginesVersion, - }; - (this.tracingHelper.isEnabled() && - (n.traceparent = t ?? this.tracingHelper.getTraceParent()), - r && (n["X-Transaction-Id"] = r)); - let i = this.#e(); - return (i.length > 0 && (n["X-Capture-Telemetry"] = i.join(", ")), n); - } - #e() { - let t = []; - return ( - this.tracingHelper.isEnabled() && t.push("tracing"), - this.logLevel && t.push(this.logLevel), - this.logQueries && t.push("query"), - t - ); - } - }; -f(); -u(); -c(); -p(); -m(); -function ep(e) { - return e[0] * 1e3 + e[1] / 1e6; -} -function Qn(e) { - return new Date(ep(e)); -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var dt = class extends ie { - name = "ForcedRetryError"; - code = "P5001"; - constructor(t) { - super("This request must be retried", U(t, !0)); - } -}; -N(dt, "ForcedRetryError"); -f(); -u(); -c(); -p(); -m(); -var Ve = class extends ie { - name = "NotImplementedYetError"; - code = "P5004"; - constructor(t, r) { - super(t, U(r, !1)); - } -}; -N(Ve, "NotImplementedYetError"); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var G = class extends ie { - response; - constructor(t, r) { - (super(t, r), (this.response = r.response)); - let n = this.response.headers.get("prisma-request-id"); - if (n) { - let i = `(The request id was: ${n})`; - this.message = this.message + " " + i; - } - } -}; -var $e = class extends G { - name = "SchemaMissingError"; - code = "P5005"; - constructor(t) { - super("Schema needs to be uploaded", U(t, !0)); - } -}; -N($e, "SchemaMissingError"); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var Kn = "This request could not be understood by the server", - jt = class extends G { - name = "BadRequestError"; - code = "P5000"; - constructor(t, r, n) { - (super(r || Kn, U(t, !1)), n && (this.code = n)); - } - }; -N(jt, "BadRequestError"); -f(); -u(); -c(); -p(); -m(); -var Gt = class extends G { - name = "HealthcheckTimeoutError"; - code = "P5013"; - logs; - constructor(t, r) { - (super("Engine not started: healthcheck timeout", U(t, !0)), - (this.logs = r)); - } -}; -N(Gt, "HealthcheckTimeoutError"); -f(); -u(); -c(); -p(); -m(); -var Jt = class extends G { - name = "EngineStartupError"; - code = "P5014"; - logs; - constructor(t, r, n) { - (super(r, U(t, !0)), (this.logs = n)); - } -}; -N(Jt, "EngineStartupError"); -f(); -u(); -c(); -p(); -m(); -var Qt = class extends G { - name = "EngineVersionNotSupportedError"; - code = "P5012"; - constructor(t) { - super("Engine version is not supported", U(t, !1)); - } -}; -N(Qt, "EngineVersionNotSupportedError"); -f(); -u(); -c(); -p(); -m(); -var Wn = "Request timed out", - Kt = class extends G { - name = "GatewayTimeoutError"; - code = "P5009"; - constructor(t, r = Wn) { - super(r, U(t, !1)); - } - }; -N(Kt, "GatewayTimeoutError"); -f(); -u(); -c(); -p(); -m(); -var tp = "Interactive transaction error", - Wt = class extends G { - name = "InteractiveTransactionError"; - code = "P5015"; - constructor(t, r = tp) { - super(r, U(t, !1)); - } - }; -N(Wt, "InteractiveTransactionError"); -f(); -u(); -c(); -p(); -m(); -var rp = "Request parameters are invalid", - Ht = class extends G { - name = "InvalidRequestError"; - code = "P5011"; - constructor(t, r = rp) { - super(r, U(t, !1)); - } - }; -N(Ht, "InvalidRequestError"); -f(); -u(); -c(); -p(); -m(); -var Hn = "Requested resource does not exist", - zt = class extends G { - name = "NotFoundError"; - code = "P5003"; - constructor(t, r = Hn) { - super(r, U(t, !1)); - } - }; -N(zt, "NotFoundError"); -f(); -u(); -c(); -p(); -m(); -var zn = "Unknown server error", - gt = class extends G { - name = "ServerError"; - code = "P5006"; - logs; - constructor(t, r, n) { - (super(r || zn, U(t, !0)), (this.logs = n)); - } - }; -N(gt, "ServerError"); -f(); -u(); -c(); -p(); -m(); -var Yn = "Unauthorized, check your connection string", - Yt = class extends G { - name = "UnauthorizedError"; - code = "P5007"; - constructor(t, r = Yn) { - super(r, U(t, !1)); - } - }; -N(Yt, "UnauthorizedError"); -f(); -u(); -c(); -p(); -m(); -var Zn = "Usage exceeded, retry again later", - Zt = class extends G { - name = "UsageExceededError"; - code = "P5008"; - constructor(t, r = Zn) { - super(r, U(t, !0)); - } - }; -N(Zt, "UsageExceededError"); -async function np(e) { - let t; - try { - t = await e.text(); - } catch { - return { type: "EmptyError" }; - } - try { - let r = JSON.parse(t); - if (typeof r == "string") - switch (r) { - case "InternalDataProxyError": - return { type: "DataProxyError", body: r }; - default: - return { type: "UnknownTextError", body: r }; - } - if (typeof r == "object" && r !== null) { - if ("is_panic" in r && "message" in r && "error_code" in r) - return { type: "QueryEngineError", body: r }; - if ( - "EngineNotStarted" in r || - "InteractiveTransactionMisrouted" in r || - "InvalidRequestError" in r - ) { - let n = Object.values(r)[0].reason; - return typeof n == "string" && - !["SchemaMissing", "EngineVersionNotSupported"].includes(n) - ? { type: "UnknownJsonError", body: r } - : { type: "DataProxyError", body: r }; - } - } - return { type: "UnknownJsonError", body: r }; - } catch { - return t === "" - ? { type: "EmptyError" } - : { type: "UnknownTextError", body: t }; - } -} -async function Xt(e, t) { - if (e.ok) return; - let r = { clientVersion: t, response: e }, - n = await np(e); - if (n.type === "QueryEngineError") - throw new se(n.body.message, { code: n.body.error_code, clientVersion: t }); - if (n.type === "DataProxyError") { - if (n.body === "InternalDataProxyError") - throw new gt(r, "Internal Data Proxy error"); - if ("EngineNotStarted" in n.body) { - if (n.body.EngineNotStarted.reason === "SchemaMissing") return new $e(r); - if (n.body.EngineNotStarted.reason === "EngineVersionNotSupported") - throw new Qt(r); - if ("EngineStartupError" in n.body.EngineNotStarted.reason) { - let { msg: i, logs: o } = - n.body.EngineNotStarted.reason.EngineStartupError; - throw new Jt(r, i, o); - } - if ("KnownEngineStartupError" in n.body.EngineNotStarted.reason) { - let { msg: i, error_code: o } = - n.body.EngineNotStarted.reason.KnownEngineStartupError; - throw new Q(i, t, o); - } - if ("HealthcheckTimeout" in n.body.EngineNotStarted.reason) { - let { logs: i } = n.body.EngineNotStarted.reason.HealthcheckTimeout; - throw new Gt(r, i); - } - } - if ("InteractiveTransactionMisrouted" in n.body) { - let i = { - IDParseError: "Could not parse interactive transaction ID", - NoQueryEngineFoundError: - "Could not find Query Engine for the specified host and transaction ID", - TransactionStartError: "Could not start interactive transaction", - }; - throw new Wt(r, i[n.body.InteractiveTransactionMisrouted.reason]); - } - if ("InvalidRequestError" in n.body) - throw new Ht(r, n.body.InvalidRequestError.reason); - } - if (e.status === 401 || e.status === 403) throw new Yt(r, ht(Yn, n)); - if (e.status === 404) return new zt(r, ht(Hn, n)); - if (e.status === 429) throw new Zt(r, ht(Zn, n)); - if (e.status === 504) throw new Kt(r, ht(Wn, n)); - if (e.status >= 500) throw new gt(r, ht(zn, n)); - if (e.status >= 400) throw new jt(r, ht(Kn, n)); -} -function ht(e, t) { - return t.type === "EmptyError" ? e : `${e}: ${JSON.stringify(t)}`; -} -f(); -u(); -c(); -p(); -m(); -function Ss(e) { - let t = Math.pow(2, e) * 50, - r = Math.ceil(Math.random() * t) - Math.ceil(t / 2), - n = t + r; - return new Promise((i) => setTimeout(() => i(n), n)); -} -f(); -u(); -c(); -p(); -m(); -var Ae = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; -function Is(e) { - let t = new TextEncoder().encode(e), - r = "", - n = t.byteLength, - i = n % 3, - o = n - i, - s, - a, - l, - d, - g; - for (let h = 0; h < o; h = h + 3) - ((g = (t[h] << 16) | (t[h + 1] << 8) | t[h + 2]), - (s = (g & 16515072) >> 18), - (a = (g & 258048) >> 12), - (l = (g & 4032) >> 6), - (d = g & 63), - (r += Ae[s] + Ae[a] + Ae[l] + Ae[d])); - return ( - i == 1 - ? ((g = t[o]), - (s = (g & 252) >> 2), - (a = (g & 3) << 4), - (r += Ae[s] + Ae[a] + "==")) - : i == 2 && - ((g = (t[o] << 8) | t[o + 1]), - (s = (g & 64512) >> 10), - (a = (g & 1008) >> 4), - (l = (g & 15) << 2), - (r += Ae[s] + Ae[a] + Ae[l] + "=")), - r - ); -} -f(); -u(); -c(); -p(); -m(); -function Os(e) { - if ( - !!e.generator?.previewFeatures.some((r) => - r.toLowerCase().includes("metrics"), - ) - ) - throw new Q( - "The `metrics` preview feature is not yet available with Accelerate.\nPlease remove `metrics` from the `previewFeatures` in your schema.\n\nMore information about Accelerate: https://pris.ly/d/accelerate", - e.clientVersion, - ); -} -f(); -u(); -c(); -p(); -m(); -var ks = { - "@prisma/debug": "workspace:*", - "@prisma/engines-version": "7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7", - "@prisma/fetch-engine": "workspace:*", - "@prisma/get-platform": "workspace:*", -}; -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var er = class extends ie { - name = "RequestError"; - code = "P5010"; - constructor(t, r) { - super( - `Cannot fetch data from service: -${t}`, - U(r, !0), - ); - } -}; -N(er, "RequestError"); -async function je(e, t, r = (n) => n) { - let { clientVersion: n, ...i } = t, - o = r(fetch); - try { - return await o(e, i); - } catch (s) { - let a = s.message ?? "Unknown error"; - throw new er(a, { clientVersion: n, cause: s }); - } -} -var op = /^[1-9][0-9]*\.[0-9]+\.[0-9]+$/, - Ds = Z("prisma:client:dataproxyEngine"); -async function sp(e, t) { - let r = ks["@prisma/engines-version"], - n = t.clientVersion ?? "unknown"; - if ( - y.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION || - globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION - ) - return ( - y.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION || - globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION - ); - if (e.includes("accelerate") && n !== "0.0.0" && n !== "in-memory") return n; - let [i, o] = n?.split("-") ?? []; - if (o === void 0 && op.test(i)) return i; - if (o !== void 0 || n === "0.0.0" || n === "in-memory") { - let [s] = r.split("-") ?? [], - [a, l, d] = s.split("."), - g = ap(`<=${a}.${l}.${d}`), - h = await je(g, { clientVersion: n }); - if (!h.ok) - throw new Error( - `Failed to fetch stable Prisma version, unpkg.com status ${h.status} ${h.statusText}, response body: ${(await h.text()) || ""}`, - ); - let T = await h.text(); - Ds("length of body fetched from unpkg.com", T.length); - let I; - try { - I = JSON.parse(T); - } catch (S) { - throw ( - console.error("JSON.parse error: body fetched from unpkg.com: ", T), - S - ); - } - return I.version; - } - throw new Ve( - "Only `major.minor.patch` versions are supported by Accelerate.", - { clientVersion: n }, - ); -} -async function Ms(e, t) { - let r = await sp(e, t); - return (Ds("version", r), r); -} -function ap(e) { - return encodeURI(`https://unpkg.com/prisma@${e}/package.json`); -} -var _s = 3, - tr = Z("prisma:client:dataproxyEngine"), - yt = class { - name = "DataProxyEngine"; - inlineSchema; - inlineSchemaHash; - inlineDatasources; - config; - logEmitter; - env; - clientVersion; - engineHash; - tracingHelper; - remoteClientVersion; - host; - headerBuilder; - startPromise; - protocol; - constructor(t) { - (Os(t), - (this.config = t), - (this.env = t.env), - (this.inlineSchema = Is(t.inlineSchema)), - (this.inlineDatasources = t.inlineDatasources), - (this.inlineSchemaHash = t.inlineSchemaHash), - (this.clientVersion = t.clientVersion), - (this.engineHash = t.engineVersion), - (this.logEmitter = t.logEmitter), - (this.tracingHelper = t.tracingHelper)); - } - apiKey() { - return this.headerBuilder.apiKey; - } - version() { - return this.engineHash; - } - async start() { - (this.startPromise !== void 0 && (await this.startPromise), - (this.startPromise = (async () => { - let { apiKey: t, url: r } = this.getURLAndAPIKey(); - ((this.host = r.host), - (this.protocol = r.protocol), - (this.headerBuilder = new Hr({ - apiKey: t, - tracingHelper: this.tracingHelper, - logLevel: this.config.logLevel ?? "error", - logQueries: this.config.logQueries, - engineHash: this.engineHash, - })), - (this.remoteClientVersion = await Ms(this.host, this.config)), - tr("host", this.host), - tr("protocol", this.protocol)); - })()), - await this.startPromise); - } - async stop() {} - propagateResponseExtensions(t) { - (t?.logs?.length && - t.logs.forEach((r) => { - switch (r.level) { - case "debug": - case "trace": - tr(r); - break; - case "error": - case "warn": - case "info": { - this.logEmitter.emit(r.level, { - timestamp: Qn(r.timestamp), - message: r.attributes.message ?? "", - target: r.target ?? "BinaryEngine", - }); - break; - } - case "query": { - this.logEmitter.emit("query", { - query: r.attributes.query ?? "", - timestamp: Qn(r.timestamp), - duration: r.attributes.duration_ms ?? 0, - params: r.attributes.params ?? "", - target: r.target ?? "BinaryEngine", - }); - break; - } - default: - r.level; - } - }), - t?.traces?.length && this.tracingHelper.dispatchEngineSpans(t.traces)); - } - onBeforeExit() { - throw new Error( - '"beforeExit" hook is not applicable to the remote query engine', - ); - } - async url(t) { - return ( - await this.start(), - `${this.protocol}//${this.host}/${this.remoteClientVersion}/${this.inlineSchemaHash}/${t}` - ); - } - async uploadSchema() { - let t = { name: "schemaUpload", internal: !0 }; - return this.tracingHelper.runInChildSpan(t, async () => { - let r = await je(await this.url("schema"), { - method: "PUT", - headers: this.headerBuilder.build(), - body: this.inlineSchema, - clientVersion: this.clientVersion, - }); - r.ok || tr("schema response status", r.status); - let n = await Xt(r, this.clientVersion); - if (n) - throw ( - this.logEmitter.emit("warn", { - message: `Error while uploading schema: ${n.message}`, - timestamp: new Date(), - target: "", - }), - n - ); - this.logEmitter.emit("info", { - message: `Schema (re)uploaded (hash: ${this.inlineSchemaHash})`, - timestamp: new Date(), - target: "", - }); - }); - } - request( - t, - { traceparent: r, interactiveTransaction: n, customDataProxyFetch: i }, - ) { - return this.requestInternal({ - body: t, - traceparent: r, - interactiveTransaction: n, - customDataProxyFetch: i, - }); - } - async requestBatch( - t, - { traceparent: r, transaction: n, customDataProxyFetch: i }, - ) { - let o = n?.kind === "itx" ? n.options : void 0, - s = Gr(t, n); - return ( - await this.requestInternal({ - body: s, - customDataProxyFetch: i, - interactiveTransaction: o, - traceparent: r, - }) - ).map( - (l) => ( - l.extensions && this.propagateResponseExtensions(l.extensions), - "errors" in l ? this.convertProtocolErrorsToClientError(l.errors) : l - ), - ); - } - requestInternal({ - body: t, - traceparent: r, - customDataProxyFetch: n, - interactiveTransaction: i, - }) { - return this.withRetry({ - actionGerund: "querying", - callback: async ({ logHttpCall: o }) => { - let s = i - ? `${i.payload.endpoint}/graphql` - : await this.url("graphql"); - o(s); - let a = await je( - s, - { - method: "POST", - headers: this.headerBuilder.build({ - traceparent: r, - transactionId: i?.id, - }), - body: JSON.stringify(t), - clientVersion: this.clientVersion, - }, - n, - ); - (a.ok || tr("graphql response status", a.status), - await this.handleError(await Xt(a, this.clientVersion))); - let l = await a.json(); - if ( - (l.extensions && this.propagateResponseExtensions(l.extensions), - "errors" in l) - ) - throw this.convertProtocolErrorsToClientError(l.errors); - return "batchResult" in l ? l.batchResult : l; - }, - }); - } - async transaction(t, r, n) { - let i = { - start: "starting", - commit: "committing", - rollback: "rolling back", - }; - return this.withRetry({ - actionGerund: `${i[t]} transaction`, - callback: async ({ logHttpCall: o }) => { - if (t === "start") { - let s = JSON.stringify({ - max_wait: n.maxWait, - timeout: n.timeout, - isolation_level: n.isolationLevel, - }), - a = await this.url("transaction/start"); - o(a); - let l = await je(a, { - method: "POST", - headers: this.headerBuilder.build({ traceparent: r.traceparent }), - body: s, - clientVersion: this.clientVersion, - }); - await this.handleError(await Xt(l, this.clientVersion)); - let d = await l.json(), - { extensions: g } = d; - g && this.propagateResponseExtensions(g); - let h = d.id, - T = d["data-proxy"].endpoint; - return { id: h, payload: { endpoint: T } }; - } else { - let s = `${n.payload.endpoint}/${t}`; - o(s); - let a = await je(s, { - method: "POST", - headers: this.headerBuilder.build({ traceparent: r.traceparent }), - clientVersion: this.clientVersion, - }); - await this.handleError(await Xt(a, this.clientVersion)); - let l = await a.json(), - { extensions: d } = l; - d && this.propagateResponseExtensions(d); - return; - } - }, - }); - } - getURLAndAPIKey() { - return Rs({ - clientVersion: this.clientVersion, - env: this.env, - inlineDatasources: this.inlineDatasources, - overrideDatasources: this.config.overrideDatasources, - }); - } - metrics() { - throw new Ve("Metrics are not yet supported for Accelerate", { - clientVersion: this.clientVersion, - }); - } - async withRetry(t) { - for (let r = 0; ; r++) { - let n = (i) => { - this.logEmitter.emit("info", { - message: `Calling ${i} (n=${r})`, - timestamp: new Date(), - target: "", - }); - }; - try { - return await t.callback({ logHttpCall: n }); - } catch (i) { - if (!(i instanceof ie) || !i.isRetryable) throw i; - if (r >= _s) throw i instanceof dt ? i.cause : i; - this.logEmitter.emit("warn", { - message: `Attempt ${r + 1}/${_s} failed for ${t.actionGerund}: ${i.message ?? "(unknown)"}`, - timestamp: new Date(), - target: "", - }); - let o = await Ss(r); - this.logEmitter.emit("warn", { - message: `Retrying after ${o}ms`, - timestamp: new Date(), - target: "", - }); - } - } - } - async handleError(t) { - if (t instanceof $e) - throw ( - await this.uploadSchema(), - new dt({ clientVersion: this.clientVersion, cause: t }) - ); - if (t) throw t; - } - convertProtocolErrorsToClientError(t) { - return t.length === 1 - ? Jr(t[0], this.config.clientVersion, this.config.activeProvider) - : new ae(JSON.stringify(t), { - clientVersion: this.config.clientVersion, - }); - } - applyPendingMigrations() { - throw new Error("Method not implemented."); - } - }; -f(); -u(); -c(); -p(); -m(); -function Ns({ url: e, adapter: t, copyEngine: r, targetBuildType: n }) { - let i = [], - o = [], - s = (C) => { - i.push({ _tag: "warning", value: C }); - }, - a = (C) => { - let M = C.join(` -`); - o.push({ _tag: "error", value: M }); - }, - l = !!e?.startsWith("prisma://"), - d = dr(e), - g = !!t, - h = l || d; - !g && - r && - h && - n !== "client" && - n !== "wasm-compiler-edge" && - s([ - "recommend--no-engine", - "In production, we recommend using `prisma generate --no-engine` (See: `prisma generate --help`)", - ]); - let T = h || !r; - g && - (T || n === "edge") && - (n === "edge" - ? a([ - "Prisma Client was configured to use the `adapter` option but it was imported via its `/edge` endpoint.", - "Please either remove the `/edge` endpoint or remove the `adapter` from the Prisma Client constructor.", - ]) - : h - ? a([ - "You've provided both a driver adapter and an Accelerate database URL. Driver adapters currently cannot connect to Accelerate.", - "Please provide either a driver adapter with a direct database URL or an Accelerate URL and no driver adapter.", - ]) - : r || - a([ - "Prisma Client was configured to use the `adapter` option but `prisma generate` was run with `--no-engine`.", - "Please run `prisma generate` without `--no-engine` to be able to use Prisma Client with the adapter.", - ])); - let I = { accelerate: T, ppg: d, driverAdapters: g }; - function S(C) { - return C.length > 0; - } - return S(o) - ? { ok: !1, diagnostics: { warnings: i, errors: o }, isUsing: I } - : { ok: !0, diagnostics: { warnings: i }, isUsing: I }; -} -function Fs({ copyEngine: e = !0 }, t) { - let r; - try { - r = ft({ - inlineDatasources: t.inlineDatasources, - overrideDatasources: t.overrideDatasources, - env: { ...t.env, ...y.env }, - clientVersion: t.clientVersion, - }); - } catch {} - let { - ok: n, - isUsing: i, - diagnostics: o, - } = Ns({ - url: r, - adapter: t.adapter, - copyEngine: e, - targetBuildType: "edge", - }); - for (let h of o.warnings) hr(...h.value); - if (!n) { - let h = o.errors[0]; - throw new ee(h.value, { clientVersion: t.clientVersion }); - } - let s = Ze(t.generator), - a = s === "library", - l = s === "binary", - d = s === "client", - g = (i.accelerate || i.ppg) && !i.driverAdapters; - return i.accelerate ? new yt(t) : (i.driverAdapters, new yt(t)); -} -f(); -u(); -c(); -p(); -m(); -function Ls({ generator: e }) { - return e?.previewFeatures ?? []; -} -f(); -u(); -c(); -p(); -m(); -var Us = (e) => ({ command: e }); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var Bs = (e) => e.strings.reduce((t, r, n) => `${t}@P${n}${r}`); -f(); -u(); -c(); -p(); -m(); -function wt(e) { - try { - return qs(e, "fast"); - } catch { - return qs(e, "slow"); - } -} -function qs(e, t) { - return JSON.stringify(e.map((r) => $s(r, t))); -} -function $s(e, t) { - if (Array.isArray(e)) return e.map((r) => $s(r, t)); - if (typeof e == "bigint") - return { prisma__type: "bigint", prisma__value: e.toString() }; - if (Xe(e)) return { prisma__type: "date", prisma__value: e.toJSON() }; - if (Me.isDecimal(e)) - return { prisma__type: "decimal", prisma__value: e.toJSON() }; - if (w.Buffer.isBuffer(e)) - return { prisma__type: "bytes", prisma__value: e.toString("base64") }; - if (lp(e)) - return { - prisma__type: "bytes", - prisma__value: w.Buffer.from(e).toString("base64"), - }; - if (ArrayBuffer.isView(e)) { - let { buffer: r, byteOffset: n, byteLength: i } = e; - return { - prisma__type: "bytes", - prisma__value: w.Buffer.from(r, n, i).toString("base64"), - }; - } - return typeof e == "object" && t === "slow" ? js(e) : e; -} -function lp(e) { - return e instanceof ArrayBuffer || e instanceof SharedArrayBuffer - ? !0 - : typeof e == "object" && e !== null - ? e[Symbol.toStringTag] === "ArrayBuffer" || - e[Symbol.toStringTag] === "SharedArrayBuffer" - : !1; -} -function js(e) { - if (typeof e != "object" || e === null) return e; - if (typeof e.toJSON == "function") return e.toJSON(); - if (Array.isArray(e)) return e.map(Vs); - let t = {}; - for (let r of Object.keys(e)) t[r] = Vs(e[r]); - return t; -} -function Vs(e) { - return typeof e == "bigint" ? e.toString() : js(e); -} -var up = /^(\s*alter\s)/i, - Gs = Z("prisma:client"); -function Xn(e, t, r, n) { - if ( - !(e !== "postgresql" && e !== "cockroachdb") && - r.length > 0 && - up.exec(t) - ) - throw new Error(`Running ALTER using ${n} is not supported +To solve this, provide the connection string directly: https://pris.ly/d/cloudflare-datasource-url`,n):new Q(`error: Environment variable not found: ${s.fromEnvVar}.`,n);if(i===void 0)throw new Q("error: Missing URL environment variable, value, or override.",n);return i}f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var Wr=class extends Error{clientVersion;cause;constructor(t,r){super(t),this.clientVersion=r.clientVersion,this.cause=r.cause}get[Symbol.toStringTag](){return this.name}};var ie=class extends Wr{isRetryable;constructor(t,r){super(t,r),this.isRetryable=r.isRetryable??!0}};f();u();c();p();m();function U(e,t){return{...e,isRetryable:t}}var qe=class extends ie{name="InvalidDatasourceError";code="P6001";constructor(t,r){super(t,U(r,!1))}};N(qe,"InvalidDatasourceError");function Rs(e){let t={clientVersion:e.clientVersion},r=Object.keys(e.inlineDatasources)[0],n=ft({inlineDatasources:e.inlineDatasources,overrideDatasources:e.overrideDatasources,clientVersion:e.clientVersion,env:{...e.env,...typeof y<"u"?y.env:{}}}),i;try{i=new URL(n)}catch{throw new qe(`Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\``,t)}let{protocol:o,searchParams:s}=i;if(o!=="prisma:"&&o!==fr)throw new qe(`Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\` or \`prisma+postgres://\``,t);let a=s.get("api_key");if(a===null||a.length<1)throw new qe(`Error validating datasource \`${r}\`: the URL must contain a valid API key`,t);let l=hn(i)?"http:":"https:";y.env.TEST_CLIENT_ENGINE_REMOTE_EXECUTOR&&i.searchParams.has("use_http")&&(l="http:");let d=new URL(i.href.replace(o,l));return{apiKey:a,url:d}}f();u();c();p();m();var Cs=Qe(zi()),Hr=class{apiKey;tracingHelper;logLevel;logQueries;engineHash;constructor({apiKey:t,tracingHelper:r,logLevel:n,logQueries:i,engineHash:o}){this.apiKey=t,this.tracingHelper=r,this.logLevel=n,this.logQueries=i,this.engineHash=o}build({traceparent:t,transactionId:r}={}){let n={Accept:"application/json",Authorization:`Bearer ${this.apiKey}`,"Content-Type":"application/json","Prisma-Engine-Hash":this.engineHash,"Prisma-Engine-Version":Cs.enginesVersion};this.tracingHelper.isEnabled()&&(n.traceparent=t??this.tracingHelper.getTraceParent()),r&&(n["X-Transaction-Id"]=r);let i=this.#e();return i.length>0&&(n["X-Capture-Telemetry"]=i.join(", ")),n}#e(){let t=[];return this.tracingHelper.isEnabled()&&t.push("tracing"),this.logLevel&&t.push(this.logLevel),this.logQueries&&t.push("query"),t}};f();u();c();p();m();function ep(e){return e[0]*1e3+e[1]/1e6}function Qn(e){return new Date(ep(e))}f();u();c();p();m();f();u();c();p();m();var dt=class extends ie{name="ForcedRetryError";code="P5001";constructor(t){super("This request must be retried",U(t,!0))}};N(dt,"ForcedRetryError");f();u();c();p();m();var Ve=class extends ie{name="NotImplementedYetError";code="P5004";constructor(t,r){super(t,U(r,!1))}};N(Ve,"NotImplementedYetError");f();u();c();p();m();f();u();c();p();m();var G=class extends ie{response;constructor(t,r){super(t,r),this.response=r.response;let n=this.response.headers.get("prisma-request-id");if(n){let i=`(The request id was: ${n})`;this.message=this.message+" "+i}}};var $e=class extends G{name="SchemaMissingError";code="P5005";constructor(t){super("Schema needs to be uploaded",U(t,!0))}};N($e,"SchemaMissingError");f();u();c();p();m();f();u();c();p();m();var Kn="This request could not be understood by the server",jt=class extends G{name="BadRequestError";code="P5000";constructor(t,r,n){super(r||Kn,U(t,!1)),n&&(this.code=n)}};N(jt,"BadRequestError");f();u();c();p();m();var Gt=class extends G{name="HealthcheckTimeoutError";code="P5013";logs;constructor(t,r){super("Engine not started: healthcheck timeout",U(t,!0)),this.logs=r}};N(Gt,"HealthcheckTimeoutError");f();u();c();p();m();var Jt=class extends G{name="EngineStartupError";code="P5014";logs;constructor(t,r,n){super(r,U(t,!0)),this.logs=n}};N(Jt,"EngineStartupError");f();u();c();p();m();var Qt=class extends G{name="EngineVersionNotSupportedError";code="P5012";constructor(t){super("Engine version is not supported",U(t,!1))}};N(Qt,"EngineVersionNotSupportedError");f();u();c();p();m();var Wn="Request timed out",Kt=class extends G{name="GatewayTimeoutError";code="P5009";constructor(t,r=Wn){super(r,U(t,!1))}};N(Kt,"GatewayTimeoutError");f();u();c();p();m();var tp="Interactive transaction error",Wt=class extends G{name="InteractiveTransactionError";code="P5015";constructor(t,r=tp){super(r,U(t,!1))}};N(Wt,"InteractiveTransactionError");f();u();c();p();m();var rp="Request parameters are invalid",Ht=class extends G{name="InvalidRequestError";code="P5011";constructor(t,r=rp){super(r,U(t,!1))}};N(Ht,"InvalidRequestError");f();u();c();p();m();var Hn="Requested resource does not exist",zt=class extends G{name="NotFoundError";code="P5003";constructor(t,r=Hn){super(r,U(t,!1))}};N(zt,"NotFoundError");f();u();c();p();m();var zn="Unknown server error",gt=class extends G{name="ServerError";code="P5006";logs;constructor(t,r,n){super(r||zn,U(t,!0)),this.logs=n}};N(gt,"ServerError");f();u();c();p();m();var Yn="Unauthorized, check your connection string",Yt=class extends G{name="UnauthorizedError";code="P5007";constructor(t,r=Yn){super(r,U(t,!1))}};N(Yt,"UnauthorizedError");f();u();c();p();m();var Zn="Usage exceeded, retry again later",Zt=class extends G{name="UsageExceededError";code="P5008";constructor(t,r=Zn){super(r,U(t,!0))}};N(Zt,"UsageExceededError");async function np(e){let t;try{t=await e.text()}catch{return{type:"EmptyError"}}try{let r=JSON.parse(t);if(typeof r=="string")switch(r){case"InternalDataProxyError":return{type:"DataProxyError",body:r};default:return{type:"UnknownTextError",body:r}}if(typeof r=="object"&&r!==null){if("is_panic"in r&&"message"in r&&"error_code"in r)return{type:"QueryEngineError",body:r};if("EngineNotStarted"in r||"InteractiveTransactionMisrouted"in r||"InvalidRequestError"in r){let n=Object.values(r)[0].reason;return typeof n=="string"&&!["SchemaMissing","EngineVersionNotSupported"].includes(n)?{type:"UnknownJsonError",body:r}:{type:"DataProxyError",body:r}}}return{type:"UnknownJsonError",body:r}}catch{return t===""?{type:"EmptyError"}:{type:"UnknownTextError",body:t}}}async function Xt(e,t){if(e.ok)return;let r={clientVersion:t,response:e},n=await np(e);if(n.type==="QueryEngineError")throw new se(n.body.message,{code:n.body.error_code,clientVersion:t});if(n.type==="DataProxyError"){if(n.body==="InternalDataProxyError")throw new gt(r,"Internal Data Proxy error");if("EngineNotStarted"in n.body){if(n.body.EngineNotStarted.reason==="SchemaMissing")return new $e(r);if(n.body.EngineNotStarted.reason==="EngineVersionNotSupported")throw new Qt(r);if("EngineStartupError"in n.body.EngineNotStarted.reason){let{msg:i,logs:o}=n.body.EngineNotStarted.reason.EngineStartupError;throw new Jt(r,i,o)}if("KnownEngineStartupError"in n.body.EngineNotStarted.reason){let{msg:i,error_code:o}=n.body.EngineNotStarted.reason.KnownEngineStartupError;throw new Q(i,t,o)}if("HealthcheckTimeout"in n.body.EngineNotStarted.reason){let{logs:i}=n.body.EngineNotStarted.reason.HealthcheckTimeout;throw new Gt(r,i)}}if("InteractiveTransactionMisrouted"in n.body){let i={IDParseError:"Could not parse interactive transaction ID",NoQueryEngineFoundError:"Could not find Query Engine for the specified host and transaction ID",TransactionStartError:"Could not start interactive transaction"};throw new Wt(r,i[n.body.InteractiveTransactionMisrouted.reason])}if("InvalidRequestError"in n.body)throw new Ht(r,n.body.InvalidRequestError.reason)}if(e.status===401||e.status===403)throw new Yt(r,ht(Yn,n));if(e.status===404)return new zt(r,ht(Hn,n));if(e.status===429)throw new Zt(r,ht(Zn,n));if(e.status===504)throw new Kt(r,ht(Wn,n));if(e.status>=500)throw new gt(r,ht(zn,n));if(e.status>=400)throw new jt(r,ht(Kn,n))}function ht(e,t){return t.type==="EmptyError"?e:`${e}: ${JSON.stringify(t)}`}f();u();c();p();m();function Ss(e){let t=Math.pow(2,e)*50,r=Math.ceil(Math.random()*t)-Math.ceil(t/2),n=t+r;return new Promise(i=>setTimeout(()=>i(n),n))}f();u();c();p();m();var Ae="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function Is(e){let t=new TextEncoder().encode(e),r="",n=t.byteLength,i=n%3,o=n-i,s,a,l,d,g;for(let h=0;h>18,a=(g&258048)>>12,l=(g&4032)>>6,d=g&63,r+=Ae[s]+Ae[a]+Ae[l]+Ae[d];return i==1?(g=t[o],s=(g&252)>>2,a=(g&3)<<4,r+=Ae[s]+Ae[a]+"=="):i==2&&(g=t[o]<<8|t[o+1],s=(g&64512)>>10,a=(g&1008)>>4,l=(g&15)<<2,r+=Ae[s]+Ae[a]+Ae[l]+"="),r}f();u();c();p();m();function Os(e){if(!!e.generator?.previewFeatures.some(r=>r.toLowerCase().includes("metrics")))throw new Q("The `metrics` preview feature is not yet available with Accelerate.\nPlease remove `metrics` from the `previewFeatures` in your schema.\n\nMore information about Accelerate: https://pris.ly/d/accelerate",e.clientVersion)}f();u();c();p();m();var ks={"@prisma/debug":"workspace:*","@prisma/engines-version":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/fetch-engine":"workspace:*","@prisma/get-platform":"workspace:*"};f();u();c();p();m();f();u();c();p();m();var er=class extends ie{name="RequestError";code="P5010";constructor(t,r){super(`Cannot fetch data from service: +${t}`,U(r,!0))}};N(er,"RequestError");async function je(e,t,r=n=>n){let{clientVersion:n,...i}=t,o=r(fetch);try{return await o(e,i)}catch(s){let a=s.message??"Unknown error";throw new er(a,{clientVersion:n,cause:s})}}var op=/^[1-9][0-9]*\.[0-9]+\.[0-9]+$/,Ds=Z("prisma:client:dataproxyEngine");async function sp(e,t){let r=ks["@prisma/engines-version"],n=t.clientVersion??"unknown";if(y.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION||globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION)return y.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION||globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION;if(e.includes("accelerate")&&n!=="0.0.0"&&n!=="in-memory")return n;let[i,o]=n?.split("-")??[];if(o===void 0&&op.test(i))return i;if(o!==void 0||n==="0.0.0"||n==="in-memory"){let[s]=r.split("-")??[],[a,l,d]=s.split("."),g=ap(`<=${a}.${l}.${d}`),h=await je(g,{clientVersion:n});if(!h.ok)throw new Error(`Failed to fetch stable Prisma version, unpkg.com status ${h.status} ${h.statusText}, response body: ${await h.text()||""}`);let T=await h.text();Ds("length of body fetched from unpkg.com",T.length);let I;try{I=JSON.parse(T)}catch(S){throw console.error("JSON.parse error: body fetched from unpkg.com: ",T),S}return I.version}throw new Ve("Only `major.minor.patch` versions are supported by Accelerate.",{clientVersion:n})}async function Ms(e,t){let r=await sp(e,t);return Ds("version",r),r}function ap(e){return encodeURI(`https://unpkg.com/prisma@${e}/package.json`)}var _s=3,tr=Z("prisma:client:dataproxyEngine"),yt=class{name="DataProxyEngine";inlineSchema;inlineSchemaHash;inlineDatasources;config;logEmitter;env;clientVersion;engineHash;tracingHelper;remoteClientVersion;host;headerBuilder;startPromise;protocol;constructor(t){Os(t),this.config=t,this.env=t.env,this.inlineSchema=Is(t.inlineSchema),this.inlineDatasources=t.inlineDatasources,this.inlineSchemaHash=t.inlineSchemaHash,this.clientVersion=t.clientVersion,this.engineHash=t.engineVersion,this.logEmitter=t.logEmitter,this.tracingHelper=t.tracingHelper}apiKey(){return this.headerBuilder.apiKey}version(){return this.engineHash}async start(){this.startPromise!==void 0&&await this.startPromise,this.startPromise=(async()=>{let{apiKey:t,url:r}=this.getURLAndAPIKey();this.host=r.host,this.protocol=r.protocol,this.headerBuilder=new Hr({apiKey:t,tracingHelper:this.tracingHelper,logLevel:this.config.logLevel??"error",logQueries:this.config.logQueries,engineHash:this.engineHash}),this.remoteClientVersion=await Ms(this.host,this.config),tr("host",this.host),tr("protocol",this.protocol)})(),await this.startPromise}async stop(){}propagateResponseExtensions(t){t?.logs?.length&&t.logs.forEach(r=>{switch(r.level){case"debug":case"trace":tr(r);break;case"error":case"warn":case"info":{this.logEmitter.emit(r.level,{timestamp:Qn(r.timestamp),message:r.attributes.message??"",target:r.target??"BinaryEngine"});break}case"query":{this.logEmitter.emit("query",{query:r.attributes.query??"",timestamp:Qn(r.timestamp),duration:r.attributes.duration_ms??0,params:r.attributes.params??"",target:r.target??"BinaryEngine"});break}default:r.level}}),t?.traces?.length&&this.tracingHelper.dispatchEngineSpans(t.traces)}onBeforeExit(){throw new Error('"beforeExit" hook is not applicable to the remote query engine')}async url(t){return await this.start(),`${this.protocol}//${this.host}/${this.remoteClientVersion}/${this.inlineSchemaHash}/${t}`}async uploadSchema(){let t={name:"schemaUpload",internal:!0};return this.tracingHelper.runInChildSpan(t,async()=>{let r=await je(await this.url("schema"),{method:"PUT",headers:this.headerBuilder.build(),body:this.inlineSchema,clientVersion:this.clientVersion});r.ok||tr("schema response status",r.status);let n=await Xt(r,this.clientVersion);if(n)throw this.logEmitter.emit("warn",{message:`Error while uploading schema: ${n.message}`,timestamp:new Date,target:""}),n;this.logEmitter.emit("info",{message:`Schema (re)uploaded (hash: ${this.inlineSchemaHash})`,timestamp:new Date,target:""})})}request(t,{traceparent:r,interactiveTransaction:n,customDataProxyFetch:i}){return this.requestInternal({body:t,traceparent:r,interactiveTransaction:n,customDataProxyFetch:i})}async requestBatch(t,{traceparent:r,transaction:n,customDataProxyFetch:i}){let o=n?.kind==="itx"?n.options:void 0,s=Gr(t,n);return(await this.requestInternal({body:s,customDataProxyFetch:i,interactiveTransaction:o,traceparent:r})).map(l=>(l.extensions&&this.propagateResponseExtensions(l.extensions),"errors"in l?this.convertProtocolErrorsToClientError(l.errors):l))}requestInternal({body:t,traceparent:r,customDataProxyFetch:n,interactiveTransaction:i}){return this.withRetry({actionGerund:"querying",callback:async({logHttpCall:o})=>{let s=i?`${i.payload.endpoint}/graphql`:await this.url("graphql");o(s);let a=await je(s,{method:"POST",headers:this.headerBuilder.build({traceparent:r,transactionId:i?.id}),body:JSON.stringify(t),clientVersion:this.clientVersion},n);a.ok||tr("graphql response status",a.status),await this.handleError(await Xt(a,this.clientVersion));let l=await a.json();if(l.extensions&&this.propagateResponseExtensions(l.extensions),"errors"in l)throw this.convertProtocolErrorsToClientError(l.errors);return"batchResult"in l?l.batchResult:l}})}async transaction(t,r,n){let i={start:"starting",commit:"committing",rollback:"rolling back"};return this.withRetry({actionGerund:`${i[t]} transaction`,callback:async({logHttpCall:o})=>{if(t==="start"){let s=JSON.stringify({max_wait:n.maxWait,timeout:n.timeout,isolation_level:n.isolationLevel}),a=await this.url("transaction/start");o(a);let l=await je(a,{method:"POST",headers:this.headerBuilder.build({traceparent:r.traceparent}),body:s,clientVersion:this.clientVersion});await this.handleError(await Xt(l,this.clientVersion));let d=await l.json(),{extensions:g}=d;g&&this.propagateResponseExtensions(g);let h=d.id,T=d["data-proxy"].endpoint;return{id:h,payload:{endpoint:T}}}else{let s=`${n.payload.endpoint}/${t}`;o(s);let a=await je(s,{method:"POST",headers:this.headerBuilder.build({traceparent:r.traceparent}),clientVersion:this.clientVersion});await this.handleError(await Xt(a,this.clientVersion));let l=await a.json(),{extensions:d}=l;d&&this.propagateResponseExtensions(d);return}}})}getURLAndAPIKey(){return Rs({clientVersion:this.clientVersion,env:this.env,inlineDatasources:this.inlineDatasources,overrideDatasources:this.config.overrideDatasources})}metrics(){throw new Ve("Metrics are not yet supported for Accelerate",{clientVersion:this.clientVersion})}async withRetry(t){for(let r=0;;r++){let n=i=>{this.logEmitter.emit("info",{message:`Calling ${i} (n=${r})`,timestamp:new Date,target:""})};try{return await t.callback({logHttpCall:n})}catch(i){if(!(i instanceof ie)||!i.isRetryable)throw i;if(r>=_s)throw i instanceof dt?i.cause:i;this.logEmitter.emit("warn",{message:`Attempt ${r+1}/${_s} failed for ${t.actionGerund}: ${i.message??"(unknown)"}`,timestamp:new Date,target:""});let o=await Ss(r);this.logEmitter.emit("warn",{message:`Retrying after ${o}ms`,timestamp:new Date,target:""})}}}async handleError(t){if(t instanceof $e)throw await this.uploadSchema(),new dt({clientVersion:this.clientVersion,cause:t});if(t)throw t}convertProtocolErrorsToClientError(t){return t.length===1?Jr(t[0],this.config.clientVersion,this.config.activeProvider):new ae(JSON.stringify(t),{clientVersion:this.config.clientVersion})}applyPendingMigrations(){throw new Error("Method not implemented.")}};f();u();c();p();m();function Ns({url:e,adapter:t,copyEngine:r,targetBuildType:n}){let i=[],o=[],s=C=>{i.push({_tag:"warning",value:C})},a=C=>{let M=C.join(` +`);o.push({_tag:"error",value:M})},l=!!e?.startsWith("prisma://"),d=dr(e),g=!!t,h=l||d;!g&&r&&h&&n!=="client"&&n!=="wasm-compiler-edge"&&s(["recommend--no-engine","In production, we recommend using `prisma generate --no-engine` (See: `prisma generate --help`)"]);let T=h||!r;g&&(T||n==="edge")&&(n==="edge"?a(["Prisma Client was configured to use the `adapter` option but it was imported via its `/edge` endpoint.","Please either remove the `/edge` endpoint or remove the `adapter` from the Prisma Client constructor."]):h?a(["You've provided both a driver adapter and an Accelerate database URL. Driver adapters currently cannot connect to Accelerate.","Please provide either a driver adapter with a direct database URL or an Accelerate URL and no driver adapter."]):r||a(["Prisma Client was configured to use the `adapter` option but `prisma generate` was run with `--no-engine`.","Please run `prisma generate` without `--no-engine` to be able to use Prisma Client with the adapter."]));let I={accelerate:T,ppg:d,driverAdapters:g};function S(C){return C.length>0}return S(o)?{ok:!1,diagnostics:{warnings:i,errors:o},isUsing:I}:{ok:!0,diagnostics:{warnings:i},isUsing:I}}function Fs({copyEngine:e=!0},t){let r;try{r=ft({inlineDatasources:t.inlineDatasources,overrideDatasources:t.overrideDatasources,env:{...t.env,...y.env},clientVersion:t.clientVersion})}catch{}let{ok:n,isUsing:i,diagnostics:o}=Ns({url:r,adapter:t.adapter,copyEngine:e,targetBuildType:"edge"});for(let h of o.warnings)hr(...h.value);if(!n){let h=o.errors[0];throw new ee(h.value,{clientVersion:t.clientVersion})}let s=Ze(t.generator),a=s==="library",l=s==="binary",d=s==="client",g=(i.accelerate||i.ppg)&&!i.driverAdapters;return i.accelerate?new yt(t):(i.driverAdapters,new yt(t))}f();u();c();p();m();function Ls({generator:e}){return e?.previewFeatures??[]}f();u();c();p();m();var Us=e=>({command:e});f();u();c();p();m();f();u();c();p();m();var Bs=e=>e.strings.reduce((t,r,n)=>`${t}@P${n}${r}`);f();u();c();p();m();function wt(e){try{return qs(e,"fast")}catch{return qs(e,"slow")}}function qs(e,t){return JSON.stringify(e.map(r=>$s(r,t)))}function $s(e,t){if(Array.isArray(e))return e.map(r=>$s(r,t));if(typeof e=="bigint")return{prisma__type:"bigint",prisma__value:e.toString()};if(Xe(e))return{prisma__type:"date",prisma__value:e.toJSON()};if(Me.isDecimal(e))return{prisma__type:"decimal",prisma__value:e.toJSON()};if(w.Buffer.isBuffer(e))return{prisma__type:"bytes",prisma__value:e.toString("base64")};if(lp(e))return{prisma__type:"bytes",prisma__value:w.Buffer.from(e).toString("base64")};if(ArrayBuffer.isView(e)){let{buffer:r,byteOffset:n,byteLength:i}=e;return{prisma__type:"bytes",prisma__value:w.Buffer.from(r,n,i).toString("base64")}}return typeof e=="object"&&t==="slow"?js(e):e}function lp(e){return e instanceof ArrayBuffer||e instanceof SharedArrayBuffer?!0:typeof e=="object"&&e!==null?e[Symbol.toStringTag]==="ArrayBuffer"||e[Symbol.toStringTag]==="SharedArrayBuffer":!1}function js(e){if(typeof e!="object"||e===null)return e;if(typeof e.toJSON=="function")return e.toJSON();if(Array.isArray(e))return e.map(Vs);let t={};for(let r of Object.keys(e))t[r]=Vs(e[r]);return t}function Vs(e){return typeof e=="bigint"?e.toString():js(e)}var up=/^(\s*alter\s)/i,Gs=Z("prisma:client");function Xn(e,t,r,n){if(!(e!=="postgresql"&&e!=="cockroachdb")&&r.length>0&&up.exec(t))throw new Error(`Running ALTER using ${n} is not supported Using the example below you can still execute your query with Prisma, but please note that it is vulnerable to SQL injection attacks and requires you to take care of input sanitization. Example: await prisma.$executeRawUnsafe(\`ALTER USER prisma WITH PASSWORD '\${password}'\`) More Information: https://pris.ly/d/execute-raw -`); -} -var ei = - ({ clientMethod: e, activeProvider: t }) => - (r) => { - let n = "", - i; - if (qr(r)) - ((n = r.sql), - (i = { values: wt(r.values), __prismaRawParameters__: !0 })); - else if (Array.isArray(r)) { - let [o, ...s] = r; - ((n = o), (i = { values: wt(s || []), __prismaRawParameters__: !0 })); - } else - switch (t) { - case "sqlite": - case "mysql": { - ((n = r.sql), - (i = { values: wt(r.values), __prismaRawParameters__: !0 })); - break; - } - case "cockroachdb": - case "postgresql": - case "postgres": { - ((n = r.text), - (i = { values: wt(r.values), __prismaRawParameters__: !0 })); - break; - } - case "sqlserver": { - ((n = Bs(r)), - (i = { values: wt(r.values), __prismaRawParameters__: !0 })); - break; - } - default: - throw new Error(`The ${t} provider does not support ${e}`); - } - return ( - i?.values - ? Gs(`prisma.${e}(${n}, ${i.values})`) - : Gs(`prisma.${e}(${n})`), - { query: n, parameters: i } - ); - }, - Js = { - requestArgsToMiddlewareArgs(e) { - return [e.strings, ...e.values]; - }, - middlewareArgsToRequestArgs(e) { - let [t, ...r] = e; - return new ue(t, r); - }, - }, - Qs = { - requestArgsToMiddlewareArgs(e) { - return [e]; - }, - middlewareArgsToRequestArgs(e) { - return e[0]; - }, - }; -f(); -u(); -c(); -p(); -m(); -function ti(e) { - return function (r, n) { - let i, - o = (s = e) => { - try { - return s === void 0 || s?.kind === "itx" - ? (i ??= Ks(r(s))) - : Ks(r(s)); - } catch (a) { - return Promise.reject(a); - } - }; - return { - get spec() { - return n; - }, - then(s, a) { - return o().then(s, a); - }, - catch(s) { - return o().catch(s); - }, - finally(s) { - return o().finally(s); - }, - requestTransaction(s) { - let a = o(s); - return a.requestTransaction ? a.requestTransaction(s) : a; - }, - [Symbol.toStringTag]: "PrismaPromise", - }; - }; -} -function Ks(e) { - return typeof e.then == "function" ? e : Promise.resolve(e); -} -f(); -u(); -c(); -p(); -m(); -var cp = dn.split(".")[0], - pp = { - isEnabled() { - return !1; - }, - getTraceParent() { - return "00-10-10-00"; - }, - dispatchEngineSpans() {}, - getActiveContext() {}, - runInChildSpan(e, t) { - return t(); - }, - }, - ri = class { - isEnabled() { - return this.getGlobalTracingHelper().isEnabled(); - } - getTraceParent(t) { - return this.getGlobalTracingHelper().getTraceParent(t); - } - dispatchEngineSpans(t) { - return this.getGlobalTracingHelper().dispatchEngineSpans(t); - } - getActiveContext() { - return this.getGlobalTracingHelper().getActiveContext(); - } - runInChildSpan(t, r) { - return this.getGlobalTracingHelper().runInChildSpan(t, r); - } - getGlobalTracingHelper() { - let t = globalThis[`V${cp}_PRISMA_INSTRUMENTATION`], - r = globalThis.PRISMA_INSTRUMENTATION; - return t?.helper ?? r?.helper ?? pp; - } - }; -function Ws() { - return new ri(); -} -f(); -u(); -c(); -p(); -m(); -function Hs(e, t = () => {}) { - let r, - n = new Promise((i) => (r = i)); - return { - then(i) { - return (--e === 0 && r(t()), i?.(n)); - }, - }; -} -f(); -u(); -c(); -p(); -m(); -function zs(e) { - return typeof e == "string" - ? e - : e.reduce( - (t, r) => { - let n = typeof r == "string" ? r : r.level; - return n === "query" - ? t - : t && (r === "info" || t === "info") - ? "info" - : n; - }, - void 0, - ); -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -function zr(e) { - return typeof e.batchRequestIdx == "number"; -} -f(); -u(); -c(); -p(); -m(); -function Ys(e) { - if (e.action !== "findUnique" && e.action !== "findUniqueOrThrow") return; - let t = []; - return ( - e.modelName && t.push(e.modelName), - e.query.arguments && t.push(ni(e.query.arguments)), - t.push(ni(e.query.selection)), - t.join("") - ); -} -function ni(e) { - return `(${Object.keys(e) - .sort() - .map((r) => { - let n = e[r]; - return typeof n == "object" && n !== null ? `(${r} ${ni(n)})` : r; - }) - .join(" ")})`; -} -f(); -u(); -c(); -p(); -m(); -var mp = { - aggregate: !1, - aggregateRaw: !1, - createMany: !0, - createManyAndReturn: !0, - createOne: !0, - deleteMany: !0, - deleteOne: !0, - executeRaw: !0, - findFirst: !1, - findFirstOrThrow: !1, - findMany: !1, - findRaw: !1, - findUnique: !1, - findUniqueOrThrow: !1, - groupBy: !1, - queryRaw: !1, - runCommandRaw: !0, - updateMany: !0, - updateManyAndReturn: !0, - updateOne: !0, - upsertOne: !0, -}; -function ii(e) { - return mp[e]; -} -f(); -u(); -c(); -p(); -m(); -var Yr = class { - constructor(t) { - this.options = t; - this.batches = {}; - } - batches; - tickActive = !1; - request(t) { - let r = this.options.batchBy(t); - return r - ? (this.batches[r] || - ((this.batches[r] = []), - this.tickActive || - ((this.tickActive = !0), - y.nextTick(() => { - (this.dispatchBatches(), (this.tickActive = !1)); - }))), - new Promise((n, i) => { - this.batches[r].push({ request: t, resolve: n, reject: i }); - })) - : this.options.singleLoader(t); - } - dispatchBatches() { - for (let t in this.batches) { - let r = this.batches[t]; - (delete this.batches[t], - r.length === 1 - ? this.options - .singleLoader(r[0].request) - .then((n) => { - n instanceof Error ? r[0].reject(n) : r[0].resolve(n); - }) - .catch((n) => { - r[0].reject(n); - }) - : (r.sort((n, i) => this.options.batchOrder(n.request, i.request)), - this.options - .batchLoader(r.map((n) => n.request)) - .then((n) => { - if (n instanceof Error) - for (let i = 0; i < r.length; i++) r[i].reject(n); - else - for (let i = 0; i < r.length; i++) { - let o = n[i]; - o instanceof Error ? r[i].reject(o) : r[i].resolve(o); - } - }) - .catch((n) => { - for (let i = 0; i < r.length; i++) r[i].reject(n); - }))); - } - } - get [Symbol.toStringTag]() { - return "DataLoader"; - } -}; -f(); -u(); -c(); -p(); -m(); -function Ge(e, t) { - if (t === null) return t; - switch (e) { - case "bigint": - return BigInt(t); - case "bytes": { - let { - buffer: r, - byteOffset: n, - byteLength: i, - } = w.Buffer.from(t, "base64"); - return new Uint8Array(r, n, i); - } - case "decimal": - return new Me(t); - case "datetime": - case "date": - return new Date(t); - case "time": - return new Date(`1970-01-01T${t}Z`); - case "bigint-array": - return t.map((r) => Ge("bigint", r)); - case "bytes-array": - return t.map((r) => Ge("bytes", r)); - case "decimal-array": - return t.map((r) => Ge("decimal", r)); - case "datetime-array": - return t.map((r) => Ge("datetime", r)); - case "date-array": - return t.map((r) => Ge("date", r)); - case "time-array": - return t.map((r) => Ge("time", r)); - default: - return t; - } -} -function oi(e) { - let t = [], - r = fp(e); - for (let n = 0; n < e.rows.length; n++) { - let i = e.rows[n], - o = { ...r }; - for (let s = 0; s < i.length; s++) o[e.columns[s]] = Ge(e.types[s], i[s]); - t.push(o); - } - return t; -} -function fp(e) { - let t = {}; - for (let r = 0; r < e.columns.length; r++) t[e.columns[r]] = null; - return t; -} -var dp = Z("prisma:client:request_handler"), - Zr = class { - client; - dataloader; - logEmitter; - constructor(t, r) { - ((this.logEmitter = r), - (this.client = t), - (this.dataloader = new Yr({ - batchLoader: ys(async ({ requests: n, customDataProxyFetch: i }) => { - let { transaction: o, otelParentCtx: s } = n[0], - a = n.map((h) => h.protocolQuery), - l = this.client._tracingHelper.getTraceParent(s), - d = n.some((h) => ii(h.protocolQuery.action)); - return ( - await this.client._engine.requestBatch(a, { - traceparent: l, - transaction: gp(o), - containsWrite: d, - customDataProxyFetch: i, - }) - ).map((h, T) => { - if (h instanceof Error) return h; - try { - return this.mapQueryEngineResult(n[T], h); - } catch (I) { - return I; - } - }); - }), - singleLoader: async (n) => { - let i = n.transaction?.kind === "itx" ? Zs(n.transaction) : void 0, - o = await this.client._engine.request(n.protocolQuery, { - traceparent: this.client._tracingHelper.getTraceParent(), - interactiveTransaction: i, - isWrite: ii(n.protocolQuery.action), - customDataProxyFetch: n.customDataProxyFetch, - }); - return this.mapQueryEngineResult(n, o); - }, - batchBy: (n) => - n.transaction?.id - ? `transaction-${n.transaction.id}` - : Ys(n.protocolQuery), - batchOrder(n, i) { - return n.transaction?.kind === "batch" && - i.transaction?.kind === "batch" - ? n.transaction.index - i.transaction.index - : 0; - }, - }))); - } - async request(t) { - try { - return await this.dataloader.request(t); - } catch (r) { - let { - clientMethod: n, - callsite: i, - transaction: o, - args: s, - modelName: a, - } = t; - this.handleAndLogRequestError({ - error: r, - clientMethod: n, - callsite: i, - transaction: o, - args: s, - modelName: a, - globalOmit: t.globalOmit, - }); - } - } - mapQueryEngineResult({ dataPath: t, unpacker: r }, n) { - let i = n?.data, - o = this.unpack(i, t, r); - return y.env.PRISMA_CLIENT_GET_TIME ? { data: o } : o; - } - handleAndLogRequestError(t) { - try { - this.handleRequestError(t); - } catch (r) { - throw ( - this.logEmitter && - this.logEmitter.emit("error", { - message: r.message, - target: t.clientMethod, - timestamp: new Date(), - }), - r - ); - } - } - handleRequestError({ - error: t, - clientMethod: r, - callsite: n, - transaction: i, - args: o, - modelName: s, - globalOmit: a, - }) { - if ((dp(t), hp(t, i))) throw t; - if (t instanceof se && yp(t)) { - let d = Xs(t.meta); - Fr({ - args: o, - errors: [d], - callsite: n, - errorFormat: this.client._errorFormat, - originalMethod: r, - clientVersion: this.client._clientVersion, - globalOmit: a, - }); - } - let l = t.message; - if ( - (n && - (l = Cr({ - callsite: n, - originalMethod: r, - isPanic: t.isPanic, - showColors: this.client._errorFormat === "pretty", - message: l, - })), - (l = this.sanitizeMessage(l)), - t.code) - ) { - let d = s ? { modelName: s, ...t.meta } : t.meta; - throw new se(l, { - code: t.code, - clientVersion: this.client._clientVersion, - meta: d, - batchRequestIdx: t.batchRequestIdx, - }); - } else { - if (t.isPanic) throw new Ce(l, this.client._clientVersion); - if (t instanceof ae) - throw new ae(l, { - clientVersion: this.client._clientVersion, - batchRequestIdx: t.batchRequestIdx, - }); - if (t instanceof Q) throw new Q(l, this.client._clientVersion); - if (t instanceof Ce) throw new Ce(l, this.client._clientVersion); - } - throw ((t.clientVersion = this.client._clientVersion), t); - } - sanitizeMessage(t) { - return this.client._errorFormat && this.client._errorFormat !== "pretty" - ? En(t) - : t; - } - unpack(t, r, n) { - if (!t || (t.data && (t = t.data), !t)) return t; - let i = Object.keys(t)[0], - o = Object.values(t)[0], - s = r.filter((d) => d !== "select" && d !== "include"), - a = Vn(o, s), - l = i === "queryRaw" ? oi(a) : $t(a); - return n ? n(l) : l; - } - get [Symbol.toStringTag]() { - return "RequestHandler"; - } - }; -function gp(e) { - if (e) { - if (e.kind === "batch") - return { kind: "batch", options: { isolationLevel: e.isolationLevel } }; - if (e.kind === "itx") return { kind: "itx", options: Zs(e) }; - Ue(e, "Unknown transaction kind"); - } -} -function Zs(e) { - return { id: e.id, payload: e.payload }; -} -function hp(e, t) { - return zr(e) && t?.kind === "batch" && e.batchRequestIdx !== t.index; -} -function yp(e) { - return e.code === "P2009" || e.code === "P2012"; -} -function Xs(e) { - if (e.kind === "Union") return { kind: "Union", errors: e.errors.map(Xs) }; - if (Array.isArray(e.selectionPath)) { - let [, ...t] = e.selectionPath; - return { ...e, selectionPath: t }; - } - return e; -} -f(); -u(); -c(); -p(); -m(); -var ea = As; -f(); -u(); -c(); -p(); -m(); -var oa = Qe(Sn()); -f(); -u(); -c(); -p(); -m(); -var q = class extends Error { - constructor(t) { - (super( - t + - ` -Read more at https://pris.ly/d/client-constructor`, - ), - (this.name = "PrismaClientConstructorValidationError")); - } - get [Symbol.toStringTag]() { - return "PrismaClientConstructorValidationError"; - } -}; -N(q, "PrismaClientConstructorValidationError"); -var ta = [ - "datasources", - "datasourceUrl", - "errorFormat", - "adapter", - "log", - "transactionOptions", - "omit", - "__internal", - ], - ra = ["pretty", "colorless", "minimal"], - na = ["info", "query", "warn", "error"], - wp = { - datasources: (e, { datasourceNames: t }) => { - if (e) { - if (typeof e != "object" || Array.isArray(e)) - throw new q( - `Invalid value ${JSON.stringify(e)} for "datasources" provided to PrismaClient constructor`, - ); - for (let [r, n] of Object.entries(e)) { - if (!t.includes(r)) { - let i = Et(r, t) || ` Available datasources: ${t.join(", ")}`; - throw new q( - `Unknown datasource ${r} provided to PrismaClient constructor.${i}`, - ); - } - if (typeof n != "object" || Array.isArray(n)) - throw new q(`Invalid value ${JSON.stringify(e)} for datasource "${r}" provided to PrismaClient constructor. -It should have this form: { url: "CONNECTION_STRING" }`); - if (n && typeof n == "object") - for (let [i, o] of Object.entries(n)) { - if (i !== "url") - throw new q(`Invalid value ${JSON.stringify(e)} for datasource "${r}" provided to PrismaClient constructor. -It should have this form: { url: "CONNECTION_STRING" }`); - if (typeof o != "string") - throw new q(`Invalid value ${JSON.stringify(o)} for datasource "${r}" provided to PrismaClient constructor. -It should have this form: { url: "CONNECTION_STRING" }`); - } - } - } - }, - adapter: (e, t) => { - if (!e && Ze(t.generator) === "client") - throw new q( - 'Using engine type "client" requires a driver adapter to be provided to PrismaClient constructor.', - ); - if (e !== null) { - if (e === void 0) - throw new q( - '"adapter" property must not be undefined, use null to conditionally disable driver adapters.', - ); - if (Ze(t.generator) === "binary") - throw new q( - 'Cannot use a driver adapter with the "binary" Query Engine. Please use the "library" Query Engine.', - ); - } - }, - datasourceUrl: (e) => { - if (typeof e < "u" && typeof e != "string") - throw new q(`Invalid value ${JSON.stringify(e)} for "datasourceUrl" provided to PrismaClient constructor. -Expected string or undefined.`); - }, - errorFormat: (e) => { - if (e) { - if (typeof e != "string") - throw new q( - `Invalid value ${JSON.stringify(e)} for "errorFormat" provided to PrismaClient constructor.`, - ); - if (!ra.includes(e)) { - let t = Et(e, ra); - throw new q( - `Invalid errorFormat ${e} provided to PrismaClient constructor.${t}`, - ); - } - } - }, - log: (e) => { - if (!e) return; - if (!Array.isArray(e)) - throw new q( - `Invalid value ${JSON.stringify(e)} for "log" provided to PrismaClient constructor.`, - ); - function t(r) { - if (typeof r == "string" && !na.includes(r)) { - let n = Et(r, na); - throw new q( - `Invalid log level "${r}" provided to PrismaClient constructor.${n}`, - ); - } - } - for (let r of e) { - t(r); - let n = { - level: t, - emit: (i) => { - let o = ["stdout", "event"]; - if (!o.includes(i)) { - let s = Et(i, o); - throw new q( - `Invalid value ${JSON.stringify(i)} for "emit" in logLevel provided to PrismaClient constructor.${s}`, - ); - } - }, - }; - if (r && typeof r == "object") - for (let [i, o] of Object.entries(r)) - if (n[i]) n[i](o); - else - throw new q( - `Invalid property ${i} for "log" provided to PrismaClient constructor`, - ); - } - }, - transactionOptions: (e) => { - if (!e) return; - let t = e.maxWait; - if (t != null && t <= 0) - throw new q( - `Invalid value ${t} for maxWait in "transactionOptions" provided to PrismaClient constructor. maxWait needs to be greater than 0`, - ); - let r = e.timeout; - if (r != null && r <= 0) - throw new q( - `Invalid value ${r} for timeout in "transactionOptions" provided to PrismaClient constructor. timeout needs to be greater than 0`, - ); - }, - omit: (e, t) => { - if (typeof e != "object") - throw new q('"omit" option is expected to be an object.'); - if (e === null) throw new q('"omit" option can not be `null`'); - let r = []; - for (let [n, i] of Object.entries(e)) { - let o = bp(n, t.runtimeDataModel); - if (!o) { - r.push({ kind: "UnknownModel", modelKey: n }); - continue; - } - for (let [s, a] of Object.entries(i)) { - let l = o.fields.find((d) => d.name === s); - if (!l) { - r.push({ kind: "UnknownField", modelKey: n, fieldName: s }); - continue; - } - if (l.relationName) { - r.push({ kind: "RelationInOmit", modelKey: n, fieldName: s }); - continue; - } - typeof a != "boolean" && - r.push({ kind: "InvalidFieldValue", modelKey: n, fieldName: s }); - } - } - if (r.length > 0) throw new q(xp(e, r)); - }, - __internal: (e) => { - if (!e) return; - let t = ["debug", "engine", "configOverride"]; - if (typeof e != "object") - throw new q( - `Invalid value ${JSON.stringify(e)} for "__internal" to PrismaClient constructor`, - ); - for (let [r] of Object.entries(e)) - if (!t.includes(r)) { - let n = Et(r, t); - throw new q( - `Invalid property ${JSON.stringify(r)} for "__internal" provided to PrismaClient constructor.${n}`, - ); - } - }, - }; -function sa(e, t) { - for (let [r, n] of Object.entries(e)) { - if (!ta.includes(r)) { - let i = Et(r, ta); - throw new q( - `Unknown property ${r} provided to PrismaClient constructor.${i}`, - ); - } - wp[r](n, t); - } - if (e.datasourceUrl && e.datasources) - throw new q( - 'Can not use "datasourceUrl" and "datasources" options at the same time. Pick one of them', - ); -} -function Et(e, t) { - if (t.length === 0 || typeof e != "string") return ""; - let r = Ep(e, t); - return r ? ` Did you mean "${r}"?` : ""; -} -function Ep(e, t) { - if (t.length === 0) return null; - let r = t.map((i) => ({ value: i, distance: (0, oa.default)(e, i) })); - r.sort((i, o) => (i.distance < o.distance ? -1 : 1)); - let n = r[0]; - return n.distance < 3 ? n.value : null; -} -function bp(e, t) { - return ia(t.models, e) ?? ia(t.types, e); -} -function ia(e, t) { - let r = Object.keys(e).find((n) => Se(n) === t); - if (r) return e[r]; -} -function xp(e, t) { - let r = ut(e); - for (let o of t) - switch (o.kind) { - case "UnknownModel": - (r.arguments.getField(o.modelKey)?.markAsError(), - r.addErrorMessage(() => `Unknown model name: ${o.modelKey}.`)); - break; - case "UnknownField": - (r.arguments.getDeepField([o.modelKey, o.fieldName])?.markAsError(), - r.addErrorMessage( - () => - `Model "${o.modelKey}" does not have a field named "${o.fieldName}".`, - )); - break; - case "RelationInOmit": - (r.arguments.getDeepField([o.modelKey, o.fieldName])?.markAsError(), - r.addErrorMessage( - () => - 'Relations are already excluded by default and can not be specified in "omit".', - )); - break; - case "InvalidFieldValue": - (r.arguments - .getDeepFieldValue([o.modelKey, o.fieldName]) - ?.markAsError(), - r.addErrorMessage( - () => "Omit field option value must be a boolean.", - )); - break; - } - let { message: n, args: i } = Nr(r, "colorless"); - return `Error validating "omit" option: +`)}var ei=({clientMethod:e,activeProvider:t})=>r=>{let n="",i;if(qr(r))n=r.sql,i={values:wt(r.values),__prismaRawParameters__:!0};else if(Array.isArray(r)){let[o,...s]=r;n=o,i={values:wt(s||[]),__prismaRawParameters__:!0}}else switch(t){case"sqlite":case"mysql":{n=r.sql,i={values:wt(r.values),__prismaRawParameters__:!0};break}case"cockroachdb":case"postgresql":case"postgres":{n=r.text,i={values:wt(r.values),__prismaRawParameters__:!0};break}case"sqlserver":{n=Bs(r),i={values:wt(r.values),__prismaRawParameters__:!0};break}default:throw new Error(`The ${t} provider does not support ${e}`)}return i?.values?Gs(`prisma.${e}(${n}, ${i.values})`):Gs(`prisma.${e}(${n})`),{query:n,parameters:i}},Js={requestArgsToMiddlewareArgs(e){return[e.strings,...e.values]},middlewareArgsToRequestArgs(e){let[t,...r]=e;return new ue(t,r)}},Qs={requestArgsToMiddlewareArgs(e){return[e]},middlewareArgsToRequestArgs(e){return e[0]}};f();u();c();p();m();function ti(e){return function(r,n){let i,o=(s=e)=>{try{return s===void 0||s?.kind==="itx"?i??=Ks(r(s)):Ks(r(s))}catch(a){return Promise.reject(a)}};return{get spec(){return n},then(s,a){return o().then(s,a)},catch(s){return o().catch(s)},finally(s){return o().finally(s)},requestTransaction(s){let a=o(s);return a.requestTransaction?a.requestTransaction(s):a},[Symbol.toStringTag]:"PrismaPromise"}}}function Ks(e){return typeof e.then=="function"?e:Promise.resolve(e)}f();u();c();p();m();var cp=dn.split(".")[0],pp={isEnabled(){return!1},getTraceParent(){return"00-10-10-00"},dispatchEngineSpans(){},getActiveContext(){},runInChildSpan(e,t){return t()}},ri=class{isEnabled(){return this.getGlobalTracingHelper().isEnabled()}getTraceParent(t){return this.getGlobalTracingHelper().getTraceParent(t)}dispatchEngineSpans(t){return this.getGlobalTracingHelper().dispatchEngineSpans(t)}getActiveContext(){return this.getGlobalTracingHelper().getActiveContext()}runInChildSpan(t,r){return this.getGlobalTracingHelper().runInChildSpan(t,r)}getGlobalTracingHelper(){let t=globalThis[`V${cp}_PRISMA_INSTRUMENTATION`],r=globalThis.PRISMA_INSTRUMENTATION;return t?.helper??r?.helper??pp}};function Ws(){return new ri}f();u();c();p();m();function Hs(e,t=()=>{}){let r,n=new Promise(i=>r=i);return{then(i){return--e===0&&r(t()),i?.(n)}}}f();u();c();p();m();function zs(e){return typeof e=="string"?e:e.reduce((t,r)=>{let n=typeof r=="string"?r:r.level;return n==="query"?t:t&&(r==="info"||t==="info")?"info":n},void 0)}f();u();c();p();m();f();u();c();p();m();function zr(e){return typeof e.batchRequestIdx=="number"}f();u();c();p();m();function Ys(e){if(e.action!=="findUnique"&&e.action!=="findUniqueOrThrow")return;let t=[];return e.modelName&&t.push(e.modelName),e.query.arguments&&t.push(ni(e.query.arguments)),t.push(ni(e.query.selection)),t.join("")}function ni(e){return`(${Object.keys(e).sort().map(r=>{let n=e[r];return typeof n=="object"&&n!==null?`(${r} ${ni(n)})`:r}).join(" ")})`}f();u();c();p();m();var mp={aggregate:!1,aggregateRaw:!1,createMany:!0,createManyAndReturn:!0,createOne:!0,deleteMany:!0,deleteOne:!0,executeRaw:!0,findFirst:!1,findFirstOrThrow:!1,findMany:!1,findRaw:!1,findUnique:!1,findUniqueOrThrow:!1,groupBy:!1,queryRaw:!1,runCommandRaw:!0,updateMany:!0,updateManyAndReturn:!0,updateOne:!0,upsertOne:!0};function ii(e){return mp[e]}f();u();c();p();m();var Yr=class{constructor(t){this.options=t;this.batches={}}batches;tickActive=!1;request(t){let r=this.options.batchBy(t);return r?(this.batches[r]||(this.batches[r]=[],this.tickActive||(this.tickActive=!0,y.nextTick(()=>{this.dispatchBatches(),this.tickActive=!1}))),new Promise((n,i)=>{this.batches[r].push({request:t,resolve:n,reject:i})})):this.options.singleLoader(t)}dispatchBatches(){for(let t in this.batches){let r=this.batches[t];delete this.batches[t],r.length===1?this.options.singleLoader(r[0].request).then(n=>{n instanceof Error?r[0].reject(n):r[0].resolve(n)}).catch(n=>{r[0].reject(n)}):(r.sort((n,i)=>this.options.batchOrder(n.request,i.request)),this.options.batchLoader(r.map(n=>n.request)).then(n=>{if(n instanceof Error)for(let i=0;i{for(let i=0;iGe("bigint",r));case"bytes-array":return t.map(r=>Ge("bytes",r));case"decimal-array":return t.map(r=>Ge("decimal",r));case"datetime-array":return t.map(r=>Ge("datetime",r));case"date-array":return t.map(r=>Ge("date",r));case"time-array":return t.map(r=>Ge("time",r));default:return t}}function oi(e){let t=[],r=fp(e);for(let n=0;n{let{transaction:o,otelParentCtx:s}=n[0],a=n.map(h=>h.protocolQuery),l=this.client._tracingHelper.getTraceParent(s),d=n.some(h=>ii(h.protocolQuery.action));return(await this.client._engine.requestBatch(a,{traceparent:l,transaction:gp(o),containsWrite:d,customDataProxyFetch:i})).map((h,T)=>{if(h instanceof Error)return h;try{return this.mapQueryEngineResult(n[T],h)}catch(I){return I}})}),singleLoader:async n=>{let i=n.transaction?.kind==="itx"?Zs(n.transaction):void 0,o=await this.client._engine.request(n.protocolQuery,{traceparent:this.client._tracingHelper.getTraceParent(),interactiveTransaction:i,isWrite:ii(n.protocolQuery.action),customDataProxyFetch:n.customDataProxyFetch});return this.mapQueryEngineResult(n,o)},batchBy:n=>n.transaction?.id?`transaction-${n.transaction.id}`:Ys(n.protocolQuery),batchOrder(n,i){return n.transaction?.kind==="batch"&&i.transaction?.kind==="batch"?n.transaction.index-i.transaction.index:0}})}async request(t){try{return await this.dataloader.request(t)}catch(r){let{clientMethod:n,callsite:i,transaction:o,args:s,modelName:a}=t;this.handleAndLogRequestError({error:r,clientMethod:n,callsite:i,transaction:o,args:s,modelName:a,globalOmit:t.globalOmit})}}mapQueryEngineResult({dataPath:t,unpacker:r},n){let i=n?.data,o=this.unpack(i,t,r);return y.env.PRISMA_CLIENT_GET_TIME?{data:o}:o}handleAndLogRequestError(t){try{this.handleRequestError(t)}catch(r){throw this.logEmitter&&this.logEmitter.emit("error",{message:r.message,target:t.clientMethod,timestamp:new Date}),r}}handleRequestError({error:t,clientMethod:r,callsite:n,transaction:i,args:o,modelName:s,globalOmit:a}){if(dp(t),hp(t,i))throw t;if(t instanceof se&&yp(t)){let d=Xs(t.meta);Fr({args:o,errors:[d],callsite:n,errorFormat:this.client._errorFormat,originalMethod:r,clientVersion:this.client._clientVersion,globalOmit:a})}let l=t.message;if(n&&(l=Cr({callsite:n,originalMethod:r,isPanic:t.isPanic,showColors:this.client._errorFormat==="pretty",message:l})),l=this.sanitizeMessage(l),t.code){let d=s?{modelName:s,...t.meta}:t.meta;throw new se(l,{code:t.code,clientVersion:this.client._clientVersion,meta:d,batchRequestIdx:t.batchRequestIdx})}else{if(t.isPanic)throw new Ce(l,this.client._clientVersion);if(t instanceof ae)throw new ae(l,{clientVersion:this.client._clientVersion,batchRequestIdx:t.batchRequestIdx});if(t instanceof Q)throw new Q(l,this.client._clientVersion);if(t instanceof Ce)throw new Ce(l,this.client._clientVersion)}throw t.clientVersion=this.client._clientVersion,t}sanitizeMessage(t){return this.client._errorFormat&&this.client._errorFormat!=="pretty"?En(t):t}unpack(t,r,n){if(!t||(t.data&&(t=t.data),!t))return t;let i=Object.keys(t)[0],o=Object.values(t)[0],s=r.filter(d=>d!=="select"&&d!=="include"),a=Vn(o,s),l=i==="queryRaw"?oi(a):$t(a);return n?n(l):l}get[Symbol.toStringTag](){return"RequestHandler"}};function gp(e){if(e){if(e.kind==="batch")return{kind:"batch",options:{isolationLevel:e.isolationLevel}};if(e.kind==="itx")return{kind:"itx",options:Zs(e)};Ue(e,"Unknown transaction kind")}}function Zs(e){return{id:e.id,payload:e.payload}}function hp(e,t){return zr(e)&&t?.kind==="batch"&&e.batchRequestIdx!==t.index}function yp(e){return e.code==="P2009"||e.code==="P2012"}function Xs(e){if(e.kind==="Union")return{kind:"Union",errors:e.errors.map(Xs)};if(Array.isArray(e.selectionPath)){let[,...t]=e.selectionPath;return{...e,selectionPath:t}}return e}f();u();c();p();m();var ea=As;f();u();c();p();m();var oa=Qe(Sn());f();u();c();p();m();var q=class extends Error{constructor(t){super(t+` +Read more at https://pris.ly/d/client-constructor`),this.name="PrismaClientConstructorValidationError"}get[Symbol.toStringTag](){return"PrismaClientConstructorValidationError"}};N(q,"PrismaClientConstructorValidationError");var ta=["datasources","datasourceUrl","errorFormat","adapter","log","transactionOptions","omit","__internal"],ra=["pretty","colorless","minimal"],na=["info","query","warn","error"],wp={datasources:(e,{datasourceNames:t})=>{if(e){if(typeof e!="object"||Array.isArray(e))throw new q(`Invalid value ${JSON.stringify(e)} for "datasources" provided to PrismaClient constructor`);for(let[r,n]of Object.entries(e)){if(!t.includes(r)){let i=Et(r,t)||` Available datasources: ${t.join(", ")}`;throw new q(`Unknown datasource ${r} provided to PrismaClient constructor.${i}`)}if(typeof n!="object"||Array.isArray(n))throw new q(`Invalid value ${JSON.stringify(e)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`);if(n&&typeof n=="object")for(let[i,o]of Object.entries(n)){if(i!=="url")throw new q(`Invalid value ${JSON.stringify(e)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`);if(typeof o!="string")throw new q(`Invalid value ${JSON.stringify(o)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`)}}}},adapter:(e,t)=>{if(!e&&Ze(t.generator)==="client")throw new q('Using engine type "client" requires a driver adapter to be provided to PrismaClient constructor.');if(e!==null){if(e===void 0)throw new q('"adapter" property must not be undefined, use null to conditionally disable driver adapters.');if(Ze(t.generator)==="binary")throw new q('Cannot use a driver adapter with the "binary" Query Engine. Please use the "library" Query Engine.')}},datasourceUrl:e=>{if(typeof e<"u"&&typeof e!="string")throw new q(`Invalid value ${JSON.stringify(e)} for "datasourceUrl" provided to PrismaClient constructor. +Expected string or undefined.`)},errorFormat:e=>{if(e){if(typeof e!="string")throw new q(`Invalid value ${JSON.stringify(e)} for "errorFormat" provided to PrismaClient constructor.`);if(!ra.includes(e)){let t=Et(e,ra);throw new q(`Invalid errorFormat ${e} provided to PrismaClient constructor.${t}`)}}},log:e=>{if(!e)return;if(!Array.isArray(e))throw new q(`Invalid value ${JSON.stringify(e)} for "log" provided to PrismaClient constructor.`);function t(r){if(typeof r=="string"&&!na.includes(r)){let n=Et(r,na);throw new q(`Invalid log level "${r}" provided to PrismaClient constructor.${n}`)}}for(let r of e){t(r);let n={level:t,emit:i=>{let o=["stdout","event"];if(!o.includes(i)){let s=Et(i,o);throw new q(`Invalid value ${JSON.stringify(i)} for "emit" in logLevel provided to PrismaClient constructor.${s}`)}}};if(r&&typeof r=="object")for(let[i,o]of Object.entries(r))if(n[i])n[i](o);else throw new q(`Invalid property ${i} for "log" provided to PrismaClient constructor`)}},transactionOptions:e=>{if(!e)return;let t=e.maxWait;if(t!=null&&t<=0)throw new q(`Invalid value ${t} for maxWait in "transactionOptions" provided to PrismaClient constructor. maxWait needs to be greater than 0`);let r=e.timeout;if(r!=null&&r<=0)throw new q(`Invalid value ${r} for timeout in "transactionOptions" provided to PrismaClient constructor. timeout needs to be greater than 0`)},omit:(e,t)=>{if(typeof e!="object")throw new q('"omit" option is expected to be an object.');if(e===null)throw new q('"omit" option can not be `null`');let r=[];for(let[n,i]of Object.entries(e)){let o=bp(n,t.runtimeDataModel);if(!o){r.push({kind:"UnknownModel",modelKey:n});continue}for(let[s,a]of Object.entries(i)){let l=o.fields.find(d=>d.name===s);if(!l){r.push({kind:"UnknownField",modelKey:n,fieldName:s});continue}if(l.relationName){r.push({kind:"RelationInOmit",modelKey:n,fieldName:s});continue}typeof a!="boolean"&&r.push({kind:"InvalidFieldValue",modelKey:n,fieldName:s})}}if(r.length>0)throw new q(xp(e,r))},__internal:e=>{if(!e)return;let t=["debug","engine","configOverride"];if(typeof e!="object")throw new q(`Invalid value ${JSON.stringify(e)} for "__internal" to PrismaClient constructor`);for(let[r]of Object.entries(e))if(!t.includes(r)){let n=Et(r,t);throw new q(`Invalid property ${JSON.stringify(r)} for "__internal" provided to PrismaClient constructor.${n}`)}}};function sa(e,t){for(let[r,n]of Object.entries(e)){if(!ta.includes(r)){let i=Et(r,ta);throw new q(`Unknown property ${r} provided to PrismaClient constructor.${i}`)}wp[r](n,t)}if(e.datasourceUrl&&e.datasources)throw new q('Can not use "datasourceUrl" and "datasources" options at the same time. Pick one of them')}function Et(e,t){if(t.length===0||typeof e!="string")return"";let r=Ep(e,t);return r?` Did you mean "${r}"?`:""}function Ep(e,t){if(t.length===0)return null;let r=t.map(i=>({value:i,distance:(0,oa.default)(e,i)}));r.sort((i,o)=>i.distanceSe(n)===t);if(r)return e[r]}function xp(e,t){let r=ut(e);for(let o of t)switch(o.kind){case"UnknownModel":r.arguments.getField(o.modelKey)?.markAsError(),r.addErrorMessage(()=>`Unknown model name: ${o.modelKey}.`);break;case"UnknownField":r.arguments.getDeepField([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>`Model "${o.modelKey}" does not have a field named "${o.fieldName}".`);break;case"RelationInOmit":r.arguments.getDeepField([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>'Relations are already excluded by default and can not be specified in "omit".');break;case"InvalidFieldValue":r.arguments.getDeepFieldValue([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>"Omit field option value must be a boolean.");break}let{message:n,args:i}=Nr(r,"colorless");return`Error validating "omit" option: ${i} -${n}`; -} -f(); -u(); -c(); -p(); -m(); -function aa(e) { - return e.length === 0 - ? Promise.resolve([]) - : new Promise((t, r) => { - let n = new Array(e.length), - i = null, - o = !1, - s = 0, - a = () => { - o || (s++, s === e.length && ((o = !0), i ? r(i) : t(n))); - }, - l = (d) => { - o || ((o = !0), r(d)); - }; - for (let d = 0; d < e.length; d++) - e[d].then( - (g) => { - ((n[d] = g), a()); - }, - (g) => { - if (!zr(g)) { - l(g); - return; - } - g.batchRequestIdx === d ? l(g) : (i || (i = g), a()); - }, - ); - }); -} -var Fe = Z("prisma:client"); -typeof globalThis == "object" && (globalThis.NODE_CLIENT = !0); -var Pp = { - requestArgsToMiddlewareArgs: (e) => e, - middlewareArgsToRequestArgs: (e) => e, - }, - vp = Symbol.for("prisma.client.transaction.id"), - Tp = { - id: 0, - nextId() { - return ++this.id; - }, - }; -function Ap(e) { - class t { - _originalClient = this; - _runtimeDataModel; - _requestHandler; - _connectionPromise; - _disconnectionPromise; - _engineConfig; - _accelerateEngineConfig; - _clientVersion; - _errorFormat; - _tracingHelper; - _previewFeatures; - _activeProvider; - _globalOmit; - _extensions; - _engine; - _appliedParent; - _createPrismaPromise = ti(); - constructor(n) { - ((e = n?.__internal?.configOverride?.(e) ?? e), Ps(e), n && sa(n, e)); - let i = new Vr().on("error", () => {}); - ((this._extensions = ct.empty()), - (this._previewFeatures = Ls(e)), - (this._clientVersion = e.clientVersion ?? ea), - (this._activeProvider = e.activeProvider), - (this._globalOmit = n?.omit), - (this._tracingHelper = Ws())); - let o = e.relativeEnvPaths && { - rootEnvPath: - e.relativeEnvPaths.rootEnvPath && - pr.resolve(e.dirname, e.relativeEnvPaths.rootEnvPath), - schemaEnvPath: - e.relativeEnvPaths.schemaEnvPath && - pr.resolve(e.dirname, e.relativeEnvPaths.schemaEnvPath), - }, - s; - if (n?.adapter) { - s = n.adapter; - let l = - e.activeProvider === "postgresql" || - e.activeProvider === "cockroachdb" - ? "postgres" - : e.activeProvider; - if (s.provider !== l) - throw new Q( - `The Driver Adapter \`${s.adapterName}\`, based on \`${s.provider}\`, is not compatible with the provider \`${l}\` specified in the Prisma schema.`, - this._clientVersion, - ); - if (n.datasources || n.datasourceUrl !== void 0) - throw new Q( - "Custom datasource configuration is not compatible with Prisma Driver Adapters. Please define the database connection string directly in the Driver Adapter configuration.", - this._clientVersion, - ); - } - let a = e.injectableEdgeEnv?.(); - try { - let l = n ?? {}, - d = l.__internal ?? {}, - g = d.debug === !0; - g && Z.enable("prisma:client"); - let h = pr.resolve(e.dirname, e.relativePath); - (ji.existsSync(h) || (h = e.dirname), - Fe("dirname", e.dirname), - Fe("relativePath", e.relativePath), - Fe("cwd", h)); - let T = d.engine || {}; - if ( - (l.errorFormat - ? (this._errorFormat = l.errorFormat) - : y.env.NODE_ENV === "production" - ? (this._errorFormat = "minimal") - : y.env.NO_COLOR - ? (this._errorFormat = "colorless") - : (this._errorFormat = "colorless"), - (this._runtimeDataModel = e.runtimeDataModel), - (this._engineConfig = { - cwd: h, - dirname: e.dirname, - enableDebugLogs: g, - allowTriggerPanic: T.allowTriggerPanic, - prismaPath: T.binaryPath ?? void 0, - engineEndpoint: T.endpoint, - generator: e.generator, - showColors: this._errorFormat === "pretty", - logLevel: l.log && zs(l.log), - logQueries: - l.log && - !!(typeof l.log == "string" - ? l.log === "query" - : l.log.find((I) => - typeof I == "string" ? I === "query" : I.level === "query", - )), - env: a?.parsed ?? {}, - flags: [], - engineWasm: e.engineWasm, - compilerWasm: e.compilerWasm, - clientVersion: e.clientVersion, - engineVersion: e.engineVersion, - previewFeatures: this._previewFeatures, - activeProvider: e.activeProvider, - inlineSchema: e.inlineSchema, - overrideDatasources: vs(l, e.datasourceNames), - inlineDatasources: e.inlineDatasources, - inlineSchemaHash: e.inlineSchemaHash, - tracingHelper: this._tracingHelper, - transactionOptions: { - maxWait: l.transactionOptions?.maxWait ?? 2e3, - timeout: l.transactionOptions?.timeout ?? 5e3, - isolationLevel: l.transactionOptions?.isolationLevel, - }, - logEmitter: i, - isBundled: e.isBundled, - adapter: s, - }), - (this._accelerateEngineConfig = { - ...this._engineConfig, - accelerateUtils: { - resolveDatasourceUrl: ft, - getBatchRequestPayload: Gr, - prismaGraphQLToJSError: Jr, - PrismaClientUnknownRequestError: ae, - PrismaClientInitializationError: Q, - PrismaClientKnownRequestError: se, - debug: Z("prisma:client:accelerateEngine"), - engineVersion: ua.version, - clientVersion: e.clientVersion, - }, - }), - Fe("clientVersion", e.clientVersion), - (this._engine = Fs(e, this._engineConfig)), - (this._requestHandler = new Zr(this, i)), - l.log) - ) - for (let I of l.log) { - let S = - typeof I == "string" ? I : I.emit === "stdout" ? I.level : null; - S && - this.$on(S, (C) => { - Tt.log(`${Tt.tags[S] ?? ""}`, C.message || C.query); - }); - } - } catch (l) { - throw ((l.clientVersion = this._clientVersion), l); - } - return (this._appliedParent = qt(this)); - } - get [Symbol.toStringTag]() { - return "PrismaClient"; - } - $on(n, i) { - return ( - n === "beforeExit" - ? this._engine.onBeforeExit(i) - : n && this._engineConfig.logEmitter.on(n, i), - this - ); - } - $connect() { - try { - return this._engine.start(); - } catch (n) { - throw ((n.clientVersion = this._clientVersion), n); - } - } - async $disconnect() { - try { - await this._engine.stop(); - } catch (n) { - throw ((n.clientVersion = this._clientVersion), n); - } finally { - $i(); - } - } - $executeRawInternal(n, i, o, s) { - let a = this._activeProvider; - return this._request({ - action: "executeRaw", - args: o, - transaction: n, - clientMethod: i, - argsMapper: ei({ clientMethod: i, activeProvider: a }), - callsite: Ne(this._errorFormat), - dataPath: [], - middlewareArgsMapper: s, - }); - } - $executeRaw(n, ...i) { - return this._createPrismaPromise((o) => { - if (n.raw !== void 0 || n.sql !== void 0) { - let [s, a] = la(n, i); - return ( - Xn( - this._activeProvider, - s.text, - s.values, - Array.isArray(n) - ? "prisma.$executeRaw``" - : "prisma.$executeRaw(sql``)", - ), - this.$executeRawInternal(o, "$executeRaw", s, a) - ); - } - throw new ee( - "`$executeRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$executeRaw`UPDATE User SET cool = ${true} WHERE email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#executeraw\n", - { clientVersion: this._clientVersion }, - ); - }); - } - $executeRawUnsafe(n, ...i) { - return this._createPrismaPromise( - (o) => ( - Xn( - this._activeProvider, - n, - i, - "prisma.$executeRawUnsafe(, [...values])", - ), - this.$executeRawInternal(o, "$executeRawUnsafe", [n, ...i]) - ), - ); - } - $runCommandRaw(n) { - if (e.activeProvider !== "mongodb") - throw new ee( - `The ${e.activeProvider} provider does not support $runCommandRaw. Use the mongodb provider.`, - { clientVersion: this._clientVersion }, - ); - return this._createPrismaPromise((i) => - this._request({ - args: n, - clientMethod: "$runCommandRaw", - dataPath: [], - action: "runCommandRaw", - argsMapper: Us, - callsite: Ne(this._errorFormat), - transaction: i, - }), - ); - } - async $queryRawInternal(n, i, o, s) { - let a = this._activeProvider; - return this._request({ - action: "queryRaw", - args: o, - transaction: n, - clientMethod: i, - argsMapper: ei({ clientMethod: i, activeProvider: a }), - callsite: Ne(this._errorFormat), - dataPath: [], - middlewareArgsMapper: s, - }); - } - $queryRaw(n, ...i) { - return this._createPrismaPromise((o) => { - if (n.raw !== void 0 || n.sql !== void 0) - return this.$queryRawInternal(o, "$queryRaw", ...la(n, i)); - throw new ee( - "`$queryRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$queryRaw`SELECT * FROM User WHERE id = ${1} OR email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#queryraw\n", - { clientVersion: this._clientVersion }, - ); - }); - } - $queryRawTyped(n) { - return this._createPrismaPromise((i) => { - if (!this._hasPreviewFlag("typedSql")) - throw new ee( - "`typedSql` preview feature must be enabled in order to access $queryRawTyped API", - { clientVersion: this._clientVersion }, - ); - return this.$queryRawInternal(i, "$queryRawTyped", n); - }); - } - $queryRawUnsafe(n, ...i) { - return this._createPrismaPromise((o) => - this.$queryRawInternal(o, "$queryRawUnsafe", [n, ...i]), - ); - } - _transactionWithArray({ promises: n, options: i }) { - let o = Tp.nextId(), - s = Hs(n.length), - a = n.map((l, d) => { - if (l?.[Symbol.toStringTag] !== "PrismaPromise") - throw new Error( - "All elements of the array need to be Prisma Client promises. Hint: Please make sure you are not awaiting the Prisma client calls you intended to pass in the $transaction function.", - ); - let g = - i?.isolationLevel ?? - this._engineConfig.transactionOptions.isolationLevel, - h = { kind: "batch", id: o, index: d, isolationLevel: g, lock: s }; - return l.requestTransaction?.(h) ?? l; - }); - return aa(a); - } - async _transactionWithCallback({ callback: n, options: i }) { - let o = { traceparent: this._tracingHelper.getTraceParent() }, - s = { - maxWait: i?.maxWait ?? this._engineConfig.transactionOptions.maxWait, - timeout: i?.timeout ?? this._engineConfig.transactionOptions.timeout, - isolationLevel: - i?.isolationLevel ?? - this._engineConfig.transactionOptions.isolationLevel, - }, - a = await this._engine.transaction("start", o, s), - l; - try { - let d = { kind: "itx", ...a }; - ((l = await n(this._createItxClient(d))), - await this._engine.transaction("commit", o, a)); - } catch (d) { - throw ( - await this._engine.transaction("rollback", o, a).catch(() => {}), - d - ); - } - return l; - } - _createItxClient(n) { - return me( - qt( - me(as(this), [ - te("_appliedParent", () => this._appliedParent._createItxClient(n)), - te("_createPrismaPromise", () => ti(n)), - te(vp, () => n.id), - ]), - ), - [pt(ms)], - ); - } - $transaction(n, i) { - let o; - typeof n == "function" - ? this._engineConfig.adapter?.adapterName === "@prisma/adapter-d1" - ? (o = () => { - throw new Error( - "Cloudflare D1 does not support interactive transactions. We recommend you to refactor your queries with that limitation in mind, and use batch transactions with `prisma.$transactions([])` where applicable.", - ); - }) - : (o = () => - this._transactionWithCallback({ callback: n, options: i })) - : (o = () => this._transactionWithArray({ promises: n, options: i })); - let s = { name: "transaction", attributes: { method: "$transaction" } }; - return this._tracingHelper.runInChildSpan(s, o); - } - _request(n) { - n.otelParentCtx = this._tracingHelper.getActiveContext(); - let i = n.middlewareArgsMapper ?? Pp, - o = { - args: i.requestArgsToMiddlewareArgs(n.args), - dataPath: n.dataPath, - runInTransaction: !!n.transaction, - action: n.action, - model: n.model, - }, - s = { - operation: { - name: "operation", - attributes: { - method: o.action, - model: o.model, - name: o.model ? `${o.model}.${o.action}` : o.action, - }, - }, - }, - a = async (l) => { - let { runInTransaction: d, args: g, ...h } = l, - T = { ...n, ...h }; - (g && (T.args = i.middlewareArgsToRequestArgs(g)), - n.transaction !== void 0 && d === !1 && delete T.transaction); - let I = await hs(this, T); - return T.model - ? ps({ - result: I, - modelName: T.model, - args: T.args, - extensions: this._extensions, - runtimeDataModel: this._runtimeDataModel, - globalOmit: this._globalOmit, - }) - : I; - }; - return this._tracingHelper.runInChildSpan(s.operation, () => a(o)); - } - async _executeRequest({ - args: n, - clientMethod: i, - dataPath: o, - callsite: s, - action: a, - model: l, - argsMapper: d, - transaction: g, - unpacker: h, - otelParentCtx: T, - customDataProxyFetch: I, - }) { - try { - n = d ? d(n) : n; - let S = { name: "serialize" }, - C = this._tracingHelper.runInChildSpan(S, () => - Fn({ - modelName: l, - runtimeDataModel: this._runtimeDataModel, - action: a, - args: n, - clientMethod: i, - callsite: s, - extensions: this._extensions, - errorFormat: this._errorFormat, - clientVersion: this._clientVersion, - previewFeatures: this._previewFeatures, - globalOmit: this._globalOmit, - }), - ); - return ( - Z.enabled("prisma:client") && - (Fe("Prisma Client call:"), - Fe(`prisma.${i}(${Yo(n)})`), - Fe("Generated request:"), - Fe( - JSON.stringify(C, null, 2) + - ` -`, - )), - g?.kind === "batch" && (await g.lock), - this._requestHandler.request({ - protocolQuery: C, - modelName: l, - action: a, - clientMethod: i, - dataPath: o, - callsite: s, - args: n, - extensions: this._extensions, - transaction: g, - unpacker: h, - otelParentCtx: T, - otelChildCtx: this._tracingHelper.getActiveContext(), - globalOmit: this._globalOmit, - customDataProxyFetch: I, - }) - ); - } catch (S) { - throw ((S.clientVersion = this._clientVersion), S); - } - } - $metrics = new Lt(this); - _hasPreviewFlag(n) { - return !!this._engineConfig.previewFeatures?.includes(n); - } - $applyPendingMigrations() { - return this._engine.applyPendingMigrations(); - } - $extends = ls; - } - return t; -} -function la(e, t) { - return Rp(e) ? [new ue(e, t), Js] : [e, Qs]; -} -function Rp(e) { - return Array.isArray(e) && Array.isArray(e.raw); -} -f(); -u(); -c(); -p(); -m(); -var Cp = new Set([ - "toJSON", - "$$typeof", - "asymmetricMatch", - Symbol.iterator, - Symbol.toStringTag, - Symbol.isConcatSpreadable, - Symbol.toPrimitive, -]); -function Sp(e) { - return new Proxy(e, { - get(t, r) { - if (r in t) return t[r]; - if (!Cp.has(r)) throw new TypeError(`Invalid enum value: ${String(r)}`); - }, - }); -} -f(); -u(); -c(); -p(); -m(); -var export_warnEnvConflicts = void 0; -export { - Rr as DMMF, - Z as Debug, - Me as Decimal, - Ci as Extensions, - Lt as MetricsClient, - Q as PrismaClientInitializationError, - se as PrismaClientKnownRequestError, - Ce as PrismaClientRustPanicError, - ae as PrismaClientUnknownRequestError, - ee as PrismaClientValidationError, - Ii as Public, - ue as Sql, - nc as createParam, - fc as defineDmmfProperty, - $t as deserializeJsonResponse, - oi as deserializeRawResult, - Il as dmmfToRuntimeDataModel, - yc as empty, - Ap as getPrismaClient, - Jn as getRuntime, - hc as join, - Sp as makeStrictEnum, - gc as makeTypedQueryFactory, - kn as objectEnumValues, - Ko as raw, - Fn as serializeJsonQuery, - _n as skip, - Wo as sqltag, - export_warnEnvConflicts as warnEnvConflicts, - hr as warnOnce, -}; +${n}`}f();u();c();p();m();function aa(e){return e.length===0?Promise.resolve([]):new Promise((t,r)=>{let n=new Array(e.length),i=null,o=!1,s=0,a=()=>{o||(s++,s===e.length&&(o=!0,i?r(i):t(n)))},l=d=>{o||(o=!0,r(d))};for(let d=0;d{n[d]=g,a()},g=>{if(!zr(g)){l(g);return}g.batchRequestIdx===d?l(g):(i||(i=g),a())})})}var Fe=Z("prisma:client");typeof globalThis=="object"&&(globalThis.NODE_CLIENT=!0);var Pp={requestArgsToMiddlewareArgs:e=>e,middlewareArgsToRequestArgs:e=>e},vp=Symbol.for("prisma.client.transaction.id"),Tp={id:0,nextId(){return++this.id}};function Ap(e){class t{_originalClient=this;_runtimeDataModel;_requestHandler;_connectionPromise;_disconnectionPromise;_engineConfig;_accelerateEngineConfig;_clientVersion;_errorFormat;_tracingHelper;_previewFeatures;_activeProvider;_globalOmit;_extensions;_engine;_appliedParent;_createPrismaPromise=ti();constructor(n){e=n?.__internal?.configOverride?.(e)??e,Ps(e),n&&sa(n,e);let i=new Vr().on("error",()=>{});this._extensions=ct.empty(),this._previewFeatures=Ls(e),this._clientVersion=e.clientVersion??ea,this._activeProvider=e.activeProvider,this._globalOmit=n?.omit,this._tracingHelper=Ws();let o=e.relativeEnvPaths&&{rootEnvPath:e.relativeEnvPaths.rootEnvPath&&pr.resolve(e.dirname,e.relativeEnvPaths.rootEnvPath),schemaEnvPath:e.relativeEnvPaths.schemaEnvPath&&pr.resolve(e.dirname,e.relativeEnvPaths.schemaEnvPath)},s;if(n?.adapter){s=n.adapter;let l=e.activeProvider==="postgresql"||e.activeProvider==="cockroachdb"?"postgres":e.activeProvider;if(s.provider!==l)throw new Q(`The Driver Adapter \`${s.adapterName}\`, based on \`${s.provider}\`, is not compatible with the provider \`${l}\` specified in the Prisma schema.`,this._clientVersion);if(n.datasources||n.datasourceUrl!==void 0)throw new Q("Custom datasource configuration is not compatible with Prisma Driver Adapters. Please define the database connection string directly in the Driver Adapter configuration.",this._clientVersion)}let a=e.injectableEdgeEnv?.();try{let l=n??{},d=l.__internal??{},g=d.debug===!0;g&&Z.enable("prisma:client");let h=pr.resolve(e.dirname,e.relativePath);ji.existsSync(h)||(h=e.dirname),Fe("dirname",e.dirname),Fe("relativePath",e.relativePath),Fe("cwd",h);let T=d.engine||{};if(l.errorFormat?this._errorFormat=l.errorFormat:y.env.NODE_ENV==="production"?this._errorFormat="minimal":y.env.NO_COLOR?this._errorFormat="colorless":this._errorFormat="colorless",this._runtimeDataModel=e.runtimeDataModel,this._engineConfig={cwd:h,dirname:e.dirname,enableDebugLogs:g,allowTriggerPanic:T.allowTriggerPanic,prismaPath:T.binaryPath??void 0,engineEndpoint:T.endpoint,generator:e.generator,showColors:this._errorFormat==="pretty",logLevel:l.log&&zs(l.log),logQueries:l.log&&!!(typeof l.log=="string"?l.log==="query":l.log.find(I=>typeof I=="string"?I==="query":I.level==="query")),env:a?.parsed??{},flags:[],engineWasm:e.engineWasm,compilerWasm:e.compilerWasm,clientVersion:e.clientVersion,engineVersion:e.engineVersion,previewFeatures:this._previewFeatures,activeProvider:e.activeProvider,inlineSchema:e.inlineSchema,overrideDatasources:vs(l,e.datasourceNames),inlineDatasources:e.inlineDatasources,inlineSchemaHash:e.inlineSchemaHash,tracingHelper:this._tracingHelper,transactionOptions:{maxWait:l.transactionOptions?.maxWait??2e3,timeout:l.transactionOptions?.timeout??5e3,isolationLevel:l.transactionOptions?.isolationLevel},logEmitter:i,isBundled:e.isBundled,adapter:s},this._accelerateEngineConfig={...this._engineConfig,accelerateUtils:{resolveDatasourceUrl:ft,getBatchRequestPayload:Gr,prismaGraphQLToJSError:Jr,PrismaClientUnknownRequestError:ae,PrismaClientInitializationError:Q,PrismaClientKnownRequestError:se,debug:Z("prisma:client:accelerateEngine"),engineVersion:ua.version,clientVersion:e.clientVersion}},Fe("clientVersion",e.clientVersion),this._engine=Fs(e,this._engineConfig),this._requestHandler=new Zr(this,i),l.log)for(let I of l.log){let S=typeof I=="string"?I:I.emit==="stdout"?I.level:null;S&&this.$on(S,C=>{Tt.log(`${Tt.tags[S]??""}`,C.message||C.query)})}}catch(l){throw l.clientVersion=this._clientVersion,l}return this._appliedParent=qt(this)}get[Symbol.toStringTag](){return"PrismaClient"}$on(n,i){return n==="beforeExit"?this._engine.onBeforeExit(i):n&&this._engineConfig.logEmitter.on(n,i),this}$connect(){try{return this._engine.start()}catch(n){throw n.clientVersion=this._clientVersion,n}}async $disconnect(){try{await this._engine.stop()}catch(n){throw n.clientVersion=this._clientVersion,n}finally{$i()}}$executeRawInternal(n,i,o,s){let a=this._activeProvider;return this._request({action:"executeRaw",args:o,transaction:n,clientMethod:i,argsMapper:ei({clientMethod:i,activeProvider:a}),callsite:Ne(this._errorFormat),dataPath:[],middlewareArgsMapper:s})}$executeRaw(n,...i){return this._createPrismaPromise(o=>{if(n.raw!==void 0||n.sql!==void 0){let[s,a]=la(n,i);return Xn(this._activeProvider,s.text,s.values,Array.isArray(n)?"prisma.$executeRaw``":"prisma.$executeRaw(sql``)"),this.$executeRawInternal(o,"$executeRaw",s,a)}throw new ee("`$executeRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$executeRaw`UPDATE User SET cool = ${true} WHERE email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#executeraw\n",{clientVersion:this._clientVersion})})}$executeRawUnsafe(n,...i){return this._createPrismaPromise(o=>(Xn(this._activeProvider,n,i,"prisma.$executeRawUnsafe(, [...values])"),this.$executeRawInternal(o,"$executeRawUnsafe",[n,...i])))}$runCommandRaw(n){if(e.activeProvider!=="mongodb")throw new ee(`The ${e.activeProvider} provider does not support $runCommandRaw. Use the mongodb provider.`,{clientVersion:this._clientVersion});return this._createPrismaPromise(i=>this._request({args:n,clientMethod:"$runCommandRaw",dataPath:[],action:"runCommandRaw",argsMapper:Us,callsite:Ne(this._errorFormat),transaction:i}))}async $queryRawInternal(n,i,o,s){let a=this._activeProvider;return this._request({action:"queryRaw",args:o,transaction:n,clientMethod:i,argsMapper:ei({clientMethod:i,activeProvider:a}),callsite:Ne(this._errorFormat),dataPath:[],middlewareArgsMapper:s})}$queryRaw(n,...i){return this._createPrismaPromise(o=>{if(n.raw!==void 0||n.sql!==void 0)return this.$queryRawInternal(o,"$queryRaw",...la(n,i));throw new ee("`$queryRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$queryRaw`SELECT * FROM User WHERE id = ${1} OR email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#queryraw\n",{clientVersion:this._clientVersion})})}$queryRawTyped(n){return this._createPrismaPromise(i=>{if(!this._hasPreviewFlag("typedSql"))throw new ee("`typedSql` preview feature must be enabled in order to access $queryRawTyped API",{clientVersion:this._clientVersion});return this.$queryRawInternal(i,"$queryRawTyped",n)})}$queryRawUnsafe(n,...i){return this._createPrismaPromise(o=>this.$queryRawInternal(o,"$queryRawUnsafe",[n,...i]))}_transactionWithArray({promises:n,options:i}){let o=Tp.nextId(),s=Hs(n.length),a=n.map((l,d)=>{if(l?.[Symbol.toStringTag]!=="PrismaPromise")throw new Error("All elements of the array need to be Prisma Client promises. Hint: Please make sure you are not awaiting the Prisma client calls you intended to pass in the $transaction function.");let g=i?.isolationLevel??this._engineConfig.transactionOptions.isolationLevel,h={kind:"batch",id:o,index:d,isolationLevel:g,lock:s};return l.requestTransaction?.(h)??l});return aa(a)}async _transactionWithCallback({callback:n,options:i}){let o={traceparent:this._tracingHelper.getTraceParent()},s={maxWait:i?.maxWait??this._engineConfig.transactionOptions.maxWait,timeout:i?.timeout??this._engineConfig.transactionOptions.timeout,isolationLevel:i?.isolationLevel??this._engineConfig.transactionOptions.isolationLevel},a=await this._engine.transaction("start",o,s),l;try{let d={kind:"itx",...a};l=await n(this._createItxClient(d)),await this._engine.transaction("commit",o,a)}catch(d){throw await this._engine.transaction("rollback",o,a).catch(()=>{}),d}return l}_createItxClient(n){return me(qt(me(as(this),[te("_appliedParent",()=>this._appliedParent._createItxClient(n)),te("_createPrismaPromise",()=>ti(n)),te(vp,()=>n.id)])),[pt(ms)])}$transaction(n,i){let o;typeof n=="function"?this._engineConfig.adapter?.adapterName==="@prisma/adapter-d1"?o=()=>{throw new Error("Cloudflare D1 does not support interactive transactions. We recommend you to refactor your queries with that limitation in mind, and use batch transactions with `prisma.$transactions([])` where applicable.")}:o=()=>this._transactionWithCallback({callback:n,options:i}):o=()=>this._transactionWithArray({promises:n,options:i});let s={name:"transaction",attributes:{method:"$transaction"}};return this._tracingHelper.runInChildSpan(s,o)}_request(n){n.otelParentCtx=this._tracingHelper.getActiveContext();let i=n.middlewareArgsMapper??Pp,o={args:i.requestArgsToMiddlewareArgs(n.args),dataPath:n.dataPath,runInTransaction:!!n.transaction,action:n.action,model:n.model},s={operation:{name:"operation",attributes:{method:o.action,model:o.model,name:o.model?`${o.model}.${o.action}`:o.action}}},a=async l=>{let{runInTransaction:d,args:g,...h}=l,T={...n,...h};g&&(T.args=i.middlewareArgsToRequestArgs(g)),n.transaction!==void 0&&d===!1&&delete T.transaction;let I=await hs(this,T);return T.model?ps({result:I,modelName:T.model,args:T.args,extensions:this._extensions,runtimeDataModel:this._runtimeDataModel,globalOmit:this._globalOmit}):I};return this._tracingHelper.runInChildSpan(s.operation,()=>a(o))}async _executeRequest({args:n,clientMethod:i,dataPath:o,callsite:s,action:a,model:l,argsMapper:d,transaction:g,unpacker:h,otelParentCtx:T,customDataProxyFetch:I}){try{n=d?d(n):n;let S={name:"serialize"},C=this._tracingHelper.runInChildSpan(S,()=>Fn({modelName:l,runtimeDataModel:this._runtimeDataModel,action:a,args:n,clientMethod:i,callsite:s,extensions:this._extensions,errorFormat:this._errorFormat,clientVersion:this._clientVersion,previewFeatures:this._previewFeatures,globalOmit:this._globalOmit}));return Z.enabled("prisma:client")&&(Fe("Prisma Client call:"),Fe(`prisma.${i}(${Yo(n)})`),Fe("Generated request:"),Fe(JSON.stringify(C,null,2)+` +`)),g?.kind==="batch"&&await g.lock,this._requestHandler.request({protocolQuery:C,modelName:l,action:a,clientMethod:i,dataPath:o,callsite:s,args:n,extensions:this._extensions,transaction:g,unpacker:h,otelParentCtx:T,otelChildCtx:this._tracingHelper.getActiveContext(),globalOmit:this._globalOmit,customDataProxyFetch:I})}catch(S){throw S.clientVersion=this._clientVersion,S}}$metrics=new Lt(this);_hasPreviewFlag(n){return!!this._engineConfig.previewFeatures?.includes(n)}$applyPendingMigrations(){return this._engine.applyPendingMigrations()}$extends=ls}return t}function la(e,t){return Rp(e)?[new ue(e,t),Js]:[e,Qs]}function Rp(e){return Array.isArray(e)&&Array.isArray(e.raw)}f();u();c();p();m();var Cp=new Set(["toJSON","$$typeof","asymmetricMatch",Symbol.iterator,Symbol.toStringTag,Symbol.isConcatSpreadable,Symbol.toPrimitive]);function Sp(e){return new Proxy(e,{get(t,r){if(r in t)return t[r];if(!Cp.has(r))throw new TypeError(`Invalid enum value: ${String(r)}`)}})}f();u();c();p();m();var export_warnEnvConflicts=void 0;export{Rr as DMMF,Z as Debug,Me as Decimal,Ci as Extensions,Lt as MetricsClient,Q as PrismaClientInitializationError,se as PrismaClientKnownRequestError,Ce as PrismaClientRustPanicError,ae as PrismaClientUnknownRequestError,ee as PrismaClientValidationError,Ii as Public,ue as Sql,nc as createParam,fc as defineDmmfProperty,$t as deserializeJsonResponse,oi as deserializeRawResult,Il as dmmfToRuntimeDataModel,yc as empty,Ap as getPrismaClient,Jn as getRuntime,hc as join,Sp as makeStrictEnum,gc as makeTypedQueryFactory,kn as objectEnumValues,Ko as raw,Fn as serializeJsonQuery,_n as skip,Wo as sqltag,export_warnEnvConflicts as warnEnvConflicts,hr as warnOnce}; //# sourceMappingURL=edge-esm.js.map diff --git a/generated/prisma/runtime/edge.js b/generated/prisma/runtime/edge.js index ff9c7bf6..68de515a 100644 --- a/generated/prisma/runtime/edge.js +++ b/generated/prisma/runtime/edge.js @@ -1,10123 +1,35 @@ + /* !!! This is code generated by Prisma. Do not edit directly. !!! /* eslint-disable */ // biome-ignore-all lint: generated file -"use strict"; -var ba = Object.create; -var lr = Object.defineProperty; -var xa = Object.getOwnPropertyDescriptor; -var Pa = Object.getOwnPropertyNames; -var va = Object.getPrototypeOf, - Ta = Object.prototype.hasOwnProperty; -var fe = (e, t) => () => (e && (t = e((e = 0))), t); -var Je = (e, t) => () => (t || e((t = { exports: {} }).exports, t), t.exports), - vt = (e, t) => { - for (var r in t) lr(e, r, { get: t[r], enumerable: !0 }); - }, - ci = (e, t, r, n) => { - if ((t && typeof t == "object") || typeof t == "function") - for (let i of Pa(t)) - !Ta.call(e, i) && - i !== r && - lr(e, i, { - get: () => t[i], - enumerable: !(n = xa(t, i)) || n.enumerable, - }); - return e; - }; -var Qe = (e, t, r) => ( - (r = e != null ? ba(va(e)) : {}), - ci( - t || !e || !e.__esModule - ? lr(r, "default", { value: e, enumerable: !0 }) - : r, - e, - ) - ), - Aa = (e) => ci(lr({}, "__esModule", { value: !0 }), e); -var y, - b, - u = fe(() => { - "use strict"; - ((y = { - nextTick: (e, ...t) => { - setTimeout(() => { - e(...t); - }, 0); - }, - env: {}, - version: "", - cwd: () => "/", - stderr: {}, - argv: ["/bin/node"], - pid: 1e4, - }), - ({ cwd: b } = y)); - }); -var x, - c = fe(() => { - "use strict"; - x = - globalThis.performance ?? - (() => { - let e = Date.now(); - return { now: () => Date.now() - e }; - })(); - }); -var E, - p = fe(() => { - "use strict"; - E = () => {}; - E.prototype = E; - }); -var m = fe(() => { - "use strict"; -}); -var Ii = Je((ze) => { - "use strict"; - f(); - u(); - c(); - p(); - m(); - var gi = (e, t) => () => ( - t || e((t = { exports: {} }).exports, t), - t.exports - ), - Ra = gi((e) => { - "use strict"; - ((e.byteLength = l), (e.toByteArray = g), (e.fromByteArray = I)); - var t = [], - r = [], - n = typeof Uint8Array < "u" ? Uint8Array : Array, - i = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; - for (o = 0, s = i.length; o < s; ++o) - ((t[o] = i[o]), (r[i.charCodeAt(o)] = o)); - var o, s; - ((r[45] = 62), (r[95] = 63)); - function a(S) { - var C = S.length; - if (C % 4 > 0) - throw new Error("Invalid string. Length must be a multiple of 4"); - var M = S.indexOf("="); - M === -1 && (M = C); - var F = M === C ? 0 : 4 - (M % 4); - return [M, F]; - } - function l(S) { - var C = a(S), - M = C[0], - F = C[1]; - return ((M + F) * 3) / 4 - F; - } - function d(S, C, M) { - return ((C + M) * 3) / 4 - M; - } - function g(S) { - var C, - M = a(S), - F = M[0], - B = M[1], - O = new n(d(S, F, B)), - L = 0, - le = B > 0 ? F - 4 : F, - J; - for (J = 0; J < le; J += 4) - ((C = - (r[S.charCodeAt(J)] << 18) | - (r[S.charCodeAt(J + 1)] << 12) | - (r[S.charCodeAt(J + 2)] << 6) | - r[S.charCodeAt(J + 3)]), - (O[L++] = (C >> 16) & 255), - (O[L++] = (C >> 8) & 255), - (O[L++] = C & 255)); - return ( - B === 2 && - ((C = (r[S.charCodeAt(J)] << 2) | (r[S.charCodeAt(J + 1)] >> 4)), - (O[L++] = C & 255)), - B === 1 && - ((C = - (r[S.charCodeAt(J)] << 10) | - (r[S.charCodeAt(J + 1)] << 4) | - (r[S.charCodeAt(J + 2)] >> 2)), - (O[L++] = (C >> 8) & 255), - (O[L++] = C & 255)), - O - ); - } - function h(S) { - return ( - t[(S >> 18) & 63] + t[(S >> 12) & 63] + t[(S >> 6) & 63] + t[S & 63] - ); - } - function T(S, C, M) { - for (var F, B = [], O = C; O < M; O += 3) - ((F = - ((S[O] << 16) & 16711680) + - ((S[O + 1] << 8) & 65280) + - (S[O + 2] & 255)), - B.push(h(F))); - return B.join(""); - } - function I(S) { - for ( - var C, M = S.length, F = M % 3, B = [], O = 16383, L = 0, le = M - F; - L < le; - L += O - ) - B.push(T(S, L, L + O > le ? le : L + O)); - return ( - F === 1 - ? ((C = S[M - 1]), B.push(t[C >> 2] + t[(C << 4) & 63] + "==")) - : F === 2 && - ((C = (S[M - 2] << 8) + S[M - 1]), - B.push(t[C >> 10] + t[(C >> 4) & 63] + t[(C << 2) & 63] + "=")), - B.join("") - ); - } - }), - Ca = gi((e) => { - ((e.read = function (t, r, n, i, o) { - var s, - a, - l = o * 8 - i - 1, - d = (1 << l) - 1, - g = d >> 1, - h = -7, - T = n ? o - 1 : 0, - I = n ? -1 : 1, - S = t[r + T]; - for ( - T += I, s = S & ((1 << -h) - 1), S >>= -h, h += l; - h > 0; - s = s * 256 + t[r + T], T += I, h -= 8 - ); - for ( - a = s & ((1 << -h) - 1), s >>= -h, h += i; - h > 0; - a = a * 256 + t[r + T], T += I, h -= 8 - ); - if (s === 0) s = 1 - g; - else { - if (s === d) return a ? NaN : (S ? -1 : 1) * (1 / 0); - ((a = a + Math.pow(2, i)), (s = s - g)); - } - return (S ? -1 : 1) * a * Math.pow(2, s - i); - }), - (e.write = function (t, r, n, i, o, s) { - var a, - l, - d, - g = s * 8 - o - 1, - h = (1 << g) - 1, - T = h >> 1, - I = o === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0, - S = i ? 0 : s - 1, - C = i ? 1 : -1, - M = r < 0 || (r === 0 && 1 / r < 0) ? 1 : 0; - for ( - r = Math.abs(r), - isNaN(r) || r === 1 / 0 - ? ((l = isNaN(r) ? 1 : 0), (a = h)) - : ((a = Math.floor(Math.log(r) / Math.LN2)), - r * (d = Math.pow(2, -a)) < 1 && (a--, (d *= 2)), - a + T >= 1 ? (r += I / d) : (r += I * Math.pow(2, 1 - T)), - r * d >= 2 && (a++, (d /= 2)), - a + T >= h - ? ((l = 0), (a = h)) - : a + T >= 1 - ? ((l = (r * d - 1) * Math.pow(2, o)), (a = a + T)) - : ((l = r * Math.pow(2, T - 1) * Math.pow(2, o)), - (a = 0))); - o >= 8; - t[n + S] = l & 255, S += C, l /= 256, o -= 8 - ); - for ( - a = (a << o) | l, g += o; - g > 0; - t[n + S] = a & 255, S += C, a /= 256, g -= 8 - ); - t[n + S - C] |= M * 128; - })); - }), - un = Ra(), - We = Ca(), - pi = - typeof Symbol == "function" && typeof Symbol.for == "function" - ? Symbol.for("nodejs.util.inspect.custom") - : null; - ze.Buffer = A; - ze.SlowBuffer = Ma; - ze.INSPECT_MAX_BYTES = 50; - var ur = 2147483647; - ze.kMaxLength = ur; - A.TYPED_ARRAY_SUPPORT = Sa(); - !A.TYPED_ARRAY_SUPPORT && - typeof console < "u" && - typeof console.error == "function" && - console.error( - "This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.", - ); - function Sa() { - try { - let e = new Uint8Array(1), - t = { - foo: function () { - return 42; - }, - }; - return ( - Object.setPrototypeOf(t, Uint8Array.prototype), - Object.setPrototypeOf(e, t), - e.foo() === 42 - ); - } catch { - return !1; - } - } - Object.defineProperty(A.prototype, "parent", { - enumerable: !0, - get: function () { - if (A.isBuffer(this)) return this.buffer; - }, - }); - Object.defineProperty(A.prototype, "offset", { - enumerable: !0, - get: function () { - if (A.isBuffer(this)) return this.byteOffset; - }, - }); - function xe(e) { - if (e > ur) - throw new RangeError( - 'The value "' + e + '" is invalid for option "size"', - ); - let t = new Uint8Array(e); - return (Object.setPrototypeOf(t, A.prototype), t); - } - function A(e, t, r) { - if (typeof e == "number") { - if (typeof t == "string") - throw new TypeError( - 'The "string" argument must be of type string. Received type number', - ); - return mn(e); - } - return hi(e, t, r); - } - A.poolSize = 8192; - function hi(e, t, r) { - if (typeof e == "string") return Oa(e, t); - if (ArrayBuffer.isView(e)) return ka(e); - if (e == null) - throw new TypeError( - "The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + - typeof e, - ); - if ( - de(e, ArrayBuffer) || - (e && de(e.buffer, ArrayBuffer)) || - (typeof SharedArrayBuffer < "u" && - (de(e, SharedArrayBuffer) || (e && de(e.buffer, SharedArrayBuffer)))) - ) - return wi(e, t, r); - if (typeof e == "number") - throw new TypeError( - 'The "value" argument must not be of type number. Received type number', - ); - let n = e.valueOf && e.valueOf(); - if (n != null && n !== e) return A.from(n, t, r); - let i = Da(e); - if (i) return i; - if ( - typeof Symbol < "u" && - Symbol.toPrimitive != null && - typeof e[Symbol.toPrimitive] == "function" - ) - return A.from(e[Symbol.toPrimitive]("string"), t, r); - throw new TypeError( - "The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + - typeof e, - ); - } - A.from = function (e, t, r) { - return hi(e, t, r); - }; - Object.setPrototypeOf(A.prototype, Uint8Array.prototype); - Object.setPrototypeOf(A, Uint8Array); - function yi(e) { - if (typeof e != "number") - throw new TypeError('"size" argument must be of type number'); - if (e < 0) - throw new RangeError( - 'The value "' + e + '" is invalid for option "size"', - ); - } - function Ia(e, t, r) { - return ( - yi(e), - e <= 0 - ? xe(e) - : t !== void 0 - ? typeof r == "string" - ? xe(e).fill(t, r) - : xe(e).fill(t) - : xe(e) - ); - } - A.alloc = function (e, t, r) { - return Ia(e, t, r); - }; - function mn(e) { - return (yi(e), xe(e < 0 ? 0 : fn(e) | 0)); - } - A.allocUnsafe = function (e) { - return mn(e); - }; - A.allocUnsafeSlow = function (e) { - return mn(e); - }; - function Oa(e, t) { - if (((typeof t != "string" || t === "") && (t = "utf8"), !A.isEncoding(t))) - throw new TypeError("Unknown encoding: " + t); - let r = Ei(e, t) | 0, - n = xe(r), - i = n.write(e, t); - return (i !== r && (n = n.slice(0, i)), n); - } - function cn(e) { - let t = e.length < 0 ? 0 : fn(e.length) | 0, - r = xe(t); - for (let n = 0; n < t; n += 1) r[n] = e[n] & 255; - return r; - } - function ka(e) { - if (de(e, Uint8Array)) { - let t = new Uint8Array(e); - return wi(t.buffer, t.byteOffset, t.byteLength); - } - return cn(e); - } - function wi(e, t, r) { - if (t < 0 || e.byteLength < t) - throw new RangeError('"offset" is outside of buffer bounds'); - if (e.byteLength < t + (r || 0)) - throw new RangeError('"length" is outside of buffer bounds'); - let n; - return ( - t === void 0 && r === void 0 - ? (n = new Uint8Array(e)) - : r === void 0 - ? (n = new Uint8Array(e, t)) - : (n = new Uint8Array(e, t, r)), - Object.setPrototypeOf(n, A.prototype), - n - ); - } - function Da(e) { - if (A.isBuffer(e)) { - let t = fn(e.length) | 0, - r = xe(t); - return (r.length === 0 || e.copy(r, 0, 0, t), r); - } - if (e.length !== void 0) - return typeof e.length != "number" || gn(e.length) ? xe(0) : cn(e); - if (e.type === "Buffer" && Array.isArray(e.data)) return cn(e.data); - } - function fn(e) { - if (e >= ur) - throw new RangeError( - "Attempt to allocate Buffer larger than maximum size: 0x" + - ur.toString(16) + - " bytes", - ); - return e | 0; - } - function Ma(e) { - return (+e != e && (e = 0), A.alloc(+e)); - } - A.isBuffer = function (e) { - return e != null && e._isBuffer === !0 && e !== A.prototype; - }; - A.compare = function (e, t) { - if ( - (de(e, Uint8Array) && (e = A.from(e, e.offset, e.byteLength)), - de(t, Uint8Array) && (t = A.from(t, t.offset, t.byteLength)), - !A.isBuffer(e) || !A.isBuffer(t)) - ) - throw new TypeError( - 'The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array', - ); - if (e === t) return 0; - let r = e.length, - n = t.length; - for (let i = 0, o = Math.min(r, n); i < o; ++i) - if (e[i] !== t[i]) { - ((r = e[i]), (n = t[i])); - break; - } - return r < n ? -1 : n < r ? 1 : 0; - }; - A.isEncoding = function (e) { - switch (String(e).toLowerCase()) { - case "hex": - case "utf8": - case "utf-8": - case "ascii": - case "latin1": - case "binary": - case "base64": - case "ucs2": - case "ucs-2": - case "utf16le": - case "utf-16le": - return !0; - default: - return !1; - } - }; - A.concat = function (e, t) { - if (!Array.isArray(e)) - throw new TypeError('"list" argument must be an Array of Buffers'); - if (e.length === 0) return A.alloc(0); - let r; - if (t === void 0) for (t = 0, r = 0; r < e.length; ++r) t += e[r].length; - let n = A.allocUnsafe(t), - i = 0; - for (r = 0; r < e.length; ++r) { - let o = e[r]; - if (de(o, Uint8Array)) - i + o.length > n.length - ? (A.isBuffer(o) || (o = A.from(o)), o.copy(n, i)) - : Uint8Array.prototype.set.call(n, o, i); - else if (A.isBuffer(o)) o.copy(n, i); - else throw new TypeError('"list" argument must be an Array of Buffers'); - i += o.length; - } - return n; - }; - function Ei(e, t) { - if (A.isBuffer(e)) return e.length; - if (ArrayBuffer.isView(e) || de(e, ArrayBuffer)) return e.byteLength; - if (typeof e != "string") - throw new TypeError( - 'The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type ' + - typeof e, - ); - let r = e.length, - n = arguments.length > 2 && arguments[2] === !0; - if (!n && r === 0) return 0; - let i = !1; - for (;;) - switch (t) { - case "ascii": - case "latin1": - case "binary": - return r; - case "utf8": - case "utf-8": - return pn(e).length; - case "ucs2": - case "ucs-2": - case "utf16le": - case "utf-16le": - return r * 2; - case "hex": - return r >>> 1; - case "base64": - return Si(e).length; - default: - if (i) return n ? -1 : pn(e).length; - ((t = ("" + t).toLowerCase()), (i = !0)); - } - } - A.byteLength = Ei; - function _a(e, t, r) { - let n = !1; - if ( - ((t === void 0 || t < 0) && (t = 0), - t > this.length || - ((r === void 0 || r > this.length) && (r = this.length), r <= 0) || - ((r >>>= 0), (t >>>= 0), r <= t)) - ) - return ""; - for (e || (e = "utf8"); ; ) - switch (e) { - case "hex": - return Ga(this, t, r); - case "utf8": - case "utf-8": - return xi(this, t, r); - case "ascii": - return $a(this, t, r); - case "latin1": - case "binary": - return ja(this, t, r); - case "base64": - return qa(this, t, r); - case "ucs2": - case "ucs-2": - case "utf16le": - case "utf-16le": - return Ja(this, t, r); - default: - if (n) throw new TypeError("Unknown encoding: " + e); - ((e = (e + "").toLowerCase()), (n = !0)); - } - } - A.prototype._isBuffer = !0; - function Le(e, t, r) { - let n = e[t]; - ((e[t] = e[r]), (e[r] = n)); - } - A.prototype.swap16 = function () { - let e = this.length; - if (e % 2 !== 0) - throw new RangeError("Buffer size must be a multiple of 16-bits"); - for (let t = 0; t < e; t += 2) Le(this, t, t + 1); - return this; - }; - A.prototype.swap32 = function () { - let e = this.length; - if (e % 4 !== 0) - throw new RangeError("Buffer size must be a multiple of 32-bits"); - for (let t = 0; t < e; t += 4) (Le(this, t, t + 3), Le(this, t + 1, t + 2)); - return this; - }; - A.prototype.swap64 = function () { - let e = this.length; - if (e % 8 !== 0) - throw new RangeError("Buffer size must be a multiple of 64-bits"); - for (let t = 0; t < e; t += 8) - (Le(this, t, t + 7), - Le(this, t + 1, t + 6), - Le(this, t + 2, t + 5), - Le(this, t + 3, t + 4)); - return this; - }; - A.prototype.toString = function () { - let e = this.length; - return e === 0 - ? "" - : arguments.length === 0 - ? xi(this, 0, e) - : _a.apply(this, arguments); - }; - A.prototype.toLocaleString = A.prototype.toString; - A.prototype.equals = function (e) { - if (!A.isBuffer(e)) throw new TypeError("Argument must be a Buffer"); - return this === e ? !0 : A.compare(this, e) === 0; - }; - A.prototype.inspect = function () { - let e = "", - t = ze.INSPECT_MAX_BYTES; - return ( - (e = this.toString("hex", 0, t) - .replace(/(.{2})/g, "$1 ") - .trim()), - this.length > t && (e += " ... "), - "" - ); - }; - pi && (A.prototype[pi] = A.prototype.inspect); - A.prototype.compare = function (e, t, r, n, i) { - if ( - (de(e, Uint8Array) && (e = A.from(e, e.offset, e.byteLength)), - !A.isBuffer(e)) - ) - throw new TypeError( - 'The "target" argument must be one of type Buffer or Uint8Array. Received type ' + - typeof e, - ); - if ( - (t === void 0 && (t = 0), - r === void 0 && (r = e ? e.length : 0), - n === void 0 && (n = 0), - i === void 0 && (i = this.length), - t < 0 || r > e.length || n < 0 || i > this.length) - ) - throw new RangeError("out of range index"); - if (n >= i && t >= r) return 0; - if (n >= i) return -1; - if (t >= r) return 1; - if (((t >>>= 0), (r >>>= 0), (n >>>= 0), (i >>>= 0), this === e)) return 0; - let o = i - n, - s = r - t, - a = Math.min(o, s), - l = this.slice(n, i), - d = e.slice(t, r); - for (let g = 0; g < a; ++g) - if (l[g] !== d[g]) { - ((o = l[g]), (s = d[g])); - break; - } - return o < s ? -1 : s < o ? 1 : 0; - }; - function bi(e, t, r, n, i) { - if (e.length === 0) return -1; - if ( - (typeof r == "string" - ? ((n = r), (r = 0)) - : r > 2147483647 - ? (r = 2147483647) - : r < -2147483648 && (r = -2147483648), - (r = +r), - gn(r) && (r = i ? 0 : e.length - 1), - r < 0 && (r = e.length + r), - r >= e.length) - ) { - if (i) return -1; - r = e.length - 1; - } else if (r < 0) - if (i) r = 0; - else return -1; - if ((typeof t == "string" && (t = A.from(t, n)), A.isBuffer(t))) - return t.length === 0 ? -1 : mi(e, t, r, n, i); - if (typeof t == "number") - return ( - (t = t & 255), - typeof Uint8Array.prototype.indexOf == "function" - ? i - ? Uint8Array.prototype.indexOf.call(e, t, r) - : Uint8Array.prototype.lastIndexOf.call(e, t, r) - : mi(e, [t], r, n, i) - ); - throw new TypeError("val must be string, number or Buffer"); - } - function mi(e, t, r, n, i) { - let o = 1, - s = e.length, - a = t.length; - if ( - n !== void 0 && - ((n = String(n).toLowerCase()), - n === "ucs2" || n === "ucs-2" || n === "utf16le" || n === "utf-16le") - ) { - if (e.length < 2 || t.length < 2) return -1; - ((o = 2), (s /= 2), (a /= 2), (r /= 2)); - } - function l(g, h) { - return o === 1 ? g[h] : g.readUInt16BE(h * o); - } - let d; - if (i) { - let g = -1; - for (d = r; d < s; d++) - if (l(e, d) === l(t, g === -1 ? 0 : d - g)) { - if ((g === -1 && (g = d), d - g + 1 === a)) return g * o; - } else (g !== -1 && (d -= d - g), (g = -1)); - } else - for (r + a > s && (r = s - a), d = r; d >= 0; d--) { - let g = !0; - for (let h = 0; h < a; h++) - if (l(e, d + h) !== l(t, h)) { - g = !1; - break; - } - if (g) return d; - } - return -1; - } - A.prototype.includes = function (e, t, r) { - return this.indexOf(e, t, r) !== -1; - }; - A.prototype.indexOf = function (e, t, r) { - return bi(this, e, t, r, !0); - }; - A.prototype.lastIndexOf = function (e, t, r) { - return bi(this, e, t, r, !1); - }; - function Na(e, t, r, n) { - r = Number(r) || 0; - let i = e.length - r; - n ? ((n = Number(n)), n > i && (n = i)) : (n = i); - let o = t.length; - n > o / 2 && (n = o / 2); - let s; - for (s = 0; s < n; ++s) { - let a = parseInt(t.substr(s * 2, 2), 16); - if (gn(a)) return s; - e[r + s] = a; - } - return s; - } - function Fa(e, t, r, n) { - return cr(pn(t, e.length - r), e, r, n); - } - function La(e, t, r, n) { - return cr(Ha(t), e, r, n); - } - function Ua(e, t, r, n) { - return cr(Si(t), e, r, n); - } - function Ba(e, t, r, n) { - return cr(za(t, e.length - r), e, r, n); - } - A.prototype.write = function (e, t, r, n) { - if (t === void 0) ((n = "utf8"), (r = this.length), (t = 0)); - else if (r === void 0 && typeof t == "string") - ((n = t), (r = this.length), (t = 0)); - else if (isFinite(t)) - ((t = t >>> 0), - isFinite(r) - ? ((r = r >>> 0), n === void 0 && (n = "utf8")) - : ((n = r), (r = void 0))); - else - throw new Error( - "Buffer.write(string, encoding, offset[, length]) is no longer supported", - ); - let i = this.length - t; - if ( - ((r === void 0 || r > i) && (r = i), - (e.length > 0 && (r < 0 || t < 0)) || t > this.length) - ) - throw new RangeError("Attempt to write outside buffer bounds"); - n || (n = "utf8"); - let o = !1; - for (;;) - switch (n) { - case "hex": - return Na(this, e, t, r); - case "utf8": - case "utf-8": - return Fa(this, e, t, r); - case "ascii": - case "latin1": - case "binary": - return La(this, e, t, r); - case "base64": - return Ua(this, e, t, r); - case "ucs2": - case "ucs-2": - case "utf16le": - case "utf-16le": - return Ba(this, e, t, r); - default: - if (o) throw new TypeError("Unknown encoding: " + n); - ((n = ("" + n).toLowerCase()), (o = !0)); - } - }; - A.prototype.toJSON = function () { - return { - type: "Buffer", - data: Array.prototype.slice.call(this._arr || this, 0), - }; - }; - function qa(e, t, r) { - return t === 0 && r === e.length - ? un.fromByteArray(e) - : un.fromByteArray(e.slice(t, r)); - } - function xi(e, t, r) { - r = Math.min(e.length, r); - let n = [], - i = t; - for (; i < r; ) { - let o = e[i], - s = null, - a = o > 239 ? 4 : o > 223 ? 3 : o > 191 ? 2 : 1; - if (i + a <= r) { - let l, d, g, h; - switch (a) { - case 1: - o < 128 && (s = o); - break; - case 2: - ((l = e[i + 1]), - (l & 192) === 128 && - ((h = ((o & 31) << 6) | (l & 63)), h > 127 && (s = h))); - break; - case 3: - ((l = e[i + 1]), - (d = e[i + 2]), - (l & 192) === 128 && - (d & 192) === 128 && - ((h = ((o & 15) << 12) | ((l & 63) << 6) | (d & 63)), - h > 2047 && (h < 55296 || h > 57343) && (s = h))); - break; - case 4: - ((l = e[i + 1]), - (d = e[i + 2]), - (g = e[i + 3]), - (l & 192) === 128 && - (d & 192) === 128 && - (g & 192) === 128 && - ((h = - ((o & 15) << 18) | - ((l & 63) << 12) | - ((d & 63) << 6) | - (g & 63)), - h > 65535 && h < 1114112 && (s = h))); - } - } - (s === null - ? ((s = 65533), (a = 1)) - : s > 65535 && - ((s -= 65536), - n.push(((s >>> 10) & 1023) | 55296), - (s = 56320 | (s & 1023))), - n.push(s), - (i += a)); - } - return Va(n); - } - var fi = 4096; - function Va(e) { - let t = e.length; - if (t <= fi) return String.fromCharCode.apply(String, e); - let r = "", - n = 0; - for (; n < t; ) - r += String.fromCharCode.apply(String, e.slice(n, (n += fi))); - return r; - } - function $a(e, t, r) { - let n = ""; - r = Math.min(e.length, r); - for (let i = t; i < r; ++i) n += String.fromCharCode(e[i] & 127); - return n; - } - function ja(e, t, r) { - let n = ""; - r = Math.min(e.length, r); - for (let i = t; i < r; ++i) n += String.fromCharCode(e[i]); - return n; - } - function Ga(e, t, r) { - let n = e.length; - ((!t || t < 0) && (t = 0), (!r || r < 0 || r > n) && (r = n)); - let i = ""; - for (let o = t; o < r; ++o) i += Ya[e[o]]; - return i; - } - function Ja(e, t, r) { - let n = e.slice(t, r), - i = ""; - for (let o = 0; o < n.length - 1; o += 2) - i += String.fromCharCode(n[o] + n[o + 1] * 256); - return i; - } - A.prototype.slice = function (e, t) { - let r = this.length; - ((e = ~~e), - (t = t === void 0 ? r : ~~t), - e < 0 ? ((e += r), e < 0 && (e = 0)) : e > r && (e = r), - t < 0 ? ((t += r), t < 0 && (t = 0)) : t > r && (t = r), - t < e && (t = e)); - let n = this.subarray(e, t); - return (Object.setPrototypeOf(n, A.prototype), n); - }; - function W(e, t, r) { - if (e % 1 !== 0 || e < 0) throw new RangeError("offset is not uint"); - if (e + t > r) - throw new RangeError("Trying to access beyond buffer length"); - } - A.prototype.readUintLE = A.prototype.readUIntLE = function (e, t, r) { - ((e = e >>> 0), (t = t >>> 0), r || W(e, t, this.length)); - let n = this[e], - i = 1, - o = 0; - for (; ++o < t && (i *= 256); ) n += this[e + o] * i; - return n; - }; - A.prototype.readUintBE = A.prototype.readUIntBE = function (e, t, r) { - ((e = e >>> 0), (t = t >>> 0), r || W(e, t, this.length)); - let n = this[e + --t], - i = 1; - for (; t > 0 && (i *= 256); ) n += this[e + --t] * i; - return n; - }; - A.prototype.readUint8 = A.prototype.readUInt8 = function (e, t) { - return ((e = e >>> 0), t || W(e, 1, this.length), this[e]); - }; - A.prototype.readUint16LE = A.prototype.readUInt16LE = function (e, t) { - return ( - (e = e >>> 0), - t || W(e, 2, this.length), - this[e] | (this[e + 1] << 8) - ); - }; - A.prototype.readUint16BE = A.prototype.readUInt16BE = function (e, t) { - return ( - (e = e >>> 0), - t || W(e, 2, this.length), - (this[e] << 8) | this[e + 1] - ); - }; - A.prototype.readUint32LE = A.prototype.readUInt32LE = function (e, t) { - return ( - (e = e >>> 0), - t || W(e, 4, this.length), - (this[e] | (this[e + 1] << 8) | (this[e + 2] << 16)) + - this[e + 3] * 16777216 - ); - }; - A.prototype.readUint32BE = A.prototype.readUInt32BE = function (e, t) { - return ( - (e = e >>> 0), - t || W(e, 4, this.length), - this[e] * 16777216 + - ((this[e + 1] << 16) | (this[e + 2] << 8) | this[e + 3]) - ); - }; - A.prototype.readBigUInt64LE = Se(function (e) { - ((e = e >>> 0), He(e, "offset")); - let t = this[e], - r = this[e + 7]; - (t === void 0 || r === void 0) && Tt(e, this.length - 8); - let n = t + this[++e] * 2 ** 8 + this[++e] * 2 ** 16 + this[++e] * 2 ** 24, - i = this[++e] + this[++e] * 2 ** 8 + this[++e] * 2 ** 16 + r * 2 ** 24; - return BigInt(n) + (BigInt(i) << BigInt(32)); - }); - A.prototype.readBigUInt64BE = Se(function (e) { - ((e = e >>> 0), He(e, "offset")); - let t = this[e], - r = this[e + 7]; - (t === void 0 || r === void 0) && Tt(e, this.length - 8); - let n = t * 2 ** 24 + this[++e] * 2 ** 16 + this[++e] * 2 ** 8 + this[++e], - i = this[++e] * 2 ** 24 + this[++e] * 2 ** 16 + this[++e] * 2 ** 8 + r; - return (BigInt(n) << BigInt(32)) + BigInt(i); - }); - A.prototype.readIntLE = function (e, t, r) { - ((e = e >>> 0), (t = t >>> 0), r || W(e, t, this.length)); - let n = this[e], - i = 1, - o = 0; - for (; ++o < t && (i *= 256); ) n += this[e + o] * i; - return ((i *= 128), n >= i && (n -= Math.pow(2, 8 * t)), n); - }; - A.prototype.readIntBE = function (e, t, r) { - ((e = e >>> 0), (t = t >>> 0), r || W(e, t, this.length)); - let n = t, - i = 1, - o = this[e + --n]; - for (; n > 0 && (i *= 256); ) o += this[e + --n] * i; - return ((i *= 128), o >= i && (o -= Math.pow(2, 8 * t)), o); - }; - A.prototype.readInt8 = function (e, t) { - return ( - (e = e >>> 0), - t || W(e, 1, this.length), - this[e] & 128 ? (255 - this[e] + 1) * -1 : this[e] - ); - }; - A.prototype.readInt16LE = function (e, t) { - ((e = e >>> 0), t || W(e, 2, this.length)); - let r = this[e] | (this[e + 1] << 8); - return r & 32768 ? r | 4294901760 : r; - }; - A.prototype.readInt16BE = function (e, t) { - ((e = e >>> 0), t || W(e, 2, this.length)); - let r = this[e + 1] | (this[e] << 8); - return r & 32768 ? r | 4294901760 : r; - }; - A.prototype.readInt32LE = function (e, t) { - return ( - (e = e >>> 0), - t || W(e, 4, this.length), - this[e] | (this[e + 1] << 8) | (this[e + 2] << 16) | (this[e + 3] << 24) - ); - }; - A.prototype.readInt32BE = function (e, t) { - return ( - (e = e >>> 0), - t || W(e, 4, this.length), - (this[e] << 24) | (this[e + 1] << 16) | (this[e + 2] << 8) | this[e + 3] - ); - }; - A.prototype.readBigInt64LE = Se(function (e) { - ((e = e >>> 0), He(e, "offset")); - let t = this[e], - r = this[e + 7]; - (t === void 0 || r === void 0) && Tt(e, this.length - 8); - let n = - this[e + 4] + this[e + 5] * 2 ** 8 + this[e + 6] * 2 ** 16 + (r << 24); - return ( - (BigInt(n) << BigInt(32)) + - BigInt(t + this[++e] * 2 ** 8 + this[++e] * 2 ** 16 + this[++e] * 2 ** 24) - ); - }); - A.prototype.readBigInt64BE = Se(function (e) { - ((e = e >>> 0), He(e, "offset")); - let t = this[e], - r = this[e + 7]; - (t === void 0 || r === void 0) && Tt(e, this.length - 8); - let n = (t << 24) + this[++e] * 2 ** 16 + this[++e] * 2 ** 8 + this[++e]; - return ( - (BigInt(n) << BigInt(32)) + - BigInt(this[++e] * 2 ** 24 + this[++e] * 2 ** 16 + this[++e] * 2 ** 8 + r) - ); - }); - A.prototype.readFloatLE = function (e, t) { - return ( - (e = e >>> 0), - t || W(e, 4, this.length), - We.read(this, e, !0, 23, 4) - ); - }; - A.prototype.readFloatBE = function (e, t) { - return ( - (e = e >>> 0), - t || W(e, 4, this.length), - We.read(this, e, !1, 23, 4) - ); - }; - A.prototype.readDoubleLE = function (e, t) { - return ( - (e = e >>> 0), - t || W(e, 8, this.length), - We.read(this, e, !0, 52, 8) - ); - }; - A.prototype.readDoubleBE = function (e, t) { - return ( - (e = e >>> 0), - t || W(e, 8, this.length), - We.read(this, e, !1, 52, 8) - ); - }; - function re(e, t, r, n, i, o) { - if (!A.isBuffer(e)) - throw new TypeError('"buffer" argument must be a Buffer instance'); - if (t > i || t < o) - throw new RangeError('"value" argument is out of bounds'); - if (r + n > e.length) throw new RangeError("Index out of range"); - } - A.prototype.writeUintLE = A.prototype.writeUIntLE = function (e, t, r, n) { - if (((e = +e), (t = t >>> 0), (r = r >>> 0), !n)) { - let s = Math.pow(2, 8 * r) - 1; - re(this, e, t, r, s, 0); - } - let i = 1, - o = 0; - for (this[t] = e & 255; ++o < r && (i *= 256); ) - this[t + o] = (e / i) & 255; - return t + r; - }; - A.prototype.writeUintBE = A.prototype.writeUIntBE = function (e, t, r, n) { - if (((e = +e), (t = t >>> 0), (r = r >>> 0), !n)) { - let s = Math.pow(2, 8 * r) - 1; - re(this, e, t, r, s, 0); - } - let i = r - 1, - o = 1; - for (this[t + i] = e & 255; --i >= 0 && (o *= 256); ) - this[t + i] = (e / o) & 255; - return t + r; - }; - A.prototype.writeUint8 = A.prototype.writeUInt8 = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || re(this, e, t, 1, 255, 0), - (this[t] = e & 255), - t + 1 - ); - }; - A.prototype.writeUint16LE = A.prototype.writeUInt16LE = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || re(this, e, t, 2, 65535, 0), - (this[t] = e & 255), - (this[t + 1] = e >>> 8), - t + 2 - ); - }; - A.prototype.writeUint16BE = A.prototype.writeUInt16BE = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || re(this, e, t, 2, 65535, 0), - (this[t] = e >>> 8), - (this[t + 1] = e & 255), - t + 2 - ); - }; - A.prototype.writeUint32LE = A.prototype.writeUInt32LE = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || re(this, e, t, 4, 4294967295, 0), - (this[t + 3] = e >>> 24), - (this[t + 2] = e >>> 16), - (this[t + 1] = e >>> 8), - (this[t] = e & 255), - t + 4 - ); - }; - A.prototype.writeUint32BE = A.prototype.writeUInt32BE = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || re(this, e, t, 4, 4294967295, 0), - (this[t] = e >>> 24), - (this[t + 1] = e >>> 16), - (this[t + 2] = e >>> 8), - (this[t + 3] = e & 255), - t + 4 - ); - }; - function Pi(e, t, r, n, i) { - Ci(t, n, i, e, r, 7); - let o = Number(t & BigInt(4294967295)); - ((e[r++] = o), - (o = o >> 8), - (e[r++] = o), - (o = o >> 8), - (e[r++] = o), - (o = o >> 8), - (e[r++] = o)); - let s = Number((t >> BigInt(32)) & BigInt(4294967295)); - return ( - (e[r++] = s), - (s = s >> 8), - (e[r++] = s), - (s = s >> 8), - (e[r++] = s), - (s = s >> 8), - (e[r++] = s), - r - ); - } - function vi(e, t, r, n, i) { - Ci(t, n, i, e, r, 7); - let o = Number(t & BigInt(4294967295)); - ((e[r + 7] = o), - (o = o >> 8), - (e[r + 6] = o), - (o = o >> 8), - (e[r + 5] = o), - (o = o >> 8), - (e[r + 4] = o)); - let s = Number((t >> BigInt(32)) & BigInt(4294967295)); - return ( - (e[r + 3] = s), - (s = s >> 8), - (e[r + 2] = s), - (s = s >> 8), - (e[r + 1] = s), - (s = s >> 8), - (e[r] = s), - r + 8 - ); - } - A.prototype.writeBigUInt64LE = Se(function (e, t = 0) { - return Pi(this, e, t, BigInt(0), BigInt("0xffffffffffffffff")); - }); - A.prototype.writeBigUInt64BE = Se(function (e, t = 0) { - return vi(this, e, t, BigInt(0), BigInt("0xffffffffffffffff")); - }); - A.prototype.writeIntLE = function (e, t, r, n) { - if (((e = +e), (t = t >>> 0), !n)) { - let a = Math.pow(2, 8 * r - 1); - re(this, e, t, r, a - 1, -a); - } - let i = 0, - o = 1, - s = 0; - for (this[t] = e & 255; ++i < r && (o *= 256); ) - (e < 0 && s === 0 && this[t + i - 1] !== 0 && (s = 1), - (this[t + i] = (((e / o) >> 0) - s) & 255)); - return t + r; - }; - A.prototype.writeIntBE = function (e, t, r, n) { - if (((e = +e), (t = t >>> 0), !n)) { - let a = Math.pow(2, 8 * r - 1); - re(this, e, t, r, a - 1, -a); - } - let i = r - 1, - o = 1, - s = 0; - for (this[t + i] = e & 255; --i >= 0 && (o *= 256); ) - (e < 0 && s === 0 && this[t + i + 1] !== 0 && (s = 1), - (this[t + i] = (((e / o) >> 0) - s) & 255)); - return t + r; - }; - A.prototype.writeInt8 = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || re(this, e, t, 1, 127, -128), - e < 0 && (e = 255 + e + 1), - (this[t] = e & 255), - t + 1 - ); - }; - A.prototype.writeInt16LE = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || re(this, e, t, 2, 32767, -32768), - (this[t] = e & 255), - (this[t + 1] = e >>> 8), - t + 2 - ); - }; - A.prototype.writeInt16BE = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || re(this, e, t, 2, 32767, -32768), - (this[t] = e >>> 8), - (this[t + 1] = e & 255), - t + 2 - ); - }; - A.prototype.writeInt32LE = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || re(this, e, t, 4, 2147483647, -2147483648), - (this[t] = e & 255), - (this[t + 1] = e >>> 8), - (this[t + 2] = e >>> 16), - (this[t + 3] = e >>> 24), - t + 4 - ); - }; - A.prototype.writeInt32BE = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || re(this, e, t, 4, 2147483647, -2147483648), - e < 0 && (e = 4294967295 + e + 1), - (this[t] = e >>> 24), - (this[t + 1] = e >>> 16), - (this[t + 2] = e >>> 8), - (this[t + 3] = e & 255), - t + 4 - ); - }; - A.prototype.writeBigInt64LE = Se(function (e, t = 0) { - return Pi( - this, - e, - t, - -BigInt("0x8000000000000000"), - BigInt("0x7fffffffffffffff"), - ); - }); - A.prototype.writeBigInt64BE = Se(function (e, t = 0) { - return vi( - this, - e, - t, - -BigInt("0x8000000000000000"), - BigInt("0x7fffffffffffffff"), - ); - }); - function Ti(e, t, r, n, i, o) { - if (r + n > e.length) throw new RangeError("Index out of range"); - if (r < 0) throw new RangeError("Index out of range"); - } - function Ai(e, t, r, n, i) { - return ( - (t = +t), - (r = r >>> 0), - i || Ti(e, t, r, 4, 34028234663852886e22, -34028234663852886e22), - We.write(e, t, r, n, 23, 4), - r + 4 - ); - } - A.prototype.writeFloatLE = function (e, t, r) { - return Ai(this, e, t, !0, r); - }; - A.prototype.writeFloatBE = function (e, t, r) { - return Ai(this, e, t, !1, r); - }; - function Ri(e, t, r, n, i) { - return ( - (t = +t), - (r = r >>> 0), - i || Ti(e, t, r, 8, 17976931348623157e292, -17976931348623157e292), - We.write(e, t, r, n, 52, 8), - r + 8 - ); - } - A.prototype.writeDoubleLE = function (e, t, r) { - return Ri(this, e, t, !0, r); - }; - A.prototype.writeDoubleBE = function (e, t, r) { - return Ri(this, e, t, !1, r); - }; - A.prototype.copy = function (e, t, r, n) { - if (!A.isBuffer(e)) throw new TypeError("argument should be a Buffer"); - if ( - (r || (r = 0), - !n && n !== 0 && (n = this.length), - t >= e.length && (t = e.length), - t || (t = 0), - n > 0 && n < r && (n = r), - n === r || e.length === 0 || this.length === 0) - ) - return 0; - if (t < 0) throw new RangeError("targetStart out of bounds"); - if (r < 0 || r >= this.length) throw new RangeError("Index out of range"); - if (n < 0) throw new RangeError("sourceEnd out of bounds"); - (n > this.length && (n = this.length), - e.length - t < n - r && (n = e.length - t + r)); - let i = n - r; - return ( - this === e && typeof Uint8Array.prototype.copyWithin == "function" - ? this.copyWithin(t, r, n) - : Uint8Array.prototype.set.call(e, this.subarray(r, n), t), - i - ); - }; - A.prototype.fill = function (e, t, r, n) { - if (typeof e == "string") { - if ( - (typeof t == "string" - ? ((n = t), (t = 0), (r = this.length)) - : typeof r == "string" && ((n = r), (r = this.length)), - n !== void 0 && typeof n != "string") - ) - throw new TypeError("encoding must be a string"); - if (typeof n == "string" && !A.isEncoding(n)) - throw new TypeError("Unknown encoding: " + n); - if (e.length === 1) { - let o = e.charCodeAt(0); - ((n === "utf8" && o < 128) || n === "latin1") && (e = o); - } - } else - typeof e == "number" - ? (e = e & 255) - : typeof e == "boolean" && (e = Number(e)); - if (t < 0 || this.length < t || this.length < r) - throw new RangeError("Out of range index"); - if (r <= t) return this; - ((t = t >>> 0), (r = r === void 0 ? this.length : r >>> 0), e || (e = 0)); - let i; - if (typeof e == "number") for (i = t; i < r; ++i) this[i] = e; - else { - let o = A.isBuffer(e) ? e : A.from(e, n), - s = o.length; - if (s === 0) - throw new TypeError( - 'The value "' + e + '" is invalid for argument "value"', - ); - for (i = 0; i < r - t; ++i) this[i + t] = o[i % s]; - } - return this; - }; - var Ke = {}; - function dn(e, t, r) { - Ke[e] = class extends r { - constructor() { - (super(), - Object.defineProperty(this, "message", { - value: t.apply(this, arguments), - writable: !0, - configurable: !0, - }), - (this.name = `${this.name} [${e}]`), - this.stack, - delete this.name); - } - get code() { - return e; - } - set code(n) { - Object.defineProperty(this, "code", { - configurable: !0, - enumerable: !0, - value: n, - writable: !0, - }); - } - toString() { - return `${this.name} [${e}]: ${this.message}`; - } - }; - } - dn( - "ERR_BUFFER_OUT_OF_BOUNDS", - function (e) { - return e - ? `${e} is outside of buffer bounds` - : "Attempt to access memory outside buffer bounds"; - }, - RangeError, - ); - dn( - "ERR_INVALID_ARG_TYPE", - function (e, t) { - return `The "${e}" argument must be of type number. Received type ${typeof t}`; - }, - TypeError, - ); - dn( - "ERR_OUT_OF_RANGE", - function (e, t, r) { - let n = `The value of "${e}" is out of range.`, - i = r; - return ( - Number.isInteger(r) && Math.abs(r) > 2 ** 32 - ? (i = di(String(r))) - : typeof r == "bigint" && - ((i = String(r)), - (r > BigInt(2) ** BigInt(32) || r < -(BigInt(2) ** BigInt(32))) && - (i = di(i)), - (i += "n")), - (n += ` It must be ${t}. Received ${i}`), - n - ); - }, - RangeError, - ); - function di(e) { - let t = "", - r = e.length, - n = e[0] === "-" ? 1 : 0; - for (; r >= n + 4; r -= 3) t = `_${e.slice(r - 3, r)}${t}`; - return `${e.slice(0, r)}${t}`; - } - function Qa(e, t, r) { - (He(t, "offset"), - (e[t] === void 0 || e[t + r] === void 0) && Tt(t, e.length - (r + 1))); - } - function Ci(e, t, r, n, i, o) { - if (e > r || e < t) { - let s = typeof t == "bigint" ? "n" : "", - a; - throw ( - o > 3 - ? t === 0 || t === BigInt(0) - ? (a = `>= 0${s} and < 2${s} ** ${(o + 1) * 8}${s}`) - : (a = `>= -(2${s} ** ${(o + 1) * 8 - 1}${s}) and < 2 ** ${(o + 1) * 8 - 1}${s}`) - : (a = `>= ${t}${s} and <= ${r}${s}`), - new Ke.ERR_OUT_OF_RANGE("value", a, e) - ); - } - Qa(n, i, o); - } - function He(e, t) { - if (typeof e != "number") throw new Ke.ERR_INVALID_ARG_TYPE(t, "number", e); - } - function Tt(e, t, r) { - throw Math.floor(e) !== e - ? (He(e, r), new Ke.ERR_OUT_OF_RANGE(r || "offset", "an integer", e)) - : t < 0 - ? new Ke.ERR_BUFFER_OUT_OF_BOUNDS() - : new Ke.ERR_OUT_OF_RANGE( - r || "offset", - `>= ${r ? 1 : 0} and <= ${t}`, - e, - ); - } - var Ka = /[^+/0-9A-Za-z-_]/g; - function Wa(e) { - if (((e = e.split("=")[0]), (e = e.trim().replace(Ka, "")), e.length < 2)) - return ""; - for (; e.length % 4 !== 0; ) e = e + "="; - return e; - } - function pn(e, t) { - t = t || 1 / 0; - let r, - n = e.length, - i = null, - o = []; - for (let s = 0; s < n; ++s) { - if (((r = e.charCodeAt(s)), r > 55295 && r < 57344)) { - if (!i) { - if (r > 56319) { - (t -= 3) > -1 && o.push(239, 191, 189); - continue; - } else if (s + 1 === n) { - (t -= 3) > -1 && o.push(239, 191, 189); - continue; - } - i = r; - continue; - } - if (r < 56320) { - ((t -= 3) > -1 && o.push(239, 191, 189), (i = r)); - continue; - } - r = (((i - 55296) << 10) | (r - 56320)) + 65536; - } else i && (t -= 3) > -1 && o.push(239, 191, 189); - if (((i = null), r < 128)) { - if ((t -= 1) < 0) break; - o.push(r); - } else if (r < 2048) { - if ((t -= 2) < 0) break; - o.push((r >> 6) | 192, (r & 63) | 128); - } else if (r < 65536) { - if ((t -= 3) < 0) break; - o.push((r >> 12) | 224, ((r >> 6) & 63) | 128, (r & 63) | 128); - } else if (r < 1114112) { - if ((t -= 4) < 0) break; - o.push( - (r >> 18) | 240, - ((r >> 12) & 63) | 128, - ((r >> 6) & 63) | 128, - (r & 63) | 128, - ); - } else throw new Error("Invalid code point"); - } - return o; - } - function Ha(e) { - let t = []; - for (let r = 0; r < e.length; ++r) t.push(e.charCodeAt(r) & 255); - return t; - } - function za(e, t) { - let r, - n, - i, - o = []; - for (let s = 0; s < e.length && !((t -= 2) < 0); ++s) - ((r = e.charCodeAt(s)), - (n = r >> 8), - (i = r % 256), - o.push(i), - o.push(n)); - return o; - } - function Si(e) { - return un.toByteArray(Wa(e)); - } - function cr(e, t, r, n) { - let i; - for (i = 0; i < n && !(i + r >= t.length || i >= e.length); ++i) - t[i + r] = e[i]; - return i; - } - function de(e, t) { - return ( - e instanceof t || - (e != null && - e.constructor != null && - e.constructor.name != null && - e.constructor.name === t.name) - ); - } - function gn(e) { - return e !== e; - } - var Ya = (function () { - let e = "0123456789abcdef", - t = new Array(256); - for (let r = 0; r < 16; ++r) { - let n = r * 16; - for (let i = 0; i < 16; ++i) t[n + i] = e[r] + e[i]; - } - return t; - })(); - function Se(e) { - return typeof BigInt > "u" ? Za : e; - } - function Za() { - throw new Error("BigInt not supported"); - } -}); -var w, - f = fe(() => { - "use strict"; - w = Qe(Ii()); - }); -function il() { - return !1; -} -function bn() { - return { - dev: 0, - ino: 0, - mode: 0, - nlink: 0, - uid: 0, - gid: 0, - rdev: 0, - size: 0, - blksize: 0, - blocks: 0, - atimeMs: 0, - mtimeMs: 0, - ctimeMs: 0, - birthtimeMs: 0, - atime: new Date(), - mtime: new Date(), - ctime: new Date(), - birthtime: new Date(), - }; -} -function ol() { - return bn(); -} -function sl() { - return []; -} -function al(e) { - e(null, []); -} -function ll() { - return ""; -} -function ul() { - return ""; -} -function cl() {} -function pl() {} -function ml() {} -function fl() {} -function dl() {} -function gl() {} -function hl() {} -function yl() {} -function wl() { - return { close: () => {}, on: () => {}, removeAllListeners: () => {} }; -} -function El(e, t) { - t(null, bn()); -} -var bl, - xl, - Qi, - Ki = fe(() => { - "use strict"; - f(); - u(); - c(); - p(); - m(); - ((bl = {}), - (xl = { - existsSync: il, - lstatSync: bn, - stat: El, - statSync: ol, - readdirSync: sl, - readdir: al, - readlinkSync: ll, - realpathSync: ul, - chmodSync: cl, - renameSync: pl, - mkdirSync: ml, - rmdirSync: fl, - rmSync: dl, - unlinkSync: gl, - watchFile: hl, - unwatchFile: yl, - watch: wl, - promises: bl, - }), - (Qi = xl)); - }); -var Wi = Je((df, Pl) => { - Pl.exports = { - name: "@prisma/internals", - version: "6.19.2", - description: "This package is intended for Prisma's internal use", - main: "dist/index.js", - types: "dist/index.d.ts", - repository: { - type: "git", - url: "https://github.com/prisma/prisma.git", - directory: "packages/internals", - }, - homepage: "https://www.prisma.io", - author: "Tim Suchanek ", - bugs: "https://github.com/prisma/prisma/issues", - license: "Apache-2.0", - scripts: { - dev: "DEV=true tsx helpers/build.ts", - build: "tsx helpers/build.ts", - test: "dotenv -e ../../.db.env -- jest --silent", - prepublishOnly: "pnpm run build", - }, - files: [ - "README.md", - "dist", - "!**/libquery_engine*", - "!dist/get-generators/engines/*", - "scripts", - ], - devDependencies: { - "@babel/helper-validator-identifier": "7.25.9", - "@opentelemetry/api": "1.9.0", - "@swc/core": "1.11.5", - "@swc/jest": "0.2.37", - "@types/babel__helper-validator-identifier": "7.15.2", - "@types/jest": "29.5.14", - "@types/node": "18.19.76", - "@types/resolve": "1.20.6", - archiver: "6.0.2", - "checkpoint-client": "1.1.33", - "cli-truncate": "4.0.0", - dotenv: "16.5.0", - empathic: "2.0.0", - "escape-string-regexp": "5.0.0", - execa: "8.0.1", - "fast-glob": "3.3.3", - "find-up": "7.0.0", - "fp-ts": "2.16.9", - "fs-extra": "11.3.0", - "global-directory": "4.0.0", - globby: "11.1.0", - "identifier-regex": "1.0.0", - "indent-string": "4.0.0", - "is-windows": "1.0.2", - "is-wsl": "3.1.0", - jest: "29.7.0", - "jest-junit": "16.0.0", - kleur: "4.1.5", - "mock-stdin": "1.0.0", - "new-github-issue-url": "0.2.1", - "node-fetch": "3.3.2", - "npm-packlist": "5.1.3", - open: "7.4.2", - "p-map": "4.0.0", - resolve: "1.22.10", - "string-width": "7.2.0", - "strip-indent": "4.0.0", - "temp-dir": "2.0.0", - tempy: "1.0.1", - "terminal-link": "4.0.0", - tmp: "0.2.3", - "ts-pattern": "5.6.2", - "ts-toolbelt": "9.6.0", - typescript: "5.4.5", - yarn: "1.22.22", - }, - dependencies: { - "@prisma/config": "workspace:*", - "@prisma/debug": "workspace:*", - "@prisma/dmmf": "workspace:*", - "@prisma/driver-adapter-utils": "workspace:*", - "@prisma/engines": "workspace:*", - "@prisma/fetch-engine": "workspace:*", - "@prisma/generator": "workspace:*", - "@prisma/generator-helper": "workspace:*", - "@prisma/get-platform": "workspace:*", - "@prisma/prisma-schema-wasm": - "7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7", - "@prisma/schema-engine-wasm": - "7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7", - "@prisma/schema-files-loader": "workspace:*", - arg: "5.0.2", - prompts: "2.4.2", - }, - peerDependencies: { typescript: ">=5.1.0" }, - peerDependenciesMeta: { typescript: { optional: !0 } }, - sideEffects: !1, - }; -}); -function Tl(...e) { - return e.join("/"); -} -function Al(...e) { - return e.join("/"); -} -function Rl(e) { - let t = Hi(e), - r = zi(e), - [n, i] = t.split("."); - return { root: "/", dir: r, base: t, ext: i, name: n }; -} -function Hi(e) { - let t = e.split("/"); - return t[t.length - 1]; -} -function zi(e) { - return e.split("/").slice(0, -1).join("/"); -} -function Sl(e) { - let t = e.split("/").filter((i) => i !== "" && i !== "."), - r = []; - for (let i of t) i === ".." ? r.pop() : r.push(i); - let n = r.join("/"); - return e.startsWith("/") ? "/" + n : n; -} -var Yi, - Cl, - Il, - Ol, - dr, - Zi = fe(() => { - "use strict"; - f(); - u(); - c(); - p(); - m(); - ((Yi = "/"), (Cl = ":")); - ((Il = { sep: Yi }), - (Ol = { - basename: Hi, - delimiter: Cl, - dirname: zi, - join: Al, - normalize: Sl, - parse: Rl, - posix: Il, - resolve: Tl, - sep: Yi, - }), - (dr = Ol)); - }); -var Pn = Je((Mf, Ml) => { - Ml.exports = { - name: "@prisma/engines-version", - version: "7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7", - main: "index.js", - types: "index.d.ts", - license: "Apache-2.0", - author: "Tim Suchanek ", - prisma: { enginesVersion: "c2990dca591cba766e3b7ef5d9e8a84796e47ab7" }, - repository: { - type: "git", - url: "https://github.com/prisma/engines-wrapper.git", - directory: "packages/engines-version", - }, - devDependencies: { "@types/node": "18.19.76", typescript: "4.9.5" }, - files: ["index.js", "index.d.ts"], - scripts: { build: "tsc -d" }, - }; -}); -var Xi = Je((gr) => { - "use strict"; - f(); - u(); - c(); - p(); - m(); - Object.defineProperty(gr, "__esModule", { value: !0 }); - gr.enginesVersion = void 0; - gr.enginesVersion = Pn().prisma.enginesVersion; -}); -var ro = Je((Qf, to) => { - "use strict"; - f(); - u(); - c(); - p(); - m(); - to.exports = (e, t = 1, r) => { - if ( - ((r = { indent: " ", includeEmptyLines: !1, ...r }), typeof e != "string") - ) - throw new TypeError( - `Expected \`input\` to be a \`string\`, got \`${typeof e}\``, - ); - if (typeof t != "number") - throw new TypeError( - `Expected \`count\` to be a \`number\`, got \`${typeof t}\``, - ); - if (typeof r.indent != "string") - throw new TypeError( - `Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``, - ); - if (t === 0) return e; - let n = r.includeEmptyLines ? /^/gm : /^(?!\s*$)/gm; - return e.replace(n, r.indent.repeat(t)); - }; -}); -var Nn = Je((Jy, vo) => { - "use strict"; - f(); - u(); - c(); - p(); - m(); - vo.exports = (function () { - function e(t, r, n, i, o) { - return t < r || n < r ? (t > n ? n + 1 : t + 1) : i === o ? r : r + 1; - } - return function (t, r) { - if (t === r) return 0; - if (t.length > r.length) { - var n = t; - ((t = r), (r = n)); - } - for ( - var i = t.length, o = r.length; - i > 0 && t.charCodeAt(i - 1) === r.charCodeAt(o - 1); - ) - (i--, o--); - for (var s = 0; s < i && t.charCodeAt(s) === r.charCodeAt(s); ) s++; - if (((i -= s), (o -= s), i === 0 || o < 3)) return o; - var a = 0, - l, - d, - g, - h, - T, - I, - S, - C, - M, - F, - B, - O, - L = []; - for (l = 0; l < i; l++) (L.push(l + 1), L.push(t.charCodeAt(s + l))); - for (var le = L.length - 1; a < o - 3; ) - for ( - M = r.charCodeAt(s + (d = a)), - F = r.charCodeAt(s + (g = a + 1)), - B = r.charCodeAt(s + (h = a + 2)), - O = r.charCodeAt(s + (T = a + 3)), - I = a += 4, - l = 0; - l < le; - l += 2 - ) - ((S = L[l]), - (C = L[l + 1]), - (d = e(S, d, g, M, C)), - (g = e(d, g, h, F, C)), - (h = e(g, h, T, B, C)), - (I = e(h, T, I, O, C)), - (L[l] = I), - (T = h), - (h = g), - (g = d), - (d = S)); - for (; a < o; ) - for (M = r.charCodeAt(s + (d = a)), I = ++a, l = 0; l < le; l += 2) - ((S = L[l]), (L[l] = I = e(S, d, I, M, L[l + 1])), (d = S)); - return I; - }; - })(); -}); -var So = fe(() => { - "use strict"; - f(); - u(); - c(); - p(); - m(); -}); -var Io = fe(() => { - "use strict"; - f(); - u(); - c(); - p(); - m(); -}); -var Jr, - Xo = fe(() => { - "use strict"; - f(); - u(); - c(); - p(); - m(); - Jr = class { - events = {}; - on(t, r) { - return ( - this.events[t] || (this.events[t] = []), - this.events[t].push(r), - this - ); - } - emit(t, ...r) { - return this.events[t] - ? (this.events[t].forEach((n) => { - n(...r); - }), - !0) - : !1; - } - }; - }); -var kp = {}; -vt(kp, { - DMMF: () => Dt, - Debug: () => z, - Decimal: () => Ae, - Extensions: () => hn, - MetricsClient: () => pt, - PrismaClientInitializationError: () => Q, - PrismaClientKnownRequestError: () => ne, - PrismaClientRustPanicError: () => Pe, - PrismaClientUnknownRequestError: () => ie, - PrismaClientValidationError: () => X, - Public: () => yn, - Sql: () => se, - createParam: () => Jo, - defineDmmfProperty: () => Yo, - deserializeJsonResponse: () => dt, - deserializeRawResult: () => nn, - dmmfToRuntimeDataModel: () => ao, - empty: () => ts, - getPrismaClient: () => ya, - getRuntime: () => Zr, - join: () => es, - makeStrictEnum: () => wa, - makeTypedQueryFactory: () => Zo, - objectEnumValues: () => Nr, - raw: () => Gn, - serializeJsonQuery: () => $r, - skip: () => Vr, - sqltag: () => Jn, - warnEnvConflicts: () => void 0, - warnOnce: () => St, -}); -module.exports = Aa(kp); -f(); -u(); -c(); -p(); -m(); -var hn = {}; -vt(hn, { defineExtension: () => Oi, getExtensionContext: () => ki }); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -function Oi(e) { - return typeof e == "function" ? e : (t) => t.$extends(e); -} -f(); -u(); -c(); -p(); -m(); -function ki(e) { - return e; -} -var yn = {}; -vt(yn, { validator: () => Di }); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -function Di(...e) { - return (t) => t; -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var wn, - Mi, - _i, - Ni, - Fi = !0; -typeof y < "u" && - (({ - FORCE_COLOR: wn, - NODE_DISABLE_COLORS: Mi, - NO_COLOR: _i, - TERM: Ni, - } = y.env || {}), - (Fi = y.stdout && y.stdout.isTTY)); -var Xa = { - enabled: - !Mi && _i == null && Ni !== "dumb" && ((wn != null && wn !== "0") || Fi), -}; -function j(e, t) { - let r = new RegExp(`\\x1b\\[${t}m`, "g"), - n = `\x1B[${e}m`, - i = `\x1B[${t}m`; - return function (o) { - return !Xa.enabled || o == null - ? o - : n + (~("" + o).indexOf(i) ? o.replace(r, i + n) : o) + i; - }; -} -var Pm = j(0, 0), - pr = j(1, 22), - mr = j(2, 22), - vm = j(3, 23), - Li = j(4, 24), - Tm = j(7, 27), - Am = j(8, 28), - Rm = j(9, 29), - Cm = j(30, 39), - Ye = j(31, 39), - Ui = j(32, 39), - Bi = j(33, 39), - qi = j(34, 39), - Sm = j(35, 39), - Vi = j(36, 39), - Im = j(37, 39), - $i = j(90, 39), - Om = j(90, 39), - km = j(40, 49), - Dm = j(41, 49), - Mm = j(42, 49), - _m = j(43, 49), - Nm = j(44, 49), - Fm = j(45, 49), - Lm = j(46, 49), - Um = j(47, 49); -f(); -u(); -c(); -p(); -m(); -var el = 100, - ji = ["green", "yellow", "blue", "magenta", "cyan", "red"], - fr = [], - Gi = Date.now(), - tl = 0, - En = typeof y < "u" ? y.env : {}; -globalThis.DEBUG ??= En.DEBUG ?? ""; -globalThis.DEBUG_COLORS ??= En.DEBUG_COLORS ? En.DEBUG_COLORS === "true" : !0; -var At = { - enable(e) { - typeof e == "string" && (globalThis.DEBUG = e); - }, - disable() { - let e = globalThis.DEBUG; - return ((globalThis.DEBUG = ""), e); - }, - enabled(e) { - let t = globalThis.DEBUG.split(",").map((i) => - i.replace(/[.+?^${}()|[\]\\]/g, "\\$&"), - ), - r = t.some((i) => - i === "" || i[0] === "-" - ? !1 - : e.match(RegExp(i.split("*").join(".*") + "$")), - ), - n = t.some((i) => - i === "" || i[0] !== "-" - ? !1 - : e.match(RegExp(i.slice(1).split("*").join(".*") + "$")), - ); - return r && !n; - }, - log: (...e) => { - let [t, r, ...n] = e; - (console.warn ?? console.log)(`${t} ${r}`, ...n); - }, - formatters: {}, -}; -function rl(e) { - let t = { - color: ji[tl++ % ji.length], - enabled: At.enabled(e), - namespace: e, - log: At.log, - extend: () => {}, - }, - r = (...n) => { - let { enabled: i, namespace: o, color: s, log: a } = t; - if ( - (n.length !== 0 && fr.push([o, ...n]), - fr.length > el && fr.shift(), - At.enabled(o) || i) - ) { - let l = n.map((g) => (typeof g == "string" ? g : nl(g))), - d = `+${Date.now() - Gi}ms`; - ((Gi = Date.now()), a(o, ...l, d)); - } - }; - return new Proxy(r, { get: (n, i) => t[i], set: (n, i, o) => (t[i] = o) }); -} -var z = new Proxy(rl, { get: (e, t) => At[t], set: (e, t, r) => (At[t] = r) }); -function nl(e, t = 2) { - let r = new Set(); - return JSON.stringify( - e, - (n, i) => { - if (typeof i == "object" && i !== null) { - if (r.has(i)) return "[Circular *]"; - r.add(i); - } else if (typeof i == "bigint") return i.toString(); - return i; - }, - t, - ); -} -function Ji() { - fr.length = 0; -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var vl = Wi(), - xn = vl.version; -f(); -u(); -c(); -p(); -m(); -function Ze(e) { - let t = kl(); - return ( - t || - (e?.config.engineType === "library" - ? "library" - : e?.config.engineType === "binary" - ? "binary" - : e?.config.engineType === "client" - ? "client" - : Dl()) - ); -} -function kl() { - let e = y.env.PRISMA_CLIENT_ENGINE_TYPE; - return e === "library" - ? "library" - : e === "binary" - ? "binary" - : e === "client" - ? "client" - : void 0; -} -function Dl() { - return "library"; -} -f(); -u(); -c(); -p(); -m(); -var eo = "prisma+postgres", - hr = `${eo}:`; -function yr(e) { - return e?.toString().startsWith(`${hr}//`) ?? !1; -} -function vn(e) { - if (!yr(e)) return !1; - let { host: t } = new URL(e); - return ( - t.includes("localhost") || t.includes("127.0.0.1") || t.includes("[::1]") - ); -} -var Ct = {}; -vt(Ct, { - error: () => Fl, - info: () => Nl, - log: () => _l, - query: () => Ll, - should: () => no, - tags: () => Rt, - warn: () => Tn, -}); -f(); -u(); -c(); -p(); -m(); -var Rt = { - error: Ye("prisma:error"), - warn: Bi("prisma:warn"), - info: Vi("prisma:info"), - query: qi("prisma:query"), - }, - no = { warn: () => !y.env.PRISMA_DISABLE_WARNINGS }; -function _l(...e) { - console.log(...e); -} -function Tn(e, ...t) { - no.warn() && console.warn(`${Rt.warn} ${e}`, ...t); -} -function Nl(e, ...t) { - console.info(`${Rt.info} ${e}`, ...t); -} -function Fl(e, ...t) { - console.error(`${Rt.error} ${e}`, ...t); -} -function Ll(e, ...t) { - console.log(`${Rt.query} ${e}`, ...t); -} -f(); -u(); -c(); -p(); -m(); -function Ue(e, t) { - throw new Error(t); -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -function An({ onlyFirst: e = !1 } = {}) { - let r = [ - "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))", - "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))", - ].join("|"); - return new RegExp(r, e ? void 0 : "g"); -} -var Ul = An(); -function Rn(e) { - if (typeof e != "string") - throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``); - return e.replace(Ul, ""); -} -f(); -u(); -c(); -p(); -m(); -function Cn(e, t) { - return Object.prototype.hasOwnProperty.call(e, t); -} -f(); -u(); -c(); -p(); -m(); -function wr(e, t) { - let r = {}; - for (let n of Object.keys(e)) r[n] = t(e[n], n); - return r; -} -f(); -u(); -c(); -p(); -m(); -function Sn(e, t) { - if (e.length === 0) return; - let r = e[0]; - for (let n = 1; n < e.length; n++) t(r, e[n]) < 0 && (r = e[n]); - return r; -} -f(); -u(); -c(); -p(); -m(); -function N(e, t) { - Object.defineProperty(e, "name", { value: t, configurable: !0 }); -} -f(); -u(); -c(); -p(); -m(); -var io = new Set(), - St = (e, t, ...r) => { - io.has(e) || (io.add(e), Tn(t, ...r)); - }; -var Q = class e extends Error { - clientVersion; - errorCode; - retryable; - constructor(t, r, n) { - (super(t), - (this.name = "PrismaClientInitializationError"), - (this.clientVersion = r), - (this.errorCode = n), - Error.captureStackTrace(e)); - } - get [Symbol.toStringTag]() { - return "PrismaClientInitializationError"; - } -}; -N(Q, "PrismaClientInitializationError"); -f(); -u(); -c(); -p(); -m(); -var ne = class extends Error { - code; - meta; - clientVersion; - batchRequestIdx; - constructor(t, { code: r, clientVersion: n, meta: i, batchRequestIdx: o }) { - (super(t), - (this.name = "PrismaClientKnownRequestError"), - (this.code = r), - (this.clientVersion = n), - (this.meta = i), - Object.defineProperty(this, "batchRequestIdx", { - value: o, - enumerable: !1, - writable: !0, - })); - } - get [Symbol.toStringTag]() { - return "PrismaClientKnownRequestError"; - } -}; -N(ne, "PrismaClientKnownRequestError"); -f(); -u(); -c(); -p(); -m(); -var Pe = class extends Error { - clientVersion; - constructor(t, r) { - (super(t), - (this.name = "PrismaClientRustPanicError"), - (this.clientVersion = r)); - } - get [Symbol.toStringTag]() { - return "PrismaClientRustPanicError"; - } -}; -N(Pe, "PrismaClientRustPanicError"); -f(); -u(); -c(); -p(); -m(); -var ie = class extends Error { - clientVersion; - batchRequestIdx; - constructor(t, { clientVersion: r, batchRequestIdx: n }) { - (super(t), - (this.name = "PrismaClientUnknownRequestError"), - (this.clientVersion = r), - Object.defineProperty(this, "batchRequestIdx", { - value: n, - writable: !0, - enumerable: !1, - })); - } - get [Symbol.toStringTag]() { - return "PrismaClientUnknownRequestError"; - } -}; -N(ie, "PrismaClientUnknownRequestError"); -f(); -u(); -c(); -p(); -m(); -var X = class extends Error { - name = "PrismaClientValidationError"; - clientVersion; - constructor(t, { clientVersion: r }) { - (super(t), (this.clientVersion = r)); - } - get [Symbol.toStringTag]() { - return "PrismaClientValidationError"; - } -}; -N(X, "PrismaClientValidationError"); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var ge = class { - _map = new Map(); - get(t) { - return this._map.get(t)?.value; - } - set(t, r) { - this._map.set(t, { value: r }); - } - getOrCreate(t, r) { - let n = this._map.get(t); - if (n) return n.value; - let i = r(); - return (this.set(t, i), i); - } -}; -f(); -u(); -c(); -p(); -m(); -function Ie(e) { - return e.substring(0, 1).toLowerCase() + e.substring(1); -} -f(); -u(); -c(); -p(); -m(); -function so(e, t) { - let r = {}; - for (let n of e) { - let i = n[t]; - r[i] = n; - } - return r; -} -f(); -u(); -c(); -p(); -m(); -function It(e) { - let t; - return { - get() { - return (t || (t = { value: e() }), t.value); - }, - }; -} -f(); -u(); -c(); -p(); -m(); -function ao(e) { - return { models: In(e.models), enums: In(e.enums), types: In(e.types) }; -} -function In(e) { - let t = {}; - for (let { name: r, ...n } of e) t[r] = n; - return t; -} -f(); -u(); -c(); -p(); -m(); -function Xe(e) { - return ( - e instanceof Date || Object.prototype.toString.call(e) === "[object Date]" - ); -} -function Er(e) { - return e.toString() !== "Invalid Date"; -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var et = 9e15, - Me = 1e9, - On = "0123456789abcdef", - Pr = - "2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058", - vr = - "3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789", - kn = { - precision: 20, - rounding: 4, - modulo: 1, - toExpNeg: -7, - toExpPos: 21, - minE: -et, - maxE: et, - crypto: !1, - }, - po, - ve, - _ = !0, - Ar = "[DecimalError] ", - De = Ar + "Invalid argument: ", - mo = Ar + "Precision limit exceeded", - fo = Ar + "crypto unavailable", - go = "[object Decimal]", - ee = Math.floor, - K = Math.pow, - Bl = /^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i, - ql = /^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i, - Vl = /^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i, - ho = /^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i, - pe = 1e7, - D = 7, - $l = 9007199254740991, - jl = Pr.length - 1, - Dn = vr.length - 1, - R = { toStringTag: go }; -R.absoluteValue = R.abs = function () { - var e = new this.constructor(this); - return (e.s < 0 && (e.s = 1), k(e)); -}; -R.ceil = function () { - return k(new this.constructor(this), this.e + 1, 2); -}; -R.clampedTo = R.clamp = function (e, t) { - var r, - n = this, - i = n.constructor; - if (((e = new i(e)), (t = new i(t)), !e.s || !t.s)) return new i(NaN); - if (e.gt(t)) throw Error(De + t); - return ((r = n.cmp(e)), r < 0 ? e : n.cmp(t) > 0 ? t : new i(n)); -}; -R.comparedTo = R.cmp = function (e) { - var t, - r, - n, - i, - o = this, - s = o.d, - a = (e = new o.constructor(e)).d, - l = o.s, - d = e.s; - if (!s || !a) - return !l || !d ? NaN : l !== d ? l : s === a ? 0 : !s ^ (l < 0) ? 1 : -1; - if (!s[0] || !a[0]) return s[0] ? l : a[0] ? -d : 0; - if (l !== d) return l; - if (o.e !== e.e) return (o.e > e.e) ^ (l < 0) ? 1 : -1; - for (n = s.length, i = a.length, t = 0, r = n < i ? n : i; t < r; ++t) - if (s[t] !== a[t]) return (s[t] > a[t]) ^ (l < 0) ? 1 : -1; - return n === i ? 0 : (n > i) ^ (l < 0) ? 1 : -1; -}; -R.cosine = R.cos = function () { - var e, - t, - r = this, - n = r.constructor; - return r.d - ? r.d[0] - ? ((e = n.precision), - (t = n.rounding), - (n.precision = e + Math.max(r.e, r.sd()) + D), - (n.rounding = 1), - (r = Gl(n, xo(n, r))), - (n.precision = e), - (n.rounding = t), - k(ve == 2 || ve == 3 ? r.neg() : r, e, t, !0)) - : new n(1) - : new n(NaN); -}; -R.cubeRoot = R.cbrt = function () { - var e, - t, - r, - n, - i, - o, - s, - a, - l, - d, - g = this, - h = g.constructor; - if (!g.isFinite() || g.isZero()) return new h(g); - for ( - _ = !1, - o = g.s * K(g.s * g, 1 / 3), - !o || Math.abs(o) == 1 / 0 - ? ((r = Y(g.d)), - (e = g.e), - (o = (e - r.length + 1) % 3) && (r += o == 1 || o == -2 ? "0" : "00"), - (o = K(r, 1 / 3)), - (e = ee((e + 1) / 3) - (e % 3 == (e < 0 ? -1 : 2))), - o == 1 / 0 - ? (r = "5e" + e) - : ((r = o.toExponential()), - (r = r.slice(0, r.indexOf("e") + 1) + e)), - (n = new h(r)), - (n.s = g.s)) - : (n = new h(o.toString())), - s = (e = h.precision) + 3; - ; - ) - if ( - ((a = n), - (l = a.times(a).times(a)), - (d = l.plus(g)), - (n = V(d.plus(g).times(a), d.plus(l), s + 2, 1)), - Y(a.d).slice(0, s) === (r = Y(n.d)).slice(0, s)) - ) - if (((r = r.slice(s - 3, s + 1)), r == "9999" || (!i && r == "4999"))) { - if (!i && (k(a, e + 1, 0), a.times(a).times(a).eq(g))) { - n = a; - break; - } - ((s += 4), (i = 1)); - } else { - (!+r || (!+r.slice(1) && r.charAt(0) == "5")) && - (k(n, e + 1, 1), (t = !n.times(n).times(n).eq(g))); - break; - } - return ((_ = !0), k(n, e, h.rounding, t)); -}; -R.decimalPlaces = R.dp = function () { - var e, - t = this.d, - r = NaN; - if (t) { - if (((e = t.length - 1), (r = (e - ee(this.e / D)) * D), (e = t[e]), e)) - for (; e % 10 == 0; e /= 10) r--; - r < 0 && (r = 0); - } - return r; -}; -R.dividedBy = R.div = function (e) { - return V(this, new this.constructor(e)); -}; -R.dividedToIntegerBy = R.divToInt = function (e) { - var t = this, - r = t.constructor; - return k(V(t, new r(e), 0, 1, 1), r.precision, r.rounding); -}; -R.equals = R.eq = function (e) { - return this.cmp(e) === 0; -}; -R.floor = function () { - return k(new this.constructor(this), this.e + 1, 3); -}; -R.greaterThan = R.gt = function (e) { - return this.cmp(e) > 0; -}; -R.greaterThanOrEqualTo = R.gte = function (e) { - var t = this.cmp(e); - return t == 1 || t === 0; -}; -R.hyperbolicCosine = R.cosh = function () { - var e, - t, - r, - n, - i, - o = this, - s = o.constructor, - a = new s(1); - if (!o.isFinite()) return new s(o.s ? 1 / 0 : NaN); - if (o.isZero()) return a; - ((r = s.precision), - (n = s.rounding), - (s.precision = r + Math.max(o.e, o.sd()) + 4), - (s.rounding = 1), - (i = o.d.length), - i < 32 - ? ((e = Math.ceil(i / 3)), (t = (1 / Cr(4, e)).toString())) - : ((e = 16), (t = "2.3283064365386962890625e-10")), - (o = tt(s, 1, o.times(t), new s(1), !0))); - for (var l, d = e, g = new s(8); d--; ) - ((l = o.times(o)), (o = a.minus(l.times(g.minus(l.times(g)))))); - return k(o, (s.precision = r), (s.rounding = n), !0); -}; -R.hyperbolicSine = R.sinh = function () { - var e, - t, - r, - n, - i = this, - o = i.constructor; - if (!i.isFinite() || i.isZero()) return new o(i); - if ( - ((t = o.precision), - (r = o.rounding), - (o.precision = t + Math.max(i.e, i.sd()) + 4), - (o.rounding = 1), - (n = i.d.length), - n < 3) - ) - i = tt(o, 2, i, i, !0); - else { - ((e = 1.4 * Math.sqrt(n)), - (e = e > 16 ? 16 : e | 0), - (i = i.times(1 / Cr(5, e))), - (i = tt(o, 2, i, i, !0))); - for (var s, a = new o(5), l = new o(16), d = new o(20); e--; ) - ((s = i.times(i)), (i = i.times(a.plus(s.times(l.times(s).plus(d)))))); - } - return ((o.precision = t), (o.rounding = r), k(i, t, r, !0)); -}; -R.hyperbolicTangent = R.tanh = function () { - var e, - t, - r = this, - n = r.constructor; - return r.isFinite() - ? r.isZero() - ? new n(r) - : ((e = n.precision), - (t = n.rounding), - (n.precision = e + 7), - (n.rounding = 1), - V(r.sinh(), r.cosh(), (n.precision = e), (n.rounding = t))) - : new n(r.s); -}; -R.inverseCosine = R.acos = function () { - var e = this, - t = e.constructor, - r = e.abs().cmp(1), - n = t.precision, - i = t.rounding; - return r !== -1 - ? r === 0 - ? e.isNeg() - ? he(t, n, i) - : new t(0) - : new t(NaN) - : e.isZero() - ? he(t, n + 4, i).times(0.5) - : ((t.precision = n + 6), - (t.rounding = 1), - (e = new t(1).minus(e).div(e.plus(1)).sqrt().atan()), - (t.precision = n), - (t.rounding = i), - e.times(2)); -}; -R.inverseHyperbolicCosine = R.acosh = function () { - var e, - t, - r = this, - n = r.constructor; - return r.lte(1) - ? new n(r.eq(1) ? 0 : NaN) - : r.isFinite() - ? ((e = n.precision), - (t = n.rounding), - (n.precision = e + Math.max(Math.abs(r.e), r.sd()) + 4), - (n.rounding = 1), - (_ = !1), - (r = r.times(r).minus(1).sqrt().plus(r)), - (_ = !0), - (n.precision = e), - (n.rounding = t), - r.ln()) - : new n(r); -}; -R.inverseHyperbolicSine = R.asinh = function () { - var e, - t, - r = this, - n = r.constructor; - return !r.isFinite() || r.isZero() - ? new n(r) - : ((e = n.precision), - (t = n.rounding), - (n.precision = e + 2 * Math.max(Math.abs(r.e), r.sd()) + 6), - (n.rounding = 1), - (_ = !1), - (r = r.times(r).plus(1).sqrt().plus(r)), - (_ = !0), - (n.precision = e), - (n.rounding = t), - r.ln()); -}; -R.inverseHyperbolicTangent = R.atanh = function () { - var e, - t, - r, - n, - i = this, - o = i.constructor; - return i.isFinite() - ? i.e >= 0 - ? new o(i.abs().eq(1) ? i.s / 0 : i.isZero() ? i : NaN) - : ((e = o.precision), - (t = o.rounding), - (n = i.sd()), - Math.max(n, e) < 2 * -i.e - 1 - ? k(new o(i), e, t, !0) - : ((o.precision = r = n - i.e), - (i = V(i.plus(1), new o(1).minus(i), r + e, 1)), - (o.precision = e + 4), - (o.rounding = 1), - (i = i.ln()), - (o.precision = e), - (o.rounding = t), - i.times(0.5))) - : new o(NaN); -}; -R.inverseSine = R.asin = function () { - var e, - t, - r, - n, - i = this, - o = i.constructor; - return i.isZero() - ? new o(i) - : ((t = i.abs().cmp(1)), - (r = o.precision), - (n = o.rounding), - t !== -1 - ? t === 0 - ? ((e = he(o, r + 4, n).times(0.5)), (e.s = i.s), e) - : new o(NaN) - : ((o.precision = r + 6), - (o.rounding = 1), - (i = i.div(new o(1).minus(i.times(i)).sqrt().plus(1)).atan()), - (o.precision = r), - (o.rounding = n), - i.times(2))); -}; -R.inverseTangent = R.atan = function () { - var e, - t, - r, - n, - i, - o, - s, - a, - l, - d = this, - g = d.constructor, - h = g.precision, - T = g.rounding; - if (d.isFinite()) { - if (d.isZero()) return new g(d); - if (d.abs().eq(1) && h + 4 <= Dn) - return ((s = he(g, h + 4, T).times(0.25)), (s.s = d.s), s); - } else { - if (!d.s) return new g(NaN); - if (h + 4 <= Dn) return ((s = he(g, h + 4, T).times(0.5)), (s.s = d.s), s); - } - for ( - g.precision = a = h + 10, - g.rounding = 1, - r = Math.min(28, (a / D + 2) | 0), - e = r; - e; - --e - ) - d = d.div(d.times(d).plus(1).sqrt().plus(1)); - for ( - _ = !1, t = Math.ceil(a / D), n = 1, l = d.times(d), s = new g(d), i = d; - e !== -1; - ) - if ( - ((i = i.times(l)), - (o = s.minus(i.div((n += 2)))), - (i = i.times(l)), - (s = o.plus(i.div((n += 2)))), - s.d[t] !== void 0) - ) - for (e = t; s.d[e] === o.d[e] && e--; ); - return ( - r && (s = s.times(2 << (r - 1))), - (_ = !0), - k(s, (g.precision = h), (g.rounding = T), !0) - ); -}; -R.isFinite = function () { - return !!this.d; -}; -R.isInteger = R.isInt = function () { - return !!this.d && ee(this.e / D) > this.d.length - 2; -}; -R.isNaN = function () { - return !this.s; -}; -R.isNegative = R.isNeg = function () { - return this.s < 0; -}; -R.isPositive = R.isPos = function () { - return this.s > 0; -}; -R.isZero = function () { - return !!this.d && this.d[0] === 0; -}; -R.lessThan = R.lt = function (e) { - return this.cmp(e) < 0; -}; -R.lessThanOrEqualTo = R.lte = function (e) { - return this.cmp(e) < 1; -}; -R.logarithm = R.log = function (e) { - var t, - r, - n, - i, - o, - s, - a, - l, - d = this, - g = d.constructor, - h = g.precision, - T = g.rounding, - I = 5; - if (e == null) ((e = new g(10)), (t = !0)); - else { - if (((e = new g(e)), (r = e.d), e.s < 0 || !r || !r[0] || e.eq(1))) - return new g(NaN); - t = e.eq(10); - } - if (((r = d.d), d.s < 0 || !r || !r[0] || d.eq(1))) - return new g(r && !r[0] ? -1 / 0 : d.s != 1 ? NaN : r ? 0 : 1 / 0); - if (t) - if (r.length > 1) o = !0; - else { - for (i = r[0]; i % 10 === 0; ) i /= 10; - o = i !== 1; - } - if ( - ((_ = !1), - (a = h + I), - (s = ke(d, a)), - (n = t ? Tr(g, a + 10) : ke(e, a)), - (l = V(s, n, a, 1)), - Ot(l.d, (i = h), T)) - ) - do - if ( - ((a += 10), - (s = ke(d, a)), - (n = t ? Tr(g, a + 10) : ke(e, a)), - (l = V(s, n, a, 1)), - !o) - ) { - +Y(l.d).slice(i + 1, i + 15) + 1 == 1e14 && (l = k(l, h + 1, 0)); - break; - } - while (Ot(l.d, (i += 10), T)); - return ((_ = !0), k(l, h, T)); -}; -R.minus = R.sub = function (e) { - var t, - r, - n, - i, - o, - s, - a, - l, - d, - g, - h, - T, - I = this, - S = I.constructor; - if (((e = new S(e)), !I.d || !e.d)) - return ( - !I.s || !e.s - ? (e = new S(NaN)) - : I.d - ? (e.s = -e.s) - : (e = new S(e.d || I.s !== e.s ? I : NaN)), - e - ); - if (I.s != e.s) return ((e.s = -e.s), I.plus(e)); - if ( - ((d = I.d), (T = e.d), (a = S.precision), (l = S.rounding), !d[0] || !T[0]) - ) { - if (T[0]) e.s = -e.s; - else if (d[0]) e = new S(I); - else return new S(l === 3 ? -0 : 0); - return _ ? k(e, a, l) : e; - } - if (((r = ee(e.e / D)), (g = ee(I.e / D)), (d = d.slice()), (o = g - r), o)) { - for ( - h = o < 0, - h - ? ((t = d), (o = -o), (s = T.length)) - : ((t = T), (r = g), (s = d.length)), - n = Math.max(Math.ceil(a / D), s) + 2, - o > n && ((o = n), (t.length = 1)), - t.reverse(), - n = o; - n--; - ) - t.push(0); - t.reverse(); - } else { - for (n = d.length, s = T.length, h = n < s, h && (s = n), n = 0; n < s; n++) - if (d[n] != T[n]) { - h = d[n] < T[n]; - break; - } - o = 0; - } - for ( - h && ((t = d), (d = T), (T = t), (e.s = -e.s)), - s = d.length, - n = T.length - s; - n > 0; - --n - ) - d[s++] = 0; - for (n = T.length; n > o; ) { - if (d[--n] < T[n]) { - for (i = n; i && d[--i] === 0; ) d[i] = pe - 1; - (--d[i], (d[n] += pe)); - } - d[n] -= T[n]; - } - for (; d[--s] === 0; ) d.pop(); - for (; d[0] === 0; d.shift()) --r; - return d[0] - ? ((e.d = d), (e.e = Rr(d, r)), _ ? k(e, a, l) : e) - : new S(l === 3 ? -0 : 0); -}; -R.modulo = R.mod = function (e) { - var t, - r = this, - n = r.constructor; - return ( - (e = new n(e)), - !r.d || !e.s || (e.d && !e.d[0]) - ? new n(NaN) - : !e.d || (r.d && !r.d[0]) - ? k(new n(r), n.precision, n.rounding) - : ((_ = !1), - n.modulo == 9 - ? ((t = V(r, e.abs(), 0, 3, 1)), (t.s *= e.s)) - : (t = V(r, e, 0, n.modulo, 1)), - (t = t.times(e)), - (_ = !0), - r.minus(t)) - ); -}; -R.naturalExponential = R.exp = function () { - return Mn(this); -}; -R.naturalLogarithm = R.ln = function () { - return ke(this); -}; -R.negated = R.neg = function () { - var e = new this.constructor(this); - return ((e.s = -e.s), k(e)); -}; -R.plus = R.add = function (e) { - var t, - r, - n, - i, - o, - s, - a, - l, - d, - g, - h = this, - T = h.constructor; - if (((e = new T(e)), !h.d || !e.d)) - return ( - !h.s || !e.s - ? (e = new T(NaN)) - : h.d || (e = new T(e.d || h.s === e.s ? h : NaN)), - e - ); - if (h.s != e.s) return ((e.s = -e.s), h.minus(e)); - if ( - ((d = h.d), (g = e.d), (a = T.precision), (l = T.rounding), !d[0] || !g[0]) - ) - return (g[0] || (e = new T(h)), _ ? k(e, a, l) : e); - if (((o = ee(h.e / D)), (n = ee(e.e / D)), (d = d.slice()), (i = o - n), i)) { - for ( - i < 0 - ? ((r = d), (i = -i), (s = g.length)) - : ((r = g), (n = o), (s = d.length)), - o = Math.ceil(a / D), - s = o > s ? o + 1 : s + 1, - i > s && ((i = s), (r.length = 1)), - r.reverse(); - i--; - ) - r.push(0); - r.reverse(); - } - for ( - s = d.length, - i = g.length, - s - i < 0 && ((i = s), (r = g), (g = d), (d = r)), - t = 0; - i; - ) - ((t = ((d[--i] = d[i] + g[i] + t) / pe) | 0), (d[i] %= pe)); - for (t && (d.unshift(t), ++n), s = d.length; d[--s] == 0; ) d.pop(); - return ((e.d = d), (e.e = Rr(d, n)), _ ? k(e, a, l) : e); -}; -R.precision = R.sd = function (e) { - var t, - r = this; - if (e !== void 0 && e !== !!e && e !== 1 && e !== 0) throw Error(De + e); - return ( - r.d ? ((t = yo(r.d)), e && r.e + 1 > t && (t = r.e + 1)) : (t = NaN), - t - ); -}; -R.round = function () { - var e = this, - t = e.constructor; - return k(new t(e), e.e + 1, t.rounding); -}; -R.sine = R.sin = function () { - var e, - t, - r = this, - n = r.constructor; - return r.isFinite() - ? r.isZero() - ? new n(r) - : ((e = n.precision), - (t = n.rounding), - (n.precision = e + Math.max(r.e, r.sd()) + D), - (n.rounding = 1), - (r = Ql(n, xo(n, r))), - (n.precision = e), - (n.rounding = t), - k(ve > 2 ? r.neg() : r, e, t, !0)) - : new n(NaN); -}; -R.squareRoot = R.sqrt = function () { - var e, - t, - r, - n, - i, - o, - s = this, - a = s.d, - l = s.e, - d = s.s, - g = s.constructor; - if (d !== 1 || !a || !a[0]) - return new g(!d || (d < 0 && (!a || a[0])) ? NaN : a ? s : 1 / 0); - for ( - _ = !1, - d = Math.sqrt(+s), - d == 0 || d == 1 / 0 - ? ((t = Y(a)), - (t.length + l) % 2 == 0 && (t += "0"), - (d = Math.sqrt(t)), - (l = ee((l + 1) / 2) - (l < 0 || l % 2)), - d == 1 / 0 - ? (t = "5e" + l) - : ((t = d.toExponential()), - (t = t.slice(0, t.indexOf("e") + 1) + l)), - (n = new g(t))) - : (n = new g(d.toString())), - r = (l = g.precision) + 3; - ; - ) - if ( - ((o = n), - (n = o.plus(V(s, o, r + 2, 1)).times(0.5)), - Y(o.d).slice(0, r) === (t = Y(n.d)).slice(0, r)) - ) - if (((t = t.slice(r - 3, r + 1)), t == "9999" || (!i && t == "4999"))) { - if (!i && (k(o, l + 1, 0), o.times(o).eq(s))) { - n = o; - break; - } - ((r += 4), (i = 1)); - } else { - (!+t || (!+t.slice(1) && t.charAt(0) == "5")) && - (k(n, l + 1, 1), (e = !n.times(n).eq(s))); - break; - } - return ((_ = !0), k(n, l, g.rounding, e)); -}; -R.tangent = R.tan = function () { - var e, - t, - r = this, - n = r.constructor; - return r.isFinite() - ? r.isZero() - ? new n(r) - : ((e = n.precision), - (t = n.rounding), - (n.precision = e + 10), - (n.rounding = 1), - (r = r.sin()), - (r.s = 1), - (r = V(r, new n(1).minus(r.times(r)).sqrt(), e + 10, 0)), - (n.precision = e), - (n.rounding = t), - k(ve == 2 || ve == 4 ? r.neg() : r, e, t, !0)) - : new n(NaN); -}; -R.times = R.mul = function (e) { - var t, - r, - n, - i, - o, - s, - a, - l, - d, - g = this, - h = g.constructor, - T = g.d, - I = (e = new h(e)).d; - if (((e.s *= g.s), !T || !T[0] || !I || !I[0])) - return new h( - !e.s || (T && !T[0] && !I) || (I && !I[0] && !T) - ? NaN - : !T || !I - ? e.s / 0 - : e.s * 0, - ); - for ( - r = ee(g.e / D) + ee(e.e / D), - l = T.length, - d = I.length, - l < d && ((o = T), (T = I), (I = o), (s = l), (l = d), (d = s)), - o = [], - s = l + d, - n = s; - n--; - ) - o.push(0); - for (n = d; --n >= 0; ) { - for (t = 0, i = l + n; i > n; ) - ((a = o[i] + I[n] * T[i - n - 1] + t), - (o[i--] = (a % pe) | 0), - (t = (a / pe) | 0)); - o[i] = ((o[i] + t) % pe) | 0; - } - for (; !o[--s]; ) o.pop(); - return ( - t ? ++r : o.shift(), - (e.d = o), - (e.e = Rr(o, r)), - _ ? k(e, h.precision, h.rounding) : e - ); -}; -R.toBinary = function (e, t) { - return _n(this, 2, e, t); -}; -R.toDecimalPlaces = R.toDP = function (e, t) { - var r = this, - n = r.constructor; - return ( - (r = new n(r)), - e === void 0 - ? r - : (oe(e, 0, Me), - t === void 0 ? (t = n.rounding) : oe(t, 0, 8), - k(r, e + r.e + 1, t)) - ); -}; -R.toExponential = function (e, t) { - var r, - n = this, - i = n.constructor; - return ( - e === void 0 - ? (r = ye(n, !0)) - : (oe(e, 0, Me), - t === void 0 ? (t = i.rounding) : oe(t, 0, 8), - (n = k(new i(n), e + 1, t)), - (r = ye(n, !0, e + 1))), - n.isNeg() && !n.isZero() ? "-" + r : r - ); -}; -R.toFixed = function (e, t) { - var r, - n, - i = this, - o = i.constructor; - return ( - e === void 0 - ? (r = ye(i)) - : (oe(e, 0, Me), - t === void 0 ? (t = o.rounding) : oe(t, 0, 8), - (n = k(new o(i), e + i.e + 1, t)), - (r = ye(n, !1, e + n.e + 1))), - i.isNeg() && !i.isZero() ? "-" + r : r - ); -}; -R.toFraction = function (e) { - var t, - r, - n, - i, - o, - s, - a, - l, - d, - g, - h, - T, - I = this, - S = I.d, - C = I.constructor; - if (!S) return new C(I); - if ( - ((d = r = new C(1)), - (n = l = new C(0)), - (t = new C(n)), - (o = t.e = yo(S) - I.e - 1), - (s = o % D), - (t.d[0] = K(10, s < 0 ? D + s : s)), - e == null) - ) - e = o > 0 ? t : d; - else { - if (((a = new C(e)), !a.isInt() || a.lt(d))) throw Error(De + a); - e = a.gt(t) ? (o > 0 ? t : d) : a; - } - for ( - _ = !1, - a = new C(Y(S)), - g = C.precision, - C.precision = o = S.length * D * 2; - (h = V(a, t, 0, 1, 1)), (i = r.plus(h.times(n))), i.cmp(e) != 1; - ) - ((r = n), - (n = i), - (i = d), - (d = l.plus(h.times(i))), - (l = i), - (i = t), - (t = a.minus(h.times(i))), - (a = i)); - return ( - (i = V(e.minus(r), n, 0, 1, 1)), - (l = l.plus(i.times(d))), - (r = r.plus(i.times(n))), - (l.s = d.s = I.s), - (T = - V(d, n, o, 1) - .minus(I) - .abs() - .cmp(V(l, r, o, 1).minus(I).abs()) < 1 - ? [d, n] - : [l, r]), - (C.precision = g), - (_ = !0), - T - ); -}; -R.toHexadecimal = R.toHex = function (e, t) { - return _n(this, 16, e, t); -}; -R.toNearest = function (e, t) { - var r = this, - n = r.constructor; - if (((r = new n(r)), e == null)) { - if (!r.d) return r; - ((e = new n(1)), (t = n.rounding)); - } else { - if (((e = new n(e)), t === void 0 ? (t = n.rounding) : oe(t, 0, 8), !r.d)) - return e.s ? r : e; - if (!e.d) return (e.s && (e.s = r.s), e); - } - return ( - e.d[0] - ? ((_ = !1), (r = V(r, e, 0, t, 1).times(e)), (_ = !0), k(r)) - : ((e.s = r.s), (r = e)), - r - ); -}; -R.toNumber = function () { - return +this; -}; -R.toOctal = function (e, t) { - return _n(this, 8, e, t); -}; -R.toPower = R.pow = function (e) { - var t, - r, - n, - i, - o, - s, - a = this, - l = a.constructor, - d = +(e = new l(e)); - if (!a.d || !e.d || !a.d[0] || !e.d[0]) return new l(K(+a, d)); - if (((a = new l(a)), a.eq(1))) return a; - if (((n = l.precision), (o = l.rounding), e.eq(1))) return k(a, n, o); - if (((t = ee(e.e / D)), t >= e.d.length - 1 && (r = d < 0 ? -d : d) <= $l)) - return ((i = wo(l, a, r, n)), e.s < 0 ? new l(1).div(i) : k(i, n, o)); - if (((s = a.s), s < 0)) { - if (t < e.d.length - 1) return new l(NaN); - if ( - ((e.d[t] & 1) == 0 && (s = 1), a.e == 0 && a.d[0] == 1 && a.d.length == 1) - ) - return ((a.s = s), a); - } - return ( - (r = K(+a, d)), - (t = - r == 0 || !isFinite(r) - ? ee(d * (Math.log("0." + Y(a.d)) / Math.LN10 + a.e + 1)) - : new l(r + "").e), - t > l.maxE + 1 || t < l.minE - 1 - ? new l(t > 0 ? s / 0 : 0) - : ((_ = !1), - (l.rounding = a.s = 1), - (r = Math.min(12, (t + "").length)), - (i = Mn(e.times(ke(a, n + r)), n)), - i.d && - ((i = k(i, n + 5, 1)), - Ot(i.d, n, o) && - ((t = n + 10), - (i = k(Mn(e.times(ke(a, t + r)), t), t + 5, 1)), - +Y(i.d).slice(n + 1, n + 15) + 1 == 1e14 && (i = k(i, n + 1, 0)))), - (i.s = s), - (_ = !0), - (l.rounding = o), - k(i, n, o)) - ); -}; -R.toPrecision = function (e, t) { - var r, - n = this, - i = n.constructor; - return ( - e === void 0 - ? (r = ye(n, n.e <= i.toExpNeg || n.e >= i.toExpPos)) - : (oe(e, 1, Me), - t === void 0 ? (t = i.rounding) : oe(t, 0, 8), - (n = k(new i(n), e, t)), - (r = ye(n, e <= n.e || n.e <= i.toExpNeg, e))), - n.isNeg() && !n.isZero() ? "-" + r : r - ); -}; -R.toSignificantDigits = R.toSD = function (e, t) { - var r = this, - n = r.constructor; - return ( - e === void 0 - ? ((e = n.precision), (t = n.rounding)) - : (oe(e, 1, Me), t === void 0 ? (t = n.rounding) : oe(t, 0, 8)), - k(new n(r), e, t) - ); -}; -R.toString = function () { - var e = this, - t = e.constructor, - r = ye(e, e.e <= t.toExpNeg || e.e >= t.toExpPos); - return e.isNeg() && !e.isZero() ? "-" + r : r; -}; -R.truncated = R.trunc = function () { - return k(new this.constructor(this), this.e + 1, 1); -}; -R.valueOf = R.toJSON = function () { - var e = this, - t = e.constructor, - r = ye(e, e.e <= t.toExpNeg || e.e >= t.toExpPos); - return e.isNeg() ? "-" + r : r; -}; -function Y(e) { - var t, - r, - n, - i = e.length - 1, - o = "", - s = e[0]; - if (i > 0) { - for (o += s, t = 1; t < i; t++) - ((n = e[t] + ""), (r = D - n.length), r && (o += Oe(r)), (o += n)); - ((s = e[t]), (n = s + ""), (r = D - n.length), r && (o += Oe(r))); - } else if (s === 0) return "0"; - for (; s % 10 === 0; ) s /= 10; - return o + s; -} -function oe(e, t, r) { - if (e !== ~~e || e < t || e > r) throw Error(De + e); -} -function Ot(e, t, r, n) { - var i, o, s, a; - for (o = e[0]; o >= 10; o /= 10) --t; - return ( - --t < 0 ? ((t += D), (i = 0)) : ((i = Math.ceil((t + 1) / D)), (t %= D)), - (o = K(10, D - t)), - (a = (e[i] % o) | 0), - n == null - ? t < 3 - ? (t == 0 ? (a = (a / 100) | 0) : t == 1 && (a = (a / 10) | 0), - (s = - (r < 4 && a == 99999) || - (r > 3 && a == 49999) || - a == 5e4 || - a == 0)) - : (s = - (((r < 4 && a + 1 == o) || (r > 3 && a + 1 == o / 2)) && - ((e[i + 1] / o / 100) | 0) == K(10, t - 2) - 1) || - ((a == o / 2 || a == 0) && ((e[i + 1] / o / 100) | 0) == 0)) - : t < 4 - ? (t == 0 - ? (a = (a / 1e3) | 0) - : t == 1 - ? (a = (a / 100) | 0) - : t == 2 && (a = (a / 10) | 0), - (s = ((n || r < 4) && a == 9999) || (!n && r > 3 && a == 4999))) - : (s = - (((n || r < 4) && a + 1 == o) || (!n && r > 3 && a + 1 == o / 2)) && - ((e[i + 1] / o / 1e3) | 0) == K(10, t - 3) - 1), - s - ); -} -function br(e, t, r) { - for (var n, i = [0], o, s = 0, a = e.length; s < a; ) { - for (o = i.length; o--; ) i[o] *= t; - for (i[0] += On.indexOf(e.charAt(s++)), n = 0; n < i.length; n++) - i[n] > r - 1 && - (i[n + 1] === void 0 && (i[n + 1] = 0), - (i[n + 1] += (i[n] / r) | 0), - (i[n] %= r)); - } - return i.reverse(); -} -function Gl(e, t) { - var r, n, i; - if (t.isZero()) return t; - ((n = t.d.length), - n < 32 - ? ((r = Math.ceil(n / 3)), (i = (1 / Cr(4, r)).toString())) - : ((r = 16), (i = "2.3283064365386962890625e-10")), - (e.precision += r), - (t = tt(e, 1, t.times(i), new e(1)))); - for (var o = r; o--; ) { - var s = t.times(t); - t = s.times(s).minus(s).times(8).plus(1); - } - return ((e.precision -= r), t); -} -var V = (function () { - function e(n, i, o) { - var s, - a = 0, - l = n.length; - for (n = n.slice(); l--; ) - ((s = n[l] * i + a), (n[l] = (s % o) | 0), (a = (s / o) | 0)); - return (a && n.unshift(a), n); - } - function t(n, i, o, s) { - var a, l; - if (o != s) l = o > s ? 1 : -1; - else - for (a = l = 0; a < o; a++) - if (n[a] != i[a]) { - l = n[a] > i[a] ? 1 : -1; - break; - } - return l; - } - function r(n, i, o, s) { - for (var a = 0; o--; ) - ((n[o] -= a), (a = n[o] < i[o] ? 1 : 0), (n[o] = a * s + n[o] - i[o])); - for (; !n[0] && n.length > 1; ) n.shift(); - } - return function (n, i, o, s, a, l) { - var d, - g, - h, - T, - I, - S, - C, - M, - F, - B, - O, - L, - le, - J, - sn, - or, - Pt, - an, - ce, - sr, - ar = n.constructor, - ln = n.s == i.s ? 1 : -1, - Z = n.d, - $ = i.d; - if (!Z || !Z[0] || !$ || !$[0]) - return new ar( - !n.s || !i.s || (Z ? $ && Z[0] == $[0] : !$) - ? NaN - : (Z && Z[0] == 0) || !$ - ? ln * 0 - : ln / 0, - ); - for ( - l - ? ((I = 1), (g = n.e - i.e)) - : ((l = pe), (I = D), (g = ee(n.e / I) - ee(i.e / I))), - ce = $.length, - Pt = Z.length, - F = new ar(ln), - B = F.d = [], - h = 0; - $[h] == (Z[h] || 0); - h++ - ); - if ( - ($[h] > (Z[h] || 0) && g--, - o == null - ? ((J = o = ar.precision), (s = ar.rounding)) - : a - ? (J = o + (n.e - i.e) + 1) - : (J = o), - J < 0) - ) - (B.push(1), (S = !0)); - else { - if (((J = (J / I + 2) | 0), (h = 0), ce == 1)) { - for (T = 0, $ = $[0], J++; (h < Pt || T) && J--; h++) - ((sn = T * l + (Z[h] || 0)), - (B[h] = (sn / $) | 0), - (T = (sn % $) | 0)); - S = T || h < Pt; - } else { - for ( - T = (l / ($[0] + 1)) | 0, - T > 1 && - (($ = e($, T, l)), - (Z = e(Z, T, l)), - (ce = $.length), - (Pt = Z.length)), - or = ce, - O = Z.slice(0, ce), - L = O.length; - L < ce; - ) - O[L++] = 0; - ((sr = $.slice()), sr.unshift(0), (an = $[0]), $[1] >= l / 2 && ++an); - do - ((T = 0), - (d = t($, O, ce, L)), - d < 0 - ? ((le = O[0]), - ce != L && (le = le * l + (O[1] || 0)), - (T = (le / an) | 0), - T > 1 - ? (T >= l && (T = l - 1), - (C = e($, T, l)), - (M = C.length), - (L = O.length), - (d = t(C, O, M, L)), - d == 1 && (T--, r(C, ce < M ? sr : $, M, l))) - : (T == 0 && (d = T = 1), (C = $.slice())), - (M = C.length), - M < L && C.unshift(0), - r(O, C, L, l), - d == -1 && - ((L = O.length), - (d = t($, O, ce, L)), - d < 1 && (T++, r(O, ce < L ? sr : $, L, l))), - (L = O.length)) - : d === 0 && (T++, (O = [0])), - (B[h++] = T), - d && O[0] ? (O[L++] = Z[or] || 0) : ((O = [Z[or]]), (L = 1))); - while ((or++ < Pt || O[0] !== void 0) && J--); - S = O[0] !== void 0; - } - B[0] || B.shift(); - } - if (I == 1) ((F.e = g), (po = S)); - else { - for (h = 1, T = B[0]; T >= 10; T /= 10) h++; - ((F.e = h + g * I - 1), k(F, a ? o + F.e + 1 : o, s, S)); - } - return F; - }; -})(); -function k(e, t, r, n) { - var i, - o, - s, - a, - l, - d, - g, - h, - T, - I = e.constructor; - e: if (t != null) { - if (((h = e.d), !h)) return e; - for (i = 1, a = h[0]; a >= 10; a /= 10) i++; - if (((o = t - i), o < 0)) - ((o += D), - (s = t), - (g = h[(T = 0)]), - (l = ((g / K(10, i - s - 1)) % 10) | 0)); - else if (((T = Math.ceil((o + 1) / D)), (a = h.length), T >= a)) - if (n) { - for (; a++ <= T; ) h.push(0); - ((g = l = 0), (i = 1), (o %= D), (s = o - D + 1)); - } else break e; - else { - for (g = a = h[T], i = 1; a >= 10; a /= 10) i++; - ((o %= D), - (s = o - D + i), - (l = s < 0 ? 0 : ((g / K(10, i - s - 1)) % 10) | 0)); - } - if ( - ((n = - n || - t < 0 || - h[T + 1] !== void 0 || - (s < 0 ? g : g % K(10, i - s - 1))), - (d = - r < 4 - ? (l || n) && (r == 0 || r == (e.s < 0 ? 3 : 2)) - : l > 5 || - (l == 5 && - (r == 4 || - n || - (r == 6 && - ((o > 0 ? (s > 0 ? g / K(10, i - s) : 0) : h[T - 1]) % 10) & - 1) || - r == (e.s < 0 ? 8 : 7)))), - t < 1 || !h[0]) - ) - return ( - (h.length = 0), - d - ? ((t -= e.e + 1), (h[0] = K(10, (D - (t % D)) % D)), (e.e = -t || 0)) - : (h[0] = e.e = 0), - e - ); - if ( - (o == 0 - ? ((h.length = T), (a = 1), T--) - : ((h.length = T + 1), - (a = K(10, D - o)), - (h[T] = s > 0 ? (((g / K(10, i - s)) % K(10, s)) | 0) * a : 0)), - d) - ) - for (;;) - if (T == 0) { - for (o = 1, s = h[0]; s >= 10; s /= 10) o++; - for (s = h[0] += a, a = 1; s >= 10; s /= 10) a++; - o != a && (e.e++, h[0] == pe && (h[0] = 1)); - break; - } else { - if (((h[T] += a), h[T] != pe)) break; - ((h[T--] = 0), (a = 1)); - } - for (o = h.length; h[--o] === 0; ) h.pop(); - } - return ( - _ && - (e.e > I.maxE - ? ((e.d = null), (e.e = NaN)) - : e.e < I.minE && ((e.e = 0), (e.d = [0]))), - e - ); -} -function ye(e, t, r) { - if (!e.isFinite()) return bo(e); - var n, - i = e.e, - o = Y(e.d), - s = o.length; - return ( - t - ? (r && (n = r - s) > 0 - ? (o = o.charAt(0) + "." + o.slice(1) + Oe(n)) - : s > 1 && (o = o.charAt(0) + "." + o.slice(1)), - (o = o + (e.e < 0 ? "e" : "e+") + e.e)) - : i < 0 - ? ((o = "0." + Oe(-i - 1) + o), r && (n = r - s) > 0 && (o += Oe(n))) - : i >= s - ? ((o += Oe(i + 1 - s)), - r && (n = r - i - 1) > 0 && (o = o + "." + Oe(n))) - : ((n = i + 1) < s && (o = o.slice(0, n) + "." + o.slice(n)), - r && (n = r - s) > 0 && (i + 1 === s && (o += "."), (o += Oe(n)))), - o - ); -} -function Rr(e, t) { - var r = e[0]; - for (t *= D; r >= 10; r /= 10) t++; - return t; -} -function Tr(e, t, r) { - if (t > jl) throw ((_ = !0), r && (e.precision = r), Error(mo)); - return k(new e(Pr), t, 1, !0); -} -function he(e, t, r) { - if (t > Dn) throw Error(mo); - return k(new e(vr), t, r, !0); -} -function yo(e) { - var t = e.length - 1, - r = t * D + 1; - if (((t = e[t]), t)) { - for (; t % 10 == 0; t /= 10) r--; - for (t = e[0]; t >= 10; t /= 10) r++; - } - return r; -} -function Oe(e) { - for (var t = ""; e--; ) t += "0"; - return t; -} -function wo(e, t, r, n) { - var i, - o = new e(1), - s = Math.ceil(n / D + 4); - for (_ = !1; ; ) { - if ( - (r % 2 && ((o = o.times(t)), uo(o.d, s) && (i = !0)), - (r = ee(r / 2)), - r === 0) - ) { - ((r = o.d.length - 1), i && o.d[r] === 0 && ++o.d[r]); - break; - } - ((t = t.times(t)), uo(t.d, s)); - } - return ((_ = !0), o); -} -function lo(e) { - return e.d[e.d.length - 1] & 1; -} -function Eo(e, t, r) { - for (var n, i, o = new e(t[0]), s = 0; ++s < t.length; ) { - if (((i = new e(t[s])), !i.s)) { - o = i; - break; - } - ((n = o.cmp(i)), (n === r || (n === 0 && o.s === r)) && (o = i)); - } - return o; -} -function Mn(e, t) { - var r, - n, - i, - o, - s, - a, - l, - d = 0, - g = 0, - h = 0, - T = e.constructor, - I = T.rounding, - S = T.precision; - if (!e.d || !e.d[0] || e.e > 17) - return new T( - e.d - ? e.d[0] - ? e.s < 0 - ? 0 - : 1 / 0 - : 1 - : e.s - ? e.s < 0 - ? 0 - : e - : NaN, - ); - for ( - t == null ? ((_ = !1), (l = S)) : (l = t), a = new T(0.03125); - e.e > -2; - ) - ((e = e.times(a)), (h += 5)); - for ( - n = ((Math.log(K(2, h)) / Math.LN10) * 2 + 5) | 0, - l += n, - r = o = s = new T(1), - T.precision = l; - ; - ) { - if ( - ((o = k(o.times(e), l, 1)), - (r = r.times(++g)), - (a = s.plus(V(o, r, l, 1))), - Y(a.d).slice(0, l) === Y(s.d).slice(0, l)) - ) { - for (i = h; i--; ) s = k(s.times(s), l, 1); - if (t == null) - if (d < 3 && Ot(s.d, l - n, I, d)) - ((T.precision = l += 10), (r = o = a = new T(1)), (g = 0), d++); - else return k(s, (T.precision = S), I, (_ = !0)); - else return ((T.precision = S), s); - } - s = a; - } -} -function ke(e, t) { - var r, - n, - i, - o, - s, - a, - l, - d, - g, - h, - T, - I = 1, - S = 10, - C = e, - M = C.d, - F = C.constructor, - B = F.rounding, - O = F.precision; - if (C.s < 0 || !M || !M[0] || (!C.e && M[0] == 1 && M.length == 1)) - return new F(M && !M[0] ? -1 / 0 : C.s != 1 ? NaN : M ? 0 : C); - if ( - (t == null ? ((_ = !1), (g = O)) : (g = t), - (F.precision = g += S), - (r = Y(M)), - (n = r.charAt(0)), - Math.abs((o = C.e)) < 15e14) - ) { - for (; (n < 7 && n != 1) || (n == 1 && r.charAt(1) > 3); ) - ((C = C.times(e)), (r = Y(C.d)), (n = r.charAt(0)), I++); - ((o = C.e), - n > 1 ? ((C = new F("0." + r)), o++) : (C = new F(n + "." + r.slice(1)))); - } else - return ( - (d = Tr(F, g + 2, O).times(o + "")), - (C = ke(new F(n + "." + r.slice(1)), g - S).plus(d)), - (F.precision = O), - t == null ? k(C, O, B, (_ = !0)) : C - ); - for ( - h = C, - l = s = C = V(C.minus(1), C.plus(1), g, 1), - T = k(C.times(C), g, 1), - i = 3; - ; - ) { - if ( - ((s = k(s.times(T), g, 1)), - (d = l.plus(V(s, new F(i), g, 1))), - Y(d.d).slice(0, g) === Y(l.d).slice(0, g)) - ) - if ( - ((l = l.times(2)), - o !== 0 && (l = l.plus(Tr(F, g + 2, O).times(o + ""))), - (l = V(l, new F(I), g, 1)), - t == null) - ) - if (Ot(l.d, g - S, B, a)) - ((F.precision = g += S), - (d = s = C = V(h.minus(1), h.plus(1), g, 1)), - (T = k(C.times(C), g, 1)), - (i = a = 1)); - else return k(l, (F.precision = O), B, (_ = !0)); - else return ((F.precision = O), l); - ((l = d), (i += 2)); - } -} -function bo(e) { - return String((e.s * e.s) / 0); -} -function xr(e, t) { - var r, n, i; - for ( - (r = t.indexOf(".")) > -1 && (t = t.replace(".", "")), - (n = t.search(/e/i)) > 0 - ? (r < 0 && (r = n), (r += +t.slice(n + 1)), (t = t.substring(0, n))) - : r < 0 && (r = t.length), - n = 0; - t.charCodeAt(n) === 48; - n++ - ); - for (i = t.length; t.charCodeAt(i - 1) === 48; --i); - if (((t = t.slice(n, i)), t)) { - if ( - ((i -= n), - (e.e = r = r - n - 1), - (e.d = []), - (n = (r + 1) % D), - r < 0 && (n += D), - n < i) - ) { - for (n && e.d.push(+t.slice(0, n)), i -= D; n < i; ) - e.d.push(+t.slice(n, (n += D))); - ((t = t.slice(n)), (n = D - t.length)); - } else n -= i; - for (; n--; ) t += "0"; - (e.d.push(+t), - _ && - (e.e > e.constructor.maxE - ? ((e.d = null), (e.e = NaN)) - : e.e < e.constructor.minE && ((e.e = 0), (e.d = [0])))); - } else ((e.e = 0), (e.d = [0])); - return e; -} -function Jl(e, t) { - var r, n, i, o, s, a, l, d, g; - if (t.indexOf("_") > -1) { - if (((t = t.replace(/(\d)_(?=\d)/g, "$1")), ho.test(t))) return xr(e, t); - } else if (t === "Infinity" || t === "NaN") - return (+t || (e.s = NaN), (e.e = NaN), (e.d = null), e); - if (ql.test(t)) ((r = 16), (t = t.toLowerCase())); - else if (Bl.test(t)) r = 2; - else if (Vl.test(t)) r = 8; - else throw Error(De + t); - for ( - o = t.search(/p/i), - o > 0 - ? ((l = +t.slice(o + 1)), (t = t.substring(2, o))) - : (t = t.slice(2)), - o = t.indexOf("."), - s = o >= 0, - n = e.constructor, - s && - ((t = t.replace(".", "")), - (a = t.length), - (o = a - o), - (i = wo(n, new n(r), o, o * 2))), - d = br(t, r, pe), - g = d.length - 1, - o = g; - d[o] === 0; - --o - ) - d.pop(); - return o < 0 - ? new n(e.s * 0) - : ((e.e = Rr(d, g)), - (e.d = d), - (_ = !1), - s && (e = V(e, i, a * 4)), - l && (e = e.times(Math.abs(l) < 54 ? K(2, l) : Te.pow(2, l))), - (_ = !0), - e); -} -function Ql(e, t) { - var r, - n = t.d.length; - if (n < 3) return t.isZero() ? t : tt(e, 2, t, t); - ((r = 1.4 * Math.sqrt(n)), - (r = r > 16 ? 16 : r | 0), - (t = t.times(1 / Cr(5, r))), - (t = tt(e, 2, t, t))); - for (var i, o = new e(5), s = new e(16), a = new e(20); r--; ) - ((i = t.times(t)), (t = t.times(o.plus(i.times(s.times(i).minus(a)))))); - return t; -} -function tt(e, t, r, n, i) { - var o, - s, - a, - l, - d = 1, - g = e.precision, - h = Math.ceil(g / D); - for (_ = !1, l = r.times(r), a = new e(n); ; ) { - if ( - ((s = V(a.times(l), new e(t++ * t++), g, 1)), - (a = i ? n.plus(s) : n.minus(s)), - (n = V(s.times(l), new e(t++ * t++), g, 1)), - (s = a.plus(n)), - s.d[h] !== void 0) - ) { - for (o = h; s.d[o] === a.d[o] && o--; ); - if (o == -1) break; - } - ((o = a), (a = n), (n = s), (s = o), d++); - } - return ((_ = !0), (s.d.length = h + 1), s); -} -function Cr(e, t) { - for (var r = e; --t; ) r *= e; - return r; -} -function xo(e, t) { - var r, - n = t.s < 0, - i = he(e, e.precision, 1), - o = i.times(0.5); - if (((t = t.abs()), t.lte(o))) return ((ve = n ? 4 : 1), t); - if (((r = t.divToInt(i)), r.isZero())) ve = n ? 3 : 2; - else { - if (((t = t.minus(r.times(i))), t.lte(o))) - return ((ve = lo(r) ? (n ? 2 : 3) : n ? 4 : 1), t); - ve = lo(r) ? (n ? 1 : 4) : n ? 3 : 2; - } - return t.minus(i).abs(); -} -function _n(e, t, r, n) { - var i, - o, - s, - a, - l, - d, - g, - h, - T, - I = e.constructor, - S = r !== void 0; - if ( - (S - ? (oe(r, 1, Me), n === void 0 ? (n = I.rounding) : oe(n, 0, 8)) - : ((r = I.precision), (n = I.rounding)), - !e.isFinite()) - ) - g = bo(e); - else { - for ( - g = ye(e), - s = g.indexOf("."), - S - ? ((i = 2), t == 16 ? (r = r * 4 - 3) : t == 8 && (r = r * 3 - 2)) - : (i = t), - s >= 0 && - ((g = g.replace(".", "")), - (T = new I(1)), - (T.e = g.length - s), - (T.d = br(ye(T), 10, i)), - (T.e = T.d.length)), - h = br(g, 10, i), - o = l = h.length; - h[--l] == 0; - ) - h.pop(); - if (!h[0]) g = S ? "0p+0" : "0"; - else { - if ( - (s < 0 - ? o-- - : ((e = new I(e)), - (e.d = h), - (e.e = o), - (e = V(e, T, r, n, 0, i)), - (h = e.d), - (o = e.e), - (d = po)), - (s = h[r]), - (a = i / 2), - (d = d || h[r + 1] !== void 0), - (d = - n < 4 - ? (s !== void 0 || d) && (n === 0 || n === (e.s < 0 ? 3 : 2)) - : s > a || - (s === a && - (n === 4 || - d || - (n === 6 && h[r - 1] & 1) || - n === (e.s < 0 ? 8 : 7)))), - (h.length = r), - d) - ) - for (; ++h[--r] > i - 1; ) ((h[r] = 0), r || (++o, h.unshift(1))); - for (l = h.length; !h[l - 1]; --l); - for (s = 0, g = ""; s < l; s++) g += On.charAt(h[s]); - if (S) { - if (l > 1) - if (t == 16 || t == 8) { - for (s = t == 16 ? 4 : 3, --l; l % s; l++) g += "0"; - for (h = br(g, i, t), l = h.length; !h[l - 1]; --l); - for (s = 1, g = "1."; s < l; s++) g += On.charAt(h[s]); - } else g = g.charAt(0) + "." + g.slice(1); - g = g + (o < 0 ? "p" : "p+") + o; - } else if (o < 0) { - for (; ++o; ) g = "0" + g; - g = "0." + g; - } else if (++o > l) for (o -= l; o--; ) g += "0"; - else o < l && (g = g.slice(0, o) + "." + g.slice(o)); - } - g = (t == 16 ? "0x" : t == 2 ? "0b" : t == 8 ? "0o" : "") + g; - } - return e.s < 0 ? "-" + g : g; -} -function uo(e, t) { - if (e.length > t) return ((e.length = t), !0); -} -function Kl(e) { - return new this(e).abs(); -} -function Wl(e) { - return new this(e).acos(); -} -function Hl(e) { - return new this(e).acosh(); -} -function zl(e, t) { - return new this(e).plus(t); -} -function Yl(e) { - return new this(e).asin(); -} -function Zl(e) { - return new this(e).asinh(); -} -function Xl(e) { - return new this(e).atan(); -} -function eu(e) { - return new this(e).atanh(); -} -function tu(e, t) { - ((e = new this(e)), (t = new this(t))); - var r, - n = this.precision, - i = this.rounding, - o = n + 4; - return ( - !e.s || !t.s - ? (r = new this(NaN)) - : !e.d && !t.d - ? ((r = he(this, o, 1).times(t.s > 0 ? 0.25 : 0.75)), (r.s = e.s)) - : !t.d || e.isZero() - ? ((r = t.s < 0 ? he(this, n, i) : new this(0)), (r.s = e.s)) - : !e.d || t.isZero() - ? ((r = he(this, o, 1).times(0.5)), (r.s = e.s)) - : t.s < 0 - ? ((this.precision = o), - (this.rounding = 1), - (r = this.atan(V(e, t, o, 1))), - (t = he(this, o, 1)), - (this.precision = n), - (this.rounding = i), - (r = e.s < 0 ? r.minus(t) : r.plus(t))) - : (r = this.atan(V(e, t, o, 1))), - r - ); -} -function ru(e) { - return new this(e).cbrt(); -} -function nu(e) { - return k((e = new this(e)), e.e + 1, 2); -} -function iu(e, t, r) { - return new this(e).clamp(t, r); -} -function ou(e) { - if (!e || typeof e != "object") throw Error(Ar + "Object expected"); - var t, - r, - n, - i = e.defaults === !0, - o = [ - "precision", - 1, - Me, - "rounding", - 0, - 8, - "toExpNeg", - -et, - 0, - "toExpPos", - 0, - et, - "maxE", - 0, - et, - "minE", - -et, - 0, - "modulo", - 0, - 9, - ]; - for (t = 0; t < o.length; t += 3) - if (((r = o[t]), i && (this[r] = kn[r]), (n = e[r]) !== void 0)) - if (ee(n) === n && n >= o[t + 1] && n <= o[t + 2]) this[r] = n; - else throw Error(De + r + ": " + n); - if (((r = "crypto"), i && (this[r] = kn[r]), (n = e[r]) !== void 0)) - if (n === !0 || n === !1 || n === 0 || n === 1) - if (n) - if ( - typeof crypto < "u" && - crypto && - (crypto.getRandomValues || crypto.randomBytes) - ) - this[r] = !0; - else throw Error(fo); - else this[r] = !1; - else throw Error(De + r + ": " + n); - return this; -} -function su(e) { - return new this(e).cos(); -} -function au(e) { - return new this(e).cosh(); -} -function Po(e) { - var t, r, n; - function i(o) { - var s, - a, - l, - d = this; - if (!(d instanceof i)) return new i(o); - if (((d.constructor = i), co(o))) { - ((d.s = o.s), - _ - ? !o.d || o.e > i.maxE - ? ((d.e = NaN), (d.d = null)) - : o.e < i.minE - ? ((d.e = 0), (d.d = [0])) - : ((d.e = o.e), (d.d = o.d.slice())) - : ((d.e = o.e), (d.d = o.d ? o.d.slice() : o.d))); - return; - } - if (((l = typeof o), l === "number")) { - if (o === 0) { - ((d.s = 1 / o < 0 ? -1 : 1), (d.e = 0), (d.d = [0])); - return; - } - if ((o < 0 ? ((o = -o), (d.s = -1)) : (d.s = 1), o === ~~o && o < 1e7)) { - for (s = 0, a = o; a >= 10; a /= 10) s++; - _ - ? s > i.maxE - ? ((d.e = NaN), (d.d = null)) - : s < i.minE - ? ((d.e = 0), (d.d = [0])) - : ((d.e = s), (d.d = [o])) - : ((d.e = s), (d.d = [o])); - return; - } - if (o * 0 !== 0) { - (o || (d.s = NaN), (d.e = NaN), (d.d = null)); - return; - } - return xr(d, o.toString()); - } - if (l === "string") - return ( - (a = o.charCodeAt(0)) === 45 - ? ((o = o.slice(1)), (d.s = -1)) - : (a === 43 && (o = o.slice(1)), (d.s = 1)), - ho.test(o) ? xr(d, o) : Jl(d, o) - ); - if (l === "bigint") - return (o < 0 ? ((o = -o), (d.s = -1)) : (d.s = 1), xr(d, o.toString())); - throw Error(De + o); - } - if ( - ((i.prototype = R), - (i.ROUND_UP = 0), - (i.ROUND_DOWN = 1), - (i.ROUND_CEIL = 2), - (i.ROUND_FLOOR = 3), - (i.ROUND_HALF_UP = 4), - (i.ROUND_HALF_DOWN = 5), - (i.ROUND_HALF_EVEN = 6), - (i.ROUND_HALF_CEIL = 7), - (i.ROUND_HALF_FLOOR = 8), - (i.EUCLID = 9), - (i.config = i.set = ou), - (i.clone = Po), - (i.isDecimal = co), - (i.abs = Kl), - (i.acos = Wl), - (i.acosh = Hl), - (i.add = zl), - (i.asin = Yl), - (i.asinh = Zl), - (i.atan = Xl), - (i.atanh = eu), - (i.atan2 = tu), - (i.cbrt = ru), - (i.ceil = nu), - (i.clamp = iu), - (i.cos = su), - (i.cosh = au), - (i.div = lu), - (i.exp = uu), - (i.floor = cu), - (i.hypot = pu), - (i.ln = mu), - (i.log = fu), - (i.log10 = gu), - (i.log2 = du), - (i.max = hu), - (i.min = yu), - (i.mod = wu), - (i.mul = Eu), - (i.pow = bu), - (i.random = xu), - (i.round = Pu), - (i.sign = vu), - (i.sin = Tu), - (i.sinh = Au), - (i.sqrt = Ru), - (i.sub = Cu), - (i.sum = Su), - (i.tan = Iu), - (i.tanh = Ou), - (i.trunc = ku), - e === void 0 && (e = {}), - e && e.defaults !== !0) - ) - for ( - n = [ - "precision", - "rounding", - "toExpNeg", - "toExpPos", - "maxE", - "minE", - "modulo", - "crypto", - ], - t = 0; - t < n.length; - ) - e.hasOwnProperty((r = n[t++])) || (e[r] = this[r]); - return (i.config(e), i); -} -function lu(e, t) { - return new this(e).div(t); -} -function uu(e) { - return new this(e).exp(); -} -function cu(e) { - return k((e = new this(e)), e.e + 1, 3); -} -function pu() { - var e, - t, - r = new this(0); - for (_ = !1, e = 0; e < arguments.length; ) - if (((t = new this(arguments[e++])), t.d)) r.d && (r = r.plus(t.times(t))); - else { - if (t.s) return ((_ = !0), new this(1 / 0)); - r = t; - } - return ((_ = !0), r.sqrt()); -} -function co(e) { - return e instanceof Te || (e && e.toStringTag === go) || !1; -} -function mu(e) { - return new this(e).ln(); -} -function fu(e, t) { - return new this(e).log(t); -} -function du(e) { - return new this(e).log(2); -} -function gu(e) { - return new this(e).log(10); -} -function hu() { - return Eo(this, arguments, -1); -} -function yu() { - return Eo(this, arguments, 1); -} -function wu(e, t) { - return new this(e).mod(t); -} -function Eu(e, t) { - return new this(e).mul(t); -} -function bu(e, t) { - return new this(e).pow(t); -} -function xu(e) { - var t, - r, - n, - i, - o = 0, - s = new this(1), - a = []; - if ( - (e === void 0 ? (e = this.precision) : oe(e, 1, Me), - (n = Math.ceil(e / D)), - this.crypto) - ) - if (crypto.getRandomValues) - for (t = crypto.getRandomValues(new Uint32Array(n)); o < n; ) - ((i = t[o]), - i >= 429e7 - ? (t[o] = crypto.getRandomValues(new Uint32Array(1))[0]) - : (a[o++] = i % 1e7)); - else if (crypto.randomBytes) { - for (t = crypto.randomBytes((n *= 4)); o < n; ) - ((i = - t[o] + (t[o + 1] << 8) + (t[o + 2] << 16) + ((t[o + 3] & 127) << 24)), - i >= 214e7 - ? crypto.randomBytes(4).copy(t, o) - : (a.push(i % 1e7), (o += 4))); - o = n / 4; - } else throw Error(fo); - else for (; o < n; ) a[o++] = (Math.random() * 1e7) | 0; - for ( - n = a[--o], - e %= D, - n && e && ((i = K(10, D - e)), (a[o] = ((n / i) | 0) * i)); - a[o] === 0; - o-- - ) - a.pop(); - if (o < 0) ((r = 0), (a = [0])); - else { - for (r = -1; a[0] === 0; r -= D) a.shift(); - for (n = 1, i = a[0]; i >= 10; i /= 10) n++; - n < D && (r -= D - n); - } - return ((s.e = r), (s.d = a), s); -} -function Pu(e) { - return k((e = new this(e)), e.e + 1, this.rounding); -} -function vu(e) { - return ((e = new this(e)), e.d ? (e.d[0] ? e.s : 0 * e.s) : e.s || NaN); -} -function Tu(e) { - return new this(e).sin(); -} -function Au(e) { - return new this(e).sinh(); -} -function Ru(e) { - return new this(e).sqrt(); -} -function Cu(e, t) { - return new this(e).sub(t); -} -function Su() { - var e = 0, - t = arguments, - r = new this(t[e]); - for (_ = !1; r.s && ++e < t.length; ) r = r.plus(t[e]); - return ((_ = !0), k(r, this.precision, this.rounding)); -} -function Iu(e) { - return new this(e).tan(); -} -function Ou(e) { - return new this(e).tanh(); -} -function ku(e) { - return k((e = new this(e)), e.e + 1, 1); -} -R[Symbol.for("nodejs.util.inspect.custom")] = R.toString; -R[Symbol.toStringTag] = "Decimal"; -var Te = (R.constructor = Po(kn)); -Pr = new Te(Pr); -vr = new Te(vr); -var Ae = Te; -function rt(e) { - return Te.isDecimal(e) - ? !0 - : e !== null && - typeof e == "object" && - typeof e.s == "number" && - typeof e.e == "number" && - typeof e.toFixed == "function" && - Array.isArray(e.d); -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var Dt = {}; -vt(Dt, { ModelAction: () => kt, datamodelEnumToSchemaEnum: () => Du }); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -function Du(e) { - return { name: e.name, values: e.values.map((t) => t.name) }; -} -f(); -u(); -c(); -p(); -m(); -var kt = ((O) => ( - (O.findUnique = "findUnique"), - (O.findUniqueOrThrow = "findUniqueOrThrow"), - (O.findFirst = "findFirst"), - (O.findFirstOrThrow = "findFirstOrThrow"), - (O.findMany = "findMany"), - (O.create = "create"), - (O.createMany = "createMany"), - (O.createManyAndReturn = "createManyAndReturn"), - (O.update = "update"), - (O.updateMany = "updateMany"), - (O.updateManyAndReturn = "updateManyAndReturn"), - (O.upsert = "upsert"), - (O.delete = "delete"), - (O.deleteMany = "deleteMany"), - (O.groupBy = "groupBy"), - (O.count = "count"), - (O.aggregate = "aggregate"), - (O.findRaw = "findRaw"), - (O.aggregateRaw = "aggregateRaw"), - O -))(kt || {}); -var Mu = Qe(ro()); -var _u = { - red: Ye, - gray: $i, - dim: mr, - bold: pr, - underline: Li, - highlightSource: (e) => e.highlight(), - }, - Nu = { - red: (e) => e, - gray: (e) => e, - dim: (e) => e, - bold: (e) => e, - underline: (e) => e, - highlightSource: (e) => e, - }; -function Fu({ message: e, originalMethod: t, isPanic: r, callArguments: n }) { - return { - functionName: `prisma.${t}()`, - message: e, - isPanic: r ?? !1, - callArguments: n, - }; -} -function Lu( - { - functionName: e, - location: t, - message: r, - isPanic: n, - contextLines: i, - callArguments: o, - }, - s, -) { - let a = [""], - l = t ? " in" : ":"; - if ( - (n - ? (a.push( - s.red( - `Oops, an unknown error occurred! This is ${s.bold("on us")}, you did nothing wrong.`, - ), - ), - a.push( - s.red(`It occurred in the ${s.bold(`\`${e}\``)} invocation${l}`), - )) - : a.push(s.red(`Invalid ${s.bold(`\`${e}\``)} invocation${l}`)), - t && a.push(s.underline(Uu(t))), - i) - ) { - a.push(""); - let d = [i.toString()]; - (o && (d.push(o), d.push(s.dim(")"))), a.push(d.join("")), o && a.push("")); - } else (a.push(""), o && a.push(o), a.push("")); - return ( - a.push(r), - a.join(` -`) - ); -} -function Uu(e) { - let t = [e.fileName]; - return ( - e.lineNumber && t.push(String(e.lineNumber)), - e.columnNumber && t.push(String(e.columnNumber)), - t.join(":") - ); -} -function Sr(e) { - let t = e.showColors ? _u : Nu, - r; - return ( - typeof $getTemplateParameters < "u" - ? (r = $getTemplateParameters(e, t)) - : (r = Fu(e)), - Lu(r, t) - ); -} -f(); -u(); -c(); -p(); -m(); -var ko = Qe(Nn()); -f(); -u(); -c(); -p(); -m(); -function Ro(e, t, r) { - let n = Co(e), - i = Bu(n), - o = Vu(i); - o ? Ir(o, t, r) : t.addErrorMessage(() => "Unknown error"); -} -function Co(e) { - return e.errors.flatMap((t) => (t.kind === "Union" ? Co(t) : [t])); -} -function Bu(e) { - let t = new Map(), - r = []; - for (let n of e) { - if (n.kind !== "InvalidArgumentType") { - r.push(n); - continue; - } - let i = `${n.selectionPath.join(".")}:${n.argumentPath.join(".")}`, - o = t.get(i); - o - ? t.set(i, { - ...n, - argument: { - ...n.argument, - typeNames: qu(o.argument.typeNames, n.argument.typeNames), - }, - }) - : t.set(i, n); - } - return (r.push(...t.values()), r); -} -function qu(e, t) { - return [...new Set(e.concat(t))]; -} -function Vu(e) { - return Sn(e, (t, r) => { - let n = To(t), - i = To(r); - return n !== i ? n - i : Ao(t) - Ao(r); - }); -} -function To(e) { - let t = 0; - return ( - Array.isArray(e.selectionPath) && (t += e.selectionPath.length), - Array.isArray(e.argumentPath) && (t += e.argumentPath.length), - t - ); -} -function Ao(e) { - switch (e.kind) { - case "InvalidArgumentValue": - case "ValueTooLarge": - return 20; - case "InvalidArgumentType": - return 10; - case "RequiredArgumentMissing": - return -10; - default: - return 0; - } -} -f(); -u(); -c(); -p(); -m(); -var ue = class { - constructor(t, r) { - this.name = t; - this.value = r; - } - isRequired = !1; - makeRequired() { - return ((this.isRequired = !0), this); - } - write(t) { - let { - colors: { green: r }, - } = t.context; - (t.addMarginSymbol(r(this.isRequired ? "+" : "?")), - t.write(r(this.name)), - this.isRequired || t.write(r("?")), - t.write(r(": ")), - typeof this.value == "string" - ? t.write(r(this.value)) - : t.write(this.value)); - } -}; -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -Io(); -f(); -u(); -c(); -p(); -m(); -var nt = class { - constructor(t = 0, r) { - this.context = r; - this.currentIndent = t; - } - lines = []; - currentLine = ""; - currentIndent = 0; - marginSymbol; - afterNextNewLineCallback; - write(t) { - return ( - typeof t == "string" ? (this.currentLine += t) : t.write(this), - this - ); - } - writeJoined(t, r, n = (i, o) => o.write(i)) { - let i = r.length - 1; - for (let o = 0; o < r.length; o++) - (n(r[o], this), o !== i && this.write(t)); - return this; - } - writeLine(t) { - return this.write(t).newLine(); - } - newLine() { - (this.lines.push(this.indentedCurrentLine()), - (this.currentLine = ""), - (this.marginSymbol = void 0)); - let t = this.afterNextNewLineCallback; - return ((this.afterNextNewLineCallback = void 0), t?.(), this); - } - withIndent(t) { - return (this.indent(), t(this), this.unindent(), this); - } - afterNextNewline(t) { - return ((this.afterNextNewLineCallback = t), this); - } - indent() { - return (this.currentIndent++, this); - } - unindent() { - return (this.currentIndent > 0 && this.currentIndent--, this); - } - addMarginSymbol(t) { - return ((this.marginSymbol = t), this); - } - toString() { - return this.lines.concat(this.indentedCurrentLine()).join(` -`); - } - getCurrentLineLength() { - return this.currentLine.length; - } - indentedCurrentLine() { - let t = this.currentLine.padStart( - this.currentLine.length + 2 * this.currentIndent, - ); - return this.marginSymbol ? this.marginSymbol + t.slice(1) : t; - } -}; -So(); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var Or = class { - constructor(t) { - this.value = t; - } - write(t) { - t.write(this.value); - } - markAsError() { - this.value.markAsError(); - } -}; -f(); -u(); -c(); -p(); -m(); -var kr = (e) => e, - Dr = { bold: kr, red: kr, green: kr, dim: kr, enabled: !1 }, - Oo = { bold: pr, red: Ye, green: Ui, dim: mr, enabled: !0 }, - it = { - write(e) { - e.writeLine(","); - }, - }; -f(); -u(); -c(); -p(); -m(); -var we = class { - constructor(t) { - this.contents = t; - } - isUnderlined = !1; - color = (t) => t; - underline() { - return ((this.isUnderlined = !0), this); - } - setColor(t) { - return ((this.color = t), this); - } - write(t) { - let r = t.getCurrentLineLength(); - (t.write(this.color(this.contents)), - this.isUnderlined && - t.afterNextNewline(() => { - t.write(" ".repeat(r)).writeLine( - this.color("~".repeat(this.contents.length)), - ); - })); - } -}; -f(); -u(); -c(); -p(); -m(); -var _e = class { - hasError = !1; - markAsError() { - return ((this.hasError = !0), this); - } -}; -var ot = class extends _e { - items = []; - addItem(t) { - return (this.items.push(new Or(t)), this); - } - getField(t) { - return this.items[t]; - } - getPrintWidth() { - return this.items.length === 0 - ? 2 - : Math.max(...this.items.map((r) => r.value.getPrintWidth())) + 2; - } - write(t) { - if (this.items.length === 0) { - this.writeEmpty(t); - return; - } - this.writeWithItems(t); - } - writeEmpty(t) { - let r = new we("[]"); - (this.hasError && r.setColor(t.context.colors.red).underline(), t.write(r)); - } - writeWithItems(t) { - let { colors: r } = t.context; - (t - .writeLine("[") - .withIndent(() => t.writeJoined(it, this.items).newLine()) - .write("]"), - this.hasError && - t.afterNextNewline(() => { - t.writeLine(r.red("~".repeat(this.getPrintWidth()))); - })); - } - asObject() {} -}; -var st = class e extends _e { - fields = {}; - suggestions = []; - addField(t) { - this.fields[t.name] = t; - } - addSuggestion(t) { - this.suggestions.push(t); - } - getField(t) { - return this.fields[t]; - } - getDeepField(t) { - let [r, ...n] = t, - i = this.getField(r); - if (!i) return; - let o = i; - for (let s of n) { - let a; - if ( - (o.value instanceof e - ? (a = o.value.getField(s)) - : o.value instanceof ot && (a = o.value.getField(Number(s))), - !a) - ) - return; - o = a; - } - return o; - } - getDeepFieldValue(t) { - return t.length === 0 ? this : this.getDeepField(t)?.value; - } - hasField(t) { - return !!this.getField(t); - } - removeAllFields() { - this.fields = {}; - } - removeField(t) { - delete this.fields[t]; - } - getFields() { - return this.fields; - } - isEmpty() { - return Object.keys(this.fields).length === 0; - } - getFieldValue(t) { - return this.getField(t)?.value; - } - getDeepSubSelectionValue(t) { - let r = this; - for (let n of t) { - if (!(r instanceof e)) return; - let i = r.getSubSelectionValue(n); - if (!i) return; - r = i; - } - return r; - } - getDeepSelectionParent(t) { - let r = this.getSelectionParent(); - if (!r) return; - let n = r; - for (let i of t) { - let o = n.value.getFieldValue(i); - if (!o || !(o instanceof e)) return; - let s = o.getSelectionParent(); - if (!s) return; - n = s; - } - return n; - } - getSelectionParent() { - let t = this.getField("select")?.value.asObject(); - if (t) return { kind: "select", value: t }; - let r = this.getField("include")?.value.asObject(); - if (r) return { kind: "include", value: r }; - } - getSubSelectionValue(t) { - return this.getSelectionParent()?.value.fields[t].value; - } - getPrintWidth() { - let t = Object.values(this.fields); - return t.length == 0 ? 2 : Math.max(...t.map((n) => n.getPrintWidth())) + 2; - } - write(t) { - let r = Object.values(this.fields); - if (r.length === 0 && this.suggestions.length === 0) { - this.writeEmpty(t); - return; - } - this.writeWithContents(t, r); - } - asObject() { - return this; - } - writeEmpty(t) { - let r = new we("{}"); - (this.hasError && r.setColor(t.context.colors.red).underline(), t.write(r)); - } - writeWithContents(t, r) { - (t.writeLine("{").withIndent(() => { - t.writeJoined(it, [...r, ...this.suggestions]).newLine(); - }), - t.write("}"), - this.hasError && - t.afterNextNewline(() => { - t.writeLine(t.context.colors.red("~".repeat(this.getPrintWidth()))); - })); - } -}; -f(); -u(); -c(); -p(); -m(); -var H = class extends _e { - constructor(r) { - super(); - this.text = r; - } - getPrintWidth() { - return this.text.length; - } - write(r) { - let n = new we(this.text); - (this.hasError && n.underline().setColor(r.context.colors.red), r.write(n)); - } - asObject() {} -}; -f(); -u(); -c(); -p(); -m(); -var Mt = class { - fields = []; - addField(t, r) { - return ( - this.fields.push({ - write(n) { - let { green: i, dim: o } = n.context.colors; - n.write(i(o(`${t}: ${r}`))).addMarginSymbol(i(o("+"))); - }, - }), - this - ); - } - write(t) { - let { - colors: { green: r }, - } = t.context; - t.writeLine(r("{")) - .withIndent(() => { - t.writeJoined(it, this.fields).newLine(); - }) - .write(r("}")) - .addMarginSymbol(r("+")); - } -}; -function Ir(e, t, r) { - switch (e.kind) { - case "MutuallyExclusiveFields": - $u(e, t); - break; - case "IncludeOnScalar": - ju(e, t); - break; - case "EmptySelection": - Gu(e, t, r); - break; - case "UnknownSelectionField": - Wu(e, t); - break; - case "InvalidSelectionValue": - Hu(e, t); - break; - case "UnknownArgument": - zu(e, t); - break; - case "UnknownInputField": - Yu(e, t); - break; - case "RequiredArgumentMissing": - Zu(e, t); - break; - case "InvalidArgumentType": - Xu(e, t); - break; - case "InvalidArgumentValue": - ec(e, t); - break; - case "ValueTooLarge": - tc(e, t); - break; - case "SomeFieldsMissing": - rc(e, t); - break; - case "TooManyFieldsGiven": - nc(e, t); - break; - case "Union": - Ro(e, t, r); - break; - default: - throw new Error("not implemented: " + e.kind); - } -} -function $u(e, t) { - let r = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - (r && - (r.getField(e.firstField)?.markAsError(), - r.getField(e.secondField)?.markAsError()), - t.addErrorMessage( - (n) => - `Please ${n.bold("either")} use ${n.green(`\`${e.firstField}\``)} or ${n.green(`\`${e.secondField}\``)}, but ${n.red("not both")} at the same time.`, - )); -} -function ju(e, t) { - let [r, n] = at(e.selectionPath), - i = e.outputType, - o = t.arguments.getDeepSelectionParent(r)?.value; - if (o && (o.getField(n)?.markAsError(), i)) - for (let s of i.fields) - s.isRelation && o.addSuggestion(new ue(s.name, "true")); - t.addErrorMessage((s) => { - let a = `Invalid scalar field ${s.red(`\`${n}\``)} for ${s.bold("include")} statement`; - return ( - i ? (a += ` on model ${s.bold(i.name)}. ${_t(s)}`) : (a += "."), - (a += ` -Note that ${s.bold("include")} statements only accept relation fields.`), - a - ); - }); -} -function Gu(e, t, r) { - let n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - if (n) { - let i = n.getField("omit")?.value.asObject(); - if (i) { - Ju(e, t, i); - return; - } - if (n.hasField("select")) { - Qu(e, t); - return; - } - } - if (r?.[Ie(e.outputType.name)]) { - Ku(e, t); - return; - } - t.addErrorMessage( - () => `Unknown field at "${e.selectionPath.join(".")} selection"`, - ); -} -function Ju(e, t, r) { - r.removeAllFields(); - for (let n of e.outputType.fields) r.addSuggestion(new ue(n.name, "false")); - t.addErrorMessage( - (n) => - `The ${n.red("omit")} statement includes every field of the model ${n.bold(e.outputType.name)}. At least one field must be included in the result`, - ); -} -function Qu(e, t) { - let r = e.outputType, - n = t.arguments.getDeepSelectionParent(e.selectionPath)?.value, - i = n?.isEmpty() ?? !1; - (n && (n.removeAllFields(), _o(n, r)), - t.addErrorMessage((o) => - i - ? `The ${o.red("`select`")} statement for type ${o.bold(r.name)} must not be empty. ${_t(o)}` - : `The ${o.red("`select`")} statement for type ${o.bold(r.name)} needs ${o.bold("at least one truthy value")}.`, - )); -} -function Ku(e, t) { - let r = new Mt(); - for (let i of e.outputType.fields) - i.isRelation || r.addField(i.name, "false"); - let n = new ue("omit", r).makeRequired(); - if (e.selectionPath.length === 0) t.arguments.addSuggestion(n); - else { - let [i, o] = at(e.selectionPath), - a = t.arguments.getDeepSelectionParent(i)?.value.asObject()?.getField(o); - if (a) { - let l = a?.value.asObject() ?? new st(); - (l.addSuggestion(n), (a.value = l)); - } - } - t.addErrorMessage( - (i) => - `The global ${i.red("omit")} configuration excludes every field of the model ${i.bold(e.outputType.name)}. At least one field must be included in the result`, - ); -} -function Wu(e, t) { - let r = No(e.selectionPath, t); - if (r.parentKind !== "unknown") { - r.field.markAsError(); - let n = r.parent; - switch (r.parentKind) { - case "select": - _o(n, e.outputType); - break; - case "include": - ic(n, e.outputType); - break; - case "omit": - oc(n, e.outputType); - break; - } - } - t.addErrorMessage((n) => { - let i = [`Unknown field ${n.red(`\`${r.fieldName}\``)}`]; - return ( - r.parentKind !== "unknown" && - i.push(`for ${n.bold(r.parentKind)} statement`), - i.push(`on model ${n.bold(`\`${e.outputType.name}\``)}.`), - i.push(_t(n)), - i.join(" ") - ); - }); -} -function Hu(e, t) { - let r = No(e.selectionPath, t); - (r.parentKind !== "unknown" && r.field.value.markAsError(), - t.addErrorMessage( - (n) => - `Invalid value for selection field \`${n.red(r.fieldName)}\`: ${e.underlyingError}`, - )); -} -function zu(e, t) { - let r = e.argumentPath[0], - n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - (n && (n.getField(r)?.markAsError(), sc(n, e.arguments)), - t.addErrorMessage((i) => - Do( - i, - r, - e.arguments.map((o) => o.name), - ), - )); -} -function Yu(e, t) { - let [r, n] = at(e.argumentPath), - i = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - if (i) { - i.getDeepField(e.argumentPath)?.markAsError(); - let o = i.getDeepFieldValue(r)?.asObject(); - o && Fo(o, e.inputType); - } - t.addErrorMessage((o) => - Do( - o, - n, - e.inputType.fields.map((s) => s.name), - ), - ); -} -function Do(e, t, r) { - let n = [`Unknown argument \`${e.red(t)}\`.`], - i = lc(t, r); - return ( - i && n.push(`Did you mean \`${e.green(i)}\`?`), - r.length > 0 && n.push(_t(e)), - n.join(" ") - ); -} -function Zu(e, t) { - let r; - t.addErrorMessage((l) => - r?.value instanceof H && r.value.text === "null" - ? `Argument \`${l.green(o)}\` must not be ${l.red("null")}.` - : `Argument \`${l.green(o)}\` is missing.`, - ); - let n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - if (!n) return; - let [i, o] = at(e.argumentPath), - s = new Mt(), - a = n.getDeepFieldValue(i)?.asObject(); - if (a) { - if ( - ((r = a.getField(o)), - r && a.removeField(o), - e.inputTypes.length === 1 && e.inputTypes[0].kind === "object") - ) { - for (let l of e.inputTypes[0].fields) - s.addField(l.name, l.typeNames.join(" | ")); - a.addSuggestion(new ue(o, s).makeRequired()); - } else { - let l = e.inputTypes.map(Mo).join(" | "); - a.addSuggestion(new ue(o, l).makeRequired()); - } - if (e.dependentArgumentPath) { - n.getDeepField(e.dependentArgumentPath)?.markAsError(); - let [, l] = at(e.dependentArgumentPath); - t.addErrorMessage( - (d) => - `Argument \`${d.green(o)}\` is required because argument \`${d.green(l)}\` was provided.`, - ); - } - } -} -function Mo(e) { - return e.kind === "list" ? `${Mo(e.elementType)}[]` : e.name; -} -function Xu(e, t) { - let r = e.argument.name, - n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - (n && n.getDeepFieldValue(e.argumentPath)?.markAsError(), - t.addErrorMessage((i) => { - let o = Mr( - "or", - e.argument.typeNames.map((s) => i.green(s)), - ); - return `Argument \`${i.bold(r)}\`: Invalid value provided. Expected ${o}, provided ${i.red(e.inferredType)}.`; - })); -} -function ec(e, t) { - let r = e.argument.name, - n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - (n && n.getDeepFieldValue(e.argumentPath)?.markAsError(), - t.addErrorMessage((i) => { - let o = [`Invalid value for argument \`${i.bold(r)}\``]; - if ( - (e.underlyingError && o.push(`: ${e.underlyingError}`), - o.push("."), - e.argument.typeNames.length > 0) - ) { - let s = Mr( - "or", - e.argument.typeNames.map((a) => i.green(a)), - ); - o.push(` Expected ${s}.`); - } - return o.join(""); - })); -} -function tc(e, t) { - let r = e.argument.name, - n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(), - i; - if (n) { - let s = n.getDeepField(e.argumentPath)?.value; - (s?.markAsError(), s instanceof H && (i = s.text)); - } - t.addErrorMessage((o) => { - let s = ["Unable to fit value"]; - return ( - i && s.push(o.red(i)), - s.push(`into a 64-bit signed integer for field \`${o.bold(r)}\``), - s.join(" ") - ); - }); -} -function rc(e, t) { - let r = e.argumentPath[e.argumentPath.length - 1], - n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - if (n) { - let i = n.getDeepFieldValue(e.argumentPath)?.asObject(); - i && Fo(i, e.inputType); - } - t.addErrorMessage((i) => { - let o = [ - `Argument \`${i.bold(r)}\` of type ${i.bold(e.inputType.name)} needs`, - ]; - return ( - e.constraints.minFieldCount === 1 - ? e.constraints.requiredFields - ? o.push( - `${i.green("at least one of")} ${Mr( - "or", - e.constraints.requiredFields.map((s) => `\`${i.bold(s)}\``), - )} arguments.`, - ) - : o.push(`${i.green("at least one")} argument.`) - : o.push( - `${i.green(`at least ${e.constraints.minFieldCount}`)} arguments.`, - ), - o.push(_t(i)), - o.join(" ") - ); - }); -} -function nc(e, t) { - let r = e.argumentPath[e.argumentPath.length - 1], - n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(), - i = []; - if (n) { - let o = n.getDeepFieldValue(e.argumentPath)?.asObject(); - o && (o.markAsError(), (i = Object.keys(o.getFields()))); - } - t.addErrorMessage((o) => { - let s = [ - `Argument \`${o.bold(r)}\` of type ${o.bold(e.inputType.name)} needs`, - ]; - return ( - e.constraints.minFieldCount === 1 && e.constraints.maxFieldCount == 1 - ? s.push(`${o.green("exactly one")} argument,`) - : e.constraints.maxFieldCount == 1 - ? s.push(`${o.green("at most one")} argument,`) - : s.push( - `${o.green(`at most ${e.constraints.maxFieldCount}`)} arguments,`, - ), - s.push( - `but you provided ${Mr( - "and", - i.map((a) => o.red(a)), - )}. Please choose`, - ), - e.constraints.maxFieldCount === 1 - ? s.push("one.") - : s.push(`${e.constraints.maxFieldCount}.`), - s.join(" ") - ); - }); -} -function _o(e, t) { - for (let r of t.fields) - e.hasField(r.name) || e.addSuggestion(new ue(r.name, "true")); -} -function ic(e, t) { - for (let r of t.fields) - r.isRelation && - !e.hasField(r.name) && - e.addSuggestion(new ue(r.name, "true")); -} -function oc(e, t) { - for (let r of t.fields) - !e.hasField(r.name) && - !r.isRelation && - e.addSuggestion(new ue(r.name, "true")); -} -function sc(e, t) { - for (let r of t) - e.hasField(r.name) || - e.addSuggestion(new ue(r.name, r.typeNames.join(" | "))); -} -function No(e, t) { - let [r, n] = at(e), - i = t.arguments.getDeepSubSelectionValue(r)?.asObject(); - if (!i) return { parentKind: "unknown", fieldName: n }; - let o = i.getFieldValue("select")?.asObject(), - s = i.getFieldValue("include")?.asObject(), - a = i.getFieldValue("omit")?.asObject(), - l = o?.getField(n); - return o && l - ? { parentKind: "select", parent: o, field: l, fieldName: n } - : ((l = s?.getField(n)), - s && l - ? { parentKind: "include", field: l, parent: s, fieldName: n } - : ((l = a?.getField(n)), - a && l - ? { parentKind: "omit", field: l, parent: a, fieldName: n } - : { parentKind: "unknown", fieldName: n })); -} -function Fo(e, t) { - if (t.kind === "object") - for (let r of t.fields) - e.hasField(r.name) || - e.addSuggestion(new ue(r.name, r.typeNames.join(" | "))); -} -function at(e) { - let t = [...e], - r = t.pop(); - if (!r) throw new Error("unexpected empty path"); - return [t, r]; -} -function _t({ green: e, enabled: t }) { - return ( - "Available options are " + - (t ? `listed in ${e("green")}` : "marked with ?") + - "." - ); -} -function Mr(e, t) { - if (t.length === 1) return t[0]; - let r = [...t], - n = r.pop(); - return `${r.join(", ")} ${e} ${n}`; -} -var ac = 3; -function lc(e, t) { - let r = 1 / 0, - n; - for (let i of t) { - let o = (0, ko.default)(e, i); - o > ac || (o < r && ((r = o), (n = i))); - } - return n; -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var Nt = class { - modelName; - name; - typeName; - isList; - isEnum; - constructor(t, r, n, i, o) { - ((this.modelName = t), - (this.name = r), - (this.typeName = n), - (this.isList = i), - (this.isEnum = o)); - } - _toGraphQLInputType() { - let t = this.isList ? "List" : "", - r = this.isEnum ? "Enum" : ""; - return `${t}${r}${this.typeName}FieldRefInput<${this.modelName}>`; - } -}; -function lt(e) { - return e instanceof Nt; -} -f(); -u(); -c(); -p(); -m(); -var _r = Symbol(), - Ln = new WeakMap(), - Re = class { - constructor(t) { - t === _r - ? Ln.set(this, `Prisma.${this._getName()}`) - : Ln.set( - this, - `new Prisma.${this._getNamespace()}.${this._getName()}()`, - ); - } - _getName() { - return this.constructor.name; - } - toString() { - return Ln.get(this); - } - }, - Ft = class extends Re { - _getNamespace() { - return "NullTypes"; - } - }, - Lt = class extends Ft { - #e; - }; -Un(Lt, "DbNull"); -var Ut = class extends Ft { - #e; -}; -Un(Ut, "JsonNull"); -var Bt = class extends Ft { - #e; -}; -Un(Bt, "AnyNull"); -var Nr = { - classes: { DbNull: Lt, JsonNull: Ut, AnyNull: Bt }, - instances: { DbNull: new Lt(_r), JsonNull: new Ut(_r), AnyNull: new Bt(_r) }, -}; -function Un(e, t) { - Object.defineProperty(e, "name", { value: t, configurable: !0 }); -} -f(); -u(); -c(); -p(); -m(); -var Lo = ": ", - Fr = class { - constructor(t, r) { - this.name = t; - this.value = r; - } - hasError = !1; - markAsError() { - this.hasError = !0; - } - getPrintWidth() { - return this.name.length + this.value.getPrintWidth() + Lo.length; - } - write(t) { - let r = new we(this.name); - (this.hasError && r.underline().setColor(t.context.colors.red), - t.write(r).write(Lo).write(this.value)); - } - }; -var Bn = class { - arguments; - errorMessages = []; - constructor(t) { - this.arguments = t; - } - write(t) { - t.write(this.arguments); - } - addErrorMessage(t) { - this.errorMessages.push(t); - } - renderAllMessages(t) { - return this.errorMessages.map((r) => r(t)).join(` -`); - } -}; -function ut(e) { - return new Bn(Uo(e)); -} -function Uo(e) { - let t = new st(); - for (let [r, n] of Object.entries(e)) { - let i = new Fr(r, Bo(n)); - t.addField(i); - } - return t; -} -function Bo(e) { - if (typeof e == "string") return new H(JSON.stringify(e)); - if (typeof e == "number" || typeof e == "boolean") return new H(String(e)); - if (typeof e == "bigint") return new H(`${e}n`); - if (e === null) return new H("null"); - if (e === void 0) return new H("undefined"); - if (rt(e)) return new H(`new Prisma.Decimal("${e.toFixed()}")`); - if (e instanceof Uint8Array) - return w.Buffer.isBuffer(e) - ? new H(`Buffer.alloc(${e.byteLength})`) - : new H(`new Uint8Array(${e.byteLength})`); - if (e instanceof Date) { - let t = Er(e) ? e.toISOString() : "Invalid Date"; - return new H(`new Date("${t}")`); - } - return e instanceof Re - ? new H(`Prisma.${e._getName()}`) - : lt(e) - ? new H(`prisma.${Ie(e.modelName)}.$fields.${e.name}`) - : Array.isArray(e) - ? uc(e) - : typeof e == "object" - ? Uo(e) - : new H(Object.prototype.toString.call(e)); -} -function uc(e) { - let t = new ot(); - for (let r of e) t.addItem(Bo(r)); - return t; -} -function Lr(e, t) { - let r = t === "pretty" ? Oo : Dr, - n = e.renderAllMessages(r), - i = new nt(0, { colors: r }).write(e).toString(); - return { message: n, args: i }; -} -function Ur({ - args: e, - errors: t, - errorFormat: r, - callsite: n, - originalMethod: i, - clientVersion: o, - globalOmit: s, -}) { - let a = ut(e); - for (let h of t) Ir(h, a, s); - let { message: l, args: d } = Lr(a, r), - g = Sr({ - message: l, - callsite: n, - originalMethod: i, - showColors: r === "pretty", - callArguments: d, - }); - throw new X(g, { clientVersion: o }); -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -function Ee(e) { - return e.replace(/^./, (t) => t.toLowerCase()); -} -f(); -u(); -c(); -p(); -m(); -function Vo(e, t, r) { - let n = Ee(r); - return !t.result || !(t.result.$allModels || t.result[n]) - ? e - : cc({ - ...e, - ...qo(t.name, e, t.result.$allModels), - ...qo(t.name, e, t.result[n]), - }); -} -function cc(e) { - let t = new ge(), - r = (n, i) => - t.getOrCreate(n, () => - i.has(n) - ? [n] - : (i.add(n), e[n] ? e[n].needs.flatMap((o) => r(o, i)) : [n]), - ); - return wr(e, (n) => ({ ...n, needs: r(n.name, new Set()) })); -} -function qo(e, t, r) { - return r - ? wr(r, ({ needs: n, compute: i }, o) => ({ - name: o, - needs: n ? Object.keys(n).filter((s) => n[s]) : [], - compute: pc(t, o, i), - })) - : {}; -} -function pc(e, t, r) { - let n = e?.[t]?.compute; - return n ? (i) => r({ ...i, [t]: n(i) }) : r; -} -function $o(e, t) { - if (!t) return e; - let r = { ...e }; - for (let n of Object.values(t)) - if (e[n.name]) for (let i of n.needs) r[i] = !0; - return r; -} -function jo(e, t) { - if (!t) return e; - let r = { ...e }; - for (let n of Object.values(t)) - if (!e[n.name]) for (let i of n.needs) delete r[i]; - return r; -} -var Br = class { - constructor(t, r) { - this.extension = t; - this.previous = r; - } - computedFieldsCache = new ge(); - modelExtensionsCache = new ge(); - queryCallbacksCache = new ge(); - clientExtensions = It(() => - this.extension.client - ? { - ...this.previous?.getAllClientExtensions(), - ...this.extension.client, - } - : this.previous?.getAllClientExtensions(), - ); - batchCallbacks = It(() => { - let t = this.previous?.getAllBatchQueryCallbacks() ?? [], - r = this.extension.query?.$__internalBatch; - return r ? t.concat(r) : t; - }); - getAllComputedFields(t) { - return this.computedFieldsCache.getOrCreate(t, () => - Vo(this.previous?.getAllComputedFields(t), this.extension, t), - ); - } - getAllClientExtensions() { - return this.clientExtensions.get(); - } - getAllModelExtensions(t) { - return this.modelExtensionsCache.getOrCreate(t, () => { - let r = Ee(t); - return !this.extension.model || - !(this.extension.model[r] || this.extension.model.$allModels) - ? this.previous?.getAllModelExtensions(t) - : { - ...this.previous?.getAllModelExtensions(t), - ...this.extension.model.$allModels, - ...this.extension.model[r], - }; - }); - } - getAllQueryCallbacks(t, r) { - return this.queryCallbacksCache.getOrCreate(`${t}:${r}`, () => { - let n = this.previous?.getAllQueryCallbacks(t, r) ?? [], - i = [], - o = this.extension.query; - return !o || !(o[t] || o.$allModels || o[r] || o.$allOperations) - ? n - : (o[t] !== void 0 && - (o[t][r] !== void 0 && i.push(o[t][r]), - o[t].$allOperations !== void 0 && i.push(o[t].$allOperations)), - t !== "$none" && - o.$allModels !== void 0 && - (o.$allModels[r] !== void 0 && i.push(o.$allModels[r]), - o.$allModels.$allOperations !== void 0 && - i.push(o.$allModels.$allOperations)), - o[r] !== void 0 && i.push(o[r]), - o.$allOperations !== void 0 && i.push(o.$allOperations), - n.concat(i)); - }); - } - getAllBatchQueryCallbacks() { - return this.batchCallbacks.get(); - } - }, - ct = class e { - constructor(t) { - this.head = t; - } - static empty() { - return new e(); - } - static single(t) { - return new e(new Br(t)); - } - isEmpty() { - return this.head === void 0; - } - append(t) { - return new e(new Br(t, this.head)); - } - getAllComputedFields(t) { - return this.head?.getAllComputedFields(t); - } - getAllClientExtensions() { - return this.head?.getAllClientExtensions(); - } - getAllModelExtensions(t) { - return this.head?.getAllModelExtensions(t); - } - getAllQueryCallbacks(t, r) { - return this.head?.getAllQueryCallbacks(t, r) ?? []; - } - getAllBatchQueryCallbacks() { - return this.head?.getAllBatchQueryCallbacks() ?? []; - } - }; -f(); -u(); -c(); -p(); -m(); -var qr = class { - constructor(t) { - this.name = t; - } -}; -function Go(e) { - return e instanceof qr; -} -function Jo(e) { - return new qr(e); -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var Qo = Symbol(), - qt = class { - constructor(t) { - if (t !== Qo) - throw new Error("Skip instance can not be constructed directly"); - } - ifUndefined(t) { - return t === void 0 ? Vr : t; - } - }, - Vr = new qt(Qo); -function be(e) { - return e instanceof qt; -} -var mc = { - findUnique: "findUnique", - findUniqueOrThrow: "findUniqueOrThrow", - findFirst: "findFirst", - findFirstOrThrow: "findFirstOrThrow", - findMany: "findMany", - count: "aggregate", - create: "createOne", - createMany: "createMany", - createManyAndReturn: "createManyAndReturn", - update: "updateOne", - updateMany: "updateMany", - updateManyAndReturn: "updateManyAndReturn", - upsert: "upsertOne", - delete: "deleteOne", - deleteMany: "deleteMany", - executeRaw: "executeRaw", - queryRaw: "queryRaw", - aggregate: "aggregate", - groupBy: "groupBy", - runCommandRaw: "runCommandRaw", - findRaw: "findRaw", - aggregateRaw: "aggregateRaw", - }, - Ko = "explicitly `undefined` values are not allowed"; -function $r({ - modelName: e, - action: t, - args: r, - runtimeDataModel: n, - extensions: i = ct.empty(), - callsite: o, - clientMethod: s, - errorFormat: a, - clientVersion: l, - previewFeatures: d, - globalOmit: g, -}) { - let h = new qn({ - runtimeDataModel: n, - modelName: e, - action: t, - rootArgs: r, - callsite: o, - extensions: i, - selectionPath: [], - argumentPath: [], - originalMethod: s, - errorFormat: a, - clientVersion: l, - previewFeatures: d, - globalOmit: g, - }); - return { modelName: e, action: mc[t], query: Vt(r, h) }; -} -function Vt({ select: e, include: t, ...r } = {}, n) { - let i = r.omit; - return (delete r.omit, { arguments: Ho(r, n), selection: fc(e, t, i, n) }); -} -function fc(e, t, r, n) { - return e - ? (t - ? n.throwValidationError({ - kind: "MutuallyExclusiveFields", - firstField: "include", - secondField: "select", - selectionPath: n.getSelectionPath(), - }) - : r && - n.throwValidationError({ - kind: "MutuallyExclusiveFields", - firstField: "omit", - secondField: "select", - selectionPath: n.getSelectionPath(), - }), - yc(e, n)) - : dc(n, t, r); -} -function dc(e, t, r) { - let n = {}; - return ( - e.modelOrType && - !e.isRawAction() && - ((n.$composites = !0), (n.$scalars = !0)), - t && gc(n, t, e), - hc(n, r, e), - n - ); -} -function gc(e, t, r) { - for (let [n, i] of Object.entries(t)) { - if (be(i)) continue; - let o = r.nestSelection(n); - if ((Vn(i, o), i === !1 || i === void 0)) { - e[n] = !1; - continue; - } - let s = r.findField(n); - if ( - (s && - s.kind !== "object" && - r.throwValidationError({ - kind: "IncludeOnScalar", - selectionPath: r.getSelectionPath().concat(n), - outputType: r.getOutputTypeDescription(), - }), - s) - ) { - e[n] = Vt(i === !0 ? {} : i, o); - continue; - } - if (i === !0) { - e[n] = !0; - continue; - } - e[n] = Vt(i, o); - } -} -function hc(e, t, r) { - let n = r.getComputedFields(), - i = { ...r.getGlobalOmit(), ...t }, - o = jo(i, n); - for (let [s, a] of Object.entries(o)) { - if (be(a)) continue; - Vn(a, r.nestSelection(s)); - let l = r.findField(s); - (n?.[s] && !l) || (e[s] = !a); - } -} -function yc(e, t) { - let r = {}, - n = t.getComputedFields(), - i = $o(e, n); - for (let [o, s] of Object.entries(i)) { - if (be(s)) continue; - let a = t.nestSelection(o); - Vn(s, a); - let l = t.findField(o); - if (!(n?.[o] && !l)) { - if (s === !1 || s === void 0 || be(s)) { - r[o] = !1; - continue; - } - if (s === !0) { - l?.kind === "object" ? (r[o] = Vt({}, a)) : (r[o] = !0); - continue; - } - r[o] = Vt(s, a); - } - } - return r; -} -function Wo(e, t) { - if (e === null) return null; - if (typeof e == "string" || typeof e == "number" || typeof e == "boolean") - return e; - if (typeof e == "bigint") return { $type: "BigInt", value: String(e) }; - if (Xe(e)) { - if (Er(e)) return { $type: "DateTime", value: e.toISOString() }; - t.throwValidationError({ - kind: "InvalidArgumentValue", - selectionPath: t.getSelectionPath(), - argumentPath: t.getArgumentPath(), - argument: { name: t.getArgumentName(), typeNames: ["Date"] }, - underlyingError: "Provided Date object is invalid", - }); - } - if (Go(e)) return { $type: "Param", value: e.name }; - if (lt(e)) - return { - $type: "FieldRef", - value: { _ref: e.name, _container: e.modelName }, - }; - if (Array.isArray(e)) return wc(e, t); - if (ArrayBuffer.isView(e)) { - let { buffer: r, byteOffset: n, byteLength: i } = e; - return { $type: "Bytes", value: w.Buffer.from(r, n, i).toString("base64") }; - } - if (Ec(e)) return e.values; - if (rt(e)) return { $type: "Decimal", value: e.toFixed() }; - if (e instanceof Re) { - if (e !== Nr.instances[e._getName()]) - throw new Error("Invalid ObjectEnumValue"); - return { $type: "Enum", value: e._getName() }; - } - if (bc(e)) return e.toJSON(); - if (typeof e == "object") return Ho(e, t); - t.throwValidationError({ - kind: "InvalidArgumentValue", - selectionPath: t.getSelectionPath(), - argumentPath: t.getArgumentPath(), - argument: { name: t.getArgumentName(), typeNames: [] }, - underlyingError: `We could not serialize ${Object.prototype.toString.call(e)} value. Serialize the object to JSON or implement a ".toJSON()" method on it`, - }); -} -function Ho(e, t) { - if (e.$type) return { $type: "Raw", value: e }; - let r = {}; - for (let n in e) { - let i = e[n], - o = t.nestArgument(n); - be(i) || - (i !== void 0 - ? (r[n] = Wo(i, o)) - : t.isPreviewFeatureOn("strictUndefinedChecks") && - t.throwValidationError({ - kind: "InvalidArgumentValue", - argumentPath: o.getArgumentPath(), - selectionPath: t.getSelectionPath(), - argument: { name: t.getArgumentName(), typeNames: [] }, - underlyingError: Ko, - })); - } - return r; -} -function wc(e, t) { - let r = []; - for (let n = 0; n < e.length; n++) { - let i = t.nestArgument(String(n)), - o = e[n]; - if (o === void 0 || be(o)) { - let s = o === void 0 ? "undefined" : "Prisma.skip"; - t.throwValidationError({ - kind: "InvalidArgumentValue", - selectionPath: i.getSelectionPath(), - argumentPath: i.getArgumentPath(), - argument: { name: `${t.getArgumentName()}[${n}]`, typeNames: [] }, - underlyingError: `Can not use \`${s}\` value within array. Use \`null\` or filter out \`${s}\` values`, - }); - } - r.push(Wo(o, i)); - } - return r; -} -function Ec(e) { - return typeof e == "object" && e !== null && e.__prismaRawParameters__ === !0; -} -function bc(e) { - return typeof e == "object" && e !== null && typeof e.toJSON == "function"; -} -function Vn(e, t) { - e === void 0 && - t.isPreviewFeatureOn("strictUndefinedChecks") && - t.throwValidationError({ - kind: "InvalidSelectionValue", - selectionPath: t.getSelectionPath(), - underlyingError: Ko, - }); -} -var qn = class e { - constructor(t) { - this.params = t; - this.params.modelName && - (this.modelOrType = - this.params.runtimeDataModel.models[this.params.modelName] ?? - this.params.runtimeDataModel.types[this.params.modelName]); - } - modelOrType; - throwValidationError(t) { - Ur({ - errors: [t], - originalMethod: this.params.originalMethod, - args: this.params.rootArgs ?? {}, - callsite: this.params.callsite, - errorFormat: this.params.errorFormat, - clientVersion: this.params.clientVersion, - globalOmit: this.params.globalOmit, - }); - } - getSelectionPath() { - return this.params.selectionPath; - } - getArgumentPath() { - return this.params.argumentPath; - } - getArgumentName() { - return this.params.argumentPath[this.params.argumentPath.length - 1]; - } - getOutputTypeDescription() { - if (!(!this.params.modelName || !this.modelOrType)) - return { - name: this.params.modelName, - fields: this.modelOrType.fields.map((t) => ({ - name: t.name, - typeName: "boolean", - isRelation: t.kind === "object", - })), - }; - } - isRawAction() { - return [ - "executeRaw", - "queryRaw", - "runCommandRaw", - "findRaw", - "aggregateRaw", - ].includes(this.params.action); - } - isPreviewFeatureOn(t) { - return this.params.previewFeatures.includes(t); - } - getComputedFields() { - if (this.params.modelName) - return this.params.extensions.getAllComputedFields(this.params.modelName); - } - findField(t) { - return this.modelOrType?.fields.find((r) => r.name === t); - } - nestSelection(t) { - let r = this.findField(t), - n = r?.kind === "object" ? r.type : void 0; - return new e({ - ...this.params, - modelName: n, - selectionPath: this.params.selectionPath.concat(t), - }); - } - getGlobalOmit() { - return this.params.modelName && this.shouldApplyGlobalOmit() - ? (this.params.globalOmit?.[Ie(this.params.modelName)] ?? {}) - : {}; - } - shouldApplyGlobalOmit() { - switch (this.params.action) { - case "findFirst": - case "findFirstOrThrow": - case "findUniqueOrThrow": - case "findMany": - case "upsert": - case "findUnique": - case "createManyAndReturn": - case "create": - case "update": - case "updateManyAndReturn": - case "delete": - return !0; - case "executeRaw": - case "aggregateRaw": - case "runCommandRaw": - case "findRaw": - case "createMany": - case "deleteMany": - case "groupBy": - case "updateMany": - case "count": - case "aggregate": - case "queryRaw": - return !1; - default: - Ue(this.params.action, "Unknown action"); - } - } - nestArgument(t) { - return new e({ - ...this.params, - argumentPath: this.params.argumentPath.concat(t), - }); - } -}; -f(); -u(); -c(); -p(); -m(); -function zo(e) { - if (!e._hasPreviewFlag("metrics")) - throw new X( - "`metrics` preview feature must be enabled in order to access metrics API", - { clientVersion: e._clientVersion }, - ); -} -var pt = class { - _client; - constructor(t) { - this._client = t; - } - prometheus(t) { - return ( - zo(this._client), - this._client._engine.metrics({ format: "prometheus", ...t }) - ); - } - json(t) { - return ( - zo(this._client), - this._client._engine.metrics({ format: "json", ...t }) - ); - } -}; -f(); -u(); -c(); -p(); -m(); -function Yo(e, t) { - let r = It(() => xc(t)); - Object.defineProperty(e, "dmmf", { get: () => r.get() }); -} -function xc(e) { - return { - datamodel: { models: $n(e.models), enums: $n(e.enums), types: $n(e.types) }, - }; -} -function $n(e) { - return Object.entries(e).map(([t, r]) => ({ name: t, ...r })); -} -f(); -u(); -c(); -p(); -m(); -var jn = new WeakMap(), - jr = "$$PrismaTypedSql", - $t = class { - constructor(t, r) { - (jn.set(this, { sql: t, values: r }), - Object.defineProperty(this, jr, { value: jr })); - } - get sql() { - return jn.get(this).sql; - } - get values() { - return jn.get(this).values; - } - }; -function Zo(e) { - return (...t) => new $t(e, t); -} -function Gr(e) { - return e != null && e[jr] === jr; -} -f(); -u(); -c(); -p(); -m(); -var ha = Qe(Pn()); -f(); -u(); -c(); -p(); -m(); -Xo(); -Ki(); -Zi(); -f(); -u(); -c(); -p(); -m(); -var se = class e { - constructor(t, r) { - if (t.length - 1 !== r.length) - throw t.length === 0 - ? new TypeError("Expected at least 1 string") - : new TypeError( - `Expected ${t.length} strings to have ${t.length - 1} values`, - ); - let n = r.reduce((s, a) => s + (a instanceof e ? a.values.length : 1), 0); - ((this.values = new Array(n)), - (this.strings = new Array(n + 1)), - (this.strings[0] = t[0])); - let i = 0, - o = 0; - for (; i < r.length; ) { - let s = r[i++], - a = t[i]; - if (s instanceof e) { - this.strings[o] += s.strings[0]; - let l = 0; - for (; l < s.values.length; ) - ((this.values[o++] = s.values[l++]), - (this.strings[o] = s.strings[l])); - this.strings[o] += a; - } else ((this.values[o++] = s), (this.strings[o] = a)); - } - } - get sql() { - let t = this.strings.length, - r = 1, - n = this.strings[0]; - for (; r < t; ) n += `?${this.strings[r++]}`; - return n; - } - get statement() { - let t = this.strings.length, - r = 1, - n = this.strings[0]; - for (; r < t; ) n += `:${r}${this.strings[r++]}`; - return n; - } - get text() { - let t = this.strings.length, - r = 1, - n = this.strings[0]; - for (; r < t; ) n += `$${r}${this.strings[r++]}`; - return n; - } - inspect() { - return { - sql: this.sql, - statement: this.statement, - text: this.text, - values: this.values, - }; - } -}; -function es(e, t = ",", r = "", n = "") { - if (e.length === 0) - throw new TypeError( - "Expected `join([])` to be called with an array of multiple elements, but got an empty array", - ); - return new se([r, ...Array(e.length - 1).fill(t), n], e); -} -function Gn(e) { - return new se([e], []); -} -var ts = Gn(""); -function Jn(e, ...t) { - return new se(e, t); -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -function jt(e) { - return { - getKeys() { - return Object.keys(e); - }, - getPropertyValue(t) { - return e[t]; - }, - }; -} -f(); -u(); -c(); -p(); -m(); -function te(e, t) { - return { - getKeys() { - return [e]; - }, - getPropertyValue() { - return t(); - }, - }; -} -f(); -u(); -c(); -p(); -m(); -function Be(e) { - let t = new ge(); - return { - getKeys() { - return e.getKeys(); - }, - getPropertyValue(r) { - return t.getOrCreate(r, () => e.getPropertyValue(r)); - }, - getPropertyDescriptor(r) { - return e.getPropertyDescriptor?.(r); - }, - }; -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var Qr = { enumerable: !0, configurable: !0, writable: !0 }; -function Kr(e) { - let t = new Set(e); - return { - getPrototypeOf: () => Object.prototype, - getOwnPropertyDescriptor: () => Qr, - has: (r, n) => t.has(n), - set: (r, n, i) => t.add(n) && Reflect.set(r, n, i), - ownKeys: () => [...t], - }; -} -var rs = Symbol.for("nodejs.util.inspect.custom"); -function me(e, t) { - let r = Pc(t), - n = new Set(), - i = new Proxy(e, { - get(o, s) { - if (n.has(s)) return o[s]; - let a = r.get(s); - return a ? a.getPropertyValue(s) : o[s]; - }, - has(o, s) { - if (n.has(s)) return !0; - let a = r.get(s); - return a ? (a.has?.(s) ?? !0) : Reflect.has(o, s); - }, - ownKeys(o) { - let s = ns(Reflect.ownKeys(o), r), - a = ns(Array.from(r.keys()), r); - return [...new Set([...s, ...a, ...n])]; - }, - set(o, s, a) { - return r.get(s)?.getPropertyDescriptor?.(s)?.writable === !1 - ? !1 - : (n.add(s), Reflect.set(o, s, a)); - }, - getOwnPropertyDescriptor(o, s) { - let a = Reflect.getOwnPropertyDescriptor(o, s); - if (a && !a.configurable) return a; - let l = r.get(s); - return l - ? l.getPropertyDescriptor - ? { ...Qr, ...l?.getPropertyDescriptor(s) } - : Qr - : a; - }, - defineProperty(o, s, a) { - return (n.add(s), Reflect.defineProperty(o, s, a)); - }, - getPrototypeOf: () => Object.prototype, - }); - return ( - (i[rs] = function () { - let o = { ...this }; - return (delete o[rs], o); - }), - i - ); -} -function Pc(e) { - let t = new Map(); - for (let r of e) { - let n = r.getKeys(); - for (let i of n) t.set(i, r); - } - return t; -} -function ns(e, t) { - return e.filter((r) => t.get(r)?.has?.(r) ?? !0); -} -f(); -u(); -c(); -p(); -m(); -function mt(e) { - return { - getKeys() { - return e; - }, - has() { - return !1; - }, - getPropertyValue() {}, - }; -} -f(); -u(); -c(); -p(); -m(); -function Wr(e, t) { - return { - batch: e, - transaction: - t?.kind === "batch" - ? { isolationLevel: t.options.isolationLevel } - : void 0, - }; -} -f(); -u(); -c(); -p(); -m(); -function is(e) { - if (e === void 0) return ""; - let t = ut(e); - return new nt(0, { colors: Dr }).write(t).toString(); -} -f(); -u(); -c(); -p(); -m(); -var vc = "P2037"; -function Hr({ error: e, user_facing_error: t }, r, n) { - return t.error_code - ? new ne(Tc(t, n), { - code: t.error_code, - clientVersion: r, - meta: t.meta, - batchRequestIdx: t.batch_request_idx, - }) - : new ie(e, { clientVersion: r, batchRequestIdx: t.batch_request_idx }); -} -function Tc(e, t) { - let r = e.message; - return ( - (t === "postgresql" || t === "postgres" || t === "mysql") && - e.error_code === vc && - (r += ` -Prisma Accelerate has built-in connection pooling to prevent such errors: https://pris.ly/client/error-accelerate`), - r - ); -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var Qn = class { - getLocation() { - return null; - } -}; -function Ne(e) { - return typeof $EnabledCallSite == "function" && e !== "minimal" - ? new $EnabledCallSite() - : new Qn(); -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var os = { _avg: !0, _count: !0, _sum: !0, _min: !0, _max: !0 }; -function ft(e = {}) { - let t = Rc(e); - return Object.entries(t).reduce( - (n, [i, o]) => ( - os[i] !== void 0 ? (n.select[i] = { select: o }) : (n[i] = o), - n - ), - { select: {} }, - ); -} -function Rc(e = {}) { - return typeof e._count == "boolean" - ? { ...e, _count: { _all: e._count } } - : e; -} -function zr(e = {}) { - return (t) => (typeof e._count == "boolean" && (t._count = t._count._all), t); -} -function ss(e, t) { - let r = zr(e); - return t({ action: "aggregate", unpacker: r, argsMapper: ft })(e); -} -f(); -u(); -c(); -p(); -m(); -function Cc(e = {}) { - let { select: t, ...r } = e; - return typeof t == "object" - ? ft({ ...r, _count: t }) - : ft({ ...r, _count: { _all: !0 } }); -} -function Sc(e = {}) { - return typeof e.select == "object" - ? (t) => zr(e)(t)._count - : (t) => zr(e)(t)._count._all; -} -function as(e, t) { - return t({ action: "count", unpacker: Sc(e), argsMapper: Cc })(e); -} -f(); -u(); -c(); -p(); -m(); -function Ic(e = {}) { - let t = ft(e); - if (Array.isArray(t.by)) - for (let r of t.by) typeof r == "string" && (t.select[r] = !0); - else typeof t.by == "string" && (t.select[t.by] = !0); - return t; -} -function Oc(e = {}) { - return (t) => ( - typeof e?._count == "boolean" && - t.forEach((r) => { - r._count = r._count._all; - }), - t - ); -} -function ls(e, t) { - return t({ action: "groupBy", unpacker: Oc(e), argsMapper: Ic })(e); -} -function us(e, t, r) { - if (t === "aggregate") return (n) => ss(n, r); - if (t === "count") return (n) => as(n, r); - if (t === "groupBy") return (n) => ls(n, r); -} -f(); -u(); -c(); -p(); -m(); -function cs(e, t) { - let r = t.fields.filter((i) => !i.relationName), - n = so(r, "name"); - return new Proxy( - {}, - { - get(i, o) { - if (o in i || typeof o == "symbol") return i[o]; - let s = n[o]; - if (s) return new Nt(e, o, s.type, s.isList, s.kind === "enum"); - }, - ...Kr(Object.keys(n)), - }, - ); -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var ps = (e) => (Array.isArray(e) ? e : e.split(".")), - Kn = (e, t) => ps(t).reduce((r, n) => r && r[n], e), - ms = (e, t, r) => - ps(t).reduceRight( - (n, i, o, s) => Object.assign({}, Kn(e, s.slice(0, o)), { [i]: n }), - r, - ); -function kc(e, t) { - return e === void 0 || t === void 0 ? [] : [...t, "select", e]; -} -function Dc(e, t, r) { - return t === void 0 ? (e ?? {}) : ms(t, r, e || !0); -} -function Wn(e, t, r, n, i, o) { - let a = e._runtimeDataModel.models[t].fields.reduce( - (l, d) => ({ ...l, [d.name]: d }), - {}, - ); - return (l) => { - let d = Ne(e._errorFormat), - g = kc(n, i), - h = Dc(l, o, g), - T = r({ dataPath: g, callsite: d })(h), - I = Mc(e, t); - return new Proxy(T, { - get(S, C) { - if (!I.includes(C)) return S[C]; - let F = [a[C].type, r, C], - B = [g, h]; - return Wn(e, ...F, ...B); - }, - ...Kr([...I, ...Object.getOwnPropertyNames(T)]), - }); - }; -} -function Mc(e, t) { - return e._runtimeDataModel.models[t].fields - .filter((r) => r.kind === "object") - .map((r) => r.name); -} -var _c = [ - "findUnique", - "findUniqueOrThrow", - "findFirst", - "findFirstOrThrow", - "create", - "update", - "upsert", - "delete", - ], - Nc = ["aggregate", "count", "groupBy"]; -function Hn(e, t) { - let r = e._extensions.getAllModelExtensions(t) ?? {}, - n = [ - Fc(e, t), - Uc(e, t), - jt(r), - te("name", () => t), - te("$name", () => t), - te("$parent", () => e._appliedParent), - ]; - return me({}, n); -} -function Fc(e, t) { - let r = Ee(t), - n = Object.keys(kt).concat("count"); - return { - getKeys() { - return n; - }, - getPropertyValue(i) { - let o = i, - s = (a) => (l) => { - let d = Ne(e._errorFormat); - return e._createPrismaPromise( - (g) => { - let h = { - args: l, - dataPath: [], - action: o, - model: t, - clientMethod: `${r}.${i}`, - jsModelName: r, - transaction: g, - callsite: d, - }; - return e._request({ ...h, ...a }); - }, - { action: o, args: l, model: t }, - ); - }; - return _c.includes(o) ? Wn(e, t, s) : Lc(i) ? us(e, i, s) : s({}); - }, - }; -} -function Lc(e) { - return Nc.includes(e); -} -function Uc(e, t) { - return Be( - te("fields", () => { - let r = e._runtimeDataModel.models[t]; - return cs(t, r); - }), - ); -} -f(); -u(); -c(); -p(); -m(); -function fs(e) { - return e.replace(/^./, (t) => t.toUpperCase()); -} -var zn = Symbol(); -function Gt(e) { - let t = [ - Bc(e), - qc(e), - te(zn, () => e), - te("$parent", () => e._appliedParent), - ], - r = e._extensions.getAllClientExtensions(); - return (r && t.push(jt(r)), me(e, t)); -} -function Bc(e) { - let t = Object.getPrototypeOf(e._originalClient), - r = [...new Set(Object.getOwnPropertyNames(t))]; - return { - getKeys() { - return r; - }, - getPropertyValue(n) { - return e[n]; - }, - }; -} -function qc(e) { - let t = Object.keys(e._runtimeDataModel.models), - r = t.map(Ee), - n = [...new Set(t.concat(r))]; - return Be({ - getKeys() { - return n; - }, - getPropertyValue(i) { - let o = fs(i); - if (e._runtimeDataModel.models[o] !== void 0) return Hn(e, o); - if (e._runtimeDataModel.models[i] !== void 0) return Hn(e, i); - }, - getPropertyDescriptor(i) { - if (!r.includes(i)) return { enumerable: !1 }; - }, - }); -} -function ds(e) { - return e[zn] ? e[zn] : e; -} -function gs(e) { - if (typeof e == "function") return e(this); - if (e.client?.__AccelerateEngine) { - let r = e.client.__AccelerateEngine; - this._originalClient._engine = new r( - this._originalClient._accelerateEngineConfig, - ); - } - let t = Object.create(this._originalClient, { - _extensions: { value: this._extensions.append(e) }, - _appliedParent: { value: this, configurable: !0 }, - $on: { value: void 0 }, - }); - return Gt(t); -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -function hs({ result: e, modelName: t, select: r, omit: n, extensions: i }) { - let o = i.getAllComputedFields(t); - if (!o) return e; - let s = [], - a = []; - for (let l of Object.values(o)) { - if (n) { - if (n[l.name]) continue; - let d = l.needs.filter((g) => n[g]); - d.length > 0 && a.push(mt(d)); - } else if (r) { - if (!r[l.name]) continue; - let d = l.needs.filter((g) => !r[g]); - d.length > 0 && a.push(mt(d)); - } - Vc(e, l.needs) && s.push($c(l, me(e, s))); - } - return s.length > 0 || a.length > 0 ? me(e, [...s, ...a]) : e; -} -function Vc(e, t) { - return t.every((r) => Cn(e, r)); -} -function $c(e, t) { - return Be(te(e.name, () => e.compute(t))); -} -f(); -u(); -c(); -p(); -m(); -function Yr({ - visitor: e, - result: t, - args: r, - runtimeDataModel: n, - modelName: i, -}) { - if (Array.isArray(t)) { - for (let s = 0; s < t.length; s++) - t[s] = Yr({ - result: t[s], - args: r, - modelName: i, - runtimeDataModel: n, - visitor: e, - }); - return t; - } - let o = e(t, i, r) ?? t; - return ( - r.include && - ys({ - includeOrSelect: r.include, - result: o, - parentModelName: i, - runtimeDataModel: n, - visitor: e, - }), - r.select && - ys({ - includeOrSelect: r.select, - result: o, - parentModelName: i, - runtimeDataModel: n, - visitor: e, - }), - o - ); -} -function ys({ - includeOrSelect: e, - result: t, - parentModelName: r, - runtimeDataModel: n, - visitor: i, -}) { - for (let [o, s] of Object.entries(e)) { - if (!s || t[o] == null || be(s)) continue; - let l = n.models[r].fields.find((g) => g.name === o); - if (!l || l.kind !== "object" || !l.relationName) continue; - let d = typeof s == "object" ? s : {}; - t[o] = Yr({ - visitor: i, - result: t[o], - args: d, - modelName: l.type, - runtimeDataModel: n, - }); - } -} -function ws({ - result: e, - modelName: t, - args: r, - extensions: n, - runtimeDataModel: i, - globalOmit: o, -}) { - return n.isEmpty() || e == null || typeof e != "object" || !i.models[t] - ? e - : Yr({ - result: e, - args: r ?? {}, - modelName: t, - runtimeDataModel: i, - visitor: (a, l, d) => { - let g = Ee(l); - return hs({ - result: a, - modelName: g, - select: d.select, - omit: d.select ? void 0 : { ...o?.[g], ...d.omit }, - extensions: n, - }); - }, - }); -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var jc = ["$connect", "$disconnect", "$on", "$transaction", "$extends"], - Es = jc; -function bs(e) { - if (e instanceof se) return Gc(e); - if (Gr(e)) return Jc(e); - if (Array.isArray(e)) { - let r = [e[0]]; - for (let n = 1; n < e.length; n++) r[n] = Jt(e[n]); - return r; - } - let t = {}; - for (let r in e) t[r] = Jt(e[r]); - return t; -} -function Gc(e) { - return new se(e.strings, e.values); -} -function Jc(e) { - return new $t(e.sql, e.values); -} -function Jt(e) { - if (typeof e != "object" || e == null || e instanceof Re || lt(e)) return e; - if (rt(e)) return new Ae(e.toFixed()); - if (Xe(e)) return new Date(+e); - if (ArrayBuffer.isView(e)) return e.slice(0); - if (Array.isArray(e)) { - let t = e.length, - r; - for (r = Array(t); t--; ) r[t] = Jt(e[t]); - return r; - } - if (typeof e == "object") { - let t = {}; - for (let r in e) - r === "__proto__" - ? Object.defineProperty(t, r, { - value: Jt(e[r]), - configurable: !0, - enumerable: !0, - writable: !0, - }) - : (t[r] = Jt(e[r])); - return t; - } - Ue(e, "Unknown value"); -} -function Ps(e, t, r, n = 0) { - return e._createPrismaPromise((i) => { - let o = t.customDataProxyFetch; - return ( - "transaction" in t && - i !== void 0 && - (t.transaction?.kind === "batch" && t.transaction.lock.then(), - (t.transaction = i)), - n === r.length - ? e._executeRequest(t) - : r[n]({ - model: t.model, - operation: t.model ? t.action : t.clientMethod, - args: bs(t.args ?? {}), - __internalParams: t, - query: (s, a = t) => { - let l = a.customDataProxyFetch; - return ( - (a.customDataProxyFetch = Rs(o, l)), - (a.args = s), - Ps(e, a, r, n + 1) - ); - }, - }) - ); - }); -} -function vs(e, t) { - let { jsModelName: r, action: n, clientMethod: i } = t, - o = r ? n : i; - if (e._extensions.isEmpty()) return e._executeRequest(t); - let s = e._extensions.getAllQueryCallbacks(r ?? "$none", o); - return Ps(e, t, s); -} -function Ts(e) { - return (t) => { - let r = { requests: t }, - n = t[0].extensions.getAllBatchQueryCallbacks(); - return n.length ? As(r, n, 0, e) : e(r); - }; -} -function As(e, t, r, n) { - if (r === t.length) return n(e); - let i = e.customDataProxyFetch, - o = e.requests[0].transaction; - return t[r]({ - args: { - queries: e.requests.map((s) => ({ - model: s.modelName, - operation: s.action, - args: s.args, - })), - transaction: o - ? { isolationLevel: o.kind === "batch" ? o.isolationLevel : void 0 } - : void 0, - }, - __internalParams: e, - query(s, a = e) { - let l = a.customDataProxyFetch; - return ((a.customDataProxyFetch = Rs(i, l)), As(a, t, r + 1, n)); - }, - }); -} -var xs = (e) => e; -function Rs(e = xs, t = xs) { - return (r) => e(t(r)); -} -f(); -u(); -c(); -p(); -m(); -var Cs = z("prisma:client"), - Ss = { Vercel: "vercel", "Netlify CI": "netlify" }; -function Is({ postinstall: e, ciName: t, clientVersion: r, generator: n }) { - if ( - (Cs("checkPlatformCaching:postinstall", e), - Cs("checkPlatformCaching:ciName", t), - e === !0 && - !( - n?.output && typeof (n.output.fromEnvVar ?? n.output.value) == "string" - ) && - t && - t in Ss) - ) { - let i = `Prisma has detected that this project was built on ${t}, which caches dependencies. This leads to an outdated Prisma Client because Prisma's auto-generation isn't triggered. To fix this, make sure to run the \`prisma generate\` command during the build process. +"use strict";var ba=Object.create;var lr=Object.defineProperty;var xa=Object.getOwnPropertyDescriptor;var Pa=Object.getOwnPropertyNames;var va=Object.getPrototypeOf,Ta=Object.prototype.hasOwnProperty;var fe=(e,t)=>()=>(e&&(t=e(e=0)),t);var Je=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),vt=(e,t)=>{for(var r in t)lr(e,r,{get:t[r],enumerable:!0})},ci=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Pa(t))!Ta.call(e,i)&&i!==r&&lr(e,i,{get:()=>t[i],enumerable:!(n=xa(t,i))||n.enumerable});return e};var Qe=(e,t,r)=>(r=e!=null?ba(va(e)):{},ci(t||!e||!e.__esModule?lr(r,"default",{value:e,enumerable:!0}):r,e)),Aa=e=>ci(lr({},"__esModule",{value:!0}),e);var y,b,u=fe(()=>{"use strict";y={nextTick:(e,...t)=>{setTimeout(()=>{e(...t)},0)},env:{},version:"",cwd:()=>"/",stderr:{},argv:["/bin/node"],pid:1e4},{cwd:b}=y});var x,c=fe(()=>{"use strict";x=globalThis.performance??(()=>{let e=Date.now();return{now:()=>Date.now()-e}})()});var E,p=fe(()=>{"use strict";E=()=>{};E.prototype=E});var m=fe(()=>{"use strict"});var Ii=Je(ze=>{"use strict";f();u();c();p();m();var gi=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Ra=gi(e=>{"use strict";e.byteLength=l,e.toByteArray=g,e.fromByteArray=I;var t=[],r=[],n=typeof Uint8Array<"u"?Uint8Array:Array,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(o=0,s=i.length;o0)throw new Error("Invalid string. Length must be a multiple of 4");var M=S.indexOf("=");M===-1&&(M=C);var F=M===C?0:4-M%4;return[M,F]}function l(S){var C=a(S),M=C[0],F=C[1];return(M+F)*3/4-F}function d(S,C,M){return(C+M)*3/4-M}function g(S){var C,M=a(S),F=M[0],B=M[1],O=new n(d(S,F,B)),L=0,le=B>0?F-4:F,J;for(J=0;J>16&255,O[L++]=C>>8&255,O[L++]=C&255;return B===2&&(C=r[S.charCodeAt(J)]<<2|r[S.charCodeAt(J+1)]>>4,O[L++]=C&255),B===1&&(C=r[S.charCodeAt(J)]<<10|r[S.charCodeAt(J+1)]<<4|r[S.charCodeAt(J+2)]>>2,O[L++]=C>>8&255,O[L++]=C&255),O}function h(S){return t[S>>18&63]+t[S>>12&63]+t[S>>6&63]+t[S&63]}function T(S,C,M){for(var F,B=[],O=C;Ole?le:L+O));return F===1?(C=S[M-1],B.push(t[C>>2]+t[C<<4&63]+"==")):F===2&&(C=(S[M-2]<<8)+S[M-1],B.push(t[C>>10]+t[C>>4&63]+t[C<<2&63]+"=")),B.join("")}}),Ca=gi(e=>{e.read=function(t,r,n,i,o){var s,a,l=o*8-i-1,d=(1<>1,h=-7,T=n?o-1:0,I=n?-1:1,S=t[r+T];for(T+=I,s=S&(1<<-h)-1,S>>=-h,h+=l;h>0;s=s*256+t[r+T],T+=I,h-=8);for(a=s&(1<<-h)-1,s>>=-h,h+=i;h>0;a=a*256+t[r+T],T+=I,h-=8);if(s===0)s=1-g;else{if(s===d)return a?NaN:(S?-1:1)*(1/0);a=a+Math.pow(2,i),s=s-g}return(S?-1:1)*a*Math.pow(2,s-i)},e.write=function(t,r,n,i,o,s){var a,l,d,g=s*8-o-1,h=(1<>1,I=o===23?Math.pow(2,-24)-Math.pow(2,-77):0,S=i?0:s-1,C=i?1:-1,M=r<0||r===0&&1/r<0?1:0;for(r=Math.abs(r),isNaN(r)||r===1/0?(l=isNaN(r)?1:0,a=h):(a=Math.floor(Math.log(r)/Math.LN2),r*(d=Math.pow(2,-a))<1&&(a--,d*=2),a+T>=1?r+=I/d:r+=I*Math.pow(2,1-T),r*d>=2&&(a++,d/=2),a+T>=h?(l=0,a=h):a+T>=1?(l=(r*d-1)*Math.pow(2,o),a=a+T):(l=r*Math.pow(2,T-1)*Math.pow(2,o),a=0));o>=8;t[n+S]=l&255,S+=C,l/=256,o-=8);for(a=a<0;t[n+S]=a&255,S+=C,a/=256,g-=8);t[n+S-C]|=M*128}}),un=Ra(),We=Ca(),pi=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;ze.Buffer=A;ze.SlowBuffer=Ma;ze.INSPECT_MAX_BYTES=50;var ur=2147483647;ze.kMaxLength=ur;A.TYPED_ARRAY_SUPPORT=Sa();!A.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function Sa(){try{let e=new Uint8Array(1),t={foo:function(){return 42}};return Object.setPrototypeOf(t,Uint8Array.prototype),Object.setPrototypeOf(e,t),e.foo()===42}catch{return!1}}Object.defineProperty(A.prototype,"parent",{enumerable:!0,get:function(){if(A.isBuffer(this))return this.buffer}});Object.defineProperty(A.prototype,"offset",{enumerable:!0,get:function(){if(A.isBuffer(this))return this.byteOffset}});function xe(e){if(e>ur)throw new RangeError('The value "'+e+'" is invalid for option "size"');let t=new Uint8Array(e);return Object.setPrototypeOf(t,A.prototype),t}function A(e,t,r){if(typeof e=="number"){if(typeof t=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return mn(e)}return hi(e,t,r)}A.poolSize=8192;function hi(e,t,r){if(typeof e=="string")return Oa(e,t);if(ArrayBuffer.isView(e))return ka(e);if(e==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(de(e,ArrayBuffer)||e&&de(e.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(de(e,SharedArrayBuffer)||e&&de(e.buffer,SharedArrayBuffer)))return wi(e,t,r);if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let n=e.valueOf&&e.valueOf();if(n!=null&&n!==e)return A.from(n,t,r);let i=Da(e);if(i)return i;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof e[Symbol.toPrimitive]=="function")return A.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}A.from=function(e,t,r){return hi(e,t,r)};Object.setPrototypeOf(A.prototype,Uint8Array.prototype);Object.setPrototypeOf(A,Uint8Array);function yi(e){if(typeof e!="number")throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function Ia(e,t,r){return yi(e),e<=0?xe(e):t!==void 0?typeof r=="string"?xe(e).fill(t,r):xe(e).fill(t):xe(e)}A.alloc=function(e,t,r){return Ia(e,t,r)};function mn(e){return yi(e),xe(e<0?0:fn(e)|0)}A.allocUnsafe=function(e){return mn(e)};A.allocUnsafeSlow=function(e){return mn(e)};function Oa(e,t){if((typeof t!="string"||t==="")&&(t="utf8"),!A.isEncoding(t))throw new TypeError("Unknown encoding: "+t);let r=Ei(e,t)|0,n=xe(r),i=n.write(e,t);return i!==r&&(n=n.slice(0,i)),n}function cn(e){let t=e.length<0?0:fn(e.length)|0,r=xe(t);for(let n=0;n=ur)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+ur.toString(16)+" bytes");return e|0}function Ma(e){return+e!=e&&(e=0),A.alloc(+e)}A.isBuffer=function(e){return e!=null&&e._isBuffer===!0&&e!==A.prototype};A.compare=function(e,t){if(de(e,Uint8Array)&&(e=A.from(e,e.offset,e.byteLength)),de(t,Uint8Array)&&(t=A.from(t,t.offset,t.byteLength)),!A.isBuffer(e)||!A.isBuffer(t))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(e===t)return 0;let r=e.length,n=t.length;for(let i=0,o=Math.min(r,n);in.length?(A.isBuffer(o)||(o=A.from(o)),o.copy(n,i)):Uint8Array.prototype.set.call(n,o,i);else if(A.isBuffer(o))o.copy(n,i);else throw new TypeError('"list" argument must be an Array of Buffers');i+=o.length}return n};function Ei(e,t){if(A.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||de(e,ArrayBuffer))return e.byteLength;if(typeof e!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);let r=e.length,n=arguments.length>2&&arguments[2]===!0;if(!n&&r===0)return 0;let i=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return pn(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return r*2;case"hex":return r>>>1;case"base64":return Si(e).length;default:if(i)return n?-1:pn(e).length;t=(""+t).toLowerCase(),i=!0}}A.byteLength=Ei;function _a(e,t,r){let n=!1;if((t===void 0||t<0)&&(t=0),t>this.length||((r===void 0||r>this.length)&&(r=this.length),r<=0)||(r>>>=0,t>>>=0,r<=t))return"";for(e||(e="utf8");;)switch(e){case"hex":return Ga(this,t,r);case"utf8":case"utf-8":return xi(this,t,r);case"ascii":return $a(this,t,r);case"latin1":case"binary":return ja(this,t,r);case"base64":return qa(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Ja(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}A.prototype._isBuffer=!0;function Le(e,t,r){let n=e[t];e[t]=e[r],e[r]=n}A.prototype.swap16=function(){let e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let t=0;tt&&(e+=" ... "),""};pi&&(A.prototype[pi]=A.prototype.inspect);A.prototype.compare=function(e,t,r,n,i){if(de(e,Uint8Array)&&(e=A.from(e,e.offset,e.byteLength)),!A.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(t===void 0&&(t=0),r===void 0&&(r=e?e.length:0),n===void 0&&(n=0),i===void 0&&(i=this.length),t<0||r>e.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=r)return 0;if(n>=i)return-1;if(t>=r)return 1;if(t>>>=0,r>>>=0,n>>>=0,i>>>=0,this===e)return 0;let o=i-n,s=r-t,a=Math.min(o,s),l=this.slice(n,i),d=e.slice(t,r);for(let g=0;g2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,gn(r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0)if(i)r=0;else return-1;if(typeof t=="string"&&(t=A.from(t,n)),A.isBuffer(t))return t.length===0?-1:mi(e,t,r,n,i);if(typeof t=="number")return t=t&255,typeof Uint8Array.prototype.indexOf=="function"?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):mi(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function mi(e,t,r,n,i){let o=1,s=e.length,a=t.length;if(n!==void 0&&(n=String(n).toLowerCase(),n==="ucs2"||n==="ucs-2"||n==="utf16le"||n==="utf-16le")){if(e.length<2||t.length<2)return-1;o=2,s/=2,a/=2,r/=2}function l(g,h){return o===1?g[h]:g.readUInt16BE(h*o)}let d;if(i){let g=-1;for(d=r;ds&&(r=s-a),d=r;d>=0;d--){let g=!0;for(let h=0;hi&&(n=i)):n=i;let o=t.length;n>o/2&&(n=o/2);let s;for(s=0;s>>0,isFinite(r)?(r=r>>>0,n===void 0&&(n="utf8")):(n=r,r=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let i=this.length-t;if((r===void 0||r>i)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");let o=!1;for(;;)switch(n){case"hex":return Na(this,e,t,r);case"utf8":case"utf-8":return Fa(this,e,t,r);case"ascii":case"latin1":case"binary":return La(this,e,t,r);case"base64":return Ua(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Ba(this,e,t,r);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}};A.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function qa(e,t,r){return t===0&&r===e.length?un.fromByteArray(e):un.fromByteArray(e.slice(t,r))}function xi(e,t,r){r=Math.min(e.length,r);let n=[],i=t;for(;i239?4:o>223?3:o>191?2:1;if(i+a<=r){let l,d,g,h;switch(a){case 1:o<128&&(s=o);break;case 2:l=e[i+1],(l&192)===128&&(h=(o&31)<<6|l&63,h>127&&(s=h));break;case 3:l=e[i+1],d=e[i+2],(l&192)===128&&(d&192)===128&&(h=(o&15)<<12|(l&63)<<6|d&63,h>2047&&(h<55296||h>57343)&&(s=h));break;case 4:l=e[i+1],d=e[i+2],g=e[i+3],(l&192)===128&&(d&192)===128&&(g&192)===128&&(h=(o&15)<<18|(l&63)<<12|(d&63)<<6|g&63,h>65535&&h<1114112&&(s=h))}}s===null?(s=65533,a=1):s>65535&&(s-=65536,n.push(s>>>10&1023|55296),s=56320|s&1023),n.push(s),i+=a}return Va(n)}var fi=4096;function Va(e){let t=e.length;if(t<=fi)return String.fromCharCode.apply(String,e);let r="",n=0;for(;nn)&&(r=n);let i="";for(let o=t;or&&(e=r),t<0?(t+=r,t<0&&(t=0)):t>r&&(t=r),tr)throw new RangeError("Trying to access beyond buffer length")}A.prototype.readUintLE=A.prototype.readUIntLE=function(e,t,r){e=e>>>0,t=t>>>0,r||W(e,t,this.length);let n=this[e],i=1,o=0;for(;++o>>0,t=t>>>0,r||W(e,t,this.length);let n=this[e+--t],i=1;for(;t>0&&(i*=256);)n+=this[e+--t]*i;return n};A.prototype.readUint8=A.prototype.readUInt8=function(e,t){return e=e>>>0,t||W(e,1,this.length),this[e]};A.prototype.readUint16LE=A.prototype.readUInt16LE=function(e,t){return e=e>>>0,t||W(e,2,this.length),this[e]|this[e+1]<<8};A.prototype.readUint16BE=A.prototype.readUInt16BE=function(e,t){return e=e>>>0,t||W(e,2,this.length),this[e]<<8|this[e+1]};A.prototype.readUint32LE=A.prototype.readUInt32LE=function(e,t){return e=e>>>0,t||W(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+this[e+3]*16777216};A.prototype.readUint32BE=A.prototype.readUInt32BE=function(e,t){return e=e>>>0,t||W(e,4,this.length),this[e]*16777216+(this[e+1]<<16|this[e+2]<<8|this[e+3])};A.prototype.readBigUInt64LE=Se(function(e){e=e>>>0,He(e,"offset");let t=this[e],r=this[e+7];(t===void 0||r===void 0)&&Tt(e,this.length-8);let n=t+this[++e]*2**8+this[++e]*2**16+this[++e]*2**24,i=this[++e]+this[++e]*2**8+this[++e]*2**16+r*2**24;return BigInt(n)+(BigInt(i)<>>0,He(e,"offset");let t=this[e],r=this[e+7];(t===void 0||r===void 0)&&Tt(e,this.length-8);let n=t*2**24+this[++e]*2**16+this[++e]*2**8+this[++e],i=this[++e]*2**24+this[++e]*2**16+this[++e]*2**8+r;return(BigInt(n)<>>0,t=t>>>0,r||W(e,t,this.length);let n=this[e],i=1,o=0;for(;++o=i&&(n-=Math.pow(2,8*t)),n};A.prototype.readIntBE=function(e,t,r){e=e>>>0,t=t>>>0,r||W(e,t,this.length);let n=t,i=1,o=this[e+--n];for(;n>0&&(i*=256);)o+=this[e+--n]*i;return i*=128,o>=i&&(o-=Math.pow(2,8*t)),o};A.prototype.readInt8=function(e,t){return e=e>>>0,t||W(e,1,this.length),this[e]&128?(255-this[e]+1)*-1:this[e]};A.prototype.readInt16LE=function(e,t){e=e>>>0,t||W(e,2,this.length);let r=this[e]|this[e+1]<<8;return r&32768?r|4294901760:r};A.prototype.readInt16BE=function(e,t){e=e>>>0,t||W(e,2,this.length);let r=this[e+1]|this[e]<<8;return r&32768?r|4294901760:r};A.prototype.readInt32LE=function(e,t){return e=e>>>0,t||W(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24};A.prototype.readInt32BE=function(e,t){return e=e>>>0,t||W(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]};A.prototype.readBigInt64LE=Se(function(e){e=e>>>0,He(e,"offset");let t=this[e],r=this[e+7];(t===void 0||r===void 0)&&Tt(e,this.length-8);let n=this[e+4]+this[e+5]*2**8+this[e+6]*2**16+(r<<24);return(BigInt(n)<>>0,He(e,"offset");let t=this[e],r=this[e+7];(t===void 0||r===void 0)&&Tt(e,this.length-8);let n=(t<<24)+this[++e]*2**16+this[++e]*2**8+this[++e];return(BigInt(n)<>>0,t||W(e,4,this.length),We.read(this,e,!0,23,4)};A.prototype.readFloatBE=function(e,t){return e=e>>>0,t||W(e,4,this.length),We.read(this,e,!1,23,4)};A.prototype.readDoubleLE=function(e,t){return e=e>>>0,t||W(e,8,this.length),We.read(this,e,!0,52,8)};A.prototype.readDoubleBE=function(e,t){return e=e>>>0,t||W(e,8,this.length),We.read(this,e,!1,52,8)};function re(e,t,r,n,i,o){if(!A.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}A.prototype.writeUintLE=A.prototype.writeUIntLE=function(e,t,r,n){if(e=+e,t=t>>>0,r=r>>>0,!n){let s=Math.pow(2,8*r)-1;re(this,e,t,r,s,0)}let i=1,o=0;for(this[t]=e&255;++o>>0,r=r>>>0,!n){let s=Math.pow(2,8*r)-1;re(this,e,t,r,s,0)}let i=r-1,o=1;for(this[t+i]=e&255;--i>=0&&(o*=256);)this[t+i]=e/o&255;return t+r};A.prototype.writeUint8=A.prototype.writeUInt8=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,1,255,0),this[t]=e&255,t+1};A.prototype.writeUint16LE=A.prototype.writeUInt16LE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,2,65535,0),this[t]=e&255,this[t+1]=e>>>8,t+2};A.prototype.writeUint16BE=A.prototype.writeUInt16BE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=e&255,t+2};A.prototype.writeUint32LE=A.prototype.writeUInt32LE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=e&255,t+4};A.prototype.writeUint32BE=A.prototype.writeUInt32BE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4};function Pi(e,t,r,n,i){Ci(t,n,i,e,r,7);let o=Number(t&BigInt(4294967295));e[r++]=o,o=o>>8,e[r++]=o,o=o>>8,e[r++]=o,o=o>>8,e[r++]=o;let s=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=s,s=s>>8,e[r++]=s,s=s>>8,e[r++]=s,s=s>>8,e[r++]=s,r}function vi(e,t,r,n,i){Ci(t,n,i,e,r,7);let o=Number(t&BigInt(4294967295));e[r+7]=o,o=o>>8,e[r+6]=o,o=o>>8,e[r+5]=o,o=o>>8,e[r+4]=o;let s=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=s,s=s>>8,e[r+2]=s,s=s>>8,e[r+1]=s,s=s>>8,e[r]=s,r+8}A.prototype.writeBigUInt64LE=Se(function(e,t=0){return Pi(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))});A.prototype.writeBigUInt64BE=Se(function(e,t=0){return vi(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))});A.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t=t>>>0,!n){let a=Math.pow(2,8*r-1);re(this,e,t,r,a-1,-a)}let i=0,o=1,s=0;for(this[t]=e&255;++i>0)-s&255;return t+r};A.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t=t>>>0,!n){let a=Math.pow(2,8*r-1);re(this,e,t,r,a-1,-a)}let i=r-1,o=1,s=0;for(this[t+i]=e&255;--i>=0&&(o*=256);)e<0&&s===0&&this[t+i+1]!==0&&(s=1),this[t+i]=(e/o>>0)-s&255;return t+r};A.prototype.writeInt8=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=e&255,t+1};A.prototype.writeInt16LE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,2,32767,-32768),this[t]=e&255,this[t+1]=e>>>8,t+2};A.prototype.writeInt16BE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=e&255,t+2};A.prototype.writeInt32LE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,4,2147483647,-2147483648),this[t]=e&255,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4};A.prototype.writeInt32BE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4};A.prototype.writeBigInt64LE=Se(function(e,t=0){return Pi(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});A.prototype.writeBigInt64BE=Se(function(e,t=0){return vi(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function Ti(e,t,r,n,i,o){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function Ai(e,t,r,n,i){return t=+t,r=r>>>0,i||Ti(e,t,r,4,34028234663852886e22,-34028234663852886e22),We.write(e,t,r,n,23,4),r+4}A.prototype.writeFloatLE=function(e,t,r){return Ai(this,e,t,!0,r)};A.prototype.writeFloatBE=function(e,t,r){return Ai(this,e,t,!1,r)};function Ri(e,t,r,n,i){return t=+t,r=r>>>0,i||Ti(e,t,r,8,17976931348623157e292,-17976931348623157e292),We.write(e,t,r,n,52,8),r+8}A.prototype.writeDoubleLE=function(e,t,r){return Ri(this,e,t,!0,r)};A.prototype.writeDoubleBE=function(e,t,r){return Ri(this,e,t,!1,r)};A.prototype.copy=function(e,t,r,n){if(!A.isBuffer(e))throw new TypeError("argument should be a Buffer");if(r||(r=0),!n&&n!==0&&(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t>>0,r=r===void 0?this.length:r>>>0,e||(e=0);let i;if(typeof e=="number")for(i=t;i2**32?i=di(String(r)):typeof r=="bigint"&&(i=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(i=di(i)),i+="n"),n+=` It must be ${t}. Received ${i}`,n},RangeError);function di(e){let t="",r=e.length,n=e[0]==="-"?1:0;for(;r>=n+4;r-=3)t=`_${e.slice(r-3,r)}${t}`;return`${e.slice(0,r)}${t}`}function Qa(e,t,r){He(t,"offset"),(e[t]===void 0||e[t+r]===void 0)&&Tt(t,e.length-(r+1))}function Ci(e,t,r,n,i,o){if(e>r||e3?t===0||t===BigInt(0)?a=`>= 0${s} and < 2${s} ** ${(o+1)*8}${s}`:a=`>= -(2${s} ** ${(o+1)*8-1}${s}) and < 2 ** ${(o+1)*8-1}${s}`:a=`>= ${t}${s} and <= ${r}${s}`,new Ke.ERR_OUT_OF_RANGE("value",a,e)}Qa(n,i,o)}function He(e,t){if(typeof e!="number")throw new Ke.ERR_INVALID_ARG_TYPE(t,"number",e)}function Tt(e,t,r){throw Math.floor(e)!==e?(He(e,r),new Ke.ERR_OUT_OF_RANGE(r||"offset","an integer",e)):t<0?new Ke.ERR_BUFFER_OUT_OF_BOUNDS:new Ke.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${t}`,e)}var Ka=/[^+/0-9A-Za-z-_]/g;function Wa(e){if(e=e.split("=")[0],e=e.trim().replace(Ka,""),e.length<2)return"";for(;e.length%4!==0;)e=e+"=";return e}function pn(e,t){t=t||1/0;let r,n=e.length,i=null,o=[];for(let s=0;s55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&o.push(239,191,189);continue}else if(s+1===n){(t-=3)>-1&&o.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&o.push(239,191,189),i=r;continue}r=(i-55296<<10|r-56320)+65536}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;o.push(r)}else if(r<2048){if((t-=2)<0)break;o.push(r>>6|192,r&63|128)}else if(r<65536){if((t-=3)<0)break;o.push(r>>12|224,r>>6&63|128,r&63|128)}else if(r<1114112){if((t-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,r&63|128)}else throw new Error("Invalid code point")}return o}function Ha(e){let t=[];for(let r=0;r>8,i=r%256,o.push(i),o.push(n);return o}function Si(e){return un.toByteArray(Wa(e))}function cr(e,t,r,n){let i;for(i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function de(e,t){return e instanceof t||e!=null&&e.constructor!=null&&e.constructor.name!=null&&e.constructor.name===t.name}function gn(e){return e!==e}var Ya=function(){let e="0123456789abcdef",t=new Array(256);for(let r=0;r<16;++r){let n=r*16;for(let i=0;i<16;++i)t[n+i]=e[r]+e[i]}return t}();function Se(e){return typeof BigInt>"u"?Za:e}function Za(){throw new Error("BigInt not supported")}});var w,f=fe(()=>{"use strict";w=Qe(Ii())});function il(){return!1}function bn(){return{dev:0,ino:0,mode:0,nlink:0,uid:0,gid:0,rdev:0,size:0,blksize:0,blocks:0,atimeMs:0,mtimeMs:0,ctimeMs:0,birthtimeMs:0,atime:new Date,mtime:new Date,ctime:new Date,birthtime:new Date}}function ol(){return bn()}function sl(){return[]}function al(e){e(null,[])}function ll(){return""}function ul(){return""}function cl(){}function pl(){}function ml(){}function fl(){}function dl(){}function gl(){}function hl(){}function yl(){}function wl(){return{close:()=>{},on:()=>{},removeAllListeners:()=>{}}}function El(e,t){t(null,bn())}var bl,xl,Qi,Ki=fe(()=>{"use strict";f();u();c();p();m();bl={},xl={existsSync:il,lstatSync:bn,stat:El,statSync:ol,readdirSync:sl,readdir:al,readlinkSync:ll,realpathSync:ul,chmodSync:cl,renameSync:pl,mkdirSync:ml,rmdirSync:fl,rmSync:dl,unlinkSync:gl,watchFile:hl,unwatchFile:yl,watch:wl,promises:bl},Qi=xl});var Wi=Je((df,Pl)=>{Pl.exports={name:"@prisma/internals",version:"6.19.2",description:"This package is intended for Prisma's internal use",main:"dist/index.js",types:"dist/index.d.ts",repository:{type:"git",url:"https://github.com/prisma/prisma.git",directory:"packages/internals"},homepage:"https://www.prisma.io",author:"Tim Suchanek ",bugs:"https://github.com/prisma/prisma/issues",license:"Apache-2.0",scripts:{dev:"DEV=true tsx helpers/build.ts",build:"tsx helpers/build.ts",test:"dotenv -e ../../.db.env -- jest --silent",prepublishOnly:"pnpm run build"},files:["README.md","dist","!**/libquery_engine*","!dist/get-generators/engines/*","scripts"],devDependencies:{"@babel/helper-validator-identifier":"7.25.9","@opentelemetry/api":"1.9.0","@swc/core":"1.11.5","@swc/jest":"0.2.37","@types/babel__helper-validator-identifier":"7.15.2","@types/jest":"29.5.14","@types/node":"18.19.76","@types/resolve":"1.20.6",archiver:"6.0.2","checkpoint-client":"1.1.33","cli-truncate":"4.0.0",dotenv:"16.5.0",empathic:"2.0.0","escape-string-regexp":"5.0.0",execa:"8.0.1","fast-glob":"3.3.3","find-up":"7.0.0","fp-ts":"2.16.9","fs-extra":"11.3.0","global-directory":"4.0.0",globby:"11.1.0","identifier-regex":"1.0.0","indent-string":"4.0.0","is-windows":"1.0.2","is-wsl":"3.1.0",jest:"29.7.0","jest-junit":"16.0.0",kleur:"4.1.5","mock-stdin":"1.0.0","new-github-issue-url":"0.2.1","node-fetch":"3.3.2","npm-packlist":"5.1.3",open:"7.4.2","p-map":"4.0.0",resolve:"1.22.10","string-width":"7.2.0","strip-indent":"4.0.0","temp-dir":"2.0.0",tempy:"1.0.1","terminal-link":"4.0.0",tmp:"0.2.3","ts-pattern":"5.6.2","ts-toolbelt":"9.6.0",typescript:"5.4.5",yarn:"1.22.22"},dependencies:{"@prisma/config":"workspace:*","@prisma/debug":"workspace:*","@prisma/dmmf":"workspace:*","@prisma/driver-adapter-utils":"workspace:*","@prisma/engines":"workspace:*","@prisma/fetch-engine":"workspace:*","@prisma/generator":"workspace:*","@prisma/generator-helper":"workspace:*","@prisma/get-platform":"workspace:*","@prisma/prisma-schema-wasm":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/schema-engine-wasm":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/schema-files-loader":"workspace:*",arg:"5.0.2",prompts:"2.4.2"},peerDependencies:{typescript:">=5.1.0"},peerDependenciesMeta:{typescript:{optional:!0}},sideEffects:!1}});function Tl(...e){return e.join("/")}function Al(...e){return e.join("/")}function Rl(e){let t=Hi(e),r=zi(e),[n,i]=t.split(".");return{root:"/",dir:r,base:t,ext:i,name:n}}function Hi(e){let t=e.split("/");return t[t.length-1]}function zi(e){return e.split("/").slice(0,-1).join("/")}function Sl(e){let t=e.split("/").filter(i=>i!==""&&i!=="."),r=[];for(let i of t)i===".."?r.pop():r.push(i);let n=r.join("/");return e.startsWith("/")?"/"+n:n}var Yi,Cl,Il,Ol,dr,Zi=fe(()=>{"use strict";f();u();c();p();m();Yi="/",Cl=":";Il={sep:Yi},Ol={basename:Hi,delimiter:Cl,dirname:zi,join:Al,normalize:Sl,parse:Rl,posix:Il,resolve:Tl,sep:Yi},dr=Ol});var Pn=Je((Mf,Ml)=>{Ml.exports={name:"@prisma/engines-version",version:"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7",main:"index.js",types:"index.d.ts",license:"Apache-2.0",author:"Tim Suchanek ",prisma:{enginesVersion:"c2990dca591cba766e3b7ef5d9e8a84796e47ab7"},repository:{type:"git",url:"https://github.com/prisma/engines-wrapper.git",directory:"packages/engines-version"},devDependencies:{"@types/node":"18.19.76",typescript:"4.9.5"},files:["index.js","index.d.ts"],scripts:{build:"tsc -d"}}});var Xi=Je(gr=>{"use strict";f();u();c();p();m();Object.defineProperty(gr,"__esModule",{value:!0});gr.enginesVersion=void 0;gr.enginesVersion=Pn().prisma.enginesVersion});var ro=Je((Qf,to)=>{"use strict";f();u();c();p();m();to.exports=(e,t=1,r)=>{if(r={indent:" ",includeEmptyLines:!1,...r},typeof e!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof e}\``);if(typeof t!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof t}\``);if(typeof r.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``);if(t===0)return e;let n=r.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return e.replace(n,r.indent.repeat(t))}});var Nn=Je((Jy,vo)=>{"use strict";f();u();c();p();m();vo.exports=function(){function e(t,r,n,i,o){return tn?n+1:t+1:i===o?r:r+1}return function(t,r){if(t===r)return 0;if(t.length>r.length){var n=t;t=r,r=n}for(var i=t.length,o=r.length;i>0&&t.charCodeAt(i-1)===r.charCodeAt(o-1);)i--,o--;for(var s=0;s{"use strict";f();u();c();p();m()});var Io=fe(()=>{"use strict";f();u();c();p();m()});var Jr,Xo=fe(()=>{"use strict";f();u();c();p();m();Jr=class{events={};on(t,r){return this.events[t]||(this.events[t]=[]),this.events[t].push(r),this}emit(t,...r){return this.events[t]?(this.events[t].forEach(n=>{n(...r)}),!0):!1}}});var kp={};vt(kp,{DMMF:()=>Dt,Debug:()=>z,Decimal:()=>Ae,Extensions:()=>hn,MetricsClient:()=>pt,PrismaClientInitializationError:()=>Q,PrismaClientKnownRequestError:()=>ne,PrismaClientRustPanicError:()=>Pe,PrismaClientUnknownRequestError:()=>ie,PrismaClientValidationError:()=>X,Public:()=>yn,Sql:()=>se,createParam:()=>Jo,defineDmmfProperty:()=>Yo,deserializeJsonResponse:()=>dt,deserializeRawResult:()=>nn,dmmfToRuntimeDataModel:()=>ao,empty:()=>ts,getPrismaClient:()=>ya,getRuntime:()=>Zr,join:()=>es,makeStrictEnum:()=>wa,makeTypedQueryFactory:()=>Zo,objectEnumValues:()=>Nr,raw:()=>Gn,serializeJsonQuery:()=>$r,skip:()=>Vr,sqltag:()=>Jn,warnEnvConflicts:()=>void 0,warnOnce:()=>St});module.exports=Aa(kp);f();u();c();p();m();var hn={};vt(hn,{defineExtension:()=>Oi,getExtensionContext:()=>ki});f();u();c();p();m();f();u();c();p();m();function Oi(e){return typeof e=="function"?e:t=>t.$extends(e)}f();u();c();p();m();function ki(e){return e}var yn={};vt(yn,{validator:()=>Di});f();u();c();p();m();f();u();c();p();m();function Di(...e){return t=>t}f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var wn,Mi,_i,Ni,Fi=!0;typeof y<"u"&&({FORCE_COLOR:wn,NODE_DISABLE_COLORS:Mi,NO_COLOR:_i,TERM:Ni}=y.env||{},Fi=y.stdout&&y.stdout.isTTY);var Xa={enabled:!Mi&&_i==null&&Ni!=="dumb"&&(wn!=null&&wn!=="0"||Fi)};function j(e,t){let r=new RegExp(`\\x1b\\[${t}m`,"g"),n=`\x1B[${e}m`,i=`\x1B[${t}m`;return function(o){return!Xa.enabled||o==null?o:n+(~(""+o).indexOf(i)?o.replace(r,i+n):o)+i}}var Pm=j(0,0),pr=j(1,22),mr=j(2,22),vm=j(3,23),Li=j(4,24),Tm=j(7,27),Am=j(8,28),Rm=j(9,29),Cm=j(30,39),Ye=j(31,39),Ui=j(32,39),Bi=j(33,39),qi=j(34,39),Sm=j(35,39),Vi=j(36,39),Im=j(37,39),$i=j(90,39),Om=j(90,39),km=j(40,49),Dm=j(41,49),Mm=j(42,49),_m=j(43,49),Nm=j(44,49),Fm=j(45,49),Lm=j(46,49),Um=j(47,49);f();u();c();p();m();var el=100,ji=["green","yellow","blue","magenta","cyan","red"],fr=[],Gi=Date.now(),tl=0,En=typeof y<"u"?y.env:{};globalThis.DEBUG??=En.DEBUG??"";globalThis.DEBUG_COLORS??=En.DEBUG_COLORS?En.DEBUG_COLORS==="true":!0;var At={enable(e){typeof e=="string"&&(globalThis.DEBUG=e)},disable(){let e=globalThis.DEBUG;return globalThis.DEBUG="",e},enabled(e){let t=globalThis.DEBUG.split(",").map(i=>i.replace(/[.+?^${}()|[\]\\]/g,"\\$&")),r=t.some(i=>i===""||i[0]==="-"?!1:e.match(RegExp(i.split("*").join(".*")+"$"))),n=t.some(i=>i===""||i[0]!=="-"?!1:e.match(RegExp(i.slice(1).split("*").join(".*")+"$")));return r&&!n},log:(...e)=>{let[t,r,...n]=e;(console.warn??console.log)(`${t} ${r}`,...n)},formatters:{}};function rl(e){let t={color:ji[tl++%ji.length],enabled:At.enabled(e),namespace:e,log:At.log,extend:()=>{}},r=(...n)=>{let{enabled:i,namespace:o,color:s,log:a}=t;if(n.length!==0&&fr.push([o,...n]),fr.length>el&&fr.shift(),At.enabled(o)||i){let l=n.map(g=>typeof g=="string"?g:nl(g)),d=`+${Date.now()-Gi}ms`;Gi=Date.now(),a(o,...l,d)}};return new Proxy(r,{get:(n,i)=>t[i],set:(n,i,o)=>t[i]=o})}var z=new Proxy(rl,{get:(e,t)=>At[t],set:(e,t,r)=>At[t]=r});function nl(e,t=2){let r=new Set;return JSON.stringify(e,(n,i)=>{if(typeof i=="object"&&i!==null){if(r.has(i))return"[Circular *]";r.add(i)}else if(typeof i=="bigint")return i.toString();return i},t)}function Ji(){fr.length=0}f();u();c();p();m();f();u();c();p();m();var vl=Wi(),xn=vl.version;f();u();c();p();m();function Ze(e){let t=kl();return t||(e?.config.engineType==="library"?"library":e?.config.engineType==="binary"?"binary":e?.config.engineType==="client"?"client":Dl())}function kl(){let e=y.env.PRISMA_CLIENT_ENGINE_TYPE;return e==="library"?"library":e==="binary"?"binary":e==="client"?"client":void 0}function Dl(){return"library"}f();u();c();p();m();var eo="prisma+postgres",hr=`${eo}:`;function yr(e){return e?.toString().startsWith(`${hr}//`)??!1}function vn(e){if(!yr(e))return!1;let{host:t}=new URL(e);return t.includes("localhost")||t.includes("127.0.0.1")||t.includes("[::1]")}var Ct={};vt(Ct,{error:()=>Fl,info:()=>Nl,log:()=>_l,query:()=>Ll,should:()=>no,tags:()=>Rt,warn:()=>Tn});f();u();c();p();m();var Rt={error:Ye("prisma:error"),warn:Bi("prisma:warn"),info:Vi("prisma:info"),query:qi("prisma:query")},no={warn:()=>!y.env.PRISMA_DISABLE_WARNINGS};function _l(...e){console.log(...e)}function Tn(e,...t){no.warn()&&console.warn(`${Rt.warn} ${e}`,...t)}function Nl(e,...t){console.info(`${Rt.info} ${e}`,...t)}function Fl(e,...t){console.error(`${Rt.error} ${e}`,...t)}function Ll(e,...t){console.log(`${Rt.query} ${e}`,...t)}f();u();c();p();m();function Ue(e,t){throw new Error(t)}f();u();c();p();m();f();u();c();p();m();function An({onlyFirst:e=!1}={}){let r=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(r,e?void 0:"g")}var Ul=An();function Rn(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(Ul,"")}f();u();c();p();m();function Cn(e,t){return Object.prototype.hasOwnProperty.call(e,t)}f();u();c();p();m();function wr(e,t){let r={};for(let n of Object.keys(e))r[n]=t(e[n],n);return r}f();u();c();p();m();function Sn(e,t){if(e.length===0)return;let r=e[0];for(let n=1;n{io.has(e)||(io.add(e),Tn(t,...r))};var Q=class e extends Error{clientVersion;errorCode;retryable;constructor(t,r,n){super(t),this.name="PrismaClientInitializationError",this.clientVersion=r,this.errorCode=n,Error.captureStackTrace(e)}get[Symbol.toStringTag](){return"PrismaClientInitializationError"}};N(Q,"PrismaClientInitializationError");f();u();c();p();m();var ne=class extends Error{code;meta;clientVersion;batchRequestIdx;constructor(t,{code:r,clientVersion:n,meta:i,batchRequestIdx:o}){super(t),this.name="PrismaClientKnownRequestError",this.code=r,this.clientVersion=n,this.meta=i,Object.defineProperty(this,"batchRequestIdx",{value:o,enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return"PrismaClientKnownRequestError"}};N(ne,"PrismaClientKnownRequestError");f();u();c();p();m();var Pe=class extends Error{clientVersion;constructor(t,r){super(t),this.name="PrismaClientRustPanicError",this.clientVersion=r}get[Symbol.toStringTag](){return"PrismaClientRustPanicError"}};N(Pe,"PrismaClientRustPanicError");f();u();c();p();m();var ie=class extends Error{clientVersion;batchRequestIdx;constructor(t,{clientVersion:r,batchRequestIdx:n}){super(t),this.name="PrismaClientUnknownRequestError",this.clientVersion=r,Object.defineProperty(this,"batchRequestIdx",{value:n,writable:!0,enumerable:!1})}get[Symbol.toStringTag](){return"PrismaClientUnknownRequestError"}};N(ie,"PrismaClientUnknownRequestError");f();u();c();p();m();var X=class extends Error{name="PrismaClientValidationError";clientVersion;constructor(t,{clientVersion:r}){super(t),this.clientVersion=r}get[Symbol.toStringTag](){return"PrismaClientValidationError"}};N(X,"PrismaClientValidationError");f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var ge=class{_map=new Map;get(t){return this._map.get(t)?.value}set(t,r){this._map.set(t,{value:r})}getOrCreate(t,r){let n=this._map.get(t);if(n)return n.value;let i=r();return this.set(t,i),i}};f();u();c();p();m();function Ie(e){return e.substring(0,1).toLowerCase()+e.substring(1)}f();u();c();p();m();function so(e,t){let r={};for(let n of e){let i=n[t];r[i]=n}return r}f();u();c();p();m();function It(e){let t;return{get(){return t||(t={value:e()}),t.value}}}f();u();c();p();m();function ao(e){return{models:In(e.models),enums:In(e.enums),types:In(e.types)}}function In(e){let t={};for(let{name:r,...n}of e)t[r]=n;return t}f();u();c();p();m();function Xe(e){return e instanceof Date||Object.prototype.toString.call(e)==="[object Date]"}function Er(e){return e.toString()!=="Invalid Date"}f();u();c();p();m();f();u();c();p();m();var et=9e15,Me=1e9,On="0123456789abcdef",Pr="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",vr="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",kn={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-et,maxE:et,crypto:!1},po,ve,_=!0,Ar="[DecimalError] ",De=Ar+"Invalid argument: ",mo=Ar+"Precision limit exceeded",fo=Ar+"crypto unavailable",go="[object Decimal]",ee=Math.floor,K=Math.pow,Bl=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,ql=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,Vl=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,ho=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,pe=1e7,D=7,$l=9007199254740991,jl=Pr.length-1,Dn=vr.length-1,R={toStringTag:go};R.absoluteValue=R.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),k(e)};R.ceil=function(){return k(new this.constructor(this),this.e+1,2)};R.clampedTo=R.clamp=function(e,t){var r,n=this,i=n.constructor;if(e=new i(e),t=new i(t),!e.s||!t.s)return new i(NaN);if(e.gt(t))throw Error(De+t);return r=n.cmp(e),r<0?e:n.cmp(t)>0?t:new i(n)};R.comparedTo=R.cmp=function(e){var t,r,n,i,o=this,s=o.d,a=(e=new o.constructor(e)).d,l=o.s,d=e.s;if(!s||!a)return!l||!d?NaN:l!==d?l:s===a?0:!s^l<0?1:-1;if(!s[0]||!a[0])return s[0]?l:a[0]?-d:0;if(l!==d)return l;if(o.e!==e.e)return o.e>e.e^l<0?1:-1;for(n=s.length,i=a.length,t=0,r=na[t]^l<0?1:-1;return n===i?0:n>i^l<0?1:-1};R.cosine=R.cos=function(){var e,t,r=this,n=r.constructor;return r.d?r.d[0]?(e=n.precision,t=n.rounding,n.precision=e+Math.max(r.e,r.sd())+D,n.rounding=1,r=Gl(n,xo(n,r)),n.precision=e,n.rounding=t,k(ve==2||ve==3?r.neg():r,e,t,!0)):new n(1):new n(NaN)};R.cubeRoot=R.cbrt=function(){var e,t,r,n,i,o,s,a,l,d,g=this,h=g.constructor;if(!g.isFinite()||g.isZero())return new h(g);for(_=!1,o=g.s*K(g.s*g,1/3),!o||Math.abs(o)==1/0?(r=Y(g.d),e=g.e,(o=(e-r.length+1)%3)&&(r+=o==1||o==-2?"0":"00"),o=K(r,1/3),e=ee((e+1)/3)-(e%3==(e<0?-1:2)),o==1/0?r="5e"+e:(r=o.toExponential(),r=r.slice(0,r.indexOf("e")+1)+e),n=new h(r),n.s=g.s):n=new h(o.toString()),s=(e=h.precision)+3;;)if(a=n,l=a.times(a).times(a),d=l.plus(g),n=V(d.plus(g).times(a),d.plus(l),s+2,1),Y(a.d).slice(0,s)===(r=Y(n.d)).slice(0,s))if(r=r.slice(s-3,s+1),r=="9999"||!i&&r=="4999"){if(!i&&(k(a,e+1,0),a.times(a).times(a).eq(g))){n=a;break}s+=4,i=1}else{(!+r||!+r.slice(1)&&r.charAt(0)=="5")&&(k(n,e+1,1),t=!n.times(n).times(n).eq(g));break}return _=!0,k(n,e,h.rounding,t)};R.decimalPlaces=R.dp=function(){var e,t=this.d,r=NaN;if(t){if(e=t.length-1,r=(e-ee(this.e/D))*D,e=t[e],e)for(;e%10==0;e/=10)r--;r<0&&(r=0)}return r};R.dividedBy=R.div=function(e){return V(this,new this.constructor(e))};R.dividedToIntegerBy=R.divToInt=function(e){var t=this,r=t.constructor;return k(V(t,new r(e),0,1,1),r.precision,r.rounding)};R.equals=R.eq=function(e){return this.cmp(e)===0};R.floor=function(){return k(new this.constructor(this),this.e+1,3)};R.greaterThan=R.gt=function(e){return this.cmp(e)>0};R.greaterThanOrEqualTo=R.gte=function(e){var t=this.cmp(e);return t==1||t===0};R.hyperbolicCosine=R.cosh=function(){var e,t,r,n,i,o=this,s=o.constructor,a=new s(1);if(!o.isFinite())return new s(o.s?1/0:NaN);if(o.isZero())return a;r=s.precision,n=s.rounding,s.precision=r+Math.max(o.e,o.sd())+4,s.rounding=1,i=o.d.length,i<32?(e=Math.ceil(i/3),t=(1/Cr(4,e)).toString()):(e=16,t="2.3283064365386962890625e-10"),o=tt(s,1,o.times(t),new s(1),!0);for(var l,d=e,g=new s(8);d--;)l=o.times(o),o=a.minus(l.times(g.minus(l.times(g))));return k(o,s.precision=r,s.rounding=n,!0)};R.hyperbolicSine=R.sinh=function(){var e,t,r,n,i=this,o=i.constructor;if(!i.isFinite()||i.isZero())return new o(i);if(t=o.precision,r=o.rounding,o.precision=t+Math.max(i.e,i.sd())+4,o.rounding=1,n=i.d.length,n<3)i=tt(o,2,i,i,!0);else{e=1.4*Math.sqrt(n),e=e>16?16:e|0,i=i.times(1/Cr(5,e)),i=tt(o,2,i,i,!0);for(var s,a=new o(5),l=new o(16),d=new o(20);e--;)s=i.times(i),i=i.times(a.plus(s.times(l.times(s).plus(d))))}return o.precision=t,o.rounding=r,k(i,t,r,!0)};R.hyperbolicTangent=R.tanh=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+7,n.rounding=1,V(r.sinh(),r.cosh(),n.precision=e,n.rounding=t)):new n(r.s)};R.inverseCosine=R.acos=function(){var e=this,t=e.constructor,r=e.abs().cmp(1),n=t.precision,i=t.rounding;return r!==-1?r===0?e.isNeg()?he(t,n,i):new t(0):new t(NaN):e.isZero()?he(t,n+4,i).times(.5):(t.precision=n+6,t.rounding=1,e=new t(1).minus(e).div(e.plus(1)).sqrt().atan(),t.precision=n,t.rounding=i,e.times(2))};R.inverseHyperbolicCosine=R.acosh=function(){var e,t,r=this,n=r.constructor;return r.lte(1)?new n(r.eq(1)?0:NaN):r.isFinite()?(e=n.precision,t=n.rounding,n.precision=e+Math.max(Math.abs(r.e),r.sd())+4,n.rounding=1,_=!1,r=r.times(r).minus(1).sqrt().plus(r),_=!0,n.precision=e,n.rounding=t,r.ln()):new n(r)};R.inverseHyperbolicSine=R.asinh=function(){var e,t,r=this,n=r.constructor;return!r.isFinite()||r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+2*Math.max(Math.abs(r.e),r.sd())+6,n.rounding=1,_=!1,r=r.times(r).plus(1).sqrt().plus(r),_=!0,n.precision=e,n.rounding=t,r.ln())};R.inverseHyperbolicTangent=R.atanh=function(){var e,t,r,n,i=this,o=i.constructor;return i.isFinite()?i.e>=0?new o(i.abs().eq(1)?i.s/0:i.isZero()?i:NaN):(e=o.precision,t=o.rounding,n=i.sd(),Math.max(n,e)<2*-i.e-1?k(new o(i),e,t,!0):(o.precision=r=n-i.e,i=V(i.plus(1),new o(1).minus(i),r+e,1),o.precision=e+4,o.rounding=1,i=i.ln(),o.precision=e,o.rounding=t,i.times(.5))):new o(NaN)};R.inverseSine=R.asin=function(){var e,t,r,n,i=this,o=i.constructor;return i.isZero()?new o(i):(t=i.abs().cmp(1),r=o.precision,n=o.rounding,t!==-1?t===0?(e=he(o,r+4,n).times(.5),e.s=i.s,e):new o(NaN):(o.precision=r+6,o.rounding=1,i=i.div(new o(1).minus(i.times(i)).sqrt().plus(1)).atan(),o.precision=r,o.rounding=n,i.times(2)))};R.inverseTangent=R.atan=function(){var e,t,r,n,i,o,s,a,l,d=this,g=d.constructor,h=g.precision,T=g.rounding;if(d.isFinite()){if(d.isZero())return new g(d);if(d.abs().eq(1)&&h+4<=Dn)return s=he(g,h+4,T).times(.25),s.s=d.s,s}else{if(!d.s)return new g(NaN);if(h+4<=Dn)return s=he(g,h+4,T).times(.5),s.s=d.s,s}for(g.precision=a=h+10,g.rounding=1,r=Math.min(28,a/D+2|0),e=r;e;--e)d=d.div(d.times(d).plus(1).sqrt().plus(1));for(_=!1,t=Math.ceil(a/D),n=1,l=d.times(d),s=new g(d),i=d;e!==-1;)if(i=i.times(l),o=s.minus(i.div(n+=2)),i=i.times(l),s=o.plus(i.div(n+=2)),s.d[t]!==void 0)for(e=t;s.d[e]===o.d[e]&&e--;);return r&&(s=s.times(2<this.d.length-2};R.isNaN=function(){return!this.s};R.isNegative=R.isNeg=function(){return this.s<0};R.isPositive=R.isPos=function(){return this.s>0};R.isZero=function(){return!!this.d&&this.d[0]===0};R.lessThan=R.lt=function(e){return this.cmp(e)<0};R.lessThanOrEqualTo=R.lte=function(e){return this.cmp(e)<1};R.logarithm=R.log=function(e){var t,r,n,i,o,s,a,l,d=this,g=d.constructor,h=g.precision,T=g.rounding,I=5;if(e==null)e=new g(10),t=!0;else{if(e=new g(e),r=e.d,e.s<0||!r||!r[0]||e.eq(1))return new g(NaN);t=e.eq(10)}if(r=d.d,d.s<0||!r||!r[0]||d.eq(1))return new g(r&&!r[0]?-1/0:d.s!=1?NaN:r?0:1/0);if(t)if(r.length>1)o=!0;else{for(i=r[0];i%10===0;)i/=10;o=i!==1}if(_=!1,a=h+I,s=ke(d,a),n=t?Tr(g,a+10):ke(e,a),l=V(s,n,a,1),Ot(l.d,i=h,T))do if(a+=10,s=ke(d,a),n=t?Tr(g,a+10):ke(e,a),l=V(s,n,a,1),!o){+Y(l.d).slice(i+1,i+15)+1==1e14&&(l=k(l,h+1,0));break}while(Ot(l.d,i+=10,T));return _=!0,k(l,h,T)};R.minus=R.sub=function(e){var t,r,n,i,o,s,a,l,d,g,h,T,I=this,S=I.constructor;if(e=new S(e),!I.d||!e.d)return!I.s||!e.s?e=new S(NaN):I.d?e.s=-e.s:e=new S(e.d||I.s!==e.s?I:NaN),e;if(I.s!=e.s)return e.s=-e.s,I.plus(e);if(d=I.d,T=e.d,a=S.precision,l=S.rounding,!d[0]||!T[0]){if(T[0])e.s=-e.s;else if(d[0])e=new S(I);else return new S(l===3?-0:0);return _?k(e,a,l):e}if(r=ee(e.e/D),g=ee(I.e/D),d=d.slice(),o=g-r,o){for(h=o<0,h?(t=d,o=-o,s=T.length):(t=T,r=g,s=d.length),n=Math.max(Math.ceil(a/D),s)+2,o>n&&(o=n,t.length=1),t.reverse(),n=o;n--;)t.push(0);t.reverse()}else{for(n=d.length,s=T.length,h=n0;--n)d[s++]=0;for(n=T.length;n>o;){if(d[--n]s?o+1:s+1,i>s&&(i=s,r.length=1),r.reverse();i--;)r.push(0);r.reverse()}for(s=d.length,i=g.length,s-i<0&&(i=s,r=g,g=d,d=r),t=0;i;)t=(d[--i]=d[i]+g[i]+t)/pe|0,d[i]%=pe;for(t&&(d.unshift(t),++n),s=d.length;d[--s]==0;)d.pop();return e.d=d,e.e=Rr(d,n),_?k(e,a,l):e};R.precision=R.sd=function(e){var t,r=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(De+e);return r.d?(t=yo(r.d),e&&r.e+1>t&&(t=r.e+1)):t=NaN,t};R.round=function(){var e=this,t=e.constructor;return k(new t(e),e.e+1,t.rounding)};R.sine=R.sin=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+Math.max(r.e,r.sd())+D,n.rounding=1,r=Ql(n,xo(n,r)),n.precision=e,n.rounding=t,k(ve>2?r.neg():r,e,t,!0)):new n(NaN)};R.squareRoot=R.sqrt=function(){var e,t,r,n,i,o,s=this,a=s.d,l=s.e,d=s.s,g=s.constructor;if(d!==1||!a||!a[0])return new g(!d||d<0&&(!a||a[0])?NaN:a?s:1/0);for(_=!1,d=Math.sqrt(+s),d==0||d==1/0?(t=Y(a),(t.length+l)%2==0&&(t+="0"),d=Math.sqrt(t),l=ee((l+1)/2)-(l<0||l%2),d==1/0?t="5e"+l:(t=d.toExponential(),t=t.slice(0,t.indexOf("e")+1)+l),n=new g(t)):n=new g(d.toString()),r=(l=g.precision)+3;;)if(o=n,n=o.plus(V(s,o,r+2,1)).times(.5),Y(o.d).slice(0,r)===(t=Y(n.d)).slice(0,r))if(t=t.slice(r-3,r+1),t=="9999"||!i&&t=="4999"){if(!i&&(k(o,l+1,0),o.times(o).eq(s))){n=o;break}r+=4,i=1}else{(!+t||!+t.slice(1)&&t.charAt(0)=="5")&&(k(n,l+1,1),e=!n.times(n).eq(s));break}return _=!0,k(n,l,g.rounding,e)};R.tangent=R.tan=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+10,n.rounding=1,r=r.sin(),r.s=1,r=V(r,new n(1).minus(r.times(r)).sqrt(),e+10,0),n.precision=e,n.rounding=t,k(ve==2||ve==4?r.neg():r,e,t,!0)):new n(NaN)};R.times=R.mul=function(e){var t,r,n,i,o,s,a,l,d,g=this,h=g.constructor,T=g.d,I=(e=new h(e)).d;if(e.s*=g.s,!T||!T[0]||!I||!I[0])return new h(!e.s||T&&!T[0]&&!I||I&&!I[0]&&!T?NaN:!T||!I?e.s/0:e.s*0);for(r=ee(g.e/D)+ee(e.e/D),l=T.length,d=I.length,l=0;){for(t=0,i=l+n;i>n;)a=o[i]+I[n]*T[i-n-1]+t,o[i--]=a%pe|0,t=a/pe|0;o[i]=(o[i]+t)%pe|0}for(;!o[--s];)o.pop();return t?++r:o.shift(),e.d=o,e.e=Rr(o,r),_?k(e,h.precision,h.rounding):e};R.toBinary=function(e,t){return _n(this,2,e,t)};R.toDecimalPlaces=R.toDP=function(e,t){var r=this,n=r.constructor;return r=new n(r),e===void 0?r:(oe(e,0,Me),t===void 0?t=n.rounding:oe(t,0,8),k(r,e+r.e+1,t))};R.toExponential=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=ye(n,!0):(oe(e,0,Me),t===void 0?t=i.rounding:oe(t,0,8),n=k(new i(n),e+1,t),r=ye(n,!0,e+1)),n.isNeg()&&!n.isZero()?"-"+r:r};R.toFixed=function(e,t){var r,n,i=this,o=i.constructor;return e===void 0?r=ye(i):(oe(e,0,Me),t===void 0?t=o.rounding:oe(t,0,8),n=k(new o(i),e+i.e+1,t),r=ye(n,!1,e+n.e+1)),i.isNeg()&&!i.isZero()?"-"+r:r};R.toFraction=function(e){var t,r,n,i,o,s,a,l,d,g,h,T,I=this,S=I.d,C=I.constructor;if(!S)return new C(I);if(d=r=new C(1),n=l=new C(0),t=new C(n),o=t.e=yo(S)-I.e-1,s=o%D,t.d[0]=K(10,s<0?D+s:s),e==null)e=o>0?t:d;else{if(a=new C(e),!a.isInt()||a.lt(d))throw Error(De+a);e=a.gt(t)?o>0?t:d:a}for(_=!1,a=new C(Y(S)),g=C.precision,C.precision=o=S.length*D*2;h=V(a,t,0,1,1),i=r.plus(h.times(n)),i.cmp(e)!=1;)r=n,n=i,i=d,d=l.plus(h.times(i)),l=i,i=t,t=a.minus(h.times(i)),a=i;return i=V(e.minus(r),n,0,1,1),l=l.plus(i.times(d)),r=r.plus(i.times(n)),l.s=d.s=I.s,T=V(d,n,o,1).minus(I).abs().cmp(V(l,r,o,1).minus(I).abs())<1?[d,n]:[l,r],C.precision=g,_=!0,T};R.toHexadecimal=R.toHex=function(e,t){return _n(this,16,e,t)};R.toNearest=function(e,t){var r=this,n=r.constructor;if(r=new n(r),e==null){if(!r.d)return r;e=new n(1),t=n.rounding}else{if(e=new n(e),t===void 0?t=n.rounding:oe(t,0,8),!r.d)return e.s?r:e;if(!e.d)return e.s&&(e.s=r.s),e}return e.d[0]?(_=!1,r=V(r,e,0,t,1).times(e),_=!0,k(r)):(e.s=r.s,r=e),r};R.toNumber=function(){return+this};R.toOctal=function(e,t){return _n(this,8,e,t)};R.toPower=R.pow=function(e){var t,r,n,i,o,s,a=this,l=a.constructor,d=+(e=new l(e));if(!a.d||!e.d||!a.d[0]||!e.d[0])return new l(K(+a,d));if(a=new l(a),a.eq(1))return a;if(n=l.precision,o=l.rounding,e.eq(1))return k(a,n,o);if(t=ee(e.e/D),t>=e.d.length-1&&(r=d<0?-d:d)<=$l)return i=wo(l,a,r,n),e.s<0?new l(1).div(i):k(i,n,o);if(s=a.s,s<0){if(tl.maxE+1||t0?s/0:0):(_=!1,l.rounding=a.s=1,r=Math.min(12,(t+"").length),i=Mn(e.times(ke(a,n+r)),n),i.d&&(i=k(i,n+5,1),Ot(i.d,n,o)&&(t=n+10,i=k(Mn(e.times(ke(a,t+r)),t),t+5,1),+Y(i.d).slice(n+1,n+15)+1==1e14&&(i=k(i,n+1,0)))),i.s=s,_=!0,l.rounding=o,k(i,n,o))};R.toPrecision=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=ye(n,n.e<=i.toExpNeg||n.e>=i.toExpPos):(oe(e,1,Me),t===void 0?t=i.rounding:oe(t,0,8),n=k(new i(n),e,t),r=ye(n,e<=n.e||n.e<=i.toExpNeg,e)),n.isNeg()&&!n.isZero()?"-"+r:r};R.toSignificantDigits=R.toSD=function(e,t){var r=this,n=r.constructor;return e===void 0?(e=n.precision,t=n.rounding):(oe(e,1,Me),t===void 0?t=n.rounding:oe(t,0,8)),k(new n(r),e,t)};R.toString=function(){var e=this,t=e.constructor,r=ye(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()&&!e.isZero()?"-"+r:r};R.truncated=R.trunc=function(){return k(new this.constructor(this),this.e+1,1)};R.valueOf=R.toJSON=function(){var e=this,t=e.constructor,r=ye(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()?"-"+r:r};function Y(e){var t,r,n,i=e.length-1,o="",s=e[0];if(i>0){for(o+=s,t=1;tr)throw Error(De+e)}function Ot(e,t,r,n){var i,o,s,a;for(o=e[0];o>=10;o/=10)--t;return--t<0?(t+=D,i=0):(i=Math.ceil((t+1)/D),t%=D),o=K(10,D-t),a=e[i]%o|0,n==null?t<3?(t==0?a=a/100|0:t==1&&(a=a/10|0),s=r<4&&a==99999||r>3&&a==49999||a==5e4||a==0):s=(r<4&&a+1==o||r>3&&a+1==o/2)&&(e[i+1]/o/100|0)==K(10,t-2)-1||(a==o/2||a==0)&&(e[i+1]/o/100|0)==0:t<4?(t==0?a=a/1e3|0:t==1?a=a/100|0:t==2&&(a=a/10|0),s=(n||r<4)&&a==9999||!n&&r>3&&a==4999):s=((n||r<4)&&a+1==o||!n&&r>3&&a+1==o/2)&&(e[i+1]/o/1e3|0)==K(10,t-3)-1,s}function br(e,t,r){for(var n,i=[0],o,s=0,a=e.length;sr-1&&(i[n+1]===void 0&&(i[n+1]=0),i[n+1]+=i[n]/r|0,i[n]%=r)}return i.reverse()}function Gl(e,t){var r,n,i;if(t.isZero())return t;n=t.d.length,n<32?(r=Math.ceil(n/3),i=(1/Cr(4,r)).toString()):(r=16,i="2.3283064365386962890625e-10"),e.precision+=r,t=tt(e,1,t.times(i),new e(1));for(var o=r;o--;){var s=t.times(t);t=s.times(s).minus(s).times(8).plus(1)}return e.precision-=r,t}var V=function(){function e(n,i,o){var s,a=0,l=n.length;for(n=n.slice();l--;)s=n[l]*i+a,n[l]=s%o|0,a=s/o|0;return a&&n.unshift(a),n}function t(n,i,o,s){var a,l;if(o!=s)l=o>s?1:-1;else for(a=l=0;ai[a]?1:-1;break}return l}function r(n,i,o,s){for(var a=0;o--;)n[o]-=a,a=n[o]1;)n.shift()}return function(n,i,o,s,a,l){var d,g,h,T,I,S,C,M,F,B,O,L,le,J,sn,or,Pt,an,ce,sr,ar=n.constructor,ln=n.s==i.s?1:-1,Z=n.d,$=i.d;if(!Z||!Z[0]||!$||!$[0])return new ar(!n.s||!i.s||(Z?$&&Z[0]==$[0]:!$)?NaN:Z&&Z[0]==0||!$?ln*0:ln/0);for(l?(I=1,g=n.e-i.e):(l=pe,I=D,g=ee(n.e/I)-ee(i.e/I)),ce=$.length,Pt=Z.length,F=new ar(ln),B=F.d=[],h=0;$[h]==(Z[h]||0);h++);if($[h]>(Z[h]||0)&&g--,o==null?(J=o=ar.precision,s=ar.rounding):a?J=o+(n.e-i.e)+1:J=o,J<0)B.push(1),S=!0;else{if(J=J/I+2|0,h=0,ce==1){for(T=0,$=$[0],J++;(h1&&($=e($,T,l),Z=e(Z,T,l),ce=$.length,Pt=Z.length),or=ce,O=Z.slice(0,ce),L=O.length;L=l/2&&++an;do T=0,d=t($,O,ce,L),d<0?(le=O[0],ce!=L&&(le=le*l+(O[1]||0)),T=le/an|0,T>1?(T>=l&&(T=l-1),C=e($,T,l),M=C.length,L=O.length,d=t(C,O,M,L),d==1&&(T--,r(C,ce=10;T/=10)h++;F.e=h+g*I-1,k(F,a?o+F.e+1:o,s,S)}return F}}();function k(e,t,r,n){var i,o,s,a,l,d,g,h,T,I=e.constructor;e:if(t!=null){if(h=e.d,!h)return e;for(i=1,a=h[0];a>=10;a/=10)i++;if(o=t-i,o<0)o+=D,s=t,g=h[T=0],l=g/K(10,i-s-1)%10|0;else if(T=Math.ceil((o+1)/D),a=h.length,T>=a)if(n){for(;a++<=T;)h.push(0);g=l=0,i=1,o%=D,s=o-D+1}else break e;else{for(g=a=h[T],i=1;a>=10;a/=10)i++;o%=D,s=o-D+i,l=s<0?0:g/K(10,i-s-1)%10|0}if(n=n||t<0||h[T+1]!==void 0||(s<0?g:g%K(10,i-s-1)),d=r<4?(l||n)&&(r==0||r==(e.s<0?3:2)):l>5||l==5&&(r==4||n||r==6&&(o>0?s>0?g/K(10,i-s):0:h[T-1])%10&1||r==(e.s<0?8:7)),t<1||!h[0])return h.length=0,d?(t-=e.e+1,h[0]=K(10,(D-t%D)%D),e.e=-t||0):h[0]=e.e=0,e;if(o==0?(h.length=T,a=1,T--):(h.length=T+1,a=K(10,D-o),h[T]=s>0?(g/K(10,i-s)%K(10,s)|0)*a:0),d)for(;;)if(T==0){for(o=1,s=h[0];s>=10;s/=10)o++;for(s=h[0]+=a,a=1;s>=10;s/=10)a++;o!=a&&(e.e++,h[0]==pe&&(h[0]=1));break}else{if(h[T]+=a,h[T]!=pe)break;h[T--]=0,a=1}for(o=h.length;h[--o]===0;)h.pop()}return _&&(e.e>I.maxE?(e.d=null,e.e=NaN):e.e0?o=o.charAt(0)+"."+o.slice(1)+Oe(n):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(e.e<0?"e":"e+")+e.e):i<0?(o="0."+Oe(-i-1)+o,r&&(n=r-s)>0&&(o+=Oe(n))):i>=s?(o+=Oe(i+1-s),r&&(n=r-i-1)>0&&(o=o+"."+Oe(n))):((n=i+1)0&&(i+1===s&&(o+="."),o+=Oe(n))),o}function Rr(e,t){var r=e[0];for(t*=D;r>=10;r/=10)t++;return t}function Tr(e,t,r){if(t>jl)throw _=!0,r&&(e.precision=r),Error(mo);return k(new e(Pr),t,1,!0)}function he(e,t,r){if(t>Dn)throw Error(mo);return k(new e(vr),t,r,!0)}function yo(e){var t=e.length-1,r=t*D+1;if(t=e[t],t){for(;t%10==0;t/=10)r--;for(t=e[0];t>=10;t/=10)r++}return r}function Oe(e){for(var t="";e--;)t+="0";return t}function wo(e,t,r,n){var i,o=new e(1),s=Math.ceil(n/D+4);for(_=!1;;){if(r%2&&(o=o.times(t),uo(o.d,s)&&(i=!0)),r=ee(r/2),r===0){r=o.d.length-1,i&&o.d[r]===0&&++o.d[r];break}t=t.times(t),uo(t.d,s)}return _=!0,o}function lo(e){return e.d[e.d.length-1]&1}function Eo(e,t,r){for(var n,i,o=new e(t[0]),s=0;++s17)return new T(e.d?e.d[0]?e.s<0?0:1/0:1:e.s?e.s<0?0:e:NaN);for(t==null?(_=!1,l=S):l=t,a=new T(.03125);e.e>-2;)e=e.times(a),h+=5;for(n=Math.log(K(2,h))/Math.LN10*2+5|0,l+=n,r=o=s=new T(1),T.precision=l;;){if(o=k(o.times(e),l,1),r=r.times(++g),a=s.plus(V(o,r,l,1)),Y(a.d).slice(0,l)===Y(s.d).slice(0,l)){for(i=h;i--;)s=k(s.times(s),l,1);if(t==null)if(d<3&&Ot(s.d,l-n,I,d))T.precision=l+=10,r=o=a=new T(1),g=0,d++;else return k(s,T.precision=S,I,_=!0);else return T.precision=S,s}s=a}}function ke(e,t){var r,n,i,o,s,a,l,d,g,h,T,I=1,S=10,C=e,M=C.d,F=C.constructor,B=F.rounding,O=F.precision;if(C.s<0||!M||!M[0]||!C.e&&M[0]==1&&M.length==1)return new F(M&&!M[0]?-1/0:C.s!=1?NaN:M?0:C);if(t==null?(_=!1,g=O):g=t,F.precision=g+=S,r=Y(M),n=r.charAt(0),Math.abs(o=C.e)<15e14){for(;n<7&&n!=1||n==1&&r.charAt(1)>3;)C=C.times(e),r=Y(C.d),n=r.charAt(0),I++;o=C.e,n>1?(C=new F("0."+r),o++):C=new F(n+"."+r.slice(1))}else return d=Tr(F,g+2,O).times(o+""),C=ke(new F(n+"."+r.slice(1)),g-S).plus(d),F.precision=O,t==null?k(C,O,B,_=!0):C;for(h=C,l=s=C=V(C.minus(1),C.plus(1),g,1),T=k(C.times(C),g,1),i=3;;){if(s=k(s.times(T),g,1),d=l.plus(V(s,new F(i),g,1)),Y(d.d).slice(0,g)===Y(l.d).slice(0,g))if(l=l.times(2),o!==0&&(l=l.plus(Tr(F,g+2,O).times(o+""))),l=V(l,new F(I),g,1),t==null)if(Ot(l.d,g-S,B,a))F.precision=g+=S,d=s=C=V(h.minus(1),h.plus(1),g,1),T=k(C.times(C),g,1),i=a=1;else return k(l,F.precision=O,B,_=!0);else return F.precision=O,l;l=d,i+=2}}function bo(e){return String(e.s*e.s/0)}function xr(e,t){var r,n,i;for((r=t.indexOf("."))>-1&&(t=t.replace(".","")),(n=t.search(/e/i))>0?(r<0&&(r=n),r+=+t.slice(n+1),t=t.substring(0,n)):r<0&&(r=t.length),n=0;t.charCodeAt(n)===48;n++);for(i=t.length;t.charCodeAt(i-1)===48;--i);if(t=t.slice(n,i),t){if(i-=n,e.e=r=r-n-1,e.d=[],n=(r+1)%D,r<0&&(n+=D),ne.constructor.maxE?(e.d=null,e.e=NaN):e.e-1){if(t=t.replace(/(\d)_(?=\d)/g,"$1"),ho.test(t))return xr(e,t)}else if(t==="Infinity"||t==="NaN")return+t||(e.s=NaN),e.e=NaN,e.d=null,e;if(ql.test(t))r=16,t=t.toLowerCase();else if(Bl.test(t))r=2;else if(Vl.test(t))r=8;else throw Error(De+t);for(o=t.search(/p/i),o>0?(l=+t.slice(o+1),t=t.substring(2,o)):t=t.slice(2),o=t.indexOf("."),s=o>=0,n=e.constructor,s&&(t=t.replace(".",""),a=t.length,o=a-o,i=wo(n,new n(r),o,o*2)),d=br(t,r,pe),g=d.length-1,o=g;d[o]===0;--o)d.pop();return o<0?new n(e.s*0):(e.e=Rr(d,g),e.d=d,_=!1,s&&(e=V(e,i,a*4)),l&&(e=e.times(Math.abs(l)<54?K(2,l):Te.pow(2,l))),_=!0,e)}function Ql(e,t){var r,n=t.d.length;if(n<3)return t.isZero()?t:tt(e,2,t,t);r=1.4*Math.sqrt(n),r=r>16?16:r|0,t=t.times(1/Cr(5,r)),t=tt(e,2,t,t);for(var i,o=new e(5),s=new e(16),a=new e(20);r--;)i=t.times(t),t=t.times(o.plus(i.times(s.times(i).minus(a))));return t}function tt(e,t,r,n,i){var o,s,a,l,d=1,g=e.precision,h=Math.ceil(g/D);for(_=!1,l=r.times(r),a=new e(n);;){if(s=V(a.times(l),new e(t++*t++),g,1),a=i?n.plus(s):n.minus(s),n=V(s.times(l),new e(t++*t++),g,1),s=a.plus(n),s.d[h]!==void 0){for(o=h;s.d[o]===a.d[o]&&o--;);if(o==-1)break}o=a,a=n,n=s,s=o,d++}return _=!0,s.d.length=h+1,s}function Cr(e,t){for(var r=e;--t;)r*=e;return r}function xo(e,t){var r,n=t.s<0,i=he(e,e.precision,1),o=i.times(.5);if(t=t.abs(),t.lte(o))return ve=n?4:1,t;if(r=t.divToInt(i),r.isZero())ve=n?3:2;else{if(t=t.minus(r.times(i)),t.lte(o))return ve=lo(r)?n?2:3:n?4:1,t;ve=lo(r)?n?1:4:n?3:2}return t.minus(i).abs()}function _n(e,t,r,n){var i,o,s,a,l,d,g,h,T,I=e.constructor,S=r!==void 0;if(S?(oe(r,1,Me),n===void 0?n=I.rounding:oe(n,0,8)):(r=I.precision,n=I.rounding),!e.isFinite())g=bo(e);else{for(g=ye(e),s=g.indexOf("."),S?(i=2,t==16?r=r*4-3:t==8&&(r=r*3-2)):i=t,s>=0&&(g=g.replace(".",""),T=new I(1),T.e=g.length-s,T.d=br(ye(T),10,i),T.e=T.d.length),h=br(g,10,i),o=l=h.length;h[--l]==0;)h.pop();if(!h[0])g=S?"0p+0":"0";else{if(s<0?o--:(e=new I(e),e.d=h,e.e=o,e=V(e,T,r,n,0,i),h=e.d,o=e.e,d=po),s=h[r],a=i/2,d=d||h[r+1]!==void 0,d=n<4?(s!==void 0||d)&&(n===0||n===(e.s<0?3:2)):s>a||s===a&&(n===4||d||n===6&&h[r-1]&1||n===(e.s<0?8:7)),h.length=r,d)for(;++h[--r]>i-1;)h[r]=0,r||(++o,h.unshift(1));for(l=h.length;!h[l-1];--l);for(s=0,g="";s1)if(t==16||t==8){for(s=t==16?4:3,--l;l%s;l++)g+="0";for(h=br(g,i,t),l=h.length;!h[l-1];--l);for(s=1,g="1.";sl)for(o-=l;o--;)g+="0";else ot)return e.length=t,!0}function Kl(e){return new this(e).abs()}function Wl(e){return new this(e).acos()}function Hl(e){return new this(e).acosh()}function zl(e,t){return new this(e).plus(t)}function Yl(e){return new this(e).asin()}function Zl(e){return new this(e).asinh()}function Xl(e){return new this(e).atan()}function eu(e){return new this(e).atanh()}function tu(e,t){e=new this(e),t=new this(t);var r,n=this.precision,i=this.rounding,o=n+4;return!e.s||!t.s?r=new this(NaN):!e.d&&!t.d?(r=he(this,o,1).times(t.s>0?.25:.75),r.s=e.s):!t.d||e.isZero()?(r=t.s<0?he(this,n,i):new this(0),r.s=e.s):!e.d||t.isZero()?(r=he(this,o,1).times(.5),r.s=e.s):t.s<0?(this.precision=o,this.rounding=1,r=this.atan(V(e,t,o,1)),t=he(this,o,1),this.precision=n,this.rounding=i,r=e.s<0?r.minus(t):r.plus(t)):r=this.atan(V(e,t,o,1)),r}function ru(e){return new this(e).cbrt()}function nu(e){return k(e=new this(e),e.e+1,2)}function iu(e,t,r){return new this(e).clamp(t,r)}function ou(e){if(!e||typeof e!="object")throw Error(Ar+"Object expected");var t,r,n,i=e.defaults===!0,o=["precision",1,Me,"rounding",0,8,"toExpNeg",-et,0,"toExpPos",0,et,"maxE",0,et,"minE",-et,0,"modulo",0,9];for(t=0;t=o[t+1]&&n<=o[t+2])this[r]=n;else throw Error(De+r+": "+n);if(r="crypto",i&&(this[r]=kn[r]),(n=e[r])!==void 0)if(n===!0||n===!1||n===0||n===1)if(n)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))this[r]=!0;else throw Error(fo);else this[r]=!1;else throw Error(De+r+": "+n);return this}function su(e){return new this(e).cos()}function au(e){return new this(e).cosh()}function Po(e){var t,r,n;function i(o){var s,a,l,d=this;if(!(d instanceof i))return new i(o);if(d.constructor=i,co(o)){d.s=o.s,_?!o.d||o.e>i.maxE?(d.e=NaN,d.d=null):o.e=10;a/=10)s++;_?s>i.maxE?(d.e=NaN,d.d=null):s=429e7?t[o]=crypto.getRandomValues(new Uint32Array(1))[0]:a[o++]=i%1e7;else if(crypto.randomBytes){for(t=crypto.randomBytes(n*=4);o=214e7?crypto.randomBytes(4).copy(t,o):(a.push(i%1e7),o+=4);o=n/4}else throw Error(fo);else for(;o=10;i/=10)n++;nkt,datamodelEnumToSchemaEnum:()=>Du});f();u();c();p();m();f();u();c();p();m();function Du(e){return{name:e.name,values:e.values.map(t=>t.name)}}f();u();c();p();m();var kt=(O=>(O.findUnique="findUnique",O.findUniqueOrThrow="findUniqueOrThrow",O.findFirst="findFirst",O.findFirstOrThrow="findFirstOrThrow",O.findMany="findMany",O.create="create",O.createMany="createMany",O.createManyAndReturn="createManyAndReturn",O.update="update",O.updateMany="updateMany",O.updateManyAndReturn="updateManyAndReturn",O.upsert="upsert",O.delete="delete",O.deleteMany="deleteMany",O.groupBy="groupBy",O.count="count",O.aggregate="aggregate",O.findRaw="findRaw",O.aggregateRaw="aggregateRaw",O))(kt||{});var Mu=Qe(ro());var _u={red:Ye,gray:$i,dim:mr,bold:pr,underline:Li,highlightSource:e=>e.highlight()},Nu={red:e=>e,gray:e=>e,dim:e=>e,bold:e=>e,underline:e=>e,highlightSource:e=>e};function Fu({message:e,originalMethod:t,isPanic:r,callArguments:n}){return{functionName:`prisma.${t}()`,message:e,isPanic:r??!1,callArguments:n}}function Lu({functionName:e,location:t,message:r,isPanic:n,contextLines:i,callArguments:o},s){let a=[""],l=t?" in":":";if(n?(a.push(s.red(`Oops, an unknown error occurred! This is ${s.bold("on us")}, you did nothing wrong.`)),a.push(s.red(`It occurred in the ${s.bold(`\`${e}\``)} invocation${l}`))):a.push(s.red(`Invalid ${s.bold(`\`${e}\``)} invocation${l}`)),t&&a.push(s.underline(Uu(t))),i){a.push("");let d=[i.toString()];o&&(d.push(o),d.push(s.dim(")"))),a.push(d.join("")),o&&a.push("")}else a.push(""),o&&a.push(o),a.push("");return a.push(r),a.join(` +`)}function Uu(e){let t=[e.fileName];return e.lineNumber&&t.push(String(e.lineNumber)),e.columnNumber&&t.push(String(e.columnNumber)),t.join(":")}function Sr(e){let t=e.showColors?_u:Nu,r;return typeof $getTemplateParameters<"u"?r=$getTemplateParameters(e,t):r=Fu(e),Lu(r,t)}f();u();c();p();m();var ko=Qe(Nn());f();u();c();p();m();function Ro(e,t,r){let n=Co(e),i=Bu(n),o=Vu(i);o?Ir(o,t,r):t.addErrorMessage(()=>"Unknown error")}function Co(e){return e.errors.flatMap(t=>t.kind==="Union"?Co(t):[t])}function Bu(e){let t=new Map,r=[];for(let n of e){if(n.kind!=="InvalidArgumentType"){r.push(n);continue}let i=`${n.selectionPath.join(".")}:${n.argumentPath.join(".")}`,o=t.get(i);o?t.set(i,{...n,argument:{...n.argument,typeNames:qu(o.argument.typeNames,n.argument.typeNames)}}):t.set(i,n)}return r.push(...t.values()),r}function qu(e,t){return[...new Set(e.concat(t))]}function Vu(e){return Sn(e,(t,r)=>{let n=To(t),i=To(r);return n!==i?n-i:Ao(t)-Ao(r)})}function To(e){let t=0;return Array.isArray(e.selectionPath)&&(t+=e.selectionPath.length),Array.isArray(e.argumentPath)&&(t+=e.argumentPath.length),t}function Ao(e){switch(e.kind){case"InvalidArgumentValue":case"ValueTooLarge":return 20;case"InvalidArgumentType":return 10;case"RequiredArgumentMissing":return-10;default:return 0}}f();u();c();p();m();var ue=class{constructor(t,r){this.name=t;this.value=r}isRequired=!1;makeRequired(){return this.isRequired=!0,this}write(t){let{colors:{green:r}}=t.context;t.addMarginSymbol(r(this.isRequired?"+":"?")),t.write(r(this.name)),this.isRequired||t.write(r("?")),t.write(r(": ")),typeof this.value=="string"?t.write(r(this.value)):t.write(this.value)}};f();u();c();p();m();f();u();c();p();m();Io();f();u();c();p();m();var nt=class{constructor(t=0,r){this.context=r;this.currentIndent=t}lines=[];currentLine="";currentIndent=0;marginSymbol;afterNextNewLineCallback;write(t){return typeof t=="string"?this.currentLine+=t:t.write(this),this}writeJoined(t,r,n=(i,o)=>o.write(i)){let i=r.length-1;for(let o=0;o0&&this.currentIndent--,this}addMarginSymbol(t){return this.marginSymbol=t,this}toString(){return this.lines.concat(this.indentedCurrentLine()).join(` +`)}getCurrentLineLength(){return this.currentLine.length}indentedCurrentLine(){let t=this.currentLine.padStart(this.currentLine.length+2*this.currentIndent);return this.marginSymbol?this.marginSymbol+t.slice(1):t}};So();f();u();c();p();m();f();u();c();p();m();var Or=class{constructor(t){this.value=t}write(t){t.write(this.value)}markAsError(){this.value.markAsError()}};f();u();c();p();m();var kr=e=>e,Dr={bold:kr,red:kr,green:kr,dim:kr,enabled:!1},Oo={bold:pr,red:Ye,green:Ui,dim:mr,enabled:!0},it={write(e){e.writeLine(",")}};f();u();c();p();m();var we=class{constructor(t){this.contents=t}isUnderlined=!1;color=t=>t;underline(){return this.isUnderlined=!0,this}setColor(t){return this.color=t,this}write(t){let r=t.getCurrentLineLength();t.write(this.color(this.contents)),this.isUnderlined&&t.afterNextNewline(()=>{t.write(" ".repeat(r)).writeLine(this.color("~".repeat(this.contents.length)))})}};f();u();c();p();m();var _e=class{hasError=!1;markAsError(){return this.hasError=!0,this}};var ot=class extends _e{items=[];addItem(t){return this.items.push(new Or(t)),this}getField(t){return this.items[t]}getPrintWidth(){return this.items.length===0?2:Math.max(...this.items.map(r=>r.value.getPrintWidth()))+2}write(t){if(this.items.length===0){this.writeEmpty(t);return}this.writeWithItems(t)}writeEmpty(t){let r=new we("[]");this.hasError&&r.setColor(t.context.colors.red).underline(),t.write(r)}writeWithItems(t){let{colors:r}=t.context;t.writeLine("[").withIndent(()=>t.writeJoined(it,this.items).newLine()).write("]"),this.hasError&&t.afterNextNewline(()=>{t.writeLine(r.red("~".repeat(this.getPrintWidth())))})}asObject(){}};var st=class e extends _e{fields={};suggestions=[];addField(t){this.fields[t.name]=t}addSuggestion(t){this.suggestions.push(t)}getField(t){return this.fields[t]}getDeepField(t){let[r,...n]=t,i=this.getField(r);if(!i)return;let o=i;for(let s of n){let a;if(o.value instanceof e?a=o.value.getField(s):o.value instanceof ot&&(a=o.value.getField(Number(s))),!a)return;o=a}return o}getDeepFieldValue(t){return t.length===0?this:this.getDeepField(t)?.value}hasField(t){return!!this.getField(t)}removeAllFields(){this.fields={}}removeField(t){delete this.fields[t]}getFields(){return this.fields}isEmpty(){return Object.keys(this.fields).length===0}getFieldValue(t){return this.getField(t)?.value}getDeepSubSelectionValue(t){let r=this;for(let n of t){if(!(r instanceof e))return;let i=r.getSubSelectionValue(n);if(!i)return;r=i}return r}getDeepSelectionParent(t){let r=this.getSelectionParent();if(!r)return;let n=r;for(let i of t){let o=n.value.getFieldValue(i);if(!o||!(o instanceof e))return;let s=o.getSelectionParent();if(!s)return;n=s}return n}getSelectionParent(){let t=this.getField("select")?.value.asObject();if(t)return{kind:"select",value:t};let r=this.getField("include")?.value.asObject();if(r)return{kind:"include",value:r}}getSubSelectionValue(t){return this.getSelectionParent()?.value.fields[t].value}getPrintWidth(){let t=Object.values(this.fields);return t.length==0?2:Math.max(...t.map(n=>n.getPrintWidth()))+2}write(t){let r=Object.values(this.fields);if(r.length===0&&this.suggestions.length===0){this.writeEmpty(t);return}this.writeWithContents(t,r)}asObject(){return this}writeEmpty(t){let r=new we("{}");this.hasError&&r.setColor(t.context.colors.red).underline(),t.write(r)}writeWithContents(t,r){t.writeLine("{").withIndent(()=>{t.writeJoined(it,[...r,...this.suggestions]).newLine()}),t.write("}"),this.hasError&&t.afterNextNewline(()=>{t.writeLine(t.context.colors.red("~".repeat(this.getPrintWidth())))})}};f();u();c();p();m();var H=class extends _e{constructor(r){super();this.text=r}getPrintWidth(){return this.text.length}write(r){let n=new we(this.text);this.hasError&&n.underline().setColor(r.context.colors.red),r.write(n)}asObject(){}};f();u();c();p();m();var Mt=class{fields=[];addField(t,r){return this.fields.push({write(n){let{green:i,dim:o}=n.context.colors;n.write(i(o(`${t}: ${r}`))).addMarginSymbol(i(o("+")))}}),this}write(t){let{colors:{green:r}}=t.context;t.writeLine(r("{")).withIndent(()=>{t.writeJoined(it,this.fields).newLine()}).write(r("}")).addMarginSymbol(r("+"))}};function Ir(e,t,r){switch(e.kind){case"MutuallyExclusiveFields":$u(e,t);break;case"IncludeOnScalar":ju(e,t);break;case"EmptySelection":Gu(e,t,r);break;case"UnknownSelectionField":Wu(e,t);break;case"InvalidSelectionValue":Hu(e,t);break;case"UnknownArgument":zu(e,t);break;case"UnknownInputField":Yu(e,t);break;case"RequiredArgumentMissing":Zu(e,t);break;case"InvalidArgumentType":Xu(e,t);break;case"InvalidArgumentValue":ec(e,t);break;case"ValueTooLarge":tc(e,t);break;case"SomeFieldsMissing":rc(e,t);break;case"TooManyFieldsGiven":nc(e,t);break;case"Union":Ro(e,t,r);break;default:throw new Error("not implemented: "+e.kind)}}function $u(e,t){let r=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();r&&(r.getField(e.firstField)?.markAsError(),r.getField(e.secondField)?.markAsError()),t.addErrorMessage(n=>`Please ${n.bold("either")} use ${n.green(`\`${e.firstField}\``)} or ${n.green(`\`${e.secondField}\``)}, but ${n.red("not both")} at the same time.`)}function ju(e,t){let[r,n]=at(e.selectionPath),i=e.outputType,o=t.arguments.getDeepSelectionParent(r)?.value;if(o&&(o.getField(n)?.markAsError(),i))for(let s of i.fields)s.isRelation&&o.addSuggestion(new ue(s.name,"true"));t.addErrorMessage(s=>{let a=`Invalid scalar field ${s.red(`\`${n}\``)} for ${s.bold("include")} statement`;return i?a+=` on model ${s.bold(i.name)}. ${_t(s)}`:a+=".",a+=` +Note that ${s.bold("include")} statements only accept relation fields.`,a})}function Gu(e,t,r){let n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(n){let i=n.getField("omit")?.value.asObject();if(i){Ju(e,t,i);return}if(n.hasField("select")){Qu(e,t);return}}if(r?.[Ie(e.outputType.name)]){Ku(e,t);return}t.addErrorMessage(()=>`Unknown field at "${e.selectionPath.join(".")} selection"`)}function Ju(e,t,r){r.removeAllFields();for(let n of e.outputType.fields)r.addSuggestion(new ue(n.name,"false"));t.addErrorMessage(n=>`The ${n.red("omit")} statement includes every field of the model ${n.bold(e.outputType.name)}. At least one field must be included in the result`)}function Qu(e,t){let r=e.outputType,n=t.arguments.getDeepSelectionParent(e.selectionPath)?.value,i=n?.isEmpty()??!1;n&&(n.removeAllFields(),_o(n,r)),t.addErrorMessage(o=>i?`The ${o.red("`select`")} statement for type ${o.bold(r.name)} must not be empty. ${_t(o)}`:`The ${o.red("`select`")} statement for type ${o.bold(r.name)} needs ${o.bold("at least one truthy value")}.`)}function Ku(e,t){let r=new Mt;for(let i of e.outputType.fields)i.isRelation||r.addField(i.name,"false");let n=new ue("omit",r).makeRequired();if(e.selectionPath.length===0)t.arguments.addSuggestion(n);else{let[i,o]=at(e.selectionPath),a=t.arguments.getDeepSelectionParent(i)?.value.asObject()?.getField(o);if(a){let l=a?.value.asObject()??new st;l.addSuggestion(n),a.value=l}}t.addErrorMessage(i=>`The global ${i.red("omit")} configuration excludes every field of the model ${i.bold(e.outputType.name)}. At least one field must be included in the result`)}function Wu(e,t){let r=No(e.selectionPath,t);if(r.parentKind!=="unknown"){r.field.markAsError();let n=r.parent;switch(r.parentKind){case"select":_o(n,e.outputType);break;case"include":ic(n,e.outputType);break;case"omit":oc(n,e.outputType);break}}t.addErrorMessage(n=>{let i=[`Unknown field ${n.red(`\`${r.fieldName}\``)}`];return r.parentKind!=="unknown"&&i.push(`for ${n.bold(r.parentKind)} statement`),i.push(`on model ${n.bold(`\`${e.outputType.name}\``)}.`),i.push(_t(n)),i.join(" ")})}function Hu(e,t){let r=No(e.selectionPath,t);r.parentKind!=="unknown"&&r.field.value.markAsError(),t.addErrorMessage(n=>`Invalid value for selection field \`${n.red(r.fieldName)}\`: ${e.underlyingError}`)}function zu(e,t){let r=e.argumentPath[0],n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&(n.getField(r)?.markAsError(),sc(n,e.arguments)),t.addErrorMessage(i=>Do(i,r,e.arguments.map(o=>o.name)))}function Yu(e,t){let[r,n]=at(e.argumentPath),i=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(i){i.getDeepField(e.argumentPath)?.markAsError();let o=i.getDeepFieldValue(r)?.asObject();o&&Fo(o,e.inputType)}t.addErrorMessage(o=>Do(o,n,e.inputType.fields.map(s=>s.name)))}function Do(e,t,r){let n=[`Unknown argument \`${e.red(t)}\`.`],i=lc(t,r);return i&&n.push(`Did you mean \`${e.green(i)}\`?`),r.length>0&&n.push(_t(e)),n.join(" ")}function Zu(e,t){let r;t.addErrorMessage(l=>r?.value instanceof H&&r.value.text==="null"?`Argument \`${l.green(o)}\` must not be ${l.red("null")}.`:`Argument \`${l.green(o)}\` is missing.`);let n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(!n)return;let[i,o]=at(e.argumentPath),s=new Mt,a=n.getDeepFieldValue(i)?.asObject();if(a){if(r=a.getField(o),r&&a.removeField(o),e.inputTypes.length===1&&e.inputTypes[0].kind==="object"){for(let l of e.inputTypes[0].fields)s.addField(l.name,l.typeNames.join(" | "));a.addSuggestion(new ue(o,s).makeRequired())}else{let l=e.inputTypes.map(Mo).join(" | ");a.addSuggestion(new ue(o,l).makeRequired())}if(e.dependentArgumentPath){n.getDeepField(e.dependentArgumentPath)?.markAsError();let[,l]=at(e.dependentArgumentPath);t.addErrorMessage(d=>`Argument \`${d.green(o)}\` is required because argument \`${d.green(l)}\` was provided.`)}}}function Mo(e){return e.kind==="list"?`${Mo(e.elementType)}[]`:e.name}function Xu(e,t){let r=e.argument.name,n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&n.getDeepFieldValue(e.argumentPath)?.markAsError(),t.addErrorMessage(i=>{let o=Mr("or",e.argument.typeNames.map(s=>i.green(s)));return`Argument \`${i.bold(r)}\`: Invalid value provided. Expected ${o}, provided ${i.red(e.inferredType)}.`})}function ec(e,t){let r=e.argument.name,n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&n.getDeepFieldValue(e.argumentPath)?.markAsError(),t.addErrorMessage(i=>{let o=[`Invalid value for argument \`${i.bold(r)}\``];if(e.underlyingError&&o.push(`: ${e.underlyingError}`),o.push("."),e.argument.typeNames.length>0){let s=Mr("or",e.argument.typeNames.map(a=>i.green(a)));o.push(` Expected ${s}.`)}return o.join("")})}function tc(e,t){let r=e.argument.name,n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(),i;if(n){let s=n.getDeepField(e.argumentPath)?.value;s?.markAsError(),s instanceof H&&(i=s.text)}t.addErrorMessage(o=>{let s=["Unable to fit value"];return i&&s.push(o.red(i)),s.push(`into a 64-bit signed integer for field \`${o.bold(r)}\``),s.join(" ")})}function rc(e,t){let r=e.argumentPath[e.argumentPath.length-1],n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(n){let i=n.getDeepFieldValue(e.argumentPath)?.asObject();i&&Fo(i,e.inputType)}t.addErrorMessage(i=>{let o=[`Argument \`${i.bold(r)}\` of type ${i.bold(e.inputType.name)} needs`];return e.constraints.minFieldCount===1?e.constraints.requiredFields?o.push(`${i.green("at least one of")} ${Mr("or",e.constraints.requiredFields.map(s=>`\`${i.bold(s)}\``))} arguments.`):o.push(`${i.green("at least one")} argument.`):o.push(`${i.green(`at least ${e.constraints.minFieldCount}`)} arguments.`),o.push(_t(i)),o.join(" ")})}function nc(e,t){let r=e.argumentPath[e.argumentPath.length-1],n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(),i=[];if(n){let o=n.getDeepFieldValue(e.argumentPath)?.asObject();o&&(o.markAsError(),i=Object.keys(o.getFields()))}t.addErrorMessage(o=>{let s=[`Argument \`${o.bold(r)}\` of type ${o.bold(e.inputType.name)} needs`];return e.constraints.minFieldCount===1&&e.constraints.maxFieldCount==1?s.push(`${o.green("exactly one")} argument,`):e.constraints.maxFieldCount==1?s.push(`${o.green("at most one")} argument,`):s.push(`${o.green(`at most ${e.constraints.maxFieldCount}`)} arguments,`),s.push(`but you provided ${Mr("and",i.map(a=>o.red(a)))}. Please choose`),e.constraints.maxFieldCount===1?s.push("one."):s.push(`${e.constraints.maxFieldCount}.`),s.join(" ")})}function _o(e,t){for(let r of t.fields)e.hasField(r.name)||e.addSuggestion(new ue(r.name,"true"))}function ic(e,t){for(let r of t.fields)r.isRelation&&!e.hasField(r.name)&&e.addSuggestion(new ue(r.name,"true"))}function oc(e,t){for(let r of t.fields)!e.hasField(r.name)&&!r.isRelation&&e.addSuggestion(new ue(r.name,"true"))}function sc(e,t){for(let r of t)e.hasField(r.name)||e.addSuggestion(new ue(r.name,r.typeNames.join(" | ")))}function No(e,t){let[r,n]=at(e),i=t.arguments.getDeepSubSelectionValue(r)?.asObject();if(!i)return{parentKind:"unknown",fieldName:n};let o=i.getFieldValue("select")?.asObject(),s=i.getFieldValue("include")?.asObject(),a=i.getFieldValue("omit")?.asObject(),l=o?.getField(n);return o&&l?{parentKind:"select",parent:o,field:l,fieldName:n}:(l=s?.getField(n),s&&l?{parentKind:"include",field:l,parent:s,fieldName:n}:(l=a?.getField(n),a&&l?{parentKind:"omit",field:l,parent:a,fieldName:n}:{parentKind:"unknown",fieldName:n}))}function Fo(e,t){if(t.kind==="object")for(let r of t.fields)e.hasField(r.name)||e.addSuggestion(new ue(r.name,r.typeNames.join(" | ")))}function at(e){let t=[...e],r=t.pop();if(!r)throw new Error("unexpected empty path");return[t,r]}function _t({green:e,enabled:t}){return"Available options are "+(t?`listed in ${e("green")}`:"marked with ?")+"."}function Mr(e,t){if(t.length===1)return t[0];let r=[...t],n=r.pop();return`${r.join(", ")} ${e} ${n}`}var ac=3;function lc(e,t){let r=1/0,n;for(let i of t){let o=(0,ko.default)(e,i);o>ac||o`}};function lt(e){return e instanceof Nt}f();u();c();p();m();var _r=Symbol(),Ln=new WeakMap,Re=class{constructor(t){t===_r?Ln.set(this,`Prisma.${this._getName()}`):Ln.set(this,`new Prisma.${this._getNamespace()}.${this._getName()}()`)}_getName(){return this.constructor.name}toString(){return Ln.get(this)}},Ft=class extends Re{_getNamespace(){return"NullTypes"}},Lt=class extends Ft{#e};Un(Lt,"DbNull");var Ut=class extends Ft{#e};Un(Ut,"JsonNull");var Bt=class extends Ft{#e};Un(Bt,"AnyNull");var Nr={classes:{DbNull:Lt,JsonNull:Ut,AnyNull:Bt},instances:{DbNull:new Lt(_r),JsonNull:new Ut(_r),AnyNull:new Bt(_r)}};function Un(e,t){Object.defineProperty(e,"name",{value:t,configurable:!0})}f();u();c();p();m();var Lo=": ",Fr=class{constructor(t,r){this.name=t;this.value=r}hasError=!1;markAsError(){this.hasError=!0}getPrintWidth(){return this.name.length+this.value.getPrintWidth()+Lo.length}write(t){let r=new we(this.name);this.hasError&&r.underline().setColor(t.context.colors.red),t.write(r).write(Lo).write(this.value)}};var Bn=class{arguments;errorMessages=[];constructor(t){this.arguments=t}write(t){t.write(this.arguments)}addErrorMessage(t){this.errorMessages.push(t)}renderAllMessages(t){return this.errorMessages.map(r=>r(t)).join(` +`)}};function ut(e){return new Bn(Uo(e))}function Uo(e){let t=new st;for(let[r,n]of Object.entries(e)){let i=new Fr(r,Bo(n));t.addField(i)}return t}function Bo(e){if(typeof e=="string")return new H(JSON.stringify(e));if(typeof e=="number"||typeof e=="boolean")return new H(String(e));if(typeof e=="bigint")return new H(`${e}n`);if(e===null)return new H("null");if(e===void 0)return new H("undefined");if(rt(e))return new H(`new Prisma.Decimal("${e.toFixed()}")`);if(e instanceof Uint8Array)return w.Buffer.isBuffer(e)?new H(`Buffer.alloc(${e.byteLength})`):new H(`new Uint8Array(${e.byteLength})`);if(e instanceof Date){let t=Er(e)?e.toISOString():"Invalid Date";return new H(`new Date("${t}")`)}return e instanceof Re?new H(`Prisma.${e._getName()}`):lt(e)?new H(`prisma.${Ie(e.modelName)}.$fields.${e.name}`):Array.isArray(e)?uc(e):typeof e=="object"?Uo(e):new H(Object.prototype.toString.call(e))}function uc(e){let t=new ot;for(let r of e)t.addItem(Bo(r));return t}function Lr(e,t){let r=t==="pretty"?Oo:Dr,n=e.renderAllMessages(r),i=new nt(0,{colors:r}).write(e).toString();return{message:n,args:i}}function Ur({args:e,errors:t,errorFormat:r,callsite:n,originalMethod:i,clientVersion:o,globalOmit:s}){let a=ut(e);for(let h of t)Ir(h,a,s);let{message:l,args:d}=Lr(a,r),g=Sr({message:l,callsite:n,originalMethod:i,showColors:r==="pretty",callArguments:d});throw new X(g,{clientVersion:o})}f();u();c();p();m();f();u();c();p();m();function Ee(e){return e.replace(/^./,t=>t.toLowerCase())}f();u();c();p();m();function Vo(e,t,r){let n=Ee(r);return!t.result||!(t.result.$allModels||t.result[n])?e:cc({...e,...qo(t.name,e,t.result.$allModels),...qo(t.name,e,t.result[n])})}function cc(e){let t=new ge,r=(n,i)=>t.getOrCreate(n,()=>i.has(n)?[n]:(i.add(n),e[n]?e[n].needs.flatMap(o=>r(o,i)):[n]));return wr(e,n=>({...n,needs:r(n.name,new Set)}))}function qo(e,t,r){return r?wr(r,({needs:n,compute:i},o)=>({name:o,needs:n?Object.keys(n).filter(s=>n[s]):[],compute:pc(t,o,i)})):{}}function pc(e,t,r){let n=e?.[t]?.compute;return n?i=>r({...i,[t]:n(i)}):r}function $o(e,t){if(!t)return e;let r={...e};for(let n of Object.values(t))if(e[n.name])for(let i of n.needs)r[i]=!0;return r}function jo(e,t){if(!t)return e;let r={...e};for(let n of Object.values(t))if(!e[n.name])for(let i of n.needs)delete r[i];return r}var Br=class{constructor(t,r){this.extension=t;this.previous=r}computedFieldsCache=new ge;modelExtensionsCache=new ge;queryCallbacksCache=new ge;clientExtensions=It(()=>this.extension.client?{...this.previous?.getAllClientExtensions(),...this.extension.client}:this.previous?.getAllClientExtensions());batchCallbacks=It(()=>{let t=this.previous?.getAllBatchQueryCallbacks()??[],r=this.extension.query?.$__internalBatch;return r?t.concat(r):t});getAllComputedFields(t){return this.computedFieldsCache.getOrCreate(t,()=>Vo(this.previous?.getAllComputedFields(t),this.extension,t))}getAllClientExtensions(){return this.clientExtensions.get()}getAllModelExtensions(t){return this.modelExtensionsCache.getOrCreate(t,()=>{let r=Ee(t);return!this.extension.model||!(this.extension.model[r]||this.extension.model.$allModels)?this.previous?.getAllModelExtensions(t):{...this.previous?.getAllModelExtensions(t),...this.extension.model.$allModels,...this.extension.model[r]}})}getAllQueryCallbacks(t,r){return this.queryCallbacksCache.getOrCreate(`${t}:${r}`,()=>{let n=this.previous?.getAllQueryCallbacks(t,r)??[],i=[],o=this.extension.query;return!o||!(o[t]||o.$allModels||o[r]||o.$allOperations)?n:(o[t]!==void 0&&(o[t][r]!==void 0&&i.push(o[t][r]),o[t].$allOperations!==void 0&&i.push(o[t].$allOperations)),t!=="$none"&&o.$allModels!==void 0&&(o.$allModels[r]!==void 0&&i.push(o.$allModels[r]),o.$allModels.$allOperations!==void 0&&i.push(o.$allModels.$allOperations)),o[r]!==void 0&&i.push(o[r]),o.$allOperations!==void 0&&i.push(o.$allOperations),n.concat(i))})}getAllBatchQueryCallbacks(){return this.batchCallbacks.get()}},ct=class e{constructor(t){this.head=t}static empty(){return new e}static single(t){return new e(new Br(t))}isEmpty(){return this.head===void 0}append(t){return new e(new Br(t,this.head))}getAllComputedFields(t){return this.head?.getAllComputedFields(t)}getAllClientExtensions(){return this.head?.getAllClientExtensions()}getAllModelExtensions(t){return this.head?.getAllModelExtensions(t)}getAllQueryCallbacks(t,r){return this.head?.getAllQueryCallbacks(t,r)??[]}getAllBatchQueryCallbacks(){return this.head?.getAllBatchQueryCallbacks()??[]}};f();u();c();p();m();var qr=class{constructor(t){this.name=t}};function Go(e){return e instanceof qr}function Jo(e){return new qr(e)}f();u();c();p();m();f();u();c();p();m();var Qo=Symbol(),qt=class{constructor(t){if(t!==Qo)throw new Error("Skip instance can not be constructed directly")}ifUndefined(t){return t===void 0?Vr:t}},Vr=new qt(Qo);function be(e){return e instanceof qt}var mc={findUnique:"findUnique",findUniqueOrThrow:"findUniqueOrThrow",findFirst:"findFirst",findFirstOrThrow:"findFirstOrThrow",findMany:"findMany",count:"aggregate",create:"createOne",createMany:"createMany",createManyAndReturn:"createManyAndReturn",update:"updateOne",updateMany:"updateMany",updateManyAndReturn:"updateManyAndReturn",upsert:"upsertOne",delete:"deleteOne",deleteMany:"deleteMany",executeRaw:"executeRaw",queryRaw:"queryRaw",aggregate:"aggregate",groupBy:"groupBy",runCommandRaw:"runCommandRaw",findRaw:"findRaw",aggregateRaw:"aggregateRaw"},Ko="explicitly `undefined` values are not allowed";function $r({modelName:e,action:t,args:r,runtimeDataModel:n,extensions:i=ct.empty(),callsite:o,clientMethod:s,errorFormat:a,clientVersion:l,previewFeatures:d,globalOmit:g}){let h=new qn({runtimeDataModel:n,modelName:e,action:t,rootArgs:r,callsite:o,extensions:i,selectionPath:[],argumentPath:[],originalMethod:s,errorFormat:a,clientVersion:l,previewFeatures:d,globalOmit:g});return{modelName:e,action:mc[t],query:Vt(r,h)}}function Vt({select:e,include:t,...r}={},n){let i=r.omit;return delete r.omit,{arguments:Ho(r,n),selection:fc(e,t,i,n)}}function fc(e,t,r,n){return e?(t?n.throwValidationError({kind:"MutuallyExclusiveFields",firstField:"include",secondField:"select",selectionPath:n.getSelectionPath()}):r&&n.throwValidationError({kind:"MutuallyExclusiveFields",firstField:"omit",secondField:"select",selectionPath:n.getSelectionPath()}),yc(e,n)):dc(n,t,r)}function dc(e,t,r){let n={};return e.modelOrType&&!e.isRawAction()&&(n.$composites=!0,n.$scalars=!0),t&&gc(n,t,e),hc(n,r,e),n}function gc(e,t,r){for(let[n,i]of Object.entries(t)){if(be(i))continue;let o=r.nestSelection(n);if(Vn(i,o),i===!1||i===void 0){e[n]=!1;continue}let s=r.findField(n);if(s&&s.kind!=="object"&&r.throwValidationError({kind:"IncludeOnScalar",selectionPath:r.getSelectionPath().concat(n),outputType:r.getOutputTypeDescription()}),s){e[n]=Vt(i===!0?{}:i,o);continue}if(i===!0){e[n]=!0;continue}e[n]=Vt(i,o)}}function hc(e,t,r){let n=r.getComputedFields(),i={...r.getGlobalOmit(),...t},o=jo(i,n);for(let[s,a]of Object.entries(o)){if(be(a))continue;Vn(a,r.nestSelection(s));let l=r.findField(s);n?.[s]&&!l||(e[s]=!a)}}function yc(e,t){let r={},n=t.getComputedFields(),i=$o(e,n);for(let[o,s]of Object.entries(i)){if(be(s))continue;let a=t.nestSelection(o);Vn(s,a);let l=t.findField(o);if(!(n?.[o]&&!l)){if(s===!1||s===void 0||be(s)){r[o]=!1;continue}if(s===!0){l?.kind==="object"?r[o]=Vt({},a):r[o]=!0;continue}r[o]=Vt(s,a)}}return r}function Wo(e,t){if(e===null)return null;if(typeof e=="string"||typeof e=="number"||typeof e=="boolean")return e;if(typeof e=="bigint")return{$type:"BigInt",value:String(e)};if(Xe(e)){if(Er(e))return{$type:"DateTime",value:e.toISOString()};t.throwValidationError({kind:"InvalidArgumentValue",selectionPath:t.getSelectionPath(),argumentPath:t.getArgumentPath(),argument:{name:t.getArgumentName(),typeNames:["Date"]},underlyingError:"Provided Date object is invalid"})}if(Go(e))return{$type:"Param",value:e.name};if(lt(e))return{$type:"FieldRef",value:{_ref:e.name,_container:e.modelName}};if(Array.isArray(e))return wc(e,t);if(ArrayBuffer.isView(e)){let{buffer:r,byteOffset:n,byteLength:i}=e;return{$type:"Bytes",value:w.Buffer.from(r,n,i).toString("base64")}}if(Ec(e))return e.values;if(rt(e))return{$type:"Decimal",value:e.toFixed()};if(e instanceof Re){if(e!==Nr.instances[e._getName()])throw new Error("Invalid ObjectEnumValue");return{$type:"Enum",value:e._getName()}}if(bc(e))return e.toJSON();if(typeof e=="object")return Ho(e,t);t.throwValidationError({kind:"InvalidArgumentValue",selectionPath:t.getSelectionPath(),argumentPath:t.getArgumentPath(),argument:{name:t.getArgumentName(),typeNames:[]},underlyingError:`We could not serialize ${Object.prototype.toString.call(e)} value. Serialize the object to JSON or implement a ".toJSON()" method on it`})}function Ho(e,t){if(e.$type)return{$type:"Raw",value:e};let r={};for(let n in e){let i=e[n],o=t.nestArgument(n);be(i)||(i!==void 0?r[n]=Wo(i,o):t.isPreviewFeatureOn("strictUndefinedChecks")&&t.throwValidationError({kind:"InvalidArgumentValue",argumentPath:o.getArgumentPath(),selectionPath:t.getSelectionPath(),argument:{name:t.getArgumentName(),typeNames:[]},underlyingError:Ko}))}return r}function wc(e,t){let r=[];for(let n=0;n({name:t.name,typeName:"boolean",isRelation:t.kind==="object"}))}}isRawAction(){return["executeRaw","queryRaw","runCommandRaw","findRaw","aggregateRaw"].includes(this.params.action)}isPreviewFeatureOn(t){return this.params.previewFeatures.includes(t)}getComputedFields(){if(this.params.modelName)return this.params.extensions.getAllComputedFields(this.params.modelName)}findField(t){return this.modelOrType?.fields.find(r=>r.name===t)}nestSelection(t){let r=this.findField(t),n=r?.kind==="object"?r.type:void 0;return new e({...this.params,modelName:n,selectionPath:this.params.selectionPath.concat(t)})}getGlobalOmit(){return this.params.modelName&&this.shouldApplyGlobalOmit()?this.params.globalOmit?.[Ie(this.params.modelName)]??{}:{}}shouldApplyGlobalOmit(){switch(this.params.action){case"findFirst":case"findFirstOrThrow":case"findUniqueOrThrow":case"findMany":case"upsert":case"findUnique":case"createManyAndReturn":case"create":case"update":case"updateManyAndReturn":case"delete":return!0;case"executeRaw":case"aggregateRaw":case"runCommandRaw":case"findRaw":case"createMany":case"deleteMany":case"groupBy":case"updateMany":case"count":case"aggregate":case"queryRaw":return!1;default:Ue(this.params.action,"Unknown action")}}nestArgument(t){return new e({...this.params,argumentPath:this.params.argumentPath.concat(t)})}};f();u();c();p();m();function zo(e){if(!e._hasPreviewFlag("metrics"))throw new X("`metrics` preview feature must be enabled in order to access metrics API",{clientVersion:e._clientVersion})}var pt=class{_client;constructor(t){this._client=t}prometheus(t){return zo(this._client),this._client._engine.metrics({format:"prometheus",...t})}json(t){return zo(this._client),this._client._engine.metrics({format:"json",...t})}};f();u();c();p();m();function Yo(e,t){let r=It(()=>xc(t));Object.defineProperty(e,"dmmf",{get:()=>r.get()})}function xc(e){return{datamodel:{models:$n(e.models),enums:$n(e.enums),types:$n(e.types)}}}function $n(e){return Object.entries(e).map(([t,r])=>({name:t,...r}))}f();u();c();p();m();var jn=new WeakMap,jr="$$PrismaTypedSql",$t=class{constructor(t,r){jn.set(this,{sql:t,values:r}),Object.defineProperty(this,jr,{value:jr})}get sql(){return jn.get(this).sql}get values(){return jn.get(this).values}};function Zo(e){return(...t)=>new $t(e,t)}function Gr(e){return e!=null&&e[jr]===jr}f();u();c();p();m();var ha=Qe(Pn());f();u();c();p();m();Xo();Ki();Zi();f();u();c();p();m();var se=class e{constructor(t,r){if(t.length-1!==r.length)throw t.length===0?new TypeError("Expected at least 1 string"):new TypeError(`Expected ${t.length} strings to have ${t.length-1} values`);let n=r.reduce((s,a)=>s+(a instanceof e?a.values.length:1),0);this.values=new Array(n),this.strings=new Array(n+1),this.strings[0]=t[0];let i=0,o=0;for(;ie.getPropertyValue(r))},getPropertyDescriptor(r){return e.getPropertyDescriptor?.(r)}}}f();u();c();p();m();f();u();c();p();m();var Qr={enumerable:!0,configurable:!0,writable:!0};function Kr(e){let t=new Set(e);return{getPrototypeOf:()=>Object.prototype,getOwnPropertyDescriptor:()=>Qr,has:(r,n)=>t.has(n),set:(r,n,i)=>t.add(n)&&Reflect.set(r,n,i),ownKeys:()=>[...t]}}var rs=Symbol.for("nodejs.util.inspect.custom");function me(e,t){let r=Pc(t),n=new Set,i=new Proxy(e,{get(o,s){if(n.has(s))return o[s];let a=r.get(s);return a?a.getPropertyValue(s):o[s]},has(o,s){if(n.has(s))return!0;let a=r.get(s);return a?a.has?.(s)??!0:Reflect.has(o,s)},ownKeys(o){let s=ns(Reflect.ownKeys(o),r),a=ns(Array.from(r.keys()),r);return[...new Set([...s,...a,...n])]},set(o,s,a){return r.get(s)?.getPropertyDescriptor?.(s)?.writable===!1?!1:(n.add(s),Reflect.set(o,s,a))},getOwnPropertyDescriptor(o,s){let a=Reflect.getOwnPropertyDescriptor(o,s);if(a&&!a.configurable)return a;let l=r.get(s);return l?l.getPropertyDescriptor?{...Qr,...l?.getPropertyDescriptor(s)}:Qr:a},defineProperty(o,s,a){return n.add(s),Reflect.defineProperty(o,s,a)},getPrototypeOf:()=>Object.prototype});return i[rs]=function(){let o={...this};return delete o[rs],o},i}function Pc(e){let t=new Map;for(let r of e){let n=r.getKeys();for(let i of n)t.set(i,r)}return t}function ns(e,t){return e.filter(r=>t.get(r)?.has?.(r)??!0)}f();u();c();p();m();function mt(e){return{getKeys(){return e},has(){return!1},getPropertyValue(){}}}f();u();c();p();m();function Wr(e,t){return{batch:e,transaction:t?.kind==="batch"?{isolationLevel:t.options.isolationLevel}:void 0}}f();u();c();p();m();function is(e){if(e===void 0)return"";let t=ut(e);return new nt(0,{colors:Dr}).write(t).toString()}f();u();c();p();m();var vc="P2037";function Hr({error:e,user_facing_error:t},r,n){return t.error_code?new ne(Tc(t,n),{code:t.error_code,clientVersion:r,meta:t.meta,batchRequestIdx:t.batch_request_idx}):new ie(e,{clientVersion:r,batchRequestIdx:t.batch_request_idx})}function Tc(e,t){let r=e.message;return(t==="postgresql"||t==="postgres"||t==="mysql")&&e.error_code===vc&&(r+=` +Prisma Accelerate has built-in connection pooling to prevent such errors: https://pris.ly/client/error-accelerate`),r}f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var Qn=class{getLocation(){return null}};function Ne(e){return typeof $EnabledCallSite=="function"&&e!=="minimal"?new $EnabledCallSite:new Qn}f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var os={_avg:!0,_count:!0,_sum:!0,_min:!0,_max:!0};function ft(e={}){let t=Rc(e);return Object.entries(t).reduce((n,[i,o])=>(os[i]!==void 0?n.select[i]={select:o}:n[i]=o,n),{select:{}})}function Rc(e={}){return typeof e._count=="boolean"?{...e,_count:{_all:e._count}}:e}function zr(e={}){return t=>(typeof e._count=="boolean"&&(t._count=t._count._all),t)}function ss(e,t){let r=zr(e);return t({action:"aggregate",unpacker:r,argsMapper:ft})(e)}f();u();c();p();m();function Cc(e={}){let{select:t,...r}=e;return typeof t=="object"?ft({...r,_count:t}):ft({...r,_count:{_all:!0}})}function Sc(e={}){return typeof e.select=="object"?t=>zr(e)(t)._count:t=>zr(e)(t)._count._all}function as(e,t){return t({action:"count",unpacker:Sc(e),argsMapper:Cc})(e)}f();u();c();p();m();function Ic(e={}){let t=ft(e);if(Array.isArray(t.by))for(let r of t.by)typeof r=="string"&&(t.select[r]=!0);else typeof t.by=="string"&&(t.select[t.by]=!0);return t}function Oc(e={}){return t=>(typeof e?._count=="boolean"&&t.forEach(r=>{r._count=r._count._all}),t)}function ls(e,t){return t({action:"groupBy",unpacker:Oc(e),argsMapper:Ic})(e)}function us(e,t,r){if(t==="aggregate")return n=>ss(n,r);if(t==="count")return n=>as(n,r);if(t==="groupBy")return n=>ls(n,r)}f();u();c();p();m();function cs(e,t){let r=t.fields.filter(i=>!i.relationName),n=so(r,"name");return new Proxy({},{get(i,o){if(o in i||typeof o=="symbol")return i[o];let s=n[o];if(s)return new Nt(e,o,s.type,s.isList,s.kind==="enum")},...Kr(Object.keys(n))})}f();u();c();p();m();f();u();c();p();m();var ps=e=>Array.isArray(e)?e:e.split("."),Kn=(e,t)=>ps(t).reduce((r,n)=>r&&r[n],e),ms=(e,t,r)=>ps(t).reduceRight((n,i,o,s)=>Object.assign({},Kn(e,s.slice(0,o)),{[i]:n}),r);function kc(e,t){return e===void 0||t===void 0?[]:[...t,"select",e]}function Dc(e,t,r){return t===void 0?e??{}:ms(t,r,e||!0)}function Wn(e,t,r,n,i,o){let a=e._runtimeDataModel.models[t].fields.reduce((l,d)=>({...l,[d.name]:d}),{});return l=>{let d=Ne(e._errorFormat),g=kc(n,i),h=Dc(l,o,g),T=r({dataPath:g,callsite:d})(h),I=Mc(e,t);return new Proxy(T,{get(S,C){if(!I.includes(C))return S[C];let F=[a[C].type,r,C],B=[g,h];return Wn(e,...F,...B)},...Kr([...I,...Object.getOwnPropertyNames(T)])})}}function Mc(e,t){return e._runtimeDataModel.models[t].fields.filter(r=>r.kind==="object").map(r=>r.name)}var _c=["findUnique","findUniqueOrThrow","findFirst","findFirstOrThrow","create","update","upsert","delete"],Nc=["aggregate","count","groupBy"];function Hn(e,t){let r=e._extensions.getAllModelExtensions(t)??{},n=[Fc(e,t),Uc(e,t),jt(r),te("name",()=>t),te("$name",()=>t),te("$parent",()=>e._appliedParent)];return me({},n)}function Fc(e,t){let r=Ee(t),n=Object.keys(kt).concat("count");return{getKeys(){return n},getPropertyValue(i){let o=i,s=a=>l=>{let d=Ne(e._errorFormat);return e._createPrismaPromise(g=>{let h={args:l,dataPath:[],action:o,model:t,clientMethod:`${r}.${i}`,jsModelName:r,transaction:g,callsite:d};return e._request({...h,...a})},{action:o,args:l,model:t})};return _c.includes(o)?Wn(e,t,s):Lc(i)?us(e,i,s):s({})}}}function Lc(e){return Nc.includes(e)}function Uc(e,t){return Be(te("fields",()=>{let r=e._runtimeDataModel.models[t];return cs(t,r)}))}f();u();c();p();m();function fs(e){return e.replace(/^./,t=>t.toUpperCase())}var zn=Symbol();function Gt(e){let t=[Bc(e),qc(e),te(zn,()=>e),te("$parent",()=>e._appliedParent)],r=e._extensions.getAllClientExtensions();return r&&t.push(jt(r)),me(e,t)}function Bc(e){let t=Object.getPrototypeOf(e._originalClient),r=[...new Set(Object.getOwnPropertyNames(t))];return{getKeys(){return r},getPropertyValue(n){return e[n]}}}function qc(e){let t=Object.keys(e._runtimeDataModel.models),r=t.map(Ee),n=[...new Set(t.concat(r))];return Be({getKeys(){return n},getPropertyValue(i){let o=fs(i);if(e._runtimeDataModel.models[o]!==void 0)return Hn(e,o);if(e._runtimeDataModel.models[i]!==void 0)return Hn(e,i)},getPropertyDescriptor(i){if(!r.includes(i))return{enumerable:!1}}})}function ds(e){return e[zn]?e[zn]:e}function gs(e){if(typeof e=="function")return e(this);if(e.client?.__AccelerateEngine){let r=e.client.__AccelerateEngine;this._originalClient._engine=new r(this._originalClient._accelerateEngineConfig)}let t=Object.create(this._originalClient,{_extensions:{value:this._extensions.append(e)},_appliedParent:{value:this,configurable:!0},$on:{value:void 0}});return Gt(t)}f();u();c();p();m();f();u();c();p();m();function hs({result:e,modelName:t,select:r,omit:n,extensions:i}){let o=i.getAllComputedFields(t);if(!o)return e;let s=[],a=[];for(let l of Object.values(o)){if(n){if(n[l.name])continue;let d=l.needs.filter(g=>n[g]);d.length>0&&a.push(mt(d))}else if(r){if(!r[l.name])continue;let d=l.needs.filter(g=>!r[g]);d.length>0&&a.push(mt(d))}Vc(e,l.needs)&&s.push($c(l,me(e,s)))}return s.length>0||a.length>0?me(e,[...s,...a]):e}function Vc(e,t){return t.every(r=>Cn(e,r))}function $c(e,t){return Be(te(e.name,()=>e.compute(t)))}f();u();c();p();m();function Yr({visitor:e,result:t,args:r,runtimeDataModel:n,modelName:i}){if(Array.isArray(t)){for(let s=0;sg.name===o);if(!l||l.kind!=="object"||!l.relationName)continue;let d=typeof s=="object"?s:{};t[o]=Yr({visitor:i,result:t[o],args:d,modelName:l.type,runtimeDataModel:n})}}function ws({result:e,modelName:t,args:r,extensions:n,runtimeDataModel:i,globalOmit:o}){return n.isEmpty()||e==null||typeof e!="object"||!i.models[t]?e:Yr({result:e,args:r??{},modelName:t,runtimeDataModel:i,visitor:(a,l,d)=>{let g=Ee(l);return hs({result:a,modelName:g,select:d.select,omit:d.select?void 0:{...o?.[g],...d.omit},extensions:n})}})}f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var jc=["$connect","$disconnect","$on","$transaction","$extends"],Es=jc;function bs(e){if(e instanceof se)return Gc(e);if(Gr(e))return Jc(e);if(Array.isArray(e)){let r=[e[0]];for(let n=1;n{let o=t.customDataProxyFetch;return"transaction"in t&&i!==void 0&&(t.transaction?.kind==="batch"&&t.transaction.lock.then(),t.transaction=i),n===r.length?e._executeRequest(t):r[n]({model:t.model,operation:t.model?t.action:t.clientMethod,args:bs(t.args??{}),__internalParams:t,query:(s,a=t)=>{let l=a.customDataProxyFetch;return a.customDataProxyFetch=Rs(o,l),a.args=s,Ps(e,a,r,n+1)}})})}function vs(e,t){let{jsModelName:r,action:n,clientMethod:i}=t,o=r?n:i;if(e._extensions.isEmpty())return e._executeRequest(t);let s=e._extensions.getAllQueryCallbacks(r??"$none",o);return Ps(e,t,s)}function Ts(e){return t=>{let r={requests:t},n=t[0].extensions.getAllBatchQueryCallbacks();return n.length?As(r,n,0,e):e(r)}}function As(e,t,r,n){if(r===t.length)return n(e);let i=e.customDataProxyFetch,o=e.requests[0].transaction;return t[r]({args:{queries:e.requests.map(s=>({model:s.modelName,operation:s.action,args:s.args})),transaction:o?{isolationLevel:o.kind==="batch"?o.isolationLevel:void 0}:void 0},__internalParams:e,query(s,a=e){let l=a.customDataProxyFetch;return a.customDataProxyFetch=Rs(i,l),As(a,t,r+1,n)}})}var xs=e=>e;function Rs(e=xs,t=xs){return r=>e(t(r))}f();u();c();p();m();var Cs=z("prisma:client"),Ss={Vercel:"vercel","Netlify CI":"netlify"};function Is({postinstall:e,ciName:t,clientVersion:r,generator:n}){if(Cs("checkPlatformCaching:postinstall",e),Cs("checkPlatformCaching:ciName",t),e===!0&&!(n?.output&&typeof(n.output.fromEnvVar??n.output.value)=="string")&&t&&t in Ss){let i=`Prisma has detected that this project was built on ${t}, which caches dependencies. This leads to an outdated Prisma Client because Prisma's auto-generation isn't triggered. To fix this, make sure to run the \`prisma generate\` command during the build process. -Learn how: https://pris.ly/d/${Ss[t]}-build`; - throw (console.error(i), new Q(i, r)); - } -} -f(); -u(); -c(); -p(); -m(); -function Os(e, t) { - return e - ? e.datasources - ? e.datasources - : e.datasourceUrl - ? { [t[0]]: { url: e.datasourceUrl } } - : {} - : {}; -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -function ks(e, t) { - throw new Error(t); -} -function Qc(e) { - return e !== null && typeof e == "object" && typeof e.$type == "string"; -} -function Kc(e, t) { - let r = {}; - for (let n of Object.keys(e)) r[n] = t(e[n], n); - return r; -} -function dt(e) { - return e === null - ? e - : Array.isArray(e) - ? e.map(dt) - : typeof e == "object" - ? Qc(e) - ? Wc(e) - : e.constructor !== null && e.constructor.name !== "Object" - ? e - : Kc(e, dt) - : e; -} -function Wc({ $type: e, value: t }) { - switch (e) { - case "BigInt": - return BigInt(t); - case "Bytes": { - let { - buffer: r, - byteOffset: n, - byteLength: i, - } = w.Buffer.from(t, "base64"); - return new Uint8Array(r, n, i); - } - case "DateTime": - return new Date(t); - case "Decimal": - return new Te(t); - case "Json": - return JSON.parse(t); - default: - ks(t, "Unknown tagged value"); - } -} -var Ds = "6.19.2"; -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var zc = () => globalThis.process?.release?.name === "node", - Yc = () => !!globalThis.Bun || !!globalThis.process?.versions?.bun, - Zc = () => !!globalThis.Deno, - Xc = () => typeof globalThis.Netlify == "object", - ep = () => typeof globalThis.EdgeRuntime == "object", - tp = () => globalThis.navigator?.userAgent === "Cloudflare-Workers"; -function rp() { - return ( - [ - [Xc, "netlify"], - [ep, "edge-light"], - [tp, "workerd"], - [Zc, "deno"], - [Yc, "bun"], - [zc, "node"], - ] - .flatMap((r) => (r[0]() ? [r[1]] : [])) - .at(0) ?? "" - ); -} -var np = { - node: "Node.js", - workerd: "Cloudflare Workers", - deno: "Deno and Deno Deploy", - netlify: "Netlify Edge Functions", - "edge-light": - "Edge Runtime (Vercel Edge Functions, Vercel Edge Middleware, Next.js (Pages Router) Edge API Routes, Next.js (App Router) Edge Route Handlers or Next.js Middleware)", -}; -function Zr() { - let e = rp(); - return { - id: e, - prettyName: np[e] || e, - isEdge: ["workerd", "deno", "netlify", "edge-light"].includes(e), - }; -} -function gt({ - inlineDatasources: e, - overrideDatasources: t, - env: r, - clientVersion: n, -}) { - let i, - o = Object.keys(e)[0], - s = e[o]?.url, - a = t[o]?.url; - if ( - (o === void 0 - ? (i = void 0) - : a - ? (i = a) - : s?.value - ? (i = s.value) - : s?.fromEnvVar && (i = r[s.fromEnvVar]), - s?.fromEnvVar !== void 0 && i === void 0) - ) - throw Zr().id === "workerd" - ? new Q( - `error: Environment variable not found: ${s.fromEnvVar}. +Learn how: https://pris.ly/d/${Ss[t]}-build`;throw console.error(i),new Q(i,r)}}f();u();c();p();m();function Os(e,t){return e?e.datasources?e.datasources:e.datasourceUrl?{[t[0]]:{url:e.datasourceUrl}}:{}:{}}f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();function ks(e,t){throw new Error(t)}function Qc(e){return e!==null&&typeof e=="object"&&typeof e.$type=="string"}function Kc(e,t){let r={};for(let n of Object.keys(e))r[n]=t(e[n],n);return r}function dt(e){return e===null?e:Array.isArray(e)?e.map(dt):typeof e=="object"?Qc(e)?Wc(e):e.constructor!==null&&e.constructor.name!=="Object"?e:Kc(e,dt):e}function Wc({$type:e,value:t}){switch(e){case"BigInt":return BigInt(t);case"Bytes":{let{buffer:r,byteOffset:n,byteLength:i}=w.Buffer.from(t,"base64");return new Uint8Array(r,n,i)}case"DateTime":return new Date(t);case"Decimal":return new Te(t);case"Json":return JSON.parse(t);default:ks(t,"Unknown tagged value")}}var Ds="6.19.2";f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var zc=()=>globalThis.process?.release?.name==="node",Yc=()=>!!globalThis.Bun||!!globalThis.process?.versions?.bun,Zc=()=>!!globalThis.Deno,Xc=()=>typeof globalThis.Netlify=="object",ep=()=>typeof globalThis.EdgeRuntime=="object",tp=()=>globalThis.navigator?.userAgent==="Cloudflare-Workers";function rp(){return[[Xc,"netlify"],[ep,"edge-light"],[tp,"workerd"],[Zc,"deno"],[Yc,"bun"],[zc,"node"]].flatMap(r=>r[0]()?[r[1]]:[]).at(0)??""}var np={node:"Node.js",workerd:"Cloudflare Workers",deno:"Deno and Deno Deploy",netlify:"Netlify Edge Functions","edge-light":"Edge Runtime (Vercel Edge Functions, Vercel Edge Middleware, Next.js (Pages Router) Edge API Routes, Next.js (App Router) Edge Route Handlers or Next.js Middleware)"};function Zr(){let e=rp();return{id:e,prettyName:np[e]||e,isEdge:["workerd","deno","netlify","edge-light"].includes(e)}}function gt({inlineDatasources:e,overrideDatasources:t,env:r,clientVersion:n}){let i,o=Object.keys(e)[0],s=e[o]?.url,a=t[o]?.url;if(o===void 0?i=void 0:a?i=a:s?.value?i=s.value:s?.fromEnvVar&&(i=r[s.fromEnvVar]),s?.fromEnvVar!==void 0&&i===void 0)throw Zr().id==="workerd"?new Q(`error: Environment variable not found: ${s.fromEnvVar}. In Cloudflare module Workers, environment variables are available only in the Worker's \`env\` parameter of \`fetch\`. -To solve this, provide the connection string directly: https://pris.ly/d/cloudflare-datasource-url`, - n, - ) - : new Q(`error: Environment variable not found: ${s.fromEnvVar}.`, n); - if (i === void 0) - throw new Q( - "error: Missing URL environment variable, value, or override.", - n, - ); - return i; -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var Xr = class extends Error { - clientVersion; - cause; - constructor(t, r) { - (super(t), (this.clientVersion = r.clientVersion), (this.cause = r.cause)); - } - get [Symbol.toStringTag]() { - return this.name; - } -}; -var ae = class extends Xr { - isRetryable; - constructor(t, r) { - (super(t, r), (this.isRetryable = r.isRetryable ?? !0)); - } -}; -f(); -u(); -c(); -p(); -m(); -function U(e, t) { - return { ...e, isRetryable: t }; -} -var qe = class extends ae { - name = "InvalidDatasourceError"; - code = "P6001"; - constructor(t, r) { - super(t, U(r, !1)); - } -}; -N(qe, "InvalidDatasourceError"); -function Ms(e) { - let t = { clientVersion: e.clientVersion }, - r = Object.keys(e.inlineDatasources)[0], - n = gt({ - inlineDatasources: e.inlineDatasources, - overrideDatasources: e.overrideDatasources, - clientVersion: e.clientVersion, - env: { ...e.env, ...(typeof y < "u" ? y.env : {}) }, - }), - i; - try { - i = new URL(n); - } catch { - throw new qe( - `Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\``, - t, - ); - } - let { protocol: o, searchParams: s } = i; - if (o !== "prisma:" && o !== hr) - throw new qe( - `Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\` or \`prisma+postgres://\``, - t, - ); - let a = s.get("api_key"); - if (a === null || a.length < 1) - throw new qe( - `Error validating datasource \`${r}\`: the URL must contain a valid API key`, - t, - ); - let l = vn(i) ? "http:" : "https:"; - y.env.TEST_CLIENT_ENGINE_REMOTE_EXECUTOR && - i.searchParams.has("use_http") && - (l = "http:"); - let d = new URL(i.href.replace(o, l)); - return { apiKey: a, url: d }; -} -f(); -u(); -c(); -p(); -m(); -var _s = Qe(Xi()), - en = class { - apiKey; - tracingHelper; - logLevel; - logQueries; - engineHash; - constructor({ - apiKey: t, - tracingHelper: r, - logLevel: n, - logQueries: i, - engineHash: o, - }) { - ((this.apiKey = t), - (this.tracingHelper = r), - (this.logLevel = n), - (this.logQueries = i), - (this.engineHash = o)); - } - build({ traceparent: t, transactionId: r } = {}) { - let n = { - Accept: "application/json", - Authorization: `Bearer ${this.apiKey}`, - "Content-Type": "application/json", - "Prisma-Engine-Hash": this.engineHash, - "Prisma-Engine-Version": _s.enginesVersion, - }; - (this.tracingHelper.isEnabled() && - (n.traceparent = t ?? this.tracingHelper.getTraceParent()), - r && (n["X-Transaction-Id"] = r)); - let i = this.#e(); - return (i.length > 0 && (n["X-Capture-Telemetry"] = i.join(", ")), n); - } - #e() { - let t = []; - return ( - this.tracingHelper.isEnabled() && t.push("tracing"), - this.logLevel && t.push(this.logLevel), - this.logQueries && t.push("query"), - t - ); - } - }; -f(); -u(); -c(); -p(); -m(); -function ip(e) { - return e[0] * 1e3 + e[1] / 1e6; -} -function Yn(e) { - return new Date(ip(e)); -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var ht = class extends ae { - name = "ForcedRetryError"; - code = "P5001"; - constructor(t) { - super("This request must be retried", U(t, !0)); - } -}; -N(ht, "ForcedRetryError"); -f(); -u(); -c(); -p(); -m(); -var Ve = class extends ae { - name = "NotImplementedYetError"; - code = "P5004"; - constructor(t, r) { - super(t, U(r, !1)); - } -}; -N(Ve, "NotImplementedYetError"); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var G = class extends ae { - response; - constructor(t, r) { - (super(t, r), (this.response = r.response)); - let n = this.response.headers.get("prisma-request-id"); - if (n) { - let i = `(The request id was: ${n})`; - this.message = this.message + " " + i; - } - } -}; -var $e = class extends G { - name = "SchemaMissingError"; - code = "P5005"; - constructor(t) { - super("Schema needs to be uploaded", U(t, !0)); - } -}; -N($e, "SchemaMissingError"); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var Zn = "This request could not be understood by the server", - Qt = class extends G { - name = "BadRequestError"; - code = "P5000"; - constructor(t, r, n) { - (super(r || Zn, U(t, !1)), n && (this.code = n)); - } - }; -N(Qt, "BadRequestError"); -f(); -u(); -c(); -p(); -m(); -var Kt = class extends G { - name = "HealthcheckTimeoutError"; - code = "P5013"; - logs; - constructor(t, r) { - (super("Engine not started: healthcheck timeout", U(t, !0)), - (this.logs = r)); - } -}; -N(Kt, "HealthcheckTimeoutError"); -f(); -u(); -c(); -p(); -m(); -var Wt = class extends G { - name = "EngineStartupError"; - code = "P5014"; - logs; - constructor(t, r, n) { - (super(r, U(t, !0)), (this.logs = n)); - } -}; -N(Wt, "EngineStartupError"); -f(); -u(); -c(); -p(); -m(); -var Ht = class extends G { - name = "EngineVersionNotSupportedError"; - code = "P5012"; - constructor(t) { - super("Engine version is not supported", U(t, !1)); - } -}; -N(Ht, "EngineVersionNotSupportedError"); -f(); -u(); -c(); -p(); -m(); -var Xn = "Request timed out", - zt = class extends G { - name = "GatewayTimeoutError"; - code = "P5009"; - constructor(t, r = Xn) { - super(r, U(t, !1)); - } - }; -N(zt, "GatewayTimeoutError"); -f(); -u(); -c(); -p(); -m(); -var op = "Interactive transaction error", - Yt = class extends G { - name = "InteractiveTransactionError"; - code = "P5015"; - constructor(t, r = op) { - super(r, U(t, !1)); - } - }; -N(Yt, "InteractiveTransactionError"); -f(); -u(); -c(); -p(); -m(); -var sp = "Request parameters are invalid", - Zt = class extends G { - name = "InvalidRequestError"; - code = "P5011"; - constructor(t, r = sp) { - super(r, U(t, !1)); - } - }; -N(Zt, "InvalidRequestError"); -f(); -u(); -c(); -p(); -m(); -var ei = "Requested resource does not exist", - Xt = class extends G { - name = "NotFoundError"; - code = "P5003"; - constructor(t, r = ei) { - super(r, U(t, !1)); - } - }; -N(Xt, "NotFoundError"); -f(); -u(); -c(); -p(); -m(); -var ti = "Unknown server error", - yt = class extends G { - name = "ServerError"; - code = "P5006"; - logs; - constructor(t, r, n) { - (super(r || ti, U(t, !0)), (this.logs = n)); - } - }; -N(yt, "ServerError"); -f(); -u(); -c(); -p(); -m(); -var ri = "Unauthorized, check your connection string", - er = class extends G { - name = "UnauthorizedError"; - code = "P5007"; - constructor(t, r = ri) { - super(r, U(t, !1)); - } - }; -N(er, "UnauthorizedError"); -f(); -u(); -c(); -p(); -m(); -var ni = "Usage exceeded, retry again later", - tr = class extends G { - name = "UsageExceededError"; - code = "P5008"; - constructor(t, r = ni) { - super(r, U(t, !0)); - } - }; -N(tr, "UsageExceededError"); -async function ap(e) { - let t; - try { - t = await e.text(); - } catch { - return { type: "EmptyError" }; - } - try { - let r = JSON.parse(t); - if (typeof r == "string") - switch (r) { - case "InternalDataProxyError": - return { type: "DataProxyError", body: r }; - default: - return { type: "UnknownTextError", body: r }; - } - if (typeof r == "object" && r !== null) { - if ("is_panic" in r && "message" in r && "error_code" in r) - return { type: "QueryEngineError", body: r }; - if ( - "EngineNotStarted" in r || - "InteractiveTransactionMisrouted" in r || - "InvalidRequestError" in r - ) { - let n = Object.values(r)[0].reason; - return typeof n == "string" && - !["SchemaMissing", "EngineVersionNotSupported"].includes(n) - ? { type: "UnknownJsonError", body: r } - : { type: "DataProxyError", body: r }; - } - } - return { type: "UnknownJsonError", body: r }; - } catch { - return t === "" - ? { type: "EmptyError" } - : { type: "UnknownTextError", body: t }; - } -} -async function rr(e, t) { - if (e.ok) return; - let r = { clientVersion: t, response: e }, - n = await ap(e); - if (n.type === "QueryEngineError") - throw new ne(n.body.message, { code: n.body.error_code, clientVersion: t }); - if (n.type === "DataProxyError") { - if (n.body === "InternalDataProxyError") - throw new yt(r, "Internal Data Proxy error"); - if ("EngineNotStarted" in n.body) { - if (n.body.EngineNotStarted.reason === "SchemaMissing") return new $e(r); - if (n.body.EngineNotStarted.reason === "EngineVersionNotSupported") - throw new Ht(r); - if ("EngineStartupError" in n.body.EngineNotStarted.reason) { - let { msg: i, logs: o } = - n.body.EngineNotStarted.reason.EngineStartupError; - throw new Wt(r, i, o); - } - if ("KnownEngineStartupError" in n.body.EngineNotStarted.reason) { - let { msg: i, error_code: o } = - n.body.EngineNotStarted.reason.KnownEngineStartupError; - throw new Q(i, t, o); - } - if ("HealthcheckTimeout" in n.body.EngineNotStarted.reason) { - let { logs: i } = n.body.EngineNotStarted.reason.HealthcheckTimeout; - throw new Kt(r, i); - } - } - if ("InteractiveTransactionMisrouted" in n.body) { - let i = { - IDParseError: "Could not parse interactive transaction ID", - NoQueryEngineFoundError: - "Could not find Query Engine for the specified host and transaction ID", - TransactionStartError: "Could not start interactive transaction", - }; - throw new Yt(r, i[n.body.InteractiveTransactionMisrouted.reason]); - } - if ("InvalidRequestError" in n.body) - throw new Zt(r, n.body.InvalidRequestError.reason); - } - if (e.status === 401 || e.status === 403) throw new er(r, wt(ri, n)); - if (e.status === 404) return new Xt(r, wt(ei, n)); - if (e.status === 429) throw new tr(r, wt(ni, n)); - if (e.status === 504) throw new zt(r, wt(Xn, n)); - if (e.status >= 500) throw new yt(r, wt(ti, n)); - if (e.status >= 400) throw new Qt(r, wt(Zn, n)); -} -function wt(e, t) { - return t.type === "EmptyError" ? e : `${e}: ${JSON.stringify(t)}`; -} -f(); -u(); -c(); -p(); -m(); -function Ns(e) { - let t = Math.pow(2, e) * 50, - r = Math.ceil(Math.random() * t) - Math.ceil(t / 2), - n = t + r; - return new Promise((i) => setTimeout(() => i(n), n)); -} -f(); -u(); -c(); -p(); -m(); -var Ce = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; -function Fs(e) { - let t = new TextEncoder().encode(e), - r = "", - n = t.byteLength, - i = n % 3, - o = n - i, - s, - a, - l, - d, - g; - for (let h = 0; h < o; h = h + 3) - ((g = (t[h] << 16) | (t[h + 1] << 8) | t[h + 2]), - (s = (g & 16515072) >> 18), - (a = (g & 258048) >> 12), - (l = (g & 4032) >> 6), - (d = g & 63), - (r += Ce[s] + Ce[a] + Ce[l] + Ce[d])); - return ( - i == 1 - ? ((g = t[o]), - (s = (g & 252) >> 2), - (a = (g & 3) << 4), - (r += Ce[s] + Ce[a] + "==")) - : i == 2 && - ((g = (t[o] << 8) | t[o + 1]), - (s = (g & 64512) >> 10), - (a = (g & 1008) >> 4), - (l = (g & 15) << 2), - (r += Ce[s] + Ce[a] + Ce[l] + "=")), - r - ); -} -f(); -u(); -c(); -p(); -m(); -function Ls(e) { - if ( - !!e.generator?.previewFeatures.some((r) => - r.toLowerCase().includes("metrics"), - ) - ) - throw new Q( - "The `metrics` preview feature is not yet available with Accelerate.\nPlease remove `metrics` from the `previewFeatures` in your schema.\n\nMore information about Accelerate: https://pris.ly/d/accelerate", - e.clientVersion, - ); -} -f(); -u(); -c(); -p(); -m(); -var Us = { - "@prisma/debug": "workspace:*", - "@prisma/engines-version": "7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7", - "@prisma/fetch-engine": "workspace:*", - "@prisma/get-platform": "workspace:*", -}; -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var nr = class extends ae { - name = "RequestError"; - code = "P5010"; - constructor(t, r) { - super( - `Cannot fetch data from service: -${t}`, - U(r, !0), - ); - } -}; -N(nr, "RequestError"); -async function je(e, t, r = (n) => n) { - let { clientVersion: n, ...i } = t, - o = r(fetch); - try { - return await o(e, i); - } catch (s) { - let a = s.message ?? "Unknown error"; - throw new nr(a, { clientVersion: n, cause: s }); - } -} -var up = /^[1-9][0-9]*\.[0-9]+\.[0-9]+$/, - Bs = z("prisma:client:dataproxyEngine"); -async function cp(e, t) { - let r = Us["@prisma/engines-version"], - n = t.clientVersion ?? "unknown"; - if ( - y.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION || - globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION - ) - return ( - y.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION || - globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION - ); - if (e.includes("accelerate") && n !== "0.0.0" && n !== "in-memory") return n; - let [i, o] = n?.split("-") ?? []; - if (o === void 0 && up.test(i)) return i; - if (o !== void 0 || n === "0.0.0" || n === "in-memory") { - let [s] = r.split("-") ?? [], - [a, l, d] = s.split("."), - g = pp(`<=${a}.${l}.${d}`), - h = await je(g, { clientVersion: n }); - if (!h.ok) - throw new Error( - `Failed to fetch stable Prisma version, unpkg.com status ${h.status} ${h.statusText}, response body: ${(await h.text()) || ""}`, - ); - let T = await h.text(); - Bs("length of body fetched from unpkg.com", T.length); - let I; - try { - I = JSON.parse(T); - } catch (S) { - throw ( - console.error("JSON.parse error: body fetched from unpkg.com: ", T), - S - ); - } - return I.version; - } - throw new Ve( - "Only `major.minor.patch` versions are supported by Accelerate.", - { clientVersion: n }, - ); -} -async function qs(e, t) { - let r = await cp(e, t); - return (Bs("version", r), r); -} -function pp(e) { - return encodeURI(`https://unpkg.com/prisma@${e}/package.json`); -} -var Vs = 3, - ir = z("prisma:client:dataproxyEngine"), - Et = class { - name = "DataProxyEngine"; - inlineSchema; - inlineSchemaHash; - inlineDatasources; - config; - logEmitter; - env; - clientVersion; - engineHash; - tracingHelper; - remoteClientVersion; - host; - headerBuilder; - startPromise; - protocol; - constructor(t) { - (Ls(t), - (this.config = t), - (this.env = t.env), - (this.inlineSchema = Fs(t.inlineSchema)), - (this.inlineDatasources = t.inlineDatasources), - (this.inlineSchemaHash = t.inlineSchemaHash), - (this.clientVersion = t.clientVersion), - (this.engineHash = t.engineVersion), - (this.logEmitter = t.logEmitter), - (this.tracingHelper = t.tracingHelper)); - } - apiKey() { - return this.headerBuilder.apiKey; - } - version() { - return this.engineHash; - } - async start() { - (this.startPromise !== void 0 && (await this.startPromise), - (this.startPromise = (async () => { - let { apiKey: t, url: r } = this.getURLAndAPIKey(); - ((this.host = r.host), - (this.protocol = r.protocol), - (this.headerBuilder = new en({ - apiKey: t, - tracingHelper: this.tracingHelper, - logLevel: this.config.logLevel ?? "error", - logQueries: this.config.logQueries, - engineHash: this.engineHash, - })), - (this.remoteClientVersion = await qs(this.host, this.config)), - ir("host", this.host), - ir("protocol", this.protocol)); - })()), - await this.startPromise); - } - async stop() {} - propagateResponseExtensions(t) { - (t?.logs?.length && - t.logs.forEach((r) => { - switch (r.level) { - case "debug": - case "trace": - ir(r); - break; - case "error": - case "warn": - case "info": { - this.logEmitter.emit(r.level, { - timestamp: Yn(r.timestamp), - message: r.attributes.message ?? "", - target: r.target ?? "BinaryEngine", - }); - break; - } - case "query": { - this.logEmitter.emit("query", { - query: r.attributes.query ?? "", - timestamp: Yn(r.timestamp), - duration: r.attributes.duration_ms ?? 0, - params: r.attributes.params ?? "", - target: r.target ?? "BinaryEngine", - }); - break; - } - default: - r.level; - } - }), - t?.traces?.length && this.tracingHelper.dispatchEngineSpans(t.traces)); - } - onBeforeExit() { - throw new Error( - '"beforeExit" hook is not applicable to the remote query engine', - ); - } - async url(t) { - return ( - await this.start(), - `${this.protocol}//${this.host}/${this.remoteClientVersion}/${this.inlineSchemaHash}/${t}` - ); - } - async uploadSchema() { - let t = { name: "schemaUpload", internal: !0 }; - return this.tracingHelper.runInChildSpan(t, async () => { - let r = await je(await this.url("schema"), { - method: "PUT", - headers: this.headerBuilder.build(), - body: this.inlineSchema, - clientVersion: this.clientVersion, - }); - r.ok || ir("schema response status", r.status); - let n = await rr(r, this.clientVersion); - if (n) - throw ( - this.logEmitter.emit("warn", { - message: `Error while uploading schema: ${n.message}`, - timestamp: new Date(), - target: "", - }), - n - ); - this.logEmitter.emit("info", { - message: `Schema (re)uploaded (hash: ${this.inlineSchemaHash})`, - timestamp: new Date(), - target: "", - }); - }); - } - request( - t, - { traceparent: r, interactiveTransaction: n, customDataProxyFetch: i }, - ) { - return this.requestInternal({ - body: t, - traceparent: r, - interactiveTransaction: n, - customDataProxyFetch: i, - }); - } - async requestBatch( - t, - { traceparent: r, transaction: n, customDataProxyFetch: i }, - ) { - let o = n?.kind === "itx" ? n.options : void 0, - s = Wr(t, n); - return ( - await this.requestInternal({ - body: s, - customDataProxyFetch: i, - interactiveTransaction: o, - traceparent: r, - }) - ).map( - (l) => ( - l.extensions && this.propagateResponseExtensions(l.extensions), - "errors" in l ? this.convertProtocolErrorsToClientError(l.errors) : l - ), - ); - } - requestInternal({ - body: t, - traceparent: r, - customDataProxyFetch: n, - interactiveTransaction: i, - }) { - return this.withRetry({ - actionGerund: "querying", - callback: async ({ logHttpCall: o }) => { - let s = i - ? `${i.payload.endpoint}/graphql` - : await this.url("graphql"); - o(s); - let a = await je( - s, - { - method: "POST", - headers: this.headerBuilder.build({ - traceparent: r, - transactionId: i?.id, - }), - body: JSON.stringify(t), - clientVersion: this.clientVersion, - }, - n, - ); - (a.ok || ir("graphql response status", a.status), - await this.handleError(await rr(a, this.clientVersion))); - let l = await a.json(); - if ( - (l.extensions && this.propagateResponseExtensions(l.extensions), - "errors" in l) - ) - throw this.convertProtocolErrorsToClientError(l.errors); - return "batchResult" in l ? l.batchResult : l; - }, - }); - } - async transaction(t, r, n) { - let i = { - start: "starting", - commit: "committing", - rollback: "rolling back", - }; - return this.withRetry({ - actionGerund: `${i[t]} transaction`, - callback: async ({ logHttpCall: o }) => { - if (t === "start") { - let s = JSON.stringify({ - max_wait: n.maxWait, - timeout: n.timeout, - isolation_level: n.isolationLevel, - }), - a = await this.url("transaction/start"); - o(a); - let l = await je(a, { - method: "POST", - headers: this.headerBuilder.build({ traceparent: r.traceparent }), - body: s, - clientVersion: this.clientVersion, - }); - await this.handleError(await rr(l, this.clientVersion)); - let d = await l.json(), - { extensions: g } = d; - g && this.propagateResponseExtensions(g); - let h = d.id, - T = d["data-proxy"].endpoint; - return { id: h, payload: { endpoint: T } }; - } else { - let s = `${n.payload.endpoint}/${t}`; - o(s); - let a = await je(s, { - method: "POST", - headers: this.headerBuilder.build({ traceparent: r.traceparent }), - clientVersion: this.clientVersion, - }); - await this.handleError(await rr(a, this.clientVersion)); - let l = await a.json(), - { extensions: d } = l; - d && this.propagateResponseExtensions(d); - return; - } - }, - }); - } - getURLAndAPIKey() { - return Ms({ - clientVersion: this.clientVersion, - env: this.env, - inlineDatasources: this.inlineDatasources, - overrideDatasources: this.config.overrideDatasources, - }); - } - metrics() { - throw new Ve("Metrics are not yet supported for Accelerate", { - clientVersion: this.clientVersion, - }); - } - async withRetry(t) { - for (let r = 0; ; r++) { - let n = (i) => { - this.logEmitter.emit("info", { - message: `Calling ${i} (n=${r})`, - timestamp: new Date(), - target: "", - }); - }; - try { - return await t.callback({ logHttpCall: n }); - } catch (i) { - if (!(i instanceof ae) || !i.isRetryable) throw i; - if (r >= Vs) throw i instanceof ht ? i.cause : i; - this.logEmitter.emit("warn", { - message: `Attempt ${r + 1}/${Vs} failed for ${t.actionGerund}: ${i.message ?? "(unknown)"}`, - timestamp: new Date(), - target: "", - }); - let o = await Ns(r); - this.logEmitter.emit("warn", { - message: `Retrying after ${o}ms`, - timestamp: new Date(), - target: "", - }); - } - } - } - async handleError(t) { - if (t instanceof $e) - throw ( - await this.uploadSchema(), - new ht({ clientVersion: this.clientVersion, cause: t }) - ); - if (t) throw t; - } - convertProtocolErrorsToClientError(t) { - return t.length === 1 - ? Hr(t[0], this.config.clientVersion, this.config.activeProvider) - : new ie(JSON.stringify(t), { - clientVersion: this.config.clientVersion, - }); - } - applyPendingMigrations() { - throw new Error("Method not implemented."); - } - }; -f(); -u(); -c(); -p(); -m(); -function $s({ url: e, adapter: t, copyEngine: r, targetBuildType: n }) { - let i = [], - o = [], - s = (C) => { - i.push({ _tag: "warning", value: C }); - }, - a = (C) => { - let M = C.join(` -`); - o.push({ _tag: "error", value: M }); - }, - l = !!e?.startsWith("prisma://"), - d = yr(e), - g = !!t, - h = l || d; - !g && - r && - h && - n !== "client" && - n !== "wasm-compiler-edge" && - s([ - "recommend--no-engine", - "In production, we recommend using `prisma generate --no-engine` (See: `prisma generate --help`)", - ]); - let T = h || !r; - g && - (T || n === "edge") && - (n === "edge" - ? a([ - "Prisma Client was configured to use the `adapter` option but it was imported via its `/edge` endpoint.", - "Please either remove the `/edge` endpoint or remove the `adapter` from the Prisma Client constructor.", - ]) - : h - ? a([ - "You've provided both a driver adapter and an Accelerate database URL. Driver adapters currently cannot connect to Accelerate.", - "Please provide either a driver adapter with a direct database URL or an Accelerate URL and no driver adapter.", - ]) - : r || - a([ - "Prisma Client was configured to use the `adapter` option but `prisma generate` was run with `--no-engine`.", - "Please run `prisma generate` without `--no-engine` to be able to use Prisma Client with the adapter.", - ])); - let I = { accelerate: T, ppg: d, driverAdapters: g }; - function S(C) { - return C.length > 0; - } - return S(o) - ? { ok: !1, diagnostics: { warnings: i, errors: o }, isUsing: I } - : { ok: !0, diagnostics: { warnings: i }, isUsing: I }; -} -function js({ copyEngine: e = !0 }, t) { - let r; - try { - r = gt({ - inlineDatasources: t.inlineDatasources, - overrideDatasources: t.overrideDatasources, - env: { ...t.env, ...y.env }, - clientVersion: t.clientVersion, - }); - } catch {} - let { - ok: n, - isUsing: i, - diagnostics: o, - } = $s({ - url: r, - adapter: t.adapter, - copyEngine: e, - targetBuildType: "edge", - }); - for (let h of o.warnings) St(...h.value); - if (!n) { - let h = o.errors[0]; - throw new X(h.value, { clientVersion: t.clientVersion }); - } - let s = Ze(t.generator), - a = s === "library", - l = s === "binary", - d = s === "client", - g = (i.accelerate || i.ppg) && !i.driverAdapters; - return i.accelerate ? new Et(t) : (i.driverAdapters, new Et(t)); -} -f(); -u(); -c(); -p(); -m(); -function Gs({ generator: e }) { - return e?.previewFeatures ?? []; -} -f(); -u(); -c(); -p(); -m(); -var Js = (e) => ({ command: e }); -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -var Qs = (e) => e.strings.reduce((t, r, n) => `${t}@P${n}${r}`); -f(); -u(); -c(); -p(); -m(); -function bt(e) { - try { - return Ks(e, "fast"); - } catch { - return Ks(e, "slow"); - } -} -function Ks(e, t) { - return JSON.stringify(e.map((r) => Hs(r, t))); -} -function Hs(e, t) { - if (Array.isArray(e)) return e.map((r) => Hs(r, t)); - if (typeof e == "bigint") - return { prisma__type: "bigint", prisma__value: e.toString() }; - if (Xe(e)) return { prisma__type: "date", prisma__value: e.toJSON() }; - if (Ae.isDecimal(e)) - return { prisma__type: "decimal", prisma__value: e.toJSON() }; - if (w.Buffer.isBuffer(e)) - return { prisma__type: "bytes", prisma__value: e.toString("base64") }; - if (mp(e)) - return { - prisma__type: "bytes", - prisma__value: w.Buffer.from(e).toString("base64"), - }; - if (ArrayBuffer.isView(e)) { - let { buffer: r, byteOffset: n, byteLength: i } = e; - return { - prisma__type: "bytes", - prisma__value: w.Buffer.from(r, n, i).toString("base64"), - }; - } - return typeof e == "object" && t === "slow" ? zs(e) : e; -} -function mp(e) { - return e instanceof ArrayBuffer || e instanceof SharedArrayBuffer - ? !0 - : typeof e == "object" && e !== null - ? e[Symbol.toStringTag] === "ArrayBuffer" || - e[Symbol.toStringTag] === "SharedArrayBuffer" - : !1; -} -function zs(e) { - if (typeof e != "object" || e === null) return e; - if (typeof e.toJSON == "function") return e.toJSON(); - if (Array.isArray(e)) return e.map(Ws); - let t = {}; - for (let r of Object.keys(e)) t[r] = Ws(e[r]); - return t; -} -function Ws(e) { - return typeof e == "bigint" ? e.toString() : zs(e); -} -var fp = /^(\s*alter\s)/i, - Ys = z("prisma:client"); -function ii(e, t, r, n) { - if ( - !(e !== "postgresql" && e !== "cockroachdb") && - r.length > 0 && - fp.exec(t) - ) - throw new Error(`Running ALTER using ${n} is not supported +To solve this, provide the connection string directly: https://pris.ly/d/cloudflare-datasource-url`,n):new Q(`error: Environment variable not found: ${s.fromEnvVar}.`,n);if(i===void 0)throw new Q("error: Missing URL environment variable, value, or override.",n);return i}f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var Xr=class extends Error{clientVersion;cause;constructor(t,r){super(t),this.clientVersion=r.clientVersion,this.cause=r.cause}get[Symbol.toStringTag](){return this.name}};var ae=class extends Xr{isRetryable;constructor(t,r){super(t,r),this.isRetryable=r.isRetryable??!0}};f();u();c();p();m();function U(e,t){return{...e,isRetryable:t}}var qe=class extends ae{name="InvalidDatasourceError";code="P6001";constructor(t,r){super(t,U(r,!1))}};N(qe,"InvalidDatasourceError");function Ms(e){let t={clientVersion:e.clientVersion},r=Object.keys(e.inlineDatasources)[0],n=gt({inlineDatasources:e.inlineDatasources,overrideDatasources:e.overrideDatasources,clientVersion:e.clientVersion,env:{...e.env,...typeof y<"u"?y.env:{}}}),i;try{i=new URL(n)}catch{throw new qe(`Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\``,t)}let{protocol:o,searchParams:s}=i;if(o!=="prisma:"&&o!==hr)throw new qe(`Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\` or \`prisma+postgres://\``,t);let a=s.get("api_key");if(a===null||a.length<1)throw new qe(`Error validating datasource \`${r}\`: the URL must contain a valid API key`,t);let l=vn(i)?"http:":"https:";y.env.TEST_CLIENT_ENGINE_REMOTE_EXECUTOR&&i.searchParams.has("use_http")&&(l="http:");let d=new URL(i.href.replace(o,l));return{apiKey:a,url:d}}f();u();c();p();m();var _s=Qe(Xi()),en=class{apiKey;tracingHelper;logLevel;logQueries;engineHash;constructor({apiKey:t,tracingHelper:r,logLevel:n,logQueries:i,engineHash:o}){this.apiKey=t,this.tracingHelper=r,this.logLevel=n,this.logQueries=i,this.engineHash=o}build({traceparent:t,transactionId:r}={}){let n={Accept:"application/json",Authorization:`Bearer ${this.apiKey}`,"Content-Type":"application/json","Prisma-Engine-Hash":this.engineHash,"Prisma-Engine-Version":_s.enginesVersion};this.tracingHelper.isEnabled()&&(n.traceparent=t??this.tracingHelper.getTraceParent()),r&&(n["X-Transaction-Id"]=r);let i=this.#e();return i.length>0&&(n["X-Capture-Telemetry"]=i.join(", ")),n}#e(){let t=[];return this.tracingHelper.isEnabled()&&t.push("tracing"),this.logLevel&&t.push(this.logLevel),this.logQueries&&t.push("query"),t}};f();u();c();p();m();function ip(e){return e[0]*1e3+e[1]/1e6}function Yn(e){return new Date(ip(e))}f();u();c();p();m();f();u();c();p();m();var ht=class extends ae{name="ForcedRetryError";code="P5001";constructor(t){super("This request must be retried",U(t,!0))}};N(ht,"ForcedRetryError");f();u();c();p();m();var Ve=class extends ae{name="NotImplementedYetError";code="P5004";constructor(t,r){super(t,U(r,!1))}};N(Ve,"NotImplementedYetError");f();u();c();p();m();f();u();c();p();m();var G=class extends ae{response;constructor(t,r){super(t,r),this.response=r.response;let n=this.response.headers.get("prisma-request-id");if(n){let i=`(The request id was: ${n})`;this.message=this.message+" "+i}}};var $e=class extends G{name="SchemaMissingError";code="P5005";constructor(t){super("Schema needs to be uploaded",U(t,!0))}};N($e,"SchemaMissingError");f();u();c();p();m();f();u();c();p();m();var Zn="This request could not be understood by the server",Qt=class extends G{name="BadRequestError";code="P5000";constructor(t,r,n){super(r||Zn,U(t,!1)),n&&(this.code=n)}};N(Qt,"BadRequestError");f();u();c();p();m();var Kt=class extends G{name="HealthcheckTimeoutError";code="P5013";logs;constructor(t,r){super("Engine not started: healthcheck timeout",U(t,!0)),this.logs=r}};N(Kt,"HealthcheckTimeoutError");f();u();c();p();m();var Wt=class extends G{name="EngineStartupError";code="P5014";logs;constructor(t,r,n){super(r,U(t,!0)),this.logs=n}};N(Wt,"EngineStartupError");f();u();c();p();m();var Ht=class extends G{name="EngineVersionNotSupportedError";code="P5012";constructor(t){super("Engine version is not supported",U(t,!1))}};N(Ht,"EngineVersionNotSupportedError");f();u();c();p();m();var Xn="Request timed out",zt=class extends G{name="GatewayTimeoutError";code="P5009";constructor(t,r=Xn){super(r,U(t,!1))}};N(zt,"GatewayTimeoutError");f();u();c();p();m();var op="Interactive transaction error",Yt=class extends G{name="InteractiveTransactionError";code="P5015";constructor(t,r=op){super(r,U(t,!1))}};N(Yt,"InteractiveTransactionError");f();u();c();p();m();var sp="Request parameters are invalid",Zt=class extends G{name="InvalidRequestError";code="P5011";constructor(t,r=sp){super(r,U(t,!1))}};N(Zt,"InvalidRequestError");f();u();c();p();m();var ei="Requested resource does not exist",Xt=class extends G{name="NotFoundError";code="P5003";constructor(t,r=ei){super(r,U(t,!1))}};N(Xt,"NotFoundError");f();u();c();p();m();var ti="Unknown server error",yt=class extends G{name="ServerError";code="P5006";logs;constructor(t,r,n){super(r||ti,U(t,!0)),this.logs=n}};N(yt,"ServerError");f();u();c();p();m();var ri="Unauthorized, check your connection string",er=class extends G{name="UnauthorizedError";code="P5007";constructor(t,r=ri){super(r,U(t,!1))}};N(er,"UnauthorizedError");f();u();c();p();m();var ni="Usage exceeded, retry again later",tr=class extends G{name="UsageExceededError";code="P5008";constructor(t,r=ni){super(r,U(t,!0))}};N(tr,"UsageExceededError");async function ap(e){let t;try{t=await e.text()}catch{return{type:"EmptyError"}}try{let r=JSON.parse(t);if(typeof r=="string")switch(r){case"InternalDataProxyError":return{type:"DataProxyError",body:r};default:return{type:"UnknownTextError",body:r}}if(typeof r=="object"&&r!==null){if("is_panic"in r&&"message"in r&&"error_code"in r)return{type:"QueryEngineError",body:r};if("EngineNotStarted"in r||"InteractiveTransactionMisrouted"in r||"InvalidRequestError"in r){let n=Object.values(r)[0].reason;return typeof n=="string"&&!["SchemaMissing","EngineVersionNotSupported"].includes(n)?{type:"UnknownJsonError",body:r}:{type:"DataProxyError",body:r}}}return{type:"UnknownJsonError",body:r}}catch{return t===""?{type:"EmptyError"}:{type:"UnknownTextError",body:t}}}async function rr(e,t){if(e.ok)return;let r={clientVersion:t,response:e},n=await ap(e);if(n.type==="QueryEngineError")throw new ne(n.body.message,{code:n.body.error_code,clientVersion:t});if(n.type==="DataProxyError"){if(n.body==="InternalDataProxyError")throw new yt(r,"Internal Data Proxy error");if("EngineNotStarted"in n.body){if(n.body.EngineNotStarted.reason==="SchemaMissing")return new $e(r);if(n.body.EngineNotStarted.reason==="EngineVersionNotSupported")throw new Ht(r);if("EngineStartupError"in n.body.EngineNotStarted.reason){let{msg:i,logs:o}=n.body.EngineNotStarted.reason.EngineStartupError;throw new Wt(r,i,o)}if("KnownEngineStartupError"in n.body.EngineNotStarted.reason){let{msg:i,error_code:o}=n.body.EngineNotStarted.reason.KnownEngineStartupError;throw new Q(i,t,o)}if("HealthcheckTimeout"in n.body.EngineNotStarted.reason){let{logs:i}=n.body.EngineNotStarted.reason.HealthcheckTimeout;throw new Kt(r,i)}}if("InteractiveTransactionMisrouted"in n.body){let i={IDParseError:"Could not parse interactive transaction ID",NoQueryEngineFoundError:"Could not find Query Engine for the specified host and transaction ID",TransactionStartError:"Could not start interactive transaction"};throw new Yt(r,i[n.body.InteractiveTransactionMisrouted.reason])}if("InvalidRequestError"in n.body)throw new Zt(r,n.body.InvalidRequestError.reason)}if(e.status===401||e.status===403)throw new er(r,wt(ri,n));if(e.status===404)return new Xt(r,wt(ei,n));if(e.status===429)throw new tr(r,wt(ni,n));if(e.status===504)throw new zt(r,wt(Xn,n));if(e.status>=500)throw new yt(r,wt(ti,n));if(e.status>=400)throw new Qt(r,wt(Zn,n))}function wt(e,t){return t.type==="EmptyError"?e:`${e}: ${JSON.stringify(t)}`}f();u();c();p();m();function Ns(e){let t=Math.pow(2,e)*50,r=Math.ceil(Math.random()*t)-Math.ceil(t/2),n=t+r;return new Promise(i=>setTimeout(()=>i(n),n))}f();u();c();p();m();var Ce="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function Fs(e){let t=new TextEncoder().encode(e),r="",n=t.byteLength,i=n%3,o=n-i,s,a,l,d,g;for(let h=0;h>18,a=(g&258048)>>12,l=(g&4032)>>6,d=g&63,r+=Ce[s]+Ce[a]+Ce[l]+Ce[d];return i==1?(g=t[o],s=(g&252)>>2,a=(g&3)<<4,r+=Ce[s]+Ce[a]+"=="):i==2&&(g=t[o]<<8|t[o+1],s=(g&64512)>>10,a=(g&1008)>>4,l=(g&15)<<2,r+=Ce[s]+Ce[a]+Ce[l]+"="),r}f();u();c();p();m();function Ls(e){if(!!e.generator?.previewFeatures.some(r=>r.toLowerCase().includes("metrics")))throw new Q("The `metrics` preview feature is not yet available with Accelerate.\nPlease remove `metrics` from the `previewFeatures` in your schema.\n\nMore information about Accelerate: https://pris.ly/d/accelerate",e.clientVersion)}f();u();c();p();m();var Us={"@prisma/debug":"workspace:*","@prisma/engines-version":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/fetch-engine":"workspace:*","@prisma/get-platform":"workspace:*"};f();u();c();p();m();f();u();c();p();m();var nr=class extends ae{name="RequestError";code="P5010";constructor(t,r){super(`Cannot fetch data from service: +${t}`,U(r,!0))}};N(nr,"RequestError");async function je(e,t,r=n=>n){let{clientVersion:n,...i}=t,o=r(fetch);try{return await o(e,i)}catch(s){let a=s.message??"Unknown error";throw new nr(a,{clientVersion:n,cause:s})}}var up=/^[1-9][0-9]*\.[0-9]+\.[0-9]+$/,Bs=z("prisma:client:dataproxyEngine");async function cp(e,t){let r=Us["@prisma/engines-version"],n=t.clientVersion??"unknown";if(y.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION||globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION)return y.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION||globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION;if(e.includes("accelerate")&&n!=="0.0.0"&&n!=="in-memory")return n;let[i,o]=n?.split("-")??[];if(o===void 0&&up.test(i))return i;if(o!==void 0||n==="0.0.0"||n==="in-memory"){let[s]=r.split("-")??[],[a,l,d]=s.split("."),g=pp(`<=${a}.${l}.${d}`),h=await je(g,{clientVersion:n});if(!h.ok)throw new Error(`Failed to fetch stable Prisma version, unpkg.com status ${h.status} ${h.statusText}, response body: ${await h.text()||""}`);let T=await h.text();Bs("length of body fetched from unpkg.com",T.length);let I;try{I=JSON.parse(T)}catch(S){throw console.error("JSON.parse error: body fetched from unpkg.com: ",T),S}return I.version}throw new Ve("Only `major.minor.patch` versions are supported by Accelerate.",{clientVersion:n})}async function qs(e,t){let r=await cp(e,t);return Bs("version",r),r}function pp(e){return encodeURI(`https://unpkg.com/prisma@${e}/package.json`)}var Vs=3,ir=z("prisma:client:dataproxyEngine"),Et=class{name="DataProxyEngine";inlineSchema;inlineSchemaHash;inlineDatasources;config;logEmitter;env;clientVersion;engineHash;tracingHelper;remoteClientVersion;host;headerBuilder;startPromise;protocol;constructor(t){Ls(t),this.config=t,this.env=t.env,this.inlineSchema=Fs(t.inlineSchema),this.inlineDatasources=t.inlineDatasources,this.inlineSchemaHash=t.inlineSchemaHash,this.clientVersion=t.clientVersion,this.engineHash=t.engineVersion,this.logEmitter=t.logEmitter,this.tracingHelper=t.tracingHelper}apiKey(){return this.headerBuilder.apiKey}version(){return this.engineHash}async start(){this.startPromise!==void 0&&await this.startPromise,this.startPromise=(async()=>{let{apiKey:t,url:r}=this.getURLAndAPIKey();this.host=r.host,this.protocol=r.protocol,this.headerBuilder=new en({apiKey:t,tracingHelper:this.tracingHelper,logLevel:this.config.logLevel??"error",logQueries:this.config.logQueries,engineHash:this.engineHash}),this.remoteClientVersion=await qs(this.host,this.config),ir("host",this.host),ir("protocol",this.protocol)})(),await this.startPromise}async stop(){}propagateResponseExtensions(t){t?.logs?.length&&t.logs.forEach(r=>{switch(r.level){case"debug":case"trace":ir(r);break;case"error":case"warn":case"info":{this.logEmitter.emit(r.level,{timestamp:Yn(r.timestamp),message:r.attributes.message??"",target:r.target??"BinaryEngine"});break}case"query":{this.logEmitter.emit("query",{query:r.attributes.query??"",timestamp:Yn(r.timestamp),duration:r.attributes.duration_ms??0,params:r.attributes.params??"",target:r.target??"BinaryEngine"});break}default:r.level}}),t?.traces?.length&&this.tracingHelper.dispatchEngineSpans(t.traces)}onBeforeExit(){throw new Error('"beforeExit" hook is not applicable to the remote query engine')}async url(t){return await this.start(),`${this.protocol}//${this.host}/${this.remoteClientVersion}/${this.inlineSchemaHash}/${t}`}async uploadSchema(){let t={name:"schemaUpload",internal:!0};return this.tracingHelper.runInChildSpan(t,async()=>{let r=await je(await this.url("schema"),{method:"PUT",headers:this.headerBuilder.build(),body:this.inlineSchema,clientVersion:this.clientVersion});r.ok||ir("schema response status",r.status);let n=await rr(r,this.clientVersion);if(n)throw this.logEmitter.emit("warn",{message:`Error while uploading schema: ${n.message}`,timestamp:new Date,target:""}),n;this.logEmitter.emit("info",{message:`Schema (re)uploaded (hash: ${this.inlineSchemaHash})`,timestamp:new Date,target:""})})}request(t,{traceparent:r,interactiveTransaction:n,customDataProxyFetch:i}){return this.requestInternal({body:t,traceparent:r,interactiveTransaction:n,customDataProxyFetch:i})}async requestBatch(t,{traceparent:r,transaction:n,customDataProxyFetch:i}){let o=n?.kind==="itx"?n.options:void 0,s=Wr(t,n);return(await this.requestInternal({body:s,customDataProxyFetch:i,interactiveTransaction:o,traceparent:r})).map(l=>(l.extensions&&this.propagateResponseExtensions(l.extensions),"errors"in l?this.convertProtocolErrorsToClientError(l.errors):l))}requestInternal({body:t,traceparent:r,customDataProxyFetch:n,interactiveTransaction:i}){return this.withRetry({actionGerund:"querying",callback:async({logHttpCall:o})=>{let s=i?`${i.payload.endpoint}/graphql`:await this.url("graphql");o(s);let a=await je(s,{method:"POST",headers:this.headerBuilder.build({traceparent:r,transactionId:i?.id}),body:JSON.stringify(t),clientVersion:this.clientVersion},n);a.ok||ir("graphql response status",a.status),await this.handleError(await rr(a,this.clientVersion));let l=await a.json();if(l.extensions&&this.propagateResponseExtensions(l.extensions),"errors"in l)throw this.convertProtocolErrorsToClientError(l.errors);return"batchResult"in l?l.batchResult:l}})}async transaction(t,r,n){let i={start:"starting",commit:"committing",rollback:"rolling back"};return this.withRetry({actionGerund:`${i[t]} transaction`,callback:async({logHttpCall:o})=>{if(t==="start"){let s=JSON.stringify({max_wait:n.maxWait,timeout:n.timeout,isolation_level:n.isolationLevel}),a=await this.url("transaction/start");o(a);let l=await je(a,{method:"POST",headers:this.headerBuilder.build({traceparent:r.traceparent}),body:s,clientVersion:this.clientVersion});await this.handleError(await rr(l,this.clientVersion));let d=await l.json(),{extensions:g}=d;g&&this.propagateResponseExtensions(g);let h=d.id,T=d["data-proxy"].endpoint;return{id:h,payload:{endpoint:T}}}else{let s=`${n.payload.endpoint}/${t}`;o(s);let a=await je(s,{method:"POST",headers:this.headerBuilder.build({traceparent:r.traceparent}),clientVersion:this.clientVersion});await this.handleError(await rr(a,this.clientVersion));let l=await a.json(),{extensions:d}=l;d&&this.propagateResponseExtensions(d);return}}})}getURLAndAPIKey(){return Ms({clientVersion:this.clientVersion,env:this.env,inlineDatasources:this.inlineDatasources,overrideDatasources:this.config.overrideDatasources})}metrics(){throw new Ve("Metrics are not yet supported for Accelerate",{clientVersion:this.clientVersion})}async withRetry(t){for(let r=0;;r++){let n=i=>{this.logEmitter.emit("info",{message:`Calling ${i} (n=${r})`,timestamp:new Date,target:""})};try{return await t.callback({logHttpCall:n})}catch(i){if(!(i instanceof ae)||!i.isRetryable)throw i;if(r>=Vs)throw i instanceof ht?i.cause:i;this.logEmitter.emit("warn",{message:`Attempt ${r+1}/${Vs} failed for ${t.actionGerund}: ${i.message??"(unknown)"}`,timestamp:new Date,target:""});let o=await Ns(r);this.logEmitter.emit("warn",{message:`Retrying after ${o}ms`,timestamp:new Date,target:""})}}}async handleError(t){if(t instanceof $e)throw await this.uploadSchema(),new ht({clientVersion:this.clientVersion,cause:t});if(t)throw t}convertProtocolErrorsToClientError(t){return t.length===1?Hr(t[0],this.config.clientVersion,this.config.activeProvider):new ie(JSON.stringify(t),{clientVersion:this.config.clientVersion})}applyPendingMigrations(){throw new Error("Method not implemented.")}};f();u();c();p();m();function $s({url:e,adapter:t,copyEngine:r,targetBuildType:n}){let i=[],o=[],s=C=>{i.push({_tag:"warning",value:C})},a=C=>{let M=C.join(` +`);o.push({_tag:"error",value:M})},l=!!e?.startsWith("prisma://"),d=yr(e),g=!!t,h=l||d;!g&&r&&h&&n!=="client"&&n!=="wasm-compiler-edge"&&s(["recommend--no-engine","In production, we recommend using `prisma generate --no-engine` (See: `prisma generate --help`)"]);let T=h||!r;g&&(T||n==="edge")&&(n==="edge"?a(["Prisma Client was configured to use the `adapter` option but it was imported via its `/edge` endpoint.","Please either remove the `/edge` endpoint or remove the `adapter` from the Prisma Client constructor."]):h?a(["You've provided both a driver adapter and an Accelerate database URL. Driver adapters currently cannot connect to Accelerate.","Please provide either a driver adapter with a direct database URL or an Accelerate URL and no driver adapter."]):r||a(["Prisma Client was configured to use the `adapter` option but `prisma generate` was run with `--no-engine`.","Please run `prisma generate` without `--no-engine` to be able to use Prisma Client with the adapter."]));let I={accelerate:T,ppg:d,driverAdapters:g};function S(C){return C.length>0}return S(o)?{ok:!1,diagnostics:{warnings:i,errors:o},isUsing:I}:{ok:!0,diagnostics:{warnings:i},isUsing:I}}function js({copyEngine:e=!0},t){let r;try{r=gt({inlineDatasources:t.inlineDatasources,overrideDatasources:t.overrideDatasources,env:{...t.env,...y.env},clientVersion:t.clientVersion})}catch{}let{ok:n,isUsing:i,diagnostics:o}=$s({url:r,adapter:t.adapter,copyEngine:e,targetBuildType:"edge"});for(let h of o.warnings)St(...h.value);if(!n){let h=o.errors[0];throw new X(h.value,{clientVersion:t.clientVersion})}let s=Ze(t.generator),a=s==="library",l=s==="binary",d=s==="client",g=(i.accelerate||i.ppg)&&!i.driverAdapters;return i.accelerate?new Et(t):(i.driverAdapters,new Et(t))}f();u();c();p();m();function Gs({generator:e}){return e?.previewFeatures??[]}f();u();c();p();m();var Js=e=>({command:e});f();u();c();p();m();f();u();c();p();m();var Qs=e=>e.strings.reduce((t,r,n)=>`${t}@P${n}${r}`);f();u();c();p();m();function bt(e){try{return Ks(e,"fast")}catch{return Ks(e,"slow")}}function Ks(e,t){return JSON.stringify(e.map(r=>Hs(r,t)))}function Hs(e,t){if(Array.isArray(e))return e.map(r=>Hs(r,t));if(typeof e=="bigint")return{prisma__type:"bigint",prisma__value:e.toString()};if(Xe(e))return{prisma__type:"date",prisma__value:e.toJSON()};if(Ae.isDecimal(e))return{prisma__type:"decimal",prisma__value:e.toJSON()};if(w.Buffer.isBuffer(e))return{prisma__type:"bytes",prisma__value:e.toString("base64")};if(mp(e))return{prisma__type:"bytes",prisma__value:w.Buffer.from(e).toString("base64")};if(ArrayBuffer.isView(e)){let{buffer:r,byteOffset:n,byteLength:i}=e;return{prisma__type:"bytes",prisma__value:w.Buffer.from(r,n,i).toString("base64")}}return typeof e=="object"&&t==="slow"?zs(e):e}function mp(e){return e instanceof ArrayBuffer||e instanceof SharedArrayBuffer?!0:typeof e=="object"&&e!==null?e[Symbol.toStringTag]==="ArrayBuffer"||e[Symbol.toStringTag]==="SharedArrayBuffer":!1}function zs(e){if(typeof e!="object"||e===null)return e;if(typeof e.toJSON=="function")return e.toJSON();if(Array.isArray(e))return e.map(Ws);let t={};for(let r of Object.keys(e))t[r]=Ws(e[r]);return t}function Ws(e){return typeof e=="bigint"?e.toString():zs(e)}var fp=/^(\s*alter\s)/i,Ys=z("prisma:client");function ii(e,t,r,n){if(!(e!=="postgresql"&&e!=="cockroachdb")&&r.length>0&&fp.exec(t))throw new Error(`Running ALTER using ${n} is not supported Using the example below you can still execute your query with Prisma, but please note that it is vulnerable to SQL injection attacks and requires you to take care of input sanitization. Example: await prisma.$executeRawUnsafe(\`ALTER USER prisma WITH PASSWORD '\${password}'\`) More Information: https://pris.ly/d/execute-raw -`); -} -var oi = - ({ clientMethod: e, activeProvider: t }) => - (r) => { - let n = "", - i; - if (Gr(r)) - ((n = r.sql), - (i = { values: bt(r.values), __prismaRawParameters__: !0 })); - else if (Array.isArray(r)) { - let [o, ...s] = r; - ((n = o), (i = { values: bt(s || []), __prismaRawParameters__: !0 })); - } else - switch (t) { - case "sqlite": - case "mysql": { - ((n = r.sql), - (i = { values: bt(r.values), __prismaRawParameters__: !0 })); - break; - } - case "cockroachdb": - case "postgresql": - case "postgres": { - ((n = r.text), - (i = { values: bt(r.values), __prismaRawParameters__: !0 })); - break; - } - case "sqlserver": { - ((n = Qs(r)), - (i = { values: bt(r.values), __prismaRawParameters__: !0 })); - break; - } - default: - throw new Error(`The ${t} provider does not support ${e}`); - } - return ( - i?.values - ? Ys(`prisma.${e}(${n}, ${i.values})`) - : Ys(`prisma.${e}(${n})`), - { query: n, parameters: i } - ); - }, - Zs = { - requestArgsToMiddlewareArgs(e) { - return [e.strings, ...e.values]; - }, - middlewareArgsToRequestArgs(e) { - let [t, ...r] = e; - return new se(t, r); - }, - }, - Xs = { - requestArgsToMiddlewareArgs(e) { - return [e]; - }, - middlewareArgsToRequestArgs(e) { - return e[0]; - }, - }; -f(); -u(); -c(); -p(); -m(); -function si(e) { - return function (r, n) { - let i, - o = (s = e) => { - try { - return s === void 0 || s?.kind === "itx" - ? (i ??= ea(r(s))) - : ea(r(s)); - } catch (a) { - return Promise.reject(a); - } - }; - return { - get spec() { - return n; - }, - then(s, a) { - return o().then(s, a); - }, - catch(s) { - return o().catch(s); - }, - finally(s) { - return o().finally(s); - }, - requestTransaction(s) { - let a = o(s); - return a.requestTransaction ? a.requestTransaction(s) : a; - }, - [Symbol.toStringTag]: "PrismaPromise", - }; - }; -} -function ea(e) { - return typeof e.then == "function" ? e : Promise.resolve(e); -} -f(); -u(); -c(); -p(); -m(); -var dp = xn.split(".")[0], - gp = { - isEnabled() { - return !1; - }, - getTraceParent() { - return "00-10-10-00"; - }, - dispatchEngineSpans() {}, - getActiveContext() {}, - runInChildSpan(e, t) { - return t(); - }, - }, - ai = class { - isEnabled() { - return this.getGlobalTracingHelper().isEnabled(); - } - getTraceParent(t) { - return this.getGlobalTracingHelper().getTraceParent(t); - } - dispatchEngineSpans(t) { - return this.getGlobalTracingHelper().dispatchEngineSpans(t); - } - getActiveContext() { - return this.getGlobalTracingHelper().getActiveContext(); - } - runInChildSpan(t, r) { - return this.getGlobalTracingHelper().runInChildSpan(t, r); - } - getGlobalTracingHelper() { - let t = globalThis[`V${dp}_PRISMA_INSTRUMENTATION`], - r = globalThis.PRISMA_INSTRUMENTATION; - return t?.helper ?? r?.helper ?? gp; - } - }; -function ta() { - return new ai(); -} -f(); -u(); -c(); -p(); -m(); -function ra(e, t = () => {}) { - let r, - n = new Promise((i) => (r = i)); - return { - then(i) { - return (--e === 0 && r(t()), i?.(n)); - }, - }; -} -f(); -u(); -c(); -p(); -m(); -function na(e) { - return typeof e == "string" - ? e - : e.reduce( - (t, r) => { - let n = typeof r == "string" ? r : r.level; - return n === "query" - ? t - : t && (r === "info" || t === "info") - ? "info" - : n; - }, - void 0, - ); -} -f(); -u(); -c(); -p(); -m(); -f(); -u(); -c(); -p(); -m(); -function tn(e) { - return typeof e.batchRequestIdx == "number"; -} -f(); -u(); -c(); -p(); -m(); -function ia(e) { - if (e.action !== "findUnique" && e.action !== "findUniqueOrThrow") return; - let t = []; - return ( - e.modelName && t.push(e.modelName), - e.query.arguments && t.push(li(e.query.arguments)), - t.push(li(e.query.selection)), - t.join("") - ); -} -function li(e) { - return `(${Object.keys(e) - .sort() - .map((r) => { - let n = e[r]; - return typeof n == "object" && n !== null ? `(${r} ${li(n)})` : r; - }) - .join(" ")})`; -} -f(); -u(); -c(); -p(); -m(); -var hp = { - aggregate: !1, - aggregateRaw: !1, - createMany: !0, - createManyAndReturn: !0, - createOne: !0, - deleteMany: !0, - deleteOne: !0, - executeRaw: !0, - findFirst: !1, - findFirstOrThrow: !1, - findMany: !1, - findRaw: !1, - findUnique: !1, - findUniqueOrThrow: !1, - groupBy: !1, - queryRaw: !1, - runCommandRaw: !0, - updateMany: !0, - updateManyAndReturn: !0, - updateOne: !0, - upsertOne: !0, -}; -function ui(e) { - return hp[e]; -} -f(); -u(); -c(); -p(); -m(); -var rn = class { - constructor(t) { - this.options = t; - this.batches = {}; - } - batches; - tickActive = !1; - request(t) { - let r = this.options.batchBy(t); - return r - ? (this.batches[r] || - ((this.batches[r] = []), - this.tickActive || - ((this.tickActive = !0), - y.nextTick(() => { - (this.dispatchBatches(), (this.tickActive = !1)); - }))), - new Promise((n, i) => { - this.batches[r].push({ request: t, resolve: n, reject: i }); - })) - : this.options.singleLoader(t); - } - dispatchBatches() { - for (let t in this.batches) { - let r = this.batches[t]; - (delete this.batches[t], - r.length === 1 - ? this.options - .singleLoader(r[0].request) - .then((n) => { - n instanceof Error ? r[0].reject(n) : r[0].resolve(n); - }) - .catch((n) => { - r[0].reject(n); - }) - : (r.sort((n, i) => this.options.batchOrder(n.request, i.request)), - this.options - .batchLoader(r.map((n) => n.request)) - .then((n) => { - if (n instanceof Error) - for (let i = 0; i < r.length; i++) r[i].reject(n); - else - for (let i = 0; i < r.length; i++) { - let o = n[i]; - o instanceof Error ? r[i].reject(o) : r[i].resolve(o); - } - }) - .catch((n) => { - for (let i = 0; i < r.length; i++) r[i].reject(n); - }))); - } - } - get [Symbol.toStringTag]() { - return "DataLoader"; - } -}; -f(); -u(); -c(); -p(); -m(); -function Ge(e, t) { - if (t === null) return t; - switch (e) { - case "bigint": - return BigInt(t); - case "bytes": { - let { - buffer: r, - byteOffset: n, - byteLength: i, - } = w.Buffer.from(t, "base64"); - return new Uint8Array(r, n, i); - } - case "decimal": - return new Ae(t); - case "datetime": - case "date": - return new Date(t); - case "time": - return new Date(`1970-01-01T${t}Z`); - case "bigint-array": - return t.map((r) => Ge("bigint", r)); - case "bytes-array": - return t.map((r) => Ge("bytes", r)); - case "decimal-array": - return t.map((r) => Ge("decimal", r)); - case "datetime-array": - return t.map((r) => Ge("datetime", r)); - case "date-array": - return t.map((r) => Ge("date", r)); - case "time-array": - return t.map((r) => Ge("time", r)); - default: - return t; - } -} -function nn(e) { - let t = [], - r = yp(e); - for (let n = 0; n < e.rows.length; n++) { - let i = e.rows[n], - o = { ...r }; - for (let s = 0; s < i.length; s++) o[e.columns[s]] = Ge(e.types[s], i[s]); - t.push(o); - } - return t; -} -function yp(e) { - let t = {}; - for (let r = 0; r < e.columns.length; r++) t[e.columns[r]] = null; - return t; -} -var wp = z("prisma:client:request_handler"), - on = class { - client; - dataloader; - logEmitter; - constructor(t, r) { - ((this.logEmitter = r), - (this.client = t), - (this.dataloader = new rn({ - batchLoader: Ts(async ({ requests: n, customDataProxyFetch: i }) => { - let { transaction: o, otelParentCtx: s } = n[0], - a = n.map((h) => h.protocolQuery), - l = this.client._tracingHelper.getTraceParent(s), - d = n.some((h) => ui(h.protocolQuery.action)); - return ( - await this.client._engine.requestBatch(a, { - traceparent: l, - transaction: Ep(o), - containsWrite: d, - customDataProxyFetch: i, - }) - ).map((h, T) => { - if (h instanceof Error) return h; - try { - return this.mapQueryEngineResult(n[T], h); - } catch (I) { - return I; - } - }); - }), - singleLoader: async (n) => { - let i = n.transaction?.kind === "itx" ? oa(n.transaction) : void 0, - o = await this.client._engine.request(n.protocolQuery, { - traceparent: this.client._tracingHelper.getTraceParent(), - interactiveTransaction: i, - isWrite: ui(n.protocolQuery.action), - customDataProxyFetch: n.customDataProxyFetch, - }); - return this.mapQueryEngineResult(n, o); - }, - batchBy: (n) => - n.transaction?.id - ? `transaction-${n.transaction.id}` - : ia(n.protocolQuery), - batchOrder(n, i) { - return n.transaction?.kind === "batch" && - i.transaction?.kind === "batch" - ? n.transaction.index - i.transaction.index - : 0; - }, - }))); - } - async request(t) { - try { - return await this.dataloader.request(t); - } catch (r) { - let { - clientMethod: n, - callsite: i, - transaction: o, - args: s, - modelName: a, - } = t; - this.handleAndLogRequestError({ - error: r, - clientMethod: n, - callsite: i, - transaction: o, - args: s, - modelName: a, - globalOmit: t.globalOmit, - }); - } - } - mapQueryEngineResult({ dataPath: t, unpacker: r }, n) { - let i = n?.data, - o = this.unpack(i, t, r); - return y.env.PRISMA_CLIENT_GET_TIME ? { data: o } : o; - } - handleAndLogRequestError(t) { - try { - this.handleRequestError(t); - } catch (r) { - throw ( - this.logEmitter && - this.logEmitter.emit("error", { - message: r.message, - target: t.clientMethod, - timestamp: new Date(), - }), - r - ); - } - } - handleRequestError({ - error: t, - clientMethod: r, - callsite: n, - transaction: i, - args: o, - modelName: s, - globalOmit: a, - }) { - if ((wp(t), bp(t, i))) throw t; - if (t instanceof ne && xp(t)) { - let d = sa(t.meta); - Ur({ - args: o, - errors: [d], - callsite: n, - errorFormat: this.client._errorFormat, - originalMethod: r, - clientVersion: this.client._clientVersion, - globalOmit: a, - }); - } - let l = t.message; - if ( - (n && - (l = Sr({ - callsite: n, - originalMethod: r, - isPanic: t.isPanic, - showColors: this.client._errorFormat === "pretty", - message: l, - })), - (l = this.sanitizeMessage(l)), - t.code) - ) { - let d = s ? { modelName: s, ...t.meta } : t.meta; - throw new ne(l, { - code: t.code, - clientVersion: this.client._clientVersion, - meta: d, - batchRequestIdx: t.batchRequestIdx, - }); - } else { - if (t.isPanic) throw new Pe(l, this.client._clientVersion); - if (t instanceof ie) - throw new ie(l, { - clientVersion: this.client._clientVersion, - batchRequestIdx: t.batchRequestIdx, - }); - if (t instanceof Q) throw new Q(l, this.client._clientVersion); - if (t instanceof Pe) throw new Pe(l, this.client._clientVersion); - } - throw ((t.clientVersion = this.client._clientVersion), t); - } - sanitizeMessage(t) { - return this.client._errorFormat && this.client._errorFormat !== "pretty" - ? Rn(t) - : t; - } - unpack(t, r, n) { - if (!t || (t.data && (t = t.data), !t)) return t; - let i = Object.keys(t)[0], - o = Object.values(t)[0], - s = r.filter((d) => d !== "select" && d !== "include"), - a = Kn(o, s), - l = i === "queryRaw" ? nn(a) : dt(a); - return n ? n(l) : l; - } - get [Symbol.toStringTag]() { - return "RequestHandler"; - } - }; -function Ep(e) { - if (e) { - if (e.kind === "batch") - return { kind: "batch", options: { isolationLevel: e.isolationLevel } }; - if (e.kind === "itx") return { kind: "itx", options: oa(e) }; - Ue(e, "Unknown transaction kind"); - } -} -function oa(e) { - return { id: e.id, payload: e.payload }; -} -function bp(e, t) { - return tn(e) && t?.kind === "batch" && e.batchRequestIdx !== t.index; -} -function xp(e) { - return e.code === "P2009" || e.code === "P2012"; -} -function sa(e) { - if (e.kind === "Union") return { kind: "Union", errors: e.errors.map(sa) }; - if (Array.isArray(e.selectionPath)) { - let [, ...t] = e.selectionPath; - return { ...e, selectionPath: t }; - } - return e; -} -f(); -u(); -c(); -p(); -m(); -var aa = Ds; -f(); -u(); -c(); -p(); -m(); -var ma = Qe(Nn()); -f(); -u(); -c(); -p(); -m(); -var q = class extends Error { - constructor(t) { - (super( - t + - ` -Read more at https://pris.ly/d/client-constructor`, - ), - (this.name = "PrismaClientConstructorValidationError")); - } - get [Symbol.toStringTag]() { - return "PrismaClientConstructorValidationError"; - } -}; -N(q, "PrismaClientConstructorValidationError"); -var la = [ - "datasources", - "datasourceUrl", - "errorFormat", - "adapter", - "log", - "transactionOptions", - "omit", - "__internal", - ], - ua = ["pretty", "colorless", "minimal"], - ca = ["info", "query", "warn", "error"], - Pp = { - datasources: (e, { datasourceNames: t }) => { - if (e) { - if (typeof e != "object" || Array.isArray(e)) - throw new q( - `Invalid value ${JSON.stringify(e)} for "datasources" provided to PrismaClient constructor`, - ); - for (let [r, n] of Object.entries(e)) { - if (!t.includes(r)) { - let i = xt(r, t) || ` Available datasources: ${t.join(", ")}`; - throw new q( - `Unknown datasource ${r} provided to PrismaClient constructor.${i}`, - ); - } - if (typeof n != "object" || Array.isArray(n)) - throw new q(`Invalid value ${JSON.stringify(e)} for datasource "${r}" provided to PrismaClient constructor. -It should have this form: { url: "CONNECTION_STRING" }`); - if (n && typeof n == "object") - for (let [i, o] of Object.entries(n)) { - if (i !== "url") - throw new q(`Invalid value ${JSON.stringify(e)} for datasource "${r}" provided to PrismaClient constructor. -It should have this form: { url: "CONNECTION_STRING" }`); - if (typeof o != "string") - throw new q(`Invalid value ${JSON.stringify(o)} for datasource "${r}" provided to PrismaClient constructor. -It should have this form: { url: "CONNECTION_STRING" }`); - } - } - } - }, - adapter: (e, t) => { - if (!e && Ze(t.generator) === "client") - throw new q( - 'Using engine type "client" requires a driver adapter to be provided to PrismaClient constructor.', - ); - if (e !== null) { - if (e === void 0) - throw new q( - '"adapter" property must not be undefined, use null to conditionally disable driver adapters.', - ); - if (Ze(t.generator) === "binary") - throw new q( - 'Cannot use a driver adapter with the "binary" Query Engine. Please use the "library" Query Engine.', - ); - } - }, - datasourceUrl: (e) => { - if (typeof e < "u" && typeof e != "string") - throw new q(`Invalid value ${JSON.stringify(e)} for "datasourceUrl" provided to PrismaClient constructor. -Expected string or undefined.`); - }, - errorFormat: (e) => { - if (e) { - if (typeof e != "string") - throw new q( - `Invalid value ${JSON.stringify(e)} for "errorFormat" provided to PrismaClient constructor.`, - ); - if (!ua.includes(e)) { - let t = xt(e, ua); - throw new q( - `Invalid errorFormat ${e} provided to PrismaClient constructor.${t}`, - ); - } - } - }, - log: (e) => { - if (!e) return; - if (!Array.isArray(e)) - throw new q( - `Invalid value ${JSON.stringify(e)} for "log" provided to PrismaClient constructor.`, - ); - function t(r) { - if (typeof r == "string" && !ca.includes(r)) { - let n = xt(r, ca); - throw new q( - `Invalid log level "${r}" provided to PrismaClient constructor.${n}`, - ); - } - } - for (let r of e) { - t(r); - let n = { - level: t, - emit: (i) => { - let o = ["stdout", "event"]; - if (!o.includes(i)) { - let s = xt(i, o); - throw new q( - `Invalid value ${JSON.stringify(i)} for "emit" in logLevel provided to PrismaClient constructor.${s}`, - ); - } - }, - }; - if (r && typeof r == "object") - for (let [i, o] of Object.entries(r)) - if (n[i]) n[i](o); - else - throw new q( - `Invalid property ${i} for "log" provided to PrismaClient constructor`, - ); - } - }, - transactionOptions: (e) => { - if (!e) return; - let t = e.maxWait; - if (t != null && t <= 0) - throw new q( - `Invalid value ${t} for maxWait in "transactionOptions" provided to PrismaClient constructor. maxWait needs to be greater than 0`, - ); - let r = e.timeout; - if (r != null && r <= 0) - throw new q( - `Invalid value ${r} for timeout in "transactionOptions" provided to PrismaClient constructor. timeout needs to be greater than 0`, - ); - }, - omit: (e, t) => { - if (typeof e != "object") - throw new q('"omit" option is expected to be an object.'); - if (e === null) throw new q('"omit" option can not be `null`'); - let r = []; - for (let [n, i] of Object.entries(e)) { - let o = Tp(n, t.runtimeDataModel); - if (!o) { - r.push({ kind: "UnknownModel", modelKey: n }); - continue; - } - for (let [s, a] of Object.entries(i)) { - let l = o.fields.find((d) => d.name === s); - if (!l) { - r.push({ kind: "UnknownField", modelKey: n, fieldName: s }); - continue; - } - if (l.relationName) { - r.push({ kind: "RelationInOmit", modelKey: n, fieldName: s }); - continue; - } - typeof a != "boolean" && - r.push({ kind: "InvalidFieldValue", modelKey: n, fieldName: s }); - } - } - if (r.length > 0) throw new q(Ap(e, r)); - }, - __internal: (e) => { - if (!e) return; - let t = ["debug", "engine", "configOverride"]; - if (typeof e != "object") - throw new q( - `Invalid value ${JSON.stringify(e)} for "__internal" to PrismaClient constructor`, - ); - for (let [r] of Object.entries(e)) - if (!t.includes(r)) { - let n = xt(r, t); - throw new q( - `Invalid property ${JSON.stringify(r)} for "__internal" provided to PrismaClient constructor.${n}`, - ); - } - }, - }; -function fa(e, t) { - for (let [r, n] of Object.entries(e)) { - if (!la.includes(r)) { - let i = xt(r, la); - throw new q( - `Unknown property ${r} provided to PrismaClient constructor.${i}`, - ); - } - Pp[r](n, t); - } - if (e.datasourceUrl && e.datasources) - throw new q( - 'Can not use "datasourceUrl" and "datasources" options at the same time. Pick one of them', - ); -} -function xt(e, t) { - if (t.length === 0 || typeof e != "string") return ""; - let r = vp(e, t); - return r ? ` Did you mean "${r}"?` : ""; -} -function vp(e, t) { - if (t.length === 0) return null; - let r = t.map((i) => ({ value: i, distance: (0, ma.default)(e, i) })); - r.sort((i, o) => (i.distance < o.distance ? -1 : 1)); - let n = r[0]; - return n.distance < 3 ? n.value : null; -} -function Tp(e, t) { - return pa(t.models, e) ?? pa(t.types, e); -} -function pa(e, t) { - let r = Object.keys(e).find((n) => Ie(n) === t); - if (r) return e[r]; -} -function Ap(e, t) { - let r = ut(e); - for (let o of t) - switch (o.kind) { - case "UnknownModel": - (r.arguments.getField(o.modelKey)?.markAsError(), - r.addErrorMessage(() => `Unknown model name: ${o.modelKey}.`)); - break; - case "UnknownField": - (r.arguments.getDeepField([o.modelKey, o.fieldName])?.markAsError(), - r.addErrorMessage( - () => - `Model "${o.modelKey}" does not have a field named "${o.fieldName}".`, - )); - break; - case "RelationInOmit": - (r.arguments.getDeepField([o.modelKey, o.fieldName])?.markAsError(), - r.addErrorMessage( - () => - 'Relations are already excluded by default and can not be specified in "omit".', - )); - break; - case "InvalidFieldValue": - (r.arguments - .getDeepFieldValue([o.modelKey, o.fieldName]) - ?.markAsError(), - r.addErrorMessage( - () => "Omit field option value must be a boolean.", - )); - break; - } - let { message: n, args: i } = Lr(r, "colorless"); - return `Error validating "omit" option: +`)}var oi=({clientMethod:e,activeProvider:t})=>r=>{let n="",i;if(Gr(r))n=r.sql,i={values:bt(r.values),__prismaRawParameters__:!0};else if(Array.isArray(r)){let[o,...s]=r;n=o,i={values:bt(s||[]),__prismaRawParameters__:!0}}else switch(t){case"sqlite":case"mysql":{n=r.sql,i={values:bt(r.values),__prismaRawParameters__:!0};break}case"cockroachdb":case"postgresql":case"postgres":{n=r.text,i={values:bt(r.values),__prismaRawParameters__:!0};break}case"sqlserver":{n=Qs(r),i={values:bt(r.values),__prismaRawParameters__:!0};break}default:throw new Error(`The ${t} provider does not support ${e}`)}return i?.values?Ys(`prisma.${e}(${n}, ${i.values})`):Ys(`prisma.${e}(${n})`),{query:n,parameters:i}},Zs={requestArgsToMiddlewareArgs(e){return[e.strings,...e.values]},middlewareArgsToRequestArgs(e){let[t,...r]=e;return new se(t,r)}},Xs={requestArgsToMiddlewareArgs(e){return[e]},middlewareArgsToRequestArgs(e){return e[0]}};f();u();c();p();m();function si(e){return function(r,n){let i,o=(s=e)=>{try{return s===void 0||s?.kind==="itx"?i??=ea(r(s)):ea(r(s))}catch(a){return Promise.reject(a)}};return{get spec(){return n},then(s,a){return o().then(s,a)},catch(s){return o().catch(s)},finally(s){return o().finally(s)},requestTransaction(s){let a=o(s);return a.requestTransaction?a.requestTransaction(s):a},[Symbol.toStringTag]:"PrismaPromise"}}}function ea(e){return typeof e.then=="function"?e:Promise.resolve(e)}f();u();c();p();m();var dp=xn.split(".")[0],gp={isEnabled(){return!1},getTraceParent(){return"00-10-10-00"},dispatchEngineSpans(){},getActiveContext(){},runInChildSpan(e,t){return t()}},ai=class{isEnabled(){return this.getGlobalTracingHelper().isEnabled()}getTraceParent(t){return this.getGlobalTracingHelper().getTraceParent(t)}dispatchEngineSpans(t){return this.getGlobalTracingHelper().dispatchEngineSpans(t)}getActiveContext(){return this.getGlobalTracingHelper().getActiveContext()}runInChildSpan(t,r){return this.getGlobalTracingHelper().runInChildSpan(t,r)}getGlobalTracingHelper(){let t=globalThis[`V${dp}_PRISMA_INSTRUMENTATION`],r=globalThis.PRISMA_INSTRUMENTATION;return t?.helper??r?.helper??gp}};function ta(){return new ai}f();u();c();p();m();function ra(e,t=()=>{}){let r,n=new Promise(i=>r=i);return{then(i){return--e===0&&r(t()),i?.(n)}}}f();u();c();p();m();function na(e){return typeof e=="string"?e:e.reduce((t,r)=>{let n=typeof r=="string"?r:r.level;return n==="query"?t:t&&(r==="info"||t==="info")?"info":n},void 0)}f();u();c();p();m();f();u();c();p();m();function tn(e){return typeof e.batchRequestIdx=="number"}f();u();c();p();m();function ia(e){if(e.action!=="findUnique"&&e.action!=="findUniqueOrThrow")return;let t=[];return e.modelName&&t.push(e.modelName),e.query.arguments&&t.push(li(e.query.arguments)),t.push(li(e.query.selection)),t.join("")}function li(e){return`(${Object.keys(e).sort().map(r=>{let n=e[r];return typeof n=="object"&&n!==null?`(${r} ${li(n)})`:r}).join(" ")})`}f();u();c();p();m();var hp={aggregate:!1,aggregateRaw:!1,createMany:!0,createManyAndReturn:!0,createOne:!0,deleteMany:!0,deleteOne:!0,executeRaw:!0,findFirst:!1,findFirstOrThrow:!1,findMany:!1,findRaw:!1,findUnique:!1,findUniqueOrThrow:!1,groupBy:!1,queryRaw:!1,runCommandRaw:!0,updateMany:!0,updateManyAndReturn:!0,updateOne:!0,upsertOne:!0};function ui(e){return hp[e]}f();u();c();p();m();var rn=class{constructor(t){this.options=t;this.batches={}}batches;tickActive=!1;request(t){let r=this.options.batchBy(t);return r?(this.batches[r]||(this.batches[r]=[],this.tickActive||(this.tickActive=!0,y.nextTick(()=>{this.dispatchBatches(),this.tickActive=!1}))),new Promise((n,i)=>{this.batches[r].push({request:t,resolve:n,reject:i})})):this.options.singleLoader(t)}dispatchBatches(){for(let t in this.batches){let r=this.batches[t];delete this.batches[t],r.length===1?this.options.singleLoader(r[0].request).then(n=>{n instanceof Error?r[0].reject(n):r[0].resolve(n)}).catch(n=>{r[0].reject(n)}):(r.sort((n,i)=>this.options.batchOrder(n.request,i.request)),this.options.batchLoader(r.map(n=>n.request)).then(n=>{if(n instanceof Error)for(let i=0;i{for(let i=0;iGe("bigint",r));case"bytes-array":return t.map(r=>Ge("bytes",r));case"decimal-array":return t.map(r=>Ge("decimal",r));case"datetime-array":return t.map(r=>Ge("datetime",r));case"date-array":return t.map(r=>Ge("date",r));case"time-array":return t.map(r=>Ge("time",r));default:return t}}function nn(e){let t=[],r=yp(e);for(let n=0;n{let{transaction:o,otelParentCtx:s}=n[0],a=n.map(h=>h.protocolQuery),l=this.client._tracingHelper.getTraceParent(s),d=n.some(h=>ui(h.protocolQuery.action));return(await this.client._engine.requestBatch(a,{traceparent:l,transaction:Ep(o),containsWrite:d,customDataProxyFetch:i})).map((h,T)=>{if(h instanceof Error)return h;try{return this.mapQueryEngineResult(n[T],h)}catch(I){return I}})}),singleLoader:async n=>{let i=n.transaction?.kind==="itx"?oa(n.transaction):void 0,o=await this.client._engine.request(n.protocolQuery,{traceparent:this.client._tracingHelper.getTraceParent(),interactiveTransaction:i,isWrite:ui(n.protocolQuery.action),customDataProxyFetch:n.customDataProxyFetch});return this.mapQueryEngineResult(n,o)},batchBy:n=>n.transaction?.id?`transaction-${n.transaction.id}`:ia(n.protocolQuery),batchOrder(n,i){return n.transaction?.kind==="batch"&&i.transaction?.kind==="batch"?n.transaction.index-i.transaction.index:0}})}async request(t){try{return await this.dataloader.request(t)}catch(r){let{clientMethod:n,callsite:i,transaction:o,args:s,modelName:a}=t;this.handleAndLogRequestError({error:r,clientMethod:n,callsite:i,transaction:o,args:s,modelName:a,globalOmit:t.globalOmit})}}mapQueryEngineResult({dataPath:t,unpacker:r},n){let i=n?.data,o=this.unpack(i,t,r);return y.env.PRISMA_CLIENT_GET_TIME?{data:o}:o}handleAndLogRequestError(t){try{this.handleRequestError(t)}catch(r){throw this.logEmitter&&this.logEmitter.emit("error",{message:r.message,target:t.clientMethod,timestamp:new Date}),r}}handleRequestError({error:t,clientMethod:r,callsite:n,transaction:i,args:o,modelName:s,globalOmit:a}){if(wp(t),bp(t,i))throw t;if(t instanceof ne&&xp(t)){let d=sa(t.meta);Ur({args:o,errors:[d],callsite:n,errorFormat:this.client._errorFormat,originalMethod:r,clientVersion:this.client._clientVersion,globalOmit:a})}let l=t.message;if(n&&(l=Sr({callsite:n,originalMethod:r,isPanic:t.isPanic,showColors:this.client._errorFormat==="pretty",message:l})),l=this.sanitizeMessage(l),t.code){let d=s?{modelName:s,...t.meta}:t.meta;throw new ne(l,{code:t.code,clientVersion:this.client._clientVersion,meta:d,batchRequestIdx:t.batchRequestIdx})}else{if(t.isPanic)throw new Pe(l,this.client._clientVersion);if(t instanceof ie)throw new ie(l,{clientVersion:this.client._clientVersion,batchRequestIdx:t.batchRequestIdx});if(t instanceof Q)throw new Q(l,this.client._clientVersion);if(t instanceof Pe)throw new Pe(l,this.client._clientVersion)}throw t.clientVersion=this.client._clientVersion,t}sanitizeMessage(t){return this.client._errorFormat&&this.client._errorFormat!=="pretty"?Rn(t):t}unpack(t,r,n){if(!t||(t.data&&(t=t.data),!t))return t;let i=Object.keys(t)[0],o=Object.values(t)[0],s=r.filter(d=>d!=="select"&&d!=="include"),a=Kn(o,s),l=i==="queryRaw"?nn(a):dt(a);return n?n(l):l}get[Symbol.toStringTag](){return"RequestHandler"}};function Ep(e){if(e){if(e.kind==="batch")return{kind:"batch",options:{isolationLevel:e.isolationLevel}};if(e.kind==="itx")return{kind:"itx",options:oa(e)};Ue(e,"Unknown transaction kind")}}function oa(e){return{id:e.id,payload:e.payload}}function bp(e,t){return tn(e)&&t?.kind==="batch"&&e.batchRequestIdx!==t.index}function xp(e){return e.code==="P2009"||e.code==="P2012"}function sa(e){if(e.kind==="Union")return{kind:"Union",errors:e.errors.map(sa)};if(Array.isArray(e.selectionPath)){let[,...t]=e.selectionPath;return{...e,selectionPath:t}}return e}f();u();c();p();m();var aa=Ds;f();u();c();p();m();var ma=Qe(Nn());f();u();c();p();m();var q=class extends Error{constructor(t){super(t+` +Read more at https://pris.ly/d/client-constructor`),this.name="PrismaClientConstructorValidationError"}get[Symbol.toStringTag](){return"PrismaClientConstructorValidationError"}};N(q,"PrismaClientConstructorValidationError");var la=["datasources","datasourceUrl","errorFormat","adapter","log","transactionOptions","omit","__internal"],ua=["pretty","colorless","minimal"],ca=["info","query","warn","error"],Pp={datasources:(e,{datasourceNames:t})=>{if(e){if(typeof e!="object"||Array.isArray(e))throw new q(`Invalid value ${JSON.stringify(e)} for "datasources" provided to PrismaClient constructor`);for(let[r,n]of Object.entries(e)){if(!t.includes(r)){let i=xt(r,t)||` Available datasources: ${t.join(", ")}`;throw new q(`Unknown datasource ${r} provided to PrismaClient constructor.${i}`)}if(typeof n!="object"||Array.isArray(n))throw new q(`Invalid value ${JSON.stringify(e)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`);if(n&&typeof n=="object")for(let[i,o]of Object.entries(n)){if(i!=="url")throw new q(`Invalid value ${JSON.stringify(e)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`);if(typeof o!="string")throw new q(`Invalid value ${JSON.stringify(o)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`)}}}},adapter:(e,t)=>{if(!e&&Ze(t.generator)==="client")throw new q('Using engine type "client" requires a driver adapter to be provided to PrismaClient constructor.');if(e!==null){if(e===void 0)throw new q('"adapter" property must not be undefined, use null to conditionally disable driver adapters.');if(Ze(t.generator)==="binary")throw new q('Cannot use a driver adapter with the "binary" Query Engine. Please use the "library" Query Engine.')}},datasourceUrl:e=>{if(typeof e<"u"&&typeof e!="string")throw new q(`Invalid value ${JSON.stringify(e)} for "datasourceUrl" provided to PrismaClient constructor. +Expected string or undefined.`)},errorFormat:e=>{if(e){if(typeof e!="string")throw new q(`Invalid value ${JSON.stringify(e)} for "errorFormat" provided to PrismaClient constructor.`);if(!ua.includes(e)){let t=xt(e,ua);throw new q(`Invalid errorFormat ${e} provided to PrismaClient constructor.${t}`)}}},log:e=>{if(!e)return;if(!Array.isArray(e))throw new q(`Invalid value ${JSON.stringify(e)} for "log" provided to PrismaClient constructor.`);function t(r){if(typeof r=="string"&&!ca.includes(r)){let n=xt(r,ca);throw new q(`Invalid log level "${r}" provided to PrismaClient constructor.${n}`)}}for(let r of e){t(r);let n={level:t,emit:i=>{let o=["stdout","event"];if(!o.includes(i)){let s=xt(i,o);throw new q(`Invalid value ${JSON.stringify(i)} for "emit" in logLevel provided to PrismaClient constructor.${s}`)}}};if(r&&typeof r=="object")for(let[i,o]of Object.entries(r))if(n[i])n[i](o);else throw new q(`Invalid property ${i} for "log" provided to PrismaClient constructor`)}},transactionOptions:e=>{if(!e)return;let t=e.maxWait;if(t!=null&&t<=0)throw new q(`Invalid value ${t} for maxWait in "transactionOptions" provided to PrismaClient constructor. maxWait needs to be greater than 0`);let r=e.timeout;if(r!=null&&r<=0)throw new q(`Invalid value ${r} for timeout in "transactionOptions" provided to PrismaClient constructor. timeout needs to be greater than 0`)},omit:(e,t)=>{if(typeof e!="object")throw new q('"omit" option is expected to be an object.');if(e===null)throw new q('"omit" option can not be `null`');let r=[];for(let[n,i]of Object.entries(e)){let o=Tp(n,t.runtimeDataModel);if(!o){r.push({kind:"UnknownModel",modelKey:n});continue}for(let[s,a]of Object.entries(i)){let l=o.fields.find(d=>d.name===s);if(!l){r.push({kind:"UnknownField",modelKey:n,fieldName:s});continue}if(l.relationName){r.push({kind:"RelationInOmit",modelKey:n,fieldName:s});continue}typeof a!="boolean"&&r.push({kind:"InvalidFieldValue",modelKey:n,fieldName:s})}}if(r.length>0)throw new q(Ap(e,r))},__internal:e=>{if(!e)return;let t=["debug","engine","configOverride"];if(typeof e!="object")throw new q(`Invalid value ${JSON.stringify(e)} for "__internal" to PrismaClient constructor`);for(let[r]of Object.entries(e))if(!t.includes(r)){let n=xt(r,t);throw new q(`Invalid property ${JSON.stringify(r)} for "__internal" provided to PrismaClient constructor.${n}`)}}};function fa(e,t){for(let[r,n]of Object.entries(e)){if(!la.includes(r)){let i=xt(r,la);throw new q(`Unknown property ${r} provided to PrismaClient constructor.${i}`)}Pp[r](n,t)}if(e.datasourceUrl&&e.datasources)throw new q('Can not use "datasourceUrl" and "datasources" options at the same time. Pick one of them')}function xt(e,t){if(t.length===0||typeof e!="string")return"";let r=vp(e,t);return r?` Did you mean "${r}"?`:""}function vp(e,t){if(t.length===0)return null;let r=t.map(i=>({value:i,distance:(0,ma.default)(e,i)}));r.sort((i,o)=>i.distanceIe(n)===t);if(r)return e[r]}function Ap(e,t){let r=ut(e);for(let o of t)switch(o.kind){case"UnknownModel":r.arguments.getField(o.modelKey)?.markAsError(),r.addErrorMessage(()=>`Unknown model name: ${o.modelKey}.`);break;case"UnknownField":r.arguments.getDeepField([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>`Model "${o.modelKey}" does not have a field named "${o.fieldName}".`);break;case"RelationInOmit":r.arguments.getDeepField([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>'Relations are already excluded by default and can not be specified in "omit".');break;case"InvalidFieldValue":r.arguments.getDeepFieldValue([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>"Omit field option value must be a boolean.");break}let{message:n,args:i}=Lr(r,"colorless");return`Error validating "omit" option: ${i} -${n}`; -} -f(); -u(); -c(); -p(); -m(); -function da(e) { - return e.length === 0 - ? Promise.resolve([]) - : new Promise((t, r) => { - let n = new Array(e.length), - i = null, - o = !1, - s = 0, - a = () => { - o || (s++, s === e.length && ((o = !0), i ? r(i) : t(n))); - }, - l = (d) => { - o || ((o = !0), r(d)); - }; - for (let d = 0; d < e.length; d++) - e[d].then( - (g) => { - ((n[d] = g), a()); - }, - (g) => { - if (!tn(g)) { - l(g); - return; - } - g.batchRequestIdx === d ? l(g) : (i || (i = g), a()); - }, - ); - }); -} -var Fe = z("prisma:client"); -typeof globalThis == "object" && (globalThis.NODE_CLIENT = !0); -var Rp = { - requestArgsToMiddlewareArgs: (e) => e, - middlewareArgsToRequestArgs: (e) => e, - }, - Cp = Symbol.for("prisma.client.transaction.id"), - Sp = { - id: 0, - nextId() { - return ++this.id; - }, - }; -function ya(e) { - class t { - _originalClient = this; - _runtimeDataModel; - _requestHandler; - _connectionPromise; - _disconnectionPromise; - _engineConfig; - _accelerateEngineConfig; - _clientVersion; - _errorFormat; - _tracingHelper; - _previewFeatures; - _activeProvider; - _globalOmit; - _extensions; - _engine; - _appliedParent; - _createPrismaPromise = si(); - constructor(n) { - ((e = n?.__internal?.configOverride?.(e) ?? e), Is(e), n && fa(n, e)); - let i = new Jr().on("error", () => {}); - ((this._extensions = ct.empty()), - (this._previewFeatures = Gs(e)), - (this._clientVersion = e.clientVersion ?? aa), - (this._activeProvider = e.activeProvider), - (this._globalOmit = n?.omit), - (this._tracingHelper = ta())); - let o = e.relativeEnvPaths && { - rootEnvPath: - e.relativeEnvPaths.rootEnvPath && - dr.resolve(e.dirname, e.relativeEnvPaths.rootEnvPath), - schemaEnvPath: - e.relativeEnvPaths.schemaEnvPath && - dr.resolve(e.dirname, e.relativeEnvPaths.schemaEnvPath), - }, - s; - if (n?.adapter) { - s = n.adapter; - let l = - e.activeProvider === "postgresql" || - e.activeProvider === "cockroachdb" - ? "postgres" - : e.activeProvider; - if (s.provider !== l) - throw new Q( - `The Driver Adapter \`${s.adapterName}\`, based on \`${s.provider}\`, is not compatible with the provider \`${l}\` specified in the Prisma schema.`, - this._clientVersion, - ); - if (n.datasources || n.datasourceUrl !== void 0) - throw new Q( - "Custom datasource configuration is not compatible with Prisma Driver Adapters. Please define the database connection string directly in the Driver Adapter configuration.", - this._clientVersion, - ); - } - let a = e.injectableEdgeEnv?.(); - try { - let l = n ?? {}, - d = l.__internal ?? {}, - g = d.debug === !0; - g && z.enable("prisma:client"); - let h = dr.resolve(e.dirname, e.relativePath); - (Qi.existsSync(h) || (h = e.dirname), - Fe("dirname", e.dirname), - Fe("relativePath", e.relativePath), - Fe("cwd", h)); - let T = d.engine || {}; - if ( - (l.errorFormat - ? (this._errorFormat = l.errorFormat) - : y.env.NODE_ENV === "production" - ? (this._errorFormat = "minimal") - : y.env.NO_COLOR - ? (this._errorFormat = "colorless") - : (this._errorFormat = "colorless"), - (this._runtimeDataModel = e.runtimeDataModel), - (this._engineConfig = { - cwd: h, - dirname: e.dirname, - enableDebugLogs: g, - allowTriggerPanic: T.allowTriggerPanic, - prismaPath: T.binaryPath ?? void 0, - engineEndpoint: T.endpoint, - generator: e.generator, - showColors: this._errorFormat === "pretty", - logLevel: l.log && na(l.log), - logQueries: - l.log && - !!(typeof l.log == "string" - ? l.log === "query" - : l.log.find((I) => - typeof I == "string" ? I === "query" : I.level === "query", - )), - env: a?.parsed ?? {}, - flags: [], - engineWasm: e.engineWasm, - compilerWasm: e.compilerWasm, - clientVersion: e.clientVersion, - engineVersion: e.engineVersion, - previewFeatures: this._previewFeatures, - activeProvider: e.activeProvider, - inlineSchema: e.inlineSchema, - overrideDatasources: Os(l, e.datasourceNames), - inlineDatasources: e.inlineDatasources, - inlineSchemaHash: e.inlineSchemaHash, - tracingHelper: this._tracingHelper, - transactionOptions: { - maxWait: l.transactionOptions?.maxWait ?? 2e3, - timeout: l.transactionOptions?.timeout ?? 5e3, - isolationLevel: l.transactionOptions?.isolationLevel, - }, - logEmitter: i, - isBundled: e.isBundled, - adapter: s, - }), - (this._accelerateEngineConfig = { - ...this._engineConfig, - accelerateUtils: { - resolveDatasourceUrl: gt, - getBatchRequestPayload: Wr, - prismaGraphQLToJSError: Hr, - PrismaClientUnknownRequestError: ie, - PrismaClientInitializationError: Q, - PrismaClientKnownRequestError: ne, - debug: z("prisma:client:accelerateEngine"), - engineVersion: ha.version, - clientVersion: e.clientVersion, - }, - }), - Fe("clientVersion", e.clientVersion), - (this._engine = js(e, this._engineConfig)), - (this._requestHandler = new on(this, i)), - l.log) - ) - for (let I of l.log) { - let S = - typeof I == "string" ? I : I.emit === "stdout" ? I.level : null; - S && - this.$on(S, (C) => { - Ct.log(`${Ct.tags[S] ?? ""}`, C.message || C.query); - }); - } - } catch (l) { - throw ((l.clientVersion = this._clientVersion), l); - } - return (this._appliedParent = Gt(this)); - } - get [Symbol.toStringTag]() { - return "PrismaClient"; - } - $on(n, i) { - return ( - n === "beforeExit" - ? this._engine.onBeforeExit(i) - : n && this._engineConfig.logEmitter.on(n, i), - this - ); - } - $connect() { - try { - return this._engine.start(); - } catch (n) { - throw ((n.clientVersion = this._clientVersion), n); - } - } - async $disconnect() { - try { - await this._engine.stop(); - } catch (n) { - throw ((n.clientVersion = this._clientVersion), n); - } finally { - Ji(); - } - } - $executeRawInternal(n, i, o, s) { - let a = this._activeProvider; - return this._request({ - action: "executeRaw", - args: o, - transaction: n, - clientMethod: i, - argsMapper: oi({ clientMethod: i, activeProvider: a }), - callsite: Ne(this._errorFormat), - dataPath: [], - middlewareArgsMapper: s, - }); - } - $executeRaw(n, ...i) { - return this._createPrismaPromise((o) => { - if (n.raw !== void 0 || n.sql !== void 0) { - let [s, a] = ga(n, i); - return ( - ii( - this._activeProvider, - s.text, - s.values, - Array.isArray(n) - ? "prisma.$executeRaw``" - : "prisma.$executeRaw(sql``)", - ), - this.$executeRawInternal(o, "$executeRaw", s, a) - ); - } - throw new X( - "`$executeRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$executeRaw`UPDATE User SET cool = ${true} WHERE email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#executeraw\n", - { clientVersion: this._clientVersion }, - ); - }); - } - $executeRawUnsafe(n, ...i) { - return this._createPrismaPromise( - (o) => ( - ii( - this._activeProvider, - n, - i, - "prisma.$executeRawUnsafe(, [...values])", - ), - this.$executeRawInternal(o, "$executeRawUnsafe", [n, ...i]) - ), - ); - } - $runCommandRaw(n) { - if (e.activeProvider !== "mongodb") - throw new X( - `The ${e.activeProvider} provider does not support $runCommandRaw. Use the mongodb provider.`, - { clientVersion: this._clientVersion }, - ); - return this._createPrismaPromise((i) => - this._request({ - args: n, - clientMethod: "$runCommandRaw", - dataPath: [], - action: "runCommandRaw", - argsMapper: Js, - callsite: Ne(this._errorFormat), - transaction: i, - }), - ); - } - async $queryRawInternal(n, i, o, s) { - let a = this._activeProvider; - return this._request({ - action: "queryRaw", - args: o, - transaction: n, - clientMethod: i, - argsMapper: oi({ clientMethod: i, activeProvider: a }), - callsite: Ne(this._errorFormat), - dataPath: [], - middlewareArgsMapper: s, - }); - } - $queryRaw(n, ...i) { - return this._createPrismaPromise((o) => { - if (n.raw !== void 0 || n.sql !== void 0) - return this.$queryRawInternal(o, "$queryRaw", ...ga(n, i)); - throw new X( - "`$queryRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$queryRaw`SELECT * FROM User WHERE id = ${1} OR email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#queryraw\n", - { clientVersion: this._clientVersion }, - ); - }); - } - $queryRawTyped(n) { - return this._createPrismaPromise((i) => { - if (!this._hasPreviewFlag("typedSql")) - throw new X( - "`typedSql` preview feature must be enabled in order to access $queryRawTyped API", - { clientVersion: this._clientVersion }, - ); - return this.$queryRawInternal(i, "$queryRawTyped", n); - }); - } - $queryRawUnsafe(n, ...i) { - return this._createPrismaPromise((o) => - this.$queryRawInternal(o, "$queryRawUnsafe", [n, ...i]), - ); - } - _transactionWithArray({ promises: n, options: i }) { - let o = Sp.nextId(), - s = ra(n.length), - a = n.map((l, d) => { - if (l?.[Symbol.toStringTag] !== "PrismaPromise") - throw new Error( - "All elements of the array need to be Prisma Client promises. Hint: Please make sure you are not awaiting the Prisma client calls you intended to pass in the $transaction function.", - ); - let g = - i?.isolationLevel ?? - this._engineConfig.transactionOptions.isolationLevel, - h = { kind: "batch", id: o, index: d, isolationLevel: g, lock: s }; - return l.requestTransaction?.(h) ?? l; - }); - return da(a); - } - async _transactionWithCallback({ callback: n, options: i }) { - let o = { traceparent: this._tracingHelper.getTraceParent() }, - s = { - maxWait: i?.maxWait ?? this._engineConfig.transactionOptions.maxWait, - timeout: i?.timeout ?? this._engineConfig.transactionOptions.timeout, - isolationLevel: - i?.isolationLevel ?? - this._engineConfig.transactionOptions.isolationLevel, - }, - a = await this._engine.transaction("start", o, s), - l; - try { - let d = { kind: "itx", ...a }; - ((l = await n(this._createItxClient(d))), - await this._engine.transaction("commit", o, a)); - } catch (d) { - throw ( - await this._engine.transaction("rollback", o, a).catch(() => {}), - d - ); - } - return l; - } - _createItxClient(n) { - return me( - Gt( - me(ds(this), [ - te("_appliedParent", () => this._appliedParent._createItxClient(n)), - te("_createPrismaPromise", () => si(n)), - te(Cp, () => n.id), - ]), - ), - [mt(Es)], - ); - } - $transaction(n, i) { - let o; - typeof n == "function" - ? this._engineConfig.adapter?.adapterName === "@prisma/adapter-d1" - ? (o = () => { - throw new Error( - "Cloudflare D1 does not support interactive transactions. We recommend you to refactor your queries with that limitation in mind, and use batch transactions with `prisma.$transactions([])` where applicable.", - ); - }) - : (o = () => - this._transactionWithCallback({ callback: n, options: i })) - : (o = () => this._transactionWithArray({ promises: n, options: i })); - let s = { name: "transaction", attributes: { method: "$transaction" } }; - return this._tracingHelper.runInChildSpan(s, o); - } - _request(n) { - n.otelParentCtx = this._tracingHelper.getActiveContext(); - let i = n.middlewareArgsMapper ?? Rp, - o = { - args: i.requestArgsToMiddlewareArgs(n.args), - dataPath: n.dataPath, - runInTransaction: !!n.transaction, - action: n.action, - model: n.model, - }, - s = { - operation: { - name: "operation", - attributes: { - method: o.action, - model: o.model, - name: o.model ? `${o.model}.${o.action}` : o.action, - }, - }, - }, - a = async (l) => { - let { runInTransaction: d, args: g, ...h } = l, - T = { ...n, ...h }; - (g && (T.args = i.middlewareArgsToRequestArgs(g)), - n.transaction !== void 0 && d === !1 && delete T.transaction); - let I = await vs(this, T); - return T.model - ? ws({ - result: I, - modelName: T.model, - args: T.args, - extensions: this._extensions, - runtimeDataModel: this._runtimeDataModel, - globalOmit: this._globalOmit, - }) - : I; - }; - return this._tracingHelper.runInChildSpan(s.operation, () => a(o)); - } - async _executeRequest({ - args: n, - clientMethod: i, - dataPath: o, - callsite: s, - action: a, - model: l, - argsMapper: d, - transaction: g, - unpacker: h, - otelParentCtx: T, - customDataProxyFetch: I, - }) { - try { - n = d ? d(n) : n; - let S = { name: "serialize" }, - C = this._tracingHelper.runInChildSpan(S, () => - $r({ - modelName: l, - runtimeDataModel: this._runtimeDataModel, - action: a, - args: n, - clientMethod: i, - callsite: s, - extensions: this._extensions, - errorFormat: this._errorFormat, - clientVersion: this._clientVersion, - previewFeatures: this._previewFeatures, - globalOmit: this._globalOmit, - }), - ); - return ( - z.enabled("prisma:client") && - (Fe("Prisma Client call:"), - Fe(`prisma.${i}(${is(n)})`), - Fe("Generated request:"), - Fe( - JSON.stringify(C, null, 2) + - ` -`, - )), - g?.kind === "batch" && (await g.lock), - this._requestHandler.request({ - protocolQuery: C, - modelName: l, - action: a, - clientMethod: i, - dataPath: o, - callsite: s, - args: n, - extensions: this._extensions, - transaction: g, - unpacker: h, - otelParentCtx: T, - otelChildCtx: this._tracingHelper.getActiveContext(), - globalOmit: this._globalOmit, - customDataProxyFetch: I, - }) - ); - } catch (S) { - throw ((S.clientVersion = this._clientVersion), S); - } - } - $metrics = new pt(this); - _hasPreviewFlag(n) { - return !!this._engineConfig.previewFeatures?.includes(n); - } - $applyPendingMigrations() { - return this._engine.applyPendingMigrations(); - } - $extends = gs; - } - return t; -} -function ga(e, t) { - return Ip(e) ? [new se(e, t), Zs] : [e, Xs]; -} -function Ip(e) { - return Array.isArray(e) && Array.isArray(e.raw); -} -f(); -u(); -c(); -p(); -m(); -var Op = new Set([ - "toJSON", - "$$typeof", - "asymmetricMatch", - Symbol.iterator, - Symbol.toStringTag, - Symbol.isConcatSpreadable, - Symbol.toPrimitive, -]); -function wa(e) { - return new Proxy(e, { - get(t, r) { - if (r in t) return t[r]; - if (!Op.has(r)) throw new TypeError(`Invalid enum value: ${String(r)}`); - }, - }); -} -f(); -u(); -c(); -p(); -m(); -0 && - (module.exports = { - DMMF, - Debug, - Decimal, - Extensions, - MetricsClient, - PrismaClientInitializationError, - PrismaClientKnownRequestError, - PrismaClientRustPanicError, - PrismaClientUnknownRequestError, - PrismaClientValidationError, - Public, - Sql, - createParam, - defineDmmfProperty, - deserializeJsonResponse, - deserializeRawResult, - dmmfToRuntimeDataModel, - empty, - getPrismaClient, - getRuntime, - join, - makeStrictEnum, - makeTypedQueryFactory, - objectEnumValues, - raw, - serializeJsonQuery, - skip, - sqltag, - warnEnvConflicts, - warnOnce, - }); +${n}`}f();u();c();p();m();function da(e){return e.length===0?Promise.resolve([]):new Promise((t,r)=>{let n=new Array(e.length),i=null,o=!1,s=0,a=()=>{o||(s++,s===e.length&&(o=!0,i?r(i):t(n)))},l=d=>{o||(o=!0,r(d))};for(let d=0;d{n[d]=g,a()},g=>{if(!tn(g)){l(g);return}g.batchRequestIdx===d?l(g):(i||(i=g),a())})})}var Fe=z("prisma:client");typeof globalThis=="object"&&(globalThis.NODE_CLIENT=!0);var Rp={requestArgsToMiddlewareArgs:e=>e,middlewareArgsToRequestArgs:e=>e},Cp=Symbol.for("prisma.client.transaction.id"),Sp={id:0,nextId(){return++this.id}};function ya(e){class t{_originalClient=this;_runtimeDataModel;_requestHandler;_connectionPromise;_disconnectionPromise;_engineConfig;_accelerateEngineConfig;_clientVersion;_errorFormat;_tracingHelper;_previewFeatures;_activeProvider;_globalOmit;_extensions;_engine;_appliedParent;_createPrismaPromise=si();constructor(n){e=n?.__internal?.configOverride?.(e)??e,Is(e),n&&fa(n,e);let i=new Jr().on("error",()=>{});this._extensions=ct.empty(),this._previewFeatures=Gs(e),this._clientVersion=e.clientVersion??aa,this._activeProvider=e.activeProvider,this._globalOmit=n?.omit,this._tracingHelper=ta();let o=e.relativeEnvPaths&&{rootEnvPath:e.relativeEnvPaths.rootEnvPath&&dr.resolve(e.dirname,e.relativeEnvPaths.rootEnvPath),schemaEnvPath:e.relativeEnvPaths.schemaEnvPath&&dr.resolve(e.dirname,e.relativeEnvPaths.schemaEnvPath)},s;if(n?.adapter){s=n.adapter;let l=e.activeProvider==="postgresql"||e.activeProvider==="cockroachdb"?"postgres":e.activeProvider;if(s.provider!==l)throw new Q(`The Driver Adapter \`${s.adapterName}\`, based on \`${s.provider}\`, is not compatible with the provider \`${l}\` specified in the Prisma schema.`,this._clientVersion);if(n.datasources||n.datasourceUrl!==void 0)throw new Q("Custom datasource configuration is not compatible with Prisma Driver Adapters. Please define the database connection string directly in the Driver Adapter configuration.",this._clientVersion)}let a=e.injectableEdgeEnv?.();try{let l=n??{},d=l.__internal??{},g=d.debug===!0;g&&z.enable("prisma:client");let h=dr.resolve(e.dirname,e.relativePath);Qi.existsSync(h)||(h=e.dirname),Fe("dirname",e.dirname),Fe("relativePath",e.relativePath),Fe("cwd",h);let T=d.engine||{};if(l.errorFormat?this._errorFormat=l.errorFormat:y.env.NODE_ENV==="production"?this._errorFormat="minimal":y.env.NO_COLOR?this._errorFormat="colorless":this._errorFormat="colorless",this._runtimeDataModel=e.runtimeDataModel,this._engineConfig={cwd:h,dirname:e.dirname,enableDebugLogs:g,allowTriggerPanic:T.allowTriggerPanic,prismaPath:T.binaryPath??void 0,engineEndpoint:T.endpoint,generator:e.generator,showColors:this._errorFormat==="pretty",logLevel:l.log&&na(l.log),logQueries:l.log&&!!(typeof l.log=="string"?l.log==="query":l.log.find(I=>typeof I=="string"?I==="query":I.level==="query")),env:a?.parsed??{},flags:[],engineWasm:e.engineWasm,compilerWasm:e.compilerWasm,clientVersion:e.clientVersion,engineVersion:e.engineVersion,previewFeatures:this._previewFeatures,activeProvider:e.activeProvider,inlineSchema:e.inlineSchema,overrideDatasources:Os(l,e.datasourceNames),inlineDatasources:e.inlineDatasources,inlineSchemaHash:e.inlineSchemaHash,tracingHelper:this._tracingHelper,transactionOptions:{maxWait:l.transactionOptions?.maxWait??2e3,timeout:l.transactionOptions?.timeout??5e3,isolationLevel:l.transactionOptions?.isolationLevel},logEmitter:i,isBundled:e.isBundled,adapter:s},this._accelerateEngineConfig={...this._engineConfig,accelerateUtils:{resolveDatasourceUrl:gt,getBatchRequestPayload:Wr,prismaGraphQLToJSError:Hr,PrismaClientUnknownRequestError:ie,PrismaClientInitializationError:Q,PrismaClientKnownRequestError:ne,debug:z("prisma:client:accelerateEngine"),engineVersion:ha.version,clientVersion:e.clientVersion}},Fe("clientVersion",e.clientVersion),this._engine=js(e,this._engineConfig),this._requestHandler=new on(this,i),l.log)for(let I of l.log){let S=typeof I=="string"?I:I.emit==="stdout"?I.level:null;S&&this.$on(S,C=>{Ct.log(`${Ct.tags[S]??""}`,C.message||C.query)})}}catch(l){throw l.clientVersion=this._clientVersion,l}return this._appliedParent=Gt(this)}get[Symbol.toStringTag](){return"PrismaClient"}$on(n,i){return n==="beforeExit"?this._engine.onBeforeExit(i):n&&this._engineConfig.logEmitter.on(n,i),this}$connect(){try{return this._engine.start()}catch(n){throw n.clientVersion=this._clientVersion,n}}async $disconnect(){try{await this._engine.stop()}catch(n){throw n.clientVersion=this._clientVersion,n}finally{Ji()}}$executeRawInternal(n,i,o,s){let a=this._activeProvider;return this._request({action:"executeRaw",args:o,transaction:n,clientMethod:i,argsMapper:oi({clientMethod:i,activeProvider:a}),callsite:Ne(this._errorFormat),dataPath:[],middlewareArgsMapper:s})}$executeRaw(n,...i){return this._createPrismaPromise(o=>{if(n.raw!==void 0||n.sql!==void 0){let[s,a]=ga(n,i);return ii(this._activeProvider,s.text,s.values,Array.isArray(n)?"prisma.$executeRaw``":"prisma.$executeRaw(sql``)"),this.$executeRawInternal(o,"$executeRaw",s,a)}throw new X("`$executeRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$executeRaw`UPDATE User SET cool = ${true} WHERE email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#executeraw\n",{clientVersion:this._clientVersion})})}$executeRawUnsafe(n,...i){return this._createPrismaPromise(o=>(ii(this._activeProvider,n,i,"prisma.$executeRawUnsafe(, [...values])"),this.$executeRawInternal(o,"$executeRawUnsafe",[n,...i])))}$runCommandRaw(n){if(e.activeProvider!=="mongodb")throw new X(`The ${e.activeProvider} provider does not support $runCommandRaw. Use the mongodb provider.`,{clientVersion:this._clientVersion});return this._createPrismaPromise(i=>this._request({args:n,clientMethod:"$runCommandRaw",dataPath:[],action:"runCommandRaw",argsMapper:Js,callsite:Ne(this._errorFormat),transaction:i}))}async $queryRawInternal(n,i,o,s){let a=this._activeProvider;return this._request({action:"queryRaw",args:o,transaction:n,clientMethod:i,argsMapper:oi({clientMethod:i,activeProvider:a}),callsite:Ne(this._errorFormat),dataPath:[],middlewareArgsMapper:s})}$queryRaw(n,...i){return this._createPrismaPromise(o=>{if(n.raw!==void 0||n.sql!==void 0)return this.$queryRawInternal(o,"$queryRaw",...ga(n,i));throw new X("`$queryRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$queryRaw`SELECT * FROM User WHERE id = ${1} OR email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#queryraw\n",{clientVersion:this._clientVersion})})}$queryRawTyped(n){return this._createPrismaPromise(i=>{if(!this._hasPreviewFlag("typedSql"))throw new X("`typedSql` preview feature must be enabled in order to access $queryRawTyped API",{clientVersion:this._clientVersion});return this.$queryRawInternal(i,"$queryRawTyped",n)})}$queryRawUnsafe(n,...i){return this._createPrismaPromise(o=>this.$queryRawInternal(o,"$queryRawUnsafe",[n,...i]))}_transactionWithArray({promises:n,options:i}){let o=Sp.nextId(),s=ra(n.length),a=n.map((l,d)=>{if(l?.[Symbol.toStringTag]!=="PrismaPromise")throw new Error("All elements of the array need to be Prisma Client promises. Hint: Please make sure you are not awaiting the Prisma client calls you intended to pass in the $transaction function.");let g=i?.isolationLevel??this._engineConfig.transactionOptions.isolationLevel,h={kind:"batch",id:o,index:d,isolationLevel:g,lock:s};return l.requestTransaction?.(h)??l});return da(a)}async _transactionWithCallback({callback:n,options:i}){let o={traceparent:this._tracingHelper.getTraceParent()},s={maxWait:i?.maxWait??this._engineConfig.transactionOptions.maxWait,timeout:i?.timeout??this._engineConfig.transactionOptions.timeout,isolationLevel:i?.isolationLevel??this._engineConfig.transactionOptions.isolationLevel},a=await this._engine.transaction("start",o,s),l;try{let d={kind:"itx",...a};l=await n(this._createItxClient(d)),await this._engine.transaction("commit",o,a)}catch(d){throw await this._engine.transaction("rollback",o,a).catch(()=>{}),d}return l}_createItxClient(n){return me(Gt(me(ds(this),[te("_appliedParent",()=>this._appliedParent._createItxClient(n)),te("_createPrismaPromise",()=>si(n)),te(Cp,()=>n.id)])),[mt(Es)])}$transaction(n,i){let o;typeof n=="function"?this._engineConfig.adapter?.adapterName==="@prisma/adapter-d1"?o=()=>{throw new Error("Cloudflare D1 does not support interactive transactions. We recommend you to refactor your queries with that limitation in mind, and use batch transactions with `prisma.$transactions([])` where applicable.")}:o=()=>this._transactionWithCallback({callback:n,options:i}):o=()=>this._transactionWithArray({promises:n,options:i});let s={name:"transaction",attributes:{method:"$transaction"}};return this._tracingHelper.runInChildSpan(s,o)}_request(n){n.otelParentCtx=this._tracingHelper.getActiveContext();let i=n.middlewareArgsMapper??Rp,o={args:i.requestArgsToMiddlewareArgs(n.args),dataPath:n.dataPath,runInTransaction:!!n.transaction,action:n.action,model:n.model},s={operation:{name:"operation",attributes:{method:o.action,model:o.model,name:o.model?`${o.model}.${o.action}`:o.action}}},a=async l=>{let{runInTransaction:d,args:g,...h}=l,T={...n,...h};g&&(T.args=i.middlewareArgsToRequestArgs(g)),n.transaction!==void 0&&d===!1&&delete T.transaction;let I=await vs(this,T);return T.model?ws({result:I,modelName:T.model,args:T.args,extensions:this._extensions,runtimeDataModel:this._runtimeDataModel,globalOmit:this._globalOmit}):I};return this._tracingHelper.runInChildSpan(s.operation,()=>a(o))}async _executeRequest({args:n,clientMethod:i,dataPath:o,callsite:s,action:a,model:l,argsMapper:d,transaction:g,unpacker:h,otelParentCtx:T,customDataProxyFetch:I}){try{n=d?d(n):n;let S={name:"serialize"},C=this._tracingHelper.runInChildSpan(S,()=>$r({modelName:l,runtimeDataModel:this._runtimeDataModel,action:a,args:n,clientMethod:i,callsite:s,extensions:this._extensions,errorFormat:this._errorFormat,clientVersion:this._clientVersion,previewFeatures:this._previewFeatures,globalOmit:this._globalOmit}));return z.enabled("prisma:client")&&(Fe("Prisma Client call:"),Fe(`prisma.${i}(${is(n)})`),Fe("Generated request:"),Fe(JSON.stringify(C,null,2)+` +`)),g?.kind==="batch"&&await g.lock,this._requestHandler.request({protocolQuery:C,modelName:l,action:a,clientMethod:i,dataPath:o,callsite:s,args:n,extensions:this._extensions,transaction:g,unpacker:h,otelParentCtx:T,otelChildCtx:this._tracingHelper.getActiveContext(),globalOmit:this._globalOmit,customDataProxyFetch:I})}catch(S){throw S.clientVersion=this._clientVersion,S}}$metrics=new pt(this);_hasPreviewFlag(n){return!!this._engineConfig.previewFeatures?.includes(n)}$applyPendingMigrations(){return this._engine.applyPendingMigrations()}$extends=gs}return t}function ga(e,t){return Ip(e)?[new se(e,t),Zs]:[e,Xs]}function Ip(e){return Array.isArray(e)&&Array.isArray(e.raw)}f();u();c();p();m();var Op=new Set(["toJSON","$$typeof","asymmetricMatch",Symbol.iterator,Symbol.toStringTag,Symbol.isConcatSpreadable,Symbol.toPrimitive]);function wa(e){return new Proxy(e,{get(t,r){if(r in t)return t[r];if(!Op.has(r))throw new TypeError(`Invalid enum value: ${String(r)}`)}})}f();u();c();p();m();0&&(module.exports={DMMF,Debug,Decimal,Extensions,MetricsClient,PrismaClientInitializationError,PrismaClientKnownRequestError,PrismaClientRustPanicError,PrismaClientUnknownRequestError,PrismaClientValidationError,Public,Sql,createParam,defineDmmfProperty,deserializeJsonResponse,deserializeRawResult,dmmfToRuntimeDataModel,empty,getPrismaClient,getRuntime,join,makeStrictEnum,makeTypedQueryFactory,objectEnumValues,raw,serializeJsonQuery,skip,sqltag,warnEnvConflicts,warnOnce}); //# sourceMappingURL=edge.js.map diff --git a/generated/prisma/runtime/index-browser.d.ts b/generated/prisma/runtime/index-browser.d.ts index bb091892..0e96e4be 100644 --- a/generated/prisma/runtime/index-browser.d.ts +++ b/generated/prisma/runtime/index-browser.d.ts @@ -1,430 +1,370 @@ -declare class AnyNull extends NullTypesEnumValue { - #private; -} - -declare type Args = T extends { - [K: symbol]: { - types: { - operations: { - [K in F]: { - args: any; - }; - }; - }; - }; -} - ? T[symbol]["types"]["operations"][F]["args"] - : any; - -declare class DbNull extends NullTypesEnumValue { - #private; -} - -export declare function Decimal(n: Decimal.Value): Decimal; - -export declare namespace Decimal { - export type Constructor = typeof Decimal; - export type Instance = Decimal; - export type Rounding = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8; - export type Modulo = Rounding | 9; - export type Value = string | number | Decimal; - - // http://mikemcl.github.io/decimal.js/#constructor-properties - export interface Config { - precision?: number; - rounding?: Rounding; - toExpNeg?: number; - toExpPos?: number; - minE?: number; - maxE?: number; - crypto?: boolean; - modulo?: Modulo; - defaults?: boolean; - } -} - -export declare class Decimal { - readonly d: number[]; - readonly e: number; - readonly s: number; - - constructor(n: Decimal.Value); - - absoluteValue(): Decimal; - abs(): Decimal; - - ceil(): Decimal; - - clampedTo(min: Decimal.Value, max: Decimal.Value): Decimal; - clamp(min: Decimal.Value, max: Decimal.Value): Decimal; - - comparedTo(n: Decimal.Value): number; - cmp(n: Decimal.Value): number; - - cosine(): Decimal; - cos(): Decimal; - - cubeRoot(): Decimal; - cbrt(): Decimal; - - decimalPlaces(): number; - dp(): number; - - dividedBy(n: Decimal.Value): Decimal; - div(n: Decimal.Value): Decimal; - - dividedToIntegerBy(n: Decimal.Value): Decimal; - divToInt(n: Decimal.Value): Decimal; - - equals(n: Decimal.Value): boolean; - eq(n: Decimal.Value): boolean; - - floor(): Decimal; - - greaterThan(n: Decimal.Value): boolean; - gt(n: Decimal.Value): boolean; - - greaterThanOrEqualTo(n: Decimal.Value): boolean; - gte(n: Decimal.Value): boolean; - - hyperbolicCosine(): Decimal; - cosh(): Decimal; - - hyperbolicSine(): Decimal; - sinh(): Decimal; - - hyperbolicTangent(): Decimal; - tanh(): Decimal; - - inverseCosine(): Decimal; - acos(): Decimal; - - inverseHyperbolicCosine(): Decimal; - acosh(): Decimal; - - inverseHyperbolicSine(): Decimal; - asinh(): Decimal; - - inverseHyperbolicTangent(): Decimal; - atanh(): Decimal; - - inverseSine(): Decimal; - asin(): Decimal; - - inverseTangent(): Decimal; - atan(): Decimal; - - isFinite(): boolean; - - isInteger(): boolean; - isInt(): boolean; - - isNaN(): boolean; - - isNegative(): boolean; - isNeg(): boolean; - - isPositive(): boolean; - isPos(): boolean; - - isZero(): boolean; - - lessThan(n: Decimal.Value): boolean; - lt(n: Decimal.Value): boolean; - - lessThanOrEqualTo(n: Decimal.Value): boolean; - lte(n: Decimal.Value): boolean; - - logarithm(n?: Decimal.Value): Decimal; - log(n?: Decimal.Value): Decimal; - - minus(n: Decimal.Value): Decimal; - sub(n: Decimal.Value): Decimal; - - modulo(n: Decimal.Value): Decimal; - mod(n: Decimal.Value): Decimal; - - naturalExponential(): Decimal; - exp(): Decimal; - - naturalLogarithm(): Decimal; - ln(): Decimal; - - negated(): Decimal; - neg(): Decimal; - - plus(n: Decimal.Value): Decimal; - add(n: Decimal.Value): Decimal; - - precision(includeZeros?: boolean): number; - sd(includeZeros?: boolean): number; - - round(): Decimal; - - sine(): Decimal; - sin(): Decimal; - - squareRoot(): Decimal; - sqrt(): Decimal; - - tangent(): Decimal; - tan(): Decimal; - - times(n: Decimal.Value): Decimal; - mul(n: Decimal.Value): Decimal; - - toBinary(significantDigits?: number): string; - toBinary(significantDigits: number, rounding: Decimal.Rounding): string; - - toDecimalPlaces(decimalPlaces?: number): Decimal; - toDecimalPlaces(decimalPlaces: number, rounding: Decimal.Rounding): Decimal; - toDP(decimalPlaces?: number): Decimal; - toDP(decimalPlaces: number, rounding: Decimal.Rounding): Decimal; - - toExponential(decimalPlaces?: number): string; - toExponential(decimalPlaces: number, rounding: Decimal.Rounding): string; - - toFixed(decimalPlaces?: number): string; - toFixed(decimalPlaces: number, rounding: Decimal.Rounding): string; - - toFraction(max_denominator?: Decimal.Value): Decimal[]; - - toHexadecimal(significantDigits?: number): string; - toHexadecimal(significantDigits: number, rounding: Decimal.Rounding): string; - toHex(significantDigits?: number): string; - toHex(significantDigits: number, rounding?: Decimal.Rounding): string; - - toJSON(): string; - - toNearest(n: Decimal.Value, rounding?: Decimal.Rounding): Decimal; - - toNumber(): number; - - toOctal(significantDigits?: number): string; - toOctal(significantDigits: number, rounding: Decimal.Rounding): string; - - toPower(n: Decimal.Value): Decimal; - pow(n: Decimal.Value): Decimal; - - toPrecision(significantDigits?: number): string; - toPrecision(significantDigits: number, rounding: Decimal.Rounding): string; - - toSignificantDigits(significantDigits?: number): Decimal; - toSignificantDigits( - significantDigits: number, - rounding: Decimal.Rounding, - ): Decimal; - toSD(significantDigits?: number): Decimal; - toSD(significantDigits: number, rounding: Decimal.Rounding): Decimal; - - toString(): string; - - truncated(): Decimal; - trunc(): Decimal; - - valueOf(): string; - - static abs(n: Decimal.Value): Decimal; - static acos(n: Decimal.Value): Decimal; - static acosh(n: Decimal.Value): Decimal; - static add(x: Decimal.Value, y: Decimal.Value): Decimal; - static asin(n: Decimal.Value): Decimal; - static asinh(n: Decimal.Value): Decimal; - static atan(n: Decimal.Value): Decimal; - static atanh(n: Decimal.Value): Decimal; - static atan2(y: Decimal.Value, x: Decimal.Value): Decimal; - static cbrt(n: Decimal.Value): Decimal; - static ceil(n: Decimal.Value): Decimal; - static clamp( - n: Decimal.Value, - min: Decimal.Value, - max: Decimal.Value, - ): Decimal; - static clone(object?: Decimal.Config): Decimal.Constructor; - static config(object: Decimal.Config): Decimal.Constructor; - static cos(n: Decimal.Value): Decimal; - static cosh(n: Decimal.Value): Decimal; - static div(x: Decimal.Value, y: Decimal.Value): Decimal; - static exp(n: Decimal.Value): Decimal; - static floor(n: Decimal.Value): Decimal; - static hypot(...n: Decimal.Value[]): Decimal; - static isDecimal(object: any): object is Decimal; - static ln(n: Decimal.Value): Decimal; - static log(n: Decimal.Value, base?: Decimal.Value): Decimal; - static log2(n: Decimal.Value): Decimal; - static log10(n: Decimal.Value): Decimal; - static max(...n: Decimal.Value[]): Decimal; - static min(...n: Decimal.Value[]): Decimal; - static mod(x: Decimal.Value, y: Decimal.Value): Decimal; - static mul(x: Decimal.Value, y: Decimal.Value): Decimal; - static noConflict(): Decimal.Constructor; // Browser only - static pow(base: Decimal.Value, exponent: Decimal.Value): Decimal; - static random(significantDigits?: number): Decimal; - static round(n: Decimal.Value): Decimal; - static set(object: Decimal.Config): Decimal.Constructor; - static sign(n: Decimal.Value): number; - static sin(n: Decimal.Value): Decimal; - static sinh(n: Decimal.Value): Decimal; - static sqrt(n: Decimal.Value): Decimal; - static sub(x: Decimal.Value, y: Decimal.Value): Decimal; - static sum(...n: Decimal.Value[]): Decimal; - static tan(n: Decimal.Value): Decimal; - static tanh(n: Decimal.Value): Decimal; - static trunc(n: Decimal.Value): Decimal; - - static readonly default?: Decimal.Constructor; - static readonly Decimal?: Decimal.Constructor; - - static readonly precision: number; - static readonly rounding: Decimal.Rounding; - static readonly toExpNeg: number; - static readonly toExpPos: number; - static readonly minE: number; - static readonly maxE: number; - static readonly crypto: boolean; - static readonly modulo: Decimal.Modulo; - - static readonly ROUND_UP: 0; - static readonly ROUND_DOWN: 1; - static readonly ROUND_CEIL: 2; - static readonly ROUND_FLOOR: 3; - static readonly ROUND_HALF_UP: 4; - static readonly ROUND_HALF_DOWN: 5; - static readonly ROUND_HALF_EVEN: 6; - static readonly ROUND_HALF_CEIL: 7; - static readonly ROUND_HALF_FLOOR: 8; - static readonly EUCLID: 9; -} - -declare type Exact = - | (A extends unknown - ? W extends A - ? { - [K in keyof A]: Exact; - } - : W - : never) - | (A extends Narrowable ? A : never); - -export declare function getRuntime(): GetRuntimeOutput; - -declare type GetRuntimeOutput = { - id: RuntimeName; - prettyName: string; - isEdge: boolean; -}; - -declare class JsonNull extends NullTypesEnumValue { - #private; -} - -/** - * Generates more strict variant of an enum which, unlike regular enum, - * throws on non-existing property access. This can be useful in following situations: - * - we have an API, that accepts both `undefined` and `SomeEnumType` as an input - * - enum values are generated dynamically from DMMF. - * - * In that case, if using normal enums and no compile-time typechecking, using non-existing property - * will result in `undefined` value being used, which will be accepted. Using strict enum - * in this case will help to have a runtime exception, telling you that you are probably doing something wrong. - * - * Note: if you need to check for existence of a value in the enum you can still use either - * `in` operator or `hasOwnProperty` function. - * - * @param definition - * @returns - */ -export declare function makeStrictEnum< - T extends Record, ->(definition: T): T; - -declare type Narrowable = string | number | bigint | boolean | []; - -declare class NullTypesEnumValue extends ObjectEnumValue { - _getNamespace(): string; -} - -/** - * Base class for unique values of object-valued enums. - */ -declare abstract class ObjectEnumValue { - constructor(arg?: symbol); - abstract _getNamespace(): string; - _getName(): string; - toString(): string; -} - -export declare const objectEnumValues: { - classes: { - DbNull: typeof DbNull; - JsonNull: typeof JsonNull; - AnyNull: typeof AnyNull; - }; - instances: { - DbNull: DbNull; - JsonNull: JsonNull; - AnyNull: AnyNull; - }; -}; - -declare type Operation = - | "findFirst" - | "findFirstOrThrow" - | "findUnique" - | "findUniqueOrThrow" - | "findMany" - | "create" - | "createMany" - | "createManyAndReturn" - | "update" - | "updateMany" - | "updateManyAndReturn" - | "upsert" - | "delete" - | "deleteMany" - | "aggregate" - | "count" - | "groupBy" - | "$queryRaw" - | "$executeRaw" - | "$queryRawUnsafe" - | "$executeRawUnsafe" - | "findRaw" - | "aggregateRaw" - | "$runCommandRaw"; - -declare namespace Public { - export { validator }; -} -export { Public }; - -declare type RuntimeName = - | "workerd" - | "deno" - | "netlify" - | "node" - | "bun" - | "edge-light" - | ""; - -declare function validator(): (select: Exact) => S; - -declare function validator< - C, - M extends Exclude, - O extends keyof C[M] & Operation, ->(client: C, model: M, operation: O): (select: Exact>) => S; - -declare function validator< - C, - M extends Exclude, - O extends keyof C[M] & Operation, - P extends keyof Args, ->( - client: C, - model: M, - operation: O, - prop: P, -): (select: Exact[P]>) => S; - -export {}; +declare class AnyNull extends NullTypesEnumValue { + #private; +} + +declare type Args = T extends { + [K: symbol]: { + types: { + operations: { + [K in F]: { + args: any; + }; + }; + }; + }; +} ? T[symbol]['types']['operations'][F]['args'] : any; + +declare class DbNull extends NullTypesEnumValue { + #private; +} + +export declare function Decimal(n: Decimal.Value): Decimal; + +export declare namespace Decimal { + export type Constructor = typeof Decimal; + export type Instance = Decimal; + export type Rounding = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8; + export type Modulo = Rounding | 9; + export type Value = string | number | Decimal; + + // http://mikemcl.github.io/decimal.js/#constructor-properties + export interface Config { + precision?: number; + rounding?: Rounding; + toExpNeg?: number; + toExpPos?: number; + minE?: number; + maxE?: number; + crypto?: boolean; + modulo?: Modulo; + defaults?: boolean; + } +} + +export declare class Decimal { + readonly d: number[]; + readonly e: number; + readonly s: number; + + constructor(n: Decimal.Value); + + absoluteValue(): Decimal; + abs(): Decimal; + + ceil(): Decimal; + + clampedTo(min: Decimal.Value, max: Decimal.Value): Decimal; + clamp(min: Decimal.Value, max: Decimal.Value): Decimal; + + comparedTo(n: Decimal.Value): number; + cmp(n: Decimal.Value): number; + + cosine(): Decimal; + cos(): Decimal; + + cubeRoot(): Decimal; + cbrt(): Decimal; + + decimalPlaces(): number; + dp(): number; + + dividedBy(n: Decimal.Value): Decimal; + div(n: Decimal.Value): Decimal; + + dividedToIntegerBy(n: Decimal.Value): Decimal; + divToInt(n: Decimal.Value): Decimal; + + equals(n: Decimal.Value): boolean; + eq(n: Decimal.Value): boolean; + + floor(): Decimal; + + greaterThan(n: Decimal.Value): boolean; + gt(n: Decimal.Value): boolean; + + greaterThanOrEqualTo(n: Decimal.Value): boolean; + gte(n: Decimal.Value): boolean; + + hyperbolicCosine(): Decimal; + cosh(): Decimal; + + hyperbolicSine(): Decimal; + sinh(): Decimal; + + hyperbolicTangent(): Decimal; + tanh(): Decimal; + + inverseCosine(): Decimal; + acos(): Decimal; + + inverseHyperbolicCosine(): Decimal; + acosh(): Decimal; + + inverseHyperbolicSine(): Decimal; + asinh(): Decimal; + + inverseHyperbolicTangent(): Decimal; + atanh(): Decimal; + + inverseSine(): Decimal; + asin(): Decimal; + + inverseTangent(): Decimal; + atan(): Decimal; + + isFinite(): boolean; + + isInteger(): boolean; + isInt(): boolean; + + isNaN(): boolean; + + isNegative(): boolean; + isNeg(): boolean; + + isPositive(): boolean; + isPos(): boolean; + + isZero(): boolean; + + lessThan(n: Decimal.Value): boolean; + lt(n: Decimal.Value): boolean; + + lessThanOrEqualTo(n: Decimal.Value): boolean; + lte(n: Decimal.Value): boolean; + + logarithm(n?: Decimal.Value): Decimal; + log(n?: Decimal.Value): Decimal; + + minus(n: Decimal.Value): Decimal; + sub(n: Decimal.Value): Decimal; + + modulo(n: Decimal.Value): Decimal; + mod(n: Decimal.Value): Decimal; + + naturalExponential(): Decimal; + exp(): Decimal; + + naturalLogarithm(): Decimal; + ln(): Decimal; + + negated(): Decimal; + neg(): Decimal; + + plus(n: Decimal.Value): Decimal; + add(n: Decimal.Value): Decimal; + + precision(includeZeros?: boolean): number; + sd(includeZeros?: boolean): number; + + round(): Decimal; + + sine() : Decimal; + sin() : Decimal; + + squareRoot(): Decimal; + sqrt(): Decimal; + + tangent() : Decimal; + tan() : Decimal; + + times(n: Decimal.Value): Decimal; + mul(n: Decimal.Value) : Decimal; + + toBinary(significantDigits?: number): string; + toBinary(significantDigits: number, rounding: Decimal.Rounding): string; + + toDecimalPlaces(decimalPlaces?: number): Decimal; + toDecimalPlaces(decimalPlaces: number, rounding: Decimal.Rounding): Decimal; + toDP(decimalPlaces?: number): Decimal; + toDP(decimalPlaces: number, rounding: Decimal.Rounding): Decimal; + + toExponential(decimalPlaces?: number): string; + toExponential(decimalPlaces: number, rounding: Decimal.Rounding): string; + + toFixed(decimalPlaces?: number): string; + toFixed(decimalPlaces: number, rounding: Decimal.Rounding): string; + + toFraction(max_denominator?: Decimal.Value): Decimal[]; + + toHexadecimal(significantDigits?: number): string; + toHexadecimal(significantDigits: number, rounding: Decimal.Rounding): string; + toHex(significantDigits?: number): string; + toHex(significantDigits: number, rounding?: Decimal.Rounding): string; + + toJSON(): string; + + toNearest(n: Decimal.Value, rounding?: Decimal.Rounding): Decimal; + + toNumber(): number; + + toOctal(significantDigits?: number): string; + toOctal(significantDigits: number, rounding: Decimal.Rounding): string; + + toPower(n: Decimal.Value): Decimal; + pow(n: Decimal.Value): Decimal; + + toPrecision(significantDigits?: number): string; + toPrecision(significantDigits: number, rounding: Decimal.Rounding): string; + + toSignificantDigits(significantDigits?: number): Decimal; + toSignificantDigits(significantDigits: number, rounding: Decimal.Rounding): Decimal; + toSD(significantDigits?: number): Decimal; + toSD(significantDigits: number, rounding: Decimal.Rounding): Decimal; + + toString(): string; + + truncated(): Decimal; + trunc(): Decimal; + + valueOf(): string; + + static abs(n: Decimal.Value): Decimal; + static acos(n: Decimal.Value): Decimal; + static acosh(n: Decimal.Value): Decimal; + static add(x: Decimal.Value, y: Decimal.Value): Decimal; + static asin(n: Decimal.Value): Decimal; + static asinh(n: Decimal.Value): Decimal; + static atan(n: Decimal.Value): Decimal; + static atanh(n: Decimal.Value): Decimal; + static atan2(y: Decimal.Value, x: Decimal.Value): Decimal; + static cbrt(n: Decimal.Value): Decimal; + static ceil(n: Decimal.Value): Decimal; + static clamp(n: Decimal.Value, min: Decimal.Value, max: Decimal.Value): Decimal; + static clone(object?: Decimal.Config): Decimal.Constructor; + static config(object: Decimal.Config): Decimal.Constructor; + static cos(n: Decimal.Value): Decimal; + static cosh(n: Decimal.Value): Decimal; + static div(x: Decimal.Value, y: Decimal.Value): Decimal; + static exp(n: Decimal.Value): Decimal; + static floor(n: Decimal.Value): Decimal; + static hypot(...n: Decimal.Value[]): Decimal; + static isDecimal(object: any): object is Decimal; + static ln(n: Decimal.Value): Decimal; + static log(n: Decimal.Value, base?: Decimal.Value): Decimal; + static log2(n: Decimal.Value): Decimal; + static log10(n: Decimal.Value): Decimal; + static max(...n: Decimal.Value[]): Decimal; + static min(...n: Decimal.Value[]): Decimal; + static mod(x: Decimal.Value, y: Decimal.Value): Decimal; + static mul(x: Decimal.Value, y: Decimal.Value): Decimal; + static noConflict(): Decimal.Constructor; // Browser only + static pow(base: Decimal.Value, exponent: Decimal.Value): Decimal; + static random(significantDigits?: number): Decimal; + static round(n: Decimal.Value): Decimal; + static set(object: Decimal.Config): Decimal.Constructor; + static sign(n: Decimal.Value): number; + static sin(n: Decimal.Value): Decimal; + static sinh(n: Decimal.Value): Decimal; + static sqrt(n: Decimal.Value): Decimal; + static sub(x: Decimal.Value, y: Decimal.Value): Decimal; + static sum(...n: Decimal.Value[]): Decimal; + static tan(n: Decimal.Value): Decimal; + static tanh(n: Decimal.Value): Decimal; + static trunc(n: Decimal.Value): Decimal; + + static readonly default?: Decimal.Constructor; + static readonly Decimal?: Decimal.Constructor; + + static readonly precision: number; + static readonly rounding: Decimal.Rounding; + static readonly toExpNeg: number; + static readonly toExpPos: number; + static readonly minE: number; + static readonly maxE: number; + static readonly crypto: boolean; + static readonly modulo: Decimal.Modulo; + + static readonly ROUND_UP: 0; + static readonly ROUND_DOWN: 1; + static readonly ROUND_CEIL: 2; + static readonly ROUND_FLOOR: 3; + static readonly ROUND_HALF_UP: 4; + static readonly ROUND_HALF_DOWN: 5; + static readonly ROUND_HALF_EVEN: 6; + static readonly ROUND_HALF_CEIL: 7; + static readonly ROUND_HALF_FLOOR: 8; + static readonly EUCLID: 9; +} + +declare type Exact = (A extends unknown ? (W extends A ? { + [K in keyof A]: Exact; +} : W) : never) | (A extends Narrowable ? A : never); + +export declare function getRuntime(): GetRuntimeOutput; + +declare type GetRuntimeOutput = { + id: RuntimeName; + prettyName: string; + isEdge: boolean; +}; + +declare class JsonNull extends NullTypesEnumValue { + #private; +} + +/** + * Generates more strict variant of an enum which, unlike regular enum, + * throws on non-existing property access. This can be useful in following situations: + * - we have an API, that accepts both `undefined` and `SomeEnumType` as an input + * - enum values are generated dynamically from DMMF. + * + * In that case, if using normal enums and no compile-time typechecking, using non-existing property + * will result in `undefined` value being used, which will be accepted. Using strict enum + * in this case will help to have a runtime exception, telling you that you are probably doing something wrong. + * + * Note: if you need to check for existence of a value in the enum you can still use either + * `in` operator or `hasOwnProperty` function. + * + * @param definition + * @returns + */ +export declare function makeStrictEnum>(definition: T): T; + +declare type Narrowable = string | number | bigint | boolean | []; + +declare class NullTypesEnumValue extends ObjectEnumValue { + _getNamespace(): string; +} + +/** + * Base class for unique values of object-valued enums. + */ +declare abstract class ObjectEnumValue { + constructor(arg?: symbol); + abstract _getNamespace(): string; + _getName(): string; + toString(): string; +} + +export declare const objectEnumValues: { + classes: { + DbNull: typeof DbNull; + JsonNull: typeof JsonNull; + AnyNull: typeof AnyNull; + }; + instances: { + DbNull: DbNull; + JsonNull: JsonNull; + AnyNull: AnyNull; + }; +}; + +declare type Operation = 'findFirst' | 'findFirstOrThrow' | 'findUnique' | 'findUniqueOrThrow' | 'findMany' | 'create' | 'createMany' | 'createManyAndReturn' | 'update' | 'updateMany' | 'updateManyAndReturn' | 'upsert' | 'delete' | 'deleteMany' | 'aggregate' | 'count' | 'groupBy' | '$queryRaw' | '$executeRaw' | '$queryRawUnsafe' | '$executeRawUnsafe' | 'findRaw' | 'aggregateRaw' | '$runCommandRaw'; + +declare namespace Public { + export { + validator + } +} +export { Public } + +declare type RuntimeName = 'workerd' | 'deno' | 'netlify' | 'node' | 'bun' | 'edge-light' | ''; + +declare function validator(): (select: Exact) => S; + +declare function validator, O extends keyof C[M] & Operation>(client: C, model: M, operation: O): (select: Exact>) => S; + +declare function validator, O extends keyof C[M] & Operation, P extends keyof Args>(client: C, model: M, operation: O, prop: P): (select: Exact[P]>) => S; + +export { } diff --git a/generated/prisma/runtime/index-browser.js b/generated/prisma/runtime/index-browser.js index edc030f9..086502f4 100644 --- a/generated/prisma/runtime/index-browser.js +++ b/generated/prisma/runtime/index-browser.js @@ -1,2280 +1,8 @@ + /* !!! This is code generated by Prisma. Do not edit directly. !!! /* eslint-disable */ // biome-ignore-all lint: generated file -"use strict"; -var pe = Object.defineProperty; -var Xe = Object.getOwnPropertyDescriptor; -var Ke = Object.getOwnPropertyNames; -var Qe = Object.prototype.hasOwnProperty; -var Ye = (e) => { - throw TypeError(e); -}; -var Oe = (e, n) => { - for (var i in n) pe(e, i, { get: n[i], enumerable: !0 }); - }, - xe = (e, n, i, t) => { - if ((n && typeof n == "object") || typeof n == "function") - for (let r of Ke(n)) - !Qe.call(e, r) && - r !== i && - pe(e, r, { - get: () => n[r], - enumerable: !(t = Xe(n, r)) || t.enumerable, - }); - return e; - }; -var ze = (e) => xe(pe({}, "__esModule", { value: !0 }), e); -var ne = (e, n, i) => - n.has(e) - ? Ye("Cannot add the same private member more than once") - : n instanceof WeakSet - ? n.add(e) - : n.set(e, i); -var ii = {}; -Oe(ii, { - Decimal: () => Je, - Public: () => ge, - getRuntime: () => _e, - makeStrictEnum: () => qe, - objectEnumValues: () => Ae, -}); -module.exports = ze(ii); -var ge = {}; -Oe(ge, { validator: () => Re }); -function Re(...e) { - return (n) => n; -} -var ie = Symbol(), - me = new WeakMap(), - we = class { - constructor(n) { - n === ie - ? me.set(this, "Prisma.".concat(this._getName())) - : me.set( - this, - "new Prisma." - .concat(this._getNamespace(), ".") - .concat(this._getName(), "()"), - ); - } - _getName() { - return this.constructor.name; - } - toString() { - return me.get(this); - } - }, - G = class extends we { - _getNamespace() { - return "NullTypes"; - } - }, - Ne, - J = class extends G { - constructor() { - super(...arguments); - ne(this, Ne); - } - }; -Ne = new WeakMap(); -ke(J, "DbNull"); -var ve, - X = class extends G { - constructor() { - super(...arguments); - ne(this, ve); - } - }; -ve = new WeakMap(); -ke(X, "JsonNull"); -var Ee, - K = class extends G { - constructor() { - super(...arguments); - ne(this, Ee); - } - }; -Ee = new WeakMap(); -ke(K, "AnyNull"); -var Ae = { - classes: { DbNull: J, JsonNull: X, AnyNull: K }, - instances: { DbNull: new J(ie), JsonNull: new X(ie), AnyNull: new K(ie) }, -}; -function ke(e, n) { - Object.defineProperty(e, "name", { value: n, configurable: !0 }); -} -var ye = new Set([ - "toJSON", - "$$typeof", - "asymmetricMatch", - Symbol.iterator, - Symbol.toStringTag, - Symbol.isConcatSpreadable, - Symbol.toPrimitive, -]); -function qe(e) { - return new Proxy(e, { - get(n, i) { - if (i in n) return n[i]; - if (!ye.has(i)) - throw new TypeError("Invalid enum value: ".concat(String(i))); - }, - }); -} -var en = () => { - var e, n; - return ( - ((n = (e = globalThis.process) == null ? void 0 : e.release) == null - ? void 0 - : n.name) === "node" - ); - }, - nn = () => { - var e, n; - return ( - !!globalThis.Bun || - !!( - (n = (e = globalThis.process) == null ? void 0 : e.versions) != null && - n.bun - ) - ); - }, - tn = () => !!globalThis.Deno, - rn = () => typeof globalThis.Netlify == "object", - sn = () => typeof globalThis.EdgeRuntime == "object", - on = () => { - var e; - return ( - ((e = globalThis.navigator) == null ? void 0 : e.userAgent) === - "Cloudflare-Workers" - ); - }; -function un() { - var i; - return (i = [ - [rn, "netlify"], - [sn, "edge-light"], - [on, "workerd"], - [tn, "deno"], - [nn, "bun"], - [en, "node"], - ] - .flatMap((t) => (t[0]() ? [t[1]] : [])) - .at(0)) != null - ? i - : ""; -} -var fn = { - node: "Node.js", - workerd: "Cloudflare Workers", - deno: "Deno and Deno Deploy", - netlify: "Netlify Edge Functions", - "edge-light": - "Edge Runtime (Vercel Edge Functions, Vercel Edge Middleware, Next.js (Pages Router) Edge API Routes, Next.js (App Router) Edge Route Handlers or Next.js Middleware)", -}; -function _e() { - let e = un(); - return { - id: e, - prettyName: fn[e] || e, - isEdge: ["workerd", "deno", "netlify", "edge-light"].includes(e), - }; -} -var V = 9e15, - H = 1e9, - Se = "0123456789abcdef", - se = - "2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058", - oe = - "3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789", - Me = { - precision: 20, - rounding: 4, - modulo: 1, - toExpNeg: -7, - toExpPos: 21, - minE: -V, - maxE: V, - crypto: !1, - }, - Le, - Z, - w = !0, - fe = "[DecimalError] ", - $ = fe + "Invalid argument: ", - Ie = fe + "Precision limit exceeded", - Ze = fe + "crypto unavailable", - Ue = "[object Decimal]", - R = Math.floor, - C = Math.pow, - cn = /^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i, - ln = /^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i, - an = /^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i, - Be = /^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i, - D = 1e7, - m = 7, - dn = 9007199254740991, - hn = se.length - 1, - Ce = oe.length - 1, - h = { toStringTag: Ue }; -h.absoluteValue = h.abs = function () { - var e = new this.constructor(this); - return (e.s < 0 && (e.s = 1), p(e)); -}; -h.ceil = function () { - return p(new this.constructor(this), this.e + 1, 2); -}; -h.clampedTo = h.clamp = function (e, n) { - var i, - t = this, - r = t.constructor; - if (((e = new r(e)), (n = new r(n)), !e.s || !n.s)) return new r(NaN); - if (e.gt(n)) throw Error($ + n); - return ((i = t.cmp(e)), i < 0 ? e : t.cmp(n) > 0 ? n : new r(t)); -}; -h.comparedTo = h.cmp = function (e) { - var n, - i, - t, - r, - s = this, - o = s.d, - u = (e = new s.constructor(e)).d, - c = s.s, - f = e.s; - if (!o || !u) - return !c || !f ? NaN : c !== f ? c : o === u ? 0 : !o ^ (c < 0) ? 1 : -1; - if (!o[0] || !u[0]) return o[0] ? c : u[0] ? -f : 0; - if (c !== f) return c; - if (s.e !== e.e) return (s.e > e.e) ^ (c < 0) ? 1 : -1; - for (t = o.length, r = u.length, n = 0, i = t < r ? t : r; n < i; ++n) - if (o[n] !== u[n]) return (o[n] > u[n]) ^ (c < 0) ? 1 : -1; - return t === r ? 0 : (t > r) ^ (c < 0) ? 1 : -1; -}; -h.cosine = h.cos = function () { - var e, - n, - i = this, - t = i.constructor; - return i.d - ? i.d[0] - ? ((e = t.precision), - (n = t.rounding), - (t.precision = e + Math.max(i.e, i.sd()) + m), - (t.rounding = 1), - (i = pn(t, We(t, i))), - (t.precision = e), - (t.rounding = n), - p(Z == 2 || Z == 3 ? i.neg() : i, e, n, !0)) - : new t(1) - : new t(NaN); -}; -h.cubeRoot = h.cbrt = function () { - var e, - n, - i, - t, - r, - s, - o, - u, - c, - f, - l = this, - a = l.constructor; - if (!l.isFinite() || l.isZero()) return new a(l); - for ( - w = !1, - s = l.s * C(l.s * l, 1 / 3), - !s || Math.abs(s) == 1 / 0 - ? ((i = b(l.d)), - (e = l.e), - (s = (e - i.length + 1) % 3) && (i += s == 1 || s == -2 ? "0" : "00"), - (s = C(i, 1 / 3)), - (e = R((e + 1) / 3) - (e % 3 == (e < 0 ? -1 : 2))), - s == 1 / 0 - ? (i = "5e" + e) - : ((i = s.toExponential()), - (i = i.slice(0, i.indexOf("e") + 1) + e)), - (t = new a(i)), - (t.s = l.s)) - : (t = new a(s.toString())), - o = (e = a.precision) + 3; - ; - ) - if ( - ((u = t), - (c = u.times(u).times(u)), - (f = c.plus(l)), - (t = k(f.plus(l).times(u), f.plus(c), o + 2, 1)), - b(u.d).slice(0, o) === (i = b(t.d)).slice(0, o)) - ) - if (((i = i.slice(o - 3, o + 1)), i == "9999" || (!r && i == "4999"))) { - if (!r && (p(u, e + 1, 0), u.times(u).times(u).eq(l))) { - t = u; - break; - } - ((o += 4), (r = 1)); - } else { - (!+i || (!+i.slice(1) && i.charAt(0) == "5")) && - (p(t, e + 1, 1), (n = !t.times(t).times(t).eq(l))); - break; - } - return ((w = !0), p(t, e, a.rounding, n)); -}; -h.decimalPlaces = h.dp = function () { - var e, - n = this.d, - i = NaN; - if (n) { - if (((e = n.length - 1), (i = (e - R(this.e / m)) * m), (e = n[e]), e)) - for (; e % 10 == 0; e /= 10) i--; - i < 0 && (i = 0); - } - return i; -}; -h.dividedBy = h.div = function (e) { - return k(this, new this.constructor(e)); -}; -h.dividedToIntegerBy = h.divToInt = function (e) { - var n = this, - i = n.constructor; - return p(k(n, new i(e), 0, 1, 1), i.precision, i.rounding); -}; -h.equals = h.eq = function (e) { - return this.cmp(e) === 0; -}; -h.floor = function () { - return p(new this.constructor(this), this.e + 1, 3); -}; -h.greaterThan = h.gt = function (e) { - return this.cmp(e) > 0; -}; -h.greaterThanOrEqualTo = h.gte = function (e) { - var n = this.cmp(e); - return n == 1 || n === 0; -}; -h.hyperbolicCosine = h.cosh = function () { - var e, - n, - i, - t, - r, - s = this, - o = s.constructor, - u = new o(1); - if (!s.isFinite()) return new o(s.s ? 1 / 0 : NaN); - if (s.isZero()) return u; - ((i = o.precision), - (t = o.rounding), - (o.precision = i + Math.max(s.e, s.sd()) + 4), - (o.rounding = 1), - (r = s.d.length), - r < 32 - ? ((e = Math.ceil(r / 3)), (n = (1 / le(4, e)).toString())) - : ((e = 16), (n = "2.3283064365386962890625e-10")), - (s = j(o, 1, s.times(n), new o(1), !0))); - for (var c, f = e, l = new o(8); f--; ) - ((c = s.times(s)), (s = u.minus(c.times(l.minus(c.times(l)))))); - return p(s, (o.precision = i), (o.rounding = t), !0); -}; -h.hyperbolicSine = h.sinh = function () { - var e, - n, - i, - t, - r = this, - s = r.constructor; - if (!r.isFinite() || r.isZero()) return new s(r); - if ( - ((n = s.precision), - (i = s.rounding), - (s.precision = n + Math.max(r.e, r.sd()) + 4), - (s.rounding = 1), - (t = r.d.length), - t < 3) - ) - r = j(s, 2, r, r, !0); - else { - ((e = 1.4 * Math.sqrt(t)), - (e = e > 16 ? 16 : e | 0), - (r = r.times(1 / le(5, e))), - (r = j(s, 2, r, r, !0))); - for (var o, u = new s(5), c = new s(16), f = new s(20); e--; ) - ((o = r.times(r)), (r = r.times(u.plus(o.times(c.times(o).plus(f)))))); - } - return ((s.precision = n), (s.rounding = i), p(r, n, i, !0)); -}; -h.hyperbolicTangent = h.tanh = function () { - var e, - n, - i = this, - t = i.constructor; - return i.isFinite() - ? i.isZero() - ? new t(i) - : ((e = t.precision), - (n = t.rounding), - (t.precision = e + 7), - (t.rounding = 1), - k(i.sinh(), i.cosh(), (t.precision = e), (t.rounding = n))) - : new t(i.s); -}; -h.inverseCosine = h.acos = function () { - var e = this, - n = e.constructor, - i = e.abs().cmp(1), - t = n.precision, - r = n.rounding; - return i !== -1 - ? i === 0 - ? e.isNeg() - ? F(n, t, r) - : new n(0) - : new n(NaN) - : e.isZero() - ? F(n, t + 4, r).times(0.5) - : ((n.precision = t + 6), - (n.rounding = 1), - (e = new n(1).minus(e).div(e.plus(1)).sqrt().atan()), - (n.precision = t), - (n.rounding = r), - e.times(2)); -}; -h.inverseHyperbolicCosine = h.acosh = function () { - var e, - n, - i = this, - t = i.constructor; - return i.lte(1) - ? new t(i.eq(1) ? 0 : NaN) - : i.isFinite() - ? ((e = t.precision), - (n = t.rounding), - (t.precision = e + Math.max(Math.abs(i.e), i.sd()) + 4), - (t.rounding = 1), - (w = !1), - (i = i.times(i).minus(1).sqrt().plus(i)), - (w = !0), - (t.precision = e), - (t.rounding = n), - i.ln()) - : new t(i); -}; -h.inverseHyperbolicSine = h.asinh = function () { - var e, - n, - i = this, - t = i.constructor; - return !i.isFinite() || i.isZero() - ? new t(i) - : ((e = t.precision), - (n = t.rounding), - (t.precision = e + 2 * Math.max(Math.abs(i.e), i.sd()) + 6), - (t.rounding = 1), - (w = !1), - (i = i.times(i).plus(1).sqrt().plus(i)), - (w = !0), - (t.precision = e), - (t.rounding = n), - i.ln()); -}; -h.inverseHyperbolicTangent = h.atanh = function () { - var e, - n, - i, - t, - r = this, - s = r.constructor; - return r.isFinite() - ? r.e >= 0 - ? new s(r.abs().eq(1) ? r.s / 0 : r.isZero() ? r : NaN) - : ((e = s.precision), - (n = s.rounding), - (t = r.sd()), - Math.max(t, e) < 2 * -r.e - 1 - ? p(new s(r), e, n, !0) - : ((s.precision = i = t - r.e), - (r = k(r.plus(1), new s(1).minus(r), i + e, 1)), - (s.precision = e + 4), - (s.rounding = 1), - (r = r.ln()), - (s.precision = e), - (s.rounding = n), - r.times(0.5))) - : new s(NaN); -}; -h.inverseSine = h.asin = function () { - var e, - n, - i, - t, - r = this, - s = r.constructor; - return r.isZero() - ? new s(r) - : ((n = r.abs().cmp(1)), - (i = s.precision), - (t = s.rounding), - n !== -1 - ? n === 0 - ? ((e = F(s, i + 4, t).times(0.5)), (e.s = r.s), e) - : new s(NaN) - : ((s.precision = i + 6), - (s.rounding = 1), - (r = r.div(new s(1).minus(r.times(r)).sqrt().plus(1)).atan()), - (s.precision = i), - (s.rounding = t), - r.times(2))); -}; -h.inverseTangent = h.atan = function () { - var e, - n, - i, - t, - r, - s, - o, - u, - c, - f = this, - l = f.constructor, - a = l.precision, - d = l.rounding; - if (f.isFinite()) { - if (f.isZero()) return new l(f); - if (f.abs().eq(1) && a + 4 <= Ce) - return ((o = F(l, a + 4, d).times(0.25)), (o.s = f.s), o); - } else { - if (!f.s) return new l(NaN); - if (a + 4 <= Ce) return ((o = F(l, a + 4, d).times(0.5)), (o.s = f.s), o); - } - for ( - l.precision = u = a + 10, - l.rounding = 1, - i = Math.min(28, (u / m + 2) | 0), - e = i; - e; - --e - ) - f = f.div(f.times(f).plus(1).sqrt().plus(1)); - for ( - w = !1, n = Math.ceil(u / m), t = 1, c = f.times(f), o = new l(f), r = f; - e !== -1; - ) - if ( - ((r = r.times(c)), - (s = o.minus(r.div((t += 2)))), - (r = r.times(c)), - (o = s.plus(r.div((t += 2)))), - o.d[n] !== void 0) - ) - for (e = n; o.d[e] === s.d[e] && e--; ); - return ( - i && (o = o.times(2 << (i - 1))), - (w = !0), - p(o, (l.precision = a), (l.rounding = d), !0) - ); -}; -h.isFinite = function () { - return !!this.d; -}; -h.isInteger = h.isInt = function () { - return !!this.d && R(this.e / m) > this.d.length - 2; -}; -h.isNaN = function () { - return !this.s; -}; -h.isNegative = h.isNeg = function () { - return this.s < 0; -}; -h.isPositive = h.isPos = function () { - return this.s > 0; -}; -h.isZero = function () { - return !!this.d && this.d[0] === 0; -}; -h.lessThan = h.lt = function (e) { - return this.cmp(e) < 0; -}; -h.lessThanOrEqualTo = h.lte = function (e) { - return this.cmp(e) < 1; -}; -h.logarithm = h.log = function (e) { - var n, - i, - t, - r, - s, - o, - u, - c, - f = this, - l = f.constructor, - a = l.precision, - d = l.rounding, - g = 5; - if (e == null) ((e = new l(10)), (n = !0)); - else { - if (((e = new l(e)), (i = e.d), e.s < 0 || !i || !i[0] || e.eq(1))) - return new l(NaN); - n = e.eq(10); - } - if (((i = f.d), f.s < 0 || !i || !i[0] || f.eq(1))) - return new l(i && !i[0] ? -1 / 0 : f.s != 1 ? NaN : i ? 0 : 1 / 0); - if (n) - if (i.length > 1) s = !0; - else { - for (r = i[0]; r % 10 === 0; ) r /= 10; - s = r !== 1; - } - if ( - ((w = !1), - (u = a + g), - (o = B(f, u)), - (t = n ? ue(l, u + 10) : B(e, u)), - (c = k(o, t, u, 1)), - Q(c.d, (r = a), d)) - ) - do - if ( - ((u += 10), - (o = B(f, u)), - (t = n ? ue(l, u + 10) : B(e, u)), - (c = k(o, t, u, 1)), - !s) - ) { - +b(c.d).slice(r + 1, r + 15) + 1 == 1e14 && (c = p(c, a + 1, 0)); - break; - } - while (Q(c.d, (r += 10), d)); - return ((w = !0), p(c, a, d)); -}; -h.minus = h.sub = function (e) { - var n, - i, - t, - r, - s, - o, - u, - c, - f, - l, - a, - d, - g = this, - v = g.constructor; - if (((e = new v(e)), !g.d || !e.d)) - return ( - !g.s || !e.s - ? (e = new v(NaN)) - : g.d - ? (e.s = -e.s) - : (e = new v(e.d || g.s !== e.s ? g : NaN)), - e - ); - if (g.s != e.s) return ((e.s = -e.s), g.plus(e)); - if ( - ((f = g.d), (d = e.d), (u = v.precision), (c = v.rounding), !f[0] || !d[0]) - ) { - if (d[0]) e.s = -e.s; - else if (f[0]) e = new v(g); - else return new v(c === 3 ? -0 : 0); - return w ? p(e, u, c) : e; - } - if (((i = R(e.e / m)), (l = R(g.e / m)), (f = f.slice()), (s = l - i), s)) { - for ( - a = s < 0, - a - ? ((n = f), (s = -s), (o = d.length)) - : ((n = d), (i = l), (o = f.length)), - t = Math.max(Math.ceil(u / m), o) + 2, - s > t && ((s = t), (n.length = 1)), - n.reverse(), - t = s; - t--; - ) - n.push(0); - n.reverse(); - } else { - for (t = f.length, o = d.length, a = t < o, a && (o = t), t = 0; t < o; t++) - if (f[t] != d[t]) { - a = f[t] < d[t]; - break; - } - s = 0; - } - for ( - a && ((n = f), (f = d), (d = n), (e.s = -e.s)), - o = f.length, - t = d.length - o; - t > 0; - --t - ) - f[o++] = 0; - for (t = d.length; t > s; ) { - if (f[--t] < d[t]) { - for (r = t; r && f[--r] === 0; ) f[r] = D - 1; - (--f[r], (f[t] += D)); - } - f[t] -= d[t]; - } - for (; f[--o] === 0; ) f.pop(); - for (; f[0] === 0; f.shift()) --i; - return f[0] - ? ((e.d = f), (e.e = ce(f, i)), w ? p(e, u, c) : e) - : new v(c === 3 ? -0 : 0); -}; -h.modulo = h.mod = function (e) { - var n, - i = this, - t = i.constructor; - return ( - (e = new t(e)), - !i.d || !e.s || (e.d && !e.d[0]) - ? new t(NaN) - : !e.d || (i.d && !i.d[0]) - ? p(new t(i), t.precision, t.rounding) - : ((w = !1), - t.modulo == 9 - ? ((n = k(i, e.abs(), 0, 3, 1)), (n.s *= e.s)) - : (n = k(i, e, 0, t.modulo, 1)), - (n = n.times(e)), - (w = !0), - i.minus(n)) - ); -}; -h.naturalExponential = h.exp = function () { - return be(this); -}; -h.naturalLogarithm = h.ln = function () { - return B(this); -}; -h.negated = h.neg = function () { - var e = new this.constructor(this); - return ((e.s = -e.s), p(e)); -}; -h.plus = h.add = function (e) { - var n, - i, - t, - r, - s, - o, - u, - c, - f, - l, - a = this, - d = a.constructor; - if (((e = new d(e)), !a.d || !e.d)) - return ( - !a.s || !e.s - ? (e = new d(NaN)) - : a.d || (e = new d(e.d || a.s === e.s ? a : NaN)), - e - ); - if (a.s != e.s) return ((e.s = -e.s), a.minus(e)); - if ( - ((f = a.d), (l = e.d), (u = d.precision), (c = d.rounding), !f[0] || !l[0]) - ) - return (l[0] || (e = new d(a)), w ? p(e, u, c) : e); - if (((s = R(a.e / m)), (t = R(e.e / m)), (f = f.slice()), (r = s - t), r)) { - for ( - r < 0 - ? ((i = f), (r = -r), (o = l.length)) - : ((i = l), (t = s), (o = f.length)), - s = Math.ceil(u / m), - o = s > o ? s + 1 : o + 1, - r > o && ((r = o), (i.length = 1)), - i.reverse(); - r--; - ) - i.push(0); - i.reverse(); - } - for ( - o = f.length, - r = l.length, - o - r < 0 && ((r = o), (i = l), (l = f), (f = i)), - n = 0; - r; - ) - ((n = ((f[--r] = f[r] + l[r] + n) / D) | 0), (f[r] %= D)); - for (n && (f.unshift(n), ++t), o = f.length; f[--o] == 0; ) f.pop(); - return ((e.d = f), (e.e = ce(f, t)), w ? p(e, u, c) : e); -}; -h.precision = h.sd = function (e) { - var n, - i = this; - if (e !== void 0 && e !== !!e && e !== 1 && e !== 0) throw Error($ + e); - return ( - i.d ? ((n = $e(i.d)), e && i.e + 1 > n && (n = i.e + 1)) : (n = NaN), - n - ); -}; -h.round = function () { - var e = this, - n = e.constructor; - return p(new n(e), e.e + 1, n.rounding); -}; -h.sine = h.sin = function () { - var e, - n, - i = this, - t = i.constructor; - return i.isFinite() - ? i.isZero() - ? new t(i) - : ((e = t.precision), - (n = t.rounding), - (t.precision = e + Math.max(i.e, i.sd()) + m), - (t.rounding = 1), - (i = mn(t, We(t, i))), - (t.precision = e), - (t.rounding = n), - p(Z > 2 ? i.neg() : i, e, n, !0)) - : new t(NaN); -}; -h.squareRoot = h.sqrt = function () { - var e, - n, - i, - t, - r, - s, - o = this, - u = o.d, - c = o.e, - f = o.s, - l = o.constructor; - if (f !== 1 || !u || !u[0]) - return new l(!f || (f < 0 && (!u || u[0])) ? NaN : u ? o : 1 / 0); - for ( - w = !1, - f = Math.sqrt(+o), - f == 0 || f == 1 / 0 - ? ((n = b(u)), - (n.length + c) % 2 == 0 && (n += "0"), - (f = Math.sqrt(n)), - (c = R((c + 1) / 2) - (c < 0 || c % 2)), - f == 1 / 0 - ? (n = "5e" + c) - : ((n = f.toExponential()), - (n = n.slice(0, n.indexOf("e") + 1) + c)), - (t = new l(n))) - : (t = new l(f.toString())), - i = (c = l.precision) + 3; - ; - ) - if ( - ((s = t), - (t = s.plus(k(o, s, i + 2, 1)).times(0.5)), - b(s.d).slice(0, i) === (n = b(t.d)).slice(0, i)) - ) - if (((n = n.slice(i - 3, i + 1)), n == "9999" || (!r && n == "4999"))) { - if (!r && (p(s, c + 1, 0), s.times(s).eq(o))) { - t = s; - break; - } - ((i += 4), (r = 1)); - } else { - (!+n || (!+n.slice(1) && n.charAt(0) == "5")) && - (p(t, c + 1, 1), (e = !t.times(t).eq(o))); - break; - } - return ((w = !0), p(t, c, l.rounding, e)); -}; -h.tangent = h.tan = function () { - var e, - n, - i = this, - t = i.constructor; - return i.isFinite() - ? i.isZero() - ? new t(i) - : ((e = t.precision), - (n = t.rounding), - (t.precision = e + 10), - (t.rounding = 1), - (i = i.sin()), - (i.s = 1), - (i = k(i, new t(1).minus(i.times(i)).sqrt(), e + 10, 0)), - (t.precision = e), - (t.rounding = n), - p(Z == 2 || Z == 4 ? i.neg() : i, e, n, !0)) - : new t(NaN); -}; -h.times = h.mul = function (e) { - var n, - i, - t, - r, - s, - o, - u, - c, - f, - l = this, - a = l.constructor, - d = l.d, - g = (e = new a(e)).d; - if (((e.s *= l.s), !d || !d[0] || !g || !g[0])) - return new a( - !e.s || (d && !d[0] && !g) || (g && !g[0] && !d) - ? NaN - : !d || !g - ? e.s / 0 - : e.s * 0, - ); - for ( - i = R(l.e / m) + R(e.e / m), - c = d.length, - f = g.length, - c < f && ((s = d), (d = g), (g = s), (o = c), (c = f), (f = o)), - s = [], - o = c + f, - t = o; - t--; - ) - s.push(0); - for (t = f; --t >= 0; ) { - for (n = 0, r = c + t; r > t; ) - ((u = s[r] + g[t] * d[r - t - 1] + n), - (s[r--] = (u % D) | 0), - (n = (u / D) | 0)); - s[r] = ((s[r] + n) % D) | 0; - } - for (; !s[--o]; ) s.pop(); - return ( - n ? ++i : s.shift(), - (e.d = s), - (e.e = ce(s, i)), - w ? p(e, a.precision, a.rounding) : e - ); -}; -h.toBinary = function (e, n) { - return Pe(this, 2, e, n); -}; -h.toDecimalPlaces = h.toDP = function (e, n) { - var i = this, - t = i.constructor; - return ( - (i = new t(i)), - e === void 0 - ? i - : (q(e, 0, H), - n === void 0 ? (n = t.rounding) : q(n, 0, 8), - p(i, e + i.e + 1, n)) - ); -}; -h.toExponential = function (e, n) { - var i, - t = this, - r = t.constructor; - return ( - e === void 0 - ? (i = L(t, !0)) - : (q(e, 0, H), - n === void 0 ? (n = r.rounding) : q(n, 0, 8), - (t = p(new r(t), e + 1, n)), - (i = L(t, !0, e + 1))), - t.isNeg() && !t.isZero() ? "-" + i : i - ); -}; -h.toFixed = function (e, n) { - var i, - t, - r = this, - s = r.constructor; - return ( - e === void 0 - ? (i = L(r)) - : (q(e, 0, H), - n === void 0 ? (n = s.rounding) : q(n, 0, 8), - (t = p(new s(r), e + r.e + 1, n)), - (i = L(t, !1, e + t.e + 1))), - r.isNeg() && !r.isZero() ? "-" + i : i - ); -}; -h.toFraction = function (e) { - var n, - i, - t, - r, - s, - o, - u, - c, - f, - l, - a, - d, - g = this, - v = g.d, - N = g.constructor; - if (!v) return new N(g); - if ( - ((f = i = new N(1)), - (t = c = new N(0)), - (n = new N(t)), - (s = n.e = $e(v) - g.e - 1), - (o = s % m), - (n.d[0] = C(10, o < 0 ? m + o : o)), - e == null) - ) - e = s > 0 ? n : f; - else { - if (((u = new N(e)), !u.isInt() || u.lt(f))) throw Error($ + u); - e = u.gt(n) ? (s > 0 ? n : f) : u; - } - for ( - w = !1, - u = new N(b(v)), - l = N.precision, - N.precision = s = v.length * m * 2; - (a = k(u, n, 0, 1, 1)), (r = i.plus(a.times(t))), r.cmp(e) != 1; - ) - ((i = t), - (t = r), - (r = f), - (f = c.plus(a.times(r))), - (c = r), - (r = n), - (n = u.minus(a.times(r))), - (u = r)); - return ( - (r = k(e.minus(i), t, 0, 1, 1)), - (c = c.plus(r.times(f))), - (i = i.plus(r.times(t))), - (c.s = f.s = g.s), - (d = - k(f, t, s, 1) - .minus(g) - .abs() - .cmp(k(c, i, s, 1).minus(g).abs()) < 1 - ? [f, t] - : [c, i]), - (N.precision = l), - (w = !0), - d - ); -}; -h.toHexadecimal = h.toHex = function (e, n) { - return Pe(this, 16, e, n); -}; -h.toNearest = function (e, n) { - var i = this, - t = i.constructor; - if (((i = new t(i)), e == null)) { - if (!i.d) return i; - ((e = new t(1)), (n = t.rounding)); - } else { - if (((e = new t(e)), n === void 0 ? (n = t.rounding) : q(n, 0, 8), !i.d)) - return e.s ? i : e; - if (!e.d) return (e.s && (e.s = i.s), e); - } - return ( - e.d[0] - ? ((w = !1), (i = k(i, e, 0, n, 1).times(e)), (w = !0), p(i)) - : ((e.s = i.s), (i = e)), - i - ); -}; -h.toNumber = function () { - return +this; -}; -h.toOctal = function (e, n) { - return Pe(this, 8, e, n); -}; -h.toPower = h.pow = function (e) { - var n, - i, - t, - r, - s, - o, - u = this, - c = u.constructor, - f = +(e = new c(e)); - if (!u.d || !e.d || !u.d[0] || !e.d[0]) return new c(C(+u, f)); - if (((u = new c(u)), u.eq(1))) return u; - if (((t = c.precision), (s = c.rounding), e.eq(1))) return p(u, t, s); - if (((n = R(e.e / m)), n >= e.d.length - 1 && (i = f < 0 ? -f : f) <= dn)) - return ((r = He(c, u, i, t)), e.s < 0 ? new c(1).div(r) : p(r, t, s)); - if (((o = u.s), o < 0)) { - if (n < e.d.length - 1) return new c(NaN); - if ( - ((e.d[n] & 1) == 0 && (o = 1), u.e == 0 && u.d[0] == 1 && u.d.length == 1) - ) - return ((u.s = o), u); - } - return ( - (i = C(+u, f)), - (n = - i == 0 || !isFinite(i) - ? R(f * (Math.log("0." + b(u.d)) / Math.LN10 + u.e + 1)) - : new c(i + "").e), - n > c.maxE + 1 || n < c.minE - 1 - ? new c(n > 0 ? o / 0 : 0) - : ((w = !1), - (c.rounding = u.s = 1), - (i = Math.min(12, (n + "").length)), - (r = be(e.times(B(u, t + i)), t)), - r.d && - ((r = p(r, t + 5, 1)), - Q(r.d, t, s) && - ((n = t + 10), - (r = p(be(e.times(B(u, n + i)), n), n + 5, 1)), - +b(r.d).slice(t + 1, t + 15) + 1 == 1e14 && (r = p(r, t + 1, 0)))), - (r.s = o), - (w = !0), - (c.rounding = s), - p(r, t, s)) - ); -}; -h.toPrecision = function (e, n) { - var i, - t = this, - r = t.constructor; - return ( - e === void 0 - ? (i = L(t, t.e <= r.toExpNeg || t.e >= r.toExpPos)) - : (q(e, 1, H), - n === void 0 ? (n = r.rounding) : q(n, 0, 8), - (t = p(new r(t), e, n)), - (i = L(t, e <= t.e || t.e <= r.toExpNeg, e))), - t.isNeg() && !t.isZero() ? "-" + i : i - ); -}; -h.toSignificantDigits = h.toSD = function (e, n) { - var i = this, - t = i.constructor; - return ( - e === void 0 - ? ((e = t.precision), (n = t.rounding)) - : (q(e, 1, H), n === void 0 ? (n = t.rounding) : q(n, 0, 8)), - p(new t(i), e, n) - ); -}; -h.toString = function () { - var e = this, - n = e.constructor, - i = L(e, e.e <= n.toExpNeg || e.e >= n.toExpPos); - return e.isNeg() && !e.isZero() ? "-" + i : i; -}; -h.truncated = h.trunc = function () { - return p(new this.constructor(this), this.e + 1, 1); -}; -h.valueOf = h.toJSON = function () { - var e = this, - n = e.constructor, - i = L(e, e.e <= n.toExpNeg || e.e >= n.toExpPos); - return e.isNeg() ? "-" + i : i; -}; -function b(e) { - var n, - i, - t, - r = e.length - 1, - s = "", - o = e[0]; - if (r > 0) { - for (s += o, n = 1; n < r; n++) - ((t = e[n] + ""), (i = m - t.length), i && (s += U(i)), (s += t)); - ((o = e[n]), (t = o + ""), (i = m - t.length), i && (s += U(i))); - } else if (o === 0) return "0"; - for (; o % 10 === 0; ) o /= 10; - return s + o; -} -function q(e, n, i) { - if (e !== ~~e || e < n || e > i) throw Error($ + e); -} -function Q(e, n, i, t) { - var r, s, o, u; - for (s = e[0]; s >= 10; s /= 10) --n; - return ( - --n < 0 ? ((n += m), (r = 0)) : ((r = Math.ceil((n + 1) / m)), (n %= m)), - (s = C(10, m - n)), - (u = (e[r] % s) | 0), - t == null - ? n < 3 - ? (n == 0 ? (u = (u / 100) | 0) : n == 1 && (u = (u / 10) | 0), - (o = - (i < 4 && u == 99999) || - (i > 3 && u == 49999) || - u == 5e4 || - u == 0)) - : (o = - (((i < 4 && u + 1 == s) || (i > 3 && u + 1 == s / 2)) && - ((e[r + 1] / s / 100) | 0) == C(10, n - 2) - 1) || - ((u == s / 2 || u == 0) && ((e[r + 1] / s / 100) | 0) == 0)) - : n < 4 - ? (n == 0 - ? (u = (u / 1e3) | 0) - : n == 1 - ? (u = (u / 100) | 0) - : n == 2 && (u = (u / 10) | 0), - (o = ((t || i < 4) && u == 9999) || (!t && i > 3 && u == 4999))) - : (o = - (((t || i < 4) && u + 1 == s) || (!t && i > 3 && u + 1 == s / 2)) && - ((e[r + 1] / s / 1e3) | 0) == C(10, n - 3) - 1), - o - ); -} -function te(e, n, i) { - for (var t, r = [0], s, o = 0, u = e.length; o < u; ) { - for (s = r.length; s--; ) r[s] *= n; - for (r[0] += Se.indexOf(e.charAt(o++)), t = 0; t < r.length; t++) - r[t] > i - 1 && - (r[t + 1] === void 0 && (r[t + 1] = 0), - (r[t + 1] += (r[t] / i) | 0), - (r[t] %= i)); - } - return r.reverse(); -} -function pn(e, n) { - var i, t, r; - if (n.isZero()) return n; - ((t = n.d.length), - t < 32 - ? ((i = Math.ceil(t / 3)), (r = (1 / le(4, i)).toString())) - : ((i = 16), (r = "2.3283064365386962890625e-10")), - (e.precision += i), - (n = j(e, 1, n.times(r), new e(1)))); - for (var s = i; s--; ) { - var o = n.times(n); - n = o.times(o).minus(o).times(8).plus(1); - } - return ((e.precision -= i), n); -} -var k = (function () { - function e(t, r, s) { - var o, - u = 0, - c = t.length; - for (t = t.slice(); c--; ) - ((o = t[c] * r + u), (t[c] = (o % s) | 0), (u = (o / s) | 0)); - return (u && t.unshift(u), t); - } - function n(t, r, s, o) { - var u, c; - if (s != o) c = s > o ? 1 : -1; - else - for (u = c = 0; u < s; u++) - if (t[u] != r[u]) { - c = t[u] > r[u] ? 1 : -1; - break; - } - return c; - } - function i(t, r, s, o) { - for (var u = 0; s--; ) - ((t[s] -= u), (u = t[s] < r[s] ? 1 : 0), (t[s] = u * o + t[s] - r[s])); - for (; !t[0] && t.length > 1; ) t.shift(); - } - return function (t, r, s, o, u, c) { - var f, - l, - a, - d, - g, - v, - N, - A, - M, - _, - E, - P, - x, - I, - ae, - z, - W, - de, - T, - y, - ee = t.constructor, - he = t.s == r.s ? 1 : -1, - O = t.d, - S = r.d; - if (!O || !O[0] || !S || !S[0]) - return new ee( - !t.s || !r.s || (O ? S && O[0] == S[0] : !S) - ? NaN - : (O && O[0] == 0) || !S - ? he * 0 - : he / 0, - ); - for ( - c - ? ((g = 1), (l = t.e - r.e)) - : ((c = D), (g = m), (l = R(t.e / g) - R(r.e / g))), - T = S.length, - W = O.length, - M = new ee(he), - _ = M.d = [], - a = 0; - S[a] == (O[a] || 0); - a++ - ); - if ( - (S[a] > (O[a] || 0) && l--, - s == null - ? ((I = s = ee.precision), (o = ee.rounding)) - : u - ? (I = s + (t.e - r.e) + 1) - : (I = s), - I < 0) - ) - (_.push(1), (v = !0)); - else { - if (((I = (I / g + 2) | 0), (a = 0), T == 1)) { - for (d = 0, S = S[0], I++; (a < W || d) && I--; a++) - ((ae = d * c + (O[a] || 0)), - (_[a] = (ae / S) | 0), - (d = (ae % S) | 0)); - v = d || a < W; - } else { - for ( - d = (c / (S[0] + 1)) | 0, - d > 1 && - ((S = e(S, d, c)), - (O = e(O, d, c)), - (T = S.length), - (W = O.length)), - z = T, - E = O.slice(0, T), - P = E.length; - P < T; - ) - E[P++] = 0; - ((y = S.slice()), y.unshift(0), (de = S[0]), S[1] >= c / 2 && ++de); - do - ((d = 0), - (f = n(S, E, T, P)), - f < 0 - ? ((x = E[0]), - T != P && (x = x * c + (E[1] || 0)), - (d = (x / de) | 0), - d > 1 - ? (d >= c && (d = c - 1), - (N = e(S, d, c)), - (A = N.length), - (P = E.length), - (f = n(N, E, A, P)), - f == 1 && (d--, i(N, T < A ? y : S, A, c))) - : (d == 0 && (f = d = 1), (N = S.slice())), - (A = N.length), - A < P && N.unshift(0), - i(E, N, P, c), - f == -1 && - ((P = E.length), - (f = n(S, E, T, P)), - f < 1 && (d++, i(E, T < P ? y : S, P, c))), - (P = E.length)) - : f === 0 && (d++, (E = [0])), - (_[a++] = d), - f && E[0] ? (E[P++] = O[z] || 0) : ((E = [O[z]]), (P = 1))); - while ((z++ < W || E[0] !== void 0) && I--); - v = E[0] !== void 0; - } - _[0] || _.shift(); - } - if (g == 1) ((M.e = l), (Le = v)); - else { - for (a = 1, d = _[0]; d >= 10; d /= 10) a++; - ((M.e = a + l * g - 1), p(M, u ? s + M.e + 1 : s, o, v)); - } - return M; - }; -})(); -function p(e, n, i, t) { - var r, - s, - o, - u, - c, - f, - l, - a, - d, - g = e.constructor; - e: if (n != null) { - if (((a = e.d), !a)) return e; - for (r = 1, u = a[0]; u >= 10; u /= 10) r++; - if (((s = n - r), s < 0)) - ((s += m), - (o = n), - (l = a[(d = 0)]), - (c = ((l / C(10, r - o - 1)) % 10) | 0)); - else if (((d = Math.ceil((s + 1) / m)), (u = a.length), d >= u)) - if (t) { - for (; u++ <= d; ) a.push(0); - ((l = c = 0), (r = 1), (s %= m), (o = s - m + 1)); - } else break e; - else { - for (l = u = a[d], r = 1; u >= 10; u /= 10) r++; - ((s %= m), - (o = s - m + r), - (c = o < 0 ? 0 : ((l / C(10, r - o - 1)) % 10) | 0)); - } - if ( - ((t = - t || - n < 0 || - a[d + 1] !== void 0 || - (o < 0 ? l : l % C(10, r - o - 1))), - (f = - i < 4 - ? (c || t) && (i == 0 || i == (e.s < 0 ? 3 : 2)) - : c > 5 || - (c == 5 && - (i == 4 || - t || - (i == 6 && - ((s > 0 ? (o > 0 ? l / C(10, r - o) : 0) : a[d - 1]) % 10) & - 1) || - i == (e.s < 0 ? 8 : 7)))), - n < 1 || !a[0]) - ) - return ( - (a.length = 0), - f - ? ((n -= e.e + 1), (a[0] = C(10, (m - (n % m)) % m)), (e.e = -n || 0)) - : (a[0] = e.e = 0), - e - ); - if ( - (s == 0 - ? ((a.length = d), (u = 1), d--) - : ((a.length = d + 1), - (u = C(10, m - s)), - (a[d] = o > 0 ? (((l / C(10, r - o)) % C(10, o)) | 0) * u : 0)), - f) - ) - for (;;) - if (d == 0) { - for (s = 1, o = a[0]; o >= 10; o /= 10) s++; - for (o = a[0] += u, u = 1; o >= 10; o /= 10) u++; - s != u && (e.e++, a[0] == D && (a[0] = 1)); - break; - } else { - if (((a[d] += u), a[d] != D)) break; - ((a[d--] = 0), (u = 1)); - } - for (s = a.length; a[--s] === 0; ) a.pop(); - } - return ( - w && - (e.e > g.maxE - ? ((e.d = null), (e.e = NaN)) - : e.e < g.minE && ((e.e = 0), (e.d = [0]))), - e - ); -} -function L(e, n, i) { - if (!e.isFinite()) return je(e); - var t, - r = e.e, - s = b(e.d), - o = s.length; - return ( - n - ? (i && (t = i - o) > 0 - ? (s = s.charAt(0) + "." + s.slice(1) + U(t)) - : o > 1 && (s = s.charAt(0) + "." + s.slice(1)), - (s = s + (e.e < 0 ? "e" : "e+") + e.e)) - : r < 0 - ? ((s = "0." + U(-r - 1) + s), i && (t = i - o) > 0 && (s += U(t))) - : r >= o - ? ((s += U(r + 1 - o)), - i && (t = i - r - 1) > 0 && (s = s + "." + U(t))) - : ((t = r + 1) < o && (s = s.slice(0, t) + "." + s.slice(t)), - i && (t = i - o) > 0 && (r + 1 === o && (s += "."), (s += U(t)))), - s - ); -} -function ce(e, n) { - var i = e[0]; - for (n *= m; i >= 10; i /= 10) n++; - return n; -} -function ue(e, n, i) { - if (n > hn) throw ((w = !0), i && (e.precision = i), Error(Ie)); - return p(new e(se), n, 1, !0); -} -function F(e, n, i) { - if (n > Ce) throw Error(Ie); - return p(new e(oe), n, i, !0); -} -function $e(e) { - var n = e.length - 1, - i = n * m + 1; - if (((n = e[n]), n)) { - for (; n % 10 == 0; n /= 10) i--; - for (n = e[0]; n >= 10; n /= 10) i++; - } - return i; -} -function U(e) { - for (var n = ""; e--; ) n += "0"; - return n; -} -function He(e, n, i, t) { - var r, - s = new e(1), - o = Math.ceil(t / m + 4); - for (w = !1; ; ) { - if ( - (i % 2 && ((s = s.times(n)), De(s.d, o) && (r = !0)), - (i = R(i / 2)), - i === 0) - ) { - ((i = s.d.length - 1), r && s.d[i] === 0 && ++s.d[i]); - break; - } - ((n = n.times(n)), De(n.d, o)); - } - return ((w = !0), s); -} -function Te(e) { - return e.d[e.d.length - 1] & 1; -} -function Ve(e, n, i) { - for (var t, r, s = new e(n[0]), o = 0; ++o < n.length; ) { - if (((r = new e(n[o])), !r.s)) { - s = r; - break; - } - ((t = s.cmp(r)), (t === i || (t === 0 && s.s === i)) && (s = r)); - } - return s; -} -function be(e, n) { - var i, - t, - r, - s, - o, - u, - c, - f = 0, - l = 0, - a = 0, - d = e.constructor, - g = d.rounding, - v = d.precision; - if (!e.d || !e.d[0] || e.e > 17) - return new d( - e.d - ? e.d[0] - ? e.s < 0 - ? 0 - : 1 / 0 - : 1 - : e.s - ? e.s < 0 - ? 0 - : e - : NaN, - ); - for ( - n == null ? ((w = !1), (c = v)) : (c = n), u = new d(0.03125); - e.e > -2; - ) - ((e = e.times(u)), (a += 5)); - for ( - t = ((Math.log(C(2, a)) / Math.LN10) * 2 + 5) | 0, - c += t, - i = s = o = new d(1), - d.precision = c; - ; - ) { - if ( - ((s = p(s.times(e), c, 1)), - (i = i.times(++l)), - (u = o.plus(k(s, i, c, 1))), - b(u.d).slice(0, c) === b(o.d).slice(0, c)) - ) { - for (r = a; r--; ) o = p(o.times(o), c, 1); - if (n == null) - if (f < 3 && Q(o.d, c - t, g, f)) - ((d.precision = c += 10), (i = s = u = new d(1)), (l = 0), f++); - else return p(o, (d.precision = v), g, (w = !0)); - else return ((d.precision = v), o); - } - o = u; - } -} -function B(e, n) { - var i, - t, - r, - s, - o, - u, - c, - f, - l, - a, - d, - g = 1, - v = 10, - N = e, - A = N.d, - M = N.constructor, - _ = M.rounding, - E = M.precision; - if (N.s < 0 || !A || !A[0] || (!N.e && A[0] == 1 && A.length == 1)) - return new M(A && !A[0] ? -1 / 0 : N.s != 1 ? NaN : A ? 0 : N); - if ( - (n == null ? ((w = !1), (l = E)) : (l = n), - (M.precision = l += v), - (i = b(A)), - (t = i.charAt(0)), - Math.abs((s = N.e)) < 15e14) - ) { - for (; (t < 7 && t != 1) || (t == 1 && i.charAt(1) > 3); ) - ((N = N.times(e)), (i = b(N.d)), (t = i.charAt(0)), g++); - ((s = N.e), - t > 1 ? ((N = new M("0." + i)), s++) : (N = new M(t + "." + i.slice(1)))); - } else - return ( - (f = ue(M, l + 2, E).times(s + "")), - (N = B(new M(t + "." + i.slice(1)), l - v).plus(f)), - (M.precision = E), - n == null ? p(N, E, _, (w = !0)) : N - ); - for ( - a = N, - c = o = N = k(N.minus(1), N.plus(1), l, 1), - d = p(N.times(N), l, 1), - r = 3; - ; - ) { - if ( - ((o = p(o.times(d), l, 1)), - (f = c.plus(k(o, new M(r), l, 1))), - b(f.d).slice(0, l) === b(c.d).slice(0, l)) - ) - if ( - ((c = c.times(2)), - s !== 0 && (c = c.plus(ue(M, l + 2, E).times(s + ""))), - (c = k(c, new M(g), l, 1)), - n == null) - ) - if (Q(c.d, l - v, _, u)) - ((M.precision = l += v), - (f = o = N = k(a.minus(1), a.plus(1), l, 1)), - (d = p(N.times(N), l, 1)), - (r = u = 1)); - else return p(c, (M.precision = E), _, (w = !0)); - else return ((M.precision = E), c); - ((c = f), (r += 2)); - } -} -function je(e) { - return String((e.s * e.s) / 0); -} -function re(e, n) { - var i, t, r; - for ( - (i = n.indexOf(".")) > -1 && (n = n.replace(".", "")), - (t = n.search(/e/i)) > 0 - ? (i < 0 && (i = t), (i += +n.slice(t + 1)), (n = n.substring(0, t))) - : i < 0 && (i = n.length), - t = 0; - n.charCodeAt(t) === 48; - t++ - ); - for (r = n.length; n.charCodeAt(r - 1) === 48; --r); - if (((n = n.slice(t, r)), n)) { - if ( - ((r -= t), - (e.e = i = i - t - 1), - (e.d = []), - (t = (i + 1) % m), - i < 0 && (t += m), - t < r) - ) { - for (t && e.d.push(+n.slice(0, t)), r -= m; t < r; ) - e.d.push(+n.slice(t, (t += m))); - ((n = n.slice(t)), (t = m - n.length)); - } else t -= r; - for (; t--; ) n += "0"; - (e.d.push(+n), - w && - (e.e > e.constructor.maxE - ? ((e.d = null), (e.e = NaN)) - : e.e < e.constructor.minE && ((e.e = 0), (e.d = [0])))); - } else ((e.e = 0), (e.d = [0])); - return e; -} -function gn(e, n) { - var i, t, r, s, o, u, c, f, l; - if (n.indexOf("_") > -1) { - if (((n = n.replace(/(\d)_(?=\d)/g, "$1")), Be.test(n))) return re(e, n); - } else if (n === "Infinity" || n === "NaN") - return (+n || (e.s = NaN), (e.e = NaN), (e.d = null), e); - if (ln.test(n)) ((i = 16), (n = n.toLowerCase())); - else if (cn.test(n)) i = 2; - else if (an.test(n)) i = 8; - else throw Error($ + n); - for ( - s = n.search(/p/i), - s > 0 - ? ((c = +n.slice(s + 1)), (n = n.substring(2, s))) - : (n = n.slice(2)), - s = n.indexOf("."), - o = s >= 0, - t = e.constructor, - o && - ((n = n.replace(".", "")), - (u = n.length), - (s = u - s), - (r = He(t, new t(i), s, s * 2))), - f = te(n, i, D), - l = f.length - 1, - s = l; - f[s] === 0; - --s - ) - f.pop(); - return s < 0 - ? new t(e.s * 0) - : ((e.e = ce(f, l)), - (e.d = f), - (w = !1), - o && (e = k(e, r, u * 4)), - c && (e = e.times(Math.abs(c) < 54 ? C(2, c) : Y.pow(2, c))), - (w = !0), - e); -} -function mn(e, n) { - var i, - t = n.d.length; - if (t < 3) return n.isZero() ? n : j(e, 2, n, n); - ((i = 1.4 * Math.sqrt(t)), - (i = i > 16 ? 16 : i | 0), - (n = n.times(1 / le(5, i))), - (n = j(e, 2, n, n))); - for (var r, s = new e(5), o = new e(16), u = new e(20); i--; ) - ((r = n.times(n)), (n = n.times(s.plus(r.times(o.times(r).minus(u)))))); - return n; -} -function j(e, n, i, t, r) { - var s, - o, - u, - c, - f = 1, - l = e.precision, - a = Math.ceil(l / m); - for (w = !1, c = i.times(i), u = new e(t); ; ) { - if ( - ((o = k(u.times(c), new e(n++ * n++), l, 1)), - (u = r ? t.plus(o) : t.minus(o)), - (t = k(o.times(c), new e(n++ * n++), l, 1)), - (o = u.plus(t)), - o.d[a] !== void 0) - ) { - for (s = a; o.d[s] === u.d[s] && s--; ); - if (s == -1) break; - } - ((s = u), (u = t), (t = o), (o = s), f++); - } - return ((w = !0), (o.d.length = a + 1), o); -} -function le(e, n) { - for (var i = e; --n; ) i *= e; - return i; -} -function We(e, n) { - var i, - t = n.s < 0, - r = F(e, e.precision, 1), - s = r.times(0.5); - if (((n = n.abs()), n.lte(s))) return ((Z = t ? 4 : 1), n); - if (((i = n.divToInt(r)), i.isZero())) Z = t ? 3 : 2; - else { - if (((n = n.minus(i.times(r))), n.lte(s))) - return ((Z = Te(i) ? (t ? 2 : 3) : t ? 4 : 1), n); - Z = Te(i) ? (t ? 1 : 4) : t ? 3 : 2; - } - return n.minus(r).abs(); -} -function Pe(e, n, i, t) { - var r, - s, - o, - u, - c, - f, - l, - a, - d, - g = e.constructor, - v = i !== void 0; - if ( - (v - ? (q(i, 1, H), t === void 0 ? (t = g.rounding) : q(t, 0, 8)) - : ((i = g.precision), (t = g.rounding)), - !e.isFinite()) - ) - l = je(e); - else { - for ( - l = L(e), - o = l.indexOf("."), - v - ? ((r = 2), n == 16 ? (i = i * 4 - 3) : n == 8 && (i = i * 3 - 2)) - : (r = n), - o >= 0 && - ((l = l.replace(".", "")), - (d = new g(1)), - (d.e = l.length - o), - (d.d = te(L(d), 10, r)), - (d.e = d.d.length)), - a = te(l, 10, r), - s = c = a.length; - a[--c] == 0; - ) - a.pop(); - if (!a[0]) l = v ? "0p+0" : "0"; - else { - if ( - (o < 0 - ? s-- - : ((e = new g(e)), - (e.d = a), - (e.e = s), - (e = k(e, d, i, t, 0, r)), - (a = e.d), - (s = e.e), - (f = Le)), - (o = a[i]), - (u = r / 2), - (f = f || a[i + 1] !== void 0), - (f = - t < 4 - ? (o !== void 0 || f) && (t === 0 || t === (e.s < 0 ? 3 : 2)) - : o > u || - (o === u && - (t === 4 || - f || - (t === 6 && a[i - 1] & 1) || - t === (e.s < 0 ? 8 : 7)))), - (a.length = i), - f) - ) - for (; ++a[--i] > r - 1; ) ((a[i] = 0), i || (++s, a.unshift(1))); - for (c = a.length; !a[c - 1]; --c); - for (o = 0, l = ""; o < c; o++) l += Se.charAt(a[o]); - if (v) { - if (c > 1) - if (n == 16 || n == 8) { - for (o = n == 16 ? 4 : 3, --c; c % o; c++) l += "0"; - for (a = te(l, r, n), c = a.length; !a[c - 1]; --c); - for (o = 1, l = "1."; o < c; o++) l += Se.charAt(a[o]); - } else l = l.charAt(0) + "." + l.slice(1); - l = l + (s < 0 ? "p" : "p+") + s; - } else if (s < 0) { - for (; ++s; ) l = "0" + l; - l = "0." + l; - } else if (++s > c) for (s -= c; s--; ) l += "0"; - else s < c && (l = l.slice(0, s) + "." + l.slice(s)); - } - l = (n == 16 ? "0x" : n == 2 ? "0b" : n == 8 ? "0o" : "") + l; - } - return e.s < 0 ? "-" + l : l; -} -function De(e, n) { - if (e.length > n) return ((e.length = n), !0); -} -function wn(e) { - return new this(e).abs(); -} -function Nn(e) { - return new this(e).acos(); -} -function vn(e) { - return new this(e).acosh(); -} -function En(e, n) { - return new this(e).plus(n); -} -function kn(e) { - return new this(e).asin(); -} -function Sn(e) { - return new this(e).asinh(); -} -function Mn(e) { - return new this(e).atan(); -} -function Cn(e) { - return new this(e).atanh(); -} -function bn(e, n) { - ((e = new this(e)), (n = new this(n))); - var i, - t = this.precision, - r = this.rounding, - s = t + 4; - return ( - !e.s || !n.s - ? (i = new this(NaN)) - : !e.d && !n.d - ? ((i = F(this, s, 1).times(n.s > 0 ? 0.25 : 0.75)), (i.s = e.s)) - : !n.d || e.isZero() - ? ((i = n.s < 0 ? F(this, t, r) : new this(0)), (i.s = e.s)) - : !e.d || n.isZero() - ? ((i = F(this, s, 1).times(0.5)), (i.s = e.s)) - : n.s < 0 - ? ((this.precision = s), - (this.rounding = 1), - (i = this.atan(k(e, n, s, 1))), - (n = F(this, s, 1)), - (this.precision = t), - (this.rounding = r), - (i = e.s < 0 ? i.minus(n) : i.plus(n))) - : (i = this.atan(k(e, n, s, 1))), - i - ); -} -function Pn(e) { - return new this(e).cbrt(); -} -function On(e) { - return p((e = new this(e)), e.e + 1, 2); -} -function Rn(e, n, i) { - return new this(e).clamp(n, i); -} -function An(e) { - if (!e || typeof e != "object") throw Error(fe + "Object expected"); - var n, - i, - t, - r = e.defaults === !0, - s = [ - "precision", - 1, - H, - "rounding", - 0, - 8, - "toExpNeg", - -V, - 0, - "toExpPos", - 0, - V, - "maxE", - 0, - V, - "minE", - -V, - 0, - "modulo", - 0, - 9, - ]; - for (n = 0; n < s.length; n += 3) - if (((i = s[n]), r && (this[i] = Me[i]), (t = e[i]) !== void 0)) - if (R(t) === t && t >= s[n + 1] && t <= s[n + 2]) this[i] = t; - else throw Error($ + i + ": " + t); - if (((i = "crypto"), r && (this[i] = Me[i]), (t = e[i]) !== void 0)) - if (t === !0 || t === !1 || t === 0 || t === 1) - if (t) - if ( - typeof crypto < "u" && - crypto && - (crypto.getRandomValues || crypto.randomBytes) - ) - this[i] = !0; - else throw Error(Ze); - else this[i] = !1; - else throw Error($ + i + ": " + t); - return this; -} -function qn(e) { - return new this(e).cos(); -} -function _n(e) { - return new this(e).cosh(); -} -function Ge(e) { - var n, i, t; - function r(s) { - var o, - u, - c, - f = this; - if (!(f instanceof r)) return new r(s); - if (((f.constructor = r), Fe(s))) { - ((f.s = s.s), - w - ? !s.d || s.e > r.maxE - ? ((f.e = NaN), (f.d = null)) - : s.e < r.minE - ? ((f.e = 0), (f.d = [0])) - : ((f.e = s.e), (f.d = s.d.slice())) - : ((f.e = s.e), (f.d = s.d ? s.d.slice() : s.d))); - return; - } - if (((c = typeof s), c === "number")) { - if (s === 0) { - ((f.s = 1 / s < 0 ? -1 : 1), (f.e = 0), (f.d = [0])); - return; - } - if ((s < 0 ? ((s = -s), (f.s = -1)) : (f.s = 1), s === ~~s && s < 1e7)) { - for (o = 0, u = s; u >= 10; u /= 10) o++; - w - ? o > r.maxE - ? ((f.e = NaN), (f.d = null)) - : o < r.minE - ? ((f.e = 0), (f.d = [0])) - : ((f.e = o), (f.d = [s])) - : ((f.e = o), (f.d = [s])); - return; - } - if (s * 0 !== 0) { - (s || (f.s = NaN), (f.e = NaN), (f.d = null)); - return; - } - return re(f, s.toString()); - } - if (c === "string") - return ( - (u = s.charCodeAt(0)) === 45 - ? ((s = s.slice(1)), (f.s = -1)) - : (u === 43 && (s = s.slice(1)), (f.s = 1)), - Be.test(s) ? re(f, s) : gn(f, s) - ); - if (c === "bigint") - return (s < 0 ? ((s = -s), (f.s = -1)) : (f.s = 1), re(f, s.toString())); - throw Error($ + s); - } - if ( - ((r.prototype = h), - (r.ROUND_UP = 0), - (r.ROUND_DOWN = 1), - (r.ROUND_CEIL = 2), - (r.ROUND_FLOOR = 3), - (r.ROUND_HALF_UP = 4), - (r.ROUND_HALF_DOWN = 5), - (r.ROUND_HALF_EVEN = 6), - (r.ROUND_HALF_CEIL = 7), - (r.ROUND_HALF_FLOOR = 8), - (r.EUCLID = 9), - (r.config = r.set = An), - (r.clone = Ge), - (r.isDecimal = Fe), - (r.abs = wn), - (r.acos = Nn), - (r.acosh = vn), - (r.add = En), - (r.asin = kn), - (r.asinh = Sn), - (r.atan = Mn), - (r.atanh = Cn), - (r.atan2 = bn), - (r.cbrt = Pn), - (r.ceil = On), - (r.clamp = Rn), - (r.cos = qn), - (r.cosh = _n), - (r.div = Tn), - (r.exp = Dn), - (r.floor = Fn), - (r.hypot = Ln), - (r.ln = In), - (r.log = Zn), - (r.log10 = Bn), - (r.log2 = Un), - (r.max = $n), - (r.min = Hn), - (r.mod = Vn), - (r.mul = jn), - (r.pow = Wn), - (r.random = Gn), - (r.round = Jn), - (r.sign = Xn), - (r.sin = Kn), - (r.sinh = Qn), - (r.sqrt = Yn), - (r.sub = xn), - (r.sum = zn), - (r.tan = yn), - (r.tanh = ei), - (r.trunc = ni), - e === void 0 && (e = {}), - e && e.defaults !== !0) - ) - for ( - t = [ - "precision", - "rounding", - "toExpNeg", - "toExpPos", - "maxE", - "minE", - "modulo", - "crypto", - ], - n = 0; - n < t.length; - ) - e.hasOwnProperty((i = t[n++])) || (e[i] = this[i]); - return (r.config(e), r); -} -function Tn(e, n) { - return new this(e).div(n); -} -function Dn(e) { - return new this(e).exp(); -} -function Fn(e) { - return p((e = new this(e)), e.e + 1, 3); -} -function Ln() { - var e, - n, - i = new this(0); - for (w = !1, e = 0; e < arguments.length; ) - if (((n = new this(arguments[e++])), n.d)) i.d && (i = i.plus(n.times(n))); - else { - if (n.s) return ((w = !0), new this(1 / 0)); - i = n; - } - return ((w = !0), i.sqrt()); -} -function Fe(e) { - return e instanceof Y || (e && e.toStringTag === Ue) || !1; -} -function In(e) { - return new this(e).ln(); -} -function Zn(e, n) { - return new this(e).log(n); -} -function Un(e) { - return new this(e).log(2); -} -function Bn(e) { - return new this(e).log(10); -} -function $n() { - return Ve(this, arguments, -1); -} -function Hn() { - return Ve(this, arguments, 1); -} -function Vn(e, n) { - return new this(e).mod(n); -} -function jn(e, n) { - return new this(e).mul(n); -} -function Wn(e, n) { - return new this(e).pow(n); -} -function Gn(e) { - var n, - i, - t, - r, - s = 0, - o = new this(1), - u = []; - if ( - (e === void 0 ? (e = this.precision) : q(e, 1, H), - (t = Math.ceil(e / m)), - this.crypto) - ) - if (crypto.getRandomValues) - for (n = crypto.getRandomValues(new Uint32Array(t)); s < t; ) - ((r = n[s]), - r >= 429e7 - ? (n[s] = crypto.getRandomValues(new Uint32Array(1))[0]) - : (u[s++] = r % 1e7)); - else if (crypto.randomBytes) { - for (n = crypto.randomBytes((t *= 4)); s < t; ) - ((r = - n[s] + (n[s + 1] << 8) + (n[s + 2] << 16) + ((n[s + 3] & 127) << 24)), - r >= 214e7 - ? crypto.randomBytes(4).copy(n, s) - : (u.push(r % 1e7), (s += 4))); - s = t / 4; - } else throw Error(Ze); - else for (; s < t; ) u[s++] = (Math.random() * 1e7) | 0; - for ( - t = u[--s], - e %= m, - t && e && ((r = C(10, m - e)), (u[s] = ((t / r) | 0) * r)); - u[s] === 0; - s-- - ) - u.pop(); - if (s < 0) ((i = 0), (u = [0])); - else { - for (i = -1; u[0] === 0; i -= m) u.shift(); - for (t = 1, r = u[0]; r >= 10; r /= 10) t++; - t < m && (i -= m - t); - } - return ((o.e = i), (o.d = u), o); -} -function Jn(e) { - return p((e = new this(e)), e.e + 1, this.rounding); -} -function Xn(e) { - return ((e = new this(e)), e.d ? (e.d[0] ? e.s : 0 * e.s) : e.s || NaN); -} -function Kn(e) { - return new this(e).sin(); -} -function Qn(e) { - return new this(e).sinh(); -} -function Yn(e) { - return new this(e).sqrt(); -} -function xn(e, n) { - return new this(e).sub(n); -} -function zn() { - var e = 0, - n = arguments, - i = new this(n[e]); - for (w = !1; i.s && ++e < n.length; ) i = i.plus(n[e]); - return ((w = !0), p(i, this.precision, this.rounding)); -} -function yn(e) { - return new this(e).tan(); -} -function ei(e) { - return new this(e).tanh(); -} -function ni(e) { - return p((e = new this(e)), e.e + 1, 1); -} -h[Symbol.for("nodejs.util.inspect.custom")] = h.toString; -h[Symbol.toStringTag] = "Decimal"; -var Y = (h.constructor = Ge(Me)); -se = new Y(se); -oe = new Y(oe); -var Je = Y; -0 && - (module.exports = { - Decimal, - Public, - getRuntime, - makeStrictEnum, - objectEnumValues, - }); +"use strict";var pe=Object.defineProperty;var Xe=Object.getOwnPropertyDescriptor;var Ke=Object.getOwnPropertyNames;var Qe=Object.prototype.hasOwnProperty;var Ye=e=>{throw TypeError(e)};var Oe=(e,n)=>{for(var i in n)pe(e,i,{get:n[i],enumerable:!0})},xe=(e,n,i,t)=>{if(n&&typeof n=="object"||typeof n=="function")for(let r of Ke(n))!Qe.call(e,r)&&r!==i&&pe(e,r,{get:()=>n[r],enumerable:!(t=Xe(n,r))||t.enumerable});return e};var ze=e=>xe(pe({},"__esModule",{value:!0}),e);var ne=(e,n,i)=>n.has(e)?Ye("Cannot add the same private member more than once"):n instanceof WeakSet?n.add(e):n.set(e,i);var ii={};Oe(ii,{Decimal:()=>Je,Public:()=>ge,getRuntime:()=>_e,makeStrictEnum:()=>qe,objectEnumValues:()=>Ae});module.exports=ze(ii);var ge={};Oe(ge,{validator:()=>Re});function Re(...e){return n=>n}var ie=Symbol(),me=new WeakMap,we=class{constructor(n){n===ie?me.set(this,"Prisma.".concat(this._getName())):me.set(this,"new Prisma.".concat(this._getNamespace(),".").concat(this._getName(),"()"))}_getName(){return this.constructor.name}toString(){return me.get(this)}},G=class extends we{_getNamespace(){return"NullTypes"}},Ne,J=class extends G{constructor(){super(...arguments);ne(this,Ne)}};Ne=new WeakMap;ke(J,"DbNull");var ve,X=class extends G{constructor(){super(...arguments);ne(this,ve)}};ve=new WeakMap;ke(X,"JsonNull");var Ee,K=class extends G{constructor(){super(...arguments);ne(this,Ee)}};Ee=new WeakMap;ke(K,"AnyNull");var Ae={classes:{DbNull:J,JsonNull:X,AnyNull:K},instances:{DbNull:new J(ie),JsonNull:new X(ie),AnyNull:new K(ie)}};function ke(e,n){Object.defineProperty(e,"name",{value:n,configurable:!0})}var ye=new Set(["toJSON","$$typeof","asymmetricMatch",Symbol.iterator,Symbol.toStringTag,Symbol.isConcatSpreadable,Symbol.toPrimitive]);function qe(e){return new Proxy(e,{get(n,i){if(i in n)return n[i];if(!ye.has(i))throw new TypeError("Invalid enum value: ".concat(String(i)))}})}var en=()=>{var e,n;return((n=(e=globalThis.process)==null?void 0:e.release)==null?void 0:n.name)==="node"},nn=()=>{var e,n;return!!globalThis.Bun||!!((n=(e=globalThis.process)==null?void 0:e.versions)!=null&&n.bun)},tn=()=>!!globalThis.Deno,rn=()=>typeof globalThis.Netlify=="object",sn=()=>typeof globalThis.EdgeRuntime=="object",on=()=>{var e;return((e=globalThis.navigator)==null?void 0:e.userAgent)==="Cloudflare-Workers"};function un(){var i;return(i=[[rn,"netlify"],[sn,"edge-light"],[on,"workerd"],[tn,"deno"],[nn,"bun"],[en,"node"]].flatMap(t=>t[0]()?[t[1]]:[]).at(0))!=null?i:""}var fn={node:"Node.js",workerd:"Cloudflare Workers",deno:"Deno and Deno Deploy",netlify:"Netlify Edge Functions","edge-light":"Edge Runtime (Vercel Edge Functions, Vercel Edge Middleware, Next.js (Pages Router) Edge API Routes, Next.js (App Router) Edge Route Handlers or Next.js Middleware)"};function _e(){let e=un();return{id:e,prettyName:fn[e]||e,isEdge:["workerd","deno","netlify","edge-light"].includes(e)}}var V=9e15,H=1e9,Se="0123456789abcdef",se="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",oe="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",Me={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-V,maxE:V,crypto:!1},Le,Z,w=!0,fe="[DecimalError] ",$=fe+"Invalid argument: ",Ie=fe+"Precision limit exceeded",Ze=fe+"crypto unavailable",Ue="[object Decimal]",R=Math.floor,C=Math.pow,cn=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,ln=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,an=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,Be=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,D=1e7,m=7,dn=9007199254740991,hn=se.length-1,Ce=oe.length-1,h={toStringTag:Ue};h.absoluteValue=h.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),p(e)};h.ceil=function(){return p(new this.constructor(this),this.e+1,2)};h.clampedTo=h.clamp=function(e,n){var i,t=this,r=t.constructor;if(e=new r(e),n=new r(n),!e.s||!n.s)return new r(NaN);if(e.gt(n))throw Error($+n);return i=t.cmp(e),i<0?e:t.cmp(n)>0?n:new r(t)};h.comparedTo=h.cmp=function(e){var n,i,t,r,s=this,o=s.d,u=(e=new s.constructor(e)).d,c=s.s,f=e.s;if(!o||!u)return!c||!f?NaN:c!==f?c:o===u?0:!o^c<0?1:-1;if(!o[0]||!u[0])return o[0]?c:u[0]?-f:0;if(c!==f)return c;if(s.e!==e.e)return s.e>e.e^c<0?1:-1;for(t=o.length,r=u.length,n=0,i=tu[n]^c<0?1:-1;return t===r?0:t>r^c<0?1:-1};h.cosine=h.cos=function(){var e,n,i=this,t=i.constructor;return i.d?i.d[0]?(e=t.precision,n=t.rounding,t.precision=e+Math.max(i.e,i.sd())+m,t.rounding=1,i=pn(t,We(t,i)),t.precision=e,t.rounding=n,p(Z==2||Z==3?i.neg():i,e,n,!0)):new t(1):new t(NaN)};h.cubeRoot=h.cbrt=function(){var e,n,i,t,r,s,o,u,c,f,l=this,a=l.constructor;if(!l.isFinite()||l.isZero())return new a(l);for(w=!1,s=l.s*C(l.s*l,1/3),!s||Math.abs(s)==1/0?(i=b(l.d),e=l.e,(s=(e-i.length+1)%3)&&(i+=s==1||s==-2?"0":"00"),s=C(i,1/3),e=R((e+1)/3)-(e%3==(e<0?-1:2)),s==1/0?i="5e"+e:(i=s.toExponential(),i=i.slice(0,i.indexOf("e")+1)+e),t=new a(i),t.s=l.s):t=new a(s.toString()),o=(e=a.precision)+3;;)if(u=t,c=u.times(u).times(u),f=c.plus(l),t=k(f.plus(l).times(u),f.plus(c),o+2,1),b(u.d).slice(0,o)===(i=b(t.d)).slice(0,o))if(i=i.slice(o-3,o+1),i=="9999"||!r&&i=="4999"){if(!r&&(p(u,e+1,0),u.times(u).times(u).eq(l))){t=u;break}o+=4,r=1}else{(!+i||!+i.slice(1)&&i.charAt(0)=="5")&&(p(t,e+1,1),n=!t.times(t).times(t).eq(l));break}return w=!0,p(t,e,a.rounding,n)};h.decimalPlaces=h.dp=function(){var e,n=this.d,i=NaN;if(n){if(e=n.length-1,i=(e-R(this.e/m))*m,e=n[e],e)for(;e%10==0;e/=10)i--;i<0&&(i=0)}return i};h.dividedBy=h.div=function(e){return k(this,new this.constructor(e))};h.dividedToIntegerBy=h.divToInt=function(e){var n=this,i=n.constructor;return p(k(n,new i(e),0,1,1),i.precision,i.rounding)};h.equals=h.eq=function(e){return this.cmp(e)===0};h.floor=function(){return p(new this.constructor(this),this.e+1,3)};h.greaterThan=h.gt=function(e){return this.cmp(e)>0};h.greaterThanOrEqualTo=h.gte=function(e){var n=this.cmp(e);return n==1||n===0};h.hyperbolicCosine=h.cosh=function(){var e,n,i,t,r,s=this,o=s.constructor,u=new o(1);if(!s.isFinite())return new o(s.s?1/0:NaN);if(s.isZero())return u;i=o.precision,t=o.rounding,o.precision=i+Math.max(s.e,s.sd())+4,o.rounding=1,r=s.d.length,r<32?(e=Math.ceil(r/3),n=(1/le(4,e)).toString()):(e=16,n="2.3283064365386962890625e-10"),s=j(o,1,s.times(n),new o(1),!0);for(var c,f=e,l=new o(8);f--;)c=s.times(s),s=u.minus(c.times(l.minus(c.times(l))));return p(s,o.precision=i,o.rounding=t,!0)};h.hyperbolicSine=h.sinh=function(){var e,n,i,t,r=this,s=r.constructor;if(!r.isFinite()||r.isZero())return new s(r);if(n=s.precision,i=s.rounding,s.precision=n+Math.max(r.e,r.sd())+4,s.rounding=1,t=r.d.length,t<3)r=j(s,2,r,r,!0);else{e=1.4*Math.sqrt(t),e=e>16?16:e|0,r=r.times(1/le(5,e)),r=j(s,2,r,r,!0);for(var o,u=new s(5),c=new s(16),f=new s(20);e--;)o=r.times(r),r=r.times(u.plus(o.times(c.times(o).plus(f))))}return s.precision=n,s.rounding=i,p(r,n,i,!0)};h.hyperbolicTangent=h.tanh=function(){var e,n,i=this,t=i.constructor;return i.isFinite()?i.isZero()?new t(i):(e=t.precision,n=t.rounding,t.precision=e+7,t.rounding=1,k(i.sinh(),i.cosh(),t.precision=e,t.rounding=n)):new t(i.s)};h.inverseCosine=h.acos=function(){var e=this,n=e.constructor,i=e.abs().cmp(1),t=n.precision,r=n.rounding;return i!==-1?i===0?e.isNeg()?F(n,t,r):new n(0):new n(NaN):e.isZero()?F(n,t+4,r).times(.5):(n.precision=t+6,n.rounding=1,e=new n(1).minus(e).div(e.plus(1)).sqrt().atan(),n.precision=t,n.rounding=r,e.times(2))};h.inverseHyperbolicCosine=h.acosh=function(){var e,n,i=this,t=i.constructor;return i.lte(1)?new t(i.eq(1)?0:NaN):i.isFinite()?(e=t.precision,n=t.rounding,t.precision=e+Math.max(Math.abs(i.e),i.sd())+4,t.rounding=1,w=!1,i=i.times(i).minus(1).sqrt().plus(i),w=!0,t.precision=e,t.rounding=n,i.ln()):new t(i)};h.inverseHyperbolicSine=h.asinh=function(){var e,n,i=this,t=i.constructor;return!i.isFinite()||i.isZero()?new t(i):(e=t.precision,n=t.rounding,t.precision=e+2*Math.max(Math.abs(i.e),i.sd())+6,t.rounding=1,w=!1,i=i.times(i).plus(1).sqrt().plus(i),w=!0,t.precision=e,t.rounding=n,i.ln())};h.inverseHyperbolicTangent=h.atanh=function(){var e,n,i,t,r=this,s=r.constructor;return r.isFinite()?r.e>=0?new s(r.abs().eq(1)?r.s/0:r.isZero()?r:NaN):(e=s.precision,n=s.rounding,t=r.sd(),Math.max(t,e)<2*-r.e-1?p(new s(r),e,n,!0):(s.precision=i=t-r.e,r=k(r.plus(1),new s(1).minus(r),i+e,1),s.precision=e+4,s.rounding=1,r=r.ln(),s.precision=e,s.rounding=n,r.times(.5))):new s(NaN)};h.inverseSine=h.asin=function(){var e,n,i,t,r=this,s=r.constructor;return r.isZero()?new s(r):(n=r.abs().cmp(1),i=s.precision,t=s.rounding,n!==-1?n===0?(e=F(s,i+4,t).times(.5),e.s=r.s,e):new s(NaN):(s.precision=i+6,s.rounding=1,r=r.div(new s(1).minus(r.times(r)).sqrt().plus(1)).atan(),s.precision=i,s.rounding=t,r.times(2)))};h.inverseTangent=h.atan=function(){var e,n,i,t,r,s,o,u,c,f=this,l=f.constructor,a=l.precision,d=l.rounding;if(f.isFinite()){if(f.isZero())return new l(f);if(f.abs().eq(1)&&a+4<=Ce)return o=F(l,a+4,d).times(.25),o.s=f.s,o}else{if(!f.s)return new l(NaN);if(a+4<=Ce)return o=F(l,a+4,d).times(.5),o.s=f.s,o}for(l.precision=u=a+10,l.rounding=1,i=Math.min(28,u/m+2|0),e=i;e;--e)f=f.div(f.times(f).plus(1).sqrt().plus(1));for(w=!1,n=Math.ceil(u/m),t=1,c=f.times(f),o=new l(f),r=f;e!==-1;)if(r=r.times(c),s=o.minus(r.div(t+=2)),r=r.times(c),o=s.plus(r.div(t+=2)),o.d[n]!==void 0)for(e=n;o.d[e]===s.d[e]&&e--;);return i&&(o=o.times(2<this.d.length-2};h.isNaN=function(){return!this.s};h.isNegative=h.isNeg=function(){return this.s<0};h.isPositive=h.isPos=function(){return this.s>0};h.isZero=function(){return!!this.d&&this.d[0]===0};h.lessThan=h.lt=function(e){return this.cmp(e)<0};h.lessThanOrEqualTo=h.lte=function(e){return this.cmp(e)<1};h.logarithm=h.log=function(e){var n,i,t,r,s,o,u,c,f=this,l=f.constructor,a=l.precision,d=l.rounding,g=5;if(e==null)e=new l(10),n=!0;else{if(e=new l(e),i=e.d,e.s<0||!i||!i[0]||e.eq(1))return new l(NaN);n=e.eq(10)}if(i=f.d,f.s<0||!i||!i[0]||f.eq(1))return new l(i&&!i[0]?-1/0:f.s!=1?NaN:i?0:1/0);if(n)if(i.length>1)s=!0;else{for(r=i[0];r%10===0;)r/=10;s=r!==1}if(w=!1,u=a+g,o=B(f,u),t=n?ue(l,u+10):B(e,u),c=k(o,t,u,1),Q(c.d,r=a,d))do if(u+=10,o=B(f,u),t=n?ue(l,u+10):B(e,u),c=k(o,t,u,1),!s){+b(c.d).slice(r+1,r+15)+1==1e14&&(c=p(c,a+1,0));break}while(Q(c.d,r+=10,d));return w=!0,p(c,a,d)};h.minus=h.sub=function(e){var n,i,t,r,s,o,u,c,f,l,a,d,g=this,v=g.constructor;if(e=new v(e),!g.d||!e.d)return!g.s||!e.s?e=new v(NaN):g.d?e.s=-e.s:e=new v(e.d||g.s!==e.s?g:NaN),e;if(g.s!=e.s)return e.s=-e.s,g.plus(e);if(f=g.d,d=e.d,u=v.precision,c=v.rounding,!f[0]||!d[0]){if(d[0])e.s=-e.s;else if(f[0])e=new v(g);else return new v(c===3?-0:0);return w?p(e,u,c):e}if(i=R(e.e/m),l=R(g.e/m),f=f.slice(),s=l-i,s){for(a=s<0,a?(n=f,s=-s,o=d.length):(n=d,i=l,o=f.length),t=Math.max(Math.ceil(u/m),o)+2,s>t&&(s=t,n.length=1),n.reverse(),t=s;t--;)n.push(0);n.reverse()}else{for(t=f.length,o=d.length,a=t0;--t)f[o++]=0;for(t=d.length;t>s;){if(f[--t]o?s+1:o+1,r>o&&(r=o,i.length=1),i.reverse();r--;)i.push(0);i.reverse()}for(o=f.length,r=l.length,o-r<0&&(r=o,i=l,l=f,f=i),n=0;r;)n=(f[--r]=f[r]+l[r]+n)/D|0,f[r]%=D;for(n&&(f.unshift(n),++t),o=f.length;f[--o]==0;)f.pop();return e.d=f,e.e=ce(f,t),w?p(e,u,c):e};h.precision=h.sd=function(e){var n,i=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error($+e);return i.d?(n=$e(i.d),e&&i.e+1>n&&(n=i.e+1)):n=NaN,n};h.round=function(){var e=this,n=e.constructor;return p(new n(e),e.e+1,n.rounding)};h.sine=h.sin=function(){var e,n,i=this,t=i.constructor;return i.isFinite()?i.isZero()?new t(i):(e=t.precision,n=t.rounding,t.precision=e+Math.max(i.e,i.sd())+m,t.rounding=1,i=mn(t,We(t,i)),t.precision=e,t.rounding=n,p(Z>2?i.neg():i,e,n,!0)):new t(NaN)};h.squareRoot=h.sqrt=function(){var e,n,i,t,r,s,o=this,u=o.d,c=o.e,f=o.s,l=o.constructor;if(f!==1||!u||!u[0])return new l(!f||f<0&&(!u||u[0])?NaN:u?o:1/0);for(w=!1,f=Math.sqrt(+o),f==0||f==1/0?(n=b(u),(n.length+c)%2==0&&(n+="0"),f=Math.sqrt(n),c=R((c+1)/2)-(c<0||c%2),f==1/0?n="5e"+c:(n=f.toExponential(),n=n.slice(0,n.indexOf("e")+1)+c),t=new l(n)):t=new l(f.toString()),i=(c=l.precision)+3;;)if(s=t,t=s.plus(k(o,s,i+2,1)).times(.5),b(s.d).slice(0,i)===(n=b(t.d)).slice(0,i))if(n=n.slice(i-3,i+1),n=="9999"||!r&&n=="4999"){if(!r&&(p(s,c+1,0),s.times(s).eq(o))){t=s;break}i+=4,r=1}else{(!+n||!+n.slice(1)&&n.charAt(0)=="5")&&(p(t,c+1,1),e=!t.times(t).eq(o));break}return w=!0,p(t,c,l.rounding,e)};h.tangent=h.tan=function(){var e,n,i=this,t=i.constructor;return i.isFinite()?i.isZero()?new t(i):(e=t.precision,n=t.rounding,t.precision=e+10,t.rounding=1,i=i.sin(),i.s=1,i=k(i,new t(1).minus(i.times(i)).sqrt(),e+10,0),t.precision=e,t.rounding=n,p(Z==2||Z==4?i.neg():i,e,n,!0)):new t(NaN)};h.times=h.mul=function(e){var n,i,t,r,s,o,u,c,f,l=this,a=l.constructor,d=l.d,g=(e=new a(e)).d;if(e.s*=l.s,!d||!d[0]||!g||!g[0])return new a(!e.s||d&&!d[0]&&!g||g&&!g[0]&&!d?NaN:!d||!g?e.s/0:e.s*0);for(i=R(l.e/m)+R(e.e/m),c=d.length,f=g.length,c=0;){for(n=0,r=c+t;r>t;)u=s[r]+g[t]*d[r-t-1]+n,s[r--]=u%D|0,n=u/D|0;s[r]=(s[r]+n)%D|0}for(;!s[--o];)s.pop();return n?++i:s.shift(),e.d=s,e.e=ce(s,i),w?p(e,a.precision,a.rounding):e};h.toBinary=function(e,n){return Pe(this,2,e,n)};h.toDecimalPlaces=h.toDP=function(e,n){var i=this,t=i.constructor;return i=new t(i),e===void 0?i:(q(e,0,H),n===void 0?n=t.rounding:q(n,0,8),p(i,e+i.e+1,n))};h.toExponential=function(e,n){var i,t=this,r=t.constructor;return e===void 0?i=L(t,!0):(q(e,0,H),n===void 0?n=r.rounding:q(n,0,8),t=p(new r(t),e+1,n),i=L(t,!0,e+1)),t.isNeg()&&!t.isZero()?"-"+i:i};h.toFixed=function(e,n){var i,t,r=this,s=r.constructor;return e===void 0?i=L(r):(q(e,0,H),n===void 0?n=s.rounding:q(n,0,8),t=p(new s(r),e+r.e+1,n),i=L(t,!1,e+t.e+1)),r.isNeg()&&!r.isZero()?"-"+i:i};h.toFraction=function(e){var n,i,t,r,s,o,u,c,f,l,a,d,g=this,v=g.d,N=g.constructor;if(!v)return new N(g);if(f=i=new N(1),t=c=new N(0),n=new N(t),s=n.e=$e(v)-g.e-1,o=s%m,n.d[0]=C(10,o<0?m+o:o),e==null)e=s>0?n:f;else{if(u=new N(e),!u.isInt()||u.lt(f))throw Error($+u);e=u.gt(n)?s>0?n:f:u}for(w=!1,u=new N(b(v)),l=N.precision,N.precision=s=v.length*m*2;a=k(u,n,0,1,1),r=i.plus(a.times(t)),r.cmp(e)!=1;)i=t,t=r,r=f,f=c.plus(a.times(r)),c=r,r=n,n=u.minus(a.times(r)),u=r;return r=k(e.minus(i),t,0,1,1),c=c.plus(r.times(f)),i=i.plus(r.times(t)),c.s=f.s=g.s,d=k(f,t,s,1).minus(g).abs().cmp(k(c,i,s,1).minus(g).abs())<1?[f,t]:[c,i],N.precision=l,w=!0,d};h.toHexadecimal=h.toHex=function(e,n){return Pe(this,16,e,n)};h.toNearest=function(e,n){var i=this,t=i.constructor;if(i=new t(i),e==null){if(!i.d)return i;e=new t(1),n=t.rounding}else{if(e=new t(e),n===void 0?n=t.rounding:q(n,0,8),!i.d)return e.s?i:e;if(!e.d)return e.s&&(e.s=i.s),e}return e.d[0]?(w=!1,i=k(i,e,0,n,1).times(e),w=!0,p(i)):(e.s=i.s,i=e),i};h.toNumber=function(){return+this};h.toOctal=function(e,n){return Pe(this,8,e,n)};h.toPower=h.pow=function(e){var n,i,t,r,s,o,u=this,c=u.constructor,f=+(e=new c(e));if(!u.d||!e.d||!u.d[0]||!e.d[0])return new c(C(+u,f));if(u=new c(u),u.eq(1))return u;if(t=c.precision,s=c.rounding,e.eq(1))return p(u,t,s);if(n=R(e.e/m),n>=e.d.length-1&&(i=f<0?-f:f)<=dn)return r=He(c,u,i,t),e.s<0?new c(1).div(r):p(r,t,s);if(o=u.s,o<0){if(nc.maxE+1||n0?o/0:0):(w=!1,c.rounding=u.s=1,i=Math.min(12,(n+"").length),r=be(e.times(B(u,t+i)),t),r.d&&(r=p(r,t+5,1),Q(r.d,t,s)&&(n=t+10,r=p(be(e.times(B(u,n+i)),n),n+5,1),+b(r.d).slice(t+1,t+15)+1==1e14&&(r=p(r,t+1,0)))),r.s=o,w=!0,c.rounding=s,p(r,t,s))};h.toPrecision=function(e,n){var i,t=this,r=t.constructor;return e===void 0?i=L(t,t.e<=r.toExpNeg||t.e>=r.toExpPos):(q(e,1,H),n===void 0?n=r.rounding:q(n,0,8),t=p(new r(t),e,n),i=L(t,e<=t.e||t.e<=r.toExpNeg,e)),t.isNeg()&&!t.isZero()?"-"+i:i};h.toSignificantDigits=h.toSD=function(e,n){var i=this,t=i.constructor;return e===void 0?(e=t.precision,n=t.rounding):(q(e,1,H),n===void 0?n=t.rounding:q(n,0,8)),p(new t(i),e,n)};h.toString=function(){var e=this,n=e.constructor,i=L(e,e.e<=n.toExpNeg||e.e>=n.toExpPos);return e.isNeg()&&!e.isZero()?"-"+i:i};h.truncated=h.trunc=function(){return p(new this.constructor(this),this.e+1,1)};h.valueOf=h.toJSON=function(){var e=this,n=e.constructor,i=L(e,e.e<=n.toExpNeg||e.e>=n.toExpPos);return e.isNeg()?"-"+i:i};function b(e){var n,i,t,r=e.length-1,s="",o=e[0];if(r>0){for(s+=o,n=1;ni)throw Error($+e)}function Q(e,n,i,t){var r,s,o,u;for(s=e[0];s>=10;s/=10)--n;return--n<0?(n+=m,r=0):(r=Math.ceil((n+1)/m),n%=m),s=C(10,m-n),u=e[r]%s|0,t==null?n<3?(n==0?u=u/100|0:n==1&&(u=u/10|0),o=i<4&&u==99999||i>3&&u==49999||u==5e4||u==0):o=(i<4&&u+1==s||i>3&&u+1==s/2)&&(e[r+1]/s/100|0)==C(10,n-2)-1||(u==s/2||u==0)&&(e[r+1]/s/100|0)==0:n<4?(n==0?u=u/1e3|0:n==1?u=u/100|0:n==2&&(u=u/10|0),o=(t||i<4)&&u==9999||!t&&i>3&&u==4999):o=((t||i<4)&&u+1==s||!t&&i>3&&u+1==s/2)&&(e[r+1]/s/1e3|0)==C(10,n-3)-1,o}function te(e,n,i){for(var t,r=[0],s,o=0,u=e.length;oi-1&&(r[t+1]===void 0&&(r[t+1]=0),r[t+1]+=r[t]/i|0,r[t]%=i)}return r.reverse()}function pn(e,n){var i,t,r;if(n.isZero())return n;t=n.d.length,t<32?(i=Math.ceil(t/3),r=(1/le(4,i)).toString()):(i=16,r="2.3283064365386962890625e-10"),e.precision+=i,n=j(e,1,n.times(r),new e(1));for(var s=i;s--;){var o=n.times(n);n=o.times(o).minus(o).times(8).plus(1)}return e.precision-=i,n}var k=function(){function e(t,r,s){var o,u=0,c=t.length;for(t=t.slice();c--;)o=t[c]*r+u,t[c]=o%s|0,u=o/s|0;return u&&t.unshift(u),t}function n(t,r,s,o){var u,c;if(s!=o)c=s>o?1:-1;else for(u=c=0;ur[u]?1:-1;break}return c}function i(t,r,s,o){for(var u=0;s--;)t[s]-=u,u=t[s]1;)t.shift()}return function(t,r,s,o,u,c){var f,l,a,d,g,v,N,A,M,_,E,P,x,I,ae,z,W,de,T,y,ee=t.constructor,he=t.s==r.s?1:-1,O=t.d,S=r.d;if(!O||!O[0]||!S||!S[0])return new ee(!t.s||!r.s||(O?S&&O[0]==S[0]:!S)?NaN:O&&O[0]==0||!S?he*0:he/0);for(c?(g=1,l=t.e-r.e):(c=D,g=m,l=R(t.e/g)-R(r.e/g)),T=S.length,W=O.length,M=new ee(he),_=M.d=[],a=0;S[a]==(O[a]||0);a++);if(S[a]>(O[a]||0)&&l--,s==null?(I=s=ee.precision,o=ee.rounding):u?I=s+(t.e-r.e)+1:I=s,I<0)_.push(1),v=!0;else{if(I=I/g+2|0,a=0,T==1){for(d=0,S=S[0],I++;(a1&&(S=e(S,d,c),O=e(O,d,c),T=S.length,W=O.length),z=T,E=O.slice(0,T),P=E.length;P=c/2&&++de;do d=0,f=n(S,E,T,P),f<0?(x=E[0],T!=P&&(x=x*c+(E[1]||0)),d=x/de|0,d>1?(d>=c&&(d=c-1),N=e(S,d,c),A=N.length,P=E.length,f=n(N,E,A,P),f==1&&(d--,i(N,T=10;d/=10)a++;M.e=a+l*g-1,p(M,u?s+M.e+1:s,o,v)}return M}}();function p(e,n,i,t){var r,s,o,u,c,f,l,a,d,g=e.constructor;e:if(n!=null){if(a=e.d,!a)return e;for(r=1,u=a[0];u>=10;u/=10)r++;if(s=n-r,s<0)s+=m,o=n,l=a[d=0],c=l/C(10,r-o-1)%10|0;else if(d=Math.ceil((s+1)/m),u=a.length,d>=u)if(t){for(;u++<=d;)a.push(0);l=c=0,r=1,s%=m,o=s-m+1}else break e;else{for(l=u=a[d],r=1;u>=10;u/=10)r++;s%=m,o=s-m+r,c=o<0?0:l/C(10,r-o-1)%10|0}if(t=t||n<0||a[d+1]!==void 0||(o<0?l:l%C(10,r-o-1)),f=i<4?(c||t)&&(i==0||i==(e.s<0?3:2)):c>5||c==5&&(i==4||t||i==6&&(s>0?o>0?l/C(10,r-o):0:a[d-1])%10&1||i==(e.s<0?8:7)),n<1||!a[0])return a.length=0,f?(n-=e.e+1,a[0]=C(10,(m-n%m)%m),e.e=-n||0):a[0]=e.e=0,e;if(s==0?(a.length=d,u=1,d--):(a.length=d+1,u=C(10,m-s),a[d]=o>0?(l/C(10,r-o)%C(10,o)|0)*u:0),f)for(;;)if(d==0){for(s=1,o=a[0];o>=10;o/=10)s++;for(o=a[0]+=u,u=1;o>=10;o/=10)u++;s!=u&&(e.e++,a[0]==D&&(a[0]=1));break}else{if(a[d]+=u,a[d]!=D)break;a[d--]=0,u=1}for(s=a.length;a[--s]===0;)a.pop()}return w&&(e.e>g.maxE?(e.d=null,e.e=NaN):e.e0?s=s.charAt(0)+"."+s.slice(1)+U(t):o>1&&(s=s.charAt(0)+"."+s.slice(1)),s=s+(e.e<0?"e":"e+")+e.e):r<0?(s="0."+U(-r-1)+s,i&&(t=i-o)>0&&(s+=U(t))):r>=o?(s+=U(r+1-o),i&&(t=i-r-1)>0&&(s=s+"."+U(t))):((t=r+1)0&&(r+1===o&&(s+="."),s+=U(t))),s}function ce(e,n){var i=e[0];for(n*=m;i>=10;i/=10)n++;return n}function ue(e,n,i){if(n>hn)throw w=!0,i&&(e.precision=i),Error(Ie);return p(new e(se),n,1,!0)}function F(e,n,i){if(n>Ce)throw Error(Ie);return p(new e(oe),n,i,!0)}function $e(e){var n=e.length-1,i=n*m+1;if(n=e[n],n){for(;n%10==0;n/=10)i--;for(n=e[0];n>=10;n/=10)i++}return i}function U(e){for(var n="";e--;)n+="0";return n}function He(e,n,i,t){var r,s=new e(1),o=Math.ceil(t/m+4);for(w=!1;;){if(i%2&&(s=s.times(n),De(s.d,o)&&(r=!0)),i=R(i/2),i===0){i=s.d.length-1,r&&s.d[i]===0&&++s.d[i];break}n=n.times(n),De(n.d,o)}return w=!0,s}function Te(e){return e.d[e.d.length-1]&1}function Ve(e,n,i){for(var t,r,s=new e(n[0]),o=0;++o17)return new d(e.d?e.d[0]?e.s<0?0:1/0:1:e.s?e.s<0?0:e:NaN);for(n==null?(w=!1,c=v):c=n,u=new d(.03125);e.e>-2;)e=e.times(u),a+=5;for(t=Math.log(C(2,a))/Math.LN10*2+5|0,c+=t,i=s=o=new d(1),d.precision=c;;){if(s=p(s.times(e),c,1),i=i.times(++l),u=o.plus(k(s,i,c,1)),b(u.d).slice(0,c)===b(o.d).slice(0,c)){for(r=a;r--;)o=p(o.times(o),c,1);if(n==null)if(f<3&&Q(o.d,c-t,g,f))d.precision=c+=10,i=s=u=new d(1),l=0,f++;else return p(o,d.precision=v,g,w=!0);else return d.precision=v,o}o=u}}function B(e,n){var i,t,r,s,o,u,c,f,l,a,d,g=1,v=10,N=e,A=N.d,M=N.constructor,_=M.rounding,E=M.precision;if(N.s<0||!A||!A[0]||!N.e&&A[0]==1&&A.length==1)return new M(A&&!A[0]?-1/0:N.s!=1?NaN:A?0:N);if(n==null?(w=!1,l=E):l=n,M.precision=l+=v,i=b(A),t=i.charAt(0),Math.abs(s=N.e)<15e14){for(;t<7&&t!=1||t==1&&i.charAt(1)>3;)N=N.times(e),i=b(N.d),t=i.charAt(0),g++;s=N.e,t>1?(N=new M("0."+i),s++):N=new M(t+"."+i.slice(1))}else return f=ue(M,l+2,E).times(s+""),N=B(new M(t+"."+i.slice(1)),l-v).plus(f),M.precision=E,n==null?p(N,E,_,w=!0):N;for(a=N,c=o=N=k(N.minus(1),N.plus(1),l,1),d=p(N.times(N),l,1),r=3;;){if(o=p(o.times(d),l,1),f=c.plus(k(o,new M(r),l,1)),b(f.d).slice(0,l)===b(c.d).slice(0,l))if(c=c.times(2),s!==0&&(c=c.plus(ue(M,l+2,E).times(s+""))),c=k(c,new M(g),l,1),n==null)if(Q(c.d,l-v,_,u))M.precision=l+=v,f=o=N=k(a.minus(1),a.plus(1),l,1),d=p(N.times(N),l,1),r=u=1;else return p(c,M.precision=E,_,w=!0);else return M.precision=E,c;c=f,r+=2}}function je(e){return String(e.s*e.s/0)}function re(e,n){var i,t,r;for((i=n.indexOf("."))>-1&&(n=n.replace(".","")),(t=n.search(/e/i))>0?(i<0&&(i=t),i+=+n.slice(t+1),n=n.substring(0,t)):i<0&&(i=n.length),t=0;n.charCodeAt(t)===48;t++);for(r=n.length;n.charCodeAt(r-1)===48;--r);if(n=n.slice(t,r),n){if(r-=t,e.e=i=i-t-1,e.d=[],t=(i+1)%m,i<0&&(t+=m),te.constructor.maxE?(e.d=null,e.e=NaN):e.e-1){if(n=n.replace(/(\d)_(?=\d)/g,"$1"),Be.test(n))return re(e,n)}else if(n==="Infinity"||n==="NaN")return+n||(e.s=NaN),e.e=NaN,e.d=null,e;if(ln.test(n))i=16,n=n.toLowerCase();else if(cn.test(n))i=2;else if(an.test(n))i=8;else throw Error($+n);for(s=n.search(/p/i),s>0?(c=+n.slice(s+1),n=n.substring(2,s)):n=n.slice(2),s=n.indexOf("."),o=s>=0,t=e.constructor,o&&(n=n.replace(".",""),u=n.length,s=u-s,r=He(t,new t(i),s,s*2)),f=te(n,i,D),l=f.length-1,s=l;f[s]===0;--s)f.pop();return s<0?new t(e.s*0):(e.e=ce(f,l),e.d=f,w=!1,o&&(e=k(e,r,u*4)),c&&(e=e.times(Math.abs(c)<54?C(2,c):Y.pow(2,c))),w=!0,e)}function mn(e,n){var i,t=n.d.length;if(t<3)return n.isZero()?n:j(e,2,n,n);i=1.4*Math.sqrt(t),i=i>16?16:i|0,n=n.times(1/le(5,i)),n=j(e,2,n,n);for(var r,s=new e(5),o=new e(16),u=new e(20);i--;)r=n.times(n),n=n.times(s.plus(r.times(o.times(r).minus(u))));return n}function j(e,n,i,t,r){var s,o,u,c,f=1,l=e.precision,a=Math.ceil(l/m);for(w=!1,c=i.times(i),u=new e(t);;){if(o=k(u.times(c),new e(n++*n++),l,1),u=r?t.plus(o):t.minus(o),t=k(o.times(c),new e(n++*n++),l,1),o=u.plus(t),o.d[a]!==void 0){for(s=a;o.d[s]===u.d[s]&&s--;);if(s==-1)break}s=u,u=t,t=o,o=s,f++}return w=!0,o.d.length=a+1,o}function le(e,n){for(var i=e;--n;)i*=e;return i}function We(e,n){var i,t=n.s<0,r=F(e,e.precision,1),s=r.times(.5);if(n=n.abs(),n.lte(s))return Z=t?4:1,n;if(i=n.divToInt(r),i.isZero())Z=t?3:2;else{if(n=n.minus(i.times(r)),n.lte(s))return Z=Te(i)?t?2:3:t?4:1,n;Z=Te(i)?t?1:4:t?3:2}return n.minus(r).abs()}function Pe(e,n,i,t){var r,s,o,u,c,f,l,a,d,g=e.constructor,v=i!==void 0;if(v?(q(i,1,H),t===void 0?t=g.rounding:q(t,0,8)):(i=g.precision,t=g.rounding),!e.isFinite())l=je(e);else{for(l=L(e),o=l.indexOf("."),v?(r=2,n==16?i=i*4-3:n==8&&(i=i*3-2)):r=n,o>=0&&(l=l.replace(".",""),d=new g(1),d.e=l.length-o,d.d=te(L(d),10,r),d.e=d.d.length),a=te(l,10,r),s=c=a.length;a[--c]==0;)a.pop();if(!a[0])l=v?"0p+0":"0";else{if(o<0?s--:(e=new g(e),e.d=a,e.e=s,e=k(e,d,i,t,0,r),a=e.d,s=e.e,f=Le),o=a[i],u=r/2,f=f||a[i+1]!==void 0,f=t<4?(o!==void 0||f)&&(t===0||t===(e.s<0?3:2)):o>u||o===u&&(t===4||f||t===6&&a[i-1]&1||t===(e.s<0?8:7)),a.length=i,f)for(;++a[--i]>r-1;)a[i]=0,i||(++s,a.unshift(1));for(c=a.length;!a[c-1];--c);for(o=0,l="";o1)if(n==16||n==8){for(o=n==16?4:3,--c;c%o;c++)l+="0";for(a=te(l,r,n),c=a.length;!a[c-1];--c);for(o=1,l="1.";oc)for(s-=c;s--;)l+="0";else sn)return e.length=n,!0}function wn(e){return new this(e).abs()}function Nn(e){return new this(e).acos()}function vn(e){return new this(e).acosh()}function En(e,n){return new this(e).plus(n)}function kn(e){return new this(e).asin()}function Sn(e){return new this(e).asinh()}function Mn(e){return new this(e).atan()}function Cn(e){return new this(e).atanh()}function bn(e,n){e=new this(e),n=new this(n);var i,t=this.precision,r=this.rounding,s=t+4;return!e.s||!n.s?i=new this(NaN):!e.d&&!n.d?(i=F(this,s,1).times(n.s>0?.25:.75),i.s=e.s):!n.d||e.isZero()?(i=n.s<0?F(this,t,r):new this(0),i.s=e.s):!e.d||n.isZero()?(i=F(this,s,1).times(.5),i.s=e.s):n.s<0?(this.precision=s,this.rounding=1,i=this.atan(k(e,n,s,1)),n=F(this,s,1),this.precision=t,this.rounding=r,i=e.s<0?i.minus(n):i.plus(n)):i=this.atan(k(e,n,s,1)),i}function Pn(e){return new this(e).cbrt()}function On(e){return p(e=new this(e),e.e+1,2)}function Rn(e,n,i){return new this(e).clamp(n,i)}function An(e){if(!e||typeof e!="object")throw Error(fe+"Object expected");var n,i,t,r=e.defaults===!0,s=["precision",1,H,"rounding",0,8,"toExpNeg",-V,0,"toExpPos",0,V,"maxE",0,V,"minE",-V,0,"modulo",0,9];for(n=0;n=s[n+1]&&t<=s[n+2])this[i]=t;else throw Error($+i+": "+t);if(i="crypto",r&&(this[i]=Me[i]),(t=e[i])!==void 0)if(t===!0||t===!1||t===0||t===1)if(t)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))this[i]=!0;else throw Error(Ze);else this[i]=!1;else throw Error($+i+": "+t);return this}function qn(e){return new this(e).cos()}function _n(e){return new this(e).cosh()}function Ge(e){var n,i,t;function r(s){var o,u,c,f=this;if(!(f instanceof r))return new r(s);if(f.constructor=r,Fe(s)){f.s=s.s,w?!s.d||s.e>r.maxE?(f.e=NaN,f.d=null):s.e=10;u/=10)o++;w?o>r.maxE?(f.e=NaN,f.d=null):o=429e7?n[s]=crypto.getRandomValues(new Uint32Array(1))[0]:u[s++]=r%1e7;else if(crypto.randomBytes){for(n=crypto.randomBytes(t*=4);s=214e7?crypto.randomBytes(4).copy(n,s):(u.push(r%1e7),s+=4);s=t/4}else throw Error(Ze);else for(;s=10;r/=10)t++;t Client), -): Client; - -declare type AccelerateEngineConfig = { - inlineSchema: EngineConfig["inlineSchema"]; - inlineSchemaHash: EngineConfig["inlineSchemaHash"]; - env: EngineConfig["env"]; - generator?: { - previewFeatures: string[]; - }; - inlineDatasources: EngineConfig["inlineDatasources"]; - overrideDatasources: EngineConfig["overrideDatasources"]; - clientVersion: EngineConfig["clientVersion"]; - engineVersion: EngineConfig["engineVersion"]; - logEmitter: EngineConfig["logEmitter"]; - logQueries?: EngineConfig["logQueries"]; - logLevel?: EngineConfig["logLevel"]; - tracingHelper: EngineConfig["tracingHelper"]; - accelerateUtils?: AccelerateUtils; -}; - -/** - * A stripped down interface of `fetch` that `@prisma/extension-accelerate` - * relies on. It must be in sync with the corresponding definition in the - * Accelerate extension. - * - * This is the actual interface exposed by the extension. We can't use the - * custom fetch function provided by it as normal fetch because the API is - * different. Notably, `headers` must be an object and not a `Headers` - * instance, and `url` must be a `string` and not a `URL`. - * - * The return type is `Response` but we can't specify this in an exported type - * because it would end up referencing external types from `@types/node` or DOM - * which can fail typechecking depending on TypeScript configuration in a user's - * project. - */ -declare type AccelerateExtensionFetch = ( - url: string, - options: { - body?: string; - method?: string; - headers: Record; - }, -) => Promise; - -declare type AccelerateExtensionFetchDecorator = ( - fetch: AccelerateExtensionFetch, -) => AccelerateExtensionFetch; - -declare type AccelerateUtils = EngineConfig["accelerateUtils"]; - -export declare type Action = - | keyof typeof DMMF_2.ModelAction - | "executeRaw" - | "queryRaw" - | "runCommandRaw"; - -declare type ActiveConnectorType = Exclude< - ConnectorType, - "postgres" | "prisma+postgres" ->; - -/** - * An interface that exposes some basic information about the - * adapter like its name and provider type. - */ -declare interface AdapterInfo { - readonly provider: Provider; - readonly adapterName: (typeof officialPrismaAdapters)[number] | (string & {}); -} - -export declare type Aggregate = "_count" | "_max" | "_min" | "_avg" | "_sum"; - -export declare type AllModelsToStringIndex< - TypeMap extends TypeMapDef, - Args extends Record, - K extends PropertyKey, -> = Args extends { - [P in K]: { - $allModels: infer AllModels; - }; -} - ? { - [P in K]: Record; - } - : {}; - -declare class AnyNull extends NullTypesEnumValue { - #private; -} - -export declare type ApplyOmit = Compute<{ - [K in keyof T as OmitValue extends true ? never : K]: T[K]; -}>; - -export declare type Args = T extends { - [K: symbol]: { - types: { - operations: { - [K in F]: { - args: any; - }; - }; - }; - }; -} - ? T[symbol]["types"]["operations"][F]["args"] - : any; - -export declare type Args_3 = Args; - -declare type ArgScalarType = - | "string" - | "int" - | "bigint" - | "float" - | "decimal" - | "boolean" - | "enum" - | "uuid" - | "json" - | "datetime" - | "bytes" - | "unknown"; - -declare type ArgType = { - scalarType: ArgScalarType; - dbType?: string; - arity: Arity; -}; - -declare type Arity = "scalar" | "list"; - -/** - * Attributes is a map from string to attribute values. - * - * Note: only the own enumerable keys are counted as valid attribute keys. - */ -declare interface Attributes { - [attributeKey: string]: AttributeValue | undefined; -} - -/** - * Attribute values may be any non-nullish primitive value except an object. - * - * null or undefined attribute values are invalid and will result in undefined behavior. - */ -declare type AttributeValue = - | string - | number - | boolean - | Array - | Array - | Array; - -export declare type BaseDMMF = { - readonly datamodel: Omit; -}; - -declare type BatchArgs = { - queries: BatchQuery[]; - transaction?: { - isolationLevel?: IsolationLevel_2; - }; -}; - -declare type BatchInternalParams = { - requests: RequestParams[]; - customDataProxyFetch?: AccelerateExtensionFetchDecorator; -}; - -declare type BatchQuery = { - model: string | undefined; - operation: string; - args: JsArgs | RawQueryArgs; -}; - -declare type BatchQueryEngineResult = QueryEngineResultData | Error; - -declare type BatchQueryOptionsCb = ( - args: BatchQueryOptionsCbArgs, -) => Promise; - -declare type BatchQueryOptionsCbArgs = { - args: BatchArgs; - query: ( - args: BatchArgs, - __internalParams?: BatchInternalParams, - ) => Promise; - __internalParams: BatchInternalParams; -}; - -declare type BatchResponse = MultiBatchResponse | CompactedBatchResponse; - -declare type BatchTransactionOptions = { - isolationLevel?: Transaction_2.IsolationLevel; -}; - -declare interface BinaryTargetsEnvValue { - fromEnvVar: string | null; - value: string; - native?: boolean; -} - -/** - * Equivalent to `Uint8Array` before TypeScript 5.7, and `Uint8Array` in TypeScript 5.7 and beyond. - */ -export declare type Bytes = ReturnType; - -export declare type Call = (F & { - params: P; -})["returns"]; - -declare interface CallSite { - getLocation(): LocationInFile | null; -} - -export declare type Cast = A extends W ? A : W; - -declare type Client = - ReturnType extends new () => infer T ? T : never; - -export declare type ClientArg = { - [MethodName in string]: unknown; -}; - -export declare type ClientArgs = { - client: ClientArg; -}; - -export declare type ClientBuiltInProp = keyof DynamicClientExtensionThisBuiltin< - never, - never, - never ->; - -export declare type ClientOptionDef = - | undefined - | { - [K in string]: any; - }; - -export declare type ClientOtherOps = { - $queryRaw( - query: TemplateStringsArray | Sql, - ...values: any[] - ): PrismaPromise; - $queryRawTyped(query: TypedSql): PrismaPromise; - $queryRawUnsafe( - query: string, - ...values: any[] - ): PrismaPromise; - $executeRaw( - query: TemplateStringsArray | Sql, - ...values: any[] - ): PrismaPromise; - $executeRawUnsafe(query: string, ...values: any[]): PrismaPromise; - $runCommandRaw(command: InputJsonObject): PrismaPromise; -}; - -declare type ColumnType = (typeof ColumnTypeEnum)[keyof typeof ColumnTypeEnum]; - -declare const ColumnTypeEnum: { - readonly Int32: 0; - readonly Int64: 1; - readonly Float: 2; - readonly Double: 3; - readonly Numeric: 4; - readonly Boolean: 5; - readonly Character: 6; - readonly Text: 7; - readonly Date: 8; - readonly Time: 9; - readonly DateTime: 10; - readonly Json: 11; - readonly Enum: 12; - readonly Bytes: 13; - readonly Set: 14; - readonly Uuid: 15; - readonly Int32Array: 64; - readonly Int64Array: 65; - readonly FloatArray: 66; - readonly DoubleArray: 67; - readonly NumericArray: 68; - readonly BooleanArray: 69; - readonly CharacterArray: 70; - readonly TextArray: 71; - readonly DateArray: 72; - readonly TimeArray: 73; - readonly DateTimeArray: 74; - readonly JsonArray: 75; - readonly EnumArray: 76; - readonly BytesArray: 77; - readonly UuidArray: 78; - readonly UnknownNumber: 128; -}; - -declare type CompactedBatchResponse = { - type: "compacted"; - plan: QueryPlanNode; - arguments: Record[]; - nestedSelection: string[]; - keys: string[]; - expectNonEmpty: boolean; -}; - -declare type CompilerWasmLoadingConfig = { - /** - * WASM-bindgen runtime for corresponding module - */ - getRuntime: () => Promise<{ - __wbg_set_wasm(exports: unknown): void; - QueryCompiler: QueryCompilerConstructor; - }>; - /** - * Loads the raw wasm module for the wasm compiler engine. This configuration is - * generated specifically for each type of client, eg. Node.js client and Edge - * clients will have different implementations. - * @remarks this is a callback on purpose, we only load the wasm if needed. - * @remarks only used by ClientEngine - */ - getQueryCompilerWasmModule: () => Promise; -}; - -export declare type Compute = T extends Function - ? T - : { - [K in keyof T]: T[K]; - } & unknown; - -export declare type ComputeDeep = T extends Function - ? T - : { - [K in keyof T]: ComputeDeep; - } & unknown; - -declare type ComputedField = { - name: string; - needs: string[]; - compute: ResultArgsFieldCompute; -}; - -declare type ComputedFieldsMap = { - [fieldName: string]: ComputedField; -}; - -declare type ConnectionInfo = { - schemaName?: string; - maxBindValues?: number; - supportsRelationJoins: boolean; -}; - -declare type ConnectorType = - | "mysql" - | "mongodb" - | "sqlite" - | "postgresql" - | "postgres" - | "prisma+postgres" - | "sqlserver" - | "cockroachdb"; - -declare interface Context { - /** - * Get a value from the context. - * - * @param key key which identifies a context value - */ - getValue(key: symbol): unknown; - /** - * Create a new context which inherits from this context and has - * the given key set to the given value. - * - * @param key context key for which to set the value - * @param value value to set for the given key - */ - setValue(key: symbol, value: unknown): Context; - /** - * Return a new context which inherits from this context but does - * not contain a value for the given key. - * - * @param key context key for which to clear a value - */ - deleteValue(key: symbol): Context; -} - -declare type Context_2 = T extends { - [K: symbol]: { - ctx: infer C; - }; -} - ? C & - T & { - /** - * @deprecated Use `$name` instead. - */ - name?: string; - $name?: string; - $parent?: unknown; - } - : T & { - /** - * @deprecated Use `$name` instead. - */ - name?: string; - $name?: string; - $parent?: unknown; - }; - -export declare type Count = { - [K in keyof O]: Count; -} & {}; - -export declare function createParam(name: string): Param; - -declare class DataLoader { - private options; - batches: { - [key: string]: Job[]; - }; - private tickActive; - constructor(options: DataLoaderOptions); - request(request: T): Promise; - private dispatchBatches; - get [Symbol.toStringTag](): string; -} - -declare type DataLoaderOptions = { - singleLoader: (request: T) => Promise; - batchLoader: (request: T[]) => Promise; - batchBy: (request: T) => string | undefined; - batchOrder: (requestA: T, requestB: T) => number; -}; - -declare type Datamodel = ReadonlyDeep_2<{ - models: Model[]; - enums: DatamodelEnum[]; - types: Model[]; - indexes: Index[]; -}>; - -declare type DatamodelEnum = ReadonlyDeep_2<{ - name: string; - values: EnumValue[]; - dbName?: string | null; - documentation?: string; -}>; - -declare function datamodelEnumToSchemaEnum( - datamodelEnum: DatamodelEnum, -): SchemaEnum; - -declare type DataRule = - | { - type: "rowCountEq"; - args: number; - } - | { - type: "rowCountNeq"; - args: number; - } - | { - type: "affectedRowCountEq"; - args: number; - } - | { - type: "never"; - }; - -declare type Datasource = { - url?: string; -}; - -declare type Datasources = { - [name in string]: Datasource; -}; - -declare class DbNull extends NullTypesEnumValue { - #private; -} - -export declare const Debug: typeof debugCreate & { - enable(namespace: any): void; - disable(): any; - enabled(namespace: string): boolean; - log: (...args: string[]) => void; - formatters: {}; -}; - -/** - * Create a new debug instance with the given namespace. - * - * @example - * ```ts - * import Debug from '@prisma/debug' - * const debug = Debug('prisma:client') - * debug('Hello World') - * ``` - */ -declare function debugCreate(namespace: string): ((...args: any[]) => void) & { - color: string; - enabled: boolean; - namespace: string; - log: (...args: string[]) => void; - extend: () => void; -}; - -export declare function Decimal(n: Decimal.Value): Decimal; - -export declare namespace Decimal { - export type Constructor = typeof Decimal; - export type Instance = Decimal; - export type Rounding = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8; - export type Modulo = Rounding | 9; - export type Value = string | number | Decimal; - - // http://mikemcl.github.io/decimal.js/#constructor-properties - export interface Config { - precision?: number; - rounding?: Rounding; - toExpNeg?: number; - toExpPos?: number; - minE?: number; - maxE?: number; - crypto?: boolean; - modulo?: Modulo; - defaults?: boolean; - } -} - -export declare class Decimal { - readonly d: number[]; - readonly e: number; - readonly s: number; - - constructor(n: Decimal.Value); - - absoluteValue(): Decimal; - abs(): Decimal; - - ceil(): Decimal; - - clampedTo(min: Decimal.Value, max: Decimal.Value): Decimal; - clamp(min: Decimal.Value, max: Decimal.Value): Decimal; - - comparedTo(n: Decimal.Value): number; - cmp(n: Decimal.Value): number; - - cosine(): Decimal; - cos(): Decimal; - - cubeRoot(): Decimal; - cbrt(): Decimal; - - decimalPlaces(): number; - dp(): number; - - dividedBy(n: Decimal.Value): Decimal; - div(n: Decimal.Value): Decimal; - - dividedToIntegerBy(n: Decimal.Value): Decimal; - divToInt(n: Decimal.Value): Decimal; - - equals(n: Decimal.Value): boolean; - eq(n: Decimal.Value): boolean; - - floor(): Decimal; - - greaterThan(n: Decimal.Value): boolean; - gt(n: Decimal.Value): boolean; - - greaterThanOrEqualTo(n: Decimal.Value): boolean; - gte(n: Decimal.Value): boolean; - - hyperbolicCosine(): Decimal; - cosh(): Decimal; - - hyperbolicSine(): Decimal; - sinh(): Decimal; - - hyperbolicTangent(): Decimal; - tanh(): Decimal; - - inverseCosine(): Decimal; - acos(): Decimal; - - inverseHyperbolicCosine(): Decimal; - acosh(): Decimal; - - inverseHyperbolicSine(): Decimal; - asinh(): Decimal; - - inverseHyperbolicTangent(): Decimal; - atanh(): Decimal; - - inverseSine(): Decimal; - asin(): Decimal; - - inverseTangent(): Decimal; - atan(): Decimal; - - isFinite(): boolean; - - isInteger(): boolean; - isInt(): boolean; - - isNaN(): boolean; - - isNegative(): boolean; - isNeg(): boolean; - - isPositive(): boolean; - isPos(): boolean; - - isZero(): boolean; - - lessThan(n: Decimal.Value): boolean; - lt(n: Decimal.Value): boolean; - - lessThanOrEqualTo(n: Decimal.Value): boolean; - lte(n: Decimal.Value): boolean; - - logarithm(n?: Decimal.Value): Decimal; - log(n?: Decimal.Value): Decimal; - - minus(n: Decimal.Value): Decimal; - sub(n: Decimal.Value): Decimal; - - modulo(n: Decimal.Value): Decimal; - mod(n: Decimal.Value): Decimal; - - naturalExponential(): Decimal; - exp(): Decimal; - - naturalLogarithm(): Decimal; - ln(): Decimal; - - negated(): Decimal; - neg(): Decimal; - - plus(n: Decimal.Value): Decimal; - add(n: Decimal.Value): Decimal; - - precision(includeZeros?: boolean): number; - sd(includeZeros?: boolean): number; - - round(): Decimal; - - sine(): Decimal; - sin(): Decimal; - - squareRoot(): Decimal; - sqrt(): Decimal; - - tangent(): Decimal; - tan(): Decimal; - - times(n: Decimal.Value): Decimal; - mul(n: Decimal.Value): Decimal; - - toBinary(significantDigits?: number): string; - toBinary(significantDigits: number, rounding: Decimal.Rounding): string; - - toDecimalPlaces(decimalPlaces?: number): Decimal; - toDecimalPlaces(decimalPlaces: number, rounding: Decimal.Rounding): Decimal; - toDP(decimalPlaces?: number): Decimal; - toDP(decimalPlaces: number, rounding: Decimal.Rounding): Decimal; - - toExponential(decimalPlaces?: number): string; - toExponential(decimalPlaces: number, rounding: Decimal.Rounding): string; - - toFixed(decimalPlaces?: number): string; - toFixed(decimalPlaces: number, rounding: Decimal.Rounding): string; - - toFraction(max_denominator?: Decimal.Value): Decimal[]; - - toHexadecimal(significantDigits?: number): string; - toHexadecimal(significantDigits: number, rounding: Decimal.Rounding): string; - toHex(significantDigits?: number): string; - toHex(significantDigits: number, rounding?: Decimal.Rounding): string; - - toJSON(): string; - - toNearest(n: Decimal.Value, rounding?: Decimal.Rounding): Decimal; - - toNumber(): number; - - toOctal(significantDigits?: number): string; - toOctal(significantDigits: number, rounding: Decimal.Rounding): string; - - toPower(n: Decimal.Value): Decimal; - pow(n: Decimal.Value): Decimal; - - toPrecision(significantDigits?: number): string; - toPrecision(significantDigits: number, rounding: Decimal.Rounding): string; - - toSignificantDigits(significantDigits?: number): Decimal; - toSignificantDigits( - significantDigits: number, - rounding: Decimal.Rounding, - ): Decimal; - toSD(significantDigits?: number): Decimal; - toSD(significantDigits: number, rounding: Decimal.Rounding): Decimal; - - toString(): string; - - truncated(): Decimal; - trunc(): Decimal; - - valueOf(): string; - - static abs(n: Decimal.Value): Decimal; - static acos(n: Decimal.Value): Decimal; - static acosh(n: Decimal.Value): Decimal; - static add(x: Decimal.Value, y: Decimal.Value): Decimal; - static asin(n: Decimal.Value): Decimal; - static asinh(n: Decimal.Value): Decimal; - static atan(n: Decimal.Value): Decimal; - static atanh(n: Decimal.Value): Decimal; - static atan2(y: Decimal.Value, x: Decimal.Value): Decimal; - static cbrt(n: Decimal.Value): Decimal; - static ceil(n: Decimal.Value): Decimal; - static clamp( - n: Decimal.Value, - min: Decimal.Value, - max: Decimal.Value, - ): Decimal; - static clone(object?: Decimal.Config): Decimal.Constructor; - static config(object: Decimal.Config): Decimal.Constructor; - static cos(n: Decimal.Value): Decimal; - static cosh(n: Decimal.Value): Decimal; - static div(x: Decimal.Value, y: Decimal.Value): Decimal; - static exp(n: Decimal.Value): Decimal; - static floor(n: Decimal.Value): Decimal; - static hypot(...n: Decimal.Value[]): Decimal; - static isDecimal(object: any): object is Decimal; - static ln(n: Decimal.Value): Decimal; - static log(n: Decimal.Value, base?: Decimal.Value): Decimal; - static log2(n: Decimal.Value): Decimal; - static log10(n: Decimal.Value): Decimal; - static max(...n: Decimal.Value[]): Decimal; - static min(...n: Decimal.Value[]): Decimal; - static mod(x: Decimal.Value, y: Decimal.Value): Decimal; - static mul(x: Decimal.Value, y: Decimal.Value): Decimal; - static noConflict(): Decimal.Constructor; // Browser only - static pow(base: Decimal.Value, exponent: Decimal.Value): Decimal; - static random(significantDigits?: number): Decimal; - static round(n: Decimal.Value): Decimal; - static set(object: Decimal.Config): Decimal.Constructor; - static sign(n: Decimal.Value): number; - static sin(n: Decimal.Value): Decimal; - static sinh(n: Decimal.Value): Decimal; - static sqrt(n: Decimal.Value): Decimal; - static sub(x: Decimal.Value, y: Decimal.Value): Decimal; - static sum(...n: Decimal.Value[]): Decimal; - static tan(n: Decimal.Value): Decimal; - static tanh(n: Decimal.Value): Decimal; - static trunc(n: Decimal.Value): Decimal; - - static readonly default?: Decimal.Constructor; - static readonly Decimal?: Decimal.Constructor; - - static readonly precision: number; - static readonly rounding: Decimal.Rounding; - static readonly toExpNeg: number; - static readonly toExpPos: number; - static readonly minE: number; - static readonly maxE: number; - static readonly crypto: boolean; - static readonly modulo: Decimal.Modulo; - - static readonly ROUND_UP: 0; - static readonly ROUND_DOWN: 1; - static readonly ROUND_CEIL: 2; - static readonly ROUND_FLOOR: 3; - static readonly ROUND_HALF_UP: 4; - static readonly ROUND_HALF_DOWN: 5; - static readonly ROUND_HALF_EVEN: 6; - static readonly ROUND_HALF_CEIL: 7; - static readonly ROUND_HALF_FLOOR: 8; - static readonly EUCLID: 9; -} - -/** - * Interface for any Decimal.js-like library - * Allows us to accept Decimal.js from different - * versions and some compatible alternatives - */ -export declare interface DecimalJsLike { - d: number[]; - e: number; - s: number; - toFixed(): string; -} - -export declare type DefaultArgs = InternalArgs<{}, {}, {}, {}>; - -export declare type DefaultSelection< - Payload extends OperationPayload, - Args = {}, - GlobalOmitOptions = {}, -> = Args extends { - omit: infer LocalOmit; -} - ? ApplyOmit< - UnwrapPayload<{ - default: Payload; - }>["default"], - PatchFlat< - LocalOmit, - ExtractGlobalOmit> - > - > - : ApplyOmit< - UnwrapPayload<{ - default: Payload; - }>["default"], - ExtractGlobalOmit> - >; - -export declare function defineDmmfProperty( - target: object, - runtimeDataModel: RuntimeDataModel, -): void; - -declare function defineExtension( - ext: ExtensionArgs | ((client: Client) => Client), -): (client: Client) => Client; - -declare const denylist: readonly [ - "$connect", - "$disconnect", - "$on", - "$transaction", - "$extends", -]; - -declare type Deprecation = ReadonlyDeep_2<{ - sinceVersion: string; - reason: string; - plannedRemovalVersion?: string; -}>; - -declare type DeserializedResponse = Array>; - -export declare function deserializeJsonResponse(result: unknown): unknown; - -export declare function deserializeRawResult( - response: RawResponse, -): DeserializedResponse; - -export declare type DevTypeMapDef = { - meta: { - modelProps: string; - }; - model: { - [Model in PropertyKey]: { - [Operation in PropertyKey]: DevTypeMapFnDef; - }; - }; - other: { - [Operation in PropertyKey]: DevTypeMapFnDef; - }; -}; - -export declare type DevTypeMapFnDef = { - args: any; - result: any; - payload: OperationPayload; -}; - -export declare namespace DMMF { - export { - datamodelEnumToSchemaEnum, - Document_2 as Document, - Mappings, - OtherOperationMappings, - DatamodelEnum, - SchemaEnum, - EnumValue, - Datamodel, - uniqueIndex, - PrimaryKey, - Model, - FieldKind, - FieldNamespace, - FieldLocation, - Field, - FieldDefault, - FieldDefaultScalar, - Index, - IndexType, - IndexField, - SortOrder, - Schema, - Query, - QueryOutput, - TypeRef, - InputTypeRef, - SchemaArg, - OutputType, - SchemaField, - OutputTypeRef, - Deprecation, - InputType, - FieldRefType, - FieldRefAllowType, - ModelMapping, - ModelAction, - }; -} - -declare namespace DMMF_2 { - export { - datamodelEnumToSchemaEnum, - Document_2 as Document, - Mappings, - OtherOperationMappings, - DatamodelEnum, - SchemaEnum, - EnumValue, - Datamodel, - uniqueIndex, - PrimaryKey, - Model, - FieldKind, - FieldNamespace, - FieldLocation, - Field, - FieldDefault, - FieldDefaultScalar, - Index, - IndexType, - IndexField, - SortOrder, - Schema, - Query, - QueryOutput, - TypeRef, - InputTypeRef, - SchemaArg, - OutputType, - SchemaField, - OutputTypeRef, - Deprecation, - InputType, - FieldRefType, - FieldRefAllowType, - ModelMapping, - ModelAction, - }; -} - -export declare function dmmfToRuntimeDataModel( - dmmfDataModel: DMMF_2.Datamodel, -): RuntimeDataModel; - -declare type Document_2 = ReadonlyDeep_2<{ - datamodel: Datamodel; - schema: Schema; - mappings: Mappings; -}>; - -/** - * A generic driver adapter factory that allows the user to instantiate a - * driver adapter. The query and result types are specific to the adapter. - */ -declare interface DriverAdapterFactory extends AdapterInfo { - /** - * Instantiate a driver adapter. - */ - connect(): Promise>; -} - -declare type DynamicArgType = - | ArgType - | { - arity: "tuple"; - elements: ArgType[]; - }; - -/** Client */ -export declare type DynamicClientExtensionArgs< - C_, - TypeMap extends TypeMapDef, - TypeMapCb extends TypeMapCbDef, - ExtArgs extends Record, -> = { - [P in keyof C_]: unknown; -} & { - [K: symbol]: { - ctx: Optional< - DynamicClientExtensionThis, - ITXClientDenyList - > & { - $parent: Optional< - DynamicClientExtensionThis, - ITXClientDenyList - >; - }; - }; -}; - -export declare type DynamicClientExtensionThis< - TypeMap extends TypeMapDef, - TypeMapCb extends TypeMapCbDef, - ExtArgs extends Record, -> = { - [P in keyof ExtArgs["client"]]: Return; -} & { - [P in Exclude< - TypeMap["meta"]["modelProps"], - keyof ExtArgs["client"] - >]: DynamicModelExtensionThis, ExtArgs>; -} & { - [P in Exclude< - keyof TypeMap["other"]["operations"], - keyof ExtArgs["client"] - >]: P extends keyof ClientOtherOps ? ClientOtherOps[P] : never; -} & { - [P in Exclude< - ClientBuiltInProp, - keyof ExtArgs["client"] - >]: DynamicClientExtensionThisBuiltin[P]; -} & { - [K: symbol]: { - types: TypeMap["other"]; - }; -}; - -export declare type DynamicClientExtensionThisBuiltin< - TypeMap extends TypeMapDef, - TypeMapCb extends TypeMapCbDef, - ExtArgs extends Record, -> = { - $extends: ExtendsHook< - "extends", - TypeMapCb, - ExtArgs, - Call< - TypeMapCb, - { - extArgs: ExtArgs; - } - > - >; - $transaction

[]>( - arg: [...P], - options?: { - isolationLevel?: TypeMap["meta"]["txIsolationLevel"]; - }, - ): Promise>; - $transaction( - fn: ( - client: Omit< - DynamicClientExtensionThis, - ITXClientDenyList - >, - ) => Promise, - options?: { - maxWait?: number; - timeout?: number; - isolationLevel?: TypeMap["meta"]["txIsolationLevel"]; - }, - ): Promise; - $disconnect(): Promise; - $connect(): Promise; -}; - -/** Model */ -export declare type DynamicModelExtensionArgs< - M_, - TypeMap extends TypeMapDef, - TypeMapCb extends TypeMapCbDef, - ExtArgs extends Record, -> = { - [K in keyof M_]: K extends "$allModels" - ? { - [P in keyof M_[K]]?: unknown; - } & { - [K: symbol]: {}; - } - : K extends TypeMap["meta"]["modelProps"] - ? { - [P in keyof M_[K]]?: unknown; - } & { - [K: symbol]: { - ctx: DynamicModelExtensionThis< - TypeMap, - ModelKey, - ExtArgs - > & { - $parent: DynamicClientExtensionThis; - } & { - $name: ModelKey; - } & { - /** - * @deprecated Use `$name` instead. - */ - name: ModelKey; - }; - }; - } - : never; -}; - -export declare type DynamicModelExtensionFluentApi< - TypeMap extends TypeMapDef, - M extends PropertyKey, - P extends PropertyKey, - Null, -> = { - [K in keyof TypeMap["model"][M]["payload"]["objects"]]: ( - args?: Exact< - A, - Path - >, - ) => PrismaPromise< - | Path< - DynamicModelExtensionFnResultBase< - TypeMap, - M, - { - select: { - [P in K]: A; - }; - }, - P - >, - [K] - > - | Null - > & - DynamicModelExtensionFluentApi< - TypeMap, - (TypeMap["model"][M]["payload"]["objects"][K] & {})["name"], - P, - Null | Select - >; -}; - -export declare type DynamicModelExtensionFnResult< - TypeMap extends TypeMapDef, - M extends PropertyKey, - A, - P extends PropertyKey, - Null, -> = P extends FluentOperation - ? DynamicModelExtensionFluentApi & - PrismaPromise | Null> - : PrismaPromise>; - -export declare type DynamicModelExtensionFnResultBase< - TypeMap extends TypeMapDef, - M extends PropertyKey, - A, - P extends PropertyKey, -> = GetResult< - TypeMap["model"][M]["payload"], - A, - P & Operation, - TypeMap["globalOmitOptions"] ->; - -export declare type DynamicModelExtensionFnResultNull

= - P extends "findUnique" | "findFirst" ? null : never; - -export declare type DynamicModelExtensionOperationFn< - TypeMap extends TypeMapDef, - M extends PropertyKey, - P extends PropertyKey, -> = {} extends TypeMap["model"][M]["operations"][P]["args"] - ? ( - args?: Exact, - ) => DynamicModelExtensionFnResult< - TypeMap, - M, - A, - P, - DynamicModelExtensionFnResultNull

- > - : ( - args: Exact, - ) => DynamicModelExtensionFnResult< - TypeMap, - M, - A, - P, - DynamicModelExtensionFnResultNull

- >; - -export declare type DynamicModelExtensionThis< - TypeMap extends TypeMapDef, - M extends PropertyKey, - ExtArgs extends Record, -> = { - [P in keyof ExtArgs["model"][Uncapitalize]]: Return< - ExtArgs["model"][Uncapitalize][P] - >; -} & { - [P in Exclude< - keyof TypeMap["model"][M]["operations"], - keyof ExtArgs["model"][Uncapitalize] - >]: DynamicModelExtensionOperationFn; -} & { - [P in Exclude< - "fields", - keyof ExtArgs["model"][Uncapitalize] - >]: TypeMap["model"][M]["fields"]; -} & { - [K: symbol]: { - types: TypeMap["model"][M]; - }; -}; - -/** Query */ -export declare type DynamicQueryExtensionArgs< - Q_, - TypeMap extends TypeMapDef, -> = { - [K in keyof Q_]: K extends "$allOperations" - ? (args: { - model?: string; - operation: string; - args: any; - query: (args: any) => PrismaPromise; - }) => Promise - : K extends "$allModels" - ? { - [P in - | keyof Q_[K] - | keyof TypeMap["model"][keyof TypeMap["model"]]["operations"] - | "$allOperations"]?: P extends "$allOperations" - ? DynamicQueryExtensionCb< - TypeMap, - "model", - keyof TypeMap["model"], - keyof TypeMap["model"][keyof TypeMap["model"]]["operations"] - > - : P extends keyof TypeMap["model"][keyof TypeMap["model"]]["operations"] - ? DynamicQueryExtensionCb< - TypeMap, - "model", - keyof TypeMap["model"], - P - > - : never; - } - : K extends TypeMap["meta"]["modelProps"] - ? { - [P in - | keyof Q_[K] - | keyof TypeMap["model"][ModelKey]["operations"] - | "$allOperations"]?: P extends "$allOperations" - ? DynamicQueryExtensionCb< - TypeMap, - "model", - ModelKey, - keyof TypeMap["model"][ModelKey]["operations"] - > - : P extends keyof TypeMap["model"][ModelKey< - TypeMap, - K - >]["operations"] - ? DynamicQueryExtensionCb< - TypeMap, - "model", - ModelKey, - P - > - : never; - } - : K extends keyof TypeMap["other"]["operations"] - ? DynamicQueryExtensionCb<[TypeMap], 0, "other", K> - : never; -}; - -export declare type DynamicQueryExtensionCb< - TypeMap extends TypeMapDef, - _0 extends PropertyKey, - _1 extends PropertyKey, - _2 extends PropertyKey, -> = >( - args: A, -) => Promise; - -export declare type DynamicQueryExtensionCbArgs< - TypeMap extends TypeMapDef, - _0 extends PropertyKey, - _1 extends PropertyKey, - _2 extends PropertyKey, -> = (_1 extends unknown - ? _2 extends unknown - ? { - args: DynamicQueryExtensionCbArgsArgs; - model: _0 extends 0 ? undefined : _1; - operation: _2; - query: >( - args: A, - ) => PrismaPromise; - } - : never - : never) & { - query: ( - args: DynamicQueryExtensionCbArgsArgs, - ) => PrismaPromise; -}; - -export declare type DynamicQueryExtensionCbArgsArgs< - TypeMap extends TypeMapDef, - _0 extends PropertyKey, - _1 extends PropertyKey, - _2 extends PropertyKey, -> = _2 extends "$queryRaw" | "$executeRaw" - ? Sql - : TypeMap[_0][_1]["operations"][_2]["args"]; - -/** Result */ -export declare type DynamicResultExtensionArgs< - R_, - TypeMap extends TypeMapDef, -> = { - [K in keyof R_]: { - [P in keyof R_[K]]?: { - needs?: DynamicResultExtensionNeeds< - TypeMap, - ModelKey, - R_[K][P] - >; - compute( - data: DynamicResultExtensionData< - TypeMap, - ModelKey, - R_[K][P] - >, - ): any; - }; - }; -}; - -export declare type DynamicResultExtensionData< - TypeMap extends TypeMapDef, - M extends PropertyKey, - S, -> = GetFindResult< - TypeMap["model"][M]["payload"], - { - select: S; - }, - {} ->; - -export declare type DynamicResultExtensionNeeds< - TypeMap extends TypeMapDef, - M extends PropertyKey, - S, -> = { - [K in keyof S]: K extends keyof TypeMap["model"][M]["payload"]["scalars"] - ? S[K] - : never; -} & { - [N in keyof TypeMap["model"][M]["payload"]["scalars"]]?: boolean; -}; - -/** - * Placeholder value for "no text". - */ -export declare const empty: Sql; - -export declare type EmptyToUnknown = T; - -declare interface Engine { - /** The name of the engine. This is meant to be consumed externally */ - readonly name: string; - onBeforeExit(callback: () => Promise): void; - start(): Promise; - stop(): Promise; - version(forceRun?: boolean): Promise | string; - request( - query: JsonQuery, - options: RequestOptions, - ): Promise>; - requestBatch( - queries: JsonQuery[], - options: RequestBatchOptions, - ): Promise[]>; - transaction( - action: "start", - headers: Transaction_2.TransactionHeaders, - options: Transaction_2.Options, - ): Promise>; - transaction( - action: "commit", - headers: Transaction_2.TransactionHeaders, - info: Transaction_2.InteractiveTransactionInfo, - ): Promise; - transaction( - action: "rollback", - headers: Transaction_2.TransactionHeaders, - info: Transaction_2.InteractiveTransactionInfo, - ): Promise; - metrics(options: MetricsOptionsJson): Promise; - metrics(options: MetricsOptionsPrometheus): Promise; - applyPendingMigrations(): Promise; -} - -declare interface EngineConfig { - cwd: string; - dirname: string; - enableDebugLogs?: boolean; - allowTriggerPanic?: boolean; - prismaPath?: string; - generator?: GeneratorConfig; - /** - * @remarks this field is used internally by Policy, do not rename or remove - */ - overrideDatasources: Datasources; - showColors?: boolean; - logQueries?: boolean; - logLevel?: "info" | "warn"; - env: Record; - flags?: string[]; - clientVersion: string; - engineVersion: string; - previewFeatures?: string[]; - engineEndpoint?: string; - activeProvider?: string; - logEmitter: LogEmitter; - transactionOptions: Transaction_2.Options; - /** - * Instance of a Driver Adapter, e.g., like one provided by `@prisma/adapter-planetscale`. - * If set, this is only used in the library engine, and all queries would be performed through it, - * rather than Prisma's Rust drivers. - * @remarks only used by LibraryEngine.ts - */ - adapter?: SqlDriverAdapterFactory; - /** - * The contents of the schema encoded into a string - */ - inlineSchema: string; - /** - * The contents of the datasource url saved in a string - * @remarks only used by DataProxyEngine.ts - * @remarks this field is used internally by Policy, do not rename or remove - */ - inlineDatasources: GetPrismaClientConfig["inlineDatasources"]; - /** - * The string hash that was produced for a given schema - * @remarks only used by DataProxyEngine.ts - */ - inlineSchemaHash: string; - /** - * The helper for interaction with OTEL tracing - * @remarks enabling is determined by the client and @prisma/instrumentation package - */ - tracingHelper: TracingHelper; - /** - * Information about whether we have not found a schema.prisma file in the - * default location, and that we fell back to finding the schema.prisma file - * in the current working directory. This usually means it has been bundled. - */ - isBundled?: boolean; - /** - * Web Assembly module loading configuration - */ - engineWasm?: EngineWasmLoadingConfig; - compilerWasm?: CompilerWasmLoadingConfig; - /** - * Allows Accelerate to use runtime utilities from the client. These are - * necessary for the AccelerateEngine to function correctly. - */ - accelerateUtils?: { - resolveDatasourceUrl: typeof resolveDatasourceUrl; - getBatchRequestPayload: typeof getBatchRequestPayload; - prismaGraphQLToJSError: typeof prismaGraphQLToJSError; - PrismaClientUnknownRequestError: typeof PrismaClientUnknownRequestError; - PrismaClientInitializationError: typeof PrismaClientInitializationError; - PrismaClientKnownRequestError: typeof PrismaClientKnownRequestError; - debug: (...args: any[]) => void; - engineVersion: string; - clientVersion: string; - }; -} - -declare type EngineEvent = E extends QueryEventType - ? QueryEvent - : LogEvent; - -declare type EngineEventType = QueryEventType | LogEventType; - -declare type EngineSpan = { - id: EngineSpanId; - parentId: string | null; - name: string; - startTime: HrTime; - endTime: HrTime; - kind: EngineSpanKind; - attributes?: Record; - links?: EngineSpanId[]; -}; - -declare type EngineSpanId = string; - -declare type EngineSpanKind = "client" | "internal"; - -declare type EngineWasmLoadingConfig = { - /** - * WASM-bindgen runtime for corresponding module - */ - getRuntime: () => Promise<{ - __wbg_set_wasm(exports: unknown): void; - QueryEngine: QueryEngineConstructor; - }>; - /** - * Loads the raw wasm module for the wasm query engine. This configuration is - * generated specifically for each type of client, eg. Node.js client and Edge - * clients will have different implementations. - * @remarks this is a callback on purpose, we only load the wasm if needed. - * @remarks only used by LibraryEngine - */ - getQueryEngineWasmModule: () => Promise; -}; - -declare type EnumValue = ReadonlyDeep_2<{ - name: string; - dbName: string | null; -}>; - -declare type EnvPaths = { - rootEnvPath: string | null; - schemaEnvPath: string | undefined; -}; - -declare interface EnvValue { - fromEnvVar: null | string; - value: null | string; -} - -export declare type Equals = - (() => T extends A ? 1 : 2) extends () => T extends B ? 1 : 2 ? 1 : 0; - -declare type Error_2 = MappedError & { - originalCode?: string; - originalMessage?: string; -}; - -declare type ErrorCapturingFunction = T extends ( - ...args: infer A -) => Promise - ? (...args: A) => Promise>> - : T extends (...args: infer A) => infer R - ? (...args: A) => Result_4> - : T; - -declare type ErrorCapturingInterface = { - [K in keyof T]: ErrorCapturingFunction; -}; - -declare interface ErrorCapturingSqlDriverAdapter extends ErrorCapturingInterface { - readonly errorRegistry: ErrorRegistry; -} - -declare type ErrorFormat = "pretty" | "colorless" | "minimal"; - -declare type ErrorRecord = { - error: unknown; -}; - -declare interface ErrorRegistry { - consumeError(id: number): ErrorRecord | undefined; -} - -declare interface ErrorWithBatchIndex { - batchRequestIdx?: number; -} - -declare type EventCallback = [E] extends [ - "beforeExit", -] - ? () => Promise - : [E] extends [LogLevel] - ? (event: EngineEvent) => void - : never; - -export declare type Exact = - | (A extends unknown - ? W extends A - ? { - [K in keyof A]: Exact; - } - : W - : never) - | (A extends Narrowable ? A : never); - -/** - * Defines Exception. - * - * string or an object with one of (message or name or code) and optional stack - */ -declare type Exception = - | ExceptionWithCode - | ExceptionWithMessage - | ExceptionWithName - | string; - -declare interface ExceptionWithCode { - code: string | number; - name?: string; - message?: string; - stack?: string; -} - -declare interface ExceptionWithMessage { - code?: string | number; - message: string; - name?: string; - stack?: string; -} - -declare interface ExceptionWithName { - code?: string | number; - message?: string; - name: string; - stack?: string; -} - -declare type ExtendedEventType = LogLevel | "beforeExit"; - -declare type ExtendedSpanOptions = SpanOptions & { - /** The name of the span */ - name: string; - internal?: boolean; - /** Whether it propagates context (?=true) */ - active?: boolean; - /** The context to append the span to */ - context?: Context; -}; - -/** $extends, defineExtension */ -export declare interface ExtendsHook< - Variant extends "extends" | "define", - TypeMapCb extends TypeMapCbDef, - ExtArgs extends Record, - TypeMap extends TypeMapDef = Call< - TypeMapCb, - { - extArgs: ExtArgs; - } - >, -> { - extArgs: ExtArgs; - < - R_ extends { - [K in TypeMap["meta"]["modelProps"] | "$allModels"]?: unknown; - }, - R, - M_ extends { - [K in TypeMap["meta"]["modelProps"] | "$allModels"]?: unknown; - }, - M, - Q_ extends { - [K in - | TypeMap["meta"]["modelProps"] - | "$allModels" - | keyof TypeMap["other"]["operations"] - | "$allOperations"]?: unknown; - }, - C_ extends { - [K in string]?: unknown; - }, - C, - Args extends InternalArgs = InternalArgs, - MergedArgs extends InternalArgs = MergeExtArgs, - >( - extension: - | ((client: DynamicClientExtensionThis) => { - $extends: { - extArgs: Args; - }; - }) - | { - name?: string; - query?: DynamicQueryExtensionArgs; - result?: DynamicResultExtensionArgs & R; - model?: DynamicModelExtensionArgs & - M; - client?: DynamicClientExtensionArgs & - C; - }, - ): { - extends: DynamicClientExtensionThis< - Call< - TypeMapCb, - { - extArgs: MergedArgs; - } - >, - TypeMapCb, - MergedArgs - >; - define: (client: any) => { - $extends: { - extArgs: Args; - }; - }; - }[Variant]; -} - -export declare type ExtensionArgs = Optional; - -declare namespace Extensions { - export { defineExtension, getExtensionContext }; -} -export { Extensions }; - -declare namespace Extensions_2 { - export { - InternalArgs, - DefaultArgs, - GetPayloadResultExtensionKeys, - GetPayloadResultExtensionObject, - GetPayloadResult, - GetSelect, - GetOmit, - DynamicQueryExtensionArgs, - DynamicQueryExtensionCb, - DynamicQueryExtensionCbArgs, - DynamicQueryExtensionCbArgsArgs, - DynamicResultExtensionArgs, - DynamicResultExtensionNeeds, - DynamicResultExtensionData, - DynamicModelExtensionArgs, - DynamicModelExtensionThis, - DynamicModelExtensionOperationFn, - DynamicModelExtensionFnResult, - DynamicModelExtensionFnResultBase, - DynamicModelExtensionFluentApi, - DynamicModelExtensionFnResultNull, - DynamicClientExtensionArgs, - DynamicClientExtensionThis, - ClientBuiltInProp, - DynamicClientExtensionThisBuiltin, - ExtendsHook, - MergeExtArgs, - AllModelsToStringIndex, - TypeMapDef, - DevTypeMapDef, - DevTypeMapFnDef, - ClientOptionDef, - ClientOtherOps, - TypeMapCbDef, - ModelKey, - RequiredExtensionArgs as UserArgs, - }; -} - -export declare type ExtractGlobalOmit< - Options, - ModelName extends string, -> = Options extends { - omit: { - [K in ModelName]: infer GlobalOmit; - }; -} - ? GlobalOmit - : {}; - -declare type Field = ReadonlyDeep_2<{ - kind: FieldKind; - name: string; - isRequired: boolean; - isList: boolean; - isUnique: boolean; - isId: boolean; - isReadOnly: boolean; - isGenerated?: boolean; - isUpdatedAt?: boolean; - /** - * Describes the data type in the same the way it is defined in the Prisma schema: - * BigInt, Boolean, Bytes, DateTime, Decimal, Float, Int, JSON, String, $ModelName - */ - type: string; - /** - * Native database type, if specified. - * For example, `@db.VarChar(191)` is encoded as `['VarChar', ['191']]`, - * `@db.Text` is encoded as `['Text', []]`. - */ - nativeType?: [string, string[]] | null; - dbName?: string | null; - hasDefaultValue: boolean; - default?: FieldDefault | FieldDefaultScalar | FieldDefaultScalar[]; - relationFromFields?: string[]; - relationToFields?: string[]; - relationOnDelete?: string; - relationOnUpdate?: string; - relationName?: string; - documentation?: string; -}>; - -declare type FieldDefault = ReadonlyDeep_2<{ - name: string; - args: Array; -}>; - -declare type FieldDefaultScalar = string | boolean | number; - -declare type FieldInitializer = - | { - type: "value"; - value: PrismaValue; - } - | { - type: "lastInsertId"; - }; - -declare type FieldKind = "scalar" | "object" | "enum" | "unsupported"; - -declare type FieldLocation = - | "scalar" - | "inputObjectTypes" - | "outputObjectTypes" - | "enumTypes" - | "fieldRefTypes"; - -declare type FieldNamespace = "model" | "prisma"; - -declare type FieldOperation = - | { - type: "set"; - value: PrismaValue; - } - | { - type: "add"; - value: PrismaValue; - } - | { - type: "subtract"; - value: PrismaValue; - } - | { - type: "multiply"; - value: PrismaValue; - } - | { - type: "divide"; - value: PrismaValue; - }; - -/** - * A reference to a specific field of a specific model - */ -export declare interface FieldRef { - readonly modelName: Model; - readonly name: string; - readonly typeName: FieldType; - readonly isList: boolean; -} - -declare type FieldRefAllowType = TypeRef<"scalar" | "enumTypes">; - -declare type FieldRefType = ReadonlyDeep_2<{ - name: string; - allowTypes: FieldRefAllowType[]; - fields: SchemaArg[]; -}>; - -declare type FieldScalarType = - | { - type: - | "string" - | "int" - | "bigint" - | "float" - | "boolean" - | "json" - | "object" - | "datetime" - | "decimal" - | "unsupported"; - } - | { - type: "enum"; - name: string; - } - | { - type: "bytes"; - encoding: "array" | "base64" | "hex"; - }; - -declare type FieldType = { - arity: Arity; -} & FieldScalarType; - -declare type FluentOperation = - | "findUnique" - | "findUniqueOrThrow" - | "findFirst" - | "findFirstOrThrow" - | "create" - | "update" - | "upsert" - | "delete"; - -export declare interface Fn { - params: Params; - returns: Returns; -} - -declare type Fragment = - | { - type: "stringChunk"; - chunk: string; - } - | { - type: "parameter"; - } - | { - type: "parameterTuple"; - } - | { - type: "parameterTupleList"; - itemPrefix: string; - itemSeparator: string; - itemSuffix: string; - groupSeparator: string; - }; - -declare interface GeneratorConfig { - name: string; - output: EnvValue | null; - isCustomOutput?: boolean; - provider: EnvValue; - config: { - /** `output` is a reserved name and will only be available directly at `generator.output` */ - output?: never; - /** `provider` is a reserved name and will only be available directly at `generator.provider` */ - provider?: never; - /** `binaryTargets` is a reserved name and will only be available directly at `generator.binaryTargets` */ - binaryTargets?: never; - /** `previewFeatures` is a reserved name and will only be available directly at `generator.previewFeatures` */ - previewFeatures?: never; - } & { - [key: string]: string | string[] | undefined; - }; - binaryTargets: BinaryTargetsEnvValue[]; - previewFeatures: string[]; - envPaths?: EnvPaths; - sourceFilePath: string; -} - -export declare type GetAggregateResult

= { - [K in keyof A as K extends Aggregate ? K : never]: K extends "_count" - ? A[K] extends true - ? number - : Count - : { - [J in keyof A[K] & string]: P["scalars"][J] | null; - }; -}; - -declare function getBatchRequestPayload( - batch: JsonQuery[], - transaction?: TransactionOptions_2, -): QueryEngineBatchRequest; - -export declare type GetBatchResult = { - count: number; -}; - -export declare type GetCountResult = A extends { - select: infer S; -} - ? S extends true - ? number - : Count - : number; - -declare function getExtensionContext(that: T): Context_2; - -export declare type GetFindResult< - P extends OperationPayload, - A, - GlobalOmitOptions, -> = - Equals extends 1 - ? DefaultSelection - : A extends - | ({ - select: infer S extends object; - } & Record) - | ({ - include: infer I extends object; - } & Record) - ? { - [K in keyof S | keyof I as (S & I)[K] extends - | false - | undefined - | Skip - | null - ? never - : K]: (S & I)[K] extends object - ? P extends SelectablePayloadFields - ? O extends OperationPayload - ? GetFindResult[] - : never - : P extends SelectablePayloadFields - ? O extends OperationPayload - ? - | GetFindResult - | (SelectField & null) - : never - : K extends "_count" - ? Count> - : never - : P extends SelectablePayloadFields - ? O extends OperationPayload - ? DefaultSelection[] - : never - : P extends SelectablePayloadFields - ? O extends OperationPayload - ? - | DefaultSelection - | (SelectField & null) - : never - : P extends { - scalars: { - [k in K]: infer O; - }; - } - ? O - : K extends "_count" - ? Count - : never; - } & (A extends { - include: any; - } & Record - ? DefaultSelection< - P, - A & { - omit: A["omit"]; - }, - GlobalOmitOptions - > - : unknown) - : DefaultSelection; - -export declare type GetGroupByResult< - P extends OperationPayload, - A, -> = A extends { - by: string[]; -} - ? Array< - GetAggregateResult & { - [K in A["by"][number]]: P["scalars"][K]; - } - > - : A extends { - by: string; - } - ? Array< - GetAggregateResult & { - [K in A["by"]]: P["scalars"][K]; - } - > - : {}[]; - -export declare type GetOmit< - BaseKeys extends string, - R extends InternalArgs["result"][string], - ExtraType = never, -> = { - [K in (string extends keyof R ? never : keyof R) | BaseKeys]?: - | boolean - | ExtraType; -}; - -export declare type GetPayloadResult< - Base extends Record, - R extends InternalArgs["result"][string], -> = Omit> & - GetPayloadResultExtensionObject; - -export declare type GetPayloadResultExtensionKeys< - R extends InternalArgs["result"][string], - KR extends keyof R = string extends keyof R ? never : keyof R, -> = KR; - -export declare type GetPayloadResultExtensionObject< - R extends InternalArgs["result"][string], -> = { - [K in GetPayloadResultExtensionKeys]: R[K] extends () => { - compute: (...args: any) => infer C; - } - ? C - : never; -}; - -export declare function getPrismaClient(config: GetPrismaClientConfig): { - new (optionsArg?: PrismaClientOptions): { - _originalClient: any; - _runtimeDataModel: RuntimeDataModel; - _requestHandler: RequestHandler; - _connectionPromise?: Promise | undefined; - _disconnectionPromise?: Promise | undefined; - _engineConfig: EngineConfig; - _accelerateEngineConfig: AccelerateEngineConfig; - _clientVersion: string; - _errorFormat: ErrorFormat; - _tracingHelper: TracingHelper; - _previewFeatures: string[]; - _activeProvider: string; - _globalOmit?: GlobalOmitOptions | undefined; - _extensions: MergedExtensionsList; - /** - * @remarks This is used internally by Policy, do not rename or remove - */ - _engine: Engine; - /** - * A fully constructed/applied Client that references the parent - * PrismaClient. This is used for Client extensions only. - */ - _appliedParent: any; - _createPrismaPromise: PrismaPromiseFactory; - $on( - eventType: E, - callback: EventCallback, - ): any; - $connect(): Promise; - /** - * Disconnect from the database - */ - $disconnect(): Promise; - /** - * Executes a raw query and always returns a number - */ - $executeRawInternal( - transaction: PrismaPromiseTransaction | undefined, - clientMethod: string, - args: RawQueryArgs, - middlewareArgsMapper?: MiddlewareArgsMapper, - ): Promise; - /** - * Executes a raw query provided through a safe tag function - * @see https://github.com/prisma/prisma/issues/7142 - * - * @param query - * @param values - * @returns - */ - $executeRaw( - query: TemplateStringsArray | Sql, - ...values: any[] - ): PrismaPromise_2; - /** - * Unsafe counterpart of `$executeRaw` that is susceptible to SQL injections - * @see https://github.com/prisma/prisma/issues/7142 - * - * @param query - * @param values - * @returns - */ - $executeRawUnsafe( - query: string, - ...values: RawValue[] - ): PrismaPromise_2; - /** - * Executes a raw command only for MongoDB - * - * @param command - * @returns - */ - $runCommandRaw( - command: Record, - ): PrismaPromise_2; - /** - * Executes a raw query and returns selected data - */ - $queryRawInternal( - transaction: PrismaPromiseTransaction | undefined, - clientMethod: string, - args: RawQueryArgs, - middlewareArgsMapper?: MiddlewareArgsMapper, - ): Promise; - /** - * Executes a raw query provided through a safe tag function - * @see https://github.com/prisma/prisma/issues/7142 - * - * @param query - * @param values - * @returns - */ - $queryRaw( - query: TemplateStringsArray | Sql, - ...values: any[] - ): PrismaPromise_2; - /** - * Counterpart to $queryRaw, that returns strongly typed results - * @param typedSql - */ - $queryRawTyped(typedSql: UnknownTypedSql): PrismaPromise_2; - /** - * Unsafe counterpart of `$queryRaw` that is susceptible to SQL injections - * @see https://github.com/prisma/prisma/issues/7142 - * - * @param query - * @param values - * @returns - */ - $queryRawUnsafe( - query: string, - ...values: RawValue[] - ): PrismaPromise_2; - /** - * Execute a batch of requests in a transaction - * @param requests - * @param options - */ - _transactionWithArray({ - promises, - options, - }: { - promises: Array>; - options?: BatchTransactionOptions; - }): Promise; - /** - * Perform a long-running transaction - * @param callback - * @param options - * @returns - */ - _transactionWithCallback({ - callback, - options, - }: { - callback: (client: Client) => Promise; - options?: Options; - }): Promise; - _createItxClient(transaction: PrismaPromiseInteractiveTransaction): Client; - /** - * Execute queries within a transaction - * @param input a callback or a query list - * @param options to set timeouts (callback) - * @returns - */ - $transaction(input: any, options?: any): Promise; - /** - * Runs the middlewares over params before executing a request - * @param internalParams - * @returns - */ - _request(internalParams: InternalRequestParams): Promise; - _executeRequest({ - args, - clientMethod, - dataPath, - callsite, - action, - model, - argsMapper, - transaction, - unpacker, - otelParentCtx, - customDataProxyFetch, - }: InternalRequestParams): Promise; - $metrics: MetricsClient; - /** - * Shortcut for checking a preview flag - * @param feature preview flag - * @returns - */ - _hasPreviewFlag(feature: string): boolean; - $applyPendingMigrations(): Promise; - $extends: typeof $extends; - readonly [Symbol.toStringTag]: string; - }; -}; - -/** - * Config that is stored into the generated client. When the generated client is - * loaded, this same config is passed to {@link getPrismaClient} which creates a - * closure with that config around a non-instantiated [[PrismaClient]]. - */ -export declare type GetPrismaClientConfig = { - runtimeDataModel: RuntimeDataModel; - generator?: GeneratorConfig; - relativeEnvPaths?: { - rootEnvPath?: string | null; - schemaEnvPath?: string | null; - }; - relativePath: string; - dirname: string; - clientVersion: string; - engineVersion: string; - datasourceNames: string[]; - activeProvider: ActiveConnectorType; - /** - * The contents of the schema encoded into a string - * @remarks only used for the purpose of data proxy - */ - inlineSchema: string; - /** - * A special env object just for the data proxy edge runtime. - * Allows bundlers to inject their own env variables (Vercel). - * Allows platforms to declare global variables as env (Workers). - * @remarks only used for the purpose of data proxy - */ - injectableEdgeEnv?: () => LoadedEnv; - /** - * The contents of the datasource url saved in a string. - * This can either be an env var name or connection string. - * It is needed by the client to connect to the Data Proxy. - * @remarks only used for the purpose of data proxy - */ - inlineDatasources: { - [name in string]: { - url: EnvValue; - }; - }; - /** - * The string hash that was produced for a given schema - * @remarks only used for the purpose of data proxy - */ - inlineSchemaHash: string; - /** - * A marker to indicate that the client was not generated via `prisma - * generate` but was generated via `generate --postinstall` script instead. - * @remarks used to error for Vercel/Netlify for schema caching issues - */ - postinstall?: boolean; - /** - * Information about the CI where the Prisma Client has been generated. The - * name of the CI environment is stored at generation time because CI - * information is not always available at runtime. Moreover, the edge client - * has no notion of environment variables, so this works around that. - * @remarks used to error for Vercel/Netlify for schema caching issues - */ - ciName?: string; - /** - * Information about whether we have not found a schema.prisma file in the - * default location, and that we fell back to finding the schema.prisma file - * in the current working directory. This usually means it has been bundled. - */ - isBundled?: boolean; - /** - * A boolean that is `false` when the client was generated with --no-engine. At - * runtime, this means the client will be bound to be using the Data Proxy. - */ - copyEngine?: boolean; - /** - * Optional wasm loading configuration - */ - engineWasm?: EngineWasmLoadingConfig; - compilerWasm?: CompilerWasmLoadingConfig; -}; - -export declare type GetResult< - Payload extends OperationPayload, - Args, - OperationName extends Operation = "findUniqueOrThrow", - GlobalOmitOptions = {}, -> = { - findUnique: GetFindResult | null; - findUniqueOrThrow: GetFindResult; - findFirst: GetFindResult | null; - findFirstOrThrow: GetFindResult; - findMany: GetFindResult[]; - create: GetFindResult; - createMany: GetBatchResult; - createManyAndReturn: GetFindResult[]; - update: GetFindResult; - updateMany: GetBatchResult; - updateManyAndReturn: GetFindResult[]; - upsert: GetFindResult; - delete: GetFindResult; - deleteMany: GetBatchResult; - aggregate: GetAggregateResult; - count: GetCountResult; - groupBy: GetGroupByResult; - $queryRaw: unknown; - $queryRawTyped: unknown; - $executeRaw: number; - $queryRawUnsafe: unknown; - $executeRawUnsafe: number; - $runCommandRaw: JsonObject; - findRaw: JsonObject; - aggregateRaw: JsonObject; -}[OperationName]; - -export declare function getRuntime(): GetRuntimeOutput; - -declare type GetRuntimeOutput = { - id: RuntimeName; - prettyName: string; - isEdge: boolean; -}; - -export declare type GetSelect< - Base extends Record, - R extends InternalArgs["result"][string], - KR extends keyof R = string extends keyof R ? never : keyof R, -> = { - [K in KR | keyof Base]?: K extends KR ? boolean : Base[K]; -}; - -declare type GlobalOmitOptions = { - [modelName: string]: { - [fieldName: string]: boolean; - }; -}; - -declare type HandleErrorParams = { - args: JsArgs; - error: any; - clientMethod: string; - callsite?: CallSite; - transaction?: PrismaPromiseTransaction; - modelName?: string; - globalOmit?: GlobalOmitOptions; -}; - -declare type HrTime = [number, number]; - -/** - * Defines High-Resolution Time. - * - * The first number, HrTime[0], is UNIX Epoch time in seconds since 00:00:00 UTC on 1 January 1970. - * The second number, HrTime[1], represents the partial second elapsed since Unix Epoch time represented by first number in nanoseconds. - * For example, 2021-01-01T12:30:10.150Z in UNIX Epoch time in milliseconds is represented as 1609504210150. - * The first number is calculated by converting and truncating the Epoch time in milliseconds to seconds: - * HrTime[0] = Math.trunc(1609504210150 / 1000) = 1609504210. - * The second number is calculated by converting the digits after the decimal point of the subtraction, (1609504210150 / 1000) - HrTime[0], to nanoseconds: - * HrTime[1] = Number((1609504210.150 - HrTime[0]).toFixed(9)) * 1e9 = 150000000. - * This is represented in HrTime format as [1609504210, 150000000]. - */ -declare type HrTime_2 = [number, number]; - -declare type Index = ReadonlyDeep_2<{ - model: string; - type: IndexType; - isDefinedOnField: boolean; - name?: string; - dbName?: string; - algorithm?: string; - clustered?: boolean; - fields: IndexField[]; -}>; - -declare type IndexField = ReadonlyDeep_2<{ - name: string; - sortOrder?: SortOrder; - length?: number; - operatorClass?: string; -}>; - -declare type IndexType = "id" | "normal" | "unique" | "fulltext"; - -declare type InMemoryOps = { - pagination: Pagination | null; - distinct: string[] | null; - reverse: boolean; - linkingFields: string[] | null; - nested: Record; -}; - -/** - * Matches a JSON array. - * Unlike \`JsonArray\`, readonly arrays are assignable to this type. - */ -export declare interface InputJsonArray extends ReadonlyArray {} - -/** - * Matches a JSON object. - * Unlike \`JsonObject\`, this type allows undefined and read-only properties. - */ -export declare type InputJsonObject = { - readonly [Key in string]?: InputJsonValue | null; -}; - -/** - * Matches any valid value that can be used as an input for operations like - * create and update as the value of a JSON field. Unlike \`JsonValue\`, this - * type allows read-only arrays and read-only object properties and disallows - * \`null\` at the top level. - * - * \`null\` cannot be used as the value of a JSON field because its meaning - * would be ambiguous. Use \`Prisma.JsonNull\` to store the JSON null value or - * \`Prisma.DbNull\` to clear the JSON value and set the field to the database - * NULL value instead. - * - * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-by-null-values - */ -export declare type InputJsonValue = - | string - | number - | boolean - | InputJsonObject - | InputJsonArray - | { - toJSON(): unknown; - }; - -declare type InputType = ReadonlyDeep_2<{ - name: string; - constraints: { - maxNumFields: number | null; - minNumFields: number | null; - fields?: string[]; - }; - meta?: { - source?: string; - grouping?: string; - }; - fields: SchemaArg[]; -}>; - -declare type InputTypeRef = TypeRef< - "scalar" | "inputObjectTypes" | "enumTypes" | "fieldRefTypes" ->; - -declare type InteractiveTransactionInfo = { - /** - * Transaction ID returned by the query engine. - */ - id: string; - /** - * Arbitrary payload the meaning of which depends on the `Engine` implementation. - * For example, `DataProxyEngine` needs to associate different API endpoints with transactions. - * In `LibraryEngine` and `BinaryEngine` it is currently not used. - */ - payload: Payload; -}; - -declare type InteractiveTransactionOptions = - Transaction_2.InteractiveTransactionInfo; - -export declare type InternalArgs< - R = { - [K in string]: { - [K in string]: unknown; - }; - }, - M = { - [K in string]: { - [K in string]: unknown; - }; - }, - Q = { - [K in string]: { - [K in string]: unknown; - }; - }, - C = { - [K in string]: unknown; - }, -> = { - result: { - [K in keyof R]: { - [P in keyof R[K]]: () => R[K][P]; - }; - }; - model: { - [K in keyof M]: { - [P in keyof M[K]]: () => M[K][P]; - }; - }; - query: { - [K in keyof Q]: { - [P in keyof Q[K]]: () => Q[K][P]; - }; - }; - client: { - [K in keyof C]: () => C[K]; - }; -}; - -declare type InternalRequestParams = { - /** - * The original client method being called. - * Even though the rootField / operation can be changed, - * this method stays as it is, as it's what the user's - * code looks like - */ - clientMethod: string; - /** - * Name of js model that triggered the request. Might be used - * for warnings or error messages - */ - jsModelName?: string; - callsite?: CallSite; - transaction?: PrismaPromiseTransaction; - unpacker?: Unpacker; - otelParentCtx?: Context; - /** Used to "desugar" a user input into an "expanded" one */ - argsMapper?: (args?: UserArgs_2) => UserArgs_2; - /** Used to convert args for middleware and back */ - middlewareArgsMapper?: MiddlewareArgsMapper; - /** Used for Accelerate client extension via Data Proxy */ - customDataProxyFetch?: AccelerateExtensionFetchDecorator; -} & Omit; - -declare type IsolationLevel = - | "READ UNCOMMITTED" - | "READ COMMITTED" - | "REPEATABLE READ" - | "SNAPSHOT" - | "SERIALIZABLE"; - -declare type IsolationLevel_2 = - | "ReadUncommitted" - | "ReadCommitted" - | "RepeatableRead" - | "Snapshot" - | "Serializable"; - -declare function isSkip(value: unknown): value is Skip; - -export declare function isTypedSql(value: unknown): value is UnknownTypedSql; - -export declare type ITXClientDenyList = (typeof denylist)[number]; - -export declare const itxClientDenyList: readonly (string | symbol)[]; - -declare interface Job { - resolve: (data: any) => void; - reject: (data: any) => void; - request: any; -} - -/** - * Create a SQL query for a list of values. - */ -export declare function join( - values: readonly RawValue[], - separator?: string, - prefix?: string, - suffix?: string, -): Sql; - -declare type JoinExpression = { - child: QueryPlanNode; - on: [left: string, right: string][]; - parentField: string; - isRelationUnique: boolean; -}; - -export declare type JsArgs = { - select?: Selection_2; - include?: Selection_2; - omit?: Omission; - [argName: string]: JsInputValue; -}; - -export declare type JsInputValue = - | null - | undefined - | string - | number - | boolean - | bigint - | Uint8Array - | Date - | DecimalJsLike - | ObjectEnumValue - | RawParameters - | JsonConvertible - | FieldRef - | JsInputValue[] - | Skip - | { - [key: string]: JsInputValue; - }; - -declare type JsonArgumentValue = - | number - | string - | boolean - | null - | RawTaggedValue - | JsonArgumentValue[] - | { - [key: string]: JsonArgumentValue; - }; - -/** - * From https://github.com/sindresorhus/type-fest/ - * Matches a JSON array. - */ -export declare interface JsonArray extends Array {} - -export declare type JsonBatchQuery = { - batch: JsonQuery[]; - transaction?: { - isolationLevel?: IsolationLevel_2; - }; -}; - -export declare interface JsonConvertible { - toJSON(): unknown; -} - -declare type JsonFieldSelection = { - arguments?: Record | RawTaggedValue; - selection: JsonSelectionSet; -}; - -declare class JsonNull extends NullTypesEnumValue { - #private; -} - -/** - * From https://github.com/sindresorhus/type-fest/ - * Matches a JSON object. - * This type can be useful to enforce some input to be JSON-compatible or as a super-type to be extended from. - */ -export declare type JsonObject = { - [Key in string]?: JsonValue; -}; - -export declare type JsonQuery = { - modelName?: string; - action: JsonQueryAction; - query: JsonFieldSelection; -}; - -declare type JsonQueryAction = - | "findUnique" - | "findUniqueOrThrow" - | "findFirst" - | "findFirstOrThrow" - | "findMany" - | "createOne" - | "createMany" - | "createManyAndReturn" - | "updateOne" - | "updateMany" - | "updateManyAndReturn" - | "deleteOne" - | "deleteMany" - | "upsertOne" - | "aggregate" - | "groupBy" - | "executeRaw" - | "queryRaw" - | "runCommandRaw" - | "findRaw" - | "aggregateRaw"; - -declare type JsonSelectionSet = { - $scalars?: boolean; - $composites?: boolean; -} & { - [fieldName: string]: boolean | JsonFieldSelection; -}; - -/** - * From https://github.com/sindresorhus/type-fest/ - * Matches any valid JSON value. - */ -export declare type JsonValue = - | string - | number - | boolean - | JsonObject - | JsonArray - | null; - -export declare type JsOutputValue = - | null - | string - | number - | boolean - | bigint - | Uint8Array - | Date - | Decimal - | JsOutputValue[] - | { - [key: string]: JsOutputValue; - }; - -export declare type JsPromise = Promise & {}; - -declare type KnownErrorParams = { - code: string; - clientVersion: string; - meta?: Record; - batchRequestIdx?: number; -}; - -/** - * A pointer from the current {@link Span} to another span in the same trace or - * in a different trace. - * Few examples of Link usage. - * 1. Batch Processing: A batch of elements may contain elements associated - * with one or more traces/spans. Since there can only be one parent - * SpanContext, Link is used to keep reference to SpanContext of all - * elements in the batch. - * 2. Public Endpoint: A SpanContext in incoming client request on a public - * endpoint is untrusted from service provider perspective. In such case it - * is advisable to start a new trace with appropriate sampling decision. - * However, it is desirable to associate incoming SpanContext to new trace - * initiated on service provider side so two traces (from Client and from - * Service Provider) can be correlated. - */ -declare interface Link { - /** The {@link SpanContext} of a linked span. */ - context: SpanContext; - /** A set of {@link SpanAttributes} on the link. */ - attributes?: SpanAttributes; - /** Count of attributes of the link that were dropped due to collection limits */ - droppedAttributesCount?: number; -} - -declare type LoadedEnv = - | { - message?: string; - parsed: { - [x: string]: string; - }; - } - | undefined; - -declare type LocationInFile = { - fileName: string; - lineNumber: number | null; - columnNumber: number | null; -}; - -declare type LogDefinition = { - level: LogLevel; - emit: "stdout" | "event"; -}; - -/** - * Typings for the events we emit. - * - * @remarks - * If this is updated, our edge runtime shim needs to be updated as well. - */ -declare type LogEmitter = { - on( - event: E, - listener: (event: EngineEvent) => void, - ): LogEmitter; - emit(event: QueryEventType, payload: QueryEvent): boolean; - emit(event: LogEventType, payload: LogEvent): boolean; -}; - -declare type LogEvent = { - timestamp: Date; - message: string; - target: string; -}; - -declare type LogEventType = "info" | "warn" | "error"; - -declare type LogLevel = "info" | "query" | "warn" | "error"; - -/** - * Generates more strict variant of an enum which, unlike regular enum, - * throws on non-existing property access. This can be useful in following situations: - * - we have an API, that accepts both `undefined` and `SomeEnumType` as an input - * - enum values are generated dynamically from DMMF. - * - * In that case, if using normal enums and no compile-time typechecking, using non-existing property - * will result in `undefined` value being used, which will be accepted. Using strict enum - * in this case will help to have a runtime exception, telling you that you are probably doing something wrong. - * - * Note: if you need to check for existence of a value in the enum you can still use either - * `in` operator or `hasOwnProperty` function. - * - * @param definition - * @returns - */ -export declare function makeStrictEnum< - T extends Record, ->(definition: T): T; - -export declare function makeTypedQueryFactory( - sql: string, -): (...values: any[]) => TypedSql; - -declare type MappedError = - | { - kind: "GenericJs"; - id: number; - } - | { - kind: "UnsupportedNativeDataType"; - type: string; - } - | { - kind: "InvalidIsolationLevel"; - level: string; - } - | { - kind: "LengthMismatch"; - column?: string; - } - | { - kind: "UniqueConstraintViolation"; - constraint?: - | { - fields: string[]; - } - | { - index: string; - } - | { - foreignKey: {}; - }; - } - | { - kind: "NullConstraintViolation"; - constraint?: - | { - fields: string[]; - } - | { - index: string; - } - | { - foreignKey: {}; - }; - } - | { - kind: "ForeignKeyConstraintViolation"; - constraint?: - | { - fields: string[]; - } - | { - index: string; - } - | { - foreignKey: {}; - }; - } - | { - kind: "DatabaseNotReachable"; - host?: string; - port?: number; - } - | { - kind: "DatabaseDoesNotExist"; - db?: string; - } - | { - kind: "DatabaseAlreadyExists"; - db?: string; - } - | { - kind: "DatabaseAccessDenied"; - db?: string; - } - | { - kind: "ConnectionClosed"; - } - | { - kind: "TlsConnectionError"; - reason: string; - } - | { - kind: "AuthenticationFailed"; - user?: string; - } - | { - kind: "TransactionWriteConflict"; - } - | { - kind: "TableDoesNotExist"; - table?: string; - } - | { - kind: "ColumnNotFound"; - column?: string; - } - | { - kind: "TooManyConnections"; - cause: string; - } - | { - kind: "ValueOutOfRange"; - cause: string; - } - | { - kind: "MissingFullTextSearchIndex"; - } - | { - kind: "SocketTimeout"; - } - | { - kind: "InconsistentColumnData"; - cause: string; - } - | { - kind: "TransactionAlreadyClosed"; - cause: string; - } - | { - kind: "postgres"; - code: string; - severity: string; - message: string; - detail: string | undefined; - column: string | undefined; - hint: string | undefined; - } - | { - kind: "mysql"; - code: number; - message: string; - state: string; - } - | { - kind: "sqlite"; - /** - * Sqlite extended error code: https://www.sqlite.org/rescode.html - */ - extendedCode: number; - message: string; - } - | { - kind: "mssql"; - code: number; - message: string; - }; - -declare type Mappings = ReadonlyDeep_2<{ - modelOperations: ModelMapping[]; - otherOperations: { - read: string[]; - write: string[]; - }; -}>; - -/** - * Class that holds the list of all extensions, applied to particular instance, - * as well as resolved versions of the components that need to apply on - * different levels. Main idea of this class: avoid re-resolving as much of the - * stuff as possible when new extensions are added while also delaying the - * resolve until the point it is actually needed. For example, computed fields - * of the model won't be resolved unless the model is actually queried. Neither - * adding extensions with `client` component only cause other components to - * recompute. - */ -declare class MergedExtensionsList { - private head?; - private constructor(); - static empty(): MergedExtensionsList; - static single(extension: ExtensionArgs): MergedExtensionsList; - isEmpty(): boolean; - append(extension: ExtensionArgs): MergedExtensionsList; - getAllComputedFields(dmmfModelName: string): ComputedFieldsMap | undefined; - getAllClientExtensions(): ClientArg | undefined; - getAllModelExtensions(dmmfModelName: string): ModelArg | undefined; - getAllQueryCallbacks(jsModelName: string, operation: string): any; - getAllBatchQueryCallbacks(): BatchQueryOptionsCb[]; -} - -export declare type MergeExtArgs< - TypeMap extends TypeMapDef, - ExtArgs extends Record, - Args extends Record, -> = ComputeDeep< - ExtArgs & - Args & - AllModelsToStringIndex & - AllModelsToStringIndex ->; - -export declare type Metric = { - key: string; - value: T; - labels: Record; - description: string; -}; - -export declare type MetricHistogram = { - buckets: MetricHistogramBucket[]; - sum: number; - count: number; -}; - -export declare type MetricHistogramBucket = [maxValue: number, count: number]; - -export declare type Metrics = { - counters: Metric[]; - gauges: Metric[]; - histograms: Metric[]; -}; - -export declare class MetricsClient { - private _client; - constructor(client: Client); - /** - * Returns all metrics gathered up to this point in prometheus format. - * Result of this call can be exposed directly to prometheus scraping endpoint - * - * @param options - * @returns - */ - prometheus(options?: MetricsOptions): Promise; - /** - * Returns all metrics gathered up to this point in prometheus format. - * - * @param options - * @returns - */ - json(options?: MetricsOptions): Promise; -} - -declare type MetricsOptions = { - /** - * Labels to add to every metrics in key-value format - */ - globalLabels?: Record; -}; - -declare type MetricsOptionsCommon = { - globalLabels?: Record; -}; - -declare type MetricsOptionsJson = { - format: "json"; -} & MetricsOptionsCommon; - -declare type MetricsOptionsPrometheus = { - format: "prometheus"; -} & MetricsOptionsCommon; - -declare type MiddlewareArgsMapper = { - requestArgsToMiddlewareArgs(requestArgs: RequestArgs): MiddlewareArgs; - middlewareArgsToRequestArgs(middlewareArgs: MiddlewareArgs): RequestArgs; -}; - -declare type Model = ReadonlyDeep_2<{ - name: string; - dbName: string | null; - schema: string | null; - fields: Field[]; - uniqueFields: string[][]; - uniqueIndexes: uniqueIndex[]; - documentation?: string; - primaryKey: PrimaryKey | null; - isGenerated?: boolean; -}>; - -declare enum ModelAction { - findUnique = "findUnique", - findUniqueOrThrow = "findUniqueOrThrow", - findFirst = "findFirst", - findFirstOrThrow = "findFirstOrThrow", - findMany = "findMany", - create = "create", - createMany = "createMany", - createManyAndReturn = "createManyAndReturn", - update = "update", - updateMany = "updateMany", - updateManyAndReturn = "updateManyAndReturn", - upsert = "upsert", - delete = "delete", - deleteMany = "deleteMany", - groupBy = "groupBy", - count = "count", // TODO: count does not actually exist in DMMF - aggregate = "aggregate", - findRaw = "findRaw", - aggregateRaw = "aggregateRaw", -} - -export declare type ModelArg = { - [MethodName in string]: unknown; -}; - -export declare type ModelArgs = { - model: { - [ModelName in string]: ModelArg; - }; -}; - -export declare type ModelKey< - TypeMap extends TypeMapDef, - M extends PropertyKey, -> = M extends keyof TypeMap["model"] ? M : Capitalize; - -declare type ModelMapping = ReadonlyDeep_2<{ - model: string; - plural: string; - findUnique?: string | null; - findUniqueOrThrow?: string | null; - findFirst?: string | null; - findFirstOrThrow?: string | null; - findMany?: string | null; - create?: string | null; - createMany?: string | null; - createManyAndReturn?: string | null; - update?: string | null; - updateMany?: string | null; - updateManyAndReturn?: string | null; - upsert?: string | null; - delete?: string | null; - deleteMany?: string | null; - aggregate?: string | null; - groupBy?: string | null; - count?: string | null; - findRaw?: string | null; - aggregateRaw?: string | null; -}>; - -export declare type ModelQueryOptionsCb = ( - args: ModelQueryOptionsCbArgs, -) => Promise; - -export declare type ModelQueryOptionsCbArgs = { - model: string; - operation: string; - args: JsArgs; - query: (args: JsArgs) => Promise; -}; - -declare type MultiBatchResponse = { - type: "multi"; - plans: QueryPlanNode[]; -}; - -export declare type NameArgs = { - name?: string; -}; - -export declare type Narrow = - | { - [K in keyof A]: A[K] extends Function ? A[K] : Narrow; - } - | (A extends Narrowable ? A : never); - -export declare type Narrowable = string | number | bigint | boolean | []; - -export declare type NeverToUnknown = [T] extends [never] ? unknown : T; - -declare class NullTypesEnumValue extends ObjectEnumValue { - _getNamespace(): string; -} - -/** - * Base class for unique values of object-valued enums. - */ -export declare abstract class ObjectEnumValue { - constructor(arg?: symbol); - abstract _getNamespace(): string; - _getName(): string; - toString(): string; -} - -export declare const objectEnumValues: { - classes: { - DbNull: typeof DbNull; - JsonNull: typeof JsonNull; - AnyNull: typeof AnyNull; - }; - instances: { - DbNull: DbNull; - JsonNull: JsonNull; - AnyNull: AnyNull; - }; -}; - -declare const officialPrismaAdapters: readonly [ - "@prisma/adapter-planetscale", - "@prisma/adapter-neon", - "@prisma/adapter-libsql", - "@prisma/adapter-better-sqlite3", - "@prisma/adapter-d1", - "@prisma/adapter-pg", - "@prisma/adapter-mssql", - "@prisma/adapter-mariadb", -]; - -export declare type Omission = Record; - -declare type Omit_2 = { - [P in keyof T as P extends K ? never : P]: T[P]; -}; -export { Omit_2 as Omit }; - -export declare type OmitValue = Key extends keyof Omit - ? Omit[Key] - : false; - -export declare type Operation = - | "findFirst" - | "findFirstOrThrow" - | "findUnique" - | "findUniqueOrThrow" - | "findMany" - | "create" - | "createMany" - | "createManyAndReturn" - | "update" - | "updateMany" - | "updateManyAndReturn" - | "upsert" - | "delete" - | "deleteMany" - | "aggregate" - | "count" - | "groupBy" - | "$queryRaw" - | "$executeRaw" - | "$queryRawUnsafe" - | "$executeRawUnsafe" - | "findRaw" - | "aggregateRaw" - | "$runCommandRaw"; - -export declare type OperationPayload = { - name: string; - scalars: { - [ScalarName in string]: unknown; - }; - objects: { - [ObjectName in string]: unknown; - }; - composites: { - [CompositeName in string]: unknown; - }; -}; - -export declare type Optional = { - [P in K & keyof O]?: O[P]; -} & { - [P in Exclude]: O[P]; -}; - -export declare type OptionalFlat = { - [K in keyof T]?: T[K]; -}; - -export declare type OptionalKeys = { - [K in keyof O]-?: {} extends Pick_2 ? K : never; -}[keyof O]; - -declare type Options = { - /** Timeout for starting the transaction */ - maxWait?: number; - /** Timeout for the transaction body */ - timeout?: number; - /** Transaction isolation level */ - isolationLevel?: IsolationLevel_2; -}; - -declare type Options_2 = { - clientVersion: string; -}; - -export declare type Or = { - 0: { - 0: 0; - 1: 1; - }; - 1: { - 0: 1; - 1: 1; - }; -}[A][B]; - -declare type OtherOperationMappings = ReadonlyDeep_2<{ - read: string[]; - write: string[]; -}>; - -declare type OutputType = ReadonlyDeep_2<{ - name: string; - fields: SchemaField[]; -}>; - -declare type OutputTypeRef = TypeRef< - "scalar" | "outputObjectTypes" | "enumTypes" ->; - -declare type Pagination = { - cursor: Record | null; - take: number | null; - skip: number | null; -}; - -export declare function Param<$Type, $Value extends string>( - name: $Value, -): Param<$Type, $Value>; - -export declare type Param = { - readonly name: $Value; -}; - -export declare type PatchFlat = O1 & Omit_2; - -export declare type Path = O extends unknown - ? P extends [infer K, ...infer R] - ? K extends keyof O - ? Path - : Default - : O - : never; - -export declare type Payload = T extends { - [K: symbol]: { - types: { - payload: any; - }; - }; -} - ? T[symbol]["types"]["payload"] - : any; - -export declare type PayloadToResult< - P, - O extends Record_2 = RenameAndNestPayloadKeys

, -> = { - [K in keyof O]?: O[K][K] extends any[] - ? PayloadToResult[] - : O[K][K] extends object - ? PayloadToResult - : O[K][K]; -}; - -declare type Pick_2 = { - [P in keyof T as P extends K ? P : never]: T[P]; -}; -export { Pick_2 as Pick }; - -declare interface PlaceholderFormat { - prefix: string; - hasNumbering: boolean; -} - -declare type PrimaryKey = ReadonlyDeep_2<{ - name: string | null; - fields: string[]; -}>; - -export declare class PrismaClientInitializationError extends Error { - clientVersion: string; - errorCode?: string; - retryable?: boolean; - constructor(message: string, clientVersion: string, errorCode?: string); - get [Symbol.toStringTag](): string; -} - -export declare class PrismaClientKnownRequestError - extends Error - implements ErrorWithBatchIndex -{ - code: string; - meta?: Record; - clientVersion: string; - batchRequestIdx?: number; - constructor( - message: string, - { code, clientVersion, meta, batchRequestIdx }: KnownErrorParams, - ); - get [Symbol.toStringTag](): string; -} - -export declare type PrismaClientOptions = { - /** - * Overwrites the primary datasource url from your schema.prisma file - */ - datasourceUrl?: string; - /** - * Instance of a Driver Adapter, e.g., like one provided by `@prisma/adapter-planetscale. - */ - adapter?: SqlDriverAdapterFactory | null; - /** - * Overwrites the datasource url from your schema.prisma file - */ - datasources?: Datasources; - /** - * @default "colorless" - */ - errorFormat?: ErrorFormat; - /** - * The default values for Transaction options - * maxWait ?= 2000 - * timeout ?= 5000 - */ - transactionOptions?: Transaction_2.Options; - /** - * @example - * \`\`\` - * // Defaults to stdout - * log: ['query', 'info', 'warn'] - * - * // Emit as events - * log: [ - * { emit: 'stdout', level: 'query' }, - * { emit: 'stdout', level: 'info' }, - * { emit: 'stdout', level: 'warn' } - * ] - * \`\`\` - * Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/logging#the-log-option). - */ - log?: Array; - omit?: GlobalOmitOptions; - /** - * @internal - * You probably don't want to use this. \`__internal\` is used by internal tooling. - */ - __internal?: { - debug?: boolean; - engine?: { - cwd?: string; - binaryPath?: string; - endpoint?: string; - allowTriggerPanic?: boolean; - }; - /** This can be used for testing purposes */ - configOverride?: (config: GetPrismaClientConfig) => GetPrismaClientConfig; - }; -}; - -export declare class PrismaClientRustPanicError extends Error { - clientVersion: string; - constructor(message: string, clientVersion: string); - get [Symbol.toStringTag](): string; -} - -export declare class PrismaClientUnknownRequestError - extends Error - implements ErrorWithBatchIndex -{ - clientVersion: string; - batchRequestIdx?: number; - constructor( - message: string, - { clientVersion, batchRequestIdx }: UnknownErrorParams, - ); - get [Symbol.toStringTag](): string; -} - -export declare class PrismaClientValidationError extends Error { - name: string; - clientVersion: string; - constructor(message: string, { clientVersion }: Options_2); - get [Symbol.toStringTag](): string; -} - -declare function prismaGraphQLToJSError( - { error, user_facing_error }: RequestError, - clientVersion: string, - activeProvider: string, -): PrismaClientKnownRequestError | PrismaClientUnknownRequestError; - -declare type PrismaOperationSpec = { - args: TArgs; - action: TAction; - model: string; -}; - -export declare interface PrismaPromise extends Promise { - [Symbol.toStringTag]: "PrismaPromise"; -} - -/** - * Prisma's `Promise` that is backwards-compatible. All additions on top of the - * original `Promise` are optional so that it can be backwards-compatible. - * @see [[createPrismaPromise]] - */ -declare interface PrismaPromise_2< - TResult, - TSpec extends PrismaOperationSpec = any, -> extends Promise { - get spec(): TSpec; - /** - * Extension of the original `.then` function - * @param onfulfilled same as regular promises - * @param onrejected same as regular promises - * @param transaction transaction options - */ - then( - onfulfilled?: (value: TResult) => R1 | PromiseLike, - onrejected?: (error: unknown) => R2 | PromiseLike, - transaction?: PrismaPromiseTransaction, - ): Promise; - /** - * Extension of the original `.catch` function - * @param onrejected same as regular promises - * @param transaction transaction options - */ - catch( - onrejected?: ((reason: any) => R | PromiseLike) | undefined | null, - transaction?: PrismaPromiseTransaction, - ): Promise; - /** - * Extension of the original `.finally` function - * @param onfinally same as regular promises - * @param transaction transaction options - */ - finally( - onfinally?: (() => void) | undefined | null, - transaction?: PrismaPromiseTransaction, - ): Promise; - /** - * Called when executing a batch of regular tx - * @param transaction transaction options for batch tx - */ - requestTransaction?( - transaction: PrismaPromiseBatchTransaction, - ): PromiseLike; -} - -declare type PrismaPromiseBatchTransaction = { - kind: "batch"; - id: number; - isolationLevel?: IsolationLevel_2; - index: number; - lock: PromiseLike; -}; - -declare type PrismaPromiseCallback = ( - transaction?: PrismaPromiseTransaction, -) => Promise; - -/** - * Creates a [[PrismaPromise]]. It is Prisma's implementation of `Promise` which - * is essentially a proxy for `Promise`. All the transaction-compatible client - * methods return one, this allows for pre-preparing queries without executing - * them until `.then` is called. It's the foundation of Prisma's query batching. - * @param callback that will be wrapped within our promise implementation - * @see [[PrismaPromise]] - * @returns - */ -declare type PrismaPromiseFactory = >( - callback: PrismaPromiseCallback, - op?: T, -) => PrismaPromise_2; - -declare type PrismaPromiseInteractiveTransaction = { - kind: "itx"; - id: string; - payload: PayloadType; -}; - -declare type PrismaPromiseTransaction = - | PrismaPromiseBatchTransaction - | PrismaPromiseInteractiveTransaction; - -declare type PrismaValue = - | string - | boolean - | number - | PrismaValue[] - | null - | Record - | PrismaValuePlaceholder - | PrismaValueGenerator; - -declare type PrismaValueGenerator = { - prisma__type: "generatorCall"; - prisma__value: { - name: string; - args: PrismaValue[]; - }; -}; - -declare type PrismaValuePlaceholder = { - prisma__type: "param"; - prisma__value: { - name: string; - type: string; - }; -}; - -export declare const PrivateResultType: unique symbol; - -declare type Provider = "mysql" | "postgres" | "sqlite" | "sqlserver"; - -declare namespace Public { - export { validator }; -} -export { Public }; - -declare namespace Public_2 { - export { Args, Result, Payload, PrismaPromise, Operation, Exact }; -} - -declare type Query = ReadonlyDeep_2<{ - name: string; - args: SchemaArg[]; - output: QueryOutput; -}>; - -declare interface Queryable extends AdapterInfo { - /** - * Execute a query and return its result. - */ - queryRaw(params: Query): Promise; - /** - * Execute a query and return the number of affected rows. - */ - executeRaw(params: Query): Promise; -} - -declare type QueryCompiler = { - compile(request: string): {}; - compileBatch(batchRequest: string): BatchResponse; - free(): void; -}; - -declare interface QueryCompilerConstructor { - new (options: QueryCompilerOptions): QueryCompiler; -} - -declare type QueryCompilerOptions = { - datamodel: string; - provider: Provider; - connectionInfo: ConnectionInfo; -}; - -declare type QueryEngineBatchGraphQLRequest = { - batch: QueryEngineRequest[]; - transaction?: boolean; - isolationLevel?: IsolationLevel_2; -}; - -declare type QueryEngineBatchRequest = - | QueryEngineBatchGraphQLRequest - | JsonBatchQuery; - -declare type QueryEngineConfig = { - datamodel: string; - configDir: string; - logQueries: boolean; - ignoreEnvVarErrors: boolean; - datasourceOverrides: Record; - env: Record; - logLevel: QueryEngineLogLevel; - engineProtocol: QueryEngineProtocol; - enableTracing: boolean; -}; - -declare interface QueryEngineConstructor { - new ( - config: QueryEngineConfig, - logger: (log: string) => void, - adapter?: ErrorCapturingSqlDriverAdapter, - ): QueryEngineInstance; -} - -declare type QueryEngineInstance = { - connect(headers: string, requestId: string): Promise; - disconnect(headers: string, requestId: string): Promise; - /** - * Frees any resources allocated by the engine's WASM instance. This method is automatically created by WASM bindgen. - * Noop for other engines. - */ - free?(): void; - /** - * @param requestStr JSON.stringified `QueryEngineRequest | QueryEngineBatchRequest` - * @param headersStr JSON.stringified `QueryEngineRequestHeaders` - */ - query( - requestStr: string, - headersStr: string, - transactionId: string | undefined, - requestId: string, - ): Promise; - sdlSchema?(): Promise; - startTransaction( - options: string, - traceHeaders: string, - requestId: string, - ): Promise; - commitTransaction( - id: string, - traceHeaders: string, - requestId: string, - ): Promise; - rollbackTransaction( - id: string, - traceHeaders: string, - requestId: string, - ): Promise; - metrics?(options: string): Promise; - applyPendingMigrations?(): Promise; - trace(requestId: string): Promise; -}; - -declare type QueryEngineLogLevel = - | "trace" - | "debug" - | "info" - | "warn" - | "error" - | "off"; - -declare type QueryEngineProtocol = "graphql" | "json"; - -declare type QueryEngineRequest = { - query: string; - variables: Object; -}; - -declare type QueryEngineResultData = { - data: T; -}; - -declare type QueryEvent = { - timestamp: Date; - query: string; - params: string; - duration: number; - target: string; -}; - -declare type QueryEventType = "query"; - -declare type QueryIntrospectionBuiltinType = - | "int" - | "bigint" - | "float" - | "double" - | "string" - | "enum" - | "bytes" - | "bool" - | "char" - | "decimal" - | "json" - | "xml" - | "uuid" - | "datetime" - | "date" - | "time" - | "int-array" - | "bigint-array" - | "float-array" - | "double-array" - | "string-array" - | "char-array" - | "bytes-array" - | "bool-array" - | "decimal-array" - | "json-array" - | "xml-array" - | "uuid-array" - | "datetime-array" - | "date-array" - | "time-array" - | "null" - | "unknown"; - -declare type QueryMiddlewareParams = { - /** The model this is executed on */ - model?: string; - /** The action that is being handled */ - action: Action; - /** TODO what is this */ - dataPath: string[]; - /** TODO what is this */ - runInTransaction: boolean; - args?: UserArgs_2; -}; - -export declare type QueryOptions = { - query: { - [ModelName in string]: - | { - [ModelAction in string]: ModelQueryOptionsCb; - } - | QueryOptionsCb; - }; -}; - -export declare type QueryOptionsCb = (args: QueryOptionsCbArgs) => Promise; - -export declare type QueryOptionsCbArgs = { - model?: string; - operation: string; - args: JsArgs | RawQueryArgs; - query: (args: JsArgs | RawQueryArgs) => Promise; -}; - -declare type QueryOutput = ReadonlyDeep_2<{ - name: string; - isRequired: boolean; - isList: boolean; -}>; - -declare type QueryPlanBinding = { - name: string; - expr: QueryPlanNode; -}; - -declare type QueryPlanDbQuery = - | { - type: "rawSql"; - sql: string; - args: PrismaValue[]; - argTypes: ArgType[]; - } - | { - type: "templateSql"; - fragments: Fragment[]; - placeholderFormat: PlaceholderFormat; - args: PrismaValue[]; - argTypes: DynamicArgType[]; - chunkable: boolean; - }; - -declare type QueryPlanNode = - | { - type: "value"; - args: PrismaValue; - } - | { - type: "seq"; - args: QueryPlanNode[]; - } - | { - type: "get"; - args: { - name: string; - }; - } - | { - type: "let"; - args: { - bindings: QueryPlanBinding[]; - expr: QueryPlanNode; - }; - } - | { - type: "getFirstNonEmpty"; - args: { - names: string[]; - }; - } - | { - type: "query"; - args: QueryPlanDbQuery; - } - | { - type: "execute"; - args: QueryPlanDbQuery; - } - | { - type: "reverse"; - args: QueryPlanNode; - } - | { - type: "sum"; - args: QueryPlanNode[]; - } - | { - type: "concat"; - args: QueryPlanNode[]; - } - | { - type: "unique"; - args: QueryPlanNode; - } - | { - type: "required"; - args: QueryPlanNode; - } - | { - type: "join"; - args: { - parent: QueryPlanNode; - children: JoinExpression[]; - }; - } - | { - type: "mapField"; - args: { - field: string; - records: QueryPlanNode; - }; - } - | { - type: "transaction"; - args: QueryPlanNode; - } - | { - type: "dataMap"; - args: { - expr: QueryPlanNode; - structure: ResultNode; - enums: Record>; - }; - } - | { - type: "validate"; - args: { - expr: QueryPlanNode; - rules: DataRule[]; - } & ValidationError; - } - | { - type: "if"; - args: { - value: QueryPlanNode; - rule: DataRule; - then: QueryPlanNode; - else: QueryPlanNode; - }; - } - | { - type: "unit"; - } - | { - type: "diff"; - args: { - from: QueryPlanNode; - to: QueryPlanNode; - fields: string[]; - }; - } - | { - type: "initializeRecord"; - args: { - expr: QueryPlanNode; - fields: Record; - }; - } - | { - type: "mapRecord"; - args: { - expr: QueryPlanNode; - fields: Record; - }; - } - | { - type: "process"; - args: { - expr: QueryPlanNode; - operations: InMemoryOps; - }; - }; - -/** - * Create raw SQL statement. - */ -export declare function raw(value: string): Sql; - -export declare type RawParameters = { - __prismaRawParameters__: true; - values: string; -}; - -export declare type RawQueryArgs = - | Sql - | UnknownTypedSql - | [query: string, ...values: RawValue[]]; - -declare type RawResponse = { - columns: string[]; - types: QueryIntrospectionBuiltinType[]; - rows: unknown[][]; -}; - -declare type RawTaggedValue = { - $type: "Raw"; - value: unknown; -}; - -/** - * Supported value or SQL instance. - */ -export declare type RawValue = Value | Sql; - -export declare type ReadonlyDeep = { - readonly [K in keyof T]: ReadonlyDeep; -}; - -declare type ReadonlyDeep_2 = { - +readonly [K in keyof O]: ReadonlyDeep_2; -}; - -declare type Record_2 = { - [P in T]: U; -}; -export { Record_2 as Record }; - -export declare type RenameAndNestPayloadKeys

= { - [K in keyof P as K extends "scalars" | "objects" | "composites" - ? keyof P[K] - : never]: P[K]; -}; - -declare type RequestBatchOptions = { - transaction?: TransactionOptions_2; - traceparent?: string; - numTry?: number; - containsWrite: boolean; - customDataProxyFetch?: AccelerateExtensionFetchDecorator; -}; - -declare interface RequestError { - error: string; - user_facing_error: { - is_panic: boolean; - message: string; - meta?: Record; - error_code?: string; - batch_request_idx?: number; - }; -} - -declare class RequestHandler { - client: Client; - dataloader: DataLoader; - private logEmitter?; - constructor(client: Client, logEmitter?: LogEmitter); - request(params: RequestParams): Promise; - mapQueryEngineResult( - { dataPath, unpacker }: RequestParams, - response: QueryEngineResultData, - ): any; - /** - * Handles the error and logs it, logging the error is done synchronously waiting for the event - * handlers to finish. - */ - handleAndLogRequestError(params: HandleErrorParams): never; - handleRequestError({ - error, - clientMethod, - callsite, - transaction, - args, - modelName, - globalOmit, - }: HandleErrorParams): never; - sanitizeMessage(message: any): any; - unpack(data: unknown, dataPath: string[], unpacker?: Unpacker): any; - get [Symbol.toStringTag](): string; -} - -declare type RequestOptions = { - traceparent?: string; - numTry?: number; - interactiveTransaction?: InteractiveTransactionOptions; - isWrite: boolean; - customDataProxyFetch?: AccelerateExtensionFetchDecorator; -}; - -declare type RequestParams = { - modelName?: string; - action: Action; - protocolQuery: JsonQuery; - dataPath: string[]; - clientMethod: string; - callsite?: CallSite; - transaction?: PrismaPromiseTransaction; - extensions: MergedExtensionsList; - args?: any; - headers?: Record; - unpacker?: Unpacker; - otelParentCtx?: Context; - otelChildCtx?: Context; - globalOmit?: GlobalOmitOptions; - customDataProxyFetch?: AccelerateExtensionFetchDecorator; -}; - -declare type RequiredExtensionArgs = NameArgs & - ResultArgs & - ModelArgs & - ClientArgs & - QueryOptions; -export { RequiredExtensionArgs }; -export { RequiredExtensionArgs as UserArgs }; - -export declare type RequiredKeys = { - [K in keyof O]-?: {} extends Pick_2 ? never : K; -}[keyof O]; - -declare function resolveDatasourceUrl({ - inlineDatasources, - overrideDatasources, - env, - clientVersion, -}: { - inlineDatasources: GetPrismaClientConfig["inlineDatasources"]; - overrideDatasources: Datasources; - env: Record; - clientVersion: string; -}): string; - -export declare type Result = T extends { - [K: symbol]: { - types: { - payload: any; - }; - }; -} - ? GetResult - : GetResult< - { - composites: {}; - objects: {}; - scalars: {}; - name: ""; - }, - {}, - F - >; - -export declare type Result_2 = Result; - -declare namespace Result_3 { - export { - Count, - GetFindResult, - SelectablePayloadFields, - SelectField, - DefaultSelection, - UnwrapPayload, - ApplyOmit, - OmitValue, - GetCountResult, - Aggregate, - GetAggregateResult, - GetBatchResult, - GetGroupByResult, - GetResult, - ExtractGlobalOmit, - }; -} - -declare type Result_4 = { - map(fn: (value: T) => U): Result_4; - flatMap(fn: (value: T) => Result_4): Result_4; -} & ( - | { - readonly ok: true; - readonly value: T; - } - | { - readonly ok: false; - readonly error: Error_2; - } -); - -export declare type ResultArg = { - [FieldName in string]: ResultFieldDefinition; -}; - -export declare type ResultArgs = { - result: { - [ModelName in string]: ResultArg; - }; -}; - -export declare type ResultArgsFieldCompute = (model: any) => unknown; - -export declare type ResultFieldDefinition = { - needs?: { - [FieldName in string]: boolean; - }; - compute: ResultArgsFieldCompute; -}; - -declare type ResultNode = - | { - type: "affectedRows"; - } - | { - type: "object"; - fields: Record; - serializedName: string | null; - skipNulls: boolean; - } - | { - type: "field"; - dbName: string; - fieldType: FieldType; - }; - -export declare type Return = T extends (...args: any[]) => infer R ? R : T; - -export declare type RuntimeDataModel = { - readonly models: Record; - readonly enums: Record; - readonly types: Record; -}; - -declare type RuntimeEnum = Omit; - -declare type RuntimeModel = Omit; - -declare type RuntimeName = - | "workerd" - | "deno" - | "netlify" - | "node" - | "bun" - | "edge-light" - | ""; - -declare type Schema = ReadonlyDeep_2<{ - rootQueryType?: string; - rootMutationType?: string; - inputObjectTypes: { - model?: InputType[]; - prisma?: InputType[]; - }; - outputObjectTypes: { - model: OutputType[]; - prisma: OutputType[]; - }; - enumTypes: { - model?: SchemaEnum[]; - prisma: SchemaEnum[]; - }; - fieldRefTypes: { - prisma?: FieldRefType[]; - }; -}>; - -declare type SchemaArg = ReadonlyDeep_2<{ - name: string; - comment?: string; - isNullable: boolean; - isRequired: boolean; - inputTypes: InputTypeRef[]; - requiresOtherFields?: string[]; - deprecation?: Deprecation; -}>; - -declare type SchemaEnum = ReadonlyDeep_2<{ - name: string; - values: string[]; -}>; - -declare type SchemaField = ReadonlyDeep_2<{ - name: string; - isNullable?: boolean; - outputType: OutputTypeRef; - args: SchemaArg[]; - deprecation?: Deprecation; - documentation?: string; -}>; - -export declare type Select = T extends U ? T : never; - -export declare type SelectablePayloadFields = - | { - objects: { - [k in K]: O; - }; - } - | { - composites: { - [k in K]: O; - }; - }; - -export declare type SelectField< - P extends SelectablePayloadFields, - K extends PropertyKey, -> = P extends { - objects: Record; -} - ? P["objects"][K] - : P extends { - composites: Record; - } - ? P["composites"][K] - : never; - -declare type Selection_2 = Record; -export { Selection_2 as Selection }; - -export declare function serializeJsonQuery({ - modelName, - action, - args, - runtimeDataModel, - extensions, - callsite, - clientMethod, - errorFormat, - clientVersion, - previewFeatures, - globalOmit, -}: SerializeParams): JsonQuery; - -declare type SerializeParams = { - runtimeDataModel: RuntimeDataModel; - modelName?: string; - action: Action; - args?: JsArgs; - extensions?: MergedExtensionsList; - callsite?: CallSite; - clientMethod: string; - clientVersion: string; - errorFormat: ErrorFormat; - previewFeatures: string[]; - globalOmit?: GlobalOmitOptions; -}; - -declare class Skip { - constructor(param?: symbol); - ifUndefined(value: T | undefined): T | Skip; -} - -export declare const skip: Skip; - -declare type SortOrder = "asc" | "desc"; - -/** - * An interface that represents a span. A span represents a single operation - * within a trace. Examples of span might include remote procedure calls or a - * in-process function calls to sub-components. A Trace has a single, top-level - * "root" Span that in turn may have zero or more child Spans, which in turn - * may have children. - * - * Spans are created by the {@link Tracer.startSpan} method. - */ -declare interface Span { - /** - * Returns the {@link SpanContext} object associated with this Span. - * - * Get an immutable, serializable identifier for this span that can be used - * to create new child spans. Returned SpanContext is usable even after the - * span ends. - * - * @returns the SpanContext object associated with this Span. - */ - spanContext(): SpanContext; - /** - * Sets an attribute to the span. - * - * Sets a single Attribute with the key and value passed as arguments. - * - * @param key the key for this attribute. - * @param value the value for this attribute. Setting a value null or - * undefined is invalid and will result in undefined behavior. - */ - setAttribute(key: string, value: SpanAttributeValue): this; - /** - * Sets attributes to the span. - * - * @param attributes the attributes that will be added. - * null or undefined attribute values - * are invalid and will result in undefined behavior. - */ - setAttributes(attributes: SpanAttributes): this; - /** - * Adds an event to the Span. - * - * @param name the name of the event. - * @param [attributesOrStartTime] the attributes that will be added; these are - * associated with this event. Can be also a start time - * if type is {@type TimeInput} and 3rd param is undefined - * @param [startTime] start time of the event. - */ - addEvent( - name: string, - attributesOrStartTime?: SpanAttributes | TimeInput, - startTime?: TimeInput, - ): this; - /** - * Adds a single link to the span. - * - * Links added after the creation will not affect the sampling decision. - * It is preferred span links be added at span creation. - * - * @param link the link to add. - */ - addLink(link: Link): this; - /** - * Adds multiple links to the span. - * - * Links added after the creation will not affect the sampling decision. - * It is preferred span links be added at span creation. - * - * @param links the links to add. - */ - addLinks(links: Link[]): this; - /** - * Sets a status to the span. If used, this will override the default Span - * status. Default is {@link SpanStatusCode.UNSET}. SetStatus overrides the value - * of previous calls to SetStatus on the Span. - * - * @param status the SpanStatus to set. - */ - setStatus(status: SpanStatus): this; - /** - * Updates the Span name. - * - * This will override the name provided via {@link Tracer.startSpan}. - * - * Upon this update, any sampling behavior based on Span name will depend on - * the implementation. - * - * @param name the Span name. - */ - updateName(name: string): this; - /** - * Marks the end of Span execution. - * - * Call to End of a Span MUST not have any effects on child spans. Those may - * still be running and can be ended later. - * - * Do not return `this`. The Span generally should not be used after it - * is ended so chaining is not desired in this context. - * - * @param [endTime] the time to set as Span's end time. If not provided, - * use the current time as the span's end time. - */ - end(endTime?: TimeInput): void; - /** - * Returns the flag whether this span will be recorded. - * - * @returns true if this Span is active and recording information like events - * with the `AddEvent` operation and attributes using `setAttributes`. - */ - isRecording(): boolean; - /** - * Sets exception as a span event - * @param exception the exception the only accepted values are string or Error - * @param [time] the time to set as Span's event time. If not provided, - * use the current time. - */ - recordException(exception: Exception, time?: TimeInput): void; -} - -/** - * @deprecated please use {@link Attributes} - */ -declare type SpanAttributes = Attributes; - -/** - * @deprecated please use {@link AttributeValue} - */ -declare type SpanAttributeValue = AttributeValue; - -declare type SpanCallback = (span?: Span, context?: Context) => R; - -/** - * A SpanContext represents the portion of a {@link Span} which must be - * serialized and propagated along side of a {@link Baggage}. - */ -declare interface SpanContext { - /** - * The ID of the trace that this span belongs to. It is worldwide unique - * with practically sufficient probability by being made as 16 randomly - * generated bytes, encoded as a 32 lowercase hex characters corresponding to - * 128 bits. - */ - traceId: string; - /** - * The ID of the Span. It is globally unique with practically sufficient - * probability by being made as 8 randomly generated bytes, encoded as a 16 - * lowercase hex characters corresponding to 64 bits. - */ - spanId: string; - /** - * Only true if the SpanContext was propagated from a remote parent. - */ - isRemote?: boolean; - /** - * Trace flags to propagate. - * - * It is represented as 1 byte (bitmap). Bit to represent whether trace is - * sampled or not. When set, the least significant bit documents that the - * caller may have recorded trace data. A caller who does not record trace - * data out-of-band leaves this flag unset. - * - * see {@link TraceFlags} for valid flag values. - */ - traceFlags: number; - /** - * Tracing-system-specific info to propagate. - * - * The tracestate field value is a `list` as defined below. The `list` is a - * series of `list-members` separated by commas `,`, and a list-member is a - * key/value pair separated by an equals sign `=`. Spaces and horizontal tabs - * surrounding `list-members` are ignored. There can be a maximum of 32 - * `list-members` in a `list`. - * More Info: https://www.w3.org/TR/trace-context/#tracestate-field - * - * Examples: - * Single tracing system (generic format): - * tracestate: rojo=00f067aa0ba902b7 - * Multiple tracing systems (with different formatting): - * tracestate: rojo=00f067aa0ba902b7,congo=t61rcWkgMzE - */ - traceState?: TraceState; -} - -declare enum SpanKind { - /** Default value. Indicates that the span is used internally. */ - INTERNAL = 0, - /** - * Indicates that the span covers server-side handling of an RPC or other - * remote request. - */ - SERVER = 1, - /** - * Indicates that the span covers the client-side wrapper around an RPC or - * other remote request. - */ - CLIENT = 2, - /** - * Indicates that the span describes producer sending a message to a - * broker. Unlike client and server, there is no direct critical path latency - * relationship between producer and consumer spans. - */ - PRODUCER = 3, - /** - * Indicates that the span describes consumer receiving a message from a - * broker. Unlike client and server, there is no direct critical path latency - * relationship between producer and consumer spans. - */ - CONSUMER = 4, -} - -/** - * Options needed for span creation - */ -declare interface SpanOptions { - /** - * The SpanKind of a span - * @default {@link SpanKind.INTERNAL} - */ - kind?: SpanKind; - /** A span's attributes */ - attributes?: SpanAttributes; - /** {@link Link}s span to other spans */ - links?: Link[]; - /** A manually specified start time for the created `Span` object. */ - startTime?: TimeInput; - /** The new span should be a root span. (Ignore parent from context). */ - root?: boolean; -} - -declare interface SpanStatus { - /** The status code of this message. */ - code: SpanStatusCode; - /** A developer-facing error message. */ - message?: string; -} - -/** - * An enumeration of status codes. - */ -declare enum SpanStatusCode { - /** - * The default status. - */ - UNSET = 0, - /** - * The operation has been validated by an Application developer or - * Operator to have completed successfully. - */ - OK = 1, - /** - * The operation contains an error. - */ - ERROR = 2, -} - -/** - * A SQL instance can be nested within each other to build SQL strings. - */ -export declare class Sql { - readonly values: Value[]; - readonly strings: string[]; - constructor(rawStrings: readonly string[], rawValues: readonly RawValue[]); - get sql(): string; - get statement(): string; - get text(): string; - inspect(): { - sql: string; - statement: string; - text: string; - values: unknown[]; - }; -} - -declare interface SqlDriverAdapter extends SqlQueryable { - /** - * Execute multiple SQL statements separated by semicolon. - */ - executeScript(script: string): Promise; - /** - * Start new transaction. - */ - startTransaction(isolationLevel?: IsolationLevel): Promise; - /** - * Optional method that returns extra connection info - */ - getConnectionInfo?(): ConnectionInfo; - /** - * Dispose of the connection and release any resources. - */ - dispose(): Promise; -} - -export declare interface SqlDriverAdapterFactory extends DriverAdapterFactory< - SqlQuery, - SqlResultSet -> { - connect(): Promise; -} - -declare type SqlQuery = { - sql: string; - args: Array; - argTypes: Array; -}; - -declare interface SqlQueryable extends Queryable {} - -declare interface SqlResultSet { - /** - * List of column types appearing in a database query, in the same order as `columnNames`. - * They are used within the Query Engine to convert values from JS to Quaint values. - */ - columnTypes: Array; - /** - * List of column names appearing in a database query, in the same order as `columnTypes`. - */ - columnNames: Array; - /** - * List of rows retrieved from a database query. - * Each row is a list of values, whose length matches `columnNames` and `columnTypes`. - */ - rows: Array>; - /** - * The last ID of an `INSERT` statement, if any. - * This is required for `AUTO_INCREMENT` columns in databases based on MySQL and SQLite. - */ - lastInsertId?: string; -} - -/** - * Create a SQL object from a template string. - */ -export declare function sqltag( - strings: readonly string[], - ...values: readonly RawValue[] -): Sql; - -/** - * Defines TimeInput. - * - * hrtime, epoch milliseconds, performance.now() or Date - */ -declare type TimeInput = HrTime_2 | number | Date; - -export declare type ToTuple = T extends any[] ? T : [T]; - -declare interface TraceState { - /** - * Create a new TraceState which inherits from this TraceState and has the - * given key set. - * The new entry will always be added in the front of the list of states. - * - * @param key key of the TraceState entry. - * @param value value of the TraceState entry. - */ - set(key: string, value: string): TraceState; - /** - * Return a new TraceState which inherits from this TraceState but does not - * contain the given key. - * - * @param key the key for the TraceState entry to be removed. - */ - unset(key: string): TraceState; - /** - * Returns the value to which the specified key is mapped, or `undefined` if - * this map contains no mapping for the key. - * - * @param key with which the specified value is to be associated. - * @returns the value to which the specified key is mapped, or `undefined` if - * this map contains no mapping for the key. - */ - get(key: string): string | undefined; - /** - * Serializes the TraceState to a `list` as defined below. The `list` is a - * series of `list-members` separated by commas `,`, and a list-member is a - * key/value pair separated by an equals sign `=`. Spaces and horizontal tabs - * surrounding `list-members` are ignored. There can be a maximum of 32 - * `list-members` in a `list`. - * - * @returns the serialized string. - */ - serialize(): string; -} - -declare interface TracingHelper { - isEnabled(): boolean; - getTraceParent(context?: Context): string; - dispatchEngineSpans(spans: EngineSpan[]): void; - getActiveContext(): Context | undefined; - runInChildSpan( - nameOrOptions: string | ExtendedSpanOptions, - callback: SpanCallback, - ): R; -} - -declare interface Transaction extends AdapterInfo, SqlQueryable { - /** - * Transaction options. - */ - readonly options: TransactionOptions; - /** - * Commit the transaction. - */ - commit(): Promise; - /** - * Roll back the transaction. - */ - rollback(): Promise; -} - -declare namespace Transaction_2 { - export { - Options, - IsolationLevel_2 as IsolationLevel, - InteractiveTransactionInfo, - TransactionHeaders, - }; -} - -declare type TransactionHeaders = { - traceparent?: string; -}; - -declare type TransactionOptions = { - usePhantomQuery: boolean; -}; - -declare type TransactionOptions_2 = - | { - kind: "itx"; - options: InteractiveTransactionOptions; - } - | { - kind: "batch"; - options: BatchTransactionOptions; - }; - -export declare class TypedSql { - [PrivateResultType]: Result; - constructor(sql: string, values: Values); - get sql(): string; - get values(): Values; -} - -export declare type TypeMapCbDef = Fn< - { - extArgs: InternalArgs; - }, - TypeMapDef ->; - -/** Shared */ -export declare type TypeMapDef = Record; - -declare type TypeRef = { - isList: boolean; - type: string; - location: AllowedLocations; - namespace?: FieldNamespace; -}; - -declare namespace Types { - export { - Result_3 as Result, - Extensions_2 as Extensions, - Utils, - Public_2 as Public, - isSkip, - Skip, - skip, - UnknownTypedSql, - OperationPayload as Payload, - }; -} -export { Types }; - -declare type uniqueIndex = ReadonlyDeep_2<{ - name: string; - fields: string[]; -}>; - -declare type UnknownErrorParams = { - clientVersion: string; - batchRequestIdx?: number; -}; - -export declare type UnknownTypedSql = TypedSql; - -declare type Unpacker = (data: any) => any; - -export declare type UnwrapPayload

= {} extends P - ? unknown - : { - [K in keyof P]: P[K] extends { - scalars: infer S; - composites: infer C; - }[] - ? Array> - : P[K] extends { - scalars: infer S; - composites: infer C; - } | null - ? (S & UnwrapPayload) | Select - : never; - }; - -export declare type UnwrapPromise

= P extends Promise ? R : P; - -export declare type UnwrapTuple = { - [K in keyof Tuple]: K extends `${number}` - ? Tuple[K] extends PrismaPromise - ? X - : UnwrapPromise - : UnwrapPromise; -}; - -/** - * Input that flows from the user into the Client. - */ -declare type UserArgs_2 = any; - -declare namespace Utils { - export { - EmptyToUnknown, - NeverToUnknown, - PatchFlat, - Omit_2 as Omit, - Pick_2 as Pick, - ComputeDeep, - Compute, - OptionalFlat, - ReadonlyDeep, - Narrowable, - Narrow, - Exact, - Cast, - Record_2 as Record, - UnwrapPromise, - UnwrapTuple, - Path, - Fn, - Call, - RequiredKeys, - OptionalKeys, - Optional, - Return, - ToTuple, - RenameAndNestPayloadKeys, - PayloadToResult, - Select, - Equals, - Or, - JsPromise, - }; -} - -declare type ValidationError = - | { - error_identifier: "RELATION_VIOLATION"; - context: { - relation: string; - modelA: string; - modelB: string; - }; - } - | { - error_identifier: "MISSING_RELATED_RECORD"; - context: { - model: string; - relation: string; - relationType: string; - operation: string; - neededFor?: string; - }; - } - | { - error_identifier: "MISSING_RECORD"; - context: { - operation: string; - }; - } - | { - error_identifier: "INCOMPLETE_CONNECT_INPUT"; - context: { - expectedRows: number; - }; - } - | { - error_identifier: "INCOMPLETE_CONNECT_OUTPUT"; - context: { - expectedRows: number; - relation: string; - relationType: string; - }; - } - | { - error_identifier: "RECORDS_NOT_CONNECTED"; - context: { - relation: string; - parent: string; - child: string; - }; - }; - -declare function validator(): (select: Exact) => S; - -declare function validator< - C, - M extends Exclude, - O extends keyof C[M] & Operation, ->(client: C, model: M, operation: O): (select: Exact>) => S; - -declare function validator< - C, - M extends Exclude, - O extends keyof C[M] & Operation, - P extends keyof Args, ->( - client: C, - model: M, - operation: O, - prop: P, -): (select: Exact[P]>) => S; - -/** - * Values supported by SQL engine. - */ -export declare type Value = unknown; - -export declare function warnEnvConflicts(envPaths: any): void; - -export declare const warnOnce: ( - key: string, - message: string, - ...args: unknown[] -) => void; - -export {}; +/** + * @param this + */ +declare function $extends(this: Client, extension: ExtensionArgs | ((client: Client) => Client)): Client; + +declare type AccelerateEngineConfig = { + inlineSchema: EngineConfig['inlineSchema']; + inlineSchemaHash: EngineConfig['inlineSchemaHash']; + env: EngineConfig['env']; + generator?: { + previewFeatures: string[]; + }; + inlineDatasources: EngineConfig['inlineDatasources']; + overrideDatasources: EngineConfig['overrideDatasources']; + clientVersion: EngineConfig['clientVersion']; + engineVersion: EngineConfig['engineVersion']; + logEmitter: EngineConfig['logEmitter']; + logQueries?: EngineConfig['logQueries']; + logLevel?: EngineConfig['logLevel']; + tracingHelper: EngineConfig['tracingHelper']; + accelerateUtils?: AccelerateUtils; +}; + +/** + * A stripped down interface of `fetch` that `@prisma/extension-accelerate` + * relies on. It must be in sync with the corresponding definition in the + * Accelerate extension. + * + * This is the actual interface exposed by the extension. We can't use the + * custom fetch function provided by it as normal fetch because the API is + * different. Notably, `headers` must be an object and not a `Headers` + * instance, and `url` must be a `string` and not a `URL`. + * + * The return type is `Response` but we can't specify this in an exported type + * because it would end up referencing external types from `@types/node` or DOM + * which can fail typechecking depending on TypeScript configuration in a user's + * project. + */ +declare type AccelerateExtensionFetch = (url: string, options: { + body?: string; + method?: string; + headers: Record; +}) => Promise; + +declare type AccelerateExtensionFetchDecorator = (fetch: AccelerateExtensionFetch) => AccelerateExtensionFetch; + +declare type AccelerateUtils = EngineConfig['accelerateUtils']; + +export declare type Action = keyof typeof DMMF_2.ModelAction | 'executeRaw' | 'queryRaw' | 'runCommandRaw'; + +declare type ActiveConnectorType = Exclude; + +/** + * An interface that exposes some basic information about the + * adapter like its name and provider type. + */ +declare interface AdapterInfo { + readonly provider: Provider; + readonly adapterName: (typeof officialPrismaAdapters)[number] | (string & {}); +} + +export declare type Aggregate = '_count' | '_max' | '_min' | '_avg' | '_sum'; + +export declare type AllModelsToStringIndex, K extends PropertyKey> = Args extends { + [P in K]: { + $allModels: infer AllModels; + }; +} ? { + [P in K]: Record; +} : {}; + +declare class AnyNull extends NullTypesEnumValue { + #private; +} + +export declare type ApplyOmit = Compute<{ + [K in keyof T as OmitValue extends true ? never : K]: T[K]; +}>; + +export declare type Args = T extends { + [K: symbol]: { + types: { + operations: { + [K in F]: { + args: any; + }; + }; + }; + }; +} ? T[symbol]['types']['operations'][F]['args'] : any; + +export declare type Args_3 = Args; + +declare type ArgScalarType = 'string' | 'int' | 'bigint' | 'float' | 'decimal' | 'boolean' | 'enum' | 'uuid' | 'json' | 'datetime' | 'bytes' | 'unknown'; + +declare type ArgType = { + scalarType: ArgScalarType; + dbType?: string; + arity: Arity; +}; + +declare type Arity = 'scalar' | 'list'; + +/** + * Attributes is a map from string to attribute values. + * + * Note: only the own enumerable keys are counted as valid attribute keys. + */ +declare interface Attributes { + [attributeKey: string]: AttributeValue | undefined; +} + +/** + * Attribute values may be any non-nullish primitive value except an object. + * + * null or undefined attribute values are invalid and will result in undefined behavior. + */ +declare type AttributeValue = string | number | boolean | Array | Array | Array; + +export declare type BaseDMMF = { + readonly datamodel: Omit; +}; + +declare type BatchArgs = { + queries: BatchQuery[]; + transaction?: { + isolationLevel?: IsolationLevel_2; + }; +}; + +declare type BatchInternalParams = { + requests: RequestParams[]; + customDataProxyFetch?: AccelerateExtensionFetchDecorator; +}; + +declare type BatchQuery = { + model: string | undefined; + operation: string; + args: JsArgs | RawQueryArgs; +}; + +declare type BatchQueryEngineResult = QueryEngineResultData | Error; + +declare type BatchQueryOptionsCb = (args: BatchQueryOptionsCbArgs) => Promise; + +declare type BatchQueryOptionsCbArgs = { + args: BatchArgs; + query: (args: BatchArgs, __internalParams?: BatchInternalParams) => Promise; + __internalParams: BatchInternalParams; +}; + +declare type BatchResponse = MultiBatchResponse | CompactedBatchResponse; + +declare type BatchTransactionOptions = { + isolationLevel?: Transaction_2.IsolationLevel; +}; + +declare interface BinaryTargetsEnvValue { + fromEnvVar: string | null; + value: string; + native?: boolean; +} + +/** + * Equivalent to `Uint8Array` before TypeScript 5.7, and `Uint8Array` in TypeScript 5.7 and beyond. + */ +export declare type Bytes = ReturnType; + +export declare type Call = (F & { + params: P; +})['returns']; + +declare interface CallSite { + getLocation(): LocationInFile | null; +} + +export declare type Cast = A extends W ? A : W; + +declare type Client = ReturnType extends new () => infer T ? T : never; + +export declare type ClientArg = { + [MethodName in string]: unknown; +}; + +export declare type ClientArgs = { + client: ClientArg; +}; + +export declare type ClientBuiltInProp = keyof DynamicClientExtensionThisBuiltin; + +export declare type ClientOptionDef = undefined | { + [K in string]: any; +}; + +export declare type ClientOtherOps = { + $queryRaw(query: TemplateStringsArray | Sql, ...values: any[]): PrismaPromise; + $queryRawTyped(query: TypedSql): PrismaPromise; + $queryRawUnsafe(query: string, ...values: any[]): PrismaPromise; + $executeRaw(query: TemplateStringsArray | Sql, ...values: any[]): PrismaPromise; + $executeRawUnsafe(query: string, ...values: any[]): PrismaPromise; + $runCommandRaw(command: InputJsonObject): PrismaPromise; +}; + +declare type ColumnType = (typeof ColumnTypeEnum)[keyof typeof ColumnTypeEnum]; + +declare const ColumnTypeEnum: { + readonly Int32: 0; + readonly Int64: 1; + readonly Float: 2; + readonly Double: 3; + readonly Numeric: 4; + readonly Boolean: 5; + readonly Character: 6; + readonly Text: 7; + readonly Date: 8; + readonly Time: 9; + readonly DateTime: 10; + readonly Json: 11; + readonly Enum: 12; + readonly Bytes: 13; + readonly Set: 14; + readonly Uuid: 15; + readonly Int32Array: 64; + readonly Int64Array: 65; + readonly FloatArray: 66; + readonly DoubleArray: 67; + readonly NumericArray: 68; + readonly BooleanArray: 69; + readonly CharacterArray: 70; + readonly TextArray: 71; + readonly DateArray: 72; + readonly TimeArray: 73; + readonly DateTimeArray: 74; + readonly JsonArray: 75; + readonly EnumArray: 76; + readonly BytesArray: 77; + readonly UuidArray: 78; + readonly UnknownNumber: 128; +}; + +declare type CompactedBatchResponse = { + type: 'compacted'; + plan: QueryPlanNode; + arguments: Record[]; + nestedSelection: string[]; + keys: string[]; + expectNonEmpty: boolean; +}; + +declare type CompilerWasmLoadingConfig = { + /** + * WASM-bindgen runtime for corresponding module + */ + getRuntime: () => Promise<{ + __wbg_set_wasm(exports: unknown): void; + QueryCompiler: QueryCompilerConstructor; + }>; + /** + * Loads the raw wasm module for the wasm compiler engine. This configuration is + * generated specifically for each type of client, eg. Node.js client and Edge + * clients will have different implementations. + * @remarks this is a callback on purpose, we only load the wasm if needed. + * @remarks only used by ClientEngine + */ + getQueryCompilerWasmModule: () => Promise; +}; + +export declare type Compute = T extends Function ? T : { + [K in keyof T]: T[K]; +} & unknown; + +export declare type ComputeDeep = T extends Function ? T : { + [K in keyof T]: ComputeDeep; +} & unknown; + +declare type ComputedField = { + name: string; + needs: string[]; + compute: ResultArgsFieldCompute; +}; + +declare type ComputedFieldsMap = { + [fieldName: string]: ComputedField; +}; + +declare type ConnectionInfo = { + schemaName?: string; + maxBindValues?: number; + supportsRelationJoins: boolean; +}; + +declare type ConnectorType = 'mysql' | 'mongodb' | 'sqlite' | 'postgresql' | 'postgres' | 'prisma+postgres' | 'sqlserver' | 'cockroachdb'; + +declare interface Context { + /** + * Get a value from the context. + * + * @param key key which identifies a context value + */ + getValue(key: symbol): unknown; + /** + * Create a new context which inherits from this context and has + * the given key set to the given value. + * + * @param key context key for which to set the value + * @param value value to set for the given key + */ + setValue(key: symbol, value: unknown): Context; + /** + * Return a new context which inherits from this context but does + * not contain a value for the given key. + * + * @param key context key for which to clear a value + */ + deleteValue(key: symbol): Context; +} + +declare type Context_2 = T extends { + [K: symbol]: { + ctx: infer C; + }; +} ? C & T & { + /** + * @deprecated Use `$name` instead. + */ + name?: string; + $name?: string; + $parent?: unknown; +} : T & { + /** + * @deprecated Use `$name` instead. + */ + name?: string; + $name?: string; + $parent?: unknown; +}; + +export declare type Count = { + [K in keyof O]: Count; +} & {}; + +export declare function createParam(name: string): Param; + +declare class DataLoader { + private options; + batches: { + [key: string]: Job[]; + }; + private tickActive; + constructor(options: DataLoaderOptions); + request(request: T): Promise; + private dispatchBatches; + get [Symbol.toStringTag](): string; +} + +declare type DataLoaderOptions = { + singleLoader: (request: T) => Promise; + batchLoader: (request: T[]) => Promise; + batchBy: (request: T) => string | undefined; + batchOrder: (requestA: T, requestB: T) => number; +}; + +declare type Datamodel = ReadonlyDeep_2<{ + models: Model[]; + enums: DatamodelEnum[]; + types: Model[]; + indexes: Index[]; +}>; + +declare type DatamodelEnum = ReadonlyDeep_2<{ + name: string; + values: EnumValue[]; + dbName?: string | null; + documentation?: string; +}>; + +declare function datamodelEnumToSchemaEnum(datamodelEnum: DatamodelEnum): SchemaEnum; + +declare type DataRule = { + type: 'rowCountEq'; + args: number; +} | { + type: 'rowCountNeq'; + args: number; +} | { + type: 'affectedRowCountEq'; + args: number; +} | { + type: 'never'; +}; + +declare type Datasource = { + url?: string; +}; + +declare type Datasources = { + [name in string]: Datasource; +}; + +declare class DbNull extends NullTypesEnumValue { + #private; +} + +export declare const Debug: typeof debugCreate & { + enable(namespace: any): void; + disable(): any; + enabled(namespace: string): boolean; + log: (...args: string[]) => void; + formatters: {}; +}; + +/** + * Create a new debug instance with the given namespace. + * + * @example + * ```ts + * import Debug from '@prisma/debug' + * const debug = Debug('prisma:client') + * debug('Hello World') + * ``` + */ +declare function debugCreate(namespace: string): ((...args: any[]) => void) & { + color: string; + enabled: boolean; + namespace: string; + log: (...args: string[]) => void; + extend: () => void; +}; + +export declare function Decimal(n: Decimal.Value): Decimal; + +export declare namespace Decimal { + export type Constructor = typeof Decimal; + export type Instance = Decimal; + export type Rounding = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8; + export type Modulo = Rounding | 9; + export type Value = string | number | Decimal; + + // http://mikemcl.github.io/decimal.js/#constructor-properties + export interface Config { + precision?: number; + rounding?: Rounding; + toExpNeg?: number; + toExpPos?: number; + minE?: number; + maxE?: number; + crypto?: boolean; + modulo?: Modulo; + defaults?: boolean; + } +} + +export declare class Decimal { + readonly d: number[]; + readonly e: number; + readonly s: number; + + constructor(n: Decimal.Value); + + absoluteValue(): Decimal; + abs(): Decimal; + + ceil(): Decimal; + + clampedTo(min: Decimal.Value, max: Decimal.Value): Decimal; + clamp(min: Decimal.Value, max: Decimal.Value): Decimal; + + comparedTo(n: Decimal.Value): number; + cmp(n: Decimal.Value): number; + + cosine(): Decimal; + cos(): Decimal; + + cubeRoot(): Decimal; + cbrt(): Decimal; + + decimalPlaces(): number; + dp(): number; + + dividedBy(n: Decimal.Value): Decimal; + div(n: Decimal.Value): Decimal; + + dividedToIntegerBy(n: Decimal.Value): Decimal; + divToInt(n: Decimal.Value): Decimal; + + equals(n: Decimal.Value): boolean; + eq(n: Decimal.Value): boolean; + + floor(): Decimal; + + greaterThan(n: Decimal.Value): boolean; + gt(n: Decimal.Value): boolean; + + greaterThanOrEqualTo(n: Decimal.Value): boolean; + gte(n: Decimal.Value): boolean; + + hyperbolicCosine(): Decimal; + cosh(): Decimal; + + hyperbolicSine(): Decimal; + sinh(): Decimal; + + hyperbolicTangent(): Decimal; + tanh(): Decimal; + + inverseCosine(): Decimal; + acos(): Decimal; + + inverseHyperbolicCosine(): Decimal; + acosh(): Decimal; + + inverseHyperbolicSine(): Decimal; + asinh(): Decimal; + + inverseHyperbolicTangent(): Decimal; + atanh(): Decimal; + + inverseSine(): Decimal; + asin(): Decimal; + + inverseTangent(): Decimal; + atan(): Decimal; + + isFinite(): boolean; + + isInteger(): boolean; + isInt(): boolean; + + isNaN(): boolean; + + isNegative(): boolean; + isNeg(): boolean; + + isPositive(): boolean; + isPos(): boolean; + + isZero(): boolean; + + lessThan(n: Decimal.Value): boolean; + lt(n: Decimal.Value): boolean; + + lessThanOrEqualTo(n: Decimal.Value): boolean; + lte(n: Decimal.Value): boolean; + + logarithm(n?: Decimal.Value): Decimal; + log(n?: Decimal.Value): Decimal; + + minus(n: Decimal.Value): Decimal; + sub(n: Decimal.Value): Decimal; + + modulo(n: Decimal.Value): Decimal; + mod(n: Decimal.Value): Decimal; + + naturalExponential(): Decimal; + exp(): Decimal; + + naturalLogarithm(): Decimal; + ln(): Decimal; + + negated(): Decimal; + neg(): Decimal; + + plus(n: Decimal.Value): Decimal; + add(n: Decimal.Value): Decimal; + + precision(includeZeros?: boolean): number; + sd(includeZeros?: boolean): number; + + round(): Decimal; + + sine() : Decimal; + sin() : Decimal; + + squareRoot(): Decimal; + sqrt(): Decimal; + + tangent() : Decimal; + tan() : Decimal; + + times(n: Decimal.Value): Decimal; + mul(n: Decimal.Value) : Decimal; + + toBinary(significantDigits?: number): string; + toBinary(significantDigits: number, rounding: Decimal.Rounding): string; + + toDecimalPlaces(decimalPlaces?: number): Decimal; + toDecimalPlaces(decimalPlaces: number, rounding: Decimal.Rounding): Decimal; + toDP(decimalPlaces?: number): Decimal; + toDP(decimalPlaces: number, rounding: Decimal.Rounding): Decimal; + + toExponential(decimalPlaces?: number): string; + toExponential(decimalPlaces: number, rounding: Decimal.Rounding): string; + + toFixed(decimalPlaces?: number): string; + toFixed(decimalPlaces: number, rounding: Decimal.Rounding): string; + + toFraction(max_denominator?: Decimal.Value): Decimal[]; + + toHexadecimal(significantDigits?: number): string; + toHexadecimal(significantDigits: number, rounding: Decimal.Rounding): string; + toHex(significantDigits?: number): string; + toHex(significantDigits: number, rounding?: Decimal.Rounding): string; + + toJSON(): string; + + toNearest(n: Decimal.Value, rounding?: Decimal.Rounding): Decimal; + + toNumber(): number; + + toOctal(significantDigits?: number): string; + toOctal(significantDigits: number, rounding: Decimal.Rounding): string; + + toPower(n: Decimal.Value): Decimal; + pow(n: Decimal.Value): Decimal; + + toPrecision(significantDigits?: number): string; + toPrecision(significantDigits: number, rounding: Decimal.Rounding): string; + + toSignificantDigits(significantDigits?: number): Decimal; + toSignificantDigits(significantDigits: number, rounding: Decimal.Rounding): Decimal; + toSD(significantDigits?: number): Decimal; + toSD(significantDigits: number, rounding: Decimal.Rounding): Decimal; + + toString(): string; + + truncated(): Decimal; + trunc(): Decimal; + + valueOf(): string; + + static abs(n: Decimal.Value): Decimal; + static acos(n: Decimal.Value): Decimal; + static acosh(n: Decimal.Value): Decimal; + static add(x: Decimal.Value, y: Decimal.Value): Decimal; + static asin(n: Decimal.Value): Decimal; + static asinh(n: Decimal.Value): Decimal; + static atan(n: Decimal.Value): Decimal; + static atanh(n: Decimal.Value): Decimal; + static atan2(y: Decimal.Value, x: Decimal.Value): Decimal; + static cbrt(n: Decimal.Value): Decimal; + static ceil(n: Decimal.Value): Decimal; + static clamp(n: Decimal.Value, min: Decimal.Value, max: Decimal.Value): Decimal; + static clone(object?: Decimal.Config): Decimal.Constructor; + static config(object: Decimal.Config): Decimal.Constructor; + static cos(n: Decimal.Value): Decimal; + static cosh(n: Decimal.Value): Decimal; + static div(x: Decimal.Value, y: Decimal.Value): Decimal; + static exp(n: Decimal.Value): Decimal; + static floor(n: Decimal.Value): Decimal; + static hypot(...n: Decimal.Value[]): Decimal; + static isDecimal(object: any): object is Decimal; + static ln(n: Decimal.Value): Decimal; + static log(n: Decimal.Value, base?: Decimal.Value): Decimal; + static log2(n: Decimal.Value): Decimal; + static log10(n: Decimal.Value): Decimal; + static max(...n: Decimal.Value[]): Decimal; + static min(...n: Decimal.Value[]): Decimal; + static mod(x: Decimal.Value, y: Decimal.Value): Decimal; + static mul(x: Decimal.Value, y: Decimal.Value): Decimal; + static noConflict(): Decimal.Constructor; // Browser only + static pow(base: Decimal.Value, exponent: Decimal.Value): Decimal; + static random(significantDigits?: number): Decimal; + static round(n: Decimal.Value): Decimal; + static set(object: Decimal.Config): Decimal.Constructor; + static sign(n: Decimal.Value): number; + static sin(n: Decimal.Value): Decimal; + static sinh(n: Decimal.Value): Decimal; + static sqrt(n: Decimal.Value): Decimal; + static sub(x: Decimal.Value, y: Decimal.Value): Decimal; + static sum(...n: Decimal.Value[]): Decimal; + static tan(n: Decimal.Value): Decimal; + static tanh(n: Decimal.Value): Decimal; + static trunc(n: Decimal.Value): Decimal; + + static readonly default?: Decimal.Constructor; + static readonly Decimal?: Decimal.Constructor; + + static readonly precision: number; + static readonly rounding: Decimal.Rounding; + static readonly toExpNeg: number; + static readonly toExpPos: number; + static readonly minE: number; + static readonly maxE: number; + static readonly crypto: boolean; + static readonly modulo: Decimal.Modulo; + + static readonly ROUND_UP: 0; + static readonly ROUND_DOWN: 1; + static readonly ROUND_CEIL: 2; + static readonly ROUND_FLOOR: 3; + static readonly ROUND_HALF_UP: 4; + static readonly ROUND_HALF_DOWN: 5; + static readonly ROUND_HALF_EVEN: 6; + static readonly ROUND_HALF_CEIL: 7; + static readonly ROUND_HALF_FLOOR: 8; + static readonly EUCLID: 9; +} + +/** + * Interface for any Decimal.js-like library + * Allows us to accept Decimal.js from different + * versions and some compatible alternatives + */ +export declare interface DecimalJsLike { + d: number[]; + e: number; + s: number; + toFixed(): string; +} + +export declare type DefaultArgs = InternalArgs<{}, {}, {}, {}>; + +export declare type DefaultSelection = Args extends { + omit: infer LocalOmit; +} ? ApplyOmit['default'], PatchFlat>>> : ApplyOmit['default'], ExtractGlobalOmit>>; + +export declare function defineDmmfProperty(target: object, runtimeDataModel: RuntimeDataModel): void; + +declare function defineExtension(ext: ExtensionArgs | ((client: Client) => Client)): (client: Client) => Client; + +declare const denylist: readonly ["$connect", "$disconnect", "$on", "$transaction", "$extends"]; + +declare type Deprecation = ReadonlyDeep_2<{ + sinceVersion: string; + reason: string; + plannedRemovalVersion?: string; +}>; + +declare type DeserializedResponse = Array>; + +export declare function deserializeJsonResponse(result: unknown): unknown; + +export declare function deserializeRawResult(response: RawResponse): DeserializedResponse; + +export declare type DevTypeMapDef = { + meta: { + modelProps: string; + }; + model: { + [Model in PropertyKey]: { + [Operation in PropertyKey]: DevTypeMapFnDef; + }; + }; + other: { + [Operation in PropertyKey]: DevTypeMapFnDef; + }; +}; + +export declare type DevTypeMapFnDef = { + args: any; + result: any; + payload: OperationPayload; +}; + +export declare namespace DMMF { + export { + datamodelEnumToSchemaEnum, + Document_2 as Document, + Mappings, + OtherOperationMappings, + DatamodelEnum, + SchemaEnum, + EnumValue, + Datamodel, + uniqueIndex, + PrimaryKey, + Model, + FieldKind, + FieldNamespace, + FieldLocation, + Field, + FieldDefault, + FieldDefaultScalar, + Index, + IndexType, + IndexField, + SortOrder, + Schema, + Query, + QueryOutput, + TypeRef, + InputTypeRef, + SchemaArg, + OutputType, + SchemaField, + OutputTypeRef, + Deprecation, + InputType, + FieldRefType, + FieldRefAllowType, + ModelMapping, + ModelAction + } +} + +declare namespace DMMF_2 { + export { + datamodelEnumToSchemaEnum, + Document_2 as Document, + Mappings, + OtherOperationMappings, + DatamodelEnum, + SchemaEnum, + EnumValue, + Datamodel, + uniqueIndex, + PrimaryKey, + Model, + FieldKind, + FieldNamespace, + FieldLocation, + Field, + FieldDefault, + FieldDefaultScalar, + Index, + IndexType, + IndexField, + SortOrder, + Schema, + Query, + QueryOutput, + TypeRef, + InputTypeRef, + SchemaArg, + OutputType, + SchemaField, + OutputTypeRef, + Deprecation, + InputType, + FieldRefType, + FieldRefAllowType, + ModelMapping, + ModelAction + } +} + +export declare function dmmfToRuntimeDataModel(dmmfDataModel: DMMF_2.Datamodel): RuntimeDataModel; + +declare type Document_2 = ReadonlyDeep_2<{ + datamodel: Datamodel; + schema: Schema; + mappings: Mappings; +}>; + +/** + * A generic driver adapter factory that allows the user to instantiate a + * driver adapter. The query and result types are specific to the adapter. + */ +declare interface DriverAdapterFactory extends AdapterInfo { + /** + * Instantiate a driver adapter. + */ + connect(): Promise>; +} + +declare type DynamicArgType = ArgType | { + arity: 'tuple'; + elements: ArgType[]; +}; + +/** Client */ +export declare type DynamicClientExtensionArgs> = { + [P in keyof C_]: unknown; +} & { + [K: symbol]: { + ctx: Optional, ITXClientDenyList> & { + $parent: Optional, ITXClientDenyList>; + }; + }; +}; + +export declare type DynamicClientExtensionThis> = { + [P in keyof ExtArgs['client']]: Return; +} & { + [P in Exclude]: DynamicModelExtensionThis, ExtArgs>; +} & { + [P in Exclude]: P extends keyof ClientOtherOps ? ClientOtherOps[P] : never; +} & { + [P in Exclude]: DynamicClientExtensionThisBuiltin[P]; +} & { + [K: symbol]: { + types: TypeMap['other']; + }; +}; + +export declare type DynamicClientExtensionThisBuiltin> = { + $extends: ExtendsHook<'extends', TypeMapCb, ExtArgs, Call>; + $transaction

[]>(arg: [...P], options?: { + isolationLevel?: TypeMap['meta']['txIsolationLevel']; + }): Promise>; + $transaction(fn: (client: Omit, ITXClientDenyList>) => Promise, options?: { + maxWait?: number; + timeout?: number; + isolationLevel?: TypeMap['meta']['txIsolationLevel']; + }): Promise; + $disconnect(): Promise; + $connect(): Promise; +}; + +/** Model */ +export declare type DynamicModelExtensionArgs> = { + [K in keyof M_]: K extends '$allModels' ? { + [P in keyof M_[K]]?: unknown; + } & { + [K: symbol]: {}; + } : K extends TypeMap['meta']['modelProps'] ? { + [P in keyof M_[K]]?: unknown; + } & { + [K: symbol]: { + ctx: DynamicModelExtensionThis, ExtArgs> & { + $parent: DynamicClientExtensionThis; + } & { + $name: ModelKey; + } & { + /** + * @deprecated Use `$name` instead. + */ + name: ModelKey; + }; + }; + } : never; +}; + +export declare type DynamicModelExtensionFluentApi = { + [K in keyof TypeMap['model'][M]['payload']['objects']]: (args?: Exact>) => PrismaPromise, [K]> | Null> & DynamicModelExtensionFluentApi>; +}; + +export declare type DynamicModelExtensionFnResult = P extends FluentOperation ? DynamicModelExtensionFluentApi & PrismaPromise | Null> : PrismaPromise>; + +export declare type DynamicModelExtensionFnResultBase = GetResult; + +export declare type DynamicModelExtensionFnResultNull

= P extends 'findUnique' | 'findFirst' ? null : never; + +export declare type DynamicModelExtensionOperationFn = {} extends TypeMap['model'][M]['operations'][P]['args'] ? (args?: Exact) => DynamicModelExtensionFnResult> : (args: Exact) => DynamicModelExtensionFnResult>; + +export declare type DynamicModelExtensionThis> = { + [P in keyof ExtArgs['model'][Uncapitalize]]: Return][P]>; +} & { + [P in Exclude]>]: DynamicModelExtensionOperationFn; +} & { + [P in Exclude<'fields', keyof ExtArgs['model'][Uncapitalize]>]: TypeMap['model'][M]['fields']; +} & { + [K: symbol]: { + types: TypeMap['model'][M]; + }; +}; + +/** Query */ +export declare type DynamicQueryExtensionArgs = { + [K in keyof Q_]: K extends '$allOperations' ? (args: { + model?: string; + operation: string; + args: any; + query: (args: any) => PrismaPromise; + }) => Promise : K extends '$allModels' ? { + [P in keyof Q_[K] | keyof TypeMap['model'][keyof TypeMap['model']]['operations'] | '$allOperations']?: P extends '$allOperations' ? DynamicQueryExtensionCb : P extends keyof TypeMap['model'][keyof TypeMap['model']]['operations'] ? DynamicQueryExtensionCb : never; + } : K extends TypeMap['meta']['modelProps'] ? { + [P in keyof Q_[K] | keyof TypeMap['model'][ModelKey]['operations'] | '$allOperations']?: P extends '$allOperations' ? DynamicQueryExtensionCb, keyof TypeMap['model'][ModelKey]['operations']> : P extends keyof TypeMap['model'][ModelKey]['operations'] ? DynamicQueryExtensionCb, P> : never; + } : K extends keyof TypeMap['other']['operations'] ? DynamicQueryExtensionCb<[TypeMap], 0, 'other', K> : never; +}; + +export declare type DynamicQueryExtensionCb = >(args: A) => Promise; + +export declare type DynamicQueryExtensionCbArgs = (_1 extends unknown ? _2 extends unknown ? { + args: DynamicQueryExtensionCbArgsArgs; + model: _0 extends 0 ? undefined : _1; + operation: _2; + query: >(args: A) => PrismaPromise; +} : never : never) & { + query: (args: DynamicQueryExtensionCbArgsArgs) => PrismaPromise; +}; + +export declare type DynamicQueryExtensionCbArgsArgs = _2 extends '$queryRaw' | '$executeRaw' ? Sql : TypeMap[_0][_1]['operations'][_2]['args']; + +/** Result */ +export declare type DynamicResultExtensionArgs = { + [K in keyof R_]: { + [P in keyof R_[K]]?: { + needs?: DynamicResultExtensionNeeds, R_[K][P]>; + compute(data: DynamicResultExtensionData, R_[K][P]>): any; + }; + }; +}; + +export declare type DynamicResultExtensionData = GetFindResult; + +export declare type DynamicResultExtensionNeeds = { + [K in keyof S]: K extends keyof TypeMap['model'][M]['payload']['scalars'] ? S[K] : never; +} & { + [N in keyof TypeMap['model'][M]['payload']['scalars']]?: boolean; +}; + +/** + * Placeholder value for "no text". + */ +export declare const empty: Sql; + +export declare type EmptyToUnknown = T; + +declare interface Engine { + /** The name of the engine. This is meant to be consumed externally */ + readonly name: string; + onBeforeExit(callback: () => Promise): void; + start(): Promise; + stop(): Promise; + version(forceRun?: boolean): Promise | string; + request(query: JsonQuery, options: RequestOptions): Promise>; + requestBatch(queries: JsonQuery[], options: RequestBatchOptions): Promise[]>; + transaction(action: 'start', headers: Transaction_2.TransactionHeaders, options: Transaction_2.Options): Promise>; + transaction(action: 'commit', headers: Transaction_2.TransactionHeaders, info: Transaction_2.InteractiveTransactionInfo): Promise; + transaction(action: 'rollback', headers: Transaction_2.TransactionHeaders, info: Transaction_2.InteractiveTransactionInfo): Promise; + metrics(options: MetricsOptionsJson): Promise; + metrics(options: MetricsOptionsPrometheus): Promise; + applyPendingMigrations(): Promise; +} + +declare interface EngineConfig { + cwd: string; + dirname: string; + enableDebugLogs?: boolean; + allowTriggerPanic?: boolean; + prismaPath?: string; + generator?: GeneratorConfig; + /** + * @remarks this field is used internally by Policy, do not rename or remove + */ + overrideDatasources: Datasources; + showColors?: boolean; + logQueries?: boolean; + logLevel?: 'info' | 'warn'; + env: Record; + flags?: string[]; + clientVersion: string; + engineVersion: string; + previewFeatures?: string[]; + engineEndpoint?: string; + activeProvider?: string; + logEmitter: LogEmitter; + transactionOptions: Transaction_2.Options; + /** + * Instance of a Driver Adapter, e.g., like one provided by `@prisma/adapter-planetscale`. + * If set, this is only used in the library engine, and all queries would be performed through it, + * rather than Prisma's Rust drivers. + * @remarks only used by LibraryEngine.ts + */ + adapter?: SqlDriverAdapterFactory; + /** + * The contents of the schema encoded into a string + */ + inlineSchema: string; + /** + * The contents of the datasource url saved in a string + * @remarks only used by DataProxyEngine.ts + * @remarks this field is used internally by Policy, do not rename or remove + */ + inlineDatasources: GetPrismaClientConfig['inlineDatasources']; + /** + * The string hash that was produced for a given schema + * @remarks only used by DataProxyEngine.ts + */ + inlineSchemaHash: string; + /** + * The helper for interaction with OTEL tracing + * @remarks enabling is determined by the client and @prisma/instrumentation package + */ + tracingHelper: TracingHelper; + /** + * Information about whether we have not found a schema.prisma file in the + * default location, and that we fell back to finding the schema.prisma file + * in the current working directory. This usually means it has been bundled. + */ + isBundled?: boolean; + /** + * Web Assembly module loading configuration + */ + engineWasm?: EngineWasmLoadingConfig; + compilerWasm?: CompilerWasmLoadingConfig; + /** + * Allows Accelerate to use runtime utilities from the client. These are + * necessary for the AccelerateEngine to function correctly. + */ + accelerateUtils?: { + resolveDatasourceUrl: typeof resolveDatasourceUrl; + getBatchRequestPayload: typeof getBatchRequestPayload; + prismaGraphQLToJSError: typeof prismaGraphQLToJSError; + PrismaClientUnknownRequestError: typeof PrismaClientUnknownRequestError; + PrismaClientInitializationError: typeof PrismaClientInitializationError; + PrismaClientKnownRequestError: typeof PrismaClientKnownRequestError; + debug: (...args: any[]) => void; + engineVersion: string; + clientVersion: string; + }; +} + +declare type EngineEvent = E extends QueryEventType ? QueryEvent : LogEvent; + +declare type EngineEventType = QueryEventType | LogEventType; + +declare type EngineSpan = { + id: EngineSpanId; + parentId: string | null; + name: string; + startTime: HrTime; + endTime: HrTime; + kind: EngineSpanKind; + attributes?: Record; + links?: EngineSpanId[]; +}; + +declare type EngineSpanId = string; + +declare type EngineSpanKind = 'client' | 'internal'; + +declare type EngineWasmLoadingConfig = { + /** + * WASM-bindgen runtime for corresponding module + */ + getRuntime: () => Promise<{ + __wbg_set_wasm(exports: unknown): void; + QueryEngine: QueryEngineConstructor; + }>; + /** + * Loads the raw wasm module for the wasm query engine. This configuration is + * generated specifically for each type of client, eg. Node.js client and Edge + * clients will have different implementations. + * @remarks this is a callback on purpose, we only load the wasm if needed. + * @remarks only used by LibraryEngine + */ + getQueryEngineWasmModule: () => Promise; +}; + +declare type EnumValue = ReadonlyDeep_2<{ + name: string; + dbName: string | null; +}>; + +declare type EnvPaths = { + rootEnvPath: string | null; + schemaEnvPath: string | undefined; +}; + +declare interface EnvValue { + fromEnvVar: null | string; + value: null | string; +} + +export declare type Equals = (() => T extends A ? 1 : 2) extends (() => T extends B ? 1 : 2) ? 1 : 0; + +declare type Error_2 = MappedError & { + originalCode?: string; + originalMessage?: string; +}; + +declare type ErrorCapturingFunction = T extends (...args: infer A) => Promise ? (...args: A) => Promise>> : T extends (...args: infer A) => infer R ? (...args: A) => Result_4> : T; + +declare type ErrorCapturingInterface = { + [K in keyof T]: ErrorCapturingFunction; +}; + +declare interface ErrorCapturingSqlDriverAdapter extends ErrorCapturingInterface { + readonly errorRegistry: ErrorRegistry; +} + +declare type ErrorFormat = 'pretty' | 'colorless' | 'minimal'; + +declare type ErrorRecord = { + error: unknown; +}; + +declare interface ErrorRegistry { + consumeError(id: number): ErrorRecord | undefined; +} + +declare interface ErrorWithBatchIndex { + batchRequestIdx?: number; +} + +declare type EventCallback = [E] extends ['beforeExit'] ? () => Promise : [E] extends [LogLevel] ? (event: EngineEvent) => void : never; + +export declare type Exact = (A extends unknown ? (W extends A ? { + [K in keyof A]: Exact; +} : W) : never) | (A extends Narrowable ? A : never); + +/** + * Defines Exception. + * + * string or an object with one of (message or name or code) and optional stack + */ +declare type Exception = ExceptionWithCode | ExceptionWithMessage | ExceptionWithName | string; + +declare interface ExceptionWithCode { + code: string | number; + name?: string; + message?: string; + stack?: string; +} + +declare interface ExceptionWithMessage { + code?: string | number; + message: string; + name?: string; + stack?: string; +} + +declare interface ExceptionWithName { + code?: string | number; + message?: string; + name: string; + stack?: string; +} + +declare type ExtendedEventType = LogLevel | 'beforeExit'; + +declare type ExtendedSpanOptions = SpanOptions & { + /** The name of the span */ + name: string; + internal?: boolean; + /** Whether it propagates context (?=true) */ + active?: boolean; + /** The context to append the span to */ + context?: Context; +}; + +/** $extends, defineExtension */ +export declare interface ExtendsHook, TypeMap extends TypeMapDef = Call> { + extArgs: ExtArgs; + , MergedArgs extends InternalArgs = MergeExtArgs>(extension: ((client: DynamicClientExtensionThis) => { + $extends: { + extArgs: Args; + }; + }) | { + name?: string; + query?: DynamicQueryExtensionArgs; + result?: DynamicResultExtensionArgs & R; + model?: DynamicModelExtensionArgs & M; + client?: DynamicClientExtensionArgs & C; + }): { + extends: DynamicClientExtensionThis, TypeMapCb, MergedArgs>; + define: (client: any) => { + $extends: { + extArgs: Args; + }; + }; + }[Variant]; +} + +export declare type ExtensionArgs = Optional; + +declare namespace Extensions { + export { + defineExtension, + getExtensionContext + } +} +export { Extensions } + +declare namespace Extensions_2 { + export { + InternalArgs, + DefaultArgs, + GetPayloadResultExtensionKeys, + GetPayloadResultExtensionObject, + GetPayloadResult, + GetSelect, + GetOmit, + DynamicQueryExtensionArgs, + DynamicQueryExtensionCb, + DynamicQueryExtensionCbArgs, + DynamicQueryExtensionCbArgsArgs, + DynamicResultExtensionArgs, + DynamicResultExtensionNeeds, + DynamicResultExtensionData, + DynamicModelExtensionArgs, + DynamicModelExtensionThis, + DynamicModelExtensionOperationFn, + DynamicModelExtensionFnResult, + DynamicModelExtensionFnResultBase, + DynamicModelExtensionFluentApi, + DynamicModelExtensionFnResultNull, + DynamicClientExtensionArgs, + DynamicClientExtensionThis, + ClientBuiltInProp, + DynamicClientExtensionThisBuiltin, + ExtendsHook, + MergeExtArgs, + AllModelsToStringIndex, + TypeMapDef, + DevTypeMapDef, + DevTypeMapFnDef, + ClientOptionDef, + ClientOtherOps, + TypeMapCbDef, + ModelKey, + RequiredExtensionArgs as UserArgs + } +} + +export declare type ExtractGlobalOmit = Options extends { + omit: { + [K in ModelName]: infer GlobalOmit; + }; +} ? GlobalOmit : {}; + +declare type Field = ReadonlyDeep_2<{ + kind: FieldKind; + name: string; + isRequired: boolean; + isList: boolean; + isUnique: boolean; + isId: boolean; + isReadOnly: boolean; + isGenerated?: boolean; + isUpdatedAt?: boolean; + /** + * Describes the data type in the same the way it is defined in the Prisma schema: + * BigInt, Boolean, Bytes, DateTime, Decimal, Float, Int, JSON, String, $ModelName + */ + type: string; + /** + * Native database type, if specified. + * For example, `@db.VarChar(191)` is encoded as `['VarChar', ['191']]`, + * `@db.Text` is encoded as `['Text', []]`. + */ + nativeType?: [string, string[]] | null; + dbName?: string | null; + hasDefaultValue: boolean; + default?: FieldDefault | FieldDefaultScalar | FieldDefaultScalar[]; + relationFromFields?: string[]; + relationToFields?: string[]; + relationOnDelete?: string; + relationOnUpdate?: string; + relationName?: string; + documentation?: string; +}>; + +declare type FieldDefault = ReadonlyDeep_2<{ + name: string; + args: Array; +}>; + +declare type FieldDefaultScalar = string | boolean | number; + +declare type FieldInitializer = { + type: 'value'; + value: PrismaValue; +} | { + type: 'lastInsertId'; +}; + +declare type FieldKind = 'scalar' | 'object' | 'enum' | 'unsupported'; + +declare type FieldLocation = 'scalar' | 'inputObjectTypes' | 'outputObjectTypes' | 'enumTypes' | 'fieldRefTypes'; + +declare type FieldNamespace = 'model' | 'prisma'; + +declare type FieldOperation = { + type: 'set'; + value: PrismaValue; +} | { + type: 'add'; + value: PrismaValue; +} | { + type: 'subtract'; + value: PrismaValue; +} | { + type: 'multiply'; + value: PrismaValue; +} | { + type: 'divide'; + value: PrismaValue; +}; + +/** + * A reference to a specific field of a specific model + */ +export declare interface FieldRef { + readonly modelName: Model; + readonly name: string; + readonly typeName: FieldType; + readonly isList: boolean; +} + +declare type FieldRefAllowType = TypeRef<'scalar' | 'enumTypes'>; + +declare type FieldRefType = ReadonlyDeep_2<{ + name: string; + allowTypes: FieldRefAllowType[]; + fields: SchemaArg[]; +}>; + +declare type FieldScalarType = { + type: 'string' | 'int' | 'bigint' | 'float' | 'boolean' | 'json' | 'object' | 'datetime' | 'decimal' | 'unsupported'; +} | { + type: 'enum'; + name: string; +} | { + type: 'bytes'; + encoding: 'array' | 'base64' | 'hex'; +}; + +declare type FieldType = { + arity: Arity; +} & FieldScalarType; + +declare type FluentOperation = 'findUnique' | 'findUniqueOrThrow' | 'findFirst' | 'findFirstOrThrow' | 'create' | 'update' | 'upsert' | 'delete'; + +export declare interface Fn { + params: Params; + returns: Returns; +} + +declare type Fragment = { + type: 'stringChunk'; + chunk: string; +} | { + type: 'parameter'; +} | { + type: 'parameterTuple'; +} | { + type: 'parameterTupleList'; + itemPrefix: string; + itemSeparator: string; + itemSuffix: string; + groupSeparator: string; +}; + +declare interface GeneratorConfig { + name: string; + output: EnvValue | null; + isCustomOutput?: boolean; + provider: EnvValue; + config: { + /** `output` is a reserved name and will only be available directly at `generator.output` */ + output?: never; + /** `provider` is a reserved name and will only be available directly at `generator.provider` */ + provider?: never; + /** `binaryTargets` is a reserved name and will only be available directly at `generator.binaryTargets` */ + binaryTargets?: never; + /** `previewFeatures` is a reserved name and will only be available directly at `generator.previewFeatures` */ + previewFeatures?: never; + } & { + [key: string]: string | string[] | undefined; + }; + binaryTargets: BinaryTargetsEnvValue[]; + previewFeatures: string[]; + envPaths?: EnvPaths; + sourceFilePath: string; +} + +export declare type GetAggregateResult

= { + [K in keyof A as K extends Aggregate ? K : never]: K extends '_count' ? A[K] extends true ? number : Count : { + [J in keyof A[K] & string]: P['scalars'][J] | null; + }; +}; + +declare function getBatchRequestPayload(batch: JsonQuery[], transaction?: TransactionOptions_2): QueryEngineBatchRequest; + +export declare type GetBatchResult = { + count: number; +}; + +export declare type GetCountResult = A extends { + select: infer S; +} ? (S extends true ? number : Count) : number; + +declare function getExtensionContext(that: T): Context_2; + +export declare type GetFindResult

= Equals extends 1 ? DefaultSelection : A extends { + select: infer S extends object; +} & Record | { + include: infer I extends object; +} & Record ? { + [K in keyof S | keyof I as (S & I)[K] extends false | undefined | Skip | null ? never : K]: (S & I)[K] extends object ? P extends SelectablePayloadFields ? O extends OperationPayload ? GetFindResult[] : never : P extends SelectablePayloadFields ? O extends OperationPayload ? GetFindResult | SelectField & null : never : K extends '_count' ? Count> : never : P extends SelectablePayloadFields ? O extends OperationPayload ? DefaultSelection[] : never : P extends SelectablePayloadFields ? O extends OperationPayload ? DefaultSelection | SelectField & null : never : P extends { + scalars: { + [k in K]: infer O; + }; + } ? O : K extends '_count' ? Count : never; +} & (A extends { + include: any; +} & Record ? DefaultSelection : unknown) : DefaultSelection; + +export declare type GetGroupByResult

= A extends { + by: string[]; +} ? Array & { + [K in A['by'][number]]: P['scalars'][K]; +}> : A extends { + by: string; +} ? Array & { + [K in A['by']]: P['scalars'][K]; +}> : {}[]; + +export declare type GetOmit = { + [K in (string extends keyof R ? never : keyof R) | BaseKeys]?: boolean | ExtraType; +}; + +export declare type GetPayloadResult, R extends InternalArgs['result'][string]> = Omit> & GetPayloadResultExtensionObject; + +export declare type GetPayloadResultExtensionKeys = KR; + +export declare type GetPayloadResultExtensionObject = { + [K in GetPayloadResultExtensionKeys]: R[K] extends () => { + compute: (...args: any) => infer C; + } ? C : never; +}; + +export declare function getPrismaClient(config: GetPrismaClientConfig): { + new (optionsArg?: PrismaClientOptions): { + _originalClient: any; + _runtimeDataModel: RuntimeDataModel; + _requestHandler: RequestHandler; + _connectionPromise?: Promise | undefined; + _disconnectionPromise?: Promise | undefined; + _engineConfig: EngineConfig; + _accelerateEngineConfig: AccelerateEngineConfig; + _clientVersion: string; + _errorFormat: ErrorFormat; + _tracingHelper: TracingHelper; + _previewFeatures: string[]; + _activeProvider: string; + _globalOmit?: GlobalOmitOptions | undefined; + _extensions: MergedExtensionsList; + /** + * @remarks This is used internally by Policy, do not rename or remove + */ + _engine: Engine; + /** + * A fully constructed/applied Client that references the parent + * PrismaClient. This is used for Client extensions only. + */ + _appliedParent: any; + _createPrismaPromise: PrismaPromiseFactory; + $on(eventType: E, callback: EventCallback): any; + $connect(): Promise; + /** + * Disconnect from the database + */ + $disconnect(): Promise; + /** + * Executes a raw query and always returns a number + */ + $executeRawInternal(transaction: PrismaPromiseTransaction | undefined, clientMethod: string, args: RawQueryArgs, middlewareArgsMapper?: MiddlewareArgsMapper): Promise; + /** + * Executes a raw query provided through a safe tag function + * @see https://github.com/prisma/prisma/issues/7142 + * + * @param query + * @param values + * @returns + */ + $executeRaw(query: TemplateStringsArray | Sql, ...values: any[]): PrismaPromise_2; + /** + * Unsafe counterpart of `$executeRaw` that is susceptible to SQL injections + * @see https://github.com/prisma/prisma/issues/7142 + * + * @param query + * @param values + * @returns + */ + $executeRawUnsafe(query: string, ...values: RawValue[]): PrismaPromise_2; + /** + * Executes a raw command only for MongoDB + * + * @param command + * @returns + */ + $runCommandRaw(command: Record): PrismaPromise_2; + /** + * Executes a raw query and returns selected data + */ + $queryRawInternal(transaction: PrismaPromiseTransaction | undefined, clientMethod: string, args: RawQueryArgs, middlewareArgsMapper?: MiddlewareArgsMapper): Promise; + /** + * Executes a raw query provided through a safe tag function + * @see https://github.com/prisma/prisma/issues/7142 + * + * @param query + * @param values + * @returns + */ + $queryRaw(query: TemplateStringsArray | Sql, ...values: any[]): PrismaPromise_2; + /** + * Counterpart to $queryRaw, that returns strongly typed results + * @param typedSql + */ + $queryRawTyped(typedSql: UnknownTypedSql): PrismaPromise_2; + /** + * Unsafe counterpart of `$queryRaw` that is susceptible to SQL injections + * @see https://github.com/prisma/prisma/issues/7142 + * + * @param query + * @param values + * @returns + */ + $queryRawUnsafe(query: string, ...values: RawValue[]): PrismaPromise_2; + /** + * Execute a batch of requests in a transaction + * @param requests + * @param options + */ + _transactionWithArray({ promises, options, }: { + promises: Array>; + options?: BatchTransactionOptions; + }): Promise; + /** + * Perform a long-running transaction + * @param callback + * @param options + * @returns + */ + _transactionWithCallback({ callback, options, }: { + callback: (client: Client) => Promise; + options?: Options; + }): Promise; + _createItxClient(transaction: PrismaPromiseInteractiveTransaction): Client; + /** + * Execute queries within a transaction + * @param input a callback or a query list + * @param options to set timeouts (callback) + * @returns + */ + $transaction(input: any, options?: any): Promise; + /** + * Runs the middlewares over params before executing a request + * @param internalParams + * @returns + */ + _request(internalParams: InternalRequestParams): Promise; + _executeRequest({ args, clientMethod, dataPath, callsite, action, model, argsMapper, transaction, unpacker, otelParentCtx, customDataProxyFetch, }: InternalRequestParams): Promise; + $metrics: MetricsClient; + /** + * Shortcut for checking a preview flag + * @param feature preview flag + * @returns + */ + _hasPreviewFlag(feature: string): boolean; + $applyPendingMigrations(): Promise; + $extends: typeof $extends; + readonly [Symbol.toStringTag]: string; + }; +}; + +/** + * Config that is stored into the generated client. When the generated client is + * loaded, this same config is passed to {@link getPrismaClient} which creates a + * closure with that config around a non-instantiated [[PrismaClient]]. + */ +export declare type GetPrismaClientConfig = { + runtimeDataModel: RuntimeDataModel; + generator?: GeneratorConfig; + relativeEnvPaths?: { + rootEnvPath?: string | null; + schemaEnvPath?: string | null; + }; + relativePath: string; + dirname: string; + clientVersion: string; + engineVersion: string; + datasourceNames: string[]; + activeProvider: ActiveConnectorType; + /** + * The contents of the schema encoded into a string + * @remarks only used for the purpose of data proxy + */ + inlineSchema: string; + /** + * A special env object just for the data proxy edge runtime. + * Allows bundlers to inject their own env variables (Vercel). + * Allows platforms to declare global variables as env (Workers). + * @remarks only used for the purpose of data proxy + */ + injectableEdgeEnv?: () => LoadedEnv; + /** + * The contents of the datasource url saved in a string. + * This can either be an env var name or connection string. + * It is needed by the client to connect to the Data Proxy. + * @remarks only used for the purpose of data proxy + */ + inlineDatasources: { + [name in string]: { + url: EnvValue; + }; + }; + /** + * The string hash that was produced for a given schema + * @remarks only used for the purpose of data proxy + */ + inlineSchemaHash: string; + /** + * A marker to indicate that the client was not generated via `prisma + * generate` but was generated via `generate --postinstall` script instead. + * @remarks used to error for Vercel/Netlify for schema caching issues + */ + postinstall?: boolean; + /** + * Information about the CI where the Prisma Client has been generated. The + * name of the CI environment is stored at generation time because CI + * information is not always available at runtime. Moreover, the edge client + * has no notion of environment variables, so this works around that. + * @remarks used to error for Vercel/Netlify for schema caching issues + */ + ciName?: string; + /** + * Information about whether we have not found a schema.prisma file in the + * default location, and that we fell back to finding the schema.prisma file + * in the current working directory. This usually means it has been bundled. + */ + isBundled?: boolean; + /** + * A boolean that is `false` when the client was generated with --no-engine. At + * runtime, this means the client will be bound to be using the Data Proxy. + */ + copyEngine?: boolean; + /** + * Optional wasm loading configuration + */ + engineWasm?: EngineWasmLoadingConfig; + compilerWasm?: CompilerWasmLoadingConfig; +}; + +export declare type GetResult = { + findUnique: GetFindResult | null; + findUniqueOrThrow: GetFindResult; + findFirst: GetFindResult | null; + findFirstOrThrow: GetFindResult; + findMany: GetFindResult[]; + create: GetFindResult; + createMany: GetBatchResult; + createManyAndReturn: GetFindResult[]; + update: GetFindResult; + updateMany: GetBatchResult; + updateManyAndReturn: GetFindResult[]; + upsert: GetFindResult; + delete: GetFindResult; + deleteMany: GetBatchResult; + aggregate: GetAggregateResult; + count: GetCountResult; + groupBy: GetGroupByResult; + $queryRaw: unknown; + $queryRawTyped: unknown; + $executeRaw: number; + $queryRawUnsafe: unknown; + $executeRawUnsafe: number; + $runCommandRaw: JsonObject; + findRaw: JsonObject; + aggregateRaw: JsonObject; +}[OperationName]; + +export declare function getRuntime(): GetRuntimeOutput; + +declare type GetRuntimeOutput = { + id: RuntimeName; + prettyName: string; + isEdge: boolean; +}; + +export declare type GetSelect, R extends InternalArgs['result'][string], KR extends keyof R = string extends keyof R ? never : keyof R> = { + [K in KR | keyof Base]?: K extends KR ? boolean : Base[K]; +}; + +declare type GlobalOmitOptions = { + [modelName: string]: { + [fieldName: string]: boolean; + }; +}; + +declare type HandleErrorParams = { + args: JsArgs; + error: any; + clientMethod: string; + callsite?: CallSite; + transaction?: PrismaPromiseTransaction; + modelName?: string; + globalOmit?: GlobalOmitOptions; +}; + +declare type HrTime = [number, number]; + +/** + * Defines High-Resolution Time. + * + * The first number, HrTime[0], is UNIX Epoch time in seconds since 00:00:00 UTC on 1 January 1970. + * The second number, HrTime[1], represents the partial second elapsed since Unix Epoch time represented by first number in nanoseconds. + * For example, 2021-01-01T12:30:10.150Z in UNIX Epoch time in milliseconds is represented as 1609504210150. + * The first number is calculated by converting and truncating the Epoch time in milliseconds to seconds: + * HrTime[0] = Math.trunc(1609504210150 / 1000) = 1609504210. + * The second number is calculated by converting the digits after the decimal point of the subtraction, (1609504210150 / 1000) - HrTime[0], to nanoseconds: + * HrTime[1] = Number((1609504210.150 - HrTime[0]).toFixed(9)) * 1e9 = 150000000. + * This is represented in HrTime format as [1609504210, 150000000]. + */ +declare type HrTime_2 = [number, number]; + +declare type Index = ReadonlyDeep_2<{ + model: string; + type: IndexType; + isDefinedOnField: boolean; + name?: string; + dbName?: string; + algorithm?: string; + clustered?: boolean; + fields: IndexField[]; +}>; + +declare type IndexField = ReadonlyDeep_2<{ + name: string; + sortOrder?: SortOrder; + length?: number; + operatorClass?: string; +}>; + +declare type IndexType = 'id' | 'normal' | 'unique' | 'fulltext'; + +declare type InMemoryOps = { + pagination: Pagination | null; + distinct: string[] | null; + reverse: boolean; + linkingFields: string[] | null; + nested: Record; +}; + +/** + * Matches a JSON array. + * Unlike \`JsonArray\`, readonly arrays are assignable to this type. + */ +export declare interface InputJsonArray extends ReadonlyArray { +} + +/** + * Matches a JSON object. + * Unlike \`JsonObject\`, this type allows undefined and read-only properties. + */ +export declare type InputJsonObject = { + readonly [Key in string]?: InputJsonValue | null; +}; + +/** + * Matches any valid value that can be used as an input for operations like + * create and update as the value of a JSON field. Unlike \`JsonValue\`, this + * type allows read-only arrays and read-only object properties and disallows + * \`null\` at the top level. + * + * \`null\` cannot be used as the value of a JSON field because its meaning + * would be ambiguous. Use \`Prisma.JsonNull\` to store the JSON null value or + * \`Prisma.DbNull\` to clear the JSON value and set the field to the database + * NULL value instead. + * + * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-by-null-values + */ +export declare type InputJsonValue = string | number | boolean | InputJsonObject | InputJsonArray | { + toJSON(): unknown; +}; + +declare type InputType = ReadonlyDeep_2<{ + name: string; + constraints: { + maxNumFields: number | null; + minNumFields: number | null; + fields?: string[]; + }; + meta?: { + source?: string; + grouping?: string; + }; + fields: SchemaArg[]; +}>; + +declare type InputTypeRef = TypeRef<'scalar' | 'inputObjectTypes' | 'enumTypes' | 'fieldRefTypes'>; + +declare type InteractiveTransactionInfo = { + /** + * Transaction ID returned by the query engine. + */ + id: string; + /** + * Arbitrary payload the meaning of which depends on the `Engine` implementation. + * For example, `DataProxyEngine` needs to associate different API endpoints with transactions. + * In `LibraryEngine` and `BinaryEngine` it is currently not used. + */ + payload: Payload; +}; + +declare type InteractiveTransactionOptions = Transaction_2.InteractiveTransactionInfo; + +export declare type InternalArgs = { + result: { + [K in keyof R]: { + [P in keyof R[K]]: () => R[K][P]; + }; + }; + model: { + [K in keyof M]: { + [P in keyof M[K]]: () => M[K][P]; + }; + }; + query: { + [K in keyof Q]: { + [P in keyof Q[K]]: () => Q[K][P]; + }; + }; + client: { + [K in keyof C]: () => C[K]; + }; +}; + +declare type InternalRequestParams = { + /** + * The original client method being called. + * Even though the rootField / operation can be changed, + * this method stays as it is, as it's what the user's + * code looks like + */ + clientMethod: string; + /** + * Name of js model that triggered the request. Might be used + * for warnings or error messages + */ + jsModelName?: string; + callsite?: CallSite; + transaction?: PrismaPromiseTransaction; + unpacker?: Unpacker; + otelParentCtx?: Context; + /** Used to "desugar" a user input into an "expanded" one */ + argsMapper?: (args?: UserArgs_2) => UserArgs_2; + /** Used to convert args for middleware and back */ + middlewareArgsMapper?: MiddlewareArgsMapper; + /** Used for Accelerate client extension via Data Proxy */ + customDataProxyFetch?: AccelerateExtensionFetchDecorator; +} & Omit; + +declare type IsolationLevel = 'READ UNCOMMITTED' | 'READ COMMITTED' | 'REPEATABLE READ' | 'SNAPSHOT' | 'SERIALIZABLE'; + +declare type IsolationLevel_2 = 'ReadUncommitted' | 'ReadCommitted' | 'RepeatableRead' | 'Snapshot' | 'Serializable'; + +declare function isSkip(value: unknown): value is Skip; + +export declare function isTypedSql(value: unknown): value is UnknownTypedSql; + +export declare type ITXClientDenyList = (typeof denylist)[number]; + +export declare const itxClientDenyList: readonly (string | symbol)[]; + +declare interface Job { + resolve: (data: any) => void; + reject: (data: any) => void; + request: any; +} + +/** + * Create a SQL query for a list of values. + */ +export declare function join(values: readonly RawValue[], separator?: string, prefix?: string, suffix?: string): Sql; + +declare type JoinExpression = { + child: QueryPlanNode; + on: [left: string, right: string][]; + parentField: string; + isRelationUnique: boolean; +}; + +export declare type JsArgs = { + select?: Selection_2; + include?: Selection_2; + omit?: Omission; + [argName: string]: JsInputValue; +}; + +export declare type JsInputValue = null | undefined | string | number | boolean | bigint | Uint8Array | Date | DecimalJsLike | ObjectEnumValue | RawParameters | JsonConvertible | FieldRef | JsInputValue[] | Skip | { + [key: string]: JsInputValue; +}; + +declare type JsonArgumentValue = number | string | boolean | null | RawTaggedValue | JsonArgumentValue[] | { + [key: string]: JsonArgumentValue; +}; + +/** + * From https://github.com/sindresorhus/type-fest/ + * Matches a JSON array. + */ +export declare interface JsonArray extends Array { +} + +export declare type JsonBatchQuery = { + batch: JsonQuery[]; + transaction?: { + isolationLevel?: IsolationLevel_2; + }; +}; + +export declare interface JsonConvertible { + toJSON(): unknown; +} + +declare type JsonFieldSelection = { + arguments?: Record | RawTaggedValue; + selection: JsonSelectionSet; +}; + +declare class JsonNull extends NullTypesEnumValue { + #private; +} + +/** + * From https://github.com/sindresorhus/type-fest/ + * Matches a JSON object. + * This type can be useful to enforce some input to be JSON-compatible or as a super-type to be extended from. + */ +export declare type JsonObject = { + [Key in string]?: JsonValue; +}; + +export declare type JsonQuery = { + modelName?: string; + action: JsonQueryAction; + query: JsonFieldSelection; +}; + +declare type JsonQueryAction = 'findUnique' | 'findUniqueOrThrow' | 'findFirst' | 'findFirstOrThrow' | 'findMany' | 'createOne' | 'createMany' | 'createManyAndReturn' | 'updateOne' | 'updateMany' | 'updateManyAndReturn' | 'deleteOne' | 'deleteMany' | 'upsertOne' | 'aggregate' | 'groupBy' | 'executeRaw' | 'queryRaw' | 'runCommandRaw' | 'findRaw' | 'aggregateRaw'; + +declare type JsonSelectionSet = { + $scalars?: boolean; + $composites?: boolean; +} & { + [fieldName: string]: boolean | JsonFieldSelection; +}; + +/** + * From https://github.com/sindresorhus/type-fest/ + * Matches any valid JSON value. + */ +export declare type JsonValue = string | number | boolean | JsonObject | JsonArray | null; + +export declare type JsOutputValue = null | string | number | boolean | bigint | Uint8Array | Date | Decimal | JsOutputValue[] | { + [key: string]: JsOutputValue; +}; + +export declare type JsPromise = Promise & {}; + +declare type KnownErrorParams = { + code: string; + clientVersion: string; + meta?: Record; + batchRequestIdx?: number; +}; + +/** + * A pointer from the current {@link Span} to another span in the same trace or + * in a different trace. + * Few examples of Link usage. + * 1. Batch Processing: A batch of elements may contain elements associated + * with one or more traces/spans. Since there can only be one parent + * SpanContext, Link is used to keep reference to SpanContext of all + * elements in the batch. + * 2. Public Endpoint: A SpanContext in incoming client request on a public + * endpoint is untrusted from service provider perspective. In such case it + * is advisable to start a new trace with appropriate sampling decision. + * However, it is desirable to associate incoming SpanContext to new trace + * initiated on service provider side so two traces (from Client and from + * Service Provider) can be correlated. + */ +declare interface Link { + /** The {@link SpanContext} of a linked span. */ + context: SpanContext; + /** A set of {@link SpanAttributes} on the link. */ + attributes?: SpanAttributes; + /** Count of attributes of the link that were dropped due to collection limits */ + droppedAttributesCount?: number; +} + +declare type LoadedEnv = { + message?: string; + parsed: { + [x: string]: string; + }; +} | undefined; + +declare type LocationInFile = { + fileName: string; + lineNumber: number | null; + columnNumber: number | null; +}; + +declare type LogDefinition = { + level: LogLevel; + emit: 'stdout' | 'event'; +}; + +/** + * Typings for the events we emit. + * + * @remarks + * If this is updated, our edge runtime shim needs to be updated as well. + */ +declare type LogEmitter = { + on(event: E, listener: (event: EngineEvent) => void): LogEmitter; + emit(event: QueryEventType, payload: QueryEvent): boolean; + emit(event: LogEventType, payload: LogEvent): boolean; +}; + +declare type LogEvent = { + timestamp: Date; + message: string; + target: string; +}; + +declare type LogEventType = 'info' | 'warn' | 'error'; + +declare type LogLevel = 'info' | 'query' | 'warn' | 'error'; + +/** + * Generates more strict variant of an enum which, unlike regular enum, + * throws on non-existing property access. This can be useful in following situations: + * - we have an API, that accepts both `undefined` and `SomeEnumType` as an input + * - enum values are generated dynamically from DMMF. + * + * In that case, if using normal enums and no compile-time typechecking, using non-existing property + * will result in `undefined` value being used, which will be accepted. Using strict enum + * in this case will help to have a runtime exception, telling you that you are probably doing something wrong. + * + * Note: if you need to check for existence of a value in the enum you can still use either + * `in` operator or `hasOwnProperty` function. + * + * @param definition + * @returns + */ +export declare function makeStrictEnum>(definition: T): T; + +export declare function makeTypedQueryFactory(sql: string): (...values: any[]) => TypedSql; + +declare type MappedError = { + kind: 'GenericJs'; + id: number; +} | { + kind: 'UnsupportedNativeDataType'; + type: string; +} | { + kind: 'InvalidIsolationLevel'; + level: string; +} | { + kind: 'LengthMismatch'; + column?: string; +} | { + kind: 'UniqueConstraintViolation'; + constraint?: { + fields: string[]; + } | { + index: string; + } | { + foreignKey: {}; + }; +} | { + kind: 'NullConstraintViolation'; + constraint?: { + fields: string[]; + } | { + index: string; + } | { + foreignKey: {}; + }; +} | { + kind: 'ForeignKeyConstraintViolation'; + constraint?: { + fields: string[]; + } | { + index: string; + } | { + foreignKey: {}; + }; +} | { + kind: 'DatabaseNotReachable'; + host?: string; + port?: number; +} | { + kind: 'DatabaseDoesNotExist'; + db?: string; +} | { + kind: 'DatabaseAlreadyExists'; + db?: string; +} | { + kind: 'DatabaseAccessDenied'; + db?: string; +} | { + kind: 'ConnectionClosed'; +} | { + kind: 'TlsConnectionError'; + reason: string; +} | { + kind: 'AuthenticationFailed'; + user?: string; +} | { + kind: 'TransactionWriteConflict'; +} | { + kind: 'TableDoesNotExist'; + table?: string; +} | { + kind: 'ColumnNotFound'; + column?: string; +} | { + kind: 'TooManyConnections'; + cause: string; +} | { + kind: 'ValueOutOfRange'; + cause: string; +} | { + kind: 'MissingFullTextSearchIndex'; +} | { + kind: 'SocketTimeout'; +} | { + kind: 'InconsistentColumnData'; + cause: string; +} | { + kind: 'TransactionAlreadyClosed'; + cause: string; +} | { + kind: 'postgres'; + code: string; + severity: string; + message: string; + detail: string | undefined; + column: string | undefined; + hint: string | undefined; +} | { + kind: 'mysql'; + code: number; + message: string; + state: string; +} | { + kind: 'sqlite'; + /** + * Sqlite extended error code: https://www.sqlite.org/rescode.html + */ + extendedCode: number; + message: string; +} | { + kind: 'mssql'; + code: number; + message: string; +}; + +declare type Mappings = ReadonlyDeep_2<{ + modelOperations: ModelMapping[]; + otherOperations: { + read: string[]; + write: string[]; + }; +}>; + +/** + * Class that holds the list of all extensions, applied to particular instance, + * as well as resolved versions of the components that need to apply on + * different levels. Main idea of this class: avoid re-resolving as much of the + * stuff as possible when new extensions are added while also delaying the + * resolve until the point it is actually needed. For example, computed fields + * of the model won't be resolved unless the model is actually queried. Neither + * adding extensions with `client` component only cause other components to + * recompute. + */ +declare class MergedExtensionsList { + private head?; + private constructor(); + static empty(): MergedExtensionsList; + static single(extension: ExtensionArgs): MergedExtensionsList; + isEmpty(): boolean; + append(extension: ExtensionArgs): MergedExtensionsList; + getAllComputedFields(dmmfModelName: string): ComputedFieldsMap | undefined; + getAllClientExtensions(): ClientArg | undefined; + getAllModelExtensions(dmmfModelName: string): ModelArg | undefined; + getAllQueryCallbacks(jsModelName: string, operation: string): any; + getAllBatchQueryCallbacks(): BatchQueryOptionsCb[]; +} + +export declare type MergeExtArgs, Args extends Record> = ComputeDeep & AllModelsToStringIndex>; + +export declare type Metric = { + key: string; + value: T; + labels: Record; + description: string; +}; + +export declare type MetricHistogram = { + buckets: MetricHistogramBucket[]; + sum: number; + count: number; +}; + +export declare type MetricHistogramBucket = [maxValue: number, count: number]; + +export declare type Metrics = { + counters: Metric[]; + gauges: Metric[]; + histograms: Metric[]; +}; + +export declare class MetricsClient { + private _client; + constructor(client: Client); + /** + * Returns all metrics gathered up to this point in prometheus format. + * Result of this call can be exposed directly to prometheus scraping endpoint + * + * @param options + * @returns + */ + prometheus(options?: MetricsOptions): Promise; + /** + * Returns all metrics gathered up to this point in prometheus format. + * + * @param options + * @returns + */ + json(options?: MetricsOptions): Promise; +} + +declare type MetricsOptions = { + /** + * Labels to add to every metrics in key-value format + */ + globalLabels?: Record; +}; + +declare type MetricsOptionsCommon = { + globalLabels?: Record; +}; + +declare type MetricsOptionsJson = { + format: 'json'; +} & MetricsOptionsCommon; + +declare type MetricsOptionsPrometheus = { + format: 'prometheus'; +} & MetricsOptionsCommon; + +declare type MiddlewareArgsMapper = { + requestArgsToMiddlewareArgs(requestArgs: RequestArgs): MiddlewareArgs; + middlewareArgsToRequestArgs(middlewareArgs: MiddlewareArgs): RequestArgs; +}; + +declare type Model = ReadonlyDeep_2<{ + name: string; + dbName: string | null; + schema: string | null; + fields: Field[]; + uniqueFields: string[][]; + uniqueIndexes: uniqueIndex[]; + documentation?: string; + primaryKey: PrimaryKey | null; + isGenerated?: boolean; +}>; + +declare enum ModelAction { + findUnique = "findUnique", + findUniqueOrThrow = "findUniqueOrThrow", + findFirst = "findFirst", + findFirstOrThrow = "findFirstOrThrow", + findMany = "findMany", + create = "create", + createMany = "createMany", + createManyAndReturn = "createManyAndReturn", + update = "update", + updateMany = "updateMany", + updateManyAndReturn = "updateManyAndReturn", + upsert = "upsert", + delete = "delete", + deleteMany = "deleteMany", + groupBy = "groupBy", + count = "count",// TODO: count does not actually exist in DMMF + aggregate = "aggregate", + findRaw = "findRaw", + aggregateRaw = "aggregateRaw" +} + +export declare type ModelArg = { + [MethodName in string]: unknown; +}; + +export declare type ModelArgs = { + model: { + [ModelName in string]: ModelArg; + }; +}; + +export declare type ModelKey = M extends keyof TypeMap['model'] ? M : Capitalize; + +declare type ModelMapping = ReadonlyDeep_2<{ + model: string; + plural: string; + findUnique?: string | null; + findUniqueOrThrow?: string | null; + findFirst?: string | null; + findFirstOrThrow?: string | null; + findMany?: string | null; + create?: string | null; + createMany?: string | null; + createManyAndReturn?: string | null; + update?: string | null; + updateMany?: string | null; + updateManyAndReturn?: string | null; + upsert?: string | null; + delete?: string | null; + deleteMany?: string | null; + aggregate?: string | null; + groupBy?: string | null; + count?: string | null; + findRaw?: string | null; + aggregateRaw?: string | null; +}>; + +export declare type ModelQueryOptionsCb = (args: ModelQueryOptionsCbArgs) => Promise; + +export declare type ModelQueryOptionsCbArgs = { + model: string; + operation: string; + args: JsArgs; + query: (args: JsArgs) => Promise; +}; + +declare type MultiBatchResponse = { + type: 'multi'; + plans: QueryPlanNode[]; +}; + +export declare type NameArgs = { + name?: string; +}; + +export declare type Narrow = { + [K in keyof A]: A[K] extends Function ? A[K] : Narrow; +} | (A extends Narrowable ? A : never); + +export declare type Narrowable = string | number | bigint | boolean | []; + +export declare type NeverToUnknown = [T] extends [never] ? unknown : T; + +declare class NullTypesEnumValue extends ObjectEnumValue { + _getNamespace(): string; +} + +/** + * Base class for unique values of object-valued enums. + */ +export declare abstract class ObjectEnumValue { + constructor(arg?: symbol); + abstract _getNamespace(): string; + _getName(): string; + toString(): string; +} + +export declare const objectEnumValues: { + classes: { + DbNull: typeof DbNull; + JsonNull: typeof JsonNull; + AnyNull: typeof AnyNull; + }; + instances: { + DbNull: DbNull; + JsonNull: JsonNull; + AnyNull: AnyNull; + }; +}; + +declare const officialPrismaAdapters: readonly ["@prisma/adapter-planetscale", "@prisma/adapter-neon", "@prisma/adapter-libsql", "@prisma/adapter-better-sqlite3", "@prisma/adapter-d1", "@prisma/adapter-pg", "@prisma/adapter-mssql", "@prisma/adapter-mariadb"]; + +export declare type Omission = Record; + +declare type Omit_2 = { + [P in keyof T as P extends K ? never : P]: T[P]; +}; +export { Omit_2 as Omit } + +export declare type OmitValue = Key extends keyof Omit ? Omit[Key] : false; + +export declare type Operation = 'findFirst' | 'findFirstOrThrow' | 'findUnique' | 'findUniqueOrThrow' | 'findMany' | 'create' | 'createMany' | 'createManyAndReturn' | 'update' | 'updateMany' | 'updateManyAndReturn' | 'upsert' | 'delete' | 'deleteMany' | 'aggregate' | 'count' | 'groupBy' | '$queryRaw' | '$executeRaw' | '$queryRawUnsafe' | '$executeRawUnsafe' | 'findRaw' | 'aggregateRaw' | '$runCommandRaw'; + +export declare type OperationPayload = { + name: string; + scalars: { + [ScalarName in string]: unknown; + }; + objects: { + [ObjectName in string]: unknown; + }; + composites: { + [CompositeName in string]: unknown; + }; +}; + +export declare type Optional = { + [P in K & keyof O]?: O[P]; +} & { + [P in Exclude]: O[P]; +}; + +export declare type OptionalFlat = { + [K in keyof T]?: T[K]; +}; + +export declare type OptionalKeys = { + [K in keyof O]-?: {} extends Pick_2 ? K : never; +}[keyof O]; + +declare type Options = { + /** Timeout for starting the transaction */ + maxWait?: number; + /** Timeout for the transaction body */ + timeout?: number; + /** Transaction isolation level */ + isolationLevel?: IsolationLevel_2; +}; + +declare type Options_2 = { + clientVersion: string; +}; + +export declare type Or = { + 0: { + 0: 0; + 1: 1; + }; + 1: { + 0: 1; + 1: 1; + }; +}[A][B]; + +declare type OtherOperationMappings = ReadonlyDeep_2<{ + read: string[]; + write: string[]; +}>; + +declare type OutputType = ReadonlyDeep_2<{ + name: string; + fields: SchemaField[]; +}>; + +declare type OutputTypeRef = TypeRef<'scalar' | 'outputObjectTypes' | 'enumTypes'>; + +declare type Pagination = { + cursor: Record | null; + take: number | null; + skip: number | null; +}; + +export declare function Param<$Type, $Value extends string>(name: $Value): Param<$Type, $Value>; + +export declare type Param = { + readonly name: $Value; +}; + +export declare type PatchFlat = O1 & Omit_2; + +export declare type Path = O extends unknown ? P extends [infer K, ...infer R] ? K extends keyof O ? Path : Default : O : never; + +export declare type Payload = T extends { + [K: symbol]: { + types: { + payload: any; + }; + }; +} ? T[symbol]['types']['payload'] : any; + +export declare type PayloadToResult = RenameAndNestPayloadKeys

> = { + [K in keyof O]?: O[K][K] extends any[] ? PayloadToResult[] : O[K][K] extends object ? PayloadToResult : O[K][K]; +}; + +declare type Pick_2 = { + [P in keyof T as P extends K ? P : never]: T[P]; +}; +export { Pick_2 as Pick } + +declare interface PlaceholderFormat { + prefix: string; + hasNumbering: boolean; +} + +declare type PrimaryKey = ReadonlyDeep_2<{ + name: string | null; + fields: string[]; +}>; + +export declare class PrismaClientInitializationError extends Error { + clientVersion: string; + errorCode?: string; + retryable?: boolean; + constructor(message: string, clientVersion: string, errorCode?: string); + get [Symbol.toStringTag](): string; +} + +export declare class PrismaClientKnownRequestError extends Error implements ErrorWithBatchIndex { + code: string; + meta?: Record; + clientVersion: string; + batchRequestIdx?: number; + constructor(message: string, { code, clientVersion, meta, batchRequestIdx }: KnownErrorParams); + get [Symbol.toStringTag](): string; +} + +export declare type PrismaClientOptions = { + /** + * Overwrites the primary datasource url from your schema.prisma file + */ + datasourceUrl?: string; + /** + * Instance of a Driver Adapter, e.g., like one provided by `@prisma/adapter-planetscale. + */ + adapter?: SqlDriverAdapterFactory | null; + /** + * Overwrites the datasource url from your schema.prisma file + */ + datasources?: Datasources; + /** + * @default "colorless" + */ + errorFormat?: ErrorFormat; + /** + * The default values for Transaction options + * maxWait ?= 2000 + * timeout ?= 5000 + */ + transactionOptions?: Transaction_2.Options; + /** + * @example + * \`\`\` + * // Defaults to stdout + * log: ['query', 'info', 'warn'] + * + * // Emit as events + * log: [ + * { emit: 'stdout', level: 'query' }, + * { emit: 'stdout', level: 'info' }, + * { emit: 'stdout', level: 'warn' } + * ] + * \`\`\` + * Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/logging#the-log-option). + */ + log?: Array; + omit?: GlobalOmitOptions; + /** + * @internal + * You probably don't want to use this. \`__internal\` is used by internal tooling. + */ + __internal?: { + debug?: boolean; + engine?: { + cwd?: string; + binaryPath?: string; + endpoint?: string; + allowTriggerPanic?: boolean; + }; + /** This can be used for testing purposes */ + configOverride?: (config: GetPrismaClientConfig) => GetPrismaClientConfig; + }; +}; + +export declare class PrismaClientRustPanicError extends Error { + clientVersion: string; + constructor(message: string, clientVersion: string); + get [Symbol.toStringTag](): string; +} + +export declare class PrismaClientUnknownRequestError extends Error implements ErrorWithBatchIndex { + clientVersion: string; + batchRequestIdx?: number; + constructor(message: string, { clientVersion, batchRequestIdx }: UnknownErrorParams); + get [Symbol.toStringTag](): string; +} + +export declare class PrismaClientValidationError extends Error { + name: string; + clientVersion: string; + constructor(message: string, { clientVersion }: Options_2); + get [Symbol.toStringTag](): string; +} + +declare function prismaGraphQLToJSError({ error, user_facing_error }: RequestError, clientVersion: string, activeProvider: string): PrismaClientKnownRequestError | PrismaClientUnknownRequestError; + +declare type PrismaOperationSpec = { + args: TArgs; + action: TAction; + model: string; +}; + +export declare interface PrismaPromise extends Promise { + [Symbol.toStringTag]: 'PrismaPromise'; +} + +/** + * Prisma's `Promise` that is backwards-compatible. All additions on top of the + * original `Promise` are optional so that it can be backwards-compatible. + * @see [[createPrismaPromise]] + */ +declare interface PrismaPromise_2 = any> extends Promise { + get spec(): TSpec; + /** + * Extension of the original `.then` function + * @param onfulfilled same as regular promises + * @param onrejected same as regular promises + * @param transaction transaction options + */ + then(onfulfilled?: (value: TResult) => R1 | PromiseLike, onrejected?: (error: unknown) => R2 | PromiseLike, transaction?: PrismaPromiseTransaction): Promise; + /** + * Extension of the original `.catch` function + * @param onrejected same as regular promises + * @param transaction transaction options + */ + catch(onrejected?: ((reason: any) => R | PromiseLike) | undefined | null, transaction?: PrismaPromiseTransaction): Promise; + /** + * Extension of the original `.finally` function + * @param onfinally same as regular promises + * @param transaction transaction options + */ + finally(onfinally?: (() => void) | undefined | null, transaction?: PrismaPromiseTransaction): Promise; + /** + * Called when executing a batch of regular tx + * @param transaction transaction options for batch tx + */ + requestTransaction?(transaction: PrismaPromiseBatchTransaction): PromiseLike; +} + +declare type PrismaPromiseBatchTransaction = { + kind: 'batch'; + id: number; + isolationLevel?: IsolationLevel_2; + index: number; + lock: PromiseLike; +}; + +declare type PrismaPromiseCallback = (transaction?: PrismaPromiseTransaction) => Promise; + +/** + * Creates a [[PrismaPromise]]. It is Prisma's implementation of `Promise` which + * is essentially a proxy for `Promise`. All the transaction-compatible client + * methods return one, this allows for pre-preparing queries without executing + * them until `.then` is called. It's the foundation of Prisma's query batching. + * @param callback that will be wrapped within our promise implementation + * @see [[PrismaPromise]] + * @returns + */ +declare type PrismaPromiseFactory = >(callback: PrismaPromiseCallback, op?: T) => PrismaPromise_2; + +declare type PrismaPromiseInteractiveTransaction = { + kind: 'itx'; + id: string; + payload: PayloadType; +}; + +declare type PrismaPromiseTransaction = PrismaPromiseBatchTransaction | PrismaPromiseInteractiveTransaction; + +declare type PrismaValue = string | boolean | number | PrismaValue[] | null | Record | PrismaValuePlaceholder | PrismaValueGenerator; + +declare type PrismaValueGenerator = { + prisma__type: 'generatorCall'; + prisma__value: { + name: string; + args: PrismaValue[]; + }; +}; + +declare type PrismaValuePlaceholder = { + prisma__type: 'param'; + prisma__value: { + name: string; + type: string; + }; +}; + +export declare const PrivateResultType: unique symbol; + +declare type Provider = 'mysql' | 'postgres' | 'sqlite' | 'sqlserver'; + +declare namespace Public { + export { + validator + } +} +export { Public } + +declare namespace Public_2 { + export { + Args, + Result, + Payload, + PrismaPromise, + Operation, + Exact + } +} + +declare type Query = ReadonlyDeep_2<{ + name: string; + args: SchemaArg[]; + output: QueryOutput; +}>; + +declare interface Queryable extends AdapterInfo { + /** + * Execute a query and return its result. + */ + queryRaw(params: Query): Promise; + /** + * Execute a query and return the number of affected rows. + */ + executeRaw(params: Query): Promise; +} + +declare type QueryCompiler = { + compile(request: string): {}; + compileBatch(batchRequest: string): BatchResponse; + free(): void; +}; + +declare interface QueryCompilerConstructor { + new (options: QueryCompilerOptions): QueryCompiler; +} + +declare type QueryCompilerOptions = { + datamodel: string; + provider: Provider; + connectionInfo: ConnectionInfo; +}; + +declare type QueryEngineBatchGraphQLRequest = { + batch: QueryEngineRequest[]; + transaction?: boolean; + isolationLevel?: IsolationLevel_2; +}; + +declare type QueryEngineBatchRequest = QueryEngineBatchGraphQLRequest | JsonBatchQuery; + +declare type QueryEngineConfig = { + datamodel: string; + configDir: string; + logQueries: boolean; + ignoreEnvVarErrors: boolean; + datasourceOverrides: Record; + env: Record; + logLevel: QueryEngineLogLevel; + engineProtocol: QueryEngineProtocol; + enableTracing: boolean; +}; + +declare interface QueryEngineConstructor { + new (config: QueryEngineConfig, logger: (log: string) => void, adapter?: ErrorCapturingSqlDriverAdapter): QueryEngineInstance; +} + +declare type QueryEngineInstance = { + connect(headers: string, requestId: string): Promise; + disconnect(headers: string, requestId: string): Promise; + /** + * Frees any resources allocated by the engine's WASM instance. This method is automatically created by WASM bindgen. + * Noop for other engines. + */ + free?(): void; + /** + * @param requestStr JSON.stringified `QueryEngineRequest | QueryEngineBatchRequest` + * @param headersStr JSON.stringified `QueryEngineRequestHeaders` + */ + query(requestStr: string, headersStr: string, transactionId: string | undefined, requestId: string): Promise; + sdlSchema?(): Promise; + startTransaction(options: string, traceHeaders: string, requestId: string): Promise; + commitTransaction(id: string, traceHeaders: string, requestId: string): Promise; + rollbackTransaction(id: string, traceHeaders: string, requestId: string): Promise; + metrics?(options: string): Promise; + applyPendingMigrations?(): Promise; + trace(requestId: string): Promise; +}; + +declare type QueryEngineLogLevel = 'trace' | 'debug' | 'info' | 'warn' | 'error' | 'off'; + +declare type QueryEngineProtocol = 'graphql' | 'json'; + +declare type QueryEngineRequest = { + query: string; + variables: Object; +}; + +declare type QueryEngineResultData = { + data: T; +}; + +declare type QueryEvent = { + timestamp: Date; + query: string; + params: string; + duration: number; + target: string; +}; + +declare type QueryEventType = 'query'; + +declare type QueryIntrospectionBuiltinType = 'int' | 'bigint' | 'float' | 'double' | 'string' | 'enum' | 'bytes' | 'bool' | 'char' | 'decimal' | 'json' | 'xml' | 'uuid' | 'datetime' | 'date' | 'time' | 'int-array' | 'bigint-array' | 'float-array' | 'double-array' | 'string-array' | 'char-array' | 'bytes-array' | 'bool-array' | 'decimal-array' | 'json-array' | 'xml-array' | 'uuid-array' | 'datetime-array' | 'date-array' | 'time-array' | 'null' | 'unknown'; + +declare type QueryMiddlewareParams = { + /** The model this is executed on */ + model?: string; + /** The action that is being handled */ + action: Action; + /** TODO what is this */ + dataPath: string[]; + /** TODO what is this */ + runInTransaction: boolean; + args?: UserArgs_2; +}; + +export declare type QueryOptions = { + query: { + [ModelName in string]: { + [ModelAction in string]: ModelQueryOptionsCb; + } | QueryOptionsCb; + }; +}; + +export declare type QueryOptionsCb = (args: QueryOptionsCbArgs) => Promise; + +export declare type QueryOptionsCbArgs = { + model?: string; + operation: string; + args: JsArgs | RawQueryArgs; + query: (args: JsArgs | RawQueryArgs) => Promise; +}; + +declare type QueryOutput = ReadonlyDeep_2<{ + name: string; + isRequired: boolean; + isList: boolean; +}>; + +declare type QueryPlanBinding = { + name: string; + expr: QueryPlanNode; +}; + +declare type QueryPlanDbQuery = { + type: 'rawSql'; + sql: string; + args: PrismaValue[]; + argTypes: ArgType[]; +} | { + type: 'templateSql'; + fragments: Fragment[]; + placeholderFormat: PlaceholderFormat; + args: PrismaValue[]; + argTypes: DynamicArgType[]; + chunkable: boolean; +}; + +declare type QueryPlanNode = { + type: 'value'; + args: PrismaValue; +} | { + type: 'seq'; + args: QueryPlanNode[]; +} | { + type: 'get'; + args: { + name: string; + }; +} | { + type: 'let'; + args: { + bindings: QueryPlanBinding[]; + expr: QueryPlanNode; + }; +} | { + type: 'getFirstNonEmpty'; + args: { + names: string[]; + }; +} | { + type: 'query'; + args: QueryPlanDbQuery; +} | { + type: 'execute'; + args: QueryPlanDbQuery; +} | { + type: 'reverse'; + args: QueryPlanNode; +} | { + type: 'sum'; + args: QueryPlanNode[]; +} | { + type: 'concat'; + args: QueryPlanNode[]; +} | { + type: 'unique'; + args: QueryPlanNode; +} | { + type: 'required'; + args: QueryPlanNode; +} | { + type: 'join'; + args: { + parent: QueryPlanNode; + children: JoinExpression[]; + }; +} | { + type: 'mapField'; + args: { + field: string; + records: QueryPlanNode; + }; +} | { + type: 'transaction'; + args: QueryPlanNode; +} | { + type: 'dataMap'; + args: { + expr: QueryPlanNode; + structure: ResultNode; + enums: Record>; + }; +} | { + type: 'validate'; + args: { + expr: QueryPlanNode; + rules: DataRule[]; + } & ValidationError; +} | { + type: 'if'; + args: { + value: QueryPlanNode; + rule: DataRule; + then: QueryPlanNode; + else: QueryPlanNode; + }; +} | { + type: 'unit'; +} | { + type: 'diff'; + args: { + from: QueryPlanNode; + to: QueryPlanNode; + fields: string[]; + }; +} | { + type: 'initializeRecord'; + args: { + expr: QueryPlanNode; + fields: Record; + }; +} | { + type: 'mapRecord'; + args: { + expr: QueryPlanNode; + fields: Record; + }; +} | { + type: 'process'; + args: { + expr: QueryPlanNode; + operations: InMemoryOps; + }; +}; + +/** + * Create raw SQL statement. + */ +export declare function raw(value: string): Sql; + +export declare type RawParameters = { + __prismaRawParameters__: true; + values: string; +}; + +export declare type RawQueryArgs = Sql | UnknownTypedSql | [query: string, ...values: RawValue[]]; + +declare type RawResponse = { + columns: string[]; + types: QueryIntrospectionBuiltinType[]; + rows: unknown[][]; +}; + +declare type RawTaggedValue = { + $type: 'Raw'; + value: unknown; +}; + +/** + * Supported value or SQL instance. + */ +export declare type RawValue = Value | Sql; + +export declare type ReadonlyDeep = { + readonly [K in keyof T]: ReadonlyDeep; +}; + +declare type ReadonlyDeep_2 = { + +readonly [K in keyof O]: ReadonlyDeep_2; +}; + +declare type Record_2 = { + [P in T]: U; +}; +export { Record_2 as Record } + +export declare type RenameAndNestPayloadKeys

= { + [K in keyof P as K extends 'scalars' | 'objects' | 'composites' ? keyof P[K] : never]: P[K]; +}; + +declare type RequestBatchOptions = { + transaction?: TransactionOptions_2; + traceparent?: string; + numTry?: number; + containsWrite: boolean; + customDataProxyFetch?: AccelerateExtensionFetchDecorator; +}; + +declare interface RequestError { + error: string; + user_facing_error: { + is_panic: boolean; + message: string; + meta?: Record; + error_code?: string; + batch_request_idx?: number; + }; +} + +declare class RequestHandler { + client: Client; + dataloader: DataLoader; + private logEmitter?; + constructor(client: Client, logEmitter?: LogEmitter); + request(params: RequestParams): Promise; + mapQueryEngineResult({ dataPath, unpacker }: RequestParams, response: QueryEngineResultData): any; + /** + * Handles the error and logs it, logging the error is done synchronously waiting for the event + * handlers to finish. + */ + handleAndLogRequestError(params: HandleErrorParams): never; + handleRequestError({ error, clientMethod, callsite, transaction, args, modelName, globalOmit, }: HandleErrorParams): never; + sanitizeMessage(message: any): any; + unpack(data: unknown, dataPath: string[], unpacker?: Unpacker): any; + get [Symbol.toStringTag](): string; +} + +declare type RequestOptions = { + traceparent?: string; + numTry?: number; + interactiveTransaction?: InteractiveTransactionOptions; + isWrite: boolean; + customDataProxyFetch?: AccelerateExtensionFetchDecorator; +}; + +declare type RequestParams = { + modelName?: string; + action: Action; + protocolQuery: JsonQuery; + dataPath: string[]; + clientMethod: string; + callsite?: CallSite; + transaction?: PrismaPromiseTransaction; + extensions: MergedExtensionsList; + args?: any; + headers?: Record; + unpacker?: Unpacker; + otelParentCtx?: Context; + otelChildCtx?: Context; + globalOmit?: GlobalOmitOptions; + customDataProxyFetch?: AccelerateExtensionFetchDecorator; +}; + +declare type RequiredExtensionArgs = NameArgs & ResultArgs & ModelArgs & ClientArgs & QueryOptions; +export { RequiredExtensionArgs } +export { RequiredExtensionArgs as UserArgs } + +export declare type RequiredKeys = { + [K in keyof O]-?: {} extends Pick_2 ? never : K; +}[keyof O]; + +declare function resolveDatasourceUrl({ inlineDatasources, overrideDatasources, env, clientVersion, }: { + inlineDatasources: GetPrismaClientConfig['inlineDatasources']; + overrideDatasources: Datasources; + env: Record; + clientVersion: string; +}): string; + +export declare type Result = T extends { + [K: symbol]: { + types: { + payload: any; + }; + }; +} ? GetResult : GetResult<{ + composites: {}; + objects: {}; + scalars: {}; + name: ''; +}, {}, F>; + +export declare type Result_2 = Result; + +declare namespace Result_3 { + export { + Count, + GetFindResult, + SelectablePayloadFields, + SelectField, + DefaultSelection, + UnwrapPayload, + ApplyOmit, + OmitValue, + GetCountResult, + Aggregate, + GetAggregateResult, + GetBatchResult, + GetGroupByResult, + GetResult, + ExtractGlobalOmit + } +} + +declare type Result_4 = { + map(fn: (value: T) => U): Result_4; + flatMap(fn: (value: T) => Result_4): Result_4; +} & ({ + readonly ok: true; + readonly value: T; +} | { + readonly ok: false; + readonly error: Error_2; +}); + +export declare type ResultArg = { + [FieldName in string]: ResultFieldDefinition; +}; + +export declare type ResultArgs = { + result: { + [ModelName in string]: ResultArg; + }; +}; + +export declare type ResultArgsFieldCompute = (model: any) => unknown; + +export declare type ResultFieldDefinition = { + needs?: { + [FieldName in string]: boolean; + }; + compute: ResultArgsFieldCompute; +}; + +declare type ResultNode = { + type: 'affectedRows'; +} | { + type: 'object'; + fields: Record; + serializedName: string | null; + skipNulls: boolean; +} | { + type: 'field'; + dbName: string; + fieldType: FieldType; +}; + +export declare type Return = T extends (...args: any[]) => infer R ? R : T; + +export declare type RuntimeDataModel = { + readonly models: Record; + readonly enums: Record; + readonly types: Record; +}; + +declare type RuntimeEnum = Omit; + +declare type RuntimeModel = Omit; + +declare type RuntimeName = 'workerd' | 'deno' | 'netlify' | 'node' | 'bun' | 'edge-light' | ''; + +declare type Schema = ReadonlyDeep_2<{ + rootQueryType?: string; + rootMutationType?: string; + inputObjectTypes: { + model?: InputType[]; + prisma?: InputType[]; + }; + outputObjectTypes: { + model: OutputType[]; + prisma: OutputType[]; + }; + enumTypes: { + model?: SchemaEnum[]; + prisma: SchemaEnum[]; + }; + fieldRefTypes: { + prisma?: FieldRefType[]; + }; +}>; + +declare type SchemaArg = ReadonlyDeep_2<{ + name: string; + comment?: string; + isNullable: boolean; + isRequired: boolean; + inputTypes: InputTypeRef[]; + requiresOtherFields?: string[]; + deprecation?: Deprecation; +}>; + +declare type SchemaEnum = ReadonlyDeep_2<{ + name: string; + values: string[]; +}>; + +declare type SchemaField = ReadonlyDeep_2<{ + name: string; + isNullable?: boolean; + outputType: OutputTypeRef; + args: SchemaArg[]; + deprecation?: Deprecation; + documentation?: string; +}>; + +export declare type Select = T extends U ? T : never; + +export declare type SelectablePayloadFields = { + objects: { + [k in K]: O; + }; +} | { + composites: { + [k in K]: O; + }; +}; + +export declare type SelectField

, K extends PropertyKey> = P extends { + objects: Record; +} ? P['objects'][K] : P extends { + composites: Record; +} ? P['composites'][K] : never; + +declare type Selection_2 = Record; +export { Selection_2 as Selection } + +export declare function serializeJsonQuery({ modelName, action, args, runtimeDataModel, extensions, callsite, clientMethod, errorFormat, clientVersion, previewFeatures, globalOmit, }: SerializeParams): JsonQuery; + +declare type SerializeParams = { + runtimeDataModel: RuntimeDataModel; + modelName?: string; + action: Action; + args?: JsArgs; + extensions?: MergedExtensionsList; + callsite?: CallSite; + clientMethod: string; + clientVersion: string; + errorFormat: ErrorFormat; + previewFeatures: string[]; + globalOmit?: GlobalOmitOptions; +}; + +declare class Skip { + constructor(param?: symbol); + ifUndefined(value: T | undefined): T | Skip; +} + +export declare const skip: Skip; + +declare type SortOrder = 'asc' | 'desc'; + +/** + * An interface that represents a span. A span represents a single operation + * within a trace. Examples of span might include remote procedure calls or a + * in-process function calls to sub-components. A Trace has a single, top-level + * "root" Span that in turn may have zero or more child Spans, which in turn + * may have children. + * + * Spans are created by the {@link Tracer.startSpan} method. + */ +declare interface Span { + /** + * Returns the {@link SpanContext} object associated with this Span. + * + * Get an immutable, serializable identifier for this span that can be used + * to create new child spans. Returned SpanContext is usable even after the + * span ends. + * + * @returns the SpanContext object associated with this Span. + */ + spanContext(): SpanContext; + /** + * Sets an attribute to the span. + * + * Sets a single Attribute with the key and value passed as arguments. + * + * @param key the key for this attribute. + * @param value the value for this attribute. Setting a value null or + * undefined is invalid and will result in undefined behavior. + */ + setAttribute(key: string, value: SpanAttributeValue): this; + /** + * Sets attributes to the span. + * + * @param attributes the attributes that will be added. + * null or undefined attribute values + * are invalid and will result in undefined behavior. + */ + setAttributes(attributes: SpanAttributes): this; + /** + * Adds an event to the Span. + * + * @param name the name of the event. + * @param [attributesOrStartTime] the attributes that will be added; these are + * associated with this event. Can be also a start time + * if type is {@type TimeInput} and 3rd param is undefined + * @param [startTime] start time of the event. + */ + addEvent(name: string, attributesOrStartTime?: SpanAttributes | TimeInput, startTime?: TimeInput): this; + /** + * Adds a single link to the span. + * + * Links added after the creation will not affect the sampling decision. + * It is preferred span links be added at span creation. + * + * @param link the link to add. + */ + addLink(link: Link): this; + /** + * Adds multiple links to the span. + * + * Links added after the creation will not affect the sampling decision. + * It is preferred span links be added at span creation. + * + * @param links the links to add. + */ + addLinks(links: Link[]): this; + /** + * Sets a status to the span. If used, this will override the default Span + * status. Default is {@link SpanStatusCode.UNSET}. SetStatus overrides the value + * of previous calls to SetStatus on the Span. + * + * @param status the SpanStatus to set. + */ + setStatus(status: SpanStatus): this; + /** + * Updates the Span name. + * + * This will override the name provided via {@link Tracer.startSpan}. + * + * Upon this update, any sampling behavior based on Span name will depend on + * the implementation. + * + * @param name the Span name. + */ + updateName(name: string): this; + /** + * Marks the end of Span execution. + * + * Call to End of a Span MUST not have any effects on child spans. Those may + * still be running and can be ended later. + * + * Do not return `this`. The Span generally should not be used after it + * is ended so chaining is not desired in this context. + * + * @param [endTime] the time to set as Span's end time. If not provided, + * use the current time as the span's end time. + */ + end(endTime?: TimeInput): void; + /** + * Returns the flag whether this span will be recorded. + * + * @returns true if this Span is active and recording information like events + * with the `AddEvent` operation and attributes using `setAttributes`. + */ + isRecording(): boolean; + /** + * Sets exception as a span event + * @param exception the exception the only accepted values are string or Error + * @param [time] the time to set as Span's event time. If not provided, + * use the current time. + */ + recordException(exception: Exception, time?: TimeInput): void; +} + +/** + * @deprecated please use {@link Attributes} + */ +declare type SpanAttributes = Attributes; + +/** + * @deprecated please use {@link AttributeValue} + */ +declare type SpanAttributeValue = AttributeValue; + +declare type SpanCallback = (span?: Span, context?: Context) => R; + +/** + * A SpanContext represents the portion of a {@link Span} which must be + * serialized and propagated along side of a {@link Baggage}. + */ +declare interface SpanContext { + /** + * The ID of the trace that this span belongs to. It is worldwide unique + * with practically sufficient probability by being made as 16 randomly + * generated bytes, encoded as a 32 lowercase hex characters corresponding to + * 128 bits. + */ + traceId: string; + /** + * The ID of the Span. It is globally unique with practically sufficient + * probability by being made as 8 randomly generated bytes, encoded as a 16 + * lowercase hex characters corresponding to 64 bits. + */ + spanId: string; + /** + * Only true if the SpanContext was propagated from a remote parent. + */ + isRemote?: boolean; + /** + * Trace flags to propagate. + * + * It is represented as 1 byte (bitmap). Bit to represent whether trace is + * sampled or not. When set, the least significant bit documents that the + * caller may have recorded trace data. A caller who does not record trace + * data out-of-band leaves this flag unset. + * + * see {@link TraceFlags} for valid flag values. + */ + traceFlags: number; + /** + * Tracing-system-specific info to propagate. + * + * The tracestate field value is a `list` as defined below. The `list` is a + * series of `list-members` separated by commas `,`, and a list-member is a + * key/value pair separated by an equals sign `=`. Spaces and horizontal tabs + * surrounding `list-members` are ignored. There can be a maximum of 32 + * `list-members` in a `list`. + * More Info: https://www.w3.org/TR/trace-context/#tracestate-field + * + * Examples: + * Single tracing system (generic format): + * tracestate: rojo=00f067aa0ba902b7 + * Multiple tracing systems (with different formatting): + * tracestate: rojo=00f067aa0ba902b7,congo=t61rcWkgMzE + */ + traceState?: TraceState; +} + +declare enum SpanKind { + /** Default value. Indicates that the span is used internally. */ + INTERNAL = 0, + /** + * Indicates that the span covers server-side handling of an RPC or other + * remote request. + */ + SERVER = 1, + /** + * Indicates that the span covers the client-side wrapper around an RPC or + * other remote request. + */ + CLIENT = 2, + /** + * Indicates that the span describes producer sending a message to a + * broker. Unlike client and server, there is no direct critical path latency + * relationship between producer and consumer spans. + */ + PRODUCER = 3, + /** + * Indicates that the span describes consumer receiving a message from a + * broker. Unlike client and server, there is no direct critical path latency + * relationship between producer and consumer spans. + */ + CONSUMER = 4 +} + +/** + * Options needed for span creation + */ +declare interface SpanOptions { + /** + * The SpanKind of a span + * @default {@link SpanKind.INTERNAL} + */ + kind?: SpanKind; + /** A span's attributes */ + attributes?: SpanAttributes; + /** {@link Link}s span to other spans */ + links?: Link[]; + /** A manually specified start time for the created `Span` object. */ + startTime?: TimeInput; + /** The new span should be a root span. (Ignore parent from context). */ + root?: boolean; +} + +declare interface SpanStatus { + /** The status code of this message. */ + code: SpanStatusCode; + /** A developer-facing error message. */ + message?: string; +} + +/** + * An enumeration of status codes. + */ +declare enum SpanStatusCode { + /** + * The default status. + */ + UNSET = 0, + /** + * The operation has been validated by an Application developer or + * Operator to have completed successfully. + */ + OK = 1, + /** + * The operation contains an error. + */ + ERROR = 2 +} + +/** + * A SQL instance can be nested within each other to build SQL strings. + */ +export declare class Sql { + readonly values: Value[]; + readonly strings: string[]; + constructor(rawStrings: readonly string[], rawValues: readonly RawValue[]); + get sql(): string; + get statement(): string; + get text(): string; + inspect(): { + sql: string; + statement: string; + text: string; + values: unknown[]; + }; +} + +declare interface SqlDriverAdapter extends SqlQueryable { + /** + * Execute multiple SQL statements separated by semicolon. + */ + executeScript(script: string): Promise; + /** + * Start new transaction. + */ + startTransaction(isolationLevel?: IsolationLevel): Promise; + /** + * Optional method that returns extra connection info + */ + getConnectionInfo?(): ConnectionInfo; + /** + * Dispose of the connection and release any resources. + */ + dispose(): Promise; +} + +export declare interface SqlDriverAdapterFactory extends DriverAdapterFactory { + connect(): Promise; +} + +declare type SqlQuery = { + sql: string; + args: Array; + argTypes: Array; +}; + +declare interface SqlQueryable extends Queryable { +} + +declare interface SqlResultSet { + /** + * List of column types appearing in a database query, in the same order as `columnNames`. + * They are used within the Query Engine to convert values from JS to Quaint values. + */ + columnTypes: Array; + /** + * List of column names appearing in a database query, in the same order as `columnTypes`. + */ + columnNames: Array; + /** + * List of rows retrieved from a database query. + * Each row is a list of values, whose length matches `columnNames` and `columnTypes`. + */ + rows: Array>; + /** + * The last ID of an `INSERT` statement, if any. + * This is required for `AUTO_INCREMENT` columns in databases based on MySQL and SQLite. + */ + lastInsertId?: string; +} + +/** + * Create a SQL object from a template string. + */ +export declare function sqltag(strings: readonly string[], ...values: readonly RawValue[]): Sql; + +/** + * Defines TimeInput. + * + * hrtime, epoch milliseconds, performance.now() or Date + */ +declare type TimeInput = HrTime_2 | number | Date; + +export declare type ToTuple = T extends any[] ? T : [T]; + +declare interface TraceState { + /** + * Create a new TraceState which inherits from this TraceState and has the + * given key set. + * The new entry will always be added in the front of the list of states. + * + * @param key key of the TraceState entry. + * @param value value of the TraceState entry. + */ + set(key: string, value: string): TraceState; + /** + * Return a new TraceState which inherits from this TraceState but does not + * contain the given key. + * + * @param key the key for the TraceState entry to be removed. + */ + unset(key: string): TraceState; + /** + * Returns the value to which the specified key is mapped, or `undefined` if + * this map contains no mapping for the key. + * + * @param key with which the specified value is to be associated. + * @returns the value to which the specified key is mapped, or `undefined` if + * this map contains no mapping for the key. + */ + get(key: string): string | undefined; + /** + * Serializes the TraceState to a `list` as defined below. The `list` is a + * series of `list-members` separated by commas `,`, and a list-member is a + * key/value pair separated by an equals sign `=`. Spaces and horizontal tabs + * surrounding `list-members` are ignored. There can be a maximum of 32 + * `list-members` in a `list`. + * + * @returns the serialized string. + */ + serialize(): string; +} + +declare interface TracingHelper { + isEnabled(): boolean; + getTraceParent(context?: Context): string; + dispatchEngineSpans(spans: EngineSpan[]): void; + getActiveContext(): Context | undefined; + runInChildSpan(nameOrOptions: string | ExtendedSpanOptions, callback: SpanCallback): R; +} + +declare interface Transaction extends AdapterInfo, SqlQueryable { + /** + * Transaction options. + */ + readonly options: TransactionOptions; + /** + * Commit the transaction. + */ + commit(): Promise; + /** + * Roll back the transaction. + */ + rollback(): Promise; +} + +declare namespace Transaction_2 { + export { + Options, + IsolationLevel_2 as IsolationLevel, + InteractiveTransactionInfo, + TransactionHeaders + } +} + +declare type TransactionHeaders = { + traceparent?: string; +}; + +declare type TransactionOptions = { + usePhantomQuery: boolean; +}; + +declare type TransactionOptions_2 = { + kind: 'itx'; + options: InteractiveTransactionOptions; +} | { + kind: 'batch'; + options: BatchTransactionOptions; +}; + +export declare class TypedSql { + [PrivateResultType]: Result; + constructor(sql: string, values: Values); + get sql(): string; + get values(): Values; +} + +export declare type TypeMapCbDef = Fn<{ + extArgs: InternalArgs; +}, TypeMapDef>; + +/** Shared */ +export declare type TypeMapDef = Record; + +declare type TypeRef = { + isList: boolean; + type: string; + location: AllowedLocations; + namespace?: FieldNamespace; +}; + +declare namespace Types { + export { + Result_3 as Result, + Extensions_2 as Extensions, + Utils, + Public_2 as Public, + isSkip, + Skip, + skip, + UnknownTypedSql, + OperationPayload as Payload + } +} +export { Types } + +declare type uniqueIndex = ReadonlyDeep_2<{ + name: string; + fields: string[]; +}>; + +declare type UnknownErrorParams = { + clientVersion: string; + batchRequestIdx?: number; +}; + +export declare type UnknownTypedSql = TypedSql; + +declare type Unpacker = (data: any) => any; + +export declare type UnwrapPayload

= {} extends P ? unknown : { + [K in keyof P]: P[K] extends { + scalars: infer S; + composites: infer C; + }[] ? Array> : P[K] extends { + scalars: infer S; + composites: infer C; + } | null ? S & UnwrapPayload | Select : never; +}; + +export declare type UnwrapPromise

= P extends Promise ? R : P; + +export declare type UnwrapTuple = { + [K in keyof Tuple]: K extends `${number}` ? Tuple[K] extends PrismaPromise ? X : UnwrapPromise : UnwrapPromise; +}; + +/** + * Input that flows from the user into the Client. + */ +declare type UserArgs_2 = any; + +declare namespace Utils { + export { + EmptyToUnknown, + NeverToUnknown, + PatchFlat, + Omit_2 as Omit, + Pick_2 as Pick, + ComputeDeep, + Compute, + OptionalFlat, + ReadonlyDeep, + Narrowable, + Narrow, + Exact, + Cast, + Record_2 as Record, + UnwrapPromise, + UnwrapTuple, + Path, + Fn, + Call, + RequiredKeys, + OptionalKeys, + Optional, + Return, + ToTuple, + RenameAndNestPayloadKeys, + PayloadToResult, + Select, + Equals, + Or, + JsPromise + } +} + +declare type ValidationError = { + error_identifier: 'RELATION_VIOLATION'; + context: { + relation: string; + modelA: string; + modelB: string; + }; +} | { + error_identifier: 'MISSING_RELATED_RECORD'; + context: { + model: string; + relation: string; + relationType: string; + operation: string; + neededFor?: string; + }; +} | { + error_identifier: 'MISSING_RECORD'; + context: { + operation: string; + }; +} | { + error_identifier: 'INCOMPLETE_CONNECT_INPUT'; + context: { + expectedRows: number; + }; +} | { + error_identifier: 'INCOMPLETE_CONNECT_OUTPUT'; + context: { + expectedRows: number; + relation: string; + relationType: string; + }; +} | { + error_identifier: 'RECORDS_NOT_CONNECTED'; + context: { + relation: string; + parent: string; + child: string; + }; +}; + +declare function validator(): (select: Exact) => S; + +declare function validator, O extends keyof C[M] & Operation>(client: C, model: M, operation: O): (select: Exact>) => S; + +declare function validator, O extends keyof C[M] & Operation, P extends keyof Args>(client: C, model: M, operation: O, prop: P): (select: Exact[P]>) => S; + +/** + * Values supported by SQL engine. + */ +export declare type Value = unknown; + +export declare function warnEnvConflicts(envPaths: any): void; + +export declare const warnOnce: (key: string, message: string, ...args: unknown[]) => void; + +export { } diff --git a/generated/prisma/runtime/library.js b/generated/prisma/runtime/library.js index f5a9561e..de550ec6 100644 --- a/generated/prisma/runtime/library.js +++ b/generated/prisma/runtime/library.js @@ -1,7712 +1,76 @@ + /* !!! This is code generated by Prisma. Do not edit directly. !!! /* eslint-disable */ // biome-ignore-all lint: generated file -"use strict"; -var yu = Object.create; -var jt = Object.defineProperty; -var bu = Object.getOwnPropertyDescriptor; -var Eu = Object.getOwnPropertyNames; -var wu = Object.getPrototypeOf, - xu = Object.prototype.hasOwnProperty; -var Do = (e, r) => () => (e && (r = e((e = 0))), r); -var ue = (e, r) => () => (r || e((r = { exports: {} }).exports, r), r.exports), - tr = (e, r) => { - for (var t in r) jt(e, t, { get: r[t], enumerable: !0 }); - }, - Oo = (e, r, t, n) => { - if ((r && typeof r == "object") || typeof r == "function") - for (let i of Eu(r)) - !xu.call(e, i) && - i !== t && - jt(e, i, { - get: () => r[i], - enumerable: !(n = bu(r, i)) || n.enumerable, - }); - return e; - }; -var O = (e, r, t) => ( - (t = e != null ? yu(wu(e)) : {}), - Oo( - r || !e || !e.__esModule - ? jt(t, "default", { value: e, enumerable: !0 }) - : t, - e, - ) - ), - vu = (e) => Oo(jt({}, "__esModule", { value: !0 }), e); -var hi = ue((_g, is) => { - "use strict"; - is.exports = (e, r = process.argv) => { - let t = e.startsWith("-") ? "" : e.length === 1 ? "-" : "--", - n = r.indexOf(t + e), - i = r.indexOf("--"); - return n !== -1 && (i === -1 || n < i); - }; -}); -var as = ue((Ng, ss) => { - "use strict"; - var Fc = require("node:os"), - os = require("node:tty"), - de = hi(), - { env: G } = process, - Qe; - de("no-color") || de("no-colors") || de("color=false") || de("color=never") - ? (Qe = 0) - : (de("color") || de("colors") || de("color=true") || de("color=always")) && - (Qe = 1); - "FORCE_COLOR" in G && - (G.FORCE_COLOR === "true" - ? (Qe = 1) - : G.FORCE_COLOR === "false" - ? (Qe = 0) - : (Qe = - G.FORCE_COLOR.length === 0 - ? 1 - : Math.min(parseInt(G.FORCE_COLOR, 10), 3))); - function yi(e) { - return e === 0 - ? !1 - : { level: e, hasBasic: !0, has256: e >= 2, has16m: e >= 3 }; - } - function bi(e, r) { - if (Qe === 0) return 0; - if (de("color=16m") || de("color=full") || de("color=truecolor")) return 3; - if (de("color=256")) return 2; - if (e && !r && Qe === void 0) return 0; - let t = Qe || 0; - if (G.TERM === "dumb") return t; - if (process.platform === "win32") { - let n = Fc.release().split("."); - return Number(n[0]) >= 10 && Number(n[2]) >= 10586 - ? Number(n[2]) >= 14931 - ? 3 - : 2 - : 1; - } - if ("CI" in G) - return [ - "TRAVIS", - "CIRCLECI", - "APPVEYOR", - "GITLAB_CI", - "GITHUB_ACTIONS", - "BUILDKITE", - ].some((n) => n in G) || G.CI_NAME === "codeship" - ? 1 - : t; - if ("TEAMCITY_VERSION" in G) - return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(G.TEAMCITY_VERSION) ? 1 : 0; - if (G.COLORTERM === "truecolor") return 3; - if ("TERM_PROGRAM" in G) { - let n = parseInt((G.TERM_PROGRAM_VERSION || "").split(".")[0], 10); - switch (G.TERM_PROGRAM) { - case "iTerm.app": - return n >= 3 ? 3 : 2; - case "Apple_Terminal": - return 2; - } - } - return /-256(color)?$/i.test(G.TERM) - ? 2 - : /^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test( - G.TERM, - ) || "COLORTERM" in G - ? 1 - : t; - } - function Mc(e) { - let r = bi(e, e && e.isTTY); - return yi(r); - } - ss.exports = { - supportsColor: Mc, - stdout: yi(bi(!0, os.isatty(1))), - stderr: yi(bi(!0, os.isatty(2))), - }; -}); -var cs = ue((Lg, us) => { - "use strict"; - var $c = as(), - br = hi(); - function ls(e) { - if (/^\d{3,4}$/.test(e)) { - let t = /(\d{1,2})(\d{2})/.exec(e) || []; - return { major: 0, minor: parseInt(t[1], 10), patch: parseInt(t[2], 10) }; - } - let r = (e || "").split(".").map((t) => parseInt(t, 10)); - return { major: r[0], minor: r[1], patch: r[2] }; - } - function Ei(e) { - let { - CI: r, - FORCE_HYPERLINK: t, - NETLIFY: n, - TEAMCITY_VERSION: i, - TERM_PROGRAM: o, - TERM_PROGRAM_VERSION: s, - VTE_VERSION: a, - TERM: l, - } = process.env; - if (t) return !(t.length > 0 && parseInt(t, 10) === 0); - if ( - br("no-hyperlink") || - br("no-hyperlinks") || - br("hyperlink=false") || - br("hyperlink=never") - ) - return !1; - if (br("hyperlink=true") || br("hyperlink=always") || n) return !0; - if (!$c.supportsColor(e) || (e && !e.isTTY)) return !1; - if ("WT_SESSION" in process.env) return !0; - if (process.platform === "win32" || r || i) return !1; - if (o) { - let u = ls(s || ""); - switch (o) { - case "iTerm.app": - return u.major === 3 ? u.minor >= 1 : u.major > 3; - case "WezTerm": - return u.major >= 20200620; - case "vscode": - return u.major > 1 || (u.major === 1 && u.minor >= 72); - case "ghostty": - return !0; - } - } - if (a) { - if (a === "0.50.0") return !1; - let u = ls(a); - return u.major > 0 || u.minor >= 50; - } - switch (l) { - case "alacritty": - return !0; - } - return !1; - } - us.exports = { - supportsHyperlink: Ei, - stdout: Ei(process.stdout), - stderr: Ei(process.stderr), - }; -}); -var ps = ue((Kg, qc) => { - qc.exports = { - name: "@prisma/internals", - version: "6.19.2", - description: "This package is intended for Prisma's internal use", - main: "dist/index.js", - types: "dist/index.d.ts", - repository: { - type: "git", - url: "https://github.com/prisma/prisma.git", - directory: "packages/internals", - }, - homepage: "https://www.prisma.io", - author: "Tim Suchanek ", - bugs: "https://github.com/prisma/prisma/issues", - license: "Apache-2.0", - scripts: { - dev: "DEV=true tsx helpers/build.ts", - build: "tsx helpers/build.ts", - test: "dotenv -e ../../.db.env -- jest --silent", - prepublishOnly: "pnpm run build", - }, - files: [ - "README.md", - "dist", - "!**/libquery_engine*", - "!dist/get-generators/engines/*", - "scripts", - ], - devDependencies: { - "@babel/helper-validator-identifier": "7.25.9", - "@opentelemetry/api": "1.9.0", - "@swc/core": "1.11.5", - "@swc/jest": "0.2.37", - "@types/babel__helper-validator-identifier": "7.15.2", - "@types/jest": "29.5.14", - "@types/node": "18.19.76", - "@types/resolve": "1.20.6", - archiver: "6.0.2", - "checkpoint-client": "1.1.33", - "cli-truncate": "4.0.0", - dotenv: "16.5.0", - empathic: "2.0.0", - "escape-string-regexp": "5.0.0", - execa: "8.0.1", - "fast-glob": "3.3.3", - "find-up": "7.0.0", - "fp-ts": "2.16.9", - "fs-extra": "11.3.0", - "global-directory": "4.0.0", - globby: "11.1.0", - "identifier-regex": "1.0.0", - "indent-string": "4.0.0", - "is-windows": "1.0.2", - "is-wsl": "3.1.0", - jest: "29.7.0", - "jest-junit": "16.0.0", - kleur: "4.1.5", - "mock-stdin": "1.0.0", - "new-github-issue-url": "0.2.1", - "node-fetch": "3.3.2", - "npm-packlist": "5.1.3", - open: "7.4.2", - "p-map": "4.0.0", - resolve: "1.22.10", - "string-width": "7.2.0", - "strip-indent": "4.0.0", - "temp-dir": "2.0.0", - tempy: "1.0.1", - "terminal-link": "4.0.0", - tmp: "0.2.3", - "ts-pattern": "5.6.2", - "ts-toolbelt": "9.6.0", - typescript: "5.4.5", - yarn: "1.22.22", - }, - dependencies: { - "@prisma/config": "workspace:*", - "@prisma/debug": "workspace:*", - "@prisma/dmmf": "workspace:*", - "@prisma/driver-adapter-utils": "workspace:*", - "@prisma/engines": "workspace:*", - "@prisma/fetch-engine": "workspace:*", - "@prisma/generator": "workspace:*", - "@prisma/generator-helper": "workspace:*", - "@prisma/get-platform": "workspace:*", - "@prisma/prisma-schema-wasm": - "7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7", - "@prisma/schema-engine-wasm": - "7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7", - "@prisma/schema-files-loader": "workspace:*", - arg: "5.0.2", - prompts: "2.4.2", - }, - peerDependencies: { typescript: ">=5.1.0" }, - peerDependenciesMeta: { typescript: { optional: !0 } }, - sideEffects: !1, - }; -}); -var Ti = ue((gh, Qc) => { - Qc.exports = { - name: "@prisma/engines-version", - version: "7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7", - main: "index.js", - types: "index.d.ts", - license: "Apache-2.0", - author: "Tim Suchanek ", - prisma: { enginesVersion: "c2990dca591cba766e3b7ef5d9e8a84796e47ab7" }, - repository: { - type: "git", - url: "https://github.com/prisma/engines-wrapper.git", - directory: "packages/engines-version", - }, - devDependencies: { "@types/node": "18.19.76", typescript: "4.9.5" }, - files: ["index.js", "index.d.ts"], - scripts: { build: "tsc -d" }, - }; -}); -var on = ue((nn) => { - "use strict"; - Object.defineProperty(nn, "__esModule", { value: !0 }); - nn.enginesVersion = void 0; - nn.enginesVersion = Ti().prisma.enginesVersion; -}); -var hs = ue((Ih, gs) => { - "use strict"; - gs.exports = (e) => { - let r = e.match(/^[ \t]*(?=\S)/gm); - return r ? r.reduce((t, n) => Math.min(t, n.length), 1 / 0) : 0; - }; -}); -var Di = ue((kh, Es) => { - "use strict"; - Es.exports = (e, r = 1, t) => { - if ( - ((t = { indent: " ", includeEmptyLines: !1, ...t }), typeof e != "string") - ) - throw new TypeError( - `Expected \`input\` to be a \`string\`, got \`${typeof e}\``, - ); - if (typeof r != "number") - throw new TypeError( - `Expected \`count\` to be a \`number\`, got \`${typeof r}\``, - ); - if (typeof t.indent != "string") - throw new TypeError( - `Expected \`options.indent\` to be a \`string\`, got \`${typeof t.indent}\``, - ); - if (r === 0) return e; - let n = t.includeEmptyLines ? /^/gm : /^(?!\s*$)/gm; - return e.replace(n, t.indent.repeat(r)); - }; -}); -var vs = ue((jh, tp) => { - tp.exports = { - name: "dotenv", - version: "16.5.0", - description: "Loads environment variables from .env file", - main: "lib/main.js", - types: "lib/main.d.ts", - exports: { - ".": { - types: "./lib/main.d.ts", - require: "./lib/main.js", - default: "./lib/main.js", - }, - "./config": "./config.js", - "./config.js": "./config.js", - "./lib/env-options": "./lib/env-options.js", - "./lib/env-options.js": "./lib/env-options.js", - "./lib/cli-options": "./lib/cli-options.js", - "./lib/cli-options.js": "./lib/cli-options.js", - "./package.json": "./package.json", - }, - scripts: { - "dts-check": "tsc --project tests/types/tsconfig.json", - lint: "standard", - pretest: "npm run lint && npm run dts-check", - test: "tap run --allow-empty-coverage --disable-coverage --timeout=60000", - "test:coverage": - "tap run --show-full-coverage --timeout=60000 --coverage-report=lcov", - prerelease: "npm test", - release: "standard-version", - }, - repository: { type: "git", url: "git://github.com/motdotla/dotenv.git" }, - homepage: "https://github.com/motdotla/dotenv#readme", - funding: "https://dotenvx.com", - keywords: [ - "dotenv", - "env", - ".env", - "environment", - "variables", - "config", - "settings", - ], - readmeFilename: "README.md", - license: "BSD-2-Clause", - devDependencies: { - "@types/node": "^18.11.3", - decache: "^4.6.2", - sinon: "^14.0.1", - standard: "^17.0.0", - "standard-version": "^9.5.0", - tap: "^19.2.0", - typescript: "^4.8.4", - }, - engines: { node: ">=12" }, - browser: { fs: !1 }, - }; -}); -var As = ue((Bh, _e) => { - "use strict"; - var Fi = require("node:fs"), - Mi = require("node:path"), - np = require("node:os"), - ip = require("node:crypto"), - op = vs(), - Ts = op.version, - sp = - /(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/gm; - function ap(e) { - let r = {}, - t = e.toString(); - t = t.replace( - /\r\n?/gm, - ` -`, - ); - let n; - for (; (n = sp.exec(t)) != null; ) { - let i = n[1], - o = n[2] || ""; - o = o.trim(); - let s = o[0]; - ((o = o.replace(/^(['"`])([\s\S]*)\1$/gm, "$2")), - s === '"' && - ((o = o.replace( - /\\n/g, - ` -`, - )), - (o = o.replace(/\\r/g, "\r"))), - (r[i] = o)); - } - return r; - } - function lp(e) { - let r = Rs(e), - t = B.configDotenv({ path: r }); - if (!t.parsed) { - let s = new Error( - `MISSING_DATA: Cannot parse ${r} for an unknown reason`, - ); - throw ((s.code = "MISSING_DATA"), s); - } - let n = Ss(e).split(","), - i = n.length, - o; - for (let s = 0; s < i; s++) - try { - let a = n[s].trim(), - l = cp(t, a); - o = B.decrypt(l.ciphertext, l.key); - break; - } catch (a) { - if (s + 1 >= i) throw a; - } - return B.parse(o); - } - function up(e) { - console.log(`[dotenv@${Ts}][WARN] ${e}`); - } - function ot(e) { - console.log(`[dotenv@${Ts}][DEBUG] ${e}`); - } - function Ss(e) { - return e && e.DOTENV_KEY && e.DOTENV_KEY.length > 0 - ? e.DOTENV_KEY - : process.env.DOTENV_KEY && process.env.DOTENV_KEY.length > 0 - ? process.env.DOTENV_KEY - : ""; - } - function cp(e, r) { - let t; - try { - t = new URL(r); - } catch (a) { - if (a.code === "ERR_INVALID_URL") { - let l = new Error( - "INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development", - ); - throw ((l.code = "INVALID_DOTENV_KEY"), l); - } - throw a; - } - let n = t.password; - if (!n) { - let a = new Error("INVALID_DOTENV_KEY: Missing key part"); - throw ((a.code = "INVALID_DOTENV_KEY"), a); - } - let i = t.searchParams.get("environment"); - if (!i) { - let a = new Error("INVALID_DOTENV_KEY: Missing environment part"); - throw ((a.code = "INVALID_DOTENV_KEY"), a); - } - let o = `DOTENV_VAULT_${i.toUpperCase()}`, - s = e.parsed[o]; - if (!s) { - let a = new Error( - `NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${o} in your .env.vault file.`, - ); - throw ((a.code = "NOT_FOUND_DOTENV_ENVIRONMENT"), a); - } - return { ciphertext: s, key: n }; - } - function Rs(e) { - let r = null; - if (e && e.path && e.path.length > 0) - if (Array.isArray(e.path)) - for (let t of e.path) - Fi.existsSync(t) && (r = t.endsWith(".vault") ? t : `${t}.vault`); - else r = e.path.endsWith(".vault") ? e.path : `${e.path}.vault`; - else r = Mi.resolve(process.cwd(), ".env.vault"); - return Fi.existsSync(r) ? r : null; - } - function Ps(e) { - return e[0] === "~" ? Mi.join(np.homedir(), e.slice(1)) : e; - } - function pp(e) { - !!(e && e.debug) && ot("Loading env from encrypted .env.vault"); - let t = B._parseVault(e), - n = process.env; - return ( - e && e.processEnv != null && (n = e.processEnv), - B.populate(n, t, e), - { parsed: t } - ); - } - function dp(e) { - let r = Mi.resolve(process.cwd(), ".env"), - t = "utf8", - n = !!(e && e.debug); - e && e.encoding - ? (t = e.encoding) - : n && ot("No encoding is specified. UTF-8 is used by default"); - let i = [r]; - if (e && e.path) - if (!Array.isArray(e.path)) i = [Ps(e.path)]; - else { - i = []; - for (let l of e.path) i.push(Ps(l)); - } - let o, - s = {}; - for (let l of i) - try { - let u = B.parse(Fi.readFileSync(l, { encoding: t })); - B.populate(s, u, e); - } catch (u) { - (n && ot(`Failed to load ${l} ${u.message}`), (o = u)); - } - let a = process.env; - return ( - e && e.processEnv != null && (a = e.processEnv), - B.populate(a, s, e), - o ? { parsed: s, error: o } : { parsed: s } - ); - } - function mp(e) { - if (Ss(e).length === 0) return B.configDotenv(e); - let r = Rs(e); - return r - ? B._configVault(e) - : (up( - `You set DOTENV_KEY but you are missing a .env.vault file at ${r}. Did you forget to build it?`, - ), - B.configDotenv(e)); - } - function fp(e, r) { - let t = Buffer.from(r.slice(-64), "hex"), - n = Buffer.from(e, "base64"), - i = n.subarray(0, 12), - o = n.subarray(-16); - n = n.subarray(12, -16); - try { - let s = ip.createDecipheriv("aes-256-gcm", t, i); - return (s.setAuthTag(o), `${s.update(n)}${s.final()}`); - } catch (s) { - let a = s instanceof RangeError, - l = s.message === "Invalid key length", - u = s.message === "Unsupported state or unable to authenticate data"; - if (a || l) { - let c = new Error( - "INVALID_DOTENV_KEY: It must be 64 characters long (or more)", - ); - throw ((c.code = "INVALID_DOTENV_KEY"), c); - } else if (u) { - let c = new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY"); - throw ((c.code = "DECRYPTION_FAILED"), c); - } else throw s; - } - } - function gp(e, r, t = {}) { - let n = !!(t && t.debug), - i = !!(t && t.override); - if (typeof r != "object") { - let o = new Error( - "OBJECT_REQUIRED: Please check the processEnv argument being passed to populate", - ); - throw ((o.code = "OBJECT_REQUIRED"), o); - } - for (let o of Object.keys(r)) - Object.prototype.hasOwnProperty.call(e, o) - ? (i === !0 && (e[o] = r[o]), - n && - ot( - i === !0 - ? `"${o}" is already defined and WAS overwritten` - : `"${o}" is already defined and was NOT overwritten`, - )) - : (e[o] = r[o]); - } - var B = { - configDotenv: dp, - _configVault: pp, - _parseVault: lp, - config: mp, - decrypt: fp, - parse: ap, - populate: gp, - }; - _e.exports.configDotenv = B.configDotenv; - _e.exports._configVault = B._configVault; - _e.exports._parseVault = B._parseVault; - _e.exports.config = B.config; - _e.exports.decrypt = B.decrypt; - _e.exports.parse = B.parse; - _e.exports.populate = B.populate; - _e.exports = B; -}); -var Os = ue((Kh, cn) => { - "use strict"; - cn.exports = (e = {}) => { - let r; - if (e.repoUrl) r = e.repoUrl; - else if (e.user && e.repo) r = `https://github.com/${e.user}/${e.repo}`; - else - throw new Error( - "You need to specify either the `repoUrl` option or both the `user` and `repo` options", - ); - let t = new URL(`${r}/issues/new`), - n = [ - "body", - "title", - "labels", - "template", - "milestone", - "assignee", - "projects", - ]; - for (let i of n) { - let o = e[i]; - if (o !== void 0) { - if (i === "labels" || i === "projects") { - if (!Array.isArray(o)) - throw new TypeError(`The \`${i}\` option should be an array`); - o = o.join(","); - } - t.searchParams.set(i, o); - } - } - return t.toString(); - }; - cn.exports.default = cn.exports; -}); -var Ki = ue((vb, ea) => { - "use strict"; - ea.exports = (function () { - function e(r, t, n, i, o) { - return r < t || n < t ? (r > n ? n + 1 : r + 1) : i === o ? t : t + 1; - } - return function (r, t) { - if (r === t) return 0; - if (r.length > t.length) { - var n = r; - ((r = t), (t = n)); - } - for ( - var i = r.length, o = t.length; - i > 0 && r.charCodeAt(i - 1) === t.charCodeAt(o - 1); - ) - (i--, o--); - for (var s = 0; s < i && r.charCodeAt(s) === t.charCodeAt(s); ) s++; - if (((i -= s), (o -= s), i === 0 || o < 3)) return o; - var a = 0, - l, - u, - c, - p, - d, - f, - h, - g, - I, - T, - S, - b, - D = []; - for (l = 0; l < i; l++) (D.push(l + 1), D.push(r.charCodeAt(s + l))); - for (var me = D.length - 1; a < o - 3; ) - for ( - I = t.charCodeAt(s + (u = a)), - T = t.charCodeAt(s + (c = a + 1)), - S = t.charCodeAt(s + (p = a + 2)), - b = t.charCodeAt(s + (d = a + 3)), - f = a += 4, - l = 0; - l < me; - l += 2 - ) - ((h = D[l]), - (g = D[l + 1]), - (u = e(h, u, c, I, g)), - (c = e(u, c, p, T, g)), - (p = e(c, p, d, S, g)), - (f = e(p, d, f, b, g)), - (D[l] = f), - (d = p), - (p = c), - (c = u), - (u = h)); - for (; a < o; ) - for (I = t.charCodeAt(s + (u = a)), f = ++a, l = 0; l < me; l += 2) - ((h = D[l]), (D[l] = f = e(h, u, f, I, D[l + 1])), (u = h)); - return f; - }; - })(); -}); -var oa = Do(() => { - "use strict"; -}); -var sa = Do(() => { - "use strict"; -}); -var jf = {}; -tr(jf, { - DMMF: () => ct, - Debug: () => N, - Decimal: () => Fe, - Extensions: () => ni, - MetricsClient: () => Lr, - PrismaClientInitializationError: () => P, - PrismaClientKnownRequestError: () => z, - PrismaClientRustPanicError: () => ae, - PrismaClientUnknownRequestError: () => V, - PrismaClientValidationError: () => Z, - Public: () => ii, - Sql: () => ie, - createParam: () => va, - defineDmmfProperty: () => Ca, - deserializeJsonResponse: () => Vr, - deserializeRawResult: () => Xn, - dmmfToRuntimeDataModel: () => Ns, - empty: () => Oa, - getPrismaClient: () => fu, - getRuntime: () => Kn, - join: () => Da, - makeStrictEnum: () => gu, - makeTypedQueryFactory: () => Ia, - objectEnumValues: () => On, - raw: () => no, - serializeJsonQuery: () => $n, - skip: () => Mn, - sqltag: () => io, - warnEnvConflicts: () => hu, - warnOnce: () => at, -}); -module.exports = vu(jf); -var ni = {}; -tr(ni, { defineExtension: () => ko, getExtensionContext: () => _o }); -function ko(e) { - return typeof e == "function" ? e : (r) => r.$extends(e); -} -function _o(e) { - return e; -} -var ii = {}; -tr(ii, { validator: () => No }); -function No(...e) { - return (r) => r; -} -var Bt = {}; -tr(Bt, { - $: () => qo, - bgBlack: () => ku, - bgBlue: () => Fu, - bgCyan: () => $u, - bgGreen: () => Nu, - bgMagenta: () => Mu, - bgRed: () => _u, - bgWhite: () => qu, - bgYellow: () => Lu, - black: () => Cu, - blue: () => nr, - bold: () => W, - cyan: () => De, - dim: () => Ce, - gray: () => Hr, - green: () => qe, - grey: () => Ou, - hidden: () => Ru, - inverse: () => Su, - italic: () => Tu, - magenta: () => Iu, - red: () => ce, - reset: () => Pu, - strikethrough: () => Au, - underline: () => Y, - white: () => Du, - yellow: () => Ie, -}); -var oi, - Lo, - Fo, - Mo, - $o = !0; -typeof process < "u" && - (({ - FORCE_COLOR: oi, - NODE_DISABLE_COLORS: Lo, - NO_COLOR: Fo, - TERM: Mo, - } = process.env || {}), - ($o = process.stdout && process.stdout.isTTY)); -var qo = { - enabled: - !Lo && Fo == null && Mo !== "dumb" && ((oi != null && oi !== "0") || $o), -}; -function F(e, r) { - let t = new RegExp(`\\x1b\\[${r}m`, "g"), - n = `\x1B[${e}m`, - i = `\x1B[${r}m`; - return function (o) { - return !qo.enabled || o == null - ? o - : n + (~("" + o).indexOf(i) ? o.replace(t, i + n) : o) + i; - }; -} -var Pu = F(0, 0), - W = F(1, 22), - Ce = F(2, 22), - Tu = F(3, 23), - Y = F(4, 24), - Su = F(7, 27), - Ru = F(8, 28), - Au = F(9, 29), - Cu = F(30, 39), - ce = F(31, 39), - qe = F(32, 39), - Ie = F(33, 39), - nr = F(34, 39), - Iu = F(35, 39), - De = F(36, 39), - Du = F(37, 39), - Hr = F(90, 39), - Ou = F(90, 39), - ku = F(40, 49), - _u = F(41, 49), - Nu = F(42, 49), - Lu = F(43, 49), - Fu = F(44, 49), - Mu = F(45, 49), - $u = F(46, 49), - qu = F(47, 49); -var Vu = 100, - Vo = ["green", "yellow", "blue", "magenta", "cyan", "red"], - Yr = [], - jo = Date.now(), - ju = 0, - si = typeof process < "u" ? process.env : {}; -globalThis.DEBUG ??= si.DEBUG ?? ""; -globalThis.DEBUG_COLORS ??= si.DEBUG_COLORS ? si.DEBUG_COLORS === "true" : !0; -var zr = { - enable(e) { - typeof e == "string" && (globalThis.DEBUG = e); - }, - disable() { - let e = globalThis.DEBUG; - return ((globalThis.DEBUG = ""), e); - }, - enabled(e) { - let r = globalThis.DEBUG.split(",").map((i) => - i.replace(/[.+?^${}()|[\]\\]/g, "\\$&"), - ), - t = r.some((i) => - i === "" || i[0] === "-" - ? !1 - : e.match(RegExp(i.split("*").join(".*") + "$")), - ), - n = r.some((i) => - i === "" || i[0] !== "-" - ? !1 - : e.match(RegExp(i.slice(1).split("*").join(".*") + "$")), - ); - return t && !n; - }, - log: (...e) => { - let [r, t, ...n] = e; - (console.warn ?? console.log)(`${r} ${t}`, ...n); - }, - formatters: {}, -}; -function Bu(e) { - let r = { - color: Vo[ju++ % Vo.length], - enabled: zr.enabled(e), - namespace: e, - log: zr.log, - extend: () => {}, - }, - t = (...n) => { - let { enabled: i, namespace: o, color: s, log: a } = r; - if ( - (n.length !== 0 && Yr.push([o, ...n]), - Yr.length > Vu && Yr.shift(), - zr.enabled(o) || i) - ) { - let l = n.map((c) => (typeof c == "string" ? c : Uu(c))), - u = `+${Date.now() - jo}ms`; - ((jo = Date.now()), - globalThis.DEBUG_COLORS - ? a(Bt[s](W(o)), ...l, Bt[s](u)) - : a(o, ...l, u)); - } - }; - return new Proxy(t, { get: (n, i) => r[i], set: (n, i, o) => (r[i] = o) }); -} -var N = new Proxy(Bu, { get: (e, r) => zr[r], set: (e, r, t) => (zr[r] = t) }); -function Uu(e, r = 2) { - let t = new Set(); - return JSON.stringify( - e, - (n, i) => { - if (typeof i == "object" && i !== null) { - if (t.has(i)) return "[Circular *]"; - t.add(i); - } else if (typeof i == "bigint") return i.toString(); - return i; - }, - r, - ); -} -function Bo(e = 7500) { - let r = Yr.map( - ([t, ...n]) => - `${t} ${n.map((i) => (typeof i == "string" ? i : JSON.stringify(i))).join(" ")}`, - ).join(` -`); - return r.length < e ? r : r.slice(-e); -} -function Uo() { - Yr.length = 0; -} -var gr = N; -var Go = O(require("node:fs")); -function ai() { - let e = process.env.PRISMA_QUERY_ENGINE_LIBRARY; - if (!(e && Go.default.existsSync(e)) && process.arch === "ia32") - throw new Error( - 'The default query engine type (Node-API, "library") is currently not supported for 32bit Node. Please set `engineType = "binary"` in the "generator" block of your "schema.prisma" file (or use the environment variables "PRISMA_CLIENT_ENGINE_TYPE=binary" and/or "PRISMA_CLI_QUERY_ENGINE_TYPE=binary".)', - ); -} -var li = [ - "darwin", - "darwin-arm64", - "debian-openssl-1.0.x", - "debian-openssl-1.1.x", - "debian-openssl-3.0.x", - "rhel-openssl-1.0.x", - "rhel-openssl-1.1.x", - "rhel-openssl-3.0.x", - "linux-arm64-openssl-1.1.x", - "linux-arm64-openssl-1.0.x", - "linux-arm64-openssl-3.0.x", - "linux-arm-openssl-1.1.x", - "linux-arm-openssl-1.0.x", - "linux-arm-openssl-3.0.x", - "linux-musl", - "linux-musl-openssl-3.0.x", - "linux-musl-arm64-openssl-1.1.x", - "linux-musl-arm64-openssl-3.0.x", - "linux-nixos", - "linux-static-x64", - "linux-static-arm64", - "windows", - "freebsd11", - "freebsd12", - "freebsd13", - "freebsd14", - "freebsd15", - "openbsd", - "netbsd", - "arm", -]; -var Ut = "libquery_engine"; -function Gt(e, r) { - let t = r === "url"; - return e.includes("windows") - ? t - ? "query_engine.dll.node" - : `query_engine-${e}.dll.node` - : e.includes("darwin") - ? t - ? `${Ut}.dylib.node` - : `${Ut}-${e}.dylib.node` - : t - ? `${Ut}.so.node` - : `${Ut}-${e}.so.node`; -} -var Ko = O(require("node:child_process")), - mi = O(require("node:fs/promises")), - Ht = O(require("node:os")); -var Oe = Symbol.for("@ts-pattern/matcher"), - Gu = Symbol.for("@ts-pattern/isVariadic"), - Wt = "@ts-pattern/anonymous-select-key", - ui = (e) => !!(e && typeof e == "object"), - Qt = (e) => e && !!e[Oe], - Ee = (e, r, t) => { - if (Qt(e)) { - let n = e[Oe](), - { matched: i, selections: o } = n.match(r); - return (i && o && Object.keys(o).forEach((s) => t(s, o[s])), i); - } - if (ui(e)) { - if (!ui(r)) return !1; - if (Array.isArray(e)) { - if (!Array.isArray(r)) return !1; - let n = [], - i = [], - o = []; - for (let s of e.keys()) { - let a = e[s]; - Qt(a) && a[Gu] ? o.push(a) : o.length ? i.push(a) : n.push(a); - } - if (o.length) { - if (o.length > 1) - throw new Error( - "Pattern error: Using `...P.array(...)` several times in a single pattern is not allowed.", - ); - if (r.length < n.length + i.length) return !1; - let s = r.slice(0, n.length), - a = i.length === 0 ? [] : r.slice(-i.length), - l = r.slice(n.length, i.length === 0 ? 1 / 0 : -i.length); - return ( - n.every((u, c) => Ee(u, s[c], t)) && - i.every((u, c) => Ee(u, a[c], t)) && - (o.length === 0 || Ee(o[0], l, t)) - ); - } - return e.length === r.length && e.every((s, a) => Ee(s, r[a], t)); - } - return Reflect.ownKeys(e).every((n) => { - let i = e[n]; - return ( - (n in r || (Qt((o = i)) && o[Oe]().matcherType === "optional")) && - Ee(i, r[n], t) - ); - var o; - }); - } - return Object.is(r, e); - }, - Ge = (e) => { - var r, t, n; - return ui(e) - ? Qt(e) - ? (r = - (t = (n = e[Oe]()).getSelectionKeys) == null - ? void 0 - : t.call(n)) != null - ? r - : [] - : Array.isArray(e) - ? Zr(e, Ge) - : Zr(Object.values(e), Ge) - : []; - }, - Zr = (e, r) => e.reduce((t, n) => t.concat(r(n)), []); -function pe(e) { - return Object.assign(e, { - optional: () => Qu(e), - and: (r) => q(e, r), - or: (r) => Wu(e, r), - select: (r) => (r === void 0 ? Qo(e) : Qo(r, e)), - }); -} -function Qu(e) { - return pe({ - [Oe]: () => ({ - match: (r) => { - let t = {}, - n = (i, o) => { - t[i] = o; - }; - return r === void 0 - ? (Ge(e).forEach((i) => n(i, void 0)), { matched: !0, selections: t }) - : { matched: Ee(e, r, n), selections: t }; - }, - getSelectionKeys: () => Ge(e), - matcherType: "optional", - }), - }); -} -function q(...e) { - return pe({ - [Oe]: () => ({ - match: (r) => { - let t = {}, - n = (i, o) => { - t[i] = o; - }; - return { matched: e.every((i) => Ee(i, r, n)), selections: t }; - }, - getSelectionKeys: () => Zr(e, Ge), - matcherType: "and", - }), - }); -} -function Wu(...e) { - return pe({ - [Oe]: () => ({ - match: (r) => { - let t = {}, - n = (i, o) => { - t[i] = o; - }; - return ( - Zr(e, Ge).forEach((i) => n(i, void 0)), - { matched: e.some((i) => Ee(i, r, n)), selections: t } - ); - }, - getSelectionKeys: () => Zr(e, Ge), - matcherType: "or", - }), - }); -} -function A(e) { - return { [Oe]: () => ({ match: (r) => ({ matched: !!e(r) }) }) }; -} -function Qo(...e) { - let r = typeof e[0] == "string" ? e[0] : void 0, - t = e.length === 2 ? e[1] : typeof e[0] == "string" ? void 0 : e[0]; - return pe({ - [Oe]: () => ({ - match: (n) => { - let i = { [r ?? Wt]: n }; - return { - matched: - t === void 0 || - Ee(t, n, (o, s) => { - i[o] = s; - }), - selections: i, - }; - }, - getSelectionKeys: () => [r ?? Wt].concat(t === void 0 ? [] : Ge(t)), - }), - }); -} -function ye(e) { - return typeof e == "number"; -} -function Ve(e) { - return typeof e == "string"; -} -function je(e) { - return typeof e == "bigint"; -} -var eg = pe( - A(function (e) { - return !0; - }), -); -var Be = (e) => - Object.assign(pe(e), { - startsWith: (r) => { - return Be(q(e, ((t = r), A((n) => Ve(n) && n.startsWith(t))))); - var t; - }, - endsWith: (r) => { - return Be(q(e, ((t = r), A((n) => Ve(n) && n.endsWith(t))))); - var t; - }, - minLength: (r) => Be(q(e, ((t) => A((n) => Ve(n) && n.length >= t))(r))), - length: (r) => Be(q(e, ((t) => A((n) => Ve(n) && n.length === t))(r))), - maxLength: (r) => Be(q(e, ((t) => A((n) => Ve(n) && n.length <= t))(r))), - includes: (r) => { - return Be(q(e, ((t = r), A((n) => Ve(n) && n.includes(t))))); - var t; - }, - regex: (r) => { - return Be(q(e, ((t = r), A((n) => Ve(n) && !!n.match(t))))); - var t; - }, - }), - rg = Be(A(Ve)), - be = (e) => - Object.assign(pe(e), { - between: (r, t) => - be(q(e, ((n, i) => A((o) => ye(o) && n <= o && i >= o))(r, t))), - lt: (r) => be(q(e, ((t) => A((n) => ye(n) && n < t))(r))), - gt: (r) => be(q(e, ((t) => A((n) => ye(n) && n > t))(r))), - lte: (r) => be(q(e, ((t) => A((n) => ye(n) && n <= t))(r))), - gte: (r) => be(q(e, ((t) => A((n) => ye(n) && n >= t))(r))), - int: () => - be( - q( - e, - A((r) => ye(r) && Number.isInteger(r)), - ), - ), - finite: () => - be( - q( - e, - A((r) => ye(r) && Number.isFinite(r)), - ), - ), - positive: () => - be( - q( - e, - A((r) => ye(r) && r > 0), - ), - ), - negative: () => - be( - q( - e, - A((r) => ye(r) && r < 0), - ), - ), - }), - tg = be(A(ye)), - Ue = (e) => - Object.assign(pe(e), { - between: (r, t) => - Ue(q(e, ((n, i) => A((o) => je(o) && n <= o && i >= o))(r, t))), - lt: (r) => Ue(q(e, ((t) => A((n) => je(n) && n < t))(r))), - gt: (r) => Ue(q(e, ((t) => A((n) => je(n) && n > t))(r))), - lte: (r) => Ue(q(e, ((t) => A((n) => je(n) && n <= t))(r))), - gte: (r) => Ue(q(e, ((t) => A((n) => je(n) && n >= t))(r))), - positive: () => - Ue( - q( - e, - A((r) => je(r) && r > 0), - ), - ), - negative: () => - Ue( - q( - e, - A((r) => je(r) && r < 0), - ), - ), - }), - ng = Ue(A(je)), - ig = pe( - A(function (e) { - return typeof e == "boolean"; - }), - ), - og = pe( - A(function (e) { - return typeof e == "symbol"; - }), - ), - sg = pe( - A(function (e) { - return e == null; - }), - ), - ag = pe( - A(function (e) { - return e != null; - }), - ); -var ci = class extends Error { - constructor(r) { - let t; - try { - t = JSON.stringify(r); - } catch { - t = r; - } - (super(`Pattern matching error: no pattern matches value ${t}`), - (this.input = void 0), - (this.input = r)); - } - }, - pi = { matched: !1, value: void 0 }; -function hr(e) { - return new di(e, pi); -} -var di = class e { - constructor(r, t) { - ((this.input = void 0), - (this.state = void 0), - (this.input = r), - (this.state = t)); - } - with(...r) { - if (this.state.matched) return this; - let t = r[r.length - 1], - n = [r[0]], - i; - r.length === 3 && typeof r[1] == "function" - ? (i = r[1]) - : r.length > 2 && n.push(...r.slice(1, r.length - 1)); - let o = !1, - s = {}, - a = (u, c) => { - ((o = !0), (s[u] = c)); - }, - l = - !n.some((u) => Ee(u, this.input, a)) || (i && !i(this.input)) - ? pi - : { - matched: !0, - value: t(o ? (Wt in s ? s[Wt] : s) : this.input, this.input), - }; - return new e(this.input, l); - } - when(r, t) { - if (this.state.matched) return this; - let n = !!r(this.input); - return new e( - this.input, - n ? { matched: !0, value: t(this.input, this.input) } : pi, - ); - } - otherwise(r) { - return this.state.matched ? this.state.value : r(this.input); - } - exhaustive() { - if (this.state.matched) return this.state.value; - throw new ci(this.input); - } - run() { - return this.exhaustive(); - } - returnType() { - return this; - } -}; -var Ho = require("node:util"); -var Ju = { warn: Ie("prisma:warn") }, - Ku = { warn: () => !process.env.PRISMA_DISABLE_WARNINGS }; -function Jt(e, ...r) { - Ku.warn() && console.warn(`${Ju.warn} ${e}`, ...r); -} -var Hu = (0, Ho.promisify)(Ko.default.exec), - ee = gr("prisma:get-platform"), - Yu = ["1.0.x", "1.1.x", "3.0.x"]; -async function Yo() { - let e = Ht.default.platform(), - r = process.arch; - if (e === "freebsd") { - let s = await Yt("freebsd-version"); - if (s && s.trim().length > 0) { - let l = /^(\d+)\.?/.exec(s); - if (l) - return { platform: "freebsd", targetDistro: `freebsd${l[1]}`, arch: r }; - } - } - if (e !== "linux") return { platform: e, arch: r }; - let t = await Zu(), - n = await sc(), - i = ec({ arch: r, archFromUname: n, familyDistro: t.familyDistro }), - { libssl: o } = await rc(i); - return { platform: "linux", libssl: o, arch: r, archFromUname: n, ...t }; -} -function zu(e) { - let r = /^ID="?([^"\n]*)"?$/im, - t = /^ID_LIKE="?([^"\n]*)"?$/im, - n = r.exec(e), - i = (n && n[1] && n[1].toLowerCase()) || "", - o = t.exec(e), - s = (o && o[1] && o[1].toLowerCase()) || "", - a = hr({ id: i, idLike: s }) - .with({ id: "alpine" }, ({ id: l }) => ({ - targetDistro: "musl", - familyDistro: l, - originalDistro: l, - })) - .with({ id: "raspbian" }, ({ id: l }) => ({ - targetDistro: "arm", - familyDistro: "debian", - originalDistro: l, - })) - .with({ id: "nixos" }, ({ id: l }) => ({ - targetDistro: "nixos", - originalDistro: l, - familyDistro: "nixos", - })) - .with({ id: "debian" }, { id: "ubuntu" }, ({ id: l }) => ({ - targetDistro: "debian", - familyDistro: "debian", - originalDistro: l, - })) - .with( - { id: "rhel" }, - { id: "centos" }, - { id: "fedora" }, - ({ id: l }) => ({ - targetDistro: "rhel", - familyDistro: "rhel", - originalDistro: l, - }), - ) - .when( - ({ idLike: l }) => l.includes("debian") || l.includes("ubuntu"), - ({ id: l }) => ({ - targetDistro: "debian", - familyDistro: "debian", - originalDistro: l, - }), - ) - .when( - ({ idLike: l }) => i === "arch" || l.includes("arch"), - ({ id: l }) => ({ - targetDistro: "debian", - familyDistro: "arch", - originalDistro: l, - }), - ) - .when( - ({ idLike: l }) => - l.includes("centos") || - l.includes("fedora") || - l.includes("rhel") || - l.includes("suse"), - ({ id: l }) => ({ - targetDistro: "rhel", - familyDistro: "rhel", - originalDistro: l, - }), - ) - .otherwise(({ id: l }) => ({ - targetDistro: void 0, - familyDistro: void 0, - originalDistro: l, - })); - return ( - ee(`Found distro info: -${JSON.stringify(a, null, 2)}`), - a - ); -} -async function Zu() { - let e = "/etc/os-release"; - try { - let r = await mi.default.readFile(e, { encoding: "utf-8" }); - return zu(r); - } catch { - return { - targetDistro: void 0, - familyDistro: void 0, - originalDistro: void 0, - }; - } -} -function Xu(e) { - let r = /^OpenSSL\s(\d+\.\d+)\.\d+/.exec(e); - if (r) { - let t = `${r[1]}.x`; - return zo(t); - } -} -function Wo(e) { - let r = /libssl\.so\.(\d)(\.\d)?/.exec(e); - if (r) { - let t = `${r[1]}${r[2] ?? ".0"}.x`; - return zo(t); - } -} -function zo(e) { - let r = (() => { - if (Xo(e)) return e; - let t = e.split("."); - return ((t[1] = "0"), t.join(".")); - })(); - if (Yu.includes(r)) return r; -} -function ec(e) { - return hr(e) - .with( - { familyDistro: "musl" }, - () => ( - ee('Trying platform-specific paths for "alpine"'), - ["/lib", "/usr/lib"] - ), - ) - .with( - { familyDistro: "debian" }, - ({ archFromUname: r }) => ( - ee('Trying platform-specific paths for "debian" (and "ubuntu")'), - [`/usr/lib/${r}-linux-gnu`, `/lib/${r}-linux-gnu`] - ), - ) - .with( - { familyDistro: "rhel" }, - () => ( - ee('Trying platform-specific paths for "rhel"'), - ["/lib64", "/usr/lib64"] - ), - ) - .otherwise( - ({ familyDistro: r, arch: t, archFromUname: n }) => ( - ee(`Don't know any platform-specific paths for "${r}" on ${t} (${n})`), - [] - ), - ); -} -async function rc(e) { - let r = 'grep -v "libssl.so.0"', - t = await Jo(e); - if (t) { - ee(`Found libssl.so file using platform-specific paths: ${t}`); - let o = Wo(t); - if ((ee(`The parsed libssl version is: ${o}`), o)) - return { libssl: o, strategy: "libssl-specific-path" }; - } - ee('Falling back to "ldconfig" and other generic paths'); - let n = await Yt( - `ldconfig -p | sed "s/.*=>s*//" | sed "s|.*/||" | grep libssl | sort | ${r}`, - ); - if ((n || (n = await Jo(["/lib64", "/usr/lib64", "/lib", "/usr/lib"])), n)) { - ee(`Found libssl.so file using "ldconfig" or other generic paths: ${n}`); - let o = Wo(n); - if ((ee(`The parsed libssl version is: ${o}`), o)) - return { libssl: o, strategy: "ldconfig" }; - } - let i = await Yt("openssl version -v"); - if (i) { - ee(`Found openssl binary with version: ${i}`); - let o = Xu(i); - if ((ee(`The parsed openssl version is: ${o}`), o)) - return { libssl: o, strategy: "openssl-binary" }; - } - return ( - ee("Couldn't find any version of libssl or OpenSSL in the system"), - {} - ); -} -async function Jo(e) { - for (let r of e) { - let t = await tc(r); - if (t) return t; - } -} -async function tc(e) { - try { - return (await mi.default.readdir(e)).find( - (t) => t.startsWith("libssl.so.") && !t.startsWith("libssl.so.0"), - ); - } catch (r) { - if (r.code === "ENOENT") return; - throw r; - } -} -async function ir() { - let { binaryTarget: e } = await Zo(); - return e; -} -function nc(e) { - return e.binaryTarget !== void 0; -} -async function fi() { - let { memoized: e, ...r } = await Zo(); - return r; -} -var Kt = {}; -async function Zo() { - if (nc(Kt)) return Promise.resolve({ ...Kt, memoized: !0 }); - let e = await Yo(), - r = ic(e); - return ((Kt = { ...e, binaryTarget: r }), { ...Kt, memoized: !1 }); -} -function ic(e) { - let { - platform: r, - arch: t, - archFromUname: n, - libssl: i, - targetDistro: o, - familyDistro: s, - originalDistro: a, - } = e; - r === "linux" && - !["x64", "arm64"].includes(t) && - Jt( - `Prisma only officially supports Linux on amd64 (x86_64) and arm64 (aarch64) system architectures (detected "${t}" instead). If you are using your own custom Prisma engines, you can ignore this warning, as long as you've compiled the engines for your system architecture "${n}".`, - ); - let l = "1.1.x"; - if (r === "linux" && i === void 0) { - let c = hr({ familyDistro: s }) - .with( - { familyDistro: "debian" }, - () => - "Please manually install OpenSSL via `apt-get update -y && apt-get install -y openssl` and try installing Prisma again. If you're running Prisma on Docker, add this command to your Dockerfile, or switch to an image that already has OpenSSL installed.", - ) - .otherwise( - () => - "Please manually install OpenSSL and try installing Prisma again.", - ); - Jt(`Prisma failed to detect the libssl/openssl version to use, and may not work as expected. Defaulting to "openssl-${l}". -${c}`); - } - let u = "debian"; - if ( - (r === "linux" && - o === void 0 && - ee(`Distro is "${a}". Falling back to Prisma engines built for "${u}".`), - r === "darwin" && t === "arm64") - ) - return "darwin-arm64"; - if (r === "darwin") return "darwin"; - if (r === "win32") return "windows"; - if (r === "freebsd") return o; - if (r === "openbsd") return "openbsd"; - if (r === "netbsd") return "netbsd"; - if (r === "linux" && o === "nixos") return "linux-nixos"; - if (r === "linux" && t === "arm64") - return `${o === "musl" ? "linux-musl-arm64" : "linux-arm64"}-openssl-${i || l}`; - if (r === "linux" && t === "arm") return `linux-arm-openssl-${i || l}`; - if (r === "linux" && o === "musl") { - let c = "linux-musl"; - return !i || Xo(i) ? c : `${c}-openssl-${i}`; - } - return r === "linux" && o && i - ? `${o}-openssl-${i}` - : (r !== "linux" && - Jt( - `Prisma detected unknown OS "${r}" and may not work as expected. Defaulting to "linux".`, - ), - i ? `${u}-openssl-${i}` : o ? `${o}-openssl-${l}` : `${u}-openssl-${l}`); -} -async function oc(e) { - try { - return await e(); - } catch { - return; - } -} -function Yt(e) { - return oc(async () => { - let r = await Hu(e); - return (ee(`Command "${e}" successfully returned "${r.stdout}"`), r.stdout); - }); -} -async function sc() { - return typeof Ht.default.machine == "function" - ? Ht.default.machine() - : (await Yt("uname -m"))?.trim(); -} -function Xo(e) { - return e.startsWith("1."); -} -var Xt = {}; -tr(Xt, { - beep: () => kc, - clearScreen: () => Cc, - clearTerminal: () => Ic, - cursorBackward: () => mc, - cursorDown: () => pc, - cursorForward: () => dc, - cursorGetPosition: () => hc, - cursorHide: () => Ec, - cursorLeft: () => ts, - cursorMove: () => cc, - cursorNextLine: () => yc, - cursorPrevLine: () => bc, - cursorRestorePosition: () => gc, - cursorSavePosition: () => fc, - cursorShow: () => wc, - cursorTo: () => uc, - cursorUp: () => rs, - enterAlternativeScreen: () => Dc, - eraseDown: () => Tc, - eraseEndLine: () => vc, - eraseLine: () => ns, - eraseLines: () => xc, - eraseScreen: () => gi, - eraseStartLine: () => Pc, - eraseUp: () => Sc, - exitAlternativeScreen: () => Oc, - iTerm: () => Lc, - image: () => Nc, - link: () => _c, - scrollDown: () => Ac, - scrollUp: () => Rc, -}); -var Zt = O(require("node:process"), 1); -var zt = globalThis.window?.document !== void 0, - gg = globalThis.process?.versions?.node !== void 0, - hg = globalThis.process?.versions?.bun !== void 0, - yg = globalThis.Deno?.version?.deno !== void 0, - bg = globalThis.process?.versions?.electron !== void 0, - Eg = globalThis.navigator?.userAgent?.includes("jsdom") === !0, - wg = - typeof WorkerGlobalScope < "u" && globalThis instanceof WorkerGlobalScope, - xg = - typeof DedicatedWorkerGlobalScope < "u" && - globalThis instanceof DedicatedWorkerGlobalScope, - vg = - typeof SharedWorkerGlobalScope < "u" && - globalThis instanceof SharedWorkerGlobalScope, - Pg = - typeof ServiceWorkerGlobalScope < "u" && - globalThis instanceof ServiceWorkerGlobalScope, - Xr = globalThis.navigator?.userAgentData?.platform, - Tg = - Xr === "macOS" || - globalThis.navigator?.platform === "MacIntel" || - globalThis.navigator?.userAgent?.includes(" Mac ") === !0 || - globalThis.process?.platform === "darwin", - Sg = - Xr === "Windows" || - globalThis.navigator?.platform === "Win32" || - globalThis.process?.platform === "win32", - Rg = - Xr === "Linux" || - globalThis.navigator?.platform?.startsWith("Linux") === !0 || - globalThis.navigator?.userAgent?.includes(" Linux ") === !0 || - globalThis.process?.platform === "linux", - Ag = - Xr === "iOS" || - (globalThis.navigator?.platform === "MacIntel" && - globalThis.navigator?.maxTouchPoints > 1) || - /iPad|iPhone|iPod/.test(globalThis.navigator?.platform), - Cg = - Xr === "Android" || - globalThis.navigator?.platform === "Android" || - globalThis.navigator?.userAgent?.includes(" Android ") === !0 || - globalThis.process?.platform === "android"; -var C = "\x1B[", - rt = "\x1B]", - yr = "\x07", - et = ";", - es = !zt && Zt.default.env.TERM_PROGRAM === "Apple_Terminal", - ac = !zt && Zt.default.platform === "win32", - lc = zt - ? () => { - throw new Error( - "`process.cwd()` only works in Node.js, not the browser.", - ); - } - : Zt.default.cwd, - uc = (e, r) => { - if (typeof e != "number") - throw new TypeError("The `x` argument is required"); - return typeof r != "number" - ? C + (e + 1) + "G" - : C + (r + 1) + et + (e + 1) + "H"; - }, - cc = (e, r) => { - if (typeof e != "number") - throw new TypeError("The `x` argument is required"); - let t = ""; - return ( - e < 0 ? (t += C + -e + "D") : e > 0 && (t += C + e + "C"), - r < 0 ? (t += C + -r + "A") : r > 0 && (t += C + r + "B"), - t - ); - }, - rs = (e = 1) => C + e + "A", - pc = (e = 1) => C + e + "B", - dc = (e = 1) => C + e + "C", - mc = (e = 1) => C + e + "D", - ts = C + "G", - fc = es ? "\x1B7" : C + "s", - gc = es ? "\x1B8" : C + "u", - hc = C + "6n", - yc = C + "E", - bc = C + "F", - Ec = C + "?25l", - wc = C + "?25h", - xc = (e) => { - let r = ""; - for (let t = 0; t < e; t++) r += ns + (t < e - 1 ? rs() : ""); - return (e && (r += ts), r); - }, - vc = C + "K", - Pc = C + "1K", - ns = C + "2K", - Tc = C + "J", - Sc = C + "1J", - gi = C + "2J", - Rc = C + "S", - Ac = C + "T", - Cc = "\x1Bc", - Ic = ac ? `${gi}${C}0f` : `${gi}${C}3J${C}H`, - Dc = C + "?1049h", - Oc = C + "?1049l", - kc = yr, - _c = (e, r) => [rt, "8", et, et, r, yr, e, rt, "8", et, et, yr].join(""), - Nc = (e, r = {}) => { - let t = `${rt}1337;File=inline=1`; - return ( - r.width && (t += `;width=${r.width}`), - r.height && (t += `;height=${r.height}`), - r.preserveAspectRatio === !1 && (t += ";preserveAspectRatio=0"), - t + ":" + Buffer.from(e).toString("base64") + yr - ); - }, - Lc = { - setCwd: (e = lc()) => `${rt}50;CurrentDir=${e}${yr}`, - annotation(e, r = {}) { - let t = `${rt}1337;`, - n = r.x !== void 0, - i = r.y !== void 0; - if ((n || i) && !(n && i && r.length !== void 0)) - throw new Error( - "`x`, `y` and `length` must be defined when `x` or `y` is defined", - ); - return ( - (e = e.replaceAll("|", "")), - (t += r.isHidden ? "AddHiddenAnnotation=" : "AddAnnotation="), - r.length > 0 - ? (t += (n ? [e, r.length, r.x, r.y] : [r.length, e]).join("|")) - : (t += e), - t + yr - ); - }, - }; -var en = O(cs(), 1); -function or(e, r, { target: t = "stdout", ...n } = {}) { - return en.default[t] - ? Xt.link(e, r) - : n.fallback === !1 - ? e - : typeof n.fallback == "function" - ? n.fallback(e, r) - : `${e} (\u200B${r}\u200B)`; -} -or.isSupported = en.default.stdout; -or.stderr = (e, r, t = {}) => or(e, r, { target: "stderr", ...t }); -or.stderr.isSupported = en.default.stderr; -function wi(e) { - return or(e, e, { fallback: Y }); -} -var Vc = ps(), - xi = Vc.version; -function Er(e) { - let r = jc(); - return ( - r || - (e?.config.engineType === "library" - ? "library" - : e?.config.engineType === "binary" - ? "binary" - : e?.config.engineType === "client" - ? "client" - : Bc()) - ); -} -function jc() { - let e = process.env.PRISMA_CLIENT_ENGINE_TYPE; - return e === "library" - ? "library" - : e === "binary" - ? "binary" - : e === "client" - ? "client" - : void 0; -} -function Bc() { - return "library"; -} -function vi(e) { - return e.name === "DriverAdapterError" && typeof e.cause == "object"; -} -function rn(e) { - return { - ok: !0, - value: e, - map(r) { - return rn(r(e)); - }, - flatMap(r) { - return r(e); - }, - }; -} -function sr(e) { - return { - ok: !1, - error: e, - map() { - return sr(e); - }, - flatMap() { - return sr(e); - }, - }; -} -var ds = N("driver-adapter-utils"), - Pi = class { - registeredErrors = []; - consumeError(r) { - return this.registeredErrors[r]; - } - registerNewError(r) { - let t = 0; - for (; this.registeredErrors[t] !== void 0; ) t++; - return ((this.registeredErrors[t] = { error: r }), t); - } - }; -var tn = (e, r = new Pi()) => { - let t = { - adapterName: e.adapterName, - errorRegistry: r, - queryRaw: ke(r, e.queryRaw.bind(e)), - executeRaw: ke(r, e.executeRaw.bind(e)), - executeScript: ke(r, e.executeScript.bind(e)), - dispose: ke(r, e.dispose.bind(e)), - provider: e.provider, - startTransaction: async (...n) => - (await ke(r, e.startTransaction.bind(e))(...n)).map((o) => Uc(r, o)), - }; - return ( - e.getConnectionInfo && - (t.getConnectionInfo = Gc(r, e.getConnectionInfo.bind(e))), - t - ); - }, - Uc = (e, r) => ({ - adapterName: r.adapterName, - provider: r.provider, - options: r.options, - queryRaw: ke(e, r.queryRaw.bind(r)), - executeRaw: ke(e, r.executeRaw.bind(r)), - commit: ke(e, r.commit.bind(r)), - rollback: ke(e, r.rollback.bind(r)), - }); -function ke(e, r) { - return async (...t) => { - try { - return rn(await r(...t)); - } catch (n) { - if ((ds("[error@wrapAsync]", n), vi(n))) return sr(n.cause); - let i = e.registerNewError(n); - return sr({ kind: "GenericJs", id: i }); - } - }; -} -function Gc(e, r) { - return (...t) => { - try { - return rn(r(...t)); - } catch (n) { - if ((ds("[error@wrapSync]", n), vi(n))) return sr(n.cause); - let i = e.registerNewError(n); - return sr({ kind: "GenericJs", id: i }); - } - }; -} -var Wc = O(on()); -var M = O(require("node:path")), - Jc = O(on()), - wh = N("prisma:engines"); -function ms() { - return M.default.join(__dirname, "../"); -} -var xh = "libquery-engine"; -M.default.join(__dirname, "../query-engine-darwin"); -M.default.join(__dirname, "../query-engine-darwin-arm64"); -M.default.join(__dirname, "../query-engine-debian-openssl-1.0.x"); -M.default.join(__dirname, "../query-engine-debian-openssl-1.1.x"); -M.default.join(__dirname, "../query-engine-debian-openssl-3.0.x"); -M.default.join(__dirname, "../query-engine-linux-static-x64"); -M.default.join(__dirname, "../query-engine-linux-static-arm64"); -M.default.join(__dirname, "../query-engine-rhel-openssl-1.0.x"); -M.default.join(__dirname, "../query-engine-rhel-openssl-1.1.x"); -M.default.join(__dirname, "../query-engine-rhel-openssl-3.0.x"); -M.default.join(__dirname, "../libquery_engine-darwin.dylib.node"); -M.default.join(__dirname, "../libquery_engine-darwin-arm64.dylib.node"); -M.default.join(__dirname, "../libquery_engine-debian-openssl-1.0.x.so.node"); -M.default.join(__dirname, "../libquery_engine-debian-openssl-1.1.x.so.node"); -M.default.join(__dirname, "../libquery_engine-debian-openssl-3.0.x.so.node"); -M.default.join( - __dirname, - "../libquery_engine-linux-arm64-openssl-1.0.x.so.node", -); -M.default.join( - __dirname, - "../libquery_engine-linux-arm64-openssl-1.1.x.so.node", -); -M.default.join( - __dirname, - "../libquery_engine-linux-arm64-openssl-3.0.x.so.node", -); -M.default.join(__dirname, "../libquery_engine-linux-musl.so.node"); -M.default.join( - __dirname, - "../libquery_engine-linux-musl-openssl-3.0.x.so.node", -); -M.default.join(__dirname, "../libquery_engine-rhel-openssl-1.0.x.so.node"); -M.default.join(__dirname, "../libquery_engine-rhel-openssl-1.1.x.so.node"); -M.default.join(__dirname, "../libquery_engine-rhel-openssl-3.0.x.so.node"); -M.default.join(__dirname, "../query_engine-windows.dll.node"); -var Si = O(require("node:fs")), - fs = gr("chmodPlusX"); -function Ri(e) { - if (process.platform === "win32") return; - let r = Si.default.statSync(e), - t = r.mode | 64 | 8 | 1; - if (r.mode === t) { - fs(`Execution permissions of ${e} are fine`); - return; - } - let n = t.toString(8).slice(-3); - (fs(`Have to call chmodPlusX on ${e}`), Si.default.chmodSync(e, n)); -} -function Ai(e) { - let r = e.e, - t = (a) => - `Prisma cannot find the required \`${a}\` system library in your system`, - n = r.message.includes("cannot open shared object file"), - i = `Please refer to the documentation about Prisma's system requirements: ${wi("https://pris.ly/d/system-requirements")}`, - o = `Unable to require(\`${Ce(e.id)}\`).`, - s = hr({ message: r.message, code: r.code }) - .with({ code: "ENOENT" }, () => "File does not exist.") - .when( - ({ message: a }) => n && a.includes("libz"), - () => `${t("libz")}. Please install it and try again.`, - ) - .when( - ({ message: a }) => n && a.includes("libgcc_s"), - () => `${t("libgcc_s")}. Please install it and try again.`, - ) - .when( - ({ message: a }) => n && a.includes("libssl"), - () => { - let a = e.platformInfo.libssl - ? `openssl-${e.platformInfo.libssl}` - : "openssl"; - return `${t("libssl")}. Please install ${a} and try again.`; - }, - ) - .when( - ({ message: a }) => a.includes("GLIBC"), - () => - `Prisma has detected an incompatible version of the \`glibc\` C standard library installed in your system. This probably means your system may be too old to run Prisma. ${i}`, - ) - .when( - ({ message: a }) => - e.platformInfo.platform === "linux" && a.includes("symbol not found"), - () => - `The Prisma engines are not compatible with your system ${e.platformInfo.originalDistro} on (${e.platformInfo.archFromUname}) which uses the \`${e.platformInfo.binaryTarget}\` binaryTarget by default. ${i}`, - ) - .otherwise( - () => - `The Prisma engines do not seem to be compatible with your system. ${i}`, - ); - return `${o} +"use strict";var yu=Object.create;var jt=Object.defineProperty;var bu=Object.getOwnPropertyDescriptor;var Eu=Object.getOwnPropertyNames;var wu=Object.getPrototypeOf,xu=Object.prototype.hasOwnProperty;var Do=(e,r)=>()=>(e&&(r=e(e=0)),r);var ue=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports),tr=(e,r)=>{for(var t in r)jt(e,t,{get:r[t],enumerable:!0})},Oo=(e,r,t,n)=>{if(r&&typeof r=="object"||typeof r=="function")for(let i of Eu(r))!xu.call(e,i)&&i!==t&&jt(e,i,{get:()=>r[i],enumerable:!(n=bu(r,i))||n.enumerable});return e};var O=(e,r,t)=>(t=e!=null?yu(wu(e)):{},Oo(r||!e||!e.__esModule?jt(t,"default",{value:e,enumerable:!0}):t,e)),vu=e=>Oo(jt({},"__esModule",{value:!0}),e);var hi=ue((_g,is)=>{"use strict";is.exports=(e,r=process.argv)=>{let t=e.startsWith("-")?"":e.length===1?"-":"--",n=r.indexOf(t+e),i=r.indexOf("--");return n!==-1&&(i===-1||n{"use strict";var Fc=require("node:os"),os=require("node:tty"),de=hi(),{env:G}=process,Qe;de("no-color")||de("no-colors")||de("color=false")||de("color=never")?Qe=0:(de("color")||de("colors")||de("color=true")||de("color=always"))&&(Qe=1);"FORCE_COLOR"in G&&(G.FORCE_COLOR==="true"?Qe=1:G.FORCE_COLOR==="false"?Qe=0:Qe=G.FORCE_COLOR.length===0?1:Math.min(parseInt(G.FORCE_COLOR,10),3));function yi(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function bi(e,r){if(Qe===0)return 0;if(de("color=16m")||de("color=full")||de("color=truecolor"))return 3;if(de("color=256"))return 2;if(e&&!r&&Qe===void 0)return 0;let t=Qe||0;if(G.TERM==="dumb")return t;if(process.platform==="win32"){let n=Fc.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in G)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in G)||G.CI_NAME==="codeship"?1:t;if("TEAMCITY_VERSION"in G)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(G.TEAMCITY_VERSION)?1:0;if(G.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in G){let n=parseInt((G.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(G.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(G.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(G.TERM)||"COLORTERM"in G?1:t}function Mc(e){let r=bi(e,e&&e.isTTY);return yi(r)}ss.exports={supportsColor:Mc,stdout:yi(bi(!0,os.isatty(1))),stderr:yi(bi(!0,os.isatty(2)))}});var cs=ue((Lg,us)=>{"use strict";var $c=as(),br=hi();function ls(e){if(/^\d{3,4}$/.test(e)){let t=/(\d{1,2})(\d{2})/.exec(e)||[];return{major:0,minor:parseInt(t[1],10),patch:parseInt(t[2],10)}}let r=(e||"").split(".").map(t=>parseInt(t,10));return{major:r[0],minor:r[1],patch:r[2]}}function Ei(e){let{CI:r,FORCE_HYPERLINK:t,NETLIFY:n,TEAMCITY_VERSION:i,TERM_PROGRAM:o,TERM_PROGRAM_VERSION:s,VTE_VERSION:a,TERM:l}=process.env;if(t)return!(t.length>0&&parseInt(t,10)===0);if(br("no-hyperlink")||br("no-hyperlinks")||br("hyperlink=false")||br("hyperlink=never"))return!1;if(br("hyperlink=true")||br("hyperlink=always")||n)return!0;if(!$c.supportsColor(e)||e&&!e.isTTY)return!1;if("WT_SESSION"in process.env)return!0;if(process.platform==="win32"||r||i)return!1;if(o){let u=ls(s||"");switch(o){case"iTerm.app":return u.major===3?u.minor>=1:u.major>3;case"WezTerm":return u.major>=20200620;case"vscode":return u.major>1||u.major===1&&u.minor>=72;case"ghostty":return!0}}if(a){if(a==="0.50.0")return!1;let u=ls(a);return u.major>0||u.minor>=50}switch(l){case"alacritty":return!0}return!1}us.exports={supportsHyperlink:Ei,stdout:Ei(process.stdout),stderr:Ei(process.stderr)}});var ps=ue((Kg,qc)=>{qc.exports={name:"@prisma/internals",version:"6.19.2",description:"This package is intended for Prisma's internal use",main:"dist/index.js",types:"dist/index.d.ts",repository:{type:"git",url:"https://github.com/prisma/prisma.git",directory:"packages/internals"},homepage:"https://www.prisma.io",author:"Tim Suchanek ",bugs:"https://github.com/prisma/prisma/issues",license:"Apache-2.0",scripts:{dev:"DEV=true tsx helpers/build.ts",build:"tsx helpers/build.ts",test:"dotenv -e ../../.db.env -- jest --silent",prepublishOnly:"pnpm run build"},files:["README.md","dist","!**/libquery_engine*","!dist/get-generators/engines/*","scripts"],devDependencies:{"@babel/helper-validator-identifier":"7.25.9","@opentelemetry/api":"1.9.0","@swc/core":"1.11.5","@swc/jest":"0.2.37","@types/babel__helper-validator-identifier":"7.15.2","@types/jest":"29.5.14","@types/node":"18.19.76","@types/resolve":"1.20.6",archiver:"6.0.2","checkpoint-client":"1.1.33","cli-truncate":"4.0.0",dotenv:"16.5.0",empathic:"2.0.0","escape-string-regexp":"5.0.0",execa:"8.0.1","fast-glob":"3.3.3","find-up":"7.0.0","fp-ts":"2.16.9","fs-extra":"11.3.0","global-directory":"4.0.0",globby:"11.1.0","identifier-regex":"1.0.0","indent-string":"4.0.0","is-windows":"1.0.2","is-wsl":"3.1.0",jest:"29.7.0","jest-junit":"16.0.0",kleur:"4.1.5","mock-stdin":"1.0.0","new-github-issue-url":"0.2.1","node-fetch":"3.3.2","npm-packlist":"5.1.3",open:"7.4.2","p-map":"4.0.0",resolve:"1.22.10","string-width":"7.2.0","strip-indent":"4.0.0","temp-dir":"2.0.0",tempy:"1.0.1","terminal-link":"4.0.0",tmp:"0.2.3","ts-pattern":"5.6.2","ts-toolbelt":"9.6.0",typescript:"5.4.5",yarn:"1.22.22"},dependencies:{"@prisma/config":"workspace:*","@prisma/debug":"workspace:*","@prisma/dmmf":"workspace:*","@prisma/driver-adapter-utils":"workspace:*","@prisma/engines":"workspace:*","@prisma/fetch-engine":"workspace:*","@prisma/generator":"workspace:*","@prisma/generator-helper":"workspace:*","@prisma/get-platform":"workspace:*","@prisma/prisma-schema-wasm":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/schema-engine-wasm":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/schema-files-loader":"workspace:*",arg:"5.0.2",prompts:"2.4.2"},peerDependencies:{typescript:">=5.1.0"},peerDependenciesMeta:{typescript:{optional:!0}},sideEffects:!1}});var Ti=ue((gh,Qc)=>{Qc.exports={name:"@prisma/engines-version",version:"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7",main:"index.js",types:"index.d.ts",license:"Apache-2.0",author:"Tim Suchanek ",prisma:{enginesVersion:"c2990dca591cba766e3b7ef5d9e8a84796e47ab7"},repository:{type:"git",url:"https://github.com/prisma/engines-wrapper.git",directory:"packages/engines-version"},devDependencies:{"@types/node":"18.19.76",typescript:"4.9.5"},files:["index.js","index.d.ts"],scripts:{build:"tsc -d"}}});var on=ue(nn=>{"use strict";Object.defineProperty(nn,"__esModule",{value:!0});nn.enginesVersion=void 0;nn.enginesVersion=Ti().prisma.enginesVersion});var hs=ue((Ih,gs)=>{"use strict";gs.exports=e=>{let r=e.match(/^[ \t]*(?=\S)/gm);return r?r.reduce((t,n)=>Math.min(t,n.length),1/0):0}});var Di=ue((kh,Es)=>{"use strict";Es.exports=(e,r=1,t)=>{if(t={indent:" ",includeEmptyLines:!1,...t},typeof e!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof e}\``);if(typeof r!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof r}\``);if(typeof t.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof t.indent}\``);if(r===0)return e;let n=t.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return e.replace(n,t.indent.repeat(r))}});var vs=ue((jh,tp)=>{tp.exports={name:"dotenv",version:"16.5.0",description:"Loads environment variables from .env file",main:"lib/main.js",types:"lib/main.d.ts",exports:{".":{types:"./lib/main.d.ts",require:"./lib/main.js",default:"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},scripts:{"dts-check":"tsc --project tests/types/tsconfig.json",lint:"standard",pretest:"npm run lint && npm run dts-check",test:"tap run --allow-empty-coverage --disable-coverage --timeout=60000","test:coverage":"tap run --show-full-coverage --timeout=60000 --coverage-report=lcov",prerelease:"npm test",release:"standard-version"},repository:{type:"git",url:"git://github.com/motdotla/dotenv.git"},homepage:"https://github.com/motdotla/dotenv#readme",funding:"https://dotenvx.com",keywords:["dotenv","env",".env","environment","variables","config","settings"],readmeFilename:"README.md",license:"BSD-2-Clause",devDependencies:{"@types/node":"^18.11.3",decache:"^4.6.2",sinon:"^14.0.1",standard:"^17.0.0","standard-version":"^9.5.0",tap:"^19.2.0",typescript:"^4.8.4"},engines:{node:">=12"},browser:{fs:!1}}});var As=ue((Bh,_e)=>{"use strict";var Fi=require("node:fs"),Mi=require("node:path"),np=require("node:os"),ip=require("node:crypto"),op=vs(),Ts=op.version,sp=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function ap(e){let r={},t=e.toString();t=t.replace(/\r\n?/mg,` +`);let n;for(;(n=sp.exec(t))!=null;){let i=n[1],o=n[2]||"";o=o.trim();let s=o[0];o=o.replace(/^(['"`])([\s\S]*)\1$/mg,"$2"),s==='"'&&(o=o.replace(/\\n/g,` +`),o=o.replace(/\\r/g,"\r")),r[i]=o}return r}function lp(e){let r=Rs(e),t=B.configDotenv({path:r});if(!t.parsed){let s=new Error(`MISSING_DATA: Cannot parse ${r} for an unknown reason`);throw s.code="MISSING_DATA",s}let n=Ss(e).split(","),i=n.length,o;for(let s=0;s=i)throw a}return B.parse(o)}function up(e){console.log(`[dotenv@${Ts}][WARN] ${e}`)}function ot(e){console.log(`[dotenv@${Ts}][DEBUG] ${e}`)}function Ss(e){return e&&e.DOTENV_KEY&&e.DOTENV_KEY.length>0?e.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function cp(e,r){let t;try{t=new URL(r)}catch(a){if(a.code==="ERR_INVALID_URL"){let l=new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw l.code="INVALID_DOTENV_KEY",l}throw a}let n=t.password;if(!n){let a=new Error("INVALID_DOTENV_KEY: Missing key part");throw a.code="INVALID_DOTENV_KEY",a}let i=t.searchParams.get("environment");if(!i){let a=new Error("INVALID_DOTENV_KEY: Missing environment part");throw a.code="INVALID_DOTENV_KEY",a}let o=`DOTENV_VAULT_${i.toUpperCase()}`,s=e.parsed[o];if(!s){let a=new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${o} in your .env.vault file.`);throw a.code="NOT_FOUND_DOTENV_ENVIRONMENT",a}return{ciphertext:s,key:n}}function Rs(e){let r=null;if(e&&e.path&&e.path.length>0)if(Array.isArray(e.path))for(let t of e.path)Fi.existsSync(t)&&(r=t.endsWith(".vault")?t:`${t}.vault`);else r=e.path.endsWith(".vault")?e.path:`${e.path}.vault`;else r=Mi.resolve(process.cwd(),".env.vault");return Fi.existsSync(r)?r:null}function Ps(e){return e[0]==="~"?Mi.join(np.homedir(),e.slice(1)):e}function pp(e){!!(e&&e.debug)&&ot("Loading env from encrypted .env.vault");let t=B._parseVault(e),n=process.env;return e&&e.processEnv!=null&&(n=e.processEnv),B.populate(n,t,e),{parsed:t}}function dp(e){let r=Mi.resolve(process.cwd(),".env"),t="utf8",n=!!(e&&e.debug);e&&e.encoding?t=e.encoding:n&&ot("No encoding is specified. UTF-8 is used by default");let i=[r];if(e&&e.path)if(!Array.isArray(e.path))i=[Ps(e.path)];else{i=[];for(let l of e.path)i.push(Ps(l))}let o,s={};for(let l of i)try{let u=B.parse(Fi.readFileSync(l,{encoding:t}));B.populate(s,u,e)}catch(u){n&&ot(`Failed to load ${l} ${u.message}`),o=u}let a=process.env;return e&&e.processEnv!=null&&(a=e.processEnv),B.populate(a,s,e),o?{parsed:s,error:o}:{parsed:s}}function mp(e){if(Ss(e).length===0)return B.configDotenv(e);let r=Rs(e);return r?B._configVault(e):(up(`You set DOTENV_KEY but you are missing a .env.vault file at ${r}. Did you forget to build it?`),B.configDotenv(e))}function fp(e,r){let t=Buffer.from(r.slice(-64),"hex"),n=Buffer.from(e,"base64"),i=n.subarray(0,12),o=n.subarray(-16);n=n.subarray(12,-16);try{let s=ip.createDecipheriv("aes-256-gcm",t,i);return s.setAuthTag(o),`${s.update(n)}${s.final()}`}catch(s){let a=s instanceof RangeError,l=s.message==="Invalid key length",u=s.message==="Unsupported state or unable to authenticate data";if(a||l){let c=new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw c.code="INVALID_DOTENV_KEY",c}else if(u){let c=new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw c.code="DECRYPTION_FAILED",c}else throw s}}function gp(e,r,t={}){let n=!!(t&&t.debug),i=!!(t&&t.override);if(typeof r!="object"){let o=new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw o.code="OBJECT_REQUIRED",o}for(let o of Object.keys(r))Object.prototype.hasOwnProperty.call(e,o)?(i===!0&&(e[o]=r[o]),n&&ot(i===!0?`"${o}" is already defined and WAS overwritten`:`"${o}" is already defined and was NOT overwritten`)):e[o]=r[o]}var B={configDotenv:dp,_configVault:pp,_parseVault:lp,config:mp,decrypt:fp,parse:ap,populate:gp};_e.exports.configDotenv=B.configDotenv;_e.exports._configVault=B._configVault;_e.exports._parseVault=B._parseVault;_e.exports.config=B.config;_e.exports.decrypt=B.decrypt;_e.exports.parse=B.parse;_e.exports.populate=B.populate;_e.exports=B});var Os=ue((Kh,cn)=>{"use strict";cn.exports=(e={})=>{let r;if(e.repoUrl)r=e.repoUrl;else if(e.user&&e.repo)r=`https://github.com/${e.user}/${e.repo}`;else throw new Error("You need to specify either the `repoUrl` option or both the `user` and `repo` options");let t=new URL(`${r}/issues/new`),n=["body","title","labels","template","milestone","assignee","projects"];for(let i of n){let o=e[i];if(o!==void 0){if(i==="labels"||i==="projects"){if(!Array.isArray(o))throw new TypeError(`The \`${i}\` option should be an array`);o=o.join(",")}t.searchParams.set(i,o)}}return t.toString()};cn.exports.default=cn.exports});var Ki=ue((vb,ea)=>{"use strict";ea.exports=function(){function e(r,t,n,i,o){return rn?n+1:r+1:i===o?t:t+1}return function(r,t){if(r===t)return 0;if(r.length>t.length){var n=r;r=t,t=n}for(var i=r.length,o=t.length;i>0&&r.charCodeAt(i-1)===t.charCodeAt(o-1);)i--,o--;for(var s=0;s{"use strict"});var sa=Do(()=>{"use strict"});var jf={};tr(jf,{DMMF:()=>ct,Debug:()=>N,Decimal:()=>Fe,Extensions:()=>ni,MetricsClient:()=>Lr,PrismaClientInitializationError:()=>P,PrismaClientKnownRequestError:()=>z,PrismaClientRustPanicError:()=>ae,PrismaClientUnknownRequestError:()=>V,PrismaClientValidationError:()=>Z,Public:()=>ii,Sql:()=>ie,createParam:()=>va,defineDmmfProperty:()=>Ca,deserializeJsonResponse:()=>Vr,deserializeRawResult:()=>Xn,dmmfToRuntimeDataModel:()=>Ns,empty:()=>Oa,getPrismaClient:()=>fu,getRuntime:()=>Kn,join:()=>Da,makeStrictEnum:()=>gu,makeTypedQueryFactory:()=>Ia,objectEnumValues:()=>On,raw:()=>no,serializeJsonQuery:()=>$n,skip:()=>Mn,sqltag:()=>io,warnEnvConflicts:()=>hu,warnOnce:()=>at});module.exports=vu(jf);var ni={};tr(ni,{defineExtension:()=>ko,getExtensionContext:()=>_o});function ko(e){return typeof e=="function"?e:r=>r.$extends(e)}function _o(e){return e}var ii={};tr(ii,{validator:()=>No});function No(...e){return r=>r}var Bt={};tr(Bt,{$:()=>qo,bgBlack:()=>ku,bgBlue:()=>Fu,bgCyan:()=>$u,bgGreen:()=>Nu,bgMagenta:()=>Mu,bgRed:()=>_u,bgWhite:()=>qu,bgYellow:()=>Lu,black:()=>Cu,blue:()=>nr,bold:()=>W,cyan:()=>De,dim:()=>Ce,gray:()=>Hr,green:()=>qe,grey:()=>Ou,hidden:()=>Ru,inverse:()=>Su,italic:()=>Tu,magenta:()=>Iu,red:()=>ce,reset:()=>Pu,strikethrough:()=>Au,underline:()=>Y,white:()=>Du,yellow:()=>Ie});var oi,Lo,Fo,Mo,$o=!0;typeof process<"u"&&({FORCE_COLOR:oi,NODE_DISABLE_COLORS:Lo,NO_COLOR:Fo,TERM:Mo}=process.env||{},$o=process.stdout&&process.stdout.isTTY);var qo={enabled:!Lo&&Fo==null&&Mo!=="dumb"&&(oi!=null&&oi!=="0"||$o)};function F(e,r){let t=new RegExp(`\\x1b\\[${r}m`,"g"),n=`\x1B[${e}m`,i=`\x1B[${r}m`;return function(o){return!qo.enabled||o==null?o:n+(~(""+o).indexOf(i)?o.replace(t,i+n):o)+i}}var Pu=F(0,0),W=F(1,22),Ce=F(2,22),Tu=F(3,23),Y=F(4,24),Su=F(7,27),Ru=F(8,28),Au=F(9,29),Cu=F(30,39),ce=F(31,39),qe=F(32,39),Ie=F(33,39),nr=F(34,39),Iu=F(35,39),De=F(36,39),Du=F(37,39),Hr=F(90,39),Ou=F(90,39),ku=F(40,49),_u=F(41,49),Nu=F(42,49),Lu=F(43,49),Fu=F(44,49),Mu=F(45,49),$u=F(46,49),qu=F(47,49);var Vu=100,Vo=["green","yellow","blue","magenta","cyan","red"],Yr=[],jo=Date.now(),ju=0,si=typeof process<"u"?process.env:{};globalThis.DEBUG??=si.DEBUG??"";globalThis.DEBUG_COLORS??=si.DEBUG_COLORS?si.DEBUG_COLORS==="true":!0;var zr={enable(e){typeof e=="string"&&(globalThis.DEBUG=e)},disable(){let e=globalThis.DEBUG;return globalThis.DEBUG="",e},enabled(e){let r=globalThis.DEBUG.split(",").map(i=>i.replace(/[.+?^${}()|[\]\\]/g,"\\$&")),t=r.some(i=>i===""||i[0]==="-"?!1:e.match(RegExp(i.split("*").join(".*")+"$"))),n=r.some(i=>i===""||i[0]!=="-"?!1:e.match(RegExp(i.slice(1).split("*").join(".*")+"$")));return t&&!n},log:(...e)=>{let[r,t,...n]=e;(console.warn??console.log)(`${r} ${t}`,...n)},formatters:{}};function Bu(e){let r={color:Vo[ju++%Vo.length],enabled:zr.enabled(e),namespace:e,log:zr.log,extend:()=>{}},t=(...n)=>{let{enabled:i,namespace:o,color:s,log:a}=r;if(n.length!==0&&Yr.push([o,...n]),Yr.length>Vu&&Yr.shift(),zr.enabled(o)||i){let l=n.map(c=>typeof c=="string"?c:Uu(c)),u=`+${Date.now()-jo}ms`;jo=Date.now(),globalThis.DEBUG_COLORS?a(Bt[s](W(o)),...l,Bt[s](u)):a(o,...l,u)}};return new Proxy(t,{get:(n,i)=>r[i],set:(n,i,o)=>r[i]=o})}var N=new Proxy(Bu,{get:(e,r)=>zr[r],set:(e,r,t)=>zr[r]=t});function Uu(e,r=2){let t=new Set;return JSON.stringify(e,(n,i)=>{if(typeof i=="object"&&i!==null){if(t.has(i))return"[Circular *]";t.add(i)}else if(typeof i=="bigint")return i.toString();return i},r)}function Bo(e=7500){let r=Yr.map(([t,...n])=>`${t} ${n.map(i=>typeof i=="string"?i:JSON.stringify(i)).join(" ")}`).join(` +`);return r.length!!(e&&typeof e=="object"),Qt=e=>e&&!!e[Oe],Ee=(e,r,t)=>{if(Qt(e)){let n=e[Oe](),{matched:i,selections:o}=n.match(r);return i&&o&&Object.keys(o).forEach(s=>t(s,o[s])),i}if(ui(e)){if(!ui(r))return!1;if(Array.isArray(e)){if(!Array.isArray(r))return!1;let n=[],i=[],o=[];for(let s of e.keys()){let a=e[s];Qt(a)&&a[Gu]?o.push(a):o.length?i.push(a):n.push(a)}if(o.length){if(o.length>1)throw new Error("Pattern error: Using `...P.array(...)` several times in a single pattern is not allowed.");if(r.lengthEe(u,s[c],t))&&i.every((u,c)=>Ee(u,a[c],t))&&(o.length===0||Ee(o[0],l,t))}return e.length===r.length&&e.every((s,a)=>Ee(s,r[a],t))}return Reflect.ownKeys(e).every(n=>{let i=e[n];return(n in r||Qt(o=i)&&o[Oe]().matcherType==="optional")&&Ee(i,r[n],t);var o})}return Object.is(r,e)},Ge=e=>{var r,t,n;return ui(e)?Qt(e)?(r=(t=(n=e[Oe]()).getSelectionKeys)==null?void 0:t.call(n))!=null?r:[]:Array.isArray(e)?Zr(e,Ge):Zr(Object.values(e),Ge):[]},Zr=(e,r)=>e.reduce((t,n)=>t.concat(r(n)),[]);function pe(e){return Object.assign(e,{optional:()=>Qu(e),and:r=>q(e,r),or:r=>Wu(e,r),select:r=>r===void 0?Qo(e):Qo(r,e)})}function Qu(e){return pe({[Oe]:()=>({match:r=>{let t={},n=(i,o)=>{t[i]=o};return r===void 0?(Ge(e).forEach(i=>n(i,void 0)),{matched:!0,selections:t}):{matched:Ee(e,r,n),selections:t}},getSelectionKeys:()=>Ge(e),matcherType:"optional"})})}function q(...e){return pe({[Oe]:()=>({match:r=>{let t={},n=(i,o)=>{t[i]=o};return{matched:e.every(i=>Ee(i,r,n)),selections:t}},getSelectionKeys:()=>Zr(e,Ge),matcherType:"and"})})}function Wu(...e){return pe({[Oe]:()=>({match:r=>{let t={},n=(i,o)=>{t[i]=o};return Zr(e,Ge).forEach(i=>n(i,void 0)),{matched:e.some(i=>Ee(i,r,n)),selections:t}},getSelectionKeys:()=>Zr(e,Ge),matcherType:"or"})})}function A(e){return{[Oe]:()=>({match:r=>({matched:!!e(r)})})}}function Qo(...e){let r=typeof e[0]=="string"?e[0]:void 0,t=e.length===2?e[1]:typeof e[0]=="string"?void 0:e[0];return pe({[Oe]:()=>({match:n=>{let i={[r??Wt]:n};return{matched:t===void 0||Ee(t,n,(o,s)=>{i[o]=s}),selections:i}},getSelectionKeys:()=>[r??Wt].concat(t===void 0?[]:Ge(t))})})}function ye(e){return typeof e=="number"}function Ve(e){return typeof e=="string"}function je(e){return typeof e=="bigint"}var eg=pe(A(function(e){return!0}));var Be=e=>Object.assign(pe(e),{startsWith:r=>{return Be(q(e,(t=r,A(n=>Ve(n)&&n.startsWith(t)))));var t},endsWith:r=>{return Be(q(e,(t=r,A(n=>Ve(n)&&n.endsWith(t)))));var t},minLength:r=>Be(q(e,(t=>A(n=>Ve(n)&&n.length>=t))(r))),length:r=>Be(q(e,(t=>A(n=>Ve(n)&&n.length===t))(r))),maxLength:r=>Be(q(e,(t=>A(n=>Ve(n)&&n.length<=t))(r))),includes:r=>{return Be(q(e,(t=r,A(n=>Ve(n)&&n.includes(t)))));var t},regex:r=>{return Be(q(e,(t=r,A(n=>Ve(n)&&!!n.match(t)))));var t}}),rg=Be(A(Ve)),be=e=>Object.assign(pe(e),{between:(r,t)=>be(q(e,((n,i)=>A(o=>ye(o)&&n<=o&&i>=o))(r,t))),lt:r=>be(q(e,(t=>A(n=>ye(n)&&nbe(q(e,(t=>A(n=>ye(n)&&n>t))(r))),lte:r=>be(q(e,(t=>A(n=>ye(n)&&n<=t))(r))),gte:r=>be(q(e,(t=>A(n=>ye(n)&&n>=t))(r))),int:()=>be(q(e,A(r=>ye(r)&&Number.isInteger(r)))),finite:()=>be(q(e,A(r=>ye(r)&&Number.isFinite(r)))),positive:()=>be(q(e,A(r=>ye(r)&&r>0))),negative:()=>be(q(e,A(r=>ye(r)&&r<0)))}),tg=be(A(ye)),Ue=e=>Object.assign(pe(e),{between:(r,t)=>Ue(q(e,((n,i)=>A(o=>je(o)&&n<=o&&i>=o))(r,t))),lt:r=>Ue(q(e,(t=>A(n=>je(n)&&nUe(q(e,(t=>A(n=>je(n)&&n>t))(r))),lte:r=>Ue(q(e,(t=>A(n=>je(n)&&n<=t))(r))),gte:r=>Ue(q(e,(t=>A(n=>je(n)&&n>=t))(r))),positive:()=>Ue(q(e,A(r=>je(r)&&r>0))),negative:()=>Ue(q(e,A(r=>je(r)&&r<0)))}),ng=Ue(A(je)),ig=pe(A(function(e){return typeof e=="boolean"})),og=pe(A(function(e){return typeof e=="symbol"})),sg=pe(A(function(e){return e==null})),ag=pe(A(function(e){return e!=null}));var ci=class extends Error{constructor(r){let t;try{t=JSON.stringify(r)}catch{t=r}super(`Pattern matching error: no pattern matches value ${t}`),this.input=void 0,this.input=r}},pi={matched:!1,value:void 0};function hr(e){return new di(e,pi)}var di=class e{constructor(r,t){this.input=void 0,this.state=void 0,this.input=r,this.state=t}with(...r){if(this.state.matched)return this;let t=r[r.length-1],n=[r[0]],i;r.length===3&&typeof r[1]=="function"?i=r[1]:r.length>2&&n.push(...r.slice(1,r.length-1));let o=!1,s={},a=(u,c)=>{o=!0,s[u]=c},l=!n.some(u=>Ee(u,this.input,a))||i&&!i(this.input)?pi:{matched:!0,value:t(o?Wt in s?s[Wt]:s:this.input,this.input)};return new e(this.input,l)}when(r,t){if(this.state.matched)return this;let n=!!r(this.input);return new e(this.input,n?{matched:!0,value:t(this.input,this.input)}:pi)}otherwise(r){return this.state.matched?this.state.value:r(this.input)}exhaustive(){if(this.state.matched)return this.state.value;throw new ci(this.input)}run(){return this.exhaustive()}returnType(){return this}};var Ho=require("node:util");var Ju={warn:Ie("prisma:warn")},Ku={warn:()=>!process.env.PRISMA_DISABLE_WARNINGS};function Jt(e,...r){Ku.warn()&&console.warn(`${Ju.warn} ${e}`,...r)}var Hu=(0,Ho.promisify)(Ko.default.exec),ee=gr("prisma:get-platform"),Yu=["1.0.x","1.1.x","3.0.x"];async function Yo(){let e=Ht.default.platform(),r=process.arch;if(e==="freebsd"){let s=await Yt("freebsd-version");if(s&&s.trim().length>0){let l=/^(\d+)\.?/.exec(s);if(l)return{platform:"freebsd",targetDistro:`freebsd${l[1]}`,arch:r}}}if(e!=="linux")return{platform:e,arch:r};let t=await Zu(),n=await sc(),i=ec({arch:r,archFromUname:n,familyDistro:t.familyDistro}),{libssl:o}=await rc(i);return{platform:"linux",libssl:o,arch:r,archFromUname:n,...t}}function zu(e){let r=/^ID="?([^"\n]*)"?$/im,t=/^ID_LIKE="?([^"\n]*)"?$/im,n=r.exec(e),i=n&&n[1]&&n[1].toLowerCase()||"",o=t.exec(e),s=o&&o[1]&&o[1].toLowerCase()||"",a=hr({id:i,idLike:s}).with({id:"alpine"},({id:l})=>({targetDistro:"musl",familyDistro:l,originalDistro:l})).with({id:"raspbian"},({id:l})=>({targetDistro:"arm",familyDistro:"debian",originalDistro:l})).with({id:"nixos"},({id:l})=>({targetDistro:"nixos",originalDistro:l,familyDistro:"nixos"})).with({id:"debian"},{id:"ubuntu"},({id:l})=>({targetDistro:"debian",familyDistro:"debian",originalDistro:l})).with({id:"rhel"},{id:"centos"},{id:"fedora"},({id:l})=>({targetDistro:"rhel",familyDistro:"rhel",originalDistro:l})).when(({idLike:l})=>l.includes("debian")||l.includes("ubuntu"),({id:l})=>({targetDistro:"debian",familyDistro:"debian",originalDistro:l})).when(({idLike:l})=>i==="arch"||l.includes("arch"),({id:l})=>({targetDistro:"debian",familyDistro:"arch",originalDistro:l})).when(({idLike:l})=>l.includes("centos")||l.includes("fedora")||l.includes("rhel")||l.includes("suse"),({id:l})=>({targetDistro:"rhel",familyDistro:"rhel",originalDistro:l})).otherwise(({id:l})=>({targetDistro:void 0,familyDistro:void 0,originalDistro:l}));return ee(`Found distro info: +${JSON.stringify(a,null,2)}`),a}async function Zu(){let e="/etc/os-release";try{let r=await mi.default.readFile(e,{encoding:"utf-8"});return zu(r)}catch{return{targetDistro:void 0,familyDistro:void 0,originalDistro:void 0}}}function Xu(e){let r=/^OpenSSL\s(\d+\.\d+)\.\d+/.exec(e);if(r){let t=`${r[1]}.x`;return zo(t)}}function Wo(e){let r=/libssl\.so\.(\d)(\.\d)?/.exec(e);if(r){let t=`${r[1]}${r[2]??".0"}.x`;return zo(t)}}function zo(e){let r=(()=>{if(Xo(e))return e;let t=e.split(".");return t[1]="0",t.join(".")})();if(Yu.includes(r))return r}function ec(e){return hr(e).with({familyDistro:"musl"},()=>(ee('Trying platform-specific paths for "alpine"'),["/lib","/usr/lib"])).with({familyDistro:"debian"},({archFromUname:r})=>(ee('Trying platform-specific paths for "debian" (and "ubuntu")'),[`/usr/lib/${r}-linux-gnu`,`/lib/${r}-linux-gnu`])).with({familyDistro:"rhel"},()=>(ee('Trying platform-specific paths for "rhel"'),["/lib64","/usr/lib64"])).otherwise(({familyDistro:r,arch:t,archFromUname:n})=>(ee(`Don't know any platform-specific paths for "${r}" on ${t} (${n})`),[]))}async function rc(e){let r='grep -v "libssl.so.0"',t=await Jo(e);if(t){ee(`Found libssl.so file using platform-specific paths: ${t}`);let o=Wo(t);if(ee(`The parsed libssl version is: ${o}`),o)return{libssl:o,strategy:"libssl-specific-path"}}ee('Falling back to "ldconfig" and other generic paths');let n=await Yt(`ldconfig -p | sed "s/.*=>s*//" | sed "s|.*/||" | grep libssl | sort | ${r}`);if(n||(n=await Jo(["/lib64","/usr/lib64","/lib","/usr/lib"])),n){ee(`Found libssl.so file using "ldconfig" or other generic paths: ${n}`);let o=Wo(n);if(ee(`The parsed libssl version is: ${o}`),o)return{libssl:o,strategy:"ldconfig"}}let i=await Yt("openssl version -v");if(i){ee(`Found openssl binary with version: ${i}`);let o=Xu(i);if(ee(`The parsed openssl version is: ${o}`),o)return{libssl:o,strategy:"openssl-binary"}}return ee("Couldn't find any version of libssl or OpenSSL in the system"),{}}async function Jo(e){for(let r of e){let t=await tc(r);if(t)return t}}async function tc(e){try{return(await mi.default.readdir(e)).find(t=>t.startsWith("libssl.so.")&&!t.startsWith("libssl.so.0"))}catch(r){if(r.code==="ENOENT")return;throw r}}async function ir(){let{binaryTarget:e}=await Zo();return e}function nc(e){return e.binaryTarget!==void 0}async function fi(){let{memoized:e,...r}=await Zo();return r}var Kt={};async function Zo(){if(nc(Kt))return Promise.resolve({...Kt,memoized:!0});let e=await Yo(),r=ic(e);return Kt={...e,binaryTarget:r},{...Kt,memoized:!1}}function ic(e){let{platform:r,arch:t,archFromUname:n,libssl:i,targetDistro:o,familyDistro:s,originalDistro:a}=e;r==="linux"&&!["x64","arm64"].includes(t)&&Jt(`Prisma only officially supports Linux on amd64 (x86_64) and arm64 (aarch64) system architectures (detected "${t}" instead). If you are using your own custom Prisma engines, you can ignore this warning, as long as you've compiled the engines for your system architecture "${n}".`);let l="1.1.x";if(r==="linux"&&i===void 0){let c=hr({familyDistro:s}).with({familyDistro:"debian"},()=>"Please manually install OpenSSL via `apt-get update -y && apt-get install -y openssl` and try installing Prisma again. If you're running Prisma on Docker, add this command to your Dockerfile, or switch to an image that already has OpenSSL installed.").otherwise(()=>"Please manually install OpenSSL and try installing Prisma again.");Jt(`Prisma failed to detect the libssl/openssl version to use, and may not work as expected. Defaulting to "openssl-${l}". +${c}`)}let u="debian";if(r==="linux"&&o===void 0&&ee(`Distro is "${a}". Falling back to Prisma engines built for "${u}".`),r==="darwin"&&t==="arm64")return"darwin-arm64";if(r==="darwin")return"darwin";if(r==="win32")return"windows";if(r==="freebsd")return o;if(r==="openbsd")return"openbsd";if(r==="netbsd")return"netbsd";if(r==="linux"&&o==="nixos")return"linux-nixos";if(r==="linux"&&t==="arm64")return`${o==="musl"?"linux-musl-arm64":"linux-arm64"}-openssl-${i||l}`;if(r==="linux"&&t==="arm")return`linux-arm-openssl-${i||l}`;if(r==="linux"&&o==="musl"){let c="linux-musl";return!i||Xo(i)?c:`${c}-openssl-${i}`}return r==="linux"&&o&&i?`${o}-openssl-${i}`:(r!=="linux"&&Jt(`Prisma detected unknown OS "${r}" and may not work as expected. Defaulting to "linux".`),i?`${u}-openssl-${i}`:o?`${o}-openssl-${l}`:`${u}-openssl-${l}`)}async function oc(e){try{return await e()}catch{return}}function Yt(e){return oc(async()=>{let r=await Hu(e);return ee(`Command "${e}" successfully returned "${r.stdout}"`),r.stdout})}async function sc(){return typeof Ht.default.machine=="function"?Ht.default.machine():(await Yt("uname -m"))?.trim()}function Xo(e){return e.startsWith("1.")}var Xt={};tr(Xt,{beep:()=>kc,clearScreen:()=>Cc,clearTerminal:()=>Ic,cursorBackward:()=>mc,cursorDown:()=>pc,cursorForward:()=>dc,cursorGetPosition:()=>hc,cursorHide:()=>Ec,cursorLeft:()=>ts,cursorMove:()=>cc,cursorNextLine:()=>yc,cursorPrevLine:()=>bc,cursorRestorePosition:()=>gc,cursorSavePosition:()=>fc,cursorShow:()=>wc,cursorTo:()=>uc,cursorUp:()=>rs,enterAlternativeScreen:()=>Dc,eraseDown:()=>Tc,eraseEndLine:()=>vc,eraseLine:()=>ns,eraseLines:()=>xc,eraseScreen:()=>gi,eraseStartLine:()=>Pc,eraseUp:()=>Sc,exitAlternativeScreen:()=>Oc,iTerm:()=>Lc,image:()=>Nc,link:()=>_c,scrollDown:()=>Ac,scrollUp:()=>Rc});var Zt=O(require("node:process"),1);var zt=globalThis.window?.document!==void 0,gg=globalThis.process?.versions?.node!==void 0,hg=globalThis.process?.versions?.bun!==void 0,yg=globalThis.Deno?.version?.deno!==void 0,bg=globalThis.process?.versions?.electron!==void 0,Eg=globalThis.navigator?.userAgent?.includes("jsdom")===!0,wg=typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope,xg=typeof DedicatedWorkerGlobalScope<"u"&&globalThis instanceof DedicatedWorkerGlobalScope,vg=typeof SharedWorkerGlobalScope<"u"&&globalThis instanceof SharedWorkerGlobalScope,Pg=typeof ServiceWorkerGlobalScope<"u"&&globalThis instanceof ServiceWorkerGlobalScope,Xr=globalThis.navigator?.userAgentData?.platform,Tg=Xr==="macOS"||globalThis.navigator?.platform==="MacIntel"||globalThis.navigator?.userAgent?.includes(" Mac ")===!0||globalThis.process?.platform==="darwin",Sg=Xr==="Windows"||globalThis.navigator?.platform==="Win32"||globalThis.process?.platform==="win32",Rg=Xr==="Linux"||globalThis.navigator?.platform?.startsWith("Linux")===!0||globalThis.navigator?.userAgent?.includes(" Linux ")===!0||globalThis.process?.platform==="linux",Ag=Xr==="iOS"||globalThis.navigator?.platform==="MacIntel"&&globalThis.navigator?.maxTouchPoints>1||/iPad|iPhone|iPod/.test(globalThis.navigator?.platform),Cg=Xr==="Android"||globalThis.navigator?.platform==="Android"||globalThis.navigator?.userAgent?.includes(" Android ")===!0||globalThis.process?.platform==="android";var C="\x1B[",rt="\x1B]",yr="\x07",et=";",es=!zt&&Zt.default.env.TERM_PROGRAM==="Apple_Terminal",ac=!zt&&Zt.default.platform==="win32",lc=zt?()=>{throw new Error("`process.cwd()` only works in Node.js, not the browser.")}:Zt.default.cwd,uc=(e,r)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");return typeof r!="number"?C+(e+1)+"G":C+(r+1)+et+(e+1)+"H"},cc=(e,r)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");let t="";return e<0?t+=C+-e+"D":e>0&&(t+=C+e+"C"),r<0?t+=C+-r+"A":r>0&&(t+=C+r+"B"),t},rs=(e=1)=>C+e+"A",pc=(e=1)=>C+e+"B",dc=(e=1)=>C+e+"C",mc=(e=1)=>C+e+"D",ts=C+"G",fc=es?"\x1B7":C+"s",gc=es?"\x1B8":C+"u",hc=C+"6n",yc=C+"E",bc=C+"F",Ec=C+"?25l",wc=C+"?25h",xc=e=>{let r="";for(let t=0;t[rt,"8",et,et,r,yr,e,rt,"8",et,et,yr].join(""),Nc=(e,r={})=>{let t=`${rt}1337;File=inline=1`;return r.width&&(t+=`;width=${r.width}`),r.height&&(t+=`;height=${r.height}`),r.preserveAspectRatio===!1&&(t+=";preserveAspectRatio=0"),t+":"+Buffer.from(e).toString("base64")+yr},Lc={setCwd:(e=lc())=>`${rt}50;CurrentDir=${e}${yr}`,annotation(e,r={}){let t=`${rt}1337;`,n=r.x!==void 0,i=r.y!==void 0;if((n||i)&&!(n&&i&&r.length!==void 0))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return e=e.replaceAll("|",""),t+=r.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",r.length>0?t+=(n?[e,r.length,r.x,r.y]:[r.length,e]).join("|"):t+=e,t+yr}};var en=O(cs(),1);function or(e,r,{target:t="stdout",...n}={}){return en.default[t]?Xt.link(e,r):n.fallback===!1?e:typeof n.fallback=="function"?n.fallback(e,r):`${e} (\u200B${r}\u200B)`}or.isSupported=en.default.stdout;or.stderr=(e,r,t={})=>or(e,r,{target:"stderr",...t});or.stderr.isSupported=en.default.stderr;function wi(e){return or(e,e,{fallback:Y})}var Vc=ps(),xi=Vc.version;function Er(e){let r=jc();return r||(e?.config.engineType==="library"?"library":e?.config.engineType==="binary"?"binary":e?.config.engineType==="client"?"client":Bc())}function jc(){let e=process.env.PRISMA_CLIENT_ENGINE_TYPE;return e==="library"?"library":e==="binary"?"binary":e==="client"?"client":void 0}function Bc(){return"library"}function vi(e){return e.name==="DriverAdapterError"&&typeof e.cause=="object"}function rn(e){return{ok:!0,value:e,map(r){return rn(r(e))},flatMap(r){return r(e)}}}function sr(e){return{ok:!1,error:e,map(){return sr(e)},flatMap(){return sr(e)}}}var ds=N("driver-adapter-utils"),Pi=class{registeredErrors=[];consumeError(r){return this.registeredErrors[r]}registerNewError(r){let t=0;for(;this.registeredErrors[t]!==void 0;)t++;return this.registeredErrors[t]={error:r},t}};var tn=(e,r=new Pi)=>{let t={adapterName:e.adapterName,errorRegistry:r,queryRaw:ke(r,e.queryRaw.bind(e)),executeRaw:ke(r,e.executeRaw.bind(e)),executeScript:ke(r,e.executeScript.bind(e)),dispose:ke(r,e.dispose.bind(e)),provider:e.provider,startTransaction:async(...n)=>(await ke(r,e.startTransaction.bind(e))(...n)).map(o=>Uc(r,o))};return e.getConnectionInfo&&(t.getConnectionInfo=Gc(r,e.getConnectionInfo.bind(e))),t},Uc=(e,r)=>({adapterName:r.adapterName,provider:r.provider,options:r.options,queryRaw:ke(e,r.queryRaw.bind(r)),executeRaw:ke(e,r.executeRaw.bind(r)),commit:ke(e,r.commit.bind(r)),rollback:ke(e,r.rollback.bind(r))});function ke(e,r){return async(...t)=>{try{return rn(await r(...t))}catch(n){if(ds("[error@wrapAsync]",n),vi(n))return sr(n.cause);let i=e.registerNewError(n);return sr({kind:"GenericJs",id:i})}}}function Gc(e,r){return(...t)=>{try{return rn(r(...t))}catch(n){if(ds("[error@wrapSync]",n),vi(n))return sr(n.cause);let i=e.registerNewError(n);return sr({kind:"GenericJs",id:i})}}}var Wc=O(on());var M=O(require("node:path")),Jc=O(on()),wh=N("prisma:engines");function ms(){return M.default.join(__dirname,"../")}var xh="libquery-engine";M.default.join(__dirname,"../query-engine-darwin");M.default.join(__dirname,"../query-engine-darwin-arm64");M.default.join(__dirname,"../query-engine-debian-openssl-1.0.x");M.default.join(__dirname,"../query-engine-debian-openssl-1.1.x");M.default.join(__dirname,"../query-engine-debian-openssl-3.0.x");M.default.join(__dirname,"../query-engine-linux-static-x64");M.default.join(__dirname,"../query-engine-linux-static-arm64");M.default.join(__dirname,"../query-engine-rhel-openssl-1.0.x");M.default.join(__dirname,"../query-engine-rhel-openssl-1.1.x");M.default.join(__dirname,"../query-engine-rhel-openssl-3.0.x");M.default.join(__dirname,"../libquery_engine-darwin.dylib.node");M.default.join(__dirname,"../libquery_engine-darwin-arm64.dylib.node");M.default.join(__dirname,"../libquery_engine-debian-openssl-1.0.x.so.node");M.default.join(__dirname,"../libquery_engine-debian-openssl-1.1.x.so.node");M.default.join(__dirname,"../libquery_engine-debian-openssl-3.0.x.so.node");M.default.join(__dirname,"../libquery_engine-linux-arm64-openssl-1.0.x.so.node");M.default.join(__dirname,"../libquery_engine-linux-arm64-openssl-1.1.x.so.node");M.default.join(__dirname,"../libquery_engine-linux-arm64-openssl-3.0.x.so.node");M.default.join(__dirname,"../libquery_engine-linux-musl.so.node");M.default.join(__dirname,"../libquery_engine-linux-musl-openssl-3.0.x.so.node");M.default.join(__dirname,"../libquery_engine-rhel-openssl-1.0.x.so.node");M.default.join(__dirname,"../libquery_engine-rhel-openssl-1.1.x.so.node");M.default.join(__dirname,"../libquery_engine-rhel-openssl-3.0.x.so.node");M.default.join(__dirname,"../query_engine-windows.dll.node");var Si=O(require("node:fs")),fs=gr("chmodPlusX");function Ri(e){if(process.platform==="win32")return;let r=Si.default.statSync(e),t=r.mode|64|8|1;if(r.mode===t){fs(`Execution permissions of ${e} are fine`);return}let n=t.toString(8).slice(-3);fs(`Have to call chmodPlusX on ${e}`),Si.default.chmodSync(e,n)}function Ai(e){let r=e.e,t=a=>`Prisma cannot find the required \`${a}\` system library in your system`,n=r.message.includes("cannot open shared object file"),i=`Please refer to the documentation about Prisma's system requirements: ${wi("https://pris.ly/d/system-requirements")}`,o=`Unable to require(\`${Ce(e.id)}\`).`,s=hr({message:r.message,code:r.code}).with({code:"ENOENT"},()=>"File does not exist.").when(({message:a})=>n&&a.includes("libz"),()=>`${t("libz")}. Please install it and try again.`).when(({message:a})=>n&&a.includes("libgcc_s"),()=>`${t("libgcc_s")}. Please install it and try again.`).when(({message:a})=>n&&a.includes("libssl"),()=>{let a=e.platformInfo.libssl?`openssl-${e.platformInfo.libssl}`:"openssl";return`${t("libssl")}. Please install ${a} and try again.`}).when(({message:a})=>a.includes("GLIBC"),()=>`Prisma has detected an incompatible version of the \`glibc\` C standard library installed in your system. This probably means your system may be too old to run Prisma. ${i}`).when(({message:a})=>e.platformInfo.platform==="linux"&&a.includes("symbol not found"),()=>`The Prisma engines are not compatible with your system ${e.platformInfo.originalDistro} on (${e.platformInfo.archFromUname}) which uses the \`${e.platformInfo.binaryTarget}\` binaryTarget by default. ${i}`).otherwise(()=>`The Prisma engines do not seem to be compatible with your system. ${i}`);return`${o} ${s} -Details: ${r.message}`; -} -var ys = O(hs(), 1); -function Ci(e) { - let r = (0, ys.default)(e); - if (r === 0) return e; - let t = new RegExp(`^[ \\t]{${r}}`, "gm"); - return e.replace(t, ""); -} -var bs = "prisma+postgres", - sn = `${bs}:`; -function an(e) { - return e?.toString().startsWith(`${sn}//`) ?? !1; -} -function Ii(e) { - if (!an(e)) return !1; - let { host: r } = new URL(e); - return ( - r.includes("localhost") || r.includes("127.0.0.1") || r.includes("[::1]") - ); -} -var ws = O(Di()); -function ki(e) { - return String(new Oi(e)); -} -var Oi = class { - constructor(r) { - this.config = r; - } - toString() { - let { config: r } = this, - t = r.provider.fromEnvVar - ? `env("${r.provider.fromEnvVar}")` - : r.provider.value, - n = JSON.parse( - JSON.stringify({ provider: t, binaryTargets: Kc(r.binaryTargets) }), - ); - return `generator ${r.name} { -${(0, ws.default)(Hc(n), 2)} -}`; - } -}; -function Kc(e) { - let r; - if (e.length > 0) { - let t = e.find((n) => n.fromEnvVar !== null); - t - ? (r = `env("${t.fromEnvVar}")`) - : (r = e.map((n) => (n.native ? "native" : n.value))); - } else r = void 0; - return r; -} -function Hc(e) { - let r = Object.keys(e).reduce((t, n) => Math.max(t, n.length), 0); - return Object.entries(e).map(([t, n]) => `${t.padEnd(r)} = ${Yc(n)}`).join(` -`); -} -function Yc(e) { - return JSON.parse( - JSON.stringify(e, (r, t) => - Array.isArray(t) - ? `[${t.map((n) => JSON.stringify(n)).join(", ")}]` - : JSON.stringify(t), - ), - ); -} -var nt = {}; -tr(nt, { - error: () => Xc, - info: () => Zc, - log: () => zc, - query: () => ep, - should: () => xs, - tags: () => tt, - warn: () => _i, -}); -var tt = { - error: ce("prisma:error"), - warn: Ie("prisma:warn"), - info: De("prisma:info"), - query: nr("prisma:query"), - }, - xs = { warn: () => !process.env.PRISMA_DISABLE_WARNINGS }; -function zc(...e) { - console.log(...e); -} -function _i(e, ...r) { - xs.warn() && console.warn(`${tt.warn} ${e}`, ...r); -} -function Zc(e, ...r) { - console.info(`${tt.info} ${e}`, ...r); -} -function Xc(e, ...r) { - console.error(`${tt.error} ${e}`, ...r); -} -function ep(e, ...r) { - console.log(`${tt.query} ${e}`, ...r); -} -function ln(e, r) { - if (!e) - throw new Error( - `${r}. This should never happen. If you see this error, please, open an issue at https://pris.ly/prisma-prisma-bug-report`, - ); -} -function ar(e, r) { - throw new Error(r); -} -function Ni({ onlyFirst: e = !1 } = {}) { - let t = [ - "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))", - "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))", - ].join("|"); - return new RegExp(t, e ? void 0 : "g"); -} -var rp = Ni(); -function wr(e) { - if (typeof e != "string") - throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``); - return e.replace(rp, ""); -} -var it = O(require("node:path")); -function Li(e) { - return it.default.sep === it.default.posix.sep - ? e - : e.split(it.default.sep).join(it.default.posix.sep); -} -var qi = O(As()), - un = O(require("node:fs")); -var xr = O(require("node:path")); -function Cs(e) { - let r = e.ignoreProcessEnv ? {} : process.env, - t = (n) => - n.match(/(.?\${(?:[a-zA-Z0-9_]+)?})/g)?.reduce(function (o, s) { - let a = /(.?)\${([a-zA-Z0-9_]+)?}/g.exec(s); - if (!a) return o; - let l = a[1], - u, - c; - if (l === "\\") ((c = a[0]), (u = c.replace("\\$", "$"))); - else { - let p = a[2]; - ((c = a[0].substring(l.length)), - (u = Object.hasOwnProperty.call(r, p) ? r[p] : e.parsed[p] || ""), - (u = t(u))); - } - return o.replace(c, u); - }, n) ?? n; - for (let n in e.parsed) { - let i = Object.hasOwnProperty.call(r, n) ? r[n] : e.parsed[n]; - e.parsed[n] = t(i); - } - for (let n in e.parsed) r[n] = e.parsed[n]; - return e; -} -var $i = gr("prisma:tryLoadEnv"); -function st( - { rootEnvPath: e, schemaEnvPath: r }, - t = { conflictCheck: "none" }, -) { - let n = Is(e); - t.conflictCheck !== "none" && hp(n, r, t.conflictCheck); - let i = null; - return ( - Ds(n?.path, r) || (i = Is(r)), - !n && !i && $i("No Environment variables loaded"), - i?.dotenvResult.error - ? console.error(ce(W("Schema Env Error: ")) + i.dotenvResult.error) - : { - message: [n?.message, i?.message].filter(Boolean).join(` -`), - parsed: { ...n?.dotenvResult?.parsed, ...i?.dotenvResult?.parsed }, - } - ); -} -function hp(e, r, t) { - let n = e?.dotenvResult.parsed, - i = !Ds(e?.path, r); - if (n && r && i && un.default.existsSync(r)) { - let o = qi.default.parse(un.default.readFileSync(r)), - s = []; - for (let a in o) n[a] === o[a] && s.push(a); - if (s.length > 0) { - let a = xr.default.relative(process.cwd(), e.path), - l = xr.default.relative(process.cwd(), r); - if (t === "error") { - let u = `There is a conflict between env var${s.length > 1 ? "s" : ""} in ${Y(a)} and ${Y(l)} +Details: ${r.message}`}var ys=O(hs(),1);function Ci(e){let r=(0,ys.default)(e);if(r===0)return e;let t=new RegExp(`^[ \\t]{${r}}`,"gm");return e.replace(t,"")}var bs="prisma+postgres",sn=`${bs}:`;function an(e){return e?.toString().startsWith(`${sn}//`)??!1}function Ii(e){if(!an(e))return!1;let{host:r}=new URL(e);return r.includes("localhost")||r.includes("127.0.0.1")||r.includes("[::1]")}var ws=O(Di());function ki(e){return String(new Oi(e))}var Oi=class{constructor(r){this.config=r}toString(){let{config:r}=this,t=r.provider.fromEnvVar?`env("${r.provider.fromEnvVar}")`:r.provider.value,n=JSON.parse(JSON.stringify({provider:t,binaryTargets:Kc(r.binaryTargets)}));return`generator ${r.name} { +${(0,ws.default)(Hc(n),2)} +}`}};function Kc(e){let r;if(e.length>0){let t=e.find(n=>n.fromEnvVar!==null);t?r=`env("${t.fromEnvVar}")`:r=e.map(n=>n.native?"native":n.value)}else r=void 0;return r}function Hc(e){let r=Object.keys(e).reduce((t,n)=>Math.max(t,n.length),0);return Object.entries(e).map(([t,n])=>`${t.padEnd(r)} = ${Yc(n)}`).join(` +`)}function Yc(e){return JSON.parse(JSON.stringify(e,(r,t)=>Array.isArray(t)?`[${t.map(n=>JSON.stringify(n)).join(", ")}]`:JSON.stringify(t)))}var nt={};tr(nt,{error:()=>Xc,info:()=>Zc,log:()=>zc,query:()=>ep,should:()=>xs,tags:()=>tt,warn:()=>_i});var tt={error:ce("prisma:error"),warn:Ie("prisma:warn"),info:De("prisma:info"),query:nr("prisma:query")},xs={warn:()=>!process.env.PRISMA_DISABLE_WARNINGS};function zc(...e){console.log(...e)}function _i(e,...r){xs.warn()&&console.warn(`${tt.warn} ${e}`,...r)}function Zc(e,...r){console.info(`${tt.info} ${e}`,...r)}function Xc(e,...r){console.error(`${tt.error} ${e}`,...r)}function ep(e,...r){console.log(`${tt.query} ${e}`,...r)}function ln(e,r){if(!e)throw new Error(`${r}. This should never happen. If you see this error, please, open an issue at https://pris.ly/prisma-prisma-bug-report`)}function ar(e,r){throw new Error(r)}function Ni({onlyFirst:e=!1}={}){let t=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(t,e?void 0:"g")}var rp=Ni();function wr(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(rp,"")}var it=O(require("node:path"));function Li(e){return it.default.sep===it.default.posix.sep?e:e.split(it.default.sep).join(it.default.posix.sep)}var qi=O(As()),un=O(require("node:fs"));var xr=O(require("node:path"));function Cs(e){let r=e.ignoreProcessEnv?{}:process.env,t=n=>n.match(/(.?\${(?:[a-zA-Z0-9_]+)?})/g)?.reduce(function(o,s){let a=/(.?)\${([a-zA-Z0-9_]+)?}/g.exec(s);if(!a)return o;let l=a[1],u,c;if(l==="\\")c=a[0],u=c.replace("\\$","$");else{let p=a[2];c=a[0].substring(l.length),u=Object.hasOwnProperty.call(r,p)?r[p]:e.parsed[p]||"",u=t(u)}return o.replace(c,u)},n)??n;for(let n in e.parsed){let i=Object.hasOwnProperty.call(r,n)?r[n]:e.parsed[n];e.parsed[n]=t(i)}for(let n in e.parsed)r[n]=e.parsed[n];return e}var $i=gr("prisma:tryLoadEnv");function st({rootEnvPath:e,schemaEnvPath:r},t={conflictCheck:"none"}){let n=Is(e);t.conflictCheck!=="none"&&hp(n,r,t.conflictCheck);let i=null;return Ds(n?.path,r)||(i=Is(r)),!n&&!i&&$i("No Environment variables loaded"),i?.dotenvResult.error?console.error(ce(W("Schema Env Error: "))+i.dotenvResult.error):{message:[n?.message,i?.message].filter(Boolean).join(` +`),parsed:{...n?.dotenvResult?.parsed,...i?.dotenvResult?.parsed}}}function hp(e,r,t){let n=e?.dotenvResult.parsed,i=!Ds(e?.path,r);if(n&&r&&i&&un.default.existsSync(r)){let o=qi.default.parse(un.default.readFileSync(r)),s=[];for(let a in o)n[a]===o[a]&&s.push(a);if(s.length>0){let a=xr.default.relative(process.cwd(),e.path),l=xr.default.relative(process.cwd(),r);if(t==="error"){let u=`There is a conflict between env var${s.length>1?"s":""} in ${Y(a)} and ${Y(l)} Conflicting env vars: -${s.map((c) => ` ${W(c)}`).join(` +${s.map(c=>` ${W(c)}`).join(` `)} We suggest to move the contents of ${Y(l)} to ${Y(a)} to consolidate your env vars. -`; - throw new Error(u); - } else if (t === "warn") { - let u = `Conflict for env var${s.length > 1 ? "s" : ""} ${s.map((c) => W(c)).join(", ")} in ${Y(a)} and ${Y(l)} +`;throw new Error(u)}else if(t==="warn"){let u=`Conflict for env var${s.length>1?"s":""} ${s.map(c=>W(c)).join(", ")} in ${Y(a)} and ${Y(l)} Env vars from ${Y(l)} overwrite the ones from ${Y(a)} - `; - console.warn(`${Ie("warn(prisma)")} ${u}`); - } - } - } -} -function Is(e) { - if (yp(e)) { - $i(`Environment variables loaded from ${e}`); - let r = qi.default.config({ - path: e, - debug: process.env.DOTENV_CONFIG_DEBUG ? !0 : void 0, - }); - return { - dotenvResult: Cs(r), - message: Ce( - `Environment variables loaded from ${xr.default.relative(process.cwd(), e)}`, - ), - path: e, - }; - } else $i(`Environment variables not found at ${e}`); - return null; -} -function Ds(e, r) { - return e && r && xr.default.resolve(e) === xr.default.resolve(r); -} -function yp(e) { - return !!(e && un.default.existsSync(e)); -} -function Vi(e, r) { - return Object.prototype.hasOwnProperty.call(e, r); -} -function pn(e, r) { - let t = {}; - for (let n of Object.keys(e)) t[n] = r(e[n], n); - return t; -} -function ji(e, r) { - if (e.length === 0) return; - let t = e[0]; - for (let n = 1; n < e.length; n++) r(t, e[n]) < 0 && (t = e[n]); - return t; -} -function x(e, r) { - Object.defineProperty(e, "name", { value: r, configurable: !0 }); -} -var ks = new Set(), - at = (e, r, ...t) => { - ks.has(e) || (ks.add(e), _i(r, ...t)); - }; -var P = class e extends Error { - clientVersion; - errorCode; - retryable; - constructor(r, t, n) { - (super(r), - (this.name = "PrismaClientInitializationError"), - (this.clientVersion = t), - (this.errorCode = n), - Error.captureStackTrace(e)); - } - get [Symbol.toStringTag]() { - return "PrismaClientInitializationError"; - } -}; -x(P, "PrismaClientInitializationError"); -var z = class extends Error { - code; - meta; - clientVersion; - batchRequestIdx; - constructor(r, { code: t, clientVersion: n, meta: i, batchRequestIdx: o }) { - (super(r), - (this.name = "PrismaClientKnownRequestError"), - (this.code = t), - (this.clientVersion = n), - (this.meta = i), - Object.defineProperty(this, "batchRequestIdx", { - value: o, - enumerable: !1, - writable: !0, - })); - } - get [Symbol.toStringTag]() { - return "PrismaClientKnownRequestError"; - } -}; -x(z, "PrismaClientKnownRequestError"); -var ae = class extends Error { - clientVersion; - constructor(r, t) { - (super(r), - (this.name = "PrismaClientRustPanicError"), - (this.clientVersion = t)); - } - get [Symbol.toStringTag]() { - return "PrismaClientRustPanicError"; - } -}; -x(ae, "PrismaClientRustPanicError"); -var V = class extends Error { - clientVersion; - batchRequestIdx; - constructor(r, { clientVersion: t, batchRequestIdx: n }) { - (super(r), - (this.name = "PrismaClientUnknownRequestError"), - (this.clientVersion = t), - Object.defineProperty(this, "batchRequestIdx", { - value: n, - writable: !0, - enumerable: !1, - })); - } - get [Symbol.toStringTag]() { - return "PrismaClientUnknownRequestError"; - } -}; -x(V, "PrismaClientUnknownRequestError"); -var Z = class extends Error { - name = "PrismaClientValidationError"; - clientVersion; - constructor(r, { clientVersion: t }) { - (super(r), (this.clientVersion = t)); - } - get [Symbol.toStringTag]() { - return "PrismaClientValidationError"; - } -}; -x(Z, "PrismaClientValidationError"); -var we = class { - _map = new Map(); - get(r) { - return this._map.get(r)?.value; - } - set(r, t) { - this._map.set(r, { value: t }); - } - getOrCreate(r, t) { - let n = this._map.get(r); - if (n) return n.value; - let i = t(); - return (this.set(r, i), i); - } -}; -function We(e) { - return e.substring(0, 1).toLowerCase() + e.substring(1); -} -function _s(e, r) { - let t = {}; - for (let n of e) { - let i = n[r]; - t[i] = n; - } - return t; -} -function lt(e) { - let r; - return { - get() { - return (r || (r = { value: e() }), r.value); - }, - }; -} -function Ns(e) { - return { models: Bi(e.models), enums: Bi(e.enums), types: Bi(e.types) }; -} -function Bi(e) { - let r = {}; - for (let { name: t, ...n } of e) r[t] = n; - return r; -} -function vr(e) { - return ( - e instanceof Date || Object.prototype.toString.call(e) === "[object Date]" - ); -} -function mn(e) { - return e.toString() !== "Invalid Date"; -} -var Pr = 9e15, - Ye = 1e9, - Ui = "0123456789abcdef", - hn = - "2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058", - yn = - "3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789", - Gi = { - precision: 20, - rounding: 4, - modulo: 1, - toExpNeg: -7, - toExpPos: 21, - minE: -Pr, - maxE: Pr, - crypto: !1, - }, - $s, - Ne, - w = !0, - En = "[DecimalError] ", - He = En + "Invalid argument: ", - qs = En + "Precision limit exceeded", - Vs = En + "crypto unavailable", - js = "[object Decimal]", - X = Math.floor, - U = Math.pow, - bp = /^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i, - Ep = /^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i, - wp = /^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i, - Bs = /^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i, - fe = 1e7, - E = 7, - xp = 9007199254740991, - vp = hn.length - 1, - Qi = yn.length - 1, - m = { toStringTag: js }; -m.absoluteValue = m.abs = function () { - var e = new this.constructor(this); - return (e.s < 0 && (e.s = 1), y(e)); -}; -m.ceil = function () { - return y(new this.constructor(this), this.e + 1, 2); -}; -m.clampedTo = m.clamp = function (e, r) { - var t, - n = this, - i = n.constructor; - if (((e = new i(e)), (r = new i(r)), !e.s || !r.s)) return new i(NaN); - if (e.gt(r)) throw Error(He + r); - return ((t = n.cmp(e)), t < 0 ? e : n.cmp(r) > 0 ? r : new i(n)); -}; -m.comparedTo = m.cmp = function (e) { - var r, - t, - n, - i, - o = this, - s = o.d, - a = (e = new o.constructor(e)).d, - l = o.s, - u = e.s; - if (!s || !a) - return !l || !u ? NaN : l !== u ? l : s === a ? 0 : !s ^ (l < 0) ? 1 : -1; - if (!s[0] || !a[0]) return s[0] ? l : a[0] ? -u : 0; - if (l !== u) return l; - if (o.e !== e.e) return (o.e > e.e) ^ (l < 0) ? 1 : -1; - for (n = s.length, i = a.length, r = 0, t = n < i ? n : i; r < t; ++r) - if (s[r] !== a[r]) return (s[r] > a[r]) ^ (l < 0) ? 1 : -1; - return n === i ? 0 : (n > i) ^ (l < 0) ? 1 : -1; -}; -m.cosine = m.cos = function () { - var e, - r, - t = this, - n = t.constructor; - return t.d - ? t.d[0] - ? ((e = n.precision), - (r = n.rounding), - (n.precision = e + Math.max(t.e, t.sd()) + E), - (n.rounding = 1), - (t = Pp(n, Js(n, t))), - (n.precision = e), - (n.rounding = r), - y(Ne == 2 || Ne == 3 ? t.neg() : t, e, r, !0)) - : new n(1) - : new n(NaN); -}; -m.cubeRoot = m.cbrt = function () { - var e, - r, - t, - n, - i, - o, - s, - a, - l, - u, - c = this, - p = c.constructor; - if (!c.isFinite() || c.isZero()) return new p(c); - for ( - w = !1, - o = c.s * U(c.s * c, 1 / 3), - !o || Math.abs(o) == 1 / 0 - ? ((t = J(c.d)), - (e = c.e), - (o = (e - t.length + 1) % 3) && (t += o == 1 || o == -2 ? "0" : "00"), - (o = U(t, 1 / 3)), - (e = X((e + 1) / 3) - (e % 3 == (e < 0 ? -1 : 2))), - o == 1 / 0 - ? (t = "5e" + e) - : ((t = o.toExponential()), - (t = t.slice(0, t.indexOf("e") + 1) + e)), - (n = new p(t)), - (n.s = c.s)) - : (n = new p(o.toString())), - s = (e = p.precision) + 3; - ; - ) - if ( - ((a = n), - (l = a.times(a).times(a)), - (u = l.plus(c)), - (n = L(u.plus(c).times(a), u.plus(l), s + 2, 1)), - J(a.d).slice(0, s) === (t = J(n.d)).slice(0, s)) - ) - if (((t = t.slice(s - 3, s + 1)), t == "9999" || (!i && t == "4999"))) { - if (!i && (y(a, e + 1, 0), a.times(a).times(a).eq(c))) { - n = a; - break; - } - ((s += 4), (i = 1)); - } else { - (!+t || (!+t.slice(1) && t.charAt(0) == "5")) && - (y(n, e + 1, 1), (r = !n.times(n).times(n).eq(c))); - break; - } - return ((w = !0), y(n, e, p.rounding, r)); -}; -m.decimalPlaces = m.dp = function () { - var e, - r = this.d, - t = NaN; - if (r) { - if (((e = r.length - 1), (t = (e - X(this.e / E)) * E), (e = r[e]), e)) - for (; e % 10 == 0; e /= 10) t--; - t < 0 && (t = 0); - } - return t; -}; -m.dividedBy = m.div = function (e) { - return L(this, new this.constructor(e)); -}; -m.dividedToIntegerBy = m.divToInt = function (e) { - var r = this, - t = r.constructor; - return y(L(r, new t(e), 0, 1, 1), t.precision, t.rounding); -}; -m.equals = m.eq = function (e) { - return this.cmp(e) === 0; -}; -m.floor = function () { - return y(new this.constructor(this), this.e + 1, 3); -}; -m.greaterThan = m.gt = function (e) { - return this.cmp(e) > 0; -}; -m.greaterThanOrEqualTo = m.gte = function (e) { - var r = this.cmp(e); - return r == 1 || r === 0; -}; -m.hyperbolicCosine = m.cosh = function () { - var e, - r, - t, - n, - i, - o = this, - s = o.constructor, - a = new s(1); - if (!o.isFinite()) return new s(o.s ? 1 / 0 : NaN); - if (o.isZero()) return a; - ((t = s.precision), - (n = s.rounding), - (s.precision = t + Math.max(o.e, o.sd()) + 4), - (s.rounding = 1), - (i = o.d.length), - i < 32 - ? ((e = Math.ceil(i / 3)), (r = (1 / xn(4, e)).toString())) - : ((e = 16), (r = "2.3283064365386962890625e-10")), - (o = Tr(s, 1, o.times(r), new s(1), !0))); - for (var l, u = e, c = new s(8); u--; ) - ((l = o.times(o)), (o = a.minus(l.times(c.minus(l.times(c)))))); - return y(o, (s.precision = t), (s.rounding = n), !0); -}; -m.hyperbolicSine = m.sinh = function () { - var e, - r, - t, - n, - i = this, - o = i.constructor; - if (!i.isFinite() || i.isZero()) return new o(i); - if ( - ((r = o.precision), - (t = o.rounding), - (o.precision = r + Math.max(i.e, i.sd()) + 4), - (o.rounding = 1), - (n = i.d.length), - n < 3) - ) - i = Tr(o, 2, i, i, !0); - else { - ((e = 1.4 * Math.sqrt(n)), - (e = e > 16 ? 16 : e | 0), - (i = i.times(1 / xn(5, e))), - (i = Tr(o, 2, i, i, !0))); - for (var s, a = new o(5), l = new o(16), u = new o(20); e--; ) - ((s = i.times(i)), (i = i.times(a.plus(s.times(l.times(s).plus(u)))))); - } - return ((o.precision = r), (o.rounding = t), y(i, r, t, !0)); -}; -m.hyperbolicTangent = m.tanh = function () { - var e, - r, - t = this, - n = t.constructor; - return t.isFinite() - ? t.isZero() - ? new n(t) - : ((e = n.precision), - (r = n.rounding), - (n.precision = e + 7), - (n.rounding = 1), - L(t.sinh(), t.cosh(), (n.precision = e), (n.rounding = r))) - : new n(t.s); -}; -m.inverseCosine = m.acos = function () { - var e = this, - r = e.constructor, - t = e.abs().cmp(1), - n = r.precision, - i = r.rounding; - return t !== -1 - ? t === 0 - ? e.isNeg() - ? xe(r, n, i) - : new r(0) - : new r(NaN) - : e.isZero() - ? xe(r, n + 4, i).times(0.5) - : ((r.precision = n + 6), - (r.rounding = 1), - (e = new r(1).minus(e).div(e.plus(1)).sqrt().atan()), - (r.precision = n), - (r.rounding = i), - e.times(2)); -}; -m.inverseHyperbolicCosine = m.acosh = function () { - var e, - r, - t = this, - n = t.constructor; - return t.lte(1) - ? new n(t.eq(1) ? 0 : NaN) - : t.isFinite() - ? ((e = n.precision), - (r = n.rounding), - (n.precision = e + Math.max(Math.abs(t.e), t.sd()) + 4), - (n.rounding = 1), - (w = !1), - (t = t.times(t).minus(1).sqrt().plus(t)), - (w = !0), - (n.precision = e), - (n.rounding = r), - t.ln()) - : new n(t); -}; -m.inverseHyperbolicSine = m.asinh = function () { - var e, - r, - t = this, - n = t.constructor; - return !t.isFinite() || t.isZero() - ? new n(t) - : ((e = n.precision), - (r = n.rounding), - (n.precision = e + 2 * Math.max(Math.abs(t.e), t.sd()) + 6), - (n.rounding = 1), - (w = !1), - (t = t.times(t).plus(1).sqrt().plus(t)), - (w = !0), - (n.precision = e), - (n.rounding = r), - t.ln()); -}; -m.inverseHyperbolicTangent = m.atanh = function () { - var e, - r, - t, - n, - i = this, - o = i.constructor; - return i.isFinite() - ? i.e >= 0 - ? new o(i.abs().eq(1) ? i.s / 0 : i.isZero() ? i : NaN) - : ((e = o.precision), - (r = o.rounding), - (n = i.sd()), - Math.max(n, e) < 2 * -i.e - 1 - ? y(new o(i), e, r, !0) - : ((o.precision = t = n - i.e), - (i = L(i.plus(1), new o(1).minus(i), t + e, 1)), - (o.precision = e + 4), - (o.rounding = 1), - (i = i.ln()), - (o.precision = e), - (o.rounding = r), - i.times(0.5))) - : new o(NaN); -}; -m.inverseSine = m.asin = function () { - var e, - r, - t, - n, - i = this, - o = i.constructor; - return i.isZero() - ? new o(i) - : ((r = i.abs().cmp(1)), - (t = o.precision), - (n = o.rounding), - r !== -1 - ? r === 0 - ? ((e = xe(o, t + 4, n).times(0.5)), (e.s = i.s), e) - : new o(NaN) - : ((o.precision = t + 6), - (o.rounding = 1), - (i = i.div(new o(1).minus(i.times(i)).sqrt().plus(1)).atan()), - (o.precision = t), - (o.rounding = n), - i.times(2))); -}; -m.inverseTangent = m.atan = function () { - var e, - r, - t, - n, - i, - o, - s, - a, - l, - u = this, - c = u.constructor, - p = c.precision, - d = c.rounding; - if (u.isFinite()) { - if (u.isZero()) return new c(u); - if (u.abs().eq(1) && p + 4 <= Qi) - return ((s = xe(c, p + 4, d).times(0.25)), (s.s = u.s), s); - } else { - if (!u.s) return new c(NaN); - if (p + 4 <= Qi) return ((s = xe(c, p + 4, d).times(0.5)), (s.s = u.s), s); - } - for ( - c.precision = a = p + 10, - c.rounding = 1, - t = Math.min(28, (a / E + 2) | 0), - e = t; - e; - --e - ) - u = u.div(u.times(u).plus(1).sqrt().plus(1)); - for ( - w = !1, r = Math.ceil(a / E), n = 1, l = u.times(u), s = new c(u), i = u; - e !== -1; - ) - if ( - ((i = i.times(l)), - (o = s.minus(i.div((n += 2)))), - (i = i.times(l)), - (s = o.plus(i.div((n += 2)))), - s.d[r] !== void 0) - ) - for (e = r; s.d[e] === o.d[e] && e--; ); - return ( - t && (s = s.times(2 << (t - 1))), - (w = !0), - y(s, (c.precision = p), (c.rounding = d), !0) - ); -}; -m.isFinite = function () { - return !!this.d; -}; -m.isInteger = m.isInt = function () { - return !!this.d && X(this.e / E) > this.d.length - 2; -}; -m.isNaN = function () { - return !this.s; -}; -m.isNegative = m.isNeg = function () { - return this.s < 0; -}; -m.isPositive = m.isPos = function () { - return this.s > 0; -}; -m.isZero = function () { - return !!this.d && this.d[0] === 0; -}; -m.lessThan = m.lt = function (e) { - return this.cmp(e) < 0; -}; -m.lessThanOrEqualTo = m.lte = function (e) { - return this.cmp(e) < 1; -}; -m.logarithm = m.log = function (e) { - var r, - t, - n, - i, - o, - s, - a, - l, - u = this, - c = u.constructor, - p = c.precision, - d = c.rounding, - f = 5; - if (e == null) ((e = new c(10)), (r = !0)); - else { - if (((e = new c(e)), (t = e.d), e.s < 0 || !t || !t[0] || e.eq(1))) - return new c(NaN); - r = e.eq(10); - } - if (((t = u.d), u.s < 0 || !t || !t[0] || u.eq(1))) - return new c(t && !t[0] ? -1 / 0 : u.s != 1 ? NaN : t ? 0 : 1 / 0); - if (r) - if (t.length > 1) o = !0; - else { - for (i = t[0]; i % 10 === 0; ) i /= 10; - o = i !== 1; - } - if ( - ((w = !1), - (a = p + f), - (s = Ke(u, a)), - (n = r ? bn(c, a + 10) : Ke(e, a)), - (l = L(s, n, a, 1)), - ut(l.d, (i = p), d)) - ) - do - if ( - ((a += 10), - (s = Ke(u, a)), - (n = r ? bn(c, a + 10) : Ke(e, a)), - (l = L(s, n, a, 1)), - !o) - ) { - +J(l.d).slice(i + 1, i + 15) + 1 == 1e14 && (l = y(l, p + 1, 0)); - break; - } - while (ut(l.d, (i += 10), d)); - return ((w = !0), y(l, p, d)); -}; -m.minus = m.sub = function (e) { - var r, - t, - n, - i, - o, - s, - a, - l, - u, - c, - p, - d, - f = this, - h = f.constructor; - if (((e = new h(e)), !f.d || !e.d)) - return ( - !f.s || !e.s - ? (e = new h(NaN)) - : f.d - ? (e.s = -e.s) - : (e = new h(e.d || f.s !== e.s ? f : NaN)), - e - ); - if (f.s != e.s) return ((e.s = -e.s), f.plus(e)); - if ( - ((u = f.d), (d = e.d), (a = h.precision), (l = h.rounding), !u[0] || !d[0]) - ) { - if (d[0]) e.s = -e.s; - else if (u[0]) e = new h(f); - else return new h(l === 3 ? -0 : 0); - return w ? y(e, a, l) : e; - } - if (((t = X(e.e / E)), (c = X(f.e / E)), (u = u.slice()), (o = c - t), o)) { - for ( - p = o < 0, - p - ? ((r = u), (o = -o), (s = d.length)) - : ((r = d), (t = c), (s = u.length)), - n = Math.max(Math.ceil(a / E), s) + 2, - o > n && ((o = n), (r.length = 1)), - r.reverse(), - n = o; - n--; - ) - r.push(0); - r.reverse(); - } else { - for (n = u.length, s = d.length, p = n < s, p && (s = n), n = 0; n < s; n++) - if (u[n] != d[n]) { - p = u[n] < d[n]; - break; - } - o = 0; - } - for ( - p && ((r = u), (u = d), (d = r), (e.s = -e.s)), - s = u.length, - n = d.length - s; - n > 0; - --n - ) - u[s++] = 0; - for (n = d.length; n > o; ) { - if (u[--n] < d[n]) { - for (i = n; i && u[--i] === 0; ) u[i] = fe - 1; - (--u[i], (u[n] += fe)); - } - u[n] -= d[n]; - } - for (; u[--s] === 0; ) u.pop(); - for (; u[0] === 0; u.shift()) --t; - return u[0] - ? ((e.d = u), (e.e = wn(u, t)), w ? y(e, a, l) : e) - : new h(l === 3 ? -0 : 0); -}; -m.modulo = m.mod = function (e) { - var r, - t = this, - n = t.constructor; - return ( - (e = new n(e)), - !t.d || !e.s || (e.d && !e.d[0]) - ? new n(NaN) - : !e.d || (t.d && !t.d[0]) - ? y(new n(t), n.precision, n.rounding) - : ((w = !1), - n.modulo == 9 - ? ((r = L(t, e.abs(), 0, 3, 1)), (r.s *= e.s)) - : (r = L(t, e, 0, n.modulo, 1)), - (r = r.times(e)), - (w = !0), - t.minus(r)) - ); -}; -m.naturalExponential = m.exp = function () { - return Wi(this); -}; -m.naturalLogarithm = m.ln = function () { - return Ke(this); -}; -m.negated = m.neg = function () { - var e = new this.constructor(this); - return ((e.s = -e.s), y(e)); -}; -m.plus = m.add = function (e) { - var r, - t, - n, - i, - o, - s, - a, - l, - u, - c, - p = this, - d = p.constructor; - if (((e = new d(e)), !p.d || !e.d)) - return ( - !p.s || !e.s - ? (e = new d(NaN)) - : p.d || (e = new d(e.d || p.s === e.s ? p : NaN)), - e - ); - if (p.s != e.s) return ((e.s = -e.s), p.minus(e)); - if ( - ((u = p.d), (c = e.d), (a = d.precision), (l = d.rounding), !u[0] || !c[0]) - ) - return (c[0] || (e = new d(p)), w ? y(e, a, l) : e); - if (((o = X(p.e / E)), (n = X(e.e / E)), (u = u.slice()), (i = o - n), i)) { - for ( - i < 0 - ? ((t = u), (i = -i), (s = c.length)) - : ((t = c), (n = o), (s = u.length)), - o = Math.ceil(a / E), - s = o > s ? o + 1 : s + 1, - i > s && ((i = s), (t.length = 1)), - t.reverse(); - i--; - ) - t.push(0); - t.reverse(); - } - for ( - s = u.length, - i = c.length, - s - i < 0 && ((i = s), (t = c), (c = u), (u = t)), - r = 0; - i; - ) - ((r = ((u[--i] = u[i] + c[i] + r) / fe) | 0), (u[i] %= fe)); - for (r && (u.unshift(r), ++n), s = u.length; u[--s] == 0; ) u.pop(); - return ((e.d = u), (e.e = wn(u, n)), w ? y(e, a, l) : e); -}; -m.precision = m.sd = function (e) { - var r, - t = this; - if (e !== void 0 && e !== !!e && e !== 1 && e !== 0) throw Error(He + e); - return ( - t.d ? ((r = Us(t.d)), e && t.e + 1 > r && (r = t.e + 1)) : (r = NaN), - r - ); -}; -m.round = function () { - var e = this, - r = e.constructor; - return y(new r(e), e.e + 1, r.rounding); -}; -m.sine = m.sin = function () { - var e, - r, - t = this, - n = t.constructor; - return t.isFinite() - ? t.isZero() - ? new n(t) - : ((e = n.precision), - (r = n.rounding), - (n.precision = e + Math.max(t.e, t.sd()) + E), - (n.rounding = 1), - (t = Sp(n, Js(n, t))), - (n.precision = e), - (n.rounding = r), - y(Ne > 2 ? t.neg() : t, e, r, !0)) - : new n(NaN); -}; -m.squareRoot = m.sqrt = function () { - var e, - r, - t, - n, - i, - o, - s = this, - a = s.d, - l = s.e, - u = s.s, - c = s.constructor; - if (u !== 1 || !a || !a[0]) - return new c(!u || (u < 0 && (!a || a[0])) ? NaN : a ? s : 1 / 0); - for ( - w = !1, - u = Math.sqrt(+s), - u == 0 || u == 1 / 0 - ? ((r = J(a)), - (r.length + l) % 2 == 0 && (r += "0"), - (u = Math.sqrt(r)), - (l = X((l + 1) / 2) - (l < 0 || l % 2)), - u == 1 / 0 - ? (r = "5e" + l) - : ((r = u.toExponential()), - (r = r.slice(0, r.indexOf("e") + 1) + l)), - (n = new c(r))) - : (n = new c(u.toString())), - t = (l = c.precision) + 3; - ; - ) - if ( - ((o = n), - (n = o.plus(L(s, o, t + 2, 1)).times(0.5)), - J(o.d).slice(0, t) === (r = J(n.d)).slice(0, t)) - ) - if (((r = r.slice(t - 3, t + 1)), r == "9999" || (!i && r == "4999"))) { - if (!i && (y(o, l + 1, 0), o.times(o).eq(s))) { - n = o; - break; - } - ((t += 4), (i = 1)); - } else { - (!+r || (!+r.slice(1) && r.charAt(0) == "5")) && - (y(n, l + 1, 1), (e = !n.times(n).eq(s))); - break; - } - return ((w = !0), y(n, l, c.rounding, e)); -}; -m.tangent = m.tan = function () { - var e, - r, - t = this, - n = t.constructor; - return t.isFinite() - ? t.isZero() - ? new n(t) - : ((e = n.precision), - (r = n.rounding), - (n.precision = e + 10), - (n.rounding = 1), - (t = t.sin()), - (t.s = 1), - (t = L(t, new n(1).minus(t.times(t)).sqrt(), e + 10, 0)), - (n.precision = e), - (n.rounding = r), - y(Ne == 2 || Ne == 4 ? t.neg() : t, e, r, !0)) - : new n(NaN); -}; -m.times = m.mul = function (e) { - var r, - t, - n, - i, - o, - s, - a, - l, - u, - c = this, - p = c.constructor, - d = c.d, - f = (e = new p(e)).d; - if (((e.s *= c.s), !d || !d[0] || !f || !f[0])) - return new p( - !e.s || (d && !d[0] && !f) || (f && !f[0] && !d) - ? NaN - : !d || !f - ? e.s / 0 - : e.s * 0, - ); - for ( - t = X(c.e / E) + X(e.e / E), - l = d.length, - u = f.length, - l < u && ((o = d), (d = f), (f = o), (s = l), (l = u), (u = s)), - o = [], - s = l + u, - n = s; - n--; - ) - o.push(0); - for (n = u; --n >= 0; ) { - for (r = 0, i = l + n; i > n; ) - ((a = o[i] + f[n] * d[i - n - 1] + r), - (o[i--] = (a % fe) | 0), - (r = (a / fe) | 0)); - o[i] = ((o[i] + r) % fe) | 0; - } - for (; !o[--s]; ) o.pop(); - return ( - r ? ++t : o.shift(), - (e.d = o), - (e.e = wn(o, t)), - w ? y(e, p.precision, p.rounding) : e - ); -}; -m.toBinary = function (e, r) { - return Ji(this, 2, e, r); -}; -m.toDecimalPlaces = m.toDP = function (e, r) { - var t = this, - n = t.constructor; - return ( - (t = new n(t)), - e === void 0 - ? t - : (ne(e, 0, Ye), - r === void 0 ? (r = n.rounding) : ne(r, 0, 8), - y(t, e + t.e + 1, r)) - ); -}; -m.toExponential = function (e, r) { - var t, - n = this, - i = n.constructor; - return ( - e === void 0 - ? (t = ve(n, !0)) - : (ne(e, 0, Ye), - r === void 0 ? (r = i.rounding) : ne(r, 0, 8), - (n = y(new i(n), e + 1, r)), - (t = ve(n, !0, e + 1))), - n.isNeg() && !n.isZero() ? "-" + t : t - ); -}; -m.toFixed = function (e, r) { - var t, - n, - i = this, - o = i.constructor; - return ( - e === void 0 - ? (t = ve(i)) - : (ne(e, 0, Ye), - r === void 0 ? (r = o.rounding) : ne(r, 0, 8), - (n = y(new o(i), e + i.e + 1, r)), - (t = ve(n, !1, e + n.e + 1))), - i.isNeg() && !i.isZero() ? "-" + t : t - ); -}; -m.toFraction = function (e) { - var r, - t, - n, - i, - o, - s, - a, - l, - u, - c, - p, - d, - f = this, - h = f.d, - g = f.constructor; - if (!h) return new g(f); - if ( - ((u = t = new g(1)), - (n = l = new g(0)), - (r = new g(n)), - (o = r.e = Us(h) - f.e - 1), - (s = o % E), - (r.d[0] = U(10, s < 0 ? E + s : s)), - e == null) - ) - e = o > 0 ? r : u; - else { - if (((a = new g(e)), !a.isInt() || a.lt(u))) throw Error(He + a); - e = a.gt(r) ? (o > 0 ? r : u) : a; - } - for ( - w = !1, - a = new g(J(h)), - c = g.precision, - g.precision = o = h.length * E * 2; - (p = L(a, r, 0, 1, 1)), (i = t.plus(p.times(n))), i.cmp(e) != 1; - ) - ((t = n), - (n = i), - (i = u), - (u = l.plus(p.times(i))), - (l = i), - (i = r), - (r = a.minus(p.times(i))), - (a = i)); - return ( - (i = L(e.minus(t), n, 0, 1, 1)), - (l = l.plus(i.times(u))), - (t = t.plus(i.times(n))), - (l.s = u.s = f.s), - (d = - L(u, n, o, 1) - .minus(f) - .abs() - .cmp(L(l, t, o, 1).minus(f).abs()) < 1 - ? [u, n] - : [l, t]), - (g.precision = c), - (w = !0), - d - ); -}; -m.toHexadecimal = m.toHex = function (e, r) { - return Ji(this, 16, e, r); -}; -m.toNearest = function (e, r) { - var t = this, - n = t.constructor; - if (((t = new n(t)), e == null)) { - if (!t.d) return t; - ((e = new n(1)), (r = n.rounding)); - } else { - if (((e = new n(e)), r === void 0 ? (r = n.rounding) : ne(r, 0, 8), !t.d)) - return e.s ? t : e; - if (!e.d) return (e.s && (e.s = t.s), e); - } - return ( - e.d[0] - ? ((w = !1), (t = L(t, e, 0, r, 1).times(e)), (w = !0), y(t)) - : ((e.s = t.s), (t = e)), - t - ); -}; -m.toNumber = function () { - return +this; -}; -m.toOctal = function (e, r) { - return Ji(this, 8, e, r); -}; -m.toPower = m.pow = function (e) { - var r, - t, - n, - i, - o, - s, - a = this, - l = a.constructor, - u = +(e = new l(e)); - if (!a.d || !e.d || !a.d[0] || !e.d[0]) return new l(U(+a, u)); - if (((a = new l(a)), a.eq(1))) return a; - if (((n = l.precision), (o = l.rounding), e.eq(1))) return y(a, n, o); - if (((r = X(e.e / E)), r >= e.d.length - 1 && (t = u < 0 ? -u : u) <= xp)) - return ((i = Gs(l, a, t, n)), e.s < 0 ? new l(1).div(i) : y(i, n, o)); - if (((s = a.s), s < 0)) { - if (r < e.d.length - 1) return new l(NaN); - if ( - ((e.d[r] & 1) == 0 && (s = 1), a.e == 0 && a.d[0] == 1 && a.d.length == 1) - ) - return ((a.s = s), a); - } - return ( - (t = U(+a, u)), - (r = - t == 0 || !isFinite(t) - ? X(u * (Math.log("0." + J(a.d)) / Math.LN10 + a.e + 1)) - : new l(t + "").e), - r > l.maxE + 1 || r < l.minE - 1 - ? new l(r > 0 ? s / 0 : 0) - : ((w = !1), - (l.rounding = a.s = 1), - (t = Math.min(12, (r + "").length)), - (i = Wi(e.times(Ke(a, n + t)), n)), - i.d && - ((i = y(i, n + 5, 1)), - ut(i.d, n, o) && - ((r = n + 10), - (i = y(Wi(e.times(Ke(a, r + t)), r), r + 5, 1)), - +J(i.d).slice(n + 1, n + 15) + 1 == 1e14 && (i = y(i, n + 1, 0)))), - (i.s = s), - (w = !0), - (l.rounding = o), - y(i, n, o)) - ); -}; -m.toPrecision = function (e, r) { - var t, - n = this, - i = n.constructor; - return ( - e === void 0 - ? (t = ve(n, n.e <= i.toExpNeg || n.e >= i.toExpPos)) - : (ne(e, 1, Ye), - r === void 0 ? (r = i.rounding) : ne(r, 0, 8), - (n = y(new i(n), e, r)), - (t = ve(n, e <= n.e || n.e <= i.toExpNeg, e))), - n.isNeg() && !n.isZero() ? "-" + t : t - ); -}; -m.toSignificantDigits = m.toSD = function (e, r) { - var t = this, - n = t.constructor; - return ( - e === void 0 - ? ((e = n.precision), (r = n.rounding)) - : (ne(e, 1, Ye), r === void 0 ? (r = n.rounding) : ne(r, 0, 8)), - y(new n(t), e, r) - ); -}; -m.toString = function () { - var e = this, - r = e.constructor, - t = ve(e, e.e <= r.toExpNeg || e.e >= r.toExpPos); - return e.isNeg() && !e.isZero() ? "-" + t : t; -}; -m.truncated = m.trunc = function () { - return y(new this.constructor(this), this.e + 1, 1); -}; -m.valueOf = m.toJSON = function () { - var e = this, - r = e.constructor, - t = ve(e, e.e <= r.toExpNeg || e.e >= r.toExpPos); - return e.isNeg() ? "-" + t : t; -}; -function J(e) { - var r, - t, - n, - i = e.length - 1, - o = "", - s = e[0]; - if (i > 0) { - for (o += s, r = 1; r < i; r++) - ((n = e[r] + ""), (t = E - n.length), t && (o += Je(t)), (o += n)); - ((s = e[r]), (n = s + ""), (t = E - n.length), t && (o += Je(t))); - } else if (s === 0) return "0"; - for (; s % 10 === 0; ) s /= 10; - return o + s; -} -function ne(e, r, t) { - if (e !== ~~e || e < r || e > t) throw Error(He + e); -} -function ut(e, r, t, n) { - var i, o, s, a; - for (o = e[0]; o >= 10; o /= 10) --r; - return ( - --r < 0 ? ((r += E), (i = 0)) : ((i = Math.ceil((r + 1) / E)), (r %= E)), - (o = U(10, E - r)), - (a = (e[i] % o) | 0), - n == null - ? r < 3 - ? (r == 0 ? (a = (a / 100) | 0) : r == 1 && (a = (a / 10) | 0), - (s = - (t < 4 && a == 99999) || - (t > 3 && a == 49999) || - a == 5e4 || - a == 0)) - : (s = - (((t < 4 && a + 1 == o) || (t > 3 && a + 1 == o / 2)) && - ((e[i + 1] / o / 100) | 0) == U(10, r - 2) - 1) || - ((a == o / 2 || a == 0) && ((e[i + 1] / o / 100) | 0) == 0)) - : r < 4 - ? (r == 0 - ? (a = (a / 1e3) | 0) - : r == 1 - ? (a = (a / 100) | 0) - : r == 2 && (a = (a / 10) | 0), - (s = ((n || t < 4) && a == 9999) || (!n && t > 3 && a == 4999))) - : (s = - (((n || t < 4) && a + 1 == o) || (!n && t > 3 && a + 1 == o / 2)) && - ((e[i + 1] / o / 1e3) | 0) == U(10, r - 3) - 1), - s - ); -} -function fn(e, r, t) { - for (var n, i = [0], o, s = 0, a = e.length; s < a; ) { - for (o = i.length; o--; ) i[o] *= r; - for (i[0] += Ui.indexOf(e.charAt(s++)), n = 0; n < i.length; n++) - i[n] > t - 1 && - (i[n + 1] === void 0 && (i[n + 1] = 0), - (i[n + 1] += (i[n] / t) | 0), - (i[n] %= t)); - } - return i.reverse(); -} -function Pp(e, r) { - var t, n, i; - if (r.isZero()) return r; - ((n = r.d.length), - n < 32 - ? ((t = Math.ceil(n / 3)), (i = (1 / xn(4, t)).toString())) - : ((t = 16), (i = "2.3283064365386962890625e-10")), - (e.precision += t), - (r = Tr(e, 1, r.times(i), new e(1)))); - for (var o = t; o--; ) { - var s = r.times(r); - r = s.times(s).minus(s).times(8).plus(1); - } - return ((e.precision -= t), r); -} -var L = (function () { - function e(n, i, o) { - var s, - a = 0, - l = n.length; - for (n = n.slice(); l--; ) - ((s = n[l] * i + a), (n[l] = (s % o) | 0), (a = (s / o) | 0)); - return (a && n.unshift(a), n); - } - function r(n, i, o, s) { - var a, l; - if (o != s) l = o > s ? 1 : -1; - else - for (a = l = 0; a < o; a++) - if (n[a] != i[a]) { - l = n[a] > i[a] ? 1 : -1; - break; - } - return l; - } - function t(n, i, o, s) { - for (var a = 0; o--; ) - ((n[o] -= a), (a = n[o] < i[o] ? 1 : 0), (n[o] = a * s + n[o] - i[o])); - for (; !n[0] && n.length > 1; ) n.shift(); - } - return function (n, i, o, s, a, l) { - var u, - c, - p, - d, - f, - h, - g, - I, - T, - S, - b, - D, - me, - se, - Kr, - j, - te, - Ae, - K, - fr, - Vt = n.constructor, - ti = n.s == i.s ? 1 : -1, - H = n.d, - k = i.d; - if (!H || !H[0] || !k || !k[0]) - return new Vt( - !n.s || !i.s || (H ? k && H[0] == k[0] : !k) - ? NaN - : (H && H[0] == 0) || !k - ? ti * 0 - : ti / 0, - ); - for ( - l - ? ((f = 1), (c = n.e - i.e)) - : ((l = fe), (f = E), (c = X(n.e / f) - X(i.e / f))), - K = k.length, - te = H.length, - T = new Vt(ti), - S = T.d = [], - p = 0; - k[p] == (H[p] || 0); - p++ - ); - if ( - (k[p] > (H[p] || 0) && c--, - o == null - ? ((se = o = Vt.precision), (s = Vt.rounding)) - : a - ? (se = o + (n.e - i.e) + 1) - : (se = o), - se < 0) - ) - (S.push(1), (h = !0)); - else { - if (((se = (se / f + 2) | 0), (p = 0), K == 1)) { - for (d = 0, k = k[0], se++; (p < te || d) && se--; p++) - ((Kr = d * l + (H[p] || 0)), - (S[p] = (Kr / k) | 0), - (d = (Kr % k) | 0)); - h = d || p < te; - } else { - for ( - d = (l / (k[0] + 1)) | 0, - d > 1 && - ((k = e(k, d, l)), - (H = e(H, d, l)), - (K = k.length), - (te = H.length)), - j = K, - b = H.slice(0, K), - D = b.length; - D < K; - ) - b[D++] = 0; - ((fr = k.slice()), fr.unshift(0), (Ae = k[0]), k[1] >= l / 2 && ++Ae); - do - ((d = 0), - (u = r(k, b, K, D)), - u < 0 - ? ((me = b[0]), - K != D && (me = me * l + (b[1] || 0)), - (d = (me / Ae) | 0), - d > 1 - ? (d >= l && (d = l - 1), - (g = e(k, d, l)), - (I = g.length), - (D = b.length), - (u = r(g, b, I, D)), - u == 1 && (d--, t(g, K < I ? fr : k, I, l))) - : (d == 0 && (u = d = 1), (g = k.slice())), - (I = g.length), - I < D && g.unshift(0), - t(b, g, D, l), - u == -1 && - ((D = b.length), - (u = r(k, b, K, D)), - u < 1 && (d++, t(b, K < D ? fr : k, D, l))), - (D = b.length)) - : u === 0 && (d++, (b = [0])), - (S[p++] = d), - u && b[0] ? (b[D++] = H[j] || 0) : ((b = [H[j]]), (D = 1))); - while ((j++ < te || b[0] !== void 0) && se--); - h = b[0] !== void 0; - } - S[0] || S.shift(); - } - if (f == 1) ((T.e = c), ($s = h)); - else { - for (p = 1, d = S[0]; d >= 10; d /= 10) p++; - ((T.e = p + c * f - 1), y(T, a ? o + T.e + 1 : o, s, h)); - } - return T; - }; -})(); -function y(e, r, t, n) { - var i, - o, - s, - a, - l, - u, - c, - p, - d, - f = e.constructor; - e: if (r != null) { - if (((p = e.d), !p)) return e; - for (i = 1, a = p[0]; a >= 10; a /= 10) i++; - if (((o = r - i), o < 0)) - ((o += E), - (s = r), - (c = p[(d = 0)]), - (l = ((c / U(10, i - s - 1)) % 10) | 0)); - else if (((d = Math.ceil((o + 1) / E)), (a = p.length), d >= a)) - if (n) { - for (; a++ <= d; ) p.push(0); - ((c = l = 0), (i = 1), (o %= E), (s = o - E + 1)); - } else break e; - else { - for (c = a = p[d], i = 1; a >= 10; a /= 10) i++; - ((o %= E), - (s = o - E + i), - (l = s < 0 ? 0 : ((c / U(10, i - s - 1)) % 10) | 0)); - } - if ( - ((n = - n || - r < 0 || - p[d + 1] !== void 0 || - (s < 0 ? c : c % U(10, i - s - 1))), - (u = - t < 4 - ? (l || n) && (t == 0 || t == (e.s < 0 ? 3 : 2)) - : l > 5 || - (l == 5 && - (t == 4 || - n || - (t == 6 && - ((o > 0 ? (s > 0 ? c / U(10, i - s) : 0) : p[d - 1]) % 10) & - 1) || - t == (e.s < 0 ? 8 : 7)))), - r < 1 || !p[0]) - ) - return ( - (p.length = 0), - u - ? ((r -= e.e + 1), (p[0] = U(10, (E - (r % E)) % E)), (e.e = -r || 0)) - : (p[0] = e.e = 0), - e - ); - if ( - (o == 0 - ? ((p.length = d), (a = 1), d--) - : ((p.length = d + 1), - (a = U(10, E - o)), - (p[d] = s > 0 ? (((c / U(10, i - s)) % U(10, s)) | 0) * a : 0)), - u) - ) - for (;;) - if (d == 0) { - for (o = 1, s = p[0]; s >= 10; s /= 10) o++; - for (s = p[0] += a, a = 1; s >= 10; s /= 10) a++; - o != a && (e.e++, p[0] == fe && (p[0] = 1)); - break; - } else { - if (((p[d] += a), p[d] != fe)) break; - ((p[d--] = 0), (a = 1)); - } - for (o = p.length; p[--o] === 0; ) p.pop(); - } - return ( - w && - (e.e > f.maxE - ? ((e.d = null), (e.e = NaN)) - : e.e < f.minE && ((e.e = 0), (e.d = [0]))), - e - ); -} -function ve(e, r, t) { - if (!e.isFinite()) return Ws(e); - var n, - i = e.e, - o = J(e.d), - s = o.length; - return ( - r - ? (t && (n = t - s) > 0 - ? (o = o.charAt(0) + "." + o.slice(1) + Je(n)) - : s > 1 && (o = o.charAt(0) + "." + o.slice(1)), - (o = o + (e.e < 0 ? "e" : "e+") + e.e)) - : i < 0 - ? ((o = "0." + Je(-i - 1) + o), t && (n = t - s) > 0 && (o += Je(n))) - : i >= s - ? ((o += Je(i + 1 - s)), - t && (n = t - i - 1) > 0 && (o = o + "." + Je(n))) - : ((n = i + 1) < s && (o = o.slice(0, n) + "." + o.slice(n)), - t && (n = t - s) > 0 && (i + 1 === s && (o += "."), (o += Je(n)))), - o - ); -} -function wn(e, r) { - var t = e[0]; - for (r *= E; t >= 10; t /= 10) r++; - return r; -} -function bn(e, r, t) { - if (r > vp) throw ((w = !0), t && (e.precision = t), Error(qs)); - return y(new e(hn), r, 1, !0); -} -function xe(e, r, t) { - if (r > Qi) throw Error(qs); - return y(new e(yn), r, t, !0); -} -function Us(e) { - var r = e.length - 1, - t = r * E + 1; - if (((r = e[r]), r)) { - for (; r % 10 == 0; r /= 10) t--; - for (r = e[0]; r >= 10; r /= 10) t++; - } - return t; -} -function Je(e) { - for (var r = ""; e--; ) r += "0"; - return r; -} -function Gs(e, r, t, n) { - var i, - o = new e(1), - s = Math.ceil(n / E + 4); - for (w = !1; ; ) { - if ( - (t % 2 && ((o = o.times(r)), Fs(o.d, s) && (i = !0)), - (t = X(t / 2)), - t === 0) - ) { - ((t = o.d.length - 1), i && o.d[t] === 0 && ++o.d[t]); - break; - } - ((r = r.times(r)), Fs(r.d, s)); - } - return ((w = !0), o); -} -function Ls(e) { - return e.d[e.d.length - 1] & 1; -} -function Qs(e, r, t) { - for (var n, i, o = new e(r[0]), s = 0; ++s < r.length; ) { - if (((i = new e(r[s])), !i.s)) { - o = i; - break; - } - ((n = o.cmp(i)), (n === t || (n === 0 && o.s === t)) && (o = i)); - } - return o; -} -function Wi(e, r) { - var t, - n, - i, - o, - s, - a, - l, - u = 0, - c = 0, - p = 0, - d = e.constructor, - f = d.rounding, - h = d.precision; - if (!e.d || !e.d[0] || e.e > 17) - return new d( - e.d - ? e.d[0] - ? e.s < 0 - ? 0 - : 1 / 0 - : 1 - : e.s - ? e.s < 0 - ? 0 - : e - : NaN, - ); - for ( - r == null ? ((w = !1), (l = h)) : (l = r), a = new d(0.03125); - e.e > -2; - ) - ((e = e.times(a)), (p += 5)); - for ( - n = ((Math.log(U(2, p)) / Math.LN10) * 2 + 5) | 0, - l += n, - t = o = s = new d(1), - d.precision = l; - ; - ) { - if ( - ((o = y(o.times(e), l, 1)), - (t = t.times(++c)), - (a = s.plus(L(o, t, l, 1))), - J(a.d).slice(0, l) === J(s.d).slice(0, l)) - ) { - for (i = p; i--; ) s = y(s.times(s), l, 1); - if (r == null) - if (u < 3 && ut(s.d, l - n, f, u)) - ((d.precision = l += 10), (t = o = a = new d(1)), (c = 0), u++); - else return y(s, (d.precision = h), f, (w = !0)); - else return ((d.precision = h), s); - } - s = a; - } -} -function Ke(e, r) { - var t, - n, - i, - o, - s, - a, - l, - u, - c, - p, - d, - f = 1, - h = 10, - g = e, - I = g.d, - T = g.constructor, - S = T.rounding, - b = T.precision; - if (g.s < 0 || !I || !I[0] || (!g.e && I[0] == 1 && I.length == 1)) - return new T(I && !I[0] ? -1 / 0 : g.s != 1 ? NaN : I ? 0 : g); - if ( - (r == null ? ((w = !1), (c = b)) : (c = r), - (T.precision = c += h), - (t = J(I)), - (n = t.charAt(0)), - Math.abs((o = g.e)) < 15e14) - ) { - for (; (n < 7 && n != 1) || (n == 1 && t.charAt(1) > 3); ) - ((g = g.times(e)), (t = J(g.d)), (n = t.charAt(0)), f++); - ((o = g.e), - n > 1 ? ((g = new T("0." + t)), o++) : (g = new T(n + "." + t.slice(1)))); - } else - return ( - (u = bn(T, c + 2, b).times(o + "")), - (g = Ke(new T(n + "." + t.slice(1)), c - h).plus(u)), - (T.precision = b), - r == null ? y(g, b, S, (w = !0)) : g - ); - for ( - p = g, - l = s = g = L(g.minus(1), g.plus(1), c, 1), - d = y(g.times(g), c, 1), - i = 3; - ; - ) { - if ( - ((s = y(s.times(d), c, 1)), - (u = l.plus(L(s, new T(i), c, 1))), - J(u.d).slice(0, c) === J(l.d).slice(0, c)) - ) - if ( - ((l = l.times(2)), - o !== 0 && (l = l.plus(bn(T, c + 2, b).times(o + ""))), - (l = L(l, new T(f), c, 1)), - r == null) - ) - if (ut(l.d, c - h, S, a)) - ((T.precision = c += h), - (u = s = g = L(p.minus(1), p.plus(1), c, 1)), - (d = y(g.times(g), c, 1)), - (i = a = 1)); - else return y(l, (T.precision = b), S, (w = !0)); - else return ((T.precision = b), l); - ((l = u), (i += 2)); - } -} -function Ws(e) { - return String((e.s * e.s) / 0); -} -function gn(e, r) { - var t, n, i; - for ( - (t = r.indexOf(".")) > -1 && (r = r.replace(".", "")), - (n = r.search(/e/i)) > 0 - ? (t < 0 && (t = n), (t += +r.slice(n + 1)), (r = r.substring(0, n))) - : t < 0 && (t = r.length), - n = 0; - r.charCodeAt(n) === 48; - n++ - ); - for (i = r.length; r.charCodeAt(i - 1) === 48; --i); - if (((r = r.slice(n, i)), r)) { - if ( - ((i -= n), - (e.e = t = t - n - 1), - (e.d = []), - (n = (t + 1) % E), - t < 0 && (n += E), - n < i) - ) { - for (n && e.d.push(+r.slice(0, n)), i -= E; n < i; ) - e.d.push(+r.slice(n, (n += E))); - ((r = r.slice(n)), (n = E - r.length)); - } else n -= i; - for (; n--; ) r += "0"; - (e.d.push(+r), - w && - (e.e > e.constructor.maxE - ? ((e.d = null), (e.e = NaN)) - : e.e < e.constructor.minE && ((e.e = 0), (e.d = [0])))); - } else ((e.e = 0), (e.d = [0])); - return e; -} -function Tp(e, r) { - var t, n, i, o, s, a, l, u, c; - if (r.indexOf("_") > -1) { - if (((r = r.replace(/(\d)_(?=\d)/g, "$1")), Bs.test(r))) return gn(e, r); - } else if (r === "Infinity" || r === "NaN") - return (+r || (e.s = NaN), (e.e = NaN), (e.d = null), e); - if (Ep.test(r)) ((t = 16), (r = r.toLowerCase())); - else if (bp.test(r)) t = 2; - else if (wp.test(r)) t = 8; - else throw Error(He + r); - for ( - o = r.search(/p/i), - o > 0 - ? ((l = +r.slice(o + 1)), (r = r.substring(2, o))) - : (r = r.slice(2)), - o = r.indexOf("."), - s = o >= 0, - n = e.constructor, - s && - ((r = r.replace(".", "")), - (a = r.length), - (o = a - o), - (i = Gs(n, new n(t), o, o * 2))), - u = fn(r, t, fe), - c = u.length - 1, - o = c; - u[o] === 0; - --o - ) - u.pop(); - return o < 0 - ? new n(e.s * 0) - : ((e.e = wn(u, c)), - (e.d = u), - (w = !1), - s && (e = L(e, i, a * 4)), - l && (e = e.times(Math.abs(l) < 54 ? U(2, l) : Le.pow(2, l))), - (w = !0), - e); -} -function Sp(e, r) { - var t, - n = r.d.length; - if (n < 3) return r.isZero() ? r : Tr(e, 2, r, r); - ((t = 1.4 * Math.sqrt(n)), - (t = t > 16 ? 16 : t | 0), - (r = r.times(1 / xn(5, t))), - (r = Tr(e, 2, r, r))); - for (var i, o = new e(5), s = new e(16), a = new e(20); t--; ) - ((i = r.times(r)), (r = r.times(o.plus(i.times(s.times(i).minus(a)))))); - return r; -} -function Tr(e, r, t, n, i) { - var o, - s, - a, - l, - u = 1, - c = e.precision, - p = Math.ceil(c / E); - for (w = !1, l = t.times(t), a = new e(n); ; ) { - if ( - ((s = L(a.times(l), new e(r++ * r++), c, 1)), - (a = i ? n.plus(s) : n.minus(s)), - (n = L(s.times(l), new e(r++ * r++), c, 1)), - (s = a.plus(n)), - s.d[p] !== void 0) - ) { - for (o = p; s.d[o] === a.d[o] && o--; ); - if (o == -1) break; - } - ((o = a), (a = n), (n = s), (s = o), u++); - } - return ((w = !0), (s.d.length = p + 1), s); -} -function xn(e, r) { - for (var t = e; --r; ) t *= e; - return t; -} -function Js(e, r) { - var t, - n = r.s < 0, - i = xe(e, e.precision, 1), - o = i.times(0.5); - if (((r = r.abs()), r.lte(o))) return ((Ne = n ? 4 : 1), r); - if (((t = r.divToInt(i)), t.isZero())) Ne = n ? 3 : 2; - else { - if (((r = r.minus(t.times(i))), r.lte(o))) - return ((Ne = Ls(t) ? (n ? 2 : 3) : n ? 4 : 1), r); - Ne = Ls(t) ? (n ? 1 : 4) : n ? 3 : 2; - } - return r.minus(i).abs(); -} -function Ji(e, r, t, n) { - var i, - o, - s, - a, - l, - u, - c, - p, - d, - f = e.constructor, - h = t !== void 0; - if ( - (h - ? (ne(t, 1, Ye), n === void 0 ? (n = f.rounding) : ne(n, 0, 8)) - : ((t = f.precision), (n = f.rounding)), - !e.isFinite()) - ) - c = Ws(e); - else { - for ( - c = ve(e), - s = c.indexOf("."), - h - ? ((i = 2), r == 16 ? (t = t * 4 - 3) : r == 8 && (t = t * 3 - 2)) - : (i = r), - s >= 0 && - ((c = c.replace(".", "")), - (d = new f(1)), - (d.e = c.length - s), - (d.d = fn(ve(d), 10, i)), - (d.e = d.d.length)), - p = fn(c, 10, i), - o = l = p.length; - p[--l] == 0; - ) - p.pop(); - if (!p[0]) c = h ? "0p+0" : "0"; - else { - if ( - (s < 0 - ? o-- - : ((e = new f(e)), - (e.d = p), - (e.e = o), - (e = L(e, d, t, n, 0, i)), - (p = e.d), - (o = e.e), - (u = $s)), - (s = p[t]), - (a = i / 2), - (u = u || p[t + 1] !== void 0), - (u = - n < 4 - ? (s !== void 0 || u) && (n === 0 || n === (e.s < 0 ? 3 : 2)) - : s > a || - (s === a && - (n === 4 || - u || - (n === 6 && p[t - 1] & 1) || - n === (e.s < 0 ? 8 : 7)))), - (p.length = t), - u) - ) - for (; ++p[--t] > i - 1; ) ((p[t] = 0), t || (++o, p.unshift(1))); - for (l = p.length; !p[l - 1]; --l); - for (s = 0, c = ""; s < l; s++) c += Ui.charAt(p[s]); - if (h) { - if (l > 1) - if (r == 16 || r == 8) { - for (s = r == 16 ? 4 : 3, --l; l % s; l++) c += "0"; - for (p = fn(c, i, r), l = p.length; !p[l - 1]; --l); - for (s = 1, c = "1."; s < l; s++) c += Ui.charAt(p[s]); - } else c = c.charAt(0) + "." + c.slice(1); - c = c + (o < 0 ? "p" : "p+") + o; - } else if (o < 0) { - for (; ++o; ) c = "0" + c; - c = "0." + c; - } else if (++o > l) for (o -= l; o--; ) c += "0"; - else o < l && (c = c.slice(0, o) + "." + c.slice(o)); - } - c = (r == 16 ? "0x" : r == 2 ? "0b" : r == 8 ? "0o" : "") + c; - } - return e.s < 0 ? "-" + c : c; -} -function Fs(e, r) { - if (e.length > r) return ((e.length = r), !0); -} -function Rp(e) { - return new this(e).abs(); -} -function Ap(e) { - return new this(e).acos(); -} -function Cp(e) { - return new this(e).acosh(); -} -function Ip(e, r) { - return new this(e).plus(r); -} -function Dp(e) { - return new this(e).asin(); -} -function Op(e) { - return new this(e).asinh(); -} -function kp(e) { - return new this(e).atan(); -} -function _p(e) { - return new this(e).atanh(); -} -function Np(e, r) { - ((e = new this(e)), (r = new this(r))); - var t, - n = this.precision, - i = this.rounding, - o = n + 4; - return ( - !e.s || !r.s - ? (t = new this(NaN)) - : !e.d && !r.d - ? ((t = xe(this, o, 1).times(r.s > 0 ? 0.25 : 0.75)), (t.s = e.s)) - : !r.d || e.isZero() - ? ((t = r.s < 0 ? xe(this, n, i) : new this(0)), (t.s = e.s)) - : !e.d || r.isZero() - ? ((t = xe(this, o, 1).times(0.5)), (t.s = e.s)) - : r.s < 0 - ? ((this.precision = o), - (this.rounding = 1), - (t = this.atan(L(e, r, o, 1))), - (r = xe(this, o, 1)), - (this.precision = n), - (this.rounding = i), - (t = e.s < 0 ? t.minus(r) : t.plus(r))) - : (t = this.atan(L(e, r, o, 1))), - t - ); -} -function Lp(e) { - return new this(e).cbrt(); -} -function Fp(e) { - return y((e = new this(e)), e.e + 1, 2); -} -function Mp(e, r, t) { - return new this(e).clamp(r, t); -} -function $p(e) { - if (!e || typeof e != "object") throw Error(En + "Object expected"); - var r, - t, - n, - i = e.defaults === !0, - o = [ - "precision", - 1, - Ye, - "rounding", - 0, - 8, - "toExpNeg", - -Pr, - 0, - "toExpPos", - 0, - Pr, - "maxE", - 0, - Pr, - "minE", - -Pr, - 0, - "modulo", - 0, - 9, - ]; - for (r = 0; r < o.length; r += 3) - if (((t = o[r]), i && (this[t] = Gi[t]), (n = e[t]) !== void 0)) - if (X(n) === n && n >= o[r + 1] && n <= o[r + 2]) this[t] = n; - else throw Error(He + t + ": " + n); - if (((t = "crypto"), i && (this[t] = Gi[t]), (n = e[t]) !== void 0)) - if (n === !0 || n === !1 || n === 0 || n === 1) - if (n) - if ( - typeof crypto < "u" && - crypto && - (crypto.getRandomValues || crypto.randomBytes) - ) - this[t] = !0; - else throw Error(Vs); - else this[t] = !1; - else throw Error(He + t + ": " + n); - return this; -} -function qp(e) { - return new this(e).cos(); -} -function Vp(e) { - return new this(e).cosh(); -} -function Ks(e) { - var r, t, n; - function i(o) { - var s, - a, - l, - u = this; - if (!(u instanceof i)) return new i(o); - if (((u.constructor = i), Ms(o))) { - ((u.s = o.s), - w - ? !o.d || o.e > i.maxE - ? ((u.e = NaN), (u.d = null)) - : o.e < i.minE - ? ((u.e = 0), (u.d = [0])) - : ((u.e = o.e), (u.d = o.d.slice())) - : ((u.e = o.e), (u.d = o.d ? o.d.slice() : o.d))); - return; - } - if (((l = typeof o), l === "number")) { - if (o === 0) { - ((u.s = 1 / o < 0 ? -1 : 1), (u.e = 0), (u.d = [0])); - return; - } - if ((o < 0 ? ((o = -o), (u.s = -1)) : (u.s = 1), o === ~~o && o < 1e7)) { - for (s = 0, a = o; a >= 10; a /= 10) s++; - w - ? s > i.maxE - ? ((u.e = NaN), (u.d = null)) - : s < i.minE - ? ((u.e = 0), (u.d = [0])) - : ((u.e = s), (u.d = [o])) - : ((u.e = s), (u.d = [o])); - return; - } - if (o * 0 !== 0) { - (o || (u.s = NaN), (u.e = NaN), (u.d = null)); - return; - } - return gn(u, o.toString()); - } - if (l === "string") - return ( - (a = o.charCodeAt(0)) === 45 - ? ((o = o.slice(1)), (u.s = -1)) - : (a === 43 && (o = o.slice(1)), (u.s = 1)), - Bs.test(o) ? gn(u, o) : Tp(u, o) - ); - if (l === "bigint") - return (o < 0 ? ((o = -o), (u.s = -1)) : (u.s = 1), gn(u, o.toString())); - throw Error(He + o); - } - if ( - ((i.prototype = m), - (i.ROUND_UP = 0), - (i.ROUND_DOWN = 1), - (i.ROUND_CEIL = 2), - (i.ROUND_FLOOR = 3), - (i.ROUND_HALF_UP = 4), - (i.ROUND_HALF_DOWN = 5), - (i.ROUND_HALF_EVEN = 6), - (i.ROUND_HALF_CEIL = 7), - (i.ROUND_HALF_FLOOR = 8), - (i.EUCLID = 9), - (i.config = i.set = $p), - (i.clone = Ks), - (i.isDecimal = Ms), - (i.abs = Rp), - (i.acos = Ap), - (i.acosh = Cp), - (i.add = Ip), - (i.asin = Dp), - (i.asinh = Op), - (i.atan = kp), - (i.atanh = _p), - (i.atan2 = Np), - (i.cbrt = Lp), - (i.ceil = Fp), - (i.clamp = Mp), - (i.cos = qp), - (i.cosh = Vp), - (i.div = jp), - (i.exp = Bp), - (i.floor = Up), - (i.hypot = Gp), - (i.ln = Qp), - (i.log = Wp), - (i.log10 = Kp), - (i.log2 = Jp), - (i.max = Hp), - (i.min = Yp), - (i.mod = zp), - (i.mul = Zp), - (i.pow = Xp), - (i.random = ed), - (i.round = rd), - (i.sign = td), - (i.sin = nd), - (i.sinh = id), - (i.sqrt = od), - (i.sub = sd), - (i.sum = ad), - (i.tan = ld), - (i.tanh = ud), - (i.trunc = cd), - e === void 0 && (e = {}), - e && e.defaults !== !0) - ) - for ( - n = [ - "precision", - "rounding", - "toExpNeg", - "toExpPos", - "maxE", - "minE", - "modulo", - "crypto", - ], - r = 0; - r < n.length; - ) - e.hasOwnProperty((t = n[r++])) || (e[t] = this[t]); - return (i.config(e), i); -} -function jp(e, r) { - return new this(e).div(r); -} -function Bp(e) { - return new this(e).exp(); -} -function Up(e) { - return y((e = new this(e)), e.e + 1, 3); -} -function Gp() { - var e, - r, - t = new this(0); - for (w = !1, e = 0; e < arguments.length; ) - if (((r = new this(arguments[e++])), r.d)) t.d && (t = t.plus(r.times(r))); - else { - if (r.s) return ((w = !0), new this(1 / 0)); - t = r; - } - return ((w = !0), t.sqrt()); -} -function Ms(e) { - return e instanceof Le || (e && e.toStringTag === js) || !1; -} -function Qp(e) { - return new this(e).ln(); -} -function Wp(e, r) { - return new this(e).log(r); -} -function Jp(e) { - return new this(e).log(2); -} -function Kp(e) { - return new this(e).log(10); -} -function Hp() { - return Qs(this, arguments, -1); -} -function Yp() { - return Qs(this, arguments, 1); -} -function zp(e, r) { - return new this(e).mod(r); -} -function Zp(e, r) { - return new this(e).mul(r); -} -function Xp(e, r) { - return new this(e).pow(r); -} -function ed(e) { - var r, - t, - n, - i, - o = 0, - s = new this(1), - a = []; - if ( - (e === void 0 ? (e = this.precision) : ne(e, 1, Ye), - (n = Math.ceil(e / E)), - this.crypto) - ) - if (crypto.getRandomValues) - for (r = crypto.getRandomValues(new Uint32Array(n)); o < n; ) - ((i = r[o]), - i >= 429e7 - ? (r[o] = crypto.getRandomValues(new Uint32Array(1))[0]) - : (a[o++] = i % 1e7)); - else if (crypto.randomBytes) { - for (r = crypto.randomBytes((n *= 4)); o < n; ) - ((i = - r[o] + (r[o + 1] << 8) + (r[o + 2] << 16) + ((r[o + 3] & 127) << 24)), - i >= 214e7 - ? crypto.randomBytes(4).copy(r, o) - : (a.push(i % 1e7), (o += 4))); - o = n / 4; - } else throw Error(Vs); - else for (; o < n; ) a[o++] = (Math.random() * 1e7) | 0; - for ( - n = a[--o], - e %= E, - n && e && ((i = U(10, E - e)), (a[o] = ((n / i) | 0) * i)); - a[o] === 0; - o-- - ) - a.pop(); - if (o < 0) ((t = 0), (a = [0])); - else { - for (t = -1; a[0] === 0; t -= E) a.shift(); - for (n = 1, i = a[0]; i >= 10; i /= 10) n++; - n < E && (t -= E - n); - } - return ((s.e = t), (s.d = a), s); -} -function rd(e) { - return y((e = new this(e)), e.e + 1, this.rounding); -} -function td(e) { - return ((e = new this(e)), e.d ? (e.d[0] ? e.s : 0 * e.s) : e.s || NaN); -} -function nd(e) { - return new this(e).sin(); -} -function id(e) { - return new this(e).sinh(); -} -function od(e) { - return new this(e).sqrt(); -} -function sd(e, r) { - return new this(e).sub(r); -} -function ad() { - var e = 0, - r = arguments, - t = new this(r[e]); - for (w = !1; t.s && ++e < r.length; ) t = t.plus(r[e]); - return ((w = !0), y(t, this.precision, this.rounding)); -} -function ld(e) { - return new this(e).tan(); -} -function ud(e) { - return new this(e).tanh(); -} -function cd(e) { - return y((e = new this(e)), e.e + 1, 1); -} -m[Symbol.for("nodejs.util.inspect.custom")] = m.toString; -m[Symbol.toStringTag] = "Decimal"; -var Le = (m.constructor = Ks(Gi)); -hn = new Le(hn); -yn = new Le(yn); -var Fe = Le; -function Sr(e) { - return Le.isDecimal(e) - ? !0 - : e !== null && - typeof e == "object" && - typeof e.s == "number" && - typeof e.e == "number" && - typeof e.toFixed == "function" && - Array.isArray(e.d); -} -var ct = {}; -tr(ct, { ModelAction: () => Rr, datamodelEnumToSchemaEnum: () => pd }); -function pd(e) { - return { name: e.name, values: e.values.map((r) => r.name) }; -} -var Rr = ((b) => ( - (b.findUnique = "findUnique"), - (b.findUniqueOrThrow = "findUniqueOrThrow"), - (b.findFirst = "findFirst"), - (b.findFirstOrThrow = "findFirstOrThrow"), - (b.findMany = "findMany"), - (b.create = "create"), - (b.createMany = "createMany"), - (b.createManyAndReturn = "createManyAndReturn"), - (b.update = "update"), - (b.updateMany = "updateMany"), - (b.updateManyAndReturn = "updateManyAndReturn"), - (b.upsert = "upsert"), - (b.delete = "delete"), - (b.deleteMany = "deleteMany"), - (b.groupBy = "groupBy"), - (b.count = "count"), - (b.aggregate = "aggregate"), - (b.findRaw = "findRaw"), - (b.aggregateRaw = "aggregateRaw"), - b -))(Rr || {}); -var Xs = O(Di()); -var Zs = O(require("node:fs")); -var Hs = { - keyword: De, - entity: De, - value: (e) => W(nr(e)), - punctuation: nr, - directive: De, - function: De, - variable: (e) => W(nr(e)), - string: (e) => W(qe(e)), - boolean: Ie, - number: De, - comment: Hr, -}; -var dd = (e) => e, - vn = {}, - md = 0, - v = { - manual: vn.Prism && vn.Prism.manual, - disableWorkerMessageHandler: - vn.Prism && vn.Prism.disableWorkerMessageHandler, - util: { - encode: function (e) { - if (e instanceof ge) { - let r = e; - return new ge(r.type, v.util.encode(r.content), r.alias); - } else - return Array.isArray(e) - ? e.map(v.util.encode) - : e - .replace(/&/g, "&") - .replace(/ e.length) return; - if (Ae instanceof ge) continue; - if (me && j != r.length - 1) { - S.lastIndex = te; - var p = S.exec(e); - if (!p) break; - var c = p.index + (D ? p[1].length : 0), - d = p.index + p[0].length, - a = j, - l = te; - for ( - let k = r.length; - a < k && (l < d || (!r[a].type && !r[a - 1].greedy)); - ++a - ) - ((l += r[a].length), c >= l && (++j, (te = l))); - if (r[j] instanceof ge) continue; - ((u = a - j), (Ae = e.slice(te, l)), (p.index -= te)); - } else { - S.lastIndex = 0; - var p = S.exec(Ae), - u = 1; - } - if (!p) { - if (o) break; - continue; - } - D && (se = p[1] ? p[1].length : 0); - var c = p.index + se, - p = p[0].slice(se), - d = c + p.length, - f = Ae.slice(0, c), - h = Ae.slice(d); - let K = [j, u]; - f && (++j, (te += f.length), K.push(f)); - let fr = new ge(g, b ? v.tokenize(p, b) : p, Kr, p, me); - if ( - (K.push(fr), - h && K.push(h), - Array.prototype.splice.apply(r, K), - u != 1 && v.matchGrammar(e, r, t, j, te, !0, g), - o) - ) - break; - } - } - } - }, - tokenize: function (e, r) { - let t = [e], - n = r.rest; - if (n) { - for (let i in n) r[i] = n[i]; - delete r.rest; - } - return (v.matchGrammar(e, t, r, 0, 0, !1), t); - }, - hooks: { - all: {}, - add: function (e, r) { - let t = v.hooks.all; - ((t[e] = t[e] || []), t[e].push(r)); - }, - run: function (e, r) { - let t = v.hooks.all[e]; - if (!(!t || !t.length)) for (var n = 0, i; (i = t[n++]); ) i(r); - }, - }, - Token: ge, - }; -v.languages.clike = { - comment: [ - { pattern: /(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/, lookbehind: !0 }, - { pattern: /(^|[^\\:])\/\/.*/, lookbehind: !0, greedy: !0 }, - ], - string: { - pattern: /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/, - greedy: !0, - }, - "class-name": { - pattern: - /((?:\b(?:class|interface|extends|implements|trait|instanceof|new)\s+)|(?:catch\s+\())[\w.\\]+/i, - lookbehind: !0, - inside: { punctuation: /[.\\]/ }, - }, - keyword: - /\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/, - boolean: /\b(?:true|false)\b/, - function: /\w+(?=\()/, - number: /\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i, - operator: /--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&?|\|\|?|\?|\*|\/|~|\^|%/, - punctuation: /[{}[\];(),.:]/, -}; -v.languages.javascript = v.languages.extend("clike", { - "class-name": [ - v.languages.clike["class-name"], - { - pattern: - /(^|[^$\w\xA0-\uFFFF])[_$A-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\.(?:prototype|constructor))/, - lookbehind: !0, - }, - ], - keyword: [ - { pattern: /((?:^|})\s*)(?:catch|finally)\b/, lookbehind: !0 }, - { - pattern: - /(^|[^.])\b(?:as|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/, - lookbehind: !0, - }, - ], - number: - /\b(?:(?:0[xX](?:[\dA-Fa-f](?:_[\dA-Fa-f])?)+|0[bB](?:[01](?:_[01])?)+|0[oO](?:[0-7](?:_[0-7])?)+)n?|(?:\d(?:_\d)?)+n|NaN|Infinity)\b|(?:\b(?:\d(?:_\d)?)+\.?(?:\d(?:_\d)?)*|\B\.(?:\d(?:_\d)?)+)(?:[Ee][+-]?(?:\d(?:_\d)?)+)?/, - function: - /[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/, - operator: - /-[-=]?|\+[+=]?|!=?=?|<>?>?=?|=(?:==?|>)?|&[&=]?|\|[|=]?|\*\*?=?|\/=?|~|\^=?|%=?|\?|\.{3}/, -}); -v.languages.javascript["class-name"][0].pattern = - /(\b(?:class|interface|extends|implements|instanceof|new)\s+)[\w.\\]+/; -v.languages.insertBefore("javascript", "keyword", { - regex: { - pattern: - /((?:^|[^$\w\xA0-\uFFFF."'\])\s])\s*)\/(\[(?:[^\]\\\r\n]|\\.)*]|\\.|[^/\\\[\r\n])+\/[gimyus]{0,6}(?=\s*($|[\r\n,.;})\]]))/, - lookbehind: !0, - greedy: !0, - }, - "function-variable": { - pattern: - /[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)\s*=>))/, - alias: "function", - }, - parameter: [ - { - pattern: - /(function(?:\s+[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)?\s*\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\))/, - lookbehind: !0, - inside: v.languages.javascript, - }, - { - pattern: /[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*=>)/i, - inside: v.languages.javascript, - }, - { - pattern: /(\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*=>)/, - lookbehind: !0, - inside: v.languages.javascript, - }, - { - pattern: - /((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*\s*)\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*\{)/, - lookbehind: !0, - inside: v.languages.javascript, - }, - ], - constant: /\b[A-Z](?:[A-Z_]|\dx?)*\b/, -}); -v.languages.markup && v.languages.markup.tag.addInlined("script", "javascript"); -v.languages.js = v.languages.javascript; -v.languages.typescript = v.languages.extend("javascript", { - keyword: - /\b(?:abstract|as|async|await|break|case|catch|class|const|constructor|continue|debugger|declare|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|is|keyof|let|module|namespace|new|null|of|package|private|protected|public|readonly|return|require|set|static|super|switch|this|throw|try|type|typeof|var|void|while|with|yield)\b/, - builtin: - /\b(?:string|Function|any|number|boolean|Array|symbol|console|Promise|unknown|never)\b/, -}); -v.languages.ts = v.languages.typescript; -function ge(e, r, t, n, i) { - ((this.type = e), - (this.content = r), - (this.alias = t), - (this.length = (n || "").length | 0), - (this.greedy = !!i)); -} -ge.stringify = function (e, r) { - return typeof e == "string" - ? e - : Array.isArray(e) - ? e - .map(function (t) { - return ge.stringify(t, r); - }) - .join("") - : fd(e.type)(e.content); -}; -function fd(e) { - return Hs[e] || dd; -} -function Ys(e) { - return gd(e, v.languages.javascript); -} -function gd(e, r) { - return v - .tokenize(e, r) - .map((n) => ge.stringify(n)) - .join(""); -} -function zs(e) { - return Ci(e); -} -var Pn = class e { - firstLineNumber; - lines; - static read(r) { - let t; - try { - t = Zs.default.readFileSync(r, "utf-8"); - } catch { - return null; - } - return e.fromContent(t); - } - static fromContent(r) { - let t = r.split(/\r?\n/); - return new e(1, t); - } - constructor(r, t) { - ((this.firstLineNumber = r), (this.lines = t)); - } - get lastLineNumber() { - return this.firstLineNumber + this.lines.length - 1; - } - mapLineAt(r, t) { - if ( - r < this.firstLineNumber || - r > this.lines.length + this.firstLineNumber - ) - return this; - let n = r - this.firstLineNumber, - i = [...this.lines]; - return ((i[n] = t(i[n])), new e(this.firstLineNumber, i)); - } - mapLines(r) { - return new e( - this.firstLineNumber, - this.lines.map((t, n) => r(t, this.firstLineNumber + n)), - ); - } - lineAt(r) { - return this.lines[r - this.firstLineNumber]; - } - prependSymbolAt(r, t) { - return this.mapLines((n, i) => (i === r ? `${t} ${n}` : ` ${n}`)); - } - slice(r, t) { - let n = this.lines.slice(r - 1, t).join(` -`); - return new e( - r, - zs(n).split(` -`), - ); - } - highlight() { - let r = Ys(this.toString()); - return new e( - this.firstLineNumber, - r.split(` -`), - ); - } - toString() { - return this.lines.join(` -`); - } -}; -var hd = { - red: ce, - gray: Hr, - dim: Ce, - bold: W, - underline: Y, - highlightSource: (e) => e.highlight(), - }, - yd = { - red: (e) => e, - gray: (e) => e, - dim: (e) => e, - bold: (e) => e, - underline: (e) => e, - highlightSource: (e) => e, - }; -function bd({ message: e, originalMethod: r, isPanic: t, callArguments: n }) { - return { - functionName: `prisma.${r}()`, - message: e, - isPanic: t ?? !1, - callArguments: n, - }; -} -function Ed( - { callsite: e, message: r, originalMethod: t, isPanic: n, callArguments: i }, - o, -) { - let s = bd({ message: r, originalMethod: t, isPanic: n, callArguments: i }); - if (!e || typeof window < "u" || process.env.NODE_ENV === "production") - return s; - let a = e.getLocation(); - if (!a || !a.lineNumber || !a.columnNumber) return s; - let l = Math.max(1, a.lineNumber - 3), - u = Pn.read(a.fileName)?.slice(l, a.lineNumber), - c = u?.lineAt(a.lineNumber); - if (u && c) { - let p = xd(c), - d = wd(c); - if (!d) return s; - ((s.functionName = `${d.code})`), - (s.location = a), - n || - (u = u.mapLineAt(a.lineNumber, (h) => h.slice(0, d.openingBraceIndex))), - (u = o.highlightSource(u))); - let f = String(u.lastLineNumber).length; - if ( - ((s.contextLines = u - .mapLines((h, g) => o.gray(String(g).padStart(f)) + " " + h) - .mapLines((h) => o.dim(h)) - .prependSymbolAt(a.lineNumber, o.bold(o.red("\u2192")))), - i) - ) { - let h = p + f + 1; - ((h += 2), (s.callArguments = (0, Xs.default)(i, h).slice(h))); - } - } - return s; -} -function wd(e) { - let r = Object.keys(Rr).join("|"), - n = new RegExp(String.raw`\.(${r})\(`).exec(e); - if (n) { - let i = n.index + n[0].length, - o = e.lastIndexOf(" ", n.index) + 1; - return { code: e.slice(o, i), openingBraceIndex: i }; - } - return null; -} -function xd(e) { - let r = 0; - for (let t = 0; t < e.length; t++) { - if (e.charAt(t) !== " ") return r; - r++; - } - return r; -} -function vd( - { - functionName: e, - location: r, - message: t, - isPanic: n, - contextLines: i, - callArguments: o, - }, - s, -) { - let a = [""], - l = r ? " in" : ":"; - if ( - (n - ? (a.push( - s.red( - `Oops, an unknown error occurred! This is ${s.bold("on us")}, you did nothing wrong.`, - ), - ), - a.push( - s.red(`It occurred in the ${s.bold(`\`${e}\``)} invocation${l}`), - )) - : a.push(s.red(`Invalid ${s.bold(`\`${e}\``)} invocation${l}`)), - r && a.push(s.underline(Pd(r))), - i) - ) { - a.push(""); - let u = [i.toString()]; - (o && (u.push(o), u.push(s.dim(")"))), a.push(u.join("")), o && a.push("")); - } else (a.push(""), o && a.push(o), a.push("")); - return ( - a.push(t), - a.join(` -`) - ); -} -function Pd(e) { - let r = [e.fileName]; - return ( - e.lineNumber && r.push(String(e.lineNumber)), - e.columnNumber && r.push(String(e.columnNumber)), - r.join(":") - ); -} -function Tn(e) { - let r = e.showColors ? hd : yd, - t; - return ((t = Ed(e, r)), vd(t, r)); -} -var la = O(Ki()); -function na(e, r, t) { - let n = ia(e), - i = Td(n), - o = Rd(i); - o ? Sn(o, r, t) : r.addErrorMessage(() => "Unknown error"); -} -function ia(e) { - return e.errors.flatMap((r) => (r.kind === "Union" ? ia(r) : [r])); -} -function Td(e) { - let r = new Map(), - t = []; - for (let n of e) { - if (n.kind !== "InvalidArgumentType") { - t.push(n); - continue; - } - let i = `${n.selectionPath.join(".")}:${n.argumentPath.join(".")}`, - o = r.get(i); - o - ? r.set(i, { - ...n, - argument: { - ...n.argument, - typeNames: Sd(o.argument.typeNames, n.argument.typeNames), - }, - }) - : r.set(i, n); - } - return (t.push(...r.values()), t); -} -function Sd(e, r) { - return [...new Set(e.concat(r))]; -} -function Rd(e) { - return ji(e, (r, t) => { - let n = ra(r), - i = ra(t); - return n !== i ? n - i : ta(r) - ta(t); - }); -} -function ra(e) { - let r = 0; - return ( - Array.isArray(e.selectionPath) && (r += e.selectionPath.length), - Array.isArray(e.argumentPath) && (r += e.argumentPath.length), - r - ); -} -function ta(e) { - switch (e.kind) { - case "InvalidArgumentValue": - case "ValueTooLarge": - return 20; - case "InvalidArgumentType": - return 10; - case "RequiredArgumentMissing": - return -10; - default: - return 0; - } -} -var le = class { - constructor(r, t) { - this.name = r; - this.value = t; - } - isRequired = !1; - makeRequired() { - return ((this.isRequired = !0), this); - } - write(r) { - let { - colors: { green: t }, - } = r.context; - (r.addMarginSymbol(t(this.isRequired ? "+" : "?")), - r.write(t(this.name)), - this.isRequired || r.write(t("?")), - r.write(t(": ")), - typeof this.value == "string" - ? r.write(t(this.value)) - : r.write(this.value)); - } -}; -sa(); -var Ar = class { - constructor(r = 0, t) { - this.context = t; - this.currentIndent = r; - } - lines = []; - currentLine = ""; - currentIndent = 0; - marginSymbol; - afterNextNewLineCallback; - write(r) { - return ( - typeof r == "string" ? (this.currentLine += r) : r.write(this), - this - ); - } - writeJoined(r, t, n = (i, o) => o.write(i)) { - let i = t.length - 1; - for (let o = 0; o < t.length; o++) - (n(t[o], this), o !== i && this.write(r)); - return this; - } - writeLine(r) { - return this.write(r).newLine(); - } - newLine() { - (this.lines.push(this.indentedCurrentLine()), - (this.currentLine = ""), - (this.marginSymbol = void 0)); - let r = this.afterNextNewLineCallback; - return ((this.afterNextNewLineCallback = void 0), r?.(), this); - } - withIndent(r) { - return (this.indent(), r(this), this.unindent(), this); - } - afterNextNewline(r) { - return ((this.afterNextNewLineCallback = r), this); - } - indent() { - return (this.currentIndent++, this); - } - unindent() { - return (this.currentIndent > 0 && this.currentIndent--, this); - } - addMarginSymbol(r) { - return ((this.marginSymbol = r), this); - } - toString() { - return this.lines.concat(this.indentedCurrentLine()).join(` -`); - } - getCurrentLineLength() { - return this.currentLine.length; - } - indentedCurrentLine() { - let r = this.currentLine.padStart( - this.currentLine.length + 2 * this.currentIndent, - ); - return this.marginSymbol ? this.marginSymbol + r.slice(1) : r; - } -}; -oa(); -var Rn = class { - constructor(r) { - this.value = r; - } - write(r) { - r.write(this.value); - } - markAsError() { - this.value.markAsError(); - } -}; -var An = (e) => e, - Cn = { bold: An, red: An, green: An, dim: An, enabled: !1 }, - aa = { bold: W, red: ce, green: qe, dim: Ce, enabled: !0 }, - Cr = { - write(e) { - e.writeLine(","); - }, - }; -var Pe = class { - constructor(r) { - this.contents = r; - } - isUnderlined = !1; - color = (r) => r; - underline() { - return ((this.isUnderlined = !0), this); - } - setColor(r) { - return ((this.color = r), this); - } - write(r) { - let t = r.getCurrentLineLength(); - (r.write(this.color(this.contents)), - this.isUnderlined && - r.afterNextNewline(() => { - r.write(" ".repeat(t)).writeLine( - this.color("~".repeat(this.contents.length)), - ); - })); - } -}; -var ze = class { - hasError = !1; - markAsError() { - return ((this.hasError = !0), this); - } -}; -var Ir = class extends ze { - items = []; - addItem(r) { - return (this.items.push(new Rn(r)), this); - } - getField(r) { - return this.items[r]; - } - getPrintWidth() { - return this.items.length === 0 - ? 2 - : Math.max(...this.items.map((t) => t.value.getPrintWidth())) + 2; - } - write(r) { - if (this.items.length === 0) { - this.writeEmpty(r); - return; - } - this.writeWithItems(r); - } - writeEmpty(r) { - let t = new Pe("[]"); - (this.hasError && t.setColor(r.context.colors.red).underline(), r.write(t)); - } - writeWithItems(r) { - let { colors: t } = r.context; - (r - .writeLine("[") - .withIndent(() => r.writeJoined(Cr, this.items).newLine()) - .write("]"), - this.hasError && - r.afterNextNewline(() => { - r.writeLine(t.red("~".repeat(this.getPrintWidth()))); - })); - } - asObject() {} -}; -var Dr = class e extends ze { - fields = {}; - suggestions = []; - addField(r) { - this.fields[r.name] = r; - } - addSuggestion(r) { - this.suggestions.push(r); - } - getField(r) { - return this.fields[r]; - } - getDeepField(r) { - let [t, ...n] = r, - i = this.getField(t); - if (!i) return; - let o = i; - for (let s of n) { - let a; - if ( - (o.value instanceof e - ? (a = o.value.getField(s)) - : o.value instanceof Ir && (a = o.value.getField(Number(s))), - !a) - ) - return; - o = a; - } - return o; - } - getDeepFieldValue(r) { - return r.length === 0 ? this : this.getDeepField(r)?.value; - } - hasField(r) { - return !!this.getField(r); - } - removeAllFields() { - this.fields = {}; - } - removeField(r) { - delete this.fields[r]; - } - getFields() { - return this.fields; - } - isEmpty() { - return Object.keys(this.fields).length === 0; - } - getFieldValue(r) { - return this.getField(r)?.value; - } - getDeepSubSelectionValue(r) { - let t = this; - for (let n of r) { - if (!(t instanceof e)) return; - let i = t.getSubSelectionValue(n); - if (!i) return; - t = i; - } - return t; - } - getDeepSelectionParent(r) { - let t = this.getSelectionParent(); - if (!t) return; - let n = t; - for (let i of r) { - let o = n.value.getFieldValue(i); - if (!o || !(o instanceof e)) return; - let s = o.getSelectionParent(); - if (!s) return; - n = s; - } - return n; - } - getSelectionParent() { - let r = this.getField("select")?.value.asObject(); - if (r) return { kind: "select", value: r }; - let t = this.getField("include")?.value.asObject(); - if (t) return { kind: "include", value: t }; - } - getSubSelectionValue(r) { - return this.getSelectionParent()?.value.fields[r].value; - } - getPrintWidth() { - let r = Object.values(this.fields); - return r.length == 0 ? 2 : Math.max(...r.map((n) => n.getPrintWidth())) + 2; - } - write(r) { - let t = Object.values(this.fields); - if (t.length === 0 && this.suggestions.length === 0) { - this.writeEmpty(r); - return; - } - this.writeWithContents(r, t); - } - asObject() { - return this; - } - writeEmpty(r) { - let t = new Pe("{}"); - (this.hasError && t.setColor(r.context.colors.red).underline(), r.write(t)); - } - writeWithContents(r, t) { - (r.writeLine("{").withIndent(() => { - r.writeJoined(Cr, [...t, ...this.suggestions]).newLine(); - }), - r.write("}"), - this.hasError && - r.afterNextNewline(() => { - r.writeLine(r.context.colors.red("~".repeat(this.getPrintWidth()))); - })); - } -}; -var Q = class extends ze { - constructor(t) { - super(); - this.text = t; - } - getPrintWidth() { - return this.text.length; - } - write(t) { - let n = new Pe(this.text); - (this.hasError && n.underline().setColor(t.context.colors.red), t.write(n)); - } - asObject() {} -}; -var pt = class { - fields = []; - addField(r, t) { - return ( - this.fields.push({ - write(n) { - let { green: i, dim: o } = n.context.colors; - n.write(i(o(`${r}: ${t}`))).addMarginSymbol(i(o("+"))); - }, - }), - this - ); - } - write(r) { - let { - colors: { green: t }, - } = r.context; - r.writeLine(t("{")) - .withIndent(() => { - r.writeJoined(Cr, this.fields).newLine(); - }) - .write(t("}")) - .addMarginSymbol(t("+")); - } -}; -function Sn(e, r, t) { - switch (e.kind) { - case "MutuallyExclusiveFields": - Ad(e, r); - break; - case "IncludeOnScalar": - Cd(e, r); - break; - case "EmptySelection": - Id(e, r, t); - break; - case "UnknownSelectionField": - _d(e, r); - break; - case "InvalidSelectionValue": - Nd(e, r); - break; - case "UnknownArgument": - Ld(e, r); - break; - case "UnknownInputField": - Fd(e, r); - break; - case "RequiredArgumentMissing": - Md(e, r); - break; - case "InvalidArgumentType": - $d(e, r); - break; - case "InvalidArgumentValue": - qd(e, r); - break; - case "ValueTooLarge": - Vd(e, r); - break; - case "SomeFieldsMissing": - jd(e, r); - break; - case "TooManyFieldsGiven": - Bd(e, r); - break; - case "Union": - na(e, r, t); - break; - default: - throw new Error("not implemented: " + e.kind); - } -} -function Ad(e, r) { - let t = r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - (t && - (t.getField(e.firstField)?.markAsError(), - t.getField(e.secondField)?.markAsError()), - r.addErrorMessage( - (n) => - `Please ${n.bold("either")} use ${n.green(`\`${e.firstField}\``)} or ${n.green(`\`${e.secondField}\``)}, but ${n.red("not both")} at the same time.`, - )); -} -function Cd(e, r) { - let [t, n] = Or(e.selectionPath), - i = e.outputType, - o = r.arguments.getDeepSelectionParent(t)?.value; - if (o && (o.getField(n)?.markAsError(), i)) - for (let s of i.fields) - s.isRelation && o.addSuggestion(new le(s.name, "true")); - r.addErrorMessage((s) => { - let a = `Invalid scalar field ${s.red(`\`${n}\``)} for ${s.bold("include")} statement`; - return ( - i ? (a += ` on model ${s.bold(i.name)}. ${dt(s)}`) : (a += "."), - (a += ` -Note that ${s.bold("include")} statements only accept relation fields.`), - a - ); - }); -} -function Id(e, r, t) { - let n = r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - if (n) { - let i = n.getField("omit")?.value.asObject(); - if (i) { - Dd(e, r, i); - return; - } - if (n.hasField("select")) { - Od(e, r); - return; - } - } - if (t?.[We(e.outputType.name)]) { - kd(e, r); - return; - } - r.addErrorMessage( - () => `Unknown field at "${e.selectionPath.join(".")} selection"`, - ); -} -function Dd(e, r, t) { - t.removeAllFields(); - for (let n of e.outputType.fields) t.addSuggestion(new le(n.name, "false")); - r.addErrorMessage( - (n) => - `The ${n.red("omit")} statement includes every field of the model ${n.bold(e.outputType.name)}. At least one field must be included in the result`, - ); -} -function Od(e, r) { - let t = e.outputType, - n = r.arguments.getDeepSelectionParent(e.selectionPath)?.value, - i = n?.isEmpty() ?? !1; - (n && (n.removeAllFields(), pa(n, t)), - r.addErrorMessage((o) => - i - ? `The ${o.red("`select`")} statement for type ${o.bold(t.name)} must not be empty. ${dt(o)}` - : `The ${o.red("`select`")} statement for type ${o.bold(t.name)} needs ${o.bold("at least one truthy value")}.`, - )); -} -function kd(e, r) { - let t = new pt(); - for (let i of e.outputType.fields) - i.isRelation || t.addField(i.name, "false"); - let n = new le("omit", t).makeRequired(); - if (e.selectionPath.length === 0) r.arguments.addSuggestion(n); - else { - let [i, o] = Or(e.selectionPath), - a = r.arguments.getDeepSelectionParent(i)?.value.asObject()?.getField(o); - if (a) { - let l = a?.value.asObject() ?? new Dr(); - (l.addSuggestion(n), (a.value = l)); - } - } - r.addErrorMessage( - (i) => - `The global ${i.red("omit")} configuration excludes every field of the model ${i.bold(e.outputType.name)}. At least one field must be included in the result`, - ); -} -function _d(e, r) { - let t = da(e.selectionPath, r); - if (t.parentKind !== "unknown") { - t.field.markAsError(); - let n = t.parent; - switch (t.parentKind) { - case "select": - pa(n, e.outputType); - break; - case "include": - Ud(n, e.outputType); - break; - case "omit": - Gd(n, e.outputType); - break; - } - } - r.addErrorMessage((n) => { - let i = [`Unknown field ${n.red(`\`${t.fieldName}\``)}`]; - return ( - t.parentKind !== "unknown" && - i.push(`for ${n.bold(t.parentKind)} statement`), - i.push(`on model ${n.bold(`\`${e.outputType.name}\``)}.`), - i.push(dt(n)), - i.join(" ") - ); - }); -} -function Nd(e, r) { - let t = da(e.selectionPath, r); - (t.parentKind !== "unknown" && t.field.value.markAsError(), - r.addErrorMessage( - (n) => - `Invalid value for selection field \`${n.red(t.fieldName)}\`: ${e.underlyingError}`, - )); -} -function Ld(e, r) { - let t = e.argumentPath[0], - n = r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - (n && (n.getField(t)?.markAsError(), Qd(n, e.arguments)), - r.addErrorMessage((i) => - ua( - i, - t, - e.arguments.map((o) => o.name), - ), - )); -} -function Fd(e, r) { - let [t, n] = Or(e.argumentPath), - i = r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - if (i) { - i.getDeepField(e.argumentPath)?.markAsError(); - let o = i.getDeepFieldValue(t)?.asObject(); - o && ma(o, e.inputType); - } - r.addErrorMessage((o) => - ua( - o, - n, - e.inputType.fields.map((s) => s.name), - ), - ); -} -function ua(e, r, t) { - let n = [`Unknown argument \`${e.red(r)}\`.`], - i = Jd(r, t); - return ( - i && n.push(`Did you mean \`${e.green(i)}\`?`), - t.length > 0 && n.push(dt(e)), - n.join(" ") - ); -} -function Md(e, r) { - let t; - r.addErrorMessage((l) => - t?.value instanceof Q && t.value.text === "null" - ? `Argument \`${l.green(o)}\` must not be ${l.red("null")}.` - : `Argument \`${l.green(o)}\` is missing.`, - ); - let n = r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - if (!n) return; - let [i, o] = Or(e.argumentPath), - s = new pt(), - a = n.getDeepFieldValue(i)?.asObject(); - if (a) { - if ( - ((t = a.getField(o)), - t && a.removeField(o), - e.inputTypes.length === 1 && e.inputTypes[0].kind === "object") - ) { - for (let l of e.inputTypes[0].fields) - s.addField(l.name, l.typeNames.join(" | ")); - a.addSuggestion(new le(o, s).makeRequired()); - } else { - let l = e.inputTypes.map(ca).join(" | "); - a.addSuggestion(new le(o, l).makeRequired()); - } - if (e.dependentArgumentPath) { - n.getDeepField(e.dependentArgumentPath)?.markAsError(); - let [, l] = Or(e.dependentArgumentPath); - r.addErrorMessage( - (u) => - `Argument \`${u.green(o)}\` is required because argument \`${u.green(l)}\` was provided.`, - ); - } - } -} -function ca(e) { - return e.kind === "list" ? `${ca(e.elementType)}[]` : e.name; -} -function $d(e, r) { - let t = e.argument.name, - n = r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - (n && n.getDeepFieldValue(e.argumentPath)?.markAsError(), - r.addErrorMessage((i) => { - let o = In( - "or", - e.argument.typeNames.map((s) => i.green(s)), - ); - return `Argument \`${i.bold(t)}\`: Invalid value provided. Expected ${o}, provided ${i.red(e.inferredType)}.`; - })); -} -function qd(e, r) { - let t = e.argument.name, - n = r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - (n && n.getDeepFieldValue(e.argumentPath)?.markAsError(), - r.addErrorMessage((i) => { - let o = [`Invalid value for argument \`${i.bold(t)}\``]; - if ( - (e.underlyingError && o.push(`: ${e.underlyingError}`), - o.push("."), - e.argument.typeNames.length > 0) - ) { - let s = In( - "or", - e.argument.typeNames.map((a) => i.green(a)), - ); - o.push(` Expected ${s}.`); - } - return o.join(""); - })); -} -function Vd(e, r) { - let t = e.argument.name, - n = r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(), - i; - if (n) { - let s = n.getDeepField(e.argumentPath)?.value; - (s?.markAsError(), s instanceof Q && (i = s.text)); - } - r.addErrorMessage((o) => { - let s = ["Unable to fit value"]; - return ( - i && s.push(o.red(i)), - s.push(`into a 64-bit signed integer for field \`${o.bold(t)}\``), - s.join(" ") - ); - }); -} -function jd(e, r) { - let t = e.argumentPath[e.argumentPath.length - 1], - n = r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - if (n) { - let i = n.getDeepFieldValue(e.argumentPath)?.asObject(); - i && ma(i, e.inputType); - } - r.addErrorMessage((i) => { - let o = [ - `Argument \`${i.bold(t)}\` of type ${i.bold(e.inputType.name)} needs`, - ]; - return ( - e.constraints.minFieldCount === 1 - ? e.constraints.requiredFields - ? o.push( - `${i.green("at least one of")} ${In( - "or", - e.constraints.requiredFields.map((s) => `\`${i.bold(s)}\``), - )} arguments.`, - ) - : o.push(`${i.green("at least one")} argument.`) - : o.push( - `${i.green(`at least ${e.constraints.minFieldCount}`)} arguments.`, - ), - o.push(dt(i)), - o.join(" ") - ); - }); -} -function Bd(e, r) { - let t = e.argumentPath[e.argumentPath.length - 1], - n = r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(), - i = []; - if (n) { - let o = n.getDeepFieldValue(e.argumentPath)?.asObject(); - o && (o.markAsError(), (i = Object.keys(o.getFields()))); - } - r.addErrorMessage((o) => { - let s = [ - `Argument \`${o.bold(t)}\` of type ${o.bold(e.inputType.name)} needs`, - ]; - return ( - e.constraints.minFieldCount === 1 && e.constraints.maxFieldCount == 1 - ? s.push(`${o.green("exactly one")} argument,`) - : e.constraints.maxFieldCount == 1 - ? s.push(`${o.green("at most one")} argument,`) - : s.push( - `${o.green(`at most ${e.constraints.maxFieldCount}`)} arguments,`, - ), - s.push( - `but you provided ${In( - "and", - i.map((a) => o.red(a)), - )}. Please choose`, - ), - e.constraints.maxFieldCount === 1 - ? s.push("one.") - : s.push(`${e.constraints.maxFieldCount}.`), - s.join(" ") - ); - }); -} -function pa(e, r) { - for (let t of r.fields) - e.hasField(t.name) || e.addSuggestion(new le(t.name, "true")); -} -function Ud(e, r) { - for (let t of r.fields) - t.isRelation && - !e.hasField(t.name) && - e.addSuggestion(new le(t.name, "true")); -} -function Gd(e, r) { - for (let t of r.fields) - !e.hasField(t.name) && - !t.isRelation && - e.addSuggestion(new le(t.name, "true")); -} -function Qd(e, r) { - for (let t of r) - e.hasField(t.name) || - e.addSuggestion(new le(t.name, t.typeNames.join(" | "))); -} -function da(e, r) { - let [t, n] = Or(e), - i = r.arguments.getDeepSubSelectionValue(t)?.asObject(); - if (!i) return { parentKind: "unknown", fieldName: n }; - let o = i.getFieldValue("select")?.asObject(), - s = i.getFieldValue("include")?.asObject(), - a = i.getFieldValue("omit")?.asObject(), - l = o?.getField(n); - return o && l - ? { parentKind: "select", parent: o, field: l, fieldName: n } - : ((l = s?.getField(n)), - s && l - ? { parentKind: "include", field: l, parent: s, fieldName: n } - : ((l = a?.getField(n)), - a && l - ? { parentKind: "omit", field: l, parent: a, fieldName: n } - : { parentKind: "unknown", fieldName: n })); -} -function ma(e, r) { - if (r.kind === "object") - for (let t of r.fields) - e.hasField(t.name) || - e.addSuggestion(new le(t.name, t.typeNames.join(" | "))); -} -function Or(e) { - let r = [...e], - t = r.pop(); - if (!t) throw new Error("unexpected empty path"); - return [r, t]; -} -function dt({ green: e, enabled: r }) { - return ( - "Available options are " + - (r ? `listed in ${e("green")}` : "marked with ?") + - "." - ); -} -function In(e, r) { - if (r.length === 1) return r[0]; - let t = [...r], - n = t.pop(); - return `${t.join(", ")} ${e} ${n}`; -} -var Wd = 3; -function Jd(e, r) { - let t = 1 / 0, - n; - for (let i of r) { - let o = (0, la.default)(e, i); - o > Wd || (o < t && ((t = o), (n = i))); - } - return n; -} -var mt = class { - modelName; - name; - typeName; - isList; - isEnum; - constructor(r, t, n, i, o) { - ((this.modelName = r), - (this.name = t), - (this.typeName = n), - (this.isList = i), - (this.isEnum = o)); - } - _toGraphQLInputType() { - let r = this.isList ? "List" : "", - t = this.isEnum ? "Enum" : ""; - return `${r}${t}${this.typeName}FieldRefInput<${this.modelName}>`; - } -}; -function kr(e) { - return e instanceof mt; -} -var Dn = Symbol(), - Yi = new WeakMap(), - Me = class { - constructor(r) { - r === Dn - ? Yi.set(this, `Prisma.${this._getName()}`) - : Yi.set( - this, - `new Prisma.${this._getNamespace()}.${this._getName()}()`, - ); - } - _getName() { - return this.constructor.name; - } - toString() { - return Yi.get(this); - } - }, - ft = class extends Me { - _getNamespace() { - return "NullTypes"; - } - }, - gt = class extends ft { - #e; - }; -zi(gt, "DbNull"); -var ht = class extends ft { - #e; -}; -zi(ht, "JsonNull"); -var yt = class extends ft { - #e; -}; -zi(yt, "AnyNull"); -var On = { - classes: { DbNull: gt, JsonNull: ht, AnyNull: yt }, - instances: { DbNull: new gt(Dn), JsonNull: new ht(Dn), AnyNull: new yt(Dn) }, -}; -function zi(e, r) { - Object.defineProperty(e, "name", { value: r, configurable: !0 }); -} -var fa = ": ", - kn = class { - constructor(r, t) { - this.name = r; - this.value = t; - } - hasError = !1; - markAsError() { - this.hasError = !0; - } - getPrintWidth() { - return this.name.length + this.value.getPrintWidth() + fa.length; - } - write(r) { - let t = new Pe(this.name); - (this.hasError && t.underline().setColor(r.context.colors.red), - r.write(t).write(fa).write(this.value)); - } - }; -var Zi = class { - arguments; - errorMessages = []; - constructor(r) { - this.arguments = r; - } - write(r) { - r.write(this.arguments); - } - addErrorMessage(r) { - this.errorMessages.push(r); - } - renderAllMessages(r) { - return this.errorMessages.map((t) => t(r)).join(` -`); - } -}; -function _r(e) { - return new Zi(ga(e)); -} -function ga(e) { - let r = new Dr(); - for (let [t, n] of Object.entries(e)) { - let i = new kn(t, ha(n)); - r.addField(i); - } - return r; -} -function ha(e) { - if (typeof e == "string") return new Q(JSON.stringify(e)); - if (typeof e == "number" || typeof e == "boolean") return new Q(String(e)); - if (typeof e == "bigint") return new Q(`${e}n`); - if (e === null) return new Q("null"); - if (e === void 0) return new Q("undefined"); - if (Sr(e)) return new Q(`new Prisma.Decimal("${e.toFixed()}")`); - if (e instanceof Uint8Array) - return Buffer.isBuffer(e) - ? new Q(`Buffer.alloc(${e.byteLength})`) - : new Q(`new Uint8Array(${e.byteLength})`); - if (e instanceof Date) { - let r = mn(e) ? e.toISOString() : "Invalid Date"; - return new Q(`new Date("${r}")`); - } - return e instanceof Me - ? new Q(`Prisma.${e._getName()}`) - : kr(e) - ? new Q(`prisma.${We(e.modelName)}.$fields.${e.name}`) - : Array.isArray(e) - ? Kd(e) - : typeof e == "object" - ? ga(e) - : new Q(Object.prototype.toString.call(e)); -} -function Kd(e) { - let r = new Ir(); - for (let t of e) r.addItem(ha(t)); - return r; -} -function _n(e, r) { - let t = r === "pretty" ? aa : Cn, - n = e.renderAllMessages(t), - i = new Ar(0, { colors: t }).write(e).toString(); - return { message: n, args: i }; -} -function Nn({ - args: e, - errors: r, - errorFormat: t, - callsite: n, - originalMethod: i, - clientVersion: o, - globalOmit: s, -}) { - let a = _r(e); - for (let p of r) Sn(p, a, s); - let { message: l, args: u } = _n(a, t), - c = Tn({ - message: l, - callsite: n, - originalMethod: i, - showColors: t === "pretty", - callArguments: u, - }); - throw new Z(c, { clientVersion: o }); -} -function Te(e) { - return e.replace(/^./, (r) => r.toLowerCase()); -} -function ba(e, r, t) { - let n = Te(t); - return !r.result || !(r.result.$allModels || r.result[n]) - ? e - : Hd({ - ...e, - ...ya(r.name, e, r.result.$allModels), - ...ya(r.name, e, r.result[n]), - }); -} -function Hd(e) { - let r = new we(), - t = (n, i) => - r.getOrCreate(n, () => - i.has(n) - ? [n] - : (i.add(n), e[n] ? e[n].needs.flatMap((o) => t(o, i)) : [n]), - ); - return pn(e, (n) => ({ ...n, needs: t(n.name, new Set()) })); -} -function ya(e, r, t) { - return t - ? pn(t, ({ needs: n, compute: i }, o) => ({ - name: o, - needs: n ? Object.keys(n).filter((s) => n[s]) : [], - compute: Yd(r, o, i), - })) - : {}; -} -function Yd(e, r, t) { - let n = e?.[r]?.compute; - return n ? (i) => t({ ...i, [r]: n(i) }) : t; -} -function Ea(e, r) { - if (!r) return e; - let t = { ...e }; - for (let n of Object.values(r)) - if (e[n.name]) for (let i of n.needs) t[i] = !0; - return t; -} -function wa(e, r) { - if (!r) return e; - let t = { ...e }; - for (let n of Object.values(r)) - if (!e[n.name]) for (let i of n.needs) delete t[i]; - return t; -} -var Ln = class { - constructor(r, t) { - this.extension = r; - this.previous = t; - } - computedFieldsCache = new we(); - modelExtensionsCache = new we(); - queryCallbacksCache = new we(); - clientExtensions = lt(() => - this.extension.client - ? { - ...this.previous?.getAllClientExtensions(), - ...this.extension.client, - } - : this.previous?.getAllClientExtensions(), - ); - batchCallbacks = lt(() => { - let r = this.previous?.getAllBatchQueryCallbacks() ?? [], - t = this.extension.query?.$__internalBatch; - return t ? r.concat(t) : r; - }); - getAllComputedFields(r) { - return this.computedFieldsCache.getOrCreate(r, () => - ba(this.previous?.getAllComputedFields(r), this.extension, r), - ); - } - getAllClientExtensions() { - return this.clientExtensions.get(); - } - getAllModelExtensions(r) { - return this.modelExtensionsCache.getOrCreate(r, () => { - let t = Te(r); - return !this.extension.model || - !(this.extension.model[t] || this.extension.model.$allModels) - ? this.previous?.getAllModelExtensions(r) - : { - ...this.previous?.getAllModelExtensions(r), - ...this.extension.model.$allModels, - ...this.extension.model[t], - }; - }); - } - getAllQueryCallbacks(r, t) { - return this.queryCallbacksCache.getOrCreate(`${r}:${t}`, () => { - let n = this.previous?.getAllQueryCallbacks(r, t) ?? [], - i = [], - o = this.extension.query; - return !o || !(o[r] || o.$allModels || o[t] || o.$allOperations) - ? n - : (o[r] !== void 0 && - (o[r][t] !== void 0 && i.push(o[r][t]), - o[r].$allOperations !== void 0 && i.push(o[r].$allOperations)), - r !== "$none" && - o.$allModels !== void 0 && - (o.$allModels[t] !== void 0 && i.push(o.$allModels[t]), - o.$allModels.$allOperations !== void 0 && - i.push(o.$allModels.$allOperations)), - o[t] !== void 0 && i.push(o[t]), - o.$allOperations !== void 0 && i.push(o.$allOperations), - n.concat(i)); - }); - } - getAllBatchQueryCallbacks() { - return this.batchCallbacks.get(); - } - }, - Nr = class e { - constructor(r) { - this.head = r; - } - static empty() { - return new e(); - } - static single(r) { - return new e(new Ln(r)); - } - isEmpty() { - return this.head === void 0; - } - append(r) { - return new e(new Ln(r, this.head)); - } - getAllComputedFields(r) { - return this.head?.getAllComputedFields(r); - } - getAllClientExtensions() { - return this.head?.getAllClientExtensions(); - } - getAllModelExtensions(r) { - return this.head?.getAllModelExtensions(r); - } - getAllQueryCallbacks(r, t) { - return this.head?.getAllQueryCallbacks(r, t) ?? []; - } - getAllBatchQueryCallbacks() { - return this.head?.getAllBatchQueryCallbacks() ?? []; - } - }; -var Fn = class { - constructor(r) { - this.name = r; - } -}; -function xa(e) { - return e instanceof Fn; -} -function va(e) { - return new Fn(e); -} -var Pa = Symbol(), - bt = class { - constructor(r) { - if (r !== Pa) - throw new Error("Skip instance can not be constructed directly"); - } - ifUndefined(r) { - return r === void 0 ? Mn : r; - } - }, - Mn = new bt(Pa); -function Se(e) { - return e instanceof bt; -} -var zd = { - findUnique: "findUnique", - findUniqueOrThrow: "findUniqueOrThrow", - findFirst: "findFirst", - findFirstOrThrow: "findFirstOrThrow", - findMany: "findMany", - count: "aggregate", - create: "createOne", - createMany: "createMany", - createManyAndReturn: "createManyAndReturn", - update: "updateOne", - updateMany: "updateMany", - updateManyAndReturn: "updateManyAndReturn", - upsert: "upsertOne", - delete: "deleteOne", - deleteMany: "deleteMany", - executeRaw: "executeRaw", - queryRaw: "queryRaw", - aggregate: "aggregate", - groupBy: "groupBy", - runCommandRaw: "runCommandRaw", - findRaw: "findRaw", - aggregateRaw: "aggregateRaw", - }, - Ta = "explicitly `undefined` values are not allowed"; -function $n({ - modelName: e, - action: r, - args: t, - runtimeDataModel: n, - extensions: i = Nr.empty(), - callsite: o, - clientMethod: s, - errorFormat: a, - clientVersion: l, - previewFeatures: u, - globalOmit: c, -}) { - let p = new Xi({ - runtimeDataModel: n, - modelName: e, - action: r, - rootArgs: t, - callsite: o, - extensions: i, - selectionPath: [], - argumentPath: [], - originalMethod: s, - errorFormat: a, - clientVersion: l, - previewFeatures: u, - globalOmit: c, - }); - return { modelName: e, action: zd[r], query: Et(t, p) }; -} -function Et({ select: e, include: r, ...t } = {}, n) { - let i = t.omit; - return (delete t.omit, { arguments: Ra(t, n), selection: Zd(e, r, i, n) }); -} -function Zd(e, r, t, n) { - return e - ? (r - ? n.throwValidationError({ - kind: "MutuallyExclusiveFields", - firstField: "include", - secondField: "select", - selectionPath: n.getSelectionPath(), - }) - : t && - n.throwValidationError({ - kind: "MutuallyExclusiveFields", - firstField: "omit", - secondField: "select", - selectionPath: n.getSelectionPath(), - }), - tm(e, n)) - : Xd(n, r, t); -} -function Xd(e, r, t) { - let n = {}; - return ( - e.modelOrType && - !e.isRawAction() && - ((n.$composites = !0), (n.$scalars = !0)), - r && em(n, r, e), - rm(n, t, e), - n - ); -} -function em(e, r, t) { - for (let [n, i] of Object.entries(r)) { - if (Se(i)) continue; - let o = t.nestSelection(n); - if ((eo(i, o), i === !1 || i === void 0)) { - e[n] = !1; - continue; - } - let s = t.findField(n); - if ( - (s && - s.kind !== "object" && - t.throwValidationError({ - kind: "IncludeOnScalar", - selectionPath: t.getSelectionPath().concat(n), - outputType: t.getOutputTypeDescription(), - }), - s) - ) { - e[n] = Et(i === !0 ? {} : i, o); - continue; - } - if (i === !0) { - e[n] = !0; - continue; - } - e[n] = Et(i, o); - } -} -function rm(e, r, t) { - let n = t.getComputedFields(), - i = { ...t.getGlobalOmit(), ...r }, - o = wa(i, n); - for (let [s, a] of Object.entries(o)) { - if (Se(a)) continue; - eo(a, t.nestSelection(s)); - let l = t.findField(s); - (n?.[s] && !l) || (e[s] = !a); - } -} -function tm(e, r) { - let t = {}, - n = r.getComputedFields(), - i = Ea(e, n); - for (let [o, s] of Object.entries(i)) { - if (Se(s)) continue; - let a = r.nestSelection(o); - eo(s, a); - let l = r.findField(o); - if (!(n?.[o] && !l)) { - if (s === !1 || s === void 0 || Se(s)) { - t[o] = !1; - continue; - } - if (s === !0) { - l?.kind === "object" ? (t[o] = Et({}, a)) : (t[o] = !0); - continue; - } - t[o] = Et(s, a); - } - } - return t; -} -function Sa(e, r) { - if (e === null) return null; - if (typeof e == "string" || typeof e == "number" || typeof e == "boolean") - return e; - if (typeof e == "bigint") return { $type: "BigInt", value: String(e) }; - if (vr(e)) { - if (mn(e)) return { $type: "DateTime", value: e.toISOString() }; - r.throwValidationError({ - kind: "InvalidArgumentValue", - selectionPath: r.getSelectionPath(), - argumentPath: r.getArgumentPath(), - argument: { name: r.getArgumentName(), typeNames: ["Date"] }, - underlyingError: "Provided Date object is invalid", - }); - } - if (xa(e)) return { $type: "Param", value: e.name }; - if (kr(e)) - return { - $type: "FieldRef", - value: { _ref: e.name, _container: e.modelName }, - }; - if (Array.isArray(e)) return nm(e, r); - if (ArrayBuffer.isView(e)) { - let { buffer: t, byteOffset: n, byteLength: i } = e; - return { $type: "Bytes", value: Buffer.from(t, n, i).toString("base64") }; - } - if (im(e)) return e.values; - if (Sr(e)) return { $type: "Decimal", value: e.toFixed() }; - if (e instanceof Me) { - if (e !== On.instances[e._getName()]) - throw new Error("Invalid ObjectEnumValue"); - return { $type: "Enum", value: e._getName() }; - } - if (om(e)) return e.toJSON(); - if (typeof e == "object") return Ra(e, r); - r.throwValidationError({ - kind: "InvalidArgumentValue", - selectionPath: r.getSelectionPath(), - argumentPath: r.getArgumentPath(), - argument: { name: r.getArgumentName(), typeNames: [] }, - underlyingError: `We could not serialize ${Object.prototype.toString.call(e)} value. Serialize the object to JSON or implement a ".toJSON()" method on it`, - }); -} -function Ra(e, r) { - if (e.$type) return { $type: "Raw", value: e }; - let t = {}; - for (let n in e) { - let i = e[n], - o = r.nestArgument(n); - Se(i) || - (i !== void 0 - ? (t[n] = Sa(i, o)) - : r.isPreviewFeatureOn("strictUndefinedChecks") && - r.throwValidationError({ - kind: "InvalidArgumentValue", - argumentPath: o.getArgumentPath(), - selectionPath: r.getSelectionPath(), - argument: { name: r.getArgumentName(), typeNames: [] }, - underlyingError: Ta, - })); - } - return t; -} -function nm(e, r) { - let t = []; - for (let n = 0; n < e.length; n++) { - let i = r.nestArgument(String(n)), - o = e[n]; - if (o === void 0 || Se(o)) { - let s = o === void 0 ? "undefined" : "Prisma.skip"; - r.throwValidationError({ - kind: "InvalidArgumentValue", - selectionPath: i.getSelectionPath(), - argumentPath: i.getArgumentPath(), - argument: { name: `${r.getArgumentName()}[${n}]`, typeNames: [] }, - underlyingError: `Can not use \`${s}\` value within array. Use \`null\` or filter out \`${s}\` values`, - }); - } - t.push(Sa(o, i)); - } - return t; -} -function im(e) { - return typeof e == "object" && e !== null && e.__prismaRawParameters__ === !0; -} -function om(e) { - return typeof e == "object" && e !== null && typeof e.toJSON == "function"; -} -function eo(e, r) { - e === void 0 && - r.isPreviewFeatureOn("strictUndefinedChecks") && - r.throwValidationError({ - kind: "InvalidSelectionValue", - selectionPath: r.getSelectionPath(), - underlyingError: Ta, - }); -} -var Xi = class e { - constructor(r) { - this.params = r; - this.params.modelName && - (this.modelOrType = - this.params.runtimeDataModel.models[this.params.modelName] ?? - this.params.runtimeDataModel.types[this.params.modelName]); - } - modelOrType; - throwValidationError(r) { - Nn({ - errors: [r], - originalMethod: this.params.originalMethod, - args: this.params.rootArgs ?? {}, - callsite: this.params.callsite, - errorFormat: this.params.errorFormat, - clientVersion: this.params.clientVersion, - globalOmit: this.params.globalOmit, - }); - } - getSelectionPath() { - return this.params.selectionPath; - } - getArgumentPath() { - return this.params.argumentPath; - } - getArgumentName() { - return this.params.argumentPath[this.params.argumentPath.length - 1]; - } - getOutputTypeDescription() { - if (!(!this.params.modelName || !this.modelOrType)) - return { - name: this.params.modelName, - fields: this.modelOrType.fields.map((r) => ({ - name: r.name, - typeName: "boolean", - isRelation: r.kind === "object", - })), - }; - } - isRawAction() { - return [ - "executeRaw", - "queryRaw", - "runCommandRaw", - "findRaw", - "aggregateRaw", - ].includes(this.params.action); - } - isPreviewFeatureOn(r) { - return this.params.previewFeatures.includes(r); - } - getComputedFields() { - if (this.params.modelName) - return this.params.extensions.getAllComputedFields(this.params.modelName); - } - findField(r) { - return this.modelOrType?.fields.find((t) => t.name === r); - } - nestSelection(r) { - let t = this.findField(r), - n = t?.kind === "object" ? t.type : void 0; - return new e({ - ...this.params, - modelName: n, - selectionPath: this.params.selectionPath.concat(r), - }); - } - getGlobalOmit() { - return this.params.modelName && this.shouldApplyGlobalOmit() - ? (this.params.globalOmit?.[We(this.params.modelName)] ?? {}) - : {}; - } - shouldApplyGlobalOmit() { - switch (this.params.action) { - case "findFirst": - case "findFirstOrThrow": - case "findUniqueOrThrow": - case "findMany": - case "upsert": - case "findUnique": - case "createManyAndReturn": - case "create": - case "update": - case "updateManyAndReturn": - case "delete": - return !0; - case "executeRaw": - case "aggregateRaw": - case "runCommandRaw": - case "findRaw": - case "createMany": - case "deleteMany": - case "groupBy": - case "updateMany": - case "count": - case "aggregate": - case "queryRaw": - return !1; - default: - ar(this.params.action, "Unknown action"); - } - } - nestArgument(r) { - return new e({ - ...this.params, - argumentPath: this.params.argumentPath.concat(r), - }); - } -}; -function Aa(e) { - if (!e._hasPreviewFlag("metrics")) - throw new Z( - "`metrics` preview feature must be enabled in order to access metrics API", - { clientVersion: e._clientVersion }, - ); -} -var Lr = class { - _client; - constructor(r) { - this._client = r; - } - prometheus(r) { - return ( - Aa(this._client), - this._client._engine.metrics({ format: "prometheus", ...r }) - ); - } - json(r) { - return ( - Aa(this._client), - this._client._engine.metrics({ format: "json", ...r }) - ); - } -}; -function Ca(e, r) { - let t = lt(() => sm(r)); - Object.defineProperty(e, "dmmf", { get: () => t.get() }); -} -function sm(e) { - return { - datamodel: { models: ro(e.models), enums: ro(e.enums), types: ro(e.types) }, - }; -} -function ro(e) { - return Object.entries(e).map(([r, t]) => ({ name: r, ...t })); -} -var to = new WeakMap(), - qn = "$$PrismaTypedSql", - wt = class { - constructor(r, t) { - (to.set(this, { sql: r, values: t }), - Object.defineProperty(this, qn, { value: qn })); - } - get sql() { - return to.get(this).sql; - } - get values() { - return to.get(this).values; - } - }; -function Ia(e) { - return (...r) => new wt(e, r); -} -function Vn(e) { - return e != null && e[qn] === qn; -} -var cu = O(Ti()); -var pu = require("node:async_hooks"), - du = require("node:events"), - mu = O(require("node:fs")), - ri = O(require("node:path")); -var ie = class e { - constructor(r, t) { - if (r.length - 1 !== t.length) - throw r.length === 0 - ? new TypeError("Expected at least 1 string") - : new TypeError( - `Expected ${r.length} strings to have ${r.length - 1} values`, - ); - let n = t.reduce((s, a) => s + (a instanceof e ? a.values.length : 1), 0); - ((this.values = new Array(n)), - (this.strings = new Array(n + 1)), - (this.strings[0] = r[0])); - let i = 0, - o = 0; - for (; i < t.length; ) { - let s = t[i++], - a = r[i]; - if (s instanceof e) { - this.strings[o] += s.strings[0]; - let l = 0; - for (; l < s.values.length; ) - ((this.values[o++] = s.values[l++]), - (this.strings[o] = s.strings[l])); - this.strings[o] += a; - } else ((this.values[o++] = s), (this.strings[o] = a)); - } - } - get sql() { - let r = this.strings.length, - t = 1, - n = this.strings[0]; - for (; t < r; ) n += `?${this.strings[t++]}`; - return n; - } - get statement() { - let r = this.strings.length, - t = 1, - n = this.strings[0]; - for (; t < r; ) n += `:${t}${this.strings[t++]}`; - return n; - } - get text() { - let r = this.strings.length, - t = 1, - n = this.strings[0]; - for (; t < r; ) n += `$${t}${this.strings[t++]}`; - return n; - } - inspect() { - return { - sql: this.sql, - statement: this.statement, - text: this.text, - values: this.values, - }; - } -}; -function Da(e, r = ",", t = "", n = "") { - if (e.length === 0) - throw new TypeError( - "Expected `join([])` to be called with an array of multiple elements, but got an empty array", - ); - return new ie([t, ...Array(e.length - 1).fill(r), n], e); -} -function no(e) { - return new ie([e], []); -} -var Oa = no(""); -function io(e, ...r) { - return new ie(e, r); -} -function xt(e) { - return { - getKeys() { - return Object.keys(e); - }, - getPropertyValue(r) { - return e[r]; - }, - }; -} -function re(e, r) { - return { - getKeys() { - return [e]; - }, - getPropertyValue() { - return r(); - }, - }; -} -function lr(e) { - let r = new we(); - return { - getKeys() { - return e.getKeys(); - }, - getPropertyValue(t) { - return r.getOrCreate(t, () => e.getPropertyValue(t)); - }, - getPropertyDescriptor(t) { - return e.getPropertyDescriptor?.(t); - }, - }; -} -var jn = { enumerable: !0, configurable: !0, writable: !0 }; -function Bn(e) { - let r = new Set(e); - return { - getPrototypeOf: () => Object.prototype, - getOwnPropertyDescriptor: () => jn, - has: (t, n) => r.has(n), - set: (t, n, i) => r.add(n) && Reflect.set(t, n, i), - ownKeys: () => [...r], - }; -} -var ka = Symbol.for("nodejs.util.inspect.custom"); -function he(e, r) { - let t = am(r), - n = new Set(), - i = new Proxy(e, { - get(o, s) { - if (n.has(s)) return o[s]; - let a = t.get(s); - return a ? a.getPropertyValue(s) : o[s]; - }, - has(o, s) { - if (n.has(s)) return !0; - let a = t.get(s); - return a ? (a.has?.(s) ?? !0) : Reflect.has(o, s); - }, - ownKeys(o) { - let s = _a(Reflect.ownKeys(o), t), - a = _a(Array.from(t.keys()), t); - return [...new Set([...s, ...a, ...n])]; - }, - set(o, s, a) { - return t.get(s)?.getPropertyDescriptor?.(s)?.writable === !1 - ? !1 - : (n.add(s), Reflect.set(o, s, a)); - }, - getOwnPropertyDescriptor(o, s) { - let a = Reflect.getOwnPropertyDescriptor(o, s); - if (a && !a.configurable) return a; - let l = t.get(s); - return l - ? l.getPropertyDescriptor - ? { ...jn, ...l?.getPropertyDescriptor(s) } - : jn - : a; - }, - defineProperty(o, s, a) { - return (n.add(s), Reflect.defineProperty(o, s, a)); - }, - getPrototypeOf: () => Object.prototype, - }); - return ( - (i[ka] = function () { - let o = { ...this }; - return (delete o[ka], o); - }), - i - ); -} -function am(e) { - let r = new Map(); - for (let t of e) { - let n = t.getKeys(); - for (let i of n) r.set(i, t); - } - return r; -} -function _a(e, r) { - return e.filter((t) => r.get(t)?.has?.(t) ?? !0); -} -function Fr(e) { - return { - getKeys() { - return e; - }, - has() { - return !1; - }, - getPropertyValue() {}, - }; -} -function Mr(e, r) { - return { - batch: e, - transaction: - r?.kind === "batch" - ? { isolationLevel: r.options.isolationLevel } - : void 0, - }; -} -function Na(e) { - if (e === void 0) return ""; - let r = _r(e); - return new Ar(0, { colors: Cn }).write(r).toString(); -} -var lm = "P2037"; -function $r({ error: e, user_facing_error: r }, t, n) { - return r.error_code - ? new z(um(r, n), { - code: r.error_code, - clientVersion: t, - meta: r.meta, - batchRequestIdx: r.batch_request_idx, - }) - : new V(e, { clientVersion: t, batchRequestIdx: r.batch_request_idx }); -} -function um(e, r) { - let t = e.message; - return ( - (r === "postgresql" || r === "postgres" || r === "mysql") && - e.error_code === lm && - (t += ` -Prisma Accelerate has built-in connection pooling to prevent such errors: https://pris.ly/client/error-accelerate`), - t - ); -} -var vt = ""; -function La(e) { - var r = e.split(` -`); - return r.reduce(function (t, n) { - var i = dm(n) || fm(n) || ym(n) || xm(n) || Em(n); - return (i && t.push(i), t); - }, []); -} -var cm = - /^\s*at (.*?) ?\(((?:file|https?|blob|chrome-extension|native|eval|webpack|rsc||\/|[a-z]:\\|\\\\).*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i, - pm = /\((\S*)(?::(\d+))(?::(\d+))\)/; -function dm(e) { - var r = cm.exec(e); - if (!r) return null; - var t = r[2] && r[2].indexOf("native") === 0, - n = r[2] && r[2].indexOf("eval") === 0, - i = pm.exec(r[2]); - return ( - n && i != null && ((r[2] = i[1]), (r[3] = i[2]), (r[4] = i[3])), - { - file: t ? null : r[2], - methodName: r[1] || vt, - arguments: t ? [r[2]] : [], - lineNumber: r[3] ? +r[3] : null, - column: r[4] ? +r[4] : null, - } - ); -} -var mm = - /^\s*at (?:((?:\[object object\])?.+) )?\(?((?:file|ms-appx|https?|webpack|rsc|blob):.*?):(\d+)(?::(\d+))?\)?\s*$/i; -function fm(e) { - var r = mm.exec(e); - return r - ? { - file: r[2], - methodName: r[1] || vt, - arguments: [], - lineNumber: +r[3], - column: r[4] ? +r[4] : null, - } - : null; -} -var gm = - /^\s*(.*?)(?:\((.*?)\))?(?:^|@)((?:file|https?|blob|chrome|webpack|rsc|resource|\[native).*?|[^@]*bundle)(?::(\d+))?(?::(\d+))?\s*$/i, - hm = /(\S+) line (\d+)(?: > eval line \d+)* > eval/i; -function ym(e) { - var r = gm.exec(e); - if (!r) return null; - var t = r[3] && r[3].indexOf(" > eval") > -1, - n = hm.exec(r[3]); - return ( - t && n != null && ((r[3] = n[1]), (r[4] = n[2]), (r[5] = null)), - { - file: r[3], - methodName: r[1] || vt, - arguments: r[2] ? r[2].split(",") : [], - lineNumber: r[4] ? +r[4] : null, - column: r[5] ? +r[5] : null, - } - ); -} -var bm = /^\s*(?:([^@]*)(?:\((.*?)\))?@)?(\S.*?):(\d+)(?::(\d+))?\s*$/i; -function Em(e) { - var r = bm.exec(e); - return r - ? { - file: r[3], - methodName: r[1] || vt, - arguments: [], - lineNumber: +r[4], - column: r[5] ? +r[5] : null, - } - : null; -} -var wm = - /^\s*at (?:((?:\[object object\])?[^\\/]+(?: \[as \S+\])?) )?\(?(.*?):(\d+)(?::(\d+))?\)?\s*$/i; -function xm(e) { - var r = wm.exec(e); - return r - ? { - file: r[2], - methodName: r[1] || vt, - arguments: [], - lineNumber: +r[3], - column: r[4] ? +r[4] : null, - } - : null; -} -var oo = class { - getLocation() { - return null; - } - }, - so = class { - _error; - constructor() { - this._error = new Error(); - } - getLocation() { - let r = this._error.stack; - if (!r) return null; - let n = La(r).find((i) => { - if (!i.file) return !1; - let o = Li(i.file); - return ( - o !== "" && - !o.includes("@prisma") && - !o.includes("/packages/client/src/runtime/") && - !o.endsWith("/runtime/binary.js") && - !o.endsWith("/runtime/library.js") && - !o.endsWith("/runtime/edge.js") && - !o.endsWith("/runtime/edge-esm.js") && - !o.startsWith("internal/") && - !i.methodName.includes("new ") && - !i.methodName.includes("getCallSite") && - !i.methodName.includes("Proxy.") && - i.methodName.split(".").length < 4 - ); - }); - return !n || !n.file - ? null - : { - fileName: n.file, - lineNumber: n.lineNumber, - columnNumber: n.column, - }; - } - }; -function Ze(e) { - return e === "minimal" - ? typeof $EnabledCallSite == "function" && e !== "minimal" - ? new $EnabledCallSite() - : new oo() - : new so(); -} -var Fa = { _avg: !0, _count: !0, _sum: !0, _min: !0, _max: !0 }; -function qr(e = {}) { - let r = Pm(e); - return Object.entries(r).reduce( - (n, [i, o]) => ( - Fa[i] !== void 0 ? (n.select[i] = { select: o }) : (n[i] = o), - n - ), - { select: {} }, - ); -} -function Pm(e = {}) { - return typeof e._count == "boolean" - ? { ...e, _count: { _all: e._count } } - : e; -} -function Un(e = {}) { - return (r) => (typeof e._count == "boolean" && (r._count = r._count._all), r); -} -function Ma(e, r) { - let t = Un(e); - return r({ action: "aggregate", unpacker: t, argsMapper: qr })(e); -} -function Tm(e = {}) { - let { select: r, ...t } = e; - return typeof r == "object" - ? qr({ ...t, _count: r }) - : qr({ ...t, _count: { _all: !0 } }); -} -function Sm(e = {}) { - return typeof e.select == "object" - ? (r) => Un(e)(r)._count - : (r) => Un(e)(r)._count._all; -} -function $a(e, r) { - return r({ action: "count", unpacker: Sm(e), argsMapper: Tm })(e); -} -function Rm(e = {}) { - let r = qr(e); - if (Array.isArray(r.by)) - for (let t of r.by) typeof t == "string" && (r.select[t] = !0); - else typeof r.by == "string" && (r.select[r.by] = !0); - return r; -} -function Am(e = {}) { - return (r) => ( - typeof e?._count == "boolean" && - r.forEach((t) => { - t._count = t._count._all; - }), - r - ); -} -function qa(e, r) { - return r({ action: "groupBy", unpacker: Am(e), argsMapper: Rm })(e); -} -function Va(e, r, t) { - if (r === "aggregate") return (n) => Ma(n, t); - if (r === "count") return (n) => $a(n, t); - if (r === "groupBy") return (n) => qa(n, t); -} -function ja(e, r) { - let t = r.fields.filter((i) => !i.relationName), - n = _s(t, "name"); - return new Proxy( - {}, - { - get(i, o) { - if (o in i || typeof o == "symbol") return i[o]; - let s = n[o]; - if (s) return new mt(e, o, s.type, s.isList, s.kind === "enum"); - }, - ...Bn(Object.keys(n)), - }, - ); -} -var Ba = (e) => (Array.isArray(e) ? e : e.split(".")), - ao = (e, r) => Ba(r).reduce((t, n) => t && t[n], e), - Ua = (e, r, t) => - Ba(r).reduceRight( - (n, i, o, s) => Object.assign({}, ao(e, s.slice(0, o)), { [i]: n }), - t, - ); -function Cm(e, r) { - return e === void 0 || r === void 0 ? [] : [...r, "select", e]; -} -function Im(e, r, t) { - return r === void 0 ? (e ?? {}) : Ua(r, t, e || !0); -} -function lo(e, r, t, n, i, o) { - let a = e._runtimeDataModel.models[r].fields.reduce( - (l, u) => ({ ...l, [u.name]: u }), - {}, - ); - return (l) => { - let u = Ze(e._errorFormat), - c = Cm(n, i), - p = Im(l, o, c), - d = t({ dataPath: c, callsite: u })(p), - f = Dm(e, r); - return new Proxy(d, { - get(h, g) { - if (!f.includes(g)) return h[g]; - let T = [a[g].type, t, g], - S = [c, p]; - return lo(e, ...T, ...S); - }, - ...Bn([...f, ...Object.getOwnPropertyNames(d)]), - }); - }; -} -function Dm(e, r) { - return e._runtimeDataModel.models[r].fields - .filter((t) => t.kind === "object") - .map((t) => t.name); -} -var Om = [ - "findUnique", - "findUniqueOrThrow", - "findFirst", - "findFirstOrThrow", - "create", - "update", - "upsert", - "delete", - ], - km = ["aggregate", "count", "groupBy"]; -function uo(e, r) { - let t = e._extensions.getAllModelExtensions(r) ?? {}, - n = [ - _m(e, r), - Lm(e, r), - xt(t), - re("name", () => r), - re("$name", () => r), - re("$parent", () => e._appliedParent), - ]; - return he({}, n); -} -function _m(e, r) { - let t = Te(r), - n = Object.keys(Rr).concat("count"); - return { - getKeys() { - return n; - }, - getPropertyValue(i) { - let o = i, - s = (a) => (l) => { - let u = Ze(e._errorFormat); - return e._createPrismaPromise( - (c) => { - let p = { - args: l, - dataPath: [], - action: o, - model: r, - clientMethod: `${t}.${i}`, - jsModelName: t, - transaction: c, - callsite: u, - }; - return e._request({ ...p, ...a }); - }, - { action: o, args: l, model: r }, - ); - }; - return Om.includes(o) ? lo(e, r, s) : Nm(i) ? Va(e, i, s) : s({}); - }, - }; -} -function Nm(e) { - return km.includes(e); -} -function Lm(e, r) { - return lr( - re("fields", () => { - let t = e._runtimeDataModel.models[r]; - return ja(r, t); - }), - ); -} -function Ga(e) { - return e.replace(/^./, (r) => r.toUpperCase()); -} -var co = Symbol(); -function Pt(e) { - let r = [ - Fm(e), - Mm(e), - re(co, () => e), - re("$parent", () => e._appliedParent), - ], - t = e._extensions.getAllClientExtensions(); - return (t && r.push(xt(t)), he(e, r)); -} -function Fm(e) { - let r = Object.getPrototypeOf(e._originalClient), - t = [...new Set(Object.getOwnPropertyNames(r))]; - return { - getKeys() { - return t; - }, - getPropertyValue(n) { - return e[n]; - }, - }; -} -function Mm(e) { - let r = Object.keys(e._runtimeDataModel.models), - t = r.map(Te), - n = [...new Set(r.concat(t))]; - return lr({ - getKeys() { - return n; - }, - getPropertyValue(i) { - let o = Ga(i); - if (e._runtimeDataModel.models[o] !== void 0) return uo(e, o); - if (e._runtimeDataModel.models[i] !== void 0) return uo(e, i); - }, - getPropertyDescriptor(i) { - if (!t.includes(i)) return { enumerable: !1 }; - }, - }); -} -function Qa(e) { - return e[co] ? e[co] : e; -} -function Wa(e) { - if (typeof e == "function") return e(this); - if (e.client?.__AccelerateEngine) { - let t = e.client.__AccelerateEngine; - this._originalClient._engine = new t( - this._originalClient._accelerateEngineConfig, - ); - } - let r = Object.create(this._originalClient, { - _extensions: { value: this._extensions.append(e) }, - _appliedParent: { value: this, configurable: !0 }, - $on: { value: void 0 }, - }); - return Pt(r); -} -function Ja({ result: e, modelName: r, select: t, omit: n, extensions: i }) { - let o = i.getAllComputedFields(r); - if (!o) return e; - let s = [], - a = []; - for (let l of Object.values(o)) { - if (n) { - if (n[l.name]) continue; - let u = l.needs.filter((c) => n[c]); - u.length > 0 && a.push(Fr(u)); - } else if (t) { - if (!t[l.name]) continue; - let u = l.needs.filter((c) => !t[c]); - u.length > 0 && a.push(Fr(u)); - } - $m(e, l.needs) && s.push(qm(l, he(e, s))); - } - return s.length > 0 || a.length > 0 ? he(e, [...s, ...a]) : e; -} -function $m(e, r) { - return r.every((t) => Vi(e, t)); -} -function qm(e, r) { - return lr(re(e.name, () => e.compute(r))); -} -function Gn({ - visitor: e, - result: r, - args: t, - runtimeDataModel: n, - modelName: i, -}) { - if (Array.isArray(r)) { - for (let s = 0; s < r.length; s++) - r[s] = Gn({ - result: r[s], - args: t, - modelName: i, - runtimeDataModel: n, - visitor: e, - }); - return r; - } - let o = e(r, i, t) ?? r; - return ( - t.include && - Ka({ - includeOrSelect: t.include, - result: o, - parentModelName: i, - runtimeDataModel: n, - visitor: e, - }), - t.select && - Ka({ - includeOrSelect: t.select, - result: o, - parentModelName: i, - runtimeDataModel: n, - visitor: e, - }), - o - ); -} -function Ka({ - includeOrSelect: e, - result: r, - parentModelName: t, - runtimeDataModel: n, - visitor: i, -}) { - for (let [o, s] of Object.entries(e)) { - if (!s || r[o] == null || Se(s)) continue; - let l = n.models[t].fields.find((c) => c.name === o); - if (!l || l.kind !== "object" || !l.relationName) continue; - let u = typeof s == "object" ? s : {}; - r[o] = Gn({ - visitor: i, - result: r[o], - args: u, - modelName: l.type, - runtimeDataModel: n, - }); - } -} -function Ha({ - result: e, - modelName: r, - args: t, - extensions: n, - runtimeDataModel: i, - globalOmit: o, -}) { - return n.isEmpty() || e == null || typeof e != "object" || !i.models[r] - ? e - : Gn({ - result: e, - args: t ?? {}, - modelName: r, - runtimeDataModel: i, - visitor: (a, l, u) => { - let c = Te(l); - return Ja({ - result: a, - modelName: c, - select: u.select, - omit: u.select ? void 0 : { ...o?.[c], ...u.omit }, - extensions: n, - }); - }, - }); -} -var Vm = ["$connect", "$disconnect", "$on", "$transaction", "$extends"], - Ya = Vm; -function za(e) { - if (e instanceof ie) return jm(e); - if (Vn(e)) return Bm(e); - if (Array.isArray(e)) { - let t = [e[0]]; - for (let n = 1; n < e.length; n++) t[n] = Tt(e[n]); - return t; - } - let r = {}; - for (let t in e) r[t] = Tt(e[t]); - return r; -} -function jm(e) { - return new ie(e.strings, e.values); -} -function Bm(e) { - return new wt(e.sql, e.values); -} -function Tt(e) { - if (typeof e != "object" || e == null || e instanceof Me || kr(e)) return e; - if (Sr(e)) return new Fe(e.toFixed()); - if (vr(e)) return new Date(+e); - if (ArrayBuffer.isView(e)) return e.slice(0); - if (Array.isArray(e)) { - let r = e.length, - t; - for (t = Array(r); r--; ) t[r] = Tt(e[r]); - return t; - } - if (typeof e == "object") { - let r = {}; - for (let t in e) - t === "__proto__" - ? Object.defineProperty(r, t, { - value: Tt(e[t]), - configurable: !0, - enumerable: !0, - writable: !0, - }) - : (r[t] = Tt(e[t])); - return r; - } - ar(e, "Unknown value"); -} -function Xa(e, r, t, n = 0) { - return e._createPrismaPromise((i) => { - let o = r.customDataProxyFetch; - return ( - "transaction" in r && - i !== void 0 && - (r.transaction?.kind === "batch" && r.transaction.lock.then(), - (r.transaction = i)), - n === t.length - ? e._executeRequest(r) - : t[n]({ - model: r.model, - operation: r.model ? r.action : r.clientMethod, - args: za(r.args ?? {}), - __internalParams: r, - query: (s, a = r) => { - let l = a.customDataProxyFetch; - return ( - (a.customDataProxyFetch = nl(o, l)), - (a.args = s), - Xa(e, a, t, n + 1) - ); - }, - }) - ); - }); -} -function el(e, r) { - let { jsModelName: t, action: n, clientMethod: i } = r, - o = t ? n : i; - if (e._extensions.isEmpty()) return e._executeRequest(r); - let s = e._extensions.getAllQueryCallbacks(t ?? "$none", o); - return Xa(e, r, s); -} -function rl(e) { - return (r) => { - let t = { requests: r }, - n = r[0].extensions.getAllBatchQueryCallbacks(); - return n.length ? tl(t, n, 0, e) : e(t); - }; -} -function tl(e, r, t, n) { - if (t === r.length) return n(e); - let i = e.customDataProxyFetch, - o = e.requests[0].transaction; - return r[t]({ - args: { - queries: e.requests.map((s) => ({ - model: s.modelName, - operation: s.action, - args: s.args, - })), - transaction: o - ? { isolationLevel: o.kind === "batch" ? o.isolationLevel : void 0 } - : void 0, - }, - __internalParams: e, - query(s, a = e) { - let l = a.customDataProxyFetch; - return ((a.customDataProxyFetch = nl(i, l)), tl(a, r, t + 1, n)); - }, - }); -} -var Za = (e) => e; -function nl(e = Za, r = Za) { - return (t) => e(r(t)); -} -var il = N("prisma:client"), - ol = { Vercel: "vercel", "Netlify CI": "netlify" }; -function sl({ postinstall: e, ciName: r, clientVersion: t, generator: n }) { - if ( - (il("checkPlatformCaching:postinstall", e), - il("checkPlatformCaching:ciName", r), - e === !0 && - !( - n?.output && typeof (n.output.fromEnvVar ?? n.output.value) == "string" - ) && - r && - r in ol) - ) { - let i = `Prisma has detected that this project was built on ${r}, which caches dependencies. This leads to an outdated Prisma Client because Prisma's auto-generation isn't triggered. To fix this, make sure to run the \`prisma generate\` command during the build process. + `;console.warn(`${Ie("warn(prisma)")} ${u}`)}}}}function Is(e){if(yp(e)){$i(`Environment variables loaded from ${e}`);let r=qi.default.config({path:e,debug:process.env.DOTENV_CONFIG_DEBUG?!0:void 0});return{dotenvResult:Cs(r),message:Ce(`Environment variables loaded from ${xr.default.relative(process.cwd(),e)}`),path:e}}else $i(`Environment variables not found at ${e}`);return null}function Ds(e,r){return e&&r&&xr.default.resolve(e)===xr.default.resolve(r)}function yp(e){return!!(e&&un.default.existsSync(e))}function Vi(e,r){return Object.prototype.hasOwnProperty.call(e,r)}function pn(e,r){let t={};for(let n of Object.keys(e))t[n]=r(e[n],n);return t}function ji(e,r){if(e.length===0)return;let t=e[0];for(let n=1;n{ks.has(e)||(ks.add(e),_i(r,...t))};var P=class e extends Error{clientVersion;errorCode;retryable;constructor(r,t,n){super(r),this.name="PrismaClientInitializationError",this.clientVersion=t,this.errorCode=n,Error.captureStackTrace(e)}get[Symbol.toStringTag](){return"PrismaClientInitializationError"}};x(P,"PrismaClientInitializationError");var z=class extends Error{code;meta;clientVersion;batchRequestIdx;constructor(r,{code:t,clientVersion:n,meta:i,batchRequestIdx:o}){super(r),this.name="PrismaClientKnownRequestError",this.code=t,this.clientVersion=n,this.meta=i,Object.defineProperty(this,"batchRequestIdx",{value:o,enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return"PrismaClientKnownRequestError"}};x(z,"PrismaClientKnownRequestError");var ae=class extends Error{clientVersion;constructor(r,t){super(r),this.name="PrismaClientRustPanicError",this.clientVersion=t}get[Symbol.toStringTag](){return"PrismaClientRustPanicError"}};x(ae,"PrismaClientRustPanicError");var V=class extends Error{clientVersion;batchRequestIdx;constructor(r,{clientVersion:t,batchRequestIdx:n}){super(r),this.name="PrismaClientUnknownRequestError",this.clientVersion=t,Object.defineProperty(this,"batchRequestIdx",{value:n,writable:!0,enumerable:!1})}get[Symbol.toStringTag](){return"PrismaClientUnknownRequestError"}};x(V,"PrismaClientUnknownRequestError");var Z=class extends Error{name="PrismaClientValidationError";clientVersion;constructor(r,{clientVersion:t}){super(r),this.clientVersion=t}get[Symbol.toStringTag](){return"PrismaClientValidationError"}};x(Z,"PrismaClientValidationError");var we=class{_map=new Map;get(r){return this._map.get(r)?.value}set(r,t){this._map.set(r,{value:t})}getOrCreate(r,t){let n=this._map.get(r);if(n)return n.value;let i=t();return this.set(r,i),i}};function We(e){return e.substring(0,1).toLowerCase()+e.substring(1)}function _s(e,r){let t={};for(let n of e){let i=n[r];t[i]=n}return t}function lt(e){let r;return{get(){return r||(r={value:e()}),r.value}}}function Ns(e){return{models:Bi(e.models),enums:Bi(e.enums),types:Bi(e.types)}}function Bi(e){let r={};for(let{name:t,...n}of e)r[t]=n;return r}function vr(e){return e instanceof Date||Object.prototype.toString.call(e)==="[object Date]"}function mn(e){return e.toString()!=="Invalid Date"}var Pr=9e15,Ye=1e9,Ui="0123456789abcdef",hn="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",yn="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",Gi={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-Pr,maxE:Pr,crypto:!1},$s,Ne,w=!0,En="[DecimalError] ",He=En+"Invalid argument: ",qs=En+"Precision limit exceeded",Vs=En+"crypto unavailable",js="[object Decimal]",X=Math.floor,U=Math.pow,bp=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,Ep=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,wp=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,Bs=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,fe=1e7,E=7,xp=9007199254740991,vp=hn.length-1,Qi=yn.length-1,m={toStringTag:js};m.absoluteValue=m.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),y(e)};m.ceil=function(){return y(new this.constructor(this),this.e+1,2)};m.clampedTo=m.clamp=function(e,r){var t,n=this,i=n.constructor;if(e=new i(e),r=new i(r),!e.s||!r.s)return new i(NaN);if(e.gt(r))throw Error(He+r);return t=n.cmp(e),t<0?e:n.cmp(r)>0?r:new i(n)};m.comparedTo=m.cmp=function(e){var r,t,n,i,o=this,s=o.d,a=(e=new o.constructor(e)).d,l=o.s,u=e.s;if(!s||!a)return!l||!u?NaN:l!==u?l:s===a?0:!s^l<0?1:-1;if(!s[0]||!a[0])return s[0]?l:a[0]?-u:0;if(l!==u)return l;if(o.e!==e.e)return o.e>e.e^l<0?1:-1;for(n=s.length,i=a.length,r=0,t=na[r]^l<0?1:-1;return n===i?0:n>i^l<0?1:-1};m.cosine=m.cos=function(){var e,r,t=this,n=t.constructor;return t.d?t.d[0]?(e=n.precision,r=n.rounding,n.precision=e+Math.max(t.e,t.sd())+E,n.rounding=1,t=Pp(n,Js(n,t)),n.precision=e,n.rounding=r,y(Ne==2||Ne==3?t.neg():t,e,r,!0)):new n(1):new n(NaN)};m.cubeRoot=m.cbrt=function(){var e,r,t,n,i,o,s,a,l,u,c=this,p=c.constructor;if(!c.isFinite()||c.isZero())return new p(c);for(w=!1,o=c.s*U(c.s*c,1/3),!o||Math.abs(o)==1/0?(t=J(c.d),e=c.e,(o=(e-t.length+1)%3)&&(t+=o==1||o==-2?"0":"00"),o=U(t,1/3),e=X((e+1)/3)-(e%3==(e<0?-1:2)),o==1/0?t="5e"+e:(t=o.toExponential(),t=t.slice(0,t.indexOf("e")+1)+e),n=new p(t),n.s=c.s):n=new p(o.toString()),s=(e=p.precision)+3;;)if(a=n,l=a.times(a).times(a),u=l.plus(c),n=L(u.plus(c).times(a),u.plus(l),s+2,1),J(a.d).slice(0,s)===(t=J(n.d)).slice(0,s))if(t=t.slice(s-3,s+1),t=="9999"||!i&&t=="4999"){if(!i&&(y(a,e+1,0),a.times(a).times(a).eq(c))){n=a;break}s+=4,i=1}else{(!+t||!+t.slice(1)&&t.charAt(0)=="5")&&(y(n,e+1,1),r=!n.times(n).times(n).eq(c));break}return w=!0,y(n,e,p.rounding,r)};m.decimalPlaces=m.dp=function(){var e,r=this.d,t=NaN;if(r){if(e=r.length-1,t=(e-X(this.e/E))*E,e=r[e],e)for(;e%10==0;e/=10)t--;t<0&&(t=0)}return t};m.dividedBy=m.div=function(e){return L(this,new this.constructor(e))};m.dividedToIntegerBy=m.divToInt=function(e){var r=this,t=r.constructor;return y(L(r,new t(e),0,1,1),t.precision,t.rounding)};m.equals=m.eq=function(e){return this.cmp(e)===0};m.floor=function(){return y(new this.constructor(this),this.e+1,3)};m.greaterThan=m.gt=function(e){return this.cmp(e)>0};m.greaterThanOrEqualTo=m.gte=function(e){var r=this.cmp(e);return r==1||r===0};m.hyperbolicCosine=m.cosh=function(){var e,r,t,n,i,o=this,s=o.constructor,a=new s(1);if(!o.isFinite())return new s(o.s?1/0:NaN);if(o.isZero())return a;t=s.precision,n=s.rounding,s.precision=t+Math.max(o.e,o.sd())+4,s.rounding=1,i=o.d.length,i<32?(e=Math.ceil(i/3),r=(1/xn(4,e)).toString()):(e=16,r="2.3283064365386962890625e-10"),o=Tr(s,1,o.times(r),new s(1),!0);for(var l,u=e,c=new s(8);u--;)l=o.times(o),o=a.minus(l.times(c.minus(l.times(c))));return y(o,s.precision=t,s.rounding=n,!0)};m.hyperbolicSine=m.sinh=function(){var e,r,t,n,i=this,o=i.constructor;if(!i.isFinite()||i.isZero())return new o(i);if(r=o.precision,t=o.rounding,o.precision=r+Math.max(i.e,i.sd())+4,o.rounding=1,n=i.d.length,n<3)i=Tr(o,2,i,i,!0);else{e=1.4*Math.sqrt(n),e=e>16?16:e|0,i=i.times(1/xn(5,e)),i=Tr(o,2,i,i,!0);for(var s,a=new o(5),l=new o(16),u=new o(20);e--;)s=i.times(i),i=i.times(a.plus(s.times(l.times(s).plus(u))))}return o.precision=r,o.rounding=t,y(i,r,t,!0)};m.hyperbolicTangent=m.tanh=function(){var e,r,t=this,n=t.constructor;return t.isFinite()?t.isZero()?new n(t):(e=n.precision,r=n.rounding,n.precision=e+7,n.rounding=1,L(t.sinh(),t.cosh(),n.precision=e,n.rounding=r)):new n(t.s)};m.inverseCosine=m.acos=function(){var e=this,r=e.constructor,t=e.abs().cmp(1),n=r.precision,i=r.rounding;return t!==-1?t===0?e.isNeg()?xe(r,n,i):new r(0):new r(NaN):e.isZero()?xe(r,n+4,i).times(.5):(r.precision=n+6,r.rounding=1,e=new r(1).minus(e).div(e.plus(1)).sqrt().atan(),r.precision=n,r.rounding=i,e.times(2))};m.inverseHyperbolicCosine=m.acosh=function(){var e,r,t=this,n=t.constructor;return t.lte(1)?new n(t.eq(1)?0:NaN):t.isFinite()?(e=n.precision,r=n.rounding,n.precision=e+Math.max(Math.abs(t.e),t.sd())+4,n.rounding=1,w=!1,t=t.times(t).minus(1).sqrt().plus(t),w=!0,n.precision=e,n.rounding=r,t.ln()):new n(t)};m.inverseHyperbolicSine=m.asinh=function(){var e,r,t=this,n=t.constructor;return!t.isFinite()||t.isZero()?new n(t):(e=n.precision,r=n.rounding,n.precision=e+2*Math.max(Math.abs(t.e),t.sd())+6,n.rounding=1,w=!1,t=t.times(t).plus(1).sqrt().plus(t),w=!0,n.precision=e,n.rounding=r,t.ln())};m.inverseHyperbolicTangent=m.atanh=function(){var e,r,t,n,i=this,o=i.constructor;return i.isFinite()?i.e>=0?new o(i.abs().eq(1)?i.s/0:i.isZero()?i:NaN):(e=o.precision,r=o.rounding,n=i.sd(),Math.max(n,e)<2*-i.e-1?y(new o(i),e,r,!0):(o.precision=t=n-i.e,i=L(i.plus(1),new o(1).minus(i),t+e,1),o.precision=e+4,o.rounding=1,i=i.ln(),o.precision=e,o.rounding=r,i.times(.5))):new o(NaN)};m.inverseSine=m.asin=function(){var e,r,t,n,i=this,o=i.constructor;return i.isZero()?new o(i):(r=i.abs().cmp(1),t=o.precision,n=o.rounding,r!==-1?r===0?(e=xe(o,t+4,n).times(.5),e.s=i.s,e):new o(NaN):(o.precision=t+6,o.rounding=1,i=i.div(new o(1).minus(i.times(i)).sqrt().plus(1)).atan(),o.precision=t,o.rounding=n,i.times(2)))};m.inverseTangent=m.atan=function(){var e,r,t,n,i,o,s,a,l,u=this,c=u.constructor,p=c.precision,d=c.rounding;if(u.isFinite()){if(u.isZero())return new c(u);if(u.abs().eq(1)&&p+4<=Qi)return s=xe(c,p+4,d).times(.25),s.s=u.s,s}else{if(!u.s)return new c(NaN);if(p+4<=Qi)return s=xe(c,p+4,d).times(.5),s.s=u.s,s}for(c.precision=a=p+10,c.rounding=1,t=Math.min(28,a/E+2|0),e=t;e;--e)u=u.div(u.times(u).plus(1).sqrt().plus(1));for(w=!1,r=Math.ceil(a/E),n=1,l=u.times(u),s=new c(u),i=u;e!==-1;)if(i=i.times(l),o=s.minus(i.div(n+=2)),i=i.times(l),s=o.plus(i.div(n+=2)),s.d[r]!==void 0)for(e=r;s.d[e]===o.d[e]&&e--;);return t&&(s=s.times(2<this.d.length-2};m.isNaN=function(){return!this.s};m.isNegative=m.isNeg=function(){return this.s<0};m.isPositive=m.isPos=function(){return this.s>0};m.isZero=function(){return!!this.d&&this.d[0]===0};m.lessThan=m.lt=function(e){return this.cmp(e)<0};m.lessThanOrEqualTo=m.lte=function(e){return this.cmp(e)<1};m.logarithm=m.log=function(e){var r,t,n,i,o,s,a,l,u=this,c=u.constructor,p=c.precision,d=c.rounding,f=5;if(e==null)e=new c(10),r=!0;else{if(e=new c(e),t=e.d,e.s<0||!t||!t[0]||e.eq(1))return new c(NaN);r=e.eq(10)}if(t=u.d,u.s<0||!t||!t[0]||u.eq(1))return new c(t&&!t[0]?-1/0:u.s!=1?NaN:t?0:1/0);if(r)if(t.length>1)o=!0;else{for(i=t[0];i%10===0;)i/=10;o=i!==1}if(w=!1,a=p+f,s=Ke(u,a),n=r?bn(c,a+10):Ke(e,a),l=L(s,n,a,1),ut(l.d,i=p,d))do if(a+=10,s=Ke(u,a),n=r?bn(c,a+10):Ke(e,a),l=L(s,n,a,1),!o){+J(l.d).slice(i+1,i+15)+1==1e14&&(l=y(l,p+1,0));break}while(ut(l.d,i+=10,d));return w=!0,y(l,p,d)};m.minus=m.sub=function(e){var r,t,n,i,o,s,a,l,u,c,p,d,f=this,h=f.constructor;if(e=new h(e),!f.d||!e.d)return!f.s||!e.s?e=new h(NaN):f.d?e.s=-e.s:e=new h(e.d||f.s!==e.s?f:NaN),e;if(f.s!=e.s)return e.s=-e.s,f.plus(e);if(u=f.d,d=e.d,a=h.precision,l=h.rounding,!u[0]||!d[0]){if(d[0])e.s=-e.s;else if(u[0])e=new h(f);else return new h(l===3?-0:0);return w?y(e,a,l):e}if(t=X(e.e/E),c=X(f.e/E),u=u.slice(),o=c-t,o){for(p=o<0,p?(r=u,o=-o,s=d.length):(r=d,t=c,s=u.length),n=Math.max(Math.ceil(a/E),s)+2,o>n&&(o=n,r.length=1),r.reverse(),n=o;n--;)r.push(0);r.reverse()}else{for(n=u.length,s=d.length,p=n0;--n)u[s++]=0;for(n=d.length;n>o;){if(u[--n]s?o+1:s+1,i>s&&(i=s,t.length=1),t.reverse();i--;)t.push(0);t.reverse()}for(s=u.length,i=c.length,s-i<0&&(i=s,t=c,c=u,u=t),r=0;i;)r=(u[--i]=u[i]+c[i]+r)/fe|0,u[i]%=fe;for(r&&(u.unshift(r),++n),s=u.length;u[--s]==0;)u.pop();return e.d=u,e.e=wn(u,n),w?y(e,a,l):e};m.precision=m.sd=function(e){var r,t=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(He+e);return t.d?(r=Us(t.d),e&&t.e+1>r&&(r=t.e+1)):r=NaN,r};m.round=function(){var e=this,r=e.constructor;return y(new r(e),e.e+1,r.rounding)};m.sine=m.sin=function(){var e,r,t=this,n=t.constructor;return t.isFinite()?t.isZero()?new n(t):(e=n.precision,r=n.rounding,n.precision=e+Math.max(t.e,t.sd())+E,n.rounding=1,t=Sp(n,Js(n,t)),n.precision=e,n.rounding=r,y(Ne>2?t.neg():t,e,r,!0)):new n(NaN)};m.squareRoot=m.sqrt=function(){var e,r,t,n,i,o,s=this,a=s.d,l=s.e,u=s.s,c=s.constructor;if(u!==1||!a||!a[0])return new c(!u||u<0&&(!a||a[0])?NaN:a?s:1/0);for(w=!1,u=Math.sqrt(+s),u==0||u==1/0?(r=J(a),(r.length+l)%2==0&&(r+="0"),u=Math.sqrt(r),l=X((l+1)/2)-(l<0||l%2),u==1/0?r="5e"+l:(r=u.toExponential(),r=r.slice(0,r.indexOf("e")+1)+l),n=new c(r)):n=new c(u.toString()),t=(l=c.precision)+3;;)if(o=n,n=o.plus(L(s,o,t+2,1)).times(.5),J(o.d).slice(0,t)===(r=J(n.d)).slice(0,t))if(r=r.slice(t-3,t+1),r=="9999"||!i&&r=="4999"){if(!i&&(y(o,l+1,0),o.times(o).eq(s))){n=o;break}t+=4,i=1}else{(!+r||!+r.slice(1)&&r.charAt(0)=="5")&&(y(n,l+1,1),e=!n.times(n).eq(s));break}return w=!0,y(n,l,c.rounding,e)};m.tangent=m.tan=function(){var e,r,t=this,n=t.constructor;return t.isFinite()?t.isZero()?new n(t):(e=n.precision,r=n.rounding,n.precision=e+10,n.rounding=1,t=t.sin(),t.s=1,t=L(t,new n(1).minus(t.times(t)).sqrt(),e+10,0),n.precision=e,n.rounding=r,y(Ne==2||Ne==4?t.neg():t,e,r,!0)):new n(NaN)};m.times=m.mul=function(e){var r,t,n,i,o,s,a,l,u,c=this,p=c.constructor,d=c.d,f=(e=new p(e)).d;if(e.s*=c.s,!d||!d[0]||!f||!f[0])return new p(!e.s||d&&!d[0]&&!f||f&&!f[0]&&!d?NaN:!d||!f?e.s/0:e.s*0);for(t=X(c.e/E)+X(e.e/E),l=d.length,u=f.length,l=0;){for(r=0,i=l+n;i>n;)a=o[i]+f[n]*d[i-n-1]+r,o[i--]=a%fe|0,r=a/fe|0;o[i]=(o[i]+r)%fe|0}for(;!o[--s];)o.pop();return r?++t:o.shift(),e.d=o,e.e=wn(o,t),w?y(e,p.precision,p.rounding):e};m.toBinary=function(e,r){return Ji(this,2,e,r)};m.toDecimalPlaces=m.toDP=function(e,r){var t=this,n=t.constructor;return t=new n(t),e===void 0?t:(ne(e,0,Ye),r===void 0?r=n.rounding:ne(r,0,8),y(t,e+t.e+1,r))};m.toExponential=function(e,r){var t,n=this,i=n.constructor;return e===void 0?t=ve(n,!0):(ne(e,0,Ye),r===void 0?r=i.rounding:ne(r,0,8),n=y(new i(n),e+1,r),t=ve(n,!0,e+1)),n.isNeg()&&!n.isZero()?"-"+t:t};m.toFixed=function(e,r){var t,n,i=this,o=i.constructor;return e===void 0?t=ve(i):(ne(e,0,Ye),r===void 0?r=o.rounding:ne(r,0,8),n=y(new o(i),e+i.e+1,r),t=ve(n,!1,e+n.e+1)),i.isNeg()&&!i.isZero()?"-"+t:t};m.toFraction=function(e){var r,t,n,i,o,s,a,l,u,c,p,d,f=this,h=f.d,g=f.constructor;if(!h)return new g(f);if(u=t=new g(1),n=l=new g(0),r=new g(n),o=r.e=Us(h)-f.e-1,s=o%E,r.d[0]=U(10,s<0?E+s:s),e==null)e=o>0?r:u;else{if(a=new g(e),!a.isInt()||a.lt(u))throw Error(He+a);e=a.gt(r)?o>0?r:u:a}for(w=!1,a=new g(J(h)),c=g.precision,g.precision=o=h.length*E*2;p=L(a,r,0,1,1),i=t.plus(p.times(n)),i.cmp(e)!=1;)t=n,n=i,i=u,u=l.plus(p.times(i)),l=i,i=r,r=a.minus(p.times(i)),a=i;return i=L(e.minus(t),n,0,1,1),l=l.plus(i.times(u)),t=t.plus(i.times(n)),l.s=u.s=f.s,d=L(u,n,o,1).minus(f).abs().cmp(L(l,t,o,1).minus(f).abs())<1?[u,n]:[l,t],g.precision=c,w=!0,d};m.toHexadecimal=m.toHex=function(e,r){return Ji(this,16,e,r)};m.toNearest=function(e,r){var t=this,n=t.constructor;if(t=new n(t),e==null){if(!t.d)return t;e=new n(1),r=n.rounding}else{if(e=new n(e),r===void 0?r=n.rounding:ne(r,0,8),!t.d)return e.s?t:e;if(!e.d)return e.s&&(e.s=t.s),e}return e.d[0]?(w=!1,t=L(t,e,0,r,1).times(e),w=!0,y(t)):(e.s=t.s,t=e),t};m.toNumber=function(){return+this};m.toOctal=function(e,r){return Ji(this,8,e,r)};m.toPower=m.pow=function(e){var r,t,n,i,o,s,a=this,l=a.constructor,u=+(e=new l(e));if(!a.d||!e.d||!a.d[0]||!e.d[0])return new l(U(+a,u));if(a=new l(a),a.eq(1))return a;if(n=l.precision,o=l.rounding,e.eq(1))return y(a,n,o);if(r=X(e.e/E),r>=e.d.length-1&&(t=u<0?-u:u)<=xp)return i=Gs(l,a,t,n),e.s<0?new l(1).div(i):y(i,n,o);if(s=a.s,s<0){if(rl.maxE+1||r0?s/0:0):(w=!1,l.rounding=a.s=1,t=Math.min(12,(r+"").length),i=Wi(e.times(Ke(a,n+t)),n),i.d&&(i=y(i,n+5,1),ut(i.d,n,o)&&(r=n+10,i=y(Wi(e.times(Ke(a,r+t)),r),r+5,1),+J(i.d).slice(n+1,n+15)+1==1e14&&(i=y(i,n+1,0)))),i.s=s,w=!0,l.rounding=o,y(i,n,o))};m.toPrecision=function(e,r){var t,n=this,i=n.constructor;return e===void 0?t=ve(n,n.e<=i.toExpNeg||n.e>=i.toExpPos):(ne(e,1,Ye),r===void 0?r=i.rounding:ne(r,0,8),n=y(new i(n),e,r),t=ve(n,e<=n.e||n.e<=i.toExpNeg,e)),n.isNeg()&&!n.isZero()?"-"+t:t};m.toSignificantDigits=m.toSD=function(e,r){var t=this,n=t.constructor;return e===void 0?(e=n.precision,r=n.rounding):(ne(e,1,Ye),r===void 0?r=n.rounding:ne(r,0,8)),y(new n(t),e,r)};m.toString=function(){var e=this,r=e.constructor,t=ve(e,e.e<=r.toExpNeg||e.e>=r.toExpPos);return e.isNeg()&&!e.isZero()?"-"+t:t};m.truncated=m.trunc=function(){return y(new this.constructor(this),this.e+1,1)};m.valueOf=m.toJSON=function(){var e=this,r=e.constructor,t=ve(e,e.e<=r.toExpNeg||e.e>=r.toExpPos);return e.isNeg()?"-"+t:t};function J(e){var r,t,n,i=e.length-1,o="",s=e[0];if(i>0){for(o+=s,r=1;rt)throw Error(He+e)}function ut(e,r,t,n){var i,o,s,a;for(o=e[0];o>=10;o/=10)--r;return--r<0?(r+=E,i=0):(i=Math.ceil((r+1)/E),r%=E),o=U(10,E-r),a=e[i]%o|0,n==null?r<3?(r==0?a=a/100|0:r==1&&(a=a/10|0),s=t<4&&a==99999||t>3&&a==49999||a==5e4||a==0):s=(t<4&&a+1==o||t>3&&a+1==o/2)&&(e[i+1]/o/100|0)==U(10,r-2)-1||(a==o/2||a==0)&&(e[i+1]/o/100|0)==0:r<4?(r==0?a=a/1e3|0:r==1?a=a/100|0:r==2&&(a=a/10|0),s=(n||t<4)&&a==9999||!n&&t>3&&a==4999):s=((n||t<4)&&a+1==o||!n&&t>3&&a+1==o/2)&&(e[i+1]/o/1e3|0)==U(10,r-3)-1,s}function fn(e,r,t){for(var n,i=[0],o,s=0,a=e.length;st-1&&(i[n+1]===void 0&&(i[n+1]=0),i[n+1]+=i[n]/t|0,i[n]%=t)}return i.reverse()}function Pp(e,r){var t,n,i;if(r.isZero())return r;n=r.d.length,n<32?(t=Math.ceil(n/3),i=(1/xn(4,t)).toString()):(t=16,i="2.3283064365386962890625e-10"),e.precision+=t,r=Tr(e,1,r.times(i),new e(1));for(var o=t;o--;){var s=r.times(r);r=s.times(s).minus(s).times(8).plus(1)}return e.precision-=t,r}var L=function(){function e(n,i,o){var s,a=0,l=n.length;for(n=n.slice();l--;)s=n[l]*i+a,n[l]=s%o|0,a=s/o|0;return a&&n.unshift(a),n}function r(n,i,o,s){var a,l;if(o!=s)l=o>s?1:-1;else for(a=l=0;ai[a]?1:-1;break}return l}function t(n,i,o,s){for(var a=0;o--;)n[o]-=a,a=n[o]1;)n.shift()}return function(n,i,o,s,a,l){var u,c,p,d,f,h,g,I,T,S,b,D,me,se,Kr,j,te,Ae,K,fr,Vt=n.constructor,ti=n.s==i.s?1:-1,H=n.d,k=i.d;if(!H||!H[0]||!k||!k[0])return new Vt(!n.s||!i.s||(H?k&&H[0]==k[0]:!k)?NaN:H&&H[0]==0||!k?ti*0:ti/0);for(l?(f=1,c=n.e-i.e):(l=fe,f=E,c=X(n.e/f)-X(i.e/f)),K=k.length,te=H.length,T=new Vt(ti),S=T.d=[],p=0;k[p]==(H[p]||0);p++);if(k[p]>(H[p]||0)&&c--,o==null?(se=o=Vt.precision,s=Vt.rounding):a?se=o+(n.e-i.e)+1:se=o,se<0)S.push(1),h=!0;else{if(se=se/f+2|0,p=0,K==1){for(d=0,k=k[0],se++;(p1&&(k=e(k,d,l),H=e(H,d,l),K=k.length,te=H.length),j=K,b=H.slice(0,K),D=b.length;D=l/2&&++Ae;do d=0,u=r(k,b,K,D),u<0?(me=b[0],K!=D&&(me=me*l+(b[1]||0)),d=me/Ae|0,d>1?(d>=l&&(d=l-1),g=e(k,d,l),I=g.length,D=b.length,u=r(g,b,I,D),u==1&&(d--,t(g,K=10;d/=10)p++;T.e=p+c*f-1,y(T,a?o+T.e+1:o,s,h)}return T}}();function y(e,r,t,n){var i,o,s,a,l,u,c,p,d,f=e.constructor;e:if(r!=null){if(p=e.d,!p)return e;for(i=1,a=p[0];a>=10;a/=10)i++;if(o=r-i,o<0)o+=E,s=r,c=p[d=0],l=c/U(10,i-s-1)%10|0;else if(d=Math.ceil((o+1)/E),a=p.length,d>=a)if(n){for(;a++<=d;)p.push(0);c=l=0,i=1,o%=E,s=o-E+1}else break e;else{for(c=a=p[d],i=1;a>=10;a/=10)i++;o%=E,s=o-E+i,l=s<0?0:c/U(10,i-s-1)%10|0}if(n=n||r<0||p[d+1]!==void 0||(s<0?c:c%U(10,i-s-1)),u=t<4?(l||n)&&(t==0||t==(e.s<0?3:2)):l>5||l==5&&(t==4||n||t==6&&(o>0?s>0?c/U(10,i-s):0:p[d-1])%10&1||t==(e.s<0?8:7)),r<1||!p[0])return p.length=0,u?(r-=e.e+1,p[0]=U(10,(E-r%E)%E),e.e=-r||0):p[0]=e.e=0,e;if(o==0?(p.length=d,a=1,d--):(p.length=d+1,a=U(10,E-o),p[d]=s>0?(c/U(10,i-s)%U(10,s)|0)*a:0),u)for(;;)if(d==0){for(o=1,s=p[0];s>=10;s/=10)o++;for(s=p[0]+=a,a=1;s>=10;s/=10)a++;o!=a&&(e.e++,p[0]==fe&&(p[0]=1));break}else{if(p[d]+=a,p[d]!=fe)break;p[d--]=0,a=1}for(o=p.length;p[--o]===0;)p.pop()}return w&&(e.e>f.maxE?(e.d=null,e.e=NaN):e.e0?o=o.charAt(0)+"."+o.slice(1)+Je(n):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(e.e<0?"e":"e+")+e.e):i<0?(o="0."+Je(-i-1)+o,t&&(n=t-s)>0&&(o+=Je(n))):i>=s?(o+=Je(i+1-s),t&&(n=t-i-1)>0&&(o=o+"."+Je(n))):((n=i+1)0&&(i+1===s&&(o+="."),o+=Je(n))),o}function wn(e,r){var t=e[0];for(r*=E;t>=10;t/=10)r++;return r}function bn(e,r,t){if(r>vp)throw w=!0,t&&(e.precision=t),Error(qs);return y(new e(hn),r,1,!0)}function xe(e,r,t){if(r>Qi)throw Error(qs);return y(new e(yn),r,t,!0)}function Us(e){var r=e.length-1,t=r*E+1;if(r=e[r],r){for(;r%10==0;r/=10)t--;for(r=e[0];r>=10;r/=10)t++}return t}function Je(e){for(var r="";e--;)r+="0";return r}function Gs(e,r,t,n){var i,o=new e(1),s=Math.ceil(n/E+4);for(w=!1;;){if(t%2&&(o=o.times(r),Fs(o.d,s)&&(i=!0)),t=X(t/2),t===0){t=o.d.length-1,i&&o.d[t]===0&&++o.d[t];break}r=r.times(r),Fs(r.d,s)}return w=!0,o}function Ls(e){return e.d[e.d.length-1]&1}function Qs(e,r,t){for(var n,i,o=new e(r[0]),s=0;++s17)return new d(e.d?e.d[0]?e.s<0?0:1/0:1:e.s?e.s<0?0:e:NaN);for(r==null?(w=!1,l=h):l=r,a=new d(.03125);e.e>-2;)e=e.times(a),p+=5;for(n=Math.log(U(2,p))/Math.LN10*2+5|0,l+=n,t=o=s=new d(1),d.precision=l;;){if(o=y(o.times(e),l,1),t=t.times(++c),a=s.plus(L(o,t,l,1)),J(a.d).slice(0,l)===J(s.d).slice(0,l)){for(i=p;i--;)s=y(s.times(s),l,1);if(r==null)if(u<3&&ut(s.d,l-n,f,u))d.precision=l+=10,t=o=a=new d(1),c=0,u++;else return y(s,d.precision=h,f,w=!0);else return d.precision=h,s}s=a}}function Ke(e,r){var t,n,i,o,s,a,l,u,c,p,d,f=1,h=10,g=e,I=g.d,T=g.constructor,S=T.rounding,b=T.precision;if(g.s<0||!I||!I[0]||!g.e&&I[0]==1&&I.length==1)return new T(I&&!I[0]?-1/0:g.s!=1?NaN:I?0:g);if(r==null?(w=!1,c=b):c=r,T.precision=c+=h,t=J(I),n=t.charAt(0),Math.abs(o=g.e)<15e14){for(;n<7&&n!=1||n==1&&t.charAt(1)>3;)g=g.times(e),t=J(g.d),n=t.charAt(0),f++;o=g.e,n>1?(g=new T("0."+t),o++):g=new T(n+"."+t.slice(1))}else return u=bn(T,c+2,b).times(o+""),g=Ke(new T(n+"."+t.slice(1)),c-h).plus(u),T.precision=b,r==null?y(g,b,S,w=!0):g;for(p=g,l=s=g=L(g.minus(1),g.plus(1),c,1),d=y(g.times(g),c,1),i=3;;){if(s=y(s.times(d),c,1),u=l.plus(L(s,new T(i),c,1)),J(u.d).slice(0,c)===J(l.d).slice(0,c))if(l=l.times(2),o!==0&&(l=l.plus(bn(T,c+2,b).times(o+""))),l=L(l,new T(f),c,1),r==null)if(ut(l.d,c-h,S,a))T.precision=c+=h,u=s=g=L(p.minus(1),p.plus(1),c,1),d=y(g.times(g),c,1),i=a=1;else return y(l,T.precision=b,S,w=!0);else return T.precision=b,l;l=u,i+=2}}function Ws(e){return String(e.s*e.s/0)}function gn(e,r){var t,n,i;for((t=r.indexOf("."))>-1&&(r=r.replace(".","")),(n=r.search(/e/i))>0?(t<0&&(t=n),t+=+r.slice(n+1),r=r.substring(0,n)):t<0&&(t=r.length),n=0;r.charCodeAt(n)===48;n++);for(i=r.length;r.charCodeAt(i-1)===48;--i);if(r=r.slice(n,i),r){if(i-=n,e.e=t=t-n-1,e.d=[],n=(t+1)%E,t<0&&(n+=E),ne.constructor.maxE?(e.d=null,e.e=NaN):e.e-1){if(r=r.replace(/(\d)_(?=\d)/g,"$1"),Bs.test(r))return gn(e,r)}else if(r==="Infinity"||r==="NaN")return+r||(e.s=NaN),e.e=NaN,e.d=null,e;if(Ep.test(r))t=16,r=r.toLowerCase();else if(bp.test(r))t=2;else if(wp.test(r))t=8;else throw Error(He+r);for(o=r.search(/p/i),o>0?(l=+r.slice(o+1),r=r.substring(2,o)):r=r.slice(2),o=r.indexOf("."),s=o>=0,n=e.constructor,s&&(r=r.replace(".",""),a=r.length,o=a-o,i=Gs(n,new n(t),o,o*2)),u=fn(r,t,fe),c=u.length-1,o=c;u[o]===0;--o)u.pop();return o<0?new n(e.s*0):(e.e=wn(u,c),e.d=u,w=!1,s&&(e=L(e,i,a*4)),l&&(e=e.times(Math.abs(l)<54?U(2,l):Le.pow(2,l))),w=!0,e)}function Sp(e,r){var t,n=r.d.length;if(n<3)return r.isZero()?r:Tr(e,2,r,r);t=1.4*Math.sqrt(n),t=t>16?16:t|0,r=r.times(1/xn(5,t)),r=Tr(e,2,r,r);for(var i,o=new e(5),s=new e(16),a=new e(20);t--;)i=r.times(r),r=r.times(o.plus(i.times(s.times(i).minus(a))));return r}function Tr(e,r,t,n,i){var o,s,a,l,u=1,c=e.precision,p=Math.ceil(c/E);for(w=!1,l=t.times(t),a=new e(n);;){if(s=L(a.times(l),new e(r++*r++),c,1),a=i?n.plus(s):n.minus(s),n=L(s.times(l),new e(r++*r++),c,1),s=a.plus(n),s.d[p]!==void 0){for(o=p;s.d[o]===a.d[o]&&o--;);if(o==-1)break}o=a,a=n,n=s,s=o,u++}return w=!0,s.d.length=p+1,s}function xn(e,r){for(var t=e;--r;)t*=e;return t}function Js(e,r){var t,n=r.s<0,i=xe(e,e.precision,1),o=i.times(.5);if(r=r.abs(),r.lte(o))return Ne=n?4:1,r;if(t=r.divToInt(i),t.isZero())Ne=n?3:2;else{if(r=r.minus(t.times(i)),r.lte(o))return Ne=Ls(t)?n?2:3:n?4:1,r;Ne=Ls(t)?n?1:4:n?3:2}return r.minus(i).abs()}function Ji(e,r,t,n){var i,o,s,a,l,u,c,p,d,f=e.constructor,h=t!==void 0;if(h?(ne(t,1,Ye),n===void 0?n=f.rounding:ne(n,0,8)):(t=f.precision,n=f.rounding),!e.isFinite())c=Ws(e);else{for(c=ve(e),s=c.indexOf("."),h?(i=2,r==16?t=t*4-3:r==8&&(t=t*3-2)):i=r,s>=0&&(c=c.replace(".",""),d=new f(1),d.e=c.length-s,d.d=fn(ve(d),10,i),d.e=d.d.length),p=fn(c,10,i),o=l=p.length;p[--l]==0;)p.pop();if(!p[0])c=h?"0p+0":"0";else{if(s<0?o--:(e=new f(e),e.d=p,e.e=o,e=L(e,d,t,n,0,i),p=e.d,o=e.e,u=$s),s=p[t],a=i/2,u=u||p[t+1]!==void 0,u=n<4?(s!==void 0||u)&&(n===0||n===(e.s<0?3:2)):s>a||s===a&&(n===4||u||n===6&&p[t-1]&1||n===(e.s<0?8:7)),p.length=t,u)for(;++p[--t]>i-1;)p[t]=0,t||(++o,p.unshift(1));for(l=p.length;!p[l-1];--l);for(s=0,c="";s1)if(r==16||r==8){for(s=r==16?4:3,--l;l%s;l++)c+="0";for(p=fn(c,i,r),l=p.length;!p[l-1];--l);for(s=1,c="1.";sl)for(o-=l;o--;)c+="0";else or)return e.length=r,!0}function Rp(e){return new this(e).abs()}function Ap(e){return new this(e).acos()}function Cp(e){return new this(e).acosh()}function Ip(e,r){return new this(e).plus(r)}function Dp(e){return new this(e).asin()}function Op(e){return new this(e).asinh()}function kp(e){return new this(e).atan()}function _p(e){return new this(e).atanh()}function Np(e,r){e=new this(e),r=new this(r);var t,n=this.precision,i=this.rounding,o=n+4;return!e.s||!r.s?t=new this(NaN):!e.d&&!r.d?(t=xe(this,o,1).times(r.s>0?.25:.75),t.s=e.s):!r.d||e.isZero()?(t=r.s<0?xe(this,n,i):new this(0),t.s=e.s):!e.d||r.isZero()?(t=xe(this,o,1).times(.5),t.s=e.s):r.s<0?(this.precision=o,this.rounding=1,t=this.atan(L(e,r,o,1)),r=xe(this,o,1),this.precision=n,this.rounding=i,t=e.s<0?t.minus(r):t.plus(r)):t=this.atan(L(e,r,o,1)),t}function Lp(e){return new this(e).cbrt()}function Fp(e){return y(e=new this(e),e.e+1,2)}function Mp(e,r,t){return new this(e).clamp(r,t)}function $p(e){if(!e||typeof e!="object")throw Error(En+"Object expected");var r,t,n,i=e.defaults===!0,o=["precision",1,Ye,"rounding",0,8,"toExpNeg",-Pr,0,"toExpPos",0,Pr,"maxE",0,Pr,"minE",-Pr,0,"modulo",0,9];for(r=0;r=o[r+1]&&n<=o[r+2])this[t]=n;else throw Error(He+t+": "+n);if(t="crypto",i&&(this[t]=Gi[t]),(n=e[t])!==void 0)if(n===!0||n===!1||n===0||n===1)if(n)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))this[t]=!0;else throw Error(Vs);else this[t]=!1;else throw Error(He+t+": "+n);return this}function qp(e){return new this(e).cos()}function Vp(e){return new this(e).cosh()}function Ks(e){var r,t,n;function i(o){var s,a,l,u=this;if(!(u instanceof i))return new i(o);if(u.constructor=i,Ms(o)){u.s=o.s,w?!o.d||o.e>i.maxE?(u.e=NaN,u.d=null):o.e=10;a/=10)s++;w?s>i.maxE?(u.e=NaN,u.d=null):s=429e7?r[o]=crypto.getRandomValues(new Uint32Array(1))[0]:a[o++]=i%1e7;else if(crypto.randomBytes){for(r=crypto.randomBytes(n*=4);o=214e7?crypto.randomBytes(4).copy(r,o):(a.push(i%1e7),o+=4);o=n/4}else throw Error(Vs);else for(;o=10;i/=10)n++;nRr,datamodelEnumToSchemaEnum:()=>pd});function pd(e){return{name:e.name,values:e.values.map(r=>r.name)}}var Rr=(b=>(b.findUnique="findUnique",b.findUniqueOrThrow="findUniqueOrThrow",b.findFirst="findFirst",b.findFirstOrThrow="findFirstOrThrow",b.findMany="findMany",b.create="create",b.createMany="createMany",b.createManyAndReturn="createManyAndReturn",b.update="update",b.updateMany="updateMany",b.updateManyAndReturn="updateManyAndReturn",b.upsert="upsert",b.delete="delete",b.deleteMany="deleteMany",b.groupBy="groupBy",b.count="count",b.aggregate="aggregate",b.findRaw="findRaw",b.aggregateRaw="aggregateRaw",b))(Rr||{});var Xs=O(Di());var Zs=O(require("node:fs"));var Hs={keyword:De,entity:De,value:e=>W(nr(e)),punctuation:nr,directive:De,function:De,variable:e=>W(nr(e)),string:e=>W(qe(e)),boolean:Ie,number:De,comment:Hr};var dd=e=>e,vn={},md=0,v={manual:vn.Prism&&vn.Prism.manual,disableWorkerMessageHandler:vn.Prism&&vn.Prism.disableWorkerMessageHandler,util:{encode:function(e){if(e instanceof ge){let r=e;return new ge(r.type,v.util.encode(r.content),r.alias)}else return Array.isArray(e)?e.map(v.util.encode):e.replace(/&/g,"&").replace(/e.length)return;if(Ae instanceof ge)continue;if(me&&j!=r.length-1){S.lastIndex=te;var p=S.exec(e);if(!p)break;var c=p.index+(D?p[1].length:0),d=p.index+p[0].length,a=j,l=te;for(let k=r.length;a=l&&(++j,te=l);if(r[j]instanceof ge)continue;u=a-j,Ae=e.slice(te,l),p.index-=te}else{S.lastIndex=0;var p=S.exec(Ae),u=1}if(!p){if(o)break;continue}D&&(se=p[1]?p[1].length:0);var c=p.index+se,p=p[0].slice(se),d=c+p.length,f=Ae.slice(0,c),h=Ae.slice(d);let K=[j,u];f&&(++j,te+=f.length,K.push(f));let fr=new ge(g,b?v.tokenize(p,b):p,Kr,p,me);if(K.push(fr),h&&K.push(h),Array.prototype.splice.apply(r,K),u!=1&&v.matchGrammar(e,r,t,j,te,!0,g),o)break}}}},tokenize:function(e,r){let t=[e],n=r.rest;if(n){for(let i in n)r[i]=n[i];delete r.rest}return v.matchGrammar(e,t,r,0,0,!1),t},hooks:{all:{},add:function(e,r){let t=v.hooks.all;t[e]=t[e]||[],t[e].push(r)},run:function(e,r){let t=v.hooks.all[e];if(!(!t||!t.length))for(var n=0,i;i=t[n++];)i(r)}},Token:ge};v.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/((?:\b(?:class|interface|extends|implements|trait|instanceof|new)\s+)|(?:catch\s+\())[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/,boolean:/\b(?:true|false)\b/,function:/\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&?|\|\|?|\?|\*|\/|~|\^|%/,punctuation:/[{}[\];(),.:]/};v.languages.javascript=v.languages.extend("clike",{"class-name":[v.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])[_$A-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\.(?:prototype|constructor))/,lookbehind:!0}],keyword:[{pattern:/((?:^|})\s*)(?:catch|finally)\b/,lookbehind:!0},{pattern:/(^|[^.])\b(?:as|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],number:/\b(?:(?:0[xX](?:[\dA-Fa-f](?:_[\dA-Fa-f])?)+|0[bB](?:[01](?:_[01])?)+|0[oO](?:[0-7](?:_[0-7])?)+)n?|(?:\d(?:_\d)?)+n|NaN|Infinity)\b|(?:\b(?:\d(?:_\d)?)+\.?(?:\d(?:_\d)?)*|\B\.(?:\d(?:_\d)?)+)(?:[Ee][+-]?(?:\d(?:_\d)?)+)?/,function:/[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,operator:/-[-=]?|\+[+=]?|!=?=?|<>?>?=?|=(?:==?|>)?|&[&=]?|\|[|=]?|\*\*?=?|\/=?|~|\^=?|%=?|\?|\.{3}/});v.languages.javascript["class-name"][0].pattern=/(\b(?:class|interface|extends|implements|instanceof|new)\s+)[\w.\\]+/;v.languages.insertBefore("javascript","keyword",{regex:{pattern:/((?:^|[^$\w\xA0-\uFFFF."'\])\s])\s*)\/(\[(?:[^\]\\\r\n]|\\.)*]|\\.|[^/\\\[\r\n])+\/[gimyus]{0,6}(?=\s*($|[\r\n,.;})\]]))/,lookbehind:!0,greedy:!0},"function-variable":{pattern:/[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)?\s*\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\))/,lookbehind:!0,inside:v.languages.javascript},{pattern:/[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*=>)/i,inside:v.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*=>)/,lookbehind:!0,inside:v.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*\s*)\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*\{)/,lookbehind:!0,inside:v.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/});v.languages.markup&&v.languages.markup.tag.addInlined("script","javascript");v.languages.js=v.languages.javascript;v.languages.typescript=v.languages.extend("javascript",{keyword:/\b(?:abstract|as|async|await|break|case|catch|class|const|constructor|continue|debugger|declare|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|is|keyof|let|module|namespace|new|null|of|package|private|protected|public|readonly|return|require|set|static|super|switch|this|throw|try|type|typeof|var|void|while|with|yield)\b/,builtin:/\b(?:string|Function|any|number|boolean|Array|symbol|console|Promise|unknown|never)\b/});v.languages.ts=v.languages.typescript;function ge(e,r,t,n,i){this.type=e,this.content=r,this.alias=t,this.length=(n||"").length|0,this.greedy=!!i}ge.stringify=function(e,r){return typeof e=="string"?e:Array.isArray(e)?e.map(function(t){return ge.stringify(t,r)}).join(""):fd(e.type)(e.content)};function fd(e){return Hs[e]||dd}function Ys(e){return gd(e,v.languages.javascript)}function gd(e,r){return v.tokenize(e,r).map(n=>ge.stringify(n)).join("")}function zs(e){return Ci(e)}var Pn=class e{firstLineNumber;lines;static read(r){let t;try{t=Zs.default.readFileSync(r,"utf-8")}catch{return null}return e.fromContent(t)}static fromContent(r){let t=r.split(/\r?\n/);return new e(1,t)}constructor(r,t){this.firstLineNumber=r,this.lines=t}get lastLineNumber(){return this.firstLineNumber+this.lines.length-1}mapLineAt(r,t){if(rthis.lines.length+this.firstLineNumber)return this;let n=r-this.firstLineNumber,i=[...this.lines];return i[n]=t(i[n]),new e(this.firstLineNumber,i)}mapLines(r){return new e(this.firstLineNumber,this.lines.map((t,n)=>r(t,this.firstLineNumber+n)))}lineAt(r){return this.lines[r-this.firstLineNumber]}prependSymbolAt(r,t){return this.mapLines((n,i)=>i===r?`${t} ${n}`:` ${n}`)}slice(r,t){let n=this.lines.slice(r-1,t).join(` +`);return new e(r,zs(n).split(` +`))}highlight(){let r=Ys(this.toString());return new e(this.firstLineNumber,r.split(` +`))}toString(){return this.lines.join(` +`)}};var hd={red:ce,gray:Hr,dim:Ce,bold:W,underline:Y,highlightSource:e=>e.highlight()},yd={red:e=>e,gray:e=>e,dim:e=>e,bold:e=>e,underline:e=>e,highlightSource:e=>e};function bd({message:e,originalMethod:r,isPanic:t,callArguments:n}){return{functionName:`prisma.${r}()`,message:e,isPanic:t??!1,callArguments:n}}function Ed({callsite:e,message:r,originalMethod:t,isPanic:n,callArguments:i},o){let s=bd({message:r,originalMethod:t,isPanic:n,callArguments:i});if(!e||typeof window<"u"||process.env.NODE_ENV==="production")return s;let a=e.getLocation();if(!a||!a.lineNumber||!a.columnNumber)return s;let l=Math.max(1,a.lineNumber-3),u=Pn.read(a.fileName)?.slice(l,a.lineNumber),c=u?.lineAt(a.lineNumber);if(u&&c){let p=xd(c),d=wd(c);if(!d)return s;s.functionName=`${d.code})`,s.location=a,n||(u=u.mapLineAt(a.lineNumber,h=>h.slice(0,d.openingBraceIndex))),u=o.highlightSource(u);let f=String(u.lastLineNumber).length;if(s.contextLines=u.mapLines((h,g)=>o.gray(String(g).padStart(f))+" "+h).mapLines(h=>o.dim(h)).prependSymbolAt(a.lineNumber,o.bold(o.red("\u2192"))),i){let h=p+f+1;h+=2,s.callArguments=(0,Xs.default)(i,h).slice(h)}}return s}function wd(e){let r=Object.keys(Rr).join("|"),n=new RegExp(String.raw`\.(${r})\(`).exec(e);if(n){let i=n.index+n[0].length,o=e.lastIndexOf(" ",n.index)+1;return{code:e.slice(o,i),openingBraceIndex:i}}return null}function xd(e){let r=0;for(let t=0;t"Unknown error")}function ia(e){return e.errors.flatMap(r=>r.kind==="Union"?ia(r):[r])}function Td(e){let r=new Map,t=[];for(let n of e){if(n.kind!=="InvalidArgumentType"){t.push(n);continue}let i=`${n.selectionPath.join(".")}:${n.argumentPath.join(".")}`,o=r.get(i);o?r.set(i,{...n,argument:{...n.argument,typeNames:Sd(o.argument.typeNames,n.argument.typeNames)}}):r.set(i,n)}return t.push(...r.values()),t}function Sd(e,r){return[...new Set(e.concat(r))]}function Rd(e){return ji(e,(r,t)=>{let n=ra(r),i=ra(t);return n!==i?n-i:ta(r)-ta(t)})}function ra(e){let r=0;return Array.isArray(e.selectionPath)&&(r+=e.selectionPath.length),Array.isArray(e.argumentPath)&&(r+=e.argumentPath.length),r}function ta(e){switch(e.kind){case"InvalidArgumentValue":case"ValueTooLarge":return 20;case"InvalidArgumentType":return 10;case"RequiredArgumentMissing":return-10;default:return 0}}var le=class{constructor(r,t){this.name=r;this.value=t}isRequired=!1;makeRequired(){return this.isRequired=!0,this}write(r){let{colors:{green:t}}=r.context;r.addMarginSymbol(t(this.isRequired?"+":"?")),r.write(t(this.name)),this.isRequired||r.write(t("?")),r.write(t(": ")),typeof this.value=="string"?r.write(t(this.value)):r.write(this.value)}};sa();var Ar=class{constructor(r=0,t){this.context=t;this.currentIndent=r}lines=[];currentLine="";currentIndent=0;marginSymbol;afterNextNewLineCallback;write(r){return typeof r=="string"?this.currentLine+=r:r.write(this),this}writeJoined(r,t,n=(i,o)=>o.write(i)){let i=t.length-1;for(let o=0;o0&&this.currentIndent--,this}addMarginSymbol(r){return this.marginSymbol=r,this}toString(){return this.lines.concat(this.indentedCurrentLine()).join(` +`)}getCurrentLineLength(){return this.currentLine.length}indentedCurrentLine(){let r=this.currentLine.padStart(this.currentLine.length+2*this.currentIndent);return this.marginSymbol?this.marginSymbol+r.slice(1):r}};oa();var Rn=class{constructor(r){this.value=r}write(r){r.write(this.value)}markAsError(){this.value.markAsError()}};var An=e=>e,Cn={bold:An,red:An,green:An,dim:An,enabled:!1},aa={bold:W,red:ce,green:qe,dim:Ce,enabled:!0},Cr={write(e){e.writeLine(",")}};var Pe=class{constructor(r){this.contents=r}isUnderlined=!1;color=r=>r;underline(){return this.isUnderlined=!0,this}setColor(r){return this.color=r,this}write(r){let t=r.getCurrentLineLength();r.write(this.color(this.contents)),this.isUnderlined&&r.afterNextNewline(()=>{r.write(" ".repeat(t)).writeLine(this.color("~".repeat(this.contents.length)))})}};var ze=class{hasError=!1;markAsError(){return this.hasError=!0,this}};var Ir=class extends ze{items=[];addItem(r){return this.items.push(new Rn(r)),this}getField(r){return this.items[r]}getPrintWidth(){return this.items.length===0?2:Math.max(...this.items.map(t=>t.value.getPrintWidth()))+2}write(r){if(this.items.length===0){this.writeEmpty(r);return}this.writeWithItems(r)}writeEmpty(r){let t=new Pe("[]");this.hasError&&t.setColor(r.context.colors.red).underline(),r.write(t)}writeWithItems(r){let{colors:t}=r.context;r.writeLine("[").withIndent(()=>r.writeJoined(Cr,this.items).newLine()).write("]"),this.hasError&&r.afterNextNewline(()=>{r.writeLine(t.red("~".repeat(this.getPrintWidth())))})}asObject(){}};var Dr=class e extends ze{fields={};suggestions=[];addField(r){this.fields[r.name]=r}addSuggestion(r){this.suggestions.push(r)}getField(r){return this.fields[r]}getDeepField(r){let[t,...n]=r,i=this.getField(t);if(!i)return;let o=i;for(let s of n){let a;if(o.value instanceof e?a=o.value.getField(s):o.value instanceof Ir&&(a=o.value.getField(Number(s))),!a)return;o=a}return o}getDeepFieldValue(r){return r.length===0?this:this.getDeepField(r)?.value}hasField(r){return!!this.getField(r)}removeAllFields(){this.fields={}}removeField(r){delete this.fields[r]}getFields(){return this.fields}isEmpty(){return Object.keys(this.fields).length===0}getFieldValue(r){return this.getField(r)?.value}getDeepSubSelectionValue(r){let t=this;for(let n of r){if(!(t instanceof e))return;let i=t.getSubSelectionValue(n);if(!i)return;t=i}return t}getDeepSelectionParent(r){let t=this.getSelectionParent();if(!t)return;let n=t;for(let i of r){let o=n.value.getFieldValue(i);if(!o||!(o instanceof e))return;let s=o.getSelectionParent();if(!s)return;n=s}return n}getSelectionParent(){let r=this.getField("select")?.value.asObject();if(r)return{kind:"select",value:r};let t=this.getField("include")?.value.asObject();if(t)return{kind:"include",value:t}}getSubSelectionValue(r){return this.getSelectionParent()?.value.fields[r].value}getPrintWidth(){let r=Object.values(this.fields);return r.length==0?2:Math.max(...r.map(n=>n.getPrintWidth()))+2}write(r){let t=Object.values(this.fields);if(t.length===0&&this.suggestions.length===0){this.writeEmpty(r);return}this.writeWithContents(r,t)}asObject(){return this}writeEmpty(r){let t=new Pe("{}");this.hasError&&t.setColor(r.context.colors.red).underline(),r.write(t)}writeWithContents(r,t){r.writeLine("{").withIndent(()=>{r.writeJoined(Cr,[...t,...this.suggestions]).newLine()}),r.write("}"),this.hasError&&r.afterNextNewline(()=>{r.writeLine(r.context.colors.red("~".repeat(this.getPrintWidth())))})}};var Q=class extends ze{constructor(t){super();this.text=t}getPrintWidth(){return this.text.length}write(t){let n=new Pe(this.text);this.hasError&&n.underline().setColor(t.context.colors.red),t.write(n)}asObject(){}};var pt=class{fields=[];addField(r,t){return this.fields.push({write(n){let{green:i,dim:o}=n.context.colors;n.write(i(o(`${r}: ${t}`))).addMarginSymbol(i(o("+")))}}),this}write(r){let{colors:{green:t}}=r.context;r.writeLine(t("{")).withIndent(()=>{r.writeJoined(Cr,this.fields).newLine()}).write(t("}")).addMarginSymbol(t("+"))}};function Sn(e,r,t){switch(e.kind){case"MutuallyExclusiveFields":Ad(e,r);break;case"IncludeOnScalar":Cd(e,r);break;case"EmptySelection":Id(e,r,t);break;case"UnknownSelectionField":_d(e,r);break;case"InvalidSelectionValue":Nd(e,r);break;case"UnknownArgument":Ld(e,r);break;case"UnknownInputField":Fd(e,r);break;case"RequiredArgumentMissing":Md(e,r);break;case"InvalidArgumentType":$d(e,r);break;case"InvalidArgumentValue":qd(e,r);break;case"ValueTooLarge":Vd(e,r);break;case"SomeFieldsMissing":jd(e,r);break;case"TooManyFieldsGiven":Bd(e,r);break;case"Union":na(e,r,t);break;default:throw new Error("not implemented: "+e.kind)}}function Ad(e,r){let t=r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();t&&(t.getField(e.firstField)?.markAsError(),t.getField(e.secondField)?.markAsError()),r.addErrorMessage(n=>`Please ${n.bold("either")} use ${n.green(`\`${e.firstField}\``)} or ${n.green(`\`${e.secondField}\``)}, but ${n.red("not both")} at the same time.`)}function Cd(e,r){let[t,n]=Or(e.selectionPath),i=e.outputType,o=r.arguments.getDeepSelectionParent(t)?.value;if(o&&(o.getField(n)?.markAsError(),i))for(let s of i.fields)s.isRelation&&o.addSuggestion(new le(s.name,"true"));r.addErrorMessage(s=>{let a=`Invalid scalar field ${s.red(`\`${n}\``)} for ${s.bold("include")} statement`;return i?a+=` on model ${s.bold(i.name)}. ${dt(s)}`:a+=".",a+=` +Note that ${s.bold("include")} statements only accept relation fields.`,a})}function Id(e,r,t){let n=r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(n){let i=n.getField("omit")?.value.asObject();if(i){Dd(e,r,i);return}if(n.hasField("select")){Od(e,r);return}}if(t?.[We(e.outputType.name)]){kd(e,r);return}r.addErrorMessage(()=>`Unknown field at "${e.selectionPath.join(".")} selection"`)}function Dd(e,r,t){t.removeAllFields();for(let n of e.outputType.fields)t.addSuggestion(new le(n.name,"false"));r.addErrorMessage(n=>`The ${n.red("omit")} statement includes every field of the model ${n.bold(e.outputType.name)}. At least one field must be included in the result`)}function Od(e,r){let t=e.outputType,n=r.arguments.getDeepSelectionParent(e.selectionPath)?.value,i=n?.isEmpty()??!1;n&&(n.removeAllFields(),pa(n,t)),r.addErrorMessage(o=>i?`The ${o.red("`select`")} statement for type ${o.bold(t.name)} must not be empty. ${dt(o)}`:`The ${o.red("`select`")} statement for type ${o.bold(t.name)} needs ${o.bold("at least one truthy value")}.`)}function kd(e,r){let t=new pt;for(let i of e.outputType.fields)i.isRelation||t.addField(i.name,"false");let n=new le("omit",t).makeRequired();if(e.selectionPath.length===0)r.arguments.addSuggestion(n);else{let[i,o]=Or(e.selectionPath),a=r.arguments.getDeepSelectionParent(i)?.value.asObject()?.getField(o);if(a){let l=a?.value.asObject()??new Dr;l.addSuggestion(n),a.value=l}}r.addErrorMessage(i=>`The global ${i.red("omit")} configuration excludes every field of the model ${i.bold(e.outputType.name)}. At least one field must be included in the result`)}function _d(e,r){let t=da(e.selectionPath,r);if(t.parentKind!=="unknown"){t.field.markAsError();let n=t.parent;switch(t.parentKind){case"select":pa(n,e.outputType);break;case"include":Ud(n,e.outputType);break;case"omit":Gd(n,e.outputType);break}}r.addErrorMessage(n=>{let i=[`Unknown field ${n.red(`\`${t.fieldName}\``)}`];return t.parentKind!=="unknown"&&i.push(`for ${n.bold(t.parentKind)} statement`),i.push(`on model ${n.bold(`\`${e.outputType.name}\``)}.`),i.push(dt(n)),i.join(" ")})}function Nd(e,r){let t=da(e.selectionPath,r);t.parentKind!=="unknown"&&t.field.value.markAsError(),r.addErrorMessage(n=>`Invalid value for selection field \`${n.red(t.fieldName)}\`: ${e.underlyingError}`)}function Ld(e,r){let t=e.argumentPath[0],n=r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&(n.getField(t)?.markAsError(),Qd(n,e.arguments)),r.addErrorMessage(i=>ua(i,t,e.arguments.map(o=>o.name)))}function Fd(e,r){let[t,n]=Or(e.argumentPath),i=r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(i){i.getDeepField(e.argumentPath)?.markAsError();let o=i.getDeepFieldValue(t)?.asObject();o&&ma(o,e.inputType)}r.addErrorMessage(o=>ua(o,n,e.inputType.fields.map(s=>s.name)))}function ua(e,r,t){let n=[`Unknown argument \`${e.red(r)}\`.`],i=Jd(r,t);return i&&n.push(`Did you mean \`${e.green(i)}\`?`),t.length>0&&n.push(dt(e)),n.join(" ")}function Md(e,r){let t;r.addErrorMessage(l=>t?.value instanceof Q&&t.value.text==="null"?`Argument \`${l.green(o)}\` must not be ${l.red("null")}.`:`Argument \`${l.green(o)}\` is missing.`);let n=r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(!n)return;let[i,o]=Or(e.argumentPath),s=new pt,a=n.getDeepFieldValue(i)?.asObject();if(a){if(t=a.getField(o),t&&a.removeField(o),e.inputTypes.length===1&&e.inputTypes[0].kind==="object"){for(let l of e.inputTypes[0].fields)s.addField(l.name,l.typeNames.join(" | "));a.addSuggestion(new le(o,s).makeRequired())}else{let l=e.inputTypes.map(ca).join(" | ");a.addSuggestion(new le(o,l).makeRequired())}if(e.dependentArgumentPath){n.getDeepField(e.dependentArgumentPath)?.markAsError();let[,l]=Or(e.dependentArgumentPath);r.addErrorMessage(u=>`Argument \`${u.green(o)}\` is required because argument \`${u.green(l)}\` was provided.`)}}}function ca(e){return e.kind==="list"?`${ca(e.elementType)}[]`:e.name}function $d(e,r){let t=e.argument.name,n=r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&n.getDeepFieldValue(e.argumentPath)?.markAsError(),r.addErrorMessage(i=>{let o=In("or",e.argument.typeNames.map(s=>i.green(s)));return`Argument \`${i.bold(t)}\`: Invalid value provided. Expected ${o}, provided ${i.red(e.inferredType)}.`})}function qd(e,r){let t=e.argument.name,n=r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&n.getDeepFieldValue(e.argumentPath)?.markAsError(),r.addErrorMessage(i=>{let o=[`Invalid value for argument \`${i.bold(t)}\``];if(e.underlyingError&&o.push(`: ${e.underlyingError}`),o.push("."),e.argument.typeNames.length>0){let s=In("or",e.argument.typeNames.map(a=>i.green(a)));o.push(` Expected ${s}.`)}return o.join("")})}function Vd(e,r){let t=e.argument.name,n=r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(),i;if(n){let s=n.getDeepField(e.argumentPath)?.value;s?.markAsError(),s instanceof Q&&(i=s.text)}r.addErrorMessage(o=>{let s=["Unable to fit value"];return i&&s.push(o.red(i)),s.push(`into a 64-bit signed integer for field \`${o.bold(t)}\``),s.join(" ")})}function jd(e,r){let t=e.argumentPath[e.argumentPath.length-1],n=r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(n){let i=n.getDeepFieldValue(e.argumentPath)?.asObject();i&&ma(i,e.inputType)}r.addErrorMessage(i=>{let o=[`Argument \`${i.bold(t)}\` of type ${i.bold(e.inputType.name)} needs`];return e.constraints.minFieldCount===1?e.constraints.requiredFields?o.push(`${i.green("at least one of")} ${In("or",e.constraints.requiredFields.map(s=>`\`${i.bold(s)}\``))} arguments.`):o.push(`${i.green("at least one")} argument.`):o.push(`${i.green(`at least ${e.constraints.minFieldCount}`)} arguments.`),o.push(dt(i)),o.join(" ")})}function Bd(e,r){let t=e.argumentPath[e.argumentPath.length-1],n=r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(),i=[];if(n){let o=n.getDeepFieldValue(e.argumentPath)?.asObject();o&&(o.markAsError(),i=Object.keys(o.getFields()))}r.addErrorMessage(o=>{let s=[`Argument \`${o.bold(t)}\` of type ${o.bold(e.inputType.name)} needs`];return e.constraints.minFieldCount===1&&e.constraints.maxFieldCount==1?s.push(`${o.green("exactly one")} argument,`):e.constraints.maxFieldCount==1?s.push(`${o.green("at most one")} argument,`):s.push(`${o.green(`at most ${e.constraints.maxFieldCount}`)} arguments,`),s.push(`but you provided ${In("and",i.map(a=>o.red(a)))}. Please choose`),e.constraints.maxFieldCount===1?s.push("one."):s.push(`${e.constraints.maxFieldCount}.`),s.join(" ")})}function pa(e,r){for(let t of r.fields)e.hasField(t.name)||e.addSuggestion(new le(t.name,"true"))}function Ud(e,r){for(let t of r.fields)t.isRelation&&!e.hasField(t.name)&&e.addSuggestion(new le(t.name,"true"))}function Gd(e,r){for(let t of r.fields)!e.hasField(t.name)&&!t.isRelation&&e.addSuggestion(new le(t.name,"true"))}function Qd(e,r){for(let t of r)e.hasField(t.name)||e.addSuggestion(new le(t.name,t.typeNames.join(" | ")))}function da(e,r){let[t,n]=Or(e),i=r.arguments.getDeepSubSelectionValue(t)?.asObject();if(!i)return{parentKind:"unknown",fieldName:n};let o=i.getFieldValue("select")?.asObject(),s=i.getFieldValue("include")?.asObject(),a=i.getFieldValue("omit")?.asObject(),l=o?.getField(n);return o&&l?{parentKind:"select",parent:o,field:l,fieldName:n}:(l=s?.getField(n),s&&l?{parentKind:"include",field:l,parent:s,fieldName:n}:(l=a?.getField(n),a&&l?{parentKind:"omit",field:l,parent:a,fieldName:n}:{parentKind:"unknown",fieldName:n}))}function ma(e,r){if(r.kind==="object")for(let t of r.fields)e.hasField(t.name)||e.addSuggestion(new le(t.name,t.typeNames.join(" | ")))}function Or(e){let r=[...e],t=r.pop();if(!t)throw new Error("unexpected empty path");return[r,t]}function dt({green:e,enabled:r}){return"Available options are "+(r?`listed in ${e("green")}`:"marked with ?")+"."}function In(e,r){if(r.length===1)return r[0];let t=[...r],n=t.pop();return`${t.join(", ")} ${e} ${n}`}var Wd=3;function Jd(e,r){let t=1/0,n;for(let i of r){let o=(0,la.default)(e,i);o>Wd||o`}};function kr(e){return e instanceof mt}var Dn=Symbol(),Yi=new WeakMap,Me=class{constructor(r){r===Dn?Yi.set(this,`Prisma.${this._getName()}`):Yi.set(this,`new Prisma.${this._getNamespace()}.${this._getName()}()`)}_getName(){return this.constructor.name}toString(){return Yi.get(this)}},ft=class extends Me{_getNamespace(){return"NullTypes"}},gt=class extends ft{#e};zi(gt,"DbNull");var ht=class extends ft{#e};zi(ht,"JsonNull");var yt=class extends ft{#e};zi(yt,"AnyNull");var On={classes:{DbNull:gt,JsonNull:ht,AnyNull:yt},instances:{DbNull:new gt(Dn),JsonNull:new ht(Dn),AnyNull:new yt(Dn)}};function zi(e,r){Object.defineProperty(e,"name",{value:r,configurable:!0})}var fa=": ",kn=class{constructor(r,t){this.name=r;this.value=t}hasError=!1;markAsError(){this.hasError=!0}getPrintWidth(){return this.name.length+this.value.getPrintWidth()+fa.length}write(r){let t=new Pe(this.name);this.hasError&&t.underline().setColor(r.context.colors.red),r.write(t).write(fa).write(this.value)}};var Zi=class{arguments;errorMessages=[];constructor(r){this.arguments=r}write(r){r.write(this.arguments)}addErrorMessage(r){this.errorMessages.push(r)}renderAllMessages(r){return this.errorMessages.map(t=>t(r)).join(` +`)}};function _r(e){return new Zi(ga(e))}function ga(e){let r=new Dr;for(let[t,n]of Object.entries(e)){let i=new kn(t,ha(n));r.addField(i)}return r}function ha(e){if(typeof e=="string")return new Q(JSON.stringify(e));if(typeof e=="number"||typeof e=="boolean")return new Q(String(e));if(typeof e=="bigint")return new Q(`${e}n`);if(e===null)return new Q("null");if(e===void 0)return new Q("undefined");if(Sr(e))return new Q(`new Prisma.Decimal("${e.toFixed()}")`);if(e instanceof Uint8Array)return Buffer.isBuffer(e)?new Q(`Buffer.alloc(${e.byteLength})`):new Q(`new Uint8Array(${e.byteLength})`);if(e instanceof Date){let r=mn(e)?e.toISOString():"Invalid Date";return new Q(`new Date("${r}")`)}return e instanceof Me?new Q(`Prisma.${e._getName()}`):kr(e)?new Q(`prisma.${We(e.modelName)}.$fields.${e.name}`):Array.isArray(e)?Kd(e):typeof e=="object"?ga(e):new Q(Object.prototype.toString.call(e))}function Kd(e){let r=new Ir;for(let t of e)r.addItem(ha(t));return r}function _n(e,r){let t=r==="pretty"?aa:Cn,n=e.renderAllMessages(t),i=new Ar(0,{colors:t}).write(e).toString();return{message:n,args:i}}function Nn({args:e,errors:r,errorFormat:t,callsite:n,originalMethod:i,clientVersion:o,globalOmit:s}){let a=_r(e);for(let p of r)Sn(p,a,s);let{message:l,args:u}=_n(a,t),c=Tn({message:l,callsite:n,originalMethod:i,showColors:t==="pretty",callArguments:u});throw new Z(c,{clientVersion:o})}function Te(e){return e.replace(/^./,r=>r.toLowerCase())}function ba(e,r,t){let n=Te(t);return!r.result||!(r.result.$allModels||r.result[n])?e:Hd({...e,...ya(r.name,e,r.result.$allModels),...ya(r.name,e,r.result[n])})}function Hd(e){let r=new we,t=(n,i)=>r.getOrCreate(n,()=>i.has(n)?[n]:(i.add(n),e[n]?e[n].needs.flatMap(o=>t(o,i)):[n]));return pn(e,n=>({...n,needs:t(n.name,new Set)}))}function ya(e,r,t){return t?pn(t,({needs:n,compute:i},o)=>({name:o,needs:n?Object.keys(n).filter(s=>n[s]):[],compute:Yd(r,o,i)})):{}}function Yd(e,r,t){let n=e?.[r]?.compute;return n?i=>t({...i,[r]:n(i)}):t}function Ea(e,r){if(!r)return e;let t={...e};for(let n of Object.values(r))if(e[n.name])for(let i of n.needs)t[i]=!0;return t}function wa(e,r){if(!r)return e;let t={...e};for(let n of Object.values(r))if(!e[n.name])for(let i of n.needs)delete t[i];return t}var Ln=class{constructor(r,t){this.extension=r;this.previous=t}computedFieldsCache=new we;modelExtensionsCache=new we;queryCallbacksCache=new we;clientExtensions=lt(()=>this.extension.client?{...this.previous?.getAllClientExtensions(),...this.extension.client}:this.previous?.getAllClientExtensions());batchCallbacks=lt(()=>{let r=this.previous?.getAllBatchQueryCallbacks()??[],t=this.extension.query?.$__internalBatch;return t?r.concat(t):r});getAllComputedFields(r){return this.computedFieldsCache.getOrCreate(r,()=>ba(this.previous?.getAllComputedFields(r),this.extension,r))}getAllClientExtensions(){return this.clientExtensions.get()}getAllModelExtensions(r){return this.modelExtensionsCache.getOrCreate(r,()=>{let t=Te(r);return!this.extension.model||!(this.extension.model[t]||this.extension.model.$allModels)?this.previous?.getAllModelExtensions(r):{...this.previous?.getAllModelExtensions(r),...this.extension.model.$allModels,...this.extension.model[t]}})}getAllQueryCallbacks(r,t){return this.queryCallbacksCache.getOrCreate(`${r}:${t}`,()=>{let n=this.previous?.getAllQueryCallbacks(r,t)??[],i=[],o=this.extension.query;return!o||!(o[r]||o.$allModels||o[t]||o.$allOperations)?n:(o[r]!==void 0&&(o[r][t]!==void 0&&i.push(o[r][t]),o[r].$allOperations!==void 0&&i.push(o[r].$allOperations)),r!=="$none"&&o.$allModels!==void 0&&(o.$allModels[t]!==void 0&&i.push(o.$allModels[t]),o.$allModels.$allOperations!==void 0&&i.push(o.$allModels.$allOperations)),o[t]!==void 0&&i.push(o[t]),o.$allOperations!==void 0&&i.push(o.$allOperations),n.concat(i))})}getAllBatchQueryCallbacks(){return this.batchCallbacks.get()}},Nr=class e{constructor(r){this.head=r}static empty(){return new e}static single(r){return new e(new Ln(r))}isEmpty(){return this.head===void 0}append(r){return new e(new Ln(r,this.head))}getAllComputedFields(r){return this.head?.getAllComputedFields(r)}getAllClientExtensions(){return this.head?.getAllClientExtensions()}getAllModelExtensions(r){return this.head?.getAllModelExtensions(r)}getAllQueryCallbacks(r,t){return this.head?.getAllQueryCallbacks(r,t)??[]}getAllBatchQueryCallbacks(){return this.head?.getAllBatchQueryCallbacks()??[]}};var Fn=class{constructor(r){this.name=r}};function xa(e){return e instanceof Fn}function va(e){return new Fn(e)}var Pa=Symbol(),bt=class{constructor(r){if(r!==Pa)throw new Error("Skip instance can not be constructed directly")}ifUndefined(r){return r===void 0?Mn:r}},Mn=new bt(Pa);function Se(e){return e instanceof bt}var zd={findUnique:"findUnique",findUniqueOrThrow:"findUniqueOrThrow",findFirst:"findFirst",findFirstOrThrow:"findFirstOrThrow",findMany:"findMany",count:"aggregate",create:"createOne",createMany:"createMany",createManyAndReturn:"createManyAndReturn",update:"updateOne",updateMany:"updateMany",updateManyAndReturn:"updateManyAndReturn",upsert:"upsertOne",delete:"deleteOne",deleteMany:"deleteMany",executeRaw:"executeRaw",queryRaw:"queryRaw",aggregate:"aggregate",groupBy:"groupBy",runCommandRaw:"runCommandRaw",findRaw:"findRaw",aggregateRaw:"aggregateRaw"},Ta="explicitly `undefined` values are not allowed";function $n({modelName:e,action:r,args:t,runtimeDataModel:n,extensions:i=Nr.empty(),callsite:o,clientMethod:s,errorFormat:a,clientVersion:l,previewFeatures:u,globalOmit:c}){let p=new Xi({runtimeDataModel:n,modelName:e,action:r,rootArgs:t,callsite:o,extensions:i,selectionPath:[],argumentPath:[],originalMethod:s,errorFormat:a,clientVersion:l,previewFeatures:u,globalOmit:c});return{modelName:e,action:zd[r],query:Et(t,p)}}function Et({select:e,include:r,...t}={},n){let i=t.omit;return delete t.omit,{arguments:Ra(t,n),selection:Zd(e,r,i,n)}}function Zd(e,r,t,n){return e?(r?n.throwValidationError({kind:"MutuallyExclusiveFields",firstField:"include",secondField:"select",selectionPath:n.getSelectionPath()}):t&&n.throwValidationError({kind:"MutuallyExclusiveFields",firstField:"omit",secondField:"select",selectionPath:n.getSelectionPath()}),tm(e,n)):Xd(n,r,t)}function Xd(e,r,t){let n={};return e.modelOrType&&!e.isRawAction()&&(n.$composites=!0,n.$scalars=!0),r&&em(n,r,e),rm(n,t,e),n}function em(e,r,t){for(let[n,i]of Object.entries(r)){if(Se(i))continue;let o=t.nestSelection(n);if(eo(i,o),i===!1||i===void 0){e[n]=!1;continue}let s=t.findField(n);if(s&&s.kind!=="object"&&t.throwValidationError({kind:"IncludeOnScalar",selectionPath:t.getSelectionPath().concat(n),outputType:t.getOutputTypeDescription()}),s){e[n]=Et(i===!0?{}:i,o);continue}if(i===!0){e[n]=!0;continue}e[n]=Et(i,o)}}function rm(e,r,t){let n=t.getComputedFields(),i={...t.getGlobalOmit(),...r},o=wa(i,n);for(let[s,a]of Object.entries(o)){if(Se(a))continue;eo(a,t.nestSelection(s));let l=t.findField(s);n?.[s]&&!l||(e[s]=!a)}}function tm(e,r){let t={},n=r.getComputedFields(),i=Ea(e,n);for(let[o,s]of Object.entries(i)){if(Se(s))continue;let a=r.nestSelection(o);eo(s,a);let l=r.findField(o);if(!(n?.[o]&&!l)){if(s===!1||s===void 0||Se(s)){t[o]=!1;continue}if(s===!0){l?.kind==="object"?t[o]=Et({},a):t[o]=!0;continue}t[o]=Et(s,a)}}return t}function Sa(e,r){if(e===null)return null;if(typeof e=="string"||typeof e=="number"||typeof e=="boolean")return e;if(typeof e=="bigint")return{$type:"BigInt",value:String(e)};if(vr(e)){if(mn(e))return{$type:"DateTime",value:e.toISOString()};r.throwValidationError({kind:"InvalidArgumentValue",selectionPath:r.getSelectionPath(),argumentPath:r.getArgumentPath(),argument:{name:r.getArgumentName(),typeNames:["Date"]},underlyingError:"Provided Date object is invalid"})}if(xa(e))return{$type:"Param",value:e.name};if(kr(e))return{$type:"FieldRef",value:{_ref:e.name,_container:e.modelName}};if(Array.isArray(e))return nm(e,r);if(ArrayBuffer.isView(e)){let{buffer:t,byteOffset:n,byteLength:i}=e;return{$type:"Bytes",value:Buffer.from(t,n,i).toString("base64")}}if(im(e))return e.values;if(Sr(e))return{$type:"Decimal",value:e.toFixed()};if(e instanceof Me){if(e!==On.instances[e._getName()])throw new Error("Invalid ObjectEnumValue");return{$type:"Enum",value:e._getName()}}if(om(e))return e.toJSON();if(typeof e=="object")return Ra(e,r);r.throwValidationError({kind:"InvalidArgumentValue",selectionPath:r.getSelectionPath(),argumentPath:r.getArgumentPath(),argument:{name:r.getArgumentName(),typeNames:[]},underlyingError:`We could not serialize ${Object.prototype.toString.call(e)} value. Serialize the object to JSON or implement a ".toJSON()" method on it`})}function Ra(e,r){if(e.$type)return{$type:"Raw",value:e};let t={};for(let n in e){let i=e[n],o=r.nestArgument(n);Se(i)||(i!==void 0?t[n]=Sa(i,o):r.isPreviewFeatureOn("strictUndefinedChecks")&&r.throwValidationError({kind:"InvalidArgumentValue",argumentPath:o.getArgumentPath(),selectionPath:r.getSelectionPath(),argument:{name:r.getArgumentName(),typeNames:[]},underlyingError:Ta}))}return t}function nm(e,r){let t=[];for(let n=0;n({name:r.name,typeName:"boolean",isRelation:r.kind==="object"}))}}isRawAction(){return["executeRaw","queryRaw","runCommandRaw","findRaw","aggregateRaw"].includes(this.params.action)}isPreviewFeatureOn(r){return this.params.previewFeatures.includes(r)}getComputedFields(){if(this.params.modelName)return this.params.extensions.getAllComputedFields(this.params.modelName)}findField(r){return this.modelOrType?.fields.find(t=>t.name===r)}nestSelection(r){let t=this.findField(r),n=t?.kind==="object"?t.type:void 0;return new e({...this.params,modelName:n,selectionPath:this.params.selectionPath.concat(r)})}getGlobalOmit(){return this.params.modelName&&this.shouldApplyGlobalOmit()?this.params.globalOmit?.[We(this.params.modelName)]??{}:{}}shouldApplyGlobalOmit(){switch(this.params.action){case"findFirst":case"findFirstOrThrow":case"findUniqueOrThrow":case"findMany":case"upsert":case"findUnique":case"createManyAndReturn":case"create":case"update":case"updateManyAndReturn":case"delete":return!0;case"executeRaw":case"aggregateRaw":case"runCommandRaw":case"findRaw":case"createMany":case"deleteMany":case"groupBy":case"updateMany":case"count":case"aggregate":case"queryRaw":return!1;default:ar(this.params.action,"Unknown action")}}nestArgument(r){return new e({...this.params,argumentPath:this.params.argumentPath.concat(r)})}};function Aa(e){if(!e._hasPreviewFlag("metrics"))throw new Z("`metrics` preview feature must be enabled in order to access metrics API",{clientVersion:e._clientVersion})}var Lr=class{_client;constructor(r){this._client=r}prometheus(r){return Aa(this._client),this._client._engine.metrics({format:"prometheus",...r})}json(r){return Aa(this._client),this._client._engine.metrics({format:"json",...r})}};function Ca(e,r){let t=lt(()=>sm(r));Object.defineProperty(e,"dmmf",{get:()=>t.get()})}function sm(e){return{datamodel:{models:ro(e.models),enums:ro(e.enums),types:ro(e.types)}}}function ro(e){return Object.entries(e).map(([r,t])=>({name:r,...t}))}var to=new WeakMap,qn="$$PrismaTypedSql",wt=class{constructor(r,t){to.set(this,{sql:r,values:t}),Object.defineProperty(this,qn,{value:qn})}get sql(){return to.get(this).sql}get values(){return to.get(this).values}};function Ia(e){return(...r)=>new wt(e,r)}function Vn(e){return e!=null&&e[qn]===qn}var cu=O(Ti());var pu=require("node:async_hooks"),du=require("node:events"),mu=O(require("node:fs")),ri=O(require("node:path"));var ie=class e{constructor(r,t){if(r.length-1!==t.length)throw r.length===0?new TypeError("Expected at least 1 string"):new TypeError(`Expected ${r.length} strings to have ${r.length-1} values`);let n=t.reduce((s,a)=>s+(a instanceof e?a.values.length:1),0);this.values=new Array(n),this.strings=new Array(n+1),this.strings[0]=r[0];let i=0,o=0;for(;ie.getPropertyValue(t))},getPropertyDescriptor(t){return e.getPropertyDescriptor?.(t)}}}var jn={enumerable:!0,configurable:!0,writable:!0};function Bn(e){let r=new Set(e);return{getPrototypeOf:()=>Object.prototype,getOwnPropertyDescriptor:()=>jn,has:(t,n)=>r.has(n),set:(t,n,i)=>r.add(n)&&Reflect.set(t,n,i),ownKeys:()=>[...r]}}var ka=Symbol.for("nodejs.util.inspect.custom");function he(e,r){let t=am(r),n=new Set,i=new Proxy(e,{get(o,s){if(n.has(s))return o[s];let a=t.get(s);return a?a.getPropertyValue(s):o[s]},has(o,s){if(n.has(s))return!0;let a=t.get(s);return a?a.has?.(s)??!0:Reflect.has(o,s)},ownKeys(o){let s=_a(Reflect.ownKeys(o),t),a=_a(Array.from(t.keys()),t);return[...new Set([...s,...a,...n])]},set(o,s,a){return t.get(s)?.getPropertyDescriptor?.(s)?.writable===!1?!1:(n.add(s),Reflect.set(o,s,a))},getOwnPropertyDescriptor(o,s){let a=Reflect.getOwnPropertyDescriptor(o,s);if(a&&!a.configurable)return a;let l=t.get(s);return l?l.getPropertyDescriptor?{...jn,...l?.getPropertyDescriptor(s)}:jn:a},defineProperty(o,s,a){return n.add(s),Reflect.defineProperty(o,s,a)},getPrototypeOf:()=>Object.prototype});return i[ka]=function(){let o={...this};return delete o[ka],o},i}function am(e){let r=new Map;for(let t of e){let n=t.getKeys();for(let i of n)r.set(i,t)}return r}function _a(e,r){return e.filter(t=>r.get(t)?.has?.(t)??!0)}function Fr(e){return{getKeys(){return e},has(){return!1},getPropertyValue(){}}}function Mr(e,r){return{batch:e,transaction:r?.kind==="batch"?{isolationLevel:r.options.isolationLevel}:void 0}}function Na(e){if(e===void 0)return"";let r=_r(e);return new Ar(0,{colors:Cn}).write(r).toString()}var lm="P2037";function $r({error:e,user_facing_error:r},t,n){return r.error_code?new z(um(r,n),{code:r.error_code,clientVersion:t,meta:r.meta,batchRequestIdx:r.batch_request_idx}):new V(e,{clientVersion:t,batchRequestIdx:r.batch_request_idx})}function um(e,r){let t=e.message;return(r==="postgresql"||r==="postgres"||r==="mysql")&&e.error_code===lm&&(t+=` +Prisma Accelerate has built-in connection pooling to prevent such errors: https://pris.ly/client/error-accelerate`),t}var vt="";function La(e){var r=e.split(` +`);return r.reduce(function(t,n){var i=dm(n)||fm(n)||ym(n)||xm(n)||Em(n);return i&&t.push(i),t},[])}var cm=/^\s*at (.*?) ?\(((?:file|https?|blob|chrome-extension|native|eval|webpack|rsc||\/|[a-z]:\\|\\\\).*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,pm=/\((\S*)(?::(\d+))(?::(\d+))\)/;function dm(e){var r=cm.exec(e);if(!r)return null;var t=r[2]&&r[2].indexOf("native")===0,n=r[2]&&r[2].indexOf("eval")===0,i=pm.exec(r[2]);return n&&i!=null&&(r[2]=i[1],r[3]=i[2],r[4]=i[3]),{file:t?null:r[2],methodName:r[1]||vt,arguments:t?[r[2]]:[],lineNumber:r[3]?+r[3]:null,column:r[4]?+r[4]:null}}var mm=/^\s*at (?:((?:\[object object\])?.+) )?\(?((?:file|ms-appx|https?|webpack|rsc|blob):.*?):(\d+)(?::(\d+))?\)?\s*$/i;function fm(e){var r=mm.exec(e);return r?{file:r[2],methodName:r[1]||vt,arguments:[],lineNumber:+r[3],column:r[4]?+r[4]:null}:null}var gm=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)((?:file|https?|blob|chrome|webpack|rsc|resource|\[native).*?|[^@]*bundle)(?::(\d+))?(?::(\d+))?\s*$/i,hm=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i;function ym(e){var r=gm.exec(e);if(!r)return null;var t=r[3]&&r[3].indexOf(" > eval")>-1,n=hm.exec(r[3]);return t&&n!=null&&(r[3]=n[1],r[4]=n[2],r[5]=null),{file:r[3],methodName:r[1]||vt,arguments:r[2]?r[2].split(","):[],lineNumber:r[4]?+r[4]:null,column:r[5]?+r[5]:null}}var bm=/^\s*(?:([^@]*)(?:\((.*?)\))?@)?(\S.*?):(\d+)(?::(\d+))?\s*$/i;function Em(e){var r=bm.exec(e);return r?{file:r[3],methodName:r[1]||vt,arguments:[],lineNumber:+r[4],column:r[5]?+r[5]:null}:null}var wm=/^\s*at (?:((?:\[object object\])?[^\\/]+(?: \[as \S+\])?) )?\(?(.*?):(\d+)(?::(\d+))?\)?\s*$/i;function xm(e){var r=wm.exec(e);return r?{file:r[2],methodName:r[1]||vt,arguments:[],lineNumber:+r[3],column:r[4]?+r[4]:null}:null}var oo=class{getLocation(){return null}},so=class{_error;constructor(){this._error=new Error}getLocation(){let r=this._error.stack;if(!r)return null;let n=La(r).find(i=>{if(!i.file)return!1;let o=Li(i.file);return o!==""&&!o.includes("@prisma")&&!o.includes("/packages/client/src/runtime/")&&!o.endsWith("/runtime/binary.js")&&!o.endsWith("/runtime/library.js")&&!o.endsWith("/runtime/edge.js")&&!o.endsWith("/runtime/edge-esm.js")&&!o.startsWith("internal/")&&!i.methodName.includes("new ")&&!i.methodName.includes("getCallSite")&&!i.methodName.includes("Proxy.")&&i.methodName.split(".").length<4});return!n||!n.file?null:{fileName:n.file,lineNumber:n.lineNumber,columnNumber:n.column}}};function Ze(e){return e==="minimal"?typeof $EnabledCallSite=="function"&&e!=="minimal"?new $EnabledCallSite:new oo:new so}var Fa={_avg:!0,_count:!0,_sum:!0,_min:!0,_max:!0};function qr(e={}){let r=Pm(e);return Object.entries(r).reduce((n,[i,o])=>(Fa[i]!==void 0?n.select[i]={select:o}:n[i]=o,n),{select:{}})}function Pm(e={}){return typeof e._count=="boolean"?{...e,_count:{_all:e._count}}:e}function Un(e={}){return r=>(typeof e._count=="boolean"&&(r._count=r._count._all),r)}function Ma(e,r){let t=Un(e);return r({action:"aggregate",unpacker:t,argsMapper:qr})(e)}function Tm(e={}){let{select:r,...t}=e;return typeof r=="object"?qr({...t,_count:r}):qr({...t,_count:{_all:!0}})}function Sm(e={}){return typeof e.select=="object"?r=>Un(e)(r)._count:r=>Un(e)(r)._count._all}function $a(e,r){return r({action:"count",unpacker:Sm(e),argsMapper:Tm})(e)}function Rm(e={}){let r=qr(e);if(Array.isArray(r.by))for(let t of r.by)typeof t=="string"&&(r.select[t]=!0);else typeof r.by=="string"&&(r.select[r.by]=!0);return r}function Am(e={}){return r=>(typeof e?._count=="boolean"&&r.forEach(t=>{t._count=t._count._all}),r)}function qa(e,r){return r({action:"groupBy",unpacker:Am(e),argsMapper:Rm})(e)}function Va(e,r,t){if(r==="aggregate")return n=>Ma(n,t);if(r==="count")return n=>$a(n,t);if(r==="groupBy")return n=>qa(n,t)}function ja(e,r){let t=r.fields.filter(i=>!i.relationName),n=_s(t,"name");return new Proxy({},{get(i,o){if(o in i||typeof o=="symbol")return i[o];let s=n[o];if(s)return new mt(e,o,s.type,s.isList,s.kind==="enum")},...Bn(Object.keys(n))})}var Ba=e=>Array.isArray(e)?e:e.split("."),ao=(e,r)=>Ba(r).reduce((t,n)=>t&&t[n],e),Ua=(e,r,t)=>Ba(r).reduceRight((n,i,o,s)=>Object.assign({},ao(e,s.slice(0,o)),{[i]:n}),t);function Cm(e,r){return e===void 0||r===void 0?[]:[...r,"select",e]}function Im(e,r,t){return r===void 0?e??{}:Ua(r,t,e||!0)}function lo(e,r,t,n,i,o){let a=e._runtimeDataModel.models[r].fields.reduce((l,u)=>({...l,[u.name]:u}),{});return l=>{let u=Ze(e._errorFormat),c=Cm(n,i),p=Im(l,o,c),d=t({dataPath:c,callsite:u})(p),f=Dm(e,r);return new Proxy(d,{get(h,g){if(!f.includes(g))return h[g];let T=[a[g].type,t,g],S=[c,p];return lo(e,...T,...S)},...Bn([...f,...Object.getOwnPropertyNames(d)])})}}function Dm(e,r){return e._runtimeDataModel.models[r].fields.filter(t=>t.kind==="object").map(t=>t.name)}var Om=["findUnique","findUniqueOrThrow","findFirst","findFirstOrThrow","create","update","upsert","delete"],km=["aggregate","count","groupBy"];function uo(e,r){let t=e._extensions.getAllModelExtensions(r)??{},n=[_m(e,r),Lm(e,r),xt(t),re("name",()=>r),re("$name",()=>r),re("$parent",()=>e._appliedParent)];return he({},n)}function _m(e,r){let t=Te(r),n=Object.keys(Rr).concat("count");return{getKeys(){return n},getPropertyValue(i){let o=i,s=a=>l=>{let u=Ze(e._errorFormat);return e._createPrismaPromise(c=>{let p={args:l,dataPath:[],action:o,model:r,clientMethod:`${t}.${i}`,jsModelName:t,transaction:c,callsite:u};return e._request({...p,...a})},{action:o,args:l,model:r})};return Om.includes(o)?lo(e,r,s):Nm(i)?Va(e,i,s):s({})}}}function Nm(e){return km.includes(e)}function Lm(e,r){return lr(re("fields",()=>{let t=e._runtimeDataModel.models[r];return ja(r,t)}))}function Ga(e){return e.replace(/^./,r=>r.toUpperCase())}var co=Symbol();function Pt(e){let r=[Fm(e),Mm(e),re(co,()=>e),re("$parent",()=>e._appliedParent)],t=e._extensions.getAllClientExtensions();return t&&r.push(xt(t)),he(e,r)}function Fm(e){let r=Object.getPrototypeOf(e._originalClient),t=[...new Set(Object.getOwnPropertyNames(r))];return{getKeys(){return t},getPropertyValue(n){return e[n]}}}function Mm(e){let r=Object.keys(e._runtimeDataModel.models),t=r.map(Te),n=[...new Set(r.concat(t))];return lr({getKeys(){return n},getPropertyValue(i){let o=Ga(i);if(e._runtimeDataModel.models[o]!==void 0)return uo(e,o);if(e._runtimeDataModel.models[i]!==void 0)return uo(e,i)},getPropertyDescriptor(i){if(!t.includes(i))return{enumerable:!1}}})}function Qa(e){return e[co]?e[co]:e}function Wa(e){if(typeof e=="function")return e(this);if(e.client?.__AccelerateEngine){let t=e.client.__AccelerateEngine;this._originalClient._engine=new t(this._originalClient._accelerateEngineConfig)}let r=Object.create(this._originalClient,{_extensions:{value:this._extensions.append(e)},_appliedParent:{value:this,configurable:!0},$on:{value:void 0}});return Pt(r)}function Ja({result:e,modelName:r,select:t,omit:n,extensions:i}){let o=i.getAllComputedFields(r);if(!o)return e;let s=[],a=[];for(let l of Object.values(o)){if(n){if(n[l.name])continue;let u=l.needs.filter(c=>n[c]);u.length>0&&a.push(Fr(u))}else if(t){if(!t[l.name])continue;let u=l.needs.filter(c=>!t[c]);u.length>0&&a.push(Fr(u))}$m(e,l.needs)&&s.push(qm(l,he(e,s)))}return s.length>0||a.length>0?he(e,[...s,...a]):e}function $m(e,r){return r.every(t=>Vi(e,t))}function qm(e,r){return lr(re(e.name,()=>e.compute(r)))}function Gn({visitor:e,result:r,args:t,runtimeDataModel:n,modelName:i}){if(Array.isArray(r)){for(let s=0;sc.name===o);if(!l||l.kind!=="object"||!l.relationName)continue;let u=typeof s=="object"?s:{};r[o]=Gn({visitor:i,result:r[o],args:u,modelName:l.type,runtimeDataModel:n})}}function Ha({result:e,modelName:r,args:t,extensions:n,runtimeDataModel:i,globalOmit:o}){return n.isEmpty()||e==null||typeof e!="object"||!i.models[r]?e:Gn({result:e,args:t??{},modelName:r,runtimeDataModel:i,visitor:(a,l,u)=>{let c=Te(l);return Ja({result:a,modelName:c,select:u.select,omit:u.select?void 0:{...o?.[c],...u.omit},extensions:n})}})}var Vm=["$connect","$disconnect","$on","$transaction","$extends"],Ya=Vm;function za(e){if(e instanceof ie)return jm(e);if(Vn(e))return Bm(e);if(Array.isArray(e)){let t=[e[0]];for(let n=1;n{let o=r.customDataProxyFetch;return"transaction"in r&&i!==void 0&&(r.transaction?.kind==="batch"&&r.transaction.lock.then(),r.transaction=i),n===t.length?e._executeRequest(r):t[n]({model:r.model,operation:r.model?r.action:r.clientMethod,args:za(r.args??{}),__internalParams:r,query:(s,a=r)=>{let l=a.customDataProxyFetch;return a.customDataProxyFetch=nl(o,l),a.args=s,Xa(e,a,t,n+1)}})})}function el(e,r){let{jsModelName:t,action:n,clientMethod:i}=r,o=t?n:i;if(e._extensions.isEmpty())return e._executeRequest(r);let s=e._extensions.getAllQueryCallbacks(t??"$none",o);return Xa(e,r,s)}function rl(e){return r=>{let t={requests:r},n=r[0].extensions.getAllBatchQueryCallbacks();return n.length?tl(t,n,0,e):e(t)}}function tl(e,r,t,n){if(t===r.length)return n(e);let i=e.customDataProxyFetch,o=e.requests[0].transaction;return r[t]({args:{queries:e.requests.map(s=>({model:s.modelName,operation:s.action,args:s.args})),transaction:o?{isolationLevel:o.kind==="batch"?o.isolationLevel:void 0}:void 0},__internalParams:e,query(s,a=e){let l=a.customDataProxyFetch;return a.customDataProxyFetch=nl(i,l),tl(a,r,t+1,n)}})}var Za=e=>e;function nl(e=Za,r=Za){return t=>e(r(t))}var il=N("prisma:client"),ol={Vercel:"vercel","Netlify CI":"netlify"};function sl({postinstall:e,ciName:r,clientVersion:t,generator:n}){if(il("checkPlatformCaching:postinstall",e),il("checkPlatformCaching:ciName",r),e===!0&&!(n?.output&&typeof(n.output.fromEnvVar??n.output.value)=="string")&&r&&r in ol){let i=`Prisma has detected that this project was built on ${r}, which caches dependencies. This leads to an outdated Prisma Client because Prisma's auto-generation isn't triggered. To fix this, make sure to run the \`prisma generate\` command during the build process. -Learn how: https://pris.ly/d/${ol[r]}-build`; - throw (console.error(i), new P(i, t)); - } -} -function al(e, r) { - return e - ? e.datasources - ? e.datasources - : e.datasourceUrl - ? { [r[0]]: { url: e.datasourceUrl } } - : {} - : {}; -} -var dl = O(require("node:fs")), - St = O(require("node:path")); -function Qn(e) { - let { runtimeBinaryTarget: r } = e; - return `Add "${r}" to \`binaryTargets\` in the "schema.prisma" file and run \`prisma generate\` after saving it: +Learn how: https://pris.ly/d/${ol[r]}-build`;throw console.error(i),new P(i,t)}}function al(e,r){return e?e.datasources?e.datasources:e.datasourceUrl?{[r[0]]:{url:e.datasourceUrl}}:{}:{}}var dl=O(require("node:fs")),St=O(require("node:path"));function Qn(e){let{runtimeBinaryTarget:r}=e;return`Add "${r}" to \`binaryTargets\` in the "schema.prisma" file and run \`prisma generate\` after saving it: -${Um(e)}`; -} -function Um(e) { - let { generator: r, generatorBinaryTargets: t, runtimeBinaryTarget: n } = e, - i = { fromEnvVar: null, value: n }, - o = [...t, i]; - return ki({ ...r, binaryTargets: o }); -} -function Xe(e) { - let { runtimeBinaryTarget: r } = e; - return `Prisma Client could not locate the Query Engine for runtime "${r}".`; -} -function er(e) { - let { searchedLocations: r } = e; - return `The following locations have been searched: -${[...new Set(r)].map((i) => ` ${i}`).join(` -`)}`; -} -function ll(e) { - let { runtimeBinaryTarget: r } = e; - return `${Xe(e)} +${Um(e)}`}function Um(e){let{generator:r,generatorBinaryTargets:t,runtimeBinaryTarget:n}=e,i={fromEnvVar:null,value:n},o=[...t,i];return ki({...r,binaryTargets:o})}function Xe(e){let{runtimeBinaryTarget:r}=e;return`Prisma Client could not locate the Query Engine for runtime "${r}".`}function er(e){let{searchedLocations:r}=e;return`The following locations have been searched: +${[...new Set(r)].map(i=>` ${i}`).join(` +`)}`}function ll(e){let{runtimeBinaryTarget:r}=e;return`${Xe(e)} This happened because \`binaryTargets\` have been pinned, but the actual deployment also required "${r}". ${Qn(e)} -${er(e)}`; -} -function Wn(e) { - return `We would appreciate if you could take the time to share some information with us. -Please help us by answering a few questions: https://pris.ly/${e}`; -} -function Jn(e) { - let { errorStack: r } = e; - return r?.match(/\/\.next|\/next@|\/next\//) - ? ` +${er(e)}`}function Wn(e){return`We would appreciate if you could take the time to share some information with us. +Please help us by answering a few questions: https://pris.ly/${e}`}function Jn(e){let{errorStack:r}=e;return r?.match(/\/\.next|\/next@|\/next\//)?` -We detected that you are using Next.js, learn how to fix this: https://pris.ly/d/engine-not-found-nextjs.` - : ""; -} -function ul(e) { - let { queryEngineName: r } = e; - return `${Xe(e)}${Jn(e)} +We detected that you are using Next.js, learn how to fix this: https://pris.ly/d/engine-not-found-nextjs.`:""}function ul(e){let{queryEngineName:r}=e;return`${Xe(e)}${Jn(e)} This is likely caused by a bundler that has not copied "${r}" next to the resulting bundle. Ensure that "${r}" has been copied next to the bundle or in "${e.expectedLocation}". ${Wn("engine-not-found-bundler-investigation")} -${er(e)}`; -} -function cl(e) { - let { runtimeBinaryTarget: r, generatorBinaryTargets: t } = e, - n = t.find((i) => i.native); - return `${Xe(e)} +${er(e)}`}function cl(e){let{runtimeBinaryTarget:r,generatorBinaryTargets:t}=e,n=t.find(i=>i.native);return`${Xe(e)} -This happened because Prisma Client was generated for "${n?.value ?? "unknown"}", but the actual deployment required "${r}". +This happened because Prisma Client was generated for "${n?.value??"unknown"}", but the actual deployment required "${r}". ${Qn(e)} -${er(e)}`; -} -function pl(e) { - let { queryEngineName: r } = e; - return `${Xe(e)}${Jn(e)} +${er(e)}`}function pl(e){let{queryEngineName:r}=e;return`${Xe(e)}${Jn(e)} This is likely caused by tooling that has not copied "${r}" to the deployment folder. Ensure that you ran \`prisma generate\` and that "${r}" has been copied to "${e.expectedLocation}". ${Wn("engine-not-found-tooling-investigation")} -${er(e)}`; -} -var Gm = N("prisma:client:engines:resolveEnginePath"), - Qm = () => new RegExp("runtime[\\\\/]library\\.m?js$"); -async function ml(e, r) { - let t = - { - binary: process.env.PRISMA_QUERY_ENGINE_BINARY, - library: process.env.PRISMA_QUERY_ENGINE_LIBRARY, - }[e] ?? r.prismaPath; - if (t !== void 0) return t; - let { enginePath: n, searchedLocations: i } = await Wm(e, r); - if ( - (Gm("enginePath", n), n !== void 0 && e === "binary" && Ri(n), n !== void 0) - ) - return (r.prismaPath = n); - let o = await ir(), - s = r.generator?.binaryTargets ?? [], - a = s.some((d) => d.native), - l = !s.some((d) => d.value === o), - u = __filename.match(Qm()) === null, - c = { - searchedLocations: i, - generatorBinaryTargets: s, - generator: r.generator, - runtimeBinaryTarget: o, - queryEngineName: fl(e, o), - expectedLocation: St.default.relative(process.cwd(), r.dirname), - errorStack: new Error().stack, - }, - p; - throw ( - a && l ? (p = cl(c)) : l ? (p = ll(c)) : u ? (p = ul(c)) : (p = pl(c)), - new P(p, r.clientVersion) - ); -} -async function Wm(e, r) { - let t = await ir(), - n = [], - i = [ - r.dirname, - St.default.resolve(__dirname, ".."), - r.generator?.output?.value ?? __dirname, - St.default.resolve(__dirname, "../../../.prisma/client"), - "/tmp/prisma-engines", - r.cwd, - ]; - __filename.includes("resolveEnginePath") && i.push(ms()); - for (let o of i) { - let s = fl(e, t), - a = St.default.join(o, s); - if ((n.push(o), dl.default.existsSync(a))) - return { enginePath: a, searchedLocations: n }; - } - return { enginePath: void 0, searchedLocations: n }; -} -function fl(e, r) { - return e === "library" - ? Gt(r, "fs") - : `query-engine-${r}${r === "windows" ? ".exe" : ""}`; -} -function gl(e) { - return e - ? e - .replace(/".*"/g, '"X"') - .replace(/[\s:\[]([+-]?([0-9]*[.])?[0-9]+)/g, (r) => `${r[0]}5`) - : ""; -} -function hl(e) { - return e - .split( - ` -`, - ) - .map((r) => - r - .replace( - /^\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)\s*/, - "", - ) - .replace(/\+\d+\s*ms$/, ""), - ).join(` -`); -} -var yl = O(Os()); -function bl({ - title: e, - user: r = "prisma", - repo: t = "prisma", - template: n = "bug_report.yml", - body: i, -}) { - return (0, yl.default)({ user: r, repo: t, template: n, title: e, body: i }); -} -function El({ - version: e, - binaryTarget: r, - title: t, - description: n, - engineVersion: i, - database: o, - query: s, -}) { - let a = Bo(6e3 - (s?.length ?? 0)), - l = hl(wr(a)), - u = n - ? `# Description +${er(e)}`}var Gm=N("prisma:client:engines:resolveEnginePath"),Qm=()=>new RegExp("runtime[\\\\/]library\\.m?js$");async function ml(e,r){let t={binary:process.env.PRISMA_QUERY_ENGINE_BINARY,library:process.env.PRISMA_QUERY_ENGINE_LIBRARY}[e]??r.prismaPath;if(t!==void 0)return t;let{enginePath:n,searchedLocations:i}=await Wm(e,r);if(Gm("enginePath",n),n!==void 0&&e==="binary"&&Ri(n),n!==void 0)return r.prismaPath=n;let o=await ir(),s=r.generator?.binaryTargets??[],a=s.some(d=>d.native),l=!s.some(d=>d.value===o),u=__filename.match(Qm())===null,c={searchedLocations:i,generatorBinaryTargets:s,generator:r.generator,runtimeBinaryTarget:o,queryEngineName:fl(e,o),expectedLocation:St.default.relative(process.cwd(),r.dirname),errorStack:new Error().stack},p;throw a&&l?p=cl(c):l?p=ll(c):u?p=ul(c):p=pl(c),new P(p,r.clientVersion)}async function Wm(e,r){let t=await ir(),n=[],i=[r.dirname,St.default.resolve(__dirname,".."),r.generator?.output?.value??__dirname,St.default.resolve(__dirname,"../../../.prisma/client"),"/tmp/prisma-engines",r.cwd];__filename.includes("resolveEnginePath")&&i.push(ms());for(let o of i){let s=fl(e,t),a=St.default.join(o,s);if(n.push(o),dl.default.existsSync(a))return{enginePath:a,searchedLocations:n}}return{enginePath:void 0,searchedLocations:n}}function fl(e,r){return e==="library"?Gt(r,"fs"):`query-engine-${r}${r==="windows"?".exe":""}`}function gl(e){return e?e.replace(/".*"/g,'"X"').replace(/[\s:\[]([+-]?([0-9]*[.])?[0-9]+)/g,r=>`${r[0]}5`):""}function hl(e){return e.split(` +`).map(r=>r.replace(/^\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)\s*/,"").replace(/\+\d+\s*ms$/,"")).join(` +`)}var yl=O(Os());function bl({title:e,user:r="prisma",repo:t="prisma",template:n="bug_report.yml",body:i}){return(0,yl.default)({user:r,repo:t,template:n,title:e,body:i})}function El({version:e,binaryTarget:r,title:t,description:n,engineVersion:i,database:o,query:s}){let a=Bo(6e3-(s?.length??0)),l=hl(wr(a)),u=n?`# Description \`\`\` ${n} -\`\`\`` - : "", - c = wr(`Hi Prisma Team! My Prisma Client just crashed. This is the report: +\`\`\``:"",c=wr(`Hi Prisma Team! My Prisma Client just crashed. This is the report: ## Versions | Name | Version | @@ -7736,11 +100,9 @@ ${l} ## Prisma Engine Query \`\`\` -${s ? gl(s) : ""} +${s?gl(s):""} \`\`\` -`), - p = bl({ title: t, body: c }); - return `${t} +`),p=bl({title:t,body:c});return`${t} This is a non-recoverable error which probably happens when the Prisma Query Engine has a panic. @@ -7749,2884 +111,28 @@ ${Y(p)} If you want the Prisma team to look into it, please open the link above \u{1F64F} To increase the chance of success, please post your schema and a snippet of how you used Prisma Client in the issue. -`; -} -function wl(e, r) { - throw new Error(r); -} -function Jm(e) { - return e !== null && typeof e == "object" && typeof e.$type == "string"; -} -function Km(e, r) { - let t = {}; - for (let n of Object.keys(e)) t[n] = r(e[n], n); - return t; -} -function Vr(e) { - return e === null - ? e - : Array.isArray(e) - ? e.map(Vr) - : typeof e == "object" - ? Jm(e) - ? Hm(e) - : e.constructor !== null && e.constructor.name !== "Object" - ? e - : Km(e, Vr) - : e; -} -function Hm({ $type: e, value: r }) { - switch (e) { - case "BigInt": - return BigInt(r); - case "Bytes": { - let { - buffer: t, - byteOffset: n, - byteLength: i, - } = Buffer.from(r, "base64"); - return new Uint8Array(t, n, i); - } - case "DateTime": - return new Date(r); - case "Decimal": - return new Le(r); - case "Json": - return JSON.parse(r); - default: - wl(r, "Unknown tagged value"); - } -} -var xl = "6.19.2"; -var zm = () => globalThis.process?.release?.name === "node", - Zm = () => !!globalThis.Bun || !!globalThis.process?.versions?.bun, - Xm = () => !!globalThis.Deno, - ef = () => typeof globalThis.Netlify == "object", - rf = () => typeof globalThis.EdgeRuntime == "object", - tf = () => globalThis.navigator?.userAgent === "Cloudflare-Workers"; -function nf() { - return ( - [ - [ef, "netlify"], - [rf, "edge-light"], - [tf, "workerd"], - [Xm, "deno"], - [Zm, "bun"], - [zm, "node"], - ] - .flatMap((t) => (t[0]() ? [t[1]] : [])) - .at(0) ?? "" - ); -} -var of = { - node: "Node.js", - workerd: "Cloudflare Workers", - deno: "Deno and Deno Deploy", - netlify: "Netlify Edge Functions", - "edge-light": - "Edge Runtime (Vercel Edge Functions, Vercel Edge Middleware, Next.js (Pages Router) Edge API Routes, Next.js (App Router) Edge Route Handlers or Next.js Middleware)", -}; -function Kn() { - let e = nf(); - return { - id: e, - prettyName: of[e] || e, - isEdge: ["workerd", "deno", "netlify", "edge-light"].includes(e), - }; -} -function jr({ - inlineDatasources: e, - overrideDatasources: r, - env: t, - clientVersion: n, -}) { - let i, - o = Object.keys(e)[0], - s = e[o]?.url, - a = r[o]?.url; - if ( - (o === void 0 - ? (i = void 0) - : a - ? (i = a) - : s?.value - ? (i = s.value) - : s?.fromEnvVar && (i = t[s.fromEnvVar]), - s?.fromEnvVar !== void 0 && i === void 0) - ) - throw new P(`error: Environment variable not found: ${s.fromEnvVar}.`, n); - if (i === void 0) - throw new P( - "error: Missing URL environment variable, value, or override.", - n, - ); - return i; -} -var Hn = class extends Error { - clientVersion; - cause; - constructor(r, t) { - (super(r), (this.clientVersion = t.clientVersion), (this.cause = t.cause)); - } - get [Symbol.toStringTag]() { - return this.name; - } -}; -var oe = class extends Hn { - isRetryable; - constructor(r, t) { - (super(r, t), (this.isRetryable = t.isRetryable ?? !0)); - } -}; -function R(e, r) { - return { ...e, isRetryable: r }; -} -var ur = class extends oe { - name = "InvalidDatasourceError"; - code = "P6001"; - constructor(r, t) { - super(r, R(t, !1)); - } -}; -x(ur, "InvalidDatasourceError"); -function vl(e) { - let r = { clientVersion: e.clientVersion }, - t = Object.keys(e.inlineDatasources)[0], - n = jr({ - inlineDatasources: e.inlineDatasources, - overrideDatasources: e.overrideDatasources, - clientVersion: e.clientVersion, - env: { ...e.env, ...(typeof process < "u" ? process.env : {}) }, - }), - i; - try { - i = new URL(n); - } catch { - throw new ur( - `Error validating datasource \`${t}\`: the URL must start with the protocol \`prisma://\``, - r, - ); - } - let { protocol: o, searchParams: s } = i; - if (o !== "prisma:" && o !== sn) - throw new ur( - `Error validating datasource \`${t}\`: the URL must start with the protocol \`prisma://\` or \`prisma+postgres://\``, - r, - ); - let a = s.get("api_key"); - if (a === null || a.length < 1) - throw new ur( - `Error validating datasource \`${t}\`: the URL must contain a valid API key`, - r, - ); - let l = Ii(i) ? "http:" : "https:"; - process.env.TEST_CLIENT_ENGINE_REMOTE_EXECUTOR && - i.searchParams.has("use_http") && - (l = "http:"); - let u = new URL(i.href.replace(o, l)); - return { apiKey: a, url: u }; -} -var Pl = O(on()), - Yn = class { - apiKey; - tracingHelper; - logLevel; - logQueries; - engineHash; - constructor({ - apiKey: r, - tracingHelper: t, - logLevel: n, - logQueries: i, - engineHash: o, - }) { - ((this.apiKey = r), - (this.tracingHelper = t), - (this.logLevel = n), - (this.logQueries = i), - (this.engineHash = o)); - } - build({ traceparent: r, transactionId: t } = {}) { - let n = { - Accept: "application/json", - Authorization: `Bearer ${this.apiKey}`, - "Content-Type": "application/json", - "Prisma-Engine-Hash": this.engineHash, - "Prisma-Engine-Version": Pl.enginesVersion, - }; - (this.tracingHelper.isEnabled() && - (n.traceparent = r ?? this.tracingHelper.getTraceParent()), - t && (n["X-Transaction-Id"] = t)); - let i = this.#e(); - return (i.length > 0 && (n["X-Capture-Telemetry"] = i.join(", ")), n); - } - #e() { - let r = []; - return ( - this.tracingHelper.isEnabled() && r.push("tracing"), - this.logLevel && r.push(this.logLevel), - this.logQueries && r.push("query"), - r - ); - } - }; -function sf(e) { - return e[0] * 1e3 + e[1] / 1e6; -} -function po(e) { - return new Date(sf(e)); -} -var Br = class extends oe { - name = "ForcedRetryError"; - code = "P5001"; - constructor(r) { - super("This request must be retried", R(r, !0)); - } -}; -x(Br, "ForcedRetryError"); -var cr = class extends oe { - name = "NotImplementedYetError"; - code = "P5004"; - constructor(r, t) { - super(r, R(t, !1)); - } -}; -x(cr, "NotImplementedYetError"); -var $ = class extends oe { - response; - constructor(r, t) { - (super(r, t), (this.response = t.response)); - let n = this.response.headers.get("prisma-request-id"); - if (n) { - let i = `(The request id was: ${n})`; - this.message = this.message + " " + i; - } - } -}; -var pr = class extends $ { - name = "SchemaMissingError"; - code = "P5005"; - constructor(r) { - super("Schema needs to be uploaded", R(r, !0)); - } -}; -x(pr, "SchemaMissingError"); -var mo = "This request could not be understood by the server", - Rt = class extends $ { - name = "BadRequestError"; - code = "P5000"; - constructor(r, t, n) { - (super(t || mo, R(r, !1)), n && (this.code = n)); - } - }; -x(Rt, "BadRequestError"); -var At = class extends $ { - name = "HealthcheckTimeoutError"; - code = "P5013"; - logs; - constructor(r, t) { - (super("Engine not started: healthcheck timeout", R(r, !0)), - (this.logs = t)); - } -}; -x(At, "HealthcheckTimeoutError"); -var Ct = class extends $ { - name = "EngineStartupError"; - code = "P5014"; - logs; - constructor(r, t, n) { - (super(t, R(r, !0)), (this.logs = n)); - } -}; -x(Ct, "EngineStartupError"); -var It = class extends $ { - name = "EngineVersionNotSupportedError"; - code = "P5012"; - constructor(r) { - super("Engine version is not supported", R(r, !1)); - } -}; -x(It, "EngineVersionNotSupportedError"); -var fo = "Request timed out", - Dt = class extends $ { - name = "GatewayTimeoutError"; - code = "P5009"; - constructor(r, t = fo) { - super(t, R(r, !1)); - } - }; -x(Dt, "GatewayTimeoutError"); -var af = "Interactive transaction error", - Ot = class extends $ { - name = "InteractiveTransactionError"; - code = "P5015"; - constructor(r, t = af) { - super(t, R(r, !1)); - } - }; -x(Ot, "InteractiveTransactionError"); -var lf = "Request parameters are invalid", - kt = class extends $ { - name = "InvalidRequestError"; - code = "P5011"; - constructor(r, t = lf) { - super(t, R(r, !1)); - } - }; -x(kt, "InvalidRequestError"); -var go = "Requested resource does not exist", - _t = class extends $ { - name = "NotFoundError"; - code = "P5003"; - constructor(r, t = go) { - super(t, R(r, !1)); - } - }; -x(_t, "NotFoundError"); -var ho = "Unknown server error", - Ur = class extends $ { - name = "ServerError"; - code = "P5006"; - logs; - constructor(r, t, n) { - (super(t || ho, R(r, !0)), (this.logs = n)); - } - }; -x(Ur, "ServerError"); -var yo = "Unauthorized, check your connection string", - Nt = class extends $ { - name = "UnauthorizedError"; - code = "P5007"; - constructor(r, t = yo) { - super(t, R(r, !1)); - } - }; -x(Nt, "UnauthorizedError"); -var bo = "Usage exceeded, retry again later", - Lt = class extends $ { - name = "UsageExceededError"; - code = "P5008"; - constructor(r, t = bo) { - super(t, R(r, !0)); - } - }; -x(Lt, "UsageExceededError"); -async function uf(e) { - let r; - try { - r = await e.text(); - } catch { - return { type: "EmptyError" }; - } - try { - let t = JSON.parse(r); - if (typeof t == "string") - switch (t) { - case "InternalDataProxyError": - return { type: "DataProxyError", body: t }; - default: - return { type: "UnknownTextError", body: t }; - } - if (typeof t == "object" && t !== null) { - if ("is_panic" in t && "message" in t && "error_code" in t) - return { type: "QueryEngineError", body: t }; - if ( - "EngineNotStarted" in t || - "InteractiveTransactionMisrouted" in t || - "InvalidRequestError" in t - ) { - let n = Object.values(t)[0].reason; - return typeof n == "string" && - !["SchemaMissing", "EngineVersionNotSupported"].includes(n) - ? { type: "UnknownJsonError", body: t } - : { type: "DataProxyError", body: t }; - } - } - return { type: "UnknownJsonError", body: t }; - } catch { - return r === "" - ? { type: "EmptyError" } - : { type: "UnknownTextError", body: r }; - } -} -async function Ft(e, r) { - if (e.ok) return; - let t = { clientVersion: r, response: e }, - n = await uf(e); - if (n.type === "QueryEngineError") - throw new z(n.body.message, { code: n.body.error_code, clientVersion: r }); - if (n.type === "DataProxyError") { - if (n.body === "InternalDataProxyError") - throw new Ur(t, "Internal Data Proxy error"); - if ("EngineNotStarted" in n.body) { - if (n.body.EngineNotStarted.reason === "SchemaMissing") return new pr(t); - if (n.body.EngineNotStarted.reason === "EngineVersionNotSupported") - throw new It(t); - if ("EngineStartupError" in n.body.EngineNotStarted.reason) { - let { msg: i, logs: o } = - n.body.EngineNotStarted.reason.EngineStartupError; - throw new Ct(t, i, o); - } - if ("KnownEngineStartupError" in n.body.EngineNotStarted.reason) { - let { msg: i, error_code: o } = - n.body.EngineNotStarted.reason.KnownEngineStartupError; - throw new P(i, r, o); - } - if ("HealthcheckTimeout" in n.body.EngineNotStarted.reason) { - let { logs: i } = n.body.EngineNotStarted.reason.HealthcheckTimeout; - throw new At(t, i); - } - } - if ("InteractiveTransactionMisrouted" in n.body) { - let i = { - IDParseError: "Could not parse interactive transaction ID", - NoQueryEngineFoundError: - "Could not find Query Engine for the specified host and transaction ID", - TransactionStartError: "Could not start interactive transaction", - }; - throw new Ot(t, i[n.body.InteractiveTransactionMisrouted.reason]); - } - if ("InvalidRequestError" in n.body) - throw new kt(t, n.body.InvalidRequestError.reason); - } - if (e.status === 401 || e.status === 403) throw new Nt(t, Gr(yo, n)); - if (e.status === 404) return new _t(t, Gr(go, n)); - if (e.status === 429) throw new Lt(t, Gr(bo, n)); - if (e.status === 504) throw new Dt(t, Gr(fo, n)); - if (e.status >= 500) throw new Ur(t, Gr(ho, n)); - if (e.status >= 400) throw new Rt(t, Gr(mo, n)); -} -function Gr(e, r) { - return r.type === "EmptyError" ? e : `${e}: ${JSON.stringify(r)}`; -} -function Tl(e) { - let r = Math.pow(2, e) * 50, - t = Math.ceil(Math.random() * r) - Math.ceil(r / 2), - n = r + t; - return new Promise((i) => setTimeout(() => i(n), n)); -} -var $e = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; -function Sl(e) { - let r = new TextEncoder().encode(e), - t = "", - n = r.byteLength, - i = n % 3, - o = n - i, - s, - a, - l, - u, - c; - for (let p = 0; p < o; p = p + 3) - ((c = (r[p] << 16) | (r[p + 1] << 8) | r[p + 2]), - (s = (c & 16515072) >> 18), - (a = (c & 258048) >> 12), - (l = (c & 4032) >> 6), - (u = c & 63), - (t += $e[s] + $e[a] + $e[l] + $e[u])); - return ( - i == 1 - ? ((c = r[o]), - (s = (c & 252) >> 2), - (a = (c & 3) << 4), - (t += $e[s] + $e[a] + "==")) - : i == 2 && - ((c = (r[o] << 8) | r[o + 1]), - (s = (c & 64512) >> 10), - (a = (c & 1008) >> 4), - (l = (c & 15) << 2), - (t += $e[s] + $e[a] + $e[l] + "=")), - t - ); -} -function Rl(e) { - if ( - !!e.generator?.previewFeatures.some((t) => - t.toLowerCase().includes("metrics"), - ) - ) - throw new P( - "The `metrics` preview feature is not yet available with Accelerate.\nPlease remove `metrics` from the `previewFeatures` in your schema.\n\nMore information about Accelerate: https://pris.ly/d/accelerate", - e.clientVersion, - ); -} -var Al = { - "@prisma/debug": "workspace:*", - "@prisma/engines-version": "7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7", - "@prisma/fetch-engine": "workspace:*", - "@prisma/get-platform": "workspace:*", -}; -var Mt = class extends oe { - name = "RequestError"; - code = "P5010"; - constructor(r, t) { - super( - `Cannot fetch data from service: -${r}`, - R(t, !0), - ); - } -}; -x(Mt, "RequestError"); -async function dr(e, r, t = (n) => n) { - let { clientVersion: n, ...i } = r, - o = t(fetch); - try { - return await o(e, i); - } catch (s) { - let a = s.message ?? "Unknown error"; - throw new Mt(a, { clientVersion: n, cause: s }); - } -} -var pf = /^[1-9][0-9]*\.[0-9]+\.[0-9]+$/, - Cl = N("prisma:client:dataproxyEngine"); -async function df(e, r) { - let t = Al["@prisma/engines-version"], - n = r.clientVersion ?? "unknown"; - if ( - process.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION || - globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION - ) - return ( - process.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION || - globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION - ); - if (e.includes("accelerate") && n !== "0.0.0" && n !== "in-memory") return n; - let [i, o] = n?.split("-") ?? []; - if (o === void 0 && pf.test(i)) return i; - if (o !== void 0 || n === "0.0.0" || n === "in-memory") { - let [s] = t.split("-") ?? [], - [a, l, u] = s.split("."), - c = mf(`<=${a}.${l}.${u}`), - p = await dr(c, { clientVersion: n }); - if (!p.ok) - throw new Error( - `Failed to fetch stable Prisma version, unpkg.com status ${p.status} ${p.statusText}, response body: ${(await p.text()) || ""}`, - ); - let d = await p.text(); - Cl("length of body fetched from unpkg.com", d.length); - let f; - try { - f = JSON.parse(d); - } catch (h) { - throw ( - console.error("JSON.parse error: body fetched from unpkg.com: ", d), - h - ); - } - return f.version; - } - throw new cr( - "Only `major.minor.patch` versions are supported by Accelerate.", - { clientVersion: n }, - ); -} -async function Il(e, r) { - let t = await df(e, r); - return (Cl("version", t), t); -} -function mf(e) { - return encodeURI(`https://unpkg.com/prisma@${e}/package.json`); -} -var Dl = 3, - $t = N("prisma:client:dataproxyEngine"), - qt = class { - name = "DataProxyEngine"; - inlineSchema; - inlineSchemaHash; - inlineDatasources; - config; - logEmitter; - env; - clientVersion; - engineHash; - tracingHelper; - remoteClientVersion; - host; - headerBuilder; - startPromise; - protocol; - constructor(r) { - (Rl(r), - (this.config = r), - (this.env = r.env), - (this.inlineSchema = Sl(r.inlineSchema)), - (this.inlineDatasources = r.inlineDatasources), - (this.inlineSchemaHash = r.inlineSchemaHash), - (this.clientVersion = r.clientVersion), - (this.engineHash = r.engineVersion), - (this.logEmitter = r.logEmitter), - (this.tracingHelper = r.tracingHelper)); - } - apiKey() { - return this.headerBuilder.apiKey; - } - version() { - return this.engineHash; - } - async start() { - (this.startPromise !== void 0 && (await this.startPromise), - (this.startPromise = (async () => { - let { apiKey: r, url: t } = this.getURLAndAPIKey(); - ((this.host = t.host), - (this.protocol = t.protocol), - (this.headerBuilder = new Yn({ - apiKey: r, - tracingHelper: this.tracingHelper, - logLevel: this.config.logLevel ?? "error", - logQueries: this.config.logQueries, - engineHash: this.engineHash, - })), - (this.remoteClientVersion = await Il(this.host, this.config)), - $t("host", this.host), - $t("protocol", this.protocol)); - })()), - await this.startPromise); - } - async stop() {} - propagateResponseExtensions(r) { - (r?.logs?.length && - r.logs.forEach((t) => { - switch (t.level) { - case "debug": - case "trace": - $t(t); - break; - case "error": - case "warn": - case "info": { - this.logEmitter.emit(t.level, { - timestamp: po(t.timestamp), - message: t.attributes.message ?? "", - target: t.target ?? "BinaryEngine", - }); - break; - } - case "query": { - this.logEmitter.emit("query", { - query: t.attributes.query ?? "", - timestamp: po(t.timestamp), - duration: t.attributes.duration_ms ?? 0, - params: t.attributes.params ?? "", - target: t.target ?? "BinaryEngine", - }); - break; - } - default: - t.level; - } - }), - r?.traces?.length && this.tracingHelper.dispatchEngineSpans(r.traces)); - } - onBeforeExit() { - throw new Error( - '"beforeExit" hook is not applicable to the remote query engine', - ); - } - async url(r) { - return ( - await this.start(), - `${this.protocol}//${this.host}/${this.remoteClientVersion}/${this.inlineSchemaHash}/${r}` - ); - } - async uploadSchema() { - let r = { name: "schemaUpload", internal: !0 }; - return this.tracingHelper.runInChildSpan(r, async () => { - let t = await dr(await this.url("schema"), { - method: "PUT", - headers: this.headerBuilder.build(), - body: this.inlineSchema, - clientVersion: this.clientVersion, - }); - t.ok || $t("schema response status", t.status); - let n = await Ft(t, this.clientVersion); - if (n) - throw ( - this.logEmitter.emit("warn", { - message: `Error while uploading schema: ${n.message}`, - timestamp: new Date(), - target: "", - }), - n - ); - this.logEmitter.emit("info", { - message: `Schema (re)uploaded (hash: ${this.inlineSchemaHash})`, - timestamp: new Date(), - target: "", - }); - }); - } - request( - r, - { traceparent: t, interactiveTransaction: n, customDataProxyFetch: i }, - ) { - return this.requestInternal({ - body: r, - traceparent: t, - interactiveTransaction: n, - customDataProxyFetch: i, - }); - } - async requestBatch( - r, - { traceparent: t, transaction: n, customDataProxyFetch: i }, - ) { - let o = n?.kind === "itx" ? n.options : void 0, - s = Mr(r, n); - return ( - await this.requestInternal({ - body: s, - customDataProxyFetch: i, - interactiveTransaction: o, - traceparent: t, - }) - ).map( - (l) => ( - l.extensions && this.propagateResponseExtensions(l.extensions), - "errors" in l ? this.convertProtocolErrorsToClientError(l.errors) : l - ), - ); - } - requestInternal({ - body: r, - traceparent: t, - customDataProxyFetch: n, - interactiveTransaction: i, - }) { - return this.withRetry({ - actionGerund: "querying", - callback: async ({ logHttpCall: o }) => { - let s = i - ? `${i.payload.endpoint}/graphql` - : await this.url("graphql"); - o(s); - let a = await dr( - s, - { - method: "POST", - headers: this.headerBuilder.build({ - traceparent: t, - transactionId: i?.id, - }), - body: JSON.stringify(r), - clientVersion: this.clientVersion, - }, - n, - ); - (a.ok || $t("graphql response status", a.status), - await this.handleError(await Ft(a, this.clientVersion))); - let l = await a.json(); - if ( - (l.extensions && this.propagateResponseExtensions(l.extensions), - "errors" in l) - ) - throw this.convertProtocolErrorsToClientError(l.errors); - return "batchResult" in l ? l.batchResult : l; - }, - }); - } - async transaction(r, t, n) { - let i = { - start: "starting", - commit: "committing", - rollback: "rolling back", - }; - return this.withRetry({ - actionGerund: `${i[r]} transaction`, - callback: async ({ logHttpCall: o }) => { - if (r === "start") { - let s = JSON.stringify({ - max_wait: n.maxWait, - timeout: n.timeout, - isolation_level: n.isolationLevel, - }), - a = await this.url("transaction/start"); - o(a); - let l = await dr(a, { - method: "POST", - headers: this.headerBuilder.build({ traceparent: t.traceparent }), - body: s, - clientVersion: this.clientVersion, - }); - await this.handleError(await Ft(l, this.clientVersion)); - let u = await l.json(), - { extensions: c } = u; - c && this.propagateResponseExtensions(c); - let p = u.id, - d = u["data-proxy"].endpoint; - return { id: p, payload: { endpoint: d } }; - } else { - let s = `${n.payload.endpoint}/${r}`; - o(s); - let a = await dr(s, { - method: "POST", - headers: this.headerBuilder.build({ traceparent: t.traceparent }), - clientVersion: this.clientVersion, - }); - await this.handleError(await Ft(a, this.clientVersion)); - let l = await a.json(), - { extensions: u } = l; - u && this.propagateResponseExtensions(u); - return; - } - }, - }); - } - getURLAndAPIKey() { - return vl({ - clientVersion: this.clientVersion, - env: this.env, - inlineDatasources: this.inlineDatasources, - overrideDatasources: this.config.overrideDatasources, - }); - } - metrics() { - throw new cr("Metrics are not yet supported for Accelerate", { - clientVersion: this.clientVersion, - }); - } - async withRetry(r) { - for (let t = 0; ; t++) { - let n = (i) => { - this.logEmitter.emit("info", { - message: `Calling ${i} (n=${t})`, - timestamp: new Date(), - target: "", - }); - }; - try { - return await r.callback({ logHttpCall: n }); - } catch (i) { - if (!(i instanceof oe) || !i.isRetryable) throw i; - if (t >= Dl) throw i instanceof Br ? i.cause : i; - this.logEmitter.emit("warn", { - message: `Attempt ${t + 1}/${Dl} failed for ${r.actionGerund}: ${i.message ?? "(unknown)"}`, - timestamp: new Date(), - target: "", - }); - let o = await Tl(t); - this.logEmitter.emit("warn", { - message: `Retrying after ${o}ms`, - timestamp: new Date(), - target: "", - }); - } - } - } - async handleError(r) { - if (r instanceof pr) - throw ( - await this.uploadSchema(), - new Br({ clientVersion: this.clientVersion, cause: r }) - ); - if (r) throw r; - } - convertProtocolErrorsToClientError(r) { - return r.length === 1 - ? $r(r[0], this.config.clientVersion, this.config.activeProvider) - : new V(JSON.stringify(r), { - clientVersion: this.config.clientVersion, - }); - } - applyPendingMigrations() { - throw new Error("Method not implemented."); - } - }; -function Ol(e) { - if (e?.kind === "itx") return e.options.id; -} -var wo = O(require("node:os")), - kl = O(require("node:path")); -var Eo = Symbol("PrismaLibraryEngineCache"); -function ff() { - let e = globalThis; - return (e[Eo] === void 0 && (e[Eo] = {}), e[Eo]); -} -function gf(e) { - let r = ff(); - if (r[e] !== void 0) return r[e]; - let t = kl.default.toNamespacedPath(e), - n = { exports: {} }, - i = 0; - return ( - process.platform !== "win32" && - (i = - wo.default.constants.dlopen.RTLD_LAZY | - wo.default.constants.dlopen.RTLD_DEEPBIND), - process.dlopen(n, t, i), - (r[e] = n.exports), - n.exports - ); -} -var _l = { - async loadLibrary(e) { - let r = await fi(), - t = await ml("library", e); - try { - return e.tracingHelper.runInChildSpan( - { name: "loadLibrary", internal: !0 }, - () => gf(t), - ); - } catch (n) { - let i = Ai({ e: n, platformInfo: r, id: t }); - throw new P(i, e.clientVersion); - } - }, -}; -var xo, - Nl = { - async loadLibrary(e) { - let { clientVersion: r, adapter: t, engineWasm: n } = e; - if (t === void 0) - throw new P( - `The \`adapter\` option for \`PrismaClient\` is required in this context (${Kn().prettyName})`, - r, - ); - if (n === void 0) - throw new P("WASM engine was unexpectedly `undefined`", r); - xo === void 0 && - (xo = (async () => { - let o = await n.getRuntime(), - s = await n.getQueryEngineWasmModule(); - if (s == null) - throw new P( - "The loaded wasm module was unexpectedly `undefined` or `null` once loaded", - r, - ); - let a = { "./query_engine_bg.js": o }, - l = new WebAssembly.Instance(s, a), - u = l.exports.__wbindgen_start; - return (o.__wbg_set_wasm(l.exports), u(), o.QueryEngine); - })()); - let i = await xo; - return { - debugPanic() { - return Promise.reject("{}"); - }, - dmmf() { - return Promise.resolve("{}"); - }, - version() { - return { commit: "unknown", version: "unknown" }; - }, - QueryEngine: i, - }; - }, - }; -var hf = "P2036", - Re = N("prisma:client:libraryEngine"); -function yf(e) { - return e.item_type === "query" && "query" in e; -} -function bf(e) { - return "level" in e ? e.level === "error" && e.message === "PANIC" : !1; -} -var Ll = [...li, "native"], - Ef = 0xffffffffffffffffn, - vo = 1n; -function wf() { - let e = vo++; - return (vo > Ef && (vo = 1n), e); -} -var Qr = class { - name = "LibraryEngine"; - engine; - libraryInstantiationPromise; - libraryStartingPromise; - libraryStoppingPromise; - libraryStarted; - executingQueryPromise; - config; - QueryEngineConstructor; - libraryLoader; - library; - logEmitter; - libQueryEnginePath; - binaryTarget; - datasourceOverrides; - datamodel; - logQueries; - logLevel; - lastQuery; - loggerRustPanic; - tracingHelper; - adapterPromise; - versionInfo; - constructor(r, t) { - ((this.libraryLoader = t ?? _l), - r.engineWasm !== void 0 && (this.libraryLoader = t ?? Nl), - (this.config = r), - (this.libraryStarted = !1), - (this.logQueries = r.logQueries ?? !1), - (this.logLevel = r.logLevel ?? "error"), - (this.logEmitter = r.logEmitter), - (this.datamodel = r.inlineSchema), - (this.tracingHelper = r.tracingHelper), - r.enableDebugLogs && (this.logLevel = "debug")); - let n = Object.keys(r.overrideDatasources)[0], - i = r.overrideDatasources[n]?.url; - (n !== void 0 && i !== void 0 && (this.datasourceOverrides = { [n]: i }), - (this.libraryInstantiationPromise = this.instantiateLibrary())); - } - wrapEngine(r) { - return { - applyPendingMigrations: r.applyPendingMigrations?.bind(r), - commitTransaction: this.withRequestId(r.commitTransaction.bind(r)), - connect: this.withRequestId(r.connect.bind(r)), - disconnect: this.withRequestId(r.disconnect.bind(r)), - metrics: r.metrics?.bind(r), - query: this.withRequestId(r.query.bind(r)), - rollbackTransaction: this.withRequestId(r.rollbackTransaction.bind(r)), - sdlSchema: r.sdlSchema?.bind(r), - startTransaction: this.withRequestId(r.startTransaction.bind(r)), - trace: r.trace.bind(r), - free: r.free?.bind(r), - }; - } - withRequestId(r) { - return async (...t) => { - let n = wf().toString(); - try { - return await r(...t, n); - } finally { - if (this.tracingHelper.isEnabled()) { - let i = await this.engine?.trace(n); - if (i) { - let o = JSON.parse(i); - this.tracingHelper.dispatchEngineSpans(o.spans); - } - } - } - }; - } - async applyPendingMigrations() { - throw new Error( - "Cannot call this method from this type of engine instance", - ); - } - async transaction(r, t, n) { - await this.start(); - let i = await this.adapterPromise, - o = JSON.stringify(t), - s; - if (r === "start") { - let l = JSON.stringify({ - max_wait: n.maxWait, - timeout: n.timeout, - isolation_level: n.isolationLevel, - }); - s = await this.engine?.startTransaction(l, o); - } else - r === "commit" - ? (s = await this.engine?.commitTransaction(n.id, o)) - : r === "rollback" && - (s = await this.engine?.rollbackTransaction(n.id, o)); - let a = this.parseEngineResponse(s); - if (xf(a)) { - let l = this.getExternalAdapterError(a, i?.errorRegistry); - throw l - ? l.error - : new z(a.message, { - code: a.error_code, - clientVersion: this.config.clientVersion, - meta: a.meta, - }); - } else if (typeof a.message == "string") - throw new V(a.message, { clientVersion: this.config.clientVersion }); - return a; - } - async instantiateLibrary() { - if ((Re("internalSetup"), this.libraryInstantiationPromise)) - return this.libraryInstantiationPromise; - (ai(), - (this.binaryTarget = await this.getCurrentBinaryTarget()), - await this.tracingHelper.runInChildSpan("load_engine", () => - this.loadEngine(), - ), - this.version()); - } - async getCurrentBinaryTarget() { - { - if (this.binaryTarget) return this.binaryTarget; - let r = await this.tracingHelper.runInChildSpan("detect_platform", () => - ir(), - ); - if (!Ll.includes(r)) - throw new P( - `Unknown ${ce("PRISMA_QUERY_ENGINE_LIBRARY")} ${ce(W(r))}. Possible binaryTargets: ${qe(Ll.join(", "))} or a path to the query engine library. -You may have to run ${qe("prisma generate")} for your changes to take effect.`, - this.config.clientVersion, - ); - return r; - } - } - parseEngineResponse(r) { - if (!r) - throw new V("Response from the Engine was empty", { - clientVersion: this.config.clientVersion, - }); - try { - return JSON.parse(r); - } catch { - throw new V("Unable to JSON.parse response from engine", { - clientVersion: this.config.clientVersion, - }); - } - } - async loadEngine() { - if (!this.engine) { - this.QueryEngineConstructor || - ((this.library = await this.libraryLoader.loadLibrary(this.config)), - (this.QueryEngineConstructor = this.library.QueryEngine)); - try { - let r = new WeakRef(this); - this.adapterPromise || - (this.adapterPromise = this.config.adapter?.connect()?.then(tn)); - let t = await this.adapterPromise; - (t && Re("Using driver adapter: %O", t), - (this.engine = this.wrapEngine( - new this.QueryEngineConstructor( - { - datamodel: this.datamodel, - env: process.env, - logQueries: this.config.logQueries ?? !1, - ignoreEnvVarErrors: !0, - datasourceOverrides: this.datasourceOverrides ?? {}, - logLevel: this.logLevel, - configDir: this.config.cwd, - engineProtocol: "json", - enableTracing: this.tracingHelper.isEnabled(), - }, - (n) => { - r.deref()?.logger(n); - }, - t, - ), - ))); - } catch (r) { - let t = r, - n = this.parseInitError(t.message); - throw typeof n == "string" - ? t - : new P(n.message, this.config.clientVersion, n.error_code); - } - } - } - logger(r) { - let t = this.parseEngineResponse(r); - t && - ((t.level = t?.level.toLowerCase() ?? "unknown"), - yf(t) - ? this.logEmitter.emit("query", { - timestamp: new Date(), - query: t.query, - params: t.params, - duration: Number(t.duration_ms), - target: t.module_path, - }) - : bf(t) - ? (this.loggerRustPanic = new ae( - Po( - this, - `${t.message}: ${t.reason} in ${t.file}:${t.line}:${t.column}`, - ), - this.config.clientVersion, - )) - : this.logEmitter.emit(t.level, { - timestamp: new Date(), - message: t.message, - target: t.module_path, - })); - } - parseInitError(r) { - try { - return JSON.parse(r); - } catch {} - return r; - } - parseRequestError(r) { - try { - return JSON.parse(r); - } catch {} - return r; - } - onBeforeExit() { - throw new Error( - '"beforeExit" hook is not applicable to the library engine since Prisma 5.0.0, it is only relevant and implemented for the binary engine. Please add your event listener to the `process` object directly instead.', - ); - } - async start() { - if ( - (this.libraryInstantiationPromise || - (this.libraryInstantiationPromise = this.instantiateLibrary()), - await this.libraryInstantiationPromise, - await this.libraryStoppingPromise, - this.libraryStartingPromise) - ) - return ( - Re( - `library already starting, this.libraryStarted: ${this.libraryStarted}`, - ), - this.libraryStartingPromise - ); - if (this.libraryStarted) return; - let r = async () => { - Re("library starting"); - try { - let t = { traceparent: this.tracingHelper.getTraceParent() }; - (await this.engine?.connect(JSON.stringify(t)), - (this.libraryStarted = !0), - this.adapterPromise || - (this.adapterPromise = this.config.adapter?.connect()?.then(tn)), - await this.adapterPromise, - Re("library started")); - } catch (t) { - let n = this.parseInitError(t.message); - throw typeof n == "string" - ? t - : new P(n.message, this.config.clientVersion, n.error_code); - } finally { - this.libraryStartingPromise = void 0; - } - }; - return ( - (this.libraryStartingPromise = this.tracingHelper.runInChildSpan( - "connect", - r, - )), - this.libraryStartingPromise - ); - } - async stop() { - if ( - (await this.libraryInstantiationPromise, - await this.libraryStartingPromise, - await this.executingQueryPromise, - this.libraryStoppingPromise) - ) - return (Re("library is already stopping"), this.libraryStoppingPromise); - if (!this.libraryStarted) { - (await (await this.adapterPromise)?.dispose(), - (this.adapterPromise = void 0)); - return; - } - let r = async () => { - (await new Promise((n) => setImmediate(n)), Re("library stopping")); - let t = { traceparent: this.tracingHelper.getTraceParent() }; - (await this.engine?.disconnect(JSON.stringify(t)), - this.engine?.free && this.engine.free(), - (this.engine = void 0), - (this.libraryStarted = !1), - (this.libraryStoppingPromise = void 0), - (this.libraryInstantiationPromise = void 0), - await (await this.adapterPromise)?.dispose(), - (this.adapterPromise = void 0), - Re("library stopped")); - }; - return ( - (this.libraryStoppingPromise = this.tracingHelper.runInChildSpan( - "disconnect", - r, - )), - this.libraryStoppingPromise - ); - } - version() { - return ( - (this.versionInfo = this.library?.version()), - this.versionInfo?.version ?? "unknown" - ); - } - debugPanic(r) { - return this.library?.debugPanic(r); - } - async request(r, { traceparent: t, interactiveTransaction: n }) { - Re(`sending request, this.libraryStarted: ${this.libraryStarted}`); - let i = JSON.stringify({ traceparent: t }), - o = JSON.stringify(r); - try { - await this.start(); - let s = await this.adapterPromise; - ((this.executingQueryPromise = this.engine?.query(o, i, n?.id)), - (this.lastQuery = o)); - let a = this.parseEngineResponse(await this.executingQueryPromise); - if (a.errors) - throw a.errors.length === 1 - ? this.buildQueryError(a.errors[0], s?.errorRegistry) - : new V(JSON.stringify(a.errors), { - clientVersion: this.config.clientVersion, - }); - if (this.loggerRustPanic) throw this.loggerRustPanic; - return { data: a }; - } catch (s) { - if (s instanceof P) throw s; - if (s.code === "GenericFailure" && s.message?.startsWith("PANIC:")) - throw new ae(Po(this, s.message), this.config.clientVersion); - let a = this.parseRequestError(s.message); - throw typeof a == "string" - ? s - : new V( - `${a.message} -${a.backtrace}`, - { clientVersion: this.config.clientVersion }, - ); - } - } - async requestBatch(r, { transaction: t, traceparent: n }) { - Re("requestBatch"); - let i = Mr(r, t); - await this.start(); - let o = await this.adapterPromise; - ((this.lastQuery = JSON.stringify(i)), - (this.executingQueryPromise = this.engine?.query( - this.lastQuery, - JSON.stringify({ traceparent: n }), - Ol(t), - ))); - let s = await this.executingQueryPromise, - a = this.parseEngineResponse(s); - if (a.errors) - throw a.errors.length === 1 - ? this.buildQueryError(a.errors[0], o?.errorRegistry) - : new V(JSON.stringify(a.errors), { - clientVersion: this.config.clientVersion, - }); - let { batchResult: l, errors: u } = a; - if (Array.isArray(l)) - return l.map((c) => - c.errors && c.errors.length > 0 - ? (this.loggerRustPanic ?? - this.buildQueryError(c.errors[0], o?.errorRegistry)) - : { data: c }, - ); - throw u && u.length === 1 - ? new Error(u[0].error) - : new Error(JSON.stringify(a)); - } - buildQueryError(r, t) { - if (r.user_facing_error.is_panic) - return new ae( - Po(this, r.user_facing_error.message), - this.config.clientVersion, - ); - let n = this.getExternalAdapterError(r.user_facing_error, t); - return n - ? n.error - : $r(r, this.config.clientVersion, this.config.activeProvider); - } - getExternalAdapterError(r, t) { - if (r.error_code === hf && t) { - let n = r.meta?.id; - ln( - typeof n == "number", - "Malformed external JS error received from the engine", - ); - let i = t.consumeError(n); - return (ln(i, "External error with reported id was not registered"), i); - } - } - async metrics(r) { - await this.start(); - let t = await this.engine.metrics(JSON.stringify(r)); - return r.format === "prometheus" ? t : this.parseEngineResponse(t); - } -}; -function xf(e) { - return typeof e == "object" && e !== null && e.error_code !== void 0; -} -function Po(e, r) { - return El({ - binaryTarget: e.binaryTarget, - title: r, - version: e.config.clientVersion, - engineVersion: e.versionInfo?.commit, - database: e.config.activeProvider, - query: e.lastQuery, - }); -} -function Fl({ url: e, adapter: r, copyEngine: t, targetBuildType: n }) { - let i = [], - o = [], - s = (g) => { - i.push({ _tag: "warning", value: g }); - }, - a = (g) => { - let I = g.join(` -`); - o.push({ _tag: "error", value: I }); - }, - l = !!e?.startsWith("prisma://"), - u = an(e), - c = !!r, - p = l || u; - !c && - t && - p && - n !== "client" && - n !== "wasm-compiler-edge" && - s([ - "recommend--no-engine", - "In production, we recommend using `prisma generate --no-engine` (See: `prisma generate --help`)", - ]); - let d = p || !t; - c && - (d || n === "edge") && - (n === "edge" - ? a([ - "Prisma Client was configured to use the `adapter` option but it was imported via its `/edge` endpoint.", - "Please either remove the `/edge` endpoint or remove the `adapter` from the Prisma Client constructor.", - ]) - : p - ? a([ - "You've provided both a driver adapter and an Accelerate database URL. Driver adapters currently cannot connect to Accelerate.", - "Please provide either a driver adapter with a direct database URL or an Accelerate URL and no driver adapter.", - ]) - : t || - a([ - "Prisma Client was configured to use the `adapter` option but `prisma generate` was run with `--no-engine`.", - "Please run `prisma generate` without `--no-engine` to be able to use Prisma Client with the adapter.", - ])); - let f = { accelerate: d, ppg: u, driverAdapters: c }; - function h(g) { - return g.length > 0; - } - return h(o) - ? { ok: !1, diagnostics: { warnings: i, errors: o }, isUsing: f } - : { ok: !0, diagnostics: { warnings: i }, isUsing: f }; -} -function Ml({ copyEngine: e = !0 }, r) { - let t; - try { - t = jr({ - inlineDatasources: r.inlineDatasources, - overrideDatasources: r.overrideDatasources, - env: { ...r.env, ...process.env }, - clientVersion: r.clientVersion, - }); - } catch {} - let { - ok: n, - isUsing: i, - diagnostics: o, - } = Fl({ - url: t, - adapter: r.adapter, - copyEngine: e, - targetBuildType: "library", - }); - for (let p of o.warnings) at(...p.value); - if (!n) { - let p = o.errors[0]; - throw new Z(p.value, { clientVersion: r.clientVersion }); - } - let s = Er(r.generator), - a = s === "library", - l = s === "binary", - u = s === "client", - c = (i.accelerate || i.ppg) && !i.driverAdapters; - return i.accelerate - ? new qt(r) - : (i.driverAdapters, a ? new Qr(r) : new Qr(r)); -} -function $l({ generator: e }) { - return e?.previewFeatures ?? []; -} -var ql = (e) => ({ command: e }); -var Vl = (e) => e.strings.reduce((r, t, n) => `${r}@P${n}${t}`); -function Wr(e) { - try { - return jl(e, "fast"); - } catch { - return jl(e, "slow"); - } -} -function jl(e, r) { - return JSON.stringify(e.map((t) => Ul(t, r))); -} -function Ul(e, r) { - if (Array.isArray(e)) return e.map((t) => Ul(t, r)); - if (typeof e == "bigint") - return { prisma__type: "bigint", prisma__value: e.toString() }; - if (vr(e)) return { prisma__type: "date", prisma__value: e.toJSON() }; - if (Fe.isDecimal(e)) - return { prisma__type: "decimal", prisma__value: e.toJSON() }; - if (Buffer.isBuffer(e)) - return { prisma__type: "bytes", prisma__value: e.toString("base64") }; - if (vf(e)) - return { - prisma__type: "bytes", - prisma__value: Buffer.from(e).toString("base64"), - }; - if (ArrayBuffer.isView(e)) { - let { buffer: t, byteOffset: n, byteLength: i } = e; - return { - prisma__type: "bytes", - prisma__value: Buffer.from(t, n, i).toString("base64"), - }; - } - return typeof e == "object" && r === "slow" ? Gl(e) : e; -} -function vf(e) { - return e instanceof ArrayBuffer || e instanceof SharedArrayBuffer - ? !0 - : typeof e == "object" && e !== null - ? e[Symbol.toStringTag] === "ArrayBuffer" || - e[Symbol.toStringTag] === "SharedArrayBuffer" - : !1; -} -function Gl(e) { - if (typeof e != "object" || e === null) return e; - if (typeof e.toJSON == "function") return e.toJSON(); - if (Array.isArray(e)) return e.map(Bl); - let r = {}; - for (let t of Object.keys(e)) r[t] = Bl(e[t]); - return r; -} -function Bl(e) { - return typeof e == "bigint" ? e.toString() : Gl(e); -} -var Pf = /^(\s*alter\s)/i, - Ql = N("prisma:client"); -function To(e, r, t, n) { - if ( - !(e !== "postgresql" && e !== "cockroachdb") && - t.length > 0 && - Pf.exec(r) - ) - throw new Error(`Running ALTER using ${n} is not supported +`}function wl(e,r){throw new Error(r)}function Jm(e){return e!==null&&typeof e=="object"&&typeof e.$type=="string"}function Km(e,r){let t={};for(let n of Object.keys(e))t[n]=r(e[n],n);return t}function Vr(e){return e===null?e:Array.isArray(e)?e.map(Vr):typeof e=="object"?Jm(e)?Hm(e):e.constructor!==null&&e.constructor.name!=="Object"?e:Km(e,Vr):e}function Hm({$type:e,value:r}){switch(e){case"BigInt":return BigInt(r);case"Bytes":{let{buffer:t,byteOffset:n,byteLength:i}=Buffer.from(r,"base64");return new Uint8Array(t,n,i)}case"DateTime":return new Date(r);case"Decimal":return new Le(r);case"Json":return JSON.parse(r);default:wl(r,"Unknown tagged value")}}var xl="6.19.2";var zm=()=>globalThis.process?.release?.name==="node",Zm=()=>!!globalThis.Bun||!!globalThis.process?.versions?.bun,Xm=()=>!!globalThis.Deno,ef=()=>typeof globalThis.Netlify=="object",rf=()=>typeof globalThis.EdgeRuntime=="object",tf=()=>globalThis.navigator?.userAgent==="Cloudflare-Workers";function nf(){return[[ef,"netlify"],[rf,"edge-light"],[tf,"workerd"],[Xm,"deno"],[Zm,"bun"],[zm,"node"]].flatMap(t=>t[0]()?[t[1]]:[]).at(0)??""}var of={node:"Node.js",workerd:"Cloudflare Workers",deno:"Deno and Deno Deploy",netlify:"Netlify Edge Functions","edge-light":"Edge Runtime (Vercel Edge Functions, Vercel Edge Middleware, Next.js (Pages Router) Edge API Routes, Next.js (App Router) Edge Route Handlers or Next.js Middleware)"};function Kn(){let e=nf();return{id:e,prettyName:of[e]||e,isEdge:["workerd","deno","netlify","edge-light"].includes(e)}}function jr({inlineDatasources:e,overrideDatasources:r,env:t,clientVersion:n}){let i,o=Object.keys(e)[0],s=e[o]?.url,a=r[o]?.url;if(o===void 0?i=void 0:a?i=a:s?.value?i=s.value:s?.fromEnvVar&&(i=t[s.fromEnvVar]),s?.fromEnvVar!==void 0&&i===void 0)throw new P(`error: Environment variable not found: ${s.fromEnvVar}.`,n);if(i===void 0)throw new P("error: Missing URL environment variable, value, or override.",n);return i}var Hn=class extends Error{clientVersion;cause;constructor(r,t){super(r),this.clientVersion=t.clientVersion,this.cause=t.cause}get[Symbol.toStringTag](){return this.name}};var oe=class extends Hn{isRetryable;constructor(r,t){super(r,t),this.isRetryable=t.isRetryable??!0}};function R(e,r){return{...e,isRetryable:r}}var ur=class extends oe{name="InvalidDatasourceError";code="P6001";constructor(r,t){super(r,R(t,!1))}};x(ur,"InvalidDatasourceError");function vl(e){let r={clientVersion:e.clientVersion},t=Object.keys(e.inlineDatasources)[0],n=jr({inlineDatasources:e.inlineDatasources,overrideDatasources:e.overrideDatasources,clientVersion:e.clientVersion,env:{...e.env,...typeof process<"u"?process.env:{}}}),i;try{i=new URL(n)}catch{throw new ur(`Error validating datasource \`${t}\`: the URL must start with the protocol \`prisma://\``,r)}let{protocol:o,searchParams:s}=i;if(o!=="prisma:"&&o!==sn)throw new ur(`Error validating datasource \`${t}\`: the URL must start with the protocol \`prisma://\` or \`prisma+postgres://\``,r);let a=s.get("api_key");if(a===null||a.length<1)throw new ur(`Error validating datasource \`${t}\`: the URL must contain a valid API key`,r);let l=Ii(i)?"http:":"https:";process.env.TEST_CLIENT_ENGINE_REMOTE_EXECUTOR&&i.searchParams.has("use_http")&&(l="http:");let u=new URL(i.href.replace(o,l));return{apiKey:a,url:u}}var Pl=O(on()),Yn=class{apiKey;tracingHelper;logLevel;logQueries;engineHash;constructor({apiKey:r,tracingHelper:t,logLevel:n,logQueries:i,engineHash:o}){this.apiKey=r,this.tracingHelper=t,this.logLevel=n,this.logQueries=i,this.engineHash=o}build({traceparent:r,transactionId:t}={}){let n={Accept:"application/json",Authorization:`Bearer ${this.apiKey}`,"Content-Type":"application/json","Prisma-Engine-Hash":this.engineHash,"Prisma-Engine-Version":Pl.enginesVersion};this.tracingHelper.isEnabled()&&(n.traceparent=r??this.tracingHelper.getTraceParent()),t&&(n["X-Transaction-Id"]=t);let i=this.#e();return i.length>0&&(n["X-Capture-Telemetry"]=i.join(", ")),n}#e(){let r=[];return this.tracingHelper.isEnabled()&&r.push("tracing"),this.logLevel&&r.push(this.logLevel),this.logQueries&&r.push("query"),r}};function sf(e){return e[0]*1e3+e[1]/1e6}function po(e){return new Date(sf(e))}var Br=class extends oe{name="ForcedRetryError";code="P5001";constructor(r){super("This request must be retried",R(r,!0))}};x(Br,"ForcedRetryError");var cr=class extends oe{name="NotImplementedYetError";code="P5004";constructor(r,t){super(r,R(t,!1))}};x(cr,"NotImplementedYetError");var $=class extends oe{response;constructor(r,t){super(r,t),this.response=t.response;let n=this.response.headers.get("prisma-request-id");if(n){let i=`(The request id was: ${n})`;this.message=this.message+" "+i}}};var pr=class extends ${name="SchemaMissingError";code="P5005";constructor(r){super("Schema needs to be uploaded",R(r,!0))}};x(pr,"SchemaMissingError");var mo="This request could not be understood by the server",Rt=class extends ${name="BadRequestError";code="P5000";constructor(r,t,n){super(t||mo,R(r,!1)),n&&(this.code=n)}};x(Rt,"BadRequestError");var At=class extends ${name="HealthcheckTimeoutError";code="P5013";logs;constructor(r,t){super("Engine not started: healthcheck timeout",R(r,!0)),this.logs=t}};x(At,"HealthcheckTimeoutError");var Ct=class extends ${name="EngineStartupError";code="P5014";logs;constructor(r,t,n){super(t,R(r,!0)),this.logs=n}};x(Ct,"EngineStartupError");var It=class extends ${name="EngineVersionNotSupportedError";code="P5012";constructor(r){super("Engine version is not supported",R(r,!1))}};x(It,"EngineVersionNotSupportedError");var fo="Request timed out",Dt=class extends ${name="GatewayTimeoutError";code="P5009";constructor(r,t=fo){super(t,R(r,!1))}};x(Dt,"GatewayTimeoutError");var af="Interactive transaction error",Ot=class extends ${name="InteractiveTransactionError";code="P5015";constructor(r,t=af){super(t,R(r,!1))}};x(Ot,"InteractiveTransactionError");var lf="Request parameters are invalid",kt=class extends ${name="InvalidRequestError";code="P5011";constructor(r,t=lf){super(t,R(r,!1))}};x(kt,"InvalidRequestError");var go="Requested resource does not exist",_t=class extends ${name="NotFoundError";code="P5003";constructor(r,t=go){super(t,R(r,!1))}};x(_t,"NotFoundError");var ho="Unknown server error",Ur=class extends ${name="ServerError";code="P5006";logs;constructor(r,t,n){super(t||ho,R(r,!0)),this.logs=n}};x(Ur,"ServerError");var yo="Unauthorized, check your connection string",Nt=class extends ${name="UnauthorizedError";code="P5007";constructor(r,t=yo){super(t,R(r,!1))}};x(Nt,"UnauthorizedError");var bo="Usage exceeded, retry again later",Lt=class extends ${name="UsageExceededError";code="P5008";constructor(r,t=bo){super(t,R(r,!0))}};x(Lt,"UsageExceededError");async function uf(e){let r;try{r=await e.text()}catch{return{type:"EmptyError"}}try{let t=JSON.parse(r);if(typeof t=="string")switch(t){case"InternalDataProxyError":return{type:"DataProxyError",body:t};default:return{type:"UnknownTextError",body:t}}if(typeof t=="object"&&t!==null){if("is_panic"in t&&"message"in t&&"error_code"in t)return{type:"QueryEngineError",body:t};if("EngineNotStarted"in t||"InteractiveTransactionMisrouted"in t||"InvalidRequestError"in t){let n=Object.values(t)[0].reason;return typeof n=="string"&&!["SchemaMissing","EngineVersionNotSupported"].includes(n)?{type:"UnknownJsonError",body:t}:{type:"DataProxyError",body:t}}}return{type:"UnknownJsonError",body:t}}catch{return r===""?{type:"EmptyError"}:{type:"UnknownTextError",body:r}}}async function Ft(e,r){if(e.ok)return;let t={clientVersion:r,response:e},n=await uf(e);if(n.type==="QueryEngineError")throw new z(n.body.message,{code:n.body.error_code,clientVersion:r});if(n.type==="DataProxyError"){if(n.body==="InternalDataProxyError")throw new Ur(t,"Internal Data Proxy error");if("EngineNotStarted"in n.body){if(n.body.EngineNotStarted.reason==="SchemaMissing")return new pr(t);if(n.body.EngineNotStarted.reason==="EngineVersionNotSupported")throw new It(t);if("EngineStartupError"in n.body.EngineNotStarted.reason){let{msg:i,logs:o}=n.body.EngineNotStarted.reason.EngineStartupError;throw new Ct(t,i,o)}if("KnownEngineStartupError"in n.body.EngineNotStarted.reason){let{msg:i,error_code:o}=n.body.EngineNotStarted.reason.KnownEngineStartupError;throw new P(i,r,o)}if("HealthcheckTimeout"in n.body.EngineNotStarted.reason){let{logs:i}=n.body.EngineNotStarted.reason.HealthcheckTimeout;throw new At(t,i)}}if("InteractiveTransactionMisrouted"in n.body){let i={IDParseError:"Could not parse interactive transaction ID",NoQueryEngineFoundError:"Could not find Query Engine for the specified host and transaction ID",TransactionStartError:"Could not start interactive transaction"};throw new Ot(t,i[n.body.InteractiveTransactionMisrouted.reason])}if("InvalidRequestError"in n.body)throw new kt(t,n.body.InvalidRequestError.reason)}if(e.status===401||e.status===403)throw new Nt(t,Gr(yo,n));if(e.status===404)return new _t(t,Gr(go,n));if(e.status===429)throw new Lt(t,Gr(bo,n));if(e.status===504)throw new Dt(t,Gr(fo,n));if(e.status>=500)throw new Ur(t,Gr(ho,n));if(e.status>=400)throw new Rt(t,Gr(mo,n))}function Gr(e,r){return r.type==="EmptyError"?e:`${e}: ${JSON.stringify(r)}`}function Tl(e){let r=Math.pow(2,e)*50,t=Math.ceil(Math.random()*r)-Math.ceil(r/2),n=r+t;return new Promise(i=>setTimeout(()=>i(n),n))}var $e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function Sl(e){let r=new TextEncoder().encode(e),t="",n=r.byteLength,i=n%3,o=n-i,s,a,l,u,c;for(let p=0;p>18,a=(c&258048)>>12,l=(c&4032)>>6,u=c&63,t+=$e[s]+$e[a]+$e[l]+$e[u];return i==1?(c=r[o],s=(c&252)>>2,a=(c&3)<<4,t+=$e[s]+$e[a]+"=="):i==2&&(c=r[o]<<8|r[o+1],s=(c&64512)>>10,a=(c&1008)>>4,l=(c&15)<<2,t+=$e[s]+$e[a]+$e[l]+"="),t}function Rl(e){if(!!e.generator?.previewFeatures.some(t=>t.toLowerCase().includes("metrics")))throw new P("The `metrics` preview feature is not yet available with Accelerate.\nPlease remove `metrics` from the `previewFeatures` in your schema.\n\nMore information about Accelerate: https://pris.ly/d/accelerate",e.clientVersion)}var Al={"@prisma/debug":"workspace:*","@prisma/engines-version":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/fetch-engine":"workspace:*","@prisma/get-platform":"workspace:*"};var Mt=class extends oe{name="RequestError";code="P5010";constructor(r,t){super(`Cannot fetch data from service: +${r}`,R(t,!0))}};x(Mt,"RequestError");async function dr(e,r,t=n=>n){let{clientVersion:n,...i}=r,o=t(fetch);try{return await o(e,i)}catch(s){let a=s.message??"Unknown error";throw new Mt(a,{clientVersion:n,cause:s})}}var pf=/^[1-9][0-9]*\.[0-9]+\.[0-9]+$/,Cl=N("prisma:client:dataproxyEngine");async function df(e,r){let t=Al["@prisma/engines-version"],n=r.clientVersion??"unknown";if(process.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION||globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION)return process.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION||globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION;if(e.includes("accelerate")&&n!=="0.0.0"&&n!=="in-memory")return n;let[i,o]=n?.split("-")??[];if(o===void 0&&pf.test(i))return i;if(o!==void 0||n==="0.0.0"||n==="in-memory"){let[s]=t.split("-")??[],[a,l,u]=s.split("."),c=mf(`<=${a}.${l}.${u}`),p=await dr(c,{clientVersion:n});if(!p.ok)throw new Error(`Failed to fetch stable Prisma version, unpkg.com status ${p.status} ${p.statusText}, response body: ${await p.text()||""}`);let d=await p.text();Cl("length of body fetched from unpkg.com",d.length);let f;try{f=JSON.parse(d)}catch(h){throw console.error("JSON.parse error: body fetched from unpkg.com: ",d),h}return f.version}throw new cr("Only `major.minor.patch` versions are supported by Accelerate.",{clientVersion:n})}async function Il(e,r){let t=await df(e,r);return Cl("version",t),t}function mf(e){return encodeURI(`https://unpkg.com/prisma@${e}/package.json`)}var Dl=3,$t=N("prisma:client:dataproxyEngine"),qt=class{name="DataProxyEngine";inlineSchema;inlineSchemaHash;inlineDatasources;config;logEmitter;env;clientVersion;engineHash;tracingHelper;remoteClientVersion;host;headerBuilder;startPromise;protocol;constructor(r){Rl(r),this.config=r,this.env=r.env,this.inlineSchema=Sl(r.inlineSchema),this.inlineDatasources=r.inlineDatasources,this.inlineSchemaHash=r.inlineSchemaHash,this.clientVersion=r.clientVersion,this.engineHash=r.engineVersion,this.logEmitter=r.logEmitter,this.tracingHelper=r.tracingHelper}apiKey(){return this.headerBuilder.apiKey}version(){return this.engineHash}async start(){this.startPromise!==void 0&&await this.startPromise,this.startPromise=(async()=>{let{apiKey:r,url:t}=this.getURLAndAPIKey();this.host=t.host,this.protocol=t.protocol,this.headerBuilder=new Yn({apiKey:r,tracingHelper:this.tracingHelper,logLevel:this.config.logLevel??"error",logQueries:this.config.logQueries,engineHash:this.engineHash}),this.remoteClientVersion=await Il(this.host,this.config),$t("host",this.host),$t("protocol",this.protocol)})(),await this.startPromise}async stop(){}propagateResponseExtensions(r){r?.logs?.length&&r.logs.forEach(t=>{switch(t.level){case"debug":case"trace":$t(t);break;case"error":case"warn":case"info":{this.logEmitter.emit(t.level,{timestamp:po(t.timestamp),message:t.attributes.message??"",target:t.target??"BinaryEngine"});break}case"query":{this.logEmitter.emit("query",{query:t.attributes.query??"",timestamp:po(t.timestamp),duration:t.attributes.duration_ms??0,params:t.attributes.params??"",target:t.target??"BinaryEngine"});break}default:t.level}}),r?.traces?.length&&this.tracingHelper.dispatchEngineSpans(r.traces)}onBeforeExit(){throw new Error('"beforeExit" hook is not applicable to the remote query engine')}async url(r){return await this.start(),`${this.protocol}//${this.host}/${this.remoteClientVersion}/${this.inlineSchemaHash}/${r}`}async uploadSchema(){let r={name:"schemaUpload",internal:!0};return this.tracingHelper.runInChildSpan(r,async()=>{let t=await dr(await this.url("schema"),{method:"PUT",headers:this.headerBuilder.build(),body:this.inlineSchema,clientVersion:this.clientVersion});t.ok||$t("schema response status",t.status);let n=await Ft(t,this.clientVersion);if(n)throw this.logEmitter.emit("warn",{message:`Error while uploading schema: ${n.message}`,timestamp:new Date,target:""}),n;this.logEmitter.emit("info",{message:`Schema (re)uploaded (hash: ${this.inlineSchemaHash})`,timestamp:new Date,target:""})})}request(r,{traceparent:t,interactiveTransaction:n,customDataProxyFetch:i}){return this.requestInternal({body:r,traceparent:t,interactiveTransaction:n,customDataProxyFetch:i})}async requestBatch(r,{traceparent:t,transaction:n,customDataProxyFetch:i}){let o=n?.kind==="itx"?n.options:void 0,s=Mr(r,n);return(await this.requestInternal({body:s,customDataProxyFetch:i,interactiveTransaction:o,traceparent:t})).map(l=>(l.extensions&&this.propagateResponseExtensions(l.extensions),"errors"in l?this.convertProtocolErrorsToClientError(l.errors):l))}requestInternal({body:r,traceparent:t,customDataProxyFetch:n,interactiveTransaction:i}){return this.withRetry({actionGerund:"querying",callback:async({logHttpCall:o})=>{let s=i?`${i.payload.endpoint}/graphql`:await this.url("graphql");o(s);let a=await dr(s,{method:"POST",headers:this.headerBuilder.build({traceparent:t,transactionId:i?.id}),body:JSON.stringify(r),clientVersion:this.clientVersion},n);a.ok||$t("graphql response status",a.status),await this.handleError(await Ft(a,this.clientVersion));let l=await a.json();if(l.extensions&&this.propagateResponseExtensions(l.extensions),"errors"in l)throw this.convertProtocolErrorsToClientError(l.errors);return"batchResult"in l?l.batchResult:l}})}async transaction(r,t,n){let i={start:"starting",commit:"committing",rollback:"rolling back"};return this.withRetry({actionGerund:`${i[r]} transaction`,callback:async({logHttpCall:o})=>{if(r==="start"){let s=JSON.stringify({max_wait:n.maxWait,timeout:n.timeout,isolation_level:n.isolationLevel}),a=await this.url("transaction/start");o(a);let l=await dr(a,{method:"POST",headers:this.headerBuilder.build({traceparent:t.traceparent}),body:s,clientVersion:this.clientVersion});await this.handleError(await Ft(l,this.clientVersion));let u=await l.json(),{extensions:c}=u;c&&this.propagateResponseExtensions(c);let p=u.id,d=u["data-proxy"].endpoint;return{id:p,payload:{endpoint:d}}}else{let s=`${n.payload.endpoint}/${r}`;o(s);let a=await dr(s,{method:"POST",headers:this.headerBuilder.build({traceparent:t.traceparent}),clientVersion:this.clientVersion});await this.handleError(await Ft(a,this.clientVersion));let l=await a.json(),{extensions:u}=l;u&&this.propagateResponseExtensions(u);return}}})}getURLAndAPIKey(){return vl({clientVersion:this.clientVersion,env:this.env,inlineDatasources:this.inlineDatasources,overrideDatasources:this.config.overrideDatasources})}metrics(){throw new cr("Metrics are not yet supported for Accelerate",{clientVersion:this.clientVersion})}async withRetry(r){for(let t=0;;t++){let n=i=>{this.logEmitter.emit("info",{message:`Calling ${i} (n=${t})`,timestamp:new Date,target:""})};try{return await r.callback({logHttpCall:n})}catch(i){if(!(i instanceof oe)||!i.isRetryable)throw i;if(t>=Dl)throw i instanceof Br?i.cause:i;this.logEmitter.emit("warn",{message:`Attempt ${t+1}/${Dl} failed for ${r.actionGerund}: ${i.message??"(unknown)"}`,timestamp:new Date,target:""});let o=await Tl(t);this.logEmitter.emit("warn",{message:`Retrying after ${o}ms`,timestamp:new Date,target:""})}}}async handleError(r){if(r instanceof pr)throw await this.uploadSchema(),new Br({clientVersion:this.clientVersion,cause:r});if(r)throw r}convertProtocolErrorsToClientError(r){return r.length===1?$r(r[0],this.config.clientVersion,this.config.activeProvider):new V(JSON.stringify(r),{clientVersion:this.config.clientVersion})}applyPendingMigrations(){throw new Error("Method not implemented.")}};function Ol(e){if(e?.kind==="itx")return e.options.id}var wo=O(require("node:os")),kl=O(require("node:path"));var Eo=Symbol("PrismaLibraryEngineCache");function ff(){let e=globalThis;return e[Eo]===void 0&&(e[Eo]={}),e[Eo]}function gf(e){let r=ff();if(r[e]!==void 0)return r[e];let t=kl.default.toNamespacedPath(e),n={exports:{}},i=0;return process.platform!=="win32"&&(i=wo.default.constants.dlopen.RTLD_LAZY|wo.default.constants.dlopen.RTLD_DEEPBIND),process.dlopen(n,t,i),r[e]=n.exports,n.exports}var _l={async loadLibrary(e){let r=await fi(),t=await ml("library",e);try{return e.tracingHelper.runInChildSpan({name:"loadLibrary",internal:!0},()=>gf(t))}catch(n){let i=Ai({e:n,platformInfo:r,id:t});throw new P(i,e.clientVersion)}}};var xo,Nl={async loadLibrary(e){let{clientVersion:r,adapter:t,engineWasm:n}=e;if(t===void 0)throw new P(`The \`adapter\` option for \`PrismaClient\` is required in this context (${Kn().prettyName})`,r);if(n===void 0)throw new P("WASM engine was unexpectedly `undefined`",r);xo===void 0&&(xo=(async()=>{let o=await n.getRuntime(),s=await n.getQueryEngineWasmModule();if(s==null)throw new P("The loaded wasm module was unexpectedly `undefined` or `null` once loaded",r);let a={"./query_engine_bg.js":o},l=new WebAssembly.Instance(s,a),u=l.exports.__wbindgen_start;return o.__wbg_set_wasm(l.exports),u(),o.QueryEngine})());let i=await xo;return{debugPanic(){return Promise.reject("{}")},dmmf(){return Promise.resolve("{}")},version(){return{commit:"unknown",version:"unknown"}},QueryEngine:i}}};var hf="P2036",Re=N("prisma:client:libraryEngine");function yf(e){return e.item_type==="query"&&"query"in e}function bf(e){return"level"in e?e.level==="error"&&e.message==="PANIC":!1}var Ll=[...li,"native"],Ef=0xffffffffffffffffn,vo=1n;function wf(){let e=vo++;return vo>Ef&&(vo=1n),e}var Qr=class{name="LibraryEngine";engine;libraryInstantiationPromise;libraryStartingPromise;libraryStoppingPromise;libraryStarted;executingQueryPromise;config;QueryEngineConstructor;libraryLoader;library;logEmitter;libQueryEnginePath;binaryTarget;datasourceOverrides;datamodel;logQueries;logLevel;lastQuery;loggerRustPanic;tracingHelper;adapterPromise;versionInfo;constructor(r,t){this.libraryLoader=t??_l,r.engineWasm!==void 0&&(this.libraryLoader=t??Nl),this.config=r,this.libraryStarted=!1,this.logQueries=r.logQueries??!1,this.logLevel=r.logLevel??"error",this.logEmitter=r.logEmitter,this.datamodel=r.inlineSchema,this.tracingHelper=r.tracingHelper,r.enableDebugLogs&&(this.logLevel="debug");let n=Object.keys(r.overrideDatasources)[0],i=r.overrideDatasources[n]?.url;n!==void 0&&i!==void 0&&(this.datasourceOverrides={[n]:i}),this.libraryInstantiationPromise=this.instantiateLibrary()}wrapEngine(r){return{applyPendingMigrations:r.applyPendingMigrations?.bind(r),commitTransaction:this.withRequestId(r.commitTransaction.bind(r)),connect:this.withRequestId(r.connect.bind(r)),disconnect:this.withRequestId(r.disconnect.bind(r)),metrics:r.metrics?.bind(r),query:this.withRequestId(r.query.bind(r)),rollbackTransaction:this.withRequestId(r.rollbackTransaction.bind(r)),sdlSchema:r.sdlSchema?.bind(r),startTransaction:this.withRequestId(r.startTransaction.bind(r)),trace:r.trace.bind(r),free:r.free?.bind(r)}}withRequestId(r){return async(...t)=>{let n=wf().toString();try{return await r(...t,n)}finally{if(this.tracingHelper.isEnabled()){let i=await this.engine?.trace(n);if(i){let o=JSON.parse(i);this.tracingHelper.dispatchEngineSpans(o.spans)}}}}}async applyPendingMigrations(){throw new Error("Cannot call this method from this type of engine instance")}async transaction(r,t,n){await this.start();let i=await this.adapterPromise,o=JSON.stringify(t),s;if(r==="start"){let l=JSON.stringify({max_wait:n.maxWait,timeout:n.timeout,isolation_level:n.isolationLevel});s=await this.engine?.startTransaction(l,o)}else r==="commit"?s=await this.engine?.commitTransaction(n.id,o):r==="rollback"&&(s=await this.engine?.rollbackTransaction(n.id,o));let a=this.parseEngineResponse(s);if(xf(a)){let l=this.getExternalAdapterError(a,i?.errorRegistry);throw l?l.error:new z(a.message,{code:a.error_code,clientVersion:this.config.clientVersion,meta:a.meta})}else if(typeof a.message=="string")throw new V(a.message,{clientVersion:this.config.clientVersion});return a}async instantiateLibrary(){if(Re("internalSetup"),this.libraryInstantiationPromise)return this.libraryInstantiationPromise;ai(),this.binaryTarget=await this.getCurrentBinaryTarget(),await this.tracingHelper.runInChildSpan("load_engine",()=>this.loadEngine()),this.version()}async getCurrentBinaryTarget(){{if(this.binaryTarget)return this.binaryTarget;let r=await this.tracingHelper.runInChildSpan("detect_platform",()=>ir());if(!Ll.includes(r))throw new P(`Unknown ${ce("PRISMA_QUERY_ENGINE_LIBRARY")} ${ce(W(r))}. Possible binaryTargets: ${qe(Ll.join(", "))} or a path to the query engine library. +You may have to run ${qe("prisma generate")} for your changes to take effect.`,this.config.clientVersion);return r}}parseEngineResponse(r){if(!r)throw new V("Response from the Engine was empty",{clientVersion:this.config.clientVersion});try{return JSON.parse(r)}catch{throw new V("Unable to JSON.parse response from engine",{clientVersion:this.config.clientVersion})}}async loadEngine(){if(!this.engine){this.QueryEngineConstructor||(this.library=await this.libraryLoader.loadLibrary(this.config),this.QueryEngineConstructor=this.library.QueryEngine);try{let r=new WeakRef(this);this.adapterPromise||(this.adapterPromise=this.config.adapter?.connect()?.then(tn));let t=await this.adapterPromise;t&&Re("Using driver adapter: %O",t),this.engine=this.wrapEngine(new this.QueryEngineConstructor({datamodel:this.datamodel,env:process.env,logQueries:this.config.logQueries??!1,ignoreEnvVarErrors:!0,datasourceOverrides:this.datasourceOverrides??{},logLevel:this.logLevel,configDir:this.config.cwd,engineProtocol:"json",enableTracing:this.tracingHelper.isEnabled()},n=>{r.deref()?.logger(n)},t))}catch(r){let t=r,n=this.parseInitError(t.message);throw typeof n=="string"?t:new P(n.message,this.config.clientVersion,n.error_code)}}}logger(r){let t=this.parseEngineResponse(r);t&&(t.level=t?.level.toLowerCase()??"unknown",yf(t)?this.logEmitter.emit("query",{timestamp:new Date,query:t.query,params:t.params,duration:Number(t.duration_ms),target:t.module_path}):bf(t)?this.loggerRustPanic=new ae(Po(this,`${t.message}: ${t.reason} in ${t.file}:${t.line}:${t.column}`),this.config.clientVersion):this.logEmitter.emit(t.level,{timestamp:new Date,message:t.message,target:t.module_path}))}parseInitError(r){try{return JSON.parse(r)}catch{}return r}parseRequestError(r){try{return JSON.parse(r)}catch{}return r}onBeforeExit(){throw new Error('"beforeExit" hook is not applicable to the library engine since Prisma 5.0.0, it is only relevant and implemented for the binary engine. Please add your event listener to the `process` object directly instead.')}async start(){if(this.libraryInstantiationPromise||(this.libraryInstantiationPromise=this.instantiateLibrary()),await this.libraryInstantiationPromise,await this.libraryStoppingPromise,this.libraryStartingPromise)return Re(`library already starting, this.libraryStarted: ${this.libraryStarted}`),this.libraryStartingPromise;if(this.libraryStarted)return;let r=async()=>{Re("library starting");try{let t={traceparent:this.tracingHelper.getTraceParent()};await this.engine?.connect(JSON.stringify(t)),this.libraryStarted=!0,this.adapterPromise||(this.adapterPromise=this.config.adapter?.connect()?.then(tn)),await this.adapterPromise,Re("library started")}catch(t){let n=this.parseInitError(t.message);throw typeof n=="string"?t:new P(n.message,this.config.clientVersion,n.error_code)}finally{this.libraryStartingPromise=void 0}};return this.libraryStartingPromise=this.tracingHelper.runInChildSpan("connect",r),this.libraryStartingPromise}async stop(){if(await this.libraryInstantiationPromise,await this.libraryStartingPromise,await this.executingQueryPromise,this.libraryStoppingPromise)return Re("library is already stopping"),this.libraryStoppingPromise;if(!this.libraryStarted){await(await this.adapterPromise)?.dispose(),this.adapterPromise=void 0;return}let r=async()=>{await new Promise(n=>setImmediate(n)),Re("library stopping");let t={traceparent:this.tracingHelper.getTraceParent()};await this.engine?.disconnect(JSON.stringify(t)),this.engine?.free&&this.engine.free(),this.engine=void 0,this.libraryStarted=!1,this.libraryStoppingPromise=void 0,this.libraryInstantiationPromise=void 0,await(await this.adapterPromise)?.dispose(),this.adapterPromise=void 0,Re("library stopped")};return this.libraryStoppingPromise=this.tracingHelper.runInChildSpan("disconnect",r),this.libraryStoppingPromise}version(){return this.versionInfo=this.library?.version(),this.versionInfo?.version??"unknown"}debugPanic(r){return this.library?.debugPanic(r)}async request(r,{traceparent:t,interactiveTransaction:n}){Re(`sending request, this.libraryStarted: ${this.libraryStarted}`);let i=JSON.stringify({traceparent:t}),o=JSON.stringify(r);try{await this.start();let s=await this.adapterPromise;this.executingQueryPromise=this.engine?.query(o,i,n?.id),this.lastQuery=o;let a=this.parseEngineResponse(await this.executingQueryPromise);if(a.errors)throw a.errors.length===1?this.buildQueryError(a.errors[0],s?.errorRegistry):new V(JSON.stringify(a.errors),{clientVersion:this.config.clientVersion});if(this.loggerRustPanic)throw this.loggerRustPanic;return{data:a}}catch(s){if(s instanceof P)throw s;if(s.code==="GenericFailure"&&s.message?.startsWith("PANIC:"))throw new ae(Po(this,s.message),this.config.clientVersion);let a=this.parseRequestError(s.message);throw typeof a=="string"?s:new V(`${a.message} +${a.backtrace}`,{clientVersion:this.config.clientVersion})}}async requestBatch(r,{transaction:t,traceparent:n}){Re("requestBatch");let i=Mr(r,t);await this.start();let o=await this.adapterPromise;this.lastQuery=JSON.stringify(i),this.executingQueryPromise=this.engine?.query(this.lastQuery,JSON.stringify({traceparent:n}),Ol(t));let s=await this.executingQueryPromise,a=this.parseEngineResponse(s);if(a.errors)throw a.errors.length===1?this.buildQueryError(a.errors[0],o?.errorRegistry):new V(JSON.stringify(a.errors),{clientVersion:this.config.clientVersion});let{batchResult:l,errors:u}=a;if(Array.isArray(l))return l.map(c=>c.errors&&c.errors.length>0?this.loggerRustPanic??this.buildQueryError(c.errors[0],o?.errorRegistry):{data:c});throw u&&u.length===1?new Error(u[0].error):new Error(JSON.stringify(a))}buildQueryError(r,t){if(r.user_facing_error.is_panic)return new ae(Po(this,r.user_facing_error.message),this.config.clientVersion);let n=this.getExternalAdapterError(r.user_facing_error,t);return n?n.error:$r(r,this.config.clientVersion,this.config.activeProvider)}getExternalAdapterError(r,t){if(r.error_code===hf&&t){let n=r.meta?.id;ln(typeof n=="number","Malformed external JS error received from the engine");let i=t.consumeError(n);return ln(i,"External error with reported id was not registered"),i}}async metrics(r){await this.start();let t=await this.engine.metrics(JSON.stringify(r));return r.format==="prometheus"?t:this.parseEngineResponse(t)}};function xf(e){return typeof e=="object"&&e!==null&&e.error_code!==void 0}function Po(e,r){return El({binaryTarget:e.binaryTarget,title:r,version:e.config.clientVersion,engineVersion:e.versionInfo?.commit,database:e.config.activeProvider,query:e.lastQuery})}function Fl({url:e,adapter:r,copyEngine:t,targetBuildType:n}){let i=[],o=[],s=g=>{i.push({_tag:"warning",value:g})},a=g=>{let I=g.join(` +`);o.push({_tag:"error",value:I})},l=!!e?.startsWith("prisma://"),u=an(e),c=!!r,p=l||u;!c&&t&&p&&n!=="client"&&n!=="wasm-compiler-edge"&&s(["recommend--no-engine","In production, we recommend using `prisma generate --no-engine` (See: `prisma generate --help`)"]);let d=p||!t;c&&(d||n==="edge")&&(n==="edge"?a(["Prisma Client was configured to use the `adapter` option but it was imported via its `/edge` endpoint.","Please either remove the `/edge` endpoint or remove the `adapter` from the Prisma Client constructor."]):p?a(["You've provided both a driver adapter and an Accelerate database URL. Driver adapters currently cannot connect to Accelerate.","Please provide either a driver adapter with a direct database URL or an Accelerate URL and no driver adapter."]):t||a(["Prisma Client was configured to use the `adapter` option but `prisma generate` was run with `--no-engine`.","Please run `prisma generate` without `--no-engine` to be able to use Prisma Client with the adapter."]));let f={accelerate:d,ppg:u,driverAdapters:c};function h(g){return g.length>0}return h(o)?{ok:!1,diagnostics:{warnings:i,errors:o},isUsing:f}:{ok:!0,diagnostics:{warnings:i},isUsing:f}}function Ml({copyEngine:e=!0},r){let t;try{t=jr({inlineDatasources:r.inlineDatasources,overrideDatasources:r.overrideDatasources,env:{...r.env,...process.env},clientVersion:r.clientVersion})}catch{}let{ok:n,isUsing:i,diagnostics:o}=Fl({url:t,adapter:r.adapter,copyEngine:e,targetBuildType:"library"});for(let p of o.warnings)at(...p.value);if(!n){let p=o.errors[0];throw new Z(p.value,{clientVersion:r.clientVersion})}let s=Er(r.generator),a=s==="library",l=s==="binary",u=s==="client",c=(i.accelerate||i.ppg)&&!i.driverAdapters;return i.accelerate?new qt(r):(i.driverAdapters,a?new Qr(r):new Qr(r))}function $l({generator:e}){return e?.previewFeatures??[]}var ql=e=>({command:e});var Vl=e=>e.strings.reduce((r,t,n)=>`${r}@P${n}${t}`);function Wr(e){try{return jl(e,"fast")}catch{return jl(e,"slow")}}function jl(e,r){return JSON.stringify(e.map(t=>Ul(t,r)))}function Ul(e,r){if(Array.isArray(e))return e.map(t=>Ul(t,r));if(typeof e=="bigint")return{prisma__type:"bigint",prisma__value:e.toString()};if(vr(e))return{prisma__type:"date",prisma__value:e.toJSON()};if(Fe.isDecimal(e))return{prisma__type:"decimal",prisma__value:e.toJSON()};if(Buffer.isBuffer(e))return{prisma__type:"bytes",prisma__value:e.toString("base64")};if(vf(e))return{prisma__type:"bytes",prisma__value:Buffer.from(e).toString("base64")};if(ArrayBuffer.isView(e)){let{buffer:t,byteOffset:n,byteLength:i}=e;return{prisma__type:"bytes",prisma__value:Buffer.from(t,n,i).toString("base64")}}return typeof e=="object"&&r==="slow"?Gl(e):e}function vf(e){return e instanceof ArrayBuffer||e instanceof SharedArrayBuffer?!0:typeof e=="object"&&e!==null?e[Symbol.toStringTag]==="ArrayBuffer"||e[Symbol.toStringTag]==="SharedArrayBuffer":!1}function Gl(e){if(typeof e!="object"||e===null)return e;if(typeof e.toJSON=="function")return e.toJSON();if(Array.isArray(e))return e.map(Bl);let r={};for(let t of Object.keys(e))r[t]=Bl(e[t]);return r}function Bl(e){return typeof e=="bigint"?e.toString():Gl(e)}var Pf=/^(\s*alter\s)/i,Ql=N("prisma:client");function To(e,r,t,n){if(!(e!=="postgresql"&&e!=="cockroachdb")&&t.length>0&&Pf.exec(r))throw new Error(`Running ALTER using ${n} is not supported Using the example below you can still execute your query with Prisma, but please note that it is vulnerable to SQL injection attacks and requires you to take care of input sanitization. Example: await prisma.$executeRawUnsafe(\`ALTER USER prisma WITH PASSWORD '\${password}'\`) More Information: https://pris.ly/d/execute-raw -`); -} -var So = - ({ clientMethod: e, activeProvider: r }) => - (t) => { - let n = "", - i; - if (Vn(t)) - ((n = t.sql), - (i = { values: Wr(t.values), __prismaRawParameters__: !0 })); - else if (Array.isArray(t)) { - let [o, ...s] = t; - ((n = o), (i = { values: Wr(s || []), __prismaRawParameters__: !0 })); - } else - switch (r) { - case "sqlite": - case "mysql": { - ((n = t.sql), - (i = { values: Wr(t.values), __prismaRawParameters__: !0 })); - break; - } - case "cockroachdb": - case "postgresql": - case "postgres": { - ((n = t.text), - (i = { values: Wr(t.values), __prismaRawParameters__: !0 })); - break; - } - case "sqlserver": { - ((n = Vl(t)), - (i = { values: Wr(t.values), __prismaRawParameters__: !0 })); - break; - } - default: - throw new Error(`The ${r} provider does not support ${e}`); - } - return ( - i?.values - ? Ql(`prisma.${e}(${n}, ${i.values})`) - : Ql(`prisma.${e}(${n})`), - { query: n, parameters: i } - ); - }, - Wl = { - requestArgsToMiddlewareArgs(e) { - return [e.strings, ...e.values]; - }, - middlewareArgsToRequestArgs(e) { - let [r, ...t] = e; - return new ie(r, t); - }, - }, - Jl = { - requestArgsToMiddlewareArgs(e) { - return [e]; - }, - middlewareArgsToRequestArgs(e) { - return e[0]; - }, - }; -function Ro(e) { - return function (t, n) { - let i, - o = (s = e) => { - try { - return s === void 0 || s?.kind === "itx" - ? (i ??= Kl(t(s))) - : Kl(t(s)); - } catch (a) { - return Promise.reject(a); - } - }; - return { - get spec() { - return n; - }, - then(s, a) { - return o().then(s, a); - }, - catch(s) { - return o().catch(s); - }, - finally(s) { - return o().finally(s); - }, - requestTransaction(s) { - let a = o(s); - return a.requestTransaction ? a.requestTransaction(s) : a; - }, - [Symbol.toStringTag]: "PrismaPromise", - }; - }; -} -function Kl(e) { - return typeof e.then == "function" ? e : Promise.resolve(e); -} -var Tf = xi.split(".")[0], - Sf = { - isEnabled() { - return !1; - }, - getTraceParent() { - return "00-10-10-00"; - }, - dispatchEngineSpans() {}, - getActiveContext() {}, - runInChildSpan(e, r) { - return r(); - }, - }, - Ao = class { - isEnabled() { - return this.getGlobalTracingHelper().isEnabled(); - } - getTraceParent(r) { - return this.getGlobalTracingHelper().getTraceParent(r); - } - dispatchEngineSpans(r) { - return this.getGlobalTracingHelper().dispatchEngineSpans(r); - } - getActiveContext() { - return this.getGlobalTracingHelper().getActiveContext(); - } - runInChildSpan(r, t) { - return this.getGlobalTracingHelper().runInChildSpan(r, t); - } - getGlobalTracingHelper() { - let r = globalThis[`V${Tf}_PRISMA_INSTRUMENTATION`], - t = globalThis.PRISMA_INSTRUMENTATION; - return r?.helper ?? t?.helper ?? Sf; - } - }; -function Hl() { - return new Ao(); -} -function Yl(e, r = () => {}) { - let t, - n = new Promise((i) => (t = i)); - return { - then(i) { - return (--e === 0 && t(r()), i?.(n)); - }, - }; -} -function zl(e) { - return typeof e == "string" - ? e - : e.reduce( - (r, t) => { - let n = typeof t == "string" ? t : t.level; - return n === "query" - ? r - : r && (t === "info" || r === "info") - ? "info" - : n; - }, - void 0, - ); -} -function zn(e) { - return typeof e.batchRequestIdx == "number"; -} -function Zl(e) { - if (e.action !== "findUnique" && e.action !== "findUniqueOrThrow") return; - let r = []; - return ( - e.modelName && r.push(e.modelName), - e.query.arguments && r.push(Co(e.query.arguments)), - r.push(Co(e.query.selection)), - r.join("") - ); -} -function Co(e) { - return `(${Object.keys(e) - .sort() - .map((t) => { - let n = e[t]; - return typeof n == "object" && n !== null ? `(${t} ${Co(n)})` : t; - }) - .join(" ")})`; -} -var Rf = { - aggregate: !1, - aggregateRaw: !1, - createMany: !0, - createManyAndReturn: !0, - createOne: !0, - deleteMany: !0, - deleteOne: !0, - executeRaw: !0, - findFirst: !1, - findFirstOrThrow: !1, - findMany: !1, - findRaw: !1, - findUnique: !1, - findUniqueOrThrow: !1, - groupBy: !1, - queryRaw: !1, - runCommandRaw: !0, - updateMany: !0, - updateManyAndReturn: !0, - updateOne: !0, - upsertOne: !0, -}; -function Io(e) { - return Rf[e]; -} -var Zn = class { - constructor(r) { - this.options = r; - this.batches = {}; - } - batches; - tickActive = !1; - request(r) { - let t = this.options.batchBy(r); - return t - ? (this.batches[t] || - ((this.batches[t] = []), - this.tickActive || - ((this.tickActive = !0), - process.nextTick(() => { - (this.dispatchBatches(), (this.tickActive = !1)); - }))), - new Promise((n, i) => { - this.batches[t].push({ request: r, resolve: n, reject: i }); - })) - : this.options.singleLoader(r); - } - dispatchBatches() { - for (let r in this.batches) { - let t = this.batches[r]; - (delete this.batches[r], - t.length === 1 - ? this.options - .singleLoader(t[0].request) - .then((n) => { - n instanceof Error ? t[0].reject(n) : t[0].resolve(n); - }) - .catch((n) => { - t[0].reject(n); - }) - : (t.sort((n, i) => this.options.batchOrder(n.request, i.request)), - this.options - .batchLoader(t.map((n) => n.request)) - .then((n) => { - if (n instanceof Error) - for (let i = 0; i < t.length; i++) t[i].reject(n); - else - for (let i = 0; i < t.length; i++) { - let o = n[i]; - o instanceof Error ? t[i].reject(o) : t[i].resolve(o); - } - }) - .catch((n) => { - for (let i = 0; i < t.length; i++) t[i].reject(n); - }))); - } - } - get [Symbol.toStringTag]() { - return "DataLoader"; - } -}; -function mr(e, r) { - if (r === null) return r; - switch (e) { - case "bigint": - return BigInt(r); - case "bytes": { - let { - buffer: t, - byteOffset: n, - byteLength: i, - } = Buffer.from(r, "base64"); - return new Uint8Array(t, n, i); - } - case "decimal": - return new Fe(r); - case "datetime": - case "date": - return new Date(r); - case "time": - return new Date(`1970-01-01T${r}Z`); - case "bigint-array": - return r.map((t) => mr("bigint", t)); - case "bytes-array": - return r.map((t) => mr("bytes", t)); - case "decimal-array": - return r.map((t) => mr("decimal", t)); - case "datetime-array": - return r.map((t) => mr("datetime", t)); - case "date-array": - return r.map((t) => mr("date", t)); - case "time-array": - return r.map((t) => mr("time", t)); - default: - return r; - } -} -function Xn(e) { - let r = [], - t = Af(e); - for (let n = 0; n < e.rows.length; n++) { - let i = e.rows[n], - o = { ...t }; - for (let s = 0; s < i.length; s++) o[e.columns[s]] = mr(e.types[s], i[s]); - r.push(o); - } - return r; -} -function Af(e) { - let r = {}; - for (let t = 0; t < e.columns.length; t++) r[e.columns[t]] = null; - return r; -} -var Cf = N("prisma:client:request_handler"), - ei = class { - client; - dataloader; - logEmitter; - constructor(r, t) { - ((this.logEmitter = t), - (this.client = r), - (this.dataloader = new Zn({ - batchLoader: rl(async ({ requests: n, customDataProxyFetch: i }) => { - let { transaction: o, otelParentCtx: s } = n[0], - a = n.map((p) => p.protocolQuery), - l = this.client._tracingHelper.getTraceParent(s), - u = n.some((p) => Io(p.protocolQuery.action)); - return ( - await this.client._engine.requestBatch(a, { - traceparent: l, - transaction: If(o), - containsWrite: u, - customDataProxyFetch: i, - }) - ).map((p, d) => { - if (p instanceof Error) return p; - try { - return this.mapQueryEngineResult(n[d], p); - } catch (f) { - return f; - } - }); - }), - singleLoader: async (n) => { - let i = n.transaction?.kind === "itx" ? Xl(n.transaction) : void 0, - o = await this.client._engine.request(n.protocolQuery, { - traceparent: this.client._tracingHelper.getTraceParent(), - interactiveTransaction: i, - isWrite: Io(n.protocolQuery.action), - customDataProxyFetch: n.customDataProxyFetch, - }); - return this.mapQueryEngineResult(n, o); - }, - batchBy: (n) => - n.transaction?.id - ? `transaction-${n.transaction.id}` - : Zl(n.protocolQuery), - batchOrder(n, i) { - return n.transaction?.kind === "batch" && - i.transaction?.kind === "batch" - ? n.transaction.index - i.transaction.index - : 0; - }, - }))); - } - async request(r) { - try { - return await this.dataloader.request(r); - } catch (t) { - let { - clientMethod: n, - callsite: i, - transaction: o, - args: s, - modelName: a, - } = r; - this.handleAndLogRequestError({ - error: t, - clientMethod: n, - callsite: i, - transaction: o, - args: s, - modelName: a, - globalOmit: r.globalOmit, - }); - } - } - mapQueryEngineResult({ dataPath: r, unpacker: t }, n) { - let i = n?.data, - o = this.unpack(i, r, t); - return process.env.PRISMA_CLIENT_GET_TIME ? { data: o } : o; - } - handleAndLogRequestError(r) { - try { - this.handleRequestError(r); - } catch (t) { - throw ( - this.logEmitter && - this.logEmitter.emit("error", { - message: t.message, - target: r.clientMethod, - timestamp: new Date(), - }), - t - ); - } - } - handleRequestError({ - error: r, - clientMethod: t, - callsite: n, - transaction: i, - args: o, - modelName: s, - globalOmit: a, - }) { - if ((Cf(r), Df(r, i))) throw r; - if (r instanceof z && Of(r)) { - let u = eu(r.meta); - Nn({ - args: o, - errors: [u], - callsite: n, - errorFormat: this.client._errorFormat, - originalMethod: t, - clientVersion: this.client._clientVersion, - globalOmit: a, - }); - } - let l = r.message; - if ( - (n && - (l = Tn({ - callsite: n, - originalMethod: t, - isPanic: r.isPanic, - showColors: this.client._errorFormat === "pretty", - message: l, - })), - (l = this.sanitizeMessage(l)), - r.code) - ) { - let u = s ? { modelName: s, ...r.meta } : r.meta; - throw new z(l, { - code: r.code, - clientVersion: this.client._clientVersion, - meta: u, - batchRequestIdx: r.batchRequestIdx, - }); - } else { - if (r.isPanic) throw new ae(l, this.client._clientVersion); - if (r instanceof V) - throw new V(l, { - clientVersion: this.client._clientVersion, - batchRequestIdx: r.batchRequestIdx, - }); - if (r instanceof P) throw new P(l, this.client._clientVersion); - if (r instanceof ae) throw new ae(l, this.client._clientVersion); - } - throw ((r.clientVersion = this.client._clientVersion), r); - } - sanitizeMessage(r) { - return this.client._errorFormat && this.client._errorFormat !== "pretty" - ? wr(r) - : r; - } - unpack(r, t, n) { - if (!r || (r.data && (r = r.data), !r)) return r; - let i = Object.keys(r)[0], - o = Object.values(r)[0], - s = t.filter((u) => u !== "select" && u !== "include"), - a = ao(o, s), - l = i === "queryRaw" ? Xn(a) : Vr(a); - return n ? n(l) : l; - } - get [Symbol.toStringTag]() { - return "RequestHandler"; - } - }; -function If(e) { - if (e) { - if (e.kind === "batch") - return { kind: "batch", options: { isolationLevel: e.isolationLevel } }; - if (e.kind === "itx") return { kind: "itx", options: Xl(e) }; - ar(e, "Unknown transaction kind"); - } -} -function Xl(e) { - return { id: e.id, payload: e.payload }; -} -function Df(e, r) { - return zn(e) && r?.kind === "batch" && e.batchRequestIdx !== r.index; -} -function Of(e) { - return e.code === "P2009" || e.code === "P2012"; -} -function eu(e) { - if (e.kind === "Union") return { kind: "Union", errors: e.errors.map(eu) }; - if (Array.isArray(e.selectionPath)) { - let [, ...r] = e.selectionPath; - return { ...e, selectionPath: r }; - } - return e; -} -var ru = xl; -var su = O(Ki()); -var _ = class extends Error { - constructor(r) { - (super( - r + - ` -Read more at https://pris.ly/d/client-constructor`, - ), - (this.name = "PrismaClientConstructorValidationError")); - } - get [Symbol.toStringTag]() { - return "PrismaClientConstructorValidationError"; - } -}; -x(_, "PrismaClientConstructorValidationError"); -var tu = [ - "datasources", - "datasourceUrl", - "errorFormat", - "adapter", - "log", - "transactionOptions", - "omit", - "__internal", - ], - nu = ["pretty", "colorless", "minimal"], - iu = ["info", "query", "warn", "error"], - kf = { - datasources: (e, { datasourceNames: r }) => { - if (e) { - if (typeof e != "object" || Array.isArray(e)) - throw new _( - `Invalid value ${JSON.stringify(e)} for "datasources" provided to PrismaClient constructor`, - ); - for (let [t, n] of Object.entries(e)) { - if (!r.includes(t)) { - let i = Jr(t, r) || ` Available datasources: ${r.join(", ")}`; - throw new _( - `Unknown datasource ${t} provided to PrismaClient constructor.${i}`, - ); - } - if (typeof n != "object" || Array.isArray(n)) - throw new _(`Invalid value ${JSON.stringify(e)} for datasource "${t}" provided to PrismaClient constructor. -It should have this form: { url: "CONNECTION_STRING" }`); - if (n && typeof n == "object") - for (let [i, o] of Object.entries(n)) { - if (i !== "url") - throw new _(`Invalid value ${JSON.stringify(e)} for datasource "${t}" provided to PrismaClient constructor. -It should have this form: { url: "CONNECTION_STRING" }`); - if (typeof o != "string") - throw new _(`Invalid value ${JSON.stringify(o)} for datasource "${t}" provided to PrismaClient constructor. -It should have this form: { url: "CONNECTION_STRING" }`); - } - } - } - }, - adapter: (e, r) => { - if (!e && Er(r.generator) === "client") - throw new _( - 'Using engine type "client" requires a driver adapter to be provided to PrismaClient constructor.', - ); - if (e !== null) { - if (e === void 0) - throw new _( - '"adapter" property must not be undefined, use null to conditionally disable driver adapters.', - ); - if (Er(r.generator) === "binary") - throw new _( - 'Cannot use a driver adapter with the "binary" Query Engine. Please use the "library" Query Engine.', - ); - } - }, - datasourceUrl: (e) => { - if (typeof e < "u" && typeof e != "string") - throw new _(`Invalid value ${JSON.stringify(e)} for "datasourceUrl" provided to PrismaClient constructor. -Expected string or undefined.`); - }, - errorFormat: (e) => { - if (e) { - if (typeof e != "string") - throw new _( - `Invalid value ${JSON.stringify(e)} for "errorFormat" provided to PrismaClient constructor.`, - ); - if (!nu.includes(e)) { - let r = Jr(e, nu); - throw new _( - `Invalid errorFormat ${e} provided to PrismaClient constructor.${r}`, - ); - } - } - }, - log: (e) => { - if (!e) return; - if (!Array.isArray(e)) - throw new _( - `Invalid value ${JSON.stringify(e)} for "log" provided to PrismaClient constructor.`, - ); - function r(t) { - if (typeof t == "string" && !iu.includes(t)) { - let n = Jr(t, iu); - throw new _( - `Invalid log level "${t}" provided to PrismaClient constructor.${n}`, - ); - } - } - for (let t of e) { - r(t); - let n = { - level: r, - emit: (i) => { - let o = ["stdout", "event"]; - if (!o.includes(i)) { - let s = Jr(i, o); - throw new _( - `Invalid value ${JSON.stringify(i)} for "emit" in logLevel provided to PrismaClient constructor.${s}`, - ); - } - }, - }; - if (t && typeof t == "object") - for (let [i, o] of Object.entries(t)) - if (n[i]) n[i](o); - else - throw new _( - `Invalid property ${i} for "log" provided to PrismaClient constructor`, - ); - } - }, - transactionOptions: (e) => { - if (!e) return; - let r = e.maxWait; - if (r != null && r <= 0) - throw new _( - `Invalid value ${r} for maxWait in "transactionOptions" provided to PrismaClient constructor. maxWait needs to be greater than 0`, - ); - let t = e.timeout; - if (t != null && t <= 0) - throw new _( - `Invalid value ${t} for timeout in "transactionOptions" provided to PrismaClient constructor. timeout needs to be greater than 0`, - ); - }, - omit: (e, r) => { - if (typeof e != "object") - throw new _('"omit" option is expected to be an object.'); - if (e === null) throw new _('"omit" option can not be `null`'); - let t = []; - for (let [n, i] of Object.entries(e)) { - let o = Nf(n, r.runtimeDataModel); - if (!o) { - t.push({ kind: "UnknownModel", modelKey: n }); - continue; - } - for (let [s, a] of Object.entries(i)) { - let l = o.fields.find((u) => u.name === s); - if (!l) { - t.push({ kind: "UnknownField", modelKey: n, fieldName: s }); - continue; - } - if (l.relationName) { - t.push({ kind: "RelationInOmit", modelKey: n, fieldName: s }); - continue; - } - typeof a != "boolean" && - t.push({ kind: "InvalidFieldValue", modelKey: n, fieldName: s }); - } - } - if (t.length > 0) throw new _(Lf(e, t)); - }, - __internal: (e) => { - if (!e) return; - let r = ["debug", "engine", "configOverride"]; - if (typeof e != "object") - throw new _( - `Invalid value ${JSON.stringify(e)} for "__internal" to PrismaClient constructor`, - ); - for (let [t] of Object.entries(e)) - if (!r.includes(t)) { - let n = Jr(t, r); - throw new _( - `Invalid property ${JSON.stringify(t)} for "__internal" provided to PrismaClient constructor.${n}`, - ); - } - }, - }; -function au(e, r) { - for (let [t, n] of Object.entries(e)) { - if (!tu.includes(t)) { - let i = Jr(t, tu); - throw new _( - `Unknown property ${t} provided to PrismaClient constructor.${i}`, - ); - } - kf[t](n, r); - } - if (e.datasourceUrl && e.datasources) - throw new _( - 'Can not use "datasourceUrl" and "datasources" options at the same time. Pick one of them', - ); -} -function Jr(e, r) { - if (r.length === 0 || typeof e != "string") return ""; - let t = _f(e, r); - return t ? ` Did you mean "${t}"?` : ""; -} -function _f(e, r) { - if (r.length === 0) return null; - let t = r.map((i) => ({ value: i, distance: (0, su.default)(e, i) })); - t.sort((i, o) => (i.distance < o.distance ? -1 : 1)); - let n = t[0]; - return n.distance < 3 ? n.value : null; -} -function Nf(e, r) { - return ou(r.models, e) ?? ou(r.types, e); -} -function ou(e, r) { - let t = Object.keys(e).find((n) => We(n) === r); - if (t) return e[t]; -} -function Lf(e, r) { - let t = _r(e); - for (let o of r) - switch (o.kind) { - case "UnknownModel": - (t.arguments.getField(o.modelKey)?.markAsError(), - t.addErrorMessage(() => `Unknown model name: ${o.modelKey}.`)); - break; - case "UnknownField": - (t.arguments.getDeepField([o.modelKey, o.fieldName])?.markAsError(), - t.addErrorMessage( - () => - `Model "${o.modelKey}" does not have a field named "${o.fieldName}".`, - )); - break; - case "RelationInOmit": - (t.arguments.getDeepField([o.modelKey, o.fieldName])?.markAsError(), - t.addErrorMessage( - () => - 'Relations are already excluded by default and can not be specified in "omit".', - )); - break; - case "InvalidFieldValue": - (t.arguments - .getDeepFieldValue([o.modelKey, o.fieldName]) - ?.markAsError(), - t.addErrorMessage( - () => "Omit field option value must be a boolean.", - )); - break; - } - let { message: n, args: i } = _n(t, "colorless"); - return `Error validating "omit" option: +`)}var So=({clientMethod:e,activeProvider:r})=>t=>{let n="",i;if(Vn(t))n=t.sql,i={values:Wr(t.values),__prismaRawParameters__:!0};else if(Array.isArray(t)){let[o,...s]=t;n=o,i={values:Wr(s||[]),__prismaRawParameters__:!0}}else switch(r){case"sqlite":case"mysql":{n=t.sql,i={values:Wr(t.values),__prismaRawParameters__:!0};break}case"cockroachdb":case"postgresql":case"postgres":{n=t.text,i={values:Wr(t.values),__prismaRawParameters__:!0};break}case"sqlserver":{n=Vl(t),i={values:Wr(t.values),__prismaRawParameters__:!0};break}default:throw new Error(`The ${r} provider does not support ${e}`)}return i?.values?Ql(`prisma.${e}(${n}, ${i.values})`):Ql(`prisma.${e}(${n})`),{query:n,parameters:i}},Wl={requestArgsToMiddlewareArgs(e){return[e.strings,...e.values]},middlewareArgsToRequestArgs(e){let[r,...t]=e;return new ie(r,t)}},Jl={requestArgsToMiddlewareArgs(e){return[e]},middlewareArgsToRequestArgs(e){return e[0]}};function Ro(e){return function(t,n){let i,o=(s=e)=>{try{return s===void 0||s?.kind==="itx"?i??=Kl(t(s)):Kl(t(s))}catch(a){return Promise.reject(a)}};return{get spec(){return n},then(s,a){return o().then(s,a)},catch(s){return o().catch(s)},finally(s){return o().finally(s)},requestTransaction(s){let a=o(s);return a.requestTransaction?a.requestTransaction(s):a},[Symbol.toStringTag]:"PrismaPromise"}}}function Kl(e){return typeof e.then=="function"?e:Promise.resolve(e)}var Tf=xi.split(".")[0],Sf={isEnabled(){return!1},getTraceParent(){return"00-10-10-00"},dispatchEngineSpans(){},getActiveContext(){},runInChildSpan(e,r){return r()}},Ao=class{isEnabled(){return this.getGlobalTracingHelper().isEnabled()}getTraceParent(r){return this.getGlobalTracingHelper().getTraceParent(r)}dispatchEngineSpans(r){return this.getGlobalTracingHelper().dispatchEngineSpans(r)}getActiveContext(){return this.getGlobalTracingHelper().getActiveContext()}runInChildSpan(r,t){return this.getGlobalTracingHelper().runInChildSpan(r,t)}getGlobalTracingHelper(){let r=globalThis[`V${Tf}_PRISMA_INSTRUMENTATION`],t=globalThis.PRISMA_INSTRUMENTATION;return r?.helper??t?.helper??Sf}};function Hl(){return new Ao}function Yl(e,r=()=>{}){let t,n=new Promise(i=>t=i);return{then(i){return--e===0&&t(r()),i?.(n)}}}function zl(e){return typeof e=="string"?e:e.reduce((r,t)=>{let n=typeof t=="string"?t:t.level;return n==="query"?r:r&&(t==="info"||r==="info")?"info":n},void 0)}function zn(e){return typeof e.batchRequestIdx=="number"}function Zl(e){if(e.action!=="findUnique"&&e.action!=="findUniqueOrThrow")return;let r=[];return e.modelName&&r.push(e.modelName),e.query.arguments&&r.push(Co(e.query.arguments)),r.push(Co(e.query.selection)),r.join("")}function Co(e){return`(${Object.keys(e).sort().map(t=>{let n=e[t];return typeof n=="object"&&n!==null?`(${t} ${Co(n)})`:t}).join(" ")})`}var Rf={aggregate:!1,aggregateRaw:!1,createMany:!0,createManyAndReturn:!0,createOne:!0,deleteMany:!0,deleteOne:!0,executeRaw:!0,findFirst:!1,findFirstOrThrow:!1,findMany:!1,findRaw:!1,findUnique:!1,findUniqueOrThrow:!1,groupBy:!1,queryRaw:!1,runCommandRaw:!0,updateMany:!0,updateManyAndReturn:!0,updateOne:!0,upsertOne:!0};function Io(e){return Rf[e]}var Zn=class{constructor(r){this.options=r;this.batches={}}batches;tickActive=!1;request(r){let t=this.options.batchBy(r);return t?(this.batches[t]||(this.batches[t]=[],this.tickActive||(this.tickActive=!0,process.nextTick(()=>{this.dispatchBatches(),this.tickActive=!1}))),new Promise((n,i)=>{this.batches[t].push({request:r,resolve:n,reject:i})})):this.options.singleLoader(r)}dispatchBatches(){for(let r in this.batches){let t=this.batches[r];delete this.batches[r],t.length===1?this.options.singleLoader(t[0].request).then(n=>{n instanceof Error?t[0].reject(n):t[0].resolve(n)}).catch(n=>{t[0].reject(n)}):(t.sort((n,i)=>this.options.batchOrder(n.request,i.request)),this.options.batchLoader(t.map(n=>n.request)).then(n=>{if(n instanceof Error)for(let i=0;i{for(let i=0;imr("bigint",t));case"bytes-array":return r.map(t=>mr("bytes",t));case"decimal-array":return r.map(t=>mr("decimal",t));case"datetime-array":return r.map(t=>mr("datetime",t));case"date-array":return r.map(t=>mr("date",t));case"time-array":return r.map(t=>mr("time",t));default:return r}}function Xn(e){let r=[],t=Af(e);for(let n=0;n{let{transaction:o,otelParentCtx:s}=n[0],a=n.map(p=>p.protocolQuery),l=this.client._tracingHelper.getTraceParent(s),u=n.some(p=>Io(p.protocolQuery.action));return(await this.client._engine.requestBatch(a,{traceparent:l,transaction:If(o),containsWrite:u,customDataProxyFetch:i})).map((p,d)=>{if(p instanceof Error)return p;try{return this.mapQueryEngineResult(n[d],p)}catch(f){return f}})}),singleLoader:async n=>{let i=n.transaction?.kind==="itx"?Xl(n.transaction):void 0,o=await this.client._engine.request(n.protocolQuery,{traceparent:this.client._tracingHelper.getTraceParent(),interactiveTransaction:i,isWrite:Io(n.protocolQuery.action),customDataProxyFetch:n.customDataProxyFetch});return this.mapQueryEngineResult(n,o)},batchBy:n=>n.transaction?.id?`transaction-${n.transaction.id}`:Zl(n.protocolQuery),batchOrder(n,i){return n.transaction?.kind==="batch"&&i.transaction?.kind==="batch"?n.transaction.index-i.transaction.index:0}})}async request(r){try{return await this.dataloader.request(r)}catch(t){let{clientMethod:n,callsite:i,transaction:o,args:s,modelName:a}=r;this.handleAndLogRequestError({error:t,clientMethod:n,callsite:i,transaction:o,args:s,modelName:a,globalOmit:r.globalOmit})}}mapQueryEngineResult({dataPath:r,unpacker:t},n){let i=n?.data,o=this.unpack(i,r,t);return process.env.PRISMA_CLIENT_GET_TIME?{data:o}:o}handleAndLogRequestError(r){try{this.handleRequestError(r)}catch(t){throw this.logEmitter&&this.logEmitter.emit("error",{message:t.message,target:r.clientMethod,timestamp:new Date}),t}}handleRequestError({error:r,clientMethod:t,callsite:n,transaction:i,args:o,modelName:s,globalOmit:a}){if(Cf(r),Df(r,i))throw r;if(r instanceof z&&Of(r)){let u=eu(r.meta);Nn({args:o,errors:[u],callsite:n,errorFormat:this.client._errorFormat,originalMethod:t,clientVersion:this.client._clientVersion,globalOmit:a})}let l=r.message;if(n&&(l=Tn({callsite:n,originalMethod:t,isPanic:r.isPanic,showColors:this.client._errorFormat==="pretty",message:l})),l=this.sanitizeMessage(l),r.code){let u=s?{modelName:s,...r.meta}:r.meta;throw new z(l,{code:r.code,clientVersion:this.client._clientVersion,meta:u,batchRequestIdx:r.batchRequestIdx})}else{if(r.isPanic)throw new ae(l,this.client._clientVersion);if(r instanceof V)throw new V(l,{clientVersion:this.client._clientVersion,batchRequestIdx:r.batchRequestIdx});if(r instanceof P)throw new P(l,this.client._clientVersion);if(r instanceof ae)throw new ae(l,this.client._clientVersion)}throw r.clientVersion=this.client._clientVersion,r}sanitizeMessage(r){return this.client._errorFormat&&this.client._errorFormat!=="pretty"?wr(r):r}unpack(r,t,n){if(!r||(r.data&&(r=r.data),!r))return r;let i=Object.keys(r)[0],o=Object.values(r)[0],s=t.filter(u=>u!=="select"&&u!=="include"),a=ao(o,s),l=i==="queryRaw"?Xn(a):Vr(a);return n?n(l):l}get[Symbol.toStringTag](){return"RequestHandler"}};function If(e){if(e){if(e.kind==="batch")return{kind:"batch",options:{isolationLevel:e.isolationLevel}};if(e.kind==="itx")return{kind:"itx",options:Xl(e)};ar(e,"Unknown transaction kind")}}function Xl(e){return{id:e.id,payload:e.payload}}function Df(e,r){return zn(e)&&r?.kind==="batch"&&e.batchRequestIdx!==r.index}function Of(e){return e.code==="P2009"||e.code==="P2012"}function eu(e){if(e.kind==="Union")return{kind:"Union",errors:e.errors.map(eu)};if(Array.isArray(e.selectionPath)){let[,...r]=e.selectionPath;return{...e,selectionPath:r}}return e}var ru=xl;var su=O(Ki());var _=class extends Error{constructor(r){super(r+` +Read more at https://pris.ly/d/client-constructor`),this.name="PrismaClientConstructorValidationError"}get[Symbol.toStringTag](){return"PrismaClientConstructorValidationError"}};x(_,"PrismaClientConstructorValidationError");var tu=["datasources","datasourceUrl","errorFormat","adapter","log","transactionOptions","omit","__internal"],nu=["pretty","colorless","minimal"],iu=["info","query","warn","error"],kf={datasources:(e,{datasourceNames:r})=>{if(e){if(typeof e!="object"||Array.isArray(e))throw new _(`Invalid value ${JSON.stringify(e)} for "datasources" provided to PrismaClient constructor`);for(let[t,n]of Object.entries(e)){if(!r.includes(t)){let i=Jr(t,r)||` Available datasources: ${r.join(", ")}`;throw new _(`Unknown datasource ${t} provided to PrismaClient constructor.${i}`)}if(typeof n!="object"||Array.isArray(n))throw new _(`Invalid value ${JSON.stringify(e)} for datasource "${t}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`);if(n&&typeof n=="object")for(let[i,o]of Object.entries(n)){if(i!=="url")throw new _(`Invalid value ${JSON.stringify(e)} for datasource "${t}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`);if(typeof o!="string")throw new _(`Invalid value ${JSON.stringify(o)} for datasource "${t}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`)}}}},adapter:(e,r)=>{if(!e&&Er(r.generator)==="client")throw new _('Using engine type "client" requires a driver adapter to be provided to PrismaClient constructor.');if(e!==null){if(e===void 0)throw new _('"adapter" property must not be undefined, use null to conditionally disable driver adapters.');if(Er(r.generator)==="binary")throw new _('Cannot use a driver adapter with the "binary" Query Engine. Please use the "library" Query Engine.')}},datasourceUrl:e=>{if(typeof e<"u"&&typeof e!="string")throw new _(`Invalid value ${JSON.stringify(e)} for "datasourceUrl" provided to PrismaClient constructor. +Expected string or undefined.`)},errorFormat:e=>{if(e){if(typeof e!="string")throw new _(`Invalid value ${JSON.stringify(e)} for "errorFormat" provided to PrismaClient constructor.`);if(!nu.includes(e)){let r=Jr(e,nu);throw new _(`Invalid errorFormat ${e} provided to PrismaClient constructor.${r}`)}}},log:e=>{if(!e)return;if(!Array.isArray(e))throw new _(`Invalid value ${JSON.stringify(e)} for "log" provided to PrismaClient constructor.`);function r(t){if(typeof t=="string"&&!iu.includes(t)){let n=Jr(t,iu);throw new _(`Invalid log level "${t}" provided to PrismaClient constructor.${n}`)}}for(let t of e){r(t);let n={level:r,emit:i=>{let o=["stdout","event"];if(!o.includes(i)){let s=Jr(i,o);throw new _(`Invalid value ${JSON.stringify(i)} for "emit" in logLevel provided to PrismaClient constructor.${s}`)}}};if(t&&typeof t=="object")for(let[i,o]of Object.entries(t))if(n[i])n[i](o);else throw new _(`Invalid property ${i} for "log" provided to PrismaClient constructor`)}},transactionOptions:e=>{if(!e)return;let r=e.maxWait;if(r!=null&&r<=0)throw new _(`Invalid value ${r} for maxWait in "transactionOptions" provided to PrismaClient constructor. maxWait needs to be greater than 0`);let t=e.timeout;if(t!=null&&t<=0)throw new _(`Invalid value ${t} for timeout in "transactionOptions" provided to PrismaClient constructor. timeout needs to be greater than 0`)},omit:(e,r)=>{if(typeof e!="object")throw new _('"omit" option is expected to be an object.');if(e===null)throw new _('"omit" option can not be `null`');let t=[];for(let[n,i]of Object.entries(e)){let o=Nf(n,r.runtimeDataModel);if(!o){t.push({kind:"UnknownModel",modelKey:n});continue}for(let[s,a]of Object.entries(i)){let l=o.fields.find(u=>u.name===s);if(!l){t.push({kind:"UnknownField",modelKey:n,fieldName:s});continue}if(l.relationName){t.push({kind:"RelationInOmit",modelKey:n,fieldName:s});continue}typeof a!="boolean"&&t.push({kind:"InvalidFieldValue",modelKey:n,fieldName:s})}}if(t.length>0)throw new _(Lf(e,t))},__internal:e=>{if(!e)return;let r=["debug","engine","configOverride"];if(typeof e!="object")throw new _(`Invalid value ${JSON.stringify(e)} for "__internal" to PrismaClient constructor`);for(let[t]of Object.entries(e))if(!r.includes(t)){let n=Jr(t,r);throw new _(`Invalid property ${JSON.stringify(t)} for "__internal" provided to PrismaClient constructor.${n}`)}}};function au(e,r){for(let[t,n]of Object.entries(e)){if(!tu.includes(t)){let i=Jr(t,tu);throw new _(`Unknown property ${t} provided to PrismaClient constructor.${i}`)}kf[t](n,r)}if(e.datasourceUrl&&e.datasources)throw new _('Can not use "datasourceUrl" and "datasources" options at the same time. Pick one of them')}function Jr(e,r){if(r.length===0||typeof e!="string")return"";let t=_f(e,r);return t?` Did you mean "${t}"?`:""}function _f(e,r){if(r.length===0)return null;let t=r.map(i=>({value:i,distance:(0,su.default)(e,i)}));t.sort((i,o)=>i.distanceWe(n)===r);if(t)return e[t]}function Lf(e,r){let t=_r(e);for(let o of r)switch(o.kind){case"UnknownModel":t.arguments.getField(o.modelKey)?.markAsError(),t.addErrorMessage(()=>`Unknown model name: ${o.modelKey}.`);break;case"UnknownField":t.arguments.getDeepField([o.modelKey,o.fieldName])?.markAsError(),t.addErrorMessage(()=>`Model "${o.modelKey}" does not have a field named "${o.fieldName}".`);break;case"RelationInOmit":t.arguments.getDeepField([o.modelKey,o.fieldName])?.markAsError(),t.addErrorMessage(()=>'Relations are already excluded by default and can not be specified in "omit".');break;case"InvalidFieldValue":t.arguments.getDeepFieldValue([o.modelKey,o.fieldName])?.markAsError(),t.addErrorMessage(()=>"Omit field option value must be a boolean.");break}let{message:n,args:i}=_n(t,"colorless");return`Error validating "omit" option: ${i} -${n}`; -} -function lu(e) { - return e.length === 0 - ? Promise.resolve([]) - : new Promise((r, t) => { - let n = new Array(e.length), - i = null, - o = !1, - s = 0, - a = () => { - o || (s++, s === e.length && ((o = !0), i ? t(i) : r(n))); - }, - l = (u) => { - o || ((o = !0), t(u)); - }; - for (let u = 0; u < e.length; u++) - e[u].then( - (c) => { - ((n[u] = c), a()); - }, - (c) => { - if (!zn(c)) { - l(c); - return; - } - c.batchRequestIdx === u ? l(c) : (i || (i = c), a()); - }, - ); - }); -} -var rr = N("prisma:client"); -typeof globalThis == "object" && (globalThis.NODE_CLIENT = !0); -var Ff = { - requestArgsToMiddlewareArgs: (e) => e, - middlewareArgsToRequestArgs: (e) => e, - }, - Mf = Symbol.for("prisma.client.transaction.id"), - $f = { - id: 0, - nextId() { - return ++this.id; - }, - }; -function fu(e) { - class r { - _originalClient = this; - _runtimeDataModel; - _requestHandler; - _connectionPromise; - _disconnectionPromise; - _engineConfig; - _accelerateEngineConfig; - _clientVersion; - _errorFormat; - _tracingHelper; - _previewFeatures; - _activeProvider; - _globalOmit; - _extensions; - _engine; - _appliedParent; - _createPrismaPromise = Ro(); - constructor(n) { - ((e = n?.__internal?.configOverride?.(e) ?? e), sl(e), n && au(n, e)); - let i = new du.EventEmitter().on("error", () => {}); - ((this._extensions = Nr.empty()), - (this._previewFeatures = $l(e)), - (this._clientVersion = e.clientVersion ?? ru), - (this._activeProvider = e.activeProvider), - (this._globalOmit = n?.omit), - (this._tracingHelper = Hl())); - let o = e.relativeEnvPaths && { - rootEnvPath: - e.relativeEnvPaths.rootEnvPath && - ri.default.resolve(e.dirname, e.relativeEnvPaths.rootEnvPath), - schemaEnvPath: - e.relativeEnvPaths.schemaEnvPath && - ri.default.resolve(e.dirname, e.relativeEnvPaths.schemaEnvPath), - }, - s; - if (n?.adapter) { - s = n.adapter; - let l = - e.activeProvider === "postgresql" || - e.activeProvider === "cockroachdb" - ? "postgres" - : e.activeProvider; - if (s.provider !== l) - throw new P( - `The Driver Adapter \`${s.adapterName}\`, based on \`${s.provider}\`, is not compatible with the provider \`${l}\` specified in the Prisma schema.`, - this._clientVersion, - ); - if (n.datasources || n.datasourceUrl !== void 0) - throw new P( - "Custom datasource configuration is not compatible with Prisma Driver Adapters. Please define the database connection string directly in the Driver Adapter configuration.", - this._clientVersion, - ); - } - let a = - (!s && o && st(o, { conflictCheck: "none" })) || - e.injectableEdgeEnv?.(); - try { - let l = n ?? {}, - u = l.__internal ?? {}, - c = u.debug === !0; - c && N.enable("prisma:client"); - let p = ri.default.resolve(e.dirname, e.relativePath); - (mu.default.existsSync(p) || (p = e.dirname), - rr("dirname", e.dirname), - rr("relativePath", e.relativePath), - rr("cwd", p)); - let d = u.engine || {}; - if ( - (l.errorFormat - ? (this._errorFormat = l.errorFormat) - : process.env.NODE_ENV === "production" - ? (this._errorFormat = "minimal") - : process.env.NO_COLOR - ? (this._errorFormat = "colorless") - : (this._errorFormat = "colorless"), - (this._runtimeDataModel = e.runtimeDataModel), - (this._engineConfig = { - cwd: p, - dirname: e.dirname, - enableDebugLogs: c, - allowTriggerPanic: d.allowTriggerPanic, - prismaPath: d.binaryPath ?? void 0, - engineEndpoint: d.endpoint, - generator: e.generator, - showColors: this._errorFormat === "pretty", - logLevel: l.log && zl(l.log), - logQueries: - l.log && - !!(typeof l.log == "string" - ? l.log === "query" - : l.log.find((f) => - typeof f == "string" ? f === "query" : f.level === "query", - )), - env: a?.parsed ?? {}, - flags: [], - engineWasm: e.engineWasm, - compilerWasm: e.compilerWasm, - clientVersion: e.clientVersion, - engineVersion: e.engineVersion, - previewFeatures: this._previewFeatures, - activeProvider: e.activeProvider, - inlineSchema: e.inlineSchema, - overrideDatasources: al(l, e.datasourceNames), - inlineDatasources: e.inlineDatasources, - inlineSchemaHash: e.inlineSchemaHash, - tracingHelper: this._tracingHelper, - transactionOptions: { - maxWait: l.transactionOptions?.maxWait ?? 2e3, - timeout: l.transactionOptions?.timeout ?? 5e3, - isolationLevel: l.transactionOptions?.isolationLevel, - }, - logEmitter: i, - isBundled: e.isBundled, - adapter: s, - }), - (this._accelerateEngineConfig = { - ...this._engineConfig, - accelerateUtils: { - resolveDatasourceUrl: jr, - getBatchRequestPayload: Mr, - prismaGraphQLToJSError: $r, - PrismaClientUnknownRequestError: V, - PrismaClientInitializationError: P, - PrismaClientKnownRequestError: z, - debug: N("prisma:client:accelerateEngine"), - engineVersion: cu.version, - clientVersion: e.clientVersion, - }, - }), - rr("clientVersion", e.clientVersion), - (this._engine = Ml(e, this._engineConfig)), - (this._requestHandler = new ei(this, i)), - l.log) - ) - for (let f of l.log) { - let h = - typeof f == "string" ? f : f.emit === "stdout" ? f.level : null; - h && - this.$on(h, (g) => { - nt.log(`${nt.tags[h] ?? ""}`, g.message || g.query); - }); - } - } catch (l) { - throw ((l.clientVersion = this._clientVersion), l); - } - return (this._appliedParent = Pt(this)); - } - get [Symbol.toStringTag]() { - return "PrismaClient"; - } - $on(n, i) { - return ( - n === "beforeExit" - ? this._engine.onBeforeExit(i) - : n && this._engineConfig.logEmitter.on(n, i), - this - ); - } - $connect() { - try { - return this._engine.start(); - } catch (n) { - throw ((n.clientVersion = this._clientVersion), n); - } - } - async $disconnect() { - try { - await this._engine.stop(); - } catch (n) { - throw ((n.clientVersion = this._clientVersion), n); - } finally { - Uo(); - } - } - $executeRawInternal(n, i, o, s) { - let a = this._activeProvider; - return this._request({ - action: "executeRaw", - args: o, - transaction: n, - clientMethod: i, - argsMapper: So({ clientMethod: i, activeProvider: a }), - callsite: Ze(this._errorFormat), - dataPath: [], - middlewareArgsMapper: s, - }); - } - $executeRaw(n, ...i) { - return this._createPrismaPromise((o) => { - if (n.raw !== void 0 || n.sql !== void 0) { - let [s, a] = uu(n, i); - return ( - To( - this._activeProvider, - s.text, - s.values, - Array.isArray(n) - ? "prisma.$executeRaw``" - : "prisma.$executeRaw(sql``)", - ), - this.$executeRawInternal(o, "$executeRaw", s, a) - ); - } - throw new Z( - "`$executeRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$executeRaw`UPDATE User SET cool = ${true} WHERE email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#executeraw\n", - { clientVersion: this._clientVersion }, - ); - }); - } - $executeRawUnsafe(n, ...i) { - return this._createPrismaPromise( - (o) => ( - To( - this._activeProvider, - n, - i, - "prisma.$executeRawUnsafe(, [...values])", - ), - this.$executeRawInternal(o, "$executeRawUnsafe", [n, ...i]) - ), - ); - } - $runCommandRaw(n) { - if (e.activeProvider !== "mongodb") - throw new Z( - `The ${e.activeProvider} provider does not support $runCommandRaw. Use the mongodb provider.`, - { clientVersion: this._clientVersion }, - ); - return this._createPrismaPromise((i) => - this._request({ - args: n, - clientMethod: "$runCommandRaw", - dataPath: [], - action: "runCommandRaw", - argsMapper: ql, - callsite: Ze(this._errorFormat), - transaction: i, - }), - ); - } - async $queryRawInternal(n, i, o, s) { - let a = this._activeProvider; - return this._request({ - action: "queryRaw", - args: o, - transaction: n, - clientMethod: i, - argsMapper: So({ clientMethod: i, activeProvider: a }), - callsite: Ze(this._errorFormat), - dataPath: [], - middlewareArgsMapper: s, - }); - } - $queryRaw(n, ...i) { - return this._createPrismaPromise((o) => { - if (n.raw !== void 0 || n.sql !== void 0) - return this.$queryRawInternal(o, "$queryRaw", ...uu(n, i)); - throw new Z( - "`$queryRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$queryRaw`SELECT * FROM User WHERE id = ${1} OR email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#queryraw\n", - { clientVersion: this._clientVersion }, - ); - }); - } - $queryRawTyped(n) { - return this._createPrismaPromise((i) => { - if (!this._hasPreviewFlag("typedSql")) - throw new Z( - "`typedSql` preview feature must be enabled in order to access $queryRawTyped API", - { clientVersion: this._clientVersion }, - ); - return this.$queryRawInternal(i, "$queryRawTyped", n); - }); - } - $queryRawUnsafe(n, ...i) { - return this._createPrismaPromise((o) => - this.$queryRawInternal(o, "$queryRawUnsafe", [n, ...i]), - ); - } - _transactionWithArray({ promises: n, options: i }) { - let o = $f.nextId(), - s = Yl(n.length), - a = n.map((l, u) => { - if (l?.[Symbol.toStringTag] !== "PrismaPromise") - throw new Error( - "All elements of the array need to be Prisma Client promises. Hint: Please make sure you are not awaiting the Prisma client calls you intended to pass in the $transaction function.", - ); - let c = - i?.isolationLevel ?? - this._engineConfig.transactionOptions.isolationLevel, - p = { kind: "batch", id: o, index: u, isolationLevel: c, lock: s }; - return l.requestTransaction?.(p) ?? l; - }); - return lu(a); - } - async _transactionWithCallback({ callback: n, options: i }) { - let o = { traceparent: this._tracingHelper.getTraceParent() }, - s = { - maxWait: i?.maxWait ?? this._engineConfig.transactionOptions.maxWait, - timeout: i?.timeout ?? this._engineConfig.transactionOptions.timeout, - isolationLevel: - i?.isolationLevel ?? - this._engineConfig.transactionOptions.isolationLevel, - }, - a = await this._engine.transaction("start", o, s), - l; - try { - let u = { kind: "itx", ...a }; - ((l = await n(this._createItxClient(u))), - await this._engine.transaction("commit", o, a)); - } catch (u) { - throw ( - await this._engine.transaction("rollback", o, a).catch(() => {}), - u - ); - } - return l; - } - _createItxClient(n) { - return he( - Pt( - he(Qa(this), [ - re("_appliedParent", () => this._appliedParent._createItxClient(n)), - re("_createPrismaPromise", () => Ro(n)), - re(Mf, () => n.id), - ]), - ), - [Fr(Ya)], - ); - } - $transaction(n, i) { - let o; - typeof n == "function" - ? this._engineConfig.adapter?.adapterName === "@prisma/adapter-d1" - ? (o = () => { - throw new Error( - "Cloudflare D1 does not support interactive transactions. We recommend you to refactor your queries with that limitation in mind, and use batch transactions with `prisma.$transactions([])` where applicable.", - ); - }) - : (o = () => - this._transactionWithCallback({ callback: n, options: i })) - : (o = () => this._transactionWithArray({ promises: n, options: i })); - let s = { name: "transaction", attributes: { method: "$transaction" } }; - return this._tracingHelper.runInChildSpan(s, o); - } - _request(n) { - n.otelParentCtx = this._tracingHelper.getActiveContext(); - let i = n.middlewareArgsMapper ?? Ff, - o = { - args: i.requestArgsToMiddlewareArgs(n.args), - dataPath: n.dataPath, - runInTransaction: !!n.transaction, - action: n.action, - model: n.model, - }, - s = { - operation: { - name: "operation", - attributes: { - method: o.action, - model: o.model, - name: o.model ? `${o.model}.${o.action}` : o.action, - }, - }, - }, - a = async (l) => { - let { runInTransaction: u, args: c, ...p } = l, - d = { ...n, ...p }; - (c && (d.args = i.middlewareArgsToRequestArgs(c)), - n.transaction !== void 0 && u === !1 && delete d.transaction); - let f = await el(this, d); - return d.model - ? Ha({ - result: f, - modelName: d.model, - args: d.args, - extensions: this._extensions, - runtimeDataModel: this._runtimeDataModel, - globalOmit: this._globalOmit, - }) - : f; - }; - return this._tracingHelper.runInChildSpan(s.operation, () => - new pu.AsyncResource("prisma-client-request").runInAsyncScope(() => - a(o), - ), - ); - } - async _executeRequest({ - args: n, - clientMethod: i, - dataPath: o, - callsite: s, - action: a, - model: l, - argsMapper: u, - transaction: c, - unpacker: p, - otelParentCtx: d, - customDataProxyFetch: f, - }) { - try { - n = u ? u(n) : n; - let h = { name: "serialize" }, - g = this._tracingHelper.runInChildSpan(h, () => - $n({ - modelName: l, - runtimeDataModel: this._runtimeDataModel, - action: a, - args: n, - clientMethod: i, - callsite: s, - extensions: this._extensions, - errorFormat: this._errorFormat, - clientVersion: this._clientVersion, - previewFeatures: this._previewFeatures, - globalOmit: this._globalOmit, - }), - ); - return ( - N.enabled("prisma:client") && - (rr("Prisma Client call:"), - rr(`prisma.${i}(${Na(n)})`), - rr("Generated request:"), - rr( - JSON.stringify(g, null, 2) + - ` -`, - )), - c?.kind === "batch" && (await c.lock), - this._requestHandler.request({ - protocolQuery: g, - modelName: l, - action: a, - clientMethod: i, - dataPath: o, - callsite: s, - args: n, - extensions: this._extensions, - transaction: c, - unpacker: p, - otelParentCtx: d, - otelChildCtx: this._tracingHelper.getActiveContext(), - globalOmit: this._globalOmit, - customDataProxyFetch: f, - }) - ); - } catch (h) { - throw ((h.clientVersion = this._clientVersion), h); - } - } - $metrics = new Lr(this); - _hasPreviewFlag(n) { - return !!this._engineConfig.previewFeatures?.includes(n); - } - $applyPendingMigrations() { - return this._engine.applyPendingMigrations(); - } - $extends = Wa; - } - return r; -} -function uu(e, r) { - return qf(e) ? [new ie(e, r), Wl] : [e, Jl]; -} -function qf(e) { - return Array.isArray(e) && Array.isArray(e.raw); -} -var Vf = new Set([ - "toJSON", - "$$typeof", - "asymmetricMatch", - Symbol.iterator, - Symbol.toStringTag, - Symbol.isConcatSpreadable, - Symbol.toPrimitive, -]); -function gu(e) { - return new Proxy(e, { - get(r, t) { - if (t in r) return r[t]; - if (!Vf.has(t)) throw new TypeError(`Invalid enum value: ${String(t)}`); - }, - }); -} -function hu(e) { - st(e, { conflictCheck: "warn" }); -} -0 && - (module.exports = { - DMMF, - Debug, - Decimal, - Extensions, - MetricsClient, - PrismaClientInitializationError, - PrismaClientKnownRequestError, - PrismaClientRustPanicError, - PrismaClientUnknownRequestError, - PrismaClientValidationError, - Public, - Sql, - createParam, - defineDmmfProperty, - deserializeJsonResponse, - deserializeRawResult, - dmmfToRuntimeDataModel, - empty, - getPrismaClient, - getRuntime, - join, - makeStrictEnum, - makeTypedQueryFactory, - objectEnumValues, - raw, - serializeJsonQuery, - skip, - sqltag, - warnEnvConflicts, - warnOnce, - }); +${n}`}function lu(e){return e.length===0?Promise.resolve([]):new Promise((r,t)=>{let n=new Array(e.length),i=null,o=!1,s=0,a=()=>{o||(s++,s===e.length&&(o=!0,i?t(i):r(n)))},l=u=>{o||(o=!0,t(u))};for(let u=0;u{n[u]=c,a()},c=>{if(!zn(c)){l(c);return}c.batchRequestIdx===u?l(c):(i||(i=c),a())})})}var rr=N("prisma:client");typeof globalThis=="object"&&(globalThis.NODE_CLIENT=!0);var Ff={requestArgsToMiddlewareArgs:e=>e,middlewareArgsToRequestArgs:e=>e},Mf=Symbol.for("prisma.client.transaction.id"),$f={id:0,nextId(){return++this.id}};function fu(e){class r{_originalClient=this;_runtimeDataModel;_requestHandler;_connectionPromise;_disconnectionPromise;_engineConfig;_accelerateEngineConfig;_clientVersion;_errorFormat;_tracingHelper;_previewFeatures;_activeProvider;_globalOmit;_extensions;_engine;_appliedParent;_createPrismaPromise=Ro();constructor(n){e=n?.__internal?.configOverride?.(e)??e,sl(e),n&&au(n,e);let i=new du.EventEmitter().on("error",()=>{});this._extensions=Nr.empty(),this._previewFeatures=$l(e),this._clientVersion=e.clientVersion??ru,this._activeProvider=e.activeProvider,this._globalOmit=n?.omit,this._tracingHelper=Hl();let o=e.relativeEnvPaths&&{rootEnvPath:e.relativeEnvPaths.rootEnvPath&&ri.default.resolve(e.dirname,e.relativeEnvPaths.rootEnvPath),schemaEnvPath:e.relativeEnvPaths.schemaEnvPath&&ri.default.resolve(e.dirname,e.relativeEnvPaths.schemaEnvPath)},s;if(n?.adapter){s=n.adapter;let l=e.activeProvider==="postgresql"||e.activeProvider==="cockroachdb"?"postgres":e.activeProvider;if(s.provider!==l)throw new P(`The Driver Adapter \`${s.adapterName}\`, based on \`${s.provider}\`, is not compatible with the provider \`${l}\` specified in the Prisma schema.`,this._clientVersion);if(n.datasources||n.datasourceUrl!==void 0)throw new P("Custom datasource configuration is not compatible with Prisma Driver Adapters. Please define the database connection string directly in the Driver Adapter configuration.",this._clientVersion)}let a=!s&&o&&st(o,{conflictCheck:"none"})||e.injectableEdgeEnv?.();try{let l=n??{},u=l.__internal??{},c=u.debug===!0;c&&N.enable("prisma:client");let p=ri.default.resolve(e.dirname,e.relativePath);mu.default.existsSync(p)||(p=e.dirname),rr("dirname",e.dirname),rr("relativePath",e.relativePath),rr("cwd",p);let d=u.engine||{};if(l.errorFormat?this._errorFormat=l.errorFormat:process.env.NODE_ENV==="production"?this._errorFormat="minimal":process.env.NO_COLOR?this._errorFormat="colorless":this._errorFormat="colorless",this._runtimeDataModel=e.runtimeDataModel,this._engineConfig={cwd:p,dirname:e.dirname,enableDebugLogs:c,allowTriggerPanic:d.allowTriggerPanic,prismaPath:d.binaryPath??void 0,engineEndpoint:d.endpoint,generator:e.generator,showColors:this._errorFormat==="pretty",logLevel:l.log&&zl(l.log),logQueries:l.log&&!!(typeof l.log=="string"?l.log==="query":l.log.find(f=>typeof f=="string"?f==="query":f.level==="query")),env:a?.parsed??{},flags:[],engineWasm:e.engineWasm,compilerWasm:e.compilerWasm,clientVersion:e.clientVersion,engineVersion:e.engineVersion,previewFeatures:this._previewFeatures,activeProvider:e.activeProvider,inlineSchema:e.inlineSchema,overrideDatasources:al(l,e.datasourceNames),inlineDatasources:e.inlineDatasources,inlineSchemaHash:e.inlineSchemaHash,tracingHelper:this._tracingHelper,transactionOptions:{maxWait:l.transactionOptions?.maxWait??2e3,timeout:l.transactionOptions?.timeout??5e3,isolationLevel:l.transactionOptions?.isolationLevel},logEmitter:i,isBundled:e.isBundled,adapter:s},this._accelerateEngineConfig={...this._engineConfig,accelerateUtils:{resolveDatasourceUrl:jr,getBatchRequestPayload:Mr,prismaGraphQLToJSError:$r,PrismaClientUnknownRequestError:V,PrismaClientInitializationError:P,PrismaClientKnownRequestError:z,debug:N("prisma:client:accelerateEngine"),engineVersion:cu.version,clientVersion:e.clientVersion}},rr("clientVersion",e.clientVersion),this._engine=Ml(e,this._engineConfig),this._requestHandler=new ei(this,i),l.log)for(let f of l.log){let h=typeof f=="string"?f:f.emit==="stdout"?f.level:null;h&&this.$on(h,g=>{nt.log(`${nt.tags[h]??""}`,g.message||g.query)})}}catch(l){throw l.clientVersion=this._clientVersion,l}return this._appliedParent=Pt(this)}get[Symbol.toStringTag](){return"PrismaClient"}$on(n,i){return n==="beforeExit"?this._engine.onBeforeExit(i):n&&this._engineConfig.logEmitter.on(n,i),this}$connect(){try{return this._engine.start()}catch(n){throw n.clientVersion=this._clientVersion,n}}async $disconnect(){try{await this._engine.stop()}catch(n){throw n.clientVersion=this._clientVersion,n}finally{Uo()}}$executeRawInternal(n,i,o,s){let a=this._activeProvider;return this._request({action:"executeRaw",args:o,transaction:n,clientMethod:i,argsMapper:So({clientMethod:i,activeProvider:a}),callsite:Ze(this._errorFormat),dataPath:[],middlewareArgsMapper:s})}$executeRaw(n,...i){return this._createPrismaPromise(o=>{if(n.raw!==void 0||n.sql!==void 0){let[s,a]=uu(n,i);return To(this._activeProvider,s.text,s.values,Array.isArray(n)?"prisma.$executeRaw``":"prisma.$executeRaw(sql``)"),this.$executeRawInternal(o,"$executeRaw",s,a)}throw new Z("`$executeRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$executeRaw`UPDATE User SET cool = ${true} WHERE email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#executeraw\n",{clientVersion:this._clientVersion})})}$executeRawUnsafe(n,...i){return this._createPrismaPromise(o=>(To(this._activeProvider,n,i,"prisma.$executeRawUnsafe(, [...values])"),this.$executeRawInternal(o,"$executeRawUnsafe",[n,...i])))}$runCommandRaw(n){if(e.activeProvider!=="mongodb")throw new Z(`The ${e.activeProvider} provider does not support $runCommandRaw. Use the mongodb provider.`,{clientVersion:this._clientVersion});return this._createPrismaPromise(i=>this._request({args:n,clientMethod:"$runCommandRaw",dataPath:[],action:"runCommandRaw",argsMapper:ql,callsite:Ze(this._errorFormat),transaction:i}))}async $queryRawInternal(n,i,o,s){let a=this._activeProvider;return this._request({action:"queryRaw",args:o,transaction:n,clientMethod:i,argsMapper:So({clientMethod:i,activeProvider:a}),callsite:Ze(this._errorFormat),dataPath:[],middlewareArgsMapper:s})}$queryRaw(n,...i){return this._createPrismaPromise(o=>{if(n.raw!==void 0||n.sql!==void 0)return this.$queryRawInternal(o,"$queryRaw",...uu(n,i));throw new Z("`$queryRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$queryRaw`SELECT * FROM User WHERE id = ${1} OR email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#queryraw\n",{clientVersion:this._clientVersion})})}$queryRawTyped(n){return this._createPrismaPromise(i=>{if(!this._hasPreviewFlag("typedSql"))throw new Z("`typedSql` preview feature must be enabled in order to access $queryRawTyped API",{clientVersion:this._clientVersion});return this.$queryRawInternal(i,"$queryRawTyped",n)})}$queryRawUnsafe(n,...i){return this._createPrismaPromise(o=>this.$queryRawInternal(o,"$queryRawUnsafe",[n,...i]))}_transactionWithArray({promises:n,options:i}){let o=$f.nextId(),s=Yl(n.length),a=n.map((l,u)=>{if(l?.[Symbol.toStringTag]!=="PrismaPromise")throw new Error("All elements of the array need to be Prisma Client promises. Hint: Please make sure you are not awaiting the Prisma client calls you intended to pass in the $transaction function.");let c=i?.isolationLevel??this._engineConfig.transactionOptions.isolationLevel,p={kind:"batch",id:o,index:u,isolationLevel:c,lock:s};return l.requestTransaction?.(p)??l});return lu(a)}async _transactionWithCallback({callback:n,options:i}){let o={traceparent:this._tracingHelper.getTraceParent()},s={maxWait:i?.maxWait??this._engineConfig.transactionOptions.maxWait,timeout:i?.timeout??this._engineConfig.transactionOptions.timeout,isolationLevel:i?.isolationLevel??this._engineConfig.transactionOptions.isolationLevel},a=await this._engine.transaction("start",o,s),l;try{let u={kind:"itx",...a};l=await n(this._createItxClient(u)),await this._engine.transaction("commit",o,a)}catch(u){throw await this._engine.transaction("rollback",o,a).catch(()=>{}),u}return l}_createItxClient(n){return he(Pt(he(Qa(this),[re("_appliedParent",()=>this._appliedParent._createItxClient(n)),re("_createPrismaPromise",()=>Ro(n)),re(Mf,()=>n.id)])),[Fr(Ya)])}$transaction(n,i){let o;typeof n=="function"?this._engineConfig.adapter?.adapterName==="@prisma/adapter-d1"?o=()=>{throw new Error("Cloudflare D1 does not support interactive transactions. We recommend you to refactor your queries with that limitation in mind, and use batch transactions with `prisma.$transactions([])` where applicable.")}:o=()=>this._transactionWithCallback({callback:n,options:i}):o=()=>this._transactionWithArray({promises:n,options:i});let s={name:"transaction",attributes:{method:"$transaction"}};return this._tracingHelper.runInChildSpan(s,o)}_request(n){n.otelParentCtx=this._tracingHelper.getActiveContext();let i=n.middlewareArgsMapper??Ff,o={args:i.requestArgsToMiddlewareArgs(n.args),dataPath:n.dataPath,runInTransaction:!!n.transaction,action:n.action,model:n.model},s={operation:{name:"operation",attributes:{method:o.action,model:o.model,name:o.model?`${o.model}.${o.action}`:o.action}}},a=async l=>{let{runInTransaction:u,args:c,...p}=l,d={...n,...p};c&&(d.args=i.middlewareArgsToRequestArgs(c)),n.transaction!==void 0&&u===!1&&delete d.transaction;let f=await el(this,d);return d.model?Ha({result:f,modelName:d.model,args:d.args,extensions:this._extensions,runtimeDataModel:this._runtimeDataModel,globalOmit:this._globalOmit}):f};return this._tracingHelper.runInChildSpan(s.operation,()=>new pu.AsyncResource("prisma-client-request").runInAsyncScope(()=>a(o)))}async _executeRequest({args:n,clientMethod:i,dataPath:o,callsite:s,action:a,model:l,argsMapper:u,transaction:c,unpacker:p,otelParentCtx:d,customDataProxyFetch:f}){try{n=u?u(n):n;let h={name:"serialize"},g=this._tracingHelper.runInChildSpan(h,()=>$n({modelName:l,runtimeDataModel:this._runtimeDataModel,action:a,args:n,clientMethod:i,callsite:s,extensions:this._extensions,errorFormat:this._errorFormat,clientVersion:this._clientVersion,previewFeatures:this._previewFeatures,globalOmit:this._globalOmit}));return N.enabled("prisma:client")&&(rr("Prisma Client call:"),rr(`prisma.${i}(${Na(n)})`),rr("Generated request:"),rr(JSON.stringify(g,null,2)+` +`)),c?.kind==="batch"&&await c.lock,this._requestHandler.request({protocolQuery:g,modelName:l,action:a,clientMethod:i,dataPath:o,callsite:s,args:n,extensions:this._extensions,transaction:c,unpacker:p,otelParentCtx:d,otelChildCtx:this._tracingHelper.getActiveContext(),globalOmit:this._globalOmit,customDataProxyFetch:f})}catch(h){throw h.clientVersion=this._clientVersion,h}}$metrics=new Lr(this);_hasPreviewFlag(n){return!!this._engineConfig.previewFeatures?.includes(n)}$applyPendingMigrations(){return this._engine.applyPendingMigrations()}$extends=Wa}return r}function uu(e,r){return qf(e)?[new ie(e,r),Wl]:[e,Jl]}function qf(e){return Array.isArray(e)&&Array.isArray(e.raw)}var Vf=new Set(["toJSON","$$typeof","asymmetricMatch",Symbol.iterator,Symbol.toStringTag,Symbol.isConcatSpreadable,Symbol.toPrimitive]);function gu(e){return new Proxy(e,{get(r,t){if(t in r)return r[t];if(!Vf.has(t))throw new TypeError(`Invalid enum value: ${String(t)}`)}})}function hu(e){st(e,{conflictCheck:"warn"})}0&&(module.exports={DMMF,Debug,Decimal,Extensions,MetricsClient,PrismaClientInitializationError,PrismaClientKnownRequestError,PrismaClientRustPanicError,PrismaClientUnknownRequestError,PrismaClientValidationError,Public,Sql,createParam,defineDmmfProperty,deserializeJsonResponse,deserializeRawResult,dmmfToRuntimeDataModel,empty,getPrismaClient,getRuntime,join,makeStrictEnum,makeTypedQueryFactory,objectEnumValues,raw,serializeJsonQuery,skip,sqltag,warnEnvConflicts,warnOnce}); /*! Bundled license information: decimal.js/decimal.mjs: diff --git a/generated/prisma/runtime/react-native.js b/generated/prisma/runtime/react-native.js index fd6934ce..78b1a9dc 100644 --- a/generated/prisma/runtime/react-native.js +++ b/generated/prisma/runtime/react-native.js @@ -1,8416 +1,26 @@ + /* !!! This is code generated by Prisma. Do not edit directly. !!! /* eslint-disable */ // biome-ignore-all lint: generated file -"use strict"; -var ha = Object.create; -var rr = Object.defineProperty; -var ya = Object.getOwnPropertyDescriptor; -var wa = Object.getOwnPropertyNames; -var ba = Object.getPrototypeOf, - xa = Object.prototype.hasOwnProperty; -var he = (e, t) => () => (e && (t = e((e = 0))), t); -var Ve = (e, t) => () => (t || e((t = { exports: {} }).exports, t), t.exports), - Xe = (e, t) => { - for (var r in t) rr(e, r, { get: t[r], enumerable: !0 }); - }, - ni = (e, t, r, n) => { - if ((t && typeof t == "object") || typeof t == "function") - for (let i of wa(t)) - !xa.call(e, i) && - i !== r && - rr(e, i, { - get: () => t[i], - enumerable: !(n = ya(t, i)) || n.enumerable, - }); - return e; - }; -var Qe = (e, t, r) => ( - (r = e != null ? ha(ba(e)) : {}), - ni( - t || !e || !e.__esModule - ? rr(r, "default", { value: e, enumerable: !0 }) - : r, - e, - ) - ), - Ea = (e) => ni(rr({}, "__esModule", { value: !0 }), e); -var y, - E, - c = he(() => { - "use strict"; - ((y = { - nextTick: (e, ...t) => { - setTimeout(() => { - e(...t); - }, 0); - }, - env: {}, - version: "", - cwd: () => "/", - stderr: {}, - argv: ["/bin/node"], - pid: 1e4, - }), - ({ cwd: E } = y)); - }); -var P, - p = he(() => { - "use strict"; - P = - globalThis.performance ?? - (() => { - let e = Date.now(); - return { now: () => Date.now() - e }; - })(); - }); -var x, - d = he(() => { - "use strict"; - x = () => {}; - x.prototype = x; - }); -var b, - f = he(() => { - "use strict"; - b = class { - value; - constructor(t) { - this.value = t; - } - deref() { - return this.value; - } - }; - }); -var Pi = Ve((nt) => { - "use strict"; - m(); - c(); - p(); - d(); - f(); - var li = (e, t) => () => ( - t || e((t = { exports: {} }).exports, t), - t.exports - ), - Pa = li((e) => { - "use strict"; - ((e.byteLength = l), (e.toByteArray = g), (e.fromByteArray = O)); - var t = [], - r = [], - n = typeof Uint8Array < "u" ? Uint8Array : Array, - i = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; - for (o = 0, s = i.length; o < s; ++o) - ((t[o] = i[o]), (r[i.charCodeAt(o)] = o)); - var o, s; - ((r[45] = 62), (r[95] = 63)); - function a(C) { - var S = C.length; - if (S % 4 > 0) - throw new Error("Invalid string. Length must be a multiple of 4"); - var F = C.indexOf("="); - F === -1 && (F = S); - var _ = F === S ? 0 : 4 - (F % 4); - return [F, _]; - } - function l(C) { - var S = a(C), - F = S[0], - _ = S[1]; - return ((F + _) * 3) / 4 - _; - } - function u(C, S, F) { - return ((S + F) * 3) / 4 - F; - } - function g(C) { - var S, - F = a(C), - _ = F[0], - L = F[1], - k = new n(u(C, _, L)), - q = 0, - Y = L > 0 ? _ - 4 : _, - U; - for (U = 0; U < Y; U += 4) - ((S = - (r[C.charCodeAt(U)] << 18) | - (r[C.charCodeAt(U + 1)] << 12) | - (r[C.charCodeAt(U + 2)] << 6) | - r[C.charCodeAt(U + 3)]), - (k[q++] = (S >> 16) & 255), - (k[q++] = (S >> 8) & 255), - (k[q++] = S & 255)); - return ( - L === 2 && - ((S = (r[C.charCodeAt(U)] << 2) | (r[C.charCodeAt(U + 1)] >> 4)), - (k[q++] = S & 255)), - L === 1 && - ((S = - (r[C.charCodeAt(U)] << 10) | - (r[C.charCodeAt(U + 1)] << 4) | - (r[C.charCodeAt(U + 2)] >> 2)), - (k[q++] = (S >> 8) & 255), - (k[q++] = S & 255)), - k - ); - } - function h(C) { - return ( - t[(C >> 18) & 63] + t[(C >> 12) & 63] + t[(C >> 6) & 63] + t[C & 63] - ); - } - function T(C, S, F) { - for (var _, L = [], k = S; k < F; k += 3) - ((_ = - ((C[k] << 16) & 16711680) + - ((C[k + 1] << 8) & 65280) + - (C[k + 2] & 255)), - L.push(h(_))); - return L.join(""); - } - function O(C) { - for ( - var S, F = C.length, _ = F % 3, L = [], k = 16383, q = 0, Y = F - _; - q < Y; - q += k - ) - L.push(T(C, q, q + k > Y ? Y : q + k)); - return ( - _ === 1 - ? ((S = C[F - 1]), L.push(t[S >> 2] + t[(S << 4) & 63] + "==")) - : _ === 2 && - ((S = (C[F - 2] << 8) + C[F - 1]), - L.push(t[S >> 10] + t[(S >> 4) & 63] + t[(S << 2) & 63] + "=")), - L.join("") - ); - } - }), - va = li((e) => { - ((e.read = function (t, r, n, i, o) { - var s, - a, - l = o * 8 - i - 1, - u = (1 << l) - 1, - g = u >> 1, - h = -7, - T = n ? o - 1 : 0, - O = n ? -1 : 1, - C = t[r + T]; - for ( - T += O, s = C & ((1 << -h) - 1), C >>= -h, h += l; - h > 0; - s = s * 256 + t[r + T], T += O, h -= 8 - ); - for ( - a = s & ((1 << -h) - 1), s >>= -h, h += i; - h > 0; - a = a * 256 + t[r + T], T += O, h -= 8 - ); - if (s === 0) s = 1 - g; - else { - if (s === u) return a ? NaN : (C ? -1 : 1) * (1 / 0); - ((a = a + Math.pow(2, i)), (s = s - g)); - } - return (C ? -1 : 1) * a * Math.pow(2, s - i); - }), - (e.write = function (t, r, n, i, o, s) { - var a, - l, - u, - g = s * 8 - o - 1, - h = (1 << g) - 1, - T = h >> 1, - O = o === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0, - C = i ? 0 : s - 1, - S = i ? 1 : -1, - F = r < 0 || (r === 0 && 1 / r < 0) ? 1 : 0; - for ( - r = Math.abs(r), - isNaN(r) || r === 1 / 0 - ? ((l = isNaN(r) ? 1 : 0), (a = h)) - : ((a = Math.floor(Math.log(r) / Math.LN2)), - r * (u = Math.pow(2, -a)) < 1 && (a--, (u *= 2)), - a + T >= 1 ? (r += O / u) : (r += O * Math.pow(2, 1 - T)), - r * u >= 2 && (a++, (u /= 2)), - a + T >= h - ? ((l = 0), (a = h)) - : a + T >= 1 - ? ((l = (r * u - 1) * Math.pow(2, o)), (a = a + T)) - : ((l = r * Math.pow(2, T - 1) * Math.pow(2, o)), - (a = 0))); - o >= 8; - t[n + C] = l & 255, C += S, l /= 256, o -= 8 - ); - for ( - a = (a << o) | l, g += o; - g > 0; - t[n + C] = a & 255, C += S, a /= 256, g -= 8 - ); - t[n + C - S] |= F * 128; - })); - }), - Xr = Pa(), - tt = va(), - ii = - typeof Symbol == "function" && typeof Symbol.for == "function" - ? Symbol.for("nodejs.util.inspect.custom") - : null; - nt.Buffer = A; - nt.SlowBuffer = Oa; - nt.INSPECT_MAX_BYTES = 50; - var nr = 2147483647; - nt.kMaxLength = nr; - A.TYPED_ARRAY_SUPPORT = Ta(); - !A.TYPED_ARRAY_SUPPORT && - typeof console < "u" && - typeof console.error == "function" && - console.error( - "This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.", - ); - function Ta() { - try { - let e = new Uint8Array(1), - t = { - foo: function () { - return 42; - }, - }; - return ( - Object.setPrototypeOf(t, Uint8Array.prototype), - Object.setPrototypeOf(e, t), - e.foo() === 42 - ); - } catch { - return !1; - } - } - Object.defineProperty(A.prototype, "parent", { - enumerable: !0, - get: function () { - if (A.isBuffer(this)) return this.buffer; - }, - }); - Object.defineProperty(A.prototype, "offset", { - enumerable: !0, - get: function () { - if (A.isBuffer(this)) return this.byteOffset; - }, - }); - function Ce(e) { - if (e > nr) - throw new RangeError( - 'The value "' + e + '" is invalid for option "size"', - ); - let t = new Uint8Array(e); - return (Object.setPrototypeOf(t, A.prototype), t); - } - function A(e, t, r) { - if (typeof e == "number") { - if (typeof t == "string") - throw new TypeError( - 'The "string" argument must be of type string. Received type number', - ); - return rn(e); - } - return ui(e, t, r); - } - A.poolSize = 8192; - function ui(e, t, r) { - if (typeof e == "string") return Ca(e, t); - if (ArrayBuffer.isView(e)) return Sa(e); - if (e == null) - throw new TypeError( - "The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + - typeof e, - ); - if ( - ye(e, ArrayBuffer) || - (e && ye(e.buffer, ArrayBuffer)) || - (typeof SharedArrayBuffer < "u" && - (ye(e, SharedArrayBuffer) || (e && ye(e.buffer, SharedArrayBuffer)))) - ) - return pi(e, t, r); - if (typeof e == "number") - throw new TypeError( - 'The "value" argument must not be of type number. Received type number', - ); - let n = e.valueOf && e.valueOf(); - if (n != null && n !== e) return A.from(n, t, r); - let i = Ra(e); - if (i) return i; - if ( - typeof Symbol < "u" && - Symbol.toPrimitive != null && - typeof e[Symbol.toPrimitive] == "function" - ) - return A.from(e[Symbol.toPrimitive]("string"), t, r); - throw new TypeError( - "The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + - typeof e, - ); - } - A.from = function (e, t, r) { - return ui(e, t, r); - }; - Object.setPrototypeOf(A.prototype, Uint8Array.prototype); - Object.setPrototypeOf(A, Uint8Array); - function ci(e) { - if (typeof e != "number") - throw new TypeError('"size" argument must be of type number'); - if (e < 0) - throw new RangeError( - 'The value "' + e + '" is invalid for option "size"', - ); - } - function Aa(e, t, r) { - return ( - ci(e), - e <= 0 - ? Ce(e) - : t !== void 0 - ? typeof r == "string" - ? Ce(e).fill(t, r) - : Ce(e).fill(t) - : Ce(e) - ); - } - A.alloc = function (e, t, r) { - return Aa(e, t, r); - }; - function rn(e) { - return (ci(e), Ce(e < 0 ? 0 : nn(e) | 0)); - } - A.allocUnsafe = function (e) { - return rn(e); - }; - A.allocUnsafeSlow = function (e) { - return rn(e); - }; - function Ca(e, t) { - if (((typeof t != "string" || t === "") && (t = "utf8"), !A.isEncoding(t))) - throw new TypeError("Unknown encoding: " + t); - let r = di(e, t) | 0, - n = Ce(r), - i = n.write(e, t); - return (i !== r && (n = n.slice(0, i)), n); - } - function en(e) { - let t = e.length < 0 ? 0 : nn(e.length) | 0, - r = Ce(t); - for (let n = 0; n < t; n += 1) r[n] = e[n] & 255; - return r; - } - function Sa(e) { - if (ye(e, Uint8Array)) { - let t = new Uint8Array(e); - return pi(t.buffer, t.byteOffset, t.byteLength); - } - return en(e); - } - function pi(e, t, r) { - if (t < 0 || e.byteLength < t) - throw new RangeError('"offset" is outside of buffer bounds'); - if (e.byteLength < t + (r || 0)) - throw new RangeError('"length" is outside of buffer bounds'); - let n; - return ( - t === void 0 && r === void 0 - ? (n = new Uint8Array(e)) - : r === void 0 - ? (n = new Uint8Array(e, t)) - : (n = new Uint8Array(e, t, r)), - Object.setPrototypeOf(n, A.prototype), - n - ); - } - function Ra(e) { - if (A.isBuffer(e)) { - let t = nn(e.length) | 0, - r = Ce(t); - return (r.length === 0 || e.copy(r, 0, 0, t), r); - } - if (e.length !== void 0) - return typeof e.length != "number" || sn(e.length) ? Ce(0) : en(e); - if (e.type === "Buffer" && Array.isArray(e.data)) return en(e.data); - } - function nn(e) { - if (e >= nr) - throw new RangeError( - "Attempt to allocate Buffer larger than maximum size: 0x" + - nr.toString(16) + - " bytes", - ); - return e | 0; - } - function Oa(e) { - return (+e != e && (e = 0), A.alloc(+e)); - } - A.isBuffer = function (e) { - return e != null && e._isBuffer === !0 && e !== A.prototype; - }; - A.compare = function (e, t) { - if ( - (ye(e, Uint8Array) && (e = A.from(e, e.offset, e.byteLength)), - ye(t, Uint8Array) && (t = A.from(t, t.offset, t.byteLength)), - !A.isBuffer(e) || !A.isBuffer(t)) - ) - throw new TypeError( - 'The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array', - ); - if (e === t) return 0; - let r = e.length, - n = t.length; - for (let i = 0, o = Math.min(r, n); i < o; ++i) - if (e[i] !== t[i]) { - ((r = e[i]), (n = t[i])); - break; - } - return r < n ? -1 : n < r ? 1 : 0; - }; - A.isEncoding = function (e) { - switch (String(e).toLowerCase()) { - case "hex": - case "utf8": - case "utf-8": - case "ascii": - case "latin1": - case "binary": - case "base64": - case "ucs2": - case "ucs-2": - case "utf16le": - case "utf-16le": - return !0; - default: - return !1; - } - }; - A.concat = function (e, t) { - if (!Array.isArray(e)) - throw new TypeError('"list" argument must be an Array of Buffers'); - if (e.length === 0) return A.alloc(0); - let r; - if (t === void 0) for (t = 0, r = 0; r < e.length; ++r) t += e[r].length; - let n = A.allocUnsafe(t), - i = 0; - for (r = 0; r < e.length; ++r) { - let o = e[r]; - if (ye(o, Uint8Array)) - i + o.length > n.length - ? (A.isBuffer(o) || (o = A.from(o)), o.copy(n, i)) - : Uint8Array.prototype.set.call(n, o, i); - else if (A.isBuffer(o)) o.copy(n, i); - else throw new TypeError('"list" argument must be an Array of Buffers'); - i += o.length; - } - return n; - }; - function di(e, t) { - if (A.isBuffer(e)) return e.length; - if (ArrayBuffer.isView(e) || ye(e, ArrayBuffer)) return e.byteLength; - if (typeof e != "string") - throw new TypeError( - 'The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type ' + - typeof e, - ); - let r = e.length, - n = arguments.length > 2 && arguments[2] === !0; - if (!n && r === 0) return 0; - let i = !1; - for (;;) - switch (t) { - case "ascii": - case "latin1": - case "binary": - return r; - case "utf8": - case "utf-8": - return tn(e).length; - case "ucs2": - case "ucs-2": - case "utf16le": - case "utf-16le": - return r * 2; - case "hex": - return r >>> 1; - case "base64": - return Ei(e).length; - default: - if (i) return n ? -1 : tn(e).length; - ((t = ("" + t).toLowerCase()), (i = !0)); - } - } - A.byteLength = di; - function ka(e, t, r) { - let n = !1; - if ( - ((t === void 0 || t < 0) && (t = 0), - t > this.length || - ((r === void 0 || r > this.length) && (r = this.length), r <= 0) || - ((r >>>= 0), (t >>>= 0), r <= t)) - ) - return ""; - for (e || (e = "utf8"); ; ) - switch (e) { - case "hex": - return ja(this, t, r); - case "utf8": - case "utf-8": - return mi(this, t, r); - case "ascii": - return qa(this, t, r); - case "latin1": - case "binary": - return Ba(this, t, r); - case "base64": - return La(this, t, r); - case "ucs2": - case "ucs-2": - case "utf16le": - case "utf-16le": - return $a(this, t, r); - default: - if (n) throw new TypeError("Unknown encoding: " + e); - ((e = (e + "").toLowerCase()), (n = !0)); - } - } - A.prototype._isBuffer = !0; - function Je(e, t, r) { - let n = e[t]; - ((e[t] = e[r]), (e[r] = n)); - } - A.prototype.swap16 = function () { - let e = this.length; - if (e % 2 !== 0) - throw new RangeError("Buffer size must be a multiple of 16-bits"); - for (let t = 0; t < e; t += 2) Je(this, t, t + 1); - return this; - }; - A.prototype.swap32 = function () { - let e = this.length; - if (e % 4 !== 0) - throw new RangeError("Buffer size must be a multiple of 32-bits"); - for (let t = 0; t < e; t += 4) (Je(this, t, t + 3), Je(this, t + 1, t + 2)); - return this; - }; - A.prototype.swap64 = function () { - let e = this.length; - if (e % 8 !== 0) - throw new RangeError("Buffer size must be a multiple of 64-bits"); - for (let t = 0; t < e; t += 8) - (Je(this, t, t + 7), - Je(this, t + 1, t + 6), - Je(this, t + 2, t + 5), - Je(this, t + 3, t + 4)); - return this; - }; - A.prototype.toString = function () { - let e = this.length; - return e === 0 - ? "" - : arguments.length === 0 - ? mi(this, 0, e) - : ka.apply(this, arguments); - }; - A.prototype.toLocaleString = A.prototype.toString; - A.prototype.equals = function (e) { - if (!A.isBuffer(e)) throw new TypeError("Argument must be a Buffer"); - return this === e ? !0 : A.compare(this, e) === 0; - }; - A.prototype.inspect = function () { - let e = "", - t = nt.INSPECT_MAX_BYTES; - return ( - (e = this.toString("hex", 0, t) - .replace(/(.{2})/g, "$1 ") - .trim()), - this.length > t && (e += " ... "), - "" - ); - }; - ii && (A.prototype[ii] = A.prototype.inspect); - A.prototype.compare = function (e, t, r, n, i) { - if ( - (ye(e, Uint8Array) && (e = A.from(e, e.offset, e.byteLength)), - !A.isBuffer(e)) - ) - throw new TypeError( - 'The "target" argument must be one of type Buffer or Uint8Array. Received type ' + - typeof e, - ); - if ( - (t === void 0 && (t = 0), - r === void 0 && (r = e ? e.length : 0), - n === void 0 && (n = 0), - i === void 0 && (i = this.length), - t < 0 || r > e.length || n < 0 || i > this.length) - ) - throw new RangeError("out of range index"); - if (n >= i && t >= r) return 0; - if (n >= i) return -1; - if (t >= r) return 1; - if (((t >>>= 0), (r >>>= 0), (n >>>= 0), (i >>>= 0), this === e)) return 0; - let o = i - n, - s = r - t, - a = Math.min(o, s), - l = this.slice(n, i), - u = e.slice(t, r); - for (let g = 0; g < a; ++g) - if (l[g] !== u[g]) { - ((o = l[g]), (s = u[g])); - break; - } - return o < s ? -1 : s < o ? 1 : 0; - }; - function fi(e, t, r, n, i) { - if (e.length === 0) return -1; - if ( - (typeof r == "string" - ? ((n = r), (r = 0)) - : r > 2147483647 - ? (r = 2147483647) - : r < -2147483648 && (r = -2147483648), - (r = +r), - sn(r) && (r = i ? 0 : e.length - 1), - r < 0 && (r = e.length + r), - r >= e.length) - ) { - if (i) return -1; - r = e.length - 1; - } else if (r < 0) - if (i) r = 0; - else return -1; - if ((typeof t == "string" && (t = A.from(t, n)), A.isBuffer(t))) - return t.length === 0 ? -1 : oi(e, t, r, n, i); - if (typeof t == "number") - return ( - (t = t & 255), - typeof Uint8Array.prototype.indexOf == "function" - ? i - ? Uint8Array.prototype.indexOf.call(e, t, r) - : Uint8Array.prototype.lastIndexOf.call(e, t, r) - : oi(e, [t], r, n, i) - ); - throw new TypeError("val must be string, number or Buffer"); - } - function oi(e, t, r, n, i) { - let o = 1, - s = e.length, - a = t.length; - if ( - n !== void 0 && - ((n = String(n).toLowerCase()), - n === "ucs2" || n === "ucs-2" || n === "utf16le" || n === "utf-16le") - ) { - if (e.length < 2 || t.length < 2) return -1; - ((o = 2), (s /= 2), (a /= 2), (r /= 2)); - } - function l(g, h) { - return o === 1 ? g[h] : g.readUInt16BE(h * o); - } - let u; - if (i) { - let g = -1; - for (u = r; u < s; u++) - if (l(e, u) === l(t, g === -1 ? 0 : u - g)) { - if ((g === -1 && (g = u), u - g + 1 === a)) return g * o; - } else (g !== -1 && (u -= u - g), (g = -1)); - } else - for (r + a > s && (r = s - a), u = r; u >= 0; u--) { - let g = !0; - for (let h = 0; h < a; h++) - if (l(e, u + h) !== l(t, h)) { - g = !1; - break; - } - if (g) return u; - } - return -1; - } - A.prototype.includes = function (e, t, r) { - return this.indexOf(e, t, r) !== -1; - }; - A.prototype.indexOf = function (e, t, r) { - return fi(this, e, t, r, !0); - }; - A.prototype.lastIndexOf = function (e, t, r) { - return fi(this, e, t, r, !1); - }; - function Ia(e, t, r, n) { - r = Number(r) || 0; - let i = e.length - r; - n ? ((n = Number(n)), n > i && (n = i)) : (n = i); - let o = t.length; - n > o / 2 && (n = o / 2); - let s; - for (s = 0; s < n; ++s) { - let a = parseInt(t.substr(s * 2, 2), 16); - if (sn(a)) return s; - e[r + s] = a; - } - return s; - } - function Fa(e, t, r, n) { - return ir(tn(t, e.length - r), e, r, n); - } - function Ma(e, t, r, n) { - return ir(Ja(t), e, r, n); - } - function _a(e, t, r, n) { - return ir(Ei(t), e, r, n); - } - function Da(e, t, r, n) { - return ir(Ga(t, e.length - r), e, r, n); - } - A.prototype.write = function (e, t, r, n) { - if (t === void 0) ((n = "utf8"), (r = this.length), (t = 0)); - else if (r === void 0 && typeof t == "string") - ((n = t), (r = this.length), (t = 0)); - else if (isFinite(t)) - ((t = t >>> 0), - isFinite(r) - ? ((r = r >>> 0), n === void 0 && (n = "utf8")) - : ((n = r), (r = void 0))); - else - throw new Error( - "Buffer.write(string, encoding, offset[, length]) is no longer supported", - ); - let i = this.length - t; - if ( - ((r === void 0 || r > i) && (r = i), - (e.length > 0 && (r < 0 || t < 0)) || t > this.length) - ) - throw new RangeError("Attempt to write outside buffer bounds"); - n || (n = "utf8"); - let o = !1; - for (;;) - switch (n) { - case "hex": - return Ia(this, e, t, r); - case "utf8": - case "utf-8": - return Fa(this, e, t, r); - case "ascii": - case "latin1": - case "binary": - return Ma(this, e, t, r); - case "base64": - return _a(this, e, t, r); - case "ucs2": - case "ucs-2": - case "utf16le": - case "utf-16le": - return Da(this, e, t, r); - default: - if (o) throw new TypeError("Unknown encoding: " + n); - ((n = ("" + n).toLowerCase()), (o = !0)); - } - }; - A.prototype.toJSON = function () { - return { - type: "Buffer", - data: Array.prototype.slice.call(this._arr || this, 0), - }; - }; - function La(e, t, r) { - return t === 0 && r === e.length - ? Xr.fromByteArray(e) - : Xr.fromByteArray(e.slice(t, r)); - } - function mi(e, t, r) { - r = Math.min(e.length, r); - let n = [], - i = t; - for (; i < r; ) { - let o = e[i], - s = null, - a = o > 239 ? 4 : o > 223 ? 3 : o > 191 ? 2 : 1; - if (i + a <= r) { - let l, u, g, h; - switch (a) { - case 1: - o < 128 && (s = o); - break; - case 2: - ((l = e[i + 1]), - (l & 192) === 128 && - ((h = ((o & 31) << 6) | (l & 63)), h > 127 && (s = h))); - break; - case 3: - ((l = e[i + 1]), - (u = e[i + 2]), - (l & 192) === 128 && - (u & 192) === 128 && - ((h = ((o & 15) << 12) | ((l & 63) << 6) | (u & 63)), - h > 2047 && (h < 55296 || h > 57343) && (s = h))); - break; - case 4: - ((l = e[i + 1]), - (u = e[i + 2]), - (g = e[i + 3]), - (l & 192) === 128 && - (u & 192) === 128 && - (g & 192) === 128 && - ((h = - ((o & 15) << 18) | - ((l & 63) << 12) | - ((u & 63) << 6) | - (g & 63)), - h > 65535 && h < 1114112 && (s = h))); - } - } - (s === null - ? ((s = 65533), (a = 1)) - : s > 65535 && - ((s -= 65536), - n.push(((s >>> 10) & 1023) | 55296), - (s = 56320 | (s & 1023))), - n.push(s), - (i += a)); - } - return Na(n); - } - var si = 4096; - function Na(e) { - let t = e.length; - if (t <= si) return String.fromCharCode.apply(String, e); - let r = "", - n = 0; - for (; n < t; ) - r += String.fromCharCode.apply(String, e.slice(n, (n += si))); - return r; - } - function qa(e, t, r) { - let n = ""; - r = Math.min(e.length, r); - for (let i = t; i < r; ++i) n += String.fromCharCode(e[i] & 127); - return n; - } - function Ba(e, t, r) { - let n = ""; - r = Math.min(e.length, r); - for (let i = t; i < r; ++i) n += String.fromCharCode(e[i]); - return n; - } - function ja(e, t, r) { - let n = e.length; - ((!t || t < 0) && (t = 0), (!r || r < 0 || r > n) && (r = n)); - let i = ""; - for (let o = t; o < r; ++o) i += Wa[e[o]]; - return i; - } - function $a(e, t, r) { - let n = e.slice(t, r), - i = ""; - for (let o = 0; o < n.length - 1; o += 2) - i += String.fromCharCode(n[o] + n[o + 1] * 256); - return i; - } - A.prototype.slice = function (e, t) { - let r = this.length; - ((e = ~~e), - (t = t === void 0 ? r : ~~t), - e < 0 ? ((e += r), e < 0 && (e = 0)) : e > r && (e = r), - t < 0 ? ((t += r), t < 0 && (t = 0)) : t > r && (t = r), - t < e && (t = e)); - let n = this.subarray(e, t); - return (Object.setPrototypeOf(n, A.prototype), n); - }; - function K(e, t, r) { - if (e % 1 !== 0 || e < 0) throw new RangeError("offset is not uint"); - if (e + t > r) - throw new RangeError("Trying to access beyond buffer length"); - } - A.prototype.readUintLE = A.prototype.readUIntLE = function (e, t, r) { - ((e = e >>> 0), (t = t >>> 0), r || K(e, t, this.length)); - let n = this[e], - i = 1, - o = 0; - for (; ++o < t && (i *= 256); ) n += this[e + o] * i; - return n; - }; - A.prototype.readUintBE = A.prototype.readUIntBE = function (e, t, r) { - ((e = e >>> 0), (t = t >>> 0), r || K(e, t, this.length)); - let n = this[e + --t], - i = 1; - for (; t > 0 && (i *= 256); ) n += this[e + --t] * i; - return n; - }; - A.prototype.readUint8 = A.prototype.readUInt8 = function (e, t) { - return ((e = e >>> 0), t || K(e, 1, this.length), this[e]); - }; - A.prototype.readUint16LE = A.prototype.readUInt16LE = function (e, t) { - return ( - (e = e >>> 0), - t || K(e, 2, this.length), - this[e] | (this[e + 1] << 8) - ); - }; - A.prototype.readUint16BE = A.prototype.readUInt16BE = function (e, t) { - return ( - (e = e >>> 0), - t || K(e, 2, this.length), - (this[e] << 8) | this[e + 1] - ); - }; - A.prototype.readUint32LE = A.prototype.readUInt32LE = function (e, t) { - return ( - (e = e >>> 0), - t || K(e, 4, this.length), - (this[e] | (this[e + 1] << 8) | (this[e + 2] << 16)) + - this[e + 3] * 16777216 - ); - }; - A.prototype.readUint32BE = A.prototype.readUInt32BE = function (e, t) { - return ( - (e = e >>> 0), - t || K(e, 4, this.length), - this[e] * 16777216 + - ((this[e + 1] << 16) | (this[e + 2] << 8) | this[e + 3]) - ); - }; - A.prototype.readBigUInt64LE = _e(function (e) { - ((e = e >>> 0), rt(e, "offset")); - let t = this[e], - r = this[e + 7]; - (t === void 0 || r === void 0) && Ct(e, this.length - 8); - let n = t + this[++e] * 2 ** 8 + this[++e] * 2 ** 16 + this[++e] * 2 ** 24, - i = this[++e] + this[++e] * 2 ** 8 + this[++e] * 2 ** 16 + r * 2 ** 24; - return BigInt(n) + (BigInt(i) << BigInt(32)); - }); - A.prototype.readBigUInt64BE = _e(function (e) { - ((e = e >>> 0), rt(e, "offset")); - let t = this[e], - r = this[e + 7]; - (t === void 0 || r === void 0) && Ct(e, this.length - 8); - let n = t * 2 ** 24 + this[++e] * 2 ** 16 + this[++e] * 2 ** 8 + this[++e], - i = this[++e] * 2 ** 24 + this[++e] * 2 ** 16 + this[++e] * 2 ** 8 + r; - return (BigInt(n) << BigInt(32)) + BigInt(i); - }); - A.prototype.readIntLE = function (e, t, r) { - ((e = e >>> 0), (t = t >>> 0), r || K(e, t, this.length)); - let n = this[e], - i = 1, - o = 0; - for (; ++o < t && (i *= 256); ) n += this[e + o] * i; - return ((i *= 128), n >= i && (n -= Math.pow(2, 8 * t)), n); - }; - A.prototype.readIntBE = function (e, t, r) { - ((e = e >>> 0), (t = t >>> 0), r || K(e, t, this.length)); - let n = t, - i = 1, - o = this[e + --n]; - for (; n > 0 && (i *= 256); ) o += this[e + --n] * i; - return ((i *= 128), o >= i && (o -= Math.pow(2, 8 * t)), o); - }; - A.prototype.readInt8 = function (e, t) { - return ( - (e = e >>> 0), - t || K(e, 1, this.length), - this[e] & 128 ? (255 - this[e] + 1) * -1 : this[e] - ); - }; - A.prototype.readInt16LE = function (e, t) { - ((e = e >>> 0), t || K(e, 2, this.length)); - let r = this[e] | (this[e + 1] << 8); - return r & 32768 ? r | 4294901760 : r; - }; - A.prototype.readInt16BE = function (e, t) { - ((e = e >>> 0), t || K(e, 2, this.length)); - let r = this[e + 1] | (this[e] << 8); - return r & 32768 ? r | 4294901760 : r; - }; - A.prototype.readInt32LE = function (e, t) { - return ( - (e = e >>> 0), - t || K(e, 4, this.length), - this[e] | (this[e + 1] << 8) | (this[e + 2] << 16) | (this[e + 3] << 24) - ); - }; - A.prototype.readInt32BE = function (e, t) { - return ( - (e = e >>> 0), - t || K(e, 4, this.length), - (this[e] << 24) | (this[e + 1] << 16) | (this[e + 2] << 8) | this[e + 3] - ); - }; - A.prototype.readBigInt64LE = _e(function (e) { - ((e = e >>> 0), rt(e, "offset")); - let t = this[e], - r = this[e + 7]; - (t === void 0 || r === void 0) && Ct(e, this.length - 8); - let n = - this[e + 4] + this[e + 5] * 2 ** 8 + this[e + 6] * 2 ** 16 + (r << 24); - return ( - (BigInt(n) << BigInt(32)) + - BigInt(t + this[++e] * 2 ** 8 + this[++e] * 2 ** 16 + this[++e] * 2 ** 24) - ); - }); - A.prototype.readBigInt64BE = _e(function (e) { - ((e = e >>> 0), rt(e, "offset")); - let t = this[e], - r = this[e + 7]; - (t === void 0 || r === void 0) && Ct(e, this.length - 8); - let n = (t << 24) + this[++e] * 2 ** 16 + this[++e] * 2 ** 8 + this[++e]; - return ( - (BigInt(n) << BigInt(32)) + - BigInt(this[++e] * 2 ** 24 + this[++e] * 2 ** 16 + this[++e] * 2 ** 8 + r) - ); - }); - A.prototype.readFloatLE = function (e, t) { - return ( - (e = e >>> 0), - t || K(e, 4, this.length), - tt.read(this, e, !0, 23, 4) - ); - }; - A.prototype.readFloatBE = function (e, t) { - return ( - (e = e >>> 0), - t || K(e, 4, this.length), - tt.read(this, e, !1, 23, 4) - ); - }; - A.prototype.readDoubleLE = function (e, t) { - return ( - (e = e >>> 0), - t || K(e, 8, this.length), - tt.read(this, e, !0, 52, 8) - ); - }; - A.prototype.readDoubleBE = function (e, t) { - return ( - (e = e >>> 0), - t || K(e, 8, this.length), - tt.read(this, e, !1, 52, 8) - ); - }; - function oe(e, t, r, n, i, o) { - if (!A.isBuffer(e)) - throw new TypeError('"buffer" argument must be a Buffer instance'); - if (t > i || t < o) - throw new RangeError('"value" argument is out of bounds'); - if (r + n > e.length) throw new RangeError("Index out of range"); - } - A.prototype.writeUintLE = A.prototype.writeUIntLE = function (e, t, r, n) { - if (((e = +e), (t = t >>> 0), (r = r >>> 0), !n)) { - let s = Math.pow(2, 8 * r) - 1; - oe(this, e, t, r, s, 0); - } - let i = 1, - o = 0; - for (this[t] = e & 255; ++o < r && (i *= 256); ) - this[t + o] = (e / i) & 255; - return t + r; - }; - A.prototype.writeUintBE = A.prototype.writeUIntBE = function (e, t, r, n) { - if (((e = +e), (t = t >>> 0), (r = r >>> 0), !n)) { - let s = Math.pow(2, 8 * r) - 1; - oe(this, e, t, r, s, 0); - } - let i = r - 1, - o = 1; - for (this[t + i] = e & 255; --i >= 0 && (o *= 256); ) - this[t + i] = (e / o) & 255; - return t + r; - }; - A.prototype.writeUint8 = A.prototype.writeUInt8 = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || oe(this, e, t, 1, 255, 0), - (this[t] = e & 255), - t + 1 - ); - }; - A.prototype.writeUint16LE = A.prototype.writeUInt16LE = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || oe(this, e, t, 2, 65535, 0), - (this[t] = e & 255), - (this[t + 1] = e >>> 8), - t + 2 - ); - }; - A.prototype.writeUint16BE = A.prototype.writeUInt16BE = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || oe(this, e, t, 2, 65535, 0), - (this[t] = e >>> 8), - (this[t + 1] = e & 255), - t + 2 - ); - }; - A.prototype.writeUint32LE = A.prototype.writeUInt32LE = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || oe(this, e, t, 4, 4294967295, 0), - (this[t + 3] = e >>> 24), - (this[t + 2] = e >>> 16), - (this[t + 1] = e >>> 8), - (this[t] = e & 255), - t + 4 - ); - }; - A.prototype.writeUint32BE = A.prototype.writeUInt32BE = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || oe(this, e, t, 4, 4294967295, 0), - (this[t] = e >>> 24), - (this[t + 1] = e >>> 16), - (this[t + 2] = e >>> 8), - (this[t + 3] = e & 255), - t + 4 - ); - }; - function gi(e, t, r, n, i) { - xi(t, n, i, e, r, 7); - let o = Number(t & BigInt(4294967295)); - ((e[r++] = o), - (o = o >> 8), - (e[r++] = o), - (o = o >> 8), - (e[r++] = o), - (o = o >> 8), - (e[r++] = o)); - let s = Number((t >> BigInt(32)) & BigInt(4294967295)); - return ( - (e[r++] = s), - (s = s >> 8), - (e[r++] = s), - (s = s >> 8), - (e[r++] = s), - (s = s >> 8), - (e[r++] = s), - r - ); - } - function hi(e, t, r, n, i) { - xi(t, n, i, e, r, 7); - let o = Number(t & BigInt(4294967295)); - ((e[r + 7] = o), - (o = o >> 8), - (e[r + 6] = o), - (o = o >> 8), - (e[r + 5] = o), - (o = o >> 8), - (e[r + 4] = o)); - let s = Number((t >> BigInt(32)) & BigInt(4294967295)); - return ( - (e[r + 3] = s), - (s = s >> 8), - (e[r + 2] = s), - (s = s >> 8), - (e[r + 1] = s), - (s = s >> 8), - (e[r] = s), - r + 8 - ); - } - A.prototype.writeBigUInt64LE = _e(function (e, t = 0) { - return gi(this, e, t, BigInt(0), BigInt("0xffffffffffffffff")); - }); - A.prototype.writeBigUInt64BE = _e(function (e, t = 0) { - return hi(this, e, t, BigInt(0), BigInt("0xffffffffffffffff")); - }); - A.prototype.writeIntLE = function (e, t, r, n) { - if (((e = +e), (t = t >>> 0), !n)) { - let a = Math.pow(2, 8 * r - 1); - oe(this, e, t, r, a - 1, -a); - } - let i = 0, - o = 1, - s = 0; - for (this[t] = e & 255; ++i < r && (o *= 256); ) - (e < 0 && s === 0 && this[t + i - 1] !== 0 && (s = 1), - (this[t + i] = (((e / o) >> 0) - s) & 255)); - return t + r; - }; - A.prototype.writeIntBE = function (e, t, r, n) { - if (((e = +e), (t = t >>> 0), !n)) { - let a = Math.pow(2, 8 * r - 1); - oe(this, e, t, r, a - 1, -a); - } - let i = r - 1, - o = 1, - s = 0; - for (this[t + i] = e & 255; --i >= 0 && (o *= 256); ) - (e < 0 && s === 0 && this[t + i + 1] !== 0 && (s = 1), - (this[t + i] = (((e / o) >> 0) - s) & 255)); - return t + r; - }; - A.prototype.writeInt8 = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || oe(this, e, t, 1, 127, -128), - e < 0 && (e = 255 + e + 1), - (this[t] = e & 255), - t + 1 - ); - }; - A.prototype.writeInt16LE = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || oe(this, e, t, 2, 32767, -32768), - (this[t] = e & 255), - (this[t + 1] = e >>> 8), - t + 2 - ); - }; - A.prototype.writeInt16BE = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || oe(this, e, t, 2, 32767, -32768), - (this[t] = e >>> 8), - (this[t + 1] = e & 255), - t + 2 - ); - }; - A.prototype.writeInt32LE = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || oe(this, e, t, 4, 2147483647, -2147483648), - (this[t] = e & 255), - (this[t + 1] = e >>> 8), - (this[t + 2] = e >>> 16), - (this[t + 3] = e >>> 24), - t + 4 - ); - }; - A.prototype.writeInt32BE = function (e, t, r) { - return ( - (e = +e), - (t = t >>> 0), - r || oe(this, e, t, 4, 2147483647, -2147483648), - e < 0 && (e = 4294967295 + e + 1), - (this[t] = e >>> 24), - (this[t + 1] = e >>> 16), - (this[t + 2] = e >>> 8), - (this[t + 3] = e & 255), - t + 4 - ); - }; - A.prototype.writeBigInt64LE = _e(function (e, t = 0) { - return gi( - this, - e, - t, - -BigInt("0x8000000000000000"), - BigInt("0x7fffffffffffffff"), - ); - }); - A.prototype.writeBigInt64BE = _e(function (e, t = 0) { - return hi( - this, - e, - t, - -BigInt("0x8000000000000000"), - BigInt("0x7fffffffffffffff"), - ); - }); - function yi(e, t, r, n, i, o) { - if (r + n > e.length) throw new RangeError("Index out of range"); - if (r < 0) throw new RangeError("Index out of range"); - } - function wi(e, t, r, n, i) { - return ( - (t = +t), - (r = r >>> 0), - i || yi(e, t, r, 4, 34028234663852886e22, -34028234663852886e22), - tt.write(e, t, r, n, 23, 4), - r + 4 - ); - } - A.prototype.writeFloatLE = function (e, t, r) { - return wi(this, e, t, !0, r); - }; - A.prototype.writeFloatBE = function (e, t, r) { - return wi(this, e, t, !1, r); - }; - function bi(e, t, r, n, i) { - return ( - (t = +t), - (r = r >>> 0), - i || yi(e, t, r, 8, 17976931348623157e292, -17976931348623157e292), - tt.write(e, t, r, n, 52, 8), - r + 8 - ); - } - A.prototype.writeDoubleLE = function (e, t, r) { - return bi(this, e, t, !0, r); - }; - A.prototype.writeDoubleBE = function (e, t, r) { - return bi(this, e, t, !1, r); - }; - A.prototype.copy = function (e, t, r, n) { - if (!A.isBuffer(e)) throw new TypeError("argument should be a Buffer"); - if ( - (r || (r = 0), - !n && n !== 0 && (n = this.length), - t >= e.length && (t = e.length), - t || (t = 0), - n > 0 && n < r && (n = r), - n === r || e.length === 0 || this.length === 0) - ) - return 0; - if (t < 0) throw new RangeError("targetStart out of bounds"); - if (r < 0 || r >= this.length) throw new RangeError("Index out of range"); - if (n < 0) throw new RangeError("sourceEnd out of bounds"); - (n > this.length && (n = this.length), - e.length - t < n - r && (n = e.length - t + r)); - let i = n - r; - return ( - this === e && typeof Uint8Array.prototype.copyWithin == "function" - ? this.copyWithin(t, r, n) - : Uint8Array.prototype.set.call(e, this.subarray(r, n), t), - i - ); - }; - A.prototype.fill = function (e, t, r, n) { - if (typeof e == "string") { - if ( - (typeof t == "string" - ? ((n = t), (t = 0), (r = this.length)) - : typeof r == "string" && ((n = r), (r = this.length)), - n !== void 0 && typeof n != "string") - ) - throw new TypeError("encoding must be a string"); - if (typeof n == "string" && !A.isEncoding(n)) - throw new TypeError("Unknown encoding: " + n); - if (e.length === 1) { - let o = e.charCodeAt(0); - ((n === "utf8" && o < 128) || n === "latin1") && (e = o); - } - } else - typeof e == "number" - ? (e = e & 255) - : typeof e == "boolean" && (e = Number(e)); - if (t < 0 || this.length < t || this.length < r) - throw new RangeError("Out of range index"); - if (r <= t) return this; - ((t = t >>> 0), (r = r === void 0 ? this.length : r >>> 0), e || (e = 0)); - let i; - if (typeof e == "number") for (i = t; i < r; ++i) this[i] = e; - else { - let o = A.isBuffer(e) ? e : A.from(e, n), - s = o.length; - if (s === 0) - throw new TypeError( - 'The value "' + e + '" is invalid for argument "value"', - ); - for (i = 0; i < r - t; ++i) this[i + t] = o[i % s]; - } - return this; - }; - var et = {}; - function on(e, t, r) { - et[e] = class extends r { - constructor() { - (super(), - Object.defineProperty(this, "message", { - value: t.apply(this, arguments), - writable: !0, - configurable: !0, - }), - (this.name = `${this.name} [${e}]`), - this.stack, - delete this.name); - } - get code() { - return e; - } - set code(n) { - Object.defineProperty(this, "code", { - configurable: !0, - enumerable: !0, - value: n, - writable: !0, - }); - } - toString() { - return `${this.name} [${e}]: ${this.message}`; - } - }; - } - on( - "ERR_BUFFER_OUT_OF_BOUNDS", - function (e) { - return e - ? `${e} is outside of buffer bounds` - : "Attempt to access memory outside buffer bounds"; - }, - RangeError, - ); - on( - "ERR_INVALID_ARG_TYPE", - function (e, t) { - return `The "${e}" argument must be of type number. Received type ${typeof t}`; - }, - TypeError, - ); - on( - "ERR_OUT_OF_RANGE", - function (e, t, r) { - let n = `The value of "${e}" is out of range.`, - i = r; - return ( - Number.isInteger(r) && Math.abs(r) > 2 ** 32 - ? (i = ai(String(r))) - : typeof r == "bigint" && - ((i = String(r)), - (r > BigInt(2) ** BigInt(32) || r < -(BigInt(2) ** BigInt(32))) && - (i = ai(i)), - (i += "n")), - (n += ` It must be ${t}. Received ${i}`), - n - ); - }, - RangeError, - ); - function ai(e) { - let t = "", - r = e.length, - n = e[0] === "-" ? 1 : 0; - for (; r >= n + 4; r -= 3) t = `_${e.slice(r - 3, r)}${t}`; - return `${e.slice(0, r)}${t}`; - } - function Ua(e, t, r) { - (rt(t, "offset"), - (e[t] === void 0 || e[t + r] === void 0) && Ct(t, e.length - (r + 1))); - } - function xi(e, t, r, n, i, o) { - if (e > r || e < t) { - let s = typeof t == "bigint" ? "n" : "", - a; - throw ( - o > 3 - ? t === 0 || t === BigInt(0) - ? (a = `>= 0${s} and < 2${s} ** ${(o + 1) * 8}${s}`) - : (a = `>= -(2${s} ** ${(o + 1) * 8 - 1}${s}) and < 2 ** ${(o + 1) * 8 - 1}${s}`) - : (a = `>= ${t}${s} and <= ${r}${s}`), - new et.ERR_OUT_OF_RANGE("value", a, e) - ); - } - Ua(n, i, o); - } - function rt(e, t) { - if (typeof e != "number") throw new et.ERR_INVALID_ARG_TYPE(t, "number", e); - } - function Ct(e, t, r) { - throw Math.floor(e) !== e - ? (rt(e, r), new et.ERR_OUT_OF_RANGE(r || "offset", "an integer", e)) - : t < 0 - ? new et.ERR_BUFFER_OUT_OF_BOUNDS() - : new et.ERR_OUT_OF_RANGE( - r || "offset", - `>= ${r ? 1 : 0} and <= ${t}`, - e, - ); - } - var Va = /[^+/0-9A-Za-z-_]/g; - function Qa(e) { - if (((e = e.split("=")[0]), (e = e.trim().replace(Va, "")), e.length < 2)) - return ""; - for (; e.length % 4 !== 0; ) e = e + "="; - return e; - } - function tn(e, t) { - t = t || 1 / 0; - let r, - n = e.length, - i = null, - o = []; - for (let s = 0; s < n; ++s) { - if (((r = e.charCodeAt(s)), r > 55295 && r < 57344)) { - if (!i) { - if (r > 56319) { - (t -= 3) > -1 && o.push(239, 191, 189); - continue; - } else if (s + 1 === n) { - (t -= 3) > -1 && o.push(239, 191, 189); - continue; - } - i = r; - continue; - } - if (r < 56320) { - ((t -= 3) > -1 && o.push(239, 191, 189), (i = r)); - continue; - } - r = (((i - 55296) << 10) | (r - 56320)) + 65536; - } else i && (t -= 3) > -1 && o.push(239, 191, 189); - if (((i = null), r < 128)) { - if ((t -= 1) < 0) break; - o.push(r); - } else if (r < 2048) { - if ((t -= 2) < 0) break; - o.push((r >> 6) | 192, (r & 63) | 128); - } else if (r < 65536) { - if ((t -= 3) < 0) break; - o.push((r >> 12) | 224, ((r >> 6) & 63) | 128, (r & 63) | 128); - } else if (r < 1114112) { - if ((t -= 4) < 0) break; - o.push( - (r >> 18) | 240, - ((r >> 12) & 63) | 128, - ((r >> 6) & 63) | 128, - (r & 63) | 128, - ); - } else throw new Error("Invalid code point"); - } - return o; - } - function Ja(e) { - let t = []; - for (let r = 0; r < e.length; ++r) t.push(e.charCodeAt(r) & 255); - return t; - } - function Ga(e, t) { - let r, - n, - i, - o = []; - for (let s = 0; s < e.length && !((t -= 2) < 0); ++s) - ((r = e.charCodeAt(s)), - (n = r >> 8), - (i = r % 256), - o.push(i), - o.push(n)); - return o; - } - function Ei(e) { - return Xr.toByteArray(Qa(e)); - } - function ir(e, t, r, n) { - let i; - for (i = 0; i < n && !(i + r >= t.length || i >= e.length); ++i) - t[i + r] = e[i]; - return i; - } - function ye(e, t) { - return ( - e instanceof t || - (e != null && - e.constructor != null && - e.constructor.name != null && - e.constructor.name === t.name) - ); - } - function sn(e) { - return e !== e; - } - var Wa = (function () { - let e = "0123456789abcdef", - t = new Array(256); - for (let r = 0; r < 16; ++r) { - let n = r * 16; - for (let i = 0; i < 16; ++i) t[n + i] = e[r] + e[i]; - } - return t; - })(); - function _e(e) { - return typeof BigInt > "u" ? Ka : e; - } - function Ka() { - throw new Error("BigInt not supported"); - } -}); -var w, - m = he(() => { - "use strict"; - w = Qe(Pi()); - }); -function hl() { - return !1; -} -function pn() { - return { - dev: 0, - ino: 0, - mode: 0, - nlink: 0, - uid: 0, - gid: 0, - rdev: 0, - size: 0, - blksize: 0, - blocks: 0, - atimeMs: 0, - mtimeMs: 0, - ctimeMs: 0, - birthtimeMs: 0, - atime: new Date(), - mtime: new Date(), - ctime: new Date(), - birthtime: new Date(), - }; -} -function yl() { - return pn(); -} -function wl() { - return []; -} -function bl(e) { - e(null, []); -} -function xl() { - return ""; -} -function El() { - return ""; -} -function Pl() {} -function vl() {} -function Tl() {} -function Al() {} -function Cl() {} -function Sl() {} -function Rl() {} -function Ol() {} -function kl() { - return { close: () => {}, on: () => {}, removeAllListeners: () => {} }; -} -function Il(e, t) { - t(null, pn()); -} -var Fl, - Ml, - sr, - dn = he(() => { - "use strict"; - m(); - c(); - p(); - d(); - f(); - ((Fl = {}), - (Ml = { - existsSync: hl, - lstatSync: pn, - stat: Il, - statSync: yl, - readdirSync: wl, - readdir: bl, - readlinkSync: xl, - realpathSync: El, - chmodSync: Pl, - renameSync: vl, - mkdirSync: Tl, - rmdirSync: Al, - rmSync: Cl, - unlinkSync: Sl, - watchFile: Rl, - unwatchFile: Ol, - watch: kl, - promises: Fl, - }), - (sr = Ml)); - }); -var Di = Ve((If, _l) => { - _l.exports = { - name: "@prisma/internals", - version: "6.19.2", - description: "This package is intended for Prisma's internal use", - main: "dist/index.js", - types: "dist/index.d.ts", - repository: { - type: "git", - url: "https://github.com/prisma/prisma.git", - directory: "packages/internals", - }, - homepage: "https://www.prisma.io", - author: "Tim Suchanek ", - bugs: "https://github.com/prisma/prisma/issues", - license: "Apache-2.0", - scripts: { - dev: "DEV=true tsx helpers/build.ts", - build: "tsx helpers/build.ts", - test: "dotenv -e ../../.db.env -- jest --silent", - prepublishOnly: "pnpm run build", - }, - files: [ - "README.md", - "dist", - "!**/libquery_engine*", - "!dist/get-generators/engines/*", - "scripts", - ], - devDependencies: { - "@babel/helper-validator-identifier": "7.25.9", - "@opentelemetry/api": "1.9.0", - "@swc/core": "1.11.5", - "@swc/jest": "0.2.37", - "@types/babel__helper-validator-identifier": "7.15.2", - "@types/jest": "29.5.14", - "@types/node": "18.19.76", - "@types/resolve": "1.20.6", - archiver: "6.0.2", - "checkpoint-client": "1.1.33", - "cli-truncate": "4.0.0", - dotenv: "16.5.0", - empathic: "2.0.0", - "escape-string-regexp": "5.0.0", - execa: "8.0.1", - "fast-glob": "3.3.3", - "find-up": "7.0.0", - "fp-ts": "2.16.9", - "fs-extra": "11.3.0", - "global-directory": "4.0.0", - globby: "11.1.0", - "identifier-regex": "1.0.0", - "indent-string": "4.0.0", - "is-windows": "1.0.2", - "is-wsl": "3.1.0", - jest: "29.7.0", - "jest-junit": "16.0.0", - kleur: "4.1.5", - "mock-stdin": "1.0.0", - "new-github-issue-url": "0.2.1", - "node-fetch": "3.3.2", - "npm-packlist": "5.1.3", - open: "7.4.2", - "p-map": "4.0.0", - resolve: "1.22.10", - "string-width": "7.2.0", - "strip-indent": "4.0.0", - "temp-dir": "2.0.0", - tempy: "1.0.1", - "terminal-link": "4.0.0", - tmp: "0.2.3", - "ts-pattern": "5.6.2", - "ts-toolbelt": "9.6.0", - typescript: "5.4.5", - yarn: "1.22.22", - }, - dependencies: { - "@prisma/config": "workspace:*", - "@prisma/debug": "workspace:*", - "@prisma/dmmf": "workspace:*", - "@prisma/driver-adapter-utils": "workspace:*", - "@prisma/engines": "workspace:*", - "@prisma/fetch-engine": "workspace:*", - "@prisma/generator": "workspace:*", - "@prisma/generator-helper": "workspace:*", - "@prisma/get-platform": "workspace:*", - "@prisma/prisma-schema-wasm": - "7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7", - "@prisma/schema-engine-wasm": - "7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7", - "@prisma/schema-files-loader": "workspace:*", - arg: "5.0.2", - prompts: "2.4.2", - }, - peerDependencies: { typescript: ">=5.1.0" }, - peerDependenciesMeta: { typescript: { optional: !0 } }, - sideEffects: !1, - }; -}); -function Ll(...e) { - return e.join("/"); -} -function Nl(...e) { - return e.join("/"); -} -function ql(e) { - let t = Li(e), - r = Ni(e), - [n, i] = t.split("."); - return { root: "/", dir: r, base: t, ext: i, name: n }; -} -function Li(e) { - let t = e.split("/"); - return t[t.length - 1]; -} -function Ni(e) { - return e.split("/").slice(0, -1).join("/"); -} -function jl(e) { - let t = e.split("/").filter((i) => i !== "" && i !== "."), - r = []; - for (let i of t) i === ".." ? r.pop() : r.push(i); - let n = r.join("/"); - return e.startsWith("/") ? "/" + n : n; -} -var qi, - Bl, - $l, - Ul, - Re, - gn = he(() => { - "use strict"; - m(); - c(); - p(); - d(); - f(); - ((qi = "/"), (Bl = ":")); - (($l = { sep: qi }), - (Ul = { - basename: Li, - delimiter: Bl, - dirname: Ni, - join: Nl, - normalize: jl, - parse: ql, - posix: $l, - resolve: Ll, - sep: qi, - }), - (Re = Ul)); - }); -var $i = Ve((Dm, ji) => { - "use strict"; - m(); - c(); - p(); - d(); - f(); - ji.exports = (e) => { - let t = e.match(/^[ \t]*(?=\S)/gm); - return t ? t.reduce((r, n) => Math.min(r, n.length), 1 / 0) : 0; - }; -}); -var Gi = Ve((Xm, Ji) => { - "use strict"; - m(); - c(); - p(); - d(); - f(); - Ji.exports = (e, t = 1, r) => { - if ( - ((r = { indent: " ", includeEmptyLines: !1, ...r }), typeof e != "string") - ) - throw new TypeError( - `Expected \`input\` to be a \`string\`, got \`${typeof e}\``, - ); - if (typeof t != "number") - throw new TypeError( - `Expected \`count\` to be a \`number\`, got \`${typeof t}\``, - ); - if (typeof r.indent != "string") - throw new TypeError( - `Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``, - ); - if (t === 0) return e; - let n = r.includeEmptyLines ? /^/gm : /^(?!\s*$)/gm; - return e.replace(n, r.indent.repeat(t)); - }; -}); -var Ki = Ve((Vg, cr) => { - "use strict"; - m(); - c(); - p(); - d(); - f(); - cr.exports = (e = {}) => { - let t; - if (e.repoUrl) t = e.repoUrl; - else if (e.user && e.repo) t = `https://github.com/${e.user}/${e.repo}`; - else - throw new Error( - "You need to specify either the `repoUrl` option or both the `user` and `repo` options", - ); - let r = new URL(`${t}/issues/new`), - n = [ - "body", - "title", - "labels", - "template", - "milestone", - "assignee", - "projects", - ]; - for (let i of n) { - let o = e[i]; - if (o !== void 0) { - if (i === "labels" || i === "projects") { - if (!Array.isArray(o)) - throw new TypeError(`The \`${i}\` option should be an array`); - o = o.join(","); - } - r.searchParams.set(i, o); - } - } - return r.toString(); - }; - cr.exports.default = cr.exports; -}); -var In = Ve((o0, wo) => { - "use strict"; - m(); - c(); - p(); - d(); - f(); - wo.exports = (function () { - function e(t, r, n, i, o) { - return t < r || n < r ? (t > n ? n + 1 : t + 1) : i === o ? r : r + 1; - } - return function (t, r) { - if (t === r) return 0; - if (t.length > r.length) { - var n = t; - ((t = r), (r = n)); - } - for ( - var i = t.length, o = r.length; - i > 0 && t.charCodeAt(i - 1) === r.charCodeAt(o - 1); - ) - (i--, o--); - for (var s = 0; s < i && t.charCodeAt(s) === r.charCodeAt(s); ) s++; - if (((i -= s), (o -= s), i === 0 || o < 3)) return o; - var a = 0, - l, - u, - g, - h, - T, - O, - C, - S, - F, - _, - L, - k, - q = []; - for (l = 0; l < i; l++) (q.push(l + 1), q.push(t.charCodeAt(s + l))); - for (var Y = q.length - 1; a < o - 3; ) - for ( - F = r.charCodeAt(s + (u = a)), - _ = r.charCodeAt(s + (g = a + 1)), - L = r.charCodeAt(s + (h = a + 2)), - k = r.charCodeAt(s + (T = a + 3)), - O = a += 4, - l = 0; - l < Y; - l += 2 - ) - ((C = q[l]), - (S = q[l + 1]), - (u = e(C, u, g, F, S)), - (g = e(u, g, h, _, S)), - (h = e(g, h, T, L, S)), - (O = e(h, T, O, k, S)), - (q[l] = O), - (T = h), - (h = g), - (g = u), - (u = C)); - for (; a < o; ) - for (F = r.charCodeAt(s + (u = a)), O = ++a, l = 0; l < Y; l += 2) - ((C = q[l]), (q[l] = O = e(C, u, O, F, q[l + 1])), (u = C)); - return O; - }; - })(); -}); -var vo = he(() => { - "use strict"; - m(); - c(); - p(); - d(); - f(); -}); -var To = he(() => { - "use strict"; - m(); - c(); - p(); - d(); - f(); -}); -var Ko = Ve((Ov, $c) => { - $c.exports = { - name: "@prisma/engines-version", - version: "7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7", - main: "index.js", - types: "index.d.ts", - license: "Apache-2.0", - author: "Tim Suchanek ", - prisma: { enginesVersion: "c2990dca591cba766e3b7ef5d9e8a84796e47ab7" }, - repository: { - type: "git", - url: "https://github.com/prisma/engines-wrapper.git", - directory: "packages/engines-version", - }, - devDependencies: { "@types/node": "18.19.76", typescript: "4.9.5" }, - files: ["index.js", "index.d.ts"], - scripts: { build: "tsc -d" }, - }; -}); -var jr, - zo = he(() => { - "use strict"; - m(); - c(); - p(); - d(); - f(); - jr = class { - events = {}; - on(t, r) { - return ( - this.events[t] || (this.events[t] = []), - this.events[t].push(r), - this - ); - } - emit(t, ...r) { - return this.events[t] - ? (this.events[t].forEach((n) => { - n(...r); - }), - !0) - : !1; - } - }; - }); -var ad = {}; -Xe(ad, { - DMMF: () => Bt, - Debug: () => z, - Decimal: () => Fe, - Extensions: () => an, - MetricsClient: () => bt, - PrismaClientInitializationError: () => Q, - PrismaClientKnownRequestError: () => se, - PrismaClientRustPanicError: () => ce, - PrismaClientUnknownRequestError: () => G, - PrismaClientValidationError: () => te, - Public: () => ln, - Sql: () => le, - createParam: () => jo, - defineDmmfProperty: () => Go, - deserializeJsonResponse: () => Pt, - deserializeRawResult: () => Hr, - dmmfToRuntimeDataModel: () => Zi, - empty: () => Yo, - getPrismaClient: () => fa, - getRuntime: () => Ds, - join: () => Ho, - makeStrictEnum: () => ma, - makeTypedQueryFactory: () => Wo, - objectEnumValues: () => kr, - raw: () => jn, - serializeJsonQuery: () => Nr, - skip: () => Lr, - sqltag: () => $n, - warnEnvConflicts: () => void 0, - warnOnce: () => Lt, -}); -module.exports = Ea(ad); -m(); -c(); -p(); -d(); -f(); -var an = {}; -Xe(an, { defineExtension: () => vi, getExtensionContext: () => Ti }); -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -function vi(e) { - return typeof e == "function" ? e : (t) => t.$extends(e); -} -m(); -c(); -p(); -d(); -f(); -function Ti(e) { - return e; -} -var ln = {}; -Xe(ln, { validator: () => Ai }); -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -function Ai(...e) { - return (t) => t; -} -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -var or = {}; -Xe(or, { - $: () => ki, - bgBlack: () => il, - bgBlue: () => ll, - bgCyan: () => cl, - bgGreen: () => sl, - bgMagenta: () => ul, - bgRed: () => ol, - bgWhite: () => pl, - bgYellow: () => al, - black: () => el, - blue: () => We, - bold: () => de, - cyan: () => Se, - dim: () => St, - gray: () => It, - green: () => Ot, - grey: () => nl, - hidden: () => Za, - inverse: () => Ya, - italic: () => Ha, - magenta: () => tl, - red: () => Ge, - reset: () => za, - strikethrough: () => Xa, - underline: () => Rt, - white: () => rl, - yellow: () => kt, -}); -m(); -c(); -p(); -d(); -f(); -var un, - Ci, - Si, - Ri, - Oi = !0; -typeof y < "u" && - (({ - FORCE_COLOR: un, - NODE_DISABLE_COLORS: Ci, - NO_COLOR: Si, - TERM: Ri, - } = y.env || {}), - (Oi = y.stdout && y.stdout.isTTY)); -var ki = { - enabled: - !Ci && Si == null && Ri !== "dumb" && ((un != null && un !== "0") || Oi), -}; -function V(e, t) { - let r = new RegExp(`\\x1b\\[${t}m`, "g"), - n = `\x1B[${e}m`, - i = `\x1B[${t}m`; - return function (o) { - return !ki.enabled || o == null - ? o - : n + (~("" + o).indexOf(i) ? o.replace(r, i + n) : o) + i; - }; -} -var za = V(0, 0), - de = V(1, 22), - St = V(2, 22), - Ha = V(3, 23), - Rt = V(4, 24), - Ya = V(7, 27), - Za = V(8, 28), - Xa = V(9, 29), - el = V(30, 39), - Ge = V(31, 39), - Ot = V(32, 39), - kt = V(33, 39), - We = V(34, 39), - tl = V(35, 39), - Se = V(36, 39), - rl = V(37, 39), - It = V(90, 39), - nl = V(90, 39), - il = V(40, 49), - ol = V(41, 49), - sl = V(42, 49), - al = V(43, 49), - ll = V(44, 49), - ul = V(45, 49), - cl = V(46, 49), - pl = V(47, 49); -m(); -c(); -p(); -d(); -f(); -var dl = 100, - Ii = ["green", "yellow", "blue", "magenta", "cyan", "red"], - Ft = [], - Fi = Date.now(), - fl = 0, - cn = typeof y < "u" ? y.env : {}; -globalThis.DEBUG ??= cn.DEBUG ?? ""; -globalThis.DEBUG_COLORS ??= cn.DEBUG_COLORS ? cn.DEBUG_COLORS === "true" : !0; -var Mt = { - enable(e) { - typeof e == "string" && (globalThis.DEBUG = e); - }, - disable() { - let e = globalThis.DEBUG; - return ((globalThis.DEBUG = ""), e); - }, - enabled(e) { - let t = globalThis.DEBUG.split(",").map((i) => - i.replace(/[.+?^${}()|[\]\\]/g, "\\$&"), - ), - r = t.some((i) => - i === "" || i[0] === "-" - ? !1 - : e.match(RegExp(i.split("*").join(".*") + "$")), - ), - n = t.some((i) => - i === "" || i[0] !== "-" - ? !1 - : e.match(RegExp(i.slice(1).split("*").join(".*") + "$")), - ); - return r && !n; - }, - log: (...e) => { - let [t, r, ...n] = e; - (console.warn ?? console.log)(`${t} ${r}`, ...n); - }, - formatters: {}, -}; -function ml(e) { - let t = { - color: Ii[fl++ % Ii.length], - enabled: Mt.enabled(e), - namespace: e, - log: Mt.log, - extend: () => {}, - }, - r = (...n) => { - let { enabled: i, namespace: o, color: s, log: a } = t; - if ( - (n.length !== 0 && Ft.push([o, ...n]), - Ft.length > dl && Ft.shift(), - Mt.enabled(o) || i) - ) { - let l = n.map((g) => (typeof g == "string" ? g : gl(g))), - u = `+${Date.now() - Fi}ms`; - ((Fi = Date.now()), - globalThis.DEBUG_COLORS - ? a(or[s](de(o)), ...l, or[s](u)) - : a(o, ...l, u)); - } - }; - return new Proxy(r, { get: (n, i) => t[i], set: (n, i, o) => (t[i] = o) }); -} -var z = new Proxy(ml, { get: (e, t) => Mt[t], set: (e, t, r) => (Mt[t] = r) }); -function gl(e, t = 2) { - let r = new Set(); - return JSON.stringify( - e, - (n, i) => { - if (typeof i == "object" && i !== null) { - if (r.has(i)) return "[Circular *]"; - r.add(i); - } else if (typeof i == "bigint") return i.toString(); - return i; - }, - t, - ); -} -function Mi(e = 7500) { - let t = Ft.map( - ([r, ...n]) => - `${r} ${n.map((i) => (typeof i == "string" ? i : JSON.stringify(i))).join(" ")}`, - ).join(` -`); - return t.length < e ? t : t.slice(-e); -} -function _i() { - Ft.length = 0; -} -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -var fn = [ - "darwin", - "darwin-arm64", - "debian-openssl-1.0.x", - "debian-openssl-1.1.x", - "debian-openssl-3.0.x", - "rhel-openssl-1.0.x", - "rhel-openssl-1.1.x", - "rhel-openssl-3.0.x", - "linux-arm64-openssl-1.1.x", - "linux-arm64-openssl-1.0.x", - "linux-arm64-openssl-3.0.x", - "linux-arm-openssl-1.1.x", - "linux-arm-openssl-1.0.x", - "linux-arm-openssl-3.0.x", - "linux-musl", - "linux-musl-openssl-3.0.x", - "linux-musl-arm64-openssl-1.1.x", - "linux-musl-arm64-openssl-3.0.x", - "linux-nixos", - "linux-static-x64", - "linux-static-arm64", - "windows", - "freebsd11", - "freebsd12", - "freebsd13", - "freebsd14", - "freebsd15", - "openbsd", - "netbsd", - "arm", -]; -m(); -c(); -p(); -d(); -f(); -var Dl = Di(), - mn = Dl.version; -m(); -c(); -p(); -d(); -f(); -function it(e) { - let t = Vl(); - return ( - t || - (e?.config.engineType === "library" - ? "library" - : e?.config.engineType === "binary" - ? "binary" - : e?.config.engineType === "client" - ? "client" - : Ql()) - ); -} -function Vl() { - let e = y.env.PRISMA_CLIENT_ENGINE_TYPE; - return e === "library" - ? "library" - : e === "binary" - ? "binary" - : e === "client" - ? "client" - : void 0; -} -function Ql() { - return "library"; -} -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -function hn(e) { - return e.name === "DriverAdapterError" && typeof e.cause == "object"; -} -m(); -c(); -p(); -d(); -f(); -function ar(e) { - return { - ok: !0, - value: e, - map(t) { - return ar(t(e)); - }, - flatMap(t) { - return t(e); - }, - }; -} -function Ke(e) { - return { - ok: !1, - error: e, - map() { - return Ke(e); - }, - flatMap() { - return Ke(e); - }, - }; -} -var Bi = z("driver-adapter-utils"), - yn = class { - registeredErrors = []; - consumeError(t) { - return this.registeredErrors[t]; - } - registerNewError(t) { - let r = 0; - for (; this.registeredErrors[r] !== void 0; ) r++; - return ((this.registeredErrors[r] = { error: t }), r); - } - }; -var lr = (e, t = new yn()) => { - let r = { - adapterName: e.adapterName, - errorRegistry: t, - queryRaw: Oe(t, e.queryRaw.bind(e)), - executeRaw: Oe(t, e.executeRaw.bind(e)), - executeScript: Oe(t, e.executeScript.bind(e)), - dispose: Oe(t, e.dispose.bind(e)), - provider: e.provider, - startTransaction: async (...n) => - (await Oe(t, e.startTransaction.bind(e))(...n)).map((o) => Jl(t, o)), - }; - return ( - e.getConnectionInfo && - (r.getConnectionInfo = Gl(t, e.getConnectionInfo.bind(e))), - r - ); - }, - Jl = (e, t) => ({ - adapterName: t.adapterName, - provider: t.provider, - options: t.options, - queryRaw: Oe(e, t.queryRaw.bind(t)), - executeRaw: Oe(e, t.executeRaw.bind(t)), - commit: Oe(e, t.commit.bind(t)), - rollback: Oe(e, t.rollback.bind(t)), - }); -function Oe(e, t) { - return async (...r) => { - try { - return ar(await t(...r)); - } catch (n) { - if ((Bi("[error@wrapAsync]", n), hn(n))) return Ke(n.cause); - let i = e.registerNewError(n); - return Ke({ kind: "GenericJs", id: i }); - } - }; -} -function Gl(e, t) { - return (...r) => { - try { - return ar(t(...r)); - } catch (n) { - if ((Bi("[error@wrapSync]", n), hn(n))) return Ke(n.cause); - let i = e.registerNewError(n); - return Ke({ kind: "GenericJs", id: i }); - } - }; -} -m(); -c(); -p(); -d(); -f(); -var Ui = Qe($i(), 1); -function wn(e) { - let t = (0, Ui.default)(e); - if (t === 0) return e; - let r = new RegExp(`^[ \\t]{${t}}`, "gm"); - return e.replace(r, ""); -} -m(); -c(); -p(); -d(); -f(); -var Vi = "prisma+postgres", - Qi = `${Vi}:`; -function bn(e) { - return e?.toString().startsWith(`${Qi}//`) ?? !1; -} -var Dt = {}; -Xe(Dt, { - error: () => zl, - info: () => Kl, - log: () => Wl, - query: () => Hl, - should: () => Wi, - tags: () => _t, - warn: () => xn, -}); -m(); -c(); -p(); -d(); -f(); -var _t = { - error: Ge("prisma:error"), - warn: kt("prisma:warn"), - info: Se("prisma:info"), - query: We("prisma:query"), - }, - Wi = { warn: () => !y.env.PRISMA_DISABLE_WARNINGS }; -function Wl(...e) { - console.log(...e); -} -function xn(e, ...t) { - Wi.warn() && console.warn(`${_t.warn} ${e}`, ...t); -} -function Kl(e, ...t) { - console.info(`${_t.info} ${e}`, ...t); -} -function zl(e, ...t) { - console.error(`${_t.error} ${e}`, ...t); -} -function Hl(e, ...t) { - console.log(`${_t.query} ${e}`, ...t); -} -m(); -c(); -p(); -d(); -f(); -function ur(e, t) { - if (!e) - throw new Error( - `${t}. This should never happen. If you see this error, please, open an issue at https://pris.ly/prisma-prisma-bug-report`, - ); -} -m(); -c(); -p(); -d(); -f(); -function ze(e, t) { - throw new Error(t); -} -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -function En({ onlyFirst: e = !1 } = {}) { - let r = [ - "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))", - "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))", - ].join("|"); - return new RegExp(r, e ? void 0 : "g"); -} -var Yl = En(); -function ot(e) { - if (typeof e != "string") - throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``); - return e.replace(Yl, ""); -} -m(); -c(); -p(); -d(); -f(); -gn(); -function Pn(e) { - return Re.sep === Re.posix.sep ? e : e.split(Re.sep).join(Re.posix.sep); -} -m(); -c(); -p(); -d(); -f(); -function vn(e, t) { - return Object.prototype.hasOwnProperty.call(e, t); -} -m(); -c(); -p(); -d(); -f(); -function pr(e, t) { - let r = {}; - for (let n of Object.keys(e)) r[n] = t(e[n], n); - return r; -} -m(); -c(); -p(); -d(); -f(); -function Tn(e, t) { - if (e.length === 0) return; - let r = e[0]; - for (let n = 1; n < e.length; n++) t(r, e[n]) < 0 && (r = e[n]); - return r; -} -m(); -c(); -p(); -d(); -f(); -function ue(e, t) { - Object.defineProperty(e, "name", { value: t, configurable: !0 }); -} -m(); -c(); -p(); -d(); -f(); -var zi = new Set(), - Lt = (e, t, ...r) => { - zi.has(e) || (zi.add(e), xn(t, ...r)); - }; -var Q = class e extends Error { - clientVersion; - errorCode; - retryable; - constructor(t, r, n) { - (super(t), - (this.name = "PrismaClientInitializationError"), - (this.clientVersion = r), - (this.errorCode = n), - Error.captureStackTrace(e)); - } - get [Symbol.toStringTag]() { - return "PrismaClientInitializationError"; - } -}; -ue(Q, "PrismaClientInitializationError"); -m(); -c(); -p(); -d(); -f(); -var se = class extends Error { - code; - meta; - clientVersion; - batchRequestIdx; - constructor(t, { code: r, clientVersion: n, meta: i, batchRequestIdx: o }) { - (super(t), - (this.name = "PrismaClientKnownRequestError"), - (this.code = r), - (this.clientVersion = n), - (this.meta = i), - Object.defineProperty(this, "batchRequestIdx", { - value: o, - enumerable: !1, - writable: !0, - })); - } - get [Symbol.toStringTag]() { - return "PrismaClientKnownRequestError"; - } -}; -ue(se, "PrismaClientKnownRequestError"); -m(); -c(); -p(); -d(); -f(); -var ce = class extends Error { - clientVersion; - constructor(t, r) { - (super(t), - (this.name = "PrismaClientRustPanicError"), - (this.clientVersion = r)); - } - get [Symbol.toStringTag]() { - return "PrismaClientRustPanicError"; - } -}; -ue(ce, "PrismaClientRustPanicError"); -m(); -c(); -p(); -d(); -f(); -var G = class extends Error { - clientVersion; - batchRequestIdx; - constructor(t, { clientVersion: r, batchRequestIdx: n }) { - (super(t), - (this.name = "PrismaClientUnknownRequestError"), - (this.clientVersion = r), - Object.defineProperty(this, "batchRequestIdx", { - value: n, - writable: !0, - enumerable: !1, - })); - } - get [Symbol.toStringTag]() { - return "PrismaClientUnknownRequestError"; - } -}; -ue(G, "PrismaClientUnknownRequestError"); -m(); -c(); -p(); -d(); -f(); -var te = class extends Error { - name = "PrismaClientValidationError"; - clientVersion; - constructor(t, { clientVersion: r }) { - (super(t), (this.clientVersion = r)); - } - get [Symbol.toStringTag]() { - return "PrismaClientValidationError"; - } -}; -ue(te, "PrismaClientValidationError"); -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -var we = class { - _map = new Map(); - get(t) { - return this._map.get(t)?.value; - } - set(t, r) { - this._map.set(t, { value: r }); - } - getOrCreate(t, r) { - let n = this._map.get(t); - if (n) return n.value; - let i = r(); - return (this.set(t, i), i); - } -}; -m(); -c(); -p(); -d(); -f(); -function De(e) { - return e.substring(0, 1).toLowerCase() + e.substring(1); -} -m(); -c(); -p(); -d(); -f(); -function Yi(e, t) { - let r = {}; - for (let n of e) { - let i = n[t]; - r[i] = n; - } - return r; -} -m(); -c(); -p(); -d(); -f(); -function Nt(e) { - let t; - return { - get() { - return (t || (t = { value: e() }), t.value); - }, - }; -} -m(); -c(); -p(); -d(); -f(); -function Zi(e) { - return { models: An(e.models), enums: An(e.enums), types: An(e.types) }; -} -function An(e) { - let t = {}; - for (let { name: r, ...n } of e) t[r] = n; - return t; -} -m(); -c(); -p(); -d(); -f(); -function st(e) { - return ( - e instanceof Date || Object.prototype.toString.call(e) === "[object Date]" - ); -} -function dr(e) { - return e.toString() !== "Invalid Date"; -} -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -var at = 9e15, - Be = 1e9, - Cn = "0123456789abcdef", - gr = - "2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058", - hr = - "3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789", - Sn = { - precision: 20, - rounding: 4, - modulo: 1, - toExpNeg: -7, - toExpPos: 21, - minE: -at, - maxE: at, - crypto: !1, - }, - ro, - ke, - D = !0, - wr = "[DecimalError] ", - qe = wr + "Invalid argument: ", - no = wr + "Precision limit exceeded", - io = wr + "crypto unavailable", - oo = "[object Decimal]", - re = Math.floor, - W = Math.pow, - Zl = /^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i, - Xl = /^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i, - eu = /^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i, - so = /^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i, - fe = 1e7, - M = 7, - tu = 9007199254740991, - ru = gr.length - 1, - Rn = hr.length - 1, - R = { toStringTag: oo }; -R.absoluteValue = R.abs = function () { - var e = new this.constructor(this); - return (e.s < 0 && (e.s = 1), I(e)); -}; -R.ceil = function () { - return I(new this.constructor(this), this.e + 1, 2); -}; -R.clampedTo = R.clamp = function (e, t) { - var r, - n = this, - i = n.constructor; - if (((e = new i(e)), (t = new i(t)), !e.s || !t.s)) return new i(NaN); - if (e.gt(t)) throw Error(qe + t); - return ((r = n.cmp(e)), r < 0 ? e : n.cmp(t) > 0 ? t : new i(n)); -}; -R.comparedTo = R.cmp = function (e) { - var t, - r, - n, - i, - o = this, - s = o.d, - a = (e = new o.constructor(e)).d, - l = o.s, - u = e.s; - if (!s || !a) - return !l || !u ? NaN : l !== u ? l : s === a ? 0 : !s ^ (l < 0) ? 1 : -1; - if (!s[0] || !a[0]) return s[0] ? l : a[0] ? -u : 0; - if (l !== u) return l; - if (o.e !== e.e) return (o.e > e.e) ^ (l < 0) ? 1 : -1; - for (n = s.length, i = a.length, t = 0, r = n < i ? n : i; t < r; ++t) - if (s[t] !== a[t]) return (s[t] > a[t]) ^ (l < 0) ? 1 : -1; - return n === i ? 0 : (n > i) ^ (l < 0) ? 1 : -1; -}; -R.cosine = R.cos = function () { - var e, - t, - r = this, - n = r.constructor; - return r.d - ? r.d[0] - ? ((e = n.precision), - (t = n.rounding), - (n.precision = e + Math.max(r.e, r.sd()) + M), - (n.rounding = 1), - (r = nu(n, po(n, r))), - (n.precision = e), - (n.rounding = t), - I(ke == 2 || ke == 3 ? r.neg() : r, e, t, !0)) - : new n(1) - : new n(NaN); -}; -R.cubeRoot = R.cbrt = function () { - var e, - t, - r, - n, - i, - o, - s, - a, - l, - u, - g = this, - h = g.constructor; - if (!g.isFinite() || g.isZero()) return new h(g); - for ( - D = !1, - o = g.s * W(g.s * g, 1 / 3), - !o || Math.abs(o) == 1 / 0 - ? ((r = Z(g.d)), - (e = g.e), - (o = (e - r.length + 1) % 3) && (r += o == 1 || o == -2 ? "0" : "00"), - (o = W(r, 1 / 3)), - (e = re((e + 1) / 3) - (e % 3 == (e < 0 ? -1 : 2))), - o == 1 / 0 - ? (r = "5e" + e) - : ((r = o.toExponential()), - (r = r.slice(0, r.indexOf("e") + 1) + e)), - (n = new h(r)), - (n.s = g.s)) - : (n = new h(o.toString())), - s = (e = h.precision) + 3; - ; - ) - if ( - ((a = n), - (l = a.times(a).times(a)), - (u = l.plus(g)), - (n = $(u.plus(g).times(a), u.plus(l), s + 2, 1)), - Z(a.d).slice(0, s) === (r = Z(n.d)).slice(0, s)) - ) - if (((r = r.slice(s - 3, s + 1)), r == "9999" || (!i && r == "4999"))) { - if (!i && (I(a, e + 1, 0), a.times(a).times(a).eq(g))) { - n = a; - break; - } - ((s += 4), (i = 1)); - } else { - (!+r || (!+r.slice(1) && r.charAt(0) == "5")) && - (I(n, e + 1, 1), (t = !n.times(n).times(n).eq(g))); - break; - } - return ((D = !0), I(n, e, h.rounding, t)); -}; -R.decimalPlaces = R.dp = function () { - var e, - t = this.d, - r = NaN; - if (t) { - if (((e = t.length - 1), (r = (e - re(this.e / M)) * M), (e = t[e]), e)) - for (; e % 10 == 0; e /= 10) r--; - r < 0 && (r = 0); - } - return r; -}; -R.dividedBy = R.div = function (e) { - return $(this, new this.constructor(e)); -}; -R.dividedToIntegerBy = R.divToInt = function (e) { - var t = this, - r = t.constructor; - return I($(t, new r(e), 0, 1, 1), r.precision, r.rounding); -}; -R.equals = R.eq = function (e) { - return this.cmp(e) === 0; -}; -R.floor = function () { - return I(new this.constructor(this), this.e + 1, 3); -}; -R.greaterThan = R.gt = function (e) { - return this.cmp(e) > 0; -}; -R.greaterThanOrEqualTo = R.gte = function (e) { - var t = this.cmp(e); - return t == 1 || t === 0; -}; -R.hyperbolicCosine = R.cosh = function () { - var e, - t, - r, - n, - i, - o = this, - s = o.constructor, - a = new s(1); - if (!o.isFinite()) return new s(o.s ? 1 / 0 : NaN); - if (o.isZero()) return a; - ((r = s.precision), - (n = s.rounding), - (s.precision = r + Math.max(o.e, o.sd()) + 4), - (s.rounding = 1), - (i = o.d.length), - i < 32 - ? ((e = Math.ceil(i / 3)), (t = (1 / xr(4, e)).toString())) - : ((e = 16), (t = "2.3283064365386962890625e-10")), - (o = lt(s, 1, o.times(t), new s(1), !0))); - for (var l, u = e, g = new s(8); u--; ) - ((l = o.times(o)), (o = a.minus(l.times(g.minus(l.times(g)))))); - return I(o, (s.precision = r), (s.rounding = n), !0); -}; -R.hyperbolicSine = R.sinh = function () { - var e, - t, - r, - n, - i = this, - o = i.constructor; - if (!i.isFinite() || i.isZero()) return new o(i); - if ( - ((t = o.precision), - (r = o.rounding), - (o.precision = t + Math.max(i.e, i.sd()) + 4), - (o.rounding = 1), - (n = i.d.length), - n < 3) - ) - i = lt(o, 2, i, i, !0); - else { - ((e = 1.4 * Math.sqrt(n)), - (e = e > 16 ? 16 : e | 0), - (i = i.times(1 / xr(5, e))), - (i = lt(o, 2, i, i, !0))); - for (var s, a = new o(5), l = new o(16), u = new o(20); e--; ) - ((s = i.times(i)), (i = i.times(a.plus(s.times(l.times(s).plus(u)))))); - } - return ((o.precision = t), (o.rounding = r), I(i, t, r, !0)); -}; -R.hyperbolicTangent = R.tanh = function () { - var e, - t, - r = this, - n = r.constructor; - return r.isFinite() - ? r.isZero() - ? new n(r) - : ((e = n.precision), - (t = n.rounding), - (n.precision = e + 7), - (n.rounding = 1), - $(r.sinh(), r.cosh(), (n.precision = e), (n.rounding = t))) - : new n(r.s); -}; -R.inverseCosine = R.acos = function () { - var e = this, - t = e.constructor, - r = e.abs().cmp(1), - n = t.precision, - i = t.rounding; - return r !== -1 - ? r === 0 - ? e.isNeg() - ? be(t, n, i) - : new t(0) - : new t(NaN) - : e.isZero() - ? be(t, n + 4, i).times(0.5) - : ((t.precision = n + 6), - (t.rounding = 1), - (e = new t(1).minus(e).div(e.plus(1)).sqrt().atan()), - (t.precision = n), - (t.rounding = i), - e.times(2)); -}; -R.inverseHyperbolicCosine = R.acosh = function () { - var e, - t, - r = this, - n = r.constructor; - return r.lte(1) - ? new n(r.eq(1) ? 0 : NaN) - : r.isFinite() - ? ((e = n.precision), - (t = n.rounding), - (n.precision = e + Math.max(Math.abs(r.e), r.sd()) + 4), - (n.rounding = 1), - (D = !1), - (r = r.times(r).minus(1).sqrt().plus(r)), - (D = !0), - (n.precision = e), - (n.rounding = t), - r.ln()) - : new n(r); -}; -R.inverseHyperbolicSine = R.asinh = function () { - var e, - t, - r = this, - n = r.constructor; - return !r.isFinite() || r.isZero() - ? new n(r) - : ((e = n.precision), - (t = n.rounding), - (n.precision = e + 2 * Math.max(Math.abs(r.e), r.sd()) + 6), - (n.rounding = 1), - (D = !1), - (r = r.times(r).plus(1).sqrt().plus(r)), - (D = !0), - (n.precision = e), - (n.rounding = t), - r.ln()); -}; -R.inverseHyperbolicTangent = R.atanh = function () { - var e, - t, - r, - n, - i = this, - o = i.constructor; - return i.isFinite() - ? i.e >= 0 - ? new o(i.abs().eq(1) ? i.s / 0 : i.isZero() ? i : NaN) - : ((e = o.precision), - (t = o.rounding), - (n = i.sd()), - Math.max(n, e) < 2 * -i.e - 1 - ? I(new o(i), e, t, !0) - : ((o.precision = r = n - i.e), - (i = $(i.plus(1), new o(1).minus(i), r + e, 1)), - (o.precision = e + 4), - (o.rounding = 1), - (i = i.ln()), - (o.precision = e), - (o.rounding = t), - i.times(0.5))) - : new o(NaN); -}; -R.inverseSine = R.asin = function () { - var e, - t, - r, - n, - i = this, - o = i.constructor; - return i.isZero() - ? new o(i) - : ((t = i.abs().cmp(1)), - (r = o.precision), - (n = o.rounding), - t !== -1 - ? t === 0 - ? ((e = be(o, r + 4, n).times(0.5)), (e.s = i.s), e) - : new o(NaN) - : ((o.precision = r + 6), - (o.rounding = 1), - (i = i.div(new o(1).minus(i.times(i)).sqrt().plus(1)).atan()), - (o.precision = r), - (o.rounding = n), - i.times(2))); -}; -R.inverseTangent = R.atan = function () { - var e, - t, - r, - n, - i, - o, - s, - a, - l, - u = this, - g = u.constructor, - h = g.precision, - T = g.rounding; - if (u.isFinite()) { - if (u.isZero()) return new g(u); - if (u.abs().eq(1) && h + 4 <= Rn) - return ((s = be(g, h + 4, T).times(0.25)), (s.s = u.s), s); - } else { - if (!u.s) return new g(NaN); - if (h + 4 <= Rn) return ((s = be(g, h + 4, T).times(0.5)), (s.s = u.s), s); - } - for ( - g.precision = a = h + 10, - g.rounding = 1, - r = Math.min(28, (a / M + 2) | 0), - e = r; - e; - --e - ) - u = u.div(u.times(u).plus(1).sqrt().plus(1)); - for ( - D = !1, t = Math.ceil(a / M), n = 1, l = u.times(u), s = new g(u), i = u; - e !== -1; - ) - if ( - ((i = i.times(l)), - (o = s.minus(i.div((n += 2)))), - (i = i.times(l)), - (s = o.plus(i.div((n += 2)))), - s.d[t] !== void 0) - ) - for (e = t; s.d[e] === o.d[e] && e--; ); - return ( - r && (s = s.times(2 << (r - 1))), - (D = !0), - I(s, (g.precision = h), (g.rounding = T), !0) - ); -}; -R.isFinite = function () { - return !!this.d; -}; -R.isInteger = R.isInt = function () { - return !!this.d && re(this.e / M) > this.d.length - 2; -}; -R.isNaN = function () { - return !this.s; -}; -R.isNegative = R.isNeg = function () { - return this.s < 0; -}; -R.isPositive = R.isPos = function () { - return this.s > 0; -}; -R.isZero = function () { - return !!this.d && this.d[0] === 0; -}; -R.lessThan = R.lt = function (e) { - return this.cmp(e) < 0; -}; -R.lessThanOrEqualTo = R.lte = function (e) { - return this.cmp(e) < 1; -}; -R.logarithm = R.log = function (e) { - var t, - r, - n, - i, - o, - s, - a, - l, - u = this, - g = u.constructor, - h = g.precision, - T = g.rounding, - O = 5; - if (e == null) ((e = new g(10)), (t = !0)); - else { - if (((e = new g(e)), (r = e.d), e.s < 0 || !r || !r[0] || e.eq(1))) - return new g(NaN); - t = e.eq(10); - } - if (((r = u.d), u.s < 0 || !r || !r[0] || u.eq(1))) - return new g(r && !r[0] ? -1 / 0 : u.s != 1 ? NaN : r ? 0 : 1 / 0); - if (t) - if (r.length > 1) o = !0; - else { - for (i = r[0]; i % 10 === 0; ) i /= 10; - o = i !== 1; - } - if ( - ((D = !1), - (a = h + O), - (s = Ne(u, a)), - (n = t ? yr(g, a + 10) : Ne(e, a)), - (l = $(s, n, a, 1)), - qt(l.d, (i = h), T)) - ) - do - if ( - ((a += 10), - (s = Ne(u, a)), - (n = t ? yr(g, a + 10) : Ne(e, a)), - (l = $(s, n, a, 1)), - !o) - ) { - +Z(l.d).slice(i + 1, i + 15) + 1 == 1e14 && (l = I(l, h + 1, 0)); - break; - } - while (qt(l.d, (i += 10), T)); - return ((D = !0), I(l, h, T)); -}; -R.minus = R.sub = function (e) { - var t, - r, - n, - i, - o, - s, - a, - l, - u, - g, - h, - T, - O = this, - C = O.constructor; - if (((e = new C(e)), !O.d || !e.d)) - return ( - !O.s || !e.s - ? (e = new C(NaN)) - : O.d - ? (e.s = -e.s) - : (e = new C(e.d || O.s !== e.s ? O : NaN)), - e - ); - if (O.s != e.s) return ((e.s = -e.s), O.plus(e)); - if ( - ((u = O.d), (T = e.d), (a = C.precision), (l = C.rounding), !u[0] || !T[0]) - ) { - if (T[0]) e.s = -e.s; - else if (u[0]) e = new C(O); - else return new C(l === 3 ? -0 : 0); - return D ? I(e, a, l) : e; - } - if (((r = re(e.e / M)), (g = re(O.e / M)), (u = u.slice()), (o = g - r), o)) { - for ( - h = o < 0, - h - ? ((t = u), (o = -o), (s = T.length)) - : ((t = T), (r = g), (s = u.length)), - n = Math.max(Math.ceil(a / M), s) + 2, - o > n && ((o = n), (t.length = 1)), - t.reverse(), - n = o; - n--; - ) - t.push(0); - t.reverse(); - } else { - for (n = u.length, s = T.length, h = n < s, h && (s = n), n = 0; n < s; n++) - if (u[n] != T[n]) { - h = u[n] < T[n]; - break; - } - o = 0; - } - for ( - h && ((t = u), (u = T), (T = t), (e.s = -e.s)), - s = u.length, - n = T.length - s; - n > 0; - --n - ) - u[s++] = 0; - for (n = T.length; n > o; ) { - if (u[--n] < T[n]) { - for (i = n; i && u[--i] === 0; ) u[i] = fe - 1; - (--u[i], (u[n] += fe)); - } - u[n] -= T[n]; - } - for (; u[--s] === 0; ) u.pop(); - for (; u[0] === 0; u.shift()) --r; - return u[0] - ? ((e.d = u), (e.e = br(u, r)), D ? I(e, a, l) : e) - : new C(l === 3 ? -0 : 0); -}; -R.modulo = R.mod = function (e) { - var t, - r = this, - n = r.constructor; - return ( - (e = new n(e)), - !r.d || !e.s || (e.d && !e.d[0]) - ? new n(NaN) - : !e.d || (r.d && !r.d[0]) - ? I(new n(r), n.precision, n.rounding) - : ((D = !1), - n.modulo == 9 - ? ((t = $(r, e.abs(), 0, 3, 1)), (t.s *= e.s)) - : (t = $(r, e, 0, n.modulo, 1)), - (t = t.times(e)), - (D = !0), - r.minus(t)) - ); -}; -R.naturalExponential = R.exp = function () { - return On(this); -}; -R.naturalLogarithm = R.ln = function () { - return Ne(this); -}; -R.negated = R.neg = function () { - var e = new this.constructor(this); - return ((e.s = -e.s), I(e)); -}; -R.plus = R.add = function (e) { - var t, - r, - n, - i, - o, - s, - a, - l, - u, - g, - h = this, - T = h.constructor; - if (((e = new T(e)), !h.d || !e.d)) - return ( - !h.s || !e.s - ? (e = new T(NaN)) - : h.d || (e = new T(e.d || h.s === e.s ? h : NaN)), - e - ); - if (h.s != e.s) return ((e.s = -e.s), h.minus(e)); - if ( - ((u = h.d), (g = e.d), (a = T.precision), (l = T.rounding), !u[0] || !g[0]) - ) - return (g[0] || (e = new T(h)), D ? I(e, a, l) : e); - if (((o = re(h.e / M)), (n = re(e.e / M)), (u = u.slice()), (i = o - n), i)) { - for ( - i < 0 - ? ((r = u), (i = -i), (s = g.length)) - : ((r = g), (n = o), (s = u.length)), - o = Math.ceil(a / M), - s = o > s ? o + 1 : s + 1, - i > s && ((i = s), (r.length = 1)), - r.reverse(); - i--; - ) - r.push(0); - r.reverse(); - } - for ( - s = u.length, - i = g.length, - s - i < 0 && ((i = s), (r = g), (g = u), (u = r)), - t = 0; - i; - ) - ((t = ((u[--i] = u[i] + g[i] + t) / fe) | 0), (u[i] %= fe)); - for (t && (u.unshift(t), ++n), s = u.length; u[--s] == 0; ) u.pop(); - return ((e.d = u), (e.e = br(u, n)), D ? I(e, a, l) : e); -}; -R.precision = R.sd = function (e) { - var t, - r = this; - if (e !== void 0 && e !== !!e && e !== 1 && e !== 0) throw Error(qe + e); - return ( - r.d ? ((t = ao(r.d)), e && r.e + 1 > t && (t = r.e + 1)) : (t = NaN), - t - ); -}; -R.round = function () { - var e = this, - t = e.constructor; - return I(new t(e), e.e + 1, t.rounding); -}; -R.sine = R.sin = function () { - var e, - t, - r = this, - n = r.constructor; - return r.isFinite() - ? r.isZero() - ? new n(r) - : ((e = n.precision), - (t = n.rounding), - (n.precision = e + Math.max(r.e, r.sd()) + M), - (n.rounding = 1), - (r = ou(n, po(n, r))), - (n.precision = e), - (n.rounding = t), - I(ke > 2 ? r.neg() : r, e, t, !0)) - : new n(NaN); -}; -R.squareRoot = R.sqrt = function () { - var e, - t, - r, - n, - i, - o, - s = this, - a = s.d, - l = s.e, - u = s.s, - g = s.constructor; - if (u !== 1 || !a || !a[0]) - return new g(!u || (u < 0 && (!a || a[0])) ? NaN : a ? s : 1 / 0); - for ( - D = !1, - u = Math.sqrt(+s), - u == 0 || u == 1 / 0 - ? ((t = Z(a)), - (t.length + l) % 2 == 0 && (t += "0"), - (u = Math.sqrt(t)), - (l = re((l + 1) / 2) - (l < 0 || l % 2)), - u == 1 / 0 - ? (t = "5e" + l) - : ((t = u.toExponential()), - (t = t.slice(0, t.indexOf("e") + 1) + l)), - (n = new g(t))) - : (n = new g(u.toString())), - r = (l = g.precision) + 3; - ; - ) - if ( - ((o = n), - (n = o.plus($(s, o, r + 2, 1)).times(0.5)), - Z(o.d).slice(0, r) === (t = Z(n.d)).slice(0, r)) - ) - if (((t = t.slice(r - 3, r + 1)), t == "9999" || (!i && t == "4999"))) { - if (!i && (I(o, l + 1, 0), o.times(o).eq(s))) { - n = o; - break; - } - ((r += 4), (i = 1)); - } else { - (!+t || (!+t.slice(1) && t.charAt(0) == "5")) && - (I(n, l + 1, 1), (e = !n.times(n).eq(s))); - break; - } - return ((D = !0), I(n, l, g.rounding, e)); -}; -R.tangent = R.tan = function () { - var e, - t, - r = this, - n = r.constructor; - return r.isFinite() - ? r.isZero() - ? new n(r) - : ((e = n.precision), - (t = n.rounding), - (n.precision = e + 10), - (n.rounding = 1), - (r = r.sin()), - (r.s = 1), - (r = $(r, new n(1).minus(r.times(r)).sqrt(), e + 10, 0)), - (n.precision = e), - (n.rounding = t), - I(ke == 2 || ke == 4 ? r.neg() : r, e, t, !0)) - : new n(NaN); -}; -R.times = R.mul = function (e) { - var t, - r, - n, - i, - o, - s, - a, - l, - u, - g = this, - h = g.constructor, - T = g.d, - O = (e = new h(e)).d; - if (((e.s *= g.s), !T || !T[0] || !O || !O[0])) - return new h( - !e.s || (T && !T[0] && !O) || (O && !O[0] && !T) - ? NaN - : !T || !O - ? e.s / 0 - : e.s * 0, - ); - for ( - r = re(g.e / M) + re(e.e / M), - l = T.length, - u = O.length, - l < u && ((o = T), (T = O), (O = o), (s = l), (l = u), (u = s)), - o = [], - s = l + u, - n = s; - n--; - ) - o.push(0); - for (n = u; --n >= 0; ) { - for (t = 0, i = l + n; i > n; ) - ((a = o[i] + O[n] * T[i - n - 1] + t), - (o[i--] = (a % fe) | 0), - (t = (a / fe) | 0)); - o[i] = ((o[i] + t) % fe) | 0; - } - for (; !o[--s]; ) o.pop(); - return ( - t ? ++r : o.shift(), - (e.d = o), - (e.e = br(o, r)), - D ? I(e, h.precision, h.rounding) : e - ); -}; -R.toBinary = function (e, t) { - return kn(this, 2, e, t); -}; -R.toDecimalPlaces = R.toDP = function (e, t) { - var r = this, - n = r.constructor; - return ( - (r = new n(r)), - e === void 0 - ? r - : (ae(e, 0, Be), - t === void 0 ? (t = n.rounding) : ae(t, 0, 8), - I(r, e + r.e + 1, t)) - ); -}; -R.toExponential = function (e, t) { - var r, - n = this, - i = n.constructor; - return ( - e === void 0 - ? (r = xe(n, !0)) - : (ae(e, 0, Be), - t === void 0 ? (t = i.rounding) : ae(t, 0, 8), - (n = I(new i(n), e + 1, t)), - (r = xe(n, !0, e + 1))), - n.isNeg() && !n.isZero() ? "-" + r : r - ); -}; -R.toFixed = function (e, t) { - var r, - n, - i = this, - o = i.constructor; - return ( - e === void 0 - ? (r = xe(i)) - : (ae(e, 0, Be), - t === void 0 ? (t = o.rounding) : ae(t, 0, 8), - (n = I(new o(i), e + i.e + 1, t)), - (r = xe(n, !1, e + n.e + 1))), - i.isNeg() && !i.isZero() ? "-" + r : r - ); -}; -R.toFraction = function (e) { - var t, - r, - n, - i, - o, - s, - a, - l, - u, - g, - h, - T, - O = this, - C = O.d, - S = O.constructor; - if (!C) return new S(O); - if ( - ((u = r = new S(1)), - (n = l = new S(0)), - (t = new S(n)), - (o = t.e = ao(C) - O.e - 1), - (s = o % M), - (t.d[0] = W(10, s < 0 ? M + s : s)), - e == null) - ) - e = o > 0 ? t : u; - else { - if (((a = new S(e)), !a.isInt() || a.lt(u))) throw Error(qe + a); - e = a.gt(t) ? (o > 0 ? t : u) : a; - } - for ( - D = !1, - a = new S(Z(C)), - g = S.precision, - S.precision = o = C.length * M * 2; - (h = $(a, t, 0, 1, 1)), (i = r.plus(h.times(n))), i.cmp(e) != 1; - ) - ((r = n), - (n = i), - (i = u), - (u = l.plus(h.times(i))), - (l = i), - (i = t), - (t = a.minus(h.times(i))), - (a = i)); - return ( - (i = $(e.minus(r), n, 0, 1, 1)), - (l = l.plus(i.times(u))), - (r = r.plus(i.times(n))), - (l.s = u.s = O.s), - (T = - $(u, n, o, 1) - .minus(O) - .abs() - .cmp($(l, r, o, 1).minus(O).abs()) < 1 - ? [u, n] - : [l, r]), - (S.precision = g), - (D = !0), - T - ); -}; -R.toHexadecimal = R.toHex = function (e, t) { - return kn(this, 16, e, t); -}; -R.toNearest = function (e, t) { - var r = this, - n = r.constructor; - if (((r = new n(r)), e == null)) { - if (!r.d) return r; - ((e = new n(1)), (t = n.rounding)); - } else { - if (((e = new n(e)), t === void 0 ? (t = n.rounding) : ae(t, 0, 8), !r.d)) - return e.s ? r : e; - if (!e.d) return (e.s && (e.s = r.s), e); - } - return ( - e.d[0] - ? ((D = !1), (r = $(r, e, 0, t, 1).times(e)), (D = !0), I(r)) - : ((e.s = r.s), (r = e)), - r - ); -}; -R.toNumber = function () { - return +this; -}; -R.toOctal = function (e, t) { - return kn(this, 8, e, t); -}; -R.toPower = R.pow = function (e) { - var t, - r, - n, - i, - o, - s, - a = this, - l = a.constructor, - u = +(e = new l(e)); - if (!a.d || !e.d || !a.d[0] || !e.d[0]) return new l(W(+a, u)); - if (((a = new l(a)), a.eq(1))) return a; - if (((n = l.precision), (o = l.rounding), e.eq(1))) return I(a, n, o); - if (((t = re(e.e / M)), t >= e.d.length - 1 && (r = u < 0 ? -u : u) <= tu)) - return ((i = lo(l, a, r, n)), e.s < 0 ? new l(1).div(i) : I(i, n, o)); - if (((s = a.s), s < 0)) { - if (t < e.d.length - 1) return new l(NaN); - if ( - ((e.d[t] & 1) == 0 && (s = 1), a.e == 0 && a.d[0] == 1 && a.d.length == 1) - ) - return ((a.s = s), a); - } - return ( - (r = W(+a, u)), - (t = - r == 0 || !isFinite(r) - ? re(u * (Math.log("0." + Z(a.d)) / Math.LN10 + a.e + 1)) - : new l(r + "").e), - t > l.maxE + 1 || t < l.minE - 1 - ? new l(t > 0 ? s / 0 : 0) - : ((D = !1), - (l.rounding = a.s = 1), - (r = Math.min(12, (t + "").length)), - (i = On(e.times(Ne(a, n + r)), n)), - i.d && - ((i = I(i, n + 5, 1)), - qt(i.d, n, o) && - ((t = n + 10), - (i = I(On(e.times(Ne(a, t + r)), t), t + 5, 1)), - +Z(i.d).slice(n + 1, n + 15) + 1 == 1e14 && (i = I(i, n + 1, 0)))), - (i.s = s), - (D = !0), - (l.rounding = o), - I(i, n, o)) - ); -}; -R.toPrecision = function (e, t) { - var r, - n = this, - i = n.constructor; - return ( - e === void 0 - ? (r = xe(n, n.e <= i.toExpNeg || n.e >= i.toExpPos)) - : (ae(e, 1, Be), - t === void 0 ? (t = i.rounding) : ae(t, 0, 8), - (n = I(new i(n), e, t)), - (r = xe(n, e <= n.e || n.e <= i.toExpNeg, e))), - n.isNeg() && !n.isZero() ? "-" + r : r - ); -}; -R.toSignificantDigits = R.toSD = function (e, t) { - var r = this, - n = r.constructor; - return ( - e === void 0 - ? ((e = n.precision), (t = n.rounding)) - : (ae(e, 1, Be), t === void 0 ? (t = n.rounding) : ae(t, 0, 8)), - I(new n(r), e, t) - ); -}; -R.toString = function () { - var e = this, - t = e.constructor, - r = xe(e, e.e <= t.toExpNeg || e.e >= t.toExpPos); - return e.isNeg() && !e.isZero() ? "-" + r : r; -}; -R.truncated = R.trunc = function () { - return I(new this.constructor(this), this.e + 1, 1); -}; -R.valueOf = R.toJSON = function () { - var e = this, - t = e.constructor, - r = xe(e, e.e <= t.toExpNeg || e.e >= t.toExpPos); - return e.isNeg() ? "-" + r : r; -}; -function Z(e) { - var t, - r, - n, - i = e.length - 1, - o = "", - s = e[0]; - if (i > 0) { - for (o += s, t = 1; t < i; t++) - ((n = e[t] + ""), (r = M - n.length), r && (o += Le(r)), (o += n)); - ((s = e[t]), (n = s + ""), (r = M - n.length), r && (o += Le(r))); - } else if (s === 0) return "0"; - for (; s % 10 === 0; ) s /= 10; - return o + s; -} -function ae(e, t, r) { - if (e !== ~~e || e < t || e > r) throw Error(qe + e); -} -function qt(e, t, r, n) { - var i, o, s, a; - for (o = e[0]; o >= 10; o /= 10) --t; - return ( - --t < 0 ? ((t += M), (i = 0)) : ((i = Math.ceil((t + 1) / M)), (t %= M)), - (o = W(10, M - t)), - (a = (e[i] % o) | 0), - n == null - ? t < 3 - ? (t == 0 ? (a = (a / 100) | 0) : t == 1 && (a = (a / 10) | 0), - (s = - (r < 4 && a == 99999) || - (r > 3 && a == 49999) || - a == 5e4 || - a == 0)) - : (s = - (((r < 4 && a + 1 == o) || (r > 3 && a + 1 == o / 2)) && - ((e[i + 1] / o / 100) | 0) == W(10, t - 2) - 1) || - ((a == o / 2 || a == 0) && ((e[i + 1] / o / 100) | 0) == 0)) - : t < 4 - ? (t == 0 - ? (a = (a / 1e3) | 0) - : t == 1 - ? (a = (a / 100) | 0) - : t == 2 && (a = (a / 10) | 0), - (s = ((n || r < 4) && a == 9999) || (!n && r > 3 && a == 4999))) - : (s = - (((n || r < 4) && a + 1 == o) || (!n && r > 3 && a + 1 == o / 2)) && - ((e[i + 1] / o / 1e3) | 0) == W(10, t - 3) - 1), - s - ); -} -function fr(e, t, r) { - for (var n, i = [0], o, s = 0, a = e.length; s < a; ) { - for (o = i.length; o--; ) i[o] *= t; - for (i[0] += Cn.indexOf(e.charAt(s++)), n = 0; n < i.length; n++) - i[n] > r - 1 && - (i[n + 1] === void 0 && (i[n + 1] = 0), - (i[n + 1] += (i[n] / r) | 0), - (i[n] %= r)); - } - return i.reverse(); -} -function nu(e, t) { - var r, n, i; - if (t.isZero()) return t; - ((n = t.d.length), - n < 32 - ? ((r = Math.ceil(n / 3)), (i = (1 / xr(4, r)).toString())) - : ((r = 16), (i = "2.3283064365386962890625e-10")), - (e.precision += r), - (t = lt(e, 1, t.times(i), new e(1)))); - for (var o = r; o--; ) { - var s = t.times(t); - t = s.times(s).minus(s).times(8).plus(1); - } - return ((e.precision -= r), t); -} -var $ = (function () { - function e(n, i, o) { - var s, - a = 0, - l = n.length; - for (n = n.slice(); l--; ) - ((s = n[l] * i + a), (n[l] = (s % o) | 0), (a = (s / o) | 0)); - return (a && n.unshift(a), n); - } - function t(n, i, o, s) { - var a, l; - if (o != s) l = o > s ? 1 : -1; - else - for (a = l = 0; a < o; a++) - if (n[a] != i[a]) { - l = n[a] > i[a] ? 1 : -1; - break; - } - return l; - } - function r(n, i, o, s) { - for (var a = 0; o--; ) - ((n[o] -= a), (a = n[o] < i[o] ? 1 : 0), (n[o] = a * s + n[o] - i[o])); - for (; !n[0] && n.length > 1; ) n.shift(); - } - return function (n, i, o, s, a, l) { - var u, - g, - h, - T, - O, - C, - S, - F, - _, - L, - k, - q, - Y, - U, - At, - J, - ie, - Ae, - X, - Ze, - tr = n.constructor, - Zr = n.s == i.s ? 1 : -1, - ee = n.d, - B = i.d; - if (!ee || !ee[0] || !B || !B[0]) - return new tr( - !n.s || !i.s || (ee ? B && ee[0] == B[0] : !B) - ? NaN - : (ee && ee[0] == 0) || !B - ? Zr * 0 - : Zr / 0, - ); - for ( - l - ? ((O = 1), (g = n.e - i.e)) - : ((l = fe), (O = M), (g = re(n.e / O) - re(i.e / O))), - X = B.length, - ie = ee.length, - _ = new tr(Zr), - L = _.d = [], - h = 0; - B[h] == (ee[h] || 0); - h++ - ); - if ( - (B[h] > (ee[h] || 0) && g--, - o == null - ? ((U = o = tr.precision), (s = tr.rounding)) - : a - ? (U = o + (n.e - i.e) + 1) - : (U = o), - U < 0) - ) - (L.push(1), (C = !0)); - else { - if (((U = (U / O + 2) | 0), (h = 0), X == 1)) { - for (T = 0, B = B[0], U++; (h < ie || T) && U--; h++) - ((At = T * l + (ee[h] || 0)), - (L[h] = (At / B) | 0), - (T = (At % B) | 0)); - C = T || h < ie; - } else { - for ( - T = (l / (B[0] + 1)) | 0, - T > 1 && - ((B = e(B, T, l)), - (ee = e(ee, T, l)), - (X = B.length), - (ie = ee.length)), - J = X, - k = ee.slice(0, X), - q = k.length; - q < X; - ) - k[q++] = 0; - ((Ze = B.slice()), Ze.unshift(0), (Ae = B[0]), B[1] >= l / 2 && ++Ae); - do - ((T = 0), - (u = t(B, k, X, q)), - u < 0 - ? ((Y = k[0]), - X != q && (Y = Y * l + (k[1] || 0)), - (T = (Y / Ae) | 0), - T > 1 - ? (T >= l && (T = l - 1), - (S = e(B, T, l)), - (F = S.length), - (q = k.length), - (u = t(S, k, F, q)), - u == 1 && (T--, r(S, X < F ? Ze : B, F, l))) - : (T == 0 && (u = T = 1), (S = B.slice())), - (F = S.length), - F < q && S.unshift(0), - r(k, S, q, l), - u == -1 && - ((q = k.length), - (u = t(B, k, X, q)), - u < 1 && (T++, r(k, X < q ? Ze : B, q, l))), - (q = k.length)) - : u === 0 && (T++, (k = [0])), - (L[h++] = T), - u && k[0] ? (k[q++] = ee[J] || 0) : ((k = [ee[J]]), (q = 1))); - while ((J++ < ie || k[0] !== void 0) && U--); - C = k[0] !== void 0; - } - L[0] || L.shift(); - } - if (O == 1) ((_.e = g), (ro = C)); - else { - for (h = 1, T = L[0]; T >= 10; T /= 10) h++; - ((_.e = h + g * O - 1), I(_, a ? o + _.e + 1 : o, s, C)); - } - return _; - }; -})(); -function I(e, t, r, n) { - var i, - o, - s, - a, - l, - u, - g, - h, - T, - O = e.constructor; - e: if (t != null) { - if (((h = e.d), !h)) return e; - for (i = 1, a = h[0]; a >= 10; a /= 10) i++; - if (((o = t - i), o < 0)) - ((o += M), - (s = t), - (g = h[(T = 0)]), - (l = ((g / W(10, i - s - 1)) % 10) | 0)); - else if (((T = Math.ceil((o + 1) / M)), (a = h.length), T >= a)) - if (n) { - for (; a++ <= T; ) h.push(0); - ((g = l = 0), (i = 1), (o %= M), (s = o - M + 1)); - } else break e; - else { - for (g = a = h[T], i = 1; a >= 10; a /= 10) i++; - ((o %= M), - (s = o - M + i), - (l = s < 0 ? 0 : ((g / W(10, i - s - 1)) % 10) | 0)); - } - if ( - ((n = - n || - t < 0 || - h[T + 1] !== void 0 || - (s < 0 ? g : g % W(10, i - s - 1))), - (u = - r < 4 - ? (l || n) && (r == 0 || r == (e.s < 0 ? 3 : 2)) - : l > 5 || - (l == 5 && - (r == 4 || - n || - (r == 6 && - ((o > 0 ? (s > 0 ? g / W(10, i - s) : 0) : h[T - 1]) % 10) & - 1) || - r == (e.s < 0 ? 8 : 7)))), - t < 1 || !h[0]) - ) - return ( - (h.length = 0), - u - ? ((t -= e.e + 1), (h[0] = W(10, (M - (t % M)) % M)), (e.e = -t || 0)) - : (h[0] = e.e = 0), - e - ); - if ( - (o == 0 - ? ((h.length = T), (a = 1), T--) - : ((h.length = T + 1), - (a = W(10, M - o)), - (h[T] = s > 0 ? (((g / W(10, i - s)) % W(10, s)) | 0) * a : 0)), - u) - ) - for (;;) - if (T == 0) { - for (o = 1, s = h[0]; s >= 10; s /= 10) o++; - for (s = h[0] += a, a = 1; s >= 10; s /= 10) a++; - o != a && (e.e++, h[0] == fe && (h[0] = 1)); - break; - } else { - if (((h[T] += a), h[T] != fe)) break; - ((h[T--] = 0), (a = 1)); - } - for (o = h.length; h[--o] === 0; ) h.pop(); - } - return ( - D && - (e.e > O.maxE - ? ((e.d = null), (e.e = NaN)) - : e.e < O.minE && ((e.e = 0), (e.d = [0]))), - e - ); -} -function xe(e, t, r) { - if (!e.isFinite()) return co(e); - var n, - i = e.e, - o = Z(e.d), - s = o.length; - return ( - t - ? (r && (n = r - s) > 0 - ? (o = o.charAt(0) + "." + o.slice(1) + Le(n)) - : s > 1 && (o = o.charAt(0) + "." + o.slice(1)), - (o = o + (e.e < 0 ? "e" : "e+") + e.e)) - : i < 0 - ? ((o = "0." + Le(-i - 1) + o), r && (n = r - s) > 0 && (o += Le(n))) - : i >= s - ? ((o += Le(i + 1 - s)), - r && (n = r - i - 1) > 0 && (o = o + "." + Le(n))) - : ((n = i + 1) < s && (o = o.slice(0, n) + "." + o.slice(n)), - r && (n = r - s) > 0 && (i + 1 === s && (o += "."), (o += Le(n)))), - o - ); -} -function br(e, t) { - var r = e[0]; - for (t *= M; r >= 10; r /= 10) t++; - return t; -} -function yr(e, t, r) { - if (t > ru) throw ((D = !0), r && (e.precision = r), Error(no)); - return I(new e(gr), t, 1, !0); -} -function be(e, t, r) { - if (t > Rn) throw Error(no); - return I(new e(hr), t, r, !0); -} -function ao(e) { - var t = e.length - 1, - r = t * M + 1; - if (((t = e[t]), t)) { - for (; t % 10 == 0; t /= 10) r--; - for (t = e[0]; t >= 10; t /= 10) r++; - } - return r; -} -function Le(e) { - for (var t = ""; e--; ) t += "0"; - return t; -} -function lo(e, t, r, n) { - var i, - o = new e(1), - s = Math.ceil(n / M + 4); - for (D = !1; ; ) { - if ( - (r % 2 && ((o = o.times(t)), eo(o.d, s) && (i = !0)), - (r = re(r / 2)), - r === 0) - ) { - ((r = o.d.length - 1), i && o.d[r] === 0 && ++o.d[r]); - break; - } - ((t = t.times(t)), eo(t.d, s)); - } - return ((D = !0), o); -} -function Xi(e) { - return e.d[e.d.length - 1] & 1; -} -function uo(e, t, r) { - for (var n, i, o = new e(t[0]), s = 0; ++s < t.length; ) { - if (((i = new e(t[s])), !i.s)) { - o = i; - break; - } - ((n = o.cmp(i)), (n === r || (n === 0 && o.s === r)) && (o = i)); - } - return o; -} -function On(e, t) { - var r, - n, - i, - o, - s, - a, - l, - u = 0, - g = 0, - h = 0, - T = e.constructor, - O = T.rounding, - C = T.precision; - if (!e.d || !e.d[0] || e.e > 17) - return new T( - e.d - ? e.d[0] - ? e.s < 0 - ? 0 - : 1 / 0 - : 1 - : e.s - ? e.s < 0 - ? 0 - : e - : NaN, - ); - for ( - t == null ? ((D = !1), (l = C)) : (l = t), a = new T(0.03125); - e.e > -2; - ) - ((e = e.times(a)), (h += 5)); - for ( - n = ((Math.log(W(2, h)) / Math.LN10) * 2 + 5) | 0, - l += n, - r = o = s = new T(1), - T.precision = l; - ; - ) { - if ( - ((o = I(o.times(e), l, 1)), - (r = r.times(++g)), - (a = s.plus($(o, r, l, 1))), - Z(a.d).slice(0, l) === Z(s.d).slice(0, l)) - ) { - for (i = h; i--; ) s = I(s.times(s), l, 1); - if (t == null) - if (u < 3 && qt(s.d, l - n, O, u)) - ((T.precision = l += 10), (r = o = a = new T(1)), (g = 0), u++); - else return I(s, (T.precision = C), O, (D = !0)); - else return ((T.precision = C), s); - } - s = a; - } -} -function Ne(e, t) { - var r, - n, - i, - o, - s, - a, - l, - u, - g, - h, - T, - O = 1, - C = 10, - S = e, - F = S.d, - _ = S.constructor, - L = _.rounding, - k = _.precision; - if (S.s < 0 || !F || !F[0] || (!S.e && F[0] == 1 && F.length == 1)) - return new _(F && !F[0] ? -1 / 0 : S.s != 1 ? NaN : F ? 0 : S); - if ( - (t == null ? ((D = !1), (g = k)) : (g = t), - (_.precision = g += C), - (r = Z(F)), - (n = r.charAt(0)), - Math.abs((o = S.e)) < 15e14) - ) { - for (; (n < 7 && n != 1) || (n == 1 && r.charAt(1) > 3); ) - ((S = S.times(e)), (r = Z(S.d)), (n = r.charAt(0)), O++); - ((o = S.e), - n > 1 ? ((S = new _("0." + r)), o++) : (S = new _(n + "." + r.slice(1)))); - } else - return ( - (u = yr(_, g + 2, k).times(o + "")), - (S = Ne(new _(n + "." + r.slice(1)), g - C).plus(u)), - (_.precision = k), - t == null ? I(S, k, L, (D = !0)) : S - ); - for ( - h = S, - l = s = S = $(S.minus(1), S.plus(1), g, 1), - T = I(S.times(S), g, 1), - i = 3; - ; - ) { - if ( - ((s = I(s.times(T), g, 1)), - (u = l.plus($(s, new _(i), g, 1))), - Z(u.d).slice(0, g) === Z(l.d).slice(0, g)) - ) - if ( - ((l = l.times(2)), - o !== 0 && (l = l.plus(yr(_, g + 2, k).times(o + ""))), - (l = $(l, new _(O), g, 1)), - t == null) - ) - if (qt(l.d, g - C, L, a)) - ((_.precision = g += C), - (u = s = S = $(h.minus(1), h.plus(1), g, 1)), - (T = I(S.times(S), g, 1)), - (i = a = 1)); - else return I(l, (_.precision = k), L, (D = !0)); - else return ((_.precision = k), l); - ((l = u), (i += 2)); - } -} -function co(e) { - return String((e.s * e.s) / 0); -} -function mr(e, t) { - var r, n, i; - for ( - (r = t.indexOf(".")) > -1 && (t = t.replace(".", "")), - (n = t.search(/e/i)) > 0 - ? (r < 0 && (r = n), (r += +t.slice(n + 1)), (t = t.substring(0, n))) - : r < 0 && (r = t.length), - n = 0; - t.charCodeAt(n) === 48; - n++ - ); - for (i = t.length; t.charCodeAt(i - 1) === 48; --i); - if (((t = t.slice(n, i)), t)) { - if ( - ((i -= n), - (e.e = r = r - n - 1), - (e.d = []), - (n = (r + 1) % M), - r < 0 && (n += M), - n < i) - ) { - for (n && e.d.push(+t.slice(0, n)), i -= M; n < i; ) - e.d.push(+t.slice(n, (n += M))); - ((t = t.slice(n)), (n = M - t.length)); - } else n -= i; - for (; n--; ) t += "0"; - (e.d.push(+t), - D && - (e.e > e.constructor.maxE - ? ((e.d = null), (e.e = NaN)) - : e.e < e.constructor.minE && ((e.e = 0), (e.d = [0])))); - } else ((e.e = 0), (e.d = [0])); - return e; -} -function iu(e, t) { - var r, n, i, o, s, a, l, u, g; - if (t.indexOf("_") > -1) { - if (((t = t.replace(/(\d)_(?=\d)/g, "$1")), so.test(t))) return mr(e, t); - } else if (t === "Infinity" || t === "NaN") - return (+t || (e.s = NaN), (e.e = NaN), (e.d = null), e); - if (Xl.test(t)) ((r = 16), (t = t.toLowerCase())); - else if (Zl.test(t)) r = 2; - else if (eu.test(t)) r = 8; - else throw Error(qe + t); - for ( - o = t.search(/p/i), - o > 0 - ? ((l = +t.slice(o + 1)), (t = t.substring(2, o))) - : (t = t.slice(2)), - o = t.indexOf("."), - s = o >= 0, - n = e.constructor, - s && - ((t = t.replace(".", "")), - (a = t.length), - (o = a - o), - (i = lo(n, new n(r), o, o * 2))), - u = fr(t, r, fe), - g = u.length - 1, - o = g; - u[o] === 0; - --o - ) - u.pop(); - return o < 0 - ? new n(e.s * 0) - : ((e.e = br(u, g)), - (e.d = u), - (D = !1), - s && (e = $(e, i, a * 4)), - l && (e = e.times(Math.abs(l) < 54 ? W(2, l) : Ie.pow(2, l))), - (D = !0), - e); -} -function ou(e, t) { - var r, - n = t.d.length; - if (n < 3) return t.isZero() ? t : lt(e, 2, t, t); - ((r = 1.4 * Math.sqrt(n)), - (r = r > 16 ? 16 : r | 0), - (t = t.times(1 / xr(5, r))), - (t = lt(e, 2, t, t))); - for (var i, o = new e(5), s = new e(16), a = new e(20); r--; ) - ((i = t.times(t)), (t = t.times(o.plus(i.times(s.times(i).minus(a)))))); - return t; -} -function lt(e, t, r, n, i) { - var o, - s, - a, - l, - u = 1, - g = e.precision, - h = Math.ceil(g / M); - for (D = !1, l = r.times(r), a = new e(n); ; ) { - if ( - ((s = $(a.times(l), new e(t++ * t++), g, 1)), - (a = i ? n.plus(s) : n.minus(s)), - (n = $(s.times(l), new e(t++ * t++), g, 1)), - (s = a.plus(n)), - s.d[h] !== void 0) - ) { - for (o = h; s.d[o] === a.d[o] && o--; ); - if (o == -1) break; - } - ((o = a), (a = n), (n = s), (s = o), u++); - } - return ((D = !0), (s.d.length = h + 1), s); -} -function xr(e, t) { - for (var r = e; --t; ) r *= e; - return r; -} -function po(e, t) { - var r, - n = t.s < 0, - i = be(e, e.precision, 1), - o = i.times(0.5); - if (((t = t.abs()), t.lte(o))) return ((ke = n ? 4 : 1), t); - if (((r = t.divToInt(i)), r.isZero())) ke = n ? 3 : 2; - else { - if (((t = t.minus(r.times(i))), t.lte(o))) - return ((ke = Xi(r) ? (n ? 2 : 3) : n ? 4 : 1), t); - ke = Xi(r) ? (n ? 1 : 4) : n ? 3 : 2; - } - return t.minus(i).abs(); -} -function kn(e, t, r, n) { - var i, - o, - s, - a, - l, - u, - g, - h, - T, - O = e.constructor, - C = r !== void 0; - if ( - (C - ? (ae(r, 1, Be), n === void 0 ? (n = O.rounding) : ae(n, 0, 8)) - : ((r = O.precision), (n = O.rounding)), - !e.isFinite()) - ) - g = co(e); - else { - for ( - g = xe(e), - s = g.indexOf("."), - C - ? ((i = 2), t == 16 ? (r = r * 4 - 3) : t == 8 && (r = r * 3 - 2)) - : (i = t), - s >= 0 && - ((g = g.replace(".", "")), - (T = new O(1)), - (T.e = g.length - s), - (T.d = fr(xe(T), 10, i)), - (T.e = T.d.length)), - h = fr(g, 10, i), - o = l = h.length; - h[--l] == 0; - ) - h.pop(); - if (!h[0]) g = C ? "0p+0" : "0"; - else { - if ( - (s < 0 - ? o-- - : ((e = new O(e)), - (e.d = h), - (e.e = o), - (e = $(e, T, r, n, 0, i)), - (h = e.d), - (o = e.e), - (u = ro)), - (s = h[r]), - (a = i / 2), - (u = u || h[r + 1] !== void 0), - (u = - n < 4 - ? (s !== void 0 || u) && (n === 0 || n === (e.s < 0 ? 3 : 2)) - : s > a || - (s === a && - (n === 4 || - u || - (n === 6 && h[r - 1] & 1) || - n === (e.s < 0 ? 8 : 7)))), - (h.length = r), - u) - ) - for (; ++h[--r] > i - 1; ) ((h[r] = 0), r || (++o, h.unshift(1))); - for (l = h.length; !h[l - 1]; --l); - for (s = 0, g = ""; s < l; s++) g += Cn.charAt(h[s]); - if (C) { - if (l > 1) - if (t == 16 || t == 8) { - for (s = t == 16 ? 4 : 3, --l; l % s; l++) g += "0"; - for (h = fr(g, i, t), l = h.length; !h[l - 1]; --l); - for (s = 1, g = "1."; s < l; s++) g += Cn.charAt(h[s]); - } else g = g.charAt(0) + "." + g.slice(1); - g = g + (o < 0 ? "p" : "p+") + o; - } else if (o < 0) { - for (; ++o; ) g = "0" + g; - g = "0." + g; - } else if (++o > l) for (o -= l; o--; ) g += "0"; - else o < l && (g = g.slice(0, o) + "." + g.slice(o)); - } - g = (t == 16 ? "0x" : t == 2 ? "0b" : t == 8 ? "0o" : "") + g; - } - return e.s < 0 ? "-" + g : g; -} -function eo(e, t) { - if (e.length > t) return ((e.length = t), !0); -} -function su(e) { - return new this(e).abs(); -} -function au(e) { - return new this(e).acos(); -} -function lu(e) { - return new this(e).acosh(); -} -function uu(e, t) { - return new this(e).plus(t); -} -function cu(e) { - return new this(e).asin(); -} -function pu(e) { - return new this(e).asinh(); -} -function du(e) { - return new this(e).atan(); -} -function fu(e) { - return new this(e).atanh(); -} -function mu(e, t) { - ((e = new this(e)), (t = new this(t))); - var r, - n = this.precision, - i = this.rounding, - o = n + 4; - return ( - !e.s || !t.s - ? (r = new this(NaN)) - : !e.d && !t.d - ? ((r = be(this, o, 1).times(t.s > 0 ? 0.25 : 0.75)), (r.s = e.s)) - : !t.d || e.isZero() - ? ((r = t.s < 0 ? be(this, n, i) : new this(0)), (r.s = e.s)) - : !e.d || t.isZero() - ? ((r = be(this, o, 1).times(0.5)), (r.s = e.s)) - : t.s < 0 - ? ((this.precision = o), - (this.rounding = 1), - (r = this.atan($(e, t, o, 1))), - (t = be(this, o, 1)), - (this.precision = n), - (this.rounding = i), - (r = e.s < 0 ? r.minus(t) : r.plus(t))) - : (r = this.atan($(e, t, o, 1))), - r - ); -} -function gu(e) { - return new this(e).cbrt(); -} -function hu(e) { - return I((e = new this(e)), e.e + 1, 2); -} -function yu(e, t, r) { - return new this(e).clamp(t, r); -} -function wu(e) { - if (!e || typeof e != "object") throw Error(wr + "Object expected"); - var t, - r, - n, - i = e.defaults === !0, - o = [ - "precision", - 1, - Be, - "rounding", - 0, - 8, - "toExpNeg", - -at, - 0, - "toExpPos", - 0, - at, - "maxE", - 0, - at, - "minE", - -at, - 0, - "modulo", - 0, - 9, - ]; - for (t = 0; t < o.length; t += 3) - if (((r = o[t]), i && (this[r] = Sn[r]), (n = e[r]) !== void 0)) - if (re(n) === n && n >= o[t + 1] && n <= o[t + 2]) this[r] = n; - else throw Error(qe + r + ": " + n); - if (((r = "crypto"), i && (this[r] = Sn[r]), (n = e[r]) !== void 0)) - if (n === !0 || n === !1 || n === 0 || n === 1) - if (n) - if ( - typeof crypto < "u" && - crypto && - (crypto.getRandomValues || crypto.randomBytes) - ) - this[r] = !0; - else throw Error(io); - else this[r] = !1; - else throw Error(qe + r + ": " + n); - return this; -} -function bu(e) { - return new this(e).cos(); -} -function xu(e) { - return new this(e).cosh(); -} -function fo(e) { - var t, r, n; - function i(o) { - var s, - a, - l, - u = this; - if (!(u instanceof i)) return new i(o); - if (((u.constructor = i), to(o))) { - ((u.s = o.s), - D - ? !o.d || o.e > i.maxE - ? ((u.e = NaN), (u.d = null)) - : o.e < i.minE - ? ((u.e = 0), (u.d = [0])) - : ((u.e = o.e), (u.d = o.d.slice())) - : ((u.e = o.e), (u.d = o.d ? o.d.slice() : o.d))); - return; - } - if (((l = typeof o), l === "number")) { - if (o === 0) { - ((u.s = 1 / o < 0 ? -1 : 1), (u.e = 0), (u.d = [0])); - return; - } - if ((o < 0 ? ((o = -o), (u.s = -1)) : (u.s = 1), o === ~~o && o < 1e7)) { - for (s = 0, a = o; a >= 10; a /= 10) s++; - D - ? s > i.maxE - ? ((u.e = NaN), (u.d = null)) - : s < i.minE - ? ((u.e = 0), (u.d = [0])) - : ((u.e = s), (u.d = [o])) - : ((u.e = s), (u.d = [o])); - return; - } - if (o * 0 !== 0) { - (o || (u.s = NaN), (u.e = NaN), (u.d = null)); - return; - } - return mr(u, o.toString()); - } - if (l === "string") - return ( - (a = o.charCodeAt(0)) === 45 - ? ((o = o.slice(1)), (u.s = -1)) - : (a === 43 && (o = o.slice(1)), (u.s = 1)), - so.test(o) ? mr(u, o) : iu(u, o) - ); - if (l === "bigint") - return (o < 0 ? ((o = -o), (u.s = -1)) : (u.s = 1), mr(u, o.toString())); - throw Error(qe + o); - } - if ( - ((i.prototype = R), - (i.ROUND_UP = 0), - (i.ROUND_DOWN = 1), - (i.ROUND_CEIL = 2), - (i.ROUND_FLOOR = 3), - (i.ROUND_HALF_UP = 4), - (i.ROUND_HALF_DOWN = 5), - (i.ROUND_HALF_EVEN = 6), - (i.ROUND_HALF_CEIL = 7), - (i.ROUND_HALF_FLOOR = 8), - (i.EUCLID = 9), - (i.config = i.set = wu), - (i.clone = fo), - (i.isDecimal = to), - (i.abs = su), - (i.acos = au), - (i.acosh = lu), - (i.add = uu), - (i.asin = cu), - (i.asinh = pu), - (i.atan = du), - (i.atanh = fu), - (i.atan2 = mu), - (i.cbrt = gu), - (i.ceil = hu), - (i.clamp = yu), - (i.cos = bu), - (i.cosh = xu), - (i.div = Eu), - (i.exp = Pu), - (i.floor = vu), - (i.hypot = Tu), - (i.ln = Au), - (i.log = Cu), - (i.log10 = Ru), - (i.log2 = Su), - (i.max = Ou), - (i.min = ku), - (i.mod = Iu), - (i.mul = Fu), - (i.pow = Mu), - (i.random = _u), - (i.round = Du), - (i.sign = Lu), - (i.sin = Nu), - (i.sinh = qu), - (i.sqrt = Bu), - (i.sub = ju), - (i.sum = $u), - (i.tan = Uu), - (i.tanh = Vu), - (i.trunc = Qu), - e === void 0 && (e = {}), - e && e.defaults !== !0) - ) - for ( - n = [ - "precision", - "rounding", - "toExpNeg", - "toExpPos", - "maxE", - "minE", - "modulo", - "crypto", - ], - t = 0; - t < n.length; - ) - e.hasOwnProperty((r = n[t++])) || (e[r] = this[r]); - return (i.config(e), i); -} -function Eu(e, t) { - return new this(e).div(t); -} -function Pu(e) { - return new this(e).exp(); -} -function vu(e) { - return I((e = new this(e)), e.e + 1, 3); -} -function Tu() { - var e, - t, - r = new this(0); - for (D = !1, e = 0; e < arguments.length; ) - if (((t = new this(arguments[e++])), t.d)) r.d && (r = r.plus(t.times(t))); - else { - if (t.s) return ((D = !0), new this(1 / 0)); - r = t; - } - return ((D = !0), r.sqrt()); -} -function to(e) { - return e instanceof Ie || (e && e.toStringTag === oo) || !1; -} -function Au(e) { - return new this(e).ln(); -} -function Cu(e, t) { - return new this(e).log(t); -} -function Su(e) { - return new this(e).log(2); -} -function Ru(e) { - return new this(e).log(10); -} -function Ou() { - return uo(this, arguments, -1); -} -function ku() { - return uo(this, arguments, 1); -} -function Iu(e, t) { - return new this(e).mod(t); -} -function Fu(e, t) { - return new this(e).mul(t); -} -function Mu(e, t) { - return new this(e).pow(t); -} -function _u(e) { - var t, - r, - n, - i, - o = 0, - s = new this(1), - a = []; - if ( - (e === void 0 ? (e = this.precision) : ae(e, 1, Be), - (n = Math.ceil(e / M)), - this.crypto) - ) - if (crypto.getRandomValues) - for (t = crypto.getRandomValues(new Uint32Array(n)); o < n; ) - ((i = t[o]), - i >= 429e7 - ? (t[o] = crypto.getRandomValues(new Uint32Array(1))[0]) - : (a[o++] = i % 1e7)); - else if (crypto.randomBytes) { - for (t = crypto.randomBytes((n *= 4)); o < n; ) - ((i = - t[o] + (t[o + 1] << 8) + (t[o + 2] << 16) + ((t[o + 3] & 127) << 24)), - i >= 214e7 - ? crypto.randomBytes(4).copy(t, o) - : (a.push(i % 1e7), (o += 4))); - o = n / 4; - } else throw Error(io); - else for (; o < n; ) a[o++] = (Math.random() * 1e7) | 0; - for ( - n = a[--o], - e %= M, - n && e && ((i = W(10, M - e)), (a[o] = ((n / i) | 0) * i)); - a[o] === 0; - o-- - ) - a.pop(); - if (o < 0) ((r = 0), (a = [0])); - else { - for (r = -1; a[0] === 0; r -= M) a.shift(); - for (n = 1, i = a[0]; i >= 10; i /= 10) n++; - n < M && (r -= M - n); - } - return ((s.e = r), (s.d = a), s); -} -function Du(e) { - return I((e = new this(e)), e.e + 1, this.rounding); -} -function Lu(e) { - return ((e = new this(e)), e.d ? (e.d[0] ? e.s : 0 * e.s) : e.s || NaN); -} -function Nu(e) { - return new this(e).sin(); -} -function qu(e) { - return new this(e).sinh(); -} -function Bu(e) { - return new this(e).sqrt(); -} -function ju(e, t) { - return new this(e).sub(t); -} -function $u() { - var e = 0, - t = arguments, - r = new this(t[e]); - for (D = !1; r.s && ++e < t.length; ) r = r.plus(t[e]); - return ((D = !0), I(r, this.precision, this.rounding)); -} -function Uu(e) { - return new this(e).tan(); -} -function Vu(e) { - return new this(e).tanh(); -} -function Qu(e) { - return I((e = new this(e)), e.e + 1, 1); -} -R[Symbol.for("nodejs.util.inspect.custom")] = R.toString; -R[Symbol.toStringTag] = "Decimal"; -var Ie = (R.constructor = fo(Sn)); -gr = new Ie(gr); -hr = new Ie(hr); -var Fe = Ie; -function ut(e) { - return Ie.isDecimal(e) - ? !0 - : e !== null && - typeof e == "object" && - typeof e.s == "number" && - typeof e.e == "number" && - typeof e.toFixed == "function" && - Array.isArray(e.d); -} -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -var Bt = {}; -Xe(Bt, { ModelAction: () => ct, datamodelEnumToSchemaEnum: () => Ju }); -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -function Ju(e) { - return { name: e.name, values: e.values.map((t) => t.name) }; -} -m(); -c(); -p(); -d(); -f(); -var ct = ((k) => ( - (k.findUnique = "findUnique"), - (k.findUniqueOrThrow = "findUniqueOrThrow"), - (k.findFirst = "findFirst"), - (k.findFirstOrThrow = "findFirstOrThrow"), - (k.findMany = "findMany"), - (k.create = "create"), - (k.createMany = "createMany"), - (k.createManyAndReturn = "createManyAndReturn"), - (k.update = "update"), - (k.updateMany = "updateMany"), - (k.updateManyAndReturn = "updateManyAndReturn"), - (k.upsert = "upsert"), - (k.delete = "delete"), - (k.deleteMany = "deleteMany"), - (k.groupBy = "groupBy"), - (k.count = "count"), - (k.aggregate = "aggregate"), - (k.findRaw = "findRaw"), - (k.aggregateRaw = "aggregateRaw"), - k -))(ct || {}); -var yo = Qe(Gi()); -m(); -c(); -p(); -d(); -f(); -dn(); -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -var mo = { - keyword: Se, - entity: Se, - value: (e) => de(We(e)), - punctuation: We, - directive: Se, - function: Se, - variable: (e) => de(We(e)), - string: (e) => de(Ot(e)), - boolean: kt, - number: Se, - comment: It, -}; -var Gu = (e) => e, - Er = {}, - Wu = 0, - N = { - manual: Er.Prism && Er.Prism.manual, - disableWorkerMessageHandler: - Er.Prism && Er.Prism.disableWorkerMessageHandler, - util: { - encode: function (e) { - if (e instanceof me) { - let t = e; - return new me(t.type, N.util.encode(t.content), t.alias); - } else - return Array.isArray(e) - ? e.map(N.util.encode) - : e - .replace(/&/g, "&") - .replace(/ e.length) return; - if (Ae instanceof me) continue; - if (Y && J != t.length - 1) { - L.lastIndex = ie; - var h = L.exec(e); - if (!h) break; - var g = h.index + (q ? h[1].length : 0), - T = h.index + h[0].length, - a = J, - l = ie; - for ( - let B = t.length; - a < B && (l < T || (!t[a].type && !t[a - 1].greedy)); - ++a - ) - ((l += t[a].length), g >= l && (++J, (ie = l))); - if (t[J] instanceof me) continue; - ((u = a - J), (Ae = e.slice(ie, l)), (h.index -= ie)); - } else { - L.lastIndex = 0; - var h = L.exec(Ae), - u = 1; - } - if (!h) { - if (o) break; - continue; - } - q && (U = h[1] ? h[1].length : 0); - var g = h.index + U, - h = h[0].slice(U), - T = g + h.length, - O = Ae.slice(0, g), - C = Ae.slice(T); - let X = [J, u]; - O && (++J, (ie += O.length), X.push(O)); - let Ze = new me(S, k ? N.tokenize(h, k) : h, At, h, Y); - if ( - (X.push(Ze), - C && X.push(C), - Array.prototype.splice.apply(t, X), - u != 1 && N.matchGrammar(e, t, r, J, ie, !0, S), - o) - ) - break; - } - } - } - }, - tokenize: function (e, t) { - let r = [e], - n = t.rest; - if (n) { - for (let i in n) t[i] = n[i]; - delete t.rest; - } - return (N.matchGrammar(e, r, t, 0, 0, !1), r); - }, - hooks: { - all: {}, - add: function (e, t) { - let r = N.hooks.all; - ((r[e] = r[e] || []), r[e].push(t)); - }, - run: function (e, t) { - let r = N.hooks.all[e]; - if (!(!r || !r.length)) for (var n = 0, i; (i = r[n++]); ) i(t); - }, - }, - Token: me, - }; -N.languages.clike = { - comment: [ - { pattern: /(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/, lookbehind: !0 }, - { pattern: /(^|[^\\:])\/\/.*/, lookbehind: !0, greedy: !0 }, - ], - string: { - pattern: /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/, - greedy: !0, - }, - "class-name": { - pattern: - /((?:\b(?:class|interface|extends|implements|trait|instanceof|new)\s+)|(?:catch\s+\())[\w.\\]+/i, - lookbehind: !0, - inside: { punctuation: /[.\\]/ }, - }, - keyword: - /\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/, - boolean: /\b(?:true|false)\b/, - function: /\w+(?=\()/, - number: /\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i, - operator: /--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&?|\|\|?|\?|\*|\/|~|\^|%/, - punctuation: /[{}[\];(),.:]/, -}; -N.languages.javascript = N.languages.extend("clike", { - "class-name": [ - N.languages.clike["class-name"], - { - pattern: - /(^|[^$\w\xA0-\uFFFF])[_$A-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\.(?:prototype|constructor))/, - lookbehind: !0, - }, - ], - keyword: [ - { pattern: /((?:^|})\s*)(?:catch|finally)\b/, lookbehind: !0 }, - { - pattern: - /(^|[^.])\b(?:as|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/, - lookbehind: !0, - }, - ], - number: - /\b(?:(?:0[xX](?:[\dA-Fa-f](?:_[\dA-Fa-f])?)+|0[bB](?:[01](?:_[01])?)+|0[oO](?:[0-7](?:_[0-7])?)+)n?|(?:\d(?:_\d)?)+n|NaN|Infinity)\b|(?:\b(?:\d(?:_\d)?)+\.?(?:\d(?:_\d)?)*|\B\.(?:\d(?:_\d)?)+)(?:[Ee][+-]?(?:\d(?:_\d)?)+)?/, - function: - /[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/, - operator: - /-[-=]?|\+[+=]?|!=?=?|<>?>?=?|=(?:==?|>)?|&[&=]?|\|[|=]?|\*\*?=?|\/=?|~|\^=?|%=?|\?|\.{3}/, -}); -N.languages.javascript["class-name"][0].pattern = - /(\b(?:class|interface|extends|implements|instanceof|new)\s+)[\w.\\]+/; -N.languages.insertBefore("javascript", "keyword", { - regex: { - pattern: - /((?:^|[^$\w\xA0-\uFFFF."'\])\s])\s*)\/(\[(?:[^\]\\\r\n]|\\.)*]|\\.|[^/\\\[\r\n])+\/[gimyus]{0,6}(?=\s*($|[\r\n,.;})\]]))/, - lookbehind: !0, - greedy: !0, - }, - "function-variable": { - pattern: - /[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)\s*=>))/, - alias: "function", - }, - parameter: [ - { - pattern: - /(function(?:\s+[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)?\s*\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\))/, - lookbehind: !0, - inside: N.languages.javascript, - }, - { - pattern: /[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*=>)/i, - inside: N.languages.javascript, - }, - { - pattern: /(\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*=>)/, - lookbehind: !0, - inside: N.languages.javascript, - }, - { - pattern: - /((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*\s*)\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*\{)/, - lookbehind: !0, - inside: N.languages.javascript, - }, - ], - constant: /\b[A-Z](?:[A-Z_]|\dx?)*\b/, -}); -N.languages.markup && N.languages.markup.tag.addInlined("script", "javascript"); -N.languages.js = N.languages.javascript; -N.languages.typescript = N.languages.extend("javascript", { - keyword: - /\b(?:abstract|as|async|await|break|case|catch|class|const|constructor|continue|debugger|declare|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|is|keyof|let|module|namespace|new|null|of|package|private|protected|public|readonly|return|require|set|static|super|switch|this|throw|try|type|typeof|var|void|while|with|yield)\b/, - builtin: - /\b(?:string|Function|any|number|boolean|Array|symbol|console|Promise|unknown|never)\b/, -}); -N.languages.ts = N.languages.typescript; -function me(e, t, r, n, i) { - ((this.type = e), - (this.content = t), - (this.alias = r), - (this.length = (n || "").length | 0), - (this.greedy = !!i)); -} -me.stringify = function (e, t) { - return typeof e == "string" - ? e - : Array.isArray(e) - ? e - .map(function (r) { - return me.stringify(r, t); - }) - .join("") - : Ku(e.type)(e.content); -}; -function Ku(e) { - return mo[e] || Gu; -} -function go(e) { - return zu(e, N.languages.javascript); -} -function zu(e, t) { - return N.tokenize(e, t) - .map((n) => me.stringify(n)) - .join(""); -} -m(); -c(); -p(); -d(); -f(); -function ho(e) { - return wn(e); -} -var Pr = class e { - firstLineNumber; - lines; - static read(t) { - let r; - try { - r = sr.readFileSync(t, "utf-8"); - } catch { - return null; - } - return e.fromContent(r); - } - static fromContent(t) { - let r = t.split(/\r?\n/); - return new e(1, r); - } - constructor(t, r) { - ((this.firstLineNumber = t), (this.lines = r)); - } - get lastLineNumber() { - return this.firstLineNumber + this.lines.length - 1; - } - mapLineAt(t, r) { - if ( - t < this.firstLineNumber || - t > this.lines.length + this.firstLineNumber - ) - return this; - let n = t - this.firstLineNumber, - i = [...this.lines]; - return ((i[n] = r(i[n])), new e(this.firstLineNumber, i)); - } - mapLines(t) { - return new e( - this.firstLineNumber, - this.lines.map((r, n) => t(r, this.firstLineNumber + n)), - ); - } - lineAt(t) { - return this.lines[t - this.firstLineNumber]; - } - prependSymbolAt(t, r) { - return this.mapLines((n, i) => (i === t ? `${r} ${n}` : ` ${n}`)); - } - slice(t, r) { - let n = this.lines.slice(t - 1, r).join(` -`); - return new e( - t, - ho(n).split(` -`), - ); - } - highlight() { - let t = go(this.toString()); - return new e( - this.firstLineNumber, - t.split(` -`), - ); - } - toString() { - return this.lines.join(` -`); - } -}; -var Hu = { - red: Ge, - gray: It, - dim: St, - bold: de, - underline: Rt, - highlightSource: (e) => e.highlight(), - }, - Yu = { - red: (e) => e, - gray: (e) => e, - dim: (e) => e, - bold: (e) => e, - underline: (e) => e, - highlightSource: (e) => e, - }; -function Zu({ message: e, originalMethod: t, isPanic: r, callArguments: n }) { - return { - functionName: `prisma.${t}()`, - message: e, - isPanic: r ?? !1, - callArguments: n, - }; -} -function Xu( - { callsite: e, message: t, originalMethod: r, isPanic: n, callArguments: i }, - o, -) { - let s = Zu({ message: t, originalMethod: r, isPanic: n, callArguments: i }); - if (!e || typeof window < "u" || y.env.NODE_ENV === "production") return s; - let a = e.getLocation(); - if (!a || !a.lineNumber || !a.columnNumber) return s; - let l = Math.max(1, a.lineNumber - 3), - u = Pr.read(a.fileName)?.slice(l, a.lineNumber), - g = u?.lineAt(a.lineNumber); - if (u && g) { - let h = tc(g), - T = ec(g); - if (!T) return s; - ((s.functionName = `${T.code})`), - (s.location = a), - n || - (u = u.mapLineAt(a.lineNumber, (C) => C.slice(0, T.openingBraceIndex))), - (u = o.highlightSource(u))); - let O = String(u.lastLineNumber).length; - if ( - ((s.contextLines = u - .mapLines((C, S) => o.gray(String(S).padStart(O)) + " " + C) - .mapLines((C) => o.dim(C)) - .prependSymbolAt(a.lineNumber, o.bold(o.red("\u2192")))), - i) - ) { - let C = h + O + 1; - ((C += 2), (s.callArguments = (0, yo.default)(i, C).slice(C))); - } - } - return s; -} -function ec(e) { - let t = Object.keys(ct).join("|"), - n = new RegExp(String.raw`\.(${t})\(`).exec(e); - if (n) { - let i = n.index + n[0].length, - o = e.lastIndexOf(" ", n.index) + 1; - return { code: e.slice(o, i), openingBraceIndex: i }; - } - return null; -} -function tc(e) { - let t = 0; - for (let r = 0; r < e.length; r++) { - if (e.charAt(r) !== " ") return t; - t++; - } - return t; -} -function rc( - { - functionName: e, - location: t, - message: r, - isPanic: n, - contextLines: i, - callArguments: o, - }, - s, -) { - let a = [""], - l = t ? " in" : ":"; - if ( - (n - ? (a.push( - s.red( - `Oops, an unknown error occurred! This is ${s.bold("on us")}, you did nothing wrong.`, - ), - ), - a.push( - s.red(`It occurred in the ${s.bold(`\`${e}\``)} invocation${l}`), - )) - : a.push(s.red(`Invalid ${s.bold(`\`${e}\``)} invocation${l}`)), - t && a.push(s.underline(nc(t))), - i) - ) { - a.push(""); - let u = [i.toString()]; - (o && (u.push(o), u.push(s.dim(")"))), a.push(u.join("")), o && a.push("")); - } else (a.push(""), o && a.push(o), a.push("")); - return ( - a.push(r), - a.join(` -`) - ); -} -function nc(e) { - let t = [e.fileName]; - return ( - e.lineNumber && t.push(String(e.lineNumber)), - e.columnNumber && t.push(String(e.columnNumber)), - t.join(":") - ); -} -function vr(e) { - let t = e.showColors ? Hu : Yu, - r; - return ((r = Xu(e, t)), rc(r, t)); -} -m(); -c(); -p(); -d(); -f(); -var Co = Qe(In()); -m(); -c(); -p(); -d(); -f(); -function Eo(e, t, r) { - let n = Po(e), - i = ic(n), - o = sc(i); - o ? Tr(o, t, r) : t.addErrorMessage(() => "Unknown error"); -} -function Po(e) { - return e.errors.flatMap((t) => (t.kind === "Union" ? Po(t) : [t])); -} -function ic(e) { - let t = new Map(), - r = []; - for (let n of e) { - if (n.kind !== "InvalidArgumentType") { - r.push(n); - continue; - } - let i = `${n.selectionPath.join(".")}:${n.argumentPath.join(".")}`, - o = t.get(i); - o - ? t.set(i, { - ...n, - argument: { - ...n.argument, - typeNames: oc(o.argument.typeNames, n.argument.typeNames), - }, - }) - : t.set(i, n); - } - return (r.push(...t.values()), r); -} -function oc(e, t) { - return [...new Set(e.concat(t))]; -} -function sc(e) { - return Tn(e, (t, r) => { - let n = bo(t), - i = bo(r); - return n !== i ? n - i : xo(t) - xo(r); - }); -} -function bo(e) { - let t = 0; - return ( - Array.isArray(e.selectionPath) && (t += e.selectionPath.length), - Array.isArray(e.argumentPath) && (t += e.argumentPath.length), - t - ); -} -function xo(e) { - switch (e.kind) { - case "InvalidArgumentValue": - case "ValueTooLarge": - return 20; - case "InvalidArgumentType": - return 10; - case "RequiredArgumentMissing": - return -10; - default: - return 0; - } -} -m(); -c(); -p(); -d(); -f(); -var pe = class { - constructor(t, r) { - this.name = t; - this.value = r; - } - isRequired = !1; - makeRequired() { - return ((this.isRequired = !0), this); - } - write(t) { - let { - colors: { green: r }, - } = t.context; - (t.addMarginSymbol(r(this.isRequired ? "+" : "?")), - t.write(r(this.name)), - this.isRequired || t.write(r("?")), - t.write(r(": ")), - typeof this.value == "string" - ? t.write(r(this.value)) - : t.write(this.value)); - } -}; -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -To(); -m(); -c(); -p(); -d(); -f(); -var pt = class { - constructor(t = 0, r) { - this.context = r; - this.currentIndent = t; - } - lines = []; - currentLine = ""; - currentIndent = 0; - marginSymbol; - afterNextNewLineCallback; - write(t) { - return ( - typeof t == "string" ? (this.currentLine += t) : t.write(this), - this - ); - } - writeJoined(t, r, n = (i, o) => o.write(i)) { - let i = r.length - 1; - for (let o = 0; o < r.length; o++) - (n(r[o], this), o !== i && this.write(t)); - return this; - } - writeLine(t) { - return this.write(t).newLine(); - } - newLine() { - (this.lines.push(this.indentedCurrentLine()), - (this.currentLine = ""), - (this.marginSymbol = void 0)); - let t = this.afterNextNewLineCallback; - return ((this.afterNextNewLineCallback = void 0), t?.(), this); - } - withIndent(t) { - return (this.indent(), t(this), this.unindent(), this); - } - afterNextNewline(t) { - return ((this.afterNextNewLineCallback = t), this); - } - indent() { - return (this.currentIndent++, this); - } - unindent() { - return (this.currentIndent > 0 && this.currentIndent--, this); - } - addMarginSymbol(t) { - return ((this.marginSymbol = t), this); - } - toString() { - return this.lines.concat(this.indentedCurrentLine()).join(` -`); - } - getCurrentLineLength() { - return this.currentLine.length; - } - indentedCurrentLine() { - let t = this.currentLine.padStart( - this.currentLine.length + 2 * this.currentIndent, - ); - return this.marginSymbol ? this.marginSymbol + t.slice(1) : t; - } -}; -vo(); -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -var Ar = class { - constructor(t) { - this.value = t; - } - write(t) { - t.write(this.value); - } - markAsError() { - this.value.markAsError(); - } -}; -m(); -c(); -p(); -d(); -f(); -var Cr = (e) => e, - Sr = { bold: Cr, red: Cr, green: Cr, dim: Cr, enabled: !1 }, - Ao = { bold: de, red: Ge, green: Ot, dim: St, enabled: !0 }, - dt = { - write(e) { - e.writeLine(","); - }, - }; -m(); -c(); -p(); -d(); -f(); -var Ee = class { - constructor(t) { - this.contents = t; - } - isUnderlined = !1; - color = (t) => t; - underline() { - return ((this.isUnderlined = !0), this); - } - setColor(t) { - return ((this.color = t), this); - } - write(t) { - let r = t.getCurrentLineLength(); - (t.write(this.color(this.contents)), - this.isUnderlined && - t.afterNextNewline(() => { - t.write(" ".repeat(r)).writeLine( - this.color("~".repeat(this.contents.length)), - ); - })); - } -}; -m(); -c(); -p(); -d(); -f(); -var je = class { - hasError = !1; - markAsError() { - return ((this.hasError = !0), this); - } -}; -var ft = class extends je { - items = []; - addItem(t) { - return (this.items.push(new Ar(t)), this); - } - getField(t) { - return this.items[t]; - } - getPrintWidth() { - return this.items.length === 0 - ? 2 - : Math.max(...this.items.map((r) => r.value.getPrintWidth())) + 2; - } - write(t) { - if (this.items.length === 0) { - this.writeEmpty(t); - return; - } - this.writeWithItems(t); - } - writeEmpty(t) { - let r = new Ee("[]"); - (this.hasError && r.setColor(t.context.colors.red).underline(), t.write(r)); - } - writeWithItems(t) { - let { colors: r } = t.context; - (t - .writeLine("[") - .withIndent(() => t.writeJoined(dt, this.items).newLine()) - .write("]"), - this.hasError && - t.afterNextNewline(() => { - t.writeLine(r.red("~".repeat(this.getPrintWidth()))); - })); - } - asObject() {} -}; -var mt = class e extends je { - fields = {}; - suggestions = []; - addField(t) { - this.fields[t.name] = t; - } - addSuggestion(t) { - this.suggestions.push(t); - } - getField(t) { - return this.fields[t]; - } - getDeepField(t) { - let [r, ...n] = t, - i = this.getField(r); - if (!i) return; - let o = i; - for (let s of n) { - let a; - if ( - (o.value instanceof e - ? (a = o.value.getField(s)) - : o.value instanceof ft && (a = o.value.getField(Number(s))), - !a) - ) - return; - o = a; - } - return o; - } - getDeepFieldValue(t) { - return t.length === 0 ? this : this.getDeepField(t)?.value; - } - hasField(t) { - return !!this.getField(t); - } - removeAllFields() { - this.fields = {}; - } - removeField(t) { - delete this.fields[t]; - } - getFields() { - return this.fields; - } - isEmpty() { - return Object.keys(this.fields).length === 0; - } - getFieldValue(t) { - return this.getField(t)?.value; - } - getDeepSubSelectionValue(t) { - let r = this; - for (let n of t) { - if (!(r instanceof e)) return; - let i = r.getSubSelectionValue(n); - if (!i) return; - r = i; - } - return r; - } - getDeepSelectionParent(t) { - let r = this.getSelectionParent(); - if (!r) return; - let n = r; - for (let i of t) { - let o = n.value.getFieldValue(i); - if (!o || !(o instanceof e)) return; - let s = o.getSelectionParent(); - if (!s) return; - n = s; - } - return n; - } - getSelectionParent() { - let t = this.getField("select")?.value.asObject(); - if (t) return { kind: "select", value: t }; - let r = this.getField("include")?.value.asObject(); - if (r) return { kind: "include", value: r }; - } - getSubSelectionValue(t) { - return this.getSelectionParent()?.value.fields[t].value; - } - getPrintWidth() { - let t = Object.values(this.fields); - return t.length == 0 ? 2 : Math.max(...t.map((n) => n.getPrintWidth())) + 2; - } - write(t) { - let r = Object.values(this.fields); - if (r.length === 0 && this.suggestions.length === 0) { - this.writeEmpty(t); - return; - } - this.writeWithContents(t, r); - } - asObject() { - return this; - } - writeEmpty(t) { - let r = new Ee("{}"); - (this.hasError && r.setColor(t.context.colors.red).underline(), t.write(r)); - } - writeWithContents(t, r) { - (t.writeLine("{").withIndent(() => { - t.writeJoined(dt, [...r, ...this.suggestions]).newLine(); - }), - t.write("}"), - this.hasError && - t.afterNextNewline(() => { - t.writeLine(t.context.colors.red("~".repeat(this.getPrintWidth()))); - })); - } -}; -m(); -c(); -p(); -d(); -f(); -var H = class extends je { - constructor(r) { - super(); - this.text = r; - } - getPrintWidth() { - return this.text.length; - } - write(r) { - let n = new Ee(this.text); - (this.hasError && n.underline().setColor(r.context.colors.red), r.write(n)); - } - asObject() {} -}; -m(); -c(); -p(); -d(); -f(); -var jt = class { - fields = []; - addField(t, r) { - return ( - this.fields.push({ - write(n) { - let { green: i, dim: o } = n.context.colors; - n.write(i(o(`${t}: ${r}`))).addMarginSymbol(i(o("+"))); - }, - }), - this - ); - } - write(t) { - let { - colors: { green: r }, - } = t.context; - t.writeLine(r("{")) - .withIndent(() => { - t.writeJoined(dt, this.fields).newLine(); - }) - .write(r("}")) - .addMarginSymbol(r("+")); - } -}; -function Tr(e, t, r) { - switch (e.kind) { - case "MutuallyExclusiveFields": - ac(e, t); - break; - case "IncludeOnScalar": - lc(e, t); - break; - case "EmptySelection": - uc(e, t, r); - break; - case "UnknownSelectionField": - fc(e, t); - break; - case "InvalidSelectionValue": - mc(e, t); - break; - case "UnknownArgument": - gc(e, t); - break; - case "UnknownInputField": - hc(e, t); - break; - case "RequiredArgumentMissing": - yc(e, t); - break; - case "InvalidArgumentType": - wc(e, t); - break; - case "InvalidArgumentValue": - bc(e, t); - break; - case "ValueTooLarge": - xc(e, t); - break; - case "SomeFieldsMissing": - Ec(e, t); - break; - case "TooManyFieldsGiven": - Pc(e, t); - break; - case "Union": - Eo(e, t, r); - break; - default: - throw new Error("not implemented: " + e.kind); - } -} -function ac(e, t) { - let r = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - (r && - (r.getField(e.firstField)?.markAsError(), - r.getField(e.secondField)?.markAsError()), - t.addErrorMessage( - (n) => - `Please ${n.bold("either")} use ${n.green(`\`${e.firstField}\``)} or ${n.green(`\`${e.secondField}\``)}, but ${n.red("not both")} at the same time.`, - )); -} -function lc(e, t) { - let [r, n] = gt(e.selectionPath), - i = e.outputType, - o = t.arguments.getDeepSelectionParent(r)?.value; - if (o && (o.getField(n)?.markAsError(), i)) - for (let s of i.fields) - s.isRelation && o.addSuggestion(new pe(s.name, "true")); - t.addErrorMessage((s) => { - let a = `Invalid scalar field ${s.red(`\`${n}\``)} for ${s.bold("include")} statement`; - return ( - i ? (a += ` on model ${s.bold(i.name)}. ${$t(s)}`) : (a += "."), - (a += ` -Note that ${s.bold("include")} statements only accept relation fields.`), - a - ); - }); -} -function uc(e, t, r) { - let n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - if (n) { - let i = n.getField("omit")?.value.asObject(); - if (i) { - cc(e, t, i); - return; - } - if (n.hasField("select")) { - pc(e, t); - return; - } - } - if (r?.[De(e.outputType.name)]) { - dc(e, t); - return; - } - t.addErrorMessage( - () => `Unknown field at "${e.selectionPath.join(".")} selection"`, - ); -} -function cc(e, t, r) { - r.removeAllFields(); - for (let n of e.outputType.fields) r.addSuggestion(new pe(n.name, "false")); - t.addErrorMessage( - (n) => - `The ${n.red("omit")} statement includes every field of the model ${n.bold(e.outputType.name)}. At least one field must be included in the result`, - ); -} -function pc(e, t) { - let r = e.outputType, - n = t.arguments.getDeepSelectionParent(e.selectionPath)?.value, - i = n?.isEmpty() ?? !1; - (n && (n.removeAllFields(), Oo(n, r)), - t.addErrorMessage((o) => - i - ? `The ${o.red("`select`")} statement for type ${o.bold(r.name)} must not be empty. ${$t(o)}` - : `The ${o.red("`select`")} statement for type ${o.bold(r.name)} needs ${o.bold("at least one truthy value")}.`, - )); -} -function dc(e, t) { - let r = new jt(); - for (let i of e.outputType.fields) - i.isRelation || r.addField(i.name, "false"); - let n = new pe("omit", r).makeRequired(); - if (e.selectionPath.length === 0) t.arguments.addSuggestion(n); - else { - let [i, o] = gt(e.selectionPath), - a = t.arguments.getDeepSelectionParent(i)?.value.asObject()?.getField(o); - if (a) { - let l = a?.value.asObject() ?? new mt(); - (l.addSuggestion(n), (a.value = l)); - } - } - t.addErrorMessage( - (i) => - `The global ${i.red("omit")} configuration excludes every field of the model ${i.bold(e.outputType.name)}. At least one field must be included in the result`, - ); -} -function fc(e, t) { - let r = ko(e.selectionPath, t); - if (r.parentKind !== "unknown") { - r.field.markAsError(); - let n = r.parent; - switch (r.parentKind) { - case "select": - Oo(n, e.outputType); - break; - case "include": - vc(n, e.outputType); - break; - case "omit": - Tc(n, e.outputType); - break; - } - } - t.addErrorMessage((n) => { - let i = [`Unknown field ${n.red(`\`${r.fieldName}\``)}`]; - return ( - r.parentKind !== "unknown" && - i.push(`for ${n.bold(r.parentKind)} statement`), - i.push(`on model ${n.bold(`\`${e.outputType.name}\``)}.`), - i.push($t(n)), - i.join(" ") - ); - }); -} -function mc(e, t) { - let r = ko(e.selectionPath, t); - (r.parentKind !== "unknown" && r.field.value.markAsError(), - t.addErrorMessage( - (n) => - `Invalid value for selection field \`${n.red(r.fieldName)}\`: ${e.underlyingError}`, - )); -} -function gc(e, t) { - let r = e.argumentPath[0], - n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - (n && (n.getField(r)?.markAsError(), Ac(n, e.arguments)), - t.addErrorMessage((i) => - So( - i, - r, - e.arguments.map((o) => o.name), - ), - )); -} -function hc(e, t) { - let [r, n] = gt(e.argumentPath), - i = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - if (i) { - i.getDeepField(e.argumentPath)?.markAsError(); - let o = i.getDeepFieldValue(r)?.asObject(); - o && Io(o, e.inputType); - } - t.addErrorMessage((o) => - So( - o, - n, - e.inputType.fields.map((s) => s.name), - ), - ); -} -function So(e, t, r) { - let n = [`Unknown argument \`${e.red(t)}\`.`], - i = Sc(t, r); - return ( - i && n.push(`Did you mean \`${e.green(i)}\`?`), - r.length > 0 && n.push($t(e)), - n.join(" ") - ); -} -function yc(e, t) { - let r; - t.addErrorMessage((l) => - r?.value instanceof H && r.value.text === "null" - ? `Argument \`${l.green(o)}\` must not be ${l.red("null")}.` - : `Argument \`${l.green(o)}\` is missing.`, - ); - let n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - if (!n) return; - let [i, o] = gt(e.argumentPath), - s = new jt(), - a = n.getDeepFieldValue(i)?.asObject(); - if (a) { - if ( - ((r = a.getField(o)), - r && a.removeField(o), - e.inputTypes.length === 1 && e.inputTypes[0].kind === "object") - ) { - for (let l of e.inputTypes[0].fields) - s.addField(l.name, l.typeNames.join(" | ")); - a.addSuggestion(new pe(o, s).makeRequired()); - } else { - let l = e.inputTypes.map(Ro).join(" | "); - a.addSuggestion(new pe(o, l).makeRequired()); - } - if (e.dependentArgumentPath) { - n.getDeepField(e.dependentArgumentPath)?.markAsError(); - let [, l] = gt(e.dependentArgumentPath); - t.addErrorMessage( - (u) => - `Argument \`${u.green(o)}\` is required because argument \`${u.green(l)}\` was provided.`, - ); - } - } -} -function Ro(e) { - return e.kind === "list" ? `${Ro(e.elementType)}[]` : e.name; -} -function wc(e, t) { - let r = e.argument.name, - n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - (n && n.getDeepFieldValue(e.argumentPath)?.markAsError(), - t.addErrorMessage((i) => { - let o = Rr( - "or", - e.argument.typeNames.map((s) => i.green(s)), - ); - return `Argument \`${i.bold(r)}\`: Invalid value provided. Expected ${o}, provided ${i.red(e.inferredType)}.`; - })); -} -function bc(e, t) { - let r = e.argument.name, - n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - (n && n.getDeepFieldValue(e.argumentPath)?.markAsError(), - t.addErrorMessage((i) => { - let o = [`Invalid value for argument \`${i.bold(r)}\``]; - if ( - (e.underlyingError && o.push(`: ${e.underlyingError}`), - o.push("."), - e.argument.typeNames.length > 0) - ) { - let s = Rr( - "or", - e.argument.typeNames.map((a) => i.green(a)), - ); - o.push(` Expected ${s}.`); - } - return o.join(""); - })); -} -function xc(e, t) { - let r = e.argument.name, - n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(), - i; - if (n) { - let s = n.getDeepField(e.argumentPath)?.value; - (s?.markAsError(), s instanceof H && (i = s.text)); - } - t.addErrorMessage((o) => { - let s = ["Unable to fit value"]; - return ( - i && s.push(o.red(i)), - s.push(`into a 64-bit signed integer for field \`${o.bold(r)}\``), - s.join(" ") - ); - }); -} -function Ec(e, t) { - let r = e.argumentPath[e.argumentPath.length - 1], - n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - if (n) { - let i = n.getDeepFieldValue(e.argumentPath)?.asObject(); - i && Io(i, e.inputType); - } - t.addErrorMessage((i) => { - let o = [ - `Argument \`${i.bold(r)}\` of type ${i.bold(e.inputType.name)} needs`, - ]; - return ( - e.constraints.minFieldCount === 1 - ? e.constraints.requiredFields - ? o.push( - `${i.green("at least one of")} ${Rr( - "or", - e.constraints.requiredFields.map((s) => `\`${i.bold(s)}\``), - )} arguments.`, - ) - : o.push(`${i.green("at least one")} argument.`) - : o.push( - `${i.green(`at least ${e.constraints.minFieldCount}`)} arguments.`, - ), - o.push($t(i)), - o.join(" ") - ); - }); -} -function Pc(e, t) { - let r = e.argumentPath[e.argumentPath.length - 1], - n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(), - i = []; - if (n) { - let o = n.getDeepFieldValue(e.argumentPath)?.asObject(); - o && (o.markAsError(), (i = Object.keys(o.getFields()))); - } - t.addErrorMessage((o) => { - let s = [ - `Argument \`${o.bold(r)}\` of type ${o.bold(e.inputType.name)} needs`, - ]; - return ( - e.constraints.minFieldCount === 1 && e.constraints.maxFieldCount == 1 - ? s.push(`${o.green("exactly one")} argument,`) - : e.constraints.maxFieldCount == 1 - ? s.push(`${o.green("at most one")} argument,`) - : s.push( - `${o.green(`at most ${e.constraints.maxFieldCount}`)} arguments,`, - ), - s.push( - `but you provided ${Rr( - "and", - i.map((a) => o.red(a)), - )}. Please choose`, - ), - e.constraints.maxFieldCount === 1 - ? s.push("one.") - : s.push(`${e.constraints.maxFieldCount}.`), - s.join(" ") - ); - }); -} -function Oo(e, t) { - for (let r of t.fields) - e.hasField(r.name) || e.addSuggestion(new pe(r.name, "true")); -} -function vc(e, t) { - for (let r of t.fields) - r.isRelation && - !e.hasField(r.name) && - e.addSuggestion(new pe(r.name, "true")); -} -function Tc(e, t) { - for (let r of t.fields) - !e.hasField(r.name) && - !r.isRelation && - e.addSuggestion(new pe(r.name, "true")); -} -function Ac(e, t) { - for (let r of t) - e.hasField(r.name) || - e.addSuggestion(new pe(r.name, r.typeNames.join(" | "))); -} -function ko(e, t) { - let [r, n] = gt(e), - i = t.arguments.getDeepSubSelectionValue(r)?.asObject(); - if (!i) return { parentKind: "unknown", fieldName: n }; - let o = i.getFieldValue("select")?.asObject(), - s = i.getFieldValue("include")?.asObject(), - a = i.getFieldValue("omit")?.asObject(), - l = o?.getField(n); - return o && l - ? { parentKind: "select", parent: o, field: l, fieldName: n } - : ((l = s?.getField(n)), - s && l - ? { parentKind: "include", field: l, parent: s, fieldName: n } - : ((l = a?.getField(n)), - a && l - ? { parentKind: "omit", field: l, parent: a, fieldName: n } - : { parentKind: "unknown", fieldName: n })); -} -function Io(e, t) { - if (t.kind === "object") - for (let r of t.fields) - e.hasField(r.name) || - e.addSuggestion(new pe(r.name, r.typeNames.join(" | "))); -} -function gt(e) { - let t = [...e], - r = t.pop(); - if (!r) throw new Error("unexpected empty path"); - return [t, r]; -} -function $t({ green: e, enabled: t }) { - return ( - "Available options are " + - (t ? `listed in ${e("green")}` : "marked with ?") + - "." - ); -} -function Rr(e, t) { - if (t.length === 1) return t[0]; - let r = [...t], - n = r.pop(); - return `${r.join(", ")} ${e} ${n}`; -} -var Cc = 3; -function Sc(e, t) { - let r = 1 / 0, - n; - for (let i of t) { - let o = (0, Co.default)(e, i); - o > Cc || (o < r && ((r = o), (n = i))); - } - return n; -} -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -var Ut = class { - modelName; - name; - typeName; - isList; - isEnum; - constructor(t, r, n, i, o) { - ((this.modelName = t), - (this.name = r), - (this.typeName = n), - (this.isList = i), - (this.isEnum = o)); - } - _toGraphQLInputType() { - let t = this.isList ? "List" : "", - r = this.isEnum ? "Enum" : ""; - return `${t}${r}${this.typeName}FieldRefInput<${this.modelName}>`; - } -}; -function ht(e) { - return e instanceof Ut; -} -m(); -c(); -p(); -d(); -f(); -var Or = Symbol(), - Mn = new WeakMap(), - Me = class { - constructor(t) { - t === Or - ? Mn.set(this, `Prisma.${this._getName()}`) - : Mn.set( - this, - `new Prisma.${this._getNamespace()}.${this._getName()}()`, - ); - } - _getName() { - return this.constructor.name; - } - toString() { - return Mn.get(this); - } - }, - Vt = class extends Me { - _getNamespace() { - return "NullTypes"; - } - }, - Qt = class extends Vt { - #e; - }; -_n(Qt, "DbNull"); -var Jt = class extends Vt { - #e; -}; -_n(Jt, "JsonNull"); -var Gt = class extends Vt { - #e; -}; -_n(Gt, "AnyNull"); -var kr = { - classes: { DbNull: Qt, JsonNull: Jt, AnyNull: Gt }, - instances: { DbNull: new Qt(Or), JsonNull: new Jt(Or), AnyNull: new Gt(Or) }, -}; -function _n(e, t) { - Object.defineProperty(e, "name", { value: t, configurable: !0 }); -} -m(); -c(); -p(); -d(); -f(); -var Fo = ": ", - Ir = class { - constructor(t, r) { - this.name = t; - this.value = r; - } - hasError = !1; - markAsError() { - this.hasError = !0; - } - getPrintWidth() { - return this.name.length + this.value.getPrintWidth() + Fo.length; - } - write(t) { - let r = new Ee(this.name); - (this.hasError && r.underline().setColor(t.context.colors.red), - t.write(r).write(Fo).write(this.value)); - } - }; -var Dn = class { - arguments; - errorMessages = []; - constructor(t) { - this.arguments = t; - } - write(t) { - t.write(this.arguments); - } - addErrorMessage(t) { - this.errorMessages.push(t); - } - renderAllMessages(t) { - return this.errorMessages.map((r) => r(t)).join(` -`); - } -}; -function yt(e) { - return new Dn(Mo(e)); -} -function Mo(e) { - let t = new mt(); - for (let [r, n] of Object.entries(e)) { - let i = new Ir(r, _o(n)); - t.addField(i); - } - return t; -} -function _o(e) { - if (typeof e == "string") return new H(JSON.stringify(e)); - if (typeof e == "number" || typeof e == "boolean") return new H(String(e)); - if (typeof e == "bigint") return new H(`${e}n`); - if (e === null) return new H("null"); - if (e === void 0) return new H("undefined"); - if (ut(e)) return new H(`new Prisma.Decimal("${e.toFixed()}")`); - if (e instanceof Uint8Array) - return w.Buffer.isBuffer(e) - ? new H(`Buffer.alloc(${e.byteLength})`) - : new H(`new Uint8Array(${e.byteLength})`); - if (e instanceof Date) { - let t = dr(e) ? e.toISOString() : "Invalid Date"; - return new H(`new Date("${t}")`); - } - return e instanceof Me - ? new H(`Prisma.${e._getName()}`) - : ht(e) - ? new H(`prisma.${De(e.modelName)}.$fields.${e.name}`) - : Array.isArray(e) - ? Rc(e) - : typeof e == "object" - ? Mo(e) - : new H(Object.prototype.toString.call(e)); -} -function Rc(e) { - let t = new ft(); - for (let r of e) t.addItem(_o(r)); - return t; -} -function Fr(e, t) { - let r = t === "pretty" ? Ao : Sr, - n = e.renderAllMessages(r), - i = new pt(0, { colors: r }).write(e).toString(); - return { message: n, args: i }; -} -function Mr({ - args: e, - errors: t, - errorFormat: r, - callsite: n, - originalMethod: i, - clientVersion: o, - globalOmit: s, -}) { - let a = yt(e); - for (let h of t) Tr(h, a, s); - let { message: l, args: u } = Fr(a, r), - g = vr({ - message: l, - callsite: n, - originalMethod: i, - showColors: r === "pretty", - callArguments: u, - }); - throw new te(g, { clientVersion: o }); -} -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -function Pe(e) { - return e.replace(/^./, (t) => t.toLowerCase()); -} -m(); -c(); -p(); -d(); -f(); -function Lo(e, t, r) { - let n = Pe(r); - return !t.result || !(t.result.$allModels || t.result[n]) - ? e - : Oc({ - ...e, - ...Do(t.name, e, t.result.$allModels), - ...Do(t.name, e, t.result[n]), - }); -} -function Oc(e) { - let t = new we(), - r = (n, i) => - t.getOrCreate(n, () => - i.has(n) - ? [n] - : (i.add(n), e[n] ? e[n].needs.flatMap((o) => r(o, i)) : [n]), - ); - return pr(e, (n) => ({ ...n, needs: r(n.name, new Set()) })); -} -function Do(e, t, r) { - return r - ? pr(r, ({ needs: n, compute: i }, o) => ({ - name: o, - needs: n ? Object.keys(n).filter((s) => n[s]) : [], - compute: kc(t, o, i), - })) - : {}; -} -function kc(e, t, r) { - let n = e?.[t]?.compute; - return n ? (i) => r({ ...i, [t]: n(i) }) : r; -} -function No(e, t) { - if (!t) return e; - let r = { ...e }; - for (let n of Object.values(t)) - if (e[n.name]) for (let i of n.needs) r[i] = !0; - return r; -} -function qo(e, t) { - if (!t) return e; - let r = { ...e }; - for (let n of Object.values(t)) - if (!e[n.name]) for (let i of n.needs) delete r[i]; - return r; -} -var _r = class { - constructor(t, r) { - this.extension = t; - this.previous = r; - } - computedFieldsCache = new we(); - modelExtensionsCache = new we(); - queryCallbacksCache = new we(); - clientExtensions = Nt(() => - this.extension.client - ? { - ...this.previous?.getAllClientExtensions(), - ...this.extension.client, - } - : this.previous?.getAllClientExtensions(), - ); - batchCallbacks = Nt(() => { - let t = this.previous?.getAllBatchQueryCallbacks() ?? [], - r = this.extension.query?.$__internalBatch; - return r ? t.concat(r) : t; - }); - getAllComputedFields(t) { - return this.computedFieldsCache.getOrCreate(t, () => - Lo(this.previous?.getAllComputedFields(t), this.extension, t), - ); - } - getAllClientExtensions() { - return this.clientExtensions.get(); - } - getAllModelExtensions(t) { - return this.modelExtensionsCache.getOrCreate(t, () => { - let r = Pe(t); - return !this.extension.model || - !(this.extension.model[r] || this.extension.model.$allModels) - ? this.previous?.getAllModelExtensions(t) - : { - ...this.previous?.getAllModelExtensions(t), - ...this.extension.model.$allModels, - ...this.extension.model[r], - }; - }); - } - getAllQueryCallbacks(t, r) { - return this.queryCallbacksCache.getOrCreate(`${t}:${r}`, () => { - let n = this.previous?.getAllQueryCallbacks(t, r) ?? [], - i = [], - o = this.extension.query; - return !o || !(o[t] || o.$allModels || o[r] || o.$allOperations) - ? n - : (o[t] !== void 0 && - (o[t][r] !== void 0 && i.push(o[t][r]), - o[t].$allOperations !== void 0 && i.push(o[t].$allOperations)), - t !== "$none" && - o.$allModels !== void 0 && - (o.$allModels[r] !== void 0 && i.push(o.$allModels[r]), - o.$allModels.$allOperations !== void 0 && - i.push(o.$allModels.$allOperations)), - o[r] !== void 0 && i.push(o[r]), - o.$allOperations !== void 0 && i.push(o.$allOperations), - n.concat(i)); - }); - } - getAllBatchQueryCallbacks() { - return this.batchCallbacks.get(); - } - }, - wt = class e { - constructor(t) { - this.head = t; - } - static empty() { - return new e(); - } - static single(t) { - return new e(new _r(t)); - } - isEmpty() { - return this.head === void 0; - } - append(t) { - return new e(new _r(t, this.head)); - } - getAllComputedFields(t) { - return this.head?.getAllComputedFields(t); - } - getAllClientExtensions() { - return this.head?.getAllClientExtensions(); - } - getAllModelExtensions(t) { - return this.head?.getAllModelExtensions(t); - } - getAllQueryCallbacks(t, r) { - return this.head?.getAllQueryCallbacks(t, r) ?? []; - } - getAllBatchQueryCallbacks() { - return this.head?.getAllBatchQueryCallbacks() ?? []; - } - }; -m(); -c(); -p(); -d(); -f(); -var Dr = class { - constructor(t) { - this.name = t; - } -}; -function Bo(e) { - return e instanceof Dr; -} -function jo(e) { - return new Dr(e); -} -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -var $o = Symbol(), - Wt = class { - constructor(t) { - if (t !== $o) - throw new Error("Skip instance can not be constructed directly"); - } - ifUndefined(t) { - return t === void 0 ? Lr : t; - } - }, - Lr = new Wt($o); -function ve(e) { - return e instanceof Wt; -} -var Ic = { - findUnique: "findUnique", - findUniqueOrThrow: "findUniqueOrThrow", - findFirst: "findFirst", - findFirstOrThrow: "findFirstOrThrow", - findMany: "findMany", - count: "aggregate", - create: "createOne", - createMany: "createMany", - createManyAndReturn: "createManyAndReturn", - update: "updateOne", - updateMany: "updateMany", - updateManyAndReturn: "updateManyAndReturn", - upsert: "upsertOne", - delete: "deleteOne", - deleteMany: "deleteMany", - executeRaw: "executeRaw", - queryRaw: "queryRaw", - aggregate: "aggregate", - groupBy: "groupBy", - runCommandRaw: "runCommandRaw", - findRaw: "findRaw", - aggregateRaw: "aggregateRaw", - }, - Uo = "explicitly `undefined` values are not allowed"; -function Nr({ - modelName: e, - action: t, - args: r, - runtimeDataModel: n, - extensions: i = wt.empty(), - callsite: o, - clientMethod: s, - errorFormat: a, - clientVersion: l, - previewFeatures: u, - globalOmit: g, -}) { - let h = new Ln({ - runtimeDataModel: n, - modelName: e, - action: t, - rootArgs: r, - callsite: o, - extensions: i, - selectionPath: [], - argumentPath: [], - originalMethod: s, - errorFormat: a, - clientVersion: l, - previewFeatures: u, - globalOmit: g, - }); - return { modelName: e, action: Ic[t], query: Kt(r, h) }; -} -function Kt({ select: e, include: t, ...r } = {}, n) { - let i = r.omit; - return (delete r.omit, { arguments: Qo(r, n), selection: Fc(e, t, i, n) }); -} -function Fc(e, t, r, n) { - return e - ? (t - ? n.throwValidationError({ - kind: "MutuallyExclusiveFields", - firstField: "include", - secondField: "select", - selectionPath: n.getSelectionPath(), - }) - : r && - n.throwValidationError({ - kind: "MutuallyExclusiveFields", - firstField: "omit", - secondField: "select", - selectionPath: n.getSelectionPath(), - }), - Lc(e, n)) - : Mc(n, t, r); -} -function Mc(e, t, r) { - let n = {}; - return ( - e.modelOrType && - !e.isRawAction() && - ((n.$composites = !0), (n.$scalars = !0)), - t && _c(n, t, e), - Dc(n, r, e), - n - ); -} -function _c(e, t, r) { - for (let [n, i] of Object.entries(t)) { - if (ve(i)) continue; - let o = r.nestSelection(n); - if ((Nn(i, o), i === !1 || i === void 0)) { - e[n] = !1; - continue; - } - let s = r.findField(n); - if ( - (s && - s.kind !== "object" && - r.throwValidationError({ - kind: "IncludeOnScalar", - selectionPath: r.getSelectionPath().concat(n), - outputType: r.getOutputTypeDescription(), - }), - s) - ) { - e[n] = Kt(i === !0 ? {} : i, o); - continue; - } - if (i === !0) { - e[n] = !0; - continue; - } - e[n] = Kt(i, o); - } -} -function Dc(e, t, r) { - let n = r.getComputedFields(), - i = { ...r.getGlobalOmit(), ...t }, - o = qo(i, n); - for (let [s, a] of Object.entries(o)) { - if (ve(a)) continue; - Nn(a, r.nestSelection(s)); - let l = r.findField(s); - (n?.[s] && !l) || (e[s] = !a); - } -} -function Lc(e, t) { - let r = {}, - n = t.getComputedFields(), - i = No(e, n); - for (let [o, s] of Object.entries(i)) { - if (ve(s)) continue; - let a = t.nestSelection(o); - Nn(s, a); - let l = t.findField(o); - if (!(n?.[o] && !l)) { - if (s === !1 || s === void 0 || ve(s)) { - r[o] = !1; - continue; - } - if (s === !0) { - l?.kind === "object" ? (r[o] = Kt({}, a)) : (r[o] = !0); - continue; - } - r[o] = Kt(s, a); - } - } - return r; -} -function Vo(e, t) { - if (e === null) return null; - if (typeof e == "string" || typeof e == "number" || typeof e == "boolean") - return e; - if (typeof e == "bigint") return { $type: "BigInt", value: String(e) }; - if (st(e)) { - if (dr(e)) return { $type: "DateTime", value: e.toISOString() }; - t.throwValidationError({ - kind: "InvalidArgumentValue", - selectionPath: t.getSelectionPath(), - argumentPath: t.getArgumentPath(), - argument: { name: t.getArgumentName(), typeNames: ["Date"] }, - underlyingError: "Provided Date object is invalid", - }); - } - if (Bo(e)) return { $type: "Param", value: e.name }; - if (ht(e)) - return { - $type: "FieldRef", - value: { _ref: e.name, _container: e.modelName }, - }; - if (Array.isArray(e)) return Nc(e, t); - if (ArrayBuffer.isView(e)) { - let { buffer: r, byteOffset: n, byteLength: i } = e; - return { $type: "Bytes", value: w.Buffer.from(r, n, i).toString("base64") }; - } - if (qc(e)) return e.values; - if (ut(e)) return { $type: "Decimal", value: e.toFixed() }; - if (e instanceof Me) { - if (e !== kr.instances[e._getName()]) - throw new Error("Invalid ObjectEnumValue"); - return { $type: "Enum", value: e._getName() }; - } - if (Bc(e)) return e.toJSON(); - if (typeof e == "object") return Qo(e, t); - t.throwValidationError({ - kind: "InvalidArgumentValue", - selectionPath: t.getSelectionPath(), - argumentPath: t.getArgumentPath(), - argument: { name: t.getArgumentName(), typeNames: [] }, - underlyingError: `We could not serialize ${Object.prototype.toString.call(e)} value. Serialize the object to JSON or implement a ".toJSON()" method on it`, - }); -} -function Qo(e, t) { - if (e.$type) return { $type: "Raw", value: e }; - let r = {}; - for (let n in e) { - let i = e[n], - o = t.nestArgument(n); - ve(i) || - (i !== void 0 - ? (r[n] = Vo(i, o)) - : t.isPreviewFeatureOn("strictUndefinedChecks") && - t.throwValidationError({ - kind: "InvalidArgumentValue", - argumentPath: o.getArgumentPath(), - selectionPath: t.getSelectionPath(), - argument: { name: t.getArgumentName(), typeNames: [] }, - underlyingError: Uo, - })); - } - return r; -} -function Nc(e, t) { - let r = []; - for (let n = 0; n < e.length; n++) { - let i = t.nestArgument(String(n)), - o = e[n]; - if (o === void 0 || ve(o)) { - let s = o === void 0 ? "undefined" : "Prisma.skip"; - t.throwValidationError({ - kind: "InvalidArgumentValue", - selectionPath: i.getSelectionPath(), - argumentPath: i.getArgumentPath(), - argument: { name: `${t.getArgumentName()}[${n}]`, typeNames: [] }, - underlyingError: `Can not use \`${s}\` value within array. Use \`null\` or filter out \`${s}\` values`, - }); - } - r.push(Vo(o, i)); - } - return r; -} -function qc(e) { - return typeof e == "object" && e !== null && e.__prismaRawParameters__ === !0; -} -function Bc(e) { - return typeof e == "object" && e !== null && typeof e.toJSON == "function"; -} -function Nn(e, t) { - e === void 0 && - t.isPreviewFeatureOn("strictUndefinedChecks") && - t.throwValidationError({ - kind: "InvalidSelectionValue", - selectionPath: t.getSelectionPath(), - underlyingError: Uo, - }); -} -var Ln = class e { - constructor(t) { - this.params = t; - this.params.modelName && - (this.modelOrType = - this.params.runtimeDataModel.models[this.params.modelName] ?? - this.params.runtimeDataModel.types[this.params.modelName]); - } - modelOrType; - throwValidationError(t) { - Mr({ - errors: [t], - originalMethod: this.params.originalMethod, - args: this.params.rootArgs ?? {}, - callsite: this.params.callsite, - errorFormat: this.params.errorFormat, - clientVersion: this.params.clientVersion, - globalOmit: this.params.globalOmit, - }); - } - getSelectionPath() { - return this.params.selectionPath; - } - getArgumentPath() { - return this.params.argumentPath; - } - getArgumentName() { - return this.params.argumentPath[this.params.argumentPath.length - 1]; - } - getOutputTypeDescription() { - if (!(!this.params.modelName || !this.modelOrType)) - return { - name: this.params.modelName, - fields: this.modelOrType.fields.map((t) => ({ - name: t.name, - typeName: "boolean", - isRelation: t.kind === "object", - })), - }; - } - isRawAction() { - return [ - "executeRaw", - "queryRaw", - "runCommandRaw", - "findRaw", - "aggregateRaw", - ].includes(this.params.action); - } - isPreviewFeatureOn(t) { - return this.params.previewFeatures.includes(t); - } - getComputedFields() { - if (this.params.modelName) - return this.params.extensions.getAllComputedFields(this.params.modelName); - } - findField(t) { - return this.modelOrType?.fields.find((r) => r.name === t); - } - nestSelection(t) { - let r = this.findField(t), - n = r?.kind === "object" ? r.type : void 0; - return new e({ - ...this.params, - modelName: n, - selectionPath: this.params.selectionPath.concat(t), - }); - } - getGlobalOmit() { - return this.params.modelName && this.shouldApplyGlobalOmit() - ? (this.params.globalOmit?.[De(this.params.modelName)] ?? {}) - : {}; - } - shouldApplyGlobalOmit() { - switch (this.params.action) { - case "findFirst": - case "findFirstOrThrow": - case "findUniqueOrThrow": - case "findMany": - case "upsert": - case "findUnique": - case "createManyAndReturn": - case "create": - case "update": - case "updateManyAndReturn": - case "delete": - return !0; - case "executeRaw": - case "aggregateRaw": - case "runCommandRaw": - case "findRaw": - case "createMany": - case "deleteMany": - case "groupBy": - case "updateMany": - case "count": - case "aggregate": - case "queryRaw": - return !1; - default: - ze(this.params.action, "Unknown action"); - } - } - nestArgument(t) { - return new e({ - ...this.params, - argumentPath: this.params.argumentPath.concat(t), - }); - } -}; -m(); -c(); -p(); -d(); -f(); -function Jo(e) { - if (!e._hasPreviewFlag("metrics")) - throw new te( - "`metrics` preview feature must be enabled in order to access metrics API", - { clientVersion: e._clientVersion }, - ); -} -var bt = class { - _client; - constructor(t) { - this._client = t; - } - prometheus(t) { - return ( - Jo(this._client), - this._client._engine.metrics({ format: "prometheus", ...t }) - ); - } - json(t) { - return ( - Jo(this._client), - this._client._engine.metrics({ format: "json", ...t }) - ); - } -}; -m(); -c(); -p(); -d(); -f(); -function Go(e, t) { - let r = Nt(() => jc(t)); - Object.defineProperty(e, "dmmf", { get: () => r.get() }); -} -function jc(e) { - return { - datamodel: { models: qn(e.models), enums: qn(e.enums), types: qn(e.types) }, - }; -} -function qn(e) { - return Object.entries(e).map(([t, r]) => ({ name: t, ...r })); -} -m(); -c(); -p(); -d(); -f(); -var Bn = new WeakMap(), - qr = "$$PrismaTypedSql", - zt = class { - constructor(t, r) { - (Bn.set(this, { sql: t, values: r }), - Object.defineProperty(this, qr, { value: qr })); - } - get sql() { - return Bn.get(this).sql; - } - get values() { - return Bn.get(this).values; - } - }; -function Wo(e) { - return (...t) => new zt(e, t); -} -function Br(e) { - return e != null && e[qr] === qr; -} -m(); -c(); -p(); -d(); -f(); -var da = Qe(Ko()); -m(); -c(); -p(); -d(); -f(); -zo(); -dn(); -gn(); -m(); -c(); -p(); -d(); -f(); -var le = class e { - constructor(t, r) { - if (t.length - 1 !== r.length) - throw t.length === 0 - ? new TypeError("Expected at least 1 string") - : new TypeError( - `Expected ${t.length} strings to have ${t.length - 1} values`, - ); - let n = r.reduce((s, a) => s + (a instanceof e ? a.values.length : 1), 0); - ((this.values = new Array(n)), - (this.strings = new Array(n + 1)), - (this.strings[0] = t[0])); - let i = 0, - o = 0; - for (; i < r.length; ) { - let s = r[i++], - a = t[i]; - if (s instanceof e) { - this.strings[o] += s.strings[0]; - let l = 0; - for (; l < s.values.length; ) - ((this.values[o++] = s.values[l++]), - (this.strings[o] = s.strings[l])); - this.strings[o] += a; - } else ((this.values[o++] = s), (this.strings[o] = a)); - } - } - get sql() { - let t = this.strings.length, - r = 1, - n = this.strings[0]; - for (; r < t; ) n += `?${this.strings[r++]}`; - return n; - } - get statement() { - let t = this.strings.length, - r = 1, - n = this.strings[0]; - for (; r < t; ) n += `:${r}${this.strings[r++]}`; - return n; - } - get text() { - let t = this.strings.length, - r = 1, - n = this.strings[0]; - for (; r < t; ) n += `$${r}${this.strings[r++]}`; - return n; - } - inspect() { - return { - sql: this.sql, - statement: this.statement, - text: this.text, - values: this.values, - }; - } -}; -function Ho(e, t = ",", r = "", n = "") { - if (e.length === 0) - throw new TypeError( - "Expected `join([])` to be called with an array of multiple elements, but got an empty array", - ); - return new le([r, ...Array(e.length - 1).fill(t), n], e); -} -function jn(e) { - return new le([e], []); -} -var Yo = jn(""); -function $n(e, ...t) { - return new le(e, t); -} -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -function Ht(e) { - return { - getKeys() { - return Object.keys(e); - }, - getPropertyValue(t) { - return e[t]; - }, - }; -} -m(); -c(); -p(); -d(); -f(); -function ne(e, t) { - return { - getKeys() { - return [e]; - }, - getPropertyValue() { - return t(); - }, - }; -} -m(); -c(); -p(); -d(); -f(); -function He(e) { - let t = new we(); - return { - getKeys() { - return e.getKeys(); - }, - getPropertyValue(r) { - return t.getOrCreate(r, () => e.getPropertyValue(r)); - }, - getPropertyDescriptor(r) { - return e.getPropertyDescriptor?.(r); - }, - }; -} -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -var $r = { enumerable: !0, configurable: !0, writable: !0 }; -function Ur(e) { - let t = new Set(e); - return { - getPrototypeOf: () => Object.prototype, - getOwnPropertyDescriptor: () => $r, - has: (r, n) => t.has(n), - set: (r, n, i) => t.add(n) && Reflect.set(r, n, i), - ownKeys: () => [...t], - }; -} -var Zo = Symbol.for("nodejs.util.inspect.custom"); -function ge(e, t) { - let r = Uc(t), - n = new Set(), - i = new Proxy(e, { - get(o, s) { - if (n.has(s)) return o[s]; - let a = r.get(s); - return a ? a.getPropertyValue(s) : o[s]; - }, - has(o, s) { - if (n.has(s)) return !0; - let a = r.get(s); - return a ? (a.has?.(s) ?? !0) : Reflect.has(o, s); - }, - ownKeys(o) { - let s = Xo(Reflect.ownKeys(o), r), - a = Xo(Array.from(r.keys()), r); - return [...new Set([...s, ...a, ...n])]; - }, - set(o, s, a) { - return r.get(s)?.getPropertyDescriptor?.(s)?.writable === !1 - ? !1 - : (n.add(s), Reflect.set(o, s, a)); - }, - getOwnPropertyDescriptor(o, s) { - let a = Reflect.getOwnPropertyDescriptor(o, s); - if (a && !a.configurable) return a; - let l = r.get(s); - return l - ? l.getPropertyDescriptor - ? { ...$r, ...l?.getPropertyDescriptor(s) } - : $r - : a; - }, - defineProperty(o, s, a) { - return (n.add(s), Reflect.defineProperty(o, s, a)); - }, - getPrototypeOf: () => Object.prototype, - }); - return ( - (i[Zo] = function () { - let o = { ...this }; - return (delete o[Zo], o); - }), - i - ); -} -function Uc(e) { - let t = new Map(); - for (let r of e) { - let n = r.getKeys(); - for (let i of n) t.set(i, r); - } - return t; -} -function Xo(e, t) { - return e.filter((r) => t.get(r)?.has?.(r) ?? !0); -} -m(); -c(); -p(); -d(); -f(); -function xt(e) { - return { - getKeys() { - return e; - }, - has() { - return !1; - }, - getPropertyValue() {}, - }; -} -m(); -c(); -p(); -d(); -f(); -function Vr(e, t) { - return { - batch: e, - transaction: - t?.kind === "batch" - ? { isolationLevel: t.options.isolationLevel } - : void 0, - }; -} -m(); -c(); -p(); -d(); -f(); -function es(e) { - if (e === void 0) return ""; - let t = yt(e); - return new pt(0, { colors: Sr }).write(t).toString(); -} -m(); -c(); -p(); -d(); -f(); -var Vc = "P2037"; -function Qr({ error: e, user_facing_error: t }, r, n) { - return t.error_code - ? new se(Qc(t, n), { - code: t.error_code, - clientVersion: r, - meta: t.meta, - batchRequestIdx: t.batch_request_idx, - }) - : new G(e, { clientVersion: r, batchRequestIdx: t.batch_request_idx }); -} -function Qc(e, t) { - let r = e.message; - return ( - (t === "postgresql" || t === "postgres" || t === "mysql") && - e.error_code === Vc && - (r += ` -Prisma Accelerate has built-in connection pooling to prevent such errors: https://pris.ly/client/error-accelerate`), - r - ); -} -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -var Yt = ""; -function ts(e) { - var t = e.split(` -`); - return t.reduce(function (r, n) { - var i = Wc(n) || zc(n) || Zc(n) || rp(n) || ep(n); - return (i && r.push(i), r); - }, []); -} -var Jc = - /^\s*at (.*?) ?\(((?:file|https?|blob|chrome-extension|native|eval|webpack|rsc||\/|[a-z]:\\|\\\\).*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i, - Gc = /\((\S*)(?::(\d+))(?::(\d+))\)/; -function Wc(e) { - var t = Jc.exec(e); - if (!t) return null; - var r = t[2] && t[2].indexOf("native") === 0, - n = t[2] && t[2].indexOf("eval") === 0, - i = Gc.exec(t[2]); - return ( - n && i != null && ((t[2] = i[1]), (t[3] = i[2]), (t[4] = i[3])), - { - file: r ? null : t[2], - methodName: t[1] || Yt, - arguments: r ? [t[2]] : [], - lineNumber: t[3] ? +t[3] : null, - column: t[4] ? +t[4] : null, - } - ); -} -var Kc = - /^\s*at (?:((?:\[object object\])?.+) )?\(?((?:file|ms-appx|https?|webpack|rsc|blob):.*?):(\d+)(?::(\d+))?\)?\s*$/i; -function zc(e) { - var t = Kc.exec(e); - return t - ? { - file: t[2], - methodName: t[1] || Yt, - arguments: [], - lineNumber: +t[3], - column: t[4] ? +t[4] : null, - } - : null; -} -var Hc = - /^\s*(.*?)(?:\((.*?)\))?(?:^|@)((?:file|https?|blob|chrome|webpack|rsc|resource|\[native).*?|[^@]*bundle)(?::(\d+))?(?::(\d+))?\s*$/i, - Yc = /(\S+) line (\d+)(?: > eval line \d+)* > eval/i; -function Zc(e) { - var t = Hc.exec(e); - if (!t) return null; - var r = t[3] && t[3].indexOf(" > eval") > -1, - n = Yc.exec(t[3]); - return ( - r && n != null && ((t[3] = n[1]), (t[4] = n[2]), (t[5] = null)), - { - file: t[3], - methodName: t[1] || Yt, - arguments: t[2] ? t[2].split(",") : [], - lineNumber: t[4] ? +t[4] : null, - column: t[5] ? +t[5] : null, - } - ); -} -var Xc = /^\s*(?:([^@]*)(?:\((.*?)\))?@)?(\S.*?):(\d+)(?::(\d+))?\s*$/i; -function ep(e) { - var t = Xc.exec(e); - return t - ? { - file: t[3], - methodName: t[1] || Yt, - arguments: [], - lineNumber: +t[4], - column: t[5] ? +t[5] : null, - } - : null; -} -var tp = - /^\s*at (?:((?:\[object object\])?[^\\/]+(?: \[as \S+\])?) )?\(?(.*?):(\d+)(?::(\d+))?\)?\s*$/i; -function rp(e) { - var t = tp.exec(e); - return t - ? { - file: t[2], - methodName: t[1] || Yt, - arguments: [], - lineNumber: +t[3], - column: t[4] ? +t[4] : null, - } - : null; -} -var Un = class { - getLocation() { - return null; - } - }, - Vn = class { - _error; - constructor() { - this._error = new Error(); - } - getLocation() { - let t = this._error.stack; - if (!t) return null; - let n = ts(t).find((i) => { - if (!i.file) return !1; - let o = Pn(i.file); - return ( - o !== "" && - !o.includes("@prisma") && - !o.includes("/packages/client/src/runtime/") && - !o.endsWith("/runtime/binary.js") && - !o.endsWith("/runtime/library.js") && - !o.endsWith("/runtime/edge.js") && - !o.endsWith("/runtime/edge-esm.js") && - !o.startsWith("internal/") && - !i.methodName.includes("new ") && - !i.methodName.includes("getCallSite") && - !i.methodName.includes("Proxy.") && - i.methodName.split(".").length < 4 - ); - }); - return !n || !n.file - ? null - : { - fileName: n.file, - lineNumber: n.lineNumber, - columnNumber: n.column, - }; - } - }; -function $e(e) { - return e === "minimal" - ? typeof $EnabledCallSite == "function" && e !== "minimal" - ? new $EnabledCallSite() - : new Un() - : new Vn(); -} -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -var rs = { _avg: !0, _count: !0, _sum: !0, _min: !0, _max: !0 }; -function Et(e = {}) { - let t = ip(e); - return Object.entries(t).reduce( - (n, [i, o]) => ( - rs[i] !== void 0 ? (n.select[i] = { select: o }) : (n[i] = o), - n - ), - { select: {} }, - ); -} -function ip(e = {}) { - return typeof e._count == "boolean" - ? { ...e, _count: { _all: e._count } } - : e; -} -function Jr(e = {}) { - return (t) => (typeof e._count == "boolean" && (t._count = t._count._all), t); -} -function ns(e, t) { - let r = Jr(e); - return t({ action: "aggregate", unpacker: r, argsMapper: Et })(e); -} -m(); -c(); -p(); -d(); -f(); -function op(e = {}) { - let { select: t, ...r } = e; - return typeof t == "object" - ? Et({ ...r, _count: t }) - : Et({ ...r, _count: { _all: !0 } }); -} -function sp(e = {}) { - return typeof e.select == "object" - ? (t) => Jr(e)(t)._count - : (t) => Jr(e)(t)._count._all; -} -function is(e, t) { - return t({ action: "count", unpacker: sp(e), argsMapper: op })(e); -} -m(); -c(); -p(); -d(); -f(); -function ap(e = {}) { - let t = Et(e); - if (Array.isArray(t.by)) - for (let r of t.by) typeof r == "string" && (t.select[r] = !0); - else typeof t.by == "string" && (t.select[t.by] = !0); - return t; -} -function lp(e = {}) { - return (t) => ( - typeof e?._count == "boolean" && - t.forEach((r) => { - r._count = r._count._all; - }), - t - ); -} -function os(e, t) { - return t({ action: "groupBy", unpacker: lp(e), argsMapper: ap })(e); -} -function ss(e, t, r) { - if (t === "aggregate") return (n) => ns(n, r); - if (t === "count") return (n) => is(n, r); - if (t === "groupBy") return (n) => os(n, r); -} -m(); -c(); -p(); -d(); -f(); -function as(e, t) { - let r = t.fields.filter((i) => !i.relationName), - n = Yi(r, "name"); - return new Proxy( - {}, - { - get(i, o) { - if (o in i || typeof o == "symbol") return i[o]; - let s = n[o]; - if (s) return new Ut(e, o, s.type, s.isList, s.kind === "enum"); - }, - ...Ur(Object.keys(n)), - }, - ); -} -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -var ls = (e) => (Array.isArray(e) ? e : e.split(".")), - Qn = (e, t) => ls(t).reduce((r, n) => r && r[n], e), - us = (e, t, r) => - ls(t).reduceRight( - (n, i, o, s) => Object.assign({}, Qn(e, s.slice(0, o)), { [i]: n }), - r, - ); -function up(e, t) { - return e === void 0 || t === void 0 ? [] : [...t, "select", e]; -} -function cp(e, t, r) { - return t === void 0 ? (e ?? {}) : us(t, r, e || !0); -} -function Jn(e, t, r, n, i, o) { - let a = e._runtimeDataModel.models[t].fields.reduce( - (l, u) => ({ ...l, [u.name]: u }), - {}, - ); - return (l) => { - let u = $e(e._errorFormat), - g = up(n, i), - h = cp(l, o, g), - T = r({ dataPath: g, callsite: u })(h), - O = pp(e, t); - return new Proxy(T, { - get(C, S) { - if (!O.includes(S)) return C[S]; - let _ = [a[S].type, r, S], - L = [g, h]; - return Jn(e, ..._, ...L); - }, - ...Ur([...O, ...Object.getOwnPropertyNames(T)]), - }); - }; -} -function pp(e, t) { - return e._runtimeDataModel.models[t].fields - .filter((r) => r.kind === "object") - .map((r) => r.name); -} -var dp = [ - "findUnique", - "findUniqueOrThrow", - "findFirst", - "findFirstOrThrow", - "create", - "update", - "upsert", - "delete", - ], - fp = ["aggregate", "count", "groupBy"]; -function Gn(e, t) { - let r = e._extensions.getAllModelExtensions(t) ?? {}, - n = [ - mp(e, t), - hp(e, t), - Ht(r), - ne("name", () => t), - ne("$name", () => t), - ne("$parent", () => e._appliedParent), - ]; - return ge({}, n); -} -function mp(e, t) { - let r = Pe(t), - n = Object.keys(ct).concat("count"); - return { - getKeys() { - return n; - }, - getPropertyValue(i) { - let o = i, - s = (a) => (l) => { - let u = $e(e._errorFormat); - return e._createPrismaPromise( - (g) => { - let h = { - args: l, - dataPath: [], - action: o, - model: t, - clientMethod: `${r}.${i}`, - jsModelName: r, - transaction: g, - callsite: u, - }; - return e._request({ ...h, ...a }); - }, - { action: o, args: l, model: t }, - ); - }; - return dp.includes(o) ? Jn(e, t, s) : gp(i) ? ss(e, i, s) : s({}); - }, - }; -} -function gp(e) { - return fp.includes(e); -} -function hp(e, t) { - return He( - ne("fields", () => { - let r = e._runtimeDataModel.models[t]; - return as(t, r); - }), - ); -} -m(); -c(); -p(); -d(); -f(); -function cs(e) { - return e.replace(/^./, (t) => t.toUpperCase()); -} -var Wn = Symbol(); -function Zt(e) { - let t = [ - yp(e), - wp(e), - ne(Wn, () => e), - ne("$parent", () => e._appliedParent), - ], - r = e._extensions.getAllClientExtensions(); - return (r && t.push(Ht(r)), ge(e, t)); -} -function yp(e) { - let t = Object.getPrototypeOf(e._originalClient), - r = [...new Set(Object.getOwnPropertyNames(t))]; - return { - getKeys() { - return r; - }, - getPropertyValue(n) { - return e[n]; - }, - }; -} -function wp(e) { - let t = Object.keys(e._runtimeDataModel.models), - r = t.map(Pe), - n = [...new Set(t.concat(r))]; - return He({ - getKeys() { - return n; - }, - getPropertyValue(i) { - let o = cs(i); - if (e._runtimeDataModel.models[o] !== void 0) return Gn(e, o); - if (e._runtimeDataModel.models[i] !== void 0) return Gn(e, i); - }, - getPropertyDescriptor(i) { - if (!r.includes(i)) return { enumerable: !1 }; - }, - }); -} -function ps(e) { - return e[Wn] ? e[Wn] : e; -} -function ds(e) { - if (typeof e == "function") return e(this); - if (e.client?.__AccelerateEngine) { - let r = e.client.__AccelerateEngine; - this._originalClient._engine = new r( - this._originalClient._accelerateEngineConfig, - ); - } - let t = Object.create(this._originalClient, { - _extensions: { value: this._extensions.append(e) }, - _appliedParent: { value: this, configurable: !0 }, - $on: { value: void 0 }, - }); - return Zt(t); -} -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -function fs({ result: e, modelName: t, select: r, omit: n, extensions: i }) { - let o = i.getAllComputedFields(t); - if (!o) return e; - let s = [], - a = []; - for (let l of Object.values(o)) { - if (n) { - if (n[l.name]) continue; - let u = l.needs.filter((g) => n[g]); - u.length > 0 && a.push(xt(u)); - } else if (r) { - if (!r[l.name]) continue; - let u = l.needs.filter((g) => !r[g]); - u.length > 0 && a.push(xt(u)); - } - bp(e, l.needs) && s.push(xp(l, ge(e, s))); - } - return s.length > 0 || a.length > 0 ? ge(e, [...s, ...a]) : e; -} -function bp(e, t) { - return t.every((r) => vn(e, r)); -} -function xp(e, t) { - return He(ne(e.name, () => e.compute(t))); -} -m(); -c(); -p(); -d(); -f(); -function Gr({ - visitor: e, - result: t, - args: r, - runtimeDataModel: n, - modelName: i, -}) { - if (Array.isArray(t)) { - for (let s = 0; s < t.length; s++) - t[s] = Gr({ - result: t[s], - args: r, - modelName: i, - runtimeDataModel: n, - visitor: e, - }); - return t; - } - let o = e(t, i, r) ?? t; - return ( - r.include && - ms({ - includeOrSelect: r.include, - result: o, - parentModelName: i, - runtimeDataModel: n, - visitor: e, - }), - r.select && - ms({ - includeOrSelect: r.select, - result: o, - parentModelName: i, - runtimeDataModel: n, - visitor: e, - }), - o - ); -} -function ms({ - includeOrSelect: e, - result: t, - parentModelName: r, - runtimeDataModel: n, - visitor: i, -}) { - for (let [o, s] of Object.entries(e)) { - if (!s || t[o] == null || ve(s)) continue; - let l = n.models[r].fields.find((g) => g.name === o); - if (!l || l.kind !== "object" || !l.relationName) continue; - let u = typeof s == "object" ? s : {}; - t[o] = Gr({ - visitor: i, - result: t[o], - args: u, - modelName: l.type, - runtimeDataModel: n, - }); - } -} -function gs({ - result: e, - modelName: t, - args: r, - extensions: n, - runtimeDataModel: i, - globalOmit: o, -}) { - return n.isEmpty() || e == null || typeof e != "object" || !i.models[t] - ? e - : Gr({ - result: e, - args: r ?? {}, - modelName: t, - runtimeDataModel: i, - visitor: (a, l, u) => { - let g = Pe(l); - return fs({ - result: a, - modelName: g, - select: u.select, - omit: u.select ? void 0 : { ...o?.[g], ...u.omit }, - extensions: n, - }); - }, - }); -} -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -var Ep = ["$connect", "$disconnect", "$on", "$transaction", "$extends"], - hs = Ep; -function ys(e) { - if (e instanceof le) return Pp(e); - if (Br(e)) return vp(e); - if (Array.isArray(e)) { - let r = [e[0]]; - for (let n = 1; n < e.length; n++) r[n] = Xt(e[n]); - return r; - } - let t = {}; - for (let r in e) t[r] = Xt(e[r]); - return t; -} -function Pp(e) { - return new le(e.strings, e.values); -} -function vp(e) { - return new zt(e.sql, e.values); -} -function Xt(e) { - if (typeof e != "object" || e == null || e instanceof Me || ht(e)) return e; - if (ut(e)) return new Fe(e.toFixed()); - if (st(e)) return new Date(+e); - if (ArrayBuffer.isView(e)) return e.slice(0); - if (Array.isArray(e)) { - let t = e.length, - r; - for (r = Array(t); t--; ) r[t] = Xt(e[t]); - return r; - } - if (typeof e == "object") { - let t = {}; - for (let r in e) - r === "__proto__" - ? Object.defineProperty(t, r, { - value: Xt(e[r]), - configurable: !0, - enumerable: !0, - writable: !0, - }) - : (t[r] = Xt(e[r])); - return t; - } - ze(e, "Unknown value"); -} -function bs(e, t, r, n = 0) { - return e._createPrismaPromise((i) => { - let o = t.customDataProxyFetch; - return ( - "transaction" in t && - i !== void 0 && - (t.transaction?.kind === "batch" && t.transaction.lock.then(), - (t.transaction = i)), - n === r.length - ? e._executeRequest(t) - : r[n]({ - model: t.model, - operation: t.model ? t.action : t.clientMethod, - args: ys(t.args ?? {}), - __internalParams: t, - query: (s, a = t) => { - let l = a.customDataProxyFetch; - return ( - (a.customDataProxyFetch = vs(o, l)), - (a.args = s), - bs(e, a, r, n + 1) - ); - }, - }) - ); - }); -} -function xs(e, t) { - let { jsModelName: r, action: n, clientMethod: i } = t, - o = r ? n : i; - if (e._extensions.isEmpty()) return e._executeRequest(t); - let s = e._extensions.getAllQueryCallbacks(r ?? "$none", o); - return bs(e, t, s); -} -function Es(e) { - return (t) => { - let r = { requests: t }, - n = t[0].extensions.getAllBatchQueryCallbacks(); - return n.length ? Ps(r, n, 0, e) : e(r); - }; -} -function Ps(e, t, r, n) { - if (r === t.length) return n(e); - let i = e.customDataProxyFetch, - o = e.requests[0].transaction; - return t[r]({ - args: { - queries: e.requests.map((s) => ({ - model: s.modelName, - operation: s.action, - args: s.args, - })), - transaction: o - ? { isolationLevel: o.kind === "batch" ? o.isolationLevel : void 0 } - : void 0, - }, - __internalParams: e, - query(s, a = e) { - let l = a.customDataProxyFetch; - return ((a.customDataProxyFetch = vs(i, l)), Ps(a, t, r + 1, n)); - }, - }); -} -var ws = (e) => e; -function vs(e = ws, t = ws) { - return (r) => e(t(r)); -} -m(); -c(); -p(); -d(); -f(); -var Ts = z("prisma:client"), - As = { Vercel: "vercel", "Netlify CI": "netlify" }; -function Cs({ postinstall: e, ciName: t, clientVersion: r, generator: n }) { - if ( - (Ts("checkPlatformCaching:postinstall", e), - Ts("checkPlatformCaching:ciName", t), - e === !0 && - !( - n?.output && typeof (n.output.fromEnvVar ?? n.output.value) == "string" - ) && - t && - t in As) - ) { - let i = `Prisma has detected that this project was built on ${t}, which caches dependencies. This leads to an outdated Prisma Client because Prisma's auto-generation isn't triggered. To fix this, make sure to run the \`prisma generate\` command during the build process. +"use strict";var ha=Object.create;var rr=Object.defineProperty;var ya=Object.getOwnPropertyDescriptor;var wa=Object.getOwnPropertyNames;var ba=Object.getPrototypeOf,xa=Object.prototype.hasOwnProperty;var he=(e,t)=>()=>(e&&(t=e(e=0)),t);var Ve=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Xe=(e,t)=>{for(var r in t)rr(e,r,{get:t[r],enumerable:!0})},ni=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of wa(t))!xa.call(e,i)&&i!==r&&rr(e,i,{get:()=>t[i],enumerable:!(n=ya(t,i))||n.enumerable});return e};var Qe=(e,t,r)=>(r=e!=null?ha(ba(e)):{},ni(t||!e||!e.__esModule?rr(r,"default",{value:e,enumerable:!0}):r,e)),Ea=e=>ni(rr({},"__esModule",{value:!0}),e);var y,E,c=he(()=>{"use strict";y={nextTick:(e,...t)=>{setTimeout(()=>{e(...t)},0)},env:{},version:"",cwd:()=>"/",stderr:{},argv:["/bin/node"],pid:1e4},{cwd:E}=y});var P,p=he(()=>{"use strict";P=globalThis.performance??(()=>{let e=Date.now();return{now:()=>Date.now()-e}})()});var x,d=he(()=>{"use strict";x=()=>{};x.prototype=x});var b,f=he(()=>{"use strict";b=class{value;constructor(t){this.value=t}deref(){return this.value}}});var Pi=Ve(nt=>{"use strict";m();c();p();d();f();var li=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Pa=li(e=>{"use strict";e.byteLength=l,e.toByteArray=g,e.fromByteArray=O;var t=[],r=[],n=typeof Uint8Array<"u"?Uint8Array:Array,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(o=0,s=i.length;o0)throw new Error("Invalid string. Length must be a multiple of 4");var F=C.indexOf("=");F===-1&&(F=S);var _=F===S?0:4-F%4;return[F,_]}function l(C){var S=a(C),F=S[0],_=S[1];return(F+_)*3/4-_}function u(C,S,F){return(S+F)*3/4-F}function g(C){var S,F=a(C),_=F[0],L=F[1],k=new n(u(C,_,L)),q=0,Y=L>0?_-4:_,U;for(U=0;U>16&255,k[q++]=S>>8&255,k[q++]=S&255;return L===2&&(S=r[C.charCodeAt(U)]<<2|r[C.charCodeAt(U+1)]>>4,k[q++]=S&255),L===1&&(S=r[C.charCodeAt(U)]<<10|r[C.charCodeAt(U+1)]<<4|r[C.charCodeAt(U+2)]>>2,k[q++]=S>>8&255,k[q++]=S&255),k}function h(C){return t[C>>18&63]+t[C>>12&63]+t[C>>6&63]+t[C&63]}function T(C,S,F){for(var _,L=[],k=S;kY?Y:q+k));return _===1?(S=C[F-1],L.push(t[S>>2]+t[S<<4&63]+"==")):_===2&&(S=(C[F-2]<<8)+C[F-1],L.push(t[S>>10]+t[S>>4&63]+t[S<<2&63]+"=")),L.join("")}}),va=li(e=>{e.read=function(t,r,n,i,o){var s,a,l=o*8-i-1,u=(1<>1,h=-7,T=n?o-1:0,O=n?-1:1,C=t[r+T];for(T+=O,s=C&(1<<-h)-1,C>>=-h,h+=l;h>0;s=s*256+t[r+T],T+=O,h-=8);for(a=s&(1<<-h)-1,s>>=-h,h+=i;h>0;a=a*256+t[r+T],T+=O,h-=8);if(s===0)s=1-g;else{if(s===u)return a?NaN:(C?-1:1)*(1/0);a=a+Math.pow(2,i),s=s-g}return(C?-1:1)*a*Math.pow(2,s-i)},e.write=function(t,r,n,i,o,s){var a,l,u,g=s*8-o-1,h=(1<>1,O=o===23?Math.pow(2,-24)-Math.pow(2,-77):0,C=i?0:s-1,S=i?1:-1,F=r<0||r===0&&1/r<0?1:0;for(r=Math.abs(r),isNaN(r)||r===1/0?(l=isNaN(r)?1:0,a=h):(a=Math.floor(Math.log(r)/Math.LN2),r*(u=Math.pow(2,-a))<1&&(a--,u*=2),a+T>=1?r+=O/u:r+=O*Math.pow(2,1-T),r*u>=2&&(a++,u/=2),a+T>=h?(l=0,a=h):a+T>=1?(l=(r*u-1)*Math.pow(2,o),a=a+T):(l=r*Math.pow(2,T-1)*Math.pow(2,o),a=0));o>=8;t[n+C]=l&255,C+=S,l/=256,o-=8);for(a=a<0;t[n+C]=a&255,C+=S,a/=256,g-=8);t[n+C-S]|=F*128}}),Xr=Pa(),tt=va(),ii=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;nt.Buffer=A;nt.SlowBuffer=Oa;nt.INSPECT_MAX_BYTES=50;var nr=2147483647;nt.kMaxLength=nr;A.TYPED_ARRAY_SUPPORT=Ta();!A.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function Ta(){try{let e=new Uint8Array(1),t={foo:function(){return 42}};return Object.setPrototypeOf(t,Uint8Array.prototype),Object.setPrototypeOf(e,t),e.foo()===42}catch{return!1}}Object.defineProperty(A.prototype,"parent",{enumerable:!0,get:function(){if(A.isBuffer(this))return this.buffer}});Object.defineProperty(A.prototype,"offset",{enumerable:!0,get:function(){if(A.isBuffer(this))return this.byteOffset}});function Ce(e){if(e>nr)throw new RangeError('The value "'+e+'" is invalid for option "size"');let t=new Uint8Array(e);return Object.setPrototypeOf(t,A.prototype),t}function A(e,t,r){if(typeof e=="number"){if(typeof t=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return rn(e)}return ui(e,t,r)}A.poolSize=8192;function ui(e,t,r){if(typeof e=="string")return Ca(e,t);if(ArrayBuffer.isView(e))return Sa(e);if(e==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(ye(e,ArrayBuffer)||e&&ye(e.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(ye(e,SharedArrayBuffer)||e&&ye(e.buffer,SharedArrayBuffer)))return pi(e,t,r);if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let n=e.valueOf&&e.valueOf();if(n!=null&&n!==e)return A.from(n,t,r);let i=Ra(e);if(i)return i;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof e[Symbol.toPrimitive]=="function")return A.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}A.from=function(e,t,r){return ui(e,t,r)};Object.setPrototypeOf(A.prototype,Uint8Array.prototype);Object.setPrototypeOf(A,Uint8Array);function ci(e){if(typeof e!="number")throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function Aa(e,t,r){return ci(e),e<=0?Ce(e):t!==void 0?typeof r=="string"?Ce(e).fill(t,r):Ce(e).fill(t):Ce(e)}A.alloc=function(e,t,r){return Aa(e,t,r)};function rn(e){return ci(e),Ce(e<0?0:nn(e)|0)}A.allocUnsafe=function(e){return rn(e)};A.allocUnsafeSlow=function(e){return rn(e)};function Ca(e,t){if((typeof t!="string"||t==="")&&(t="utf8"),!A.isEncoding(t))throw new TypeError("Unknown encoding: "+t);let r=di(e,t)|0,n=Ce(r),i=n.write(e,t);return i!==r&&(n=n.slice(0,i)),n}function en(e){let t=e.length<0?0:nn(e.length)|0,r=Ce(t);for(let n=0;n=nr)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+nr.toString(16)+" bytes");return e|0}function Oa(e){return+e!=e&&(e=0),A.alloc(+e)}A.isBuffer=function(e){return e!=null&&e._isBuffer===!0&&e!==A.prototype};A.compare=function(e,t){if(ye(e,Uint8Array)&&(e=A.from(e,e.offset,e.byteLength)),ye(t,Uint8Array)&&(t=A.from(t,t.offset,t.byteLength)),!A.isBuffer(e)||!A.isBuffer(t))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(e===t)return 0;let r=e.length,n=t.length;for(let i=0,o=Math.min(r,n);in.length?(A.isBuffer(o)||(o=A.from(o)),o.copy(n,i)):Uint8Array.prototype.set.call(n,o,i);else if(A.isBuffer(o))o.copy(n,i);else throw new TypeError('"list" argument must be an Array of Buffers');i+=o.length}return n};function di(e,t){if(A.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||ye(e,ArrayBuffer))return e.byteLength;if(typeof e!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);let r=e.length,n=arguments.length>2&&arguments[2]===!0;if(!n&&r===0)return 0;let i=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return tn(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return r*2;case"hex":return r>>>1;case"base64":return Ei(e).length;default:if(i)return n?-1:tn(e).length;t=(""+t).toLowerCase(),i=!0}}A.byteLength=di;function ka(e,t,r){let n=!1;if((t===void 0||t<0)&&(t=0),t>this.length||((r===void 0||r>this.length)&&(r=this.length),r<=0)||(r>>>=0,t>>>=0,r<=t))return"";for(e||(e="utf8");;)switch(e){case"hex":return ja(this,t,r);case"utf8":case"utf-8":return mi(this,t,r);case"ascii":return qa(this,t,r);case"latin1":case"binary":return Ba(this,t,r);case"base64":return La(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return $a(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}A.prototype._isBuffer=!0;function Je(e,t,r){let n=e[t];e[t]=e[r],e[r]=n}A.prototype.swap16=function(){let e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let t=0;tt&&(e+=" ... "),""};ii&&(A.prototype[ii]=A.prototype.inspect);A.prototype.compare=function(e,t,r,n,i){if(ye(e,Uint8Array)&&(e=A.from(e,e.offset,e.byteLength)),!A.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(t===void 0&&(t=0),r===void 0&&(r=e?e.length:0),n===void 0&&(n=0),i===void 0&&(i=this.length),t<0||r>e.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=r)return 0;if(n>=i)return-1;if(t>=r)return 1;if(t>>>=0,r>>>=0,n>>>=0,i>>>=0,this===e)return 0;let o=i-n,s=r-t,a=Math.min(o,s),l=this.slice(n,i),u=e.slice(t,r);for(let g=0;g2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,sn(r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0)if(i)r=0;else return-1;if(typeof t=="string"&&(t=A.from(t,n)),A.isBuffer(t))return t.length===0?-1:oi(e,t,r,n,i);if(typeof t=="number")return t=t&255,typeof Uint8Array.prototype.indexOf=="function"?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):oi(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function oi(e,t,r,n,i){let o=1,s=e.length,a=t.length;if(n!==void 0&&(n=String(n).toLowerCase(),n==="ucs2"||n==="ucs-2"||n==="utf16le"||n==="utf-16le")){if(e.length<2||t.length<2)return-1;o=2,s/=2,a/=2,r/=2}function l(g,h){return o===1?g[h]:g.readUInt16BE(h*o)}let u;if(i){let g=-1;for(u=r;us&&(r=s-a),u=r;u>=0;u--){let g=!0;for(let h=0;hi&&(n=i)):n=i;let o=t.length;n>o/2&&(n=o/2);let s;for(s=0;s>>0,isFinite(r)?(r=r>>>0,n===void 0&&(n="utf8")):(n=r,r=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let i=this.length-t;if((r===void 0||r>i)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");let o=!1;for(;;)switch(n){case"hex":return Ia(this,e,t,r);case"utf8":case"utf-8":return Fa(this,e,t,r);case"ascii":case"latin1":case"binary":return Ma(this,e,t,r);case"base64":return _a(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Da(this,e,t,r);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}};A.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function La(e,t,r){return t===0&&r===e.length?Xr.fromByteArray(e):Xr.fromByteArray(e.slice(t,r))}function mi(e,t,r){r=Math.min(e.length,r);let n=[],i=t;for(;i239?4:o>223?3:o>191?2:1;if(i+a<=r){let l,u,g,h;switch(a){case 1:o<128&&(s=o);break;case 2:l=e[i+1],(l&192)===128&&(h=(o&31)<<6|l&63,h>127&&(s=h));break;case 3:l=e[i+1],u=e[i+2],(l&192)===128&&(u&192)===128&&(h=(o&15)<<12|(l&63)<<6|u&63,h>2047&&(h<55296||h>57343)&&(s=h));break;case 4:l=e[i+1],u=e[i+2],g=e[i+3],(l&192)===128&&(u&192)===128&&(g&192)===128&&(h=(o&15)<<18|(l&63)<<12|(u&63)<<6|g&63,h>65535&&h<1114112&&(s=h))}}s===null?(s=65533,a=1):s>65535&&(s-=65536,n.push(s>>>10&1023|55296),s=56320|s&1023),n.push(s),i+=a}return Na(n)}var si=4096;function Na(e){let t=e.length;if(t<=si)return String.fromCharCode.apply(String,e);let r="",n=0;for(;nn)&&(r=n);let i="";for(let o=t;or&&(e=r),t<0?(t+=r,t<0&&(t=0)):t>r&&(t=r),tr)throw new RangeError("Trying to access beyond buffer length")}A.prototype.readUintLE=A.prototype.readUIntLE=function(e,t,r){e=e>>>0,t=t>>>0,r||K(e,t,this.length);let n=this[e],i=1,o=0;for(;++o>>0,t=t>>>0,r||K(e,t,this.length);let n=this[e+--t],i=1;for(;t>0&&(i*=256);)n+=this[e+--t]*i;return n};A.prototype.readUint8=A.prototype.readUInt8=function(e,t){return e=e>>>0,t||K(e,1,this.length),this[e]};A.prototype.readUint16LE=A.prototype.readUInt16LE=function(e,t){return e=e>>>0,t||K(e,2,this.length),this[e]|this[e+1]<<8};A.prototype.readUint16BE=A.prototype.readUInt16BE=function(e,t){return e=e>>>0,t||K(e,2,this.length),this[e]<<8|this[e+1]};A.prototype.readUint32LE=A.prototype.readUInt32LE=function(e,t){return e=e>>>0,t||K(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+this[e+3]*16777216};A.prototype.readUint32BE=A.prototype.readUInt32BE=function(e,t){return e=e>>>0,t||K(e,4,this.length),this[e]*16777216+(this[e+1]<<16|this[e+2]<<8|this[e+3])};A.prototype.readBigUInt64LE=_e(function(e){e=e>>>0,rt(e,"offset");let t=this[e],r=this[e+7];(t===void 0||r===void 0)&&Ct(e,this.length-8);let n=t+this[++e]*2**8+this[++e]*2**16+this[++e]*2**24,i=this[++e]+this[++e]*2**8+this[++e]*2**16+r*2**24;return BigInt(n)+(BigInt(i)<>>0,rt(e,"offset");let t=this[e],r=this[e+7];(t===void 0||r===void 0)&&Ct(e,this.length-8);let n=t*2**24+this[++e]*2**16+this[++e]*2**8+this[++e],i=this[++e]*2**24+this[++e]*2**16+this[++e]*2**8+r;return(BigInt(n)<>>0,t=t>>>0,r||K(e,t,this.length);let n=this[e],i=1,o=0;for(;++o=i&&(n-=Math.pow(2,8*t)),n};A.prototype.readIntBE=function(e,t,r){e=e>>>0,t=t>>>0,r||K(e,t,this.length);let n=t,i=1,o=this[e+--n];for(;n>0&&(i*=256);)o+=this[e+--n]*i;return i*=128,o>=i&&(o-=Math.pow(2,8*t)),o};A.prototype.readInt8=function(e,t){return e=e>>>0,t||K(e,1,this.length),this[e]&128?(255-this[e]+1)*-1:this[e]};A.prototype.readInt16LE=function(e,t){e=e>>>0,t||K(e,2,this.length);let r=this[e]|this[e+1]<<8;return r&32768?r|4294901760:r};A.prototype.readInt16BE=function(e,t){e=e>>>0,t||K(e,2,this.length);let r=this[e+1]|this[e]<<8;return r&32768?r|4294901760:r};A.prototype.readInt32LE=function(e,t){return e=e>>>0,t||K(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24};A.prototype.readInt32BE=function(e,t){return e=e>>>0,t||K(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]};A.prototype.readBigInt64LE=_e(function(e){e=e>>>0,rt(e,"offset");let t=this[e],r=this[e+7];(t===void 0||r===void 0)&&Ct(e,this.length-8);let n=this[e+4]+this[e+5]*2**8+this[e+6]*2**16+(r<<24);return(BigInt(n)<>>0,rt(e,"offset");let t=this[e],r=this[e+7];(t===void 0||r===void 0)&&Ct(e,this.length-8);let n=(t<<24)+this[++e]*2**16+this[++e]*2**8+this[++e];return(BigInt(n)<>>0,t||K(e,4,this.length),tt.read(this,e,!0,23,4)};A.prototype.readFloatBE=function(e,t){return e=e>>>0,t||K(e,4,this.length),tt.read(this,e,!1,23,4)};A.prototype.readDoubleLE=function(e,t){return e=e>>>0,t||K(e,8,this.length),tt.read(this,e,!0,52,8)};A.prototype.readDoubleBE=function(e,t){return e=e>>>0,t||K(e,8,this.length),tt.read(this,e,!1,52,8)};function oe(e,t,r,n,i,o){if(!A.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}A.prototype.writeUintLE=A.prototype.writeUIntLE=function(e,t,r,n){if(e=+e,t=t>>>0,r=r>>>0,!n){let s=Math.pow(2,8*r)-1;oe(this,e,t,r,s,0)}let i=1,o=0;for(this[t]=e&255;++o>>0,r=r>>>0,!n){let s=Math.pow(2,8*r)-1;oe(this,e,t,r,s,0)}let i=r-1,o=1;for(this[t+i]=e&255;--i>=0&&(o*=256);)this[t+i]=e/o&255;return t+r};A.prototype.writeUint8=A.prototype.writeUInt8=function(e,t,r){return e=+e,t=t>>>0,r||oe(this,e,t,1,255,0),this[t]=e&255,t+1};A.prototype.writeUint16LE=A.prototype.writeUInt16LE=function(e,t,r){return e=+e,t=t>>>0,r||oe(this,e,t,2,65535,0),this[t]=e&255,this[t+1]=e>>>8,t+2};A.prototype.writeUint16BE=A.prototype.writeUInt16BE=function(e,t,r){return e=+e,t=t>>>0,r||oe(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=e&255,t+2};A.prototype.writeUint32LE=A.prototype.writeUInt32LE=function(e,t,r){return e=+e,t=t>>>0,r||oe(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=e&255,t+4};A.prototype.writeUint32BE=A.prototype.writeUInt32BE=function(e,t,r){return e=+e,t=t>>>0,r||oe(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4};function gi(e,t,r,n,i){xi(t,n,i,e,r,7);let o=Number(t&BigInt(4294967295));e[r++]=o,o=o>>8,e[r++]=o,o=o>>8,e[r++]=o,o=o>>8,e[r++]=o;let s=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=s,s=s>>8,e[r++]=s,s=s>>8,e[r++]=s,s=s>>8,e[r++]=s,r}function hi(e,t,r,n,i){xi(t,n,i,e,r,7);let o=Number(t&BigInt(4294967295));e[r+7]=o,o=o>>8,e[r+6]=o,o=o>>8,e[r+5]=o,o=o>>8,e[r+4]=o;let s=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=s,s=s>>8,e[r+2]=s,s=s>>8,e[r+1]=s,s=s>>8,e[r]=s,r+8}A.prototype.writeBigUInt64LE=_e(function(e,t=0){return gi(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))});A.prototype.writeBigUInt64BE=_e(function(e,t=0){return hi(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))});A.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t=t>>>0,!n){let a=Math.pow(2,8*r-1);oe(this,e,t,r,a-1,-a)}let i=0,o=1,s=0;for(this[t]=e&255;++i>0)-s&255;return t+r};A.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t=t>>>0,!n){let a=Math.pow(2,8*r-1);oe(this,e,t,r,a-1,-a)}let i=r-1,o=1,s=0;for(this[t+i]=e&255;--i>=0&&(o*=256);)e<0&&s===0&&this[t+i+1]!==0&&(s=1),this[t+i]=(e/o>>0)-s&255;return t+r};A.prototype.writeInt8=function(e,t,r){return e=+e,t=t>>>0,r||oe(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=e&255,t+1};A.prototype.writeInt16LE=function(e,t,r){return e=+e,t=t>>>0,r||oe(this,e,t,2,32767,-32768),this[t]=e&255,this[t+1]=e>>>8,t+2};A.prototype.writeInt16BE=function(e,t,r){return e=+e,t=t>>>0,r||oe(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=e&255,t+2};A.prototype.writeInt32LE=function(e,t,r){return e=+e,t=t>>>0,r||oe(this,e,t,4,2147483647,-2147483648),this[t]=e&255,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4};A.prototype.writeInt32BE=function(e,t,r){return e=+e,t=t>>>0,r||oe(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4};A.prototype.writeBigInt64LE=_e(function(e,t=0){return gi(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});A.prototype.writeBigInt64BE=_e(function(e,t=0){return hi(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function yi(e,t,r,n,i,o){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function wi(e,t,r,n,i){return t=+t,r=r>>>0,i||yi(e,t,r,4,34028234663852886e22,-34028234663852886e22),tt.write(e,t,r,n,23,4),r+4}A.prototype.writeFloatLE=function(e,t,r){return wi(this,e,t,!0,r)};A.prototype.writeFloatBE=function(e,t,r){return wi(this,e,t,!1,r)};function bi(e,t,r,n,i){return t=+t,r=r>>>0,i||yi(e,t,r,8,17976931348623157e292,-17976931348623157e292),tt.write(e,t,r,n,52,8),r+8}A.prototype.writeDoubleLE=function(e,t,r){return bi(this,e,t,!0,r)};A.prototype.writeDoubleBE=function(e,t,r){return bi(this,e,t,!1,r)};A.prototype.copy=function(e,t,r,n){if(!A.isBuffer(e))throw new TypeError("argument should be a Buffer");if(r||(r=0),!n&&n!==0&&(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t>>0,r=r===void 0?this.length:r>>>0,e||(e=0);let i;if(typeof e=="number")for(i=t;i2**32?i=ai(String(r)):typeof r=="bigint"&&(i=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(i=ai(i)),i+="n"),n+=` It must be ${t}. Received ${i}`,n},RangeError);function ai(e){let t="",r=e.length,n=e[0]==="-"?1:0;for(;r>=n+4;r-=3)t=`_${e.slice(r-3,r)}${t}`;return`${e.slice(0,r)}${t}`}function Ua(e,t,r){rt(t,"offset"),(e[t]===void 0||e[t+r]===void 0)&&Ct(t,e.length-(r+1))}function xi(e,t,r,n,i,o){if(e>r||e3?t===0||t===BigInt(0)?a=`>= 0${s} and < 2${s} ** ${(o+1)*8}${s}`:a=`>= -(2${s} ** ${(o+1)*8-1}${s}) and < 2 ** ${(o+1)*8-1}${s}`:a=`>= ${t}${s} and <= ${r}${s}`,new et.ERR_OUT_OF_RANGE("value",a,e)}Ua(n,i,o)}function rt(e,t){if(typeof e!="number")throw new et.ERR_INVALID_ARG_TYPE(t,"number",e)}function Ct(e,t,r){throw Math.floor(e)!==e?(rt(e,r),new et.ERR_OUT_OF_RANGE(r||"offset","an integer",e)):t<0?new et.ERR_BUFFER_OUT_OF_BOUNDS:new et.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${t}`,e)}var Va=/[^+/0-9A-Za-z-_]/g;function Qa(e){if(e=e.split("=")[0],e=e.trim().replace(Va,""),e.length<2)return"";for(;e.length%4!==0;)e=e+"=";return e}function tn(e,t){t=t||1/0;let r,n=e.length,i=null,o=[];for(let s=0;s55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&o.push(239,191,189);continue}else if(s+1===n){(t-=3)>-1&&o.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&o.push(239,191,189),i=r;continue}r=(i-55296<<10|r-56320)+65536}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;o.push(r)}else if(r<2048){if((t-=2)<0)break;o.push(r>>6|192,r&63|128)}else if(r<65536){if((t-=3)<0)break;o.push(r>>12|224,r>>6&63|128,r&63|128)}else if(r<1114112){if((t-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,r&63|128)}else throw new Error("Invalid code point")}return o}function Ja(e){let t=[];for(let r=0;r>8,i=r%256,o.push(i),o.push(n);return o}function Ei(e){return Xr.toByteArray(Qa(e))}function ir(e,t,r,n){let i;for(i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function ye(e,t){return e instanceof t||e!=null&&e.constructor!=null&&e.constructor.name!=null&&e.constructor.name===t.name}function sn(e){return e!==e}var Wa=function(){let e="0123456789abcdef",t=new Array(256);for(let r=0;r<16;++r){let n=r*16;for(let i=0;i<16;++i)t[n+i]=e[r]+e[i]}return t}();function _e(e){return typeof BigInt>"u"?Ka:e}function Ka(){throw new Error("BigInt not supported")}});var w,m=he(()=>{"use strict";w=Qe(Pi())});function hl(){return!1}function pn(){return{dev:0,ino:0,mode:0,nlink:0,uid:0,gid:0,rdev:0,size:0,blksize:0,blocks:0,atimeMs:0,mtimeMs:0,ctimeMs:0,birthtimeMs:0,atime:new Date,mtime:new Date,ctime:new Date,birthtime:new Date}}function yl(){return pn()}function wl(){return[]}function bl(e){e(null,[])}function xl(){return""}function El(){return""}function Pl(){}function vl(){}function Tl(){}function Al(){}function Cl(){}function Sl(){}function Rl(){}function Ol(){}function kl(){return{close:()=>{},on:()=>{},removeAllListeners:()=>{}}}function Il(e,t){t(null,pn())}var Fl,Ml,sr,dn=he(()=>{"use strict";m();c();p();d();f();Fl={},Ml={existsSync:hl,lstatSync:pn,stat:Il,statSync:yl,readdirSync:wl,readdir:bl,readlinkSync:xl,realpathSync:El,chmodSync:Pl,renameSync:vl,mkdirSync:Tl,rmdirSync:Al,rmSync:Cl,unlinkSync:Sl,watchFile:Rl,unwatchFile:Ol,watch:kl,promises:Fl},sr=Ml});var Di=Ve((If,_l)=>{_l.exports={name:"@prisma/internals",version:"6.19.2",description:"This package is intended for Prisma's internal use",main:"dist/index.js",types:"dist/index.d.ts",repository:{type:"git",url:"https://github.com/prisma/prisma.git",directory:"packages/internals"},homepage:"https://www.prisma.io",author:"Tim Suchanek ",bugs:"https://github.com/prisma/prisma/issues",license:"Apache-2.0",scripts:{dev:"DEV=true tsx helpers/build.ts",build:"tsx helpers/build.ts",test:"dotenv -e ../../.db.env -- jest --silent",prepublishOnly:"pnpm run build"},files:["README.md","dist","!**/libquery_engine*","!dist/get-generators/engines/*","scripts"],devDependencies:{"@babel/helper-validator-identifier":"7.25.9","@opentelemetry/api":"1.9.0","@swc/core":"1.11.5","@swc/jest":"0.2.37","@types/babel__helper-validator-identifier":"7.15.2","@types/jest":"29.5.14","@types/node":"18.19.76","@types/resolve":"1.20.6",archiver:"6.0.2","checkpoint-client":"1.1.33","cli-truncate":"4.0.0",dotenv:"16.5.0",empathic:"2.0.0","escape-string-regexp":"5.0.0",execa:"8.0.1","fast-glob":"3.3.3","find-up":"7.0.0","fp-ts":"2.16.9","fs-extra":"11.3.0","global-directory":"4.0.0",globby:"11.1.0","identifier-regex":"1.0.0","indent-string":"4.0.0","is-windows":"1.0.2","is-wsl":"3.1.0",jest:"29.7.0","jest-junit":"16.0.0",kleur:"4.1.5","mock-stdin":"1.0.0","new-github-issue-url":"0.2.1","node-fetch":"3.3.2","npm-packlist":"5.1.3",open:"7.4.2","p-map":"4.0.0",resolve:"1.22.10","string-width":"7.2.0","strip-indent":"4.0.0","temp-dir":"2.0.0",tempy:"1.0.1","terminal-link":"4.0.0",tmp:"0.2.3","ts-pattern":"5.6.2","ts-toolbelt":"9.6.0",typescript:"5.4.5",yarn:"1.22.22"},dependencies:{"@prisma/config":"workspace:*","@prisma/debug":"workspace:*","@prisma/dmmf":"workspace:*","@prisma/driver-adapter-utils":"workspace:*","@prisma/engines":"workspace:*","@prisma/fetch-engine":"workspace:*","@prisma/generator":"workspace:*","@prisma/generator-helper":"workspace:*","@prisma/get-platform":"workspace:*","@prisma/prisma-schema-wasm":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/schema-engine-wasm":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/schema-files-loader":"workspace:*",arg:"5.0.2",prompts:"2.4.2"},peerDependencies:{typescript:">=5.1.0"},peerDependenciesMeta:{typescript:{optional:!0}},sideEffects:!1}});function Ll(...e){return e.join("/")}function Nl(...e){return e.join("/")}function ql(e){let t=Li(e),r=Ni(e),[n,i]=t.split(".");return{root:"/",dir:r,base:t,ext:i,name:n}}function Li(e){let t=e.split("/");return t[t.length-1]}function Ni(e){return e.split("/").slice(0,-1).join("/")}function jl(e){let t=e.split("/").filter(i=>i!==""&&i!=="."),r=[];for(let i of t)i===".."?r.pop():r.push(i);let n=r.join("/");return e.startsWith("/")?"/"+n:n}var qi,Bl,$l,Ul,Re,gn=he(()=>{"use strict";m();c();p();d();f();qi="/",Bl=":";$l={sep:qi},Ul={basename:Li,delimiter:Bl,dirname:Ni,join:Nl,normalize:jl,parse:ql,posix:$l,resolve:Ll,sep:qi},Re=Ul});var $i=Ve((Dm,ji)=>{"use strict";m();c();p();d();f();ji.exports=e=>{let t=e.match(/^[ \t]*(?=\S)/gm);return t?t.reduce((r,n)=>Math.min(r,n.length),1/0):0}});var Gi=Ve((Xm,Ji)=>{"use strict";m();c();p();d();f();Ji.exports=(e,t=1,r)=>{if(r={indent:" ",includeEmptyLines:!1,...r},typeof e!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof e}\``);if(typeof t!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof t}\``);if(typeof r.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``);if(t===0)return e;let n=r.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return e.replace(n,r.indent.repeat(t))}});var Ki=Ve((Vg,cr)=>{"use strict";m();c();p();d();f();cr.exports=(e={})=>{let t;if(e.repoUrl)t=e.repoUrl;else if(e.user&&e.repo)t=`https://github.com/${e.user}/${e.repo}`;else throw new Error("You need to specify either the `repoUrl` option or both the `user` and `repo` options");let r=new URL(`${t}/issues/new`),n=["body","title","labels","template","milestone","assignee","projects"];for(let i of n){let o=e[i];if(o!==void 0){if(i==="labels"||i==="projects"){if(!Array.isArray(o))throw new TypeError(`The \`${i}\` option should be an array`);o=o.join(",")}r.searchParams.set(i,o)}}return r.toString()};cr.exports.default=cr.exports});var In=Ve((o0,wo)=>{"use strict";m();c();p();d();f();wo.exports=function(){function e(t,r,n,i,o){return tn?n+1:t+1:i===o?r:r+1}return function(t,r){if(t===r)return 0;if(t.length>r.length){var n=t;t=r,r=n}for(var i=t.length,o=r.length;i>0&&t.charCodeAt(i-1)===r.charCodeAt(o-1);)i--,o--;for(var s=0;s{"use strict";m();c();p();d();f()});var To=he(()=>{"use strict";m();c();p();d();f()});var Ko=Ve((Ov,$c)=>{$c.exports={name:"@prisma/engines-version",version:"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7",main:"index.js",types:"index.d.ts",license:"Apache-2.0",author:"Tim Suchanek ",prisma:{enginesVersion:"c2990dca591cba766e3b7ef5d9e8a84796e47ab7"},repository:{type:"git",url:"https://github.com/prisma/engines-wrapper.git",directory:"packages/engines-version"},devDependencies:{"@types/node":"18.19.76",typescript:"4.9.5"},files:["index.js","index.d.ts"],scripts:{build:"tsc -d"}}});var jr,zo=he(()=>{"use strict";m();c();p();d();f();jr=class{events={};on(t,r){return this.events[t]||(this.events[t]=[]),this.events[t].push(r),this}emit(t,...r){return this.events[t]?(this.events[t].forEach(n=>{n(...r)}),!0):!1}}});var ad={};Xe(ad,{DMMF:()=>Bt,Debug:()=>z,Decimal:()=>Fe,Extensions:()=>an,MetricsClient:()=>bt,PrismaClientInitializationError:()=>Q,PrismaClientKnownRequestError:()=>se,PrismaClientRustPanicError:()=>ce,PrismaClientUnknownRequestError:()=>G,PrismaClientValidationError:()=>te,Public:()=>ln,Sql:()=>le,createParam:()=>jo,defineDmmfProperty:()=>Go,deserializeJsonResponse:()=>Pt,deserializeRawResult:()=>Hr,dmmfToRuntimeDataModel:()=>Zi,empty:()=>Yo,getPrismaClient:()=>fa,getRuntime:()=>Ds,join:()=>Ho,makeStrictEnum:()=>ma,makeTypedQueryFactory:()=>Wo,objectEnumValues:()=>kr,raw:()=>jn,serializeJsonQuery:()=>Nr,skip:()=>Lr,sqltag:()=>$n,warnEnvConflicts:()=>void 0,warnOnce:()=>Lt});module.exports=Ea(ad);m();c();p();d();f();var an={};Xe(an,{defineExtension:()=>vi,getExtensionContext:()=>Ti});m();c();p();d();f();m();c();p();d();f();function vi(e){return typeof e=="function"?e:t=>t.$extends(e)}m();c();p();d();f();function Ti(e){return e}var ln={};Xe(ln,{validator:()=>Ai});m();c();p();d();f();m();c();p();d();f();function Ai(...e){return t=>t}m();c();p();d();f();m();c();p();d();f();var or={};Xe(or,{$:()=>ki,bgBlack:()=>il,bgBlue:()=>ll,bgCyan:()=>cl,bgGreen:()=>sl,bgMagenta:()=>ul,bgRed:()=>ol,bgWhite:()=>pl,bgYellow:()=>al,black:()=>el,blue:()=>We,bold:()=>de,cyan:()=>Se,dim:()=>St,gray:()=>It,green:()=>Ot,grey:()=>nl,hidden:()=>Za,inverse:()=>Ya,italic:()=>Ha,magenta:()=>tl,red:()=>Ge,reset:()=>za,strikethrough:()=>Xa,underline:()=>Rt,white:()=>rl,yellow:()=>kt});m();c();p();d();f();var un,Ci,Si,Ri,Oi=!0;typeof y<"u"&&({FORCE_COLOR:un,NODE_DISABLE_COLORS:Ci,NO_COLOR:Si,TERM:Ri}=y.env||{},Oi=y.stdout&&y.stdout.isTTY);var ki={enabled:!Ci&&Si==null&&Ri!=="dumb"&&(un!=null&&un!=="0"||Oi)};function V(e,t){let r=new RegExp(`\\x1b\\[${t}m`,"g"),n=`\x1B[${e}m`,i=`\x1B[${t}m`;return function(o){return!ki.enabled||o==null?o:n+(~(""+o).indexOf(i)?o.replace(r,i+n):o)+i}}var za=V(0,0),de=V(1,22),St=V(2,22),Ha=V(3,23),Rt=V(4,24),Ya=V(7,27),Za=V(8,28),Xa=V(9,29),el=V(30,39),Ge=V(31,39),Ot=V(32,39),kt=V(33,39),We=V(34,39),tl=V(35,39),Se=V(36,39),rl=V(37,39),It=V(90,39),nl=V(90,39),il=V(40,49),ol=V(41,49),sl=V(42,49),al=V(43,49),ll=V(44,49),ul=V(45,49),cl=V(46,49),pl=V(47,49);m();c();p();d();f();var dl=100,Ii=["green","yellow","blue","magenta","cyan","red"],Ft=[],Fi=Date.now(),fl=0,cn=typeof y<"u"?y.env:{};globalThis.DEBUG??=cn.DEBUG??"";globalThis.DEBUG_COLORS??=cn.DEBUG_COLORS?cn.DEBUG_COLORS==="true":!0;var Mt={enable(e){typeof e=="string"&&(globalThis.DEBUG=e)},disable(){let e=globalThis.DEBUG;return globalThis.DEBUG="",e},enabled(e){let t=globalThis.DEBUG.split(",").map(i=>i.replace(/[.+?^${}()|[\]\\]/g,"\\$&")),r=t.some(i=>i===""||i[0]==="-"?!1:e.match(RegExp(i.split("*").join(".*")+"$"))),n=t.some(i=>i===""||i[0]!=="-"?!1:e.match(RegExp(i.slice(1).split("*").join(".*")+"$")));return r&&!n},log:(...e)=>{let[t,r,...n]=e;(console.warn??console.log)(`${t} ${r}`,...n)},formatters:{}};function ml(e){let t={color:Ii[fl++%Ii.length],enabled:Mt.enabled(e),namespace:e,log:Mt.log,extend:()=>{}},r=(...n)=>{let{enabled:i,namespace:o,color:s,log:a}=t;if(n.length!==0&&Ft.push([o,...n]),Ft.length>dl&&Ft.shift(),Mt.enabled(o)||i){let l=n.map(g=>typeof g=="string"?g:gl(g)),u=`+${Date.now()-Fi}ms`;Fi=Date.now(),globalThis.DEBUG_COLORS?a(or[s](de(o)),...l,or[s](u)):a(o,...l,u)}};return new Proxy(r,{get:(n,i)=>t[i],set:(n,i,o)=>t[i]=o})}var z=new Proxy(ml,{get:(e,t)=>Mt[t],set:(e,t,r)=>Mt[t]=r});function gl(e,t=2){let r=new Set;return JSON.stringify(e,(n,i)=>{if(typeof i=="object"&&i!==null){if(r.has(i))return"[Circular *]";r.add(i)}else if(typeof i=="bigint")return i.toString();return i},t)}function Mi(e=7500){let t=Ft.map(([r,...n])=>`${r} ${n.map(i=>typeof i=="string"?i:JSON.stringify(i)).join(" ")}`).join(` +`);return t.length{let r={adapterName:e.adapterName,errorRegistry:t,queryRaw:Oe(t,e.queryRaw.bind(e)),executeRaw:Oe(t,e.executeRaw.bind(e)),executeScript:Oe(t,e.executeScript.bind(e)),dispose:Oe(t,e.dispose.bind(e)),provider:e.provider,startTransaction:async(...n)=>(await Oe(t,e.startTransaction.bind(e))(...n)).map(o=>Jl(t,o))};return e.getConnectionInfo&&(r.getConnectionInfo=Gl(t,e.getConnectionInfo.bind(e))),r},Jl=(e,t)=>({adapterName:t.adapterName,provider:t.provider,options:t.options,queryRaw:Oe(e,t.queryRaw.bind(t)),executeRaw:Oe(e,t.executeRaw.bind(t)),commit:Oe(e,t.commit.bind(t)),rollback:Oe(e,t.rollback.bind(t))});function Oe(e,t){return async(...r)=>{try{return ar(await t(...r))}catch(n){if(Bi("[error@wrapAsync]",n),hn(n))return Ke(n.cause);let i=e.registerNewError(n);return Ke({kind:"GenericJs",id:i})}}}function Gl(e,t){return(...r)=>{try{return ar(t(...r))}catch(n){if(Bi("[error@wrapSync]",n),hn(n))return Ke(n.cause);let i=e.registerNewError(n);return Ke({kind:"GenericJs",id:i})}}}m();c();p();d();f();var Ui=Qe($i(),1);function wn(e){let t=(0,Ui.default)(e);if(t===0)return e;let r=new RegExp(`^[ \\t]{${t}}`,"gm");return e.replace(r,"")}m();c();p();d();f();var Vi="prisma+postgres",Qi=`${Vi}:`;function bn(e){return e?.toString().startsWith(`${Qi}//`)??!1}var Dt={};Xe(Dt,{error:()=>zl,info:()=>Kl,log:()=>Wl,query:()=>Hl,should:()=>Wi,tags:()=>_t,warn:()=>xn});m();c();p();d();f();var _t={error:Ge("prisma:error"),warn:kt("prisma:warn"),info:Se("prisma:info"),query:We("prisma:query")},Wi={warn:()=>!y.env.PRISMA_DISABLE_WARNINGS};function Wl(...e){console.log(...e)}function xn(e,...t){Wi.warn()&&console.warn(`${_t.warn} ${e}`,...t)}function Kl(e,...t){console.info(`${_t.info} ${e}`,...t)}function zl(e,...t){console.error(`${_t.error} ${e}`,...t)}function Hl(e,...t){console.log(`${_t.query} ${e}`,...t)}m();c();p();d();f();function ur(e,t){if(!e)throw new Error(`${t}. This should never happen. If you see this error, please, open an issue at https://pris.ly/prisma-prisma-bug-report`)}m();c();p();d();f();function ze(e,t){throw new Error(t)}m();c();p();d();f();m();c();p();d();f();function En({onlyFirst:e=!1}={}){let r=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(r,e?void 0:"g")}var Yl=En();function ot(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(Yl,"")}m();c();p();d();f();gn();function Pn(e){return Re.sep===Re.posix.sep?e:e.split(Re.sep).join(Re.posix.sep)}m();c();p();d();f();function vn(e,t){return Object.prototype.hasOwnProperty.call(e,t)}m();c();p();d();f();function pr(e,t){let r={};for(let n of Object.keys(e))r[n]=t(e[n],n);return r}m();c();p();d();f();function Tn(e,t){if(e.length===0)return;let r=e[0];for(let n=1;n{zi.has(e)||(zi.add(e),xn(t,...r))};var Q=class e extends Error{clientVersion;errorCode;retryable;constructor(t,r,n){super(t),this.name="PrismaClientInitializationError",this.clientVersion=r,this.errorCode=n,Error.captureStackTrace(e)}get[Symbol.toStringTag](){return"PrismaClientInitializationError"}};ue(Q,"PrismaClientInitializationError");m();c();p();d();f();var se=class extends Error{code;meta;clientVersion;batchRequestIdx;constructor(t,{code:r,clientVersion:n,meta:i,batchRequestIdx:o}){super(t),this.name="PrismaClientKnownRequestError",this.code=r,this.clientVersion=n,this.meta=i,Object.defineProperty(this,"batchRequestIdx",{value:o,enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return"PrismaClientKnownRequestError"}};ue(se,"PrismaClientKnownRequestError");m();c();p();d();f();var ce=class extends Error{clientVersion;constructor(t,r){super(t),this.name="PrismaClientRustPanicError",this.clientVersion=r}get[Symbol.toStringTag](){return"PrismaClientRustPanicError"}};ue(ce,"PrismaClientRustPanicError");m();c();p();d();f();var G=class extends Error{clientVersion;batchRequestIdx;constructor(t,{clientVersion:r,batchRequestIdx:n}){super(t),this.name="PrismaClientUnknownRequestError",this.clientVersion=r,Object.defineProperty(this,"batchRequestIdx",{value:n,writable:!0,enumerable:!1})}get[Symbol.toStringTag](){return"PrismaClientUnknownRequestError"}};ue(G,"PrismaClientUnknownRequestError");m();c();p();d();f();var te=class extends Error{name="PrismaClientValidationError";clientVersion;constructor(t,{clientVersion:r}){super(t),this.clientVersion=r}get[Symbol.toStringTag](){return"PrismaClientValidationError"}};ue(te,"PrismaClientValidationError");m();c();p();d();f();m();c();p();d();f();m();c();p();d();f();var we=class{_map=new Map;get(t){return this._map.get(t)?.value}set(t,r){this._map.set(t,{value:r})}getOrCreate(t,r){let n=this._map.get(t);if(n)return n.value;let i=r();return this.set(t,i),i}};m();c();p();d();f();function De(e){return e.substring(0,1).toLowerCase()+e.substring(1)}m();c();p();d();f();function Yi(e,t){let r={};for(let n of e){let i=n[t];r[i]=n}return r}m();c();p();d();f();function Nt(e){let t;return{get(){return t||(t={value:e()}),t.value}}}m();c();p();d();f();function Zi(e){return{models:An(e.models),enums:An(e.enums),types:An(e.types)}}function An(e){let t={};for(let{name:r,...n}of e)t[r]=n;return t}m();c();p();d();f();function st(e){return e instanceof Date||Object.prototype.toString.call(e)==="[object Date]"}function dr(e){return e.toString()!=="Invalid Date"}m();c();p();d();f();m();c();p();d();f();var at=9e15,Be=1e9,Cn="0123456789abcdef",gr="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",hr="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",Sn={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-at,maxE:at,crypto:!1},ro,ke,D=!0,wr="[DecimalError] ",qe=wr+"Invalid argument: ",no=wr+"Precision limit exceeded",io=wr+"crypto unavailable",oo="[object Decimal]",re=Math.floor,W=Math.pow,Zl=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,Xl=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,eu=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,so=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,fe=1e7,M=7,tu=9007199254740991,ru=gr.length-1,Rn=hr.length-1,R={toStringTag:oo};R.absoluteValue=R.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),I(e)};R.ceil=function(){return I(new this.constructor(this),this.e+1,2)};R.clampedTo=R.clamp=function(e,t){var r,n=this,i=n.constructor;if(e=new i(e),t=new i(t),!e.s||!t.s)return new i(NaN);if(e.gt(t))throw Error(qe+t);return r=n.cmp(e),r<0?e:n.cmp(t)>0?t:new i(n)};R.comparedTo=R.cmp=function(e){var t,r,n,i,o=this,s=o.d,a=(e=new o.constructor(e)).d,l=o.s,u=e.s;if(!s||!a)return!l||!u?NaN:l!==u?l:s===a?0:!s^l<0?1:-1;if(!s[0]||!a[0])return s[0]?l:a[0]?-u:0;if(l!==u)return l;if(o.e!==e.e)return o.e>e.e^l<0?1:-1;for(n=s.length,i=a.length,t=0,r=na[t]^l<0?1:-1;return n===i?0:n>i^l<0?1:-1};R.cosine=R.cos=function(){var e,t,r=this,n=r.constructor;return r.d?r.d[0]?(e=n.precision,t=n.rounding,n.precision=e+Math.max(r.e,r.sd())+M,n.rounding=1,r=nu(n,po(n,r)),n.precision=e,n.rounding=t,I(ke==2||ke==3?r.neg():r,e,t,!0)):new n(1):new n(NaN)};R.cubeRoot=R.cbrt=function(){var e,t,r,n,i,o,s,a,l,u,g=this,h=g.constructor;if(!g.isFinite()||g.isZero())return new h(g);for(D=!1,o=g.s*W(g.s*g,1/3),!o||Math.abs(o)==1/0?(r=Z(g.d),e=g.e,(o=(e-r.length+1)%3)&&(r+=o==1||o==-2?"0":"00"),o=W(r,1/3),e=re((e+1)/3)-(e%3==(e<0?-1:2)),o==1/0?r="5e"+e:(r=o.toExponential(),r=r.slice(0,r.indexOf("e")+1)+e),n=new h(r),n.s=g.s):n=new h(o.toString()),s=(e=h.precision)+3;;)if(a=n,l=a.times(a).times(a),u=l.plus(g),n=$(u.plus(g).times(a),u.plus(l),s+2,1),Z(a.d).slice(0,s)===(r=Z(n.d)).slice(0,s))if(r=r.slice(s-3,s+1),r=="9999"||!i&&r=="4999"){if(!i&&(I(a,e+1,0),a.times(a).times(a).eq(g))){n=a;break}s+=4,i=1}else{(!+r||!+r.slice(1)&&r.charAt(0)=="5")&&(I(n,e+1,1),t=!n.times(n).times(n).eq(g));break}return D=!0,I(n,e,h.rounding,t)};R.decimalPlaces=R.dp=function(){var e,t=this.d,r=NaN;if(t){if(e=t.length-1,r=(e-re(this.e/M))*M,e=t[e],e)for(;e%10==0;e/=10)r--;r<0&&(r=0)}return r};R.dividedBy=R.div=function(e){return $(this,new this.constructor(e))};R.dividedToIntegerBy=R.divToInt=function(e){var t=this,r=t.constructor;return I($(t,new r(e),0,1,1),r.precision,r.rounding)};R.equals=R.eq=function(e){return this.cmp(e)===0};R.floor=function(){return I(new this.constructor(this),this.e+1,3)};R.greaterThan=R.gt=function(e){return this.cmp(e)>0};R.greaterThanOrEqualTo=R.gte=function(e){var t=this.cmp(e);return t==1||t===0};R.hyperbolicCosine=R.cosh=function(){var e,t,r,n,i,o=this,s=o.constructor,a=new s(1);if(!o.isFinite())return new s(o.s?1/0:NaN);if(o.isZero())return a;r=s.precision,n=s.rounding,s.precision=r+Math.max(o.e,o.sd())+4,s.rounding=1,i=o.d.length,i<32?(e=Math.ceil(i/3),t=(1/xr(4,e)).toString()):(e=16,t="2.3283064365386962890625e-10"),o=lt(s,1,o.times(t),new s(1),!0);for(var l,u=e,g=new s(8);u--;)l=o.times(o),o=a.minus(l.times(g.minus(l.times(g))));return I(o,s.precision=r,s.rounding=n,!0)};R.hyperbolicSine=R.sinh=function(){var e,t,r,n,i=this,o=i.constructor;if(!i.isFinite()||i.isZero())return new o(i);if(t=o.precision,r=o.rounding,o.precision=t+Math.max(i.e,i.sd())+4,o.rounding=1,n=i.d.length,n<3)i=lt(o,2,i,i,!0);else{e=1.4*Math.sqrt(n),e=e>16?16:e|0,i=i.times(1/xr(5,e)),i=lt(o,2,i,i,!0);for(var s,a=new o(5),l=new o(16),u=new o(20);e--;)s=i.times(i),i=i.times(a.plus(s.times(l.times(s).plus(u))))}return o.precision=t,o.rounding=r,I(i,t,r,!0)};R.hyperbolicTangent=R.tanh=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+7,n.rounding=1,$(r.sinh(),r.cosh(),n.precision=e,n.rounding=t)):new n(r.s)};R.inverseCosine=R.acos=function(){var e=this,t=e.constructor,r=e.abs().cmp(1),n=t.precision,i=t.rounding;return r!==-1?r===0?e.isNeg()?be(t,n,i):new t(0):new t(NaN):e.isZero()?be(t,n+4,i).times(.5):(t.precision=n+6,t.rounding=1,e=new t(1).minus(e).div(e.plus(1)).sqrt().atan(),t.precision=n,t.rounding=i,e.times(2))};R.inverseHyperbolicCosine=R.acosh=function(){var e,t,r=this,n=r.constructor;return r.lte(1)?new n(r.eq(1)?0:NaN):r.isFinite()?(e=n.precision,t=n.rounding,n.precision=e+Math.max(Math.abs(r.e),r.sd())+4,n.rounding=1,D=!1,r=r.times(r).minus(1).sqrt().plus(r),D=!0,n.precision=e,n.rounding=t,r.ln()):new n(r)};R.inverseHyperbolicSine=R.asinh=function(){var e,t,r=this,n=r.constructor;return!r.isFinite()||r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+2*Math.max(Math.abs(r.e),r.sd())+6,n.rounding=1,D=!1,r=r.times(r).plus(1).sqrt().plus(r),D=!0,n.precision=e,n.rounding=t,r.ln())};R.inverseHyperbolicTangent=R.atanh=function(){var e,t,r,n,i=this,o=i.constructor;return i.isFinite()?i.e>=0?new o(i.abs().eq(1)?i.s/0:i.isZero()?i:NaN):(e=o.precision,t=o.rounding,n=i.sd(),Math.max(n,e)<2*-i.e-1?I(new o(i),e,t,!0):(o.precision=r=n-i.e,i=$(i.plus(1),new o(1).minus(i),r+e,1),o.precision=e+4,o.rounding=1,i=i.ln(),o.precision=e,o.rounding=t,i.times(.5))):new o(NaN)};R.inverseSine=R.asin=function(){var e,t,r,n,i=this,o=i.constructor;return i.isZero()?new o(i):(t=i.abs().cmp(1),r=o.precision,n=o.rounding,t!==-1?t===0?(e=be(o,r+4,n).times(.5),e.s=i.s,e):new o(NaN):(o.precision=r+6,o.rounding=1,i=i.div(new o(1).minus(i.times(i)).sqrt().plus(1)).atan(),o.precision=r,o.rounding=n,i.times(2)))};R.inverseTangent=R.atan=function(){var e,t,r,n,i,o,s,a,l,u=this,g=u.constructor,h=g.precision,T=g.rounding;if(u.isFinite()){if(u.isZero())return new g(u);if(u.abs().eq(1)&&h+4<=Rn)return s=be(g,h+4,T).times(.25),s.s=u.s,s}else{if(!u.s)return new g(NaN);if(h+4<=Rn)return s=be(g,h+4,T).times(.5),s.s=u.s,s}for(g.precision=a=h+10,g.rounding=1,r=Math.min(28,a/M+2|0),e=r;e;--e)u=u.div(u.times(u).plus(1).sqrt().plus(1));for(D=!1,t=Math.ceil(a/M),n=1,l=u.times(u),s=new g(u),i=u;e!==-1;)if(i=i.times(l),o=s.minus(i.div(n+=2)),i=i.times(l),s=o.plus(i.div(n+=2)),s.d[t]!==void 0)for(e=t;s.d[e]===o.d[e]&&e--;);return r&&(s=s.times(2<this.d.length-2};R.isNaN=function(){return!this.s};R.isNegative=R.isNeg=function(){return this.s<0};R.isPositive=R.isPos=function(){return this.s>0};R.isZero=function(){return!!this.d&&this.d[0]===0};R.lessThan=R.lt=function(e){return this.cmp(e)<0};R.lessThanOrEqualTo=R.lte=function(e){return this.cmp(e)<1};R.logarithm=R.log=function(e){var t,r,n,i,o,s,a,l,u=this,g=u.constructor,h=g.precision,T=g.rounding,O=5;if(e==null)e=new g(10),t=!0;else{if(e=new g(e),r=e.d,e.s<0||!r||!r[0]||e.eq(1))return new g(NaN);t=e.eq(10)}if(r=u.d,u.s<0||!r||!r[0]||u.eq(1))return new g(r&&!r[0]?-1/0:u.s!=1?NaN:r?0:1/0);if(t)if(r.length>1)o=!0;else{for(i=r[0];i%10===0;)i/=10;o=i!==1}if(D=!1,a=h+O,s=Ne(u,a),n=t?yr(g,a+10):Ne(e,a),l=$(s,n,a,1),qt(l.d,i=h,T))do if(a+=10,s=Ne(u,a),n=t?yr(g,a+10):Ne(e,a),l=$(s,n,a,1),!o){+Z(l.d).slice(i+1,i+15)+1==1e14&&(l=I(l,h+1,0));break}while(qt(l.d,i+=10,T));return D=!0,I(l,h,T)};R.minus=R.sub=function(e){var t,r,n,i,o,s,a,l,u,g,h,T,O=this,C=O.constructor;if(e=new C(e),!O.d||!e.d)return!O.s||!e.s?e=new C(NaN):O.d?e.s=-e.s:e=new C(e.d||O.s!==e.s?O:NaN),e;if(O.s!=e.s)return e.s=-e.s,O.plus(e);if(u=O.d,T=e.d,a=C.precision,l=C.rounding,!u[0]||!T[0]){if(T[0])e.s=-e.s;else if(u[0])e=new C(O);else return new C(l===3?-0:0);return D?I(e,a,l):e}if(r=re(e.e/M),g=re(O.e/M),u=u.slice(),o=g-r,o){for(h=o<0,h?(t=u,o=-o,s=T.length):(t=T,r=g,s=u.length),n=Math.max(Math.ceil(a/M),s)+2,o>n&&(o=n,t.length=1),t.reverse(),n=o;n--;)t.push(0);t.reverse()}else{for(n=u.length,s=T.length,h=n0;--n)u[s++]=0;for(n=T.length;n>o;){if(u[--n]s?o+1:s+1,i>s&&(i=s,r.length=1),r.reverse();i--;)r.push(0);r.reverse()}for(s=u.length,i=g.length,s-i<0&&(i=s,r=g,g=u,u=r),t=0;i;)t=(u[--i]=u[i]+g[i]+t)/fe|0,u[i]%=fe;for(t&&(u.unshift(t),++n),s=u.length;u[--s]==0;)u.pop();return e.d=u,e.e=br(u,n),D?I(e,a,l):e};R.precision=R.sd=function(e){var t,r=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(qe+e);return r.d?(t=ao(r.d),e&&r.e+1>t&&(t=r.e+1)):t=NaN,t};R.round=function(){var e=this,t=e.constructor;return I(new t(e),e.e+1,t.rounding)};R.sine=R.sin=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+Math.max(r.e,r.sd())+M,n.rounding=1,r=ou(n,po(n,r)),n.precision=e,n.rounding=t,I(ke>2?r.neg():r,e,t,!0)):new n(NaN)};R.squareRoot=R.sqrt=function(){var e,t,r,n,i,o,s=this,a=s.d,l=s.e,u=s.s,g=s.constructor;if(u!==1||!a||!a[0])return new g(!u||u<0&&(!a||a[0])?NaN:a?s:1/0);for(D=!1,u=Math.sqrt(+s),u==0||u==1/0?(t=Z(a),(t.length+l)%2==0&&(t+="0"),u=Math.sqrt(t),l=re((l+1)/2)-(l<0||l%2),u==1/0?t="5e"+l:(t=u.toExponential(),t=t.slice(0,t.indexOf("e")+1)+l),n=new g(t)):n=new g(u.toString()),r=(l=g.precision)+3;;)if(o=n,n=o.plus($(s,o,r+2,1)).times(.5),Z(o.d).slice(0,r)===(t=Z(n.d)).slice(0,r))if(t=t.slice(r-3,r+1),t=="9999"||!i&&t=="4999"){if(!i&&(I(o,l+1,0),o.times(o).eq(s))){n=o;break}r+=4,i=1}else{(!+t||!+t.slice(1)&&t.charAt(0)=="5")&&(I(n,l+1,1),e=!n.times(n).eq(s));break}return D=!0,I(n,l,g.rounding,e)};R.tangent=R.tan=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+10,n.rounding=1,r=r.sin(),r.s=1,r=$(r,new n(1).minus(r.times(r)).sqrt(),e+10,0),n.precision=e,n.rounding=t,I(ke==2||ke==4?r.neg():r,e,t,!0)):new n(NaN)};R.times=R.mul=function(e){var t,r,n,i,o,s,a,l,u,g=this,h=g.constructor,T=g.d,O=(e=new h(e)).d;if(e.s*=g.s,!T||!T[0]||!O||!O[0])return new h(!e.s||T&&!T[0]&&!O||O&&!O[0]&&!T?NaN:!T||!O?e.s/0:e.s*0);for(r=re(g.e/M)+re(e.e/M),l=T.length,u=O.length,l=0;){for(t=0,i=l+n;i>n;)a=o[i]+O[n]*T[i-n-1]+t,o[i--]=a%fe|0,t=a/fe|0;o[i]=(o[i]+t)%fe|0}for(;!o[--s];)o.pop();return t?++r:o.shift(),e.d=o,e.e=br(o,r),D?I(e,h.precision,h.rounding):e};R.toBinary=function(e,t){return kn(this,2,e,t)};R.toDecimalPlaces=R.toDP=function(e,t){var r=this,n=r.constructor;return r=new n(r),e===void 0?r:(ae(e,0,Be),t===void 0?t=n.rounding:ae(t,0,8),I(r,e+r.e+1,t))};R.toExponential=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=xe(n,!0):(ae(e,0,Be),t===void 0?t=i.rounding:ae(t,0,8),n=I(new i(n),e+1,t),r=xe(n,!0,e+1)),n.isNeg()&&!n.isZero()?"-"+r:r};R.toFixed=function(e,t){var r,n,i=this,o=i.constructor;return e===void 0?r=xe(i):(ae(e,0,Be),t===void 0?t=o.rounding:ae(t,0,8),n=I(new o(i),e+i.e+1,t),r=xe(n,!1,e+n.e+1)),i.isNeg()&&!i.isZero()?"-"+r:r};R.toFraction=function(e){var t,r,n,i,o,s,a,l,u,g,h,T,O=this,C=O.d,S=O.constructor;if(!C)return new S(O);if(u=r=new S(1),n=l=new S(0),t=new S(n),o=t.e=ao(C)-O.e-1,s=o%M,t.d[0]=W(10,s<0?M+s:s),e==null)e=o>0?t:u;else{if(a=new S(e),!a.isInt()||a.lt(u))throw Error(qe+a);e=a.gt(t)?o>0?t:u:a}for(D=!1,a=new S(Z(C)),g=S.precision,S.precision=o=C.length*M*2;h=$(a,t,0,1,1),i=r.plus(h.times(n)),i.cmp(e)!=1;)r=n,n=i,i=u,u=l.plus(h.times(i)),l=i,i=t,t=a.minus(h.times(i)),a=i;return i=$(e.minus(r),n,0,1,1),l=l.plus(i.times(u)),r=r.plus(i.times(n)),l.s=u.s=O.s,T=$(u,n,o,1).minus(O).abs().cmp($(l,r,o,1).minus(O).abs())<1?[u,n]:[l,r],S.precision=g,D=!0,T};R.toHexadecimal=R.toHex=function(e,t){return kn(this,16,e,t)};R.toNearest=function(e,t){var r=this,n=r.constructor;if(r=new n(r),e==null){if(!r.d)return r;e=new n(1),t=n.rounding}else{if(e=new n(e),t===void 0?t=n.rounding:ae(t,0,8),!r.d)return e.s?r:e;if(!e.d)return e.s&&(e.s=r.s),e}return e.d[0]?(D=!1,r=$(r,e,0,t,1).times(e),D=!0,I(r)):(e.s=r.s,r=e),r};R.toNumber=function(){return+this};R.toOctal=function(e,t){return kn(this,8,e,t)};R.toPower=R.pow=function(e){var t,r,n,i,o,s,a=this,l=a.constructor,u=+(e=new l(e));if(!a.d||!e.d||!a.d[0]||!e.d[0])return new l(W(+a,u));if(a=new l(a),a.eq(1))return a;if(n=l.precision,o=l.rounding,e.eq(1))return I(a,n,o);if(t=re(e.e/M),t>=e.d.length-1&&(r=u<0?-u:u)<=tu)return i=lo(l,a,r,n),e.s<0?new l(1).div(i):I(i,n,o);if(s=a.s,s<0){if(tl.maxE+1||t0?s/0:0):(D=!1,l.rounding=a.s=1,r=Math.min(12,(t+"").length),i=On(e.times(Ne(a,n+r)),n),i.d&&(i=I(i,n+5,1),qt(i.d,n,o)&&(t=n+10,i=I(On(e.times(Ne(a,t+r)),t),t+5,1),+Z(i.d).slice(n+1,n+15)+1==1e14&&(i=I(i,n+1,0)))),i.s=s,D=!0,l.rounding=o,I(i,n,o))};R.toPrecision=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=xe(n,n.e<=i.toExpNeg||n.e>=i.toExpPos):(ae(e,1,Be),t===void 0?t=i.rounding:ae(t,0,8),n=I(new i(n),e,t),r=xe(n,e<=n.e||n.e<=i.toExpNeg,e)),n.isNeg()&&!n.isZero()?"-"+r:r};R.toSignificantDigits=R.toSD=function(e,t){var r=this,n=r.constructor;return e===void 0?(e=n.precision,t=n.rounding):(ae(e,1,Be),t===void 0?t=n.rounding:ae(t,0,8)),I(new n(r),e,t)};R.toString=function(){var e=this,t=e.constructor,r=xe(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()&&!e.isZero()?"-"+r:r};R.truncated=R.trunc=function(){return I(new this.constructor(this),this.e+1,1)};R.valueOf=R.toJSON=function(){var e=this,t=e.constructor,r=xe(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()?"-"+r:r};function Z(e){var t,r,n,i=e.length-1,o="",s=e[0];if(i>0){for(o+=s,t=1;tr)throw Error(qe+e)}function qt(e,t,r,n){var i,o,s,a;for(o=e[0];o>=10;o/=10)--t;return--t<0?(t+=M,i=0):(i=Math.ceil((t+1)/M),t%=M),o=W(10,M-t),a=e[i]%o|0,n==null?t<3?(t==0?a=a/100|0:t==1&&(a=a/10|0),s=r<4&&a==99999||r>3&&a==49999||a==5e4||a==0):s=(r<4&&a+1==o||r>3&&a+1==o/2)&&(e[i+1]/o/100|0)==W(10,t-2)-1||(a==o/2||a==0)&&(e[i+1]/o/100|0)==0:t<4?(t==0?a=a/1e3|0:t==1?a=a/100|0:t==2&&(a=a/10|0),s=(n||r<4)&&a==9999||!n&&r>3&&a==4999):s=((n||r<4)&&a+1==o||!n&&r>3&&a+1==o/2)&&(e[i+1]/o/1e3|0)==W(10,t-3)-1,s}function fr(e,t,r){for(var n,i=[0],o,s=0,a=e.length;sr-1&&(i[n+1]===void 0&&(i[n+1]=0),i[n+1]+=i[n]/r|0,i[n]%=r)}return i.reverse()}function nu(e,t){var r,n,i;if(t.isZero())return t;n=t.d.length,n<32?(r=Math.ceil(n/3),i=(1/xr(4,r)).toString()):(r=16,i="2.3283064365386962890625e-10"),e.precision+=r,t=lt(e,1,t.times(i),new e(1));for(var o=r;o--;){var s=t.times(t);t=s.times(s).minus(s).times(8).plus(1)}return e.precision-=r,t}var $=function(){function e(n,i,o){var s,a=0,l=n.length;for(n=n.slice();l--;)s=n[l]*i+a,n[l]=s%o|0,a=s/o|0;return a&&n.unshift(a),n}function t(n,i,o,s){var a,l;if(o!=s)l=o>s?1:-1;else for(a=l=0;ai[a]?1:-1;break}return l}function r(n,i,o,s){for(var a=0;o--;)n[o]-=a,a=n[o]1;)n.shift()}return function(n,i,o,s,a,l){var u,g,h,T,O,C,S,F,_,L,k,q,Y,U,At,J,ie,Ae,X,Ze,tr=n.constructor,Zr=n.s==i.s?1:-1,ee=n.d,B=i.d;if(!ee||!ee[0]||!B||!B[0])return new tr(!n.s||!i.s||(ee?B&&ee[0]==B[0]:!B)?NaN:ee&&ee[0]==0||!B?Zr*0:Zr/0);for(l?(O=1,g=n.e-i.e):(l=fe,O=M,g=re(n.e/O)-re(i.e/O)),X=B.length,ie=ee.length,_=new tr(Zr),L=_.d=[],h=0;B[h]==(ee[h]||0);h++);if(B[h]>(ee[h]||0)&&g--,o==null?(U=o=tr.precision,s=tr.rounding):a?U=o+(n.e-i.e)+1:U=o,U<0)L.push(1),C=!0;else{if(U=U/O+2|0,h=0,X==1){for(T=0,B=B[0],U++;(h1&&(B=e(B,T,l),ee=e(ee,T,l),X=B.length,ie=ee.length),J=X,k=ee.slice(0,X),q=k.length;q=l/2&&++Ae;do T=0,u=t(B,k,X,q),u<0?(Y=k[0],X!=q&&(Y=Y*l+(k[1]||0)),T=Y/Ae|0,T>1?(T>=l&&(T=l-1),S=e(B,T,l),F=S.length,q=k.length,u=t(S,k,F,q),u==1&&(T--,r(S,X=10;T/=10)h++;_.e=h+g*O-1,I(_,a?o+_.e+1:o,s,C)}return _}}();function I(e,t,r,n){var i,o,s,a,l,u,g,h,T,O=e.constructor;e:if(t!=null){if(h=e.d,!h)return e;for(i=1,a=h[0];a>=10;a/=10)i++;if(o=t-i,o<0)o+=M,s=t,g=h[T=0],l=g/W(10,i-s-1)%10|0;else if(T=Math.ceil((o+1)/M),a=h.length,T>=a)if(n){for(;a++<=T;)h.push(0);g=l=0,i=1,o%=M,s=o-M+1}else break e;else{for(g=a=h[T],i=1;a>=10;a/=10)i++;o%=M,s=o-M+i,l=s<0?0:g/W(10,i-s-1)%10|0}if(n=n||t<0||h[T+1]!==void 0||(s<0?g:g%W(10,i-s-1)),u=r<4?(l||n)&&(r==0||r==(e.s<0?3:2)):l>5||l==5&&(r==4||n||r==6&&(o>0?s>0?g/W(10,i-s):0:h[T-1])%10&1||r==(e.s<0?8:7)),t<1||!h[0])return h.length=0,u?(t-=e.e+1,h[0]=W(10,(M-t%M)%M),e.e=-t||0):h[0]=e.e=0,e;if(o==0?(h.length=T,a=1,T--):(h.length=T+1,a=W(10,M-o),h[T]=s>0?(g/W(10,i-s)%W(10,s)|0)*a:0),u)for(;;)if(T==0){for(o=1,s=h[0];s>=10;s/=10)o++;for(s=h[0]+=a,a=1;s>=10;s/=10)a++;o!=a&&(e.e++,h[0]==fe&&(h[0]=1));break}else{if(h[T]+=a,h[T]!=fe)break;h[T--]=0,a=1}for(o=h.length;h[--o]===0;)h.pop()}return D&&(e.e>O.maxE?(e.d=null,e.e=NaN):e.e0?o=o.charAt(0)+"."+o.slice(1)+Le(n):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(e.e<0?"e":"e+")+e.e):i<0?(o="0."+Le(-i-1)+o,r&&(n=r-s)>0&&(o+=Le(n))):i>=s?(o+=Le(i+1-s),r&&(n=r-i-1)>0&&(o=o+"."+Le(n))):((n=i+1)0&&(i+1===s&&(o+="."),o+=Le(n))),o}function br(e,t){var r=e[0];for(t*=M;r>=10;r/=10)t++;return t}function yr(e,t,r){if(t>ru)throw D=!0,r&&(e.precision=r),Error(no);return I(new e(gr),t,1,!0)}function be(e,t,r){if(t>Rn)throw Error(no);return I(new e(hr),t,r,!0)}function ao(e){var t=e.length-1,r=t*M+1;if(t=e[t],t){for(;t%10==0;t/=10)r--;for(t=e[0];t>=10;t/=10)r++}return r}function Le(e){for(var t="";e--;)t+="0";return t}function lo(e,t,r,n){var i,o=new e(1),s=Math.ceil(n/M+4);for(D=!1;;){if(r%2&&(o=o.times(t),eo(o.d,s)&&(i=!0)),r=re(r/2),r===0){r=o.d.length-1,i&&o.d[r]===0&&++o.d[r];break}t=t.times(t),eo(t.d,s)}return D=!0,o}function Xi(e){return e.d[e.d.length-1]&1}function uo(e,t,r){for(var n,i,o=new e(t[0]),s=0;++s17)return new T(e.d?e.d[0]?e.s<0?0:1/0:1:e.s?e.s<0?0:e:NaN);for(t==null?(D=!1,l=C):l=t,a=new T(.03125);e.e>-2;)e=e.times(a),h+=5;for(n=Math.log(W(2,h))/Math.LN10*2+5|0,l+=n,r=o=s=new T(1),T.precision=l;;){if(o=I(o.times(e),l,1),r=r.times(++g),a=s.plus($(o,r,l,1)),Z(a.d).slice(0,l)===Z(s.d).slice(0,l)){for(i=h;i--;)s=I(s.times(s),l,1);if(t==null)if(u<3&&qt(s.d,l-n,O,u))T.precision=l+=10,r=o=a=new T(1),g=0,u++;else return I(s,T.precision=C,O,D=!0);else return T.precision=C,s}s=a}}function Ne(e,t){var r,n,i,o,s,a,l,u,g,h,T,O=1,C=10,S=e,F=S.d,_=S.constructor,L=_.rounding,k=_.precision;if(S.s<0||!F||!F[0]||!S.e&&F[0]==1&&F.length==1)return new _(F&&!F[0]?-1/0:S.s!=1?NaN:F?0:S);if(t==null?(D=!1,g=k):g=t,_.precision=g+=C,r=Z(F),n=r.charAt(0),Math.abs(o=S.e)<15e14){for(;n<7&&n!=1||n==1&&r.charAt(1)>3;)S=S.times(e),r=Z(S.d),n=r.charAt(0),O++;o=S.e,n>1?(S=new _("0."+r),o++):S=new _(n+"."+r.slice(1))}else return u=yr(_,g+2,k).times(o+""),S=Ne(new _(n+"."+r.slice(1)),g-C).plus(u),_.precision=k,t==null?I(S,k,L,D=!0):S;for(h=S,l=s=S=$(S.minus(1),S.plus(1),g,1),T=I(S.times(S),g,1),i=3;;){if(s=I(s.times(T),g,1),u=l.plus($(s,new _(i),g,1)),Z(u.d).slice(0,g)===Z(l.d).slice(0,g))if(l=l.times(2),o!==0&&(l=l.plus(yr(_,g+2,k).times(o+""))),l=$(l,new _(O),g,1),t==null)if(qt(l.d,g-C,L,a))_.precision=g+=C,u=s=S=$(h.minus(1),h.plus(1),g,1),T=I(S.times(S),g,1),i=a=1;else return I(l,_.precision=k,L,D=!0);else return _.precision=k,l;l=u,i+=2}}function co(e){return String(e.s*e.s/0)}function mr(e,t){var r,n,i;for((r=t.indexOf("."))>-1&&(t=t.replace(".","")),(n=t.search(/e/i))>0?(r<0&&(r=n),r+=+t.slice(n+1),t=t.substring(0,n)):r<0&&(r=t.length),n=0;t.charCodeAt(n)===48;n++);for(i=t.length;t.charCodeAt(i-1)===48;--i);if(t=t.slice(n,i),t){if(i-=n,e.e=r=r-n-1,e.d=[],n=(r+1)%M,r<0&&(n+=M),ne.constructor.maxE?(e.d=null,e.e=NaN):e.e-1){if(t=t.replace(/(\d)_(?=\d)/g,"$1"),so.test(t))return mr(e,t)}else if(t==="Infinity"||t==="NaN")return+t||(e.s=NaN),e.e=NaN,e.d=null,e;if(Xl.test(t))r=16,t=t.toLowerCase();else if(Zl.test(t))r=2;else if(eu.test(t))r=8;else throw Error(qe+t);for(o=t.search(/p/i),o>0?(l=+t.slice(o+1),t=t.substring(2,o)):t=t.slice(2),o=t.indexOf("."),s=o>=0,n=e.constructor,s&&(t=t.replace(".",""),a=t.length,o=a-o,i=lo(n,new n(r),o,o*2)),u=fr(t,r,fe),g=u.length-1,o=g;u[o]===0;--o)u.pop();return o<0?new n(e.s*0):(e.e=br(u,g),e.d=u,D=!1,s&&(e=$(e,i,a*4)),l&&(e=e.times(Math.abs(l)<54?W(2,l):Ie.pow(2,l))),D=!0,e)}function ou(e,t){var r,n=t.d.length;if(n<3)return t.isZero()?t:lt(e,2,t,t);r=1.4*Math.sqrt(n),r=r>16?16:r|0,t=t.times(1/xr(5,r)),t=lt(e,2,t,t);for(var i,o=new e(5),s=new e(16),a=new e(20);r--;)i=t.times(t),t=t.times(o.plus(i.times(s.times(i).minus(a))));return t}function lt(e,t,r,n,i){var o,s,a,l,u=1,g=e.precision,h=Math.ceil(g/M);for(D=!1,l=r.times(r),a=new e(n);;){if(s=$(a.times(l),new e(t++*t++),g,1),a=i?n.plus(s):n.minus(s),n=$(s.times(l),new e(t++*t++),g,1),s=a.plus(n),s.d[h]!==void 0){for(o=h;s.d[o]===a.d[o]&&o--;);if(o==-1)break}o=a,a=n,n=s,s=o,u++}return D=!0,s.d.length=h+1,s}function xr(e,t){for(var r=e;--t;)r*=e;return r}function po(e,t){var r,n=t.s<0,i=be(e,e.precision,1),o=i.times(.5);if(t=t.abs(),t.lte(o))return ke=n?4:1,t;if(r=t.divToInt(i),r.isZero())ke=n?3:2;else{if(t=t.minus(r.times(i)),t.lte(o))return ke=Xi(r)?n?2:3:n?4:1,t;ke=Xi(r)?n?1:4:n?3:2}return t.minus(i).abs()}function kn(e,t,r,n){var i,o,s,a,l,u,g,h,T,O=e.constructor,C=r!==void 0;if(C?(ae(r,1,Be),n===void 0?n=O.rounding:ae(n,0,8)):(r=O.precision,n=O.rounding),!e.isFinite())g=co(e);else{for(g=xe(e),s=g.indexOf("."),C?(i=2,t==16?r=r*4-3:t==8&&(r=r*3-2)):i=t,s>=0&&(g=g.replace(".",""),T=new O(1),T.e=g.length-s,T.d=fr(xe(T),10,i),T.e=T.d.length),h=fr(g,10,i),o=l=h.length;h[--l]==0;)h.pop();if(!h[0])g=C?"0p+0":"0";else{if(s<0?o--:(e=new O(e),e.d=h,e.e=o,e=$(e,T,r,n,0,i),h=e.d,o=e.e,u=ro),s=h[r],a=i/2,u=u||h[r+1]!==void 0,u=n<4?(s!==void 0||u)&&(n===0||n===(e.s<0?3:2)):s>a||s===a&&(n===4||u||n===6&&h[r-1]&1||n===(e.s<0?8:7)),h.length=r,u)for(;++h[--r]>i-1;)h[r]=0,r||(++o,h.unshift(1));for(l=h.length;!h[l-1];--l);for(s=0,g="";s1)if(t==16||t==8){for(s=t==16?4:3,--l;l%s;l++)g+="0";for(h=fr(g,i,t),l=h.length;!h[l-1];--l);for(s=1,g="1.";sl)for(o-=l;o--;)g+="0";else ot)return e.length=t,!0}function su(e){return new this(e).abs()}function au(e){return new this(e).acos()}function lu(e){return new this(e).acosh()}function uu(e,t){return new this(e).plus(t)}function cu(e){return new this(e).asin()}function pu(e){return new this(e).asinh()}function du(e){return new this(e).atan()}function fu(e){return new this(e).atanh()}function mu(e,t){e=new this(e),t=new this(t);var r,n=this.precision,i=this.rounding,o=n+4;return!e.s||!t.s?r=new this(NaN):!e.d&&!t.d?(r=be(this,o,1).times(t.s>0?.25:.75),r.s=e.s):!t.d||e.isZero()?(r=t.s<0?be(this,n,i):new this(0),r.s=e.s):!e.d||t.isZero()?(r=be(this,o,1).times(.5),r.s=e.s):t.s<0?(this.precision=o,this.rounding=1,r=this.atan($(e,t,o,1)),t=be(this,o,1),this.precision=n,this.rounding=i,r=e.s<0?r.minus(t):r.plus(t)):r=this.atan($(e,t,o,1)),r}function gu(e){return new this(e).cbrt()}function hu(e){return I(e=new this(e),e.e+1,2)}function yu(e,t,r){return new this(e).clamp(t,r)}function wu(e){if(!e||typeof e!="object")throw Error(wr+"Object expected");var t,r,n,i=e.defaults===!0,o=["precision",1,Be,"rounding",0,8,"toExpNeg",-at,0,"toExpPos",0,at,"maxE",0,at,"minE",-at,0,"modulo",0,9];for(t=0;t=o[t+1]&&n<=o[t+2])this[r]=n;else throw Error(qe+r+": "+n);if(r="crypto",i&&(this[r]=Sn[r]),(n=e[r])!==void 0)if(n===!0||n===!1||n===0||n===1)if(n)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))this[r]=!0;else throw Error(io);else this[r]=!1;else throw Error(qe+r+": "+n);return this}function bu(e){return new this(e).cos()}function xu(e){return new this(e).cosh()}function fo(e){var t,r,n;function i(o){var s,a,l,u=this;if(!(u instanceof i))return new i(o);if(u.constructor=i,to(o)){u.s=o.s,D?!o.d||o.e>i.maxE?(u.e=NaN,u.d=null):o.e=10;a/=10)s++;D?s>i.maxE?(u.e=NaN,u.d=null):s=429e7?t[o]=crypto.getRandomValues(new Uint32Array(1))[0]:a[o++]=i%1e7;else if(crypto.randomBytes){for(t=crypto.randomBytes(n*=4);o=214e7?crypto.randomBytes(4).copy(t,o):(a.push(i%1e7),o+=4);o=n/4}else throw Error(io);else for(;o=10;i/=10)n++;nct,datamodelEnumToSchemaEnum:()=>Ju});m();c();p();d();f();m();c();p();d();f();function Ju(e){return{name:e.name,values:e.values.map(t=>t.name)}}m();c();p();d();f();var ct=(k=>(k.findUnique="findUnique",k.findUniqueOrThrow="findUniqueOrThrow",k.findFirst="findFirst",k.findFirstOrThrow="findFirstOrThrow",k.findMany="findMany",k.create="create",k.createMany="createMany",k.createManyAndReturn="createManyAndReturn",k.update="update",k.updateMany="updateMany",k.updateManyAndReturn="updateManyAndReturn",k.upsert="upsert",k.delete="delete",k.deleteMany="deleteMany",k.groupBy="groupBy",k.count="count",k.aggregate="aggregate",k.findRaw="findRaw",k.aggregateRaw="aggregateRaw",k))(ct||{});var yo=Qe(Gi());m();c();p();d();f();dn();m();c();p();d();f();m();c();p();d();f();m();c();p();d();f();var mo={keyword:Se,entity:Se,value:e=>de(We(e)),punctuation:We,directive:Se,function:Se,variable:e=>de(We(e)),string:e=>de(Ot(e)),boolean:kt,number:Se,comment:It};var Gu=e=>e,Er={},Wu=0,N={manual:Er.Prism&&Er.Prism.manual,disableWorkerMessageHandler:Er.Prism&&Er.Prism.disableWorkerMessageHandler,util:{encode:function(e){if(e instanceof me){let t=e;return new me(t.type,N.util.encode(t.content),t.alias)}else return Array.isArray(e)?e.map(N.util.encode):e.replace(/&/g,"&").replace(/e.length)return;if(Ae instanceof me)continue;if(Y&&J!=t.length-1){L.lastIndex=ie;var h=L.exec(e);if(!h)break;var g=h.index+(q?h[1].length:0),T=h.index+h[0].length,a=J,l=ie;for(let B=t.length;a=l&&(++J,ie=l);if(t[J]instanceof me)continue;u=a-J,Ae=e.slice(ie,l),h.index-=ie}else{L.lastIndex=0;var h=L.exec(Ae),u=1}if(!h){if(o)break;continue}q&&(U=h[1]?h[1].length:0);var g=h.index+U,h=h[0].slice(U),T=g+h.length,O=Ae.slice(0,g),C=Ae.slice(T);let X=[J,u];O&&(++J,ie+=O.length,X.push(O));let Ze=new me(S,k?N.tokenize(h,k):h,At,h,Y);if(X.push(Ze),C&&X.push(C),Array.prototype.splice.apply(t,X),u!=1&&N.matchGrammar(e,t,r,J,ie,!0,S),o)break}}}},tokenize:function(e,t){let r=[e],n=t.rest;if(n){for(let i in n)t[i]=n[i];delete t.rest}return N.matchGrammar(e,r,t,0,0,!1),r},hooks:{all:{},add:function(e,t){let r=N.hooks.all;r[e]=r[e]||[],r[e].push(t)},run:function(e,t){let r=N.hooks.all[e];if(!(!r||!r.length))for(var n=0,i;i=r[n++];)i(t)}},Token:me};N.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/((?:\b(?:class|interface|extends|implements|trait|instanceof|new)\s+)|(?:catch\s+\())[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/,boolean:/\b(?:true|false)\b/,function:/\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&?|\|\|?|\?|\*|\/|~|\^|%/,punctuation:/[{}[\];(),.:]/};N.languages.javascript=N.languages.extend("clike",{"class-name":[N.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])[_$A-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\.(?:prototype|constructor))/,lookbehind:!0}],keyword:[{pattern:/((?:^|})\s*)(?:catch|finally)\b/,lookbehind:!0},{pattern:/(^|[^.])\b(?:as|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],number:/\b(?:(?:0[xX](?:[\dA-Fa-f](?:_[\dA-Fa-f])?)+|0[bB](?:[01](?:_[01])?)+|0[oO](?:[0-7](?:_[0-7])?)+)n?|(?:\d(?:_\d)?)+n|NaN|Infinity)\b|(?:\b(?:\d(?:_\d)?)+\.?(?:\d(?:_\d)?)*|\B\.(?:\d(?:_\d)?)+)(?:[Ee][+-]?(?:\d(?:_\d)?)+)?/,function:/[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,operator:/-[-=]?|\+[+=]?|!=?=?|<>?>?=?|=(?:==?|>)?|&[&=]?|\|[|=]?|\*\*?=?|\/=?|~|\^=?|%=?|\?|\.{3}/});N.languages.javascript["class-name"][0].pattern=/(\b(?:class|interface|extends|implements|instanceof|new)\s+)[\w.\\]+/;N.languages.insertBefore("javascript","keyword",{regex:{pattern:/((?:^|[^$\w\xA0-\uFFFF."'\])\s])\s*)\/(\[(?:[^\]\\\r\n]|\\.)*]|\\.|[^/\\\[\r\n])+\/[gimyus]{0,6}(?=\s*($|[\r\n,.;})\]]))/,lookbehind:!0,greedy:!0},"function-variable":{pattern:/[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)?\s*\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\))/,lookbehind:!0,inside:N.languages.javascript},{pattern:/[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*=>)/i,inside:N.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*=>)/,lookbehind:!0,inside:N.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*\s*)\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*\{)/,lookbehind:!0,inside:N.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/});N.languages.markup&&N.languages.markup.tag.addInlined("script","javascript");N.languages.js=N.languages.javascript;N.languages.typescript=N.languages.extend("javascript",{keyword:/\b(?:abstract|as|async|await|break|case|catch|class|const|constructor|continue|debugger|declare|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|is|keyof|let|module|namespace|new|null|of|package|private|protected|public|readonly|return|require|set|static|super|switch|this|throw|try|type|typeof|var|void|while|with|yield)\b/,builtin:/\b(?:string|Function|any|number|boolean|Array|symbol|console|Promise|unknown|never)\b/});N.languages.ts=N.languages.typescript;function me(e,t,r,n,i){this.type=e,this.content=t,this.alias=r,this.length=(n||"").length|0,this.greedy=!!i}me.stringify=function(e,t){return typeof e=="string"?e:Array.isArray(e)?e.map(function(r){return me.stringify(r,t)}).join(""):Ku(e.type)(e.content)};function Ku(e){return mo[e]||Gu}function go(e){return zu(e,N.languages.javascript)}function zu(e,t){return N.tokenize(e,t).map(n=>me.stringify(n)).join("")}m();c();p();d();f();function ho(e){return wn(e)}var Pr=class e{firstLineNumber;lines;static read(t){let r;try{r=sr.readFileSync(t,"utf-8")}catch{return null}return e.fromContent(r)}static fromContent(t){let r=t.split(/\r?\n/);return new e(1,r)}constructor(t,r){this.firstLineNumber=t,this.lines=r}get lastLineNumber(){return this.firstLineNumber+this.lines.length-1}mapLineAt(t,r){if(tthis.lines.length+this.firstLineNumber)return this;let n=t-this.firstLineNumber,i=[...this.lines];return i[n]=r(i[n]),new e(this.firstLineNumber,i)}mapLines(t){return new e(this.firstLineNumber,this.lines.map((r,n)=>t(r,this.firstLineNumber+n)))}lineAt(t){return this.lines[t-this.firstLineNumber]}prependSymbolAt(t,r){return this.mapLines((n,i)=>i===t?`${r} ${n}`:` ${n}`)}slice(t,r){let n=this.lines.slice(t-1,r).join(` +`);return new e(t,ho(n).split(` +`))}highlight(){let t=go(this.toString());return new e(this.firstLineNumber,t.split(` +`))}toString(){return this.lines.join(` +`)}};var Hu={red:Ge,gray:It,dim:St,bold:de,underline:Rt,highlightSource:e=>e.highlight()},Yu={red:e=>e,gray:e=>e,dim:e=>e,bold:e=>e,underline:e=>e,highlightSource:e=>e};function Zu({message:e,originalMethod:t,isPanic:r,callArguments:n}){return{functionName:`prisma.${t}()`,message:e,isPanic:r??!1,callArguments:n}}function Xu({callsite:e,message:t,originalMethod:r,isPanic:n,callArguments:i},o){let s=Zu({message:t,originalMethod:r,isPanic:n,callArguments:i});if(!e||typeof window<"u"||y.env.NODE_ENV==="production")return s;let a=e.getLocation();if(!a||!a.lineNumber||!a.columnNumber)return s;let l=Math.max(1,a.lineNumber-3),u=Pr.read(a.fileName)?.slice(l,a.lineNumber),g=u?.lineAt(a.lineNumber);if(u&&g){let h=tc(g),T=ec(g);if(!T)return s;s.functionName=`${T.code})`,s.location=a,n||(u=u.mapLineAt(a.lineNumber,C=>C.slice(0,T.openingBraceIndex))),u=o.highlightSource(u);let O=String(u.lastLineNumber).length;if(s.contextLines=u.mapLines((C,S)=>o.gray(String(S).padStart(O))+" "+C).mapLines(C=>o.dim(C)).prependSymbolAt(a.lineNumber,o.bold(o.red("\u2192"))),i){let C=h+O+1;C+=2,s.callArguments=(0,yo.default)(i,C).slice(C)}}return s}function ec(e){let t=Object.keys(ct).join("|"),n=new RegExp(String.raw`\.(${t})\(`).exec(e);if(n){let i=n.index+n[0].length,o=e.lastIndexOf(" ",n.index)+1;return{code:e.slice(o,i),openingBraceIndex:i}}return null}function tc(e){let t=0;for(let r=0;r"Unknown error")}function Po(e){return e.errors.flatMap(t=>t.kind==="Union"?Po(t):[t])}function ic(e){let t=new Map,r=[];for(let n of e){if(n.kind!=="InvalidArgumentType"){r.push(n);continue}let i=`${n.selectionPath.join(".")}:${n.argumentPath.join(".")}`,o=t.get(i);o?t.set(i,{...n,argument:{...n.argument,typeNames:oc(o.argument.typeNames,n.argument.typeNames)}}):t.set(i,n)}return r.push(...t.values()),r}function oc(e,t){return[...new Set(e.concat(t))]}function sc(e){return Tn(e,(t,r)=>{let n=bo(t),i=bo(r);return n!==i?n-i:xo(t)-xo(r)})}function bo(e){let t=0;return Array.isArray(e.selectionPath)&&(t+=e.selectionPath.length),Array.isArray(e.argumentPath)&&(t+=e.argumentPath.length),t}function xo(e){switch(e.kind){case"InvalidArgumentValue":case"ValueTooLarge":return 20;case"InvalidArgumentType":return 10;case"RequiredArgumentMissing":return-10;default:return 0}}m();c();p();d();f();var pe=class{constructor(t,r){this.name=t;this.value=r}isRequired=!1;makeRequired(){return this.isRequired=!0,this}write(t){let{colors:{green:r}}=t.context;t.addMarginSymbol(r(this.isRequired?"+":"?")),t.write(r(this.name)),this.isRequired||t.write(r("?")),t.write(r(": ")),typeof this.value=="string"?t.write(r(this.value)):t.write(this.value)}};m();c();p();d();f();m();c();p();d();f();To();m();c();p();d();f();var pt=class{constructor(t=0,r){this.context=r;this.currentIndent=t}lines=[];currentLine="";currentIndent=0;marginSymbol;afterNextNewLineCallback;write(t){return typeof t=="string"?this.currentLine+=t:t.write(this),this}writeJoined(t,r,n=(i,o)=>o.write(i)){let i=r.length-1;for(let o=0;o0&&this.currentIndent--,this}addMarginSymbol(t){return this.marginSymbol=t,this}toString(){return this.lines.concat(this.indentedCurrentLine()).join(` +`)}getCurrentLineLength(){return this.currentLine.length}indentedCurrentLine(){let t=this.currentLine.padStart(this.currentLine.length+2*this.currentIndent);return this.marginSymbol?this.marginSymbol+t.slice(1):t}};vo();m();c();p();d();f();m();c();p();d();f();var Ar=class{constructor(t){this.value=t}write(t){t.write(this.value)}markAsError(){this.value.markAsError()}};m();c();p();d();f();var Cr=e=>e,Sr={bold:Cr,red:Cr,green:Cr,dim:Cr,enabled:!1},Ao={bold:de,red:Ge,green:Ot,dim:St,enabled:!0},dt={write(e){e.writeLine(",")}};m();c();p();d();f();var Ee=class{constructor(t){this.contents=t}isUnderlined=!1;color=t=>t;underline(){return this.isUnderlined=!0,this}setColor(t){return this.color=t,this}write(t){let r=t.getCurrentLineLength();t.write(this.color(this.contents)),this.isUnderlined&&t.afterNextNewline(()=>{t.write(" ".repeat(r)).writeLine(this.color("~".repeat(this.contents.length)))})}};m();c();p();d();f();var je=class{hasError=!1;markAsError(){return this.hasError=!0,this}};var ft=class extends je{items=[];addItem(t){return this.items.push(new Ar(t)),this}getField(t){return this.items[t]}getPrintWidth(){return this.items.length===0?2:Math.max(...this.items.map(r=>r.value.getPrintWidth()))+2}write(t){if(this.items.length===0){this.writeEmpty(t);return}this.writeWithItems(t)}writeEmpty(t){let r=new Ee("[]");this.hasError&&r.setColor(t.context.colors.red).underline(),t.write(r)}writeWithItems(t){let{colors:r}=t.context;t.writeLine("[").withIndent(()=>t.writeJoined(dt,this.items).newLine()).write("]"),this.hasError&&t.afterNextNewline(()=>{t.writeLine(r.red("~".repeat(this.getPrintWidth())))})}asObject(){}};var mt=class e extends je{fields={};suggestions=[];addField(t){this.fields[t.name]=t}addSuggestion(t){this.suggestions.push(t)}getField(t){return this.fields[t]}getDeepField(t){let[r,...n]=t,i=this.getField(r);if(!i)return;let o=i;for(let s of n){let a;if(o.value instanceof e?a=o.value.getField(s):o.value instanceof ft&&(a=o.value.getField(Number(s))),!a)return;o=a}return o}getDeepFieldValue(t){return t.length===0?this:this.getDeepField(t)?.value}hasField(t){return!!this.getField(t)}removeAllFields(){this.fields={}}removeField(t){delete this.fields[t]}getFields(){return this.fields}isEmpty(){return Object.keys(this.fields).length===0}getFieldValue(t){return this.getField(t)?.value}getDeepSubSelectionValue(t){let r=this;for(let n of t){if(!(r instanceof e))return;let i=r.getSubSelectionValue(n);if(!i)return;r=i}return r}getDeepSelectionParent(t){let r=this.getSelectionParent();if(!r)return;let n=r;for(let i of t){let o=n.value.getFieldValue(i);if(!o||!(o instanceof e))return;let s=o.getSelectionParent();if(!s)return;n=s}return n}getSelectionParent(){let t=this.getField("select")?.value.asObject();if(t)return{kind:"select",value:t};let r=this.getField("include")?.value.asObject();if(r)return{kind:"include",value:r}}getSubSelectionValue(t){return this.getSelectionParent()?.value.fields[t].value}getPrintWidth(){let t=Object.values(this.fields);return t.length==0?2:Math.max(...t.map(n=>n.getPrintWidth()))+2}write(t){let r=Object.values(this.fields);if(r.length===0&&this.suggestions.length===0){this.writeEmpty(t);return}this.writeWithContents(t,r)}asObject(){return this}writeEmpty(t){let r=new Ee("{}");this.hasError&&r.setColor(t.context.colors.red).underline(),t.write(r)}writeWithContents(t,r){t.writeLine("{").withIndent(()=>{t.writeJoined(dt,[...r,...this.suggestions]).newLine()}),t.write("}"),this.hasError&&t.afterNextNewline(()=>{t.writeLine(t.context.colors.red("~".repeat(this.getPrintWidth())))})}};m();c();p();d();f();var H=class extends je{constructor(r){super();this.text=r}getPrintWidth(){return this.text.length}write(r){let n=new Ee(this.text);this.hasError&&n.underline().setColor(r.context.colors.red),r.write(n)}asObject(){}};m();c();p();d();f();var jt=class{fields=[];addField(t,r){return this.fields.push({write(n){let{green:i,dim:o}=n.context.colors;n.write(i(o(`${t}: ${r}`))).addMarginSymbol(i(o("+")))}}),this}write(t){let{colors:{green:r}}=t.context;t.writeLine(r("{")).withIndent(()=>{t.writeJoined(dt,this.fields).newLine()}).write(r("}")).addMarginSymbol(r("+"))}};function Tr(e,t,r){switch(e.kind){case"MutuallyExclusiveFields":ac(e,t);break;case"IncludeOnScalar":lc(e,t);break;case"EmptySelection":uc(e,t,r);break;case"UnknownSelectionField":fc(e,t);break;case"InvalidSelectionValue":mc(e,t);break;case"UnknownArgument":gc(e,t);break;case"UnknownInputField":hc(e,t);break;case"RequiredArgumentMissing":yc(e,t);break;case"InvalidArgumentType":wc(e,t);break;case"InvalidArgumentValue":bc(e,t);break;case"ValueTooLarge":xc(e,t);break;case"SomeFieldsMissing":Ec(e,t);break;case"TooManyFieldsGiven":Pc(e,t);break;case"Union":Eo(e,t,r);break;default:throw new Error("not implemented: "+e.kind)}}function ac(e,t){let r=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();r&&(r.getField(e.firstField)?.markAsError(),r.getField(e.secondField)?.markAsError()),t.addErrorMessage(n=>`Please ${n.bold("either")} use ${n.green(`\`${e.firstField}\``)} or ${n.green(`\`${e.secondField}\``)}, but ${n.red("not both")} at the same time.`)}function lc(e,t){let[r,n]=gt(e.selectionPath),i=e.outputType,o=t.arguments.getDeepSelectionParent(r)?.value;if(o&&(o.getField(n)?.markAsError(),i))for(let s of i.fields)s.isRelation&&o.addSuggestion(new pe(s.name,"true"));t.addErrorMessage(s=>{let a=`Invalid scalar field ${s.red(`\`${n}\``)} for ${s.bold("include")} statement`;return i?a+=` on model ${s.bold(i.name)}. ${$t(s)}`:a+=".",a+=` +Note that ${s.bold("include")} statements only accept relation fields.`,a})}function uc(e,t,r){let n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(n){let i=n.getField("omit")?.value.asObject();if(i){cc(e,t,i);return}if(n.hasField("select")){pc(e,t);return}}if(r?.[De(e.outputType.name)]){dc(e,t);return}t.addErrorMessage(()=>`Unknown field at "${e.selectionPath.join(".")} selection"`)}function cc(e,t,r){r.removeAllFields();for(let n of e.outputType.fields)r.addSuggestion(new pe(n.name,"false"));t.addErrorMessage(n=>`The ${n.red("omit")} statement includes every field of the model ${n.bold(e.outputType.name)}. At least one field must be included in the result`)}function pc(e,t){let r=e.outputType,n=t.arguments.getDeepSelectionParent(e.selectionPath)?.value,i=n?.isEmpty()??!1;n&&(n.removeAllFields(),Oo(n,r)),t.addErrorMessage(o=>i?`The ${o.red("`select`")} statement for type ${o.bold(r.name)} must not be empty. ${$t(o)}`:`The ${o.red("`select`")} statement for type ${o.bold(r.name)} needs ${o.bold("at least one truthy value")}.`)}function dc(e,t){let r=new jt;for(let i of e.outputType.fields)i.isRelation||r.addField(i.name,"false");let n=new pe("omit",r).makeRequired();if(e.selectionPath.length===0)t.arguments.addSuggestion(n);else{let[i,o]=gt(e.selectionPath),a=t.arguments.getDeepSelectionParent(i)?.value.asObject()?.getField(o);if(a){let l=a?.value.asObject()??new mt;l.addSuggestion(n),a.value=l}}t.addErrorMessage(i=>`The global ${i.red("omit")} configuration excludes every field of the model ${i.bold(e.outputType.name)}. At least one field must be included in the result`)}function fc(e,t){let r=ko(e.selectionPath,t);if(r.parentKind!=="unknown"){r.field.markAsError();let n=r.parent;switch(r.parentKind){case"select":Oo(n,e.outputType);break;case"include":vc(n,e.outputType);break;case"omit":Tc(n,e.outputType);break}}t.addErrorMessage(n=>{let i=[`Unknown field ${n.red(`\`${r.fieldName}\``)}`];return r.parentKind!=="unknown"&&i.push(`for ${n.bold(r.parentKind)} statement`),i.push(`on model ${n.bold(`\`${e.outputType.name}\``)}.`),i.push($t(n)),i.join(" ")})}function mc(e,t){let r=ko(e.selectionPath,t);r.parentKind!=="unknown"&&r.field.value.markAsError(),t.addErrorMessage(n=>`Invalid value for selection field \`${n.red(r.fieldName)}\`: ${e.underlyingError}`)}function gc(e,t){let r=e.argumentPath[0],n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&(n.getField(r)?.markAsError(),Ac(n,e.arguments)),t.addErrorMessage(i=>So(i,r,e.arguments.map(o=>o.name)))}function hc(e,t){let[r,n]=gt(e.argumentPath),i=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(i){i.getDeepField(e.argumentPath)?.markAsError();let o=i.getDeepFieldValue(r)?.asObject();o&&Io(o,e.inputType)}t.addErrorMessage(o=>So(o,n,e.inputType.fields.map(s=>s.name)))}function So(e,t,r){let n=[`Unknown argument \`${e.red(t)}\`.`],i=Sc(t,r);return i&&n.push(`Did you mean \`${e.green(i)}\`?`),r.length>0&&n.push($t(e)),n.join(" ")}function yc(e,t){let r;t.addErrorMessage(l=>r?.value instanceof H&&r.value.text==="null"?`Argument \`${l.green(o)}\` must not be ${l.red("null")}.`:`Argument \`${l.green(o)}\` is missing.`);let n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(!n)return;let[i,o]=gt(e.argumentPath),s=new jt,a=n.getDeepFieldValue(i)?.asObject();if(a){if(r=a.getField(o),r&&a.removeField(o),e.inputTypes.length===1&&e.inputTypes[0].kind==="object"){for(let l of e.inputTypes[0].fields)s.addField(l.name,l.typeNames.join(" | "));a.addSuggestion(new pe(o,s).makeRequired())}else{let l=e.inputTypes.map(Ro).join(" | ");a.addSuggestion(new pe(o,l).makeRequired())}if(e.dependentArgumentPath){n.getDeepField(e.dependentArgumentPath)?.markAsError();let[,l]=gt(e.dependentArgumentPath);t.addErrorMessage(u=>`Argument \`${u.green(o)}\` is required because argument \`${u.green(l)}\` was provided.`)}}}function Ro(e){return e.kind==="list"?`${Ro(e.elementType)}[]`:e.name}function wc(e,t){let r=e.argument.name,n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&n.getDeepFieldValue(e.argumentPath)?.markAsError(),t.addErrorMessage(i=>{let o=Rr("or",e.argument.typeNames.map(s=>i.green(s)));return`Argument \`${i.bold(r)}\`: Invalid value provided. Expected ${o}, provided ${i.red(e.inferredType)}.`})}function bc(e,t){let r=e.argument.name,n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&n.getDeepFieldValue(e.argumentPath)?.markAsError(),t.addErrorMessage(i=>{let o=[`Invalid value for argument \`${i.bold(r)}\``];if(e.underlyingError&&o.push(`: ${e.underlyingError}`),o.push("."),e.argument.typeNames.length>0){let s=Rr("or",e.argument.typeNames.map(a=>i.green(a)));o.push(` Expected ${s}.`)}return o.join("")})}function xc(e,t){let r=e.argument.name,n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(),i;if(n){let s=n.getDeepField(e.argumentPath)?.value;s?.markAsError(),s instanceof H&&(i=s.text)}t.addErrorMessage(o=>{let s=["Unable to fit value"];return i&&s.push(o.red(i)),s.push(`into a 64-bit signed integer for field \`${o.bold(r)}\``),s.join(" ")})}function Ec(e,t){let r=e.argumentPath[e.argumentPath.length-1],n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(n){let i=n.getDeepFieldValue(e.argumentPath)?.asObject();i&&Io(i,e.inputType)}t.addErrorMessage(i=>{let o=[`Argument \`${i.bold(r)}\` of type ${i.bold(e.inputType.name)} needs`];return e.constraints.minFieldCount===1?e.constraints.requiredFields?o.push(`${i.green("at least one of")} ${Rr("or",e.constraints.requiredFields.map(s=>`\`${i.bold(s)}\``))} arguments.`):o.push(`${i.green("at least one")} argument.`):o.push(`${i.green(`at least ${e.constraints.minFieldCount}`)} arguments.`),o.push($t(i)),o.join(" ")})}function Pc(e,t){let r=e.argumentPath[e.argumentPath.length-1],n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(),i=[];if(n){let o=n.getDeepFieldValue(e.argumentPath)?.asObject();o&&(o.markAsError(),i=Object.keys(o.getFields()))}t.addErrorMessage(o=>{let s=[`Argument \`${o.bold(r)}\` of type ${o.bold(e.inputType.name)} needs`];return e.constraints.minFieldCount===1&&e.constraints.maxFieldCount==1?s.push(`${o.green("exactly one")} argument,`):e.constraints.maxFieldCount==1?s.push(`${o.green("at most one")} argument,`):s.push(`${o.green(`at most ${e.constraints.maxFieldCount}`)} arguments,`),s.push(`but you provided ${Rr("and",i.map(a=>o.red(a)))}. Please choose`),e.constraints.maxFieldCount===1?s.push("one."):s.push(`${e.constraints.maxFieldCount}.`),s.join(" ")})}function Oo(e,t){for(let r of t.fields)e.hasField(r.name)||e.addSuggestion(new pe(r.name,"true"))}function vc(e,t){for(let r of t.fields)r.isRelation&&!e.hasField(r.name)&&e.addSuggestion(new pe(r.name,"true"))}function Tc(e,t){for(let r of t.fields)!e.hasField(r.name)&&!r.isRelation&&e.addSuggestion(new pe(r.name,"true"))}function Ac(e,t){for(let r of t)e.hasField(r.name)||e.addSuggestion(new pe(r.name,r.typeNames.join(" | ")))}function ko(e,t){let[r,n]=gt(e),i=t.arguments.getDeepSubSelectionValue(r)?.asObject();if(!i)return{parentKind:"unknown",fieldName:n};let o=i.getFieldValue("select")?.asObject(),s=i.getFieldValue("include")?.asObject(),a=i.getFieldValue("omit")?.asObject(),l=o?.getField(n);return o&&l?{parentKind:"select",parent:o,field:l,fieldName:n}:(l=s?.getField(n),s&&l?{parentKind:"include",field:l,parent:s,fieldName:n}:(l=a?.getField(n),a&&l?{parentKind:"omit",field:l,parent:a,fieldName:n}:{parentKind:"unknown",fieldName:n}))}function Io(e,t){if(t.kind==="object")for(let r of t.fields)e.hasField(r.name)||e.addSuggestion(new pe(r.name,r.typeNames.join(" | ")))}function gt(e){let t=[...e],r=t.pop();if(!r)throw new Error("unexpected empty path");return[t,r]}function $t({green:e,enabled:t}){return"Available options are "+(t?`listed in ${e("green")}`:"marked with ?")+"."}function Rr(e,t){if(t.length===1)return t[0];let r=[...t],n=r.pop();return`${r.join(", ")} ${e} ${n}`}var Cc=3;function Sc(e,t){let r=1/0,n;for(let i of t){let o=(0,Co.default)(e,i);o>Cc||o`}};function ht(e){return e instanceof Ut}m();c();p();d();f();var Or=Symbol(),Mn=new WeakMap,Me=class{constructor(t){t===Or?Mn.set(this,`Prisma.${this._getName()}`):Mn.set(this,`new Prisma.${this._getNamespace()}.${this._getName()}()`)}_getName(){return this.constructor.name}toString(){return Mn.get(this)}},Vt=class extends Me{_getNamespace(){return"NullTypes"}},Qt=class extends Vt{#e};_n(Qt,"DbNull");var Jt=class extends Vt{#e};_n(Jt,"JsonNull");var Gt=class extends Vt{#e};_n(Gt,"AnyNull");var kr={classes:{DbNull:Qt,JsonNull:Jt,AnyNull:Gt},instances:{DbNull:new Qt(Or),JsonNull:new Jt(Or),AnyNull:new Gt(Or)}};function _n(e,t){Object.defineProperty(e,"name",{value:t,configurable:!0})}m();c();p();d();f();var Fo=": ",Ir=class{constructor(t,r){this.name=t;this.value=r}hasError=!1;markAsError(){this.hasError=!0}getPrintWidth(){return this.name.length+this.value.getPrintWidth()+Fo.length}write(t){let r=new Ee(this.name);this.hasError&&r.underline().setColor(t.context.colors.red),t.write(r).write(Fo).write(this.value)}};var Dn=class{arguments;errorMessages=[];constructor(t){this.arguments=t}write(t){t.write(this.arguments)}addErrorMessage(t){this.errorMessages.push(t)}renderAllMessages(t){return this.errorMessages.map(r=>r(t)).join(` +`)}};function yt(e){return new Dn(Mo(e))}function Mo(e){let t=new mt;for(let[r,n]of Object.entries(e)){let i=new Ir(r,_o(n));t.addField(i)}return t}function _o(e){if(typeof e=="string")return new H(JSON.stringify(e));if(typeof e=="number"||typeof e=="boolean")return new H(String(e));if(typeof e=="bigint")return new H(`${e}n`);if(e===null)return new H("null");if(e===void 0)return new H("undefined");if(ut(e))return new H(`new Prisma.Decimal("${e.toFixed()}")`);if(e instanceof Uint8Array)return w.Buffer.isBuffer(e)?new H(`Buffer.alloc(${e.byteLength})`):new H(`new Uint8Array(${e.byteLength})`);if(e instanceof Date){let t=dr(e)?e.toISOString():"Invalid Date";return new H(`new Date("${t}")`)}return e instanceof Me?new H(`Prisma.${e._getName()}`):ht(e)?new H(`prisma.${De(e.modelName)}.$fields.${e.name}`):Array.isArray(e)?Rc(e):typeof e=="object"?Mo(e):new H(Object.prototype.toString.call(e))}function Rc(e){let t=new ft;for(let r of e)t.addItem(_o(r));return t}function Fr(e,t){let r=t==="pretty"?Ao:Sr,n=e.renderAllMessages(r),i=new pt(0,{colors:r}).write(e).toString();return{message:n,args:i}}function Mr({args:e,errors:t,errorFormat:r,callsite:n,originalMethod:i,clientVersion:o,globalOmit:s}){let a=yt(e);for(let h of t)Tr(h,a,s);let{message:l,args:u}=Fr(a,r),g=vr({message:l,callsite:n,originalMethod:i,showColors:r==="pretty",callArguments:u});throw new te(g,{clientVersion:o})}m();c();p();d();f();m();c();p();d();f();function Pe(e){return e.replace(/^./,t=>t.toLowerCase())}m();c();p();d();f();function Lo(e,t,r){let n=Pe(r);return!t.result||!(t.result.$allModels||t.result[n])?e:Oc({...e,...Do(t.name,e,t.result.$allModels),...Do(t.name,e,t.result[n])})}function Oc(e){let t=new we,r=(n,i)=>t.getOrCreate(n,()=>i.has(n)?[n]:(i.add(n),e[n]?e[n].needs.flatMap(o=>r(o,i)):[n]));return pr(e,n=>({...n,needs:r(n.name,new Set)}))}function Do(e,t,r){return r?pr(r,({needs:n,compute:i},o)=>({name:o,needs:n?Object.keys(n).filter(s=>n[s]):[],compute:kc(t,o,i)})):{}}function kc(e,t,r){let n=e?.[t]?.compute;return n?i=>r({...i,[t]:n(i)}):r}function No(e,t){if(!t)return e;let r={...e};for(let n of Object.values(t))if(e[n.name])for(let i of n.needs)r[i]=!0;return r}function qo(e,t){if(!t)return e;let r={...e};for(let n of Object.values(t))if(!e[n.name])for(let i of n.needs)delete r[i];return r}var _r=class{constructor(t,r){this.extension=t;this.previous=r}computedFieldsCache=new we;modelExtensionsCache=new we;queryCallbacksCache=new we;clientExtensions=Nt(()=>this.extension.client?{...this.previous?.getAllClientExtensions(),...this.extension.client}:this.previous?.getAllClientExtensions());batchCallbacks=Nt(()=>{let t=this.previous?.getAllBatchQueryCallbacks()??[],r=this.extension.query?.$__internalBatch;return r?t.concat(r):t});getAllComputedFields(t){return this.computedFieldsCache.getOrCreate(t,()=>Lo(this.previous?.getAllComputedFields(t),this.extension,t))}getAllClientExtensions(){return this.clientExtensions.get()}getAllModelExtensions(t){return this.modelExtensionsCache.getOrCreate(t,()=>{let r=Pe(t);return!this.extension.model||!(this.extension.model[r]||this.extension.model.$allModels)?this.previous?.getAllModelExtensions(t):{...this.previous?.getAllModelExtensions(t),...this.extension.model.$allModels,...this.extension.model[r]}})}getAllQueryCallbacks(t,r){return this.queryCallbacksCache.getOrCreate(`${t}:${r}`,()=>{let n=this.previous?.getAllQueryCallbacks(t,r)??[],i=[],o=this.extension.query;return!o||!(o[t]||o.$allModels||o[r]||o.$allOperations)?n:(o[t]!==void 0&&(o[t][r]!==void 0&&i.push(o[t][r]),o[t].$allOperations!==void 0&&i.push(o[t].$allOperations)),t!=="$none"&&o.$allModels!==void 0&&(o.$allModels[r]!==void 0&&i.push(o.$allModels[r]),o.$allModels.$allOperations!==void 0&&i.push(o.$allModels.$allOperations)),o[r]!==void 0&&i.push(o[r]),o.$allOperations!==void 0&&i.push(o.$allOperations),n.concat(i))})}getAllBatchQueryCallbacks(){return this.batchCallbacks.get()}},wt=class e{constructor(t){this.head=t}static empty(){return new e}static single(t){return new e(new _r(t))}isEmpty(){return this.head===void 0}append(t){return new e(new _r(t,this.head))}getAllComputedFields(t){return this.head?.getAllComputedFields(t)}getAllClientExtensions(){return this.head?.getAllClientExtensions()}getAllModelExtensions(t){return this.head?.getAllModelExtensions(t)}getAllQueryCallbacks(t,r){return this.head?.getAllQueryCallbacks(t,r)??[]}getAllBatchQueryCallbacks(){return this.head?.getAllBatchQueryCallbacks()??[]}};m();c();p();d();f();var Dr=class{constructor(t){this.name=t}};function Bo(e){return e instanceof Dr}function jo(e){return new Dr(e)}m();c();p();d();f();m();c();p();d();f();var $o=Symbol(),Wt=class{constructor(t){if(t!==$o)throw new Error("Skip instance can not be constructed directly")}ifUndefined(t){return t===void 0?Lr:t}},Lr=new Wt($o);function ve(e){return e instanceof Wt}var Ic={findUnique:"findUnique",findUniqueOrThrow:"findUniqueOrThrow",findFirst:"findFirst",findFirstOrThrow:"findFirstOrThrow",findMany:"findMany",count:"aggregate",create:"createOne",createMany:"createMany",createManyAndReturn:"createManyAndReturn",update:"updateOne",updateMany:"updateMany",updateManyAndReturn:"updateManyAndReturn",upsert:"upsertOne",delete:"deleteOne",deleteMany:"deleteMany",executeRaw:"executeRaw",queryRaw:"queryRaw",aggregate:"aggregate",groupBy:"groupBy",runCommandRaw:"runCommandRaw",findRaw:"findRaw",aggregateRaw:"aggregateRaw"},Uo="explicitly `undefined` values are not allowed";function Nr({modelName:e,action:t,args:r,runtimeDataModel:n,extensions:i=wt.empty(),callsite:o,clientMethod:s,errorFormat:a,clientVersion:l,previewFeatures:u,globalOmit:g}){let h=new Ln({runtimeDataModel:n,modelName:e,action:t,rootArgs:r,callsite:o,extensions:i,selectionPath:[],argumentPath:[],originalMethod:s,errorFormat:a,clientVersion:l,previewFeatures:u,globalOmit:g});return{modelName:e,action:Ic[t],query:Kt(r,h)}}function Kt({select:e,include:t,...r}={},n){let i=r.omit;return delete r.omit,{arguments:Qo(r,n),selection:Fc(e,t,i,n)}}function Fc(e,t,r,n){return e?(t?n.throwValidationError({kind:"MutuallyExclusiveFields",firstField:"include",secondField:"select",selectionPath:n.getSelectionPath()}):r&&n.throwValidationError({kind:"MutuallyExclusiveFields",firstField:"omit",secondField:"select",selectionPath:n.getSelectionPath()}),Lc(e,n)):Mc(n,t,r)}function Mc(e,t,r){let n={};return e.modelOrType&&!e.isRawAction()&&(n.$composites=!0,n.$scalars=!0),t&&_c(n,t,e),Dc(n,r,e),n}function _c(e,t,r){for(let[n,i]of Object.entries(t)){if(ve(i))continue;let o=r.nestSelection(n);if(Nn(i,o),i===!1||i===void 0){e[n]=!1;continue}let s=r.findField(n);if(s&&s.kind!=="object"&&r.throwValidationError({kind:"IncludeOnScalar",selectionPath:r.getSelectionPath().concat(n),outputType:r.getOutputTypeDescription()}),s){e[n]=Kt(i===!0?{}:i,o);continue}if(i===!0){e[n]=!0;continue}e[n]=Kt(i,o)}}function Dc(e,t,r){let n=r.getComputedFields(),i={...r.getGlobalOmit(),...t},o=qo(i,n);for(let[s,a]of Object.entries(o)){if(ve(a))continue;Nn(a,r.nestSelection(s));let l=r.findField(s);n?.[s]&&!l||(e[s]=!a)}}function Lc(e,t){let r={},n=t.getComputedFields(),i=No(e,n);for(let[o,s]of Object.entries(i)){if(ve(s))continue;let a=t.nestSelection(o);Nn(s,a);let l=t.findField(o);if(!(n?.[o]&&!l)){if(s===!1||s===void 0||ve(s)){r[o]=!1;continue}if(s===!0){l?.kind==="object"?r[o]=Kt({},a):r[o]=!0;continue}r[o]=Kt(s,a)}}return r}function Vo(e,t){if(e===null)return null;if(typeof e=="string"||typeof e=="number"||typeof e=="boolean")return e;if(typeof e=="bigint")return{$type:"BigInt",value:String(e)};if(st(e)){if(dr(e))return{$type:"DateTime",value:e.toISOString()};t.throwValidationError({kind:"InvalidArgumentValue",selectionPath:t.getSelectionPath(),argumentPath:t.getArgumentPath(),argument:{name:t.getArgumentName(),typeNames:["Date"]},underlyingError:"Provided Date object is invalid"})}if(Bo(e))return{$type:"Param",value:e.name};if(ht(e))return{$type:"FieldRef",value:{_ref:e.name,_container:e.modelName}};if(Array.isArray(e))return Nc(e,t);if(ArrayBuffer.isView(e)){let{buffer:r,byteOffset:n,byteLength:i}=e;return{$type:"Bytes",value:w.Buffer.from(r,n,i).toString("base64")}}if(qc(e))return e.values;if(ut(e))return{$type:"Decimal",value:e.toFixed()};if(e instanceof Me){if(e!==kr.instances[e._getName()])throw new Error("Invalid ObjectEnumValue");return{$type:"Enum",value:e._getName()}}if(Bc(e))return e.toJSON();if(typeof e=="object")return Qo(e,t);t.throwValidationError({kind:"InvalidArgumentValue",selectionPath:t.getSelectionPath(),argumentPath:t.getArgumentPath(),argument:{name:t.getArgumentName(),typeNames:[]},underlyingError:`We could not serialize ${Object.prototype.toString.call(e)} value. Serialize the object to JSON or implement a ".toJSON()" method on it`})}function Qo(e,t){if(e.$type)return{$type:"Raw",value:e};let r={};for(let n in e){let i=e[n],o=t.nestArgument(n);ve(i)||(i!==void 0?r[n]=Vo(i,o):t.isPreviewFeatureOn("strictUndefinedChecks")&&t.throwValidationError({kind:"InvalidArgumentValue",argumentPath:o.getArgumentPath(),selectionPath:t.getSelectionPath(),argument:{name:t.getArgumentName(),typeNames:[]},underlyingError:Uo}))}return r}function Nc(e,t){let r=[];for(let n=0;n({name:t.name,typeName:"boolean",isRelation:t.kind==="object"}))}}isRawAction(){return["executeRaw","queryRaw","runCommandRaw","findRaw","aggregateRaw"].includes(this.params.action)}isPreviewFeatureOn(t){return this.params.previewFeatures.includes(t)}getComputedFields(){if(this.params.modelName)return this.params.extensions.getAllComputedFields(this.params.modelName)}findField(t){return this.modelOrType?.fields.find(r=>r.name===t)}nestSelection(t){let r=this.findField(t),n=r?.kind==="object"?r.type:void 0;return new e({...this.params,modelName:n,selectionPath:this.params.selectionPath.concat(t)})}getGlobalOmit(){return this.params.modelName&&this.shouldApplyGlobalOmit()?this.params.globalOmit?.[De(this.params.modelName)]??{}:{}}shouldApplyGlobalOmit(){switch(this.params.action){case"findFirst":case"findFirstOrThrow":case"findUniqueOrThrow":case"findMany":case"upsert":case"findUnique":case"createManyAndReturn":case"create":case"update":case"updateManyAndReturn":case"delete":return!0;case"executeRaw":case"aggregateRaw":case"runCommandRaw":case"findRaw":case"createMany":case"deleteMany":case"groupBy":case"updateMany":case"count":case"aggregate":case"queryRaw":return!1;default:ze(this.params.action,"Unknown action")}}nestArgument(t){return new e({...this.params,argumentPath:this.params.argumentPath.concat(t)})}};m();c();p();d();f();function Jo(e){if(!e._hasPreviewFlag("metrics"))throw new te("`metrics` preview feature must be enabled in order to access metrics API",{clientVersion:e._clientVersion})}var bt=class{_client;constructor(t){this._client=t}prometheus(t){return Jo(this._client),this._client._engine.metrics({format:"prometheus",...t})}json(t){return Jo(this._client),this._client._engine.metrics({format:"json",...t})}};m();c();p();d();f();function Go(e,t){let r=Nt(()=>jc(t));Object.defineProperty(e,"dmmf",{get:()=>r.get()})}function jc(e){return{datamodel:{models:qn(e.models),enums:qn(e.enums),types:qn(e.types)}}}function qn(e){return Object.entries(e).map(([t,r])=>({name:t,...r}))}m();c();p();d();f();var Bn=new WeakMap,qr="$$PrismaTypedSql",zt=class{constructor(t,r){Bn.set(this,{sql:t,values:r}),Object.defineProperty(this,qr,{value:qr})}get sql(){return Bn.get(this).sql}get values(){return Bn.get(this).values}};function Wo(e){return(...t)=>new zt(e,t)}function Br(e){return e!=null&&e[qr]===qr}m();c();p();d();f();var da=Qe(Ko());m();c();p();d();f();zo();dn();gn();m();c();p();d();f();var le=class e{constructor(t,r){if(t.length-1!==r.length)throw t.length===0?new TypeError("Expected at least 1 string"):new TypeError(`Expected ${t.length} strings to have ${t.length-1} values`);let n=r.reduce((s,a)=>s+(a instanceof e?a.values.length:1),0);this.values=new Array(n),this.strings=new Array(n+1),this.strings[0]=t[0];let i=0,o=0;for(;ie.getPropertyValue(r))},getPropertyDescriptor(r){return e.getPropertyDescriptor?.(r)}}}m();c();p();d();f();m();c();p();d();f();var $r={enumerable:!0,configurable:!0,writable:!0};function Ur(e){let t=new Set(e);return{getPrototypeOf:()=>Object.prototype,getOwnPropertyDescriptor:()=>$r,has:(r,n)=>t.has(n),set:(r,n,i)=>t.add(n)&&Reflect.set(r,n,i),ownKeys:()=>[...t]}}var Zo=Symbol.for("nodejs.util.inspect.custom");function ge(e,t){let r=Uc(t),n=new Set,i=new Proxy(e,{get(o,s){if(n.has(s))return o[s];let a=r.get(s);return a?a.getPropertyValue(s):o[s]},has(o,s){if(n.has(s))return!0;let a=r.get(s);return a?a.has?.(s)??!0:Reflect.has(o,s)},ownKeys(o){let s=Xo(Reflect.ownKeys(o),r),a=Xo(Array.from(r.keys()),r);return[...new Set([...s,...a,...n])]},set(o,s,a){return r.get(s)?.getPropertyDescriptor?.(s)?.writable===!1?!1:(n.add(s),Reflect.set(o,s,a))},getOwnPropertyDescriptor(o,s){let a=Reflect.getOwnPropertyDescriptor(o,s);if(a&&!a.configurable)return a;let l=r.get(s);return l?l.getPropertyDescriptor?{...$r,...l?.getPropertyDescriptor(s)}:$r:a},defineProperty(o,s,a){return n.add(s),Reflect.defineProperty(o,s,a)},getPrototypeOf:()=>Object.prototype});return i[Zo]=function(){let o={...this};return delete o[Zo],o},i}function Uc(e){let t=new Map;for(let r of e){let n=r.getKeys();for(let i of n)t.set(i,r)}return t}function Xo(e,t){return e.filter(r=>t.get(r)?.has?.(r)??!0)}m();c();p();d();f();function xt(e){return{getKeys(){return e},has(){return!1},getPropertyValue(){}}}m();c();p();d();f();function Vr(e,t){return{batch:e,transaction:t?.kind==="batch"?{isolationLevel:t.options.isolationLevel}:void 0}}m();c();p();d();f();function es(e){if(e===void 0)return"";let t=yt(e);return new pt(0,{colors:Sr}).write(t).toString()}m();c();p();d();f();var Vc="P2037";function Qr({error:e,user_facing_error:t},r,n){return t.error_code?new se(Qc(t,n),{code:t.error_code,clientVersion:r,meta:t.meta,batchRequestIdx:t.batch_request_idx}):new G(e,{clientVersion:r,batchRequestIdx:t.batch_request_idx})}function Qc(e,t){let r=e.message;return(t==="postgresql"||t==="postgres"||t==="mysql")&&e.error_code===Vc&&(r+=` +Prisma Accelerate has built-in connection pooling to prevent such errors: https://pris.ly/client/error-accelerate`),r}m();c();p();d();f();m();c();p();d();f();m();c();p();d();f();m();c();p();d();f();m();c();p();d();f();var Yt="";function ts(e){var t=e.split(` +`);return t.reduce(function(r,n){var i=Wc(n)||zc(n)||Zc(n)||rp(n)||ep(n);return i&&r.push(i),r},[])}var Jc=/^\s*at (.*?) ?\(((?:file|https?|blob|chrome-extension|native|eval|webpack|rsc||\/|[a-z]:\\|\\\\).*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,Gc=/\((\S*)(?::(\d+))(?::(\d+))\)/;function Wc(e){var t=Jc.exec(e);if(!t)return null;var r=t[2]&&t[2].indexOf("native")===0,n=t[2]&&t[2].indexOf("eval")===0,i=Gc.exec(t[2]);return n&&i!=null&&(t[2]=i[1],t[3]=i[2],t[4]=i[3]),{file:r?null:t[2],methodName:t[1]||Yt,arguments:r?[t[2]]:[],lineNumber:t[3]?+t[3]:null,column:t[4]?+t[4]:null}}var Kc=/^\s*at (?:((?:\[object object\])?.+) )?\(?((?:file|ms-appx|https?|webpack|rsc|blob):.*?):(\d+)(?::(\d+))?\)?\s*$/i;function zc(e){var t=Kc.exec(e);return t?{file:t[2],methodName:t[1]||Yt,arguments:[],lineNumber:+t[3],column:t[4]?+t[4]:null}:null}var Hc=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)((?:file|https?|blob|chrome|webpack|rsc|resource|\[native).*?|[^@]*bundle)(?::(\d+))?(?::(\d+))?\s*$/i,Yc=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i;function Zc(e){var t=Hc.exec(e);if(!t)return null;var r=t[3]&&t[3].indexOf(" > eval")>-1,n=Yc.exec(t[3]);return r&&n!=null&&(t[3]=n[1],t[4]=n[2],t[5]=null),{file:t[3],methodName:t[1]||Yt,arguments:t[2]?t[2].split(","):[],lineNumber:t[4]?+t[4]:null,column:t[5]?+t[5]:null}}var Xc=/^\s*(?:([^@]*)(?:\((.*?)\))?@)?(\S.*?):(\d+)(?::(\d+))?\s*$/i;function ep(e){var t=Xc.exec(e);return t?{file:t[3],methodName:t[1]||Yt,arguments:[],lineNumber:+t[4],column:t[5]?+t[5]:null}:null}var tp=/^\s*at (?:((?:\[object object\])?[^\\/]+(?: \[as \S+\])?) )?\(?(.*?):(\d+)(?::(\d+))?\)?\s*$/i;function rp(e){var t=tp.exec(e);return t?{file:t[2],methodName:t[1]||Yt,arguments:[],lineNumber:+t[3],column:t[4]?+t[4]:null}:null}var Un=class{getLocation(){return null}},Vn=class{_error;constructor(){this._error=new Error}getLocation(){let t=this._error.stack;if(!t)return null;let n=ts(t).find(i=>{if(!i.file)return!1;let o=Pn(i.file);return o!==""&&!o.includes("@prisma")&&!o.includes("/packages/client/src/runtime/")&&!o.endsWith("/runtime/binary.js")&&!o.endsWith("/runtime/library.js")&&!o.endsWith("/runtime/edge.js")&&!o.endsWith("/runtime/edge-esm.js")&&!o.startsWith("internal/")&&!i.methodName.includes("new ")&&!i.methodName.includes("getCallSite")&&!i.methodName.includes("Proxy.")&&i.methodName.split(".").length<4});return!n||!n.file?null:{fileName:n.file,lineNumber:n.lineNumber,columnNumber:n.column}}};function $e(e){return e==="minimal"?typeof $EnabledCallSite=="function"&&e!=="minimal"?new $EnabledCallSite:new Un:new Vn}m();c();p();d();f();m();c();p();d();f();m();c();p();d();f();var rs={_avg:!0,_count:!0,_sum:!0,_min:!0,_max:!0};function Et(e={}){let t=ip(e);return Object.entries(t).reduce((n,[i,o])=>(rs[i]!==void 0?n.select[i]={select:o}:n[i]=o,n),{select:{}})}function ip(e={}){return typeof e._count=="boolean"?{...e,_count:{_all:e._count}}:e}function Jr(e={}){return t=>(typeof e._count=="boolean"&&(t._count=t._count._all),t)}function ns(e,t){let r=Jr(e);return t({action:"aggregate",unpacker:r,argsMapper:Et})(e)}m();c();p();d();f();function op(e={}){let{select:t,...r}=e;return typeof t=="object"?Et({...r,_count:t}):Et({...r,_count:{_all:!0}})}function sp(e={}){return typeof e.select=="object"?t=>Jr(e)(t)._count:t=>Jr(e)(t)._count._all}function is(e,t){return t({action:"count",unpacker:sp(e),argsMapper:op})(e)}m();c();p();d();f();function ap(e={}){let t=Et(e);if(Array.isArray(t.by))for(let r of t.by)typeof r=="string"&&(t.select[r]=!0);else typeof t.by=="string"&&(t.select[t.by]=!0);return t}function lp(e={}){return t=>(typeof e?._count=="boolean"&&t.forEach(r=>{r._count=r._count._all}),t)}function os(e,t){return t({action:"groupBy",unpacker:lp(e),argsMapper:ap})(e)}function ss(e,t,r){if(t==="aggregate")return n=>ns(n,r);if(t==="count")return n=>is(n,r);if(t==="groupBy")return n=>os(n,r)}m();c();p();d();f();function as(e,t){let r=t.fields.filter(i=>!i.relationName),n=Yi(r,"name");return new Proxy({},{get(i,o){if(o in i||typeof o=="symbol")return i[o];let s=n[o];if(s)return new Ut(e,o,s.type,s.isList,s.kind==="enum")},...Ur(Object.keys(n))})}m();c();p();d();f();m();c();p();d();f();var ls=e=>Array.isArray(e)?e:e.split("."),Qn=(e,t)=>ls(t).reduce((r,n)=>r&&r[n],e),us=(e,t,r)=>ls(t).reduceRight((n,i,o,s)=>Object.assign({},Qn(e,s.slice(0,o)),{[i]:n}),r);function up(e,t){return e===void 0||t===void 0?[]:[...t,"select",e]}function cp(e,t,r){return t===void 0?e??{}:us(t,r,e||!0)}function Jn(e,t,r,n,i,o){let a=e._runtimeDataModel.models[t].fields.reduce((l,u)=>({...l,[u.name]:u}),{});return l=>{let u=$e(e._errorFormat),g=up(n,i),h=cp(l,o,g),T=r({dataPath:g,callsite:u})(h),O=pp(e,t);return new Proxy(T,{get(C,S){if(!O.includes(S))return C[S];let _=[a[S].type,r,S],L=[g,h];return Jn(e,..._,...L)},...Ur([...O,...Object.getOwnPropertyNames(T)])})}}function pp(e,t){return e._runtimeDataModel.models[t].fields.filter(r=>r.kind==="object").map(r=>r.name)}var dp=["findUnique","findUniqueOrThrow","findFirst","findFirstOrThrow","create","update","upsert","delete"],fp=["aggregate","count","groupBy"];function Gn(e,t){let r=e._extensions.getAllModelExtensions(t)??{},n=[mp(e,t),hp(e,t),Ht(r),ne("name",()=>t),ne("$name",()=>t),ne("$parent",()=>e._appliedParent)];return ge({},n)}function mp(e,t){let r=Pe(t),n=Object.keys(ct).concat("count");return{getKeys(){return n},getPropertyValue(i){let o=i,s=a=>l=>{let u=$e(e._errorFormat);return e._createPrismaPromise(g=>{let h={args:l,dataPath:[],action:o,model:t,clientMethod:`${r}.${i}`,jsModelName:r,transaction:g,callsite:u};return e._request({...h,...a})},{action:o,args:l,model:t})};return dp.includes(o)?Jn(e,t,s):gp(i)?ss(e,i,s):s({})}}}function gp(e){return fp.includes(e)}function hp(e,t){return He(ne("fields",()=>{let r=e._runtimeDataModel.models[t];return as(t,r)}))}m();c();p();d();f();function cs(e){return e.replace(/^./,t=>t.toUpperCase())}var Wn=Symbol();function Zt(e){let t=[yp(e),wp(e),ne(Wn,()=>e),ne("$parent",()=>e._appliedParent)],r=e._extensions.getAllClientExtensions();return r&&t.push(Ht(r)),ge(e,t)}function yp(e){let t=Object.getPrototypeOf(e._originalClient),r=[...new Set(Object.getOwnPropertyNames(t))];return{getKeys(){return r},getPropertyValue(n){return e[n]}}}function wp(e){let t=Object.keys(e._runtimeDataModel.models),r=t.map(Pe),n=[...new Set(t.concat(r))];return He({getKeys(){return n},getPropertyValue(i){let o=cs(i);if(e._runtimeDataModel.models[o]!==void 0)return Gn(e,o);if(e._runtimeDataModel.models[i]!==void 0)return Gn(e,i)},getPropertyDescriptor(i){if(!r.includes(i))return{enumerable:!1}}})}function ps(e){return e[Wn]?e[Wn]:e}function ds(e){if(typeof e=="function")return e(this);if(e.client?.__AccelerateEngine){let r=e.client.__AccelerateEngine;this._originalClient._engine=new r(this._originalClient._accelerateEngineConfig)}let t=Object.create(this._originalClient,{_extensions:{value:this._extensions.append(e)},_appliedParent:{value:this,configurable:!0},$on:{value:void 0}});return Zt(t)}m();c();p();d();f();m();c();p();d();f();function fs({result:e,modelName:t,select:r,omit:n,extensions:i}){let o=i.getAllComputedFields(t);if(!o)return e;let s=[],a=[];for(let l of Object.values(o)){if(n){if(n[l.name])continue;let u=l.needs.filter(g=>n[g]);u.length>0&&a.push(xt(u))}else if(r){if(!r[l.name])continue;let u=l.needs.filter(g=>!r[g]);u.length>0&&a.push(xt(u))}bp(e,l.needs)&&s.push(xp(l,ge(e,s)))}return s.length>0||a.length>0?ge(e,[...s,...a]):e}function bp(e,t){return t.every(r=>vn(e,r))}function xp(e,t){return He(ne(e.name,()=>e.compute(t)))}m();c();p();d();f();function Gr({visitor:e,result:t,args:r,runtimeDataModel:n,modelName:i}){if(Array.isArray(t)){for(let s=0;sg.name===o);if(!l||l.kind!=="object"||!l.relationName)continue;let u=typeof s=="object"?s:{};t[o]=Gr({visitor:i,result:t[o],args:u,modelName:l.type,runtimeDataModel:n})}}function gs({result:e,modelName:t,args:r,extensions:n,runtimeDataModel:i,globalOmit:o}){return n.isEmpty()||e==null||typeof e!="object"||!i.models[t]?e:Gr({result:e,args:r??{},modelName:t,runtimeDataModel:i,visitor:(a,l,u)=>{let g=Pe(l);return fs({result:a,modelName:g,select:u.select,omit:u.select?void 0:{...o?.[g],...u.omit},extensions:n})}})}m();c();p();d();f();m();c();p();d();f();m();c();p();d();f();var Ep=["$connect","$disconnect","$on","$transaction","$extends"],hs=Ep;function ys(e){if(e instanceof le)return Pp(e);if(Br(e))return vp(e);if(Array.isArray(e)){let r=[e[0]];for(let n=1;n{let o=t.customDataProxyFetch;return"transaction"in t&&i!==void 0&&(t.transaction?.kind==="batch"&&t.transaction.lock.then(),t.transaction=i),n===r.length?e._executeRequest(t):r[n]({model:t.model,operation:t.model?t.action:t.clientMethod,args:ys(t.args??{}),__internalParams:t,query:(s,a=t)=>{let l=a.customDataProxyFetch;return a.customDataProxyFetch=vs(o,l),a.args=s,bs(e,a,r,n+1)}})})}function xs(e,t){let{jsModelName:r,action:n,clientMethod:i}=t,o=r?n:i;if(e._extensions.isEmpty())return e._executeRequest(t);let s=e._extensions.getAllQueryCallbacks(r??"$none",o);return bs(e,t,s)}function Es(e){return t=>{let r={requests:t},n=t[0].extensions.getAllBatchQueryCallbacks();return n.length?Ps(r,n,0,e):e(r)}}function Ps(e,t,r,n){if(r===t.length)return n(e);let i=e.customDataProxyFetch,o=e.requests[0].transaction;return t[r]({args:{queries:e.requests.map(s=>({model:s.modelName,operation:s.action,args:s.args})),transaction:o?{isolationLevel:o.kind==="batch"?o.isolationLevel:void 0}:void 0},__internalParams:e,query(s,a=e){let l=a.customDataProxyFetch;return a.customDataProxyFetch=vs(i,l),Ps(a,t,r+1,n)}})}var ws=e=>e;function vs(e=ws,t=ws){return r=>e(t(r))}m();c();p();d();f();var Ts=z("prisma:client"),As={Vercel:"vercel","Netlify CI":"netlify"};function Cs({postinstall:e,ciName:t,clientVersion:r,generator:n}){if(Ts("checkPlatformCaching:postinstall",e),Ts("checkPlatformCaching:ciName",t),e===!0&&!(n?.output&&typeof(n.output.fromEnvVar??n.output.value)=="string")&&t&&t in As){let i=`Prisma has detected that this project was built on ${t}, which caches dependencies. This leads to an outdated Prisma Client because Prisma's auto-generation isn't triggered. To fix this, make sure to run the \`prisma generate\` command during the build process. -Learn how: https://pris.ly/d/${As[t]}-build`; - throw (console.error(i), new Q(i, r)); - } -} -m(); -c(); -p(); -d(); -f(); -function Ss(e, t) { - return e - ? e.datasources - ? e.datasources - : e.datasourceUrl - ? { [t[0]]: { url: e.datasourceUrl } } - : {} - : {}; -} -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -function Rs(e) { - return e - ? e - .replace(/".*"/g, '"X"') - .replace(/[\s:\[]([+-]?([0-9]*[.])?[0-9]+)/g, (t) => `${t[0]}5`) - : ""; -} -m(); -c(); -p(); -d(); -f(); -function Os(e) { - return e - .split( - ` -`, - ) - .map((t) => - t - .replace( - /^\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)\s*/, - "", - ) - .replace(/\+\d+\s*ms$/, ""), - ).join(` -`); -} -m(); -c(); -p(); -d(); -f(); -var ks = Qe(Ki()); -function Is({ - title: e, - user: t = "prisma", - repo: r = "prisma", - template: n = "bug_report.yml", - body: i, -}) { - return (0, ks.default)({ user: t, repo: r, template: n, title: e, body: i }); -} -function Fs({ - version: e, - binaryTarget: t, - title: r, - description: n, - engineVersion: i, - database: o, - query: s, -}) { - let a = Mi(6e3 - (s?.length ?? 0)), - l = Os(ot(a)), - u = n - ? `# Description +Learn how: https://pris.ly/d/${As[t]}-build`;throw console.error(i),new Q(i,r)}}m();c();p();d();f();function Ss(e,t){return e?e.datasources?e.datasources:e.datasourceUrl?{[t[0]]:{url:e.datasourceUrl}}:{}:{}}m();c();p();d();f();m();c();p();d();f();m();c();p();d();f();m();c();p();d();f();function Rs(e){return e?e.replace(/".*"/g,'"X"').replace(/[\s:\[]([+-]?([0-9]*[.])?[0-9]+)/g,t=>`${t[0]}5`):""}m();c();p();d();f();function Os(e){return e.split(` +`).map(t=>t.replace(/^\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)\s*/,"").replace(/\+\d+\s*ms$/,"")).join(` +`)}m();c();p();d();f();var ks=Qe(Ki());function Is({title:e,user:t="prisma",repo:r="prisma",template:n="bug_report.yml",body:i}){return(0,ks.default)({user:t,repo:r,template:n,title:e,body:i})}function Fs({version:e,binaryTarget:t,title:r,description:n,engineVersion:i,database:o,query:s}){let a=Mi(6e3-(s?.length??0)),l=Os(ot(a)),u=n?`# Description \`\`\` ${n} -\`\`\`` - : "", - g = ot(`Hi Prisma Team! My Prisma Client just crashed. This is the report: +\`\`\``:"",g=ot(`Hi Prisma Team! My Prisma Client just crashed. This is the report: ## Versions | Name | Version | @@ -8440,11 +50,9 @@ ${l} ## Prisma Engine Query \`\`\` -${s ? Rs(s) : ""} +${s?Rs(s):""} \`\`\` -`), - h = Is({ title: r, body: g }); - return `${r} +`),h=Is({title:r,body:g});return`${r} This is a non-recoverable error which probably happens when the Prisma Query Engine has a panic. @@ -8453,2227 +61,24 @@ ${Rt(h)} If you want the Prisma team to look into it, please open the link above \u{1F64F} To increase the chance of success, please post your schema and a snippet of how you used Prisma Client in the issue. -`; -} -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -function Ms(e, t) { - throw new Error(t); -} -function Tp(e) { - return e !== null && typeof e == "object" && typeof e.$type == "string"; -} -function Ap(e, t) { - let r = {}; - for (let n of Object.keys(e)) r[n] = t(e[n], n); - return r; -} -function Pt(e) { - return e === null - ? e - : Array.isArray(e) - ? e.map(Pt) - : typeof e == "object" - ? Tp(e) - ? Cp(e) - : e.constructor !== null && e.constructor.name !== "Object" - ? e - : Ap(e, Pt) - : e; -} -function Cp({ $type: e, value: t }) { - switch (e) { - case "BigInt": - return BigInt(t); - case "Bytes": { - let { - buffer: r, - byteOffset: n, - byteLength: i, - } = w.Buffer.from(t, "base64"); - return new Uint8Array(r, n, i); - } - case "DateTime": - return new Date(t); - case "Decimal": - return new Ie(t); - case "Json": - return JSON.parse(t); - default: - Ms(t, "Unknown tagged value"); - } -} -var _s = "6.19.2"; -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -var Rp = () => globalThis.process?.release?.name === "node", - Op = () => !!globalThis.Bun || !!globalThis.process?.versions?.bun, - kp = () => !!globalThis.Deno, - Ip = () => typeof globalThis.Netlify == "object", - Fp = () => typeof globalThis.EdgeRuntime == "object", - Mp = () => globalThis.navigator?.userAgent === "Cloudflare-Workers"; -function _p() { - return ( - [ - [Ip, "netlify"], - [Fp, "edge-light"], - [Mp, "workerd"], - [kp, "deno"], - [Op, "bun"], - [Rp, "node"], - ] - .flatMap((r) => (r[0]() ? [r[1]] : [])) - .at(0) ?? "" - ); -} -var Dp = { - node: "Node.js", - workerd: "Cloudflare Workers", - deno: "Deno and Deno Deploy", - netlify: "Netlify Edge Functions", - "edge-light": - "Edge Runtime (Vercel Edge Functions, Vercel Edge Middleware, Next.js (Pages Router) Edge API Routes, Next.js (App Router) Edge Route Handlers or Next.js Middleware)", -}; -function Ds() { - let e = _p(); - return { - id: e, - prettyName: Dp[e] || e, - isEdge: ["workerd", "deno", "netlify", "edge-light"].includes(e), - }; -} -function Wr({ - inlineDatasources: e, - overrideDatasources: t, - env: r, - clientVersion: n, -}) { - let i, - o = Object.keys(e)[0], - s = e[o]?.url, - a = t[o]?.url; - if ( - (o === void 0 - ? (i = void 0) - : a - ? (i = a) - : s?.value - ? (i = s.value) - : s?.fromEnvVar && (i = r[s.fromEnvVar]), - s?.fromEnvVar !== void 0 && i === void 0) - ) - throw new Q(`error: Environment variable not found: ${s.fromEnvVar}.`, n); - if (i === void 0) - throw new Q( - "error: Missing URL environment variable, value, or override.", - n, - ); - return i; -} -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -function Ls(e) { - if (e?.kind === "itx") return e.options.id; -} -m(); -c(); -p(); -d(); -f(); -var Kn = class { - engineObject; - constructor(t, r, n) { - this.engineObject = __PrismaProxy.create({ - datamodel: t.datamodel, - env: y.env, - ignoreEnvVarErrors: !0, - datasourceOverrides: t.datasourceOverrides ?? {}, - logLevel: t.logLevel, - logQueries: t.logQueries ?? !1, - logCallback: r, - enableTracing: t.enableTracing, - }); - } - async connect(t, r) { - return __PrismaProxy.connect(this.engineObject, t, r); - } - async disconnect(t, r) { - return __PrismaProxy.disconnect(this.engineObject, t, r); - } - query(t, r, n, i) { - return __PrismaProxy.execute(this.engineObject, t, r, n, i); - } - compile() { - throw new Error("not implemented"); - } - sdlSchema() { - return Promise.resolve("{}"); - } - dmmf(t) { - return Promise.resolve("{}"); - } - async startTransaction(t, r, n) { - return __PrismaProxy.startTransaction(this.engineObject, t, r, n); - } - async commitTransaction(t, r, n) { - return __PrismaProxy.commitTransaction(this.engineObject, t, r, n); - } - async rollbackTransaction(t, r, n) { - return __PrismaProxy.rollbackTransaction(this.engineObject, t, r, n); - } - metrics(t) { - return Promise.resolve("{}"); - } - async applyPendingMigrations() { - return __PrismaProxy.applyPendingMigrations(this.engineObject); - } - trace(t) { - return __PrismaProxy.trace(this.engineObject, t); - } - }, - Ns = { - async loadLibrary(e) { - if (!__PrismaProxy) - throw new Q( - "__PrismaProxy not detected make sure React Native bindings are installed", - e.clientVersion, - ); - return { - debugPanic() { - return Promise.reject("{}"); - }, - dmmf() { - return Promise.resolve("{}"); - }, - version() { - return { commit: "unknown", version: "unknown" }; - }, - QueryEngine: Kn, - }; - }, - }; -var Lp = "P2036", - Te = z("prisma:client:libraryEngine"); -function Np(e) { - return e.item_type === "query" && "query" in e; -} -function qp(e) { - return "level" in e ? e.level === "error" && e.message === "PANIC" : !1; -} -var TO = [...fn, "native"], - Bp = 0xffffffffffffffffn, - zn = 1n; -function jp() { - let e = zn++; - return (zn > Bp && (zn = 1n), e); -} -var er = class { - name = "LibraryEngine"; - engine; - libraryInstantiationPromise; - libraryStartingPromise; - libraryStoppingPromise; - libraryStarted; - executingQueryPromise; - config; - QueryEngineConstructor; - libraryLoader; - library; - logEmitter; - libQueryEnginePath; - binaryTarget; - datasourceOverrides; - datamodel; - logQueries; - logLevel; - lastQuery; - loggerRustPanic; - tracingHelper; - adapterPromise; - versionInfo; - constructor(t, r) { - ((this.libraryLoader = Ns), - (this.config = t), - (this.libraryStarted = !1), - (this.logQueries = t.logQueries ?? !1), - (this.logLevel = t.logLevel ?? "error"), - (this.logEmitter = t.logEmitter), - (this.datamodel = t.inlineSchema), - (this.tracingHelper = t.tracingHelper), - t.enableDebugLogs && (this.logLevel = "debug")); - let n = Object.keys(t.overrideDatasources)[0], - i = t.overrideDatasources[n]?.url; - (n !== void 0 && i !== void 0 && (this.datasourceOverrides = { [n]: i }), - (this.libraryInstantiationPromise = this.instantiateLibrary())); - } - wrapEngine(t) { - return { - applyPendingMigrations: t.applyPendingMigrations?.bind(t), - commitTransaction: this.withRequestId(t.commitTransaction.bind(t)), - connect: this.withRequestId(t.connect.bind(t)), - disconnect: this.withRequestId(t.disconnect.bind(t)), - metrics: t.metrics?.bind(t), - query: this.withRequestId(t.query.bind(t)), - rollbackTransaction: this.withRequestId(t.rollbackTransaction.bind(t)), - sdlSchema: t.sdlSchema?.bind(t), - startTransaction: this.withRequestId(t.startTransaction.bind(t)), - trace: t.trace.bind(t), - free: t.free?.bind(t), - }; - } - withRequestId(t) { - return async (...r) => { - let n = jp().toString(); - try { - return await t(...r, n); - } finally { - if (this.tracingHelper.isEnabled()) { - let i = await this.engine?.trace(n); - if (i) { - let o = JSON.parse(i); - this.tracingHelper.dispatchEngineSpans(o.spans); - } - } - } - }; - } - async applyPendingMigrations() { - (await this.start(), await this.engine?.applyPendingMigrations()); - } - async transaction(t, r, n) { - await this.start(); - let i = await this.adapterPromise, - o = JSON.stringify(r), - s; - if (t === "start") { - let l = JSON.stringify({ - max_wait: n.maxWait, - timeout: n.timeout, - isolation_level: n.isolationLevel, - }); - s = await this.engine?.startTransaction(l, o); - } else - t === "commit" - ? (s = await this.engine?.commitTransaction(n.id, o)) - : t === "rollback" && - (s = await this.engine?.rollbackTransaction(n.id, o)); - let a = this.parseEngineResponse(s); - if ($p(a)) { - let l = this.getExternalAdapterError(a, i?.errorRegistry); - throw l - ? l.error - : new se(a.message, { - code: a.error_code, - clientVersion: this.config.clientVersion, - meta: a.meta, - }); - } else if (typeof a.message == "string") - throw new G(a.message, { clientVersion: this.config.clientVersion }); - return a; - } - async instantiateLibrary() { - if ((Te("internalSetup"), this.libraryInstantiationPromise)) - return this.libraryInstantiationPromise; - ((this.binaryTarget = await this.getCurrentBinaryTarget()), - await this.tracingHelper.runInChildSpan("load_engine", () => - this.loadEngine(), - ), - this.version()); - } - async getCurrentBinaryTarget() {} - parseEngineResponse(t) { - if (!t) - throw new G("Response from the Engine was empty", { - clientVersion: this.config.clientVersion, - }); - try { - return JSON.parse(t); - } catch { - throw new G("Unable to JSON.parse response from engine", { - clientVersion: this.config.clientVersion, - }); - } - } - async loadEngine() { - if (!this.engine) { - this.QueryEngineConstructor || - ((this.library = await this.libraryLoader.loadLibrary(this.config)), - (this.QueryEngineConstructor = this.library.QueryEngine)); - try { - let t = new b(this); - this.adapterPromise || - (this.adapterPromise = this.config.adapter?.connect()?.then(lr)); - let r = await this.adapterPromise; - (r && Te("Using driver adapter: %O", r), - (this.engine = this.wrapEngine( - new this.QueryEngineConstructor( - { - datamodel: this.datamodel, - env: y.env, - logQueries: this.config.logQueries ?? !1, - ignoreEnvVarErrors: !0, - datasourceOverrides: this.datasourceOverrides ?? {}, - logLevel: this.logLevel, - configDir: this.config.cwd, - engineProtocol: "json", - enableTracing: this.tracingHelper.isEnabled(), - }, - (n) => { - t.deref()?.logger(n); - }, - r, - ), - ))); - } catch (t) { - let r = t, - n = this.parseInitError(r.message); - throw typeof n == "string" - ? r - : new Q(n.message, this.config.clientVersion, n.error_code); - } - } - } - logger(t) { - let r = this.parseEngineResponse(t); - r && - ((r.level = r?.level.toLowerCase() ?? "unknown"), - Np(r) - ? this.logEmitter.emit("query", { - timestamp: new Date(), - query: r.query, - params: r.params, - duration: Number(r.duration_ms), - target: r.module_path, - }) - : qp(r) - ? (this.loggerRustPanic = new ce( - Hn( - this, - `${r.message}: ${r.reason} in ${r.file}:${r.line}:${r.column}`, - ), - this.config.clientVersion, - )) - : this.logEmitter.emit(r.level, { - timestamp: new Date(), - message: r.message, - target: r.module_path, - })); - } - parseInitError(t) { - try { - return JSON.parse(t); - } catch {} - return t; - } - parseRequestError(t) { - try { - return JSON.parse(t); - } catch {} - return t; - } - onBeforeExit() { - throw new Error( - '"beforeExit" hook is not applicable to the library engine since Prisma 5.0.0, it is only relevant and implemented for the binary engine. Please add your event listener to the `process` object directly instead.', - ); - } - async start() { - if ( - (this.libraryInstantiationPromise || - (this.libraryInstantiationPromise = this.instantiateLibrary()), - await this.libraryInstantiationPromise, - await this.libraryStoppingPromise, - this.libraryStartingPromise) - ) - return ( - Te( - `library already starting, this.libraryStarted: ${this.libraryStarted}`, - ), - this.libraryStartingPromise - ); - if (this.libraryStarted) return; - let t = async () => { - Te("library starting"); - try { - let r = { traceparent: this.tracingHelper.getTraceParent() }; - (await this.engine?.connect(JSON.stringify(r)), - (this.libraryStarted = !0), - this.adapterPromise || - (this.adapterPromise = this.config.adapter?.connect()?.then(lr)), - await this.adapterPromise, - Te("library started")); - } catch (r) { - let n = this.parseInitError(r.message); - throw typeof n == "string" - ? r - : new Q(n.message, this.config.clientVersion, n.error_code); - } finally { - this.libraryStartingPromise = void 0; - } - }; - return ( - (this.libraryStartingPromise = this.tracingHelper.runInChildSpan( - "connect", - t, - )), - this.libraryStartingPromise - ); - } - async stop() { - if ( - (await this.libraryInstantiationPromise, - await this.libraryStartingPromise, - await this.executingQueryPromise, - this.libraryStoppingPromise) - ) - return (Te("library is already stopping"), this.libraryStoppingPromise); - if (!this.libraryStarted) { - (await (await this.adapterPromise)?.dispose(), - (this.adapterPromise = void 0)); - return; - } - let t = async () => { - (await new Promise((n) => setImmediate(n)), Te("library stopping")); - let r = { traceparent: this.tracingHelper.getTraceParent() }; - (await this.engine?.disconnect(JSON.stringify(r)), - this.engine?.free && this.engine.free(), - (this.engine = void 0), - (this.libraryStarted = !1), - (this.libraryStoppingPromise = void 0), - (this.libraryInstantiationPromise = void 0), - await (await this.adapterPromise)?.dispose(), - (this.adapterPromise = void 0), - Te("library stopped")); - }; - return ( - (this.libraryStoppingPromise = this.tracingHelper.runInChildSpan( - "disconnect", - t, - )), - this.libraryStoppingPromise - ); - } - version() { - return ( - (this.versionInfo = this.library?.version()), - this.versionInfo?.version ?? "unknown" - ); - } - debugPanic(t) { - return this.library?.debugPanic(t); - } - async request(t, { traceparent: r, interactiveTransaction: n }) { - Te(`sending request, this.libraryStarted: ${this.libraryStarted}`); - let i = JSON.stringify({ traceparent: r }), - o = JSON.stringify(t); - try { - await this.start(); - let s = await this.adapterPromise; - ((this.executingQueryPromise = this.engine?.query(o, i, n?.id)), - (this.lastQuery = o)); - let a = this.parseEngineResponse(await this.executingQueryPromise); - if (a.errors) - throw a.errors.length === 1 - ? this.buildQueryError(a.errors[0], s?.errorRegistry) - : new G(JSON.stringify(a.errors), { - clientVersion: this.config.clientVersion, - }); - if (this.loggerRustPanic) throw this.loggerRustPanic; - return { data: a }; - } catch (s) { - if (s instanceof Q) throw s; - if (s.code === "GenericFailure" && s.message?.startsWith("PANIC:")) - throw new ce(Hn(this, s.message), this.config.clientVersion); - let a = this.parseRequestError(s.message); - throw typeof a == "string" - ? s - : new G( - `${a.message} -${a.backtrace}`, - { clientVersion: this.config.clientVersion }, - ); - } - } - async requestBatch(t, { transaction: r, traceparent: n }) { - Te("requestBatch"); - let i = Vr(t, r); - await this.start(); - let o = await this.adapterPromise; - ((this.lastQuery = JSON.stringify(i)), - (this.executingQueryPromise = this.engine?.query( - this.lastQuery, - JSON.stringify({ traceparent: n }), - Ls(r), - ))); - let s = await this.executingQueryPromise, - a = this.parseEngineResponse(s); - if (a.errors) - throw a.errors.length === 1 - ? this.buildQueryError(a.errors[0], o?.errorRegistry) - : new G(JSON.stringify(a.errors), { - clientVersion: this.config.clientVersion, - }); - let { batchResult: l, errors: u } = a; - if (Array.isArray(l)) - return l.map((g) => - g.errors && g.errors.length > 0 - ? (this.loggerRustPanic ?? - this.buildQueryError(g.errors[0], o?.errorRegistry)) - : { data: g }, - ); - throw u && u.length === 1 - ? new Error(u[0].error) - : new Error(JSON.stringify(a)); - } - buildQueryError(t, r) { - if (t.user_facing_error.is_panic) - return new ce( - Hn(this, t.user_facing_error.message), - this.config.clientVersion, - ); - let n = this.getExternalAdapterError(t.user_facing_error, r); - return n - ? n.error - : Qr(t, this.config.clientVersion, this.config.activeProvider); - } - getExternalAdapterError(t, r) { - if (t.error_code === Lp && r) { - let n = t.meta?.id; - ur( - typeof n == "number", - "Malformed external JS error received from the engine", - ); - let i = r.consumeError(n); - return (ur(i, "External error with reported id was not registered"), i); - } - } - async metrics(t) { - await this.start(); - let r = await this.engine.metrics(JSON.stringify(t)); - return t.format === "prometheus" ? r : this.parseEngineResponse(r); - } -}; -function $p(e) { - return typeof e == "object" && e !== null && e.error_code !== void 0; -} -function Hn(e, t) { - return Fs({ - binaryTarget: e.binaryTarget, - title: t, - version: e.config.clientVersion, - engineVersion: e.versionInfo?.commit, - database: e.config.activeProvider, - query: e.lastQuery, - }); -} -m(); -c(); -p(); -d(); -f(); -function qs({ url: e, adapter: t, copyEngine: r, targetBuildType: n }) { - let i = [], - o = [], - s = (S) => { - i.push({ _tag: "warning", value: S }); - }, - a = (S) => { - let F = S.join(` -`); - o.push({ _tag: "error", value: F }); - }, - l = !!e?.startsWith("prisma://"), - u = bn(e), - g = !!t, - h = l || u; - !g && - r && - h && - n !== "client" && - n !== "wasm-compiler-edge" && - s([ - "recommend--no-engine", - "In production, we recommend using `prisma generate --no-engine` (See: `prisma generate --help`)", - ]); - let T = h || !r; - g && - (T || n === "edge") && - (n === "edge" - ? a([ - "Prisma Client was configured to use the `adapter` option but it was imported via its `/edge` endpoint.", - "Please either remove the `/edge` endpoint or remove the `adapter` from the Prisma Client constructor.", - ]) - : h - ? a([ - "You've provided both a driver adapter and an Accelerate database URL. Driver adapters currently cannot connect to Accelerate.", - "Please provide either a driver adapter with a direct database URL or an Accelerate URL and no driver adapter.", - ]) - : r || - a([ - "Prisma Client was configured to use the `adapter` option but `prisma generate` was run with `--no-engine`.", - "Please run `prisma generate` without `--no-engine` to be able to use Prisma Client with the adapter.", - ])); - let O = { accelerate: T, ppg: u, driverAdapters: g }; - function C(S) { - return S.length > 0; - } - return C(o) - ? { ok: !1, diagnostics: { warnings: i, errors: o }, isUsing: O } - : { ok: !0, diagnostics: { warnings: i }, isUsing: O }; -} -function Bs({ copyEngine: e = !0 }, t) { - let r; - try { - r = Wr({ - inlineDatasources: t.inlineDatasources, - overrideDatasources: t.overrideDatasources, - env: { ...t.env, ...y.env }, - clientVersion: t.clientVersion, - }); - } catch {} - let { - ok: n, - isUsing: i, - diagnostics: o, - } = qs({ - url: r, - adapter: t.adapter, - copyEngine: e, - targetBuildType: "react-native", - }); - for (let h of o.warnings) Lt(...h.value); - if (!n) { - let h = o.errors[0]; - throw new te(h.value, { clientVersion: t.clientVersion }); - } - let s = it(t.generator), - a = s === "library", - l = s === "binary", - u = s === "client", - g = (i.accelerate || i.ppg) && !i.driverAdapters; - return new er(t); -} -m(); -c(); -p(); -d(); -f(); -function js({ generator: e }) { - return e?.previewFeatures ?? []; -} -m(); -c(); -p(); -d(); -f(); -var $s = (e) => ({ command: e }); -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -var Us = (e) => e.strings.reduce((t, r, n) => `${t}@P${n}${r}`); -m(); -c(); -p(); -d(); -f(); -function vt(e) { - try { - return Vs(e, "fast"); - } catch { - return Vs(e, "slow"); - } -} -function Vs(e, t) { - return JSON.stringify(e.map((r) => Js(r, t))); -} -function Js(e, t) { - if (Array.isArray(e)) return e.map((r) => Js(r, t)); - if (typeof e == "bigint") - return { prisma__type: "bigint", prisma__value: e.toString() }; - if (st(e)) return { prisma__type: "date", prisma__value: e.toJSON() }; - if (Fe.isDecimal(e)) - return { prisma__type: "decimal", prisma__value: e.toJSON() }; - if (w.Buffer.isBuffer(e)) - return { prisma__type: "bytes", prisma__value: e.toString("base64") }; - if (Up(e)) - return { - prisma__type: "bytes", - prisma__value: w.Buffer.from(e).toString("base64"), - }; - if (ArrayBuffer.isView(e)) { - let { buffer: r, byteOffset: n, byteLength: i } = e; - return { - prisma__type: "bytes", - prisma__value: w.Buffer.from(r, n, i).toString("base64"), - }; - } - return typeof e == "object" && t === "slow" ? Gs(e) : e; -} -function Up(e) { - return e instanceof ArrayBuffer || e instanceof SharedArrayBuffer - ? !0 - : typeof e == "object" && e !== null - ? e[Symbol.toStringTag] === "ArrayBuffer" || - e[Symbol.toStringTag] === "SharedArrayBuffer" - : !1; -} -function Gs(e) { - if (typeof e != "object" || e === null) return e; - if (typeof e.toJSON == "function") return e.toJSON(); - if (Array.isArray(e)) return e.map(Qs); - let t = {}; - for (let r of Object.keys(e)) t[r] = Qs(e[r]); - return t; -} -function Qs(e) { - return typeof e == "bigint" ? e.toString() : Gs(e); -} -var Vp = /^(\s*alter\s)/i, - Ws = z("prisma:client"); -function Yn(e, t, r, n) { - if ( - !(e !== "postgresql" && e !== "cockroachdb") && - r.length > 0 && - Vp.exec(t) - ) - throw new Error(`Running ALTER using ${n} is not supported +`}m();c();p();d();f();m();c();p();d();f();m();c();p();d();f();function Ms(e,t){throw new Error(t)}function Tp(e){return e!==null&&typeof e=="object"&&typeof e.$type=="string"}function Ap(e,t){let r={};for(let n of Object.keys(e))r[n]=t(e[n],n);return r}function Pt(e){return e===null?e:Array.isArray(e)?e.map(Pt):typeof e=="object"?Tp(e)?Cp(e):e.constructor!==null&&e.constructor.name!=="Object"?e:Ap(e,Pt):e}function Cp({$type:e,value:t}){switch(e){case"BigInt":return BigInt(t);case"Bytes":{let{buffer:r,byteOffset:n,byteLength:i}=w.Buffer.from(t,"base64");return new Uint8Array(r,n,i)}case"DateTime":return new Date(t);case"Decimal":return new Ie(t);case"Json":return JSON.parse(t);default:Ms(t,"Unknown tagged value")}}var _s="6.19.2";m();c();p();d();f();m();c();p();d();f();var Rp=()=>globalThis.process?.release?.name==="node",Op=()=>!!globalThis.Bun||!!globalThis.process?.versions?.bun,kp=()=>!!globalThis.Deno,Ip=()=>typeof globalThis.Netlify=="object",Fp=()=>typeof globalThis.EdgeRuntime=="object",Mp=()=>globalThis.navigator?.userAgent==="Cloudflare-Workers";function _p(){return[[Ip,"netlify"],[Fp,"edge-light"],[Mp,"workerd"],[kp,"deno"],[Op,"bun"],[Rp,"node"]].flatMap(r=>r[0]()?[r[1]]:[]).at(0)??""}var Dp={node:"Node.js",workerd:"Cloudflare Workers",deno:"Deno and Deno Deploy",netlify:"Netlify Edge Functions","edge-light":"Edge Runtime (Vercel Edge Functions, Vercel Edge Middleware, Next.js (Pages Router) Edge API Routes, Next.js (App Router) Edge Route Handlers or Next.js Middleware)"};function Ds(){let e=_p();return{id:e,prettyName:Dp[e]||e,isEdge:["workerd","deno","netlify","edge-light"].includes(e)}}function Wr({inlineDatasources:e,overrideDatasources:t,env:r,clientVersion:n}){let i,o=Object.keys(e)[0],s=e[o]?.url,a=t[o]?.url;if(o===void 0?i=void 0:a?i=a:s?.value?i=s.value:s?.fromEnvVar&&(i=r[s.fromEnvVar]),s?.fromEnvVar!==void 0&&i===void 0)throw new Q(`error: Environment variable not found: ${s.fromEnvVar}.`,n);if(i===void 0)throw new Q("error: Missing URL environment variable, value, or override.",n);return i}m();c();p();d();f();m();c();p();d();f();function Ls(e){if(e?.kind==="itx")return e.options.id}m();c();p();d();f();var Kn=class{engineObject;constructor(t,r,n){this.engineObject=__PrismaProxy.create({datamodel:t.datamodel,env:y.env,ignoreEnvVarErrors:!0,datasourceOverrides:t.datasourceOverrides??{},logLevel:t.logLevel,logQueries:t.logQueries??!1,logCallback:r,enableTracing:t.enableTracing})}async connect(t,r){return __PrismaProxy.connect(this.engineObject,t,r)}async disconnect(t,r){return __PrismaProxy.disconnect(this.engineObject,t,r)}query(t,r,n,i){return __PrismaProxy.execute(this.engineObject,t,r,n,i)}compile(){throw new Error("not implemented")}sdlSchema(){return Promise.resolve("{}")}dmmf(t){return Promise.resolve("{}")}async startTransaction(t,r,n){return __PrismaProxy.startTransaction(this.engineObject,t,r,n)}async commitTransaction(t,r,n){return __PrismaProxy.commitTransaction(this.engineObject,t,r,n)}async rollbackTransaction(t,r,n){return __PrismaProxy.rollbackTransaction(this.engineObject,t,r,n)}metrics(t){return Promise.resolve("{}")}async applyPendingMigrations(){return __PrismaProxy.applyPendingMigrations(this.engineObject)}trace(t){return __PrismaProxy.trace(this.engineObject,t)}},Ns={async loadLibrary(e){if(!__PrismaProxy)throw new Q("__PrismaProxy not detected make sure React Native bindings are installed",e.clientVersion);return{debugPanic(){return Promise.reject("{}")},dmmf(){return Promise.resolve("{}")},version(){return{commit:"unknown",version:"unknown"}},QueryEngine:Kn}}};var Lp="P2036",Te=z("prisma:client:libraryEngine");function Np(e){return e.item_type==="query"&&"query"in e}function qp(e){return"level"in e?e.level==="error"&&e.message==="PANIC":!1}var TO=[...fn,"native"],Bp=0xffffffffffffffffn,zn=1n;function jp(){let e=zn++;return zn>Bp&&(zn=1n),e}var er=class{name="LibraryEngine";engine;libraryInstantiationPromise;libraryStartingPromise;libraryStoppingPromise;libraryStarted;executingQueryPromise;config;QueryEngineConstructor;libraryLoader;library;logEmitter;libQueryEnginePath;binaryTarget;datasourceOverrides;datamodel;logQueries;logLevel;lastQuery;loggerRustPanic;tracingHelper;adapterPromise;versionInfo;constructor(t,r){this.libraryLoader=Ns,this.config=t,this.libraryStarted=!1,this.logQueries=t.logQueries??!1,this.logLevel=t.logLevel??"error",this.logEmitter=t.logEmitter,this.datamodel=t.inlineSchema,this.tracingHelper=t.tracingHelper,t.enableDebugLogs&&(this.logLevel="debug");let n=Object.keys(t.overrideDatasources)[0],i=t.overrideDatasources[n]?.url;n!==void 0&&i!==void 0&&(this.datasourceOverrides={[n]:i}),this.libraryInstantiationPromise=this.instantiateLibrary()}wrapEngine(t){return{applyPendingMigrations:t.applyPendingMigrations?.bind(t),commitTransaction:this.withRequestId(t.commitTransaction.bind(t)),connect:this.withRequestId(t.connect.bind(t)),disconnect:this.withRequestId(t.disconnect.bind(t)),metrics:t.metrics?.bind(t),query:this.withRequestId(t.query.bind(t)),rollbackTransaction:this.withRequestId(t.rollbackTransaction.bind(t)),sdlSchema:t.sdlSchema?.bind(t),startTransaction:this.withRequestId(t.startTransaction.bind(t)),trace:t.trace.bind(t),free:t.free?.bind(t)}}withRequestId(t){return async(...r)=>{let n=jp().toString();try{return await t(...r,n)}finally{if(this.tracingHelper.isEnabled()){let i=await this.engine?.trace(n);if(i){let o=JSON.parse(i);this.tracingHelper.dispatchEngineSpans(o.spans)}}}}}async applyPendingMigrations(){await this.start(),await this.engine?.applyPendingMigrations()}async transaction(t,r,n){await this.start();let i=await this.adapterPromise,o=JSON.stringify(r),s;if(t==="start"){let l=JSON.stringify({max_wait:n.maxWait,timeout:n.timeout,isolation_level:n.isolationLevel});s=await this.engine?.startTransaction(l,o)}else t==="commit"?s=await this.engine?.commitTransaction(n.id,o):t==="rollback"&&(s=await this.engine?.rollbackTransaction(n.id,o));let a=this.parseEngineResponse(s);if($p(a)){let l=this.getExternalAdapterError(a,i?.errorRegistry);throw l?l.error:new se(a.message,{code:a.error_code,clientVersion:this.config.clientVersion,meta:a.meta})}else if(typeof a.message=="string")throw new G(a.message,{clientVersion:this.config.clientVersion});return a}async instantiateLibrary(){if(Te("internalSetup"),this.libraryInstantiationPromise)return this.libraryInstantiationPromise;this.binaryTarget=await this.getCurrentBinaryTarget(),await this.tracingHelper.runInChildSpan("load_engine",()=>this.loadEngine()),this.version()}async getCurrentBinaryTarget(){}parseEngineResponse(t){if(!t)throw new G("Response from the Engine was empty",{clientVersion:this.config.clientVersion});try{return JSON.parse(t)}catch{throw new G("Unable to JSON.parse response from engine",{clientVersion:this.config.clientVersion})}}async loadEngine(){if(!this.engine){this.QueryEngineConstructor||(this.library=await this.libraryLoader.loadLibrary(this.config),this.QueryEngineConstructor=this.library.QueryEngine);try{let t=new b(this);this.adapterPromise||(this.adapterPromise=this.config.adapter?.connect()?.then(lr));let r=await this.adapterPromise;r&&Te("Using driver adapter: %O",r),this.engine=this.wrapEngine(new this.QueryEngineConstructor({datamodel:this.datamodel,env:y.env,logQueries:this.config.logQueries??!1,ignoreEnvVarErrors:!0,datasourceOverrides:this.datasourceOverrides??{},logLevel:this.logLevel,configDir:this.config.cwd,engineProtocol:"json",enableTracing:this.tracingHelper.isEnabled()},n=>{t.deref()?.logger(n)},r))}catch(t){let r=t,n=this.parseInitError(r.message);throw typeof n=="string"?r:new Q(n.message,this.config.clientVersion,n.error_code)}}}logger(t){let r=this.parseEngineResponse(t);r&&(r.level=r?.level.toLowerCase()??"unknown",Np(r)?this.logEmitter.emit("query",{timestamp:new Date,query:r.query,params:r.params,duration:Number(r.duration_ms),target:r.module_path}):qp(r)?this.loggerRustPanic=new ce(Hn(this,`${r.message}: ${r.reason} in ${r.file}:${r.line}:${r.column}`),this.config.clientVersion):this.logEmitter.emit(r.level,{timestamp:new Date,message:r.message,target:r.module_path}))}parseInitError(t){try{return JSON.parse(t)}catch{}return t}parseRequestError(t){try{return JSON.parse(t)}catch{}return t}onBeforeExit(){throw new Error('"beforeExit" hook is not applicable to the library engine since Prisma 5.0.0, it is only relevant and implemented for the binary engine. Please add your event listener to the `process` object directly instead.')}async start(){if(this.libraryInstantiationPromise||(this.libraryInstantiationPromise=this.instantiateLibrary()),await this.libraryInstantiationPromise,await this.libraryStoppingPromise,this.libraryStartingPromise)return Te(`library already starting, this.libraryStarted: ${this.libraryStarted}`),this.libraryStartingPromise;if(this.libraryStarted)return;let t=async()=>{Te("library starting");try{let r={traceparent:this.tracingHelper.getTraceParent()};await this.engine?.connect(JSON.stringify(r)),this.libraryStarted=!0,this.adapterPromise||(this.adapterPromise=this.config.adapter?.connect()?.then(lr)),await this.adapterPromise,Te("library started")}catch(r){let n=this.parseInitError(r.message);throw typeof n=="string"?r:new Q(n.message,this.config.clientVersion,n.error_code)}finally{this.libraryStartingPromise=void 0}};return this.libraryStartingPromise=this.tracingHelper.runInChildSpan("connect",t),this.libraryStartingPromise}async stop(){if(await this.libraryInstantiationPromise,await this.libraryStartingPromise,await this.executingQueryPromise,this.libraryStoppingPromise)return Te("library is already stopping"),this.libraryStoppingPromise;if(!this.libraryStarted){await(await this.adapterPromise)?.dispose(),this.adapterPromise=void 0;return}let t=async()=>{await new Promise(n=>setImmediate(n)),Te("library stopping");let r={traceparent:this.tracingHelper.getTraceParent()};await this.engine?.disconnect(JSON.stringify(r)),this.engine?.free&&this.engine.free(),this.engine=void 0,this.libraryStarted=!1,this.libraryStoppingPromise=void 0,this.libraryInstantiationPromise=void 0,await(await this.adapterPromise)?.dispose(),this.adapterPromise=void 0,Te("library stopped")};return this.libraryStoppingPromise=this.tracingHelper.runInChildSpan("disconnect",t),this.libraryStoppingPromise}version(){return this.versionInfo=this.library?.version(),this.versionInfo?.version??"unknown"}debugPanic(t){return this.library?.debugPanic(t)}async request(t,{traceparent:r,interactiveTransaction:n}){Te(`sending request, this.libraryStarted: ${this.libraryStarted}`);let i=JSON.stringify({traceparent:r}),o=JSON.stringify(t);try{await this.start();let s=await this.adapterPromise;this.executingQueryPromise=this.engine?.query(o,i,n?.id),this.lastQuery=o;let a=this.parseEngineResponse(await this.executingQueryPromise);if(a.errors)throw a.errors.length===1?this.buildQueryError(a.errors[0],s?.errorRegistry):new G(JSON.stringify(a.errors),{clientVersion:this.config.clientVersion});if(this.loggerRustPanic)throw this.loggerRustPanic;return{data:a}}catch(s){if(s instanceof Q)throw s;if(s.code==="GenericFailure"&&s.message?.startsWith("PANIC:"))throw new ce(Hn(this,s.message),this.config.clientVersion);let a=this.parseRequestError(s.message);throw typeof a=="string"?s:new G(`${a.message} +${a.backtrace}`,{clientVersion:this.config.clientVersion})}}async requestBatch(t,{transaction:r,traceparent:n}){Te("requestBatch");let i=Vr(t,r);await this.start();let o=await this.adapterPromise;this.lastQuery=JSON.stringify(i),this.executingQueryPromise=this.engine?.query(this.lastQuery,JSON.stringify({traceparent:n}),Ls(r));let s=await this.executingQueryPromise,a=this.parseEngineResponse(s);if(a.errors)throw a.errors.length===1?this.buildQueryError(a.errors[0],o?.errorRegistry):new G(JSON.stringify(a.errors),{clientVersion:this.config.clientVersion});let{batchResult:l,errors:u}=a;if(Array.isArray(l))return l.map(g=>g.errors&&g.errors.length>0?this.loggerRustPanic??this.buildQueryError(g.errors[0],o?.errorRegistry):{data:g});throw u&&u.length===1?new Error(u[0].error):new Error(JSON.stringify(a))}buildQueryError(t,r){if(t.user_facing_error.is_panic)return new ce(Hn(this,t.user_facing_error.message),this.config.clientVersion);let n=this.getExternalAdapterError(t.user_facing_error,r);return n?n.error:Qr(t,this.config.clientVersion,this.config.activeProvider)}getExternalAdapterError(t,r){if(t.error_code===Lp&&r){let n=t.meta?.id;ur(typeof n=="number","Malformed external JS error received from the engine");let i=r.consumeError(n);return ur(i,"External error with reported id was not registered"),i}}async metrics(t){await this.start();let r=await this.engine.metrics(JSON.stringify(t));return t.format==="prometheus"?r:this.parseEngineResponse(r)}};function $p(e){return typeof e=="object"&&e!==null&&e.error_code!==void 0}function Hn(e,t){return Fs({binaryTarget:e.binaryTarget,title:t,version:e.config.clientVersion,engineVersion:e.versionInfo?.commit,database:e.config.activeProvider,query:e.lastQuery})}m();c();p();d();f();function qs({url:e,adapter:t,copyEngine:r,targetBuildType:n}){let i=[],o=[],s=S=>{i.push({_tag:"warning",value:S})},a=S=>{let F=S.join(` +`);o.push({_tag:"error",value:F})},l=!!e?.startsWith("prisma://"),u=bn(e),g=!!t,h=l||u;!g&&r&&h&&n!=="client"&&n!=="wasm-compiler-edge"&&s(["recommend--no-engine","In production, we recommend using `prisma generate --no-engine` (See: `prisma generate --help`)"]);let T=h||!r;g&&(T||n==="edge")&&(n==="edge"?a(["Prisma Client was configured to use the `adapter` option but it was imported via its `/edge` endpoint.","Please either remove the `/edge` endpoint or remove the `adapter` from the Prisma Client constructor."]):h?a(["You've provided both a driver adapter and an Accelerate database URL. Driver adapters currently cannot connect to Accelerate.","Please provide either a driver adapter with a direct database URL or an Accelerate URL and no driver adapter."]):r||a(["Prisma Client was configured to use the `adapter` option but `prisma generate` was run with `--no-engine`.","Please run `prisma generate` without `--no-engine` to be able to use Prisma Client with the adapter."]));let O={accelerate:T,ppg:u,driverAdapters:g};function C(S){return S.length>0}return C(o)?{ok:!1,diagnostics:{warnings:i,errors:o},isUsing:O}:{ok:!0,diagnostics:{warnings:i},isUsing:O}}function Bs({copyEngine:e=!0},t){let r;try{r=Wr({inlineDatasources:t.inlineDatasources,overrideDatasources:t.overrideDatasources,env:{...t.env,...y.env},clientVersion:t.clientVersion})}catch{}let{ok:n,isUsing:i,diagnostics:o}=qs({url:r,adapter:t.adapter,copyEngine:e,targetBuildType:"react-native"});for(let h of o.warnings)Lt(...h.value);if(!n){let h=o.errors[0];throw new te(h.value,{clientVersion:t.clientVersion})}let s=it(t.generator),a=s==="library",l=s==="binary",u=s==="client",g=(i.accelerate||i.ppg)&&!i.driverAdapters;return new er(t)}m();c();p();d();f();function js({generator:e}){return e?.previewFeatures??[]}m();c();p();d();f();var $s=e=>({command:e});m();c();p();d();f();m();c();p();d();f();var Us=e=>e.strings.reduce((t,r,n)=>`${t}@P${n}${r}`);m();c();p();d();f();function vt(e){try{return Vs(e,"fast")}catch{return Vs(e,"slow")}}function Vs(e,t){return JSON.stringify(e.map(r=>Js(r,t)))}function Js(e,t){if(Array.isArray(e))return e.map(r=>Js(r,t));if(typeof e=="bigint")return{prisma__type:"bigint",prisma__value:e.toString()};if(st(e))return{prisma__type:"date",prisma__value:e.toJSON()};if(Fe.isDecimal(e))return{prisma__type:"decimal",prisma__value:e.toJSON()};if(w.Buffer.isBuffer(e))return{prisma__type:"bytes",prisma__value:e.toString("base64")};if(Up(e))return{prisma__type:"bytes",prisma__value:w.Buffer.from(e).toString("base64")};if(ArrayBuffer.isView(e)){let{buffer:r,byteOffset:n,byteLength:i}=e;return{prisma__type:"bytes",prisma__value:w.Buffer.from(r,n,i).toString("base64")}}return typeof e=="object"&&t==="slow"?Gs(e):e}function Up(e){return e instanceof ArrayBuffer||e instanceof SharedArrayBuffer?!0:typeof e=="object"&&e!==null?e[Symbol.toStringTag]==="ArrayBuffer"||e[Symbol.toStringTag]==="SharedArrayBuffer":!1}function Gs(e){if(typeof e!="object"||e===null)return e;if(typeof e.toJSON=="function")return e.toJSON();if(Array.isArray(e))return e.map(Qs);let t={};for(let r of Object.keys(e))t[r]=Qs(e[r]);return t}function Qs(e){return typeof e=="bigint"?e.toString():Gs(e)}var Vp=/^(\s*alter\s)/i,Ws=z("prisma:client");function Yn(e,t,r,n){if(!(e!=="postgresql"&&e!=="cockroachdb")&&r.length>0&&Vp.exec(t))throw new Error(`Running ALTER using ${n} is not supported Using the example below you can still execute your query with Prisma, but please note that it is vulnerable to SQL injection attacks and requires you to take care of input sanitization. Example: await prisma.$executeRawUnsafe(\`ALTER USER prisma WITH PASSWORD '\${password}'\`) More Information: https://pris.ly/d/execute-raw -`); -} -var Zn = - ({ clientMethod: e, activeProvider: t }) => - (r) => { - let n = "", - i; - if (Br(r)) - ((n = r.sql), - (i = { values: vt(r.values), __prismaRawParameters__: !0 })); - else if (Array.isArray(r)) { - let [o, ...s] = r; - ((n = o), (i = { values: vt(s || []), __prismaRawParameters__: !0 })); - } else - switch (t) { - case "sqlite": - case "mysql": { - ((n = r.sql), - (i = { values: vt(r.values), __prismaRawParameters__: !0 })); - break; - } - case "cockroachdb": - case "postgresql": - case "postgres": { - ((n = r.text), - (i = { values: vt(r.values), __prismaRawParameters__: !0 })); - break; - } - case "sqlserver": { - ((n = Us(r)), - (i = { values: vt(r.values), __prismaRawParameters__: !0 })); - break; - } - default: - throw new Error(`The ${t} provider does not support ${e}`); - } - return ( - i?.values - ? Ws(`prisma.${e}(${n}, ${i.values})`) - : Ws(`prisma.${e}(${n})`), - { query: n, parameters: i } - ); - }, - Ks = { - requestArgsToMiddlewareArgs(e) { - return [e.strings, ...e.values]; - }, - middlewareArgsToRequestArgs(e) { - let [t, ...r] = e; - return new le(t, r); - }, - }, - zs = { - requestArgsToMiddlewareArgs(e) { - return [e]; - }, - middlewareArgsToRequestArgs(e) { - return e[0]; - }, - }; -m(); -c(); -p(); -d(); -f(); -function Xn(e) { - return function (r, n) { - let i, - o = (s = e) => { - try { - return s === void 0 || s?.kind === "itx" - ? (i ??= Hs(r(s))) - : Hs(r(s)); - } catch (a) { - return Promise.reject(a); - } - }; - return { - get spec() { - return n; - }, - then(s, a) { - return o().then(s, a); - }, - catch(s) { - return o().catch(s); - }, - finally(s) { - return o().finally(s); - }, - requestTransaction(s) { - let a = o(s); - return a.requestTransaction ? a.requestTransaction(s) : a; - }, - [Symbol.toStringTag]: "PrismaPromise", - }; - }; -} -function Hs(e) { - return typeof e.then == "function" ? e : Promise.resolve(e); -} -m(); -c(); -p(); -d(); -f(); -var Qp = mn.split(".")[0], - Jp = { - isEnabled() { - return !1; - }, - getTraceParent() { - return "00-10-10-00"; - }, - dispatchEngineSpans() {}, - getActiveContext() {}, - runInChildSpan(e, t) { - return t(); - }, - }, - ei = class { - isEnabled() { - return this.getGlobalTracingHelper().isEnabled(); - } - getTraceParent(t) { - return this.getGlobalTracingHelper().getTraceParent(t); - } - dispatchEngineSpans(t) { - return this.getGlobalTracingHelper().dispatchEngineSpans(t); - } - getActiveContext() { - return this.getGlobalTracingHelper().getActiveContext(); - } - runInChildSpan(t, r) { - return this.getGlobalTracingHelper().runInChildSpan(t, r); - } - getGlobalTracingHelper() { - let t = globalThis[`V${Qp}_PRISMA_INSTRUMENTATION`], - r = globalThis.PRISMA_INSTRUMENTATION; - return t?.helper ?? r?.helper ?? Jp; - } - }; -function Ys() { - return new ei(); -} -m(); -c(); -p(); -d(); -f(); -function Zs(e, t = () => {}) { - let r, - n = new Promise((i) => (r = i)); - return { - then(i) { - return (--e === 0 && r(t()), i?.(n)); - }, - }; -} -m(); -c(); -p(); -d(); -f(); -function Xs(e) { - return typeof e == "string" - ? e - : e.reduce( - (t, r) => { - let n = typeof r == "string" ? r : r.level; - return n === "query" - ? t - : t && (r === "info" || t === "info") - ? "info" - : n; - }, - void 0, - ); -} -m(); -c(); -p(); -d(); -f(); -m(); -c(); -p(); -d(); -f(); -function Kr(e) { - return typeof e.batchRequestIdx == "number"; -} -m(); -c(); -p(); -d(); -f(); -function ea(e) { - if (e.action !== "findUnique" && e.action !== "findUniqueOrThrow") return; - let t = []; - return ( - e.modelName && t.push(e.modelName), - e.query.arguments && t.push(ti(e.query.arguments)), - t.push(ti(e.query.selection)), - t.join("") - ); -} -function ti(e) { - return `(${Object.keys(e) - .sort() - .map((r) => { - let n = e[r]; - return typeof n == "object" && n !== null ? `(${r} ${ti(n)})` : r; - }) - .join(" ")})`; -} -m(); -c(); -p(); -d(); -f(); -var Gp = { - aggregate: !1, - aggregateRaw: !1, - createMany: !0, - createManyAndReturn: !0, - createOne: !0, - deleteMany: !0, - deleteOne: !0, - executeRaw: !0, - findFirst: !1, - findFirstOrThrow: !1, - findMany: !1, - findRaw: !1, - findUnique: !1, - findUniqueOrThrow: !1, - groupBy: !1, - queryRaw: !1, - runCommandRaw: !0, - updateMany: !0, - updateManyAndReturn: !0, - updateOne: !0, - upsertOne: !0, -}; -function ri(e) { - return Gp[e]; -} -m(); -c(); -p(); -d(); -f(); -var zr = class { - constructor(t) { - this.options = t; - this.batches = {}; - } - batches; - tickActive = !1; - request(t) { - let r = this.options.batchBy(t); - return r - ? (this.batches[r] || - ((this.batches[r] = []), - this.tickActive || - ((this.tickActive = !0), - y.nextTick(() => { - (this.dispatchBatches(), (this.tickActive = !1)); - }))), - new Promise((n, i) => { - this.batches[r].push({ request: t, resolve: n, reject: i }); - })) - : this.options.singleLoader(t); - } - dispatchBatches() { - for (let t in this.batches) { - let r = this.batches[t]; - (delete this.batches[t], - r.length === 1 - ? this.options - .singleLoader(r[0].request) - .then((n) => { - n instanceof Error ? r[0].reject(n) : r[0].resolve(n); - }) - .catch((n) => { - r[0].reject(n); - }) - : (r.sort((n, i) => this.options.batchOrder(n.request, i.request)), - this.options - .batchLoader(r.map((n) => n.request)) - .then((n) => { - if (n instanceof Error) - for (let i = 0; i < r.length; i++) r[i].reject(n); - else - for (let i = 0; i < r.length; i++) { - let o = n[i]; - o instanceof Error ? r[i].reject(o) : r[i].resolve(o); - } - }) - .catch((n) => { - for (let i = 0; i < r.length; i++) r[i].reject(n); - }))); - } - } - get [Symbol.toStringTag]() { - return "DataLoader"; - } -}; -m(); -c(); -p(); -d(); -f(); -function Ye(e, t) { - if (t === null) return t; - switch (e) { - case "bigint": - return BigInt(t); - case "bytes": { - let { - buffer: r, - byteOffset: n, - byteLength: i, - } = w.Buffer.from(t, "base64"); - return new Uint8Array(r, n, i); - } - case "decimal": - return new Fe(t); - case "datetime": - case "date": - return new Date(t); - case "time": - return new Date(`1970-01-01T${t}Z`); - case "bigint-array": - return t.map((r) => Ye("bigint", r)); - case "bytes-array": - return t.map((r) => Ye("bytes", r)); - case "decimal-array": - return t.map((r) => Ye("decimal", r)); - case "datetime-array": - return t.map((r) => Ye("datetime", r)); - case "date-array": - return t.map((r) => Ye("date", r)); - case "time-array": - return t.map((r) => Ye("time", r)); - default: - return t; - } -} -function Hr(e) { - let t = [], - r = Wp(e); - for (let n = 0; n < e.rows.length; n++) { - let i = e.rows[n], - o = { ...r }; - for (let s = 0; s < i.length; s++) o[e.columns[s]] = Ye(e.types[s], i[s]); - t.push(o); - } - return t; -} -function Wp(e) { - let t = {}; - for (let r = 0; r < e.columns.length; r++) t[e.columns[r]] = null; - return t; -} -var Kp = z("prisma:client:request_handler"), - Yr = class { - client; - dataloader; - logEmitter; - constructor(t, r) { - ((this.logEmitter = r), - (this.client = t), - (this.dataloader = new zr({ - batchLoader: Es(async ({ requests: n, customDataProxyFetch: i }) => { - let { transaction: o, otelParentCtx: s } = n[0], - a = n.map((h) => h.protocolQuery), - l = this.client._tracingHelper.getTraceParent(s), - u = n.some((h) => ri(h.protocolQuery.action)); - return ( - await this.client._engine.requestBatch(a, { - traceparent: l, - transaction: zp(o), - containsWrite: u, - customDataProxyFetch: i, - }) - ).map((h, T) => { - if (h instanceof Error) return h; - try { - return this.mapQueryEngineResult(n[T], h); - } catch (O) { - return O; - } - }); - }), - singleLoader: async (n) => { - let i = n.transaction?.kind === "itx" ? ta(n.transaction) : void 0, - o = await this.client._engine.request(n.protocolQuery, { - traceparent: this.client._tracingHelper.getTraceParent(), - interactiveTransaction: i, - isWrite: ri(n.protocolQuery.action), - customDataProxyFetch: n.customDataProxyFetch, - }); - return this.mapQueryEngineResult(n, o); - }, - batchBy: (n) => - n.transaction?.id - ? `transaction-${n.transaction.id}` - : ea(n.protocolQuery), - batchOrder(n, i) { - return n.transaction?.kind === "batch" && - i.transaction?.kind === "batch" - ? n.transaction.index - i.transaction.index - : 0; - }, - }))); - } - async request(t) { - try { - return await this.dataloader.request(t); - } catch (r) { - let { - clientMethod: n, - callsite: i, - transaction: o, - args: s, - modelName: a, - } = t; - this.handleAndLogRequestError({ - error: r, - clientMethod: n, - callsite: i, - transaction: o, - args: s, - modelName: a, - globalOmit: t.globalOmit, - }); - } - } - mapQueryEngineResult({ dataPath: t, unpacker: r }, n) { - let i = n?.data, - o = this.unpack(i, t, r); - return y.env.PRISMA_CLIENT_GET_TIME ? { data: o } : o; - } - handleAndLogRequestError(t) { - try { - this.handleRequestError(t); - } catch (r) { - throw ( - this.logEmitter && - this.logEmitter.emit("error", { - message: r.message, - target: t.clientMethod, - timestamp: new Date(), - }), - r - ); - } - } - handleRequestError({ - error: t, - clientMethod: r, - callsite: n, - transaction: i, - args: o, - modelName: s, - globalOmit: a, - }) { - if ((Kp(t), Hp(t, i))) throw t; - if (t instanceof se && Yp(t)) { - let u = ra(t.meta); - Mr({ - args: o, - errors: [u], - callsite: n, - errorFormat: this.client._errorFormat, - originalMethod: r, - clientVersion: this.client._clientVersion, - globalOmit: a, - }); - } - let l = t.message; - if ( - (n && - (l = vr({ - callsite: n, - originalMethod: r, - isPanic: t.isPanic, - showColors: this.client._errorFormat === "pretty", - message: l, - })), - (l = this.sanitizeMessage(l)), - t.code) - ) { - let u = s ? { modelName: s, ...t.meta } : t.meta; - throw new se(l, { - code: t.code, - clientVersion: this.client._clientVersion, - meta: u, - batchRequestIdx: t.batchRequestIdx, - }); - } else { - if (t.isPanic) throw new ce(l, this.client._clientVersion); - if (t instanceof G) - throw new G(l, { - clientVersion: this.client._clientVersion, - batchRequestIdx: t.batchRequestIdx, - }); - if (t instanceof Q) throw new Q(l, this.client._clientVersion); - if (t instanceof ce) throw new ce(l, this.client._clientVersion); - } - throw ((t.clientVersion = this.client._clientVersion), t); - } - sanitizeMessage(t) { - return this.client._errorFormat && this.client._errorFormat !== "pretty" - ? ot(t) - : t; - } - unpack(t, r, n) { - if (!t || (t.data && (t = t.data), !t)) return t; - let i = Object.keys(t)[0], - o = Object.values(t)[0], - s = r.filter((u) => u !== "select" && u !== "include"), - a = Qn(o, s), - l = i === "queryRaw" ? Hr(a) : Pt(a); - return n ? n(l) : l; - } - get [Symbol.toStringTag]() { - return "RequestHandler"; - } - }; -function zp(e) { - if (e) { - if (e.kind === "batch") - return { kind: "batch", options: { isolationLevel: e.isolationLevel } }; - if (e.kind === "itx") return { kind: "itx", options: ta(e) }; - ze(e, "Unknown transaction kind"); - } -} -function ta(e) { - return { id: e.id, payload: e.payload }; -} -function Hp(e, t) { - return Kr(e) && t?.kind === "batch" && e.batchRequestIdx !== t.index; -} -function Yp(e) { - return e.code === "P2009" || e.code === "P2012"; -} -function ra(e) { - if (e.kind === "Union") return { kind: "Union", errors: e.errors.map(ra) }; - if (Array.isArray(e.selectionPath)) { - let [, ...t] = e.selectionPath; - return { ...e, selectionPath: t }; - } - return e; -} -m(); -c(); -p(); -d(); -f(); -var na = _s; -m(); -c(); -p(); -d(); -f(); -var la = Qe(In()); -m(); -c(); -p(); -d(); -f(); -var j = class extends Error { - constructor(t) { - (super( - t + - ` -Read more at https://pris.ly/d/client-constructor`, - ), - (this.name = "PrismaClientConstructorValidationError")); - } - get [Symbol.toStringTag]() { - return "PrismaClientConstructorValidationError"; - } -}; -ue(j, "PrismaClientConstructorValidationError"); -var ia = [ - "datasources", - "datasourceUrl", - "errorFormat", - "adapter", - "log", - "transactionOptions", - "omit", - "__internal", - ], - oa = ["pretty", "colorless", "minimal"], - sa = ["info", "query", "warn", "error"], - Zp = { - datasources: (e, { datasourceNames: t }) => { - if (e) { - if (typeof e != "object" || Array.isArray(e)) - throw new j( - `Invalid value ${JSON.stringify(e)} for "datasources" provided to PrismaClient constructor`, - ); - for (let [r, n] of Object.entries(e)) { - if (!t.includes(r)) { - let i = Tt(r, t) || ` Available datasources: ${t.join(", ")}`; - throw new j( - `Unknown datasource ${r} provided to PrismaClient constructor.${i}`, - ); - } - if (typeof n != "object" || Array.isArray(n)) - throw new j(`Invalid value ${JSON.stringify(e)} for datasource "${r}" provided to PrismaClient constructor. -It should have this form: { url: "CONNECTION_STRING" }`); - if (n && typeof n == "object") - for (let [i, o] of Object.entries(n)) { - if (i !== "url") - throw new j(`Invalid value ${JSON.stringify(e)} for datasource "${r}" provided to PrismaClient constructor. -It should have this form: { url: "CONNECTION_STRING" }`); - if (typeof o != "string") - throw new j(`Invalid value ${JSON.stringify(o)} for datasource "${r}" provided to PrismaClient constructor. -It should have this form: { url: "CONNECTION_STRING" }`); - } - } - } - }, - adapter: (e, t) => { - if (!e && it(t.generator) === "client") - throw new j( - 'Using engine type "client" requires a driver adapter to be provided to PrismaClient constructor.', - ); - if (e !== null) { - if (e === void 0) - throw new j( - '"adapter" property must not be undefined, use null to conditionally disable driver adapters.', - ); - if (it(t.generator) === "binary") - throw new j( - 'Cannot use a driver adapter with the "binary" Query Engine. Please use the "library" Query Engine.', - ); - } - }, - datasourceUrl: (e) => { - if (typeof e < "u" && typeof e != "string") - throw new j(`Invalid value ${JSON.stringify(e)} for "datasourceUrl" provided to PrismaClient constructor. -Expected string or undefined.`); - }, - errorFormat: (e) => { - if (e) { - if (typeof e != "string") - throw new j( - `Invalid value ${JSON.stringify(e)} for "errorFormat" provided to PrismaClient constructor.`, - ); - if (!oa.includes(e)) { - let t = Tt(e, oa); - throw new j( - `Invalid errorFormat ${e} provided to PrismaClient constructor.${t}`, - ); - } - } - }, - log: (e) => { - if (!e) return; - if (!Array.isArray(e)) - throw new j( - `Invalid value ${JSON.stringify(e)} for "log" provided to PrismaClient constructor.`, - ); - function t(r) { - if (typeof r == "string" && !sa.includes(r)) { - let n = Tt(r, sa); - throw new j( - `Invalid log level "${r}" provided to PrismaClient constructor.${n}`, - ); - } - } - for (let r of e) { - t(r); - let n = { - level: t, - emit: (i) => { - let o = ["stdout", "event"]; - if (!o.includes(i)) { - let s = Tt(i, o); - throw new j( - `Invalid value ${JSON.stringify(i)} for "emit" in logLevel provided to PrismaClient constructor.${s}`, - ); - } - }, - }; - if (r && typeof r == "object") - for (let [i, o] of Object.entries(r)) - if (n[i]) n[i](o); - else - throw new j( - `Invalid property ${i} for "log" provided to PrismaClient constructor`, - ); - } - }, - transactionOptions: (e) => { - if (!e) return; - let t = e.maxWait; - if (t != null && t <= 0) - throw new j( - `Invalid value ${t} for maxWait in "transactionOptions" provided to PrismaClient constructor. maxWait needs to be greater than 0`, - ); - let r = e.timeout; - if (r != null && r <= 0) - throw new j( - `Invalid value ${r} for timeout in "transactionOptions" provided to PrismaClient constructor. timeout needs to be greater than 0`, - ); - }, - omit: (e, t) => { - if (typeof e != "object") - throw new j('"omit" option is expected to be an object.'); - if (e === null) throw new j('"omit" option can not be `null`'); - let r = []; - for (let [n, i] of Object.entries(e)) { - let o = ed(n, t.runtimeDataModel); - if (!o) { - r.push({ kind: "UnknownModel", modelKey: n }); - continue; - } - for (let [s, a] of Object.entries(i)) { - let l = o.fields.find((u) => u.name === s); - if (!l) { - r.push({ kind: "UnknownField", modelKey: n, fieldName: s }); - continue; - } - if (l.relationName) { - r.push({ kind: "RelationInOmit", modelKey: n, fieldName: s }); - continue; - } - typeof a != "boolean" && - r.push({ kind: "InvalidFieldValue", modelKey: n, fieldName: s }); - } - } - if (r.length > 0) throw new j(td(e, r)); - }, - __internal: (e) => { - if (!e) return; - let t = ["debug", "engine", "configOverride"]; - if (typeof e != "object") - throw new j( - `Invalid value ${JSON.stringify(e)} for "__internal" to PrismaClient constructor`, - ); - for (let [r] of Object.entries(e)) - if (!t.includes(r)) { - let n = Tt(r, t); - throw new j( - `Invalid property ${JSON.stringify(r)} for "__internal" provided to PrismaClient constructor.${n}`, - ); - } - }, - }; -function ua(e, t) { - for (let [r, n] of Object.entries(e)) { - if (!ia.includes(r)) { - let i = Tt(r, ia); - throw new j( - `Unknown property ${r} provided to PrismaClient constructor.${i}`, - ); - } - Zp[r](n, t); - } - if (e.datasourceUrl && e.datasources) - throw new j( - 'Can not use "datasourceUrl" and "datasources" options at the same time. Pick one of them', - ); -} -function Tt(e, t) { - if (t.length === 0 || typeof e != "string") return ""; - let r = Xp(e, t); - return r ? ` Did you mean "${r}"?` : ""; -} -function Xp(e, t) { - if (t.length === 0) return null; - let r = t.map((i) => ({ value: i, distance: (0, la.default)(e, i) })); - r.sort((i, o) => (i.distance < o.distance ? -1 : 1)); - let n = r[0]; - return n.distance < 3 ? n.value : null; -} -function ed(e, t) { - return aa(t.models, e) ?? aa(t.types, e); -} -function aa(e, t) { - let r = Object.keys(e).find((n) => De(n) === t); - if (r) return e[r]; -} -function td(e, t) { - let r = yt(e); - for (let o of t) - switch (o.kind) { - case "UnknownModel": - (r.arguments.getField(o.modelKey)?.markAsError(), - r.addErrorMessage(() => `Unknown model name: ${o.modelKey}.`)); - break; - case "UnknownField": - (r.arguments.getDeepField([o.modelKey, o.fieldName])?.markAsError(), - r.addErrorMessage( - () => - `Model "${o.modelKey}" does not have a field named "${o.fieldName}".`, - )); - break; - case "RelationInOmit": - (r.arguments.getDeepField([o.modelKey, o.fieldName])?.markAsError(), - r.addErrorMessage( - () => - 'Relations are already excluded by default and can not be specified in "omit".', - )); - break; - case "InvalidFieldValue": - (r.arguments - .getDeepFieldValue([o.modelKey, o.fieldName]) - ?.markAsError(), - r.addErrorMessage( - () => "Omit field option value must be a boolean.", - )); - break; - } - let { message: n, args: i } = Fr(r, "colorless"); - return `Error validating "omit" option: +`)}var Zn=({clientMethod:e,activeProvider:t})=>r=>{let n="",i;if(Br(r))n=r.sql,i={values:vt(r.values),__prismaRawParameters__:!0};else if(Array.isArray(r)){let[o,...s]=r;n=o,i={values:vt(s||[]),__prismaRawParameters__:!0}}else switch(t){case"sqlite":case"mysql":{n=r.sql,i={values:vt(r.values),__prismaRawParameters__:!0};break}case"cockroachdb":case"postgresql":case"postgres":{n=r.text,i={values:vt(r.values),__prismaRawParameters__:!0};break}case"sqlserver":{n=Us(r),i={values:vt(r.values),__prismaRawParameters__:!0};break}default:throw new Error(`The ${t} provider does not support ${e}`)}return i?.values?Ws(`prisma.${e}(${n}, ${i.values})`):Ws(`prisma.${e}(${n})`),{query:n,parameters:i}},Ks={requestArgsToMiddlewareArgs(e){return[e.strings,...e.values]},middlewareArgsToRequestArgs(e){let[t,...r]=e;return new le(t,r)}},zs={requestArgsToMiddlewareArgs(e){return[e]},middlewareArgsToRequestArgs(e){return e[0]}};m();c();p();d();f();function Xn(e){return function(r,n){let i,o=(s=e)=>{try{return s===void 0||s?.kind==="itx"?i??=Hs(r(s)):Hs(r(s))}catch(a){return Promise.reject(a)}};return{get spec(){return n},then(s,a){return o().then(s,a)},catch(s){return o().catch(s)},finally(s){return o().finally(s)},requestTransaction(s){let a=o(s);return a.requestTransaction?a.requestTransaction(s):a},[Symbol.toStringTag]:"PrismaPromise"}}}function Hs(e){return typeof e.then=="function"?e:Promise.resolve(e)}m();c();p();d();f();var Qp=mn.split(".")[0],Jp={isEnabled(){return!1},getTraceParent(){return"00-10-10-00"},dispatchEngineSpans(){},getActiveContext(){},runInChildSpan(e,t){return t()}},ei=class{isEnabled(){return this.getGlobalTracingHelper().isEnabled()}getTraceParent(t){return this.getGlobalTracingHelper().getTraceParent(t)}dispatchEngineSpans(t){return this.getGlobalTracingHelper().dispatchEngineSpans(t)}getActiveContext(){return this.getGlobalTracingHelper().getActiveContext()}runInChildSpan(t,r){return this.getGlobalTracingHelper().runInChildSpan(t,r)}getGlobalTracingHelper(){let t=globalThis[`V${Qp}_PRISMA_INSTRUMENTATION`],r=globalThis.PRISMA_INSTRUMENTATION;return t?.helper??r?.helper??Jp}};function Ys(){return new ei}m();c();p();d();f();function Zs(e,t=()=>{}){let r,n=new Promise(i=>r=i);return{then(i){return--e===0&&r(t()),i?.(n)}}}m();c();p();d();f();function Xs(e){return typeof e=="string"?e:e.reduce((t,r)=>{let n=typeof r=="string"?r:r.level;return n==="query"?t:t&&(r==="info"||t==="info")?"info":n},void 0)}m();c();p();d();f();m();c();p();d();f();function Kr(e){return typeof e.batchRequestIdx=="number"}m();c();p();d();f();function ea(e){if(e.action!=="findUnique"&&e.action!=="findUniqueOrThrow")return;let t=[];return e.modelName&&t.push(e.modelName),e.query.arguments&&t.push(ti(e.query.arguments)),t.push(ti(e.query.selection)),t.join("")}function ti(e){return`(${Object.keys(e).sort().map(r=>{let n=e[r];return typeof n=="object"&&n!==null?`(${r} ${ti(n)})`:r}).join(" ")})`}m();c();p();d();f();var Gp={aggregate:!1,aggregateRaw:!1,createMany:!0,createManyAndReturn:!0,createOne:!0,deleteMany:!0,deleteOne:!0,executeRaw:!0,findFirst:!1,findFirstOrThrow:!1,findMany:!1,findRaw:!1,findUnique:!1,findUniqueOrThrow:!1,groupBy:!1,queryRaw:!1,runCommandRaw:!0,updateMany:!0,updateManyAndReturn:!0,updateOne:!0,upsertOne:!0};function ri(e){return Gp[e]}m();c();p();d();f();var zr=class{constructor(t){this.options=t;this.batches={}}batches;tickActive=!1;request(t){let r=this.options.batchBy(t);return r?(this.batches[r]||(this.batches[r]=[],this.tickActive||(this.tickActive=!0,y.nextTick(()=>{this.dispatchBatches(),this.tickActive=!1}))),new Promise((n,i)=>{this.batches[r].push({request:t,resolve:n,reject:i})})):this.options.singleLoader(t)}dispatchBatches(){for(let t in this.batches){let r=this.batches[t];delete this.batches[t],r.length===1?this.options.singleLoader(r[0].request).then(n=>{n instanceof Error?r[0].reject(n):r[0].resolve(n)}).catch(n=>{r[0].reject(n)}):(r.sort((n,i)=>this.options.batchOrder(n.request,i.request)),this.options.batchLoader(r.map(n=>n.request)).then(n=>{if(n instanceof Error)for(let i=0;i{for(let i=0;iYe("bigint",r));case"bytes-array":return t.map(r=>Ye("bytes",r));case"decimal-array":return t.map(r=>Ye("decimal",r));case"datetime-array":return t.map(r=>Ye("datetime",r));case"date-array":return t.map(r=>Ye("date",r));case"time-array":return t.map(r=>Ye("time",r));default:return t}}function Hr(e){let t=[],r=Wp(e);for(let n=0;n{let{transaction:o,otelParentCtx:s}=n[0],a=n.map(h=>h.protocolQuery),l=this.client._tracingHelper.getTraceParent(s),u=n.some(h=>ri(h.protocolQuery.action));return(await this.client._engine.requestBatch(a,{traceparent:l,transaction:zp(o),containsWrite:u,customDataProxyFetch:i})).map((h,T)=>{if(h instanceof Error)return h;try{return this.mapQueryEngineResult(n[T],h)}catch(O){return O}})}),singleLoader:async n=>{let i=n.transaction?.kind==="itx"?ta(n.transaction):void 0,o=await this.client._engine.request(n.protocolQuery,{traceparent:this.client._tracingHelper.getTraceParent(),interactiveTransaction:i,isWrite:ri(n.protocolQuery.action),customDataProxyFetch:n.customDataProxyFetch});return this.mapQueryEngineResult(n,o)},batchBy:n=>n.transaction?.id?`transaction-${n.transaction.id}`:ea(n.protocolQuery),batchOrder(n,i){return n.transaction?.kind==="batch"&&i.transaction?.kind==="batch"?n.transaction.index-i.transaction.index:0}})}async request(t){try{return await this.dataloader.request(t)}catch(r){let{clientMethod:n,callsite:i,transaction:o,args:s,modelName:a}=t;this.handleAndLogRequestError({error:r,clientMethod:n,callsite:i,transaction:o,args:s,modelName:a,globalOmit:t.globalOmit})}}mapQueryEngineResult({dataPath:t,unpacker:r},n){let i=n?.data,o=this.unpack(i,t,r);return y.env.PRISMA_CLIENT_GET_TIME?{data:o}:o}handleAndLogRequestError(t){try{this.handleRequestError(t)}catch(r){throw this.logEmitter&&this.logEmitter.emit("error",{message:r.message,target:t.clientMethod,timestamp:new Date}),r}}handleRequestError({error:t,clientMethod:r,callsite:n,transaction:i,args:o,modelName:s,globalOmit:a}){if(Kp(t),Hp(t,i))throw t;if(t instanceof se&&Yp(t)){let u=ra(t.meta);Mr({args:o,errors:[u],callsite:n,errorFormat:this.client._errorFormat,originalMethod:r,clientVersion:this.client._clientVersion,globalOmit:a})}let l=t.message;if(n&&(l=vr({callsite:n,originalMethod:r,isPanic:t.isPanic,showColors:this.client._errorFormat==="pretty",message:l})),l=this.sanitizeMessage(l),t.code){let u=s?{modelName:s,...t.meta}:t.meta;throw new se(l,{code:t.code,clientVersion:this.client._clientVersion,meta:u,batchRequestIdx:t.batchRequestIdx})}else{if(t.isPanic)throw new ce(l,this.client._clientVersion);if(t instanceof G)throw new G(l,{clientVersion:this.client._clientVersion,batchRequestIdx:t.batchRequestIdx});if(t instanceof Q)throw new Q(l,this.client._clientVersion);if(t instanceof ce)throw new ce(l,this.client._clientVersion)}throw t.clientVersion=this.client._clientVersion,t}sanitizeMessage(t){return this.client._errorFormat&&this.client._errorFormat!=="pretty"?ot(t):t}unpack(t,r,n){if(!t||(t.data&&(t=t.data),!t))return t;let i=Object.keys(t)[0],o=Object.values(t)[0],s=r.filter(u=>u!=="select"&&u!=="include"),a=Qn(o,s),l=i==="queryRaw"?Hr(a):Pt(a);return n?n(l):l}get[Symbol.toStringTag](){return"RequestHandler"}};function zp(e){if(e){if(e.kind==="batch")return{kind:"batch",options:{isolationLevel:e.isolationLevel}};if(e.kind==="itx")return{kind:"itx",options:ta(e)};ze(e,"Unknown transaction kind")}}function ta(e){return{id:e.id,payload:e.payload}}function Hp(e,t){return Kr(e)&&t?.kind==="batch"&&e.batchRequestIdx!==t.index}function Yp(e){return e.code==="P2009"||e.code==="P2012"}function ra(e){if(e.kind==="Union")return{kind:"Union",errors:e.errors.map(ra)};if(Array.isArray(e.selectionPath)){let[,...t]=e.selectionPath;return{...e,selectionPath:t}}return e}m();c();p();d();f();var na=_s;m();c();p();d();f();var la=Qe(In());m();c();p();d();f();var j=class extends Error{constructor(t){super(t+` +Read more at https://pris.ly/d/client-constructor`),this.name="PrismaClientConstructorValidationError"}get[Symbol.toStringTag](){return"PrismaClientConstructorValidationError"}};ue(j,"PrismaClientConstructorValidationError");var ia=["datasources","datasourceUrl","errorFormat","adapter","log","transactionOptions","omit","__internal"],oa=["pretty","colorless","minimal"],sa=["info","query","warn","error"],Zp={datasources:(e,{datasourceNames:t})=>{if(e){if(typeof e!="object"||Array.isArray(e))throw new j(`Invalid value ${JSON.stringify(e)} for "datasources" provided to PrismaClient constructor`);for(let[r,n]of Object.entries(e)){if(!t.includes(r)){let i=Tt(r,t)||` Available datasources: ${t.join(", ")}`;throw new j(`Unknown datasource ${r} provided to PrismaClient constructor.${i}`)}if(typeof n!="object"||Array.isArray(n))throw new j(`Invalid value ${JSON.stringify(e)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`);if(n&&typeof n=="object")for(let[i,o]of Object.entries(n)){if(i!=="url")throw new j(`Invalid value ${JSON.stringify(e)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`);if(typeof o!="string")throw new j(`Invalid value ${JSON.stringify(o)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`)}}}},adapter:(e,t)=>{if(!e&&it(t.generator)==="client")throw new j('Using engine type "client" requires a driver adapter to be provided to PrismaClient constructor.');if(e!==null){if(e===void 0)throw new j('"adapter" property must not be undefined, use null to conditionally disable driver adapters.');if(it(t.generator)==="binary")throw new j('Cannot use a driver adapter with the "binary" Query Engine. Please use the "library" Query Engine.')}},datasourceUrl:e=>{if(typeof e<"u"&&typeof e!="string")throw new j(`Invalid value ${JSON.stringify(e)} for "datasourceUrl" provided to PrismaClient constructor. +Expected string or undefined.`)},errorFormat:e=>{if(e){if(typeof e!="string")throw new j(`Invalid value ${JSON.stringify(e)} for "errorFormat" provided to PrismaClient constructor.`);if(!oa.includes(e)){let t=Tt(e,oa);throw new j(`Invalid errorFormat ${e} provided to PrismaClient constructor.${t}`)}}},log:e=>{if(!e)return;if(!Array.isArray(e))throw new j(`Invalid value ${JSON.stringify(e)} for "log" provided to PrismaClient constructor.`);function t(r){if(typeof r=="string"&&!sa.includes(r)){let n=Tt(r,sa);throw new j(`Invalid log level "${r}" provided to PrismaClient constructor.${n}`)}}for(let r of e){t(r);let n={level:t,emit:i=>{let o=["stdout","event"];if(!o.includes(i)){let s=Tt(i,o);throw new j(`Invalid value ${JSON.stringify(i)} for "emit" in logLevel provided to PrismaClient constructor.${s}`)}}};if(r&&typeof r=="object")for(let[i,o]of Object.entries(r))if(n[i])n[i](o);else throw new j(`Invalid property ${i} for "log" provided to PrismaClient constructor`)}},transactionOptions:e=>{if(!e)return;let t=e.maxWait;if(t!=null&&t<=0)throw new j(`Invalid value ${t} for maxWait in "transactionOptions" provided to PrismaClient constructor. maxWait needs to be greater than 0`);let r=e.timeout;if(r!=null&&r<=0)throw new j(`Invalid value ${r} for timeout in "transactionOptions" provided to PrismaClient constructor. timeout needs to be greater than 0`)},omit:(e,t)=>{if(typeof e!="object")throw new j('"omit" option is expected to be an object.');if(e===null)throw new j('"omit" option can not be `null`');let r=[];for(let[n,i]of Object.entries(e)){let o=ed(n,t.runtimeDataModel);if(!o){r.push({kind:"UnknownModel",modelKey:n});continue}for(let[s,a]of Object.entries(i)){let l=o.fields.find(u=>u.name===s);if(!l){r.push({kind:"UnknownField",modelKey:n,fieldName:s});continue}if(l.relationName){r.push({kind:"RelationInOmit",modelKey:n,fieldName:s});continue}typeof a!="boolean"&&r.push({kind:"InvalidFieldValue",modelKey:n,fieldName:s})}}if(r.length>0)throw new j(td(e,r))},__internal:e=>{if(!e)return;let t=["debug","engine","configOverride"];if(typeof e!="object")throw new j(`Invalid value ${JSON.stringify(e)} for "__internal" to PrismaClient constructor`);for(let[r]of Object.entries(e))if(!t.includes(r)){let n=Tt(r,t);throw new j(`Invalid property ${JSON.stringify(r)} for "__internal" provided to PrismaClient constructor.${n}`)}}};function ua(e,t){for(let[r,n]of Object.entries(e)){if(!ia.includes(r)){let i=Tt(r,ia);throw new j(`Unknown property ${r} provided to PrismaClient constructor.${i}`)}Zp[r](n,t)}if(e.datasourceUrl&&e.datasources)throw new j('Can not use "datasourceUrl" and "datasources" options at the same time. Pick one of them')}function Tt(e,t){if(t.length===0||typeof e!="string")return"";let r=Xp(e,t);return r?` Did you mean "${r}"?`:""}function Xp(e,t){if(t.length===0)return null;let r=t.map(i=>({value:i,distance:(0,la.default)(e,i)}));r.sort((i,o)=>i.distanceDe(n)===t);if(r)return e[r]}function td(e,t){let r=yt(e);for(let o of t)switch(o.kind){case"UnknownModel":r.arguments.getField(o.modelKey)?.markAsError(),r.addErrorMessage(()=>`Unknown model name: ${o.modelKey}.`);break;case"UnknownField":r.arguments.getDeepField([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>`Model "${o.modelKey}" does not have a field named "${o.fieldName}".`);break;case"RelationInOmit":r.arguments.getDeepField([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>'Relations are already excluded by default and can not be specified in "omit".');break;case"InvalidFieldValue":r.arguments.getDeepFieldValue([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>"Omit field option value must be a boolean.");break}let{message:n,args:i}=Fr(r,"colorless");return`Error validating "omit" option: ${i} -${n}`; -} -m(); -c(); -p(); -d(); -f(); -function ca(e) { - return e.length === 0 - ? Promise.resolve([]) - : new Promise((t, r) => { - let n = new Array(e.length), - i = null, - o = !1, - s = 0, - a = () => { - o || (s++, s === e.length && ((o = !0), i ? r(i) : t(n))); - }, - l = (u) => { - o || ((o = !0), r(u)); - }; - for (let u = 0; u < e.length; u++) - e[u].then( - (g) => { - ((n[u] = g), a()); - }, - (g) => { - if (!Kr(g)) { - l(g); - return; - } - g.batchRequestIdx === u ? l(g) : (i || (i = g), a()); - }, - ); - }); -} -var Ue = z("prisma:client"); -typeof globalThis == "object" && (globalThis.NODE_CLIENT = !0); -var rd = { - requestArgsToMiddlewareArgs: (e) => e, - middlewareArgsToRequestArgs: (e) => e, - }, - nd = Symbol.for("prisma.client.transaction.id"), - id = { - id: 0, - nextId() { - return ++this.id; - }, - }; -function fa(e) { - class t { - _originalClient = this; - _runtimeDataModel; - _requestHandler; - _connectionPromise; - _disconnectionPromise; - _engineConfig; - _accelerateEngineConfig; - _clientVersion; - _errorFormat; - _tracingHelper; - _previewFeatures; - _activeProvider; - _globalOmit; - _extensions; - _engine; - _appliedParent; - _createPrismaPromise = Xn(); - constructor(n) { - ((e = n?.__internal?.configOverride?.(e) ?? e), Cs(e), n && ua(n, e)); - let i = new jr().on("error", () => {}); - ((this._extensions = wt.empty()), - (this._previewFeatures = js(e)), - (this._clientVersion = e.clientVersion ?? na), - (this._activeProvider = e.activeProvider), - (this._globalOmit = n?.omit), - (this._tracingHelper = Ys())); - let o = e.relativeEnvPaths && { - rootEnvPath: - e.relativeEnvPaths.rootEnvPath && - Re.resolve(e.dirname, e.relativeEnvPaths.rootEnvPath), - schemaEnvPath: - e.relativeEnvPaths.schemaEnvPath && - Re.resolve(e.dirname, e.relativeEnvPaths.schemaEnvPath), - }, - s; - if (n?.adapter) { - s = n.adapter; - let l = - e.activeProvider === "postgresql" || - e.activeProvider === "cockroachdb" - ? "postgres" - : e.activeProvider; - if (s.provider !== l) - throw new Q( - `The Driver Adapter \`${s.adapterName}\`, based on \`${s.provider}\`, is not compatible with the provider \`${l}\` specified in the Prisma schema.`, - this._clientVersion, - ); - if (n.datasources || n.datasourceUrl !== void 0) - throw new Q( - "Custom datasource configuration is not compatible with Prisma Driver Adapters. Please define the database connection string directly in the Driver Adapter configuration.", - this._clientVersion, - ); - } - let a = e.injectableEdgeEnv?.(); - try { - let l = n ?? {}, - u = l.__internal ?? {}, - g = u.debug === !0; - g && z.enable("prisma:client"); - let h = Re.resolve(e.dirname, e.relativePath); - (sr.existsSync(h) || (h = e.dirname), - Ue("dirname", e.dirname), - Ue("relativePath", e.relativePath), - Ue("cwd", h)); - let T = u.engine || {}; - if ( - (l.errorFormat - ? (this._errorFormat = l.errorFormat) - : y.env.NODE_ENV === "production" - ? (this._errorFormat = "minimal") - : y.env.NO_COLOR - ? (this._errorFormat = "colorless") - : (this._errorFormat = "colorless"), - (this._runtimeDataModel = e.runtimeDataModel), - (this._engineConfig = { - cwd: h, - dirname: e.dirname, - enableDebugLogs: g, - allowTriggerPanic: T.allowTriggerPanic, - prismaPath: T.binaryPath ?? void 0, - engineEndpoint: T.endpoint, - generator: e.generator, - showColors: this._errorFormat === "pretty", - logLevel: l.log && Xs(l.log), - logQueries: - l.log && - !!(typeof l.log == "string" - ? l.log === "query" - : l.log.find((O) => - typeof O == "string" ? O === "query" : O.level === "query", - )), - env: a?.parsed ?? {}, - flags: [], - engineWasm: e.engineWasm, - compilerWasm: e.compilerWasm, - clientVersion: e.clientVersion, - engineVersion: e.engineVersion, - previewFeatures: this._previewFeatures, - activeProvider: e.activeProvider, - inlineSchema: e.inlineSchema, - overrideDatasources: Ss(l, e.datasourceNames), - inlineDatasources: e.inlineDatasources, - inlineSchemaHash: e.inlineSchemaHash, - tracingHelper: this._tracingHelper, - transactionOptions: { - maxWait: l.transactionOptions?.maxWait ?? 2e3, - timeout: l.transactionOptions?.timeout ?? 5e3, - isolationLevel: l.transactionOptions?.isolationLevel, - }, - logEmitter: i, - isBundled: e.isBundled, - adapter: s, - }), - (this._accelerateEngineConfig = { - ...this._engineConfig, - accelerateUtils: { - resolveDatasourceUrl: Wr, - getBatchRequestPayload: Vr, - prismaGraphQLToJSError: Qr, - PrismaClientUnknownRequestError: G, - PrismaClientInitializationError: Q, - PrismaClientKnownRequestError: se, - debug: z("prisma:client:accelerateEngine"), - engineVersion: da.version, - clientVersion: e.clientVersion, - }, - }), - Ue("clientVersion", e.clientVersion), - (this._engine = Bs(e, this._engineConfig)), - (this._requestHandler = new Yr(this, i)), - l.log) - ) - for (let O of l.log) { - let C = - typeof O == "string" ? O : O.emit === "stdout" ? O.level : null; - C && - this.$on(C, (S) => { - Dt.log(`${Dt.tags[C] ?? ""}`, S.message || S.query); - }); - } - } catch (l) { - throw ((l.clientVersion = this._clientVersion), l); - } - return (this._appliedParent = Zt(this)); - } - get [Symbol.toStringTag]() { - return "PrismaClient"; - } - $on(n, i) { - return ( - n === "beforeExit" - ? this._engine.onBeforeExit(i) - : n && this._engineConfig.logEmitter.on(n, i), - this - ); - } - $connect() { - try { - return this._engine.start(); - } catch (n) { - throw ((n.clientVersion = this._clientVersion), n); - } - } - async $disconnect() { - try { - await this._engine.stop(); - } catch (n) { - throw ((n.clientVersion = this._clientVersion), n); - } finally { - _i(); - } - } - $executeRawInternal(n, i, o, s) { - let a = this._activeProvider; - return this._request({ - action: "executeRaw", - args: o, - transaction: n, - clientMethod: i, - argsMapper: Zn({ clientMethod: i, activeProvider: a }), - callsite: $e(this._errorFormat), - dataPath: [], - middlewareArgsMapper: s, - }); - } - $executeRaw(n, ...i) { - return this._createPrismaPromise((o) => { - if (n.raw !== void 0 || n.sql !== void 0) { - let [s, a] = pa(n, i); - return ( - Yn( - this._activeProvider, - s.text, - s.values, - Array.isArray(n) - ? "prisma.$executeRaw``" - : "prisma.$executeRaw(sql``)", - ), - this.$executeRawInternal(o, "$executeRaw", s, a) - ); - } - throw new te( - "`$executeRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$executeRaw`UPDATE User SET cool = ${true} WHERE email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#executeraw\n", - { clientVersion: this._clientVersion }, - ); - }); - } - $executeRawUnsafe(n, ...i) { - return this._createPrismaPromise( - (o) => ( - Yn( - this._activeProvider, - n, - i, - "prisma.$executeRawUnsafe(, [...values])", - ), - this.$executeRawInternal(o, "$executeRawUnsafe", [n, ...i]) - ), - ); - } - $runCommandRaw(n) { - if (e.activeProvider !== "mongodb") - throw new te( - `The ${e.activeProvider} provider does not support $runCommandRaw. Use the mongodb provider.`, - { clientVersion: this._clientVersion }, - ); - return this._createPrismaPromise((i) => - this._request({ - args: n, - clientMethod: "$runCommandRaw", - dataPath: [], - action: "runCommandRaw", - argsMapper: $s, - callsite: $e(this._errorFormat), - transaction: i, - }), - ); - } - async $queryRawInternal(n, i, o, s) { - let a = this._activeProvider; - return this._request({ - action: "queryRaw", - args: o, - transaction: n, - clientMethod: i, - argsMapper: Zn({ clientMethod: i, activeProvider: a }), - callsite: $e(this._errorFormat), - dataPath: [], - middlewareArgsMapper: s, - }); - } - $queryRaw(n, ...i) { - return this._createPrismaPromise((o) => { - if (n.raw !== void 0 || n.sql !== void 0) - return this.$queryRawInternal(o, "$queryRaw", ...pa(n, i)); - throw new te( - "`$queryRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$queryRaw`SELECT * FROM User WHERE id = ${1} OR email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#queryraw\n", - { clientVersion: this._clientVersion }, - ); - }); - } - $queryRawTyped(n) { - return this._createPrismaPromise((i) => { - if (!this._hasPreviewFlag("typedSql")) - throw new te( - "`typedSql` preview feature must be enabled in order to access $queryRawTyped API", - { clientVersion: this._clientVersion }, - ); - return this.$queryRawInternal(i, "$queryRawTyped", n); - }); - } - $queryRawUnsafe(n, ...i) { - return this._createPrismaPromise((o) => - this.$queryRawInternal(o, "$queryRawUnsafe", [n, ...i]), - ); - } - _transactionWithArray({ promises: n, options: i }) { - let o = id.nextId(), - s = Zs(n.length), - a = n.map((l, u) => { - if (l?.[Symbol.toStringTag] !== "PrismaPromise") - throw new Error( - "All elements of the array need to be Prisma Client promises. Hint: Please make sure you are not awaiting the Prisma client calls you intended to pass in the $transaction function.", - ); - let g = - i?.isolationLevel ?? - this._engineConfig.transactionOptions.isolationLevel, - h = { kind: "batch", id: o, index: u, isolationLevel: g, lock: s }; - return l.requestTransaction?.(h) ?? l; - }); - return ca(a); - } - async _transactionWithCallback({ callback: n, options: i }) { - let o = { traceparent: this._tracingHelper.getTraceParent() }, - s = { - maxWait: i?.maxWait ?? this._engineConfig.transactionOptions.maxWait, - timeout: i?.timeout ?? this._engineConfig.transactionOptions.timeout, - isolationLevel: - i?.isolationLevel ?? - this._engineConfig.transactionOptions.isolationLevel, - }, - a = await this._engine.transaction("start", o, s), - l; - try { - let u = { kind: "itx", ...a }; - ((l = await n(this._createItxClient(u))), - await this._engine.transaction("commit", o, a)); - } catch (u) { - throw ( - await this._engine.transaction("rollback", o, a).catch(() => {}), - u - ); - } - return l; - } - _createItxClient(n) { - return ge( - Zt( - ge(ps(this), [ - ne("_appliedParent", () => this._appliedParent._createItxClient(n)), - ne("_createPrismaPromise", () => Xn(n)), - ne(nd, () => n.id), - ]), - ), - [xt(hs)], - ); - } - $transaction(n, i) { - let o; - typeof n == "function" - ? this._engineConfig.adapter?.adapterName === "@prisma/adapter-d1" - ? (o = () => { - throw new Error( - "Cloudflare D1 does not support interactive transactions. We recommend you to refactor your queries with that limitation in mind, and use batch transactions with `prisma.$transactions([])` where applicable.", - ); - }) - : (o = () => - this._transactionWithCallback({ callback: n, options: i })) - : (o = () => this._transactionWithArray({ promises: n, options: i })); - let s = { name: "transaction", attributes: { method: "$transaction" } }; - return this._tracingHelper.runInChildSpan(s, o); - } - _request(n) { - n.otelParentCtx = this._tracingHelper.getActiveContext(); - let i = n.middlewareArgsMapper ?? rd, - o = { - args: i.requestArgsToMiddlewareArgs(n.args), - dataPath: n.dataPath, - runInTransaction: !!n.transaction, - action: n.action, - model: n.model, - }, - s = { - operation: { - name: "operation", - attributes: { - method: o.action, - model: o.model, - name: o.model ? `${o.model}.${o.action}` : o.action, - }, - }, - }, - a = async (l) => { - let { runInTransaction: u, args: g, ...h } = l, - T = { ...n, ...h }; - (g && (T.args = i.middlewareArgsToRequestArgs(g)), - n.transaction !== void 0 && u === !1 && delete T.transaction); - let O = await xs(this, T); - return T.model - ? gs({ - result: O, - modelName: T.model, - args: T.args, - extensions: this._extensions, - runtimeDataModel: this._runtimeDataModel, - globalOmit: this._globalOmit, - }) - : O; - }; - return this._tracingHelper.runInChildSpan(s.operation, () => a(o)); - } - async _executeRequest({ - args: n, - clientMethod: i, - dataPath: o, - callsite: s, - action: a, - model: l, - argsMapper: u, - transaction: g, - unpacker: h, - otelParentCtx: T, - customDataProxyFetch: O, - }) { - try { - n = u ? u(n) : n; - let C = { name: "serialize" }, - S = this._tracingHelper.runInChildSpan(C, () => - Nr({ - modelName: l, - runtimeDataModel: this._runtimeDataModel, - action: a, - args: n, - clientMethod: i, - callsite: s, - extensions: this._extensions, - errorFormat: this._errorFormat, - clientVersion: this._clientVersion, - previewFeatures: this._previewFeatures, - globalOmit: this._globalOmit, - }), - ); - return ( - z.enabled("prisma:client") && - (Ue("Prisma Client call:"), - Ue(`prisma.${i}(${es(n)})`), - Ue("Generated request:"), - Ue( - JSON.stringify(S, null, 2) + - ` -`, - )), - g?.kind === "batch" && (await g.lock), - this._requestHandler.request({ - protocolQuery: S, - modelName: l, - action: a, - clientMethod: i, - dataPath: o, - callsite: s, - args: n, - extensions: this._extensions, - transaction: g, - unpacker: h, - otelParentCtx: T, - otelChildCtx: this._tracingHelper.getActiveContext(), - globalOmit: this._globalOmit, - customDataProxyFetch: O, - }) - ); - } catch (C) { - throw ((C.clientVersion = this._clientVersion), C); - } - } - $metrics = new bt(this); - _hasPreviewFlag(n) { - return !!this._engineConfig.previewFeatures?.includes(n); - } - $applyPendingMigrations() { - return this._engine.applyPendingMigrations(); - } - $extends = ds; - } - return t; -} -function pa(e, t) { - return od(e) ? [new le(e, t), Ks] : [e, zs]; -} -function od(e) { - return Array.isArray(e) && Array.isArray(e.raw); -} -m(); -c(); -p(); -d(); -f(); -var sd = new Set([ - "toJSON", - "$$typeof", - "asymmetricMatch", - Symbol.iterator, - Symbol.toStringTag, - Symbol.isConcatSpreadable, - Symbol.toPrimitive, -]); -function ma(e) { - return new Proxy(e, { - get(t, r) { - if (r in t) return t[r]; - if (!sd.has(r)) throw new TypeError(`Invalid enum value: ${String(r)}`); - }, - }); -} -m(); -c(); -p(); -d(); -f(); -0 && - (module.exports = { - DMMF, - Debug, - Decimal, - Extensions, - MetricsClient, - PrismaClientInitializationError, - PrismaClientKnownRequestError, - PrismaClientRustPanicError, - PrismaClientUnknownRequestError, - PrismaClientValidationError, - Public, - Sql, - createParam, - defineDmmfProperty, - deserializeJsonResponse, - deserializeRawResult, - dmmfToRuntimeDataModel, - empty, - getPrismaClient, - getRuntime, - join, - makeStrictEnum, - makeTypedQueryFactory, - objectEnumValues, - raw, - serializeJsonQuery, - skip, - sqltag, - warnEnvConflicts, - warnOnce, - }); +${n}`}m();c();p();d();f();function ca(e){return e.length===0?Promise.resolve([]):new Promise((t,r)=>{let n=new Array(e.length),i=null,o=!1,s=0,a=()=>{o||(s++,s===e.length&&(o=!0,i?r(i):t(n)))},l=u=>{o||(o=!0,r(u))};for(let u=0;u{n[u]=g,a()},g=>{if(!Kr(g)){l(g);return}g.batchRequestIdx===u?l(g):(i||(i=g),a())})})}var Ue=z("prisma:client");typeof globalThis=="object"&&(globalThis.NODE_CLIENT=!0);var rd={requestArgsToMiddlewareArgs:e=>e,middlewareArgsToRequestArgs:e=>e},nd=Symbol.for("prisma.client.transaction.id"),id={id:0,nextId(){return++this.id}};function fa(e){class t{_originalClient=this;_runtimeDataModel;_requestHandler;_connectionPromise;_disconnectionPromise;_engineConfig;_accelerateEngineConfig;_clientVersion;_errorFormat;_tracingHelper;_previewFeatures;_activeProvider;_globalOmit;_extensions;_engine;_appliedParent;_createPrismaPromise=Xn();constructor(n){e=n?.__internal?.configOverride?.(e)??e,Cs(e),n&&ua(n,e);let i=new jr().on("error",()=>{});this._extensions=wt.empty(),this._previewFeatures=js(e),this._clientVersion=e.clientVersion??na,this._activeProvider=e.activeProvider,this._globalOmit=n?.omit,this._tracingHelper=Ys();let o=e.relativeEnvPaths&&{rootEnvPath:e.relativeEnvPaths.rootEnvPath&&Re.resolve(e.dirname,e.relativeEnvPaths.rootEnvPath),schemaEnvPath:e.relativeEnvPaths.schemaEnvPath&&Re.resolve(e.dirname,e.relativeEnvPaths.schemaEnvPath)},s;if(n?.adapter){s=n.adapter;let l=e.activeProvider==="postgresql"||e.activeProvider==="cockroachdb"?"postgres":e.activeProvider;if(s.provider!==l)throw new Q(`The Driver Adapter \`${s.adapterName}\`, based on \`${s.provider}\`, is not compatible with the provider \`${l}\` specified in the Prisma schema.`,this._clientVersion);if(n.datasources||n.datasourceUrl!==void 0)throw new Q("Custom datasource configuration is not compatible with Prisma Driver Adapters. Please define the database connection string directly in the Driver Adapter configuration.",this._clientVersion)}let a=e.injectableEdgeEnv?.();try{let l=n??{},u=l.__internal??{},g=u.debug===!0;g&&z.enable("prisma:client");let h=Re.resolve(e.dirname,e.relativePath);sr.existsSync(h)||(h=e.dirname),Ue("dirname",e.dirname),Ue("relativePath",e.relativePath),Ue("cwd",h);let T=u.engine||{};if(l.errorFormat?this._errorFormat=l.errorFormat:y.env.NODE_ENV==="production"?this._errorFormat="minimal":y.env.NO_COLOR?this._errorFormat="colorless":this._errorFormat="colorless",this._runtimeDataModel=e.runtimeDataModel,this._engineConfig={cwd:h,dirname:e.dirname,enableDebugLogs:g,allowTriggerPanic:T.allowTriggerPanic,prismaPath:T.binaryPath??void 0,engineEndpoint:T.endpoint,generator:e.generator,showColors:this._errorFormat==="pretty",logLevel:l.log&&Xs(l.log),logQueries:l.log&&!!(typeof l.log=="string"?l.log==="query":l.log.find(O=>typeof O=="string"?O==="query":O.level==="query")),env:a?.parsed??{},flags:[],engineWasm:e.engineWasm,compilerWasm:e.compilerWasm,clientVersion:e.clientVersion,engineVersion:e.engineVersion,previewFeatures:this._previewFeatures,activeProvider:e.activeProvider,inlineSchema:e.inlineSchema,overrideDatasources:Ss(l,e.datasourceNames),inlineDatasources:e.inlineDatasources,inlineSchemaHash:e.inlineSchemaHash,tracingHelper:this._tracingHelper,transactionOptions:{maxWait:l.transactionOptions?.maxWait??2e3,timeout:l.transactionOptions?.timeout??5e3,isolationLevel:l.transactionOptions?.isolationLevel},logEmitter:i,isBundled:e.isBundled,adapter:s},this._accelerateEngineConfig={...this._engineConfig,accelerateUtils:{resolveDatasourceUrl:Wr,getBatchRequestPayload:Vr,prismaGraphQLToJSError:Qr,PrismaClientUnknownRequestError:G,PrismaClientInitializationError:Q,PrismaClientKnownRequestError:se,debug:z("prisma:client:accelerateEngine"),engineVersion:da.version,clientVersion:e.clientVersion}},Ue("clientVersion",e.clientVersion),this._engine=Bs(e,this._engineConfig),this._requestHandler=new Yr(this,i),l.log)for(let O of l.log){let C=typeof O=="string"?O:O.emit==="stdout"?O.level:null;C&&this.$on(C,S=>{Dt.log(`${Dt.tags[C]??""}`,S.message||S.query)})}}catch(l){throw l.clientVersion=this._clientVersion,l}return this._appliedParent=Zt(this)}get[Symbol.toStringTag](){return"PrismaClient"}$on(n,i){return n==="beforeExit"?this._engine.onBeforeExit(i):n&&this._engineConfig.logEmitter.on(n,i),this}$connect(){try{return this._engine.start()}catch(n){throw n.clientVersion=this._clientVersion,n}}async $disconnect(){try{await this._engine.stop()}catch(n){throw n.clientVersion=this._clientVersion,n}finally{_i()}}$executeRawInternal(n,i,o,s){let a=this._activeProvider;return this._request({action:"executeRaw",args:o,transaction:n,clientMethod:i,argsMapper:Zn({clientMethod:i,activeProvider:a}),callsite:$e(this._errorFormat),dataPath:[],middlewareArgsMapper:s})}$executeRaw(n,...i){return this._createPrismaPromise(o=>{if(n.raw!==void 0||n.sql!==void 0){let[s,a]=pa(n,i);return Yn(this._activeProvider,s.text,s.values,Array.isArray(n)?"prisma.$executeRaw``":"prisma.$executeRaw(sql``)"),this.$executeRawInternal(o,"$executeRaw",s,a)}throw new te("`$executeRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$executeRaw`UPDATE User SET cool = ${true} WHERE email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#executeraw\n",{clientVersion:this._clientVersion})})}$executeRawUnsafe(n,...i){return this._createPrismaPromise(o=>(Yn(this._activeProvider,n,i,"prisma.$executeRawUnsafe(, [...values])"),this.$executeRawInternal(o,"$executeRawUnsafe",[n,...i])))}$runCommandRaw(n){if(e.activeProvider!=="mongodb")throw new te(`The ${e.activeProvider} provider does not support $runCommandRaw. Use the mongodb provider.`,{clientVersion:this._clientVersion});return this._createPrismaPromise(i=>this._request({args:n,clientMethod:"$runCommandRaw",dataPath:[],action:"runCommandRaw",argsMapper:$s,callsite:$e(this._errorFormat),transaction:i}))}async $queryRawInternal(n,i,o,s){let a=this._activeProvider;return this._request({action:"queryRaw",args:o,transaction:n,clientMethod:i,argsMapper:Zn({clientMethod:i,activeProvider:a}),callsite:$e(this._errorFormat),dataPath:[],middlewareArgsMapper:s})}$queryRaw(n,...i){return this._createPrismaPromise(o=>{if(n.raw!==void 0||n.sql!==void 0)return this.$queryRawInternal(o,"$queryRaw",...pa(n,i));throw new te("`$queryRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$queryRaw`SELECT * FROM User WHERE id = ${1} OR email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#queryraw\n",{clientVersion:this._clientVersion})})}$queryRawTyped(n){return this._createPrismaPromise(i=>{if(!this._hasPreviewFlag("typedSql"))throw new te("`typedSql` preview feature must be enabled in order to access $queryRawTyped API",{clientVersion:this._clientVersion});return this.$queryRawInternal(i,"$queryRawTyped",n)})}$queryRawUnsafe(n,...i){return this._createPrismaPromise(o=>this.$queryRawInternal(o,"$queryRawUnsafe",[n,...i]))}_transactionWithArray({promises:n,options:i}){let o=id.nextId(),s=Zs(n.length),a=n.map((l,u)=>{if(l?.[Symbol.toStringTag]!=="PrismaPromise")throw new Error("All elements of the array need to be Prisma Client promises. Hint: Please make sure you are not awaiting the Prisma client calls you intended to pass in the $transaction function.");let g=i?.isolationLevel??this._engineConfig.transactionOptions.isolationLevel,h={kind:"batch",id:o,index:u,isolationLevel:g,lock:s};return l.requestTransaction?.(h)??l});return ca(a)}async _transactionWithCallback({callback:n,options:i}){let o={traceparent:this._tracingHelper.getTraceParent()},s={maxWait:i?.maxWait??this._engineConfig.transactionOptions.maxWait,timeout:i?.timeout??this._engineConfig.transactionOptions.timeout,isolationLevel:i?.isolationLevel??this._engineConfig.transactionOptions.isolationLevel},a=await this._engine.transaction("start",o,s),l;try{let u={kind:"itx",...a};l=await n(this._createItxClient(u)),await this._engine.transaction("commit",o,a)}catch(u){throw await this._engine.transaction("rollback",o,a).catch(()=>{}),u}return l}_createItxClient(n){return ge(Zt(ge(ps(this),[ne("_appliedParent",()=>this._appliedParent._createItxClient(n)),ne("_createPrismaPromise",()=>Xn(n)),ne(nd,()=>n.id)])),[xt(hs)])}$transaction(n,i){let o;typeof n=="function"?this._engineConfig.adapter?.adapterName==="@prisma/adapter-d1"?o=()=>{throw new Error("Cloudflare D1 does not support interactive transactions. We recommend you to refactor your queries with that limitation in mind, and use batch transactions with `prisma.$transactions([])` where applicable.")}:o=()=>this._transactionWithCallback({callback:n,options:i}):o=()=>this._transactionWithArray({promises:n,options:i});let s={name:"transaction",attributes:{method:"$transaction"}};return this._tracingHelper.runInChildSpan(s,o)}_request(n){n.otelParentCtx=this._tracingHelper.getActiveContext();let i=n.middlewareArgsMapper??rd,o={args:i.requestArgsToMiddlewareArgs(n.args),dataPath:n.dataPath,runInTransaction:!!n.transaction,action:n.action,model:n.model},s={operation:{name:"operation",attributes:{method:o.action,model:o.model,name:o.model?`${o.model}.${o.action}`:o.action}}},a=async l=>{let{runInTransaction:u,args:g,...h}=l,T={...n,...h};g&&(T.args=i.middlewareArgsToRequestArgs(g)),n.transaction!==void 0&&u===!1&&delete T.transaction;let O=await xs(this,T);return T.model?gs({result:O,modelName:T.model,args:T.args,extensions:this._extensions,runtimeDataModel:this._runtimeDataModel,globalOmit:this._globalOmit}):O};return this._tracingHelper.runInChildSpan(s.operation,()=>a(o))}async _executeRequest({args:n,clientMethod:i,dataPath:o,callsite:s,action:a,model:l,argsMapper:u,transaction:g,unpacker:h,otelParentCtx:T,customDataProxyFetch:O}){try{n=u?u(n):n;let C={name:"serialize"},S=this._tracingHelper.runInChildSpan(C,()=>Nr({modelName:l,runtimeDataModel:this._runtimeDataModel,action:a,args:n,clientMethod:i,callsite:s,extensions:this._extensions,errorFormat:this._errorFormat,clientVersion:this._clientVersion,previewFeatures:this._previewFeatures,globalOmit:this._globalOmit}));return z.enabled("prisma:client")&&(Ue("Prisma Client call:"),Ue(`prisma.${i}(${es(n)})`),Ue("Generated request:"),Ue(JSON.stringify(S,null,2)+` +`)),g?.kind==="batch"&&await g.lock,this._requestHandler.request({protocolQuery:S,modelName:l,action:a,clientMethod:i,dataPath:o,callsite:s,args:n,extensions:this._extensions,transaction:g,unpacker:h,otelParentCtx:T,otelChildCtx:this._tracingHelper.getActiveContext(),globalOmit:this._globalOmit,customDataProxyFetch:O})}catch(C){throw C.clientVersion=this._clientVersion,C}}$metrics=new bt(this);_hasPreviewFlag(n){return!!this._engineConfig.previewFeatures?.includes(n)}$applyPendingMigrations(){return this._engine.applyPendingMigrations()}$extends=ds}return t}function pa(e,t){return od(e)?[new le(e,t),Ks]:[e,zs]}function od(e){return Array.isArray(e)&&Array.isArray(e.raw)}m();c();p();d();f();var sd=new Set(["toJSON","$$typeof","asymmetricMatch",Symbol.iterator,Symbol.toStringTag,Symbol.isConcatSpreadable,Symbol.toPrimitive]);function ma(e){return new Proxy(e,{get(t,r){if(r in t)return t[r];if(!sd.has(r))throw new TypeError(`Invalid enum value: ${String(r)}`)}})}m();c();p();d();f();0&&(module.exports={DMMF,Debug,Decimal,Extensions,MetricsClient,PrismaClientInitializationError,PrismaClientKnownRequestError,PrismaClientRustPanicError,PrismaClientUnknownRequestError,PrismaClientValidationError,Public,Sql,createParam,defineDmmfProperty,deserializeJsonResponse,deserializeRawResult,dmmfToRuntimeDataModel,empty,getPrismaClient,getRuntime,join,makeStrictEnum,makeTypedQueryFactory,objectEnumValues,raw,serializeJsonQuery,skip,sqltag,warnEnvConflicts,warnOnce}); //# sourceMappingURL=react-native.js.map diff --git a/generated/prisma/runtime/wasm-compiler-edge.js b/generated/prisma/runtime/wasm-compiler-edge.js index b95a20d0..7a7f5df3 100644 --- a/generated/prisma/runtime/wasm-compiler-edge.js +++ b/generated/prisma/runtime/wasm-compiler-edge.js @@ -1,6339 +1,21 @@ + /* !!! This is code generated by Prisma. Do not edit directly. !!! /* eslint-disable */ // biome-ignore-all lint: generated file -"use strict"; -var ou = Object.create; -var Kr = Object.defineProperty; -var su = Object.getOwnPropertyDescriptor; -var au = Object.getOwnPropertyNames; -var lu = Object.getPrototypeOf, - cu = Object.prototype.hasOwnProperty; -var ye = (e, t) => () => (e && (t = e((e = 0))), t); -var me = (e, t) => () => (t || e((t = { exports: {} }).exports, t), t.exports), - pt = (e, t) => { - for (var r in t) Kr(e, r, { get: t[r], enumerable: !0 }); - }, - Vo = (e, t, r, n) => { - if ((t && typeof t == "object") || typeof t == "function") - for (let i of au(t)) - !cu.call(e, i) && - i !== r && - Kr(e, i, { - get: () => t[i], - enumerable: !(n = su(t, i)) || n.enumerable, - }); - return e; - }; -var $e = (e, t, r) => ( - (r = e != null ? ou(lu(e)) : {}), - Vo( - t || !e || !e.__esModule - ? Kr(r, "default", { value: e, enumerable: !0 }) - : r, - e, - ) - ), - qo = (e) => Vo(Kr({}, "__esModule", { value: !0 }), e); -function ui(e, t) { - if (((t = t.toLowerCase()), t === "utf8" || t === "utf-8")) - return new h(du.encode(e)); - if (t === "base64" || t === "base64url") - return ( - (e = e.replace(/-/g, "+").replace(/_/g, "/")), - (e = e.replace(/[^A-Za-z0-9+/]/g, "")), - new h([...atob(e)].map((r) => r.charCodeAt(0))) - ); - if (t === "binary" || t === "ascii" || t === "latin1" || t === "latin-1") - return new h([...e].map((r) => r.charCodeAt(0))); - if (t === "ucs2" || t === "ucs-2" || t === "utf16le" || t === "utf-16le") { - let r = new h(e.length * 2), - n = new DataView(r.buffer); - for (let i = 0; i < e.length; i++) n.setUint16(i * 2, e.charCodeAt(i), !0); - return r; - } - if (t === "hex") { - let r = new h(e.length / 2); - for (let n = 0, i = 0; i < e.length; i += 2, n++) - r[n] = parseInt(e.slice(i, i + 2), 16); - return r; - } - jo(`encoding "${t}"`); -} -function uu(e) { - let r = Object.getOwnPropertyNames(DataView.prototype).filter( - (a) => a.startsWith("get") || a.startsWith("set"), - ), - n = r.map((a) => a.replace("get", "read").replace("set", "write")), - i = (a, f) => - function (w = 0) { - return ( - Y(w, "offset"), - de(w, "offset"), - ee(w, "offset", this.length - 1), - new DataView(this.buffer)[r[a]](w, f) - ); - }, - o = (a, f) => - function (w, A = 0) { - let R = r[a].match(/set(\w+\d+)/)[1].toLowerCase(), - S = mu[R]; - return ( - Y(A, "offset"), - de(A, "offset"), - ee(A, "offset", this.length - 1), - pu(w, "value", S[0], S[1]), - new DataView(this.buffer)[r[a]](A, w, f), - A + parseInt(r[a].match(/\d+/)[0]) / 8 - ); - }, - s = (a) => { - a.forEach((f) => { - (f.includes("Uint") && (e[f.replace("Uint", "UInt")] = e[f]), - f.includes("Float64") && (e[f.replace("Float64", "Double")] = e[f]), - f.includes("Float32") && (e[f.replace("Float32", "Float")] = e[f])); - }); - }; - n.forEach((a, f) => { - (a.startsWith("read") && - ((e[a] = i(f, !1)), (e[a + "LE"] = i(f, !0)), (e[a + "BE"] = i(f, !1))), - a.startsWith("write") && - ((e[a] = o(f, !1)), (e[a + "LE"] = o(f, !0)), (e[a + "BE"] = o(f, !1))), - s([a, a + "LE", a + "BE"])); - }); -} -function jo(e) { - throw new Error(`Buffer polyfill does not implement "${e}"`); -} -function zr(e, t) { - if (!(e instanceof Uint8Array)) - throw new TypeError( - `The "${t}" argument must be an instance of Buffer or Uint8Array`, - ); -} -function ee(e, t, r = yu + 1) { - if (e < 0 || e > r) { - let n = new RangeError( - `The value of "${t}" is out of range. It must be >= 0 && <= ${r}. Received ${e}`, - ); - throw ((n.code = "ERR_OUT_OF_RANGE"), n); - } -} -function Y(e, t) { - if (typeof e != "number") { - let r = new TypeError( - `The "${t}" argument must be of type number. Received type ${typeof e}.`, - ); - throw ((r.code = "ERR_INVALID_ARG_TYPE"), r); - } -} -function de(e, t) { - if (!Number.isInteger(e) || Number.isNaN(e)) { - let r = new RangeError( - `The value of "${t}" is out of range. It must be an integer. Received ${e}`, - ); - throw ((r.code = "ERR_OUT_OF_RANGE"), r); - } -} -function pu(e, t, r, n) { - if (e < r || e > n) { - let i = new RangeError( - `The value of "${t}" is out of range. It must be >= ${r} and <= ${n}. Received ${e}`, - ); - throw ((i.code = "ERR_OUT_OF_RANGE"), i); - } -} -function Bo(e, t) { - if (typeof e != "string") { - let r = new TypeError( - `The "${t}" argument must be of type string. Received type ${typeof e}`, - ); - throw ((r.code = "ERR_INVALID_ARG_TYPE"), r); - } -} -function hu(e, t = "utf8") { - return h.from(e, t); -} -var h, - mu, - du, - fu, - gu, - yu, - y, - pi, - c = ye(() => { - "use strict"; - h = class e extends Uint8Array { - _isBuffer = !0; - get offset() { - return this.byteOffset; - } - static alloc(t, r = 0, n = "utf8") { - return (Bo(n, "encoding"), e.allocUnsafe(t).fill(r, n)); - } - static allocUnsafe(t) { - return e.from(t); - } - static allocUnsafeSlow(t) { - return e.from(t); - } - static isBuffer(t) { - return t && !!t._isBuffer; - } - static byteLength(t, r = "utf8") { - if (typeof t == "string") return ui(t, r).byteLength; - if (t && t.byteLength) return t.byteLength; - let n = new TypeError( - 'The "string" argument must be of type string or an instance of Buffer or ArrayBuffer.', - ); - throw ((n.code = "ERR_INVALID_ARG_TYPE"), n); - } - static isEncoding(t) { - return gu.includes(t); - } - static compare(t, r) { - (zr(t, "buff1"), zr(r, "buff2")); - for (let n = 0; n < t.length; n++) { - if (t[n] < r[n]) return -1; - if (t[n] > r[n]) return 1; - } - return t.length === r.length ? 0 : t.length > r.length ? 1 : -1; - } - static from(t, r = "utf8") { - if (t && typeof t == "object" && t.type === "Buffer") - return new e(t.data); - if (typeof t == "number") return new e(new Uint8Array(t)); - if (typeof t == "string") return ui(t, r); - if (ArrayBuffer.isView(t)) { - let { byteOffset: n, byteLength: i, buffer: o } = t; - return "map" in t && typeof t.map == "function" - ? new e( - t.map((s) => s % 256), - n, - i, - ) - : new e(o, n, i); - } - if ( - t && - typeof t == "object" && - ("length" in t || "byteLength" in t || "buffer" in t) - ) - return new e(t); - throw new TypeError( - "First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.", - ); - } - static concat(t, r) { - if (t.length === 0) return e.alloc(0); - let n = [].concat(...t.map((o) => [...o])), - i = e.alloc(r !== void 0 ? r : n.length); - return (i.set(r !== void 0 ? n.slice(0, r) : n), i); - } - slice(t = 0, r = this.length) { - return this.subarray(t, r); - } - subarray(t = 0, r = this.length) { - return Object.setPrototypeOf(super.subarray(t, r), e.prototype); - } - reverse() { - return (super.reverse(), this); - } - readIntBE(t, r) { - (Y(t, "offset"), - de(t, "offset"), - ee(t, "offset", this.length - 1), - Y(r, "byteLength"), - de(r, "byteLength")); - let n = new DataView(this.buffer, t, r), - i = 0; - for (let o = 0; o < r; o++) i = i * 256 + n.getUint8(o); - return (n.getUint8(0) & 128 && (i -= Math.pow(256, r)), i); - } - readIntLE(t, r) { - (Y(t, "offset"), - de(t, "offset"), - ee(t, "offset", this.length - 1), - Y(r, "byteLength"), - de(r, "byteLength")); - let n = new DataView(this.buffer, t, r), - i = 0; - for (let o = 0; o < r; o++) i += n.getUint8(o) * Math.pow(256, o); - return (n.getUint8(r - 1) & 128 && (i -= Math.pow(256, r)), i); - } - readUIntBE(t, r) { - (Y(t, "offset"), - de(t, "offset"), - ee(t, "offset", this.length - 1), - Y(r, "byteLength"), - de(r, "byteLength")); - let n = new DataView(this.buffer, t, r), - i = 0; - for (let o = 0; o < r; o++) i = i * 256 + n.getUint8(o); - return i; - } - readUintBE(t, r) { - return this.readUIntBE(t, r); - } - readUIntLE(t, r) { - (Y(t, "offset"), - de(t, "offset"), - ee(t, "offset", this.length - 1), - Y(r, "byteLength"), - de(r, "byteLength")); - let n = new DataView(this.buffer, t, r), - i = 0; - for (let o = 0; o < r; o++) i += n.getUint8(o) * Math.pow(256, o); - return i; - } - readUintLE(t, r) { - return this.readUIntLE(t, r); - } - writeIntBE(t, r, n) { - return ( - (t = t < 0 ? t + Math.pow(256, n) : t), - this.writeUIntBE(t, r, n) - ); - } - writeIntLE(t, r, n) { - return ( - (t = t < 0 ? t + Math.pow(256, n) : t), - this.writeUIntLE(t, r, n) - ); - } - writeUIntBE(t, r, n) { - (Y(r, "offset"), - de(r, "offset"), - ee(r, "offset", this.length - 1), - Y(n, "byteLength"), - de(n, "byteLength")); - let i = new DataView(this.buffer, r, n); - for (let o = n - 1; o >= 0; o--) - (i.setUint8(o, t & 255), (t = t / 256)); - return r + n; - } - writeUintBE(t, r, n) { - return this.writeUIntBE(t, r, n); - } - writeUIntLE(t, r, n) { - (Y(r, "offset"), - de(r, "offset"), - ee(r, "offset", this.length - 1), - Y(n, "byteLength"), - de(n, "byteLength")); - let i = new DataView(this.buffer, r, n); - for (let o = 0; o < n; o++) (i.setUint8(o, t & 255), (t = t / 256)); - return r + n; - } - writeUintLE(t, r, n) { - return this.writeUIntLE(t, r, n); - } - toJSON() { - return { type: "Buffer", data: Array.from(this) }; - } - swap16() { - let t = new DataView(this.buffer, this.byteOffset, this.byteLength); - for (let r = 0; r < this.length; r += 2) - t.setUint16(r, t.getUint16(r, !0), !1); - return this; - } - swap32() { - let t = new DataView(this.buffer, this.byteOffset, this.byteLength); - for (let r = 0; r < this.length; r += 4) - t.setUint32(r, t.getUint32(r, !0), !1); - return this; - } - swap64() { - let t = new DataView(this.buffer, this.byteOffset, this.byteLength); - for (let r = 0; r < this.length; r += 8) - t.setBigUint64(r, t.getBigUint64(r, !0), !1); - return this; - } - compare(t, r = 0, n = t.length, i = 0, o = this.length) { - return ( - zr(t, "target"), - Y(r, "targetStart"), - Y(n, "targetEnd"), - Y(i, "sourceStart"), - Y(o, "sourceEnd"), - ee(r, "targetStart"), - ee(n, "targetEnd", t.length), - ee(i, "sourceStart"), - ee(o, "sourceEnd", this.length), - e.compare(this.slice(i, o), t.slice(r, n)) - ); - } - equals(t) { - return ( - zr(t, "otherBuffer"), - this.length === t.length && this.every((r, n) => r === t[n]) - ); - } - copy(t, r = 0, n = 0, i = this.length) { - (ee(r, "targetStart"), - ee(n, "sourceStart", this.length), - ee(i, "sourceEnd"), - (r >>>= 0), - (n >>>= 0), - (i >>>= 0)); - let o = 0; - for (; n < i && !(this[n] === void 0 || t[r] === void 0); ) - ((t[r] = this[n]), o++, n++, r++); - return o; - } - write(t, r, n, i = "utf8") { - let o = typeof r == "string" ? 0 : (r ?? 0), - s = typeof n == "string" ? this.length - o : (n ?? this.length - o); - return ( - (i = typeof r == "string" ? r : typeof n == "string" ? n : i), - Y(o, "offset"), - Y(s, "length"), - ee(o, "offset", this.length), - ee(s, "length", this.length), - (i === "ucs2" || - i === "ucs-2" || - i === "utf16le" || - i === "utf-16le") && - (s = s - (s % 2)), - ui(t, i).copy(this, o, 0, s) - ); - } - fill(t = 0, r = 0, n = this.length, i = "utf-8") { - let o = typeof r == "string" ? 0 : r, - s = typeof n == "string" ? this.length : n; - if ( - ((i = typeof r == "string" ? r : typeof n == "string" ? n : i), - (t = e.from(typeof t == "number" ? [t] : (t ?? []), i)), - Bo(i, "encoding"), - ee(o, "offset", this.length), - ee(s, "end", this.length), - t.length !== 0) - ) - for (let a = o; a < s; a += t.length) - super.set( - t.slice( - 0, - t.length + a >= this.length ? this.length - a : t.length, - ), - a, - ); - return this; - } - includes(t, r = null, n = "utf-8") { - return this.indexOf(t, r, n) !== -1; - } - lastIndexOf(t, r = null, n = "utf-8") { - return this.indexOf(t, r, n, !0); - } - indexOf(t, r = null, n = "utf-8", i = !1) { - let o = i ? this.findLastIndex.bind(this) : this.findIndex.bind(this); - n = typeof r == "string" ? r : n; - let s = e.from(typeof t == "number" ? [t] : t, n), - a = typeof r == "string" ? 0 : r; - return ( - (a = typeof r == "number" ? a : null), - (a = Number.isNaN(a) ? null : a), - (a ??= i ? this.length : 0), - (a = a < 0 ? this.length + a : a), - s.length === 0 && i === !1 - ? a >= this.length - ? this.length - : a - : s.length === 0 && i === !0 - ? (a >= this.length ? this.length : a) || this.length - : o( - (f, w) => - (i ? w <= a : w >= a) && - this[w] === s[0] && - s.every((R, S) => this[w + S] === R), - ) - ); - } - toString(t = "utf8", r = 0, n = this.length) { - if (((r = r < 0 ? 0 : r), (t = t.toString().toLowerCase()), n <= 0)) - return ""; - if (t === "utf8" || t === "utf-8") return fu.decode(this.slice(r, n)); - if (t === "base64" || t === "base64url") { - let i = btoa(this.reduce((o, s) => o + pi(s), "")); - return t === "base64url" - ? i.replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "") - : i; - } - if ( - t === "binary" || - t === "ascii" || - t === "latin1" || - t === "latin-1" - ) - return this.slice(r, n).reduce( - (i, o) => i + pi(o & (t === "ascii" ? 127 : 255)), - "", - ); - if ( - t === "ucs2" || - t === "ucs-2" || - t === "utf16le" || - t === "utf-16le" - ) { - let i = new DataView(this.buffer.slice(r, n)); - return Array.from({ length: i.byteLength / 2 }, (o, s) => - s * 2 + 1 < i.byteLength ? pi(i.getUint16(s * 2, !0)) : "", - ).join(""); - } - if (t === "hex") - return this.slice(r, n).reduce( - (i, o) => i + o.toString(16).padStart(2, "0"), - "", - ); - jo(`encoding "${t}"`); - } - toLocaleString() { - return this.toString(); - } - inspect() { - return ``; - } - }; - ((mu = { - int8: [-128, 127], - int16: [-32768, 32767], - int32: [-2147483648, 2147483647], - uint8: [0, 255], - uint16: [0, 65535], - uint32: [0, 4294967295], - float32: [-1 / 0, 1 / 0], - float64: [-1 / 0, 1 / 0], - bigint64: [-0x8000000000000000n, 0x7fffffffffffffffn], - biguint64: [0n, 0xffffffffffffffffn], - }), - (du = new TextEncoder()), - (fu = new TextDecoder()), - (gu = [ - "utf8", - "utf-8", - "hex", - "base64", - "ascii", - "binary", - "base64url", - "ucs2", - "ucs-2", - "utf16le", - "utf-16le", - "latin1", - "latin-1", - ]), - (yu = 4294967295)); - uu(h.prototype); - ((y = new Proxy(hu, { - construct(e, [t, r]) { - return h.from(t, r); - }, - get(e, t) { - return h[t]; - }, - })), - (pi = String.fromCodePoint)); - }); -var g, - x, - u = ye(() => { - "use strict"; - ((g = { - nextTick: (e, ...t) => { - setTimeout(() => { - e(...t); - }, 0); - }, - env: {}, - version: "", - cwd: () => "/", - stderr: {}, - argv: ["/bin/node"], - pid: 1e4, - }), - ({ cwd: x } = g)); - }); -var b, - p = ye(() => { - "use strict"; - b = - globalThis.performance ?? - (() => { - let e = Date.now(); - return { now: () => Date.now() - e }; - })(); - }); -var E, - m = ye(() => { - "use strict"; - E = () => {}; - E.prototype = E; - }); -var d = ye(() => { - "use strict"; -}); -function Jo(e, t) { - var r, - n, - i, - o, - s, - a, - f, - w, - A = e.constructor, - R = A.precision; - if (!e.s || !t.s) return (t.s || (t = new A(e)), W ? q(t, R) : t); - if ( - ((f = e.d), - (w = t.d), - (s = e.e), - (i = t.e), - (f = f.slice()), - (o = s - i), - o) - ) { - for ( - o < 0 - ? ((n = f), (o = -o), (a = w.length)) - : ((n = w), (i = s), (a = f.length)), - s = Math.ceil(R / H), - a = s > a ? s + 1 : a + 1, - o > a && ((o = a), (n.length = 1)), - n.reverse(); - o--; - ) - n.push(0); - n.reverse(); - } - for ( - a = f.length, - o = w.length, - a - o < 0 && ((o = a), (n = w), (w = f), (f = n)), - r = 0; - o; - ) - ((r = ((f[--o] = f[o] + w[o] + r) / te) | 0), (f[o] %= te)); - for (r && (f.unshift(r), ++i), a = f.length; f[--a] == 0; ) f.pop(); - return ((t.d = f), (t.e = i), W ? q(t, R) : t); -} -function Re(e, t, r) { - if (e !== ~~e || e < t || e > r) throw Error(Ye + e); -} -function Ae(e) { - var t, - r, - n, - i = e.length - 1, - o = "", - s = e[0]; - if (i > 0) { - for (o += s, t = 1; t < i; t++) - ((n = e[t] + ""), (r = H - n.length), r && (o += Ve(r)), (o += n)); - ((s = e[t]), (n = s + ""), (r = H - n.length), r && (o += Ve(r))); - } else if (s === 0) return "0"; - for (; s % 10 === 0; ) s /= 10; - return o + s; -} -function Wo(e, t) { - var r, - n, - i, - o, - s, - a, - f = 0, - w = 0, - A = e.constructor, - R = A.precision; - if (Z(e) > 16) throw Error(di + Z(e)); - if (!e.s) return new A(he); - for ( - t == null ? ((W = !1), (a = R)) : (a = t), s = new A(0.03125); - e.abs().gte(0.1); - ) - ((e = e.times(s)), (w += 5)); - for ( - n = ((Math.log(ze(2, w)) / Math.LN10) * 2 + 5) | 0, - a += n, - r = i = o = new A(he), - A.precision = a; - ; - ) { - if ( - ((i = q(i.times(e), a)), - (r = r.times(++f)), - (s = o.plus(_e(i, r, a))), - Ae(s.d).slice(0, a) === Ae(o.d).slice(0, a)) - ) { - for (; w--; ) o = q(o.times(o), a); - return ((A.precision = R), t == null ? ((W = !0), q(o, R)) : o); - } - o = s; - } -} -function Z(e) { - for (var t = e.e * H, r = e.d[0]; r >= 10; r /= 10) t++; - return t; -} -function mi(e, t, r) { - if (t > e.LN10.sd()) - throw ( - (W = !0), - r && (e.precision = r), - Error(be + "LN10 precision limit exceeded") - ); - return q(new e(e.LN10), t); -} -function Ve(e) { - for (var t = ""; e--; ) t += "0"; - return t; -} -function Kt(e, t) { - var r, - n, - i, - o, - s, - a, - f, - w, - A, - R = 1, - S = 10, - C = e, - L = C.d, - k = C.constructor, - M = k.precision; - if (C.s < 1) throw Error(be + (C.s ? "NaN" : "-Infinity")); - if (C.eq(he)) return new k(0); - if ((t == null ? ((W = !1), (w = M)) : (w = t), C.eq(10))) - return (t == null && (W = !0), mi(k, w)); - if ( - ((w += S), - (k.precision = w), - (r = Ae(L)), - (n = r.charAt(0)), - (o = Z(C)), - Math.abs(o) < 15e14) - ) { - for (; (n < 7 && n != 1) || (n == 1 && r.charAt(1) > 3); ) - ((C = C.times(e)), (r = Ae(C.d)), (n = r.charAt(0)), R++); - ((o = Z(C)), - n > 1 ? ((C = new k("0." + r)), o++) : (C = new k(n + "." + r.slice(1)))); - } else - return ( - (f = mi(k, w + 2, M).times(o + "")), - (C = Kt(new k(n + "." + r.slice(1)), w - S).plus(f)), - (k.precision = M), - t == null ? ((W = !0), q(C, M)) : C - ); - for ( - a = s = C = _e(C.minus(he), C.plus(he), w), A = q(C.times(C), w), i = 3; - ; - ) { - if ( - ((s = q(s.times(A), w)), - (f = a.plus(_e(s, new k(i), w))), - Ae(f.d).slice(0, w) === Ae(a.d).slice(0, w)) - ) - return ( - (a = a.times(2)), - o !== 0 && (a = a.plus(mi(k, w + 2, M).times(o + ""))), - (a = _e(a, new k(R), w)), - (k.precision = M), - t == null ? ((W = !0), q(a, M)) : a - ); - ((a = f), (i += 2)); - } -} -function Qo(e, t) { - var r, n, i; - for ( - (r = t.indexOf(".")) > -1 && (t = t.replace(".", "")), - (n = t.search(/e/i)) > 0 - ? (r < 0 && (r = n), (r += +t.slice(n + 1)), (t = t.substring(0, n))) - : r < 0 && (r = t.length), - n = 0; - t.charCodeAt(n) === 48; - ) - ++n; - for (i = t.length; t.charCodeAt(i - 1) === 48; ) --i; - if (((t = t.slice(n, i)), t)) { - if ( - ((i -= n), - (r = r - n - 1), - (e.e = dt(r / H)), - (e.d = []), - (n = (r + 1) % H), - r < 0 && (n += H), - n < i) - ) { - for (n && e.d.push(+t.slice(0, n)), i -= H; n < i; ) - e.d.push(+t.slice(n, (n += H))); - ((t = t.slice(n)), (n = H - t.length)); - } else n -= i; - for (; n--; ) t += "0"; - if ((e.d.push(+t), W && (e.e > Yr || e.e < -Yr))) throw Error(di + r); - } else ((e.s = 0), (e.e = 0), (e.d = [0])); - return e; -} -function q(e, t, r) { - var n, - i, - o, - s, - a, - f, - w, - A, - R = e.d; - for (s = 1, o = R[0]; o >= 10; o /= 10) s++; - if (((n = t - s), n < 0)) ((n += H), (i = t), (w = R[(A = 0)])); - else { - if (((A = Math.ceil((n + 1) / H)), (o = R.length), A >= o)) return e; - for (w = o = R[A], s = 1; o >= 10; o /= 10) s++; - ((n %= H), (i = n - H + s)); - } - if ( - (r !== void 0 && - ((o = ze(10, s - i - 1)), - (a = ((w / o) % 10) | 0), - (f = t < 0 || R[A + 1] !== void 0 || w % o), - (f = - r < 4 - ? (a || f) && (r == 0 || r == (e.s < 0 ? 3 : 2)) - : a > 5 || - (a == 5 && - (r == 4 || - f || - (r == 6 && - ((n > 0 ? (i > 0 ? w / ze(10, s - i) : 0) : R[A - 1]) % 10) & - 1) || - r == (e.s < 0 ? 8 : 7))))), - t < 1 || !R[0]) - ) - return ( - f - ? ((o = Z(e)), - (R.length = 1), - (t = t - o - 1), - (R[0] = ze(10, (H - (t % H)) % H)), - (e.e = dt(-t / H) || 0)) - : ((R.length = 1), (R[0] = e.e = e.s = 0)), - e - ); - if ( - (n == 0 - ? ((R.length = A), (o = 1), A--) - : ((R.length = A + 1), - (o = ze(10, H - n)), - (R[A] = i > 0 ? (((w / ze(10, s - i)) % ze(10, i)) | 0) * o : 0)), - f) - ) - for (;;) - if (A == 0) { - (R[0] += o) == te && ((R[0] = 1), ++e.e); - break; - } else { - if (((R[A] += o), R[A] != te)) break; - ((R[A--] = 0), (o = 1)); - } - for (n = R.length; R[--n] === 0; ) R.pop(); - if (W && (e.e > Yr || e.e < -Yr)) throw Error(di + Z(e)); - return e; -} -function Ko(e, t) { - var r, - n, - i, - o, - s, - a, - f, - w, - A, - R, - S = e.constructor, - C = S.precision; - if (!e.s || !t.s) - return (t.s ? (t.s = -t.s) : (t = new S(e)), W ? q(t, C) : t); - if ( - ((f = e.d), - (R = t.d), - (n = t.e), - (w = e.e), - (f = f.slice()), - (s = w - n), - s) - ) { - for ( - A = s < 0, - A - ? ((r = f), (s = -s), (a = R.length)) - : ((r = R), (n = w), (a = f.length)), - i = Math.max(Math.ceil(C / H), a) + 2, - s > i && ((s = i), (r.length = 1)), - r.reverse(), - i = s; - i--; - ) - r.push(0); - r.reverse(); - } else { - for (i = f.length, a = R.length, A = i < a, A && (a = i), i = 0; i < a; i++) - if (f[i] != R[i]) { - A = f[i] < R[i]; - break; - } - s = 0; - } - for ( - A && ((r = f), (f = R), (R = r), (t.s = -t.s)), - a = f.length, - i = R.length - a; - i > 0; - --i - ) - f[a++] = 0; - for (i = R.length; i > s; ) { - if (f[--i] < R[i]) { - for (o = i; o && f[--o] === 0; ) f[o] = te - 1; - (--f[o], (f[i] += te)); - } - f[i] -= R[i]; - } - for (; f[--a] === 0; ) f.pop(); - for (; f[0] === 0; f.shift()) --n; - return f[0] ? ((t.d = f), (t.e = n), W ? q(t, C) : t) : new S(0); -} -function Ze(e, t, r) { - var n, - i = Z(e), - o = Ae(e.d), - s = o.length; - return ( - t - ? (r && (n = r - s) > 0 - ? (o = o.charAt(0) + "." + o.slice(1) + Ve(n)) - : s > 1 && (o = o.charAt(0) + "." + o.slice(1)), - (o = o + (i < 0 ? "e" : "e+") + i)) - : i < 0 - ? ((o = "0." + Ve(-i - 1) + o), r && (n = r - s) > 0 && (o += Ve(n))) - : i >= s - ? ((o += Ve(i + 1 - s)), - r && (n = r - i - 1) > 0 && (o = o + "." + Ve(n))) - : ((n = i + 1) < s && (o = o.slice(0, n) + "." + o.slice(n)), - r && (n = r - s) > 0 && (i + 1 === s && (o += "."), (o += Ve(n)))), - e.s < 0 ? "-" + o : o - ); -} -function Ho(e, t) { - if (e.length > t) return ((e.length = t), !0); -} -function zo(e) { - var t, r, n; - function i(o) { - var s = this; - if (!(s instanceof i)) return new i(o); - if (((s.constructor = i), o instanceof i)) { - ((s.s = o.s), (s.e = o.e), (s.d = (o = o.d) ? o.slice() : o)); - return; - } - if (typeof o == "number") { - if (o * 0 !== 0) throw Error(Ye + o); - if (o > 0) s.s = 1; - else if (o < 0) ((o = -o), (s.s = -1)); - else { - ((s.s = 0), (s.e = 0), (s.d = [0])); - return; - } - if (o === ~~o && o < 1e7) { - ((s.e = 0), (s.d = [o])); - return; - } - return Qo(s, o.toString()); - } else if (typeof o != "string") throw Error(Ye + o); - if ( - (o.charCodeAt(0) === 45 ? ((o = o.slice(1)), (s.s = -1)) : (s.s = 1), - bu.test(o)) - ) - Qo(s, o); - else throw Error(Ye + o); - } - if ( - ((i.prototype = I), - (i.ROUND_UP = 0), - (i.ROUND_DOWN = 1), - (i.ROUND_CEIL = 2), - (i.ROUND_FLOOR = 3), - (i.ROUND_HALF_UP = 4), - (i.ROUND_HALF_DOWN = 5), - (i.ROUND_HALF_EVEN = 6), - (i.ROUND_HALF_CEIL = 7), - (i.ROUND_HALF_FLOOR = 8), - (i.clone = zo), - (i.config = i.set = Eu), - e === void 0 && (e = {}), - e) - ) - for ( - n = ["precision", "rounding", "toExpNeg", "toExpPos", "LN10"], t = 0; - t < n.length; - ) - e.hasOwnProperty((r = n[t++])) || (e[r] = this[r]); - return (i.config(e), i); -} -function Eu(e) { - if (!e || typeof e != "object") throw Error(be + "Object expected"); - var t, - r, - n, - i = [ - "precision", - 1, - mt, - "rounding", - 0, - 8, - "toExpNeg", - -1 / 0, - 0, - "toExpPos", - 0, - 1 / 0, - ]; - for (t = 0; t < i.length; t += 3) - if ((n = e[(r = i[t])]) !== void 0) - if (dt(n) === n && n >= i[t + 1] && n <= i[t + 2]) this[r] = n; - else throw Error(Ye + r + ": " + n); - if ((n = e[(r = "LN10")]) !== void 0) - if (n == Math.LN10) this[r] = new this(n); - else throw Error(Ye + r + ": " + n); - return this; -} -var mt, - wu, - fi, - W, - be, - Ye, - di, - dt, - ze, - bu, - he, - te, - H, - Go, - Yr, - I, - _e, - fi, - Zr, - Yo = ye(() => { - "use strict"; - c(); - u(); - p(); - m(); - d(); - l(); - ((mt = 1e9), - (wu = { - precision: 20, - rounding: 4, - toExpNeg: -7, - toExpPos: 21, - LN10: "2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286", - }), - (W = !0), - (be = "[DecimalError] "), - (Ye = be + "Invalid argument: "), - (di = be + "Exponent out of range: "), - (dt = Math.floor), - (ze = Math.pow), - (bu = /^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i), - (te = 1e7), - (H = 7), - (Go = 9007199254740991), - (Yr = dt(Go / H)), - (I = {})); - I.absoluteValue = I.abs = function () { - var e = new this.constructor(this); - return (e.s && (e.s = 1), e); - }; - I.comparedTo = I.cmp = function (e) { - var t, - r, - n, - i, - o = this; - if (((e = new o.constructor(e)), o.s !== e.s)) return o.s || -e.s; - if (o.e !== e.e) return (o.e > e.e) ^ (o.s < 0) ? 1 : -1; - for (n = o.d.length, i = e.d.length, t = 0, r = n < i ? n : i; t < r; ++t) - if (o.d[t] !== e.d[t]) return (o.d[t] > e.d[t]) ^ (o.s < 0) ? 1 : -1; - return n === i ? 0 : (n > i) ^ (o.s < 0) ? 1 : -1; - }; - I.decimalPlaces = I.dp = function () { - var e = this, - t = e.d.length - 1, - r = (t - e.e) * H; - if (((t = e.d[t]), t)) for (; t % 10 == 0; t /= 10) r--; - return r < 0 ? 0 : r; - }; - I.dividedBy = I.div = function (e) { - return _e(this, new this.constructor(e)); - }; - I.dividedToIntegerBy = I.idiv = function (e) { - var t = this, - r = t.constructor; - return q(_e(t, new r(e), 0, 1), r.precision); - }; - I.equals = I.eq = function (e) { - return !this.cmp(e); - }; - I.exponent = function () { - return Z(this); - }; - I.greaterThan = I.gt = function (e) { - return this.cmp(e) > 0; - }; - I.greaterThanOrEqualTo = I.gte = function (e) { - return this.cmp(e) >= 0; - }; - I.isInteger = I.isint = function () { - return this.e > this.d.length - 2; - }; - I.isNegative = I.isneg = function () { - return this.s < 0; - }; - I.isPositive = I.ispos = function () { - return this.s > 0; - }; - I.isZero = function () { - return this.s === 0; - }; - I.lessThan = I.lt = function (e) { - return this.cmp(e) < 0; - }; - I.lessThanOrEqualTo = I.lte = function (e) { - return this.cmp(e) < 1; - }; - I.logarithm = I.log = function (e) { - var t, - r = this, - n = r.constructor, - i = n.precision, - o = i + 5; - if (e === void 0) e = new n(10); - else if (((e = new n(e)), e.s < 1 || e.eq(he))) throw Error(be + "NaN"); - if (r.s < 1) throw Error(be + (r.s ? "NaN" : "-Infinity")); - return r.eq(he) - ? new n(0) - : ((W = !1), (t = _e(Kt(r, o), Kt(e, o), o)), (W = !0), q(t, i)); - }; - I.minus = I.sub = function (e) { - var t = this; - return ( - (e = new t.constructor(e)), - t.s == e.s ? Ko(t, e) : Jo(t, ((e.s = -e.s), e)) - ); - }; - I.modulo = I.mod = function (e) { - var t, - r = this, - n = r.constructor, - i = n.precision; - if (((e = new n(e)), !e.s)) throw Error(be + "NaN"); - return r.s - ? ((W = !1), (t = _e(r, e, 0, 1).times(e)), (W = !0), r.minus(t)) - : q(new n(r), i); - }; - I.naturalExponential = I.exp = function () { - return Wo(this); - }; - I.naturalLogarithm = I.ln = function () { - return Kt(this); - }; - I.negated = I.neg = function () { - var e = new this.constructor(this); - return ((e.s = -e.s || 0), e); - }; - I.plus = I.add = function (e) { - var t = this; - return ( - (e = new t.constructor(e)), - t.s == e.s ? Jo(t, e) : Ko(t, ((e.s = -e.s), e)) - ); - }; - I.precision = I.sd = function (e) { - var t, - r, - n, - i = this; - if (e !== void 0 && e !== !!e && e !== 1 && e !== 0) throw Error(Ye + e); - if ( - ((t = Z(i) + 1), (n = i.d.length - 1), (r = n * H + 1), (n = i.d[n]), n) - ) { - for (; n % 10 == 0; n /= 10) r--; - for (n = i.d[0]; n >= 10; n /= 10) r++; - } - return e && t > r ? t : r; - }; - I.squareRoot = I.sqrt = function () { - var e, - t, - r, - n, - i, - o, - s, - a = this, - f = a.constructor; - if (a.s < 1) { - if (!a.s) return new f(0); - throw Error(be + "NaN"); - } - for ( - e = Z(a), - W = !1, - i = Math.sqrt(+a), - i == 0 || i == 1 / 0 - ? ((t = Ae(a.d)), - (t.length + e) % 2 == 0 && (t += "0"), - (i = Math.sqrt(t)), - (e = dt((e + 1) / 2) - (e < 0 || e % 2)), - i == 1 / 0 - ? (t = "5e" + e) - : ((t = i.toExponential()), - (t = t.slice(0, t.indexOf("e") + 1) + e)), - (n = new f(t))) - : (n = new f(i.toString())), - r = f.precision, - i = s = r + 3; - ; - ) - if ( - ((o = n), - (n = o.plus(_e(a, o, s + 2)).times(0.5)), - Ae(o.d).slice(0, s) === (t = Ae(n.d)).slice(0, s)) - ) { - if (((t = t.slice(s - 3, s + 1)), i == s && t == "4999")) { - if ((q(o, r + 1, 0), o.times(o).eq(a))) { - n = o; - break; - } - } else if (t != "9999") break; - s += 4; - } - return ((W = !0), q(n, r)); - }; - I.times = I.mul = function (e) { - var t, - r, - n, - i, - o, - s, - a, - f, - w, - A = this, - R = A.constructor, - S = A.d, - C = (e = new R(e)).d; - if (!A.s || !e.s) return new R(0); - for ( - e.s *= A.s, - r = A.e + e.e, - f = S.length, - w = C.length, - f < w && ((o = S), (S = C), (C = o), (s = f), (f = w), (w = s)), - o = [], - s = f + w, - n = s; - n--; - ) - o.push(0); - for (n = w; --n >= 0; ) { - for (t = 0, i = f + n; i > n; ) - ((a = o[i] + C[n] * S[i - n - 1] + t), - (o[i--] = (a % te) | 0), - (t = (a / te) | 0)); - o[i] = ((o[i] + t) % te) | 0; - } - for (; !o[--s]; ) o.pop(); - return ( - t ? ++r : o.shift(), - (e.d = o), - (e.e = r), - W ? q(e, R.precision) : e - ); - }; - I.toDecimalPlaces = I.todp = function (e, t) { - var r = this, - n = r.constructor; - return ( - (r = new n(r)), - e === void 0 - ? r - : (Re(e, 0, mt), - t === void 0 ? (t = n.rounding) : Re(t, 0, 8), - q(r, e + Z(r) + 1, t)) - ); - }; - I.toExponential = function (e, t) { - var r, - n = this, - i = n.constructor; - return ( - e === void 0 - ? (r = Ze(n, !0)) - : (Re(e, 0, mt), - t === void 0 ? (t = i.rounding) : Re(t, 0, 8), - (n = q(new i(n), e + 1, t)), - (r = Ze(n, !0, e + 1))), - r - ); - }; - I.toFixed = function (e, t) { - var r, - n, - i = this, - o = i.constructor; - return e === void 0 - ? Ze(i) - : (Re(e, 0, mt), - t === void 0 ? (t = o.rounding) : Re(t, 0, 8), - (n = q(new o(i), e + Z(i) + 1, t)), - (r = Ze(n.abs(), !1, e + Z(n) + 1)), - i.isneg() && !i.isZero() ? "-" + r : r); - }; - I.toInteger = I.toint = function () { - var e = this, - t = e.constructor; - return q(new t(e), Z(e) + 1, t.rounding); - }; - I.toNumber = function () { - return +this; - }; - I.toPower = I.pow = function (e) { - var t, - r, - n, - i, - o, - s, - a = this, - f = a.constructor, - w = 12, - A = +(e = new f(e)); - if (!e.s) return new f(he); - if (((a = new f(a)), !a.s)) { - if (e.s < 1) throw Error(be + "Infinity"); - return a; - } - if (a.eq(he)) return a; - if (((n = f.precision), e.eq(he))) return q(a, n); - if (((t = e.e), (r = e.d.length - 1), (s = t >= r), (o = a.s), s)) { - if ((r = A < 0 ? -A : A) <= Go) { - for ( - i = new f(he), t = Math.ceil(n / H + 4), W = !1; - r % 2 && ((i = i.times(a)), Ho(i.d, t)), (r = dt(r / 2)), r !== 0; - ) - ((a = a.times(a)), Ho(a.d, t)); - return ((W = !0), e.s < 0 ? new f(he).div(i) : q(i, n)); - } - } else if (o < 0) throw Error(be + "NaN"); - return ( - (o = o < 0 && e.d[Math.max(t, r)] & 1 ? -1 : 1), - (a.s = 1), - (W = !1), - (i = e.times(Kt(a, n + w))), - (W = !0), - (i = Wo(i)), - (i.s = o), - i - ); - }; - I.toPrecision = function (e, t) { - var r, - n, - i = this, - o = i.constructor; - return ( - e === void 0 - ? ((r = Z(i)), (n = Ze(i, r <= o.toExpNeg || r >= o.toExpPos))) - : (Re(e, 1, mt), - t === void 0 ? (t = o.rounding) : Re(t, 0, 8), - (i = q(new o(i), e, t)), - (r = Z(i)), - (n = Ze(i, e <= r || r <= o.toExpNeg, e))), - n - ); - }; - I.toSignificantDigits = I.tosd = function (e, t) { - var r = this, - n = r.constructor; - return ( - e === void 0 - ? ((e = n.precision), (t = n.rounding)) - : (Re(e, 1, mt), t === void 0 ? (t = n.rounding) : Re(t, 0, 8)), - q(new n(r), e, t) - ); - }; - I.toString = - I.valueOf = - I.val = - I.toJSON = - I[Symbol.for("nodejs.util.inspect.custom")] = - function () { - var e = this, - t = Z(e), - r = e.constructor; - return Ze(e, t <= r.toExpNeg || t >= r.toExpPos); - }; - _e = (function () { - function e(n, i) { - var o, - s = 0, - a = n.length; - for (n = n.slice(); a--; ) - ((o = n[a] * i + s), (n[a] = (o % te) | 0), (s = (o / te) | 0)); - return (s && n.unshift(s), n); - } - function t(n, i, o, s) { - var a, f; - if (o != s) f = o > s ? 1 : -1; - else - for (a = f = 0; a < o; a++) - if (n[a] != i[a]) { - f = n[a] > i[a] ? 1 : -1; - break; - } - return f; - } - function r(n, i, o) { - for (var s = 0; o--; ) - ((n[o] -= s), - (s = n[o] < i[o] ? 1 : 0), - (n[o] = s * te + n[o] - i[o])); - for (; !n[0] && n.length > 1; ) n.shift(); - } - return function (n, i, o, s) { - var a, - f, - w, - A, - R, - S, - C, - L, - k, - M, - De, - ue, - B, - pe, - Ke, - ci, - xe, - Jr, - Wr = n.constructor, - iu = n.s == i.s ? 1 : -1, - ve = n.d, - z = i.d; - if (!n.s) return new Wr(n); - if (!i.s) throw Error(be + "Division by zero"); - for ( - f = n.e - i.e, - xe = z.length, - Ke = ve.length, - C = new Wr(iu), - L = C.d = [], - w = 0; - z[w] == (ve[w] || 0); - ) - ++w; - if ( - (z[w] > (ve[w] || 0) && --f, - o == null - ? (ue = o = Wr.precision) - : s - ? (ue = o + (Z(n) - Z(i)) + 1) - : (ue = o), - ue < 0) - ) - return new Wr(0); - if (((ue = (ue / H + 2) | 0), (w = 0), xe == 1)) - for (A = 0, z = z[0], ue++; (w < Ke || A) && ue--; w++) - ((B = A * te + (ve[w] || 0)), - (L[w] = (B / z) | 0), - (A = (B % z) | 0)); - else { - for ( - A = (te / (z[0] + 1)) | 0, - A > 1 && - ((z = e(z, A)), - (ve = e(ve, A)), - (xe = z.length), - (Ke = ve.length)), - pe = xe, - k = ve.slice(0, xe), - M = k.length; - M < xe; - ) - k[M++] = 0; - ((Jr = z.slice()), - Jr.unshift(0), - (ci = z[0]), - z[1] >= te / 2 && ++ci); - do - ((A = 0), - (a = t(z, k, xe, M)), - a < 0 - ? ((De = k[0]), - xe != M && (De = De * te + (k[1] || 0)), - (A = (De / ci) | 0), - A > 1 - ? (A >= te && (A = te - 1), - (R = e(z, A)), - (S = R.length), - (M = k.length), - (a = t(R, k, S, M)), - a == 1 && (A--, r(R, xe < S ? Jr : z, S))) - : (A == 0 && (a = A = 1), (R = z.slice())), - (S = R.length), - S < M && R.unshift(0), - r(k, R, M), - a == -1 && - ((M = k.length), - (a = t(z, k, xe, M)), - a < 1 && (A++, r(k, xe < M ? Jr : z, M))), - (M = k.length)) - : a === 0 && (A++, (k = [0])), - (L[w++] = A), - a && k[0] ? (k[M++] = ve[pe] || 0) : ((k = [ve[pe]]), (M = 1))); - while ((pe++ < Ke || k[0] !== void 0) && ue--); - } - return (L[0] || L.shift(), (C.e = f), q(C, s ? o + Z(C) + 1 : o)); - }; - })(); - fi = zo(wu); - he = new fi(1); - Zr = fi; - }); -var v, - se, - l = ye(() => { - "use strict"; - Yo(); - ((v = class extends Zr { - static isDecimal(t) { - return t instanceof Zr; - } - static random(t = 20) { - { - let n = globalThis.crypto - .getRandomValues(new Uint8Array(t)) - .reduce((i, o) => i + o, ""); - return new Zr(`0.${n.slice(0, t)}`); - } - } - }), - (se = v)); - }); -function Ru() { - return !1; -} -function bi() { - return { - dev: 0, - ino: 0, - mode: 0, - nlink: 0, - uid: 0, - gid: 0, - rdev: 0, - size: 0, - blksize: 0, - blocks: 0, - atimeMs: 0, - mtimeMs: 0, - ctimeMs: 0, - birthtimeMs: 0, - atime: new Date(), - mtime: new Date(), - ctime: new Date(), - birthtime: new Date(), - }; -} -function Cu() { - return bi(); -} -function Su() { - return []; -} -function Iu(e) { - e(null, []); -} -function ku() { - return ""; -} -function Ou() { - return ""; -} -function Du() {} -function _u() {} -function Mu() {} -function Nu() {} -function Lu() {} -function Uu() {} -function Fu() {} -function $u() {} -function Vu() { - return { close: () => {}, on: () => {}, removeAllListeners: () => {} }; -} -function qu(e, t) { - t(null, bi()); -} -var Bu, - ju, - fs, - gs = ye(() => { - "use strict"; - c(); - u(); - p(); - m(); - d(); - l(); - ((Bu = {}), - (ju = { - existsSync: Ru, - lstatSync: bi, - stat: qu, - statSync: Cu, - readdirSync: Su, - readdir: Iu, - readlinkSync: ku, - realpathSync: Ou, - chmodSync: Du, - renameSync: _u, - mkdirSync: Mu, - rmdirSync: Nu, - rmSync: Lu, - unlinkSync: Uu, - watchFile: Fu, - unwatchFile: $u, - watch: Vu, - promises: Bu, - }), - (fs = ju)); - }); -var ys = me(() => { - "use strict"; - c(); - u(); - p(); - m(); - d(); - l(); -}); -var hs = me((Vy, Qu) => { - Qu.exports = { - name: "@prisma/internals", - version: "6.19.2", - description: "This package is intended for Prisma's internal use", - main: "dist/index.js", - types: "dist/index.d.ts", - repository: { - type: "git", - url: "https://github.com/prisma/prisma.git", - directory: "packages/internals", - }, - homepage: "https://www.prisma.io", - author: "Tim Suchanek ", - bugs: "https://github.com/prisma/prisma/issues", - license: "Apache-2.0", - scripts: { - dev: "DEV=true tsx helpers/build.ts", - build: "tsx helpers/build.ts", - test: "dotenv -e ../../.db.env -- jest --silent", - prepublishOnly: "pnpm run build", - }, - files: [ - "README.md", - "dist", - "!**/libquery_engine*", - "!dist/get-generators/engines/*", - "scripts", - ], - devDependencies: { - "@babel/helper-validator-identifier": "7.25.9", - "@opentelemetry/api": "1.9.0", - "@swc/core": "1.11.5", - "@swc/jest": "0.2.37", - "@types/babel__helper-validator-identifier": "7.15.2", - "@types/jest": "29.5.14", - "@types/node": "18.19.76", - "@types/resolve": "1.20.6", - archiver: "6.0.2", - "checkpoint-client": "1.1.33", - "cli-truncate": "4.0.0", - dotenv: "16.5.0", - empathic: "2.0.0", - "escape-string-regexp": "5.0.0", - execa: "8.0.1", - "fast-glob": "3.3.3", - "find-up": "7.0.0", - "fp-ts": "2.16.9", - "fs-extra": "11.3.0", - "global-directory": "4.0.0", - globby: "11.1.0", - "identifier-regex": "1.0.0", - "indent-string": "4.0.0", - "is-windows": "1.0.2", - "is-wsl": "3.1.0", - jest: "29.7.0", - "jest-junit": "16.0.0", - kleur: "4.1.5", - "mock-stdin": "1.0.0", - "new-github-issue-url": "0.2.1", - "node-fetch": "3.3.2", - "npm-packlist": "5.1.3", - open: "7.4.2", - "p-map": "4.0.0", - resolve: "1.22.10", - "string-width": "7.2.0", - "strip-indent": "4.0.0", - "temp-dir": "2.0.0", - tempy: "1.0.1", - "terminal-link": "4.0.0", - tmp: "0.2.3", - "ts-pattern": "5.6.2", - "ts-toolbelt": "9.6.0", - typescript: "5.4.5", - yarn: "1.22.22", - }, - dependencies: { - "@prisma/config": "workspace:*", - "@prisma/debug": "workspace:*", - "@prisma/dmmf": "workspace:*", - "@prisma/driver-adapter-utils": "workspace:*", - "@prisma/engines": "workspace:*", - "@prisma/fetch-engine": "workspace:*", - "@prisma/generator": "workspace:*", - "@prisma/generator-helper": "workspace:*", - "@prisma/get-platform": "workspace:*", - "@prisma/prisma-schema-wasm": - "7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7", - "@prisma/schema-engine-wasm": - "7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7", - "@prisma/schema-files-loader": "workspace:*", - arg: "5.0.2", - prompts: "2.4.2", - }, - peerDependencies: { typescript: ">=5.1.0" }, - peerDependenciesMeta: { typescript: { optional: !0 } }, - sideEffects: !1, - }; -}); -function Gu(...e) { - return e.join("/"); -} -function Ju(...e) { - return e.join("/"); -} -function Wu(e) { - let t = ws(e), - r = bs(e), - [n, i] = t.split("."); - return { root: "/", dir: r, base: t, ext: i, name: n }; -} -function ws(e) { - let t = e.split("/"); - return t[t.length - 1]; -} -function bs(e) { - return e.split("/").slice(0, -1).join("/"); -} -function zu(e) { - let t = e.split("/").filter((i) => i !== "" && i !== "."), - r = []; - for (let i of t) i === ".." ? r.pop() : r.push(i); - let n = r.join("/"); - return e.startsWith("/") ? "/" + n : n; -} -var Es, - Ku, - Yu, - Zu, - rn, - xs = ye(() => { - "use strict"; - c(); - u(); - p(); - m(); - d(); - l(); - ((Es = "/"), (Ku = ":")); - ((Yu = { sep: Es }), - (Zu = { - basename: ws, - delimiter: Ku, - dirname: bs, - join: Ju, - normalize: zu, - parse: Wu, - posix: Yu, - resolve: Gu, - sep: Es, - }), - (rn = Zu)); - }); -var xi = {}; -pt(xi, { - Hash: () => Zt, - createHash: () => Ps, - default: () => yt, - randomFillSync: () => sn, - randomUUID: () => on, - webcrypto: () => Xt, -}); -function on() { - return globalThis.crypto.randomUUID(); -} -function sn(e, t, r) { - return ( - t !== void 0 && - (r !== void 0 ? (e = e.subarray(t, t + r)) : (e = e.subarray(t))), - globalThis.crypto.getRandomValues(e) - ); -} -function Ps(e) { - return new Zt(e); -} -var Xt, - Zt, - yt, - Xe = ye(() => { - "use strict"; - c(); - u(); - p(); - m(); - d(); - l(); - Xt = globalThis.crypto; - ((Zt = class { - #t = []; - #e; - constructor(t) { - this.#e = t; - } - update(t) { - this.#t.push(t); - } - async digest() { - let t = new Uint8Array(this.#t.reduce((i, o) => i + o.length, 0)), - r = 0; - for (let i of this.#t) (t.set(i, r), (r += i.length)); - let n = await globalThis.crypto.subtle.digest(this.#e, t); - return new Uint8Array(n); - } - }), - (yt = { - webcrypto: Xt, - randomUUID: on, - randomFillSync: sn, - createHash: Ps, - Hash: Zt, - })); - }); -var Pi = me(($h, tp) => { - tp.exports = { - name: "@prisma/engines-version", - version: "7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7", - main: "index.js", - types: "index.d.ts", - license: "Apache-2.0", - author: "Tim Suchanek ", - prisma: { enginesVersion: "c2990dca591cba766e3b7ef5d9e8a84796e47ab7" }, - repository: { - type: "git", - url: "https://github.com/prisma/engines-wrapper.git", - directory: "packages/engines-version", - }, - devDependencies: { "@types/node": "18.19.76", typescript: "4.9.5" }, - files: ["index.js", "index.d.ts"], - scripts: { build: "tsc -d" }, - }; -}); -var Ts = me((an) => { - "use strict"; - c(); - u(); - p(); - m(); - d(); - l(); - Object.defineProperty(an, "__esModule", { value: !0 }); - an.enginesVersion = void 0; - an.enginesVersion = Pi().prisma.enginesVersion; -}); -var Rs = me((ew, As) => { - "use strict"; - c(); - u(); - p(); - m(); - d(); - l(); - As.exports = (e, t = 1, r) => { - if ( - ((r = { indent: " ", includeEmptyLines: !1, ...r }), typeof e != "string") - ) - throw new TypeError( - `Expected \`input\` to be a \`string\`, got \`${typeof e}\``, - ); - if (typeof t != "number") - throw new TypeError( - `Expected \`count\` to be a \`number\`, got \`${typeof t}\``, - ); - if (typeof r.indent != "string") - throw new TypeError( - `Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``, - ); - if (t === 0) return e; - let n = r.includeEmptyLines ? /^/gm : /^(?!\s*$)/gm; - return e.replace(n, r.indent.repeat(t)); - }; -}); -var Ss = me((Lw, un) => { - "use strict"; - c(); - u(); - p(); - m(); - d(); - l(); - un.exports = (e = {}) => { - let t; - if (e.repoUrl) t = e.repoUrl; - else if (e.user && e.repo) t = `https://github.com/${e.user}/${e.repo}`; - else - throw new Error( - "You need to specify either the `repoUrl` option or both the `user` and `repo` options", - ); - let r = new URL(`${t}/issues/new`), - n = [ - "body", - "title", - "labels", - "template", - "milestone", - "assignee", - "projects", - ]; - for (let i of n) { - let o = e[i]; - if (o !== void 0) { - if (i === "labels" || i === "projects") { - if (!Array.isArray(o)) - throw new TypeError(`The \`${i}\` option should be an array`); - o = o.join(","); - } - r.searchParams.set(i, o); - } - } - return r.toString(); - }; - un.exports.default = un.exports; -}); -var Ii = me((SP, _s) => { - "use strict"; - c(); - u(); - p(); - m(); - d(); - l(); - _s.exports = (function () { - function e(t, r, n, i, o) { - return t < r || n < r ? (t > n ? n + 1 : t + 1) : i === o ? r : r + 1; - } - return function (t, r) { - if (t === r) return 0; - if (t.length > r.length) { - var n = t; - ((t = r), (r = n)); - } - for ( - var i = t.length, o = r.length; - i > 0 && t.charCodeAt(i - 1) === r.charCodeAt(o - 1); - ) - (i--, o--); - for (var s = 0; s < i && t.charCodeAt(s) === r.charCodeAt(s); ) s++; - if (((i -= s), (o -= s), i === 0 || o < 3)) return o; - var a = 0, - f, - w, - A, - R, - S, - C, - L, - k, - M, - De, - ue, - B, - pe = []; - for (f = 0; f < i; f++) (pe.push(f + 1), pe.push(t.charCodeAt(s + f))); - for (var Ke = pe.length - 1; a < o - 3; ) - for ( - M = r.charCodeAt(s + (w = a)), - De = r.charCodeAt(s + (A = a + 1)), - ue = r.charCodeAt(s + (R = a + 2)), - B = r.charCodeAt(s + (S = a + 3)), - C = a += 4, - f = 0; - f < Ke; - f += 2 - ) - ((L = pe[f]), - (k = pe[f + 1]), - (w = e(L, w, A, M, k)), - (A = e(w, A, R, De, k)), - (R = e(A, R, S, ue, k)), - (C = e(R, S, C, B, k)), - (pe[f] = C), - (S = R), - (R = A), - (A = w), - (w = L)); - for (; a < o; ) - for (M = r.charCodeAt(s + (w = a)), C = ++a, f = 0; f < Ke; f += 2) - ((L = pe[f]), (pe[f] = C = e(L, w, C, M, pe[f + 1])), (w = L)); - return C; - }; - })(); -}); -var Fs = ye(() => { - "use strict"; - c(); - u(); - p(); - m(); - d(); - l(); -}); -var $s = ye(() => { - "use strict"; - c(); - u(); - p(); - m(); - d(); - l(); -}); -var kn, - ca = ye(() => { - "use strict"; - c(); - u(); - p(); - m(); - d(); - l(); - kn = class { - events = {}; - on(t, r) { - return ( - this.events[t] || (this.events[t] = []), - this.events[t].push(r), - this - ); - } - emit(t, ...r) { - return this.events[t] - ? (this.events[t].forEach((n) => { - n(...r); - }), - !0) - : !1; - } - }; - }); -var Xi = me((rt) => { - "use strict"; - c(); - u(); - p(); - m(); - d(); - l(); - Object.defineProperty(rt, "__esModule", { value: !0 }); - rt.anumber = Zi; - rt.abytes = ol; - rt.ahash = Nm; - rt.aexists = Lm; - rt.aoutput = Um; - function Zi(e) { - if (!Number.isSafeInteger(e) || e < 0) - throw new Error("positive integer expected, got " + e); - } - function Mm(e) { - return ( - e instanceof Uint8Array || - (ArrayBuffer.isView(e) && e.constructor.name === "Uint8Array") - ); - } - function ol(e, ...t) { - if (!Mm(e)) throw new Error("Uint8Array expected"); - if (t.length > 0 && !t.includes(e.length)) - throw new Error( - "Uint8Array expected of length " + t + ", got length=" + e.length, - ); - } - function Nm(e) { - if (typeof e != "function" || typeof e.create != "function") - throw new Error("Hash should be wrapped by utils.wrapConstructor"); - (Zi(e.outputLen), Zi(e.blockLen)); - } - function Lm(e, t = !0) { - if (e.destroyed) throw new Error("Hash instance has been destroyed"); - if (t && e.finished) - throw new Error("Hash#digest() has already been called"); - } - function Um(e, t) { - ol(e); - let r = t.outputLen; - if (e.length < r) - throw new Error( - "digestInto() expects output buffer of length at least " + r, - ); - } -}); -var Cl = me((_) => { - "use strict"; - c(); - u(); - p(); - m(); - d(); - l(); - Object.defineProperty(_, "__esModule", { value: !0 }); - _.add5L = - _.add5H = - _.add4H = - _.add4L = - _.add3H = - _.add3L = - _.rotlBL = - _.rotlBH = - _.rotlSL = - _.rotlSH = - _.rotr32L = - _.rotr32H = - _.rotrBL = - _.rotrBH = - _.rotrSL = - _.rotrSH = - _.shrSL = - _.shrSH = - _.toBig = - void 0; - _.fromBig = to; - _.split = sl; - _.add = El; - var Fn = BigInt(2 ** 32 - 1), - eo = BigInt(32); - function to(e, t = !1) { - return t - ? { h: Number(e & Fn), l: Number((e >> eo) & Fn) } - : { h: Number((e >> eo) & Fn) | 0, l: Number(e & Fn) | 0 }; - } - function sl(e, t = !1) { - let r = new Uint32Array(e.length), - n = new Uint32Array(e.length); - for (let i = 0; i < e.length; i++) { - let { h: o, l: s } = to(e[i], t); - [r[i], n[i]] = [o, s]; - } - return [r, n]; - } - var al = (e, t) => (BigInt(e >>> 0) << eo) | BigInt(t >>> 0); - _.toBig = al; - var ll = (e, t, r) => e >>> r; - _.shrSH = ll; - var cl = (e, t, r) => (e << (32 - r)) | (t >>> r); - _.shrSL = cl; - var ul = (e, t, r) => (e >>> r) | (t << (32 - r)); - _.rotrSH = ul; - var pl = (e, t, r) => (e << (32 - r)) | (t >>> r); - _.rotrSL = pl; - var ml = (e, t, r) => (e << (64 - r)) | (t >>> (r - 32)); - _.rotrBH = ml; - var dl = (e, t, r) => (e >>> (r - 32)) | (t << (64 - r)); - _.rotrBL = dl; - var fl = (e, t) => t; - _.rotr32H = fl; - var gl = (e, t) => e; - _.rotr32L = gl; - var yl = (e, t, r) => (e << r) | (t >>> (32 - r)); - _.rotlSH = yl; - var hl = (e, t, r) => (t << r) | (e >>> (32 - r)); - _.rotlSL = hl; - var wl = (e, t, r) => (t << (r - 32)) | (e >>> (64 - r)); - _.rotlBH = wl; - var bl = (e, t, r) => (e << (r - 32)) | (t >>> (64 - r)); - _.rotlBL = bl; - function El(e, t, r, n) { - let i = (t >>> 0) + (n >>> 0); - return { h: (e + r + ((i / 2 ** 32) | 0)) | 0, l: i | 0 }; - } - var xl = (e, t, r) => (e >>> 0) + (t >>> 0) + (r >>> 0); - _.add3L = xl; - var Pl = (e, t, r, n) => (t + r + n + ((e / 2 ** 32) | 0)) | 0; - _.add3H = Pl; - var Tl = (e, t, r, n) => (e >>> 0) + (t >>> 0) + (r >>> 0) + (n >>> 0); - _.add4L = Tl; - var vl = (e, t, r, n, i) => (t + r + n + i + ((e / 2 ** 32) | 0)) | 0; - _.add4H = vl; - var Al = (e, t, r, n, i) => - (e >>> 0) + (t >>> 0) + (r >>> 0) + (n >>> 0) + (i >>> 0); - _.add5L = Al; - var Rl = (e, t, r, n, i, o) => (t + r + n + i + o + ((e / 2 ** 32) | 0)) | 0; - _.add5H = Rl; - var Fm = { - fromBig: to, - split: sl, - toBig: al, - shrSH: ll, - shrSL: cl, - rotrSH: ul, - rotrSL: pl, - rotrBH: ml, - rotrBL: dl, - rotr32H: fl, - rotr32L: gl, - rotlSH: yl, - rotlSL: hl, - rotlBH: wl, - rotlBL: bl, - add: El, - add3L: xl, - add3H: Pl, - add4L: Tl, - add4H: vl, - add5H: Rl, - add5L: Al, - }; - _.default = Fm; -}); -var Sl = me(($n) => { - "use strict"; - c(); - u(); - p(); - m(); - d(); - l(); - Object.defineProperty($n, "__esModule", { value: !0 }); - $n.crypto = void 0; - var He = (Xe(), qo(xi)); - $n.crypto = - He && typeof He == "object" && "webcrypto" in He - ? He.webcrypto - : He && typeof He == "object" && "randomBytes" in He - ? He - : void 0; -}); -var Ol = me((U) => { - "use strict"; - c(); - u(); - p(); - m(); - d(); - l(); - Object.defineProperty(U, "__esModule", { value: !0 }); - U.Hash = U.nextTick = U.byteSwapIfBE = U.isLE = void 0; - U.isBytes = $m; - U.u8 = Vm; - U.u32 = qm; - U.createView = Bm; - U.rotr = jm; - U.rotl = Qm; - U.byteSwap = io; - U.byteSwap32 = Hm; - U.bytesToHex = Jm; - U.hexToBytes = Wm; - U.asyncLoop = zm; - U.utf8ToBytes = kl; - U.toBytes = Vn; - U.concatBytes = Ym; - U.checkOpts = Zm; - U.wrapConstructor = Xm; - U.wrapConstructorWithOpts = ed; - U.wrapXOFConstructorWithOpts = td; - U.randomBytes = rd; - var Mt = Sl(), - no = Xi(); - function $m(e) { - return ( - e instanceof Uint8Array || - (ArrayBuffer.isView(e) && e.constructor.name === "Uint8Array") - ); - } - function Vm(e) { - return new Uint8Array(e.buffer, e.byteOffset, e.byteLength); - } - function qm(e) { - return new Uint32Array( - e.buffer, - e.byteOffset, - Math.floor(e.byteLength / 4), - ); - } - function Bm(e) { - return new DataView(e.buffer, e.byteOffset, e.byteLength); - } - function jm(e, t) { - return (e << (32 - t)) | (e >>> t); - } - function Qm(e, t) { - return (e << t) | ((e >>> (32 - t)) >>> 0); - } - U.isLE = new Uint8Array(new Uint32Array([287454020]).buffer)[0] === 68; - function io(e) { - return ( - ((e << 24) & 4278190080) | - ((e << 8) & 16711680) | - ((e >>> 8) & 65280) | - ((e >>> 24) & 255) - ); - } - U.byteSwapIfBE = U.isLE ? (e) => e : (e) => io(e); - function Hm(e) { - for (let t = 0; t < e.length; t++) e[t] = io(e[t]); - } - var Gm = Array.from({ length: 256 }, (e, t) => - t.toString(16).padStart(2, "0"), - ); - function Jm(e) { - (0, no.abytes)(e); - let t = ""; - for (let r = 0; r < e.length; r++) t += Gm[e[r]]; - return t; - } - var Le = { _0: 48, _9: 57, A: 65, F: 70, a: 97, f: 102 }; - function Il(e) { - if (e >= Le._0 && e <= Le._9) return e - Le._0; - if (e >= Le.A && e <= Le.F) return e - (Le.A - 10); - if (e >= Le.a && e <= Le.f) return e - (Le.a - 10); - } - function Wm(e) { - if (typeof e != "string") - throw new Error("hex string expected, got " + typeof e); - let t = e.length, - r = t / 2; - if (t % 2) - throw new Error("hex string expected, got unpadded hex of length " + t); - let n = new Uint8Array(r); - for (let i = 0, o = 0; i < r; i++, o += 2) { - let s = Il(e.charCodeAt(o)), - a = Il(e.charCodeAt(o + 1)); - if (s === void 0 || a === void 0) { - let f = e[o] + e[o + 1]; - throw new Error( - 'hex string expected, got non-hex character "' + - f + - '" at index ' + - o, - ); - } - n[i] = s * 16 + a; - } - return n; - } - var Km = async () => {}; - U.nextTick = Km; - async function zm(e, t, r) { - let n = Date.now(); - for (let i = 0; i < e; i++) { - r(i); - let o = Date.now() - n; - (o >= 0 && o < t) || (await (0, U.nextTick)(), (n += o)); - } - } - function kl(e) { - if (typeof e != "string") - throw new Error("utf8ToBytes expected string, got " + typeof e); - return new Uint8Array(new TextEncoder().encode(e)); - } - function Vn(e) { - return (typeof e == "string" && (e = kl(e)), (0, no.abytes)(e), e); - } - function Ym(...e) { - let t = 0; - for (let n = 0; n < e.length; n++) { - let i = e[n]; - ((0, no.abytes)(i), (t += i.length)); - } - let r = new Uint8Array(t); - for (let n = 0, i = 0; n < e.length; n++) { - let o = e[n]; - (r.set(o, i), (i += o.length)); - } - return r; - } - var ro = class { - clone() { - return this._cloneInto(); - } - }; - U.Hash = ro; - function Zm(e, t) { - if (t !== void 0 && {}.toString.call(t) !== "[object Object]") - throw new Error("Options should be object or undefined"); - return Object.assign(e, t); - } - function Xm(e) { - let t = (n) => e().update(Vn(n)).digest(), - r = e(); - return ( - (t.outputLen = r.outputLen), - (t.blockLen = r.blockLen), - (t.create = () => e()), - t - ); - } - function ed(e) { - let t = (n, i) => e(i).update(Vn(n)).digest(), - r = e({}); - return ( - (t.outputLen = r.outputLen), - (t.blockLen = r.blockLen), - (t.create = (n) => e(n)), - t - ); - } - function td(e) { - let t = (n, i) => e(i).update(Vn(n)).digest(), - r = e({}); - return ( - (t.outputLen = r.outputLen), - (t.blockLen = r.blockLen), - (t.create = (n) => e(n)), - t - ); - } - function rd(e = 32) { - if (Mt.crypto && typeof Mt.crypto.getRandomValues == "function") - return Mt.crypto.getRandomValues(new Uint8Array(e)); - if (Mt.crypto && typeof Mt.crypto.randomBytes == "function") - return Mt.crypto.randomBytes(e); - throw new Error("crypto.getRandomValues must be defined"); - } -}); -var $l = me((J) => { - "use strict"; - c(); - u(); - p(); - m(); - d(); - l(); - Object.defineProperty(J, "__esModule", { value: !0 }); - J.shake256 = - J.shake128 = - J.keccak_512 = - J.keccak_384 = - J.keccak_256 = - J.keccak_224 = - J.sha3_512 = - J.sha3_384 = - J.sha3_256 = - J.sha3_224 = - J.Keccak = - void 0; - J.keccakP = Ul; - var Nt = Xi(), - Pr = Cl(), - Ue = Ol(), - Ml = [], - Nl = [], - Ll = [], - nd = BigInt(0), - xr = BigInt(1), - id = BigInt(2), - od = BigInt(7), - sd = BigInt(256), - ad = BigInt(113); - for (let e = 0, t = xr, r = 1, n = 0; e < 24; e++) { - (([r, n] = [n, (2 * r + 3 * n) % 5]), - Ml.push(2 * (5 * n + r)), - Nl.push((((e + 1) * (e + 2)) / 2) % 64)); - let i = nd; - for (let o = 0; o < 7; o++) - ((t = ((t << xr) ^ ((t >> od) * ad)) % sd), - t & id && (i ^= xr << ((xr << BigInt(o)) - xr))); - Ll.push(i); - } - var [ld, cd] = (0, Pr.split)(Ll, !0), - Dl = (e, t, r) => - r > 32 ? (0, Pr.rotlBH)(e, t, r) : (0, Pr.rotlSH)(e, t, r), - _l = (e, t, r) => - r > 32 ? (0, Pr.rotlBL)(e, t, r) : (0, Pr.rotlSL)(e, t, r); - function Ul(e, t = 24) { - let r = new Uint32Array(10); - for (let n = 24 - t; n < 24; n++) { - for (let s = 0; s < 10; s++) - r[s] = e[s] ^ e[s + 10] ^ e[s + 20] ^ e[s + 30] ^ e[s + 40]; - for (let s = 0; s < 10; s += 2) { - let a = (s + 8) % 10, - f = (s + 2) % 10, - w = r[f], - A = r[f + 1], - R = Dl(w, A, 1) ^ r[a], - S = _l(w, A, 1) ^ r[a + 1]; - for (let C = 0; C < 50; C += 10) ((e[s + C] ^= R), (e[s + C + 1] ^= S)); - } - let i = e[2], - o = e[3]; - for (let s = 0; s < 24; s++) { - let a = Nl[s], - f = Dl(i, o, a), - w = _l(i, o, a), - A = Ml[s]; - ((i = e[A]), (o = e[A + 1]), (e[A] = f), (e[A + 1] = w)); - } - for (let s = 0; s < 50; s += 10) { - for (let a = 0; a < 10; a++) r[a] = e[s + a]; - for (let a = 0; a < 10; a++) - e[s + a] ^= ~r[(a + 2) % 10] & r[(a + 4) % 10]; - } - ((e[0] ^= ld[n]), (e[1] ^= cd[n])); - } - r.fill(0); - } - var Tr = class e extends Ue.Hash { - constructor(t, r, n, i = !1, o = 24) { - if ( - (super(), - (this.blockLen = t), - (this.suffix = r), - (this.outputLen = n), - (this.enableXOF = i), - (this.rounds = o), - (this.pos = 0), - (this.posOut = 0), - (this.finished = !1), - (this.destroyed = !1), - (0, Nt.anumber)(n), - 0 >= this.blockLen || this.blockLen >= 200) - ) - throw new Error("Sha3 supports only keccak-f1600 function"); - ((this.state = new Uint8Array(200)), - (this.state32 = (0, Ue.u32)(this.state))); - } - keccak() { - (Ue.isLE || (0, Ue.byteSwap32)(this.state32), - Ul(this.state32, this.rounds), - Ue.isLE || (0, Ue.byteSwap32)(this.state32), - (this.posOut = 0), - (this.pos = 0)); - } - update(t) { - (0, Nt.aexists)(this); - let { blockLen: r, state: n } = this; - t = (0, Ue.toBytes)(t); - let i = t.length; - for (let o = 0; o < i; ) { - let s = Math.min(r - this.pos, i - o); - for (let a = 0; a < s; a++) n[this.pos++] ^= t[o++]; - this.pos === r && this.keccak(); - } - return this; - } - finish() { - if (this.finished) return; - this.finished = !0; - let { state: t, suffix: r, pos: n, blockLen: i } = this; - ((t[n] ^= r), - (r & 128) !== 0 && n === i - 1 && this.keccak(), - (t[i - 1] ^= 128), - this.keccak()); - } - writeInto(t) { - ((0, Nt.aexists)(this, !1), (0, Nt.abytes)(t), this.finish()); - let r = this.state, - { blockLen: n } = this; - for (let i = 0, o = t.length; i < o; ) { - this.posOut >= n && this.keccak(); - let s = Math.min(n - this.posOut, o - i); - (t.set(r.subarray(this.posOut, this.posOut + s), i), - (this.posOut += s), - (i += s)); - } - return t; - } - xofInto(t) { - if (!this.enableXOF) - throw new Error("XOF is not possible for this instance"); - return this.writeInto(t); - } - xof(t) { - return ((0, Nt.anumber)(t), this.xofInto(new Uint8Array(t))); - } - digestInto(t) { - if (((0, Nt.aoutput)(t, this), this.finished)) - throw new Error("digest() was already called"); - return (this.writeInto(t), this.destroy(), t); - } - digest() { - return this.digestInto(new Uint8Array(this.outputLen)); - } - destroy() { - ((this.destroyed = !0), this.state.fill(0)); - } - _cloneInto(t) { - let { - blockLen: r, - suffix: n, - outputLen: i, - rounds: o, - enableXOF: s, - } = this; - return ( - t || (t = new e(r, n, i, s, o)), - t.state32.set(this.state32), - (t.pos = this.pos), - (t.posOut = this.posOut), - (t.finished = this.finished), - (t.rounds = o), - (t.suffix = n), - (t.outputLen = i), - (t.enableXOF = s), - (t.destroyed = this.destroyed), - t - ); - } - }; - J.Keccak = Tr; - var Ge = (e, t, r) => (0, Ue.wrapConstructor)(() => new Tr(t, e, r)); - J.sha3_224 = Ge(6, 144, 224 / 8); - J.sha3_256 = Ge(6, 136, 256 / 8); - J.sha3_384 = Ge(6, 104, 384 / 8); - J.sha3_512 = Ge(6, 72, 512 / 8); - J.keccak_224 = Ge(1, 144, 224 / 8); - J.keccak_256 = Ge(1, 136, 256 / 8); - J.keccak_384 = Ge(1, 104, 384 / 8); - J.keccak_512 = Ge(1, 72, 512 / 8); - var Fl = (e, t, r) => - (0, Ue.wrapXOFConstructorWithOpts)( - (n = {}) => new Tr(t, e, n.dkLen === void 0 ? r : n.dkLen, !0), - ); - J.shake128 = Fl(31, 168, 128 / 8); - J.shake256 = Fl(31, 136, 256 / 8); -}); -var Jl = me((RL, Je) => { - "use strict"; - c(); - u(); - p(); - m(); - d(); - l(); - var { sha3_512: ud } = $l(), - ql = 24, - vr = 32, - oo = (e = 4, t = Math.random) => { - let r = ""; - for (; r.length < e; ) r = r + Math.floor(t() * 36).toString(36); - return r; - }; - function Bl(e) { - let t = 8n, - r = 0n; - for (let n of e.values()) { - let i = BigInt(n); - r = (r << t) + i; - } - return r; - } - var jl = (e = "") => Bl(ud(e)).toString(36).slice(1), - Vl = Array.from({ length: 26 }, (e, t) => String.fromCharCode(t + 97)), - pd = (e) => Vl[Math.floor(e() * Vl.length)], - Ql = ({ - globalObj: e = typeof globalThis < "u" - ? globalThis - : typeof window < "u" - ? window - : {}, - random: t = Math.random, - } = {}) => { - let r = Object.keys(e).toString(), - n = r.length ? r + oo(vr, t) : oo(vr, t); - return jl(n).substring(0, vr); - }, - Hl = (e) => () => e++, - md = 476782367, - Gl = ({ - random: e = Math.random, - counter: t = Hl(Math.floor(e() * md)), - length: r = ql, - fingerprint: n = Ql({ random: e }), - } = {}) => - function () { - let o = pd(e), - s = Date.now().toString(36), - a = t().toString(36), - f = oo(r, e), - w = `${s + f + a + n}`; - return `${o + jl(w).substring(1, r)}`; - }, - dd = Gl(), - fd = (e, { minLength: t = 2, maxLength: r = vr } = {}) => { - let n = e.length, - i = /^[0-9a-z]+$/; - try { - if (typeof e == "string" && n >= t && n <= r && i.test(e)) return !0; - } finally { - } - return !1; - }; - Je.exports.getConstants = () => ({ defaultLength: ql, bigLength: vr }); - Je.exports.init = Gl; - Je.exports.createId = dd; - Je.exports.bufToBigInt = Bl; - Je.exports.createCounter = Hl; - Je.exports.createFingerprint = Ql; - Je.exports.isCuid = fd; -}); -var Wl = me((_L, Ar) => { - "use strict"; - c(); - u(); - p(); - m(); - d(); - l(); - var { createId: gd, init: yd, getConstants: hd, isCuid: wd } = Jl(); - Ar.exports.createId = gd; - Ar.exports.init = yd; - Ar.exports.getConstants = hd; - Ar.exports.isCuid = wd; -}); -var $f = {}; -pt($f, { - DMMF: () => or, - Debug: () => K, - Decimal: () => se, - Extensions: () => gi, - MetricsClient: () => St, - PrismaClientInitializationError: () => F, - PrismaClientKnownRequestError: () => X, - PrismaClientRustPanicError: () => ae, - PrismaClientUnknownRequestError: () => ne, - PrismaClientValidationError: () => ie, - Public: () => yi, - Sql: () => fe, - createParam: () => ta, - defineDmmfProperty: () => aa, - deserializeJsonResponse: () => Qe, - deserializeRawResult: () => ai, - dmmfToRuntimeDataModel: () => Ds, - empty: () => pa, - getPrismaClient: () => tu, - getRuntime: () => ti, - join: () => ua, - makeStrictEnum: () => ru, - makeTypedQueryFactory: () => la, - objectEnumValues: () => En, - raw: () => Fi, - serializeJsonQuery: () => Cn, - skip: () => Rn, - sqltag: () => $i, - warnEnvConflicts: () => void 0, - warnOnce: () => rr, -}); -module.exports = qo($f); -c(); -u(); -p(); -m(); -d(); -l(); -var gi = {}; -pt(gi, { defineExtension: () => Zo, getExtensionContext: () => Xo }); -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -function Zo(e) { - return typeof e == "function" ? e : (t) => t.$extends(e); -} -c(); -u(); -p(); -m(); -d(); -l(); -function Xo(e) { - return e; -} -var yi = {}; -pt(yi, { validator: () => es }); -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -function es(...e) { - return (t) => t; -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -var hi, - ts, - rs, - ns, - is = !0; -typeof g < "u" && - (({ - FORCE_COLOR: hi, - NODE_DISABLE_COLORS: ts, - NO_COLOR: rs, - TERM: ns, - } = g.env || {}), - (is = g.stdout && g.stdout.isTTY)); -var xu = { - enabled: - !ts && rs == null && ns !== "dumb" && ((hi != null && hi !== "0") || is), -}; -function j(e, t) { - let r = new RegExp(`\\x1b\\[${t}m`, "g"), - n = `\x1B[${e}m`, - i = `\x1B[${t}m`; - return function (o) { - return !xu.enabled || o == null - ? o - : n + (~("" + o).indexOf(i) ? o.replace(r, i + n) : o) + i; - }; -} -var Ug = j(0, 0), - Xr = j(1, 22), - en = j(2, 22), - Fg = j(3, 23), - tn = j(4, 24), - $g = j(7, 27), - Vg = j(8, 28), - qg = j(9, 29), - Bg = j(30, 39), - ft = j(31, 39), - os = j(32, 39), - ss = j(33, 39), - as = j(34, 39), - jg = j(35, 39), - ls = j(36, 39), - Qg = j(37, 39), - cs = j(90, 39), - Hg = j(90, 39), - Gg = j(40, 49), - Jg = j(41, 49), - Wg = j(42, 49), - Kg = j(43, 49), - zg = j(44, 49), - Yg = j(45, 49), - Zg = j(46, 49), - Xg = j(47, 49); -c(); -u(); -p(); -m(); -d(); -l(); -var Pu = 100, - us = ["green", "yellow", "blue", "magenta", "cyan", "red"], - zt = [], - ps = Date.now(), - Tu = 0, - wi = typeof g < "u" ? g.env : {}; -globalThis.DEBUG ??= wi.DEBUG ?? ""; -globalThis.DEBUG_COLORS ??= wi.DEBUG_COLORS ? wi.DEBUG_COLORS === "true" : !0; -var Yt = { - enable(e) { - typeof e == "string" && (globalThis.DEBUG = e); - }, - disable() { - let e = globalThis.DEBUG; - return ((globalThis.DEBUG = ""), e); - }, - enabled(e) { - let t = globalThis.DEBUG.split(",").map((i) => - i.replace(/[.+?^${}()|[\]\\]/g, "\\$&"), - ), - r = t.some((i) => - i === "" || i[0] === "-" - ? !1 - : e.match(RegExp(i.split("*").join(".*") + "$")), - ), - n = t.some((i) => - i === "" || i[0] !== "-" - ? !1 - : e.match(RegExp(i.slice(1).split("*").join(".*") + "$")), - ); - return r && !n; - }, - log: (...e) => { - let [t, r, ...n] = e; - (console.warn ?? console.log)(`${t} ${r}`, ...n); - }, - formatters: {}, -}; -function vu(e) { - let t = { - color: us[Tu++ % us.length], - enabled: Yt.enabled(e), - namespace: e, - log: Yt.log, - extend: () => {}, - }, - r = (...n) => { - let { enabled: i, namespace: o, color: s, log: a } = t; - if ( - (n.length !== 0 && zt.push([o, ...n]), - zt.length > Pu && zt.shift(), - Yt.enabled(o) || i) - ) { - let f = n.map((A) => (typeof A == "string" ? A : Au(A))), - w = `+${Date.now() - ps}ms`; - ((ps = Date.now()), a(o, ...f, w)); - } - }; - return new Proxy(r, { get: (n, i) => t[i], set: (n, i, o) => (t[i] = o) }); -} -var K = new Proxy(vu, { get: (e, t) => Yt[t], set: (e, t, r) => (Yt[t] = r) }); -function Au(e, t = 2) { - let r = new Set(); - return JSON.stringify( - e, - (n, i) => { - if (typeof i == "object" && i !== null) { - if (r.has(i)) return "[Circular *]"; - r.add(i); - } else if (typeof i == "bigint") return i.toString(); - return i; - }, - t, - ); -} -function ms(e = 7500) { - let t = zt.map( - ([r, ...n]) => - `${r} ${n.map((i) => (typeof i == "string" ? i : JSON.stringify(i))).join(" ")}`, - ).join(` -`); - return t.length < e ? t : t.slice(-e); -} -function ds() { - zt.length = 0; -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -var Hu = hs(), - Ei = Hu.version; -c(); -u(); -p(); -m(); -d(); -l(); -function gt(e) { - let t = Xu(); - return ( - t || - (e?.config.engineType === "library" - ? "library" - : e?.config.engineType === "binary" - ? "binary" - : e?.config.engineType === "client" - ? "client" - : ep()) - ); -} -function Xu() { - let e = g.env.PRISMA_CLIENT_ENGINE_TYPE; - return e === "library" - ? "library" - : e === "binary" - ? "binary" - : e === "client" - ? "client" - : void 0; -} -function ep() { - return "library"; -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -function nn(e) { - return e.name === "DriverAdapterError" && typeof e.cause == "object"; -} -c(); -u(); -p(); -m(); -d(); -l(); -var O = { - Int32: 0, - Int64: 1, - Float: 2, - Double: 3, - Numeric: 4, - Boolean: 5, - Character: 6, - Text: 7, - Date: 8, - Time: 9, - DateTime: 10, - Json: 11, - Enum: 12, - Bytes: 13, - Set: 14, - Uuid: 15, - Int32Array: 64, - Int64Array: 65, - FloatArray: 66, - DoubleArray: 67, - NumericArray: 68, - BooleanArray: 69, - CharacterArray: 70, - TextArray: 71, - DateArray: 72, - TimeArray: 73, - DateTimeArray: 74, - JsonArray: 75, - EnumArray: 76, - BytesArray: 77, - UuidArray: 78, - UnknownNumber: 128, -}; -c(); -u(); -p(); -m(); -d(); -l(); -var vs = "prisma+postgres", - ln = `${vs}:`; -function cn(e) { - return e?.toString().startsWith(`${ln}//`) ?? !1; -} -function Ti(e) { - if (!cn(e)) return !1; - let { host: t } = new URL(e); - return ( - t.includes("localhost") || t.includes("127.0.0.1") || t.includes("[::1]") - ); -} -var tr = {}; -pt(tr, { - error: () => ip, - info: () => np, - log: () => rp, - query: () => op, - should: () => Cs, - tags: () => er, - warn: () => vi, -}); -c(); -u(); -p(); -m(); -d(); -l(); -var er = { - error: ft("prisma:error"), - warn: ss("prisma:warn"), - info: ls("prisma:info"), - query: as("prisma:query"), - }, - Cs = { warn: () => !g.env.PRISMA_DISABLE_WARNINGS }; -function rp(...e) { - console.log(...e); -} -function vi(e, ...t) { - Cs.warn() && console.warn(`${er.warn} ${e}`, ...t); -} -function np(e, ...t) { - console.info(`${er.info} ${e}`, ...t); -} -function ip(e, ...t) { - console.error(`${er.error} ${e}`, ...t); -} -function op(e, ...t) { - console.log(`${er.query} ${e}`, ...t); -} -c(); -u(); -p(); -m(); -d(); -l(); -function Me(e, t) { - throw new Error(t); -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -function Ai({ onlyFirst: e = !1 } = {}) { - let r = [ - "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))", - "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))", - ].join("|"); - return new RegExp(r, e ? void 0 : "g"); -} -var sp = Ai(); -function ht(e) { - if (typeof e != "string") - throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``); - return e.replace(sp, ""); -} -c(); -u(); -p(); -m(); -d(); -l(); -function Ri(e, t) { - return Object.prototype.hasOwnProperty.call(e, t); -} -c(); -u(); -p(); -m(); -d(); -l(); -function pn(e, t) { - let r = {}; - for (let n of Object.keys(e)) r[n] = t(e[n], n); - return r; -} -c(); -u(); -p(); -m(); -d(); -l(); -function Ci(e, t) { - if (e.length === 0) return; - let r = e[0]; - for (let n = 1; n < e.length; n++) t(r, e[n]) < 0 && (r = e[n]); - return r; -} -c(); -u(); -p(); -m(); -d(); -l(); -function D(e, t) { - Object.defineProperty(e, "name", { value: t, configurable: !0 }); -} -c(); -u(); -p(); -m(); -d(); -l(); -var Is = new Set(), - rr = (e, t, ...r) => { - Is.has(e) || (Is.add(e), vi(t, ...r)); - }; -var F = class e extends Error { - clientVersion; - errorCode; - retryable; - constructor(t, r, n) { - (super(t), - (this.name = "PrismaClientInitializationError"), - (this.clientVersion = r), - (this.errorCode = n), - Error.captureStackTrace(e)); - } - get [Symbol.toStringTag]() { - return "PrismaClientInitializationError"; - } -}; -D(F, "PrismaClientInitializationError"); -c(); -u(); -p(); -m(); -d(); -l(); -var X = class extends Error { - code; - meta; - clientVersion; - batchRequestIdx; - constructor(t, { code: r, clientVersion: n, meta: i, batchRequestIdx: o }) { - (super(t), - (this.name = "PrismaClientKnownRequestError"), - (this.code = r), - (this.clientVersion = n), - (this.meta = i), - Object.defineProperty(this, "batchRequestIdx", { - value: o, - enumerable: !1, - writable: !0, - })); - } - get [Symbol.toStringTag]() { - return "PrismaClientKnownRequestError"; - } -}; -D(X, "PrismaClientKnownRequestError"); -c(); -u(); -p(); -m(); -d(); -l(); -var ae = class extends Error { - clientVersion; - constructor(t, r) { - (super(t), - (this.name = "PrismaClientRustPanicError"), - (this.clientVersion = r)); - } - get [Symbol.toStringTag]() { - return "PrismaClientRustPanicError"; - } -}; -D(ae, "PrismaClientRustPanicError"); -c(); -u(); -p(); -m(); -d(); -l(); -var ne = class extends Error { - clientVersion; - batchRequestIdx; - constructor(t, { clientVersion: r, batchRequestIdx: n }) { - (super(t), - (this.name = "PrismaClientUnknownRequestError"), - (this.clientVersion = r), - Object.defineProperty(this, "batchRequestIdx", { - value: n, - writable: !0, - enumerable: !1, - })); - } - get [Symbol.toStringTag]() { - return "PrismaClientUnknownRequestError"; - } -}; -D(ne, "PrismaClientUnknownRequestError"); -c(); -u(); -p(); -m(); -d(); -l(); -var ie = class extends Error { - name = "PrismaClientValidationError"; - clientVersion; - constructor(t, { clientVersion: r }) { - (super(t), (this.clientVersion = r)); - } - get [Symbol.toStringTag]() { - return "PrismaClientValidationError"; - } -}; -D(ie, "PrismaClientValidationError"); -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -var Ce = class { - _map = new Map(); - get(t) { - return this._map.get(t)?.value; - } - set(t, r) { - this._map.set(t, { value: r }); - } - getOrCreate(t, r) { - let n = this._map.get(t); - if (n) return n.value; - let i = r(); - return (this.set(t, i), i); - } -}; -c(); -u(); -p(); -m(); -d(); -l(); -function qe(e) { - return e.substring(0, 1).toLowerCase() + e.substring(1); -} -c(); -u(); -p(); -m(); -d(); -l(); -function Os(e, t) { - let r = {}; - for (let n of e) { - let i = n[t]; - r[i] = n; - } - return r; -} -c(); -u(); -p(); -m(); -d(); -l(); -function nr(e) { - let t; - return { - get() { - return (t || (t = { value: e() }), t.value); - }, - }; -} -c(); -u(); -p(); -m(); -d(); -l(); -function Ds(e) { - return { models: Si(e.models), enums: Si(e.enums), types: Si(e.types) }; -} -function Si(e) { - let t = {}; - for (let { name: r, ...n } of e) t[r] = n; - return t; -} -c(); -u(); -p(); -m(); -d(); -l(); -function wt(e) { - return ( - e instanceof Date || Object.prototype.toString.call(e) === "[object Date]" - ); -} -function mn(e) { - return e.toString() !== "Invalid Date"; -} -c(); -u(); -p(); -m(); -d(); -l(); -l(); -function bt(e) { - return v.isDecimal(e) - ? !0 - : e !== null && - typeof e == "object" && - typeof e.s == "number" && - typeof e.e == "number" && - typeof e.toFixed == "function" && - Array.isArray(e.d); -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -var or = {}; -pt(or, { ModelAction: () => ir, datamodelEnumToSchemaEnum: () => ap }); -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -function ap(e) { - return { name: e.name, values: e.values.map((t) => t.name) }; -} -c(); -u(); -p(); -m(); -d(); -l(); -var ir = ((B) => ( - (B.findUnique = "findUnique"), - (B.findUniqueOrThrow = "findUniqueOrThrow"), - (B.findFirst = "findFirst"), - (B.findFirstOrThrow = "findFirstOrThrow"), - (B.findMany = "findMany"), - (B.create = "create"), - (B.createMany = "createMany"), - (B.createManyAndReturn = "createManyAndReturn"), - (B.update = "update"), - (B.updateMany = "updateMany"), - (B.updateManyAndReturn = "updateManyAndReturn"), - (B.upsert = "upsert"), - (B.delete = "delete"), - (B.deleteMany = "deleteMany"), - (B.groupBy = "groupBy"), - (B.count = "count"), - (B.aggregate = "aggregate"), - (B.findRaw = "findRaw"), - (B.aggregateRaw = "aggregateRaw"), - B -))(ir || {}); -var lp = $e(Rs()); -var cp = { - red: ft, - gray: cs, - dim: en, - bold: Xr, - underline: tn, - highlightSource: (e) => e.highlight(), - }, - up = { - red: (e) => e, - gray: (e) => e, - dim: (e) => e, - bold: (e) => e, - underline: (e) => e, - highlightSource: (e) => e, - }; -function pp({ message: e, originalMethod: t, isPanic: r, callArguments: n }) { - return { - functionName: `prisma.${t}()`, - message: e, - isPanic: r ?? !1, - callArguments: n, - }; -} -function mp( - { - functionName: e, - location: t, - message: r, - isPanic: n, - contextLines: i, - callArguments: o, - }, - s, -) { - let a = [""], - f = t ? " in" : ":"; - if ( - (n - ? (a.push( - s.red( - `Oops, an unknown error occurred! This is ${s.bold("on us")}, you did nothing wrong.`, - ), - ), - a.push( - s.red(`It occurred in the ${s.bold(`\`${e}\``)} invocation${f}`), - )) - : a.push(s.red(`Invalid ${s.bold(`\`${e}\``)} invocation${f}`)), - t && a.push(s.underline(dp(t))), - i) - ) { - a.push(""); - let w = [i.toString()]; - (o && (w.push(o), w.push(s.dim(")"))), a.push(w.join("")), o && a.push("")); - } else (a.push(""), o && a.push(o), a.push("")); - return ( - a.push(r), - a.join(` -`) - ); -} -function dp(e) { - let t = [e.fileName]; - return ( - e.lineNumber && t.push(String(e.lineNumber)), - e.columnNumber && t.push(String(e.columnNumber)), - t.join(":") - ); -} -function dn(e) { - let t = e.showColors ? cp : up, - r; - return ( - typeof $getTemplateParameters < "u" - ? (r = $getTemplateParameters(e, t)) - : (r = pp(e)), - mp(r, t) - ); -} -c(); -u(); -p(); -m(); -d(); -l(); -var qs = $e(Ii()); -c(); -u(); -p(); -m(); -d(); -l(); -function Ls(e, t, r) { - let n = Us(e), - i = fp(n), - o = yp(i); - o ? fn(o, t, r) : t.addErrorMessage(() => "Unknown error"); -} -function Us(e) { - return e.errors.flatMap((t) => (t.kind === "Union" ? Us(t) : [t])); -} -function fp(e) { - let t = new Map(), - r = []; - for (let n of e) { - if (n.kind !== "InvalidArgumentType") { - r.push(n); - continue; - } - let i = `${n.selectionPath.join(".")}:${n.argumentPath.join(".")}`, - o = t.get(i); - o - ? t.set(i, { - ...n, - argument: { - ...n.argument, - typeNames: gp(o.argument.typeNames, n.argument.typeNames), - }, - }) - : t.set(i, n); - } - return (r.push(...t.values()), r); -} -function gp(e, t) { - return [...new Set(e.concat(t))]; -} -function yp(e) { - return Ci(e, (t, r) => { - let n = Ms(t), - i = Ms(r); - return n !== i ? n - i : Ns(t) - Ns(r); - }); -} -function Ms(e) { - let t = 0; - return ( - Array.isArray(e.selectionPath) && (t += e.selectionPath.length), - Array.isArray(e.argumentPath) && (t += e.argumentPath.length), - t - ); -} -function Ns(e) { - switch (e.kind) { - case "InvalidArgumentValue": - case "ValueTooLarge": - return 20; - case "InvalidArgumentType": - return 10; - case "RequiredArgumentMissing": - return -10; - default: - return 0; - } -} -c(); -u(); -p(); -m(); -d(); -l(); -var we = class { - constructor(t, r) { - this.name = t; - this.value = r; - } - isRequired = !1; - makeRequired() { - return ((this.isRequired = !0), this); - } - write(t) { - let { - colors: { green: r }, - } = t.context; - (t.addMarginSymbol(r(this.isRequired ? "+" : "?")), - t.write(r(this.name)), - this.isRequired || t.write(r("?")), - t.write(r(": ")), - typeof this.value == "string" - ? t.write(r(this.value)) - : t.write(this.value)); - } -}; -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -$s(); -c(); -u(); -p(); -m(); -d(); -l(); -var Et = class { - constructor(t = 0, r) { - this.context = r; - this.currentIndent = t; - } - lines = []; - currentLine = ""; - currentIndent = 0; - marginSymbol; - afterNextNewLineCallback; - write(t) { - return ( - typeof t == "string" ? (this.currentLine += t) : t.write(this), - this - ); - } - writeJoined(t, r, n = (i, o) => o.write(i)) { - let i = r.length - 1; - for (let o = 0; o < r.length; o++) - (n(r[o], this), o !== i && this.write(t)); - return this; - } - writeLine(t) { - return this.write(t).newLine(); - } - newLine() { - (this.lines.push(this.indentedCurrentLine()), - (this.currentLine = ""), - (this.marginSymbol = void 0)); - let t = this.afterNextNewLineCallback; - return ((this.afterNextNewLineCallback = void 0), t?.(), this); - } - withIndent(t) { - return (this.indent(), t(this), this.unindent(), this); - } - afterNextNewline(t) { - return ((this.afterNextNewLineCallback = t), this); - } - indent() { - return (this.currentIndent++, this); - } - unindent() { - return (this.currentIndent > 0 && this.currentIndent--, this); - } - addMarginSymbol(t) { - return ((this.marginSymbol = t), this); - } - toString() { - return this.lines.concat(this.indentedCurrentLine()).join(` -`); - } - getCurrentLineLength() { - return this.currentLine.length; - } - indentedCurrentLine() { - let t = this.currentLine.padStart( - this.currentLine.length + 2 * this.currentIndent, - ); - return this.marginSymbol ? this.marginSymbol + t.slice(1) : t; - } -}; -Fs(); -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -var gn = class { - constructor(t) { - this.value = t; - } - write(t) { - t.write(this.value); - } - markAsError() { - this.value.markAsError(); - } -}; -c(); -u(); -p(); -m(); -d(); -l(); -var yn = (e) => e, - hn = { bold: yn, red: yn, green: yn, dim: yn, enabled: !1 }, - Vs = { bold: Xr, red: ft, green: os, dim: en, enabled: !0 }, - xt = { - write(e) { - e.writeLine(","); - }, - }; -c(); -u(); -p(); -m(); -d(); -l(); -var Se = class { - constructor(t) { - this.contents = t; - } - isUnderlined = !1; - color = (t) => t; - underline() { - return ((this.isUnderlined = !0), this); - } - setColor(t) { - return ((this.color = t), this); - } - write(t) { - let r = t.getCurrentLineLength(); - (t.write(this.color(this.contents)), - this.isUnderlined && - t.afterNextNewline(() => { - t.write(" ".repeat(r)).writeLine( - this.color("~".repeat(this.contents.length)), - ); - })); - } -}; -c(); -u(); -p(); -m(); -d(); -l(); -var Be = class { - hasError = !1; - markAsError() { - return ((this.hasError = !0), this); - } -}; -var Pt = class extends Be { - items = []; - addItem(t) { - return (this.items.push(new gn(t)), this); - } - getField(t) { - return this.items[t]; - } - getPrintWidth() { - return this.items.length === 0 - ? 2 - : Math.max(...this.items.map((r) => r.value.getPrintWidth())) + 2; - } - write(t) { - if (this.items.length === 0) { - this.writeEmpty(t); - return; - } - this.writeWithItems(t); - } - writeEmpty(t) { - let r = new Se("[]"); - (this.hasError && r.setColor(t.context.colors.red).underline(), t.write(r)); - } - writeWithItems(t) { - let { colors: r } = t.context; - (t - .writeLine("[") - .withIndent(() => t.writeJoined(xt, this.items).newLine()) - .write("]"), - this.hasError && - t.afterNextNewline(() => { - t.writeLine(r.red("~".repeat(this.getPrintWidth()))); - })); - } - asObject() {} -}; -var Tt = class e extends Be { - fields = {}; - suggestions = []; - addField(t) { - this.fields[t.name] = t; - } - addSuggestion(t) { - this.suggestions.push(t); - } - getField(t) { - return this.fields[t]; - } - getDeepField(t) { - let [r, ...n] = t, - i = this.getField(r); - if (!i) return; - let o = i; - for (let s of n) { - let a; - if ( - (o.value instanceof e - ? (a = o.value.getField(s)) - : o.value instanceof Pt && (a = o.value.getField(Number(s))), - !a) - ) - return; - o = a; - } - return o; - } - getDeepFieldValue(t) { - return t.length === 0 ? this : this.getDeepField(t)?.value; - } - hasField(t) { - return !!this.getField(t); - } - removeAllFields() { - this.fields = {}; - } - removeField(t) { - delete this.fields[t]; - } - getFields() { - return this.fields; - } - isEmpty() { - return Object.keys(this.fields).length === 0; - } - getFieldValue(t) { - return this.getField(t)?.value; - } - getDeepSubSelectionValue(t) { - let r = this; - for (let n of t) { - if (!(r instanceof e)) return; - let i = r.getSubSelectionValue(n); - if (!i) return; - r = i; - } - return r; - } - getDeepSelectionParent(t) { - let r = this.getSelectionParent(); - if (!r) return; - let n = r; - for (let i of t) { - let o = n.value.getFieldValue(i); - if (!o || !(o instanceof e)) return; - let s = o.getSelectionParent(); - if (!s) return; - n = s; - } - return n; - } - getSelectionParent() { - let t = this.getField("select")?.value.asObject(); - if (t) return { kind: "select", value: t }; - let r = this.getField("include")?.value.asObject(); - if (r) return { kind: "include", value: r }; - } - getSubSelectionValue(t) { - return this.getSelectionParent()?.value.fields[t].value; - } - getPrintWidth() { - let t = Object.values(this.fields); - return t.length == 0 ? 2 : Math.max(...t.map((n) => n.getPrintWidth())) + 2; - } - write(t) { - let r = Object.values(this.fields); - if (r.length === 0 && this.suggestions.length === 0) { - this.writeEmpty(t); - return; - } - this.writeWithContents(t, r); - } - asObject() { - return this; - } - writeEmpty(t) { - let r = new Se("{}"); - (this.hasError && r.setColor(t.context.colors.red).underline(), t.write(r)); - } - writeWithContents(t, r) { - (t.writeLine("{").withIndent(() => { - t.writeJoined(xt, [...r, ...this.suggestions]).newLine(); - }), - t.write("}"), - this.hasError && - t.afterNextNewline(() => { - t.writeLine(t.context.colors.red("~".repeat(this.getPrintWidth()))); - })); - } -}; -c(); -u(); -p(); -m(); -d(); -l(); -var re = class extends Be { - constructor(r) { - super(); - this.text = r; - } - getPrintWidth() { - return this.text.length; - } - write(r) { - let n = new Se(this.text); - (this.hasError && n.underline().setColor(r.context.colors.red), r.write(n)); - } - asObject() {} -}; -c(); -u(); -p(); -m(); -d(); -l(); -var sr = class { - fields = []; - addField(t, r) { - return ( - this.fields.push({ - write(n) { - let { green: i, dim: o } = n.context.colors; - n.write(i(o(`${t}: ${r}`))).addMarginSymbol(i(o("+"))); - }, - }), - this - ); - } - write(t) { - let { - colors: { green: r }, - } = t.context; - t.writeLine(r("{")) - .withIndent(() => { - t.writeJoined(xt, this.fields).newLine(); - }) - .write(r("}")) - .addMarginSymbol(r("+")); - } -}; -function fn(e, t, r) { - switch (e.kind) { - case "MutuallyExclusiveFields": - hp(e, t); - break; - case "IncludeOnScalar": - wp(e, t); - break; - case "EmptySelection": - bp(e, t, r); - break; - case "UnknownSelectionField": - Tp(e, t); - break; - case "InvalidSelectionValue": - vp(e, t); - break; - case "UnknownArgument": - Ap(e, t); - break; - case "UnknownInputField": - Rp(e, t); - break; - case "RequiredArgumentMissing": - Cp(e, t); - break; - case "InvalidArgumentType": - Sp(e, t); - break; - case "InvalidArgumentValue": - Ip(e, t); - break; - case "ValueTooLarge": - kp(e, t); - break; - case "SomeFieldsMissing": - Op(e, t); - break; - case "TooManyFieldsGiven": - Dp(e, t); - break; - case "Union": - Ls(e, t, r); - break; - default: - throw new Error("not implemented: " + e.kind); - } -} -function hp(e, t) { - let r = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - (r && - (r.getField(e.firstField)?.markAsError(), - r.getField(e.secondField)?.markAsError()), - t.addErrorMessage( - (n) => - `Please ${n.bold("either")} use ${n.green(`\`${e.firstField}\``)} or ${n.green(`\`${e.secondField}\``)}, but ${n.red("not both")} at the same time.`, - )); -} -function wp(e, t) { - let [r, n] = vt(e.selectionPath), - i = e.outputType, - o = t.arguments.getDeepSelectionParent(r)?.value; - if (o && (o.getField(n)?.markAsError(), i)) - for (let s of i.fields) - s.isRelation && o.addSuggestion(new we(s.name, "true")); - t.addErrorMessage((s) => { - let a = `Invalid scalar field ${s.red(`\`${n}\``)} for ${s.bold("include")} statement`; - return ( - i ? (a += ` on model ${s.bold(i.name)}. ${ar(s)}`) : (a += "."), - (a += ` -Note that ${s.bold("include")} statements only accept relation fields.`), - a - ); - }); -} -function bp(e, t, r) { - let n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - if (n) { - let i = n.getField("omit")?.value.asObject(); - if (i) { - Ep(e, t, i); - return; - } - if (n.hasField("select")) { - xp(e, t); - return; - } - } - if (r?.[qe(e.outputType.name)]) { - Pp(e, t); - return; - } - t.addErrorMessage( - () => `Unknown field at "${e.selectionPath.join(".")} selection"`, - ); -} -function Ep(e, t, r) { - r.removeAllFields(); - for (let n of e.outputType.fields) r.addSuggestion(new we(n.name, "false")); - t.addErrorMessage( - (n) => - `The ${n.red("omit")} statement includes every field of the model ${n.bold(e.outputType.name)}. At least one field must be included in the result`, - ); -} -function xp(e, t) { - let r = e.outputType, - n = t.arguments.getDeepSelectionParent(e.selectionPath)?.value, - i = n?.isEmpty() ?? !1; - (n && (n.removeAllFields(), Qs(n, r)), - t.addErrorMessage((o) => - i - ? `The ${o.red("`select`")} statement for type ${o.bold(r.name)} must not be empty. ${ar(o)}` - : `The ${o.red("`select`")} statement for type ${o.bold(r.name)} needs ${o.bold("at least one truthy value")}.`, - )); -} -function Pp(e, t) { - let r = new sr(); - for (let i of e.outputType.fields) - i.isRelation || r.addField(i.name, "false"); - let n = new we("omit", r).makeRequired(); - if (e.selectionPath.length === 0) t.arguments.addSuggestion(n); - else { - let [i, o] = vt(e.selectionPath), - a = t.arguments.getDeepSelectionParent(i)?.value.asObject()?.getField(o); - if (a) { - let f = a?.value.asObject() ?? new Tt(); - (f.addSuggestion(n), (a.value = f)); - } - } - t.addErrorMessage( - (i) => - `The global ${i.red("omit")} configuration excludes every field of the model ${i.bold(e.outputType.name)}. At least one field must be included in the result`, - ); -} -function Tp(e, t) { - let r = Hs(e.selectionPath, t); - if (r.parentKind !== "unknown") { - r.field.markAsError(); - let n = r.parent; - switch (r.parentKind) { - case "select": - Qs(n, e.outputType); - break; - case "include": - _p(n, e.outputType); - break; - case "omit": - Mp(n, e.outputType); - break; - } - } - t.addErrorMessage((n) => { - let i = [`Unknown field ${n.red(`\`${r.fieldName}\``)}`]; - return ( - r.parentKind !== "unknown" && - i.push(`for ${n.bold(r.parentKind)} statement`), - i.push(`on model ${n.bold(`\`${e.outputType.name}\``)}.`), - i.push(ar(n)), - i.join(" ") - ); - }); -} -function vp(e, t) { - let r = Hs(e.selectionPath, t); - (r.parentKind !== "unknown" && r.field.value.markAsError(), - t.addErrorMessage( - (n) => - `Invalid value for selection field \`${n.red(r.fieldName)}\`: ${e.underlyingError}`, - )); -} -function Ap(e, t) { - let r = e.argumentPath[0], - n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - (n && (n.getField(r)?.markAsError(), Np(n, e.arguments)), - t.addErrorMessage((i) => - Bs( - i, - r, - e.arguments.map((o) => o.name), - ), - )); -} -function Rp(e, t) { - let [r, n] = vt(e.argumentPath), - i = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - if (i) { - i.getDeepField(e.argumentPath)?.markAsError(); - let o = i.getDeepFieldValue(r)?.asObject(); - o && Gs(o, e.inputType); - } - t.addErrorMessage((o) => - Bs( - o, - n, - e.inputType.fields.map((s) => s.name), - ), - ); -} -function Bs(e, t, r) { - let n = [`Unknown argument \`${e.red(t)}\`.`], - i = Up(t, r); - return ( - i && n.push(`Did you mean \`${e.green(i)}\`?`), - r.length > 0 && n.push(ar(e)), - n.join(" ") - ); -} -function Cp(e, t) { - let r; - t.addErrorMessage((f) => - r?.value instanceof re && r.value.text === "null" - ? `Argument \`${f.green(o)}\` must not be ${f.red("null")}.` - : `Argument \`${f.green(o)}\` is missing.`, - ); - let n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - if (!n) return; - let [i, o] = vt(e.argumentPath), - s = new sr(), - a = n.getDeepFieldValue(i)?.asObject(); - if (a) { - if ( - ((r = a.getField(o)), - r && a.removeField(o), - e.inputTypes.length === 1 && e.inputTypes[0].kind === "object") - ) { - for (let f of e.inputTypes[0].fields) - s.addField(f.name, f.typeNames.join(" | ")); - a.addSuggestion(new we(o, s).makeRequired()); - } else { - let f = e.inputTypes.map(js).join(" | "); - a.addSuggestion(new we(o, f).makeRequired()); - } - if (e.dependentArgumentPath) { - n.getDeepField(e.dependentArgumentPath)?.markAsError(); - let [, f] = vt(e.dependentArgumentPath); - t.addErrorMessage( - (w) => - `Argument \`${w.green(o)}\` is required because argument \`${w.green(f)}\` was provided.`, - ); - } - } -} -function js(e) { - return e.kind === "list" ? `${js(e.elementType)}[]` : e.name; -} -function Sp(e, t) { - let r = e.argument.name, - n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - (n && n.getDeepFieldValue(e.argumentPath)?.markAsError(), - t.addErrorMessage((i) => { - let o = wn( - "or", - e.argument.typeNames.map((s) => i.green(s)), - ); - return `Argument \`${i.bold(r)}\`: Invalid value provided. Expected ${o}, provided ${i.red(e.inferredType)}.`; - })); -} -function Ip(e, t) { - let r = e.argument.name, - n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - (n && n.getDeepFieldValue(e.argumentPath)?.markAsError(), - t.addErrorMessage((i) => { - let o = [`Invalid value for argument \`${i.bold(r)}\``]; - if ( - (e.underlyingError && o.push(`: ${e.underlyingError}`), - o.push("."), - e.argument.typeNames.length > 0) - ) { - let s = wn( - "or", - e.argument.typeNames.map((a) => i.green(a)), - ); - o.push(` Expected ${s}.`); - } - return o.join(""); - })); -} -function kp(e, t) { - let r = e.argument.name, - n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(), - i; - if (n) { - let s = n.getDeepField(e.argumentPath)?.value; - (s?.markAsError(), s instanceof re && (i = s.text)); - } - t.addErrorMessage((o) => { - let s = ["Unable to fit value"]; - return ( - i && s.push(o.red(i)), - s.push(`into a 64-bit signed integer for field \`${o.bold(r)}\``), - s.join(" ") - ); - }); -} -function Op(e, t) { - let r = e.argumentPath[e.argumentPath.length - 1], - n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(); - if (n) { - let i = n.getDeepFieldValue(e.argumentPath)?.asObject(); - i && Gs(i, e.inputType); - } - t.addErrorMessage((i) => { - let o = [ - `Argument \`${i.bold(r)}\` of type ${i.bold(e.inputType.name)} needs`, - ]; - return ( - e.constraints.minFieldCount === 1 - ? e.constraints.requiredFields - ? o.push( - `${i.green("at least one of")} ${wn( - "or", - e.constraints.requiredFields.map((s) => `\`${i.bold(s)}\``), - )} arguments.`, - ) - : o.push(`${i.green("at least one")} argument.`) - : o.push( - `${i.green(`at least ${e.constraints.minFieldCount}`)} arguments.`, - ), - o.push(ar(i)), - o.join(" ") - ); - }); -} -function Dp(e, t) { - let r = e.argumentPath[e.argumentPath.length - 1], - n = t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(), - i = []; - if (n) { - let o = n.getDeepFieldValue(e.argumentPath)?.asObject(); - o && (o.markAsError(), (i = Object.keys(o.getFields()))); - } - t.addErrorMessage((o) => { - let s = [ - `Argument \`${o.bold(r)}\` of type ${o.bold(e.inputType.name)} needs`, - ]; - return ( - e.constraints.minFieldCount === 1 && e.constraints.maxFieldCount == 1 - ? s.push(`${o.green("exactly one")} argument,`) - : e.constraints.maxFieldCount == 1 - ? s.push(`${o.green("at most one")} argument,`) - : s.push( - `${o.green(`at most ${e.constraints.maxFieldCount}`)} arguments,`, - ), - s.push( - `but you provided ${wn( - "and", - i.map((a) => o.red(a)), - )}. Please choose`, - ), - e.constraints.maxFieldCount === 1 - ? s.push("one.") - : s.push(`${e.constraints.maxFieldCount}.`), - s.join(" ") - ); - }); -} -function Qs(e, t) { - for (let r of t.fields) - e.hasField(r.name) || e.addSuggestion(new we(r.name, "true")); -} -function _p(e, t) { - for (let r of t.fields) - r.isRelation && - !e.hasField(r.name) && - e.addSuggestion(new we(r.name, "true")); -} -function Mp(e, t) { - for (let r of t.fields) - !e.hasField(r.name) && - !r.isRelation && - e.addSuggestion(new we(r.name, "true")); -} -function Np(e, t) { - for (let r of t) - e.hasField(r.name) || - e.addSuggestion(new we(r.name, r.typeNames.join(" | "))); -} -function Hs(e, t) { - let [r, n] = vt(e), - i = t.arguments.getDeepSubSelectionValue(r)?.asObject(); - if (!i) return { parentKind: "unknown", fieldName: n }; - let o = i.getFieldValue("select")?.asObject(), - s = i.getFieldValue("include")?.asObject(), - a = i.getFieldValue("omit")?.asObject(), - f = o?.getField(n); - return o && f - ? { parentKind: "select", parent: o, field: f, fieldName: n } - : ((f = s?.getField(n)), - s && f - ? { parentKind: "include", field: f, parent: s, fieldName: n } - : ((f = a?.getField(n)), - a && f - ? { parentKind: "omit", field: f, parent: a, fieldName: n } - : { parentKind: "unknown", fieldName: n })); -} -function Gs(e, t) { - if (t.kind === "object") - for (let r of t.fields) - e.hasField(r.name) || - e.addSuggestion(new we(r.name, r.typeNames.join(" | "))); -} -function vt(e) { - let t = [...e], - r = t.pop(); - if (!r) throw new Error("unexpected empty path"); - return [t, r]; -} -function ar({ green: e, enabled: t }) { - return ( - "Available options are " + - (t ? `listed in ${e("green")}` : "marked with ?") + - "." - ); -} -function wn(e, t) { - if (t.length === 1) return t[0]; - let r = [...t], - n = r.pop(); - return `${r.join(", ")} ${e} ${n}`; -} -var Lp = 3; -function Up(e, t) { - let r = 1 / 0, - n; - for (let i of t) { - let o = (0, qs.default)(e, i); - o > Lp || (o < r && ((r = o), (n = i))); - } - return n; -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -var lr = class { - modelName; - name; - typeName; - isList; - isEnum; - constructor(t, r, n, i, o) { - ((this.modelName = t), - (this.name = r), - (this.typeName = n), - (this.isList = i), - (this.isEnum = o)); - } - _toGraphQLInputType() { - let t = this.isList ? "List" : "", - r = this.isEnum ? "Enum" : ""; - return `${t}${r}${this.typeName}FieldRefInput<${this.modelName}>`; - } -}; -function At(e) { - return e instanceof lr; -} -c(); -u(); -p(); -m(); -d(); -l(); -var bn = Symbol(), - Oi = new WeakMap(), - Ne = class { - constructor(t) { - t === bn - ? Oi.set(this, `Prisma.${this._getName()}`) - : Oi.set( - this, - `new Prisma.${this._getNamespace()}.${this._getName()}()`, - ); - } - _getName() { - return this.constructor.name; - } - toString() { - return Oi.get(this); - } - }, - cr = class extends Ne { - _getNamespace() { - return "NullTypes"; - } - }, - ur = class extends cr { - #t; - }; -Di(ur, "DbNull"); -var pr = class extends cr { - #t; -}; -Di(pr, "JsonNull"); -var mr = class extends cr { - #t; -}; -Di(mr, "AnyNull"); -var En = { - classes: { DbNull: ur, JsonNull: pr, AnyNull: mr }, - instances: { DbNull: new ur(bn), JsonNull: new pr(bn), AnyNull: new mr(bn) }, -}; -function Di(e, t) { - Object.defineProperty(e, "name", { value: t, configurable: !0 }); -} -c(); -u(); -p(); -m(); -d(); -l(); -var Js = ": ", - xn = class { - constructor(t, r) { - this.name = t; - this.value = r; - } - hasError = !1; - markAsError() { - this.hasError = !0; - } - getPrintWidth() { - return this.name.length + this.value.getPrintWidth() + Js.length; - } - write(t) { - let r = new Se(this.name); - (this.hasError && r.underline().setColor(t.context.colors.red), - t.write(r).write(Js).write(this.value)); - } - }; -var _i = class { - arguments; - errorMessages = []; - constructor(t) { - this.arguments = t; - } - write(t) { - t.write(this.arguments); - } - addErrorMessage(t) { - this.errorMessages.push(t); - } - renderAllMessages(t) { - return this.errorMessages.map((r) => r(t)).join(` -`); - } -}; -function Rt(e) { - return new _i(Ws(e)); -} -function Ws(e) { - let t = new Tt(); - for (let [r, n] of Object.entries(e)) { - let i = new xn(r, Ks(n)); - t.addField(i); - } - return t; -} -function Ks(e) { - if (typeof e == "string") return new re(JSON.stringify(e)); - if (typeof e == "number" || typeof e == "boolean") return new re(String(e)); - if (typeof e == "bigint") return new re(`${e}n`); - if (e === null) return new re("null"); - if (e === void 0) return new re("undefined"); - if (bt(e)) return new re(`new Prisma.Decimal("${e.toFixed()}")`); - if (e instanceof Uint8Array) - return y.isBuffer(e) - ? new re(`Buffer.alloc(${e.byteLength})`) - : new re(`new Uint8Array(${e.byteLength})`); - if (e instanceof Date) { - let t = mn(e) ? e.toISOString() : "Invalid Date"; - return new re(`new Date("${t}")`); - } - return e instanceof Ne - ? new re(`Prisma.${e._getName()}`) - : At(e) - ? new re(`prisma.${qe(e.modelName)}.$fields.${e.name}`) - : Array.isArray(e) - ? Fp(e) - : typeof e == "object" - ? Ws(e) - : new re(Object.prototype.toString.call(e)); -} -function Fp(e) { - let t = new Pt(); - for (let r of e) t.addItem(Ks(r)); - return t; -} -function Pn(e, t) { - let r = t === "pretty" ? Vs : hn, - n = e.renderAllMessages(r), - i = new Et(0, { colors: r }).write(e).toString(); - return { message: n, args: i }; -} -function Tn({ - args: e, - errors: t, - errorFormat: r, - callsite: n, - originalMethod: i, - clientVersion: o, - globalOmit: s, -}) { - let a = Rt(e); - for (let R of t) fn(R, a, s); - let { message: f, args: w } = Pn(a, r), - A = dn({ - message: f, - callsite: n, - originalMethod: i, - showColors: r === "pretty", - callArguments: w, - }); - throw new ie(A, { clientVersion: o }); -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -function Ie(e) { - return e.replace(/^./, (t) => t.toLowerCase()); -} -c(); -u(); -p(); -m(); -d(); -l(); -function Ys(e, t, r) { - let n = Ie(r); - return !t.result || !(t.result.$allModels || t.result[n]) - ? e - : $p({ - ...e, - ...zs(t.name, e, t.result.$allModels), - ...zs(t.name, e, t.result[n]), - }); -} -function $p(e) { - let t = new Ce(), - r = (n, i) => - t.getOrCreate(n, () => - i.has(n) - ? [n] - : (i.add(n), e[n] ? e[n].needs.flatMap((o) => r(o, i)) : [n]), - ); - return pn(e, (n) => ({ ...n, needs: r(n.name, new Set()) })); -} -function zs(e, t, r) { - return r - ? pn(r, ({ needs: n, compute: i }, o) => ({ - name: o, - needs: n ? Object.keys(n).filter((s) => n[s]) : [], - compute: Vp(t, o, i), - })) - : {}; -} -function Vp(e, t, r) { - let n = e?.[t]?.compute; - return n ? (i) => r({ ...i, [t]: n(i) }) : r; -} -function Zs(e, t) { - if (!t) return e; - let r = { ...e }; - for (let n of Object.values(t)) - if (e[n.name]) for (let i of n.needs) r[i] = !0; - return r; -} -function Xs(e, t) { - if (!t) return e; - let r = { ...e }; - for (let n of Object.values(t)) - if (!e[n.name]) for (let i of n.needs) delete r[i]; - return r; -} -var vn = class { - constructor(t, r) { - this.extension = t; - this.previous = r; - } - computedFieldsCache = new Ce(); - modelExtensionsCache = new Ce(); - queryCallbacksCache = new Ce(); - clientExtensions = nr(() => - this.extension.client - ? { - ...this.previous?.getAllClientExtensions(), - ...this.extension.client, - } - : this.previous?.getAllClientExtensions(), - ); - batchCallbacks = nr(() => { - let t = this.previous?.getAllBatchQueryCallbacks() ?? [], - r = this.extension.query?.$__internalBatch; - return r ? t.concat(r) : t; - }); - getAllComputedFields(t) { - return this.computedFieldsCache.getOrCreate(t, () => - Ys(this.previous?.getAllComputedFields(t), this.extension, t), - ); - } - getAllClientExtensions() { - return this.clientExtensions.get(); - } - getAllModelExtensions(t) { - return this.modelExtensionsCache.getOrCreate(t, () => { - let r = Ie(t); - return !this.extension.model || - !(this.extension.model[r] || this.extension.model.$allModels) - ? this.previous?.getAllModelExtensions(t) - : { - ...this.previous?.getAllModelExtensions(t), - ...this.extension.model.$allModels, - ...this.extension.model[r], - }; - }); - } - getAllQueryCallbacks(t, r) { - return this.queryCallbacksCache.getOrCreate(`${t}:${r}`, () => { - let n = this.previous?.getAllQueryCallbacks(t, r) ?? [], - i = [], - o = this.extension.query; - return !o || !(o[t] || o.$allModels || o[r] || o.$allOperations) - ? n - : (o[t] !== void 0 && - (o[t][r] !== void 0 && i.push(o[t][r]), - o[t].$allOperations !== void 0 && i.push(o[t].$allOperations)), - t !== "$none" && - o.$allModels !== void 0 && - (o.$allModels[r] !== void 0 && i.push(o.$allModels[r]), - o.$allModels.$allOperations !== void 0 && - i.push(o.$allModels.$allOperations)), - o[r] !== void 0 && i.push(o[r]), - o.$allOperations !== void 0 && i.push(o.$allOperations), - n.concat(i)); - }); - } - getAllBatchQueryCallbacks() { - return this.batchCallbacks.get(); - } - }, - Ct = class e { - constructor(t) { - this.head = t; - } - static empty() { - return new e(); - } - static single(t) { - return new e(new vn(t)); - } - isEmpty() { - return this.head === void 0; - } - append(t) { - return new e(new vn(t, this.head)); - } - getAllComputedFields(t) { - return this.head?.getAllComputedFields(t); - } - getAllClientExtensions() { - return this.head?.getAllClientExtensions(); - } - getAllModelExtensions(t) { - return this.head?.getAllModelExtensions(t); - } - getAllQueryCallbacks(t, r) { - return this.head?.getAllQueryCallbacks(t, r) ?? []; - } - getAllBatchQueryCallbacks() { - return this.head?.getAllBatchQueryCallbacks() ?? []; - } - }; -c(); -u(); -p(); -m(); -d(); -l(); -var An = class { - constructor(t) { - this.name = t; - } -}; -function ea(e) { - return e instanceof An; -} -function ta(e) { - return new An(e); -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -var ra = Symbol(), - dr = class { - constructor(t) { - if (t !== ra) - throw new Error("Skip instance can not be constructed directly"); - } - ifUndefined(t) { - return t === void 0 ? Rn : t; - } - }, - Rn = new dr(ra); -function ke(e) { - return e instanceof dr; -} -var qp = { - findUnique: "findUnique", - findUniqueOrThrow: "findUniqueOrThrow", - findFirst: "findFirst", - findFirstOrThrow: "findFirstOrThrow", - findMany: "findMany", - count: "aggregate", - create: "createOne", - createMany: "createMany", - createManyAndReturn: "createManyAndReturn", - update: "updateOne", - updateMany: "updateMany", - updateManyAndReturn: "updateManyAndReturn", - upsert: "upsertOne", - delete: "deleteOne", - deleteMany: "deleteMany", - executeRaw: "executeRaw", - queryRaw: "queryRaw", - aggregate: "aggregate", - groupBy: "groupBy", - runCommandRaw: "runCommandRaw", - findRaw: "findRaw", - aggregateRaw: "aggregateRaw", - }, - na = "explicitly `undefined` values are not allowed"; -function Cn({ - modelName: e, - action: t, - args: r, - runtimeDataModel: n, - extensions: i = Ct.empty(), - callsite: o, - clientMethod: s, - errorFormat: a, - clientVersion: f, - previewFeatures: w, - globalOmit: A, -}) { - let R = new Mi({ - runtimeDataModel: n, - modelName: e, - action: t, - rootArgs: r, - callsite: o, - extensions: i, - selectionPath: [], - argumentPath: [], - originalMethod: s, - errorFormat: a, - clientVersion: f, - previewFeatures: w, - globalOmit: A, - }); - return { modelName: e, action: qp[t], query: fr(r, R) }; -} -function fr({ select: e, include: t, ...r } = {}, n) { - let i = r.omit; - return (delete r.omit, { arguments: oa(r, n), selection: Bp(e, t, i, n) }); -} -function Bp(e, t, r, n) { - return e - ? (t - ? n.throwValidationError({ - kind: "MutuallyExclusiveFields", - firstField: "include", - secondField: "select", - selectionPath: n.getSelectionPath(), - }) - : r && - n.throwValidationError({ - kind: "MutuallyExclusiveFields", - firstField: "omit", - secondField: "select", - selectionPath: n.getSelectionPath(), - }), - Gp(e, n)) - : jp(n, t, r); -} -function jp(e, t, r) { - let n = {}; - return ( - e.modelOrType && - !e.isRawAction() && - ((n.$composites = !0), (n.$scalars = !0)), - t && Qp(n, t, e), - Hp(n, r, e), - n - ); -} -function Qp(e, t, r) { - for (let [n, i] of Object.entries(t)) { - if (ke(i)) continue; - let o = r.nestSelection(n); - if ((Ni(i, o), i === !1 || i === void 0)) { - e[n] = !1; - continue; - } - let s = r.findField(n); - if ( - (s && - s.kind !== "object" && - r.throwValidationError({ - kind: "IncludeOnScalar", - selectionPath: r.getSelectionPath().concat(n), - outputType: r.getOutputTypeDescription(), - }), - s) - ) { - e[n] = fr(i === !0 ? {} : i, o); - continue; - } - if (i === !0) { - e[n] = !0; - continue; - } - e[n] = fr(i, o); - } -} -function Hp(e, t, r) { - let n = r.getComputedFields(), - i = { ...r.getGlobalOmit(), ...t }, - o = Xs(i, n); - for (let [s, a] of Object.entries(o)) { - if (ke(a)) continue; - Ni(a, r.nestSelection(s)); - let f = r.findField(s); - (n?.[s] && !f) || (e[s] = !a); - } -} -function Gp(e, t) { - let r = {}, - n = t.getComputedFields(), - i = Zs(e, n); - for (let [o, s] of Object.entries(i)) { - if (ke(s)) continue; - let a = t.nestSelection(o); - Ni(s, a); - let f = t.findField(o); - if (!(n?.[o] && !f)) { - if (s === !1 || s === void 0 || ke(s)) { - r[o] = !1; - continue; - } - if (s === !0) { - f?.kind === "object" ? (r[o] = fr({}, a)) : (r[o] = !0); - continue; - } - r[o] = fr(s, a); - } - } - return r; -} -function ia(e, t) { - if (e === null) return null; - if (typeof e == "string" || typeof e == "number" || typeof e == "boolean") - return e; - if (typeof e == "bigint") return { $type: "BigInt", value: String(e) }; - if (wt(e)) { - if (mn(e)) return { $type: "DateTime", value: e.toISOString() }; - t.throwValidationError({ - kind: "InvalidArgumentValue", - selectionPath: t.getSelectionPath(), - argumentPath: t.getArgumentPath(), - argument: { name: t.getArgumentName(), typeNames: ["Date"] }, - underlyingError: "Provided Date object is invalid", - }); - } - if (ea(e)) return { $type: "Param", value: e.name }; - if (At(e)) - return { - $type: "FieldRef", - value: { _ref: e.name, _container: e.modelName }, - }; - if (Array.isArray(e)) return Jp(e, t); - if (ArrayBuffer.isView(e)) { - let { buffer: r, byteOffset: n, byteLength: i } = e; - return { $type: "Bytes", value: y.from(r, n, i).toString("base64") }; - } - if (Wp(e)) return e.values; - if (bt(e)) return { $type: "Decimal", value: e.toFixed() }; - if (e instanceof Ne) { - if (e !== En.instances[e._getName()]) - throw new Error("Invalid ObjectEnumValue"); - return { $type: "Enum", value: e._getName() }; - } - if (Kp(e)) return e.toJSON(); - if (typeof e == "object") return oa(e, t); - t.throwValidationError({ - kind: "InvalidArgumentValue", - selectionPath: t.getSelectionPath(), - argumentPath: t.getArgumentPath(), - argument: { name: t.getArgumentName(), typeNames: [] }, - underlyingError: `We could not serialize ${Object.prototype.toString.call(e)} value. Serialize the object to JSON or implement a ".toJSON()" method on it`, - }); -} -function oa(e, t) { - if (e.$type) return { $type: "Raw", value: e }; - let r = {}; - for (let n in e) { - let i = e[n], - o = t.nestArgument(n); - ke(i) || - (i !== void 0 - ? (r[n] = ia(i, o)) - : t.isPreviewFeatureOn("strictUndefinedChecks") && - t.throwValidationError({ - kind: "InvalidArgumentValue", - argumentPath: o.getArgumentPath(), - selectionPath: t.getSelectionPath(), - argument: { name: t.getArgumentName(), typeNames: [] }, - underlyingError: na, - })); - } - return r; -} -function Jp(e, t) { - let r = []; - for (let n = 0; n < e.length; n++) { - let i = t.nestArgument(String(n)), - o = e[n]; - if (o === void 0 || ke(o)) { - let s = o === void 0 ? "undefined" : "Prisma.skip"; - t.throwValidationError({ - kind: "InvalidArgumentValue", - selectionPath: i.getSelectionPath(), - argumentPath: i.getArgumentPath(), - argument: { name: `${t.getArgumentName()}[${n}]`, typeNames: [] }, - underlyingError: `Can not use \`${s}\` value within array. Use \`null\` or filter out \`${s}\` values`, - }); - } - r.push(ia(o, i)); - } - return r; -} -function Wp(e) { - return typeof e == "object" && e !== null && e.__prismaRawParameters__ === !0; -} -function Kp(e) { - return typeof e == "object" && e !== null && typeof e.toJSON == "function"; -} -function Ni(e, t) { - e === void 0 && - t.isPreviewFeatureOn("strictUndefinedChecks") && - t.throwValidationError({ - kind: "InvalidSelectionValue", - selectionPath: t.getSelectionPath(), - underlyingError: na, - }); -} -var Mi = class e { - constructor(t) { - this.params = t; - this.params.modelName && - (this.modelOrType = - this.params.runtimeDataModel.models[this.params.modelName] ?? - this.params.runtimeDataModel.types[this.params.modelName]); - } - modelOrType; - throwValidationError(t) { - Tn({ - errors: [t], - originalMethod: this.params.originalMethod, - args: this.params.rootArgs ?? {}, - callsite: this.params.callsite, - errorFormat: this.params.errorFormat, - clientVersion: this.params.clientVersion, - globalOmit: this.params.globalOmit, - }); - } - getSelectionPath() { - return this.params.selectionPath; - } - getArgumentPath() { - return this.params.argumentPath; - } - getArgumentName() { - return this.params.argumentPath[this.params.argumentPath.length - 1]; - } - getOutputTypeDescription() { - if (!(!this.params.modelName || !this.modelOrType)) - return { - name: this.params.modelName, - fields: this.modelOrType.fields.map((t) => ({ - name: t.name, - typeName: "boolean", - isRelation: t.kind === "object", - })), - }; - } - isRawAction() { - return [ - "executeRaw", - "queryRaw", - "runCommandRaw", - "findRaw", - "aggregateRaw", - ].includes(this.params.action); - } - isPreviewFeatureOn(t) { - return this.params.previewFeatures.includes(t); - } - getComputedFields() { - if (this.params.modelName) - return this.params.extensions.getAllComputedFields(this.params.modelName); - } - findField(t) { - return this.modelOrType?.fields.find((r) => r.name === t); - } - nestSelection(t) { - let r = this.findField(t), - n = r?.kind === "object" ? r.type : void 0; - return new e({ - ...this.params, - modelName: n, - selectionPath: this.params.selectionPath.concat(t), - }); - } - getGlobalOmit() { - return this.params.modelName && this.shouldApplyGlobalOmit() - ? (this.params.globalOmit?.[qe(this.params.modelName)] ?? {}) - : {}; - } - shouldApplyGlobalOmit() { - switch (this.params.action) { - case "findFirst": - case "findFirstOrThrow": - case "findUniqueOrThrow": - case "findMany": - case "upsert": - case "findUnique": - case "createManyAndReturn": - case "create": - case "update": - case "updateManyAndReturn": - case "delete": - return !0; - case "executeRaw": - case "aggregateRaw": - case "runCommandRaw": - case "findRaw": - case "createMany": - case "deleteMany": - case "groupBy": - case "updateMany": - case "count": - case "aggregate": - case "queryRaw": - return !1; - default: - Me(this.params.action, "Unknown action"); - } - } - nestArgument(t) { - return new e({ - ...this.params, - argumentPath: this.params.argumentPath.concat(t), - }); - } -}; -c(); -u(); -p(); -m(); -d(); -l(); -function sa(e) { - if (!e._hasPreviewFlag("metrics")) - throw new ie( - "`metrics` preview feature must be enabled in order to access metrics API", - { clientVersion: e._clientVersion }, - ); -} -var St = class { - _client; - constructor(t) { - this._client = t; - } - prometheus(t) { - return ( - sa(this._client), - this._client._engine.metrics({ format: "prometheus", ...t }) - ); - } - json(t) { - return ( - sa(this._client), - this._client._engine.metrics({ format: "json", ...t }) - ); - } -}; -c(); -u(); -p(); -m(); -d(); -l(); -function aa(e, t) { - let r = nr(() => zp(t)); - Object.defineProperty(e, "dmmf", { get: () => r.get() }); -} -function zp(e) { - throw new Error( - "Prisma.dmmf is not available when running in edge runtimes.", - ); -} -function Li(e) { - return Object.entries(e).map(([t, r]) => ({ name: t, ...r })); -} -c(); -u(); -p(); -m(); -d(); -l(); -var Ui = new WeakMap(), - Sn = "$$PrismaTypedSql", - gr = class { - constructor(t, r) { - (Ui.set(this, { sql: t, values: r }), - Object.defineProperty(this, Sn, { value: Sn })); - } - get sql() { - return Ui.get(this).sql; - } - get values() { - return Ui.get(this).values; - } - }; -function la(e) { - return (...t) => new gr(e, t); -} -function In(e) { - return e != null && e[Sn] === Sn; -} -c(); -u(); -p(); -m(); -d(); -l(); -var eu = $e(Pi()); -c(); -u(); -p(); -m(); -d(); -l(); -ca(); -gs(); -xs(); -c(); -u(); -p(); -m(); -d(); -l(); -var fe = class e { - constructor(t, r) { - if (t.length - 1 !== r.length) - throw t.length === 0 - ? new TypeError("Expected at least 1 string") - : new TypeError( - `Expected ${t.length} strings to have ${t.length - 1} values`, - ); - let n = r.reduce((s, a) => s + (a instanceof e ? a.values.length : 1), 0); - ((this.values = new Array(n)), - (this.strings = new Array(n + 1)), - (this.strings[0] = t[0])); - let i = 0, - o = 0; - for (; i < r.length; ) { - let s = r[i++], - a = t[i]; - if (s instanceof e) { - this.strings[o] += s.strings[0]; - let f = 0; - for (; f < s.values.length; ) - ((this.values[o++] = s.values[f++]), - (this.strings[o] = s.strings[f])); - this.strings[o] += a; - } else ((this.values[o++] = s), (this.strings[o] = a)); - } - } - get sql() { - let t = this.strings.length, - r = 1, - n = this.strings[0]; - for (; r < t; ) n += `?${this.strings[r++]}`; - return n; - } - get statement() { - let t = this.strings.length, - r = 1, - n = this.strings[0]; - for (; r < t; ) n += `:${r}${this.strings[r++]}`; - return n; - } - get text() { - let t = this.strings.length, - r = 1, - n = this.strings[0]; - for (; r < t; ) n += `$${r}${this.strings[r++]}`; - return n; - } - inspect() { - return { - sql: this.sql, - statement: this.statement, - text: this.text, - values: this.values, - }; - } -}; -function ua(e, t = ",", r = "", n = "") { - if (e.length === 0) - throw new TypeError( - "Expected `join([])` to be called with an array of multiple elements, but got an empty array", - ); - return new fe([r, ...Array(e.length - 1).fill(t), n], e); -} -function Fi(e) { - return new fe([e], []); -} -var pa = Fi(""); -function $i(e, ...t) { - return new fe(e, t); -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -function yr(e) { - return { - getKeys() { - return Object.keys(e); - }, - getPropertyValue(t) { - return e[t]; - }, - }; -} -c(); -u(); -p(); -m(); -d(); -l(); -function le(e, t) { - return { - getKeys() { - return [e]; - }, - getPropertyValue() { - return t(); - }, - }; -} -c(); -u(); -p(); -m(); -d(); -l(); -function et(e) { - let t = new Ce(); - return { - getKeys() { - return e.getKeys(); - }, - getPropertyValue(r) { - return t.getOrCreate(r, () => e.getPropertyValue(r)); - }, - getPropertyDescriptor(r) { - return e.getPropertyDescriptor?.(r); - }, - }; -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -var On = { enumerable: !0, configurable: !0, writable: !0 }; -function Dn(e) { - let t = new Set(e); - return { - getPrototypeOf: () => Object.prototype, - getOwnPropertyDescriptor: () => On, - has: (r, n) => t.has(n), - set: (r, n, i) => t.add(n) && Reflect.set(r, n, i), - ownKeys: () => [...t], - }; -} -var ma = Symbol.for("nodejs.util.inspect.custom"); -function Pe(e, t) { - let r = Yp(t), - n = new Set(), - i = new Proxy(e, { - get(o, s) { - if (n.has(s)) return o[s]; - let a = r.get(s); - return a ? a.getPropertyValue(s) : o[s]; - }, - has(o, s) { - if (n.has(s)) return !0; - let a = r.get(s); - return a ? (a.has?.(s) ?? !0) : Reflect.has(o, s); - }, - ownKeys(o) { - let s = da(Reflect.ownKeys(o), r), - a = da(Array.from(r.keys()), r); - return [...new Set([...s, ...a, ...n])]; - }, - set(o, s, a) { - return r.get(s)?.getPropertyDescriptor?.(s)?.writable === !1 - ? !1 - : (n.add(s), Reflect.set(o, s, a)); - }, - getOwnPropertyDescriptor(o, s) { - let a = Reflect.getOwnPropertyDescriptor(o, s); - if (a && !a.configurable) return a; - let f = r.get(s); - return f - ? f.getPropertyDescriptor - ? { ...On, ...f?.getPropertyDescriptor(s) } - : On - : a; - }, - defineProperty(o, s, a) { - return (n.add(s), Reflect.defineProperty(o, s, a)); - }, - getPrototypeOf: () => Object.prototype, - }); - return ( - (i[ma] = function () { - let o = { ...this }; - return (delete o[ma], o); - }), - i - ); -} -function Yp(e) { - let t = new Map(); - for (let r of e) { - let n = r.getKeys(); - for (let i of n) t.set(i, r); - } - return t; -} -function da(e, t) { - return e.filter((r) => t.get(r)?.has?.(r) ?? !0); -} -c(); -u(); -p(); -m(); -d(); -l(); -function It(e) { - return { - getKeys() { - return e; - }, - has() { - return !1; - }, - getPropertyValue() {}, - }; -} -c(); -u(); -p(); -m(); -d(); -l(); -function kt(e, t) { - return { - batch: e, - transaction: - t?.kind === "batch" - ? { isolationLevel: t.options.isolationLevel } - : void 0, - }; -} -c(); -u(); -p(); -m(); -d(); -l(); -function fa(e) { - if (e === void 0) return ""; - let t = Rt(e); - return new Et(0, { colors: hn }).write(t).toString(); -} -c(); -u(); -p(); -m(); -d(); -l(); -var Zp = "P2037"; -function _n({ error: e, user_facing_error: t }, r, n) { - return t.error_code - ? new X(Xp(t, n), { - code: t.error_code, - clientVersion: r, - meta: t.meta, - batchRequestIdx: t.batch_request_idx, - }) - : new ne(e, { clientVersion: r, batchRequestIdx: t.batch_request_idx }); -} -function Xp(e, t) { - let r = e.message; - return ( - (t === "postgresql" || t === "postgres" || t === "mysql") && - e.error_code === Zp && - (r += ` -Prisma Accelerate has built-in connection pooling to prevent such errors: https://pris.ly/client/error-accelerate`), - r - ); -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -var Vi = class { - getLocation() { - return null; - } -}; -function je(e) { - return typeof $EnabledCallSite == "function" && e !== "minimal" - ? new $EnabledCallSite() - : new Vi(); -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -var ga = { _avg: !0, _count: !0, _sum: !0, _min: !0, _max: !0 }; -function Ot(e = {}) { - let t = tm(e); - return Object.entries(t).reduce( - (n, [i, o]) => ( - ga[i] !== void 0 ? (n.select[i] = { select: o }) : (n[i] = o), - n - ), - { select: {} }, - ); -} -function tm(e = {}) { - return typeof e._count == "boolean" - ? { ...e, _count: { _all: e._count } } - : e; -} -function Mn(e = {}) { - return (t) => (typeof e._count == "boolean" && (t._count = t._count._all), t); -} -function ya(e, t) { - let r = Mn(e); - return t({ action: "aggregate", unpacker: r, argsMapper: Ot })(e); -} -c(); -u(); -p(); -m(); -d(); -l(); -function rm(e = {}) { - let { select: t, ...r } = e; - return typeof t == "object" - ? Ot({ ...r, _count: t }) - : Ot({ ...r, _count: { _all: !0 } }); -} -function nm(e = {}) { - return typeof e.select == "object" - ? (t) => Mn(e)(t)._count - : (t) => Mn(e)(t)._count._all; -} -function ha(e, t) { - return t({ action: "count", unpacker: nm(e), argsMapper: rm })(e); -} -c(); -u(); -p(); -m(); -d(); -l(); -function im(e = {}) { - let t = Ot(e); - if (Array.isArray(t.by)) - for (let r of t.by) typeof r == "string" && (t.select[r] = !0); - else typeof t.by == "string" && (t.select[t.by] = !0); - return t; -} -function om(e = {}) { - return (t) => ( - typeof e?._count == "boolean" && - t.forEach((r) => { - r._count = r._count._all; - }), - t - ); -} -function wa(e, t) { - return t({ action: "groupBy", unpacker: om(e), argsMapper: im })(e); -} -function ba(e, t, r) { - if (t === "aggregate") return (n) => ya(n, r); - if (t === "count") return (n) => ha(n, r); - if (t === "groupBy") return (n) => wa(n, r); -} -c(); -u(); -p(); -m(); -d(); -l(); -function Ea(e, t) { - let r = t.fields.filter((i) => !i.relationName), - n = Os(r, "name"); - return new Proxy( - {}, - { - get(i, o) { - if (o in i || typeof o == "symbol") return i[o]; - let s = n[o]; - if (s) return new lr(e, o, s.type, s.isList, s.kind === "enum"); - }, - ...Dn(Object.keys(n)), - }, - ); -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -var xa = (e) => (Array.isArray(e) ? e : e.split(".")), - qi = (e, t) => xa(t).reduce((r, n) => r && r[n], e), - Pa = (e, t, r) => - xa(t).reduceRight( - (n, i, o, s) => Object.assign({}, qi(e, s.slice(0, o)), { [i]: n }), - r, - ); -function sm(e, t) { - return e === void 0 || t === void 0 ? [] : [...t, "select", e]; -} -function am(e, t, r) { - return t === void 0 ? (e ?? {}) : Pa(t, r, e || !0); -} -function Bi(e, t, r, n, i, o) { - let a = e._runtimeDataModel.models[t].fields.reduce( - (f, w) => ({ ...f, [w.name]: w }), - {}, - ); - return (f) => { - let w = je(e._errorFormat), - A = sm(n, i), - R = am(f, o, A), - S = r({ dataPath: A, callsite: w })(R), - C = lm(e, t); - return new Proxy(S, { - get(L, k) { - if (!C.includes(k)) return L[k]; - let De = [a[k].type, r, k], - ue = [A, R]; - return Bi(e, ...De, ...ue); - }, - ...Dn([...C, ...Object.getOwnPropertyNames(S)]), - }); - }; -} -function lm(e, t) { - return e._runtimeDataModel.models[t].fields - .filter((r) => r.kind === "object") - .map((r) => r.name); -} -var cm = [ - "findUnique", - "findUniqueOrThrow", - "findFirst", - "findFirstOrThrow", - "create", - "update", - "upsert", - "delete", - ], - um = ["aggregate", "count", "groupBy"]; -function ji(e, t) { - let r = e._extensions.getAllModelExtensions(t) ?? {}, - n = [ - pm(e, t), - dm(e, t), - yr(r), - le("name", () => t), - le("$name", () => t), - le("$parent", () => e._appliedParent), - ]; - return Pe({}, n); -} -function pm(e, t) { - let r = Ie(t), - n = Object.keys(ir).concat("count"); - return { - getKeys() { - return n; - }, - getPropertyValue(i) { - let o = i, - s = (a) => (f) => { - let w = je(e._errorFormat); - return e._createPrismaPromise( - (A) => { - let R = { - args: f, - dataPath: [], - action: o, - model: t, - clientMethod: `${r}.${i}`, - jsModelName: r, - transaction: A, - callsite: w, - }; - return e._request({ ...R, ...a }); - }, - { action: o, args: f, model: t }, - ); - }; - return cm.includes(o) ? Bi(e, t, s) : mm(i) ? ba(e, i, s) : s({}); - }, - }; -} -function mm(e) { - return um.includes(e); -} -function dm(e, t) { - return et( - le("fields", () => { - let r = e._runtimeDataModel.models[t]; - return Ea(t, r); - }), - ); -} -c(); -u(); -p(); -m(); -d(); -l(); -function Ta(e) { - return e.replace(/^./, (t) => t.toUpperCase()); -} -var Qi = Symbol(); -function hr(e) { - let t = [ - fm(e), - gm(e), - le(Qi, () => e), - le("$parent", () => e._appliedParent), - ], - r = e._extensions.getAllClientExtensions(); - return (r && t.push(yr(r)), Pe(e, t)); -} -function fm(e) { - let t = Object.getPrototypeOf(e._originalClient), - r = [...new Set(Object.getOwnPropertyNames(t))]; - return { - getKeys() { - return r; - }, - getPropertyValue(n) { - return e[n]; - }, - }; -} -function gm(e) { - let t = Object.keys(e._runtimeDataModel.models), - r = t.map(Ie), - n = [...new Set(t.concat(r))]; - return et({ - getKeys() { - return n; - }, - getPropertyValue(i) { - let o = Ta(i); - if (e._runtimeDataModel.models[o] !== void 0) return ji(e, o); - if (e._runtimeDataModel.models[i] !== void 0) return ji(e, i); - }, - getPropertyDescriptor(i) { - if (!r.includes(i)) return { enumerable: !1 }; - }, - }); -} -function va(e) { - return e[Qi] ? e[Qi] : e; -} -function Aa(e) { - if (typeof e == "function") return e(this); - if (e.client?.__AccelerateEngine) { - let r = e.client.__AccelerateEngine; - this._originalClient._engine = new r( - this._originalClient._accelerateEngineConfig, - ); - } - let t = Object.create(this._originalClient, { - _extensions: { value: this._extensions.append(e) }, - _appliedParent: { value: this, configurable: !0 }, - $on: { value: void 0 }, - }); - return hr(t); -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -function Ra({ result: e, modelName: t, select: r, omit: n, extensions: i }) { - let o = i.getAllComputedFields(t); - if (!o) return e; - let s = [], - a = []; - for (let f of Object.values(o)) { - if (n) { - if (n[f.name]) continue; - let w = f.needs.filter((A) => n[A]); - w.length > 0 && a.push(It(w)); - } else if (r) { - if (!r[f.name]) continue; - let w = f.needs.filter((A) => !r[A]); - w.length > 0 && a.push(It(w)); - } - ym(e, f.needs) && s.push(hm(f, Pe(e, s))); - } - return s.length > 0 || a.length > 0 ? Pe(e, [...s, ...a]) : e; -} -function ym(e, t) { - return t.every((r) => Ri(e, r)); -} -function hm(e, t) { - return et(le(e.name, () => e.compute(t))); -} -c(); -u(); -p(); -m(); -d(); -l(); -function Nn({ - visitor: e, - result: t, - args: r, - runtimeDataModel: n, - modelName: i, -}) { - if (Array.isArray(t)) { - for (let s = 0; s < t.length; s++) - t[s] = Nn({ - result: t[s], - args: r, - modelName: i, - runtimeDataModel: n, - visitor: e, - }); - return t; - } - let o = e(t, i, r) ?? t; - return ( - r.include && - Ca({ - includeOrSelect: r.include, - result: o, - parentModelName: i, - runtimeDataModel: n, - visitor: e, - }), - r.select && - Ca({ - includeOrSelect: r.select, - result: o, - parentModelName: i, - runtimeDataModel: n, - visitor: e, - }), - o - ); -} -function Ca({ - includeOrSelect: e, - result: t, - parentModelName: r, - runtimeDataModel: n, - visitor: i, -}) { - for (let [o, s] of Object.entries(e)) { - if (!s || t[o] == null || ke(s)) continue; - let f = n.models[r].fields.find((A) => A.name === o); - if (!f || f.kind !== "object" || !f.relationName) continue; - let w = typeof s == "object" ? s : {}; - t[o] = Nn({ - visitor: i, - result: t[o], - args: w, - modelName: f.type, - runtimeDataModel: n, - }); - } -} -function Sa({ - result: e, - modelName: t, - args: r, - extensions: n, - runtimeDataModel: i, - globalOmit: o, -}) { - return n.isEmpty() || e == null || typeof e != "object" || !i.models[t] - ? e - : Nn({ - result: e, - args: r ?? {}, - modelName: t, - runtimeDataModel: i, - visitor: (a, f, w) => { - let A = Ie(f); - return Ra({ - result: a, - modelName: A, - select: w.select, - omit: w.select ? void 0 : { ...o?.[A], ...w.omit }, - extensions: n, - }); - }, - }); -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -var wm = ["$connect", "$disconnect", "$on", "$transaction", "$extends"], - Ia = wm; -function ka(e) { - if (e instanceof fe) return bm(e); - if (In(e)) return Em(e); - if (Array.isArray(e)) { - let r = [e[0]]; - for (let n = 1; n < e.length; n++) r[n] = wr(e[n]); - return r; - } - let t = {}; - for (let r in e) t[r] = wr(e[r]); - return t; -} -function bm(e) { - return new fe(e.strings, e.values); -} -function Em(e) { - return new gr(e.sql, e.values); -} -function wr(e) { - if (typeof e != "object" || e == null || e instanceof Ne || At(e)) return e; - if (bt(e)) return new se(e.toFixed()); - if (wt(e)) return new Date(+e); - if (ArrayBuffer.isView(e)) return e.slice(0); - if (Array.isArray(e)) { - let t = e.length, - r; - for (r = Array(t); t--; ) r[t] = wr(e[t]); - return r; - } - if (typeof e == "object") { - let t = {}; - for (let r in e) - r === "__proto__" - ? Object.defineProperty(t, r, { - value: wr(e[r]), - configurable: !0, - enumerable: !0, - writable: !0, - }) - : (t[r] = wr(e[r])); - return t; - } - Me(e, "Unknown value"); -} -function Da(e, t, r, n = 0) { - return e._createPrismaPromise((i) => { - let o = t.customDataProxyFetch; - return ( - "transaction" in t && - i !== void 0 && - (t.transaction?.kind === "batch" && t.transaction.lock.then(), - (t.transaction = i)), - n === r.length - ? e._executeRequest(t) - : r[n]({ - model: t.model, - operation: t.model ? t.action : t.clientMethod, - args: ka(t.args ?? {}), - __internalParams: t, - query: (s, a = t) => { - let f = a.customDataProxyFetch; - return ( - (a.customDataProxyFetch = La(o, f)), - (a.args = s), - Da(e, a, r, n + 1) - ); - }, - }) - ); - }); -} -function _a(e, t) { - let { jsModelName: r, action: n, clientMethod: i } = t, - o = r ? n : i; - if (e._extensions.isEmpty()) return e._executeRequest(t); - let s = e._extensions.getAllQueryCallbacks(r ?? "$none", o); - return Da(e, t, s); -} -function Ma(e) { - return (t) => { - let r = { requests: t }, - n = t[0].extensions.getAllBatchQueryCallbacks(); - return n.length ? Na(r, n, 0, e) : e(r); - }; -} -function Na(e, t, r, n) { - if (r === t.length) return n(e); - let i = e.customDataProxyFetch, - o = e.requests[0].transaction; - return t[r]({ - args: { - queries: e.requests.map((s) => ({ - model: s.modelName, - operation: s.action, - args: s.args, - })), - transaction: o - ? { isolationLevel: o.kind === "batch" ? o.isolationLevel : void 0 } - : void 0, - }, - __internalParams: e, - query(s, a = e) { - let f = a.customDataProxyFetch; - return ((a.customDataProxyFetch = La(i, f)), Na(a, t, r + 1, n)); - }, - }); -} -var Oa = (e) => e; -function La(e = Oa, t = Oa) { - return (r) => e(t(r)); -} -c(); -u(); -p(); -m(); -d(); -l(); -var Ua = K("prisma:client"), - Fa = { Vercel: "vercel", "Netlify CI": "netlify" }; -function $a({ postinstall: e, ciName: t, clientVersion: r, generator: n }) { - if ( - (Ua("checkPlatformCaching:postinstall", e), - Ua("checkPlatformCaching:ciName", t), - e === !0 && - !( - n?.output && typeof (n.output.fromEnvVar ?? n.output.value) == "string" - ) && - t && - t in Fa) - ) { - let i = `Prisma has detected that this project was built on ${t}, which caches dependencies. This leads to an outdated Prisma Client because Prisma's auto-generation isn't triggered. To fix this, make sure to run the \`prisma generate\` command during the build process. +"use strict";var ou=Object.create;var Kr=Object.defineProperty;var su=Object.getOwnPropertyDescriptor;var au=Object.getOwnPropertyNames;var lu=Object.getPrototypeOf,cu=Object.prototype.hasOwnProperty;var ye=(e,t)=>()=>(e&&(t=e(e=0)),t);var me=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),pt=(e,t)=>{for(var r in t)Kr(e,r,{get:t[r],enumerable:!0})},Vo=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of au(t))!cu.call(e,i)&&i!==r&&Kr(e,i,{get:()=>t[i],enumerable:!(n=su(t,i))||n.enumerable});return e};var $e=(e,t,r)=>(r=e!=null?ou(lu(e)):{},Vo(t||!e||!e.__esModule?Kr(r,"default",{value:e,enumerable:!0}):r,e)),qo=e=>Vo(Kr({},"__esModule",{value:!0}),e);function ui(e,t){if(t=t.toLowerCase(),t==="utf8"||t==="utf-8")return new h(du.encode(e));if(t==="base64"||t==="base64url")return e=e.replace(/-/g,"+").replace(/_/g,"/"),e=e.replace(/[^A-Za-z0-9+/]/g,""),new h([...atob(e)].map(r=>r.charCodeAt(0)));if(t==="binary"||t==="ascii"||t==="latin1"||t==="latin-1")return new h([...e].map(r=>r.charCodeAt(0)));if(t==="ucs2"||t==="ucs-2"||t==="utf16le"||t==="utf-16le"){let r=new h(e.length*2),n=new DataView(r.buffer);for(let i=0;ia.startsWith("get")||a.startsWith("set")),n=r.map(a=>a.replace("get","read").replace("set","write")),i=(a,f)=>function(w=0){return Y(w,"offset"),de(w,"offset"),ee(w,"offset",this.length-1),new DataView(this.buffer)[r[a]](w,f)},o=(a,f)=>function(w,A=0){let R=r[a].match(/set(\w+\d+)/)[1].toLowerCase(),S=mu[R];return Y(A,"offset"),de(A,"offset"),ee(A,"offset",this.length-1),pu(w,"value",S[0],S[1]),new DataView(this.buffer)[r[a]](A,w,f),A+parseInt(r[a].match(/\d+/)[0])/8},s=a=>{a.forEach(f=>{f.includes("Uint")&&(e[f.replace("Uint","UInt")]=e[f]),f.includes("Float64")&&(e[f.replace("Float64","Double")]=e[f]),f.includes("Float32")&&(e[f.replace("Float32","Float")]=e[f])})};n.forEach((a,f)=>{a.startsWith("read")&&(e[a]=i(f,!1),e[a+"LE"]=i(f,!0),e[a+"BE"]=i(f,!1)),a.startsWith("write")&&(e[a]=o(f,!1),e[a+"LE"]=o(f,!0),e[a+"BE"]=o(f,!1)),s([a,a+"LE",a+"BE"])})}function jo(e){throw new Error(`Buffer polyfill does not implement "${e}"`)}function zr(e,t){if(!(e instanceof Uint8Array))throw new TypeError(`The "${t}" argument must be an instance of Buffer or Uint8Array`)}function ee(e,t,r=yu+1){if(e<0||e>r){let n=new RangeError(`The value of "${t}" is out of range. It must be >= 0 && <= ${r}. Received ${e}`);throw n.code="ERR_OUT_OF_RANGE",n}}function Y(e,t){if(typeof e!="number"){let r=new TypeError(`The "${t}" argument must be of type number. Received type ${typeof e}.`);throw r.code="ERR_INVALID_ARG_TYPE",r}}function de(e,t){if(!Number.isInteger(e)||Number.isNaN(e)){let r=new RangeError(`The value of "${t}" is out of range. It must be an integer. Received ${e}`);throw r.code="ERR_OUT_OF_RANGE",r}}function pu(e,t,r,n){if(en){let i=new RangeError(`The value of "${t}" is out of range. It must be >= ${r} and <= ${n}. Received ${e}`);throw i.code="ERR_OUT_OF_RANGE",i}}function Bo(e,t){if(typeof e!="string"){let r=new TypeError(`The "${t}" argument must be of type string. Received type ${typeof e}`);throw r.code="ERR_INVALID_ARG_TYPE",r}}function hu(e,t="utf8"){return h.from(e,t)}var h,mu,du,fu,gu,yu,y,pi,c=ye(()=>{"use strict";h=class e extends Uint8Array{_isBuffer=!0;get offset(){return this.byteOffset}static alloc(t,r=0,n="utf8"){return Bo(n,"encoding"),e.allocUnsafe(t).fill(r,n)}static allocUnsafe(t){return e.from(t)}static allocUnsafeSlow(t){return e.from(t)}static isBuffer(t){return t&&!!t._isBuffer}static byteLength(t,r="utf8"){if(typeof t=="string")return ui(t,r).byteLength;if(t&&t.byteLength)return t.byteLength;let n=new TypeError('The "string" argument must be of type string or an instance of Buffer or ArrayBuffer.');throw n.code="ERR_INVALID_ARG_TYPE",n}static isEncoding(t){return gu.includes(t)}static compare(t,r){zr(t,"buff1"),zr(r,"buff2");for(let n=0;nr[n])return 1}return t.length===r.length?0:t.length>r.length?1:-1}static from(t,r="utf8"){if(t&&typeof t=="object"&&t.type==="Buffer")return new e(t.data);if(typeof t=="number")return new e(new Uint8Array(t));if(typeof t=="string")return ui(t,r);if(ArrayBuffer.isView(t)){let{byteOffset:n,byteLength:i,buffer:o}=t;return"map"in t&&typeof t.map=="function"?new e(t.map(s=>s%256),n,i):new e(o,n,i)}if(t&&typeof t=="object"&&("length"in t||"byteLength"in t||"buffer"in t))return new e(t);throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}static concat(t,r){if(t.length===0)return e.alloc(0);let n=[].concat(...t.map(o=>[...o])),i=e.alloc(r!==void 0?r:n.length);return i.set(r!==void 0?n.slice(0,r):n),i}slice(t=0,r=this.length){return this.subarray(t,r)}subarray(t=0,r=this.length){return Object.setPrototypeOf(super.subarray(t,r),e.prototype)}reverse(){return super.reverse(),this}readIntBE(t,r){Y(t,"offset"),de(t,"offset"),ee(t,"offset",this.length-1),Y(r,"byteLength"),de(r,"byteLength");let n=new DataView(this.buffer,t,r),i=0;for(let o=0;o=0;o--)i.setUint8(o,t&255),t=t/256;return r+n}writeUintBE(t,r,n){return this.writeUIntBE(t,r,n)}writeUIntLE(t,r,n){Y(r,"offset"),de(r,"offset"),ee(r,"offset",this.length-1),Y(n,"byteLength"),de(n,"byteLength");let i=new DataView(this.buffer,r,n);for(let o=0;or===t[n])}copy(t,r=0,n=0,i=this.length){ee(r,"targetStart"),ee(n,"sourceStart",this.length),ee(i,"sourceEnd"),r>>>=0,n>>>=0,i>>>=0;let o=0;for(;n=this.length?this.length-a:t.length),a);return this}includes(t,r=null,n="utf-8"){return this.indexOf(t,r,n)!==-1}lastIndexOf(t,r=null,n="utf-8"){return this.indexOf(t,r,n,!0)}indexOf(t,r=null,n="utf-8",i=!1){let o=i?this.findLastIndex.bind(this):this.findIndex.bind(this);n=typeof r=="string"?r:n;let s=e.from(typeof t=="number"?[t]:t,n),a=typeof r=="string"?0:r;return a=typeof r=="number"?a:null,a=Number.isNaN(a)?null:a,a??=i?this.length:0,a=a<0?this.length+a:a,s.length===0&&i===!1?a>=this.length?this.length:a:s.length===0&&i===!0?(a>=this.length?this.length:a)||this.length:o((f,w)=>(i?w<=a:w>=a)&&this[w]===s[0]&&s.every((R,S)=>this[w+S]===R))}toString(t="utf8",r=0,n=this.length){if(r=r<0?0:r,t=t.toString().toLowerCase(),n<=0)return"";if(t==="utf8"||t==="utf-8")return fu.decode(this.slice(r,n));if(t==="base64"||t==="base64url"){let i=btoa(this.reduce((o,s)=>o+pi(s),""));return t==="base64url"?i.replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,""):i}if(t==="binary"||t==="ascii"||t==="latin1"||t==="latin-1")return this.slice(r,n).reduce((i,o)=>i+pi(o&(t==="ascii"?127:255)),"");if(t==="ucs2"||t==="ucs-2"||t==="utf16le"||t==="utf-16le"){let i=new DataView(this.buffer.slice(r,n));return Array.from({length:i.byteLength/2},(o,s)=>s*2+1i+o.toString(16).padStart(2,"0"),"");jo(`encoding "${t}"`)}toLocaleString(){return this.toString()}inspect(){return``}};mu={int8:[-128,127],int16:[-32768,32767],int32:[-2147483648,2147483647],uint8:[0,255],uint16:[0,65535],uint32:[0,4294967295],float32:[-1/0,1/0],float64:[-1/0,1/0],bigint64:[-0x8000000000000000n,0x7fffffffffffffffn],biguint64:[0n,0xffffffffffffffffn]},du=new TextEncoder,fu=new TextDecoder,gu=["utf8","utf-8","hex","base64","ascii","binary","base64url","ucs2","ucs-2","utf16le","utf-16le","latin1","latin-1"],yu=4294967295;uu(h.prototype);y=new Proxy(hu,{construct(e,[t,r]){return h.from(t,r)},get(e,t){return h[t]}}),pi=String.fromCodePoint});var g,x,u=ye(()=>{"use strict";g={nextTick:(e,...t)=>{setTimeout(()=>{e(...t)},0)},env:{},version:"",cwd:()=>"/",stderr:{},argv:["/bin/node"],pid:1e4},{cwd:x}=g});var b,p=ye(()=>{"use strict";b=globalThis.performance??(()=>{let e=Date.now();return{now:()=>Date.now()-e}})()});var E,m=ye(()=>{"use strict";E=()=>{};E.prototype=E});var d=ye(()=>{"use strict"});function Jo(e,t){var r,n,i,o,s,a,f,w,A=e.constructor,R=A.precision;if(!e.s||!t.s)return t.s||(t=new A(e)),W?q(t,R):t;if(f=e.d,w=t.d,s=e.e,i=t.e,f=f.slice(),o=s-i,o){for(o<0?(n=f,o=-o,a=w.length):(n=w,i=s,a=f.length),s=Math.ceil(R/H),a=s>a?s+1:a+1,o>a&&(o=a,n.length=1),n.reverse();o--;)n.push(0);n.reverse()}for(a=f.length,o=w.length,a-o<0&&(o=a,n=w,w=f,f=n),r=0;o;)r=(f[--o]=f[o]+w[o]+r)/te|0,f[o]%=te;for(r&&(f.unshift(r),++i),a=f.length;f[--a]==0;)f.pop();return t.d=f,t.e=i,W?q(t,R):t}function Re(e,t,r){if(e!==~~e||er)throw Error(Ye+e)}function Ae(e){var t,r,n,i=e.length-1,o="",s=e[0];if(i>0){for(o+=s,t=1;t16)throw Error(di+Z(e));if(!e.s)return new A(he);for(t==null?(W=!1,a=R):a=t,s=new A(.03125);e.abs().gte(.1);)e=e.times(s),w+=5;for(n=Math.log(ze(2,w))/Math.LN10*2+5|0,a+=n,r=i=o=new A(he),A.precision=a;;){if(i=q(i.times(e),a),r=r.times(++f),s=o.plus(_e(i,r,a)),Ae(s.d).slice(0,a)===Ae(o.d).slice(0,a)){for(;w--;)o=q(o.times(o),a);return A.precision=R,t==null?(W=!0,q(o,R)):o}o=s}}function Z(e){for(var t=e.e*H,r=e.d[0];r>=10;r/=10)t++;return t}function mi(e,t,r){if(t>e.LN10.sd())throw W=!0,r&&(e.precision=r),Error(be+"LN10 precision limit exceeded");return q(new e(e.LN10),t)}function Ve(e){for(var t="";e--;)t+="0";return t}function Kt(e,t){var r,n,i,o,s,a,f,w,A,R=1,S=10,C=e,L=C.d,k=C.constructor,M=k.precision;if(C.s<1)throw Error(be+(C.s?"NaN":"-Infinity"));if(C.eq(he))return new k(0);if(t==null?(W=!1,w=M):w=t,C.eq(10))return t==null&&(W=!0),mi(k,w);if(w+=S,k.precision=w,r=Ae(L),n=r.charAt(0),o=Z(C),Math.abs(o)<15e14){for(;n<7&&n!=1||n==1&&r.charAt(1)>3;)C=C.times(e),r=Ae(C.d),n=r.charAt(0),R++;o=Z(C),n>1?(C=new k("0."+r),o++):C=new k(n+"."+r.slice(1))}else return f=mi(k,w+2,M).times(o+""),C=Kt(new k(n+"."+r.slice(1)),w-S).plus(f),k.precision=M,t==null?(W=!0,q(C,M)):C;for(a=s=C=_e(C.minus(he),C.plus(he),w),A=q(C.times(C),w),i=3;;){if(s=q(s.times(A),w),f=a.plus(_e(s,new k(i),w)),Ae(f.d).slice(0,w)===Ae(a.d).slice(0,w))return a=a.times(2),o!==0&&(a=a.plus(mi(k,w+2,M).times(o+""))),a=_e(a,new k(R),w),k.precision=M,t==null?(W=!0,q(a,M)):a;a=f,i+=2}}function Qo(e,t){var r,n,i;for((r=t.indexOf("."))>-1&&(t=t.replace(".","")),(n=t.search(/e/i))>0?(r<0&&(r=n),r+=+t.slice(n+1),t=t.substring(0,n)):r<0&&(r=t.length),n=0;t.charCodeAt(n)===48;)++n;for(i=t.length;t.charCodeAt(i-1)===48;)--i;if(t=t.slice(n,i),t){if(i-=n,r=r-n-1,e.e=dt(r/H),e.d=[],n=(r+1)%H,r<0&&(n+=H),nYr||e.e<-Yr))throw Error(di+r)}else e.s=0,e.e=0,e.d=[0];return e}function q(e,t,r){var n,i,o,s,a,f,w,A,R=e.d;for(s=1,o=R[0];o>=10;o/=10)s++;if(n=t-s,n<0)n+=H,i=t,w=R[A=0];else{if(A=Math.ceil((n+1)/H),o=R.length,A>=o)return e;for(w=o=R[A],s=1;o>=10;o/=10)s++;n%=H,i=n-H+s}if(r!==void 0&&(o=ze(10,s-i-1),a=w/o%10|0,f=t<0||R[A+1]!==void 0||w%o,f=r<4?(a||f)&&(r==0||r==(e.s<0?3:2)):a>5||a==5&&(r==4||f||r==6&&(n>0?i>0?w/ze(10,s-i):0:R[A-1])%10&1||r==(e.s<0?8:7))),t<1||!R[0])return f?(o=Z(e),R.length=1,t=t-o-1,R[0]=ze(10,(H-t%H)%H),e.e=dt(-t/H)||0):(R.length=1,R[0]=e.e=e.s=0),e;if(n==0?(R.length=A,o=1,A--):(R.length=A+1,o=ze(10,H-n),R[A]=i>0?(w/ze(10,s-i)%ze(10,i)|0)*o:0),f)for(;;)if(A==0){(R[0]+=o)==te&&(R[0]=1,++e.e);break}else{if(R[A]+=o,R[A]!=te)break;R[A--]=0,o=1}for(n=R.length;R[--n]===0;)R.pop();if(W&&(e.e>Yr||e.e<-Yr))throw Error(di+Z(e));return e}function Ko(e,t){var r,n,i,o,s,a,f,w,A,R,S=e.constructor,C=S.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new S(e),W?q(t,C):t;if(f=e.d,R=t.d,n=t.e,w=e.e,f=f.slice(),s=w-n,s){for(A=s<0,A?(r=f,s=-s,a=R.length):(r=R,n=w,a=f.length),i=Math.max(Math.ceil(C/H),a)+2,s>i&&(s=i,r.length=1),r.reverse(),i=s;i--;)r.push(0);r.reverse()}else{for(i=f.length,a=R.length,A=i0;--i)f[a++]=0;for(i=R.length;i>s;){if(f[--i]0?o=o.charAt(0)+"."+o.slice(1)+Ve(n):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(i<0?"e":"e+")+i):i<0?(o="0."+Ve(-i-1)+o,r&&(n=r-s)>0&&(o+=Ve(n))):i>=s?(o+=Ve(i+1-s),r&&(n=r-i-1)>0&&(o=o+"."+Ve(n))):((n=i+1)0&&(i+1===s&&(o+="."),o+=Ve(n))),e.s<0?"-"+o:o}function Ho(e,t){if(e.length>t)return e.length=t,!0}function zo(e){var t,r,n;function i(o){var s=this;if(!(s instanceof i))return new i(o);if(s.constructor=i,o instanceof i){s.s=o.s,s.e=o.e,s.d=(o=o.d)?o.slice():o;return}if(typeof o=="number"){if(o*0!==0)throw Error(Ye+o);if(o>0)s.s=1;else if(o<0)o=-o,s.s=-1;else{s.s=0,s.e=0,s.d=[0];return}if(o===~~o&&o<1e7){s.e=0,s.d=[o];return}return Qo(s,o.toString())}else if(typeof o!="string")throw Error(Ye+o);if(o.charCodeAt(0)===45?(o=o.slice(1),s.s=-1):s.s=1,bu.test(o))Qo(s,o);else throw Error(Ye+o)}if(i.prototype=I,i.ROUND_UP=0,i.ROUND_DOWN=1,i.ROUND_CEIL=2,i.ROUND_FLOOR=3,i.ROUND_HALF_UP=4,i.ROUND_HALF_DOWN=5,i.ROUND_HALF_EVEN=6,i.ROUND_HALF_CEIL=7,i.ROUND_HALF_FLOOR=8,i.clone=zo,i.config=i.set=Eu,e===void 0&&(e={}),e)for(n=["precision","rounding","toExpNeg","toExpPos","LN10"],t=0;t=i[t+1]&&n<=i[t+2])this[r]=n;else throw Error(Ye+r+": "+n);if((n=e[r="LN10"])!==void 0)if(n==Math.LN10)this[r]=new this(n);else throw Error(Ye+r+": "+n);return this}var mt,wu,fi,W,be,Ye,di,dt,ze,bu,he,te,H,Go,Yr,I,_e,fi,Zr,Yo=ye(()=>{"use strict";c();u();p();m();d();l();mt=1e9,wu={precision:20,rounding:4,toExpNeg:-7,toExpPos:21,LN10:"2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286"},W=!0,be="[DecimalError] ",Ye=be+"Invalid argument: ",di=be+"Exponent out of range: ",dt=Math.floor,ze=Math.pow,bu=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,te=1e7,H=7,Go=9007199254740991,Yr=dt(Go/H),I={};I.absoluteValue=I.abs=function(){var e=new this.constructor(this);return e.s&&(e.s=1),e};I.comparedTo=I.cmp=function(e){var t,r,n,i,o=this;if(e=new o.constructor(e),o.s!==e.s)return o.s||-e.s;if(o.e!==e.e)return o.e>e.e^o.s<0?1:-1;for(n=o.d.length,i=e.d.length,t=0,r=ne.d[t]^o.s<0?1:-1;return n===i?0:n>i^o.s<0?1:-1};I.decimalPlaces=I.dp=function(){var e=this,t=e.d.length-1,r=(t-e.e)*H;if(t=e.d[t],t)for(;t%10==0;t/=10)r--;return r<0?0:r};I.dividedBy=I.div=function(e){return _e(this,new this.constructor(e))};I.dividedToIntegerBy=I.idiv=function(e){var t=this,r=t.constructor;return q(_e(t,new r(e),0,1),r.precision)};I.equals=I.eq=function(e){return!this.cmp(e)};I.exponent=function(){return Z(this)};I.greaterThan=I.gt=function(e){return this.cmp(e)>0};I.greaterThanOrEqualTo=I.gte=function(e){return this.cmp(e)>=0};I.isInteger=I.isint=function(){return this.e>this.d.length-2};I.isNegative=I.isneg=function(){return this.s<0};I.isPositive=I.ispos=function(){return this.s>0};I.isZero=function(){return this.s===0};I.lessThan=I.lt=function(e){return this.cmp(e)<0};I.lessThanOrEqualTo=I.lte=function(e){return this.cmp(e)<1};I.logarithm=I.log=function(e){var t,r=this,n=r.constructor,i=n.precision,o=i+5;if(e===void 0)e=new n(10);else if(e=new n(e),e.s<1||e.eq(he))throw Error(be+"NaN");if(r.s<1)throw Error(be+(r.s?"NaN":"-Infinity"));return r.eq(he)?new n(0):(W=!1,t=_e(Kt(r,o),Kt(e,o),o),W=!0,q(t,i))};I.minus=I.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?Ko(t,e):Jo(t,(e.s=-e.s,e))};I.modulo=I.mod=function(e){var t,r=this,n=r.constructor,i=n.precision;if(e=new n(e),!e.s)throw Error(be+"NaN");return r.s?(W=!1,t=_e(r,e,0,1).times(e),W=!0,r.minus(t)):q(new n(r),i)};I.naturalExponential=I.exp=function(){return Wo(this)};I.naturalLogarithm=I.ln=function(){return Kt(this)};I.negated=I.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e};I.plus=I.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?Jo(t,e):Ko(t,(e.s=-e.s,e))};I.precision=I.sd=function(e){var t,r,n,i=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(Ye+e);if(t=Z(i)+1,n=i.d.length-1,r=n*H+1,n=i.d[n],n){for(;n%10==0;n/=10)r--;for(n=i.d[0];n>=10;n/=10)r++}return e&&t>r?t:r};I.squareRoot=I.sqrt=function(){var e,t,r,n,i,o,s,a=this,f=a.constructor;if(a.s<1){if(!a.s)return new f(0);throw Error(be+"NaN")}for(e=Z(a),W=!1,i=Math.sqrt(+a),i==0||i==1/0?(t=Ae(a.d),(t.length+e)%2==0&&(t+="0"),i=Math.sqrt(t),e=dt((e+1)/2)-(e<0||e%2),i==1/0?t="5e"+e:(t=i.toExponential(),t=t.slice(0,t.indexOf("e")+1)+e),n=new f(t)):n=new f(i.toString()),r=f.precision,i=s=r+3;;)if(o=n,n=o.plus(_e(a,o,s+2)).times(.5),Ae(o.d).slice(0,s)===(t=Ae(n.d)).slice(0,s)){if(t=t.slice(s-3,s+1),i==s&&t=="4999"){if(q(o,r+1,0),o.times(o).eq(a)){n=o;break}}else if(t!="9999")break;s+=4}return W=!0,q(n,r)};I.times=I.mul=function(e){var t,r,n,i,o,s,a,f,w,A=this,R=A.constructor,S=A.d,C=(e=new R(e)).d;if(!A.s||!e.s)return new R(0);for(e.s*=A.s,r=A.e+e.e,f=S.length,w=C.length,f=0;){for(t=0,i=f+n;i>n;)a=o[i]+C[n]*S[i-n-1]+t,o[i--]=a%te|0,t=a/te|0;o[i]=(o[i]+t)%te|0}for(;!o[--s];)o.pop();return t?++r:o.shift(),e.d=o,e.e=r,W?q(e,R.precision):e};I.toDecimalPlaces=I.todp=function(e,t){var r=this,n=r.constructor;return r=new n(r),e===void 0?r:(Re(e,0,mt),t===void 0?t=n.rounding:Re(t,0,8),q(r,e+Z(r)+1,t))};I.toExponential=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=Ze(n,!0):(Re(e,0,mt),t===void 0?t=i.rounding:Re(t,0,8),n=q(new i(n),e+1,t),r=Ze(n,!0,e+1)),r};I.toFixed=function(e,t){var r,n,i=this,o=i.constructor;return e===void 0?Ze(i):(Re(e,0,mt),t===void 0?t=o.rounding:Re(t,0,8),n=q(new o(i),e+Z(i)+1,t),r=Ze(n.abs(),!1,e+Z(n)+1),i.isneg()&&!i.isZero()?"-"+r:r)};I.toInteger=I.toint=function(){var e=this,t=e.constructor;return q(new t(e),Z(e)+1,t.rounding)};I.toNumber=function(){return+this};I.toPower=I.pow=function(e){var t,r,n,i,o,s,a=this,f=a.constructor,w=12,A=+(e=new f(e));if(!e.s)return new f(he);if(a=new f(a),!a.s){if(e.s<1)throw Error(be+"Infinity");return a}if(a.eq(he))return a;if(n=f.precision,e.eq(he))return q(a,n);if(t=e.e,r=e.d.length-1,s=t>=r,o=a.s,s){if((r=A<0?-A:A)<=Go){for(i=new f(he),t=Math.ceil(n/H+4),W=!1;r%2&&(i=i.times(a),Ho(i.d,t)),r=dt(r/2),r!==0;)a=a.times(a),Ho(a.d,t);return W=!0,e.s<0?new f(he).div(i):q(i,n)}}else if(o<0)throw Error(be+"NaN");return o=o<0&&e.d[Math.max(t,r)]&1?-1:1,a.s=1,W=!1,i=e.times(Kt(a,n+w)),W=!0,i=Wo(i),i.s=o,i};I.toPrecision=function(e,t){var r,n,i=this,o=i.constructor;return e===void 0?(r=Z(i),n=Ze(i,r<=o.toExpNeg||r>=o.toExpPos)):(Re(e,1,mt),t===void 0?t=o.rounding:Re(t,0,8),i=q(new o(i),e,t),r=Z(i),n=Ze(i,e<=r||r<=o.toExpNeg,e)),n};I.toSignificantDigits=I.tosd=function(e,t){var r=this,n=r.constructor;return e===void 0?(e=n.precision,t=n.rounding):(Re(e,1,mt),t===void 0?t=n.rounding:Re(t,0,8)),q(new n(r),e,t)};I.toString=I.valueOf=I.val=I.toJSON=I[Symbol.for("nodejs.util.inspect.custom")]=function(){var e=this,t=Z(e),r=e.constructor;return Ze(e,t<=r.toExpNeg||t>=r.toExpPos)};_e=function(){function e(n,i){var o,s=0,a=n.length;for(n=n.slice();a--;)o=n[a]*i+s,n[a]=o%te|0,s=o/te|0;return s&&n.unshift(s),n}function t(n,i,o,s){var a,f;if(o!=s)f=o>s?1:-1;else for(a=f=0;ai[a]?1:-1;break}return f}function r(n,i,o){for(var s=0;o--;)n[o]-=s,s=n[o]1;)n.shift()}return function(n,i,o,s){var a,f,w,A,R,S,C,L,k,M,De,ue,B,pe,Ke,ci,xe,Jr,Wr=n.constructor,iu=n.s==i.s?1:-1,ve=n.d,z=i.d;if(!n.s)return new Wr(n);if(!i.s)throw Error(be+"Division by zero");for(f=n.e-i.e,xe=z.length,Ke=ve.length,C=new Wr(iu),L=C.d=[],w=0;z[w]==(ve[w]||0);)++w;if(z[w]>(ve[w]||0)&&--f,o==null?ue=o=Wr.precision:s?ue=o+(Z(n)-Z(i))+1:ue=o,ue<0)return new Wr(0);if(ue=ue/H+2|0,w=0,xe==1)for(A=0,z=z[0],ue++;(w1&&(z=e(z,A),ve=e(ve,A),xe=z.length,Ke=ve.length),pe=xe,k=ve.slice(0,xe),M=k.length;M=te/2&&++ci;do A=0,a=t(z,k,xe,M),a<0?(De=k[0],xe!=M&&(De=De*te+(k[1]||0)),A=De/ci|0,A>1?(A>=te&&(A=te-1),R=e(z,A),S=R.length,M=k.length,a=t(R,k,S,M),a==1&&(A--,r(R,xe{"use strict";Yo();v=class extends Zr{static isDecimal(t){return t instanceof Zr}static random(t=20){{let n=globalThis.crypto.getRandomValues(new Uint8Array(t)).reduce((i,o)=>i+o,"");return new Zr(`0.${n.slice(0,t)}`)}}},se=v});function Ru(){return!1}function bi(){return{dev:0,ino:0,mode:0,nlink:0,uid:0,gid:0,rdev:0,size:0,blksize:0,blocks:0,atimeMs:0,mtimeMs:0,ctimeMs:0,birthtimeMs:0,atime:new Date,mtime:new Date,ctime:new Date,birthtime:new Date}}function Cu(){return bi()}function Su(){return[]}function Iu(e){e(null,[])}function ku(){return""}function Ou(){return""}function Du(){}function _u(){}function Mu(){}function Nu(){}function Lu(){}function Uu(){}function Fu(){}function $u(){}function Vu(){return{close:()=>{},on:()=>{},removeAllListeners:()=>{}}}function qu(e,t){t(null,bi())}var Bu,ju,fs,gs=ye(()=>{"use strict";c();u();p();m();d();l();Bu={},ju={existsSync:Ru,lstatSync:bi,stat:qu,statSync:Cu,readdirSync:Su,readdir:Iu,readlinkSync:ku,realpathSync:Ou,chmodSync:Du,renameSync:_u,mkdirSync:Mu,rmdirSync:Nu,rmSync:Lu,unlinkSync:Uu,watchFile:Fu,unwatchFile:$u,watch:Vu,promises:Bu},fs=ju});var ys=me(()=>{"use strict";c();u();p();m();d();l()});var hs=me((Vy,Qu)=>{Qu.exports={name:"@prisma/internals",version:"6.19.2",description:"This package is intended for Prisma's internal use",main:"dist/index.js",types:"dist/index.d.ts",repository:{type:"git",url:"https://github.com/prisma/prisma.git",directory:"packages/internals"},homepage:"https://www.prisma.io",author:"Tim Suchanek ",bugs:"https://github.com/prisma/prisma/issues",license:"Apache-2.0",scripts:{dev:"DEV=true tsx helpers/build.ts",build:"tsx helpers/build.ts",test:"dotenv -e ../../.db.env -- jest --silent",prepublishOnly:"pnpm run build"},files:["README.md","dist","!**/libquery_engine*","!dist/get-generators/engines/*","scripts"],devDependencies:{"@babel/helper-validator-identifier":"7.25.9","@opentelemetry/api":"1.9.0","@swc/core":"1.11.5","@swc/jest":"0.2.37","@types/babel__helper-validator-identifier":"7.15.2","@types/jest":"29.5.14","@types/node":"18.19.76","@types/resolve":"1.20.6",archiver:"6.0.2","checkpoint-client":"1.1.33","cli-truncate":"4.0.0",dotenv:"16.5.0",empathic:"2.0.0","escape-string-regexp":"5.0.0",execa:"8.0.1","fast-glob":"3.3.3","find-up":"7.0.0","fp-ts":"2.16.9","fs-extra":"11.3.0","global-directory":"4.0.0",globby:"11.1.0","identifier-regex":"1.0.0","indent-string":"4.0.0","is-windows":"1.0.2","is-wsl":"3.1.0",jest:"29.7.0","jest-junit":"16.0.0",kleur:"4.1.5","mock-stdin":"1.0.0","new-github-issue-url":"0.2.1","node-fetch":"3.3.2","npm-packlist":"5.1.3",open:"7.4.2","p-map":"4.0.0",resolve:"1.22.10","string-width":"7.2.0","strip-indent":"4.0.0","temp-dir":"2.0.0",tempy:"1.0.1","terminal-link":"4.0.0",tmp:"0.2.3","ts-pattern":"5.6.2","ts-toolbelt":"9.6.0",typescript:"5.4.5",yarn:"1.22.22"},dependencies:{"@prisma/config":"workspace:*","@prisma/debug":"workspace:*","@prisma/dmmf":"workspace:*","@prisma/driver-adapter-utils":"workspace:*","@prisma/engines":"workspace:*","@prisma/fetch-engine":"workspace:*","@prisma/generator":"workspace:*","@prisma/generator-helper":"workspace:*","@prisma/get-platform":"workspace:*","@prisma/prisma-schema-wasm":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/schema-engine-wasm":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/schema-files-loader":"workspace:*",arg:"5.0.2",prompts:"2.4.2"},peerDependencies:{typescript:">=5.1.0"},peerDependenciesMeta:{typescript:{optional:!0}},sideEffects:!1}});function Gu(...e){return e.join("/")}function Ju(...e){return e.join("/")}function Wu(e){let t=ws(e),r=bs(e),[n,i]=t.split(".");return{root:"/",dir:r,base:t,ext:i,name:n}}function ws(e){let t=e.split("/");return t[t.length-1]}function bs(e){return e.split("/").slice(0,-1).join("/")}function zu(e){let t=e.split("/").filter(i=>i!==""&&i!=="."),r=[];for(let i of t)i===".."?r.pop():r.push(i);let n=r.join("/");return e.startsWith("/")?"/"+n:n}var Es,Ku,Yu,Zu,rn,xs=ye(()=>{"use strict";c();u();p();m();d();l();Es="/",Ku=":";Yu={sep:Es},Zu={basename:ws,delimiter:Ku,dirname:bs,join:Ju,normalize:zu,parse:Wu,posix:Yu,resolve:Gu,sep:Es},rn=Zu});var xi={};pt(xi,{Hash:()=>Zt,createHash:()=>Ps,default:()=>yt,randomFillSync:()=>sn,randomUUID:()=>on,webcrypto:()=>Xt});function on(){return globalThis.crypto.randomUUID()}function sn(e,t,r){return t!==void 0&&(r!==void 0?e=e.subarray(t,t+r):e=e.subarray(t)),globalThis.crypto.getRandomValues(e)}function Ps(e){return new Zt(e)}var Xt,Zt,yt,Xe=ye(()=>{"use strict";c();u();p();m();d();l();Xt=globalThis.crypto;Zt=class{#t=[];#e;constructor(t){this.#e=t}update(t){this.#t.push(t)}async digest(){let t=new Uint8Array(this.#t.reduce((i,o)=>i+o.length,0)),r=0;for(let i of this.#t)t.set(i,r),r+=i.length;let n=await globalThis.crypto.subtle.digest(this.#e,t);return new Uint8Array(n)}},yt={webcrypto:Xt,randomUUID:on,randomFillSync:sn,createHash:Ps,Hash:Zt}});var Pi=me(($h,tp)=>{tp.exports={name:"@prisma/engines-version",version:"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7",main:"index.js",types:"index.d.ts",license:"Apache-2.0",author:"Tim Suchanek ",prisma:{enginesVersion:"c2990dca591cba766e3b7ef5d9e8a84796e47ab7"},repository:{type:"git",url:"https://github.com/prisma/engines-wrapper.git",directory:"packages/engines-version"},devDependencies:{"@types/node":"18.19.76",typescript:"4.9.5"},files:["index.js","index.d.ts"],scripts:{build:"tsc -d"}}});var Ts=me(an=>{"use strict";c();u();p();m();d();l();Object.defineProperty(an,"__esModule",{value:!0});an.enginesVersion=void 0;an.enginesVersion=Pi().prisma.enginesVersion});var Rs=me((ew,As)=>{"use strict";c();u();p();m();d();l();As.exports=(e,t=1,r)=>{if(r={indent:" ",includeEmptyLines:!1,...r},typeof e!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof e}\``);if(typeof t!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof t}\``);if(typeof r.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``);if(t===0)return e;let n=r.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return e.replace(n,r.indent.repeat(t))}});var Ss=me((Lw,un)=>{"use strict";c();u();p();m();d();l();un.exports=(e={})=>{let t;if(e.repoUrl)t=e.repoUrl;else if(e.user&&e.repo)t=`https://github.com/${e.user}/${e.repo}`;else throw new Error("You need to specify either the `repoUrl` option or both the `user` and `repo` options");let r=new URL(`${t}/issues/new`),n=["body","title","labels","template","milestone","assignee","projects"];for(let i of n){let o=e[i];if(o!==void 0){if(i==="labels"||i==="projects"){if(!Array.isArray(o))throw new TypeError(`The \`${i}\` option should be an array`);o=o.join(",")}r.searchParams.set(i,o)}}return r.toString()};un.exports.default=un.exports});var Ii=me((SP,_s)=>{"use strict";c();u();p();m();d();l();_s.exports=function(){function e(t,r,n,i,o){return tn?n+1:t+1:i===o?r:r+1}return function(t,r){if(t===r)return 0;if(t.length>r.length){var n=t;t=r,r=n}for(var i=t.length,o=r.length;i>0&&t.charCodeAt(i-1)===r.charCodeAt(o-1);)i--,o--;for(var s=0;s{"use strict";c();u();p();m();d();l()});var $s=ye(()=>{"use strict";c();u();p();m();d();l()});var kn,ca=ye(()=>{"use strict";c();u();p();m();d();l();kn=class{events={};on(t,r){return this.events[t]||(this.events[t]=[]),this.events[t].push(r),this}emit(t,...r){return this.events[t]?(this.events[t].forEach(n=>{n(...r)}),!0):!1}}});var Xi=me(rt=>{"use strict";c();u();p();m();d();l();Object.defineProperty(rt,"__esModule",{value:!0});rt.anumber=Zi;rt.abytes=ol;rt.ahash=Nm;rt.aexists=Lm;rt.aoutput=Um;function Zi(e){if(!Number.isSafeInteger(e)||e<0)throw new Error("positive integer expected, got "+e)}function Mm(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function ol(e,...t){if(!Mm(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error("Uint8Array expected of length "+t+", got length="+e.length)}function Nm(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Zi(e.outputLen),Zi(e.blockLen)}function Lm(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function Um(e,t){ol(e);let r=t.outputLen;if(e.length{"use strict";c();u();p();m();d();l();Object.defineProperty(_,"__esModule",{value:!0});_.add5L=_.add5H=_.add4H=_.add4L=_.add3H=_.add3L=_.rotlBL=_.rotlBH=_.rotlSL=_.rotlSH=_.rotr32L=_.rotr32H=_.rotrBL=_.rotrBH=_.rotrSL=_.rotrSH=_.shrSL=_.shrSH=_.toBig=void 0;_.fromBig=to;_.split=sl;_.add=El;var Fn=BigInt(2**32-1),eo=BigInt(32);function to(e,t=!1){return t?{h:Number(e&Fn),l:Number(e>>eo&Fn)}:{h:Number(e>>eo&Fn)|0,l:Number(e&Fn)|0}}function sl(e,t=!1){let r=new Uint32Array(e.length),n=new Uint32Array(e.length);for(let i=0;iBigInt(e>>>0)<>>0);_.toBig=al;var ll=(e,t,r)=>e>>>r;_.shrSH=ll;var cl=(e,t,r)=>e<<32-r|t>>>r;_.shrSL=cl;var ul=(e,t,r)=>e>>>r|t<<32-r;_.rotrSH=ul;var pl=(e,t,r)=>e<<32-r|t>>>r;_.rotrSL=pl;var ml=(e,t,r)=>e<<64-r|t>>>r-32;_.rotrBH=ml;var dl=(e,t,r)=>e>>>r-32|t<<64-r;_.rotrBL=dl;var fl=(e,t)=>t;_.rotr32H=fl;var gl=(e,t)=>e;_.rotr32L=gl;var yl=(e,t,r)=>e<>>32-r;_.rotlSH=yl;var hl=(e,t,r)=>t<>>32-r;_.rotlSL=hl;var wl=(e,t,r)=>t<>>64-r;_.rotlBH=wl;var bl=(e,t,r)=>e<>>64-r;_.rotlBL=bl;function El(e,t,r,n){let i=(t>>>0)+(n>>>0);return{h:e+r+(i/2**32|0)|0,l:i|0}}var xl=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0);_.add3L=xl;var Pl=(e,t,r,n)=>t+r+n+(e/2**32|0)|0;_.add3H=Pl;var Tl=(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0);_.add4L=Tl;var vl=(e,t,r,n,i)=>t+r+n+i+(e/2**32|0)|0;_.add4H=vl;var Al=(e,t,r,n,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(i>>>0);_.add5L=Al;var Rl=(e,t,r,n,i,o)=>t+r+n+i+o+(e/2**32|0)|0;_.add5H=Rl;var Fm={fromBig:to,split:sl,toBig:al,shrSH:ll,shrSL:cl,rotrSH:ul,rotrSL:pl,rotrBH:ml,rotrBL:dl,rotr32H:fl,rotr32L:gl,rotlSH:yl,rotlSL:hl,rotlBH:wl,rotlBL:bl,add:El,add3L:xl,add3H:Pl,add4L:Tl,add4H:vl,add5H:Rl,add5L:Al};_.default=Fm});var Sl=me($n=>{"use strict";c();u();p();m();d();l();Object.defineProperty($n,"__esModule",{value:!0});$n.crypto=void 0;var He=(Xe(),qo(xi));$n.crypto=He&&typeof He=="object"&&"webcrypto"in He?He.webcrypto:He&&typeof He=="object"&&"randomBytes"in He?He:void 0});var Ol=me(U=>{"use strict";c();u();p();m();d();l();Object.defineProperty(U,"__esModule",{value:!0});U.Hash=U.nextTick=U.byteSwapIfBE=U.isLE=void 0;U.isBytes=$m;U.u8=Vm;U.u32=qm;U.createView=Bm;U.rotr=jm;U.rotl=Qm;U.byteSwap=io;U.byteSwap32=Hm;U.bytesToHex=Jm;U.hexToBytes=Wm;U.asyncLoop=zm;U.utf8ToBytes=kl;U.toBytes=Vn;U.concatBytes=Ym;U.checkOpts=Zm;U.wrapConstructor=Xm;U.wrapConstructorWithOpts=ed;U.wrapXOFConstructorWithOpts=td;U.randomBytes=rd;var Mt=Sl(),no=Xi();function $m(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function Vm(e){return new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}function qm(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function Bm(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function jm(e,t){return e<<32-t|e>>>t}function Qm(e,t){return e<>>32-t>>>0}U.isLE=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function io(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}U.byteSwapIfBE=U.isLE?e=>e:e=>io(e);function Hm(e){for(let t=0;tt.toString(16).padStart(2,"0"));function Jm(e){(0,no.abytes)(e);let t="";for(let r=0;r=Le._0&&e<=Le._9)return e-Le._0;if(e>=Le.A&&e<=Le.F)return e-(Le.A-10);if(e>=Le.a&&e<=Le.f)return e-(Le.a-10)}function Wm(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);let t=e.length,r=t/2;if(t%2)throw new Error("hex string expected, got unpadded hex of length "+t);let n=new Uint8Array(r);for(let i=0,o=0;i{};U.nextTick=Km;async function zm(e,t,r){let n=Date.now();for(let i=0;i=0&&oe().update(Vn(n)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}function ed(e){let t=(n,i)=>e(i).update(Vn(n)).digest(),r=e({});return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}function td(e){let t=(n,i)=>e(i).update(Vn(n)).digest(),r=e({});return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}function rd(e=32){if(Mt.crypto&&typeof Mt.crypto.getRandomValues=="function")return Mt.crypto.getRandomValues(new Uint8Array(e));if(Mt.crypto&&typeof Mt.crypto.randomBytes=="function")return Mt.crypto.randomBytes(e);throw new Error("crypto.getRandomValues must be defined")}});var $l=me(J=>{"use strict";c();u();p();m();d();l();Object.defineProperty(J,"__esModule",{value:!0});J.shake256=J.shake128=J.keccak_512=J.keccak_384=J.keccak_256=J.keccak_224=J.sha3_512=J.sha3_384=J.sha3_256=J.sha3_224=J.Keccak=void 0;J.keccakP=Ul;var Nt=Xi(),Pr=Cl(),Ue=Ol(),Ml=[],Nl=[],Ll=[],nd=BigInt(0),xr=BigInt(1),id=BigInt(2),od=BigInt(7),sd=BigInt(256),ad=BigInt(113);for(let e=0,t=xr,r=1,n=0;e<24;e++){[r,n]=[n,(2*r+3*n)%5],Ml.push(2*(5*n+r)),Nl.push((e+1)*(e+2)/2%64);let i=nd;for(let o=0;o<7;o++)t=(t<>od)*ad)%sd,t&id&&(i^=xr<<(xr<r>32?(0,Pr.rotlBH)(e,t,r):(0,Pr.rotlSH)(e,t,r),_l=(e,t,r)=>r>32?(0,Pr.rotlBL)(e,t,r):(0,Pr.rotlSL)(e,t,r);function Ul(e,t=24){let r=new Uint32Array(10);for(let n=24-t;n<24;n++){for(let s=0;s<10;s++)r[s]=e[s]^e[s+10]^e[s+20]^e[s+30]^e[s+40];for(let s=0;s<10;s+=2){let a=(s+8)%10,f=(s+2)%10,w=r[f],A=r[f+1],R=Dl(w,A,1)^r[a],S=_l(w,A,1)^r[a+1];for(let C=0;C<50;C+=10)e[s+C]^=R,e[s+C+1]^=S}let i=e[2],o=e[3];for(let s=0;s<24;s++){let a=Nl[s],f=Dl(i,o,a),w=_l(i,o,a),A=Ml[s];i=e[A],o=e[A+1],e[A]=f,e[A+1]=w}for(let s=0;s<50;s+=10){for(let a=0;a<10;a++)r[a]=e[s+a];for(let a=0;a<10;a++)e[s+a]^=~r[(a+2)%10]&r[(a+4)%10]}e[0]^=ld[n],e[1]^=cd[n]}r.fill(0)}var Tr=class e extends Ue.Hash{constructor(t,r,n,i=!1,o=24){if(super(),this.blockLen=t,this.suffix=r,this.outputLen=n,this.enableXOF=i,this.rounds=o,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,(0,Nt.anumber)(n),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=(0,Ue.u32)(this.state)}keccak(){Ue.isLE||(0,Ue.byteSwap32)(this.state32),Ul(this.state32,this.rounds),Ue.isLE||(0,Ue.byteSwap32)(this.state32),this.posOut=0,this.pos=0}update(t){(0,Nt.aexists)(this);let{blockLen:r,state:n}=this;t=(0,Ue.toBytes)(t);let i=t.length;for(let o=0;o=n&&this.keccak();let s=Math.min(n-this.posOut,o-i);t.set(r.subarray(this.posOut,this.posOut+s),i),this.posOut+=s,i+=s}return t}xofInto(t){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(t)}xof(t){return(0,Nt.anumber)(t),this.xofInto(new Uint8Array(t))}digestInto(t){if((0,Nt.aoutput)(t,this),this.finished)throw new Error("digest() was already called");return this.writeInto(t),this.destroy(),t}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(t){let{blockLen:r,suffix:n,outputLen:i,rounds:o,enableXOF:s}=this;return t||(t=new e(r,n,i,s,o)),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=o,t.suffix=n,t.outputLen=i,t.enableXOF=s,t.destroyed=this.destroyed,t}};J.Keccak=Tr;var Ge=(e,t,r)=>(0,Ue.wrapConstructor)(()=>new Tr(t,e,r));J.sha3_224=Ge(6,144,224/8);J.sha3_256=Ge(6,136,256/8);J.sha3_384=Ge(6,104,384/8);J.sha3_512=Ge(6,72,512/8);J.keccak_224=Ge(1,144,224/8);J.keccak_256=Ge(1,136,256/8);J.keccak_384=Ge(1,104,384/8);J.keccak_512=Ge(1,72,512/8);var Fl=(e,t,r)=>(0,Ue.wrapXOFConstructorWithOpts)((n={})=>new Tr(t,e,n.dkLen===void 0?r:n.dkLen,!0));J.shake128=Fl(31,168,128/8);J.shake256=Fl(31,136,256/8)});var Jl=me((RL,Je)=>{"use strict";c();u();p();m();d();l();var{sha3_512:ud}=$l(),ql=24,vr=32,oo=(e=4,t=Math.random)=>{let r="";for(;r.lengthBl(ud(e)).toString(36).slice(1),Vl=Array.from({length:26},(e,t)=>String.fromCharCode(t+97)),pd=e=>Vl[Math.floor(e()*Vl.length)],Ql=({globalObj:e=typeof globalThis<"u"?globalThis:typeof window<"u"?window:{},random:t=Math.random}={})=>{let r=Object.keys(e).toString(),n=r.length?r+oo(vr,t):oo(vr,t);return jl(n).substring(0,vr)},Hl=e=>()=>e++,md=476782367,Gl=({random:e=Math.random,counter:t=Hl(Math.floor(e()*md)),length:r=ql,fingerprint:n=Ql({random:e})}={})=>function(){let o=pd(e),s=Date.now().toString(36),a=t().toString(36),f=oo(r,e),w=`${s+f+a+n}`;return`${o+jl(w).substring(1,r)}`},dd=Gl(),fd=(e,{minLength:t=2,maxLength:r=vr}={})=>{let n=e.length,i=/^[0-9a-z]+$/;try{if(typeof e=="string"&&n>=t&&n<=r&&i.test(e))return!0}finally{}return!1};Je.exports.getConstants=()=>({defaultLength:ql,bigLength:vr});Je.exports.init=Gl;Je.exports.createId=dd;Je.exports.bufToBigInt=Bl;Je.exports.createCounter=Hl;Je.exports.createFingerprint=Ql;Je.exports.isCuid=fd});var Wl=me((_L,Ar)=>{"use strict";c();u();p();m();d();l();var{createId:gd,init:yd,getConstants:hd,isCuid:wd}=Jl();Ar.exports.createId=gd;Ar.exports.init=yd;Ar.exports.getConstants=hd;Ar.exports.isCuid=wd});var $f={};pt($f,{DMMF:()=>or,Debug:()=>K,Decimal:()=>se,Extensions:()=>gi,MetricsClient:()=>St,PrismaClientInitializationError:()=>F,PrismaClientKnownRequestError:()=>X,PrismaClientRustPanicError:()=>ae,PrismaClientUnknownRequestError:()=>ne,PrismaClientValidationError:()=>ie,Public:()=>yi,Sql:()=>fe,createParam:()=>ta,defineDmmfProperty:()=>aa,deserializeJsonResponse:()=>Qe,deserializeRawResult:()=>ai,dmmfToRuntimeDataModel:()=>Ds,empty:()=>pa,getPrismaClient:()=>tu,getRuntime:()=>ti,join:()=>ua,makeStrictEnum:()=>ru,makeTypedQueryFactory:()=>la,objectEnumValues:()=>En,raw:()=>Fi,serializeJsonQuery:()=>Cn,skip:()=>Rn,sqltag:()=>$i,warnEnvConflicts:()=>void 0,warnOnce:()=>rr});module.exports=qo($f);c();u();p();m();d();l();var gi={};pt(gi,{defineExtension:()=>Zo,getExtensionContext:()=>Xo});c();u();p();m();d();l();c();u();p();m();d();l();function Zo(e){return typeof e=="function"?e:t=>t.$extends(e)}c();u();p();m();d();l();function Xo(e){return e}var yi={};pt(yi,{validator:()=>es});c();u();p();m();d();l();c();u();p();m();d();l();function es(...e){return t=>t}c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();var hi,ts,rs,ns,is=!0;typeof g<"u"&&({FORCE_COLOR:hi,NODE_DISABLE_COLORS:ts,NO_COLOR:rs,TERM:ns}=g.env||{},is=g.stdout&&g.stdout.isTTY);var xu={enabled:!ts&&rs==null&&ns!=="dumb"&&(hi!=null&&hi!=="0"||is)};function j(e,t){let r=new RegExp(`\\x1b\\[${t}m`,"g"),n=`\x1B[${e}m`,i=`\x1B[${t}m`;return function(o){return!xu.enabled||o==null?o:n+(~(""+o).indexOf(i)?o.replace(r,i+n):o)+i}}var Ug=j(0,0),Xr=j(1,22),en=j(2,22),Fg=j(3,23),tn=j(4,24),$g=j(7,27),Vg=j(8,28),qg=j(9,29),Bg=j(30,39),ft=j(31,39),os=j(32,39),ss=j(33,39),as=j(34,39),jg=j(35,39),ls=j(36,39),Qg=j(37,39),cs=j(90,39),Hg=j(90,39),Gg=j(40,49),Jg=j(41,49),Wg=j(42,49),Kg=j(43,49),zg=j(44,49),Yg=j(45,49),Zg=j(46,49),Xg=j(47,49);c();u();p();m();d();l();var Pu=100,us=["green","yellow","blue","magenta","cyan","red"],zt=[],ps=Date.now(),Tu=0,wi=typeof g<"u"?g.env:{};globalThis.DEBUG??=wi.DEBUG??"";globalThis.DEBUG_COLORS??=wi.DEBUG_COLORS?wi.DEBUG_COLORS==="true":!0;var Yt={enable(e){typeof e=="string"&&(globalThis.DEBUG=e)},disable(){let e=globalThis.DEBUG;return globalThis.DEBUG="",e},enabled(e){let t=globalThis.DEBUG.split(",").map(i=>i.replace(/[.+?^${}()|[\]\\]/g,"\\$&")),r=t.some(i=>i===""||i[0]==="-"?!1:e.match(RegExp(i.split("*").join(".*")+"$"))),n=t.some(i=>i===""||i[0]!=="-"?!1:e.match(RegExp(i.slice(1).split("*").join(".*")+"$")));return r&&!n},log:(...e)=>{let[t,r,...n]=e;(console.warn??console.log)(`${t} ${r}`,...n)},formatters:{}};function vu(e){let t={color:us[Tu++%us.length],enabled:Yt.enabled(e),namespace:e,log:Yt.log,extend:()=>{}},r=(...n)=>{let{enabled:i,namespace:o,color:s,log:a}=t;if(n.length!==0&&zt.push([o,...n]),zt.length>Pu&&zt.shift(),Yt.enabled(o)||i){let f=n.map(A=>typeof A=="string"?A:Au(A)),w=`+${Date.now()-ps}ms`;ps=Date.now(),a(o,...f,w)}};return new Proxy(r,{get:(n,i)=>t[i],set:(n,i,o)=>t[i]=o})}var K=new Proxy(vu,{get:(e,t)=>Yt[t],set:(e,t,r)=>Yt[t]=r});function Au(e,t=2){let r=new Set;return JSON.stringify(e,(n,i)=>{if(typeof i=="object"&&i!==null){if(r.has(i))return"[Circular *]";r.add(i)}else if(typeof i=="bigint")return i.toString();return i},t)}function ms(e=7500){let t=zt.map(([r,...n])=>`${r} ${n.map(i=>typeof i=="string"?i:JSON.stringify(i)).join(" ")}`).join(` +`);return t.lengthip,info:()=>np,log:()=>rp,query:()=>op,should:()=>Cs,tags:()=>er,warn:()=>vi});c();u();p();m();d();l();var er={error:ft("prisma:error"),warn:ss("prisma:warn"),info:ls("prisma:info"),query:as("prisma:query")},Cs={warn:()=>!g.env.PRISMA_DISABLE_WARNINGS};function rp(...e){console.log(...e)}function vi(e,...t){Cs.warn()&&console.warn(`${er.warn} ${e}`,...t)}function np(e,...t){console.info(`${er.info} ${e}`,...t)}function ip(e,...t){console.error(`${er.error} ${e}`,...t)}function op(e,...t){console.log(`${er.query} ${e}`,...t)}c();u();p();m();d();l();function Me(e,t){throw new Error(t)}c();u();p();m();d();l();c();u();p();m();d();l();function Ai({onlyFirst:e=!1}={}){let r=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(r,e?void 0:"g")}var sp=Ai();function ht(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(sp,"")}c();u();p();m();d();l();function Ri(e,t){return Object.prototype.hasOwnProperty.call(e,t)}c();u();p();m();d();l();function pn(e,t){let r={};for(let n of Object.keys(e))r[n]=t(e[n],n);return r}c();u();p();m();d();l();function Ci(e,t){if(e.length===0)return;let r=e[0];for(let n=1;n{Is.has(e)||(Is.add(e),vi(t,...r))};var F=class e extends Error{clientVersion;errorCode;retryable;constructor(t,r,n){super(t),this.name="PrismaClientInitializationError",this.clientVersion=r,this.errorCode=n,Error.captureStackTrace(e)}get[Symbol.toStringTag](){return"PrismaClientInitializationError"}};D(F,"PrismaClientInitializationError");c();u();p();m();d();l();var X=class extends Error{code;meta;clientVersion;batchRequestIdx;constructor(t,{code:r,clientVersion:n,meta:i,batchRequestIdx:o}){super(t),this.name="PrismaClientKnownRequestError",this.code=r,this.clientVersion=n,this.meta=i,Object.defineProperty(this,"batchRequestIdx",{value:o,enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return"PrismaClientKnownRequestError"}};D(X,"PrismaClientKnownRequestError");c();u();p();m();d();l();var ae=class extends Error{clientVersion;constructor(t,r){super(t),this.name="PrismaClientRustPanicError",this.clientVersion=r}get[Symbol.toStringTag](){return"PrismaClientRustPanicError"}};D(ae,"PrismaClientRustPanicError");c();u();p();m();d();l();var ne=class extends Error{clientVersion;batchRequestIdx;constructor(t,{clientVersion:r,batchRequestIdx:n}){super(t),this.name="PrismaClientUnknownRequestError",this.clientVersion=r,Object.defineProperty(this,"batchRequestIdx",{value:n,writable:!0,enumerable:!1})}get[Symbol.toStringTag](){return"PrismaClientUnknownRequestError"}};D(ne,"PrismaClientUnknownRequestError");c();u();p();m();d();l();var ie=class extends Error{name="PrismaClientValidationError";clientVersion;constructor(t,{clientVersion:r}){super(t),this.clientVersion=r}get[Symbol.toStringTag](){return"PrismaClientValidationError"}};D(ie,"PrismaClientValidationError");c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();var Ce=class{_map=new Map;get(t){return this._map.get(t)?.value}set(t,r){this._map.set(t,{value:r})}getOrCreate(t,r){let n=this._map.get(t);if(n)return n.value;let i=r();return this.set(t,i),i}};c();u();p();m();d();l();function qe(e){return e.substring(0,1).toLowerCase()+e.substring(1)}c();u();p();m();d();l();function Os(e,t){let r={};for(let n of e){let i=n[t];r[i]=n}return r}c();u();p();m();d();l();function nr(e){let t;return{get(){return t||(t={value:e()}),t.value}}}c();u();p();m();d();l();function Ds(e){return{models:Si(e.models),enums:Si(e.enums),types:Si(e.types)}}function Si(e){let t={};for(let{name:r,...n}of e)t[r]=n;return t}c();u();p();m();d();l();function wt(e){return e instanceof Date||Object.prototype.toString.call(e)==="[object Date]"}function mn(e){return e.toString()!=="Invalid Date"}c();u();p();m();d();l();l();function bt(e){return v.isDecimal(e)?!0:e!==null&&typeof e=="object"&&typeof e.s=="number"&&typeof e.e=="number"&&typeof e.toFixed=="function"&&Array.isArray(e.d)}c();u();p();m();d();l();c();u();p();m();d();l();var or={};pt(or,{ModelAction:()=>ir,datamodelEnumToSchemaEnum:()=>ap});c();u();p();m();d();l();c();u();p();m();d();l();function ap(e){return{name:e.name,values:e.values.map(t=>t.name)}}c();u();p();m();d();l();var ir=(B=>(B.findUnique="findUnique",B.findUniqueOrThrow="findUniqueOrThrow",B.findFirst="findFirst",B.findFirstOrThrow="findFirstOrThrow",B.findMany="findMany",B.create="create",B.createMany="createMany",B.createManyAndReturn="createManyAndReturn",B.update="update",B.updateMany="updateMany",B.updateManyAndReturn="updateManyAndReturn",B.upsert="upsert",B.delete="delete",B.deleteMany="deleteMany",B.groupBy="groupBy",B.count="count",B.aggregate="aggregate",B.findRaw="findRaw",B.aggregateRaw="aggregateRaw",B))(ir||{});var lp=$e(Rs());var cp={red:ft,gray:cs,dim:en,bold:Xr,underline:tn,highlightSource:e=>e.highlight()},up={red:e=>e,gray:e=>e,dim:e=>e,bold:e=>e,underline:e=>e,highlightSource:e=>e};function pp({message:e,originalMethod:t,isPanic:r,callArguments:n}){return{functionName:`prisma.${t}()`,message:e,isPanic:r??!1,callArguments:n}}function mp({functionName:e,location:t,message:r,isPanic:n,contextLines:i,callArguments:o},s){let a=[""],f=t?" in":":";if(n?(a.push(s.red(`Oops, an unknown error occurred! This is ${s.bold("on us")}, you did nothing wrong.`)),a.push(s.red(`It occurred in the ${s.bold(`\`${e}\``)} invocation${f}`))):a.push(s.red(`Invalid ${s.bold(`\`${e}\``)} invocation${f}`)),t&&a.push(s.underline(dp(t))),i){a.push("");let w=[i.toString()];o&&(w.push(o),w.push(s.dim(")"))),a.push(w.join("")),o&&a.push("")}else a.push(""),o&&a.push(o),a.push("");return a.push(r),a.join(` +`)}function dp(e){let t=[e.fileName];return e.lineNumber&&t.push(String(e.lineNumber)),e.columnNumber&&t.push(String(e.columnNumber)),t.join(":")}function dn(e){let t=e.showColors?cp:up,r;return typeof $getTemplateParameters<"u"?r=$getTemplateParameters(e,t):r=pp(e),mp(r,t)}c();u();p();m();d();l();var qs=$e(Ii());c();u();p();m();d();l();function Ls(e,t,r){let n=Us(e),i=fp(n),o=yp(i);o?fn(o,t,r):t.addErrorMessage(()=>"Unknown error")}function Us(e){return e.errors.flatMap(t=>t.kind==="Union"?Us(t):[t])}function fp(e){let t=new Map,r=[];for(let n of e){if(n.kind!=="InvalidArgumentType"){r.push(n);continue}let i=`${n.selectionPath.join(".")}:${n.argumentPath.join(".")}`,o=t.get(i);o?t.set(i,{...n,argument:{...n.argument,typeNames:gp(o.argument.typeNames,n.argument.typeNames)}}):t.set(i,n)}return r.push(...t.values()),r}function gp(e,t){return[...new Set(e.concat(t))]}function yp(e){return Ci(e,(t,r)=>{let n=Ms(t),i=Ms(r);return n!==i?n-i:Ns(t)-Ns(r)})}function Ms(e){let t=0;return Array.isArray(e.selectionPath)&&(t+=e.selectionPath.length),Array.isArray(e.argumentPath)&&(t+=e.argumentPath.length),t}function Ns(e){switch(e.kind){case"InvalidArgumentValue":case"ValueTooLarge":return 20;case"InvalidArgumentType":return 10;case"RequiredArgumentMissing":return-10;default:return 0}}c();u();p();m();d();l();var we=class{constructor(t,r){this.name=t;this.value=r}isRequired=!1;makeRequired(){return this.isRequired=!0,this}write(t){let{colors:{green:r}}=t.context;t.addMarginSymbol(r(this.isRequired?"+":"?")),t.write(r(this.name)),this.isRequired||t.write(r("?")),t.write(r(": ")),typeof this.value=="string"?t.write(r(this.value)):t.write(this.value)}};c();u();p();m();d();l();c();u();p();m();d();l();$s();c();u();p();m();d();l();var Et=class{constructor(t=0,r){this.context=r;this.currentIndent=t}lines=[];currentLine="";currentIndent=0;marginSymbol;afterNextNewLineCallback;write(t){return typeof t=="string"?this.currentLine+=t:t.write(this),this}writeJoined(t,r,n=(i,o)=>o.write(i)){let i=r.length-1;for(let o=0;o0&&this.currentIndent--,this}addMarginSymbol(t){return this.marginSymbol=t,this}toString(){return this.lines.concat(this.indentedCurrentLine()).join(` +`)}getCurrentLineLength(){return this.currentLine.length}indentedCurrentLine(){let t=this.currentLine.padStart(this.currentLine.length+2*this.currentIndent);return this.marginSymbol?this.marginSymbol+t.slice(1):t}};Fs();c();u();p();m();d();l();c();u();p();m();d();l();var gn=class{constructor(t){this.value=t}write(t){t.write(this.value)}markAsError(){this.value.markAsError()}};c();u();p();m();d();l();var yn=e=>e,hn={bold:yn,red:yn,green:yn,dim:yn,enabled:!1},Vs={bold:Xr,red:ft,green:os,dim:en,enabled:!0},xt={write(e){e.writeLine(",")}};c();u();p();m();d();l();var Se=class{constructor(t){this.contents=t}isUnderlined=!1;color=t=>t;underline(){return this.isUnderlined=!0,this}setColor(t){return this.color=t,this}write(t){let r=t.getCurrentLineLength();t.write(this.color(this.contents)),this.isUnderlined&&t.afterNextNewline(()=>{t.write(" ".repeat(r)).writeLine(this.color("~".repeat(this.contents.length)))})}};c();u();p();m();d();l();var Be=class{hasError=!1;markAsError(){return this.hasError=!0,this}};var Pt=class extends Be{items=[];addItem(t){return this.items.push(new gn(t)),this}getField(t){return this.items[t]}getPrintWidth(){return this.items.length===0?2:Math.max(...this.items.map(r=>r.value.getPrintWidth()))+2}write(t){if(this.items.length===0){this.writeEmpty(t);return}this.writeWithItems(t)}writeEmpty(t){let r=new Se("[]");this.hasError&&r.setColor(t.context.colors.red).underline(),t.write(r)}writeWithItems(t){let{colors:r}=t.context;t.writeLine("[").withIndent(()=>t.writeJoined(xt,this.items).newLine()).write("]"),this.hasError&&t.afterNextNewline(()=>{t.writeLine(r.red("~".repeat(this.getPrintWidth())))})}asObject(){}};var Tt=class e extends Be{fields={};suggestions=[];addField(t){this.fields[t.name]=t}addSuggestion(t){this.suggestions.push(t)}getField(t){return this.fields[t]}getDeepField(t){let[r,...n]=t,i=this.getField(r);if(!i)return;let o=i;for(let s of n){let a;if(o.value instanceof e?a=o.value.getField(s):o.value instanceof Pt&&(a=o.value.getField(Number(s))),!a)return;o=a}return o}getDeepFieldValue(t){return t.length===0?this:this.getDeepField(t)?.value}hasField(t){return!!this.getField(t)}removeAllFields(){this.fields={}}removeField(t){delete this.fields[t]}getFields(){return this.fields}isEmpty(){return Object.keys(this.fields).length===0}getFieldValue(t){return this.getField(t)?.value}getDeepSubSelectionValue(t){let r=this;for(let n of t){if(!(r instanceof e))return;let i=r.getSubSelectionValue(n);if(!i)return;r=i}return r}getDeepSelectionParent(t){let r=this.getSelectionParent();if(!r)return;let n=r;for(let i of t){let o=n.value.getFieldValue(i);if(!o||!(o instanceof e))return;let s=o.getSelectionParent();if(!s)return;n=s}return n}getSelectionParent(){let t=this.getField("select")?.value.asObject();if(t)return{kind:"select",value:t};let r=this.getField("include")?.value.asObject();if(r)return{kind:"include",value:r}}getSubSelectionValue(t){return this.getSelectionParent()?.value.fields[t].value}getPrintWidth(){let t=Object.values(this.fields);return t.length==0?2:Math.max(...t.map(n=>n.getPrintWidth()))+2}write(t){let r=Object.values(this.fields);if(r.length===0&&this.suggestions.length===0){this.writeEmpty(t);return}this.writeWithContents(t,r)}asObject(){return this}writeEmpty(t){let r=new Se("{}");this.hasError&&r.setColor(t.context.colors.red).underline(),t.write(r)}writeWithContents(t,r){t.writeLine("{").withIndent(()=>{t.writeJoined(xt,[...r,...this.suggestions]).newLine()}),t.write("}"),this.hasError&&t.afterNextNewline(()=>{t.writeLine(t.context.colors.red("~".repeat(this.getPrintWidth())))})}};c();u();p();m();d();l();var re=class extends Be{constructor(r){super();this.text=r}getPrintWidth(){return this.text.length}write(r){let n=new Se(this.text);this.hasError&&n.underline().setColor(r.context.colors.red),r.write(n)}asObject(){}};c();u();p();m();d();l();var sr=class{fields=[];addField(t,r){return this.fields.push({write(n){let{green:i,dim:o}=n.context.colors;n.write(i(o(`${t}: ${r}`))).addMarginSymbol(i(o("+")))}}),this}write(t){let{colors:{green:r}}=t.context;t.writeLine(r("{")).withIndent(()=>{t.writeJoined(xt,this.fields).newLine()}).write(r("}")).addMarginSymbol(r("+"))}};function fn(e,t,r){switch(e.kind){case"MutuallyExclusiveFields":hp(e,t);break;case"IncludeOnScalar":wp(e,t);break;case"EmptySelection":bp(e,t,r);break;case"UnknownSelectionField":Tp(e,t);break;case"InvalidSelectionValue":vp(e,t);break;case"UnknownArgument":Ap(e,t);break;case"UnknownInputField":Rp(e,t);break;case"RequiredArgumentMissing":Cp(e,t);break;case"InvalidArgumentType":Sp(e,t);break;case"InvalidArgumentValue":Ip(e,t);break;case"ValueTooLarge":kp(e,t);break;case"SomeFieldsMissing":Op(e,t);break;case"TooManyFieldsGiven":Dp(e,t);break;case"Union":Ls(e,t,r);break;default:throw new Error("not implemented: "+e.kind)}}function hp(e,t){let r=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();r&&(r.getField(e.firstField)?.markAsError(),r.getField(e.secondField)?.markAsError()),t.addErrorMessage(n=>`Please ${n.bold("either")} use ${n.green(`\`${e.firstField}\``)} or ${n.green(`\`${e.secondField}\``)}, but ${n.red("not both")} at the same time.`)}function wp(e,t){let[r,n]=vt(e.selectionPath),i=e.outputType,o=t.arguments.getDeepSelectionParent(r)?.value;if(o&&(o.getField(n)?.markAsError(),i))for(let s of i.fields)s.isRelation&&o.addSuggestion(new we(s.name,"true"));t.addErrorMessage(s=>{let a=`Invalid scalar field ${s.red(`\`${n}\``)} for ${s.bold("include")} statement`;return i?a+=` on model ${s.bold(i.name)}. ${ar(s)}`:a+=".",a+=` +Note that ${s.bold("include")} statements only accept relation fields.`,a})}function bp(e,t,r){let n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(n){let i=n.getField("omit")?.value.asObject();if(i){Ep(e,t,i);return}if(n.hasField("select")){xp(e,t);return}}if(r?.[qe(e.outputType.name)]){Pp(e,t);return}t.addErrorMessage(()=>`Unknown field at "${e.selectionPath.join(".")} selection"`)}function Ep(e,t,r){r.removeAllFields();for(let n of e.outputType.fields)r.addSuggestion(new we(n.name,"false"));t.addErrorMessage(n=>`The ${n.red("omit")} statement includes every field of the model ${n.bold(e.outputType.name)}. At least one field must be included in the result`)}function xp(e,t){let r=e.outputType,n=t.arguments.getDeepSelectionParent(e.selectionPath)?.value,i=n?.isEmpty()??!1;n&&(n.removeAllFields(),Qs(n,r)),t.addErrorMessage(o=>i?`The ${o.red("`select`")} statement for type ${o.bold(r.name)} must not be empty. ${ar(o)}`:`The ${o.red("`select`")} statement for type ${o.bold(r.name)} needs ${o.bold("at least one truthy value")}.`)}function Pp(e,t){let r=new sr;for(let i of e.outputType.fields)i.isRelation||r.addField(i.name,"false");let n=new we("omit",r).makeRequired();if(e.selectionPath.length===0)t.arguments.addSuggestion(n);else{let[i,o]=vt(e.selectionPath),a=t.arguments.getDeepSelectionParent(i)?.value.asObject()?.getField(o);if(a){let f=a?.value.asObject()??new Tt;f.addSuggestion(n),a.value=f}}t.addErrorMessage(i=>`The global ${i.red("omit")} configuration excludes every field of the model ${i.bold(e.outputType.name)}. At least one field must be included in the result`)}function Tp(e,t){let r=Hs(e.selectionPath,t);if(r.parentKind!=="unknown"){r.field.markAsError();let n=r.parent;switch(r.parentKind){case"select":Qs(n,e.outputType);break;case"include":_p(n,e.outputType);break;case"omit":Mp(n,e.outputType);break}}t.addErrorMessage(n=>{let i=[`Unknown field ${n.red(`\`${r.fieldName}\``)}`];return r.parentKind!=="unknown"&&i.push(`for ${n.bold(r.parentKind)} statement`),i.push(`on model ${n.bold(`\`${e.outputType.name}\``)}.`),i.push(ar(n)),i.join(" ")})}function vp(e,t){let r=Hs(e.selectionPath,t);r.parentKind!=="unknown"&&r.field.value.markAsError(),t.addErrorMessage(n=>`Invalid value for selection field \`${n.red(r.fieldName)}\`: ${e.underlyingError}`)}function Ap(e,t){let r=e.argumentPath[0],n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&(n.getField(r)?.markAsError(),Np(n,e.arguments)),t.addErrorMessage(i=>Bs(i,r,e.arguments.map(o=>o.name)))}function Rp(e,t){let[r,n]=vt(e.argumentPath),i=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(i){i.getDeepField(e.argumentPath)?.markAsError();let o=i.getDeepFieldValue(r)?.asObject();o&&Gs(o,e.inputType)}t.addErrorMessage(o=>Bs(o,n,e.inputType.fields.map(s=>s.name)))}function Bs(e,t,r){let n=[`Unknown argument \`${e.red(t)}\`.`],i=Up(t,r);return i&&n.push(`Did you mean \`${e.green(i)}\`?`),r.length>0&&n.push(ar(e)),n.join(" ")}function Cp(e,t){let r;t.addErrorMessage(f=>r?.value instanceof re&&r.value.text==="null"?`Argument \`${f.green(o)}\` must not be ${f.red("null")}.`:`Argument \`${f.green(o)}\` is missing.`);let n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(!n)return;let[i,o]=vt(e.argumentPath),s=new sr,a=n.getDeepFieldValue(i)?.asObject();if(a){if(r=a.getField(o),r&&a.removeField(o),e.inputTypes.length===1&&e.inputTypes[0].kind==="object"){for(let f of e.inputTypes[0].fields)s.addField(f.name,f.typeNames.join(" | "));a.addSuggestion(new we(o,s).makeRequired())}else{let f=e.inputTypes.map(js).join(" | ");a.addSuggestion(new we(o,f).makeRequired())}if(e.dependentArgumentPath){n.getDeepField(e.dependentArgumentPath)?.markAsError();let[,f]=vt(e.dependentArgumentPath);t.addErrorMessage(w=>`Argument \`${w.green(o)}\` is required because argument \`${w.green(f)}\` was provided.`)}}}function js(e){return e.kind==="list"?`${js(e.elementType)}[]`:e.name}function Sp(e,t){let r=e.argument.name,n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&n.getDeepFieldValue(e.argumentPath)?.markAsError(),t.addErrorMessage(i=>{let o=wn("or",e.argument.typeNames.map(s=>i.green(s)));return`Argument \`${i.bold(r)}\`: Invalid value provided. Expected ${o}, provided ${i.red(e.inferredType)}.`})}function Ip(e,t){let r=e.argument.name,n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&n.getDeepFieldValue(e.argumentPath)?.markAsError(),t.addErrorMessage(i=>{let o=[`Invalid value for argument \`${i.bold(r)}\``];if(e.underlyingError&&o.push(`: ${e.underlyingError}`),o.push("."),e.argument.typeNames.length>0){let s=wn("or",e.argument.typeNames.map(a=>i.green(a)));o.push(` Expected ${s}.`)}return o.join("")})}function kp(e,t){let r=e.argument.name,n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(),i;if(n){let s=n.getDeepField(e.argumentPath)?.value;s?.markAsError(),s instanceof re&&(i=s.text)}t.addErrorMessage(o=>{let s=["Unable to fit value"];return i&&s.push(o.red(i)),s.push(`into a 64-bit signed integer for field \`${o.bold(r)}\``),s.join(" ")})}function Op(e,t){let r=e.argumentPath[e.argumentPath.length-1],n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(n){let i=n.getDeepFieldValue(e.argumentPath)?.asObject();i&&Gs(i,e.inputType)}t.addErrorMessage(i=>{let o=[`Argument \`${i.bold(r)}\` of type ${i.bold(e.inputType.name)} needs`];return e.constraints.minFieldCount===1?e.constraints.requiredFields?o.push(`${i.green("at least one of")} ${wn("or",e.constraints.requiredFields.map(s=>`\`${i.bold(s)}\``))} arguments.`):o.push(`${i.green("at least one")} argument.`):o.push(`${i.green(`at least ${e.constraints.minFieldCount}`)} arguments.`),o.push(ar(i)),o.join(" ")})}function Dp(e,t){let r=e.argumentPath[e.argumentPath.length-1],n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(),i=[];if(n){let o=n.getDeepFieldValue(e.argumentPath)?.asObject();o&&(o.markAsError(),i=Object.keys(o.getFields()))}t.addErrorMessage(o=>{let s=[`Argument \`${o.bold(r)}\` of type ${o.bold(e.inputType.name)} needs`];return e.constraints.minFieldCount===1&&e.constraints.maxFieldCount==1?s.push(`${o.green("exactly one")} argument,`):e.constraints.maxFieldCount==1?s.push(`${o.green("at most one")} argument,`):s.push(`${o.green(`at most ${e.constraints.maxFieldCount}`)} arguments,`),s.push(`but you provided ${wn("and",i.map(a=>o.red(a)))}. Please choose`),e.constraints.maxFieldCount===1?s.push("one."):s.push(`${e.constraints.maxFieldCount}.`),s.join(" ")})}function Qs(e,t){for(let r of t.fields)e.hasField(r.name)||e.addSuggestion(new we(r.name,"true"))}function _p(e,t){for(let r of t.fields)r.isRelation&&!e.hasField(r.name)&&e.addSuggestion(new we(r.name,"true"))}function Mp(e,t){for(let r of t.fields)!e.hasField(r.name)&&!r.isRelation&&e.addSuggestion(new we(r.name,"true"))}function Np(e,t){for(let r of t)e.hasField(r.name)||e.addSuggestion(new we(r.name,r.typeNames.join(" | ")))}function Hs(e,t){let[r,n]=vt(e),i=t.arguments.getDeepSubSelectionValue(r)?.asObject();if(!i)return{parentKind:"unknown",fieldName:n};let o=i.getFieldValue("select")?.asObject(),s=i.getFieldValue("include")?.asObject(),a=i.getFieldValue("omit")?.asObject(),f=o?.getField(n);return o&&f?{parentKind:"select",parent:o,field:f,fieldName:n}:(f=s?.getField(n),s&&f?{parentKind:"include",field:f,parent:s,fieldName:n}:(f=a?.getField(n),a&&f?{parentKind:"omit",field:f,parent:a,fieldName:n}:{parentKind:"unknown",fieldName:n}))}function Gs(e,t){if(t.kind==="object")for(let r of t.fields)e.hasField(r.name)||e.addSuggestion(new we(r.name,r.typeNames.join(" | ")))}function vt(e){let t=[...e],r=t.pop();if(!r)throw new Error("unexpected empty path");return[t,r]}function ar({green:e,enabled:t}){return"Available options are "+(t?`listed in ${e("green")}`:"marked with ?")+"."}function wn(e,t){if(t.length===1)return t[0];let r=[...t],n=r.pop();return`${r.join(", ")} ${e} ${n}`}var Lp=3;function Up(e,t){let r=1/0,n;for(let i of t){let o=(0,qs.default)(e,i);o>Lp||o`}};function At(e){return e instanceof lr}c();u();p();m();d();l();var bn=Symbol(),Oi=new WeakMap,Ne=class{constructor(t){t===bn?Oi.set(this,`Prisma.${this._getName()}`):Oi.set(this,`new Prisma.${this._getNamespace()}.${this._getName()}()`)}_getName(){return this.constructor.name}toString(){return Oi.get(this)}},cr=class extends Ne{_getNamespace(){return"NullTypes"}},ur=class extends cr{#t};Di(ur,"DbNull");var pr=class extends cr{#t};Di(pr,"JsonNull");var mr=class extends cr{#t};Di(mr,"AnyNull");var En={classes:{DbNull:ur,JsonNull:pr,AnyNull:mr},instances:{DbNull:new ur(bn),JsonNull:new pr(bn),AnyNull:new mr(bn)}};function Di(e,t){Object.defineProperty(e,"name",{value:t,configurable:!0})}c();u();p();m();d();l();var Js=": ",xn=class{constructor(t,r){this.name=t;this.value=r}hasError=!1;markAsError(){this.hasError=!0}getPrintWidth(){return this.name.length+this.value.getPrintWidth()+Js.length}write(t){let r=new Se(this.name);this.hasError&&r.underline().setColor(t.context.colors.red),t.write(r).write(Js).write(this.value)}};var _i=class{arguments;errorMessages=[];constructor(t){this.arguments=t}write(t){t.write(this.arguments)}addErrorMessage(t){this.errorMessages.push(t)}renderAllMessages(t){return this.errorMessages.map(r=>r(t)).join(` +`)}};function Rt(e){return new _i(Ws(e))}function Ws(e){let t=new Tt;for(let[r,n]of Object.entries(e)){let i=new xn(r,Ks(n));t.addField(i)}return t}function Ks(e){if(typeof e=="string")return new re(JSON.stringify(e));if(typeof e=="number"||typeof e=="boolean")return new re(String(e));if(typeof e=="bigint")return new re(`${e}n`);if(e===null)return new re("null");if(e===void 0)return new re("undefined");if(bt(e))return new re(`new Prisma.Decimal("${e.toFixed()}")`);if(e instanceof Uint8Array)return y.isBuffer(e)?new re(`Buffer.alloc(${e.byteLength})`):new re(`new Uint8Array(${e.byteLength})`);if(e instanceof Date){let t=mn(e)?e.toISOString():"Invalid Date";return new re(`new Date("${t}")`)}return e instanceof Ne?new re(`Prisma.${e._getName()}`):At(e)?new re(`prisma.${qe(e.modelName)}.$fields.${e.name}`):Array.isArray(e)?Fp(e):typeof e=="object"?Ws(e):new re(Object.prototype.toString.call(e))}function Fp(e){let t=new Pt;for(let r of e)t.addItem(Ks(r));return t}function Pn(e,t){let r=t==="pretty"?Vs:hn,n=e.renderAllMessages(r),i=new Et(0,{colors:r}).write(e).toString();return{message:n,args:i}}function Tn({args:e,errors:t,errorFormat:r,callsite:n,originalMethod:i,clientVersion:o,globalOmit:s}){let a=Rt(e);for(let R of t)fn(R,a,s);let{message:f,args:w}=Pn(a,r),A=dn({message:f,callsite:n,originalMethod:i,showColors:r==="pretty",callArguments:w});throw new ie(A,{clientVersion:o})}c();u();p();m();d();l();c();u();p();m();d();l();function Ie(e){return e.replace(/^./,t=>t.toLowerCase())}c();u();p();m();d();l();function Ys(e,t,r){let n=Ie(r);return!t.result||!(t.result.$allModels||t.result[n])?e:$p({...e,...zs(t.name,e,t.result.$allModels),...zs(t.name,e,t.result[n])})}function $p(e){let t=new Ce,r=(n,i)=>t.getOrCreate(n,()=>i.has(n)?[n]:(i.add(n),e[n]?e[n].needs.flatMap(o=>r(o,i)):[n]));return pn(e,n=>({...n,needs:r(n.name,new Set)}))}function zs(e,t,r){return r?pn(r,({needs:n,compute:i},o)=>({name:o,needs:n?Object.keys(n).filter(s=>n[s]):[],compute:Vp(t,o,i)})):{}}function Vp(e,t,r){let n=e?.[t]?.compute;return n?i=>r({...i,[t]:n(i)}):r}function Zs(e,t){if(!t)return e;let r={...e};for(let n of Object.values(t))if(e[n.name])for(let i of n.needs)r[i]=!0;return r}function Xs(e,t){if(!t)return e;let r={...e};for(let n of Object.values(t))if(!e[n.name])for(let i of n.needs)delete r[i];return r}var vn=class{constructor(t,r){this.extension=t;this.previous=r}computedFieldsCache=new Ce;modelExtensionsCache=new Ce;queryCallbacksCache=new Ce;clientExtensions=nr(()=>this.extension.client?{...this.previous?.getAllClientExtensions(),...this.extension.client}:this.previous?.getAllClientExtensions());batchCallbacks=nr(()=>{let t=this.previous?.getAllBatchQueryCallbacks()??[],r=this.extension.query?.$__internalBatch;return r?t.concat(r):t});getAllComputedFields(t){return this.computedFieldsCache.getOrCreate(t,()=>Ys(this.previous?.getAllComputedFields(t),this.extension,t))}getAllClientExtensions(){return this.clientExtensions.get()}getAllModelExtensions(t){return this.modelExtensionsCache.getOrCreate(t,()=>{let r=Ie(t);return!this.extension.model||!(this.extension.model[r]||this.extension.model.$allModels)?this.previous?.getAllModelExtensions(t):{...this.previous?.getAllModelExtensions(t),...this.extension.model.$allModels,...this.extension.model[r]}})}getAllQueryCallbacks(t,r){return this.queryCallbacksCache.getOrCreate(`${t}:${r}`,()=>{let n=this.previous?.getAllQueryCallbacks(t,r)??[],i=[],o=this.extension.query;return!o||!(o[t]||o.$allModels||o[r]||o.$allOperations)?n:(o[t]!==void 0&&(o[t][r]!==void 0&&i.push(o[t][r]),o[t].$allOperations!==void 0&&i.push(o[t].$allOperations)),t!=="$none"&&o.$allModels!==void 0&&(o.$allModels[r]!==void 0&&i.push(o.$allModels[r]),o.$allModels.$allOperations!==void 0&&i.push(o.$allModels.$allOperations)),o[r]!==void 0&&i.push(o[r]),o.$allOperations!==void 0&&i.push(o.$allOperations),n.concat(i))})}getAllBatchQueryCallbacks(){return this.batchCallbacks.get()}},Ct=class e{constructor(t){this.head=t}static empty(){return new e}static single(t){return new e(new vn(t))}isEmpty(){return this.head===void 0}append(t){return new e(new vn(t,this.head))}getAllComputedFields(t){return this.head?.getAllComputedFields(t)}getAllClientExtensions(){return this.head?.getAllClientExtensions()}getAllModelExtensions(t){return this.head?.getAllModelExtensions(t)}getAllQueryCallbacks(t,r){return this.head?.getAllQueryCallbacks(t,r)??[]}getAllBatchQueryCallbacks(){return this.head?.getAllBatchQueryCallbacks()??[]}};c();u();p();m();d();l();var An=class{constructor(t){this.name=t}};function ea(e){return e instanceof An}function ta(e){return new An(e)}c();u();p();m();d();l();c();u();p();m();d();l();var ra=Symbol(),dr=class{constructor(t){if(t!==ra)throw new Error("Skip instance can not be constructed directly")}ifUndefined(t){return t===void 0?Rn:t}},Rn=new dr(ra);function ke(e){return e instanceof dr}var qp={findUnique:"findUnique",findUniqueOrThrow:"findUniqueOrThrow",findFirst:"findFirst",findFirstOrThrow:"findFirstOrThrow",findMany:"findMany",count:"aggregate",create:"createOne",createMany:"createMany",createManyAndReturn:"createManyAndReturn",update:"updateOne",updateMany:"updateMany",updateManyAndReturn:"updateManyAndReturn",upsert:"upsertOne",delete:"deleteOne",deleteMany:"deleteMany",executeRaw:"executeRaw",queryRaw:"queryRaw",aggregate:"aggregate",groupBy:"groupBy",runCommandRaw:"runCommandRaw",findRaw:"findRaw",aggregateRaw:"aggregateRaw"},na="explicitly `undefined` values are not allowed";function Cn({modelName:e,action:t,args:r,runtimeDataModel:n,extensions:i=Ct.empty(),callsite:o,clientMethod:s,errorFormat:a,clientVersion:f,previewFeatures:w,globalOmit:A}){let R=new Mi({runtimeDataModel:n,modelName:e,action:t,rootArgs:r,callsite:o,extensions:i,selectionPath:[],argumentPath:[],originalMethod:s,errorFormat:a,clientVersion:f,previewFeatures:w,globalOmit:A});return{modelName:e,action:qp[t],query:fr(r,R)}}function fr({select:e,include:t,...r}={},n){let i=r.omit;return delete r.omit,{arguments:oa(r,n),selection:Bp(e,t,i,n)}}function Bp(e,t,r,n){return e?(t?n.throwValidationError({kind:"MutuallyExclusiveFields",firstField:"include",secondField:"select",selectionPath:n.getSelectionPath()}):r&&n.throwValidationError({kind:"MutuallyExclusiveFields",firstField:"omit",secondField:"select",selectionPath:n.getSelectionPath()}),Gp(e,n)):jp(n,t,r)}function jp(e,t,r){let n={};return e.modelOrType&&!e.isRawAction()&&(n.$composites=!0,n.$scalars=!0),t&&Qp(n,t,e),Hp(n,r,e),n}function Qp(e,t,r){for(let[n,i]of Object.entries(t)){if(ke(i))continue;let o=r.nestSelection(n);if(Ni(i,o),i===!1||i===void 0){e[n]=!1;continue}let s=r.findField(n);if(s&&s.kind!=="object"&&r.throwValidationError({kind:"IncludeOnScalar",selectionPath:r.getSelectionPath().concat(n),outputType:r.getOutputTypeDescription()}),s){e[n]=fr(i===!0?{}:i,o);continue}if(i===!0){e[n]=!0;continue}e[n]=fr(i,o)}}function Hp(e,t,r){let n=r.getComputedFields(),i={...r.getGlobalOmit(),...t},o=Xs(i,n);for(let[s,a]of Object.entries(o)){if(ke(a))continue;Ni(a,r.nestSelection(s));let f=r.findField(s);n?.[s]&&!f||(e[s]=!a)}}function Gp(e,t){let r={},n=t.getComputedFields(),i=Zs(e,n);for(let[o,s]of Object.entries(i)){if(ke(s))continue;let a=t.nestSelection(o);Ni(s,a);let f=t.findField(o);if(!(n?.[o]&&!f)){if(s===!1||s===void 0||ke(s)){r[o]=!1;continue}if(s===!0){f?.kind==="object"?r[o]=fr({},a):r[o]=!0;continue}r[o]=fr(s,a)}}return r}function ia(e,t){if(e===null)return null;if(typeof e=="string"||typeof e=="number"||typeof e=="boolean")return e;if(typeof e=="bigint")return{$type:"BigInt",value:String(e)};if(wt(e)){if(mn(e))return{$type:"DateTime",value:e.toISOString()};t.throwValidationError({kind:"InvalidArgumentValue",selectionPath:t.getSelectionPath(),argumentPath:t.getArgumentPath(),argument:{name:t.getArgumentName(),typeNames:["Date"]},underlyingError:"Provided Date object is invalid"})}if(ea(e))return{$type:"Param",value:e.name};if(At(e))return{$type:"FieldRef",value:{_ref:e.name,_container:e.modelName}};if(Array.isArray(e))return Jp(e,t);if(ArrayBuffer.isView(e)){let{buffer:r,byteOffset:n,byteLength:i}=e;return{$type:"Bytes",value:y.from(r,n,i).toString("base64")}}if(Wp(e))return e.values;if(bt(e))return{$type:"Decimal",value:e.toFixed()};if(e instanceof Ne){if(e!==En.instances[e._getName()])throw new Error("Invalid ObjectEnumValue");return{$type:"Enum",value:e._getName()}}if(Kp(e))return e.toJSON();if(typeof e=="object")return oa(e,t);t.throwValidationError({kind:"InvalidArgumentValue",selectionPath:t.getSelectionPath(),argumentPath:t.getArgumentPath(),argument:{name:t.getArgumentName(),typeNames:[]},underlyingError:`We could not serialize ${Object.prototype.toString.call(e)} value. Serialize the object to JSON or implement a ".toJSON()" method on it`})}function oa(e,t){if(e.$type)return{$type:"Raw",value:e};let r={};for(let n in e){let i=e[n],o=t.nestArgument(n);ke(i)||(i!==void 0?r[n]=ia(i,o):t.isPreviewFeatureOn("strictUndefinedChecks")&&t.throwValidationError({kind:"InvalidArgumentValue",argumentPath:o.getArgumentPath(),selectionPath:t.getSelectionPath(),argument:{name:t.getArgumentName(),typeNames:[]},underlyingError:na}))}return r}function Jp(e,t){let r=[];for(let n=0;n({name:t.name,typeName:"boolean",isRelation:t.kind==="object"}))}}isRawAction(){return["executeRaw","queryRaw","runCommandRaw","findRaw","aggregateRaw"].includes(this.params.action)}isPreviewFeatureOn(t){return this.params.previewFeatures.includes(t)}getComputedFields(){if(this.params.modelName)return this.params.extensions.getAllComputedFields(this.params.modelName)}findField(t){return this.modelOrType?.fields.find(r=>r.name===t)}nestSelection(t){let r=this.findField(t),n=r?.kind==="object"?r.type:void 0;return new e({...this.params,modelName:n,selectionPath:this.params.selectionPath.concat(t)})}getGlobalOmit(){return this.params.modelName&&this.shouldApplyGlobalOmit()?this.params.globalOmit?.[qe(this.params.modelName)]??{}:{}}shouldApplyGlobalOmit(){switch(this.params.action){case"findFirst":case"findFirstOrThrow":case"findUniqueOrThrow":case"findMany":case"upsert":case"findUnique":case"createManyAndReturn":case"create":case"update":case"updateManyAndReturn":case"delete":return!0;case"executeRaw":case"aggregateRaw":case"runCommandRaw":case"findRaw":case"createMany":case"deleteMany":case"groupBy":case"updateMany":case"count":case"aggregate":case"queryRaw":return!1;default:Me(this.params.action,"Unknown action")}}nestArgument(t){return new e({...this.params,argumentPath:this.params.argumentPath.concat(t)})}};c();u();p();m();d();l();function sa(e){if(!e._hasPreviewFlag("metrics"))throw new ie("`metrics` preview feature must be enabled in order to access metrics API",{clientVersion:e._clientVersion})}var St=class{_client;constructor(t){this._client=t}prometheus(t){return sa(this._client),this._client._engine.metrics({format:"prometheus",...t})}json(t){return sa(this._client),this._client._engine.metrics({format:"json",...t})}};c();u();p();m();d();l();function aa(e,t){let r=nr(()=>zp(t));Object.defineProperty(e,"dmmf",{get:()=>r.get()})}function zp(e){throw new Error("Prisma.dmmf is not available when running in edge runtimes.")}function Li(e){return Object.entries(e).map(([t,r])=>({name:t,...r}))}c();u();p();m();d();l();var Ui=new WeakMap,Sn="$$PrismaTypedSql",gr=class{constructor(t,r){Ui.set(this,{sql:t,values:r}),Object.defineProperty(this,Sn,{value:Sn})}get sql(){return Ui.get(this).sql}get values(){return Ui.get(this).values}};function la(e){return(...t)=>new gr(e,t)}function In(e){return e!=null&&e[Sn]===Sn}c();u();p();m();d();l();var eu=$e(Pi());c();u();p();m();d();l();ca();gs();xs();c();u();p();m();d();l();var fe=class e{constructor(t,r){if(t.length-1!==r.length)throw t.length===0?new TypeError("Expected at least 1 string"):new TypeError(`Expected ${t.length} strings to have ${t.length-1} values`);let n=r.reduce((s,a)=>s+(a instanceof e?a.values.length:1),0);this.values=new Array(n),this.strings=new Array(n+1),this.strings[0]=t[0];let i=0,o=0;for(;ie.getPropertyValue(r))},getPropertyDescriptor(r){return e.getPropertyDescriptor?.(r)}}}c();u();p();m();d();l();c();u();p();m();d();l();var On={enumerable:!0,configurable:!0,writable:!0};function Dn(e){let t=new Set(e);return{getPrototypeOf:()=>Object.prototype,getOwnPropertyDescriptor:()=>On,has:(r,n)=>t.has(n),set:(r,n,i)=>t.add(n)&&Reflect.set(r,n,i),ownKeys:()=>[...t]}}var ma=Symbol.for("nodejs.util.inspect.custom");function Pe(e,t){let r=Yp(t),n=new Set,i=new Proxy(e,{get(o,s){if(n.has(s))return o[s];let a=r.get(s);return a?a.getPropertyValue(s):o[s]},has(o,s){if(n.has(s))return!0;let a=r.get(s);return a?a.has?.(s)??!0:Reflect.has(o,s)},ownKeys(o){let s=da(Reflect.ownKeys(o),r),a=da(Array.from(r.keys()),r);return[...new Set([...s,...a,...n])]},set(o,s,a){return r.get(s)?.getPropertyDescriptor?.(s)?.writable===!1?!1:(n.add(s),Reflect.set(o,s,a))},getOwnPropertyDescriptor(o,s){let a=Reflect.getOwnPropertyDescriptor(o,s);if(a&&!a.configurable)return a;let f=r.get(s);return f?f.getPropertyDescriptor?{...On,...f?.getPropertyDescriptor(s)}:On:a},defineProperty(o,s,a){return n.add(s),Reflect.defineProperty(o,s,a)},getPrototypeOf:()=>Object.prototype});return i[ma]=function(){let o={...this};return delete o[ma],o},i}function Yp(e){let t=new Map;for(let r of e){let n=r.getKeys();for(let i of n)t.set(i,r)}return t}function da(e,t){return e.filter(r=>t.get(r)?.has?.(r)??!0)}c();u();p();m();d();l();function It(e){return{getKeys(){return e},has(){return!1},getPropertyValue(){}}}c();u();p();m();d();l();function kt(e,t){return{batch:e,transaction:t?.kind==="batch"?{isolationLevel:t.options.isolationLevel}:void 0}}c();u();p();m();d();l();function fa(e){if(e===void 0)return"";let t=Rt(e);return new Et(0,{colors:hn}).write(t).toString()}c();u();p();m();d();l();var Zp="P2037";function _n({error:e,user_facing_error:t},r,n){return t.error_code?new X(Xp(t,n),{code:t.error_code,clientVersion:r,meta:t.meta,batchRequestIdx:t.batch_request_idx}):new ne(e,{clientVersion:r,batchRequestIdx:t.batch_request_idx})}function Xp(e,t){let r=e.message;return(t==="postgresql"||t==="postgres"||t==="mysql")&&e.error_code===Zp&&(r+=` +Prisma Accelerate has built-in connection pooling to prevent such errors: https://pris.ly/client/error-accelerate`),r}c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();var Vi=class{getLocation(){return null}};function je(e){return typeof $EnabledCallSite=="function"&&e!=="minimal"?new $EnabledCallSite:new Vi}c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();var ga={_avg:!0,_count:!0,_sum:!0,_min:!0,_max:!0};function Ot(e={}){let t=tm(e);return Object.entries(t).reduce((n,[i,o])=>(ga[i]!==void 0?n.select[i]={select:o}:n[i]=o,n),{select:{}})}function tm(e={}){return typeof e._count=="boolean"?{...e,_count:{_all:e._count}}:e}function Mn(e={}){return t=>(typeof e._count=="boolean"&&(t._count=t._count._all),t)}function ya(e,t){let r=Mn(e);return t({action:"aggregate",unpacker:r,argsMapper:Ot})(e)}c();u();p();m();d();l();function rm(e={}){let{select:t,...r}=e;return typeof t=="object"?Ot({...r,_count:t}):Ot({...r,_count:{_all:!0}})}function nm(e={}){return typeof e.select=="object"?t=>Mn(e)(t)._count:t=>Mn(e)(t)._count._all}function ha(e,t){return t({action:"count",unpacker:nm(e),argsMapper:rm})(e)}c();u();p();m();d();l();function im(e={}){let t=Ot(e);if(Array.isArray(t.by))for(let r of t.by)typeof r=="string"&&(t.select[r]=!0);else typeof t.by=="string"&&(t.select[t.by]=!0);return t}function om(e={}){return t=>(typeof e?._count=="boolean"&&t.forEach(r=>{r._count=r._count._all}),t)}function wa(e,t){return t({action:"groupBy",unpacker:om(e),argsMapper:im})(e)}function ba(e,t,r){if(t==="aggregate")return n=>ya(n,r);if(t==="count")return n=>ha(n,r);if(t==="groupBy")return n=>wa(n,r)}c();u();p();m();d();l();function Ea(e,t){let r=t.fields.filter(i=>!i.relationName),n=Os(r,"name");return new Proxy({},{get(i,o){if(o in i||typeof o=="symbol")return i[o];let s=n[o];if(s)return new lr(e,o,s.type,s.isList,s.kind==="enum")},...Dn(Object.keys(n))})}c();u();p();m();d();l();c();u();p();m();d();l();var xa=e=>Array.isArray(e)?e:e.split("."),qi=(e,t)=>xa(t).reduce((r,n)=>r&&r[n],e),Pa=(e,t,r)=>xa(t).reduceRight((n,i,o,s)=>Object.assign({},qi(e,s.slice(0,o)),{[i]:n}),r);function sm(e,t){return e===void 0||t===void 0?[]:[...t,"select",e]}function am(e,t,r){return t===void 0?e??{}:Pa(t,r,e||!0)}function Bi(e,t,r,n,i,o){let a=e._runtimeDataModel.models[t].fields.reduce((f,w)=>({...f,[w.name]:w}),{});return f=>{let w=je(e._errorFormat),A=sm(n,i),R=am(f,o,A),S=r({dataPath:A,callsite:w})(R),C=lm(e,t);return new Proxy(S,{get(L,k){if(!C.includes(k))return L[k];let De=[a[k].type,r,k],ue=[A,R];return Bi(e,...De,...ue)},...Dn([...C,...Object.getOwnPropertyNames(S)])})}}function lm(e,t){return e._runtimeDataModel.models[t].fields.filter(r=>r.kind==="object").map(r=>r.name)}var cm=["findUnique","findUniqueOrThrow","findFirst","findFirstOrThrow","create","update","upsert","delete"],um=["aggregate","count","groupBy"];function ji(e,t){let r=e._extensions.getAllModelExtensions(t)??{},n=[pm(e,t),dm(e,t),yr(r),le("name",()=>t),le("$name",()=>t),le("$parent",()=>e._appliedParent)];return Pe({},n)}function pm(e,t){let r=Ie(t),n=Object.keys(ir).concat("count");return{getKeys(){return n},getPropertyValue(i){let o=i,s=a=>f=>{let w=je(e._errorFormat);return e._createPrismaPromise(A=>{let R={args:f,dataPath:[],action:o,model:t,clientMethod:`${r}.${i}`,jsModelName:r,transaction:A,callsite:w};return e._request({...R,...a})},{action:o,args:f,model:t})};return cm.includes(o)?Bi(e,t,s):mm(i)?ba(e,i,s):s({})}}}function mm(e){return um.includes(e)}function dm(e,t){return et(le("fields",()=>{let r=e._runtimeDataModel.models[t];return Ea(t,r)}))}c();u();p();m();d();l();function Ta(e){return e.replace(/^./,t=>t.toUpperCase())}var Qi=Symbol();function hr(e){let t=[fm(e),gm(e),le(Qi,()=>e),le("$parent",()=>e._appliedParent)],r=e._extensions.getAllClientExtensions();return r&&t.push(yr(r)),Pe(e,t)}function fm(e){let t=Object.getPrototypeOf(e._originalClient),r=[...new Set(Object.getOwnPropertyNames(t))];return{getKeys(){return r},getPropertyValue(n){return e[n]}}}function gm(e){let t=Object.keys(e._runtimeDataModel.models),r=t.map(Ie),n=[...new Set(t.concat(r))];return et({getKeys(){return n},getPropertyValue(i){let o=Ta(i);if(e._runtimeDataModel.models[o]!==void 0)return ji(e,o);if(e._runtimeDataModel.models[i]!==void 0)return ji(e,i)},getPropertyDescriptor(i){if(!r.includes(i))return{enumerable:!1}}})}function va(e){return e[Qi]?e[Qi]:e}function Aa(e){if(typeof e=="function")return e(this);if(e.client?.__AccelerateEngine){let r=e.client.__AccelerateEngine;this._originalClient._engine=new r(this._originalClient._accelerateEngineConfig)}let t=Object.create(this._originalClient,{_extensions:{value:this._extensions.append(e)},_appliedParent:{value:this,configurable:!0},$on:{value:void 0}});return hr(t)}c();u();p();m();d();l();c();u();p();m();d();l();function Ra({result:e,modelName:t,select:r,omit:n,extensions:i}){let o=i.getAllComputedFields(t);if(!o)return e;let s=[],a=[];for(let f of Object.values(o)){if(n){if(n[f.name])continue;let w=f.needs.filter(A=>n[A]);w.length>0&&a.push(It(w))}else if(r){if(!r[f.name])continue;let w=f.needs.filter(A=>!r[A]);w.length>0&&a.push(It(w))}ym(e,f.needs)&&s.push(hm(f,Pe(e,s)))}return s.length>0||a.length>0?Pe(e,[...s,...a]):e}function ym(e,t){return t.every(r=>Ri(e,r))}function hm(e,t){return et(le(e.name,()=>e.compute(t)))}c();u();p();m();d();l();function Nn({visitor:e,result:t,args:r,runtimeDataModel:n,modelName:i}){if(Array.isArray(t)){for(let s=0;sA.name===o);if(!f||f.kind!=="object"||!f.relationName)continue;let w=typeof s=="object"?s:{};t[o]=Nn({visitor:i,result:t[o],args:w,modelName:f.type,runtimeDataModel:n})}}function Sa({result:e,modelName:t,args:r,extensions:n,runtimeDataModel:i,globalOmit:o}){return n.isEmpty()||e==null||typeof e!="object"||!i.models[t]?e:Nn({result:e,args:r??{},modelName:t,runtimeDataModel:i,visitor:(a,f,w)=>{let A=Ie(f);return Ra({result:a,modelName:A,select:w.select,omit:w.select?void 0:{...o?.[A],...w.omit},extensions:n})}})}c();u();p();m();d();l();c();u();p();m();d();l();l();c();u();p();m();d();l();var wm=["$connect","$disconnect","$on","$transaction","$extends"],Ia=wm;function ka(e){if(e instanceof fe)return bm(e);if(In(e))return Em(e);if(Array.isArray(e)){let r=[e[0]];for(let n=1;n{let o=t.customDataProxyFetch;return"transaction"in t&&i!==void 0&&(t.transaction?.kind==="batch"&&t.transaction.lock.then(),t.transaction=i),n===r.length?e._executeRequest(t):r[n]({model:t.model,operation:t.model?t.action:t.clientMethod,args:ka(t.args??{}),__internalParams:t,query:(s,a=t)=>{let f=a.customDataProxyFetch;return a.customDataProxyFetch=La(o,f),a.args=s,Da(e,a,r,n+1)}})})}function _a(e,t){let{jsModelName:r,action:n,clientMethod:i}=t,o=r?n:i;if(e._extensions.isEmpty())return e._executeRequest(t);let s=e._extensions.getAllQueryCallbacks(r??"$none",o);return Da(e,t,s)}function Ma(e){return t=>{let r={requests:t},n=t[0].extensions.getAllBatchQueryCallbacks();return n.length?Na(r,n,0,e):e(r)}}function Na(e,t,r,n){if(r===t.length)return n(e);let i=e.customDataProxyFetch,o=e.requests[0].transaction;return t[r]({args:{queries:e.requests.map(s=>({model:s.modelName,operation:s.action,args:s.args})),transaction:o?{isolationLevel:o.kind==="batch"?o.isolationLevel:void 0}:void 0},__internalParams:e,query(s,a=e){let f=a.customDataProxyFetch;return a.customDataProxyFetch=La(i,f),Na(a,t,r+1,n)}})}var Oa=e=>e;function La(e=Oa,t=Oa){return r=>e(t(r))}c();u();p();m();d();l();var Ua=K("prisma:client"),Fa={Vercel:"vercel","Netlify CI":"netlify"};function $a({postinstall:e,ciName:t,clientVersion:r,generator:n}){if(Ua("checkPlatformCaching:postinstall",e),Ua("checkPlatformCaching:ciName",t),e===!0&&!(n?.output&&typeof(n.output.fromEnvVar??n.output.value)=="string")&&t&&t in Fa){let i=`Prisma has detected that this project was built on ${t}, which caches dependencies. This leads to an outdated Prisma Client because Prisma's auto-generation isn't triggered. To fix this, make sure to run the \`prisma generate\` command during the build process. -Learn how: https://pris.ly/d/${Fa[t]}-build`; - throw (console.error(i), new F(i, r)); - } -} -c(); -u(); -p(); -m(); -d(); -l(); -function Va(e, t) { - return e - ? e.datasources - ? e.datasources - : e.datasourceUrl - ? { [t[0]]: { url: e.datasourceUrl } } - : {} - : {}; -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -function qa(e) { - return e - ? e - .replace(/".*"/g, '"X"') - .replace(/[\s:\[]([+-]?([0-9]*[.])?[0-9]+)/g, (t) => `${t[0]}5`) - : ""; -} -c(); -u(); -p(); -m(); -d(); -l(); -function Ba(e) { - return e - .split( - ` -`, - ) - .map((t) => - t - .replace( - /^\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)\s*/, - "", - ) - .replace(/\+\d+\s*ms$/, ""), - ).join(` -`); -} -c(); -u(); -p(); -m(); -d(); -l(); -var ja = $e(Ss()); -function Qa({ - title: e, - user: t = "prisma", - repo: r = "prisma", - template: n = "bug_report.yml", - body: i, -}) { - return (0, ja.default)({ user: t, repo: r, template: n, title: e, body: i }); -} -function Ha({ - version: e, - binaryTarget: t, - title: r, - description: n, - engineVersion: i, - database: o, - query: s, -}) { - let a = ms(6e3 - (s?.length ?? 0)), - f = Ba(ht(a)), - w = n - ? `# Description +Learn how: https://pris.ly/d/${Fa[t]}-build`;throw console.error(i),new F(i,r)}}c();u();p();m();d();l();function Va(e,t){return e?e.datasources?e.datasources:e.datasourceUrl?{[t[0]]:{url:e.datasourceUrl}}:{}:{}}c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();function qa(e){return e?e.replace(/".*"/g,'"X"').replace(/[\s:\[]([+-]?([0-9]*[.])?[0-9]+)/g,t=>`${t[0]}5`):""}c();u();p();m();d();l();function Ba(e){return e.split(` +`).map(t=>t.replace(/^\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)\s*/,"").replace(/\+\d+\s*ms$/,"")).join(` +`)}c();u();p();m();d();l();var ja=$e(Ss());function Qa({title:e,user:t="prisma",repo:r="prisma",template:n="bug_report.yml",body:i}){return(0,ja.default)({user:t,repo:r,template:n,title:e,body:i})}function Ha({version:e,binaryTarget:t,title:r,description:n,engineVersion:i,database:o,query:s}){let a=ms(6e3-(s?.length??0)),f=Ba(ht(a)),w=n?`# Description \`\`\` ${n} -\`\`\`` - : "", - A = ht(`Hi Prisma Team! My Prisma Client just crashed. This is the report: +\`\`\``:"",A=ht(`Hi Prisma Team! My Prisma Client just crashed. This is the report: ## Versions | Name | Version | @@ -6363,11 +45,9 @@ ${f} ## Prisma Engine Query \`\`\` -${s ? qa(s) : ""} +${s?qa(s):""} \`\`\` -`), - R = Qa({ title: r, body: A }); - return `${r} +`),R=Qa({title:r,body:A});return`${r} This is a non-recoverable error which probably happens when the Prisma Query Engine has a panic. @@ -6376,5781 +56,30 @@ ${tn(R)} If you want the Prisma team to look into it, please open the link above \u{1F64F} To increase the chance of success, please post your schema and a snippet of how you used Prisma Client in the issue. -`; -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -l(); -function $(e, t) { - throw new Error(t); -} -function Hi(e, t) { - return ( - e === t || - (e !== null && - t !== null && - typeof e == "object" && - typeof t == "object" && - Object.keys(e).length === Object.keys(t).length && - Object.keys(e).every((r) => Hi(e[r], t[r]))) - ); -} -function Dt(e, t) { - let r = Object.keys(e), - n = Object.keys(t); - return (r.length < n.length ? r : n).every((o) => { - if (typeof e[o] == typeof t[o] && typeof e[o] != "object") - return e[o] === t[o]; - if (se.isDecimal(e[o]) || se.isDecimal(t[o])) { - let s = Ga(e[o]), - a = Ga(t[o]); - return s && a && s.equals(a); - } else if (e[o] instanceof Uint8Array || t[o] instanceof Uint8Array) { - let s = Ja(e[o]), - a = Ja(t[o]); - return s && a && s.equals(a); - } else { - if (e[o] instanceof Date || t[o] instanceof Date) - return Wa(e[o])?.getTime() === Wa(t[o])?.getTime(); - if (typeof e[o] == "bigint" || typeof t[o] == "bigint") - return Ka(e[o]) === Ka(t[o]); - if (typeof e[o] == "number" || typeof t[o] == "number") - return za(e[o]) === za(t[o]); - } - return Hi(e[o], t[o]); - }); -} -function Ga(e) { - return se.isDecimal(e) - ? e - : typeof e == "number" || typeof e == "string" - ? new se(e) - : void 0; -} -function Ja(e) { - return y.isBuffer(e) - ? e - : e instanceof Uint8Array - ? y.from(e.buffer, e.byteOffset, e.byteLength) - : typeof e == "string" - ? y.from(e, "base64") - : void 0; -} -function Wa(e) { - return e instanceof Date - ? e - : typeof e == "string" || typeof e == "number" - ? new Date(e) - : void 0; -} -function Ka(e) { - return typeof e == "bigint" - ? e - : typeof e == "number" || typeof e == "string" - ? BigInt(e) - : void 0; -} -function za(e) { - return typeof e == "number" ? e : typeof e == "string" ? Number(e) : void 0; -} -function br(e) { - return JSON.stringify(e, (t, r) => - typeof r == "bigint" - ? r.toString() - : ArrayBuffer.isView(r) - ? y.from(r.buffer, r.byteOffset, r.byteLength).toString("base64") - : r, - ); -} -function xm(e) { - return e !== null && typeof e == "object" && typeof e.$type == "string"; -} -function Pm(e, t) { - let r = {}; - for (let n of Object.keys(e)) r[n] = t(e[n], n); - return r; -} -function Qe(e) { - return e === null - ? e - : Array.isArray(e) - ? e.map(Qe) - : typeof e == "object" - ? xm(e) - ? Tm(e) - : e.constructor !== null && e.constructor.name !== "Object" - ? e - : Pm(e, Qe) - : e; -} -function Tm({ $type: e, value: t }) { - switch (e) { - case "BigInt": - return BigInt(t); - case "Bytes": { - let { buffer: r, byteOffset: n, byteLength: i } = y.from(t, "base64"); - return new Uint8Array(r, n, i); - } - case "DateTime": - return new Date(t); - case "Decimal": - return new v(t); - case "Json": - return JSON.parse(t); - default: - $(t, "Unknown tagged value"); - } -} -c(); -u(); -p(); -m(); -d(); -l(); -var ce = class extends Error { - name = "UserFacingError"; - code; - meta; - constructor(t, r, n) { - (super(t), (this.code = r), (this.meta = n ?? {})); - } - toQueryResponseErrorObject() { - return { - error: this.message, - user_facing_error: { - is_panic: !1, - message: this.message, - meta: this.meta, - error_code: this.code, - }, - }; - } -}; -function _t(e) { - if (!nn(e)) throw e; - let t = vm(e), - r = Ya(e); - throw !t || !r ? e : new ce(r, t, { driverAdapterError: e }); -} -function Ji(e) { - throw nn(e) - ? new ce( - `Raw query failed. Code: \`${e.cause.originalCode ?? "N/A"}\`. Message: \`${e.cause.originalMessage ?? Ya(e)}\``, - "P2010", - { driverAdapterError: e }, - ) - : e; -} -function vm(e) { - switch (e.cause.kind) { - case "AuthenticationFailed": - return "P1000"; - case "DatabaseNotReachable": - return "P1001"; - case "DatabaseDoesNotExist": - return "P1003"; - case "SocketTimeout": - return "P1008"; - case "DatabaseAlreadyExists": - return "P1009"; - case "DatabaseAccessDenied": - return "P1010"; - case "TlsConnectionError": - return "P1011"; - case "ConnectionClosed": - return "P1017"; - case "TransactionAlreadyClosed": - return "P1018"; - case "LengthMismatch": - return "P2000"; - case "UniqueConstraintViolation": - return "P2002"; - case "ForeignKeyConstraintViolation": - return "P2003"; - case "UnsupportedNativeDataType": - return "P2010"; - case "NullConstraintViolation": - return "P2011"; - case "ValueOutOfRange": - return "P2020"; - case "TableDoesNotExist": - return "P2021"; - case "ColumnNotFound": - return "P2022"; - case "InvalidIsolationLevel": - case "InconsistentColumnData": - return "P2023"; - case "MissingFullTextSearchIndex": - return "P2030"; - case "TransactionWriteConflict": - return "P2034"; - case "GenericJs": - return "P2036"; - case "TooManyConnections": - return "P2037"; - case "postgres": - case "sqlite": - case "mysql": - case "mssql": - return; - default: - $(e.cause, `Unknown error: ${e.cause}`); - } -} -function Ya(e) { - switch (e.cause.kind) { - case "AuthenticationFailed": - return `Authentication failed against the database server, the provided database credentials for \`${e.cause.user ?? "(not available)"}\` are not valid`; - case "DatabaseNotReachable": { - let t = - e.cause.host && e.cause.port - ? `${e.cause.host}:${e.cause.port}` - : e.cause.host; - return `Can't reach database server${t ? ` at ${t}` : ""}`; - } - case "DatabaseDoesNotExist": - return `Database \`${e.cause.db ?? "(not available)"}\` does not exist on the database server`; - case "SocketTimeout": - return "Operation has timed out"; - case "DatabaseAlreadyExists": - return `Database \`${e.cause.db ?? "(not available)"}\` already exists on the database server`; - case "DatabaseAccessDenied": - return `User was denied access on the database \`${e.cause.db ?? "(not available)"}\``; - case "TlsConnectionError": - return `Error opening a TLS connection: ${e.cause.reason}`; - case "ConnectionClosed": - return "Server has closed the connection."; - case "TransactionAlreadyClosed": - return e.cause.cause; - case "LengthMismatch": - return `The provided value for the column is too long for the column's type. Column: ${e.cause.column ?? "(not available)"}`; - case "UniqueConstraintViolation": - return `Unique constraint failed on the ${Gi(e.cause.constraint)}`; - case "ForeignKeyConstraintViolation": - return `Foreign key constraint violated on the ${Gi(e.cause.constraint)}`; - case "UnsupportedNativeDataType": - return `Failed to deserialize column of type '${e.cause.type}'. If you're using $queryRaw and this column is explicitly marked as \`Unsupported\` in your Prisma schema, try casting this column to any supported Prisma type such as \`String\`.`; - case "NullConstraintViolation": - return `Null constraint violation on the ${Gi(e.cause.constraint)}`; - case "ValueOutOfRange": - return `Value out of range for the type: ${e.cause.cause}`; - case "TableDoesNotExist": - return `The table \`${e.cause.table ?? "(not available)"}\` does not exist in the current database.`; - case "ColumnNotFound": - return `The column \`${e.cause.column ?? "(not available)"}\` does not exist in the current database.`; - case "InvalidIsolationLevel": - return `Error in connector: Conversion error: ${e.cause.level}`; - case "InconsistentColumnData": - return `Inconsistent column data: ${e.cause.cause}`; - case "MissingFullTextSearchIndex": - return "Cannot find a fulltext index to use for the native search, try adding a @@fulltext([Fields...]) to your schema"; - case "TransactionWriteConflict": - return "Transaction failed due to a write conflict or a deadlock. Please retry your transaction"; - case "GenericJs": - return `Error in external connector (id ${e.cause.id})`; - case "TooManyConnections": - return `Too many database connections opened: ${e.cause.cause}`; - case "sqlite": - case "postgres": - case "mysql": - case "mssql": - return; - default: - $(e.cause, `Unknown error: ${e.cause}`); - } -} -function Gi(e) { - return e && "fields" in e - ? `fields: (${e.fields.map((t) => `\`${t}\``).join(", ")})` - : e && "index" in e - ? `constraint: \`${e.index}\`` - : e && "foreignKey" in e - ? "foreign key" - : "(not available)"; -} -function Za(e, t) { - let r = e.map((i) => t.keys.reduce((o, s) => ((o[s] = Qe(i[s])), o), {})), - n = new Set(t.nestedSelection); - return t.arguments.map((i) => { - let o = r.findIndex((s) => Dt(s, i)); - if (o === -1) - return t.expectNonEmpty - ? new ce( - "An operation failed because it depends on one or more records that were required but not found", - "P2025", - ) - : null; - { - let s = Object.entries(e[o]).filter(([a]) => n.has(a)); - return Object.fromEntries(s); - } - }); -} -c(); -u(); -p(); -m(); -d(); -l(); -l(); -var G = class extends Error { - name = "DataMapperError"; -}; -function el(e, t, r) { - switch (t.type) { - case "affectedRows": - if (typeof e != "number") - throw new G(`Expected an affected rows count, got: ${typeof e} (${e})`); - return { count: e }; - case "object": - return Ki(e, t.fields, r, t.skipNulls); - case "field": - return Wi(e, "", t.fieldType, r); - default: - $(t, `Invalid data mapping type: '${t.type}'`); - } -} -function Ki(e, t, r, n) { - if (e === null) return null; - if (Array.isArray(e)) { - let i = e; - return (n && (i = i.filter((o) => o !== null)), i.map((o) => Xa(o, t, r))); - } - if (typeof e == "object") return Xa(e, t, r); - if (typeof e == "string") { - let i; - try { - i = JSON.parse(e); - } catch (o) { - throw new G( - "Expected an array or object, got a string that is not valid JSON", - { cause: o }, - ); - } - return Ki(i, t, r, n); - } - throw new G(`Expected an array or an object, got: ${typeof e}`); -} -function Xa(e, t, r) { - if (typeof e != "object") - throw new G(`Expected an object, but got '${typeof e}'`); - let n = {}; - for (let [i, o] of Object.entries(t)) - switch (o.type) { - case "affectedRows": - throw new G( - `Unexpected 'AffectedRows' node in data mapping for field '${i}'`, - ); - case "object": { - if (o.serializedName !== null && !Object.hasOwn(e, o.serializedName)) - throw new G( - `Missing data field (Object): '${i}'; node: ${JSON.stringify(o)}; data: ${JSON.stringify(e)}`, - ); - let s = o.serializedName !== null ? e[o.serializedName] : e; - n[i] = Ki(s, o.fields, r, o.skipNulls); - break; - } - case "field": - { - let s = o.dbName; - if (Object.hasOwn(e, s)) n[i] = Am(e[s], s, o.fieldType, r); - else - throw new G( - `Missing data field (Value): '${s}'; node: ${JSON.stringify(o)}; data: ${JSON.stringify(e)}`, - ); - } - break; - default: - $(o, `DataMapper: Invalid data mapping node type: '${o.type}'`); - } - return n; -} -function Am(e, t, r, n) { - return e === null - ? r.arity === "list" - ? [] - : null - : r.arity === "list" - ? e.map((o, s) => Wi(o, `${t}[${s}]`, r, n)) - : Wi(e, t, r, n); -} -function Wi(e, t, r, n) { - switch (r.type) { - case "unsupported": - return e; - case "string": { - if (typeof e != "string") - throw new G( - `Expected a string in column '${t}', got ${typeof e}: ${e}`, - ); - return e; - } - case "int": - switch (typeof e) { - case "number": - return Math.trunc(e); - case "string": { - let i = Math.trunc(Number(e)); - if (Number.isNaN(i) || !Number.isFinite(i)) - throw new G( - `Expected an integer in column '${t}', got string: ${e}`, - ); - if (!Number.isSafeInteger(i)) - throw new G( - `Integer value in column '${t}' is too large to represent as a JavaScript number without loss of precision, got: ${e}. Consider using BigInt type.`, - ); - return i; - } - default: - throw new G( - `Expected an integer in column '${t}', got ${typeof e}: ${e}`, - ); - } - case "bigint": { - if (typeof e != "number" && typeof e != "string") - throw new G( - `Expected a bigint in column '${t}', got ${typeof e}: ${e}`, - ); - return { $type: "BigInt", value: e }; - } - case "float": { - if (typeof e == "number") return e; - if (typeof e == "string") { - let i = Number(e); - if (Number.isNaN(i) && !/^[-+]?nan$/.test(e.toLowerCase())) - throw new G(`Expected a float in column '${t}', got string: ${e}`); - return i; - } - throw new G(`Expected a float in column '${t}', got ${typeof e}: ${e}`); - } - case "boolean": { - if (typeof e == "boolean") return e; - if (typeof e == "number") return e === 1; - if (typeof e == "string") { - if (e === "true" || e === "TRUE" || e === "1") return !0; - if (e === "false" || e === "FALSE" || e === "0") return !1; - throw new G( - `Expected a boolean in column '${t}', got ${typeof e}: ${e}`, - ); - } - if (Array.isArray(e)) { - for (let i of e) if (i !== 0) return !0; - return !1; - } - throw new G(`Expected a boolean in column '${t}', got ${typeof e}: ${e}`); - } - case "decimal": - if (typeof e != "number" && typeof e != "string" && !se.isDecimal(e)) - throw new G( - `Expected a decimal in column '${t}', got ${typeof e}: ${e}`, - ); - return { $type: "Decimal", value: e }; - case "datetime": { - if (typeof e == "string") return { $type: "DateTime", value: Cm(e) }; - if (typeof e == "number" || e instanceof Date) - return { $type: "DateTime", value: e }; - throw new G(`Expected a date in column '${t}', got ${typeof e}: ${e}`); - } - case "object": - return { $type: "Json", value: br(e) }; - case "json": - return { $type: "Json", value: `${e}` }; - case "bytes": { - switch (r.encoding) { - case "base64": - if (typeof e != "string") - throw new G( - `Expected a base64-encoded byte array in column '${t}', got ${typeof e}: ${e}`, - ); - return { $type: "Bytes", value: e }; - case "hex": - if (typeof e != "string" || !e.startsWith("\\x")) - throw new G( - `Expected a hex-encoded byte array in column '${t}', got ${typeof e}: ${e}`, - ); - return { - $type: "Bytes", - value: y.from(e.slice(2), "hex").toString("base64"), - }; - case "array": - if (Array.isArray(e)) - return { $type: "Bytes", value: y.from(e).toString("base64") }; - if (e instanceof Uint8Array) - return { $type: "Bytes", value: y.from(e).toString("base64") }; - throw new G( - `Expected a byte array in column '${t}', got ${typeof e}: ${e}`, - ); - default: - $(r.encoding, `DataMapper: Unknown bytes encoding: ${r.encoding}`); - } - break; - } - case "enum": { - let i = n[r.name]; - if (i === void 0) throw new G(`Unknown enum '${r.name}'`); - let o = i[`${e}`]; - if (o === void 0) - throw new G(`Value '${e}' not found in enum '${r.name}'`); - return o; - } - default: - $(r, `DataMapper: Unknown result type: ${r.type}`); - } -} -var Rm = /\d{2}:\d{2}:\d{2}(?:\.\d+)?(Z|[+-]\d{2}(:?\d{2})?)?$/; -function Cm(e) { - let t = Rm.exec(e); - if (t === null) return `${e}T00:00:00Z`; - let r = e, - [n, i, o] = t; - if ( - (i !== void 0 && i !== "Z" && o === void 0 - ? (r = `${e}:00`) - : i === void 0 && (r = `${e}Z`), - n.length === e.length) - ) - return `1970-01-01T${r}`; - let s = t.index - 1; - return (r[s] === " " && (r = `${r.slice(0, s)}T${r.slice(s + 1)}`), r); -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -var Er; -(function (e) { - ((e[(e.INTERNAL = 0)] = "INTERNAL"), - (e[(e.SERVER = 1)] = "SERVER"), - (e[(e.CLIENT = 2)] = "CLIENT"), - (e[(e.PRODUCER = 3)] = "PRODUCER"), - (e[(e.CONSUMER = 4)] = "CONSUMER")); -})(Er || (Er = {})); -function Sm(e) { - switch (e) { - case "postgresql": - case "postgres": - case "prisma+postgres": - return "postgresql"; - case "sqlserver": - return "mssql"; - case "mysql": - case "sqlite": - case "cockroachdb": - case "mongodb": - return e; - default: - $(e, `Unknown provider: ${e}`); - } -} -async function Ln({ - query: e, - tracingHelper: t, - provider: r, - onQuery: n, - execute: i, -}) { - return await t.runInChildSpan( - { - name: "db_query", - kind: Er.CLIENT, - attributes: { "db.query.text": e.sql, "db.system.name": Sm(r) }, - }, - async () => { - let o = new Date(), - s = b.now(), - a = await i(), - f = b.now(); - return ( - n?.({ timestamp: o, duration: f - s, query: e.sql, params: e.args }), - a - ); - }, - ); -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -function tt(e, t) { - var r = "000000000" + e; - return r.substr(r.length - t); -} -var tl = $e(ys(), 1); -function Im() { - try { - return tl.default.hostname(); - } catch { - return g.env._CLUSTER_NETWORK_NAME_ || g.env.COMPUTERNAME || "hostname"; - } -} -var rl = 2, - km = tt(g.pid.toString(36), rl), - nl = Im(), - Om = nl.length, - Dm = tt( - nl - .split("") - .reduce(function (e, t) { - return +e + t.charCodeAt(0); - }, +Om + 36) - .toString(36), - rl, - ); -function zi() { - return km + Dm; -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -function Un(e) { - return typeof e == "string" && /^c[a-z0-9]{20,32}$/.test(e); -} -function Yi(e) { - let n = Math.pow(36, 4), - i = 0; - function o() { - return tt(((Math.random() * n) << 0).toString(36), 4); - } - function s() { - return ((i = i < n ? i : 0), i++, i - 1); - } - function a() { - var f = "c", - w = new Date().getTime().toString(36), - A = tt(s().toString(36), 4), - R = e(), - S = o() + o(); - return f + w + A + R + S; - } - return ((a.fingerprint = e), (a.isCuid = Un), a); -} -var _m = Yi(zi); -var il = _m; -var tc = $e(Wl()); -c(); -u(); -p(); -m(); -d(); -l(); -Xe(); -c(); -u(); -p(); -m(); -d(); -l(); -var Kl = "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict"; -var bd = 128, - nt, - Lt; -function Ed(e) { - (!nt || nt.length < e - ? ((nt = y.allocUnsafe(e * bd)), Xt.getRandomValues(nt), (Lt = 0)) - : Lt + e > nt.length && (Xt.getRandomValues(nt), (Lt = 0)), - (Lt += e)); -} -function so(e = 21) { - Ed((e |= 0)); - let t = ""; - for (let r = Lt - e; r < Lt; r++) t += Kl[nt[r] & 63]; - return t; -} -c(); -u(); -p(); -m(); -d(); -l(); -Xe(); -var Yl = "0123456789ABCDEFGHJKMNPQRSTVWXYZ", - Rr = 32; -var xd = 16, - Zl = 10, - zl = 0xffffffffffff; -var it; -(function (e) { - ((e.Base32IncorrectEncoding = "B32_ENC_INVALID"), - (e.DecodeTimeInvalidCharacter = "DEC_TIME_CHAR"), - (e.DecodeTimeValueMalformed = "DEC_TIME_MALFORMED"), - (e.EncodeTimeNegative = "ENC_TIME_NEG"), - (e.EncodeTimeSizeExceeded = "ENC_TIME_SIZE_EXCEED"), - (e.EncodeTimeValueMalformed = "ENC_TIME_MALFORMED"), - (e.PRNGDetectFailure = "PRNG_DETECT"), - (e.ULIDInvalid = "ULID_INVALID"), - (e.Unexpected = "UNEXPECTED"), - (e.UUIDInvalid = "UUID_INVALID")); -})(it || (it = {})); -var ot = class extends Error { - constructor(t, r) { - (super(`${r} (${t})`), (this.name = "ULIDError"), (this.code = t)); - } -}; -function Pd(e) { - let t = Math.floor(e() * Rr); - return (t === Rr && (t = Rr - 1), Yl.charAt(t)); -} -function Td(e) { - let t = vd(), - r = (t && (t.crypto || t.msCrypto)) || (typeof yt < "u" ? yt : null); - if (typeof r?.getRandomValues == "function") - return () => { - let n = new Uint8Array(1); - return (r.getRandomValues(n), n[0] / 255); - }; - if (typeof r?.randomBytes == "function") - return () => r.randomBytes(1).readUInt8() / 255; - if (yt?.randomBytes) return () => yt.randomBytes(1).readUInt8() / 255; - throw new ot(it.PRNGDetectFailure, "Failed to find a reliable PRNG"); -} -function vd() { - return Cd() - ? self - : typeof window < "u" - ? window - : typeof globalThis < "u" || typeof globalThis < "u" - ? globalThis - : null; -} -function Ad(e, t) { - let r = ""; - for (; e > 0; e--) r = Pd(t) + r; - return r; -} -function Rd(e, t = Zl) { - if (isNaN(e)) - throw new ot(it.EncodeTimeValueMalformed, `Time must be a number: ${e}`); - if (e > zl) - throw new ot( - it.EncodeTimeSizeExceeded, - `Cannot encode a time larger than ${zl}: ${e}`, - ); - if (e < 0) throw new ot(it.EncodeTimeNegative, `Time must be positive: ${e}`); - if (Number.isInteger(e) === !1) - throw new ot(it.EncodeTimeValueMalformed, `Time must be an integer: ${e}`); - let r, - n = ""; - for (let i = t; i > 0; i--) - ((r = e % Rr), (n = Yl.charAt(r) + n), (e = (e - r) / Rr)); - return n; -} -function Cd() { - return typeof WorkerGlobalScope < "u" && self instanceof WorkerGlobalScope; -} -function Xl(e, t) { - let r = t || Td(), - n = !e || isNaN(e) ? Date.now() : e; - return Rd(n, Zl) + Ad(xd, r); -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -var oe = []; -for (let e = 0; e < 256; ++e) oe.push((e + 256).toString(16).slice(1)); -function qn(e, t = 0) { - return ( - oe[e[t + 0]] + - oe[e[t + 1]] + - oe[e[t + 2]] + - oe[e[t + 3]] + - "-" + - oe[e[t + 4]] + - oe[e[t + 5]] + - "-" + - oe[e[t + 6]] + - oe[e[t + 7]] + - "-" + - oe[e[t + 8]] + - oe[e[t + 9]] + - "-" + - oe[e[t + 10]] + - oe[e[t + 11]] + - oe[e[t + 12]] + - oe[e[t + 13]] + - oe[e[t + 14]] + - oe[e[t + 15]] - ).toLowerCase(); -} -c(); -u(); -p(); -m(); -d(); -l(); -Xe(); -var jn = new Uint8Array(256), - Bn = jn.length; -function Ut() { - return (Bn > jn.length - 16 && (sn(jn), (Bn = 0)), jn.slice(Bn, (Bn += 16))); -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -Xe(); -var ao = { randomUUID: on }; -function Sd(e, t, r) { - if (ao.randomUUID && !t && !e) return ao.randomUUID(); - e = e || {}; - let n = e.random ?? e.rng?.() ?? Ut(); - if (n.length < 16) throw new Error("Random bytes length must be >= 16"); - if (((n[6] = (n[6] & 15) | 64), (n[8] = (n[8] & 63) | 128), t)) { - if (((r = r || 0), r < 0 || r + 16 > t.length)) - throw new RangeError( - `UUID byte range ${r}:${r + 15} is out of buffer bounds`, - ); - for (let i = 0; i < 16; ++i) t[r + i] = n[i]; - return t; - } - return qn(n); -} -var lo = Sd; -c(); -u(); -p(); -m(); -d(); -l(); -var co = {}; -function Id(e, t, r) { - let n; - if (e) n = ec(e.random ?? e.rng?.() ?? Ut(), e.msecs, e.seq, t, r); - else { - let i = Date.now(), - o = Ut(); - (kd(co, i, o), (n = ec(o, co.msecs, co.seq, t, r))); - } - return t ?? qn(n); -} -function kd(e, t, r) { - return ( - (e.msecs ??= -1 / 0), - (e.seq ??= 0), - t > e.msecs - ? ((e.seq = (r[6] << 23) | (r[7] << 16) | (r[8] << 8) | r[9]), - (e.msecs = t)) - : ((e.seq = (e.seq + 1) | 0), e.seq === 0 && e.msecs++), - e - ); -} -function ec(e, t, r, n, i = 0) { - if (e.length < 16) throw new Error("Random bytes length must be >= 16"); - if (!n) ((n = new Uint8Array(16)), (i = 0)); - else if (i < 0 || i + 16 > n.length) - throw new RangeError( - `UUID byte range ${i}:${i + 15} is out of buffer bounds`, - ); - return ( - (t ??= Date.now()), - (r ??= ((e[6] * 127) << 24) | (e[7] << 16) | (e[8] << 8) | e[9]), - (n[i++] = (t / 1099511627776) & 255), - (n[i++] = (t / 4294967296) & 255), - (n[i++] = (t / 16777216) & 255), - (n[i++] = (t / 65536) & 255), - (n[i++] = (t / 256) & 255), - (n[i++] = t & 255), - (n[i++] = 112 | ((r >>> 28) & 15)), - (n[i++] = (r >>> 20) & 255), - (n[i++] = 128 | ((r >>> 14) & 63)), - (n[i++] = (r >>> 6) & 255), - (n[i++] = ((r << 2) & 255) | (e[10] & 3)), - (n[i++] = e[11]), - (n[i++] = e[12]), - (n[i++] = e[13]), - (n[i++] = e[14]), - (n[i++] = e[15]), - n - ); -} -var uo = Id; -var Qn = class { - #t = {}; - constructor() { - (this.register("uuid", new mo()), - this.register("cuid", new fo()), - this.register("ulid", new go()), - this.register("nanoid", new yo()), - this.register("product", new ho())); - } - snapshot() { - return Object.create(this.#t, { now: { value: new po() } }); - } - register(t, r) { - this.#t[t] = r; - } - }, - po = class { - #t = new Date(); - generate() { - return this.#t.toISOString(); - } - }, - mo = class { - generate(t) { - if (t === 4) return lo(); - if (t === 7) return uo(); - throw new Error("Invalid UUID generator arguments"); - } - }, - fo = class { - generate(t) { - if (t === 1) return il(); - if (t === 2) return (0, tc.createId)(); - throw new Error("Invalid CUID generator arguments"); - } - }, - go = class { - generate() { - return Xl(); - } - }, - yo = class { - generate(t) { - if (typeof t == "number") return so(t); - if (t === void 0) return so(); - throw new Error("Invalid Nanoid generator arguments"); - } - }, - ho = class { - generate(t, r) { - if (t === void 0 || r === void 0) - throw new Error("Invalid Product generator arguments"); - return Array.isArray(t) && Array.isArray(r) - ? t.flatMap((n) => r.map((i) => [n, i])) - : Array.isArray(t) - ? t.map((n) => [n, r]) - : Array.isArray(r) - ? r.map((n) => [t, n]) - : [[t, r]]; - } - }; -c(); -u(); -p(); -m(); -d(); -l(); -function Hn(e, t) { - return e == null - ? e - : typeof e == "string" - ? Hn(JSON.parse(e), t) - : Array.isArray(e) - ? Dd(e, t) - : Od(e, t); -} -function Od(e, t) { - if (t.pagination) { - let { skip: r, take: n, cursor: i } = t.pagination; - if ((r !== null && r > 0) || n === 0 || (i !== null && !Dt(e, i))) - return null; - } - return nc(e, t.nested); -} -function nc(e, t) { - for (let [r, n] of Object.entries(t)) e[r] = Hn(e[r], n); - return e; -} -function Dd(e, t) { - if (t.distinct !== null) { - let r = - t.linkingFields !== null - ? [...t.distinct, ...t.linkingFields] - : t.distinct; - e = _d(e, r); - } - return ( - t.pagination && (e = Md(e, t.pagination, t.linkingFields)), - t.reverse && e.reverse(), - Object.keys(t.nested).length === 0 ? e : e.map((r) => nc(r, t.nested)) - ); -} -function _d(e, t) { - let r = new Set(), - n = []; - for (let i of e) { - let o = Ft(i, t); - r.has(o) || (r.add(o), n.push(i)); - } - return n; -} -function Md(e, t, r) { - if (r === null) return rc(e, t); - let n = new Map(); - for (let o of e) { - let s = Ft(o, r); - (n.has(s) || n.set(s, []), n.get(s).push(o)); - } - let i = Array.from(n.entries()); - return ( - i.sort(([o], [s]) => (o < s ? -1 : o > s ? 1 : 0)), - i.flatMap(([, o]) => rc(o, t)) - ); -} -function rc(e, { cursor: t, skip: r, take: n }) { - let i = t !== null ? e.findIndex((a) => Dt(a, t)) : 0; - if (i === -1) return []; - let o = i + (r ?? 0), - s = n !== null ? o + n : e.length; - return e.slice(o, s); -} -function Ft(e, t) { - return JSON.stringify(t.map((r) => e[r])); -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -function wo(e) { - return typeof e == "object" && e !== null && e.prisma__type === "param"; -} -function bo(e) { - return ( - typeof e == "object" && e !== null && e.prisma__type === "generatorCall" - ); -} -function Po(e, t, r, n) { - let i = e.args.map((o) => Te(o, t, r)); - switch (e.type) { - case "rawSql": - return [Ud(e.sql, i, e.argTypes)]; - case "templateSql": - return (e.chunkable ? $d(e.fragments, i, n) : [i]).map((s) => { - if (n !== void 0 && s.length > n) - throw new ce( - "The query parameter limit supported by your database is exceeded.", - "P2029", - ); - return Nd(e.fragments, e.placeholderFormat, s, e.argTypes); - }); - default: - $(e.type, "Invalid query type"); - } -} -function Te(e, t, r) { - for (; Fd(e); ) - if (wo(e)) { - let n = t[e.prisma__value.name]; - if (n === void 0) - throw new Error( - `Missing value for query variable ${e.prisma__value.name}`, - ); - e = n; - } else if (bo(e)) { - let { name: n, args: i } = e.prisma__value, - o = r[n]; - if (!o) throw new Error(`Encountered an unknown generator '${n}'`); - e = o.generate(...i.map((s) => Te(s, t, r))); - } else $(e, `Unexpected unevaluated value type: ${e}`); - return (Array.isArray(e) && (e = e.map((n) => Te(n, t, r))), e); -} -function Nd(e, t, r, n) { - let i = "", - o = { placeholderNumber: 1 }, - s = [], - a = []; - for (let f of xo(e, r, n)) { - if (((i += Ld(f, t, o)), f.type === "stringChunk")) continue; - let w = s.length, - A = s.push(...ic(f)) - w; - if (f.argType.arity === "tuple") { - if (A % f.argType.elements.length !== 0) - throw new Error( - `Malformed query template. Expected the number of parameters to match the tuple arity, but got ${A} parameters for a tuple of arity ${f.argType.elements.length}.`, - ); - for (let R = 0; R < A / f.argType.elements.length; R++) - a.push(...f.argType.elements); - } else for (let R = 0; R < A; R++) a.push(f.argType); - } - return { sql: i, args: s, argTypes: a }; -} -function Ld(e, t, r) { - let n = e.type; - switch (n) { - case "parameter": - return Eo(t, r.placeholderNumber++); - case "stringChunk": - return e.chunk; - case "parameterTuple": - return `(${e.value.length == 0 ? "NULL" : e.value.map(() => Eo(t, r.placeholderNumber++)).join(",")})`; - case "parameterTupleList": - return e.value - .map((i) => { - let o = i - .map(() => Eo(t, r.placeholderNumber++)) - .join(e.itemSeparator); - return `${e.itemPrefix}${o}${e.itemSuffix}`; - }) - .join(e.groupSeparator); - default: - $(n, "Invalid fragment type"); - } -} -function Eo(e, t) { - return e.hasNumbering ? `${e.prefix}${t}` : e.prefix; -} -function Ud(e, t, r) { - return { sql: e, args: t, argTypes: r }; -} -function Fd(e) { - return wo(e) || bo(e); -} -function* xo(e, t, r) { - let n = 0; - for (let i of e) - switch (i.type) { - case "parameter": { - if (n >= t.length) - throw new Error( - `Malformed query template. Fragments attempt to read over ${t.length} parameters.`, - ); - (yield { ...i, value: t[n], argType: r?.[n] }, n++); - break; - } - case "stringChunk": { - yield i; - break; - } - case "parameterTuple": { - if (n >= t.length) - throw new Error( - `Malformed query template. Fragments attempt to read over ${t.length} parameters.`, - ); - let o = t[n]; - (yield { ...i, value: Array.isArray(o) ? o : [o], argType: r?.[n] }, - n++); - break; - } - case "parameterTupleList": { - if (n >= t.length) - throw new Error( - `Malformed query template. Fragments attempt to read over ${t.length} parameters.`, - ); - let o = t[n]; - if (!Array.isArray(o)) - throw new Error("Malformed query template. Tuple list expected."); - if (o.length === 0) - throw new Error( - "Malformed query template. Tuple list cannot be empty.", - ); - for (let s of o) - if (!Array.isArray(s)) - throw new Error("Malformed query template. Tuple expected."); - (yield { ...i, value: o, argType: r?.[n] }, n++); - break; - } - } -} -function* ic(e) { - switch (e.type) { - case "parameter": - yield e.value; - break; - case "stringChunk": - break; - case "parameterTuple": - yield* e.value; - break; - case "parameterTupleList": - for (let t of e.value) yield* t; - break; - } -} -function $d(e, t, r) { - let n = 0, - i = 0; - for (let s of xo(e, t, void 0)) { - let a = 0; - for (let f of ic(s)) a++; - ((i = Math.max(i, a)), (n += a)); - } - let o = [[]]; - for (let s of xo(e, t, void 0)) - switch (s.type) { - case "parameter": { - for (let a of o) a.push(s.value); - break; - } - case "stringChunk": - break; - case "parameterTuple": { - let a = s.value.length, - f = []; - if (r && o.length === 1 && a === i && n > r && n - a < r) { - let w = r - (n - a); - f = Vd(s.value, w); - } else f = [s.value]; - o = o.flatMap((w) => f.map((A) => [...w, A])); - break; - } - case "parameterTupleList": { - let a = s.value.reduce((R, S) => R + S.length, 0), - f = [], - w = [], - A = 0; - for (let R of s.value) - (r && - o.length === 1 && - a === i && - w.length > 0 && - n - a + A + R.length > r && - (f.push(w), (w = []), (A = 0)), - w.push(R), - (A += R.length)); - (w.length > 0 && f.push(w), - (o = o.flatMap((R) => f.map((S) => [...R, S])))); - break; - } - } - return o; -} -function Vd(e, t) { - let r = []; - for (let n = 0; n < e.length; n += t) r.push(e.slice(n, n + t)); - return r; -} -c(); -u(); -p(); -m(); -d(); -l(); -function oc(e) { - return e.rows.map((t) => - t.reduce((r, n, i) => ((r[e.columnNames[i]] = n), r), {}), - ); -} -function sc(e) { - return { - columns: e.columnNames, - types: e.columnTypes.map((t) => qd(t)), - rows: e.rows.map((t) => t.map((r, n) => $t(r, e.columnTypes[n]))), - }; -} -function $t(e, t) { - if (e === null) return null; - switch (t) { - case O.Int32: - switch (typeof e) { - case "number": - return Math.trunc(e); - case "string": - return Math.trunc(Number(e)); - default: - throw new Error( - `Cannot serialize value of type ${typeof e} as Int32`, - ); - } - case O.Int32Array: - if (!Array.isArray(e)) - throw new Error( - `Cannot serialize value of type ${typeof e} as Int32Array`, - ); - return e.map((r) => $t(r, O.Int32)); - case O.Int64: - switch (typeof e) { - case "number": - return BigInt(Math.trunc(e)); - case "string": - return e; - default: - throw new Error( - `Cannot serialize value of type ${typeof e} as Int64`, - ); - } - case O.Int64Array: - if (!Array.isArray(e)) - throw new Error( - `Cannot serialize value of type ${typeof e} as Int64Array`, - ); - return e.map((r) => $t(r, O.Int64)); - case O.Json: - switch (typeof e) { - case "string": - return JSON.parse(e); - default: - throw new Error(`Cannot serialize value of type ${typeof e} as Json`); - } - case O.JsonArray: - if (!Array.isArray(e)) - throw new Error( - `Cannot serialize value of type ${typeof e} as JsonArray`, - ); - return e.map((r) => $t(r, O.Json)); - case O.Bytes: - if (Array.isArray(e)) return new Uint8Array(e); - throw new Error(`Cannot serialize value of type ${typeof e} as Bytes`); - case O.BytesArray: - if (!Array.isArray(e)) - throw new Error( - `Cannot serialize value of type ${typeof e} as BytesArray`, - ); - return e.map((r) => $t(r, O.Bytes)); - case O.Boolean: - switch (typeof e) { - case "boolean": - return e; - case "string": - return e === "true" || e === "1"; - case "number": - return e === 1; - default: - throw new Error( - `Cannot serialize value of type ${typeof e} as Boolean`, - ); - } - case O.BooleanArray: - if (!Array.isArray(e)) - throw new Error( - `Cannot serialize value of type ${typeof e} as BooleanArray`, - ); - return e.map((r) => $t(r, O.Boolean)); - default: - return e; - } -} -function qd(e) { - switch (e) { - case O.Int32: - return "int"; - case O.Int64: - return "bigint"; - case O.Float: - return "float"; - case O.Double: - return "double"; - case O.Text: - return "string"; - case O.Enum: - return "enum"; - case O.Bytes: - return "bytes"; - case O.Boolean: - return "bool"; - case O.Character: - return "char"; - case O.Numeric: - return "decimal"; - case O.Json: - return "json"; - case O.Uuid: - return "uuid"; - case O.DateTime: - return "datetime"; - case O.Date: - return "date"; - case O.Time: - return "time"; - case O.Int32Array: - return "int-array"; - case O.Int64Array: - return "bigint-array"; - case O.FloatArray: - return "float-array"; - case O.DoubleArray: - return "double-array"; - case O.TextArray: - return "string-array"; - case O.EnumArray: - return "string-array"; - case O.BytesArray: - return "bytes-array"; - case O.BooleanArray: - return "bool-array"; - case O.CharacterArray: - return "char-array"; - case O.NumericArray: - return "decimal-array"; - case O.JsonArray: - return "json-array"; - case O.UuidArray: - return "uuid-array"; - case O.DateTimeArray: - return "datetime-array"; - case O.DateArray: - return "date-array"; - case O.TimeArray: - return "time-array"; - case O.UnknownNumber: - return "unknown"; - case O.Set: - return "string"; - default: - $(e, `Unexpected column type: ${e}`); - } -} -c(); -u(); -p(); -m(); -d(); -l(); -function ac(e, t, r) { - if (!t.every((n) => To(e, n))) { - let n = Bd(e, r), - i = jd(r); - throw new ce(n, i, r.context); - } -} -function To(e, t) { - switch (t.type) { - case "rowCountEq": - return Array.isArray(e) - ? e.length === t.args - : e === null - ? t.args === 0 - : t.args === 1; - case "rowCountNeq": - return Array.isArray(e) - ? e.length !== t.args - : e === null - ? t.args !== 0 - : t.args !== 1; - case "affectedRowCountEq": - return e === t.args; - case "never": - return !1; - default: - $(t, `Unknown rule type: ${t.type}`); - } -} -function Bd(e, t) { - switch (t.error_identifier) { - case "RELATION_VIOLATION": - return `The change you are trying to make would violate the required relation '${t.context.relation}' between the \`${t.context.modelA}\` and \`${t.context.modelB}\` models.`; - case "MISSING_RECORD": - return `An operation failed because it depends on one or more records that were required but not found. No record was found for ${t.context.operation}.`; - case "MISSING_RELATED_RECORD": { - let r = t.context.neededFor ? ` (needed to ${t.context.neededFor})` : ""; - return `An operation failed because it depends on one or more records that were required but not found. No '${t.context.model}' record${r} was found for ${t.context.operation} on ${t.context.relationType} relation '${t.context.relation}'.`; - } - case "INCOMPLETE_CONNECT_INPUT": - return `An operation failed because it depends on one or more records that were required but not found. Expected ${t.context.expectedRows} records to be connected, found only ${Array.isArray(e) ? e.length : e}.`; - case "INCOMPLETE_CONNECT_OUTPUT": - return `The required connected records were not found. Expected ${t.context.expectedRows} records to be connected after connect operation on ${t.context.relationType} relation '${t.context.relation}', found ${Array.isArray(e) ? e.length : e}.`; - case "RECORDS_NOT_CONNECTED": - return `The records for relation \`${t.context.relation}\` between the \`${t.context.parent}\` and \`${t.context.child}\` models are not connected.`; - default: - $(t, `Unknown error identifier: ${t}`); - } -} -function jd(e) { - switch (e.error_identifier) { - case "RELATION_VIOLATION": - return "P2014"; - case "RECORDS_NOT_CONNECTED": - return "P2017"; - case "INCOMPLETE_CONNECT_OUTPUT": - return "P2018"; - case "MISSING_RECORD": - case "MISSING_RELATED_RECORD": - case "INCOMPLETE_CONNECT_INPUT": - return "P2025"; - default: - $(e, `Unknown error identifier: ${e}`); - } -} -var Cr = class e { - #t; - #e; - #r; - #n = new Qn(); - #s; - #i; - #a; - #o; - #c; - constructor({ - transactionManager: t, - placeholderValues: r, - onQuery: n, - tracingHelper: i, - serializer: o, - rawSerializer: s, - provider: a, - connectionInfo: f, - }) { - ((this.#t = t), - (this.#e = r), - (this.#r = n), - (this.#s = i), - (this.#i = o), - (this.#a = s ?? o), - (this.#o = a), - (this.#c = f)); - } - static forSql(t) { - return new e({ - transactionManager: t.transactionManager, - placeholderValues: t.placeholderValues, - onQuery: t.onQuery, - tracingHelper: t.tracingHelper, - serializer: oc, - rawSerializer: sc, - provider: t.provider, - connectionInfo: t.connectionInfo, - }); - } - async run(t, r) { - let { value: n } = await this.interpretNode( - t, - r, - this.#e, - this.#n.snapshot(), - ).catch((i) => _t(i)); - return n; - } - async interpretNode(t, r, n, i) { - switch (t.type) { - case "value": - return { value: Te(t.args, n, i) }; - case "seq": { - let o; - for (let s of t.args) o = await this.interpretNode(s, r, n, i); - return o ?? { value: void 0 }; - } - case "get": - return { value: n[t.args.name] }; - case "let": { - let o = Object.create(n); - for (let s of t.args.bindings) { - let { value: a } = await this.interpretNode(s.expr, r, o, i); - o[s.name] = a; - } - return this.interpretNode(t.args.expr, r, o, i); - } - case "getFirstNonEmpty": { - for (let o of t.args.names) { - let s = n[o]; - if (!lc(s)) return { value: s }; - } - return { value: [] }; - } - case "concat": { - let o = await Promise.all( - t.args.map((s) => - this.interpretNode(s, r, n, i).then((a) => a.value), - ), - ); - return { - value: o.length > 0 ? o.reduce((s, a) => s.concat(vo(a)), []) : [], - }; - } - case "sum": { - let o = await Promise.all( - t.args.map((s) => - this.interpretNode(s, r, n, i).then((a) => a.value), - ), - ); - return { value: o.length > 0 ? o.reduce((s, a) => Oe(s) + Oe(a)) : 0 }; - } - case "execute": { - let o = Po(t.args, n, i, this.#l()), - s = 0; - for (let a of o) - s += await this.#u(a, r, () => - r - .executeRaw(a) - .catch((f) => (t.args.type === "rawSql" ? Ji(f) : _t(f))), - ); - return { value: s }; - } - case "query": { - let o = Po(t.args, n, i, this.#l()), - s; - for (let a of o) { - let f = await this.#u(a, r, () => - r - .queryRaw(a) - .catch((w) => (t.args.type === "rawSql" ? Ji(w) : _t(w))), - ); - s === void 0 - ? (s = f) - : (s.rows.push(...f.rows), (s.lastInsertId = f.lastInsertId)); - } - return { - value: t.args.type === "rawSql" ? this.#a(s) : this.#i(s), - lastInsertId: s?.lastInsertId, - }; - } - case "reverse": { - let { value: o, lastInsertId: s } = await this.interpretNode( - t.args, - r, - n, - i, - ); - return { value: Array.isArray(o) ? o.reverse() : o, lastInsertId: s }; - } - case "unique": { - let { value: o, lastInsertId: s } = await this.interpretNode( - t.args, - r, - n, - i, - ); - if (!Array.isArray(o)) return { value: o, lastInsertId: s }; - if (o.length > 1) - throw new Error(`Expected zero or one element, got ${o.length}`); - return { value: o[0] ?? null, lastInsertId: s }; - } - case "required": { - let { value: o, lastInsertId: s } = await this.interpretNode( - t.args, - r, - n, - i, - ); - if (lc(o)) throw new Error("Required value is empty"); - return { value: o, lastInsertId: s }; - } - case "mapField": { - let { value: o, lastInsertId: s } = await this.interpretNode( - t.args.records, - r, - n, - i, - ); - return { value: cc(o, t.args.field), lastInsertId: s }; - } - case "join": { - let { value: o, lastInsertId: s } = await this.interpretNode( - t.args.parent, - r, - n, - i, - ); - if (o === null) return { value: null, lastInsertId: s }; - let a = await Promise.all( - t.args.children.map(async (f) => ({ - joinExpr: f, - childRecords: (await this.interpretNode(f.child, r, n, i)).value, - })), - ); - return { value: Qd(o, a), lastInsertId: s }; - } - case "transaction": { - if (!this.#t.enabled) return this.interpretNode(t.args, r, n, i); - let o = this.#t.manager, - s = await o.startInternalTransaction(), - a = await o.getTransaction(s, "query"); - try { - let f = await this.interpretNode(t.args, a, n, i); - return (await o.commitTransaction(s.id), f); - } catch (f) { - throw (await o.rollbackTransaction(s.id), f); - } - } - case "dataMap": { - let { value: o, lastInsertId: s } = await this.interpretNode( - t.args.expr, - r, - n, - i, - ); - return { - value: el(o, t.args.structure, t.args.enums), - lastInsertId: s, - }; - } - case "validate": { - let { value: o, lastInsertId: s } = await this.interpretNode( - t.args.expr, - r, - n, - i, - ); - return (ac(o, t.args.rules, t.args), { value: o, lastInsertId: s }); - } - case "if": { - let { value: o } = await this.interpretNode(t.args.value, r, n, i); - return To(o, t.args.rule) - ? await this.interpretNode(t.args.then, r, n, i) - : await this.interpretNode(t.args.else, r, n, i); - } - case "unit": - return { value: void 0 }; - case "diff": { - let { value: o } = await this.interpretNode(t.args.from, r, n, i), - { value: s } = await this.interpretNode(t.args.to, r, n, i), - a = (w) => (w !== null ? Ft(Gn(w), t.args.fields) : null), - f = new Set(vo(s).map(a)); - return { value: vo(o).filter((w) => !f.has(a(w))) }; - } - case "process": { - let { value: o, lastInsertId: s } = await this.interpretNode( - t.args.expr, - r, - n, - i, - ); - return { value: Hn(o, t.args.operations), lastInsertId: s }; - } - case "initializeRecord": { - let { lastInsertId: o } = await this.interpretNode( - t.args.expr, - r, - n, - i, - ), - s = {}; - for (let [a, f] of Object.entries(t.args.fields)) s[a] = Hd(f, o, n, i); - return { value: s, lastInsertId: o }; - } - case "mapRecord": { - let { value: o, lastInsertId: s } = await this.interpretNode( - t.args.expr, - r, - n, - i, - ), - a = o === null ? {} : Gn(o); - for (let [f, w] of Object.entries(t.args.fields)) - a[f] = Gd(w, a[f], n, i); - return { value: a, lastInsertId: s }; - } - default: - $(t, `Unexpected node type: ${t.type}`); - } - } - #l() { - return this.#c?.maxBindValues !== void 0 - ? this.#c.maxBindValues - : this.#p(); - } - #p() { - if (this.#o !== void 0) - switch (this.#o) { - case "cockroachdb": - case "postgres": - case "postgresql": - case "prisma+postgres": - return 32766; - case "mysql": - return 65535; - case "sqlite": - return 999; - case "sqlserver": - return 2098; - case "mongodb": - return; - default: - $(this.#o, `Unexpected provider: ${this.#o}`); - } - } - #u(t, r, n) { - return Ln({ - query: t, - execute: n, - provider: this.#o ?? r.provider, - tracingHelper: this.#s, - onQuery: this.#r, - }); - } -}; -function lc(e) { - return Array.isArray(e) ? e.length === 0 : e == null; -} -function vo(e) { - return Array.isArray(e) ? e : [e]; -} -function Oe(e) { - if (typeof e == "number") return e; - if (typeof e == "string") return Number(e); - throw new Error(`Expected number, got ${typeof e}`); -} -function Gn(e) { - if (typeof e == "object" && e !== null) return e; - throw new Error(`Expected object, got ${typeof e}`); -} -function cc(e, t) { - return Array.isArray(e) - ? e.map((r) => cc(r, t)) - : typeof e == "object" && e !== null - ? (e[t] ?? null) - : e; -} -function Qd(e, t) { - for (let { joinExpr: r, childRecords: n } of t) { - let i = r.on.map(([a]) => a), - o = r.on.map(([, a]) => a), - s = {}; - for (let a of Array.isArray(e) ? e : [e]) { - let f = Gn(a), - w = Ft(f, i); - (s[w] || (s[w] = []), - s[w].push(f), - r.isRelationUnique - ? (f[r.parentField] = null) - : (f[r.parentField] = [])); - } - for (let a of Array.isArray(n) ? n : [n]) { - if (a === null) continue; - let f = Ft(Gn(a), o); - for (let w of s[f] ?? []) - r.isRelationUnique ? (w[r.parentField] = a) : w[r.parentField].push(a); - } - } - return e; -} -function Hd(e, t, r, n) { - switch (e.type) { - case "value": - return Te(e.value, r, n); - case "lastInsertId": - return t; - default: - $(e, `Unexpected field initializer type: ${e.type}`); - } -} -function Gd(e, t, r, n) { - switch (e.type) { - case "set": - return Te(e.value, r, n); - case "add": - return Oe(t) + Oe(Te(e.value, r, n)); - case "subtract": - return Oe(t) - Oe(Te(e.value, r, n)); - case "multiply": - return Oe(t) * Oe(Te(e.value, r, n)); - case "divide": { - let i = Oe(t), - o = Oe(Te(e.value, r, n)); - return o === 0 ? null : i / o; - } - default: - $(e, `Unexpected field operation type: ${e.type}`); - } -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -async function Jd() { - return globalThis.crypto ?? (await Promise.resolve().then(() => (Xe(), xi))); -} -async function uc() { - return (await Jd()).randomUUID(); -} -c(); -u(); -p(); -m(); -d(); -l(); -var Ee = class extends ce { - name = "TransactionManagerError"; - constructor(t, r) { - super("Transaction API error: " + t, "P2028", r); - } - }, - Sr = class extends Ee { - constructor() { - super( - "Transaction not found. Transaction ID is invalid, refers to an old closed transaction Prisma doesn't have information about anymore, or was obtained before disconnecting.", - ); - } - }, - Jn = class extends Ee { - constructor(t) { - super( - `Transaction already closed: A ${t} cannot be executed on a committed transaction.`, - ); - } - }, - Wn = class extends Ee { - constructor(t) { - super( - `Transaction already closed: A ${t} cannot be executed on a transaction that was rolled back.`, - ); - } - }, - Kn = class extends Ee { - constructor() { - super("Unable to start a transaction in the given time."); - } - }, - zn = class extends Ee { - constructor(t, { timeout: r, timeTaken: n }) { - super( - `A ${t} cannot be executed on an expired transaction. The timeout for this transaction was ${r} ms, however ${n} ms passed since the start of the transaction. Consider increasing the interactive transaction timeout or doing less work in the transaction.`, - { operation: t, timeout: r, timeTaken: n }, - ); - } - }, - Vt = class extends Ee { - constructor(t) { - super(`Internal Consistency Error: ${t}`); - } - }, - Yn = class extends Ee { - constructor(t) { - super(`Invalid isolation level: ${t}`, { isolationLevel: t }); - } - }; -var Wd = 100, - Ir = K("prisma:client:transactionManager"), - Kd = () => ({ sql: "COMMIT", args: [], argTypes: [] }), - zd = () => ({ sql: "ROLLBACK", args: [], argTypes: [] }), - Yd = () => ({ - sql: '-- Implicit "COMMIT" query via underlying driver', - args: [], - argTypes: [], - }), - Zd = () => ({ - sql: '-- Implicit "ROLLBACK" query via underlying driver', - args: [], - argTypes: [], - }), - kr = class { - transactions = new Map(); - closedTransactions = []; - driverAdapter; - transactionOptions; - tracingHelper; - #t; - #e; - constructor({ - driverAdapter: t, - transactionOptions: r, - tracingHelper: n, - onQuery: i, - provider: o, - }) { - ((this.driverAdapter = t), - (this.transactionOptions = r), - (this.tracingHelper = n), - (this.#t = i), - (this.#e = o)); - } - async startInternalTransaction(t) { - let r = t !== void 0 ? this.#a(t) : {}; - return await this.tracingHelper.runInChildSpan("start_transaction", () => - this.#r(r), - ); - } - async startTransaction(t) { - let r = t !== void 0 ? this.#a(t) : this.transactionOptions; - return await this.tracingHelper.runInChildSpan("start_transaction", () => - this.#r(r), - ); - } - async #r(t) { - let r = { - id: await uc(), - status: "waiting", - timer: void 0, - timeout: t.timeout, - startedAt: Date.now(), - transaction: void 0, - }; - this.transactions.set(r.id, r); - let n = !1, - i = pc(() => (n = !0), t.maxWait); - switch ( - (i?.unref?.(), - (r.transaction = await this.driverAdapter - .startTransaction(t.isolationLevel) - .catch(_t)), - clearTimeout(i), - r.status) - ) { - case "waiting": - if (n) throw (await this.#i(r, "timed_out"), new Kn()); - return ( - (r.status = "running"), - (r.timer = this.#s(r.id, t.timeout)), - { id: r.id } - ); - case "timed_out": - case "running": - case "committed": - case "rolled_back": - throw new Vt( - `Transaction in invalid state ${r.status} although it just finished startup.`, - ); - default: - $(r.status, "Unknown transaction status."); - } - } - async commitTransaction(t) { - return await this.tracingHelper.runInChildSpan( - "commit_transaction", - async () => { - let r = this.#n(t, "commit"); - await this.#i(r, "committed"); - }, - ); - } - async rollbackTransaction(t) { - return await this.tracingHelper.runInChildSpan( - "rollback_transaction", - async () => { - let r = this.#n(t, "rollback"); - await this.#i(r, "rolled_back"); - }, - ); - } - async getTransaction(t, r) { - let n = this.#n(t.id, r); - if ( - (n.status === "closing" && (await n.closing, (n = this.#n(t.id, r))), - !n.transaction) - ) - throw new Sr(); - return n.transaction; - } - #n(t, r) { - let n = this.transactions.get(t); - if (!n) { - let i = this.closedTransactions.find((o) => o.id === t); - if (i) - switch ( - (Ir("Transaction already closed.", { - transactionId: t, - status: i.status, - }), - i.status) - ) { - case "closing": - case "waiting": - case "running": - throw new Vt( - "Active transaction found in closed transactions list.", - ); - case "committed": - throw new Jn(r); - case "rolled_back": - throw new Wn(r); - case "timed_out": - throw new zn(r, { - timeout: i.timeout, - timeTaken: Date.now() - i.startedAt, - }); - } - else throw (Ir("Transaction not found.", t), new Sr()); - } - if (["committed", "rolled_back", "timed_out"].includes(n.status)) - throw new Vt("Closed transaction found in active transactions map."); - return n; - } - async cancelAllTransactions() { - await Promise.allSettled( - [...this.transactions.values()].map((t) => this.#i(t, "rolled_back")), - ); - } - #s(t, r) { - let n = Date.now(), - i = pc(async () => { - Ir("Transaction timed out.", { - transactionId: t, - timeoutStartedAt: n, - timeout: r, - }); - let o = this.transactions.get(t); - o && ["running", "waiting"].includes(o.status) - ? await this.#i(o, "timed_out") - : Ir( - "Transaction already committed or rolled back when timeout happened.", - t, - ); - }, r); - return (i?.unref?.(), i); - } - async #i(t, r) { - let n = async () => { - Ir("Closing transaction.", { transactionId: t.id, status: r }); - try { - if (t.transaction && r === "committed") - if (t.transaction.options.usePhantomQuery) - await this.#o(Yd(), t.transaction, () => t.transaction.commit()); - else { - let i = Kd(); - (await this.#o(i, t.transaction, () => - t.transaction.executeRaw(i), - ), - await t.transaction.commit()); - } - else if (t.transaction) - if (t.transaction.options.usePhantomQuery) - await this.#o(Zd(), t.transaction, () => - t.transaction.rollback(), - ); - else { - let i = zd(); - (await this.#o(i, t.transaction, () => - t.transaction.executeRaw(i), - ), - await t.transaction.rollback()); - } - } finally { - ((t.status = r), - clearTimeout(t.timer), - (t.timer = void 0), - this.transactions.delete(t.id), - this.closedTransactions.push(t), - this.closedTransactions.length > Wd && - this.closedTransactions.shift()); - } - }; - t.status === "closing" - ? (await t.closing, - this.#n(t.id, r === "committed" ? "commit" : "rollback")) - : await Object.assign(t, { status: "closing", reason: r, closing: n() }) - .closing; - } - #a(t) { - if (!t.timeout) throw new Ee("timeout is required"); - if (!t.maxWait) throw new Ee("maxWait is required"); - if (t.isolationLevel === "SNAPSHOT") throw new Yn(t.isolationLevel); - return { ...t, timeout: t.timeout, maxWait: t.maxWait }; - } - #o(t, r, n) { - return Ln({ - query: t, - execute: n, - provider: this.#e ?? r.provider, - tracingHelper: this.tracingHelper, - onQuery: this.#t, - }); - } - }; -function pc(e, t) { - return t !== void 0 ? setTimeout(e, t) : void 0; -} -var Zn = "6.19.2"; -c(); -u(); -p(); -m(); -d(); -l(); -var Xn = class e { - #t; - #e; - #r; - #n; - constructor(t, r, n) { - ((this.#t = t), - (this.#e = r), - (this.#r = n), - (this.#n = r.getConnectionInfo?.())); - } - static async connect(t) { - let r, n; - try { - ((r = await t.driverAdapterFactory.connect()), - (n = new kr({ - driverAdapter: r, - transactionOptions: t.transactionOptions, - tracingHelper: t.tracingHelper, - onQuery: t.onQuery, - provider: t.provider, - }))); - } catch (i) { - throw (await r?.dispose(), i); - } - return new e(t, r, n); - } - getConnectionInfo() { - let t = this.#n ?? { supportsRelationJoins: !1 }; - return Promise.resolve({ provider: this.#e.provider, connectionInfo: t }); - } - async execute({ - plan: t, - placeholderValues: r, - transaction: n, - batchIndex: i, - }) { - let o = n - ? await this.#r.getTransaction(n, i !== void 0 ? "batch query" : "query") - : this.#e; - return await Cr.forSql({ - transactionManager: n - ? { enabled: !1 } - : { enabled: !0, manager: this.#r }, - placeholderValues: r, - onQuery: this.#t.onQuery, - tracingHelper: this.#t.tracingHelper, - provider: this.#t.provider, - connectionInfo: this.#n, - }).run(t, o); - } - async startTransaction(t) { - return { ...(await this.#r.startTransaction(t)), payload: void 0 }; - } - async commitTransaction(t) { - await this.#r.commitTransaction(t.id); - } - async rollbackTransaction(t) { - await this.#r.rollbackTransaction(t.id); - } - async disconnect() { - try { - await this.#r.cancelAllTransactions(); - } finally { - await this.#e.dispose(); - } - } - apiKey() { - return null; - } -}; -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -var ei = /^[\u0009\u0020-\u007E\u0080-\u00FF]+$/; -function mc(e, t, r) { - let n = r || {}, - i = n.encode || encodeURIComponent; - if (typeof i != "function") throw new TypeError("option encode is invalid"); - if (!ei.test(e)) throw new TypeError("argument name is invalid"); - let o = i(t); - if (o && !ei.test(o)) throw new TypeError("argument val is invalid"); - let s = e + "=" + o; - if (n.maxAge !== void 0 && n.maxAge !== null) { - let a = n.maxAge - 0; - if (Number.isNaN(a) || !Number.isFinite(a)) - throw new TypeError("option maxAge is invalid"); - s += "; Max-Age=" + Math.floor(a); - } - if (n.domain) { - if (!ei.test(n.domain)) throw new TypeError("option domain is invalid"); - s += "; Domain=" + n.domain; - } - if (n.path) { - if (!ei.test(n.path)) throw new TypeError("option path is invalid"); - s += "; Path=" + n.path; - } - if (n.expires) { - if (!ef(n.expires) || Number.isNaN(n.expires.valueOf())) - throw new TypeError("option expires is invalid"); - s += "; Expires=" + n.expires.toUTCString(); - } - if ( - (n.httpOnly && (s += "; HttpOnly"), - n.secure && (s += "; Secure"), - n.priority) - ) - switch ( - typeof n.priority == "string" ? n.priority.toLowerCase() : n.priority - ) { - case "low": { - s += "; Priority=Low"; - break; - } - case "medium": { - s += "; Priority=Medium"; - break; - } - case "high": { - s += "; Priority=High"; - break; - } - default: - throw new TypeError("option priority is invalid"); - } - if (n.sameSite) - switch ( - typeof n.sameSite == "string" ? n.sameSite.toLowerCase() : n.sameSite - ) { - case !0: { - s += "; SameSite=Strict"; - break; - } - case "lax": { - s += "; SameSite=Lax"; - break; - } - case "strict": { - s += "; SameSite=Strict"; - break; - } - case "none": { - s += "; SameSite=None"; - break; - } - default: - throw new TypeError("option sameSite is invalid"); - } - return (n.partitioned && (s += "; Partitioned"), s); -} -function ef(e) { - return ( - Object.prototype.toString.call(e) === "[object Date]" || e instanceof Date - ); -} -function dc(e, t) { - let r = (e || "") - .split(";") - .filter((f) => typeof f == "string" && !!f.trim()), - n = r.shift() || "", - i = tf(n), - o = i.name, - s = i.value; - try { - s = t?.decode === !1 ? s : (t?.decode || decodeURIComponent)(s); - } catch {} - let a = { name: o, value: s }; - for (let f of r) { - let w = f.split("="), - A = (w.shift() || "").trimStart().toLowerCase(), - R = w.join("="); - switch (A) { - case "expires": { - a.expires = new Date(R); - break; - } - case "max-age": { - a.maxAge = Number.parseInt(R, 10); - break; - } - case "secure": { - a.secure = !0; - break; - } - case "httponly": { - a.httpOnly = !0; - break; - } - case "samesite": { - a.sameSite = R; - break; - } - default: - a[A] = R; - } - } - return a; -} -function tf(e) { - let t = "", - r = "", - n = e.split("="); - return ( - n.length > 1 ? ((t = n.shift()), (r = n.join("="))) : (r = e), - { name: t, value: r } - ); -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -var rf = () => globalThis.process?.release?.name === "node", - nf = () => !!globalThis.Bun || !!globalThis.process?.versions?.bun, - of = () => !!globalThis.Deno, - sf = () => typeof globalThis.Netlify == "object", - af = () => typeof globalThis.EdgeRuntime == "object", - lf = () => globalThis.navigator?.userAgent === "Cloudflare-Workers"; -function cf() { - return ( - [ - [sf, "netlify"], - [af, "edge-light"], - [lf, "workerd"], - [of, "deno"], - [nf, "bun"], - [rf, "node"], - ] - .flatMap((r) => (r[0]() ? [r[1]] : [])) - .at(0) ?? "" - ); -} -var uf = { - node: "Node.js", - workerd: "Cloudflare Workers", - deno: "Deno and Deno Deploy", - netlify: "Netlify Edge Functions", - "edge-light": - "Edge Runtime (Vercel Edge Functions, Vercel Edge Middleware, Next.js (Pages Router) Edge API Routes, Next.js (App Router) Edge Route Handlers or Next.js Middleware)", -}; -function ti() { - let e = cf(); - return { - id: e, - prettyName: uf[e] || e, - isEdge: ["workerd", "deno", "netlify", "edge-light"].includes(e), - }; -} -function qt({ - inlineDatasources: e, - overrideDatasources: t, - env: r, - clientVersion: n, -}) { - let i, - o = Object.keys(e)[0], - s = e[o]?.url, - a = t[o]?.url; - if ( - (o === void 0 - ? (i = void 0) - : a - ? (i = a) - : s?.value - ? (i = s.value) - : s?.fromEnvVar && (i = r[s.fromEnvVar]), - s?.fromEnvVar !== void 0 && i === void 0) - ) - throw ti().id === "workerd" - ? new F( - `error: Environment variable not found: ${s.fromEnvVar}. +`}c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();l();c();u();p();m();d();l();l();function $(e,t){throw new Error(t)}function Hi(e,t){return e===t||e!==null&&t!==null&&typeof e=="object"&&typeof t=="object"&&Object.keys(e).length===Object.keys(t).length&&Object.keys(e).every(r=>Hi(e[r],t[r]))}function Dt(e,t){let r=Object.keys(e),n=Object.keys(t);return(r.length{if(typeof e[o]==typeof t[o]&&typeof e[o]!="object")return e[o]===t[o];if(se.isDecimal(e[o])||se.isDecimal(t[o])){let s=Ga(e[o]),a=Ga(t[o]);return s&&a&&s.equals(a)}else if(e[o]instanceof Uint8Array||t[o]instanceof Uint8Array){let s=Ja(e[o]),a=Ja(t[o]);return s&&a&&s.equals(a)}else{if(e[o]instanceof Date||t[o]instanceof Date)return Wa(e[o])?.getTime()===Wa(t[o])?.getTime();if(typeof e[o]=="bigint"||typeof t[o]=="bigint")return Ka(e[o])===Ka(t[o]);if(typeof e[o]=="number"||typeof t[o]=="number")return za(e[o])===za(t[o])}return Hi(e[o],t[o])})}function Ga(e){return se.isDecimal(e)?e:typeof e=="number"||typeof e=="string"?new se(e):void 0}function Ja(e){return y.isBuffer(e)?e:e instanceof Uint8Array?y.from(e.buffer,e.byteOffset,e.byteLength):typeof e=="string"?y.from(e,"base64"):void 0}function Wa(e){return e instanceof Date?e:typeof e=="string"||typeof e=="number"?new Date(e):void 0}function Ka(e){return typeof e=="bigint"?e:typeof e=="number"||typeof e=="string"?BigInt(e):void 0}function za(e){return typeof e=="number"?e:typeof e=="string"?Number(e):void 0}function br(e){return JSON.stringify(e,(t,r)=>typeof r=="bigint"?r.toString():ArrayBuffer.isView(r)?y.from(r.buffer,r.byteOffset,r.byteLength).toString("base64"):r)}function xm(e){return e!==null&&typeof e=="object"&&typeof e.$type=="string"}function Pm(e,t){let r={};for(let n of Object.keys(e))r[n]=t(e[n],n);return r}function Qe(e){return e===null?e:Array.isArray(e)?e.map(Qe):typeof e=="object"?xm(e)?Tm(e):e.constructor!==null&&e.constructor.name!=="Object"?e:Pm(e,Qe):e}function Tm({$type:e,value:t}){switch(e){case"BigInt":return BigInt(t);case"Bytes":{let{buffer:r,byteOffset:n,byteLength:i}=y.from(t,"base64");return new Uint8Array(r,n,i)}case"DateTime":return new Date(t);case"Decimal":return new v(t);case"Json":return JSON.parse(t);default:$(t,"Unknown tagged value")}}c();u();p();m();d();l();var ce=class extends Error{name="UserFacingError";code;meta;constructor(t,r,n){super(t),this.code=r,this.meta=n??{}}toQueryResponseErrorObject(){return{error:this.message,user_facing_error:{is_panic:!1,message:this.message,meta:this.meta,error_code:this.code}}}};function _t(e){if(!nn(e))throw e;let t=vm(e),r=Ya(e);throw!t||!r?e:new ce(r,t,{driverAdapterError:e})}function Ji(e){throw nn(e)?new ce(`Raw query failed. Code: \`${e.cause.originalCode??"N/A"}\`. Message: \`${e.cause.originalMessage??Ya(e)}\``,"P2010",{driverAdapterError:e}):e}function vm(e){switch(e.cause.kind){case"AuthenticationFailed":return"P1000";case"DatabaseNotReachable":return"P1001";case"DatabaseDoesNotExist":return"P1003";case"SocketTimeout":return"P1008";case"DatabaseAlreadyExists":return"P1009";case"DatabaseAccessDenied":return"P1010";case"TlsConnectionError":return"P1011";case"ConnectionClosed":return"P1017";case"TransactionAlreadyClosed":return"P1018";case"LengthMismatch":return"P2000";case"UniqueConstraintViolation":return"P2002";case"ForeignKeyConstraintViolation":return"P2003";case"UnsupportedNativeDataType":return"P2010";case"NullConstraintViolation":return"P2011";case"ValueOutOfRange":return"P2020";case"TableDoesNotExist":return"P2021";case"ColumnNotFound":return"P2022";case"InvalidIsolationLevel":case"InconsistentColumnData":return"P2023";case"MissingFullTextSearchIndex":return"P2030";case"TransactionWriteConflict":return"P2034";case"GenericJs":return"P2036";case"TooManyConnections":return"P2037";case"postgres":case"sqlite":case"mysql":case"mssql":return;default:$(e.cause,`Unknown error: ${e.cause}`)}}function Ya(e){switch(e.cause.kind){case"AuthenticationFailed":return`Authentication failed against the database server, the provided database credentials for \`${e.cause.user??"(not available)"}\` are not valid`;case"DatabaseNotReachable":{let t=e.cause.host&&e.cause.port?`${e.cause.host}:${e.cause.port}`:e.cause.host;return`Can't reach database server${t?` at ${t}`:""}`}case"DatabaseDoesNotExist":return`Database \`${e.cause.db??"(not available)"}\` does not exist on the database server`;case"SocketTimeout":return"Operation has timed out";case"DatabaseAlreadyExists":return`Database \`${e.cause.db??"(not available)"}\` already exists on the database server`;case"DatabaseAccessDenied":return`User was denied access on the database \`${e.cause.db??"(not available)"}\``;case"TlsConnectionError":return`Error opening a TLS connection: ${e.cause.reason}`;case"ConnectionClosed":return"Server has closed the connection.";case"TransactionAlreadyClosed":return e.cause.cause;case"LengthMismatch":return`The provided value for the column is too long for the column's type. Column: ${e.cause.column??"(not available)"}`;case"UniqueConstraintViolation":return`Unique constraint failed on the ${Gi(e.cause.constraint)}`;case"ForeignKeyConstraintViolation":return`Foreign key constraint violated on the ${Gi(e.cause.constraint)}`;case"UnsupportedNativeDataType":return`Failed to deserialize column of type '${e.cause.type}'. If you're using $queryRaw and this column is explicitly marked as \`Unsupported\` in your Prisma schema, try casting this column to any supported Prisma type such as \`String\`.`;case"NullConstraintViolation":return`Null constraint violation on the ${Gi(e.cause.constraint)}`;case"ValueOutOfRange":return`Value out of range for the type: ${e.cause.cause}`;case"TableDoesNotExist":return`The table \`${e.cause.table??"(not available)"}\` does not exist in the current database.`;case"ColumnNotFound":return`The column \`${e.cause.column??"(not available)"}\` does not exist in the current database.`;case"InvalidIsolationLevel":return`Error in connector: Conversion error: ${e.cause.level}`;case"InconsistentColumnData":return`Inconsistent column data: ${e.cause.cause}`;case"MissingFullTextSearchIndex":return"Cannot find a fulltext index to use for the native search, try adding a @@fulltext([Fields...]) to your schema";case"TransactionWriteConflict":return"Transaction failed due to a write conflict or a deadlock. Please retry your transaction";case"GenericJs":return`Error in external connector (id ${e.cause.id})`;case"TooManyConnections":return`Too many database connections opened: ${e.cause.cause}`;case"sqlite":case"postgres":case"mysql":case"mssql":return;default:$(e.cause,`Unknown error: ${e.cause}`)}}function Gi(e){return e&&"fields"in e?`fields: (${e.fields.map(t=>`\`${t}\``).join(", ")})`:e&&"index"in e?`constraint: \`${e.index}\``:e&&"foreignKey"in e?"foreign key":"(not available)"}function Za(e,t){let r=e.map(i=>t.keys.reduce((o,s)=>(o[s]=Qe(i[s]),o),{})),n=new Set(t.nestedSelection);return t.arguments.map(i=>{let o=r.findIndex(s=>Dt(s,i));if(o===-1)return t.expectNonEmpty?new ce("An operation failed because it depends on one or more records that were required but not found","P2025"):null;{let s=Object.entries(e[o]).filter(([a])=>n.has(a));return Object.fromEntries(s)}})}c();u();p();m();d();l();l();var G=class extends Error{name="DataMapperError"};function el(e,t,r){switch(t.type){case"affectedRows":if(typeof e!="number")throw new G(`Expected an affected rows count, got: ${typeof e} (${e})`);return{count:e};case"object":return Ki(e,t.fields,r,t.skipNulls);case"field":return Wi(e,"",t.fieldType,r);default:$(t,`Invalid data mapping type: '${t.type}'`)}}function Ki(e,t,r,n){if(e===null)return null;if(Array.isArray(e)){let i=e;return n&&(i=i.filter(o=>o!==null)),i.map(o=>Xa(o,t,r))}if(typeof e=="object")return Xa(e,t,r);if(typeof e=="string"){let i;try{i=JSON.parse(e)}catch(o){throw new G("Expected an array or object, got a string that is not valid JSON",{cause:o})}return Ki(i,t,r,n)}throw new G(`Expected an array or an object, got: ${typeof e}`)}function Xa(e,t,r){if(typeof e!="object")throw new G(`Expected an object, but got '${typeof e}'`);let n={};for(let[i,o]of Object.entries(t))switch(o.type){case"affectedRows":throw new G(`Unexpected 'AffectedRows' node in data mapping for field '${i}'`);case"object":{if(o.serializedName!==null&&!Object.hasOwn(e,o.serializedName))throw new G(`Missing data field (Object): '${i}'; node: ${JSON.stringify(o)}; data: ${JSON.stringify(e)}`);let s=o.serializedName!==null?e[o.serializedName]:e;n[i]=Ki(s,o.fields,r,o.skipNulls);break}case"field":{let s=o.dbName;if(Object.hasOwn(e,s))n[i]=Am(e[s],s,o.fieldType,r);else throw new G(`Missing data field (Value): '${s}'; node: ${JSON.stringify(o)}; data: ${JSON.stringify(e)}`)}break;default:$(o,`DataMapper: Invalid data mapping node type: '${o.type}'`)}return n}function Am(e,t,r,n){return e===null?r.arity==="list"?[]:null:r.arity==="list"?e.map((o,s)=>Wi(o,`${t}[${s}]`,r,n)):Wi(e,t,r,n)}function Wi(e,t,r,n){switch(r.type){case"unsupported":return e;case"string":{if(typeof e!="string")throw new G(`Expected a string in column '${t}', got ${typeof e}: ${e}`);return e}case"int":switch(typeof e){case"number":return Math.trunc(e);case"string":{let i=Math.trunc(Number(e));if(Number.isNaN(i)||!Number.isFinite(i))throw new G(`Expected an integer in column '${t}', got string: ${e}`);if(!Number.isSafeInteger(i))throw new G(`Integer value in column '${t}' is too large to represent as a JavaScript number without loss of precision, got: ${e}. Consider using BigInt type.`);return i}default:throw new G(`Expected an integer in column '${t}', got ${typeof e}: ${e}`)}case"bigint":{if(typeof e!="number"&&typeof e!="string")throw new G(`Expected a bigint in column '${t}', got ${typeof e}: ${e}`);return{$type:"BigInt",value:e}}case"float":{if(typeof e=="number")return e;if(typeof e=="string"){let i=Number(e);if(Number.isNaN(i)&&!/^[-+]?nan$/.test(e.toLowerCase()))throw new G(`Expected a float in column '${t}', got string: ${e}`);return i}throw new G(`Expected a float in column '${t}', got ${typeof e}: ${e}`)}case"boolean":{if(typeof e=="boolean")return e;if(typeof e=="number")return e===1;if(typeof e=="string"){if(e==="true"||e==="TRUE"||e==="1")return!0;if(e==="false"||e==="FALSE"||e==="0")return!1;throw new G(`Expected a boolean in column '${t}', got ${typeof e}: ${e}`)}if(Array.isArray(e)){for(let i of e)if(i!==0)return!0;return!1}throw new G(`Expected a boolean in column '${t}', got ${typeof e}: ${e}`)}case"decimal":if(typeof e!="number"&&typeof e!="string"&&!se.isDecimal(e))throw new G(`Expected a decimal in column '${t}', got ${typeof e}: ${e}`);return{$type:"Decimal",value:e};case"datetime":{if(typeof e=="string")return{$type:"DateTime",value:Cm(e)};if(typeof e=="number"||e instanceof Date)return{$type:"DateTime",value:e};throw new G(`Expected a date in column '${t}', got ${typeof e}: ${e}`)}case"object":return{$type:"Json",value:br(e)};case"json":return{$type:"Json",value:`${e}`};case"bytes":{switch(r.encoding){case"base64":if(typeof e!="string")throw new G(`Expected a base64-encoded byte array in column '${t}', got ${typeof e}: ${e}`);return{$type:"Bytes",value:e};case"hex":if(typeof e!="string"||!e.startsWith("\\x"))throw new G(`Expected a hex-encoded byte array in column '${t}', got ${typeof e}: ${e}`);return{$type:"Bytes",value:y.from(e.slice(2),"hex").toString("base64")};case"array":if(Array.isArray(e))return{$type:"Bytes",value:y.from(e).toString("base64")};if(e instanceof Uint8Array)return{$type:"Bytes",value:y.from(e).toString("base64")};throw new G(`Expected a byte array in column '${t}', got ${typeof e}: ${e}`);default:$(r.encoding,`DataMapper: Unknown bytes encoding: ${r.encoding}`)}break}case"enum":{let i=n[r.name];if(i===void 0)throw new G(`Unknown enum '${r.name}'`);let o=i[`${e}`];if(o===void 0)throw new G(`Value '${e}' not found in enum '${r.name}'`);return o}default:$(r,`DataMapper: Unknown result type: ${r.type}`)}}var Rm=/\d{2}:\d{2}:\d{2}(?:\.\d+)?(Z|[+-]\d{2}(:?\d{2})?)?$/;function Cm(e){let t=Rm.exec(e);if(t===null)return`${e}T00:00:00Z`;let r=e,[n,i,o]=t;if(i!==void 0&&i!=="Z"&&o===void 0?r=`${e}:00`:i===void 0&&(r=`${e}Z`),n.length===e.length)return`1970-01-01T${r}`;let s=t.index-1;return r[s]===" "&&(r=`${r.slice(0,s)}T${r.slice(s+1)}`),r}c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();var Er;(function(e){e[e.INTERNAL=0]="INTERNAL",e[e.SERVER=1]="SERVER",e[e.CLIENT=2]="CLIENT",e[e.PRODUCER=3]="PRODUCER",e[e.CONSUMER=4]="CONSUMER"})(Er||(Er={}));function Sm(e){switch(e){case"postgresql":case"postgres":case"prisma+postgres":return"postgresql";case"sqlserver":return"mssql";case"mysql":case"sqlite":case"cockroachdb":case"mongodb":return e;default:$(e,`Unknown provider: ${e}`)}}async function Ln({query:e,tracingHelper:t,provider:r,onQuery:n,execute:i}){return await t.runInChildSpan({name:"db_query",kind:Er.CLIENT,attributes:{"db.query.text":e.sql,"db.system.name":Sm(r)}},async()=>{let o=new Date,s=b.now(),a=await i(),f=b.now();return n?.({timestamp:o,duration:f-s,query:e.sql,params:e.args}),a})}c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();function tt(e,t){var r="000000000"+e;return r.substr(r.length-t)}var tl=$e(ys(),1);function Im(){try{return tl.default.hostname()}catch{return g.env._CLUSTER_NETWORK_NAME_||g.env.COMPUTERNAME||"hostname"}}var rl=2,km=tt(g.pid.toString(36),rl),nl=Im(),Om=nl.length,Dm=tt(nl.split("").reduce(function(e,t){return+e+t.charCodeAt(0)},+Om+36).toString(36),rl);function zi(){return km+Dm}c();u();p();m();d();l();c();u();p();m();d();l();function Un(e){return typeof e=="string"&&/^c[a-z0-9]{20,32}$/.test(e)}function Yi(e){let n=Math.pow(36,4),i=0;function o(){return tt((Math.random()*n<<0).toString(36),4)}function s(){return i=int.length&&(Xt.getRandomValues(nt),Lt=0),Lt+=e}function so(e=21){Ed(e|=0);let t="";for(let r=Lt-e;r{let n=new Uint8Array(1);return r.getRandomValues(n),n[0]/255};if(typeof r?.randomBytes=="function")return()=>r.randomBytes(1).readUInt8()/255;if(yt?.randomBytes)return()=>yt.randomBytes(1).readUInt8()/255;throw new ot(it.PRNGDetectFailure,"Failed to find a reliable PRNG")}function vd(){return Cd()?self:typeof window<"u"?window:typeof globalThis<"u"||typeof globalThis<"u"?globalThis:null}function Ad(e,t){let r="";for(;e>0;e--)r=Pd(t)+r;return r}function Rd(e,t=Zl){if(isNaN(e))throw new ot(it.EncodeTimeValueMalformed,`Time must be a number: ${e}`);if(e>zl)throw new ot(it.EncodeTimeSizeExceeded,`Cannot encode a time larger than ${zl}: ${e}`);if(e<0)throw new ot(it.EncodeTimeNegative,`Time must be positive: ${e}`);if(Number.isInteger(e)===!1)throw new ot(it.EncodeTimeValueMalformed,`Time must be an integer: ${e}`);let r,n="";for(let i=t;i>0;i--)r=e%Rr,n=Yl.charAt(r)+n,e=(e-r)/Rr;return n}function Cd(){return typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope}function Xl(e,t){let r=t||Td(),n=!e||isNaN(e)?Date.now():e;return Rd(n,Zl)+Ad(xd,r)}c();u();p();m();d();l();c();u();p();m();d();l();var oe=[];for(let e=0;e<256;++e)oe.push((e+256).toString(16).slice(1));function qn(e,t=0){return(oe[e[t+0]]+oe[e[t+1]]+oe[e[t+2]]+oe[e[t+3]]+"-"+oe[e[t+4]]+oe[e[t+5]]+"-"+oe[e[t+6]]+oe[e[t+7]]+"-"+oe[e[t+8]]+oe[e[t+9]]+"-"+oe[e[t+10]]+oe[e[t+11]]+oe[e[t+12]]+oe[e[t+13]]+oe[e[t+14]]+oe[e[t+15]]).toLowerCase()}c();u();p();m();d();l();Xe();var jn=new Uint8Array(256),Bn=jn.length;function Ut(){return Bn>jn.length-16&&(sn(jn),Bn=0),jn.slice(Bn,Bn+=16)}c();u();p();m();d();l();c();u();p();m();d();l();Xe();var ao={randomUUID:on};function Sd(e,t,r){if(ao.randomUUID&&!t&&!e)return ao.randomUUID();e=e||{};let n=e.random??e.rng?.()??Ut();if(n.length<16)throw new Error("Random bytes length must be >= 16");if(n[6]=n[6]&15|64,n[8]=n[8]&63|128,t){if(r=r||0,r<0||r+16>t.length)throw new RangeError(`UUID byte range ${r}:${r+15} is out of buffer bounds`);for(let i=0;i<16;++i)t[r+i]=n[i];return t}return qn(n)}var lo=Sd;c();u();p();m();d();l();var co={};function Id(e,t,r){let n;if(e)n=ec(e.random??e.rng?.()??Ut(),e.msecs,e.seq,t,r);else{let i=Date.now(),o=Ut();kd(co,i,o),n=ec(o,co.msecs,co.seq,t,r)}return t??qn(n)}function kd(e,t,r){return e.msecs??=-1/0,e.seq??=0,t>e.msecs?(e.seq=r[6]<<23|r[7]<<16|r[8]<<8|r[9],e.msecs=t):(e.seq=e.seq+1|0,e.seq===0&&e.msecs++),e}function ec(e,t,r,n,i=0){if(e.length<16)throw new Error("Random bytes length must be >= 16");if(!n)n=new Uint8Array(16),i=0;else if(i<0||i+16>n.length)throw new RangeError(`UUID byte range ${i}:${i+15} is out of buffer bounds`);return t??=Date.now(),r??=e[6]*127<<24|e[7]<<16|e[8]<<8|e[9],n[i++]=t/1099511627776&255,n[i++]=t/4294967296&255,n[i++]=t/16777216&255,n[i++]=t/65536&255,n[i++]=t/256&255,n[i++]=t&255,n[i++]=112|r>>>28&15,n[i++]=r>>>20&255,n[i++]=128|r>>>14&63,n[i++]=r>>>6&255,n[i++]=r<<2&255|e[10]&3,n[i++]=e[11],n[i++]=e[12],n[i++]=e[13],n[i++]=e[14],n[i++]=e[15],n}var uo=Id;var Qn=class{#t={};constructor(){this.register("uuid",new mo),this.register("cuid",new fo),this.register("ulid",new go),this.register("nanoid",new yo),this.register("product",new ho)}snapshot(){return Object.create(this.#t,{now:{value:new po}})}register(t,r){this.#t[t]=r}},po=class{#t=new Date;generate(){return this.#t.toISOString()}},mo=class{generate(t){if(t===4)return lo();if(t===7)return uo();throw new Error("Invalid UUID generator arguments")}},fo=class{generate(t){if(t===1)return il();if(t===2)return(0,tc.createId)();throw new Error("Invalid CUID generator arguments")}},go=class{generate(){return Xl()}},yo=class{generate(t){if(typeof t=="number")return so(t);if(t===void 0)return so();throw new Error("Invalid Nanoid generator arguments")}},ho=class{generate(t,r){if(t===void 0||r===void 0)throw new Error("Invalid Product generator arguments");return Array.isArray(t)&&Array.isArray(r)?t.flatMap(n=>r.map(i=>[n,i])):Array.isArray(t)?t.map(n=>[n,r]):Array.isArray(r)?r.map(n=>[t,n]):[[t,r]]}};c();u();p();m();d();l();function Hn(e,t){return e==null?e:typeof e=="string"?Hn(JSON.parse(e),t):Array.isArray(e)?Dd(e,t):Od(e,t)}function Od(e,t){if(t.pagination){let{skip:r,take:n,cursor:i}=t.pagination;if(r!==null&&r>0||n===0||i!==null&&!Dt(e,i))return null}return nc(e,t.nested)}function nc(e,t){for(let[r,n]of Object.entries(t))e[r]=Hn(e[r],n);return e}function Dd(e,t){if(t.distinct!==null){let r=t.linkingFields!==null?[...t.distinct,...t.linkingFields]:t.distinct;e=_d(e,r)}return t.pagination&&(e=Md(e,t.pagination,t.linkingFields)),t.reverse&&e.reverse(),Object.keys(t.nested).length===0?e:e.map(r=>nc(r,t.nested))}function _d(e,t){let r=new Set,n=[];for(let i of e){let o=Ft(i,t);r.has(o)||(r.add(o),n.push(i))}return n}function Md(e,t,r){if(r===null)return rc(e,t);let n=new Map;for(let o of e){let s=Ft(o,r);n.has(s)||n.set(s,[]),n.get(s).push(o)}let i=Array.from(n.entries());return i.sort(([o],[s])=>os?1:0),i.flatMap(([,o])=>rc(o,t))}function rc(e,{cursor:t,skip:r,take:n}){let i=t!==null?e.findIndex(a=>Dt(a,t)):0;if(i===-1)return[];let o=i+(r??0),s=n!==null?o+n:e.length;return e.slice(o,s)}function Ft(e,t){return JSON.stringify(t.map(r=>e[r]))}c();u();p();m();d();l();c();u();p();m();d();l();function wo(e){return typeof e=="object"&&e!==null&&e.prisma__type==="param"}function bo(e){return typeof e=="object"&&e!==null&&e.prisma__type==="generatorCall"}function Po(e,t,r,n){let i=e.args.map(o=>Te(o,t,r));switch(e.type){case"rawSql":return[Ud(e.sql,i,e.argTypes)];case"templateSql":return(e.chunkable?$d(e.fragments,i,n):[i]).map(s=>{if(n!==void 0&&s.length>n)throw new ce("The query parameter limit supported by your database is exceeded.","P2029");return Nd(e.fragments,e.placeholderFormat,s,e.argTypes)});default:$(e.type,"Invalid query type")}}function Te(e,t,r){for(;Fd(e);)if(wo(e)){let n=t[e.prisma__value.name];if(n===void 0)throw new Error(`Missing value for query variable ${e.prisma__value.name}`);e=n}else if(bo(e)){let{name:n,args:i}=e.prisma__value,o=r[n];if(!o)throw new Error(`Encountered an unknown generator '${n}'`);e=o.generate(...i.map(s=>Te(s,t,r)))}else $(e,`Unexpected unevaluated value type: ${e}`);return Array.isArray(e)&&(e=e.map(n=>Te(n,t,r))),e}function Nd(e,t,r,n){let i="",o={placeholderNumber:1},s=[],a=[];for(let f of xo(e,r,n)){if(i+=Ld(f,t,o),f.type==="stringChunk")continue;let w=s.length,A=s.push(...ic(f))-w;if(f.argType.arity==="tuple"){if(A%f.argType.elements.length!==0)throw new Error(`Malformed query template. Expected the number of parameters to match the tuple arity, but got ${A} parameters for a tuple of arity ${f.argType.elements.length}.`);for(let R=0;REo(t,r.placeholderNumber++)).join(",")})`;case"parameterTupleList":return e.value.map(i=>{let o=i.map(()=>Eo(t,r.placeholderNumber++)).join(e.itemSeparator);return`${e.itemPrefix}${o}${e.itemSuffix}`}).join(e.groupSeparator);default:$(n,"Invalid fragment type")}}function Eo(e,t){return e.hasNumbering?`${e.prefix}${t}`:e.prefix}function Ud(e,t,r){return{sql:e,args:t,argTypes:r}}function Fd(e){return wo(e)||bo(e)}function*xo(e,t,r){let n=0;for(let i of e)switch(i.type){case"parameter":{if(n>=t.length)throw new Error(`Malformed query template. Fragments attempt to read over ${t.length} parameters.`);yield{...i,value:t[n],argType:r?.[n]},n++;break}case"stringChunk":{yield i;break}case"parameterTuple":{if(n>=t.length)throw new Error(`Malformed query template. Fragments attempt to read over ${t.length} parameters.`);let o=t[n];yield{...i,value:Array.isArray(o)?o:[o],argType:r?.[n]},n++;break}case"parameterTupleList":{if(n>=t.length)throw new Error(`Malformed query template. Fragments attempt to read over ${t.length} parameters.`);let o=t[n];if(!Array.isArray(o))throw new Error("Malformed query template. Tuple list expected.");if(o.length===0)throw new Error("Malformed query template. Tuple list cannot be empty.");for(let s of o)if(!Array.isArray(s))throw new Error("Malformed query template. Tuple expected.");yield{...i,value:o,argType:r?.[n]},n++;break}}}function*ic(e){switch(e.type){case"parameter":yield e.value;break;case"stringChunk":break;case"parameterTuple":yield*e.value;break;case"parameterTupleList":for(let t of e.value)yield*t;break}}function $d(e,t,r){let n=0,i=0;for(let s of xo(e,t,void 0)){let a=0;for(let f of ic(s))a++;i=Math.max(i,a),n+=a}let o=[[]];for(let s of xo(e,t,void 0))switch(s.type){case"parameter":{for(let a of o)a.push(s.value);break}case"stringChunk":break;case"parameterTuple":{let a=s.value.length,f=[];if(r&&o.length===1&&a===i&&n>r&&n-af.map(A=>[...w,A]));break}case"parameterTupleList":{let a=s.value.reduce((R,S)=>R+S.length,0),f=[],w=[],A=0;for(let R of s.value)r&&o.length===1&&a===i&&w.length>0&&n-a+A+R.length>r&&(f.push(w),w=[],A=0),w.push(R),A+=R.length;w.length>0&&f.push(w),o=o.flatMap(R=>f.map(S=>[...R,S]));break}}return o}function Vd(e,t){let r=[];for(let n=0;nt.reduce((r,n,i)=>(r[e.columnNames[i]]=n,r),{}))}function sc(e){return{columns:e.columnNames,types:e.columnTypes.map(t=>qd(t)),rows:e.rows.map(t=>t.map((r,n)=>$t(r,e.columnTypes[n])))}}function $t(e,t){if(e===null)return null;switch(t){case O.Int32:switch(typeof e){case"number":return Math.trunc(e);case"string":return Math.trunc(Number(e));default:throw new Error(`Cannot serialize value of type ${typeof e} as Int32`)}case O.Int32Array:if(!Array.isArray(e))throw new Error(`Cannot serialize value of type ${typeof e} as Int32Array`);return e.map(r=>$t(r,O.Int32));case O.Int64:switch(typeof e){case"number":return BigInt(Math.trunc(e));case"string":return e;default:throw new Error(`Cannot serialize value of type ${typeof e} as Int64`)}case O.Int64Array:if(!Array.isArray(e))throw new Error(`Cannot serialize value of type ${typeof e} as Int64Array`);return e.map(r=>$t(r,O.Int64));case O.Json:switch(typeof e){case"string":return JSON.parse(e);default:throw new Error(`Cannot serialize value of type ${typeof e} as Json`)}case O.JsonArray:if(!Array.isArray(e))throw new Error(`Cannot serialize value of type ${typeof e} as JsonArray`);return e.map(r=>$t(r,O.Json));case O.Bytes:if(Array.isArray(e))return new Uint8Array(e);throw new Error(`Cannot serialize value of type ${typeof e} as Bytes`);case O.BytesArray:if(!Array.isArray(e))throw new Error(`Cannot serialize value of type ${typeof e} as BytesArray`);return e.map(r=>$t(r,O.Bytes));case O.Boolean:switch(typeof e){case"boolean":return e;case"string":return e==="true"||e==="1";case"number":return e===1;default:throw new Error(`Cannot serialize value of type ${typeof e} as Boolean`)}case O.BooleanArray:if(!Array.isArray(e))throw new Error(`Cannot serialize value of type ${typeof e} as BooleanArray`);return e.map(r=>$t(r,O.Boolean));default:return e}}function qd(e){switch(e){case O.Int32:return"int";case O.Int64:return"bigint";case O.Float:return"float";case O.Double:return"double";case O.Text:return"string";case O.Enum:return"enum";case O.Bytes:return"bytes";case O.Boolean:return"bool";case O.Character:return"char";case O.Numeric:return"decimal";case O.Json:return"json";case O.Uuid:return"uuid";case O.DateTime:return"datetime";case O.Date:return"date";case O.Time:return"time";case O.Int32Array:return"int-array";case O.Int64Array:return"bigint-array";case O.FloatArray:return"float-array";case O.DoubleArray:return"double-array";case O.TextArray:return"string-array";case O.EnumArray:return"string-array";case O.BytesArray:return"bytes-array";case O.BooleanArray:return"bool-array";case O.CharacterArray:return"char-array";case O.NumericArray:return"decimal-array";case O.JsonArray:return"json-array";case O.UuidArray:return"uuid-array";case O.DateTimeArray:return"datetime-array";case O.DateArray:return"date-array";case O.TimeArray:return"time-array";case O.UnknownNumber:return"unknown";case O.Set:return"string";default:$(e,`Unexpected column type: ${e}`)}}c();u();p();m();d();l();function ac(e,t,r){if(!t.every(n=>To(e,n))){let n=Bd(e,r),i=jd(r);throw new ce(n,i,r.context)}}function To(e,t){switch(t.type){case"rowCountEq":return Array.isArray(e)?e.length===t.args:e===null?t.args===0:t.args===1;case"rowCountNeq":return Array.isArray(e)?e.length!==t.args:e===null?t.args!==0:t.args!==1;case"affectedRowCountEq":return e===t.args;case"never":return!1;default:$(t,`Unknown rule type: ${t.type}`)}}function Bd(e,t){switch(t.error_identifier){case"RELATION_VIOLATION":return`The change you are trying to make would violate the required relation '${t.context.relation}' between the \`${t.context.modelA}\` and \`${t.context.modelB}\` models.`;case"MISSING_RECORD":return`An operation failed because it depends on one or more records that were required but not found. No record was found for ${t.context.operation}.`;case"MISSING_RELATED_RECORD":{let r=t.context.neededFor?` (needed to ${t.context.neededFor})`:"";return`An operation failed because it depends on one or more records that were required but not found. No '${t.context.model}' record${r} was found for ${t.context.operation} on ${t.context.relationType} relation '${t.context.relation}'.`}case"INCOMPLETE_CONNECT_INPUT":return`An operation failed because it depends on one or more records that were required but not found. Expected ${t.context.expectedRows} records to be connected, found only ${Array.isArray(e)?e.length:e}.`;case"INCOMPLETE_CONNECT_OUTPUT":return`The required connected records were not found. Expected ${t.context.expectedRows} records to be connected after connect operation on ${t.context.relationType} relation '${t.context.relation}', found ${Array.isArray(e)?e.length:e}.`;case"RECORDS_NOT_CONNECTED":return`The records for relation \`${t.context.relation}\` between the \`${t.context.parent}\` and \`${t.context.child}\` models are not connected.`;default:$(t,`Unknown error identifier: ${t}`)}}function jd(e){switch(e.error_identifier){case"RELATION_VIOLATION":return"P2014";case"RECORDS_NOT_CONNECTED":return"P2017";case"INCOMPLETE_CONNECT_OUTPUT":return"P2018";case"MISSING_RECORD":case"MISSING_RELATED_RECORD":case"INCOMPLETE_CONNECT_INPUT":return"P2025";default:$(e,`Unknown error identifier: ${e}`)}}var Cr=class e{#t;#e;#r;#n=new Qn;#s;#i;#a;#o;#c;constructor({transactionManager:t,placeholderValues:r,onQuery:n,tracingHelper:i,serializer:o,rawSerializer:s,provider:a,connectionInfo:f}){this.#t=t,this.#e=r,this.#r=n,this.#s=i,this.#i=o,this.#a=s??o,this.#o=a,this.#c=f}static forSql(t){return new e({transactionManager:t.transactionManager,placeholderValues:t.placeholderValues,onQuery:t.onQuery,tracingHelper:t.tracingHelper,serializer:oc,rawSerializer:sc,provider:t.provider,connectionInfo:t.connectionInfo})}async run(t,r){let{value:n}=await this.interpretNode(t,r,this.#e,this.#n.snapshot()).catch(i=>_t(i));return n}async interpretNode(t,r,n,i){switch(t.type){case"value":return{value:Te(t.args,n,i)};case"seq":{let o;for(let s of t.args)o=await this.interpretNode(s,r,n,i);return o??{value:void 0}}case"get":return{value:n[t.args.name]};case"let":{let o=Object.create(n);for(let s of t.args.bindings){let{value:a}=await this.interpretNode(s.expr,r,o,i);o[s.name]=a}return this.interpretNode(t.args.expr,r,o,i)}case"getFirstNonEmpty":{for(let o of t.args.names){let s=n[o];if(!lc(s))return{value:s}}return{value:[]}}case"concat":{let o=await Promise.all(t.args.map(s=>this.interpretNode(s,r,n,i).then(a=>a.value)));return{value:o.length>0?o.reduce((s,a)=>s.concat(vo(a)),[]):[]}}case"sum":{let o=await Promise.all(t.args.map(s=>this.interpretNode(s,r,n,i).then(a=>a.value)));return{value:o.length>0?o.reduce((s,a)=>Oe(s)+Oe(a)):0}}case"execute":{let o=Po(t.args,n,i,this.#l()),s=0;for(let a of o)s+=await this.#u(a,r,()=>r.executeRaw(a).catch(f=>t.args.type==="rawSql"?Ji(f):_t(f)));return{value:s}}case"query":{let o=Po(t.args,n,i,this.#l()),s;for(let a of o){let f=await this.#u(a,r,()=>r.queryRaw(a).catch(w=>t.args.type==="rawSql"?Ji(w):_t(w)));s===void 0?s=f:(s.rows.push(...f.rows),s.lastInsertId=f.lastInsertId)}return{value:t.args.type==="rawSql"?this.#a(s):this.#i(s),lastInsertId:s?.lastInsertId}}case"reverse":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args,r,n,i);return{value:Array.isArray(o)?o.reverse():o,lastInsertId:s}}case"unique":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args,r,n,i);if(!Array.isArray(o))return{value:o,lastInsertId:s};if(o.length>1)throw new Error(`Expected zero or one element, got ${o.length}`);return{value:o[0]??null,lastInsertId:s}}case"required":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args,r,n,i);if(lc(o))throw new Error("Required value is empty");return{value:o,lastInsertId:s}}case"mapField":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args.records,r,n,i);return{value:cc(o,t.args.field),lastInsertId:s}}case"join":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args.parent,r,n,i);if(o===null)return{value:null,lastInsertId:s};let a=await Promise.all(t.args.children.map(async f=>({joinExpr:f,childRecords:(await this.interpretNode(f.child,r,n,i)).value})));return{value:Qd(o,a),lastInsertId:s}}case"transaction":{if(!this.#t.enabled)return this.interpretNode(t.args,r,n,i);let o=this.#t.manager,s=await o.startInternalTransaction(),a=await o.getTransaction(s,"query");try{let f=await this.interpretNode(t.args,a,n,i);return await o.commitTransaction(s.id),f}catch(f){throw await o.rollbackTransaction(s.id),f}}case"dataMap":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args.expr,r,n,i);return{value:el(o,t.args.structure,t.args.enums),lastInsertId:s}}case"validate":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args.expr,r,n,i);return ac(o,t.args.rules,t.args),{value:o,lastInsertId:s}}case"if":{let{value:o}=await this.interpretNode(t.args.value,r,n,i);return To(o,t.args.rule)?await this.interpretNode(t.args.then,r,n,i):await this.interpretNode(t.args.else,r,n,i)}case"unit":return{value:void 0};case"diff":{let{value:o}=await this.interpretNode(t.args.from,r,n,i),{value:s}=await this.interpretNode(t.args.to,r,n,i),a=w=>w!==null?Ft(Gn(w),t.args.fields):null,f=new Set(vo(s).map(a));return{value:vo(o).filter(w=>!f.has(a(w)))}}case"process":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args.expr,r,n,i);return{value:Hn(o,t.args.operations),lastInsertId:s}}case"initializeRecord":{let{lastInsertId:o}=await this.interpretNode(t.args.expr,r,n,i),s={};for(let[a,f]of Object.entries(t.args.fields))s[a]=Hd(f,o,n,i);return{value:s,lastInsertId:o}}case"mapRecord":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args.expr,r,n,i),a=o===null?{}:Gn(o);for(let[f,w]of Object.entries(t.args.fields))a[f]=Gd(w,a[f],n,i);return{value:a,lastInsertId:s}}default:$(t,`Unexpected node type: ${t.type}`)}}#l(){return this.#c?.maxBindValues!==void 0?this.#c.maxBindValues:this.#p()}#p(){if(this.#o!==void 0)switch(this.#o){case"cockroachdb":case"postgres":case"postgresql":case"prisma+postgres":return 32766;case"mysql":return 65535;case"sqlite":return 999;case"sqlserver":return 2098;case"mongodb":return;default:$(this.#o,`Unexpected provider: ${this.#o}`)}}#u(t,r,n){return Ln({query:t,execute:n,provider:this.#o??r.provider,tracingHelper:this.#s,onQuery:this.#r})}};function lc(e){return Array.isArray(e)?e.length===0:e==null}function vo(e){return Array.isArray(e)?e:[e]}function Oe(e){if(typeof e=="number")return e;if(typeof e=="string")return Number(e);throw new Error(`Expected number, got ${typeof e}`)}function Gn(e){if(typeof e=="object"&&e!==null)return e;throw new Error(`Expected object, got ${typeof e}`)}function cc(e,t){return Array.isArray(e)?e.map(r=>cc(r,t)):typeof e=="object"&&e!==null?e[t]??null:e}function Qd(e,t){for(let{joinExpr:r,childRecords:n}of t){let i=r.on.map(([a])=>a),o=r.on.map(([,a])=>a),s={};for(let a of Array.isArray(e)?e:[e]){let f=Gn(a),w=Ft(f,i);s[w]||(s[w]=[]),s[w].push(f),r.isRelationUnique?f[r.parentField]=null:f[r.parentField]=[]}for(let a of Array.isArray(n)?n:[n]){if(a===null)continue;let f=Ft(Gn(a),o);for(let w of s[f]??[])r.isRelationUnique?w[r.parentField]=a:w[r.parentField].push(a)}}return e}function Hd(e,t,r,n){switch(e.type){case"value":return Te(e.value,r,n);case"lastInsertId":return t;default:$(e,`Unexpected field initializer type: ${e.type}`)}}function Gd(e,t,r,n){switch(e.type){case"set":return Te(e.value,r,n);case"add":return Oe(t)+Oe(Te(e.value,r,n));case"subtract":return Oe(t)-Oe(Te(e.value,r,n));case"multiply":return Oe(t)*Oe(Te(e.value,r,n));case"divide":{let i=Oe(t),o=Oe(Te(e.value,r,n));return o===0?null:i/o}default:$(e,`Unexpected field operation type: ${e.type}`)}}c();u();p();m();d();l();c();u();p();m();d();l();async function Jd(){return globalThis.crypto??await Promise.resolve().then(()=>(Xe(),xi))}async function uc(){return(await Jd()).randomUUID()}c();u();p();m();d();l();var Ee=class extends ce{name="TransactionManagerError";constructor(t,r){super("Transaction API error: "+t,"P2028",r)}},Sr=class extends Ee{constructor(){super("Transaction not found. Transaction ID is invalid, refers to an old closed transaction Prisma doesn't have information about anymore, or was obtained before disconnecting.")}},Jn=class extends Ee{constructor(t){super(`Transaction already closed: A ${t} cannot be executed on a committed transaction.`)}},Wn=class extends Ee{constructor(t){super(`Transaction already closed: A ${t} cannot be executed on a transaction that was rolled back.`)}},Kn=class extends Ee{constructor(){super("Unable to start a transaction in the given time.")}},zn=class extends Ee{constructor(t,{timeout:r,timeTaken:n}){super(`A ${t} cannot be executed on an expired transaction. The timeout for this transaction was ${r} ms, however ${n} ms passed since the start of the transaction. Consider increasing the interactive transaction timeout or doing less work in the transaction.`,{operation:t,timeout:r,timeTaken:n})}},Vt=class extends Ee{constructor(t){super(`Internal Consistency Error: ${t}`)}},Yn=class extends Ee{constructor(t){super(`Invalid isolation level: ${t}`,{isolationLevel:t})}};var Wd=100,Ir=K("prisma:client:transactionManager"),Kd=()=>({sql:"COMMIT",args:[],argTypes:[]}),zd=()=>({sql:"ROLLBACK",args:[],argTypes:[]}),Yd=()=>({sql:'-- Implicit "COMMIT" query via underlying driver',args:[],argTypes:[]}),Zd=()=>({sql:'-- Implicit "ROLLBACK" query via underlying driver',args:[],argTypes:[]}),kr=class{transactions=new Map;closedTransactions=[];driverAdapter;transactionOptions;tracingHelper;#t;#e;constructor({driverAdapter:t,transactionOptions:r,tracingHelper:n,onQuery:i,provider:o}){this.driverAdapter=t,this.transactionOptions=r,this.tracingHelper=n,this.#t=i,this.#e=o}async startInternalTransaction(t){let r=t!==void 0?this.#a(t):{};return await this.tracingHelper.runInChildSpan("start_transaction",()=>this.#r(r))}async startTransaction(t){let r=t!==void 0?this.#a(t):this.transactionOptions;return await this.tracingHelper.runInChildSpan("start_transaction",()=>this.#r(r))}async#r(t){let r={id:await uc(),status:"waiting",timer:void 0,timeout:t.timeout,startedAt:Date.now(),transaction:void 0};this.transactions.set(r.id,r);let n=!1,i=pc(()=>n=!0,t.maxWait);switch(i?.unref?.(),r.transaction=await this.driverAdapter.startTransaction(t.isolationLevel).catch(_t),clearTimeout(i),r.status){case"waiting":if(n)throw await this.#i(r,"timed_out"),new Kn;return r.status="running",r.timer=this.#s(r.id,t.timeout),{id:r.id};case"timed_out":case"running":case"committed":case"rolled_back":throw new Vt(`Transaction in invalid state ${r.status} although it just finished startup.`);default:$(r.status,"Unknown transaction status.")}}async commitTransaction(t){return await this.tracingHelper.runInChildSpan("commit_transaction",async()=>{let r=this.#n(t,"commit");await this.#i(r,"committed")})}async rollbackTransaction(t){return await this.tracingHelper.runInChildSpan("rollback_transaction",async()=>{let r=this.#n(t,"rollback");await this.#i(r,"rolled_back")})}async getTransaction(t,r){let n=this.#n(t.id,r);if(n.status==="closing"&&(await n.closing,n=this.#n(t.id,r)),!n.transaction)throw new Sr;return n.transaction}#n(t,r){let n=this.transactions.get(t);if(!n){let i=this.closedTransactions.find(o=>o.id===t);if(i)switch(Ir("Transaction already closed.",{transactionId:t,status:i.status}),i.status){case"closing":case"waiting":case"running":throw new Vt("Active transaction found in closed transactions list.");case"committed":throw new Jn(r);case"rolled_back":throw new Wn(r);case"timed_out":throw new zn(r,{timeout:i.timeout,timeTaken:Date.now()-i.startedAt})}else throw Ir("Transaction not found.",t),new Sr}if(["committed","rolled_back","timed_out"].includes(n.status))throw new Vt("Closed transaction found in active transactions map.");return n}async cancelAllTransactions(){await Promise.allSettled([...this.transactions.values()].map(t=>this.#i(t,"rolled_back")))}#s(t,r){let n=Date.now(),i=pc(async()=>{Ir("Transaction timed out.",{transactionId:t,timeoutStartedAt:n,timeout:r});let o=this.transactions.get(t);o&&["running","waiting"].includes(o.status)?await this.#i(o,"timed_out"):Ir("Transaction already committed or rolled back when timeout happened.",t)},r);return i?.unref?.(),i}async#i(t,r){let n=async()=>{Ir("Closing transaction.",{transactionId:t.id,status:r});try{if(t.transaction&&r==="committed")if(t.transaction.options.usePhantomQuery)await this.#o(Yd(),t.transaction,()=>t.transaction.commit());else{let i=Kd();await this.#o(i,t.transaction,()=>t.transaction.executeRaw(i)),await t.transaction.commit()}else if(t.transaction)if(t.transaction.options.usePhantomQuery)await this.#o(Zd(),t.transaction,()=>t.transaction.rollback());else{let i=zd();await this.#o(i,t.transaction,()=>t.transaction.executeRaw(i)),await t.transaction.rollback()}}finally{t.status=r,clearTimeout(t.timer),t.timer=void 0,this.transactions.delete(t.id),this.closedTransactions.push(t),this.closedTransactions.length>Wd&&this.closedTransactions.shift()}};t.status==="closing"?(await t.closing,this.#n(t.id,r==="committed"?"commit":"rollback")):await Object.assign(t,{status:"closing",reason:r,closing:n()}).closing}#a(t){if(!t.timeout)throw new Ee("timeout is required");if(!t.maxWait)throw new Ee("maxWait is required");if(t.isolationLevel==="SNAPSHOT")throw new Yn(t.isolationLevel);return{...t,timeout:t.timeout,maxWait:t.maxWait}}#o(t,r,n){return Ln({query:t,execute:n,provider:this.#e??r.provider,tracingHelper:this.tracingHelper,onQuery:this.#t})}};function pc(e,t){return t!==void 0?setTimeout(e,t):void 0}var Zn="6.19.2";c();u();p();m();d();l();var Xn=class e{#t;#e;#r;#n;constructor(t,r,n){this.#t=t,this.#e=r,this.#r=n,this.#n=r.getConnectionInfo?.()}static async connect(t){let r,n;try{r=await t.driverAdapterFactory.connect(),n=new kr({driverAdapter:r,transactionOptions:t.transactionOptions,tracingHelper:t.tracingHelper,onQuery:t.onQuery,provider:t.provider})}catch(i){throw await r?.dispose(),i}return new e(t,r,n)}getConnectionInfo(){let t=this.#n??{supportsRelationJoins:!1};return Promise.resolve({provider:this.#e.provider,connectionInfo:t})}async execute({plan:t,placeholderValues:r,transaction:n,batchIndex:i}){let o=n?await this.#r.getTransaction(n,i!==void 0?"batch query":"query"):this.#e;return await Cr.forSql({transactionManager:n?{enabled:!1}:{enabled:!0,manager:this.#r},placeholderValues:r,onQuery:this.#t.onQuery,tracingHelper:this.#t.tracingHelper,provider:this.#t.provider,connectionInfo:this.#n}).run(t,o)}async startTransaction(t){return{...await this.#r.startTransaction(t),payload:void 0}}async commitTransaction(t){await this.#r.commitTransaction(t.id)}async rollbackTransaction(t){await this.#r.rollbackTransaction(t.id)}async disconnect(){try{await this.#r.cancelAllTransactions()}finally{await this.#e.dispose()}}apiKey(){return null}};c();u();p();m();d();l();c();u();p();m();d();l();var ei=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function mc(e,t,r){let n=r||{},i=n.encode||encodeURIComponent;if(typeof i!="function")throw new TypeError("option encode is invalid");if(!ei.test(e))throw new TypeError("argument name is invalid");let o=i(t);if(o&&!ei.test(o))throw new TypeError("argument val is invalid");let s=e+"="+o;if(n.maxAge!==void 0&&n.maxAge!==null){let a=n.maxAge-0;if(Number.isNaN(a)||!Number.isFinite(a))throw new TypeError("option maxAge is invalid");s+="; Max-Age="+Math.floor(a)}if(n.domain){if(!ei.test(n.domain))throw new TypeError("option domain is invalid");s+="; Domain="+n.domain}if(n.path){if(!ei.test(n.path))throw new TypeError("option path is invalid");s+="; Path="+n.path}if(n.expires){if(!ef(n.expires)||Number.isNaN(n.expires.valueOf()))throw new TypeError("option expires is invalid");s+="; Expires="+n.expires.toUTCString()}if(n.httpOnly&&(s+="; HttpOnly"),n.secure&&(s+="; Secure"),n.priority)switch(typeof n.priority=="string"?n.priority.toLowerCase():n.priority){case"low":{s+="; Priority=Low";break}case"medium":{s+="; Priority=Medium";break}case"high":{s+="; Priority=High";break}default:throw new TypeError("option priority is invalid")}if(n.sameSite)switch(typeof n.sameSite=="string"?n.sameSite.toLowerCase():n.sameSite){case!0:{s+="; SameSite=Strict";break}case"lax":{s+="; SameSite=Lax";break}case"strict":{s+="; SameSite=Strict";break}case"none":{s+="; SameSite=None";break}default:throw new TypeError("option sameSite is invalid")}return n.partitioned&&(s+="; Partitioned"),s}function ef(e){return Object.prototype.toString.call(e)==="[object Date]"||e instanceof Date}function dc(e,t){let r=(e||"").split(";").filter(f=>typeof f=="string"&&!!f.trim()),n=r.shift()||"",i=tf(n),o=i.name,s=i.value;try{s=t?.decode===!1?s:(t?.decode||decodeURIComponent)(s)}catch{}let a={name:o,value:s};for(let f of r){let w=f.split("="),A=(w.shift()||"").trimStart().toLowerCase(),R=w.join("=");switch(A){case"expires":{a.expires=new Date(R);break}case"max-age":{a.maxAge=Number.parseInt(R,10);break}case"secure":{a.secure=!0;break}case"httponly":{a.httpOnly=!0;break}case"samesite":{a.sameSite=R;break}default:a[A]=R}}return a}function tf(e){let t="",r="",n=e.split("=");return n.length>1?(t=n.shift(),r=n.join("=")):r=e,{name:t,value:r}}c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();var rf=()=>globalThis.process?.release?.name==="node",nf=()=>!!globalThis.Bun||!!globalThis.process?.versions?.bun,of=()=>!!globalThis.Deno,sf=()=>typeof globalThis.Netlify=="object",af=()=>typeof globalThis.EdgeRuntime=="object",lf=()=>globalThis.navigator?.userAgent==="Cloudflare-Workers";function cf(){return[[sf,"netlify"],[af,"edge-light"],[lf,"workerd"],[of,"deno"],[nf,"bun"],[rf,"node"]].flatMap(r=>r[0]()?[r[1]]:[]).at(0)??""}var uf={node:"Node.js",workerd:"Cloudflare Workers",deno:"Deno and Deno Deploy",netlify:"Netlify Edge Functions","edge-light":"Edge Runtime (Vercel Edge Functions, Vercel Edge Middleware, Next.js (Pages Router) Edge API Routes, Next.js (App Router) Edge Route Handlers or Next.js Middleware)"};function ti(){let e=cf();return{id:e,prettyName:uf[e]||e,isEdge:["workerd","deno","netlify","edge-light"].includes(e)}}function qt({inlineDatasources:e,overrideDatasources:t,env:r,clientVersion:n}){let i,o=Object.keys(e)[0],s=e[o]?.url,a=t[o]?.url;if(o===void 0?i=void 0:a?i=a:s?.value?i=s.value:s?.fromEnvVar&&(i=r[s.fromEnvVar]),s?.fromEnvVar!==void 0&&i===void 0)throw ti().id==="workerd"?new F(`error: Environment variable not found: ${s.fromEnvVar}. In Cloudflare module Workers, environment variables are available only in the Worker's \`env\` parameter of \`fetch\`. -To solve this, provide the connection string directly: https://pris.ly/d/cloudflare-datasource-url`, - n, - ) - : new F(`error: Environment variable not found: ${s.fromEnvVar}.`, n); - if (i === void 0) - throw new F( - "error: Missing URL environment variable, value, or override.", - n, - ); - return i; -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -var ri = class extends Error { - clientVersion; - cause; - constructor(t, r) { - (super(t), (this.clientVersion = r.clientVersion), (this.cause = r.cause)); - } - get [Symbol.toStringTag]() { - return this.name; - } -}; -var ge = class extends ri { - isRetryable; - constructor(t, r) { - (super(t, r), (this.isRetryable = r.isRetryable ?? !0)); - } -}; -c(); -u(); -p(); -m(); -d(); -l(); -function N(e, t) { - return { ...e, isRetryable: t }; -} -var st = class extends ge { - name = "InvalidDatasourceError"; - code = "P6001"; - constructor(t, r) { - super(t, N(r, !1)); - } -}; -D(st, "InvalidDatasourceError"); -function ni(e) { - let t = { clientVersion: e.clientVersion }, - r = Object.keys(e.inlineDatasources)[0], - n = qt({ - inlineDatasources: e.inlineDatasources, - overrideDatasources: e.overrideDatasources, - clientVersion: e.clientVersion, - env: { ...e.env, ...(typeof g < "u" ? g.env : {}) }, - }), - i; - try { - i = new URL(n); - } catch { - throw new st( - `Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\``, - t, - ); - } - let { protocol: o, searchParams: s } = i; - if (o !== "prisma:" && o !== ln) - throw new st( - `Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\` or \`prisma+postgres://\``, - t, - ); - let a = s.get("api_key"); - if (a === null || a.length < 1) - throw new st( - `Error validating datasource \`${r}\`: the URL must contain a valid API key`, - t, - ); - let f = Ti(i) ? "http:" : "https:"; - g.env.TEST_CLIENT_ENGINE_REMOTE_EXECUTOR && - i.searchParams.has("use_http") && - (f = "http:"); - let w = new URL(i.href.replace(o, f)); - return { apiKey: a, url: w }; -} -c(); -u(); -p(); -m(); -d(); -l(); -var fc = $e(Ts()), - Bt = class { - apiKey; - tracingHelper; - logLevel; - logQueries; - engineHash; - constructor({ - apiKey: t, - tracingHelper: r, - logLevel: n, - logQueries: i, - engineHash: o, - }) { - ((this.apiKey = t), - (this.tracingHelper = r), - (this.logLevel = n), - (this.logQueries = i), - (this.engineHash = o)); - } - build({ traceparent: t, transactionId: r } = {}) { - let n = { - Accept: "application/json", - Authorization: `Bearer ${this.apiKey}`, - "Content-Type": "application/json", - "Prisma-Engine-Hash": this.engineHash, - "Prisma-Engine-Version": fc.enginesVersion, - }; - (this.tracingHelper.isEnabled() && - (n.traceparent = t ?? this.tracingHelper.getTraceParent()), - r && (n["X-Transaction-Id"] = r)); - let i = this.#t(); - return (i.length > 0 && (n["X-Capture-Telemetry"] = i.join(", ")), n); - } - #t() { - let t = []; - return ( - this.tracingHelper.isEnabled() && t.push("tracing"), - this.logLevel && t.push(this.logLevel), - this.logQueries && t.push("query"), - t - ); - } - }; -c(); -u(); -p(); -m(); -d(); -l(); -function pf(e) { - return e[0] * 1e3 + e[1] / 1e6; -} -function jt(e) { - return new Date(pf(e)); -} -var gc = K("prisma:client:clientEngine:remoteExecutor"), - ii = class { - #t; - #e; - #r; - #n; - #s; - constructor(t) { - ((this.#t = t.clientVersion), - (this.#n = t.logEmitter), - (this.#s = t.tracingHelper)); - let { url: r, apiKey: n } = ni({ - clientVersion: t.clientVersion, - env: t.env, - inlineDatasources: t.inlineDatasources, - overrideDatasources: t.overrideDatasources, - }); - ((this.#r = new Ao(r)), - (this.#e = new Bt({ - apiKey: n, - engineHash: t.clientVersion, - logLevel: t.logLevel, - logQueries: t.logQueries, - tracingHelper: t.tracingHelper, - }))); - } - async getConnectionInfo() { - return await this.#i({ path: "/connection-info", method: "GET" }); - } - async execute({ - plan: t, - placeholderValues: r, - batchIndex: n, - model: i, - operation: o, - transaction: s, - customFetch: a, - }) { - return ( - await this.#i({ - path: s ? `/transaction/${s.id}/query` : "/query", - method: "POST", - body: { model: i, operation: o, plan: t, params: r }, - batchRequestIdx: n, - fetch: a, - }) - ).data; - } - async startTransaction(t) { - return { - ...(await this.#i({ - path: "/transaction/start", - method: "POST", - body: t, - })), - payload: void 0, - }; - } - async commitTransaction(t) { - await this.#i({ path: `/transaction/${t.id}/commit`, method: "POST" }); - } - async rollbackTransaction(t) { - await this.#i({ path: `/transaction/${t.id}/rollback`, method: "POST" }); - } - disconnect() { - return Promise.resolve(); - } - apiKey() { - return this.#e.apiKey; - } - async #i({ - path: t, - method: r, - body: n, - fetch: i = globalThis.fetch, - batchRequestIdx: o, - }) { - let s = await this.#r.request({ - method: r, - path: t, - headers: this.#e.build(), - body: n, - fetch: i, - }); - s.ok || (await this.#a(s, o)); - let a = await s.json(); - return ( - typeof a.extensions == "object" && - a.extensions !== null && - this.#o(a.extensions), - a - ); - } - async #a(t, r) { - let n = t.headers.get("Prisma-Error-Code"), - i = await t.text(), - o, - s = i; - try { - o = JSON.parse(i); - } catch { - o = {}; - } - (typeof o.code == "string" && (n = o.code), - typeof o.error == "string" - ? (s = o.error) - : typeof o.message == "string" - ? (s = o.message) - : typeof o.InvalidRequestError == "object" && - o.InvalidRequestError !== null && - typeof o.InvalidRequestError.reason == "string" && - (s = o.InvalidRequestError.reason), - (s = s || `HTTP ${t.status}: ${t.statusText}`)); - let a = typeof o.meta == "object" && o.meta !== null ? o.meta : o; - throw new X(s, { - clientVersion: this.#t, - code: n ?? "P6000", - batchRequestIdx: r, - meta: a, - }); - } - #o(t) { - if (t.logs) for (let r of t.logs) this.#c(r); - t.traces && this.#s.dispatchEngineSpans(t.traces); - } - #c(t) { - switch (t.level) { - case "debug": - case "trace": - gc(t); - break; - case "error": - case "warn": - case "info": { - this.#n.emit(t.level, { - timestamp: jt(t.timestamp), - message: t.attributes.message ?? "", - target: t.target ?? "RemoteExecutor", - }); - break; - } - case "query": { - this.#n.emit("query", { - query: t.attributes.query ?? "", - timestamp: jt(t.timestamp), - duration: t.attributes.duration_ms ?? 0, - params: t.attributes.params ?? "", - target: t.target ?? "RemoteExecutor", - }); - break; - } - default: - throw new Error(`Unexpected log level: ${t.level}`); - } - } - }, - Ao = class { - #t; - #e; - #r; - constructor(t) { - ((this.#t = t), (this.#e = new Map())); - } - async request({ method: t, path: r, headers: n, body: i, fetch: o }) { - let s = new URL(r, this.#t), - a = this.#n(s); - (a && (n.Cookie = a), - this.#r && (n["Accelerate-Query-Engine-Jwt"] = this.#r)); - let f = await o(s.href, { - method: t, - body: i !== void 0 ? JSON.stringify(i) : void 0, - headers: n, - }); - return ( - gc(t, s, f.status, f.statusText), - (this.#r = f.headers.get("Accelerate-Query-Engine-Jwt") ?? void 0), - this.#s(s, f), - f - ); - } - #n(t) { - let r = [], - n = new Date(); - for (let [i, o] of this.#e) { - if (o.expires && o.expires < n) { - this.#e.delete(i); - continue; - } - let s = o.domain ?? t.hostname, - a = o.path ?? "/"; - t.hostname.endsWith(s) && - t.pathname.startsWith(a) && - r.push(mc(o.name, o.value)); - } - return r.length > 0 ? r.join("; ") : void 0; - } - #s(t, r) { - let n = r.headers.getSetCookie?.() || []; - if (n.length === 0) { - let i = r.headers.get("Set-Cookie"); - i && n.push(i); - } - for (let i of n) { - let o = dc(i), - s = o.domain ?? t.hostname, - a = o.path ?? "/", - f = `${s}:${a}:${o.name}`; - this.#e.set(f, { - name: o.name, - value: o.value, - domain: s, - path: a, - expires: o.expires, - }); - } - } - }; -c(); -u(); -p(); -m(); -d(); -l(); -var Ro = {}, - yc = { - async loadQueryCompiler(e) { - let { clientVersion: t, compilerWasm: r } = e; - if (r === void 0) - throw new F("WASM query compiler was unexpectedly `undefined`", t); - let n; - return ( - e.activeProvider === void 0 || Ro[e.activeProvider] === void 0 - ? ((n = (async () => { - let i = await r.getRuntime(), - o = await r.getQueryCompilerWasmModule(); - if (o == null) - throw new F( - "The loaded wasm module was unexpectedly `undefined` or `null` once loaded", - t, - ); - let s = { "./query_compiler_bg.js": i }, - a = new WebAssembly.Instance(o, s), - f = a.exports.__wbindgen_start; - return (i.__wbg_set_wasm(a.exports), f(), i.QueryCompiler); - })()), - e.activeProvider !== void 0 && (Ro[e.activeProvider] = n)) - : (n = Ro[e.activeProvider]), - await n - ); - }, - }; -var mf = "P2038", - Or = K("prisma:client:clientEngine"), - wc = globalThis; -wc.PRISMA_WASM_PANIC_REGISTRY = { - set_message(e) { - throw new ae(e, Zn); - }, -}; -var Dr = class { - name = "ClientEngine"; - #t; - #e = { type: "disconnected" }; - #r; - #n; - config; - datamodel; - logEmitter; - logQueries; - logLevel; - tracingHelper; - #s; - constructor(t, r, n) { - if (r) this.#n = { remote: !0 }; - else if (t.adapter) - ((this.#n = { remote: !1, driverAdapterFactory: t.adapter }), - Or("Using driver adapter: %O", t.adapter)); - else - throw new F( - "Missing configured driver adapter. Engine type `client` requires an active driver adapter. Please check your PrismaClient initialization code.", - t.clientVersion, - mf, - ); - ((this.#r = n ?? yc), - (this.config = t), - (this.logQueries = t.logQueries ?? !1), - (this.logLevel = t.logLevel ?? "error"), - (this.logEmitter = t.logEmitter), - (this.datamodel = t.inlineSchema), - (this.tracingHelper = t.tracingHelper), - t.enableDebugLogs && (this.logLevel = "debug"), - this.logQueries && - (this.#s = (i) => { - this.logEmitter.emit("query", { - ...i, - params: br(i.params), - target: "ClientEngine", - }); - })); - } - applyPendingMigrations() { - throw new Error( - "Cannot call applyPendingMigrations on engine type client.", - ); - } - async #i() { - switch (this.#e.type) { - case "disconnected": { - let t = this.tracingHelper.runInChildSpan("connect", async () => { - let r, n; - try { - ((r = await this.#a()), (n = await this.#o(r))); - } catch (o) { - throw ( - (this.#e = { type: "disconnected" }), - n?.free(), - await r?.disconnect(), - o - ); - } - let i = { executor: r, queryCompiler: n }; - return ((this.#e = { type: "connected", engine: i }), i); - }); - return ((this.#e = { type: "connecting", promise: t }), await t); - } - case "connecting": - return await this.#e.promise; - case "connected": - return this.#e.engine; - case "disconnecting": - return (await this.#e.promise, await this.#i()); - } - } - async #a() { - return this.#n.remote - ? new ii({ - clientVersion: this.config.clientVersion, - env: this.config.env, - inlineDatasources: this.config.inlineDatasources, - logEmitter: this.logEmitter, - logLevel: this.logLevel, - logQueries: this.logQueries, - overrideDatasources: this.config.overrideDatasources, - tracingHelper: this.tracingHelper, - }) - : await Xn.connect({ - driverAdapterFactory: this.#n.driverAdapterFactory, - tracingHelper: this.tracingHelper, - transactionOptions: { - ...this.config.transactionOptions, - isolationLevel: this.#m( - this.config.transactionOptions.isolationLevel, - ), - }, - onQuery: this.#s, - provider: this.config.activeProvider, - }); - } - async #o(t) { - let r = this.#t; - r === void 0 && - ((r = await this.#r.loadQueryCompiler(this.config)), (this.#t = r)); - let { provider: n, connectionInfo: i } = await t.getConnectionInfo(); - try { - return this.#u( - () => - new r({ datamodel: this.datamodel, provider: n, connectionInfo: i }), - void 0, - !1, - ); - } catch (o) { - throw this.#c(o); - } - } - #c(t) { - if (t instanceof ae) return t; - try { - let r = JSON.parse(t.message); - return new F(r.message, this.config.clientVersion, r.error_code); - } catch { - return t; - } - } - #l(t, r) { - if (t instanceof F) return t; - if (t.code === "GenericFailure" && t.message?.startsWith("PANIC:")) - return new ae(hc(this, t.message, r), this.config.clientVersion); - if (t instanceof ce) - return new X(t.message, { - code: t.code, - meta: t.meta, - clientVersion: this.config.clientVersion, - }); - try { - let n = JSON.parse(t); - return new ne( - `${n.message} -${n.backtrace}`, - { clientVersion: this.config.clientVersion }, - ); - } catch { - return t; - } - } - #p(t) { - return t instanceof ae - ? t - : typeof t.message == "string" && typeof t.code == "string" - ? new X(t.message, { - code: t.code, - meta: t.meta, - clientVersion: this.config.clientVersion, - }) - : typeof t.message == "string" - ? new ne(t.message, { clientVersion: this.config.clientVersion }) - : t; - } - #u(t, r, n = !0) { - let i = wc.PRISMA_WASM_PANIC_REGISTRY.set_message, - o; - globalThis.PRISMA_WASM_PANIC_REGISTRY.set_message = (s) => { - o = s; - }; - try { - return t(); - } finally { - if (((globalThis.PRISMA_WASM_PANIC_REGISTRY.set_message = i), o)) - throw ( - (this.#t = void 0), - n && this.stop().catch((s) => Or("failed to disconnect:", s)), - new ae(hc(this, o, r), this.config.clientVersion) - ); - } - } - onBeforeExit() { - throw new Error( - '"beforeExit" hook is not applicable to the client engine, it is only relevant and implemented for the binary engine. Please add your event listener to the `process` object directly instead.', - ); - } - async start() { - await this.#i(); - } - async stop() { - switch (this.#e.type) { - case "disconnected": - return; - case "connecting": - return (await this.#e.promise, await this.stop()); - case "connected": { - let t = this.#e.engine, - r = this.tracingHelper.runInChildSpan("disconnect", async () => { - try { - (await t.executor.disconnect(), t.queryCompiler.free()); - } finally { - this.#e = { type: "disconnected" }; - } - }); - return ((this.#e = { type: "disconnecting", promise: r }), await r); - } - case "disconnecting": - return await this.#e.promise; - } - } - version() { - return "unknown"; - } - async transaction(t, r, n) { - let i, - { executor: o } = await this.#i(); - try { - if (t === "start") { - let s = n; - i = await o.startTransaction({ - ...s, - isolationLevel: this.#m(s.isolationLevel), - }); - } else if (t === "commit") { - let s = n; - await o.commitTransaction(s); - } else if (t === "rollback") { - let s = n; - await o.rollbackTransaction(s); - } else Me(t, "Invalid transaction action."); - } catch (s) { - throw this.#l(s); - } - return i ? { id: i.id, payload: void 0 } : void 0; - } - async request(t, { interactiveTransaction: r, customDataProxyFetch: n }) { - Or("sending request"); - let i = JSON.stringify(t), - { executor: o, queryCompiler: s } = await this.#i().catch((f) => { - throw this.#l(f, i); - }), - a; - try { - a = this.#u(() => this.#d({ queries: [t], execute: () => s.compile(i) })); - } catch (f) { - throw this.#p(f); - } - try { - Or("query plan created", a); - let f = {}, - w = await o.execute({ - plan: a, - model: t.modelName, - operation: t.action, - placeholderValues: f, - transaction: r, - batchIndex: void 0, - customFetch: n?.(globalThis.fetch), - }); - return (Or("query plan executed"), { data: { [t.action]: w } }); - } catch (f) { - throw this.#l(f, i); - } - } - async requestBatch(t, { transaction: r, customDataProxyFetch: n }) { - if (t.length === 0) return []; - let i = t[0].action, - o = JSON.stringify(kt(t, r)), - { executor: s, queryCompiler: a } = await this.#i().catch((w) => { - throw this.#l(w, o); - }), - f; - try { - f = this.#u(() => - this.#d({ queries: t, execute: () => a.compileBatch(o) }), - ); - } catch (w) { - throw this.#p(w); - } - try { - let w; - r?.kind === "itx" && (w = r.options); - let A = {}; - switch (f.type) { - case "multi": { - if (r?.kind !== "itx") { - let C = r?.options.isolationLevel - ? { - ...this.config.transactionOptions, - isolationLevel: r.options.isolationLevel, - } - : this.config.transactionOptions; - w = await this.transaction("start", {}, C); - } - let R = [], - S = !1; - for (let [C, L] of f.plans.entries()) - try { - let k = await s.execute({ - plan: L, - placeholderValues: A, - model: t[C].modelName, - operation: t[C].action, - batchIndex: C, - transaction: w, - customFetch: n?.(globalThis.fetch), - }); - R.push({ data: { [t[C].action]: k } }); - } catch (k) { - (R.push(k), (S = !0)); - break; - } - return ( - w !== void 0 && - r?.kind !== "itx" && - (S - ? await this.transaction("rollback", {}, w) - : await this.transaction("commit", {}, w)), - R - ); - } - case "compacted": { - if (!t.every((C) => C.action === i)) - throw new Error("All queries in a batch must have the same action"); - let R = await s.execute({ - plan: f.plan, - placeholderValues: A, - model: t[0].modelName, - operation: i, - batchIndex: void 0, - transaction: w, - customFetch: n?.(globalThis.fetch), - }); - return Za(R, f).map((C) => ({ data: { [i]: C } })); - } - } - } catch (w) { - throw this.#l(w, o); - } - } - metrics(t) { - throw new Error("Method not implemented."); - } - async apiKey() { - let { executor: t } = await this.#i(); - return t.apiKey(); - } - #m(t) { - switch (t) { - case void 0: - return; - case "ReadUncommitted": - return "READ UNCOMMITTED"; - case "ReadCommitted": - return "READ COMMITTED"; - case "RepeatableRead": - return "REPEATABLE READ"; - case "Serializable": - return "SERIALIZABLE"; - case "Snapshot": - return "SNAPSHOT"; - default: - throw new X( - `Inconsistent column data: Conversion failed: Invalid isolation level \`${t}\``, - { - code: "P2023", - clientVersion: this.config.clientVersion, - meta: { providedIsolationLevel: t }, - }, - ); - } - } - #d({ queries: t, execute: r }) { - return this.tracingHelper.runInChildSpan( - { - name: "compile", - attributes: { - models: t.map((n) => n.modelName).filter((n) => n !== void 0), - actions: t.map((n) => n.action), - }, - }, - r, - ); - } -}; -function hc(e, t, r) { - return Ha({ - binaryTarget: void 0, - title: t, - version: e.config.clientVersion, - engineVersion: "unknown", - database: e.config.activeProvider, - query: r, - }); -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -var Qt = class extends ge { - name = "ForcedRetryError"; - code = "P5001"; - constructor(t) { - super("This request must be retried", N(t, !0)); - } -}; -D(Qt, "ForcedRetryError"); -c(); -u(); -p(); -m(); -d(); -l(); -var at = class extends ge { - name = "NotImplementedYetError"; - code = "P5004"; - constructor(t, r) { - super(t, N(r, !1)); - } -}; -D(at, "NotImplementedYetError"); -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -var Q = class extends ge { - response; - constructor(t, r) { - (super(t, r), (this.response = r.response)); - let n = this.response.headers.get("prisma-request-id"); - if (n) { - let i = `(The request id was: ${n})`; - this.message = this.message + " " + i; - } - } -}; -var lt = class extends Q { - name = "SchemaMissingError"; - code = "P5005"; - constructor(t) { - super("Schema needs to be uploaded", N(t, !0)); - } -}; -D(lt, "SchemaMissingError"); -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -var Co = "This request could not be understood by the server", - _r = class extends Q { - name = "BadRequestError"; - code = "P5000"; - constructor(t, r, n) { - (super(r || Co, N(t, !1)), n && (this.code = n)); - } - }; -D(_r, "BadRequestError"); -c(); -u(); -p(); -m(); -d(); -l(); -var Mr = class extends Q { - name = "HealthcheckTimeoutError"; - code = "P5013"; - logs; - constructor(t, r) { - (super("Engine not started: healthcheck timeout", N(t, !0)), - (this.logs = r)); - } -}; -D(Mr, "HealthcheckTimeoutError"); -c(); -u(); -p(); -m(); -d(); -l(); -var Nr = class extends Q { - name = "EngineStartupError"; - code = "P5014"; - logs; - constructor(t, r, n) { - (super(r, N(t, !0)), (this.logs = n)); - } -}; -D(Nr, "EngineStartupError"); -c(); -u(); -p(); -m(); -d(); -l(); -var Lr = class extends Q { - name = "EngineVersionNotSupportedError"; - code = "P5012"; - constructor(t) { - super("Engine version is not supported", N(t, !1)); - } -}; -D(Lr, "EngineVersionNotSupportedError"); -c(); -u(); -p(); -m(); -d(); -l(); -var So = "Request timed out", - Ur = class extends Q { - name = "GatewayTimeoutError"; - code = "P5009"; - constructor(t, r = So) { - super(r, N(t, !1)); - } - }; -D(Ur, "GatewayTimeoutError"); -c(); -u(); -p(); -m(); -d(); -l(); -var df = "Interactive transaction error", - Fr = class extends Q { - name = "InteractiveTransactionError"; - code = "P5015"; - constructor(t, r = df) { - super(r, N(t, !1)); - } - }; -D(Fr, "InteractiveTransactionError"); -c(); -u(); -p(); -m(); -d(); -l(); -var ff = "Request parameters are invalid", - $r = class extends Q { - name = "InvalidRequestError"; - code = "P5011"; - constructor(t, r = ff) { - super(r, N(t, !1)); - } - }; -D($r, "InvalidRequestError"); -c(); -u(); -p(); -m(); -d(); -l(); -var Io = "Requested resource does not exist", - Vr = class extends Q { - name = "NotFoundError"; - code = "P5003"; - constructor(t, r = Io) { - super(r, N(t, !1)); - } - }; -D(Vr, "NotFoundError"); -c(); -u(); -p(); -m(); -d(); -l(); -var ko = "Unknown server error", - Ht = class extends Q { - name = "ServerError"; - code = "P5006"; - logs; - constructor(t, r, n) { - (super(r || ko, N(t, !0)), (this.logs = n)); - } - }; -D(Ht, "ServerError"); -c(); -u(); -p(); -m(); -d(); -l(); -var Oo = "Unauthorized, check your connection string", - qr = class extends Q { - name = "UnauthorizedError"; - code = "P5007"; - constructor(t, r = Oo) { - super(r, N(t, !1)); - } - }; -D(qr, "UnauthorizedError"); -c(); -u(); -p(); -m(); -d(); -l(); -var Do = "Usage exceeded, retry again later", - Br = class extends Q { - name = "UsageExceededError"; - code = "P5008"; - constructor(t, r = Do) { - super(r, N(t, !0)); - } - }; -D(Br, "UsageExceededError"); -async function gf(e) { - let t; - try { - t = await e.text(); - } catch { - return { type: "EmptyError" }; - } - try { - let r = JSON.parse(t); - if (typeof r == "string") - switch (r) { - case "InternalDataProxyError": - return { type: "DataProxyError", body: r }; - default: - return { type: "UnknownTextError", body: r }; - } - if (typeof r == "object" && r !== null) { - if ("is_panic" in r && "message" in r && "error_code" in r) - return { type: "QueryEngineError", body: r }; - if ( - "EngineNotStarted" in r || - "InteractiveTransactionMisrouted" in r || - "InvalidRequestError" in r - ) { - let n = Object.values(r)[0].reason; - return typeof n == "string" && - !["SchemaMissing", "EngineVersionNotSupported"].includes(n) - ? { type: "UnknownJsonError", body: r } - : { type: "DataProxyError", body: r }; - } - } - return { type: "UnknownJsonError", body: r }; - } catch { - return t === "" - ? { type: "EmptyError" } - : { type: "UnknownTextError", body: t }; - } -} -async function jr(e, t) { - if (e.ok) return; - let r = { clientVersion: t, response: e }, - n = await gf(e); - if (n.type === "QueryEngineError") - throw new X(n.body.message, { code: n.body.error_code, clientVersion: t }); - if (n.type === "DataProxyError") { - if (n.body === "InternalDataProxyError") - throw new Ht(r, "Internal Data Proxy error"); - if ("EngineNotStarted" in n.body) { - if (n.body.EngineNotStarted.reason === "SchemaMissing") return new lt(r); - if (n.body.EngineNotStarted.reason === "EngineVersionNotSupported") - throw new Lr(r); - if ("EngineStartupError" in n.body.EngineNotStarted.reason) { - let { msg: i, logs: o } = - n.body.EngineNotStarted.reason.EngineStartupError; - throw new Nr(r, i, o); - } - if ("KnownEngineStartupError" in n.body.EngineNotStarted.reason) { - let { msg: i, error_code: o } = - n.body.EngineNotStarted.reason.KnownEngineStartupError; - throw new F(i, t, o); - } - if ("HealthcheckTimeout" in n.body.EngineNotStarted.reason) { - let { logs: i } = n.body.EngineNotStarted.reason.HealthcheckTimeout; - throw new Mr(r, i); - } - } - if ("InteractiveTransactionMisrouted" in n.body) { - let i = { - IDParseError: "Could not parse interactive transaction ID", - NoQueryEngineFoundError: - "Could not find Query Engine for the specified host and transaction ID", - TransactionStartError: "Could not start interactive transaction", - }; - throw new Fr(r, i[n.body.InteractiveTransactionMisrouted.reason]); - } - if ("InvalidRequestError" in n.body) - throw new $r(r, n.body.InvalidRequestError.reason); - } - if (e.status === 401 || e.status === 403) throw new qr(r, Gt(Oo, n)); - if (e.status === 404) return new Vr(r, Gt(Io, n)); - if (e.status === 429) throw new Br(r, Gt(Do, n)); - if (e.status === 504) throw new Ur(r, Gt(So, n)); - if (e.status >= 500) throw new Ht(r, Gt(ko, n)); - if (e.status >= 400) throw new _r(r, Gt(Co, n)); -} -function Gt(e, t) { - return t.type === "EmptyError" ? e : `${e}: ${JSON.stringify(t)}`; -} -c(); -u(); -p(); -m(); -d(); -l(); -function bc(e) { - let t = Math.pow(2, e) * 50, - r = Math.ceil(Math.random() * t) - Math.ceil(t / 2), - n = t + r; - return new Promise((i) => setTimeout(() => i(n), n)); -} -c(); -u(); -p(); -m(); -d(); -l(); -var Fe = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; -function Ec(e) { - let t = new TextEncoder().encode(e), - r = "", - n = t.byteLength, - i = n % 3, - o = n - i, - s, - a, - f, - w, - A; - for (let R = 0; R < o; R = R + 3) - ((A = (t[R] << 16) | (t[R + 1] << 8) | t[R + 2]), - (s = (A & 16515072) >> 18), - (a = (A & 258048) >> 12), - (f = (A & 4032) >> 6), - (w = A & 63), - (r += Fe[s] + Fe[a] + Fe[f] + Fe[w])); - return ( - i == 1 - ? ((A = t[o]), - (s = (A & 252) >> 2), - (a = (A & 3) << 4), - (r += Fe[s] + Fe[a] + "==")) - : i == 2 && - ((A = (t[o] << 8) | t[o + 1]), - (s = (A & 64512) >> 10), - (a = (A & 1008) >> 4), - (f = (A & 15) << 2), - (r += Fe[s] + Fe[a] + Fe[f] + "=")), - r - ); -} -c(); -u(); -p(); -m(); -d(); -l(); -function xc(e) { - if ( - !!e.generator?.previewFeatures.some((r) => - r.toLowerCase().includes("metrics"), - ) - ) - throw new F( - "The `metrics` preview feature is not yet available with Accelerate.\nPlease remove `metrics` from the `previewFeatures` in your schema.\n\nMore information about Accelerate: https://pris.ly/d/accelerate", - e.clientVersion, - ); -} -c(); -u(); -p(); -m(); -d(); -l(); -var Pc = { - "@prisma/debug": "workspace:*", - "@prisma/engines-version": "7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7", - "@prisma/fetch-engine": "workspace:*", - "@prisma/get-platform": "workspace:*", -}; -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -var Qr = class extends ge { - name = "RequestError"; - code = "P5010"; - constructor(t, r) { - super( - `Cannot fetch data from service: -${t}`, - N(r, !0), - ); - } -}; -D(Qr, "RequestError"); -async function ct(e, t, r = (n) => n) { - let { clientVersion: n, ...i } = t, - o = r(fetch); - try { - return await o(e, i); - } catch (s) { - let a = s.message ?? "Unknown error"; - throw new Qr(a, { clientVersion: n, cause: s }); - } -} -var hf = /^[1-9][0-9]*\.[0-9]+\.[0-9]+$/, - Tc = K("prisma:client:dataproxyEngine"); -async function wf(e, t) { - let r = Pc["@prisma/engines-version"], - n = t.clientVersion ?? "unknown"; - if ( - g.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION || - globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION - ) - return ( - g.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION || - globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION - ); - if (e.includes("accelerate") && n !== "0.0.0" && n !== "in-memory") return n; - let [i, o] = n?.split("-") ?? []; - if (o === void 0 && hf.test(i)) return i; - if (o !== void 0 || n === "0.0.0" || n === "in-memory") { - let [s] = r.split("-") ?? [], - [a, f, w] = s.split("."), - A = bf(`<=${a}.${f}.${w}`), - R = await ct(A, { clientVersion: n }); - if (!R.ok) - throw new Error( - `Failed to fetch stable Prisma version, unpkg.com status ${R.status} ${R.statusText}, response body: ${(await R.text()) || ""}`, - ); - let S = await R.text(); - Tc("length of body fetched from unpkg.com", S.length); - let C; - try { - C = JSON.parse(S); - } catch (L) { - throw ( - console.error("JSON.parse error: body fetched from unpkg.com: ", S), - L - ); - } - return C.version; - } - throw new at( - "Only `major.minor.patch` versions are supported by Accelerate.", - { clientVersion: n }, - ); -} -async function vc(e, t) { - let r = await wf(e, t); - return (Tc("version", r), r); -} -function bf(e) { - return encodeURI(`https://unpkg.com/prisma@${e}/package.json`); -} -var Ac = 3, - Hr = K("prisma:client:dataproxyEngine"), - Gr = class { - name = "DataProxyEngine"; - inlineSchema; - inlineSchemaHash; - inlineDatasources; - config; - logEmitter; - env; - clientVersion; - engineHash; - tracingHelper; - remoteClientVersion; - host; - headerBuilder; - startPromise; - protocol; - constructor(t) { - (xc(t), - (this.config = t), - (this.env = t.env), - (this.inlineSchema = Ec(t.inlineSchema)), - (this.inlineDatasources = t.inlineDatasources), - (this.inlineSchemaHash = t.inlineSchemaHash), - (this.clientVersion = t.clientVersion), - (this.engineHash = t.engineVersion), - (this.logEmitter = t.logEmitter), - (this.tracingHelper = t.tracingHelper)); - } - apiKey() { - return this.headerBuilder.apiKey; - } - version() { - return this.engineHash; - } - async start() { - (this.startPromise !== void 0 && (await this.startPromise), - (this.startPromise = (async () => { - let { apiKey: t, url: r } = this.getURLAndAPIKey(); - ((this.host = r.host), - (this.protocol = r.protocol), - (this.headerBuilder = new Bt({ - apiKey: t, - tracingHelper: this.tracingHelper, - logLevel: this.config.logLevel ?? "error", - logQueries: this.config.logQueries, - engineHash: this.engineHash, - })), - (this.remoteClientVersion = await vc(this.host, this.config)), - Hr("host", this.host), - Hr("protocol", this.protocol)); - })()), - await this.startPromise); - } - async stop() {} - propagateResponseExtensions(t) { - (t?.logs?.length && - t.logs.forEach((r) => { - switch (r.level) { - case "debug": - case "trace": - Hr(r); - break; - case "error": - case "warn": - case "info": { - this.logEmitter.emit(r.level, { - timestamp: jt(r.timestamp), - message: r.attributes.message ?? "", - target: r.target ?? "BinaryEngine", - }); - break; - } - case "query": { - this.logEmitter.emit("query", { - query: r.attributes.query ?? "", - timestamp: jt(r.timestamp), - duration: r.attributes.duration_ms ?? 0, - params: r.attributes.params ?? "", - target: r.target ?? "BinaryEngine", - }); - break; - } - default: - r.level; - } - }), - t?.traces?.length && this.tracingHelper.dispatchEngineSpans(t.traces)); - } - onBeforeExit() { - throw new Error( - '"beforeExit" hook is not applicable to the remote query engine', - ); - } - async url(t) { - return ( - await this.start(), - `${this.protocol}//${this.host}/${this.remoteClientVersion}/${this.inlineSchemaHash}/${t}` - ); - } - async uploadSchema() { - let t = { name: "schemaUpload", internal: !0 }; - return this.tracingHelper.runInChildSpan(t, async () => { - let r = await ct(await this.url("schema"), { - method: "PUT", - headers: this.headerBuilder.build(), - body: this.inlineSchema, - clientVersion: this.clientVersion, - }); - r.ok || Hr("schema response status", r.status); - let n = await jr(r, this.clientVersion); - if (n) - throw ( - this.logEmitter.emit("warn", { - message: `Error while uploading schema: ${n.message}`, - timestamp: new Date(), - target: "", - }), - n - ); - this.logEmitter.emit("info", { - message: `Schema (re)uploaded (hash: ${this.inlineSchemaHash})`, - timestamp: new Date(), - target: "", - }); - }); - } - request( - t, - { traceparent: r, interactiveTransaction: n, customDataProxyFetch: i }, - ) { - return this.requestInternal({ - body: t, - traceparent: r, - interactiveTransaction: n, - customDataProxyFetch: i, - }); - } - async requestBatch( - t, - { traceparent: r, transaction: n, customDataProxyFetch: i }, - ) { - let o = n?.kind === "itx" ? n.options : void 0, - s = kt(t, n); - return ( - await this.requestInternal({ - body: s, - customDataProxyFetch: i, - interactiveTransaction: o, - traceparent: r, - }) - ).map( - (f) => ( - f.extensions && this.propagateResponseExtensions(f.extensions), - "errors" in f ? this.convertProtocolErrorsToClientError(f.errors) : f - ), - ); - } - requestInternal({ - body: t, - traceparent: r, - customDataProxyFetch: n, - interactiveTransaction: i, - }) { - return this.withRetry({ - actionGerund: "querying", - callback: async ({ logHttpCall: o }) => { - let s = i - ? `${i.payload.endpoint}/graphql` - : await this.url("graphql"); - o(s); - let a = await ct( - s, - { - method: "POST", - headers: this.headerBuilder.build({ - traceparent: r, - transactionId: i?.id, - }), - body: JSON.stringify(t), - clientVersion: this.clientVersion, - }, - n, - ); - (a.ok || Hr("graphql response status", a.status), - await this.handleError(await jr(a, this.clientVersion))); - let f = await a.json(); - if ( - (f.extensions && this.propagateResponseExtensions(f.extensions), - "errors" in f) - ) - throw this.convertProtocolErrorsToClientError(f.errors); - return "batchResult" in f ? f.batchResult : f; - }, - }); - } - async transaction(t, r, n) { - let i = { - start: "starting", - commit: "committing", - rollback: "rolling back", - }; - return this.withRetry({ - actionGerund: `${i[t]} transaction`, - callback: async ({ logHttpCall: o }) => { - if (t === "start") { - let s = JSON.stringify({ - max_wait: n.maxWait, - timeout: n.timeout, - isolation_level: n.isolationLevel, - }), - a = await this.url("transaction/start"); - o(a); - let f = await ct(a, { - method: "POST", - headers: this.headerBuilder.build({ traceparent: r.traceparent }), - body: s, - clientVersion: this.clientVersion, - }); - await this.handleError(await jr(f, this.clientVersion)); - let w = await f.json(), - { extensions: A } = w; - A && this.propagateResponseExtensions(A); - let R = w.id, - S = w["data-proxy"].endpoint; - return { id: R, payload: { endpoint: S } }; - } else { - let s = `${n.payload.endpoint}/${t}`; - o(s); - let a = await ct(s, { - method: "POST", - headers: this.headerBuilder.build({ traceparent: r.traceparent }), - clientVersion: this.clientVersion, - }); - await this.handleError(await jr(a, this.clientVersion)); - let f = await a.json(), - { extensions: w } = f; - w && this.propagateResponseExtensions(w); - return; - } - }, - }); - } - getURLAndAPIKey() { - return ni({ - clientVersion: this.clientVersion, - env: this.env, - inlineDatasources: this.inlineDatasources, - overrideDatasources: this.config.overrideDatasources, - }); - } - metrics() { - throw new at("Metrics are not yet supported for Accelerate", { - clientVersion: this.clientVersion, - }); - } - async withRetry(t) { - for (let r = 0; ; r++) { - let n = (i) => { - this.logEmitter.emit("info", { - message: `Calling ${i} (n=${r})`, - timestamp: new Date(), - target: "", - }); - }; - try { - return await t.callback({ logHttpCall: n }); - } catch (i) { - if (!(i instanceof ge) || !i.isRetryable) throw i; - if (r >= Ac) throw i instanceof Qt ? i.cause : i; - this.logEmitter.emit("warn", { - message: `Attempt ${r + 1}/${Ac} failed for ${t.actionGerund}: ${i.message ?? "(unknown)"}`, - timestamp: new Date(), - target: "", - }); - let o = await bc(r); - this.logEmitter.emit("warn", { - message: `Retrying after ${o}ms`, - timestamp: new Date(), - target: "", - }); - } - } - } - async handleError(t) { - if (t instanceof lt) - throw ( - await this.uploadSchema(), - new Qt({ clientVersion: this.clientVersion, cause: t }) - ); - if (t) throw t; - } - convertProtocolErrorsToClientError(t) { - return t.length === 1 - ? _n(t[0], this.config.clientVersion, this.config.activeProvider) - : new ne(JSON.stringify(t), { - clientVersion: this.config.clientVersion, - }); - } - applyPendingMigrations() { - throw new Error("Method not implemented."); - } - }; -c(); -u(); -p(); -m(); -d(); -l(); -function Rc({ url: e, adapter: t, copyEngine: r, targetBuildType: n }) { - let i = [], - o = [], - s = (k) => { - i.push({ _tag: "warning", value: k }); - }, - a = (k) => { - let M = k.join(` -`); - o.push({ _tag: "error", value: M }); - }, - f = !!e?.startsWith("prisma://"), - w = cn(e), - A = !!t, - R = f || w; - !A && - r && - R && - n !== "client" && - n !== "wasm-compiler-edge" && - s([ - "recommend--no-engine", - "In production, we recommend using `prisma generate --no-engine` (See: `prisma generate --help`)", - ]); - let S = R || !r; - A && - (S || n === "edge") && - (n === "edge" - ? a([ - "Prisma Client was configured to use the `adapter` option but it was imported via its `/edge` endpoint.", - "Please either remove the `/edge` endpoint or remove the `adapter` from the Prisma Client constructor.", - ]) - : R - ? a([ - "You've provided both a driver adapter and an Accelerate database URL. Driver adapters currently cannot connect to Accelerate.", - "Please provide either a driver adapter with a direct database URL or an Accelerate URL and no driver adapter.", - ]) - : r || - a([ - "Prisma Client was configured to use the `adapter` option but `prisma generate` was run with `--no-engine`.", - "Please run `prisma generate` without `--no-engine` to be able to use Prisma Client with the adapter.", - ])); - let C = { accelerate: S, ppg: w, driverAdapters: A }; - function L(k) { - return k.length > 0; - } - return L(o) - ? { ok: !1, diagnostics: { warnings: i, errors: o }, isUsing: C } - : { ok: !0, diagnostics: { warnings: i }, isUsing: C }; -} -function Cc({ copyEngine: e = !0 }, t) { - let r; - try { - r = qt({ - inlineDatasources: t.inlineDatasources, - overrideDatasources: t.overrideDatasources, - env: { ...t.env, ...g.env }, - clientVersion: t.clientVersion, - }); - } catch {} - let { - ok: n, - isUsing: i, - diagnostics: o, - } = Rc({ - url: r, - adapter: t.adapter, - copyEngine: e, - targetBuildType: "wasm-compiler-edge", - }); - for (let R of o.warnings) rr(...R.value); - if (!n) { - let R = o.errors[0]; - throw new ie(R.value, { clientVersion: t.clientVersion }); - } - let s = gt(t.generator), - a = s === "library", - f = s === "binary", - w = s === "client", - A = (i.accelerate || i.ppg) && !i.driverAdapters; - return w - ? new Dr(t, A) - : i.accelerate - ? new Gr(t) - : (i.driverAdapters, new _o({ clientVersion: t.clientVersion })); -} -var _o = class { - constructor(t) { - return new Proxy(this, { - get(r, n) { - let i = `In order to run Prisma Client on edge runtime, either: +To solve this, provide the connection string directly: https://pris.ly/d/cloudflare-datasource-url`,n):new F(`error: Environment variable not found: ${s.fromEnvVar}.`,n);if(i===void 0)throw new F("error: Missing URL environment variable, value, or override.",n);return i}c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();var ri=class extends Error{clientVersion;cause;constructor(t,r){super(t),this.clientVersion=r.clientVersion,this.cause=r.cause}get[Symbol.toStringTag](){return this.name}};var ge=class extends ri{isRetryable;constructor(t,r){super(t,r),this.isRetryable=r.isRetryable??!0}};c();u();p();m();d();l();function N(e,t){return{...e,isRetryable:t}}var st=class extends ge{name="InvalidDatasourceError";code="P6001";constructor(t,r){super(t,N(r,!1))}};D(st,"InvalidDatasourceError");function ni(e){let t={clientVersion:e.clientVersion},r=Object.keys(e.inlineDatasources)[0],n=qt({inlineDatasources:e.inlineDatasources,overrideDatasources:e.overrideDatasources,clientVersion:e.clientVersion,env:{...e.env,...typeof g<"u"?g.env:{}}}),i;try{i=new URL(n)}catch{throw new st(`Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\``,t)}let{protocol:o,searchParams:s}=i;if(o!=="prisma:"&&o!==ln)throw new st(`Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\` or \`prisma+postgres://\``,t);let a=s.get("api_key");if(a===null||a.length<1)throw new st(`Error validating datasource \`${r}\`: the URL must contain a valid API key`,t);let f=Ti(i)?"http:":"https:";g.env.TEST_CLIENT_ENGINE_REMOTE_EXECUTOR&&i.searchParams.has("use_http")&&(f="http:");let w=new URL(i.href.replace(o,f));return{apiKey:a,url:w}}c();u();p();m();d();l();var fc=$e(Ts()),Bt=class{apiKey;tracingHelper;logLevel;logQueries;engineHash;constructor({apiKey:t,tracingHelper:r,logLevel:n,logQueries:i,engineHash:o}){this.apiKey=t,this.tracingHelper=r,this.logLevel=n,this.logQueries=i,this.engineHash=o}build({traceparent:t,transactionId:r}={}){let n={Accept:"application/json",Authorization:`Bearer ${this.apiKey}`,"Content-Type":"application/json","Prisma-Engine-Hash":this.engineHash,"Prisma-Engine-Version":fc.enginesVersion};this.tracingHelper.isEnabled()&&(n.traceparent=t??this.tracingHelper.getTraceParent()),r&&(n["X-Transaction-Id"]=r);let i=this.#t();return i.length>0&&(n["X-Capture-Telemetry"]=i.join(", ")),n}#t(){let t=[];return this.tracingHelper.isEnabled()&&t.push("tracing"),this.logLevel&&t.push(this.logLevel),this.logQueries&&t.push("query"),t}};c();u();p();m();d();l();function pf(e){return e[0]*1e3+e[1]/1e6}function jt(e){return new Date(pf(e))}var gc=K("prisma:client:clientEngine:remoteExecutor"),ii=class{#t;#e;#r;#n;#s;constructor(t){this.#t=t.clientVersion,this.#n=t.logEmitter,this.#s=t.tracingHelper;let{url:r,apiKey:n}=ni({clientVersion:t.clientVersion,env:t.env,inlineDatasources:t.inlineDatasources,overrideDatasources:t.overrideDatasources});this.#r=new Ao(r),this.#e=new Bt({apiKey:n,engineHash:t.clientVersion,logLevel:t.logLevel,logQueries:t.logQueries,tracingHelper:t.tracingHelper})}async getConnectionInfo(){return await this.#i({path:"/connection-info",method:"GET"})}async execute({plan:t,placeholderValues:r,batchIndex:n,model:i,operation:o,transaction:s,customFetch:a}){return(await this.#i({path:s?`/transaction/${s.id}/query`:"/query",method:"POST",body:{model:i,operation:o,plan:t,params:r},batchRequestIdx:n,fetch:a})).data}async startTransaction(t){return{...await this.#i({path:"/transaction/start",method:"POST",body:t}),payload:void 0}}async commitTransaction(t){await this.#i({path:`/transaction/${t.id}/commit`,method:"POST"})}async rollbackTransaction(t){await this.#i({path:`/transaction/${t.id}/rollback`,method:"POST"})}disconnect(){return Promise.resolve()}apiKey(){return this.#e.apiKey}async#i({path:t,method:r,body:n,fetch:i=globalThis.fetch,batchRequestIdx:o}){let s=await this.#r.request({method:r,path:t,headers:this.#e.build(),body:n,fetch:i});s.ok||await this.#a(s,o);let a=await s.json();return typeof a.extensions=="object"&&a.extensions!==null&&this.#o(a.extensions),a}async#a(t,r){let n=t.headers.get("Prisma-Error-Code"),i=await t.text(),o,s=i;try{o=JSON.parse(i)}catch{o={}}typeof o.code=="string"&&(n=o.code),typeof o.error=="string"?s=o.error:typeof o.message=="string"?s=o.message:typeof o.InvalidRequestError=="object"&&o.InvalidRequestError!==null&&typeof o.InvalidRequestError.reason=="string"&&(s=o.InvalidRequestError.reason),s=s||`HTTP ${t.status}: ${t.statusText}`;let a=typeof o.meta=="object"&&o.meta!==null?o.meta:o;throw new X(s,{clientVersion:this.#t,code:n??"P6000",batchRequestIdx:r,meta:a})}#o(t){if(t.logs)for(let r of t.logs)this.#c(r);t.traces&&this.#s.dispatchEngineSpans(t.traces)}#c(t){switch(t.level){case"debug":case"trace":gc(t);break;case"error":case"warn":case"info":{this.#n.emit(t.level,{timestamp:jt(t.timestamp),message:t.attributes.message??"",target:t.target??"RemoteExecutor"});break}case"query":{this.#n.emit("query",{query:t.attributes.query??"",timestamp:jt(t.timestamp),duration:t.attributes.duration_ms??0,params:t.attributes.params??"",target:t.target??"RemoteExecutor"});break}default:throw new Error(`Unexpected log level: ${t.level}`)}}},Ao=class{#t;#e;#r;constructor(t){this.#t=t,this.#e=new Map}async request({method:t,path:r,headers:n,body:i,fetch:o}){let s=new URL(r,this.#t),a=this.#n(s);a&&(n.Cookie=a),this.#r&&(n["Accelerate-Query-Engine-Jwt"]=this.#r);let f=await o(s.href,{method:t,body:i!==void 0?JSON.stringify(i):void 0,headers:n});return gc(t,s,f.status,f.statusText),this.#r=f.headers.get("Accelerate-Query-Engine-Jwt")??void 0,this.#s(s,f),f}#n(t){let r=[],n=new Date;for(let[i,o]of this.#e){if(o.expires&&o.expires0?r.join("; "):void 0}#s(t,r){let n=r.headers.getSetCookie?.()||[];if(n.length===0){let i=r.headers.get("Set-Cookie");i&&n.push(i)}for(let i of n){let o=dc(i),s=o.domain??t.hostname,a=o.path??"/",f=`${s}:${a}:${o.name}`;this.#e.set(f,{name:o.name,value:o.value,domain:s,path:a,expires:o.expires})}}};c();u();p();m();d();l();var Ro={},yc={async loadQueryCompiler(e){let{clientVersion:t,compilerWasm:r}=e;if(r===void 0)throw new F("WASM query compiler was unexpectedly `undefined`",t);let n;return e.activeProvider===void 0||Ro[e.activeProvider]===void 0?(n=(async()=>{let i=await r.getRuntime(),o=await r.getQueryCompilerWasmModule();if(o==null)throw new F("The loaded wasm module was unexpectedly `undefined` or `null` once loaded",t);let s={"./query_compiler_bg.js":i},a=new WebAssembly.Instance(o,s),f=a.exports.__wbindgen_start;return i.__wbg_set_wasm(a.exports),f(),i.QueryCompiler})(),e.activeProvider!==void 0&&(Ro[e.activeProvider]=n)):n=Ro[e.activeProvider],await n}};var mf="P2038",Or=K("prisma:client:clientEngine"),wc=globalThis;wc.PRISMA_WASM_PANIC_REGISTRY={set_message(e){throw new ae(e,Zn)}};var Dr=class{name="ClientEngine";#t;#e={type:"disconnected"};#r;#n;config;datamodel;logEmitter;logQueries;logLevel;tracingHelper;#s;constructor(t,r,n){if(r)this.#n={remote:!0};else if(t.adapter)this.#n={remote:!1,driverAdapterFactory:t.adapter},Or("Using driver adapter: %O",t.adapter);else throw new F("Missing configured driver adapter. Engine type `client` requires an active driver adapter. Please check your PrismaClient initialization code.",t.clientVersion,mf);this.#r=n??yc,this.config=t,this.logQueries=t.logQueries??!1,this.logLevel=t.logLevel??"error",this.logEmitter=t.logEmitter,this.datamodel=t.inlineSchema,this.tracingHelper=t.tracingHelper,t.enableDebugLogs&&(this.logLevel="debug"),this.logQueries&&(this.#s=i=>{this.logEmitter.emit("query",{...i,params:br(i.params),target:"ClientEngine"})})}applyPendingMigrations(){throw new Error("Cannot call applyPendingMigrations on engine type client.")}async#i(){switch(this.#e.type){case"disconnected":{let t=this.tracingHelper.runInChildSpan("connect",async()=>{let r,n;try{r=await this.#a(),n=await this.#o(r)}catch(o){throw this.#e={type:"disconnected"},n?.free(),await r?.disconnect(),o}let i={executor:r,queryCompiler:n};return this.#e={type:"connected",engine:i},i});return this.#e={type:"connecting",promise:t},await t}case"connecting":return await this.#e.promise;case"connected":return this.#e.engine;case"disconnecting":return await this.#e.promise,await this.#i()}}async#a(){return this.#n.remote?new ii({clientVersion:this.config.clientVersion,env:this.config.env,inlineDatasources:this.config.inlineDatasources,logEmitter:this.logEmitter,logLevel:this.logLevel,logQueries:this.logQueries,overrideDatasources:this.config.overrideDatasources,tracingHelper:this.tracingHelper}):await Xn.connect({driverAdapterFactory:this.#n.driverAdapterFactory,tracingHelper:this.tracingHelper,transactionOptions:{...this.config.transactionOptions,isolationLevel:this.#m(this.config.transactionOptions.isolationLevel)},onQuery:this.#s,provider:this.config.activeProvider})}async#o(t){let r=this.#t;r===void 0&&(r=await this.#r.loadQueryCompiler(this.config),this.#t=r);let{provider:n,connectionInfo:i}=await t.getConnectionInfo();try{return this.#u(()=>new r({datamodel:this.datamodel,provider:n,connectionInfo:i}),void 0,!1)}catch(o){throw this.#c(o)}}#c(t){if(t instanceof ae)return t;try{let r=JSON.parse(t.message);return new F(r.message,this.config.clientVersion,r.error_code)}catch{return t}}#l(t,r){if(t instanceof F)return t;if(t.code==="GenericFailure"&&t.message?.startsWith("PANIC:"))return new ae(hc(this,t.message,r),this.config.clientVersion);if(t instanceof ce)return new X(t.message,{code:t.code,meta:t.meta,clientVersion:this.config.clientVersion});try{let n=JSON.parse(t);return new ne(`${n.message} +${n.backtrace}`,{clientVersion:this.config.clientVersion})}catch{return t}}#p(t){return t instanceof ae?t:typeof t.message=="string"&&typeof t.code=="string"?new X(t.message,{code:t.code,meta:t.meta,clientVersion:this.config.clientVersion}):typeof t.message=="string"?new ne(t.message,{clientVersion:this.config.clientVersion}):t}#u(t,r,n=!0){let i=wc.PRISMA_WASM_PANIC_REGISTRY.set_message,o;globalThis.PRISMA_WASM_PANIC_REGISTRY.set_message=s=>{o=s};try{return t()}finally{if(globalThis.PRISMA_WASM_PANIC_REGISTRY.set_message=i,o)throw this.#t=void 0,n&&this.stop().catch(s=>Or("failed to disconnect:",s)),new ae(hc(this,o,r),this.config.clientVersion)}}onBeforeExit(){throw new Error('"beforeExit" hook is not applicable to the client engine, it is only relevant and implemented for the binary engine. Please add your event listener to the `process` object directly instead.')}async start(){await this.#i()}async stop(){switch(this.#e.type){case"disconnected":return;case"connecting":return await this.#e.promise,await this.stop();case"connected":{let t=this.#e.engine,r=this.tracingHelper.runInChildSpan("disconnect",async()=>{try{await t.executor.disconnect(),t.queryCompiler.free()}finally{this.#e={type:"disconnected"}}});return this.#e={type:"disconnecting",promise:r},await r}case"disconnecting":return await this.#e.promise}}version(){return"unknown"}async transaction(t,r,n){let i,{executor:o}=await this.#i();try{if(t==="start"){let s=n;i=await o.startTransaction({...s,isolationLevel:this.#m(s.isolationLevel)})}else if(t==="commit"){let s=n;await o.commitTransaction(s)}else if(t==="rollback"){let s=n;await o.rollbackTransaction(s)}else Me(t,"Invalid transaction action.")}catch(s){throw this.#l(s)}return i?{id:i.id,payload:void 0}:void 0}async request(t,{interactiveTransaction:r,customDataProxyFetch:n}){Or("sending request");let i=JSON.stringify(t),{executor:o,queryCompiler:s}=await this.#i().catch(f=>{throw this.#l(f,i)}),a;try{a=this.#u(()=>this.#d({queries:[t],execute:()=>s.compile(i)}))}catch(f){throw this.#p(f)}try{Or("query plan created",a);let f={},w=await o.execute({plan:a,model:t.modelName,operation:t.action,placeholderValues:f,transaction:r,batchIndex:void 0,customFetch:n?.(globalThis.fetch)});return Or("query plan executed"),{data:{[t.action]:w}}}catch(f){throw this.#l(f,i)}}async requestBatch(t,{transaction:r,customDataProxyFetch:n}){if(t.length===0)return[];let i=t[0].action,o=JSON.stringify(kt(t,r)),{executor:s,queryCompiler:a}=await this.#i().catch(w=>{throw this.#l(w,o)}),f;try{f=this.#u(()=>this.#d({queries:t,execute:()=>a.compileBatch(o)}))}catch(w){throw this.#p(w)}try{let w;r?.kind==="itx"&&(w=r.options);let A={};switch(f.type){case"multi":{if(r?.kind!=="itx"){let C=r?.options.isolationLevel?{...this.config.transactionOptions,isolationLevel:r.options.isolationLevel}:this.config.transactionOptions;w=await this.transaction("start",{},C)}let R=[],S=!1;for(let[C,L]of f.plans.entries())try{let k=await s.execute({plan:L,placeholderValues:A,model:t[C].modelName,operation:t[C].action,batchIndex:C,transaction:w,customFetch:n?.(globalThis.fetch)});R.push({data:{[t[C].action]:k}})}catch(k){R.push(k),S=!0;break}return w!==void 0&&r?.kind!=="itx"&&(S?await this.transaction("rollback",{},w):await this.transaction("commit",{},w)),R}case"compacted":{if(!t.every(C=>C.action===i))throw new Error("All queries in a batch must have the same action");let R=await s.execute({plan:f.plan,placeholderValues:A,model:t[0].modelName,operation:i,batchIndex:void 0,transaction:w,customFetch:n?.(globalThis.fetch)});return Za(R,f).map(C=>({data:{[i]:C}}))}}}catch(w){throw this.#l(w,o)}}metrics(t){throw new Error("Method not implemented.")}async apiKey(){let{executor:t}=await this.#i();return t.apiKey()}#m(t){switch(t){case void 0:return;case"ReadUncommitted":return"READ UNCOMMITTED";case"ReadCommitted":return"READ COMMITTED";case"RepeatableRead":return"REPEATABLE READ";case"Serializable":return"SERIALIZABLE";case"Snapshot":return"SNAPSHOT";default:throw new X(`Inconsistent column data: Conversion failed: Invalid isolation level \`${t}\``,{code:"P2023",clientVersion:this.config.clientVersion,meta:{providedIsolationLevel:t}})}}#d({queries:t,execute:r}){return this.tracingHelper.runInChildSpan({name:"compile",attributes:{models:t.map(n=>n.modelName).filter(n=>n!==void 0),actions:t.map(n=>n.action)}},r)}};function hc(e,t,r){return Ha({binaryTarget:void 0,title:t,version:e.config.clientVersion,engineVersion:"unknown",database:e.config.activeProvider,query:r})}c();u();p();m();d();l();c();u();p();m();d();l();var Qt=class extends ge{name="ForcedRetryError";code="P5001";constructor(t){super("This request must be retried",N(t,!0))}};D(Qt,"ForcedRetryError");c();u();p();m();d();l();var at=class extends ge{name="NotImplementedYetError";code="P5004";constructor(t,r){super(t,N(r,!1))}};D(at,"NotImplementedYetError");c();u();p();m();d();l();c();u();p();m();d();l();var Q=class extends ge{response;constructor(t,r){super(t,r),this.response=r.response;let n=this.response.headers.get("prisma-request-id");if(n){let i=`(The request id was: ${n})`;this.message=this.message+" "+i}}};var lt=class extends Q{name="SchemaMissingError";code="P5005";constructor(t){super("Schema needs to be uploaded",N(t,!0))}};D(lt,"SchemaMissingError");c();u();p();m();d();l();c();u();p();m();d();l();var Co="This request could not be understood by the server",_r=class extends Q{name="BadRequestError";code="P5000";constructor(t,r,n){super(r||Co,N(t,!1)),n&&(this.code=n)}};D(_r,"BadRequestError");c();u();p();m();d();l();var Mr=class extends Q{name="HealthcheckTimeoutError";code="P5013";logs;constructor(t,r){super("Engine not started: healthcheck timeout",N(t,!0)),this.logs=r}};D(Mr,"HealthcheckTimeoutError");c();u();p();m();d();l();var Nr=class extends Q{name="EngineStartupError";code="P5014";logs;constructor(t,r,n){super(r,N(t,!0)),this.logs=n}};D(Nr,"EngineStartupError");c();u();p();m();d();l();var Lr=class extends Q{name="EngineVersionNotSupportedError";code="P5012";constructor(t){super("Engine version is not supported",N(t,!1))}};D(Lr,"EngineVersionNotSupportedError");c();u();p();m();d();l();var So="Request timed out",Ur=class extends Q{name="GatewayTimeoutError";code="P5009";constructor(t,r=So){super(r,N(t,!1))}};D(Ur,"GatewayTimeoutError");c();u();p();m();d();l();var df="Interactive transaction error",Fr=class extends Q{name="InteractiveTransactionError";code="P5015";constructor(t,r=df){super(r,N(t,!1))}};D(Fr,"InteractiveTransactionError");c();u();p();m();d();l();var ff="Request parameters are invalid",$r=class extends Q{name="InvalidRequestError";code="P5011";constructor(t,r=ff){super(r,N(t,!1))}};D($r,"InvalidRequestError");c();u();p();m();d();l();var Io="Requested resource does not exist",Vr=class extends Q{name="NotFoundError";code="P5003";constructor(t,r=Io){super(r,N(t,!1))}};D(Vr,"NotFoundError");c();u();p();m();d();l();var ko="Unknown server error",Ht=class extends Q{name="ServerError";code="P5006";logs;constructor(t,r,n){super(r||ko,N(t,!0)),this.logs=n}};D(Ht,"ServerError");c();u();p();m();d();l();var Oo="Unauthorized, check your connection string",qr=class extends Q{name="UnauthorizedError";code="P5007";constructor(t,r=Oo){super(r,N(t,!1))}};D(qr,"UnauthorizedError");c();u();p();m();d();l();var Do="Usage exceeded, retry again later",Br=class extends Q{name="UsageExceededError";code="P5008";constructor(t,r=Do){super(r,N(t,!0))}};D(Br,"UsageExceededError");async function gf(e){let t;try{t=await e.text()}catch{return{type:"EmptyError"}}try{let r=JSON.parse(t);if(typeof r=="string")switch(r){case"InternalDataProxyError":return{type:"DataProxyError",body:r};default:return{type:"UnknownTextError",body:r}}if(typeof r=="object"&&r!==null){if("is_panic"in r&&"message"in r&&"error_code"in r)return{type:"QueryEngineError",body:r};if("EngineNotStarted"in r||"InteractiveTransactionMisrouted"in r||"InvalidRequestError"in r){let n=Object.values(r)[0].reason;return typeof n=="string"&&!["SchemaMissing","EngineVersionNotSupported"].includes(n)?{type:"UnknownJsonError",body:r}:{type:"DataProxyError",body:r}}}return{type:"UnknownJsonError",body:r}}catch{return t===""?{type:"EmptyError"}:{type:"UnknownTextError",body:t}}}async function jr(e,t){if(e.ok)return;let r={clientVersion:t,response:e},n=await gf(e);if(n.type==="QueryEngineError")throw new X(n.body.message,{code:n.body.error_code,clientVersion:t});if(n.type==="DataProxyError"){if(n.body==="InternalDataProxyError")throw new Ht(r,"Internal Data Proxy error");if("EngineNotStarted"in n.body){if(n.body.EngineNotStarted.reason==="SchemaMissing")return new lt(r);if(n.body.EngineNotStarted.reason==="EngineVersionNotSupported")throw new Lr(r);if("EngineStartupError"in n.body.EngineNotStarted.reason){let{msg:i,logs:o}=n.body.EngineNotStarted.reason.EngineStartupError;throw new Nr(r,i,o)}if("KnownEngineStartupError"in n.body.EngineNotStarted.reason){let{msg:i,error_code:o}=n.body.EngineNotStarted.reason.KnownEngineStartupError;throw new F(i,t,o)}if("HealthcheckTimeout"in n.body.EngineNotStarted.reason){let{logs:i}=n.body.EngineNotStarted.reason.HealthcheckTimeout;throw new Mr(r,i)}}if("InteractiveTransactionMisrouted"in n.body){let i={IDParseError:"Could not parse interactive transaction ID",NoQueryEngineFoundError:"Could not find Query Engine for the specified host and transaction ID",TransactionStartError:"Could not start interactive transaction"};throw new Fr(r,i[n.body.InteractiveTransactionMisrouted.reason])}if("InvalidRequestError"in n.body)throw new $r(r,n.body.InvalidRequestError.reason)}if(e.status===401||e.status===403)throw new qr(r,Gt(Oo,n));if(e.status===404)return new Vr(r,Gt(Io,n));if(e.status===429)throw new Br(r,Gt(Do,n));if(e.status===504)throw new Ur(r,Gt(So,n));if(e.status>=500)throw new Ht(r,Gt(ko,n));if(e.status>=400)throw new _r(r,Gt(Co,n))}function Gt(e,t){return t.type==="EmptyError"?e:`${e}: ${JSON.stringify(t)}`}c();u();p();m();d();l();function bc(e){let t=Math.pow(2,e)*50,r=Math.ceil(Math.random()*t)-Math.ceil(t/2),n=t+r;return new Promise(i=>setTimeout(()=>i(n),n))}c();u();p();m();d();l();var Fe="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function Ec(e){let t=new TextEncoder().encode(e),r="",n=t.byteLength,i=n%3,o=n-i,s,a,f,w,A;for(let R=0;R>18,a=(A&258048)>>12,f=(A&4032)>>6,w=A&63,r+=Fe[s]+Fe[a]+Fe[f]+Fe[w];return i==1?(A=t[o],s=(A&252)>>2,a=(A&3)<<4,r+=Fe[s]+Fe[a]+"=="):i==2&&(A=t[o]<<8|t[o+1],s=(A&64512)>>10,a=(A&1008)>>4,f=(A&15)<<2,r+=Fe[s]+Fe[a]+Fe[f]+"="),r}c();u();p();m();d();l();function xc(e){if(!!e.generator?.previewFeatures.some(r=>r.toLowerCase().includes("metrics")))throw new F("The `metrics` preview feature is not yet available with Accelerate.\nPlease remove `metrics` from the `previewFeatures` in your schema.\n\nMore information about Accelerate: https://pris.ly/d/accelerate",e.clientVersion)}c();u();p();m();d();l();var Pc={"@prisma/debug":"workspace:*","@prisma/engines-version":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/fetch-engine":"workspace:*","@prisma/get-platform":"workspace:*"};c();u();p();m();d();l();c();u();p();m();d();l();var Qr=class extends ge{name="RequestError";code="P5010";constructor(t,r){super(`Cannot fetch data from service: +${t}`,N(r,!0))}};D(Qr,"RequestError");async function ct(e,t,r=n=>n){let{clientVersion:n,...i}=t,o=r(fetch);try{return await o(e,i)}catch(s){let a=s.message??"Unknown error";throw new Qr(a,{clientVersion:n,cause:s})}}var hf=/^[1-9][0-9]*\.[0-9]+\.[0-9]+$/,Tc=K("prisma:client:dataproxyEngine");async function wf(e,t){let r=Pc["@prisma/engines-version"],n=t.clientVersion??"unknown";if(g.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION||globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION)return g.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION||globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION;if(e.includes("accelerate")&&n!=="0.0.0"&&n!=="in-memory")return n;let[i,o]=n?.split("-")??[];if(o===void 0&&hf.test(i))return i;if(o!==void 0||n==="0.0.0"||n==="in-memory"){let[s]=r.split("-")??[],[a,f,w]=s.split("."),A=bf(`<=${a}.${f}.${w}`),R=await ct(A,{clientVersion:n});if(!R.ok)throw new Error(`Failed to fetch stable Prisma version, unpkg.com status ${R.status} ${R.statusText}, response body: ${await R.text()||""}`);let S=await R.text();Tc("length of body fetched from unpkg.com",S.length);let C;try{C=JSON.parse(S)}catch(L){throw console.error("JSON.parse error: body fetched from unpkg.com: ",S),L}return C.version}throw new at("Only `major.minor.patch` versions are supported by Accelerate.",{clientVersion:n})}async function vc(e,t){let r=await wf(e,t);return Tc("version",r),r}function bf(e){return encodeURI(`https://unpkg.com/prisma@${e}/package.json`)}var Ac=3,Hr=K("prisma:client:dataproxyEngine"),Gr=class{name="DataProxyEngine";inlineSchema;inlineSchemaHash;inlineDatasources;config;logEmitter;env;clientVersion;engineHash;tracingHelper;remoteClientVersion;host;headerBuilder;startPromise;protocol;constructor(t){xc(t),this.config=t,this.env=t.env,this.inlineSchema=Ec(t.inlineSchema),this.inlineDatasources=t.inlineDatasources,this.inlineSchemaHash=t.inlineSchemaHash,this.clientVersion=t.clientVersion,this.engineHash=t.engineVersion,this.logEmitter=t.logEmitter,this.tracingHelper=t.tracingHelper}apiKey(){return this.headerBuilder.apiKey}version(){return this.engineHash}async start(){this.startPromise!==void 0&&await this.startPromise,this.startPromise=(async()=>{let{apiKey:t,url:r}=this.getURLAndAPIKey();this.host=r.host,this.protocol=r.protocol,this.headerBuilder=new Bt({apiKey:t,tracingHelper:this.tracingHelper,logLevel:this.config.logLevel??"error",logQueries:this.config.logQueries,engineHash:this.engineHash}),this.remoteClientVersion=await vc(this.host,this.config),Hr("host",this.host),Hr("protocol",this.protocol)})(),await this.startPromise}async stop(){}propagateResponseExtensions(t){t?.logs?.length&&t.logs.forEach(r=>{switch(r.level){case"debug":case"trace":Hr(r);break;case"error":case"warn":case"info":{this.logEmitter.emit(r.level,{timestamp:jt(r.timestamp),message:r.attributes.message??"",target:r.target??"BinaryEngine"});break}case"query":{this.logEmitter.emit("query",{query:r.attributes.query??"",timestamp:jt(r.timestamp),duration:r.attributes.duration_ms??0,params:r.attributes.params??"",target:r.target??"BinaryEngine"});break}default:r.level}}),t?.traces?.length&&this.tracingHelper.dispatchEngineSpans(t.traces)}onBeforeExit(){throw new Error('"beforeExit" hook is not applicable to the remote query engine')}async url(t){return await this.start(),`${this.protocol}//${this.host}/${this.remoteClientVersion}/${this.inlineSchemaHash}/${t}`}async uploadSchema(){let t={name:"schemaUpload",internal:!0};return this.tracingHelper.runInChildSpan(t,async()=>{let r=await ct(await this.url("schema"),{method:"PUT",headers:this.headerBuilder.build(),body:this.inlineSchema,clientVersion:this.clientVersion});r.ok||Hr("schema response status",r.status);let n=await jr(r,this.clientVersion);if(n)throw this.logEmitter.emit("warn",{message:`Error while uploading schema: ${n.message}`,timestamp:new Date,target:""}),n;this.logEmitter.emit("info",{message:`Schema (re)uploaded (hash: ${this.inlineSchemaHash})`,timestamp:new Date,target:""})})}request(t,{traceparent:r,interactiveTransaction:n,customDataProxyFetch:i}){return this.requestInternal({body:t,traceparent:r,interactiveTransaction:n,customDataProxyFetch:i})}async requestBatch(t,{traceparent:r,transaction:n,customDataProxyFetch:i}){let o=n?.kind==="itx"?n.options:void 0,s=kt(t,n);return(await this.requestInternal({body:s,customDataProxyFetch:i,interactiveTransaction:o,traceparent:r})).map(f=>(f.extensions&&this.propagateResponseExtensions(f.extensions),"errors"in f?this.convertProtocolErrorsToClientError(f.errors):f))}requestInternal({body:t,traceparent:r,customDataProxyFetch:n,interactiveTransaction:i}){return this.withRetry({actionGerund:"querying",callback:async({logHttpCall:o})=>{let s=i?`${i.payload.endpoint}/graphql`:await this.url("graphql");o(s);let a=await ct(s,{method:"POST",headers:this.headerBuilder.build({traceparent:r,transactionId:i?.id}),body:JSON.stringify(t),clientVersion:this.clientVersion},n);a.ok||Hr("graphql response status",a.status),await this.handleError(await jr(a,this.clientVersion));let f=await a.json();if(f.extensions&&this.propagateResponseExtensions(f.extensions),"errors"in f)throw this.convertProtocolErrorsToClientError(f.errors);return"batchResult"in f?f.batchResult:f}})}async transaction(t,r,n){let i={start:"starting",commit:"committing",rollback:"rolling back"};return this.withRetry({actionGerund:`${i[t]} transaction`,callback:async({logHttpCall:o})=>{if(t==="start"){let s=JSON.stringify({max_wait:n.maxWait,timeout:n.timeout,isolation_level:n.isolationLevel}),a=await this.url("transaction/start");o(a);let f=await ct(a,{method:"POST",headers:this.headerBuilder.build({traceparent:r.traceparent}),body:s,clientVersion:this.clientVersion});await this.handleError(await jr(f,this.clientVersion));let w=await f.json(),{extensions:A}=w;A&&this.propagateResponseExtensions(A);let R=w.id,S=w["data-proxy"].endpoint;return{id:R,payload:{endpoint:S}}}else{let s=`${n.payload.endpoint}/${t}`;o(s);let a=await ct(s,{method:"POST",headers:this.headerBuilder.build({traceparent:r.traceparent}),clientVersion:this.clientVersion});await this.handleError(await jr(a,this.clientVersion));let f=await a.json(),{extensions:w}=f;w&&this.propagateResponseExtensions(w);return}}})}getURLAndAPIKey(){return ni({clientVersion:this.clientVersion,env:this.env,inlineDatasources:this.inlineDatasources,overrideDatasources:this.config.overrideDatasources})}metrics(){throw new at("Metrics are not yet supported for Accelerate",{clientVersion:this.clientVersion})}async withRetry(t){for(let r=0;;r++){let n=i=>{this.logEmitter.emit("info",{message:`Calling ${i} (n=${r})`,timestamp:new Date,target:""})};try{return await t.callback({logHttpCall:n})}catch(i){if(!(i instanceof ge)||!i.isRetryable)throw i;if(r>=Ac)throw i instanceof Qt?i.cause:i;this.logEmitter.emit("warn",{message:`Attempt ${r+1}/${Ac} failed for ${t.actionGerund}: ${i.message??"(unknown)"}`,timestamp:new Date,target:""});let o=await bc(r);this.logEmitter.emit("warn",{message:`Retrying after ${o}ms`,timestamp:new Date,target:""})}}}async handleError(t){if(t instanceof lt)throw await this.uploadSchema(),new Qt({clientVersion:this.clientVersion,cause:t});if(t)throw t}convertProtocolErrorsToClientError(t){return t.length===1?_n(t[0],this.config.clientVersion,this.config.activeProvider):new ne(JSON.stringify(t),{clientVersion:this.config.clientVersion})}applyPendingMigrations(){throw new Error("Method not implemented.")}};c();u();p();m();d();l();function Rc({url:e,adapter:t,copyEngine:r,targetBuildType:n}){let i=[],o=[],s=k=>{i.push({_tag:"warning",value:k})},a=k=>{let M=k.join(` +`);o.push({_tag:"error",value:M})},f=!!e?.startsWith("prisma://"),w=cn(e),A=!!t,R=f||w;!A&&r&&R&&n!=="client"&&n!=="wasm-compiler-edge"&&s(["recommend--no-engine","In production, we recommend using `prisma generate --no-engine` (See: `prisma generate --help`)"]);let S=R||!r;A&&(S||n==="edge")&&(n==="edge"?a(["Prisma Client was configured to use the `adapter` option but it was imported via its `/edge` endpoint.","Please either remove the `/edge` endpoint or remove the `adapter` from the Prisma Client constructor."]):R?a(["You've provided both a driver adapter and an Accelerate database URL. Driver adapters currently cannot connect to Accelerate.","Please provide either a driver adapter with a direct database URL or an Accelerate URL and no driver adapter."]):r||a(["Prisma Client was configured to use the `adapter` option but `prisma generate` was run with `--no-engine`.","Please run `prisma generate` without `--no-engine` to be able to use Prisma Client with the adapter."]));let C={accelerate:S,ppg:w,driverAdapters:A};function L(k){return k.length>0}return L(o)?{ok:!1,diagnostics:{warnings:i,errors:o},isUsing:C}:{ok:!0,diagnostics:{warnings:i},isUsing:C}}function Cc({copyEngine:e=!0},t){let r;try{r=qt({inlineDatasources:t.inlineDatasources,overrideDatasources:t.overrideDatasources,env:{...t.env,...g.env},clientVersion:t.clientVersion})}catch{}let{ok:n,isUsing:i,diagnostics:o}=Rc({url:r,adapter:t.adapter,copyEngine:e,targetBuildType:"wasm-compiler-edge"});for(let R of o.warnings)rr(...R.value);if(!n){let R=o.errors[0];throw new ie(R.value,{clientVersion:t.clientVersion})}let s=gt(t.generator),a=s==="library",f=s==="binary",w=s==="client",A=(i.accelerate||i.ppg)&&!i.driverAdapters;return w?new Dr(t,A):i.accelerate?new Gr(t):(i.driverAdapters,new _o({clientVersion:t.clientVersion}))}var _o=class{constructor(t){return new Proxy(this,{get(r,n){let i=`In order to run Prisma Client on edge runtime, either: - Use Prisma Accelerate: https://pris.ly/d/accelerate -- Use Driver Adapters: https://pris.ly/d/driver-adapters`; - throw new ie(i, t); - }, - }); - } -}; -c(); -u(); -p(); -m(); -d(); -l(); -function Sc({ generator: e }) { - return e?.previewFeatures ?? []; -} -c(); -u(); -p(); -m(); -d(); -l(); -var Ic = (e) => ({ command: e }); -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -var kc = (e) => e.strings.reduce((t, r, n) => `${t}@P${n}${r}`); -c(); -u(); -p(); -m(); -d(); -l(); -l(); -function Jt(e) { - try { - return Oc(e, "fast"); - } catch { - return Oc(e, "slow"); - } -} -function Oc(e, t) { - return JSON.stringify(e.map((r) => _c(r, t))); -} -function _c(e, t) { - if (Array.isArray(e)) return e.map((r) => _c(r, t)); - if (typeof e == "bigint") - return { prisma__type: "bigint", prisma__value: e.toString() }; - if (wt(e)) return { prisma__type: "date", prisma__value: e.toJSON() }; - if (se.isDecimal(e)) - return { prisma__type: "decimal", prisma__value: e.toJSON() }; - if (y.isBuffer(e)) - return { prisma__type: "bytes", prisma__value: e.toString("base64") }; - if (Ef(e)) - return { - prisma__type: "bytes", - prisma__value: y.from(e).toString("base64"), - }; - if (ArrayBuffer.isView(e)) { - let { buffer: r, byteOffset: n, byteLength: i } = e; - return { - prisma__type: "bytes", - prisma__value: y.from(r, n, i).toString("base64"), - }; - } - return typeof e == "object" && t === "slow" ? Mc(e) : e; -} -function Ef(e) { - return e instanceof ArrayBuffer || e instanceof SharedArrayBuffer - ? !0 - : typeof e == "object" && e !== null - ? e[Symbol.toStringTag] === "ArrayBuffer" || - e[Symbol.toStringTag] === "SharedArrayBuffer" - : !1; -} -function Mc(e) { - if (typeof e != "object" || e === null) return e; - if (typeof e.toJSON == "function") return e.toJSON(); - if (Array.isArray(e)) return e.map(Dc); - let t = {}; - for (let r of Object.keys(e)) t[r] = Dc(e[r]); - return t; -} -function Dc(e) { - return typeof e == "bigint" ? e.toString() : Mc(e); -} -var xf = /^(\s*alter\s)/i, - Nc = K("prisma:client"); -function Mo(e, t, r, n) { - if ( - !(e !== "postgresql" && e !== "cockroachdb") && - r.length > 0 && - xf.exec(t) - ) - throw new Error(`Running ALTER using ${n} is not supported +- Use Driver Adapters: https://pris.ly/d/driver-adapters`;throw new ie(i,t)}})}};c();u();p();m();d();l();function Sc({generator:e}){return e?.previewFeatures??[]}c();u();p();m();d();l();var Ic=e=>({command:e});c();u();p();m();d();l();c();u();p();m();d();l();var kc=e=>e.strings.reduce((t,r,n)=>`${t}@P${n}${r}`);c();u();p();m();d();l();l();function Jt(e){try{return Oc(e,"fast")}catch{return Oc(e,"slow")}}function Oc(e,t){return JSON.stringify(e.map(r=>_c(r,t)))}function _c(e,t){if(Array.isArray(e))return e.map(r=>_c(r,t));if(typeof e=="bigint")return{prisma__type:"bigint",prisma__value:e.toString()};if(wt(e))return{prisma__type:"date",prisma__value:e.toJSON()};if(se.isDecimal(e))return{prisma__type:"decimal",prisma__value:e.toJSON()};if(y.isBuffer(e))return{prisma__type:"bytes",prisma__value:e.toString("base64")};if(Ef(e))return{prisma__type:"bytes",prisma__value:y.from(e).toString("base64")};if(ArrayBuffer.isView(e)){let{buffer:r,byteOffset:n,byteLength:i}=e;return{prisma__type:"bytes",prisma__value:y.from(r,n,i).toString("base64")}}return typeof e=="object"&&t==="slow"?Mc(e):e}function Ef(e){return e instanceof ArrayBuffer||e instanceof SharedArrayBuffer?!0:typeof e=="object"&&e!==null?e[Symbol.toStringTag]==="ArrayBuffer"||e[Symbol.toStringTag]==="SharedArrayBuffer":!1}function Mc(e){if(typeof e!="object"||e===null)return e;if(typeof e.toJSON=="function")return e.toJSON();if(Array.isArray(e))return e.map(Dc);let t={};for(let r of Object.keys(e))t[r]=Dc(e[r]);return t}function Dc(e){return typeof e=="bigint"?e.toString():Mc(e)}var xf=/^(\s*alter\s)/i,Nc=K("prisma:client");function Mo(e,t,r,n){if(!(e!=="postgresql"&&e!=="cockroachdb")&&r.length>0&&xf.exec(t))throw new Error(`Running ALTER using ${n} is not supported Using the example below you can still execute your query with Prisma, but please note that it is vulnerable to SQL injection attacks and requires you to take care of input sanitization. Example: await prisma.$executeRawUnsafe(\`ALTER USER prisma WITH PASSWORD '\${password}'\`) More Information: https://pris.ly/d/execute-raw -`); -} -var No = - ({ clientMethod: e, activeProvider: t }) => - (r) => { - let n = "", - i; - if (In(r)) - ((n = r.sql), - (i = { values: Jt(r.values), __prismaRawParameters__: !0 })); - else if (Array.isArray(r)) { - let [o, ...s] = r; - ((n = o), (i = { values: Jt(s || []), __prismaRawParameters__: !0 })); - } else - switch (t) { - case "sqlite": - case "mysql": { - ((n = r.sql), - (i = { values: Jt(r.values), __prismaRawParameters__: !0 })); - break; - } - case "cockroachdb": - case "postgresql": - case "postgres": { - ((n = r.text), - (i = { values: Jt(r.values), __prismaRawParameters__: !0 })); - break; - } - case "sqlserver": { - ((n = kc(r)), - (i = { values: Jt(r.values), __prismaRawParameters__: !0 })); - break; - } - default: - throw new Error(`The ${t} provider does not support ${e}`); - } - return ( - i?.values - ? Nc(`prisma.${e}(${n}, ${i.values})`) - : Nc(`prisma.${e}(${n})`), - { query: n, parameters: i } - ); - }, - Lc = { - requestArgsToMiddlewareArgs(e) { - return [e.strings, ...e.values]; - }, - middlewareArgsToRequestArgs(e) { - let [t, ...r] = e; - return new fe(t, r); - }, - }, - Uc = { - requestArgsToMiddlewareArgs(e) { - return [e]; - }, - middlewareArgsToRequestArgs(e) { - return e[0]; - }, - }; -c(); -u(); -p(); -m(); -d(); -l(); -function Lo(e) { - return function (r, n) { - let i, - o = (s = e) => { - try { - return s === void 0 || s?.kind === "itx" - ? (i ??= Fc(r(s))) - : Fc(r(s)); - } catch (a) { - return Promise.reject(a); - } - }; - return { - get spec() { - return n; - }, - then(s, a) { - return o().then(s, a); - }, - catch(s) { - return o().catch(s); - }, - finally(s) { - return o().finally(s); - }, - requestTransaction(s) { - let a = o(s); - return a.requestTransaction ? a.requestTransaction(s) : a; - }, - [Symbol.toStringTag]: "PrismaPromise", - }; - }; -} -function Fc(e) { - return typeof e.then == "function" ? e : Promise.resolve(e); -} -c(); -u(); -p(); -m(); -d(); -l(); -var Pf = Ei.split(".")[0], - Tf = { - isEnabled() { - return !1; - }, - getTraceParent() { - return "00-10-10-00"; - }, - dispatchEngineSpans() {}, - getActiveContext() {}, - runInChildSpan(e, t) { - return t(); - }, - }, - Uo = class { - isEnabled() { - return this.getGlobalTracingHelper().isEnabled(); - } - getTraceParent(t) { - return this.getGlobalTracingHelper().getTraceParent(t); - } - dispatchEngineSpans(t) { - return this.getGlobalTracingHelper().dispatchEngineSpans(t); - } - getActiveContext() { - return this.getGlobalTracingHelper().getActiveContext(); - } - runInChildSpan(t, r) { - return this.getGlobalTracingHelper().runInChildSpan(t, r); - } - getGlobalTracingHelper() { - let t = globalThis[`V${Pf}_PRISMA_INSTRUMENTATION`], - r = globalThis.PRISMA_INSTRUMENTATION; - return t?.helper ?? r?.helper ?? Tf; - } - }; -function $c() { - return new Uo(); -} -c(); -u(); -p(); -m(); -d(); -l(); -function Vc(e, t = () => {}) { - let r, - n = new Promise((i) => (r = i)); - return { - then(i) { - return (--e === 0 && r(t()), i?.(n)); - }, - }; -} -c(); -u(); -p(); -m(); -d(); -l(); -function qc(e) { - return typeof e == "string" - ? e - : e.reduce( - (t, r) => { - let n = typeof r == "string" ? r : r.level; - return n === "query" - ? t - : t && (r === "info" || t === "info") - ? "info" - : n; - }, - void 0, - ); -} -c(); -u(); -p(); -m(); -d(); -l(); -c(); -u(); -p(); -m(); -d(); -l(); -function oi(e) { - return typeof e.batchRequestIdx == "number"; -} -c(); -u(); -p(); -m(); -d(); -l(); -function Bc(e) { - if (e.action !== "findUnique" && e.action !== "findUniqueOrThrow") return; - let t = []; - return ( - e.modelName && t.push(e.modelName), - e.query.arguments && t.push(Fo(e.query.arguments)), - t.push(Fo(e.query.selection)), - t.join("") - ); -} -function Fo(e) { - return `(${Object.keys(e) - .sort() - .map((r) => { - let n = e[r]; - return typeof n == "object" && n !== null ? `(${r} ${Fo(n)})` : r; - }) - .join(" ")})`; -} -c(); -u(); -p(); -m(); -d(); -l(); -var vf = { - aggregate: !1, - aggregateRaw: !1, - createMany: !0, - createManyAndReturn: !0, - createOne: !0, - deleteMany: !0, - deleteOne: !0, - executeRaw: !0, - findFirst: !1, - findFirstOrThrow: !1, - findMany: !1, - findRaw: !1, - findUnique: !1, - findUniqueOrThrow: !1, - groupBy: !1, - queryRaw: !1, - runCommandRaw: !0, - updateMany: !0, - updateManyAndReturn: !0, - updateOne: !0, - upsertOne: !0, -}; -function $o(e) { - return vf[e]; -} -c(); -u(); -p(); -m(); -d(); -l(); -var si = class { - constructor(t) { - this.options = t; - this.batches = {}; - } - batches; - tickActive = !1; - request(t) { - let r = this.options.batchBy(t); - return r - ? (this.batches[r] || - ((this.batches[r] = []), - this.tickActive || - ((this.tickActive = !0), - g.nextTick(() => { - (this.dispatchBatches(), (this.tickActive = !1)); - }))), - new Promise((n, i) => { - this.batches[r].push({ request: t, resolve: n, reject: i }); - })) - : this.options.singleLoader(t); - } - dispatchBatches() { - for (let t in this.batches) { - let r = this.batches[t]; - (delete this.batches[t], - r.length === 1 - ? this.options - .singleLoader(r[0].request) - .then((n) => { - n instanceof Error ? r[0].reject(n) : r[0].resolve(n); - }) - .catch((n) => { - r[0].reject(n); - }) - : (r.sort((n, i) => this.options.batchOrder(n.request, i.request)), - this.options - .batchLoader(r.map((n) => n.request)) - .then((n) => { - if (n instanceof Error) - for (let i = 0; i < r.length; i++) r[i].reject(n); - else - for (let i = 0; i < r.length; i++) { - let o = n[i]; - o instanceof Error ? r[i].reject(o) : r[i].resolve(o); - } - }) - .catch((n) => { - for (let i = 0; i < r.length; i++) r[i].reject(n); - }))); - } - } - get [Symbol.toStringTag]() { - return "DataLoader"; - } -}; -c(); -u(); -p(); -m(); -d(); -l(); -l(); -function ut(e, t) { - if (t === null) return t; - switch (e) { - case "bigint": - return BigInt(t); - case "bytes": { - let { buffer: r, byteOffset: n, byteLength: i } = y.from(t, "base64"); - return new Uint8Array(r, n, i); - } - case "decimal": - return new se(t); - case "datetime": - case "date": - return new Date(t); - case "time": - return new Date(`1970-01-01T${t}Z`); - case "bigint-array": - return t.map((r) => ut("bigint", r)); - case "bytes-array": - return t.map((r) => ut("bytes", r)); - case "decimal-array": - return t.map((r) => ut("decimal", r)); - case "datetime-array": - return t.map((r) => ut("datetime", r)); - case "date-array": - return t.map((r) => ut("date", r)); - case "time-array": - return t.map((r) => ut("time", r)); - default: - return t; - } -} -function ai(e) { - let t = [], - r = Af(e); - for (let n = 0; n < e.rows.length; n++) { - let i = e.rows[n], - o = { ...r }; - for (let s = 0; s < i.length; s++) o[e.columns[s]] = ut(e.types[s], i[s]); - t.push(o); - } - return t; -} -function Af(e) { - let t = {}; - for (let r = 0; r < e.columns.length; r++) t[e.columns[r]] = null; - return t; -} -var Rf = K("prisma:client:request_handler"), - li = class { - client; - dataloader; - logEmitter; - constructor(t, r) { - ((this.logEmitter = r), - (this.client = t), - (this.dataloader = new si({ - batchLoader: Ma(async ({ requests: n, customDataProxyFetch: i }) => { - let { transaction: o, otelParentCtx: s } = n[0], - a = n.map((R) => R.protocolQuery), - f = this.client._tracingHelper.getTraceParent(s), - w = n.some((R) => $o(R.protocolQuery.action)); - return ( - await this.client._engine.requestBatch(a, { - traceparent: f, - transaction: Cf(o), - containsWrite: w, - customDataProxyFetch: i, - }) - ).map((R, S) => { - if (R instanceof Error) return R; - try { - return this.mapQueryEngineResult(n[S], R); - } catch (C) { - return C; - } - }); - }), - singleLoader: async (n) => { - let i = n.transaction?.kind === "itx" ? jc(n.transaction) : void 0, - o = await this.client._engine.request(n.protocolQuery, { - traceparent: this.client._tracingHelper.getTraceParent(), - interactiveTransaction: i, - isWrite: $o(n.protocolQuery.action), - customDataProxyFetch: n.customDataProxyFetch, - }); - return this.mapQueryEngineResult(n, o); - }, - batchBy: (n) => - n.transaction?.id - ? `transaction-${n.transaction.id}` - : Bc(n.protocolQuery), - batchOrder(n, i) { - return n.transaction?.kind === "batch" && - i.transaction?.kind === "batch" - ? n.transaction.index - i.transaction.index - : 0; - }, - }))); - } - async request(t) { - try { - return await this.dataloader.request(t); - } catch (r) { - let { - clientMethod: n, - callsite: i, - transaction: o, - args: s, - modelName: a, - } = t; - this.handleAndLogRequestError({ - error: r, - clientMethod: n, - callsite: i, - transaction: o, - args: s, - modelName: a, - globalOmit: t.globalOmit, - }); - } - } - mapQueryEngineResult({ dataPath: t, unpacker: r }, n) { - let i = n?.data, - o = this.unpack(i, t, r); - return g.env.PRISMA_CLIENT_GET_TIME ? { data: o } : o; - } - handleAndLogRequestError(t) { - try { - this.handleRequestError(t); - } catch (r) { - throw ( - this.logEmitter && - this.logEmitter.emit("error", { - message: r.message, - target: t.clientMethod, - timestamp: new Date(), - }), - r - ); - } - } - handleRequestError({ - error: t, - clientMethod: r, - callsite: n, - transaction: i, - args: o, - modelName: s, - globalOmit: a, - }) { - if ((Rf(t), Sf(t, i))) throw t; - if (t instanceof X && If(t)) { - let w = Qc(t.meta); - Tn({ - args: o, - errors: [w], - callsite: n, - errorFormat: this.client._errorFormat, - originalMethod: r, - clientVersion: this.client._clientVersion, - globalOmit: a, - }); - } - let f = t.message; - if ( - (n && - (f = dn({ - callsite: n, - originalMethod: r, - isPanic: t.isPanic, - showColors: this.client._errorFormat === "pretty", - message: f, - })), - (f = this.sanitizeMessage(f)), - t.code) - ) { - let w = s ? { modelName: s, ...t.meta } : t.meta; - throw new X(f, { - code: t.code, - clientVersion: this.client._clientVersion, - meta: w, - batchRequestIdx: t.batchRequestIdx, - }); - } else { - if (t.isPanic) throw new ae(f, this.client._clientVersion); - if (t instanceof ne) - throw new ne(f, { - clientVersion: this.client._clientVersion, - batchRequestIdx: t.batchRequestIdx, - }); - if (t instanceof F) throw new F(f, this.client._clientVersion); - if (t instanceof ae) throw new ae(f, this.client._clientVersion); - } - throw ((t.clientVersion = this.client._clientVersion), t); - } - sanitizeMessage(t) { - return this.client._errorFormat && this.client._errorFormat !== "pretty" - ? ht(t) - : t; - } - unpack(t, r, n) { - if (!t || (t.data && (t = t.data), !t)) return t; - let i = Object.keys(t)[0], - o = Object.values(t)[0], - s = r.filter((w) => w !== "select" && w !== "include"), - a = qi(o, s), - f = i === "queryRaw" ? ai(a) : Qe(a); - return n ? n(f) : f; - } - get [Symbol.toStringTag]() { - return "RequestHandler"; - } - }; -function Cf(e) { - if (e) { - if (e.kind === "batch") - return { kind: "batch", options: { isolationLevel: e.isolationLevel } }; - if (e.kind === "itx") return { kind: "itx", options: jc(e) }; - Me(e, "Unknown transaction kind"); - } -} -function jc(e) { - return { id: e.id, payload: e.payload }; -} -function Sf(e, t) { - return oi(e) && t?.kind === "batch" && e.batchRequestIdx !== t.index; -} -function If(e) { - return e.code === "P2009" || e.code === "P2012"; -} -function Qc(e) { - if (e.kind === "Union") return { kind: "Union", errors: e.errors.map(Qc) }; - if (Array.isArray(e.selectionPath)) { - let [, ...t] = e.selectionPath; - return { ...e, selectionPath: t }; - } - return e; -} -c(); -u(); -p(); -m(); -d(); -l(); -var Hc = Zn; -c(); -u(); -p(); -m(); -d(); -l(); -var zc = $e(Ii()); -c(); -u(); -p(); -m(); -d(); -l(); -var V = class extends Error { - constructor(t) { - (super( - t + - ` -Read more at https://pris.ly/d/client-constructor`, - ), - (this.name = "PrismaClientConstructorValidationError")); - } - get [Symbol.toStringTag]() { - return "PrismaClientConstructorValidationError"; - } -}; -D(V, "PrismaClientConstructorValidationError"); -var Gc = [ - "datasources", - "datasourceUrl", - "errorFormat", - "adapter", - "log", - "transactionOptions", - "omit", - "__internal", - ], - Jc = ["pretty", "colorless", "minimal"], - Wc = ["info", "query", "warn", "error"], - kf = { - datasources: (e, { datasourceNames: t }) => { - if (e) { - if (typeof e != "object" || Array.isArray(e)) - throw new V( - `Invalid value ${JSON.stringify(e)} for "datasources" provided to PrismaClient constructor`, - ); - for (let [r, n] of Object.entries(e)) { - if (!t.includes(r)) { - let i = Wt(r, t) || ` Available datasources: ${t.join(", ")}`; - throw new V( - `Unknown datasource ${r} provided to PrismaClient constructor.${i}`, - ); - } - if (typeof n != "object" || Array.isArray(n)) - throw new V(`Invalid value ${JSON.stringify(e)} for datasource "${r}" provided to PrismaClient constructor. -It should have this form: { url: "CONNECTION_STRING" }`); - if (n && typeof n == "object") - for (let [i, o] of Object.entries(n)) { - if (i !== "url") - throw new V(`Invalid value ${JSON.stringify(e)} for datasource "${r}" provided to PrismaClient constructor. -It should have this form: { url: "CONNECTION_STRING" }`); - if (typeof o != "string") - throw new V(`Invalid value ${JSON.stringify(o)} for datasource "${r}" provided to PrismaClient constructor. -It should have this form: { url: "CONNECTION_STRING" }`); - } - } - } - }, - adapter: (e, t) => { - if (!e && gt(t.generator) === "client") - throw new V( - 'Using engine type "client" requires a driver adapter to be provided to PrismaClient constructor.', - ); - if (e !== null) { - if (e === void 0) - throw new V( - '"adapter" property must not be undefined, use null to conditionally disable driver adapters.', - ); - if (gt(t.generator) === "binary") - throw new V( - 'Cannot use a driver adapter with the "binary" Query Engine. Please use the "library" Query Engine.', - ); - } - }, - datasourceUrl: (e) => { - if (typeof e < "u" && typeof e != "string") - throw new V(`Invalid value ${JSON.stringify(e)} for "datasourceUrl" provided to PrismaClient constructor. -Expected string or undefined.`); - }, - errorFormat: (e) => { - if (e) { - if (typeof e != "string") - throw new V( - `Invalid value ${JSON.stringify(e)} for "errorFormat" provided to PrismaClient constructor.`, - ); - if (!Jc.includes(e)) { - let t = Wt(e, Jc); - throw new V( - `Invalid errorFormat ${e} provided to PrismaClient constructor.${t}`, - ); - } - } - }, - log: (e) => { - if (!e) return; - if (!Array.isArray(e)) - throw new V( - `Invalid value ${JSON.stringify(e)} for "log" provided to PrismaClient constructor.`, - ); - function t(r) { - if (typeof r == "string" && !Wc.includes(r)) { - let n = Wt(r, Wc); - throw new V( - `Invalid log level "${r}" provided to PrismaClient constructor.${n}`, - ); - } - } - for (let r of e) { - t(r); - let n = { - level: t, - emit: (i) => { - let o = ["stdout", "event"]; - if (!o.includes(i)) { - let s = Wt(i, o); - throw new V( - `Invalid value ${JSON.stringify(i)} for "emit" in logLevel provided to PrismaClient constructor.${s}`, - ); - } - }, - }; - if (r && typeof r == "object") - for (let [i, o] of Object.entries(r)) - if (n[i]) n[i](o); - else - throw new V( - `Invalid property ${i} for "log" provided to PrismaClient constructor`, - ); - } - }, - transactionOptions: (e) => { - if (!e) return; - let t = e.maxWait; - if (t != null && t <= 0) - throw new V( - `Invalid value ${t} for maxWait in "transactionOptions" provided to PrismaClient constructor. maxWait needs to be greater than 0`, - ); - let r = e.timeout; - if (r != null && r <= 0) - throw new V( - `Invalid value ${r} for timeout in "transactionOptions" provided to PrismaClient constructor. timeout needs to be greater than 0`, - ); - }, - omit: (e, t) => { - if (typeof e != "object") - throw new V('"omit" option is expected to be an object.'); - if (e === null) throw new V('"omit" option can not be `null`'); - let r = []; - for (let [n, i] of Object.entries(e)) { - let o = Df(n, t.runtimeDataModel); - if (!o) { - r.push({ kind: "UnknownModel", modelKey: n }); - continue; - } - for (let [s, a] of Object.entries(i)) { - let f = o.fields.find((w) => w.name === s); - if (!f) { - r.push({ kind: "UnknownField", modelKey: n, fieldName: s }); - continue; - } - if (f.relationName) { - r.push({ kind: "RelationInOmit", modelKey: n, fieldName: s }); - continue; - } - typeof a != "boolean" && - r.push({ kind: "InvalidFieldValue", modelKey: n, fieldName: s }); - } - } - if (r.length > 0) throw new V(_f(e, r)); - }, - __internal: (e) => { - if (!e) return; - let t = ["debug", "engine", "configOverride"]; - if (typeof e != "object") - throw new V( - `Invalid value ${JSON.stringify(e)} for "__internal" to PrismaClient constructor`, - ); - for (let [r] of Object.entries(e)) - if (!t.includes(r)) { - let n = Wt(r, t); - throw new V( - `Invalid property ${JSON.stringify(r)} for "__internal" provided to PrismaClient constructor.${n}`, - ); - } - }, - }; -function Yc(e, t) { - for (let [r, n] of Object.entries(e)) { - if (!Gc.includes(r)) { - let i = Wt(r, Gc); - throw new V( - `Unknown property ${r} provided to PrismaClient constructor.${i}`, - ); - } - kf[r](n, t); - } - if (e.datasourceUrl && e.datasources) - throw new V( - 'Can not use "datasourceUrl" and "datasources" options at the same time. Pick one of them', - ); -} -function Wt(e, t) { - if (t.length === 0 || typeof e != "string") return ""; - let r = Of(e, t); - return r ? ` Did you mean "${r}"?` : ""; -} -function Of(e, t) { - if (t.length === 0) return null; - let r = t.map((i) => ({ value: i, distance: (0, zc.default)(e, i) })); - r.sort((i, o) => (i.distance < o.distance ? -1 : 1)); - let n = r[0]; - return n.distance < 3 ? n.value : null; -} -function Df(e, t) { - return Kc(t.models, e) ?? Kc(t.types, e); -} -function Kc(e, t) { - let r = Object.keys(e).find((n) => qe(n) === t); - if (r) return e[r]; -} -function _f(e, t) { - let r = Rt(e); - for (let o of t) - switch (o.kind) { - case "UnknownModel": - (r.arguments.getField(o.modelKey)?.markAsError(), - r.addErrorMessage(() => `Unknown model name: ${o.modelKey}.`)); - break; - case "UnknownField": - (r.arguments.getDeepField([o.modelKey, o.fieldName])?.markAsError(), - r.addErrorMessage( - () => - `Model "${o.modelKey}" does not have a field named "${o.fieldName}".`, - )); - break; - case "RelationInOmit": - (r.arguments.getDeepField([o.modelKey, o.fieldName])?.markAsError(), - r.addErrorMessage( - () => - 'Relations are already excluded by default and can not be specified in "omit".', - )); - break; - case "InvalidFieldValue": - (r.arguments - .getDeepFieldValue([o.modelKey, o.fieldName]) - ?.markAsError(), - r.addErrorMessage( - () => "Omit field option value must be a boolean.", - )); - break; - } - let { message: n, args: i } = Pn(r, "colorless"); - return `Error validating "omit" option: +`)}var No=({clientMethod:e,activeProvider:t})=>r=>{let n="",i;if(In(r))n=r.sql,i={values:Jt(r.values),__prismaRawParameters__:!0};else if(Array.isArray(r)){let[o,...s]=r;n=o,i={values:Jt(s||[]),__prismaRawParameters__:!0}}else switch(t){case"sqlite":case"mysql":{n=r.sql,i={values:Jt(r.values),__prismaRawParameters__:!0};break}case"cockroachdb":case"postgresql":case"postgres":{n=r.text,i={values:Jt(r.values),__prismaRawParameters__:!0};break}case"sqlserver":{n=kc(r),i={values:Jt(r.values),__prismaRawParameters__:!0};break}default:throw new Error(`The ${t} provider does not support ${e}`)}return i?.values?Nc(`prisma.${e}(${n}, ${i.values})`):Nc(`prisma.${e}(${n})`),{query:n,parameters:i}},Lc={requestArgsToMiddlewareArgs(e){return[e.strings,...e.values]},middlewareArgsToRequestArgs(e){let[t,...r]=e;return new fe(t,r)}},Uc={requestArgsToMiddlewareArgs(e){return[e]},middlewareArgsToRequestArgs(e){return e[0]}};c();u();p();m();d();l();function Lo(e){return function(r,n){let i,o=(s=e)=>{try{return s===void 0||s?.kind==="itx"?i??=Fc(r(s)):Fc(r(s))}catch(a){return Promise.reject(a)}};return{get spec(){return n},then(s,a){return o().then(s,a)},catch(s){return o().catch(s)},finally(s){return o().finally(s)},requestTransaction(s){let a=o(s);return a.requestTransaction?a.requestTransaction(s):a},[Symbol.toStringTag]:"PrismaPromise"}}}function Fc(e){return typeof e.then=="function"?e:Promise.resolve(e)}c();u();p();m();d();l();var Pf=Ei.split(".")[0],Tf={isEnabled(){return!1},getTraceParent(){return"00-10-10-00"},dispatchEngineSpans(){},getActiveContext(){},runInChildSpan(e,t){return t()}},Uo=class{isEnabled(){return this.getGlobalTracingHelper().isEnabled()}getTraceParent(t){return this.getGlobalTracingHelper().getTraceParent(t)}dispatchEngineSpans(t){return this.getGlobalTracingHelper().dispatchEngineSpans(t)}getActiveContext(){return this.getGlobalTracingHelper().getActiveContext()}runInChildSpan(t,r){return this.getGlobalTracingHelper().runInChildSpan(t,r)}getGlobalTracingHelper(){let t=globalThis[`V${Pf}_PRISMA_INSTRUMENTATION`],r=globalThis.PRISMA_INSTRUMENTATION;return t?.helper??r?.helper??Tf}};function $c(){return new Uo}c();u();p();m();d();l();function Vc(e,t=()=>{}){let r,n=new Promise(i=>r=i);return{then(i){return--e===0&&r(t()),i?.(n)}}}c();u();p();m();d();l();function qc(e){return typeof e=="string"?e:e.reduce((t,r)=>{let n=typeof r=="string"?r:r.level;return n==="query"?t:t&&(r==="info"||t==="info")?"info":n},void 0)}c();u();p();m();d();l();c();u();p();m();d();l();function oi(e){return typeof e.batchRequestIdx=="number"}c();u();p();m();d();l();function Bc(e){if(e.action!=="findUnique"&&e.action!=="findUniqueOrThrow")return;let t=[];return e.modelName&&t.push(e.modelName),e.query.arguments&&t.push(Fo(e.query.arguments)),t.push(Fo(e.query.selection)),t.join("")}function Fo(e){return`(${Object.keys(e).sort().map(r=>{let n=e[r];return typeof n=="object"&&n!==null?`(${r} ${Fo(n)})`:r}).join(" ")})`}c();u();p();m();d();l();var vf={aggregate:!1,aggregateRaw:!1,createMany:!0,createManyAndReturn:!0,createOne:!0,deleteMany:!0,deleteOne:!0,executeRaw:!0,findFirst:!1,findFirstOrThrow:!1,findMany:!1,findRaw:!1,findUnique:!1,findUniqueOrThrow:!1,groupBy:!1,queryRaw:!1,runCommandRaw:!0,updateMany:!0,updateManyAndReturn:!0,updateOne:!0,upsertOne:!0};function $o(e){return vf[e]}c();u();p();m();d();l();var si=class{constructor(t){this.options=t;this.batches={}}batches;tickActive=!1;request(t){let r=this.options.batchBy(t);return r?(this.batches[r]||(this.batches[r]=[],this.tickActive||(this.tickActive=!0,g.nextTick(()=>{this.dispatchBatches(),this.tickActive=!1}))),new Promise((n,i)=>{this.batches[r].push({request:t,resolve:n,reject:i})})):this.options.singleLoader(t)}dispatchBatches(){for(let t in this.batches){let r=this.batches[t];delete this.batches[t],r.length===1?this.options.singleLoader(r[0].request).then(n=>{n instanceof Error?r[0].reject(n):r[0].resolve(n)}).catch(n=>{r[0].reject(n)}):(r.sort((n,i)=>this.options.batchOrder(n.request,i.request)),this.options.batchLoader(r.map(n=>n.request)).then(n=>{if(n instanceof Error)for(let i=0;i{for(let i=0;iut("bigint",r));case"bytes-array":return t.map(r=>ut("bytes",r));case"decimal-array":return t.map(r=>ut("decimal",r));case"datetime-array":return t.map(r=>ut("datetime",r));case"date-array":return t.map(r=>ut("date",r));case"time-array":return t.map(r=>ut("time",r));default:return t}}function ai(e){let t=[],r=Af(e);for(let n=0;n{let{transaction:o,otelParentCtx:s}=n[0],a=n.map(R=>R.protocolQuery),f=this.client._tracingHelper.getTraceParent(s),w=n.some(R=>$o(R.protocolQuery.action));return(await this.client._engine.requestBatch(a,{traceparent:f,transaction:Cf(o),containsWrite:w,customDataProxyFetch:i})).map((R,S)=>{if(R instanceof Error)return R;try{return this.mapQueryEngineResult(n[S],R)}catch(C){return C}})}),singleLoader:async n=>{let i=n.transaction?.kind==="itx"?jc(n.transaction):void 0,o=await this.client._engine.request(n.protocolQuery,{traceparent:this.client._tracingHelper.getTraceParent(),interactiveTransaction:i,isWrite:$o(n.protocolQuery.action),customDataProxyFetch:n.customDataProxyFetch});return this.mapQueryEngineResult(n,o)},batchBy:n=>n.transaction?.id?`transaction-${n.transaction.id}`:Bc(n.protocolQuery),batchOrder(n,i){return n.transaction?.kind==="batch"&&i.transaction?.kind==="batch"?n.transaction.index-i.transaction.index:0}})}async request(t){try{return await this.dataloader.request(t)}catch(r){let{clientMethod:n,callsite:i,transaction:o,args:s,modelName:a}=t;this.handleAndLogRequestError({error:r,clientMethod:n,callsite:i,transaction:o,args:s,modelName:a,globalOmit:t.globalOmit})}}mapQueryEngineResult({dataPath:t,unpacker:r},n){let i=n?.data,o=this.unpack(i,t,r);return g.env.PRISMA_CLIENT_GET_TIME?{data:o}:o}handleAndLogRequestError(t){try{this.handleRequestError(t)}catch(r){throw this.logEmitter&&this.logEmitter.emit("error",{message:r.message,target:t.clientMethod,timestamp:new Date}),r}}handleRequestError({error:t,clientMethod:r,callsite:n,transaction:i,args:o,modelName:s,globalOmit:a}){if(Rf(t),Sf(t,i))throw t;if(t instanceof X&&If(t)){let w=Qc(t.meta);Tn({args:o,errors:[w],callsite:n,errorFormat:this.client._errorFormat,originalMethod:r,clientVersion:this.client._clientVersion,globalOmit:a})}let f=t.message;if(n&&(f=dn({callsite:n,originalMethod:r,isPanic:t.isPanic,showColors:this.client._errorFormat==="pretty",message:f})),f=this.sanitizeMessage(f),t.code){let w=s?{modelName:s,...t.meta}:t.meta;throw new X(f,{code:t.code,clientVersion:this.client._clientVersion,meta:w,batchRequestIdx:t.batchRequestIdx})}else{if(t.isPanic)throw new ae(f,this.client._clientVersion);if(t instanceof ne)throw new ne(f,{clientVersion:this.client._clientVersion,batchRequestIdx:t.batchRequestIdx});if(t instanceof F)throw new F(f,this.client._clientVersion);if(t instanceof ae)throw new ae(f,this.client._clientVersion)}throw t.clientVersion=this.client._clientVersion,t}sanitizeMessage(t){return this.client._errorFormat&&this.client._errorFormat!=="pretty"?ht(t):t}unpack(t,r,n){if(!t||(t.data&&(t=t.data),!t))return t;let i=Object.keys(t)[0],o=Object.values(t)[0],s=r.filter(w=>w!=="select"&&w!=="include"),a=qi(o,s),f=i==="queryRaw"?ai(a):Qe(a);return n?n(f):f}get[Symbol.toStringTag](){return"RequestHandler"}};function Cf(e){if(e){if(e.kind==="batch")return{kind:"batch",options:{isolationLevel:e.isolationLevel}};if(e.kind==="itx")return{kind:"itx",options:jc(e)};Me(e,"Unknown transaction kind")}}function jc(e){return{id:e.id,payload:e.payload}}function Sf(e,t){return oi(e)&&t?.kind==="batch"&&e.batchRequestIdx!==t.index}function If(e){return e.code==="P2009"||e.code==="P2012"}function Qc(e){if(e.kind==="Union")return{kind:"Union",errors:e.errors.map(Qc)};if(Array.isArray(e.selectionPath)){let[,...t]=e.selectionPath;return{...e,selectionPath:t}}return e}c();u();p();m();d();l();var Hc=Zn;c();u();p();m();d();l();var zc=$e(Ii());c();u();p();m();d();l();var V=class extends Error{constructor(t){super(t+` +Read more at https://pris.ly/d/client-constructor`),this.name="PrismaClientConstructorValidationError"}get[Symbol.toStringTag](){return"PrismaClientConstructorValidationError"}};D(V,"PrismaClientConstructorValidationError");var Gc=["datasources","datasourceUrl","errorFormat","adapter","log","transactionOptions","omit","__internal"],Jc=["pretty","colorless","minimal"],Wc=["info","query","warn","error"],kf={datasources:(e,{datasourceNames:t})=>{if(e){if(typeof e!="object"||Array.isArray(e))throw new V(`Invalid value ${JSON.stringify(e)} for "datasources" provided to PrismaClient constructor`);for(let[r,n]of Object.entries(e)){if(!t.includes(r)){let i=Wt(r,t)||` Available datasources: ${t.join(", ")}`;throw new V(`Unknown datasource ${r} provided to PrismaClient constructor.${i}`)}if(typeof n!="object"||Array.isArray(n))throw new V(`Invalid value ${JSON.stringify(e)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`);if(n&&typeof n=="object")for(let[i,o]of Object.entries(n)){if(i!=="url")throw new V(`Invalid value ${JSON.stringify(e)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`);if(typeof o!="string")throw new V(`Invalid value ${JSON.stringify(o)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`)}}}},adapter:(e,t)=>{if(!e&>(t.generator)==="client")throw new V('Using engine type "client" requires a driver adapter to be provided to PrismaClient constructor.');if(e!==null){if(e===void 0)throw new V('"adapter" property must not be undefined, use null to conditionally disable driver adapters.');if(gt(t.generator)==="binary")throw new V('Cannot use a driver adapter with the "binary" Query Engine. Please use the "library" Query Engine.')}},datasourceUrl:e=>{if(typeof e<"u"&&typeof e!="string")throw new V(`Invalid value ${JSON.stringify(e)} for "datasourceUrl" provided to PrismaClient constructor. +Expected string or undefined.`)},errorFormat:e=>{if(e){if(typeof e!="string")throw new V(`Invalid value ${JSON.stringify(e)} for "errorFormat" provided to PrismaClient constructor.`);if(!Jc.includes(e)){let t=Wt(e,Jc);throw new V(`Invalid errorFormat ${e} provided to PrismaClient constructor.${t}`)}}},log:e=>{if(!e)return;if(!Array.isArray(e))throw new V(`Invalid value ${JSON.stringify(e)} for "log" provided to PrismaClient constructor.`);function t(r){if(typeof r=="string"&&!Wc.includes(r)){let n=Wt(r,Wc);throw new V(`Invalid log level "${r}" provided to PrismaClient constructor.${n}`)}}for(let r of e){t(r);let n={level:t,emit:i=>{let o=["stdout","event"];if(!o.includes(i)){let s=Wt(i,o);throw new V(`Invalid value ${JSON.stringify(i)} for "emit" in logLevel provided to PrismaClient constructor.${s}`)}}};if(r&&typeof r=="object")for(let[i,o]of Object.entries(r))if(n[i])n[i](o);else throw new V(`Invalid property ${i} for "log" provided to PrismaClient constructor`)}},transactionOptions:e=>{if(!e)return;let t=e.maxWait;if(t!=null&&t<=0)throw new V(`Invalid value ${t} for maxWait in "transactionOptions" provided to PrismaClient constructor. maxWait needs to be greater than 0`);let r=e.timeout;if(r!=null&&r<=0)throw new V(`Invalid value ${r} for timeout in "transactionOptions" provided to PrismaClient constructor. timeout needs to be greater than 0`)},omit:(e,t)=>{if(typeof e!="object")throw new V('"omit" option is expected to be an object.');if(e===null)throw new V('"omit" option can not be `null`');let r=[];for(let[n,i]of Object.entries(e)){let o=Df(n,t.runtimeDataModel);if(!o){r.push({kind:"UnknownModel",modelKey:n});continue}for(let[s,a]of Object.entries(i)){let f=o.fields.find(w=>w.name===s);if(!f){r.push({kind:"UnknownField",modelKey:n,fieldName:s});continue}if(f.relationName){r.push({kind:"RelationInOmit",modelKey:n,fieldName:s});continue}typeof a!="boolean"&&r.push({kind:"InvalidFieldValue",modelKey:n,fieldName:s})}}if(r.length>0)throw new V(_f(e,r))},__internal:e=>{if(!e)return;let t=["debug","engine","configOverride"];if(typeof e!="object")throw new V(`Invalid value ${JSON.stringify(e)} for "__internal" to PrismaClient constructor`);for(let[r]of Object.entries(e))if(!t.includes(r)){let n=Wt(r,t);throw new V(`Invalid property ${JSON.stringify(r)} for "__internal" provided to PrismaClient constructor.${n}`)}}};function Yc(e,t){for(let[r,n]of Object.entries(e)){if(!Gc.includes(r)){let i=Wt(r,Gc);throw new V(`Unknown property ${r} provided to PrismaClient constructor.${i}`)}kf[r](n,t)}if(e.datasourceUrl&&e.datasources)throw new V('Can not use "datasourceUrl" and "datasources" options at the same time. Pick one of them')}function Wt(e,t){if(t.length===0||typeof e!="string")return"";let r=Of(e,t);return r?` Did you mean "${r}"?`:""}function Of(e,t){if(t.length===0)return null;let r=t.map(i=>({value:i,distance:(0,zc.default)(e,i)}));r.sort((i,o)=>i.distanceqe(n)===t);if(r)return e[r]}function _f(e,t){let r=Rt(e);for(let o of t)switch(o.kind){case"UnknownModel":r.arguments.getField(o.modelKey)?.markAsError(),r.addErrorMessage(()=>`Unknown model name: ${o.modelKey}.`);break;case"UnknownField":r.arguments.getDeepField([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>`Model "${o.modelKey}" does not have a field named "${o.fieldName}".`);break;case"RelationInOmit":r.arguments.getDeepField([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>'Relations are already excluded by default and can not be specified in "omit".');break;case"InvalidFieldValue":r.arguments.getDeepFieldValue([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>"Omit field option value must be a boolean.");break}let{message:n,args:i}=Pn(r,"colorless");return`Error validating "omit" option: ${i} -${n}`; -} -c(); -u(); -p(); -m(); -d(); -l(); -function Zc(e) { - return e.length === 0 - ? Promise.resolve([]) - : new Promise((t, r) => { - let n = new Array(e.length), - i = null, - o = !1, - s = 0, - a = () => { - o || (s++, s === e.length && ((o = !0), i ? r(i) : t(n))); - }, - f = (w) => { - o || ((o = !0), r(w)); - }; - for (let w = 0; w < e.length; w++) - e[w].then( - (A) => { - ((n[w] = A), a()); - }, - (A) => { - if (!oi(A)) { - f(A); - return; - } - A.batchRequestIdx === w ? f(A) : (i || (i = A), a()); - }, - ); - }); -} -var We = K("prisma:client"); -typeof globalThis == "object" && (globalThis.NODE_CLIENT = !0); -var Mf = { - requestArgsToMiddlewareArgs: (e) => e, - middlewareArgsToRequestArgs: (e) => e, - }, - Nf = Symbol.for("prisma.client.transaction.id"), - Lf = { - id: 0, - nextId() { - return ++this.id; - }, - }; -function tu(e) { - class t { - _originalClient = this; - _runtimeDataModel; - _requestHandler; - _connectionPromise; - _disconnectionPromise; - _engineConfig; - _accelerateEngineConfig; - _clientVersion; - _errorFormat; - _tracingHelper; - _previewFeatures; - _activeProvider; - _globalOmit; - _extensions; - _engine; - _appliedParent; - _createPrismaPromise = Lo(); - constructor(n) { - ((e = n?.__internal?.configOverride?.(e) ?? e), $a(e), n && Yc(n, e)); - let i = new kn().on("error", () => {}); - ((this._extensions = Ct.empty()), - (this._previewFeatures = Sc(e)), - (this._clientVersion = e.clientVersion ?? Hc), - (this._activeProvider = e.activeProvider), - (this._globalOmit = n?.omit), - (this._tracingHelper = $c())); - let o = e.relativeEnvPaths && { - rootEnvPath: - e.relativeEnvPaths.rootEnvPath && - rn.resolve(e.dirname, e.relativeEnvPaths.rootEnvPath), - schemaEnvPath: - e.relativeEnvPaths.schemaEnvPath && - rn.resolve(e.dirname, e.relativeEnvPaths.schemaEnvPath), - }, - s; - if (n?.adapter) { - s = n.adapter; - let f = - e.activeProvider === "postgresql" || - e.activeProvider === "cockroachdb" - ? "postgres" - : e.activeProvider; - if (s.provider !== f) - throw new F( - `The Driver Adapter \`${s.adapterName}\`, based on \`${s.provider}\`, is not compatible with the provider \`${f}\` specified in the Prisma schema.`, - this._clientVersion, - ); - if (n.datasources || n.datasourceUrl !== void 0) - throw new F( - "Custom datasource configuration is not compatible with Prisma Driver Adapters. Please define the database connection string directly in the Driver Adapter configuration.", - this._clientVersion, - ); - } - let a = e.injectableEdgeEnv?.(); - try { - let f = n ?? {}, - w = f.__internal ?? {}, - A = w.debug === !0; - A && K.enable("prisma:client"); - let R = rn.resolve(e.dirname, e.relativePath); - (fs.existsSync(R) || (R = e.dirname), - We("dirname", e.dirname), - We("relativePath", e.relativePath), - We("cwd", R)); - let S = w.engine || {}; - if ( - (f.errorFormat - ? (this._errorFormat = f.errorFormat) - : g.env.NODE_ENV === "production" - ? (this._errorFormat = "minimal") - : g.env.NO_COLOR - ? (this._errorFormat = "colorless") - : (this._errorFormat = "colorless"), - (this._runtimeDataModel = e.runtimeDataModel), - (this._engineConfig = { - cwd: R, - dirname: e.dirname, - enableDebugLogs: A, - allowTriggerPanic: S.allowTriggerPanic, - prismaPath: S.binaryPath ?? void 0, - engineEndpoint: S.endpoint, - generator: e.generator, - showColors: this._errorFormat === "pretty", - logLevel: f.log && qc(f.log), - logQueries: - f.log && - !!(typeof f.log == "string" - ? f.log === "query" - : f.log.find((C) => - typeof C == "string" ? C === "query" : C.level === "query", - )), - env: a?.parsed ?? {}, - flags: [], - engineWasm: e.engineWasm, - compilerWasm: e.compilerWasm, - clientVersion: e.clientVersion, - engineVersion: e.engineVersion, - previewFeatures: this._previewFeatures, - activeProvider: e.activeProvider, - inlineSchema: e.inlineSchema, - overrideDatasources: Va(f, e.datasourceNames), - inlineDatasources: e.inlineDatasources, - inlineSchemaHash: e.inlineSchemaHash, - tracingHelper: this._tracingHelper, - transactionOptions: { - maxWait: f.transactionOptions?.maxWait ?? 2e3, - timeout: f.transactionOptions?.timeout ?? 5e3, - isolationLevel: f.transactionOptions?.isolationLevel, - }, - logEmitter: i, - isBundled: e.isBundled, - adapter: s, - }), - (this._accelerateEngineConfig = { - ...this._engineConfig, - accelerateUtils: { - resolveDatasourceUrl: qt, - getBatchRequestPayload: kt, - prismaGraphQLToJSError: _n, - PrismaClientUnknownRequestError: ne, - PrismaClientInitializationError: F, - PrismaClientKnownRequestError: X, - debug: K("prisma:client:accelerateEngine"), - engineVersion: eu.version, - clientVersion: e.clientVersion, - }, - }), - We("clientVersion", e.clientVersion), - (this._engine = Cc(e, this._engineConfig)), - (this._requestHandler = new li(this, i)), - f.log) - ) - for (let C of f.log) { - let L = - typeof C == "string" ? C : C.emit === "stdout" ? C.level : null; - L && - this.$on(L, (k) => { - tr.log(`${tr.tags[L] ?? ""}`, k.message || k.query); - }); - } - } catch (f) { - throw ((f.clientVersion = this._clientVersion), f); - } - return (this._appliedParent = hr(this)); - } - get [Symbol.toStringTag]() { - return "PrismaClient"; - } - $on(n, i) { - return ( - n === "beforeExit" - ? this._engine.onBeforeExit(i) - : n && this._engineConfig.logEmitter.on(n, i), - this - ); - } - $connect() { - try { - return this._engine.start(); - } catch (n) { - throw ((n.clientVersion = this._clientVersion), n); - } - } - async $disconnect() { - try { - await this._engine.stop(); - } catch (n) { - throw ((n.clientVersion = this._clientVersion), n); - } finally { - ds(); - } - } - $executeRawInternal(n, i, o, s) { - let a = this._activeProvider; - return this._request({ - action: "executeRaw", - args: o, - transaction: n, - clientMethod: i, - argsMapper: No({ clientMethod: i, activeProvider: a }), - callsite: je(this._errorFormat), - dataPath: [], - middlewareArgsMapper: s, - }); - } - $executeRaw(n, ...i) { - return this._createPrismaPromise((o) => { - if (n.raw !== void 0 || n.sql !== void 0) { - let [s, a] = Xc(n, i); - return ( - Mo( - this._activeProvider, - s.text, - s.values, - Array.isArray(n) - ? "prisma.$executeRaw``" - : "prisma.$executeRaw(sql``)", - ), - this.$executeRawInternal(o, "$executeRaw", s, a) - ); - } - throw new ie( - "`$executeRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$executeRaw`UPDATE User SET cool = ${true} WHERE email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#executeraw\n", - { clientVersion: this._clientVersion }, - ); - }); - } - $executeRawUnsafe(n, ...i) { - return this._createPrismaPromise( - (o) => ( - Mo( - this._activeProvider, - n, - i, - "prisma.$executeRawUnsafe(, [...values])", - ), - this.$executeRawInternal(o, "$executeRawUnsafe", [n, ...i]) - ), - ); - } - $runCommandRaw(n) { - if (e.activeProvider !== "mongodb") - throw new ie( - `The ${e.activeProvider} provider does not support $runCommandRaw. Use the mongodb provider.`, - { clientVersion: this._clientVersion }, - ); - return this._createPrismaPromise((i) => - this._request({ - args: n, - clientMethod: "$runCommandRaw", - dataPath: [], - action: "runCommandRaw", - argsMapper: Ic, - callsite: je(this._errorFormat), - transaction: i, - }), - ); - } - async $queryRawInternal(n, i, o, s) { - let a = this._activeProvider; - return this._request({ - action: "queryRaw", - args: o, - transaction: n, - clientMethod: i, - argsMapper: No({ clientMethod: i, activeProvider: a }), - callsite: je(this._errorFormat), - dataPath: [], - middlewareArgsMapper: s, - }); - } - $queryRaw(n, ...i) { - return this._createPrismaPromise((o) => { - if (n.raw !== void 0 || n.sql !== void 0) - return this.$queryRawInternal(o, "$queryRaw", ...Xc(n, i)); - throw new ie( - "`$queryRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$queryRaw`SELECT * FROM User WHERE id = ${1} OR email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#queryraw\n", - { clientVersion: this._clientVersion }, - ); - }); - } - $queryRawTyped(n) { - return this._createPrismaPromise((i) => { - if (!this._hasPreviewFlag("typedSql")) - throw new ie( - "`typedSql` preview feature must be enabled in order to access $queryRawTyped API", - { clientVersion: this._clientVersion }, - ); - return this.$queryRawInternal(i, "$queryRawTyped", n); - }); - } - $queryRawUnsafe(n, ...i) { - return this._createPrismaPromise((o) => - this.$queryRawInternal(o, "$queryRawUnsafe", [n, ...i]), - ); - } - _transactionWithArray({ promises: n, options: i }) { - let o = Lf.nextId(), - s = Vc(n.length), - a = n.map((f, w) => { - if (f?.[Symbol.toStringTag] !== "PrismaPromise") - throw new Error( - "All elements of the array need to be Prisma Client promises. Hint: Please make sure you are not awaiting the Prisma client calls you intended to pass in the $transaction function.", - ); - let A = - i?.isolationLevel ?? - this._engineConfig.transactionOptions.isolationLevel, - R = { kind: "batch", id: o, index: w, isolationLevel: A, lock: s }; - return f.requestTransaction?.(R) ?? f; - }); - return Zc(a); - } - async _transactionWithCallback({ callback: n, options: i }) { - let o = { traceparent: this._tracingHelper.getTraceParent() }, - s = { - maxWait: i?.maxWait ?? this._engineConfig.transactionOptions.maxWait, - timeout: i?.timeout ?? this._engineConfig.transactionOptions.timeout, - isolationLevel: - i?.isolationLevel ?? - this._engineConfig.transactionOptions.isolationLevel, - }, - a = await this._engine.transaction("start", o, s), - f; - try { - let w = { kind: "itx", ...a }; - ((f = await n(this._createItxClient(w))), - await this._engine.transaction("commit", o, a)); - } catch (w) { - throw ( - await this._engine.transaction("rollback", o, a).catch(() => {}), - w - ); - } - return f; - } - _createItxClient(n) { - return Pe( - hr( - Pe(va(this), [ - le("_appliedParent", () => this._appliedParent._createItxClient(n)), - le("_createPrismaPromise", () => Lo(n)), - le(Nf, () => n.id), - ]), - ), - [It(Ia)], - ); - } - $transaction(n, i) { - let o; - typeof n == "function" - ? this._engineConfig.adapter?.adapterName === "@prisma/adapter-d1" - ? (o = () => { - throw new Error( - "Cloudflare D1 does not support interactive transactions. We recommend you to refactor your queries with that limitation in mind, and use batch transactions with `prisma.$transactions([])` where applicable.", - ); - }) - : (o = () => - this._transactionWithCallback({ callback: n, options: i })) - : (o = () => this._transactionWithArray({ promises: n, options: i })); - let s = { name: "transaction", attributes: { method: "$transaction" } }; - return this._tracingHelper.runInChildSpan(s, o); - } - _request(n) { - n.otelParentCtx = this._tracingHelper.getActiveContext(); - let i = n.middlewareArgsMapper ?? Mf, - o = { - args: i.requestArgsToMiddlewareArgs(n.args), - dataPath: n.dataPath, - runInTransaction: !!n.transaction, - action: n.action, - model: n.model, - }, - s = { - operation: { - name: "operation", - attributes: { - method: o.action, - model: o.model, - name: o.model ? `${o.model}.${o.action}` : o.action, - }, - }, - }, - a = async (f) => { - let { runInTransaction: w, args: A, ...R } = f, - S = { ...n, ...R }; - (A && (S.args = i.middlewareArgsToRequestArgs(A)), - n.transaction !== void 0 && w === !1 && delete S.transaction); - let C = await _a(this, S); - return S.model - ? Sa({ - result: C, - modelName: S.model, - args: S.args, - extensions: this._extensions, - runtimeDataModel: this._runtimeDataModel, - globalOmit: this._globalOmit, - }) - : C; - }; - return this._tracingHelper.runInChildSpan(s.operation, () => a(o)); - } - async _executeRequest({ - args: n, - clientMethod: i, - dataPath: o, - callsite: s, - action: a, - model: f, - argsMapper: w, - transaction: A, - unpacker: R, - otelParentCtx: S, - customDataProxyFetch: C, - }) { - try { - n = w ? w(n) : n; - let L = { name: "serialize" }, - k = this._tracingHelper.runInChildSpan(L, () => - Cn({ - modelName: f, - runtimeDataModel: this._runtimeDataModel, - action: a, - args: n, - clientMethod: i, - callsite: s, - extensions: this._extensions, - errorFormat: this._errorFormat, - clientVersion: this._clientVersion, - previewFeatures: this._previewFeatures, - globalOmit: this._globalOmit, - }), - ); - return ( - K.enabled("prisma:client") && - (We("Prisma Client call:"), - We(`prisma.${i}(${fa(n)})`), - We("Generated request:"), - We( - JSON.stringify(k, null, 2) + - ` -`, - )), - A?.kind === "batch" && (await A.lock), - this._requestHandler.request({ - protocolQuery: k, - modelName: f, - action: a, - clientMethod: i, - dataPath: o, - callsite: s, - args: n, - extensions: this._extensions, - transaction: A, - unpacker: R, - otelParentCtx: S, - otelChildCtx: this._tracingHelper.getActiveContext(), - globalOmit: this._globalOmit, - customDataProxyFetch: C, - }) - ); - } catch (L) { - throw ((L.clientVersion = this._clientVersion), L); - } - } - $metrics = new St(this); - _hasPreviewFlag(n) { - return !!this._engineConfig.previewFeatures?.includes(n); - } - $applyPendingMigrations() { - return this._engine.applyPendingMigrations(); - } - $extends = Aa; - } - return t; -} -function Xc(e, t) { - return Uf(e) ? [new fe(e, t), Lc] : [e, Uc]; -} -function Uf(e) { - return Array.isArray(e) && Array.isArray(e.raw); -} -c(); -u(); -p(); -m(); -d(); -l(); -var Ff = new Set([ - "toJSON", - "$$typeof", - "asymmetricMatch", - Symbol.iterator, - Symbol.toStringTag, - Symbol.isConcatSpreadable, - Symbol.toPrimitive, -]); -function ru(e) { - return new Proxy(e, { - get(t, r) { - if (r in t) return t[r]; - if (!Ff.has(r)) throw new TypeError(`Invalid enum value: ${String(r)}`); - }, - }); -} -c(); -u(); -p(); -m(); -d(); -l(); -l(); -0 && - (module.exports = { - DMMF, - Debug, - Decimal, - Extensions, - MetricsClient, - PrismaClientInitializationError, - PrismaClientKnownRequestError, - PrismaClientRustPanicError, - PrismaClientUnknownRequestError, - PrismaClientValidationError, - Public, - Sql, - createParam, - defineDmmfProperty, - deserializeJsonResponse, - deserializeRawResult, - dmmfToRuntimeDataModel, - empty, - getPrismaClient, - getRuntime, - join, - makeStrictEnum, - makeTypedQueryFactory, - objectEnumValues, - raw, - serializeJsonQuery, - skip, - sqltag, - warnEnvConflicts, - warnOnce, - }); +${n}`}c();u();p();m();d();l();function Zc(e){return e.length===0?Promise.resolve([]):new Promise((t,r)=>{let n=new Array(e.length),i=null,o=!1,s=0,a=()=>{o||(s++,s===e.length&&(o=!0,i?r(i):t(n)))},f=w=>{o||(o=!0,r(w))};for(let w=0;w{n[w]=A,a()},A=>{if(!oi(A)){f(A);return}A.batchRequestIdx===w?f(A):(i||(i=A),a())})})}var We=K("prisma:client");typeof globalThis=="object"&&(globalThis.NODE_CLIENT=!0);var Mf={requestArgsToMiddlewareArgs:e=>e,middlewareArgsToRequestArgs:e=>e},Nf=Symbol.for("prisma.client.transaction.id"),Lf={id:0,nextId(){return++this.id}};function tu(e){class t{_originalClient=this;_runtimeDataModel;_requestHandler;_connectionPromise;_disconnectionPromise;_engineConfig;_accelerateEngineConfig;_clientVersion;_errorFormat;_tracingHelper;_previewFeatures;_activeProvider;_globalOmit;_extensions;_engine;_appliedParent;_createPrismaPromise=Lo();constructor(n){e=n?.__internal?.configOverride?.(e)??e,$a(e),n&&Yc(n,e);let i=new kn().on("error",()=>{});this._extensions=Ct.empty(),this._previewFeatures=Sc(e),this._clientVersion=e.clientVersion??Hc,this._activeProvider=e.activeProvider,this._globalOmit=n?.omit,this._tracingHelper=$c();let o=e.relativeEnvPaths&&{rootEnvPath:e.relativeEnvPaths.rootEnvPath&&rn.resolve(e.dirname,e.relativeEnvPaths.rootEnvPath),schemaEnvPath:e.relativeEnvPaths.schemaEnvPath&&rn.resolve(e.dirname,e.relativeEnvPaths.schemaEnvPath)},s;if(n?.adapter){s=n.adapter;let f=e.activeProvider==="postgresql"||e.activeProvider==="cockroachdb"?"postgres":e.activeProvider;if(s.provider!==f)throw new F(`The Driver Adapter \`${s.adapterName}\`, based on \`${s.provider}\`, is not compatible with the provider \`${f}\` specified in the Prisma schema.`,this._clientVersion);if(n.datasources||n.datasourceUrl!==void 0)throw new F("Custom datasource configuration is not compatible with Prisma Driver Adapters. Please define the database connection string directly in the Driver Adapter configuration.",this._clientVersion)}let a=e.injectableEdgeEnv?.();try{let f=n??{},w=f.__internal??{},A=w.debug===!0;A&&K.enable("prisma:client");let R=rn.resolve(e.dirname,e.relativePath);fs.existsSync(R)||(R=e.dirname),We("dirname",e.dirname),We("relativePath",e.relativePath),We("cwd",R);let S=w.engine||{};if(f.errorFormat?this._errorFormat=f.errorFormat:g.env.NODE_ENV==="production"?this._errorFormat="minimal":g.env.NO_COLOR?this._errorFormat="colorless":this._errorFormat="colorless",this._runtimeDataModel=e.runtimeDataModel,this._engineConfig={cwd:R,dirname:e.dirname,enableDebugLogs:A,allowTriggerPanic:S.allowTriggerPanic,prismaPath:S.binaryPath??void 0,engineEndpoint:S.endpoint,generator:e.generator,showColors:this._errorFormat==="pretty",logLevel:f.log&&qc(f.log),logQueries:f.log&&!!(typeof f.log=="string"?f.log==="query":f.log.find(C=>typeof C=="string"?C==="query":C.level==="query")),env:a?.parsed??{},flags:[],engineWasm:e.engineWasm,compilerWasm:e.compilerWasm,clientVersion:e.clientVersion,engineVersion:e.engineVersion,previewFeatures:this._previewFeatures,activeProvider:e.activeProvider,inlineSchema:e.inlineSchema,overrideDatasources:Va(f,e.datasourceNames),inlineDatasources:e.inlineDatasources,inlineSchemaHash:e.inlineSchemaHash,tracingHelper:this._tracingHelper,transactionOptions:{maxWait:f.transactionOptions?.maxWait??2e3,timeout:f.transactionOptions?.timeout??5e3,isolationLevel:f.transactionOptions?.isolationLevel},logEmitter:i,isBundled:e.isBundled,adapter:s},this._accelerateEngineConfig={...this._engineConfig,accelerateUtils:{resolveDatasourceUrl:qt,getBatchRequestPayload:kt,prismaGraphQLToJSError:_n,PrismaClientUnknownRequestError:ne,PrismaClientInitializationError:F,PrismaClientKnownRequestError:X,debug:K("prisma:client:accelerateEngine"),engineVersion:eu.version,clientVersion:e.clientVersion}},We("clientVersion",e.clientVersion),this._engine=Cc(e,this._engineConfig),this._requestHandler=new li(this,i),f.log)for(let C of f.log){let L=typeof C=="string"?C:C.emit==="stdout"?C.level:null;L&&this.$on(L,k=>{tr.log(`${tr.tags[L]??""}`,k.message||k.query)})}}catch(f){throw f.clientVersion=this._clientVersion,f}return this._appliedParent=hr(this)}get[Symbol.toStringTag](){return"PrismaClient"}$on(n,i){return n==="beforeExit"?this._engine.onBeforeExit(i):n&&this._engineConfig.logEmitter.on(n,i),this}$connect(){try{return this._engine.start()}catch(n){throw n.clientVersion=this._clientVersion,n}}async $disconnect(){try{await this._engine.stop()}catch(n){throw n.clientVersion=this._clientVersion,n}finally{ds()}}$executeRawInternal(n,i,o,s){let a=this._activeProvider;return this._request({action:"executeRaw",args:o,transaction:n,clientMethod:i,argsMapper:No({clientMethod:i,activeProvider:a}),callsite:je(this._errorFormat),dataPath:[],middlewareArgsMapper:s})}$executeRaw(n,...i){return this._createPrismaPromise(o=>{if(n.raw!==void 0||n.sql!==void 0){let[s,a]=Xc(n,i);return Mo(this._activeProvider,s.text,s.values,Array.isArray(n)?"prisma.$executeRaw``":"prisma.$executeRaw(sql``)"),this.$executeRawInternal(o,"$executeRaw",s,a)}throw new ie("`$executeRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$executeRaw`UPDATE User SET cool = ${true} WHERE email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#executeraw\n",{clientVersion:this._clientVersion})})}$executeRawUnsafe(n,...i){return this._createPrismaPromise(o=>(Mo(this._activeProvider,n,i,"prisma.$executeRawUnsafe(, [...values])"),this.$executeRawInternal(o,"$executeRawUnsafe",[n,...i])))}$runCommandRaw(n){if(e.activeProvider!=="mongodb")throw new ie(`The ${e.activeProvider} provider does not support $runCommandRaw. Use the mongodb provider.`,{clientVersion:this._clientVersion});return this._createPrismaPromise(i=>this._request({args:n,clientMethod:"$runCommandRaw",dataPath:[],action:"runCommandRaw",argsMapper:Ic,callsite:je(this._errorFormat),transaction:i}))}async $queryRawInternal(n,i,o,s){let a=this._activeProvider;return this._request({action:"queryRaw",args:o,transaction:n,clientMethod:i,argsMapper:No({clientMethod:i,activeProvider:a}),callsite:je(this._errorFormat),dataPath:[],middlewareArgsMapper:s})}$queryRaw(n,...i){return this._createPrismaPromise(o=>{if(n.raw!==void 0||n.sql!==void 0)return this.$queryRawInternal(o,"$queryRaw",...Xc(n,i));throw new ie("`$queryRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$queryRaw`SELECT * FROM User WHERE id = ${1} OR email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#queryraw\n",{clientVersion:this._clientVersion})})}$queryRawTyped(n){return this._createPrismaPromise(i=>{if(!this._hasPreviewFlag("typedSql"))throw new ie("`typedSql` preview feature must be enabled in order to access $queryRawTyped API",{clientVersion:this._clientVersion});return this.$queryRawInternal(i,"$queryRawTyped",n)})}$queryRawUnsafe(n,...i){return this._createPrismaPromise(o=>this.$queryRawInternal(o,"$queryRawUnsafe",[n,...i]))}_transactionWithArray({promises:n,options:i}){let o=Lf.nextId(),s=Vc(n.length),a=n.map((f,w)=>{if(f?.[Symbol.toStringTag]!=="PrismaPromise")throw new Error("All elements of the array need to be Prisma Client promises. Hint: Please make sure you are not awaiting the Prisma client calls you intended to pass in the $transaction function.");let A=i?.isolationLevel??this._engineConfig.transactionOptions.isolationLevel,R={kind:"batch",id:o,index:w,isolationLevel:A,lock:s};return f.requestTransaction?.(R)??f});return Zc(a)}async _transactionWithCallback({callback:n,options:i}){let o={traceparent:this._tracingHelper.getTraceParent()},s={maxWait:i?.maxWait??this._engineConfig.transactionOptions.maxWait,timeout:i?.timeout??this._engineConfig.transactionOptions.timeout,isolationLevel:i?.isolationLevel??this._engineConfig.transactionOptions.isolationLevel},a=await this._engine.transaction("start",o,s),f;try{let w={kind:"itx",...a};f=await n(this._createItxClient(w)),await this._engine.transaction("commit",o,a)}catch(w){throw await this._engine.transaction("rollback",o,a).catch(()=>{}),w}return f}_createItxClient(n){return Pe(hr(Pe(va(this),[le("_appliedParent",()=>this._appliedParent._createItxClient(n)),le("_createPrismaPromise",()=>Lo(n)),le(Nf,()=>n.id)])),[It(Ia)])}$transaction(n,i){let o;typeof n=="function"?this._engineConfig.adapter?.adapterName==="@prisma/adapter-d1"?o=()=>{throw new Error("Cloudflare D1 does not support interactive transactions. We recommend you to refactor your queries with that limitation in mind, and use batch transactions with `prisma.$transactions([])` where applicable.")}:o=()=>this._transactionWithCallback({callback:n,options:i}):o=()=>this._transactionWithArray({promises:n,options:i});let s={name:"transaction",attributes:{method:"$transaction"}};return this._tracingHelper.runInChildSpan(s,o)}_request(n){n.otelParentCtx=this._tracingHelper.getActiveContext();let i=n.middlewareArgsMapper??Mf,o={args:i.requestArgsToMiddlewareArgs(n.args),dataPath:n.dataPath,runInTransaction:!!n.transaction,action:n.action,model:n.model},s={operation:{name:"operation",attributes:{method:o.action,model:o.model,name:o.model?`${o.model}.${o.action}`:o.action}}},a=async f=>{let{runInTransaction:w,args:A,...R}=f,S={...n,...R};A&&(S.args=i.middlewareArgsToRequestArgs(A)),n.transaction!==void 0&&w===!1&&delete S.transaction;let C=await _a(this,S);return S.model?Sa({result:C,modelName:S.model,args:S.args,extensions:this._extensions,runtimeDataModel:this._runtimeDataModel,globalOmit:this._globalOmit}):C};return this._tracingHelper.runInChildSpan(s.operation,()=>a(o))}async _executeRequest({args:n,clientMethod:i,dataPath:o,callsite:s,action:a,model:f,argsMapper:w,transaction:A,unpacker:R,otelParentCtx:S,customDataProxyFetch:C}){try{n=w?w(n):n;let L={name:"serialize"},k=this._tracingHelper.runInChildSpan(L,()=>Cn({modelName:f,runtimeDataModel:this._runtimeDataModel,action:a,args:n,clientMethod:i,callsite:s,extensions:this._extensions,errorFormat:this._errorFormat,clientVersion:this._clientVersion,previewFeatures:this._previewFeatures,globalOmit:this._globalOmit}));return K.enabled("prisma:client")&&(We("Prisma Client call:"),We(`prisma.${i}(${fa(n)})`),We("Generated request:"),We(JSON.stringify(k,null,2)+` +`)),A?.kind==="batch"&&await A.lock,this._requestHandler.request({protocolQuery:k,modelName:f,action:a,clientMethod:i,dataPath:o,callsite:s,args:n,extensions:this._extensions,transaction:A,unpacker:R,otelParentCtx:S,otelChildCtx:this._tracingHelper.getActiveContext(),globalOmit:this._globalOmit,customDataProxyFetch:C})}catch(L){throw L.clientVersion=this._clientVersion,L}}$metrics=new St(this);_hasPreviewFlag(n){return!!this._engineConfig.previewFeatures?.includes(n)}$applyPendingMigrations(){return this._engine.applyPendingMigrations()}$extends=Aa}return t}function Xc(e,t){return Uf(e)?[new fe(e,t),Lc]:[e,Uc]}function Uf(e){return Array.isArray(e)&&Array.isArray(e.raw)}c();u();p();m();d();l();var Ff=new Set(["toJSON","$$typeof","asymmetricMatch",Symbol.iterator,Symbol.toStringTag,Symbol.isConcatSpreadable,Symbol.toPrimitive]);function ru(e){return new Proxy(e,{get(t,r){if(r in t)return t[r];if(!Ff.has(r))throw new TypeError(`Invalid enum value: ${String(r)}`)}})}c();u();p();m();d();l();l();0&&(module.exports={DMMF,Debug,Decimal,Extensions,MetricsClient,PrismaClientInitializationError,PrismaClientKnownRequestError,PrismaClientRustPanicError,PrismaClientUnknownRequestError,PrismaClientValidationError,Public,Sql,createParam,defineDmmfProperty,deserializeJsonResponse,deserializeRawResult,dmmfToRuntimeDataModel,empty,getPrismaClient,getRuntime,join,makeStrictEnum,makeTypedQueryFactory,objectEnumValues,raw,serializeJsonQuery,skip,sqltag,warnEnvConflicts,warnOnce}); //# sourceMappingURL=wasm-compiler-edge.js.map diff --git a/generated/prisma/runtime/wasm-engine-edge.js b/generated/prisma/runtime/wasm-engine-edge.js index 9ec7789b..13912009 100644 --- a/generated/prisma/runtime/wasm-engine-edge.js +++ b/generated/prisma/runtime/wasm-engine-edge.js @@ -1,8768 +1,38 @@ + /* !!! This is code generated by Prisma. Do not edit directly. !!! /* eslint-disable */ // biome-ignore-all lint: generated file -"use strict"; -var Vs = Object.create; -var nr = Object.defineProperty; -var Bs = Object.getOwnPropertyDescriptor; -var $s = Object.getOwnPropertyNames; -var js = Object.getPrototypeOf, - Qs = Object.prototype.hasOwnProperty; -var ae = (t, e) => () => (t && (e = t((t = 0))), e); -var yt = (t, e) => () => (e || t((e = { exports: {} }).exports, e), e.exports), - ht = (t, e) => { - for (var r in e) nr(t, r, { get: e[r], enumerable: !0 }); - }, - Hn = (t, e, r, n) => { - if ((e && typeof e == "object") || typeof e == "function") - for (let i of $s(e)) - !Qs.call(t, i) && - i !== r && - nr(t, i, { - get: () => e[i], - enumerable: !(n = Bs(e, i)) || n.enumerable, - }); - return t; - }; -var bt = (t, e, r) => ( - (r = t != null ? Vs(js(t)) : {}), - Hn( - e || !t || !t.__esModule - ? nr(r, "default", { value: t, enumerable: !0 }) - : r, - t, - ) - ), - Gs = (t) => Hn(nr({}, "__esModule", { value: !0 }), t); -function Kr(t, e) { - if (((e = e.toLowerCase()), e === "utf8" || e === "utf-8")) - return new y(Hs.encode(t)); - if (e === "base64" || e === "base64url") - return ( - (t = t.replace(/-/g, "+").replace(/_/g, "/")), - (t = t.replace(/[^A-Za-z0-9+/]/g, "")), - new y([...atob(t)].map((r) => r.charCodeAt(0))) - ); - if (e === "binary" || e === "ascii" || e === "latin1" || e === "latin-1") - return new y([...t].map((r) => r.charCodeAt(0))); - if (e === "ucs2" || e === "ucs-2" || e === "utf16le" || e === "utf-16le") { - let r = new y(t.length * 2), - n = new DataView(r.buffer); - for (let i = 0; i < t.length; i++) n.setUint16(i * 2, t.charCodeAt(i), !0); - return r; - } - if (e === "hex") { - let r = new y(t.length / 2); - for (let n = 0, i = 0; i < t.length; i += 2, n++) - r[n] = parseInt(t.slice(i, i + 2), 16); - return r; - } - Yn(`encoding "${e}"`); -} -function Js(t) { - let r = Object.getOwnPropertyNames(DataView.prototype).filter( - (a) => a.startsWith("get") || a.startsWith("set"), - ), - n = r.map((a) => a.replace("get", "read").replace("set", "write")), - i = (a, f) => - function (v = 0) { - return ( - J(v, "offset"), - re(v, "offset"), - K(v, "offset", this.length - 1), - new DataView(this.buffer)[r[a]](v, f) - ); - }, - o = (a, f) => - function (v, R = 0) { - let A = r[a].match(/set(\w+\d+)/)[1].toLowerCase(), - I = Ks[A]; - return ( - J(R, "offset"), - re(R, "offset"), - K(R, "offset", this.length - 1), - Ws(v, "value", I[0], I[1]), - new DataView(this.buffer)[r[a]](R, v, f), - R + parseInt(r[a].match(/\d+/)[0]) / 8 - ); - }, - s = (a) => { - a.forEach((f) => { - (f.includes("Uint") && (t[f.replace("Uint", "UInt")] = t[f]), - f.includes("Float64") && (t[f.replace("Float64", "Double")] = t[f]), - f.includes("Float32") && (t[f.replace("Float32", "Float")] = t[f])); - }); - }; - n.forEach((a, f) => { - (a.startsWith("read") && - ((t[a] = i(f, !1)), (t[a + "LE"] = i(f, !0)), (t[a + "BE"] = i(f, !1))), - a.startsWith("write") && - ((t[a] = o(f, !1)), (t[a + "LE"] = o(f, !0)), (t[a + "BE"] = o(f, !1))), - s([a, a + "LE", a + "BE"])); - }); -} -function Yn(t) { - throw new Error(`Buffer polyfill does not implement "${t}"`); -} -function ir(t, e) { - if (!(t instanceof Uint8Array)) - throw new TypeError( - `The "${e}" argument must be an instance of Buffer or Uint8Array`, - ); -} -function K(t, e, r = Xs + 1) { - if (t < 0 || t > r) { - let n = new RangeError( - `The value of "${e}" is out of range. It must be >= 0 && <= ${r}. Received ${t}`, - ); - throw ((n.code = "ERR_OUT_OF_RANGE"), n); - } -} -function J(t, e) { - if (typeof t != "number") { - let r = new TypeError( - `The "${e}" argument must be of type number. Received type ${typeof t}.`, - ); - throw ((r.code = "ERR_INVALID_ARG_TYPE"), r); - } -} -function re(t, e) { - if (!Number.isInteger(t) || Number.isNaN(t)) { - let r = new RangeError( - `The value of "${e}" is out of range. It must be an integer. Received ${t}`, - ); - throw ((r.code = "ERR_OUT_OF_RANGE"), r); - } -} -function Ws(t, e, r, n) { - if (t < r || t > n) { - let i = new RangeError( - `The value of "${e}" is out of range. It must be >= ${r} and <= ${n}. Received ${t}`, - ); - throw ((i.code = "ERR_OUT_OF_RANGE"), i); - } -} -function zn(t, e) { - if (typeof t != "string") { - let r = new TypeError( - `The "${e}" argument must be of type string. Received type ${typeof t}`, - ); - throw ((r.code = "ERR_INVALID_ARG_TYPE"), r); - } -} -function Zs(t, e = "utf8") { - return y.from(t, e); -} -var y, - Ks, - Hs, - zs, - Ys, - Xs, - h, - Hr, - u = ae(() => { - "use strict"; - y = class t extends Uint8Array { - _isBuffer = !0; - get offset() { - return this.byteOffset; - } - static alloc(e, r = 0, n = "utf8") { - return (zn(n, "encoding"), t.allocUnsafe(e).fill(r, n)); - } - static allocUnsafe(e) { - return t.from(e); - } - static allocUnsafeSlow(e) { - return t.from(e); - } - static isBuffer(e) { - return e && !!e._isBuffer; - } - static byteLength(e, r = "utf8") { - if (typeof e == "string") return Kr(e, r).byteLength; - if (e && e.byteLength) return e.byteLength; - let n = new TypeError( - 'The "string" argument must be of type string or an instance of Buffer or ArrayBuffer.', - ); - throw ((n.code = "ERR_INVALID_ARG_TYPE"), n); - } - static isEncoding(e) { - return Ys.includes(e); - } - static compare(e, r) { - (ir(e, "buff1"), ir(r, "buff2")); - for (let n = 0; n < e.length; n++) { - if (e[n] < r[n]) return -1; - if (e[n] > r[n]) return 1; - } - return e.length === r.length ? 0 : e.length > r.length ? 1 : -1; - } - static from(e, r = "utf8") { - if (e && typeof e == "object" && e.type === "Buffer") - return new t(e.data); - if (typeof e == "number") return new t(new Uint8Array(e)); - if (typeof e == "string") return Kr(e, r); - if (ArrayBuffer.isView(e)) { - let { byteOffset: n, byteLength: i, buffer: o } = e; - return "map" in e && typeof e.map == "function" - ? new t( - e.map((s) => s % 256), - n, - i, - ) - : new t(o, n, i); - } - if ( - e && - typeof e == "object" && - ("length" in e || "byteLength" in e || "buffer" in e) - ) - return new t(e); - throw new TypeError( - "First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.", - ); - } - static concat(e, r) { - if (e.length === 0) return t.alloc(0); - let n = [].concat(...e.map((o) => [...o])), - i = t.alloc(r !== void 0 ? r : n.length); - return (i.set(r !== void 0 ? n.slice(0, r) : n), i); - } - slice(e = 0, r = this.length) { - return this.subarray(e, r); - } - subarray(e = 0, r = this.length) { - return Object.setPrototypeOf(super.subarray(e, r), t.prototype); - } - reverse() { - return (super.reverse(), this); - } - readIntBE(e, r) { - (J(e, "offset"), - re(e, "offset"), - K(e, "offset", this.length - 1), - J(r, "byteLength"), - re(r, "byteLength")); - let n = new DataView(this.buffer, e, r), - i = 0; - for (let o = 0; o < r; o++) i = i * 256 + n.getUint8(o); - return (n.getUint8(0) & 128 && (i -= Math.pow(256, r)), i); - } - readIntLE(e, r) { - (J(e, "offset"), - re(e, "offset"), - K(e, "offset", this.length - 1), - J(r, "byteLength"), - re(r, "byteLength")); - let n = new DataView(this.buffer, e, r), - i = 0; - for (let o = 0; o < r; o++) i += n.getUint8(o) * Math.pow(256, o); - return (n.getUint8(r - 1) & 128 && (i -= Math.pow(256, r)), i); - } - readUIntBE(e, r) { - (J(e, "offset"), - re(e, "offset"), - K(e, "offset", this.length - 1), - J(r, "byteLength"), - re(r, "byteLength")); - let n = new DataView(this.buffer, e, r), - i = 0; - for (let o = 0; o < r; o++) i = i * 256 + n.getUint8(o); - return i; - } - readUintBE(e, r) { - return this.readUIntBE(e, r); - } - readUIntLE(e, r) { - (J(e, "offset"), - re(e, "offset"), - K(e, "offset", this.length - 1), - J(r, "byteLength"), - re(r, "byteLength")); - let n = new DataView(this.buffer, e, r), - i = 0; - for (let o = 0; o < r; o++) i += n.getUint8(o) * Math.pow(256, o); - return i; - } - readUintLE(e, r) { - return this.readUIntLE(e, r); - } - writeIntBE(e, r, n) { - return ( - (e = e < 0 ? e + Math.pow(256, n) : e), - this.writeUIntBE(e, r, n) - ); - } - writeIntLE(e, r, n) { - return ( - (e = e < 0 ? e + Math.pow(256, n) : e), - this.writeUIntLE(e, r, n) - ); - } - writeUIntBE(e, r, n) { - (J(r, "offset"), - re(r, "offset"), - K(r, "offset", this.length - 1), - J(n, "byteLength"), - re(n, "byteLength")); - let i = new DataView(this.buffer, r, n); - for (let o = n - 1; o >= 0; o--) - (i.setUint8(o, e & 255), (e = e / 256)); - return r + n; - } - writeUintBE(e, r, n) { - return this.writeUIntBE(e, r, n); - } - writeUIntLE(e, r, n) { - (J(r, "offset"), - re(r, "offset"), - K(r, "offset", this.length - 1), - J(n, "byteLength"), - re(n, "byteLength")); - let i = new DataView(this.buffer, r, n); - for (let o = 0; o < n; o++) (i.setUint8(o, e & 255), (e = e / 256)); - return r + n; - } - writeUintLE(e, r, n) { - return this.writeUIntLE(e, r, n); - } - toJSON() { - return { type: "Buffer", data: Array.from(this) }; - } - swap16() { - let e = new DataView(this.buffer, this.byteOffset, this.byteLength); - for (let r = 0; r < this.length; r += 2) - e.setUint16(r, e.getUint16(r, !0), !1); - return this; - } - swap32() { - let e = new DataView(this.buffer, this.byteOffset, this.byteLength); - for (let r = 0; r < this.length; r += 4) - e.setUint32(r, e.getUint32(r, !0), !1); - return this; - } - swap64() { - let e = new DataView(this.buffer, this.byteOffset, this.byteLength); - for (let r = 0; r < this.length; r += 8) - e.setBigUint64(r, e.getBigUint64(r, !0), !1); - return this; - } - compare(e, r = 0, n = e.length, i = 0, o = this.length) { - return ( - ir(e, "target"), - J(r, "targetStart"), - J(n, "targetEnd"), - J(i, "sourceStart"), - J(o, "sourceEnd"), - K(r, "targetStart"), - K(n, "targetEnd", e.length), - K(i, "sourceStart"), - K(o, "sourceEnd", this.length), - t.compare(this.slice(i, o), e.slice(r, n)) - ); - } - equals(e) { - return ( - ir(e, "otherBuffer"), - this.length === e.length && this.every((r, n) => r === e[n]) - ); - } - copy(e, r = 0, n = 0, i = this.length) { - (K(r, "targetStart"), - K(n, "sourceStart", this.length), - K(i, "sourceEnd"), - (r >>>= 0), - (n >>>= 0), - (i >>>= 0)); - let o = 0; - for (; n < i && !(this[n] === void 0 || e[r] === void 0); ) - ((e[r] = this[n]), o++, n++, r++); - return o; - } - write(e, r, n, i = "utf8") { - let o = typeof r == "string" ? 0 : (r ?? 0), - s = typeof n == "string" ? this.length - o : (n ?? this.length - o); - return ( - (i = typeof r == "string" ? r : typeof n == "string" ? n : i), - J(o, "offset"), - J(s, "length"), - K(o, "offset", this.length), - K(s, "length", this.length), - (i === "ucs2" || - i === "ucs-2" || - i === "utf16le" || - i === "utf-16le") && - (s = s - (s % 2)), - Kr(e, i).copy(this, o, 0, s) - ); - } - fill(e = 0, r = 0, n = this.length, i = "utf-8") { - let o = typeof r == "string" ? 0 : r, - s = typeof n == "string" ? this.length : n; - if ( - ((i = typeof r == "string" ? r : typeof n == "string" ? n : i), - (e = t.from(typeof e == "number" ? [e] : (e ?? []), i)), - zn(i, "encoding"), - K(o, "offset", this.length), - K(s, "end", this.length), - e.length !== 0) - ) - for (let a = o; a < s; a += e.length) - super.set( - e.slice( - 0, - e.length + a >= this.length ? this.length - a : e.length, - ), - a, - ); - return this; - } - includes(e, r = null, n = "utf-8") { - return this.indexOf(e, r, n) !== -1; - } - lastIndexOf(e, r = null, n = "utf-8") { - return this.indexOf(e, r, n, !0); - } - indexOf(e, r = null, n = "utf-8", i = !1) { - let o = i ? this.findLastIndex.bind(this) : this.findIndex.bind(this); - n = typeof r == "string" ? r : n; - let s = t.from(typeof e == "number" ? [e] : e, n), - a = typeof r == "string" ? 0 : r; - return ( - (a = typeof r == "number" ? a : null), - (a = Number.isNaN(a) ? null : a), - (a ??= i ? this.length : 0), - (a = a < 0 ? this.length + a : a), - s.length === 0 && i === !1 - ? a >= this.length - ? this.length - : a - : s.length === 0 && i === !0 - ? (a >= this.length ? this.length : a) || this.length - : o( - (f, v) => - (i ? v <= a : v >= a) && - this[v] === s[0] && - s.every((A, I) => this[v + I] === A), - ) - ); - } - toString(e = "utf8", r = 0, n = this.length) { - if (((r = r < 0 ? 0 : r), (e = e.toString().toLowerCase()), n <= 0)) - return ""; - if (e === "utf8" || e === "utf-8") return zs.decode(this.slice(r, n)); - if (e === "base64" || e === "base64url") { - let i = btoa(this.reduce((o, s) => o + Hr(s), "")); - return e === "base64url" - ? i.replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "") - : i; - } - if ( - e === "binary" || - e === "ascii" || - e === "latin1" || - e === "latin-1" - ) - return this.slice(r, n).reduce( - (i, o) => i + Hr(o & (e === "ascii" ? 127 : 255)), - "", - ); - if ( - e === "ucs2" || - e === "ucs-2" || - e === "utf16le" || - e === "utf-16le" - ) { - let i = new DataView(this.buffer.slice(r, n)); - return Array.from({ length: i.byteLength / 2 }, (o, s) => - s * 2 + 1 < i.byteLength ? Hr(i.getUint16(s * 2, !0)) : "", - ).join(""); - } - if (e === "hex") - return this.slice(r, n).reduce( - (i, o) => i + o.toString(16).padStart(2, "0"), - "", - ); - Yn(`encoding "${e}"`); - } - toLocaleString() { - return this.toString(); - } - inspect() { - return ``; - } - }; - ((Ks = { - int8: [-128, 127], - int16: [-32768, 32767], - int32: [-2147483648, 2147483647], - uint8: [0, 255], - uint16: [0, 65535], - uint32: [0, 4294967295], - float32: [-1 / 0, 1 / 0], - float64: [-1 / 0, 1 / 0], - bigint64: [-0x8000000000000000n, 0x7fffffffffffffffn], - biguint64: [0n, 0xffffffffffffffffn], - }), - (Hs = new TextEncoder()), - (zs = new TextDecoder()), - (Ys = [ - "utf8", - "utf-8", - "hex", - "base64", - "ascii", - "binary", - "base64url", - "ucs2", - "ucs-2", - "utf16le", - "utf-16le", - "latin1", - "latin-1", - ]), - (Xs = 4294967295)); - Js(y.prototype); - ((h = new Proxy(Zs, { - construct(t, [e, r]) { - return y.from(e, r); - }, - get(t, e) { - return y[e]; - }, - })), - (Hr = String.fromCodePoint)); - }); -var g, - w, - c = ae(() => { - "use strict"; - ((g = { - nextTick: (t, ...e) => { - setTimeout(() => { - t(...e); - }, 0); - }, - env: {}, - version: "", - cwd: () => "/", - stderr: {}, - argv: ["/bin/node"], - pid: 1e4, - }), - ({ cwd: w } = g)); - }); -var x, - p = ae(() => { - "use strict"; - x = - globalThis.performance ?? - (() => { - let t = Date.now(); - return { now: () => Date.now() - t }; - })(); - }); -var E, - m = ae(() => { - "use strict"; - E = () => {}; - E.prototype = E; - }); -var b, - d = ae(() => { - "use strict"; - b = class { - value; - constructor(e) { - this.value = e; - } - deref() { - return this.value; - } - }; - }); -function ti(t, e) { - var r, - n, - i, - o, - s, - a, - f, - v, - R = t.constructor, - A = R.precision; - if (!t.s || !e.s) return (e.s || (e = new R(t)), $ ? N(e, A) : e); - if ( - ((f = t.d), - (v = e.d), - (s = t.e), - (i = e.e), - (f = f.slice()), - (o = s - i), - o) - ) { - for ( - o < 0 - ? ((n = f), (o = -o), (a = v.length)) - : ((n = v), (i = s), (a = f.length)), - s = Math.ceil(A / B), - a = s > a ? s + 1 : a + 1, - o > a && ((o = a), (n.length = 1)), - n.reverse(); - o--; - ) - n.push(0); - n.reverse(); - } - for ( - a = f.length, - o = v.length, - a - o < 0 && ((o = a), (n = v), (v = f), (f = n)), - r = 0; - o; - ) - ((r = ((f[--o] = f[o] + v[o] + r) / H) | 0), (f[o] %= H)); - for (r && (f.unshift(r), ++i), a = f.length; f[--a] == 0; ) f.pop(); - return ((e.d = f), (e.e = i), $ ? N(e, A) : e); -} -function de(t, e, r) { - if (t !== ~~t || t < e || t > r) throw Error(_e + t); -} -function me(t) { - var e, - r, - n, - i = t.length - 1, - o = "", - s = t[0]; - if (i > 0) { - for (o += s, e = 1; e < i; e++) - ((n = t[e] + ""), (r = B - n.length), r && (o += Ae(r)), (o += n)); - ((s = t[e]), (n = s + ""), (r = B - n.length), r && (o += Ae(r))); - } else if (s === 0) return "0"; - for (; s % 10 === 0; ) s /= 10; - return o + s; -} -function ri(t, e) { - var r, - n, - i, - o, - s, - a, - f = 0, - v = 0, - R = t.constructor, - A = R.precision; - if (W(t) > 16) throw Error(Yr + W(t)); - if (!t.s) return new R(oe); - for ( - e == null ? (($ = !1), (a = A)) : (a = e), s = new R(0.03125); - t.abs().gte(0.1); - ) - ((t = t.times(s)), (v += 5)); - for ( - n = ((Math.log(ke(2, v)) / Math.LN10) * 2 + 5) | 0, - a += n, - r = i = o = new R(oe), - R.precision = a; - ; - ) { - if ( - ((i = N(i.times(t), a)), - (r = r.times(++f)), - (s = o.plus(we(i, r, a))), - me(s.d).slice(0, a) === me(o.d).slice(0, a)) - ) { - for (; v--; ) o = N(o.times(o), a); - return ((R.precision = A), e == null ? (($ = !0), N(o, A)) : o); - } - o = s; - } -} -function W(t) { - for (var e = t.e * B, r = t.d[0]; r >= 10; r /= 10) e++; - return e; -} -function zr(t, e, r) { - if (e > t.LN10.sd()) - throw ( - ($ = !0), - r && (t.precision = r), - Error(le + "LN10 precision limit exceeded") - ); - return N(new t(t.LN10), e); -} -function Ae(t) { - for (var e = ""; t--; ) e += "0"; - return e; -} -function Et(t, e) { - var r, - n, - i, - o, - s, - a, - f, - v, - R, - A = 1, - I = 10, - C = t, - L = C.d, - D = C.constructor, - k = D.precision; - if (C.s < 1) throw Error(le + (C.s ? "NaN" : "-Infinity")); - if (C.eq(oe)) return new D(0); - if ((e == null ? (($ = !1), (v = k)) : (v = e), C.eq(10))) - return (e == null && ($ = !0), zr(D, v)); - if ( - ((v += I), - (D.precision = v), - (r = me(L)), - (n = r.charAt(0)), - (o = W(C)), - Math.abs(o) < 15e14) - ) { - for (; (n < 7 && n != 1) || (n == 1 && r.charAt(1) > 3); ) - ((C = C.times(t)), (r = me(C.d)), (n = r.charAt(0)), A++); - ((o = W(C)), - n > 1 ? ((C = new D("0." + r)), o++) : (C = new D(n + "." + r.slice(1)))); - } else - return ( - (f = zr(D, v + 2, k).times(o + "")), - (C = Et(new D(n + "." + r.slice(1)), v - I).plus(f)), - (D.precision = k), - e == null ? (($ = !0), N(C, k)) : C - ); - for ( - a = s = C = we(C.minus(oe), C.plus(oe), v), R = N(C.times(C), v), i = 3; - ; - ) { - if ( - ((s = N(s.times(R), v)), - (f = a.plus(we(s, new D(i), v))), - me(f.d).slice(0, v) === me(a.d).slice(0, v)) - ) - return ( - (a = a.times(2)), - o !== 0 && (a = a.plus(zr(D, v + 2, k).times(o + ""))), - (a = we(a, new D(A), v)), - (D.precision = k), - e == null ? (($ = !0), N(a, k)) : a - ); - ((a = f), (i += 2)); - } -} -function Xn(t, e) { - var r, n, i; - for ( - (r = e.indexOf(".")) > -1 && (e = e.replace(".", "")), - (n = e.search(/e/i)) > 0 - ? (r < 0 && (r = n), (r += +e.slice(n + 1)), (e = e.substring(0, n))) - : r < 0 && (r = e.length), - n = 0; - e.charCodeAt(n) === 48; - ) - ++n; - for (i = e.length; e.charCodeAt(i - 1) === 48; ) --i; - if (((e = e.slice(n, i)), e)) { - if ( - ((i -= n), - (r = r - n - 1), - (t.e = Qe(r / B)), - (t.d = []), - (n = (r + 1) % B), - r < 0 && (n += B), - n < i) - ) { - for (n && t.d.push(+e.slice(0, n)), i -= B; n < i; ) - t.d.push(+e.slice(n, (n += B))); - ((e = e.slice(n)), (n = B - e.length)); - } else n -= i; - for (; n--; ) e += "0"; - if ((t.d.push(+e), $ && (t.e > or || t.e < -or))) throw Error(Yr + r); - } else ((t.s = 0), (t.e = 0), (t.d = [0])); - return t; -} -function N(t, e, r) { - var n, - i, - o, - s, - a, - f, - v, - R, - A = t.d; - for (s = 1, o = A[0]; o >= 10; o /= 10) s++; - if (((n = e - s), n < 0)) ((n += B), (i = e), (v = A[(R = 0)])); - else { - if (((R = Math.ceil((n + 1) / B)), (o = A.length), R >= o)) return t; - for (v = o = A[R], s = 1; o >= 10; o /= 10) s++; - ((n %= B), (i = n - B + s)); - } - if ( - (r !== void 0 && - ((o = ke(10, s - i - 1)), - (a = ((v / o) % 10) | 0), - (f = e < 0 || A[R + 1] !== void 0 || v % o), - (f = - r < 4 - ? (a || f) && (r == 0 || r == (t.s < 0 ? 3 : 2)) - : a > 5 || - (a == 5 && - (r == 4 || - f || - (r == 6 && - ((n > 0 ? (i > 0 ? v / ke(10, s - i) : 0) : A[R - 1]) % 10) & - 1) || - r == (t.s < 0 ? 8 : 7))))), - e < 1 || !A[0]) - ) - return ( - f - ? ((o = W(t)), - (A.length = 1), - (e = e - o - 1), - (A[0] = ke(10, (B - (e % B)) % B)), - (t.e = Qe(-e / B) || 0)) - : ((A.length = 1), (A[0] = t.e = t.s = 0)), - t - ); - if ( - (n == 0 - ? ((A.length = R), (o = 1), R--) - : ((A.length = R + 1), - (o = ke(10, B - n)), - (A[R] = i > 0 ? (((v / ke(10, s - i)) % ke(10, i)) | 0) * o : 0)), - f) - ) - for (;;) - if (R == 0) { - (A[0] += o) == H && ((A[0] = 1), ++t.e); - break; - } else { - if (((A[R] += o), A[R] != H)) break; - ((A[R--] = 0), (o = 1)); - } - for (n = A.length; A[--n] === 0; ) A.pop(); - if ($ && (t.e > or || t.e < -or)) throw Error(Yr + W(t)); - return t; -} -function ni(t, e) { - var r, - n, - i, - o, - s, - a, - f, - v, - R, - A, - I = t.constructor, - C = I.precision; - if (!t.s || !e.s) - return (e.s ? (e.s = -e.s) : (e = new I(t)), $ ? N(e, C) : e); - if ( - ((f = t.d), - (A = e.d), - (n = e.e), - (v = t.e), - (f = f.slice()), - (s = v - n), - s) - ) { - for ( - R = s < 0, - R - ? ((r = f), (s = -s), (a = A.length)) - : ((r = A), (n = v), (a = f.length)), - i = Math.max(Math.ceil(C / B), a) + 2, - s > i && ((s = i), (r.length = 1)), - r.reverse(), - i = s; - i--; - ) - r.push(0); - r.reverse(); - } else { - for (i = f.length, a = A.length, R = i < a, R && (a = i), i = 0; i < a; i++) - if (f[i] != A[i]) { - R = f[i] < A[i]; - break; - } - s = 0; - } - for ( - R && ((r = f), (f = A), (A = r), (e.s = -e.s)), - a = f.length, - i = A.length - a; - i > 0; - --i - ) - f[a++] = 0; - for (i = A.length; i > s; ) { - if (f[--i] < A[i]) { - for (o = i; o && f[--o] === 0; ) f[o] = H - 1; - (--f[o], (f[i] += H)); - } - f[i] -= A[i]; - } - for (; f[--a] === 0; ) f.pop(); - for (; f[0] === 0; f.shift()) --n; - return f[0] ? ((e.d = f), (e.e = n), $ ? N(e, C) : e) : new I(0); -} -function Me(t, e, r) { - var n, - i = W(t), - o = me(t.d), - s = o.length; - return ( - e - ? (r && (n = r - s) > 0 - ? (o = o.charAt(0) + "." + o.slice(1) + Ae(n)) - : s > 1 && (o = o.charAt(0) + "." + o.slice(1)), - (o = o + (i < 0 ? "e" : "e+") + i)) - : i < 0 - ? ((o = "0." + Ae(-i - 1) + o), r && (n = r - s) > 0 && (o += Ae(n))) - : i >= s - ? ((o += Ae(i + 1 - s)), - r && (n = r - i - 1) > 0 && (o = o + "." + Ae(n))) - : ((n = i + 1) < s && (o = o.slice(0, n) + "." + o.slice(n)), - r && (n = r - s) > 0 && (i + 1 === s && (o += "."), (o += Ae(n)))), - t.s < 0 ? "-" + o : o - ); -} -function Zn(t, e) { - if (t.length > e) return ((t.length = e), !0); -} -function ii(t) { - var e, r, n; - function i(o) { - var s = this; - if (!(s instanceof i)) return new i(o); - if (((s.constructor = i), o instanceof i)) { - ((s.s = o.s), (s.e = o.e), (s.d = (o = o.d) ? o.slice() : o)); - return; - } - if (typeof o == "number") { - if (o * 0 !== 0) throw Error(_e + o); - if (o > 0) s.s = 1; - else if (o < 0) ((o = -o), (s.s = -1)); - else { - ((s.s = 0), (s.e = 0), (s.d = [0])); - return; - } - if (o === ~~o && o < 1e7) { - ((s.e = 0), (s.d = [o])); - return; - } - return Xn(s, o.toString()); - } else if (typeof o != "string") throw Error(_e + o); - if ( - (o.charCodeAt(0) === 45 ? ((o = o.slice(1)), (s.s = -1)) : (s.s = 1), - ta.test(o)) - ) - Xn(s, o); - else throw Error(_e + o); - } - if ( - ((i.prototype = S), - (i.ROUND_UP = 0), - (i.ROUND_DOWN = 1), - (i.ROUND_CEIL = 2), - (i.ROUND_FLOOR = 3), - (i.ROUND_HALF_UP = 4), - (i.ROUND_HALF_DOWN = 5), - (i.ROUND_HALF_EVEN = 6), - (i.ROUND_HALF_CEIL = 7), - (i.ROUND_HALF_FLOOR = 8), - (i.clone = ii), - (i.config = i.set = ra), - t === void 0 && (t = {}), - t) - ) - for ( - n = ["precision", "rounding", "toExpNeg", "toExpPos", "LN10"], e = 0; - e < n.length; - ) - t.hasOwnProperty((r = n[e++])) || (t[r] = this[r]); - return (i.config(t), i); -} -function ra(t) { - if (!t || typeof t != "object") throw Error(le + "Object expected"); - var e, - r, - n, - i = [ - "precision", - 1, - je, - "rounding", - 0, - 8, - "toExpNeg", - -1 / 0, - 0, - "toExpPos", - 0, - 1 / 0, - ]; - for (e = 0; e < i.length; e += 3) - if ((n = t[(r = i[e])]) !== void 0) - if (Qe(n) === n && n >= i[e + 1] && n <= i[e + 2]) this[r] = n; - else throw Error(_e + r + ": " + n); - if ((n = t[(r = "LN10")]) !== void 0) - if (n == Math.LN10) this[r] = new this(n); - else throw Error(_e + r + ": " + n); - return this; -} -var je, - ea, - Xr, - $, - le, - _e, - Yr, - Qe, - ke, - ta, - oe, - H, - B, - ei, - or, - S, - we, - Xr, - sr, - oi = ae(() => { - "use strict"; - u(); - c(); - p(); - m(); - d(); - l(); - ((je = 1e9), - (ea = { - precision: 20, - rounding: 4, - toExpNeg: -7, - toExpPos: 21, - LN10: "2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286", - }), - ($ = !0), - (le = "[DecimalError] "), - (_e = le + "Invalid argument: "), - (Yr = le + "Exponent out of range: "), - (Qe = Math.floor), - (ke = Math.pow), - (ta = /^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i), - (H = 1e7), - (B = 7), - (ei = 9007199254740991), - (or = Qe(ei / B)), - (S = {})); - S.absoluteValue = S.abs = function () { - var t = new this.constructor(this); - return (t.s && (t.s = 1), t); - }; - S.comparedTo = S.cmp = function (t) { - var e, - r, - n, - i, - o = this; - if (((t = new o.constructor(t)), o.s !== t.s)) return o.s || -t.s; - if (o.e !== t.e) return (o.e > t.e) ^ (o.s < 0) ? 1 : -1; - for (n = o.d.length, i = t.d.length, e = 0, r = n < i ? n : i; e < r; ++e) - if (o.d[e] !== t.d[e]) return (o.d[e] > t.d[e]) ^ (o.s < 0) ? 1 : -1; - return n === i ? 0 : (n > i) ^ (o.s < 0) ? 1 : -1; - }; - S.decimalPlaces = S.dp = function () { - var t = this, - e = t.d.length - 1, - r = (e - t.e) * B; - if (((e = t.d[e]), e)) for (; e % 10 == 0; e /= 10) r--; - return r < 0 ? 0 : r; - }; - S.dividedBy = S.div = function (t) { - return we(this, new this.constructor(t)); - }; - S.dividedToIntegerBy = S.idiv = function (t) { - var e = this, - r = e.constructor; - return N(we(e, new r(t), 0, 1), r.precision); - }; - S.equals = S.eq = function (t) { - return !this.cmp(t); - }; - S.exponent = function () { - return W(this); - }; - S.greaterThan = S.gt = function (t) { - return this.cmp(t) > 0; - }; - S.greaterThanOrEqualTo = S.gte = function (t) { - return this.cmp(t) >= 0; - }; - S.isInteger = S.isint = function () { - return this.e > this.d.length - 2; - }; - S.isNegative = S.isneg = function () { - return this.s < 0; - }; - S.isPositive = S.ispos = function () { - return this.s > 0; - }; - S.isZero = function () { - return this.s === 0; - }; - S.lessThan = S.lt = function (t) { - return this.cmp(t) < 0; - }; - S.lessThanOrEqualTo = S.lte = function (t) { - return this.cmp(t) < 1; - }; - S.logarithm = S.log = function (t) { - var e, - r = this, - n = r.constructor, - i = n.precision, - o = i + 5; - if (t === void 0) t = new n(10); - else if (((t = new n(t)), t.s < 1 || t.eq(oe))) throw Error(le + "NaN"); - if (r.s < 1) throw Error(le + (r.s ? "NaN" : "-Infinity")); - return r.eq(oe) - ? new n(0) - : (($ = !1), (e = we(Et(r, o), Et(t, o), o)), ($ = !0), N(e, i)); - }; - S.minus = S.sub = function (t) { - var e = this; - return ( - (t = new e.constructor(t)), - e.s == t.s ? ni(e, t) : ti(e, ((t.s = -t.s), t)) - ); - }; - S.modulo = S.mod = function (t) { - var e, - r = this, - n = r.constructor, - i = n.precision; - if (((t = new n(t)), !t.s)) throw Error(le + "NaN"); - return r.s - ? (($ = !1), (e = we(r, t, 0, 1).times(t)), ($ = !0), r.minus(e)) - : N(new n(r), i); - }; - S.naturalExponential = S.exp = function () { - return ri(this); - }; - S.naturalLogarithm = S.ln = function () { - return Et(this); - }; - S.negated = S.neg = function () { - var t = new this.constructor(this); - return ((t.s = -t.s || 0), t); - }; - S.plus = S.add = function (t) { - var e = this; - return ( - (t = new e.constructor(t)), - e.s == t.s ? ti(e, t) : ni(e, ((t.s = -t.s), t)) - ); - }; - S.precision = S.sd = function (t) { - var e, - r, - n, - i = this; - if (t !== void 0 && t !== !!t && t !== 1 && t !== 0) throw Error(_e + t); - if ( - ((e = W(i) + 1), (n = i.d.length - 1), (r = n * B + 1), (n = i.d[n]), n) - ) { - for (; n % 10 == 0; n /= 10) r--; - for (n = i.d[0]; n >= 10; n /= 10) r++; - } - return t && e > r ? e : r; - }; - S.squareRoot = S.sqrt = function () { - var t, - e, - r, - n, - i, - o, - s, - a = this, - f = a.constructor; - if (a.s < 1) { - if (!a.s) return new f(0); - throw Error(le + "NaN"); - } - for ( - t = W(a), - $ = !1, - i = Math.sqrt(+a), - i == 0 || i == 1 / 0 - ? ((e = me(a.d)), - (e.length + t) % 2 == 0 && (e += "0"), - (i = Math.sqrt(e)), - (t = Qe((t + 1) / 2) - (t < 0 || t % 2)), - i == 1 / 0 - ? (e = "5e" + t) - : ((e = i.toExponential()), - (e = e.slice(0, e.indexOf("e") + 1) + t)), - (n = new f(e))) - : (n = new f(i.toString())), - r = f.precision, - i = s = r + 3; - ; - ) - if ( - ((o = n), - (n = o.plus(we(a, o, s + 2)).times(0.5)), - me(o.d).slice(0, s) === (e = me(n.d)).slice(0, s)) - ) { - if (((e = e.slice(s - 3, s + 1)), i == s && e == "4999")) { - if ((N(o, r + 1, 0), o.times(o).eq(a))) { - n = o; - break; - } - } else if (e != "9999") break; - s += 4; - } - return (($ = !0), N(n, r)); - }; - S.times = S.mul = function (t) { - var e, - r, - n, - i, - o, - s, - a, - f, - v, - R = this, - A = R.constructor, - I = R.d, - C = (t = new A(t)).d; - if (!R.s || !t.s) return new A(0); - for ( - t.s *= R.s, - r = R.e + t.e, - f = I.length, - v = C.length, - f < v && ((o = I), (I = C), (C = o), (s = f), (f = v), (v = s)), - o = [], - s = f + v, - n = s; - n--; - ) - o.push(0); - for (n = v; --n >= 0; ) { - for (e = 0, i = f + n; i > n; ) - ((a = o[i] + C[n] * I[i - n - 1] + e), - (o[i--] = (a % H) | 0), - (e = (a / H) | 0)); - o[i] = ((o[i] + e) % H) | 0; - } - for (; !o[--s]; ) o.pop(); - return ( - e ? ++r : o.shift(), - (t.d = o), - (t.e = r), - $ ? N(t, A.precision) : t - ); - }; - S.toDecimalPlaces = S.todp = function (t, e) { - var r = this, - n = r.constructor; - return ( - (r = new n(r)), - t === void 0 - ? r - : (de(t, 0, je), - e === void 0 ? (e = n.rounding) : de(e, 0, 8), - N(r, t + W(r) + 1, e)) - ); - }; - S.toExponential = function (t, e) { - var r, - n = this, - i = n.constructor; - return ( - t === void 0 - ? (r = Me(n, !0)) - : (de(t, 0, je), - e === void 0 ? (e = i.rounding) : de(e, 0, 8), - (n = N(new i(n), t + 1, e)), - (r = Me(n, !0, t + 1))), - r - ); - }; - S.toFixed = function (t, e) { - var r, - n, - i = this, - o = i.constructor; - return t === void 0 - ? Me(i) - : (de(t, 0, je), - e === void 0 ? (e = o.rounding) : de(e, 0, 8), - (n = N(new o(i), t + W(i) + 1, e)), - (r = Me(n.abs(), !1, t + W(n) + 1)), - i.isneg() && !i.isZero() ? "-" + r : r); - }; - S.toInteger = S.toint = function () { - var t = this, - e = t.constructor; - return N(new e(t), W(t) + 1, e.rounding); - }; - S.toNumber = function () { - return +this; - }; - S.toPower = S.pow = function (t) { - var e, - r, - n, - i, - o, - s, - a = this, - f = a.constructor, - v = 12, - R = +(t = new f(t)); - if (!t.s) return new f(oe); - if (((a = new f(a)), !a.s)) { - if (t.s < 1) throw Error(le + "Infinity"); - return a; - } - if (a.eq(oe)) return a; - if (((n = f.precision), t.eq(oe))) return N(a, n); - if (((e = t.e), (r = t.d.length - 1), (s = e >= r), (o = a.s), s)) { - if ((r = R < 0 ? -R : R) <= ei) { - for ( - i = new f(oe), e = Math.ceil(n / B + 4), $ = !1; - r % 2 && ((i = i.times(a)), Zn(i.d, e)), (r = Qe(r / 2)), r !== 0; - ) - ((a = a.times(a)), Zn(a.d, e)); - return (($ = !0), t.s < 0 ? new f(oe).div(i) : N(i, n)); - } - } else if (o < 0) throw Error(le + "NaN"); - return ( - (o = o < 0 && t.d[Math.max(e, r)] & 1 ? -1 : 1), - (a.s = 1), - ($ = !1), - (i = t.times(Et(a, n + v))), - ($ = !0), - (i = ri(i)), - (i.s = o), - i - ); - }; - S.toPrecision = function (t, e) { - var r, - n, - i = this, - o = i.constructor; - return ( - t === void 0 - ? ((r = W(i)), (n = Me(i, r <= o.toExpNeg || r >= o.toExpPos))) - : (de(t, 1, je), - e === void 0 ? (e = o.rounding) : de(e, 0, 8), - (i = N(new o(i), t, e)), - (r = W(i)), - (n = Me(i, t <= r || r <= o.toExpNeg, t))), - n - ); - }; - S.toSignificantDigits = S.tosd = function (t, e) { - var r = this, - n = r.constructor; - return ( - t === void 0 - ? ((t = n.precision), (e = n.rounding)) - : (de(t, 1, je), e === void 0 ? (e = n.rounding) : de(e, 0, 8)), - N(new n(r), t, e) - ); - }; - S.toString = - S.valueOf = - S.val = - S.toJSON = - S[Symbol.for("nodejs.util.inspect.custom")] = - function () { - var t = this, - e = W(t), - r = t.constructor; - return Me(t, e <= r.toExpNeg || e >= r.toExpPos); - }; - we = (function () { - function t(n, i) { - var o, - s = 0, - a = n.length; - for (n = n.slice(); a--; ) - ((o = n[a] * i + s), (n[a] = (o % H) | 0), (s = (o / H) | 0)); - return (s && n.unshift(s), n); - } - function e(n, i, o, s) { - var a, f; - if (o != s) f = o > s ? 1 : -1; - else - for (a = f = 0; a < o; a++) - if (n[a] != i[a]) { - f = n[a] > i[a] ? 1 : -1; - break; - } - return f; - } - function r(n, i, o) { - for (var s = 0; o--; ) - ((n[o] -= s), - (s = n[o] < i[o] ? 1 : 0), - (n[o] = s * H + n[o] - i[o])); - for (; !n[0] && n.length > 1; ) n.shift(); - } - return function (n, i, o, s) { - var a, - f, - v, - R, - A, - I, - C, - L, - D, - k, - Ee, - ee, - U, - te, - Oe, - Wr, - ue, - tr, - rr = n.constructor, - qs = n.s == i.s ? 1 : -1, - pe = n.d, - G = i.d; - if (!n.s) return new rr(n); - if (!i.s) throw Error(le + "Division by zero"); - for ( - f = n.e - i.e, - ue = G.length, - Oe = pe.length, - C = new rr(qs), - L = C.d = [], - v = 0; - G[v] == (pe[v] || 0); - ) - ++v; - if ( - (G[v] > (pe[v] || 0) && --f, - o == null - ? (ee = o = rr.precision) - : s - ? (ee = o + (W(n) - W(i)) + 1) - : (ee = o), - ee < 0) - ) - return new rr(0); - if (((ee = (ee / B + 2) | 0), (v = 0), ue == 1)) - for (R = 0, G = G[0], ee++; (v < Oe || R) && ee--; v++) - ((U = R * H + (pe[v] || 0)), - (L[v] = (U / G) | 0), - (R = (U % G) | 0)); - else { - for ( - R = (H / (G[0] + 1)) | 0, - R > 1 && - ((G = t(G, R)), - (pe = t(pe, R)), - (ue = G.length), - (Oe = pe.length)), - te = ue, - D = pe.slice(0, ue), - k = D.length; - k < ue; - ) - D[k++] = 0; - ((tr = G.slice()), tr.unshift(0), (Wr = G[0]), G[1] >= H / 2 && ++Wr); - do - ((R = 0), - (a = e(G, D, ue, k)), - a < 0 - ? ((Ee = D[0]), - ue != k && (Ee = Ee * H + (D[1] || 0)), - (R = (Ee / Wr) | 0), - R > 1 - ? (R >= H && (R = H - 1), - (A = t(G, R)), - (I = A.length), - (k = D.length), - (a = e(A, D, I, k)), - a == 1 && (R--, r(A, ue < I ? tr : G, I))) - : (R == 0 && (a = R = 1), (A = G.slice())), - (I = A.length), - I < k && A.unshift(0), - r(D, A, k), - a == -1 && - ((k = D.length), - (a = e(G, D, ue, k)), - a < 1 && (R++, r(D, ue < k ? tr : G, k))), - (k = D.length)) - : a === 0 && (R++, (D = [0])), - (L[v++] = R), - a && D[0] ? (D[k++] = pe[te] || 0) : ((D = [pe[te]]), (k = 1))); - while ((te++ < Oe || D[0] !== void 0) && ee--); - } - return (L[0] || L.shift(), (C.e = f), N(C, s ? o + W(C) + 1 : o)); - }; - })(); - Xr = ii(ea); - oe = new Xr(1); - sr = Xr; - }); -var P, - xe, - l = ae(() => { - "use strict"; - oi(); - ((P = class extends sr { - static isDecimal(e) { - return e instanceof sr; - } - static random(e = 20) { - { - let n = globalThis.crypto - .getRandomValues(new Uint8Array(e)) - .reduce((i, o) => i + o, ""); - return new sr(`0.${n.slice(0, e)}`); - } - } - }), - (xe = P)); - }); -function la() { - return !1; -} -function nn() { - return { - dev: 0, - ino: 0, - mode: 0, - nlink: 0, - uid: 0, - gid: 0, - rdev: 0, - size: 0, - blksize: 0, - blocks: 0, - atimeMs: 0, - mtimeMs: 0, - ctimeMs: 0, - birthtimeMs: 0, - atime: new Date(), - mtime: new Date(), - ctime: new Date(), - birthtime: new Date(), - }; -} -function ua() { - return nn(); -} -function ca() { - return []; -} -function pa(t) { - t(null, []); -} -function ma() { - return ""; -} -function da() { - return ""; -} -function fa() {} -function ga() {} -function ya() {} -function ha() {} -function ba() {} -function Ea() {} -function wa() {} -function xa() {} -function Pa() { - return { close: () => {}, on: () => {}, removeAllListeners: () => {} }; -} -function Ta(t, e) { - e(null, nn()); -} -var va, - Ra, - Pi, - Ti = ae(() => { - "use strict"; - u(); - c(); - p(); - m(); - d(); - l(); - ((va = {}), - (Ra = { - existsSync: la, - lstatSync: nn, - stat: Ta, - statSync: ua, - readdirSync: ca, - readdir: pa, - readlinkSync: ma, - realpathSync: da, - chmodSync: fa, - renameSync: ga, - mkdirSync: ya, - rmdirSync: ha, - rmSync: ba, - unlinkSync: Ea, - watchFile: wa, - unwatchFile: xa, - watch: Pa, - promises: va, - }), - (Pi = Ra)); - }); -var vi = yt((Yp, Aa) => { - Aa.exports = { - name: "@prisma/internals", - version: "6.19.2", - description: "This package is intended for Prisma's internal use", - main: "dist/index.js", - types: "dist/index.d.ts", - repository: { - type: "git", - url: "https://github.com/prisma/prisma.git", - directory: "packages/internals", - }, - homepage: "https://www.prisma.io", - author: "Tim Suchanek ", - bugs: "https://github.com/prisma/prisma/issues", - license: "Apache-2.0", - scripts: { - dev: "DEV=true tsx helpers/build.ts", - build: "tsx helpers/build.ts", - test: "dotenv -e ../../.db.env -- jest --silent", - prepublishOnly: "pnpm run build", - }, - files: [ - "README.md", - "dist", - "!**/libquery_engine*", - "!dist/get-generators/engines/*", - "scripts", - ], - devDependencies: { - "@babel/helper-validator-identifier": "7.25.9", - "@opentelemetry/api": "1.9.0", - "@swc/core": "1.11.5", - "@swc/jest": "0.2.37", - "@types/babel__helper-validator-identifier": "7.15.2", - "@types/jest": "29.5.14", - "@types/node": "18.19.76", - "@types/resolve": "1.20.6", - archiver: "6.0.2", - "checkpoint-client": "1.1.33", - "cli-truncate": "4.0.0", - dotenv: "16.5.0", - empathic: "2.0.0", - "escape-string-regexp": "5.0.0", - execa: "8.0.1", - "fast-glob": "3.3.3", - "find-up": "7.0.0", - "fp-ts": "2.16.9", - "fs-extra": "11.3.0", - "global-directory": "4.0.0", - globby: "11.1.0", - "identifier-regex": "1.0.0", - "indent-string": "4.0.0", - "is-windows": "1.0.2", - "is-wsl": "3.1.0", - jest: "29.7.0", - "jest-junit": "16.0.0", - kleur: "4.1.5", - "mock-stdin": "1.0.0", - "new-github-issue-url": "0.2.1", - "node-fetch": "3.3.2", - "npm-packlist": "5.1.3", - open: "7.4.2", - "p-map": "4.0.0", - resolve: "1.22.10", - "string-width": "7.2.0", - "strip-indent": "4.0.0", - "temp-dir": "2.0.0", - tempy: "1.0.1", - "terminal-link": "4.0.0", - tmp: "0.2.3", - "ts-pattern": "5.6.2", - "ts-toolbelt": "9.6.0", - typescript: "5.4.5", - yarn: "1.22.22", - }, - dependencies: { - "@prisma/config": "workspace:*", - "@prisma/debug": "workspace:*", - "@prisma/dmmf": "workspace:*", - "@prisma/driver-adapter-utils": "workspace:*", - "@prisma/engines": "workspace:*", - "@prisma/fetch-engine": "workspace:*", - "@prisma/generator": "workspace:*", - "@prisma/generator-helper": "workspace:*", - "@prisma/get-platform": "workspace:*", - "@prisma/prisma-schema-wasm": - "7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7", - "@prisma/schema-engine-wasm": - "7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7", - "@prisma/schema-files-loader": "workspace:*", - arg: "5.0.2", - prompts: "2.4.2", - }, - peerDependencies: { typescript: ">=5.1.0" }, - peerDependenciesMeta: { typescript: { optional: !0 } }, - sideEffects: !1, - }; -}); -function Sa(...t) { - return t.join("/"); -} -function Ia(...t) { - return t.join("/"); -} -function Da(t) { - let e = Ri(t), - r = Ai(t), - [n, i] = e.split("."); - return { root: "/", dir: r, base: e, ext: i, name: n }; -} -function Ri(t) { - let e = t.split("/"); - return e[e.length - 1]; -} -function Ai(t) { - return t.split("/").slice(0, -1).join("/"); -} -function ka(t) { - let e = t.split("/").filter((i) => i !== "" && i !== "."), - r = []; - for (let i of e) i === ".." ? r.pop() : r.push(i); - let n = r.join("/"); - return t.startsWith("/") ? "/" + n : n; -} -var Ci, - Oa, - _a, - Ma, - cr, - Si = ae(() => { - "use strict"; - u(); - c(); - p(); - m(); - d(); - l(); - ((Ci = "/"), (Oa = ":")); - ((_a = { sep: Ci }), - (Ma = { - basename: Ri, - delimiter: Oa, - dirname: Ai, - join: Ia, - normalize: ka, - parse: Da, - posix: _a, - resolve: Sa, - sep: Ci, - }), - (cr = Ma)); - }); -var un = yt((ud, qa) => { - qa.exports = { - name: "@prisma/engines-version", - version: "7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7", - main: "index.js", - types: "index.d.ts", - license: "Apache-2.0", - author: "Tim Suchanek ", - prisma: { enginesVersion: "c2990dca591cba766e3b7ef5d9e8a84796e47ab7" }, - repository: { - type: "git", - url: "https://github.com/prisma/engines-wrapper.git", - directory: "packages/engines-version", - }, - devDependencies: { "@types/node": "18.19.76", typescript: "4.9.5" }, - files: ["index.js", "index.d.ts"], - scripts: { build: "tsc -d" }, - }; -}); -var Di = yt((dr) => { - "use strict"; - u(); - c(); - p(); - m(); - d(); - l(); - Object.defineProperty(dr, "__esModule", { value: !0 }); - dr.enginesVersion = void 0; - dr.enginesVersion = un().prisma.enginesVersion; -}); -var _i = yt((vd, ki) => { - "use strict"; - u(); - c(); - p(); - m(); - d(); - l(); - ki.exports = (t, e = 1, r) => { - if ( - ((r = { indent: " ", includeEmptyLines: !1, ...r }), typeof t != "string") - ) - throw new TypeError( - `Expected \`input\` to be a \`string\`, got \`${typeof t}\``, - ); - if (typeof e != "number") - throw new TypeError( - `Expected \`count\` to be a \`number\`, got \`${typeof e}\``, - ); - if (typeof r.indent != "string") - throw new TypeError( - `Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``, - ); - if (e === 0) return t; - let n = r.includeEmptyLines ? /^/gm : /^(?!\s*$)/gm; - return t.replace(n, r.indent.repeat(e)); - }; -}); -var hn = yt((eb, qi) => { - "use strict"; - u(); - c(); - p(); - m(); - d(); - l(); - qi.exports = (function () { - function t(e, r, n, i, o) { - return e < r || n < r ? (e > n ? n + 1 : e + 1) : i === o ? r : r + 1; - } - return function (e, r) { - if (e === r) return 0; - if (e.length > r.length) { - var n = e; - ((e = r), (r = n)); - } - for ( - var i = e.length, o = r.length; - i > 0 && e.charCodeAt(i - 1) === r.charCodeAt(o - 1); - ) - (i--, o--); - for (var s = 0; s < i && e.charCodeAt(s) === r.charCodeAt(s); ) s++; - if (((i -= s), (o -= s), i === 0 || o < 3)) return o; - var a = 0, - f, - v, - R, - A, - I, - C, - L, - D, - k, - Ee, - ee, - U, - te = []; - for (f = 0; f < i; f++) (te.push(f + 1), te.push(e.charCodeAt(s + f))); - for (var Oe = te.length - 1; a < o - 3; ) - for ( - k = r.charCodeAt(s + (v = a)), - Ee = r.charCodeAt(s + (R = a + 1)), - ee = r.charCodeAt(s + (A = a + 2)), - U = r.charCodeAt(s + (I = a + 3)), - C = a += 4, - f = 0; - f < Oe; - f += 2 - ) - ((L = te[f]), - (D = te[f + 1]), - (v = t(L, v, R, k, D)), - (R = t(v, R, A, Ee, D)), - (A = t(R, A, I, ee, D)), - (C = t(A, I, C, U, D)), - (te[f] = C), - (I = A), - (A = R), - (R = v), - (v = L)); - for (; a < o; ) - for (k = r.charCodeAt(s + (v = a)), C = ++a, f = 0; f < Oe; f += 2) - ((L = te[f]), (te[f] = C = t(L, v, C, k, te[f + 1])), (v = L)); - return C; - }; - })(); -}); -var Qi = ae(() => { - "use strict"; - u(); - c(); - p(); - m(); - d(); - l(); -}); -var Gi = ae(() => { - "use strict"; - u(); - c(); - p(); - m(); - d(); - l(); -}); -var Fr, - yo = ae(() => { - "use strict"; - u(); - c(); - p(); - m(); - d(); - l(); - Fr = class { - events = {}; - on(e, r) { - return ( - this.events[e] || (this.events[e] = []), - this.events[e].push(r), - this - ); - } - emit(e, ...r) { - return this.events[e] - ? (this.events[e].forEach((n) => { - n(...r); - }), - !0) - : !1; - } - }; - }); -var zu = {}; -ht(zu, { - DMMF: () => At, - Debug: () => j, - Decimal: () => xe, - Extensions: () => Zr, - MetricsClient: () => nt, - PrismaClientInitializationError: () => M, - PrismaClientKnownRequestError: () => X, - PrismaClientRustPanicError: () => Te, - PrismaClientUnknownRequestError: () => Q, - PrismaClientValidationError: () => Y, - Public: () => en, - Sql: () => ne, - createParam: () => ao, - defineDmmfProperty: () => fo, - deserializeJsonResponse: () => lt, - deserializeRawResult: () => Gr, - dmmfToRuntimeDataModel: () => Ui, - empty: () => bo, - getPrismaClient: () => Fs, - getRuntime: () => ut, - join: () => ho, - makeStrictEnum: () => Ns, - makeTypedQueryFactory: () => go, - objectEnumValues: () => Ar, - raw: () => An, - serializeJsonQuery: () => _r, - skip: () => kr, - sqltag: () => Cn, - warnEnvConflicts: () => void 0, - warnOnce: () => Tt, -}); -module.exports = Gs(zu); -u(); -c(); -p(); -m(); -d(); -l(); -var Zr = {}; -ht(Zr, { defineExtension: () => si, getExtensionContext: () => ai }); -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -function si(t) { - return typeof t == "function" ? t : (e) => e.$extends(t); -} -u(); -c(); -p(); -m(); -d(); -l(); -function ai(t) { - return t; -} -var en = {}; -ht(en, { validator: () => li }); -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -function li(...t) { - return (e) => e; -} -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -var tn, - ui, - ci, - pi, - mi = !0; -typeof g < "u" && - (({ - FORCE_COLOR: tn, - NODE_DISABLE_COLORS: ui, - NO_COLOR: ci, - TERM: pi, - } = g.env || {}), - (mi = g.stdout && g.stdout.isTTY)); -var na = { - enabled: - !ui && ci == null && pi !== "dumb" && ((tn != null && tn !== "0") || mi), -}; -function q(t, e) { - let r = new RegExp(`\\x1b\\[${e}m`, "g"), - n = `\x1B[${t}m`, - i = `\x1B[${e}m`; - return function (o) { - return !na.enabled || o == null - ? o - : n + (~("" + o).indexOf(i) ? o.replace(r, i + n) : o) + i; - }; -} -var Kc = q(0, 0), - ar = q(1, 22), - lr = q(2, 22), - Hc = q(3, 23), - di = q(4, 24), - zc = q(7, 27), - Yc = q(8, 28), - Xc = q(9, 29), - Zc = q(30, 39), - Ge = q(31, 39), - fi = q(32, 39), - gi = q(33, 39), - yi = q(34, 39), - ep = q(35, 39), - hi = q(36, 39), - tp = q(37, 39), - bi = q(90, 39), - rp = q(90, 39), - np = q(40, 49), - ip = q(41, 49), - op = q(42, 49), - sp = q(43, 49), - ap = q(44, 49), - lp = q(45, 49), - up = q(46, 49), - cp = q(47, 49); -u(); -c(); -p(); -m(); -d(); -l(); -var ia = 100, - Ei = ["green", "yellow", "blue", "magenta", "cyan", "red"], - ur = [], - wi = Date.now(), - oa = 0, - rn = typeof g < "u" ? g.env : {}; -globalThis.DEBUG ??= rn.DEBUG ?? ""; -globalThis.DEBUG_COLORS ??= rn.DEBUG_COLORS ? rn.DEBUG_COLORS === "true" : !0; -var wt = { - enable(t) { - typeof t == "string" && (globalThis.DEBUG = t); - }, - disable() { - let t = globalThis.DEBUG; - return ((globalThis.DEBUG = ""), t); - }, - enabled(t) { - let e = globalThis.DEBUG.split(",").map((i) => - i.replace(/[.+?^${}()|[\]\\]/g, "\\$&"), - ), - r = e.some((i) => - i === "" || i[0] === "-" - ? !1 - : t.match(RegExp(i.split("*").join(".*") + "$")), - ), - n = e.some((i) => - i === "" || i[0] !== "-" - ? !1 - : t.match(RegExp(i.slice(1).split("*").join(".*") + "$")), - ); - return r && !n; - }, - log: (...t) => { - let [e, r, ...n] = t; - (console.warn ?? console.log)(`${e} ${r}`, ...n); - }, - formatters: {}, -}; -function sa(t) { - let e = { - color: Ei[oa++ % Ei.length], - enabled: wt.enabled(t), - namespace: t, - log: wt.log, - extend: () => {}, - }, - r = (...n) => { - let { enabled: i, namespace: o, color: s, log: a } = e; - if ( - (n.length !== 0 && ur.push([o, ...n]), - ur.length > ia && ur.shift(), - wt.enabled(o) || i) - ) { - let f = n.map((R) => (typeof R == "string" ? R : aa(R))), - v = `+${Date.now() - wi}ms`; - ((wi = Date.now()), a(o, ...f, v)); - } - }; - return new Proxy(r, { get: (n, i) => e[i], set: (n, i, o) => (e[i] = o) }); -} -var j = new Proxy(sa, { get: (t, e) => wt[e], set: (t, e, r) => (wt[e] = r) }); -function aa(t, e = 2) { - let r = new Set(); - return JSON.stringify( - t, - (n, i) => { - if (typeof i == "object" && i !== null) { - if (r.has(i)) return "[Circular *]"; - r.add(i); - } else if (typeof i == "bigint") return i.toString(); - return i; - }, - e, - ); -} -function xi() { - ur.length = 0; -} -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -var on = [ - "darwin", - "darwin-arm64", - "debian-openssl-1.0.x", - "debian-openssl-1.1.x", - "debian-openssl-3.0.x", - "rhel-openssl-1.0.x", - "rhel-openssl-1.1.x", - "rhel-openssl-3.0.x", - "linux-arm64-openssl-1.1.x", - "linux-arm64-openssl-1.0.x", - "linux-arm64-openssl-3.0.x", - "linux-arm-openssl-1.1.x", - "linux-arm-openssl-1.0.x", - "linux-arm-openssl-3.0.x", - "linux-musl", - "linux-musl-openssl-3.0.x", - "linux-musl-arm64-openssl-1.1.x", - "linux-musl-arm64-openssl-3.0.x", - "linux-nixos", - "linux-static-x64", - "linux-static-arm64", - "windows", - "freebsd11", - "freebsd12", - "freebsd13", - "freebsd14", - "freebsd15", - "openbsd", - "netbsd", - "arm", -]; -u(); -c(); -p(); -m(); -d(); -l(); -var Ca = vi(), - sn = Ca.version; -u(); -c(); -p(); -m(); -d(); -l(); -function Je(t) { - let e = La(); - return ( - e || - (t?.config.engineType === "library" - ? "library" - : t?.config.engineType === "binary" - ? "binary" - : t?.config.engineType === "client" - ? "client" - : Fa()) - ); -} -function La() { - let t = g.env.PRISMA_CLIENT_ENGINE_TYPE; - return t === "library" - ? "library" - : t === "binary" - ? "binary" - : t === "client" - ? "client" - : void 0; -} -function Fa() { - return "library"; -} -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -function an(t) { - return t.name === "DriverAdapterError" && typeof t.cause == "object"; -} -u(); -c(); -p(); -m(); -d(); -l(); -function pr(t) { - return { - ok: !0, - value: t, - map(e) { - return pr(e(t)); - }, - flatMap(e) { - return e(t); - }, - }; -} -function Le(t) { - return { - ok: !1, - error: t, - map() { - return Le(t); - }, - flatMap() { - return Le(t); - }, - }; -} -var Ii = j("driver-adapter-utils"), - ln = class { - registeredErrors = []; - consumeError(e) { - return this.registeredErrors[e]; - } - registerNewError(e) { - let r = 0; - for (; this.registeredErrors[r] !== void 0; ) r++; - return ((this.registeredErrors[r] = { error: e }), r); - } - }; -var mr = (t, e = new ln()) => { - let r = { - adapterName: t.adapterName, - errorRegistry: e, - queryRaw: Pe(e, t.queryRaw.bind(t)), - executeRaw: Pe(e, t.executeRaw.bind(t)), - executeScript: Pe(e, t.executeScript.bind(t)), - dispose: Pe(e, t.dispose.bind(t)), - provider: t.provider, - startTransaction: async (...n) => - (await Pe(e, t.startTransaction.bind(t))(...n)).map((o) => Na(e, o)), - }; - return ( - t.getConnectionInfo && - (r.getConnectionInfo = Ua(e, t.getConnectionInfo.bind(t))), - r - ); - }, - Na = (t, e) => ({ - adapterName: e.adapterName, - provider: e.provider, - options: e.options, - queryRaw: Pe(t, e.queryRaw.bind(e)), - executeRaw: Pe(t, e.executeRaw.bind(e)), - commit: Pe(t, e.commit.bind(e)), - rollback: Pe(t, e.rollback.bind(e)), - }); -function Pe(t, e) { - return async (...r) => { - try { - return pr(await e(...r)); - } catch (n) { - if ((Ii("[error@wrapAsync]", n), an(n))) return Le(n.cause); - let i = t.registerNewError(n); - return Le({ kind: "GenericJs", id: i }); - } - }; -} -function Ua(t, e) { - return (...r) => { - try { - return pr(e(...r)); - } catch (n) { - if ((Ii("[error@wrapSync]", n), an(n))) return Le(n.cause); - let i = t.registerNewError(n); - return Le({ kind: "GenericJs", id: i }); - } - }; -} -u(); -c(); -p(); -m(); -d(); -l(); -var Oi = "prisma+postgres", - fr = `${Oi}:`; -function gr(t) { - return t?.toString().startsWith(`${fr}//`) ?? !1; -} -function cn(t) { - if (!gr(t)) return !1; - let { host: e } = new URL(t); - return ( - e.includes("localhost") || e.includes("127.0.0.1") || e.includes("[::1]") - ); -} -var Pt = {}; -ht(Pt, { - error: () => $a, - info: () => Ba, - log: () => Va, - query: () => ja, - should: () => Mi, - tags: () => xt, - warn: () => pn, -}); -u(); -c(); -p(); -m(); -d(); -l(); -var xt = { - error: Ge("prisma:error"), - warn: gi("prisma:warn"), - info: hi("prisma:info"), - query: yi("prisma:query"), - }, - Mi = { warn: () => !g.env.PRISMA_DISABLE_WARNINGS }; -function Va(...t) { - console.log(...t); -} -function pn(t, ...e) { - Mi.warn() && console.warn(`${xt.warn} ${t}`, ...e); -} -function Ba(t, ...e) { - console.info(`${xt.info} ${t}`, ...e); -} -function $a(t, ...e) { - console.error(`${xt.error} ${t}`, ...e); -} -function ja(t, ...e) { - console.log(`${xt.query} ${t}`, ...e); -} -u(); -c(); -p(); -m(); -d(); -l(); -function yr(t, e) { - if (!t) - throw new Error( - `${e}. This should never happen. If you see this error, please, open an issue at https://pris.ly/prisma-prisma-bug-report`, - ); -} -u(); -c(); -p(); -m(); -d(); -l(); -function Fe(t, e) { - throw new Error(e); -} -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -function mn({ onlyFirst: t = !1 } = {}) { - let r = [ - "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))", - "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))", - ].join("|"); - return new RegExp(r, t ? void 0 : "g"); -} -var Qa = mn(); -function dn(t) { - if (typeof t != "string") - throw new TypeError(`Expected a \`string\`, got \`${typeof t}\``); - return t.replace(Qa, ""); -} -u(); -c(); -p(); -m(); -d(); -l(); -function fn(t, e) { - return Object.prototype.hasOwnProperty.call(t, e); -} -u(); -c(); -p(); -m(); -d(); -l(); -function hr(t, e) { - let r = {}; - for (let n of Object.keys(t)) r[n] = e(t[n], n); - return r; -} -u(); -c(); -p(); -m(); -d(); -l(); -function gn(t, e) { - if (t.length === 0) return; - let r = t[0]; - for (let n = 1; n < t.length; n++) e(r, t[n]) < 0 && (r = t[n]); - return r; -} -u(); -c(); -p(); -m(); -d(); -l(); -function O(t, e) { - Object.defineProperty(t, "name", { value: e, configurable: !0 }); -} -u(); -c(); -p(); -m(); -d(); -l(); -var Li = new Set(), - Tt = (t, e, ...r) => { - Li.has(t) || (Li.add(t), pn(e, ...r)); - }; -var M = class t extends Error { - clientVersion; - errorCode; - retryable; - constructor(e, r, n) { - (super(e), - (this.name = "PrismaClientInitializationError"), - (this.clientVersion = r), - (this.errorCode = n), - Error.captureStackTrace(t)); - } - get [Symbol.toStringTag]() { - return "PrismaClientInitializationError"; - } -}; -O(M, "PrismaClientInitializationError"); -u(); -c(); -p(); -m(); -d(); -l(); -var X = class extends Error { - code; - meta; - clientVersion; - batchRequestIdx; - constructor(e, { code: r, clientVersion: n, meta: i, batchRequestIdx: o }) { - (super(e), - (this.name = "PrismaClientKnownRequestError"), - (this.code = r), - (this.clientVersion = n), - (this.meta = i), - Object.defineProperty(this, "batchRequestIdx", { - value: o, - enumerable: !1, - writable: !0, - })); - } - get [Symbol.toStringTag]() { - return "PrismaClientKnownRequestError"; - } -}; -O(X, "PrismaClientKnownRequestError"); -u(); -c(); -p(); -m(); -d(); -l(); -var Te = class extends Error { - clientVersion; - constructor(e, r) { - (super(e), - (this.name = "PrismaClientRustPanicError"), - (this.clientVersion = r)); - } - get [Symbol.toStringTag]() { - return "PrismaClientRustPanicError"; - } -}; -O(Te, "PrismaClientRustPanicError"); -u(); -c(); -p(); -m(); -d(); -l(); -var Q = class extends Error { - clientVersion; - batchRequestIdx; - constructor(e, { clientVersion: r, batchRequestIdx: n }) { - (super(e), - (this.name = "PrismaClientUnknownRequestError"), - (this.clientVersion = r), - Object.defineProperty(this, "batchRequestIdx", { - value: n, - writable: !0, - enumerable: !1, - })); - } - get [Symbol.toStringTag]() { - return "PrismaClientUnknownRequestError"; - } -}; -O(Q, "PrismaClientUnknownRequestError"); -u(); -c(); -p(); -m(); -d(); -l(); -var Y = class extends Error { - name = "PrismaClientValidationError"; - clientVersion; - constructor(e, { clientVersion: r }) { - (super(e), (this.clientVersion = r)); - } - get [Symbol.toStringTag]() { - return "PrismaClientValidationError"; - } -}; -O(Y, "PrismaClientValidationError"); -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -var fe = class { - _map = new Map(); - get(e) { - return this._map.get(e)?.value; - } - set(e, r) { - this._map.set(e, { value: r }); - } - getOrCreate(e, r) { - let n = this._map.get(e); - if (n) return n.value; - let i = r(); - return (this.set(e, i), i); - } -}; -u(); -c(); -p(); -m(); -d(); -l(); -function Ce(t) { - return t.substring(0, 1).toLowerCase() + t.substring(1); -} -u(); -c(); -p(); -m(); -d(); -l(); -function Ni(t, e) { - let r = {}; - for (let n of t) { - let i = n[e]; - r[i] = n; - } - return r; -} -u(); -c(); -p(); -m(); -d(); -l(); -function vt(t) { - let e; - return { - get() { - return (e || (e = { value: t() }), e.value); - }, - }; -} -u(); -c(); -p(); -m(); -d(); -l(); -function Ui(t) { - return { models: yn(t.models), enums: yn(t.enums), types: yn(t.types) }; -} -function yn(t) { - let e = {}; - for (let { name: r, ...n } of t) e[r] = n; - return e; -} -u(); -c(); -p(); -m(); -d(); -l(); -function We(t) { - return ( - t instanceof Date || Object.prototype.toString.call(t) === "[object Date]" - ); -} -function br(t) { - return t.toString() !== "Invalid Date"; -} -u(); -c(); -p(); -m(); -d(); -l(); -l(); -function Ke(t) { - return P.isDecimal(t) - ? !0 - : t !== null && - typeof t == "object" && - typeof t.s == "number" && - typeof t.e == "number" && - typeof t.toFixed == "function" && - Array.isArray(t.d); -} -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -var At = {}; -ht(At, { ModelAction: () => Rt, datamodelEnumToSchemaEnum: () => Ga }); -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -function Ga(t) { - return { name: t.name, values: t.values.map((e) => e.name) }; -} -u(); -c(); -p(); -m(); -d(); -l(); -var Rt = ((U) => ( - (U.findUnique = "findUnique"), - (U.findUniqueOrThrow = "findUniqueOrThrow"), - (U.findFirst = "findFirst"), - (U.findFirstOrThrow = "findFirstOrThrow"), - (U.findMany = "findMany"), - (U.create = "create"), - (U.createMany = "createMany"), - (U.createManyAndReturn = "createManyAndReturn"), - (U.update = "update"), - (U.updateMany = "updateMany"), - (U.updateManyAndReturn = "updateManyAndReturn"), - (U.upsert = "upsert"), - (U.delete = "delete"), - (U.deleteMany = "deleteMany"), - (U.groupBy = "groupBy"), - (U.count = "count"), - (U.aggregate = "aggregate"), - (U.findRaw = "findRaw"), - (U.aggregateRaw = "aggregateRaw"), - U -))(Rt || {}); -var Ja = bt(_i()); -var Wa = { - red: Ge, - gray: bi, - dim: lr, - bold: ar, - underline: di, - highlightSource: (t) => t.highlight(), - }, - Ka = { - red: (t) => t, - gray: (t) => t, - dim: (t) => t, - bold: (t) => t, - underline: (t) => t, - highlightSource: (t) => t, - }; -function Ha({ message: t, originalMethod: e, isPanic: r, callArguments: n }) { - return { - functionName: `prisma.${e}()`, - message: t, - isPanic: r ?? !1, - callArguments: n, - }; -} -function za( - { - functionName: t, - location: e, - message: r, - isPanic: n, - contextLines: i, - callArguments: o, - }, - s, -) { - let a = [""], - f = e ? " in" : ":"; - if ( - (n - ? (a.push( - s.red( - `Oops, an unknown error occurred! This is ${s.bold("on us")}, you did nothing wrong.`, - ), - ), - a.push( - s.red(`It occurred in the ${s.bold(`\`${t}\``)} invocation${f}`), - )) - : a.push(s.red(`Invalid ${s.bold(`\`${t}\``)} invocation${f}`)), - e && a.push(s.underline(Ya(e))), - i) - ) { - a.push(""); - let v = [i.toString()]; - (o && (v.push(o), v.push(s.dim(")"))), a.push(v.join("")), o && a.push("")); - } else (a.push(""), o && a.push(o), a.push("")); - return ( - a.push(r), - a.join(` -`) - ); -} -function Ya(t) { - let e = [t.fileName]; - return ( - t.lineNumber && e.push(String(t.lineNumber)), - t.columnNumber && e.push(String(t.columnNumber)), - e.join(":") - ); -} -function Er(t) { - let e = t.showColors ? Wa : Ka, - r; - return ( - typeof $getTemplateParameters < "u" - ? (r = $getTemplateParameters(t, e)) - : (r = Ha(t)), - za(r, e) - ); -} -u(); -c(); -p(); -m(); -d(); -l(); -var Wi = bt(hn()); -u(); -c(); -p(); -m(); -d(); -l(); -function $i(t, e, r) { - let n = ji(t), - i = Xa(n), - o = el(i); - o ? wr(o, e, r) : e.addErrorMessage(() => "Unknown error"); -} -function ji(t) { - return t.errors.flatMap((e) => (e.kind === "Union" ? ji(e) : [e])); -} -function Xa(t) { - let e = new Map(), - r = []; - for (let n of t) { - if (n.kind !== "InvalidArgumentType") { - r.push(n); - continue; - } - let i = `${n.selectionPath.join(".")}:${n.argumentPath.join(".")}`, - o = e.get(i); - o - ? e.set(i, { - ...n, - argument: { - ...n.argument, - typeNames: Za(o.argument.typeNames, n.argument.typeNames), - }, - }) - : e.set(i, n); - } - return (r.push(...e.values()), r); -} -function Za(t, e) { - return [...new Set(t.concat(e))]; -} -function el(t) { - return gn(t, (e, r) => { - let n = Vi(e), - i = Vi(r); - return n !== i ? n - i : Bi(e) - Bi(r); - }); -} -function Vi(t) { - let e = 0; - return ( - Array.isArray(t.selectionPath) && (e += t.selectionPath.length), - Array.isArray(t.argumentPath) && (e += t.argumentPath.length), - e - ); -} -function Bi(t) { - switch (t.kind) { - case "InvalidArgumentValue": - case "ValueTooLarge": - return 20; - case "InvalidArgumentType": - return 10; - case "RequiredArgumentMissing": - return -10; - default: - return 0; - } -} -u(); -c(); -p(); -m(); -d(); -l(); -var se = class { - constructor(e, r) { - this.name = e; - this.value = r; - } - isRequired = !1; - makeRequired() { - return ((this.isRequired = !0), this); - } - write(e) { - let { - colors: { green: r }, - } = e.context; - (e.addMarginSymbol(r(this.isRequired ? "+" : "?")), - e.write(r(this.name)), - this.isRequired || e.write(r("?")), - e.write(r(": ")), - typeof this.value == "string" - ? e.write(r(this.value)) - : e.write(this.value)); - } -}; -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -Gi(); -u(); -c(); -p(); -m(); -d(); -l(); -var He = class { - constructor(e = 0, r) { - this.context = r; - this.currentIndent = e; - } - lines = []; - currentLine = ""; - currentIndent = 0; - marginSymbol; - afterNextNewLineCallback; - write(e) { - return ( - typeof e == "string" ? (this.currentLine += e) : e.write(this), - this - ); - } - writeJoined(e, r, n = (i, o) => o.write(i)) { - let i = r.length - 1; - for (let o = 0; o < r.length; o++) - (n(r[o], this), o !== i && this.write(e)); - return this; - } - writeLine(e) { - return this.write(e).newLine(); - } - newLine() { - (this.lines.push(this.indentedCurrentLine()), - (this.currentLine = ""), - (this.marginSymbol = void 0)); - let e = this.afterNextNewLineCallback; - return ((this.afterNextNewLineCallback = void 0), e?.(), this); - } - withIndent(e) { - return (this.indent(), e(this), this.unindent(), this); - } - afterNextNewline(e) { - return ((this.afterNextNewLineCallback = e), this); - } - indent() { - return (this.currentIndent++, this); - } - unindent() { - return (this.currentIndent > 0 && this.currentIndent--, this); - } - addMarginSymbol(e) { - return ((this.marginSymbol = e), this); - } - toString() { - return this.lines.concat(this.indentedCurrentLine()).join(` -`); - } - getCurrentLineLength() { - return this.currentLine.length; - } - indentedCurrentLine() { - let e = this.currentLine.padStart( - this.currentLine.length + 2 * this.currentIndent, - ); - return this.marginSymbol ? this.marginSymbol + e.slice(1) : e; - } -}; -Qi(); -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -var xr = class { - constructor(e) { - this.value = e; - } - write(e) { - e.write(this.value); - } - markAsError() { - this.value.markAsError(); - } -}; -u(); -c(); -p(); -m(); -d(); -l(); -var Pr = (t) => t, - Tr = { bold: Pr, red: Pr, green: Pr, dim: Pr, enabled: !1 }, - Ji = { bold: ar, red: Ge, green: fi, dim: lr, enabled: !0 }, - ze = { - write(t) { - t.writeLine(","); - }, - }; -u(); -c(); -p(); -m(); -d(); -l(); -var ge = class { - constructor(e) { - this.contents = e; - } - isUnderlined = !1; - color = (e) => e; - underline() { - return ((this.isUnderlined = !0), this); - } - setColor(e) { - return ((this.color = e), this); - } - write(e) { - let r = e.getCurrentLineLength(); - (e.write(this.color(this.contents)), - this.isUnderlined && - e.afterNextNewline(() => { - e.write(" ".repeat(r)).writeLine( - this.color("~".repeat(this.contents.length)), - ); - })); - } -}; -u(); -c(); -p(); -m(); -d(); -l(); -var Se = class { - hasError = !1; - markAsError() { - return ((this.hasError = !0), this); - } -}; -var Ye = class extends Se { - items = []; - addItem(e) { - return (this.items.push(new xr(e)), this); - } - getField(e) { - return this.items[e]; - } - getPrintWidth() { - return this.items.length === 0 - ? 2 - : Math.max(...this.items.map((r) => r.value.getPrintWidth())) + 2; - } - write(e) { - if (this.items.length === 0) { - this.writeEmpty(e); - return; - } - this.writeWithItems(e); - } - writeEmpty(e) { - let r = new ge("[]"); - (this.hasError && r.setColor(e.context.colors.red).underline(), e.write(r)); - } - writeWithItems(e) { - let { colors: r } = e.context; - (e - .writeLine("[") - .withIndent(() => e.writeJoined(ze, this.items).newLine()) - .write("]"), - this.hasError && - e.afterNextNewline(() => { - e.writeLine(r.red("~".repeat(this.getPrintWidth()))); - })); - } - asObject() {} -}; -var Xe = class t extends Se { - fields = {}; - suggestions = []; - addField(e) { - this.fields[e.name] = e; - } - addSuggestion(e) { - this.suggestions.push(e); - } - getField(e) { - return this.fields[e]; - } - getDeepField(e) { - let [r, ...n] = e, - i = this.getField(r); - if (!i) return; - let o = i; - for (let s of n) { - let a; - if ( - (o.value instanceof t - ? (a = o.value.getField(s)) - : o.value instanceof Ye && (a = o.value.getField(Number(s))), - !a) - ) - return; - o = a; - } - return o; - } - getDeepFieldValue(e) { - return e.length === 0 ? this : this.getDeepField(e)?.value; - } - hasField(e) { - return !!this.getField(e); - } - removeAllFields() { - this.fields = {}; - } - removeField(e) { - delete this.fields[e]; - } - getFields() { - return this.fields; - } - isEmpty() { - return Object.keys(this.fields).length === 0; - } - getFieldValue(e) { - return this.getField(e)?.value; - } - getDeepSubSelectionValue(e) { - let r = this; - for (let n of e) { - if (!(r instanceof t)) return; - let i = r.getSubSelectionValue(n); - if (!i) return; - r = i; - } - return r; - } - getDeepSelectionParent(e) { - let r = this.getSelectionParent(); - if (!r) return; - let n = r; - for (let i of e) { - let o = n.value.getFieldValue(i); - if (!o || !(o instanceof t)) return; - let s = o.getSelectionParent(); - if (!s) return; - n = s; - } - return n; - } - getSelectionParent() { - let e = this.getField("select")?.value.asObject(); - if (e) return { kind: "select", value: e }; - let r = this.getField("include")?.value.asObject(); - if (r) return { kind: "include", value: r }; - } - getSubSelectionValue(e) { - return this.getSelectionParent()?.value.fields[e].value; - } - getPrintWidth() { - let e = Object.values(this.fields); - return e.length == 0 ? 2 : Math.max(...e.map((n) => n.getPrintWidth())) + 2; - } - write(e) { - let r = Object.values(this.fields); - if (r.length === 0 && this.suggestions.length === 0) { - this.writeEmpty(e); - return; - } - this.writeWithContents(e, r); - } - asObject() { - return this; - } - writeEmpty(e) { - let r = new ge("{}"); - (this.hasError && r.setColor(e.context.colors.red).underline(), e.write(r)); - } - writeWithContents(e, r) { - (e.writeLine("{").withIndent(() => { - e.writeJoined(ze, [...r, ...this.suggestions]).newLine(); - }), - e.write("}"), - this.hasError && - e.afterNextNewline(() => { - e.writeLine(e.context.colors.red("~".repeat(this.getPrintWidth()))); - })); - } -}; -u(); -c(); -p(); -m(); -d(); -l(); -var z = class extends Se { - constructor(r) { - super(); - this.text = r; - } - getPrintWidth() { - return this.text.length; - } - write(r) { - let n = new ge(this.text); - (this.hasError && n.underline().setColor(r.context.colors.red), r.write(n)); - } - asObject() {} -}; -u(); -c(); -p(); -m(); -d(); -l(); -var Ct = class { - fields = []; - addField(e, r) { - return ( - this.fields.push({ - write(n) { - let { green: i, dim: o } = n.context.colors; - n.write(i(o(`${e}: ${r}`))).addMarginSymbol(i(o("+"))); - }, - }), - this - ); - } - write(e) { - let { - colors: { green: r }, - } = e.context; - e.writeLine(r("{")) - .withIndent(() => { - e.writeJoined(ze, this.fields).newLine(); - }) - .write(r("}")) - .addMarginSymbol(r("+")); - } -}; -function wr(t, e, r) { - switch (t.kind) { - case "MutuallyExclusiveFields": - tl(t, e); - break; - case "IncludeOnScalar": - rl(t, e); - break; - case "EmptySelection": - nl(t, e, r); - break; - case "UnknownSelectionField": - al(t, e); - break; - case "InvalidSelectionValue": - ll(t, e); - break; - case "UnknownArgument": - ul(t, e); - break; - case "UnknownInputField": - cl(t, e); - break; - case "RequiredArgumentMissing": - pl(t, e); - break; - case "InvalidArgumentType": - ml(t, e); - break; - case "InvalidArgumentValue": - dl(t, e); - break; - case "ValueTooLarge": - fl(t, e); - break; - case "SomeFieldsMissing": - gl(t, e); - break; - case "TooManyFieldsGiven": - yl(t, e); - break; - case "Union": - $i(t, e, r); - break; - default: - throw new Error("not implemented: " + t.kind); - } -} -function tl(t, e) { - let r = e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject(); - (r && - (r.getField(t.firstField)?.markAsError(), - r.getField(t.secondField)?.markAsError()), - e.addErrorMessage( - (n) => - `Please ${n.bold("either")} use ${n.green(`\`${t.firstField}\``)} or ${n.green(`\`${t.secondField}\``)}, but ${n.red("not both")} at the same time.`, - )); -} -function rl(t, e) { - let [r, n] = Ze(t.selectionPath), - i = t.outputType, - o = e.arguments.getDeepSelectionParent(r)?.value; - if (o && (o.getField(n)?.markAsError(), i)) - for (let s of i.fields) - s.isRelation && o.addSuggestion(new se(s.name, "true")); - e.addErrorMessage((s) => { - let a = `Invalid scalar field ${s.red(`\`${n}\``)} for ${s.bold("include")} statement`; - return ( - i ? (a += ` on model ${s.bold(i.name)}. ${St(s)}`) : (a += "."), - (a += ` -Note that ${s.bold("include")} statements only accept relation fields.`), - a - ); - }); -} -function nl(t, e, r) { - let n = e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject(); - if (n) { - let i = n.getField("omit")?.value.asObject(); - if (i) { - il(t, e, i); - return; - } - if (n.hasField("select")) { - ol(t, e); - return; - } - } - if (r?.[Ce(t.outputType.name)]) { - sl(t, e); - return; - } - e.addErrorMessage( - () => `Unknown field at "${t.selectionPath.join(".")} selection"`, - ); -} -function il(t, e, r) { - r.removeAllFields(); - for (let n of t.outputType.fields) r.addSuggestion(new se(n.name, "false")); - e.addErrorMessage( - (n) => - `The ${n.red("omit")} statement includes every field of the model ${n.bold(t.outputType.name)}. At least one field must be included in the result`, - ); -} -function ol(t, e) { - let r = t.outputType, - n = e.arguments.getDeepSelectionParent(t.selectionPath)?.value, - i = n?.isEmpty() ?? !1; - (n && (n.removeAllFields(), zi(n, r)), - e.addErrorMessage((o) => - i - ? `The ${o.red("`select`")} statement for type ${o.bold(r.name)} must not be empty. ${St(o)}` - : `The ${o.red("`select`")} statement for type ${o.bold(r.name)} needs ${o.bold("at least one truthy value")}.`, - )); -} -function sl(t, e) { - let r = new Ct(); - for (let i of t.outputType.fields) - i.isRelation || r.addField(i.name, "false"); - let n = new se("omit", r).makeRequired(); - if (t.selectionPath.length === 0) e.arguments.addSuggestion(n); - else { - let [i, o] = Ze(t.selectionPath), - a = e.arguments.getDeepSelectionParent(i)?.value.asObject()?.getField(o); - if (a) { - let f = a?.value.asObject() ?? new Xe(); - (f.addSuggestion(n), (a.value = f)); - } - } - e.addErrorMessage( - (i) => - `The global ${i.red("omit")} configuration excludes every field of the model ${i.bold(t.outputType.name)}. At least one field must be included in the result`, - ); -} -function al(t, e) { - let r = Yi(t.selectionPath, e); - if (r.parentKind !== "unknown") { - r.field.markAsError(); - let n = r.parent; - switch (r.parentKind) { - case "select": - zi(n, t.outputType); - break; - case "include": - hl(n, t.outputType); - break; - case "omit": - bl(n, t.outputType); - break; - } - } - e.addErrorMessage((n) => { - let i = [`Unknown field ${n.red(`\`${r.fieldName}\``)}`]; - return ( - r.parentKind !== "unknown" && - i.push(`for ${n.bold(r.parentKind)} statement`), - i.push(`on model ${n.bold(`\`${t.outputType.name}\``)}.`), - i.push(St(n)), - i.join(" ") - ); - }); -} -function ll(t, e) { - let r = Yi(t.selectionPath, e); - (r.parentKind !== "unknown" && r.field.value.markAsError(), - e.addErrorMessage( - (n) => - `Invalid value for selection field \`${n.red(r.fieldName)}\`: ${t.underlyingError}`, - )); -} -function ul(t, e) { - let r = t.argumentPath[0], - n = e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject(); - (n && (n.getField(r)?.markAsError(), El(n, t.arguments)), - e.addErrorMessage((i) => - Ki( - i, - r, - t.arguments.map((o) => o.name), - ), - )); -} -function cl(t, e) { - let [r, n] = Ze(t.argumentPath), - i = e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject(); - if (i) { - i.getDeepField(t.argumentPath)?.markAsError(); - let o = i.getDeepFieldValue(r)?.asObject(); - o && Xi(o, t.inputType); - } - e.addErrorMessage((o) => - Ki( - o, - n, - t.inputType.fields.map((s) => s.name), - ), - ); -} -function Ki(t, e, r) { - let n = [`Unknown argument \`${t.red(e)}\`.`], - i = xl(e, r); - return ( - i && n.push(`Did you mean \`${t.green(i)}\`?`), - r.length > 0 && n.push(St(t)), - n.join(" ") - ); -} -function pl(t, e) { - let r; - e.addErrorMessage((f) => - r?.value instanceof z && r.value.text === "null" - ? `Argument \`${f.green(o)}\` must not be ${f.red("null")}.` - : `Argument \`${f.green(o)}\` is missing.`, - ); - let n = e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject(); - if (!n) return; - let [i, o] = Ze(t.argumentPath), - s = new Ct(), - a = n.getDeepFieldValue(i)?.asObject(); - if (a) { - if ( - ((r = a.getField(o)), - r && a.removeField(o), - t.inputTypes.length === 1 && t.inputTypes[0].kind === "object") - ) { - for (let f of t.inputTypes[0].fields) - s.addField(f.name, f.typeNames.join(" | ")); - a.addSuggestion(new se(o, s).makeRequired()); - } else { - let f = t.inputTypes.map(Hi).join(" | "); - a.addSuggestion(new se(o, f).makeRequired()); - } - if (t.dependentArgumentPath) { - n.getDeepField(t.dependentArgumentPath)?.markAsError(); - let [, f] = Ze(t.dependentArgumentPath); - e.addErrorMessage( - (v) => - `Argument \`${v.green(o)}\` is required because argument \`${v.green(f)}\` was provided.`, - ); - } - } -} -function Hi(t) { - return t.kind === "list" ? `${Hi(t.elementType)}[]` : t.name; -} -function ml(t, e) { - let r = t.argument.name, - n = e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject(); - (n && n.getDeepFieldValue(t.argumentPath)?.markAsError(), - e.addErrorMessage((i) => { - let o = vr( - "or", - t.argument.typeNames.map((s) => i.green(s)), - ); - return `Argument \`${i.bold(r)}\`: Invalid value provided. Expected ${o}, provided ${i.red(t.inferredType)}.`; - })); -} -function dl(t, e) { - let r = t.argument.name, - n = e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject(); - (n && n.getDeepFieldValue(t.argumentPath)?.markAsError(), - e.addErrorMessage((i) => { - let o = [`Invalid value for argument \`${i.bold(r)}\``]; - if ( - (t.underlyingError && o.push(`: ${t.underlyingError}`), - o.push("."), - t.argument.typeNames.length > 0) - ) { - let s = vr( - "or", - t.argument.typeNames.map((a) => i.green(a)), - ); - o.push(` Expected ${s}.`); - } - return o.join(""); - })); -} -function fl(t, e) { - let r = t.argument.name, - n = e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject(), - i; - if (n) { - let s = n.getDeepField(t.argumentPath)?.value; - (s?.markAsError(), s instanceof z && (i = s.text)); - } - e.addErrorMessage((o) => { - let s = ["Unable to fit value"]; - return ( - i && s.push(o.red(i)), - s.push(`into a 64-bit signed integer for field \`${o.bold(r)}\``), - s.join(" ") - ); - }); -} -function gl(t, e) { - let r = t.argumentPath[t.argumentPath.length - 1], - n = e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject(); - if (n) { - let i = n.getDeepFieldValue(t.argumentPath)?.asObject(); - i && Xi(i, t.inputType); - } - e.addErrorMessage((i) => { - let o = [ - `Argument \`${i.bold(r)}\` of type ${i.bold(t.inputType.name)} needs`, - ]; - return ( - t.constraints.minFieldCount === 1 - ? t.constraints.requiredFields - ? o.push( - `${i.green("at least one of")} ${vr( - "or", - t.constraints.requiredFields.map((s) => `\`${i.bold(s)}\``), - )} arguments.`, - ) - : o.push(`${i.green("at least one")} argument.`) - : o.push( - `${i.green(`at least ${t.constraints.minFieldCount}`)} arguments.`, - ), - o.push(St(i)), - o.join(" ") - ); - }); -} -function yl(t, e) { - let r = t.argumentPath[t.argumentPath.length - 1], - n = e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject(), - i = []; - if (n) { - let o = n.getDeepFieldValue(t.argumentPath)?.asObject(); - o && (o.markAsError(), (i = Object.keys(o.getFields()))); - } - e.addErrorMessage((o) => { - let s = [ - `Argument \`${o.bold(r)}\` of type ${o.bold(t.inputType.name)} needs`, - ]; - return ( - t.constraints.minFieldCount === 1 && t.constraints.maxFieldCount == 1 - ? s.push(`${o.green("exactly one")} argument,`) - : t.constraints.maxFieldCount == 1 - ? s.push(`${o.green("at most one")} argument,`) - : s.push( - `${o.green(`at most ${t.constraints.maxFieldCount}`)} arguments,`, - ), - s.push( - `but you provided ${vr( - "and", - i.map((a) => o.red(a)), - )}. Please choose`, - ), - t.constraints.maxFieldCount === 1 - ? s.push("one.") - : s.push(`${t.constraints.maxFieldCount}.`), - s.join(" ") - ); - }); -} -function zi(t, e) { - for (let r of e.fields) - t.hasField(r.name) || t.addSuggestion(new se(r.name, "true")); -} -function hl(t, e) { - for (let r of e.fields) - r.isRelation && - !t.hasField(r.name) && - t.addSuggestion(new se(r.name, "true")); -} -function bl(t, e) { - for (let r of e.fields) - !t.hasField(r.name) && - !r.isRelation && - t.addSuggestion(new se(r.name, "true")); -} -function El(t, e) { - for (let r of e) - t.hasField(r.name) || - t.addSuggestion(new se(r.name, r.typeNames.join(" | "))); -} -function Yi(t, e) { - let [r, n] = Ze(t), - i = e.arguments.getDeepSubSelectionValue(r)?.asObject(); - if (!i) return { parentKind: "unknown", fieldName: n }; - let o = i.getFieldValue("select")?.asObject(), - s = i.getFieldValue("include")?.asObject(), - a = i.getFieldValue("omit")?.asObject(), - f = o?.getField(n); - return o && f - ? { parentKind: "select", parent: o, field: f, fieldName: n } - : ((f = s?.getField(n)), - s && f - ? { parentKind: "include", field: f, parent: s, fieldName: n } - : ((f = a?.getField(n)), - a && f - ? { parentKind: "omit", field: f, parent: a, fieldName: n } - : { parentKind: "unknown", fieldName: n })); -} -function Xi(t, e) { - if (e.kind === "object") - for (let r of e.fields) - t.hasField(r.name) || - t.addSuggestion(new se(r.name, r.typeNames.join(" | "))); -} -function Ze(t) { - let e = [...t], - r = e.pop(); - if (!r) throw new Error("unexpected empty path"); - return [e, r]; -} -function St({ green: t, enabled: e }) { - return ( - "Available options are " + - (e ? `listed in ${t("green")}` : "marked with ?") + - "." - ); -} -function vr(t, e) { - if (e.length === 1) return e[0]; - let r = [...e], - n = r.pop(); - return `${r.join(", ")} ${t} ${n}`; -} -var wl = 3; -function xl(t, e) { - let r = 1 / 0, - n; - for (let i of e) { - let o = (0, Wi.default)(t, i); - o > wl || (o < r && ((r = o), (n = i))); - } - return n; -} -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -var It = class { - modelName; - name; - typeName; - isList; - isEnum; - constructor(e, r, n, i, o) { - ((this.modelName = e), - (this.name = r), - (this.typeName = n), - (this.isList = i), - (this.isEnum = o)); - } - _toGraphQLInputType() { - let e = this.isList ? "List" : "", - r = this.isEnum ? "Enum" : ""; - return `${e}${r}${this.typeName}FieldRefInput<${this.modelName}>`; - } -}; -function et(t) { - return t instanceof It; -} -u(); -c(); -p(); -m(); -d(); -l(); -var Rr = Symbol(), - En = new WeakMap(), - ve = class { - constructor(e) { - e === Rr - ? En.set(this, `Prisma.${this._getName()}`) - : En.set( - this, - `new Prisma.${this._getNamespace()}.${this._getName()}()`, - ); - } - _getName() { - return this.constructor.name; - } - toString() { - return En.get(this); - } - }, - Dt = class extends ve { - _getNamespace() { - return "NullTypes"; - } - }, - Ot = class extends Dt { - #e; - }; -wn(Ot, "DbNull"); -var kt = class extends Dt { - #e; -}; -wn(kt, "JsonNull"); -var _t = class extends Dt { - #e; -}; -wn(_t, "AnyNull"); -var Ar = { - classes: { DbNull: Ot, JsonNull: kt, AnyNull: _t }, - instances: { DbNull: new Ot(Rr), JsonNull: new kt(Rr), AnyNull: new _t(Rr) }, -}; -function wn(t, e) { - Object.defineProperty(t, "name", { value: e, configurable: !0 }); -} -u(); -c(); -p(); -m(); -d(); -l(); -var Zi = ": ", - Cr = class { - constructor(e, r) { - this.name = e; - this.value = r; - } - hasError = !1; - markAsError() { - this.hasError = !0; - } - getPrintWidth() { - return this.name.length + this.value.getPrintWidth() + Zi.length; - } - write(e) { - let r = new ge(this.name); - (this.hasError && r.underline().setColor(e.context.colors.red), - e.write(r).write(Zi).write(this.value)); - } - }; -var xn = class { - arguments; - errorMessages = []; - constructor(e) { - this.arguments = e; - } - write(e) { - e.write(this.arguments); - } - addErrorMessage(e) { - this.errorMessages.push(e); - } - renderAllMessages(e) { - return this.errorMessages.map((r) => r(e)).join(` -`); - } -}; -function tt(t) { - return new xn(eo(t)); -} -function eo(t) { - let e = new Xe(); - for (let [r, n] of Object.entries(t)) { - let i = new Cr(r, to(n)); - e.addField(i); - } - return e; -} -function to(t) { - if (typeof t == "string") return new z(JSON.stringify(t)); - if (typeof t == "number" || typeof t == "boolean") return new z(String(t)); - if (typeof t == "bigint") return new z(`${t}n`); - if (t === null) return new z("null"); - if (t === void 0) return new z("undefined"); - if (Ke(t)) return new z(`new Prisma.Decimal("${t.toFixed()}")`); - if (t instanceof Uint8Array) - return h.isBuffer(t) - ? new z(`Buffer.alloc(${t.byteLength})`) - : new z(`new Uint8Array(${t.byteLength})`); - if (t instanceof Date) { - let e = br(t) ? t.toISOString() : "Invalid Date"; - return new z(`new Date("${e}")`); - } - return t instanceof ve - ? new z(`Prisma.${t._getName()}`) - : et(t) - ? new z(`prisma.${Ce(t.modelName)}.$fields.${t.name}`) - : Array.isArray(t) - ? Pl(t) - : typeof t == "object" - ? eo(t) - : new z(Object.prototype.toString.call(t)); -} -function Pl(t) { - let e = new Ye(); - for (let r of t) e.addItem(to(r)); - return e; -} -function Sr(t, e) { - let r = e === "pretty" ? Ji : Tr, - n = t.renderAllMessages(r), - i = new He(0, { colors: r }).write(t).toString(); - return { message: n, args: i }; -} -function Ir({ - args: t, - errors: e, - errorFormat: r, - callsite: n, - originalMethod: i, - clientVersion: o, - globalOmit: s, -}) { - let a = tt(t); - for (let A of e) wr(A, a, s); - let { message: f, args: v } = Sr(a, r), - R = Er({ - message: f, - callsite: n, - originalMethod: i, - showColors: r === "pretty", - callArguments: v, - }); - throw new Y(R, { clientVersion: o }); -} -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -function ye(t) { - return t.replace(/^./, (e) => e.toLowerCase()); -} -u(); -c(); -p(); -m(); -d(); -l(); -function no(t, e, r) { - let n = ye(r); - return !e.result || !(e.result.$allModels || e.result[n]) - ? t - : Tl({ - ...t, - ...ro(e.name, t, e.result.$allModels), - ...ro(e.name, t, e.result[n]), - }); -} -function Tl(t) { - let e = new fe(), - r = (n, i) => - e.getOrCreate(n, () => - i.has(n) - ? [n] - : (i.add(n), t[n] ? t[n].needs.flatMap((o) => r(o, i)) : [n]), - ); - return hr(t, (n) => ({ ...n, needs: r(n.name, new Set()) })); -} -function ro(t, e, r) { - return r - ? hr(r, ({ needs: n, compute: i }, o) => ({ - name: o, - needs: n ? Object.keys(n).filter((s) => n[s]) : [], - compute: vl(e, o, i), - })) - : {}; -} -function vl(t, e, r) { - let n = t?.[e]?.compute; - return n ? (i) => r({ ...i, [e]: n(i) }) : r; -} -function io(t, e) { - if (!e) return t; - let r = { ...t }; - for (let n of Object.values(e)) - if (t[n.name]) for (let i of n.needs) r[i] = !0; - return r; -} -function oo(t, e) { - if (!e) return t; - let r = { ...t }; - for (let n of Object.values(e)) - if (!t[n.name]) for (let i of n.needs) delete r[i]; - return r; -} -var Dr = class { - constructor(e, r) { - this.extension = e; - this.previous = r; - } - computedFieldsCache = new fe(); - modelExtensionsCache = new fe(); - queryCallbacksCache = new fe(); - clientExtensions = vt(() => - this.extension.client - ? { - ...this.previous?.getAllClientExtensions(), - ...this.extension.client, - } - : this.previous?.getAllClientExtensions(), - ); - batchCallbacks = vt(() => { - let e = this.previous?.getAllBatchQueryCallbacks() ?? [], - r = this.extension.query?.$__internalBatch; - return r ? e.concat(r) : e; - }); - getAllComputedFields(e) { - return this.computedFieldsCache.getOrCreate(e, () => - no(this.previous?.getAllComputedFields(e), this.extension, e), - ); - } - getAllClientExtensions() { - return this.clientExtensions.get(); - } - getAllModelExtensions(e) { - return this.modelExtensionsCache.getOrCreate(e, () => { - let r = ye(e); - return !this.extension.model || - !(this.extension.model[r] || this.extension.model.$allModels) - ? this.previous?.getAllModelExtensions(e) - : { - ...this.previous?.getAllModelExtensions(e), - ...this.extension.model.$allModels, - ...this.extension.model[r], - }; - }); - } - getAllQueryCallbacks(e, r) { - return this.queryCallbacksCache.getOrCreate(`${e}:${r}`, () => { - let n = this.previous?.getAllQueryCallbacks(e, r) ?? [], - i = [], - o = this.extension.query; - return !o || !(o[e] || o.$allModels || o[r] || o.$allOperations) - ? n - : (o[e] !== void 0 && - (o[e][r] !== void 0 && i.push(o[e][r]), - o[e].$allOperations !== void 0 && i.push(o[e].$allOperations)), - e !== "$none" && - o.$allModels !== void 0 && - (o.$allModels[r] !== void 0 && i.push(o.$allModels[r]), - o.$allModels.$allOperations !== void 0 && - i.push(o.$allModels.$allOperations)), - o[r] !== void 0 && i.push(o[r]), - o.$allOperations !== void 0 && i.push(o.$allOperations), - n.concat(i)); - }); - } - getAllBatchQueryCallbacks() { - return this.batchCallbacks.get(); - } - }, - rt = class t { - constructor(e) { - this.head = e; - } - static empty() { - return new t(); - } - static single(e) { - return new t(new Dr(e)); - } - isEmpty() { - return this.head === void 0; - } - append(e) { - return new t(new Dr(e, this.head)); - } - getAllComputedFields(e) { - return this.head?.getAllComputedFields(e); - } - getAllClientExtensions() { - return this.head?.getAllClientExtensions(); - } - getAllModelExtensions(e) { - return this.head?.getAllModelExtensions(e); - } - getAllQueryCallbacks(e, r) { - return this.head?.getAllQueryCallbacks(e, r) ?? []; - } - getAllBatchQueryCallbacks() { - return this.head?.getAllBatchQueryCallbacks() ?? []; - } - }; -u(); -c(); -p(); -m(); -d(); -l(); -var Or = class { - constructor(e) { - this.name = e; - } -}; -function so(t) { - return t instanceof Or; -} -function ao(t) { - return new Or(t); -} -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -var lo = Symbol(), - Mt = class { - constructor(e) { - if (e !== lo) - throw new Error("Skip instance can not be constructed directly"); - } - ifUndefined(e) { - return e === void 0 ? kr : e; - } - }, - kr = new Mt(lo); -function he(t) { - return t instanceof Mt; -} -var Rl = { - findUnique: "findUnique", - findUniqueOrThrow: "findUniqueOrThrow", - findFirst: "findFirst", - findFirstOrThrow: "findFirstOrThrow", - findMany: "findMany", - count: "aggregate", - create: "createOne", - createMany: "createMany", - createManyAndReturn: "createManyAndReturn", - update: "updateOne", - updateMany: "updateMany", - updateManyAndReturn: "updateManyAndReturn", - upsert: "upsertOne", - delete: "deleteOne", - deleteMany: "deleteMany", - executeRaw: "executeRaw", - queryRaw: "queryRaw", - aggregate: "aggregate", - groupBy: "groupBy", - runCommandRaw: "runCommandRaw", - findRaw: "findRaw", - aggregateRaw: "aggregateRaw", - }, - uo = "explicitly `undefined` values are not allowed"; -function _r({ - modelName: t, - action: e, - args: r, - runtimeDataModel: n, - extensions: i = rt.empty(), - callsite: o, - clientMethod: s, - errorFormat: a, - clientVersion: f, - previewFeatures: v, - globalOmit: R, -}) { - let A = new Pn({ - runtimeDataModel: n, - modelName: t, - action: e, - rootArgs: r, - callsite: o, - extensions: i, - selectionPath: [], - argumentPath: [], - originalMethod: s, - errorFormat: a, - clientVersion: f, - previewFeatures: v, - globalOmit: R, - }); - return { modelName: t, action: Rl[e], query: Lt(r, A) }; -} -function Lt({ select: t, include: e, ...r } = {}, n) { - let i = r.omit; - return (delete r.omit, { arguments: po(r, n), selection: Al(t, e, i, n) }); -} -function Al(t, e, r, n) { - return t - ? (e - ? n.throwValidationError({ - kind: "MutuallyExclusiveFields", - firstField: "include", - secondField: "select", - selectionPath: n.getSelectionPath(), - }) - : r && - n.throwValidationError({ - kind: "MutuallyExclusiveFields", - firstField: "omit", - secondField: "select", - selectionPath: n.getSelectionPath(), - }), - Dl(t, n)) - : Cl(n, e, r); -} -function Cl(t, e, r) { - let n = {}; - return ( - t.modelOrType && - !t.isRawAction() && - ((n.$composites = !0), (n.$scalars = !0)), - e && Sl(n, e, t), - Il(n, r, t), - n - ); -} -function Sl(t, e, r) { - for (let [n, i] of Object.entries(e)) { - if (he(i)) continue; - let o = r.nestSelection(n); - if ((Tn(i, o), i === !1 || i === void 0)) { - t[n] = !1; - continue; - } - let s = r.findField(n); - if ( - (s && - s.kind !== "object" && - r.throwValidationError({ - kind: "IncludeOnScalar", - selectionPath: r.getSelectionPath().concat(n), - outputType: r.getOutputTypeDescription(), - }), - s) - ) { - t[n] = Lt(i === !0 ? {} : i, o); - continue; - } - if (i === !0) { - t[n] = !0; - continue; - } - t[n] = Lt(i, o); - } -} -function Il(t, e, r) { - let n = r.getComputedFields(), - i = { ...r.getGlobalOmit(), ...e }, - o = oo(i, n); - for (let [s, a] of Object.entries(o)) { - if (he(a)) continue; - Tn(a, r.nestSelection(s)); - let f = r.findField(s); - (n?.[s] && !f) || (t[s] = !a); - } -} -function Dl(t, e) { - let r = {}, - n = e.getComputedFields(), - i = io(t, n); - for (let [o, s] of Object.entries(i)) { - if (he(s)) continue; - let a = e.nestSelection(o); - Tn(s, a); - let f = e.findField(o); - if (!(n?.[o] && !f)) { - if (s === !1 || s === void 0 || he(s)) { - r[o] = !1; - continue; - } - if (s === !0) { - f?.kind === "object" ? (r[o] = Lt({}, a)) : (r[o] = !0); - continue; - } - r[o] = Lt(s, a); - } - } - return r; -} -function co(t, e) { - if (t === null) return null; - if (typeof t == "string" || typeof t == "number" || typeof t == "boolean") - return t; - if (typeof t == "bigint") return { $type: "BigInt", value: String(t) }; - if (We(t)) { - if (br(t)) return { $type: "DateTime", value: t.toISOString() }; - e.throwValidationError({ - kind: "InvalidArgumentValue", - selectionPath: e.getSelectionPath(), - argumentPath: e.getArgumentPath(), - argument: { name: e.getArgumentName(), typeNames: ["Date"] }, - underlyingError: "Provided Date object is invalid", - }); - } - if (so(t)) return { $type: "Param", value: t.name }; - if (et(t)) - return { - $type: "FieldRef", - value: { _ref: t.name, _container: t.modelName }, - }; - if (Array.isArray(t)) return Ol(t, e); - if (ArrayBuffer.isView(t)) { - let { buffer: r, byteOffset: n, byteLength: i } = t; - return { $type: "Bytes", value: h.from(r, n, i).toString("base64") }; - } - if (kl(t)) return t.values; - if (Ke(t)) return { $type: "Decimal", value: t.toFixed() }; - if (t instanceof ve) { - if (t !== Ar.instances[t._getName()]) - throw new Error("Invalid ObjectEnumValue"); - return { $type: "Enum", value: t._getName() }; - } - if (_l(t)) return t.toJSON(); - if (typeof t == "object") return po(t, e); - e.throwValidationError({ - kind: "InvalidArgumentValue", - selectionPath: e.getSelectionPath(), - argumentPath: e.getArgumentPath(), - argument: { name: e.getArgumentName(), typeNames: [] }, - underlyingError: `We could not serialize ${Object.prototype.toString.call(t)} value. Serialize the object to JSON or implement a ".toJSON()" method on it`, - }); -} -function po(t, e) { - if (t.$type) return { $type: "Raw", value: t }; - let r = {}; - for (let n in t) { - let i = t[n], - o = e.nestArgument(n); - he(i) || - (i !== void 0 - ? (r[n] = co(i, o)) - : e.isPreviewFeatureOn("strictUndefinedChecks") && - e.throwValidationError({ - kind: "InvalidArgumentValue", - argumentPath: o.getArgumentPath(), - selectionPath: e.getSelectionPath(), - argument: { name: e.getArgumentName(), typeNames: [] }, - underlyingError: uo, - })); - } - return r; -} -function Ol(t, e) { - let r = []; - for (let n = 0; n < t.length; n++) { - let i = e.nestArgument(String(n)), - o = t[n]; - if (o === void 0 || he(o)) { - let s = o === void 0 ? "undefined" : "Prisma.skip"; - e.throwValidationError({ - kind: "InvalidArgumentValue", - selectionPath: i.getSelectionPath(), - argumentPath: i.getArgumentPath(), - argument: { name: `${e.getArgumentName()}[${n}]`, typeNames: [] }, - underlyingError: `Can not use \`${s}\` value within array. Use \`null\` or filter out \`${s}\` values`, - }); - } - r.push(co(o, i)); - } - return r; -} -function kl(t) { - return typeof t == "object" && t !== null && t.__prismaRawParameters__ === !0; -} -function _l(t) { - return typeof t == "object" && t !== null && typeof t.toJSON == "function"; -} -function Tn(t, e) { - t === void 0 && - e.isPreviewFeatureOn("strictUndefinedChecks") && - e.throwValidationError({ - kind: "InvalidSelectionValue", - selectionPath: e.getSelectionPath(), - underlyingError: uo, - }); -} -var Pn = class t { - constructor(e) { - this.params = e; - this.params.modelName && - (this.modelOrType = - this.params.runtimeDataModel.models[this.params.modelName] ?? - this.params.runtimeDataModel.types[this.params.modelName]); - } - modelOrType; - throwValidationError(e) { - Ir({ - errors: [e], - originalMethod: this.params.originalMethod, - args: this.params.rootArgs ?? {}, - callsite: this.params.callsite, - errorFormat: this.params.errorFormat, - clientVersion: this.params.clientVersion, - globalOmit: this.params.globalOmit, - }); - } - getSelectionPath() { - return this.params.selectionPath; - } - getArgumentPath() { - return this.params.argumentPath; - } - getArgumentName() { - return this.params.argumentPath[this.params.argumentPath.length - 1]; - } - getOutputTypeDescription() { - if (!(!this.params.modelName || !this.modelOrType)) - return { - name: this.params.modelName, - fields: this.modelOrType.fields.map((e) => ({ - name: e.name, - typeName: "boolean", - isRelation: e.kind === "object", - })), - }; - } - isRawAction() { - return [ - "executeRaw", - "queryRaw", - "runCommandRaw", - "findRaw", - "aggregateRaw", - ].includes(this.params.action); - } - isPreviewFeatureOn(e) { - return this.params.previewFeatures.includes(e); - } - getComputedFields() { - if (this.params.modelName) - return this.params.extensions.getAllComputedFields(this.params.modelName); - } - findField(e) { - return this.modelOrType?.fields.find((r) => r.name === e); - } - nestSelection(e) { - let r = this.findField(e), - n = r?.kind === "object" ? r.type : void 0; - return new t({ - ...this.params, - modelName: n, - selectionPath: this.params.selectionPath.concat(e), - }); - } - getGlobalOmit() { - return this.params.modelName && this.shouldApplyGlobalOmit() - ? (this.params.globalOmit?.[Ce(this.params.modelName)] ?? {}) - : {}; - } - shouldApplyGlobalOmit() { - switch (this.params.action) { - case "findFirst": - case "findFirstOrThrow": - case "findUniqueOrThrow": - case "findMany": - case "upsert": - case "findUnique": - case "createManyAndReturn": - case "create": - case "update": - case "updateManyAndReturn": - case "delete": - return !0; - case "executeRaw": - case "aggregateRaw": - case "runCommandRaw": - case "findRaw": - case "createMany": - case "deleteMany": - case "groupBy": - case "updateMany": - case "count": - case "aggregate": - case "queryRaw": - return !1; - default: - Fe(this.params.action, "Unknown action"); - } - } - nestArgument(e) { - return new t({ - ...this.params, - argumentPath: this.params.argumentPath.concat(e), - }); - } -}; -u(); -c(); -p(); -m(); -d(); -l(); -function mo(t) { - if (!t._hasPreviewFlag("metrics")) - throw new Y( - "`metrics` preview feature must be enabled in order to access metrics API", - { clientVersion: t._clientVersion }, - ); -} -var nt = class { - _client; - constructor(e) { - this._client = e; - } - prometheus(e) { - return ( - mo(this._client), - this._client._engine.metrics({ format: "prometheus", ...e }) - ); - } - json(e) { - return ( - mo(this._client), - this._client._engine.metrics({ format: "json", ...e }) - ); - } -}; -u(); -c(); -p(); -m(); -d(); -l(); -function fo(t, e) { - let r = vt(() => Ml(e)); - Object.defineProperty(t, "dmmf", { get: () => r.get() }); -} -function Ml(t) { - throw new Error( - "Prisma.dmmf is not available when running in edge runtimes.", - ); -} -function vn(t) { - return Object.entries(t).map(([e, r]) => ({ name: e, ...r })); -} -u(); -c(); -p(); -m(); -d(); -l(); -var Rn = new WeakMap(), - Mr = "$$PrismaTypedSql", - Ft = class { - constructor(e, r) { - (Rn.set(this, { sql: e, values: r }), - Object.defineProperty(this, Mr, { value: Mr })); - } - get sql() { - return Rn.get(this).sql; - } - get values() { - return Rn.get(this).values; - } - }; -function go(t) { - return (...e) => new Ft(t, e); -} -function Lr(t) { - return t != null && t[Mr] === Mr; -} -u(); -c(); -p(); -m(); -d(); -l(); -var Ls = bt(un()); -u(); -c(); -p(); -m(); -d(); -l(); -yo(); -Ti(); -Si(); -u(); -c(); -p(); -m(); -d(); -l(); -var ne = class t { - constructor(e, r) { - if (e.length - 1 !== r.length) - throw e.length === 0 - ? new TypeError("Expected at least 1 string") - : new TypeError( - `Expected ${e.length} strings to have ${e.length - 1} values`, - ); - let n = r.reduce((s, a) => s + (a instanceof t ? a.values.length : 1), 0); - ((this.values = new Array(n)), - (this.strings = new Array(n + 1)), - (this.strings[0] = e[0])); - let i = 0, - o = 0; - for (; i < r.length; ) { - let s = r[i++], - a = e[i]; - if (s instanceof t) { - this.strings[o] += s.strings[0]; - let f = 0; - for (; f < s.values.length; ) - ((this.values[o++] = s.values[f++]), - (this.strings[o] = s.strings[f])); - this.strings[o] += a; - } else ((this.values[o++] = s), (this.strings[o] = a)); - } - } - get sql() { - let e = this.strings.length, - r = 1, - n = this.strings[0]; - for (; r < e; ) n += `?${this.strings[r++]}`; - return n; - } - get statement() { - let e = this.strings.length, - r = 1, - n = this.strings[0]; - for (; r < e; ) n += `:${r}${this.strings[r++]}`; - return n; - } - get text() { - let e = this.strings.length, - r = 1, - n = this.strings[0]; - for (; r < e; ) n += `$${r}${this.strings[r++]}`; - return n; - } - inspect() { - return { - sql: this.sql, - statement: this.statement, - text: this.text, - values: this.values, - }; - } -}; -function ho(t, e = ",", r = "", n = "") { - if (t.length === 0) - throw new TypeError( - "Expected `join([])` to be called with an array of multiple elements, but got an empty array", - ); - return new ne([r, ...Array(t.length - 1).fill(e), n], t); -} -function An(t) { - return new ne([t], []); -} -var bo = An(""); -function Cn(t, ...e) { - return new ne(t, e); -} -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -function Nt(t) { - return { - getKeys() { - return Object.keys(t); - }, - getPropertyValue(e) { - return t[e]; - }, - }; -} -u(); -c(); -p(); -m(); -d(); -l(); -function Z(t, e) { - return { - getKeys() { - return [t]; - }, - getPropertyValue() { - return e(); - }, - }; -} -u(); -c(); -p(); -m(); -d(); -l(); -function Ne(t) { - let e = new fe(); - return { - getKeys() { - return t.getKeys(); - }, - getPropertyValue(r) { - return e.getOrCreate(r, () => t.getPropertyValue(r)); - }, - getPropertyDescriptor(r) { - return t.getPropertyDescriptor?.(r); - }, - }; -} -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -var Nr = { enumerable: !0, configurable: !0, writable: !0 }; -function Ur(t) { - let e = new Set(t); - return { - getPrototypeOf: () => Object.prototype, - getOwnPropertyDescriptor: () => Nr, - has: (r, n) => e.has(n), - set: (r, n, i) => e.add(n) && Reflect.set(r, n, i), - ownKeys: () => [...e], - }; -} -var Eo = Symbol.for("nodejs.util.inspect.custom"); -function ce(t, e) { - let r = Ll(e), - n = new Set(), - i = new Proxy(t, { - get(o, s) { - if (n.has(s)) return o[s]; - let a = r.get(s); - return a ? a.getPropertyValue(s) : o[s]; - }, - has(o, s) { - if (n.has(s)) return !0; - let a = r.get(s); - return a ? (a.has?.(s) ?? !0) : Reflect.has(o, s); - }, - ownKeys(o) { - let s = wo(Reflect.ownKeys(o), r), - a = wo(Array.from(r.keys()), r); - return [...new Set([...s, ...a, ...n])]; - }, - set(o, s, a) { - return r.get(s)?.getPropertyDescriptor?.(s)?.writable === !1 - ? !1 - : (n.add(s), Reflect.set(o, s, a)); - }, - getOwnPropertyDescriptor(o, s) { - let a = Reflect.getOwnPropertyDescriptor(o, s); - if (a && !a.configurable) return a; - let f = r.get(s); - return f - ? f.getPropertyDescriptor - ? { ...Nr, ...f?.getPropertyDescriptor(s) } - : Nr - : a; - }, - defineProperty(o, s, a) { - return (n.add(s), Reflect.defineProperty(o, s, a)); - }, - getPrototypeOf: () => Object.prototype, - }); - return ( - (i[Eo] = function () { - let o = { ...this }; - return (delete o[Eo], o); - }), - i - ); -} -function Ll(t) { - let e = new Map(); - for (let r of t) { - let n = r.getKeys(); - for (let i of n) e.set(i, r); - } - return e; -} -function wo(t, e) { - return t.filter((r) => e.get(r)?.has?.(r) ?? !0); -} -u(); -c(); -p(); -m(); -d(); -l(); -function it(t) { - return { - getKeys() { - return t; - }, - has() { - return !1; - }, - getPropertyValue() {}, - }; -} -u(); -c(); -p(); -m(); -d(); -l(); -function ot(t, e) { - return { - batch: t, - transaction: - e?.kind === "batch" - ? { isolationLevel: e.options.isolationLevel } - : void 0, - }; -} -u(); -c(); -p(); -m(); -d(); -l(); -function xo(t) { - if (t === void 0) return ""; - let e = tt(t); - return new He(0, { colors: Tr }).write(e).toString(); -} -u(); -c(); -p(); -m(); -d(); -l(); -var Fl = "P2037"; -function st({ error: t, user_facing_error: e }, r, n) { - return e.error_code - ? new X(Nl(e, n), { - code: e.error_code, - clientVersion: r, - meta: e.meta, - batchRequestIdx: e.batch_request_idx, - }) - : new Q(t, { clientVersion: r, batchRequestIdx: e.batch_request_idx }); -} -function Nl(t, e) { - let r = t.message; - return ( - (e === "postgresql" || e === "postgres" || e === "mysql") && - t.error_code === Fl && - (r += ` -Prisma Accelerate has built-in connection pooling to prevent such errors: https://pris.ly/client/error-accelerate`), - r - ); -} -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -var Sn = class { - getLocation() { - return null; - } -}; -function Ie(t) { - return typeof $EnabledCallSite == "function" && t !== "minimal" - ? new $EnabledCallSite() - : new Sn(); -} -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -var Po = { _avg: !0, _count: !0, _sum: !0, _min: !0, _max: !0 }; -function at(t = {}) { - let e = ql(t); - return Object.entries(e).reduce( - (n, [i, o]) => ( - Po[i] !== void 0 ? (n.select[i] = { select: o }) : (n[i] = o), - n - ), - { select: {} }, - ); -} -function ql(t = {}) { - return typeof t._count == "boolean" - ? { ...t, _count: { _all: t._count } } - : t; -} -function qr(t = {}) { - return (e) => (typeof t._count == "boolean" && (e._count = e._count._all), e); -} -function To(t, e) { - let r = qr(t); - return e({ action: "aggregate", unpacker: r, argsMapper: at })(t); -} -u(); -c(); -p(); -m(); -d(); -l(); -function Vl(t = {}) { - let { select: e, ...r } = t; - return typeof e == "object" - ? at({ ...r, _count: e }) - : at({ ...r, _count: { _all: !0 } }); -} -function Bl(t = {}) { - return typeof t.select == "object" - ? (e) => qr(t)(e)._count - : (e) => qr(t)(e)._count._all; -} -function vo(t, e) { - return e({ action: "count", unpacker: Bl(t), argsMapper: Vl })(t); -} -u(); -c(); -p(); -m(); -d(); -l(); -function $l(t = {}) { - let e = at(t); - if (Array.isArray(e.by)) - for (let r of e.by) typeof r == "string" && (e.select[r] = !0); - else typeof e.by == "string" && (e.select[e.by] = !0); - return e; -} -function jl(t = {}) { - return (e) => ( - typeof t?._count == "boolean" && - e.forEach((r) => { - r._count = r._count._all; - }), - e - ); -} -function Ro(t, e) { - return e({ action: "groupBy", unpacker: jl(t), argsMapper: $l })(t); -} -function Ao(t, e, r) { - if (e === "aggregate") return (n) => To(n, r); - if (e === "count") return (n) => vo(n, r); - if (e === "groupBy") return (n) => Ro(n, r); -} -u(); -c(); -p(); -m(); -d(); -l(); -function Co(t, e) { - let r = e.fields.filter((i) => !i.relationName), - n = Ni(r, "name"); - return new Proxy( - {}, - { - get(i, o) { - if (o in i || typeof o == "symbol") return i[o]; - let s = n[o]; - if (s) return new It(t, o, s.type, s.isList, s.kind === "enum"); - }, - ...Ur(Object.keys(n)), - }, - ); -} -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -var So = (t) => (Array.isArray(t) ? t : t.split(".")), - In = (t, e) => So(e).reduce((r, n) => r && r[n], t), - Io = (t, e, r) => - So(e).reduceRight( - (n, i, o, s) => Object.assign({}, In(t, s.slice(0, o)), { [i]: n }), - r, - ); -function Ql(t, e) { - return t === void 0 || e === void 0 ? [] : [...e, "select", t]; -} -function Gl(t, e, r) { - return e === void 0 ? (t ?? {}) : Io(e, r, t || !0); -} -function Dn(t, e, r, n, i, o) { - let a = t._runtimeDataModel.models[e].fields.reduce( - (f, v) => ({ ...f, [v.name]: v }), - {}, - ); - return (f) => { - let v = Ie(t._errorFormat), - R = Ql(n, i), - A = Gl(f, o, R), - I = r({ dataPath: R, callsite: v })(A), - C = Jl(t, e); - return new Proxy(I, { - get(L, D) { - if (!C.includes(D)) return L[D]; - let Ee = [a[D].type, r, D], - ee = [R, A]; - return Dn(t, ...Ee, ...ee); - }, - ...Ur([...C, ...Object.getOwnPropertyNames(I)]), - }); - }; -} -function Jl(t, e) { - return t._runtimeDataModel.models[e].fields - .filter((r) => r.kind === "object") - .map((r) => r.name); -} -var Wl = [ - "findUnique", - "findUniqueOrThrow", - "findFirst", - "findFirstOrThrow", - "create", - "update", - "upsert", - "delete", - ], - Kl = ["aggregate", "count", "groupBy"]; -function On(t, e) { - let r = t._extensions.getAllModelExtensions(e) ?? {}, - n = [ - Hl(t, e), - Yl(t, e), - Nt(r), - Z("name", () => e), - Z("$name", () => e), - Z("$parent", () => t._appliedParent), - ]; - return ce({}, n); -} -function Hl(t, e) { - let r = ye(e), - n = Object.keys(Rt).concat("count"); - return { - getKeys() { - return n; - }, - getPropertyValue(i) { - let o = i, - s = (a) => (f) => { - let v = Ie(t._errorFormat); - return t._createPrismaPromise( - (R) => { - let A = { - args: f, - dataPath: [], - action: o, - model: e, - clientMethod: `${r}.${i}`, - jsModelName: r, - transaction: R, - callsite: v, - }; - return t._request({ ...A, ...a }); - }, - { action: o, args: f, model: e }, - ); - }; - return Wl.includes(o) ? Dn(t, e, s) : zl(i) ? Ao(t, i, s) : s({}); - }, - }; -} -function zl(t) { - return Kl.includes(t); -} -function Yl(t, e) { - return Ne( - Z("fields", () => { - let r = t._runtimeDataModel.models[e]; - return Co(e, r); - }), - ); -} -u(); -c(); -p(); -m(); -d(); -l(); -function Do(t) { - return t.replace(/^./, (e) => e.toUpperCase()); -} -var kn = Symbol(); -function Ut(t) { - let e = [Xl(t), Zl(t), Z(kn, () => t), Z("$parent", () => t._appliedParent)], - r = t._extensions.getAllClientExtensions(); - return (r && e.push(Nt(r)), ce(t, e)); -} -function Xl(t) { - let e = Object.getPrototypeOf(t._originalClient), - r = [...new Set(Object.getOwnPropertyNames(e))]; - return { - getKeys() { - return r; - }, - getPropertyValue(n) { - return t[n]; - }, - }; -} -function Zl(t) { - let e = Object.keys(t._runtimeDataModel.models), - r = e.map(ye), - n = [...new Set(e.concat(r))]; - return Ne({ - getKeys() { - return n; - }, - getPropertyValue(i) { - let o = Do(i); - if (t._runtimeDataModel.models[o] !== void 0) return On(t, o); - if (t._runtimeDataModel.models[i] !== void 0) return On(t, i); - }, - getPropertyDescriptor(i) { - if (!r.includes(i)) return { enumerable: !1 }; - }, - }); -} -function Oo(t) { - return t[kn] ? t[kn] : t; -} -function ko(t) { - if (typeof t == "function") return t(this); - if (t.client?.__AccelerateEngine) { - let r = t.client.__AccelerateEngine; - this._originalClient._engine = new r( - this._originalClient._accelerateEngineConfig, - ); - } - let e = Object.create(this._originalClient, { - _extensions: { value: this._extensions.append(t) }, - _appliedParent: { value: this, configurable: !0 }, - $on: { value: void 0 }, - }); - return Ut(e); -} -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -function _o({ result: t, modelName: e, select: r, omit: n, extensions: i }) { - let o = i.getAllComputedFields(e); - if (!o) return t; - let s = [], - a = []; - for (let f of Object.values(o)) { - if (n) { - if (n[f.name]) continue; - let v = f.needs.filter((R) => n[R]); - v.length > 0 && a.push(it(v)); - } else if (r) { - if (!r[f.name]) continue; - let v = f.needs.filter((R) => !r[R]); - v.length > 0 && a.push(it(v)); - } - eu(t, f.needs) && s.push(tu(f, ce(t, s))); - } - return s.length > 0 || a.length > 0 ? ce(t, [...s, ...a]) : t; -} -function eu(t, e) { - return e.every((r) => fn(t, r)); -} -function tu(t, e) { - return Ne(Z(t.name, () => t.compute(e))); -} -u(); -c(); -p(); -m(); -d(); -l(); -function Vr({ - visitor: t, - result: e, - args: r, - runtimeDataModel: n, - modelName: i, -}) { - if (Array.isArray(e)) { - for (let s = 0; s < e.length; s++) - e[s] = Vr({ - result: e[s], - args: r, - modelName: i, - runtimeDataModel: n, - visitor: t, - }); - return e; - } - let o = t(e, i, r) ?? e; - return ( - r.include && - Mo({ - includeOrSelect: r.include, - result: o, - parentModelName: i, - runtimeDataModel: n, - visitor: t, - }), - r.select && - Mo({ - includeOrSelect: r.select, - result: o, - parentModelName: i, - runtimeDataModel: n, - visitor: t, - }), - o - ); -} -function Mo({ - includeOrSelect: t, - result: e, - parentModelName: r, - runtimeDataModel: n, - visitor: i, -}) { - for (let [o, s] of Object.entries(t)) { - if (!s || e[o] == null || he(s)) continue; - let f = n.models[r].fields.find((R) => R.name === o); - if (!f || f.kind !== "object" || !f.relationName) continue; - let v = typeof s == "object" ? s : {}; - e[o] = Vr({ - visitor: i, - result: e[o], - args: v, - modelName: f.type, - runtimeDataModel: n, - }); - } -} -function Lo({ - result: t, - modelName: e, - args: r, - extensions: n, - runtimeDataModel: i, - globalOmit: o, -}) { - return n.isEmpty() || t == null || typeof t != "object" || !i.models[e] - ? t - : Vr({ - result: t, - args: r ?? {}, - modelName: e, - runtimeDataModel: i, - visitor: (a, f, v) => { - let R = ye(f); - return _o({ - result: a, - modelName: R, - select: v.select, - omit: v.select ? void 0 : { ...o?.[R], ...v.omit }, - extensions: n, - }); - }, - }); -} -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -var ru = ["$connect", "$disconnect", "$on", "$transaction", "$extends"], - Fo = ru; -function No(t) { - if (t instanceof ne) return nu(t); - if (Lr(t)) return iu(t); - if (Array.isArray(t)) { - let r = [t[0]]; - for (let n = 1; n < t.length; n++) r[n] = qt(t[n]); - return r; - } - let e = {}; - for (let r in t) e[r] = qt(t[r]); - return e; -} -function nu(t) { - return new ne(t.strings, t.values); -} -function iu(t) { - return new Ft(t.sql, t.values); -} -function qt(t) { - if (typeof t != "object" || t == null || t instanceof ve || et(t)) return t; - if (Ke(t)) return new xe(t.toFixed()); - if (We(t)) return new Date(+t); - if (ArrayBuffer.isView(t)) return t.slice(0); - if (Array.isArray(t)) { - let e = t.length, - r; - for (r = Array(e); e--; ) r[e] = qt(t[e]); - return r; - } - if (typeof t == "object") { - let e = {}; - for (let r in t) - r === "__proto__" - ? Object.defineProperty(e, r, { - value: qt(t[r]), - configurable: !0, - enumerable: !0, - writable: !0, - }) - : (e[r] = qt(t[r])); - return e; - } - Fe(t, "Unknown value"); -} -function qo(t, e, r, n = 0) { - return t._createPrismaPromise((i) => { - let o = e.customDataProxyFetch; - return ( - "transaction" in e && - i !== void 0 && - (e.transaction?.kind === "batch" && e.transaction.lock.then(), - (e.transaction = i)), - n === r.length - ? t._executeRequest(e) - : r[n]({ - model: e.model, - operation: e.model ? e.action : e.clientMethod, - args: No(e.args ?? {}), - __internalParams: e, - query: (s, a = e) => { - let f = a.customDataProxyFetch; - return ( - (a.customDataProxyFetch = jo(o, f)), - (a.args = s), - qo(t, a, r, n + 1) - ); - }, - }) - ); - }); -} -function Vo(t, e) { - let { jsModelName: r, action: n, clientMethod: i } = e, - o = r ? n : i; - if (t._extensions.isEmpty()) return t._executeRequest(e); - let s = t._extensions.getAllQueryCallbacks(r ?? "$none", o); - return qo(t, e, s); -} -function Bo(t) { - return (e) => { - let r = { requests: e }, - n = e[0].extensions.getAllBatchQueryCallbacks(); - return n.length ? $o(r, n, 0, t) : t(r); - }; -} -function $o(t, e, r, n) { - if (r === e.length) return n(t); - let i = t.customDataProxyFetch, - o = t.requests[0].transaction; - return e[r]({ - args: { - queries: t.requests.map((s) => ({ - model: s.modelName, - operation: s.action, - args: s.args, - })), - transaction: o - ? { isolationLevel: o.kind === "batch" ? o.isolationLevel : void 0 } - : void 0, - }, - __internalParams: t, - query(s, a = t) { - let f = a.customDataProxyFetch; - return ((a.customDataProxyFetch = jo(i, f)), $o(a, e, r + 1, n)); - }, - }); -} -var Uo = (t) => t; -function jo(t = Uo, e = Uo) { - return (r) => t(e(r)); -} -u(); -c(); -p(); -m(); -d(); -l(); -var Qo = j("prisma:client"), - Go = { Vercel: "vercel", "Netlify CI": "netlify" }; -function Jo({ postinstall: t, ciName: e, clientVersion: r, generator: n }) { - if ( - (Qo("checkPlatformCaching:postinstall", t), - Qo("checkPlatformCaching:ciName", e), - t === !0 && - !( - n?.output && typeof (n.output.fromEnvVar ?? n.output.value) == "string" - ) && - e && - e in Go) - ) { - let i = `Prisma has detected that this project was built on ${e}, which caches dependencies. This leads to an outdated Prisma Client because Prisma's auto-generation isn't triggered. To fix this, make sure to run the \`prisma generate\` command during the build process. +"use strict";var Vs=Object.create;var nr=Object.defineProperty;var Bs=Object.getOwnPropertyDescriptor;var $s=Object.getOwnPropertyNames;var js=Object.getPrototypeOf,Qs=Object.prototype.hasOwnProperty;var ae=(t,e)=>()=>(t&&(e=t(t=0)),e);var yt=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),ht=(t,e)=>{for(var r in e)nr(t,r,{get:e[r],enumerable:!0})},Hn=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of $s(e))!Qs.call(t,i)&&i!==r&&nr(t,i,{get:()=>e[i],enumerable:!(n=Bs(e,i))||n.enumerable});return t};var bt=(t,e,r)=>(r=t!=null?Vs(js(t)):{},Hn(e||!t||!t.__esModule?nr(r,"default",{value:t,enumerable:!0}):r,t)),Gs=t=>Hn(nr({},"__esModule",{value:!0}),t);function Kr(t,e){if(e=e.toLowerCase(),e==="utf8"||e==="utf-8")return new y(Hs.encode(t));if(e==="base64"||e==="base64url")return t=t.replace(/-/g,"+").replace(/_/g,"/"),t=t.replace(/[^A-Za-z0-9+/]/g,""),new y([...atob(t)].map(r=>r.charCodeAt(0)));if(e==="binary"||e==="ascii"||e==="latin1"||e==="latin-1")return new y([...t].map(r=>r.charCodeAt(0)));if(e==="ucs2"||e==="ucs-2"||e==="utf16le"||e==="utf-16le"){let r=new y(t.length*2),n=new DataView(r.buffer);for(let i=0;ia.startsWith("get")||a.startsWith("set")),n=r.map(a=>a.replace("get","read").replace("set","write")),i=(a,f)=>function(v=0){return J(v,"offset"),re(v,"offset"),K(v,"offset",this.length-1),new DataView(this.buffer)[r[a]](v,f)},o=(a,f)=>function(v,R=0){let A=r[a].match(/set(\w+\d+)/)[1].toLowerCase(),I=Ks[A];return J(R,"offset"),re(R,"offset"),K(R,"offset",this.length-1),Ws(v,"value",I[0],I[1]),new DataView(this.buffer)[r[a]](R,v,f),R+parseInt(r[a].match(/\d+/)[0])/8},s=a=>{a.forEach(f=>{f.includes("Uint")&&(t[f.replace("Uint","UInt")]=t[f]),f.includes("Float64")&&(t[f.replace("Float64","Double")]=t[f]),f.includes("Float32")&&(t[f.replace("Float32","Float")]=t[f])})};n.forEach((a,f)=>{a.startsWith("read")&&(t[a]=i(f,!1),t[a+"LE"]=i(f,!0),t[a+"BE"]=i(f,!1)),a.startsWith("write")&&(t[a]=o(f,!1),t[a+"LE"]=o(f,!0),t[a+"BE"]=o(f,!1)),s([a,a+"LE",a+"BE"])})}function Yn(t){throw new Error(`Buffer polyfill does not implement "${t}"`)}function ir(t,e){if(!(t instanceof Uint8Array))throw new TypeError(`The "${e}" argument must be an instance of Buffer or Uint8Array`)}function K(t,e,r=Xs+1){if(t<0||t>r){let n=new RangeError(`The value of "${e}" is out of range. It must be >= 0 && <= ${r}. Received ${t}`);throw n.code="ERR_OUT_OF_RANGE",n}}function J(t,e){if(typeof t!="number"){let r=new TypeError(`The "${e}" argument must be of type number. Received type ${typeof t}.`);throw r.code="ERR_INVALID_ARG_TYPE",r}}function re(t,e){if(!Number.isInteger(t)||Number.isNaN(t)){let r=new RangeError(`The value of "${e}" is out of range. It must be an integer. Received ${t}`);throw r.code="ERR_OUT_OF_RANGE",r}}function Ws(t,e,r,n){if(tn){let i=new RangeError(`The value of "${e}" is out of range. It must be >= ${r} and <= ${n}. Received ${t}`);throw i.code="ERR_OUT_OF_RANGE",i}}function zn(t,e){if(typeof t!="string"){let r=new TypeError(`The "${e}" argument must be of type string. Received type ${typeof t}`);throw r.code="ERR_INVALID_ARG_TYPE",r}}function Zs(t,e="utf8"){return y.from(t,e)}var y,Ks,Hs,zs,Ys,Xs,h,Hr,u=ae(()=>{"use strict";y=class t extends Uint8Array{_isBuffer=!0;get offset(){return this.byteOffset}static alloc(e,r=0,n="utf8"){return zn(n,"encoding"),t.allocUnsafe(e).fill(r,n)}static allocUnsafe(e){return t.from(e)}static allocUnsafeSlow(e){return t.from(e)}static isBuffer(e){return e&&!!e._isBuffer}static byteLength(e,r="utf8"){if(typeof e=="string")return Kr(e,r).byteLength;if(e&&e.byteLength)return e.byteLength;let n=new TypeError('The "string" argument must be of type string or an instance of Buffer or ArrayBuffer.');throw n.code="ERR_INVALID_ARG_TYPE",n}static isEncoding(e){return Ys.includes(e)}static compare(e,r){ir(e,"buff1"),ir(r,"buff2");for(let n=0;nr[n])return 1}return e.length===r.length?0:e.length>r.length?1:-1}static from(e,r="utf8"){if(e&&typeof e=="object"&&e.type==="Buffer")return new t(e.data);if(typeof e=="number")return new t(new Uint8Array(e));if(typeof e=="string")return Kr(e,r);if(ArrayBuffer.isView(e)){let{byteOffset:n,byteLength:i,buffer:o}=e;return"map"in e&&typeof e.map=="function"?new t(e.map(s=>s%256),n,i):new t(o,n,i)}if(e&&typeof e=="object"&&("length"in e||"byteLength"in e||"buffer"in e))return new t(e);throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}static concat(e,r){if(e.length===0)return t.alloc(0);let n=[].concat(...e.map(o=>[...o])),i=t.alloc(r!==void 0?r:n.length);return i.set(r!==void 0?n.slice(0,r):n),i}slice(e=0,r=this.length){return this.subarray(e,r)}subarray(e=0,r=this.length){return Object.setPrototypeOf(super.subarray(e,r),t.prototype)}reverse(){return super.reverse(),this}readIntBE(e,r){J(e,"offset"),re(e,"offset"),K(e,"offset",this.length-1),J(r,"byteLength"),re(r,"byteLength");let n=new DataView(this.buffer,e,r),i=0;for(let o=0;o=0;o--)i.setUint8(o,e&255),e=e/256;return r+n}writeUintBE(e,r,n){return this.writeUIntBE(e,r,n)}writeUIntLE(e,r,n){J(r,"offset"),re(r,"offset"),K(r,"offset",this.length-1),J(n,"byteLength"),re(n,"byteLength");let i=new DataView(this.buffer,r,n);for(let o=0;or===e[n])}copy(e,r=0,n=0,i=this.length){K(r,"targetStart"),K(n,"sourceStart",this.length),K(i,"sourceEnd"),r>>>=0,n>>>=0,i>>>=0;let o=0;for(;n=this.length?this.length-a:e.length),a);return this}includes(e,r=null,n="utf-8"){return this.indexOf(e,r,n)!==-1}lastIndexOf(e,r=null,n="utf-8"){return this.indexOf(e,r,n,!0)}indexOf(e,r=null,n="utf-8",i=!1){let o=i?this.findLastIndex.bind(this):this.findIndex.bind(this);n=typeof r=="string"?r:n;let s=t.from(typeof e=="number"?[e]:e,n),a=typeof r=="string"?0:r;return a=typeof r=="number"?a:null,a=Number.isNaN(a)?null:a,a??=i?this.length:0,a=a<0?this.length+a:a,s.length===0&&i===!1?a>=this.length?this.length:a:s.length===0&&i===!0?(a>=this.length?this.length:a)||this.length:o((f,v)=>(i?v<=a:v>=a)&&this[v]===s[0]&&s.every((A,I)=>this[v+I]===A))}toString(e="utf8",r=0,n=this.length){if(r=r<0?0:r,e=e.toString().toLowerCase(),n<=0)return"";if(e==="utf8"||e==="utf-8")return zs.decode(this.slice(r,n));if(e==="base64"||e==="base64url"){let i=btoa(this.reduce((o,s)=>o+Hr(s),""));return e==="base64url"?i.replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,""):i}if(e==="binary"||e==="ascii"||e==="latin1"||e==="latin-1")return this.slice(r,n).reduce((i,o)=>i+Hr(o&(e==="ascii"?127:255)),"");if(e==="ucs2"||e==="ucs-2"||e==="utf16le"||e==="utf-16le"){let i=new DataView(this.buffer.slice(r,n));return Array.from({length:i.byteLength/2},(o,s)=>s*2+1i+o.toString(16).padStart(2,"0"),"");Yn(`encoding "${e}"`)}toLocaleString(){return this.toString()}inspect(){return``}};Ks={int8:[-128,127],int16:[-32768,32767],int32:[-2147483648,2147483647],uint8:[0,255],uint16:[0,65535],uint32:[0,4294967295],float32:[-1/0,1/0],float64:[-1/0,1/0],bigint64:[-0x8000000000000000n,0x7fffffffffffffffn],biguint64:[0n,0xffffffffffffffffn]},Hs=new TextEncoder,zs=new TextDecoder,Ys=["utf8","utf-8","hex","base64","ascii","binary","base64url","ucs2","ucs-2","utf16le","utf-16le","latin1","latin-1"],Xs=4294967295;Js(y.prototype);h=new Proxy(Zs,{construct(t,[e,r]){return y.from(e,r)},get(t,e){return y[e]}}),Hr=String.fromCodePoint});var g,w,c=ae(()=>{"use strict";g={nextTick:(t,...e)=>{setTimeout(()=>{t(...e)},0)},env:{},version:"",cwd:()=>"/",stderr:{},argv:["/bin/node"],pid:1e4},{cwd:w}=g});var x,p=ae(()=>{"use strict";x=globalThis.performance??(()=>{let t=Date.now();return{now:()=>Date.now()-t}})()});var E,m=ae(()=>{"use strict";E=()=>{};E.prototype=E});var b,d=ae(()=>{"use strict";b=class{value;constructor(e){this.value=e}deref(){return this.value}}});function ti(t,e){var r,n,i,o,s,a,f,v,R=t.constructor,A=R.precision;if(!t.s||!e.s)return e.s||(e=new R(t)),$?N(e,A):e;if(f=t.d,v=e.d,s=t.e,i=e.e,f=f.slice(),o=s-i,o){for(o<0?(n=f,o=-o,a=v.length):(n=v,i=s,a=f.length),s=Math.ceil(A/B),a=s>a?s+1:a+1,o>a&&(o=a,n.length=1),n.reverse();o--;)n.push(0);n.reverse()}for(a=f.length,o=v.length,a-o<0&&(o=a,n=v,v=f,f=n),r=0;o;)r=(f[--o]=f[o]+v[o]+r)/H|0,f[o]%=H;for(r&&(f.unshift(r),++i),a=f.length;f[--a]==0;)f.pop();return e.d=f,e.e=i,$?N(e,A):e}function de(t,e,r){if(t!==~~t||tr)throw Error(_e+t)}function me(t){var e,r,n,i=t.length-1,o="",s=t[0];if(i>0){for(o+=s,e=1;e16)throw Error(Yr+W(t));if(!t.s)return new R(oe);for(e==null?($=!1,a=A):a=e,s=new R(.03125);t.abs().gte(.1);)t=t.times(s),v+=5;for(n=Math.log(ke(2,v))/Math.LN10*2+5|0,a+=n,r=i=o=new R(oe),R.precision=a;;){if(i=N(i.times(t),a),r=r.times(++f),s=o.plus(we(i,r,a)),me(s.d).slice(0,a)===me(o.d).slice(0,a)){for(;v--;)o=N(o.times(o),a);return R.precision=A,e==null?($=!0,N(o,A)):o}o=s}}function W(t){for(var e=t.e*B,r=t.d[0];r>=10;r/=10)e++;return e}function zr(t,e,r){if(e>t.LN10.sd())throw $=!0,r&&(t.precision=r),Error(le+"LN10 precision limit exceeded");return N(new t(t.LN10),e)}function Ae(t){for(var e="";t--;)e+="0";return e}function Et(t,e){var r,n,i,o,s,a,f,v,R,A=1,I=10,C=t,L=C.d,D=C.constructor,k=D.precision;if(C.s<1)throw Error(le+(C.s?"NaN":"-Infinity"));if(C.eq(oe))return new D(0);if(e==null?($=!1,v=k):v=e,C.eq(10))return e==null&&($=!0),zr(D,v);if(v+=I,D.precision=v,r=me(L),n=r.charAt(0),o=W(C),Math.abs(o)<15e14){for(;n<7&&n!=1||n==1&&r.charAt(1)>3;)C=C.times(t),r=me(C.d),n=r.charAt(0),A++;o=W(C),n>1?(C=new D("0."+r),o++):C=new D(n+"."+r.slice(1))}else return f=zr(D,v+2,k).times(o+""),C=Et(new D(n+"."+r.slice(1)),v-I).plus(f),D.precision=k,e==null?($=!0,N(C,k)):C;for(a=s=C=we(C.minus(oe),C.plus(oe),v),R=N(C.times(C),v),i=3;;){if(s=N(s.times(R),v),f=a.plus(we(s,new D(i),v)),me(f.d).slice(0,v)===me(a.d).slice(0,v))return a=a.times(2),o!==0&&(a=a.plus(zr(D,v+2,k).times(o+""))),a=we(a,new D(A),v),D.precision=k,e==null?($=!0,N(a,k)):a;a=f,i+=2}}function Xn(t,e){var r,n,i;for((r=e.indexOf("."))>-1&&(e=e.replace(".","")),(n=e.search(/e/i))>0?(r<0&&(r=n),r+=+e.slice(n+1),e=e.substring(0,n)):r<0&&(r=e.length),n=0;e.charCodeAt(n)===48;)++n;for(i=e.length;e.charCodeAt(i-1)===48;)--i;if(e=e.slice(n,i),e){if(i-=n,r=r-n-1,t.e=Qe(r/B),t.d=[],n=(r+1)%B,r<0&&(n+=B),nor||t.e<-or))throw Error(Yr+r)}else t.s=0,t.e=0,t.d=[0];return t}function N(t,e,r){var n,i,o,s,a,f,v,R,A=t.d;for(s=1,o=A[0];o>=10;o/=10)s++;if(n=e-s,n<0)n+=B,i=e,v=A[R=0];else{if(R=Math.ceil((n+1)/B),o=A.length,R>=o)return t;for(v=o=A[R],s=1;o>=10;o/=10)s++;n%=B,i=n-B+s}if(r!==void 0&&(o=ke(10,s-i-1),a=v/o%10|0,f=e<0||A[R+1]!==void 0||v%o,f=r<4?(a||f)&&(r==0||r==(t.s<0?3:2)):a>5||a==5&&(r==4||f||r==6&&(n>0?i>0?v/ke(10,s-i):0:A[R-1])%10&1||r==(t.s<0?8:7))),e<1||!A[0])return f?(o=W(t),A.length=1,e=e-o-1,A[0]=ke(10,(B-e%B)%B),t.e=Qe(-e/B)||0):(A.length=1,A[0]=t.e=t.s=0),t;if(n==0?(A.length=R,o=1,R--):(A.length=R+1,o=ke(10,B-n),A[R]=i>0?(v/ke(10,s-i)%ke(10,i)|0)*o:0),f)for(;;)if(R==0){(A[0]+=o)==H&&(A[0]=1,++t.e);break}else{if(A[R]+=o,A[R]!=H)break;A[R--]=0,o=1}for(n=A.length;A[--n]===0;)A.pop();if($&&(t.e>or||t.e<-or))throw Error(Yr+W(t));return t}function ni(t,e){var r,n,i,o,s,a,f,v,R,A,I=t.constructor,C=I.precision;if(!t.s||!e.s)return e.s?e.s=-e.s:e=new I(t),$?N(e,C):e;if(f=t.d,A=e.d,n=e.e,v=t.e,f=f.slice(),s=v-n,s){for(R=s<0,R?(r=f,s=-s,a=A.length):(r=A,n=v,a=f.length),i=Math.max(Math.ceil(C/B),a)+2,s>i&&(s=i,r.length=1),r.reverse(),i=s;i--;)r.push(0);r.reverse()}else{for(i=f.length,a=A.length,R=i0;--i)f[a++]=0;for(i=A.length;i>s;){if(f[--i]0?o=o.charAt(0)+"."+o.slice(1)+Ae(n):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(i<0?"e":"e+")+i):i<0?(o="0."+Ae(-i-1)+o,r&&(n=r-s)>0&&(o+=Ae(n))):i>=s?(o+=Ae(i+1-s),r&&(n=r-i-1)>0&&(o=o+"."+Ae(n))):((n=i+1)0&&(i+1===s&&(o+="."),o+=Ae(n))),t.s<0?"-"+o:o}function Zn(t,e){if(t.length>e)return t.length=e,!0}function ii(t){var e,r,n;function i(o){var s=this;if(!(s instanceof i))return new i(o);if(s.constructor=i,o instanceof i){s.s=o.s,s.e=o.e,s.d=(o=o.d)?o.slice():o;return}if(typeof o=="number"){if(o*0!==0)throw Error(_e+o);if(o>0)s.s=1;else if(o<0)o=-o,s.s=-1;else{s.s=0,s.e=0,s.d=[0];return}if(o===~~o&&o<1e7){s.e=0,s.d=[o];return}return Xn(s,o.toString())}else if(typeof o!="string")throw Error(_e+o);if(o.charCodeAt(0)===45?(o=o.slice(1),s.s=-1):s.s=1,ta.test(o))Xn(s,o);else throw Error(_e+o)}if(i.prototype=S,i.ROUND_UP=0,i.ROUND_DOWN=1,i.ROUND_CEIL=2,i.ROUND_FLOOR=3,i.ROUND_HALF_UP=4,i.ROUND_HALF_DOWN=5,i.ROUND_HALF_EVEN=6,i.ROUND_HALF_CEIL=7,i.ROUND_HALF_FLOOR=8,i.clone=ii,i.config=i.set=ra,t===void 0&&(t={}),t)for(n=["precision","rounding","toExpNeg","toExpPos","LN10"],e=0;e=i[e+1]&&n<=i[e+2])this[r]=n;else throw Error(_e+r+": "+n);if((n=t[r="LN10"])!==void 0)if(n==Math.LN10)this[r]=new this(n);else throw Error(_e+r+": "+n);return this}var je,ea,Xr,$,le,_e,Yr,Qe,ke,ta,oe,H,B,ei,or,S,we,Xr,sr,oi=ae(()=>{"use strict";u();c();p();m();d();l();je=1e9,ea={precision:20,rounding:4,toExpNeg:-7,toExpPos:21,LN10:"2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286"},$=!0,le="[DecimalError] ",_e=le+"Invalid argument: ",Yr=le+"Exponent out of range: ",Qe=Math.floor,ke=Math.pow,ta=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,H=1e7,B=7,ei=9007199254740991,or=Qe(ei/B),S={};S.absoluteValue=S.abs=function(){var t=new this.constructor(this);return t.s&&(t.s=1),t};S.comparedTo=S.cmp=function(t){var e,r,n,i,o=this;if(t=new o.constructor(t),o.s!==t.s)return o.s||-t.s;if(o.e!==t.e)return o.e>t.e^o.s<0?1:-1;for(n=o.d.length,i=t.d.length,e=0,r=nt.d[e]^o.s<0?1:-1;return n===i?0:n>i^o.s<0?1:-1};S.decimalPlaces=S.dp=function(){var t=this,e=t.d.length-1,r=(e-t.e)*B;if(e=t.d[e],e)for(;e%10==0;e/=10)r--;return r<0?0:r};S.dividedBy=S.div=function(t){return we(this,new this.constructor(t))};S.dividedToIntegerBy=S.idiv=function(t){var e=this,r=e.constructor;return N(we(e,new r(t),0,1),r.precision)};S.equals=S.eq=function(t){return!this.cmp(t)};S.exponent=function(){return W(this)};S.greaterThan=S.gt=function(t){return this.cmp(t)>0};S.greaterThanOrEqualTo=S.gte=function(t){return this.cmp(t)>=0};S.isInteger=S.isint=function(){return this.e>this.d.length-2};S.isNegative=S.isneg=function(){return this.s<0};S.isPositive=S.ispos=function(){return this.s>0};S.isZero=function(){return this.s===0};S.lessThan=S.lt=function(t){return this.cmp(t)<0};S.lessThanOrEqualTo=S.lte=function(t){return this.cmp(t)<1};S.logarithm=S.log=function(t){var e,r=this,n=r.constructor,i=n.precision,o=i+5;if(t===void 0)t=new n(10);else if(t=new n(t),t.s<1||t.eq(oe))throw Error(le+"NaN");if(r.s<1)throw Error(le+(r.s?"NaN":"-Infinity"));return r.eq(oe)?new n(0):($=!1,e=we(Et(r,o),Et(t,o),o),$=!0,N(e,i))};S.minus=S.sub=function(t){var e=this;return t=new e.constructor(t),e.s==t.s?ni(e,t):ti(e,(t.s=-t.s,t))};S.modulo=S.mod=function(t){var e,r=this,n=r.constructor,i=n.precision;if(t=new n(t),!t.s)throw Error(le+"NaN");return r.s?($=!1,e=we(r,t,0,1).times(t),$=!0,r.minus(e)):N(new n(r),i)};S.naturalExponential=S.exp=function(){return ri(this)};S.naturalLogarithm=S.ln=function(){return Et(this)};S.negated=S.neg=function(){var t=new this.constructor(this);return t.s=-t.s||0,t};S.plus=S.add=function(t){var e=this;return t=new e.constructor(t),e.s==t.s?ti(e,t):ni(e,(t.s=-t.s,t))};S.precision=S.sd=function(t){var e,r,n,i=this;if(t!==void 0&&t!==!!t&&t!==1&&t!==0)throw Error(_e+t);if(e=W(i)+1,n=i.d.length-1,r=n*B+1,n=i.d[n],n){for(;n%10==0;n/=10)r--;for(n=i.d[0];n>=10;n/=10)r++}return t&&e>r?e:r};S.squareRoot=S.sqrt=function(){var t,e,r,n,i,o,s,a=this,f=a.constructor;if(a.s<1){if(!a.s)return new f(0);throw Error(le+"NaN")}for(t=W(a),$=!1,i=Math.sqrt(+a),i==0||i==1/0?(e=me(a.d),(e.length+t)%2==0&&(e+="0"),i=Math.sqrt(e),t=Qe((t+1)/2)-(t<0||t%2),i==1/0?e="5e"+t:(e=i.toExponential(),e=e.slice(0,e.indexOf("e")+1)+t),n=new f(e)):n=new f(i.toString()),r=f.precision,i=s=r+3;;)if(o=n,n=o.plus(we(a,o,s+2)).times(.5),me(o.d).slice(0,s)===(e=me(n.d)).slice(0,s)){if(e=e.slice(s-3,s+1),i==s&&e=="4999"){if(N(o,r+1,0),o.times(o).eq(a)){n=o;break}}else if(e!="9999")break;s+=4}return $=!0,N(n,r)};S.times=S.mul=function(t){var e,r,n,i,o,s,a,f,v,R=this,A=R.constructor,I=R.d,C=(t=new A(t)).d;if(!R.s||!t.s)return new A(0);for(t.s*=R.s,r=R.e+t.e,f=I.length,v=C.length,f=0;){for(e=0,i=f+n;i>n;)a=o[i]+C[n]*I[i-n-1]+e,o[i--]=a%H|0,e=a/H|0;o[i]=(o[i]+e)%H|0}for(;!o[--s];)o.pop();return e?++r:o.shift(),t.d=o,t.e=r,$?N(t,A.precision):t};S.toDecimalPlaces=S.todp=function(t,e){var r=this,n=r.constructor;return r=new n(r),t===void 0?r:(de(t,0,je),e===void 0?e=n.rounding:de(e,0,8),N(r,t+W(r)+1,e))};S.toExponential=function(t,e){var r,n=this,i=n.constructor;return t===void 0?r=Me(n,!0):(de(t,0,je),e===void 0?e=i.rounding:de(e,0,8),n=N(new i(n),t+1,e),r=Me(n,!0,t+1)),r};S.toFixed=function(t,e){var r,n,i=this,o=i.constructor;return t===void 0?Me(i):(de(t,0,je),e===void 0?e=o.rounding:de(e,0,8),n=N(new o(i),t+W(i)+1,e),r=Me(n.abs(),!1,t+W(n)+1),i.isneg()&&!i.isZero()?"-"+r:r)};S.toInteger=S.toint=function(){var t=this,e=t.constructor;return N(new e(t),W(t)+1,e.rounding)};S.toNumber=function(){return+this};S.toPower=S.pow=function(t){var e,r,n,i,o,s,a=this,f=a.constructor,v=12,R=+(t=new f(t));if(!t.s)return new f(oe);if(a=new f(a),!a.s){if(t.s<1)throw Error(le+"Infinity");return a}if(a.eq(oe))return a;if(n=f.precision,t.eq(oe))return N(a,n);if(e=t.e,r=t.d.length-1,s=e>=r,o=a.s,s){if((r=R<0?-R:R)<=ei){for(i=new f(oe),e=Math.ceil(n/B+4),$=!1;r%2&&(i=i.times(a),Zn(i.d,e)),r=Qe(r/2),r!==0;)a=a.times(a),Zn(a.d,e);return $=!0,t.s<0?new f(oe).div(i):N(i,n)}}else if(o<0)throw Error(le+"NaN");return o=o<0&&t.d[Math.max(e,r)]&1?-1:1,a.s=1,$=!1,i=t.times(Et(a,n+v)),$=!0,i=ri(i),i.s=o,i};S.toPrecision=function(t,e){var r,n,i=this,o=i.constructor;return t===void 0?(r=W(i),n=Me(i,r<=o.toExpNeg||r>=o.toExpPos)):(de(t,1,je),e===void 0?e=o.rounding:de(e,0,8),i=N(new o(i),t,e),r=W(i),n=Me(i,t<=r||r<=o.toExpNeg,t)),n};S.toSignificantDigits=S.tosd=function(t,e){var r=this,n=r.constructor;return t===void 0?(t=n.precision,e=n.rounding):(de(t,1,je),e===void 0?e=n.rounding:de(e,0,8)),N(new n(r),t,e)};S.toString=S.valueOf=S.val=S.toJSON=S[Symbol.for("nodejs.util.inspect.custom")]=function(){var t=this,e=W(t),r=t.constructor;return Me(t,e<=r.toExpNeg||e>=r.toExpPos)};we=function(){function t(n,i){var o,s=0,a=n.length;for(n=n.slice();a--;)o=n[a]*i+s,n[a]=o%H|0,s=o/H|0;return s&&n.unshift(s),n}function e(n,i,o,s){var a,f;if(o!=s)f=o>s?1:-1;else for(a=f=0;ai[a]?1:-1;break}return f}function r(n,i,o){for(var s=0;o--;)n[o]-=s,s=n[o]1;)n.shift()}return function(n,i,o,s){var a,f,v,R,A,I,C,L,D,k,Ee,ee,U,te,Oe,Wr,ue,tr,rr=n.constructor,qs=n.s==i.s?1:-1,pe=n.d,G=i.d;if(!n.s)return new rr(n);if(!i.s)throw Error(le+"Division by zero");for(f=n.e-i.e,ue=G.length,Oe=pe.length,C=new rr(qs),L=C.d=[],v=0;G[v]==(pe[v]||0);)++v;if(G[v]>(pe[v]||0)&&--f,o==null?ee=o=rr.precision:s?ee=o+(W(n)-W(i))+1:ee=o,ee<0)return new rr(0);if(ee=ee/B+2|0,v=0,ue==1)for(R=0,G=G[0],ee++;(v1&&(G=t(G,R),pe=t(pe,R),ue=G.length,Oe=pe.length),te=ue,D=pe.slice(0,ue),k=D.length;k=H/2&&++Wr;do R=0,a=e(G,D,ue,k),a<0?(Ee=D[0],ue!=k&&(Ee=Ee*H+(D[1]||0)),R=Ee/Wr|0,R>1?(R>=H&&(R=H-1),A=t(G,R),I=A.length,k=D.length,a=e(A,D,I,k),a==1&&(R--,r(A,ue{"use strict";oi();P=class extends sr{static isDecimal(e){return e instanceof sr}static random(e=20){{let n=globalThis.crypto.getRandomValues(new Uint8Array(e)).reduce((i,o)=>i+o,"");return new sr(`0.${n.slice(0,e)}`)}}},xe=P});function la(){return!1}function nn(){return{dev:0,ino:0,mode:0,nlink:0,uid:0,gid:0,rdev:0,size:0,blksize:0,blocks:0,atimeMs:0,mtimeMs:0,ctimeMs:0,birthtimeMs:0,atime:new Date,mtime:new Date,ctime:new Date,birthtime:new Date}}function ua(){return nn()}function ca(){return[]}function pa(t){t(null,[])}function ma(){return""}function da(){return""}function fa(){}function ga(){}function ya(){}function ha(){}function ba(){}function Ea(){}function wa(){}function xa(){}function Pa(){return{close:()=>{},on:()=>{},removeAllListeners:()=>{}}}function Ta(t,e){e(null,nn())}var va,Ra,Pi,Ti=ae(()=>{"use strict";u();c();p();m();d();l();va={},Ra={existsSync:la,lstatSync:nn,stat:Ta,statSync:ua,readdirSync:ca,readdir:pa,readlinkSync:ma,realpathSync:da,chmodSync:fa,renameSync:ga,mkdirSync:ya,rmdirSync:ha,rmSync:ba,unlinkSync:Ea,watchFile:wa,unwatchFile:xa,watch:Pa,promises:va},Pi=Ra});var vi=yt((Yp,Aa)=>{Aa.exports={name:"@prisma/internals",version:"6.19.2",description:"This package is intended for Prisma's internal use",main:"dist/index.js",types:"dist/index.d.ts",repository:{type:"git",url:"https://github.com/prisma/prisma.git",directory:"packages/internals"},homepage:"https://www.prisma.io",author:"Tim Suchanek ",bugs:"https://github.com/prisma/prisma/issues",license:"Apache-2.0",scripts:{dev:"DEV=true tsx helpers/build.ts",build:"tsx helpers/build.ts",test:"dotenv -e ../../.db.env -- jest --silent",prepublishOnly:"pnpm run build"},files:["README.md","dist","!**/libquery_engine*","!dist/get-generators/engines/*","scripts"],devDependencies:{"@babel/helper-validator-identifier":"7.25.9","@opentelemetry/api":"1.9.0","@swc/core":"1.11.5","@swc/jest":"0.2.37","@types/babel__helper-validator-identifier":"7.15.2","@types/jest":"29.5.14","@types/node":"18.19.76","@types/resolve":"1.20.6",archiver:"6.0.2","checkpoint-client":"1.1.33","cli-truncate":"4.0.0",dotenv:"16.5.0",empathic:"2.0.0","escape-string-regexp":"5.0.0",execa:"8.0.1","fast-glob":"3.3.3","find-up":"7.0.0","fp-ts":"2.16.9","fs-extra":"11.3.0","global-directory":"4.0.0",globby:"11.1.0","identifier-regex":"1.0.0","indent-string":"4.0.0","is-windows":"1.0.2","is-wsl":"3.1.0",jest:"29.7.0","jest-junit":"16.0.0",kleur:"4.1.5","mock-stdin":"1.0.0","new-github-issue-url":"0.2.1","node-fetch":"3.3.2","npm-packlist":"5.1.3",open:"7.4.2","p-map":"4.0.0",resolve:"1.22.10","string-width":"7.2.0","strip-indent":"4.0.0","temp-dir":"2.0.0",tempy:"1.0.1","terminal-link":"4.0.0",tmp:"0.2.3","ts-pattern":"5.6.2","ts-toolbelt":"9.6.0",typescript:"5.4.5",yarn:"1.22.22"},dependencies:{"@prisma/config":"workspace:*","@prisma/debug":"workspace:*","@prisma/dmmf":"workspace:*","@prisma/driver-adapter-utils":"workspace:*","@prisma/engines":"workspace:*","@prisma/fetch-engine":"workspace:*","@prisma/generator":"workspace:*","@prisma/generator-helper":"workspace:*","@prisma/get-platform":"workspace:*","@prisma/prisma-schema-wasm":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/schema-engine-wasm":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/schema-files-loader":"workspace:*",arg:"5.0.2",prompts:"2.4.2"},peerDependencies:{typescript:">=5.1.0"},peerDependenciesMeta:{typescript:{optional:!0}},sideEffects:!1}});function Sa(...t){return t.join("/")}function Ia(...t){return t.join("/")}function Da(t){let e=Ri(t),r=Ai(t),[n,i]=e.split(".");return{root:"/",dir:r,base:e,ext:i,name:n}}function Ri(t){let e=t.split("/");return e[e.length-1]}function Ai(t){return t.split("/").slice(0,-1).join("/")}function ka(t){let e=t.split("/").filter(i=>i!==""&&i!=="."),r=[];for(let i of e)i===".."?r.pop():r.push(i);let n=r.join("/");return t.startsWith("/")?"/"+n:n}var Ci,Oa,_a,Ma,cr,Si=ae(()=>{"use strict";u();c();p();m();d();l();Ci="/",Oa=":";_a={sep:Ci},Ma={basename:Ri,delimiter:Oa,dirname:Ai,join:Ia,normalize:ka,parse:Da,posix:_a,resolve:Sa,sep:Ci},cr=Ma});var un=yt((ud,qa)=>{qa.exports={name:"@prisma/engines-version",version:"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7",main:"index.js",types:"index.d.ts",license:"Apache-2.0",author:"Tim Suchanek ",prisma:{enginesVersion:"c2990dca591cba766e3b7ef5d9e8a84796e47ab7"},repository:{type:"git",url:"https://github.com/prisma/engines-wrapper.git",directory:"packages/engines-version"},devDependencies:{"@types/node":"18.19.76",typescript:"4.9.5"},files:["index.js","index.d.ts"],scripts:{build:"tsc -d"}}});var Di=yt(dr=>{"use strict";u();c();p();m();d();l();Object.defineProperty(dr,"__esModule",{value:!0});dr.enginesVersion=void 0;dr.enginesVersion=un().prisma.enginesVersion});var _i=yt((vd,ki)=>{"use strict";u();c();p();m();d();l();ki.exports=(t,e=1,r)=>{if(r={indent:" ",includeEmptyLines:!1,...r},typeof t!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof t}\``);if(typeof e!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof e}\``);if(typeof r.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``);if(e===0)return t;let n=r.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return t.replace(n,r.indent.repeat(e))}});var hn=yt((eb,qi)=>{"use strict";u();c();p();m();d();l();qi.exports=function(){function t(e,r,n,i,o){return en?n+1:e+1:i===o?r:r+1}return function(e,r){if(e===r)return 0;if(e.length>r.length){var n=e;e=r,r=n}for(var i=e.length,o=r.length;i>0&&e.charCodeAt(i-1)===r.charCodeAt(o-1);)i--,o--;for(var s=0;s{"use strict";u();c();p();m();d();l()});var Gi=ae(()=>{"use strict";u();c();p();m();d();l()});var Fr,yo=ae(()=>{"use strict";u();c();p();m();d();l();Fr=class{events={};on(e,r){return this.events[e]||(this.events[e]=[]),this.events[e].push(r),this}emit(e,...r){return this.events[e]?(this.events[e].forEach(n=>{n(...r)}),!0):!1}}});var zu={};ht(zu,{DMMF:()=>At,Debug:()=>j,Decimal:()=>xe,Extensions:()=>Zr,MetricsClient:()=>nt,PrismaClientInitializationError:()=>M,PrismaClientKnownRequestError:()=>X,PrismaClientRustPanicError:()=>Te,PrismaClientUnknownRequestError:()=>Q,PrismaClientValidationError:()=>Y,Public:()=>en,Sql:()=>ne,createParam:()=>ao,defineDmmfProperty:()=>fo,deserializeJsonResponse:()=>lt,deserializeRawResult:()=>Gr,dmmfToRuntimeDataModel:()=>Ui,empty:()=>bo,getPrismaClient:()=>Fs,getRuntime:()=>ut,join:()=>ho,makeStrictEnum:()=>Ns,makeTypedQueryFactory:()=>go,objectEnumValues:()=>Ar,raw:()=>An,serializeJsonQuery:()=>_r,skip:()=>kr,sqltag:()=>Cn,warnEnvConflicts:()=>void 0,warnOnce:()=>Tt});module.exports=Gs(zu);u();c();p();m();d();l();var Zr={};ht(Zr,{defineExtension:()=>si,getExtensionContext:()=>ai});u();c();p();m();d();l();u();c();p();m();d();l();function si(t){return typeof t=="function"?t:e=>e.$extends(t)}u();c();p();m();d();l();function ai(t){return t}var en={};ht(en,{validator:()=>li});u();c();p();m();d();l();u();c();p();m();d();l();function li(...t){return e=>e}u();c();p();m();d();l();u();c();p();m();d();l();u();c();p();m();d();l();var tn,ui,ci,pi,mi=!0;typeof g<"u"&&({FORCE_COLOR:tn,NODE_DISABLE_COLORS:ui,NO_COLOR:ci,TERM:pi}=g.env||{},mi=g.stdout&&g.stdout.isTTY);var na={enabled:!ui&&ci==null&&pi!=="dumb"&&(tn!=null&&tn!=="0"||mi)};function q(t,e){let r=new RegExp(`\\x1b\\[${e}m`,"g"),n=`\x1B[${t}m`,i=`\x1B[${e}m`;return function(o){return!na.enabled||o==null?o:n+(~(""+o).indexOf(i)?o.replace(r,i+n):o)+i}}var Kc=q(0,0),ar=q(1,22),lr=q(2,22),Hc=q(3,23),di=q(4,24),zc=q(7,27),Yc=q(8,28),Xc=q(9,29),Zc=q(30,39),Ge=q(31,39),fi=q(32,39),gi=q(33,39),yi=q(34,39),ep=q(35,39),hi=q(36,39),tp=q(37,39),bi=q(90,39),rp=q(90,39),np=q(40,49),ip=q(41,49),op=q(42,49),sp=q(43,49),ap=q(44,49),lp=q(45,49),up=q(46,49),cp=q(47,49);u();c();p();m();d();l();var ia=100,Ei=["green","yellow","blue","magenta","cyan","red"],ur=[],wi=Date.now(),oa=0,rn=typeof g<"u"?g.env:{};globalThis.DEBUG??=rn.DEBUG??"";globalThis.DEBUG_COLORS??=rn.DEBUG_COLORS?rn.DEBUG_COLORS==="true":!0;var wt={enable(t){typeof t=="string"&&(globalThis.DEBUG=t)},disable(){let t=globalThis.DEBUG;return globalThis.DEBUG="",t},enabled(t){let e=globalThis.DEBUG.split(",").map(i=>i.replace(/[.+?^${}()|[\]\\]/g,"\\$&")),r=e.some(i=>i===""||i[0]==="-"?!1:t.match(RegExp(i.split("*").join(".*")+"$"))),n=e.some(i=>i===""||i[0]!=="-"?!1:t.match(RegExp(i.slice(1).split("*").join(".*")+"$")));return r&&!n},log:(...t)=>{let[e,r,...n]=t;(console.warn??console.log)(`${e} ${r}`,...n)},formatters:{}};function sa(t){let e={color:Ei[oa++%Ei.length],enabled:wt.enabled(t),namespace:t,log:wt.log,extend:()=>{}},r=(...n)=>{let{enabled:i,namespace:o,color:s,log:a}=e;if(n.length!==0&&ur.push([o,...n]),ur.length>ia&&ur.shift(),wt.enabled(o)||i){let f=n.map(R=>typeof R=="string"?R:aa(R)),v=`+${Date.now()-wi}ms`;wi=Date.now(),a(o,...f,v)}};return new Proxy(r,{get:(n,i)=>e[i],set:(n,i,o)=>e[i]=o})}var j=new Proxy(sa,{get:(t,e)=>wt[e],set:(t,e,r)=>wt[e]=r});function aa(t,e=2){let r=new Set;return JSON.stringify(t,(n,i)=>{if(typeof i=="object"&&i!==null){if(r.has(i))return"[Circular *]";r.add(i)}else if(typeof i=="bigint")return i.toString();return i},e)}function xi(){ur.length=0}u();c();p();m();d();l();u();c();p();m();d();l();var on=["darwin","darwin-arm64","debian-openssl-1.0.x","debian-openssl-1.1.x","debian-openssl-3.0.x","rhel-openssl-1.0.x","rhel-openssl-1.1.x","rhel-openssl-3.0.x","linux-arm64-openssl-1.1.x","linux-arm64-openssl-1.0.x","linux-arm64-openssl-3.0.x","linux-arm-openssl-1.1.x","linux-arm-openssl-1.0.x","linux-arm-openssl-3.0.x","linux-musl","linux-musl-openssl-3.0.x","linux-musl-arm64-openssl-1.1.x","linux-musl-arm64-openssl-3.0.x","linux-nixos","linux-static-x64","linux-static-arm64","windows","freebsd11","freebsd12","freebsd13","freebsd14","freebsd15","openbsd","netbsd","arm"];u();c();p();m();d();l();var Ca=vi(),sn=Ca.version;u();c();p();m();d();l();function Je(t){let e=La();return e||(t?.config.engineType==="library"?"library":t?.config.engineType==="binary"?"binary":t?.config.engineType==="client"?"client":Fa())}function La(){let t=g.env.PRISMA_CLIENT_ENGINE_TYPE;return t==="library"?"library":t==="binary"?"binary":t==="client"?"client":void 0}function Fa(){return"library"}u();c();p();m();d();l();u();c();p();m();d();l();u();c();p();m();d();l();u();c();p();m();d();l();function an(t){return t.name==="DriverAdapterError"&&typeof t.cause=="object"}u();c();p();m();d();l();function pr(t){return{ok:!0,value:t,map(e){return pr(e(t))},flatMap(e){return e(t)}}}function Le(t){return{ok:!1,error:t,map(){return Le(t)},flatMap(){return Le(t)}}}var Ii=j("driver-adapter-utils"),ln=class{registeredErrors=[];consumeError(e){return this.registeredErrors[e]}registerNewError(e){let r=0;for(;this.registeredErrors[r]!==void 0;)r++;return this.registeredErrors[r]={error:e},r}};var mr=(t,e=new ln)=>{let r={adapterName:t.adapterName,errorRegistry:e,queryRaw:Pe(e,t.queryRaw.bind(t)),executeRaw:Pe(e,t.executeRaw.bind(t)),executeScript:Pe(e,t.executeScript.bind(t)),dispose:Pe(e,t.dispose.bind(t)),provider:t.provider,startTransaction:async(...n)=>(await Pe(e,t.startTransaction.bind(t))(...n)).map(o=>Na(e,o))};return t.getConnectionInfo&&(r.getConnectionInfo=Ua(e,t.getConnectionInfo.bind(t))),r},Na=(t,e)=>({adapterName:e.adapterName,provider:e.provider,options:e.options,queryRaw:Pe(t,e.queryRaw.bind(e)),executeRaw:Pe(t,e.executeRaw.bind(e)),commit:Pe(t,e.commit.bind(e)),rollback:Pe(t,e.rollback.bind(e))});function Pe(t,e){return async(...r)=>{try{return pr(await e(...r))}catch(n){if(Ii("[error@wrapAsync]",n),an(n))return Le(n.cause);let i=t.registerNewError(n);return Le({kind:"GenericJs",id:i})}}}function Ua(t,e){return(...r)=>{try{return pr(e(...r))}catch(n){if(Ii("[error@wrapSync]",n),an(n))return Le(n.cause);let i=t.registerNewError(n);return Le({kind:"GenericJs",id:i})}}}u();c();p();m();d();l();var Oi="prisma+postgres",fr=`${Oi}:`;function gr(t){return t?.toString().startsWith(`${fr}//`)??!1}function cn(t){if(!gr(t))return!1;let{host:e}=new URL(t);return e.includes("localhost")||e.includes("127.0.0.1")||e.includes("[::1]")}var Pt={};ht(Pt,{error:()=>$a,info:()=>Ba,log:()=>Va,query:()=>ja,should:()=>Mi,tags:()=>xt,warn:()=>pn});u();c();p();m();d();l();var xt={error:Ge("prisma:error"),warn:gi("prisma:warn"),info:hi("prisma:info"),query:yi("prisma:query")},Mi={warn:()=>!g.env.PRISMA_DISABLE_WARNINGS};function Va(...t){console.log(...t)}function pn(t,...e){Mi.warn()&&console.warn(`${xt.warn} ${t}`,...e)}function Ba(t,...e){console.info(`${xt.info} ${t}`,...e)}function $a(t,...e){console.error(`${xt.error} ${t}`,...e)}function ja(t,...e){console.log(`${xt.query} ${t}`,...e)}u();c();p();m();d();l();function yr(t,e){if(!t)throw new Error(`${e}. This should never happen. If you see this error, please, open an issue at https://pris.ly/prisma-prisma-bug-report`)}u();c();p();m();d();l();function Fe(t,e){throw new Error(e)}u();c();p();m();d();l();u();c();p();m();d();l();function mn({onlyFirst:t=!1}={}){let r=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(r,t?void 0:"g")}var Qa=mn();function dn(t){if(typeof t!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof t}\``);return t.replace(Qa,"")}u();c();p();m();d();l();function fn(t,e){return Object.prototype.hasOwnProperty.call(t,e)}u();c();p();m();d();l();function hr(t,e){let r={};for(let n of Object.keys(t))r[n]=e(t[n],n);return r}u();c();p();m();d();l();function gn(t,e){if(t.length===0)return;let r=t[0];for(let n=1;n{Li.has(t)||(Li.add(t),pn(e,...r))};var M=class t extends Error{clientVersion;errorCode;retryable;constructor(e,r,n){super(e),this.name="PrismaClientInitializationError",this.clientVersion=r,this.errorCode=n,Error.captureStackTrace(t)}get[Symbol.toStringTag](){return"PrismaClientInitializationError"}};O(M,"PrismaClientInitializationError");u();c();p();m();d();l();var X=class extends Error{code;meta;clientVersion;batchRequestIdx;constructor(e,{code:r,clientVersion:n,meta:i,batchRequestIdx:o}){super(e),this.name="PrismaClientKnownRequestError",this.code=r,this.clientVersion=n,this.meta=i,Object.defineProperty(this,"batchRequestIdx",{value:o,enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return"PrismaClientKnownRequestError"}};O(X,"PrismaClientKnownRequestError");u();c();p();m();d();l();var Te=class extends Error{clientVersion;constructor(e,r){super(e),this.name="PrismaClientRustPanicError",this.clientVersion=r}get[Symbol.toStringTag](){return"PrismaClientRustPanicError"}};O(Te,"PrismaClientRustPanicError");u();c();p();m();d();l();var Q=class extends Error{clientVersion;batchRequestIdx;constructor(e,{clientVersion:r,batchRequestIdx:n}){super(e),this.name="PrismaClientUnknownRequestError",this.clientVersion=r,Object.defineProperty(this,"batchRequestIdx",{value:n,writable:!0,enumerable:!1})}get[Symbol.toStringTag](){return"PrismaClientUnknownRequestError"}};O(Q,"PrismaClientUnknownRequestError");u();c();p();m();d();l();var Y=class extends Error{name="PrismaClientValidationError";clientVersion;constructor(e,{clientVersion:r}){super(e),this.clientVersion=r}get[Symbol.toStringTag](){return"PrismaClientValidationError"}};O(Y,"PrismaClientValidationError");u();c();p();m();d();l();u();c();p();m();d();l();u();c();p();m();d();l();var fe=class{_map=new Map;get(e){return this._map.get(e)?.value}set(e,r){this._map.set(e,{value:r})}getOrCreate(e,r){let n=this._map.get(e);if(n)return n.value;let i=r();return this.set(e,i),i}};u();c();p();m();d();l();function Ce(t){return t.substring(0,1).toLowerCase()+t.substring(1)}u();c();p();m();d();l();function Ni(t,e){let r={};for(let n of t){let i=n[e];r[i]=n}return r}u();c();p();m();d();l();function vt(t){let e;return{get(){return e||(e={value:t()}),e.value}}}u();c();p();m();d();l();function Ui(t){return{models:yn(t.models),enums:yn(t.enums),types:yn(t.types)}}function yn(t){let e={};for(let{name:r,...n}of t)e[r]=n;return e}u();c();p();m();d();l();function We(t){return t instanceof Date||Object.prototype.toString.call(t)==="[object Date]"}function br(t){return t.toString()!=="Invalid Date"}u();c();p();m();d();l();l();function Ke(t){return P.isDecimal(t)?!0:t!==null&&typeof t=="object"&&typeof t.s=="number"&&typeof t.e=="number"&&typeof t.toFixed=="function"&&Array.isArray(t.d)}u();c();p();m();d();l();u();c();p();m();d();l();var At={};ht(At,{ModelAction:()=>Rt,datamodelEnumToSchemaEnum:()=>Ga});u();c();p();m();d();l();u();c();p();m();d();l();function Ga(t){return{name:t.name,values:t.values.map(e=>e.name)}}u();c();p();m();d();l();var Rt=(U=>(U.findUnique="findUnique",U.findUniqueOrThrow="findUniqueOrThrow",U.findFirst="findFirst",U.findFirstOrThrow="findFirstOrThrow",U.findMany="findMany",U.create="create",U.createMany="createMany",U.createManyAndReturn="createManyAndReturn",U.update="update",U.updateMany="updateMany",U.updateManyAndReturn="updateManyAndReturn",U.upsert="upsert",U.delete="delete",U.deleteMany="deleteMany",U.groupBy="groupBy",U.count="count",U.aggregate="aggregate",U.findRaw="findRaw",U.aggregateRaw="aggregateRaw",U))(Rt||{});var Ja=bt(_i());var Wa={red:Ge,gray:bi,dim:lr,bold:ar,underline:di,highlightSource:t=>t.highlight()},Ka={red:t=>t,gray:t=>t,dim:t=>t,bold:t=>t,underline:t=>t,highlightSource:t=>t};function Ha({message:t,originalMethod:e,isPanic:r,callArguments:n}){return{functionName:`prisma.${e}()`,message:t,isPanic:r??!1,callArguments:n}}function za({functionName:t,location:e,message:r,isPanic:n,contextLines:i,callArguments:o},s){let a=[""],f=e?" in":":";if(n?(a.push(s.red(`Oops, an unknown error occurred! This is ${s.bold("on us")}, you did nothing wrong.`)),a.push(s.red(`It occurred in the ${s.bold(`\`${t}\``)} invocation${f}`))):a.push(s.red(`Invalid ${s.bold(`\`${t}\``)} invocation${f}`)),e&&a.push(s.underline(Ya(e))),i){a.push("");let v=[i.toString()];o&&(v.push(o),v.push(s.dim(")"))),a.push(v.join("")),o&&a.push("")}else a.push(""),o&&a.push(o),a.push("");return a.push(r),a.join(` +`)}function Ya(t){let e=[t.fileName];return t.lineNumber&&e.push(String(t.lineNumber)),t.columnNumber&&e.push(String(t.columnNumber)),e.join(":")}function Er(t){let e=t.showColors?Wa:Ka,r;return typeof $getTemplateParameters<"u"?r=$getTemplateParameters(t,e):r=Ha(t),za(r,e)}u();c();p();m();d();l();var Wi=bt(hn());u();c();p();m();d();l();function $i(t,e,r){let n=ji(t),i=Xa(n),o=el(i);o?wr(o,e,r):e.addErrorMessage(()=>"Unknown error")}function ji(t){return t.errors.flatMap(e=>e.kind==="Union"?ji(e):[e])}function Xa(t){let e=new Map,r=[];for(let n of t){if(n.kind!=="InvalidArgumentType"){r.push(n);continue}let i=`${n.selectionPath.join(".")}:${n.argumentPath.join(".")}`,o=e.get(i);o?e.set(i,{...n,argument:{...n.argument,typeNames:Za(o.argument.typeNames,n.argument.typeNames)}}):e.set(i,n)}return r.push(...e.values()),r}function Za(t,e){return[...new Set(t.concat(e))]}function el(t){return gn(t,(e,r)=>{let n=Vi(e),i=Vi(r);return n!==i?n-i:Bi(e)-Bi(r)})}function Vi(t){let e=0;return Array.isArray(t.selectionPath)&&(e+=t.selectionPath.length),Array.isArray(t.argumentPath)&&(e+=t.argumentPath.length),e}function Bi(t){switch(t.kind){case"InvalidArgumentValue":case"ValueTooLarge":return 20;case"InvalidArgumentType":return 10;case"RequiredArgumentMissing":return-10;default:return 0}}u();c();p();m();d();l();var se=class{constructor(e,r){this.name=e;this.value=r}isRequired=!1;makeRequired(){return this.isRequired=!0,this}write(e){let{colors:{green:r}}=e.context;e.addMarginSymbol(r(this.isRequired?"+":"?")),e.write(r(this.name)),this.isRequired||e.write(r("?")),e.write(r(": ")),typeof this.value=="string"?e.write(r(this.value)):e.write(this.value)}};u();c();p();m();d();l();u();c();p();m();d();l();Gi();u();c();p();m();d();l();var He=class{constructor(e=0,r){this.context=r;this.currentIndent=e}lines=[];currentLine="";currentIndent=0;marginSymbol;afterNextNewLineCallback;write(e){return typeof e=="string"?this.currentLine+=e:e.write(this),this}writeJoined(e,r,n=(i,o)=>o.write(i)){let i=r.length-1;for(let o=0;o0&&this.currentIndent--,this}addMarginSymbol(e){return this.marginSymbol=e,this}toString(){return this.lines.concat(this.indentedCurrentLine()).join(` +`)}getCurrentLineLength(){return this.currentLine.length}indentedCurrentLine(){let e=this.currentLine.padStart(this.currentLine.length+2*this.currentIndent);return this.marginSymbol?this.marginSymbol+e.slice(1):e}};Qi();u();c();p();m();d();l();u();c();p();m();d();l();var xr=class{constructor(e){this.value=e}write(e){e.write(this.value)}markAsError(){this.value.markAsError()}};u();c();p();m();d();l();var Pr=t=>t,Tr={bold:Pr,red:Pr,green:Pr,dim:Pr,enabled:!1},Ji={bold:ar,red:Ge,green:fi,dim:lr,enabled:!0},ze={write(t){t.writeLine(",")}};u();c();p();m();d();l();var ge=class{constructor(e){this.contents=e}isUnderlined=!1;color=e=>e;underline(){return this.isUnderlined=!0,this}setColor(e){return this.color=e,this}write(e){let r=e.getCurrentLineLength();e.write(this.color(this.contents)),this.isUnderlined&&e.afterNextNewline(()=>{e.write(" ".repeat(r)).writeLine(this.color("~".repeat(this.contents.length)))})}};u();c();p();m();d();l();var Se=class{hasError=!1;markAsError(){return this.hasError=!0,this}};var Ye=class extends Se{items=[];addItem(e){return this.items.push(new xr(e)),this}getField(e){return this.items[e]}getPrintWidth(){return this.items.length===0?2:Math.max(...this.items.map(r=>r.value.getPrintWidth()))+2}write(e){if(this.items.length===0){this.writeEmpty(e);return}this.writeWithItems(e)}writeEmpty(e){let r=new ge("[]");this.hasError&&r.setColor(e.context.colors.red).underline(),e.write(r)}writeWithItems(e){let{colors:r}=e.context;e.writeLine("[").withIndent(()=>e.writeJoined(ze,this.items).newLine()).write("]"),this.hasError&&e.afterNextNewline(()=>{e.writeLine(r.red("~".repeat(this.getPrintWidth())))})}asObject(){}};var Xe=class t extends Se{fields={};suggestions=[];addField(e){this.fields[e.name]=e}addSuggestion(e){this.suggestions.push(e)}getField(e){return this.fields[e]}getDeepField(e){let[r,...n]=e,i=this.getField(r);if(!i)return;let o=i;for(let s of n){let a;if(o.value instanceof t?a=o.value.getField(s):o.value instanceof Ye&&(a=o.value.getField(Number(s))),!a)return;o=a}return o}getDeepFieldValue(e){return e.length===0?this:this.getDeepField(e)?.value}hasField(e){return!!this.getField(e)}removeAllFields(){this.fields={}}removeField(e){delete this.fields[e]}getFields(){return this.fields}isEmpty(){return Object.keys(this.fields).length===0}getFieldValue(e){return this.getField(e)?.value}getDeepSubSelectionValue(e){let r=this;for(let n of e){if(!(r instanceof t))return;let i=r.getSubSelectionValue(n);if(!i)return;r=i}return r}getDeepSelectionParent(e){let r=this.getSelectionParent();if(!r)return;let n=r;for(let i of e){let o=n.value.getFieldValue(i);if(!o||!(o instanceof t))return;let s=o.getSelectionParent();if(!s)return;n=s}return n}getSelectionParent(){let e=this.getField("select")?.value.asObject();if(e)return{kind:"select",value:e};let r=this.getField("include")?.value.asObject();if(r)return{kind:"include",value:r}}getSubSelectionValue(e){return this.getSelectionParent()?.value.fields[e].value}getPrintWidth(){let e=Object.values(this.fields);return e.length==0?2:Math.max(...e.map(n=>n.getPrintWidth()))+2}write(e){let r=Object.values(this.fields);if(r.length===0&&this.suggestions.length===0){this.writeEmpty(e);return}this.writeWithContents(e,r)}asObject(){return this}writeEmpty(e){let r=new ge("{}");this.hasError&&r.setColor(e.context.colors.red).underline(),e.write(r)}writeWithContents(e,r){e.writeLine("{").withIndent(()=>{e.writeJoined(ze,[...r,...this.suggestions]).newLine()}),e.write("}"),this.hasError&&e.afterNextNewline(()=>{e.writeLine(e.context.colors.red("~".repeat(this.getPrintWidth())))})}};u();c();p();m();d();l();var z=class extends Se{constructor(r){super();this.text=r}getPrintWidth(){return this.text.length}write(r){let n=new ge(this.text);this.hasError&&n.underline().setColor(r.context.colors.red),r.write(n)}asObject(){}};u();c();p();m();d();l();var Ct=class{fields=[];addField(e,r){return this.fields.push({write(n){let{green:i,dim:o}=n.context.colors;n.write(i(o(`${e}: ${r}`))).addMarginSymbol(i(o("+")))}}),this}write(e){let{colors:{green:r}}=e.context;e.writeLine(r("{")).withIndent(()=>{e.writeJoined(ze,this.fields).newLine()}).write(r("}")).addMarginSymbol(r("+"))}};function wr(t,e,r){switch(t.kind){case"MutuallyExclusiveFields":tl(t,e);break;case"IncludeOnScalar":rl(t,e);break;case"EmptySelection":nl(t,e,r);break;case"UnknownSelectionField":al(t,e);break;case"InvalidSelectionValue":ll(t,e);break;case"UnknownArgument":ul(t,e);break;case"UnknownInputField":cl(t,e);break;case"RequiredArgumentMissing":pl(t,e);break;case"InvalidArgumentType":ml(t,e);break;case"InvalidArgumentValue":dl(t,e);break;case"ValueTooLarge":fl(t,e);break;case"SomeFieldsMissing":gl(t,e);break;case"TooManyFieldsGiven":yl(t,e);break;case"Union":$i(t,e,r);break;default:throw new Error("not implemented: "+t.kind)}}function tl(t,e){let r=e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject();r&&(r.getField(t.firstField)?.markAsError(),r.getField(t.secondField)?.markAsError()),e.addErrorMessage(n=>`Please ${n.bold("either")} use ${n.green(`\`${t.firstField}\``)} or ${n.green(`\`${t.secondField}\``)}, but ${n.red("not both")} at the same time.`)}function rl(t,e){let[r,n]=Ze(t.selectionPath),i=t.outputType,o=e.arguments.getDeepSelectionParent(r)?.value;if(o&&(o.getField(n)?.markAsError(),i))for(let s of i.fields)s.isRelation&&o.addSuggestion(new se(s.name,"true"));e.addErrorMessage(s=>{let a=`Invalid scalar field ${s.red(`\`${n}\``)} for ${s.bold("include")} statement`;return i?a+=` on model ${s.bold(i.name)}. ${St(s)}`:a+=".",a+=` +Note that ${s.bold("include")} statements only accept relation fields.`,a})}function nl(t,e,r){let n=e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject();if(n){let i=n.getField("omit")?.value.asObject();if(i){il(t,e,i);return}if(n.hasField("select")){ol(t,e);return}}if(r?.[Ce(t.outputType.name)]){sl(t,e);return}e.addErrorMessage(()=>`Unknown field at "${t.selectionPath.join(".")} selection"`)}function il(t,e,r){r.removeAllFields();for(let n of t.outputType.fields)r.addSuggestion(new se(n.name,"false"));e.addErrorMessage(n=>`The ${n.red("omit")} statement includes every field of the model ${n.bold(t.outputType.name)}. At least one field must be included in the result`)}function ol(t,e){let r=t.outputType,n=e.arguments.getDeepSelectionParent(t.selectionPath)?.value,i=n?.isEmpty()??!1;n&&(n.removeAllFields(),zi(n,r)),e.addErrorMessage(o=>i?`The ${o.red("`select`")} statement for type ${o.bold(r.name)} must not be empty. ${St(o)}`:`The ${o.red("`select`")} statement for type ${o.bold(r.name)} needs ${o.bold("at least one truthy value")}.`)}function sl(t,e){let r=new Ct;for(let i of t.outputType.fields)i.isRelation||r.addField(i.name,"false");let n=new se("omit",r).makeRequired();if(t.selectionPath.length===0)e.arguments.addSuggestion(n);else{let[i,o]=Ze(t.selectionPath),a=e.arguments.getDeepSelectionParent(i)?.value.asObject()?.getField(o);if(a){let f=a?.value.asObject()??new Xe;f.addSuggestion(n),a.value=f}}e.addErrorMessage(i=>`The global ${i.red("omit")} configuration excludes every field of the model ${i.bold(t.outputType.name)}. At least one field must be included in the result`)}function al(t,e){let r=Yi(t.selectionPath,e);if(r.parentKind!=="unknown"){r.field.markAsError();let n=r.parent;switch(r.parentKind){case"select":zi(n,t.outputType);break;case"include":hl(n,t.outputType);break;case"omit":bl(n,t.outputType);break}}e.addErrorMessage(n=>{let i=[`Unknown field ${n.red(`\`${r.fieldName}\``)}`];return r.parentKind!=="unknown"&&i.push(`for ${n.bold(r.parentKind)} statement`),i.push(`on model ${n.bold(`\`${t.outputType.name}\``)}.`),i.push(St(n)),i.join(" ")})}function ll(t,e){let r=Yi(t.selectionPath,e);r.parentKind!=="unknown"&&r.field.value.markAsError(),e.addErrorMessage(n=>`Invalid value for selection field \`${n.red(r.fieldName)}\`: ${t.underlyingError}`)}function ul(t,e){let r=t.argumentPath[0],n=e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject();n&&(n.getField(r)?.markAsError(),El(n,t.arguments)),e.addErrorMessage(i=>Ki(i,r,t.arguments.map(o=>o.name)))}function cl(t,e){let[r,n]=Ze(t.argumentPath),i=e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject();if(i){i.getDeepField(t.argumentPath)?.markAsError();let o=i.getDeepFieldValue(r)?.asObject();o&&Xi(o,t.inputType)}e.addErrorMessage(o=>Ki(o,n,t.inputType.fields.map(s=>s.name)))}function Ki(t,e,r){let n=[`Unknown argument \`${t.red(e)}\`.`],i=xl(e,r);return i&&n.push(`Did you mean \`${t.green(i)}\`?`),r.length>0&&n.push(St(t)),n.join(" ")}function pl(t,e){let r;e.addErrorMessage(f=>r?.value instanceof z&&r.value.text==="null"?`Argument \`${f.green(o)}\` must not be ${f.red("null")}.`:`Argument \`${f.green(o)}\` is missing.`);let n=e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject();if(!n)return;let[i,o]=Ze(t.argumentPath),s=new Ct,a=n.getDeepFieldValue(i)?.asObject();if(a){if(r=a.getField(o),r&&a.removeField(o),t.inputTypes.length===1&&t.inputTypes[0].kind==="object"){for(let f of t.inputTypes[0].fields)s.addField(f.name,f.typeNames.join(" | "));a.addSuggestion(new se(o,s).makeRequired())}else{let f=t.inputTypes.map(Hi).join(" | ");a.addSuggestion(new se(o,f).makeRequired())}if(t.dependentArgumentPath){n.getDeepField(t.dependentArgumentPath)?.markAsError();let[,f]=Ze(t.dependentArgumentPath);e.addErrorMessage(v=>`Argument \`${v.green(o)}\` is required because argument \`${v.green(f)}\` was provided.`)}}}function Hi(t){return t.kind==="list"?`${Hi(t.elementType)}[]`:t.name}function ml(t,e){let r=t.argument.name,n=e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject();n&&n.getDeepFieldValue(t.argumentPath)?.markAsError(),e.addErrorMessage(i=>{let o=vr("or",t.argument.typeNames.map(s=>i.green(s)));return`Argument \`${i.bold(r)}\`: Invalid value provided. Expected ${o}, provided ${i.red(t.inferredType)}.`})}function dl(t,e){let r=t.argument.name,n=e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject();n&&n.getDeepFieldValue(t.argumentPath)?.markAsError(),e.addErrorMessage(i=>{let o=[`Invalid value for argument \`${i.bold(r)}\``];if(t.underlyingError&&o.push(`: ${t.underlyingError}`),o.push("."),t.argument.typeNames.length>0){let s=vr("or",t.argument.typeNames.map(a=>i.green(a)));o.push(` Expected ${s}.`)}return o.join("")})}function fl(t,e){let r=t.argument.name,n=e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject(),i;if(n){let s=n.getDeepField(t.argumentPath)?.value;s?.markAsError(),s instanceof z&&(i=s.text)}e.addErrorMessage(o=>{let s=["Unable to fit value"];return i&&s.push(o.red(i)),s.push(`into a 64-bit signed integer for field \`${o.bold(r)}\``),s.join(" ")})}function gl(t,e){let r=t.argumentPath[t.argumentPath.length-1],n=e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject();if(n){let i=n.getDeepFieldValue(t.argumentPath)?.asObject();i&&Xi(i,t.inputType)}e.addErrorMessage(i=>{let o=[`Argument \`${i.bold(r)}\` of type ${i.bold(t.inputType.name)} needs`];return t.constraints.minFieldCount===1?t.constraints.requiredFields?o.push(`${i.green("at least one of")} ${vr("or",t.constraints.requiredFields.map(s=>`\`${i.bold(s)}\``))} arguments.`):o.push(`${i.green("at least one")} argument.`):o.push(`${i.green(`at least ${t.constraints.minFieldCount}`)} arguments.`),o.push(St(i)),o.join(" ")})}function yl(t,e){let r=t.argumentPath[t.argumentPath.length-1],n=e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject(),i=[];if(n){let o=n.getDeepFieldValue(t.argumentPath)?.asObject();o&&(o.markAsError(),i=Object.keys(o.getFields()))}e.addErrorMessage(o=>{let s=[`Argument \`${o.bold(r)}\` of type ${o.bold(t.inputType.name)} needs`];return t.constraints.minFieldCount===1&&t.constraints.maxFieldCount==1?s.push(`${o.green("exactly one")} argument,`):t.constraints.maxFieldCount==1?s.push(`${o.green("at most one")} argument,`):s.push(`${o.green(`at most ${t.constraints.maxFieldCount}`)} arguments,`),s.push(`but you provided ${vr("and",i.map(a=>o.red(a)))}. Please choose`),t.constraints.maxFieldCount===1?s.push("one."):s.push(`${t.constraints.maxFieldCount}.`),s.join(" ")})}function zi(t,e){for(let r of e.fields)t.hasField(r.name)||t.addSuggestion(new se(r.name,"true"))}function hl(t,e){for(let r of e.fields)r.isRelation&&!t.hasField(r.name)&&t.addSuggestion(new se(r.name,"true"))}function bl(t,e){for(let r of e.fields)!t.hasField(r.name)&&!r.isRelation&&t.addSuggestion(new se(r.name,"true"))}function El(t,e){for(let r of e)t.hasField(r.name)||t.addSuggestion(new se(r.name,r.typeNames.join(" | ")))}function Yi(t,e){let[r,n]=Ze(t),i=e.arguments.getDeepSubSelectionValue(r)?.asObject();if(!i)return{parentKind:"unknown",fieldName:n};let o=i.getFieldValue("select")?.asObject(),s=i.getFieldValue("include")?.asObject(),a=i.getFieldValue("omit")?.asObject(),f=o?.getField(n);return o&&f?{parentKind:"select",parent:o,field:f,fieldName:n}:(f=s?.getField(n),s&&f?{parentKind:"include",field:f,parent:s,fieldName:n}:(f=a?.getField(n),a&&f?{parentKind:"omit",field:f,parent:a,fieldName:n}:{parentKind:"unknown",fieldName:n}))}function Xi(t,e){if(e.kind==="object")for(let r of e.fields)t.hasField(r.name)||t.addSuggestion(new se(r.name,r.typeNames.join(" | ")))}function Ze(t){let e=[...t],r=e.pop();if(!r)throw new Error("unexpected empty path");return[e,r]}function St({green:t,enabled:e}){return"Available options are "+(e?`listed in ${t("green")}`:"marked with ?")+"."}function vr(t,e){if(e.length===1)return e[0];let r=[...e],n=r.pop();return`${r.join(", ")} ${t} ${n}`}var wl=3;function xl(t,e){let r=1/0,n;for(let i of e){let o=(0,Wi.default)(t,i);o>wl||o`}};function et(t){return t instanceof It}u();c();p();m();d();l();var Rr=Symbol(),En=new WeakMap,ve=class{constructor(e){e===Rr?En.set(this,`Prisma.${this._getName()}`):En.set(this,`new Prisma.${this._getNamespace()}.${this._getName()}()`)}_getName(){return this.constructor.name}toString(){return En.get(this)}},Dt=class extends ve{_getNamespace(){return"NullTypes"}},Ot=class extends Dt{#e};wn(Ot,"DbNull");var kt=class extends Dt{#e};wn(kt,"JsonNull");var _t=class extends Dt{#e};wn(_t,"AnyNull");var Ar={classes:{DbNull:Ot,JsonNull:kt,AnyNull:_t},instances:{DbNull:new Ot(Rr),JsonNull:new kt(Rr),AnyNull:new _t(Rr)}};function wn(t,e){Object.defineProperty(t,"name",{value:e,configurable:!0})}u();c();p();m();d();l();var Zi=": ",Cr=class{constructor(e,r){this.name=e;this.value=r}hasError=!1;markAsError(){this.hasError=!0}getPrintWidth(){return this.name.length+this.value.getPrintWidth()+Zi.length}write(e){let r=new ge(this.name);this.hasError&&r.underline().setColor(e.context.colors.red),e.write(r).write(Zi).write(this.value)}};var xn=class{arguments;errorMessages=[];constructor(e){this.arguments=e}write(e){e.write(this.arguments)}addErrorMessage(e){this.errorMessages.push(e)}renderAllMessages(e){return this.errorMessages.map(r=>r(e)).join(` +`)}};function tt(t){return new xn(eo(t))}function eo(t){let e=new Xe;for(let[r,n]of Object.entries(t)){let i=new Cr(r,to(n));e.addField(i)}return e}function to(t){if(typeof t=="string")return new z(JSON.stringify(t));if(typeof t=="number"||typeof t=="boolean")return new z(String(t));if(typeof t=="bigint")return new z(`${t}n`);if(t===null)return new z("null");if(t===void 0)return new z("undefined");if(Ke(t))return new z(`new Prisma.Decimal("${t.toFixed()}")`);if(t instanceof Uint8Array)return h.isBuffer(t)?new z(`Buffer.alloc(${t.byteLength})`):new z(`new Uint8Array(${t.byteLength})`);if(t instanceof Date){let e=br(t)?t.toISOString():"Invalid Date";return new z(`new Date("${e}")`)}return t instanceof ve?new z(`Prisma.${t._getName()}`):et(t)?new z(`prisma.${Ce(t.modelName)}.$fields.${t.name}`):Array.isArray(t)?Pl(t):typeof t=="object"?eo(t):new z(Object.prototype.toString.call(t))}function Pl(t){let e=new Ye;for(let r of t)e.addItem(to(r));return e}function Sr(t,e){let r=e==="pretty"?Ji:Tr,n=t.renderAllMessages(r),i=new He(0,{colors:r}).write(t).toString();return{message:n,args:i}}function Ir({args:t,errors:e,errorFormat:r,callsite:n,originalMethod:i,clientVersion:o,globalOmit:s}){let a=tt(t);for(let A of e)wr(A,a,s);let{message:f,args:v}=Sr(a,r),R=Er({message:f,callsite:n,originalMethod:i,showColors:r==="pretty",callArguments:v});throw new Y(R,{clientVersion:o})}u();c();p();m();d();l();u();c();p();m();d();l();function ye(t){return t.replace(/^./,e=>e.toLowerCase())}u();c();p();m();d();l();function no(t,e,r){let n=ye(r);return!e.result||!(e.result.$allModels||e.result[n])?t:Tl({...t,...ro(e.name,t,e.result.$allModels),...ro(e.name,t,e.result[n])})}function Tl(t){let e=new fe,r=(n,i)=>e.getOrCreate(n,()=>i.has(n)?[n]:(i.add(n),t[n]?t[n].needs.flatMap(o=>r(o,i)):[n]));return hr(t,n=>({...n,needs:r(n.name,new Set)}))}function ro(t,e,r){return r?hr(r,({needs:n,compute:i},o)=>({name:o,needs:n?Object.keys(n).filter(s=>n[s]):[],compute:vl(e,o,i)})):{}}function vl(t,e,r){let n=t?.[e]?.compute;return n?i=>r({...i,[e]:n(i)}):r}function io(t,e){if(!e)return t;let r={...t};for(let n of Object.values(e))if(t[n.name])for(let i of n.needs)r[i]=!0;return r}function oo(t,e){if(!e)return t;let r={...t};for(let n of Object.values(e))if(!t[n.name])for(let i of n.needs)delete r[i];return r}var Dr=class{constructor(e,r){this.extension=e;this.previous=r}computedFieldsCache=new fe;modelExtensionsCache=new fe;queryCallbacksCache=new fe;clientExtensions=vt(()=>this.extension.client?{...this.previous?.getAllClientExtensions(),...this.extension.client}:this.previous?.getAllClientExtensions());batchCallbacks=vt(()=>{let e=this.previous?.getAllBatchQueryCallbacks()??[],r=this.extension.query?.$__internalBatch;return r?e.concat(r):e});getAllComputedFields(e){return this.computedFieldsCache.getOrCreate(e,()=>no(this.previous?.getAllComputedFields(e),this.extension,e))}getAllClientExtensions(){return this.clientExtensions.get()}getAllModelExtensions(e){return this.modelExtensionsCache.getOrCreate(e,()=>{let r=ye(e);return!this.extension.model||!(this.extension.model[r]||this.extension.model.$allModels)?this.previous?.getAllModelExtensions(e):{...this.previous?.getAllModelExtensions(e),...this.extension.model.$allModels,...this.extension.model[r]}})}getAllQueryCallbacks(e,r){return this.queryCallbacksCache.getOrCreate(`${e}:${r}`,()=>{let n=this.previous?.getAllQueryCallbacks(e,r)??[],i=[],o=this.extension.query;return!o||!(o[e]||o.$allModels||o[r]||o.$allOperations)?n:(o[e]!==void 0&&(o[e][r]!==void 0&&i.push(o[e][r]),o[e].$allOperations!==void 0&&i.push(o[e].$allOperations)),e!=="$none"&&o.$allModels!==void 0&&(o.$allModels[r]!==void 0&&i.push(o.$allModels[r]),o.$allModels.$allOperations!==void 0&&i.push(o.$allModels.$allOperations)),o[r]!==void 0&&i.push(o[r]),o.$allOperations!==void 0&&i.push(o.$allOperations),n.concat(i))})}getAllBatchQueryCallbacks(){return this.batchCallbacks.get()}},rt=class t{constructor(e){this.head=e}static empty(){return new t}static single(e){return new t(new Dr(e))}isEmpty(){return this.head===void 0}append(e){return new t(new Dr(e,this.head))}getAllComputedFields(e){return this.head?.getAllComputedFields(e)}getAllClientExtensions(){return this.head?.getAllClientExtensions()}getAllModelExtensions(e){return this.head?.getAllModelExtensions(e)}getAllQueryCallbacks(e,r){return this.head?.getAllQueryCallbacks(e,r)??[]}getAllBatchQueryCallbacks(){return this.head?.getAllBatchQueryCallbacks()??[]}};u();c();p();m();d();l();var Or=class{constructor(e){this.name=e}};function so(t){return t instanceof Or}function ao(t){return new Or(t)}u();c();p();m();d();l();u();c();p();m();d();l();var lo=Symbol(),Mt=class{constructor(e){if(e!==lo)throw new Error("Skip instance can not be constructed directly")}ifUndefined(e){return e===void 0?kr:e}},kr=new Mt(lo);function he(t){return t instanceof Mt}var Rl={findUnique:"findUnique",findUniqueOrThrow:"findUniqueOrThrow",findFirst:"findFirst",findFirstOrThrow:"findFirstOrThrow",findMany:"findMany",count:"aggregate",create:"createOne",createMany:"createMany",createManyAndReturn:"createManyAndReturn",update:"updateOne",updateMany:"updateMany",updateManyAndReturn:"updateManyAndReturn",upsert:"upsertOne",delete:"deleteOne",deleteMany:"deleteMany",executeRaw:"executeRaw",queryRaw:"queryRaw",aggregate:"aggregate",groupBy:"groupBy",runCommandRaw:"runCommandRaw",findRaw:"findRaw",aggregateRaw:"aggregateRaw"},uo="explicitly `undefined` values are not allowed";function _r({modelName:t,action:e,args:r,runtimeDataModel:n,extensions:i=rt.empty(),callsite:o,clientMethod:s,errorFormat:a,clientVersion:f,previewFeatures:v,globalOmit:R}){let A=new Pn({runtimeDataModel:n,modelName:t,action:e,rootArgs:r,callsite:o,extensions:i,selectionPath:[],argumentPath:[],originalMethod:s,errorFormat:a,clientVersion:f,previewFeatures:v,globalOmit:R});return{modelName:t,action:Rl[e],query:Lt(r,A)}}function Lt({select:t,include:e,...r}={},n){let i=r.omit;return delete r.omit,{arguments:po(r,n),selection:Al(t,e,i,n)}}function Al(t,e,r,n){return t?(e?n.throwValidationError({kind:"MutuallyExclusiveFields",firstField:"include",secondField:"select",selectionPath:n.getSelectionPath()}):r&&n.throwValidationError({kind:"MutuallyExclusiveFields",firstField:"omit",secondField:"select",selectionPath:n.getSelectionPath()}),Dl(t,n)):Cl(n,e,r)}function Cl(t,e,r){let n={};return t.modelOrType&&!t.isRawAction()&&(n.$composites=!0,n.$scalars=!0),e&&Sl(n,e,t),Il(n,r,t),n}function Sl(t,e,r){for(let[n,i]of Object.entries(e)){if(he(i))continue;let o=r.nestSelection(n);if(Tn(i,o),i===!1||i===void 0){t[n]=!1;continue}let s=r.findField(n);if(s&&s.kind!=="object"&&r.throwValidationError({kind:"IncludeOnScalar",selectionPath:r.getSelectionPath().concat(n),outputType:r.getOutputTypeDescription()}),s){t[n]=Lt(i===!0?{}:i,o);continue}if(i===!0){t[n]=!0;continue}t[n]=Lt(i,o)}}function Il(t,e,r){let n=r.getComputedFields(),i={...r.getGlobalOmit(),...e},o=oo(i,n);for(let[s,a]of Object.entries(o)){if(he(a))continue;Tn(a,r.nestSelection(s));let f=r.findField(s);n?.[s]&&!f||(t[s]=!a)}}function Dl(t,e){let r={},n=e.getComputedFields(),i=io(t,n);for(let[o,s]of Object.entries(i)){if(he(s))continue;let a=e.nestSelection(o);Tn(s,a);let f=e.findField(o);if(!(n?.[o]&&!f)){if(s===!1||s===void 0||he(s)){r[o]=!1;continue}if(s===!0){f?.kind==="object"?r[o]=Lt({},a):r[o]=!0;continue}r[o]=Lt(s,a)}}return r}function co(t,e){if(t===null)return null;if(typeof t=="string"||typeof t=="number"||typeof t=="boolean")return t;if(typeof t=="bigint")return{$type:"BigInt",value:String(t)};if(We(t)){if(br(t))return{$type:"DateTime",value:t.toISOString()};e.throwValidationError({kind:"InvalidArgumentValue",selectionPath:e.getSelectionPath(),argumentPath:e.getArgumentPath(),argument:{name:e.getArgumentName(),typeNames:["Date"]},underlyingError:"Provided Date object is invalid"})}if(so(t))return{$type:"Param",value:t.name};if(et(t))return{$type:"FieldRef",value:{_ref:t.name,_container:t.modelName}};if(Array.isArray(t))return Ol(t,e);if(ArrayBuffer.isView(t)){let{buffer:r,byteOffset:n,byteLength:i}=t;return{$type:"Bytes",value:h.from(r,n,i).toString("base64")}}if(kl(t))return t.values;if(Ke(t))return{$type:"Decimal",value:t.toFixed()};if(t instanceof ve){if(t!==Ar.instances[t._getName()])throw new Error("Invalid ObjectEnumValue");return{$type:"Enum",value:t._getName()}}if(_l(t))return t.toJSON();if(typeof t=="object")return po(t,e);e.throwValidationError({kind:"InvalidArgumentValue",selectionPath:e.getSelectionPath(),argumentPath:e.getArgumentPath(),argument:{name:e.getArgumentName(),typeNames:[]},underlyingError:`We could not serialize ${Object.prototype.toString.call(t)} value. Serialize the object to JSON or implement a ".toJSON()" method on it`})}function po(t,e){if(t.$type)return{$type:"Raw",value:t};let r={};for(let n in t){let i=t[n],o=e.nestArgument(n);he(i)||(i!==void 0?r[n]=co(i,o):e.isPreviewFeatureOn("strictUndefinedChecks")&&e.throwValidationError({kind:"InvalidArgumentValue",argumentPath:o.getArgumentPath(),selectionPath:e.getSelectionPath(),argument:{name:e.getArgumentName(),typeNames:[]},underlyingError:uo}))}return r}function Ol(t,e){let r=[];for(let n=0;n({name:e.name,typeName:"boolean",isRelation:e.kind==="object"}))}}isRawAction(){return["executeRaw","queryRaw","runCommandRaw","findRaw","aggregateRaw"].includes(this.params.action)}isPreviewFeatureOn(e){return this.params.previewFeatures.includes(e)}getComputedFields(){if(this.params.modelName)return this.params.extensions.getAllComputedFields(this.params.modelName)}findField(e){return this.modelOrType?.fields.find(r=>r.name===e)}nestSelection(e){let r=this.findField(e),n=r?.kind==="object"?r.type:void 0;return new t({...this.params,modelName:n,selectionPath:this.params.selectionPath.concat(e)})}getGlobalOmit(){return this.params.modelName&&this.shouldApplyGlobalOmit()?this.params.globalOmit?.[Ce(this.params.modelName)]??{}:{}}shouldApplyGlobalOmit(){switch(this.params.action){case"findFirst":case"findFirstOrThrow":case"findUniqueOrThrow":case"findMany":case"upsert":case"findUnique":case"createManyAndReturn":case"create":case"update":case"updateManyAndReturn":case"delete":return!0;case"executeRaw":case"aggregateRaw":case"runCommandRaw":case"findRaw":case"createMany":case"deleteMany":case"groupBy":case"updateMany":case"count":case"aggregate":case"queryRaw":return!1;default:Fe(this.params.action,"Unknown action")}}nestArgument(e){return new t({...this.params,argumentPath:this.params.argumentPath.concat(e)})}};u();c();p();m();d();l();function mo(t){if(!t._hasPreviewFlag("metrics"))throw new Y("`metrics` preview feature must be enabled in order to access metrics API",{clientVersion:t._clientVersion})}var nt=class{_client;constructor(e){this._client=e}prometheus(e){return mo(this._client),this._client._engine.metrics({format:"prometheus",...e})}json(e){return mo(this._client),this._client._engine.metrics({format:"json",...e})}};u();c();p();m();d();l();function fo(t,e){let r=vt(()=>Ml(e));Object.defineProperty(t,"dmmf",{get:()=>r.get()})}function Ml(t){throw new Error("Prisma.dmmf is not available when running in edge runtimes.")}function vn(t){return Object.entries(t).map(([e,r])=>({name:e,...r}))}u();c();p();m();d();l();var Rn=new WeakMap,Mr="$$PrismaTypedSql",Ft=class{constructor(e,r){Rn.set(this,{sql:e,values:r}),Object.defineProperty(this,Mr,{value:Mr})}get sql(){return Rn.get(this).sql}get values(){return Rn.get(this).values}};function go(t){return(...e)=>new Ft(t,e)}function Lr(t){return t!=null&&t[Mr]===Mr}u();c();p();m();d();l();var Ls=bt(un());u();c();p();m();d();l();yo();Ti();Si();u();c();p();m();d();l();var ne=class t{constructor(e,r){if(e.length-1!==r.length)throw e.length===0?new TypeError("Expected at least 1 string"):new TypeError(`Expected ${e.length} strings to have ${e.length-1} values`);let n=r.reduce((s,a)=>s+(a instanceof t?a.values.length:1),0);this.values=new Array(n),this.strings=new Array(n+1),this.strings[0]=e[0];let i=0,o=0;for(;it.getPropertyValue(r))},getPropertyDescriptor(r){return t.getPropertyDescriptor?.(r)}}}u();c();p();m();d();l();u();c();p();m();d();l();var Nr={enumerable:!0,configurable:!0,writable:!0};function Ur(t){let e=new Set(t);return{getPrototypeOf:()=>Object.prototype,getOwnPropertyDescriptor:()=>Nr,has:(r,n)=>e.has(n),set:(r,n,i)=>e.add(n)&&Reflect.set(r,n,i),ownKeys:()=>[...e]}}var Eo=Symbol.for("nodejs.util.inspect.custom");function ce(t,e){let r=Ll(e),n=new Set,i=new Proxy(t,{get(o,s){if(n.has(s))return o[s];let a=r.get(s);return a?a.getPropertyValue(s):o[s]},has(o,s){if(n.has(s))return!0;let a=r.get(s);return a?a.has?.(s)??!0:Reflect.has(o,s)},ownKeys(o){let s=wo(Reflect.ownKeys(o),r),a=wo(Array.from(r.keys()),r);return[...new Set([...s,...a,...n])]},set(o,s,a){return r.get(s)?.getPropertyDescriptor?.(s)?.writable===!1?!1:(n.add(s),Reflect.set(o,s,a))},getOwnPropertyDescriptor(o,s){let a=Reflect.getOwnPropertyDescriptor(o,s);if(a&&!a.configurable)return a;let f=r.get(s);return f?f.getPropertyDescriptor?{...Nr,...f?.getPropertyDescriptor(s)}:Nr:a},defineProperty(o,s,a){return n.add(s),Reflect.defineProperty(o,s,a)},getPrototypeOf:()=>Object.prototype});return i[Eo]=function(){let o={...this};return delete o[Eo],o},i}function Ll(t){let e=new Map;for(let r of t){let n=r.getKeys();for(let i of n)e.set(i,r)}return e}function wo(t,e){return t.filter(r=>e.get(r)?.has?.(r)??!0)}u();c();p();m();d();l();function it(t){return{getKeys(){return t},has(){return!1},getPropertyValue(){}}}u();c();p();m();d();l();function ot(t,e){return{batch:t,transaction:e?.kind==="batch"?{isolationLevel:e.options.isolationLevel}:void 0}}u();c();p();m();d();l();function xo(t){if(t===void 0)return"";let e=tt(t);return new He(0,{colors:Tr}).write(e).toString()}u();c();p();m();d();l();var Fl="P2037";function st({error:t,user_facing_error:e},r,n){return e.error_code?new X(Nl(e,n),{code:e.error_code,clientVersion:r,meta:e.meta,batchRequestIdx:e.batch_request_idx}):new Q(t,{clientVersion:r,batchRequestIdx:e.batch_request_idx})}function Nl(t,e){let r=t.message;return(e==="postgresql"||e==="postgres"||e==="mysql")&&t.error_code===Fl&&(r+=` +Prisma Accelerate has built-in connection pooling to prevent such errors: https://pris.ly/client/error-accelerate`),r}u();c();p();m();d();l();u();c();p();m();d();l();u();c();p();m();d();l();u();c();p();m();d();l();u();c();p();m();d();l();var Sn=class{getLocation(){return null}};function Ie(t){return typeof $EnabledCallSite=="function"&&t!=="minimal"?new $EnabledCallSite:new Sn}u();c();p();m();d();l();u();c();p();m();d();l();u();c();p();m();d();l();var Po={_avg:!0,_count:!0,_sum:!0,_min:!0,_max:!0};function at(t={}){let e=ql(t);return Object.entries(e).reduce((n,[i,o])=>(Po[i]!==void 0?n.select[i]={select:o}:n[i]=o,n),{select:{}})}function ql(t={}){return typeof t._count=="boolean"?{...t,_count:{_all:t._count}}:t}function qr(t={}){return e=>(typeof t._count=="boolean"&&(e._count=e._count._all),e)}function To(t,e){let r=qr(t);return e({action:"aggregate",unpacker:r,argsMapper:at})(t)}u();c();p();m();d();l();function Vl(t={}){let{select:e,...r}=t;return typeof e=="object"?at({...r,_count:e}):at({...r,_count:{_all:!0}})}function Bl(t={}){return typeof t.select=="object"?e=>qr(t)(e)._count:e=>qr(t)(e)._count._all}function vo(t,e){return e({action:"count",unpacker:Bl(t),argsMapper:Vl})(t)}u();c();p();m();d();l();function $l(t={}){let e=at(t);if(Array.isArray(e.by))for(let r of e.by)typeof r=="string"&&(e.select[r]=!0);else typeof e.by=="string"&&(e.select[e.by]=!0);return e}function jl(t={}){return e=>(typeof t?._count=="boolean"&&e.forEach(r=>{r._count=r._count._all}),e)}function Ro(t,e){return e({action:"groupBy",unpacker:jl(t),argsMapper:$l})(t)}function Ao(t,e,r){if(e==="aggregate")return n=>To(n,r);if(e==="count")return n=>vo(n,r);if(e==="groupBy")return n=>Ro(n,r)}u();c();p();m();d();l();function Co(t,e){let r=e.fields.filter(i=>!i.relationName),n=Ni(r,"name");return new Proxy({},{get(i,o){if(o in i||typeof o=="symbol")return i[o];let s=n[o];if(s)return new It(t,o,s.type,s.isList,s.kind==="enum")},...Ur(Object.keys(n))})}u();c();p();m();d();l();u();c();p();m();d();l();var So=t=>Array.isArray(t)?t:t.split("."),In=(t,e)=>So(e).reduce((r,n)=>r&&r[n],t),Io=(t,e,r)=>So(e).reduceRight((n,i,o,s)=>Object.assign({},In(t,s.slice(0,o)),{[i]:n}),r);function Ql(t,e){return t===void 0||e===void 0?[]:[...e,"select",t]}function Gl(t,e,r){return e===void 0?t??{}:Io(e,r,t||!0)}function Dn(t,e,r,n,i,o){let a=t._runtimeDataModel.models[e].fields.reduce((f,v)=>({...f,[v.name]:v}),{});return f=>{let v=Ie(t._errorFormat),R=Ql(n,i),A=Gl(f,o,R),I=r({dataPath:R,callsite:v})(A),C=Jl(t,e);return new Proxy(I,{get(L,D){if(!C.includes(D))return L[D];let Ee=[a[D].type,r,D],ee=[R,A];return Dn(t,...Ee,...ee)},...Ur([...C,...Object.getOwnPropertyNames(I)])})}}function Jl(t,e){return t._runtimeDataModel.models[e].fields.filter(r=>r.kind==="object").map(r=>r.name)}var Wl=["findUnique","findUniqueOrThrow","findFirst","findFirstOrThrow","create","update","upsert","delete"],Kl=["aggregate","count","groupBy"];function On(t,e){let r=t._extensions.getAllModelExtensions(e)??{},n=[Hl(t,e),Yl(t,e),Nt(r),Z("name",()=>e),Z("$name",()=>e),Z("$parent",()=>t._appliedParent)];return ce({},n)}function Hl(t,e){let r=ye(e),n=Object.keys(Rt).concat("count");return{getKeys(){return n},getPropertyValue(i){let o=i,s=a=>f=>{let v=Ie(t._errorFormat);return t._createPrismaPromise(R=>{let A={args:f,dataPath:[],action:o,model:e,clientMethod:`${r}.${i}`,jsModelName:r,transaction:R,callsite:v};return t._request({...A,...a})},{action:o,args:f,model:e})};return Wl.includes(o)?Dn(t,e,s):zl(i)?Ao(t,i,s):s({})}}}function zl(t){return Kl.includes(t)}function Yl(t,e){return Ne(Z("fields",()=>{let r=t._runtimeDataModel.models[e];return Co(e,r)}))}u();c();p();m();d();l();function Do(t){return t.replace(/^./,e=>e.toUpperCase())}var kn=Symbol();function Ut(t){let e=[Xl(t),Zl(t),Z(kn,()=>t),Z("$parent",()=>t._appliedParent)],r=t._extensions.getAllClientExtensions();return r&&e.push(Nt(r)),ce(t,e)}function Xl(t){let e=Object.getPrototypeOf(t._originalClient),r=[...new Set(Object.getOwnPropertyNames(e))];return{getKeys(){return r},getPropertyValue(n){return t[n]}}}function Zl(t){let e=Object.keys(t._runtimeDataModel.models),r=e.map(ye),n=[...new Set(e.concat(r))];return Ne({getKeys(){return n},getPropertyValue(i){let o=Do(i);if(t._runtimeDataModel.models[o]!==void 0)return On(t,o);if(t._runtimeDataModel.models[i]!==void 0)return On(t,i)},getPropertyDescriptor(i){if(!r.includes(i))return{enumerable:!1}}})}function Oo(t){return t[kn]?t[kn]:t}function ko(t){if(typeof t=="function")return t(this);if(t.client?.__AccelerateEngine){let r=t.client.__AccelerateEngine;this._originalClient._engine=new r(this._originalClient._accelerateEngineConfig)}let e=Object.create(this._originalClient,{_extensions:{value:this._extensions.append(t)},_appliedParent:{value:this,configurable:!0},$on:{value:void 0}});return Ut(e)}u();c();p();m();d();l();u();c();p();m();d();l();function _o({result:t,modelName:e,select:r,omit:n,extensions:i}){let o=i.getAllComputedFields(e);if(!o)return t;let s=[],a=[];for(let f of Object.values(o)){if(n){if(n[f.name])continue;let v=f.needs.filter(R=>n[R]);v.length>0&&a.push(it(v))}else if(r){if(!r[f.name])continue;let v=f.needs.filter(R=>!r[R]);v.length>0&&a.push(it(v))}eu(t,f.needs)&&s.push(tu(f,ce(t,s)))}return s.length>0||a.length>0?ce(t,[...s,...a]):t}function eu(t,e){return e.every(r=>fn(t,r))}function tu(t,e){return Ne(Z(t.name,()=>t.compute(e)))}u();c();p();m();d();l();function Vr({visitor:t,result:e,args:r,runtimeDataModel:n,modelName:i}){if(Array.isArray(e)){for(let s=0;sR.name===o);if(!f||f.kind!=="object"||!f.relationName)continue;let v=typeof s=="object"?s:{};e[o]=Vr({visitor:i,result:e[o],args:v,modelName:f.type,runtimeDataModel:n})}}function Lo({result:t,modelName:e,args:r,extensions:n,runtimeDataModel:i,globalOmit:o}){return n.isEmpty()||t==null||typeof t!="object"||!i.models[e]?t:Vr({result:t,args:r??{},modelName:e,runtimeDataModel:i,visitor:(a,f,v)=>{let R=ye(f);return _o({result:a,modelName:R,select:v.select,omit:v.select?void 0:{...o?.[R],...v.omit},extensions:n})}})}u();c();p();m();d();l();u();c();p();m();d();l();l();u();c();p();m();d();l();var ru=["$connect","$disconnect","$on","$transaction","$extends"],Fo=ru;function No(t){if(t instanceof ne)return nu(t);if(Lr(t))return iu(t);if(Array.isArray(t)){let r=[t[0]];for(let n=1;n{let o=e.customDataProxyFetch;return"transaction"in e&&i!==void 0&&(e.transaction?.kind==="batch"&&e.transaction.lock.then(),e.transaction=i),n===r.length?t._executeRequest(e):r[n]({model:e.model,operation:e.model?e.action:e.clientMethod,args:No(e.args??{}),__internalParams:e,query:(s,a=e)=>{let f=a.customDataProxyFetch;return a.customDataProxyFetch=jo(o,f),a.args=s,qo(t,a,r,n+1)}})})}function Vo(t,e){let{jsModelName:r,action:n,clientMethod:i}=e,o=r?n:i;if(t._extensions.isEmpty())return t._executeRequest(e);let s=t._extensions.getAllQueryCallbacks(r??"$none",o);return qo(t,e,s)}function Bo(t){return e=>{let r={requests:e},n=e[0].extensions.getAllBatchQueryCallbacks();return n.length?$o(r,n,0,t):t(r)}}function $o(t,e,r,n){if(r===e.length)return n(t);let i=t.customDataProxyFetch,o=t.requests[0].transaction;return e[r]({args:{queries:t.requests.map(s=>({model:s.modelName,operation:s.action,args:s.args})),transaction:o?{isolationLevel:o.kind==="batch"?o.isolationLevel:void 0}:void 0},__internalParams:t,query(s,a=t){let f=a.customDataProxyFetch;return a.customDataProxyFetch=jo(i,f),$o(a,e,r+1,n)}})}var Uo=t=>t;function jo(t=Uo,e=Uo){return r=>t(e(r))}u();c();p();m();d();l();var Qo=j("prisma:client"),Go={Vercel:"vercel","Netlify CI":"netlify"};function Jo({postinstall:t,ciName:e,clientVersion:r,generator:n}){if(Qo("checkPlatformCaching:postinstall",t),Qo("checkPlatformCaching:ciName",e),t===!0&&!(n?.output&&typeof(n.output.fromEnvVar??n.output.value)=="string")&&e&&e in Go){let i=`Prisma has detected that this project was built on ${e}, which caches dependencies. This leads to an outdated Prisma Client because Prisma's auto-generation isn't triggered. To fix this, make sure to run the \`prisma generate\` command during the build process. -Learn how: https://pris.ly/d/${Go[e]}-build`; - throw (console.error(i), new M(i, r)); - } -} -u(); -c(); -p(); -m(); -d(); -l(); -function Wo(t, e) { - return t - ? t.datasources - ? t.datasources - : t.datasourceUrl - ? { [e[0]]: { url: t.datasourceUrl } } - : {} - : {}; -} -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -l(); -function Ko(t, e) { - throw new Error(e); -} -function ou(t) { - return t !== null && typeof t == "object" && typeof t.$type == "string"; -} -function su(t, e) { - let r = {}; - for (let n of Object.keys(t)) r[n] = e(t[n], n); - return r; -} -function lt(t) { - return t === null - ? t - : Array.isArray(t) - ? t.map(lt) - : typeof t == "object" - ? ou(t) - ? au(t) - : t.constructor !== null && t.constructor.name !== "Object" - ? t - : su(t, lt) - : t; -} -function au({ $type: t, value: e }) { - switch (t) { - case "BigInt": - return BigInt(e); - case "Bytes": { - let { buffer: r, byteOffset: n, byteLength: i } = h.from(e, "base64"); - return new Uint8Array(r, n, i); - } - case "DateTime": - return new Date(e); - case "Decimal": - return new P(e); - case "Json": - return JSON.parse(e); - default: - Ko(e, "Unknown tagged value"); - } -} -var Ho = "6.19.2"; -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -var uu = () => globalThis.process?.release?.name === "node", - cu = () => !!globalThis.Bun || !!globalThis.process?.versions?.bun, - pu = () => !!globalThis.Deno, - mu = () => typeof globalThis.Netlify == "object", - du = () => typeof globalThis.EdgeRuntime == "object", - fu = () => globalThis.navigator?.userAgent === "Cloudflare-Workers"; -function gu() { - return ( - [ - [mu, "netlify"], - [du, "edge-light"], - [fu, "workerd"], - [pu, "deno"], - [cu, "bun"], - [uu, "node"], - ] - .flatMap((r) => (r[0]() ? [r[1]] : [])) - .at(0) ?? "" - ); -} -var yu = { - node: "Node.js", - workerd: "Cloudflare Workers", - deno: "Deno and Deno Deploy", - netlify: "Netlify Edge Functions", - "edge-light": - "Edge Runtime (Vercel Edge Functions, Vercel Edge Middleware, Next.js (Pages Router) Edge API Routes, Next.js (App Router) Edge Route Handlers or Next.js Middleware)", -}; -function ut() { - let t = gu(); - return { - id: t, - prettyName: yu[t] || t, - isEdge: ["workerd", "deno", "netlify", "edge-light"].includes(t), - }; -} -function ct({ - inlineDatasources: t, - overrideDatasources: e, - env: r, - clientVersion: n, -}) { - let i, - o = Object.keys(t)[0], - s = t[o]?.url, - a = e[o]?.url; - if ( - (o === void 0 - ? (i = void 0) - : a - ? (i = a) - : s?.value - ? (i = s.value) - : s?.fromEnvVar && (i = r[s.fromEnvVar]), - s?.fromEnvVar !== void 0 && i === void 0) - ) - throw ut().id === "workerd" - ? new M( - `error: Environment variable not found: ${s.fromEnvVar}. +Learn how: https://pris.ly/d/${Go[e]}-build`;throw console.error(i),new M(i,r)}}u();c();p();m();d();l();function Wo(t,e){return t?t.datasources?t.datasources:t.datasourceUrl?{[e[0]]:{url:t.datasourceUrl}}:{}:{}}u();c();p();m();d();l();u();c();p();m();d();l();u();c();p();m();d();l();u();c();p();m();d();l();l();u();c();p();m();d();l();l();function Ko(t,e){throw new Error(e)}function ou(t){return t!==null&&typeof t=="object"&&typeof t.$type=="string"}function su(t,e){let r={};for(let n of Object.keys(t))r[n]=e(t[n],n);return r}function lt(t){return t===null?t:Array.isArray(t)?t.map(lt):typeof t=="object"?ou(t)?au(t):t.constructor!==null&&t.constructor.name!=="Object"?t:su(t,lt):t}function au({$type:t,value:e}){switch(t){case"BigInt":return BigInt(e);case"Bytes":{let{buffer:r,byteOffset:n,byteLength:i}=h.from(e,"base64");return new Uint8Array(r,n,i)}case"DateTime":return new Date(e);case"Decimal":return new P(e);case"Json":return JSON.parse(e);default:Ko(e,"Unknown tagged value")}}var Ho="6.19.2";u();c();p();m();d();l();u();c();p();m();d();l();u();c();p();m();d();l();var uu=()=>globalThis.process?.release?.name==="node",cu=()=>!!globalThis.Bun||!!globalThis.process?.versions?.bun,pu=()=>!!globalThis.Deno,mu=()=>typeof globalThis.Netlify=="object",du=()=>typeof globalThis.EdgeRuntime=="object",fu=()=>globalThis.navigator?.userAgent==="Cloudflare-Workers";function gu(){return[[mu,"netlify"],[du,"edge-light"],[fu,"workerd"],[pu,"deno"],[cu,"bun"],[uu,"node"]].flatMap(r=>r[0]()?[r[1]]:[]).at(0)??""}var yu={node:"Node.js",workerd:"Cloudflare Workers",deno:"Deno and Deno Deploy",netlify:"Netlify Edge Functions","edge-light":"Edge Runtime (Vercel Edge Functions, Vercel Edge Middleware, Next.js (Pages Router) Edge API Routes, Next.js (App Router) Edge Route Handlers or Next.js Middleware)"};function ut(){let t=gu();return{id:t,prettyName:yu[t]||t,isEdge:["workerd","deno","netlify","edge-light"].includes(t)}}function ct({inlineDatasources:t,overrideDatasources:e,env:r,clientVersion:n}){let i,o=Object.keys(t)[0],s=t[o]?.url,a=e[o]?.url;if(o===void 0?i=void 0:a?i=a:s?.value?i=s.value:s?.fromEnvVar&&(i=r[s.fromEnvVar]),s?.fromEnvVar!==void 0&&i===void 0)throw ut().id==="workerd"?new M(`error: Environment variable not found: ${s.fromEnvVar}. In Cloudflare module Workers, environment variables are available only in the Worker's \`env\` parameter of \`fetch\`. -To solve this, provide the connection string directly: https://pris.ly/d/cloudflare-datasource-url`, - n, - ) - : new M(`error: Environment variable not found: ${s.fromEnvVar}.`, n); - if (i === void 0) - throw new M( - "error: Missing URL environment variable, value, or override.", - n, - ); - return i; -} -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -var Br = class extends Error { - clientVersion; - cause; - constructor(e, r) { - (super(e), (this.clientVersion = r.clientVersion), (this.cause = r.cause)); - } - get [Symbol.toStringTag]() { - return this.name; - } -}; -var ie = class extends Br { - isRetryable; - constructor(e, r) { - (super(e, r), (this.isRetryable = r.isRetryable ?? !0)); - } -}; -u(); -c(); -p(); -m(); -d(); -l(); -function _(t, e) { - return { ...t, isRetryable: e }; -} -var Ue = class extends ie { - name = "InvalidDatasourceError"; - code = "P6001"; - constructor(e, r) { - super(e, _(r, !1)); - } -}; -O(Ue, "InvalidDatasourceError"); -function zo(t) { - let e = { clientVersion: t.clientVersion }, - r = Object.keys(t.inlineDatasources)[0], - n = ct({ - inlineDatasources: t.inlineDatasources, - overrideDatasources: t.overrideDatasources, - clientVersion: t.clientVersion, - env: { ...t.env, ...(typeof g < "u" ? g.env : {}) }, - }), - i; - try { - i = new URL(n); - } catch { - throw new Ue( - `Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\``, - e, - ); - } - let { protocol: o, searchParams: s } = i; - if (o !== "prisma:" && o !== fr) - throw new Ue( - `Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\` or \`prisma+postgres://\``, - e, - ); - let a = s.get("api_key"); - if (a === null || a.length < 1) - throw new Ue( - `Error validating datasource \`${r}\`: the URL must contain a valid API key`, - e, - ); - let f = cn(i) ? "http:" : "https:"; - g.env.TEST_CLIENT_ENGINE_REMOTE_EXECUTOR && - i.searchParams.has("use_http") && - (f = "http:"); - let v = new URL(i.href.replace(o, f)); - return { apiKey: a, url: v }; -} -u(); -c(); -p(); -m(); -d(); -l(); -var Yo = bt(Di()), - $r = class { - apiKey; - tracingHelper; - logLevel; - logQueries; - engineHash; - constructor({ - apiKey: e, - tracingHelper: r, - logLevel: n, - logQueries: i, - engineHash: o, - }) { - ((this.apiKey = e), - (this.tracingHelper = r), - (this.logLevel = n), - (this.logQueries = i), - (this.engineHash = o)); - } - build({ traceparent: e, transactionId: r } = {}) { - let n = { - Accept: "application/json", - Authorization: `Bearer ${this.apiKey}`, - "Content-Type": "application/json", - "Prisma-Engine-Hash": this.engineHash, - "Prisma-Engine-Version": Yo.enginesVersion, - }; - (this.tracingHelper.isEnabled() && - (n.traceparent = e ?? this.tracingHelper.getTraceParent()), - r && (n["X-Transaction-Id"] = r)); - let i = this.#e(); - return (i.length > 0 && (n["X-Capture-Telemetry"] = i.join(", ")), n); - } - #e() { - let e = []; - return ( - this.tracingHelper.isEnabled() && e.push("tracing"), - this.logLevel && e.push(this.logLevel), - this.logQueries && e.push("query"), - e - ); - } - }; -u(); -c(); -p(); -m(); -d(); -l(); -function hu(t) { - return t[0] * 1e3 + t[1] / 1e6; -} -function _n(t) { - return new Date(hu(t)); -} -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -var pt = class extends ie { - name = "ForcedRetryError"; - code = "P5001"; - constructor(e) { - super("This request must be retried", _(e, !0)); - } -}; -O(pt, "ForcedRetryError"); -u(); -c(); -p(); -m(); -d(); -l(); -var qe = class extends ie { - name = "NotImplementedYetError"; - code = "P5004"; - constructor(e, r) { - super(e, _(r, !1)); - } -}; -O(qe, "NotImplementedYetError"); -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -var V = class extends ie { - response; - constructor(e, r) { - (super(e, r), (this.response = r.response)); - let n = this.response.headers.get("prisma-request-id"); - if (n) { - let i = `(The request id was: ${n})`; - this.message = this.message + " " + i; - } - } -}; -var Ve = class extends V { - name = "SchemaMissingError"; - code = "P5005"; - constructor(e) { - super("Schema needs to be uploaded", _(e, !0)); - } -}; -O(Ve, "SchemaMissingError"); -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -var Mn = "This request could not be understood by the server", - Vt = class extends V { - name = "BadRequestError"; - code = "P5000"; - constructor(e, r, n) { - (super(r || Mn, _(e, !1)), n && (this.code = n)); - } - }; -O(Vt, "BadRequestError"); -u(); -c(); -p(); -m(); -d(); -l(); -var Bt = class extends V { - name = "HealthcheckTimeoutError"; - code = "P5013"; - logs; - constructor(e, r) { - (super("Engine not started: healthcheck timeout", _(e, !0)), - (this.logs = r)); - } -}; -O(Bt, "HealthcheckTimeoutError"); -u(); -c(); -p(); -m(); -d(); -l(); -var $t = class extends V { - name = "EngineStartupError"; - code = "P5014"; - logs; - constructor(e, r, n) { - (super(r, _(e, !0)), (this.logs = n)); - } -}; -O($t, "EngineStartupError"); -u(); -c(); -p(); -m(); -d(); -l(); -var jt = class extends V { - name = "EngineVersionNotSupportedError"; - code = "P5012"; - constructor(e) { - super("Engine version is not supported", _(e, !1)); - } -}; -O(jt, "EngineVersionNotSupportedError"); -u(); -c(); -p(); -m(); -d(); -l(); -var Ln = "Request timed out", - Qt = class extends V { - name = "GatewayTimeoutError"; - code = "P5009"; - constructor(e, r = Ln) { - super(r, _(e, !1)); - } - }; -O(Qt, "GatewayTimeoutError"); -u(); -c(); -p(); -m(); -d(); -l(); -var bu = "Interactive transaction error", - Gt = class extends V { - name = "InteractiveTransactionError"; - code = "P5015"; - constructor(e, r = bu) { - super(r, _(e, !1)); - } - }; -O(Gt, "InteractiveTransactionError"); -u(); -c(); -p(); -m(); -d(); -l(); -var Eu = "Request parameters are invalid", - Jt = class extends V { - name = "InvalidRequestError"; - code = "P5011"; - constructor(e, r = Eu) { - super(r, _(e, !1)); - } - }; -O(Jt, "InvalidRequestError"); -u(); -c(); -p(); -m(); -d(); -l(); -var Fn = "Requested resource does not exist", - Wt = class extends V { - name = "NotFoundError"; - code = "P5003"; - constructor(e, r = Fn) { - super(r, _(e, !1)); - } - }; -O(Wt, "NotFoundError"); -u(); -c(); -p(); -m(); -d(); -l(); -var Nn = "Unknown server error", - mt = class extends V { - name = "ServerError"; - code = "P5006"; - logs; - constructor(e, r, n) { - (super(r || Nn, _(e, !0)), (this.logs = n)); - } - }; -O(mt, "ServerError"); -u(); -c(); -p(); -m(); -d(); -l(); -var Un = "Unauthorized, check your connection string", - Kt = class extends V { - name = "UnauthorizedError"; - code = "P5007"; - constructor(e, r = Un) { - super(r, _(e, !1)); - } - }; -O(Kt, "UnauthorizedError"); -u(); -c(); -p(); -m(); -d(); -l(); -var qn = "Usage exceeded, retry again later", - Ht = class extends V { - name = "UsageExceededError"; - code = "P5008"; - constructor(e, r = qn) { - super(r, _(e, !0)); - } - }; -O(Ht, "UsageExceededError"); -async function wu(t) { - let e; - try { - e = await t.text(); - } catch { - return { type: "EmptyError" }; - } - try { - let r = JSON.parse(e); - if (typeof r == "string") - switch (r) { - case "InternalDataProxyError": - return { type: "DataProxyError", body: r }; - default: - return { type: "UnknownTextError", body: r }; - } - if (typeof r == "object" && r !== null) { - if ("is_panic" in r && "message" in r && "error_code" in r) - return { type: "QueryEngineError", body: r }; - if ( - "EngineNotStarted" in r || - "InteractiveTransactionMisrouted" in r || - "InvalidRequestError" in r - ) { - let n = Object.values(r)[0].reason; - return typeof n == "string" && - !["SchemaMissing", "EngineVersionNotSupported"].includes(n) - ? { type: "UnknownJsonError", body: r } - : { type: "DataProxyError", body: r }; - } - } - return { type: "UnknownJsonError", body: r }; - } catch { - return e === "" - ? { type: "EmptyError" } - : { type: "UnknownTextError", body: e }; - } -} -async function zt(t, e) { - if (t.ok) return; - let r = { clientVersion: e, response: t }, - n = await wu(t); - if (n.type === "QueryEngineError") - throw new X(n.body.message, { code: n.body.error_code, clientVersion: e }); - if (n.type === "DataProxyError") { - if (n.body === "InternalDataProxyError") - throw new mt(r, "Internal Data Proxy error"); - if ("EngineNotStarted" in n.body) { - if (n.body.EngineNotStarted.reason === "SchemaMissing") return new Ve(r); - if (n.body.EngineNotStarted.reason === "EngineVersionNotSupported") - throw new jt(r); - if ("EngineStartupError" in n.body.EngineNotStarted.reason) { - let { msg: i, logs: o } = - n.body.EngineNotStarted.reason.EngineStartupError; - throw new $t(r, i, o); - } - if ("KnownEngineStartupError" in n.body.EngineNotStarted.reason) { - let { msg: i, error_code: o } = - n.body.EngineNotStarted.reason.KnownEngineStartupError; - throw new M(i, e, o); - } - if ("HealthcheckTimeout" in n.body.EngineNotStarted.reason) { - let { logs: i } = n.body.EngineNotStarted.reason.HealthcheckTimeout; - throw new Bt(r, i); - } - } - if ("InteractiveTransactionMisrouted" in n.body) { - let i = { - IDParseError: "Could not parse interactive transaction ID", - NoQueryEngineFoundError: - "Could not find Query Engine for the specified host and transaction ID", - TransactionStartError: "Could not start interactive transaction", - }; - throw new Gt(r, i[n.body.InteractiveTransactionMisrouted.reason]); - } - if ("InvalidRequestError" in n.body) - throw new Jt(r, n.body.InvalidRequestError.reason); - } - if (t.status === 401 || t.status === 403) throw new Kt(r, dt(Un, n)); - if (t.status === 404) return new Wt(r, dt(Fn, n)); - if (t.status === 429) throw new Ht(r, dt(qn, n)); - if (t.status === 504) throw new Qt(r, dt(Ln, n)); - if (t.status >= 500) throw new mt(r, dt(Nn, n)); - if (t.status >= 400) throw new Vt(r, dt(Mn, n)); -} -function dt(t, e) { - return e.type === "EmptyError" ? t : `${t}: ${JSON.stringify(e)}`; -} -u(); -c(); -p(); -m(); -d(); -l(); -function Xo(t) { - let e = Math.pow(2, t) * 50, - r = Math.ceil(Math.random() * e) - Math.ceil(e / 2), - n = e + r; - return new Promise((i) => setTimeout(() => i(n), n)); -} -u(); -c(); -p(); -m(); -d(); -l(); -var Re = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; -function Zo(t) { - let e = new TextEncoder().encode(t), - r = "", - n = e.byteLength, - i = n % 3, - o = n - i, - s, - a, - f, - v, - R; - for (let A = 0; A < o; A = A + 3) - ((R = (e[A] << 16) | (e[A + 1] << 8) | e[A + 2]), - (s = (R & 16515072) >> 18), - (a = (R & 258048) >> 12), - (f = (R & 4032) >> 6), - (v = R & 63), - (r += Re[s] + Re[a] + Re[f] + Re[v])); - return ( - i == 1 - ? ((R = e[o]), - (s = (R & 252) >> 2), - (a = (R & 3) << 4), - (r += Re[s] + Re[a] + "==")) - : i == 2 && - ((R = (e[o] << 8) | e[o + 1]), - (s = (R & 64512) >> 10), - (a = (R & 1008) >> 4), - (f = (R & 15) << 2), - (r += Re[s] + Re[a] + Re[f] + "=")), - r - ); -} -u(); -c(); -p(); -m(); -d(); -l(); -function es(t) { - if ( - !!t.generator?.previewFeatures.some((r) => - r.toLowerCase().includes("metrics"), - ) - ) - throw new M( - "The `metrics` preview feature is not yet available with Accelerate.\nPlease remove `metrics` from the `previewFeatures` in your schema.\n\nMore information about Accelerate: https://pris.ly/d/accelerate", - t.clientVersion, - ); -} -u(); -c(); -p(); -m(); -d(); -l(); -var ts = { - "@prisma/debug": "workspace:*", - "@prisma/engines-version": "7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7", - "@prisma/fetch-engine": "workspace:*", - "@prisma/get-platform": "workspace:*", -}; -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -var Yt = class extends ie { - name = "RequestError"; - code = "P5010"; - constructor(e, r) { - super( - `Cannot fetch data from service: -${e}`, - _(r, !0), - ); - } -}; -O(Yt, "RequestError"); -async function Be(t, e, r = (n) => n) { - let { clientVersion: n, ...i } = e, - o = r(fetch); - try { - return await o(t, i); - } catch (s) { - let a = s.message ?? "Unknown error"; - throw new Yt(a, { clientVersion: n, cause: s }); - } -} -var Pu = /^[1-9][0-9]*\.[0-9]+\.[0-9]+$/, - rs = j("prisma:client:dataproxyEngine"); -async function Tu(t, e) { - let r = ts["@prisma/engines-version"], - n = e.clientVersion ?? "unknown"; - if ( - g.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION || - globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION - ) - return ( - g.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION || - globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION - ); - if (t.includes("accelerate") && n !== "0.0.0" && n !== "in-memory") return n; - let [i, o] = n?.split("-") ?? []; - if (o === void 0 && Pu.test(i)) return i; - if (o !== void 0 || n === "0.0.0" || n === "in-memory") { - let [s] = r.split("-") ?? [], - [a, f, v] = s.split("."), - R = vu(`<=${a}.${f}.${v}`), - A = await Be(R, { clientVersion: n }); - if (!A.ok) - throw new Error( - `Failed to fetch stable Prisma version, unpkg.com status ${A.status} ${A.statusText}, response body: ${(await A.text()) || ""}`, - ); - let I = await A.text(); - rs("length of body fetched from unpkg.com", I.length); - let C; - try { - C = JSON.parse(I); - } catch (L) { - throw ( - console.error("JSON.parse error: body fetched from unpkg.com: ", I), - L - ); - } - return C.version; - } - throw new qe( - "Only `major.minor.patch` versions are supported by Accelerate.", - { clientVersion: n }, - ); -} -async function ns(t, e) { - let r = await Tu(t, e); - return (rs("version", r), r); -} -function vu(t) { - return encodeURI(`https://unpkg.com/prisma@${t}/package.json`); -} -var is = 3, - Xt = j("prisma:client:dataproxyEngine"), - Zt = class { - name = "DataProxyEngine"; - inlineSchema; - inlineSchemaHash; - inlineDatasources; - config; - logEmitter; - env; - clientVersion; - engineHash; - tracingHelper; - remoteClientVersion; - host; - headerBuilder; - startPromise; - protocol; - constructor(e) { - (es(e), - (this.config = e), - (this.env = e.env), - (this.inlineSchema = Zo(e.inlineSchema)), - (this.inlineDatasources = e.inlineDatasources), - (this.inlineSchemaHash = e.inlineSchemaHash), - (this.clientVersion = e.clientVersion), - (this.engineHash = e.engineVersion), - (this.logEmitter = e.logEmitter), - (this.tracingHelper = e.tracingHelper)); - } - apiKey() { - return this.headerBuilder.apiKey; - } - version() { - return this.engineHash; - } - async start() { - (this.startPromise !== void 0 && (await this.startPromise), - (this.startPromise = (async () => { - let { apiKey: e, url: r } = this.getURLAndAPIKey(); - ((this.host = r.host), - (this.protocol = r.protocol), - (this.headerBuilder = new $r({ - apiKey: e, - tracingHelper: this.tracingHelper, - logLevel: this.config.logLevel ?? "error", - logQueries: this.config.logQueries, - engineHash: this.engineHash, - })), - (this.remoteClientVersion = await ns(this.host, this.config)), - Xt("host", this.host), - Xt("protocol", this.protocol)); - })()), - await this.startPromise); - } - async stop() {} - propagateResponseExtensions(e) { - (e?.logs?.length && - e.logs.forEach((r) => { - switch (r.level) { - case "debug": - case "trace": - Xt(r); - break; - case "error": - case "warn": - case "info": { - this.logEmitter.emit(r.level, { - timestamp: _n(r.timestamp), - message: r.attributes.message ?? "", - target: r.target ?? "BinaryEngine", - }); - break; - } - case "query": { - this.logEmitter.emit("query", { - query: r.attributes.query ?? "", - timestamp: _n(r.timestamp), - duration: r.attributes.duration_ms ?? 0, - params: r.attributes.params ?? "", - target: r.target ?? "BinaryEngine", - }); - break; - } - default: - r.level; - } - }), - e?.traces?.length && this.tracingHelper.dispatchEngineSpans(e.traces)); - } - onBeforeExit() { - throw new Error( - '"beforeExit" hook is not applicable to the remote query engine', - ); - } - async url(e) { - return ( - await this.start(), - `${this.protocol}//${this.host}/${this.remoteClientVersion}/${this.inlineSchemaHash}/${e}` - ); - } - async uploadSchema() { - let e = { name: "schemaUpload", internal: !0 }; - return this.tracingHelper.runInChildSpan(e, async () => { - let r = await Be(await this.url("schema"), { - method: "PUT", - headers: this.headerBuilder.build(), - body: this.inlineSchema, - clientVersion: this.clientVersion, - }); - r.ok || Xt("schema response status", r.status); - let n = await zt(r, this.clientVersion); - if (n) - throw ( - this.logEmitter.emit("warn", { - message: `Error while uploading schema: ${n.message}`, - timestamp: new Date(), - target: "", - }), - n - ); - this.logEmitter.emit("info", { - message: `Schema (re)uploaded (hash: ${this.inlineSchemaHash})`, - timestamp: new Date(), - target: "", - }); - }); - } - request( - e, - { traceparent: r, interactiveTransaction: n, customDataProxyFetch: i }, - ) { - return this.requestInternal({ - body: e, - traceparent: r, - interactiveTransaction: n, - customDataProxyFetch: i, - }); - } - async requestBatch( - e, - { traceparent: r, transaction: n, customDataProxyFetch: i }, - ) { - let o = n?.kind === "itx" ? n.options : void 0, - s = ot(e, n); - return ( - await this.requestInternal({ - body: s, - customDataProxyFetch: i, - interactiveTransaction: o, - traceparent: r, - }) - ).map( - (f) => ( - f.extensions && this.propagateResponseExtensions(f.extensions), - "errors" in f ? this.convertProtocolErrorsToClientError(f.errors) : f - ), - ); - } - requestInternal({ - body: e, - traceparent: r, - customDataProxyFetch: n, - interactiveTransaction: i, - }) { - return this.withRetry({ - actionGerund: "querying", - callback: async ({ logHttpCall: o }) => { - let s = i - ? `${i.payload.endpoint}/graphql` - : await this.url("graphql"); - o(s); - let a = await Be( - s, - { - method: "POST", - headers: this.headerBuilder.build({ - traceparent: r, - transactionId: i?.id, - }), - body: JSON.stringify(e), - clientVersion: this.clientVersion, - }, - n, - ); - (a.ok || Xt("graphql response status", a.status), - await this.handleError(await zt(a, this.clientVersion))); - let f = await a.json(); - if ( - (f.extensions && this.propagateResponseExtensions(f.extensions), - "errors" in f) - ) - throw this.convertProtocolErrorsToClientError(f.errors); - return "batchResult" in f ? f.batchResult : f; - }, - }); - } - async transaction(e, r, n) { - let i = { - start: "starting", - commit: "committing", - rollback: "rolling back", - }; - return this.withRetry({ - actionGerund: `${i[e]} transaction`, - callback: async ({ logHttpCall: o }) => { - if (e === "start") { - let s = JSON.stringify({ - max_wait: n.maxWait, - timeout: n.timeout, - isolation_level: n.isolationLevel, - }), - a = await this.url("transaction/start"); - o(a); - let f = await Be(a, { - method: "POST", - headers: this.headerBuilder.build({ traceparent: r.traceparent }), - body: s, - clientVersion: this.clientVersion, - }); - await this.handleError(await zt(f, this.clientVersion)); - let v = await f.json(), - { extensions: R } = v; - R && this.propagateResponseExtensions(R); - let A = v.id, - I = v["data-proxy"].endpoint; - return { id: A, payload: { endpoint: I } }; - } else { - let s = `${n.payload.endpoint}/${e}`; - o(s); - let a = await Be(s, { - method: "POST", - headers: this.headerBuilder.build({ traceparent: r.traceparent }), - clientVersion: this.clientVersion, - }); - await this.handleError(await zt(a, this.clientVersion)); - let f = await a.json(), - { extensions: v } = f; - v && this.propagateResponseExtensions(v); - return; - } - }, - }); - } - getURLAndAPIKey() { - return zo({ - clientVersion: this.clientVersion, - env: this.env, - inlineDatasources: this.inlineDatasources, - overrideDatasources: this.config.overrideDatasources, - }); - } - metrics() { - throw new qe("Metrics are not yet supported for Accelerate", { - clientVersion: this.clientVersion, - }); - } - async withRetry(e) { - for (let r = 0; ; r++) { - let n = (i) => { - this.logEmitter.emit("info", { - message: `Calling ${i} (n=${r})`, - timestamp: new Date(), - target: "", - }); - }; - try { - return await e.callback({ logHttpCall: n }); - } catch (i) { - if (!(i instanceof ie) || !i.isRetryable) throw i; - if (r >= is) throw i instanceof pt ? i.cause : i; - this.logEmitter.emit("warn", { - message: `Attempt ${r + 1}/${is} failed for ${e.actionGerund}: ${i.message ?? "(unknown)"}`, - timestamp: new Date(), - target: "", - }); - let o = await Xo(r); - this.logEmitter.emit("warn", { - message: `Retrying after ${o}ms`, - timestamp: new Date(), - target: "", - }); - } - } - } - async handleError(e) { - if (e instanceof Ve) - throw ( - await this.uploadSchema(), - new pt({ clientVersion: this.clientVersion, cause: e }) - ); - if (e) throw e; - } - convertProtocolErrorsToClientError(e) { - return e.length === 1 - ? st(e[0], this.config.clientVersion, this.config.activeProvider) - : new Q(JSON.stringify(e), { - clientVersion: this.config.clientVersion, - }); - } - applyPendingMigrations() { - throw new Error("Method not implemented."); - } - }; -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -function os(t) { - if (t?.kind === "itx") return t.options.id; -} -u(); -c(); -p(); -m(); -d(); -l(); -var Vn, - ss = { - async loadLibrary(t) { - let { clientVersion: e, adapter: r, engineWasm: n } = t; - if (r === void 0) - throw new M( - `The \`adapter\` option for \`PrismaClient\` is required in this context (${ut().prettyName})`, - e, - ); - if (n === void 0) - throw new M("WASM engine was unexpectedly `undefined`", e); - Vn === void 0 && - (Vn = (async () => { - let o = await n.getRuntime(), - s = await n.getQueryEngineWasmModule(); - if (s == null) - throw new M( - "The loaded wasm module was unexpectedly `undefined` or `null` once loaded", - e, - ); - let a = { "./query_engine_bg.js": o }, - f = new WebAssembly.Instance(s, a), - v = f.exports.__wbindgen_start; - return (o.__wbg_set_wasm(f.exports), v(), o.QueryEngine); - })()); - let i = await Vn; - return { - debugPanic() { - return Promise.reject("{}"); - }, - dmmf() { - return Promise.resolve("{}"); - }, - version() { - return { commit: "unknown", version: "unknown" }; - }, - QueryEngine: i, - }; - }, - }; -var Ru = "P2036", - be = j("prisma:client:libraryEngine"); -function Au(t) { - return t.item_type === "query" && "query" in t; -} -function Cu(t) { - return "level" in t ? t.level === "error" && t.message === "PANIC" : !1; -} -var VL = [...on, "native"], - Su = 0xffffffffffffffffn, - Bn = 1n; -function Iu() { - let t = Bn++; - return (Bn > Su && (Bn = 1n), t); -} -var er = class { - name = "LibraryEngine"; - engine; - libraryInstantiationPromise; - libraryStartingPromise; - libraryStoppingPromise; - libraryStarted; - executingQueryPromise; - config; - QueryEngineConstructor; - libraryLoader; - library; - logEmitter; - libQueryEnginePath; - binaryTarget; - datasourceOverrides; - datamodel; - logQueries; - logLevel; - lastQuery; - loggerRustPanic; - tracingHelper; - adapterPromise; - versionInfo; - constructor(e, r) { - ((this.libraryLoader = r ?? ss), - (this.config = e), - (this.libraryStarted = !1), - (this.logQueries = e.logQueries ?? !1), - (this.logLevel = e.logLevel ?? "error"), - (this.logEmitter = e.logEmitter), - (this.datamodel = e.inlineSchema), - (this.tracingHelper = e.tracingHelper), - e.enableDebugLogs && (this.logLevel = "debug")); - let n = Object.keys(e.overrideDatasources)[0], - i = e.overrideDatasources[n]?.url; - (n !== void 0 && i !== void 0 && (this.datasourceOverrides = { [n]: i }), - (this.libraryInstantiationPromise = this.instantiateLibrary())); - } - wrapEngine(e) { - return { - applyPendingMigrations: e.applyPendingMigrations?.bind(e), - commitTransaction: this.withRequestId(e.commitTransaction.bind(e)), - connect: this.withRequestId(e.connect.bind(e)), - disconnect: this.withRequestId(e.disconnect.bind(e)), - metrics: e.metrics?.bind(e), - query: this.withRequestId(e.query.bind(e)), - rollbackTransaction: this.withRequestId(e.rollbackTransaction.bind(e)), - sdlSchema: e.sdlSchema?.bind(e), - startTransaction: this.withRequestId(e.startTransaction.bind(e)), - trace: e.trace.bind(e), - free: e.free?.bind(e), - }; - } - withRequestId(e) { - return async (...r) => { - let n = Iu().toString(); - try { - return await e(...r, n); - } finally { - if (this.tracingHelper.isEnabled()) { - let i = await this.engine?.trace(n); - if (i) { - let o = JSON.parse(i); - this.tracingHelper.dispatchEngineSpans(o.spans); - } - } - } - }; - } - async applyPendingMigrations() { - throw new Error( - "Cannot call this method from this type of engine instance", - ); - } - async transaction(e, r, n) { - await this.start(); - let i = await this.adapterPromise, - o = JSON.stringify(r), - s; - if (e === "start") { - let f = JSON.stringify({ - max_wait: n.maxWait, - timeout: n.timeout, - isolation_level: n.isolationLevel, - }); - s = await this.engine?.startTransaction(f, o); - } else - e === "commit" - ? (s = await this.engine?.commitTransaction(n.id, o)) - : e === "rollback" && - (s = await this.engine?.rollbackTransaction(n.id, o)); - let a = this.parseEngineResponse(s); - if (Du(a)) { - let f = this.getExternalAdapterError(a, i?.errorRegistry); - throw f - ? f.error - : new X(a.message, { - code: a.error_code, - clientVersion: this.config.clientVersion, - meta: a.meta, - }); - } else if (typeof a.message == "string") - throw new Q(a.message, { clientVersion: this.config.clientVersion }); - return a; - } - async instantiateLibrary() { - if ((be("internalSetup"), this.libraryInstantiationPromise)) - return this.libraryInstantiationPromise; - ((this.binaryTarget = await this.getCurrentBinaryTarget()), - await this.tracingHelper.runInChildSpan("load_engine", () => - this.loadEngine(), - ), - this.version()); - } - async getCurrentBinaryTarget() {} - parseEngineResponse(e) { - if (!e) - throw new Q("Response from the Engine was empty", { - clientVersion: this.config.clientVersion, - }); - try { - return JSON.parse(e); - } catch { - throw new Q("Unable to JSON.parse response from engine", { - clientVersion: this.config.clientVersion, - }); - } - } - async loadEngine() { - if (!this.engine) { - this.QueryEngineConstructor || - ((this.library = await this.libraryLoader.loadLibrary(this.config)), - (this.QueryEngineConstructor = this.library.QueryEngine)); - try { - let e = new b(this); - this.adapterPromise || - (this.adapterPromise = this.config.adapter?.connect()?.then(mr)); - let r = await this.adapterPromise; - (r && be("Using driver adapter: %O", r), - (this.engine = this.wrapEngine( - new this.QueryEngineConstructor( - { - datamodel: this.datamodel, - env: g.env, - logQueries: this.config.logQueries ?? !1, - ignoreEnvVarErrors: !0, - datasourceOverrides: this.datasourceOverrides ?? {}, - logLevel: this.logLevel, - configDir: this.config.cwd, - engineProtocol: "json", - enableTracing: this.tracingHelper.isEnabled(), - }, - (n) => { - e.deref()?.logger(n); - }, - r, - ), - ))); - } catch (e) { - let r = e, - n = this.parseInitError(r.message); - throw typeof n == "string" - ? r - : new M(n.message, this.config.clientVersion, n.error_code); - } - } - } - logger(e) { - let r = this.parseEngineResponse(e); - r && - ((r.level = r?.level.toLowerCase() ?? "unknown"), - Au(r) - ? this.logEmitter.emit("query", { - timestamp: new Date(), - query: r.query, - params: r.params, - duration: Number(r.duration_ms), - target: r.module_path, - }) - : (Cu(r), - this.logEmitter.emit(r.level, { - timestamp: new Date(), - message: r.message, - target: r.module_path, - }))); - } - parseInitError(e) { - try { - return JSON.parse(e); - } catch {} - return e; - } - parseRequestError(e) { - try { - return JSON.parse(e); - } catch {} - return e; - } - onBeforeExit() { - throw new Error( - '"beforeExit" hook is not applicable to the library engine since Prisma 5.0.0, it is only relevant and implemented for the binary engine. Please add your event listener to the `process` object directly instead.', - ); - } - async start() { - if ( - (this.libraryInstantiationPromise || - (this.libraryInstantiationPromise = this.instantiateLibrary()), - await this.libraryInstantiationPromise, - await this.libraryStoppingPromise, - this.libraryStartingPromise) - ) - return ( - be( - `library already starting, this.libraryStarted: ${this.libraryStarted}`, - ), - this.libraryStartingPromise - ); - if (this.libraryStarted) return; - let e = async () => { - be("library starting"); - try { - let r = { traceparent: this.tracingHelper.getTraceParent() }; - (await this.engine?.connect(JSON.stringify(r)), - (this.libraryStarted = !0), - this.adapterPromise || - (this.adapterPromise = this.config.adapter?.connect()?.then(mr)), - await this.adapterPromise, - be("library started")); - } catch (r) { - let n = this.parseInitError(r.message); - throw typeof n == "string" - ? r - : new M(n.message, this.config.clientVersion, n.error_code); - } finally { - this.libraryStartingPromise = void 0; - } - }; - return ( - (this.libraryStartingPromise = this.tracingHelper.runInChildSpan( - "connect", - e, - )), - this.libraryStartingPromise - ); - } - async stop() { - if ( - (await this.libraryInstantiationPromise, - await this.libraryStartingPromise, - await this.executingQueryPromise, - this.libraryStoppingPromise) - ) - return (be("library is already stopping"), this.libraryStoppingPromise); - if (!this.libraryStarted) { - (await (await this.adapterPromise)?.dispose(), - (this.adapterPromise = void 0)); - return; - } - let e = async () => { - (await new Promise((n) => setImmediate(n)), be("library stopping")); - let r = { traceparent: this.tracingHelper.getTraceParent() }; - (await this.engine?.disconnect(JSON.stringify(r)), - this.engine?.free && this.engine.free(), - (this.engine = void 0), - (this.libraryStarted = !1), - (this.libraryStoppingPromise = void 0), - (this.libraryInstantiationPromise = void 0), - await (await this.adapterPromise)?.dispose(), - (this.adapterPromise = void 0), - be("library stopped")); - }; - return ( - (this.libraryStoppingPromise = this.tracingHelper.runInChildSpan( - "disconnect", - e, - )), - this.libraryStoppingPromise - ); - } - version() { - return ( - (this.versionInfo = this.library?.version()), - this.versionInfo?.version ?? "unknown" - ); - } - debugPanic(e) { - return this.library?.debugPanic(e); - } - async request(e, { traceparent: r, interactiveTransaction: n }) { - be(`sending request, this.libraryStarted: ${this.libraryStarted}`); - let i = JSON.stringify({ traceparent: r }), - o = JSON.stringify(e); - try { - await this.start(); - let s = await this.adapterPromise; - ((this.executingQueryPromise = this.engine?.query(o, i, n?.id)), - (this.lastQuery = o)); - let a = this.parseEngineResponse(await this.executingQueryPromise); - if (a.errors) - throw a.errors.length === 1 - ? this.buildQueryError(a.errors[0], s?.errorRegistry) - : new Q(JSON.stringify(a.errors), { - clientVersion: this.config.clientVersion, - }); - if (this.loggerRustPanic) throw this.loggerRustPanic; - return { data: a }; - } catch (s) { - if (s instanceof M) throw s; - s.code === "GenericFailure" && s.message?.startsWith("PANIC:"); - let a = this.parseRequestError(s.message); - throw typeof a == "string" - ? s - : new Q( - `${a.message} -${a.backtrace}`, - { clientVersion: this.config.clientVersion }, - ); - } - } - async requestBatch(e, { transaction: r, traceparent: n }) { - be("requestBatch"); - let i = ot(e, r); - await this.start(); - let o = await this.adapterPromise; - ((this.lastQuery = JSON.stringify(i)), - (this.executingQueryPromise = this.engine?.query( - this.lastQuery, - JSON.stringify({ traceparent: n }), - os(r), - ))); - let s = await this.executingQueryPromise, - a = this.parseEngineResponse(s); - if (a.errors) - throw a.errors.length === 1 - ? this.buildQueryError(a.errors[0], o?.errorRegistry) - : new Q(JSON.stringify(a.errors), { - clientVersion: this.config.clientVersion, - }); - let { batchResult: f, errors: v } = a; - if (Array.isArray(f)) - return f.map((R) => - R.errors && R.errors.length > 0 - ? (this.loggerRustPanic ?? - this.buildQueryError(R.errors[0], o?.errorRegistry)) - : { data: R }, - ); - throw v && v.length === 1 - ? new Error(v[0].error) - : new Error(JSON.stringify(a)); - } - buildQueryError(e, r) { - e.user_facing_error.is_panic; - let n = this.getExternalAdapterError(e.user_facing_error, r); - return n - ? n.error - : st(e, this.config.clientVersion, this.config.activeProvider); - } - getExternalAdapterError(e, r) { - if (e.error_code === Ru && r) { - let n = e.meta?.id; - yr( - typeof n == "number", - "Malformed external JS error received from the engine", - ); - let i = r.consumeError(n); - return (yr(i, "External error with reported id was not registered"), i); - } - } - async metrics(e) { - await this.start(); - let r = await this.engine.metrics(JSON.stringify(e)); - return e.format === "prometheus" ? r : this.parseEngineResponse(r); - } -}; -function Du(t) { - return typeof t == "object" && t !== null && t.error_code !== void 0; -} -u(); -c(); -p(); -m(); -d(); -l(); -function as({ url: t, adapter: e, copyEngine: r, targetBuildType: n }) { - let i = [], - o = [], - s = (D) => { - i.push({ _tag: "warning", value: D }); - }, - a = (D) => { - let k = D.join(` -`); - o.push({ _tag: "error", value: k }); - }, - f = !!t?.startsWith("prisma://"), - v = gr(t), - R = !!e, - A = f || v; - !R && - r && - A && - n !== "client" && - n !== "wasm-compiler-edge" && - s([ - "recommend--no-engine", - "In production, we recommend using `prisma generate --no-engine` (See: `prisma generate --help`)", - ]); - let I = A || !r; - R && - (I || n === "edge") && - (n === "edge" - ? a([ - "Prisma Client was configured to use the `adapter` option but it was imported via its `/edge` endpoint.", - "Please either remove the `/edge` endpoint or remove the `adapter` from the Prisma Client constructor.", - ]) - : A - ? a([ - "You've provided both a driver adapter and an Accelerate database URL. Driver adapters currently cannot connect to Accelerate.", - "Please provide either a driver adapter with a direct database URL or an Accelerate URL and no driver adapter.", - ]) - : r || - a([ - "Prisma Client was configured to use the `adapter` option but `prisma generate` was run with `--no-engine`.", - "Please run `prisma generate` without `--no-engine` to be able to use Prisma Client with the adapter.", - ])); - let C = { accelerate: I, ppg: v, driverAdapters: R }; - function L(D) { - return D.length > 0; - } - return L(o) - ? { ok: !1, diagnostics: { warnings: i, errors: o }, isUsing: C } - : { ok: !0, diagnostics: { warnings: i }, isUsing: C }; -} -function ls({ copyEngine: t = !0 }, e) { - let r; - try { - r = ct({ - inlineDatasources: e.inlineDatasources, - overrideDatasources: e.overrideDatasources, - env: { ...e.env, ...g.env }, - clientVersion: e.clientVersion, - }); - } catch {} - let { - ok: n, - isUsing: i, - diagnostics: o, - } = as({ - url: r, - adapter: e.adapter, - copyEngine: t, - targetBuildType: "wasm-engine-edge", - }); - for (let A of o.warnings) Tt(...A.value); - if (!n) { - let A = o.errors[0]; - throw new Y(A.value, { clientVersion: e.clientVersion }); - } - let s = Je(e.generator), - a = s === "library", - f = s === "binary", - v = s === "client", - R = (i.accelerate || i.ppg) && !i.driverAdapters; - return i.accelerate - ? new Zt(e) - : i.driverAdapters - ? new er(e) - : new $n({ clientVersion: e.clientVersion }); -} -var $n = class { - constructor(e) { - return new Proxy(this, { - get(r, n) { - let i = `In order to run Prisma Client on edge runtime, either: +To solve this, provide the connection string directly: https://pris.ly/d/cloudflare-datasource-url`,n):new M(`error: Environment variable not found: ${s.fromEnvVar}.`,n);if(i===void 0)throw new M("error: Missing URL environment variable, value, or override.",n);return i}u();c();p();m();d();l();u();c();p();m();d();l();u();c();p();m();d();l();var Br=class extends Error{clientVersion;cause;constructor(e,r){super(e),this.clientVersion=r.clientVersion,this.cause=r.cause}get[Symbol.toStringTag](){return this.name}};var ie=class extends Br{isRetryable;constructor(e,r){super(e,r),this.isRetryable=r.isRetryable??!0}};u();c();p();m();d();l();function _(t,e){return{...t,isRetryable:e}}var Ue=class extends ie{name="InvalidDatasourceError";code="P6001";constructor(e,r){super(e,_(r,!1))}};O(Ue,"InvalidDatasourceError");function zo(t){let e={clientVersion:t.clientVersion},r=Object.keys(t.inlineDatasources)[0],n=ct({inlineDatasources:t.inlineDatasources,overrideDatasources:t.overrideDatasources,clientVersion:t.clientVersion,env:{...t.env,...typeof g<"u"?g.env:{}}}),i;try{i=new URL(n)}catch{throw new Ue(`Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\``,e)}let{protocol:o,searchParams:s}=i;if(o!=="prisma:"&&o!==fr)throw new Ue(`Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\` or \`prisma+postgres://\``,e);let a=s.get("api_key");if(a===null||a.length<1)throw new Ue(`Error validating datasource \`${r}\`: the URL must contain a valid API key`,e);let f=cn(i)?"http:":"https:";g.env.TEST_CLIENT_ENGINE_REMOTE_EXECUTOR&&i.searchParams.has("use_http")&&(f="http:");let v=new URL(i.href.replace(o,f));return{apiKey:a,url:v}}u();c();p();m();d();l();var Yo=bt(Di()),$r=class{apiKey;tracingHelper;logLevel;logQueries;engineHash;constructor({apiKey:e,tracingHelper:r,logLevel:n,logQueries:i,engineHash:o}){this.apiKey=e,this.tracingHelper=r,this.logLevel=n,this.logQueries=i,this.engineHash=o}build({traceparent:e,transactionId:r}={}){let n={Accept:"application/json",Authorization:`Bearer ${this.apiKey}`,"Content-Type":"application/json","Prisma-Engine-Hash":this.engineHash,"Prisma-Engine-Version":Yo.enginesVersion};this.tracingHelper.isEnabled()&&(n.traceparent=e??this.tracingHelper.getTraceParent()),r&&(n["X-Transaction-Id"]=r);let i=this.#e();return i.length>0&&(n["X-Capture-Telemetry"]=i.join(", ")),n}#e(){let e=[];return this.tracingHelper.isEnabled()&&e.push("tracing"),this.logLevel&&e.push(this.logLevel),this.logQueries&&e.push("query"),e}};u();c();p();m();d();l();function hu(t){return t[0]*1e3+t[1]/1e6}function _n(t){return new Date(hu(t))}u();c();p();m();d();l();u();c();p();m();d();l();var pt=class extends ie{name="ForcedRetryError";code="P5001";constructor(e){super("This request must be retried",_(e,!0))}};O(pt,"ForcedRetryError");u();c();p();m();d();l();var qe=class extends ie{name="NotImplementedYetError";code="P5004";constructor(e,r){super(e,_(r,!1))}};O(qe,"NotImplementedYetError");u();c();p();m();d();l();u();c();p();m();d();l();var V=class extends ie{response;constructor(e,r){super(e,r),this.response=r.response;let n=this.response.headers.get("prisma-request-id");if(n){let i=`(The request id was: ${n})`;this.message=this.message+" "+i}}};var Ve=class extends V{name="SchemaMissingError";code="P5005";constructor(e){super("Schema needs to be uploaded",_(e,!0))}};O(Ve,"SchemaMissingError");u();c();p();m();d();l();u();c();p();m();d();l();var Mn="This request could not be understood by the server",Vt=class extends V{name="BadRequestError";code="P5000";constructor(e,r,n){super(r||Mn,_(e,!1)),n&&(this.code=n)}};O(Vt,"BadRequestError");u();c();p();m();d();l();var Bt=class extends V{name="HealthcheckTimeoutError";code="P5013";logs;constructor(e,r){super("Engine not started: healthcheck timeout",_(e,!0)),this.logs=r}};O(Bt,"HealthcheckTimeoutError");u();c();p();m();d();l();var $t=class extends V{name="EngineStartupError";code="P5014";logs;constructor(e,r,n){super(r,_(e,!0)),this.logs=n}};O($t,"EngineStartupError");u();c();p();m();d();l();var jt=class extends V{name="EngineVersionNotSupportedError";code="P5012";constructor(e){super("Engine version is not supported",_(e,!1))}};O(jt,"EngineVersionNotSupportedError");u();c();p();m();d();l();var Ln="Request timed out",Qt=class extends V{name="GatewayTimeoutError";code="P5009";constructor(e,r=Ln){super(r,_(e,!1))}};O(Qt,"GatewayTimeoutError");u();c();p();m();d();l();var bu="Interactive transaction error",Gt=class extends V{name="InteractiveTransactionError";code="P5015";constructor(e,r=bu){super(r,_(e,!1))}};O(Gt,"InteractiveTransactionError");u();c();p();m();d();l();var Eu="Request parameters are invalid",Jt=class extends V{name="InvalidRequestError";code="P5011";constructor(e,r=Eu){super(r,_(e,!1))}};O(Jt,"InvalidRequestError");u();c();p();m();d();l();var Fn="Requested resource does not exist",Wt=class extends V{name="NotFoundError";code="P5003";constructor(e,r=Fn){super(r,_(e,!1))}};O(Wt,"NotFoundError");u();c();p();m();d();l();var Nn="Unknown server error",mt=class extends V{name="ServerError";code="P5006";logs;constructor(e,r,n){super(r||Nn,_(e,!0)),this.logs=n}};O(mt,"ServerError");u();c();p();m();d();l();var Un="Unauthorized, check your connection string",Kt=class extends V{name="UnauthorizedError";code="P5007";constructor(e,r=Un){super(r,_(e,!1))}};O(Kt,"UnauthorizedError");u();c();p();m();d();l();var qn="Usage exceeded, retry again later",Ht=class extends V{name="UsageExceededError";code="P5008";constructor(e,r=qn){super(r,_(e,!0))}};O(Ht,"UsageExceededError");async function wu(t){let e;try{e=await t.text()}catch{return{type:"EmptyError"}}try{let r=JSON.parse(e);if(typeof r=="string")switch(r){case"InternalDataProxyError":return{type:"DataProxyError",body:r};default:return{type:"UnknownTextError",body:r}}if(typeof r=="object"&&r!==null){if("is_panic"in r&&"message"in r&&"error_code"in r)return{type:"QueryEngineError",body:r};if("EngineNotStarted"in r||"InteractiveTransactionMisrouted"in r||"InvalidRequestError"in r){let n=Object.values(r)[0].reason;return typeof n=="string"&&!["SchemaMissing","EngineVersionNotSupported"].includes(n)?{type:"UnknownJsonError",body:r}:{type:"DataProxyError",body:r}}}return{type:"UnknownJsonError",body:r}}catch{return e===""?{type:"EmptyError"}:{type:"UnknownTextError",body:e}}}async function zt(t,e){if(t.ok)return;let r={clientVersion:e,response:t},n=await wu(t);if(n.type==="QueryEngineError")throw new X(n.body.message,{code:n.body.error_code,clientVersion:e});if(n.type==="DataProxyError"){if(n.body==="InternalDataProxyError")throw new mt(r,"Internal Data Proxy error");if("EngineNotStarted"in n.body){if(n.body.EngineNotStarted.reason==="SchemaMissing")return new Ve(r);if(n.body.EngineNotStarted.reason==="EngineVersionNotSupported")throw new jt(r);if("EngineStartupError"in n.body.EngineNotStarted.reason){let{msg:i,logs:o}=n.body.EngineNotStarted.reason.EngineStartupError;throw new $t(r,i,o)}if("KnownEngineStartupError"in n.body.EngineNotStarted.reason){let{msg:i,error_code:o}=n.body.EngineNotStarted.reason.KnownEngineStartupError;throw new M(i,e,o)}if("HealthcheckTimeout"in n.body.EngineNotStarted.reason){let{logs:i}=n.body.EngineNotStarted.reason.HealthcheckTimeout;throw new Bt(r,i)}}if("InteractiveTransactionMisrouted"in n.body){let i={IDParseError:"Could not parse interactive transaction ID",NoQueryEngineFoundError:"Could not find Query Engine for the specified host and transaction ID",TransactionStartError:"Could not start interactive transaction"};throw new Gt(r,i[n.body.InteractiveTransactionMisrouted.reason])}if("InvalidRequestError"in n.body)throw new Jt(r,n.body.InvalidRequestError.reason)}if(t.status===401||t.status===403)throw new Kt(r,dt(Un,n));if(t.status===404)return new Wt(r,dt(Fn,n));if(t.status===429)throw new Ht(r,dt(qn,n));if(t.status===504)throw new Qt(r,dt(Ln,n));if(t.status>=500)throw new mt(r,dt(Nn,n));if(t.status>=400)throw new Vt(r,dt(Mn,n))}function dt(t,e){return e.type==="EmptyError"?t:`${t}: ${JSON.stringify(e)}`}u();c();p();m();d();l();function Xo(t){let e=Math.pow(2,t)*50,r=Math.ceil(Math.random()*e)-Math.ceil(e/2),n=e+r;return new Promise(i=>setTimeout(()=>i(n),n))}u();c();p();m();d();l();var Re="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function Zo(t){let e=new TextEncoder().encode(t),r="",n=e.byteLength,i=n%3,o=n-i,s,a,f,v,R;for(let A=0;A>18,a=(R&258048)>>12,f=(R&4032)>>6,v=R&63,r+=Re[s]+Re[a]+Re[f]+Re[v];return i==1?(R=e[o],s=(R&252)>>2,a=(R&3)<<4,r+=Re[s]+Re[a]+"=="):i==2&&(R=e[o]<<8|e[o+1],s=(R&64512)>>10,a=(R&1008)>>4,f=(R&15)<<2,r+=Re[s]+Re[a]+Re[f]+"="),r}u();c();p();m();d();l();function es(t){if(!!t.generator?.previewFeatures.some(r=>r.toLowerCase().includes("metrics")))throw new M("The `metrics` preview feature is not yet available with Accelerate.\nPlease remove `metrics` from the `previewFeatures` in your schema.\n\nMore information about Accelerate: https://pris.ly/d/accelerate",t.clientVersion)}u();c();p();m();d();l();var ts={"@prisma/debug":"workspace:*","@prisma/engines-version":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/fetch-engine":"workspace:*","@prisma/get-platform":"workspace:*"};u();c();p();m();d();l();u();c();p();m();d();l();var Yt=class extends ie{name="RequestError";code="P5010";constructor(e,r){super(`Cannot fetch data from service: +${e}`,_(r,!0))}};O(Yt,"RequestError");async function Be(t,e,r=n=>n){let{clientVersion:n,...i}=e,o=r(fetch);try{return await o(t,i)}catch(s){let a=s.message??"Unknown error";throw new Yt(a,{clientVersion:n,cause:s})}}var Pu=/^[1-9][0-9]*\.[0-9]+\.[0-9]+$/,rs=j("prisma:client:dataproxyEngine");async function Tu(t,e){let r=ts["@prisma/engines-version"],n=e.clientVersion??"unknown";if(g.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION||globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION)return g.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION||globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION;if(t.includes("accelerate")&&n!=="0.0.0"&&n!=="in-memory")return n;let[i,o]=n?.split("-")??[];if(o===void 0&&Pu.test(i))return i;if(o!==void 0||n==="0.0.0"||n==="in-memory"){let[s]=r.split("-")??[],[a,f,v]=s.split("."),R=vu(`<=${a}.${f}.${v}`),A=await Be(R,{clientVersion:n});if(!A.ok)throw new Error(`Failed to fetch stable Prisma version, unpkg.com status ${A.status} ${A.statusText}, response body: ${await A.text()||""}`);let I=await A.text();rs("length of body fetched from unpkg.com",I.length);let C;try{C=JSON.parse(I)}catch(L){throw console.error("JSON.parse error: body fetched from unpkg.com: ",I),L}return C.version}throw new qe("Only `major.minor.patch` versions are supported by Accelerate.",{clientVersion:n})}async function ns(t,e){let r=await Tu(t,e);return rs("version",r),r}function vu(t){return encodeURI(`https://unpkg.com/prisma@${t}/package.json`)}var is=3,Xt=j("prisma:client:dataproxyEngine"),Zt=class{name="DataProxyEngine";inlineSchema;inlineSchemaHash;inlineDatasources;config;logEmitter;env;clientVersion;engineHash;tracingHelper;remoteClientVersion;host;headerBuilder;startPromise;protocol;constructor(e){es(e),this.config=e,this.env=e.env,this.inlineSchema=Zo(e.inlineSchema),this.inlineDatasources=e.inlineDatasources,this.inlineSchemaHash=e.inlineSchemaHash,this.clientVersion=e.clientVersion,this.engineHash=e.engineVersion,this.logEmitter=e.logEmitter,this.tracingHelper=e.tracingHelper}apiKey(){return this.headerBuilder.apiKey}version(){return this.engineHash}async start(){this.startPromise!==void 0&&await this.startPromise,this.startPromise=(async()=>{let{apiKey:e,url:r}=this.getURLAndAPIKey();this.host=r.host,this.protocol=r.protocol,this.headerBuilder=new $r({apiKey:e,tracingHelper:this.tracingHelper,logLevel:this.config.logLevel??"error",logQueries:this.config.logQueries,engineHash:this.engineHash}),this.remoteClientVersion=await ns(this.host,this.config),Xt("host",this.host),Xt("protocol",this.protocol)})(),await this.startPromise}async stop(){}propagateResponseExtensions(e){e?.logs?.length&&e.logs.forEach(r=>{switch(r.level){case"debug":case"trace":Xt(r);break;case"error":case"warn":case"info":{this.logEmitter.emit(r.level,{timestamp:_n(r.timestamp),message:r.attributes.message??"",target:r.target??"BinaryEngine"});break}case"query":{this.logEmitter.emit("query",{query:r.attributes.query??"",timestamp:_n(r.timestamp),duration:r.attributes.duration_ms??0,params:r.attributes.params??"",target:r.target??"BinaryEngine"});break}default:r.level}}),e?.traces?.length&&this.tracingHelper.dispatchEngineSpans(e.traces)}onBeforeExit(){throw new Error('"beforeExit" hook is not applicable to the remote query engine')}async url(e){return await this.start(),`${this.protocol}//${this.host}/${this.remoteClientVersion}/${this.inlineSchemaHash}/${e}`}async uploadSchema(){let e={name:"schemaUpload",internal:!0};return this.tracingHelper.runInChildSpan(e,async()=>{let r=await Be(await this.url("schema"),{method:"PUT",headers:this.headerBuilder.build(),body:this.inlineSchema,clientVersion:this.clientVersion});r.ok||Xt("schema response status",r.status);let n=await zt(r,this.clientVersion);if(n)throw this.logEmitter.emit("warn",{message:`Error while uploading schema: ${n.message}`,timestamp:new Date,target:""}),n;this.logEmitter.emit("info",{message:`Schema (re)uploaded (hash: ${this.inlineSchemaHash})`,timestamp:new Date,target:""})})}request(e,{traceparent:r,interactiveTransaction:n,customDataProxyFetch:i}){return this.requestInternal({body:e,traceparent:r,interactiveTransaction:n,customDataProxyFetch:i})}async requestBatch(e,{traceparent:r,transaction:n,customDataProxyFetch:i}){let o=n?.kind==="itx"?n.options:void 0,s=ot(e,n);return(await this.requestInternal({body:s,customDataProxyFetch:i,interactiveTransaction:o,traceparent:r})).map(f=>(f.extensions&&this.propagateResponseExtensions(f.extensions),"errors"in f?this.convertProtocolErrorsToClientError(f.errors):f))}requestInternal({body:e,traceparent:r,customDataProxyFetch:n,interactiveTransaction:i}){return this.withRetry({actionGerund:"querying",callback:async({logHttpCall:o})=>{let s=i?`${i.payload.endpoint}/graphql`:await this.url("graphql");o(s);let a=await Be(s,{method:"POST",headers:this.headerBuilder.build({traceparent:r,transactionId:i?.id}),body:JSON.stringify(e),clientVersion:this.clientVersion},n);a.ok||Xt("graphql response status",a.status),await this.handleError(await zt(a,this.clientVersion));let f=await a.json();if(f.extensions&&this.propagateResponseExtensions(f.extensions),"errors"in f)throw this.convertProtocolErrorsToClientError(f.errors);return"batchResult"in f?f.batchResult:f}})}async transaction(e,r,n){let i={start:"starting",commit:"committing",rollback:"rolling back"};return this.withRetry({actionGerund:`${i[e]} transaction`,callback:async({logHttpCall:o})=>{if(e==="start"){let s=JSON.stringify({max_wait:n.maxWait,timeout:n.timeout,isolation_level:n.isolationLevel}),a=await this.url("transaction/start");o(a);let f=await Be(a,{method:"POST",headers:this.headerBuilder.build({traceparent:r.traceparent}),body:s,clientVersion:this.clientVersion});await this.handleError(await zt(f,this.clientVersion));let v=await f.json(),{extensions:R}=v;R&&this.propagateResponseExtensions(R);let A=v.id,I=v["data-proxy"].endpoint;return{id:A,payload:{endpoint:I}}}else{let s=`${n.payload.endpoint}/${e}`;o(s);let a=await Be(s,{method:"POST",headers:this.headerBuilder.build({traceparent:r.traceparent}),clientVersion:this.clientVersion});await this.handleError(await zt(a,this.clientVersion));let f=await a.json(),{extensions:v}=f;v&&this.propagateResponseExtensions(v);return}}})}getURLAndAPIKey(){return zo({clientVersion:this.clientVersion,env:this.env,inlineDatasources:this.inlineDatasources,overrideDatasources:this.config.overrideDatasources})}metrics(){throw new qe("Metrics are not yet supported for Accelerate",{clientVersion:this.clientVersion})}async withRetry(e){for(let r=0;;r++){let n=i=>{this.logEmitter.emit("info",{message:`Calling ${i} (n=${r})`,timestamp:new Date,target:""})};try{return await e.callback({logHttpCall:n})}catch(i){if(!(i instanceof ie)||!i.isRetryable)throw i;if(r>=is)throw i instanceof pt?i.cause:i;this.logEmitter.emit("warn",{message:`Attempt ${r+1}/${is} failed for ${e.actionGerund}: ${i.message??"(unknown)"}`,timestamp:new Date,target:""});let o=await Xo(r);this.logEmitter.emit("warn",{message:`Retrying after ${o}ms`,timestamp:new Date,target:""})}}}async handleError(e){if(e instanceof Ve)throw await this.uploadSchema(),new pt({clientVersion:this.clientVersion,cause:e});if(e)throw e}convertProtocolErrorsToClientError(e){return e.length===1?st(e[0],this.config.clientVersion,this.config.activeProvider):new Q(JSON.stringify(e),{clientVersion:this.config.clientVersion})}applyPendingMigrations(){throw new Error("Method not implemented.")}};u();c();p();m();d();l();u();c();p();m();d();l();function os(t){if(t?.kind==="itx")return t.options.id}u();c();p();m();d();l();var Vn,ss={async loadLibrary(t){let{clientVersion:e,adapter:r,engineWasm:n}=t;if(r===void 0)throw new M(`The \`adapter\` option for \`PrismaClient\` is required in this context (${ut().prettyName})`,e);if(n===void 0)throw new M("WASM engine was unexpectedly `undefined`",e);Vn===void 0&&(Vn=(async()=>{let o=await n.getRuntime(),s=await n.getQueryEngineWasmModule();if(s==null)throw new M("The loaded wasm module was unexpectedly `undefined` or `null` once loaded",e);let a={"./query_engine_bg.js":o},f=new WebAssembly.Instance(s,a),v=f.exports.__wbindgen_start;return o.__wbg_set_wasm(f.exports),v(),o.QueryEngine})());let i=await Vn;return{debugPanic(){return Promise.reject("{}")},dmmf(){return Promise.resolve("{}")},version(){return{commit:"unknown",version:"unknown"}},QueryEngine:i}}};var Ru="P2036",be=j("prisma:client:libraryEngine");function Au(t){return t.item_type==="query"&&"query"in t}function Cu(t){return"level"in t?t.level==="error"&&t.message==="PANIC":!1}var VL=[...on,"native"],Su=0xffffffffffffffffn,Bn=1n;function Iu(){let t=Bn++;return Bn>Su&&(Bn=1n),t}var er=class{name="LibraryEngine";engine;libraryInstantiationPromise;libraryStartingPromise;libraryStoppingPromise;libraryStarted;executingQueryPromise;config;QueryEngineConstructor;libraryLoader;library;logEmitter;libQueryEnginePath;binaryTarget;datasourceOverrides;datamodel;logQueries;logLevel;lastQuery;loggerRustPanic;tracingHelper;adapterPromise;versionInfo;constructor(e,r){this.libraryLoader=r??ss,this.config=e,this.libraryStarted=!1,this.logQueries=e.logQueries??!1,this.logLevel=e.logLevel??"error",this.logEmitter=e.logEmitter,this.datamodel=e.inlineSchema,this.tracingHelper=e.tracingHelper,e.enableDebugLogs&&(this.logLevel="debug");let n=Object.keys(e.overrideDatasources)[0],i=e.overrideDatasources[n]?.url;n!==void 0&&i!==void 0&&(this.datasourceOverrides={[n]:i}),this.libraryInstantiationPromise=this.instantiateLibrary()}wrapEngine(e){return{applyPendingMigrations:e.applyPendingMigrations?.bind(e),commitTransaction:this.withRequestId(e.commitTransaction.bind(e)),connect:this.withRequestId(e.connect.bind(e)),disconnect:this.withRequestId(e.disconnect.bind(e)),metrics:e.metrics?.bind(e),query:this.withRequestId(e.query.bind(e)),rollbackTransaction:this.withRequestId(e.rollbackTransaction.bind(e)),sdlSchema:e.sdlSchema?.bind(e),startTransaction:this.withRequestId(e.startTransaction.bind(e)),trace:e.trace.bind(e),free:e.free?.bind(e)}}withRequestId(e){return async(...r)=>{let n=Iu().toString();try{return await e(...r,n)}finally{if(this.tracingHelper.isEnabled()){let i=await this.engine?.trace(n);if(i){let o=JSON.parse(i);this.tracingHelper.dispatchEngineSpans(o.spans)}}}}}async applyPendingMigrations(){throw new Error("Cannot call this method from this type of engine instance")}async transaction(e,r,n){await this.start();let i=await this.adapterPromise,o=JSON.stringify(r),s;if(e==="start"){let f=JSON.stringify({max_wait:n.maxWait,timeout:n.timeout,isolation_level:n.isolationLevel});s=await this.engine?.startTransaction(f,o)}else e==="commit"?s=await this.engine?.commitTransaction(n.id,o):e==="rollback"&&(s=await this.engine?.rollbackTransaction(n.id,o));let a=this.parseEngineResponse(s);if(Du(a)){let f=this.getExternalAdapterError(a,i?.errorRegistry);throw f?f.error:new X(a.message,{code:a.error_code,clientVersion:this.config.clientVersion,meta:a.meta})}else if(typeof a.message=="string")throw new Q(a.message,{clientVersion:this.config.clientVersion});return a}async instantiateLibrary(){if(be("internalSetup"),this.libraryInstantiationPromise)return this.libraryInstantiationPromise;this.binaryTarget=await this.getCurrentBinaryTarget(),await this.tracingHelper.runInChildSpan("load_engine",()=>this.loadEngine()),this.version()}async getCurrentBinaryTarget(){}parseEngineResponse(e){if(!e)throw new Q("Response from the Engine was empty",{clientVersion:this.config.clientVersion});try{return JSON.parse(e)}catch{throw new Q("Unable to JSON.parse response from engine",{clientVersion:this.config.clientVersion})}}async loadEngine(){if(!this.engine){this.QueryEngineConstructor||(this.library=await this.libraryLoader.loadLibrary(this.config),this.QueryEngineConstructor=this.library.QueryEngine);try{let e=new b(this);this.adapterPromise||(this.adapterPromise=this.config.adapter?.connect()?.then(mr));let r=await this.adapterPromise;r&&be("Using driver adapter: %O",r),this.engine=this.wrapEngine(new this.QueryEngineConstructor({datamodel:this.datamodel,env:g.env,logQueries:this.config.logQueries??!1,ignoreEnvVarErrors:!0,datasourceOverrides:this.datasourceOverrides??{},logLevel:this.logLevel,configDir:this.config.cwd,engineProtocol:"json",enableTracing:this.tracingHelper.isEnabled()},n=>{e.deref()?.logger(n)},r))}catch(e){let r=e,n=this.parseInitError(r.message);throw typeof n=="string"?r:new M(n.message,this.config.clientVersion,n.error_code)}}}logger(e){let r=this.parseEngineResponse(e);r&&(r.level=r?.level.toLowerCase()??"unknown",Au(r)?this.logEmitter.emit("query",{timestamp:new Date,query:r.query,params:r.params,duration:Number(r.duration_ms),target:r.module_path}):(Cu(r),this.logEmitter.emit(r.level,{timestamp:new Date,message:r.message,target:r.module_path})))}parseInitError(e){try{return JSON.parse(e)}catch{}return e}parseRequestError(e){try{return JSON.parse(e)}catch{}return e}onBeforeExit(){throw new Error('"beforeExit" hook is not applicable to the library engine since Prisma 5.0.0, it is only relevant and implemented for the binary engine. Please add your event listener to the `process` object directly instead.')}async start(){if(this.libraryInstantiationPromise||(this.libraryInstantiationPromise=this.instantiateLibrary()),await this.libraryInstantiationPromise,await this.libraryStoppingPromise,this.libraryStartingPromise)return be(`library already starting, this.libraryStarted: ${this.libraryStarted}`),this.libraryStartingPromise;if(this.libraryStarted)return;let e=async()=>{be("library starting");try{let r={traceparent:this.tracingHelper.getTraceParent()};await this.engine?.connect(JSON.stringify(r)),this.libraryStarted=!0,this.adapterPromise||(this.adapterPromise=this.config.adapter?.connect()?.then(mr)),await this.adapterPromise,be("library started")}catch(r){let n=this.parseInitError(r.message);throw typeof n=="string"?r:new M(n.message,this.config.clientVersion,n.error_code)}finally{this.libraryStartingPromise=void 0}};return this.libraryStartingPromise=this.tracingHelper.runInChildSpan("connect",e),this.libraryStartingPromise}async stop(){if(await this.libraryInstantiationPromise,await this.libraryStartingPromise,await this.executingQueryPromise,this.libraryStoppingPromise)return be("library is already stopping"),this.libraryStoppingPromise;if(!this.libraryStarted){await(await this.adapterPromise)?.dispose(),this.adapterPromise=void 0;return}let e=async()=>{await new Promise(n=>setImmediate(n)),be("library stopping");let r={traceparent:this.tracingHelper.getTraceParent()};await this.engine?.disconnect(JSON.stringify(r)),this.engine?.free&&this.engine.free(),this.engine=void 0,this.libraryStarted=!1,this.libraryStoppingPromise=void 0,this.libraryInstantiationPromise=void 0,await(await this.adapterPromise)?.dispose(),this.adapterPromise=void 0,be("library stopped")};return this.libraryStoppingPromise=this.tracingHelper.runInChildSpan("disconnect",e),this.libraryStoppingPromise}version(){return this.versionInfo=this.library?.version(),this.versionInfo?.version??"unknown"}debugPanic(e){return this.library?.debugPanic(e)}async request(e,{traceparent:r,interactiveTransaction:n}){be(`sending request, this.libraryStarted: ${this.libraryStarted}`);let i=JSON.stringify({traceparent:r}),o=JSON.stringify(e);try{await this.start();let s=await this.adapterPromise;this.executingQueryPromise=this.engine?.query(o,i,n?.id),this.lastQuery=o;let a=this.parseEngineResponse(await this.executingQueryPromise);if(a.errors)throw a.errors.length===1?this.buildQueryError(a.errors[0],s?.errorRegistry):new Q(JSON.stringify(a.errors),{clientVersion:this.config.clientVersion});if(this.loggerRustPanic)throw this.loggerRustPanic;return{data:a}}catch(s){if(s instanceof M)throw s;s.code==="GenericFailure"&&s.message?.startsWith("PANIC:");let a=this.parseRequestError(s.message);throw typeof a=="string"?s:new Q(`${a.message} +${a.backtrace}`,{clientVersion:this.config.clientVersion})}}async requestBatch(e,{transaction:r,traceparent:n}){be("requestBatch");let i=ot(e,r);await this.start();let o=await this.adapterPromise;this.lastQuery=JSON.stringify(i),this.executingQueryPromise=this.engine?.query(this.lastQuery,JSON.stringify({traceparent:n}),os(r));let s=await this.executingQueryPromise,a=this.parseEngineResponse(s);if(a.errors)throw a.errors.length===1?this.buildQueryError(a.errors[0],o?.errorRegistry):new Q(JSON.stringify(a.errors),{clientVersion:this.config.clientVersion});let{batchResult:f,errors:v}=a;if(Array.isArray(f))return f.map(R=>R.errors&&R.errors.length>0?this.loggerRustPanic??this.buildQueryError(R.errors[0],o?.errorRegistry):{data:R});throw v&&v.length===1?new Error(v[0].error):new Error(JSON.stringify(a))}buildQueryError(e,r){e.user_facing_error.is_panic;let n=this.getExternalAdapterError(e.user_facing_error,r);return n?n.error:st(e,this.config.clientVersion,this.config.activeProvider)}getExternalAdapterError(e,r){if(e.error_code===Ru&&r){let n=e.meta?.id;yr(typeof n=="number","Malformed external JS error received from the engine");let i=r.consumeError(n);return yr(i,"External error with reported id was not registered"),i}}async metrics(e){await this.start();let r=await this.engine.metrics(JSON.stringify(e));return e.format==="prometheus"?r:this.parseEngineResponse(r)}};function Du(t){return typeof t=="object"&&t!==null&&t.error_code!==void 0}u();c();p();m();d();l();function as({url:t,adapter:e,copyEngine:r,targetBuildType:n}){let i=[],o=[],s=D=>{i.push({_tag:"warning",value:D})},a=D=>{let k=D.join(` +`);o.push({_tag:"error",value:k})},f=!!t?.startsWith("prisma://"),v=gr(t),R=!!e,A=f||v;!R&&r&&A&&n!=="client"&&n!=="wasm-compiler-edge"&&s(["recommend--no-engine","In production, we recommend using `prisma generate --no-engine` (See: `prisma generate --help`)"]);let I=A||!r;R&&(I||n==="edge")&&(n==="edge"?a(["Prisma Client was configured to use the `adapter` option but it was imported via its `/edge` endpoint.","Please either remove the `/edge` endpoint or remove the `adapter` from the Prisma Client constructor."]):A?a(["You've provided both a driver adapter and an Accelerate database URL. Driver adapters currently cannot connect to Accelerate.","Please provide either a driver adapter with a direct database URL or an Accelerate URL and no driver adapter."]):r||a(["Prisma Client was configured to use the `adapter` option but `prisma generate` was run with `--no-engine`.","Please run `prisma generate` without `--no-engine` to be able to use Prisma Client with the adapter."]));let C={accelerate:I,ppg:v,driverAdapters:R};function L(D){return D.length>0}return L(o)?{ok:!1,diagnostics:{warnings:i,errors:o},isUsing:C}:{ok:!0,diagnostics:{warnings:i},isUsing:C}}function ls({copyEngine:t=!0},e){let r;try{r=ct({inlineDatasources:e.inlineDatasources,overrideDatasources:e.overrideDatasources,env:{...e.env,...g.env},clientVersion:e.clientVersion})}catch{}let{ok:n,isUsing:i,diagnostics:o}=as({url:r,adapter:e.adapter,copyEngine:t,targetBuildType:"wasm-engine-edge"});for(let A of o.warnings)Tt(...A.value);if(!n){let A=o.errors[0];throw new Y(A.value,{clientVersion:e.clientVersion})}let s=Je(e.generator),a=s==="library",f=s==="binary",v=s==="client",R=(i.accelerate||i.ppg)&&!i.driverAdapters;return i.accelerate?new Zt(e):i.driverAdapters?new er(e):new $n({clientVersion:e.clientVersion})}var $n=class{constructor(e){return new Proxy(this,{get(r,n){let i=`In order to run Prisma Client on edge runtime, either: - Use Prisma Accelerate: https://pris.ly/d/accelerate -- Use Driver Adapters: https://pris.ly/d/driver-adapters`; - throw new Y(i, e); - }, - }); - } -}; -u(); -c(); -p(); -m(); -d(); -l(); -function us({ generator: t }) { - return t?.previewFeatures ?? []; -} -u(); -c(); -p(); -m(); -d(); -l(); -var cs = (t) => ({ command: t }); -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -var ps = (t) => t.strings.reduce((e, r, n) => `${e}@P${n}${r}`); -u(); -c(); -p(); -m(); -d(); -l(); -l(); -function ft(t) { - try { - return ms(t, "fast"); - } catch { - return ms(t, "slow"); - } -} -function ms(t, e) { - return JSON.stringify(t.map((r) => fs(r, e))); -} -function fs(t, e) { - if (Array.isArray(t)) return t.map((r) => fs(r, e)); - if (typeof t == "bigint") - return { prisma__type: "bigint", prisma__value: t.toString() }; - if (We(t)) return { prisma__type: "date", prisma__value: t.toJSON() }; - if (xe.isDecimal(t)) - return { prisma__type: "decimal", prisma__value: t.toJSON() }; - if (h.isBuffer(t)) - return { prisma__type: "bytes", prisma__value: t.toString("base64") }; - if (Ou(t)) - return { - prisma__type: "bytes", - prisma__value: h.from(t).toString("base64"), - }; - if (ArrayBuffer.isView(t)) { - let { buffer: r, byteOffset: n, byteLength: i } = t; - return { - prisma__type: "bytes", - prisma__value: h.from(r, n, i).toString("base64"), - }; - } - return typeof t == "object" && e === "slow" ? gs(t) : t; -} -function Ou(t) { - return t instanceof ArrayBuffer || t instanceof SharedArrayBuffer - ? !0 - : typeof t == "object" && t !== null - ? t[Symbol.toStringTag] === "ArrayBuffer" || - t[Symbol.toStringTag] === "SharedArrayBuffer" - : !1; -} -function gs(t) { - if (typeof t != "object" || t === null) return t; - if (typeof t.toJSON == "function") return t.toJSON(); - if (Array.isArray(t)) return t.map(ds); - let e = {}; - for (let r of Object.keys(t)) e[r] = ds(t[r]); - return e; -} -function ds(t) { - return typeof t == "bigint" ? t.toString() : gs(t); -} -var ku = /^(\s*alter\s)/i, - ys = j("prisma:client"); -function jn(t, e, r, n) { - if ( - !(t !== "postgresql" && t !== "cockroachdb") && - r.length > 0 && - ku.exec(e) - ) - throw new Error(`Running ALTER using ${n} is not supported +- Use Driver Adapters: https://pris.ly/d/driver-adapters`;throw new Y(i,e)}})}};u();c();p();m();d();l();function us({generator:t}){return t?.previewFeatures??[]}u();c();p();m();d();l();var cs=t=>({command:t});u();c();p();m();d();l();u();c();p();m();d();l();var ps=t=>t.strings.reduce((e,r,n)=>`${e}@P${n}${r}`);u();c();p();m();d();l();l();function ft(t){try{return ms(t,"fast")}catch{return ms(t,"slow")}}function ms(t,e){return JSON.stringify(t.map(r=>fs(r,e)))}function fs(t,e){if(Array.isArray(t))return t.map(r=>fs(r,e));if(typeof t=="bigint")return{prisma__type:"bigint",prisma__value:t.toString()};if(We(t))return{prisma__type:"date",prisma__value:t.toJSON()};if(xe.isDecimal(t))return{prisma__type:"decimal",prisma__value:t.toJSON()};if(h.isBuffer(t))return{prisma__type:"bytes",prisma__value:t.toString("base64")};if(Ou(t))return{prisma__type:"bytes",prisma__value:h.from(t).toString("base64")};if(ArrayBuffer.isView(t)){let{buffer:r,byteOffset:n,byteLength:i}=t;return{prisma__type:"bytes",prisma__value:h.from(r,n,i).toString("base64")}}return typeof t=="object"&&e==="slow"?gs(t):t}function Ou(t){return t instanceof ArrayBuffer||t instanceof SharedArrayBuffer?!0:typeof t=="object"&&t!==null?t[Symbol.toStringTag]==="ArrayBuffer"||t[Symbol.toStringTag]==="SharedArrayBuffer":!1}function gs(t){if(typeof t!="object"||t===null)return t;if(typeof t.toJSON=="function")return t.toJSON();if(Array.isArray(t))return t.map(ds);let e={};for(let r of Object.keys(t))e[r]=ds(t[r]);return e}function ds(t){return typeof t=="bigint"?t.toString():gs(t)}var ku=/^(\s*alter\s)/i,ys=j("prisma:client");function jn(t,e,r,n){if(!(t!=="postgresql"&&t!=="cockroachdb")&&r.length>0&&ku.exec(e))throw new Error(`Running ALTER using ${n} is not supported Using the example below you can still execute your query with Prisma, but please note that it is vulnerable to SQL injection attacks and requires you to take care of input sanitization. Example: await prisma.$executeRawUnsafe(\`ALTER USER prisma WITH PASSWORD '\${password}'\`) More Information: https://pris.ly/d/execute-raw -`); -} -var Qn = - ({ clientMethod: t, activeProvider: e }) => - (r) => { - let n = "", - i; - if (Lr(r)) - ((n = r.sql), - (i = { values: ft(r.values), __prismaRawParameters__: !0 })); - else if (Array.isArray(r)) { - let [o, ...s] = r; - ((n = o), (i = { values: ft(s || []), __prismaRawParameters__: !0 })); - } else - switch (e) { - case "sqlite": - case "mysql": { - ((n = r.sql), - (i = { values: ft(r.values), __prismaRawParameters__: !0 })); - break; - } - case "cockroachdb": - case "postgresql": - case "postgres": { - ((n = r.text), - (i = { values: ft(r.values), __prismaRawParameters__: !0 })); - break; - } - case "sqlserver": { - ((n = ps(r)), - (i = { values: ft(r.values), __prismaRawParameters__: !0 })); - break; - } - default: - throw new Error(`The ${e} provider does not support ${t}`); - } - return ( - i?.values - ? ys(`prisma.${t}(${n}, ${i.values})`) - : ys(`prisma.${t}(${n})`), - { query: n, parameters: i } - ); - }, - hs = { - requestArgsToMiddlewareArgs(t) { - return [t.strings, ...t.values]; - }, - middlewareArgsToRequestArgs(t) { - let [e, ...r] = t; - return new ne(e, r); - }, - }, - bs = { - requestArgsToMiddlewareArgs(t) { - return [t]; - }, - middlewareArgsToRequestArgs(t) { - return t[0]; - }, - }; -u(); -c(); -p(); -m(); -d(); -l(); -function Gn(t) { - return function (r, n) { - let i, - o = (s = t) => { - try { - return s === void 0 || s?.kind === "itx" - ? (i ??= Es(r(s))) - : Es(r(s)); - } catch (a) { - return Promise.reject(a); - } - }; - return { - get spec() { - return n; - }, - then(s, a) { - return o().then(s, a); - }, - catch(s) { - return o().catch(s); - }, - finally(s) { - return o().finally(s); - }, - requestTransaction(s) { - let a = o(s); - return a.requestTransaction ? a.requestTransaction(s) : a; - }, - [Symbol.toStringTag]: "PrismaPromise", - }; - }; -} -function Es(t) { - return typeof t.then == "function" ? t : Promise.resolve(t); -} -u(); -c(); -p(); -m(); -d(); -l(); -var _u = sn.split(".")[0], - Mu = { - isEnabled() { - return !1; - }, - getTraceParent() { - return "00-10-10-00"; - }, - dispatchEngineSpans() {}, - getActiveContext() {}, - runInChildSpan(t, e) { - return e(); - }, - }, - Jn = class { - isEnabled() { - return this.getGlobalTracingHelper().isEnabled(); - } - getTraceParent(e) { - return this.getGlobalTracingHelper().getTraceParent(e); - } - dispatchEngineSpans(e) { - return this.getGlobalTracingHelper().dispatchEngineSpans(e); - } - getActiveContext() { - return this.getGlobalTracingHelper().getActiveContext(); - } - runInChildSpan(e, r) { - return this.getGlobalTracingHelper().runInChildSpan(e, r); - } - getGlobalTracingHelper() { - let e = globalThis[`V${_u}_PRISMA_INSTRUMENTATION`], - r = globalThis.PRISMA_INSTRUMENTATION; - return e?.helper ?? r?.helper ?? Mu; - } - }; -function ws() { - return new Jn(); -} -u(); -c(); -p(); -m(); -d(); -l(); -function xs(t, e = () => {}) { - let r, - n = new Promise((i) => (r = i)); - return { - then(i) { - return (--t === 0 && r(e()), i?.(n)); - }, - }; -} -u(); -c(); -p(); -m(); -d(); -l(); -function Ps(t) { - return typeof t == "string" - ? t - : t.reduce( - (e, r) => { - let n = typeof r == "string" ? r : r.level; - return n === "query" - ? e - : e && (r === "info" || e === "info") - ? "info" - : n; - }, - void 0, - ); -} -u(); -c(); -p(); -m(); -d(); -l(); -u(); -c(); -p(); -m(); -d(); -l(); -function jr(t) { - return typeof t.batchRequestIdx == "number"; -} -u(); -c(); -p(); -m(); -d(); -l(); -function Ts(t) { - if (t.action !== "findUnique" && t.action !== "findUniqueOrThrow") return; - let e = []; - return ( - t.modelName && e.push(t.modelName), - t.query.arguments && e.push(Wn(t.query.arguments)), - e.push(Wn(t.query.selection)), - e.join("") - ); -} -function Wn(t) { - return `(${Object.keys(t) - .sort() - .map((r) => { - let n = t[r]; - return typeof n == "object" && n !== null ? `(${r} ${Wn(n)})` : r; - }) - .join(" ")})`; -} -u(); -c(); -p(); -m(); -d(); -l(); -var Lu = { - aggregate: !1, - aggregateRaw: !1, - createMany: !0, - createManyAndReturn: !0, - createOne: !0, - deleteMany: !0, - deleteOne: !0, - executeRaw: !0, - findFirst: !1, - findFirstOrThrow: !1, - findMany: !1, - findRaw: !1, - findUnique: !1, - findUniqueOrThrow: !1, - groupBy: !1, - queryRaw: !1, - runCommandRaw: !0, - updateMany: !0, - updateManyAndReturn: !0, - updateOne: !0, - upsertOne: !0, -}; -function Kn(t) { - return Lu[t]; -} -u(); -c(); -p(); -m(); -d(); -l(); -var Qr = class { - constructor(e) { - this.options = e; - this.batches = {}; - } - batches; - tickActive = !1; - request(e) { - let r = this.options.batchBy(e); - return r - ? (this.batches[r] || - ((this.batches[r] = []), - this.tickActive || - ((this.tickActive = !0), - g.nextTick(() => { - (this.dispatchBatches(), (this.tickActive = !1)); - }))), - new Promise((n, i) => { - this.batches[r].push({ request: e, resolve: n, reject: i }); - })) - : this.options.singleLoader(e); - } - dispatchBatches() { - for (let e in this.batches) { - let r = this.batches[e]; - (delete this.batches[e], - r.length === 1 - ? this.options - .singleLoader(r[0].request) - .then((n) => { - n instanceof Error ? r[0].reject(n) : r[0].resolve(n); - }) - .catch((n) => { - r[0].reject(n); - }) - : (r.sort((n, i) => this.options.batchOrder(n.request, i.request)), - this.options - .batchLoader(r.map((n) => n.request)) - .then((n) => { - if (n instanceof Error) - for (let i = 0; i < r.length; i++) r[i].reject(n); - else - for (let i = 0; i < r.length; i++) { - let o = n[i]; - o instanceof Error ? r[i].reject(o) : r[i].resolve(o); - } - }) - .catch((n) => { - for (let i = 0; i < r.length; i++) r[i].reject(n); - }))); - } - } - get [Symbol.toStringTag]() { - return "DataLoader"; - } -}; -u(); -c(); -p(); -m(); -d(); -l(); -l(); -function $e(t, e) { - if (e === null) return e; - switch (t) { - case "bigint": - return BigInt(e); - case "bytes": { - let { buffer: r, byteOffset: n, byteLength: i } = h.from(e, "base64"); - return new Uint8Array(r, n, i); - } - case "decimal": - return new xe(e); - case "datetime": - case "date": - return new Date(e); - case "time": - return new Date(`1970-01-01T${e}Z`); - case "bigint-array": - return e.map((r) => $e("bigint", r)); - case "bytes-array": - return e.map((r) => $e("bytes", r)); - case "decimal-array": - return e.map((r) => $e("decimal", r)); - case "datetime-array": - return e.map((r) => $e("datetime", r)); - case "date-array": - return e.map((r) => $e("date", r)); - case "time-array": - return e.map((r) => $e("time", r)); - default: - return e; - } -} -function Gr(t) { - let e = [], - r = Fu(t); - for (let n = 0; n < t.rows.length; n++) { - let i = t.rows[n], - o = { ...r }; - for (let s = 0; s < i.length; s++) o[t.columns[s]] = $e(t.types[s], i[s]); - e.push(o); - } - return e; -} -function Fu(t) { - let e = {}; - for (let r = 0; r < t.columns.length; r++) e[t.columns[r]] = null; - return e; -} -var Nu = j("prisma:client:request_handler"), - Jr = class { - client; - dataloader; - logEmitter; - constructor(e, r) { - ((this.logEmitter = r), - (this.client = e), - (this.dataloader = new Qr({ - batchLoader: Bo(async ({ requests: n, customDataProxyFetch: i }) => { - let { transaction: o, otelParentCtx: s } = n[0], - a = n.map((A) => A.protocolQuery), - f = this.client._tracingHelper.getTraceParent(s), - v = n.some((A) => Kn(A.protocolQuery.action)); - return ( - await this.client._engine.requestBatch(a, { - traceparent: f, - transaction: Uu(o), - containsWrite: v, - customDataProxyFetch: i, - }) - ).map((A, I) => { - if (A instanceof Error) return A; - try { - return this.mapQueryEngineResult(n[I], A); - } catch (C) { - return C; - } - }); - }), - singleLoader: async (n) => { - let i = n.transaction?.kind === "itx" ? vs(n.transaction) : void 0, - o = await this.client._engine.request(n.protocolQuery, { - traceparent: this.client._tracingHelper.getTraceParent(), - interactiveTransaction: i, - isWrite: Kn(n.protocolQuery.action), - customDataProxyFetch: n.customDataProxyFetch, - }); - return this.mapQueryEngineResult(n, o); - }, - batchBy: (n) => - n.transaction?.id - ? `transaction-${n.transaction.id}` - : Ts(n.protocolQuery), - batchOrder(n, i) { - return n.transaction?.kind === "batch" && - i.transaction?.kind === "batch" - ? n.transaction.index - i.transaction.index - : 0; - }, - }))); - } - async request(e) { - try { - return await this.dataloader.request(e); - } catch (r) { - let { - clientMethod: n, - callsite: i, - transaction: o, - args: s, - modelName: a, - } = e; - this.handleAndLogRequestError({ - error: r, - clientMethod: n, - callsite: i, - transaction: o, - args: s, - modelName: a, - globalOmit: e.globalOmit, - }); - } - } - mapQueryEngineResult({ dataPath: e, unpacker: r }, n) { - let i = n?.data, - o = this.unpack(i, e, r); - return g.env.PRISMA_CLIENT_GET_TIME ? { data: o } : o; - } - handleAndLogRequestError(e) { - try { - this.handleRequestError(e); - } catch (r) { - throw ( - this.logEmitter && - this.logEmitter.emit("error", { - message: r.message, - target: e.clientMethod, - timestamp: new Date(), - }), - r - ); - } - } - handleRequestError({ - error: e, - clientMethod: r, - callsite: n, - transaction: i, - args: o, - modelName: s, - globalOmit: a, - }) { - if ((Nu(e), qu(e, i))) throw e; - if (e instanceof X && Vu(e)) { - let v = Rs(e.meta); - Ir({ - args: o, - errors: [v], - callsite: n, - errorFormat: this.client._errorFormat, - originalMethod: r, - clientVersion: this.client._clientVersion, - globalOmit: a, - }); - } - let f = e.message; - if ( - (n && - (f = Er({ - callsite: n, - originalMethod: r, - isPanic: e.isPanic, - showColors: this.client._errorFormat === "pretty", - message: f, - })), - (f = this.sanitizeMessage(f)), - e.code) - ) { - let v = s ? { modelName: s, ...e.meta } : e.meta; - throw new X(f, { - code: e.code, - clientVersion: this.client._clientVersion, - meta: v, - batchRequestIdx: e.batchRequestIdx, - }); - } else { - if (e.isPanic) throw new Te(f, this.client._clientVersion); - if (e instanceof Q) - throw new Q(f, { - clientVersion: this.client._clientVersion, - batchRequestIdx: e.batchRequestIdx, - }); - if (e instanceof M) throw new M(f, this.client._clientVersion); - if (e instanceof Te) throw new Te(f, this.client._clientVersion); - } - throw ((e.clientVersion = this.client._clientVersion), e); - } - sanitizeMessage(e) { - return this.client._errorFormat && this.client._errorFormat !== "pretty" - ? dn(e) - : e; - } - unpack(e, r, n) { - if (!e || (e.data && (e = e.data), !e)) return e; - let i = Object.keys(e)[0], - o = Object.values(e)[0], - s = r.filter((v) => v !== "select" && v !== "include"), - a = In(o, s), - f = i === "queryRaw" ? Gr(a) : lt(a); - return n ? n(f) : f; - } - get [Symbol.toStringTag]() { - return "RequestHandler"; - } - }; -function Uu(t) { - if (t) { - if (t.kind === "batch") - return { kind: "batch", options: { isolationLevel: t.isolationLevel } }; - if (t.kind === "itx") return { kind: "itx", options: vs(t) }; - Fe(t, "Unknown transaction kind"); - } -} -function vs(t) { - return { id: t.id, payload: t.payload }; -} -function qu(t, e) { - return jr(t) && e?.kind === "batch" && t.batchRequestIdx !== e.index; -} -function Vu(t) { - return t.code === "P2009" || t.code === "P2012"; -} -function Rs(t) { - if (t.kind === "Union") return { kind: "Union", errors: t.errors.map(Rs) }; - if (Array.isArray(t.selectionPath)) { - let [, ...e] = t.selectionPath; - return { ...t, selectionPath: e }; - } - return t; -} -u(); -c(); -p(); -m(); -d(); -l(); -var As = Ho; -u(); -c(); -p(); -m(); -d(); -l(); -var Os = bt(hn()); -u(); -c(); -p(); -m(); -d(); -l(); -var F = class extends Error { - constructor(e) { - (super( - e + - ` -Read more at https://pris.ly/d/client-constructor`, - ), - (this.name = "PrismaClientConstructorValidationError")); - } - get [Symbol.toStringTag]() { - return "PrismaClientConstructorValidationError"; - } -}; -O(F, "PrismaClientConstructorValidationError"); -var Cs = [ - "datasources", - "datasourceUrl", - "errorFormat", - "adapter", - "log", - "transactionOptions", - "omit", - "__internal", - ], - Ss = ["pretty", "colorless", "minimal"], - Is = ["info", "query", "warn", "error"], - Bu = { - datasources: (t, { datasourceNames: e }) => { - if (t) { - if (typeof t != "object" || Array.isArray(t)) - throw new F( - `Invalid value ${JSON.stringify(t)} for "datasources" provided to PrismaClient constructor`, - ); - for (let [r, n] of Object.entries(t)) { - if (!e.includes(r)) { - let i = gt(r, e) || ` Available datasources: ${e.join(", ")}`; - throw new F( - `Unknown datasource ${r} provided to PrismaClient constructor.${i}`, - ); - } - if (typeof n != "object" || Array.isArray(n)) - throw new F(`Invalid value ${JSON.stringify(t)} for datasource "${r}" provided to PrismaClient constructor. -It should have this form: { url: "CONNECTION_STRING" }`); - if (n && typeof n == "object") - for (let [i, o] of Object.entries(n)) { - if (i !== "url") - throw new F(`Invalid value ${JSON.stringify(t)} for datasource "${r}" provided to PrismaClient constructor. -It should have this form: { url: "CONNECTION_STRING" }`); - if (typeof o != "string") - throw new F(`Invalid value ${JSON.stringify(o)} for datasource "${r}" provided to PrismaClient constructor. -It should have this form: { url: "CONNECTION_STRING" }`); - } - } - } - }, - adapter: (t, e) => { - if (!t && Je(e.generator) === "client") - throw new F( - 'Using engine type "client" requires a driver adapter to be provided to PrismaClient constructor.', - ); - if (t !== null) { - if (t === void 0) - throw new F( - '"adapter" property must not be undefined, use null to conditionally disable driver adapters.', - ); - if (Je(e.generator) === "binary") - throw new F( - 'Cannot use a driver adapter with the "binary" Query Engine. Please use the "library" Query Engine.', - ); - } - }, - datasourceUrl: (t) => { - if (typeof t < "u" && typeof t != "string") - throw new F(`Invalid value ${JSON.stringify(t)} for "datasourceUrl" provided to PrismaClient constructor. -Expected string or undefined.`); - }, - errorFormat: (t) => { - if (t) { - if (typeof t != "string") - throw new F( - `Invalid value ${JSON.stringify(t)} for "errorFormat" provided to PrismaClient constructor.`, - ); - if (!Ss.includes(t)) { - let e = gt(t, Ss); - throw new F( - `Invalid errorFormat ${t} provided to PrismaClient constructor.${e}`, - ); - } - } - }, - log: (t) => { - if (!t) return; - if (!Array.isArray(t)) - throw new F( - `Invalid value ${JSON.stringify(t)} for "log" provided to PrismaClient constructor.`, - ); - function e(r) { - if (typeof r == "string" && !Is.includes(r)) { - let n = gt(r, Is); - throw new F( - `Invalid log level "${r}" provided to PrismaClient constructor.${n}`, - ); - } - } - for (let r of t) { - e(r); - let n = { - level: e, - emit: (i) => { - let o = ["stdout", "event"]; - if (!o.includes(i)) { - let s = gt(i, o); - throw new F( - `Invalid value ${JSON.stringify(i)} for "emit" in logLevel provided to PrismaClient constructor.${s}`, - ); - } - }, - }; - if (r && typeof r == "object") - for (let [i, o] of Object.entries(r)) - if (n[i]) n[i](o); - else - throw new F( - `Invalid property ${i} for "log" provided to PrismaClient constructor`, - ); - } - }, - transactionOptions: (t) => { - if (!t) return; - let e = t.maxWait; - if (e != null && e <= 0) - throw new F( - `Invalid value ${e} for maxWait in "transactionOptions" provided to PrismaClient constructor. maxWait needs to be greater than 0`, - ); - let r = t.timeout; - if (r != null && r <= 0) - throw new F( - `Invalid value ${r} for timeout in "transactionOptions" provided to PrismaClient constructor. timeout needs to be greater than 0`, - ); - }, - omit: (t, e) => { - if (typeof t != "object") - throw new F('"omit" option is expected to be an object.'); - if (t === null) throw new F('"omit" option can not be `null`'); - let r = []; - for (let [n, i] of Object.entries(t)) { - let o = ju(n, e.runtimeDataModel); - if (!o) { - r.push({ kind: "UnknownModel", modelKey: n }); - continue; - } - for (let [s, a] of Object.entries(i)) { - let f = o.fields.find((v) => v.name === s); - if (!f) { - r.push({ kind: "UnknownField", modelKey: n, fieldName: s }); - continue; - } - if (f.relationName) { - r.push({ kind: "RelationInOmit", modelKey: n, fieldName: s }); - continue; - } - typeof a != "boolean" && - r.push({ kind: "InvalidFieldValue", modelKey: n, fieldName: s }); - } - } - if (r.length > 0) throw new F(Qu(t, r)); - }, - __internal: (t) => { - if (!t) return; - let e = ["debug", "engine", "configOverride"]; - if (typeof t != "object") - throw new F( - `Invalid value ${JSON.stringify(t)} for "__internal" to PrismaClient constructor`, - ); - for (let [r] of Object.entries(t)) - if (!e.includes(r)) { - let n = gt(r, e); - throw new F( - `Invalid property ${JSON.stringify(r)} for "__internal" provided to PrismaClient constructor.${n}`, - ); - } - }, - }; -function ks(t, e) { - for (let [r, n] of Object.entries(t)) { - if (!Cs.includes(r)) { - let i = gt(r, Cs); - throw new F( - `Unknown property ${r} provided to PrismaClient constructor.${i}`, - ); - } - Bu[r](n, e); - } - if (t.datasourceUrl && t.datasources) - throw new F( - 'Can not use "datasourceUrl" and "datasources" options at the same time. Pick one of them', - ); -} -function gt(t, e) { - if (e.length === 0 || typeof t != "string") return ""; - let r = $u(t, e); - return r ? ` Did you mean "${r}"?` : ""; -} -function $u(t, e) { - if (e.length === 0) return null; - let r = e.map((i) => ({ value: i, distance: (0, Os.default)(t, i) })); - r.sort((i, o) => (i.distance < o.distance ? -1 : 1)); - let n = r[0]; - return n.distance < 3 ? n.value : null; -} -function ju(t, e) { - return Ds(e.models, t) ?? Ds(e.types, t); -} -function Ds(t, e) { - let r = Object.keys(t).find((n) => Ce(n) === e); - if (r) return t[r]; -} -function Qu(t, e) { - let r = tt(t); - for (let o of e) - switch (o.kind) { - case "UnknownModel": - (r.arguments.getField(o.modelKey)?.markAsError(), - r.addErrorMessage(() => `Unknown model name: ${o.modelKey}.`)); - break; - case "UnknownField": - (r.arguments.getDeepField([o.modelKey, o.fieldName])?.markAsError(), - r.addErrorMessage( - () => - `Model "${o.modelKey}" does not have a field named "${o.fieldName}".`, - )); - break; - case "RelationInOmit": - (r.arguments.getDeepField([o.modelKey, o.fieldName])?.markAsError(), - r.addErrorMessage( - () => - 'Relations are already excluded by default and can not be specified in "omit".', - )); - break; - case "InvalidFieldValue": - (r.arguments - .getDeepFieldValue([o.modelKey, o.fieldName]) - ?.markAsError(), - r.addErrorMessage( - () => "Omit field option value must be a boolean.", - )); - break; - } - let { message: n, args: i } = Sr(r, "colorless"); - return `Error validating "omit" option: +`)}var Qn=({clientMethod:t,activeProvider:e})=>r=>{let n="",i;if(Lr(r))n=r.sql,i={values:ft(r.values),__prismaRawParameters__:!0};else if(Array.isArray(r)){let[o,...s]=r;n=o,i={values:ft(s||[]),__prismaRawParameters__:!0}}else switch(e){case"sqlite":case"mysql":{n=r.sql,i={values:ft(r.values),__prismaRawParameters__:!0};break}case"cockroachdb":case"postgresql":case"postgres":{n=r.text,i={values:ft(r.values),__prismaRawParameters__:!0};break}case"sqlserver":{n=ps(r),i={values:ft(r.values),__prismaRawParameters__:!0};break}default:throw new Error(`The ${e} provider does not support ${t}`)}return i?.values?ys(`prisma.${t}(${n}, ${i.values})`):ys(`prisma.${t}(${n})`),{query:n,parameters:i}},hs={requestArgsToMiddlewareArgs(t){return[t.strings,...t.values]},middlewareArgsToRequestArgs(t){let[e,...r]=t;return new ne(e,r)}},bs={requestArgsToMiddlewareArgs(t){return[t]},middlewareArgsToRequestArgs(t){return t[0]}};u();c();p();m();d();l();function Gn(t){return function(r,n){let i,o=(s=t)=>{try{return s===void 0||s?.kind==="itx"?i??=Es(r(s)):Es(r(s))}catch(a){return Promise.reject(a)}};return{get spec(){return n},then(s,a){return o().then(s,a)},catch(s){return o().catch(s)},finally(s){return o().finally(s)},requestTransaction(s){let a=o(s);return a.requestTransaction?a.requestTransaction(s):a},[Symbol.toStringTag]:"PrismaPromise"}}}function Es(t){return typeof t.then=="function"?t:Promise.resolve(t)}u();c();p();m();d();l();var _u=sn.split(".")[0],Mu={isEnabled(){return!1},getTraceParent(){return"00-10-10-00"},dispatchEngineSpans(){},getActiveContext(){},runInChildSpan(t,e){return e()}},Jn=class{isEnabled(){return this.getGlobalTracingHelper().isEnabled()}getTraceParent(e){return this.getGlobalTracingHelper().getTraceParent(e)}dispatchEngineSpans(e){return this.getGlobalTracingHelper().dispatchEngineSpans(e)}getActiveContext(){return this.getGlobalTracingHelper().getActiveContext()}runInChildSpan(e,r){return this.getGlobalTracingHelper().runInChildSpan(e,r)}getGlobalTracingHelper(){let e=globalThis[`V${_u}_PRISMA_INSTRUMENTATION`],r=globalThis.PRISMA_INSTRUMENTATION;return e?.helper??r?.helper??Mu}};function ws(){return new Jn}u();c();p();m();d();l();function xs(t,e=()=>{}){let r,n=new Promise(i=>r=i);return{then(i){return--t===0&&r(e()),i?.(n)}}}u();c();p();m();d();l();function Ps(t){return typeof t=="string"?t:t.reduce((e,r)=>{let n=typeof r=="string"?r:r.level;return n==="query"?e:e&&(r==="info"||e==="info")?"info":n},void 0)}u();c();p();m();d();l();u();c();p();m();d();l();function jr(t){return typeof t.batchRequestIdx=="number"}u();c();p();m();d();l();function Ts(t){if(t.action!=="findUnique"&&t.action!=="findUniqueOrThrow")return;let e=[];return t.modelName&&e.push(t.modelName),t.query.arguments&&e.push(Wn(t.query.arguments)),e.push(Wn(t.query.selection)),e.join("")}function Wn(t){return`(${Object.keys(t).sort().map(r=>{let n=t[r];return typeof n=="object"&&n!==null?`(${r} ${Wn(n)})`:r}).join(" ")})`}u();c();p();m();d();l();var Lu={aggregate:!1,aggregateRaw:!1,createMany:!0,createManyAndReturn:!0,createOne:!0,deleteMany:!0,deleteOne:!0,executeRaw:!0,findFirst:!1,findFirstOrThrow:!1,findMany:!1,findRaw:!1,findUnique:!1,findUniqueOrThrow:!1,groupBy:!1,queryRaw:!1,runCommandRaw:!0,updateMany:!0,updateManyAndReturn:!0,updateOne:!0,upsertOne:!0};function Kn(t){return Lu[t]}u();c();p();m();d();l();var Qr=class{constructor(e){this.options=e;this.batches={}}batches;tickActive=!1;request(e){let r=this.options.batchBy(e);return r?(this.batches[r]||(this.batches[r]=[],this.tickActive||(this.tickActive=!0,g.nextTick(()=>{this.dispatchBatches(),this.tickActive=!1}))),new Promise((n,i)=>{this.batches[r].push({request:e,resolve:n,reject:i})})):this.options.singleLoader(e)}dispatchBatches(){for(let e in this.batches){let r=this.batches[e];delete this.batches[e],r.length===1?this.options.singleLoader(r[0].request).then(n=>{n instanceof Error?r[0].reject(n):r[0].resolve(n)}).catch(n=>{r[0].reject(n)}):(r.sort((n,i)=>this.options.batchOrder(n.request,i.request)),this.options.batchLoader(r.map(n=>n.request)).then(n=>{if(n instanceof Error)for(let i=0;i{for(let i=0;i$e("bigint",r));case"bytes-array":return e.map(r=>$e("bytes",r));case"decimal-array":return e.map(r=>$e("decimal",r));case"datetime-array":return e.map(r=>$e("datetime",r));case"date-array":return e.map(r=>$e("date",r));case"time-array":return e.map(r=>$e("time",r));default:return e}}function Gr(t){let e=[],r=Fu(t);for(let n=0;n{let{transaction:o,otelParentCtx:s}=n[0],a=n.map(A=>A.protocolQuery),f=this.client._tracingHelper.getTraceParent(s),v=n.some(A=>Kn(A.protocolQuery.action));return(await this.client._engine.requestBatch(a,{traceparent:f,transaction:Uu(o),containsWrite:v,customDataProxyFetch:i})).map((A,I)=>{if(A instanceof Error)return A;try{return this.mapQueryEngineResult(n[I],A)}catch(C){return C}})}),singleLoader:async n=>{let i=n.transaction?.kind==="itx"?vs(n.transaction):void 0,o=await this.client._engine.request(n.protocolQuery,{traceparent:this.client._tracingHelper.getTraceParent(),interactiveTransaction:i,isWrite:Kn(n.protocolQuery.action),customDataProxyFetch:n.customDataProxyFetch});return this.mapQueryEngineResult(n,o)},batchBy:n=>n.transaction?.id?`transaction-${n.transaction.id}`:Ts(n.protocolQuery),batchOrder(n,i){return n.transaction?.kind==="batch"&&i.transaction?.kind==="batch"?n.transaction.index-i.transaction.index:0}})}async request(e){try{return await this.dataloader.request(e)}catch(r){let{clientMethod:n,callsite:i,transaction:o,args:s,modelName:a}=e;this.handleAndLogRequestError({error:r,clientMethod:n,callsite:i,transaction:o,args:s,modelName:a,globalOmit:e.globalOmit})}}mapQueryEngineResult({dataPath:e,unpacker:r},n){let i=n?.data,o=this.unpack(i,e,r);return g.env.PRISMA_CLIENT_GET_TIME?{data:o}:o}handleAndLogRequestError(e){try{this.handleRequestError(e)}catch(r){throw this.logEmitter&&this.logEmitter.emit("error",{message:r.message,target:e.clientMethod,timestamp:new Date}),r}}handleRequestError({error:e,clientMethod:r,callsite:n,transaction:i,args:o,modelName:s,globalOmit:a}){if(Nu(e),qu(e,i))throw e;if(e instanceof X&&Vu(e)){let v=Rs(e.meta);Ir({args:o,errors:[v],callsite:n,errorFormat:this.client._errorFormat,originalMethod:r,clientVersion:this.client._clientVersion,globalOmit:a})}let f=e.message;if(n&&(f=Er({callsite:n,originalMethod:r,isPanic:e.isPanic,showColors:this.client._errorFormat==="pretty",message:f})),f=this.sanitizeMessage(f),e.code){let v=s?{modelName:s,...e.meta}:e.meta;throw new X(f,{code:e.code,clientVersion:this.client._clientVersion,meta:v,batchRequestIdx:e.batchRequestIdx})}else{if(e.isPanic)throw new Te(f,this.client._clientVersion);if(e instanceof Q)throw new Q(f,{clientVersion:this.client._clientVersion,batchRequestIdx:e.batchRequestIdx});if(e instanceof M)throw new M(f,this.client._clientVersion);if(e instanceof Te)throw new Te(f,this.client._clientVersion)}throw e.clientVersion=this.client._clientVersion,e}sanitizeMessage(e){return this.client._errorFormat&&this.client._errorFormat!=="pretty"?dn(e):e}unpack(e,r,n){if(!e||(e.data&&(e=e.data),!e))return e;let i=Object.keys(e)[0],o=Object.values(e)[0],s=r.filter(v=>v!=="select"&&v!=="include"),a=In(o,s),f=i==="queryRaw"?Gr(a):lt(a);return n?n(f):f}get[Symbol.toStringTag](){return"RequestHandler"}};function Uu(t){if(t){if(t.kind==="batch")return{kind:"batch",options:{isolationLevel:t.isolationLevel}};if(t.kind==="itx")return{kind:"itx",options:vs(t)};Fe(t,"Unknown transaction kind")}}function vs(t){return{id:t.id,payload:t.payload}}function qu(t,e){return jr(t)&&e?.kind==="batch"&&t.batchRequestIdx!==e.index}function Vu(t){return t.code==="P2009"||t.code==="P2012"}function Rs(t){if(t.kind==="Union")return{kind:"Union",errors:t.errors.map(Rs)};if(Array.isArray(t.selectionPath)){let[,...e]=t.selectionPath;return{...t,selectionPath:e}}return t}u();c();p();m();d();l();var As=Ho;u();c();p();m();d();l();var Os=bt(hn());u();c();p();m();d();l();var F=class extends Error{constructor(e){super(e+` +Read more at https://pris.ly/d/client-constructor`),this.name="PrismaClientConstructorValidationError"}get[Symbol.toStringTag](){return"PrismaClientConstructorValidationError"}};O(F,"PrismaClientConstructorValidationError");var Cs=["datasources","datasourceUrl","errorFormat","adapter","log","transactionOptions","omit","__internal"],Ss=["pretty","colorless","minimal"],Is=["info","query","warn","error"],Bu={datasources:(t,{datasourceNames:e})=>{if(t){if(typeof t!="object"||Array.isArray(t))throw new F(`Invalid value ${JSON.stringify(t)} for "datasources" provided to PrismaClient constructor`);for(let[r,n]of Object.entries(t)){if(!e.includes(r)){let i=gt(r,e)||` Available datasources: ${e.join(", ")}`;throw new F(`Unknown datasource ${r} provided to PrismaClient constructor.${i}`)}if(typeof n!="object"||Array.isArray(n))throw new F(`Invalid value ${JSON.stringify(t)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`);if(n&&typeof n=="object")for(let[i,o]of Object.entries(n)){if(i!=="url")throw new F(`Invalid value ${JSON.stringify(t)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`);if(typeof o!="string")throw new F(`Invalid value ${JSON.stringify(o)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`)}}}},adapter:(t,e)=>{if(!t&&Je(e.generator)==="client")throw new F('Using engine type "client" requires a driver adapter to be provided to PrismaClient constructor.');if(t!==null){if(t===void 0)throw new F('"adapter" property must not be undefined, use null to conditionally disable driver adapters.');if(Je(e.generator)==="binary")throw new F('Cannot use a driver adapter with the "binary" Query Engine. Please use the "library" Query Engine.')}},datasourceUrl:t=>{if(typeof t<"u"&&typeof t!="string")throw new F(`Invalid value ${JSON.stringify(t)} for "datasourceUrl" provided to PrismaClient constructor. +Expected string or undefined.`)},errorFormat:t=>{if(t){if(typeof t!="string")throw new F(`Invalid value ${JSON.stringify(t)} for "errorFormat" provided to PrismaClient constructor.`);if(!Ss.includes(t)){let e=gt(t,Ss);throw new F(`Invalid errorFormat ${t} provided to PrismaClient constructor.${e}`)}}},log:t=>{if(!t)return;if(!Array.isArray(t))throw new F(`Invalid value ${JSON.stringify(t)} for "log" provided to PrismaClient constructor.`);function e(r){if(typeof r=="string"&&!Is.includes(r)){let n=gt(r,Is);throw new F(`Invalid log level "${r}" provided to PrismaClient constructor.${n}`)}}for(let r of t){e(r);let n={level:e,emit:i=>{let o=["stdout","event"];if(!o.includes(i)){let s=gt(i,o);throw new F(`Invalid value ${JSON.stringify(i)} for "emit" in logLevel provided to PrismaClient constructor.${s}`)}}};if(r&&typeof r=="object")for(let[i,o]of Object.entries(r))if(n[i])n[i](o);else throw new F(`Invalid property ${i} for "log" provided to PrismaClient constructor`)}},transactionOptions:t=>{if(!t)return;let e=t.maxWait;if(e!=null&&e<=0)throw new F(`Invalid value ${e} for maxWait in "transactionOptions" provided to PrismaClient constructor. maxWait needs to be greater than 0`);let r=t.timeout;if(r!=null&&r<=0)throw new F(`Invalid value ${r} for timeout in "transactionOptions" provided to PrismaClient constructor. timeout needs to be greater than 0`)},omit:(t,e)=>{if(typeof t!="object")throw new F('"omit" option is expected to be an object.');if(t===null)throw new F('"omit" option can not be `null`');let r=[];for(let[n,i]of Object.entries(t)){let o=ju(n,e.runtimeDataModel);if(!o){r.push({kind:"UnknownModel",modelKey:n});continue}for(let[s,a]of Object.entries(i)){let f=o.fields.find(v=>v.name===s);if(!f){r.push({kind:"UnknownField",modelKey:n,fieldName:s});continue}if(f.relationName){r.push({kind:"RelationInOmit",modelKey:n,fieldName:s});continue}typeof a!="boolean"&&r.push({kind:"InvalidFieldValue",modelKey:n,fieldName:s})}}if(r.length>0)throw new F(Qu(t,r))},__internal:t=>{if(!t)return;let e=["debug","engine","configOverride"];if(typeof t!="object")throw new F(`Invalid value ${JSON.stringify(t)} for "__internal" to PrismaClient constructor`);for(let[r]of Object.entries(t))if(!e.includes(r)){let n=gt(r,e);throw new F(`Invalid property ${JSON.stringify(r)} for "__internal" provided to PrismaClient constructor.${n}`)}}};function ks(t,e){for(let[r,n]of Object.entries(t)){if(!Cs.includes(r)){let i=gt(r,Cs);throw new F(`Unknown property ${r} provided to PrismaClient constructor.${i}`)}Bu[r](n,e)}if(t.datasourceUrl&&t.datasources)throw new F('Can not use "datasourceUrl" and "datasources" options at the same time. Pick one of them')}function gt(t,e){if(e.length===0||typeof t!="string")return"";let r=$u(t,e);return r?` Did you mean "${r}"?`:""}function $u(t,e){if(e.length===0)return null;let r=e.map(i=>({value:i,distance:(0,Os.default)(t,i)}));r.sort((i,o)=>i.distanceCe(n)===e);if(r)return t[r]}function Qu(t,e){let r=tt(t);for(let o of e)switch(o.kind){case"UnknownModel":r.arguments.getField(o.modelKey)?.markAsError(),r.addErrorMessage(()=>`Unknown model name: ${o.modelKey}.`);break;case"UnknownField":r.arguments.getDeepField([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>`Model "${o.modelKey}" does not have a field named "${o.fieldName}".`);break;case"RelationInOmit":r.arguments.getDeepField([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>'Relations are already excluded by default and can not be specified in "omit".');break;case"InvalidFieldValue":r.arguments.getDeepFieldValue([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>"Omit field option value must be a boolean.");break}let{message:n,args:i}=Sr(r,"colorless");return`Error validating "omit" option: ${i} -${n}`; -} -u(); -c(); -p(); -m(); -d(); -l(); -function _s(t) { - return t.length === 0 - ? Promise.resolve([]) - : new Promise((e, r) => { - let n = new Array(t.length), - i = null, - o = !1, - s = 0, - a = () => { - o || (s++, s === t.length && ((o = !0), i ? r(i) : e(n))); - }, - f = (v) => { - o || ((o = !0), r(v)); - }; - for (let v = 0; v < t.length; v++) - t[v].then( - (R) => { - ((n[v] = R), a()); - }, - (R) => { - if (!jr(R)) { - f(R); - return; - } - R.batchRequestIdx === v ? f(R) : (i || (i = R), a()); - }, - ); - }); -} -var De = j("prisma:client"); -typeof globalThis == "object" && (globalThis.NODE_CLIENT = !0); -var Gu = { - requestArgsToMiddlewareArgs: (t) => t, - middlewareArgsToRequestArgs: (t) => t, - }, - Ju = Symbol.for("prisma.client.transaction.id"), - Wu = { - id: 0, - nextId() { - return ++this.id; - }, - }; -function Fs(t) { - class e { - _originalClient = this; - _runtimeDataModel; - _requestHandler; - _connectionPromise; - _disconnectionPromise; - _engineConfig; - _accelerateEngineConfig; - _clientVersion; - _errorFormat; - _tracingHelper; - _previewFeatures; - _activeProvider; - _globalOmit; - _extensions; - _engine; - _appliedParent; - _createPrismaPromise = Gn(); - constructor(n) { - ((t = n?.__internal?.configOverride?.(t) ?? t), Jo(t), n && ks(n, t)); - let i = new Fr().on("error", () => {}); - ((this._extensions = rt.empty()), - (this._previewFeatures = us(t)), - (this._clientVersion = t.clientVersion ?? As), - (this._activeProvider = t.activeProvider), - (this._globalOmit = n?.omit), - (this._tracingHelper = ws())); - let o = t.relativeEnvPaths && { - rootEnvPath: - t.relativeEnvPaths.rootEnvPath && - cr.resolve(t.dirname, t.relativeEnvPaths.rootEnvPath), - schemaEnvPath: - t.relativeEnvPaths.schemaEnvPath && - cr.resolve(t.dirname, t.relativeEnvPaths.schemaEnvPath), - }, - s; - if (n?.adapter) { - s = n.adapter; - let f = - t.activeProvider === "postgresql" || - t.activeProvider === "cockroachdb" - ? "postgres" - : t.activeProvider; - if (s.provider !== f) - throw new M( - `The Driver Adapter \`${s.adapterName}\`, based on \`${s.provider}\`, is not compatible with the provider \`${f}\` specified in the Prisma schema.`, - this._clientVersion, - ); - if (n.datasources || n.datasourceUrl !== void 0) - throw new M( - "Custom datasource configuration is not compatible with Prisma Driver Adapters. Please define the database connection string directly in the Driver Adapter configuration.", - this._clientVersion, - ); - } - let a = t.injectableEdgeEnv?.(); - try { - let f = n ?? {}, - v = f.__internal ?? {}, - R = v.debug === !0; - R && j.enable("prisma:client"); - let A = cr.resolve(t.dirname, t.relativePath); - (Pi.existsSync(A) || (A = t.dirname), - De("dirname", t.dirname), - De("relativePath", t.relativePath), - De("cwd", A)); - let I = v.engine || {}; - if ( - (f.errorFormat - ? (this._errorFormat = f.errorFormat) - : g.env.NODE_ENV === "production" - ? (this._errorFormat = "minimal") - : g.env.NO_COLOR - ? (this._errorFormat = "colorless") - : (this._errorFormat = "colorless"), - (this._runtimeDataModel = t.runtimeDataModel), - (this._engineConfig = { - cwd: A, - dirname: t.dirname, - enableDebugLogs: R, - allowTriggerPanic: I.allowTriggerPanic, - prismaPath: I.binaryPath ?? void 0, - engineEndpoint: I.endpoint, - generator: t.generator, - showColors: this._errorFormat === "pretty", - logLevel: f.log && Ps(f.log), - logQueries: - f.log && - !!(typeof f.log == "string" - ? f.log === "query" - : f.log.find((C) => - typeof C == "string" ? C === "query" : C.level === "query", - )), - env: a?.parsed ?? {}, - flags: [], - engineWasm: t.engineWasm, - compilerWasm: t.compilerWasm, - clientVersion: t.clientVersion, - engineVersion: t.engineVersion, - previewFeatures: this._previewFeatures, - activeProvider: t.activeProvider, - inlineSchema: t.inlineSchema, - overrideDatasources: Wo(f, t.datasourceNames), - inlineDatasources: t.inlineDatasources, - inlineSchemaHash: t.inlineSchemaHash, - tracingHelper: this._tracingHelper, - transactionOptions: { - maxWait: f.transactionOptions?.maxWait ?? 2e3, - timeout: f.transactionOptions?.timeout ?? 5e3, - isolationLevel: f.transactionOptions?.isolationLevel, - }, - logEmitter: i, - isBundled: t.isBundled, - adapter: s, - }), - (this._accelerateEngineConfig = { - ...this._engineConfig, - accelerateUtils: { - resolveDatasourceUrl: ct, - getBatchRequestPayload: ot, - prismaGraphQLToJSError: st, - PrismaClientUnknownRequestError: Q, - PrismaClientInitializationError: M, - PrismaClientKnownRequestError: X, - debug: j("prisma:client:accelerateEngine"), - engineVersion: Ls.version, - clientVersion: t.clientVersion, - }, - }), - De("clientVersion", t.clientVersion), - (this._engine = ls(t, this._engineConfig)), - (this._requestHandler = new Jr(this, i)), - f.log) - ) - for (let C of f.log) { - let L = - typeof C == "string" ? C : C.emit === "stdout" ? C.level : null; - L && - this.$on(L, (D) => { - Pt.log(`${Pt.tags[L] ?? ""}`, D.message || D.query); - }); - } - } catch (f) { - throw ((f.clientVersion = this._clientVersion), f); - } - return (this._appliedParent = Ut(this)); - } - get [Symbol.toStringTag]() { - return "PrismaClient"; - } - $on(n, i) { - return ( - n === "beforeExit" - ? this._engine.onBeforeExit(i) - : n && this._engineConfig.logEmitter.on(n, i), - this - ); - } - $connect() { - try { - return this._engine.start(); - } catch (n) { - throw ((n.clientVersion = this._clientVersion), n); - } - } - async $disconnect() { - try { - await this._engine.stop(); - } catch (n) { - throw ((n.clientVersion = this._clientVersion), n); - } finally { - xi(); - } - } - $executeRawInternal(n, i, o, s) { - let a = this._activeProvider; - return this._request({ - action: "executeRaw", - args: o, - transaction: n, - clientMethod: i, - argsMapper: Qn({ clientMethod: i, activeProvider: a }), - callsite: Ie(this._errorFormat), - dataPath: [], - middlewareArgsMapper: s, - }); - } - $executeRaw(n, ...i) { - return this._createPrismaPromise((o) => { - if (n.raw !== void 0 || n.sql !== void 0) { - let [s, a] = Ms(n, i); - return ( - jn( - this._activeProvider, - s.text, - s.values, - Array.isArray(n) - ? "prisma.$executeRaw``" - : "prisma.$executeRaw(sql``)", - ), - this.$executeRawInternal(o, "$executeRaw", s, a) - ); - } - throw new Y( - "`$executeRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$executeRaw`UPDATE User SET cool = ${true} WHERE email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#executeraw\n", - { clientVersion: this._clientVersion }, - ); - }); - } - $executeRawUnsafe(n, ...i) { - return this._createPrismaPromise( - (o) => ( - jn( - this._activeProvider, - n, - i, - "prisma.$executeRawUnsafe(, [...values])", - ), - this.$executeRawInternal(o, "$executeRawUnsafe", [n, ...i]) - ), - ); - } - $runCommandRaw(n) { - if (t.activeProvider !== "mongodb") - throw new Y( - `The ${t.activeProvider} provider does not support $runCommandRaw. Use the mongodb provider.`, - { clientVersion: this._clientVersion }, - ); - return this._createPrismaPromise((i) => - this._request({ - args: n, - clientMethod: "$runCommandRaw", - dataPath: [], - action: "runCommandRaw", - argsMapper: cs, - callsite: Ie(this._errorFormat), - transaction: i, - }), - ); - } - async $queryRawInternal(n, i, o, s) { - let a = this._activeProvider; - return this._request({ - action: "queryRaw", - args: o, - transaction: n, - clientMethod: i, - argsMapper: Qn({ clientMethod: i, activeProvider: a }), - callsite: Ie(this._errorFormat), - dataPath: [], - middlewareArgsMapper: s, - }); - } - $queryRaw(n, ...i) { - return this._createPrismaPromise((o) => { - if (n.raw !== void 0 || n.sql !== void 0) - return this.$queryRawInternal(o, "$queryRaw", ...Ms(n, i)); - throw new Y( - "`$queryRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$queryRaw`SELECT * FROM User WHERE id = ${1} OR email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#queryraw\n", - { clientVersion: this._clientVersion }, - ); - }); - } - $queryRawTyped(n) { - return this._createPrismaPromise((i) => { - if (!this._hasPreviewFlag("typedSql")) - throw new Y( - "`typedSql` preview feature must be enabled in order to access $queryRawTyped API", - { clientVersion: this._clientVersion }, - ); - return this.$queryRawInternal(i, "$queryRawTyped", n); - }); - } - $queryRawUnsafe(n, ...i) { - return this._createPrismaPromise((o) => - this.$queryRawInternal(o, "$queryRawUnsafe", [n, ...i]), - ); - } - _transactionWithArray({ promises: n, options: i }) { - let o = Wu.nextId(), - s = xs(n.length), - a = n.map((f, v) => { - if (f?.[Symbol.toStringTag] !== "PrismaPromise") - throw new Error( - "All elements of the array need to be Prisma Client promises. Hint: Please make sure you are not awaiting the Prisma client calls you intended to pass in the $transaction function.", - ); - let R = - i?.isolationLevel ?? - this._engineConfig.transactionOptions.isolationLevel, - A = { kind: "batch", id: o, index: v, isolationLevel: R, lock: s }; - return f.requestTransaction?.(A) ?? f; - }); - return _s(a); - } - async _transactionWithCallback({ callback: n, options: i }) { - let o = { traceparent: this._tracingHelper.getTraceParent() }, - s = { - maxWait: i?.maxWait ?? this._engineConfig.transactionOptions.maxWait, - timeout: i?.timeout ?? this._engineConfig.transactionOptions.timeout, - isolationLevel: - i?.isolationLevel ?? - this._engineConfig.transactionOptions.isolationLevel, - }, - a = await this._engine.transaction("start", o, s), - f; - try { - let v = { kind: "itx", ...a }; - ((f = await n(this._createItxClient(v))), - await this._engine.transaction("commit", o, a)); - } catch (v) { - throw ( - await this._engine.transaction("rollback", o, a).catch(() => {}), - v - ); - } - return f; - } - _createItxClient(n) { - return ce( - Ut( - ce(Oo(this), [ - Z("_appliedParent", () => this._appliedParent._createItxClient(n)), - Z("_createPrismaPromise", () => Gn(n)), - Z(Ju, () => n.id), - ]), - ), - [it(Fo)], - ); - } - $transaction(n, i) { - let o; - typeof n == "function" - ? this._engineConfig.adapter?.adapterName === "@prisma/adapter-d1" - ? (o = () => { - throw new Error( - "Cloudflare D1 does not support interactive transactions. We recommend you to refactor your queries with that limitation in mind, and use batch transactions with `prisma.$transactions([])` where applicable.", - ); - }) - : (o = () => - this._transactionWithCallback({ callback: n, options: i })) - : (o = () => this._transactionWithArray({ promises: n, options: i })); - let s = { name: "transaction", attributes: { method: "$transaction" } }; - return this._tracingHelper.runInChildSpan(s, o); - } - _request(n) { - n.otelParentCtx = this._tracingHelper.getActiveContext(); - let i = n.middlewareArgsMapper ?? Gu, - o = { - args: i.requestArgsToMiddlewareArgs(n.args), - dataPath: n.dataPath, - runInTransaction: !!n.transaction, - action: n.action, - model: n.model, - }, - s = { - operation: { - name: "operation", - attributes: { - method: o.action, - model: o.model, - name: o.model ? `${o.model}.${o.action}` : o.action, - }, - }, - }, - a = async (f) => { - let { runInTransaction: v, args: R, ...A } = f, - I = { ...n, ...A }; - (R && (I.args = i.middlewareArgsToRequestArgs(R)), - n.transaction !== void 0 && v === !1 && delete I.transaction); - let C = await Vo(this, I); - return I.model - ? Lo({ - result: C, - modelName: I.model, - args: I.args, - extensions: this._extensions, - runtimeDataModel: this._runtimeDataModel, - globalOmit: this._globalOmit, - }) - : C; - }; - return this._tracingHelper.runInChildSpan(s.operation, () => a(o)); - } - async _executeRequest({ - args: n, - clientMethod: i, - dataPath: o, - callsite: s, - action: a, - model: f, - argsMapper: v, - transaction: R, - unpacker: A, - otelParentCtx: I, - customDataProxyFetch: C, - }) { - try { - n = v ? v(n) : n; - let L = { name: "serialize" }, - D = this._tracingHelper.runInChildSpan(L, () => - _r({ - modelName: f, - runtimeDataModel: this._runtimeDataModel, - action: a, - args: n, - clientMethod: i, - callsite: s, - extensions: this._extensions, - errorFormat: this._errorFormat, - clientVersion: this._clientVersion, - previewFeatures: this._previewFeatures, - globalOmit: this._globalOmit, - }), - ); - return ( - j.enabled("prisma:client") && - (De("Prisma Client call:"), - De(`prisma.${i}(${xo(n)})`), - De("Generated request:"), - De( - JSON.stringify(D, null, 2) + - ` -`, - )), - R?.kind === "batch" && (await R.lock), - this._requestHandler.request({ - protocolQuery: D, - modelName: f, - action: a, - clientMethod: i, - dataPath: o, - callsite: s, - args: n, - extensions: this._extensions, - transaction: R, - unpacker: A, - otelParentCtx: I, - otelChildCtx: this._tracingHelper.getActiveContext(), - globalOmit: this._globalOmit, - customDataProxyFetch: C, - }) - ); - } catch (L) { - throw ((L.clientVersion = this._clientVersion), L); - } - } - $metrics = new nt(this); - _hasPreviewFlag(n) { - return !!this._engineConfig.previewFeatures?.includes(n); - } - $applyPendingMigrations() { - return this._engine.applyPendingMigrations(); - } - $extends = ko; - } - return e; -} -function Ms(t, e) { - return Ku(t) ? [new ne(t, e), hs] : [t, bs]; -} -function Ku(t) { - return Array.isArray(t) && Array.isArray(t.raw); -} -u(); -c(); -p(); -m(); -d(); -l(); -var Hu = new Set([ - "toJSON", - "$$typeof", - "asymmetricMatch", - Symbol.iterator, - Symbol.toStringTag, - Symbol.isConcatSpreadable, - Symbol.toPrimitive, -]); -function Ns(t) { - return new Proxy(t, { - get(e, r) { - if (r in e) return e[r]; - if (!Hu.has(r)) throw new TypeError(`Invalid enum value: ${String(r)}`); - }, - }); -} -u(); -c(); -p(); -m(); -d(); -l(); -l(); -0 && - (module.exports = { - DMMF, - Debug, - Decimal, - Extensions, - MetricsClient, - PrismaClientInitializationError, - PrismaClientKnownRequestError, - PrismaClientRustPanicError, - PrismaClientUnknownRequestError, - PrismaClientValidationError, - Public, - Sql, - createParam, - defineDmmfProperty, - deserializeJsonResponse, - deserializeRawResult, - dmmfToRuntimeDataModel, - empty, - getPrismaClient, - getRuntime, - join, - makeStrictEnum, - makeTypedQueryFactory, - objectEnumValues, - raw, - serializeJsonQuery, - skip, - sqltag, - warnEnvConflicts, - warnOnce, - }); +${n}`}u();c();p();m();d();l();function _s(t){return t.length===0?Promise.resolve([]):new Promise((e,r)=>{let n=new Array(t.length),i=null,o=!1,s=0,a=()=>{o||(s++,s===t.length&&(o=!0,i?r(i):e(n)))},f=v=>{o||(o=!0,r(v))};for(let v=0;v{n[v]=R,a()},R=>{if(!jr(R)){f(R);return}R.batchRequestIdx===v?f(R):(i||(i=R),a())})})}var De=j("prisma:client");typeof globalThis=="object"&&(globalThis.NODE_CLIENT=!0);var Gu={requestArgsToMiddlewareArgs:t=>t,middlewareArgsToRequestArgs:t=>t},Ju=Symbol.for("prisma.client.transaction.id"),Wu={id:0,nextId(){return++this.id}};function Fs(t){class e{_originalClient=this;_runtimeDataModel;_requestHandler;_connectionPromise;_disconnectionPromise;_engineConfig;_accelerateEngineConfig;_clientVersion;_errorFormat;_tracingHelper;_previewFeatures;_activeProvider;_globalOmit;_extensions;_engine;_appliedParent;_createPrismaPromise=Gn();constructor(n){t=n?.__internal?.configOverride?.(t)??t,Jo(t),n&&ks(n,t);let i=new Fr().on("error",()=>{});this._extensions=rt.empty(),this._previewFeatures=us(t),this._clientVersion=t.clientVersion??As,this._activeProvider=t.activeProvider,this._globalOmit=n?.omit,this._tracingHelper=ws();let o=t.relativeEnvPaths&&{rootEnvPath:t.relativeEnvPaths.rootEnvPath&&cr.resolve(t.dirname,t.relativeEnvPaths.rootEnvPath),schemaEnvPath:t.relativeEnvPaths.schemaEnvPath&&cr.resolve(t.dirname,t.relativeEnvPaths.schemaEnvPath)},s;if(n?.adapter){s=n.adapter;let f=t.activeProvider==="postgresql"||t.activeProvider==="cockroachdb"?"postgres":t.activeProvider;if(s.provider!==f)throw new M(`The Driver Adapter \`${s.adapterName}\`, based on \`${s.provider}\`, is not compatible with the provider \`${f}\` specified in the Prisma schema.`,this._clientVersion);if(n.datasources||n.datasourceUrl!==void 0)throw new M("Custom datasource configuration is not compatible with Prisma Driver Adapters. Please define the database connection string directly in the Driver Adapter configuration.",this._clientVersion)}let a=t.injectableEdgeEnv?.();try{let f=n??{},v=f.__internal??{},R=v.debug===!0;R&&j.enable("prisma:client");let A=cr.resolve(t.dirname,t.relativePath);Pi.existsSync(A)||(A=t.dirname),De("dirname",t.dirname),De("relativePath",t.relativePath),De("cwd",A);let I=v.engine||{};if(f.errorFormat?this._errorFormat=f.errorFormat:g.env.NODE_ENV==="production"?this._errorFormat="minimal":g.env.NO_COLOR?this._errorFormat="colorless":this._errorFormat="colorless",this._runtimeDataModel=t.runtimeDataModel,this._engineConfig={cwd:A,dirname:t.dirname,enableDebugLogs:R,allowTriggerPanic:I.allowTriggerPanic,prismaPath:I.binaryPath??void 0,engineEndpoint:I.endpoint,generator:t.generator,showColors:this._errorFormat==="pretty",logLevel:f.log&&Ps(f.log),logQueries:f.log&&!!(typeof f.log=="string"?f.log==="query":f.log.find(C=>typeof C=="string"?C==="query":C.level==="query")),env:a?.parsed??{},flags:[],engineWasm:t.engineWasm,compilerWasm:t.compilerWasm,clientVersion:t.clientVersion,engineVersion:t.engineVersion,previewFeatures:this._previewFeatures,activeProvider:t.activeProvider,inlineSchema:t.inlineSchema,overrideDatasources:Wo(f,t.datasourceNames),inlineDatasources:t.inlineDatasources,inlineSchemaHash:t.inlineSchemaHash,tracingHelper:this._tracingHelper,transactionOptions:{maxWait:f.transactionOptions?.maxWait??2e3,timeout:f.transactionOptions?.timeout??5e3,isolationLevel:f.transactionOptions?.isolationLevel},logEmitter:i,isBundled:t.isBundled,adapter:s},this._accelerateEngineConfig={...this._engineConfig,accelerateUtils:{resolveDatasourceUrl:ct,getBatchRequestPayload:ot,prismaGraphQLToJSError:st,PrismaClientUnknownRequestError:Q,PrismaClientInitializationError:M,PrismaClientKnownRequestError:X,debug:j("prisma:client:accelerateEngine"),engineVersion:Ls.version,clientVersion:t.clientVersion}},De("clientVersion",t.clientVersion),this._engine=ls(t,this._engineConfig),this._requestHandler=new Jr(this,i),f.log)for(let C of f.log){let L=typeof C=="string"?C:C.emit==="stdout"?C.level:null;L&&this.$on(L,D=>{Pt.log(`${Pt.tags[L]??""}`,D.message||D.query)})}}catch(f){throw f.clientVersion=this._clientVersion,f}return this._appliedParent=Ut(this)}get[Symbol.toStringTag](){return"PrismaClient"}$on(n,i){return n==="beforeExit"?this._engine.onBeforeExit(i):n&&this._engineConfig.logEmitter.on(n,i),this}$connect(){try{return this._engine.start()}catch(n){throw n.clientVersion=this._clientVersion,n}}async $disconnect(){try{await this._engine.stop()}catch(n){throw n.clientVersion=this._clientVersion,n}finally{xi()}}$executeRawInternal(n,i,o,s){let a=this._activeProvider;return this._request({action:"executeRaw",args:o,transaction:n,clientMethod:i,argsMapper:Qn({clientMethod:i,activeProvider:a}),callsite:Ie(this._errorFormat),dataPath:[],middlewareArgsMapper:s})}$executeRaw(n,...i){return this._createPrismaPromise(o=>{if(n.raw!==void 0||n.sql!==void 0){let[s,a]=Ms(n,i);return jn(this._activeProvider,s.text,s.values,Array.isArray(n)?"prisma.$executeRaw``":"prisma.$executeRaw(sql``)"),this.$executeRawInternal(o,"$executeRaw",s,a)}throw new Y("`$executeRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$executeRaw`UPDATE User SET cool = ${true} WHERE email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#executeraw\n",{clientVersion:this._clientVersion})})}$executeRawUnsafe(n,...i){return this._createPrismaPromise(o=>(jn(this._activeProvider,n,i,"prisma.$executeRawUnsafe(, [...values])"),this.$executeRawInternal(o,"$executeRawUnsafe",[n,...i])))}$runCommandRaw(n){if(t.activeProvider!=="mongodb")throw new Y(`The ${t.activeProvider} provider does not support $runCommandRaw. Use the mongodb provider.`,{clientVersion:this._clientVersion});return this._createPrismaPromise(i=>this._request({args:n,clientMethod:"$runCommandRaw",dataPath:[],action:"runCommandRaw",argsMapper:cs,callsite:Ie(this._errorFormat),transaction:i}))}async $queryRawInternal(n,i,o,s){let a=this._activeProvider;return this._request({action:"queryRaw",args:o,transaction:n,clientMethod:i,argsMapper:Qn({clientMethod:i,activeProvider:a}),callsite:Ie(this._errorFormat),dataPath:[],middlewareArgsMapper:s})}$queryRaw(n,...i){return this._createPrismaPromise(o=>{if(n.raw!==void 0||n.sql!==void 0)return this.$queryRawInternal(o,"$queryRaw",...Ms(n,i));throw new Y("`$queryRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$queryRaw`SELECT * FROM User WHERE id = ${1} OR email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#queryraw\n",{clientVersion:this._clientVersion})})}$queryRawTyped(n){return this._createPrismaPromise(i=>{if(!this._hasPreviewFlag("typedSql"))throw new Y("`typedSql` preview feature must be enabled in order to access $queryRawTyped API",{clientVersion:this._clientVersion});return this.$queryRawInternal(i,"$queryRawTyped",n)})}$queryRawUnsafe(n,...i){return this._createPrismaPromise(o=>this.$queryRawInternal(o,"$queryRawUnsafe",[n,...i]))}_transactionWithArray({promises:n,options:i}){let o=Wu.nextId(),s=xs(n.length),a=n.map((f,v)=>{if(f?.[Symbol.toStringTag]!=="PrismaPromise")throw new Error("All elements of the array need to be Prisma Client promises. Hint: Please make sure you are not awaiting the Prisma client calls you intended to pass in the $transaction function.");let R=i?.isolationLevel??this._engineConfig.transactionOptions.isolationLevel,A={kind:"batch",id:o,index:v,isolationLevel:R,lock:s};return f.requestTransaction?.(A)??f});return _s(a)}async _transactionWithCallback({callback:n,options:i}){let o={traceparent:this._tracingHelper.getTraceParent()},s={maxWait:i?.maxWait??this._engineConfig.transactionOptions.maxWait,timeout:i?.timeout??this._engineConfig.transactionOptions.timeout,isolationLevel:i?.isolationLevel??this._engineConfig.transactionOptions.isolationLevel},a=await this._engine.transaction("start",o,s),f;try{let v={kind:"itx",...a};f=await n(this._createItxClient(v)),await this._engine.transaction("commit",o,a)}catch(v){throw await this._engine.transaction("rollback",o,a).catch(()=>{}),v}return f}_createItxClient(n){return ce(Ut(ce(Oo(this),[Z("_appliedParent",()=>this._appliedParent._createItxClient(n)),Z("_createPrismaPromise",()=>Gn(n)),Z(Ju,()=>n.id)])),[it(Fo)])}$transaction(n,i){let o;typeof n=="function"?this._engineConfig.adapter?.adapterName==="@prisma/adapter-d1"?o=()=>{throw new Error("Cloudflare D1 does not support interactive transactions. We recommend you to refactor your queries with that limitation in mind, and use batch transactions with `prisma.$transactions([])` where applicable.")}:o=()=>this._transactionWithCallback({callback:n,options:i}):o=()=>this._transactionWithArray({promises:n,options:i});let s={name:"transaction",attributes:{method:"$transaction"}};return this._tracingHelper.runInChildSpan(s,o)}_request(n){n.otelParentCtx=this._tracingHelper.getActiveContext();let i=n.middlewareArgsMapper??Gu,o={args:i.requestArgsToMiddlewareArgs(n.args),dataPath:n.dataPath,runInTransaction:!!n.transaction,action:n.action,model:n.model},s={operation:{name:"operation",attributes:{method:o.action,model:o.model,name:o.model?`${o.model}.${o.action}`:o.action}}},a=async f=>{let{runInTransaction:v,args:R,...A}=f,I={...n,...A};R&&(I.args=i.middlewareArgsToRequestArgs(R)),n.transaction!==void 0&&v===!1&&delete I.transaction;let C=await Vo(this,I);return I.model?Lo({result:C,modelName:I.model,args:I.args,extensions:this._extensions,runtimeDataModel:this._runtimeDataModel,globalOmit:this._globalOmit}):C};return this._tracingHelper.runInChildSpan(s.operation,()=>a(o))}async _executeRequest({args:n,clientMethod:i,dataPath:o,callsite:s,action:a,model:f,argsMapper:v,transaction:R,unpacker:A,otelParentCtx:I,customDataProxyFetch:C}){try{n=v?v(n):n;let L={name:"serialize"},D=this._tracingHelper.runInChildSpan(L,()=>_r({modelName:f,runtimeDataModel:this._runtimeDataModel,action:a,args:n,clientMethod:i,callsite:s,extensions:this._extensions,errorFormat:this._errorFormat,clientVersion:this._clientVersion,previewFeatures:this._previewFeatures,globalOmit:this._globalOmit}));return j.enabled("prisma:client")&&(De("Prisma Client call:"),De(`prisma.${i}(${xo(n)})`),De("Generated request:"),De(JSON.stringify(D,null,2)+` +`)),R?.kind==="batch"&&await R.lock,this._requestHandler.request({protocolQuery:D,modelName:f,action:a,clientMethod:i,dataPath:o,callsite:s,args:n,extensions:this._extensions,transaction:R,unpacker:A,otelParentCtx:I,otelChildCtx:this._tracingHelper.getActiveContext(),globalOmit:this._globalOmit,customDataProxyFetch:C})}catch(L){throw L.clientVersion=this._clientVersion,L}}$metrics=new nt(this);_hasPreviewFlag(n){return!!this._engineConfig.previewFeatures?.includes(n)}$applyPendingMigrations(){return this._engine.applyPendingMigrations()}$extends=ko}return e}function Ms(t,e){return Ku(t)?[new ne(t,e),hs]:[t,bs]}function Ku(t){return Array.isArray(t)&&Array.isArray(t.raw)}u();c();p();m();d();l();var Hu=new Set(["toJSON","$$typeof","asymmetricMatch",Symbol.iterator,Symbol.toStringTag,Symbol.isConcatSpreadable,Symbol.toPrimitive]);function Ns(t){return new Proxy(t,{get(e,r){if(r in e)return e[r];if(!Hu.has(r))throw new TypeError(`Invalid enum value: ${String(r)}`)}})}u();c();p();m();d();l();l();0&&(module.exports={DMMF,Debug,Decimal,Extensions,MetricsClient,PrismaClientInitializationError,PrismaClientKnownRequestError,PrismaClientRustPanicError,PrismaClientUnknownRequestError,PrismaClientValidationError,Public,Sql,createParam,defineDmmfProperty,deserializeJsonResponse,deserializeRawResult,dmmfToRuntimeDataModel,empty,getPrismaClient,getRuntime,join,makeStrictEnum,makeTypedQueryFactory,objectEnumValues,raw,serializeJsonQuery,skip,sqltag,warnEnvConflicts,warnOnce}); //# sourceMappingURL=wasm-engine-edge.js.map diff --git a/generated/prisma/schema.prisma b/generated/prisma/schema.prisma index 5e706fdb..212efea5 100644 --- a/generated/prisma/schema.prisma +++ b/generated/prisma/schema.prisma @@ -15,18 +15,6 @@ datasource db { url = env("DATABASE_URL") } -model Post { - id Int @id @default(autoincrement()) - name String - createdAt DateTime @default(now()) - updatedAt DateTime @updatedAt - - createdBy User @relation(fields: [createdById], references: [id]) - createdById String - - @@index([name]) -} - // Necessary for Next auth model Account { id String @id @default(cuid()) @@ -61,9 +49,13 @@ model User { email String? @unique emailVerified DateTime? image String? - accounts Account[] - sessions Session[] - posts Post[] + balance Float @default(1000) + + accounts Account[] + sessions Session[] + shops Shop[] + carts Cart[] + adresses Adress[] } model VerificationToken { @@ -73,3 +65,72 @@ model VerificationToken { @@unique([identifier, token]) } + +////////////////////// +// SHOP +////////////////////// + +model Shop { + id Int @id + userId String + label String + + user User @relation(fields: [userId], references: [id], onDelete: Cascade, onUpdate: Cascade) + items Item[] + sellables Sellable[] +} + +model Item { + item_name String @id + stock Int + shopId Int + + shop Shop @relation(fields: [shopId], references: [id], onDelete: Cascade, onUpdate: Cascade) + sellables Sellable[] +} + +model Sellable { + id String @id @default(cuid()) + item_name String + amount Int + price Float + shopId Int + enabled Boolean @default(true) + + shop Shop @relation(fields: [shopId], references: [id], onDelete: Cascade, onUpdate: Cascade) + item Item @relation(fields: [item_name], references: [item_name], onDelete: Cascade, onUpdate: Cascade) + cartItems CartItem[] +} + +////////////////////// +// CART +////////////////////// + +model Cart { + id String @id + userId String + + user User @relation(fields: [userId], references: [id], onDelete: Cascade, onUpdate: Cascade) + cartItems CartItem[] +} + +model CartItem { + itemId String @id + quantity Int + cartId String + + cart Cart @relation(fields: [cartId], references: [id], onDelete: Cascade, onUpdate: Cascade) + sellable Sellable @relation(fields: [itemId], references: [id], onDelete: Cascade, onUpdate: Cascade) +} + +////////////////////// +// ADDRESS +////////////////////// + +model Adress { + id String @id @default(cuid()) + userId String + adress String + + user User @relation(fields: [userId], references: [id], onDelete: Cascade, onUpdate: Cascade) +} diff --git a/generated/prisma/wasm.d.ts b/generated/prisma/wasm.d.ts index f348fd43..274b8fa6 100644 --- a/generated/prisma/wasm.d.ts +++ b/generated/prisma/wasm.d.ts @@ -1 +1 @@ -export * from "./default"; +export * from "./default" \ No newline at end of file diff --git a/generated/prisma/wasm.js b/generated/prisma/wasm.js index ffcbd315..3d3c0e5c 100644 --- a/generated/prisma/wasm.js +++ b/generated/prisma/wasm.js @@ -1,3 +1,4 @@ + /* !!! This is code generated by Prisma. Do not edit directly. !!! /* eslint-disable */ // biome-ignore-all lint: generated file @@ -26,12 +27,13 @@ const { Public, getRuntime, createParam, -} = require("./runtime/wasm-engine-edge.js"); +} = require('./runtime/wasm-engine-edge.js') -const Prisma = {}; -exports.Prisma = Prisma; -exports.$Enums = {}; +const Prisma = {} + +exports.Prisma = Prisma +exports.$Enums = {} /** * Prisma Client JS version: 6.19.2 @@ -39,246 +41,295 @@ exports.$Enums = {}; */ Prisma.prismaVersion = { client: "6.19.2", - engine: "c2990dca591cba766e3b7ef5d9e8a84796e47ab7", -}; + engine: "c2990dca591cba766e3b7ef5d9e8a84796e47ab7" +} Prisma.PrismaClientKnownRequestError = PrismaClientKnownRequestError; -Prisma.PrismaClientUnknownRequestError = PrismaClientUnknownRequestError; -Prisma.PrismaClientRustPanicError = PrismaClientRustPanicError; -Prisma.PrismaClientInitializationError = PrismaClientInitializationError; -Prisma.PrismaClientValidationError = PrismaClientValidationError; -Prisma.Decimal = Decimal; +Prisma.PrismaClientUnknownRequestError = PrismaClientUnknownRequestError +Prisma.PrismaClientRustPanicError = PrismaClientRustPanicError +Prisma.PrismaClientInitializationError = PrismaClientInitializationError +Prisma.PrismaClientValidationError = PrismaClientValidationError +Prisma.Decimal = Decimal /** * Re-export of sql-template-tag */ -Prisma.sql = sqltag; -Prisma.empty = empty; -Prisma.join = join; -Prisma.raw = raw; -Prisma.validator = Public.validator; +Prisma.sql = sqltag +Prisma.empty = empty +Prisma.join = join +Prisma.raw = raw +Prisma.validator = Public.validator /** - * Extensions - */ -Prisma.getExtensionContext = Extensions.getExtensionContext; -Prisma.defineExtension = Extensions.defineExtension; +* Extensions +*/ +Prisma.getExtensionContext = Extensions.getExtensionContext +Prisma.defineExtension = Extensions.defineExtension /** * Shorthand utilities for JSON filtering */ -Prisma.DbNull = objectEnumValues.instances.DbNull; -Prisma.JsonNull = objectEnumValues.instances.JsonNull; -Prisma.AnyNull = objectEnumValues.instances.AnyNull; +Prisma.DbNull = objectEnumValues.instances.DbNull +Prisma.JsonNull = objectEnumValues.instances.JsonNull +Prisma.AnyNull = objectEnumValues.instances.AnyNull Prisma.NullTypes = { DbNull: objectEnumValues.classes.DbNull, JsonNull: objectEnumValues.classes.JsonNull, - AnyNull: objectEnumValues.classes.AnyNull, -}; + AnyNull: objectEnumValues.classes.AnyNull +} + + + + /** * Enums */ exports.Prisma.TransactionIsolationLevel = makeStrictEnum({ - ReadUncommitted: "ReadUncommitted", - ReadCommitted: "ReadCommitted", - RepeatableRead: "RepeatableRead", - Serializable: "Serializable", + ReadUncommitted: 'ReadUncommitted', + ReadCommitted: 'ReadCommitted', + RepeatableRead: 'RepeatableRead', + Serializable: 'Serializable' }); -exports.Prisma.PostScalarFieldEnum = { - id: "id", - name: "name", - createdAt: "createdAt", - updatedAt: "updatedAt", - createdById: "createdById", -}; - exports.Prisma.AccountScalarFieldEnum = { - id: "id", - userId: "userId", - type: "type", - provider: "provider", - providerAccountId: "providerAccountId", - refresh_token: "refresh_token", - access_token: "access_token", - expires_at: "expires_at", - token_type: "token_type", - scope: "scope", - id_token: "id_token", - session_state: "session_state", - refresh_token_expires_in: "refresh_token_expires_in", + id: 'id', + userId: 'userId', + type: 'type', + provider: 'provider', + providerAccountId: 'providerAccountId', + refresh_token: 'refresh_token', + access_token: 'access_token', + expires_at: 'expires_at', + token_type: 'token_type', + scope: 'scope', + id_token: 'id_token', + session_state: 'session_state', + refresh_token_expires_in: 'refresh_token_expires_in' }; exports.Prisma.SessionScalarFieldEnum = { - id: "id", - sessionToken: "sessionToken", - userId: "userId", - expires: "expires", + id: 'id', + sessionToken: 'sessionToken', + userId: 'userId', + expires: 'expires' }; exports.Prisma.UserScalarFieldEnum = { - id: "id", - name: "name", - email: "email", - emailVerified: "emailVerified", - image: "image", + id: 'id', + name: 'name', + email: 'email', + emailVerified: 'emailVerified', + image: 'image', + balance: 'balance' }; exports.Prisma.VerificationTokenScalarFieldEnum = { - identifier: "identifier", - token: "token", - expires: "expires", + identifier: 'identifier', + token: 'token', + expires: 'expires' +}; + +exports.Prisma.ShopScalarFieldEnum = { + id: 'id', + userId: 'userId', + label: 'label' +}; + +exports.Prisma.ItemScalarFieldEnum = { + item_name: 'item_name', + stock: 'stock', + shopId: 'shopId' +}; + +exports.Prisma.SellableScalarFieldEnum = { + id: 'id', + item_name: 'item_name', + amount: 'amount', + price: 'price', + shopId: 'shopId', + enabled: 'enabled' +}; + +exports.Prisma.CartScalarFieldEnum = { + id: 'id', + userId: 'userId' +}; + +exports.Prisma.CartItemScalarFieldEnum = { + itemId: 'itemId', + quantity: 'quantity', + cartId: 'cartId' +}; + +exports.Prisma.AdressScalarFieldEnum = { + id: 'id', + userId: 'userId', + adress: 'adress' }; exports.Prisma.SortOrder = { - asc: "asc", - desc: "desc", -}; - -exports.Prisma.PostOrderByRelevanceFieldEnum = { - name: "name", - createdById: "createdById", + asc: 'asc', + desc: 'desc' }; exports.Prisma.NullsOrder = { - first: "first", - last: "last", + first: 'first', + last: 'last' }; exports.Prisma.AccountOrderByRelevanceFieldEnum = { - id: "id", - userId: "userId", - type: "type", - provider: "provider", - providerAccountId: "providerAccountId", - refresh_token: "refresh_token", - access_token: "access_token", - token_type: "token_type", - scope: "scope", - id_token: "id_token", - session_state: "session_state", + id: 'id', + userId: 'userId', + type: 'type', + provider: 'provider', + providerAccountId: 'providerAccountId', + refresh_token: 'refresh_token', + access_token: 'access_token', + token_type: 'token_type', + scope: 'scope', + id_token: 'id_token', + session_state: 'session_state' }; exports.Prisma.SessionOrderByRelevanceFieldEnum = { - id: "id", - sessionToken: "sessionToken", - userId: "userId", + id: 'id', + sessionToken: 'sessionToken', + userId: 'userId' }; exports.Prisma.UserOrderByRelevanceFieldEnum = { - id: "id", - name: "name", - email: "email", - image: "image", + id: 'id', + name: 'name', + email: 'email', + image: 'image' }; exports.Prisma.VerificationTokenOrderByRelevanceFieldEnum = { - identifier: "identifier", - token: "token", + identifier: 'identifier', + token: 'token' }; +exports.Prisma.ShopOrderByRelevanceFieldEnum = { + userId: 'userId', + label: 'label' +}; + +exports.Prisma.ItemOrderByRelevanceFieldEnum = { + item_name: 'item_name' +}; + +exports.Prisma.SellableOrderByRelevanceFieldEnum = { + id: 'id', + item_name: 'item_name' +}; + +exports.Prisma.CartOrderByRelevanceFieldEnum = { + id: 'id', + userId: 'userId' +}; + +exports.Prisma.CartItemOrderByRelevanceFieldEnum = { + itemId: 'itemId', + cartId: 'cartId' +}; + +exports.Prisma.AdressOrderByRelevanceFieldEnum = { + id: 'id', + userId: 'userId', + adress: 'adress' +}; + + exports.Prisma.ModelName = { - Post: "Post", - Account: "Account", - Session: "Session", - User: "User", - VerificationToken: "VerificationToken", + Account: 'Account', + Session: 'Session', + User: 'User', + VerificationToken: 'VerificationToken', + Shop: 'Shop', + Item: 'Item', + Sellable: 'Sellable', + Cart: 'Cart', + CartItem: 'CartItem', + Adress: 'Adress' }; /** * Create the Client */ const config = { - generator: { - name: "client", - provider: { - fromEnvVar: null, - value: "prisma-client-js", + "generator": { + "name": "client", + "provider": { + "fromEnvVar": null, + "value": "prisma-client-js" }, - output: { - value: - "/var/home/zaremate/Documents/cc-create-shop/cc-create-shop/generated/prisma", - fromEnvVar: null, + "output": { + "value": "/var/home/zaremate/Documents/cc-create-shop/generated/prisma", + "fromEnvVar": null }, - config: { - engineType: "library", + "config": { + "engineType": "library" }, - binaryTargets: [ + "binaryTargets": [ { - fromEnvVar: null, - value: "rhel-openssl-3.0.x", - native: true, - }, + "fromEnvVar": null, + "value": "rhel-openssl-3.0.x", + "native": true + } ], - previewFeatures: [], - sourceFilePath: - "/var/home/zaremate/Documents/cc-create-shop/cc-create-shop/prisma/schema.prisma", - isCustomOutput: true, + "previewFeatures": [], + "sourceFilePath": "/var/home/zaremate/Documents/cc-create-shop/prisma/schema.prisma", + "isCustomOutput": true }, - relativeEnvPaths: { - rootEnvPath: null, - schemaEnvPath: "../../.env", + "relativeEnvPaths": { + "rootEnvPath": null, + "schemaEnvPath": "../../.env" }, - relativePath: "../../prisma", - clientVersion: "6.19.2", - engineVersion: "c2990dca591cba766e3b7ef5d9e8a84796e47ab7", - datasourceNames: ["db"], - activeProvider: "mysql", - postinstall: false, - inlineDatasources: { - db: { - url: { - fromEnvVar: "DATABASE_URL", - value: null, - }, - }, + "relativePath": "../../prisma", + "clientVersion": "6.19.2", + "engineVersion": "c2990dca591cba766e3b7ef5d9e8a84796e47ab7", + "datasourceNames": [ + "db" + ], + "activeProvider": "mysql", + "inlineDatasources": { + "db": { + "url": { + "fromEnvVar": "DATABASE_URL", + "value": null + } + } }, - inlineSchema: - '// This is your Prisma schema file,\n// learn more about it in the docs: https://pris.ly/d/prisma-schema\n\ngenerator client {\n provider = "prisma-client-js"\n output = "../generated/prisma"\n}\n\ndatasource db {\n provider = "mysql"\n // NOTE: When using mysql or sqlserver, uncomment the @db.Text annotations in model Account below\n // Further reading:\n // https://next-auth.js.org/adapters/prisma#create-the-prisma-schema\n // https://www.prisma.io/docs/reference/api-reference/prisma-schema-reference#string\n url = env("DATABASE_URL")\n}\n\nmodel Post {\n id Int @id @default(autoincrement())\n name String\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n createdBy User @relation(fields: [createdById], references: [id])\n createdById String\n\n @@index([name])\n}\n\n// Necessary for Next auth\nmodel Account {\n id String @id @default(cuid())\n userId String\n type String\n provider String\n providerAccountId String\n refresh_token String? @db.Text\n access_token String? // @db.Text\n expires_at Int?\n token_type String?\n scope String?\n id_token String? // @db.Text\n session_state String?\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n refresh_token_expires_in Int?\n\n @@unique([provider, providerAccountId])\n}\n\nmodel Session {\n id String @id @default(cuid())\n sessionToken String @unique\n userId String\n expires DateTime\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n}\n\nmodel User {\n id String @id @default(cuid())\n name String?\n email String? @unique\n emailVerified DateTime?\n image String?\n accounts Account[]\n sessions Session[]\n posts Post[]\n}\n\nmodel VerificationToken {\n identifier String\n token String @unique\n expires DateTime\n\n @@unique([identifier, token])\n}\n', - inlineSchemaHash: - "c08474639a944941f1c88b34cba4f0bee4e979c206a6c528fbeed6fac72671f9", - copyEngine: true, -}; -config.dirname = "/"; + "inlineSchema": "// This is your Prisma schema file,\n// learn more about it in the docs: https://pris.ly/d/prisma-schema\n\ngenerator client {\n provider = \"prisma-client-js\"\n output = \"../generated/prisma\"\n}\n\ndatasource db {\n provider = \"mysql\"\n // NOTE: When using mysql or sqlserver, uncomment the @db.Text annotations in model Account below\n // Further reading:\n // https://next-auth.js.org/adapters/prisma#create-the-prisma-schema\n // https://www.prisma.io/docs/reference/api-reference/prisma-schema-reference#string\n url = env(\"DATABASE_URL\")\n}\n\n// Necessary for Next auth\nmodel Account {\n id String @id @default(cuid())\n userId String\n type String\n provider String\n providerAccountId String\n refresh_token String? @db.Text\n access_token String? // @db.Text\n expires_at Int?\n token_type String?\n scope String?\n id_token String? // @db.Text\n session_state String?\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n refresh_token_expires_in Int?\n\n @@unique([provider, providerAccountId])\n}\n\nmodel Session {\n id String @id @default(cuid())\n sessionToken String @unique\n userId String\n expires DateTime\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n}\n\nmodel User {\n id String @id @default(cuid())\n name String?\n email String? @unique\n emailVerified DateTime?\n image String?\n balance Float @default(1000)\n\n accounts Account[]\n sessions Session[]\n shops Shop[]\n carts Cart[]\n adresses Adress[]\n}\n\nmodel VerificationToken {\n identifier String\n token String @unique\n expires DateTime\n\n @@unique([identifier, token])\n}\n\n//////////////////////\n// SHOP\n//////////////////////\n\nmodel Shop {\n id Int @id\n userId String\n label String\n\n user User @relation(fields: [userId], references: [id], onDelete: Cascade, onUpdate: Cascade)\n items Item[]\n sellables Sellable[]\n}\n\nmodel Item {\n item_name String @id\n stock Int\n shopId Int\n\n shop Shop @relation(fields: [shopId], references: [id], onDelete: Cascade, onUpdate: Cascade)\n sellables Sellable[]\n}\n\nmodel Sellable {\n id String @id @default(cuid())\n item_name String\n amount Int\n price Float\n shopId Int\n enabled Boolean @default(true)\n\n shop Shop @relation(fields: [shopId], references: [id], onDelete: Cascade, onUpdate: Cascade)\n item Item @relation(fields: [item_name], references: [item_name], onDelete: Cascade, onUpdate: Cascade)\n cartItems CartItem[]\n}\n\n//////////////////////\n// CART\n//////////////////////\n\nmodel Cart {\n id String @id\n userId String\n\n user User @relation(fields: [userId], references: [id], onDelete: Cascade, onUpdate: Cascade)\n cartItems CartItem[]\n}\n\nmodel CartItem {\n itemId String @id\n quantity Int\n cartId String\n\n cart Cart @relation(fields: [cartId], references: [id], onDelete: Cascade, onUpdate: Cascade)\n sellable Sellable @relation(fields: [itemId], references: [id], onDelete: Cascade, onUpdate: Cascade)\n}\n\n//////////////////////\n// ADDRESS\n//////////////////////\n\nmodel Adress {\n id String @id @default(cuid())\n userId String\n adress String\n\n user User @relation(fields: [userId], references: [id], onDelete: Cascade, onUpdate: Cascade)\n}\n", + "inlineSchemaHash": "c329b0b4b5e81ae3d0db879cefdad70ba729b53e86e9bbf3275b8a13ef241636", + "copyEngine": true +} +config.dirname = '/' -config.runtimeDataModel = JSON.parse( - '{"models":{"Post":{"fields":[{"name":"id","kind":"scalar","type":"Int"},{"name":"name","kind":"scalar","type":"String"},{"name":"createdAt","kind":"scalar","type":"DateTime"},{"name":"updatedAt","kind":"scalar","type":"DateTime"},{"name":"createdBy","kind":"object","type":"User","relationName":"PostToUser"},{"name":"createdById","kind":"scalar","type":"String"}],"dbName":null},"Account":{"fields":[{"name":"id","kind":"scalar","type":"String"},{"name":"userId","kind":"scalar","type":"String"},{"name":"type","kind":"scalar","type":"String"},{"name":"provider","kind":"scalar","type":"String"},{"name":"providerAccountId","kind":"scalar","type":"String"},{"name":"refresh_token","kind":"scalar","type":"String"},{"name":"access_token","kind":"scalar","type":"String"},{"name":"expires_at","kind":"scalar","type":"Int"},{"name":"token_type","kind":"scalar","type":"String"},{"name":"scope","kind":"scalar","type":"String"},{"name":"id_token","kind":"scalar","type":"String"},{"name":"session_state","kind":"scalar","type":"String"},{"name":"user","kind":"object","type":"User","relationName":"AccountToUser"},{"name":"refresh_token_expires_in","kind":"scalar","type":"Int"}],"dbName":null},"Session":{"fields":[{"name":"id","kind":"scalar","type":"String"},{"name":"sessionToken","kind":"scalar","type":"String"},{"name":"userId","kind":"scalar","type":"String"},{"name":"expires","kind":"scalar","type":"DateTime"},{"name":"user","kind":"object","type":"User","relationName":"SessionToUser"}],"dbName":null},"User":{"fields":[{"name":"id","kind":"scalar","type":"String"},{"name":"name","kind":"scalar","type":"String"},{"name":"email","kind":"scalar","type":"String"},{"name":"emailVerified","kind":"scalar","type":"DateTime"},{"name":"image","kind":"scalar","type":"String"},{"name":"accounts","kind":"object","type":"Account","relationName":"AccountToUser"},{"name":"sessions","kind":"object","type":"Session","relationName":"SessionToUser"},{"name":"posts","kind":"object","type":"Post","relationName":"PostToUser"}],"dbName":null},"VerificationToken":{"fields":[{"name":"identifier","kind":"scalar","type":"String"},{"name":"token","kind":"scalar","type":"String"},{"name":"expires","kind":"scalar","type":"DateTime"}],"dbName":null}},"enums":{},"types":{}}', -); -defineDmmfProperty(exports.Prisma, config.runtimeDataModel); +config.runtimeDataModel = JSON.parse("{\"models\":{\"Account\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"userId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"type\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"provider\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"providerAccountId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"refresh_token\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"access_token\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"expires_at\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"token_type\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"scope\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"id_token\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"session_state\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"User\",\"relationName\":\"AccountToUser\"},{\"name\":\"refresh_token_expires_in\",\"kind\":\"scalar\",\"type\":\"Int\"}],\"dbName\":null},\"Session\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sessionToken\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"userId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"expires\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"User\",\"relationName\":\"SessionToUser\"}],\"dbName\":null},\"User\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"email\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"emailVerified\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"image\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"balance\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"accounts\",\"kind\":\"object\",\"type\":\"Account\",\"relationName\":\"AccountToUser\"},{\"name\":\"sessions\",\"kind\":\"object\",\"type\":\"Session\",\"relationName\":\"SessionToUser\"},{\"name\":\"shops\",\"kind\":\"object\",\"type\":\"Shop\",\"relationName\":\"ShopToUser\"},{\"name\":\"carts\",\"kind\":\"object\",\"type\":\"Cart\",\"relationName\":\"CartToUser\"},{\"name\":\"adresses\",\"kind\":\"object\",\"type\":\"Adress\",\"relationName\":\"AdressToUser\"}],\"dbName\":null},\"VerificationToken\":{\"fields\":[{\"name\":\"identifier\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"token\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"expires\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"Shop\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"userId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"label\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"User\",\"relationName\":\"ShopToUser\"},{\"name\":\"items\",\"kind\":\"object\",\"type\":\"Item\",\"relationName\":\"ItemToShop\"},{\"name\":\"sellables\",\"kind\":\"object\",\"type\":\"Sellable\",\"relationName\":\"SellableToShop\"}],\"dbName\":null},\"Item\":{\"fields\":[{\"name\":\"item_name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"stock\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"shopId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"shop\",\"kind\":\"object\",\"type\":\"Shop\",\"relationName\":\"ItemToShop\"},{\"name\":\"sellables\",\"kind\":\"object\",\"type\":\"Sellable\",\"relationName\":\"ItemToSellable\"}],\"dbName\":null},\"Sellable\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"item_name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"amount\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"price\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"shopId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"enabled\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"shop\",\"kind\":\"object\",\"type\":\"Shop\",\"relationName\":\"SellableToShop\"},{\"name\":\"item\",\"kind\":\"object\",\"type\":\"Item\",\"relationName\":\"ItemToSellable\"},{\"name\":\"cartItems\",\"kind\":\"object\",\"type\":\"CartItem\",\"relationName\":\"CartItemToSellable\"}],\"dbName\":null},\"Cart\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"userId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"User\",\"relationName\":\"CartToUser\"},{\"name\":\"cartItems\",\"kind\":\"object\",\"type\":\"CartItem\",\"relationName\":\"CartToCartItem\"}],\"dbName\":null},\"CartItem\":{\"fields\":[{\"name\":\"itemId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"quantity\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"cartId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"cart\",\"kind\":\"object\",\"type\":\"Cart\",\"relationName\":\"CartToCartItem\"},{\"name\":\"sellable\",\"kind\":\"object\",\"type\":\"Sellable\",\"relationName\":\"CartItemToSellable\"}],\"dbName\":null},\"Adress\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"userId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"adress\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"User\",\"relationName\":\"AdressToUser\"}],\"dbName\":null}},\"enums\":{},\"types\":{}}") +defineDmmfProperty(exports.Prisma, config.runtimeDataModel) config.engineWasm = { - getRuntime: async () => require("./query_engine_bg.js"), + getRuntime: async () => require('./query_engine_bg.js'), getQueryEngineWasmModule: async () => { - const loader = (await import("#wasm-engine-loader")).default; - const engine = (await loader).default; - return engine; - }, -}; -config.compilerWasm = undefined; + const loader = (await import('#wasm-engine-loader')).default + const engine = (await loader).default + return engine + } +} +config.compilerWasm = undefined config.injectableEdgeEnv = () => ({ parsed: { - DATABASE_URL: - (typeof globalThis !== "undefined" && globalThis["DATABASE_URL"]) || - (typeof process !== "undefined" && - process.env && - process.env.DATABASE_URL) || - undefined, - }, -}); + DATABASE_URL: typeof globalThis !== 'undefined' && globalThis['DATABASE_URL'] || typeof process !== 'undefined' && process.env && process.env.DATABASE_URL || undefined + } +}) -if ( - (typeof globalThis !== "undefined" && globalThis["DEBUG"]) || - (typeof process !== "undefined" && process.env && process.env.DEBUG) || - undefined -) { - Debug.enable( - (typeof globalThis !== "undefined" && globalThis["DEBUG"]) || - (typeof process !== "undefined" && process.env && process.env.DEBUG) || - undefined, - ); +if (typeof globalThis !== 'undefined' && globalThis['DEBUG'] || typeof process !== 'undefined' && process.env && process.env.DEBUG || undefined) { + Debug.enable(typeof globalThis !== 'undefined' && globalThis['DEBUG'] || typeof process !== 'undefined' && process.env && process.env.DEBUG || undefined) } -const PrismaClient = getPrismaClient(config); -exports.PrismaClient = PrismaClient; -Object.assign(exports, Prisma); +const PrismaClient = getPrismaClient(config) +exports.PrismaClient = PrismaClient +Object.assign(exports, Prisma) + diff --git a/prisma/schema.prisma b/prisma/schema.prisma index 5f63b6d4..212efea5 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -2,74 +2,135 @@ // learn more about it in the docs: https://pris.ly/d/prisma-schema generator client { - provider = "prisma-client-js" - output = "../generated/prisma" + provider = "prisma-client-js" + output = "../generated/prisma" } datasource db { - provider = "mysql" - // NOTE: When using mysql or sqlserver, uncomment the @db.Text annotations in model Account below - // Further reading: - // https://next-auth.js.org/adapters/prisma#create-the-prisma-schema - // https://www.prisma.io/docs/reference/api-reference/prisma-schema-reference#string - url = env("DATABASE_URL") -} - -model Post { - id Int @id @default(autoincrement()) - name String - createdAt DateTime @default(now()) - updatedAt DateTime @updatedAt - - createdBy User @relation(fields: [createdById], references: [id]) - createdById String - - @@index([name]) + provider = "mysql" + // NOTE: When using mysql or sqlserver, uncomment the @db.Text annotations in model Account below + // Further reading: + // https://next-auth.js.org/adapters/prisma#create-the-prisma-schema + // https://www.prisma.io/docs/reference/api-reference/prisma-schema-reference#string + url = env("DATABASE_URL") } // Necessary for Next auth model Account { - id String @id @default(cuid()) - userId String - type String - provider String - providerAccountId String - refresh_token String? @db.Text - access_token String? // @db.Text - expires_at Int? - token_type String? - scope String? - id_token String? // @db.Text - session_state String? - user User @relation(fields: [userId], references: [id], onDelete: Cascade) - refresh_token_expires_in Int? + id String @id @default(cuid()) + userId String + type String + provider String + providerAccountId String + refresh_token String? @db.Text + access_token String? // @db.Text + expires_at Int? + token_type String? + scope String? + id_token String? // @db.Text + session_state String? + user User @relation(fields: [userId], references: [id], onDelete: Cascade) + refresh_token_expires_in Int? - @@unique([provider, providerAccountId]) + @@unique([provider, providerAccountId]) } model Session { - id String @id @default(cuid()) - sessionToken String @unique - userId String - expires DateTime - user User @relation(fields: [userId], references: [id], onDelete: Cascade) + id String @id @default(cuid()) + sessionToken String @unique + userId String + expires DateTime + user User @relation(fields: [userId], references: [id], onDelete: Cascade) } model User { - id String @id @default(cuid()) - name String? - email String? @unique - emailVerified DateTime? - image String? - accounts Account[] - sessions Session[] - posts Post[] + id String @id @default(cuid()) + name String? + email String? @unique + emailVerified DateTime? + image String? + balance Float @default(1000) + + accounts Account[] + sessions Session[] + shops Shop[] + carts Cart[] + adresses Adress[] } model VerificationToken { - identifier String - token String @unique - expires DateTime + identifier String + token String @unique + expires DateTime - @@unique([identifier, token]) + @@unique([identifier, token]) +} + +////////////////////// +// SHOP +////////////////////// + +model Shop { + id Int @id + userId String + label String + + user User @relation(fields: [userId], references: [id], onDelete: Cascade, onUpdate: Cascade) + items Item[] + sellables Sellable[] +} + +model Item { + item_name String @id + stock Int + shopId Int + + shop Shop @relation(fields: [shopId], references: [id], onDelete: Cascade, onUpdate: Cascade) + sellables Sellable[] +} + +model Sellable { + id String @id @default(cuid()) + item_name String + amount Int + price Float + shopId Int + enabled Boolean @default(true) + + shop Shop @relation(fields: [shopId], references: [id], onDelete: Cascade, onUpdate: Cascade) + item Item @relation(fields: [item_name], references: [item_name], onDelete: Cascade, onUpdate: Cascade) + cartItems CartItem[] +} + +////////////////////// +// CART +////////////////////// + +model Cart { + id String @id + userId String + + user User @relation(fields: [userId], references: [id], onDelete: Cascade, onUpdate: Cascade) + cartItems CartItem[] +} + +model CartItem { + itemId String @id + quantity Int + cartId String + + cart Cart @relation(fields: [cartId], references: [id], onDelete: Cascade, onUpdate: Cascade) + sellable Sellable @relation(fields: [itemId], references: [id], onDelete: Cascade, onUpdate: Cascade) +} + +////////////////////// +// ADDRESS +////////////////////// + +model Adress { + id String @id @default(cuid()) + userId String + adress String + + user User @relation(fields: [userId], references: [id], onDelete: Cascade, onUpdate: Cascade) } diff --git a/public/textures/ae2/16k_crafting_storage.png b/public/textures/ae2/16k_crafting_storage.png new file mode 100644 index 00000000..095c7ffb Binary files /dev/null and b/public/textures/ae2/16k_crafting_storage.png differ diff --git a/public/textures/ae2/1k_crafting_storage.png b/public/textures/ae2/1k_crafting_storage.png new file mode 100644 index 00000000..3125dfca Binary files /dev/null and b/public/textures/ae2/1k_crafting_storage.png differ diff --git a/public/textures/ae2/256k_crafting_storage.png b/public/textures/ae2/256k_crafting_storage.png new file mode 100644 index 00000000..755554b6 Binary files /dev/null and b/public/textures/ae2/256k_crafting_storage.png differ diff --git a/public/textures/ae2/4k_crafting_storage.png b/public/textures/ae2/4k_crafting_storage.png new file mode 100644 index 00000000..6fbb5e2a Binary files /dev/null and b/public/textures/ae2/4k_crafting_storage.png differ diff --git a/public/textures/ae2/64k_crafting_storage.png b/public/textures/ae2/64k_crafting_storage.png new file mode 100644 index 00000000..b2c0d1b3 Binary files /dev/null and b/public/textures/ae2/64k_crafting_storage.png differ diff --git a/public/textures/ae2/advanced_card.png b/public/textures/ae2/advanced_card.png new file mode 100644 index 00000000..b7bb2d45 Binary files /dev/null and b/public/textures/ae2/advanced_card.png differ diff --git a/public/textures/ae2/annihilation_core.png b/public/textures/ae2/annihilation_core.png new file mode 100644 index 00000000..cd872d27 Binary files /dev/null and b/public/textures/ae2/annihilation_core.png differ diff --git a/public/textures/ae2/annihilation_plane.png b/public/textures/ae2/annihilation_plane.png new file mode 100644 index 00000000..0769a227 Binary files /dev/null and b/public/textures/ae2/annihilation_plane.png differ diff --git a/public/textures/ae2/basic_card.png b/public/textures/ae2/basic_card.png new file mode 100644 index 00000000..dbaf7608 Binary files /dev/null and b/public/textures/ae2/basic_card.png differ diff --git a/public/textures/ae2/black_covered_cable.png b/public/textures/ae2/black_covered_cable.png new file mode 100644 index 00000000..97ced0e0 Binary files /dev/null and b/public/textures/ae2/black_covered_cable.png differ diff --git a/public/textures/ae2/black_covered_dense_cable.png b/public/textures/ae2/black_covered_dense_cable.png new file mode 100644 index 00000000..8f0fe3f5 Binary files /dev/null and b/public/textures/ae2/black_covered_dense_cable.png differ diff --git a/public/textures/ae2/black_glass_cable.png b/public/textures/ae2/black_glass_cable.png new file mode 100644 index 00000000..73ff6747 Binary files /dev/null and b/public/textures/ae2/black_glass_cable.png differ diff --git a/public/textures/ae2/black_lumen_paint_ball.png b/public/textures/ae2/black_lumen_paint_ball.png new file mode 100644 index 00000000..d0c33d6e Binary files /dev/null and b/public/textures/ae2/black_lumen_paint_ball.png differ diff --git a/public/textures/ae2/black_paint_ball.png b/public/textures/ae2/black_paint_ball.png new file mode 100644 index 00000000..6071072e Binary files /dev/null and b/public/textures/ae2/black_paint_ball.png differ diff --git a/public/textures/ae2/black_smart_cable.png b/public/textures/ae2/black_smart_cable.png new file mode 100644 index 00000000..b7c42c9b Binary files /dev/null and b/public/textures/ae2/black_smart_cable.png differ diff --git a/public/textures/ae2/black_smart_dense_cable.png b/public/textures/ae2/black_smart_dense_cable.png new file mode 100644 index 00000000..2b2b920d Binary files /dev/null and b/public/textures/ae2/black_smart_dense_cable.png differ diff --git a/public/textures/ae2/blank_pattern.png b/public/textures/ae2/blank_pattern.png new file mode 100644 index 00000000..26c50968 Binary files /dev/null and b/public/textures/ae2/blank_pattern.png differ diff --git a/public/textures/ae2/blue_covered_cable.png b/public/textures/ae2/blue_covered_cable.png new file mode 100644 index 00000000..0247d7e3 Binary files /dev/null and b/public/textures/ae2/blue_covered_cable.png differ diff --git a/public/textures/ae2/blue_covered_dense_cable.png b/public/textures/ae2/blue_covered_dense_cable.png new file mode 100644 index 00000000..d991a091 Binary files /dev/null and b/public/textures/ae2/blue_covered_dense_cable.png differ diff --git a/public/textures/ae2/blue_glass_cable.png b/public/textures/ae2/blue_glass_cable.png new file mode 100644 index 00000000..5272e481 Binary files /dev/null and b/public/textures/ae2/blue_glass_cable.png differ diff --git a/public/textures/ae2/blue_lumen_paint_ball.png b/public/textures/ae2/blue_lumen_paint_ball.png new file mode 100644 index 00000000..f4a8d6d9 Binary files /dev/null and b/public/textures/ae2/blue_lumen_paint_ball.png differ diff --git a/public/textures/ae2/blue_paint_ball.png b/public/textures/ae2/blue_paint_ball.png new file mode 100644 index 00000000..f09ad1e5 Binary files /dev/null and b/public/textures/ae2/blue_paint_ball.png differ diff --git a/public/textures/ae2/blue_smart_cable.png b/public/textures/ae2/blue_smart_cable.png new file mode 100644 index 00000000..849d9e54 Binary files /dev/null and b/public/textures/ae2/blue_smart_cable.png differ diff --git a/public/textures/ae2/blue_smart_dense_cable.png b/public/textures/ae2/blue_smart_dense_cable.png new file mode 100644 index 00000000..189f6685 Binary files /dev/null and b/public/textures/ae2/blue_smart_dense_cable.png differ diff --git a/public/textures/ae2/brown_covered_cable.png b/public/textures/ae2/brown_covered_cable.png new file mode 100644 index 00000000..4ccb09d3 Binary files /dev/null and b/public/textures/ae2/brown_covered_cable.png differ diff --git a/public/textures/ae2/brown_covered_dense_cable.png b/public/textures/ae2/brown_covered_dense_cable.png new file mode 100644 index 00000000..b8c12236 Binary files /dev/null and b/public/textures/ae2/brown_covered_dense_cable.png differ diff --git a/public/textures/ae2/brown_glass_cable.png b/public/textures/ae2/brown_glass_cable.png new file mode 100644 index 00000000..9df0a91d Binary files /dev/null and b/public/textures/ae2/brown_glass_cable.png differ diff --git a/public/textures/ae2/brown_lumen_paint_ball.png b/public/textures/ae2/brown_lumen_paint_ball.png new file mode 100644 index 00000000..e838aa48 Binary files /dev/null and b/public/textures/ae2/brown_lumen_paint_ball.png differ diff --git a/public/textures/ae2/brown_paint_ball.png b/public/textures/ae2/brown_paint_ball.png new file mode 100644 index 00000000..0b5c37fb Binary files /dev/null and b/public/textures/ae2/brown_paint_ball.png differ diff --git a/public/textures/ae2/brown_smart_cable.png b/public/textures/ae2/brown_smart_cable.png new file mode 100644 index 00000000..991cbf2f Binary files /dev/null and b/public/textures/ae2/brown_smart_cable.png differ diff --git a/public/textures/ae2/brown_smart_dense_cable.png b/public/textures/ae2/brown_smart_dense_cable.png new file mode 100644 index 00000000..c1c889d9 Binary files /dev/null and b/public/textures/ae2/brown_smart_dense_cable.png differ diff --git a/public/textures/ae2/cable_anchor.png b/public/textures/ae2/cable_anchor.png new file mode 100644 index 00000000..38c1f4e7 Binary files /dev/null and b/public/textures/ae2/cable_anchor.png differ diff --git a/public/textures/ae2/cable_energy_acceptor.png b/public/textures/ae2/cable_energy_acceptor.png new file mode 100644 index 00000000..c32c3379 Binary files /dev/null and b/public/textures/ae2/cable_energy_acceptor.png differ diff --git a/public/textures/ae2/cable_interface.png b/public/textures/ae2/cable_interface.png new file mode 100644 index 00000000..0b76589c Binary files /dev/null and b/public/textures/ae2/cable_interface.png differ diff --git a/public/textures/ae2/cable_pattern_provider.png b/public/textures/ae2/cable_pattern_provider.png new file mode 100644 index 00000000..6f537382 Binary files /dev/null and b/public/textures/ae2/cable_pattern_provider.png differ diff --git a/public/textures/ae2/calculation_processor.png b/public/textures/ae2/calculation_processor.png new file mode 100644 index 00000000..ba052e5c Binary files /dev/null and b/public/textures/ae2/calculation_processor.png differ diff --git a/public/textures/ae2/calculation_processor_press.png b/public/textures/ae2/calculation_processor_press.png new file mode 100644 index 00000000..9f24d1d3 Binary files /dev/null and b/public/textures/ae2/calculation_processor_press.png differ diff --git a/public/textures/ae2/capacity_card.png b/public/textures/ae2/capacity_card.png new file mode 100644 index 00000000..402c5265 Binary files /dev/null and b/public/textures/ae2/capacity_card.png differ diff --git a/public/textures/ae2/cell_component_16k.png b/public/textures/ae2/cell_component_16k.png new file mode 100644 index 00000000..63003556 Binary files /dev/null and b/public/textures/ae2/cell_component_16k.png differ diff --git a/public/textures/ae2/cell_component_1k.png b/public/textures/ae2/cell_component_1k.png new file mode 100644 index 00000000..3b86ff30 Binary files /dev/null and b/public/textures/ae2/cell_component_1k.png differ diff --git a/public/textures/ae2/cell_component_256k.png b/public/textures/ae2/cell_component_256k.png new file mode 100644 index 00000000..ef67c4aa Binary files /dev/null and b/public/textures/ae2/cell_component_256k.png differ diff --git a/public/textures/ae2/cell_component_4k.png b/public/textures/ae2/cell_component_4k.png new file mode 100644 index 00000000..87f82068 Binary files /dev/null and b/public/textures/ae2/cell_component_4k.png differ diff --git a/public/textures/ae2/cell_component_64k.png b/public/textures/ae2/cell_component_64k.png new file mode 100644 index 00000000..b1fc3f06 Binary files /dev/null and b/public/textures/ae2/cell_component_64k.png differ diff --git a/public/textures/ae2/cell_workbench.png b/public/textures/ae2/cell_workbench.png new file mode 100644 index 00000000..5dead010 Binary files /dev/null and b/public/textures/ae2/cell_workbench.png differ diff --git a/public/textures/ae2/certus_quartz_axe.png b/public/textures/ae2/certus_quartz_axe.png new file mode 100644 index 00000000..212deb65 Binary files /dev/null and b/public/textures/ae2/certus_quartz_axe.png differ diff --git a/public/textures/ae2/certus_quartz_crystal.png b/public/textures/ae2/certus_quartz_crystal.png new file mode 100644 index 00000000..663f8dc2 Binary files /dev/null and b/public/textures/ae2/certus_quartz_crystal.png differ diff --git a/public/textures/ae2/certus_quartz_cutting_knife.png b/public/textures/ae2/certus_quartz_cutting_knife.png new file mode 100644 index 00000000..f75229e8 Binary files /dev/null and b/public/textures/ae2/certus_quartz_cutting_knife.png differ diff --git a/public/textures/ae2/certus_quartz_dust.png b/public/textures/ae2/certus_quartz_dust.png new file mode 100644 index 00000000..ee711ae7 Binary files /dev/null and b/public/textures/ae2/certus_quartz_dust.png differ diff --git a/public/textures/ae2/certus_quartz_hoe.png b/public/textures/ae2/certus_quartz_hoe.png new file mode 100644 index 00000000..1e74424a Binary files /dev/null and b/public/textures/ae2/certus_quartz_hoe.png differ diff --git a/public/textures/ae2/certus_quartz_pickaxe.png b/public/textures/ae2/certus_quartz_pickaxe.png new file mode 100644 index 00000000..ad654a2d Binary files /dev/null and b/public/textures/ae2/certus_quartz_pickaxe.png differ diff --git a/public/textures/ae2/certus_quartz_shovel.png b/public/textures/ae2/certus_quartz_shovel.png new file mode 100644 index 00000000..249ea85b Binary files /dev/null and b/public/textures/ae2/certus_quartz_shovel.png differ diff --git a/public/textures/ae2/certus_quartz_sword.png b/public/textures/ae2/certus_quartz_sword.png new file mode 100644 index 00000000..a0d7967c Binary files /dev/null and b/public/textures/ae2/certus_quartz_sword.png differ diff --git a/public/textures/ae2/certus_quartz_wrench.png b/public/textures/ae2/certus_quartz_wrench.png new file mode 100644 index 00000000..b9bc2cbd Binary files /dev/null and b/public/textures/ae2/certus_quartz_wrench.png differ diff --git a/public/textures/ae2/charged_certus_quartz_crystal.png b/public/textures/ae2/charged_certus_quartz_crystal.png new file mode 100644 index 00000000..15fc6da3 Binary files /dev/null and b/public/textures/ae2/charged_certus_quartz_crystal.png differ diff --git a/public/textures/ae2/charged_staff.png b/public/textures/ae2/charged_staff.png new file mode 100644 index 00000000..887c1fd2 Binary files /dev/null and b/public/textures/ae2/charged_staff.png differ diff --git a/public/textures/ae2/charged_staff__{'ae2__stored_energy'__8000.0d}.png b/public/textures/ae2/charged_staff__{'ae2__stored_energy'__8000.0d}.png new file mode 100644 index 00000000..887c1fd2 Binary files /dev/null and b/public/textures/ae2/charged_staff__{'ae2__stored_energy'__8000.0d}.png differ diff --git a/public/textures/ae2/charger.png b/public/textures/ae2/charger.png new file mode 100644 index 00000000..553e3185 Binary files /dev/null and b/public/textures/ae2/charger.png differ diff --git a/public/textures/ae2/chest.png b/public/textures/ae2/chest.png new file mode 100644 index 00000000..3910ba39 Binary files /dev/null and b/public/textures/ae2/chest.png differ diff --git a/public/textures/ae2/chipped_budding_quartz.png b/public/textures/ae2/chipped_budding_quartz.png new file mode 100644 index 00000000..9eca9337 Binary files /dev/null and b/public/textures/ae2/chipped_budding_quartz.png differ diff --git a/public/textures/ae2/chiseled_quartz_block.png b/public/textures/ae2/chiseled_quartz_block.png new file mode 100644 index 00000000..e3a4ae39 Binary files /dev/null and b/public/textures/ae2/chiseled_quartz_block.png differ diff --git a/public/textures/ae2/chiseled_quartz_slab.png b/public/textures/ae2/chiseled_quartz_slab.png new file mode 100644 index 00000000..4ec48433 Binary files /dev/null and b/public/textures/ae2/chiseled_quartz_slab.png differ diff --git a/public/textures/ae2/chiseled_quartz_stairs.png b/public/textures/ae2/chiseled_quartz_stairs.png new file mode 100644 index 00000000..482674f6 Binary files /dev/null and b/public/textures/ae2/chiseled_quartz_stairs.png differ diff --git a/public/textures/ae2/chiseled_quartz_wall.png b/public/textures/ae2/chiseled_quartz_wall.png new file mode 100644 index 00000000..2de852bc Binary files /dev/null and b/public/textures/ae2/chiseled_quartz_wall.png differ diff --git a/public/textures/ae2/color_applicator.png b/public/textures/ae2/color_applicator.png new file mode 100644 index 00000000..636c0e9c Binary files /dev/null and b/public/textures/ae2/color_applicator.png differ diff --git a/public/textures/ae2/color_applicator__{'ae2__stored_energy'__20000.0d}.png b/public/textures/ae2/color_applicator__{'ae2__stored_energy'__20000.0d}.png new file mode 100644 index 00000000..636c0e9c Binary files /dev/null and b/public/textures/ae2/color_applicator__{'ae2__stored_energy'__20000.0d}.png differ diff --git a/public/textures/ae2/condenser.png b/public/textures/ae2/condenser.png new file mode 100644 index 00000000..64d1f39f Binary files /dev/null and b/public/textures/ae2/condenser.png differ diff --git a/public/textures/ae2/controller.png b/public/textures/ae2/controller.png new file mode 100644 index 00000000..2581d5b7 Binary files /dev/null and b/public/textures/ae2/controller.png differ diff --git a/public/textures/ae2/conversion_monitor.png b/public/textures/ae2/conversion_monitor.png new file mode 100644 index 00000000..be622ece Binary files /dev/null and b/public/textures/ae2/conversion_monitor.png differ diff --git a/public/textures/ae2/crafting_accelerator.png b/public/textures/ae2/crafting_accelerator.png new file mode 100644 index 00000000..53e6b597 Binary files /dev/null and b/public/textures/ae2/crafting_accelerator.png differ diff --git a/public/textures/ae2/crafting_card.png b/public/textures/ae2/crafting_card.png new file mode 100644 index 00000000..74c41af4 Binary files /dev/null and b/public/textures/ae2/crafting_card.png differ diff --git a/public/textures/ae2/crafting_monitor.png b/public/textures/ae2/crafting_monitor.png new file mode 100644 index 00000000..df05508a Binary files /dev/null and b/public/textures/ae2/crafting_monitor.png differ diff --git a/public/textures/ae2/crafting_terminal.png b/public/textures/ae2/crafting_terminal.png new file mode 100644 index 00000000..5aa9700d Binary files /dev/null and b/public/textures/ae2/crafting_terminal.png differ diff --git a/public/textures/ae2/crafting_unit.png b/public/textures/ae2/crafting_unit.png new file mode 100644 index 00000000..679ac839 Binary files /dev/null and b/public/textures/ae2/crafting_unit.png differ diff --git a/public/textures/ae2/crank.png b/public/textures/ae2/crank.png new file mode 100644 index 00000000..f04bd2bb Binary files /dev/null and b/public/textures/ae2/crank.png differ diff --git a/public/textures/ae2/creative_energy_cell.png b/public/textures/ae2/creative_energy_cell.png new file mode 100644 index 00000000..967d3cf9 Binary files /dev/null and b/public/textures/ae2/creative_energy_cell.png differ diff --git a/public/textures/ae2/creative_storage_cell.png b/public/textures/ae2/creative_storage_cell.png new file mode 100644 index 00000000..46f6b354 Binary files /dev/null and b/public/textures/ae2/creative_storage_cell.png differ diff --git a/public/textures/ae2/crystal_resonance_generator.png b/public/textures/ae2/crystal_resonance_generator.png new file mode 100644 index 00000000..2764f633 Binary files /dev/null and b/public/textures/ae2/crystal_resonance_generator.png differ diff --git a/public/textures/ae2/cut_quartz_block.png b/public/textures/ae2/cut_quartz_block.png new file mode 100644 index 00000000..5fca2cc1 Binary files /dev/null and b/public/textures/ae2/cut_quartz_block.png differ diff --git a/public/textures/ae2/cut_quartz_slab.png b/public/textures/ae2/cut_quartz_slab.png new file mode 100644 index 00000000..b4569d96 Binary files /dev/null and b/public/textures/ae2/cut_quartz_slab.png differ diff --git a/public/textures/ae2/cut_quartz_stairs.png b/public/textures/ae2/cut_quartz_stairs.png new file mode 100644 index 00000000..fc327099 Binary files /dev/null and b/public/textures/ae2/cut_quartz_stairs.png differ diff --git a/public/textures/ae2/cut_quartz_wall.png b/public/textures/ae2/cut_quartz_wall.png new file mode 100644 index 00000000..f7eeb268 Binary files /dev/null and b/public/textures/ae2/cut_quartz_wall.png differ diff --git a/public/textures/ae2/cyan_covered_cable.png b/public/textures/ae2/cyan_covered_cable.png new file mode 100644 index 00000000..b58d59cd Binary files /dev/null and b/public/textures/ae2/cyan_covered_cable.png differ diff --git a/public/textures/ae2/cyan_covered_dense_cable.png b/public/textures/ae2/cyan_covered_dense_cable.png new file mode 100644 index 00000000..22842a4a Binary files /dev/null and b/public/textures/ae2/cyan_covered_dense_cable.png differ diff --git a/public/textures/ae2/cyan_glass_cable.png b/public/textures/ae2/cyan_glass_cable.png new file mode 100644 index 00000000..fcef24fd Binary files /dev/null and b/public/textures/ae2/cyan_glass_cable.png differ diff --git a/public/textures/ae2/cyan_lumen_paint_ball.png b/public/textures/ae2/cyan_lumen_paint_ball.png new file mode 100644 index 00000000..2358442e Binary files /dev/null and b/public/textures/ae2/cyan_lumen_paint_ball.png differ diff --git a/public/textures/ae2/cyan_paint_ball.png b/public/textures/ae2/cyan_paint_ball.png new file mode 100644 index 00000000..ea29fd03 Binary files /dev/null and b/public/textures/ae2/cyan_paint_ball.png differ diff --git a/public/textures/ae2/cyan_smart_cable.png b/public/textures/ae2/cyan_smart_cable.png new file mode 100644 index 00000000..a9a744e7 Binary files /dev/null and b/public/textures/ae2/cyan_smart_cable.png differ diff --git a/public/textures/ae2/cyan_smart_dense_cable.png b/public/textures/ae2/cyan_smart_dense_cable.png new file mode 100644 index 00000000..0b106845 Binary files /dev/null and b/public/textures/ae2/cyan_smart_dense_cable.png differ diff --git a/public/textures/ae2/damaged_budding_quartz.png b/public/textures/ae2/damaged_budding_quartz.png new file mode 100644 index 00000000..f2ef312d Binary files /dev/null and b/public/textures/ae2/damaged_budding_quartz.png differ diff --git a/public/textures/ae2/dark_monitor.png b/public/textures/ae2/dark_monitor.png new file mode 100644 index 00000000..9f776aea Binary files /dev/null and b/public/textures/ae2/dark_monitor.png differ diff --git a/public/textures/ae2/debug_card.png b/public/textures/ae2/debug_card.png new file mode 100644 index 00000000..1fc15855 Binary files /dev/null and b/public/textures/ae2/debug_card.png differ diff --git a/public/textures/ae2/dense_energy_cell.png b/public/textures/ae2/dense_energy_cell.png new file mode 100644 index 00000000..654466f2 Binary files /dev/null and b/public/textures/ae2/dense_energy_cell.png differ diff --git a/public/textures/ae2/dense_energy_cell__{'ae2__stored_energy'__1600000.0d}.png b/public/textures/ae2/dense_energy_cell__{'ae2__stored_energy'__1600000.0d}.png new file mode 100644 index 00000000..3a5ee3b4 Binary files /dev/null and b/public/textures/ae2/dense_energy_cell__{'ae2__stored_energy'__1600000.0d}.png differ diff --git a/public/textures/ae2/drive.png b/public/textures/ae2/drive.png new file mode 100644 index 00000000..d6ac66ea Binary files /dev/null and b/public/textures/ae2/drive.png differ diff --git a/public/textures/ae2/ender_dust.png b/public/textures/ae2/ender_dust.png new file mode 100644 index 00000000..8ec1760d Binary files /dev/null and b/public/textures/ae2/ender_dust.png differ diff --git a/public/textures/ae2/energy_acceptor.png b/public/textures/ae2/energy_acceptor.png new file mode 100644 index 00000000..3172ef27 Binary files /dev/null and b/public/textures/ae2/energy_acceptor.png differ diff --git a/public/textures/ae2/energy_card.png b/public/textures/ae2/energy_card.png new file mode 100644 index 00000000..635e76f8 Binary files /dev/null and b/public/textures/ae2/energy_card.png differ diff --git a/public/textures/ae2/energy_cell.png b/public/textures/ae2/energy_cell.png new file mode 100644 index 00000000..b2cb62ba Binary files /dev/null and b/public/textures/ae2/energy_cell.png differ diff --git a/public/textures/ae2/energy_cell__{'ae2__stored_energy'__200000.0d}.png b/public/textures/ae2/energy_cell__{'ae2__stored_energy'__200000.0d}.png new file mode 100644 index 00000000..84715c6d Binary files /dev/null and b/public/textures/ae2/energy_cell__{'ae2__stored_energy'__200000.0d}.png differ diff --git a/public/textures/ae2/energy_level_emitter.png b/public/textures/ae2/energy_level_emitter.png new file mode 100644 index 00000000..44a07f9d Binary files /dev/null and b/public/textures/ae2/energy_level_emitter.png differ diff --git a/public/textures/ae2/engineering_processor.png b/public/textures/ae2/engineering_processor.png new file mode 100644 index 00000000..efd21b46 Binary files /dev/null and b/public/textures/ae2/engineering_processor.png differ diff --git a/public/textures/ae2/engineering_processor_press.png b/public/textures/ae2/engineering_processor_press.png new file mode 100644 index 00000000..cee9e386 Binary files /dev/null and b/public/textures/ae2/engineering_processor_press.png differ diff --git a/public/textures/ae2/entropy_manipulator.png b/public/textures/ae2/entropy_manipulator.png new file mode 100644 index 00000000..5416c16f Binary files /dev/null and b/public/textures/ae2/entropy_manipulator.png differ diff --git a/public/textures/ae2/entropy_manipulator__{'ae2__stored_energy'__200000.0d}.png b/public/textures/ae2/entropy_manipulator__{'ae2__stored_energy'__200000.0d}.png new file mode 100644 index 00000000..5416c16f Binary files /dev/null and b/public/textures/ae2/entropy_manipulator__{'ae2__stored_energy'__200000.0d}.png differ diff --git a/public/textures/ae2/equal_distribution_card.png b/public/textures/ae2/equal_distribution_card.png new file mode 100644 index 00000000..7f5a1f20 Binary files /dev/null and b/public/textures/ae2/equal_distribution_card.png differ diff --git a/public/textures/ae2/export_bus.png b/public/textures/ae2/export_bus.png new file mode 100644 index 00000000..12c0912d Binary files /dev/null and b/public/textures/ae2/export_bus.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__16k_crafting_storage'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__16k_crafting_storage'}.png new file mode 100644 index 00000000..bcd2f7d3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__16k_crafting_storage'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__1k_crafting_storage'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__1k_crafting_storage'}.png new file mode 100644 index 00000000..58571b1b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__1k_crafting_storage'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__256k_crafting_storage'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__256k_crafting_storage'}.png new file mode 100644 index 00000000..4a2e10b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__256k_crafting_storage'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__4k_crafting_storage'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__4k_crafting_storage'}.png new file mode 100644 index 00000000..36c2d3b5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__4k_crafting_storage'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__64k_crafting_storage'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__64k_crafting_storage'}.png new file mode 100644 index 00000000..7c6bf435 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__64k_crafting_storage'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__chipped_budding_quartz'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__chipped_budding_quartz'}.png new file mode 100644 index 00000000..70aa5f6e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__chipped_budding_quartz'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__chiseled_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__chiseled_quartz_block'}.png new file mode 100644 index 00000000..5428c6c6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__chiseled_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__controller'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__controller'}.png new file mode 100644 index 00000000..d6c1546c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__controller'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__crafting_accelerator'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__crafting_accelerator'}.png new file mode 100644 index 00000000..908c04af Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__crafting_accelerator'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__crafting_monitor'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__crafting_monitor'}.png new file mode 100644 index 00000000..02f9949c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__crafting_monitor'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__crafting_unit'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__crafting_unit'}.png new file mode 100644 index 00000000..5fe530bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__crafting_unit'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__cut_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__cut_quartz_block'}.png new file mode 100644 index 00000000..534c4c60 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__cut_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__damaged_budding_quartz'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__damaged_budding_quartz'}.png new file mode 100644 index 00000000..39ab803c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__damaged_budding_quartz'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__flawed_budding_quartz'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__flawed_budding_quartz'}.png new file mode 100644 index 00000000..1b81d0bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__flawed_budding_quartz'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__flawless_budding_quartz'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__flawless_budding_quartz'}.png new file mode 100644 index 00000000..dec3d951 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__flawless_budding_quartz'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__fluix_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__fluix_block'}.png new file mode 100644 index 00000000..efd08f7a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__fluix_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__not_so_mysterious_cube'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__not_so_mysterious_cube'}.png new file mode 100644 index 00000000..f11bf5ab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__not_so_mysterious_cube'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__quartz_block'}.png new file mode 100644 index 00000000..ea3abe7b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__quartz_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__quartz_bricks'}.png new file mode 100644 index 00000000..4b83c372 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__quartz_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__quartz_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__quartz_glass'}.png new file mode 100644 index 00000000..0b2dd75c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__quartz_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__quartz_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__quartz_pillar'}.png new file mode 100644 index 00000000..161e4c16 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__quartz_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__quartz_vibrant_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__quartz_vibrant_glass'}.png new file mode 100644 index 00000000..0b2dd75c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__quartz_vibrant_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__sky_stone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__sky_stone_block'}.png new file mode 100644 index 00000000..9f55ec4a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__sky_stone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__sky_stone_brick'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__sky_stone_brick'}.png new file mode 100644 index 00000000..6f40d093 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__sky_stone_brick'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__sky_stone_small_brick'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__sky_stone_small_brick'}.png new file mode 100644 index 00000000..673e6842 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__sky_stone_small_brick'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__smooth_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__smooth_quartz_block'}.png new file mode 100644 index 00000000..8ef6a4e5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__smooth_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__smooth_sky_stone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__smooth_sky_stone_block'}.png new file mode 100644 index 00000000..9b9c24ae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ae2__smooth_sky_stone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__allium_petal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__allium_petal_block'}.png new file mode 100644 index 00000000..d92f0d1d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__allium_petal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__araucaria_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__araucaria_leaves'}.png new file mode 100644 index 00000000..80870197 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__araucaria_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__aspen_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__aspen_bookshelf'}.png new file mode 100644 index 00000000..a0d0ef7a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__aspen_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__aspen_crafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__aspen_crafting_table'}.png new file mode 100644 index 00000000..a529224f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__aspen_crafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__aspen_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__aspen_leaves'}.png new file mode 100644 index 00000000..5cf5affc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__aspen_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__aspen_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__aspen_log'}.png new file mode 100644 index 00000000..9a888681 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__aspen_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__aspen_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__aspen_planks'}.png new file mode 100644 index 00000000..2e4a0362 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__aspen_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__aspen_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__aspen_wood'}.png new file mode 100644 index 00000000..9a888681 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__aspen_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__baobab_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__baobab_bookshelf'}.png new file mode 100644 index 00000000..da715f44 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__baobab_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__baobab_crafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__baobab_crafting_table'}.png new file mode 100644 index 00000000..93d6ef80 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__baobab_crafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__baobab_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__baobab_leaves'}.png new file mode 100644 index 00000000..2279c8cd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__baobab_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__baobab_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__baobab_log'}.png new file mode 100644 index 00000000..1bd30b1e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__baobab_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__baobab_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__baobab_planks'}.png new file mode 100644 index 00000000..eb0d6edc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__baobab_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__baobab_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__baobab_wood'}.png new file mode 100644 index 00000000..acaf35bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__baobab_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__black_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__black_ice'}.png new file mode 100644 index 00000000..9bcce72f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__black_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__black_sand'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__black_sand'}.png new file mode 100644 index 00000000..37f8322b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__black_sand'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__black_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__black_sandstone'}.png new file mode 100644 index 00000000..9f283aa0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__black_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blooming_witch_hazel_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blooming_witch_hazel_leaves'}.png new file mode 100644 index 00000000..f97e059f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blooming_witch_hazel_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_enchanted_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_enchanted_bookshelf'}.png new file mode 100644 index 00000000..8176eef7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_enchanted_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_enchanted_crafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_enchanted_crafting_table'}.png new file mode 100644 index 00000000..d546b6d8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_enchanted_crafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_enchanted_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_enchanted_leaves'}.png new file mode 100644 index 00000000..47846d1c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_enchanted_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_enchanted_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_enchanted_log'}.png new file mode 100644 index 00000000..e198165d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_enchanted_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_enchanted_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_enchanted_planks'}.png new file mode 100644 index 00000000..76c6c234 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_enchanted_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_enchanted_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_enchanted_wood'}.png new file mode 100644 index 00000000..450b366a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_enchanted_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_sand'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_sand'}.png new file mode 100644 index 00000000..b0586f47 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_sand'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_sandstone'}.png new file mode 100644 index 00000000..dec41323 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_spruce_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_spruce_leaves'}.png new file mode 100644 index 00000000..7c02db71 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__blue_spruce_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__borealis_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__borealis_ice'}.png new file mode 100644 index 00000000..09263e15 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__borealis_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__brown_birch_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__brown_birch_leaves'}.png new file mode 100644 index 00000000..5c0b4c13 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__brown_birch_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__brown_mushroom_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__brown_mushroom_stem'}.png new file mode 100644 index 00000000..28943b6c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__brown_mushroom_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__brown_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__brown_oak_leaves'}.png new file mode 100644 index 00000000..e92989dc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__brown_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__brown_zelkova_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__brown_zelkova_leaves'}.png new file mode 100644 index 00000000..7fa4a67f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__brown_zelkova_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__carved_pale_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__carved_pale_pumpkin'}.png new file mode 100644 index 00000000..ecb01d10 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__carved_pale_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cattail_thatch'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cattail_thatch'}.png new file mode 100644 index 00000000..44234dc6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cattail_thatch'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__chiseled_black_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__chiseled_black_sandstone'}.png new file mode 100644 index 00000000..4e5a4302 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__chiseled_black_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__chiseled_blue_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__chiseled_blue_sandstone'}.png new file mode 100644 index 00000000..7cafe66b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__chiseled_blue_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__chiseled_pink_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__chiseled_pink_sandstone'}.png new file mode 100644 index 00000000..8e971889 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__chiseled_pink_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__chiseled_purple_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__chiseled_purple_sandstone'}.png new file mode 100644 index 00000000..1c1de944 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__chiseled_purple_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__chiseled_red_rock_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__chiseled_red_rock_bricks'}.png new file mode 100644 index 00000000..07d28f05 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__chiseled_red_rock_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__chiseled_white_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__chiseled_white_sandstone'}.png new file mode 100644 index 00000000..0bdd1a33 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__chiseled_white_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__chiseled_windswept_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__chiseled_windswept_sandstone'}.png new file mode 100644 index 00000000..30844f69 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__chiseled_windswept_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cika_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cika_bookshelf'}.png new file mode 100644 index 00000000..d0571267 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cika_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cika_crafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cika_crafting_table'}.png new file mode 100644 index 00000000..30f9d7fa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cika_crafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cika_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cika_leaves'}.png new file mode 100644 index 00000000..c1b9c779 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cika_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cika_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cika_log'}.png new file mode 100644 index 00000000..6b66f468 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cika_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cika_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cika_planks'}.png new file mode 100644 index 00000000..70db13bf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cika_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cika_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cika_wood'}.png new file mode 100644 index 00000000..37119cd5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cika_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cracked_red_rock_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cracked_red_rock_bricks'}.png new file mode 100644 index 00000000..de9267b6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cracked_red_rock_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cracked_red_sand'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cracked_red_sand'}.png new file mode 100644 index 00000000..1c88c6c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cracked_red_sand'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cracked_sand'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cracked_sand'}.png new file mode 100644 index 00000000..f885f083 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cracked_sand'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cut_black_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cut_black_sandstone'}.png new file mode 100644 index 00000000..cf024697 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cut_black_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cut_blue_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cut_blue_sandstone'}.png new file mode 100644 index 00000000..760c4976 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cut_blue_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cut_pink_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cut_pink_sandstone'}.png new file mode 100644 index 00000000..1e603fab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cut_pink_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cut_purple_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cut_purple_sandstone'}.png new file mode 100644 index 00000000..7af5b90c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cut_purple_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cut_white_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cut_white_sandstone'}.png new file mode 100644 index 00000000..f5ab11d6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cut_white_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cut_windswept_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cut_windswept_sandstone'}.png new file mode 100644 index 00000000..e97f4853 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cut_windswept_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cypress_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cypress_bookshelf'}.png new file mode 100644 index 00000000..01f31b38 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cypress_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cypress_crafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cypress_crafting_table'}.png new file mode 100644 index 00000000..8ec38082 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cypress_crafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cypress_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cypress_leaves'}.png new file mode 100644 index 00000000..ca2aa3ae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cypress_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cypress_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cypress_log'}.png new file mode 100644 index 00000000..50607abb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cypress_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cypress_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cypress_planks'}.png new file mode 100644 index 00000000..749f01e7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cypress_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cypress_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cypress_wood'}.png new file mode 100644 index 00000000..b1fbd8c2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__cypress_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__dacite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__dacite'}.png new file mode 100644 index 00000000..9e7a7187 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__dacite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__dacite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__dacite_bricks'}.png new file mode 100644 index 00000000..5e91ed51 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__dacite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__dacite_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__dacite_cobblestone'}.png new file mode 100644 index 00000000..e9e329d9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__dacite_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__dacite_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__dacite_pillar'}.png new file mode 100644 index 00000000..5a02a7d9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__dacite_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__dacite_tile'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__dacite_tile'}.png new file mode 100644 index 00000000..ee46b180 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__dacite_tile'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ebony_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ebony_bookshelf'}.png new file mode 100644 index 00000000..85b63ba1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ebony_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ebony_crafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ebony_crafting_table'}.png new file mode 100644 index 00000000..986882e0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ebony_crafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ebony_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ebony_leaves'}.png new file mode 100644 index 00000000..203df84a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ebony_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ebony_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ebony_log'}.png new file mode 100644 index 00000000..4d120d9e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ebony_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ebony_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ebony_planks'}.png new file mode 100644 index 00000000..32a12fd0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ebony_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ebony_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ebony_wood'}.png new file mode 100644 index 00000000..4d120d9e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ebony_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__fir_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__fir_bookshelf'}.png new file mode 100644 index 00000000..3e9c13f6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__fir_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__fir_crafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__fir_crafting_table'}.png new file mode 100644 index 00000000..77fd24b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__fir_crafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__fir_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__fir_leaves'}.png new file mode 100644 index 00000000..60512c9b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__fir_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__fir_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__fir_log'}.png new file mode 100644 index 00000000..0fa1f8d1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__fir_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__fir_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__fir_planks'}.png new file mode 100644 index 00000000..177eceeb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__fir_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__fir_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__fir_wood'}.png new file mode 100644 index 00000000..0fa1f8d1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__fir_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__firecracker_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__firecracker_leaves'}.png new file mode 100644 index 00000000..e34d19bc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__firecracker_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__florus_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__florus_bookshelf'}.png new file mode 100644 index 00000000..15479498 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__florus_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__florus_crafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__florus_crafting_table'}.png new file mode 100644 index 00000000..0cff2b54 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__florus_crafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__florus_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__florus_planks'}.png new file mode 100644 index 00000000..edc330df Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__florus_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__florus_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__florus_stem'}.png new file mode 100644 index 00000000..67d25a58 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__florus_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__florus_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__florus_wood'}.png new file mode 100644 index 00000000..20464488 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__florus_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_baobab_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_baobab_leaves'}.png new file mode 100644 index 00000000..70e5e196 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_baobab_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_indigo_jacaranda_bush'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_indigo_jacaranda_bush'}.png new file mode 100644 index 00000000..ab8e0d30 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_indigo_jacaranda_bush'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_indigo_jacaranda_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_indigo_jacaranda_leaves'}.png new file mode 100644 index 00000000..5d624092 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_indigo_jacaranda_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_ironwood_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_ironwood_leaves'}.png new file mode 100644 index 00000000..d590a841 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_ironwood_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_jacaranda_bush'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_jacaranda_bush'}.png new file mode 100644 index 00000000..8cb6722c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_jacaranda_bush'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_jacaranda_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_jacaranda_leaves'}.png new file mode 100644 index 00000000..7e8003b6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_jacaranda_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_orchard_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_orchard_leaves'}.png new file mode 100644 index 00000000..12853652 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_orchard_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_palo_verde_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_palo_verde_leaves'}.png new file mode 100644 index 00000000..7ffa7b8b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_palo_verde_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_skyris_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_skyris_leaves'}.png new file mode 100644 index 00000000..5177f80c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_skyris_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_spirit_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_spirit_leaves'}.png new file mode 100644 index 00000000..aff9cd22 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_spirit_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_yucca_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_yucca_leaves'}.png new file mode 100644 index 00000000..f40b66b5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__flowering_yucca_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__foragers_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__foragers_table'}.png new file mode 100644 index 00000000..ac5cef77 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__foragers_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__green_apple_skyris_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__green_apple_skyris_leaves'}.png new file mode 100644 index 00000000..155472cf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__green_apple_skyris_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__green_enchanted_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__green_enchanted_bookshelf'}.png new file mode 100644 index 00000000..bd029cf0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__green_enchanted_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__green_enchanted_crafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__green_enchanted_crafting_table'}.png new file mode 100644 index 00000000..b3e365bd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__green_enchanted_crafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__green_enchanted_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__green_enchanted_leaves'}.png new file mode 100644 index 00000000..73198bb0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__green_enchanted_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__green_enchanted_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__green_enchanted_log'}.png new file mode 100644 index 00000000..25a88fff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__green_enchanted_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__green_enchanted_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__green_enchanted_planks'}.png new file mode 100644 index 00000000..0e5cced6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__green_enchanted_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__green_enchanted_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__green_enchanted_wood'}.png new file mode 100644 index 00000000..aa91544b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__green_enchanted_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__green_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__green_mushroom_block'}.png new file mode 100644 index 00000000..0a0136e2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__green_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__holly_berry_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__holly_berry_leaves'}.png new file mode 100644 index 00000000..9886c6b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__holly_berry_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__holly_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__holly_bookshelf'}.png new file mode 100644 index 00000000..ad798ded Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__holly_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__holly_crafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__holly_crafting_table'}.png new file mode 100644 index 00000000..fbc5649a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__holly_crafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__holly_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__holly_leaves'}.png new file mode 100644 index 00000000..26d93d1a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__holly_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__holly_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__holly_log'}.png new file mode 100644 index 00000000..d5fd168f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__holly_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__holly_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__holly_planks'}.png new file mode 100644 index 00000000..31d7aaf7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__holly_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__holly_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__holly_wood'}.png new file mode 100644 index 00000000..d5fd168f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__holly_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__imbued_blue_enchanted_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__imbued_blue_enchanted_wood'}.png new file mode 100644 index 00000000..351979c4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__imbued_blue_enchanted_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__imbued_green_enchanted_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__imbued_green_enchanted_wood'}.png new file mode 100644 index 00000000..95e1309d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__imbued_green_enchanted_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__indigo_jacaranda_bush'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__indigo_jacaranda_bush'}.png new file mode 100644 index 00000000..e0691f4e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__indigo_jacaranda_bush'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__indigo_jacaranda_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__indigo_jacaranda_leaves'}.png new file mode 100644 index 00000000..3075f003 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__indigo_jacaranda_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ironwood_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ironwood_bookshelf'}.png new file mode 100644 index 00000000..025b2e02 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ironwood_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ironwood_crafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ironwood_crafting_table'}.png new file mode 100644 index 00000000..8989cbe3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ironwood_crafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ironwood_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ironwood_leaves'}.png new file mode 100644 index 00000000..4dcdbfa8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ironwood_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ironwood_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ironwood_log'}.png new file mode 100644 index 00000000..7237fa0b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ironwood_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ironwood_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ironwood_planks'}.png new file mode 100644 index 00000000..c0ef7b78 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ironwood_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ironwood_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ironwood_wood'}.png new file mode 100644 index 00000000..f5657933 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ironwood_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__jacaranda_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__jacaranda_bookshelf'}.png new file mode 100644 index 00000000..aa17c064 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__jacaranda_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__jacaranda_bush'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__jacaranda_bush'}.png new file mode 100644 index 00000000..6523e5d5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__jacaranda_bush'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__jacaranda_crafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__jacaranda_crafting_table'}.png new file mode 100644 index 00000000..1db59acc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__jacaranda_crafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__jacaranda_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__jacaranda_leaves'}.png new file mode 100644 index 00000000..797c88b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__jacaranda_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__jacaranda_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__jacaranda_log'}.png new file mode 100644 index 00000000..071cd7d2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__jacaranda_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__jacaranda_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__jacaranda_planks'}.png new file mode 100644 index 00000000..5321bb00 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__jacaranda_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__jacaranda_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__jacaranda_wood'}.png new file mode 100644 index 00000000..071cd7d2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__jacaranda_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__lush_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__lush_dirt'}.png new file mode 100644 index 00000000..ddc2781e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__lush_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__lush_grass_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__lush_grass_block'}.png new file mode 100644 index 00000000..015184e7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__lush_grass_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__mahogany_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__mahogany_bookshelf'}.png new file mode 100644 index 00000000..75e6b47c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__mahogany_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__mahogany_crafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__mahogany_crafting_table'}.png new file mode 100644 index 00000000..304f1006 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__mahogany_crafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__mahogany_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__mahogany_leaves'}.png new file mode 100644 index 00000000..fd3ba93f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__mahogany_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__mahogany_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__mahogany_log'}.png new file mode 100644 index 00000000..69221328 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__mahogany_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__mahogany_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__mahogany_planks'}.png new file mode 100644 index 00000000..24009d2c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__mahogany_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__mahogany_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__mahogany_wood'}.png new file mode 100644 index 00000000..f241d81a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__mahogany_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__maple_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__maple_bookshelf'}.png new file mode 100644 index 00000000..03757964 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__maple_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__maple_crafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__maple_crafting_table'}.png new file mode 100644 index 00000000..8a66b410 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__maple_crafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__maple_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__maple_leaves'}.png new file mode 100644 index 00000000..c3a65a15 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__maple_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__maple_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__maple_log'}.png new file mode 100644 index 00000000..c5342602 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__maple_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__maple_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__maple_planks'}.png new file mode 100644 index 00000000..b776fe8a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__maple_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__maple_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__maple_wood'}.png new file mode 100644 index 00000000..36b94200 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__maple_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__mossy_red_rock_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__mossy_red_rock_bricks'}.png new file mode 100644 index 00000000..dc0cdebc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__mossy_red_rock_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__mossy_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__mossy_stone'}.png new file mode 100644 index 00000000..33651ad3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__mossy_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__orange_birch_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__orange_birch_leaves'}.png new file mode 100644 index 00000000..e28a3f09 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__orange_birch_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__orange_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__orange_oak_leaves'}.png new file mode 100644 index 00000000..efca848e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__orange_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__orange_spruce_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__orange_spruce_leaves'}.png new file mode 100644 index 00000000..da2234db Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__orange_spruce_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__orchard_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__orchard_leaves'}.png new file mode 100644 index 00000000..78ed49c1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__orchard_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__overgrown_dacite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__overgrown_dacite'}.png new file mode 100644 index 00000000..b93fc9a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__overgrown_dacite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__overgrown_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__overgrown_stone'}.png new file mode 100644 index 00000000..b93fc9a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__overgrown_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__packed_black_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__packed_black_ice'}.png new file mode 100644 index 00000000..b698b9ec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__packed_black_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__packed_borealis_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__packed_borealis_ice'}.png new file mode 100644 index 00000000..9f65ad42 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__packed_borealis_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__packed_pale_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__packed_pale_mud'}.png new file mode 100644 index 00000000..bb6fc0a9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__packed_pale_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pale_jack_o_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pale_jack_o_lantern'}.png new file mode 100644 index 00000000..d9198720 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pale_jack_o_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pale_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pale_mud_bricks'}.png new file mode 100644 index 00000000..8231caa5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pale_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pale_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pale_pumpkin'}.png new file mode 100644 index 00000000..1189022f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pale_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palm_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palm_bookshelf'}.png new file mode 100644 index 00000000..13034551 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palm_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palm_crafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palm_crafting_table'}.png new file mode 100644 index 00000000..3ff5ae25 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palm_crafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palm_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palm_leaves'}.png new file mode 100644 index 00000000..b318215b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palm_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palm_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palm_log'}.png new file mode 100644 index 00000000..72c3876b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palm_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palm_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palm_planks'}.png new file mode 100644 index 00000000..260f7296 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palm_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palm_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palm_wood'}.png new file mode 100644 index 00000000..5798ad73 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palm_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palo_verde_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palo_verde_leaves'}.png new file mode 100644 index 00000000..fbbddb00 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palo_verde_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palo_verde_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palo_verde_log'}.png new file mode 100644 index 00000000..800af8ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palo_verde_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palo_verde_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palo_verde_wood'}.png new file mode 100644 index 00000000..ddb9adbd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__palo_verde_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__peat'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__peat'}.png new file mode 100644 index 00000000..6a873d20 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__peat'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pine_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pine_bookshelf'}.png new file mode 100644 index 00000000..ceb1bd7d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pine_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pine_crafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pine_crafting_table'}.png new file mode 100644 index 00000000..018a7e13 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pine_crafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pine_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pine_leaves'}.png new file mode 100644 index 00000000..3e50b0aa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pine_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pine_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pine_log'}.png new file mode 100644 index 00000000..7eead43f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pine_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pine_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pine_planks'}.png new file mode 100644 index 00000000..f6f619d0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pine_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pine_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pine_wood'}.png new file mode 100644 index 00000000..b4ae4bcf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pine_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pink_allium_petal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pink_allium_petal_block'}.png new file mode 100644 index 00000000..3439c41e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pink_allium_petal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pink_sand'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pink_sand'}.png new file mode 100644 index 00000000..eef704bd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pink_sand'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pink_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pink_sandstone'}.png new file mode 100644 index 00000000..1fe2f4d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__pink_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__podzol_dacite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__podzol_dacite'}.png new file mode 100644 index 00000000..f3767d17 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__podzol_dacite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__purple_sand'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__purple_sand'}.png new file mode 100644 index 00000000..1a9f0515 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__purple_sand'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__purple_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__purple_sandstone'}.png new file mode 100644 index 00000000..1f476545 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__purple_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__rainbow_eucalyptus_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__rainbow_eucalyptus_bookshelf'}.png new file mode 100644 index 00000000..9d8e22cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__rainbow_eucalyptus_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__rainbow_eucalyptus_crafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__rainbow_eucalyptus_crafting_table'}.png new file mode 100644 index 00000000..c7972ee0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__rainbow_eucalyptus_crafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__rainbow_eucalyptus_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__rainbow_eucalyptus_leaves'}.png new file mode 100644 index 00000000..f9a45877 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__rainbow_eucalyptus_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__rainbow_eucalyptus_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__rainbow_eucalyptus_log'}.png new file mode 100644 index 00000000..5a26b89a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__rainbow_eucalyptus_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__rainbow_eucalyptus_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__rainbow_eucalyptus_planks'}.png new file mode 100644 index 00000000..fa08d352 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__rainbow_eucalyptus_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__rainbow_eucalyptus_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__rainbow_eucalyptus_wood'}.png new file mode 100644 index 00000000..f86c47c2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__rainbow_eucalyptus_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__red_birch_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__red_birch_leaves'}.png new file mode 100644 index 00000000..98777ec9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__red_birch_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__red_maple_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__red_maple_leaves'}.png new file mode 100644 index 00000000..7f82247c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__red_maple_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__red_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__red_oak_leaves'}.png new file mode 100644 index 00000000..ac1407d5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__red_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__red_rock'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__red_rock'}.png new file mode 100644 index 00000000..1ecc9a4f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__red_rock'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__red_rock_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__red_rock_bricks'}.png new file mode 100644 index 00000000..8d6ac08c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__red_rock_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__red_spruce_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__red_spruce_leaves'}.png new file mode 100644 index 00000000..5fbb0e0c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__red_spruce_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__redwood_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__redwood_bookshelf'}.png new file mode 100644 index 00000000..29eca0bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__redwood_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__redwood_crafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__redwood_crafting_table'}.png new file mode 100644 index 00000000..83115bff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__redwood_crafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__redwood_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__redwood_leaves'}.png new file mode 100644 index 00000000..338d59b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__redwood_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__redwood_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__redwood_log'}.png new file mode 100644 index 00000000..fa880bb7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__redwood_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__redwood_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__redwood_planks'}.png new file mode 100644 index 00000000..467c4808 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__redwood_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__redwood_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__redwood_wood'}.png new file mode 100644 index 00000000..89e7a83d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__redwood_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ripe_baobab_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ripe_baobab_leaves'}.png new file mode 100644 index 00000000..e47b420b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ripe_baobab_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ripe_orchard_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ripe_orchard_leaves'}.png new file mode 100644 index 00000000..15ba3672 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ripe_orchard_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ripe_yucca_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ripe_yucca_leaves'}.png new file mode 100644 index 00000000..d5284cf5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__ripe_yucca_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__rocky_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__rocky_stone'}.png new file mode 100644 index 00000000..e42093c9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__rocky_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__rose_petal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__rose_petal_block'}.png new file mode 100644 index 00000000..6b70a4d2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__rose_petal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__sakura_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__sakura_bookshelf'}.png new file mode 100644 index 00000000..e9e572dd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__sakura_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__sakura_crafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__sakura_crafting_table'}.png new file mode 100644 index 00000000..1c4a5bf0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__sakura_crafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__sakura_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__sakura_log'}.png new file mode 100644 index 00000000..05d62b18 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__sakura_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__sakura_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__sakura_planks'}.png new file mode 100644 index 00000000..2764b687 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__sakura_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__sakura_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__sakura_wood'}.png new file mode 100644 index 00000000..b9a1cc2c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__sakura_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__sandy_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__sandy_dirt'}.png new file mode 100644 index 00000000..529874d9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__sandy_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__silver_maple_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__silver_maple_leaves'}.png new file mode 100644 index 00000000..7730027f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__silver_maple_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__skyris_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__skyris_bookshelf'}.png new file mode 100644 index 00000000..a6f30a20 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__skyris_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__skyris_crafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__skyris_crafting_table'}.png new file mode 100644 index 00000000..9662468b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__skyris_crafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__skyris_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__skyris_leaves'}.png new file mode 100644 index 00000000..ecbcb29e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__skyris_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__skyris_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__skyris_log'}.png new file mode 100644 index 00000000..544abd00 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__skyris_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__skyris_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__skyris_planks'}.png new file mode 100644 index 00000000..c8a1cb0e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__skyris_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__skyris_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__skyris_wood'}.png new file mode 100644 index 00000000..dc5b8351 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__skyris_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__smooth_black_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__smooth_black_sandstone'}.png new file mode 100644 index 00000000..cdc01d88 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__smooth_black_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__smooth_blue_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__smooth_blue_sandstone'}.png new file mode 100644 index 00000000..efef6320 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__smooth_blue_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__smooth_pink_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__smooth_pink_sandstone'}.png new file mode 100644 index 00000000..fb414be2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__smooth_pink_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__smooth_purple_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__smooth_purple_sandstone'}.png new file mode 100644 index 00000000..228130cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__smooth_purple_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__smooth_white_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__smooth_white_sandstone'}.png new file mode 100644 index 00000000..391ff261 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__smooth_white_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__smooth_windswept_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__smooth_windswept_sandstone'}.png new file mode 100644 index 00000000..3712d743 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__smooth_windswept_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__spirit_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__spirit_bookshelf'}.png new file mode 100644 index 00000000..003bb9ea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__spirit_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__spirit_crafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__spirit_crafting_table'}.png new file mode 100644 index 00000000..903e4566 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__spirit_crafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__spirit_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__spirit_leaves'}.png new file mode 100644 index 00000000..5925b6eb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__spirit_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__spirit_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__spirit_log'}.png new file mode 100644 index 00000000..e8654115 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__spirit_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__spirit_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__spirit_planks'}.png new file mode 100644 index 00000000..fcde568c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__spirit_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__spirit_roots'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__spirit_roots'}.png new file mode 100644 index 00000000..59323367 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__spirit_roots'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__spirit_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__spirit_wood'}.png new file mode 100644 index 00000000..fc4328ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__spirit_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_aspen_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_aspen_log'}.png new file mode 100644 index 00000000..a4ebadb4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_aspen_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_aspen_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_aspen_wood'}.png new file mode 100644 index 00000000..a4ebadb4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_aspen_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_baobab_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_baobab_log'}.png new file mode 100644 index 00000000..e7149bc9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_baobab_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_baobab_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_baobab_wood'}.png new file mode 100644 index 00000000..bce525fb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_baobab_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_blue_enchanted_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_blue_enchanted_log'}.png new file mode 100644 index 00000000..d73b7e24 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_blue_enchanted_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_blue_enchanted_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_blue_enchanted_wood'}.png new file mode 100644 index 00000000..7c8a63e7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_blue_enchanted_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_cika_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_cika_log'}.png new file mode 100644 index 00000000..90e8374f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_cika_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_cika_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_cika_wood'}.png new file mode 100644 index 00000000..3958dd30 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_cika_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_cypress_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_cypress_log'}.png new file mode 100644 index 00000000..ffdf857d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_cypress_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_cypress_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_cypress_wood'}.png new file mode 100644 index 00000000..9ac18e8d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_cypress_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_ebony_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_ebony_log'}.png new file mode 100644 index 00000000..64970436 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_ebony_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_ebony_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_ebony_wood'}.png new file mode 100644 index 00000000..c21278a7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_ebony_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_fir_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_fir_log'}.png new file mode 100644 index 00000000..767ff21d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_fir_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_fir_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_fir_wood'}.png new file mode 100644 index 00000000..767ff21d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_fir_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_florus_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_florus_stem'}.png new file mode 100644 index 00000000..baf2eed5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_florus_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_florus_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_florus_wood'}.png new file mode 100644 index 00000000..9312b071 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_florus_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_green_enchanted_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_green_enchanted_log'}.png new file mode 100644 index 00000000..8f7abc1b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_green_enchanted_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_green_enchanted_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_green_enchanted_wood'}.png new file mode 100644 index 00000000..9019972e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_green_enchanted_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_holly_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_holly_log'}.png new file mode 100644 index 00000000..0745d93b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_holly_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_holly_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_holly_wood'}.png new file mode 100644 index 00000000..9286c4fa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_holly_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_ironwood_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_ironwood_log'}.png new file mode 100644 index 00000000..23a50f40 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_ironwood_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_ironwood_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_ironwood_wood'}.png new file mode 100644 index 00000000..23a50f40 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_ironwood_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_jacaranda_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_jacaranda_log'}.png new file mode 100644 index 00000000..9bf5d12e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_jacaranda_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_jacaranda_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_jacaranda_wood'}.png new file mode 100644 index 00000000..65d89130 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_jacaranda_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_mahogany_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_mahogany_log'}.png new file mode 100644 index 00000000..a3e6ae6b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_mahogany_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_mahogany_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_mahogany_wood'}.png new file mode 100644 index 00000000..a3e6ae6b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_mahogany_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_maple_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_maple_log'}.png new file mode 100644 index 00000000..df1c981d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_maple_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_maple_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_maple_wood'}.png new file mode 100644 index 00000000..248cdf29 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_maple_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_palm_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_palm_log'}.png new file mode 100644 index 00000000..74de7da6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_palm_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_palm_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_palm_wood'}.png new file mode 100644 index 00000000..74de7da6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_palm_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_palo_verde_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_palo_verde_log'}.png new file mode 100644 index 00000000..c03f294c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_palo_verde_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_palo_verde_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_palo_verde_wood'}.png new file mode 100644 index 00000000..e5cf62a3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_palo_verde_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_pine_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_pine_log'}.png new file mode 100644 index 00000000..c3d4b983 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_pine_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_pine_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_pine_wood'}.png new file mode 100644 index 00000000..b1e56c78 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_pine_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_rainbow_eucalyptus_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_rainbow_eucalyptus_log'}.png new file mode 100644 index 00000000..24e456fb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_rainbow_eucalyptus_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_rainbow_eucalyptus_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_rainbow_eucalyptus_wood'}.png new file mode 100644 index 00000000..d4f57f5f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_rainbow_eucalyptus_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_redwood_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_redwood_log'}.png new file mode 100644 index 00000000..b412e61e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_redwood_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_redwood_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_redwood_wood'}.png new file mode 100644 index 00000000..d64ec447 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_redwood_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_sakura_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_sakura_log'}.png new file mode 100644 index 00000000..b54806d1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_sakura_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_sakura_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_sakura_wood'}.png new file mode 100644 index 00000000..e7cc9472 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_sakura_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_skyris_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_skyris_log'}.png new file mode 100644 index 00000000..28d7c462 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_skyris_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_skyris_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_skyris_wood'}.png new file mode 100644 index 00000000..28d7c462 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_skyris_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_spirit_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_spirit_log'}.png new file mode 100644 index 00000000..97e12f92 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_spirit_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_spirit_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_spirit_wood'}.png new file mode 100644 index 00000000..8efc4daf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_spirit_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_white_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_white_mangrove_log'}.png new file mode 100644 index 00000000..5516eeca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_white_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_white_mangrove_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_white_mangrove_wood'}.png new file mode 100644 index 00000000..e97dc6f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_white_mangrove_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_willow_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_willow_log'}.png new file mode 100644 index 00000000..92d263a7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_willow_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_willow_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_willow_wood'}.png new file mode 100644 index 00000000..750e3234 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_willow_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_witch_hazel_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_witch_hazel_log'}.png new file mode 100644 index 00000000..f88197cf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_witch_hazel_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_witch_hazel_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_witch_hazel_wood'}.png new file mode 100644 index 00000000..a2b03525 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_witch_hazel_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_zelkova_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_zelkova_log'}.png new file mode 100644 index 00000000..a5aab3ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_zelkova_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_zelkova_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_zelkova_wood'}.png new file mode 100644 index 00000000..a947d035 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__stripped_zelkova_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__weeping_milkcap_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__weeping_milkcap_mushroom_block'}.png new file mode 100644 index 00000000..3bdc6bd0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__weeping_milkcap_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_allium_petal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_allium_petal_block'}.png new file mode 100644 index 00000000..100cbaab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_allium_petal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_mangrove_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_mangrove_bookshelf'}.png new file mode 100644 index 00000000..fc82c583 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_mangrove_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_mangrove_crafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_mangrove_crafting_table'}.png new file mode 100644 index 00000000..aa84d851 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_mangrove_crafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_mangrove_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_mangrove_leaves'}.png new file mode 100644 index 00000000..3b55fd1c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_mangrove_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_mangrove_log'}.png new file mode 100644 index 00000000..fb53776d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_mangrove_planks'}.png new file mode 100644 index 00000000..16cf82a5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_mangrove_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_mangrove_wood'}.png new file mode 100644 index 00000000..7411dfdb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_mangrove_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_mushroom_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_mushroom_stem'}.png new file mode 100644 index 00000000..79d4da2f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_mushroom_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_sakura_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_sakura_leaves'}.png new file mode 100644 index 00000000..ecb16988 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_sakura_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_sand'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_sand'}.png new file mode 100644 index 00000000..cdf185bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_sand'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_sandstone'}.png new file mode 100644 index 00000000..12daecf5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__white_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__willow_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__willow_bookshelf'}.png new file mode 100644 index 00000000..9540ec4d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__willow_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__willow_crafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__willow_crafting_table'}.png new file mode 100644 index 00000000..617d6df8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__willow_crafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__willow_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__willow_leaves'}.png new file mode 100644 index 00000000..88106abf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__willow_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__willow_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__willow_log'}.png new file mode 100644 index 00000000..91431d30 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__willow_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__willow_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__willow_planks'}.png new file mode 100644 index 00000000..6b8f4079 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__willow_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__willow_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__willow_wood'}.png new file mode 100644 index 00000000..286282a3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__willow_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__windswept_sand'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__windswept_sand'}.png new file mode 100644 index 00000000..ffe2e91c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__windswept_sand'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__windswept_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__windswept_sandstone'}.png new file mode 100644 index 00000000..55ad4875 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__windswept_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__windswept_sandstone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__windswept_sandstone_pillar'}.png new file mode 100644 index 00000000..53d255fc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__windswept_sandstone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__witch_hazel_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__witch_hazel_bookshelf'}.png new file mode 100644 index 00000000..ba9d0027 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__witch_hazel_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__witch_hazel_crafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__witch_hazel_crafting_table'}.png new file mode 100644 index 00000000..c2c6fc5a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__witch_hazel_crafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__witch_hazel_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__witch_hazel_leaves'}.png new file mode 100644 index 00000000..9b0aa062 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__witch_hazel_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__witch_hazel_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__witch_hazel_log'}.png new file mode 100644 index 00000000..b2ea3780 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__witch_hazel_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__witch_hazel_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__witch_hazel_planks'}.png new file mode 100644 index 00000000..c8098574 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__witch_hazel_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__witch_hazel_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__witch_hazel_wood'}.png new file mode 100644 index 00000000..9ddd5f15 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__witch_hazel_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__wood_blewit_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__wood_blewit_mushroom_block'}.png new file mode 100644 index 00000000..1ccb23d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__wood_blewit_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__yellow_birch_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__yellow_birch_leaves'}.png new file mode 100644 index 00000000..9dcc69de Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__yellow_birch_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__yellow_sakura_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__yellow_sakura_leaves'}.png new file mode 100644 index 00000000..25ae164b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__yellow_sakura_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__yellow_spruce_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__yellow_spruce_leaves'}.png new file mode 100644 index 00000000..a3f1399f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__yellow_spruce_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__yucca_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__yucca_leaves'}.png new file mode 100644 index 00000000..985a1337 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__yucca_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__zelkova_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__zelkova_bookshelf'}.png new file mode 100644 index 00000000..f4efa529 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__zelkova_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__zelkova_crafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__zelkova_crafting_table'}.png new file mode 100644 index 00000000..ecfca9c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__zelkova_crafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__zelkova_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__zelkova_leaves'}.png new file mode 100644 index 00000000..54b95216 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__zelkova_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__zelkova_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__zelkova_log'}.png new file mode 100644 index 00000000..e8278483 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__zelkova_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__zelkova_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__zelkova_planks'}.png new file mode 100644 index 00000000..539d4a35 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__zelkova_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__zelkova_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__zelkova_wood'}.png new file mode 100644 index 00000000..e8278483 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'biomeswevegone__zelkova_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'brewinandchewin__heating_cask'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'brewinandchewin__heating_cask'}.png new file mode 100644 index 00000000..d32c248f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'brewinandchewin__heating_cask'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'brewinandchewin__ice_crate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'brewinandchewin__ice_crate'}.png new file mode 100644 index 00000000..8bd40ad3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'brewinandchewin__ice_crate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__acacia_planks_mosaic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__acacia_planks_mosaic'}.png new file mode 100644 index 00000000..a84107f6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__acacia_planks_mosaic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__acacia_planks_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__acacia_planks_panel'}.png new file mode 100644 index 00000000..07a37a80 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__acacia_planks_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__acacia_planks_shavings'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__acacia_planks_shavings'}.png new file mode 100644 index 00000000..39d82c4a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__acacia_planks_shavings'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ad_astra_ochre_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ad_astra_ochre_froglight'}.png new file mode 100644 index 00000000..5642a92c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ad_astra_ochre_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ad_astra_pearlescent_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ad_astra_pearlescent_froglight'}.png new file mode 100644 index 00000000..db7038bc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ad_astra_pearlescent_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ad_astra_verdant_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ad_astra_verdant_froglight'}.png new file mode 100644 index 00000000..26054120 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ad_astra_verdant_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__alchemy_bench'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__alchemy_bench'}.png new file mode 100644 index 00000000..22dfea34 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__alchemy_bench'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__amethyst_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__amethyst_block_bricks'}.png new file mode 100644 index 00000000..91583ce5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__amethyst_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__amethyst_block_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__amethyst_block_mini_tiles'}.png new file mode 100644 index 00000000..522af874 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__amethyst_block_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__amethyst_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__amethyst_block_pillar'}.png new file mode 100644 index 00000000..645353fe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__amethyst_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__amethyst_block_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__amethyst_block_pillar_top'}.png new file mode 100644 index 00000000..d5aa7e58 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__amethyst_block_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__amethyst_block_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__amethyst_block_scales'}.png new file mode 100644 index 00000000..fcd7c91c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__amethyst_block_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_cubed_oak_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_cubed_oak_bookshelf'}.png new file mode 100644 index 00000000..f3a95e27 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_cubed_oak_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_debris_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_debris_bricks'}.png new file mode 100644 index 00000000..e380c662 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_debris_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_debris_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_debris_mini_tiles'}.png new file mode 100644 index 00000000..593f911a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_debris_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_debris_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_debris_pillar'}.png new file mode 100644 index 00000000..630dfaf0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_debris_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_debris_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_debris_pillar_top'}.png new file mode 100644 index 00000000..d33c80d3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_debris_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_debris_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_debris_scales'}.png new file mode 100644 index 00000000..2e0b5ec4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_debris_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_diamond_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_diamond_block'}.png new file mode 100644 index 00000000..e0cc4936 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_diamond_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_emerald_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_emerald_block'}.png new file mode 100644 index 00000000..47fce49b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_emerald_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_gold_block'}.png new file mode 100644 index 00000000..be116071 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_iron_block'}.png new file mode 100644 index 00000000..9bf3f0ce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_oak_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_oak_bookshelf'}.png new file mode 100644 index 00000000..ad39c150 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_oak_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_oak_large_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_oak_large_bookshelf'}.png new file mode 100644 index 00000000..120b4d26 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_oak_large_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_ochre_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_ochre_froglight'}.png new file mode 100644 index 00000000..7980ac2e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_ochre_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_pearlescent_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_pearlescent_froglight'}.png new file mode 100644 index 00000000..025cedb2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_pearlescent_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_verdant_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_verdant_froglight'}.png new file mode 100644 index 00000000..8818b70c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_verdant_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_vertical_oak_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_vertical_oak_bookshelf'}.png new file mode 100644 index 00000000..57400896 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_vertical_oak_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_waxed_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_waxed_copper_block'}.png new file mode 100644 index 00000000..b871e1aa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_waxed_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_waxed_exposed_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_waxed_exposed_copper'}.png new file mode 100644 index 00000000..021ab20f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_waxed_exposed_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_waxed_oxidized_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_waxed_oxidized_copper'}.png new file mode 100644 index 00000000..62a45ad5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_waxed_oxidized_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_waxed_weathered_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_waxed_weathered_copper'}.png new file mode 100644 index 00000000..96c6f0c0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ancient_waxed_weathered_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__andesite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__andesite_bricks'}.png new file mode 100644 index 00000000..f30b8652 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__andesite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__andesite_gravel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__andesite_gravel'}.png new file mode 100644 index 00000000..0314b4b4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__andesite_gravel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__andesite_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__andesite_mini_tiles'}.png new file mode 100644 index 00000000..2fb97b37 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__andesite_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__andesite_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__andesite_pillar'}.png new file mode 100644 index 00000000..5e78c02c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__andesite_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__andesite_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__andesite_pillar_top'}.png new file mode 100644 index 00000000..e8eef78e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__andesite_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__andesite_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__andesite_scales'}.png new file mode 100644 index 00000000..28f3bb96 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__andesite_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angled_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angled_mud_bricks'}.png new file mode 100644 index 00000000..db17963c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angled_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angled_mud_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angled_mud_bricks_bricks'}.png new file mode 100644 index 00000000..adc3aa97 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angled_mud_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angled_packed_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angled_packed_mud_bricks'}.png new file mode 100644 index 00000000..bbc9b87b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angled_packed_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_amethyst_block'}.png new file mode 100644 index 00000000..515b9a79 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_ancient_debris'}.png new file mode 100644 index 00000000..2a446009 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_andesite'}.png new file mode 100644 index 00000000..3b8bee1f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_basalt'}.png new file mode 100644 index 00000000..4839a697 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_blackstone'}.png new file mode 100644 index 00000000..5bbc2004 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_blue_ice'}.png new file mode 100644 index 00000000..776ca8b2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_borderless_bricks'}.png new file mode 100644 index 00000000..d3aca642 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_bricks'}.png new file mode 100644 index 00000000..2c974651 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_calcite'}.png new file mode 100644 index 00000000..6bfa2323 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_clay'}.png new file mode 100644 index 00000000..a0f844ef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_coal_block'}.png new file mode 100644 index 00000000..8e1459f6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_cobblestone'}.png new file mode 100644 index 00000000..4c80e434 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_crying_obsidian'}.png new file mode 100644 index 00000000..f59f8e3a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_dark_prismarine'}.png new file mode 100644 index 00000000..5297a1a2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_deepslate'}.png new file mode 100644 index 00000000..6983ce48 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_diorite'}.png new file mode 100644 index 00000000..658dd061 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_dirt'}.png new file mode 100644 index 00000000..5921d15e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_dripstone_block'}.png new file mode 100644 index 00000000..9d0c42e6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_end_stone'}.png new file mode 100644 index 00000000..68ed66ab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_gilded_blackstone'}.png new file mode 100644 index 00000000..a1799831 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_granite'}.png new file mode 100644 index 00000000..6c82eefe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_ice'}.png new file mode 100644 index 00000000..759d1b2b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_lapis_block'}.png new file mode 100644 index 00000000..78d47f30 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_lodestone'}.png new file mode 100644 index 00000000..54bed20e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_magma_block'}.png new file mode 100644 index 00000000..bcafd828 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_mossy_cobblestone'}.png new file mode 100644 index 00000000..60cb7cba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_mossy_stone_bricks'}.png new file mode 100644 index 00000000..78f2efe2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_mud'}.png new file mode 100644 index 00000000..83d77ff5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_mud_bricks'}.png new file mode 100644 index 00000000..be1fa399 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_nether_bricks'}.png new file mode 100644 index 00000000..c1f5f94c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_netherrack'}.png new file mode 100644 index 00000000..361b47f5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_obsidian'}.png new file mode 100644 index 00000000..6266c0c6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_packed_ice'}.png new file mode 100644 index 00000000..97a6405b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_packed_mud'}.png new file mode 100644 index 00000000..f0ef003a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_prismarine'}.png new file mode 100644 index 00000000..41379fad Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_purpur_block'}.png new file mode 100644 index 00000000..fe0d5850 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_quartz_block'}.png new file mode 100644 index 00000000..422a2227 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_raw_copper_block'}.png new file mode 100644 index 00000000..9bda1c5c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_raw_gold_block'}.png new file mode 100644 index 00000000..a6e4c625 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_raw_iron_block'}.png new file mode 100644 index 00000000..37323c2b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_red_nether_bricks'}.png new file mode 100644 index 00000000..e9898a86 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_red_sandstone'}.png new file mode 100644 index 00000000..f79d0a18 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_redstone_block'}.png new file mode 100644 index 00000000..f5fddfd4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_sandstone'}.png new file mode 100644 index 00000000..967e0f3f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_smooth_stone'}.png new file mode 100644 index 00000000..886b3ed1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_snow_block'}.png new file mode 100644 index 00000000..bb85b753 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_stone'}.png new file mode 100644 index 00000000..37e81f1c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_tuff'}.png new file mode 100644 index 00000000..9ed0c31f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__angry_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__anguished_carved_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__anguished_carved_pumpkin'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__anguished_carved_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__anguished_jack_o_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__anguished_jack_o_lantern'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__anguished_jack_o_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__antique_hay_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__antique_hay_block'}.png new file mode 100644 index 00000000..55c16d2c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__antique_hay_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__apple_acacia_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__apple_acacia_leaves'}.png new file mode 100644 index 00000000..c65c6707 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__apple_acacia_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__apple_birch_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__apple_birch_leaves'}.png new file mode 100644 index 00000000..dd153cbc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__apple_birch_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__apple_dark_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__apple_dark_oak_leaves'}.png new file mode 100644 index 00000000..6986d233 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__apple_dark_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__apple_jungle_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__apple_jungle_leaves'}.png new file mode 100644 index 00000000..370f32e8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__apple_jungle_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__apple_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__apple_oak_leaves'}.png new file mode 100644 index 00000000..da6beb5e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__apple_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__apple_spruce_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__apple_spruce_leaves'}.png new file mode 100644 index 00000000..01cdf5e8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__apple_spruce_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_black_stained_glass_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_black_stained_glass_pillar'}.png new file mode 100644 index 00000000..06fee9f4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_black_stained_glass_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_blue_stained_glass_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_blue_stained_glass_pillar'}.png new file mode 100644 index 00000000..d3fe09b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_blue_stained_glass_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_brown_stained_glass_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_brown_stained_glass_pillar'}.png new file mode 100644 index 00000000..f27520b4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_brown_stained_glass_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_cyan_stained_glass_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_cyan_stained_glass_pillar'}.png new file mode 100644 index 00000000..1827624e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_cyan_stained_glass_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_gray_stained_glass_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_gray_stained_glass_pillar'}.png new file mode 100644 index 00000000..a1fa973b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_gray_stained_glass_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_green_stained_glass_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_green_stained_glass_pillar'}.png new file mode 100644 index 00000000..5d877aee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_green_stained_glass_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_leaded_glass_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_leaded_glass_pillar'}.png new file mode 100644 index 00000000..18234543 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_leaded_glass_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_light_blue_stained_glass_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_light_blue_stained_glass_pillar'}.png new file mode 100644 index 00000000..cd6c75fd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_light_blue_stained_glass_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_light_gray_stained_glass_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_light_gray_stained_glass_pillar'}.png new file mode 100644 index 00000000..aca3ccbf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_light_gray_stained_glass_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_lime_stained_glass_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_lime_stained_glass_pillar'}.png new file mode 100644 index 00000000..803f811b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_lime_stained_glass_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_magenta_stained_glass_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_magenta_stained_glass_pillar'}.png new file mode 100644 index 00000000..f182f172 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_magenta_stained_glass_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_orange_stained_glass_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_orange_stained_glass_pillar'}.png new file mode 100644 index 00000000..444d23f8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_orange_stained_glass_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_pink_stained_glass_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_pink_stained_glass_pillar'}.png new file mode 100644 index 00000000..da4d2b17 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_pink_stained_glass_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_purple_stained_glass_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_purple_stained_glass_pillar'}.png new file mode 100644 index 00000000..14ae6c27 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_purple_stained_glass_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_red_stained_glass_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_red_stained_glass_pillar'}.png new file mode 100644 index 00000000..3e806dcc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_red_stained_glass_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_white_stained_glass_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_white_stained_glass_pillar'}.png new file mode 100644 index 00000000..924e326f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_white_stained_glass_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_yellow_stained_glass_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_yellow_stained_glass_pillar'}.png new file mode 100644 index 00000000..fdd82e81 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arched_yellow_stained_glass_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arrow_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arrow_mud'}.png new file mode 100644 index 00000000..d7e8f98c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arrow_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arrow_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arrow_mud_bricks'}.png new file mode 100644 index 00000000..59010b75 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arrow_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arrow_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arrow_packed_mud'}.png new file mode 100644 index 00000000..58456fff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__arrow_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ash_sand'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ash_sand'}.png new file mode 100644 index 00000000..50c148f4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ash_sand'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__autumnkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__autumnkin'}.png new file mode 100644 index 00000000..b20100b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__autumnkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bad_time_carved_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bad_time_carved_pumpkin'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bad_time_carved_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bad_time_jack_o_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bad_time_jack_o_lantern'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bad_time_jack_o_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bamboo_dried_kelp_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bamboo_dried_kelp_block'}.png new file mode 100644 index 00000000..70b90e90 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bamboo_dried_kelp_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bamboo_planks_fine_mosaic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bamboo_planks_fine_mosaic'}.png new file mode 100644 index 00000000..52af11bf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bamboo_planks_fine_mosaic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bamboo_planks_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bamboo_planks_panel'}.png new file mode 100644 index 00000000..9dbb8c7e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bamboo_planks_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bamboo_planks_shavings'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bamboo_planks_shavings'}.png new file mode 100644 index 00000000..bf21ff8d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bamboo_planks_shavings'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_black_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_black_wool'}.png new file mode 100644 index 00000000..85e17baa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_black_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_blue_wool'}.png new file mode 100644 index 00000000..e6aad1ff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_brown_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_brown_wool'}.png new file mode 100644 index 00000000..26af221c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_brown_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_cyan_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_cyan_wool'}.png new file mode 100644 index 00000000..ce5a5f4f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_cyan_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_gray_wool'}.png new file mode 100644 index 00000000..1d8161f7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_green_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_green_wool'}.png new file mode 100644 index 00000000..d557afc0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_green_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_light_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_light_blue_wool'}.png new file mode 100644 index 00000000..74dcc68e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_light_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_light_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_light_gray_wool'}.png new file mode 100644 index 00000000..4b1bbe1c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_light_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_lime_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_lime_wool'}.png new file mode 100644 index 00000000..e46f4a0b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_lime_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_magenta_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_magenta_wool'}.png new file mode 100644 index 00000000..abc19ba2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_magenta_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_orange_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_orange_wool'}.png new file mode 100644 index 00000000..0ed6ab75 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_orange_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_pink_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_pink_wool'}.png new file mode 100644 index 00000000..35099fd2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_pink_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_purple_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_purple_wool'}.png new file mode 100644 index 00000000..8d03b353 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_purple_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_red_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_red_wool'}.png new file mode 100644 index 00000000..fb484531 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_red_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_white_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_white_wool'}.png new file mode 100644 index 00000000..92afbda9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_white_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_yellow_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_yellow_wool'}.png new file mode 100644 index 00000000..7cbc58d2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barky_yellow_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barred_ochre_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barred_ochre_froglight'}.png new file mode 100644 index 00000000..9c23e420 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barred_ochre_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barred_pearlescent_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barred_pearlescent_froglight'}.png new file mode 100644 index 00000000..52f4b69e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barred_pearlescent_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barred_verdant_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barred_verdant_froglight'}.png new file mode 100644 index 00000000..0bd0b08b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__barred_verdant_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basalt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basalt_bricks'}.png new file mode 100644 index 00000000..de1cbf3f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basalt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basalt_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basalt_mini_tiles'}.png new file mode 100644 index 00000000..ae86e223 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basalt_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basalt_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basalt_pillar'}.png new file mode 100644 index 00000000..51c3ad7c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basalt_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basalt_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basalt_pillar_top'}.png new file mode 100644 index 00000000..e9c3cba6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basalt_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basalt_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basalt_scales'}.png new file mode 100644 index 00000000..c1162136 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basalt_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_acacia_planks'}.png new file mode 100644 index 00000000..d0d62654 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_bamboo_planks'}.png new file mode 100644 index 00000000..9bea5bb0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_birch_planks'}.png new file mode 100644 index 00000000..230ce226 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_cherry_planks'}.png new file mode 100644 index 00000000..d694c6f1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_crimson_planks'}.png new file mode 100644 index 00000000..f5eaf4fa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_dark_oak_planks'}.png new file mode 100644 index 00000000..9b8aea48 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_jungle_planks'}.png new file mode 100644 index 00000000..ba4d6f3c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_mangrove_planks'}.png new file mode 100644 index 00000000..d56c274a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_oak_planks'}.png new file mode 100644 index 00000000..31cf9e8f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_spruce_planks'}.png new file mode 100644 index 00000000..3f390ef0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_warped_planks'}.png new file mode 100644 index 00000000..3d3d744a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__basket_woven_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__birch_planks_mosaic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__birch_planks_mosaic'}.png new file mode 100644 index 00000000..e1217def Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__birch_planks_mosaic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__birch_planks_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__birch_planks_panel'}.png new file mode 100644 index 00000000..6fe0e640 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__birch_planks_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__birch_planks_shavings'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__birch_planks_shavings'}.png new file mode 100644 index 00000000..ff6bef0f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__birch_planks_shavings'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_concrete_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_concrete_bricks'}.png new file mode 100644 index 00000000..43d4f781 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_concrete_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_concrete_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_concrete_panel'}.png new file mode 100644 index 00000000..c2306d86 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_concrete_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_concrete_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_concrete_pillar'}.png new file mode 100644 index 00000000..67251b11 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_concrete_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_concrete_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_concrete_tiles'}.png new file mode 100644 index 00000000..05cac39a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_concrete_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_glazed_terracotta_pillar_sides'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_glazed_terracotta_pillar_sides'}.png new file mode 100644 index 00000000..9148e3ff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_glazed_terracotta_pillar_sides'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_glazed_terracotta_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_glazed_terracotta_pillar_top'}.png new file mode 100644 index 00000000..76272ddd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_glazed_terracotta_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_glazed_terracotta_smooth_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_glazed_terracotta_smooth_tiles'}.png new file mode 100644 index 00000000..807d9544 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_glazed_terracotta_smooth_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_glazed_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_glazed_terracotta_tiles'}.png new file mode 100644 index 00000000..95916b07 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_glazed_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_terracotta_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_terracotta_bricks'}.png new file mode 100644 index 00000000..8354e08d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_terracotta_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_terracotta_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_terracotta_column'}.png new file mode 100644 index 00000000..52a0b7fd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_terracotta_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_terracotta_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_terracotta_pillar'}.png new file mode 100644 index 00000000..a8a5f0f1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_terracotta_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_terracotta_tile'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_terracotta_tile'}.png new file mode 100644 index 00000000..4aaf71b2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_terracotta_tile'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_terracotta_tiles'}.png new file mode 100644 index 00000000..722c318d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__black_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blackstone_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blackstone_mini_tiles'}.png new file mode 100644 index 00000000..a7725e1d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blackstone_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blackstone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blackstone_pillar'}.png new file mode 100644 index 00000000..afeaf553 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blackstone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blackstone_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blackstone_pillar_top'}.png new file mode 100644 index 00000000..9511e845 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blackstone_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blackstone_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blackstone_scales'}.png new file mode 100644 index 00000000..e364992a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blackstone_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_amethyst_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_amethyst_block_carving'}.png new file mode 100644 index 00000000..8dfdb08b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_amethyst_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_ancient_debris_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_ancient_debris_carving'}.png new file mode 100644 index 00000000..a9d1fbda Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_ancient_debris_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_andesite_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_andesite_carving'}.png new file mode 100644 index 00000000..3048f788 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_andesite_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_basalt_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_basalt_carving'}.png new file mode 100644 index 00000000..1162d2d0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_basalt_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_blackstone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_blackstone_carving'}.png new file mode 100644 index 00000000..36b3e460 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_blackstone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_blue_ice_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_blue_ice_carving'}.png new file mode 100644 index 00000000..95b99fdb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_blue_ice_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_borderless_bricks_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_borderless_bricks_carving'}.png new file mode 100644 index 00000000..fdcd35f6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_borderless_bricks_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_bricks_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_bricks_carving'}.png new file mode 100644 index 00000000..ba2a9add Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_bricks_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_calcite_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_calcite_carving'}.png new file mode 100644 index 00000000..757eaae0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_calcite_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_clay_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_clay_carving'}.png new file mode 100644 index 00000000..171b6442 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_clay_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_coal_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_coal_block_carving'}.png new file mode 100644 index 00000000..5b8c2cf7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_coal_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_cobblestone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_cobblestone_carving'}.png new file mode 100644 index 00000000..5772c1d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_cobblestone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_crying_obsidian_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_crying_obsidian_carving'}.png new file mode 100644 index 00000000..0fa21782 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_crying_obsidian_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_dark_prismarine_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_dark_prismarine_carving'}.png new file mode 100644 index 00000000..1e73411b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_dark_prismarine_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_deepslate_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_deepslate_carving'}.png new file mode 100644 index 00000000..bd424973 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_deepslate_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_diorite_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_diorite_carving'}.png new file mode 100644 index 00000000..bf5c6fe3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_diorite_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_dirt_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_dirt_carving'}.png new file mode 100644 index 00000000..3321fd1f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_dirt_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_dripstone_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_dripstone_block_carving'}.png new file mode 100644 index 00000000..12bbd41a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_dripstone_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_end_stone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_end_stone_carving'}.png new file mode 100644 index 00000000..5b45c1c8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_end_stone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_gilded_blackstone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_gilded_blackstone_carving'}.png new file mode 100644 index 00000000..f69b195d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_gilded_blackstone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_granite_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_granite_carving'}.png new file mode 100644 index 00000000..cc0be5ba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_granite_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_ice_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_ice_carving'}.png new file mode 100644 index 00000000..15dc9088 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_ice_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_lapis_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_lapis_block_carving'}.png new file mode 100644 index 00000000..377a4473 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_lapis_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_lodestone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_lodestone_carving'}.png new file mode 100644 index 00000000..82a9a6c9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_lodestone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_lodestone_side'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_lodestone_side'}.png new file mode 100644 index 00000000..41177f7e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_lodestone_side'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_magma_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_magma_block_carving'}.png new file mode 100644 index 00000000..59e39c09 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_magma_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_mossy_cobblestone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_mossy_cobblestone_carving'}.png new file mode 100644 index 00000000..38e728a1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_mossy_cobblestone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_mossy_stone_bricks_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_mossy_stone_bricks_carving'}.png new file mode 100644 index 00000000..f4d412d3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_mossy_stone_bricks_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_nether_bricks_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_nether_bricks_carving'}.png new file mode 100644 index 00000000..e161e210 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_nether_bricks_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_netherrack_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_netherrack_carving'}.png new file mode 100644 index 00000000..c8a8a6e0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_netherrack_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_obsidian_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_obsidian_carving'}.png new file mode 100644 index 00000000..6ec26aba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_obsidian_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_packed_ice_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_packed_ice_carving'}.png new file mode 100644 index 00000000..9fcbd9ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_packed_ice_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_prismarine_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_prismarine_carving'}.png new file mode 100644 index 00000000..0809b782 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_prismarine_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_purpur_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_purpur_block_carving'}.png new file mode 100644 index 00000000..de789082 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_purpur_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_quartz_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_quartz_block_carving'}.png new file mode 100644 index 00000000..68eef1ca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_quartz_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_raw_copper_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_raw_copper_block_carving'}.png new file mode 100644 index 00000000..caf8337c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_raw_copper_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_raw_gold_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_raw_gold_block_carving'}.png new file mode 100644 index 00000000..ac71d4bf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_raw_gold_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_raw_iron_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_raw_iron_block_carving'}.png new file mode 100644 index 00000000..702faa30 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_raw_iron_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_red_nether_bricks_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_red_nether_bricks_carving'}.png new file mode 100644 index 00000000..bcab5220 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_red_nether_bricks_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_red_sandstone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_red_sandstone_carving'}.png new file mode 100644 index 00000000..e7460fc8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_red_sandstone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_redstone_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_redstone_block_carving'}.png new file mode 100644 index 00000000..a8fe82d8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_redstone_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_sandstone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_sandstone_carving'}.png new file mode 100644 index 00000000..c0995b06 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_sandstone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_smooth_stone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_smooth_stone_carving'}.png new file mode 100644 index 00000000..f56f0702 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_smooth_stone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_snow_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_snow_block_carving'}.png new file mode 100644 index 00000000..d8aa37e0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_snow_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_stone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_stone_carving'}.png new file mode 100644 index 00000000..26f7aae7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_stone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_tuff_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_tuff_carving'}.png new file mode 100644 index 00000000..f0104ae9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blank_tuff_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blobby_moss_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blobby_moss_block'}.png new file mode 100644 index 00000000..bfe27788 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blobby_moss_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_black_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_black_wool'}.png new file mode 100644 index 00000000..0f5821a4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_black_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_blue_wool'}.png new file mode 100644 index 00000000..1d1415f8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_brown_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_brown_wool'}.png new file mode 100644 index 00000000..0381f38e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_brown_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_cyan_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_cyan_wool'}.png new file mode 100644 index 00000000..36af3cb7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_cyan_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_gray_wool'}.png new file mode 100644 index 00000000..90933e78 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_green_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_green_wool'}.png new file mode 100644 index 00000000..02e7d7a4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_green_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_light_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_light_blue_wool'}.png new file mode 100644 index 00000000..0cdb483e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_light_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_light_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_light_gray_wool'}.png new file mode 100644 index 00000000..906ff9e4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_light_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_lime_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_lime_wool'}.png new file mode 100644 index 00000000..38867c5a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_lime_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_magenta_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_magenta_wool'}.png new file mode 100644 index 00000000..0e30a418 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_magenta_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_orange_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_orange_wool'}.png new file mode 100644 index 00000000..f9bfd03c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_orange_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_pink_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_pink_wool'}.png new file mode 100644 index 00000000..ca91a1dc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_pink_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_purple_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_purple_wool'}.png new file mode 100644 index 00000000..f2023e56 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_purple_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_red_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_red_wool'}.png new file mode 100644 index 00000000..af9384fc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_red_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_white_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_white_wool'}.png new file mode 100644 index 00000000..40228085 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_white_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_yellow_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_yellow_wool'}.png new file mode 100644 index 00000000..c531cda6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blocky_yellow_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blooming_mushroom_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blooming_mushroom_stem'}.png new file mode 100644 index 00000000..1e91b12d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blooming_mushroom_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_concrete_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_concrete_bricks'}.png new file mode 100644 index 00000000..506c452a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_concrete_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_concrete_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_concrete_panel'}.png new file mode 100644 index 00000000..af1904de Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_concrete_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_concrete_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_concrete_pillar'}.png new file mode 100644 index 00000000..e82b24b8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_concrete_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_concrete_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_concrete_tiles'}.png new file mode 100644 index 00000000..ca39b8d6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_concrete_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_dried_kelp_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_dried_kelp_block'}.png new file mode 100644 index 00000000..4fa5211c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_dried_kelp_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_glazed_terracotta_pillar_sides'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_glazed_terracotta_pillar_sides'}.png new file mode 100644 index 00000000..578ff340 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_glazed_terracotta_pillar_sides'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_glazed_terracotta_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_glazed_terracotta_pillar_top'}.png new file mode 100644 index 00000000..a0d6e60a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_glazed_terracotta_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_glazed_terracotta_smooth_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_glazed_terracotta_smooth_tiles'}.png new file mode 100644 index 00000000..892c6dcb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_glazed_terracotta_smooth_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_glazed_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_glazed_terracotta_tiles'}.png new file mode 100644 index 00000000..d446bc66 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_glazed_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_ice_bricks'}.png new file mode 100644 index 00000000..82d7b8a7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_ice_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_ice_mini_tiles'}.png new file mode 100644 index 00000000..044ff459 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_ice_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_ice_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_ice_pillar'}.png new file mode 100644 index 00000000..0e705492 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_ice_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_ice_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_ice_pillar_top'}.png new file mode 100644 index 00000000..80e249b4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_ice_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_ice_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_ice_scales'}.png new file mode 100644 index 00000000..cc17401a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_ice_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_mangrove_roots'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_mangrove_roots'}.png new file mode 100644 index 00000000..bf15493f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_mangrove_roots'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_moss_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_moss_block'}.png new file mode 100644 index 00000000..1cbc3672 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_moss_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_terracotta_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_terracotta_bricks'}.png new file mode 100644 index 00000000..544018a5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_terracotta_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_terracotta_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_terracotta_column'}.png new file mode 100644 index 00000000..909f254c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_terracotta_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_terracotta_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_terracotta_pillar'}.png new file mode 100644 index 00000000..9c003482 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_terracotta_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_terracotta_tile'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_terracotta_tile'}.png new file mode 100644 index 00000000..d38c7827 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_terracotta_tile'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_terracotta_tiles'}.png new file mode 100644 index 00000000..f42db2ee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__blue_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_black_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_black_concrete'}.png new file mode 100644 index 00000000..f13f0dd3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_black_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_blue_concrete'}.png new file mode 100644 index 00000000..b864d3ab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_brown_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_brown_concrete'}.png new file mode 100644 index 00000000..13b5b7ff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_brown_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_cyan_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_cyan_concrete'}.png new file mode 100644 index 00000000..39bd03bd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_cyan_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_gray_concrete'}.png new file mode 100644 index 00000000..7c38db22 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_green_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_green_concrete'}.png new file mode 100644 index 00000000..37b9228a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_green_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_light_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_light_blue_concrete'}.png new file mode 100644 index 00000000..8fbba1a2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_light_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_light_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_light_gray_concrete'}.png new file mode 100644 index 00000000..781037f8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_light_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_lime_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_lime_concrete'}.png new file mode 100644 index 00000000..b53e3c31 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_lime_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_magenta_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_magenta_concrete'}.png new file mode 100644 index 00000000..71677791 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_magenta_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_orange_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_orange_concrete'}.png new file mode 100644 index 00000000..9716ad35 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_orange_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_pink_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_pink_concrete'}.png new file mode 100644 index 00000000..5632f279 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_pink_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_purple_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_purple_concrete'}.png new file mode 100644 index 00000000..1d7146f5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_purple_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_red_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_red_concrete'}.png new file mode 100644 index 00000000..5c065242 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_red_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_white_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_white_concrete'}.png new file mode 100644 index 00000000..02e92aff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_white_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_yellow_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_yellow_concrete'}.png new file mode 100644 index 00000000..d48116e2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bolted_yellow_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boo_carved_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boo_carved_pumpkin'}.png new file mode 100644 index 00000000..e1f7da17 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boo_carved_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boo_jack_o_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boo_jack_o_lantern'}.png new file mode 100644 index 00000000..e1f7da17 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boo_jack_o_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_amethyst_block'}.png new file mode 100644 index 00000000..eb09919d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_ancient_debris'}.png new file mode 100644 index 00000000..05d62c30 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_andesite'}.png new file mode 100644 index 00000000..700ee859 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_basalt'}.png new file mode 100644 index 00000000..6bcdaa5e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_blackstone'}.png new file mode 100644 index 00000000..7889edbb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_blue_ice'}.png new file mode 100644 index 00000000..38995b13 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_borderless_bricks'}.png new file mode 100644 index 00000000..979eb1d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_bricks'}.png new file mode 100644 index 00000000..d70f539d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_calcite'}.png new file mode 100644 index 00000000..d8b52f01 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_clay'}.png new file mode 100644 index 00000000..f3b4297e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_coal_block'}.png new file mode 100644 index 00000000..89f754a3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_cobblestone'}.png new file mode 100644 index 00000000..4f5b7735 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_crying_obsidian'}.png new file mode 100644 index 00000000..1ab1ffd6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_dark_prismarine'}.png new file mode 100644 index 00000000..8a42cf8d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_deepslate'}.png new file mode 100644 index 00000000..a86e77be Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_diorite'}.png new file mode 100644 index 00000000..78aba68f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_dirt'}.png new file mode 100644 index 00000000..eb036cf5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_dripstone_block'}.png new file mode 100644 index 00000000..e0a29293 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_end_stone'}.png new file mode 100644 index 00000000..48076527 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_gilded_blackstone'}.png new file mode 100644 index 00000000..0b59feb7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_granite'}.png new file mode 100644 index 00000000..81c658cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_ice'}.png new file mode 100644 index 00000000..b435f7d1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_lapis_block'}.png new file mode 100644 index 00000000..58311efb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_lodestone'}.png new file mode 100644 index 00000000..cd9a5d51 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_magma_block'}.png new file mode 100644 index 00000000..37d925d3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_mossy_cobblestone'}.png new file mode 100644 index 00000000..533e4930 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_mossy_stone_bricks'}.png new file mode 100644 index 00000000..d252817b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_mud'}.png new file mode 100644 index 00000000..d3a05b84 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_mud_bricks'}.png new file mode 100644 index 00000000..2b8bcff8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_nether_bricks'}.png new file mode 100644 index 00000000..6cda8ec7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_netherrack'}.png new file mode 100644 index 00000000..79098cb2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_obsidian'}.png new file mode 100644 index 00000000..5bf42285 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_packed_ice'}.png new file mode 100644 index 00000000..ba63bfb0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_packed_mud'}.png new file mode 100644 index 00000000..c705bcba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_prismarine'}.png new file mode 100644 index 00000000..133f695d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_purpur_block'}.png new file mode 100644 index 00000000..59b2d076 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_quartz_block'}.png new file mode 100644 index 00000000..55029ad4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_raw_copper_block'}.png new file mode 100644 index 00000000..cb80340f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_raw_gold_block'}.png new file mode 100644 index 00000000..510f61bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_raw_iron_block'}.png new file mode 100644 index 00000000..bcff4e76 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_red_nether_bricks'}.png new file mode 100644 index 00000000..958d4b28 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_red_sandstone'}.png new file mode 100644 index 00000000..7b171302 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_redstone_block'}.png new file mode 100644 index 00000000..8fed1d46 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_sandstone'}.png new file mode 100644 index 00000000..195e4e7c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_smooth_stone'}.png new file mode 100644 index 00000000..91149ba3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_snow_block'}.png new file mode 100644 index 00000000..7d2eeb88 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_stone'}.png new file mode 100644 index 00000000..02dae9a0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_tuff'}.png new file mode 100644 index 00000000..bb1134f8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bordered_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__borderless_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__borderless_bricks_bricks'}.png new file mode 100644 index 00000000..c7f15f7c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__borderless_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__borderless_bricks_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__borderless_bricks_mini_tiles'}.png new file mode 100644 index 00000000..dde5f3cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__borderless_bricks_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__borderless_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__borderless_bricks_pillar'}.png new file mode 100644 index 00000000..181d0a7c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__borderless_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__borderless_bricks_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__borderless_bricks_pillar_top'}.png new file mode 100644 index 00000000..25258d29 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__borderless_bricks_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__borderless_bricks_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__borderless_bricks_scales'}.png new file mode 100644 index 00000000..bea12727 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__borderless_bricks_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__botanical_oak_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__botanical_oak_bookshelf'}.png new file mode 100644 index 00000000..a9243932 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__botanical_oak_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__botanical_oak_cubed_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__botanical_oak_cubed_bookshelf'}.png new file mode 100644 index 00000000..2dff28d1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__botanical_oak_cubed_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__botanical_oak_large_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__botanical_oak_large_bookshelf'}.png new file mode 100644 index 00000000..f5b07da0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__botanical_oak_large_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__botanist_workbench'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__botanist_workbench'}.png new file mode 100644 index 00000000..b8c46d5b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__botanist_workbench'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_acacia_planks'}.png new file mode 100644 index 00000000..821b09ce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_bamboo_planks'}.png new file mode 100644 index 00000000..a69fa351 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_birch_planks'}.png new file mode 100644 index 00000000..69cfc0ba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_cherry_planks'}.png new file mode 100644 index 00000000..71f59fe0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_crimson_planks'}.png new file mode 100644 index 00000000..e568dd93 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_dark_oak_planks'}.png new file mode 100644 index 00000000..cf2e42b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_jungle_planks'}.png new file mode 100644 index 00000000..f634a44f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_mangrove_planks'}.png new file mode 100644 index 00000000..8c66b69c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_oak_planks'}.png new file mode 100644 index 00000000..47c1da2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_spruce_planks'}.png new file mode 100644 index 00000000..d2ed6781 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_warped_planks'}.png new file mode 100644 index 00000000..ef4611d2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__boxed_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_acacia_planks'}.png new file mode 100644 index 00000000..fd7e8fc5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_bamboo_planks'}.png new file mode 100644 index 00000000..011f4be7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_birch_planks'}.png new file mode 100644 index 00000000..3af1e063 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_cherry_planks'}.png new file mode 100644 index 00000000..e34e07a0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_crimson_planks'}.png new file mode 100644 index 00000000..4fe95710 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_dark_oak_planks'}.png new file mode 100644 index 00000000..563c8022 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_jungle_planks'}.png new file mode 100644 index 00000000..4575222e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_mangrove_planks'}.png new file mode 100644 index 00000000..acaa483c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_oak_planks'}.png new file mode 100644 index 00000000..ce4b5ebf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_spruce_planks'}.png new file mode 100644 index 00000000..490ea241 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_warped_planks'}.png new file mode 100644 index 00000000..83442742 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bond_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_amethyst_block'}.png new file mode 100644 index 00000000..2e362c41 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_ancient_debris'}.png new file mode 100644 index 00000000..801d9ec1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_andesite'}.png new file mode 100644 index 00000000..182d80f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_basalt'}.png new file mode 100644 index 00000000..d5ba32c9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_blackstone'}.png new file mode 100644 index 00000000..4ff294b4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_blue_ice'}.png new file mode 100644 index 00000000..5a9b5595 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_borderless_bricks'}.png new file mode 100644 index 00000000..cc9a1c1b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_bricks'}.png new file mode 100644 index 00000000..fca62a33 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_calcite'}.png new file mode 100644 index 00000000..6783875d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_clay'}.png new file mode 100644 index 00000000..b19fcaf0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_coal_block'}.png new file mode 100644 index 00000000..244a56ea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_cobblestone'}.png new file mode 100644 index 00000000..dc55bd95 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_crying_obsidian'}.png new file mode 100644 index 00000000..c8fb2ade Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_dark_prismarine'}.png new file mode 100644 index 00000000..79e57d97 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_deepslate'}.png new file mode 100644 index 00000000..59d735cf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_diorite'}.png new file mode 100644 index 00000000..2a447340 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_dirt'}.png new file mode 100644 index 00000000..59a61e37 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_dripstone_block'}.png new file mode 100644 index 00000000..0a3c028f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_end_stone'}.png new file mode 100644 index 00000000..d720d8f5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_gilded_blackstone'}.png new file mode 100644 index 00000000..c143d50e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_granite'}.png new file mode 100644 index 00000000..9e4f11c6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_ice'}.png new file mode 100644 index 00000000..7caf5de6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_lapis_block'}.png new file mode 100644 index 00000000..81839625 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_lodestone'}.png new file mode 100644 index 00000000..9e78b4d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_magma_block'}.png new file mode 100644 index 00000000..c02f24c2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_mossy_cobblestone'}.png new file mode 100644 index 00000000..01efcf35 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_mossy_stone_bricks'}.png new file mode 100644 index 00000000..fb7d14fc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_mud'}.png new file mode 100644 index 00000000..afcf37e9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_mud_bricks'}.png new file mode 100644 index 00000000..8b5d3bba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_nether_bricks'}.png new file mode 100644 index 00000000..e13f1522 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_netherrack'}.png new file mode 100644 index 00000000..ccb262a3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_obsidian'}.png new file mode 100644 index 00000000..35e93d2b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_packed_ice'}.png new file mode 100644 index 00000000..5f8a9766 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_packed_mud'}.png new file mode 100644 index 00000000..44af7f5d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_prismarine'}.png new file mode 100644 index 00000000..b47d2dee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_purpur_block'}.png new file mode 100644 index 00000000..c7fa48cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_quartz_block'}.png new file mode 100644 index 00000000..c29696be Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_raw_copper_block'}.png new file mode 100644 index 00000000..cf54fef9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_raw_gold_block'}.png new file mode 100644 index 00000000..cf3892bf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_raw_iron_block'}.png new file mode 100644 index 00000000..d53d1de9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_red_nether_bricks'}.png new file mode 100644 index 00000000..a8f4e472 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_red_sandstone'}.png new file mode 100644 index 00000000..a6755efc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_redstone_block'}.png new file mode 100644 index 00000000..44894fbf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_sandstone'}.png new file mode 100644 index 00000000..ddbd2f72 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_smooth_stone'}.png new file mode 100644 index 00000000..43708d71 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_snow_block'}.png new file mode 100644 index 00000000..dd2e21de Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_stone'}.png new file mode 100644 index 00000000..8f300e3d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_tuff'}.png new file mode 100644 index 00000000..34f0523a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brick_bordered_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricked_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricked_mangrove_planks'}.png new file mode 100644 index 00000000..a838bc3d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricked_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricks_bricks'}.png new file mode 100644 index 00000000..0f505f33 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricks_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricks_mini_tiles'}.png new file mode 100644 index 00000000..9132d0c0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricks_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricks_pillar'}.png new file mode 100644 index 00000000..7ab03fcc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricks_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricks_pillar_top'}.png new file mode 100644 index 00000000..461ad4e3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricks_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricks_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricks_scales'}.png new file mode 100644 index 00000000..27dadce1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricks_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_acacia_planks'}.png new file mode 100644 index 00000000..41eaade3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_bamboo_planks'}.png new file mode 100644 index 00000000..abc36bc1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_birch_planks'}.png new file mode 100644 index 00000000..595927ae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_cherry_planks'}.png new file mode 100644 index 00000000..965de6ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_crimson_planks'}.png new file mode 100644 index 00000000..ebc38acf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_dark_oak_planks'}.png new file mode 100644 index 00000000..6e5df5b4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_jungle_planks'}.png new file mode 100644 index 00000000..4bf367a5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_mangrove_planks'}.png new file mode 100644 index 00000000..f1c1530c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_oak_planks'}.png new file mode 100644 index 00000000..59ace812 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_spruce_planks'}.png new file mode 100644 index 00000000..28c4be3a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_warped_planks'}.png new file mode 100644 index 00000000..5d310c10 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bricky_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bright_melon'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bright_melon'}.png new file mode 100644 index 00000000..4c013933 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bright_melon'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__broken_glowstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__broken_glowstone'}.png new file mode 100644 index 00000000..0dffd112 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__broken_glowstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__broken_mushroom_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__broken_mushroom_stem'}.png new file mode 100644 index 00000000..22952308 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__broken_mushroom_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__broken_sea_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__broken_sea_lantern'}.png new file mode 100644 index 00000000..3712fc28 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__broken_sea_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__broken_shroomlight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__broken_shroomlight'}.png new file mode 100644 index 00000000..a320016c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__broken_shroomlight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_concrete_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_concrete_bricks'}.png new file mode 100644 index 00000000..aceb7cdd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_concrete_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_concrete_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_concrete_panel'}.png new file mode 100644 index 00000000..291c0a12 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_concrete_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_concrete_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_concrete_pillar'}.png new file mode 100644 index 00000000..df880be3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_concrete_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_concrete_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_concrete_tiles'}.png new file mode 100644 index 00000000..055adb24 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_concrete_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_dried_kelp_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_dried_kelp_block'}.png new file mode 100644 index 00000000..c91fc4db Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_dried_kelp_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_glazed_terracotta_pillar_sides'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_glazed_terracotta_pillar_sides'}.png new file mode 100644 index 00000000..13ad780d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_glazed_terracotta_pillar_sides'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_glazed_terracotta_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_glazed_terracotta_pillar_top'}.png new file mode 100644 index 00000000..2706d909 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_glazed_terracotta_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_glazed_terracotta_smooth_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_glazed_terracotta_smooth_tiles'}.png new file mode 100644 index 00000000..02ebeb35 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_glazed_terracotta_smooth_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_glazed_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_glazed_terracotta_tiles'}.png new file mode 100644 index 00000000..8642ff07 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_glazed_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_terracotta_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_terracotta_bricks'}.png new file mode 100644 index 00000000..a287d35e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_terracotta_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_terracotta_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_terracotta_column'}.png new file mode 100644 index 00000000..1b54147b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_terracotta_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_terracotta_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_terracotta_pillar'}.png new file mode 100644 index 00000000..5e0ed6b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_terracotta_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_terracotta_tile'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_terracotta_tile'}.png new file mode 100644 index 00000000..3bd6416a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_terracotta_tile'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_terracotta_tiles'}.png new file mode 100644 index 00000000..662703ea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__brown_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bubbling_nether_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bubbling_nether_wart_block'}.png new file mode 100644 index 00000000..c430e951 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bubbling_nether_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bubbling_warped_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bubbling_warped_wart_block'}.png new file mode 100644 index 00000000..576f5af3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bubbling_warped_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bulbed_glowstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bulbed_glowstone'}.png new file mode 100644 index 00000000..06e6e41c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bulbed_glowstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bulbed_sea_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bulbed_sea_lantern'}.png new file mode 100644 index 00000000..3016172f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bulbed_sea_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bulby_sponge'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bulby_sponge'}.png new file mode 100644 index 00000000..956defa1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bulby_sponge'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_acacia_log'}.png new file mode 100644 index 00000000..d9875d46 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_birch_log'}.png new file mode 100644 index 00000000..8d63ace8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_black_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_black_wool'}.png new file mode 100644 index 00000000..fcb11695 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_black_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_blue_wool'}.png new file mode 100644 index 00000000..6782dab9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_brown_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_brown_wool'}.png new file mode 100644 index 00000000..6f582843 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_brown_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_cherry_log'}.png new file mode 100644 index 00000000..801230e9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_crimson_stem'}.png new file mode 100644 index 00000000..50b0a966 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_cyan_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_cyan_wool'}.png new file mode 100644 index 00000000..b03d2314 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_cyan_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_dark_oak_log'}.png new file mode 100644 index 00000000..1189ab2f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_gray_wool'}.png new file mode 100644 index 00000000..bb2d7e35 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_green_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_green_wool'}.png new file mode 100644 index 00000000..4706b165 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_green_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_hay_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_hay_block'}.png new file mode 100644 index 00000000..14da86d5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_hay_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_jungle_log'}.png new file mode 100644 index 00000000..3e1a9035 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_light_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_light_blue_wool'}.png new file mode 100644 index 00000000..df169d85 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_light_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_light_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_light_gray_wool'}.png new file mode 100644 index 00000000..0d8ee7ad Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_light_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_lime_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_lime_wool'}.png new file mode 100644 index 00000000..694a9ab8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_lime_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_magenta_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_magenta_wool'}.png new file mode 100644 index 00000000..e0ee1fdc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_magenta_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_mangrove_log'}.png new file mode 100644 index 00000000..a17b7828 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_oak_log'}.png new file mode 100644 index 00000000..e7e06a9e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_orange_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_orange_wool'}.png new file mode 100644 index 00000000..8fb0f386 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_orange_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_pink_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_pink_wool'}.png new file mode 100644 index 00000000..a5e062df Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_pink_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_purple_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_purple_wool'}.png new file mode 100644 index 00000000..baf5b3d8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_purple_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_red_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_red_wool'}.png new file mode 100644 index 00000000..4a01dffb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_red_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_spruce_log'}.png new file mode 100644 index 00000000..4c30b96a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_warped_stem'}.png new file mode 100644 index 00000000..50c44eb1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_white_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_white_wool'}.png new file mode 100644 index 00000000..11a5fc96 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_white_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_yellow_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_yellow_wool'}.png new file mode 100644 index 00000000..af431681 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__bundled_yellow_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__button_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__button_mud'}.png new file mode 100644 index 00000000..c746a98f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__button_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__button_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__button_mud_bricks'}.png new file mode 100644 index 00000000..2a445a08 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__button_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__button_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__button_packed_mud'}.png new file mode 100644 index 00000000..957bd05e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__button_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__calcite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__calcite_bricks'}.png new file mode 100644 index 00000000..507f9295 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__calcite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__calcite_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__calcite_mini_tiles'}.png new file mode 100644 index 00000000..ba21ccab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__calcite_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__calcite_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__calcite_pillar'}.png new file mode 100644 index 00000000..629f48c1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__calcite_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__calcite_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__calcite_pillar_top'}.png new file mode 100644 index 00000000..0db9b48d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__calcite_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__calcite_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__calcite_scales'}.png new file mode 100644 index 00000000..8a42621a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__calcite_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carpenters_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carpenters_table'}.png new file mode 100644 index 00000000..1031e827 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carpenters_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_amethyst_block'}.png new file mode 100644 index 00000000..ab12405b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_ancient_debris'}.png new file mode 100644 index 00000000..804bc408 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_andesite'}.png new file mode 100644 index 00000000..01ed1692 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_basalt'}.png new file mode 100644 index 00000000..a2007def Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_blackstone'}.png new file mode 100644 index 00000000..766ca097 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_blue_ice'}.png new file mode 100644 index 00000000..ba59ca29 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_borderless_bricks'}.png new file mode 100644 index 00000000..b5a043bf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_bricks'}.png new file mode 100644 index 00000000..fdc96f6b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_calcite'}.png new file mode 100644 index 00000000..3ae9b38f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_clay'}.png new file mode 100644 index 00000000..980c175b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_coal_block'}.png new file mode 100644 index 00000000..4f79a5d9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_cobblestone'}.png new file mode 100644 index 00000000..a5cc5f05 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_crying_obsidian'}.png new file mode 100644 index 00000000..b1441255 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_dark_prismarine'}.png new file mode 100644 index 00000000..e77306a1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_deepslate'}.png new file mode 100644 index 00000000..ee4b031a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_diorite'}.png new file mode 100644 index 00000000..0570c6a4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_dirt'}.png new file mode 100644 index 00000000..bea388f2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_dripstone_block'}.png new file mode 100644 index 00000000..f9df50af Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_end_stone'}.png new file mode 100644 index 00000000..5e93b5e3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_gilded_blackstone'}.png new file mode 100644 index 00000000..54e55698 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_granite'}.png new file mode 100644 index 00000000..a7985225 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_ice'}.png new file mode 100644 index 00000000..8ec2720e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_lapis_block'}.png new file mode 100644 index 00000000..7711eb3c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_lodestone'}.png new file mode 100644 index 00000000..a5e5a4db Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_magma_block'}.png new file mode 100644 index 00000000..0216dfde Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_mangrove_planks'}.png new file mode 100644 index 00000000..d880eb45 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_mossy_cobblestone'}.png new file mode 100644 index 00000000..666171c2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_mossy_stone_bricks'}.png new file mode 100644 index 00000000..02593826 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_mud'}.png new file mode 100644 index 00000000..435326b8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_mud_bricks'}.png new file mode 100644 index 00000000..935a7a29 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_mud_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_mud_bricks_pillar'}.png new file mode 100644 index 00000000..0e3052db Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_mud_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_mud_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_mud_pillar'}.png new file mode 100644 index 00000000..d3c0467d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_mud_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_nether_bricks'}.png new file mode 100644 index 00000000..e0887494 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_netherrack'}.png new file mode 100644 index 00000000..4206d084 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_obsidian'}.png new file mode 100644 index 00000000..074f915d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_packed_ice'}.png new file mode 100644 index 00000000..6502e418 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_packed_mud'}.png new file mode 100644 index 00000000..51811e65 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_packed_mud_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_packed_mud_pillar'}.png new file mode 100644 index 00000000..ea042368 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_packed_mud_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_prismarine'}.png new file mode 100644 index 00000000..964e7eb6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_purpur_block'}.png new file mode 100644 index 00000000..8d5c888f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_raw_copper_block'}.png new file mode 100644 index 00000000..d2ebac9c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_raw_gold_block'}.png new file mode 100644 index 00000000..32d2827c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_raw_iron_block'}.png new file mode 100644 index 00000000..0c0abe94 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_red_nether_bricks'}.png new file mode 100644 index 00000000..24d3dbb7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_red_sandstone'}.png new file mode 100644 index 00000000..2198f98f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_redstone_block'}.png new file mode 100644 index 00000000..db3f5b13 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_sandstone'}.png new file mode 100644 index 00000000..312a0b60 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_smooth_stone'}.png new file mode 100644 index 00000000..b422afd9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_snow_block'}.png new file mode 100644 index 00000000..a846cd46 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stone'}.png new file mode 100644 index 00000000..932956cf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_acacia_log'}.png new file mode 100644 index 00000000..565c58ae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_birch_log'}.png new file mode 100644 index 00000000..808aabd6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_cherry_log'}.png new file mode 100644 index 00000000..4b19190e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_crimson_stem'}.png new file mode 100644 index 00000000..902c7f92 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_dark_oak_log'}.png new file mode 100644 index 00000000..d9f5cc06 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_jungle_log'}.png new file mode 100644 index 00000000..fd6632d6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_mangrove_log'}.png new file mode 100644 index 00000000..06ae8d6a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_oak_log'}.png new file mode 100644 index 00000000..4e7ecf07 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_spruce_log'}.png new file mode 100644 index 00000000..5d1a4786 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_warped_stem'}.png new file mode 100644 index 00000000..db344e11 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_stripped_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_tuff'}.png new file mode 100644 index 00000000..e3ebf240 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__carved_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_acacia_log'}.png new file mode 100644 index 00000000..a5d1fd6f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_birch_log'}.png new file mode 100644 index 00000000..78026d8e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_cherry_log'}.png new file mode 100644 index 00000000..8ab447d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_crimson_stem'}.png new file mode 100644 index 00000000..e084ba1f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_dark_oak_log'}.png new file mode 100644 index 00000000..3d332c74 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_jungle_log'}.png new file mode 100644 index 00000000..92348b30 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_mangrove_log'}.png new file mode 100644 index 00000000..609bb0bc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_oak_log'}.png new file mode 100644 index 00000000..bcfbbdb3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_spruce_log'}.png new file mode 100644 index 00000000..d82202f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_warped_stem'}.png new file mode 100644 index 00000000..9fcc36f8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__center_cut_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__centered_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__centered_mud'}.png new file mode 100644 index 00000000..9786f86b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__centered_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__centered_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__centered_mud_bricks'}.png new file mode 100644 index 00000000..29358452 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__centered_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__centered_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__centered_packed_mud'}.png new file mode 100644 index 00000000..f2098386 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__centered_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_amethyst_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_amethyst_block_tiles'}.png new file mode 100644 index 00000000..0f5d0a46 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_amethyst_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_ancient_debris_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_ancient_debris_tiles'}.png new file mode 100644 index 00000000..b8b804d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_ancient_debris_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_andesite_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_andesite_tiles'}.png new file mode 100644 index 00000000..aae482ec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_andesite_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_basalt_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_basalt_tiles'}.png new file mode 100644 index 00000000..bd18b091 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_basalt_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_blackstone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_blackstone_tiles'}.png new file mode 100644 index 00000000..9ab250be Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_blackstone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_blue_ice_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_blue_ice_tiles'}.png new file mode 100644 index 00000000..6ae6b9b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_blue_ice_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_borderless_bricks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_borderless_bricks_tiles'}.png new file mode 100644 index 00000000..680a2712 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_borderless_bricks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_bricks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_bricks_tiles'}.png new file mode 100644 index 00000000..c922a416 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_bricks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_calcite_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_calcite_tiles'}.png new file mode 100644 index 00000000..2d8effa5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_calcite_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_clay_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_clay_tiles'}.png new file mode 100644 index 00000000..a116f191 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_clay_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_coal_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_coal_block_tiles'}.png new file mode 100644 index 00000000..ec3bfd31 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_coal_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_cobblestone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_cobblestone_tiles'}.png new file mode 100644 index 00000000..c776a7bc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_cobblestone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_crying_obsidian_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_crying_obsidian_tiles'}.png new file mode 100644 index 00000000..f0799e4e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_crying_obsidian_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_dark_prismarine_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_dark_prismarine_tiles'}.png new file mode 100644 index 00000000..a6aeb3ec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_dark_prismarine_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_deepslate_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_deepslate_tiles'}.png new file mode 100644 index 00000000..c7f3bdc5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_deepslate_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_diorite_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_diorite_tiles'}.png new file mode 100644 index 00000000..16cf5969 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_diorite_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_dirt_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_dirt_tiles'}.png new file mode 100644 index 00000000..6ab955cf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_dirt_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_dripstone_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_dripstone_block_tiles'}.png new file mode 100644 index 00000000..4eed5c4c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_dripstone_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_end_stone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_end_stone_tiles'}.png new file mode 100644 index 00000000..9c7e629d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_end_stone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_gilded_blackstone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_gilded_blackstone_tiles'}.png new file mode 100644 index 00000000..a15206ce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_gilded_blackstone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_granite_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_granite_tiles'}.png new file mode 100644 index 00000000..2231e7e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_granite_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_ice_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_ice_tiles'}.png new file mode 100644 index 00000000..32908563 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_ice_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_lapis_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_lapis_block_tiles'}.png new file mode 100644 index 00000000..76c67b40 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_lapis_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_lodestone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_lodestone_tiles'}.png new file mode 100644 index 00000000..4c4d218b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_lodestone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_magma_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_magma_block_tiles'}.png new file mode 100644 index 00000000..38f8207f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_magma_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_mossy_cobblestone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_mossy_cobblestone_tiles'}.png new file mode 100644 index 00000000..8c273384 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_mossy_cobblestone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_mossy_stone_bricks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_mossy_stone_bricks_tiles'}.png new file mode 100644 index 00000000..26a176d8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_mossy_stone_bricks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_nether_bricks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_nether_bricks_tiles'}.png new file mode 100644 index 00000000..6915e9d1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_nether_bricks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_netherrack_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_netherrack_tiles'}.png new file mode 100644 index 00000000..a1756601 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_netherrack_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_obsidian_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_obsidian_tiles'}.png new file mode 100644 index 00000000..0ee07182 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_obsidian_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_packed_ice_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_packed_ice_tiles'}.png new file mode 100644 index 00000000..84202794 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_packed_ice_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_prismarine_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_prismarine_tiles'}.png new file mode 100644 index 00000000..27eba417 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_prismarine_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_quartz_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_quartz_block_tiles'}.png new file mode 100644 index 00000000..07e417ad Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_quartz_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_raw_copper_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_raw_copper_block_tiles'}.png new file mode 100644 index 00000000..6779dc0f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_raw_copper_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_raw_gold_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_raw_gold_block_tiles'}.png new file mode 100644 index 00000000..91532c6d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_raw_gold_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_raw_iron_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_raw_iron_block_tiles'}.png new file mode 100644 index 00000000..fc4b7281 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_raw_iron_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_red_nether_bricks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_red_nether_bricks_tiles'}.png new file mode 100644 index 00000000..dff7a53d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_red_nether_bricks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_red_sandstone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_red_sandstone_tiles'}.png new file mode 100644 index 00000000..5bbd3b10 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_red_sandstone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_redstone_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_redstone_block_tiles'}.png new file mode 100644 index 00000000..a83c97f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_redstone_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_sandstone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_sandstone_tiles'}.png new file mode 100644 index 00000000..55dbe854 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_sandstone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_smooth_stone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_smooth_stone_tiles'}.png new file mode 100644 index 00000000..1b144e7d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_smooth_stone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_snow_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_snow_block_tiles'}.png new file mode 100644 index 00000000..0d1bee58 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_snow_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_stone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_stone_tiles'}.png new file mode 100644 index 00000000..da0b7ee5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_stone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_tuff_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_tuff_tiles'}.png new file mode 100644 index 00000000..f5d83b90 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__checkered_tuff_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_acacia_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_acacia_leaves'}.png new file mode 100644 index 00000000..8c2f30b2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_acacia_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_birch_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_birch_leaves'}.png new file mode 100644 index 00000000..18d8c090 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_birch_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_dark_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_dark_oak_leaves'}.png new file mode 100644 index 00000000..8ff8d459 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_dark_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_jungle_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_jungle_leaves'}.png new file mode 100644 index 00000000..abce8c60 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_jungle_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_oak_leaves'}.png new file mode 100644 index 00000000..ca8ab975 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_planks_mosaic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_planks_mosaic'}.png new file mode 100644 index 00000000..91c82c01 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_planks_mosaic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_planks_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_planks_panel'}.png new file mode 100644 index 00000000..1b8fc7f2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_planks_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_planks_shavings'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_planks_shavings'}.png new file mode 100644 index 00000000..49b91e49 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_planks_shavings'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_spruce_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_spruce_leaves'}.png new file mode 100644 index 00000000..83bc3ca8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cherry_spruce_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_diamond_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_diamond_block'}.png new file mode 100644 index 00000000..dfadd90d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_diamond_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_emerald_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_emerald_block'}.png new file mode 100644 index 00000000..9f322f63 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_emerald_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_gold_block'}.png new file mode 100644 index 00000000..0f0d278e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_iron_block'}.png new file mode 100644 index 00000000..8e515894 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_netherite_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_netherite_block'}.png new file mode 100644 index 00000000..38f2d5b9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_netherite_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_acacia_log'}.png new file mode 100644 index 00000000..f4bb96a5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_birch_log'}.png new file mode 100644 index 00000000..82711438 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_cherry_log'}.png new file mode 100644 index 00000000..65ae09a7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_crimson_stem'}.png new file mode 100644 index 00000000..4642d521 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_dark_oak_log'}.png new file mode 100644 index 00000000..994b351c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_jungle_log'}.png new file mode 100644 index 00000000..09cbb19d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_mangrove_log'}.png new file mode 100644 index 00000000..30d2ead4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_oak_log'}.png new file mode 100644 index 00000000..39b08da8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_spruce_log'}.png new file mode 100644 index 00000000..7cee5da1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_warped_stem'}.png new file mode 100644 index 00000000..c6036798 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_stripped_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_waxed_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_waxed_copper_block'}.png new file mode 100644 index 00000000..ef0039be Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_waxed_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_waxed_exposed_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_waxed_exposed_copper'}.png new file mode 100644 index 00000000..571c2057 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_waxed_exposed_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_waxed_oxidized_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_waxed_oxidized_copper'}.png new file mode 100644 index 00000000..f525559b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_waxed_oxidized_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_waxed_weathered_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_waxed_weathered_copper'}.png new file mode 100644 index 00000000..813a77ad Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chipped_waxed_weathered_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_black_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_black_terracotta'}.png new file mode 100644 index 00000000..84ec78f0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_black_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_blue_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_blue_terracotta'}.png new file mode 100644 index 00000000..312da71b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_blue_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_brown_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_brown_terracotta'}.png new file mode 100644 index 00000000..4d014ebc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_brown_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_cyan_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_cyan_terracotta'}.png new file mode 100644 index 00000000..d99b6d1c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_cyan_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_gray_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_gray_terracotta'}.png new file mode 100644 index 00000000..85bc2266 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_gray_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_green_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_green_terracotta'}.png new file mode 100644 index 00000000..81d60a60 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_green_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_light_blue_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_light_blue_terracotta'}.png new file mode 100644 index 00000000..63a95e54 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_light_blue_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_light_gray_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_light_gray_terracotta'}.png new file mode 100644 index 00000000..24b46982 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_light_gray_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_lime_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_lime_terracotta'}.png new file mode 100644 index 00000000..c764cffa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_lime_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_magenta_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_magenta_terracotta'}.png new file mode 100644 index 00000000..4c28f106 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_magenta_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_mangrove_planks'}.png new file mode 100644 index 00000000..8ce8e49d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_mud'}.png new file mode 100644 index 00000000..28b1efbd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_mud_bricks'}.png new file mode 100644 index 00000000..9fd21663 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_orange_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_orange_terracotta'}.png new file mode 100644 index 00000000..f96b0450 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_orange_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_packed_mud'}.png new file mode 100644 index 00000000..eae53dd0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_pink_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_pink_terracotta'}.png new file mode 100644 index 00000000..694cd27a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_pink_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_purple_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_purple_terracotta'}.png new file mode 100644 index 00000000..11077ee6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_purple_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_red_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_red_terracotta'}.png new file mode 100644 index 00000000..bb4171da Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_red_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_stripped_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_stripped_mangrove_log'}.png new file mode 100644 index 00000000..eaa3a1d5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_stripped_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_terracotta'}.png new file mode 100644 index 00000000..6cbb627a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_white_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_white_terracotta'}.png new file mode 100644 index 00000000..ad15b720 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_white_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_yellow_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_yellow_terracotta'}.png new file mode 100644 index 00000000..12abe784 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chiseled_yellow_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chunky_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chunky_gilded_blackstone'}.png new file mode 100644 index 00000000..3d331a66 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__chunky_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circle_oak_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circle_oak_glass'}.png new file mode 100644 index 00000000..987247b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circle_oak_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_black_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_black_stained_glass'}.png new file mode 100644 index 00000000..06fee9f4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_black_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_black_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_black_terracotta'}.png new file mode 100644 index 00000000..57e336fe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_black_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_blue_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_blue_stained_glass'}.png new file mode 100644 index 00000000..d3fe09b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_blue_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_blue_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_blue_terracotta'}.png new file mode 100644 index 00000000..8a20594c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_blue_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_brown_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_brown_stained_glass'}.png new file mode 100644 index 00000000..f27520b4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_brown_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_brown_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_brown_terracotta'}.png new file mode 100644 index 00000000..f3e8b35e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_brown_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_cyan_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_cyan_stained_glass'}.png new file mode 100644 index 00000000..1827624e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_cyan_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_cyan_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_cyan_terracotta'}.png new file mode 100644 index 00000000..eddcfc3e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_cyan_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_gray_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_gray_stained_glass'}.png new file mode 100644 index 00000000..a1fa973b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_gray_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_gray_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_gray_terracotta'}.png new file mode 100644 index 00000000..6951f75b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_gray_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_green_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_green_stained_glass'}.png new file mode 100644 index 00000000..5d877aee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_green_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_green_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_green_terracotta'}.png new file mode 100644 index 00000000..f0f43c12 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_green_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_light_blue_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_light_blue_stained_glass'}.png new file mode 100644 index 00000000..cd6c75fd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_light_blue_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_light_blue_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_light_blue_terracotta'}.png new file mode 100644 index 00000000..d1d0672b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_light_blue_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_light_gray_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_light_gray_stained_glass'}.png new file mode 100644 index 00000000..aca3ccbf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_light_gray_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_light_gray_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_light_gray_terracotta'}.png new file mode 100644 index 00000000..7644a254 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_light_gray_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_lime_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_lime_stained_glass'}.png new file mode 100644 index 00000000..803f811b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_lime_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_lime_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_lime_terracotta'}.png new file mode 100644 index 00000000..771bddb9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_lime_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_magenta_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_magenta_stained_glass'}.png new file mode 100644 index 00000000..f182f172 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_magenta_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_magenta_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_magenta_terracotta'}.png new file mode 100644 index 00000000..8edcb8bc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_magenta_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_orange_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_orange_stained_glass'}.png new file mode 100644 index 00000000..444d23f8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_orange_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_orange_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_orange_terracotta'}.png new file mode 100644 index 00000000..cba2d563 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_orange_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_pink_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_pink_stained_glass'}.png new file mode 100644 index 00000000..da4d2b17 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_pink_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_pink_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_pink_terracotta'}.png new file mode 100644 index 00000000..1fe882c6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_pink_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_purple_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_purple_stained_glass'}.png new file mode 100644 index 00000000..14ae6c27 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_purple_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_purple_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_purple_terracotta'}.png new file mode 100644 index 00000000..7d90fab4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_purple_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_red_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_red_stained_glass'}.png new file mode 100644 index 00000000..3e806dcc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_red_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_red_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_red_terracotta'}.png new file mode 100644 index 00000000..8385186c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_red_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_terracotta'}.png new file mode 100644 index 00000000..6da50d21 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_white_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_white_stained_glass'}.png new file mode 100644 index 00000000..924e326f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_white_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_white_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_white_terracotta'}.png new file mode 100644 index 00000000..ec9a2b26 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_white_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_yellow_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_yellow_stained_glass'}.png new file mode 100644 index 00000000..fdd82e81 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_yellow_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_yellow_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_yellow_terracotta'}.png new file mode 100644 index 00000000..8d9db383 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__circular_yellow_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__clay_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__clay_bricks'}.png new file mode 100644 index 00000000..c84d68e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__clay_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__clay_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__clay_mini_tiles'}.png new file mode 100644 index 00000000..27c7fdaa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__clay_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__clay_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__clay_pillar'}.png new file mode 100644 index 00000000..7b12349a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__clay_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__clay_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__clay_pillar_top'}.png new file mode 100644 index 00000000..35b352e2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__clay_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__clay_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__clay_scales'}.png new file mode 100644 index 00000000..a35fd848 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__clay_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__clear_leaded_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__clear_leaded_glass'}.png new file mode 100644 index 00000000..0d827dab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__clear_leaded_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__coal_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__coal_block_bricks'}.png new file mode 100644 index 00000000..24dd6114 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__coal_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__coal_block_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__coal_block_mini_tiles'}.png new file mode 100644 index 00000000..835690ce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__coal_block_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__coal_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__coal_block_pillar'}.png new file mode 100644 index 00000000..8fb5ea76 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__coal_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__coal_block_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__coal_block_pillar_top'}.png new file mode 100644 index 00000000..5147b685 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__coal_block_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__coal_block_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__coal_block_scales'}.png new file mode 100644 index 00000000..8a983c62 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__coal_block_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__coarse_sand'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__coarse_sand'}.png new file mode 100644 index 00000000..542c2dd6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__coarse_sand'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_amethyst_block'}.png new file mode 100644 index 00000000..14359fd2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_ancient_debris'}.png new file mode 100644 index 00000000..e91c12b0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_andesite'}.png new file mode 100644 index 00000000..fc6ced12 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_basalt'}.png new file mode 100644 index 00000000..8e360d8c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_blackstone'}.png new file mode 100644 index 00000000..d5b8c181 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_blue_ice'}.png new file mode 100644 index 00000000..e6c83d5f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_borderless_bricks'}.png new file mode 100644 index 00000000..b03830f5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_bricks'}.png new file mode 100644 index 00000000..b03830f5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_calcite'}.png new file mode 100644 index 00000000..c0add4e5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_clay'}.png new file mode 100644 index 00000000..40731b3c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_coal_block'}.png new file mode 100644 index 00000000..720c5ed1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_cobblestone'}.png new file mode 100644 index 00000000..b0d08e0d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_crying_obsidian'}.png new file mode 100644 index 00000000..a1dfbe65 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_dark_prismarine'}.png new file mode 100644 index 00000000..6ca90028 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_diorite'}.png new file mode 100644 index 00000000..c181b709 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_dirt'}.png new file mode 100644 index 00000000..61493827 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_dripstone_block'}.png new file mode 100644 index 00000000..e6c3a0cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_end_stone'}.png new file mode 100644 index 00000000..ba3e8ddc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_gilded_blackstone'}.png new file mode 100644 index 00000000..51dcca9a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_granite'}.png new file mode 100644 index 00000000..0bfaafc6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_ice'}.png new file mode 100644 index 00000000..56788a20 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_lapis_block'}.png new file mode 100644 index 00000000..d3062707 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_lodestone'}.png new file mode 100644 index 00000000..48520792 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_magma_block'}.png new file mode 100644 index 00000000..b23b00d6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_mossy_cobblestone'}.png new file mode 100644 index 00000000..8b2f22ff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_mossy_stone_bricks'}.png new file mode 100644 index 00000000..88f8719e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_nether_bricks'}.png new file mode 100644 index 00000000..8be59be4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_netherrack'}.png new file mode 100644 index 00000000..4b130d76 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_obsidian'}.png new file mode 100644 index 00000000..c9efb5f0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_packed_ice'}.png new file mode 100644 index 00000000..9d755e31 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_prismarine'}.png new file mode 100644 index 00000000..cbd61a3f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_purpur_block'}.png new file mode 100644 index 00000000..84b5198c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_quartz_block'}.png new file mode 100644 index 00000000..f4f4c055 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_raw_copper_block'}.png new file mode 100644 index 00000000..4f1162d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_raw_gold_block'}.png new file mode 100644 index 00000000..65e5f68f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_raw_iron_block'}.png new file mode 100644 index 00000000..5852ef80 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_red_nether_bricks'}.png new file mode 100644 index 00000000..be63cc57 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_red_sandstone'}.png new file mode 100644 index 00000000..25102fa8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_redstone_block'}.png new file mode 100644 index 00000000..111c405e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_sandstone'}.png new file mode 100644 index 00000000..7ca7f44c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_smooth_stone'}.png new file mode 100644 index 00000000..607e0a68 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_snow_block'}.png new file mode 100644 index 00000000..e889c958 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_stone'}.png new file mode 100644 index 00000000..c82f6d78 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_tuff'}.png new file mode 100644 index 00000000..f1e2d37b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobbled_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobblestone_bricks'}.png new file mode 100644 index 00000000..94c88343 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobblestone_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobblestone_mini_tiles'}.png new file mode 100644 index 00000000..b3d4c89c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobblestone_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobblestone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobblestone_pillar'}.png new file mode 100644 index 00000000..f0a5a2a1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobblestone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobblestone_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobblestone_pillar_top'}.png new file mode 100644 index 00000000..0b5aa148 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobblestone_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobblestone_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobblestone_scales'}.png new file mode 100644 index 00000000..7d17d024 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cobblestone_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__compact_dried_kelp_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__compact_dried_kelp_block'}.png new file mode 100644 index 00000000..c3cdeb8a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__compact_dried_kelp_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_acacia_planks'}.png new file mode 100644 index 00000000..94443ef9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_bamboo_planks'}.png new file mode 100644 index 00000000..79e37489 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_birch_planks'}.png new file mode 100644 index 00000000..c4423ebc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_black_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_black_wool'}.png new file mode 100644 index 00000000..f178c2e5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_black_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_blue_wool'}.png new file mode 100644 index 00000000..22bda420 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_brown_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_brown_wool'}.png new file mode 100644 index 00000000..9128dfce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_brown_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_cherry_planks'}.png new file mode 100644 index 00000000..225761b0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_crimson_planks'}.png new file mode 100644 index 00000000..ec68b6eb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_cyan_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_cyan_wool'}.png new file mode 100644 index 00000000..fe79f2be Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_cyan_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_dark_oak_planks'}.png new file mode 100644 index 00000000..c095f6ed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_gray_wool'}.png new file mode 100644 index 00000000..ad225447 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_green_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_green_wool'}.png new file mode 100644 index 00000000..78b297cd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_green_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_jungle_planks'}.png new file mode 100644 index 00000000..36b8f197 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_light_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_light_blue_wool'}.png new file mode 100644 index 00000000..05704bbb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_light_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_light_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_light_gray_wool'}.png new file mode 100644 index 00000000..f2ce1f4a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_light_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_lime_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_lime_wool'}.png new file mode 100644 index 00000000..0cd0ac7b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_lime_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_magenta_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_magenta_wool'}.png new file mode 100644 index 00000000..6257a4b4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_magenta_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_mangrove_planks'}.png new file mode 100644 index 00000000..3bd3c15d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_oak_planks'}.png new file mode 100644 index 00000000..82b19135 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_orange_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_orange_wool'}.png new file mode 100644 index 00000000..f9989122 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_orange_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_pink_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_pink_wool'}.png new file mode 100644 index 00000000..6584d3a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_pink_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_purple_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_purple_wool'}.png new file mode 100644 index 00000000..a1192b74 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_purple_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_red_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_red_wool'}.png new file mode 100644 index 00000000..cb7b45d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_red_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_spruce_planks'}.png new file mode 100644 index 00000000..4c5a300c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_warped_planks'}.png new file mode 100644 index 00000000..de9ad507 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_white_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_white_wool'}.png new file mode 100644 index 00000000..b44027cf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_white_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_yellow_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_yellow_wool'}.png new file mode 100644 index 00000000..f734aeff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cornered_yellow_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_amethyst_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_amethyst_block_bricks'}.png new file mode 100644 index 00000000..a707730c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_amethyst_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_ancient_debris_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_ancient_debris_bricks'}.png new file mode 100644 index 00000000..0b5f3a1f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_ancient_debris_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_andesite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_andesite_bricks'}.png new file mode 100644 index 00000000..72c4d973 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_andesite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_basalt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_basalt_bricks'}.png new file mode 100644 index 00000000..99c81c6f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_basalt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_blue_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_blue_ice_bricks'}.png new file mode 100644 index 00000000..2417be80 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_blue_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_bone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_bone_block'}.png new file mode 100644 index 00000000..450578f2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_bone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_borderless_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_borderless_bricks_bricks'}.png new file mode 100644 index 00000000..da73ac67 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_borderless_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_bricks_bricks'}.png new file mode 100644 index 00000000..39c9eaf5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_calcite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_calcite_bricks'}.png new file mode 100644 index 00000000..fbb767ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_calcite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_clay_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_clay_bricks'}.png new file mode 100644 index 00000000..24ce0963 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_clay_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_coal_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_coal_block_bricks'}.png new file mode 100644 index 00000000..e611b53f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_coal_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_cobblestone_bricks'}.png new file mode 100644 index 00000000..713d0560 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_crying_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_crying_obsidian_bricks'}.png new file mode 100644 index 00000000..5f2b187d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_crying_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_dark_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_dark_prismarine_bricks'}.png new file mode 100644 index 00000000..a20ffb70 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_dark_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_diorite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_diorite_bricks'}.png new file mode 100644 index 00000000..020a80a4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_diorite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_dirt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_dirt_bricks'}.png new file mode 100644 index 00000000..fa57b731 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_dirt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_amethyst_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_amethyst_block_bricks'}.png new file mode 100644 index 00000000..65900e61 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_amethyst_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_ancient_debris_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_ancient_debris_bricks'}.png new file mode 100644 index 00000000..69a74309 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_ancient_debris_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_andesite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_andesite_bricks'}.png new file mode 100644 index 00000000..b5a4af9d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_andesite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_basalt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_basalt_bricks'}.png new file mode 100644 index 00000000..83d3bb75 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_basalt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_blackstone_bricks'}.png new file mode 100644 index 00000000..ddef8258 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_blue_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_blue_ice_bricks'}.png new file mode 100644 index 00000000..c203f9e9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_blue_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_borderless_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_borderless_bricks_bricks'}.png new file mode 100644 index 00000000..fbb46933 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_borderless_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_bricks_bricks'}.png new file mode 100644 index 00000000..bf8c5497 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_calcite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_calcite_bricks'}.png new file mode 100644 index 00000000..2104a581 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_calcite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_clay_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_clay_bricks'}.png new file mode 100644 index 00000000..410e3517 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_clay_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_coal_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_coal_block_bricks'}.png new file mode 100644 index 00000000..9a28d975 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_coal_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_cobblestone_bricks'}.png new file mode 100644 index 00000000..7cb63041 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_crying_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_crying_obsidian_bricks'}.png new file mode 100644 index 00000000..8046d954 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_crying_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_dark_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_dark_prismarine_bricks'}.png new file mode 100644 index 00000000..d9a7a574 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_dark_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_deepslate_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_deepslate_bricks'}.png new file mode 100644 index 00000000..08612b41 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_deepslate_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_diorite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_diorite_bricks'}.png new file mode 100644 index 00000000..12a51215 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_diorite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_dirt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_dirt_bricks'}.png new file mode 100644 index 00000000..f48c5352 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_dirt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_dripstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_dripstone_block_bricks'}.png new file mode 100644 index 00000000..9c4e0ff2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_dripstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_end_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_end_stone_bricks'}.png new file mode 100644 index 00000000..e5800c2b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_end_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_gilded_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_gilded_blackstone_bricks'}.png new file mode 100644 index 00000000..dfe8d33b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_gilded_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_granite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_granite_bricks'}.png new file mode 100644 index 00000000..8bd80b94 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_granite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_ice_bricks'}.png new file mode 100644 index 00000000..a0857f15 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_lapis_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_lapis_block_bricks'}.png new file mode 100644 index 00000000..81820fc6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_lapis_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_lodestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_lodestone_bricks'}.png new file mode 100644 index 00000000..157bfa2f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_lodestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_magma_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_magma_block_bricks'}.png new file mode 100644 index 00000000..2131cc59 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_magma_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_mossy_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_mossy_cobblestone_bricks'}.png new file mode 100644 index 00000000..f60d6362 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_mossy_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_mossy_stone_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_mossy_stone_bricks_bricks'}.png new file mode 100644 index 00000000..80386c14 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_mossy_stone_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_nether_bricks_bricks'}.png new file mode 100644 index 00000000..b1656070 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_netherrack_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_netherrack_bricks'}.png new file mode 100644 index 00000000..73064904 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_netherrack_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_obsidian_bricks'}.png new file mode 100644 index 00000000..3e3187fe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_packed_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_packed_ice_bricks'}.png new file mode 100644 index 00000000..895930a7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_packed_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_prismarine_bricks'}.png new file mode 100644 index 00000000..3dedcbc6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_purpur_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_purpur_block_bricks'}.png new file mode 100644 index 00000000..1b4b311d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_purpur_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_quartz_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_quartz_block_bricks'}.png new file mode 100644 index 00000000..ea33119e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_quartz_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_raw_copper_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_raw_copper_block_bricks'}.png new file mode 100644 index 00000000..4e8db863 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_raw_copper_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_raw_gold_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_raw_gold_block_bricks'}.png new file mode 100644 index 00000000..9f342b45 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_raw_gold_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_raw_iron_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_raw_iron_block_bricks'}.png new file mode 100644 index 00000000..40cfc2be Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_raw_iron_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_red_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_red_nether_bricks_bricks'}.png new file mode 100644 index 00000000..e9b8cdcf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_red_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_red_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_red_sandstone_bricks'}.png new file mode 100644 index 00000000..166da743 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_red_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_redstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_redstone_block_bricks'}.png new file mode 100644 index 00000000..f9fdc420 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_redstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_sandstone_bricks'}.png new file mode 100644 index 00000000..25440c77 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_smooth_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_smooth_stone_bricks'}.png new file mode 100644 index 00000000..d0a17203 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_smooth_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_snow_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_snow_block_bricks'}.png new file mode 100644 index 00000000..d203b515 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_snow_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_stone_bricks'}.png new file mode 100644 index 00000000..33bc2c16 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_tuff_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_tuff_bricks'}.png new file mode 100644 index 00000000..fa000c91 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_disordered_tuff_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_dripstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_dripstone_block_bricks'}.png new file mode 100644 index 00000000..dfc10e15 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_dripstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_end_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_end_stone_bricks'}.png new file mode 100644 index 00000000..cb0b8041 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_end_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_amethyst_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_amethyst_block_tiles'}.png new file mode 100644 index 00000000..85a75301 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_amethyst_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_ancient_debris_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_ancient_debris_tiles'}.png new file mode 100644 index 00000000..1c36a08b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_ancient_debris_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_andesite_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_andesite_tiles'}.png new file mode 100644 index 00000000..1d203f70 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_andesite_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_basalt_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_basalt_tiles'}.png new file mode 100644 index 00000000..698ff6f8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_basalt_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_blackstone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_blackstone_tiles'}.png new file mode 100644 index 00000000..202c0b9f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_blackstone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_blue_ice_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_blue_ice_tiles'}.png new file mode 100644 index 00000000..35188e93 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_blue_ice_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_borderless_bricks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_borderless_bricks_tiles'}.png new file mode 100644 index 00000000..59b58491 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_borderless_bricks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_bricks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_bricks_tiles'}.png new file mode 100644 index 00000000..41bea0f7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_bricks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_calcite_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_calcite_tiles'}.png new file mode 100644 index 00000000..e677e243 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_calcite_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_clay_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_clay_tiles'}.png new file mode 100644 index 00000000..85309b58 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_clay_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_coal_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_coal_block_tiles'}.png new file mode 100644 index 00000000..f6aa51ee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_coal_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_cobblestone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_cobblestone_tiles'}.png new file mode 100644 index 00000000..a9b7c0ad Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_cobblestone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_crying_obsidian_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_crying_obsidian_tiles'}.png new file mode 100644 index 00000000..564bc0a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_crying_obsidian_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_dark_prismarine_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_dark_prismarine_tiles'}.png new file mode 100644 index 00000000..3d480241 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_dark_prismarine_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_diorite_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_diorite_tiles'}.png new file mode 100644 index 00000000..b4a6206d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_diorite_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_dirt_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_dirt_tiles'}.png new file mode 100644 index 00000000..2bb3bf98 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_dirt_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_dripstone_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_dripstone_block_tiles'}.png new file mode 100644 index 00000000..c6f1fdfb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_dripstone_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_end_stone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_end_stone_tiles'}.png new file mode 100644 index 00000000..aafc1447 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_end_stone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_gilded_blackstone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_gilded_blackstone_tiles'}.png new file mode 100644 index 00000000..e3f1e27a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_gilded_blackstone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_granite_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_granite_tiles'}.png new file mode 100644 index 00000000..16221005 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_granite_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_ice_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_ice_tiles'}.png new file mode 100644 index 00000000..63c8594e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_ice_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_lapis_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_lapis_block_tiles'}.png new file mode 100644 index 00000000..c95e080f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_lapis_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_lodestone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_lodestone_tiles'}.png new file mode 100644 index 00000000..63724e7d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_lodestone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_magma_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_magma_block_tiles'}.png new file mode 100644 index 00000000..f67530bd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_magma_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_mossy_cobblestone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_mossy_cobblestone_tiles'}.png new file mode 100644 index 00000000..a5ce7f63 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_mossy_cobblestone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_mossy_stone_bricks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_mossy_stone_bricks_tiles'}.png new file mode 100644 index 00000000..ecbffb29 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_mossy_stone_bricks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_nether_bricks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_nether_bricks_tiles'}.png new file mode 100644 index 00000000..a412f53c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_nether_bricks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_netherrack_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_netherrack_tiles'}.png new file mode 100644 index 00000000..7e7afc25 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_netherrack_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_obsidian_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_obsidian_tiles'}.png new file mode 100644 index 00000000..0f16ef75 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_obsidian_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_packed_ice_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_packed_ice_tiles'}.png new file mode 100644 index 00000000..9caa63ce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_packed_ice_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_prismarine_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_prismarine_tiles'}.png new file mode 100644 index 00000000..cc2d431f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_prismarine_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_purpur_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_purpur_block_tiles'}.png new file mode 100644 index 00000000..69c66eba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_purpur_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_quartz_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_quartz_block_tiles'}.png new file mode 100644 index 00000000..bcb1a9f0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_quartz_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_raw_copper_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_raw_copper_block_tiles'}.png new file mode 100644 index 00000000..45ba9b32 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_raw_copper_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_raw_gold_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_raw_gold_block_tiles'}.png new file mode 100644 index 00000000..8215b8a4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_raw_gold_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_raw_iron_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_raw_iron_block_tiles'}.png new file mode 100644 index 00000000..dc3a837d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_raw_iron_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_red_nether_bricks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_red_nether_bricks_tiles'}.png new file mode 100644 index 00000000..f3778806 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_red_nether_bricks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_red_sandstone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_red_sandstone_tiles'}.png new file mode 100644 index 00000000..f0290001 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_red_sandstone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_redstone_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_redstone_block_tiles'}.png new file mode 100644 index 00000000..2ee08a37 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_redstone_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_sandstone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_sandstone_tiles'}.png new file mode 100644 index 00000000..d6133d1d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_sandstone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_smooth_stone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_smooth_stone_tiles'}.png new file mode 100644 index 00000000..60b54ff7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_smooth_stone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_snow_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_snow_block_tiles'}.png new file mode 100644 index 00000000..2c951c28 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_snow_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_stone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_stone_tiles'}.png new file mode 100644 index 00000000..aa92fa41 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_stone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_tuff_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_tuff_tiles'}.png new file mode 100644 index 00000000..50437a61 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_flat_tuff_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_gilded_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_gilded_blackstone_bricks'}.png new file mode 100644 index 00000000..dffba6ed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_gilded_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_glowstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_glowstone'}.png new file mode 100644 index 00000000..25471b77 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_glowstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_granite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_granite_bricks'}.png new file mode 100644 index 00000000..66152b80 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_granite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_ice_bricks'}.png new file mode 100644 index 00000000..b6015600 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_lapis_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_lapis_block_bricks'}.png new file mode 100644 index 00000000..3b45f359 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_lapis_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_lodestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_lodestone_bricks'}.png new file mode 100644 index 00000000..444ed12a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_lodestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_magma_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_magma_block_bricks'}.png new file mode 100644 index 00000000..b860766a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_magma_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_mossy_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_mossy_cobblestone_bricks'}.png new file mode 100644 index 00000000..6ab760cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_mossy_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_mossy_stone_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_mossy_stone_bricks_bricks'}.png new file mode 100644 index 00000000..37343e7f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_mossy_stone_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_mud_bricks'}.png new file mode 100644 index 00000000..26b76254 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_mud_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_mud_bricks_bricks'}.png new file mode 100644 index 00000000..b56e0e3f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_mud_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_nether_bricks_bricks'}.png new file mode 100644 index 00000000..99d58e56 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_netherrack_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_netherrack_bricks'}.png new file mode 100644 index 00000000..d799b8c2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_netherrack_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_obsidian_bricks'}.png new file mode 100644 index 00000000..f4d6f129 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_packed_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_packed_ice_bricks'}.png new file mode 100644 index 00000000..f69ade50 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_packed_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_packed_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_packed_mud_bricks'}.png new file mode 100644 index 00000000..72bb9e15 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_packed_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_prismarine_bricks'}.png new file mode 100644 index 00000000..a70f552e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_purpur_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_purpur_block_bricks'}.png new file mode 100644 index 00000000..978fcde5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_purpur_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_quartz_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_quartz_block_bricks'}.png new file mode 100644 index 00000000..ddb71db0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_quartz_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_raw_copper_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_raw_copper_block_bricks'}.png new file mode 100644 index 00000000..e1c563a3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_raw_copper_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_raw_gold_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_raw_gold_block_bricks'}.png new file mode 100644 index 00000000..5ff8033e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_raw_gold_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_raw_iron_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_raw_iron_block_bricks'}.png new file mode 100644 index 00000000..c6230bfb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_raw_iron_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_red_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_red_nether_bricks_bricks'}.png new file mode 100644 index 00000000..7b24e4b6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_red_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_red_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_red_sandstone_bricks'}.png new file mode 100644 index 00000000..6827de78 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_red_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_redstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_redstone_block_bricks'}.png new file mode 100644 index 00000000..b1b687cf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_redstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_sandstone_bricks'}.png new file mode 100644 index 00000000..cbdfadf3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_sea_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_sea_lantern'}.png new file mode 100644 index 00000000..500b5495 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_sea_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_shroomlight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_shroomlight'}.png new file mode 100644 index 00000000..78b3235a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_shroomlight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_smooth_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_smooth_stone_bricks'}.png new file mode 100644 index 00000000..13fb4dc3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_smooth_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_snow_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_snow_block_bricks'}.png new file mode 100644 index 00000000..d864f540 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_snow_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_tuff_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_tuff_bricks'}.png new file mode 100644 index 00000000..b3f9011d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cracked_tuff_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_black_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_black_wool'}.png new file mode 100644 index 00000000..5a9b8017 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_black_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_blue_wool'}.png new file mode 100644 index 00000000..a25aca07 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_brown_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_brown_wool'}.png new file mode 100644 index 00000000..e42d2336 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_brown_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_cyan_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_cyan_wool'}.png new file mode 100644 index 00000000..e77379b3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_cyan_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_gray_wool'}.png new file mode 100644 index 00000000..fe12ac6c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_green_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_green_wool'}.png new file mode 100644 index 00000000..5086c79b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_green_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_light_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_light_blue_wool'}.png new file mode 100644 index 00000000..1adcc133 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_light_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_light_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_light_gray_wool'}.png new file mode 100644 index 00000000..af1a0c9c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_light_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_lime_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_lime_wool'}.png new file mode 100644 index 00000000..eebd57fd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_lime_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_magenta_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_magenta_wool'}.png new file mode 100644 index 00000000..9bc34d61 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_magenta_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_orange_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_orange_wool'}.png new file mode 100644 index 00000000..1a38dbb8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_orange_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_pink_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_pink_wool'}.png new file mode 100644 index 00000000..da812546 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_pink_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_purple_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_purple_wool'}.png new file mode 100644 index 00000000..b1746b1f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_purple_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_red_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_red_wool'}.png new file mode 100644 index 00000000..0ee0e5fe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_red_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_white_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_white_wool'}.png new file mode 100644 index 00000000..41af220c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_white_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_yellow_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_yellow_wool'}.png new file mode 100644 index 00000000..32e463b6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crafted_yellow_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_acacia_planks'}.png new file mode 100644 index 00000000..57e672e2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_bamboo_planks'}.png new file mode 100644 index 00000000..9a5a5844 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_birch_planks'}.png new file mode 100644 index 00000000..472e3c9b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_cherry_planks'}.png new file mode 100644 index 00000000..1c56cdf5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_crimson_planks'}.png new file mode 100644 index 00000000..8b36f6a2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_dark_oak_planks'}.png new file mode 100644 index 00000000..f8a74f0d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_jungle_planks'}.png new file mode 100644 index 00000000..43fbd1ea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_mangrove_planks'}.png new file mode 100644 index 00000000..8c66b69c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_oak_planks'}.png new file mode 100644 index 00000000..11402aa0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_spruce_planks'}.png new file mode 100644 index 00000000..f886c8bc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_warped_planks'}.png new file mode 100644 index 00000000..f4668183 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crated_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_amethyst_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_amethyst_block_carving'}.png new file mode 100644 index 00000000..c37ab214 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_amethyst_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_ancient_debris_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_ancient_debris_carving'}.png new file mode 100644 index 00000000..10bb8ecd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_ancient_debris_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_andesite_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_andesite_carving'}.png new file mode 100644 index 00000000..9680ab33 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_andesite_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_basalt_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_basalt_carving'}.png new file mode 100644 index 00000000..1e81cb96 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_basalt_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_black_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_black_concrete'}.png new file mode 100644 index 00000000..50cb4e1a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_black_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_blackstone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_blackstone_carving'}.png new file mode 100644 index 00000000..2b0bc5e8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_blackstone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_blue_concrete'}.png new file mode 100644 index 00000000..908c12d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_blue_ice_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_blue_ice_carving'}.png new file mode 100644 index 00000000..daa18448 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_blue_ice_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_borderless_bricks_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_borderless_bricks_carving'}.png new file mode 100644 index 00000000..726ed500 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_borderless_bricks_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_bricks_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_bricks_carving'}.png new file mode 100644 index 00000000..9ccc59e8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_bricks_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_brown_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_brown_concrete'}.png new file mode 100644 index 00000000..057239df Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_brown_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_calcite_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_calcite_carving'}.png new file mode 100644 index 00000000..8c9f19bd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_calcite_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_clay_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_clay_carving'}.png new file mode 100644 index 00000000..3bcdd1ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_clay_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_coal_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_coal_block_carving'}.png new file mode 100644 index 00000000..3911047b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_coal_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_cobblestone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_cobblestone_carving'}.png new file mode 100644 index 00000000..c358390c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_cobblestone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_crying_obsidian_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_crying_obsidian_carving'}.png new file mode 100644 index 00000000..cef10ba8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_crying_obsidian_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_cyan_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_cyan_concrete'}.png new file mode 100644 index 00000000..5ad77900 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_cyan_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_dark_prismarine_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_dark_prismarine_carving'}.png new file mode 100644 index 00000000..f1f270cc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_dark_prismarine_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_deepslate_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_deepslate_carving'}.png new file mode 100644 index 00000000..9ffca4c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_deepslate_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_diorite_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_diorite_carving'}.png new file mode 100644 index 00000000..bc249fb1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_diorite_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_dirt_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_dirt_carving'}.png new file mode 100644 index 00000000..ff248079 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_dirt_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_dripstone_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_dripstone_block_carving'}.png new file mode 100644 index 00000000..ef0e3cf5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_dripstone_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_end_stone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_end_stone_carving'}.png new file mode 100644 index 00000000..f3a5c595 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_end_stone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_gilded_blackstone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_gilded_blackstone_carving'}.png new file mode 100644 index 00000000..e342c843 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_gilded_blackstone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_granite_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_granite_carving'}.png new file mode 100644 index 00000000..00b2bb38 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_granite_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_gray_concrete'}.png new file mode 100644 index 00000000..eb61f744 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_green_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_green_concrete'}.png new file mode 100644 index 00000000..90d12116 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_green_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_ice_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_ice_carving'}.png new file mode 100644 index 00000000..f422233f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_ice_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_lapis_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_lapis_block_carving'}.png new file mode 100644 index 00000000..636f03df Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_lapis_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_light_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_light_blue_concrete'}.png new file mode 100644 index 00000000..3172c30f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_light_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_light_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_light_gray_concrete'}.png new file mode 100644 index 00000000..d73ad127 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_light_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_lime_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_lime_concrete'}.png new file mode 100644 index 00000000..f732ef76 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_lime_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_lodestone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_lodestone_carving'}.png new file mode 100644 index 00000000..6d3f03af Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_lodestone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_magenta_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_magenta_concrete'}.png new file mode 100644 index 00000000..c957778d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_magenta_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_magma_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_magma_block_carving'}.png new file mode 100644 index 00000000..c40810ef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_magma_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_mossy_cobblestone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_mossy_cobblestone_carving'}.png new file mode 100644 index 00000000..99b0b3e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_mossy_cobblestone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_mossy_stone_bricks_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_mossy_stone_bricks_carving'}.png new file mode 100644 index 00000000..22a2f2fa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_mossy_stone_bricks_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_mud_bricks_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_mud_bricks_carving'}.png new file mode 100644 index 00000000..9ea718ec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_mud_bricks_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_mud_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_mud_carving'}.png new file mode 100644 index 00000000..21d57016 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_mud_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_nether_bricks_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_nether_bricks_carving'}.png new file mode 100644 index 00000000..bfa2c47a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_nether_bricks_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_netherrack_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_netherrack_carving'}.png new file mode 100644 index 00000000..dd9dfda5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_netherrack_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_obsidian_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_obsidian_carving'}.png new file mode 100644 index 00000000..fa3e025b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_obsidian_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_orange_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_orange_concrete'}.png new file mode 100644 index 00000000..ee471841 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_orange_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_packed_ice_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_packed_ice_carving'}.png new file mode 100644 index 00000000..8002d577 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_packed_ice_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_packed_mud_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_packed_mud_carving'}.png new file mode 100644 index 00000000..3f4e29fa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_packed_mud_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_pink_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_pink_concrete'}.png new file mode 100644 index 00000000..46ecf25d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_pink_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_prismarine_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_prismarine_carving'}.png new file mode 100644 index 00000000..b37c441e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_prismarine_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_purple_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_purple_concrete'}.png new file mode 100644 index 00000000..2d494d30 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_purple_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_purpur_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_purpur_block_carving'}.png new file mode 100644 index 00000000..0ce28d51 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_purpur_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_quartz_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_quartz_block_carving'}.png new file mode 100644 index 00000000..c1846cc3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_quartz_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_raw_copper_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_raw_copper_block_carving'}.png new file mode 100644 index 00000000..b542c47a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_raw_copper_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_raw_gold_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_raw_gold_block_carving'}.png new file mode 100644 index 00000000..aa688327 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_raw_gold_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_raw_iron_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_raw_iron_block_carving'}.png new file mode 100644 index 00000000..50972926 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_raw_iron_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_red_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_red_concrete'}.png new file mode 100644 index 00000000..b7de97f2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_red_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_red_nether_bricks_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_red_nether_bricks_carving'}.png new file mode 100644 index 00000000..005bb211 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_red_nether_bricks_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_red_sandstone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_red_sandstone_carving'}.png new file mode 100644 index 00000000..ca2902e6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_red_sandstone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_redstone_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_redstone_block_carving'}.png new file mode 100644 index 00000000..fd4c60d9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_redstone_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_sandstone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_sandstone_carving'}.png new file mode 100644 index 00000000..b0475d34 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_sandstone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_smooth_stone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_smooth_stone_carving'}.png new file mode 100644 index 00000000..a7aea224 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_smooth_stone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_snow_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_snow_block_carving'}.png new file mode 100644 index 00000000..ea01a63c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_snow_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_stone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_stone_carving'}.png new file mode 100644 index 00000000..a57aaab8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_stone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_tuff_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_tuff_carving'}.png new file mode 100644 index 00000000..705bc58e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_tuff_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_white_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_white_concrete'}.png new file mode 100644 index 00000000..505b2b52 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_white_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_yellow_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_yellow_concrete'}.png new file mode 100644 index 00000000..c14ed87b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creeper_yellow_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creepy_carved_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creepy_carved_pumpkin'}.png new file mode 100644 index 00000000..91cba426 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creepy_carved_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creepy_jack_o_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creepy_jack_o_lantern'}.png new file mode 100644 index 00000000..91cba426 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__creepy_jack_o_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crimson_dried_kelp_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crimson_dried_kelp_block'}.png new file mode 100644 index 00000000..f67e3926 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crimson_dried_kelp_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crimson_mangrove_roots'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crimson_mangrove_roots'}.png new file mode 100644 index 00000000..767438b2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crimson_mangrove_roots'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crimson_planks_mosaic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crimson_planks_mosaic'}.png new file mode 100644 index 00000000..0353ce34 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crimson_planks_mosaic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crimson_planks_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crimson_planks_panel'}.png new file mode 100644 index 00000000..1cd4db39 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crimson_planks_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crimson_planks_shavings'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crimson_planks_shavings'}.png new file mode 100644 index 00000000..1d9f75b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crimson_planks_shavings'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_black_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_black_wool'}.png new file mode 100644 index 00000000..3eaad187 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_black_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_blue_wool'}.png new file mode 100644 index 00000000..b3baf687 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_brown_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_brown_wool'}.png new file mode 100644 index 00000000..23a71309 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_brown_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_cyan_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_cyan_wool'}.png new file mode 100644 index 00000000..1e71a403 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_cyan_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_gray_wool'}.png new file mode 100644 index 00000000..7aa7cb78 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_green_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_green_wool'}.png new file mode 100644 index 00000000..de88848a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_green_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_light_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_light_blue_wool'}.png new file mode 100644 index 00000000..5587f911 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_light_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_light_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_light_gray_wool'}.png new file mode 100644 index 00000000..d710b13f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_light_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_lime_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_lime_wool'}.png new file mode 100644 index 00000000..5b793666 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_lime_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_magenta_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_magenta_wool'}.png new file mode 100644 index 00000000..28b681c4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_magenta_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_orange_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_orange_wool'}.png new file mode 100644 index 00000000..f5757a7d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_orange_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_pink_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_pink_wool'}.png new file mode 100644 index 00000000..21ff253a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_pink_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_purple_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_purple_wool'}.png new file mode 100644 index 00000000..c839d013 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_purple_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_red_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_red_wool'}.png new file mode 100644 index 00000000..ee33fe0e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_red_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_white_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_white_wool'}.png new file mode 100644 index 00000000..b21f28c7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_white_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_yellow_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_yellow_wool'}.png new file mode 100644 index 00000000..cc2c4829 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_haired_yellow_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_acacia_planks'}.png new file mode 100644 index 00000000..7d0fc71d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_bamboo_planks'}.png new file mode 100644 index 00000000..2421ec54 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_birch_planks'}.png new file mode 100644 index 00000000..0fd88e15 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_cherry_planks'}.png new file mode 100644 index 00000000..075157b4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_crimson_planks'}.png new file mode 100644 index 00000000..b86c4948 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_dark_oak_planks'}.png new file mode 100644 index 00000000..c6ed1a47 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_jungle_planks'}.png new file mode 100644 index 00000000..78731d19 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_mangrove_planks'}.png new file mode 100644 index 00000000..0587d317 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_oak_planks'}.png new file mode 100644 index 00000000..321b7b31 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_spruce_planks'}.png new file mode 100644 index 00000000..1e0b866f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_warped_planks'}.png new file mode 100644 index 00000000..49323e85 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cross_laced_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_acacia_planks'}.png new file mode 100644 index 00000000..e46b0138 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_bamboo_planks'}.png new file mode 100644 index 00000000..c58f1947 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_birch_planks'}.png new file mode 100644 index 00000000..cb0dad44 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_black_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_black_terracotta'}.png new file mode 100644 index 00000000..9d63e1d9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_black_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_blue_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_blue_terracotta'}.png new file mode 100644 index 00000000..cd2f3498 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_blue_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_brown_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_brown_terracotta'}.png new file mode 100644 index 00000000..862b4514 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_brown_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_cherry_planks'}.png new file mode 100644 index 00000000..4bb2a7d8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_crimson_planks'}.png new file mode 100644 index 00000000..ff61b414 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_cyan_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_cyan_terracotta'}.png new file mode 100644 index 00000000..f746da6c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_cyan_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_dark_oak_planks'}.png new file mode 100644 index 00000000..05395f43 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_gray_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_gray_terracotta'}.png new file mode 100644 index 00000000..5b042763 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_gray_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_green_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_green_terracotta'}.png new file mode 100644 index 00000000..35922095 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_green_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_jungle_planks'}.png new file mode 100644 index 00000000..eb322448 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_light_blue_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_light_blue_terracotta'}.png new file mode 100644 index 00000000..d5e33f65 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_light_blue_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_light_gray_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_light_gray_terracotta'}.png new file mode 100644 index 00000000..95859aa0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_light_gray_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_lime_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_lime_terracotta'}.png new file mode 100644 index 00000000..44c33403 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_lime_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_magenta_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_magenta_terracotta'}.png new file mode 100644 index 00000000..9e8f0a65 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_magenta_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_mangrove_planks'}.png new file mode 100644 index 00000000..ff55e415 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_oak_planks'}.png new file mode 100644 index 00000000..03ae596e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_orange_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_orange_terracotta'}.png new file mode 100644 index 00000000..8f2c8b9b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_orange_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_pink_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_pink_terracotta'}.png new file mode 100644 index 00000000..87887847 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_pink_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_purple_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_purple_terracotta'}.png new file mode 100644 index 00000000..39f6b0c2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_purple_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_red_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_red_terracotta'}.png new file mode 100644 index 00000000..5a325834 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_red_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_spruce_planks'}.png new file mode 100644 index 00000000..7c71939c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_terracotta'}.png new file mode 100644 index 00000000..c8426a3c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_warped_planks'}.png new file mode 100644 index 00000000..82c19100 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_white_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_white_terracotta'}.png new file mode 100644 index 00000000..7dd9d92c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_white_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_yellow_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_yellow_terracotta'}.png new file mode 100644 index 00000000..71e720b9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crossed_yellow_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crumbled_nether_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crumbled_nether_wart_block'}.png new file mode 100644 index 00000000..bda32e96 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crumbled_nether_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crumbled_warped_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crumbled_warped_wart_block'}.png new file mode 100644 index 00000000..bd340546 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crumbled_warped_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crunched_bone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crunched_bone_block'}.png new file mode 100644 index 00000000..88e3ffde Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crunched_bone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crunched_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crunched_mud_bricks'}.png new file mode 100644 index 00000000..32cd3ab8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crunched_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crunched_mud_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crunched_mud_bricks_bricks'}.png new file mode 100644 index 00000000..765ecdd1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crunched_mud_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crunched_packed_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crunched_packed_mud_bricks'}.png new file mode 100644 index 00000000..e3e48053 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crunched_packed_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crunchy_moss_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crunchy_moss_block'}.png new file mode 100644 index 00000000..d7e5dad6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crunchy_moss_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_amethyst_block'}.png new file mode 100644 index 00000000..415b0fb8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_ancient_debris'}.png new file mode 100644 index 00000000..b3bec0ea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_andesite'}.png new file mode 100644 index 00000000..74582656 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_basalt'}.png new file mode 100644 index 00000000..32042572 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_blackstone'}.png new file mode 100644 index 00000000..519c8667 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_blue_ice'}.png new file mode 100644 index 00000000..8ec80cc3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_borderless_bricks'}.png new file mode 100644 index 00000000..712ef940 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_bricks'}.png new file mode 100644 index 00000000..c920975f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_calcite'}.png new file mode 100644 index 00000000..4777b94f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_clay'}.png new file mode 100644 index 00000000..83d842ed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_coal_block'}.png new file mode 100644 index 00000000..93912d39 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_cobblestone'}.png new file mode 100644 index 00000000..34a17abc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_crimson_stem'}.png new file mode 100644 index 00000000..173e8118 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_crying_obsidian'}.png new file mode 100644 index 00000000..7f0ce1ef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_dark_prismarine'}.png new file mode 100644 index 00000000..7baf7a5d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_deepslate'}.png new file mode 100644 index 00000000..3c0158b6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_diorite'}.png new file mode 100644 index 00000000..9844c1c8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_dirt'}.png new file mode 100644 index 00000000..ddc17cb8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_dripstone_block'}.png new file mode 100644 index 00000000..1058164d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_end_stone'}.png new file mode 100644 index 00000000..41cdc399 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_gilded_blackstone'}.png new file mode 100644 index 00000000..1be709db Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_granite'}.png new file mode 100644 index 00000000..9655ca88 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_ice'}.png new file mode 100644 index 00000000..97e70b30 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_lapis_block'}.png new file mode 100644 index 00000000..431a8af0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_lodestone'}.png new file mode 100644 index 00000000..588ebda5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_magma_block'}.png new file mode 100644 index 00000000..00d340fc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_mossy_cobblestone'}.png new file mode 100644 index 00000000..947bb98a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_mossy_stone_bricks'}.png new file mode 100644 index 00000000..580bcd25 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_mud'}.png new file mode 100644 index 00000000..71058736 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_mud_bricks'}.png new file mode 100644 index 00000000..d65bea31 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_nether_bricks'}.png new file mode 100644 index 00000000..64626944 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_netherrack'}.png new file mode 100644 index 00000000..502974e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_obsidian'}.png new file mode 100644 index 00000000..9f6eee91 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_obsidian_bricks'}.png new file mode 100644 index 00000000..4c527282 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_obsidian_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_obsidian_mini_tiles'}.png new file mode 100644 index 00000000..1e718fa1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_obsidian_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_obsidian_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_obsidian_pillar'}.png new file mode 100644 index 00000000..6eb214e9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_obsidian_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_obsidian_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_obsidian_pillar_top'}.png new file mode 100644 index 00000000..4b7a2318 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_obsidian_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_obsidian_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_obsidian_scales'}.png new file mode 100644 index 00000000..4e76bb04 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_obsidian_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_packed_ice'}.png new file mode 100644 index 00000000..daeb3d35 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_packed_mud'}.png new file mode 100644 index 00000000..13ef7e75 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_prismarine'}.png new file mode 100644 index 00000000..95a6a604 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_purpur_block'}.png new file mode 100644 index 00000000..439c1e3d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_quartz_block'}.png new file mode 100644 index 00000000..a427f7f1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_raw_copper_block'}.png new file mode 100644 index 00000000..ec15148e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_raw_gold_block'}.png new file mode 100644 index 00000000..905850df Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_raw_iron_block'}.png new file mode 100644 index 00000000..3f3ebfe3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_red_nether_bricks'}.png new file mode 100644 index 00000000..14a55b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_red_sandstone'}.png new file mode 100644 index 00000000..8214d35a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_redstone_block'}.png new file mode 100644 index 00000000..47dabf74 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_sandstone'}.png new file mode 100644 index 00000000..c3f1a0d3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_smooth_stone'}.png new file mode 100644 index 00000000..62c23190 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_snow_block'}.png new file mode 100644 index 00000000..a129db24 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_stone'}.png new file mode 100644 index 00000000..de76b870 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_tuff'}.png new file mode 100644 index 00000000..04a3d617 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__crying_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_black_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_black_wool'}.png new file mode 100644 index 00000000..988aceea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_black_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_blue_wool'}.png new file mode 100644 index 00000000..da276150 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_brown_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_brown_wool'}.png new file mode 100644 index 00000000..279df058 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_brown_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_cyan_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_cyan_wool'}.png new file mode 100644 index 00000000..b3112e1d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_cyan_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_gray_wool'}.png new file mode 100644 index 00000000..994850c3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_green_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_green_wool'}.png new file mode 100644 index 00000000..2e925053 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_green_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_light_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_light_blue_wool'}.png new file mode 100644 index 00000000..e46216b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_light_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_light_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_light_gray_wool'}.png new file mode 100644 index 00000000..83a120ba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_light_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_lime_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_lime_wool'}.png new file mode 100644 index 00000000..08da3d86 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_lime_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_magenta_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_magenta_wool'}.png new file mode 100644 index 00000000..39da6f68 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_magenta_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_oak_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_oak_bookshelf'}.png new file mode 100644 index 00000000..d54e46bc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_oak_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_oak_empty_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_oak_empty_bookshelf'}.png new file mode 100644 index 00000000..f416d41e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_oak_empty_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_oak_spaced_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_oak_spaced_bookshelf'}.png new file mode 100644 index 00000000..c9c3be8f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_oak_spaced_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_oak_webbed_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_oak_webbed_bookshelf'}.png new file mode 100644 index 00000000..4c74e270 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_oak_webbed_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_orange_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_orange_wool'}.png new file mode 100644 index 00000000..51e94b0c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_orange_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_pink_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_pink_wool'}.png new file mode 100644 index 00000000..c61b10bd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_pink_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_purple_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_purple_wool'}.png new file mode 100644 index 00000000..dc768291 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_purple_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_red_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_red_wool'}.png new file mode 100644 index 00000000..e7717b67 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_red_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_white_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_white_wool'}.png new file mode 100644 index 00000000..f46071be Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_white_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_yellow_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_yellow_wool'}.png new file mode 100644 index 00000000..0976cb71 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cubed_yellow_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_black_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_black_terracotta'}.png new file mode 100644 index 00000000..e1d1cb0c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_black_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_blue_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_blue_terracotta'}.png new file mode 100644 index 00000000..a60bdb6e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_blue_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_brown_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_brown_terracotta'}.png new file mode 100644 index 00000000..d1379a71 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_brown_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_cyan_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_cyan_terracotta'}.png new file mode 100644 index 00000000..52d0abc3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_cyan_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_gray_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_gray_terracotta'}.png new file mode 100644 index 00000000..0533e031 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_gray_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_green_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_green_terracotta'}.png new file mode 100644 index 00000000..db8cc009 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_green_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_light_blue_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_light_blue_terracotta'}.png new file mode 100644 index 00000000..83008536 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_light_blue_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_light_gray_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_light_gray_terracotta'}.png new file mode 100644 index 00000000..4bacaa5d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_light_gray_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_lime_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_lime_terracotta'}.png new file mode 100644 index 00000000..f9cf3501 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_lime_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_magenta_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_magenta_terracotta'}.png new file mode 100644 index 00000000..efb87e81 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_magenta_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_orange_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_orange_terracotta'}.png new file mode 100644 index 00000000..d7374d6c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_orange_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_pink_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_pink_terracotta'}.png new file mode 100644 index 00000000..4e8b9043 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_pink_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_purple_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_purple_terracotta'}.png new file mode 100644 index 00000000..0bf1d0fd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_purple_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_red_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_red_terracotta'}.png new file mode 100644 index 00000000..ea9c2a1c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_red_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_terracotta'}.png new file mode 100644 index 00000000..d4124ef5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_white_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_white_terracotta'}.png new file mode 100644 index 00000000..cd3370ca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_white_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_yellow_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_yellow_terracotta'}.png new file mode 100644 index 00000000..2254f31e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curled_yellow_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_amethyst_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_amethyst_block_pillar'}.png new file mode 100644 index 00000000..feedb13f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_amethyst_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_ancient_debris_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_ancient_debris_pillar'}.png new file mode 100644 index 00000000..16f5d461 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_ancient_debris_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_andesite_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_andesite_pillar'}.png new file mode 100644 index 00000000..9ab36075 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_andesite_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_basalt_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_basalt_pillar'}.png new file mode 100644 index 00000000..0bc730bd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_basalt_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_blackstone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_blackstone_pillar'}.png new file mode 100644 index 00000000..78164e7a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_blackstone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_blue_ice_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_blue_ice_pillar'}.png new file mode 100644 index 00000000..024c79c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_blue_ice_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_borderless_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_borderless_bricks_pillar'}.png new file mode 100644 index 00000000..2c8637f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_borderless_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_bricks_pillar'}.png new file mode 100644 index 00000000..43f67214 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_calcite_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_calcite_pillar'}.png new file mode 100644 index 00000000..8443e08b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_calcite_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_clay_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_clay_pillar'}.png new file mode 100644 index 00000000..a2764b30 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_clay_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_coal_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_coal_block_pillar'}.png new file mode 100644 index 00000000..ae835ce6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_coal_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_cobblestone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_cobblestone_pillar'}.png new file mode 100644 index 00000000..a5a05f9d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_cobblestone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_crying_obsidian_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_crying_obsidian_pillar'}.png new file mode 100644 index 00000000..9740a4bd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_crying_obsidian_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_dark_prismarine_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_dark_prismarine_pillar'}.png new file mode 100644 index 00000000..1f5d7df0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_dark_prismarine_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_deepslate_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_deepslate_pillar'}.png new file mode 100644 index 00000000..22ab0f62 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_deepslate_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_diorite_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_diorite_pillar'}.png new file mode 100644 index 00000000..a9471657 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_diorite_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_dirt_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_dirt_pillar'}.png new file mode 100644 index 00000000..6e6d8cab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_dirt_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_dripstone_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_dripstone_block_pillar'}.png new file mode 100644 index 00000000..0665fa79 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_dripstone_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_end_stone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_end_stone_pillar'}.png new file mode 100644 index 00000000..a5908cad Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_end_stone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_gilded_blackstone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_gilded_blackstone_pillar'}.png new file mode 100644 index 00000000..33512526 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_gilded_blackstone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_granite_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_granite_pillar'}.png new file mode 100644 index 00000000..10dfb5b5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_granite_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_ice_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_ice_pillar'}.png new file mode 100644 index 00000000..a7b46ef7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_ice_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_lapis_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_lapis_block_pillar'}.png new file mode 100644 index 00000000..3e50c68d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_lapis_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_lodestone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_lodestone_pillar'}.png new file mode 100644 index 00000000..25711eb4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_lodestone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_magma_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_magma_block_pillar'}.png new file mode 100644 index 00000000..5b631249 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_magma_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_mossy_cobblestone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_mossy_cobblestone_pillar'}.png new file mode 100644 index 00000000..161e194e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_mossy_cobblestone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_mossy_stone_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_mossy_stone_bricks_pillar'}.png new file mode 100644 index 00000000..fbde7dcf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_mossy_stone_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_mud_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_mud_bricks_pillar'}.png new file mode 100644 index 00000000..914a7a0b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_mud_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_mud_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_mud_pillar'}.png new file mode 100644 index 00000000..6d8ee26a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_mud_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_nether_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_nether_bricks_pillar'}.png new file mode 100644 index 00000000..e54a5066 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_nether_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_netherrack_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_netherrack_pillar'}.png new file mode 100644 index 00000000..3daab01b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_netherrack_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_obsidian_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_obsidian_pillar'}.png new file mode 100644 index 00000000..6072c060 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_obsidian_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_packed_ice_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_packed_ice_pillar'}.png new file mode 100644 index 00000000..2e2295c2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_packed_ice_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_packed_mud_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_packed_mud_pillar'}.png new file mode 100644 index 00000000..1440aca0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_packed_mud_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_prismarine_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_prismarine_pillar'}.png new file mode 100644 index 00000000..f35dd267 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_prismarine_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_purpur_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_purpur_block_pillar'}.png new file mode 100644 index 00000000..e050e391 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_purpur_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_quartz_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_quartz_block_pillar'}.png new file mode 100644 index 00000000..3e6e2a83 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_quartz_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_raw_copper_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_raw_copper_block_pillar'}.png new file mode 100644 index 00000000..c880a3a1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_raw_copper_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_raw_gold_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_raw_gold_block_pillar'}.png new file mode 100644 index 00000000..1a253632 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_raw_gold_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_raw_iron_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_raw_iron_block_pillar'}.png new file mode 100644 index 00000000..7e90069a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_raw_iron_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_red_nether_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_red_nether_bricks_pillar'}.png new file mode 100644 index 00000000..15347371 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_red_nether_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_red_sandstone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_red_sandstone_pillar'}.png new file mode 100644 index 00000000..51b57811 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_red_sandstone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_redstone_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_redstone_block_pillar'}.png new file mode 100644 index 00000000..787108ce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_redstone_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_sandstone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_sandstone_pillar'}.png new file mode 100644 index 00000000..a18ad076 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_sandstone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_smooth_stone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_smooth_stone_pillar'}.png new file mode 100644 index 00000000..bc6f0e86 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_smooth_stone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_snow_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_snow_block_pillar'}.png new file mode 100644 index 00000000..4536edfd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_snow_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_stone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_stone_pillar'}.png new file mode 100644 index 00000000..34f14fdc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_stone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_tuff_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_tuff_pillar'}.png new file mode 100644 index 00000000..69c763a1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curly_tuff_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curvy_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curvy_bookshelf'}.png new file mode 100644 index 00000000..a192cb8e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__curvy_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_amethyst_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_amethyst_block_column'}.png new file mode 100644 index 00000000..bce5f91f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_amethyst_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_ancient_debris_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_ancient_debris_column'}.png new file mode 100644 index 00000000..60a70895 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_ancient_debris_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_andesite_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_andesite_column'}.png new file mode 100644 index 00000000..dbe4f82b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_andesite_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_basalt_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_basalt_column'}.png new file mode 100644 index 00000000..c26ab870 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_basalt_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_black_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_black_terracotta'}.png new file mode 100644 index 00000000..e4c5f48f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_black_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blackstone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blackstone_column'}.png new file mode 100644 index 00000000..100ad552 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blackstone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_amethyst_block'}.png new file mode 100644 index 00000000..a6527529 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_ancient_debris'}.png new file mode 100644 index 00000000..0787cce7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_andesite'}.png new file mode 100644 index 00000000..00dbee06 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_basalt'}.png new file mode 100644 index 00000000..399b9b3b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_blackstone'}.png new file mode 100644 index 00000000..ad81ea06 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_blue_ice'}.png new file mode 100644 index 00000000..0c93b4ec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_borderless_bricks'}.png new file mode 100644 index 00000000..3adef270 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_bricks'}.png new file mode 100644 index 00000000..8cb9f2f5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_calcite'}.png new file mode 100644 index 00000000..1778b4e8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_clay'}.png new file mode 100644 index 00000000..bc50bc16 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_coal_block'}.png new file mode 100644 index 00000000..9a347fc9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_cobblestone'}.png new file mode 100644 index 00000000..b197b055 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_crying_obsidian'}.png new file mode 100644 index 00000000..1790fc5a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_dark_prismarine'}.png new file mode 100644 index 00000000..cf0949f8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_deepslate'}.png new file mode 100644 index 00000000..fcd0acf9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_diorite'}.png new file mode 100644 index 00000000..f353e021 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_dirt'}.png new file mode 100644 index 00000000..dd467601 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_dripstone_block'}.png new file mode 100644 index 00000000..208625b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_end_stone'}.png new file mode 100644 index 00000000..8326da00 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_gilded_blackstone'}.png new file mode 100644 index 00000000..94e45725 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_granite'}.png new file mode 100644 index 00000000..6054738d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_ice'}.png new file mode 100644 index 00000000..331a205f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_lapis_block'}.png new file mode 100644 index 00000000..69a7e8c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_lodestone'}.png new file mode 100644 index 00000000..3f6bc109 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_magma_block'}.png new file mode 100644 index 00000000..a630a0c2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_mossy_cobblestone'}.png new file mode 100644 index 00000000..a889a651 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_mossy_stone_bricks'}.png new file mode 100644 index 00000000..f210b7cf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_mud'}.png new file mode 100644 index 00000000..9d1f8c3a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_mud_bricks'}.png new file mode 100644 index 00000000..2fd1e69e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_nether_bricks'}.png new file mode 100644 index 00000000..53f52b8e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_netherrack'}.png new file mode 100644 index 00000000..28ca3ef6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_obsidian'}.png new file mode 100644 index 00000000..33865ab0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_packed_ice'}.png new file mode 100644 index 00000000..91b76334 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_packed_mud'}.png new file mode 100644 index 00000000..c036b71e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_prismarine'}.png new file mode 100644 index 00000000..e98e9fae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_purpur_block'}.png new file mode 100644 index 00000000..002791e7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_quartz_block'}.png new file mode 100644 index 00000000..d2e58642 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_raw_copper_block'}.png new file mode 100644 index 00000000..f8c88e88 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_raw_gold_block'}.png new file mode 100644 index 00000000..26a7f99a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_raw_iron_block'}.png new file mode 100644 index 00000000..0ea58de5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_red_nether_bricks'}.png new file mode 100644 index 00000000..b61a4dc8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_red_sandstone'}.png new file mode 100644 index 00000000..94add455 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_redstone_block'}.png new file mode 100644 index 00000000..e0bf7589 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_sandstone'}.png new file mode 100644 index 00000000..510ea923 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_smooth_stone'}.png new file mode 100644 index 00000000..e16ee8c7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_snow_block'}.png new file mode 100644 index 00000000..c53652ff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_stone'}.png new file mode 100644 index 00000000..23d90940 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_tuff'}.png new file mode 100644 index 00000000..b3aab0c0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blank_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blue_ice_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blue_ice_column'}.png new file mode 100644 index 00000000..ce7dbb02 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blue_ice_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blue_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blue_terracotta'}.png new file mode 100644 index 00000000..53fddced Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_blue_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_borderless_bricks_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_borderless_bricks_column'}.png new file mode 100644 index 00000000..113a6a6c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_borderless_bricks_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_bricks_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_bricks_column'}.png new file mode 100644 index 00000000..12ce366f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_bricks_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_brown_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_brown_terracotta'}.png new file mode 100644 index 00000000..26c30801 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_brown_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_calcite_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_calcite_column'}.png new file mode 100644 index 00000000..4cad7b56 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_calcite_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_clay_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_clay_column'}.png new file mode 100644 index 00000000..84a87db2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_clay_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_coal_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_coal_block_column'}.png new file mode 100644 index 00000000..5ddc5c29 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_coal_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_cobblestone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_cobblestone_column'}.png new file mode 100644 index 00000000..ca7c5cc1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_cobblestone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_crying_obsidian_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_crying_obsidian_column'}.png new file mode 100644 index 00000000..352d408a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_crying_obsidian_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_cyan_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_cyan_terracotta'}.png new file mode 100644 index 00000000..defbed33 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_cyan_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_dark_prismarine_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_dark_prismarine_column'}.png new file mode 100644 index 00000000..968aa28d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_dark_prismarine_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_deepslate_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_deepslate_column'}.png new file mode 100644 index 00000000..76b2e451 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_deepslate_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_diorite_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_diorite_column'}.png new file mode 100644 index 00000000..199e226e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_diorite_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_dirt_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_dirt_column'}.png new file mode 100644 index 00000000..f37528c0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_dirt_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_dripstone_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_dripstone_block_column'}.png new file mode 100644 index 00000000..3ded05ad Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_dripstone_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_end_stone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_end_stone_column'}.png new file mode 100644 index 00000000..df951dc1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_end_stone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_gilded_blackstone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_gilded_blackstone_column'}.png new file mode 100644 index 00000000..ecbc94c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_gilded_blackstone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_granite_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_granite_column'}.png new file mode 100644 index 00000000..af6bd77e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_granite_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_gray_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_gray_terracotta'}.png new file mode 100644 index 00000000..b1845b77 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_gray_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_green_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_green_terracotta'}.png new file mode 100644 index 00000000..b8c0f419 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_green_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_ice_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_ice_column'}.png new file mode 100644 index 00000000..ba2e6990 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_ice_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_lapis_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_lapis_block_column'}.png new file mode 100644 index 00000000..d5fe4385 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_lapis_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_light_blue_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_light_blue_terracotta'}.png new file mode 100644 index 00000000..7efd1925 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_light_blue_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_light_gray_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_light_gray_terracotta'}.png new file mode 100644 index 00000000..035d921e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_light_gray_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_lime_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_lime_terracotta'}.png new file mode 100644 index 00000000..12cf004f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_lime_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_lodestone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_lodestone_column'}.png new file mode 100644 index 00000000..daa50360 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_lodestone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_magenta_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_magenta_terracotta'}.png new file mode 100644 index 00000000..44ea2887 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_magenta_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_magma_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_magma_block_column'}.png new file mode 100644 index 00000000..2f049ef4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_magma_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_mangrove_planks'}.png new file mode 100644 index 00000000..3bd3c15d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_mossy_cobblestone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_mossy_cobblestone_column'}.png new file mode 100644 index 00000000..aa944474 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_mossy_cobblestone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_mossy_stone_bricks_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_mossy_stone_bricks_column'}.png new file mode 100644 index 00000000..e8238dd2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_mossy_stone_bricks_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_nether_bricks_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_nether_bricks_column'}.png new file mode 100644 index 00000000..3f66e6e9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_nether_bricks_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_netherrack_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_netherrack_column'}.png new file mode 100644 index 00000000..6168bf6c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_netherrack_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_obsidian_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_obsidian_column'}.png new file mode 100644 index 00000000..a01278d8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_obsidian_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_orange_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_orange_terracotta'}.png new file mode 100644 index 00000000..d17479ba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_orange_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_packed_ice_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_packed_ice_column'}.png new file mode 100644 index 00000000..d452af2c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_packed_ice_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_pink_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_pink_terracotta'}.png new file mode 100644 index 00000000..08ae864c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_pink_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_prismarine_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_prismarine_column'}.png new file mode 100644 index 00000000..55296fde Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_prismarine_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_purple_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_purple_terracotta'}.png new file mode 100644 index 00000000..eb798fa3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_purple_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_purpur_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_purpur_block_column'}.png new file mode 100644 index 00000000..eb4c1b10 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_purpur_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_quartz_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_quartz_block_column'}.png new file mode 100644 index 00000000..c6f1123c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_quartz_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_raw_copper_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_raw_copper_block_column'}.png new file mode 100644 index 00000000..ff4c550a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_raw_copper_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_raw_gold_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_raw_gold_block_column'}.png new file mode 100644 index 00000000..b27fcbdc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_raw_gold_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_raw_iron_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_raw_iron_block_column'}.png new file mode 100644 index 00000000..3232b66b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_raw_iron_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_red_nether_bricks_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_red_nether_bricks_column'}.png new file mode 100644 index 00000000..77cca079 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_red_nether_bricks_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_red_sandstone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_red_sandstone_column'}.png new file mode 100644 index 00000000..e00ac75e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_red_sandstone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_red_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_red_terracotta'}.png new file mode 100644 index 00000000..41b991b5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_red_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_redstone_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_redstone_block_column'}.png new file mode 100644 index 00000000..ec95ebd2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_redstone_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_sandstone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_sandstone_column'}.png new file mode 100644 index 00000000..682aed7d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_sandstone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_smooth_stone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_smooth_stone_column'}.png new file mode 100644 index 00000000..ae549fed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_smooth_stone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_snow_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_snow_block_column'}.png new file mode 100644 index 00000000..4c44b0e2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_snow_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_stone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_stone_column'}.png new file mode 100644 index 00000000..0ab067eb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_stone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_terracotta'}.png new file mode 100644 index 00000000..aa71a0f6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_tuff_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_tuff_column'}.png new file mode 100644 index 00000000..34e3b1fd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_tuff_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_white_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_white_terracotta'}.png new file mode 100644 index 00000000..b775a0d5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_white_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_yellow_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_yellow_terracotta'}.png new file mode 100644 index 00000000..8c57fcd0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cut_yellow_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_concrete_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_concrete_bricks'}.png new file mode 100644 index 00000000..7d3b6b03 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_concrete_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_concrete_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_concrete_panel'}.png new file mode 100644 index 00000000..4f25ceb3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_concrete_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_concrete_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_concrete_pillar'}.png new file mode 100644 index 00000000..bdd303dc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_concrete_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_concrete_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_concrete_tiles'}.png new file mode 100644 index 00000000..9ae0166e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_concrete_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_glazed_terracotta_pillar_sides'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_glazed_terracotta_pillar_sides'}.png new file mode 100644 index 00000000..9dd3fe6b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_glazed_terracotta_pillar_sides'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_glazed_terracotta_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_glazed_terracotta_pillar_top'}.png new file mode 100644 index 00000000..2f14a7bd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_glazed_terracotta_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_glazed_terracotta_smooth_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_glazed_terracotta_smooth_tiles'}.png new file mode 100644 index 00000000..e09194a9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_glazed_terracotta_smooth_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_glazed_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_glazed_terracotta_tiles'}.png new file mode 100644 index 00000000..005efa0f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_glazed_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_terracotta_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_terracotta_bricks'}.png new file mode 100644 index 00000000..f09c84db Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_terracotta_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_terracotta_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_terracotta_column'}.png new file mode 100644 index 00000000..48a159ba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_terracotta_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_terracotta_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_terracotta_pillar'}.png new file mode 100644 index 00000000..01e7bbc4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_terracotta_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_terracotta_tile'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_terracotta_tile'}.png new file mode 100644 index 00000000..53947b2f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_terracotta_tile'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_terracotta_tiles'}.png new file mode 100644 index 00000000..5d8539f0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__cyan_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_acacia_log'}.png new file mode 100644 index 00000000..b2be7292 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_birch_log'}.png new file mode 100644 index 00000000..89252c3c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_cherry_log'}.png new file mode 100644 index 00000000..32a3a6e7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_crimson_stem'}.png new file mode 100644 index 00000000..defb3c99 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_dark_oak_log'}.png new file mode 100644 index 00000000..e74845ce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_jungle_log'}.png new file mode 100644 index 00000000..a1a15794 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_mangrove_log'}.png new file mode 100644 index 00000000..7610e9f3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_oak_log'}.png new file mode 100644 index 00000000..ca255640 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_spruce_log'}.png new file mode 100644 index 00000000..5bb30579 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_warped_stem'}.png new file mode 100644 index 00000000..c1643e84 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__d_sign_stripped_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_acacia_log'}.png new file mode 100644 index 00000000..00ebbabf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_birch_log'}.png new file mode 100644 index 00000000..c3cc2711 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_cherry_log'}.png new file mode 100644 index 00000000..092a6d02 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_crimson_stem'}.png new file mode 100644 index 00000000..c863b6be Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_dark_oak_log'}.png new file mode 100644 index 00000000..46ab16a5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_jungle_log'}.png new file mode 100644 index 00000000..f6496024 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_mangrove_log'}.png new file mode 100644 index 00000000..570520e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_oak_log'}.png new file mode 100644 index 00000000..f132fed8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_spruce_log'}.png new file mode 100644 index 00000000..76484408 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_warped_stem'}.png new file mode 100644 index 00000000..6de6570c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__damaged_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_bone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_bone_block'}.png new file mode 100644 index 00000000..514f8d50 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_bone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_dotted_red_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_dotted_red_mushroom_block'}.png new file mode 100644 index 00000000..fcc0b5e7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_dotted_red_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_dusted_brown_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_dusted_brown_mushroom_block'}.png new file mode 100644 index 00000000..3992d396 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_dusted_brown_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_dusted_red_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_dusted_red_mushroom_block'}.png new file mode 100644 index 00000000..cacd7119 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_dusted_red_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_freckled_brown_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_freckled_brown_mushroom_block'}.png new file mode 100644 index 00000000..ac99f8bc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_freckled_brown_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_freckled_red_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_freckled_red_mushroom_block'}.png new file mode 100644 index 00000000..e7228ffc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_freckled_red_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_melon'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_melon'}.png new file mode 100644 index 00000000..7fe12355 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_melon'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_oak_planks_mosaic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_oak_planks_mosaic'}.png new file mode 100644 index 00000000..fd49f6e7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_oak_planks_mosaic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_oak_planks_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_oak_planks_panel'}.png new file mode 100644 index 00000000..234509b5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_oak_planks_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_oak_planks_shavings'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_oak_planks_shavings'}.png new file mode 100644 index 00000000..36cfa2d5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_oak_planks_shavings'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_prismarine_bricks'}.png new file mode 100644 index 00000000..4545ae54 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_prismarine_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_prismarine_pillar'}.png new file mode 100644 index 00000000..384a14ad Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_prismarine_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_prismarine_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_prismarine_pillar_top'}.png new file mode 100644 index 00000000..dba6520d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_prismarine_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_prismarine_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_prismarine_scales'}.png new file mode 100644 index 00000000..8a5b863b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_prismarine_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_scaled_brown_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_scaled_brown_mushroom_block'}.png new file mode 100644 index 00000000..1ecc3540 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_scaled_brown_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_smooth_brown_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_smooth_brown_mushroom_block'}.png new file mode 100644 index 00000000..7e5f98d9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_smooth_brown_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_smooth_red_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_smooth_red_mushroom_block'}.png new file mode 100644 index 00000000..15ed2f96 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_smooth_red_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_spotted_brown_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_spotted_brown_mushroom_block'}.png new file mode 100644 index 00000000..ba0b475c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_spotted_brown_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_spotted_red_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_spotted_red_mushroom_block'}.png new file mode 100644 index 00000000..c0ea8f03 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_spotted_red_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_sprinkled_brown_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_sprinkled_brown_mushroom_block'}.png new file mode 100644 index 00000000..3e3e9e4a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dark_sprinkled_brown_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dead_acacia_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dead_acacia_leaves'}.png new file mode 100644 index 00000000..ca432e9b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dead_acacia_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dead_birch_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dead_birch_leaves'}.png new file mode 100644 index 00000000..f871ccef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dead_birch_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dead_dark_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dead_dark_oak_leaves'}.png new file mode 100644 index 00000000..063d1f72 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dead_dark_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dead_jungle_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dead_jungle_leaves'}.png new file mode 100644 index 00000000..850f4818 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dead_jungle_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dead_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dead_oak_leaves'}.png new file mode 100644 index 00000000..063d1f72 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dead_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dead_spruce_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dead_spruce_leaves'}.png new file mode 100644 index 00000000..99a3961f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dead_spruce_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_black_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_black_glazed_terracotta'}.png new file mode 100644 index 00000000..ee345fad Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_black_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_black_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_black_terracotta'}.png new file mode 100644 index 00000000..0427081c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_black_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_blue_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_blue_glazed_terracotta'}.png new file mode 100644 index 00000000..1b80af0b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_blue_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_blue_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_blue_terracotta'}.png new file mode 100644 index 00000000..481955c7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_blue_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_brown_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_brown_glazed_terracotta'}.png new file mode 100644 index 00000000..f2ed6059 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_brown_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_brown_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_brown_terracotta'}.png new file mode 100644 index 00000000..cabe5de3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_brown_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_cyan_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_cyan_glazed_terracotta'}.png new file mode 100644 index 00000000..87e18719 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_cyan_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_cyan_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_cyan_terracotta'}.png new file mode 100644 index 00000000..7b78e248 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_cyan_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_gray_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_gray_glazed_terracotta'}.png new file mode 100644 index 00000000..541784e4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_gray_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_gray_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_gray_terracotta'}.png new file mode 100644 index 00000000..bb7c1bee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_gray_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_green_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_green_glazed_terracotta'}.png new file mode 100644 index 00000000..06504548 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_green_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_green_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_green_terracotta'}.png new file mode 100644 index 00000000..4599509a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_green_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_light_blue_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_light_blue_glazed_terracotta'}.png new file mode 100644 index 00000000..b1244fc8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_light_blue_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_light_blue_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_light_blue_terracotta'}.png new file mode 100644 index 00000000..c306bdff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_light_blue_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_light_gray_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_light_gray_glazed_terracotta'}.png new file mode 100644 index 00000000..73c542d0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_light_gray_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_light_gray_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_light_gray_terracotta'}.png new file mode 100644 index 00000000..e46c2f7a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_light_gray_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_lime_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_lime_glazed_terracotta'}.png new file mode 100644 index 00000000..d08cdce2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_lime_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_lime_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_lime_terracotta'}.png new file mode 100644 index 00000000..0eb9e70d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_lime_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_magenta_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_magenta_glazed_terracotta'}.png new file mode 100644 index 00000000..839e5e2e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_magenta_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_magenta_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_magenta_terracotta'}.png new file mode 100644 index 00000000..28aacae2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_magenta_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_orange_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_orange_glazed_terracotta'}.png new file mode 100644 index 00000000..b6f178c4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_orange_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_orange_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_orange_terracotta'}.png new file mode 100644 index 00000000..f90202b6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_orange_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_pink_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_pink_glazed_terracotta'}.png new file mode 100644 index 00000000..21ea03e3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_pink_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_pink_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_pink_terracotta'}.png new file mode 100644 index 00000000..ee8123a4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_pink_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_purple_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_purple_glazed_terracotta'}.png new file mode 100644 index 00000000..f13650bf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_purple_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_purple_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_purple_terracotta'}.png new file mode 100644 index 00000000..fe4f591d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_purple_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_red_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_red_glazed_terracotta'}.png new file mode 100644 index 00000000..f0fdeb9c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_red_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_red_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_red_terracotta'}.png new file mode 100644 index 00000000..3b92b88e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_red_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_terracotta'}.png new file mode 100644 index 00000000..3b4980a8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_white_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_white_glazed_terracotta'}.png new file mode 100644 index 00000000..f8bf3d17 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_white_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_white_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_white_terracotta'}.png new file mode 100644 index 00000000..a0490262 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_white_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_yellow_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_yellow_glazed_terracotta'}.png new file mode 100644 index 00000000..8b1f5557 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_yellow_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_yellow_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_yellow_terracotta'}.png new file mode 100644 index 00000000..550a4cc5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__decorated_yellow_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__deepslate_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__deepslate_mini_tiles'}.png new file mode 100644 index 00000000..789b318f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__deepslate_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__deepslate_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__deepslate_pillar'}.png new file mode 100644 index 00000000..2d35880e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__deepslate_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__deepslate_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__deepslate_pillar_top'}.png new file mode 100644 index 00000000..629305f8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__deepslate_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__deepslate_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__deepslate_scales'}.png new file mode 100644 index 00000000..63b39347 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__deepslate_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__desert_sand'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__desert_sand'}.png new file mode 100644 index 00000000..93934c61 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__desert_sand'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_acacia_planks'}.png new file mode 100644 index 00000000..17716f71 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_bamboo_planks'}.png new file mode 100644 index 00000000..f89280b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_birch_planks'}.png new file mode 100644 index 00000000..1fdbeb1b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_cherry_planks'}.png new file mode 100644 index 00000000..ad07f3c6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_crimson_planks'}.png new file mode 100644 index 00000000..13efd16f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_dark_oak_planks'}.png new file mode 100644 index 00000000..95585ecc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_hay_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_hay_block'}.png new file mode 100644 index 00000000..5ce430da Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_hay_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_jungle_planks'}.png new file mode 100644 index 00000000..7d3959a7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_mangrove_planks'}.png new file mode 100644 index 00000000..b343b48b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_oak_planks'}.png new file mode 100644 index 00000000..c52db846 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_spruce_planks'}.png new file mode 100644 index 00000000..d0e6d88d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_warped_planks'}.png new file mode 100644 index 00000000..55b623f8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__detailed_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__devious_carved_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__devious_carved_pumpkin'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__devious_carved_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__devious_jack_o_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__devious_jack_o_lantern'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__devious_jack_o_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dewkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dewkin'}.png new file mode 100644 index 00000000..05e5660b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dewkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_acacia_planks'}.png new file mode 100644 index 00000000..8dad8b00 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_bamboo_planks'}.png new file mode 100644 index 00000000..488cf512 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_birch_planks'}.png new file mode 100644 index 00000000..da5d5b33 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_cherry_planks'}.png new file mode 100644 index 00000000..e7339608 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_crimson_planks'}.png new file mode 100644 index 00000000..de602424 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_dark_oak_planks'}.png new file mode 100644 index 00000000..4ef0d3f8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_jungle_planks'}.png new file mode 100644 index 00000000..5da23171 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_mangrove_planks'}.png new file mode 100644 index 00000000..0ceedeb8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_oak_planks'}.png new file mode 100644 index 00000000..a12d71cc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_spruce_planks'}.png new file mode 100644 index 00000000..814d23f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_warped_planks'}.png new file mode 100644 index 00000000..024166f3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diagonal_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_acacia_planks'}.png new file mode 100644 index 00000000..2e3c6bbb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_bamboo_planks'}.png new file mode 100644 index 00000000..8e430da4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_birch_planks'}.png new file mode 100644 index 00000000..ca679e1c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_block_panels'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_block_panels'}.png new file mode 100644 index 00000000..e958173f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_block_panels'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_cherry_planks'}.png new file mode 100644 index 00000000..f1e3c6df Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_crimson_planks'}.png new file mode 100644 index 00000000..b7a14fe9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_dark_oak_planks'}.png new file mode 100644 index 00000000..97514340 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_jungle_planks'}.png new file mode 100644 index 00000000..4bb137e8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_lodestone'}.png new file mode 100644 index 00000000..0bddf5d1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_mangrove_planks'}.png new file mode 100644 index 00000000..573f29fc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_mud_bricks'}.png new file mode 100644 index 00000000..0707f81e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_mud_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_mud_bricks_bricks'}.png new file mode 100644 index 00000000..2462a94b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_mud_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_oak_planks'}.png new file mode 100644 index 00000000..7052da5a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_packed_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_packed_mud_bricks'}.png new file mode 100644 index 00000000..a9c16752 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_packed_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_spruce_planks'}.png new file mode 100644 index 00000000..fa49255c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_warped_planks'}.png new file mode 100644 index 00000000..5846d3c7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diamond_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diorite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diorite_bricks'}.png new file mode 100644 index 00000000..27f42ae8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diorite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diorite_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diorite_mini_tiles'}.png new file mode 100644 index 00000000..52481786 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diorite_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diorite_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diorite_pillar'}.png new file mode 100644 index 00000000..304dca3e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diorite_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diorite_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diorite_pillar_top'}.png new file mode 100644 index 00000000..c51cccdb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diorite_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diorite_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diorite_scales'}.png new file mode 100644 index 00000000..640e32ad Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__diorite_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirt_bricks'}.png new file mode 100644 index 00000000..fa6098ea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirt_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirt_mini_tiles'}.png new file mode 100644 index 00000000..3dc91c06 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirt_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirt_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirt_pillar'}.png new file mode 100644 index 00000000..5da82881 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirt_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirt_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirt_pillar_top'}.png new file mode 100644 index 00000000..54f3ad86 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirt_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirt_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirt_scales'}.png new file mode 100644 index 00000000..1956d0c0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirt_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirty_dewkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirty_dewkin'}.png new file mode 100644 index 00000000..fe246df1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirty_dewkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirty_goldkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirty_goldkin'}.png new file mode 100644 index 00000000..39074527 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirty_goldkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirty_gravel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirty_gravel'}.png new file mode 100644 index 00000000..9c25bb2c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirty_gravel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirty_rosekin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirty_rosekin'}.png new file mode 100644 index 00000000..5e2eb921 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dirty_rosekin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dot_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dot_lodestone'}.png new file mode 100644 index 00000000..9f3df937 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dot_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dotted_red_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dotted_red_mushroom_block'}.png new file mode 100644 index 00000000..02a217dc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dotted_red_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_acacia_planks'}.png new file mode 100644 index 00000000..808dba71 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_bamboo_planks'}.png new file mode 100644 index 00000000..d0bbbdbd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_birch_planks'}.png new file mode 100644 index 00000000..f60e7ba5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_cherry_planks'}.png new file mode 100644 index 00000000..7f4a4081 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_crimson_planks'}.png new file mode 100644 index 00000000..7a6a356d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_dark_oak_planks'}.png new file mode 100644 index 00000000..6a992568 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_jungle_planks'}.png new file mode 100644 index 00000000..c0011689 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_mangrove_planks'}.png new file mode 100644 index 00000000..a3d97e89 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_oak_planks'}.png new file mode 100644 index 00000000..e625a7f6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_spruce_planks'}.png new file mode 100644 index 00000000..a7d9612e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_warped_planks'}.png new file mode 100644 index 00000000..6cd577ce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_herringbone_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_inlayed_glowstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_inlayed_glowstone'}.png new file mode 100644 index 00000000..6bccb449 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_inlayed_glowstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_inlayed_sea_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_inlayed_sea_lantern'}.png new file mode 100644 index 00000000..2b9f84a9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_inlayed_sea_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_inlayed_shroomlight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_inlayed_shroomlight'}.png new file mode 100644 index 00000000..c1b04d79 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_inlayed_shroomlight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_mud_bricks'}.png new file mode 100644 index 00000000..feed3325 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_mud_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_mud_bricks_bricks'}.png new file mode 100644 index 00000000..36163097 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_mud_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_packed_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_packed_mud_bricks'}.png new file mode 100644 index 00000000..68b26ccf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_packed_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_roped_bone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_roped_bone_block'}.png new file mode 100644 index 00000000..3b78cb22 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__double_roped_bone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dried_nether_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dried_nether_wart_block'}.png new file mode 100644 index 00000000..0ab659df Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dried_nether_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dried_warped_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dried_warped_wart_block'}.png new file mode 100644 index 00000000..5c0ecff9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dried_warped_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dripstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dripstone_block_bricks'}.png new file mode 100644 index 00000000..1e894c83 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dripstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dripstone_block_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dripstone_block_mini_tiles'}.png new file mode 100644 index 00000000..dca2fdaa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dripstone_block_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dripstone_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dripstone_block_pillar'}.png new file mode 100644 index 00000000..0886ef2a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dripstone_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dripstone_block_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dripstone_block_pillar_top'}.png new file mode 100644 index 00000000..650ea89d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dripstone_block_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dripstone_block_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dripstone_block_scales'}.png new file mode 100644 index 00000000..76625ec8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dripstone_block_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_amethyst_block'}.png new file mode 100644 index 00000000..f72aa01c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_ancient_debris'}.png new file mode 100644 index 00000000..38a637b5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_andesite'}.png new file mode 100644 index 00000000..80504e07 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_basalt'}.png new file mode 100644 index 00000000..f3a2303e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_blackstone'}.png new file mode 100644 index 00000000..ac64ecb3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_blue_ice'}.png new file mode 100644 index 00000000..b6188e72 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_borderless_bricks'}.png new file mode 100644 index 00000000..b73ae1f8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_bricks'}.png new file mode 100644 index 00000000..c9bb3670 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_calcite'}.png new file mode 100644 index 00000000..764f988c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_clay'}.png new file mode 100644 index 00000000..440bff84 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_coal_block'}.png new file mode 100644 index 00000000..6c04a108 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_cobblestone'}.png new file mode 100644 index 00000000..8d5745b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_crying_obsidian'}.png new file mode 100644 index 00000000..bcefdaa8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_dark_prismarine'}.png new file mode 100644 index 00000000..f504a7b5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_deepslate'}.png new file mode 100644 index 00000000..87110d03 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_diorite'}.png new file mode 100644 index 00000000..f271b3bd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_dirt'}.png new file mode 100644 index 00000000..ad18fa84 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_dripstone_block'}.png new file mode 100644 index 00000000..5184d809 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_end_stone'}.png new file mode 100644 index 00000000..2b4703c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_gilded_blackstone'}.png new file mode 100644 index 00000000..c5e32b0f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_granite'}.png new file mode 100644 index 00000000..f8115fa7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_ice'}.png new file mode 100644 index 00000000..59023c9b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_lapis_block'}.png new file mode 100644 index 00000000..6eaebb60 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_lodestone'}.png new file mode 100644 index 00000000..cd652c46 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_magma_block'}.png new file mode 100644 index 00000000..40a8c316 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_mossy_cobblestone'}.png new file mode 100644 index 00000000..82aaa237 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_mossy_stone_bricks'}.png new file mode 100644 index 00000000..023c7fe6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_mud'}.png new file mode 100644 index 00000000..8b02403c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_mud_bricks'}.png new file mode 100644 index 00000000..ca52dda3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_nether_bricks'}.png new file mode 100644 index 00000000..9c4ebedd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_netherrack'}.png new file mode 100644 index 00000000..9959a69b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_obsidian'}.png new file mode 100644 index 00000000..5f2923d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_packed_ice'}.png new file mode 100644 index 00000000..d957c0b4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_packed_mud'}.png new file mode 100644 index 00000000..dcbc2e6f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_prismarine'}.png new file mode 100644 index 00000000..7e83da42 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_purpur_block'}.png new file mode 100644 index 00000000..0bc13e71 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_quartz_block'}.png new file mode 100644 index 00000000..e8bf2632 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_raw_copper_block'}.png new file mode 100644 index 00000000..1ba6d12f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_raw_gold_block'}.png new file mode 100644 index 00000000..3497b809 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_raw_iron_block'}.png new file mode 100644 index 00000000..5822f2dc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_red_nether_bricks'}.png new file mode 100644 index 00000000..9201ce51 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_red_sandstone'}.png new file mode 100644 index 00000000..bb77babc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_redstone_block'}.png new file mode 100644 index 00000000..1a808d5a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_sandstone'}.png new file mode 100644 index 00000000..e2554dbb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_smooth_stone'}.png new file mode 100644 index 00000000..c3815bf7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_snow_block'}.png new file mode 100644 index 00000000..3efc9b89 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_stone'}.png new file mode 100644 index 00000000..027cf07f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_tuff'}.png new file mode 100644 index 00000000..fac4cba8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__duh_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dusted_brown_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dusted_brown_mushroom_block'}.png new file mode 100644 index 00000000..f93f2a4b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dusted_brown_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dusted_red_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dusted_red_mushroom_block'}.png new file mode 100644 index 00000000..92986824 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dusted_red_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dusty_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dusty_bookshelf'}.png new file mode 100644 index 00000000..9125de48 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dusty_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dusty_gravel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dusty_gravel'}.png new file mode 100644 index 00000000..4b106946 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__dusty_gravel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_acacia_log'}.png new file mode 100644 index 00000000..ddb63ada Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_birch_log'}.png new file mode 100644 index 00000000..68bc8a00 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_cherry_log'}.png new file mode 100644 index 00000000..32bd91be Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_crimson_stem'}.png new file mode 100644 index 00000000..194bcb71 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_dark_oak_log'}.png new file mode 100644 index 00000000..e813272d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_jungle_log'}.png new file mode 100644 index 00000000..28132a87 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_mangrove_log'}.png new file mode 100644 index 00000000..f4e16531 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_oak_log'}.png new file mode 100644 index 00000000..39f3b494 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_spruce_log'}.png new file mode 100644 index 00000000..b4276976 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_warped_stem'}.png new file mode 100644 index 00000000..97ac9f96 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edge_cut_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_amethyst_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_amethyst_block_bricks'}.png new file mode 100644 index 00000000..dbe094e0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_amethyst_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_ancient_debris_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_ancient_debris_bricks'}.png new file mode 100644 index 00000000..8a8a7927 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_ancient_debris_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_andesite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_andesite_bricks'}.png new file mode 100644 index 00000000..85fc59aa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_andesite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_basalt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_basalt_bricks'}.png new file mode 100644 index 00000000..ef92d7bf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_basalt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_blackstone_bricks'}.png new file mode 100644 index 00000000..75755f9b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_blue_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_blue_ice_bricks'}.png new file mode 100644 index 00000000..0c180643 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_blue_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_borderless_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_borderless_bricks_bricks'}.png new file mode 100644 index 00000000..b839013b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_borderless_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_bricks_bricks'}.png new file mode 100644 index 00000000..33c2c505 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_calcite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_calcite_bricks'}.png new file mode 100644 index 00000000..1df98211 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_calcite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_clay_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_clay_bricks'}.png new file mode 100644 index 00000000..8857aeaf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_clay_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_coal_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_coal_block_bricks'}.png new file mode 100644 index 00000000..d489e9aa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_coal_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_cobblestone_bricks'}.png new file mode 100644 index 00000000..77d73273 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_crying_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_crying_obsidian_bricks'}.png new file mode 100644 index 00000000..6cea26a7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_crying_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_dark_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_dark_prismarine_bricks'}.png new file mode 100644 index 00000000..ba9bc235 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_dark_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_deepslate_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_deepslate_bricks'}.png new file mode 100644 index 00000000..ca3fdfaa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_deepslate_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_diorite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_diorite_bricks'}.png new file mode 100644 index 00000000..92eb5e53 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_diorite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_dirt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_dirt_bricks'}.png new file mode 100644 index 00000000..61c3819d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_dirt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_dripstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_dripstone_block_bricks'}.png new file mode 100644 index 00000000..4e756108 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_dripstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_end_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_end_stone_bricks'}.png new file mode 100644 index 00000000..b960e677 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_end_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_gilded_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_gilded_blackstone_bricks'}.png new file mode 100644 index 00000000..d914d216 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_gilded_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_glowstone_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_glowstone_lantern'}.png new file mode 100644 index 00000000..39df021a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_glowstone_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_granite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_granite_bricks'}.png new file mode 100644 index 00000000..b048cace Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_granite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_ice_bricks'}.png new file mode 100644 index 00000000..ea2494ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_lapis_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_lapis_block_bricks'}.png new file mode 100644 index 00000000..955b2ca1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_lapis_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_lodestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_lodestone_bricks'}.png new file mode 100644 index 00000000..33dac1d6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_lodestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_magma_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_magma_block_bricks'}.png new file mode 100644 index 00000000..87f61068 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_magma_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_mossy_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_mossy_cobblestone_bricks'}.png new file mode 100644 index 00000000..b2ea9caf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_mossy_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_mossy_stone_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_mossy_stone_bricks_bricks'}.png new file mode 100644 index 00000000..75ca5a32 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_mossy_stone_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_mud_bricks'}.png new file mode 100644 index 00000000..7de4b218 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_mud_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_mud_bricks_bricks'}.png new file mode 100644 index 00000000..0f960593 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_mud_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_nether_bricks_bricks'}.png new file mode 100644 index 00000000..0f988121 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_netherrack_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_netherrack_bricks'}.png new file mode 100644 index 00000000..016ac776 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_netherrack_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_obsidian_bricks'}.png new file mode 100644 index 00000000..4a06d5ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_packed_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_packed_ice_bricks'}.png new file mode 100644 index 00000000..a1f89717 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_packed_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_packed_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_packed_mud_bricks'}.png new file mode 100644 index 00000000..1c239b62 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_packed_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_prismarine_bricks'}.png new file mode 100644 index 00000000..443278ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_purpur_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_purpur_block_bricks'}.png new file mode 100644 index 00000000..8ae96a23 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_purpur_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_quartz_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_quartz_block_bricks'}.png new file mode 100644 index 00000000..12872128 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_quartz_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_raw_copper_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_raw_copper_block_bricks'}.png new file mode 100644 index 00000000..cd902c3e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_raw_copper_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_raw_gold_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_raw_gold_block_bricks'}.png new file mode 100644 index 00000000..c1dd6d1d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_raw_gold_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_raw_iron_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_raw_iron_block_bricks'}.png new file mode 100644 index 00000000..e6add0e9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_raw_iron_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_red_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_red_nether_bricks_bricks'}.png new file mode 100644 index 00000000..ade3168d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_red_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_red_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_red_sandstone_bricks'}.png new file mode 100644 index 00000000..44891280 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_red_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_redstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_redstone_block_bricks'}.png new file mode 100644 index 00000000..3b2c00f6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_redstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_redstone_lamp'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_redstone_lamp'}.png new file mode 100644 index 00000000..6b2461b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_redstone_lamp'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_sandstone_bricks'}.png new file mode 100644 index 00000000..bb8f3b70 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_shroomlight_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_shroomlight_lantern'}.png new file mode 100644 index 00000000..8e394f71 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_shroomlight_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_smooth_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_smooth_stone_bricks'}.png new file mode 100644 index 00000000..4c7035b4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_smooth_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_snow_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_snow_block_bricks'}.png new file mode 100644 index 00000000..e918f778 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_snow_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stone_bricks'}.png new file mode 100644 index 00000000..05329bef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_acacia_log'}.png new file mode 100644 index 00000000..90e8cf33 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_birch_log'}.png new file mode 100644 index 00000000..c30df2b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_cherry_log'}.png new file mode 100644 index 00000000..3525a6c7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_crimson_stem'}.png new file mode 100644 index 00000000..e9806b64 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_dark_oak_log'}.png new file mode 100644 index 00000000..98532d72 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_jungle_log'}.png new file mode 100644 index 00000000..2fd94b59 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_mangrove_log'}.png new file mode 100644 index 00000000..cee4acb7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_oak_log'}.png new file mode 100644 index 00000000..1afb9da3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_spruce_log'}.png new file mode 100644 index 00000000..067ac78c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_warped_stem'}.png new file mode 100644 index 00000000..aab7f278 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_stripped_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_tuff_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_tuff_bricks'}.png new file mode 100644 index 00000000..33741efb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_tuff_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_white_redstone_lamp'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_white_redstone_lamp'}.png new file mode 100644 index 00000000..421b3cca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__edged_white_redstone_lamp'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__elemental_ochre_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__elemental_ochre_froglight'}.png new file mode 100644 index 00000000..7b754d4d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__elemental_ochre_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__elemental_pearlescent_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__elemental_pearlescent_froglight'}.png new file mode 100644 index 00000000..452d4264 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__elemental_pearlescent_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__elemental_verdant_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__elemental_verdant_froglight'}.png new file mode 100644 index 00000000..1c43f2e6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__elemental_verdant_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__embossed_diamond_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__embossed_diamond_block'}.png new file mode 100644 index 00000000..9298f6b5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__embossed_diamond_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__embossed_emerald_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__embossed_emerald_block'}.png new file mode 100644 index 00000000..a9c3ca06 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__embossed_emerald_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__embossed_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__embossed_gold_block'}.png new file mode 100644 index 00000000..55d9bb37 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__embossed_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__embossed_netherite_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__embossed_netherite_block'}.png new file mode 100644 index 00000000..52ea64f3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__embossed_netherite_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__embossed_waxed_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__embossed_waxed_copper_block'}.png new file mode 100644 index 00000000..ff9dd0c8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__embossed_waxed_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__embossed_waxed_exposed_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__embossed_waxed_exposed_copper'}.png new file mode 100644 index 00000000..2c8c72aa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__embossed_waxed_exposed_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__embossed_waxed_oxidized_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__embossed_waxed_oxidized_copper'}.png new file mode 100644 index 00000000..6ef3d772 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__embossed_waxed_oxidized_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__embossed_waxed_weathered_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__embossed_waxed_weathered_copper'}.png new file mode 100644 index 00000000..5d888494 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__embossed_waxed_weathered_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__emerald_block_panels'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__emerald_block_panels'}.png new file mode 100644 index 00000000..773a5a87 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__emerald_block_panels'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_acacia_planks'}.png new file mode 100644 index 00000000..e9102dcd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_bamboo_planks'}.png new file mode 100644 index 00000000..79e37489 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_birch_planks'}.png new file mode 100644 index 00000000..e46b99e5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_cherry_planks'}.png new file mode 100644 index 00000000..c3b0d653 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_crimson_planks'}.png new file mode 100644 index 00000000..fa0e4ac6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_dark_oak_planks'}.png new file mode 100644 index 00000000..c427843a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_jungle_planks'}.png new file mode 100644 index 00000000..e858461d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_mangrove_planks'}.png new file mode 100644 index 00000000..c3a562d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_oak_planks'}.png new file mode 100644 index 00000000..c22313da Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_spruce_planks'}.png new file mode 100644 index 00000000..14697a09 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_warped_planks'}.png new file mode 100644 index 00000000..c13c3cbd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__enclosed_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_carved_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_carved_pumpkin'}.png new file mode 100644 index 00000000..ccf1fce7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_carved_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_jack_o_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_jack_o_lantern'}.png new file mode 100644 index 00000000..ccf1fce7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_jack_o_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_pumpkin'}.png new file mode 100644 index 00000000..ccf1fce7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_pumpkin_purple'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_pumpkin_purple'}.png new file mode 100644 index 00000000..094ef3c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_pumpkin_purple'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_purple_carved_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_purple_carved_pumpkin'}.png new file mode 100644 index 00000000..094ef3c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_purple_carved_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_purple_jack_o_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_purple_jack_o_lantern'}.png new file mode 100644 index 00000000..094ef3c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_purple_jack_o_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_stone_bricks'}.png new file mode 100644 index 00000000..bc97eb0c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_stone_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_stone_mini_tiles'}.png new file mode 100644 index 00000000..2bffacdf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_stone_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_stone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_stone_pillar'}.png new file mode 100644 index 00000000..284e6827 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_stone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_stone_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_stone_pillar_top'}.png new file mode 100644 index 00000000..8a19a172 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_stone_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_stone_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_stone_scales'}.png new file mode 100644 index 00000000..3602404b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__end_stone_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_amethyst_block'}.png new file mode 100644 index 00000000..188ff9e6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_ancient_debris'}.png new file mode 100644 index 00000000..52769cc3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_andesite'}.png new file mode 100644 index 00000000..5e7aa4d1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_basalt'}.png new file mode 100644 index 00000000..538f698b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_blackstone'}.png new file mode 100644 index 00000000..de547be5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_blue_ice'}.png new file mode 100644 index 00000000..70c75112 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_borderless_bricks'}.png new file mode 100644 index 00000000..92a33b18 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_bricks'}.png new file mode 100644 index 00000000..4ab6d616 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_calcite'}.png new file mode 100644 index 00000000..a03d811a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_clay'}.png new file mode 100644 index 00000000..a5b8247d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_coal_block'}.png new file mode 100644 index 00000000..c5593dc8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_cobblestone'}.png new file mode 100644 index 00000000..7fcfc5fd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_crying_obsidian'}.png new file mode 100644 index 00000000..0fa3b27a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_dark_prismarine'}.png new file mode 100644 index 00000000..03e508ce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_deepslate'}.png new file mode 100644 index 00000000..6cff062c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_diamond_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_diamond_block'}.png new file mode 100644 index 00000000..c58bef95 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_diamond_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_diorite'}.png new file mode 100644 index 00000000..6bef9a4a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_dirt'}.png new file mode 100644 index 00000000..a0fbf094 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_dripstone_block'}.png new file mode 100644 index 00000000..abe33d75 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_emerald_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_emerald_block'}.png new file mode 100644 index 00000000..858ba2bc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_emerald_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_end_stone'}.png new file mode 100644 index 00000000..1f877c05 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_gilded_blackstone'}.png new file mode 100644 index 00000000..3d78039d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_gold_block'}.png new file mode 100644 index 00000000..40e08d58 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_granite'}.png new file mode 100644 index 00000000..acb4dffd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_ice'}.png new file mode 100644 index 00000000..18c648cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_iron_block'}.png new file mode 100644 index 00000000..ef187086 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_lapis_block'}.png new file mode 100644 index 00000000..59615ebb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_lodestone'}.png new file mode 100644 index 00000000..7baa93e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_magma_block'}.png new file mode 100644 index 00000000..2ab9b0ae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_mossy_cobblestone'}.png new file mode 100644 index 00000000..a84d984d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_mossy_stone_bricks'}.png new file mode 100644 index 00000000..f4f35c07 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_mud'}.png new file mode 100644 index 00000000..f362bd22 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_mud_bricks'}.png new file mode 100644 index 00000000..c6532c3d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_nether_bricks'}.png new file mode 100644 index 00000000..1f069c3c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_netherite_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_netherite_block'}.png new file mode 100644 index 00000000..7e71bd24 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_netherite_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_netherrack'}.png new file mode 100644 index 00000000..e212d3cc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_obsidian'}.png new file mode 100644 index 00000000..43aaa648 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_packed_ice'}.png new file mode 100644 index 00000000..305f22f5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_packed_mud'}.png new file mode 100644 index 00000000..d2b9a323 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_prismarine'}.png new file mode 100644 index 00000000..3e71e68f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_purpur_block'}.png new file mode 100644 index 00000000..34089ba8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_quartz_block'}.png new file mode 100644 index 00000000..5566deb3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_raw_copper_block'}.png new file mode 100644 index 00000000..bf15d0e2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_raw_gold_block'}.png new file mode 100644 index 00000000..66b45b84 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_raw_iron_block'}.png new file mode 100644 index 00000000..b3d3b5c0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_red_nether_bricks'}.png new file mode 100644 index 00000000..e144f33b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_red_sandstone'}.png new file mode 100644 index 00000000..f6fe361e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_redstone_block'}.png new file mode 100644 index 00000000..967e8a39 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_sandstone'}.png new file mode 100644 index 00000000..41d7e6a7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_smooth_stone'}.png new file mode 100644 index 00000000..de31cefe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_snow_block'}.png new file mode 100644 index 00000000..24bb2c26 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_stone'}.png new file mode 100644 index 00000000..a8c3a30d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_tuff'}.png new file mode 100644 index 00000000..f0d7075d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_waxed_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_waxed_copper_block'}.png new file mode 100644 index 00000000..e8a306bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_waxed_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_waxed_exposed_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_waxed_exposed_copper'}.png new file mode 100644 index 00000000..08dc3402 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_waxed_exposed_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_waxed_oxidized_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_waxed_oxidized_copper'}.png new file mode 100644 index 00000000..a20d9b75 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_waxed_oxidized_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_waxed_weathered_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_waxed_weathered_copper'}.png new file mode 100644 index 00000000..cac23a34 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__engraved_waxed_weathered_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_amethyst_block'}.png new file mode 100644 index 00000000..6ce79308 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_ancient_debris'}.png new file mode 100644 index 00000000..fabf4fa4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_andesite'}.png new file mode 100644 index 00000000..30703133 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_basalt'}.png new file mode 100644 index 00000000..633c8422 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_blackstone'}.png new file mode 100644 index 00000000..4fbae99a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_blue_ice'}.png new file mode 100644 index 00000000..9c7ecd3b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_borderless_bricks'}.png new file mode 100644 index 00000000..eeeec3a3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_bricks'}.png new file mode 100644 index 00000000..eeeec3a3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_calcite'}.png new file mode 100644 index 00000000..ba245602 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_coal_block'}.png new file mode 100644 index 00000000..bfa8865d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_cobblestone'}.png new file mode 100644 index 00000000..4660fa1e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_crying_obsidian'}.png new file mode 100644 index 00000000..28522376 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_dark_prismarine'}.png new file mode 100644 index 00000000..22c1824b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_deepslate'}.png new file mode 100644 index 00000000..1c6011b0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_diorite'}.png new file mode 100644 index 00000000..fe246c57 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_dirt'}.png new file mode 100644 index 00000000..887b15e9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_dripstone_block'}.png new file mode 100644 index 00000000..64b39941 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_end_stone'}.png new file mode 100644 index 00000000..69ab4971 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_gilded_blackstone'}.png new file mode 100644 index 00000000..454fc338 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_granite'}.png new file mode 100644 index 00000000..61bbfe4f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_ice'}.png new file mode 100644 index 00000000..df428dca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_lapis_block'}.png new file mode 100644 index 00000000..4e4728cd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_lodestone'}.png new file mode 100644 index 00000000..4a8f40d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_magma_block'}.png new file mode 100644 index 00000000..91dd3fe1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_mossy_cobblestone'}.png new file mode 100644 index 00000000..3423e7cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_mossy_stone_bricks'}.png new file mode 100644 index 00000000..ccca1930 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_nether_bricks'}.png new file mode 100644 index 00000000..7b694cf1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_netherrack'}.png new file mode 100644 index 00000000..2eec25ca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_obsidian'}.png new file mode 100644 index 00000000..ee2fc7ea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_packed_ice'}.png new file mode 100644 index 00000000..19d87ba1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_prismarine'}.png new file mode 100644 index 00000000..a49392f5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_purpur_block'}.png new file mode 100644 index 00000000..d915bb9e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_quartz_block'}.png new file mode 100644 index 00000000..6a73979c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_raw_copper_block'}.png new file mode 100644 index 00000000..c5d4677f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_raw_gold_block'}.png new file mode 100644 index 00000000..6db51755 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_raw_iron_block'}.png new file mode 100644 index 00000000..b6c486f6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_red_nether_bricks'}.png new file mode 100644 index 00000000..7f445a22 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_red_sandstone'}.png new file mode 100644 index 00000000..22e0e2ef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_redstone_block'}.png new file mode 100644 index 00000000..32966e17 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_sandstone'}.png new file mode 100644 index 00000000..b529dd3c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_smooth_stone'}.png new file mode 100644 index 00000000..854f8751 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_snow_block'}.png new file mode 100644 index 00000000..201b949a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_tuff'}.png new file mode 100644 index 00000000..32798cc3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eroded_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__erratic_nether_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__erratic_nether_wart_block'}.png new file mode 100644 index 00000000..bb4550fe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__erratic_nether_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__erratic_warped_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__erratic_warped_wart_block'}.png new file mode 100644 index 00000000..0df1ec7b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__erratic_warped_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_amethyst_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_amethyst_block_bricks'}.png new file mode 100644 index 00000000..b9d7b026 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_amethyst_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_ancient_debris_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_ancient_debris_bricks'}.png new file mode 100644 index 00000000..5c8bac62 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_ancient_debris_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_andesite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_andesite_bricks'}.png new file mode 100644 index 00000000..0227d2cd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_andesite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_basalt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_basalt_bricks'}.png new file mode 100644 index 00000000..516dfa4e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_basalt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_blackstone_bricks'}.png new file mode 100644 index 00000000..012203b8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_blue_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_blue_ice_bricks'}.png new file mode 100644 index 00000000..4753ccb1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_blue_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_borderless_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_borderless_bricks_bricks'}.png new file mode 100644 index 00000000..d79279fa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_borderless_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_bricks_bricks'}.png new file mode 100644 index 00000000..a3cf626a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_calcite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_calcite_bricks'}.png new file mode 100644 index 00000000..9728d52f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_calcite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_clay_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_clay_bricks'}.png new file mode 100644 index 00000000..e3eb63d5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_clay_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_coal_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_coal_block_bricks'}.png new file mode 100644 index 00000000..d06ed7a8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_coal_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_cobblestone_bricks'}.png new file mode 100644 index 00000000..0ee8e1be Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_crying_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_crying_obsidian_bricks'}.png new file mode 100644 index 00000000..a6acef0d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_crying_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_dark_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_dark_prismarine_bricks'}.png new file mode 100644 index 00000000..0d1bbc95 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_dark_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_deepslate_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_deepslate_bricks'}.png new file mode 100644 index 00000000..ed5a59e5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_deepslate_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_diorite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_diorite_bricks'}.png new file mode 100644 index 00000000..67f83fca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_diorite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_dirt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_dirt_bricks'}.png new file mode 100644 index 00000000..5eaf1d59 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_dirt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_dripstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_dripstone_block_bricks'}.png new file mode 100644 index 00000000..31b393cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_dripstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_end_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_end_stone_bricks'}.png new file mode 100644 index 00000000..7161b5db Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_end_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_gilded_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_gilded_blackstone_bricks'}.png new file mode 100644 index 00000000..280d2c1d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_gilded_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_granite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_granite_bricks'}.png new file mode 100644 index 00000000..058af83f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_granite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_ice_bricks'}.png new file mode 100644 index 00000000..23b1ac84 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_lapis_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_lapis_block_bricks'}.png new file mode 100644 index 00000000..7f49e401 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_lapis_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_lodestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_lodestone_bricks'}.png new file mode 100644 index 00000000..bccfef9c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_lodestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_magma_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_magma_block_bricks'}.png new file mode 100644 index 00000000..7c24ade3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_magma_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_mossy_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_mossy_cobblestone_bricks'}.png new file mode 100644 index 00000000..d87e0db1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_mossy_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_mossy_stone_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_mossy_stone_bricks_bricks'}.png new file mode 100644 index 00000000..bfc9e2d3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_mossy_stone_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_mud_bricks'}.png new file mode 100644 index 00000000..1ccddd2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_mud_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_mud_bricks_bricks'}.png new file mode 100644 index 00000000..466ef646 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_mud_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_nether_bricks_bricks'}.png new file mode 100644 index 00000000..b3611f7e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_netherrack_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_netherrack_bricks'}.png new file mode 100644 index 00000000..85db2da8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_netherrack_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_obsidian_bricks'}.png new file mode 100644 index 00000000..a204fede Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_packed_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_packed_ice_bricks'}.png new file mode 100644 index 00000000..cadd6574 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_packed_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_packed_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_packed_mud_bricks'}.png new file mode 100644 index 00000000..6a0c3e90 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_packed_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_prismarine_bricks'}.png new file mode 100644 index 00000000..a50716e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_purpur_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_purpur_block_bricks'}.png new file mode 100644 index 00000000..b6ccd76c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_purpur_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_quartz_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_quartz_block_bricks'}.png new file mode 100644 index 00000000..3f2a85ea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_quartz_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_raw_copper_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_raw_copper_block_bricks'}.png new file mode 100644 index 00000000..6c19ee7c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_raw_copper_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_raw_gold_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_raw_gold_block_bricks'}.png new file mode 100644 index 00000000..cf94cc1f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_raw_gold_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_raw_iron_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_raw_iron_block_bricks'}.png new file mode 100644 index 00000000..81c1e304 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_raw_iron_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_red_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_red_nether_bricks_bricks'}.png new file mode 100644 index 00000000..49bc6bf9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_red_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_red_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_red_sandstone_bricks'}.png new file mode 100644 index 00000000..00ab2067 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_red_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_redstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_redstone_block_bricks'}.png new file mode 100644 index 00000000..6a184adc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_redstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_sandstone_bricks'}.png new file mode 100644 index 00000000..d18096fb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_smooth_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_smooth_stone_bricks'}.png new file mode 100644 index 00000000..3677d805 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_smooth_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_snow_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_snow_block_bricks'}.png new file mode 100644 index 00000000..538cd82e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_snow_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_stone_bricks'}.png new file mode 100644 index 00000000..eb9fa3b9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_tuff_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_tuff_bricks'}.png new file mode 100644 index 00000000..b6c48bd7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__etched_tuff_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__exposed_ochre_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__exposed_ochre_froglight'}.png new file mode 100644 index 00000000..c1231d5b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__exposed_ochre_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__exposed_pearlescent_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__exposed_pearlescent_froglight'}.png new file mode 100644 index 00000000..76b38b2f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__exposed_pearlescent_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__exposed_verdant_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__exposed_verdant_froglight'}.png new file mode 100644 index 00000000..870aaf21 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__exposed_verdant_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eye_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eye_mud'}.png new file mode 100644 index 00000000..ae6dd5c8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eye_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eye_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eye_mud_bricks'}.png new file mode 100644 index 00000000..b29b49ff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eye_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eye_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eye_packed_mud'}.png new file mode 100644 index 00000000..8a0fa4a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eye_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eyed_nether_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eyed_nether_wart_block'}.png new file mode 100644 index 00000000..de5b6282 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eyed_nether_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eyed_warped_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eyed_warped_wart_block'}.png new file mode 100644 index 00000000..8705cd45 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__eyed_warped_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_acacia_log'}.png new file mode 100644 index 00000000..e8cee166 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_birch_log'}.png new file mode 100644 index 00000000..5722fe3e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_cherry_log'}.png new file mode 100644 index 00000000..d8d2a6b5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_crimson_stem'}.png new file mode 100644 index 00000000..c33ac178 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_dark_oak_log'}.png new file mode 100644 index 00000000..b5f731c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_jungle_log'}.png new file mode 100644 index 00000000..c130eedf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_mangrove_log'}.png new file mode 100644 index 00000000..f0463fed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_oak_log'}.png new file mode 100644 index 00000000..c2253474 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_spruce_log'}.png new file mode 100644 index 00000000..662457a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_warped_stem'}.png new file mode 100644 index 00000000..c664bfc4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__f_sign_stripped_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_black_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_black_stained_glass'}.png new file mode 100644 index 00000000..45550c34 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_black_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_blue_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_blue_stained_glass'}.png new file mode 100644 index 00000000..ce9a7815 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_blue_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_brown_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_brown_stained_glass'}.png new file mode 100644 index 00000000..38841daf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_brown_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_chiseled_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_chiseled_mud'}.png new file mode 100644 index 00000000..54b0cacb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_chiseled_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_chiseled_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_chiseled_mud_bricks'}.png new file mode 100644 index 00000000..0aaa1ee2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_chiseled_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_chiseled_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_chiseled_packed_mud'}.png new file mode 100644 index 00000000..b9cc50e3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_chiseled_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_cyan_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_cyan_stained_glass'}.png new file mode 100644 index 00000000..60628f0f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_cyan_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_glowstone_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_glowstone_lantern'}.png new file mode 100644 index 00000000..b5d43598 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_glowstone_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_gray_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_gray_stained_glass'}.png new file mode 100644 index 00000000..090a3646 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_gray_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_green_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_green_stained_glass'}.png new file mode 100644 index 00000000..636fd5e9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_green_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_leaded_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_leaded_glass'}.png new file mode 100644 index 00000000..18234543 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_leaded_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_light_blue_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_light_blue_stained_glass'}.png new file mode 100644 index 00000000..06439503 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_light_blue_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_light_gray_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_light_gray_stained_glass'}.png new file mode 100644 index 00000000..7104ac32 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_light_gray_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_lime_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_lime_stained_glass'}.png new file mode 100644 index 00000000..2592e239 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_lime_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_magenta_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_magenta_stained_glass'}.png new file mode 100644 index 00000000..ab771850 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_magenta_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_mud'}.png new file mode 100644 index 00000000..ecaf20b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_mud_bricks'}.png new file mode 100644 index 00000000..4ca5234a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_mud_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_mud_bricks_pillar'}.png new file mode 100644 index 00000000..000bcfc7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_mud_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_mud_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_mud_pillar'}.png new file mode 100644 index 00000000..ab4696dc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_mud_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_orange_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_orange_stained_glass'}.png new file mode 100644 index 00000000..83291bcb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_orange_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_packed_mud'}.png new file mode 100644 index 00000000..8bc4d3f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_packed_mud_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_packed_mud_pillar'}.png new file mode 100644 index 00000000..be3a9f4d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_packed_mud_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_pink_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_pink_stained_glass'}.png new file mode 100644 index 00000000..8d500888 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_pink_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_purple_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_purple_stained_glass'}.png new file mode 100644 index 00000000..a1e1aa90 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_purple_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_red_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_red_stained_glass'}.png new file mode 100644 index 00000000..e28a235b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_red_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_redstone_lamp'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_redstone_lamp'}.png new file mode 100644 index 00000000..5014706e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_redstone_lamp'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_sea_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_sea_lantern'}.png new file mode 100644 index 00000000..b5004f91 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_sea_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_shroomlight_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_shroomlight_lantern'}.png new file mode 100644 index 00000000..d35a5d86 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_shroomlight_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_white_redstone_lamp'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_white_redstone_lamp'}.png new file mode 100644 index 00000000..19614954 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_white_redstone_lamp'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_white_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_white_stained_glass'}.png new file mode 100644 index 00000000..3cf6ee55 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_white_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_yellow_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_yellow_stained_glass'}.png new file mode 100644 index 00000000..8f78db3b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fancy_yellow_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fertile_hay_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fertile_hay_block'}.png new file mode 100644 index 00000000..d847341e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fertile_hay_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_acacia_planks'}.png new file mode 100644 index 00000000..232203f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_amethyst_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_amethyst_block_pillar'}.png new file mode 100644 index 00000000..001d7e62 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_amethyst_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_ancient_debris_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_ancient_debris_pillar'}.png new file mode 100644 index 00000000..80de963c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_ancient_debris_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_andesite_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_andesite_pillar'}.png new file mode 100644 index 00000000..9ab36075 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_andesite_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_bamboo_planks'}.png new file mode 100644 index 00000000..de0be396 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_basalt_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_basalt_pillar'}.png new file mode 100644 index 00000000..73c06827 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_basalt_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_birch_planks'}.png new file mode 100644 index 00000000..f4de9e92 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_blackstone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_blackstone_pillar'}.png new file mode 100644 index 00000000..d5555182 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_blackstone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_blue_ice_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_blue_ice_pillar'}.png new file mode 100644 index 00000000..024c79c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_blue_ice_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_borderless_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_borderless_bricks_pillar'}.png new file mode 100644 index 00000000..1d2eb0bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_borderless_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_bricks_pillar'}.png new file mode 100644 index 00000000..246974be Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_calcite_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_calcite_pillar'}.png new file mode 100644 index 00000000..5e90b231 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_calcite_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_cherry_planks'}.png new file mode 100644 index 00000000..0789f2f1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_clay_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_clay_pillar'}.png new file mode 100644 index 00000000..0e19aa00 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_clay_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_coal_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_coal_block_pillar'}.png new file mode 100644 index 00000000..6b2ad2a9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_coal_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_cobblestone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_cobblestone_pillar'}.png new file mode 100644 index 00000000..05163046 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_cobblestone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_crimson_planks'}.png new file mode 100644 index 00000000..1ea1b77a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_crying_obsidian_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_crying_obsidian_pillar'}.png new file mode 100644 index 00000000..9f9c943e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_crying_obsidian_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_dark_oak_planks'}.png new file mode 100644 index 00000000..d44d52af Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_dark_prismarine_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_dark_prismarine_pillar'}.png new file mode 100644 index 00000000..136cbaea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_dark_prismarine_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_deepslate_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_deepslate_pillar'}.png new file mode 100644 index 00000000..c360b7ce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_deepslate_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_diorite_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_diorite_pillar'}.png new file mode 100644 index 00000000..39525239 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_diorite_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_dirt_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_dirt_pillar'}.png new file mode 100644 index 00000000..b90f4720 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_dirt_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_dripstone_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_dripstone_block_pillar'}.png new file mode 100644 index 00000000..99635709 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_dripstone_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_end_stone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_end_stone_pillar'}.png new file mode 100644 index 00000000..d0313218 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_end_stone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_gilded_blackstone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_gilded_blackstone_pillar'}.png new file mode 100644 index 00000000..400d5ff0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_gilded_blackstone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_granite_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_granite_pillar'}.png new file mode 100644 index 00000000..998bca96 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_granite_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_ice_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_ice_pillar'}.png new file mode 100644 index 00000000..268d14b3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_ice_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_jungle_planks'}.png new file mode 100644 index 00000000..827caa62 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_lapis_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_lapis_block_pillar'}.png new file mode 100644 index 00000000..2e25d572 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_lapis_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_lodestone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_lodestone_pillar'}.png new file mode 100644 index 00000000..2daccc9d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_lodestone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_magma_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_magma_block_pillar'}.png new file mode 100644 index 00000000..5bbb8ebe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_magma_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_mangrove_planks'}.png new file mode 100644 index 00000000..3db525eb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_mossy_cobblestone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_mossy_cobblestone_pillar'}.png new file mode 100644 index 00000000..a16de2a5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_mossy_cobblestone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_mossy_stone_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_mossy_stone_bricks_pillar'}.png new file mode 100644 index 00000000..21fd9c87 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_mossy_stone_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_mud_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_mud_bricks_pillar'}.png new file mode 100644 index 00000000..c7f95286 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_mud_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_mud_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_mud_pillar'}.png new file mode 100644 index 00000000..7ddbef88 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_mud_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_nether_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_nether_bricks_pillar'}.png new file mode 100644 index 00000000..062ea85a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_nether_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_netherrack_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_netherrack_pillar'}.png new file mode 100644 index 00000000..6f2b78e7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_netherrack_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_oak_planks'}.png new file mode 100644 index 00000000..ce741559 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_obsidian_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_obsidian_pillar'}.png new file mode 100644 index 00000000..0e7a5f26 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_obsidian_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_packed_ice_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_packed_ice_pillar'}.png new file mode 100644 index 00000000..837f2454 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_packed_ice_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_packed_mud_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_packed_mud_pillar'}.png new file mode 100644 index 00000000..b22ed2a0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_packed_mud_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_prismarine_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_prismarine_pillar'}.png new file mode 100644 index 00000000..46fa165d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_prismarine_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_purpur_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_purpur_block_pillar'}.png new file mode 100644 index 00000000..e050e391 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_purpur_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_quartz_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_quartz_block_pillar'}.png new file mode 100644 index 00000000..d751d6d8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_quartz_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_raw_copper_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_raw_copper_block_pillar'}.png new file mode 100644 index 00000000..2ecf2d57 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_raw_copper_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_raw_gold_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_raw_gold_block_pillar'}.png new file mode 100644 index 00000000..2b3f4c6c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_raw_gold_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_raw_iron_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_raw_iron_block_pillar'}.png new file mode 100644 index 00000000..451bb45d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_raw_iron_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_red_nether_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_red_nether_bricks_pillar'}.png new file mode 100644 index 00000000..29c29de1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_red_nether_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_red_sandstone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_red_sandstone_pillar'}.png new file mode 100644 index 00000000..ab78c7a5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_red_sandstone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_redstone_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_redstone_block_pillar'}.png new file mode 100644 index 00000000..7a3e678a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_redstone_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_sandstone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_sandstone_pillar'}.png new file mode 100644 index 00000000..ff179b37 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_sandstone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_smooth_stone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_smooth_stone_pillar'}.png new file mode 100644 index 00000000..432f1c11 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_smooth_stone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_snow_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_snow_block_pillar'}.png new file mode 100644 index 00000000..4536edfd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_snow_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_sponge'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_sponge'}.png new file mode 100644 index 00000000..4826f287 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_sponge'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_spruce_planks'}.png new file mode 100644 index 00000000..ec528d95 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_stone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_stone_pillar'}.png new file mode 100644 index 00000000..7cd9d27b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_stone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_tuff_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_tuff_pillar'}.png new file mode 100644 index 00000000..893e9b49 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_tuff_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_acacia_planks'}.png new file mode 100644 index 00000000..8c1ac066 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_bamboo_planks'}.png new file mode 100644 index 00000000..f91e7017 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_birch_planks'}.png new file mode 100644 index 00000000..17b55612 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_cherry_planks'}.png new file mode 100644 index 00000000..b3d27182 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_crimson_planks'}.png new file mode 100644 index 00000000..f9b98630 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_dark_oak_planks'}.png new file mode 100644 index 00000000..317bd1a1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_jungle_planks'}.png new file mode 100644 index 00000000..d059d501 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_mangrove_planks'}.png new file mode 100644 index 00000000..2c906525 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_oak_planks'}.png new file mode 100644 index 00000000..d615bbe2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_spruce_planks'}.png new file mode 100644 index 00000000..3988f2f4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_warped_planks'}.png new file mode 100644 index 00000000..29a00f24 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_vertical_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_warped_planks'}.png new file mode 100644 index 00000000..0d8a358f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fine_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_acacia_log'}.png new file mode 100644 index 00000000..496713c7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_birch_log'}.png new file mode 100644 index 00000000..f68dad9d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_cherry_log'}.png new file mode 100644 index 00000000..190d4e07 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_crimson_stem'}.png new file mode 100644 index 00000000..5c37b0d1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_dark_oak_log'}.png new file mode 100644 index 00000000..84f42382 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_jungle_log'}.png new file mode 100644 index 00000000..0dcc5253 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_mangrove_log'}.png new file mode 100644 index 00000000..da7751c9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_oak_log'}.png new file mode 100644 index 00000000..6355207f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_spruce_log'}.png new file mode 100644 index 00000000..bdc5bc41 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_warped_stem'}.png new file mode 100644 index 00000000..422ee6a7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__firewood_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_amethyst_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_amethyst_block_tiles'}.png new file mode 100644 index 00000000..de6cdf88 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_amethyst_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_ancient_debris_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_ancient_debris_tiles'}.png new file mode 100644 index 00000000..28c3b28a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_ancient_debris_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_andesite_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_andesite_tiles'}.png new file mode 100644 index 00000000..0ee7f4b8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_andesite_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_basalt_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_basalt_tiles'}.png new file mode 100644 index 00000000..1087761f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_basalt_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_blackstone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_blackstone_tiles'}.png new file mode 100644 index 00000000..d832b9be Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_blackstone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_blue_ice_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_blue_ice_tiles'}.png new file mode 100644 index 00000000..82a04f88 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_blue_ice_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_borderless_bricks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_borderless_bricks_tiles'}.png new file mode 100644 index 00000000..35d99e05 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_borderless_bricks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_bricks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_bricks_tiles'}.png new file mode 100644 index 00000000..7e5d9b9c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_bricks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_calcite_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_calcite_tiles'}.png new file mode 100644 index 00000000..eda338b3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_calcite_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_clay_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_clay_tiles'}.png new file mode 100644 index 00000000..600ba504 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_clay_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_coal_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_coal_block_tiles'}.png new file mode 100644 index 00000000..e9dca188 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_coal_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_cobblestone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_cobblestone_tiles'}.png new file mode 100644 index 00000000..ede4d741 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_cobblestone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_crying_obsidian_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_crying_obsidian_tiles'}.png new file mode 100644 index 00000000..3167a778 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_crying_obsidian_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_dark_prismarine_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_dark_prismarine_tiles'}.png new file mode 100644 index 00000000..079cd3db Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_dark_prismarine_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_diorite_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_diorite_tiles'}.png new file mode 100644 index 00000000..edb507cc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_diorite_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_dirt_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_dirt_tiles'}.png new file mode 100644 index 00000000..fb7948d6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_dirt_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_dripstone_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_dripstone_block_tiles'}.png new file mode 100644 index 00000000..84d0b523 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_dripstone_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_end_stone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_end_stone_tiles'}.png new file mode 100644 index 00000000..8cda67db Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_end_stone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_gilded_blackstone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_gilded_blackstone_tiles'}.png new file mode 100644 index 00000000..51e91cac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_gilded_blackstone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_granite_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_granite_tiles'}.png new file mode 100644 index 00000000..71cccd7f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_granite_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_ice_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_ice_tiles'}.png new file mode 100644 index 00000000..32a18583 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_ice_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_lapis_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_lapis_block_tiles'}.png new file mode 100644 index 00000000..cf3121bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_lapis_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_lodestone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_lodestone_tiles'}.png new file mode 100644 index 00000000..cc4450e9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_lodestone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_magma_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_magma_block_tiles'}.png new file mode 100644 index 00000000..7ac1e986 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_magma_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_mossy_cobblestone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_mossy_cobblestone_tiles'}.png new file mode 100644 index 00000000..5d9fd7d1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_mossy_cobblestone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_mossy_stone_bricks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_mossy_stone_bricks_tiles'}.png new file mode 100644 index 00000000..09492fb4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_mossy_stone_bricks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_nether_bricks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_nether_bricks_tiles'}.png new file mode 100644 index 00000000..c19d9212 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_nether_bricks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_netherrack_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_netherrack_tiles'}.png new file mode 100644 index 00000000..55396f02 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_netherrack_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_obsidian_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_obsidian_tiles'}.png new file mode 100644 index 00000000..6382efbb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_obsidian_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_packed_ice_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_packed_ice_tiles'}.png new file mode 100644 index 00000000..e402755d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_packed_ice_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_prismarine_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_prismarine_tiles'}.png new file mode 100644 index 00000000..5db79f9e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_prismarine_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_purpur_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_purpur_block_tiles'}.png new file mode 100644 index 00000000..dbe4f6b2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_purpur_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_quartz_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_quartz_block_tiles'}.png new file mode 100644 index 00000000..c626b57f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_quartz_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_raw_copper_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_raw_copper_block_tiles'}.png new file mode 100644 index 00000000..0f6ecc98 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_raw_copper_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_raw_gold_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_raw_gold_block_tiles'}.png new file mode 100644 index 00000000..07b4cd6f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_raw_gold_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_raw_iron_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_raw_iron_block_tiles'}.png new file mode 100644 index 00000000..130e5870 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_raw_iron_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_red_nether_bricks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_red_nether_bricks_tiles'}.png new file mode 100644 index 00000000..d9966d21 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_red_nether_bricks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_red_sandstone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_red_sandstone_tiles'}.png new file mode 100644 index 00000000..16005830 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_red_sandstone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_redstone_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_redstone_block_tiles'}.png new file mode 100644 index 00000000..eeb61e76 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_redstone_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_sandstone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_sandstone_tiles'}.png new file mode 100644 index 00000000..9428e9ce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_sandstone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_smooth_stone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_smooth_stone_tiles'}.png new file mode 100644 index 00000000..f434da0d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_smooth_stone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_snow_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_snow_block_tiles'}.png new file mode 100644 index 00000000..43cc6613 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_snow_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_stone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_stone_tiles'}.png new file mode 100644 index 00000000..b4c4f104 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_stone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_tuff_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_tuff_tiles'}.png new file mode 100644 index 00000000..cc99571c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flat_tuff_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowering_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowering_acacia_log'}.png new file mode 100644 index 00000000..6c00b2cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowering_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowering_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowering_birch_log'}.png new file mode 100644 index 00000000..f3cf16fd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowering_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowering_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowering_cherry_log'}.png new file mode 100644 index 00000000..f06cf27d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowering_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowering_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowering_dark_oak_log'}.png new file mode 100644 index 00000000..cf7c4f66 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowering_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowering_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowering_jungle_log'}.png new file mode 100644 index 00000000..51ff026f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowering_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowering_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowering_mangrove_log'}.png new file mode 100644 index 00000000..1d84d0fa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowering_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowering_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowering_oak_log'}.png new file mode 100644 index 00000000..eafbf858 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowering_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowering_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowering_spruce_log'}.png new file mode 100644 index 00000000..b051171b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowering_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowery_mangrove_roots'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowery_mangrove_roots'}.png new file mode 100644 index 00000000..d633d826 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__flowery_mangrove_roots'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fractured_bone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fractured_bone_block'}.png new file mode 100644 index 00000000..5debed15 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__fractured_bone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_acacia_planks'}.png new file mode 100644 index 00000000..3a22f040 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_bamboo_planks'}.png new file mode 100644 index 00000000..2ce316c2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_birch_planks'}.png new file mode 100644 index 00000000..28d77fea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_cherry_planks'}.png new file mode 100644 index 00000000..ed7a2a1b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_crimson_planks'}.png new file mode 100644 index 00000000..77ad1f84 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_dark_oak_planks'}.png new file mode 100644 index 00000000..4a15d5b3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_glowstone_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_glowstone_lantern'}.png new file mode 100644 index 00000000..a4818bf3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_glowstone_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_jungle_planks'}.png new file mode 100644 index 00000000..3c39a7d1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_mangrove_planks'}.png new file mode 100644 index 00000000..d880eb45 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_oak_planks'}.png new file mode 100644 index 00000000..3e81d2ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_sea_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_sea_lantern'}.png new file mode 100644 index 00000000..258edfa8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_sea_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_shroomlight_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_shroomlight_lantern'}.png new file mode 100644 index 00000000..c5d47f4a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_shroomlight_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_spruce_planks'}.png new file mode 100644 index 00000000..f0b4dab2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_warped_planks'}.png new file mode 100644 index 00000000..9525cdaf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__framed_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__freckled_brown_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__freckled_brown_mushroom_block'}.png new file mode 100644 index 00000000..466c28bd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__freckled_brown_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__freckled_red_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__freckled_red_mushroom_block'}.png new file mode 100644 index 00000000..deacd21a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__freckled_red_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__frosted_acacia_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__frosted_acacia_leaves'}.png new file mode 100644 index 00000000..b7c1730f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__frosted_acacia_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__frosted_birch_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__frosted_birch_leaves'}.png new file mode 100644 index 00000000..ca4c1c16 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__frosted_birch_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__frosted_dark_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__frosted_dark_oak_leaves'}.png new file mode 100644 index 00000000..507eacc5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__frosted_dark_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__frosted_jungle_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__frosted_jungle_leaves'}.png new file mode 100644 index 00000000..0a25b548 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__frosted_jungle_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__frosted_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__frosted_oak_leaves'}.png new file mode 100644 index 00000000..bb396a1e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__frosted_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__frosted_spruce_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__frosted_spruce_leaves'}.png new file mode 100644 index 00000000..80bd7186 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__frosted_spruce_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__full_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__full_bookshelf'}.png new file mode 100644 index 00000000..2adad93c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__full_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__giant_sponge'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__giant_sponge'}.png new file mode 100644 index 00000000..f612d099 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__giant_sponge'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gilded_basalt_bone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gilded_basalt_bone_block'}.png new file mode 100644 index 00000000..5bf98a97 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gilded_basalt_bone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gilded_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gilded_blackstone_bricks'}.png new file mode 100644 index 00000000..498393a8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gilded_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gilded_blackstone_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gilded_blackstone_mini_tiles'}.png new file mode 100644 index 00000000..0abb730a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gilded_blackstone_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gilded_blackstone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gilded_blackstone_pillar'}.png new file mode 100644 index 00000000..ec6e049c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gilded_blackstone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gilded_blackstone_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gilded_blackstone_pillar_top'}.png new file mode 100644 index 00000000..9511e845 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gilded_blackstone_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gilded_blackstone_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gilded_blackstone_scales'}.png new file mode 100644 index 00000000..82dc8e43 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gilded_blackstone_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_amethyst_block'}.png new file mode 100644 index 00000000..4c19f224 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_ancient_debris'}.png new file mode 100644 index 00000000..6920b8b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_andesite'}.png new file mode 100644 index 00000000..a0300c7d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_basalt'}.png new file mode 100644 index 00000000..ad88a52a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_blackstone'}.png new file mode 100644 index 00000000..a7562d2a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_blue_ice'}.png new file mode 100644 index 00000000..c6c28a00 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_borderless_bricks'}.png new file mode 100644 index 00000000..7380a2a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_bricks'}.png new file mode 100644 index 00000000..92c74a83 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_calcite'}.png new file mode 100644 index 00000000..0d69ead0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_clay'}.png new file mode 100644 index 00000000..ddffd2a2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_coal_block'}.png new file mode 100644 index 00000000..68eb7489 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_cobblestone'}.png new file mode 100644 index 00000000..3e3889e5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_crying_obsidian'}.png new file mode 100644 index 00000000..d5417fda Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_dark_prismarine'}.png new file mode 100644 index 00000000..4900058a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_deepslate'}.png new file mode 100644 index 00000000..f0ae0347 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_diorite'}.png new file mode 100644 index 00000000..23e58de7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_dirt'}.png new file mode 100644 index 00000000..8f1d5773 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_dripstone_block'}.png new file mode 100644 index 00000000..62de76ff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_end_stone'}.png new file mode 100644 index 00000000..62da1676 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_gilded_blackstone'}.png new file mode 100644 index 00000000..22efb3c8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_granite'}.png new file mode 100644 index 00000000..51de73bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_ice'}.png new file mode 100644 index 00000000..c4c3e82c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_lapis_block'}.png new file mode 100644 index 00000000..46176a06 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_lodestone'}.png new file mode 100644 index 00000000..c837c924 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_magma_block'}.png new file mode 100644 index 00000000..ce81c950 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_mossy_cobblestone'}.png new file mode 100644 index 00000000..dca9a0eb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_mossy_stone_bricks'}.png new file mode 100644 index 00000000..7088c85b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_mud'}.png new file mode 100644 index 00000000..f895689b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_mud_bricks'}.png new file mode 100644 index 00000000..d8528624 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_nether_bricks'}.png new file mode 100644 index 00000000..81d5856a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_netherrack'}.png new file mode 100644 index 00000000..a21d2f90 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_obsidian'}.png new file mode 100644 index 00000000..e1627e27 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_packed_ice'}.png new file mode 100644 index 00000000..49b6502e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_packed_mud'}.png new file mode 100644 index 00000000..83bb7f98 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_prismarine'}.png new file mode 100644 index 00000000..67844fb1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_purpur_block'}.png new file mode 100644 index 00000000..a7c3865d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_quartz_block'}.png new file mode 100644 index 00000000..25f44df1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_raw_copper_block'}.png new file mode 100644 index 00000000..0fcd8233 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_raw_gold_block'}.png new file mode 100644 index 00000000..7dadfcfb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_raw_iron_block'}.png new file mode 100644 index 00000000..f80c6af8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_red_nether_bricks'}.png new file mode 100644 index 00000000..b8698e10 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_red_sandstone'}.png new file mode 100644 index 00000000..febd2e5d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_redstone_block'}.png new file mode 100644 index 00000000..77de807d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_sandstone'}.png new file mode 100644 index 00000000..25fd39b6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_smooth_stone'}.png new file mode 100644 index 00000000..672a59da Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_snow_block'}.png new file mode 100644 index 00000000..ed21857e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_stone'}.png new file mode 100644 index 00000000..8ad130dd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_tuff'}.png new file mode 100644 index 00000000..2c8f934b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glad_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glass_ochre_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glass_ochre_froglight'}.png new file mode 100644 index 00000000..513b2451 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glass_ochre_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glass_pearlescent_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glass_pearlescent_froglight'}.png new file mode 100644 index 00000000..bc1ae50e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glass_pearlescent_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glass_verdant_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glass_verdant_froglight'}.png new file mode 100644 index 00000000..c80b8255 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glass_verdant_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glassblower'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glassblower'}.png new file mode 100644 index 00000000..20891006 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glassblower'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glittering_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glittering_crimson_stem'}.png new file mode 100644 index 00000000..fb921e54 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glittering_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glowing_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glowing_crimson_stem'}.png new file mode 100644 index 00000000..d4d13819 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glowing_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glowing_lodestone_side'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glowing_lodestone_side'}.png new file mode 100644 index 00000000..e073f7d2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glowing_lodestone_side'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glowstone_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glowstone_lantern'}.png new file mode 100644 index 00000000..3411a084 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__glowstone_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gold_block_panels'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gold_block_panels'}.png new file mode 100644 index 00000000..292ac4cf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gold_block_panels'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_acacia_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_acacia_leaves'}.png new file mode 100644 index 00000000..4ed54262 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_acacia_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_apple_acacia_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_apple_acacia_leaves'}.png new file mode 100644 index 00000000..d3c77173 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_apple_acacia_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_apple_birch_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_apple_birch_leaves'}.png new file mode 100644 index 00000000..e251092c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_apple_birch_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_apple_dark_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_apple_dark_oak_leaves'}.png new file mode 100644 index 00000000..35a3bfa1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_apple_dark_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_apple_jungle_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_apple_jungle_leaves'}.png new file mode 100644 index 00000000..f30ea7b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_apple_jungle_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_apple_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_apple_oak_leaves'}.png new file mode 100644 index 00000000..d12fd846 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_apple_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_apple_spruce_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_apple_spruce_leaves'}.png new file mode 100644 index 00000000..99be9708 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_apple_spruce_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_birch_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_birch_leaves'}.png new file mode 100644 index 00000000..12cd4afe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_birch_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_cherry_acacia_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_cherry_acacia_leaves'}.png new file mode 100644 index 00000000..61d779ff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_cherry_acacia_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_cherry_birch_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_cherry_birch_leaves'}.png new file mode 100644 index 00000000..06af1b94 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_cherry_birch_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_cherry_dark_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_cherry_dark_oak_leaves'}.png new file mode 100644 index 00000000..b45f2e4a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_cherry_dark_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_cherry_jungle_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_cherry_jungle_leaves'}.png new file mode 100644 index 00000000..42a6a10c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_cherry_jungle_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_cherry_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_cherry_oak_leaves'}.png new file mode 100644 index 00000000..f26a3d31 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_cherry_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_cherry_spruce_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_cherry_spruce_leaves'}.png new file mode 100644 index 00000000..76beca09 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_cherry_spruce_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_dark_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_dark_oak_leaves'}.png new file mode 100644 index 00000000..572330e9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_dark_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_jungle_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_jungle_leaves'}.png new file mode 100644 index 00000000..0231d136 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_jungle_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_melon'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_melon'}.png new file mode 100644 index 00000000..c5b42079 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_melon'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_oak_leaves'}.png new file mode 100644 index 00000000..572330e9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_spruce_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_spruce_leaves'}.png new file mode 100644 index 00000000..94584ae5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__golden_spruce_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__goldkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__goldkin'}.png new file mode 100644 index 00000000..efc5b392 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__goldkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__granite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__granite_bricks'}.png new file mode 100644 index 00000000..0fdd22d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__granite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__granite_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__granite_mini_tiles'}.png new file mode 100644 index 00000000..fe79e5ef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__granite_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__granite_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__granite_pillar'}.png new file mode 100644 index 00000000..9f427012 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__granite_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__granite_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__granite_pillar_top'}.png new file mode 100644 index 00000000..e62bce35 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__granite_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__granite_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__granite_prismarine'}.png new file mode 100644 index 00000000..f9f8a8dc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__granite_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__granite_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__granite_scales'}.png new file mode 100644 index 00000000..ebfcaf92 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__granite_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_concrete_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_concrete_bricks'}.png new file mode 100644 index 00000000..e26b7b07 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_concrete_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_concrete_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_concrete_panel'}.png new file mode 100644 index 00000000..48ec8a14 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_concrete_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_concrete_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_concrete_pillar'}.png new file mode 100644 index 00000000..d073d03e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_concrete_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_concrete_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_concrete_tiles'}.png new file mode 100644 index 00000000..58038609 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_concrete_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_glazed_terracotta_pillar_sides'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_glazed_terracotta_pillar_sides'}.png new file mode 100644 index 00000000..2b1845b8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_glazed_terracotta_pillar_sides'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_glazed_terracotta_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_glazed_terracotta_pillar_top'}.png new file mode 100644 index 00000000..6ca066e3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_glazed_terracotta_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_glazed_terracotta_smooth_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_glazed_terracotta_smooth_tiles'}.png new file mode 100644 index 00000000..e293ed02 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_glazed_terracotta_smooth_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_glazed_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_glazed_terracotta_tiles'}.png new file mode 100644 index 00000000..6b51b9ec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_glazed_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_terracotta_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_terracotta_bricks'}.png new file mode 100644 index 00000000..7bc7af2f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_terracotta_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_terracotta_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_terracotta_column'}.png new file mode 100644 index 00000000..77f2f8ed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_terracotta_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_terracotta_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_terracotta_pillar'}.png new file mode 100644 index 00000000..c6263c73 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_terracotta_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_terracotta_tile'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_terracotta_tile'}.png new file mode 100644 index 00000000..434106ed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_terracotta_tile'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_terracotta_tiles'}.png new file mode 100644 index 00000000..80ada527 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__gray_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_concrete_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_concrete_bricks'}.png new file mode 100644 index 00000000..557e300b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_concrete_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_concrete_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_concrete_panel'}.png new file mode 100644 index 00000000..262626aa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_concrete_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_concrete_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_concrete_pillar'}.png new file mode 100644 index 00000000..da7aa2b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_concrete_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_concrete_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_concrete_tiles'}.png new file mode 100644 index 00000000..2240e3c6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_concrete_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_glazed_terracotta_pillar_sides'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_glazed_terracotta_pillar_sides'}.png new file mode 100644 index 00000000..3c98893a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_glazed_terracotta_pillar_sides'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_glazed_terracotta_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_glazed_terracotta_pillar_top'}.png new file mode 100644 index 00000000..9b1a6fe6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_glazed_terracotta_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_glazed_terracotta_smooth_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_glazed_terracotta_smooth_tiles'}.png new file mode 100644 index 00000000..f1ee2946 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_glazed_terracotta_smooth_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_glazed_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_glazed_terracotta_tiles'}.png new file mode 100644 index 00000000..e21de970 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_glazed_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_terracotta_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_terracotta_bricks'}.png new file mode 100644 index 00000000..96f4d910 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_terracotta_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_terracotta_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_terracotta_column'}.png new file mode 100644 index 00000000..e70f4da9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_terracotta_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_terracotta_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_terracotta_pillar'}.png new file mode 100644 index 00000000..118e416b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_terracotta_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_terracotta_tile'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_terracotta_tile'}.png new file mode 100644 index 00000000..dd576565 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_terracotta_tile'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_terracotta_tiles'}.png new file mode 100644 index 00000000..1474d8e0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__green_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_black_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_black_concrete'}.png new file mode 100644 index 00000000..2dedc42f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_black_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_blue_concrete'}.png new file mode 100644 index 00000000..69a702cc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_brown_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_brown_concrete'}.png new file mode 100644 index 00000000..e951f8b4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_brown_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_cyan_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_cyan_concrete'}.png new file mode 100644 index 00000000..7c58484c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_cyan_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_gray_concrete'}.png new file mode 100644 index 00000000..ca122b6d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_green_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_green_concrete'}.png new file mode 100644 index 00000000..4c3d15bc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_green_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_light_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_light_blue_concrete'}.png new file mode 100644 index 00000000..69035b5e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_light_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_light_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_light_gray_concrete'}.png new file mode 100644 index 00000000..8c097d1e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_light_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_lime_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_lime_concrete'}.png new file mode 100644 index 00000000..264d0d1f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_lime_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_magenta_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_magenta_concrete'}.png new file mode 100644 index 00000000..cae3de9d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_magenta_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_orange_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_orange_concrete'}.png new file mode 100644 index 00000000..f4ac424f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_orange_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_pink_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_pink_concrete'}.png new file mode 100644 index 00000000..71e607e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_pink_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_purple_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_purple_concrete'}.png new file mode 100644 index 00000000..956532eb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_purple_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_red_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_red_concrete'}.png new file mode 100644 index 00000000..86209be3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_red_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_white_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_white_concrete'}.png new file mode 100644 index 00000000..5c08f2dd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_white_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_yellow_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_yellow_concrete'}.png new file mode 100644 index 00000000..8d482804 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grid_yellow_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_black_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_black_concrete'}.png new file mode 100644 index 00000000..699d0f12 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_black_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_blue_concrete'}.png new file mode 100644 index 00000000..ec825e34 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_brown_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_brown_concrete'}.png new file mode 100644 index 00000000..1cfb2204 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_brown_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_cyan_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_cyan_concrete'}.png new file mode 100644 index 00000000..789f9a5d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_cyan_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_gray_concrete'}.png new file mode 100644 index 00000000..7f95385c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_green_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_green_concrete'}.png new file mode 100644 index 00000000..d23a69b0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_green_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_light_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_light_blue_concrete'}.png new file mode 100644 index 00000000..dc86eb21 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_light_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_light_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_light_gray_concrete'}.png new file mode 100644 index 00000000..eddb0974 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_light_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_lime_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_lime_concrete'}.png new file mode 100644 index 00000000..615e7360 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_lime_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_magenta_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_magenta_concrete'}.png new file mode 100644 index 00000000..c1d5927e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_magenta_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_orange_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_orange_concrete'}.png new file mode 100644 index 00000000..1853b62a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_orange_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_pink_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_pink_concrete'}.png new file mode 100644 index 00000000..d0a145cc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_pink_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_purple_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_purple_concrete'}.png new file mode 100644 index 00000000..748edcf2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_purple_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_red_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_red_concrete'}.png new file mode 100644 index 00000000..73f31bdc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_red_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_white_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_white_concrete'}.png new file mode 100644 index 00000000..6871ac15 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_white_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_yellow_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_yellow_concrete'}.png new file mode 100644 index 00000000..20390180 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grill_yellow_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grimy_mushroom_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grimy_mushroom_stem'}.png new file mode 100644 index 00000000..ad31da8b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__grimy_mushroom_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hard_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hard_mud'}.png new file mode 100644 index 00000000..b375f60c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hard_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hard_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hard_mud_bricks'}.png new file mode 100644 index 00000000..63443610 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hard_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hard_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hard_packed_mud'}.png new file mode 100644 index 00000000..eb58efd8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hard_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_black_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_black_wool'}.png new file mode 100644 index 00000000..3b1dc6b8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_black_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_blue_wool'}.png new file mode 100644 index 00000000..a48c1ef2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_brown_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_brown_wool'}.png new file mode 100644 index 00000000..64b11f33 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_brown_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_cyan_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_cyan_wool'}.png new file mode 100644 index 00000000..6cf2006e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_cyan_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_gray_wool'}.png new file mode 100644 index 00000000..66e3ca03 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_green_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_green_wool'}.png new file mode 100644 index 00000000..f15add31 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_green_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_light_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_light_blue_wool'}.png new file mode 100644 index 00000000..2913a8d6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_light_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_light_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_light_gray_wool'}.png new file mode 100644 index 00000000..c5990f8c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_light_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_lime_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_lime_wool'}.png new file mode 100644 index 00000000..61a40872 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_lime_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_magenta_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_magenta_wool'}.png new file mode 100644 index 00000000..d5e9a199 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_magenta_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_orange_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_orange_wool'}.png new file mode 100644 index 00000000..db3cecf5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_orange_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_pink_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_pink_wool'}.png new file mode 100644 index 00000000..da3e024e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_pink_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_purple_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_purple_wool'}.png new file mode 100644 index 00000000..0bc8e8a7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_purple_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_red_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_red_wool'}.png new file mode 100644 index 00000000..9aa1f80f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_red_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_white_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_white_wool'}.png new file mode 100644 index 00000000..aae0793c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_white_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_yellow_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_yellow_wool'}.png new file mode 100644 index 00000000..a1af73da Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__harsh_quilted_yellow_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_black_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_black_concrete'}.png new file mode 100644 index 00000000..f5899a79 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_black_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_blue_concrete'}.png new file mode 100644 index 00000000..372f165a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_brown_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_brown_concrete'}.png new file mode 100644 index 00000000..7d318cde Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_brown_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_cyan_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_cyan_concrete'}.png new file mode 100644 index 00000000..c6420dbf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_cyan_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_gray_concrete'}.png new file mode 100644 index 00000000..281baa2a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_green_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_green_concrete'}.png new file mode 100644 index 00000000..7f202d8f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_green_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_light_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_light_blue_concrete'}.png new file mode 100644 index 00000000..c8d0e3a7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_light_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_light_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_light_gray_concrete'}.png new file mode 100644 index 00000000..b812afcd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_light_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_lime_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_lime_concrete'}.png new file mode 100644 index 00000000..653bf4f1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_lime_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_magenta_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_magenta_concrete'}.png new file mode 100644 index 00000000..1de96b57 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_magenta_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_orange_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_orange_concrete'}.png new file mode 100644 index 00000000..96d3aafa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_orange_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_pink_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_pink_concrete'}.png new file mode 100644 index 00000000..d805ce80 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_pink_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_purple_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_purple_concrete'}.png new file mode 100644 index 00000000..06bb7979 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_purple_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_red_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_red_concrete'}.png new file mode 100644 index 00000000..7d6e3572 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_red_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_white_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_white_concrete'}.png new file mode 100644 index 00000000..059b34b5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_white_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_yellow_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_yellow_concrete'}.png new file mode 100644 index 00000000..967026e2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hazard_yellow_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__heart_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__heart_mud'}.png new file mode 100644 index 00000000..d3a05b84 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__heart_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__heart_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__heart_mud_bricks'}.png new file mode 100644 index 00000000..2b8bcff8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__heart_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__heart_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__heart_packed_mud'}.png new file mode 100644 index 00000000..c705bcba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__heart_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_acacia_planks'}.png new file mode 100644 index 00000000..6423280e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_bamboo_planks'}.png new file mode 100644 index 00000000..46ab55d2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_birch_planks'}.png new file mode 100644 index 00000000..bfccc8af Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_cherry_planks'}.png new file mode 100644 index 00000000..cd84a796 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_crimson_planks'}.png new file mode 100644 index 00000000..c1067afa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_dark_oak_planks'}.png new file mode 100644 index 00000000..f7b68a03 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_jungle_planks'}.png new file mode 100644 index 00000000..c3265887 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_mangrove_planks'}.png new file mode 100644 index 00000000..9316c52e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_oak_planks'}.png new file mode 100644 index 00000000..75f22517 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_spruce_planks'}.png new file mode 100644 index 00000000..9d802ffe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_warped_planks'}.png new file mode 100644 index 00000000..1aaa6215 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__herringbone_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_acacia_planks'}.png new file mode 100644 index 00000000..4bb26609 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_bamboo_planks'}.png new file mode 100644 index 00000000..0f0dac21 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_birch_planks'}.png new file mode 100644 index 00000000..4cbaca38 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_cherry_planks'}.png new file mode 100644 index 00000000..725f9ee2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_crimson_planks'}.png new file mode 100644 index 00000000..32a1576f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_dark_oak_planks'}.png new file mode 100644 index 00000000..547dea23 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_jungle_planks'}.png new file mode 100644 index 00000000..92123dcb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_mangrove_planks'}.png new file mode 100644 index 00000000..aad5caa6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_oak_planks'}.png new file mode 100644 index 00000000..df407d06 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_spruce_planks'}.png new file mode 100644 index 00000000..58b31f62 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_warped_planks'}.png new file mode 100644 index 00000000..02f12df5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hewn_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_black_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_black_glazed_terracotta'}.png new file mode 100644 index 00000000..7732afec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_black_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_black_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_black_terracotta'}.png new file mode 100644 index 00000000..df036b21 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_black_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_blue_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_blue_glazed_terracotta'}.png new file mode 100644 index 00000000..ba9adf31 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_blue_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_blue_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_blue_terracotta'}.png new file mode 100644 index 00000000..d3ddf481 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_blue_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_brown_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_brown_glazed_terracotta'}.png new file mode 100644 index 00000000..68c0d85b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_brown_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_brown_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_brown_terracotta'}.png new file mode 100644 index 00000000..bf6a87d6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_brown_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_cyan_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_cyan_glazed_terracotta'}.png new file mode 100644 index 00000000..8b4c2830 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_cyan_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_cyan_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_cyan_terracotta'}.png new file mode 100644 index 00000000..dab4aff5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_cyan_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_gray_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_gray_glazed_terracotta'}.png new file mode 100644 index 00000000..af275161 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_gray_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_gray_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_gray_terracotta'}.png new file mode 100644 index 00000000..a18aa792 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_gray_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_green_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_green_glazed_terracotta'}.png new file mode 100644 index 00000000..ed41d036 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_green_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_green_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_green_terracotta'}.png new file mode 100644 index 00000000..d82fa6f7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_green_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_light_blue_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_light_blue_glazed_terracotta'}.png new file mode 100644 index 00000000..0e12ba9b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_light_blue_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_light_blue_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_light_blue_terracotta'}.png new file mode 100644 index 00000000..18454a63 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_light_blue_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_light_gray_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_light_gray_glazed_terracotta'}.png new file mode 100644 index 00000000..34b9c1fa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_light_gray_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_light_gray_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_light_gray_terracotta'}.png new file mode 100644 index 00000000..a08b4430 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_light_gray_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_lime_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_lime_glazed_terracotta'}.png new file mode 100644 index 00000000..7e4a6697 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_lime_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_lime_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_lime_terracotta'}.png new file mode 100644 index 00000000..21c2dfc5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_lime_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_magenta_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_magenta_glazed_terracotta'}.png new file mode 100644 index 00000000..fe1692c4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_magenta_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_magenta_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_magenta_terracotta'}.png new file mode 100644 index 00000000..d7005771 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_magenta_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_orange_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_orange_glazed_terracotta'}.png new file mode 100644 index 00000000..8665c617 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_orange_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_orange_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_orange_terracotta'}.png new file mode 100644 index 00000000..4a7b54ef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_orange_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_pink_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_pink_glazed_terracotta'}.png new file mode 100644 index 00000000..bfba16a0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_pink_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_pink_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_pink_terracotta'}.png new file mode 100644 index 00000000..a39079dd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_pink_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_purple_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_purple_glazed_terracotta'}.png new file mode 100644 index 00000000..e516a24c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_purple_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_purple_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_purple_terracotta'}.png new file mode 100644 index 00000000..14522dfd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_purple_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_red_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_red_glazed_terracotta'}.png new file mode 100644 index 00000000..e980353d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_red_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_red_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_red_terracotta'}.png new file mode 100644 index 00000000..b51c0d9e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_red_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_terracotta'}.png new file mode 100644 index 00000000..98b81566 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_white_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_white_glazed_terracotta'}.png new file mode 100644 index 00000000..926cb6bf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_white_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_white_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_white_terracotta'}.png new file mode 100644 index 00000000..de9b6985 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_white_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_yellow_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_yellow_glazed_terracotta'}.png new file mode 100644 index 00000000..9865fbc3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_yellow_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_yellow_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_yellow_terracotta'}.png new file mode 100644 index 00000000..06f33fa2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hexagonical_yellow_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__historical_oak_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__historical_oak_bookshelf'}.png new file mode 100644 index 00000000..ac91868d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__historical_oak_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__historical_oak_large_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__historical_oak_large_bookshelf'}.png new file mode 100644 index 00000000..78f52871 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__historical_oak_large_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hived_glowstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hived_glowstone'}.png new file mode 100644 index 00000000..c9c52225 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hived_glowstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hived_redstone_lamp'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hived_redstone_lamp'}.png new file mode 100644 index 00000000..54c34ae4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hived_redstone_lamp'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hived_sea_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hived_sea_lantern'}.png new file mode 100644 index 00000000..2cce4caa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hived_sea_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hived_shroomlight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hived_shroomlight'}.png new file mode 100644 index 00000000..56cf9c04 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hived_shroomlight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hived_white_redstone_lamp'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hived_white_redstone_lamp'}.png new file mode 100644 index 00000000..555e2914 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__hived_white_redstone_lamp'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__horned_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__horned_mud'}.png new file mode 100644 index 00000000..19ff42a0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__horned_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__horned_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__horned_mud_bricks'}.png new file mode 100644 index 00000000..093374c4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__horned_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__horned_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__horned_packed_mud'}.png new file mode 100644 index 00000000..9f4bc802 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__horned_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__horrified_carved_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__horrified_carved_pumpkin'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__horrified_carved_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__horrified_jack_o_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__horrified_jack_o_lantern'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__horrified_jack_o_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_acacia_log'}.png new file mode 100644 index 00000000..6cafa886 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_birch_log'}.png new file mode 100644 index 00000000..c0f8f781 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_cherry_log'}.png new file mode 100644 index 00000000..6953ff95 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_crimson_stem'}.png new file mode 100644 index 00000000..53d68503 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_dark_oak_log'}.png new file mode 100644 index 00000000..8ba82654 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_jungle_log'}.png new file mode 100644 index 00000000..7ac3b9ef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_mangrove_log'}.png new file mode 100644 index 00000000..85e35099 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_oak_log'}.png new file mode 100644 index 00000000..a51798af Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_spruce_log'}.png new file mode 100644 index 00000000..8ed16497 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_warped_stem'}.png new file mode 100644 index 00000000..ac018ff3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__i_sign_stripped_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ice_bricks'}.png new file mode 100644 index 00000000..0c438e90 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ice_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ice_mini_tiles'}.png new file mode 100644 index 00000000..a4d7eb05 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ice_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ice_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ice_pillar'}.png new file mode 100644 index 00000000..f850165d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ice_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ice_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ice_pillar_top'}.png new file mode 100644 index 00000000..3330523e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ice_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ice_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ice_scales'}.png new file mode 100644 index 00000000..a34d3137 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ice_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_amethyst_block'}.png new file mode 100644 index 00000000..6f32d7f4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_ancient_debris'}.png new file mode 100644 index 00000000..111f9c7f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_andesite'}.png new file mode 100644 index 00000000..90b08d84 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_basalt'}.png new file mode 100644 index 00000000..22219f32 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_blackstone'}.png new file mode 100644 index 00000000..e32ab16e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_blue_ice'}.png new file mode 100644 index 00000000..52698a3c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_borderless_bricks'}.png new file mode 100644 index 00000000..04108f19 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_bricks'}.png new file mode 100644 index 00000000..97f1dc51 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_calcite'}.png new file mode 100644 index 00000000..520903d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_clay'}.png new file mode 100644 index 00000000..1182163a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_coal_block'}.png new file mode 100644 index 00000000..11c7e7bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_cobblestone'}.png new file mode 100644 index 00000000..6a6998c3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_crying_obsidian'}.png new file mode 100644 index 00000000..824874a1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_dark_prismarine'}.png new file mode 100644 index 00000000..7b187ba7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_deepslate'}.png new file mode 100644 index 00000000..a12dfdf4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_diorite'}.png new file mode 100644 index 00000000..a86478dd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_dirt'}.png new file mode 100644 index 00000000..5e1fa8eb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_dripstone_block'}.png new file mode 100644 index 00000000..b4077b0e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_end_stone'}.png new file mode 100644 index 00000000..1ded5ee1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_gilded_blackstone'}.png new file mode 100644 index 00000000..72d881c3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_glowstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_glowstone'}.png new file mode 100644 index 00000000..924082ae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_glowstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_granite'}.png new file mode 100644 index 00000000..7502b41a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_ice'}.png new file mode 100644 index 00000000..f1adf645 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_lapis_block'}.png new file mode 100644 index 00000000..b611a212 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_lodestone'}.png new file mode 100644 index 00000000..8710ad76 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_magma_block'}.png new file mode 100644 index 00000000..7d026b6a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_mossy_cobblestone'}.png new file mode 100644 index 00000000..893a5a34 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_mossy_stone_bricks'}.png new file mode 100644 index 00000000..ab77f737 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_mud'}.png new file mode 100644 index 00000000..5ab36809 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_mud_bricks'}.png new file mode 100644 index 00000000..2f73dbda Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_nether_bricks'}.png new file mode 100644 index 00000000..7dbc7dd4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_netherrack'}.png new file mode 100644 index 00000000..ede0070f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_obsidian'}.png new file mode 100644 index 00000000..09965457 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_packed_ice'}.png new file mode 100644 index 00000000..722b2717 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_packed_mud'}.png new file mode 100644 index 00000000..a55a8293 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_prismarine'}.png new file mode 100644 index 00000000..1424b542 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_purpur_block'}.png new file mode 100644 index 00000000..aad0a8b2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_quartz_block'}.png new file mode 100644 index 00000000..8e13acd3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_raw_copper_block'}.png new file mode 100644 index 00000000..6255daa1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_raw_gold_block'}.png new file mode 100644 index 00000000..d34cf585 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_raw_iron_block'}.png new file mode 100644 index 00000000..6c04b365 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_red_nether_bricks'}.png new file mode 100644 index 00000000..e5182c4e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_red_sandstone'}.png new file mode 100644 index 00000000..e0fc80e7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_redstone_block'}.png new file mode 100644 index 00000000..800bba82 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_redstone_lamp'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_redstone_lamp'}.png new file mode 100644 index 00000000..0f52aac0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_redstone_lamp'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_sandstone'}.png new file mode 100644 index 00000000..6d8d099b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_sea_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_sea_lantern'}.png new file mode 100644 index 00000000..b14f87ee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_sea_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_shroomlight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_shroomlight'}.png new file mode 100644 index 00000000..4aea7e00 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_shroomlight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_smooth_stone'}.png new file mode 100644 index 00000000..2e758a79 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_snow_block'}.png new file mode 100644 index 00000000..bab27c4b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_stone'}.png new file mode 100644 index 00000000..678227a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_tuff'}.png new file mode 100644 index 00000000..d554abf7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_white_redstone_lamp'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_white_redstone_lamp'}.png new file mode 100644 index 00000000..f8e576c8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inlayed_white_redstone_lamp'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_amethyst_block'}.png new file mode 100644 index 00000000..26a87474 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_ancient_debris'}.png new file mode 100644 index 00000000..1dda383a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_andesite'}.png new file mode 100644 index 00000000..00f97300 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_basalt'}.png new file mode 100644 index 00000000..2a667f00 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_black_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_black_terracotta'}.png new file mode 100644 index 00000000..81108e07 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_black_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_blackstone'}.png new file mode 100644 index 00000000..2a0eea1c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_blue_ice'}.png new file mode 100644 index 00000000..af9861da Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_blue_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_blue_terracotta'}.png new file mode 100644 index 00000000..475b697f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_blue_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_bone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_bone_block'}.png new file mode 100644 index 00000000..a5304c60 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_bone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_borderless_bricks'}.png new file mode 100644 index 00000000..12112bf8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_bricks'}.png new file mode 100644 index 00000000..676ab0d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_brown_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_brown_terracotta'}.png new file mode 100644 index 00000000..fcb92725 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_brown_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_calcite'}.png new file mode 100644 index 00000000..f0316b6a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_clay'}.png new file mode 100644 index 00000000..32b611dd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_coal_block'}.png new file mode 100644 index 00000000..e8f3a713 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_cobblestone'}.png new file mode 100644 index 00000000..c8ac3afd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_crying_obsidian'}.png new file mode 100644 index 00000000..e84f82e9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_cyan_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_cyan_terracotta'}.png new file mode 100644 index 00000000..889265b3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_cyan_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_dark_prismarine'}.png new file mode 100644 index 00000000..6f1537e3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_deepslate'}.png new file mode 100644 index 00000000..bfd287db Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_diorite'}.png new file mode 100644 index 00000000..a5ad8833 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_dirt'}.png new file mode 100644 index 00000000..3d47f3ee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_dripstone_block'}.png new file mode 100644 index 00000000..63b90407 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_end_stone'}.png new file mode 100644 index 00000000..498be12c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_gilded_blackstone'}.png new file mode 100644 index 00000000..703536f4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_granite'}.png new file mode 100644 index 00000000..9fbd3a08 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_gray_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_gray_terracotta'}.png new file mode 100644 index 00000000..901dfb8d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_gray_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_green_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_green_terracotta'}.png new file mode 100644 index 00000000..02cf6b87 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_green_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_ice'}.png new file mode 100644 index 00000000..c8daa636 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_lapis_block'}.png new file mode 100644 index 00000000..5916cc6e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_light_blue_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_light_blue_terracotta'}.png new file mode 100644 index 00000000..438a450c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_light_blue_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_light_gray_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_light_gray_terracotta'}.png new file mode 100644 index 00000000..d5b95d35 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_light_gray_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_lime_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_lime_terracotta'}.png new file mode 100644 index 00000000..cc6556dc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_lime_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_lodestone'}.png new file mode 100644 index 00000000..dee7b213 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_magenta_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_magenta_terracotta'}.png new file mode 100644 index 00000000..052662ee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_magenta_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_magma_block'}.png new file mode 100644 index 00000000..c32b7251 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_mossy_cobblestone'}.png new file mode 100644 index 00000000..1cdd9884 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_mossy_stone_bricks'}.png new file mode 100644 index 00000000..7fa6527c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_nether_bricks'}.png new file mode 100644 index 00000000..76571217 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_netherrack'}.png new file mode 100644 index 00000000..15f1a6db Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_obsidian'}.png new file mode 100644 index 00000000..13487d4a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_orange_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_orange_terracotta'}.png new file mode 100644 index 00000000..ed7c7942 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_orange_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_packed_ice'}.png new file mode 100644 index 00000000..e81d39aa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_pink_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_pink_terracotta'}.png new file mode 100644 index 00000000..c8294c35 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_pink_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_prismarine'}.png new file mode 100644 index 00000000..a307f5ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_purple_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_purple_terracotta'}.png new file mode 100644 index 00000000..4e74ae4f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_purple_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_purpur_block'}.png new file mode 100644 index 00000000..0c4ad147 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_quartz_block'}.png new file mode 100644 index 00000000..29c9e37e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_raw_copper_block'}.png new file mode 100644 index 00000000..8e9d9d6b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_raw_gold_block'}.png new file mode 100644 index 00000000..cf262260 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_raw_iron_block'}.png new file mode 100644 index 00000000..5d4d5765 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_red_nether_bricks'}.png new file mode 100644 index 00000000..8e4b3faf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_red_sandstone'}.png new file mode 100644 index 00000000..f6abf14d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_red_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_red_terracotta'}.png new file mode 100644 index 00000000..b8be1742 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_red_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_redstone_block'}.png new file mode 100644 index 00000000..dbb16d91 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_sandstone'}.png new file mode 100644 index 00000000..1aec5b9f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_smooth_stone'}.png new file mode 100644 index 00000000..86b4d238 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_snow_block'}.png new file mode 100644 index 00000000..4f0ebb85 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_stone'}.png new file mode 100644 index 00000000..b488d02f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_terracotta'}.png new file mode 100644 index 00000000..1e424a12 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_tuff'}.png new file mode 100644 index 00000000..2e1b64d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_white_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_white_terracotta'}.png new file mode 100644 index 00000000..10450fa0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_white_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_yellow_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_yellow_terracotta'}.png new file mode 100644 index 00000000..4264ce5a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__inscribed_yellow_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__iron_block_panels'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__iron_block_panels'}.png new file mode 100644 index 00000000..679330ae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__iron_block_panels'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__jungle_hay_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__jungle_hay_block'}.png new file mode 100644 index 00000000..bd3a94fb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__jungle_hay_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__jungle_planks_mosaic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__jungle_planks_mosaic'}.png new file mode 100644 index 00000000..ab42d00e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__jungle_planks_mosaic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__jungle_planks_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__jungle_planks_panel'}.png new file mode 100644 index 00000000..13f53b8b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__jungle_planks_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__jungle_planks_shavings'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__jungle_planks_shavings'}.png new file mode 100644 index 00000000..b7a495a7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__jungle_planks_shavings'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_acacia_log'}.png new file mode 100644 index 00000000..1f92c6a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_birch_log'}.png new file mode 100644 index 00000000..cd0d8fc9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_cherry_log'}.png new file mode 100644 index 00000000..815f4490 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_crimson_stem'}.png new file mode 100644 index 00000000..48db7c2f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_dark_oak_log'}.png new file mode 100644 index 00000000..cd88a057 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_jungle_log'}.png new file mode 100644 index 00000000..5b394b96 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_mangrove_log'}.png new file mode 100644 index 00000000..7261a582 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_oak_log'}.png new file mode 100644 index 00000000..d9ea23b4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_spruce_log'}.png new file mode 100644 index 00000000..d4d0d112 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_warped_stem'}.png new file mode 100644 index 00000000..1769f95b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__k_sign_stripped_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__kabotchkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__kabotchkin'}.png new file mode 100644 index 00000000..d634150d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__kabotchkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__kelp_sand'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__kelp_sand'}.png new file mode 100644 index 00000000..98b06e0e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__kelp_sand'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__keyhole_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__keyhole_mud'}.png new file mode 100644 index 00000000..15ef1c26 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__keyhole_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__keyhole_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__keyhole_mud_bricks'}.png new file mode 100644 index 00000000..ad99ed21 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__keyhole_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__keyhole_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__keyhole_packed_mud'}.png new file mode 100644 index 00000000..9f5f10b9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__keyhole_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__kitty_faced_carved_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__kitty_faced_carved_pumpkin'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__kitty_faced_carved_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__kitty_faced_jack_o_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__kitty_faced_jack_o_lantern'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__kitty_faced_jack_o_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_black_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_black_wool'}.png new file mode 100644 index 00000000..d2e327cc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_black_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_blue_wool'}.png new file mode 100644 index 00000000..f2a9cdc2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_brown_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_brown_wool'}.png new file mode 100644 index 00000000..ac13fc2e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_brown_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_cyan_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_cyan_wool'}.png new file mode 100644 index 00000000..5b4a15f2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_cyan_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_gray_wool'}.png new file mode 100644 index 00000000..53a8e82e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_green_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_green_wool'}.png new file mode 100644 index 00000000..9903f3ec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_green_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_light_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_light_blue_wool'}.png new file mode 100644 index 00000000..49243e6f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_light_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_light_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_light_gray_wool'}.png new file mode 100644 index 00000000..773982b6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_light_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_lime_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_lime_wool'}.png new file mode 100644 index 00000000..1703ecd0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_lime_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_magenta_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_magenta_wool'}.png new file mode 100644 index 00000000..1cf18123 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_magenta_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_orange_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_orange_wool'}.png new file mode 100644 index 00000000..ccc69963 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_orange_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_pink_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_pink_wool'}.png new file mode 100644 index 00000000..f3416692 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_pink_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_purple_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_purple_wool'}.png new file mode 100644 index 00000000..541b9ccc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_purple_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_red_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_red_wool'}.png new file mode 100644 index 00000000..6edf2e3d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_red_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_white_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_white_wool'}.png new file mode 100644 index 00000000..c4a1021a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_white_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_yellow_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_yellow_wool'}.png new file mode 100644 index 00000000..f07e6a2a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knitted_yellow_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_acacia_log'}.png new file mode 100644 index 00000000..6df19b85 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_birch_log'}.png new file mode 100644 index 00000000..db323614 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_cherry_log'}.png new file mode 100644 index 00000000..77d043ad Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_crimson_stem'}.png new file mode 100644 index 00000000..a1a3115f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_dark_oak_log'}.png new file mode 100644 index 00000000..1fc51698 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_jungle_log'}.png new file mode 100644 index 00000000..554cb32d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_mangrove_log'}.png new file mode 100644 index 00000000..e120c55e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_oak_log'}.png new file mode 100644 index 00000000..0ad2c34f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_spruce_log'}.png new file mode 100644 index 00000000..a164fd1c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_warped_stem'}.png new file mode 100644 index 00000000..bd20f355 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__knotted_stripped_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_acacia_log'}.png new file mode 100644 index 00000000..c2fdc6e7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_birch_log'}.png new file mode 100644 index 00000000..0121c21c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_cherry_log'}.png new file mode 100644 index 00000000..53cba4be Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_crimson_stem'}.png new file mode 100644 index 00000000..894883c6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_dark_oak_log'}.png new file mode 100644 index 00000000..ff13c23a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_jungle_log'}.png new file mode 100644 index 00000000..3e176595 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_mangrove_log'}.png new file mode 100644 index 00000000..ea1a6ca6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_oak_log'}.png new file mode 100644 index 00000000..bfa1413b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_spruce_log'}.png new file mode 100644 index 00000000..d297652f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_warped_stem'}.png new file mode 100644 index 00000000..d5ccd6e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__l_sign_stripped_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_acacia_planks'}.png new file mode 100644 index 00000000..7b84312d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_bamboo_planks'}.png new file mode 100644 index 00000000..093bbebf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_birch_planks'}.png new file mode 100644 index 00000000..1f5da918 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_cherry_planks'}.png new file mode 100644 index 00000000..9dcd22eb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_crimson_planks'}.png new file mode 100644 index 00000000..193f3016 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_dark_oak_planks'}.png new file mode 100644 index 00000000..e7c36be6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_jungle_planks'}.png new file mode 100644 index 00000000..11d63f47 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_mangrove_planks'}.png new file mode 100644 index 00000000..5c21614a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_oak_planks'}.png new file mode 100644 index 00000000..0061b512 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_spruce_planks'}.png new file mode 100644 index 00000000..41fc0c85 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_warped_planks'}.png new file mode 100644 index 00000000..da827013 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__laced_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lapis_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lapis_block_bricks'}.png new file mode 100644 index 00000000..49af90fe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lapis_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lapis_block_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lapis_block_mini_tiles'}.png new file mode 100644 index 00000000..369efdd9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lapis_block_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lapis_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lapis_block_pillar'}.png new file mode 100644 index 00000000..4afefbfe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lapis_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lapis_block_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lapis_block_pillar_top'}.png new file mode 100644 index 00000000..f9bd7484 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lapis_block_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lapis_block_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lapis_block_scales'}.png new file mode 100644 index 00000000..a428a4dd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lapis_block_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_black_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_black_stained_glass'}.png new file mode 100644 index 00000000..c29048aa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_black_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_blue_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_blue_stained_glass'}.png new file mode 100644 index 00000000..75afd4ca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_blue_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_brown_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_brown_stained_glass'}.png new file mode 100644 index 00000000..3ad798cc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_brown_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_cyan_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_cyan_stained_glass'}.png new file mode 100644 index 00000000..e25b5552 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_cyan_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_gray_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_gray_stained_glass'}.png new file mode 100644 index 00000000..1b41000d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_gray_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_green_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_green_stained_glass'}.png new file mode 100644 index 00000000..11431851 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_green_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_leaded_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_leaded_glass'}.png new file mode 100644 index 00000000..2086699f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_leaded_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_light_blue_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_light_blue_stained_glass'}.png new file mode 100644 index 00000000..bd895cfe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_light_blue_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_light_gray_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_light_gray_stained_glass'}.png new file mode 100644 index 00000000..04c12f42 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_light_gray_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_lime_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_lime_stained_glass'}.png new file mode 100644 index 00000000..257f91ae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_lime_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_magenta_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_magenta_stained_glass'}.png new file mode 100644 index 00000000..a9e1343e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_magenta_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_orange_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_orange_stained_glass'}.png new file mode 100644 index 00000000..a7a05c52 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_orange_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_pink_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_pink_stained_glass'}.png new file mode 100644 index 00000000..93bf2b20 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_pink_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_purple_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_purple_stained_glass'}.png new file mode 100644 index 00000000..84a77a28 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_purple_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_red_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_red_stained_glass'}.png new file mode 100644 index 00000000..fc86452e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_red_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_white_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_white_stained_glass'}.png new file mode 100644 index 00000000..94d66844 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_white_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_yellow_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_yellow_stained_glass'}.png new file mode 100644 index 00000000..45a9ec37 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_diamond_yellow_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_mud_bricks_sigil'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_mud_bricks_sigil'}.png new file mode 100644 index 00000000..90da59fa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_mud_bricks_sigil'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_mud_sigil'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_mud_sigil'}.png new file mode 100644 index 00000000..07d35ce0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_mud_sigil'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_packed_mud_sigil'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_packed_mud_sigil'}.png new file mode 100644 index 00000000..beb549e3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_packed_mud_sigil'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_tiled_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_tiled_mud'}.png new file mode 100644 index 00000000..80264cc2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_tiled_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_tiled_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_tiled_mud_bricks'}.png new file mode 100644 index 00000000..5597af4a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_tiled_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_tiled_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_tiled_packed_mud'}.png new file mode 100644 index 00000000..184c9d82 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__large_tiled_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_amethyst_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_amethyst_block_bricks'}.png new file mode 100644 index 00000000..cd6734d1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_amethyst_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_ancient_debris_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_ancient_debris_bricks'}.png new file mode 100644 index 00000000..c07a3584 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_ancient_debris_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_andesite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_andesite_bricks'}.png new file mode 100644 index 00000000..9e773ee4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_andesite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_basalt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_basalt_bricks'}.png new file mode 100644 index 00000000..56643e84 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_basalt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_blackstone_bricks'}.png new file mode 100644 index 00000000..379729bd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_blue_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_blue_ice_bricks'}.png new file mode 100644 index 00000000..cb21f682 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_blue_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_calcite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_calcite_bricks'}.png new file mode 100644 index 00000000..b2859736 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_calcite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_clay_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_clay_bricks'}.png new file mode 100644 index 00000000..25035c53 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_clay_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_coal_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_coal_block_bricks'}.png new file mode 100644 index 00000000..b7dedba5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_coal_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_cobblestone_bricks'}.png new file mode 100644 index 00000000..c514a295 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_crying_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_crying_obsidian_bricks'}.png new file mode 100644 index 00000000..c70db743 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_crying_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_dark_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_dark_prismarine_bricks'}.png new file mode 100644 index 00000000..236a7635 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_dark_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_diorite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_diorite_bricks'}.png new file mode 100644 index 00000000..9e0938e8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_diorite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_dirt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_dirt_bricks'}.png new file mode 100644 index 00000000..ad8521fe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_dirt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_dripstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_dripstone_block_bricks'}.png new file mode 100644 index 00000000..fd3e73a0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_dripstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_end_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_end_stone_bricks'}.png new file mode 100644 index 00000000..17829b1f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_end_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_gilded_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_gilded_blackstone_bricks'}.png new file mode 100644 index 00000000..31b29888 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_gilded_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_granite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_granite_bricks'}.png new file mode 100644 index 00000000..021b43b0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_granite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_ice_bricks'}.png new file mode 100644 index 00000000..771c9c16 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_lapis_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_lapis_block_bricks'}.png new file mode 100644 index 00000000..844860bc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_lapis_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_lodestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_lodestone_bricks'}.png new file mode 100644 index 00000000..fcf9ac08 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_lodestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_magma_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_magma_block_bricks'}.png new file mode 100644 index 00000000..c004b720 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_magma_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_mossy_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_mossy_cobblestone_bricks'}.png new file mode 100644 index 00000000..7d86e818 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_mossy_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_mossy_stone_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_mossy_stone_bricks_bricks'}.png new file mode 100644 index 00000000..9bbd804e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_mossy_stone_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_nether_bricks_bricks'}.png new file mode 100644 index 00000000..bd246c5f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_netherrack_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_netherrack_bricks'}.png new file mode 100644 index 00000000..98649795 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_netherrack_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_obsidian_bricks'}.png new file mode 100644 index 00000000..1a862e3d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_packed_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_packed_ice_bricks'}.png new file mode 100644 index 00000000..ba485799 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_packed_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_prismarine_bricks'}.png new file mode 100644 index 00000000..177e2129 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_purpur_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_purpur_block_bricks'}.png new file mode 100644 index 00000000..07fcecf3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_purpur_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_quartz_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_quartz_block_bricks'}.png new file mode 100644 index 00000000..d6d4370c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_quartz_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_raw_copper_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_raw_copper_block_bricks'}.png new file mode 100644 index 00000000..3a215ddd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_raw_copper_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_raw_gold_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_raw_gold_block_bricks'}.png new file mode 100644 index 00000000..a927e96b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_raw_gold_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_raw_iron_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_raw_iron_block_bricks'}.png new file mode 100644 index 00000000..31247e3a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_raw_iron_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_red_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_red_nether_bricks_bricks'}.png new file mode 100644 index 00000000..fa7d7560 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_red_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_red_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_red_sandstone_bricks'}.png new file mode 100644 index 00000000..5f53166d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_red_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_redstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_redstone_block_bricks'}.png new file mode 100644 index 00000000..4fb70429 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_redstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_sandstone_bricks'}.png new file mode 100644 index 00000000..3f8dc8e4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_smooth_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_smooth_stone_bricks'}.png new file mode 100644 index 00000000..9159b598 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_smooth_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_snow_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_snow_block_bricks'}.png new file mode 100644 index 00000000..fdde86b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_snow_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_stone_bricks'}.png new file mode 100644 index 00000000..66a0899b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_tuff_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_tuff_bricks'}.png new file mode 100644 index 00000000..0fc8fe49 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layed_tuff_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_black_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_black_terracotta'}.png new file mode 100644 index 00000000..86b51919 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_black_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_blue_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_blue_terracotta'}.png new file mode 100644 index 00000000..db82f769 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_blue_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_brown_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_brown_terracotta'}.png new file mode 100644 index 00000000..8a379d23 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_brown_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_cyan_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_cyan_terracotta'}.png new file mode 100644 index 00000000..2de66991 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_cyan_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_diamond_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_diamond_block'}.png new file mode 100644 index 00000000..bb311d2c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_diamond_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_emerald_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_emerald_block'}.png new file mode 100644 index 00000000..e17e1b71 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_emerald_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_gold_block'}.png new file mode 100644 index 00000000..94ed1db9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_gray_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_gray_terracotta'}.png new file mode 100644 index 00000000..c839d073 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_gray_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_green_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_green_terracotta'}.png new file mode 100644 index 00000000..147b251c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_green_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_iron_block'}.png new file mode 100644 index 00000000..ee180564 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_light_blue_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_light_blue_terracotta'}.png new file mode 100644 index 00000000..bf655afb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_light_blue_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_light_gray_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_light_gray_terracotta'}.png new file mode 100644 index 00000000..fd2107d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_light_gray_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_lime_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_lime_terracotta'}.png new file mode 100644 index 00000000..1a1d65d3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_lime_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_magenta_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_magenta_terracotta'}.png new file mode 100644 index 00000000..6ee1554b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_magenta_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_netherite_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_netherite_block'}.png new file mode 100644 index 00000000..c9d49e85 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_netherite_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_orange_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_orange_terracotta'}.png new file mode 100644 index 00000000..c60409c2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_orange_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_pink_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_pink_terracotta'}.png new file mode 100644 index 00000000..bcc5e2f4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_pink_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_purple_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_purple_terracotta'}.png new file mode 100644 index 00000000..5919973a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_purple_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_red_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_red_terracotta'}.png new file mode 100644 index 00000000..d5b9d4ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_red_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_acacia_log'}.png new file mode 100644 index 00000000..39902610 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_birch_log'}.png new file mode 100644 index 00000000..6001a4c6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_cherry_log'}.png new file mode 100644 index 00000000..e9a80c2f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_crimson_stem'}.png new file mode 100644 index 00000000..f71fdef2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_dark_oak_log'}.png new file mode 100644 index 00000000..db2bd048 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_jungle_log'}.png new file mode 100644 index 00000000..8b8f2d13 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_oak_log'}.png new file mode 100644 index 00000000..2f542394 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_spruce_log'}.png new file mode 100644 index 00000000..a4d0e12c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_warped_stem'}.png new file mode 100644 index 00000000..cd4f3f45 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_stripped_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_terracotta'}.png new file mode 100644 index 00000000..7e0481ef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_waxed_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_waxed_copper_block'}.png new file mode 100644 index 00000000..275cca75 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_waxed_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_waxed_exposed_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_waxed_exposed_copper'}.png new file mode 100644 index 00000000..6ab1fc73 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_waxed_exposed_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_waxed_oxidized_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_waxed_oxidized_copper'}.png new file mode 100644 index 00000000..bacb0291 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_waxed_oxidized_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_waxed_weathered_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_waxed_weathered_copper'}.png new file mode 100644 index 00000000..6672e191 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_waxed_weathered_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_white_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_white_terracotta'}.png new file mode 100644 index 00000000..d2654d61 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_white_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_yellow_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_yellow_terracotta'}.png new file mode 100644 index 00000000..b31999dc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__layered_yellow_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lead_woven_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lead_woven_glass'}.png new file mode 100644 index 00000000..f1ea526c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lead_woven_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__leafy_dried_kelp_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__leafy_dried_kelp_block'}.png new file mode 100644 index 00000000..44203c75 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__leafy_dried_kelp_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__leafy_mangrove_roots'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__leafy_mangrove_roots'}.png new file mode 100644 index 00000000..7ca85384 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__leafy_mangrove_roots'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__leaning_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__leaning_mud'}.png new file mode 100644 index 00000000..2846daf7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__leaning_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__leaning_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__leaning_mud_bricks'}.png new file mode 100644 index 00000000..6798564e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__leaning_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__leaning_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__leaning_packed_mud'}.png new file mode 100644 index 00000000..38b34be2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__leaning_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_concrete_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_concrete_bricks'}.png new file mode 100644 index 00000000..70fcdfdd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_concrete_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_concrete_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_concrete_panel'}.png new file mode 100644 index 00000000..8df0f38c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_concrete_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_concrete_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_concrete_pillar'}.png new file mode 100644 index 00000000..36443029 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_concrete_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_concrete_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_concrete_tiles'}.png new file mode 100644 index 00000000..04f5295f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_concrete_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_glazed_terracotta_pillar_sides'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_glazed_terracotta_pillar_sides'}.png new file mode 100644 index 00000000..25211619 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_glazed_terracotta_pillar_sides'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_glazed_terracotta_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_glazed_terracotta_pillar_top'}.png new file mode 100644 index 00000000..bc9821b0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_glazed_terracotta_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_glazed_terracotta_smooth_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_glazed_terracotta_smooth_tiles'}.png new file mode 100644 index 00000000..15272a3d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_glazed_terracotta_smooth_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_glazed_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_glazed_terracotta_tiles'}.png new file mode 100644 index 00000000..2684a01d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_glazed_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_terracotta_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_terracotta_bricks'}.png new file mode 100644 index 00000000..d5c94e06 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_terracotta_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_terracotta_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_terracotta_column'}.png new file mode 100644 index 00000000..046e3f33 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_terracotta_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_terracotta_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_terracotta_pillar'}.png new file mode 100644 index 00000000..a6a896d8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_terracotta_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_terracotta_tile'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_terracotta_tile'}.png new file mode 100644 index 00000000..0dfc442c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_terracotta_tile'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_terracotta_tiles'}.png new file mode 100644 index 00000000..c3de3a1f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_blue_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_dotted_red_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_dotted_red_mushroom_block'}.png new file mode 100644 index 00000000..0838e19e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_dotted_red_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_dusted_brown_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_dusted_brown_mushroom_block'}.png new file mode 100644 index 00000000..56fe0e2f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_dusted_brown_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_dusted_red_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_dusted_red_mushroom_block'}.png new file mode 100644 index 00000000..dc233f82 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_dusted_red_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_freckled_brown_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_freckled_brown_mushroom_block'}.png new file mode 100644 index 00000000..1681d14f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_freckled_brown_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_freckled_red_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_freckled_red_mushroom_block'}.png new file mode 100644 index 00000000..1a7917db Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_freckled_red_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_concrete_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_concrete_bricks'}.png new file mode 100644 index 00000000..52e9f00d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_concrete_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_concrete_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_concrete_panel'}.png new file mode 100644 index 00000000..559ef6ea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_concrete_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_concrete_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_concrete_pillar'}.png new file mode 100644 index 00000000..0ee08d3d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_concrete_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_concrete_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_concrete_tiles'}.png new file mode 100644 index 00000000..02ed8fa8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_concrete_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_glazed_terracotta_pillar_sides'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_glazed_terracotta_pillar_sides'}.png new file mode 100644 index 00000000..5ead4ce7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_glazed_terracotta_pillar_sides'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_glazed_terracotta_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_glazed_terracotta_pillar_top'}.png new file mode 100644 index 00000000..396554cd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_glazed_terracotta_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_glazed_terracotta_smooth_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_glazed_terracotta_smooth_tiles'}.png new file mode 100644 index 00000000..b93089be Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_glazed_terracotta_smooth_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_glazed_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_glazed_terracotta_tiles'}.png new file mode 100644 index 00000000..9a3416b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_glazed_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_terracotta_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_terracotta_bricks'}.png new file mode 100644 index 00000000..bc62b98f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_terracotta_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_terracotta_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_terracotta_column'}.png new file mode 100644 index 00000000..2cad0744 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_terracotta_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_terracotta_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_terracotta_pillar'}.png new file mode 100644 index 00000000..c7cf0c79 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_terracotta_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_terracotta_tile'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_terracotta_tile'}.png new file mode 100644 index 00000000..f02a36ff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_terracotta_tile'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_terracotta_tiles'}.png new file mode 100644 index 00000000..3e784b13 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_gray_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_scaled_brown_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_scaled_brown_mushroom_block'}.png new file mode 100644 index 00000000..06bdd50e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_scaled_brown_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_smooth_brown_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_smooth_brown_mushroom_block'}.png new file mode 100644 index 00000000..1fd587b9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_smooth_brown_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_smooth_red_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_smooth_red_mushroom_block'}.png new file mode 100644 index 00000000..8fef323f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_smooth_red_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_spotted_brown_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_spotted_brown_mushroom_block'}.png new file mode 100644 index 00000000..152132e0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_spotted_brown_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_spotted_red_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_spotted_red_mushroom_block'}.png new file mode 100644 index 00000000..85d112d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_spotted_red_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_sprinkled_brown_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_sprinkled_brown_mushroom_block'}.png new file mode 100644 index 00000000..db1dfc1e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__light_sprinkled_brown_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_concrete_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_concrete_bricks'}.png new file mode 100644 index 00000000..8558dd85 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_concrete_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_concrete_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_concrete_panel'}.png new file mode 100644 index 00000000..45407b01 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_concrete_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_concrete_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_concrete_pillar'}.png new file mode 100644 index 00000000..187772cc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_concrete_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_concrete_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_concrete_tiles'}.png new file mode 100644 index 00000000..1b08d474 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_concrete_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_glazed_terracotta_pillar_sides'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_glazed_terracotta_pillar_sides'}.png new file mode 100644 index 00000000..9d12be40 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_glazed_terracotta_pillar_sides'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_glazed_terracotta_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_glazed_terracotta_pillar_top'}.png new file mode 100644 index 00000000..e3fef4c9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_glazed_terracotta_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_glazed_terracotta_smooth_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_glazed_terracotta_smooth_tiles'}.png new file mode 100644 index 00000000..0d2a6e6c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_glazed_terracotta_smooth_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_glazed_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_glazed_terracotta_tiles'}.png new file mode 100644 index 00000000..3bea37a8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_glazed_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_moss_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_moss_block'}.png new file mode 100644 index 00000000..14f9b20d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_moss_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_terracotta_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_terracotta_bricks'}.png new file mode 100644 index 00000000..fe06f0b9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_terracotta_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_terracotta_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_terracotta_column'}.png new file mode 100644 index 00000000..5ef51a62 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_terracotta_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_terracotta_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_terracotta_pillar'}.png new file mode 100644 index 00000000..8bd3a3b2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_terracotta_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_terracotta_tile'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_terracotta_tile'}.png new file mode 100644 index 00000000..41e76fed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_terracotta_tile'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_terracotta_tiles'}.png new file mode 100644 index 00000000..9b5841e4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lime_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_amethyst_block'}.png new file mode 100644 index 00000000..25e746e3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_ancient_debris'}.png new file mode 100644 index 00000000..04e2fae7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_andesite'}.png new file mode 100644 index 00000000..5eb72242 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_basalt'}.png new file mode 100644 index 00000000..d8b1c2d5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_blackstone'}.png new file mode 100644 index 00000000..19b4f0fb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_blue_ice'}.png new file mode 100644 index 00000000..4014eb2a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_borderless_bricks'}.png new file mode 100644 index 00000000..c743c179 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_bricks'}.png new file mode 100644 index 00000000..d1b50dc4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_calcite'}.png new file mode 100644 index 00000000..339c6072 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_clay'}.png new file mode 100644 index 00000000..4ea497e8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_coal_block'}.png new file mode 100644 index 00000000..4f82abd0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_cobblestone'}.png new file mode 100644 index 00000000..d02612b0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_crying_obsidian'}.png new file mode 100644 index 00000000..44445dc5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_dark_prismarine'}.png new file mode 100644 index 00000000..1885aff7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_deepslate'}.png new file mode 100644 index 00000000..c2d69c96 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_diorite'}.png new file mode 100644 index 00000000..06dcd061 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_dirt'}.png new file mode 100644 index 00000000..04f98e57 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_dripstone_block'}.png new file mode 100644 index 00000000..c5e48d8d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_end_stone'}.png new file mode 100644 index 00000000..7100b424 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_gilded_blackstone'}.png new file mode 100644 index 00000000..3a09c24a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_granite'}.png new file mode 100644 index 00000000..08f311b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_ice'}.png new file mode 100644 index 00000000..a2a097ce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_lapis_block'}.png new file mode 100644 index 00000000..151f4b40 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_magma_block'}.png new file mode 100644 index 00000000..f0915018 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_mossy_cobblestone'}.png new file mode 100644 index 00000000..aceb5fa3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_mossy_stone_bricks'}.png new file mode 100644 index 00000000..1d8112c7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_nether_bricks'}.png new file mode 100644 index 00000000..ca30a50a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_netherrack'}.png new file mode 100644 index 00000000..a28b7855 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_obsidian'}.png new file mode 100644 index 00000000..88950084 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_packed_ice'}.png new file mode 100644 index 00000000..a51c1406 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_prismarine'}.png new file mode 100644 index 00000000..e51b8938 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_purpur_block'}.png new file mode 100644 index 00000000..a4ac2b24 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_quartz_block'}.png new file mode 100644 index 00000000..045a87da Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_raw_copper_block'}.png new file mode 100644 index 00000000..b39ededb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_raw_gold_block'}.png new file mode 100644 index 00000000..99fdcfcb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_raw_iron_block'}.png new file mode 100644 index 00000000..f29bac33 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_red_nether_bricks'}.png new file mode 100644 index 00000000..12b8b2ab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_red_sandstone'}.png new file mode 100644 index 00000000..701b1003 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_redstone_block'}.png new file mode 100644 index 00000000..20594bf0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_sandstone'}.png new file mode 100644 index 00000000..d8c93f14 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_smooth_stone'}.png new file mode 100644 index 00000000..fa49137d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_snow_block'}.png new file mode 100644 index 00000000..484fc070 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_stone'}.png new file mode 100644 index 00000000..87d67a21 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_tuff'}.png new file mode 100644 index 00000000..8f9f12b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loded_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lodestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lodestone_bricks'}.png new file mode 100644 index 00000000..6b7aab8e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lodestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lodestone_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lodestone_mini_tiles'}.png new file mode 100644 index 00000000..3c0a809b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lodestone_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lodestone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lodestone_pillar'}.png new file mode 100644 index 00000000..a825338a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lodestone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lodestone_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lodestone_pillar_top'}.png new file mode 100644 index 00000000..c78e2a99 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lodestone_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lodestone_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lodestone_scales'}.png new file mode 100644 index 00000000..8f28f4e8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lodestone_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loom_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loom_table'}.png new file mode 100644 index 00000000..94a8270c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loom_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loreful_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loreful_mud'}.png new file mode 100644 index 00000000..0131ed1e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loreful_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loreful_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loreful_mud_bricks'}.png new file mode 100644 index 00000000..928309ec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loreful_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loreful_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loreful_packed_mud'}.png new file mode 100644 index 00000000..1500ef06 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__loreful_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_acacia_log'}.png new file mode 100644 index 00000000..67fe6204 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_birch_log'}.png new file mode 100644 index 00000000..0b10271f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_cherry_log'}.png new file mode 100644 index 00000000..9690dd95 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_crimson_stem'}.png new file mode 100644 index 00000000..3e903f60 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_dark_oak_log'}.png new file mode 100644 index 00000000..cc0f5459 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_jungle_log'}.png new file mode 100644 index 00000000..90bfe004 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_mangrove_log'}.png new file mode 100644 index 00000000..0b801dd4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_oak_log'}.png new file mode 100644 index 00000000..760ef033 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_spruce_log'}.png new file mode 100644 index 00000000..d5b89924 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_warped_stem'}.png new file mode 100644 index 00000000..98647fea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lumpy_stripped_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lush_mangrove_roots'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lush_mangrove_roots'}.png new file mode 100644 index 00000000..803f2a02 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lush_mangrove_roots'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lush_red_sand'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lush_red_sand'}.png new file mode 100644 index 00000000..e52730be Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lush_red_sand'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lush_sponge'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lush_sponge'}.png new file mode 100644 index 00000000..89abf0fc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__lush_sponge'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_acacia_log'}.png new file mode 100644 index 00000000..40f822cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_birch_log'}.png new file mode 100644 index 00000000..b7d3618b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_cherry_log'}.png new file mode 100644 index 00000000..01fc16bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_crimson_stem'}.png new file mode 100644 index 00000000..3de68f48 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_dark_oak_log'}.png new file mode 100644 index 00000000..41e48d27 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_jungle_log'}.png new file mode 100644 index 00000000..55eb066f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_mangrove_log'}.png new file mode 100644 index 00000000..022b475d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_oak_log'}.png new file mode 100644 index 00000000..d421e54b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_spruce_log'}.png new file mode 100644 index 00000000..12e1c4a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_warped_stem'}.png new file mode 100644 index 00000000..e4991f51 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__m_sign_stripped_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_concrete_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_concrete_bricks'}.png new file mode 100644 index 00000000..2bdb4ddc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_concrete_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_concrete_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_concrete_panel'}.png new file mode 100644 index 00000000..37850ac2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_concrete_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_concrete_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_concrete_pillar'}.png new file mode 100644 index 00000000..46ab8ba5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_concrete_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_concrete_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_concrete_tiles'}.png new file mode 100644 index 00000000..5670deb3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_concrete_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_flower_acacia_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_flower_acacia_leaves'}.png new file mode 100644 index 00000000..a4ac0455 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_flower_acacia_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_flower_birch_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_flower_birch_leaves'}.png new file mode 100644 index 00000000..6ffa9a7b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_flower_birch_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_flower_dark_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_flower_dark_oak_leaves'}.png new file mode 100644 index 00000000..11811e1c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_flower_dark_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_flower_jungle_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_flower_jungle_leaves'}.png new file mode 100644 index 00000000..35707b7c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_flower_jungle_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_flower_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_flower_oak_leaves'}.png new file mode 100644 index 00000000..aad3e60f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_flower_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_flower_spruce_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_flower_spruce_leaves'}.png new file mode 100644 index 00000000..b2f15000 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_flower_spruce_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_glazed_terracotta_pillar_sides'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_glazed_terracotta_pillar_sides'}.png new file mode 100644 index 00000000..2dbbd6d5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_glazed_terracotta_pillar_sides'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_glazed_terracotta_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_glazed_terracotta_pillar_top'}.png new file mode 100644 index 00000000..34fecdd5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_glazed_terracotta_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_glazed_terracotta_smooth_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_glazed_terracotta_smooth_tiles'}.png new file mode 100644 index 00000000..21e52778 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_glazed_terracotta_smooth_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_glazed_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_glazed_terracotta_tiles'}.png new file mode 100644 index 00000000..f64d4a7f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_glazed_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_terracotta_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_terracotta_bricks'}.png new file mode 100644 index 00000000..24e2ac3d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_terracotta_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_terracotta_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_terracotta_column'}.png new file mode 100644 index 00000000..fe3e884a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_terracotta_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_terracotta_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_terracotta_pillar'}.png new file mode 100644 index 00000000..e0f15858 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_terracotta_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_terracotta_tile'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_terracotta_tile'}.png new file mode 100644 index 00000000..0b2a7c2b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_terracotta_tile'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_terracotta_tiles'}.png new file mode 100644 index 00000000..af5e3ce5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magenta_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magma_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magma_block_bricks'}.png new file mode 100644 index 00000000..1a9d11dc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magma_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magma_block_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magma_block_mini_tiles'}.png new file mode 100644 index 00000000..52095fe7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magma_block_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magma_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magma_block_pillar'}.png new file mode 100644 index 00000000..2aead4b6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magma_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magma_block_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magma_block_pillar_top'}.png new file mode 100644 index 00000000..02512255 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magma_block_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magma_block_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magma_block_scales'}.png new file mode 100644 index 00000000..b7e227b9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__magma_block_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mangrove_planks_mosaic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mangrove_planks_mosaic'}.png new file mode 100644 index 00000000..91e7b5ed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mangrove_planks_mosaic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mangrove_planks_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mangrove_planks_panel'}.png new file mode 100644 index 00000000..d3268322 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mangrove_planks_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mangrove_planks_shavings'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mangrove_planks_shavings'}.png new file mode 100644 index 00000000..0616d9e3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mangrove_planks_shavings'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mason_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mason_table'}.png new file mode 100644 index 00000000..efa271fa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mason_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_amethyst_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_amethyst_block_bricks'}.png new file mode 100644 index 00000000..1e75061b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_amethyst_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_ancient_debris_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_ancient_debris_bricks'}.png new file mode 100644 index 00000000..2fcec2b4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_ancient_debris_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_andesite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_andesite_bricks'}.png new file mode 100644 index 00000000..b18b9dbb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_andesite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_basalt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_basalt_bricks'}.png new file mode 100644 index 00000000..ed5630c9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_basalt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_blackstone_bricks'}.png new file mode 100644 index 00000000..6720d04a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_blue_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_blue_ice_bricks'}.png new file mode 100644 index 00000000..adcfd23b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_blue_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_borderless_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_borderless_bricks_bricks'}.png new file mode 100644 index 00000000..f663129e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_borderless_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_bricks_bricks'}.png new file mode 100644 index 00000000..199f46a3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_calcite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_calcite_bricks'}.png new file mode 100644 index 00000000..d3183478 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_calcite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_clay_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_clay_bricks'}.png new file mode 100644 index 00000000..9d19277e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_clay_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_coal_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_coal_block_bricks'}.png new file mode 100644 index 00000000..38bbb3fd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_coal_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_cobblestone_bricks'}.png new file mode 100644 index 00000000..43ba57cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_crying_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_crying_obsidian_bricks'}.png new file mode 100644 index 00000000..98413543 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_crying_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_dark_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_dark_prismarine_bricks'}.png new file mode 100644 index 00000000..7d86a80b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_dark_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_deepslate_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_deepslate_bricks'}.png new file mode 100644 index 00000000..af854976 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_deepslate_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_diorite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_diorite_bricks'}.png new file mode 100644 index 00000000..b2ae55b6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_diorite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_dirt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_dirt_bricks'}.png new file mode 100644 index 00000000..b8ef90c8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_dirt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_dripstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_dripstone_block_bricks'}.png new file mode 100644 index 00000000..62e01be8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_dripstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_end_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_end_stone_bricks'}.png new file mode 100644 index 00000000..0e7f935d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_end_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_gilded_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_gilded_blackstone_bricks'}.png new file mode 100644 index 00000000..6f75544c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_gilded_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_granite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_granite_bricks'}.png new file mode 100644 index 00000000..fc8e52c1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_granite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_ice_bricks'}.png new file mode 100644 index 00000000..59696290 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_lapis_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_lapis_block_bricks'}.png new file mode 100644 index 00000000..abcba3cc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_lapis_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_lodestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_lodestone_bricks'}.png new file mode 100644 index 00000000..c446acfe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_lodestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_magma_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_magma_block_bricks'}.png new file mode 100644 index 00000000..cbabba8d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_magma_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_mossy_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_mossy_cobblestone_bricks'}.png new file mode 100644 index 00000000..e7f93fb6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_mossy_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_mossy_stone_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_mossy_stone_bricks_bricks'}.png new file mode 100644 index 00000000..60555750 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_mossy_stone_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_mud_bricks'}.png new file mode 100644 index 00000000..589d5f97 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_mud_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_mud_bricks_bricks'}.png new file mode 100644 index 00000000..9642bcdf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_mud_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_nether_bricks_bricks'}.png new file mode 100644 index 00000000..3b78ceb0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_netherrack_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_netherrack_bricks'}.png new file mode 100644 index 00000000..ee5c0234 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_netherrack_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_obsidian_bricks'}.png new file mode 100644 index 00000000..267eb80b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_packed_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_packed_ice_bricks'}.png new file mode 100644 index 00000000..62672481 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_packed_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_packed_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_packed_mud_bricks'}.png new file mode 100644 index 00000000..f5b5bbcb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_packed_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_prismarine_bricks'}.png new file mode 100644 index 00000000..1cc730f4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_purpur_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_purpur_block_bricks'}.png new file mode 100644 index 00000000..25c87d96 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_purpur_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_quartz_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_quartz_block_bricks'}.png new file mode 100644 index 00000000..fdfaf264 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_quartz_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_raw_copper_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_raw_copper_block_bricks'}.png new file mode 100644 index 00000000..79275925 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_raw_copper_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_raw_gold_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_raw_gold_block_bricks'}.png new file mode 100644 index 00000000..329d204f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_raw_gold_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_raw_iron_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_raw_iron_block_bricks'}.png new file mode 100644 index 00000000..9c4fe49e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_raw_iron_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_red_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_red_nether_bricks_bricks'}.png new file mode 100644 index 00000000..161c9c90 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_red_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_red_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_red_sandstone_bricks'}.png new file mode 100644 index 00000000..1e530359 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_red_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_redstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_redstone_block_bricks'}.png new file mode 100644 index 00000000..37c4f6cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_redstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_sandstone_bricks'}.png new file mode 100644 index 00000000..81d4a8da Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_smooth_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_smooth_stone_bricks'}.png new file mode 100644 index 00000000..c617a8ff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_smooth_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_snow_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_snow_block_bricks'}.png new file mode 100644 index 00000000..9961b01e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_snow_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_stone_bricks'}.png new file mode 100644 index 00000000..00eb0809 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_tuff_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_tuff_bricks'}.png new file mode 100644 index 00000000..f2a74ff3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__massive_tuff_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mini_tiled_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mini_tiled_mud'}.png new file mode 100644 index 00000000..a1e48662 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mini_tiled_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mini_tiled_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mini_tiled_mud_bricks'}.png new file mode 100644 index 00000000..8531112f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mini_tiled_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mini_tiled_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mini_tiled_packed_mud'}.png new file mode 100644 index 00000000..2e5ae576 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mini_tiled_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_black_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_black_glazed_terracotta'}.png new file mode 100644 index 00000000..8ad5ce29 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_black_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_blue_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_blue_glazed_terracotta'}.png new file mode 100644 index 00000000..ea92b100 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_blue_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_brown_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_brown_glazed_terracotta'}.png new file mode 100644 index 00000000..a722cdbd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_brown_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_cyan_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_cyan_glazed_terracotta'}.png new file mode 100644 index 00000000..e4f03ac4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_cyan_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_gray_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_gray_glazed_terracotta'}.png new file mode 100644 index 00000000..7b035f8d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_gray_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_green_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_green_glazed_terracotta'}.png new file mode 100644 index 00000000..51d3e232 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_green_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_light_blue_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_light_blue_glazed_terracotta'}.png new file mode 100644 index 00000000..3f8627f3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_light_blue_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_light_gray_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_light_gray_glazed_terracotta'}.png new file mode 100644 index 00000000..366371c0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_light_gray_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_lime_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_lime_glazed_terracotta'}.png new file mode 100644 index 00000000..222b70db Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_lime_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_magenta_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_magenta_glazed_terracotta'}.png new file mode 100644 index 00000000..8f440c40 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_magenta_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_orange_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_orange_glazed_terracotta'}.png new file mode 100644 index 00000000..2801828b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_orange_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_pink_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_pink_glazed_terracotta'}.png new file mode 100644 index 00000000..0b31edda Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_pink_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_purple_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_purple_glazed_terracotta'}.png new file mode 100644 index 00000000..c7662343 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_purple_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_red_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_red_glazed_terracotta'}.png new file mode 100644 index 00000000..53541aa0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_red_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_white_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_white_glazed_terracotta'}.png new file mode 100644 index 00000000..b7788463 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_white_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_yellow_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_yellow_glazed_terracotta'}.png new file mode 100644 index 00000000..598bab57 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__minimized_yellow_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_acacia_log'}.png new file mode 100644 index 00000000..3541405f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_birch_log'}.png new file mode 100644 index 00000000..d949ab20 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_cherry_log'}.png new file mode 100644 index 00000000..18542b3e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_crimson_stem'}.png new file mode 100644 index 00000000..e2233d94 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_cubed_oak_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_cubed_oak_bookshelf'}.png new file mode 100644 index 00000000..fd12dc29 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_cubed_oak_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_dark_oak_log'}.png new file mode 100644 index 00000000..dc5c8375 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_jungle_log'}.png new file mode 100644 index 00000000..93ece10f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_mangrove_log'}.png new file mode 100644 index 00000000..78a7dd0a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_oak_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_oak_bookshelf'}.png new file mode 100644 index 00000000..82c16e4e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_oak_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_oak_large_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_oak_large_bookshelf'}.png new file mode 100644 index 00000000..8a6d8d70 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_oak_large_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_oak_log'}.png new file mode 100644 index 00000000..79757e05 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_spruce_log'}.png new file mode 100644 index 00000000..8b6ce852 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mixed_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_black_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_black_concrete'}.png new file mode 100644 index 00000000..3b6bea4e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_black_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_blue_concrete'}.png new file mode 100644 index 00000000..1b301582 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_brown_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_brown_concrete'}.png new file mode 100644 index 00000000..c71eb3a8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_brown_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_cyan_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_cyan_concrete'}.png new file mode 100644 index 00000000..d435de90 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_cyan_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_gray_concrete'}.png new file mode 100644 index 00000000..56d31c1d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_green_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_green_concrete'}.png new file mode 100644 index 00000000..4bb46dcc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_green_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_light_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_light_blue_concrete'}.png new file mode 100644 index 00000000..a5d80694 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_light_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_light_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_light_gray_concrete'}.png new file mode 100644 index 00000000..981bd4bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_light_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_lime_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_lime_concrete'}.png new file mode 100644 index 00000000..6bc0f2c6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_lime_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_magenta_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_magenta_concrete'}.png new file mode 100644 index 00000000..c49d0359 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_magenta_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_orange_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_orange_concrete'}.png new file mode 100644 index 00000000..4ef79219 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_orange_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_pink_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_pink_concrete'}.png new file mode 100644 index 00000000..a49a9483 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_pink_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_purple_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_purple_concrete'}.png new file mode 100644 index 00000000..82c969c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_purple_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_red_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_red_concrete'}.png new file mode 100644 index 00000000..5868380e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_red_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_white_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_white_concrete'}.png new file mode 100644 index 00000000..3d607b06 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_white_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_yellow_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_yellow_concrete'}.png new file mode 100644 index 00000000..4c4726bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mosaic_yellow_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_cobblestone_bricks'}.png new file mode 100644 index 00000000..81fcbcbf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_cobblestone_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_cobblestone_mini_tiles'}.png new file mode 100644 index 00000000..506e7930 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_cobblestone_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_cobblestone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_cobblestone_pillar'}.png new file mode 100644 index 00000000..0ea2dfce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_cobblestone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_cobblestone_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_cobblestone_pillar_top'}.png new file mode 100644 index 00000000..3d5aeef6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_cobblestone_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_cobblestone_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_cobblestone_scales'}.png new file mode 100644 index 00000000..c287bf1c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_cobblestone_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_dried_kelp_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_dried_kelp_block'}.png new file mode 100644 index 00000000..1038c76d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_dried_kelp_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_stone_bricks_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_stone_bricks_mini_tiles'}.png new file mode 100644 index 00000000..7b7a1854 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_stone_bricks_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_stone_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_stone_bricks_pillar'}.png new file mode 100644 index 00000000..23ceb55d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_stone_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_stone_bricks_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_stone_bricks_pillar_top'}.png new file mode 100644 index 00000000..713c82ae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_stone_bricks_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_stone_bricks_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_stone_bricks_scales'}.png new file mode 100644 index 00000000..edb7c1d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mossy_stone_bricks_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mud_bricks'}.png new file mode 100644 index 00000000..c62f7fa3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mud_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mud_bricks_bricks'}.png new file mode 100644 index 00000000..0082bdbe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mud_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mud_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mud_bricks_pillar'}.png new file mode 100644 index 00000000..aaf87e61 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mud_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mud_bricks_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mud_bricks_pillar_top'}.png new file mode 100644 index 00000000..77adefd5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mud_bricks_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mud_bricks_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mud_bricks_scales'}.png new file mode 100644 index 00000000..cc880fd0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mud_bricks_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mud_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mud_pillar'}.png new file mode 100644 index 00000000..35281828 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mud_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mud_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mud_pillar_top'}.png new file mode 100644 index 00000000..56d8f82b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mud_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mud_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mud_scales'}.png new file mode 100644 index 00000000..67a2f318 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__mud_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__muddy_mangrove_roots'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__muddy_mangrove_roots'}.png new file mode 100644 index 00000000..3c77d4ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__muddy_mangrove_roots'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_acacia_log'}.png new file mode 100644 index 00000000..16ceaf2f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_acacia_planks'}.png new file mode 100644 index 00000000..6f7bdcd7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_birch_log'}.png new file mode 100644 index 00000000..8aacd759 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_birch_planks'}.png new file mode 100644 index 00000000..ff54b833 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_cherry_log'}.png new file mode 100644 index 00000000..af86a7bc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_cherry_planks'}.png new file mode 100644 index 00000000..879a0172 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_crimson_planks'}.png new file mode 100644 index 00000000..466ff6e3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_crimson_stem'}.png new file mode 100644 index 00000000..ee06853f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_dark_oak_log'}.png new file mode 100644 index 00000000..81867907 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_dark_oak_planks'}.png new file mode 100644 index 00000000..d4ad3e23 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_jungle_log'}.png new file mode 100644 index 00000000..39628b87 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_jungle_planks'}.png new file mode 100644 index 00000000..6dc29688 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_mangrove_log'}.png new file mode 100644 index 00000000..97f4322c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_mangrove_planks'}.png new file mode 100644 index 00000000..87ef9411 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_oak_log'}.png new file mode 100644 index 00000000..a30d398d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_oak_planks'}.png new file mode 100644 index 00000000..b82758f0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_spruce_log'}.png new file mode 100644 index 00000000..6558e02a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_spruce_planks'}.png new file mode 100644 index 00000000..3dcbb937 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_warped_planks'}.png new file mode 100644 index 00000000..ba1f8541 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_warped_stem'}.png new file mode 100644 index 00000000..a1a02b8b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nailed_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_acacia_planks'}.png new file mode 100644 index 00000000..e895d74d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_bamboo_planks'}.png new file mode 100644 index 00000000..2ce316c2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_birch_planks'}.png new file mode 100644 index 00000000..c1f1b47d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_cherry_planks'}.png new file mode 100644 index 00000000..a8d4a7e5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_crimson_planks'}.png new file mode 100644 index 00000000..5a40ecfe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_dark_oak_planks'}.png new file mode 100644 index 00000000..195d6eb7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_jungle_planks'}.png new file mode 100644 index 00000000..255217f3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_mangrove_planks'}.png new file mode 100644 index 00000000..3c208580 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_oak_planks'}.png new file mode 100644 index 00000000..f687e1c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_spruce_planks'}.png new file mode 100644 index 00000000..eb356dc7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_warped_planks'}.png new file mode 100644 index 00000000..0a93fd16 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__natural_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_bricks_bricks'}.png new file mode 100644 index 00000000..932aab7d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_bricks_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_bricks_mini_tiles'}.png new file mode 100644 index 00000000..59a99049 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_bricks_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_bricks_pillar'}.png new file mode 100644 index 00000000..df30f69c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_bricks_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_bricks_pillar_top'}.png new file mode 100644 index 00000000..f9e53d9f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_bricks_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_bricks_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_bricks_scales'}.png new file mode 100644 index 00000000..1a165abe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_bricks_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_carved_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_carved_pumpkin'}.png new file mode 100644 index 00000000..5cb2498f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_carved_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_engraved_glowstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_engraved_glowstone'}.png new file mode 100644 index 00000000..e6577da0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_engraved_glowstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_jack_o_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_jack_o_lantern'}.png new file mode 100644 index 00000000..5cb2498f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_jack_o_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_pumpkin'}.png new file mode 100644 index 00000000..6cb8ce26 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nether_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__netherite_block_panels'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__netherite_block_panels'}.png new file mode 100644 index 00000000..0f7a4dd8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__netherite_block_panels'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__netherrack_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__netherrack_bricks'}.png new file mode 100644 index 00000000..a55b1de3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__netherrack_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__netherrack_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__netherrack_mini_tiles'}.png new file mode 100644 index 00000000..c4befcd8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__netherrack_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__netherrack_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__netherrack_pillar'}.png new file mode 100644 index 00000000..2f02500b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__netherrack_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__netherrack_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__netherrack_pillar_top'}.png new file mode 100644 index 00000000..5a41455e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__netherrack_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__netherrack_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__netherrack_scales'}.png new file mode 100644 index 00000000..bf5d4d08 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__netherrack_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__netherwart_dried_kelp_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__netherwart_dried_kelp_block'}.png new file mode 100644 index 00000000..4670e4a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__netherwart_dried_kelp_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nice_redstone_lamp'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nice_redstone_lamp'}.png new file mode 100644 index 00000000..2460e277 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nice_redstone_lamp'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nice_white_redstone_lamp'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nice_white_redstone_lamp'}.png new file mode 100644 index 00000000..6c3c6542 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__nice_white_redstone_lamp'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_bared_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_bared_glass'}.png new file mode 100644 index 00000000..ce8a2603 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_bared_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_bookshelf'}.png new file mode 100644 index 00000000..a8567cdc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_bordered_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_bordered_glass'}.png new file mode 100644 index 00000000..c47a2ddf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_bordered_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_diamond_bordered_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_diamond_bordered_glass'}.png new file mode 100644 index 00000000..9354b0a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_diamond_bordered_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_empty_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_empty_bookshelf'}.png new file mode 100644 index 00000000..76510f2e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_empty_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_horizontal_lined_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_horizontal_lined_glass'}.png new file mode 100644 index 00000000..46914f09 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_horizontal_lined_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_large_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_large_bookshelf'}.png new file mode 100644 index 00000000..4d695631 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_large_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_large_diamond_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_large_diamond_glass'}.png new file mode 100644 index 00000000..ca228f76 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_large_diamond_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_lighted_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_lighted_bookshelf'}.png new file mode 100644 index 00000000..70cd208c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_lighted_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_lighted_large_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_lighted_large_bookshelf'}.png new file mode 100644 index 00000000..d74ccc2a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_lighted_large_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_line_bared_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_line_bared_glass'}.png new file mode 100644 index 00000000..d5390c2e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_line_bared_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_ornate_bared_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_ornate_bared_glass'}.png new file mode 100644 index 00000000..ab6ba66d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_ornate_bared_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_planks_mosaic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_planks_mosaic'}.png new file mode 100644 index 00000000..76a75e05 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_planks_mosaic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_planks_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_planks_panel'}.png new file mode 100644 index 00000000..78cb0d3d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_planks_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_planks_shavings'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_planks_shavings'}.png new file mode 100644 index 00000000..3c6ba79c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_planks_shavings'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_snowflake_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_snowflake_glass'}.png new file mode 100644 index 00000000..0e8158ce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_snowflake_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_spaced_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_spaced_bookshelf'}.png new file mode 100644 index 00000000..337fefef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_spaced_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_spaced_large_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_spaced_large_bookshelf'}.png new file mode 100644 index 00000000..ca3334e8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_spaced_large_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_webbed_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_webbed_bookshelf'}.png new file mode 100644 index 00000000..c291330c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_webbed_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_webbed_large_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_webbed_large_bookshelf'}.png new file mode 100644 index 00000000..ba560277 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_webbed_large_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_woven_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_woven_glass'}.png new file mode 100644 index 00000000..78724752 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__oak_woven_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__obsidian_bricks'}.png new file mode 100644 index 00000000..72d69868 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__obsidian_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__obsidian_mini_tiles'}.png new file mode 100644 index 00000000..ab8684a9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__obsidian_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__obsidian_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__obsidian_pillar'}.png new file mode 100644 index 00000000..37baa0ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__obsidian_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__obsidian_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__obsidian_pillar_top'}.png new file mode 100644 index 00000000..9b006387 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__obsidian_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__obsidian_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__obsidian_scales'}.png new file mode 100644 index 00000000..dc6015d8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__obsidian_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_amethyst_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_amethyst_block_bricks'}.png new file mode 100644 index 00000000..2be03931 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_amethyst_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_ancient_debris_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_ancient_debris_bricks'}.png new file mode 100644 index 00000000..8c08bd4d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_ancient_debris_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_andesite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_andesite_bricks'}.png new file mode 100644 index 00000000..cfa5596c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_andesite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_basalt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_basalt_bricks'}.png new file mode 100644 index 00000000..ded20a7d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_basalt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_blackstone_bricks'}.png new file mode 100644 index 00000000..48c3aa1e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_blue_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_blue_ice_bricks'}.png new file mode 100644 index 00000000..794c3fb6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_blue_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_borderless_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_borderless_bricks_bricks'}.png new file mode 100644 index 00000000..48999fab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_borderless_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_bricks_bricks'}.png new file mode 100644 index 00000000..85663b44 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_calcite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_calcite_bricks'}.png new file mode 100644 index 00000000..2bdd73e9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_calcite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_clay_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_clay_bricks'}.png new file mode 100644 index 00000000..70e26234 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_clay_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_coal_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_coal_block_bricks'}.png new file mode 100644 index 00000000..fa11311b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_coal_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_cobblestone_bricks'}.png new file mode 100644 index 00000000..5ec91030 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_crying_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_crying_obsidian_bricks'}.png new file mode 100644 index 00000000..dc2ecfcf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_crying_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_dark_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_dark_prismarine_bricks'}.png new file mode 100644 index 00000000..2f7a3ed7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_dark_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_diorite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_diorite_bricks'}.png new file mode 100644 index 00000000..deeb16a9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_diorite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_dirt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_dirt_bricks'}.png new file mode 100644 index 00000000..36bbdf8a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_dirt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_dripstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_dripstone_block_bricks'}.png new file mode 100644 index 00000000..b9e72033 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_dripstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_end_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_end_stone_bricks'}.png new file mode 100644 index 00000000..77a635fb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_end_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_gilded_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_gilded_blackstone_bricks'}.png new file mode 100644 index 00000000..bcf5ea2c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_gilded_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_granite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_granite_bricks'}.png new file mode 100644 index 00000000..39abfe69 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_granite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_ice_bricks'}.png new file mode 100644 index 00000000..0853e9ae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_lapis_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_lapis_block_bricks'}.png new file mode 100644 index 00000000..a7002674 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_lapis_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_lodestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_lodestone_bricks'}.png new file mode 100644 index 00000000..7741869d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_lodestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_magma_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_magma_block_bricks'}.png new file mode 100644 index 00000000..ea6dad09 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_magma_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_mossy_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_mossy_cobblestone_bricks'}.png new file mode 100644 index 00000000..7a2ed3a4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_mossy_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_mossy_stone_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_mossy_stone_bricks_bricks'}.png new file mode 100644 index 00000000..154e8827 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_mossy_stone_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_mud_bricks'}.png new file mode 100644 index 00000000..23a8a56e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_mud_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_mud_bricks_bricks'}.png new file mode 100644 index 00000000..82e08514 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_mud_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_nether_bricks_bricks'}.png new file mode 100644 index 00000000..19d2b874 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_netherrack_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_netherrack_bricks'}.png new file mode 100644 index 00000000..a18e9200 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_netherrack_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_obsidian_bricks'}.png new file mode 100644 index 00000000..59f46983 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_packed_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_packed_ice_bricks'}.png new file mode 100644 index 00000000..2f9bb2d8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_packed_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_packed_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_packed_mud_bricks'}.png new file mode 100644 index 00000000..bcc219eb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_packed_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_prismarine_bricks'}.png new file mode 100644 index 00000000..dcaf0b42 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_purpur_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_purpur_block_bricks'}.png new file mode 100644 index 00000000..b4846ced Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_purpur_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_raw_copper_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_raw_copper_block_bricks'}.png new file mode 100644 index 00000000..731093bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_raw_copper_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_raw_gold_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_raw_gold_block_bricks'}.png new file mode 100644 index 00000000..db7a5996 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_raw_gold_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_raw_iron_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_raw_iron_block_bricks'}.png new file mode 100644 index 00000000..e6882ad6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_raw_iron_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_red_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_red_nether_bricks_bricks'}.png new file mode 100644 index 00000000..04eb30cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_red_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_red_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_red_sandstone_bricks'}.png new file mode 100644 index 00000000..e7aa5760 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_red_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_redstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_redstone_block_bricks'}.png new file mode 100644 index 00000000..97c2f187 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_redstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_sandstone_bricks'}.png new file mode 100644 index 00000000..c7c25012 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_smooth_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_smooth_stone_bricks'}.png new file mode 100644 index 00000000..a29f9253 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_smooth_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_snow_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_snow_block_bricks'}.png new file mode 100644 index 00000000..61cac143 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_snow_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_stone_bricks'}.png new file mode 100644 index 00000000..711b9620 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_tuff_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_tuff_bricks'}.png new file mode 100644 index 00000000..3e7f7873 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__offset_tuff_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__old_moss_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__old_moss_block'}.png new file mode 100644 index 00000000..bec29d38 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__old_moss_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__old_mushroom_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__old_mushroom_stem'}.png new file mode 100644 index 00000000..bb0da1a9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__old_mushroom_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__old_sponge'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__old_sponge'}.png new file mode 100644 index 00000000..835eb62c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__old_sponge'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_acacia_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_acacia_leaves'}.png new file mode 100644 index 00000000..a09ca741 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_acacia_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_birch_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_birch_leaves'}.png new file mode 100644 index 00000000..f9cc880b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_birch_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_concrete_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_concrete_bricks'}.png new file mode 100644 index 00000000..36710d72 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_concrete_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_concrete_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_concrete_panel'}.png new file mode 100644 index 00000000..bc492690 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_concrete_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_concrete_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_concrete_pillar'}.png new file mode 100644 index 00000000..af443c23 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_concrete_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_concrete_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_concrete_tiles'}.png new file mode 100644 index 00000000..f86ae17c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_concrete_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_dark_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_dark_oak_leaves'}.png new file mode 100644 index 00000000..73792ee5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_dark_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_glazed_terracotta_pillar_sides'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_glazed_terracotta_pillar_sides'}.png new file mode 100644 index 00000000..db379067 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_glazed_terracotta_pillar_sides'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_glazed_terracotta_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_glazed_terracotta_pillar_top'}.png new file mode 100644 index 00000000..ec3961ec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_glazed_terracotta_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_glazed_terracotta_smooth_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_glazed_terracotta_smooth_tiles'}.png new file mode 100644 index 00000000..b80ade88 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_glazed_terracotta_smooth_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_glazed_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_glazed_terracotta_tiles'}.png new file mode 100644 index 00000000..c9405a80 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_glazed_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_gravel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_gravel'}.png new file mode 100644 index 00000000..2882f614 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_gravel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_jungle_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_jungle_leaves'}.png new file mode 100644 index 00000000..4927999c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_jungle_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_oak_leaves'}.png new file mode 100644 index 00000000..73792ee5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_spruce_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_spruce_leaves'}.png new file mode 100644 index 00000000..9db2a1fb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_spruce_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_terracotta_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_terracotta_bricks'}.png new file mode 100644 index 00000000..9d5a05a3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_terracotta_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_terracotta_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_terracotta_column'}.png new file mode 100644 index 00000000..bd40a73a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_terracotta_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_terracotta_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_terracotta_pillar'}.png new file mode 100644 index 00000000..a1ed9de9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_terracotta_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_terracotta_tile'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_terracotta_tile'}.png new file mode 100644 index 00000000..d2c2af46 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_terracotta_tile'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_terracotta_tiles'}.png new file mode 100644 index 00000000..af3029d8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__orange_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_amethyst_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_amethyst_block_pillar'}.png new file mode 100644 index 00000000..44443c44 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_amethyst_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_ancient_debris_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_ancient_debris_pillar'}.png new file mode 100644 index 00000000..cd1cdb3c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_ancient_debris_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_andesite_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_andesite_pillar'}.png new file mode 100644 index 00000000..9ab36075 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_andesite_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_basalt_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_basalt_pillar'}.png new file mode 100644 index 00000000..a7838b4a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_basalt_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_black_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_black_stained_glass'}.png new file mode 100644 index 00000000..487bf353 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_black_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_blackstone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_blackstone_pillar'}.png new file mode 100644 index 00000000..13ec7dca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_blackstone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_blue_ice_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_blue_ice_pillar'}.png new file mode 100644 index 00000000..024c79c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_blue_ice_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_blue_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_blue_stained_glass'}.png new file mode 100644 index 00000000..38a83945 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_blue_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_borderless_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_borderless_bricks_pillar'}.png new file mode 100644 index 00000000..5db9a2d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_borderless_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_bricks_pillar'}.png new file mode 100644 index 00000000..65fe1ef0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_brown_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_brown_stained_glass'}.png new file mode 100644 index 00000000..c895f1ae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_brown_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_calcite_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_calcite_pillar'}.png new file mode 100644 index 00000000..b44ab7b5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_calcite_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_clay_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_clay_pillar'}.png new file mode 100644 index 00000000..5b94b568 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_clay_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_coal_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_coal_block_pillar'}.png new file mode 100644 index 00000000..55ca4705 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_coal_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_cobblestone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_cobblestone_pillar'}.png new file mode 100644 index 00000000..468bd712 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_cobblestone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_crying_obsidian_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_crying_obsidian_pillar'}.png new file mode 100644 index 00000000..8ba71a54 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_crying_obsidian_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_cyan_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_cyan_stained_glass'}.png new file mode 100644 index 00000000..d02b3762 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_cyan_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_dark_prismarine_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_dark_prismarine_pillar'}.png new file mode 100644 index 00000000..3e7e8133 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_dark_prismarine_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_deepslate_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_deepslate_pillar'}.png new file mode 100644 index 00000000..ea9b86d5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_deepslate_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_diorite_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_diorite_pillar'}.png new file mode 100644 index 00000000..5329abf0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_diorite_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_dirt_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_dirt_pillar'}.png new file mode 100644 index 00000000..79d40f97 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_dirt_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_dripstone_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_dripstone_block_pillar'}.png new file mode 100644 index 00000000..2e127d2e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_dripstone_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_end_stone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_end_stone_pillar'}.png new file mode 100644 index 00000000..951f15ef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_end_stone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_gilded_blackstone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_gilded_blackstone_pillar'}.png new file mode 100644 index 00000000..5bb472d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_gilded_blackstone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_glowstone_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_glowstone_lantern'}.png new file mode 100644 index 00000000..0462daf8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_glowstone_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_granite_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_granite_pillar'}.png new file mode 100644 index 00000000..b9444e11 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_granite_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_gray_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_gray_stained_glass'}.png new file mode 100644 index 00000000..6b921d2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_gray_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_green_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_green_stained_glass'}.png new file mode 100644 index 00000000..be61e9d5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_green_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_ice_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_ice_pillar'}.png new file mode 100644 index 00000000..390dce41 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_ice_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_lapis_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_lapis_block_pillar'}.png new file mode 100644 index 00000000..31cbc4bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_lapis_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_leaded_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_leaded_glass'}.png new file mode 100644 index 00000000..8b5caed4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_leaded_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_light_blue_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_light_blue_stained_glass'}.png new file mode 100644 index 00000000..036bd133 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_light_blue_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_light_gray_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_light_gray_stained_glass'}.png new file mode 100644 index 00000000..bd1d8c9d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_light_gray_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_lime_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_lime_stained_glass'}.png new file mode 100644 index 00000000..da0424cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_lime_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_lodestone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_lodestone_pillar'}.png new file mode 100644 index 00000000..328c5267 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_lodestone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_magenta_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_magenta_stained_glass'}.png new file mode 100644 index 00000000..91adb53f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_magenta_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_magma_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_magma_block_pillar'}.png new file mode 100644 index 00000000..4cbdafbe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_magma_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_mossy_cobblestone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_mossy_cobblestone_pillar'}.png new file mode 100644 index 00000000..c7f43741 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_mossy_cobblestone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_mossy_stone_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_mossy_stone_bricks_pillar'}.png new file mode 100644 index 00000000..33835de8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_mossy_stone_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_mud_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_mud_bricks_pillar'}.png new file mode 100644 index 00000000..c8196b57 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_mud_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_mud_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_mud_pillar'}.png new file mode 100644 index 00000000..943fb2b2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_mud_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_nether_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_nether_bricks_pillar'}.png new file mode 100644 index 00000000..5e3454b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_nether_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_netherrack_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_netherrack_pillar'}.png new file mode 100644 index 00000000..9f07710c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_netherrack_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_obsidian_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_obsidian_pillar'}.png new file mode 100644 index 00000000..2e06c0d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_obsidian_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_orange_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_orange_stained_glass'}.png new file mode 100644 index 00000000..d4f248bc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_orange_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_packed_ice_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_packed_ice_pillar'}.png new file mode 100644 index 00000000..8d39110c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_packed_ice_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_packed_mud_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_packed_mud_pillar'}.png new file mode 100644 index 00000000..5925d11a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_packed_mud_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_pink_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_pink_stained_glass'}.png new file mode 100644 index 00000000..eb8b4e86 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_pink_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_prismarine_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_prismarine_pillar'}.png new file mode 100644 index 00000000..07a03be3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_prismarine_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_purple_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_purple_stained_glass'}.png new file mode 100644 index 00000000..574ce4f4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_purple_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_purpur_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_purpur_block_pillar'}.png new file mode 100644 index 00000000..e050e391 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_purpur_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_quartz_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_quartz_block_pillar'}.png new file mode 100644 index 00000000..9e6a4628 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_quartz_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_raw_copper_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_raw_copper_block_pillar'}.png new file mode 100644 index 00000000..b7c52274 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_raw_copper_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_raw_gold_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_raw_gold_block_pillar'}.png new file mode 100644 index 00000000..12157e27 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_raw_gold_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_raw_iron_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_raw_iron_block_pillar'}.png new file mode 100644 index 00000000..7ce6ee66 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_raw_iron_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_red_nether_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_red_nether_bricks_pillar'}.png new file mode 100644 index 00000000..962342d0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_red_nether_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_red_sandstone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_red_sandstone_pillar'}.png new file mode 100644 index 00000000..b91ad937 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_red_sandstone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_red_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_red_stained_glass'}.png new file mode 100644 index 00000000..4cdd08d9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_red_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_redstone_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_redstone_block_pillar'}.png new file mode 100644 index 00000000..4e963a07 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_redstone_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_redstone_lamp'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_redstone_lamp'}.png new file mode 100644 index 00000000..91dbf6ed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_redstone_lamp'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_sandstone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_sandstone_pillar'}.png new file mode 100644 index 00000000..87b17924 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_sandstone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_sea_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_sea_lantern'}.png new file mode 100644 index 00000000..2ea951cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_sea_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_shroomlight_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_shroomlight_lantern'}.png new file mode 100644 index 00000000..c9f8d4e8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_shroomlight_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_smooth_stone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_smooth_stone_pillar'}.png new file mode 100644 index 00000000..c62f892d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_smooth_stone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_snow_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_snow_block_pillar'}.png new file mode 100644 index 00000000..4536edfd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_snow_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_stone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_stone_pillar'}.png new file mode 100644 index 00000000..45de97c2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_stone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_tuff_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_tuff_pillar'}.png new file mode 100644 index 00000000..bac7436e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_tuff_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_white_redstone_lamp'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_white_redstone_lamp'}.png new file mode 100644 index 00000000..c4cd580d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_white_redstone_lamp'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_white_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_white_stained_glass'}.png new file mode 100644 index 00000000..c652ed36 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_white_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_yellow_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_yellow_stained_glass'}.png new file mode 100644 index 00000000..249e0cc8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ornate_yellow_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_acacia_log'}.png new file mode 100644 index 00000000..a9656266 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_autumnkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_autumnkin'}.png new file mode 100644 index 00000000..d547329a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_autumnkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_birch_log'}.png new file mode 100644 index 00000000..c75d24ea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_cherry_log'}.png new file mode 100644 index 00000000..acb4ed30 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_dark_oak_log'}.png new file mode 100644 index 00000000..cdf0ec4b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_jungle_log'}.png new file mode 100644 index 00000000..d33af220 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_lumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_lumpkin'}.png new file mode 100644 index 00000000..e1880504 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_lumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_mangrove_log'}.png new file mode 100644 index 00000000..5d65fc57 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_oak_log'}.png new file mode 100644 index 00000000..bf291315 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_pimpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_pimpkin'}.png new file mode 100644 index 00000000..fdb651f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_pimpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_pumpkin'}.png new file mode 100644 index 00000000..9c68fe93 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_sand'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_sand'}.png new file mode 100644 index 00000000..5813d7de Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_sand'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_spruce_log'}.png new file mode 100644 index 00000000..ddca98aa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overgrown_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overjoyed_carved_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overjoyed_carved_pumpkin'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overjoyed_carved_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overjoyed_jack_o_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overjoyed_jack_o_lantern'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overjoyed_jack_o_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_amethyst_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_amethyst_block_tiles'}.png new file mode 100644 index 00000000..e420cc00 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_amethyst_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_ancient_debris_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_ancient_debris_tiles'}.png new file mode 100644 index 00000000..37b0c71e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_ancient_debris_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_andesite_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_andesite_tiles'}.png new file mode 100644 index 00000000..29c25f41 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_andesite_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_basalt_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_basalt_tiles'}.png new file mode 100644 index 00000000..a7d36c5c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_basalt_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_blackstone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_blackstone_tiles'}.png new file mode 100644 index 00000000..4d32025e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_blackstone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_blue_ice_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_blue_ice_tiles'}.png new file mode 100644 index 00000000..3d8370be Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_blue_ice_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_borderless_bricks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_borderless_bricks_tiles'}.png new file mode 100644 index 00000000..2fea3ac3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_borderless_bricks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_bricks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_bricks_tiles'}.png new file mode 100644 index 00000000..a6181752 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_bricks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_calcite_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_calcite_tiles'}.png new file mode 100644 index 00000000..462749c2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_calcite_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_clay_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_clay_tiles'}.png new file mode 100644 index 00000000..682aff0b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_clay_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_coal_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_coal_block_tiles'}.png new file mode 100644 index 00000000..da14ea52 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_coal_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_cobblestone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_cobblestone_tiles'}.png new file mode 100644 index 00000000..501f7652 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_cobblestone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_crying_obsidian_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_crying_obsidian_tiles'}.png new file mode 100644 index 00000000..b817c56c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_crying_obsidian_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_dark_prismarine_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_dark_prismarine_tiles'}.png new file mode 100644 index 00000000..96ddd8a9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_dark_prismarine_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_deepslate_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_deepslate_tiles'}.png new file mode 100644 index 00000000..b772818f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_deepslate_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_diorite_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_diorite_tiles'}.png new file mode 100644 index 00000000..652b027f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_diorite_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_dirt_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_dirt_tiles'}.png new file mode 100644 index 00000000..83dad22d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_dirt_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_dripstone_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_dripstone_block_tiles'}.png new file mode 100644 index 00000000..cd585056 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_dripstone_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_end_stone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_end_stone_tiles'}.png new file mode 100644 index 00000000..0f581283 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_end_stone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_gilded_blackstone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_gilded_blackstone_tiles'}.png new file mode 100644 index 00000000..601b5af1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_gilded_blackstone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_granite_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_granite_tiles'}.png new file mode 100644 index 00000000..8766474e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_granite_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_ice_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_ice_tiles'}.png new file mode 100644 index 00000000..ee6a25de Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_ice_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_lapis_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_lapis_block_tiles'}.png new file mode 100644 index 00000000..fa09db01 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_lapis_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_lodestone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_lodestone_tiles'}.png new file mode 100644 index 00000000..3b6af49f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_lodestone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_magma_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_magma_block_tiles'}.png new file mode 100644 index 00000000..f2e6a7da Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_magma_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_mossy_cobblestone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_mossy_cobblestone_tiles'}.png new file mode 100644 index 00000000..9326d197 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_mossy_cobblestone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_mossy_stone_bricks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_mossy_stone_bricks_tiles'}.png new file mode 100644 index 00000000..409bdfcc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_mossy_stone_bricks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_mud_bricks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_mud_bricks_tiles'}.png new file mode 100644 index 00000000..2682adce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_mud_bricks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_mud_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_mud_tiles'}.png new file mode 100644 index 00000000..4dc23d32 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_mud_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_nether_bricks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_nether_bricks_tiles'}.png new file mode 100644 index 00000000..e1262a27 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_nether_bricks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_netherrack_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_netherrack_tiles'}.png new file mode 100644 index 00000000..fe1d3bc4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_netherrack_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_obsidian_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_obsidian_tiles'}.png new file mode 100644 index 00000000..7dac8b64 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_obsidian_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_packed_ice_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_packed_ice_tiles'}.png new file mode 100644 index 00000000..61f67e50 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_packed_ice_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_packed_mud_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_packed_mud_tiles'}.png new file mode 100644 index 00000000..eda3cb89 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_packed_mud_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_prismarine_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_prismarine_tiles'}.png new file mode 100644 index 00000000..2c1a57ba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_prismarine_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_purpur_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_purpur_block_tiles'}.png new file mode 100644 index 00000000..e219a3ee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_purpur_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_quartz_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_quartz_block_tiles'}.png new file mode 100644 index 00000000..2cf81df8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_quartz_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_raw_copper_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_raw_copper_block_tiles'}.png new file mode 100644 index 00000000..719200ce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_raw_copper_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_raw_gold_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_raw_gold_block_tiles'}.png new file mode 100644 index 00000000..1ef3ce24 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_raw_gold_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_raw_iron_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_raw_iron_block_tiles'}.png new file mode 100644 index 00000000..6cc9d284 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_raw_iron_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_red_nether_bricks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_red_nether_bricks_tiles'}.png new file mode 100644 index 00000000..7cce180d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_red_nether_bricks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_red_sandstone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_red_sandstone_tiles'}.png new file mode 100644 index 00000000..fcbd2192 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_red_sandstone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_redstone_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_redstone_block_tiles'}.png new file mode 100644 index 00000000..27d50a12 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_redstone_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_sandstone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_sandstone_tiles'}.png new file mode 100644 index 00000000..8fe7256b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_sandstone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_smooth_stone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_smooth_stone_tiles'}.png new file mode 100644 index 00000000..3989dc68 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_smooth_stone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_snow_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_snow_block_tiles'}.png new file mode 100644 index 00000000..e1f0c306 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_snow_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_stone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_stone_tiles'}.png new file mode 100644 index 00000000..5e9bcc45 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_stone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_tuff_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_tuff_tiles'}.png new file mode 100644 index 00000000..d198509d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__overlapping_tuff_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__owo_carved_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__owo_carved_pumpkin'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__owo_carved_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__owo_jack_o_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__owo_jack_o_lantern'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__owo_jack_o_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_ice_bricks'}.png new file mode 100644 index 00000000..b8b5cf01 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_ice_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_ice_mini_tiles'}.png new file mode 100644 index 00000000..57ae6743 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_ice_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_ice_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_ice_pillar'}.png new file mode 100644 index 00000000..9ba6ac2f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_ice_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_ice_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_ice_pillar_top'}.png new file mode 100644 index 00000000..50a89424 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_ice_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_ice_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_ice_scales'}.png new file mode 100644 index 00000000..30e5a03e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_ice_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_mud_bricks'}.png new file mode 100644 index 00000000..ca0fabd3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_mud_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_mud_pillar'}.png new file mode 100644 index 00000000..963754bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_mud_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_mud_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_mud_pillar_top'}.png new file mode 100644 index 00000000..7d6d887c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_mud_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_mud_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_mud_scales'}.png new file mode 100644 index 00000000..6ad4f5a7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__packed_mud_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pale_hay_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pale_hay_block'}.png new file mode 100644 index 00000000..ec54df87 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pale_hay_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pancake_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pancake_mud'}.png new file mode 100644 index 00000000..3d7146ed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pancake_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pancake_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pancake_mud_bricks'}.png new file mode 100644 index 00000000..20f3c532 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pancake_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pancake_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pancake_packed_mud'}.png new file mode 100644 index 00000000..4a4ee158 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pancake_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__panelled_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__panelled_mud'}.png new file mode 100644 index 00000000..b375f60c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__panelled_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__panelled_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__panelled_mud_bricks'}.png new file mode 100644 index 00000000..26886afd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__panelled_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__panelled_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__panelled_packed_mud'}.png new file mode 100644 index 00000000..cd5cd0dc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__panelled_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_black_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_black_wool'}.png new file mode 100644 index 00000000..2b803220 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_black_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_blue_wool'}.png new file mode 100644 index 00000000..f7610826 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_brown_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_brown_wool'}.png new file mode 100644 index 00000000..bc78b8e4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_brown_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_cyan_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_cyan_wool'}.png new file mode 100644 index 00000000..3db8e41d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_cyan_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_gray_wool'}.png new file mode 100644 index 00000000..874441c8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_green_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_green_wool'}.png new file mode 100644 index 00000000..440695be Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_green_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_light_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_light_blue_wool'}.png new file mode 100644 index 00000000..da5c8738 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_light_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_light_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_light_gray_wool'}.png new file mode 100644 index 00000000..79bfe8c3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_light_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_lime_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_lime_wool'}.png new file mode 100644 index 00000000..fe12d26c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_lime_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_magenta_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_magenta_wool'}.png new file mode 100644 index 00000000..1ca34f56 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_magenta_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_nether_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_nether_wart_block'}.png new file mode 100644 index 00000000..3d0ccfac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_nether_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_orange_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_orange_wool'}.png new file mode 100644 index 00000000..85f9565f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_orange_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_pink_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_pink_wool'}.png new file mode 100644 index 00000000..a4863f60 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_pink_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_purple_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_purple_wool'}.png new file mode 100644 index 00000000..3963b13c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_purple_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_red_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_red_wool'}.png new file mode 100644 index 00000000..ff7a7535 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_red_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_warped_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_warped_wart_block'}.png new file mode 100644 index 00000000..762e15aa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_warped_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_white_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_white_wool'}.png new file mode 100644 index 00000000..d969d16c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_white_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_yellow_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_yellow_wool'}.png new file mode 100644 index 00000000..9ffefe76 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patched_yellow_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_acacia_log'}.png new file mode 100644 index 00000000..6a860a9c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_birch_log'}.png new file mode 100644 index 00000000..381410e0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_cherry_log'}.png new file mode 100644 index 00000000..603e86c9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_crimson_stem'}.png new file mode 100644 index 00000000..213d9c73 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_dark_oak_log'}.png new file mode 100644 index 00000000..13609e19 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_jungle_log'}.png new file mode 100644 index 00000000..b9e8373e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_mangrove_log'}.png new file mode 100644 index 00000000..d7db75ae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_oak_log'}.png new file mode 100644 index 00000000..afd430ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_spruce_log'}.png new file mode 100644 index 00000000..524841b2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_warped_stem'}.png new file mode 100644 index 00000000..7ce129c1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patient_stripped_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patterned_glowstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patterned_glowstone'}.png new file mode 100644 index 00000000..22f47342 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__patterned_glowstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_black_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_black_glazed_terracotta'}.png new file mode 100644 index 00000000..c665bcad Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_black_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_blue_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_blue_glazed_terracotta'}.png new file mode 100644 index 00000000..6e73ecc6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_blue_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_brown_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_brown_glazed_terracotta'}.png new file mode 100644 index 00000000..3b20a052 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_brown_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_cyan_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_cyan_glazed_terracotta'}.png new file mode 100644 index 00000000..39e04f62 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_cyan_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_gray_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_gray_glazed_terracotta'}.png new file mode 100644 index 00000000..dc2903d8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_gray_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_green_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_green_glazed_terracotta'}.png new file mode 100644 index 00000000..113faa44 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_green_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_light_blue_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_light_blue_glazed_terracotta'}.png new file mode 100644 index 00000000..a4e9458a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_light_blue_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_light_gray_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_light_gray_glazed_terracotta'}.png new file mode 100644 index 00000000..95a12aac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_light_gray_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_lime_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_lime_glazed_terracotta'}.png new file mode 100644 index 00000000..81645a1f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_lime_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_magenta_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_magenta_glazed_terracotta'}.png new file mode 100644 index 00000000..476b5aa1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_magenta_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_orange_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_orange_glazed_terracotta'}.png new file mode 100644 index 00000000..85a2376d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_orange_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_pink_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_pink_glazed_terracotta'}.png new file mode 100644 index 00000000..2d77ac31 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_pink_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_purple_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_purple_glazed_terracotta'}.png new file mode 100644 index 00000000..81272dfc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_purple_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_red_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_red_glazed_terracotta'}.png new file mode 100644 index 00000000..51834ee0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_red_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_white_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_white_glazed_terracotta'}.png new file mode 100644 index 00000000..67b57295 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_white_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_yellow_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_yellow_glazed_terracotta'}.png new file mode 100644 index 00000000..303278f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__paved_yellow_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pearl_sand'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pearl_sand'}.png new file mode 100644 index 00000000..c5ed5f11 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pearl_sand'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_acacia_planks'}.png new file mode 100644 index 00000000..fd6ed438 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_birch_planks'}.png new file mode 100644 index 00000000..c0176afb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_black_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_black_concrete'}.png new file mode 100644 index 00000000..3fdbe82d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_black_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_blue_concrete'}.png new file mode 100644 index 00000000..7eedef72 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_brown_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_brown_concrete'}.png new file mode 100644 index 00000000..22969def Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_brown_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_cherry_planks'}.png new file mode 100644 index 00000000..f5e1df85 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_crimson_planks'}.png new file mode 100644 index 00000000..7c2771f0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_cyan_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_cyan_concrete'}.png new file mode 100644 index 00000000..32922672 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_cyan_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_dark_oak_planks'}.png new file mode 100644 index 00000000..be3acb1b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_gray_concrete'}.png new file mode 100644 index 00000000..d15c7b09 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_green_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_green_concrete'}.png new file mode 100644 index 00000000..f01da5b4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_green_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_jungle_planks'}.png new file mode 100644 index 00000000..9f460f28 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_light_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_light_blue_concrete'}.png new file mode 100644 index 00000000..b8e21848 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_light_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_light_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_light_gray_concrete'}.png new file mode 100644 index 00000000..9eaa0a6f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_light_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_lime_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_lime_concrete'}.png new file mode 100644 index 00000000..8def231d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_lime_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_magenta_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_magenta_concrete'}.png new file mode 100644 index 00000000..b4f8d778 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_magenta_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_mangrove_planks'}.png new file mode 100644 index 00000000..8fe21473 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_oak_planks'}.png new file mode 100644 index 00000000..52623e48 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_orange_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_orange_concrete'}.png new file mode 100644 index 00000000..866218a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_orange_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_pink_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_pink_concrete'}.png new file mode 100644 index 00000000..d01471e3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_pink_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_purple_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_purple_concrete'}.png new file mode 100644 index 00000000..94f0b9da Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_purple_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_red_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_red_concrete'}.png new file mode 100644 index 00000000..cd7f3d6b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_red_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_spruce_planks'}.png new file mode 100644 index 00000000..ae978471 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_warped_planks'}.png new file mode 100644 index 00000000..491a3251 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_white_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_white_concrete'}.png new file mode 100644 index 00000000..e1bfee06 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_white_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_yellow_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_yellow_concrete'}.png new file mode 100644 index 00000000..b6fcf39b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pegged_yellow_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_amethyst_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_amethyst_block_bricks'}.png new file mode 100644 index 00000000..893758f3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_amethyst_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_ancient_debris_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_ancient_debris_bricks'}.png new file mode 100644 index 00000000..9950f141 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_ancient_debris_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_andesite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_andesite_bricks'}.png new file mode 100644 index 00000000..22e25fea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_andesite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_basalt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_basalt_bricks'}.png new file mode 100644 index 00000000..9361ef25 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_basalt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_blackstone_bricks'}.png new file mode 100644 index 00000000..dff60103 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_blue_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_blue_ice_bricks'}.png new file mode 100644 index 00000000..e69bc743 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_blue_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_borderless_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_borderless_bricks_bricks'}.png new file mode 100644 index 00000000..ec25ab20 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_borderless_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_bricks_bricks'}.png new file mode 100644 index 00000000..51406cf4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_calcite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_calcite_bricks'}.png new file mode 100644 index 00000000..8e69efca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_calcite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_clay_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_clay_bricks'}.png new file mode 100644 index 00000000..90938b29 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_clay_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_coal_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_coal_block_bricks'}.png new file mode 100644 index 00000000..b35d8e23 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_coal_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_cobblestone_bricks'}.png new file mode 100644 index 00000000..a9416254 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_crying_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_crying_obsidian_bricks'}.png new file mode 100644 index 00000000..16c03f19 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_crying_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_dark_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_dark_prismarine_bricks'}.png new file mode 100644 index 00000000..c7d9fcdd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_dark_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_deepslate_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_deepslate_bricks'}.png new file mode 100644 index 00000000..67bc486e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_deepslate_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_diorite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_diorite_bricks'}.png new file mode 100644 index 00000000..c112b58b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_diorite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_dirt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_dirt_bricks'}.png new file mode 100644 index 00000000..63caa81d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_dirt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_dripstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_dripstone_block_bricks'}.png new file mode 100644 index 00000000..fea5463d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_dripstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_end_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_end_stone_bricks'}.png new file mode 100644 index 00000000..b54894c7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_end_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_gilded_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_gilded_blackstone_bricks'}.png new file mode 100644 index 00000000..6e02b37f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_gilded_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_granite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_granite_bricks'}.png new file mode 100644 index 00000000..86d5b7b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_granite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_ice_bricks'}.png new file mode 100644 index 00000000..20aa7c28 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_lapis_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_lapis_block_bricks'}.png new file mode 100644 index 00000000..535dae32 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_lapis_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_lodestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_lodestone_bricks'}.png new file mode 100644 index 00000000..a7c6ec2a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_lodestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_magma_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_magma_block_bricks'}.png new file mode 100644 index 00000000..60e60902 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_magma_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_mossy_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_mossy_cobblestone_bricks'}.png new file mode 100644 index 00000000..52f657c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_mossy_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_mossy_stone_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_mossy_stone_bricks_bricks'}.png new file mode 100644 index 00000000..2b6e628b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_mossy_stone_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_nether_bricks_bricks'}.png new file mode 100644 index 00000000..b35a7832 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_netherrack_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_netherrack_bricks'}.png new file mode 100644 index 00000000..c456fe6c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_netherrack_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_obsidian_bricks'}.png new file mode 100644 index 00000000..a5b2d919 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_packed_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_packed_ice_bricks'}.png new file mode 100644 index 00000000..50f79472 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_packed_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_prismarine_bricks'}.png new file mode 100644 index 00000000..22e3d50e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_purpur_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_purpur_block_bricks'}.png new file mode 100644 index 00000000..87091350 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_purpur_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_quartz_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_quartz_block_bricks'}.png new file mode 100644 index 00000000..075b0581 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_quartz_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_raw_copper_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_raw_copper_block_bricks'}.png new file mode 100644 index 00000000..ef6ae47e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_raw_copper_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_raw_gold_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_raw_gold_block_bricks'}.png new file mode 100644 index 00000000..a6dacfb3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_raw_gold_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_raw_iron_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_raw_iron_block_bricks'}.png new file mode 100644 index 00000000..12515ebb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_raw_iron_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_red_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_red_nether_bricks_bricks'}.png new file mode 100644 index 00000000..e8b05d93 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_red_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_red_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_red_sandstone_bricks'}.png new file mode 100644 index 00000000..9f37c0b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_red_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_redstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_redstone_block_bricks'}.png new file mode 100644 index 00000000..010707a0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_redstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_sandstone_bricks'}.png new file mode 100644 index 00000000..751d7d0c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_smooth_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_smooth_stone_bricks'}.png new file mode 100644 index 00000000..90fbb203 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_smooth_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_snow_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_snow_block_bricks'}.png new file mode 100644 index 00000000..ae51be6c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_snow_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_stone_bricks'}.png new file mode 100644 index 00000000..1e0a0c56 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_tuff_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_tuff_bricks'}.png new file mode 100644 index 00000000..28322ff2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pillar_tuff_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pimpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pimpkin'}.png new file mode 100644 index 00000000..d1997d72 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pimpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_concrete_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_concrete_bricks'}.png new file mode 100644 index 00000000..037459f3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_concrete_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_concrete_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_concrete_panel'}.png new file mode 100644 index 00000000..a7f99556 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_concrete_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_concrete_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_concrete_pillar'}.png new file mode 100644 index 00000000..6bef3009 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_concrete_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_concrete_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_concrete_tiles'}.png new file mode 100644 index 00000000..a54a6e95 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_concrete_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_glazed_terracotta_pillar_sides'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_glazed_terracotta_pillar_sides'}.png new file mode 100644 index 00000000..f848808e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_glazed_terracotta_pillar_sides'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_glazed_terracotta_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_glazed_terracotta_pillar_top'}.png new file mode 100644 index 00000000..efbbd2f7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_glazed_terracotta_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_glazed_terracotta_smooth_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_glazed_terracotta_smooth_tiles'}.png new file mode 100644 index 00000000..90698cb5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_glazed_terracotta_smooth_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_glazed_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_glazed_terracotta_tiles'}.png new file mode 100644 index 00000000..45f52e98 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_glazed_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_terracotta_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_terracotta_bricks'}.png new file mode 100644 index 00000000..885d0d31 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_terracotta_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_terracotta_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_terracotta_column'}.png new file mode 100644 index 00000000..44b3b70c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_terracotta_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_terracotta_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_terracotta_pillar'}.png new file mode 100644 index 00000000..9061adc8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_terracotta_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_terracotta_tile'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_terracotta_tile'}.png new file mode 100644 index 00000000..47b5d3d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_terracotta_tile'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_terracotta_tiles'}.png new file mode 100644 index 00000000..faa0bf62 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pink_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__placed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__placed_mud'}.png new file mode 100644 index 00000000..b8373235 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__placed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__placed_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__placed_mud_bricks'}.png new file mode 100644 index 00000000..e4703e97 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__placed_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__placed_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__placed_packed_mud'}.png new file mode 100644 index 00000000..23868b8a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__placed_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_acacia_log'}.png new file mode 100644 index 00000000..aae5918f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_birch_log'}.png new file mode 100644 index 00000000..f1836867 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_cherry_log'}.png new file mode 100644 index 00000000..0f709d9e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_crimson_stem'}.png new file mode 100644 index 00000000..6666c2f1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_dark_oak_log'}.png new file mode 100644 index 00000000..05d1654e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_jungle_log'}.png new file mode 100644 index 00000000..81a20af0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_mangrove_log'}.png new file mode 100644 index 00000000..be509d56 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_oak_log'}.png new file mode 100644 index 00000000..f7d1b650 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_spruce_log'}.png new file mode 100644 index 00000000..63d5e382 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_warped_stem'}.png new file mode 100644 index 00000000..cd99bc38 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__planked_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_diamond_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_diamond_block'}.png new file mode 100644 index 00000000..e94ef815 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_diamond_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_emerald_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_emerald_block'}.png new file mode 100644 index 00000000..d4501043 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_emerald_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_gold_block'}.png new file mode 100644 index 00000000..fae76581 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_iron_block'}.png new file mode 100644 index 00000000..ce0a55ef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_netherite_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_netherite_block'}.png new file mode 100644 index 00000000..4dc1ae89 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_netherite_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_waxed_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_waxed_copper_block'}.png new file mode 100644 index 00000000..eefc9a21 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_waxed_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_waxed_exposed_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_waxed_exposed_copper'}.png new file mode 100644 index 00000000..dbabba73 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_waxed_exposed_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_waxed_oxidized_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_waxed_oxidized_copper'}.png new file mode 100644 index 00000000..59ce5792 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_waxed_oxidized_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_waxed_weathered_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_waxed_weathered_copper'}.png new file mode 100644 index 00000000..f73886f8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__plated_waxed_weathered_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__poisonous_mushroom_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__poisonous_mushroom_stem'}.png new file mode 100644 index 00000000..fe50c3de Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__poisonous_mushroom_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_acacia_planks'}.png new file mode 100644 index 00000000..6051d296 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_amethyst_block'}.png new file mode 100644 index 00000000..e214dc27 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_ancient_debris'}.png new file mode 100644 index 00000000..7d21063d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_andesite'}.png new file mode 100644 index 00000000..9ab36075 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_bamboo_planks'}.png new file mode 100644 index 00000000..0517de8e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_basalt'}.png new file mode 100644 index 00000000..2ce6c277 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_birch_planks'}.png new file mode 100644 index 00000000..2d26de2e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_blackstone'}.png new file mode 100644 index 00000000..8c64411a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_blue_ice'}.png new file mode 100644 index 00000000..024c79c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_borderless_bricks'}.png new file mode 100644 index 00000000..86271901 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_bricks'}.png new file mode 100644 index 00000000..99198355 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_calcite'}.png new file mode 100644 index 00000000..d2dba4c1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_cherry_planks'}.png new file mode 100644 index 00000000..10d28ec8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_clay'}.png new file mode 100644 index 00000000..6af1b9ab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_coal_block'}.png new file mode 100644 index 00000000..b58d2cb9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_cobblestone'}.png new file mode 100644 index 00000000..d782f9b3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_crimson_planks'}.png new file mode 100644 index 00000000..cea18648 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_crying_obsidian'}.png new file mode 100644 index 00000000..ad4f18fc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_dark_oak_planks'}.png new file mode 100644 index 00000000..11b6e3aa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_dark_prismarine'}.png new file mode 100644 index 00000000..c7968792 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_deepslate'}.png new file mode 100644 index 00000000..806eab2f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_diorite'}.png new file mode 100644 index 00000000..56ae9d66 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_dirt'}.png new file mode 100644 index 00000000..6c98da53 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_dripstone_block'}.png new file mode 100644 index 00000000..528a78c9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_emerald_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_emerald_block'}.png new file mode 100644 index 00000000..2880255e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_emerald_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_end_stone'}.png new file mode 100644 index 00000000..b4fa32c3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_gilded_blackstone'}.png new file mode 100644 index 00000000..a4c604f6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_glowstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_glowstone'}.png new file mode 100644 index 00000000..799a576d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_glowstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_granite'}.png new file mode 100644 index 00000000..32db6ff0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_ice'}.png new file mode 100644 index 00000000..1bac8be3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_iron_block'}.png new file mode 100644 index 00000000..6a21fea0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_jungle_planks'}.png new file mode 100644 index 00000000..a73bf0bf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_lapis_block'}.png new file mode 100644 index 00000000..7b763fbc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_lodestone'}.png new file mode 100644 index 00000000..f242b13a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_magma_block'}.png new file mode 100644 index 00000000..57cc12e8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_mangrove_planks'}.png new file mode 100644 index 00000000..288ee0b0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_mossy_cobblestone'}.png new file mode 100644 index 00000000..6aada78f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_mossy_stone_bricks'}.png new file mode 100644 index 00000000..fd27f653 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_mud'}.png new file mode 100644 index 00000000..2d2cd6ab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_mud_bricks'}.png new file mode 100644 index 00000000..a00530ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_nether_bricks'}.png new file mode 100644 index 00000000..0d100a81 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_netherite_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_netherite_block'}.png new file mode 100644 index 00000000..ec7dbe0b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_netherite_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_netherrack'}.png new file mode 100644 index 00000000..0d36954c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_oak_planks'}.png new file mode 100644 index 00000000..ccb8b30d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_obsidian'}.png new file mode 100644 index 00000000..492bf32a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_packed_ice'}.png new file mode 100644 index 00000000..7825fa24 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_packed_mud'}.png new file mode 100644 index 00000000..5e28458d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_prismarine'}.png new file mode 100644 index 00000000..92c69ddd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_purpur_block'}.png new file mode 100644 index 00000000..e050e391 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_quartz_block'}.png new file mode 100644 index 00000000..18c7fddd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_raw_copper_block'}.png new file mode 100644 index 00000000..b979708d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_raw_gold_block'}.png new file mode 100644 index 00000000..52b00718 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_raw_iron_block'}.png new file mode 100644 index 00000000..40cc0a4e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_red_nether_bricks'}.png new file mode 100644 index 00000000..63efb878 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_red_sandstone'}.png new file mode 100644 index 00000000..a8e8635e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_redstone_block'}.png new file mode 100644 index 00000000..c9d27578 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_sandstone'}.png new file mode 100644 index 00000000..fd43507f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_sea_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_sea_lantern'}.png new file mode 100644 index 00000000..398dd7ec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_sea_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_shroomlight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_shroomlight'}.png new file mode 100644 index 00000000..39b1b82a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_shroomlight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_smooth_stone'}.png new file mode 100644 index 00000000..e8eddf26 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_snow_block'}.png new file mode 100644 index 00000000..4536edfd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_spruce_planks'}.png new file mode 100644 index 00000000..21856a88 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_stone'}.png new file mode 100644 index 00000000..a75a695e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_tuff'}.png new file mode 100644 index 00000000..9cf4002f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_warped_planks'}.png new file mode 100644 index 00000000..1061c5a8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__polished_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__porous_nether_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__porous_nether_wart_block'}.png new file mode 100644 index 00000000..d3a55903 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__porous_nether_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__porous_warped_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__porous_warped_wart_block'}.png new file mode 100644 index 00000000..19ef3d7f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__porous_warped_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pressed_diamond_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pressed_diamond_block'}.png new file mode 100644 index 00000000..045461a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pressed_diamond_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pressed_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pressed_gold_block'}.png new file mode 100644 index 00000000..f6b1e00c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pressed_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pressed_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pressed_iron_block'}.png new file mode 100644 index 00000000..2cc705cc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pressed_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pressed_netherite_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pressed_netherite_block'}.png new file mode 100644 index 00000000..37681e96 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pressed_netherite_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pressed_waxed_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pressed_waxed_copper_block'}.png new file mode 100644 index 00000000..ba8ebf06 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pressed_waxed_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pressed_waxed_exposed_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pressed_waxed_exposed_copper'}.png new file mode 100644 index 00000000..9970845c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pressed_waxed_exposed_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pressed_waxed_oxidized_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pressed_waxed_oxidized_copper'}.png new file mode 100644 index 00000000..c0e55b13 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pressed_waxed_oxidized_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pressed_waxed_weathered_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pressed_waxed_weathered_copper'}.png new file mode 100644 index 00000000..a3d8487d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__pressed_waxed_weathered_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_amethyst_block_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_amethyst_block_remnants'}.png new file mode 100644 index 00000000..c72e29dd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_amethyst_block_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_ancient_debris_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_ancient_debris_remnants'}.png new file mode 100644 index 00000000..d2e84e09 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_ancient_debris_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_andesite_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_andesite_remnants'}.png new file mode 100644 index 00000000..fdf60179 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_andesite_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_basalt_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_basalt_remnants'}.png new file mode 100644 index 00000000..87112a17 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_basalt_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_blackstone_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_blackstone_remnants'}.png new file mode 100644 index 00000000..74d82022 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_blackstone_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_blue_ice_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_blue_ice_remnants'}.png new file mode 100644 index 00000000..4c26f69e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_blue_ice_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_borderless_bricks_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_borderless_bricks_remnants'}.png new file mode 100644 index 00000000..11f1ba5c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_borderless_bricks_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_bricks_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_bricks_remnants'}.png new file mode 100644 index 00000000..4d03b842 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_bricks_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_calcite_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_calcite_remnants'}.png new file mode 100644 index 00000000..7481abc9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_calcite_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_clay_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_clay_remnants'}.png new file mode 100644 index 00000000..9158e707 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_clay_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_coal_block_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_coal_block_remnants'}.png new file mode 100644 index 00000000..39650a69 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_coal_block_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_cobblestone_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_cobblestone_remnants'}.png new file mode 100644 index 00000000..6e4e4e2c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_cobblestone_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_crying_obsidian_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_crying_obsidian_remnants'}.png new file mode 100644 index 00000000..bd7fc648 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_crying_obsidian_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_dark_prismarine_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_dark_prismarine_remnants'}.png new file mode 100644 index 00000000..14ce0a36 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_dark_prismarine_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_deepslate_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_deepslate_remnants'}.png new file mode 100644 index 00000000..505f0a58 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_deepslate_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_diorite_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_diorite_remnants'}.png new file mode 100644 index 00000000..4466adf5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_diorite_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_dirt_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_dirt_remnants'}.png new file mode 100644 index 00000000..06072f8a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_dirt_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_dripstone_block_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_dripstone_block_remnants'}.png new file mode 100644 index 00000000..ef895766 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_dripstone_block_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_end_stone_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_end_stone_remnants'}.png new file mode 100644 index 00000000..0e4ed2ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_end_stone_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_gilded_blackstone_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_gilded_blackstone_remnants'}.png new file mode 100644 index 00000000..c62d6bfe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_gilded_blackstone_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_granite_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_granite_remnants'}.png new file mode 100644 index 00000000..e75c1afe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_granite_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_ice_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_ice_remnants'}.png new file mode 100644 index 00000000..e8d81924 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_ice_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_lapis_block_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_lapis_block_remnants'}.png new file mode 100644 index 00000000..1a82d6de Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_lapis_block_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_lodestone_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_lodestone_remnants'}.png new file mode 100644 index 00000000..f5bcf8c9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_lodestone_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_magma_block_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_magma_block_remnants'}.png new file mode 100644 index 00000000..0485aaa6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_magma_block_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_mossy_cobblestone_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_mossy_cobblestone_remnants'}.png new file mode 100644 index 00000000..16d8c7cd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_mossy_cobblestone_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_mossy_stone_bricks_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_mossy_stone_bricks_remnants'}.png new file mode 100644 index 00000000..40a1cb89 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_mossy_stone_bricks_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_mud_bricks_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_mud_bricks_remnants'}.png new file mode 100644 index 00000000..14cb89e2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_mud_bricks_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_mud_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_mud_remnants'}.png new file mode 100644 index 00000000..5f4e0501 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_mud_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_nether_bricks_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_nether_bricks_remnants'}.png new file mode 100644 index 00000000..2bf47ec4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_nether_bricks_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_netherrack_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_netherrack_remnants'}.png new file mode 100644 index 00000000..ce7f1aea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_netherrack_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_obsidian_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_obsidian_remnants'}.png new file mode 100644 index 00000000..4be9ab48 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_obsidian_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_packed_ice_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_packed_ice_remnants'}.png new file mode 100644 index 00000000..5de3fd3f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_packed_ice_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_packed_mud_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_packed_mud_remnants'}.png new file mode 100644 index 00000000..e94b1963 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_packed_mud_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_purpur_block_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_purpur_block_remnants'}.png new file mode 100644 index 00000000..f224b069 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_purpur_block_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_quartz_block_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_quartz_block_remnants'}.png new file mode 100644 index 00000000..b6b3a52f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_quartz_block_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_raw_copper_block_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_raw_copper_block_remnants'}.png new file mode 100644 index 00000000..4d7b27a7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_raw_copper_block_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_raw_gold_block_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_raw_gold_block_remnants'}.png new file mode 100644 index 00000000..b972fc6a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_raw_gold_block_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_raw_iron_block_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_raw_iron_block_remnants'}.png new file mode 100644 index 00000000..1b6d78e8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_raw_iron_block_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_red_nether_bricks_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_red_nether_bricks_remnants'}.png new file mode 100644 index 00000000..e5630102 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_red_nether_bricks_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_red_sandstone_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_red_sandstone_remnants'}.png new file mode 100644 index 00000000..e6d980e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_red_sandstone_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_redstone_block_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_redstone_block_remnants'}.png new file mode 100644 index 00000000..de5395b3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_redstone_block_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_sandstone_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_sandstone_remnants'}.png new file mode 100644 index 00000000..d8f7e77d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_sandstone_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_smooth_stone_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_smooth_stone_remnants'}.png new file mode 100644 index 00000000..975df5f8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_smooth_stone_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_snow_block_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_snow_block_remnants'}.png new file mode 100644 index 00000000..b7a24725 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_snow_block_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_stone_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_stone_remnants'}.png new file mode 100644 index 00000000..c936517f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_stone_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_tuff_remnants'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_tuff_remnants'}.png new file mode 100644 index 00000000..4bfee237 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismal_tuff_remnants'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismarine_bricks'}.png new file mode 100644 index 00000000..3022712a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismarine_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismarine_mini_tiles'}.png new file mode 100644 index 00000000..62379982 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismarine_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismarine_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismarine_pillar'}.png new file mode 100644 index 00000000..6a17afac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismarine_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismarine_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismarine_pillar_top'}.png new file mode 100644 index 00000000..b59f0311 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismarine_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismarine_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismarine_scales'}.png new file mode 100644 index 00000000..3b561b8e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__prismarine_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_concrete_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_concrete_bricks'}.png new file mode 100644 index 00000000..fdd60e69 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_concrete_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_concrete_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_concrete_panel'}.png new file mode 100644 index 00000000..96a11f82 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_concrete_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_concrete_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_concrete_pillar'}.png new file mode 100644 index 00000000..2ca2fde2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_concrete_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_concrete_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_concrete_tiles'}.png new file mode 100644 index 00000000..291ac3c7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_concrete_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_glazed_terracotta_pillar_sides'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_glazed_terracotta_pillar_sides'}.png new file mode 100644 index 00000000..9f6c3ac0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_glazed_terracotta_pillar_sides'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_glazed_terracotta_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_glazed_terracotta_pillar_top'}.png new file mode 100644 index 00000000..72e112d2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_glazed_terracotta_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_glazed_terracotta_smooth_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_glazed_terracotta_smooth_tiles'}.png new file mode 100644 index 00000000..7f428472 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_glazed_terracotta_smooth_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_glazed_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_glazed_terracotta_tiles'}.png new file mode 100644 index 00000000..1071ba45 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_glazed_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_terracotta_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_terracotta_bricks'}.png new file mode 100644 index 00000000..3b63f193 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_terracotta_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_terracotta_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_terracotta_column'}.png new file mode 100644 index 00000000..7e9c3791 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_terracotta_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_terracotta_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_terracotta_pillar'}.png new file mode 100644 index 00000000..805b0a1c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_terracotta_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_terracotta_tile'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_terracotta_tile'}.png new file mode 100644 index 00000000..6e5b389e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_terracotta_tile'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_terracotta_tiles'}.png new file mode 100644 index 00000000..072ffd01 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purple_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purpur_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purpur_block_bricks'}.png new file mode 100644 index 00000000..77a3d364 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purpur_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purpur_block_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purpur_block_mini_tiles'}.png new file mode 100644 index 00000000..829ee289 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purpur_block_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purpur_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purpur_block_pillar'}.png new file mode 100644 index 00000000..07193999 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purpur_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purpur_block_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purpur_block_pillar_top'}.png new file mode 100644 index 00000000..74a0a88c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purpur_block_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purpur_block_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purpur_block_scales'}.png new file mode 100644 index 00000000..50113577 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__purpur_block_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__quad_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__quad_mud'}.png new file mode 100644 index 00000000..8102263b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__quad_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__quad_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__quad_mud_bricks'}.png new file mode 100644 index 00000000..cd15d00a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__quad_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__quad_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__quad_packed_mud'}.png new file mode 100644 index 00000000..f5f1437b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__quad_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__quartz_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__quartz_block_bricks'}.png new file mode 100644 index 00000000..81b4786d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__quartz_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__quartz_block_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__quartz_block_mini_tiles'}.png new file mode 100644 index 00000000..791c5cae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__quartz_block_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__quartz_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__quartz_block_pillar'}.png new file mode 100644 index 00000000..0a25f5b2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__quartz_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__quartz_block_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__quartz_block_scales'}.png new file mode 100644 index 00000000..c61d3317 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__quartz_block_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_acacia_planks'}.png new file mode 100644 index 00000000..15a27ffc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_bamboo_planks'}.png new file mode 100644 index 00000000..6840ecdf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_birch_planks'}.png new file mode 100644 index 00000000..885ead2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_black_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_black_concrete'}.png new file mode 100644 index 00000000..566b1ede Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_black_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_blue_concrete'}.png new file mode 100644 index 00000000..f4f50b19 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_brown_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_brown_concrete'}.png new file mode 100644 index 00000000..e4012f81 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_brown_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_cherry_planks'}.png new file mode 100644 index 00000000..3c82d991 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_crimson_planks'}.png new file mode 100644 index 00000000..d125068b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_cyan_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_cyan_concrete'}.png new file mode 100644 index 00000000..36fcc1b9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_cyan_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_dark_oak_planks'}.png new file mode 100644 index 00000000..b205f232 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_gray_concrete'}.png new file mode 100644 index 00000000..29d3c398 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_green_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_green_concrete'}.png new file mode 100644 index 00000000..272233fd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_green_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_jungle_planks'}.png new file mode 100644 index 00000000..3814eb11 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_light_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_light_blue_concrete'}.png new file mode 100644 index 00000000..0c317e25 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_light_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_light_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_light_gray_concrete'}.png new file mode 100644 index 00000000..d7168678 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_light_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_lime_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_lime_concrete'}.png new file mode 100644 index 00000000..70d3dcd4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_lime_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_magenta_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_magenta_concrete'}.png new file mode 100644 index 00000000..dc74c3a5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_magenta_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_mangrove_planks'}.png new file mode 100644 index 00000000..1b923bf1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_oak_planks'}.png new file mode 100644 index 00000000..622d3604 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_orange_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_orange_concrete'}.png new file mode 100644 index 00000000..35c90695 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_orange_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_pink_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_pink_concrete'}.png new file mode 100644 index 00000000..48ba6faf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_pink_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_purple_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_purple_concrete'}.png new file mode 100644 index 00000000..fb14c970 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_purple_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_red_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_red_concrete'}.png new file mode 100644 index 00000000..4a4fafe6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_red_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_spruce_planks'}.png new file mode 100644 index 00000000..b548dc16 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_warped_planks'}.png new file mode 100644 index 00000000..fd651937 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_white_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_white_concrete'}.png new file mode 100644 index 00000000..fc377271 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_white_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_yellow_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_yellow_concrete'}.png new file mode 100644 index 00000000..9abcb94b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__railed_yellow_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_black_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_black_stained_glass'}.png new file mode 100644 index 00000000..05939b94 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_black_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_blue_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_blue_stained_glass'}.png new file mode 100644 index 00000000..c52e22f7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_blue_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_brown_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_brown_stained_glass'}.png new file mode 100644 index 00000000..735d9d3e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_brown_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_cyan_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_cyan_stained_glass'}.png new file mode 100644 index 00000000..d76b44cd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_cyan_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_gray_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_gray_stained_glass'}.png new file mode 100644 index 00000000..5ce132ad Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_gray_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_green_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_green_stained_glass'}.png new file mode 100644 index 00000000..be4d7633 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_green_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_leaded_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_leaded_glass'}.png new file mode 100644 index 00000000..bec37aae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_leaded_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_light_blue_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_light_blue_stained_glass'}.png new file mode 100644 index 00000000..04af4d45 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_light_blue_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_light_gray_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_light_gray_stained_glass'}.png new file mode 100644 index 00000000..0389f007 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_light_gray_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_lime_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_lime_stained_glass'}.png new file mode 100644 index 00000000..0a198314 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_lime_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_magenta_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_magenta_stained_glass'}.png new file mode 100644 index 00000000..8755dfb0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_magenta_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_orange_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_orange_stained_glass'}.png new file mode 100644 index 00000000..8ab87157 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_orange_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_pink_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_pink_stained_glass'}.png new file mode 100644 index 00000000..97ce720a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_pink_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_purple_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_purple_stained_glass'}.png new file mode 100644 index 00000000..2fdf56ad Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_purple_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_red_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_red_stained_glass'}.png new file mode 100644 index 00000000..1923565a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_red_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_white_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_white_stained_glass'}.png new file mode 100644 index 00000000..bae1d9aa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_white_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_yellow_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_yellow_stained_glass'}.png new file mode 100644 index 00000000..bb412467 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raster_yellow_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_copper_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_copper_block_bricks'}.png new file mode 100644 index 00000000..4f04b0fb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_copper_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_copper_block_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_copper_block_mini_tiles'}.png new file mode 100644 index 00000000..d6f37ae7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_copper_block_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_copper_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_copper_block_pillar'}.png new file mode 100644 index 00000000..e9dede22 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_copper_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_copper_block_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_copper_block_pillar_top'}.png new file mode 100644 index 00000000..aacf054f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_copper_block_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_copper_block_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_copper_block_scales'}.png new file mode 100644 index 00000000..e735c55a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_copper_block_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_gold_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_gold_block_bricks'}.png new file mode 100644 index 00000000..6840911c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_gold_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_gold_block_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_gold_block_mini_tiles'}.png new file mode 100644 index 00000000..3f85ab95 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_gold_block_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_gold_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_gold_block_pillar'}.png new file mode 100644 index 00000000..ac4d39fb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_gold_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_gold_block_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_gold_block_pillar_top'}.png new file mode 100644 index 00000000..4ebbec09 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_gold_block_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_gold_block_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_gold_block_scales'}.png new file mode 100644 index 00000000..e210f5ba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_gold_block_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_iron_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_iron_block_bricks'}.png new file mode 100644 index 00000000..0cf742bd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_iron_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_iron_block_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_iron_block_mini_tiles'}.png new file mode 100644 index 00000000..34dbf7b0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_iron_block_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_iron_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_iron_block_pillar'}.png new file mode 100644 index 00000000..708ccb53 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_iron_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_iron_block_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_iron_block_pillar_top'}.png new file mode 100644 index 00000000..659a85c4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_iron_block_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_iron_block_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_iron_block_scales'}.png new file mode 100644 index 00000000..844705b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__raw_iron_block_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_black_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_black_wool'}.png new file mode 100644 index 00000000..e1494311 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_black_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_blue_wool'}.png new file mode 100644 index 00000000..c2bac803 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_brown_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_brown_wool'}.png new file mode 100644 index 00000000..00c9800a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_brown_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_cyan_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_cyan_wool'}.png new file mode 100644 index 00000000..6fdf5b8c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_cyan_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_gray_wool'}.png new file mode 100644 index 00000000..60ff9d17 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_green_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_green_wool'}.png new file mode 100644 index 00000000..2c41c8d9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_green_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_light_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_light_blue_wool'}.png new file mode 100644 index 00000000..3d0b7e82 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_light_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_light_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_light_gray_wool'}.png new file mode 100644 index 00000000..4ccdb6d2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_light_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_lime_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_lime_wool'}.png new file mode 100644 index 00000000..7f20258b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_lime_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_magenta_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_magenta_wool'}.png new file mode 100644 index 00000000..72aeefd5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_magenta_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_orange_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_orange_wool'}.png new file mode 100644 index 00000000..6f23209a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_orange_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_pink_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_pink_wool'}.png new file mode 100644 index 00000000..62b4d2d0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_pink_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_purple_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_purple_wool'}.png new file mode 100644 index 00000000..ceef268b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_purple_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_red_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_red_wool'}.png new file mode 100644 index 00000000..ae251f26 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_red_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_white_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_white_wool'}.png new file mode 100644 index 00000000..4bcb8635 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_white_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_yellow_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_yellow_wool'}.png new file mode 100644 index 00000000..fbcf7209 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rectangle_yellow_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_acacia_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_acacia_leaves'}.png new file mode 100644 index 00000000..129c2eb6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_acacia_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_birch_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_birch_leaves'}.png new file mode 100644 index 00000000..391a13c3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_birch_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_concrete_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_concrete_bricks'}.png new file mode 100644 index 00000000..2cfd8eb0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_concrete_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_concrete_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_concrete_panel'}.png new file mode 100644 index 00000000..8d901a07 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_concrete_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_concrete_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_concrete_pillar'}.png new file mode 100644 index 00000000..17dfda63 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_concrete_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_concrete_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_concrete_tiles'}.png new file mode 100644 index 00000000..66a348e7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_concrete_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_dark_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_dark_oak_leaves'}.png new file mode 100644 index 00000000..0ddfcb68 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_dark_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_glazed_terracotta_pillar_sides'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_glazed_terracotta_pillar_sides'}.png new file mode 100644 index 00000000..f7f17b6d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_glazed_terracotta_pillar_sides'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_glazed_terracotta_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_glazed_terracotta_pillar_top'}.png new file mode 100644 index 00000000..7869a969 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_glazed_terracotta_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_glazed_terracotta_smooth_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_glazed_terracotta_smooth_tiles'}.png new file mode 100644 index 00000000..26d6f234 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_glazed_terracotta_smooth_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_glazed_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_glazed_terracotta_tiles'}.png new file mode 100644 index 00000000..54221f53 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_glazed_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_jungle_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_jungle_leaves'}.png new file mode 100644 index 00000000..e32d5b9d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_jungle_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_moss_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_moss_block'}.png new file mode 100644 index 00000000..542dd267 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_moss_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_nether_bricks_bricks'}.png new file mode 100644 index 00000000..906f0a98 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_nether_bricks_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_nether_bricks_mini_tiles'}.png new file mode 100644 index 00000000..9d7c398f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_nether_bricks_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_nether_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_nether_bricks_pillar'}.png new file mode 100644 index 00000000..9f69b4c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_nether_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_nether_bricks_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_nether_bricks_pillar_top'}.png new file mode 100644 index 00000000..6b536ded Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_nether_bricks_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_nether_bricks_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_nether_bricks_scales'}.png new file mode 100644 index 00000000..dc7eaa5b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_nether_bricks_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_oak_leaves'}.png new file mode 100644 index 00000000..0ddfcb68 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_sandstone_bricks'}.png new file mode 100644 index 00000000..8556f1de Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_sandstone_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_sandstone_mini_tiles'}.png new file mode 100644 index 00000000..908d6c9c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_sandstone_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_sandstone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_sandstone_pillar'}.png new file mode 100644 index 00000000..a42df0f2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_sandstone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_sandstone_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_sandstone_pillar_top'}.png new file mode 100644 index 00000000..5e2153eb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_sandstone_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_sandstone_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_sandstone_scales'}.png new file mode 100644 index 00000000..07151d55 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_sandstone_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_spruce_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_spruce_leaves'}.png new file mode 100644 index 00000000..089a1039 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_spruce_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_terracotta_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_terracotta_bricks'}.png new file mode 100644 index 00000000..ec20efd1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_terracotta_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_terracotta_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_terracotta_column'}.png new file mode 100644 index 00000000..7345578f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_terracotta_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_terracotta_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_terracotta_pillar'}.png new file mode 100644 index 00000000..46f3de0e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_terracotta_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_terracotta_tile'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_terracotta_tile'}.png new file mode 100644 index 00000000..41696016 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_terracotta_tile'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_terracotta_tiles'}.png new file mode 100644 index 00000000..444378f8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__red_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__redstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__redstone_block_bricks'}.png new file mode 100644 index 00000000..f7b764e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__redstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__redstone_block_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__redstone_block_mini_tiles'}.png new file mode 100644 index 00000000..278a05cf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__redstone_block_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__redstone_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__redstone_block_pillar'}.png new file mode 100644 index 00000000..27d6679a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__redstone_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__redstone_block_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__redstone_block_pillar_top'}.png new file mode 100644 index 00000000..d98c1210 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__redstone_block_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__redstone_block_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__redstone_block_scales'}.png new file mode 100644 index 00000000..1ae6422e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__redstone_block_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_acacia_log'}.png new file mode 100644 index 00000000..becaa1bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_bamboo_planks'}.png new file mode 100644 index 00000000..7001c156 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_birch_log'}.png new file mode 100644 index 00000000..ac79b7e7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_black_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_black_concrete'}.png new file mode 100644 index 00000000..f94c7546 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_black_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_blue_concrete'}.png new file mode 100644 index 00000000..ec281b0d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_bone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_bone_block'}.png new file mode 100644 index 00000000..d27cab3e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_bone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_brown_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_brown_concrete'}.png new file mode 100644 index 00000000..e120116b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_brown_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_cherry_log'}.png new file mode 100644 index 00000000..f54d0e3a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_cyan_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_cyan_concrete'}.png new file mode 100644 index 00000000..415cdeac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_cyan_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_dark_oak_log'}.png new file mode 100644 index 00000000..18040f84 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_diamond_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_diamond_block'}.png new file mode 100644 index 00000000..97007861 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_diamond_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_emerald_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_emerald_block'}.png new file mode 100644 index 00000000..daf7b26e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_emerald_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_gilded_blackstone'}.png new file mode 100644 index 00000000..0bba68b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_gold_block'}.png new file mode 100644 index 00000000..05d6cf87 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_gray_concrete'}.png new file mode 100644 index 00000000..227c5809 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_green_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_green_concrete'}.png new file mode 100644 index 00000000..e81b373e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_green_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_iron_block'}.png new file mode 100644 index 00000000..1cd82c85 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_jungle_log'}.png new file mode 100644 index 00000000..37e7a466 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_light_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_light_blue_concrete'}.png new file mode 100644 index 00000000..6494af94 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_light_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_light_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_light_gray_concrete'}.png new file mode 100644 index 00000000..bcffd2d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_light_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_lime_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_lime_concrete'}.png new file mode 100644 index 00000000..10e9bac1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_lime_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_magenta_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_magenta_concrete'}.png new file mode 100644 index 00000000..49ad7005 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_magenta_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_mangrove_log'}.png new file mode 100644 index 00000000..41b7cb9f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_netherite_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_netherite_block'}.png new file mode 100644 index 00000000..3ffc5a81 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_netherite_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_oak_log'}.png new file mode 100644 index 00000000..a1226134 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_ochre_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_ochre_froglight'}.png new file mode 100644 index 00000000..f5ff4760 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_ochre_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_orange_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_orange_concrete'}.png new file mode 100644 index 00000000..260bbec1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_orange_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_pearlescent_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_pearlescent_froglight'}.png new file mode 100644 index 00000000..cc93a2f3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_pearlescent_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_pink_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_pink_concrete'}.png new file mode 100644 index 00000000..bc701177 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_pink_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_purple_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_purple_concrete'}.png new file mode 100644 index 00000000..09ecbcb2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_purple_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_red_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_red_concrete'}.png new file mode 100644 index 00000000..df3734df Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_red_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_redstone_lamp'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_redstone_lamp'}.png new file mode 100644 index 00000000..8042efdc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_redstone_lamp'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_sea_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_sea_lantern'}.png new file mode 100644 index 00000000..064f9f58 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_sea_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_shroomlight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_shroomlight'}.png new file mode 100644 index 00000000..10b7d65e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_shroomlight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_spruce_log'}.png new file mode 100644 index 00000000..a5e21112 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_acacia_log'}.png new file mode 100644 index 00000000..0b8751e5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_birch_log'}.png new file mode 100644 index 00000000..5170ffe9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_cherry_log'}.png new file mode 100644 index 00000000..550c9870 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_crimson_stem'}.png new file mode 100644 index 00000000..b883cc5f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_dark_oak_log'}.png new file mode 100644 index 00000000..e074d4c0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_jungle_log'}.png new file mode 100644 index 00000000..38d0d0b5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_mangrove_log'}.png new file mode 100644 index 00000000..aad04af4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_oak_log'}.png new file mode 100644 index 00000000..f4f1f454 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_spruce_log'}.png new file mode 100644 index 00000000..8024e09c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_warped_stem'}.png new file mode 100644 index 00000000..ca300862 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_stripped_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_verdant_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_verdant_froglight'}.png new file mode 100644 index 00000000..02595501 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_verdant_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_waxed_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_waxed_copper_block'}.png new file mode 100644 index 00000000..ef0c325c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_waxed_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_waxed_exposed_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_waxed_exposed_copper'}.png new file mode 100644 index 00000000..b281dde4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_waxed_exposed_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_waxed_oxidized_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_waxed_oxidized_copper'}.png new file mode 100644 index 00000000..15bdf309 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_waxed_oxidized_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_waxed_weathered_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_waxed_weathered_copper'}.png new file mode 100644 index 00000000..a8076e43 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_waxed_weathered_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_white_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_white_concrete'}.png new file mode 100644 index 00000000..58de09a7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_white_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_white_redstone_lamp'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_white_redstone_lamp'}.png new file mode 100644 index 00000000..bf5a3652 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_white_redstone_lamp'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_yellow_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_yellow_concrete'}.png new file mode 100644 index 00000000..7cf9cc29 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__reinforced_yellow_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_black_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_black_wool'}.png new file mode 100644 index 00000000..61fa084d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_black_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_blue_wool'}.png new file mode 100644 index 00000000..d810f01b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_brown_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_brown_wool'}.png new file mode 100644 index 00000000..c2abe86c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_brown_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_cyan_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_cyan_wool'}.png new file mode 100644 index 00000000..8a252a5b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_cyan_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_gray_wool'}.png new file mode 100644 index 00000000..6a94618f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_green_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_green_wool'}.png new file mode 100644 index 00000000..f530aba7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_green_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_light_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_light_blue_wool'}.png new file mode 100644 index 00000000..73c6ed00 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_light_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_light_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_light_gray_wool'}.png new file mode 100644 index 00000000..05547ff6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_light_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_lime_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_lime_wool'}.png new file mode 100644 index 00000000..ceb8c084 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_lime_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_magenta_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_magenta_wool'}.png new file mode 100644 index 00000000..98f3feae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_magenta_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_orange_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_orange_wool'}.png new file mode 100644 index 00000000..80f8b59b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_orange_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_pink_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_pink_wool'}.png new file mode 100644 index 00000000..6d2126b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_pink_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_purple_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_purple_wool'}.png new file mode 100644 index 00000000..3b0538ec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_purple_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_red_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_red_wool'}.png new file mode 100644 index 00000000..cc296d7c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_red_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_white_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_white_wool'}.png new file mode 100644 index 00000000..8f945965 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_white_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_yellow_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_yellow_wool'}.png new file mode 100644 index 00000000..13b461b8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ribbled_yellow_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rich_hay_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rich_hay_block'}.png new file mode 100644 index 00000000..4322553e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rich_hay_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ring_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ring_lodestone'}.png new file mode 100644 index 00000000..9743bc67 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ring_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ring_lodestone_side'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ring_lodestone_side'}.png new file mode 100644 index 00000000..9743bc67 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ring_lodestone_side'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ringed_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ringed_mangrove_planks'}.png new file mode 100644 index 00000000..3c208580 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ringed_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ripe_melon'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ripe_melon'}.png new file mode 100644 index 00000000..986437a3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__ripe_melon'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__roped_bone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__roped_bone_block'}.png new file mode 100644 index 00000000..6f6f7094 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__roped_bone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rosekin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rosekin'}.png new file mode 100644 index 00000000..4b5444bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rosekin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rotted_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rotted_warped_stem'}.png new file mode 100644 index 00000000..87d3bae1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rotted_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rotten_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rotten_crimson_stem'}.png new file mode 100644 index 00000000..062bd266 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rotten_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_amethyst_block'}.png new file mode 100644 index 00000000..a95eafd1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_ancient_debris'}.png new file mode 100644 index 00000000..fb67da73 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_andesite'}.png new file mode 100644 index 00000000..8be8bffd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_blue_ice'}.png new file mode 100644 index 00000000..bcf216e7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_borderless_bricks'}.png new file mode 100644 index 00000000..e35bdfa1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_bricks'}.png new file mode 100644 index 00000000..e35bdfa1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_calcite'}.png new file mode 100644 index 00000000..2aba10d5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_clay'}.png new file mode 100644 index 00000000..a30636c4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_coal_block'}.png new file mode 100644 index 00000000..d8f1b8fc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_cobblestone'}.png new file mode 100644 index 00000000..2eaa1767 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_crimson_dried_kelp_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_crimson_dried_kelp_block'}.png new file mode 100644 index 00000000..04bbc05c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_crimson_dried_kelp_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_crying_obsidian'}.png new file mode 100644 index 00000000..ca01b8f4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_dark_prismarine'}.png new file mode 100644 index 00000000..fcfc5e5e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_deepslate'}.png new file mode 100644 index 00000000..32cc73dd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_diorite'}.png new file mode 100644 index 00000000..3d1e20c9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_dirt'}.png new file mode 100644 index 00000000..13d8587f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_dripstone_block'}.png new file mode 100644 index 00000000..a088d353 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_end_stone'}.png new file mode 100644 index 00000000..dce852ce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_granite'}.png new file mode 100644 index 00000000..1768b446 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_ice'}.png new file mode 100644 index 00000000..f8381aed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_lapis_block'}.png new file mode 100644 index 00000000..55ec41ff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_lodestone'}.png new file mode 100644 index 00000000..fcdafb4b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_magma_block'}.png new file mode 100644 index 00000000..aa3587dd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_mossy_cobblestone'}.png new file mode 100644 index 00000000..9e7a772e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_mossy_stone_bricks'}.png new file mode 100644 index 00000000..056084d0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_mud'}.png new file mode 100644 index 00000000..54b18dfb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_mud_bricks'}.png new file mode 100644 index 00000000..049ab124 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_nether_bricks'}.png new file mode 100644 index 00000000..18ee06dd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_nether_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_nether_wart_block'}.png new file mode 100644 index 00000000..1a3f1e87 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_nether_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_netherrack'}.png new file mode 100644 index 00000000..8415e64b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_obsidian'}.png new file mode 100644 index 00000000..72d406a8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_packed_ice'}.png new file mode 100644 index 00000000..f73be9c2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_packed_mud'}.png new file mode 100644 index 00000000..5abc77da Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_panelled_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_panelled_mud'}.png new file mode 100644 index 00000000..8cc0746e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_panelled_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_panelled_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_panelled_mud_bricks'}.png new file mode 100644 index 00000000..63443610 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_panelled_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_panelled_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_panelled_packed_mud'}.png new file mode 100644 index 00000000..eb58efd8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_panelled_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_prismarine'}.png new file mode 100644 index 00000000..3cbeac9d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_purpur_block'}.png new file mode 100644 index 00000000..cb050a0a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_quartz_block'}.png new file mode 100644 index 00000000..fb04c9b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_raw_copper_block'}.png new file mode 100644 index 00000000..45c48b6d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_raw_gold_block'}.png new file mode 100644 index 00000000..74349b59 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_raw_iron_block'}.png new file mode 100644 index 00000000..846bd6b4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_red_nether_bricks'}.png new file mode 100644 index 00000000..7d42da72 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_red_sandstone'}.png new file mode 100644 index 00000000..65aa18c2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_redstone_block'}.png new file mode 100644 index 00000000..8862c751 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_sandstone'}.png new file mode 100644 index 00000000..26aa1fd2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_smooth_stone'}.png new file mode 100644 index 00000000..e0a2b994 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_snow_block'}.png new file mode 100644 index 00000000..5293fd21 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_stone'}.png new file mode 100644 index 00000000..932518e5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_tuff'}.png new file mode 100644 index 00000000..f9dc6bb4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_warped_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_warped_wart_block'}.png new file mode 100644 index 00000000..596ee3af Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rough_warped_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rought_gravel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rought_gravel'}.png new file mode 100644 index 00000000..8810ee11 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rought_gravel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__round_ochre_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__round_ochre_froglight'}.png new file mode 100644 index 00000000..ef8dceff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__round_ochre_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__round_pearlescent_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__round_pearlescent_froglight'}.png new file mode 100644 index 00000000..25830234 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__round_pearlescent_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__round_verdant_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__round_verdant_froglight'}.png new file mode 100644 index 00000000..81a54e22 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__round_verdant_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_amethyst_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_amethyst_block_bricks'}.png new file mode 100644 index 00000000..455477b6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_amethyst_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_ancient_debris_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_ancient_debris_bricks'}.png new file mode 100644 index 00000000..4bc9fd98 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_ancient_debris_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_andesite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_andesite_bricks'}.png new file mode 100644 index 00000000..8e123c79 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_andesite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_basalt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_basalt_bricks'}.png new file mode 100644 index 00000000..8da130bc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_basalt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_blackstone_bricks'}.png new file mode 100644 index 00000000..26c420f0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_blue_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_blue_ice_bricks'}.png new file mode 100644 index 00000000..bef4c86f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_blue_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_borderless_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_borderless_bricks_bricks'}.png new file mode 100644 index 00000000..24e361cf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_borderless_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_bricks_bricks'}.png new file mode 100644 index 00000000..c707668f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_calcite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_calcite_bricks'}.png new file mode 100644 index 00000000..a78ab8f5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_calcite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_clay_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_clay_bricks'}.png new file mode 100644 index 00000000..2d40105c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_clay_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_coal_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_coal_block_bricks'}.png new file mode 100644 index 00000000..10855e32 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_coal_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_cobblestone_bricks'}.png new file mode 100644 index 00000000..738b0f40 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_crying_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_crying_obsidian_bricks'}.png new file mode 100644 index 00000000..90ede0a7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_crying_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_dark_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_dark_prismarine_bricks'}.png new file mode 100644 index 00000000..4843ebd7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_dark_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_deepslate_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_deepslate_bricks'}.png new file mode 100644 index 00000000..c35c4595 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_deepslate_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_diorite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_diorite_bricks'}.png new file mode 100644 index 00000000..ca4c1d5f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_diorite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_dirt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_dirt_bricks'}.png new file mode 100644 index 00000000..39b26880 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_dirt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_dripstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_dripstone_block_bricks'}.png new file mode 100644 index 00000000..62df8236 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_dripstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_end_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_end_stone_bricks'}.png new file mode 100644 index 00000000..fb282606 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_end_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_gilded_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_gilded_blackstone_bricks'}.png new file mode 100644 index 00000000..54402091 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_gilded_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_granite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_granite_bricks'}.png new file mode 100644 index 00000000..85f4286b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_granite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_ice_bricks'}.png new file mode 100644 index 00000000..dffae580 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_lapis_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_lapis_block_bricks'}.png new file mode 100644 index 00000000..aac0c558 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_lapis_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_lodestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_lodestone_bricks'}.png new file mode 100644 index 00000000..ffa7fe70 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_lodestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_magma_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_magma_block_bricks'}.png new file mode 100644 index 00000000..b0c6e5df Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_magma_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_mossy_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_mossy_cobblestone_bricks'}.png new file mode 100644 index 00000000..3788034d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_mossy_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_mossy_stone_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_mossy_stone_bricks_bricks'}.png new file mode 100644 index 00000000..3327efa0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_mossy_stone_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_nether_bricks_bricks'}.png new file mode 100644 index 00000000..62c941af Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_netherrack_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_netherrack_bricks'}.png new file mode 100644 index 00000000..00f8ec0c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_netherrack_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_obsidian_bricks'}.png new file mode 100644 index 00000000..0d1295ae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_packed_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_packed_ice_bricks'}.png new file mode 100644 index 00000000..08b66f84 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_packed_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_prismarine_bricks'}.png new file mode 100644 index 00000000..99fd3c25 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_purpur_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_purpur_block_bricks'}.png new file mode 100644 index 00000000..1a86c505 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_purpur_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_quartz_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_quartz_block_bricks'}.png new file mode 100644 index 00000000..e11cf259 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_quartz_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_raw_copper_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_raw_copper_block_bricks'}.png new file mode 100644 index 00000000..0b70a137 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_raw_copper_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_raw_gold_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_raw_gold_block_bricks'}.png new file mode 100644 index 00000000..b512c4f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_raw_gold_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_raw_iron_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_raw_iron_block_bricks'}.png new file mode 100644 index 00000000..d35c6feb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_raw_iron_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_red_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_red_nether_bricks_bricks'}.png new file mode 100644 index 00000000..22207db0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_red_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_red_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_red_sandstone_bricks'}.png new file mode 100644 index 00000000..62ed76f3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_red_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_redstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_redstone_block_bricks'}.png new file mode 100644 index 00000000..068be897 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_redstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_sandstone_bricks'}.png new file mode 100644 index 00000000..9faa9b54 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_smooth_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_smooth_stone_bricks'}.png new file mode 100644 index 00000000..2cbe2d05 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_smooth_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_snow_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_snow_block_bricks'}.png new file mode 100644 index 00000000..d2c91c0a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_snow_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_stone_bricks'}.png new file mode 100644 index 00000000..c5bee150 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_tuff_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_tuff_bricks'}.png new file mode 100644 index 00000000..7c80f591 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rounded_tuff_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rune_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rune_mud'}.png new file mode 100644 index 00000000..1946d97a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rune_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rune_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rune_mud_bricks'}.png new file mode 100644 index 00000000..07c7348e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rune_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rune_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rune_packed_mud'}.png new file mode 100644 index 00000000..574dee2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rune_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_amethyst_block'}.png new file mode 100644 index 00000000..e626f8d1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_ancient_debris'}.png new file mode 100644 index 00000000..a5f03d64 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_andesite'}.png new file mode 100644 index 00000000..cba058d0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_basalt'}.png new file mode 100644 index 00000000..f8489303 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_blackstone'}.png new file mode 100644 index 00000000..b9ee66e0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_blue_ice'}.png new file mode 100644 index 00000000..057a962d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_borderless_bricks'}.png new file mode 100644 index 00000000..08254557 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_bricks'}.png new file mode 100644 index 00000000..e2dfcd26 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_calcite'}.png new file mode 100644 index 00000000..80776731 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_clay'}.png new file mode 100644 index 00000000..5e6a1bec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_coal_block'}.png new file mode 100644 index 00000000..89ced73f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_cobblestone'}.png new file mode 100644 index 00000000..2afef4cc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_crying_obsidian'}.png new file mode 100644 index 00000000..fd28b0f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_dark_prismarine'}.png new file mode 100644 index 00000000..11d204fc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_deepslate'}.png new file mode 100644 index 00000000..1287f555 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_diorite'}.png new file mode 100644 index 00000000..5f565cef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_dirt'}.png new file mode 100644 index 00000000..349ab467 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_dripstone_block'}.png new file mode 100644 index 00000000..784035d9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_end_stone'}.png new file mode 100644 index 00000000..3530f476 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_gilded_blackstone'}.png new file mode 100644 index 00000000..b40bd79d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_granite'}.png new file mode 100644 index 00000000..ade5ce2f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_ice'}.png new file mode 100644 index 00000000..79f2ff69 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_lapis_block'}.png new file mode 100644 index 00000000..61c5356f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_lodestone'}.png new file mode 100644 index 00000000..fc31f481 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_magma_block'}.png new file mode 100644 index 00000000..183b2402 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_mossy_cobblestone'}.png new file mode 100644 index 00000000..33d3499b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_mossy_stone_bricks'}.png new file mode 100644 index 00000000..b78ed447 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_nether_bricks'}.png new file mode 100644 index 00000000..1eae147d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_netherrack'}.png new file mode 100644 index 00000000..0abdf9bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_obsidian'}.png new file mode 100644 index 00000000..c38479c7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_packed_ice'}.png new file mode 100644 index 00000000..e167f59f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_prismarine'}.png new file mode 100644 index 00000000..6b5454a2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_purpur_block'}.png new file mode 100644 index 00000000..cca2230c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_quartz_block'}.png new file mode 100644 index 00000000..b415af07 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_raw_copper_block'}.png new file mode 100644 index 00000000..141be5dd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_raw_gold_block'}.png new file mode 100644 index 00000000..458a1cc7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_raw_iron_block'}.png new file mode 100644 index 00000000..23741c46 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_red_nether_bricks'}.png new file mode 100644 index 00000000..f2ac861f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_red_sandstone'}.png new file mode 100644 index 00000000..3741346e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_redstone_block'}.png new file mode 100644 index 00000000..a1b7b067 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_sandstone'}.png new file mode 100644 index 00000000..bad21401 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_smooth_stone'}.png new file mode 100644 index 00000000..cfadd860 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_snow_block'}.png new file mode 100644 index 00000000..0405a82a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_stone'}.png new file mode 100644 index 00000000..19e9e5a1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_tuff'}.png new file mode 100644 index 00000000..4f6cf28e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__runic_carved_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_black_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_black_concrete'}.png new file mode 100644 index 00000000..01bd4c36 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_black_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_blue_concrete'}.png new file mode 100644 index 00000000..63f4e497 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_brown_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_brown_concrete'}.png new file mode 100644 index 00000000..5a5b1bd7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_brown_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_cyan_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_cyan_concrete'}.png new file mode 100644 index 00000000..f4175545 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_cyan_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_gray_concrete'}.png new file mode 100644 index 00000000..8116d92a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_green_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_green_concrete'}.png new file mode 100644 index 00000000..02321b05 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_green_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_light_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_light_blue_concrete'}.png new file mode 100644 index 00000000..69796143 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_light_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_light_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_light_gray_concrete'}.png new file mode 100644 index 00000000..24fc5b39 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_light_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_lime_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_lime_concrete'}.png new file mode 100644 index 00000000..63632f1b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_lime_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_magenta_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_magenta_concrete'}.png new file mode 100644 index 00000000..0a0b44e2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_magenta_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_orange_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_orange_concrete'}.png new file mode 100644 index 00000000..f4b954c9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_orange_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_pink_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_pink_concrete'}.png new file mode 100644 index 00000000..61b724b9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_pink_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_purple_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_purple_concrete'}.png new file mode 100644 index 00000000..dfbdf338 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_purple_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_red_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_red_concrete'}.png new file mode 100644 index 00000000..ffde6b29 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_red_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_white_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_white_concrete'}.png new file mode 100644 index 00000000..46db9619 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_white_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_yellow_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_yellow_concrete'}.png new file mode 100644 index 00000000..c111ec7c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rusted_yellow_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rustic_melon'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rustic_melon'}.png new file mode 100644 index 00000000..99c75b72 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__rustic_melon'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_amethyst_block'}.png new file mode 100644 index 00000000..09b66c43 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_ancient_debris'}.png new file mode 100644 index 00000000..7f5c885f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_andesite'}.png new file mode 100644 index 00000000..4de89670 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_basalt'}.png new file mode 100644 index 00000000..84b0d396 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_blackstone'}.png new file mode 100644 index 00000000..c4e4667c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_blue_ice'}.png new file mode 100644 index 00000000..4d34e14e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_borderless_bricks'}.png new file mode 100644 index 00000000..38a8cb48 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_bricks'}.png new file mode 100644 index 00000000..67b3b693 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_calcite'}.png new file mode 100644 index 00000000..2a26a2e4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_clay'}.png new file mode 100644 index 00000000..f05aef81 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_coal_block'}.png new file mode 100644 index 00000000..1c33db7a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_cobblestone'}.png new file mode 100644 index 00000000..26ffd3d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_crying_obsidian'}.png new file mode 100644 index 00000000..23b9ce4d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_dark_prismarine'}.png new file mode 100644 index 00000000..3f4424f1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_deepslate'}.png new file mode 100644 index 00000000..e6e568f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_diorite'}.png new file mode 100644 index 00000000..739b308c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_dirt'}.png new file mode 100644 index 00000000..87d30a0f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_dripstone_block'}.png new file mode 100644 index 00000000..e5276140 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_end_stone'}.png new file mode 100644 index 00000000..aa3a73ea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_gilded_blackstone'}.png new file mode 100644 index 00000000..18d0bd56 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_granite'}.png new file mode 100644 index 00000000..8701d375 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_ice'}.png new file mode 100644 index 00000000..dd265b95 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_lapis_block'}.png new file mode 100644 index 00000000..9605c5f0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_lodestone'}.png new file mode 100644 index 00000000..3b88be86 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_magma_block'}.png new file mode 100644 index 00000000..d3eb12ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_mossy_cobblestone'}.png new file mode 100644 index 00000000..afc57646 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_mossy_stone_bricks'}.png new file mode 100644 index 00000000..d5c73897 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_mud'}.png new file mode 100644 index 00000000..6d4515a1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_mud_bricks'}.png new file mode 100644 index 00000000..da34f460 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_nether_bricks'}.png new file mode 100644 index 00000000..6fa5c618 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_netherrack'}.png new file mode 100644 index 00000000..e1667c14 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_obsidian'}.png new file mode 100644 index 00000000..fe56a63c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_packed_ice'}.png new file mode 100644 index 00000000..c9a2fe24 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_packed_mud'}.png new file mode 100644 index 00000000..48dd07ad Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_prismarine'}.png new file mode 100644 index 00000000..2ba2046e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_purpur_block'}.png new file mode 100644 index 00000000..3e48800f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_quartz_block'}.png new file mode 100644 index 00000000..f3edd9d2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_raw_copper_block'}.png new file mode 100644 index 00000000..f2a5520f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_raw_gold_block'}.png new file mode 100644 index 00000000..3baf0cef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_raw_iron_block'}.png new file mode 100644 index 00000000..e3d7bb87 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_red_nether_bricks'}.png new file mode 100644 index 00000000..524402b4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_red_sandstone'}.png new file mode 100644 index 00000000..4c5814b3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_redstone_block'}.png new file mode 100644 index 00000000..87b8d49d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_sandstone'}.png new file mode 100644 index 00000000..90836ad8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_smooth_stone'}.png new file mode 100644 index 00000000..73b09d81 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_snow_block'}.png new file mode 100644 index 00000000..59ccfe50 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_stone'}.png new file mode 100644 index 00000000..da9860e7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_tuff'}.png new file mode 100644 index 00000000..bf9319df Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sad_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_amethyst_block'}.png new file mode 100644 index 00000000..c4eb5f86 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_ancient_debris'}.png new file mode 100644 index 00000000..430070fb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_andesite'}.png new file mode 100644 index 00000000..f1e39334 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_basalt'}.png new file mode 100644 index 00000000..fa6c5465 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_blackstone'}.png new file mode 100644 index 00000000..db859d22 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_blue_ice'}.png new file mode 100644 index 00000000..c61834bd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_borderless_bricks'}.png new file mode 100644 index 00000000..df5de18a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_bricks'}.png new file mode 100644 index 00000000..df5de18a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_calcite'}.png new file mode 100644 index 00000000..c2ac6afc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_clay'}.png new file mode 100644 index 00000000..08a6302c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_coal_block'}.png new file mode 100644 index 00000000..e4b710b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_cobblestone'}.png new file mode 100644 index 00000000..55acd253 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_crying_obsidian'}.png new file mode 100644 index 00000000..36b99d2e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_dark_prismarine'}.png new file mode 100644 index 00000000..3764a7f8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_deepslate'}.png new file mode 100644 index 00000000..90d56249 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_diorite'}.png new file mode 100644 index 00000000..1c8386ec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_dirt'}.png new file mode 100644 index 00000000..a2719525 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_dripstone_block'}.png new file mode 100644 index 00000000..43487387 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_end_stone'}.png new file mode 100644 index 00000000..6fb89e28 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_gilded_blackstone'}.png new file mode 100644 index 00000000..72f482bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_granite'}.png new file mode 100644 index 00000000..e9ee9005 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_ice'}.png new file mode 100644 index 00000000..91a09a88 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_lapis_block'}.png new file mode 100644 index 00000000..99f1306a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_lodestone'}.png new file mode 100644 index 00000000..15125dca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_magma_block'}.png new file mode 100644 index 00000000..271aa1de Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_mossy_cobblestone'}.png new file mode 100644 index 00000000..b270b95d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_mossy_stone_bricks'}.png new file mode 100644 index 00000000..268b0bde Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_nether_bricks'}.png new file mode 100644 index 00000000..32a5498b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_netherrack'}.png new file mode 100644 index 00000000..7a536fa2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_obsidian'}.png new file mode 100644 index 00000000..6111699e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_packed_ice'}.png new file mode 100644 index 00000000..60310ada Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_prismarine'}.png new file mode 100644 index 00000000..d7b69d94 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_purpur_block'}.png new file mode 100644 index 00000000..4d51d053 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_quartz_block'}.png new file mode 100644 index 00000000..cd41d92a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_raw_copper_block'}.png new file mode 100644 index 00000000..22f1b201 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_raw_gold_block'}.png new file mode 100644 index 00000000..bafd905b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_raw_iron_block'}.png new file mode 100644 index 00000000..1d071c4d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_red_nether_bricks'}.png new file mode 100644 index 00000000..60dc2996 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_red_sandstone'}.png new file mode 100644 index 00000000..b84cb220 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_redstone_block'}.png new file mode 100644 index 00000000..d66c7491 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_sandstone'}.png new file mode 100644 index 00000000..2d9a166e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_smooth_stone'}.png new file mode 100644 index 00000000..a5cc564e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_snow_block'}.png new file mode 100644 index 00000000..9ea62026 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_stone'}.png new file mode 100644 index 00000000..6cf71b18 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_tuff'}.png new file mode 100644 index 00000000..79b64a74 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sanded_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sandstone_bricks'}.png new file mode 100644 index 00000000..02557a75 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sandstone_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sandstone_mini_tiles'}.png new file mode 100644 index 00000000..05228fb1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sandstone_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sandstone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sandstone_pillar'}.png new file mode 100644 index 00000000..93f5b950 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sandstone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sandstone_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sandstone_pillar_top'}.png new file mode 100644 index 00000000..5122f240 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sandstone_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sandstone_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sandstone_scales'}.png new file mode 100644 index 00000000..14ce9772 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sandstone_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sandy_gravel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sandy_gravel'}.png new file mode 100644 index 00000000..aad7a1e4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sandy_gravel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scabbed_nether_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scabbed_nether_wart_block'}.png new file mode 100644 index 00000000..9f45a68a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scabbed_nether_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scabbed_warped_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scabbed_warped_wart_block'}.png new file mode 100644 index 00000000..df52b98d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scabbed_warped_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_black_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_black_wool'}.png new file mode 100644 index 00000000..550307b2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_black_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_blue_wool'}.png new file mode 100644 index 00000000..8bf440e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_brown_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_brown_mushroom_block'}.png new file mode 100644 index 00000000..19bd7877 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_brown_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_brown_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_brown_wool'}.png new file mode 100644 index 00000000..c88f63cf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_brown_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_cyan_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_cyan_wool'}.png new file mode 100644 index 00000000..c9e0bef0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_cyan_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_gray_wool'}.png new file mode 100644 index 00000000..fdd78d22 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_green_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_green_wool'}.png new file mode 100644 index 00000000..1326fb7f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_green_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_light_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_light_blue_wool'}.png new file mode 100644 index 00000000..9e6766d3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_light_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_light_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_light_gray_wool'}.png new file mode 100644 index 00000000..39a83dec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_light_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_lime_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_lime_wool'}.png new file mode 100644 index 00000000..883466d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_lime_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_magenta_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_magenta_wool'}.png new file mode 100644 index 00000000..96bb2a46 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_magenta_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_nether_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_nether_wart_block'}.png new file mode 100644 index 00000000..6555f3b5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_nether_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_orange_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_orange_wool'}.png new file mode 100644 index 00000000..41f60896 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_orange_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_pink_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_pink_wool'}.png new file mode 100644 index 00000000..35f515d2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_pink_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_purple_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_purple_wool'}.png new file mode 100644 index 00000000..70a42a80 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_purple_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_red_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_red_wool'}.png new file mode 100644 index 00000000..70309eed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_red_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_warped_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_warped_wart_block'}.png new file mode 100644 index 00000000..c6a9de2f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_warped_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_white_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_white_wool'}.png new file mode 100644 index 00000000..9e3f2888 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_white_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_yellow_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_yellow_wool'}.png new file mode 100644 index 00000000..cfe154b3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaled_yellow_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaly_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaly_mud'}.png new file mode 100644 index 00000000..8cc0746e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaly_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaly_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaly_mud_bricks'}.png new file mode 100644 index 00000000..26886afd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaly_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaly_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaly_packed_mud'}.png new file mode 100644 index 00000000..cd5cd0dc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__scaly_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sea_lantern_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sea_lantern_lodestone'}.png new file mode 100644 index 00000000..c4de0d11 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sea_lantern_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sea_lodestone_side'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sea_lodestone_side'}.png new file mode 100644 index 00000000..a7254be3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sea_lodestone_side'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__seared_nether_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__seared_nether_wart_block'}.png new file mode 100644 index 00000000..39e5c16b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__seared_nether_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__seared_warped_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__seared_warped_wart_block'}.png new file mode 100644 index 00000000..2019f446 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__seared_warped_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__semi_spongy_nether_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__semi_spongy_nether_wart_block'}.png new file mode 100644 index 00000000..acfc0ca5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__semi_spongy_nether_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__semi_spongy_warped_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__semi_spongy_warped_wart_block'}.png new file mode 100644 index 00000000..bdcc9c70 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__semi_spongy_warped_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_diamond_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_diamond_block'}.png new file mode 100644 index 00000000..43f8de4f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_diamond_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_emerald_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_emerald_block'}.png new file mode 100644 index 00000000..660d777a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_emerald_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_gold_block'}.png new file mode 100644 index 00000000..18737242 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_iron_block'}.png new file mode 100644 index 00000000..2010aafe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_netherite_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_netherite_block'}.png new file mode 100644 index 00000000..70a93c10 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_netherite_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_waxed_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_waxed_copper_block'}.png new file mode 100644 index 00000000..ba0f96e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_waxed_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_waxed_exposed_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_waxed_exposed_copper'}.png new file mode 100644 index 00000000..530188e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_waxed_exposed_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_waxed_oxidized_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_waxed_oxidized_copper'}.png new file mode 100644 index 00000000..722d573e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_waxed_oxidized_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_waxed_weathered_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_waxed_weathered_copper'}.png new file mode 100644 index 00000000..92783ef9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sheet_waxed_weathered_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shelved_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shelved_mangrove_planks'}.png new file mode 100644 index 00000000..6ccc584a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shelved_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_acacia_planks'}.png new file mode 100644 index 00000000..d4f95be6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_bamboo_planks'}.png new file mode 100644 index 00000000..d2f310c2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_birch_planks'}.png new file mode 100644 index 00000000..c239789a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_cherry_planks'}.png new file mode 100644 index 00000000..47552b42 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_crimson_planks'}.png new file mode 100644 index 00000000..2917087b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_dark_oak_planks'}.png new file mode 100644 index 00000000..1db29f74 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_jungle_planks'}.png new file mode 100644 index 00000000..d025450c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_mangrove_planks'}.png new file mode 100644 index 00000000..a0637e56 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_oak_planks'}.png new file mode 100644 index 00000000..19fd4192 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_spruce_planks'}.png new file mode 100644 index 00000000..5a829bbe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_warped_planks'}.png new file mode 100644 index 00000000..603a8a78 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shifted_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shimmering_glowstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shimmering_glowstone'}.png new file mode 100644 index 00000000..eee2d2bd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shimmering_glowstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shimmering_sea_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shimmering_sea_lantern'}.png new file mode 100644 index 00000000..ec61d129 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shimmering_sea_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shimmering_shroomlight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shimmering_shroomlight'}.png new file mode 100644 index 00000000..22c189f6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shimmering_shroomlight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrooming_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrooming_crimson_stem'}.png new file mode 100644 index 00000000..0925c6c8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrooming_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrooming_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrooming_warped_stem'}.png new file mode 100644 index 00000000..0e6264b2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrooming_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shroomlight_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shroomlight_lantern'}.png new file mode 100644 index 00000000..2e193a55 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shroomlight_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shroomlight_lodestone_side'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shroomlight_lodestone_side'}.png new file mode 100644 index 00000000..e14b134f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shroomlight_lodestone_side'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shroomy_dried_kelp_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shroomy_dried_kelp_block'}.png new file mode 100644 index 00000000..d29e154d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shroomy_dried_kelp_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_black_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_black_glazed_terracotta'}.png new file mode 100644 index 00000000..2f52eda4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_black_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_blue_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_blue_glazed_terracotta'}.png new file mode 100644 index 00000000..f7def95d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_blue_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_brown_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_brown_glazed_terracotta'}.png new file mode 100644 index 00000000..c5c199a0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_brown_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_cyan_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_cyan_glazed_terracotta'}.png new file mode 100644 index 00000000..7b577963 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_cyan_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_gray_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_gray_glazed_terracotta'}.png new file mode 100644 index 00000000..156af44d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_gray_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_green_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_green_glazed_terracotta'}.png new file mode 100644 index 00000000..db06be7a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_green_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_light_blue_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_light_blue_glazed_terracotta'}.png new file mode 100644 index 00000000..df709014 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_light_blue_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_light_gray_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_light_gray_glazed_terracotta'}.png new file mode 100644 index 00000000..66998719 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_light_gray_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_lime_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_lime_glazed_terracotta'}.png new file mode 100644 index 00000000..4307f232 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_lime_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_magenta_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_magenta_glazed_terracotta'}.png new file mode 100644 index 00000000..343ccfca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_magenta_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_orange_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_orange_glazed_terracotta'}.png new file mode 100644 index 00000000..782ab001 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_orange_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_pink_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_pink_glazed_terracotta'}.png new file mode 100644 index 00000000..136db33e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_pink_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_purple_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_purple_glazed_terracotta'}.png new file mode 100644 index 00000000..bca304ee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_purple_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_red_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_red_glazed_terracotta'}.png new file mode 100644 index 00000000..96722f8c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_red_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_white_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_white_glazed_terracotta'}.png new file mode 100644 index 00000000..92159d1a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_white_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_yellow_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_yellow_glazed_terracotta'}.png new file mode 100644 index 00000000..241fc167 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shrunken_yellow_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_diamond_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_diamond_block'}.png new file mode 100644 index 00000000..16a78a13 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_diamond_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_emerald_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_emerald_block'}.png new file mode 100644 index 00000000..5f88b9ca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_emerald_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_gold_block'}.png new file mode 100644 index 00000000..e81940b8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_iron_block'}.png new file mode 100644 index 00000000..5167d2b0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_netherite_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_netherite_block'}.png new file mode 100644 index 00000000..8acd3f64 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_netherite_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_waxed_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_waxed_copper_block'}.png new file mode 100644 index 00000000..4542f596 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_waxed_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_waxed_exposed_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_waxed_exposed_copper'}.png new file mode 100644 index 00000000..81821325 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_waxed_exposed_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_waxed_oxidized_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_waxed_oxidized_copper'}.png new file mode 100644 index 00000000..5a9760a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_waxed_oxidized_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_waxed_weathered_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_waxed_weathered_copper'}.png new file mode 100644 index 00000000..fd621417 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__shuttered_waxed_weathered_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sided_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sided_mangrove_planks'}.png new file mode 100644 index 00000000..c3a562d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sided_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sifted_gravel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sifted_gravel'}.png new file mode 100644 index 00000000..25d00d7c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sifted_gravel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sigil_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sigil_mud'}.png new file mode 100644 index 00000000..ed3560e0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sigil_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sigil_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sigil_mud_bricks'}.png new file mode 100644 index 00000000..f9848609 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sigil_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sigil_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sigil_packed_mud'}.png new file mode 100644 index 00000000..0bf81bc5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sigil_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_acacia_log'}.png new file mode 100644 index 00000000..cfe3c9fb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_birch_log'}.png new file mode 100644 index 00000000..48eb648c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_cherry_log'}.png new file mode 100644 index 00000000..9974ac2c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_crimson_stem'}.png new file mode 100644 index 00000000..bf6ad814 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_dark_oak_log'}.png new file mode 100644 index 00000000..4e9dfa01 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_jungle_log'}.png new file mode 100644 index 00000000..9e1e780f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_mangrove_log'}.png new file mode 100644 index 00000000..7e062e75 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_oak_log'}.png new file mode 100644 index 00000000..101bd9cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_spruce_log'}.png new file mode 100644 index 00000000..8ef8b71c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_warped_stem'}.png new file mode 100644 index 00000000..bde96614 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sign_stripped_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__silly_carved_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__silly_carved_pumpkin'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__silly_carved_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__silly_jack_o_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__silly_jack_o_lantern'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__silly_jack_o_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_amethyst_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_amethyst_block_pillar'}.png new file mode 100644 index 00000000..3747ee4b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_amethyst_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_ancient_debris_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_ancient_debris_pillar'}.png new file mode 100644 index 00000000..64b71a53 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_ancient_debris_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_andesite_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_andesite_pillar'}.png new file mode 100644 index 00000000..9ab36075 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_andesite_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_basalt_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_basalt_pillar'}.png new file mode 100644 index 00000000..853d9be9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_basalt_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_blackstone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_blackstone_pillar'}.png new file mode 100644 index 00000000..160244a0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_blackstone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_blue_ice_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_blue_ice_pillar'}.png new file mode 100644 index 00000000..024c79c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_blue_ice_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_borderless_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_borderless_bricks_pillar'}.png new file mode 100644 index 00000000..ec4caa11 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_borderless_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_bricks_pillar'}.png new file mode 100644 index 00000000..8daca155 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_calcite_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_calcite_pillar'}.png new file mode 100644 index 00000000..b70a9698 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_calcite_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_clay_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_clay_pillar'}.png new file mode 100644 index 00000000..63958a36 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_clay_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_coal_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_coal_block_pillar'}.png new file mode 100644 index 00000000..ccb5d450 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_coal_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_cobblestone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_cobblestone_pillar'}.png new file mode 100644 index 00000000..2a28c89b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_cobblestone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_crying_obsidian_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_crying_obsidian_pillar'}.png new file mode 100644 index 00000000..8bd1d240 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_crying_obsidian_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_dark_prismarine_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_dark_prismarine_pillar'}.png new file mode 100644 index 00000000..2ad7efcd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_dark_prismarine_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_deepslate_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_deepslate_pillar'}.png new file mode 100644 index 00000000..e1dd0527 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_deepslate_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_diorite_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_diorite_pillar'}.png new file mode 100644 index 00000000..a1dbfafa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_diorite_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_dirt_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_dirt_pillar'}.png new file mode 100644 index 00000000..5d4a62a0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_dirt_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_dripstone_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_dripstone_block_pillar'}.png new file mode 100644 index 00000000..4d5da5e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_dripstone_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_end_stone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_end_stone_pillar'}.png new file mode 100644 index 00000000..cf59f95e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_end_stone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_gilded_blackstone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_gilded_blackstone_pillar'}.png new file mode 100644 index 00000000..d5ee6f91 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_gilded_blackstone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_granite_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_granite_pillar'}.png new file mode 100644 index 00000000..a9333e5a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_granite_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_ice_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_ice_pillar'}.png new file mode 100644 index 00000000..0ce6862f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_ice_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_lapis_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_lapis_block_pillar'}.png new file mode 100644 index 00000000..e18fe668 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_lapis_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_lodestone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_lodestone_pillar'}.png new file mode 100644 index 00000000..df2bcfa5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_lodestone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_magma_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_magma_block_pillar'}.png new file mode 100644 index 00000000..f3156293 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_magma_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_mossy_cobblestone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_mossy_cobblestone_pillar'}.png new file mode 100644 index 00000000..1092ce68 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_mossy_cobblestone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_mossy_stone_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_mossy_stone_bricks_pillar'}.png new file mode 100644 index 00000000..148c12a8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_mossy_stone_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_mud_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_mud_bricks_pillar'}.png new file mode 100644 index 00000000..142f75df Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_mud_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_mud_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_mud_pillar'}.png new file mode 100644 index 00000000..283a4b5b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_mud_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_nether_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_nether_bricks_pillar'}.png new file mode 100644 index 00000000..bfa9b0a8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_nether_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_netherrack_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_netherrack_pillar'}.png new file mode 100644 index 00000000..82a2080d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_netherrack_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_obsidian_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_obsidian_pillar'}.png new file mode 100644 index 00000000..e4514111 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_obsidian_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_packed_ice_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_packed_ice_pillar'}.png new file mode 100644 index 00000000..0a62c08c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_packed_ice_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_packed_mud_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_packed_mud_pillar'}.png new file mode 100644 index 00000000..811d7d21 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_packed_mud_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_prismarine_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_prismarine_pillar'}.png new file mode 100644 index 00000000..55112d75 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_prismarine_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_purpur_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_purpur_block_pillar'}.png new file mode 100644 index 00000000..e050e391 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_purpur_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_quartz_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_quartz_block_pillar'}.png new file mode 100644 index 00000000..db5451d8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_quartz_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_raw_copper_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_raw_copper_block_pillar'}.png new file mode 100644 index 00000000..637866b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_raw_copper_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_raw_gold_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_raw_gold_block_pillar'}.png new file mode 100644 index 00000000..bb7cfe8b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_raw_gold_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_raw_iron_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_raw_iron_block_pillar'}.png new file mode 100644 index 00000000..2a7cde20 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_raw_iron_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_red_nether_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_red_nether_bricks_pillar'}.png new file mode 100644 index 00000000..574217f0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_red_nether_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_red_sandstone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_red_sandstone_pillar'}.png new file mode 100644 index 00000000..456d612d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_red_sandstone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_redstone_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_redstone_block_pillar'}.png new file mode 100644 index 00000000..8e2319c3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_redstone_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_sandstone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_sandstone_pillar'}.png new file mode 100644 index 00000000..deb45db5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_sandstone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_smooth_stone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_smooth_stone_pillar'}.png new file mode 100644 index 00000000..721afe22 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_smooth_stone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_snow_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_snow_block_pillar'}.png new file mode 100644 index 00000000..4536edfd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_snow_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_stone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_stone_pillar'}.png new file mode 100644 index 00000000..140d7b5b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_stone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_tuff_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_tuff_pillar'}.png new file mode 100644 index 00000000..c3b7b6fc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__simple_tuff_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_acacia_planks'}.png new file mode 100644 index 00000000..62ac04b6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_bamboo_planks'}.png new file mode 100644 index 00000000..2f4a0934 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_birch_planks'}.png new file mode 100644 index 00000000..86ea496a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_cherry_planks'}.png new file mode 100644 index 00000000..7e0c77e7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_crimson_planks'}.png new file mode 100644 index 00000000..6a5c3830 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_dark_oak_planks'}.png new file mode 100644 index 00000000..9cb4340c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_jungle_planks'}.png new file mode 100644 index 00000000..ae78dd9b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_mangrove_planks'}.png new file mode 100644 index 00000000..a9d52049 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_oak_planks'}.png new file mode 100644 index 00000000..b7ac6812 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_spruce_planks'}.png new file mode 100644 index 00000000..1e2a53bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_warped_planks'}.png new file mode 100644 index 00000000..53379f78 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slanted_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slight_smile_carved_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slight_smile_carved_pumpkin'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slight_smile_carved_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slight_smile_jack_o_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slight_smile_jack_o_lantern'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__slight_smile_jack_o_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_amethyst_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_amethyst_block_bricks'}.png new file mode 100644 index 00000000..65ac14ba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_amethyst_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_ancient_debris_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_ancient_debris_bricks'}.png new file mode 100644 index 00000000..9faa310f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_ancient_debris_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_andesite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_andesite_bricks'}.png new file mode 100644 index 00000000..e525b1a5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_andesite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_basalt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_basalt_bricks'}.png new file mode 100644 index 00000000..63be0b03 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_basalt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_black_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_black_stained_glass'}.png new file mode 100644 index 00000000..af956ff3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_black_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_black_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_black_terracotta_tiles'}.png new file mode 100644 index 00000000..b1e37ef5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_black_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_blackstone_bricks'}.png new file mode 100644 index 00000000..0fdf1c2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_blue_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_blue_ice_bricks'}.png new file mode 100644 index 00000000..66997058 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_blue_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_blue_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_blue_stained_glass'}.png new file mode 100644 index 00000000..f8eee119 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_blue_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_blue_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_blue_terracotta_tiles'}.png new file mode 100644 index 00000000..52d29b79 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_blue_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_borderless_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_borderless_bricks_bricks'}.png new file mode 100644 index 00000000..4cd56198 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_borderless_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_bricks_bricks'}.png new file mode 100644 index 00000000..a327a9d2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_brown_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_brown_stained_glass'}.png new file mode 100644 index 00000000..f6131c18 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_brown_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_brown_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_brown_terracotta_tiles'}.png new file mode 100644 index 00000000..63c52efe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_brown_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_calcite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_calcite_bricks'}.png new file mode 100644 index 00000000..c53b370a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_calcite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_clay_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_clay_bricks'}.png new file mode 100644 index 00000000..92a026c0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_clay_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_coal_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_coal_block_bricks'}.png new file mode 100644 index 00000000..811eb56c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_coal_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_cobblestone_bricks'}.png new file mode 100644 index 00000000..c33930d1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_crying_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_crying_obsidian_bricks'}.png new file mode 100644 index 00000000..2494c6ec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_crying_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_cyan_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_cyan_stained_glass'}.png new file mode 100644 index 00000000..fb0df8d0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_cyan_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_cyan_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_cyan_terracotta_tiles'}.png new file mode 100644 index 00000000..d54b3d9a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_cyan_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_dark_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_dark_prismarine_bricks'}.png new file mode 100644 index 00000000..e8c7e17d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_dark_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_deepslate_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_deepslate_bricks'}.png new file mode 100644 index 00000000..725a77ab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_deepslate_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_diamond_leaded_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_diamond_leaded_glass'}.png new file mode 100644 index 00000000..46aec0fb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_diamond_leaded_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_diorite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_diorite_bricks'}.png new file mode 100644 index 00000000..702690f3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_diorite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_dirt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_dirt_bricks'}.png new file mode 100644 index 00000000..11e1c576 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_dirt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_dripstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_dripstone_block_bricks'}.png new file mode 100644 index 00000000..c6a4c7b6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_dripstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_end_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_end_stone_bricks'}.png new file mode 100644 index 00000000..81e0f467 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_end_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_gilded_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_gilded_blackstone_bricks'}.png new file mode 100644 index 00000000..e4b2426f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_gilded_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_granite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_granite_bricks'}.png new file mode 100644 index 00000000..b8501dcb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_granite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_gray_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_gray_stained_glass'}.png new file mode 100644 index 00000000..e8caee07 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_gray_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_gray_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_gray_terracotta_tiles'}.png new file mode 100644 index 00000000..c1d66dc4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_gray_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_green_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_green_stained_glass'}.png new file mode 100644 index 00000000..d5551d1f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_green_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_green_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_green_terracotta_tiles'}.png new file mode 100644 index 00000000..ec6472fa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_green_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_ice_bricks'}.png new file mode 100644 index 00000000..d3d231f7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_lapis_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_lapis_block_bricks'}.png new file mode 100644 index 00000000..a84c352a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_lapis_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_light_blue_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_light_blue_stained_glass'}.png new file mode 100644 index 00000000..ed24c828 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_light_blue_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_light_blue_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_light_blue_terracotta_tiles'}.png new file mode 100644 index 00000000..4cd3ccd2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_light_blue_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_light_gray_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_light_gray_stained_glass'}.png new file mode 100644 index 00000000..3738d23a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_light_gray_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_light_gray_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_light_gray_terracotta_tiles'}.png new file mode 100644 index 00000000..7281afe2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_light_gray_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_lime_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_lime_stained_glass'}.png new file mode 100644 index 00000000..2b9e4b1a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_lime_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_lime_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_lime_terracotta_tiles'}.png new file mode 100644 index 00000000..8f041fab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_lime_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_lodestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_lodestone_bricks'}.png new file mode 100644 index 00000000..3a1eeb7d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_lodestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_magenta_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_magenta_stained_glass'}.png new file mode 100644 index 00000000..3c6fcd86 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_magenta_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_magenta_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_magenta_terracotta_tiles'}.png new file mode 100644 index 00000000..9d17f89c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_magenta_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_magma_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_magma_block_bricks'}.png new file mode 100644 index 00000000..31b24d6c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_magma_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_mossy_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_mossy_cobblestone_bricks'}.png new file mode 100644 index 00000000..89192ecb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_mossy_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_mossy_stone_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_mossy_stone_bricks_bricks'}.png new file mode 100644 index 00000000..80ca487f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_mossy_stone_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_mud_bricks'}.png new file mode 100644 index 00000000..45f32cc7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_mud_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_mud_bricks_bricks'}.png new file mode 100644 index 00000000..cb4e229a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_mud_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_nether_bricks_bricks'}.png new file mode 100644 index 00000000..29dfab06 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_netherrack_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_netherrack_bricks'}.png new file mode 100644 index 00000000..d43043f1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_netherrack_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_obsidian_bricks'}.png new file mode 100644 index 00000000..313227c1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_orange_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_orange_stained_glass'}.png new file mode 100644 index 00000000..281a2f7a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_orange_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_orange_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_orange_terracotta_tiles'}.png new file mode 100644 index 00000000..d297c119 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_orange_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_packed_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_packed_ice_bricks'}.png new file mode 100644 index 00000000..33bb6c91 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_packed_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_packed_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_packed_mud_bricks'}.png new file mode 100644 index 00000000..9bc09504 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_packed_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_pink_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_pink_stained_glass'}.png new file mode 100644 index 00000000..fa21aef3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_pink_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_pink_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_pink_terracotta_tiles'}.png new file mode 100644 index 00000000..6d230403 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_pink_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_prismarine_bricks'}.png new file mode 100644 index 00000000..41a6f599 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_purple_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_purple_stained_glass'}.png new file mode 100644 index 00000000..40749988 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_purple_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_purple_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_purple_terracotta_tiles'}.png new file mode 100644 index 00000000..f33dc88f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_purple_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_purpur_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_purpur_block_bricks'}.png new file mode 100644 index 00000000..7c658c93 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_purpur_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_quartz_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_quartz_block_bricks'}.png new file mode 100644 index 00000000..eeb2e647 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_quartz_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_raw_copper_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_raw_copper_block_bricks'}.png new file mode 100644 index 00000000..8983dce2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_raw_copper_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_raw_gold_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_raw_gold_block_bricks'}.png new file mode 100644 index 00000000..e4061b44 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_raw_gold_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_raw_iron_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_raw_iron_block_bricks'}.png new file mode 100644 index 00000000..17ae357b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_raw_iron_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_red_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_red_nether_bricks_bricks'}.png new file mode 100644 index 00000000..e320c959 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_red_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_red_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_red_sandstone_bricks'}.png new file mode 100644 index 00000000..096caf42 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_red_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_red_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_red_stained_glass'}.png new file mode 100644 index 00000000..f3683a12 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_red_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_red_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_red_terracotta_tiles'}.png new file mode 100644 index 00000000..e0a00488 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_red_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_redstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_redstone_block_bricks'}.png new file mode 100644 index 00000000..bc0d1530 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_redstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_sandstone_bricks'}.png new file mode 100644 index 00000000..30e8417f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_smooth_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_smooth_stone_bricks'}.png new file mode 100644 index 00000000..0becef6c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_smooth_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_snow_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_snow_block_bricks'}.png new file mode 100644 index 00000000..c6840758 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_snow_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_stone_bricks'}.png new file mode 100644 index 00000000..5bef0e27 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_terracotta_tiles'}.png new file mode 100644 index 00000000..e69cecd2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_tuff_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_tuff_bricks'}.png new file mode 100644 index 00000000..2685ba4d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_tuff_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_white_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_white_stained_glass'}.png new file mode 100644 index 00000000..4c6dc011 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_white_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_white_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_white_terracotta_tiles'}.png new file mode 100644 index 00000000..833e9c3e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_white_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_yellow_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_yellow_stained_glass'}.png new file mode 100644 index 00000000..21cd6c21 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_yellow_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_yellow_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_yellow_terracotta_tiles'}.png new file mode 100644 index 00000000..ae82de2f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__small_yellow_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smiling_carved_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smiling_carved_pumpkin'}.png new file mode 100644 index 00000000..b621e299 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smiling_carved_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smiling_jack_o_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smiling_jack_o_lantern'}.png new file mode 100644 index 00000000..b621e299 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smiling_jack_o_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_acacia_planks'}.png new file mode 100644 index 00000000..6ca23e25 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_amethyst_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_amethyst_block_column'}.png new file mode 100644 index 00000000..182613b0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_amethyst_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ancient_debris_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ancient_debris_column'}.png new file mode 100644 index 00000000..92b0a080 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ancient_debris_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_andesite_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_andesite_column'}.png new file mode 100644 index 00000000..9e5c8099 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_andesite_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_bamboo_planks'}.png new file mode 100644 index 00000000..7afb7bd8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_basalt_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_basalt_column'}.png new file mode 100644 index 00000000..3a73ca2e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_basalt_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_birch_planks'}.png new file mode 100644 index 00000000..36a22531 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_black_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_black_concrete'}.png new file mode 100644 index 00000000..228f2f96 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_black_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_blackstone_bricks'}.png new file mode 100644 index 00000000..3cdbb351 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_blackstone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_blackstone_column'}.png new file mode 100644 index 00000000..39e13aa2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_blackstone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_blue_concrete'}.png new file mode 100644 index 00000000..fc2aa1f5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_blue_ice_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_blue_ice_column'}.png new file mode 100644 index 00000000..2f2061db Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_blue_ice_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_borderless_bricks_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_borderless_bricks_column'}.png new file mode 100644 index 00000000..f55a94ef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_borderless_bricks_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_bricks_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_bricks_column'}.png new file mode 100644 index 00000000..83a4fab7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_bricks_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_brown_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_brown_concrete'}.png new file mode 100644 index 00000000..1ef4a58b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_brown_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_brown_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_brown_mushroom_block'}.png new file mode 100644 index 00000000..7e72b535 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_brown_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_calcite_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_calcite_column'}.png new file mode 100644 index 00000000..95e66e1f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_calcite_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_cherry_planks'}.png new file mode 100644 index 00000000..2fb39d19 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_clay_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_clay_column'}.png new file mode 100644 index 00000000..54b13edf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_clay_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_coal_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_coal_block_column'}.png new file mode 100644 index 00000000..b68625f0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_coal_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_cobblestone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_cobblestone_column'}.png new file mode 100644 index 00000000..5c81db83 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_cobblestone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_crimson_planks'}.png new file mode 100644 index 00000000..2a2c76f3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_crimson_stem'}.png new file mode 100644 index 00000000..85478062 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_crying_obsidian_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_crying_obsidian_column'}.png new file mode 100644 index 00000000..ba53bef0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_crying_obsidian_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_cyan_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_cyan_concrete'}.png new file mode 100644 index 00000000..ee7b9c44 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_cyan_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_dark_oak_planks'}.png new file mode 100644 index 00000000..5363f7c8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_dark_prismarine_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_dark_prismarine_column'}.png new file mode 100644 index 00000000..473b99dc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_dark_prismarine_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_deepslate_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_deepslate_column'}.png new file mode 100644 index 00000000..1987c1eb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_deepslate_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_diorite_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_diorite_column'}.png new file mode 100644 index 00000000..4aa04d5e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_diorite_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_dirt_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_dirt_column'}.png new file mode 100644 index 00000000..209d4312 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_dirt_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_dripstone_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_dripstone_block_column'}.png new file mode 100644 index 00000000..596bfced Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_dripstone_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_end_stone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_end_stone_column'}.png new file mode 100644 index 00000000..04fbd60d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_end_stone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_gilded_blackstone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_gilded_blackstone_column'}.png new file mode 100644 index 00000000..4ad03a19 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_gilded_blackstone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_glowstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_glowstone'}.png new file mode 100644 index 00000000..7deb296b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_glowstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_granite_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_granite_column'}.png new file mode 100644 index 00000000..ba209e87 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_granite_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_gray_concrete'}.png new file mode 100644 index 00000000..15f55f27 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_green_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_green_concrete'}.png new file mode 100644 index 00000000..c1a968a0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_green_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ice_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ice_column'}.png new file mode 100644 index 00000000..7f0ee01b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ice_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_amethyst_block'}.png new file mode 100644 index 00000000..783764e6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_ancient_debris'}.png new file mode 100644 index 00000000..54559ecf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_andesite'}.png new file mode 100644 index 00000000..79a3d039 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_basalt'}.png new file mode 100644 index 00000000..c6b9fa5e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_blackstone'}.png new file mode 100644 index 00000000..a583fb35 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_blue_ice'}.png new file mode 100644 index 00000000..ca0b9b59 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_borderless_bricks'}.png new file mode 100644 index 00000000..9aa2ebaf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_bricks'}.png new file mode 100644 index 00000000..6f1ec275 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_calcite'}.png new file mode 100644 index 00000000..e3388919 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_clay'}.png new file mode 100644 index 00000000..91a83278 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_coal_block'}.png new file mode 100644 index 00000000..a2458ecd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_cobblestone'}.png new file mode 100644 index 00000000..f3035ee5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_crying_obsidian'}.png new file mode 100644 index 00000000..55d4f0f1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_dark_prismarine'}.png new file mode 100644 index 00000000..2765c778 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_deepslate'}.png new file mode 100644 index 00000000..281d5e00 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_diorite'}.png new file mode 100644 index 00000000..b0358a3c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_dirt'}.png new file mode 100644 index 00000000..dfb4aa93 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_dripstone_block'}.png new file mode 100644 index 00000000..d7d08c17 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_end_stone'}.png new file mode 100644 index 00000000..6958a5af Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_gilded_blackstone'}.png new file mode 100644 index 00000000..74b63535 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_granite'}.png new file mode 100644 index 00000000..a04f2d66 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_ice'}.png new file mode 100644 index 00000000..0b083a0e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_lapis_block'}.png new file mode 100644 index 00000000..e60a86ba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_magma_block'}.png new file mode 100644 index 00000000..61d706dd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_mossy_cobblestone'}.png new file mode 100644 index 00000000..5dacfc28 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_mossy_stone_bricks'}.png new file mode 100644 index 00000000..302bd4be Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_nether_bricks'}.png new file mode 100644 index 00000000..a90e9aed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_netherrack'}.png new file mode 100644 index 00000000..8200e017 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_obsidian'}.png new file mode 100644 index 00000000..3b23fa77 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_packed_ice'}.png new file mode 100644 index 00000000..203f3fa0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_prismarine'}.png new file mode 100644 index 00000000..a971201a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_purpur_block'}.png new file mode 100644 index 00000000..b6dfd369 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_quartz_block'}.png new file mode 100644 index 00000000..e1c8a3ff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_raw_copper_block'}.png new file mode 100644 index 00000000..985a194e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_raw_gold_block'}.png new file mode 100644 index 00000000..1f82e4ab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_raw_iron_block'}.png new file mode 100644 index 00000000..e0fe44e4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_red_nether_bricks'}.png new file mode 100644 index 00000000..d257462b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_red_sandstone'}.png new file mode 100644 index 00000000..0e12ede2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_redstone_block'}.png new file mode 100644 index 00000000..7ff2086d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_sandstone'}.png new file mode 100644 index 00000000..4ab676ab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_smooth_stone'}.png new file mode 100644 index 00000000..54b7f832 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_snow_block'}.png new file mode 100644 index 00000000..b3903811 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_stone'}.png new file mode 100644 index 00000000..576055d0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_tuff'}.png new file mode 100644 index 00000000..dd910626 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_inlayed_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_jungle_planks'}.png new file mode 100644 index 00000000..c0f888d3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_lapis_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_lapis_block_column'}.png new file mode 100644 index 00000000..01c875ad Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_lapis_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_light_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_light_blue_concrete'}.png new file mode 100644 index 00000000..97009431 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_light_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_light_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_light_gray_concrete'}.png new file mode 100644 index 00000000..8996c26b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_light_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_lime_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_lime_concrete'}.png new file mode 100644 index 00000000..4db33233 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_lime_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_lodestone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_lodestone_column'}.png new file mode 100644 index 00000000..81bd31e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_lodestone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_magenta_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_magenta_concrete'}.png new file mode 100644 index 00000000..e1bfd8aa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_magenta_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_magma_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_magma_block_column'}.png new file mode 100644 index 00000000..863f01a7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_magma_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_mangrove_planks'}.png new file mode 100644 index 00000000..324caf03 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_moss_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_moss_block'}.png new file mode 100644 index 00000000..aac63a5d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_moss_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_mossy_cobblestone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_mossy_cobblestone_column'}.png new file mode 100644 index 00000000..8a217f41 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_mossy_cobblestone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_mossy_stone_bricks_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_mossy_stone_bricks_column'}.png new file mode 100644 index 00000000..9d047f64 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_mossy_stone_bricks_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_mud'}.png new file mode 100644 index 00000000..0b727896 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_mud_bricks'}.png new file mode 100644 index 00000000..691643cc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_mushroom_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_mushroom_stem'}.png new file mode 100644 index 00000000..05936737 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_mushroom_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_nether_bricks_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_nether_bricks_column'}.png new file mode 100644 index 00000000..0c61a4c6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_nether_bricks_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_netherrack_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_netherrack_column'}.png new file mode 100644 index 00000000..b85af342 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_netherrack_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_oak_planks'}.png new file mode 100644 index 00000000..8a3acfda Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_obsidian_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_obsidian_column'}.png new file mode 100644 index 00000000..91c5913c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_obsidian_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_orange_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_orange_concrete'}.png new file mode 100644 index 00000000..a2b7e8bd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_orange_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_packed_ice_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_packed_ice_column'}.png new file mode 100644 index 00000000..58852c29 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_packed_ice_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_packed_mud'}.png new file mode 100644 index 00000000..e28c778a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_pink_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_pink_concrete'}.png new file mode 100644 index 00000000..74d3967a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_pink_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_prismarine_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_prismarine_column'}.png new file mode 100644 index 00000000..2c43bd18 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_prismarine_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_purple_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_purple_concrete'}.png new file mode 100644 index 00000000..8b43a887 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_purple_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_purpur_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_purpur_block_column'}.png new file mode 100644 index 00000000..3cedb07f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_purpur_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_quartz_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_quartz_block_column'}.png new file mode 100644 index 00000000..280ed28c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_quartz_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_raw_copper_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_raw_copper_block_column'}.png new file mode 100644 index 00000000..0d47281c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_raw_copper_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_raw_gold_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_raw_gold_block_column'}.png new file mode 100644 index 00000000..c2794b72 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_raw_gold_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_raw_iron_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_raw_iron_block_column'}.png new file mode 100644 index 00000000..2092a13f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_raw_iron_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_red_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_red_concrete'}.png new file mode 100644 index 00000000..93a67ef8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_red_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_red_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_red_mushroom_block'}.png new file mode 100644 index 00000000..c64fc20f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_red_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_red_nether_bricks_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_red_nether_bricks_column'}.png new file mode 100644 index 00000000..af7709c3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_red_nether_bricks_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_red_sandstone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_red_sandstone_column'}.png new file mode 100644 index 00000000..cfdc96ed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_red_sandstone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_redstone_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_redstone_block_column'}.png new file mode 100644 index 00000000..254d396a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_redstone_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_redstone_lamp'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_redstone_lamp'}.png new file mode 100644 index 00000000..f3272539 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_redstone_lamp'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_amethyst_block'}.png new file mode 100644 index 00000000..6ef33a41 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_ancient_debris'}.png new file mode 100644 index 00000000..ad1c3b8c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_andesite'}.png new file mode 100644 index 00000000..b45279c1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_basalt'}.png new file mode 100644 index 00000000..cbd4d0d1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_blackstone'}.png new file mode 100644 index 00000000..931a6dd4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_blue_ice'}.png new file mode 100644 index 00000000..d03cc3a8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_borderless_bricks'}.png new file mode 100644 index 00000000..b59f74d1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_bricks'}.png new file mode 100644 index 00000000..df0ef9e8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_calcite'}.png new file mode 100644 index 00000000..828d3d3d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_clay'}.png new file mode 100644 index 00000000..451a3c05 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_coal_block'}.png new file mode 100644 index 00000000..425ecbe3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_cobblestone'}.png new file mode 100644 index 00000000..aec7845e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_crying_obsidian'}.png new file mode 100644 index 00000000..a0b1ab49 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_dark_prismarine'}.png new file mode 100644 index 00000000..b927d637 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_deepslate'}.png new file mode 100644 index 00000000..435f6eac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_diorite'}.png new file mode 100644 index 00000000..51c8b969 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_dirt'}.png new file mode 100644 index 00000000..a63c2858 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_dripstone_block'}.png new file mode 100644 index 00000000..947e0010 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_end_stone'}.png new file mode 100644 index 00000000..5ede3eb2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_gilded_blackstone'}.png new file mode 100644 index 00000000..9b047745 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_granite'}.png new file mode 100644 index 00000000..6a737171 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_ice'}.png new file mode 100644 index 00000000..98e3fc57 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_lapis_block'}.png new file mode 100644 index 00000000..af695b97 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_lodestone'}.png new file mode 100644 index 00000000..fd5cd147 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_magma_block'}.png new file mode 100644 index 00000000..0f40a18d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_mossy_cobblestone'}.png new file mode 100644 index 00000000..19049745 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_mossy_stone_bricks'}.png new file mode 100644 index 00000000..78f443c6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_mud'}.png new file mode 100644 index 00000000..95d1957c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_mud_bricks'}.png new file mode 100644 index 00000000..5d3c9473 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_nether_bricks'}.png new file mode 100644 index 00000000..341fc33a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_netherrack'}.png new file mode 100644 index 00000000..0bfb9576 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_obsidian'}.png new file mode 100644 index 00000000..891d81aa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_packed_ice'}.png new file mode 100644 index 00000000..8aa53d70 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_packed_mud'}.png new file mode 100644 index 00000000..709f527a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_prismarine'}.png new file mode 100644 index 00000000..6c44a4ae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_purpur_block'}.png new file mode 100644 index 00000000..fedde3b5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_quartz_block'}.png new file mode 100644 index 00000000..59090528 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_raw_copper_block'}.png new file mode 100644 index 00000000..9d2c9386 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_raw_gold_block'}.png new file mode 100644 index 00000000..d717b061 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_raw_iron_block'}.png new file mode 100644 index 00000000..f5226664 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_red_nether_bricks'}.png new file mode 100644 index 00000000..89b8e379 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_red_sandstone'}.png new file mode 100644 index 00000000..eddedd9c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_redstone_block'}.png new file mode 100644 index 00000000..67258960 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_sandstone'}.png new file mode 100644 index 00000000..48912812 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_smooth_stone'}.png new file mode 100644 index 00000000..6be758ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_snow_block'}.png new file mode 100644 index 00000000..8d87d7d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_tuff'}.png new file mode 100644 index 00000000..eb8e3875 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_ringed_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_sandstone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_sandstone_column'}.png new file mode 100644 index 00000000..d5590d4d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_sandstone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_sea_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_sea_lantern'}.png new file mode 100644 index 00000000..a5e55f2f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_sea_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_shroomlight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_shroomlight'}.png new file mode 100644 index 00000000..73225215 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_shroomlight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_smooth_stone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_smooth_stone_column'}.png new file mode 100644 index 00000000..090ddb2b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_smooth_stone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_snow_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_snow_block_column'}.png new file mode 100644 index 00000000..48ae6f18 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_snow_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_sponge'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_sponge'}.png new file mode 100644 index 00000000..e0ce9f36 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_sponge'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_spruce_planks'}.png new file mode 100644 index 00000000..6f387ce1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_stone_bricks'}.png new file mode 100644 index 00000000..aefcb5ed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_stone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_stone_column'}.png new file mode 100644 index 00000000..83ff1f6a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_stone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_stone_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_stone_mini_tiles'}.png new file mode 100644 index 00000000..bc26a7e3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_stone_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_stone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_stone_pillar'}.png new file mode 100644 index 00000000..ceff4236 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_stone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_stone_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_stone_pillar_top'}.png new file mode 100644 index 00000000..cb3bfa5e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_stone_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_stone_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_stone_scales'}.png new file mode 100644 index 00000000..f6ad67ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_stone_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_tuff_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_tuff_column'}.png new file mode 100644 index 00000000..5ec091a9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_tuff_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_warped_planks'}.png new file mode 100644 index 00000000..06a46ef5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_warped_stem'}.png new file mode 100644 index 00000000..9d1c8656 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_white_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_white_concrete'}.png new file mode 100644 index 00000000..9b509ab2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_white_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_white_redstone_lamp'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_white_redstone_lamp'}.png new file mode 100644 index 00000000..65a881f2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_white_redstone_lamp'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_yellow_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_yellow_concrete'}.png new file mode 100644 index 00000000..5538859f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smooth_yellow_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_amethyst_block'}.png new file mode 100644 index 00000000..051c1001 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_ancient_debris'}.png new file mode 100644 index 00000000..88d58db0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_andesite'}.png new file mode 100644 index 00000000..5f5f2200 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_basalt'}.png new file mode 100644 index 00000000..706c7916 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_blackstone'}.png new file mode 100644 index 00000000..a4f23775 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_blue_ice'}.png new file mode 100644 index 00000000..ce7c036e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_borderless_bricks'}.png new file mode 100644 index 00000000..3e0c090c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_bricks'}.png new file mode 100644 index 00000000..f70b0d0c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_calcite'}.png new file mode 100644 index 00000000..84c2ced7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_clay'}.png new file mode 100644 index 00000000..f2997d3e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_coal_block'}.png new file mode 100644 index 00000000..430527d9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_cobblestone'}.png new file mode 100644 index 00000000..61f3de39 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_crying_obsidian'}.png new file mode 100644 index 00000000..edbd88e4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_dark_prismarine'}.png new file mode 100644 index 00000000..b48d8394 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_deepslate'}.png new file mode 100644 index 00000000..c4ad8310 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_diorite'}.png new file mode 100644 index 00000000..087a2cef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_dirt'}.png new file mode 100644 index 00000000..aae7ce42 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_dripstone_block'}.png new file mode 100644 index 00000000..c48193b2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_end_stone'}.png new file mode 100644 index 00000000..dd460957 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_gilded_blackstone'}.png new file mode 100644 index 00000000..2eaca177 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_granite'}.png new file mode 100644 index 00000000..7f508e0c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_ice'}.png new file mode 100644 index 00000000..6c202cf1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_lapis_block'}.png new file mode 100644 index 00000000..3fd786df Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_lodestone'}.png new file mode 100644 index 00000000..b26e0a22 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_magma_block'}.png new file mode 100644 index 00000000..c29b1085 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_mossy_cobblestone'}.png new file mode 100644 index 00000000..cd142139 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_mossy_stone_bricks'}.png new file mode 100644 index 00000000..5996392a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_mud'}.png new file mode 100644 index 00000000..499b0824 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_mud_bricks'}.png new file mode 100644 index 00000000..f4e6700a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_nether_bricks'}.png new file mode 100644 index 00000000..c26c3876 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_netherrack'}.png new file mode 100644 index 00000000..5011f48b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_obsidian'}.png new file mode 100644 index 00000000..448fa5fd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_packed_ice'}.png new file mode 100644 index 00000000..29d7d003 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_packed_mud'}.png new file mode 100644 index 00000000..7f1a9ba4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_prismarine'}.png new file mode 100644 index 00000000..f990b487 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_purpur_block'}.png new file mode 100644 index 00000000..56f9f848 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_quartz_block'}.png new file mode 100644 index 00000000..1b5ab276 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_raw_copper_block'}.png new file mode 100644 index 00000000..4107f116 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_raw_gold_block'}.png new file mode 100644 index 00000000..e3b0b1d9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_raw_iron_block'}.png new file mode 100644 index 00000000..e416faa5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_red_nether_bricks'}.png new file mode 100644 index 00000000..7c45ec99 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_red_sandstone'}.png new file mode 100644 index 00000000..ea7580af Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_redstone_block'}.png new file mode 100644 index 00000000..963d7cb4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_sandstone'}.png new file mode 100644 index 00000000..3fbc43e6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_smooth_stone'}.png new file mode 100644 index 00000000..e82092a8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_snow_block'}.png new file mode 100644 index 00000000..e49c1e3f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_stone'}.png new file mode 100644 index 00000000..a647bf35 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_tuff'}.png new file mode 100644 index 00000000..dec9024f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__smoothed_double_inlayed_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__snow_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__snow_block_bricks'}.png new file mode 100644 index 00000000..56b28415 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__snow_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__snow_block_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__snow_block_mini_tiles'}.png new file mode 100644 index 00000000..281701a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__snow_block_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__snow_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__snow_block_pillar'}.png new file mode 100644 index 00000000..2f588991 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__snow_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__snow_block_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__snow_block_pillar_top'}.png new file mode 100644 index 00000000..19fcac8c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__snow_block_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__snow_block_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__snow_block_scales'}.png new file mode 100644 index 00000000..a41a4d5b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__snow_block_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_black_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_black_wool'}.png new file mode 100644 index 00000000..e8c526ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_black_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_blue_wool'}.png new file mode 100644 index 00000000..2bab7295 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_brown_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_brown_wool'}.png new file mode 100644 index 00000000..507229b8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_brown_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_cyan_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_cyan_wool'}.png new file mode 100644 index 00000000..1e8be1ed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_cyan_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_gray_wool'}.png new file mode 100644 index 00000000..9b324741 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_green_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_green_wool'}.png new file mode 100644 index 00000000..db8a0435 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_green_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_light_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_light_blue_wool'}.png new file mode 100644 index 00000000..2dd6c6ff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_light_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_light_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_light_gray_wool'}.png new file mode 100644 index 00000000..6569d4ce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_light_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_lime_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_lime_wool'}.png new file mode 100644 index 00000000..34c901ed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_lime_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_magenta_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_magenta_wool'}.png new file mode 100644 index 00000000..fc02a3db Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_magenta_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_orange_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_orange_wool'}.png new file mode 100644 index 00000000..a6d5e2f1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_orange_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_pink_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_pink_wool'}.png new file mode 100644 index 00000000..b2c99c69 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_pink_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_purple_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_purple_wool'}.png new file mode 100644 index 00000000..24c8c4fa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_purple_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_red_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_red_wool'}.png new file mode 100644 index 00000000..6678b8bf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_red_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_sand'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_sand'}.png new file mode 100644 index 00000000..07cd83e0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_sand'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_sponge'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_sponge'}.png new file mode 100644 index 00000000..123e17b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_sponge'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_white_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_white_wool'}.png new file mode 100644 index 00000000..ab116641 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_white_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_yellow_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_yellow_wool'}.png new file mode 100644 index 00000000..b507d32c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__soft_yellow_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__special_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__special_gilded_blackstone'}.png new file mode 100644 index 00000000..94bdd4d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__special_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__special_sea_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__special_sea_lantern'}.png new file mode 100644 index 00000000..0e84706d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__special_sea_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__speckled_nether_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__speckled_nether_wart_block'}.png new file mode 100644 index 00000000..e6e7cde2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__speckled_nether_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__speckled_warped_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__speckled_warped_wart_block'}.png new file mode 100644 index 00000000..438f425c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__speckled_warped_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_amethyst_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_amethyst_block_carving'}.png new file mode 100644 index 00000000..dad78df9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_amethyst_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_ancient_debris_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_ancient_debris_carving'}.png new file mode 100644 index 00000000..f4d0472a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_ancient_debris_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_andesite_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_andesite_carving'}.png new file mode 100644 index 00000000..609c1b50 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_andesite_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_basalt_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_basalt_carving'}.png new file mode 100644 index 00000000..906ac284 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_basalt_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_blackstone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_blackstone_carving'}.png new file mode 100644 index 00000000..e0d57132 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_blackstone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_blue_ice_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_blue_ice_carving'}.png new file mode 100644 index 00000000..5a2c8c92 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_blue_ice_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_borderless_bricks_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_borderless_bricks_carving'}.png new file mode 100644 index 00000000..7d3e492d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_borderless_bricks_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_bricks_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_bricks_carving'}.png new file mode 100644 index 00000000..cb69f0ab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_bricks_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_calcite_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_calcite_carving'}.png new file mode 100644 index 00000000..c15268a5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_calcite_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_clay_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_clay_carving'}.png new file mode 100644 index 00000000..8e02ae26 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_clay_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_coal_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_coal_block_carving'}.png new file mode 100644 index 00000000..ced13e25 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_coal_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_cobblestone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_cobblestone_carving'}.png new file mode 100644 index 00000000..86fcae4f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_cobblestone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_crying_obsidian_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_crying_obsidian_carving'}.png new file mode 100644 index 00000000..271c521d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_crying_obsidian_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_dark_prismarine_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_dark_prismarine_carving'}.png new file mode 100644 index 00000000..67b0b7ff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_dark_prismarine_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_deepslate_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_deepslate_carving'}.png new file mode 100644 index 00000000..0d4eb51a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_deepslate_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_diorite_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_diorite_carving'}.png new file mode 100644 index 00000000..a6b08873 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_diorite_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_dirt_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_dirt_carving'}.png new file mode 100644 index 00000000..b1e3bc23 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_dirt_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_dripstone_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_dripstone_block_carving'}.png new file mode 100644 index 00000000..1999dab8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_dripstone_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_end_stone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_end_stone_carving'}.png new file mode 100644 index 00000000..e9ab9e14 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_end_stone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_gilded_blackstone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_gilded_blackstone_carving'}.png new file mode 100644 index 00000000..6262dcf6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_gilded_blackstone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_granite_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_granite_carving'}.png new file mode 100644 index 00000000..f944fc56 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_granite_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_ice_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_ice_carving'}.png new file mode 100644 index 00000000..0b8a6d49 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_ice_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_lapis_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_lapis_block_carving'}.png new file mode 100644 index 00000000..fa3a7294 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_lapis_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_lodestone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_lodestone_carving'}.png new file mode 100644 index 00000000..a1f3a66d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_lodestone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_magma_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_magma_block_carving'}.png new file mode 100644 index 00000000..051c3369 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_magma_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_mossy_cobblestone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_mossy_cobblestone_carving'}.png new file mode 100644 index 00000000..80852e35 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_mossy_cobblestone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_mossy_stone_bricks_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_mossy_stone_bricks_carving'}.png new file mode 100644 index 00000000..178d05b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_mossy_stone_bricks_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_mud_bricks_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_mud_bricks_carving'}.png new file mode 100644 index 00000000..12ba4519 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_mud_bricks_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_mud_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_mud_carving'}.png new file mode 100644 index 00000000..b919a904 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_mud_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_nether_bricks_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_nether_bricks_carving'}.png new file mode 100644 index 00000000..9f0007b3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_nether_bricks_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_netherrack_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_netherrack_carving'}.png new file mode 100644 index 00000000..b38942c2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_netherrack_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_obsidian_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_obsidian_carving'}.png new file mode 100644 index 00000000..63d3c786 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_obsidian_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_packed_ice_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_packed_ice_carving'}.png new file mode 100644 index 00000000..d7ceab7f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_packed_ice_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_packed_mud_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_packed_mud_carving'}.png new file mode 100644 index 00000000..4d792b94 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_packed_mud_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_prismarine_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_prismarine_carving'}.png new file mode 100644 index 00000000..a5c643db Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_prismarine_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_purpur_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_purpur_block_carving'}.png new file mode 100644 index 00000000..c644313f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_purpur_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_quartz_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_quartz_block_carving'}.png new file mode 100644 index 00000000..459e0894 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_quartz_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_raw_copper_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_raw_copper_block_carving'}.png new file mode 100644 index 00000000..d2368b77 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_raw_copper_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_raw_gold_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_raw_gold_block_carving'}.png new file mode 100644 index 00000000..e0e63a86 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_raw_gold_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_raw_iron_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_raw_iron_block_carving'}.png new file mode 100644 index 00000000..4b793584 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_raw_iron_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_red_nether_bricks_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_red_nether_bricks_carving'}.png new file mode 100644 index 00000000..d7e6ee3e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_red_nether_bricks_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_red_sandstone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_red_sandstone_carving'}.png new file mode 100644 index 00000000..69811b09 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_red_sandstone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_redstone_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_redstone_block_carving'}.png new file mode 100644 index 00000000..8152db4b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_redstone_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_sandstone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_sandstone_carving'}.png new file mode 100644 index 00000000..c72f3fb0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_sandstone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_smooth_stone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_smooth_stone_carving'}.png new file mode 100644 index 00000000..9d994199 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_smooth_stone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_snow_block_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_snow_block_carving'}.png new file mode 100644 index 00000000..3153fd67 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_snow_block_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_stone_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_stone_carving'}.png new file mode 100644 index 00000000..6c502ed8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_stone_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_tuff_carving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_tuff_carving'}.png new file mode 100644 index 00000000..45f755c1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spider_tuff_carving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiral_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiral_gilded_blackstone'}.png new file mode 100644 index 00000000..817d5a87 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiral_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiral_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiral_mud'}.png new file mode 100644 index 00000000..56d8f82b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiral_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiral_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiral_mud_bricks'}.png new file mode 100644 index 00000000..77adefd5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiral_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiral_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiral_packed_mud'}.png new file mode 100644 index 00000000..7d6d887c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiral_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_amethyst_block'}.png new file mode 100644 index 00000000..c54500cc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_ancient_debris'}.png new file mode 100644 index 00000000..7d9080c3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_andesite'}.png new file mode 100644 index 00000000..5a806952 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_basalt'}.png new file mode 100644 index 00000000..4aa9dedb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_blackstone'}.png new file mode 100644 index 00000000..45a923b5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_blue_ice'}.png new file mode 100644 index 00000000..763cd0f0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_borderless_bricks'}.png new file mode 100644 index 00000000..b6248de5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_bricks'}.png new file mode 100644 index 00000000..51fcc924 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_calcite'}.png new file mode 100644 index 00000000..d0768099 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_clay'}.png new file mode 100644 index 00000000..32544996 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_coal_block'}.png new file mode 100644 index 00000000..8b2bf065 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_cobblestone'}.png new file mode 100644 index 00000000..8b1d53a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_crying_obsidian'}.png new file mode 100644 index 00000000..4a8d9854 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_dark_prismarine'}.png new file mode 100644 index 00000000..e0b78a59 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_deepslate'}.png new file mode 100644 index 00000000..4b280bfe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_diorite'}.png new file mode 100644 index 00000000..4a31f329 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_dirt'}.png new file mode 100644 index 00000000..5c019036 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_dripstone_block'}.png new file mode 100644 index 00000000..60cf4513 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_end_stone'}.png new file mode 100644 index 00000000..4c3e5a0a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_gilded_blackstone'}.png new file mode 100644 index 00000000..18126051 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_granite'}.png new file mode 100644 index 00000000..2fd050b3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_ice'}.png new file mode 100644 index 00000000..8d53c858 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_lapis_block'}.png new file mode 100644 index 00000000..6e8b6654 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_lodestone'}.png new file mode 100644 index 00000000..846956f3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_magma_block'}.png new file mode 100644 index 00000000..d4322e05 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_mossy_cobblestone'}.png new file mode 100644 index 00000000..32f69822 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_mossy_stone_bricks'}.png new file mode 100644 index 00000000..30a764d9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_nether_bricks'}.png new file mode 100644 index 00000000..8cefc52c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_netherrack'}.png new file mode 100644 index 00000000..40cc6b74 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_obsidian'}.png new file mode 100644 index 00000000..4c9caa20 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_packed_ice'}.png new file mode 100644 index 00000000..fd98a9d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_prismarine'}.png new file mode 100644 index 00000000..f7459513 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_purpur_block'}.png new file mode 100644 index 00000000..6139730c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_raw_copper_block'}.png new file mode 100644 index 00000000..6cc68c5b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_raw_gold_block'}.png new file mode 100644 index 00000000..aac1de29 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_raw_iron_block'}.png new file mode 100644 index 00000000..ddd951b0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_red_nether_bricks'}.png new file mode 100644 index 00000000..c0284fba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_red_sandstone'}.png new file mode 100644 index 00000000..ba1f53f1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_redstone_block'}.png new file mode 100644 index 00000000..5f4930bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_sandstone'}.png new file mode 100644 index 00000000..ad4fc793 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_smooth_stone'}.png new file mode 100644 index 00000000..a60b057b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_snow_block'}.png new file mode 100644 index 00000000..1521c499 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_stone'}.png new file mode 100644 index 00000000..18008b67 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_tuff'}.png new file mode 100644 index 00000000..97b549da Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spiraled_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spongy_moss_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spongy_moss_block'}.png new file mode 100644 index 00000000..45edfce5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spongy_moss_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spongy_nether_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spongy_nether_wart_block'}.png new file mode 100644 index 00000000..93821a30 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spongy_nether_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spongy_warped_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spongy_warped_wart_block'}.png new file mode 100644 index 00000000..e2c6a8cf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spongy_warped_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spooky_carved_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spooky_carved_pumpkin'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spooky_carved_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spooky_jack_o_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spooky_jack_o_lantern'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spooky_jack_o_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spotted_brown_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spotted_brown_mushroom_block'}.png new file mode 100644 index 00000000..6f146ef9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spotted_brown_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spotted_red_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spotted_red_mushroom_block'}.png new file mode 100644 index 00000000..c3cb50de Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spotted_red_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sprinkled_brown_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sprinkled_brown_mushroom_block'}.png new file mode 100644 index 00000000..f65a7681 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sprinkled_brown_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sprinkled_moss_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sprinkled_moss_block'}.png new file mode 100644 index 00000000..017f1012 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sprinkled_moss_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spruce_planks_mosaic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spruce_planks_mosaic'}.png new file mode 100644 index 00000000..494a64a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spruce_planks_mosaic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spruce_planks_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spruce_planks_panel'}.png new file mode 100644 index 00000000..f01885ae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spruce_planks_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spruce_planks_shavings'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spruce_planks_shavings'}.png new file mode 100644 index 00000000..ef32d325 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__spruce_planks_shavings'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_black_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_black_stained_glass'}.png new file mode 100644 index 00000000..d854904b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_black_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_blue_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_blue_stained_glass'}.png new file mode 100644 index 00000000..3364ac94 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_blue_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_brown_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_brown_stained_glass'}.png new file mode 100644 index 00000000..5b50cd6b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_brown_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_cyan_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_cyan_stained_glass'}.png new file mode 100644 index 00000000..3a719664 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_cyan_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_gray_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_gray_stained_glass'}.png new file mode 100644 index 00000000..d94b483d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_gray_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_green_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_green_stained_glass'}.png new file mode 100644 index 00000000..5b0c99c2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_green_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_leaded_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_leaded_glass'}.png new file mode 100644 index 00000000..88868884 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_leaded_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_light_blue_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_light_blue_stained_glass'}.png new file mode 100644 index 00000000..5a585da9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_light_blue_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_light_gray_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_light_gray_stained_glass'}.png new file mode 100644 index 00000000..909e39c7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_light_gray_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_lime_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_lime_stained_glass'}.png new file mode 100644 index 00000000..1bf0078c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_lime_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_magenta_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_magenta_stained_glass'}.png new file mode 100644 index 00000000..a72de1ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_magenta_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_oak_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_oak_glass'}.png new file mode 100644 index 00000000..c7a6d5ab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_oak_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_orange_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_orange_stained_glass'}.png new file mode 100644 index 00000000..a28acea5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_orange_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_pink_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_pink_stained_glass'}.png new file mode 100644 index 00000000..04d0008c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_pink_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_purple_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_purple_stained_glass'}.png new file mode 100644 index 00000000..526cc2bf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_purple_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_red_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_red_stained_glass'}.png new file mode 100644 index 00000000..6157c531 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_red_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_white_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_white_stained_glass'}.png new file mode 100644 index 00000000..b139624f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_white_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_yellow_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_yellow_stained_glass'}.png new file mode 100644 index 00000000..9248223e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__square_yellow_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__squished_cute_carved_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__squished_cute_carved_pumpkin'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__squished_cute_carved_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__squished_cute_jack_o_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__squished_cute_jack_o_lantern'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__squished_cute_jack_o_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_acacia_planks'}.png new file mode 100644 index 00000000..2fd7e9c1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_amethyst_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_amethyst_block_bricks'}.png new file mode 100644 index 00000000..5ae50092 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_amethyst_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_ancient_debris_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_ancient_debris_bricks'}.png new file mode 100644 index 00000000..f4a148e0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_ancient_debris_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_andesite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_andesite_bricks'}.png new file mode 100644 index 00000000..3d64dc71 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_andesite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_bamboo_planks'}.png new file mode 100644 index 00000000..0da6b3f1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_basalt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_basalt_bricks'}.png new file mode 100644 index 00000000..337be3b6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_basalt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_birch_planks'}.png new file mode 100644 index 00000000..b93bde18 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_black_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_black_concrete'}.png new file mode 100644 index 00000000..62e91163 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_black_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_blackstone_bricks'}.png new file mode 100644 index 00000000..bf1cf05a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_blue_concrete'}.png new file mode 100644 index 00000000..2b49475f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_blue_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_blue_ice_bricks'}.png new file mode 100644 index 00000000..da5b43ba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_blue_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_borderless_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_borderless_bricks_bricks'}.png new file mode 100644 index 00000000..e5766ecc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_borderless_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_bricks_bricks'}.png new file mode 100644 index 00000000..0c9dc665 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_brown_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_brown_concrete'}.png new file mode 100644 index 00000000..bb683daf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_brown_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_calcite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_calcite_bricks'}.png new file mode 100644 index 00000000..30ae2246 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_calcite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_cherry_planks'}.png new file mode 100644 index 00000000..04da0d76 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_clay_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_clay_bricks'}.png new file mode 100644 index 00000000..04b0dc87 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_clay_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_coal_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_coal_block_bricks'}.png new file mode 100644 index 00000000..911aca5e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_coal_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_cobblestone_bricks'}.png new file mode 100644 index 00000000..a33b6cc3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_crimson_planks'}.png new file mode 100644 index 00000000..ad6d987d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_crying_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_crying_obsidian_bricks'}.png new file mode 100644 index 00000000..94a18bff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_crying_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_cyan_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_cyan_concrete'}.png new file mode 100644 index 00000000..a5a4e6e8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_cyan_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_dark_oak_planks'}.png new file mode 100644 index 00000000..edd5a78c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_dark_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_dark_prismarine_bricks'}.png new file mode 100644 index 00000000..ceaa15c6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_dark_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_deepslate_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_deepslate_bricks'}.png new file mode 100644 index 00000000..74988bf3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_deepslate_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_diamond_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_diamond_block'}.png new file mode 100644 index 00000000..ccc9c789 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_diamond_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_diorite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_diorite_bricks'}.png new file mode 100644 index 00000000..525f7629 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_diorite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_dirt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_dirt_bricks'}.png new file mode 100644 index 00000000..58dff9c7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_dirt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_dripstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_dripstone_block_bricks'}.png new file mode 100644 index 00000000..3a38fbfe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_dripstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_emerald_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_emerald_block'}.png new file mode 100644 index 00000000..ccbbdadf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_emerald_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_end_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_end_stone_bricks'}.png new file mode 100644 index 00000000..00abeb90 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_end_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_gilded_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_gilded_blackstone_bricks'}.png new file mode 100644 index 00000000..bf6ce891 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_gilded_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_gold_block'}.png new file mode 100644 index 00000000..1a9f8a3a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_granite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_granite_bricks'}.png new file mode 100644 index 00000000..bf3719dd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_granite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_gray_concrete'}.png new file mode 100644 index 00000000..88ed9c0a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_green_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_green_concrete'}.png new file mode 100644 index 00000000..6d461509 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_green_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_ice_bricks'}.png new file mode 100644 index 00000000..252458a7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_iron_block'}.png new file mode 100644 index 00000000..e2aaec98 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_jungle_planks'}.png new file mode 100644 index 00000000..7ea4932d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_lapis_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_lapis_block_bricks'}.png new file mode 100644 index 00000000..06a28942 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_lapis_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_light_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_light_blue_concrete'}.png new file mode 100644 index 00000000..cdf24865 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_light_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_light_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_light_gray_concrete'}.png new file mode 100644 index 00000000..eeddc424 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_light_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_lime_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_lime_concrete'}.png new file mode 100644 index 00000000..6ea2d190 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_lime_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_lodestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_lodestone_bricks'}.png new file mode 100644 index 00000000..098a7d09 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_lodestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_magenta_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_magenta_concrete'}.png new file mode 100644 index 00000000..11a66e1f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_magenta_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_magma_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_magma_block_bricks'}.png new file mode 100644 index 00000000..f492377f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_magma_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_mangrove_planks'}.png new file mode 100644 index 00000000..7d2011d2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_mossy_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_mossy_cobblestone_bricks'}.png new file mode 100644 index 00000000..93f996d1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_mossy_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_mossy_stone_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_mossy_stone_bricks_bricks'}.png new file mode 100644 index 00000000..bae6a9e4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_mossy_stone_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_mud_bricks'}.png new file mode 100644 index 00000000..1c817df2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_mud_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_mud_bricks_bricks'}.png new file mode 100644 index 00000000..92e13ede Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_mud_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_nether_bricks_bricks'}.png new file mode 100644 index 00000000..1eed5b49 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_netherite_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_netherite_block'}.png new file mode 100644 index 00000000..d802d472 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_netherite_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_netherrack_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_netherrack_bricks'}.png new file mode 100644 index 00000000..96f6123d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_netherrack_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_oak_planks'}.png new file mode 100644 index 00000000..577d7c81 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_obsidian_bricks'}.png new file mode 100644 index 00000000..8cd3817b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_orange_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_orange_concrete'}.png new file mode 100644 index 00000000..394dccd3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_orange_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_packed_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_packed_ice_bricks'}.png new file mode 100644 index 00000000..7bf83b89 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_packed_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_packed_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_packed_mud_bricks'}.png new file mode 100644 index 00000000..c0ed5298 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_packed_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_pink_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_pink_concrete'}.png new file mode 100644 index 00000000..8fb4acf3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_pink_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_prismarine_bricks'}.png new file mode 100644 index 00000000..5edac214 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_purple_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_purple_concrete'}.png new file mode 100644 index 00000000..1bc8c84e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_purple_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_purpur_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_purpur_block_bricks'}.png new file mode 100644 index 00000000..81d78241 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_purpur_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_quartz_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_quartz_block_bricks'}.png new file mode 100644 index 00000000..6af54297 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_quartz_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_raw_copper_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_raw_copper_block_bricks'}.png new file mode 100644 index 00000000..d0c881f7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_raw_copper_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_raw_gold_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_raw_gold_block_bricks'}.png new file mode 100644 index 00000000..90558f80 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_raw_gold_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_raw_iron_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_raw_iron_block_bricks'}.png new file mode 100644 index 00000000..aafc7930 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_raw_iron_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_red_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_red_concrete'}.png new file mode 100644 index 00000000..bcfa9a47 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_red_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_red_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_red_nether_bricks_bricks'}.png new file mode 100644 index 00000000..6180044d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_red_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_red_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_red_sandstone_bricks'}.png new file mode 100644 index 00000000..9587a605 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_red_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_redstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_redstone_block_bricks'}.png new file mode 100644 index 00000000..a939329e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_redstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_sandstone_bricks'}.png new file mode 100644 index 00000000..18056f5c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_smooth_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_smooth_stone_bricks'}.png new file mode 100644 index 00000000..6e8f4ef4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_smooth_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_snow_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_snow_block_bricks'}.png new file mode 100644 index 00000000..03e25ad3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_snow_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_spruce_planks'}.png new file mode 100644 index 00000000..44465f77 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_stone_bricks'}.png new file mode 100644 index 00000000..0332c9a8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_tuff_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_tuff_bricks'}.png new file mode 100644 index 00000000..b78bdce2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_tuff_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_warped_planks'}.png new file mode 100644 index 00000000..d54f215a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_waxed_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_waxed_copper_block'}.png new file mode 100644 index 00000000..d0193c27 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_waxed_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_waxed_exposed_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_waxed_exposed_copper'}.png new file mode 100644 index 00000000..a63da3b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_waxed_exposed_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_waxed_oxidized_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_waxed_oxidized_copper'}.png new file mode 100644 index 00000000..e68bac47 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_waxed_oxidized_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_waxed_weathered_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_waxed_weathered_copper'}.png new file mode 100644 index 00000000..20776e5a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_waxed_weathered_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_white_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_white_concrete'}.png new file mode 100644 index 00000000..7def30a5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_white_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_yellow_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_yellow_concrete'}.png new file mode 100644 index 00000000..159399b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stacked_yellow_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__star_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__star_mud'}.png new file mode 100644 index 00000000..ddd95b2b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__star_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__star_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__star_mud_bricks'}.png new file mode 100644 index 00000000..500538d1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__star_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__star_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__star_packed_mud'}.png new file mode 100644 index 00000000..b9e879bd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__star_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_black_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_black_glazed_terracotta'}.png new file mode 100644 index 00000000..c64c4dd7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_black_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_black_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_black_terracotta'}.png new file mode 100644 index 00000000..29e7820f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_black_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_blue_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_blue_glazed_terracotta'}.png new file mode 100644 index 00000000..8e860506 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_blue_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_blue_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_blue_terracotta'}.png new file mode 100644 index 00000000..ff33481d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_blue_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_brown_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_brown_glazed_terracotta'}.png new file mode 100644 index 00000000..611c08ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_brown_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_brown_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_brown_terracotta'}.png new file mode 100644 index 00000000..2dd79907 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_brown_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_cyan_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_cyan_glazed_terracotta'}.png new file mode 100644 index 00000000..aec2a2cc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_cyan_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_cyan_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_cyan_terracotta'}.png new file mode 100644 index 00000000..c6ef8497 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_cyan_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_gray_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_gray_glazed_terracotta'}.png new file mode 100644 index 00000000..209fd67e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_gray_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_gray_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_gray_terracotta'}.png new file mode 100644 index 00000000..1e8f68e4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_gray_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_green_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_green_glazed_terracotta'}.png new file mode 100644 index 00000000..de34547d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_green_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_green_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_green_terracotta'}.png new file mode 100644 index 00000000..f57cfebc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_green_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_light_blue_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_light_blue_glazed_terracotta'}.png new file mode 100644 index 00000000..c1a82adc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_light_blue_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_light_blue_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_light_blue_terracotta'}.png new file mode 100644 index 00000000..5d186ff0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_light_blue_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_light_gray_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_light_gray_glazed_terracotta'}.png new file mode 100644 index 00000000..a68b9593 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_light_gray_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_light_gray_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_light_gray_terracotta'}.png new file mode 100644 index 00000000..28e2c6db Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_light_gray_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_lime_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_lime_glazed_terracotta'}.png new file mode 100644 index 00000000..03a28b01 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_lime_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_lime_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_lime_terracotta'}.png new file mode 100644 index 00000000..990c8209 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_lime_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_magenta_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_magenta_glazed_terracotta'}.png new file mode 100644 index 00000000..2e1d147d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_magenta_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_magenta_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_magenta_terracotta'}.png new file mode 100644 index 00000000..b845f466 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_magenta_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_orange_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_orange_glazed_terracotta'}.png new file mode 100644 index 00000000..5abbbb5c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_orange_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_orange_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_orange_terracotta'}.png new file mode 100644 index 00000000..78f120b3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_orange_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_pink_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_pink_glazed_terracotta'}.png new file mode 100644 index 00000000..a0f6d126 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_pink_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_pink_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_pink_terracotta'}.png new file mode 100644 index 00000000..de6377ce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_pink_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_purple_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_purple_glazed_terracotta'}.png new file mode 100644 index 00000000..2a59bbb0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_purple_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_purple_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_purple_terracotta'}.png new file mode 100644 index 00000000..42d45094 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_purple_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_red_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_red_glazed_terracotta'}.png new file mode 100644 index 00000000..73496aa4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_red_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_red_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_red_terracotta'}.png new file mode 100644 index 00000000..fcfa9b2c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_red_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_terracotta'}.png new file mode 100644 index 00000000..a7700f36 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_white_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_white_glazed_terracotta'}.png new file mode 100644 index 00000000..18efbfb7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_white_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_white_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_white_terracotta'}.png new file mode 100644 index 00000000..34f14403 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_white_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_yellow_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_yellow_glazed_terracotta'}.png new file mode 100644 index 00000000..e2448265 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_yellow_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_yellow_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_yellow_terracotta'}.png new file mode 100644 index 00000000..1953c8b5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__starry_yellow_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_acacia_log'}.png new file mode 100644 index 00000000..1f805356 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_birch_log'}.png new file mode 100644 index 00000000..6a1742eb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_cherry_log'}.png new file mode 100644 index 00000000..61b8949c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_crimson_stem'}.png new file mode 100644 index 00000000..a9ce0c9f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_dark_oak_log'}.png new file mode 100644 index 00000000..b46bdb36 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_jungle_log'}.png new file mode 100644 index 00000000..97685826 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_mangrove_log'}.png new file mode 100644 index 00000000..163dedc1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_oak_log'}.png new file mode 100644 index 00000000..414bea48 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_spruce_log'}.png new file mode 100644 index 00000000..fd8ec04e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_warped_stem'}.png new file mode 100644 index 00000000..0e15a229 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stern_stripped_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sticky_melon'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sticky_melon'}.png new file mode 100644 index 00000000..075f6ae9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sticky_melon'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stone_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stone_mini_tiles'}.png new file mode 100644 index 00000000..ea8c14c7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stone_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stone_pillar'}.png new file mode 100644 index 00000000..9d1becb7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stone_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stone_pillar_top'}.png new file mode 100644 index 00000000..603d4737 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stone_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stone_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stone_scales'}.png new file mode 100644 index 00000000..443f1cf7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stone_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_black_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_black_concrete'}.png new file mode 100644 index 00000000..71be16b3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_black_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_blue_concrete'}.png new file mode 100644 index 00000000..9e3d6ffb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_brown_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_brown_concrete'}.png new file mode 100644 index 00000000..2f2a6986 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_brown_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_cyan_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_cyan_concrete'}.png new file mode 100644 index 00000000..ef182f8f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_cyan_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_gray_concrete'}.png new file mode 100644 index 00000000..6fac84a5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_green_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_green_concrete'}.png new file mode 100644 index 00000000..c8d7034e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_green_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_light_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_light_blue_concrete'}.png new file mode 100644 index 00000000..c959e118 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_light_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_light_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_light_gray_concrete'}.png new file mode 100644 index 00000000..1961c8de Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_light_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_lime_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_lime_concrete'}.png new file mode 100644 index 00000000..79e2c5e7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_lime_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_magenta_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_magenta_concrete'}.png new file mode 100644 index 00000000..71883d2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_magenta_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_orange_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_orange_concrete'}.png new file mode 100644 index 00000000..e3dd8f72 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_orange_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_pink_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_pink_concrete'}.png new file mode 100644 index 00000000..a875032b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_pink_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_purple_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_purple_concrete'}.png new file mode 100644 index 00000000..f001014b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_purple_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_red_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_red_concrete'}.png new file mode 100644 index 00000000..5428edc1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_red_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_white_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_white_concrete'}.png new file mode 100644 index 00000000..1649e5d1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_white_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_yellow_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_yellow_concrete'}.png new file mode 100644 index 00000000..17e051fd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stop_yellow_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_black_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_black_wool'}.png new file mode 100644 index 00000000..b318144e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_black_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_blue_wool'}.png new file mode 100644 index 00000000..ab7e4e05 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_brown_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_brown_wool'}.png new file mode 100644 index 00000000..2f0eb1e5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_brown_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_cyan_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_cyan_wool'}.png new file mode 100644 index 00000000..f20091db Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_cyan_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_gray_wool'}.png new file mode 100644 index 00000000..429d5aba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_green_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_green_wool'}.png new file mode 100644 index 00000000..14218649 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_green_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_light_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_light_blue_wool'}.png new file mode 100644 index 00000000..11897ec2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_light_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_light_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_light_gray_wool'}.png new file mode 100644 index 00000000..306593fb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_light_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_lime_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_lime_wool'}.png new file mode 100644 index 00000000..1fd65b1e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_lime_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_magenta_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_magenta_wool'}.png new file mode 100644 index 00000000..50cb3806 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_magenta_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_orange_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_orange_wool'}.png new file mode 100644 index 00000000..66b62a01 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_orange_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_pink_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_pink_wool'}.png new file mode 100644 index 00000000..122d2a3f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_pink_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_purple_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_purple_wool'}.png new file mode 100644 index 00000000..d0da9cb3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_purple_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_red_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_red_wool'}.png new file mode 100644 index 00000000..1ce1e1da Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_red_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_white_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_white_wool'}.png new file mode 100644 index 00000000..befecaaf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_white_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_yellow_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_yellow_wool'}.png new file mode 100644 index 00000000..73e1b491 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__stringed_yellow_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_black_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_black_concrete'}.png new file mode 100644 index 00000000..bb3aeaa9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_black_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_blue_concrete'}.png new file mode 100644 index 00000000..e050e6fc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_brown_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_brown_concrete'}.png new file mode 100644 index 00000000..767e4ef4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_brown_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_cyan_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_cyan_concrete'}.png new file mode 100644 index 00000000..8da48d67 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_cyan_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_gray_concrete'}.png new file mode 100644 index 00000000..3a1c4a7d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_green_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_green_concrete'}.png new file mode 100644 index 00000000..9046fe73 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_green_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_light_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_light_blue_concrete'}.png new file mode 100644 index 00000000..a50c14fe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_light_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_light_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_light_gray_concrete'}.png new file mode 100644 index 00000000..94e95795 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_light_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_lime_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_lime_concrete'}.png new file mode 100644 index 00000000..87492dab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_lime_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_magenta_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_magenta_concrete'}.png new file mode 100644 index 00000000..f4811d9b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_magenta_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_orange_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_orange_concrete'}.png new file mode 100644 index 00000000..5f1b8fe1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_orange_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_pink_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_pink_concrete'}.png new file mode 100644 index 00000000..13cf233e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_pink_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_purple_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_purple_concrete'}.png new file mode 100644 index 00000000..79feb8c2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_purple_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_red_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_red_concrete'}.png new file mode 100644 index 00000000..f3025427 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_red_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_white_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_white_concrete'}.png new file mode 100644 index 00000000..845c31a3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_white_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_yellow_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_yellow_concrete'}.png new file mode 100644 index 00000000..83454c9f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__striped_yellow_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sugarcane_dried_kelp_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sugarcane_dried_kelp_block'}.png new file mode 100644 index 00000000..ed0dd36b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sugarcane_dried_kelp_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sunny_melon'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sunny_melon'}.png new file mode 100644 index 00000000..449791a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sunny_melon'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__suspicious_carved_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__suspicious_carved_pumpkin'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__suspicious_carved_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__suspicious_jack_o_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__suspicious_jack_o_lantern'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__suspicious_jack_o_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__swampy_hay_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__swampy_hay_block'}.png new file mode 100644 index 00000000..5ca5d3c8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__swampy_hay_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__swampy_melon'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__swampy_melon'}.png new file mode 100644 index 00000000..d4f39cf4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__swampy_melon'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sweet_melon'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sweet_melon'}.png new file mode 100644 index 00000000..0b8b7733 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__sweet_melon'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__symbol_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__symbol_mud'}.png new file mode 100644 index 00000000..91cb3de4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__symbol_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__symbol_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__symbol_mud_bricks'}.png new file mode 100644 index 00000000..8e7b019c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__symbol_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__symbol_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__symbol_packed_mud'}.png new file mode 100644 index 00000000..c844df41 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__symbol_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__symbolic_mud_bricks_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__symbolic_mud_bricks_pillar'}.png new file mode 100644 index 00000000..89298c08 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__symbolic_mud_bricks_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__symbolic_mud_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__symbolic_mud_pillar'}.png new file mode 100644 index 00000000..646cc072 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__symbolic_mud_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__symbolic_packed_mud_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__symbolic_packed_mud_pillar'}.png new file mode 100644 index 00000000..10907fc5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__symbolic_packed_mud_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tar_sand'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tar_sand'}.png new file mode 100644 index 00000000..9806ae41 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tar_sand'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__terracotta_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__terracotta_bricks'}.png new file mode 100644 index 00000000..20969b15 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__terracotta_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__terracotta_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__terracotta_column'}.png new file mode 100644 index 00000000..4a5a8743 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__terracotta_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__terracotta_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__terracotta_pillar'}.png new file mode 100644 index 00000000..b88da0a1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__terracotta_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__terracotta_tile'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__terracotta_tile'}.png new file mode 100644 index 00000000..5977c8ca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__terracotta_tile'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__terracotta_tiles'}.png new file mode 100644 index 00000000..92e1bd43 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_amethyst_block'}.png new file mode 100644 index 00000000..42b354a2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_ancient_debris'}.png new file mode 100644 index 00000000..f148a1b9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_andesite'}.png new file mode 100644 index 00000000..34c4a857 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_basalt'}.png new file mode 100644 index 00000000..9fdc64b8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_blackstone'}.png new file mode 100644 index 00000000..57d84be7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_blue_ice'}.png new file mode 100644 index 00000000..e11243e7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_borderless_bricks'}.png new file mode 100644 index 00000000..bc6fec69 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_bricks'}.png new file mode 100644 index 00000000..4f84aaa2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_calcite'}.png new file mode 100644 index 00000000..00ce9340 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_clay'}.png new file mode 100644 index 00000000..ee1e28ee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_coal_block'}.png new file mode 100644 index 00000000..ce404bde Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_cobblestone'}.png new file mode 100644 index 00000000..2475b7a4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_crying_obsidian'}.png new file mode 100644 index 00000000..b30b2964 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_dark_prismarine'}.png new file mode 100644 index 00000000..2262c38c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_deepslate'}.png new file mode 100644 index 00000000..341592dc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_diorite'}.png new file mode 100644 index 00000000..5dbe4b99 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_dirt'}.png new file mode 100644 index 00000000..d6814794 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_dripstone_block'}.png new file mode 100644 index 00000000..518379bd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_end_stone'}.png new file mode 100644 index 00000000..d90a8ea5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_gilded_blackstone'}.png new file mode 100644 index 00000000..7545380f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_glowstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_glowstone'}.png new file mode 100644 index 00000000..e6accd8d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_glowstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_granite'}.png new file mode 100644 index 00000000..334a32d6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_ice'}.png new file mode 100644 index 00000000..f0b798f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_lapis_block'}.png new file mode 100644 index 00000000..0757757e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_lodestone'}.png new file mode 100644 index 00000000..fdb27d78 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_magma_block'}.png new file mode 100644 index 00000000..722d84fd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_mossy_cobblestone'}.png new file mode 100644 index 00000000..11776c38 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_mossy_stone_bricks'}.png new file mode 100644 index 00000000..ad73a4c7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_mud'}.png new file mode 100644 index 00000000..23ec1721 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_mud_bricks'}.png new file mode 100644 index 00000000..3338b8f8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_nether_bricks'}.png new file mode 100644 index 00000000..1c1ca040 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_netherrack'}.png new file mode 100644 index 00000000..0576acbd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_obsidian'}.png new file mode 100644 index 00000000..8c5933ba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_packed_ice'}.png new file mode 100644 index 00000000..8785a482 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_packed_mud'}.png new file mode 100644 index 00000000..c176d96c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_prismarine'}.png new file mode 100644 index 00000000..2d01699d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_purpur_block'}.png new file mode 100644 index 00000000..c2eabdd3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_quartz_block'}.png new file mode 100644 index 00000000..c10a7d60 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_raw_copper_block'}.png new file mode 100644 index 00000000..d933e0b6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_raw_gold_block'}.png new file mode 100644 index 00000000..a0927e56 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_raw_iron_block'}.png new file mode 100644 index 00000000..72a2b48c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_red_nether_bricks'}.png new file mode 100644 index 00000000..87304040 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_red_sandstone'}.png new file mode 100644 index 00000000..0c23eca5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_redstone_block'}.png new file mode 100644 index 00000000..3e63aa43 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_redstone_lamp'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_redstone_lamp'}.png new file mode 100644 index 00000000..ef28c75c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_redstone_lamp'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_sandstone'}.png new file mode 100644 index 00000000..9156520b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_sea_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_sea_lantern'}.png new file mode 100644 index 00000000..0e8e21a4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_sea_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_shroomlight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_shroomlight'}.png new file mode 100644 index 00000000..dd0e3560 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_shroomlight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_smooth_stone'}.png new file mode 100644 index 00000000..332f9157 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_snow_block'}.png new file mode 100644 index 00000000..cb1c87d9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_stone'}.png new file mode 100644 index 00000000..ed16c2a9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_tuff'}.png new file mode 100644 index 00000000..eeca8f0f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_inlayed_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_white_inlayed_redstone_lamp'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_white_inlayed_redstone_lamp'}.png new file mode 100644 index 00000000..cc79c03d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thick_white_inlayed_redstone_lamp'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_acacia_planks'}.png new file mode 100644 index 00000000..f21fa656 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_bamboo_planks'}.png new file mode 100644 index 00000000..5d412a9d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_birch_planks'}.png new file mode 100644 index 00000000..56376f7f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_cherry_planks'}.png new file mode 100644 index 00000000..6f6874e6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_crimson_planks'}.png new file mode 100644 index 00000000..bc22961f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_dark_oak_planks'}.png new file mode 100644 index 00000000..c23c9728 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_jungle_planks'}.png new file mode 100644 index 00000000..8dac9ea4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_mangrove_planks'}.png new file mode 100644 index 00000000..f67d9a1a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_mangrove_roots'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_mangrove_roots'}.png new file mode 100644 index 00000000..56cf401b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_mangrove_roots'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_oak_planks'}.png new file mode 100644 index 00000000..fb7bedeb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_spruce_planks'}.png new file mode 100644 index 00000000..f57e308d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_warped_planks'}.png new file mode 100644 index 00000000..9b35b2aa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__thin_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tied_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tied_bamboo_planks'}.png new file mode 100644 index 00000000..ad5ca7cc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tied_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_acacia_planks'}.png new file mode 100644 index 00000000..1fdb19a2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_amethyst_block'}.png new file mode 100644 index 00000000..058502d2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_amethyst_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_amethyst_block_column'}.png new file mode 100644 index 00000000..3909c46b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_amethyst_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_ancient_debris'}.png new file mode 100644 index 00000000..84f4806c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_ancient_debris_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_ancient_debris_column'}.png new file mode 100644 index 00000000..e6f3d252 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_ancient_debris_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_andesite'}.png new file mode 100644 index 00000000..d62bab2c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_andesite_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_andesite_column'}.png new file mode 100644 index 00000000..4391f4d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_andesite_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bamboo_planks'}.png new file mode 100644 index 00000000..b060e6b5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_basalt'}.png new file mode 100644 index 00000000..e1a774a8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_basalt_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_basalt_column'}.png new file mode 100644 index 00000000..079cd7c7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_basalt_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_birch_planks'}.png new file mode 100644 index 00000000..e7a40930 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_black_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_black_stained_glass'}.png new file mode 100644 index 00000000..2da64cbc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_black_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_black_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_black_wool'}.png new file mode 100644 index 00000000..4950382f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_black_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_blackstone'}.png new file mode 100644 index 00000000..7880ca37 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_blackstone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_blackstone_column'}.png new file mode 100644 index 00000000..f967b004 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_blackstone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_blue_ice'}.png new file mode 100644 index 00000000..84716331 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_blue_ice_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_blue_ice_column'}.png new file mode 100644 index 00000000..cd142c5a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_blue_ice_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_blue_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_blue_stained_glass'}.png new file mode 100644 index 00000000..e26eb86e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_blue_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_blue_wool'}.png new file mode 100644 index 00000000..e08fcdf8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bone_block'}.png new file mode 100644 index 00000000..9fb447b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_amethyst_block'}.png new file mode 100644 index 00000000..204992f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_ancient_debris'}.png new file mode 100644 index 00000000..ef627674 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_andesite'}.png new file mode 100644 index 00000000..18316e0d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_basalt'}.png new file mode 100644 index 00000000..2771ec0a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_blackstone'}.png new file mode 100644 index 00000000..557bf580 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_blue_ice'}.png new file mode 100644 index 00000000..23d74866 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_borderless_bricks'}.png new file mode 100644 index 00000000..b590d48c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_bricks'}.png new file mode 100644 index 00000000..468e2d0c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_calcite'}.png new file mode 100644 index 00000000..fbecf17e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_clay'}.png new file mode 100644 index 00000000..8ba410ba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_coal_block'}.png new file mode 100644 index 00000000..ae430c08 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_cobblestone'}.png new file mode 100644 index 00000000..ddedf25d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_crying_obsidian'}.png new file mode 100644 index 00000000..81d222c3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_dark_prismarine'}.png new file mode 100644 index 00000000..6b810380 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_deepslate'}.png new file mode 100644 index 00000000..d9189cf6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_diorite'}.png new file mode 100644 index 00000000..248e9f06 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_dirt'}.png new file mode 100644 index 00000000..62dd2b1e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_dripstone_block'}.png new file mode 100644 index 00000000..1631402a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_end_stone'}.png new file mode 100644 index 00000000..5b65574f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_gilded_blackstone'}.png new file mode 100644 index 00000000..f1b60400 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_granite'}.png new file mode 100644 index 00000000..2197ebac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_ice'}.png new file mode 100644 index 00000000..a4382cd6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_lapis_block'}.png new file mode 100644 index 00000000..79fa590a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_lodestone'}.png new file mode 100644 index 00000000..d283668d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_magma_block'}.png new file mode 100644 index 00000000..f460bd12 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_mossy_cobblestone'}.png new file mode 100644 index 00000000..73b55bdc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_mossy_stone_bricks'}.png new file mode 100644 index 00000000..5de0eaf5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_mud'}.png new file mode 100644 index 00000000..fd98a508 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_mud_bricks'}.png new file mode 100644 index 00000000..c0e9eacf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_nether_bricks'}.png new file mode 100644 index 00000000..7fd45333 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_netherrack'}.png new file mode 100644 index 00000000..3122eec9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_obsidian'}.png new file mode 100644 index 00000000..7594f5a4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_packed_ice'}.png new file mode 100644 index 00000000..0db6d062 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_packed_mud'}.png new file mode 100644 index 00000000..7563a8c2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_prismarine'}.png new file mode 100644 index 00000000..dbb7da94 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_purpur_block'}.png new file mode 100644 index 00000000..53d652ec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_quartz_block'}.png new file mode 100644 index 00000000..3b0fa4df Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_raw_copper_block'}.png new file mode 100644 index 00000000..b3b8a0e7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_raw_gold_block'}.png new file mode 100644 index 00000000..fb974e81 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_raw_iron_block'}.png new file mode 100644 index 00000000..078d735c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_red_nether_bricks'}.png new file mode 100644 index 00000000..860ecb02 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_red_sandstone'}.png new file mode 100644 index 00000000..f0c8e436 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_redstone_block'}.png new file mode 100644 index 00000000..8449c9a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_sandstone'}.png new file mode 100644 index 00000000..2cd8c6f0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_smooth_stone'}.png new file mode 100644 index 00000000..53898bb8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_snow_block'}.png new file mode 100644 index 00000000..2add94c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_stone'}.png new file mode 100644 index 00000000..5296ab0c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_tuff'}.png new file mode 100644 index 00000000..be788533 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bordered_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_borderless_bricks'}.png new file mode 100644 index 00000000..62570350 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_borderless_bricks_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_borderless_bricks_column'}.png new file mode 100644 index 00000000..8fd42b17 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_borderless_bricks_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bricks'}.png new file mode 100644 index 00000000..b5a74e24 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bricks_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bricks_column'}.png new file mode 100644 index 00000000..5cbd93a9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_bricks_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_brown_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_brown_stained_glass'}.png new file mode 100644 index 00000000..5bf4ebc2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_brown_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_brown_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_brown_wool'}.png new file mode 100644 index 00000000..c9b69c31 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_brown_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_calcite'}.png new file mode 100644 index 00000000..b6333240 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_calcite_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_calcite_column'}.png new file mode 100644 index 00000000..2e25bd02 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_calcite_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_cherry_planks'}.png new file mode 100644 index 00000000..c35292ee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_clay'}.png new file mode 100644 index 00000000..198d96e4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_clay_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_clay_column'}.png new file mode 100644 index 00000000..5301baab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_clay_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_coal_block'}.png new file mode 100644 index 00000000..f7f9adf3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_coal_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_coal_block_column'}.png new file mode 100644 index 00000000..5207d607 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_coal_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_cobblestone'}.png new file mode 100644 index 00000000..f9fbf573 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_cobblestone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_cobblestone_column'}.png new file mode 100644 index 00000000..1bac87a0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_cobblestone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_crimson_planks'}.png new file mode 100644 index 00000000..666ecea2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_crying_obsidian'}.png new file mode 100644 index 00000000..a3d62571 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_crying_obsidian_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_crying_obsidian_column'}.png new file mode 100644 index 00000000..04085be5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_crying_obsidian_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_cyan_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_cyan_stained_glass'}.png new file mode 100644 index 00000000..0fe7f3b0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_cyan_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_cyan_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_cyan_wool'}.png new file mode 100644 index 00000000..0b5c2e9d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_cyan_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_dark_oak_planks'}.png new file mode 100644 index 00000000..144a5b58 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_dark_prismarine'}.png new file mode 100644 index 00000000..53b61fde Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_dark_prismarine_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_dark_prismarine_column'}.png new file mode 100644 index 00000000..0698872e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_dark_prismarine_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_deepslate'}.png new file mode 100644 index 00000000..9e34f586 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_deepslate_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_deepslate_column'}.png new file mode 100644 index 00000000..febbe670 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_deepslate_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_diorite'}.png new file mode 100644 index 00000000..662bb303 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_diorite_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_diorite_column'}.png new file mode 100644 index 00000000..0da9155d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_diorite_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_dirt'}.png new file mode 100644 index 00000000..52572bc2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_dirt_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_dirt_column'}.png new file mode 100644 index 00000000..193f3417 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_dirt_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_dripstone_block'}.png new file mode 100644 index 00000000..65751c29 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_dripstone_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_dripstone_block_column'}.png new file mode 100644 index 00000000..5c956b79 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_dripstone_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_end_stone'}.png new file mode 100644 index 00000000..d05f1f64 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_end_stone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_end_stone_column'}.png new file mode 100644 index 00000000..9b76aa48 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_end_stone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_gilded_blackstone'}.png new file mode 100644 index 00000000..f2a1d10d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_gilded_blackstone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_gilded_blackstone_column'}.png new file mode 100644 index 00000000..1b0c1809 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_gilded_blackstone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_glowstone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_glowstone_pillar'}.png new file mode 100644 index 00000000..5171eab9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_glowstone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_granite'}.png new file mode 100644 index 00000000..8f112c0f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_granite_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_granite_column'}.png new file mode 100644 index 00000000..3b8fe92f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_granite_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_gray_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_gray_stained_glass'}.png new file mode 100644 index 00000000..43ca64c3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_gray_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_gray_wool'}.png new file mode 100644 index 00000000..a9384650 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_green_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_green_stained_glass'}.png new file mode 100644 index 00000000..2554b2a5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_green_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_green_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_green_wool'}.png new file mode 100644 index 00000000..11634266 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_green_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_ice'}.png new file mode 100644 index 00000000..be58249a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_ice_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_ice_column'}.png new file mode 100644 index 00000000..5f59142a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_ice_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_jungle_planks'}.png new file mode 100644 index 00000000..c8518254 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_lapis_block'}.png new file mode 100644 index 00000000..1eeceed7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_lapis_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_lapis_block_column'}.png new file mode 100644 index 00000000..e9803abb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_lapis_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_light_blue_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_light_blue_stained_glass'}.png new file mode 100644 index 00000000..3152d7e2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_light_blue_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_light_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_light_blue_wool'}.png new file mode 100644 index 00000000..848a526f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_light_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_light_gray_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_light_gray_stained_glass'}.png new file mode 100644 index 00000000..d473ba07 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_light_gray_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_light_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_light_gray_wool'}.png new file mode 100644 index 00000000..27925310 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_light_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_lime_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_lime_stained_glass'}.png new file mode 100644 index 00000000..61885693 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_lime_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_lime_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_lime_wool'}.png new file mode 100644 index 00000000..312bbd2c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_lime_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_lodestone'}.png new file mode 100644 index 00000000..b1790029 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_lodestone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_lodestone_column'}.png new file mode 100644 index 00000000..02628627 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_lodestone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_magenta_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_magenta_stained_glass'}.png new file mode 100644 index 00000000..8295bbe6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_magenta_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_magenta_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_magenta_wool'}.png new file mode 100644 index 00000000..fbd1aafd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_magenta_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_magma_block'}.png new file mode 100644 index 00000000..8d26fb41 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_magma_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_magma_block_column'}.png new file mode 100644 index 00000000..c085da90 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_magma_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mangrove_planks'}.png new file mode 100644 index 00000000..dc6476fe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mossy_cobblestone'}.png new file mode 100644 index 00000000..99a8d136 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mossy_cobblestone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mossy_cobblestone_column'}.png new file mode 100644 index 00000000..55244bca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mossy_cobblestone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mossy_stone_bricks'}.png new file mode 100644 index 00000000..fd336cbb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mossy_stone_bricks_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mossy_stone_bricks_column'}.png new file mode 100644 index 00000000..380e974b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mossy_stone_bricks_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mud_bricks'}.png new file mode 100644 index 00000000..44c2c364 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mud_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mud_bricks_bricks'}.png new file mode 100644 index 00000000..91ba75ae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mud_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mud_bricks_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mud_bricks_column'}.png new file mode 100644 index 00000000..0adb0ff0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mud_bricks_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mud_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mud_column'}.png new file mode 100644 index 00000000..7f0f5178 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_mud_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_nether_bricks'}.png new file mode 100644 index 00000000..469307b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_nether_bricks_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_nether_bricks_column'}.png new file mode 100644 index 00000000..adce46aa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_nether_bricks_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_netherrack'}.png new file mode 100644 index 00000000..d025bf82 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_netherrack_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_netherrack_column'}.png new file mode 100644 index 00000000..e0f98499 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_netherrack_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_oak_planks'}.png new file mode 100644 index 00000000..909b19d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_obsidian'}.png new file mode 100644 index 00000000..2708c46d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_obsidian_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_obsidian_column'}.png new file mode 100644 index 00000000..7aa9f893 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_obsidian_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_orange_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_orange_stained_glass'}.png new file mode 100644 index 00000000..38696389 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_orange_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_orange_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_orange_wool'}.png new file mode 100644 index 00000000..e3f96327 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_orange_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_packed_ice'}.png new file mode 100644 index 00000000..f2d50d8a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_packed_ice_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_packed_ice_column'}.png new file mode 100644 index 00000000..0cfa42b3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_packed_ice_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_packed_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_packed_mud_bricks'}.png new file mode 100644 index 00000000..d4fce14d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_packed_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_packed_mud_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_packed_mud_column'}.png new file mode 100644 index 00000000..a9775ce7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_packed_mud_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_pink_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_pink_stained_glass'}.png new file mode 100644 index 00000000..94e65856 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_pink_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_pink_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_pink_wool'}.png new file mode 100644 index 00000000..f6ceb4d6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_pink_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_prismarine'}.png new file mode 100644 index 00000000..f1e1612b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_prismarine_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_prismarine_column'}.png new file mode 100644 index 00000000..dbcb4768 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_prismarine_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_purple_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_purple_stained_glass'}.png new file mode 100644 index 00000000..e3694fec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_purple_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_purple_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_purple_wool'}.png new file mode 100644 index 00000000..04ca3765 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_purple_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_purpur_block'}.png new file mode 100644 index 00000000..3e591bad Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_purpur_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_purpur_block_column'}.png new file mode 100644 index 00000000..56037342 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_purpur_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_quartz_block'}.png new file mode 100644 index 00000000..3ebec168 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_quartz_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_quartz_block_column'}.png new file mode 100644 index 00000000..c2f2f8eb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_quartz_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_raw_copper_block'}.png new file mode 100644 index 00000000..390cdee5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_raw_copper_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_raw_copper_block_column'}.png new file mode 100644 index 00000000..ed0ce2d6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_raw_copper_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_raw_gold_block'}.png new file mode 100644 index 00000000..bc0a841b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_raw_gold_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_raw_gold_block_column'}.png new file mode 100644 index 00000000..f85d1e31 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_raw_gold_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_raw_iron_block'}.png new file mode 100644 index 00000000..3a41df87 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_raw_iron_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_raw_iron_block_column'}.png new file mode 100644 index 00000000..c03e5eb2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_raw_iron_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_red_nether_bricks'}.png new file mode 100644 index 00000000..c48e8d49 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_red_nether_bricks_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_red_nether_bricks_column'}.png new file mode 100644 index 00000000..78d59d6d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_red_nether_bricks_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_red_sandstone'}.png new file mode 100644 index 00000000..c48d69f7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_red_sandstone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_red_sandstone_column'}.png new file mode 100644 index 00000000..10df4fee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_red_sandstone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_red_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_red_stained_glass'}.png new file mode 100644 index 00000000..f74372b6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_red_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_red_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_red_wool'}.png new file mode 100644 index 00000000..d6ffd913 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_red_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_redstone_block'}.png new file mode 100644 index 00000000..53ca44f0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_redstone_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_redstone_block_column'}.png new file mode 100644 index 00000000..25f8c2d1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_redstone_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_sandstone'}.png new file mode 100644 index 00000000..136fb158 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_sandstone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_sandstone_column'}.png new file mode 100644 index 00000000..50351c91 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_sandstone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_sea_lantern_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_sea_lantern_pillar'}.png new file mode 100644 index 00000000..4e384dd2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_sea_lantern_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_shroomlight_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_shroomlight_pillar'}.png new file mode 100644 index 00000000..503cfc32 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_shroomlight_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_smooth_stone'}.png new file mode 100644 index 00000000..861b14a1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_smooth_stone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_smooth_stone_column'}.png new file mode 100644 index 00000000..f9f2ab1b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_smooth_stone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_snow_block'}.png new file mode 100644 index 00000000..7e55f4d2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_snow_block_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_snow_block_column'}.png new file mode 100644 index 00000000..fb885991 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_snow_block_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_spruce_planks'}.png new file mode 100644 index 00000000..d040c4d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_stone'}.png new file mode 100644 index 00000000..e61fa82f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_stone_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_stone_column'}.png new file mode 100644 index 00000000..4a5d57a3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_stone_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_tuff'}.png new file mode 100644 index 00000000..db568ecb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_tuff_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_tuff_column'}.png new file mode 100644 index 00000000..42c9c593 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_tuff_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_warped_planks'}.png new file mode 100644 index 00000000..40a604ca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_white_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_white_stained_glass'}.png new file mode 100644 index 00000000..c08d0d8f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_white_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_white_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_white_wool'}.png new file mode 100644 index 00000000..361ee39e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_white_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_yellow_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_yellow_stained_glass'}.png new file mode 100644 index 00000000..5abc0615 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_yellow_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_yellow_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_yellow_wool'}.png new file mode 100644 index 00000000..12da969a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiled_yellow_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tinkering_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tinkering_table'}.png new file mode 100644 index 00000000..e90efdde Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tinkering_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_amethyst_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_amethyst_block_bricks'}.png new file mode 100644 index 00000000..dfe297c3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_amethyst_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_ancient_debris_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_ancient_debris_bricks'}.png new file mode 100644 index 00000000..70048c9d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_ancient_debris_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_andesite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_andesite_bricks'}.png new file mode 100644 index 00000000..f6e90fde Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_andesite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_basalt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_basalt_bricks'}.png new file mode 100644 index 00000000..cb4507f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_basalt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_blackstone_bricks'}.png new file mode 100644 index 00000000..3798a4cd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_blue_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_blue_ice_bricks'}.png new file mode 100644 index 00000000..e933757f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_blue_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_borderless_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_borderless_bricks_bricks'}.png new file mode 100644 index 00000000..fe1b0337 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_borderless_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_amethyst_block'}.png new file mode 100644 index 00000000..d2effc70 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_ancient_debris'}.png new file mode 100644 index 00000000..ca79a624 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_andesite'}.png new file mode 100644 index 00000000..4440c191 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_basalt'}.png new file mode 100644 index 00000000..95667b90 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_blackstone'}.png new file mode 100644 index 00000000..25ff9a76 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_blue_ice'}.png new file mode 100644 index 00000000..b147becb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_borderless_bricks'}.png new file mode 100644 index 00000000..86fe537e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_bricks'}.png new file mode 100644 index 00000000..67b5119e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_calcite'}.png new file mode 100644 index 00000000..f4fbbf1e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_clay'}.png new file mode 100644 index 00000000..2d06da78 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_coal_block'}.png new file mode 100644 index 00000000..d719097b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_cobblestone'}.png new file mode 100644 index 00000000..a4083a66 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_crying_obsidian'}.png new file mode 100644 index 00000000..a0c5c488 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_dark_prismarine'}.png new file mode 100644 index 00000000..a80879d0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_deepslate'}.png new file mode 100644 index 00000000..da1cf681 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_diorite'}.png new file mode 100644 index 00000000..48b76f9a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_dirt'}.png new file mode 100644 index 00000000..4f866ecd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_dripstone_block'}.png new file mode 100644 index 00000000..1bcaf82b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_end_stone'}.png new file mode 100644 index 00000000..9218b66d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_gilded_blackstone'}.png new file mode 100644 index 00000000..2610dcc7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_granite'}.png new file mode 100644 index 00000000..73351d12 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_ice'}.png new file mode 100644 index 00000000..6a614eba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_lapis_block'}.png new file mode 100644 index 00000000..2603fcdd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_lodestone'}.png new file mode 100644 index 00000000..1a8b0a00 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_magma_block'}.png new file mode 100644 index 00000000..6c24fa88 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_mossy_cobblestone'}.png new file mode 100644 index 00000000..da405ea3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_mossy_stone_bricks'}.png new file mode 100644 index 00000000..7ee933e6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_nether_bricks'}.png new file mode 100644 index 00000000..404bfa2c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_netherrack'}.png new file mode 100644 index 00000000..35a0cd58 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_obsidian'}.png new file mode 100644 index 00000000..83fff1e7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_packed_ice'}.png new file mode 100644 index 00000000..635a01e9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_prismarine'}.png new file mode 100644 index 00000000..1e26e50a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_purpur_block'}.png new file mode 100644 index 00000000..fbf19e70 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_quartz_block'}.png new file mode 100644 index 00000000..cbdf7ed6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_raw_copper_block'}.png new file mode 100644 index 00000000..97a0dcf1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_raw_gold_block'}.png new file mode 100644 index 00000000..1d47b508 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_raw_iron_block'}.png new file mode 100644 index 00000000..0c670857 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_red_nether_bricks'}.png new file mode 100644 index 00000000..19a5dd5c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_red_sandstone'}.png new file mode 100644 index 00000000..c279415d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_redstone_block'}.png new file mode 100644 index 00000000..5737f761 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_sandstone'}.png new file mode 100644 index 00000000..a44201ee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_smooth_stone'}.png new file mode 100644 index 00000000..e29fcb1e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_snow_block'}.png new file mode 100644 index 00000000..4893289c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_stone'}.png new file mode 100644 index 00000000..c248b0fb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_tuff'}.png new file mode 100644 index 00000000..da73194b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_brick_bordered_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_bricks_bricks'}.png new file mode 100644 index 00000000..4f8886cf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_calcite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_calcite_bricks'}.png new file mode 100644 index 00000000..736dc5cd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_calcite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_clay_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_clay_bricks'}.png new file mode 100644 index 00000000..e0207c24 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_clay_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_coal_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_coal_block_bricks'}.png new file mode 100644 index 00000000..2ee17cf7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_coal_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_cobblestone_bricks'}.png new file mode 100644 index 00000000..7d128ed7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_crying_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_crying_obsidian_bricks'}.png new file mode 100644 index 00000000..5e900fa9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_crying_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_dark_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_dark_prismarine_bricks'}.png new file mode 100644 index 00000000..e0c7e50c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_dark_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_deepslate_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_deepslate_bricks'}.png new file mode 100644 index 00000000..e98ee1d6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_deepslate_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_diorite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_diorite_bricks'}.png new file mode 100644 index 00000000..423d3a9c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_diorite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_dirt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_dirt_bricks'}.png new file mode 100644 index 00000000..c3afb47b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_dirt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_dripstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_dripstone_block_bricks'}.png new file mode 100644 index 00000000..5a4576b6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_dripstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_end_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_end_stone_bricks'}.png new file mode 100644 index 00000000..71ad7bb5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_end_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_gilded_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_gilded_blackstone_bricks'}.png new file mode 100644 index 00000000..02e19d67 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_gilded_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_granite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_granite_bricks'}.png new file mode 100644 index 00000000..81bf4505 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_granite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_ice_bricks'}.png new file mode 100644 index 00000000..bcffcc58 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_lapis_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_lapis_block_bricks'}.png new file mode 100644 index 00000000..f9f823d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_lapis_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_amethyst_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_amethyst_block_bricks'}.png new file mode 100644 index 00000000..17a32240 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_amethyst_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_amethyst_block_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_amethyst_block_slabs'}.png new file mode 100644 index 00000000..5d7e847c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_amethyst_block_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_ancient_debris_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_ancient_debris_bricks'}.png new file mode 100644 index 00000000..e865f46c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_ancient_debris_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_ancient_debris_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_ancient_debris_slabs'}.png new file mode 100644 index 00000000..e708a289 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_ancient_debris_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_andesite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_andesite_bricks'}.png new file mode 100644 index 00000000..58f4491c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_andesite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_andesite_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_andesite_slabs'}.png new file mode 100644 index 00000000..50b59403 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_andesite_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_basalt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_basalt_bricks'}.png new file mode 100644 index 00000000..8d570cbf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_basalt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_basalt_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_basalt_slabs'}.png new file mode 100644 index 00000000..bd185e40 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_basalt_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_blackstone_bricks'}.png new file mode 100644 index 00000000..8df36ae3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_blackstone_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_blackstone_slabs'}.png new file mode 100644 index 00000000..437439d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_blackstone_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_blue_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_blue_ice_bricks'}.png new file mode 100644 index 00000000..9a1ab819 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_blue_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_blue_ice_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_blue_ice_slabs'}.png new file mode 100644 index 00000000..46a2fb03 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_blue_ice_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_borderless_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_borderless_bricks_bricks'}.png new file mode 100644 index 00000000..e7c1b8df Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_borderless_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_borderless_bricks_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_borderless_bricks_slabs'}.png new file mode 100644 index 00000000..2edf4e14 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_borderless_bricks_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_bricks_bricks'}.png new file mode 100644 index 00000000..9ee6c21b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_bricks_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_bricks_slabs'}.png new file mode 100644 index 00000000..ff2ce29b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_bricks_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_calcite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_calcite_bricks'}.png new file mode 100644 index 00000000..941693f2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_calcite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_calcite_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_calcite_slabs'}.png new file mode 100644 index 00000000..595823db Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_calcite_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_clay_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_clay_bricks'}.png new file mode 100644 index 00000000..56a1ba39 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_clay_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_clay_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_clay_slabs'}.png new file mode 100644 index 00000000..ef68f2ea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_clay_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_coal_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_coal_block_bricks'}.png new file mode 100644 index 00000000..e3728b30 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_coal_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_coal_block_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_coal_block_slabs'}.png new file mode 100644 index 00000000..98d4b7eb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_coal_block_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_cobblestone_bricks'}.png new file mode 100644 index 00000000..de4ea283 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_cobblestone_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_cobblestone_slabs'}.png new file mode 100644 index 00000000..d5f3b6e8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_cobblestone_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_crying_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_crying_obsidian_bricks'}.png new file mode 100644 index 00000000..cc674779 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_crying_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_crying_obsidian_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_crying_obsidian_slabs'}.png new file mode 100644 index 00000000..b3f93423 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_crying_obsidian_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_dark_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_dark_prismarine_bricks'}.png new file mode 100644 index 00000000..6916aa35 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_dark_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_dark_prismarine_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_dark_prismarine_slabs'}.png new file mode 100644 index 00000000..076c46a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_dark_prismarine_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_deepslate_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_deepslate_bricks'}.png new file mode 100644 index 00000000..e610518e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_deepslate_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_deepslate_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_deepslate_slabs'}.png new file mode 100644 index 00000000..e3440385 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_deepslate_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_diorite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_diorite_bricks'}.png new file mode 100644 index 00000000..bfc9a41b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_diorite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_diorite_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_diorite_slabs'}.png new file mode 100644 index 00000000..d6f1ffc1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_diorite_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_dirt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_dirt_bricks'}.png new file mode 100644 index 00000000..ffc00190 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_dirt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_dirt_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_dirt_slabs'}.png new file mode 100644 index 00000000..83c5d4bd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_dirt_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_dripstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_dripstone_block_bricks'}.png new file mode 100644 index 00000000..723d733a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_dripstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_dripstone_block_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_dripstone_block_slabs'}.png new file mode 100644 index 00000000..72ffae90 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_dripstone_block_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_end_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_end_stone_bricks'}.png new file mode 100644 index 00000000..8185c59f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_end_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_end_stone_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_end_stone_slabs'}.png new file mode 100644 index 00000000..3a9cb0b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_end_stone_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_gilded_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_gilded_blackstone_bricks'}.png new file mode 100644 index 00000000..cf5125af Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_gilded_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_gilded_blackstone_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_gilded_blackstone_slabs'}.png new file mode 100644 index 00000000..c2cf2eba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_gilded_blackstone_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_granite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_granite_bricks'}.png new file mode 100644 index 00000000..ac3b8809 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_granite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_granite_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_granite_slabs'}.png new file mode 100644 index 00000000..becbd3ea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_granite_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_ice_bricks'}.png new file mode 100644 index 00000000..58ca5155 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_ice_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_ice_slabs'}.png new file mode 100644 index 00000000..cd4d4083 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_ice_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_lapis_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_lapis_block_bricks'}.png new file mode 100644 index 00000000..974608dc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_lapis_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_lapis_block_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_lapis_block_slabs'}.png new file mode 100644 index 00000000..5dc67e56 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_lapis_block_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_lodestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_lodestone_bricks'}.png new file mode 100644 index 00000000..b1a23df1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_lodestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_lodestone_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_lodestone_slabs'}.png new file mode 100644 index 00000000..833b2403 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_lodestone_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_magma_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_magma_block_bricks'}.png new file mode 100644 index 00000000..bd13272f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_magma_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_magma_block_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_magma_block_slabs'}.png new file mode 100644 index 00000000..2b32703a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_magma_block_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_mossy_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_mossy_cobblestone_bricks'}.png new file mode 100644 index 00000000..ade6c528 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_mossy_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_mossy_cobblestone_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_mossy_cobblestone_slabs'}.png new file mode 100644 index 00000000..e3bb62c0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_mossy_cobblestone_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_mossy_stone_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_mossy_stone_bricks_bricks'}.png new file mode 100644 index 00000000..4fbd0db3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_mossy_stone_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_mossy_stone_bricks_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_mossy_stone_bricks_slabs'}.png new file mode 100644 index 00000000..23f6c86c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_mossy_stone_bricks_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_mud_bricks'}.png new file mode 100644 index 00000000..ea14ba33 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_mud_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_mud_bricks_bricks'}.png new file mode 100644 index 00000000..1305c6bf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_mud_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_nether_bricks_bricks'}.png new file mode 100644 index 00000000..2d3cf19c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_nether_bricks_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_nether_bricks_slabs'}.png new file mode 100644 index 00000000..9d55a9ec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_nether_bricks_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_netherrack_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_netherrack_bricks'}.png new file mode 100644 index 00000000..583c5d8b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_netherrack_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_netherrack_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_netherrack_slabs'}.png new file mode 100644 index 00000000..220899e3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_netherrack_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_obsidian_bricks'}.png new file mode 100644 index 00000000..9bfe0c5c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_obsidian_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_obsidian_slabs'}.png new file mode 100644 index 00000000..34b1ab3b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_obsidian_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_packed_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_packed_ice_bricks'}.png new file mode 100644 index 00000000..f90ffc3c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_packed_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_packed_ice_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_packed_ice_slabs'}.png new file mode 100644 index 00000000..998aa2a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_packed_ice_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_packed_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_packed_mud_bricks'}.png new file mode 100644 index 00000000..23e6920c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_packed_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_prismarine_bricks'}.png new file mode 100644 index 00000000..48f37060 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_prismarine_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_prismarine_slabs'}.png new file mode 100644 index 00000000..5be70f7a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_prismarine_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_purpur_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_purpur_block_bricks'}.png new file mode 100644 index 00000000..a2094e90 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_purpur_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_purpur_block_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_purpur_block_slabs'}.png new file mode 100644 index 00000000..3cbc5907 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_purpur_block_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_quartz_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_quartz_block_bricks'}.png new file mode 100644 index 00000000..0d8738b8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_quartz_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_quartz_block_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_quartz_block_slabs'}.png new file mode 100644 index 00000000..f128c1f6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_quartz_block_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_raw_copper_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_raw_copper_block_bricks'}.png new file mode 100644 index 00000000..d6e39c5e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_raw_copper_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_raw_copper_block_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_raw_copper_block_slabs'}.png new file mode 100644 index 00000000..c2031ed8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_raw_copper_block_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_raw_gold_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_raw_gold_block_bricks'}.png new file mode 100644 index 00000000..434c1c7b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_raw_gold_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_raw_gold_block_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_raw_gold_block_slabs'}.png new file mode 100644 index 00000000..b50f1a8d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_raw_gold_block_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_raw_iron_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_raw_iron_block_bricks'}.png new file mode 100644 index 00000000..a73b7e7c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_raw_iron_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_raw_iron_block_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_raw_iron_block_slabs'}.png new file mode 100644 index 00000000..6492bd15 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_raw_iron_block_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_red_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_red_nether_bricks_bricks'}.png new file mode 100644 index 00000000..f0dd4db6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_red_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_red_nether_bricks_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_red_nether_bricks_slabs'}.png new file mode 100644 index 00000000..09995f5d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_red_nether_bricks_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_red_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_red_sandstone_bricks'}.png new file mode 100644 index 00000000..f26cf557 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_red_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_red_sandstone_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_red_sandstone_slabs'}.png new file mode 100644 index 00000000..5f406f28 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_red_sandstone_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_redstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_redstone_block_bricks'}.png new file mode 100644 index 00000000..1dcd57be Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_redstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_redstone_block_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_redstone_block_slabs'}.png new file mode 100644 index 00000000..febff927 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_redstone_block_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_sandstone_bricks'}.png new file mode 100644 index 00000000..d19d915d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_sandstone_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_sandstone_slabs'}.png new file mode 100644 index 00000000..c0573f9a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_sandstone_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_smooth_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_smooth_stone_bricks'}.png new file mode 100644 index 00000000..fddd7b0d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_smooth_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_smooth_stone_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_smooth_stone_slabs'}.png new file mode 100644 index 00000000..a60dbce7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_smooth_stone_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_snow_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_snow_block_bricks'}.png new file mode 100644 index 00000000..8616e23e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_snow_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_snow_block_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_snow_block_slabs'}.png new file mode 100644 index 00000000..40cdaeb8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_snow_block_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_stone_bricks'}.png new file mode 100644 index 00000000..dc48df89 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_stone_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_stone_slabs'}.png new file mode 100644 index 00000000..074d8484 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_stone_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_tuff_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_tuff_bricks'}.png new file mode 100644 index 00000000..598385b4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_tuff_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_tuff_slabs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_tuff_slabs'}.png new file mode 100644 index 00000000..bf293c9d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_layered_tuff_slabs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_lodestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_lodestone_bricks'}.png new file mode 100644 index 00000000..8f6249d8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_lodestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_magma_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_magma_block_bricks'}.png new file mode 100644 index 00000000..62719317 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_magma_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_mossy_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_mossy_cobblestone_bricks'}.png new file mode 100644 index 00000000..1261b52a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_mossy_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_mossy_stone_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_mossy_stone_bricks_bricks'}.png new file mode 100644 index 00000000..c63cf629 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_mossy_stone_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_mud_bricks'}.png new file mode 100644 index 00000000..6fd244a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_mud_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_mud_bricks_bricks'}.png new file mode 100644 index 00000000..a3c83cd2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_mud_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_nether_bricks_bricks'}.png new file mode 100644 index 00000000..8dbd58f1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_netherrack_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_netherrack_bricks'}.png new file mode 100644 index 00000000..b8037a76 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_netherrack_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_obsidian_bricks'}.png new file mode 100644 index 00000000..b5187389 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_packed_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_packed_ice_bricks'}.png new file mode 100644 index 00000000..463b54bf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_packed_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_packed_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_packed_mud_bricks'}.png new file mode 100644 index 00000000..6a010c35 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_packed_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_prismarine_bricks'}.png new file mode 100644 index 00000000..2de92bfa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_purpur_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_purpur_block_bricks'}.png new file mode 100644 index 00000000..385b70fc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_purpur_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_quartz_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_quartz_block_bricks'}.png new file mode 100644 index 00000000..2c6ba6b9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_quartz_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_raw_copper_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_raw_copper_block_bricks'}.png new file mode 100644 index 00000000..10178c09 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_raw_copper_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_raw_gold_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_raw_gold_block_bricks'}.png new file mode 100644 index 00000000..27bd3237 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_raw_gold_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_raw_iron_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_raw_iron_block_bricks'}.png new file mode 100644 index 00000000..a16eeef9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_raw_iron_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_red_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_red_nether_bricks_bricks'}.png new file mode 100644 index 00000000..49ebb74d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_red_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_red_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_red_sandstone_bricks'}.png new file mode 100644 index 00000000..dc55e3ae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_red_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_redstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_redstone_block_bricks'}.png new file mode 100644 index 00000000..a639eb6d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_redstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_sandstone_bricks'}.png new file mode 100644 index 00000000..7d2d6d17 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_smooth_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_smooth_stone_bricks'}.png new file mode 100644 index 00000000..39eea53d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_smooth_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_smug_carved_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_smug_carved_pumpkin'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_smug_carved_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_smug_jack_o_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_smug_jack_o_lantern'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_smug_jack_o_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_snow_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_snow_block_bricks'}.png new file mode 100644 index 00000000..42d1b020 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_snow_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_stone_bricks'}.png new file mode 100644 index 00000000..8b4ea8d6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_tuff_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_tuff_bricks'}.png new file mode 100644 index 00000000..c420836d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tiny_tuff_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__traditional_carved_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__traditional_carved_pumpkin'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__traditional_carved_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__traditional_jack_o_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__traditional_jack_o_lantern'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__traditional_jack_o_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_black_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_black_terracotta'}.png new file mode 100644 index 00000000..51199dc4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_black_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_blue_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_blue_terracotta'}.png new file mode 100644 index 00000000..6fd1d1ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_blue_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_brown_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_brown_terracotta'}.png new file mode 100644 index 00000000..083d8dfa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_brown_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_cyan_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_cyan_terracotta'}.png new file mode 100644 index 00000000..cad1237c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_cyan_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_gray_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_gray_terracotta'}.png new file mode 100644 index 00000000..19dd2704 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_gray_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_green_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_green_terracotta'}.png new file mode 100644 index 00000000..936ec57a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_green_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_light_blue_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_light_blue_terracotta'}.png new file mode 100644 index 00000000..54f72b33 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_light_blue_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_light_gray_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_light_gray_terracotta'}.png new file mode 100644 index 00000000..32b44bed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_light_gray_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_lime_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_lime_terracotta'}.png new file mode 100644 index 00000000..f18fa737 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_lime_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_magenta_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_magenta_terracotta'}.png new file mode 100644 index 00000000..fb6c7b78 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_magenta_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_orange_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_orange_terracotta'}.png new file mode 100644 index 00000000..1fa1cc19 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_orange_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_pink_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_pink_terracotta'}.png new file mode 100644 index 00000000..7328b2e0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_pink_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_purple_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_purple_terracotta'}.png new file mode 100644 index 00000000..d6df3af4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_purple_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_red_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_red_terracotta'}.png new file mode 100644 index 00000000..40d015da Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_red_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_terracotta'}.png new file mode 100644 index 00000000..62bad0fe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_white_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_white_terracotta'}.png new file mode 100644 index 00000000..bf88a1f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_white_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_yellow_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_yellow_terracotta'}.png new file mode 100644 index 00000000..57148cb1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__triangular_yellow_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_black_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_black_wool'}.png new file mode 100644 index 00000000..75013ca3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_black_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_blue_wool'}.png new file mode 100644 index 00000000..eba5e8d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_brown_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_brown_wool'}.png new file mode 100644 index 00000000..5325863b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_brown_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_cyan_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_cyan_wool'}.png new file mode 100644 index 00000000..b20e2b26 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_cyan_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_gray_wool'}.png new file mode 100644 index 00000000..d36ad3e2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_green_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_green_wool'}.png new file mode 100644 index 00000000..03b3a5f2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_green_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_light_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_light_blue_wool'}.png new file mode 100644 index 00000000..cde1f951 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_light_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_light_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_light_gray_wool'}.png new file mode 100644 index 00000000..194072e8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_light_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_lime_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_lime_wool'}.png new file mode 100644 index 00000000..8e1448b5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_lime_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_magenta_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_magenta_wool'}.png new file mode 100644 index 00000000..96f7add2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_magenta_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_orange_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_orange_wool'}.png new file mode 100644 index 00000000..4ce03c70 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_orange_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_pink_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_pink_wool'}.png new file mode 100644 index 00000000..3fd12d8d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_pink_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_purple_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_purple_wool'}.png new file mode 100644 index 00000000..c4d4654c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_purple_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_red_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_red_wool'}.png new file mode 100644 index 00000000..fa5cd761 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_red_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_white_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_white_wool'}.png new file mode 100644 index 00000000..474cdb9e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_white_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_yellow_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_yellow_wool'}.png new file mode 100644 index 00000000..1d956afe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tripped_yellow_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_amethyst_block'}.png new file mode 100644 index 00000000..1db0624d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_ancient_debris'}.png new file mode 100644 index 00000000..c8f5cfed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_andesite'}.png new file mode 100644 index 00000000..5aeb6530 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_blackstone'}.png new file mode 100644 index 00000000..80c6665e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_blue_ice'}.png new file mode 100644 index 00000000..ab89ba49 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_borderless_bricks'}.png new file mode 100644 index 00000000..6b22a7f6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_bricks'}.png new file mode 100644 index 00000000..6b22a7f6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_calcite'}.png new file mode 100644 index 00000000..464fe157 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_clay'}.png new file mode 100644 index 00000000..bd539a4c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_coal_block'}.png new file mode 100644 index 00000000..1bd27e40 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_cobblestone'}.png new file mode 100644 index 00000000..d1589765 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_crying_obsidian'}.png new file mode 100644 index 00000000..2742577e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_dark_prismarine'}.png new file mode 100644 index 00000000..d0da297a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_deepslate'}.png new file mode 100644 index 00000000..8f57a62f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_diorite'}.png new file mode 100644 index 00000000..51bce1c0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_dirt'}.png new file mode 100644 index 00000000..6b0cde92 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_dripstone_block'}.png new file mode 100644 index 00000000..b8066c18 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_end_stone'}.png new file mode 100644 index 00000000..9cdfe70a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_gilded_blackstone'}.png new file mode 100644 index 00000000..489984ee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_granite'}.png new file mode 100644 index 00000000..5faea2e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_ice'}.png new file mode 100644 index 00000000..e3e1247d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_lapis_block'}.png new file mode 100644 index 00000000..febbaa58 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_lodestone'}.png new file mode 100644 index 00000000..0c06d024 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_magma_block'}.png new file mode 100644 index 00000000..b07fb61c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_mossy_cobblestone'}.png new file mode 100644 index 00000000..478e2e28 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_mossy_stone_bricks'}.png new file mode 100644 index 00000000..199973b4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_nether_bricks'}.png new file mode 100644 index 00000000..9d5af790 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_netherrack'}.png new file mode 100644 index 00000000..caa4d85f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_obsidian'}.png new file mode 100644 index 00000000..dbf2cc56 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_packed_ice'}.png new file mode 100644 index 00000000..4ba085b3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_prismarine'}.png new file mode 100644 index 00000000..11cf1691 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_purpur_block'}.png new file mode 100644 index 00000000..1f61dcb0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_quartz_block'}.png new file mode 100644 index 00000000..807be351 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_raw_copper_block'}.png new file mode 100644 index 00000000..06e82959 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_raw_gold_block'}.png new file mode 100644 index 00000000..3800b919 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_raw_iron_block'}.png new file mode 100644 index 00000000..675f943b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_red_nether_bricks'}.png new file mode 100644 index 00000000..4aca5b72 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_red_sandstone'}.png new file mode 100644 index 00000000..1475cdfd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_redstone_block'}.png new file mode 100644 index 00000000..6e13d7de Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_sandstone'}.png new file mode 100644 index 00000000..9d42e89a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_smooth_stone'}.png new file mode 100644 index 00000000..da67ef1b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_snow_block'}.png new file mode 100644 index 00000000..f02b91d5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_stone'}.png new file mode 100644 index 00000000..02cf7442 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_tuff'}.png new file mode 100644 index 00000000..a63d3274 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__trodden_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tropics_melon'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tropics_melon'}.png new file mode 100644 index 00000000..13de6d3a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tropics_melon'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tuff_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tuff_bricks'}.png new file mode 100644 index 00000000..d3d836e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tuff_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tuff_mini_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tuff_mini_tiles'}.png new file mode 100644 index 00000000..84d8e62a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tuff_mini_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tuff_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tuff_pillar'}.png new file mode 100644 index 00000000..d26ac54c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tuff_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tuff_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tuff_pillar_top'}.png new file mode 100644 index 00000000..e655514a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tuff_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tuff_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tuff_scales'}.png new file mode 100644 index 00000000..867ad331 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__tuff_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_amethyst_block'}.png new file mode 100644 index 00000000..45076ad3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_ancient_debris'}.png new file mode 100644 index 00000000..1d412f82 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_andesite'}.png new file mode 100644 index 00000000..4a0f422c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_basalt'}.png new file mode 100644 index 00000000..38522ee9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_blackstone'}.png new file mode 100644 index 00000000..17a3f377 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_blue_ice'}.png new file mode 100644 index 00000000..eedd1f87 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_borderless_bricks'}.png new file mode 100644 index 00000000..27ff85e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_bricks'}.png new file mode 100644 index 00000000..9c62dc83 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_calcite'}.png new file mode 100644 index 00000000..851af8f7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_clay'}.png new file mode 100644 index 00000000..c083f427 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_coal_block'}.png new file mode 100644 index 00000000..d4b6b2ea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_cobblestone'}.png new file mode 100644 index 00000000..f47d10f8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_crying_obsidian'}.png new file mode 100644 index 00000000..6095d79d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_dark_prismarine'}.png new file mode 100644 index 00000000..3ebcf3cf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_deepslate'}.png new file mode 100644 index 00000000..6b956826 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_diorite'}.png new file mode 100644 index 00000000..f52eb2f6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_dirt'}.png new file mode 100644 index 00000000..ef6e1dc1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_dripstone_block'}.png new file mode 100644 index 00000000..75198371 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_end_stone'}.png new file mode 100644 index 00000000..e42e3ee9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_gilded_blackstone'}.png new file mode 100644 index 00000000..1660c801 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_granite'}.png new file mode 100644 index 00000000..0afc060f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_ice'}.png new file mode 100644 index 00000000..c3e2f1dd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_lapis_block'}.png new file mode 100644 index 00000000..5ca922fc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_lodestone'}.png new file mode 100644 index 00000000..77de201e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_magma_block'}.png new file mode 100644 index 00000000..a88660f4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_mossy_cobblestone'}.png new file mode 100644 index 00000000..e55a51a0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_mossy_stone_bricks'}.png new file mode 100644 index 00000000..55b8f4de Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_mud'}.png new file mode 100644 index 00000000..12816868 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_mud_bricks'}.png new file mode 100644 index 00000000..b12e5591 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_nether_bricks'}.png new file mode 100644 index 00000000..ed639131 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_netherrack'}.png new file mode 100644 index 00000000..f9780d2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_obsidian'}.png new file mode 100644 index 00000000..000faf20 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_packed_ice'}.png new file mode 100644 index 00000000..569f8404 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_packed_mud'}.png new file mode 100644 index 00000000..58582d33 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_prismarine'}.png new file mode 100644 index 00000000..9b15273f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_purpur_block'}.png new file mode 100644 index 00000000..566fec5c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_quartz_block'}.png new file mode 100644 index 00000000..8f5bbc56 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_raw_copper_block'}.png new file mode 100644 index 00000000..4f71bc70 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_raw_gold_block'}.png new file mode 100644 index 00000000..a0a8ebff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_raw_iron_block'}.png new file mode 100644 index 00000000..37a94854 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_red_nether_bricks'}.png new file mode 100644 index 00000000..254c8655 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_red_sandstone'}.png new file mode 100644 index 00000000..1fd46b7f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_redstone_block'}.png new file mode 100644 index 00000000..bf914142 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_sandstone'}.png new file mode 100644 index 00000000..ebc01e2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_smooth_stone'}.png new file mode 100644 index 00000000..2552cc81 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_snow_block'}.png new file mode 100644 index 00000000..7643bde0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_stone'}.png new file mode 100644 index 00000000..55a22464 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_tuff'}.png new file mode 100644 index 00000000..20021b0b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__unamused_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__upside_down_carved_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__upside_down_carved_pumpkin'}.png new file mode 100644 index 00000000..4359b833 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__upside_down_carved_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__upside_down_jack_o_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__upside_down_jack_o_lantern'}.png new file mode 100644 index 00000000..4359b833 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__upside_down_jack_o_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_acacia_planks'}.png new file mode 100644 index 00000000..a5d5a310 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_bamboo_planks'}.png new file mode 100644 index 00000000..3a6d4b43 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_birch_planks'}.png new file mode 100644 index 00000000..10a6cc99 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_cherry_planks'}.png new file mode 100644 index 00000000..abfae970 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_crimson_planks'}.png new file mode 100644 index 00000000..d8eb37b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_dark_oak_planks'}.png new file mode 100644 index 00000000..fb43ac88 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_jungle_planks'}.png new file mode 100644 index 00000000..95215cc3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_mangrove_planks'}.png new file mode 100644 index 00000000..6a4733be Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_oak_planks'}.png new file mode 100644 index 00000000..24655c2a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_spruce_planks'}.png new file mode 100644 index 00000000..26d69e5e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_warped_planks'}.png new file mode 100644 index 00000000..57b04925 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__versailles_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_acacia_planks'}.png new file mode 100644 index 00000000..c76d249f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_bamboo_planks'}.png new file mode 100644 index 00000000..0e127590 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_birch_planks'}.png new file mode 100644 index 00000000..46c8d4bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_botanical_oak_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_botanical_oak_bookshelf'}.png new file mode 100644 index 00000000..c0a5f947 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_botanical_oak_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cherry_planks'}.png new file mode 100644 index 00000000..d478902c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_crimson_planks'}.png new file mode 100644 index 00000000..0864a109 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_amethyst_block'}.png new file mode 100644 index 00000000..6816d427 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_ancient_debris'}.png new file mode 100644 index 00000000..a67768e9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_andesite'}.png new file mode 100644 index 00000000..4245eb61 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_basalt'}.png new file mode 100644 index 00000000..7940acab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_blackstone'}.png new file mode 100644 index 00000000..ad2faff0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_blue_ice'}.png new file mode 100644 index 00000000..e814bc5f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_borderless_bricks'}.png new file mode 100644 index 00000000..25d6b224 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_bricks'}.png new file mode 100644 index 00000000..75dd82f7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_calcite'}.png new file mode 100644 index 00000000..f56a147e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_clay'}.png new file mode 100644 index 00000000..9cfe49e8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_coal_block'}.png new file mode 100644 index 00000000..df5dad58 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_cobblestone'}.png new file mode 100644 index 00000000..745fb2c2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_crying_obsidian'}.png new file mode 100644 index 00000000..0e3438d0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_dark_prismarine'}.png new file mode 100644 index 00000000..70f91872 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_deepslate'}.png new file mode 100644 index 00000000..8fa9e146 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_diorite'}.png new file mode 100644 index 00000000..c3d2e76b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_dirt'}.png new file mode 100644 index 00000000..99060692 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_dripstone_block'}.png new file mode 100644 index 00000000..724972c7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_end_stone'}.png new file mode 100644 index 00000000..fb00a8f7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_gilded_blackstone'}.png new file mode 100644 index 00000000..5f930428 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_granite'}.png new file mode 100644 index 00000000..164ab08d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_ice'}.png new file mode 100644 index 00000000..10ad4982 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_lapis_block'}.png new file mode 100644 index 00000000..ddc6c7eb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_lodestone'}.png new file mode 100644 index 00000000..b3492f4d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_magma_block'}.png new file mode 100644 index 00000000..cf4f02e9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_mossy_cobblestone'}.png new file mode 100644 index 00000000..457985aa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_mossy_stone_bricks'}.png new file mode 100644 index 00000000..f9c59460 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_mud'}.png new file mode 100644 index 00000000..7471681a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_mud_bricks'}.png new file mode 100644 index 00000000..eb881055 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_nether_bricks'}.png new file mode 100644 index 00000000..cbc9854e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_netherrack'}.png new file mode 100644 index 00000000..63ffa79b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_obsidian'}.png new file mode 100644 index 00000000..f568415f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_packed_ice'}.png new file mode 100644 index 00000000..fc2254f0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_packed_mud'}.png new file mode 100644 index 00000000..3c1883de Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_prismarine'}.png new file mode 100644 index 00000000..86fb83ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_purpur_block'}.png new file mode 100644 index 00000000..75f410f5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_quartz_block'}.png new file mode 100644 index 00000000..47c059d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_raw_copper_block'}.png new file mode 100644 index 00000000..578a9841 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_raw_gold_block'}.png new file mode 100644 index 00000000..1eaa9488 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_raw_iron_block'}.png new file mode 100644 index 00000000..d19bb66f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_red_nether_bricks'}.png new file mode 100644 index 00000000..6a28f9bc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_red_sandstone'}.png new file mode 100644 index 00000000..3a658912 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_redstone_block'}.png new file mode 100644 index 00000000..4c04bd89 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_sandstone'}.png new file mode 100644 index 00000000..42f5ee28 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_smooth_stone'}.png new file mode 100644 index 00000000..8a0c8c65 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_snow_block'}.png new file mode 100644 index 00000000..652c5637 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_stone'}.png new file mode 100644 index 00000000..c9f2c085 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_tuff'}.png new file mode 100644 index 00000000..63665ef2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_cut_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_dark_oak_planks'}.png new file mode 100644 index 00000000..d93f4f69 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_amethyst_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_amethyst_block_bricks'}.png new file mode 100644 index 00000000..8f95b14f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_amethyst_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_ancient_debris_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_ancient_debris_bricks'}.png new file mode 100644 index 00000000..feeab078 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_ancient_debris_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_andesite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_andesite_bricks'}.png new file mode 100644 index 00000000..d2452946 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_andesite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_basalt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_basalt_bricks'}.png new file mode 100644 index 00000000..0dbc5e53 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_basalt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_blackstone_bricks'}.png new file mode 100644 index 00000000..df9711de Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_blue_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_blue_ice_bricks'}.png new file mode 100644 index 00000000..3e9a4e59 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_blue_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_borderless_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_borderless_bricks_bricks'}.png new file mode 100644 index 00000000..7c859f3e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_borderless_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_bricks_bricks'}.png new file mode 100644 index 00000000..d59b62b0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_calcite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_calcite_bricks'}.png new file mode 100644 index 00000000..32f35b03 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_calcite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_clay_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_clay_bricks'}.png new file mode 100644 index 00000000..012f3205 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_clay_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_coal_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_coal_block_bricks'}.png new file mode 100644 index 00000000..2a0615c1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_coal_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_cobblestone_bricks'}.png new file mode 100644 index 00000000..1e230433 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_crying_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_crying_obsidian_bricks'}.png new file mode 100644 index 00000000..66847042 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_crying_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_dark_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_dark_prismarine_bricks'}.png new file mode 100644 index 00000000..1e6f1c28 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_dark_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_deepslate_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_deepslate_bricks'}.png new file mode 100644 index 00000000..17ac6320 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_deepslate_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_diorite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_diorite_bricks'}.png new file mode 100644 index 00000000..1ab94e55 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_diorite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_dirt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_dirt_bricks'}.png new file mode 100644 index 00000000..50705bb0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_dirt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_dripstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_dripstone_block_bricks'}.png new file mode 100644 index 00000000..8473d61d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_dripstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_end_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_end_stone_bricks'}.png new file mode 100644 index 00000000..e012af95 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_end_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_gilded_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_gilded_blackstone_bricks'}.png new file mode 100644 index 00000000..db85e991 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_gilded_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_granite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_granite_bricks'}.png new file mode 100644 index 00000000..623cac19 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_granite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_ice_bricks'}.png new file mode 100644 index 00000000..b0ae7424 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_lapis_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_lapis_block_bricks'}.png new file mode 100644 index 00000000..538cbba7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_lapis_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_lodestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_lodestone_bricks'}.png new file mode 100644 index 00000000..26e2ea59 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_lodestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_magma_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_magma_block_bricks'}.png new file mode 100644 index 00000000..edc31dea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_magma_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_mossy_cobblestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_mossy_cobblestone_bricks'}.png new file mode 100644 index 00000000..21527b56 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_mossy_cobblestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_mossy_stone_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_mossy_stone_bricks_bricks'}.png new file mode 100644 index 00000000..fe0744bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_mossy_stone_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_mud_bricks'}.png new file mode 100644 index 00000000..10ee3252 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_mud_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_mud_bricks_bricks'}.png new file mode 100644 index 00000000..98fa17b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_mud_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_nether_bricks_bricks'}.png new file mode 100644 index 00000000..fb77f72c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_netherrack_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_netherrack_bricks'}.png new file mode 100644 index 00000000..6432f2b9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_netherrack_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_obsidian_bricks'}.png new file mode 100644 index 00000000..a52919a3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_packed_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_packed_ice_bricks'}.png new file mode 100644 index 00000000..43c2f443 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_packed_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_packed_mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_packed_mud_bricks'}.png new file mode 100644 index 00000000..73bed121 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_packed_mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_prismarine_bricks'}.png new file mode 100644 index 00000000..d475c0e4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_purpur_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_purpur_block_bricks'}.png new file mode 100644 index 00000000..8209dad0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_purpur_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_quartz_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_quartz_block_bricks'}.png new file mode 100644 index 00000000..aafbd2e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_quartz_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_raw_copper_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_raw_copper_block_bricks'}.png new file mode 100644 index 00000000..b671180a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_raw_copper_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_raw_gold_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_raw_gold_block_bricks'}.png new file mode 100644 index 00000000..d0234081 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_raw_gold_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_raw_iron_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_raw_iron_block_bricks'}.png new file mode 100644 index 00000000..5f2af90b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_raw_iron_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_red_nether_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_red_nether_bricks_bricks'}.png new file mode 100644 index 00000000..5f95a2d3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_red_nether_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_red_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_red_sandstone_bricks'}.png new file mode 100644 index 00000000..6f77dacf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_red_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_redstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_redstone_block_bricks'}.png new file mode 100644 index 00000000..3d5e0009 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_redstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_sandstone_bricks'}.png new file mode 100644 index 00000000..97dd02e4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_smooth_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_smooth_stone_bricks'}.png new file mode 100644 index 00000000..7fa356c4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_smooth_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_snow_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_snow_block_bricks'}.png new file mode 100644 index 00000000..66d8e4d3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_snow_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_stone_bricks'}.png new file mode 100644 index 00000000..d6787688 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_tuff_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_tuff_bricks'}.png new file mode 100644 index 00000000..6b3a41fa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_disordered_tuff_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_jungle_planks'}.png new file mode 100644 index 00000000..653deaf0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_layered_stripped_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_layered_stripped_mangrove_log'}.png new file mode 100644 index 00000000..eeda68ea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_layered_stripped_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_leaded_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_leaded_glass'}.png new file mode 100644 index 00000000..343c52b8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_leaded_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_mangrove_planks'}.png new file mode 100644 index 00000000..7af264a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_mixed_oak_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_mixed_oak_bookshelf'}.png new file mode 100644 index 00000000..8d7ba51d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_mixed_oak_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_oak_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_oak_bookshelf'}.png new file mode 100644 index 00000000..4721c8b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_oak_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_oak_lighted_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_oak_lighted_bookshelf'}.png new file mode 100644 index 00000000..1be589ef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_oak_lighted_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_oak_planks'}.png new file mode 100644 index 00000000..6ac2173d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_oak_webbed_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_oak_webbed_bookshelf'}.png new file mode 100644 index 00000000..9f1381e5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_oak_webbed_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_spruce_planks'}.png new file mode 100644 index 00000000..42886ea9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_black_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_black_stained_glass'}.png new file mode 100644 index 00000000..6701bb54 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_black_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_blue_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_blue_stained_glass'}.png new file mode 100644 index 00000000..fc6711eb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_blue_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_brown_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_brown_stained_glass'}.png new file mode 100644 index 00000000..38ca3a4c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_brown_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_cyan_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_cyan_stained_glass'}.png new file mode 100644 index 00000000..1cd989c2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_cyan_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_gray_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_gray_stained_glass'}.png new file mode 100644 index 00000000..c7737a9b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_gray_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_green_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_green_stained_glass'}.png new file mode 100644 index 00000000..86313d95 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_green_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_light_blue_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_light_blue_stained_glass'}.png new file mode 100644 index 00000000..7f749487 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_light_blue_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_light_gray_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_light_gray_stained_glass'}.png new file mode 100644 index 00000000..27adbc60 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_light_gray_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_lime_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_lime_stained_glass'}.png new file mode 100644 index 00000000..472d7224 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_lime_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_magenta_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_magenta_stained_glass'}.png new file mode 100644 index 00000000..9ace2bc5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_magenta_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_orange_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_orange_stained_glass'}.png new file mode 100644 index 00000000..6ad60553 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_orange_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_pink_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_pink_stained_glass'}.png new file mode 100644 index 00000000..d1d8e0c1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_pink_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_purple_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_purple_stained_glass'}.png new file mode 100644 index 00000000..0a61d7e7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_purple_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_red_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_red_stained_glass'}.png new file mode 100644 index 00000000..e168724e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_red_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_white_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_white_stained_glass'}.png new file mode 100644 index 00000000..c0a10626 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_white_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_yellow_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_yellow_stained_glass'}.png new file mode 100644 index 00000000..d2294b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_stiped_yellow_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_warped_planks'}.png new file mode 100644 index 00000000..c38de82e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertical_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_acacia_planks'}.png new file mode 100644 index 00000000..026b8f9d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_bamboo_planks'}.png new file mode 100644 index 00000000..2bbb6f91 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_birch_planks'}.png new file mode 100644 index 00000000..fc615597 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_cherry_planks'}.png new file mode 100644 index 00000000..49465514 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_crimson_planks'}.png new file mode 100644 index 00000000..b0d0bc54 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_dark_oak_planks'}.png new file mode 100644 index 00000000..fb3d121a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_jungle_planks'}.png new file mode 100644 index 00000000..fea1404a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_mangrove_planks'}.png new file mode 100644 index 00000000..3a40219e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_oak_planks'}.png new file mode 100644 index 00000000..57ba34d0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_spruce_planks'}.png new file mode 100644 index 00000000..71109520 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_warped_planks'}.png new file mode 100644 index 00000000..39f28346 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__vertically_railed_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warm_mushroom_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warm_mushroom_stem'}.png new file mode 100644 index 00000000..176342a2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warm_mushroom_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_black_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_black_concrete'}.png new file mode 100644 index 00000000..625fa05a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_black_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_blue_concrete'}.png new file mode 100644 index 00000000..a49ff9c7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_brown_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_brown_concrete'}.png new file mode 100644 index 00000000..3fb4f15e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_brown_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_cyan_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_cyan_concrete'}.png new file mode 100644 index 00000000..e38e3bfb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_cyan_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_gray_concrete'}.png new file mode 100644 index 00000000..77594e4b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_green_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_green_concrete'}.png new file mode 100644 index 00000000..61ab2699 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_green_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_light_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_light_blue_concrete'}.png new file mode 100644 index 00000000..3d72d39e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_light_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_light_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_light_gray_concrete'}.png new file mode 100644 index 00000000..f537968a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_light_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_lime_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_lime_concrete'}.png new file mode 100644 index 00000000..85aa0161 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_lime_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_magenta_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_magenta_concrete'}.png new file mode 100644 index 00000000..258ee7d1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_magenta_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_orange_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_orange_concrete'}.png new file mode 100644 index 00000000..3a2dd132 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_orange_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_pink_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_pink_concrete'}.png new file mode 100644 index 00000000..07e6f932 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_pink_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_purple_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_purple_concrete'}.png new file mode 100644 index 00000000..fde73882 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_purple_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_red_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_red_concrete'}.png new file mode 100644 index 00000000..6529e815 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_red_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_white_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_white_concrete'}.png new file mode 100644 index 00000000..7ffc5d1b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_white_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_yellow_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_yellow_concrete'}.png new file mode 100644 index 00000000..07ca2455 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warning_yellow_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warped_planks_mosaic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warped_planks_mosaic'}.png new file mode 100644 index 00000000..e65b7b5c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warped_planks_mosaic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warped_planks_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warped_planks_panel'}.png new file mode 100644 index 00000000..3bc7536d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warped_planks_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warped_planks_shavings'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warped_planks_shavings'}.png new file mode 100644 index 00000000..25d02a3b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__warped_planks_shavings'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wart_dried_kelp_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wart_dried_kelp_block'}.png new file mode 100644 index 00000000..d02033f4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wart_dried_kelp_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__watching_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__watching_lodestone'}.png new file mode 100644 index 00000000..0f33024f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__watching_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_black_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_black_glazed_terracotta'}.png new file mode 100644 index 00000000..91433bbe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_black_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_blue_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_blue_glazed_terracotta'}.png new file mode 100644 index 00000000..77ee92b4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_blue_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_brown_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_brown_glazed_terracotta'}.png new file mode 100644 index 00000000..496ab26d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_brown_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_cyan_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_cyan_glazed_terracotta'}.png new file mode 100644 index 00000000..25f8f433 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_cyan_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_gray_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_gray_glazed_terracotta'}.png new file mode 100644 index 00000000..7ab82a31 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_gray_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_green_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_green_glazed_terracotta'}.png new file mode 100644 index 00000000..36a2a1a1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_green_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_light_blue_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_light_blue_glazed_terracotta'}.png new file mode 100644 index 00000000..afc495f6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_light_blue_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_light_gray_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_light_gray_glazed_terracotta'}.png new file mode 100644 index 00000000..11c4187c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_light_gray_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_lime_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_lime_glazed_terracotta'}.png new file mode 100644 index 00000000..c9daadc1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_lime_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_magenta_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_magenta_glazed_terracotta'}.png new file mode 100644 index 00000000..e580f209 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_magenta_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_orange_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_orange_glazed_terracotta'}.png new file mode 100644 index 00000000..c57a1343 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_orange_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_pink_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_pink_glazed_terracotta'}.png new file mode 100644 index 00000000..e8be8016 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_pink_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_purple_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_purple_glazed_terracotta'}.png new file mode 100644 index 00000000..6e287595 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_purple_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_red_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_red_glazed_terracotta'}.png new file mode 100644 index 00000000..92e844c9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_red_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_white_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_white_glazed_terracotta'}.png new file mode 100644 index 00000000..e8156221 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_white_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_yellow_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_yellow_glazed_terracotta'}.png new file mode 100644 index 00000000..d9a20258 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__waved_yellow_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_amethyst_block'}.png new file mode 100644 index 00000000..ea919f7e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_ancient_debris'}.png new file mode 100644 index 00000000..5f8dd49c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_andesite'}.png new file mode 100644 index 00000000..985cbc5c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_basalt'}.png new file mode 100644 index 00000000..f12359a2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_blue_ice'}.png new file mode 100644 index 00000000..06aa1c42 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_borderless_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_borderless_bricks'}.png new file mode 100644 index 00000000..ec7bf10c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_borderless_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_bricks'}.png new file mode 100644 index 00000000..ec7bf10c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_calcite'}.png new file mode 100644 index 00000000..0bfffcab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_clay'}.png new file mode 100644 index 00000000..72b94d6d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_coal_block'}.png new file mode 100644 index 00000000..ca278f61 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_cobblestone'}.png new file mode 100644 index 00000000..2479e663 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_crying_obsidian'}.png new file mode 100644 index 00000000..6d461c12 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_dark_prismarine'}.png new file mode 100644 index 00000000..088aa46e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_deepslate'}.png new file mode 100644 index 00000000..ab80a030 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_diorite'}.png new file mode 100644 index 00000000..f874db47 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_dirt'}.png new file mode 100644 index 00000000..eed517d0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_dripstone_block'}.png new file mode 100644 index 00000000..b4717ac6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_end_stone'}.png new file mode 100644 index 00000000..c9bff18a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_gilded_blackstone'}.png new file mode 100644 index 00000000..a913fc05 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_granite'}.png new file mode 100644 index 00000000..0f79ce79 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_ice'}.png new file mode 100644 index 00000000..1b4dbc51 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_lapis_block'}.png new file mode 100644 index 00000000..43f672de Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_lodestone'}.png new file mode 100644 index 00000000..dc9428a0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_magma_block'}.png new file mode 100644 index 00000000..2fd43ba4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_mossy_cobblestone'}.png new file mode 100644 index 00000000..f0c8f8b5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_mossy_stone_bricks'}.png new file mode 100644 index 00000000..0dfda0ba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_nether_bricks'}.png new file mode 100644 index 00000000..75ccd212 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_netherrack'}.png new file mode 100644 index 00000000..872518e0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_obsidian'}.png new file mode 100644 index 00000000..83a5fb77 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_packed_ice'}.png new file mode 100644 index 00000000..670f72ae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_prismarine'}.png new file mode 100644 index 00000000..e9f9e99e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_purpur_block'}.png new file mode 100644 index 00000000..c7aa06c8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_quartz_block'}.png new file mode 100644 index 00000000..aea1dfd4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_raw_copper_block'}.png new file mode 100644 index 00000000..9b917a4c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_raw_gold_block'}.png new file mode 100644 index 00000000..14dc63f2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_raw_iron_block'}.png new file mode 100644 index 00000000..89e4ac99 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_red_nether_bricks'}.png new file mode 100644 index 00000000..47266808 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_red_sandstone'}.png new file mode 100644 index 00000000..c92fe250 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_redstone_block'}.png new file mode 100644 index 00000000..5367a2f6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_sandstone'}.png new file mode 100644 index 00000000..6e50e8d1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_smooth_stone'}.png new file mode 100644 index 00000000..47e22f43 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_snow_block'}.png new file mode 100644 index 00000000..c472bf1e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_stone'}.png new file mode 100644 index 00000000..49f0b5b5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_tuff'}.png new file mode 100644 index 00000000..cf3376e6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weathered_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weaved_bone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weaved_bone_block'}.png new file mode 100644 index 00000000..7317ed8a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__weaved_bone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wet_red_sand'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wet_red_sand'}.png new file mode 100644 index 00000000..a57017e2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wet_red_sand'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wet_sand'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wet_sand'}.png new file mode 100644 index 00000000..4fd76726 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wet_sand'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_acacia_planks'}.png new file mode 100644 index 00000000..2f1a30e6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_bamboo_planks'}.png new file mode 100644 index 00000000..bfb11ec6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_birch_planks'}.png new file mode 100644 index 00000000..60d641af Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_cherry_planks'}.png new file mode 100644 index 00000000..6b1f0768 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_crimson_planks'}.png new file mode 100644 index 00000000..021b89cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_dark_oak_planks'}.png new file mode 100644 index 00000000..dbfa6db4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_jungle_planks'}.png new file mode 100644 index 00000000..a30df25e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_oak_planks'}.png new file mode 100644 index 00000000..86198d36 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_spruce_planks'}.png new file mode 100644 index 00000000..02722907 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_warped_planks'}.png new file mode 100644 index 00000000..06a46ef5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__whirlwind_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_concrete_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_concrete_bricks'}.png new file mode 100644 index 00000000..0140d50a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_concrete_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_concrete_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_concrete_panel'}.png new file mode 100644 index 00000000..a4836734 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_concrete_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_concrete_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_concrete_pillar'}.png new file mode 100644 index 00000000..74099daf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_concrete_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_concrete_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_concrete_tiles'}.png new file mode 100644 index 00000000..2750aa43 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_concrete_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_dusted_brown_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_dusted_brown_mushroom_block'}.png new file mode 100644 index 00000000..5e446820 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_dusted_brown_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_flower_acacia_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_flower_acacia_leaves'}.png new file mode 100644 index 00000000..ca8ed717 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_flower_acacia_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_flower_birch_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_flower_birch_leaves'}.png new file mode 100644 index 00000000..28a31a72 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_flower_birch_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_flower_dark_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_flower_dark_oak_leaves'}.png new file mode 100644 index 00000000..5c8eb3bf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_flower_dark_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_flower_jungle_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_flower_jungle_leaves'}.png new file mode 100644 index 00000000..85a0906b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_flower_jungle_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_flower_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_flower_oak_leaves'}.png new file mode 100644 index 00000000..091b6233 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_flower_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_flower_spruce_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_flower_spruce_leaves'}.png new file mode 100644 index 00000000..5b518521 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_flower_spruce_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_freckled_brown_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_freckled_brown_mushroom_block'}.png new file mode 100644 index 00000000..5ce1ef2e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_freckled_brown_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_glazed_terracotta_pillar_sides'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_glazed_terracotta_pillar_sides'}.png new file mode 100644 index 00000000..00df7696 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_glazed_terracotta_pillar_sides'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_glazed_terracotta_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_glazed_terracotta_pillar_top'}.png new file mode 100644 index 00000000..cc5f9ad6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_glazed_terracotta_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_glazed_terracotta_smooth_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_glazed_terracotta_smooth_tiles'}.png new file mode 100644 index 00000000..5c8b4987 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_glazed_terracotta_smooth_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_glazed_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_glazed_terracotta_tiles'}.png new file mode 100644 index 00000000..fcc1e488 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_glazed_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_sand'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_sand'}.png new file mode 100644 index 00000000..e271c3e3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_sand'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_spotted_brown_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_spotted_brown_mushroom_block'}.png new file mode 100644 index 00000000..7c42f33a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_spotted_brown_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_sprinkled_brown_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_sprinkled_brown_mushroom_block'}.png new file mode 100644 index 00000000..537507ba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_sprinkled_brown_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_terracotta_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_terracotta_bricks'}.png new file mode 100644 index 00000000..d87a0879 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_terracotta_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_terracotta_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_terracotta_column'}.png new file mode 100644 index 00000000..767235ec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_terracotta_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_terracotta_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_terracotta_pillar'}.png new file mode 100644 index 00000000..5d33884a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_terracotta_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_terracotta_tile'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_terracotta_tile'}.png new file mode 100644 index 00000000..e1ff0aec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_terracotta_tile'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_terracotta_tiles'}.png new file mode 100644 index 00000000..64390ef3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__white_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_acacia_planks'}.png new file mode 100644 index 00000000..1e62074a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_bamboo_planks'}.png new file mode 100644 index 00000000..3c41b431 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_birch_planks'}.png new file mode 100644 index 00000000..3e5c9a30 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_black_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_black_wool'}.png new file mode 100644 index 00000000..98c20808 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_black_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_blue_wool'}.png new file mode 100644 index 00000000..ba34b4c9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_brown_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_brown_wool'}.png new file mode 100644 index 00000000..dd9bbfe6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_brown_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_cherry_planks'}.png new file mode 100644 index 00000000..eb575481 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_crimson_planks'}.png new file mode 100644 index 00000000..7dac9557 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_cyan_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_cyan_wool'}.png new file mode 100644 index 00000000..e4ff6526 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_cyan_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_dark_oak_planks'}.png new file mode 100644 index 00000000..86e2c74c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_gray_wool'}.png new file mode 100644 index 00000000..123aa6b6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_green_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_green_wool'}.png new file mode 100644 index 00000000..c2773cef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_green_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_jungle_planks'}.png new file mode 100644 index 00000000..763edb0c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_light_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_light_blue_wool'}.png new file mode 100644 index 00000000..42c286f6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_light_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_light_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_light_gray_wool'}.png new file mode 100644 index 00000000..260cc875 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_light_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_lime_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_lime_wool'}.png new file mode 100644 index 00000000..72de1b54 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_lime_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_magenta_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_magenta_wool'}.png new file mode 100644 index 00000000..195380df Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_magenta_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_oak_planks'}.png new file mode 100644 index 00000000..0bf40a4c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_orange_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_orange_wool'}.png new file mode 100644 index 00000000..a62d65b2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_orange_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_pink_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_pink_wool'}.png new file mode 100644 index 00000000..d52bfce6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_pink_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_purple_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_purple_wool'}.png new file mode 100644 index 00000000..4b81f396 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_purple_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_red_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_red_wool'}.png new file mode 100644 index 00000000..5de9beea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_red_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_spruce_planks'}.png new file mode 100644 index 00000000..eeb1a1fc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_warped_planks'}.png new file mode 100644 index 00000000..e346b7af Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_white_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_white_wool'}.png new file mode 100644 index 00000000..67186102 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_white_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_yellow_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_yellow_wool'}.png new file mode 100644 index 00000000..635886ed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wickered_yellow_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wide_eyed_carved_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wide_eyed_carved_pumpkin'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wide_eyed_carved_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wide_eyed_jack_o_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wide_eyed_jack_o_lantern'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wide_eyed_jack_o_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wider_diamond_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wider_diamond_lodestone'}.png new file mode 100644 index 00000000..f05a4cca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wider_diamond_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wider_ring_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wider_ring_lodestone'}.png new file mode 100644 index 00000000..6557faae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wider_ring_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wider_watching_lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wider_watching_lodestone'}.png new file mode 100644 index 00000000..f639c273 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wider_watching_lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_black_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_black_wool'}.png new file mode 100644 index 00000000..d67c4963 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_black_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_blue_wool'}.png new file mode 100644 index 00000000..e98d3c06 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_brown_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_brown_wool'}.png new file mode 100644 index 00000000..c408bb8b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_brown_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_cyan_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_cyan_wool'}.png new file mode 100644 index 00000000..6c5f21b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_cyan_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_gray_wool'}.png new file mode 100644 index 00000000..059a3e07 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_green_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_green_wool'}.png new file mode 100644 index 00000000..ffc8e7bc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_green_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_light_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_light_blue_wool'}.png new file mode 100644 index 00000000..ac7c2cab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_light_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_light_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_light_gray_wool'}.png new file mode 100644 index 00000000..d316849a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_light_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_lime_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_lime_wool'}.png new file mode 100644 index 00000000..ae5c6f66 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_lime_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_magenta_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_magenta_wool'}.png new file mode 100644 index 00000000..7a7bd95a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_magenta_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_orange_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_orange_wool'}.png new file mode 100644 index 00000000..b1be32b8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_orange_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_pink_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_pink_wool'}.png new file mode 100644 index 00000000..92b75fd2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_pink_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_purple_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_purple_wool'}.png new file mode 100644 index 00000000..0ed21fa0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_purple_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_red_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_red_wool'}.png new file mode 100644 index 00000000..1674e83c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_red_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_white_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_white_wool'}.png new file mode 100644 index 00000000..9f80d62e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_white_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_yellow_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_yellow_wool'}.png new file mode 100644 index 00000000..6e7e1cf4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__windmill_yellow_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_black_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_black_concrete'}.png new file mode 100644 index 00000000..e854b42e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_black_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_blue_concrete'}.png new file mode 100644 index 00000000..3ac0d5a1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_brown_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_brown_concrete'}.png new file mode 100644 index 00000000..74d7f8d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_brown_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_cyan_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_cyan_concrete'}.png new file mode 100644 index 00000000..167be1c4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_cyan_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_gray_concrete'}.png new file mode 100644 index 00000000..0c4efa8e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_green_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_green_concrete'}.png new file mode 100644 index 00000000..07b81cd6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_green_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_light_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_light_blue_concrete'}.png new file mode 100644 index 00000000..19c7f7d8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_light_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_light_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_light_gray_concrete'}.png new file mode 100644 index 00000000..3c691c50 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_light_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_lime_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_lime_concrete'}.png new file mode 100644 index 00000000..9d452f9c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_lime_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_magenta_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_magenta_concrete'}.png new file mode 100644 index 00000000..fd43153d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_magenta_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_orange_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_orange_concrete'}.png new file mode 100644 index 00000000..a01e8d1d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_orange_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_pink_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_pink_concrete'}.png new file mode 100644 index 00000000..6dad4fc9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_pink_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_purple_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_purple_concrete'}.png new file mode 100644 index 00000000..605dd00b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_purple_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_red_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_red_concrete'}.png new file mode 100644 index 00000000..6312a966 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_red_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_white_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_white_concrete'}.png new file mode 100644 index 00000000..0fa91a81 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_white_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_yellow_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_yellow_concrete'}.png new file mode 100644 index 00000000..7ccb1c90 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wired_yellow_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_acacia_log'}.png new file mode 100644 index 00000000..92129a39 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_birch_log'}.png new file mode 100644 index 00000000..f11b18a9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_cherry_log'}.png new file mode 100644 index 00000000..76507927 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_crimson_stem'}.png new file mode 100644 index 00000000..d34e27ed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_dark_oak_log'}.png new file mode 100644 index 00000000..ef1db2d9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_jungle_log'}.png new file mode 100644 index 00000000..f865cdda Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_mangrove_log'}.png new file mode 100644 index 00000000..d3e57198 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_oak_log'}.png new file mode 100644 index 00000000..46f8ff7b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_spruce_log'}.png new file mode 100644 index 00000000..81f88a5e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_warped_stem'}.png new file mode 100644 index 00000000..2d6f6809 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wise_stripped_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wither_engraved_glowstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wither_engraved_glowstone'}.png new file mode 100644 index 00000000..b5adaa3b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__wither_engraved_glowstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_black_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_black_wool'}.png new file mode 100644 index 00000000..be138eb2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_black_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_blue_wool'}.png new file mode 100644 index 00000000..ea793260 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_brown_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_brown_wool'}.png new file mode 100644 index 00000000..088a4a16 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_brown_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_cyan_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_cyan_wool'}.png new file mode 100644 index 00000000..1564a5fc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_cyan_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_gray_wool'}.png new file mode 100644 index 00000000..467499f8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_green_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_green_wool'}.png new file mode 100644 index 00000000..5ff957ff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_green_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_light_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_light_blue_wool'}.png new file mode 100644 index 00000000..4f4aaf57 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_light_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_light_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_light_gray_wool'}.png new file mode 100644 index 00000000..0e56e388 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_light_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_lime_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_lime_wool'}.png new file mode 100644 index 00000000..bffd060e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_lime_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_magenta_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_magenta_wool'}.png new file mode 100644 index 00000000..ee641ff7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_magenta_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_orange_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_orange_wool'}.png new file mode 100644 index 00000000..4b65e349 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_orange_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_pink_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_pink_wool'}.png new file mode 100644 index 00000000..13a16ff0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_pink_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_purple_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_purple_wool'}.png new file mode 100644 index 00000000..99f50ed0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_purple_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_red_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_red_wool'}.png new file mode 100644 index 00000000..9b54327b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_red_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_white_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_white_wool'}.png new file mode 100644 index 00000000..638dc23e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_white_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_yellow_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_yellow_wool'}.png new file mode 100644 index 00000000..34619fc4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woved_yellow_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_black_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_black_stained_glass'}.png new file mode 100644 index 00000000..05cc4bcb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_black_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_blue_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_blue_stained_glass'}.png new file mode 100644 index 00000000..ec7fe40e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_blue_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_brown_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_brown_stained_glass'}.png new file mode 100644 index 00000000..457f9aa5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_brown_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_cyan_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_cyan_stained_glass'}.png new file mode 100644 index 00000000..3e49c955 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_cyan_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_gray_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_gray_stained_glass'}.png new file mode 100644 index 00000000..c2e2a73a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_gray_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_green_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_green_stained_glass'}.png new file mode 100644 index 00000000..b3ce72bf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_green_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_light_blue_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_light_blue_stained_glass'}.png new file mode 100644 index 00000000..64ea7833 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_light_blue_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_light_gray_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_light_gray_stained_glass'}.png new file mode 100644 index 00000000..7fd13eb4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_light_gray_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_lime_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_lime_stained_glass'}.png new file mode 100644 index 00000000..86014dfb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_lime_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_magenta_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_magenta_stained_glass'}.png new file mode 100644 index 00000000..ab9ec696 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_magenta_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_orange_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_orange_stained_glass'}.png new file mode 100644 index 00000000..00f552cc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_orange_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_pink_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_pink_stained_glass'}.png new file mode 100644 index 00000000..3c985cab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_pink_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_purple_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_purple_stained_glass'}.png new file mode 100644 index 00000000..7f3d8921 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_purple_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_red_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_red_stained_glass'}.png new file mode 100644 index 00000000..9274fcb8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_red_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_white_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_white_stained_glass'}.png new file mode 100644 index 00000000..07afcf8f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_white_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_yellow_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_yellow_stained_glass'}.png new file mode 100644 index 00000000..e1f69de7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__woven_yellow_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_concrete_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_concrete_bricks'}.png new file mode 100644 index 00000000..c6242e96 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_concrete_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_concrete_panel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_concrete_panel'}.png new file mode 100644 index 00000000..0e494b42 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_concrete_panel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_concrete_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_concrete_pillar'}.png new file mode 100644 index 00000000..391b6cd0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_concrete_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_concrete_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_concrete_tiles'}.png new file mode 100644 index 00000000..3632340e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_concrete_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_glazed_terracotta_pillar_sides'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_glazed_terracotta_pillar_sides'}.png new file mode 100644 index 00000000..76fc395c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_glazed_terracotta_pillar_sides'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_glazed_terracotta_pillar_top'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_glazed_terracotta_pillar_top'}.png new file mode 100644 index 00000000..6fd3dfdf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_glazed_terracotta_pillar_top'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_glazed_terracotta_smooth_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_glazed_terracotta_smooth_tiles'}.png new file mode 100644 index 00000000..9cec2f29 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_glazed_terracotta_smooth_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_glazed_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_glazed_terracotta_tiles'}.png new file mode 100644 index 00000000..62c79860 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_glazed_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_moss_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_moss_block'}.png new file mode 100644 index 00000000..148f617e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_moss_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_terracotta_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_terracotta_bricks'}.png new file mode 100644 index 00000000..8a495f86 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_terracotta_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_terracotta_column'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_terracotta_column'}.png new file mode 100644 index 00000000..d1013803 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_terracotta_column'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_terracotta_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_terracotta_pillar'}.png new file mode 100644 index 00000000..42c95249 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_terracotta_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_terracotta_tile'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_terracotta_tile'}.png new file mode 100644 index 00000000..a0fa55db Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_terracotta_tile'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_terracotta_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_terracotta_tiles'}.png new file mode 100644 index 00000000..41da092c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'chipped__yellow_terracotta_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass'}.png new file mode 100644 index 00000000..a8e537b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_black'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_black'}.png new file mode 100644 index 00000000..7770f169 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_black'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_blue'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_blue'}.png new file mode 100644 index 00000000..27b964ec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_blue'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_brown'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_brown'}.png new file mode 100644 index 00000000..110d64c4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_brown'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_cyan'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_cyan'}.png new file mode 100644 index 00000000..c755546d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_cyan'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_gray'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_gray'}.png new file mode 100644 index 00000000..a9127b24 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_gray'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_green'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_green'}.png new file mode 100644 index 00000000..d6fc5ca1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_green'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_light_blue'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_light_blue'}.png new file mode 100644 index 00000000..79d48299 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_light_blue'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_light_gray'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_light_gray'}.png new file mode 100644 index 00000000..e7c7a9ca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_light_gray'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_lime'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_lime'}.png new file mode 100644 index 00000000..3015fd48 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_lime'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_magenta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_magenta'}.png new file mode 100644 index 00000000..90dd2e86 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_magenta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_orange'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_orange'}.png new file mode 100644 index 00000000..f777608c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_orange'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_pink'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_pink'}.png new file mode 100644 index 00000000..8a3bf32e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_pink'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_purple'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_purple'}.png new file mode 100644 index 00000000..16339573 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_purple'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_red'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_red'}.png new file mode 100644 index 00000000..274c7dab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_red'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_white'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_white'}.png new file mode 100644 index 00000000..3b4cbb32 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_white'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_yellow'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_yellow'}.png new file mode 100644 index 00000000..43429669 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__borderless_glass_yellow'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass'}.png new file mode 100644 index 00000000..4c76f1f0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_black'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_black'}.png new file mode 100644 index 00000000..b6cd04e4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_black'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_blue'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_blue'}.png new file mode 100644 index 00000000..d03e2438 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_blue'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_brown'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_brown'}.png new file mode 100644 index 00000000..0b2a4e8f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_brown'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_cyan'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_cyan'}.png new file mode 100644 index 00000000..70ebe517 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_cyan'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_gray'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_gray'}.png new file mode 100644 index 00000000..0f4a5da7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_gray'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_green'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_green'}.png new file mode 100644 index 00000000..559a4358 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_green'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_light_blue'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_light_blue'}.png new file mode 100644 index 00000000..edcd4daa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_light_blue'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_light_gray'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_light_gray'}.png new file mode 100644 index 00000000..2d3be15a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_light_gray'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_lime'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_lime'}.png new file mode 100644 index 00000000..76701f58 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_lime'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_magenta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_magenta'}.png new file mode 100644 index 00000000..6d8421d8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_magenta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_orange'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_orange'}.png new file mode 100644 index 00000000..db0ea374 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_orange'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_pink'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_pink'}.png new file mode 100644 index 00000000..8e509fff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_pink'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_purple'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_purple'}.png new file mode 100644 index 00000000..80b51d14 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_purple'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_red'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_red'}.png new file mode 100644 index 00000000..ec0ac0e9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_red'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_white'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_white'}.png new file mode 100644 index 00000000..8429c28a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_white'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_yellow'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_yellow'}.png new file mode 100644 index 00000000..f6f354e4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__clear_glass_yellow'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass'}.png new file mode 100644 index 00000000..ee17fd59 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_black'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_black'}.png new file mode 100644 index 00000000..502860f5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_black'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_blue'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_blue'}.png new file mode 100644 index 00000000..d815673b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_blue'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_brown'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_brown'}.png new file mode 100644 index 00000000..09458b29 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_brown'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_cyan'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_cyan'}.png new file mode 100644 index 00000000..19ddbe3a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_cyan'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_gray'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_gray'}.png new file mode 100644 index 00000000..5da22d92 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_gray'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_green'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_green'}.png new file mode 100644 index 00000000..aa95ccaf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_green'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_light_blue'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_light_blue'}.png new file mode 100644 index 00000000..d38a4228 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_light_blue'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_light_gray'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_light_gray'}.png new file mode 100644 index 00000000..a27f7934 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_light_gray'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_lime'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_lime'}.png new file mode 100644 index 00000000..93f4837e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_lime'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_magenta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_magenta'}.png new file mode 100644 index 00000000..9baf8cec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_magenta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_orange'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_orange'}.png new file mode 100644 index 00000000..66f24138 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_orange'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_pink'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_pink'}.png new file mode 100644 index 00000000..b2b86663 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_pink'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_purple'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_purple'}.png new file mode 100644 index 00000000..bc29fa66 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_purple'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_red'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_red'}.png new file mode 100644 index 00000000..37658fe4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_red'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_white'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_white'}.png new file mode 100644 index 00000000..131396e2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_white'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_yellow'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_yellow'}.png new file mode 100644 index 00000000..c08b12ce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__scratched_glass_yellow'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass'}.png new file mode 100644 index 00000000..ec3052bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_black'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_black'}.png new file mode 100644 index 00000000..7798470b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_black'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_blue'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_blue'}.png new file mode 100644 index 00000000..8de7927c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_blue'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_brown'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_brown'}.png new file mode 100644 index 00000000..68a7e053 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_brown'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_cyan'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_cyan'}.png new file mode 100644 index 00000000..ad16aad2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_cyan'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_gray'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_gray'}.png new file mode 100644 index 00000000..ffb4f9c4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_gray'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_green'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_green'}.png new file mode 100644 index 00000000..fe7b3d3e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_green'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_light_blue'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_light_blue'}.png new file mode 100644 index 00000000..203cda1b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_light_blue'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_light_gray'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_light_gray'}.png new file mode 100644 index 00000000..318764ab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_light_gray'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_lime'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_lime'}.png new file mode 100644 index 00000000..40293a50 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_lime'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_magenta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_magenta'}.png new file mode 100644 index 00000000..e8d577a0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_magenta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_orange'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_orange'}.png new file mode 100644 index 00000000..8b55fe0f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_orange'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_pink'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_pink'}.png new file mode 100644 index 00000000..849ea718 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_pink'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_purple'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_purple'}.png new file mode 100644 index 00000000..71d0276b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_purple'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_red'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_red'}.png new file mode 100644 index 00000000..a702d80b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_red'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_white'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_white'}.png new file mode 100644 index 00000000..073cb712 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_white'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_yellow'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_yellow'}.png new file mode 100644 index 00000000..ab50ebaa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'connectedglass__tinted_borderless_glass_yellow'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'corn_delight__corn_crate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'corn_delight__corn_crate'}.png new file mode 100644 index 00000000..06781117 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'corn_delight__corn_crate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'corn_delight__corn_kernel_bag'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'corn_delight__corn_kernel_bag'}.png new file mode 100644 index 00000000..10e5d932 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'corn_delight__corn_kernel_bag'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__acacia_window'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__acacia_window'}.png new file mode 100644 index 00000000..366ffb27 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__acacia_window'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__andesite_alloy_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__andesite_alloy_block'}.png new file mode 100644 index 00000000..2359143b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__andesite_alloy_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__andesite_casing'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__andesite_casing'}.png new file mode 100644 index 00000000..89cea1d5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__andesite_casing'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__andesite_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__andesite_pillar'}.png new file mode 100644 index 00000000..224346fc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__andesite_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__asurine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__asurine'}.png new file mode 100644 index 00000000..af8b04ab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__asurine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__asurine_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__asurine_pillar'}.png new file mode 100644 index 00000000..49711f55 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__asurine_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__bamboo_window'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__bamboo_window'}.png new file mode 100644 index 00000000..dfa0b9b4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__bamboo_window'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__birch_window'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__birch_window'}.png new file mode 100644 index 00000000..ea3623fa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__birch_window'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__bound_cardboard_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__bound_cardboard_block'}.png new file mode 100644 index 00000000..c81e6f30 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__bound_cardboard_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__brass_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__brass_block'}.png new file mode 100644 index 00000000..ce76a10e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__brass_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__brass_casing'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__brass_casing'}.png new file mode 100644 index 00000000..f6c860b9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__brass_casing'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__calcite_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__calcite_pillar'}.png new file mode 100644 index 00000000..234ed5ef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__calcite_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cardboard_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cardboard_block'}.png new file mode 100644 index 00000000..696ccd42 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cardboard_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cherry_window'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cherry_window'}.png new file mode 100644 index 00000000..c0154665 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cherry_window'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__copper_casing'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__copper_casing'}.png new file mode 100644 index 00000000..0a162c40 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__copper_casing'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__copper_shingles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__copper_shingles'}.png new file mode 100644 index 00000000..f959be93 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__copper_shingles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__copper_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__copper_tiles'}.png new file mode 100644 index 00000000..193c4cc5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__copper_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__crimsite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__crimsite'}.png new file mode 100644 index 00000000..33c2a26f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__crimsite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__crimsite_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__crimsite_pillar'}.png new file mode 100644 index 00000000..61af10f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__crimsite_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__crimson_window'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__crimson_window'}.png new file mode 100644 index 00000000..54d70e0c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__crimson_window'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_andesite'}.png new file mode 100644 index 00000000..0572e56f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_andesite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_andesite_bricks'}.png new file mode 100644 index 00000000..d6e48170 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_andesite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_asurine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_asurine'}.png new file mode 100644 index 00000000..58b5ec93 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_asurine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_asurine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_asurine_bricks'}.png new file mode 100644 index 00000000..6e8237fa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_asurine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_calcite'}.png new file mode 100644 index 00000000..17adc263 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_calcite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_calcite_bricks'}.png new file mode 100644 index 00000000..6dc3708e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_calcite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_crimsite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_crimsite'}.png new file mode 100644 index 00000000..8f6fcba5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_crimsite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_crimsite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_crimsite_bricks'}.png new file mode 100644 index 00000000..4939c1aa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_crimsite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_deepslate'}.png new file mode 100644 index 00000000..821e3570 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_deepslate_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_deepslate_bricks'}.png new file mode 100644 index 00000000..315db09f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_deepslate_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_diorite'}.png new file mode 100644 index 00000000..199f31aa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_diorite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_diorite_bricks'}.png new file mode 100644 index 00000000..d3398edf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_diorite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_dripstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_dripstone'}.png new file mode 100644 index 00000000..f8b5b5ea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_dripstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_dripstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_dripstone_bricks'}.png new file mode 100644 index 00000000..17075d36 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_dripstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_granite'}.png new file mode 100644 index 00000000..f09f2afd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_granite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_granite_bricks'}.png new file mode 100644 index 00000000..3f49bd8e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_granite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_limestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_limestone'}.png new file mode 100644 index 00000000..280e06eb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_limestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_limestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_limestone_bricks'}.png new file mode 100644 index 00000000..846689ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_limestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_ochrum'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_ochrum'}.png new file mode 100644 index 00000000..f96fbf05 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_ochrum'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_ochrum_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_ochrum_bricks'}.png new file mode 100644 index 00000000..da5e865c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_ochrum_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_scorchia'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_scorchia'}.png new file mode 100644 index 00000000..d164a310 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_scorchia'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_scorchia_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_scorchia_bricks'}.png new file mode 100644 index 00000000..079a9f0b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_scorchia_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_scoria'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_scoria'}.png new file mode 100644 index 00000000..801629b3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_scoria'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_scoria_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_scoria_bricks'}.png new file mode 100644 index 00000000..47622cd8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_scoria_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_tuff'}.png new file mode 100644 index 00000000..f4822312 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_tuff_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_tuff_bricks'}.png new file mode 100644 index 00000000..d65757c4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_tuff_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_veridium'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_veridium'}.png new file mode 100644 index 00000000..d682626a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_veridium'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_veridium_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_veridium_bricks'}.png new file mode 100644 index 00000000..029b71bf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__cut_veridium_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__dark_oak_window'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__dark_oak_window'}.png new file mode 100644 index 00000000..6fb975a1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__dark_oak_window'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__deepslate_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__deepslate_pillar'}.png new file mode 100644 index 00000000..40ecc74f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__deepslate_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__deepslate_zinc_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__deepslate_zinc_ore'}.png new file mode 100644 index 00000000..5623380c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__deepslate_zinc_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__diorite_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__diorite_pillar'}.png new file mode 100644 index 00000000..a656db8d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__diorite_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__dripstone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__dripstone_pillar'}.png new file mode 100644 index 00000000..dd121734 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__dripstone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__experience_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__experience_block'}.png new file mode 100644 index 00000000..b402899b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__experience_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__exposed_copper_shingles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__exposed_copper_shingles'}.png new file mode 100644 index 00000000..babff6f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__exposed_copper_shingles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__exposed_copper_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__exposed_copper_tiles'}.png new file mode 100644 index 00000000..d8571179 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__exposed_copper_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__framed_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__framed_glass'}.png new file mode 100644 index 00000000..20cc86fc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__framed_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__granite_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__granite_pillar'}.png new file mode 100644 index 00000000..14f86b83 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__granite_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__horizontal_framed_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__horizontal_framed_glass'}.png new file mode 100644 index 00000000..b4f4abca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__horizontal_framed_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__industrial_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__industrial_iron_block'}.png new file mode 100644 index 00000000..c513a466 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__industrial_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__industrial_iron_window'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__industrial_iron_window'}.png new file mode 100644 index 00000000..bd972413 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__industrial_iron_window'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__jungle_window'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__jungle_window'}.png new file mode 100644 index 00000000..b6c00d13 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__jungle_window'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_andesite'}.png new file mode 100644 index 00000000..29eb6f43 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_asurine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_asurine'}.png new file mode 100644 index 00000000..4f474e51 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_asurine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_calcite'}.png new file mode 100644 index 00000000..95570162 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_crimsite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_crimsite'}.png new file mode 100644 index 00000000..89ebbdbf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_crimsite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_deepslate'}.png new file mode 100644 index 00000000..87b582a4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_diorite'}.png new file mode 100644 index 00000000..ef7c6af4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_dripstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_dripstone'}.png new file mode 100644 index 00000000..8696eeac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_dripstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_granite'}.png new file mode 100644 index 00000000..4769ce25 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_limestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_limestone'}.png new file mode 100644 index 00000000..93bac26d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_limestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_ochrum'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_ochrum'}.png new file mode 100644 index 00000000..f475b3fa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_ochrum'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_scorchia'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_scorchia'}.png new file mode 100644 index 00000000..3d2b7737 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_scorchia'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_scoria'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_scoria'}.png new file mode 100644 index 00000000..9a687c9c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_scoria'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_tuff'}.png new file mode 100644 index 00000000..e3384249 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_veridium'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_veridium'}.png new file mode 100644 index 00000000..e4b0c4c7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__layered_veridium'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__limestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__limestone'}.png new file mode 100644 index 00000000..07bdecb6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__limestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__limestone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__limestone_pillar'}.png new file mode 100644 index 00000000..7f019187 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__limestone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__mangrove_window'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__mangrove_window'}.png new file mode 100644 index 00000000..37de9f9d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__mangrove_window'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__metal_bracket'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__metal_bracket'}.png new file mode 100644 index 00000000..785c9970 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__metal_bracket'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__oak_window'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__oak_window'}.png new file mode 100644 index 00000000..6208933b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__oak_window'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__ochrum'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__ochrum'}.png new file mode 100644 index 00000000..42b841eb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__ochrum'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__ochrum_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__ochrum_pillar'}.png new file mode 100644 index 00000000..f64b9579 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__ochrum_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__ornate_iron_window'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__ornate_iron_window'}.png new file mode 100644 index 00000000..a75d6c23 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__ornate_iron_window'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__oxidized_copper_shingles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__oxidized_copper_shingles'}.png new file mode 100644 index 00000000..e9f2dfec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__oxidized_copper_shingles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__oxidized_copper_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__oxidized_copper_tiles'}.png new file mode 100644 index 00000000..eb3302e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__oxidized_copper_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_andesite'}.png new file mode 100644 index 00000000..a1722c11 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_asurine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_asurine'}.png new file mode 100644 index 00000000..f502447f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_asurine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_calcite'}.png new file mode 100644 index 00000000..68299447 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_crimsite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_crimsite'}.png new file mode 100644 index 00000000..c71c8667 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_crimsite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_deepslate'}.png new file mode 100644 index 00000000..9fd382e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_diorite'}.png new file mode 100644 index 00000000..2682f54c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_dripstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_dripstone'}.png new file mode 100644 index 00000000..001b5654 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_dripstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_granite'}.png new file mode 100644 index 00000000..8d311b3a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_limestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_limestone'}.png new file mode 100644 index 00000000..3898d8ba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_limestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_ochrum'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_ochrum'}.png new file mode 100644 index 00000000..0b68e140 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_ochrum'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_scorchia'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_scorchia'}.png new file mode 100644 index 00000000..e3e4cd57 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_scorchia'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_scoria'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_scoria'}.png new file mode 100644 index 00000000..beece357 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_scoria'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_tuff'}.png new file mode 100644 index 00000000..15d4d94f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_veridium'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_veridium'}.png new file mode 100644 index 00000000..1d52af3d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__polished_cut_veridium'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__railway_casing'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__railway_casing'}.png new file mode 100644 index 00000000..c296e692 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__railway_casing'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__raw_zinc_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__raw_zinc_block'}.png new file mode 100644 index 00000000..e8042616 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__raw_zinc_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__redstone_contact'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__redstone_contact'}.png new file mode 100644 index 00000000..cb4a05e2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__redstone_contact'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__rose_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__rose_quartz_block'}.png new file mode 100644 index 00000000..e3b3b94d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__rose_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__rose_quartz_lamp'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__rose_quartz_lamp'}.png new file mode 100644 index 00000000..7bf5fe8f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__rose_quartz_lamp'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__rose_quartz_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__rose_quartz_tiles'}.png new file mode 100644 index 00000000..32ece29b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__rose_quartz_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__scorchia'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__scorchia'}.png new file mode 100644 index 00000000..c9529d2b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__scorchia'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__scorchia_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__scorchia_pillar'}.png new file mode 100644 index 00000000..7ae37812 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__scorchia_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__scoria'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__scoria'}.png new file mode 100644 index 00000000..bab6bb5f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__scoria'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__scoria_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__scoria_pillar'}.png new file mode 100644 index 00000000..a8c7804f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__scoria_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_andesite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_andesite_bricks'}.png new file mode 100644 index 00000000..fcc5f904 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_andesite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_asurine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_asurine_bricks'}.png new file mode 100644 index 00000000..832c24cc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_asurine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_calcite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_calcite_bricks'}.png new file mode 100644 index 00000000..61eeeff6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_calcite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_crimsite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_crimsite_bricks'}.png new file mode 100644 index 00000000..6ea0d6b3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_crimsite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_deepslate_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_deepslate_bricks'}.png new file mode 100644 index 00000000..e29da258 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_deepslate_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_diorite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_diorite_bricks'}.png new file mode 100644 index 00000000..2478c5d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_diorite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_dripstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_dripstone_bricks'}.png new file mode 100644 index 00000000..aa19b617 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_dripstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_granite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_granite_bricks'}.png new file mode 100644 index 00000000..dbf06c78 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_granite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_limestone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_limestone_bricks'}.png new file mode 100644 index 00000000..d1802286 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_limestone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_ochrum_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_ochrum_bricks'}.png new file mode 100644 index 00000000..bc9b2c0f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_ochrum_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_rose_quartz_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_rose_quartz_tiles'}.png new file mode 100644 index 00000000..8706f271 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_rose_quartz_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_scorchia_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_scorchia_bricks'}.png new file mode 100644 index 00000000..5a3ecb2f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_scorchia_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_scoria_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_scoria_bricks'}.png new file mode 100644 index 00000000..a862dbdb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_scoria_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_tuff_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_tuff_bricks'}.png new file mode 100644 index 00000000..83f5c958 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_tuff_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_veridium_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_veridium_bricks'}.png new file mode 100644 index 00000000..d7b8268b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__small_veridium_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__spruce_window'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__spruce_window'}.png new file mode 100644 index 00000000..2d68bb45 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__spruce_window'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__tiled_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__tiled_glass'}.png new file mode 100644 index 00000000..15d92ad3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__tiled_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__tuff_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__tuff_pillar'}.png new file mode 100644 index 00000000..1f1bf8a2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__tuff_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__veridium'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__veridium'}.png new file mode 100644 index 00000000..d79b43ab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__veridium'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__veridium_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__veridium_pillar'}.png new file mode 100644 index 00000000..b7260c19 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__veridium_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__vertical_framed_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__vertical_framed_glass'}.png new file mode 100644 index 00000000..34570f6c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__vertical_framed_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__warped_window'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__warped_window'}.png new file mode 100644 index 00000000..56b03f8c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__warped_window'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__waxed_copper_shingles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__waxed_copper_shingles'}.png new file mode 100644 index 00000000..f959be93 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__waxed_copper_shingles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__waxed_copper_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__waxed_copper_tiles'}.png new file mode 100644 index 00000000..193c4cc5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__waxed_copper_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__waxed_exposed_copper_shingles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__waxed_exposed_copper_shingles'}.png new file mode 100644 index 00000000..babff6f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__waxed_exposed_copper_shingles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__waxed_exposed_copper_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__waxed_exposed_copper_tiles'}.png new file mode 100644 index 00000000..d8571179 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__waxed_exposed_copper_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__waxed_oxidized_copper_shingles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__waxed_oxidized_copper_shingles'}.png new file mode 100644 index 00000000..e9f2dfec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__waxed_oxidized_copper_shingles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__waxed_oxidized_copper_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__waxed_oxidized_copper_tiles'}.png new file mode 100644 index 00000000..eb3302e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__waxed_oxidized_copper_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__waxed_weathered_copper_shingles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__waxed_weathered_copper_shingles'}.png new file mode 100644 index 00000000..2de0da0c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__waxed_weathered_copper_shingles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__waxed_weathered_copper_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__waxed_weathered_copper_tiles'}.png new file mode 100644 index 00000000..67691515 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__waxed_weathered_copper_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__weathered_copper_shingles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__weathered_copper_shingles'}.png new file mode 100644 index 00000000..2de0da0c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__weathered_copper_shingles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__weathered_copper_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__weathered_copper_tiles'}.png new file mode 100644 index 00000000..67691515 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__weathered_copper_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__weathered_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__weathered_iron_block'}.png new file mode 100644 index 00000000..184ded42 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__weathered_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__weathered_iron_window'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__weathered_iron_window'}.png new file mode 100644 index 00000000..151eebb1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__weathered_iron_window'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__wooden_bracket'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__wooden_bracket'}.png new file mode 100644 index 00000000..21850f45 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__wooden_bracket'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__zinc_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__zinc_block'}.png new file mode 100644 index 00000000..a3d2ca53 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__zinc_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create__zinc_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create__zinc_ore'}.png new file mode 100644 index 00000000..910ef41b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create__zinc_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create_connected__empty_fan_catalyst'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create_connected__empty_fan_catalyst'}.png new file mode 100644 index 00000000..85ba1742 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create_connected__empty_fan_catalyst'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create_connected__fan_blasting_catalyst'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create_connected__fan_blasting_catalyst'}.png new file mode 100644 index 00000000..10ffba43 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create_connected__fan_blasting_catalyst'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create_connected__fan_ending_catalyst_dragons_breath'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create_connected__fan_ending_catalyst_dragons_breath'}.png new file mode 100644 index 00000000..50a7475c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create_connected__fan_ending_catalyst_dragons_breath'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create_connected__fan_freezing_catalyst'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create_connected__fan_freezing_catalyst'}.png new file mode 100644 index 00000000..0f85f188 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create_connected__fan_freezing_catalyst'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create_connected__fan_haunting_catalyst'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create_connected__fan_haunting_catalyst'}.png new file mode 100644 index 00000000..434d0ae2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create_connected__fan_haunting_catalyst'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create_connected__fan_sanding_catalyst'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create_connected__fan_sanding_catalyst'}.png new file mode 100644 index 00000000..a006241a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create_connected__fan_sanding_catalyst'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create_connected__fan_smoking_catalyst'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create_connected__fan_smoking_catalyst'}.png new file mode 100644 index 00000000..05db6039 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create_connected__fan_smoking_catalyst'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create_connected__fan_splashing_catalyst'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create_connected__fan_splashing_catalyst'}.png new file mode 100644 index 00000000..10294fb5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create_connected__fan_splashing_catalyst'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'create_enchantment_industry__super_experience_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'create_enchantment_industry__super_experience_block'}.png new file mode 100644 index 00000000..97c50574 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'create_enchantment_industry__super_experience_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'createaddition__biomass_pellet_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'createaddition__biomass_pellet_block'}.png new file mode 100644 index 00000000..6deac330 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'createaddition__biomass_pellet_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'createaddition__electrum_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'createaddition__electrum_block'}.png new file mode 100644 index 00000000..0d324101 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'createaddition__electrum_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'endersdelight__chorus_crate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'endersdelight__chorus_crate'}.png new file mode 100644 index 00000000..30ae7a38 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'endersdelight__chorus_crate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'ends_delight__chorus_fruit_crate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'ends_delight__chorus_fruit_crate'}.png new file mode 100644 index 00000000..890a2636 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'ends_delight__chorus_fruit_crate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__beetroot_crate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__beetroot_crate'}.png new file mode 100644 index 00000000..6fff34e9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__beetroot_crate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__cabbage_crate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__cabbage_crate'}.png new file mode 100644 index 00000000..22c11446 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__cabbage_crate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__carrot_crate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__carrot_crate'}.png new file mode 100644 index 00000000..3148e3a0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__carrot_crate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__onion_crate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__onion_crate'}.png new file mode 100644 index 00000000..88acbe93 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__onion_crate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__organic_compost'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__organic_compost'}.png new file mode 100644 index 00000000..49e39b71 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__organic_compost'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__potato_crate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__potato_crate'}.png new file mode 100644 index 00000000..871573e9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__potato_crate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__rice_bag'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__rice_bag'}.png new file mode 100644 index 00000000..702efb3f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__rice_bag'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__rice_bale'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__rice_bale'}.png new file mode 100644 index 00000000..cdb05713 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__rice_bale'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__rich_soil'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__rich_soil'}.png new file mode 100644 index 00000000..51d29b27 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__rich_soil'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__straw_bale'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__straw_bale'}.png new file mode 100644 index 00000000..118f2e8a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__straw_bale'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__tatami'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__tatami'}.png new file mode 100644 index 00000000..ee6425cf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__tatami'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__tomato_crate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__tomato_crate'}.png new file mode 100644 index 00000000..d470ced8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'farmersdelight__tomato_crate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'illagerinvasion__imbuing_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'illagerinvasion__imbuing_table'}.png new file mode 100644 index 00000000..47e4555c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'illagerinvasion__imbuing_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__alloybrick'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__alloybrick'}.png new file mode 100644 index 00000000..2dc14ae6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__alloybrick'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__basic_engineering'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__basic_engineering'}.png new file mode 100644 index 00000000..7d1fb1b2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__basic_engineering'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__blastbrick'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__blastbrick'}.png new file mode 100644 index 00000000..54386b88 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__blastbrick'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__blastbrick_reinforced'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__blastbrick_reinforced'}.png new file mode 100644 index 00000000..4d2a1243 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__blastbrick_reinforced'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__clinker_brick'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__clinker_brick'}.png new file mode 100644 index 00000000..f0f4815e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__clinker_brick'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__clinker_brick_quoin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__clinker_brick_quoin'}.png new file mode 100644 index 00000000..1a6729b3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__clinker_brick_quoin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__clinker_brick_sill'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__clinker_brick_sill'}.png new file mode 100644 index 00000000..7e4a0277 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__clinker_brick_sill'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__coil_hv'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__coil_hv'}.png new file mode 100644 index 00000000..e6628f34 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__coil_hv'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__coil_lv'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__coil_lv'}.png new file mode 100644 index 00000000..bedd0b3c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__coil_lv'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__coil_mv'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__coil_mv'}.png new file mode 100644 index 00000000..c8f4cfd7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__coil_mv'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__coke'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__coke'}.png new file mode 100644 index 00000000..e32af38e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__coke'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__cokebrick'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__cokebrick'}.png new file mode 100644 index 00000000..febfd049 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__cokebrick'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete'}.png new file mode 100644 index 00000000..d0c013e0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_brick'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_brick'}.png new file mode 100644 index 00000000..4bd182a8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_brick'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_brick_cracked'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_brick_cracked'}.png new file mode 100644 index 00000000..9b5d9c46 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_brick_cracked'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_chiseled'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_chiseled'}.png new file mode 100644 index 00000000..b7e2ade5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_chiseled'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_leaded'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_leaded'}.png new file mode 100644 index 00000000..b016f77d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_leaded'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_pillar'}.png new file mode 100644 index 00000000..8c09795d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_reinforced'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_reinforced'}.png new file mode 100644 index 00000000..d495922a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_reinforced'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_reinforced_tile'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_reinforced_tile'}.png new file mode 100644 index 00000000..bede5390 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_reinforced_tile'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_sprayed'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_sprayed'}.png new file mode 100644 index 00000000..89c3d992 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_sprayed'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_tile'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_tile'}.png new file mode 100644 index 00000000..af1921d0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__concrete_tile'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__cushion'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__cushion'}.png new file mode 100644 index 00000000..d1463e7c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__cushion'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__deepslate_ore_aluminum'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__deepslate_ore_aluminum'}.png new file mode 100644 index 00000000..fcaa36de Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__deepslate_ore_aluminum'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__deepslate_ore_lead'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__deepslate_ore_lead'}.png new file mode 100644 index 00000000..82df02dc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__deepslate_ore_lead'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__deepslate_ore_nickel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__deepslate_ore_nickel'}.png new file mode 100644 index 00000000..08470198 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__deepslate_ore_nickel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__deepslate_ore_silver'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__deepslate_ore_silver'}.png new file mode 100644 index 00000000..824b73b9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__deepslate_ore_silver'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__deepslate_ore_uranium'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__deepslate_ore_uranium'}.png new file mode 100644 index 00000000..03608a29 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__deepslate_ore_uranium'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__duroplast'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__duroplast'}.png new file mode 100644 index 00000000..c1ff4821 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__duroplast'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__fiberboard'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__fiberboard'}.png new file mode 100644 index 00000000..7e50f963 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__fiberboard'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__generator'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__generator'}.png new file mode 100644 index 00000000..f6714a24 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__generator'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__grit_sand'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__grit_sand'}.png new file mode 100644 index 00000000..0d3a9a7f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__grit_sand'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__gunpowder_barrel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__gunpowder_barrel'}.png new file mode 100644 index 00000000..8e5a880a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__gunpowder_barrel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__heavy_engineering'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__heavy_engineering'}.png new file mode 100644 index 00000000..c46ddd15 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__heavy_engineering'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__hempcrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__hempcrete'}.png new file mode 100644 index 00000000..f374f326 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__hempcrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__hempcrete_brick'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__hempcrete_brick'}.png new file mode 100644 index 00000000..1506c627 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__hempcrete_brick'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__hempcrete_brick_cracked'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__hempcrete_brick_cracked'}.png new file mode 100644 index 00000000..47f25c2f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__hempcrete_brick_cracked'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__hempcrete_chiseled'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__hempcrete_chiseled'}.png new file mode 100644 index 00000000..a646524b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__hempcrete_chiseled'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__hempcrete_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__hempcrete_pillar'}.png new file mode 100644 index 00000000..e418b8fd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__hempcrete_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__insulating_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__insulating_glass'}.png new file mode 100644 index 00000000..734d5da7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__insulating_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__light_engineering'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__light_engineering'}.png new file mode 100644 index 00000000..1aee924b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__light_engineering'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__ore_aluminum'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__ore_aluminum'}.png new file mode 100644 index 00000000..a27d5f24 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__ore_aluminum'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__ore_lead'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__ore_lead'}.png new file mode 100644 index 00000000..82305d79 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__ore_lead'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__ore_nickel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__ore_nickel'}.png new file mode 100644 index 00000000..582b3205 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__ore_nickel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__ore_silver'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__ore_silver'}.png new file mode 100644 index 00000000..7463b3f0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__ore_silver'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__ore_uranium'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__ore_uranium'}.png new file mode 100644 index 00000000..5d4144fd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__ore_uranium'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__radiator'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__radiator'}.png new file mode 100644 index 00000000..c71a1b71 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__radiator'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__raw_block_aluminum'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__raw_block_aluminum'}.png new file mode 100644 index 00000000..1aefc5fc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__raw_block_aluminum'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__raw_block_lead'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__raw_block_lead'}.png new file mode 100644 index 00000000..e53cf204 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__raw_block_lead'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__raw_block_nickel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__raw_block_nickel'}.png new file mode 100644 index 00000000..b7948c1d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__raw_block_nickel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__raw_block_silver'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__raw_block_silver'}.png new file mode 100644 index 00000000..e2b45a4b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__raw_block_silver'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__raw_block_uranium'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__raw_block_uranium'}.png new file mode 100644 index 00000000..45b03729 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__raw_block_uranium'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__resonanz_engineering'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__resonanz_engineering'}.png new file mode 100644 index 00000000..5ed07362 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__resonanz_engineering'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__rs_engineering'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__rs_engineering'}.png new file mode 100644 index 00000000..58d47cdf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__rs_engineering'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_aluminum'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_aluminum'}.png new file mode 100644 index 00000000..7f21021a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_aluminum'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_black'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_black'}.png new file mode 100644 index 00000000..69241111 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_black'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_blue'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_blue'}.png new file mode 100644 index 00000000..97b9d4cc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_blue'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_brown'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_brown'}.png new file mode 100644 index 00000000..206fef06 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_brown'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_cyan'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_cyan'}.png new file mode 100644 index 00000000..e6019466 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_cyan'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_gray'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_gray'}.png new file mode 100644 index 00000000..bb956c4f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_gray'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_green'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_green'}.png new file mode 100644 index 00000000..5cc3f1c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_green'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_light_blue'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_light_blue'}.png new file mode 100644 index 00000000..61c04b50 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_light_blue'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_light_gray'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_light_gray'}.png new file mode 100644 index 00000000..4a4d1d99 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_light_gray'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_lime'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_lime'}.png new file mode 100644 index 00000000..eb27dc0d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_lime'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_magenta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_magenta'}.png new file mode 100644 index 00000000..fa2fba95 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_magenta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_orange'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_orange'}.png new file mode 100644 index 00000000..c5670d38 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_orange'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_pink'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_pink'}.png new file mode 100644 index 00000000..10fd7d5e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_pink'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_purple'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_purple'}.png new file mode 100644 index 00000000..a95ec1b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_purple'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_red'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_red'}.png new file mode 100644 index 00000000..15b9f8a4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_red'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_white'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_white'}.png new file mode 100644 index 00000000..f2ffcb81 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_white'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_yellow'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_yellow'}.png new file mode 100644 index 00000000..23c2ac4d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_colored_yellow'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_constantan'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_constantan'}.png new file mode 100644 index 00000000..00c579ed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_constantan'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_copper'}.png new file mode 100644 index 00000000..278d7679 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_electrum'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_electrum'}.png new file mode 100644 index 00000000..1f7b1e8a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_electrum'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_gold'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_gold'}.png new file mode 100644 index 00000000..f9b8e195 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_gold'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_iron'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_iron'}.png new file mode 100644 index 00000000..de73357c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_iron'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_lead'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_lead'}.png new file mode 100644 index 00000000..8a8d3399 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_lead'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_nickel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_nickel'}.png new file mode 100644 index 00000000..dd921903 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_nickel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_silver'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_silver'}.png new file mode 100644 index 00000000..94ec69db Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_silver'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_steel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_steel'}.png new file mode 100644 index 00000000..9e807c0f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_steel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_uranium'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_uranium'}.png new file mode 100644 index 00000000..446a1476 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__sheetmetal_uranium'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__slag_brick'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__slag_brick'}.png new file mode 100644 index 00000000..98386c97 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__slag_brick'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__slag_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__slag_glass'}.png new file mode 100644 index 00000000..90688296 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__slag_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__slag_gravel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__slag_gravel'}.png new file mode 100644 index 00000000..3ee28631 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__slag_gravel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__storage_aluminum'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__storage_aluminum'}.png new file mode 100644 index 00000000..021c93f4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__storage_aluminum'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__storage_constantan'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__storage_constantan'}.png new file mode 100644 index 00000000..8a098ddb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__storage_constantan'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__storage_electrum'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__storage_electrum'}.png new file mode 100644 index 00000000..4e8f8317 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__storage_electrum'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__storage_lead'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__storage_lead'}.png new file mode 100644 index 00000000..2bcaa0c4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__storage_lead'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__storage_nickel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__storage_nickel'}.png new file mode 100644 index 00000000..78fa2e48 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__storage_nickel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__storage_silver'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__storage_silver'}.png new file mode 100644 index 00000000..8bb0bb44 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__storage_silver'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__storage_steel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__storage_steel'}.png new file mode 100644 index 00000000..62da4929 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__storage_steel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__storage_uranium'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__storage_uranium'}.png new file mode 100644 index 00000000..741940de Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__storage_uranium'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__treated_wood_horizontal'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__treated_wood_horizontal'}.png new file mode 100644 index 00000000..b52b4463 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__treated_wood_horizontal'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__treated_wood_packaged'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__treated_wood_packaged'}.png new file mode 100644 index 00000000..2f318b32 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__treated_wood_packaged'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__treated_wood_vertical'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__treated_wood_vertical'}.png new file mode 100644 index 00000000..fe56f2ef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'immersiveengineering__treated_wood_vertical'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__aspen_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__aspen_counter'}.png new file mode 100644 index 00000000..edfc9a1d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__aspen_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__baobab_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__baobab_counter'}.png new file mode 100644 index 00000000..8b765571 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__baobab_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__blue_enchanted_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__blue_enchanted_counter'}.png new file mode 100644 index 00000000..7fdc0ad0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__blue_enchanted_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__cika_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__cika_counter'}.png new file mode 100644 index 00000000..78f16cb9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__cika_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__cypress_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__cypress_counter'}.png new file mode 100644 index 00000000..0c449b33 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__cypress_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__ebony_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__ebony_counter'}.png new file mode 100644 index 00000000..7ae527b2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__ebony_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__fir_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__fir_counter'}.png new file mode 100644 index 00000000..51551c1f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__fir_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__florus_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__florus_counter'}.png new file mode 100644 index 00000000..2b7af8fd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__florus_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__green_enchanted_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__green_enchanted_counter'}.png new file mode 100644 index 00000000..a30fbc53 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__green_enchanted_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__holly_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__holly_counter'}.png new file mode 100644 index 00000000..8a486585 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__holly_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__ironwood_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__ironwood_counter'}.png new file mode 100644 index 00000000..83d8753e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__ironwood_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__jacaranda_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__jacaranda_counter'}.png new file mode 100644 index 00000000..779ee122 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__jacaranda_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__mahogany_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__mahogany_counter'}.png new file mode 100644 index 00000000..d0bd3479 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__mahogany_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__maple_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__maple_counter'}.png new file mode 100644 index 00000000..633e072c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__maple_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__palm_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__palm_counter'}.png new file mode 100644 index 00000000..80dbd9d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__palm_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__pine_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__pine_counter'}.png new file mode 100644 index 00000000..0e8c0b87 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__pine_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__rainbow_eucalyptus_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__rainbow_eucalyptus_counter'}.png new file mode 100644 index 00000000..3ff3094f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__rainbow_eucalyptus_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__redwood_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__redwood_counter'}.png new file mode 100644 index 00000000..1be9771a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__redwood_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__sakura_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__sakura_counter'}.png new file mode 100644 index 00000000..3365a11e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__sakura_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__skyris_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__skyris_counter'}.png new file mode 100644 index 00000000..a500c636 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__skyris_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_aspen_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_aspen_counter'}.png new file mode 100644 index 00000000..c5a4f950 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_aspen_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_baobab_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_baobab_counter'}.png new file mode 100644 index 00000000..70bd9f95 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_baobab_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_blue_enchanted_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_blue_enchanted_counter'}.png new file mode 100644 index 00000000..903f8d02 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_blue_enchanted_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_cika_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_cika_counter'}.png new file mode 100644 index 00000000..86cda271 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_cika_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_cypress_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_cypress_counter'}.png new file mode 100644 index 00000000..2c8ec7ea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_cypress_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_ebony_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_ebony_counter'}.png new file mode 100644 index 00000000..005bb4bf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_ebony_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_fir_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_fir_counter'}.png new file mode 100644 index 00000000..a2b4178f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_fir_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_florus_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_florus_counter'}.png new file mode 100644 index 00000000..bd5b175d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_florus_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_green_enchanted_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_green_enchanted_counter'}.png new file mode 100644 index 00000000..9555d6c2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_green_enchanted_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_holly_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_holly_counter'}.png new file mode 100644 index 00000000..185c3e7b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_holly_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_ironwood_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_ironwood_counter'}.png new file mode 100644 index 00000000..016129d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_ironwood_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_jacaranda_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_jacaranda_counter'}.png new file mode 100644 index 00000000..351036bc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_jacaranda_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_mahogany_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_mahogany_counter'}.png new file mode 100644 index 00000000..09477051 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_mahogany_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_maple_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_maple_counter'}.png new file mode 100644 index 00000000..da11b999 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_maple_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_palm_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_palm_counter'}.png new file mode 100644 index 00000000..ae25d961 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_palm_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_pine_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_pine_counter'}.png new file mode 100644 index 00000000..a8142886 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_pine_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_rainbow_eucalyptus_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_rainbow_eucalyptus_counter'}.png new file mode 100644 index 00000000..77bfc536 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_rainbow_eucalyptus_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_redwood_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_redwood_counter'}.png new file mode 100644 index 00000000..9e42582b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_redwood_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_sakura_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_sakura_counter'}.png new file mode 100644 index 00000000..a0cce623 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_sakura_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_skyris_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_skyris_counter'}.png new file mode 100644 index 00000000..6790c73d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_skyris_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_white_mangrove_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_white_mangrove_counter'}.png new file mode 100644 index 00000000..cdbc5486 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_white_mangrove_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_willow_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_willow_counter'}.png new file mode 100644 index 00000000..1dd4b862 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_willow_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_witch_hazel_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_witch_hazel_counter'}.png new file mode 100644 index 00000000..8bff35e7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_witch_hazel_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_zelkova_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_zelkova_counter'}.png new file mode 100644 index 00000000..0fb85c3c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__stripped_zelkova_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__white_mangrove_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__white_mangrove_counter'}.png new file mode 100644 index 00000000..85520ea7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__white_mangrove_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__willow_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__willow_counter'}.png new file mode 100644 index 00000000..976a6a34 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__willow_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__witch_hazel_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__witch_hazel_counter'}.png new file mode 100644 index 00000000..d31fd3a1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__witch_hazel_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__zelkova_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__zelkova_counter'}.png new file mode 100644 index 00000000..8b071237 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwbyg__zelkova_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__acacia_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__acacia_counter'}.png new file mode 100644 index 00000000..0ae8376c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__acacia_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__birch_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__birch_counter'}.png new file mode 100644 index 00000000..12aa6e76 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__birch_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__cherry_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__cherry_counter'}.png new file mode 100644 index 00000000..e375f468 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__cherry_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__crimson_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__crimson_counter'}.png new file mode 100644 index 00000000..dd8bd2fc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__crimson_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__dark_oak_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__dark_oak_counter'}.png new file mode 100644 index 00000000..a3473da0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__dark_oak_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__jungle_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__jungle_counter'}.png new file mode 100644 index 00000000..4da0c5d1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__jungle_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__mangrove_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__mangrove_counter'}.png new file mode 100644 index 00000000..3746d256 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__mangrove_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__oak_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__oak_counter'}.png new file mode 100644 index 00000000..87719e28 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__oak_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__spruce_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__spruce_counter'}.png new file mode 100644 index 00000000..73d69753 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__spruce_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_acacia_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_acacia_counter'}.png new file mode 100644 index 00000000..54e91273 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_acacia_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_birch_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_birch_counter'}.png new file mode 100644 index 00000000..e7ae5242 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_birch_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_cherry_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_cherry_counter'}.png new file mode 100644 index 00000000..3860eee3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_cherry_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_crimson_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_crimson_counter'}.png new file mode 100644 index 00000000..2cdbb487 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_crimson_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_dark_oak_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_dark_oak_counter'}.png new file mode 100644 index 00000000..bdcaeeb0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_dark_oak_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_jungle_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_jungle_counter'}.png new file mode 100644 index 00000000..5f52b121 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_jungle_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_mangrove_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_mangrove_counter'}.png new file mode 100644 index 00000000..a518cbf1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_mangrove_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_oak_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_oak_counter'}.png new file mode 100644 index 00000000..d6a9661f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_oak_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_spruce_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_spruce_counter'}.png new file mode 100644 index 00000000..1047f810 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_spruce_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_warped_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_warped_counter'}.png new file mode 100644 index 00000000..77a046fd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__stripped_warped_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__warped_counter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__warped_counter'}.png new file mode 100644 index 00000000..9a3c8e35 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwfurnitures__warped_counter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__andesite_crystal_floor'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__andesite_crystal_floor'}.png new file mode 100644 index 00000000..669daafc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__andesite_crystal_floor'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__andesite_flagstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__andesite_flagstone'}.png new file mode 100644 index 00000000..01977dd9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__andesite_flagstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__andesite_running_bond'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__andesite_running_bond'}.png new file mode 100644 index 00000000..8bb5e3c6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__andesite_running_bond'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__andesite_windmill_weave'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__andesite_windmill_weave'}.png new file mode 100644 index 00000000..e73129b0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__andesite_windmill_weave'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__blackstone_crystal_floor'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__blackstone_crystal_floor'}.png new file mode 100644 index 00000000..f5d7b4ab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__blackstone_crystal_floor'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__blackstone_flagstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__blackstone_flagstone'}.png new file mode 100644 index 00000000..ff8a9dae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__blackstone_flagstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__blackstone_running_bond'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__blackstone_running_bond'}.png new file mode 100644 index 00000000..7b5606e9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__blackstone_running_bond'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__blackstone_windmill_weave'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__blackstone_windmill_weave'}.png new file mode 100644 index 00000000..c94c9cf3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__blackstone_windmill_weave'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__brick_crystal_floor'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__brick_crystal_floor'}.png new file mode 100644 index 00000000..b08cecc9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__brick_crystal_floor'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__brick_flagstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__brick_flagstone'}.png new file mode 100644 index 00000000..7f0977f4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__brick_flagstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__brick_running_bond'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__brick_running_bond'}.png new file mode 100644 index 00000000..8cf413df Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__brick_running_bond'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__brick_windmill_weave'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__brick_windmill_weave'}.png new file mode 100644 index 00000000..1c5aec5e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__brick_windmill_weave'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__cobbled_deepslate_crystal_floor'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__cobbled_deepslate_crystal_floor'}.png new file mode 100644 index 00000000..4bdcaf12 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__cobbled_deepslate_crystal_floor'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__cobbled_deepslate_flagstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__cobbled_deepslate_flagstone'}.png new file mode 100644 index 00000000..de1add29 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__cobbled_deepslate_flagstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__cobbled_deepslate_running_bond'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__cobbled_deepslate_running_bond'}.png new file mode 100644 index 00000000..211bda54 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__cobbled_deepslate_running_bond'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__cobbled_deepslate_windmill_weave'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__cobbled_deepslate_windmill_weave'}.png new file mode 100644 index 00000000..24df082f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__cobbled_deepslate_windmill_weave'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__dark_prismarine_crystal_floor'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__dark_prismarine_crystal_floor'}.png new file mode 100644 index 00000000..574f5deb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__dark_prismarine_crystal_floor'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__dark_prismarine_flagstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__dark_prismarine_flagstone'}.png new file mode 100644 index 00000000..31fb5901 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__dark_prismarine_flagstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__dark_prismarine_running_bond'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__dark_prismarine_running_bond'}.png new file mode 100644 index 00000000..5003d5da Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__dark_prismarine_running_bond'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__dark_prismarine_windmill_weave'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__dark_prismarine_windmill_weave'}.png new file mode 100644 index 00000000..21920e4a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__dark_prismarine_windmill_weave'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__deepslate_crystal_floor'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__deepslate_crystal_floor'}.png new file mode 100644 index 00000000..98bd2235 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__deepslate_crystal_floor'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__deepslate_flagstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__deepslate_flagstone'}.png new file mode 100644 index 00000000..ac98076b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__deepslate_flagstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__deepslate_running_bond'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__deepslate_running_bond'}.png new file mode 100644 index 00000000..a36a0268 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__deepslate_running_bond'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__deepslate_windmill_weave'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__deepslate_windmill_weave'}.png new file mode 100644 index 00000000..75d16f9e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__deepslate_windmill_weave'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__diorite_crystal_floor'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__diorite_crystal_floor'}.png new file mode 100644 index 00000000..e431f641 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__diorite_crystal_floor'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__diorite_flagstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__diorite_flagstone'}.png new file mode 100644 index 00000000..7eec6cc0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__diorite_flagstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__diorite_running_bond'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__diorite_running_bond'}.png new file mode 100644 index 00000000..3e579689 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__diorite_running_bond'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__diorite_windmill_weave'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__diorite_windmill_weave'}.png new file mode 100644 index 00000000..ffe3595a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__diorite_windmill_weave'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__dirt_path_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__dirt_path_block'}.png new file mode 100644 index 00000000..5bb2d6f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__dirt_path_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__granite_crystal_floor'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__granite_crystal_floor'}.png new file mode 100644 index 00000000..a83cc47f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__granite_crystal_floor'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__granite_flagstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__granite_flagstone'}.png new file mode 100644 index 00000000..f44b8abf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__granite_flagstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__granite_running_bond'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__granite_running_bond'}.png new file mode 100644 index 00000000..128a6b3c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__granite_running_bond'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__granite_windmill_weave'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__granite_windmill_weave'}.png new file mode 100644 index 00000000..75138430 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__granite_windmill_weave'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__gravel_path_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__gravel_path_block'}.png new file mode 100644 index 00000000..a6be902c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__gravel_path_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__mossy_stone_crystal_floor'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__mossy_stone_crystal_floor'}.png new file mode 100644 index 00000000..5a8ce0e4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__mossy_stone_crystal_floor'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__mossy_stone_flagstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__mossy_stone_flagstone'}.png new file mode 100644 index 00000000..cc5c8319 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__mossy_stone_flagstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__mossy_stone_running_bond'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__mossy_stone_running_bond'}.png new file mode 100644 index 00000000..09f69c48 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__mossy_stone_running_bond'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__mossy_stone_windmill_weave'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__mossy_stone_windmill_weave'}.png new file mode 100644 index 00000000..e2a5ebf9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__mossy_stone_windmill_weave'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__mud_brick_crystal_floor'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__mud_brick_crystal_floor'}.png new file mode 100644 index 00000000..ff5de6e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__mud_brick_crystal_floor'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__mud_brick_flagstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__mud_brick_flagstone'}.png new file mode 100644 index 00000000..9eb4b97a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__mud_brick_flagstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__mud_brick_running_bond'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__mud_brick_running_bond'}.png new file mode 100644 index 00000000..d5008e5f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__mud_brick_running_bond'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__mud_brick_windmill_weave'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__mud_brick_windmill_weave'}.png new file mode 100644 index 00000000..719d2cac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__mud_brick_windmill_weave'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__podzol_path_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__podzol_path_block'}.png new file mode 100644 index 00000000..25faafca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__podzol_path_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__red_sand_path_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__red_sand_path_block'}.png new file mode 100644 index 00000000..7ca4b435 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__red_sand_path_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__red_sandstone_crystal_floor'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__red_sandstone_crystal_floor'}.png new file mode 100644 index 00000000..c1ee63cd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__red_sandstone_crystal_floor'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__red_sandstone_flagstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__red_sandstone_flagstone'}.png new file mode 100644 index 00000000..75525f56 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__red_sandstone_flagstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__red_sandstone_running_bond'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__red_sandstone_running_bond'}.png new file mode 100644 index 00000000..78a216a0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__red_sandstone_running_bond'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__red_sandstone_windmill_weave'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__red_sandstone_windmill_weave'}.png new file mode 100644 index 00000000..3f863053 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__red_sandstone_windmill_weave'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__sand_path_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__sand_path_block'}.png new file mode 100644 index 00000000..463cc1e9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__sand_path_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__sandstone_crystal_floor'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__sandstone_crystal_floor'}.png new file mode 100644 index 00000000..841aea1a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__sandstone_crystal_floor'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__sandstone_flagstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__sandstone_flagstone'}.png new file mode 100644 index 00000000..31548c89 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__sandstone_flagstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__sandstone_running_bond'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__sandstone_running_bond'}.png new file mode 100644 index 00000000..f0a7311a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__sandstone_running_bond'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__sandstone_windmill_weave'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__sandstone_windmill_weave'}.png new file mode 100644 index 00000000..98969eff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__sandstone_windmill_weave'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__stone_crystal_floor'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__stone_crystal_floor'}.png new file mode 100644 index 00000000..c8273ddf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__stone_crystal_floor'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__stone_flagstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__stone_flagstone'}.png new file mode 100644 index 00000000..6ba95a23 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__stone_flagstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__stone_running_bond'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__stone_running_bond'}.png new file mode 100644 index 00000000..b4db0cdc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__stone_running_bond'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__stone_windmill_weave'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__stone_windmill_weave'}.png new file mode 100644 index 00000000..ea796307 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwpaths__stone_windmill_weave'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwroofs__base_roof_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwroofs__base_roof_block'}.png new file mode 100644 index 00000000..e643c95c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwroofs__base_roof_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwroofs__black_roof_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwroofs__black_roof_block'}.png new file mode 100644 index 00000000..ced1bfbe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwroofs__black_roof_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwroofs__gray_roof_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwroofs__gray_roof_block'}.png new file mode 100644 index 00000000..3532a834 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwroofs__gray_roof_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwroofs__light_gray_roof_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwroofs__light_gray_roof_block'}.png new file mode 100644 index 00000000..a35eeb5d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwroofs__light_gray_roof_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwroofs__white_roof_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwroofs__white_roof_block'}.png new file mode 100644 index 00000000..86edeff3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwroofs__white_roof_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__black_mosaic_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__black_mosaic_glass'}.png new file mode 100644 index 00000000..9f7e7a07 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__black_mosaic_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__blue_mosaic_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__blue_mosaic_glass'}.png new file mode 100644 index 00000000..534213fe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__blue_mosaic_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__brown_mosaic_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__brown_mosaic_glass'}.png new file mode 100644 index 00000000..12c27f6c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__brown_mosaic_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__cyan_mosaic_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__cyan_mosaic_glass'}.png new file mode 100644 index 00000000..4fb46a8d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__cyan_mosaic_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__gray_mosaic_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__gray_mosaic_glass'}.png new file mode 100644 index 00000000..2e897bef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__gray_mosaic_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__green_mosaic_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__green_mosaic_glass'}.png new file mode 100644 index 00000000..f9a7aa1c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__green_mosaic_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__light_blue_mosaic_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__light_blue_mosaic_glass'}.png new file mode 100644 index 00000000..8a26c4f1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__light_blue_mosaic_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__light_gray_mosaic_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__light_gray_mosaic_glass'}.png new file mode 100644 index 00000000..02099271 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__light_gray_mosaic_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__lime_mosaic_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__lime_mosaic_glass'}.png new file mode 100644 index 00000000..9e9a65df Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__lime_mosaic_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__magenta_mosaic_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__magenta_mosaic_glass'}.png new file mode 100644 index 00000000..f487adab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__magenta_mosaic_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__one_way_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__one_way_glass'}.png new file mode 100644 index 00000000..f95bc16b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__one_way_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__orange_mosaic_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__orange_mosaic_glass'}.png new file mode 100644 index 00000000..0999cd7f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__orange_mosaic_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__pink_mosaic_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__pink_mosaic_glass'}.png new file mode 100644 index 00000000..2665c60e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__pink_mosaic_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__purple_mosaic_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__purple_mosaic_glass'}.png new file mode 100644 index 00000000..93688276 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__purple_mosaic_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__red_mosaic_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__red_mosaic_glass'}.png new file mode 100644 index 00000000..8e4593cf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__red_mosaic_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__white_mosaic_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__white_mosaic_glass'}.png new file mode 100644 index 00000000..4c6819fc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__white_mosaic_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__yellow_mosaic_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__yellow_mosaic_glass'}.png new file mode 100644 index 00000000..3de5f475 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mcwwindows__yellow_mosaic_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_bio_fuel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_bio_fuel'}.png new file mode 100644 index 00000000..23528e61 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_bio_fuel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_bronze'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_bronze'}.png new file mode 100644 index 00000000..49f8e2aa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_bronze'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_charcoal'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_charcoal'}.png new file mode 100644 index 00000000..05198d34 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_charcoal'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_fluorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_fluorite'}.png new file mode 100644 index 00000000..4b7a7474 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_fluorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_lead'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_lead'}.png new file mode 100644 index 00000000..ac47c109 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_lead'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_osmium'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_osmium'}.png new file mode 100644 index 00000000..23cc2d56 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_osmium'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_raw_lead'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_raw_lead'}.png new file mode 100644 index 00000000..ba7eb09e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_raw_lead'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_raw_osmium'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_raw_osmium'}.png new file mode 100644 index 00000000..8a981ce9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_raw_osmium'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_raw_tin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_raw_tin'}.png new file mode 100644 index 00000000..613d91b8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_raw_tin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_raw_uranium'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_raw_uranium'}.png new file mode 100644 index 00000000..142b2ed3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_raw_uranium'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_refined_glowstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_refined_glowstone'}.png new file mode 100644 index 00000000..91b1cd4d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_refined_glowstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_refined_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_refined_obsidian'}.png new file mode 100644 index 00000000..480a1784 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_refined_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_salt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_salt'}.png new file mode 100644 index 00000000..7b86d92d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_salt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_steel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_steel'}.png new file mode 100644 index 00000000..a570054f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_steel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_tin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_tin'}.png new file mode 100644 index 00000000..ad96fe9e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_tin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_uranium'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_uranium'}.png new file mode 100644 index 00000000..f8f50f2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__block_uranium'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__deepslate_fluorite_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__deepslate_fluorite_ore'}.png new file mode 100644 index 00000000..4e56c2c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__deepslate_fluorite_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__deepslate_lead_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__deepslate_lead_ore'}.png new file mode 100644 index 00000000..1ca0d42d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__deepslate_lead_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__deepslate_osmium_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__deepslate_osmium_ore'}.png new file mode 100644 index 00000000..60a4d119 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__deepslate_osmium_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__deepslate_tin_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__deepslate_tin_ore'}.png new file mode 100644 index 00000000..cfb68317 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__deepslate_tin_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__deepslate_uranium_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__deepslate_uranium_ore'}.png new file mode 100644 index 00000000..686ebb65 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__deepslate_uranium_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__fluorite_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__fluorite_ore'}.png new file mode 100644 index 00000000..2aea2911 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__fluorite_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__lead_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__lead_ore'}.png new file mode 100644 index 00000000..18900a39 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__lead_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__osmium_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__osmium_ore'}.png new file mode 100644 index 00000000..c922d13a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__osmium_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__steel_casing'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__steel_casing'}.png new file mode 100644 index 00000000..04142f88 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__steel_casing'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__teleporter_frame'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__teleporter_frame'}.png new file mode 100644 index 00000000..a7075930 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__teleporter_frame'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__tin_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__tin_ore'}.png new file mode 100644 index 00000000..6b87825f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__tin_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__uranium_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__uranium_ore'}.png new file mode 100644 index 00000000..c668416c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanism__uranium_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__aqua_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__aqua_plastic'}.png new file mode 100644 index 00000000..fd6d1284 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__aqua_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__aqua_plastic_glow'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__aqua_plastic_glow'}.png new file mode 100644 index 00000000..5f7f14a0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__aqua_plastic_glow'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__aqua_plastic_road'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__aqua_plastic_road'}.png new file mode 100644 index 00000000..5f7f14a0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__aqua_plastic_road'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__aqua_plastic_transparent'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__aqua_plastic_transparent'}.png new file mode 100644 index 00000000..6bf418a2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__aqua_plastic_transparent'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__aqua_reinforced_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__aqua_reinforced_plastic'}.png new file mode 100644 index 00000000..179017d6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__aqua_reinforced_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__aqua_slick_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__aqua_slick_plastic'}.png new file mode 100644 index 00000000..d26716f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__aqua_slick_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__black_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__black_plastic'}.png new file mode 100644 index 00000000..a01db7bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__black_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__black_plastic_glow'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__black_plastic_glow'}.png new file mode 100644 index 00000000..d9a43766 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__black_plastic_glow'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__black_plastic_road'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__black_plastic_road'}.png new file mode 100644 index 00000000..d9a43766 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__black_plastic_road'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__black_plastic_transparent'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__black_plastic_transparent'}.png new file mode 100644 index 00000000..02489954 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__black_plastic_transparent'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__black_reinforced_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__black_reinforced_plastic'}.png new file mode 100644 index 00000000..fc556e7b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__black_reinforced_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__black_slick_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__black_slick_plastic'}.png new file mode 100644 index 00000000..e946c96b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__black_slick_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__blue_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__blue_plastic'}.png new file mode 100644 index 00000000..94171e28 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__blue_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__blue_plastic_glow'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__blue_plastic_glow'}.png new file mode 100644 index 00000000..dcd08fc4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__blue_plastic_glow'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__blue_plastic_road'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__blue_plastic_road'}.png new file mode 100644 index 00000000..dcd08fc4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__blue_plastic_road'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__blue_plastic_transparent'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__blue_plastic_transparent'}.png new file mode 100644 index 00000000..298127b0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__blue_plastic_transparent'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__blue_reinforced_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__blue_reinforced_plastic'}.png new file mode 100644 index 00000000..e48c71e3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__blue_reinforced_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__blue_slick_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__blue_slick_plastic'}.png new file mode 100644 index 00000000..a9fd4130 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__blue_slick_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__brown_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__brown_plastic'}.png new file mode 100644 index 00000000..7bf9cbcf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__brown_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__brown_plastic_glow'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__brown_plastic_glow'}.png new file mode 100644 index 00000000..c90c13ff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__brown_plastic_glow'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__brown_plastic_road'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__brown_plastic_road'}.png new file mode 100644 index 00000000..c90c13ff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__brown_plastic_road'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__brown_plastic_transparent'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__brown_plastic_transparent'}.png new file mode 100644 index 00000000..3b4840ca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__brown_plastic_transparent'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__brown_reinforced_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__brown_reinforced_plastic'}.png new file mode 100644 index 00000000..ee24142d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__brown_reinforced_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__brown_slick_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__brown_slick_plastic'}.png new file mode 100644 index 00000000..0d6369d5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__brown_slick_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__cyan_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__cyan_plastic'}.png new file mode 100644 index 00000000..1e2c5fde Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__cyan_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__cyan_plastic_glow'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__cyan_plastic_glow'}.png new file mode 100644 index 00000000..f1234084 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__cyan_plastic_glow'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__cyan_plastic_road'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__cyan_plastic_road'}.png new file mode 100644 index 00000000..f1234084 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__cyan_plastic_road'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__cyan_plastic_transparent'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__cyan_plastic_transparent'}.png new file mode 100644 index 00000000..95d5e867 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__cyan_plastic_transparent'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__cyan_reinforced_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__cyan_reinforced_plastic'}.png new file mode 100644 index 00000000..f946ded6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__cyan_reinforced_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__cyan_slick_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__cyan_slick_plastic'}.png new file mode 100644 index 00000000..5b234208 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__cyan_slick_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__dark_red_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__dark_red_plastic'}.png new file mode 100644 index 00000000..12fd696a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__dark_red_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__dark_red_plastic_glow'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__dark_red_plastic_glow'}.png new file mode 100644 index 00000000..e1f32f01 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__dark_red_plastic_glow'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__dark_red_plastic_road'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__dark_red_plastic_road'}.png new file mode 100644 index 00000000..e1f32f01 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__dark_red_plastic_road'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__dark_red_plastic_transparent'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__dark_red_plastic_transparent'}.png new file mode 100644 index 00000000..39b54ffe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__dark_red_plastic_transparent'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__dark_red_reinforced_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__dark_red_reinforced_plastic'}.png new file mode 100644 index 00000000..30999a62 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__dark_red_reinforced_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__dark_red_slick_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__dark_red_slick_plastic'}.png new file mode 100644 index 00000000..43ccc59b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__dark_red_slick_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__gray_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__gray_plastic'}.png new file mode 100644 index 00000000..d5049d2e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__gray_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__gray_plastic_glow'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__gray_plastic_glow'}.png new file mode 100644 index 00000000..420b2ef5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__gray_plastic_glow'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__gray_plastic_road'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__gray_plastic_road'}.png new file mode 100644 index 00000000..420b2ef5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__gray_plastic_road'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__gray_plastic_transparent'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__gray_plastic_transparent'}.png new file mode 100644 index 00000000..31a3a1d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__gray_plastic_transparent'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__gray_reinforced_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__gray_reinforced_plastic'}.png new file mode 100644 index 00000000..654d7aaf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__gray_reinforced_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__gray_slick_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__gray_slick_plastic'}.png new file mode 100644 index 00000000..415da616 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__gray_slick_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__green_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__green_plastic'}.png new file mode 100644 index 00000000..cedf1086 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__green_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__green_plastic_glow'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__green_plastic_glow'}.png new file mode 100644 index 00000000..8fb34293 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__green_plastic_glow'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__green_plastic_road'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__green_plastic_road'}.png new file mode 100644 index 00000000..8fb34293 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__green_plastic_road'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__green_plastic_transparent'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__green_plastic_transparent'}.png new file mode 100644 index 00000000..2e12bb61 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__green_plastic_transparent'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__green_reinforced_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__green_reinforced_plastic'}.png new file mode 100644 index 00000000..c03fbb27 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__green_reinforced_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__green_slick_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__green_slick_plastic'}.png new file mode 100644 index 00000000..cf4f4657 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__green_slick_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_blue_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_blue_plastic'}.png new file mode 100644 index 00000000..f825eb42 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_blue_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_blue_plastic_glow'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_blue_plastic_glow'}.png new file mode 100644 index 00000000..fddfe432 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_blue_plastic_glow'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_blue_plastic_road'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_blue_plastic_road'}.png new file mode 100644 index 00000000..fddfe432 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_blue_plastic_road'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_blue_plastic_transparent'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_blue_plastic_transparent'}.png new file mode 100644 index 00000000..73ad550b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_blue_plastic_transparent'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_blue_reinforced_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_blue_reinforced_plastic'}.png new file mode 100644 index 00000000..823cc824 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_blue_reinforced_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_blue_slick_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_blue_slick_plastic'}.png new file mode 100644 index 00000000..237707a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_blue_slick_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_gray_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_gray_plastic'}.png new file mode 100644 index 00000000..deae97ee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_gray_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_gray_plastic_glow'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_gray_plastic_glow'}.png new file mode 100644 index 00000000..1e77add3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_gray_plastic_glow'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_gray_plastic_road'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_gray_plastic_road'}.png new file mode 100644 index 00000000..1e77add3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_gray_plastic_road'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_gray_plastic_transparent'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_gray_plastic_transparent'}.png new file mode 100644 index 00000000..040e5f90 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_gray_plastic_transparent'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_gray_reinforced_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_gray_reinforced_plastic'}.png new file mode 100644 index 00000000..81544476 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_gray_reinforced_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_gray_slick_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_gray_slick_plastic'}.png new file mode 100644 index 00000000..b1e629be Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__light_gray_slick_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__lime_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__lime_plastic'}.png new file mode 100644 index 00000000..527e7251 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__lime_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__lime_plastic_glow'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__lime_plastic_glow'}.png new file mode 100644 index 00000000..f96424e2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__lime_plastic_glow'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__lime_plastic_road'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__lime_plastic_road'}.png new file mode 100644 index 00000000..f96424e2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__lime_plastic_road'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__lime_plastic_transparent'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__lime_plastic_transparent'}.png new file mode 100644 index 00000000..920e7f74 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__lime_plastic_transparent'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__lime_reinforced_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__lime_reinforced_plastic'}.png new file mode 100644 index 00000000..19880e06 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__lime_reinforced_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__lime_slick_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__lime_slick_plastic'}.png new file mode 100644 index 00000000..3f516885 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__lime_slick_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__magenta_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__magenta_plastic'}.png new file mode 100644 index 00000000..12ea667b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__magenta_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__magenta_plastic_glow'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__magenta_plastic_glow'}.png new file mode 100644 index 00000000..68441e4a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__magenta_plastic_glow'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__magenta_plastic_road'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__magenta_plastic_road'}.png new file mode 100644 index 00000000..68441e4a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__magenta_plastic_road'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__magenta_plastic_transparent'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__magenta_plastic_transparent'}.png new file mode 100644 index 00000000..413a1f38 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__magenta_plastic_transparent'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__magenta_reinforced_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__magenta_reinforced_plastic'}.png new file mode 100644 index 00000000..480ac7a9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__magenta_reinforced_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__magenta_slick_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__magenta_slick_plastic'}.png new file mode 100644 index 00000000..a6edbd69 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__magenta_slick_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__orange_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__orange_plastic'}.png new file mode 100644 index 00000000..691d3cb8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__orange_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__orange_plastic_glow'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__orange_plastic_glow'}.png new file mode 100644 index 00000000..bfab7c0d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__orange_plastic_glow'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__orange_plastic_road'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__orange_plastic_road'}.png new file mode 100644 index 00000000..bfab7c0d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__orange_plastic_road'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__orange_plastic_transparent'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__orange_plastic_transparent'}.png new file mode 100644 index 00000000..c566d92b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__orange_plastic_transparent'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__orange_reinforced_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__orange_reinforced_plastic'}.png new file mode 100644 index 00000000..145c4fee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__orange_reinforced_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__orange_slick_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__orange_slick_plastic'}.png new file mode 100644 index 00000000..cef2321e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__orange_slick_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__pink_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__pink_plastic'}.png new file mode 100644 index 00000000..745e77c8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__pink_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__pink_plastic_glow'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__pink_plastic_glow'}.png new file mode 100644 index 00000000..a788f2ae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__pink_plastic_glow'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__pink_plastic_road'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__pink_plastic_road'}.png new file mode 100644 index 00000000..a788f2ae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__pink_plastic_road'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__pink_plastic_transparent'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__pink_plastic_transparent'}.png new file mode 100644 index 00000000..ceab7f55 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__pink_plastic_transparent'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__pink_reinforced_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__pink_reinforced_plastic'}.png new file mode 100644 index 00000000..3ad0f3ef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__pink_reinforced_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__pink_slick_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__pink_slick_plastic'}.png new file mode 100644 index 00000000..13f321a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__pink_slick_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__purple_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__purple_plastic'}.png new file mode 100644 index 00000000..86ae42fe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__purple_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__purple_plastic_glow'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__purple_plastic_glow'}.png new file mode 100644 index 00000000..e7fba5b2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__purple_plastic_glow'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__purple_plastic_road'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__purple_plastic_road'}.png new file mode 100644 index 00000000..e7fba5b2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__purple_plastic_road'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__purple_plastic_transparent'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__purple_plastic_transparent'}.png new file mode 100644 index 00000000..1f072db5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__purple_plastic_transparent'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__purple_reinforced_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__purple_reinforced_plastic'}.png new file mode 100644 index 00000000..80531bf0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__purple_reinforced_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__purple_slick_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__purple_slick_plastic'}.png new file mode 100644 index 00000000..8ce08448 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__purple_slick_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__red_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__red_plastic'}.png new file mode 100644 index 00000000..7711b30f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__red_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__red_plastic_glow'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__red_plastic_glow'}.png new file mode 100644 index 00000000..635d7552 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__red_plastic_glow'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__red_plastic_road'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__red_plastic_road'}.png new file mode 100644 index 00000000..635d7552 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__red_plastic_road'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__red_plastic_transparent'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__red_plastic_transparent'}.png new file mode 100644 index 00000000..2608864d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__red_plastic_transparent'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__red_reinforced_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__red_reinforced_plastic'}.png new file mode 100644 index 00000000..d2313c6b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__red_reinforced_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__red_slick_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__red_slick_plastic'}.png new file mode 100644 index 00000000..9e238d3d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__red_slick_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__white_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__white_plastic'}.png new file mode 100644 index 00000000..fd927a6c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__white_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__white_plastic_glow'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__white_plastic_glow'}.png new file mode 100644 index 00000000..2bb9200d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__white_plastic_glow'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__white_plastic_road'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__white_plastic_road'}.png new file mode 100644 index 00000000..2bb9200d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__white_plastic_road'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__white_plastic_transparent'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__white_plastic_transparent'}.png new file mode 100644 index 00000000..a9b27da8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__white_plastic_transparent'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__white_reinforced_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__white_reinforced_plastic'}.png new file mode 100644 index 00000000..53479e20 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__white_reinforced_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__white_slick_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__white_slick_plastic'}.png new file mode 100644 index 00000000..561f0047 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__white_slick_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__yellow_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__yellow_plastic'}.png new file mode 100644 index 00000000..97e9ba11 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__yellow_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__yellow_plastic_glow'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__yellow_plastic_glow'}.png new file mode 100644 index 00000000..a2fb915e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__yellow_plastic_glow'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__yellow_plastic_road'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__yellow_plastic_road'}.png new file mode 100644 index 00000000..a2fb915e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__yellow_plastic_road'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__yellow_plastic_transparent'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__yellow_plastic_transparent'}.png new file mode 100644 index 00000000..1d43d29c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__yellow_plastic_transparent'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__yellow_reinforced_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__yellow_reinforced_plastic'}.png new file mode 100644 index 00000000..57deebe5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__yellow_reinforced_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__yellow_slick_plastic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__yellow_slick_plastic'}.png new file mode 100644 index 00000000..91b8332b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mekanismadditions__yellow_slick_plastic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__acacia_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__acacia_leaves'}.png new file mode 100644 index 00000000..1bc97a43 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__acacia_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__acacia_log'}.png new file mode 100644 index 00000000..a35bbbc0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__acacia_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__acacia_planks'}.png new file mode 100644 index 00000000..022c69eb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__acacia_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__acacia_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__acacia_wood'}.png new file mode 100644 index 00000000..a953e4b3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__acacia_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__amethyst_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__amethyst_block'}.png new file mode 100644 index 00000000..bbe43204 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__amethyst_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__ancient_debris'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__ancient_debris'}.png new file mode 100644 index 00000000..868acc85 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__ancient_debris'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__andesite'}.png new file mode 100644 index 00000000..d5a8319b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__azalea_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__azalea_leaves'}.png new file mode 100644 index 00000000..bdd711ca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__azalea_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bamboo_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bamboo_block'}.png new file mode 100644 index 00000000..bc7dd461 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bamboo_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bamboo_mosaic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bamboo_mosaic'}.png new file mode 100644 index 00000000..4eaadb7c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bamboo_mosaic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bamboo_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bamboo_planks'}.png new file mode 100644 index 00000000..8dfdb9c8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bamboo_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__barrel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__barrel'}.png new file mode 100644 index 00000000..337df903 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__barrel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__basalt'}.png new file mode 100644 index 00000000..2bcf5c89 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bedrock'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bedrock'}.png new file mode 100644 index 00000000..5900424c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bedrock'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bee_nest'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bee_nest'}.png new file mode 100644 index 00000000..138f7961 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bee_nest'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__beehive'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__beehive'}.png new file mode 100644 index 00000000..17691a36 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__beehive'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__birch_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__birch_leaves'}.png new file mode 100644 index 00000000..b7ad9cff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__birch_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__birch_log'}.png new file mode 100644 index 00000000..2879e001 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__birch_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__birch_planks'}.png new file mode 100644 index 00000000..99cc45ff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__birch_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__birch_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__birch_wood'}.png new file mode 100644 index 00000000..c356eb19 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__birch_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__black_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__black_concrete'}.png new file mode 100644 index 00000000..a6dab0f0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__black_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__black_concrete_powder'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__black_concrete_powder'}.png new file mode 100644 index 00000000..21e8fd66 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__black_concrete_powder'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__black_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__black_glazed_terracotta'}.png new file mode 100644 index 00000000..47c9e8a9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__black_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__black_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__black_stained_glass'}.png new file mode 100644 index 00000000..7770f169 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__black_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__black_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__black_terracotta'}.png new file mode 100644 index 00000000..3438e6c0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__black_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__black_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__black_wool'}.png new file mode 100644 index 00000000..b23ce753 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__black_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blackstone'}.png new file mode 100644 index 00000000..4ff06695 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blast_furnace'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blast_furnace'}.png new file mode 100644 index 00000000..2c5d214b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blast_furnace'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blue_concrete'}.png new file mode 100644 index 00000000..7d8ea5f8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blue_concrete_powder'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blue_concrete_powder'}.png new file mode 100644 index 00000000..e788639a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blue_concrete_powder'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blue_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blue_glazed_terracotta'}.png new file mode 100644 index 00000000..082a8b50 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blue_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blue_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blue_ice'}.png new file mode 100644 index 00000000..94cd136d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blue_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blue_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blue_stained_glass'}.png new file mode 100644 index 00000000..7352d343 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blue_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blue_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blue_terracotta'}.png new file mode 100644 index 00000000..e9d858d5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blue_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blue_wool'}.png new file mode 100644 index 00000000..a195c620 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bone_block'}.png new file mode 100644 index 00000000..770a908f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bookshelf'}.png new file mode 100644 index 00000000..a8567cdc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__brain_coral_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__brain_coral_block'}.png new file mode 100644 index 00000000..4605ce32 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__brain_coral_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bricks'}.png new file mode 100644 index 00000000..baeea661 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__brown_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__brown_concrete'}.png new file mode 100644 index 00000000..d66a4a8c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__brown_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__brown_concrete_powder'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__brown_concrete_powder'}.png new file mode 100644 index 00000000..ad0e8a92 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__brown_concrete_powder'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__brown_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__brown_glazed_terracotta'}.png new file mode 100644 index 00000000..b273a8a7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__brown_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__brown_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__brown_mushroom_block'}.png new file mode 100644 index 00000000..8c72c781 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__brown_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__brown_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__brown_stained_glass'}.png new file mode 100644 index 00000000..de412862 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__brown_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__brown_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__brown_terracotta'}.png new file mode 100644 index 00000000..6317dfec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__brown_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__brown_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__brown_wool'}.png new file mode 100644 index 00000000..8e111ed1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__brown_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bubble_coral_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bubble_coral_block'}.png new file mode 100644 index 00000000..5077af3a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__bubble_coral_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__budding_amethyst'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__budding_amethyst'}.png new file mode 100644 index 00000000..2b6fe177 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__budding_amethyst'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__calcite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__calcite'}.png new file mode 100644 index 00000000..10b96cdf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__calcite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cartography_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cartography_table'}.png new file mode 100644 index 00000000..321a25b0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cartography_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__carved_pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__carved_pumpkin'}.png new file mode 100644 index 00000000..e2671928 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__carved_pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cherry_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cherry_leaves'}.png new file mode 100644 index 00000000..b2abfa6c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cherry_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cherry_log'}.png new file mode 100644 index 00000000..abe196a1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cherry_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cherry_planks'}.png new file mode 100644 index 00000000..0bfa9b8d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cherry_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cherry_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cherry_wood'}.png new file mode 100644 index 00000000..f1b7eb41 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cherry_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_bookshelf'}.png new file mode 100644 index 00000000..13bc96b4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_copper'}.png new file mode 100644 index 00000000..4e76f8ea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_deepslate'}.png new file mode 100644 index 00000000..69258636 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_nether_bricks'}.png new file mode 100644 index 00000000..3030e090 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_polished_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_polished_blackstone'}.png new file mode 100644 index 00000000..eef04484 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_polished_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_quartz_block'}.png new file mode 100644 index 00000000..21b59a77 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_red_sandstone'}.png new file mode 100644 index 00000000..512b0a53 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_sandstone'}.png new file mode 100644 index 00000000..3ca8ab61 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_stone_bricks'}.png new file mode 100644 index 00000000..455fac75 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_tuff'}.png new file mode 100644 index 00000000..37fd4771 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_tuff_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_tuff_bricks'}.png new file mode 100644 index 00000000..01691f1f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chiseled_tuff_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chorus_flower'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chorus_flower'}.png new file mode 100644 index 00000000..5219b256 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__chorus_flower'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__clay'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__clay'}.png new file mode 100644 index 00000000..228cc5a3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__clay'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__coal_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__coal_block'}.png new file mode 100644 index 00000000..b6f3cd9f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__coal_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__coal_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__coal_ore'}.png new file mode 100644 index 00000000..be474427 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__coal_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__coarse_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__coarse_dirt'}.png new file mode 100644 index 00000000..d5e0cfce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__coarse_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cobbled_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cobbled_deepslate'}.png new file mode 100644 index 00000000..9efb1dcc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cobbled_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cobblestone'}.png new file mode 100644 index 00000000..30330101 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__copper_block'}.png new file mode 100644 index 00000000..b40de6bd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__copper_bulb'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__copper_bulb'}.png new file mode 100644 index 00000000..5d8b959e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__copper_bulb'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__copper_grate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__copper_grate'}.png new file mode 100644 index 00000000..443105d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__copper_grate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__copper_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__copper_ore'}.png new file mode 100644 index 00000000..a784e2ff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__copper_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cracked_deepslate_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cracked_deepslate_bricks'}.png new file mode 100644 index 00000000..3bc197fa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cracked_deepslate_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cracked_deepslate_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cracked_deepslate_tiles'}.png new file mode 100644 index 00000000..1e0796a1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cracked_deepslate_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cracked_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cracked_nether_bricks'}.png new file mode 100644 index 00000000..875c6bb4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cracked_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cracked_polished_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cracked_polished_blackstone_bricks'}.png new file mode 100644 index 00000000..865e1d4e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cracked_polished_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cracked_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cracked_stone_bricks'}.png new file mode 100644 index 00000000..69a9ae1f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cracked_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__crafter'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__crafter'}.png new file mode 100644 index 00000000..f6c52b2b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__crafter'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__crafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__crafting_table'}.png new file mode 100644 index 00000000..21a07225 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__crafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__crimson_hyphae'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__crimson_hyphae'}.png new file mode 100644 index 00000000..155dcaaf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__crimson_hyphae'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__crimson_nylium'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__crimson_nylium'}.png new file mode 100644 index 00000000..64e0b8d1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__crimson_nylium'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__crimson_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__crimson_planks'}.png new file mode 100644 index 00000000..60684b1a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__crimson_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__crimson_stem'}.png new file mode 100644 index 00000000..8b4a4892 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__crying_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__crying_obsidian'}.png new file mode 100644 index 00000000..4e4f68f0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__crying_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cut_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cut_copper'}.png new file mode 100644 index 00000000..f87fe876 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cut_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cut_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cut_red_sandstone'}.png new file mode 100644 index 00000000..860e7b04 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cut_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cut_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cut_sandstone'}.png new file mode 100644 index 00000000..b24b0031 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cut_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cyan_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cyan_concrete'}.png new file mode 100644 index 00000000..6af3f2dd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cyan_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cyan_concrete_powder'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cyan_concrete_powder'}.png new file mode 100644 index 00000000..dba8cd56 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cyan_concrete_powder'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cyan_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cyan_glazed_terracotta'}.png new file mode 100644 index 00000000..18844238 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cyan_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cyan_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cyan_stained_glass'}.png new file mode 100644 index 00000000..c755546d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cyan_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cyan_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cyan_terracotta'}.png new file mode 100644 index 00000000..1e185531 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cyan_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cyan_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cyan_wool'}.png new file mode 100644 index 00000000..c2c8f70a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__cyan_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dark_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dark_oak_leaves'}.png new file mode 100644 index 00000000..9a16f009 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dark_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dark_oak_log'}.png new file mode 100644 index 00000000..11460449 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dark_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dark_oak_planks'}.png new file mode 100644 index 00000000..81af98c2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dark_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dark_oak_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dark_oak_wood'}.png new file mode 100644 index 00000000..396d2165 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dark_oak_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dark_prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dark_prismarine'}.png new file mode 100644 index 00000000..68981529 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dark_prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dead_brain_coral_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dead_brain_coral_block'}.png new file mode 100644 index 00000000..3dac93f7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dead_brain_coral_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dead_bubble_coral_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dead_bubble_coral_block'}.png new file mode 100644 index 00000000..44d32d7b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dead_bubble_coral_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dead_fire_coral_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dead_fire_coral_block'}.png new file mode 100644 index 00000000..d5d6f82f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dead_fire_coral_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dead_horn_coral_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dead_horn_coral_block'}.png new file mode 100644 index 00000000..e5485ea2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dead_horn_coral_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dead_tube_coral_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dead_tube_coral_block'}.png new file mode 100644 index 00000000..ebbda82a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dead_tube_coral_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate'}.png new file mode 100644 index 00000000..d7c74f88 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_bricks'}.png new file mode 100644 index 00000000..55eed802 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_coal_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_coal_ore'}.png new file mode 100644 index 00000000..9fc105a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_coal_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_copper_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_copper_ore'}.png new file mode 100644 index 00000000..971541e3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_copper_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_diamond_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_diamond_ore'}.png new file mode 100644 index 00000000..62a4a56c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_diamond_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_emerald_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_emerald_ore'}.png new file mode 100644 index 00000000..8384c2f6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_emerald_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_gold_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_gold_ore'}.png new file mode 100644 index 00000000..10cec03a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_gold_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_iron_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_iron_ore'}.png new file mode 100644 index 00000000..d5b55dd7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_iron_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_lapis_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_lapis_ore'}.png new file mode 100644 index 00000000..4e7d3cdc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_lapis_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_redstone_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_redstone_ore'}.png new file mode 100644 index 00000000..ed6a1389 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_redstone_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_tiles'}.png new file mode 100644 index 00000000..e32d5873 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__deepslate_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__diamond_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__diamond_block'}.png new file mode 100644 index 00000000..d8d1a21e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__diamond_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__diamond_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__diamond_ore'}.png new file mode 100644 index 00000000..2d36ab2b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__diamond_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__diorite'}.png new file mode 100644 index 00000000..3229ade5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dirt'}.png new file mode 100644 index 00000000..ad35971a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dispenser'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dispenser'}.png new file mode 100644 index 00000000..d0402db7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dispenser'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dried_kelp_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dried_kelp_block'}.png new file mode 100644 index 00000000..ed591c00 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dried_kelp_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dripstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dripstone_block'}.png new file mode 100644 index 00000000..3e7e5b28 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dripstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dropper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dropper'}.png new file mode 100644 index 00000000..c2232d72 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__dropper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__emerald_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__emerald_block'}.png new file mode 100644 index 00000000..ce5c0d3b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__emerald_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__emerald_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__emerald_ore'}.png new file mode 100644 index 00000000..76844ef3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__emerald_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__end_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__end_stone'}.png new file mode 100644 index 00000000..095cd77c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__end_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__end_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__end_stone_bricks'}.png new file mode 100644 index 00000000..defeadcf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__end_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__exposed_chiseled_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__exposed_chiseled_copper'}.png new file mode 100644 index 00000000..4056b8bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__exposed_chiseled_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__exposed_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__exposed_copper'}.png new file mode 100644 index 00000000..66437f39 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__exposed_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__exposed_copper_bulb'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__exposed_copper_bulb'}.png new file mode 100644 index 00000000..b9107e83 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__exposed_copper_bulb'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__exposed_copper_grate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__exposed_copper_grate'}.png new file mode 100644 index 00000000..78c1bab0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__exposed_copper_grate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__exposed_cut_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__exposed_cut_copper'}.png new file mode 100644 index 00000000..9b179c40 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__exposed_cut_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__fire_coral_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__fire_coral_block'}.png new file mode 100644 index 00000000..abd5b73e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__fire_coral_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__fletching_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__fletching_table'}.png new file mode 100644 index 00000000..52cadc17 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__fletching_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__flowering_azalea_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__flowering_azalea_leaves'}.png new file mode 100644 index 00000000..f5431fac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__flowering_azalea_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__furnace'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__furnace'}.png new file mode 100644 index 00000000..c6c131b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__furnace'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gilded_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gilded_blackstone'}.png new file mode 100644 index 00000000..80e7c9d3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gilded_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__glass'}.png new file mode 100644 index 00000000..a8e537b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__glowstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__glowstone'}.png new file mode 100644 index 00000000..a60274d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__glowstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gold_block'}.png new file mode 100644 index 00000000..707487f7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gold_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gold_ore'}.png new file mode 100644 index 00000000..5b9f4cba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gold_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__granite'}.png new file mode 100644 index 00000000..ca4a7c13 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__grass_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__grass_block'}.png new file mode 100644 index 00000000..b93fc9a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__grass_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gravel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gravel'}.png new file mode 100644 index 00000000..ae2b4600 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gravel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gray_concrete'}.png new file mode 100644 index 00000000..88c38b72 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gray_concrete_powder'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gray_concrete_powder'}.png new file mode 100644 index 00000000..0434289e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gray_concrete_powder'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gray_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gray_glazed_terracotta'}.png new file mode 100644 index 00000000..91088e0a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gray_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gray_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gray_stained_glass'}.png new file mode 100644 index 00000000..c8b5288c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gray_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gray_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gray_terracotta'}.png new file mode 100644 index 00000000..04fb39f7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gray_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gray_wool'}.png new file mode 100644 index 00000000..0b52b96b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__green_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__green_concrete'}.png new file mode 100644 index 00000000..3342b17c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__green_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__green_concrete_powder'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__green_concrete_powder'}.png new file mode 100644 index 00000000..e95481ff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__green_concrete_powder'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__green_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__green_glazed_terracotta'}.png new file mode 100644 index 00000000..4d5e15db Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__green_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__green_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__green_stained_glass'}.png new file mode 100644 index 00000000..c196fc88 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__green_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__green_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__green_terracotta'}.png new file mode 100644 index 00000000..6b6f0a97 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__green_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__green_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__green_wool'}.png new file mode 100644 index 00000000..6bac4c49 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__green_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__hay_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__hay_block'}.png new file mode 100644 index 00000000..7ec325ba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__hay_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__honey_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__honey_block'}.png new file mode 100644 index 00000000..df8f51dd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__honey_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__honeycomb_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__honeycomb_block'}.png new file mode 100644 index 00000000..be0d776c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__honeycomb_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__horn_coral_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__horn_coral_block'}.png new file mode 100644 index 00000000..d06a595e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__horn_coral_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__ice'}.png new file mode 100644 index 00000000..52299812 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__infested_chiseled_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__infested_chiseled_stone_bricks'}.png new file mode 100644 index 00000000..455fac75 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__infested_chiseled_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__infested_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__infested_cobblestone'}.png new file mode 100644 index 00000000..30330101 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__infested_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__infested_cracked_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__infested_cracked_stone_bricks'}.png new file mode 100644 index 00000000..69a9ae1f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__infested_cracked_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__infested_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__infested_deepslate'}.png new file mode 100644 index 00000000..d7c74f88 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__infested_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__infested_mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__infested_mossy_stone_bricks'}.png new file mode 100644 index 00000000..8e97723c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__infested_mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__infested_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__infested_stone'}.png new file mode 100644 index 00000000..669575cd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__infested_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__infested_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__infested_stone_bricks'}.png new file mode 100644 index 00000000..5189bb11 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__infested_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__iron_block'}.png new file mode 100644 index 00000000..15963564 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__iron_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__iron_ore'}.png new file mode 100644 index 00000000..cae43a09 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__iron_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__jack_o_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__jack_o_lantern'}.png new file mode 100644 index 00000000..78c0a818 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__jack_o_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__jukebox'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__jukebox'}.png new file mode 100644 index 00000000..d3de40c0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__jukebox'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__jungle_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__jungle_leaves'}.png new file mode 100644 index 00000000..48f5a2f7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__jungle_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__jungle_log'}.png new file mode 100644 index 00000000..2ad1c762 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__jungle_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__jungle_planks'}.png new file mode 100644 index 00000000..56601888 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__jungle_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__jungle_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__jungle_wood'}.png new file mode 100644 index 00000000..b2e6a52c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__jungle_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lapis_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lapis_block'}.png new file mode 100644 index 00000000..b1b1168b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lapis_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lapis_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lapis_ore'}.png new file mode 100644 index 00000000..89f2db4e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lapis_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_blue_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_blue_concrete'}.png new file mode 100644 index 00000000..ccd48124 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_blue_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_blue_concrete_powder'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_blue_concrete_powder'}.png new file mode 100644 index 00000000..d8cd5e1b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_blue_concrete_powder'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_blue_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_blue_glazed_terracotta'}.png new file mode 100644 index 00000000..0a9cd617 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_blue_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_blue_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_blue_stained_glass'}.png new file mode 100644 index 00000000..7e263983 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_blue_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_blue_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_blue_terracotta'}.png new file mode 100644 index 00000000..3716b650 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_blue_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_blue_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_blue_wool'}.png new file mode 100644 index 00000000..db7122cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_blue_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_gray_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_gray_concrete'}.png new file mode 100644 index 00000000..2857d3d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_gray_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_gray_concrete_powder'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_gray_concrete_powder'}.png new file mode 100644 index 00000000..9b9342a1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_gray_concrete_powder'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_gray_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_gray_glazed_terracotta'}.png new file mode 100644 index 00000000..19220cf8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_gray_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_gray_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_gray_stained_glass'}.png new file mode 100644 index 00000000..e7c7a9ca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_gray_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_gray_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_gray_terracotta'}.png new file mode 100644 index 00000000..88959c2b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_gray_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_gray_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_gray_wool'}.png new file mode 100644 index 00000000..d8a3a5b6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__light_gray_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lime_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lime_concrete'}.png new file mode 100644 index 00000000..81aff081 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lime_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lime_concrete_powder'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lime_concrete_powder'}.png new file mode 100644 index 00000000..b0085a9e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lime_concrete_powder'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lime_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lime_glazed_terracotta'}.png new file mode 100644 index 00000000..cdad65e5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lime_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lime_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lime_stained_glass'}.png new file mode 100644 index 00000000..7e28c7b3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lime_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lime_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lime_terracotta'}.png new file mode 100644 index 00000000..3fc036bd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lime_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lime_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lime_wool'}.png new file mode 100644 index 00000000..a6b14743 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lime_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lodestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lodestone'}.png new file mode 100644 index 00000000..a90bab69 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__lodestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__loom'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__loom'}.png new file mode 100644 index 00000000..9081a91d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__loom'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__magenta_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__magenta_concrete'}.png new file mode 100644 index 00000000..df69f914 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__magenta_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__magenta_concrete_powder'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__magenta_concrete_powder'}.png new file mode 100644 index 00000000..a1c177d0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__magenta_concrete_powder'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__magenta_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__magenta_glazed_terracotta'}.png new file mode 100644 index 00000000..d125c43a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__magenta_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__magenta_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__magenta_stained_glass'}.png new file mode 100644 index 00000000..ccf87edc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__magenta_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__magenta_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__magenta_terracotta'}.png new file mode 100644 index 00000000..7d580a0f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__magenta_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__magenta_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__magenta_wool'}.png new file mode 100644 index 00000000..25cfa767 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__magenta_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__magma_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__magma_block'}.png new file mode 100644 index 00000000..756440d6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__magma_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mangrove_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mangrove_leaves'}.png new file mode 100644 index 00000000..0a0c9f58 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mangrove_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mangrove_log'}.png new file mode 100644 index 00000000..de7c9b82 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mangrove_planks'}.png new file mode 100644 index 00000000..14f40aa1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mangrove_roots'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mangrove_roots'}.png new file mode 100644 index 00000000..44dad2dc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mangrove_roots'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mangrove_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mangrove_wood'}.png new file mode 100644 index 00000000..ea4b6778 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mangrove_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__melon'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__melon'}.png new file mode 100644 index 00000000..35a66ccb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__melon'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__moss_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__moss_block'}.png new file mode 100644 index 00000000..7fc986d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__moss_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mossy_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mossy_cobblestone'}.png new file mode 100644 index 00000000..51bee354 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mossy_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mossy_stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mossy_stone_bricks'}.png new file mode 100644 index 00000000..8e97723c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mossy_stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mud_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mud_bricks'}.png new file mode 100644 index 00000000..62c232a5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mud_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__muddy_mangrove_roots'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__muddy_mangrove_roots'}.png new file mode 100644 index 00000000..82a67b9d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__muddy_mangrove_roots'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mushroom_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mushroom_stem'}.png new file mode 100644 index 00000000..ebd6e00f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mushroom_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mycelium'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mycelium'}.png new file mode 100644 index 00000000..6a313d72 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__mycelium'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__nether_bricks'}.png new file mode 100644 index 00000000..83b02ed9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__nether_gold_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__nether_gold_ore'}.png new file mode 100644 index 00000000..8bb48153 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__nether_gold_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__nether_quartz_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__nether_quartz_ore'}.png new file mode 100644 index 00000000..abc468fd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__nether_quartz_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__nether_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__nether_wart_block'}.png new file mode 100644 index 00000000..5796064c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__nether_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__netherite_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__netherite_block'}.png new file mode 100644 index 00000000..323bf0f6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__netherite_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__netherrack'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__netherrack'}.png new file mode 100644 index 00000000..d8cb2c2e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__netherrack'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__note_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__note_block'}.png new file mode 100644 index 00000000..284ae75d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__note_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oak_leaves'}.png new file mode 100644 index 00000000..946f8a51 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oak_log'}.png new file mode 100644 index 00000000..9358dbef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oak_planks'}.png new file mode 100644 index 00000000..13477689 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oak_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oak_wood'}.png new file mode 100644 index 00000000..cda21a36 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oak_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__observer'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__observer'}.png new file mode 100644 index 00000000..e6e7959f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__observer'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__obsidian'}.png new file mode 100644 index 00000000..4d8a26bf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__ochre_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__ochre_froglight'}.png new file mode 100644 index 00000000..776762bc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__ochre_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__orange_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__orange_concrete'}.png new file mode 100644 index 00000000..99dee417 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__orange_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__orange_concrete_powder'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__orange_concrete_powder'}.png new file mode 100644 index 00000000..e403883e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__orange_concrete_powder'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__orange_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__orange_glazed_terracotta'}.png new file mode 100644 index 00000000..49f391d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__orange_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__orange_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__orange_stained_glass'}.png new file mode 100644 index 00000000..2398f1d2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__orange_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__orange_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__orange_terracotta'}.png new file mode 100644 index 00000000..b931d36b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__orange_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__orange_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__orange_wool'}.png new file mode 100644 index 00000000..2c0af223 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__orange_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oxidized_chiseled_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oxidized_chiseled_copper'}.png new file mode 100644 index 00000000..90b7c802 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oxidized_chiseled_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oxidized_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oxidized_copper'}.png new file mode 100644 index 00000000..fd7baa4c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oxidized_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oxidized_copper_bulb'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oxidized_copper_bulb'}.png new file mode 100644 index 00000000..72a555a8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oxidized_copper_bulb'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oxidized_copper_grate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oxidized_copper_grate'}.png new file mode 100644 index 00000000..7f7ff4f0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oxidized_copper_grate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oxidized_cut_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oxidized_cut_copper'}.png new file mode 100644 index 00000000..e9ed78ce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__oxidized_cut_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__packed_ice'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__packed_ice'}.png new file mode 100644 index 00000000..a007c770 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__packed_ice'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__packed_mud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__packed_mud'}.png new file mode 100644 index 00000000..175a5871 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__packed_mud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__pearlescent_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__pearlescent_froglight'}.png new file mode 100644 index 00000000..0f432c93 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__pearlescent_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__pink_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__pink_concrete'}.png new file mode 100644 index 00000000..3f9c301f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__pink_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__pink_concrete_powder'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__pink_concrete_powder'}.png new file mode 100644 index 00000000..945b2530 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__pink_concrete_powder'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__pink_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__pink_glazed_terracotta'}.png new file mode 100644 index 00000000..57dacda5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__pink_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__pink_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__pink_stained_glass'}.png new file mode 100644 index 00000000..3bf1fbec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__pink_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__pink_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__pink_terracotta'}.png new file mode 100644 index 00000000..710d737b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__pink_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__pink_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__pink_wool'}.png new file mode 100644 index 00000000..a7fe7034 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__pink_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__piston'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__piston'}.png new file mode 100644 index 00000000..546b4fd0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__piston'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__podzol'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__podzol'}.png new file mode 100644 index 00000000..cedeeb86 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__podzol'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__polished_andesite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__polished_andesite'}.png new file mode 100644 index 00000000..1589666d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__polished_andesite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__polished_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__polished_basalt'}.png new file mode 100644 index 00000000..29bf269b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__polished_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__polished_blackstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__polished_blackstone'}.png new file mode 100644 index 00000000..e96d4cbb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__polished_blackstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__polished_blackstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__polished_blackstone_bricks'}.png new file mode 100644 index 00000000..15b656b0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__polished_blackstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__polished_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__polished_deepslate'}.png new file mode 100644 index 00000000..fcefd2d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__polished_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__polished_diorite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__polished_diorite'}.png new file mode 100644 index 00000000..cc3f3efa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__polished_diorite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__polished_granite'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__polished_granite'}.png new file mode 100644 index 00000000..d625a9bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__polished_granite'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__polished_tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__polished_tuff'}.png new file mode 100644 index 00000000..32e70876 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__polished_tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__prismarine'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__prismarine'}.png new file mode 100644 index 00000000..4f2dd7c2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__prismarine'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__prismarine_bricks'}.png new file mode 100644 index 00000000..6eaa7885 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__pumpkin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__pumpkin'}.png new file mode 100644 index 00000000..db756b2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__pumpkin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__purple_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__purple_concrete'}.png new file mode 100644 index 00000000..89d30a45 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__purple_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__purple_concrete_powder'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__purple_concrete_powder'}.png new file mode 100644 index 00000000..8fd026a5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__purple_concrete_powder'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__purple_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__purple_glazed_terracotta'}.png new file mode 100644 index 00000000..67ec76a0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__purple_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__purple_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__purple_stained_glass'}.png new file mode 100644 index 00000000..b569a793 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__purple_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__purple_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__purple_terracotta'}.png new file mode 100644 index 00000000..e40c264d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__purple_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__purple_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__purple_wool'}.png new file mode 100644 index 00000000..3c4c5978 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__purple_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__purpur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__purpur_block'}.png new file mode 100644 index 00000000..02720026 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__purpur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__purpur_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__purpur_pillar'}.png new file mode 100644 index 00000000..bed62511 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__purpur_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__quartz_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__quartz_block'}.png new file mode 100644 index 00000000..b45ac274 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__quartz_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__quartz_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__quartz_bricks'}.png new file mode 100644 index 00000000..f81b2fe2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__quartz_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__quartz_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__quartz_pillar'}.png new file mode 100644 index 00000000..3034810e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__quartz_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__raw_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__raw_copper_block'}.png new file mode 100644 index 00000000..06ef4ba5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__raw_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__raw_gold_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__raw_gold_block'}.png new file mode 100644 index 00000000..a1b0993d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__raw_gold_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__raw_iron_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__raw_iron_block'}.png new file mode 100644 index 00000000..76c08d83 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__raw_iron_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_concrete'}.png new file mode 100644 index 00000000..bc840333 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_concrete_powder'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_concrete_powder'}.png new file mode 100644 index 00000000..7ca033e9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_concrete_powder'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_glazed_terracotta'}.png new file mode 100644 index 00000000..9cb0f967 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_mushroom_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_mushroom_block'}.png new file mode 100644 index 00000000..06417b60 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_mushroom_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_nether_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_nether_bricks'}.png new file mode 100644 index 00000000..efe2b17d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_nether_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_sand'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_sand'}.png new file mode 100644 index 00000000..08e0b495 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_sand'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_sandstone'}.png new file mode 100644 index 00000000..f97930c1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_stained_glass'}.png new file mode 100644 index 00000000..a95b005e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_terracotta'}.png new file mode 100644 index 00000000..0e1a0f15 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_wool'}.png new file mode 100644 index 00000000..4da12289 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__red_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__redstone_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__redstone_block'}.png new file mode 100644 index 00000000..6598b4a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__redstone_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__redstone_lamp'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__redstone_lamp'}.png new file mode 100644 index 00000000..89079cb5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__redstone_lamp'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__redstone_ore'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__redstone_ore'}.png new file mode 100644 index 00000000..da04d452 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__redstone_ore'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__reinforced_deepslate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__reinforced_deepslate'}.png new file mode 100644 index 00000000..d83ae9b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__reinforced_deepslate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__respawn_anchor'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__respawn_anchor'}.png new file mode 100644 index 00000000..61a506cd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__respawn_anchor'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__rooted_dirt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__rooted_dirt'}.png new file mode 100644 index 00000000..e40bf50e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__rooted_dirt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__sand'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__sand'}.png new file mode 100644 index 00000000..cf45c833 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__sand'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__sandstone'}.png new file mode 100644 index 00000000..ffcf89a5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__sculk'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__sculk'}.png new file mode 100644 index 00000000..3675c6e9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__sculk'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__sculk_catalyst'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__sculk_catalyst'}.png new file mode 100644 index 00000000..a3a6b7d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__sculk_catalyst'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__sea_lantern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__sea_lantern'}.png new file mode 100644 index 00000000..aca00e9b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__sea_lantern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__shroomlight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__shroomlight'}.png new file mode 100644 index 00000000..98436f09 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__shroomlight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__slime_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__slime_block'}.png new file mode 100644 index 00000000..1c6567b9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__slime_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__smithing_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__smithing_table'}.png new file mode 100644 index 00000000..aec3df9e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__smithing_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__smooth_basalt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__smooth_basalt'}.png new file mode 100644 index 00000000..0ee35a85 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__smooth_basalt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__smooth_quartz'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__smooth_quartz'}.png new file mode 100644 index 00000000..4f567de7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__smooth_quartz'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__smooth_red_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__smooth_red_sandstone'}.png new file mode 100644 index 00000000..04a5c22f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__smooth_red_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__smooth_sandstone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__smooth_sandstone'}.png new file mode 100644 index 00000000..fe8edff6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__smooth_sandstone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__smooth_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__smooth_stone'}.png new file mode 100644 index 00000000..3fc71ff3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__smooth_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__snow_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__snow_block'}.png new file mode 100644 index 00000000..e26ce1f7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__snow_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__soul_sand'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__soul_sand'}.png new file mode 100644 index 00000000..a515ca64 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__soul_sand'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__soul_soil'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__soul_soil'}.png new file mode 100644 index 00000000..36b913dc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__soul_soil'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__sponge'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__sponge'}.png new file mode 100644 index 00000000..b4c70c7a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__sponge'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__spruce_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__spruce_leaves'}.png new file mode 100644 index 00000000..6426348f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__spruce_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__spruce_log'}.png new file mode 100644 index 00000000..40d49823 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__spruce_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__spruce_planks'}.png new file mode 100644 index 00000000..9064d4e9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__spruce_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__spruce_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__spruce_wood'}.png new file mode 100644 index 00000000..659fff36 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__spruce_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__sticky_piston'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__sticky_piston'}.png new file mode 100644 index 00000000..546b4fd0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__sticky_piston'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stone'}.png new file mode 100644 index 00000000..669575cd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stone_bricks'}.png new file mode 100644 index 00000000..5189bb11 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_acacia_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_acacia_log'}.png new file mode 100644 index 00000000..c3a5228d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_acacia_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_acacia_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_acacia_wood'}.png new file mode 100644 index 00000000..a9d96221 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_acacia_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_bamboo_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_bamboo_block'}.png new file mode 100644 index 00000000..9c80947c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_bamboo_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_birch_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_birch_log'}.png new file mode 100644 index 00000000..1f62555a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_birch_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_birch_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_birch_wood'}.png new file mode 100644 index 00000000..faf4b90b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_birch_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_cherry_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_cherry_log'}.png new file mode 100644 index 00000000..3e27c57f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_cherry_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_cherry_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_cherry_wood'}.png new file mode 100644 index 00000000..658e62c9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_cherry_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_crimson_hyphae'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_crimson_hyphae'}.png new file mode 100644 index 00000000..c70d14f0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_crimson_hyphae'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_crimson_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_crimson_stem'}.png new file mode 100644 index 00000000..d6d486e3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_crimson_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_dark_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_dark_oak_log'}.png new file mode 100644 index 00000000..133c0eb9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_dark_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_dark_oak_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_dark_oak_wood'}.png new file mode 100644 index 00000000..dd35a8e4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_dark_oak_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_jungle_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_jungle_log'}.png new file mode 100644 index 00000000..405e4776 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_jungle_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_jungle_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_jungle_wood'}.png new file mode 100644 index 00000000..f032e623 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_jungle_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_mangrove_log'}.png new file mode 100644 index 00000000..1ddc45f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_mangrove_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_mangrove_wood'}.png new file mode 100644 index 00000000..bf7a7e3c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_mangrove_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_oak_log'}.png new file mode 100644 index 00000000..538a163f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_oak_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_oak_wood'}.png new file mode 100644 index 00000000..642b65eb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_oak_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_spruce_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_spruce_log'}.png new file mode 100644 index 00000000..54035ca9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_spruce_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_spruce_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_spruce_wood'}.png new file mode 100644 index 00000000..8b6ef040 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_spruce_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_warped_hyphae'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_warped_hyphae'}.png new file mode 100644 index 00000000..d312bcba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_warped_hyphae'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_warped_stem'}.png new file mode 100644 index 00000000..f8c65262 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__stripped_warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__target'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__target'}.png new file mode 100644 index 00000000..d4305fda Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__target'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__terracotta'}.png new file mode 100644 index 00000000..2ca526ea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__tinted_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__tinted_glass'}.png new file mode 100644 index 00000000..ec3052bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__tinted_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__tnt'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__tnt'}.png new file mode 100644 index 00000000..24986ef0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__tnt'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__tube_coral_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__tube_coral_block'}.png new file mode 100644 index 00000000..f3a7ff23 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__tube_coral_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__tuff'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__tuff'}.png new file mode 100644 index 00000000..9d2e947a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__tuff'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__tuff_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__tuff_bricks'}.png new file mode 100644 index 00000000..b17c73b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__tuff_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__verdant_froglight'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__verdant_froglight'}.png new file mode 100644 index 00000000..37893990 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__verdant_froglight'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__warped_hyphae'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__warped_hyphae'}.png new file mode 100644 index 00000000..6ca6d03f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__warped_hyphae'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__warped_nylium'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__warped_nylium'}.png new file mode 100644 index 00000000..8766b627 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__warped_nylium'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__warped_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__warped_planks'}.png new file mode 100644 index 00000000..e7bbb650 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__warped_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__warped_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__warped_stem'}.png new file mode 100644 index 00000000..5efc6900 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__warped_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__warped_wart_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__warped_wart_block'}.png new file mode 100644 index 00000000..9cc008b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__warped_wart_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_chiseled_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_chiseled_copper'}.png new file mode 100644 index 00000000..4e76f8ea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_chiseled_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_copper_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_copper_block'}.png new file mode 100644 index 00000000..b40de6bd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_copper_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_copper_bulb'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_copper_bulb'}.png new file mode 100644 index 00000000..5d8b959e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_copper_bulb'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_copper_grate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_copper_grate'}.png new file mode 100644 index 00000000..443105d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_copper_grate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_cut_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_cut_copper'}.png new file mode 100644 index 00000000..f87fe876 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_cut_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_exposed_chiseled_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_exposed_chiseled_copper'}.png new file mode 100644 index 00000000..4056b8bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_exposed_chiseled_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_exposed_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_exposed_copper'}.png new file mode 100644 index 00000000..66437f39 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_exposed_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_exposed_copper_bulb'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_exposed_copper_bulb'}.png new file mode 100644 index 00000000..b9107e83 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_exposed_copper_bulb'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_exposed_copper_grate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_exposed_copper_grate'}.png new file mode 100644 index 00000000..78c1bab0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_exposed_copper_grate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_exposed_cut_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_exposed_cut_copper'}.png new file mode 100644 index 00000000..9b179c40 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_exposed_cut_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_oxidized_chiseled_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_oxidized_chiseled_copper'}.png new file mode 100644 index 00000000..90b7c802 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_oxidized_chiseled_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_oxidized_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_oxidized_copper'}.png new file mode 100644 index 00000000..fd7baa4c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_oxidized_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_oxidized_copper_bulb'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_oxidized_copper_bulb'}.png new file mode 100644 index 00000000..72a555a8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_oxidized_copper_bulb'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_oxidized_copper_grate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_oxidized_copper_grate'}.png new file mode 100644 index 00000000..7f7ff4f0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_oxidized_copper_grate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_oxidized_cut_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_oxidized_cut_copper'}.png new file mode 100644 index 00000000..e9ed78ce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_oxidized_cut_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_weathered_chiseled_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_weathered_chiseled_copper'}.png new file mode 100644 index 00000000..415d6f98 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_weathered_chiseled_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_weathered_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_weathered_copper'}.png new file mode 100644 index 00000000..8db41375 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_weathered_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_weathered_copper_bulb'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_weathered_copper_bulb'}.png new file mode 100644 index 00000000..05abea86 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_weathered_copper_bulb'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_weathered_copper_grate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_weathered_copper_grate'}.png new file mode 100644 index 00000000..7bbd7b8b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_weathered_copper_grate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_weathered_cut_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_weathered_cut_copper'}.png new file mode 100644 index 00000000..cf6b01c9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__waxed_weathered_cut_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__weathered_chiseled_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__weathered_chiseled_copper'}.png new file mode 100644 index 00000000..415d6f98 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__weathered_chiseled_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__weathered_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__weathered_copper'}.png new file mode 100644 index 00000000..8db41375 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__weathered_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__weathered_copper_bulb'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__weathered_copper_bulb'}.png new file mode 100644 index 00000000..05abea86 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__weathered_copper_bulb'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__weathered_copper_grate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__weathered_copper_grate'}.png new file mode 100644 index 00000000..7bbd7b8b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__weathered_copper_grate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__weathered_cut_copper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__weathered_cut_copper'}.png new file mode 100644 index 00000000..cf6b01c9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__weathered_cut_copper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__wet_sponge'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__wet_sponge'}.png new file mode 100644 index 00000000..034c8280 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__wet_sponge'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__white_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__white_concrete'}.png new file mode 100644 index 00000000..b2e097a9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__white_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__white_concrete_powder'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__white_concrete_powder'}.png new file mode 100644 index 00000000..e975e3d8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__white_concrete_powder'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__white_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__white_glazed_terracotta'}.png new file mode 100644 index 00000000..425e67da Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__white_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__white_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__white_stained_glass'}.png new file mode 100644 index 00000000..3b4cbb32 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__white_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__white_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__white_terracotta'}.png new file mode 100644 index 00000000..d4540de1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__white_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__white_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__white_wool'}.png new file mode 100644 index 00000000..0516882e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__white_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__yellow_concrete'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__yellow_concrete'}.png new file mode 100644 index 00000000..7eb7c198 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__yellow_concrete'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__yellow_concrete_powder'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__yellow_concrete_powder'}.png new file mode 100644 index 00000000..5c887dcd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__yellow_concrete_powder'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__yellow_glazed_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__yellow_glazed_terracotta'}.png new file mode 100644 index 00000000..59c6f229 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__yellow_glazed_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__yellow_stained_glass'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__yellow_stained_glass'}.png new file mode 100644 index 00000000..2249c549 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__yellow_stained_glass'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__yellow_terracotta'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__yellow_terracotta'}.png new file mode 100644 index 00000000..0befa779 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__yellow_terracotta'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__yellow_wool'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__yellow_wool'}.png new file mode 100644 index 00000000..caef307e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'minecraft__yellow_wool'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'morered__hexidecrubrometer'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'morered__hexidecrubrometer'}.png new file mode 100644 index 00000000..10e07dec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'morered__hexidecrubrometer'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mynethersdelight__bullet_pepper_crate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mynethersdelight__bullet_pepper_crate'}.png new file mode 100644 index 00000000..960072bd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mynethersdelight__bullet_pepper_crate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mynethersdelight__letios_compost'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mynethersdelight__letios_compost'}.png new file mode 100644 index 00000000..c42d69fc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mynethersdelight__letios_compost'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mynethersdelight__powdery_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mynethersdelight__powdery_block'}.png new file mode 100644 index 00000000..002b89c6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mynethersdelight__powdery_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mynethersdelight__powdery_mosaic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mynethersdelight__powdery_mosaic'}.png new file mode 100644 index 00000000..2e0dde0f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mynethersdelight__powdery_mosaic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mynethersdelight__powdery_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mynethersdelight__powdery_planks'}.png new file mode 100644 index 00000000..9f57c370 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mynethersdelight__powdery_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mynethersdelight__resurgent_soil'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mynethersdelight__resurgent_soil'}.png new file mode 100644 index 00000000..e1164aa0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mynethersdelight__resurgent_soil'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'mynethersdelight__stripped_powdery_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'mynethersdelight__stripped_powdery_block'}.png new file mode 100644 index 00000000..20387736 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'mynethersdelight__stripped_powdery_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_beams'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_beams'}.png new file mode 100644 index 00000000..498bdccf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_beams'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_beams_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_beams_connecting'}.png new file mode 100644 index 00000000..498bdccf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_beams_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_brick_pattern'}.png new file mode 100644 index 00000000..343ada3c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_brick_pattern_connecting'}.png new file mode 100644 index 00000000..343ada3c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_brick_paving'}.png new file mode 100644 index 00000000..94624282 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_brick_paving_connecting'}.png new file mode 100644 index 00000000..94624282 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_bricks'}.png new file mode 100644 index 00000000..abdbc509 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_bricks_connecting'}.png new file mode 100644 index 00000000..abdbc509 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_crate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_crate'}.png new file mode 100644 index 00000000..3d3e24f7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_crate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_crate_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_crate_connecting'}.png new file mode 100644 index 00000000..3d3e24f7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_crate_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_diagonal_stripes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_diagonal_stripes'}.png new file mode 100644 index 00000000..5d9aa00e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_diagonal_stripes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_diagonal_stripes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_diagonal_stripes_connecting'}.png new file mode 100644 index 00000000..5d9aa00e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_diagonal_stripes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_diagonal_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_diagonal_tiles'}.png new file mode 100644 index 00000000..0dff5e6c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_diagonal_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_diagonal_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_diagonal_tiles_connecting'}.png new file mode 100644 index 00000000..0dff5e6c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_diagonal_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_dotted'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_dotted'}.png new file mode 100644 index 00000000..5cbb2417 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_dotted'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_dotted_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_dotted_connecting'}.png new file mode 100644 index 00000000..5cbb2417 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_dotted_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_flooring'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_flooring'}.png new file mode 100644 index 00000000..b1a8b1e3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_flooring'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_flooring_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_flooring_connecting'}.png new file mode 100644 index 00000000..b1a8b1e3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_flooring_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_large_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_large_tiles'}.png new file mode 100644 index 00000000..506597cf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_large_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_large_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_large_tiles_connecting'}.png new file mode 100644 index 00000000..506597cf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_large_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_mosaic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_mosaic'}.png new file mode 100644 index 00000000..8a4f414d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_mosaic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_pattern'}.png new file mode 100644 index 00000000..9d97de12 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_pattern_connecting'}.png new file mode 100644 index 00000000..9d97de12 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_rotated_bricks'}.png new file mode 100644 index 00000000..25172f19 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..25172f19 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_small_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_small_bricks'}.png new file mode 100644 index 00000000..d1c39441 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_small_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_small_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_small_bricks_connecting'}.png new file mode 100644 index 00000000..d1c39441 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_small_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_small_tiles'}.png new file mode 100644 index 00000000..4c1bcab9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_small_tiles_connecting'}.png new file mode 100644 index 00000000..4c1bcab9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_squares'}.png new file mode 100644 index 00000000..64bd9da8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_squares_connecting'}.png new file mode 100644 index 00000000..64bd9da8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_tiles'}.png new file mode 100644 index 00000000..ecaadab4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_tiles_connecting'}.png new file mode 100644 index 00000000..ecaadab4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_wavy'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_wavy'}.png new file mode 100644 index 00000000..3de1c9d3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_wavy'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_wavy_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_wavy_connecting'}.png new file mode 100644 index 00000000..3de1c9d3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_wavy_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_woven'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_woven'}.png new file mode 100644 index 00000000..f572a9ea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_woven'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_woven_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_woven_connecting'}.png new file mode 100644 index 00000000..f572a9ea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__acacia_planks_woven_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_beams'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_beams'}.png new file mode 100644 index 00000000..53a230e6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_beams'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_beams_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_beams_connecting'}.png new file mode 100644 index 00000000..53a230e6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_beams_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_bordered_diagonal_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_bordered_diagonal_tiles'}.png new file mode 100644 index 00000000..4ec113f6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_bordered_diagonal_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_bordered_diagonal_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_bordered_diagonal_tiles_connecting'}.png new file mode 100644 index 00000000..4ec113f6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_bordered_diagonal_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_bricks'}.png new file mode 100644 index 00000000..5341e7f1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_bricks_connecting'}.png new file mode 100644 index 00000000..5341e7f1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_cut'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_cut'}.png new file mode 100644 index 00000000..8f9cd13b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_cut'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_cut_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_cut_connecting'}.png new file mode 100644 index 00000000..8f9cd13b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_cut_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_diagonal_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_diagonal_tiles'}.png new file mode 100644 index 00000000..43295f67 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_diagonal_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_edged'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_edged'}.png new file mode 100644 index 00000000..22b5622e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_edged'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_edged_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_edged_connecting'}.png new file mode 100644 index 00000000..22b5622e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_edged_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_jewel'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_jewel'}.png new file mode 100644 index 00000000..f82d4451 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_jewel'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_pillar'}.png new file mode 100644 index 00000000..847a7a88 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_pillar_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_pillar_connecting'}.png new file mode 100644 index 00000000..847a7a88 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_pillar_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_polished'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_polished'}.png new file mode 100644 index 00000000..50397b7d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_polished'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_polished_connecting'}.png new file mode 100644 index 00000000..50397b7d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_shiny'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_shiny'}.png new file mode 100644 index 00000000..cd8ca1c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_shiny'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_shiny_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_shiny_connecting'}.png new file mode 100644 index 00000000..cd8ca1c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_shiny_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_smooth'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_smooth'}.png new file mode 100644 index 00000000..aef0e01e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_smooth'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_tiles'}.png new file mode 100644 index 00000000..fc0d893b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_tiles_connecting'}.png new file mode 100644 index 00000000..fc0d893b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__amethyst_block_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_brick_pattern'}.png new file mode 100644 index 00000000..e201cee2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_brick_pattern_connecting'}.png new file mode 100644 index 00000000..e201cee2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_brick_paving'}.png new file mode 100644 index 00000000..28381c6e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_brick_paving_connecting'}.png new file mode 100644 index 00000000..28381c6e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_bricks'}.png new file mode 100644 index 00000000..2bb27fa1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_bricks_connecting'}.png new file mode 100644 index 00000000..2bb27fa1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_diagonal_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_diagonal_bricks'}.png new file mode 100644 index 00000000..c5c12963 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_diagonal_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_diagonal_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_diagonal_bricks_connecting'}.png new file mode 100644 index 00000000..c5c12963 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_diagonal_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_dotted'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_dotted'}.png new file mode 100644 index 00000000..a73aefc8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_dotted'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_dotted_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_dotted_connecting'}.png new file mode 100644 index 00000000..a73aefc8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_dotted_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_paving'}.png new file mode 100644 index 00000000..2dd9adfc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_paving_connecting'}.png new file mode 100644 index 00000000..2dd9adfc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_polished_connecting'}.png new file mode 100644 index 00000000..ea05f38c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_rotated_bricks'}.png new file mode 100644 index 00000000..20949e5d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..20949e5d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_squares'}.png new file mode 100644 index 00000000..c3019c61 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_squares_connecting'}.png new file mode 100644 index 00000000..c3019c61 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_tiles'}.png new file mode 100644 index 00000000..9a60eca8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_tiles_connecting'}.png new file mode 100644 index 00000000..9a60eca8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_wavy'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_wavy'}.png new file mode 100644 index 00000000..a84132dc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_wavy'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_wavy_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_wavy_connecting'}.png new file mode 100644 index 00000000..a84132dc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__andesite_wavy_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_beams'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_beams'}.png new file mode 100644 index 00000000..a006fdec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_beams'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_beams_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_beams_connecting'}.png new file mode 100644 index 00000000..a006fdec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_beams_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_brick_pattern'}.png new file mode 100644 index 00000000..44dbcc71 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_brick_pattern_connecting'}.png new file mode 100644 index 00000000..44dbcc71 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_brick_paving'}.png new file mode 100644 index 00000000..899be32d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_brick_paving_connecting'}.png new file mode 100644 index 00000000..899be32d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_bricks'}.png new file mode 100644 index 00000000..d275021f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_bricks_connecting'}.png new file mode 100644 index 00000000..d275021f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_crate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_crate'}.png new file mode 100644 index 00000000..52cc926d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_crate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_crate_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_crate_connecting'}.png new file mode 100644 index 00000000..52cc926d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_crate_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_diagonal_stripes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_diagonal_stripes'}.png new file mode 100644 index 00000000..5ed8c43c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_diagonal_stripes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_diagonal_stripes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_diagonal_stripes_connecting'}.png new file mode 100644 index 00000000..5ed8c43c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_diagonal_stripes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_diagonal_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_diagonal_tiles'}.png new file mode 100644 index 00000000..64f66085 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_diagonal_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_diagonal_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_diagonal_tiles_connecting'}.png new file mode 100644 index 00000000..64f66085 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_diagonal_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_dotted'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_dotted'}.png new file mode 100644 index 00000000..3d4a4b5e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_dotted'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_dotted_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_dotted_connecting'}.png new file mode 100644 index 00000000..3d4a4b5e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_dotted_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_flooring'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_flooring'}.png new file mode 100644 index 00000000..3c853388 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_flooring'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_flooring_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_flooring_connecting'}.png new file mode 100644 index 00000000..3c853388 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_flooring_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_large_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_large_tiles'}.png new file mode 100644 index 00000000..7677625c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_large_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_large_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_large_tiles_connecting'}.png new file mode 100644 index 00000000..7677625c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_large_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_pattern'}.png new file mode 100644 index 00000000..6ff1ede7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_pattern_connecting'}.png new file mode 100644 index 00000000..6ff1ede7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_rotated_bricks'}.png new file mode 100644 index 00000000..58453ae4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..58453ae4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_small_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_small_bricks'}.png new file mode 100644 index 00000000..e72b95aa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_small_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_small_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_small_bricks_connecting'}.png new file mode 100644 index 00000000..e72b95aa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_small_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_small_tiles'}.png new file mode 100644 index 00000000..e56e5461 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_small_tiles_connecting'}.png new file mode 100644 index 00000000..e56e5461 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_squares'}.png new file mode 100644 index 00000000..1ea8eeb9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_squares_connecting'}.png new file mode 100644 index 00000000..1ea8eeb9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_tiles'}.png new file mode 100644 index 00000000..e614397c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_tiles_connecting'}.png new file mode 100644 index 00000000..e614397c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_wavy'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_wavy'}.png new file mode 100644 index 00000000..1a8f9e80 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_wavy'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_wavy_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_wavy_connecting'}.png new file mode 100644 index 00000000..1a8f9e80 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_wavy_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_woven'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_woven'}.png new file mode 100644 index 00000000..332e07dd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_woven'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_woven_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_woven_connecting'}.png new file mode 100644 index 00000000..332e07dd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bamboo_planks_woven_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_beams'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_beams'}.png new file mode 100644 index 00000000..d385a49b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_beams'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_beams_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_beams_connecting'}.png new file mode 100644 index 00000000..d385a49b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_beams_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_bordered'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_bordered'}.png new file mode 100644 index 00000000..0ed10517 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_bordered'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_bordered_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_bordered_connecting'}.png new file mode 100644 index 00000000..0ed10517 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_bordered_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_bordered_polished'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_bordered_polished'}.png new file mode 100644 index 00000000..b035dcce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_bordered_polished'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_bordered_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_bordered_polished_connecting'}.png new file mode 100644 index 00000000..b035dcce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_bordered_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_bricks'}.png new file mode 100644 index 00000000..90a4504c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_bricks_connecting'}.png new file mode 100644 index 00000000..90a4504c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_chiseled_piglin'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_chiseled_piglin'}.png new file mode 100644 index 00000000..769e6ef5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_chiseled_piglin'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_diagonal_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_diagonal_tiles'}.png new file mode 100644 index 00000000..83523b57 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_diagonal_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_diagonal_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_diagonal_tiles_connecting'}.png new file mode 100644 index 00000000..83523b57 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_diagonal_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_pattern'}.png new file mode 100644 index 00000000..52a980db Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_pattern_connecting'}.png new file mode 100644 index 00000000..52a980db Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_patterned'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_patterned'}.png new file mode 100644 index 00000000..bd7e2dd0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_patterned'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_patterned_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_patterned_connecting'}.png new file mode 100644 index 00000000..bd7e2dd0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_patterned_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_tiles'}.png new file mode 100644 index 00000000..e3404f50 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_tiles_connecting'}.png new file mode 100644 index 00000000..e3404f50 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__basalt_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_beams'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_beams'}.png new file mode 100644 index 00000000..c34af020 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_beams'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_beams_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_beams_connecting'}.png new file mode 100644 index 00000000..c34af020 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_beams_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_brick_pattern'}.png new file mode 100644 index 00000000..62cd6fd4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_brick_pattern_connecting'}.png new file mode 100644 index 00000000..62cd6fd4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_brick_paving'}.png new file mode 100644 index 00000000..1da1db37 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_brick_paving_connecting'}.png new file mode 100644 index 00000000..1da1db37 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_bricks'}.png new file mode 100644 index 00000000..42ab0265 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_bricks_connecting'}.png new file mode 100644 index 00000000..42ab0265 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_crate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_crate'}.png new file mode 100644 index 00000000..b111c8d1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_crate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_crate_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_crate_connecting'}.png new file mode 100644 index 00000000..b111c8d1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_crate_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_diagonal_stripes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_diagonal_stripes'}.png new file mode 100644 index 00000000..2a564a73 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_diagonal_stripes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_diagonal_stripes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_diagonal_stripes_connecting'}.png new file mode 100644 index 00000000..2a564a73 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_diagonal_stripes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_diagonal_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_diagonal_tiles'}.png new file mode 100644 index 00000000..dd689e05 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_diagonal_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_diagonal_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_diagonal_tiles_connecting'}.png new file mode 100644 index 00000000..dd689e05 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_diagonal_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_dotted'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_dotted'}.png new file mode 100644 index 00000000..59318311 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_dotted'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_dotted_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_dotted_connecting'}.png new file mode 100644 index 00000000..59318311 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_dotted_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_flooring'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_flooring'}.png new file mode 100644 index 00000000..3865181b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_flooring'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_flooring_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_flooring_connecting'}.png new file mode 100644 index 00000000..3865181b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_flooring_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_large_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_large_tiles'}.png new file mode 100644 index 00000000..e30378e2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_large_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_large_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_large_tiles_connecting'}.png new file mode 100644 index 00000000..e30378e2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_large_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_mosaic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_mosaic'}.png new file mode 100644 index 00000000..833371ff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_mosaic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_pattern'}.png new file mode 100644 index 00000000..6bbbec68 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_pattern_connecting'}.png new file mode 100644 index 00000000..6bbbec68 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_rotated_bricks'}.png new file mode 100644 index 00000000..9dbe71e4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..9dbe71e4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_small_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_small_bricks'}.png new file mode 100644 index 00000000..99cbb5f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_small_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_small_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_small_bricks_connecting'}.png new file mode 100644 index 00000000..99cbb5f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_small_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_small_tiles'}.png new file mode 100644 index 00000000..6f46dbab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_small_tiles_connecting'}.png new file mode 100644 index 00000000..6f46dbab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_squares'}.png new file mode 100644 index 00000000..fd64402e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_squares_connecting'}.png new file mode 100644 index 00000000..fd64402e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_tiles'}.png new file mode 100644 index 00000000..3aca2bc2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_tiles_connecting'}.png new file mode 100644 index 00000000..3aca2bc2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_wavy'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_wavy'}.png new file mode 100644 index 00000000..ee3f7a40 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_wavy'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_wavy_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_wavy_connecting'}.png new file mode 100644 index 00000000..ee3f7a40 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_wavy_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_woven'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_woven'}.png new file mode 100644 index 00000000..4af8f373 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_woven'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_woven_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_woven_connecting'}.png new file mode 100644 index 00000000..4af8f373 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__birch_planks_woven_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_brick_pattern'}.png new file mode 100644 index 00000000..790c646e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_brick_pattern_connecting'}.png new file mode 100644 index 00000000..790c646e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_brick_paving'}.png new file mode 100644 index 00000000..4bfc3da9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_brick_paving_connecting'}.png new file mode 100644 index 00000000..4bfc3da9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_diagonal_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_diagonal_bricks'}.png new file mode 100644 index 00000000..881c3583 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_diagonal_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_diagonal_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_diagonal_bricks_connecting'}.png new file mode 100644 index 00000000..881c3583 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_diagonal_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_polished_connecting'}.png new file mode 100644 index 00000000..9050b2d8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_rotated_bricks'}.png new file mode 100644 index 00000000..a1dd6e65 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..a1dd6e65 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_tiles'}.png new file mode 100644 index 00000000..37601e59 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_tiles_connecting'}.png new file mode 100644 index 00000000..37601e59 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blackstone_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_bordered'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_bordered'}.png new file mode 100644 index 00000000..c117ec36 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_bordered'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_bordered_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_bordered_connecting'}.png new file mode 100644 index 00000000..c117ec36 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_bordered_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_bricks'}.png new file mode 100644 index 00000000..e35cb394 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_bricks_connecting'}.png new file mode 100644 index 00000000..e35cb394 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_chiseled'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_chiseled'}.png new file mode 100644 index 00000000..72dda607 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_chiseled'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_chiseled_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_chiseled_connecting'}.png new file mode 100644 index 00000000..72dda607 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_chiseled_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_cone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_cone'}.png new file mode 100644 index 00000000..af539f48 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_cone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_cracked'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_cracked'}.png new file mode 100644 index 00000000..03eeba74 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_cracked'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_patterned'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_patterned'}.png new file mode 100644 index 00000000..ebf001f3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_patterned'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_patterned_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_patterned_connecting'}.png new file mode 100644 index 00000000..ebf001f3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_patterned_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_pillar'}.png new file mode 100644 index 00000000..296642e8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_pillar_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_pillar_connecting'}.png new file mode 100644 index 00000000..296642e8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_pillar_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_rocky'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_rocky'}.png new file mode 100644 index 00000000..a3ba8e23 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_rocky'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_slanted_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_slanted_tiles'}.png new file mode 100644 index 00000000..9f323967 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_slanted_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_slanted_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_slanted_tiles_connecting'}.png new file mode 100644 index 00000000..9f323967 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_slanted_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_tiles'}.png new file mode 100644 index 00000000..d183ea27 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_tiles_connecting'}.png new file mode 100644 index 00000000..d183ea27 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__blue_ice_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_bordered'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_bordered'}.png new file mode 100644 index 00000000..1e9caddd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_bordered'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_bordered_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_bordered_connecting'}.png new file mode 100644 index 00000000..1e9caddd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_bordered_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_bundled'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_bundled'}.png new file mode 100644 index 00000000..5facd798 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_bundled'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_chiseled'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_chiseled'}.png new file mode 100644 index 00000000..2d6182d6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_chiseled'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_chiseled_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_chiseled_connecting'}.png new file mode 100644 index 00000000..2d6182d6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_chiseled_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_connecting_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_connecting_connecting'}.png new file mode 100644 index 00000000..770a908f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_connecting_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_cracked'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_cracked'}.png new file mode 100644 index 00000000..6fe0d3ab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_cracked'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_decorated'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_decorated'}.png new file mode 100644 index 00000000..d11e67f7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_decorated'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_decorated_bordered'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_decorated_bordered'}.png new file mode 100644 index 00000000..d0c3cf39 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_decorated_bordered'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_decorated_bordered_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_decorated_bordered_connecting'}.png new file mode 100644 index 00000000..d0c3cf39 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_decorated_bordered_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_inverted_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_inverted_tiles'}.png new file mode 100644 index 00000000..8f69dd41 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_inverted_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_inverted_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_inverted_tiles_connecting'}.png new file mode 100644 index 00000000..8f69dd41 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_inverted_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_patterned'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_patterned'}.png new file mode 100644 index 00000000..067c73c6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_patterned'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_patterned_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_patterned_connecting'}.png new file mode 100644 index 00000000..067c73c6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_patterned_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_pillar'}.png new file mode 100644 index 00000000..54839381 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_pillar_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_pillar_connecting'}.png new file mode 100644 index 00000000..54839381 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_pillar_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_rib'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_rib'}.png new file mode 100644 index 00000000..b049f92f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_rib'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_skull'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_skull'}.png new file mode 100644 index 00000000..48963d4e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_skull'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_smooth'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_smooth'}.png new file mode 100644 index 00000000..a9823559 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__bone_block_smooth'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_beams'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_beams'}.png new file mode 100644 index 00000000..ec23b6ad Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_beams'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_beams_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_beams_connecting'}.png new file mode 100644 index 00000000..ec23b6ad Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_beams_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_brick_pattern'}.png new file mode 100644 index 00000000..26cf67f0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_brick_pattern_connecting'}.png new file mode 100644 index 00000000..26cf67f0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_brick_paving'}.png new file mode 100644 index 00000000..7d5d2ee8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_brick_paving_connecting'}.png new file mode 100644 index 00000000..7d5d2ee8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_bricks'}.png new file mode 100644 index 00000000..88c24f00 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_bricks_connecting'}.png new file mode 100644 index 00000000..88c24f00 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_crate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_crate'}.png new file mode 100644 index 00000000..4433ad58 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_crate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_crate_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_crate_connecting'}.png new file mode 100644 index 00000000..4433ad58 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_crate_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_diagonal_stripes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_diagonal_stripes'}.png new file mode 100644 index 00000000..902708d5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_diagonal_stripes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_diagonal_stripes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_diagonal_stripes_connecting'}.png new file mode 100644 index 00000000..902708d5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_diagonal_stripes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_diagonal_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_diagonal_tiles'}.png new file mode 100644 index 00000000..577a5805 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_diagonal_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_diagonal_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_diagonal_tiles_connecting'}.png new file mode 100644 index 00000000..577a5805 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_diagonal_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_dotted'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_dotted'}.png new file mode 100644 index 00000000..859d8931 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_dotted'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_dotted_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_dotted_connecting'}.png new file mode 100644 index 00000000..859d8931 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_dotted_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_flooring'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_flooring'}.png new file mode 100644 index 00000000..549d52f1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_flooring'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_flooring_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_flooring_connecting'}.png new file mode 100644 index 00000000..549d52f1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_flooring_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_large_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_large_tiles'}.png new file mode 100644 index 00000000..71f41d3b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_large_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_large_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_large_tiles_connecting'}.png new file mode 100644 index 00000000..71f41d3b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_large_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_mosaic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_mosaic'}.png new file mode 100644 index 00000000..f5fda7e6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_mosaic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_pattern'}.png new file mode 100644 index 00000000..92d2f74d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_pattern_connecting'}.png new file mode 100644 index 00000000..92d2f74d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_rotated_bricks'}.png new file mode 100644 index 00000000..4d775404 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..4d775404 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_small_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_small_bricks'}.png new file mode 100644 index 00000000..34b66967 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_small_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_small_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_small_bricks_connecting'}.png new file mode 100644 index 00000000..34b66967 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_small_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_small_tiles'}.png new file mode 100644 index 00000000..81a7dfbd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_small_tiles_connecting'}.png new file mode 100644 index 00000000..81a7dfbd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_squares'}.png new file mode 100644 index 00000000..6eee12a5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_squares_connecting'}.png new file mode 100644 index 00000000..6eee12a5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_tiles'}.png new file mode 100644 index 00000000..010da7aa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_tiles_connecting'}.png new file mode 100644 index 00000000..010da7aa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_wavy'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_wavy'}.png new file mode 100644 index 00000000..5853d6e0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_wavy'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_wavy_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_wavy_connecting'}.png new file mode 100644 index 00000000..5853d6e0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_wavy_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_woven'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_woven'}.png new file mode 100644 index 00000000..c5bf540d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_woven'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_woven_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_woven_connecting'}.png new file mode 100644 index 00000000..c5bf540d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cherry_planks_woven_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_carved'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_carved'}.png new file mode 100644 index 00000000..4a85709e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_carved'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_carved_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_carved_connecting'}.png new file mode 100644 index 00000000..4a85709e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_carved_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_chiseled'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_chiseled'}.png new file mode 100644 index 00000000..4ab45c2a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_chiseled'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_chiseled_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_chiseled_connecting'}.png new file mode 100644 index 00000000..4ab45c2a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_chiseled_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_circles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_circles'}.png new file mode 100644 index 00000000..3c021bbc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_circles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_circles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_circles_connecting'}.png new file mode 100644 index 00000000..3c021bbc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_circles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_compacted'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_compacted'}.png new file mode 100644 index 00000000..634a6106 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_compacted'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_compacted_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_compacted_connecting'}.png new file mode 100644 index 00000000..634a6106 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_compacted_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_ovals'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_ovals'}.png new file mode 100644 index 00000000..322ba7ae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_ovals'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_ovals_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_ovals_connecting'}.png new file mode 100644 index 00000000..322ba7ae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_ovals_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_pattern'}.png new file mode 100644 index 00000000..952c576b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_pattern_connecting'}.png new file mode 100644 index 00000000..952c576b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_pillar'}.png new file mode 100644 index 00000000..a269d131 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_pillar_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_pillar_connecting'}.png new file mode 100644 index 00000000..a269d131 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_pillar_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_polished'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_polished'}.png new file mode 100644 index 00000000..4ff3ef3d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_polished'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_rotated_bricks'}.png new file mode 100644 index 00000000..1294c10f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..1294c10f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_small_tiles'}.png new file mode 100644 index 00000000..ee4ee4d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_small_tiles_connecting'}.png new file mode 100644 index 00000000..ee4ee4d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_stripes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_stripes'}.png new file mode 100644 index 00000000..02425126 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_stripes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_stripes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_stripes_connecting'}.png new file mode 100644 index 00000000..02425126 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__coal_block_stripes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_beams'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_beams'}.png new file mode 100644 index 00000000..84f2a1d3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_beams'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_beams_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_beams_connecting'}.png new file mode 100644 index 00000000..84f2a1d3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_beams_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_brick_pattern'}.png new file mode 100644 index 00000000..9b38e4c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_brick_pattern_connecting'}.png new file mode 100644 index 00000000..9b38e4c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_brick_paving'}.png new file mode 100644 index 00000000..3f5fe2c1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_brick_paving_connecting'}.png new file mode 100644 index 00000000..3f5fe2c1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_bricks'}.png new file mode 100644 index 00000000..70fc7d3c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_bricks_connecting'}.png new file mode 100644 index 00000000..70fc7d3c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_large_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_large_tiles'}.png new file mode 100644 index 00000000..e8010dda Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_large_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_large_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_large_tiles_connecting'}.png new file mode 100644 index 00000000..e8010dda Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_large_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_paving'}.png new file mode 100644 index 00000000..a6bf118b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_paving_connecting'}.png new file mode 100644 index 00000000..a6bf118b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_pillar'}.png new file mode 100644 index 00000000..3f3b18f3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_pillar_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_pillar_connecting'}.png new file mode 100644 index 00000000..3f3b18f3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_pillar_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_pulverized'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_pulverized'}.png new file mode 100644 index 00000000..5aa7cf1d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_pulverized'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_pulverized_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_pulverized_connecting'}.png new file mode 100644 index 00000000..5aa7cf1d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_pulverized_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_rotated_bricks'}.png new file mode 100644 index 00000000..f1f1ec61 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..f1f1ec61 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_small_tiles'}.png new file mode 100644 index 00000000..c01c77de Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_small_tiles_connecting'}.png new file mode 100644 index 00000000..c01c77de Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_squares'}.png new file mode 100644 index 00000000..006d5c2a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_squares_connecting'}.png new file mode 100644 index 00000000..006d5c2a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_stripes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_stripes'}.png new file mode 100644 index 00000000..04e5ca43 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_stripes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_stripes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_stripes_connecting'}.png new file mode 100644 index 00000000..04e5ca43 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_stripes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_tiles'}.png new file mode 100644 index 00000000..de091681 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_tiles_connecting'}.png new file mode 100644 index 00000000..de091681 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_worn_stripes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_worn_stripes'}.png new file mode 100644 index 00000000..26c75963 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_worn_stripes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_worn_stripes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_worn_stripes_connecting'}.png new file mode 100644 index 00000000..26c75963 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobbled_deepslate_worn_stripes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_beams'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_beams'}.png new file mode 100644 index 00000000..50ffb1c7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_beams'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_beams_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_beams_connecting'}.png new file mode 100644 index 00000000..50ffb1c7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_beams_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_brick_pattern'}.png new file mode 100644 index 00000000..534a7981 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_brick_pattern_connecting'}.png new file mode 100644 index 00000000..534a7981 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_brick_paving'}.png new file mode 100644 index 00000000..94191691 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_brick_paving_connecting'}.png new file mode 100644 index 00000000..94191691 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_chiseled_border'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_chiseled_border'}.png new file mode 100644 index 00000000..ad3feaec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_chiseled_border'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_chiseled_border_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_chiseled_border_connecting'}.png new file mode 100644 index 00000000..ad3feaec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_chiseled_border_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_crosses'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_crosses'}.png new file mode 100644 index 00000000..99a29f2c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_crosses'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_crosses_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_crosses_connecting'}.png new file mode 100644 index 00000000..99a29f2c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_crosses_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_dented'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_dented'}.png new file mode 100644 index 00000000..81a1c10d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_dented'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_dented_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_dented_connecting'}.png new file mode 100644 index 00000000..81a1c10d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_dented_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_inverted_dented'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_inverted_dented'}.png new file mode 100644 index 00000000..df53a943 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_inverted_dented'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_inverted_dented_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_inverted_dented_connecting'}.png new file mode 100644 index 00000000..df53a943 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_inverted_dented_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_large_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_large_squares'}.png new file mode 100644 index 00000000..88c214d0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_large_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_paving'}.png new file mode 100644 index 00000000..66376698 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_paving_connecting'}.png new file mode 100644 index 00000000..66376698 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_pillar'}.png new file mode 100644 index 00000000..2bc2e2ee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_pillar_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_pillar_connecting'}.png new file mode 100644 index 00000000..2bc2e2ee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_pillar_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_polished'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_polished'}.png new file mode 100644 index 00000000..747772ef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_polished'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_pulverized'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_pulverized'}.png new file mode 100644 index 00000000..ab38d399 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_pulverized'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_pulverized_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_pulverized_connecting'}.png new file mode 100644 index 00000000..ab38d399 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_pulverized_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_rotated_bricks'}.png new file mode 100644 index 00000000..15b7c0cd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..15b7c0cd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_sheared'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_sheared'}.png new file mode 100644 index 00000000..542d8b6a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_sheared'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_small_tiles'}.png new file mode 100644 index 00000000..3c95d891 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_small_tiles_connecting'}.png new file mode 100644 index 00000000..3c95d891 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_squares'}.png new file mode 100644 index 00000000..c6339196 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_squares_connecting'}.png new file mode 100644 index 00000000..c6339196 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_stripes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_stripes'}.png new file mode 100644 index 00000000..60190dab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_stripes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_stripes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_stripes_connecting'}.png new file mode 100644 index 00000000..60190dab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_stripes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_tiles'}.png new file mode 100644 index 00000000..0dfea327 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_tiles_connecting'}.png new file mode 100644 index 00000000..0dfea327 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_worn_stripes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_worn_stripes'}.png new file mode 100644 index 00000000..821a4dd7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_worn_stripes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_worn_stripes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_worn_stripes_connecting'}.png new file mode 100644 index 00000000..821a4dd7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__cobblestone_worn_stripes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_bars'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_bars'}.png new file mode 100644 index 00000000..fe106b4d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_bars'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_bars_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_bars_connecting'}.png new file mode 100644 index 00000000..fe106b4d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_bars_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_circles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_circles'}.png new file mode 100644 index 00000000..cffc18c8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_circles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_circles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_circles_connecting'}.png new file mode 100644 index 00000000..cffc18c8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_circles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_cone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_cone'}.png new file mode 100644 index 00000000..6de9f2cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_cone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_gears'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_gears'}.png new file mode 100644 index 00000000..9b14b6b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_gears'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_gears_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_gears_connecting'}.png new file mode 100644 index 00000000..9b14b6b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_gears_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_lines'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_lines'}.png new file mode 100644 index 00000000..eb229c96 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_lines'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_lines_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_lines_connecting'}.png new file mode 100644 index 00000000..eb229c96 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_lines_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_pattern'}.png new file mode 100644 index 00000000..498ead1b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_pattern_connecting'}.png new file mode 100644 index 00000000..498ead1b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_pillar'}.png new file mode 100644 index 00000000..e48460bf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_pillar_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_pillar_connecting'}.png new file mode 100644 index 00000000..e48460bf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_pillar_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_polished'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_polished'}.png new file mode 100644 index 00000000..15f7304a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_polished'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_polished_connecting'}.png new file mode 100644 index 00000000..15f7304a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_shafts'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_shafts'}.png new file mode 100644 index 00000000..4308454b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_shafts'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_shafts_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_shafts_connecting'}.png new file mode 100644 index 00000000..4308454b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_shafts_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_small_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_small_bricks'}.png new file mode 100644 index 00000000..8d35e7e2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_small_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_small_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_small_bricks_connecting'}.png new file mode 100644 index 00000000..8d35e7e2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_small_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_smooth'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_smooth'}.png new file mode 100644 index 00000000..434f46cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__copper_block_smooth'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_beams'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_beams'}.png new file mode 100644 index 00000000..09ae478d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_beams'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_beams_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_beams_connecting'}.png new file mode 100644 index 00000000..09ae478d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_beams_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_brick_pattern'}.png new file mode 100644 index 00000000..b7176f09 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_brick_pattern_connecting'}.png new file mode 100644 index 00000000..b7176f09 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_brick_paving'}.png new file mode 100644 index 00000000..655093f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_brick_paving_connecting'}.png new file mode 100644 index 00000000..655093f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_bricks'}.png new file mode 100644 index 00000000..123c7b28 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_bricks_connecting'}.png new file mode 100644 index 00000000..123c7b28 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_crate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_crate'}.png new file mode 100644 index 00000000..8b00a9ad Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_crate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_crate_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_crate_connecting'}.png new file mode 100644 index 00000000..8b00a9ad Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_crate_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_diagonal_stripes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_diagonal_stripes'}.png new file mode 100644 index 00000000..aec4ecae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_diagonal_stripes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_diagonal_stripes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_diagonal_stripes_connecting'}.png new file mode 100644 index 00000000..aec4ecae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_diagonal_stripes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_diagonal_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_diagonal_tiles'}.png new file mode 100644 index 00000000..0e68921f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_diagonal_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_diagonal_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_diagonal_tiles_connecting'}.png new file mode 100644 index 00000000..0e68921f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_diagonal_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_dotted'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_dotted'}.png new file mode 100644 index 00000000..457ffe3e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_dotted'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_dotted_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_dotted_connecting'}.png new file mode 100644 index 00000000..457ffe3e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_dotted_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_flooring'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_flooring'}.png new file mode 100644 index 00000000..ab487309 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_flooring'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_flooring_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_flooring_connecting'}.png new file mode 100644 index 00000000..ab487309 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_flooring_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_large_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_large_tiles'}.png new file mode 100644 index 00000000..32d59b8d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_large_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_large_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_large_tiles_connecting'}.png new file mode 100644 index 00000000..32d59b8d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_large_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_mosaic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_mosaic'}.png new file mode 100644 index 00000000..c3135eec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_mosaic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_pattern'}.png new file mode 100644 index 00000000..7ce823ef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_pattern_connecting'}.png new file mode 100644 index 00000000..7ce823ef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_rotated_bricks'}.png new file mode 100644 index 00000000..13411bb8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..13411bb8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_small_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_small_bricks'}.png new file mode 100644 index 00000000..dd4274c3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_small_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_small_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_small_bricks_connecting'}.png new file mode 100644 index 00000000..dd4274c3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_small_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_small_tiles'}.png new file mode 100644 index 00000000..e8a27213 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_small_tiles_connecting'}.png new file mode 100644 index 00000000..e8a27213 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_squares'}.png new file mode 100644 index 00000000..7e82bc12 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_squares_connecting'}.png new file mode 100644 index 00000000..7e82bc12 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_tiles'}.png new file mode 100644 index 00000000..9778a85d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_tiles_connecting'}.png new file mode 100644 index 00000000..9778a85d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_wavy'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_wavy'}.png new file mode 100644 index 00000000..74576b77 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_wavy'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_wavy_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_wavy_connecting'}.png new file mode 100644 index 00000000..74576b77 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_wavy_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_woven'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_woven'}.png new file mode 100644 index 00000000..249db2e2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_woven'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_woven_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_woven_connecting'}.png new file mode 100644 index 00000000..249db2e2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__crimson_planks_woven_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_beams'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_beams'}.png new file mode 100644 index 00000000..238ef6d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_beams'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_beams_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_beams_connecting'}.png new file mode 100644 index 00000000..238ef6d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_beams_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_brick_pattern'}.png new file mode 100644 index 00000000..55ae953a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_brick_pattern_connecting'}.png new file mode 100644 index 00000000..55ae953a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_brick_paving'}.png new file mode 100644 index 00000000..1a08d8bc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_brick_paving_connecting'}.png new file mode 100644 index 00000000..1a08d8bc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_bricks'}.png new file mode 100644 index 00000000..08ad627f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_bricks_connecting'}.png new file mode 100644 index 00000000..08ad627f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_crate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_crate'}.png new file mode 100644 index 00000000..c9e61be0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_crate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_crate_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_crate_connecting'}.png new file mode 100644 index 00000000..c9e61be0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_crate_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_diagonal_stripes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_diagonal_stripes'}.png new file mode 100644 index 00000000..a79c1cc2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_diagonal_stripes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_diagonal_stripes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_diagonal_stripes_connecting'}.png new file mode 100644 index 00000000..a79c1cc2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_diagonal_stripes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_diagonal_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_diagonal_tiles'}.png new file mode 100644 index 00000000..8c66c589 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_diagonal_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_diagonal_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_diagonal_tiles_connecting'}.png new file mode 100644 index 00000000..8c66c589 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_diagonal_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_dotted'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_dotted'}.png new file mode 100644 index 00000000..9959f343 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_dotted'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_dotted_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_dotted_connecting'}.png new file mode 100644 index 00000000..9959f343 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_dotted_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_flooring'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_flooring'}.png new file mode 100644 index 00000000..b6a1d384 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_flooring'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_flooring_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_flooring_connecting'}.png new file mode 100644 index 00000000..b6a1d384 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_flooring_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_large_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_large_tiles'}.png new file mode 100644 index 00000000..38c8c6ef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_large_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_large_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_large_tiles_connecting'}.png new file mode 100644 index 00000000..38c8c6ef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_large_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_mosaic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_mosaic'}.png new file mode 100644 index 00000000..0b19a5b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_mosaic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_pattern'}.png new file mode 100644 index 00000000..41458133 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_pattern_connecting'}.png new file mode 100644 index 00000000..41458133 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_rotated_bricks'}.png new file mode 100644 index 00000000..b1b751f5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..b1b751f5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_small_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_small_bricks'}.png new file mode 100644 index 00000000..55ecb8e4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_small_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_small_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_small_bricks_connecting'}.png new file mode 100644 index 00000000..55ecb8e4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_small_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_small_tiles'}.png new file mode 100644 index 00000000..9e2678f5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_small_tiles_connecting'}.png new file mode 100644 index 00000000..9e2678f5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_squares'}.png new file mode 100644 index 00000000..367629b0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_squares_connecting'}.png new file mode 100644 index 00000000..367629b0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_tiles'}.png new file mode 100644 index 00000000..ad923a90 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_tiles_connecting'}.png new file mode 100644 index 00000000..ad923a90 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_wavy'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_wavy'}.png new file mode 100644 index 00000000..3469d66b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_wavy'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_wavy_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_wavy_connecting'}.png new file mode 100644 index 00000000..3469d66b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_wavy_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_woven'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_woven'}.png new file mode 100644 index 00000000..6d1cdc3d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_woven'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_woven_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_woven_connecting'}.png new file mode 100644 index 00000000..6d1cdc3d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_oak_planks_woven_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_beams'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_beams'}.png new file mode 100644 index 00000000..9a02cd7b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_beams'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_beams_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_beams_connecting'}.png new file mode 100644 index 00000000..9a02cd7b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_beams_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_brick_paving'}.png new file mode 100644 index 00000000..29b9dfb4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_brick_paving_connecting'}.png new file mode 100644 index 00000000..29b9dfb4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_bricks'}.png new file mode 100644 index 00000000..8b78e781 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_bricks_connecting'}.png new file mode 100644 index 00000000..8b78e781 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_dotted'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_dotted'}.png new file mode 100644 index 00000000..d8f43978 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_dotted'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_dotted_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_dotted_connecting'}.png new file mode 100644 index 00000000..d8f43978 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_dotted_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_fabric'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_fabric'}.png new file mode 100644 index 00000000..230fa169 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_fabric'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_fabric_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_fabric_connecting'}.png new file mode 100644 index 00000000..230fa169 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_fabric_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_large_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_large_tiles'}.png new file mode 100644 index 00000000..7e3a00d6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_large_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_large_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_large_tiles_connecting'}.png new file mode 100644 index 00000000..7e3a00d6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_large_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_rotated_bricks'}.png new file mode 100644 index 00000000..5d6ded99 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..5d6ded99 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_rows'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_rows'}.png new file mode 100644 index 00000000..e885b513 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_rows'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_rows_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_rows_connecting'}.png new file mode 100644 index 00000000..e885b513 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_rows_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_squares'}.png new file mode 100644 index 00000000..b0115354 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_squares_connecting'}.png new file mode 100644 index 00000000..b0115354 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_tiles'}.png new file mode 100644 index 00000000..25e00cb9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_tiles_connecting'}.png new file mode 100644 index 00000000..25e00cb9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_wavy'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_wavy'}.png new file mode 100644 index 00000000..d44cb693 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_wavy'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_wavy_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_wavy_connecting'}.png new file mode 100644 index 00000000..d44cb693 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_wavy_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_woven'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_woven'}.png new file mode 100644 index 00000000..36314e42 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_woven'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_woven_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_woven_connecting'}.png new file mode 100644 index 00000000..36314e42 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dark_prismarine_woven_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_chiseled'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_chiseled'}.png new file mode 100644 index 00000000..35daf355 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_chiseled'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_chiseled_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_chiseled_connecting'}.png new file mode 100644 index 00000000..35daf355 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_chiseled_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_chiseled_cubes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_chiseled_cubes'}.png new file mode 100644 index 00000000..b02e6ba4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_chiseled_cubes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_chiseled_cubes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_chiseled_cubes_connecting'}.png new file mode 100644 index 00000000..b02e6ba4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_chiseled_cubes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_connecting_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_connecting_connecting'}.png new file mode 100644 index 00000000..f1eaf17d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_connecting_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_diagonal_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_diagonal_tiles'}.png new file mode 100644 index 00000000..a282b8f5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_diagonal_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_grid'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_grid'}.png new file mode 100644 index 00000000..ac35fc26 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_grid'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_grid_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_grid_connecting'}.png new file mode 100644 index 00000000..ac35fc26 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_grid_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_jewel_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_jewel_block'}.png new file mode 100644 index 00000000..e12f7e91 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_jewel_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_jewel_block_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_jewel_block_connecting'}.png new file mode 100644 index 00000000..e12f7e91 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_jewel_block_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_polished'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_polished'}.png new file mode 100644 index 00000000..a3c1df6e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_polished'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_polished_connecting'}.png new file mode 100644 index 00000000..a3c1df6e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_rhombuses'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_rhombuses'}.png new file mode 100644 index 00000000..ba751ffe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_rhombuses'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_rhombuses_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_rhombuses_connecting'}.png new file mode 100644 index 00000000..ba751ffe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_rhombuses_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_shiny'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_shiny'}.png new file mode 100644 index 00000000..483fd835 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_shiny'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_shiny_bordered'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_shiny_bordered'}.png new file mode 100644 index 00000000..35c37d9b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_shiny_bordered'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_shiny_bordered_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_shiny_bordered_connecting'}.png new file mode 100644 index 00000000..35c37d9b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_shiny_bordered_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_small_tiles'}.png new file mode 100644 index 00000000..6daaaea9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_small_tiles_connecting'}.png new file mode 100644 index 00000000..6daaaea9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_smooth'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_smooth'}.png new file mode 100644 index 00000000..705dc5a5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diamond_block_smooth'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_brick_pattern'}.png new file mode 100644 index 00000000..53396d5a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_brick_pattern_connecting'}.png new file mode 100644 index 00000000..53396d5a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_brick_paving'}.png new file mode 100644 index 00000000..8bdb17ce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_brick_paving_connecting'}.png new file mode 100644 index 00000000..8bdb17ce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_bricks'}.png new file mode 100644 index 00000000..3af42b3b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_bricks_connecting'}.png new file mode 100644 index 00000000..3af42b3b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_diagonal_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_diagonal_bricks'}.png new file mode 100644 index 00000000..2cfaa577 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_diagonal_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_diagonal_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_diagonal_bricks_connecting'}.png new file mode 100644 index 00000000..2cfaa577 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_diagonal_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_dotted'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_dotted'}.png new file mode 100644 index 00000000..69d40042 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_dotted'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_dotted_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_dotted_connecting'}.png new file mode 100644 index 00000000..69d40042 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_dotted_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_paving'}.png new file mode 100644 index 00000000..a6dcc88d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_paving_connecting'}.png new file mode 100644 index 00000000..a6dcc88d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_polished_connecting'}.png new file mode 100644 index 00000000..65e9e53c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_rotated_bricks'}.png new file mode 100644 index 00000000..7a1a7093 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..7a1a7093 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_squares'}.png new file mode 100644 index 00000000..57203f01 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_squares_connecting'}.png new file mode 100644 index 00000000..57203f01 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_tiles'}.png new file mode 100644 index 00000000..4c992d04 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_tiles_connecting'}.png new file mode 100644 index 00000000..4c992d04 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_wavy'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_wavy'}.png new file mode 100644 index 00000000..9cf3313d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_wavy'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_wavy_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_wavy_connecting'}.png new file mode 100644 index 00000000..9cf3313d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__diorite_wavy_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_blobs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_blobs'}.png new file mode 100644 index 00000000..7373099e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_blobs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_blobs_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_blobs_connecting'}.png new file mode 100644 index 00000000..7373099e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_blobs_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_bricks'}.png new file mode 100644 index 00000000..81a2a79c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_bricks_connecting'}.png new file mode 100644 index 00000000..81a2a79c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_chunks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_chunks'}.png new file mode 100644 index 00000000..d47b708b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_chunks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_chunks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_chunks_connecting'}.png new file mode 100644 index 00000000..d47b708b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_chunks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_clumps'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_clumps'}.png new file mode 100644 index 00000000..97cf4d2c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_clumps'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_clumps_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_clumps_connecting'}.png new file mode 100644 index 00000000..97cf4d2c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_clumps_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_cobbled'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_cobbled'}.png new file mode 100644 index 00000000..2628d34a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_cobbled'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_grooves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_grooves'}.png new file mode 100644 index 00000000..a34ed76d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_grooves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_large_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_large_tiles'}.png new file mode 100644 index 00000000..153b4272 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_large_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_large_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_large_tiles_connecting'}.png new file mode 100644 index 00000000..153b4272 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_large_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_muddy'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_muddy'}.png new file mode 100644 index 00000000..45fc741f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_muddy'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_small_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_small_bricks'}.png new file mode 100644 index 00000000..cecb4470 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_small_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_small_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_small_bricks_connecting'}.png new file mode 100644 index 00000000..cecb4470 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_small_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_small_tiles'}.png new file mode 100644 index 00000000..802b91bc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_small_tiles_connecting'}.png new file mode 100644 index 00000000..802b91bc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_smooth_clumps'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_smooth_clumps'}.png new file mode 100644 index 00000000..a33752e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_smooth_clumps'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_smooth_clumps_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_smooth_clumps_connecting'}.png new file mode 100644 index 00000000..a33752e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_smooth_clumps_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_soil'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_soil'}.png new file mode 100644 index 00000000..5b9574bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_soil'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_soil_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_soil_connecting'}.png new file mode 100644 index 00000000..5b9574bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_soil_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_squares'}.png new file mode 100644 index 00000000..a156043f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_squares_connecting'}.png new file mode 100644 index 00000000..a156043f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_tiles'}.png new file mode 100644 index 00000000..16dc6e1a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_tiles_connecting'}.png new file mode 100644 index 00000000..16dc6e1a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_tilled'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_tilled'}.png new file mode 100644 index 00000000..93276495 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_tilled'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_tilled_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_tilled_connecting'}.png new file mode 100644 index 00000000..93276495 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__dirt_tilled_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_bordered_crosses'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_bordered_crosses'}.png new file mode 100644 index 00000000..6e41193f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_bordered_crosses'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_bordered_crosses_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_bordered_crosses_connecting'}.png new file mode 100644 index 00000000..6e41193f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_bordered_crosses_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_bordered_plating'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_bordered_plating'}.png new file mode 100644 index 00000000..6dd1bc19 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_bordered_plating'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_bordered_plating_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_bordered_plating_connecting'}.png new file mode 100644 index 00000000..6dd1bc19 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_bordered_plating_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_chiseled'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_chiseled'}.png new file mode 100644 index 00000000..b58f96fd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_chiseled'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_chiseled_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_chiseled_connecting'}.png new file mode 100644 index 00000000..b58f96fd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_chiseled_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_clovers'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_clovers'}.png new file mode 100644 index 00000000..8f653f62 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_clovers'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_clovers_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_clovers_connecting'}.png new file mode 100644 index 00000000..8f653f62 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_clovers_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_crosses'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_crosses'}.png new file mode 100644 index 00000000..02547b65 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_crosses'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_crystal'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_crystal'}.png new file mode 100644 index 00000000..3b94d231 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_crystal'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_crystal_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_crystal_connecting'}.png new file mode 100644 index 00000000..3b94d231 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_crystal_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_patterned'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_patterned'}.png new file mode 100644 index 00000000..7073fbd3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_patterned'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_patterned_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_patterned_connecting'}.png new file mode 100644 index 00000000..7073fbd3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_patterned_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_patterned_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_patterned_squares'}.png new file mode 100644 index 00000000..2ff45f77 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_patterned_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_patterned_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_patterned_squares_connecting'}.png new file mode 100644 index 00000000..2ff45f77 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_patterned_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_pillar'}.png new file mode 100644 index 00000000..60d7471c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_pillar_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_pillar_connecting'}.png new file mode 100644 index 00000000..60d7471c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_pillar_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_plating'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_plating'}.png new file mode 100644 index 00000000..75a3c635 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_plating'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_polished'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_polished'}.png new file mode 100644 index 00000000..4b1e9e70 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_polished'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_polished_connecting'}.png new file mode 100644 index 00000000..4b1e9e70 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_smooth'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_smooth'}.png new file mode 100644 index 00000000..5350dfc3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_smooth'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_striped'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_striped'}.png new file mode 100644 index 00000000..2f186bda Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_striped'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_striped_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_striped_connecting'}.png new file mode 100644 index 00000000..2f186bda Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_striped_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_waxed'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_waxed'}.png new file mode 100644 index 00000000..adff7b51 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_waxed'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_waxed_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_waxed_connecting'}.png new file mode 100644 index 00000000..adff7b51 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__emerald_block_waxed_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_blobs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_blobs'}.png new file mode 100644 index 00000000..eebb53c6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_blobs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_blobs_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_blobs_connecting'}.png new file mode 100644 index 00000000..eebb53c6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_blobs_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_brick_pattern'}.png new file mode 100644 index 00000000..63b816cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_brick_pattern_connecting'}.png new file mode 100644 index 00000000..63b816cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_brick_paving'}.png new file mode 100644 index 00000000..b200d278 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_brick_paving_connecting'}.png new file mode 100644 index 00000000..b200d278 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_chiseled'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_chiseled'}.png new file mode 100644 index 00000000..35a853fe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_chiseled'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_chiseled_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_chiseled_connecting'}.png new file mode 100644 index 00000000..35a853fe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_chiseled_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_crushed'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_crushed'}.png new file mode 100644 index 00000000..569edc1c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_crushed'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_crushed_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_crushed_connecting'}.png new file mode 100644 index 00000000..569edc1c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_crushed_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_diagonal_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_diagonal_bricks'}.png new file mode 100644 index 00000000..2e6504f5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_diagonal_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_diagonal_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_diagonal_bricks_connecting'}.png new file mode 100644 index 00000000..2e6504f5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_diagonal_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_mesh'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_mesh'}.png new file mode 100644 index 00000000..8680ca79 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_mesh'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_mesh_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_mesh_connecting'}.png new file mode 100644 index 00000000..8680ca79 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_mesh_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_paving'}.png new file mode 100644 index 00000000..a22b8667 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_paving_connecting'}.png new file mode 100644 index 00000000..a22b8667 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_polished'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_polished'}.png new file mode 100644 index 00000000..abce4278 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_polished'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_polished_connecting'}.png new file mode 100644 index 00000000..abce4278 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_rotated_bricks'}.png new file mode 100644 index 00000000..aa6a1594 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..aa6a1594 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_scales'}.png new file mode 100644 index 00000000..52f07a66 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_scales_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_scales_connecting'}.png new file mode 100644 index 00000000..52f07a66 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_scales_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_small_tiles'}.png new file mode 100644 index 00000000..16f539a5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_small_tiles_connecting'}.png new file mode 100644 index 00000000..16f539a5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_spiral_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_spiral_pattern'}.png new file mode 100644 index 00000000..6d1112f6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_spiral_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_spiral_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_spiral_pattern_connecting'}.png new file mode 100644 index 00000000..6d1112f6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_spiral_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_squares'}.png new file mode 100644 index 00000000..c5c57f01 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_squares_connecting'}.png new file mode 100644 index 00000000..c5c57f01 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_tiles'}.png new file mode 100644 index 00000000..248d4698 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_tiles_connecting'}.png new file mode 100644 index 00000000..248d4698 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__end_stone_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_brick_pattern'}.png new file mode 100644 index 00000000..cbd40ff0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_brick_pattern_connecting'}.png new file mode 100644 index 00000000..cbd40ff0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_brick_paving'}.png new file mode 100644 index 00000000..a1843e96 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_brick_paving_connecting'}.png new file mode 100644 index 00000000..a1843e96 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_bricks'}.png new file mode 100644 index 00000000..c4321707 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_bricks_connecting'}.png new file mode 100644 index 00000000..c4321707 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_crushed'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_crushed'}.png new file mode 100644 index 00000000..b8ebd99c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_crushed'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_crushed_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_crushed_connecting'}.png new file mode 100644 index 00000000..b8ebd99c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_crushed_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_large_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_large_tiles'}.png new file mode 100644 index 00000000..dd9f80ec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_large_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_large_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_large_tiles_connecting'}.png new file mode 100644 index 00000000..dd9f80ec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_large_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_rotated_bricks'}.png new file mode 100644 index 00000000..c7d6fee6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..c7d6fee6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_small_tiles'}.png new file mode 100644 index 00000000..8e61cff2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_small_tiles_connecting'}.png new file mode 100644 index 00000000..8e61cff2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_smooth'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_smooth'}.png new file mode 100644 index 00000000..578a1657 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_smooth'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_smooth_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_smooth_connecting'}.png new file mode 100644 index 00000000..578a1657 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_smooth_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_tiles'}.png new file mode 100644 index 00000000..2799aea2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_tiles_connecting'}.png new file mode 100644 index 00000000..2799aea2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__glowstone_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_beams'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_beams'}.png new file mode 100644 index 00000000..b57bf6ee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_beams'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_beams_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_beams_connecting'}.png new file mode 100644 index 00000000..b57bf6ee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_beams_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_bordered'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_bordered'}.png new file mode 100644 index 00000000..3ea0b551 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_bordered'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_bordered_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_bordered_connecting'}.png new file mode 100644 index 00000000..3ea0b551 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_bordered_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_lines'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_lines'}.png new file mode 100644 index 00000000..26733b2e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_lines'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_lines_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_lines_connecting'}.png new file mode 100644 index 00000000..26733b2e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_lines_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_pattern'}.png new file mode 100644 index 00000000..03f42c10 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_pattern_connecting'}.png new file mode 100644 index 00000000..03f42c10 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_polished'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_polished'}.png new file mode 100644 index 00000000..d14809cf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_polished'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_polished_connecting'}.png new file mode 100644 index 00000000..d14809cf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_scales'}.png new file mode 100644 index 00000000..3dc6ba44 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_scales_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_scales_connecting'}.png new file mode 100644 index 00000000..3dc6ba44 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_scales_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_small_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_small_bricks'}.png new file mode 100644 index 00000000..0da20cee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_small_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_small_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_small_bricks_connecting'}.png new file mode 100644 index 00000000..0da20cee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_small_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_small_tiles'}.png new file mode 100644 index 00000000..c32bd6ee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_small_tiles_connecting'}.png new file mode 100644 index 00000000..c32bd6ee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_smooth'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_smooth'}.png new file mode 100644 index 00000000..5075ae3f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_smooth'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_striped'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_striped'}.png new file mode 100644 index 00000000..9f6b899b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_striped'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_striped_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_striped_connecting'}.png new file mode 100644 index 00000000..9f6b899b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_striped_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_tiles'}.png new file mode 100644 index 00000000..2813808a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_tiles_connecting'}.png new file mode 100644 index 00000000..2813808a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__gold_block_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_brick_pattern'}.png new file mode 100644 index 00000000..169ee1b3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_brick_pattern_connecting'}.png new file mode 100644 index 00000000..169ee1b3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_brick_paving'}.png new file mode 100644 index 00000000..85d05fa6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_brick_paving_connecting'}.png new file mode 100644 index 00000000..85d05fa6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_bricks'}.png new file mode 100644 index 00000000..7747b679 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_bricks_connecting'}.png new file mode 100644 index 00000000..7747b679 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_diagonal_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_diagonal_bricks'}.png new file mode 100644 index 00000000..ffb3224c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_diagonal_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_diagonal_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_diagonal_bricks_connecting'}.png new file mode 100644 index 00000000..ffb3224c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_diagonal_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_dotted'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_dotted'}.png new file mode 100644 index 00000000..ccb11039 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_dotted'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_dotted_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_dotted_connecting'}.png new file mode 100644 index 00000000..ccb11039 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_dotted_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_paving'}.png new file mode 100644 index 00000000..24736ace Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_paving_connecting'}.png new file mode 100644 index 00000000..24736ace Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_polished_connecting'}.png new file mode 100644 index 00000000..a8fe1ea5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_rotated_bricks'}.png new file mode 100644 index 00000000..f2624f1a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..f2624f1a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_squares'}.png new file mode 100644 index 00000000..5cac0dc5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_squares_connecting'}.png new file mode 100644 index 00000000..5cac0dc5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_tiles'}.png new file mode 100644 index 00000000..2ed0e3c6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_tiles_connecting'}.png new file mode 100644 index 00000000..2ed0e3c6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_wavy'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_wavy'}.png new file mode 100644 index 00000000..a8019b09 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_wavy'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_wavy_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_wavy_connecting'}.png new file mode 100644 index 00000000..a8019b09 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__granite_wavy_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_bordered'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_bordered'}.png new file mode 100644 index 00000000..186299b8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_bordered'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_bordered_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_bordered_connecting'}.png new file mode 100644 index 00000000..186299b8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_bordered_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_chiseled'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_chiseled'}.png new file mode 100644 index 00000000..702936e6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_chiseled'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_chiseled_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_chiseled_connecting'}.png new file mode 100644 index 00000000..702936e6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_chiseled_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_connecting_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_connecting_connecting'}.png new file mode 100644 index 00000000..3fd1bbb5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_connecting_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_framed'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_framed'}.png new file mode 100644 index 00000000..0fe60d99 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_framed'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_framed_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_framed_connecting'}.png new file mode 100644 index 00000000..0fe60d99 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_framed_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_gears'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_gears'}.png new file mode 100644 index 00000000..ba9fc62a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_gears'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_gears_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_gears_connecting'}.png new file mode 100644 index 00000000..ba9fc62a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_gears_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_lines'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_lines'}.png new file mode 100644 index 00000000..363ca772 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_lines'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_lines_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_lines_connecting'}.png new file mode 100644 index 00000000..363ca772 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_lines_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_patterned'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_patterned'}.png new file mode 100644 index 00000000..b571409b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_patterned'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_patterned_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_patterned_connecting'}.png new file mode 100644 index 00000000..b571409b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_patterned_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_pipes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_pipes'}.png new file mode 100644 index 00000000..57d09d34 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_pipes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_pipes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_pipes_connecting'}.png new file mode 100644 index 00000000..57d09d34 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_pipes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_plated'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_plated'}.png new file mode 100644 index 00000000..53582252 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_plated'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_polished'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_polished'}.png new file mode 100644 index 00000000..c3e289b9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_polished'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_polished_connecting'}.png new file mode 100644 index 00000000..c3e289b9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_processed'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_processed'}.png new file mode 100644 index 00000000..9559a02a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_processed'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_processed_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_processed_connecting'}.png new file mode 100644 index 00000000..9559a02a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_processed_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_pulverized'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_pulverized'}.png new file mode 100644 index 00000000..1ddf3e5f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_pulverized'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_reinforced'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_reinforced'}.png new file mode 100644 index 00000000..bc65c095 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_reinforced'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_sheets'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_sheets'}.png new file mode 100644 index 00000000..00e0509f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_sheets'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_small_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_small_bricks'}.png new file mode 100644 index 00000000..c4f71ec6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_small_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_small_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_small_bricks_connecting'}.png new file mode 100644 index 00000000..c4f71ec6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_small_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_smooth'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_smooth'}.png new file mode 100644 index 00000000..3e241993 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__iron_block_smooth'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_beams'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_beams'}.png new file mode 100644 index 00000000..092a1def Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_beams'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_beams_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_beams_connecting'}.png new file mode 100644 index 00000000..092a1def Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_beams_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_brick_pattern'}.png new file mode 100644 index 00000000..8019c896 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_brick_pattern_connecting'}.png new file mode 100644 index 00000000..8019c896 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_brick_paving'}.png new file mode 100644 index 00000000..55c7d441 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_brick_paving_connecting'}.png new file mode 100644 index 00000000..55c7d441 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_bricks'}.png new file mode 100644 index 00000000..047dadb7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_bricks_connecting'}.png new file mode 100644 index 00000000..047dadb7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_crate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_crate'}.png new file mode 100644 index 00000000..8088b409 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_crate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_crate_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_crate_connecting'}.png new file mode 100644 index 00000000..8088b409 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_crate_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_diagonal_stripes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_diagonal_stripes'}.png new file mode 100644 index 00000000..c56ba0e0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_diagonal_stripes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_diagonal_stripes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_diagonal_stripes_connecting'}.png new file mode 100644 index 00000000..c56ba0e0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_diagonal_stripes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_diagonal_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_diagonal_tiles'}.png new file mode 100644 index 00000000..dbc98d61 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_diagonal_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_diagonal_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_diagonal_tiles_connecting'}.png new file mode 100644 index 00000000..dbc98d61 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_diagonal_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_dotted'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_dotted'}.png new file mode 100644 index 00000000..4df2058f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_dotted'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_dotted_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_dotted_connecting'}.png new file mode 100644 index 00000000..4df2058f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_dotted_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_flooring'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_flooring'}.png new file mode 100644 index 00000000..74fd465d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_flooring'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_flooring_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_flooring_connecting'}.png new file mode 100644 index 00000000..74fd465d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_flooring_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_large_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_large_tiles'}.png new file mode 100644 index 00000000..6f3b85ab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_large_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_large_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_large_tiles_connecting'}.png new file mode 100644 index 00000000..6f3b85ab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_large_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_mosaic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_mosaic'}.png new file mode 100644 index 00000000..b4325d2d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_mosaic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_pattern'}.png new file mode 100644 index 00000000..0ed6d76d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_pattern_connecting'}.png new file mode 100644 index 00000000..0ed6d76d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_rotated_bricks'}.png new file mode 100644 index 00000000..48c2b401 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..48c2b401 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_small_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_small_bricks'}.png new file mode 100644 index 00000000..3b3cd101 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_small_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_small_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_small_bricks_connecting'}.png new file mode 100644 index 00000000..3b3cd101 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_small_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_small_tiles'}.png new file mode 100644 index 00000000..30c39636 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_small_tiles_connecting'}.png new file mode 100644 index 00000000..30c39636 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_squares'}.png new file mode 100644 index 00000000..4abbd9fe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_squares_connecting'}.png new file mode 100644 index 00000000..4abbd9fe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_tiles'}.png new file mode 100644 index 00000000..3a8bb3ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_tiles_connecting'}.png new file mode 100644 index 00000000..3a8bb3ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_wavy'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_wavy'}.png new file mode 100644 index 00000000..0b47c496 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_wavy'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_wavy_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_wavy_connecting'}.png new file mode 100644 index 00000000..0b47c496 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_wavy_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_woven'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_woven'}.png new file mode 100644 index 00000000..8f2f61b3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_woven'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_woven_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_woven_connecting'}.png new file mode 100644 index 00000000..8f2f61b3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__jungle_planks_woven_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_bordered'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_bordered'}.png new file mode 100644 index 00000000..807e4f73 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_bordered'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_bordered_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_bordered_connecting'}.png new file mode 100644 index 00000000..807e4f73 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_bordered_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_chiseled'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_chiseled'}.png new file mode 100644 index 00000000..ed175e35 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_chiseled'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_chiseled_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_chiseled_connecting'}.png new file mode 100644 index 00000000..ed175e35 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_chiseled_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_cobbled'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_cobbled'}.png new file mode 100644 index 00000000..75a383dd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_cobbled'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_connecting_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_connecting_connecting'}.png new file mode 100644 index 00000000..559b2d5e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_connecting_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_crushed'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_crushed'}.png new file mode 100644 index 00000000..454f0d8b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_crushed'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_decorated'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_decorated'}.png new file mode 100644 index 00000000..519bf77c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_decorated'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_decorated_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_decorated_connecting'}.png new file mode 100644 index 00000000..519bf77c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_decorated_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_glossy'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_glossy'}.png new file mode 100644 index 00000000..5bb1ad06 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_glossy'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_glossy_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_glossy_connecting'}.png new file mode 100644 index 00000000..5bb1ad06 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_glossy_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_inverted_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_inverted_tiles'}.png new file mode 100644 index 00000000..205f34ed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_inverted_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_inverted_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_inverted_tiles_connecting'}.png new file mode 100644 index 00000000..205f34ed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_inverted_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_mosaic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_mosaic'}.png new file mode 100644 index 00000000..a597208c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_mosaic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_mosaic_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_mosaic_connecting'}.png new file mode 100644 index 00000000..a597208c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_mosaic_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_pattern'}.png new file mode 100644 index 00000000..f6347d92 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_pattern_connecting'}.png new file mode 100644 index 00000000..f6347d92 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_pillar'}.png new file mode 100644 index 00000000..a3f60a5b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_pillar_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_pillar_connecting'}.png new file mode 100644 index 00000000..a3f60a5b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_pillar_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_polished'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_polished'}.png new file mode 100644 index 00000000..27c3afe8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_polished'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_polished_connecting'}.png new file mode 100644 index 00000000..27c3afe8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_scales'}.png new file mode 100644 index 00000000..76425aa3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_scales_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_scales_connecting'}.png new file mode 100644 index 00000000..76425aa3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_scales_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_small_tiles'}.png new file mode 100644 index 00000000..04e2939c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_small_tiles_connecting'}.png new file mode 100644 index 00000000..04e2939c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_smooth'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_smooth'}.png new file mode 100644 index 00000000..90b5937f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_smooth'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_stripes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_stripes'}.png new file mode 100644 index 00000000..83568480 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_stripes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_stripes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_stripes_connecting'}.png new file mode 100644 index 00000000..83568480 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_stripes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_swirling'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_swirling'}.png new file mode 100644 index 00000000..06e81ada Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_swirling'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_tiles'}.png new file mode 100644 index 00000000..dffaf947 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_tiles_connecting'}.png new file mode 100644 index 00000000..dffaf947 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__lapis_block_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_beams'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_beams'}.png new file mode 100644 index 00000000..7174548f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_beams'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_beams_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_beams_connecting'}.png new file mode 100644 index 00000000..7174548f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_beams_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_brick_pattern'}.png new file mode 100644 index 00000000..95c8ea40 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_brick_pattern_connecting'}.png new file mode 100644 index 00000000..95c8ea40 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_brick_paving'}.png new file mode 100644 index 00000000..99e9437f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_brick_paving_connecting'}.png new file mode 100644 index 00000000..99e9437f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_bricks'}.png new file mode 100644 index 00000000..32f85170 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_bricks_connecting'}.png new file mode 100644 index 00000000..32f85170 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_crate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_crate'}.png new file mode 100644 index 00000000..66ccb4b9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_crate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_crate_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_crate_connecting'}.png new file mode 100644 index 00000000..66ccb4b9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_crate_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_diagonal_stripes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_diagonal_stripes'}.png new file mode 100644 index 00000000..051edb11 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_diagonal_stripes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_diagonal_stripes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_diagonal_stripes_connecting'}.png new file mode 100644 index 00000000..051edb11 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_diagonal_stripes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_diagonal_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_diagonal_tiles'}.png new file mode 100644 index 00000000..2dea1395 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_diagonal_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_diagonal_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_diagonal_tiles_connecting'}.png new file mode 100644 index 00000000..2dea1395 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_diagonal_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_dotted'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_dotted'}.png new file mode 100644 index 00000000..9c349b4a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_dotted'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_dotted_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_dotted_connecting'}.png new file mode 100644 index 00000000..9c349b4a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_dotted_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_flooring'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_flooring'}.png new file mode 100644 index 00000000..8771eade Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_flooring'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_flooring_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_flooring_connecting'}.png new file mode 100644 index 00000000..8771eade Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_flooring_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_large_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_large_tiles'}.png new file mode 100644 index 00000000..b16f0836 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_large_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_large_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_large_tiles_connecting'}.png new file mode 100644 index 00000000..b16f0836 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_large_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_mosaic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_mosaic'}.png new file mode 100644 index 00000000..af999540 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_mosaic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_pattern'}.png new file mode 100644 index 00000000..7809d860 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_pattern_connecting'}.png new file mode 100644 index 00000000..7809d860 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_rotated_bricks'}.png new file mode 100644 index 00000000..990681ff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..990681ff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_small_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_small_bricks'}.png new file mode 100644 index 00000000..ad5f7764 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_small_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_small_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_small_bricks_connecting'}.png new file mode 100644 index 00000000..ad5f7764 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_small_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_small_tiles'}.png new file mode 100644 index 00000000..9e2ce2a0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_small_tiles_connecting'}.png new file mode 100644 index 00000000..9e2ce2a0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_squares'}.png new file mode 100644 index 00000000..4023e282 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_squares_connecting'}.png new file mode 100644 index 00000000..4023e282 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_tiles'}.png new file mode 100644 index 00000000..01acdd8d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_tiles_connecting'}.png new file mode 100644 index 00000000..01acdd8d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_wavy'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_wavy'}.png new file mode 100644 index 00000000..673c7cd5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_wavy'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_wavy_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_wavy_connecting'}.png new file mode 100644 index 00000000..673c7cd5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_wavy_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_woven'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_woven'}.png new file mode 100644 index 00000000..681e3d10 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_woven'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_woven_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_woven_connecting'}.png new file mode 100644 index 00000000..681e3d10 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mangrove_planks_woven_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_beams'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_beams'}.png new file mode 100644 index 00000000..f6a56046 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_beams'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_beams_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_beams_connecting'}.png new file mode 100644 index 00000000..f6a56046 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_beams_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_dented'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_dented'}.png new file mode 100644 index 00000000..d599cc8f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_dented'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_dented_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_dented_connecting'}.png new file mode 100644 index 00000000..d599cc8f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_dented_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_inverted_dented'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_inverted_dented'}.png new file mode 100644 index 00000000..6a1f2923 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_inverted_dented'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_inverted_dented_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_inverted_dented_connecting'}.png new file mode 100644 index 00000000..6a1f2923 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_inverted_dented_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_paving'}.png new file mode 100644 index 00000000..a32f22b5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_paving_connecting'}.png new file mode 100644 index 00000000..a32f22b5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_small_tiles'}.png new file mode 100644 index 00000000..1677d454 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_small_tiles_connecting'}.png new file mode 100644 index 00000000..1677d454 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_squares'}.png new file mode 100644 index 00000000..a50f7c39 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_squares_connecting'}.png new file mode 100644 index 00000000..a50f7c39 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_stripes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_stripes'}.png new file mode 100644 index 00000000..82c04723 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_stripes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_stripes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_stripes_connecting'}.png new file mode 100644 index 00000000..82c04723 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_stripes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_worn_stripes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_worn_stripes'}.png new file mode 100644 index 00000000..e3f7c04e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_worn_stripes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_worn_stripes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_worn_stripes_connecting'}.png new file mode 100644 index 00000000..e3f7c04e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__mossy_cobblestone_worn_stripes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_beams'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_beams'}.png new file mode 100644 index 00000000..2cdecc5a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_beams'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_beams_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_beams_connecting'}.png new file mode 100644 index 00000000..2cdecc5a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_beams_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_brick_pattern'}.png new file mode 100644 index 00000000..675abd06 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_brick_pattern_connecting'}.png new file mode 100644 index 00000000..675abd06 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_brick_paving'}.png new file mode 100644 index 00000000..8cd763cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_brick_paving_connecting'}.png new file mode 100644 index 00000000..8cd763cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_chiseled_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_chiseled_squares'}.png new file mode 100644 index 00000000..973b274d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_chiseled_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_chiseled_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_chiseled_squares_connecting'}.png new file mode 100644 index 00000000..973b274d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_chiseled_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_diagonal_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_diagonal_bricks'}.png new file mode 100644 index 00000000..b9ac21ee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_diagonal_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_diagonal_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_diagonal_bricks_connecting'}.png new file mode 100644 index 00000000..b9ac21ee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_diagonal_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_large_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_large_bricks'}.png new file mode 100644 index 00000000..c1ecef16 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_large_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_large_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_large_bricks_connecting'}.png new file mode 100644 index 00000000..c1ecef16 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_large_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_large_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_large_tiles'}.png new file mode 100644 index 00000000..8bf79e42 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_large_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_large_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_large_tiles_connecting'}.png new file mode 100644 index 00000000..8bf79e42 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_large_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_rotated_bricks'}.png new file mode 100644 index 00000000..7f7f2c96 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..7f7f2c96 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_small_tiles'}.png new file mode 100644 index 00000000..6140adab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_small_tiles_connecting'}.png new file mode 100644 index 00000000..6140adab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_smooth'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_smooth'}.png new file mode 100644 index 00000000..ce738951 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_smooth'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_smooth_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_smooth_connecting'}.png new file mode 100644 index 00000000..ce738951 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_smooth_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_squares'}.png new file mode 100644 index 00000000..1aa39fd4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_squares_connecting'}.png new file mode 100644 index 00000000..1aa39fd4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_tiles'}.png new file mode 100644 index 00000000..ec65f3d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_tiles_connecting'}.png new file mode 100644 index 00000000..ec65f3d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__nether_bricks_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_beams'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_beams'}.png new file mode 100644 index 00000000..faf10c80 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_beams'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_beams_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_beams_connecting'}.png new file mode 100644 index 00000000..faf10c80 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_beams_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_bricks'}.png new file mode 100644 index 00000000..77b1a57f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_bricks_connecting'}.png new file mode 100644 index 00000000..77b1a57f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_chiseled'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_chiseled'}.png new file mode 100644 index 00000000..45fcb0b2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_chiseled'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_chiseled_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_chiseled_connecting'}.png new file mode 100644 index 00000000..45fcb0b2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_chiseled_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_compacted'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_compacted'}.png new file mode 100644 index 00000000..e74076cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_compacted'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_compacted_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_compacted_connecting'}.png new file mode 100644 index 00000000..e74076cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_compacted_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_decorated'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_decorated'}.png new file mode 100644 index 00000000..2831ba55 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_decorated'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_decorated_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_decorated_connecting'}.png new file mode 100644 index 00000000..2831ba55 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_decorated_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_diagonal_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_diagonal_tiles'}.png new file mode 100644 index 00000000..c9068580 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_diagonal_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_diagonal_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_diagonal_tiles_connecting'}.png new file mode 100644 index 00000000..c9068580 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_diagonal_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_indented'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_indented'}.png new file mode 100644 index 00000000..755e7e3c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_indented'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_indented_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_indented_connecting'}.png new file mode 100644 index 00000000..755e7e3c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_indented_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_meteoric'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_meteoric'}.png new file mode 100644 index 00000000..a8b4328f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_meteoric'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_patterned'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_patterned'}.png new file mode 100644 index 00000000..b595adad Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_patterned'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_patterned_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_patterned_connecting'}.png new file mode 100644 index 00000000..b595adad Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_patterned_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_pillar'}.png new file mode 100644 index 00000000..e2e9173e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_pillar_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_pillar_connecting'}.png new file mode 100644 index 00000000..e2e9173e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_pillar_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_small_tiles'}.png new file mode 100644 index 00000000..67dc36c3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_small_tiles_connecting'}.png new file mode 100644 index 00000000..67dc36c3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_smooth'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_smooth'}.png new file mode 100644 index 00000000..1825a6e7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherite_block_smooth'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_beams'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_beams'}.png new file mode 100644 index 00000000..ac082163 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_beams'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_beams_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_beams_connecting'}.png new file mode 100644 index 00000000..ac082163 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_beams_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_brick_pattern'}.png new file mode 100644 index 00000000..3ef823ec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_brick_pattern_connecting'}.png new file mode 100644 index 00000000..3ef823ec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_brick_paving'}.png new file mode 100644 index 00000000..c8bdc85e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_brick_paving_connecting'}.png new file mode 100644 index 00000000..c8bdc85e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_bricks'}.png new file mode 100644 index 00000000..8e7e2550 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_bricks_connecting'}.png new file mode 100644 index 00000000..8e7e2550 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_dented'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_dented'}.png new file mode 100644 index 00000000..e30baf91 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_dented'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_dented_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_dented_connecting'}.png new file mode 100644 index 00000000..e30baf91 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_dented_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_rotated_bricks'}.png new file mode 100644 index 00000000..dd90ee41 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..dd90ee41 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_small_tiles'}.png new file mode 100644 index 00000000..17e28110 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_small_tiles_connecting'}.png new file mode 100644 index 00000000..17e28110 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_stripes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_stripes'}.png new file mode 100644 index 00000000..6f0a66e4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_stripes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_stripes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_stripes_connecting'}.png new file mode 100644 index 00000000..6f0a66e4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_stripes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_tiles'}.png new file mode 100644 index 00000000..01e9b2cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_tiles_connecting'}.png new file mode 100644 index 00000000..01e9b2cb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__netherrack_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_beams'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_beams'}.png new file mode 100644 index 00000000..1a8e5b75 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_beams'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_beams_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_beams_connecting'}.png new file mode 100644 index 00000000..1a8e5b75 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_beams_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_brick_pattern'}.png new file mode 100644 index 00000000..a744797d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_brick_pattern_connecting'}.png new file mode 100644 index 00000000..a744797d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_brick_paving'}.png new file mode 100644 index 00000000..aa8cc80c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_brick_paving_connecting'}.png new file mode 100644 index 00000000..aa8cc80c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_bricks'}.png new file mode 100644 index 00000000..26e82f91 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_bricks_connecting'}.png new file mode 100644 index 00000000..26e82f91 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_crate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_crate'}.png new file mode 100644 index 00000000..6ba836f8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_crate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_crate_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_crate_connecting'}.png new file mode 100644 index 00000000..6ba836f8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_crate_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_diagonal_stripes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_diagonal_stripes'}.png new file mode 100644 index 00000000..9bf1812d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_diagonal_stripes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_diagonal_stripes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_diagonal_stripes_connecting'}.png new file mode 100644 index 00000000..9bf1812d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_diagonal_stripes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_diagonal_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_diagonal_tiles'}.png new file mode 100644 index 00000000..82136c33 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_diagonal_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_diagonal_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_diagonal_tiles_connecting'}.png new file mode 100644 index 00000000..82136c33 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_diagonal_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_dotted'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_dotted'}.png new file mode 100644 index 00000000..45bb8bea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_dotted'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_dotted_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_dotted_connecting'}.png new file mode 100644 index 00000000..45bb8bea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_dotted_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_flooring'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_flooring'}.png new file mode 100644 index 00000000..750a7164 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_flooring'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_flooring_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_flooring_connecting'}.png new file mode 100644 index 00000000..750a7164 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_flooring_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_large_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_large_tiles'}.png new file mode 100644 index 00000000..d7a06417 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_large_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_large_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_large_tiles_connecting'}.png new file mode 100644 index 00000000..d7a06417 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_large_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_mosaic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_mosaic'}.png new file mode 100644 index 00000000..77dbd8dc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_mosaic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_pattern'}.png new file mode 100644 index 00000000..ed0614c7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_pattern_connecting'}.png new file mode 100644 index 00000000..ed0614c7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_rotated_bricks'}.png new file mode 100644 index 00000000..d0dd0493 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..d0dd0493 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_small_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_small_bricks'}.png new file mode 100644 index 00000000..0b984bfd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_small_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_small_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_small_bricks_connecting'}.png new file mode 100644 index 00000000..0b984bfd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_small_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_small_tiles'}.png new file mode 100644 index 00000000..54614651 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_small_tiles_connecting'}.png new file mode 100644 index 00000000..54614651 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_squares'}.png new file mode 100644 index 00000000..d3381ea7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_squares_connecting'}.png new file mode 100644 index 00000000..d3381ea7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_tiles'}.png new file mode 100644 index 00000000..6d12f442 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_tiles_connecting'}.png new file mode 100644 index 00000000..6d12f442 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_wavy'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_wavy'}.png new file mode 100644 index 00000000..6cc4efa8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_wavy'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_wavy_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_wavy_connecting'}.png new file mode 100644 index 00000000..6cc4efa8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_wavy_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_woven'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_woven'}.png new file mode 100644 index 00000000..17555b04 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_woven'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_woven_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_woven_connecting'}.png new file mode 100644 index 00000000..17555b04 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__oak_planks_woven_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_bordered'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_bordered'}.png new file mode 100644 index 00000000..14f7ae55 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_bordered'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_bordered_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_bordered_connecting'}.png new file mode 100644 index 00000000..14f7ae55 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_bordered_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_brick_pattern'}.png new file mode 100644 index 00000000..8b84ad78 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_brick_pattern_connecting'}.png new file mode 100644 index 00000000..8b84ad78 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_brick_paving'}.png new file mode 100644 index 00000000..1c5d6b68 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_brick_paving_connecting'}.png new file mode 100644 index 00000000..1c5d6b68 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_bricks'}.png new file mode 100644 index 00000000..e676c39b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_bricks_connecting'}.png new file mode 100644 index 00000000..e676c39b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_chiseled'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_chiseled'}.png new file mode 100644 index 00000000..6005f05d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_chiseled'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_chiseled_circles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_chiseled_circles'}.png new file mode 100644 index 00000000..fed8da1b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_chiseled_circles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_chiseled_circles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_chiseled_circles_connecting'}.png new file mode 100644 index 00000000..fed8da1b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_chiseled_circles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_chiseled_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_chiseled_connecting'}.png new file mode 100644 index 00000000..6005f05d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_chiseled_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_chiseled_creeper'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_chiseled_creeper'}.png new file mode 100644 index 00000000..7f41ee5b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_chiseled_creeper'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_chiseled_skeleton'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_chiseled_skeleton'}.png new file mode 100644 index 00000000..457d3ca5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_chiseled_skeleton'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_dark'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_dark'}.png new file mode 100644 index 00000000..34178dcc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_dark'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_dark_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_dark_connecting'}.png new file mode 100644 index 00000000..34178dcc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_dark_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_large_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_large_tiles'}.png new file mode 100644 index 00000000..361649bb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_large_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_pillars'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_pillars'}.png new file mode 100644 index 00000000..ca83888a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_pillars'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_pillars_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_pillars_connecting'}.png new file mode 100644 index 00000000..ca83888a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_pillars_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_rotated_bricks'}.png new file mode 100644 index 00000000..73efb197 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..73efb197 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_spots'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_spots'}.png new file mode 100644 index 00000000..342c476b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_spots'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_spots_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_spots_connecting'}.png new file mode 100644 index 00000000..342c476b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_spots_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_squares'}.png new file mode 100644 index 00000000..e73a0bc5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_squares_connecting'}.png new file mode 100644 index 00000000..e73a0bc5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_stripes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_stripes'}.png new file mode 100644 index 00000000..842cfd58 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_stripes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_stripes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_stripes_connecting'}.png new file mode 100644 index 00000000..842cfd58 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_stripes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_tiles'}.png new file mode 100644 index 00000000..afc77b74 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_tiles_connecting'}.png new file mode 100644 index 00000000..afc77b74 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__obsidian_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_beams'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_beams'}.png new file mode 100644 index 00000000..c5bfda98 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_beams'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_beams_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_beams_connecting'}.png new file mode 100644 index 00000000..c5bfda98 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_beams_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_brick_pattern'}.png new file mode 100644 index 00000000..e94db956 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_brick_pattern_connecting'}.png new file mode 100644 index 00000000..e94db956 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_brick_paving'}.png new file mode 100644 index 00000000..07accc68 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_brick_paving_connecting'}.png new file mode 100644 index 00000000..07accc68 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_bricks'}.png new file mode 100644 index 00000000..36185ea5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_bricks_connecting'}.png new file mode 100644 index 00000000..36185ea5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_chiseled_circles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_chiseled_circles'}.png new file mode 100644 index 00000000..5992d306 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_chiseled_circles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_chiseled_circles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_chiseled_circles_connecting'}.png new file mode 100644 index 00000000..5992d306 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_chiseled_circles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_chiseled_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_chiseled_squares'}.png new file mode 100644 index 00000000..76f1aa4c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_chiseled_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_chiseled_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_chiseled_squares_connecting'}.png new file mode 100644 index 00000000..76f1aa4c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_chiseled_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_diagonal_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_diagonal_bricks'}.png new file mode 100644 index 00000000..634d0527 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_diagonal_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_diagonal_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_diagonal_bricks_connecting'}.png new file mode 100644 index 00000000..634d0527 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_diagonal_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_diagonal_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_diagonal_tiles'}.png new file mode 100644 index 00000000..88bbd262 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_diagonal_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_diagonal_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_diagonal_tiles_connecting'}.png new file mode 100644 index 00000000..88bbd262 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_diagonal_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_dotted'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_dotted'}.png new file mode 100644 index 00000000..cdd959a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_dotted'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_dotted_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_dotted_connecting'}.png new file mode 100644 index 00000000..cdd959a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_dotted_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_pillars'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_pillars'}.png new file mode 100644 index 00000000..28f2225b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_pillars'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_pillars_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_pillars_connecting'}.png new file mode 100644 index 00000000..28f2225b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_pillars_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_polished'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_polished'}.png new file mode 100644 index 00000000..65268727 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_polished'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_polished_connecting'}.png new file mode 100644 index 00000000..65268727 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_rotated_bricks'}.png new file mode 100644 index 00000000..2cac58d6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..2cac58d6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_rows'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_rows'}.png new file mode 100644 index 00000000..1d04af07 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_rows'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_rows_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_rows_connecting'}.png new file mode 100644 index 00000000..1d04af07 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_rows_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_small_tiles'}.png new file mode 100644 index 00000000..02a44e66 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_small_tiles_connecting'}.png new file mode 100644 index 00000000..02a44e66 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_squares'}.png new file mode 100644 index 00000000..02cdf32f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_squares_connecting'}.png new file mode 100644 index 00000000..02cdf32f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_tiles'}.png new file mode 100644 index 00000000..379378bc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_tiles_connecting'}.png new file mode 100644 index 00000000..379378bc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_wavy'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_wavy'}.png new file mode 100644 index 00000000..b9b38740 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_wavy'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_wavy_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_wavy_connecting'}.png new file mode 100644 index 00000000..b9b38740 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_wavy_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_woven'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_woven'}.png new file mode 100644 index 00000000..2dbe5d67 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_woven'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_woven_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_woven_connecting'}.png new file mode 100644 index 00000000..2dbe5d67 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__prismarine_bricks_woven_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_brick_pattern'}.png new file mode 100644 index 00000000..cb430f28 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_brick_pattern_connecting'}.png new file mode 100644 index 00000000..cb430f28 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_brick_paving'}.png new file mode 100644 index 00000000..750e0266 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_brick_paving_connecting'}.png new file mode 100644 index 00000000..750e0266 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_bricks'}.png new file mode 100644 index 00000000..06ba216e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_bricks_connecting'}.png new file mode 100644 index 00000000..06ba216e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_diagonal_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_diagonal_bricks'}.png new file mode 100644 index 00000000..0d6db381 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_diagonal_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_diagonal_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_diagonal_bricks_connecting'}.png new file mode 100644 index 00000000..0d6db381 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_diagonal_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_diagonal_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_diagonal_tiles'}.png new file mode 100644 index 00000000..4962b013 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_diagonal_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_diagonal_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_diagonal_tiles_connecting'}.png new file mode 100644 index 00000000..4962b013 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_diagonal_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_dotted'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_dotted'}.png new file mode 100644 index 00000000..8d3a6a10 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_dotted'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_dotted_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_dotted_connecting'}.png new file mode 100644 index 00000000..8d3a6a10 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_dotted_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_fabric'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_fabric'}.png new file mode 100644 index 00000000..c4f4dc55 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_fabric'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_fabric_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_fabric_connecting'}.png new file mode 100644 index 00000000..c4f4dc55 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_fabric_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_jagged_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_jagged_pattern'}.png new file mode 100644 index 00000000..98951730 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_jagged_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_jagged_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_jagged_pattern_connecting'}.png new file mode 100644 index 00000000..98951730 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_jagged_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_large_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_large_tiles'}.png new file mode 100644 index 00000000..59a73d68 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_large_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_large_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_large_tiles_connecting'}.png new file mode 100644 index 00000000..59a73d68 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_large_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_organic_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_organic_pattern'}.png new file mode 100644 index 00000000..20b84b5d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_organic_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_organic_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_organic_pattern_connecting'}.png new file mode 100644 index 00000000..20b84b5d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_organic_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_pillar'}.png new file mode 100644 index 00000000..e09fb102 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_pillar_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_pillar_connecting'}.png new file mode 100644 index 00000000..e09fb102 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_pillar_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_rotated_bricks'}.png new file mode 100644 index 00000000..6f2e9f72 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..6f2e9f72 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_slanted_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_slanted_tiles'}.png new file mode 100644 index 00000000..f4f1f773 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_slanted_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_slanted_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_slanted_tiles_connecting'}.png new file mode 100644 index 00000000..f4f1f773 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_slanted_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_small_tiles'}.png new file mode 100644 index 00000000..5d0e944d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_small_tiles_connecting'}.png new file mode 100644 index 00000000..5d0e944d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_spiral_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_spiral_pattern'}.png new file mode 100644 index 00000000..012fabae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_spiral_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_spiral_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_spiral_pattern_connecting'}.png new file mode 100644 index 00000000..012fabae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_spiral_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_squares'}.png new file mode 100644 index 00000000..3cad051f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_squares_connecting'}.png new file mode 100644 index 00000000..3cad051f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_tiles_connecting'}.png new file mode 100644 index 00000000..43e07dd3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_woven'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_woven'}.png new file mode 100644 index 00000000..521c77c4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_woven'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_woven_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_woven_connecting'}.png new file mode 100644 index 00000000..521c77c4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__purpur_woven_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_bordered'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_bordered'}.png new file mode 100644 index 00000000..4bcef14e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_bordered'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_bordered_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_bordered_connecting'}.png new file mode 100644 index 00000000..4bcef14e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_bordered_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_brick_paving'}.png new file mode 100644 index 00000000..bb750573 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_brick_paving_connecting'}.png new file mode 100644 index 00000000..bb750573 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_chiseled_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_chiseled_pillar'}.png new file mode 100644 index 00000000..d34dcd92 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_chiseled_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_chiseled_pillar_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_chiseled_pillar_connecting'}.png new file mode 100644 index 00000000..d34dcd92 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_chiseled_pillar_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_chiseled_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_chiseled_squares'}.png new file mode 100644 index 00000000..642e15a2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_chiseled_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_connecting_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_connecting_connecting'}.png new file mode 100644 index 00000000..50e78ce2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_connecting_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_crosses'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_crosses'}.png new file mode 100644 index 00000000..dd316ae1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_crosses'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_crosses_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_crosses_connecting'}.png new file mode 100644 index 00000000..dd316ae1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_crosses_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_diagonal_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_diagonal_tiles'}.png new file mode 100644 index 00000000..ebc5fb7e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_diagonal_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_diagonal_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_diagonal_tiles_connecting'}.png new file mode 100644 index 00000000..ebc5fb7e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_diagonal_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_pattern'}.png new file mode 100644 index 00000000..31cf0693 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_pattern_connecting'}.png new file mode 100644 index 00000000..31cf0693 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_rotated_bricks'}.png new file mode 100644 index 00000000..fab57573 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..fab57573 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_rows'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_rows'}.png new file mode 100644 index 00000000..108fae9c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_rows'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_rows_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_rows_connecting'}.png new file mode 100644 index 00000000..108fae9c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_rows_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_scales'}.png new file mode 100644 index 00000000..b5df2999 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_scales_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_scales_connecting'}.png new file mode 100644 index 00000000..b5df2999 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_scales_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_small_tiles'}.png new file mode 100644 index 00000000..ef6d3dc8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_small_tiles_connecting'}.png new file mode 100644 index 00000000..ef6d3dc8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_squares'}.png new file mode 100644 index 00000000..d53cc20b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_squares_connecting'}.png new file mode 100644 index 00000000..d53cc20b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_stripes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_stripes'}.png new file mode 100644 index 00000000..31a223c1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_stripes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_stripes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_stripes_connecting'}.png new file mode 100644 index 00000000..31a223c1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_stripes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_tiles'}.png new file mode 100644 index 00000000..e284056d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_tiles_connecting'}.png new file mode 100644 index 00000000..e284056d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__quartz_block_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_beams'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_beams'}.png new file mode 100644 index 00000000..71fb4990 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_beams'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_beams_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_beams_connecting'}.png new file mode 100644 index 00000000..71fb4990 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_beams_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_brick_pattern'}.png new file mode 100644 index 00000000..6cebd191 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_brick_pattern_connecting'}.png new file mode 100644 index 00000000..6cebd191 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_brick_paving'}.png new file mode 100644 index 00000000..323889ca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_brick_paving_connecting'}.png new file mode 100644 index 00000000..323889ca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_chiseled_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_chiseled_squares'}.png new file mode 100644 index 00000000..64215680 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_chiseled_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_chiseled_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_chiseled_squares_connecting'}.png new file mode 100644 index 00000000..64215680 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_chiseled_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_diagonal_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_diagonal_bricks'}.png new file mode 100644 index 00000000..23a6ade6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_diagonal_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_diagonal_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_diagonal_bricks_connecting'}.png new file mode 100644 index 00000000..23a6ade6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_diagonal_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_large_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_large_bricks'}.png new file mode 100644 index 00000000..33ce46fb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_large_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_large_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_large_bricks_connecting'}.png new file mode 100644 index 00000000..33ce46fb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_large_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_large_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_large_tiles'}.png new file mode 100644 index 00000000..18e244cd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_large_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_large_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_large_tiles_connecting'}.png new file mode 100644 index 00000000..18e244cd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_large_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_rotated_bricks'}.png new file mode 100644 index 00000000..a9538019 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..a9538019 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_small_tiles'}.png new file mode 100644 index 00000000..c6aa82ee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_small_tiles_connecting'}.png new file mode 100644 index 00000000..c6aa82ee Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_smooth'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_smooth'}.png new file mode 100644 index 00000000..a356096f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_smooth'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_smooth_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_smooth_connecting'}.png new file mode 100644 index 00000000..a356096f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_smooth_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_squares'}.png new file mode 100644 index 00000000..bd9d7a18 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_squares_connecting'}.png new file mode 100644 index 00000000..bd9d7a18 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_tiles'}.png new file mode 100644 index 00000000..dee5fd9d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_tiles_connecting'}.png new file mode 100644 index 00000000..dee5fd9d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_nether_bricks_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_brick_pattern'}.png new file mode 100644 index 00000000..4231d131 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_brick_pattern_connecting'}.png new file mode 100644 index 00000000..4231d131 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_brick_paving'}.png new file mode 100644 index 00000000..12ca6666 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_brick_paving_connecting'}.png new file mode 100644 index 00000000..12ca6666 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_bricks'}.png new file mode 100644 index 00000000..a59e067b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_bricks_connecting'}.png new file mode 100644 index 00000000..a59e067b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_diagonal_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_diagonal_bricks'}.png new file mode 100644 index 00000000..afd00552 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_diagonal_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_diagonal_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_diagonal_bricks_connecting'}.png new file mode 100644 index 00000000..afd00552 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_diagonal_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_large_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_large_tiles'}.png new file mode 100644 index 00000000..54a06333 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_large_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_large_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_large_tiles_connecting'}.png new file mode 100644 index 00000000..54a06333 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_large_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_polished'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_polished'}.png new file mode 100644 index 00000000..3e6d97ca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_polished'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_polished_connecting'}.png new file mode 100644 index 00000000..3e6d97ca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_rotated_bricks'}.png new file mode 100644 index 00000000..c5df59dd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..c5df59dd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_tiles'}.png new file mode 100644 index 00000000..386e1e79 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_tiles_connecting'}.png new file mode 100644 index 00000000..386e1e79 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__red_sandstone_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_bordered'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_bordered'}.png new file mode 100644 index 00000000..79527fc6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_bordered'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_bordered_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_bordered_connecting'}.png new file mode 100644 index 00000000..79527fc6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_bordered_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_brick_bordered'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_brick_bordered'}.png new file mode 100644 index 00000000..84db58af Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_brick_bordered'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_bricks'}.png new file mode 100644 index 00000000..2a14fb38 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_bricks_connecting'}.png new file mode 100644 index 00000000..2a14fb38 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_chiseled_clovers'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_chiseled_clovers'}.png new file mode 100644 index 00000000..173b8fac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_chiseled_clovers'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_chiseled_clovers_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_chiseled_clovers_connecting'}.png new file mode 100644 index 00000000..173b8fac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_chiseled_clovers_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_circles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_circles'}.png new file mode 100644 index 00000000..c1835374 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_circles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_circles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_circles_connecting'}.png new file mode 100644 index 00000000..c1835374 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_circles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_compressed'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_compressed'}.png new file mode 100644 index 00000000..aa40d73e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_compressed'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_compressed_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_compressed_connecting'}.png new file mode 100644 index 00000000..aa40d73e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_compressed_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_crushed'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_crushed'}.png new file mode 100644 index 00000000..26bdfd96 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_crushed'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_diagonal_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_diagonal_tiles'}.png new file mode 100644 index 00000000..a066ec88 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_diagonal_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_diagonal_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_diagonal_tiles_connecting'}.png new file mode 100644 index 00000000..a066ec88 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_diagonal_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_patterned'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_patterned'}.png new file mode 100644 index 00000000..69fcbd43 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_patterned'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_patterned_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_patterned_connecting'}.png new file mode 100644 index 00000000..69fcbd43 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_patterned_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_paving'}.png new file mode 100644 index 00000000..f0f76dbe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_paving_connecting'}.png new file mode 100644 index 00000000..f0f76dbe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_pillar'}.png new file mode 100644 index 00000000..5dd2f35a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_pillar_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_pillar_connecting'}.png new file mode 100644 index 00000000..5dd2f35a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_pillar_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_polished'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_polished'}.png new file mode 100644 index 00000000..383b4d4a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_polished'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_polished_connecting'}.png new file mode 100644 index 00000000..383b4d4a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_scales'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_scales'}.png new file mode 100644 index 00000000..b1914b45 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_scales'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_scales_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_scales_connecting'}.png new file mode 100644 index 00000000..b1914b45 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_scales_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_small_tiles'}.png new file mode 100644 index 00000000..a1ea17ea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_small_tiles_connecting'}.png new file mode 100644 index 00000000..a1ea17ea Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_smooth'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_smooth'}.png new file mode 100644 index 00000000..831f9463 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__redstone_block_smooth'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_brick_pattern'}.png new file mode 100644 index 00000000..f7a20a1d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_brick_pattern_connecting'}.png new file mode 100644 index 00000000..f7a20a1d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_brick_paving'}.png new file mode 100644 index 00000000..d8982cf0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_brick_paving_connecting'}.png new file mode 100644 index 00000000..d8982cf0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_bricks'}.png new file mode 100644 index 00000000..034a904b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_bricks_connecting'}.png new file mode 100644 index 00000000..034a904b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_diagonal_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_diagonal_bricks'}.png new file mode 100644 index 00000000..4589e054 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_diagonal_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_diagonal_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_diagonal_bricks_connecting'}.png new file mode 100644 index 00000000..4589e054 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_diagonal_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_large_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_large_tiles'}.png new file mode 100644 index 00000000..97b941f7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_large_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_large_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_large_tiles_connecting'}.png new file mode 100644 index 00000000..97b941f7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_large_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_polished'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_polished'}.png new file mode 100644 index 00000000..acad4f47 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_polished'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_polished_connecting'}.png new file mode 100644 index 00000000..acad4f47 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_rotated_bricks'}.png new file mode 100644 index 00000000..b093dc86 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..b093dc86 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_tiles'}.png new file mode 100644 index 00000000..a65ca148 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_tiles_connecting'}.png new file mode 100644 index 00000000..a65ca148 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__sandstone_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_beams'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_beams'}.png new file mode 100644 index 00000000..5602f0e0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_beams'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_beams_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_beams_connecting'}.png new file mode 100644 index 00000000..5602f0e0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_beams_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_brick_pattern'}.png new file mode 100644 index 00000000..08fa66d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_brick_pattern_connecting'}.png new file mode 100644 index 00000000..08fa66d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_brick_paving'}.png new file mode 100644 index 00000000..8ffec1f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_brick_paving_connecting'}.png new file mode 100644 index 00000000..8ffec1f9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_bricks'}.png new file mode 100644 index 00000000..c5a6e32a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_bricks_connecting'}.png new file mode 100644 index 00000000..c5a6e32a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_crate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_crate'}.png new file mode 100644 index 00000000..149d8ed7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_crate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_crate_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_crate_connecting'}.png new file mode 100644 index 00000000..149d8ed7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_crate_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_diagonal_stripes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_diagonal_stripes'}.png new file mode 100644 index 00000000..a4f1f95c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_diagonal_stripes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_diagonal_stripes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_diagonal_stripes_connecting'}.png new file mode 100644 index 00000000..a4f1f95c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_diagonal_stripes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_diagonal_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_diagonal_tiles'}.png new file mode 100644 index 00000000..94630562 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_diagonal_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_diagonal_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_diagonal_tiles_connecting'}.png new file mode 100644 index 00000000..94630562 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_diagonal_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_dotted'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_dotted'}.png new file mode 100644 index 00000000..3f6526fc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_dotted'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_dotted_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_dotted_connecting'}.png new file mode 100644 index 00000000..3f6526fc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_dotted_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_flooring'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_flooring'}.png new file mode 100644 index 00000000..59426f69 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_flooring'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_flooring_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_flooring_connecting'}.png new file mode 100644 index 00000000..59426f69 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_flooring_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_large_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_large_tiles'}.png new file mode 100644 index 00000000..cb4afdff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_large_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_large_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_large_tiles_connecting'}.png new file mode 100644 index 00000000..cb4afdff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_large_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_mosaic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_mosaic'}.png new file mode 100644 index 00000000..37ee2dab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_mosaic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_pattern'}.png new file mode 100644 index 00000000..943e4f42 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_pattern_connecting'}.png new file mode 100644 index 00000000..943e4f42 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_rotated_bricks'}.png new file mode 100644 index 00000000..945396c4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..945396c4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_small_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_small_bricks'}.png new file mode 100644 index 00000000..8e4ea15f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_small_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_small_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_small_bricks_connecting'}.png new file mode 100644 index 00000000..8e4ea15f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_small_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_small_tiles'}.png new file mode 100644 index 00000000..c6edbeb5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_small_tiles_connecting'}.png new file mode 100644 index 00000000..c6edbeb5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_squares'}.png new file mode 100644 index 00000000..8b89afe7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_squares_connecting'}.png new file mode 100644 index 00000000..8b89afe7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_tiles'}.png new file mode 100644 index 00000000..49840a3b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_tiles_connecting'}.png new file mode 100644 index 00000000..49840a3b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_wavy'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_wavy'}.png new file mode 100644 index 00000000..114e7684 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_wavy'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_wavy_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_wavy_connecting'}.png new file mode 100644 index 00000000..114e7684 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_wavy_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_woven'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_woven'}.png new file mode 100644 index 00000000..623bf226 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_woven'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_woven_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_woven_connecting'}.png new file mode 100644 index 00000000..623bf226 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__spruce_planks_woven_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_big_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_big_tiles'}.png new file mode 100644 index 00000000..06c1e1bc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_big_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_big_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_big_tiles_connecting'}.png new file mode 100644 index 00000000..06c1e1bc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_big_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_bordered'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_bordered'}.png new file mode 100644 index 00000000..d10e35c4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_bordered'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_bordered_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_bordered_connecting'}.png new file mode 100644 index 00000000..d10e35c4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_bordered_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_brick_pattern'}.png new file mode 100644 index 00000000..339210fc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_brick_pattern_connecting'}.png new file mode 100644 index 00000000..339210fc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_brick_paving'}.png new file mode 100644 index 00000000..adcb620d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_brick_paving_connecting'}.png new file mode 100644 index 00000000..adcb620d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_chiseled_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_chiseled_bricks_connecting'}.png new file mode 100644 index 00000000..455fac75 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_chiseled_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_cobbled'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_cobbled'}.png new file mode 100644 index 00000000..dbe5bd9d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_cobbled'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_crushed'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_crushed'}.png new file mode 100644 index 00000000..dc1c51c8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_crushed'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_crushed_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_crushed_connecting'}.png new file mode 100644 index 00000000..dc1c51c8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_crushed_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_diagonal_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_diagonal_bricks'}.png new file mode 100644 index 00000000..6bac98c4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_diagonal_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_diagonal_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_diagonal_bricks_connecting'}.png new file mode 100644 index 00000000..6bac98c4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_diagonal_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_path'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_path'}.png new file mode 100644 index 00000000..0460a1a5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_path'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_path_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_path_connecting'}.png new file mode 100644 index 00000000..0460a1a5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_path_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_rotated_bricks'}.png new file mode 100644 index 00000000..2c650475 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..2c650475 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_slated'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_slated'}.png new file mode 100644 index 00000000..50d9ab1b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_slated'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_small_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_small_bricks'}.png new file mode 100644 index 00000000..b9c5b484 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_small_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_small_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_small_bricks_connecting'}.png new file mode 100644 index 00000000..b9c5b484 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_small_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_small_tiles'}.png new file mode 100644 index 00000000..051f90a8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_small_tiles_connecting'}.png new file mode 100644 index 00000000..051f90a8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_brick_paving'}.png new file mode 100644 index 00000000..5a47c858 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_brick_paving_connecting'}.png new file mode 100644 index 00000000..5a47c858 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_connecting'}.png new file mode 100644 index 00000000..48d08344 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_large_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_large_tiles'}.png new file mode 100644 index 00000000..a4ad4495 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_large_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_large_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_large_tiles_connecting'}.png new file mode 100644 index 00000000..a4ad4495 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_large_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_rotated_bricks'}.png new file mode 100644 index 00000000..4f3759e5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..4f3759e5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_tiles'}.png new file mode 100644 index 00000000..d734d694 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_tiles_connecting'}.png new file mode 100644 index 00000000..d734d694 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_smooth_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_squares'}.png new file mode 100644 index 00000000..ef165de0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_squares_connecting'}.png new file mode 100644 index 00000000..ef165de0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_tiles'}.png new file mode 100644 index 00000000..5b838677 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_tiles_connecting'}.png new file mode 100644 index 00000000..5b838677 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_waves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_waves'}.png new file mode 100644 index 00000000..9a2fca81 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_waves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_waves_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_waves_connecting'}.png new file mode 100644 index 00000000..9a2fca81 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__stone_waves_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_beams'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_beams'}.png new file mode 100644 index 00000000..9baea33d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_beams'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_beams_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_beams_connecting'}.png new file mode 100644 index 00000000..9baea33d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_beams_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_brick_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_brick_pattern'}.png new file mode 100644 index 00000000..acc58c1f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_brick_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_brick_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_brick_pattern_connecting'}.png new file mode 100644 index 00000000..acc58c1f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_brick_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_brick_paving'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_brick_paving'}.png new file mode 100644 index 00000000..d5b840b4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_brick_paving'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_brick_paving_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_brick_paving_connecting'}.png new file mode 100644 index 00000000..d5b840b4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_brick_paving_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_bricks'}.png new file mode 100644 index 00000000..2e03cbc7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_bricks_connecting'}.png new file mode 100644 index 00000000..2e03cbc7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_crate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_crate'}.png new file mode 100644 index 00000000..920e5c3c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_crate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_crate_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_crate_connecting'}.png new file mode 100644 index 00000000..920e5c3c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_crate_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_diagonal_stripes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_diagonal_stripes'}.png new file mode 100644 index 00000000..5efbe42c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_diagonal_stripes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_diagonal_stripes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_diagonal_stripes_connecting'}.png new file mode 100644 index 00000000..5efbe42c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_diagonal_stripes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_diagonal_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_diagonal_tiles'}.png new file mode 100644 index 00000000..ee3f0778 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_diagonal_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_diagonal_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_diagonal_tiles_connecting'}.png new file mode 100644 index 00000000..ee3f0778 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_diagonal_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_dotted'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_dotted'}.png new file mode 100644 index 00000000..7df4ad01 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_dotted'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_dotted_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_dotted_connecting'}.png new file mode 100644 index 00000000..7df4ad01 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_dotted_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_flooring'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_flooring'}.png new file mode 100644 index 00000000..1a009f07 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_flooring'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_flooring_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_flooring_connecting'}.png new file mode 100644 index 00000000..1a009f07 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_flooring_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_large_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_large_tiles'}.png new file mode 100644 index 00000000..c0f3a9c1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_large_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_large_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_large_tiles_connecting'}.png new file mode 100644 index 00000000..c0f3a9c1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_large_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_mosaic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_mosaic'}.png new file mode 100644 index 00000000..e8bfb20a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_mosaic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_pattern'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_pattern'}.png new file mode 100644 index 00000000..21feecce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_pattern'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_pattern_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_pattern_connecting'}.png new file mode 100644 index 00000000..21feecce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_pattern_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_rotated_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_rotated_bricks'}.png new file mode 100644 index 00000000..4ea0d416 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_rotated_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_rotated_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_rotated_bricks_connecting'}.png new file mode 100644 index 00000000..4ea0d416 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_rotated_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_small_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_small_bricks'}.png new file mode 100644 index 00000000..5fe68002 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_small_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_small_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_small_bricks_connecting'}.png new file mode 100644 index 00000000..5fe68002 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_small_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_small_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_small_tiles'}.png new file mode 100644 index 00000000..8cb68201 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_small_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_small_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_small_tiles_connecting'}.png new file mode 100644 index 00000000..8cb68201 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_small_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_squares'}.png new file mode 100644 index 00000000..66aef91f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_squares_connecting'}.png new file mode 100644 index 00000000..66aef91f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_tiles'}.png new file mode 100644 index 00000000..195d2a0f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_tiles_connecting'}.png new file mode 100644 index 00000000..195d2a0f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_wavy'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_wavy'}.png new file mode 100644 index 00000000..260eff06 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_wavy'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_wavy_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_wavy_connecting'}.png new file mode 100644 index 00000000..260eff06 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_wavy_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_woven'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_woven'}.png new file mode 100644 index 00000000..f2c60622 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_woven'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_woven_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_woven_connecting'}.png new file mode 100644 index 00000000..f2c60622 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseled__warped_planks_woven_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_covered'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_covered'}.png new file mode 100644 index 00000000..bae3931c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_covered'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_covered_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_covered_connecting'}.png new file mode 100644 index 00000000..bae3931c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_covered_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_diagonal'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_diagonal'}.png new file mode 100644 index 00000000..c03f21f0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_diagonal'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_diagonal_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_diagonal_connecting'}.png new file mode 100644 index 00000000..c03f21f0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_diagonal_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_large'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_large'}.png new file mode 100644 index 00000000..0e1fffe0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_large'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_large_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_large_connecting'}.png new file mode 100644 index 00000000..0e1fffe0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_large_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_panes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_panes'}.png new file mode 100644 index 00000000..d12ba571 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_panes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_panes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_panes_connecting'}.png new file mode 100644 index 00000000..d12ba571 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_panes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_rounded'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_rounded'}.png new file mode 100644 index 00000000..761496ce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_rounded'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_rounded_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_rounded_connecting'}.png new file mode 100644 index 00000000..761496ce Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_rounded_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_slim'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_slim'}.png new file mode 100644 index 00000000..bc598070 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_slim'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_slim_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_slim_connecting'}.png new file mode 100644 index 00000000..bc598070 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_slim_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_swirling'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_swirling'}.png new file mode 100644 index 00000000..97f2e3d3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_swirling'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_swirling_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_swirling_connecting'}.png new file mode 100644 index 00000000..97f2e3d3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_swirling_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_tiles'}.png new file mode 100644 index 00000000..895585df Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_tiles_connecting'}.png new file mode 100644 index 00000000..895585df Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__acacia_window_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__andesite_cut_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__andesite_cut_polished_connecting'}.png new file mode 100644 index 00000000..a1722c11 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__andesite_cut_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__andesite_cut_small_brick_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__andesite_cut_small_brick_connecting'}.png new file mode 100644 index 00000000..3890008a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__andesite_cut_small_brick_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__asurine_cut_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__asurine_cut_polished_connecting'}.png new file mode 100644 index 00000000..f502447f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__asurine_cut_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__asurine_cut_small_brick_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__asurine_cut_small_brick_connecting'}.png new file mode 100644 index 00000000..832c24cc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__asurine_cut_small_brick_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_bars'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_bars'}.png new file mode 100644 index 00000000..a99ca29a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_bars'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_bars_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_bars_connecting'}.png new file mode 100644 index 00000000..a99ca29a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_bars_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_diagonal'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_diagonal'}.png new file mode 100644 index 00000000..7ca90487 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_diagonal'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_diagonal_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_diagonal_connecting'}.png new file mode 100644 index 00000000..7ca90487 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_diagonal_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_large'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_large'}.png new file mode 100644 index 00000000..17c9537b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_large'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_large_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_large_connecting'}.png new file mode 100644 index 00000000..17c9537b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_large_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_panes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_panes'}.png new file mode 100644 index 00000000..0b61d8e7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_panes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_panes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_panes_connecting'}.png new file mode 100644 index 00000000..0b61d8e7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_panes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_rounded'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_rounded'}.png new file mode 100644 index 00000000..47942388 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_rounded'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_rounded_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_rounded_connecting'}.png new file mode 100644 index 00000000..47942388 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_rounded_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_slim'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_slim'}.png new file mode 100644 index 00000000..13b4c441 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_slim'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_slim_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_slim_connecting'}.png new file mode 100644 index 00000000..13b4c441 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_slim_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_swirling'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_swirling'}.png new file mode 100644 index 00000000..fb0a85ff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_swirling'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_swirling_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_swirling_connecting'}.png new file mode 100644 index 00000000..fb0a85ff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_swirling_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_tiles'}.png new file mode 100644 index 00000000..74c3b9a0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_tiles_connecting'}.png new file mode 100644 index 00000000..74c3b9a0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__birch_window_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__calcite_cut_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__calcite_cut_polished_connecting'}.png new file mode 100644 index 00000000..68299447 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__calcite_cut_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__calcite_cut_small_brick_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__calcite_cut_small_brick_connecting'}.png new file mode 100644 index 00000000..61eeeff6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__calcite_cut_small_brick_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimsite_cut_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimsite_cut_polished_connecting'}.png new file mode 100644 index 00000000..c71c8667 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimsite_cut_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimsite_cut_small_brick_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimsite_cut_small_brick_connecting'}.png new file mode 100644 index 00000000..c9bf5692 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimsite_cut_small_brick_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_bars'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_bars'}.png new file mode 100644 index 00000000..71caa636 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_bars'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_bars_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_bars_connecting'}.png new file mode 100644 index 00000000..71caa636 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_bars_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_covered'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_covered'}.png new file mode 100644 index 00000000..ce16eba1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_covered'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_covered_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_covered_connecting'}.png new file mode 100644 index 00000000..ce16eba1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_covered_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_large'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_large'}.png new file mode 100644 index 00000000..d59b5971 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_large'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_large_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_large_connecting'}.png new file mode 100644 index 00000000..d59b5971 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_large_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_panes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_panes'}.png new file mode 100644 index 00000000..a955d552 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_panes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_panes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_panes_connecting'}.png new file mode 100644 index 00000000..a955d552 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_panes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_rounded'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_rounded'}.png new file mode 100644 index 00000000..6536b916 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_rounded'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_rounded_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_rounded_connecting'}.png new file mode 100644 index 00000000..6536b916 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_rounded_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_slim'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_slim'}.png new file mode 100644 index 00000000..688aa565 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_slim'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_slim_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_slim_connecting'}.png new file mode 100644 index 00000000..688aa565 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_slim_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_swirling'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_swirling'}.png new file mode 100644 index 00000000..48fe9eb2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_swirling'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_swirling_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_swirling_connecting'}.png new file mode 100644 index 00000000..48fe9eb2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_swirling_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_tiles'}.png new file mode 100644 index 00000000..417954c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_tiles_connecting'}.png new file mode 100644 index 00000000..417954c5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__crimson_window_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_bars'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_bars'}.png new file mode 100644 index 00000000..5dd008ec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_bars'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_bars_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_bars_connecting'}.png new file mode 100644 index 00000000..5dd008ec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_bars_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_covered'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_covered'}.png new file mode 100644 index 00000000..35ff7d6c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_covered'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_covered_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_covered_connecting'}.png new file mode 100644 index 00000000..35ff7d6c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_covered_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_diagonal'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_diagonal'}.png new file mode 100644 index 00000000..92846795 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_diagonal'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_diagonal_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_diagonal_connecting'}.png new file mode 100644 index 00000000..92846795 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_diagonal_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_panes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_panes'}.png new file mode 100644 index 00000000..fb1ae22e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_panes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_panes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_panes_connecting'}.png new file mode 100644 index 00000000..fb1ae22e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_panes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_rounded'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_rounded'}.png new file mode 100644 index 00000000..1c941deb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_rounded'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_rounded_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_rounded_connecting'}.png new file mode 100644 index 00000000..1c941deb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_rounded_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_slim'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_slim'}.png new file mode 100644 index 00000000..a7d8783d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_slim'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_slim_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_slim_connecting'}.png new file mode 100644 index 00000000..a7d8783d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_slim_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_swirling'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_swirling'}.png new file mode 100644 index 00000000..1d768a56 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_swirling'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_swirling_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_swirling_connecting'}.png new file mode 100644 index 00000000..1d768a56 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_swirling_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_tiles'}.png new file mode 100644 index 00000000..107fd67b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_tiles_connecting'}.png new file mode 100644 index 00000000..107fd67b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dark_oak_window_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__deepslate_cut_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__deepslate_cut_polished_connecting'}.png new file mode 100644 index 00000000..9fd382e1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__deepslate_cut_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__deepslate_cut_small_brick_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__deepslate_cut_small_brick_connecting'}.png new file mode 100644 index 00000000..e19c4d98 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__deepslate_cut_small_brick_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__diorite_cut_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__diorite_cut_polished_connecting'}.png new file mode 100644 index 00000000..2682f54c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__diorite_cut_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__diorite_cut_small_brick_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__diorite_cut_small_brick_connecting'}.png new file mode 100644 index 00000000..efc9f088 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__diorite_cut_small_brick_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dripstone_cut_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dripstone_cut_polished_connecting'}.png new file mode 100644 index 00000000..001b5654 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dripstone_cut_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dripstone_cut_small_brick_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dripstone_cut_small_brick_connecting'}.png new file mode 100644 index 00000000..aa19b617 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__dripstone_cut_small_brick_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__granite_cut_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__granite_cut_polished_connecting'}.png new file mode 100644 index 00000000..8d311b3a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__granite_cut_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__granite_cut_small_brick_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__granite_cut_small_brick_connecting'}.png new file mode 100644 index 00000000..dbf06c78 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__granite_cut_small_brick_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_bars'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_bars'}.png new file mode 100644 index 00000000..812f3e8e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_bars'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_bars_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_bars_connecting'}.png new file mode 100644 index 00000000..812f3e8e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_bars_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_covered'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_covered'}.png new file mode 100644 index 00000000..dc0547bf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_covered'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_covered_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_covered_connecting'}.png new file mode 100644 index 00000000..dc0547bf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_covered_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_diagonal'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_diagonal'}.png new file mode 100644 index 00000000..2c18da47 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_diagonal'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_diagonal_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_diagonal_connecting'}.png new file mode 100644 index 00000000..2c18da47 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_diagonal_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_large'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_large'}.png new file mode 100644 index 00000000..51a68b9a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_large'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_large_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_large_connecting'}.png new file mode 100644 index 00000000..51a68b9a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_large_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_panes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_panes'}.png new file mode 100644 index 00000000..8f8b7d6a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_panes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_panes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_panes_connecting'}.png new file mode 100644 index 00000000..8f8b7d6a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_panes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_rounded'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_rounded'}.png new file mode 100644 index 00000000..0013eba8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_rounded'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_rounded_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_rounded_connecting'}.png new file mode 100644 index 00000000..0013eba8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_rounded_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_swirling'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_swirling'}.png new file mode 100644 index 00000000..45c3942a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_swirling'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_swirling_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_swirling_connecting'}.png new file mode 100644 index 00000000..45c3942a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_swirling_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_tiles'}.png new file mode 100644 index 00000000..c278d212 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_tiles_connecting'}.png new file mode 100644 index 00000000..c278d212 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__jungle_window_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__limestone_cut_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__limestone_cut_polished_connecting'}.png new file mode 100644 index 00000000..3898d8ba Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__limestone_cut_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__limestone_cut_small_brick_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__limestone_cut_small_brick_connecting'}.png new file mode 100644 index 00000000..d1802286 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__limestone_cut_small_brick_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_bars'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_bars'}.png new file mode 100644 index 00000000..17fec6f8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_bars'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_bars_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_bars_connecting'}.png new file mode 100644 index 00000000..17fec6f8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_bars_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_covered'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_covered'}.png new file mode 100644 index 00000000..2b5137da Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_covered'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_covered_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_covered_connecting'}.png new file mode 100644 index 00000000..2b5137da Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_covered_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_diagonal'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_diagonal'}.png new file mode 100644 index 00000000..021f1ca2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_diagonal'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_diagonal_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_diagonal_connecting'}.png new file mode 100644 index 00000000..021f1ca2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_diagonal_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_large'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_large'}.png new file mode 100644 index 00000000..b69031a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_large'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_large_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_large_connecting'}.png new file mode 100644 index 00000000..b69031a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_large_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_panes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_panes'}.png new file mode 100644 index 00000000..ef57eb09 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_panes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_panes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_panes_connecting'}.png new file mode 100644 index 00000000..ef57eb09 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_panes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_slim'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_slim'}.png new file mode 100644 index 00000000..9713e54b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_slim'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_slim_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_slim_connecting'}.png new file mode 100644 index 00000000..9713e54b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_slim_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_swirling'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_swirling'}.png new file mode 100644 index 00000000..0b6db9f7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_swirling'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_swirling_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_swirling_connecting'}.png new file mode 100644 index 00000000..0b6db9f7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_swirling_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_tiles'}.png new file mode 100644 index 00000000..3b25bcc7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_tiles_connecting'}.png new file mode 100644 index 00000000..3b25bcc7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__mangrove_window_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_bars'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_bars'}.png new file mode 100644 index 00000000..c5d035e8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_bars'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_bars_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_bars_connecting'}.png new file mode 100644 index 00000000..c5d035e8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_bars_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_covered'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_covered'}.png new file mode 100644 index 00000000..e1787bcf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_covered'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_covered_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_covered_connecting'}.png new file mode 100644 index 00000000..e1787bcf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_covered_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_diagonal'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_diagonal'}.png new file mode 100644 index 00000000..dccdde4b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_diagonal'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_diagonal_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_diagonal_connecting'}.png new file mode 100644 index 00000000..dccdde4b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_diagonal_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_large'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_large'}.png new file mode 100644 index 00000000..130a9ae6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_large'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_large_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_large_connecting'}.png new file mode 100644 index 00000000..130a9ae6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_large_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_rounded'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_rounded'}.png new file mode 100644 index 00000000..68b8d374 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_rounded'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_rounded_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_rounded_connecting'}.png new file mode 100644 index 00000000..68b8d374 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_rounded_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_slim'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_slim'}.png new file mode 100644 index 00000000..ee95bc27 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_slim'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_slim_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_slim_connecting'}.png new file mode 100644 index 00000000..ee95bc27 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_slim_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_swirling'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_swirling'}.png new file mode 100644 index 00000000..4d2f1799 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_swirling'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_swirling_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_swirling_connecting'}.png new file mode 100644 index 00000000..4d2f1799 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_swirling_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_tiles'}.png new file mode 100644 index 00000000..b44baf2a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_tiles_connecting'}.png new file mode 100644 index 00000000..b44baf2a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__oak_window_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__ochrum_cut_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__ochrum_cut_polished_connecting'}.png new file mode 100644 index 00000000..0b68e140 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__ochrum_cut_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__ochrum_cut_small_brick_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__ochrum_cut_small_brick_connecting'}.png new file mode 100644 index 00000000..ba917b80 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__ochrum_cut_small_brick_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_bricks'}.png new file mode 100644 index 00000000..5199b40f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_bricks_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_bricks_connecting'}.png new file mode 100644 index 00000000..5199b40f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_bricks_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_chiseled'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_chiseled'}.png new file mode 100644 index 00000000..bd5e0344 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_chiseled'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_chiseled_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_chiseled_connecting'}.png new file mode 100644 index 00000000..bd5e0344 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_chiseled_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_crushed'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_crushed'}.png new file mode 100644 index 00000000..5d7b7a89 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_crushed'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_crushed_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_crushed_connecting'}.png new file mode 100644 index 00000000..5d7b7a89 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_crushed_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_polished_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_polished_block'}.png new file mode 100644 index 00000000..e7ff8ae5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_polished_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_polished_block_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_polished_block_connecting'}.png new file mode 100644 index 00000000..e7ff8ae5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_polished_block_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_squares'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_squares'}.png new file mode 100644 index 00000000..84a5a0aa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_squares'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_squares_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_squares_connecting'}.png new file mode 100644 index 00000000..84a5a0aa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_squares_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_tiles_connecting'}.png new file mode 100644 index 00000000..32ece29b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__rose_quartz_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__scorchia_cut_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__scorchia_cut_polished_connecting'}.png new file mode 100644 index 00000000..e3e4cd57 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__scorchia_cut_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__scorchia_cut_small_brick_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__scorchia_cut_small_brick_connecting'}.png new file mode 100644 index 00000000..5a3ecb2f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__scorchia_cut_small_brick_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__scoria_cut_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__scoria_cut_polished_connecting'}.png new file mode 100644 index 00000000..beece357 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__scoria_cut_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__scoria_cut_small_brick_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__scoria_cut_small_brick_connecting'}.png new file mode 100644 index 00000000..a862dbdb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__scoria_cut_small_brick_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_bars'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_bars'}.png new file mode 100644 index 00000000..c89fc95a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_bars'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_bars_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_bars_connecting'}.png new file mode 100644 index 00000000..c89fc95a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_bars_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_covered'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_covered'}.png new file mode 100644 index 00000000..06f3ae2e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_covered'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_covered_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_covered_connecting'}.png new file mode 100644 index 00000000..06f3ae2e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_covered_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_diagonal'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_diagonal'}.png new file mode 100644 index 00000000..4f2275cf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_diagonal'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_diagonal_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_diagonal_connecting'}.png new file mode 100644 index 00000000..4f2275cf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_diagonal_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_large'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_large'}.png new file mode 100644 index 00000000..99cbe8f1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_large'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_large_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_large_connecting'}.png new file mode 100644 index 00000000..99cbe8f1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_large_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_panes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_panes'}.png new file mode 100644 index 00000000..28c08fc8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_panes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_panes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_panes_connecting'}.png new file mode 100644 index 00000000..28c08fc8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_panes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_rounded'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_rounded'}.png new file mode 100644 index 00000000..fa03bf1a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_rounded'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_rounded_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_rounded_connecting'}.png new file mode 100644 index 00000000..fa03bf1a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_rounded_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_slim'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_slim'}.png new file mode 100644 index 00000000..09216932 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_slim'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_slim_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_slim_connecting'}.png new file mode 100644 index 00000000..09216932 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_slim_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_swirling'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_swirling'}.png new file mode 100644 index 00000000..5e5fcc10 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_swirling'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_swirling_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_swirling_connecting'}.png new file mode 100644 index 00000000..5e5fcc10 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_swirling_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_tiles'}.png new file mode 100644 index 00000000..f4e775f2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_tiles_connecting'}.png new file mode 100644 index 00000000..f4e775f2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__spruce_window_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__tuff_cut_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__tuff_cut_polished_connecting'}.png new file mode 100644 index 00000000..15d4d94f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__tuff_cut_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__tuff_cut_small_brick_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__tuff_cut_small_brick_connecting'}.png new file mode 100644 index 00000000..83f5c958 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__tuff_cut_small_brick_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__veridium_cut_polished_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__veridium_cut_polished_connecting'}.png new file mode 100644 index 00000000..1d52af3d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__veridium_cut_polished_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__veridium_cut_small_brick_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__veridium_cut_small_brick_connecting'}.png new file mode 100644 index 00000000..1c10c6b2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__veridium_cut_small_brick_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_bars'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_bars'}.png new file mode 100644 index 00000000..28d0fe3b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_bars'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_bars_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_bars_connecting'}.png new file mode 100644 index 00000000..28d0fe3b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_bars_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_covered'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_covered'}.png new file mode 100644 index 00000000..9bc9f116 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_covered'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_covered_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_covered_connecting'}.png new file mode 100644 index 00000000..9bc9f116 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_covered_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_diagonal'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_diagonal'}.png new file mode 100644 index 00000000..caf92bed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_diagonal'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_diagonal_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_diagonal_connecting'}.png new file mode 100644 index 00000000..caf92bed Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_diagonal_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_large'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_large'}.png new file mode 100644 index 00000000..e3033862 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_large'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_large_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_large_connecting'}.png new file mode 100644 index 00000000..e3033862 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_large_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_panes'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_panes'}.png new file mode 100644 index 00000000..802f5b7d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_panes'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_panes_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_panes_connecting'}.png new file mode 100644 index 00000000..802f5b7d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_panes_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_rounded'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_rounded'}.png new file mode 100644 index 00000000..5bfc9087 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_rounded'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_rounded_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_rounded_connecting'}.png new file mode 100644 index 00000000..5bfc9087 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_rounded_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_slim'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_slim'}.png new file mode 100644 index 00000000..6dc17d68 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_slim'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_slim_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_slim_connecting'}.png new file mode 100644 index 00000000..6dc17d68 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_slim_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_tiles'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_tiles'}.png new file mode 100644 index 00000000..ced35722 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_tiles'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_tiles_connecting'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_tiles_connecting'}.png new file mode 100644 index 00000000..ced35722 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'rechiseledcreate__warped_window_tiles_connecting'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'snowyspirit__candy_cane_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'snowyspirit__candy_cane_block'}.png new file mode 100644 index 00000000..972cf78b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'snowyspirit__candy_cane_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'snowyspirit__ginger_crate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'snowyspirit__ginger_crate'}.png new file mode 100644 index 00000000..9de2e753 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'snowyspirit__ginger_crate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'snowyspirit__gingerbread'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'snowyspirit__gingerbread'}.png new file mode 100644 index 00000000..137882c7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'snowyspirit__gingerbread'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'snowyspirit__gingerbread_frosted'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'snowyspirit__gingerbread_frosted'}.png new file mode 100644 index 00000000..71aea0f7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'snowyspirit__gingerbread_frosted'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__acacia_trim'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__acacia_trim'}.png new file mode 100644 index 00000000..e4fda579 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__acacia_trim'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__bamboo_trim'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__bamboo_trim'}.png new file mode 100644 index 00000000..02e0d7e2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__bamboo_trim'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__birch_trim'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__birch_trim'}.png new file mode 100644 index 00000000..1d7a5bae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__birch_trim'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__cherry_trim'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__cherry_trim'}.png new file mode 100644 index 00000000..594802e4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__cherry_trim'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__crimson_trim'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__crimson_trim'}.png new file mode 100644 index 00000000..9c850712 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__crimson_trim'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__dark_oak_trim'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__dark_oak_trim'}.png new file mode 100644 index 00000000..d8fd11a3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__dark_oak_trim'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__jungle_trim'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__jungle_trim'}.png new file mode 100644 index 00000000..204ddeae Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__jungle_trim'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__mangrove_trim'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__mangrove_trim'}.png new file mode 100644 index 00000000..7d5c2d04 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__mangrove_trim'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__oak_trim'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__oak_trim'}.png new file mode 100644 index 00000000..dcfab343 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__oak_trim'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__spruce_trim'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__spruce_trim'}.png new file mode 100644 index 00000000..f2382e5c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__spruce_trim'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__warped_trim'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__warped_trim'}.png new file mode 100644 index 00000000..966b8621 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'storagedrawers__warped_trim'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightdelight__torchberries_crate'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightdelight__torchberries_crate'}.png new file mode 100644 index 00000000..a606ab46 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightdelight__torchberries_crate'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__arctic_fur_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__arctic_fur_block'}.png new file mode 100644 index 00000000..e47dd11f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__arctic_fur_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__aurora_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__aurora_block'}.png new file mode 100644 index 00000000..be056407 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__aurora_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__aurora_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__aurora_pillar'}.png new file mode 100644 index 00000000..7bf93dd3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__aurora_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__beanstalk_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__beanstalk_leaves'}.png new file mode 100644 index 00000000..bdd711ca Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__beanstalk_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__blue_castle_door'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__blue_castle_door'}.png new file mode 100644 index 00000000..c2e1a1c6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__blue_castle_door'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__blue_castle_rune_brick'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__blue_castle_rune_brick'}.png new file mode 100644 index 00000000..37c6e29f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__blue_castle_rune_brick'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__bold_castle_brick_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__bold_castle_brick_pillar'}.png new file mode 100644 index 00000000..7e054041 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__bold_castle_brick_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__bold_castle_brick_tile'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__bold_castle_brick_tile'}.png new file mode 100644 index 00000000..1e208271 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__bold_castle_brick_tile'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__bold_stone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__bold_stone_pillar'}.png new file mode 100644 index 00000000..378a8f8f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__bold_stone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__canopy_bookshelf'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__canopy_bookshelf'}.png new file mode 100644 index 00000000..52867853 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__canopy_bookshelf'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__canopy_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__canopy_leaves'}.png new file mode 100644 index 00000000..6426348f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__canopy_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__canopy_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__canopy_log'}.png new file mode 100644 index 00000000..1e10f412 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__canopy_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__canopy_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__canopy_planks'}.png new file mode 100644 index 00000000..646458ab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__canopy_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__canopy_window'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__canopy_window'}.png new file mode 100644 index 00000000..0eb0f1b7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__canopy_window'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__canopy_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__canopy_wood'}.png new file mode 100644 index 00000000..0f17ea57 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__canopy_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__carminite_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__carminite_block'}.png new file mode 100644 index 00000000..8a4a60d4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__carminite_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__castle_brick'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__castle_brick'}.png new file mode 100644 index 00000000..0497d77a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__castle_brick'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__castle_roof_tile'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__castle_roof_tile'}.png new file mode 100644 index 00000000..5e06cb80 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__castle_roof_tile'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__cracked_castle_brick'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__cracked_castle_brick'}.png new file mode 100644 index 00000000..de07bbbb Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__cracked_castle_brick'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__cracked_deadrock'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__cracked_deadrock'}.png new file mode 100644 index 00000000..2840a980 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__cracked_deadrock'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__cracked_etched_nagastone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__cracked_etched_nagastone'}.png new file mode 100644 index 00000000..279c700c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__cracked_etched_nagastone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__cracked_mazestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__cracked_mazestone'}.png new file mode 100644 index 00000000..9e7db8a9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__cracked_mazestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__cracked_nagastone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__cracked_nagastone_pillar'}.png new file mode 100644 index 00000000..5b31a0af Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__cracked_nagastone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__cracked_towerwood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__cracked_towerwood'}.png new file mode 100644 index 00000000..877d4df7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__cracked_towerwood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__cracked_underbrick'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__cracked_underbrick'}.png new file mode 100644 index 00000000..966e78b9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__cracked_underbrick'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__cut_mazestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__cut_mazestone'}.png new file mode 100644 index 00000000..57bb5d71 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__cut_mazestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__dark_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__dark_leaves'}.png new file mode 100644 index 00000000..70a22f10 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__dark_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__dark_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__dark_log'}.png new file mode 100644 index 00000000..bd4acf87 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__dark_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__dark_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__dark_planks'}.png new file mode 100644 index 00000000..e08ab427 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__dark_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__dark_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__dark_wood'}.png new file mode 100644 index 00000000..c1dc8c45 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__dark_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__deadrock'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__deadrock'}.png new file mode 100644 index 00000000..6a10b91e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__deadrock'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__decorative_mazestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__decorative_mazestone'}.png new file mode 100644 index 00000000..3bc9759c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__decorative_mazestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__encased_castle_brick_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__encased_castle_brick_pillar'}.png new file mode 100644 index 00000000..aa4dbe42 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__encased_castle_brick_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__encased_castle_brick_tile'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__encased_castle_brick_tile'}.png new file mode 100644 index 00000000..dc666a93 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__encased_castle_brick_tile'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__encased_towerwood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__encased_towerwood'}.png new file mode 100644 index 00000000..4cc6f7bf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__encased_towerwood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__etched_nagastone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__etched_nagastone'}.png new file mode 100644 index 00000000..c07641bf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__etched_nagastone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__fiery_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__fiery_block'}.png new file mode 100644 index 00000000..c381f2c1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__fiery_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__fluffy_cloud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__fluffy_cloud'}.png new file mode 100644 index 00000000..954a8a65 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__fluffy_cloud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__giant_cobblestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__giant_cobblestone'}.png new file mode 100644 index 00000000..30330101 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__giant_cobblestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__giant_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__giant_leaves'}.png new file mode 100644 index 00000000..946f8a51 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__giant_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__giant_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__giant_log'}.png new file mode 100644 index 00000000..9358dbef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__giant_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__giant_obsidian'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__giant_obsidian'}.png new file mode 100644 index 00000000..4d8a26bf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__giant_obsidian'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__huge_mushgloom'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__huge_mushgloom'}.png new file mode 100644 index 00000000..3d3dcf65 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__huge_mushgloom'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__huge_mushgloom_stem'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__huge_mushgloom_stem'}.png new file mode 100644 index 00000000..02cf70b6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__huge_mushgloom_stem'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__huge_stalk'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__huge_stalk'}.png new file mode 100644 index 00000000..e30978e6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__huge_stalk'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__infested_towerwood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__infested_towerwood'}.png new file mode 100644 index 00000000..bc70fbef Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__infested_towerwood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__ironwood_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__ironwood_block'}.png new file mode 100644 index 00000000..1255c3f3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__ironwood_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__liveroot_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__liveroot_block'}.png new file mode 100644 index 00000000..9741aa22 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__liveroot_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__locked_vanishing_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__locked_vanishing_block'}.png new file mode 100644 index 00000000..bc87c2b1 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__locked_vanishing_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mangrove_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mangrove_leaves'}.png new file mode 100644 index 00000000..b7ad9cff Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mangrove_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mangrove_log'}.png new file mode 100644 index 00000000..4fa5a6a6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mangrove_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mangrove_planks'}.png new file mode 100644 index 00000000..2694c462 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mangrove_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mangrove_root'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mangrove_root'}.png new file mode 100644 index 00000000..71ec6723 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mangrove_root'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mangrove_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mangrove_wood'}.png new file mode 100644 index 00000000..4568bd10 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mangrove_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mazestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mazestone'}.png new file mode 100644 index 00000000..e59ed6c2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mazestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mazestone_border'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mazestone_border'}.png new file mode 100644 index 00000000..50658759 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mazestone_border'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mazestone_brick'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mazestone_brick'}.png new file mode 100644 index 00000000..33bef6d7 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mazestone_brick'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mazestone_mosaic'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mazestone_mosaic'}.png new file mode 100644 index 00000000..d930172a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mazestone_mosaic'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mining_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mining_leaves'}.png new file mode 100644 index 00000000..ecb7736f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mining_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mining_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mining_log'}.png new file mode 100644 index 00000000..7d96b390 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mining_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mining_log_core'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mining_log_core'}.png new file mode 100644 index 00000000..5ace761a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mining_log_core'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mining_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mining_planks'}.png new file mode 100644 index 00000000..36b1264b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mining_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mining_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mining_wood'}.png new file mode 100644 index 00000000..65aafd1f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mining_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mossy_castle_brick'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mossy_castle_brick'}.png new file mode 100644 index 00000000..f61dd1b0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mossy_castle_brick'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mossy_etched_nagastone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mossy_etched_nagastone'}.png new file mode 100644 index 00000000..03ed02c9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mossy_etched_nagastone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mossy_mazestone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mossy_mazestone'}.png new file mode 100644 index 00000000..b7aacd1a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mossy_mazestone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mossy_nagastone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mossy_nagastone_pillar'}.png new file mode 100644 index 00000000..478259e6 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mossy_nagastone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mossy_towerwood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mossy_towerwood'}.png new file mode 100644 index 00000000..ac2b5b9f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mossy_towerwood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mossy_underbrick'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mossy_underbrick'}.png new file mode 100644 index 00000000..30ce75c3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__mossy_underbrick'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__nagastone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__nagastone'}.png new file mode 100644 index 00000000..dae734f4 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__nagastone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__nagastone_head'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__nagastone_head'}.png new file mode 100644 index 00000000..284f8895 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__nagastone_head'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__nagastone_pillar'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__nagastone_pillar'}.png new file mode 100644 index 00000000..ee4a4021 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__nagastone_pillar'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__pink_castle_door'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__pink_castle_door'}.png new file mode 100644 index 00000000..3a0901a9 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__pink_castle_door'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__pink_castle_rune_brick'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__pink_castle_rune_brick'}.png new file mode 100644 index 00000000..780df260 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__pink_castle_rune_brick'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__rainbow_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__rainbow_oak_leaves'}.png new file mode 100644 index 00000000..946f8a51 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__rainbow_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__rainy_cloud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__rainy_cloud'}.png new file mode 100644 index 00000000..120acd4a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__rainy_cloud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__reappearing_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__reappearing_block'}.png new file mode 100644 index 00000000..22633984 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__reappearing_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__root'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__root'}.png new file mode 100644 index 00000000..14e77e78 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__root'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__snowy_cloud'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__snowy_cloud'}.png new file mode 100644 index 00000000..edc52ecd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__snowy_cloud'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__sorting_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__sorting_leaves'}.png new file mode 100644 index 00000000..1481f54c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__sorting_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__sorting_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__sorting_log'}.png new file mode 100644 index 00000000..aaff298f Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__sorting_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__sorting_log_core'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__sorting_log_core'}.png new file mode 100644 index 00000000..90efdb89 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__sorting_log_core'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__sorting_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__sorting_planks'}.png new file mode 100644 index 00000000..546e759c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__sorting_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__sorting_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__sorting_wood'}.png new file mode 100644 index 00000000..aea344b0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__sorting_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__spiral_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__spiral_bricks'}.png new file mode 100644 index 00000000..b6b68fde Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__spiral_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__steeleaf_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__steeleaf_block'}.png new file mode 100644 index 00000000..85c3e0a3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__steeleaf_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_canopy_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_canopy_log'}.png new file mode 100644 index 00000000..eb7f0437 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_canopy_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_canopy_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_canopy_wood'}.png new file mode 100644 index 00000000..02b0b825 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_canopy_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_dark_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_dark_log'}.png new file mode 100644 index 00000000..33d1621d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_dark_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_dark_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_dark_wood'}.png new file mode 100644 index 00000000..3f645b8a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_dark_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_mangrove_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_mangrove_log'}.png new file mode 100644 index 00000000..9fa0101e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_mangrove_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_mangrove_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_mangrove_wood'}.png new file mode 100644 index 00000000..10775f36 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_mangrove_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_mining_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_mining_log'}.png new file mode 100644 index 00000000..88fafd20 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_mining_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_mining_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_mining_wood'}.png new file mode 100644 index 00000000..c45ec68c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_mining_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_sorting_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_sorting_log'}.png new file mode 100644 index 00000000..c6791284 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_sorting_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_sorting_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_sorting_wood'}.png new file mode 100644 index 00000000..2e7e8c96 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_sorting_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_time_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_time_log'}.png new file mode 100644 index 00000000..8cb709b3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_time_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_time_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_time_wood'}.png new file mode 100644 index 00000000..d0e42faa Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_time_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_transformation_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_transformation_log'}.png new file mode 100644 index 00000000..60c8898a Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_transformation_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_transformation_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_transformation_wood'}.png new file mode 100644 index 00000000..4debe1ab Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_transformation_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_twilight_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_twilight_oak_log'}.png new file mode 100644 index 00000000..1c792cc8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_twilight_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_twilight_oak_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_twilight_oak_wood'}.png new file mode 100644 index 00000000..694e43fe Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stripped_twilight_oak_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stronghold_shield'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stronghold_shield'}.png new file mode 100644 index 00000000..38bb1c7d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__stronghold_shield'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__terrorcotta_arcs'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__terrorcotta_arcs'}.png new file mode 100644 index 00000000..b69de6ec Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__terrorcotta_arcs'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__terrorcotta_curves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__terrorcotta_curves'}.png new file mode 100644 index 00000000..15ea794b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__terrorcotta_curves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__terrorcotta_lines'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__terrorcotta_lines'}.png new file mode 100644 index 00000000..c90dab87 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__terrorcotta_lines'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__thick_castle_brick'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__thick_castle_brick'}.png new file mode 100644 index 00000000..5572505c Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__thick_castle_brick'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__thorn_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__thorn_leaves'}.png new file mode 100644 index 00000000..208914f8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__thorn_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__time_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__time_leaves'}.png new file mode 100644 index 00000000..f2031745 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__time_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__time_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__time_log'}.png new file mode 100644 index 00000000..cda16abf Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__time_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__time_log_core'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__time_log_core'}.png new file mode 100644 index 00000000..4565a0da Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__time_log_core'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__time_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__time_planks'}.png new file mode 100644 index 00000000..3b3fe559 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__time_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__time_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__time_wood'}.png new file mode 100644 index 00000000..f927a850 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__time_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__towerwood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__towerwood'}.png new file mode 100644 index 00000000..fc23098e Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__towerwood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__transformation_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__transformation_leaves'}.png new file mode 100644 index 00000000..038a8a00 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__transformation_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__transformation_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__transformation_log'}.png new file mode 100644 index 00000000..9528a033 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__transformation_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__transformation_log_core'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__transformation_log_core'}.png new file mode 100644 index 00000000..be893c90 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__transformation_log_core'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__transformation_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__transformation_planks'}.png new file mode 100644 index 00000000..32d95093 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__transformation_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__transformation_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__transformation_wood'}.png new file mode 100644 index 00000000..06223cac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__transformation_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__trollsteinn'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__trollsteinn'}.png new file mode 100644 index 00000000..0eafbe76 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__trollsteinn'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__twilight_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__twilight_oak_leaves'}.png new file mode 100644 index 00000000..946f8a51 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__twilight_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__twilight_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__twilight_oak_log'}.png new file mode 100644 index 00000000..1ca95aac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__twilight_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__twilight_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__twilight_oak_planks'}.png new file mode 100644 index 00000000..965a57ac Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__twilight_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__twilight_oak_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__twilight_oak_wood'}.png new file mode 100644 index 00000000..1ddfa47b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__twilight_oak_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__twisted_stone'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__twisted_stone'}.png new file mode 100644 index 00000000..e5f377f2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__twisted_stone'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__uncrafting_table'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__uncrafting_table'}.png new file mode 100644 index 00000000..4bca01dd Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__uncrafting_table'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__underbrick'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__underbrick'}.png new file mode 100644 index 00000000..fc555e58 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__underbrick'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__underbrick_floor'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__underbrick_floor'}.png new file mode 100644 index 00000000..cd446ba0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__underbrick_floor'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__vanishing_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__vanishing_block'}.png new file mode 100644 index 00000000..4b5d3105 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__vanishing_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__violet_castle_door'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__violet_castle_door'}.png new file mode 100644 index 00000000..f4f538a0 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__violet_castle_door'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__violet_castle_rune_brick'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__violet_castle_rune_brick'}.png new file mode 100644 index 00000000..0c0f19a2 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__violet_castle_rune_brick'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__weathered_deadrock'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__weathered_deadrock'}.png new file mode 100644 index 00000000..cf85c8e5 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__weathered_deadrock'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__worn_castle_brick'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__worn_castle_brick'}.png new file mode 100644 index 00000000..e00c9e8b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__worn_castle_brick'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__yellow_castle_door'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__yellow_castle_door'}.png new file mode 100644 index 00000000..b4d50d87 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__yellow_castle_door'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__yellow_castle_rune_brick'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__yellow_castle_rune_brick'}.png new file mode 100644 index 00000000..2c176449 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'twilightforest__yellow_castle_rune_brick'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__chiseled_resin_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__chiseled_resin_bricks'}.png new file mode 100644 index 00000000..96163dd8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__chiseled_resin_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__pale_moss_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__pale_moss_block'}.png new file mode 100644 index 00000000..fb2d7142 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__pale_moss_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__pale_oak_leaves'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__pale_oak_leaves'}.png new file mode 100644 index 00000000..4a70b2dc Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__pale_oak_leaves'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__pale_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__pale_oak_log'}.png new file mode 100644 index 00000000..d3add7a3 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__pale_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__pale_oak_planks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__pale_oak_planks'}.png new file mode 100644 index 00000000..dab3439b Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__pale_oak_planks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__pale_oak_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__pale_oak_wood'}.png new file mode 100644 index 00000000..e9d6a661 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__pale_oak_wood'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__resin_block'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__resin_block'}.png new file mode 100644 index 00000000..83dbda3d Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__resin_block'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__resin_bricks'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__resin_bricks'}.png new file mode 100644 index 00000000..2bbe4cf8 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__resin_bricks'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__stripped_pale_oak_log'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__stripped_pale_oak_log'}.png new file mode 100644 index 00000000..d22b2a43 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__stripped_pale_oak_log'}.png differ diff --git a/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__stripped_pale_oak_wood'}.png b/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__stripped_pale_oak_wood'}.png new file mode 100644 index 00000000..ab17e594 Binary files /dev/null and b/public/textures/ae2/facade__{'ae2__facade_item'__'vanillabackport__stripped_pale_oak_wood'}.png differ diff --git a/public/textures/ae2/fe_p2p_tunnel.png b/public/textures/ae2/fe_p2p_tunnel.png new file mode 100644 index 00000000..2082b7c7 Binary files /dev/null and b/public/textures/ae2/fe_p2p_tunnel.png differ diff --git a/public/textures/ae2/flawed_budding_quartz.png b/public/textures/ae2/flawed_budding_quartz.png new file mode 100644 index 00000000..bcb5c42c Binary files /dev/null and b/public/textures/ae2/flawed_budding_quartz.png differ diff --git a/public/textures/ae2/flawless_budding_quartz.png b/public/textures/ae2/flawless_budding_quartz.png new file mode 100644 index 00000000..f7ec058d Binary files /dev/null and b/public/textures/ae2/flawless_budding_quartz.png differ diff --git a/public/textures/ae2/fluid_cell_housing.png b/public/textures/ae2/fluid_cell_housing.png new file mode 100644 index 00000000..ec4b8c25 Binary files /dev/null and b/public/textures/ae2/fluid_cell_housing.png differ diff --git a/public/textures/ae2/fluid_p2p_tunnel.png b/public/textures/ae2/fluid_p2p_tunnel.png new file mode 100644 index 00000000..a2a3f994 Binary files /dev/null and b/public/textures/ae2/fluid_p2p_tunnel.png differ diff --git a/public/textures/ae2/fluid_storage_cell_16k.png b/public/textures/ae2/fluid_storage_cell_16k.png new file mode 100644 index 00000000..cb59d794 Binary files /dev/null and b/public/textures/ae2/fluid_storage_cell_16k.png differ diff --git a/public/textures/ae2/fluid_storage_cell_1k.png b/public/textures/ae2/fluid_storage_cell_1k.png new file mode 100644 index 00000000..0df2e3cc Binary files /dev/null and b/public/textures/ae2/fluid_storage_cell_1k.png differ diff --git a/public/textures/ae2/fluid_storage_cell_256k.png b/public/textures/ae2/fluid_storage_cell_256k.png new file mode 100644 index 00000000..468e2708 Binary files /dev/null and b/public/textures/ae2/fluid_storage_cell_256k.png differ diff --git a/public/textures/ae2/fluid_storage_cell_4k.png b/public/textures/ae2/fluid_storage_cell_4k.png new file mode 100644 index 00000000..cc8caeac Binary files /dev/null and b/public/textures/ae2/fluid_storage_cell_4k.png differ diff --git a/public/textures/ae2/fluid_storage_cell_64k.png b/public/textures/ae2/fluid_storage_cell_64k.png new file mode 100644 index 00000000..bc707e5f Binary files /dev/null and b/public/textures/ae2/fluid_storage_cell_64k.png differ diff --git a/public/textures/ae2/fluix_axe.png b/public/textures/ae2/fluix_axe.png new file mode 100644 index 00000000..260c7f9b Binary files /dev/null and b/public/textures/ae2/fluix_axe.png differ diff --git a/public/textures/ae2/fluix_block.png b/public/textures/ae2/fluix_block.png new file mode 100644 index 00000000..86da0954 Binary files /dev/null and b/public/textures/ae2/fluix_block.png differ diff --git a/public/textures/ae2/fluix_covered_cable.png b/public/textures/ae2/fluix_covered_cable.png new file mode 100644 index 00000000..45567613 Binary files /dev/null and b/public/textures/ae2/fluix_covered_cable.png differ diff --git a/public/textures/ae2/fluix_covered_dense_cable.png b/public/textures/ae2/fluix_covered_dense_cable.png new file mode 100644 index 00000000..89b6e593 Binary files /dev/null and b/public/textures/ae2/fluix_covered_dense_cable.png differ diff --git a/public/textures/ae2/fluix_crystal.png b/public/textures/ae2/fluix_crystal.png new file mode 100644 index 00000000..784843ef Binary files /dev/null and b/public/textures/ae2/fluix_crystal.png differ diff --git a/public/textures/ae2/fluix_dust.png b/public/textures/ae2/fluix_dust.png new file mode 100644 index 00000000..b8864979 Binary files /dev/null and b/public/textures/ae2/fluix_dust.png differ diff --git a/public/textures/ae2/fluix_glass_cable.png b/public/textures/ae2/fluix_glass_cable.png new file mode 100644 index 00000000..d4cd693f Binary files /dev/null and b/public/textures/ae2/fluix_glass_cable.png differ diff --git a/public/textures/ae2/fluix_hoe.png b/public/textures/ae2/fluix_hoe.png new file mode 100644 index 00000000..434f6c9a Binary files /dev/null and b/public/textures/ae2/fluix_hoe.png differ diff --git a/public/textures/ae2/fluix_pearl.png b/public/textures/ae2/fluix_pearl.png new file mode 100644 index 00000000..bb5121d5 Binary files /dev/null and b/public/textures/ae2/fluix_pearl.png differ diff --git a/public/textures/ae2/fluix_pickaxe.png b/public/textures/ae2/fluix_pickaxe.png new file mode 100644 index 00000000..931a6824 Binary files /dev/null and b/public/textures/ae2/fluix_pickaxe.png differ diff --git a/public/textures/ae2/fluix_shovel.png b/public/textures/ae2/fluix_shovel.png new file mode 100644 index 00000000..776e5840 Binary files /dev/null and b/public/textures/ae2/fluix_shovel.png differ diff --git a/public/textures/ae2/fluix_slab.png b/public/textures/ae2/fluix_slab.png new file mode 100644 index 00000000..6c1313dc Binary files /dev/null and b/public/textures/ae2/fluix_slab.png differ diff --git a/public/textures/ae2/fluix_smart_cable.png b/public/textures/ae2/fluix_smart_cable.png new file mode 100644 index 00000000..901bc3f0 Binary files /dev/null and b/public/textures/ae2/fluix_smart_cable.png differ diff --git a/public/textures/ae2/fluix_smart_dense_cable.png b/public/textures/ae2/fluix_smart_dense_cable.png new file mode 100644 index 00000000..1bc8b533 Binary files /dev/null and b/public/textures/ae2/fluix_smart_dense_cable.png differ diff --git a/public/textures/ae2/fluix_stairs.png b/public/textures/ae2/fluix_stairs.png new file mode 100644 index 00000000..6c6d8987 Binary files /dev/null and b/public/textures/ae2/fluix_stairs.png differ diff --git a/public/textures/ae2/fluix_sword.png b/public/textures/ae2/fluix_sword.png new file mode 100644 index 00000000..3fedddc5 Binary files /dev/null and b/public/textures/ae2/fluix_sword.png differ diff --git a/public/textures/ae2/fluix_upgrade_smithing_template.png b/public/textures/ae2/fluix_upgrade_smithing_template.png new file mode 100644 index 00000000..00667271 Binary files /dev/null and b/public/textures/ae2/fluix_upgrade_smithing_template.png differ diff --git a/public/textures/ae2/fluix_wall.png b/public/textures/ae2/fluix_wall.png new file mode 100644 index 00000000..a1916946 Binary files /dev/null and b/public/textures/ae2/fluix_wall.png differ diff --git a/public/textures/ae2/formation_core.png b/public/textures/ae2/formation_core.png new file mode 100644 index 00000000..dd9af197 Binary files /dev/null and b/public/textures/ae2/formation_core.png differ diff --git a/public/textures/ae2/formation_plane.png b/public/textures/ae2/formation_plane.png new file mode 100644 index 00000000..ddfd26a1 Binary files /dev/null and b/public/textures/ae2/formation_plane.png differ diff --git a/public/textures/ae2/fuzzy_card.png b/public/textures/ae2/fuzzy_card.png new file mode 100644 index 00000000..8d80950f Binary files /dev/null and b/public/textures/ae2/fuzzy_card.png differ diff --git a/public/textures/ae2/gray_covered_cable.png b/public/textures/ae2/gray_covered_cable.png new file mode 100644 index 00000000..28f3d4f1 Binary files /dev/null and b/public/textures/ae2/gray_covered_cable.png differ diff --git a/public/textures/ae2/gray_covered_dense_cable.png b/public/textures/ae2/gray_covered_dense_cable.png new file mode 100644 index 00000000..0587eaf8 Binary files /dev/null and b/public/textures/ae2/gray_covered_dense_cable.png differ diff --git a/public/textures/ae2/gray_glass_cable.png b/public/textures/ae2/gray_glass_cable.png new file mode 100644 index 00000000..b80069cb Binary files /dev/null and b/public/textures/ae2/gray_glass_cable.png differ diff --git a/public/textures/ae2/gray_lumen_paint_ball.png b/public/textures/ae2/gray_lumen_paint_ball.png new file mode 100644 index 00000000..c0523046 Binary files /dev/null and b/public/textures/ae2/gray_lumen_paint_ball.png differ diff --git a/public/textures/ae2/gray_paint_ball.png b/public/textures/ae2/gray_paint_ball.png new file mode 100644 index 00000000..6937a7db Binary files /dev/null and b/public/textures/ae2/gray_paint_ball.png differ diff --git a/public/textures/ae2/gray_smart_cable.png b/public/textures/ae2/gray_smart_cable.png new file mode 100644 index 00000000..786918a8 Binary files /dev/null and b/public/textures/ae2/gray_smart_cable.png differ diff --git a/public/textures/ae2/gray_smart_dense_cable.png b/public/textures/ae2/gray_smart_dense_cable.png new file mode 100644 index 00000000..290d288d Binary files /dev/null and b/public/textures/ae2/gray_smart_dense_cable.png differ diff --git a/public/textures/ae2/green_covered_cable.png b/public/textures/ae2/green_covered_cable.png new file mode 100644 index 00000000..3a0dba26 Binary files /dev/null and b/public/textures/ae2/green_covered_cable.png differ diff --git a/public/textures/ae2/green_covered_dense_cable.png b/public/textures/ae2/green_covered_dense_cable.png new file mode 100644 index 00000000..98569d04 Binary files /dev/null and b/public/textures/ae2/green_covered_dense_cable.png differ diff --git a/public/textures/ae2/green_glass_cable.png b/public/textures/ae2/green_glass_cable.png new file mode 100644 index 00000000..56f5217b Binary files /dev/null and b/public/textures/ae2/green_glass_cable.png differ diff --git a/public/textures/ae2/green_lumen_paint_ball.png b/public/textures/ae2/green_lumen_paint_ball.png new file mode 100644 index 00000000..50f10795 Binary files /dev/null and b/public/textures/ae2/green_lumen_paint_ball.png differ diff --git a/public/textures/ae2/green_paint_ball.png b/public/textures/ae2/green_paint_ball.png new file mode 100644 index 00000000..f4de64cd Binary files /dev/null and b/public/textures/ae2/green_paint_ball.png differ diff --git a/public/textures/ae2/green_smart_cable.png b/public/textures/ae2/green_smart_cable.png new file mode 100644 index 00000000..8d842145 Binary files /dev/null and b/public/textures/ae2/green_smart_cable.png differ diff --git a/public/textures/ae2/green_smart_dense_cable.png b/public/textures/ae2/green_smart_dense_cable.png new file mode 100644 index 00000000..817c52fb Binary files /dev/null and b/public/textures/ae2/green_smart_dense_cable.png differ diff --git a/public/textures/ae2/growth_accelerator.png b/public/textures/ae2/growth_accelerator.png new file mode 100644 index 00000000..b6024495 Binary files /dev/null and b/public/textures/ae2/growth_accelerator.png differ diff --git a/public/textures/ae2/guide.png b/public/textures/ae2/guide.png new file mode 100644 index 00000000..b1c69727 Binary files /dev/null and b/public/textures/ae2/guide.png differ diff --git a/public/textures/ae2/import_bus.png b/public/textures/ae2/import_bus.png new file mode 100644 index 00000000..9cecbf67 Binary files /dev/null and b/public/textures/ae2/import_bus.png differ diff --git a/public/textures/ae2/inscriber.png b/public/textures/ae2/inscriber.png new file mode 100644 index 00000000..0034b97c Binary files /dev/null and b/public/textures/ae2/inscriber.png differ diff --git a/public/textures/ae2/interface.png b/public/textures/ae2/interface.png new file mode 100644 index 00000000..b0727c1d Binary files /dev/null and b/public/textures/ae2/interface.png differ diff --git a/public/textures/ae2/inverted_toggle_bus.png b/public/textures/ae2/inverted_toggle_bus.png new file mode 100644 index 00000000..56080370 Binary files /dev/null and b/public/textures/ae2/inverted_toggle_bus.png differ diff --git a/public/textures/ae2/inverter_card.png b/public/textures/ae2/inverter_card.png new file mode 100644 index 00000000..90fd68c3 Binary files /dev/null and b/public/textures/ae2/inverter_card.png differ diff --git a/public/textures/ae2/io_port.png b/public/textures/ae2/io_port.png new file mode 100644 index 00000000..00fcacc9 Binary files /dev/null and b/public/textures/ae2/io_port.png differ diff --git a/public/textures/ae2/item_cell_housing.png b/public/textures/ae2/item_cell_housing.png new file mode 100644 index 00000000..fbce1bea Binary files /dev/null and b/public/textures/ae2/item_cell_housing.png differ diff --git a/public/textures/ae2/item_p2p_tunnel.png b/public/textures/ae2/item_p2p_tunnel.png new file mode 100644 index 00000000..0ca85677 Binary files /dev/null and b/public/textures/ae2/item_p2p_tunnel.png differ diff --git a/public/textures/ae2/item_storage_cell_16k.png b/public/textures/ae2/item_storage_cell_16k.png new file mode 100644 index 00000000..92cf2fca Binary files /dev/null and b/public/textures/ae2/item_storage_cell_16k.png differ diff --git a/public/textures/ae2/item_storage_cell_1k.png b/public/textures/ae2/item_storage_cell_1k.png new file mode 100644 index 00000000..1a0c3406 Binary files /dev/null and b/public/textures/ae2/item_storage_cell_1k.png differ diff --git a/public/textures/ae2/item_storage_cell_256k.png b/public/textures/ae2/item_storage_cell_256k.png new file mode 100644 index 00000000..1ce1593e Binary files /dev/null and b/public/textures/ae2/item_storage_cell_256k.png differ diff --git a/public/textures/ae2/item_storage_cell_4k.png b/public/textures/ae2/item_storage_cell_4k.png new file mode 100644 index 00000000..42c62edd Binary files /dev/null and b/public/textures/ae2/item_storage_cell_4k.png differ diff --git a/public/textures/ae2/item_storage_cell_64k.png b/public/textures/ae2/item_storage_cell_64k.png new file mode 100644 index 00000000..6325ae0b Binary files /dev/null and b/public/textures/ae2/item_storage_cell_64k.png differ diff --git a/public/textures/ae2/large_quartz_bud.png b/public/textures/ae2/large_quartz_bud.png new file mode 100644 index 00000000..40154294 Binary files /dev/null and b/public/textures/ae2/large_quartz_bud.png differ diff --git a/public/textures/ae2/level_emitter.png b/public/textures/ae2/level_emitter.png new file mode 100644 index 00000000..44a07f9d Binary files /dev/null and b/public/textures/ae2/level_emitter.png differ diff --git a/public/textures/ae2/light_blue_covered_cable.png b/public/textures/ae2/light_blue_covered_cable.png new file mode 100644 index 00000000..7fa887bd Binary files /dev/null and b/public/textures/ae2/light_blue_covered_cable.png differ diff --git a/public/textures/ae2/light_blue_covered_dense_cable.png b/public/textures/ae2/light_blue_covered_dense_cable.png new file mode 100644 index 00000000..b7fa8c3f Binary files /dev/null and b/public/textures/ae2/light_blue_covered_dense_cable.png differ diff --git a/public/textures/ae2/light_blue_glass_cable.png b/public/textures/ae2/light_blue_glass_cable.png new file mode 100644 index 00000000..2f9c148a Binary files /dev/null and b/public/textures/ae2/light_blue_glass_cable.png differ diff --git a/public/textures/ae2/light_blue_lumen_paint_ball.png b/public/textures/ae2/light_blue_lumen_paint_ball.png new file mode 100644 index 00000000..957433f4 Binary files /dev/null and b/public/textures/ae2/light_blue_lumen_paint_ball.png differ diff --git a/public/textures/ae2/light_blue_paint_ball.png b/public/textures/ae2/light_blue_paint_ball.png new file mode 100644 index 00000000..8f384dab Binary files /dev/null and b/public/textures/ae2/light_blue_paint_ball.png differ diff --git a/public/textures/ae2/light_blue_smart_cable.png b/public/textures/ae2/light_blue_smart_cable.png new file mode 100644 index 00000000..353e4d65 Binary files /dev/null and b/public/textures/ae2/light_blue_smart_cable.png differ diff --git a/public/textures/ae2/light_blue_smart_dense_cable.png b/public/textures/ae2/light_blue_smart_dense_cable.png new file mode 100644 index 00000000..7586a15a Binary files /dev/null and b/public/textures/ae2/light_blue_smart_dense_cable.png differ diff --git a/public/textures/ae2/light_detector.png b/public/textures/ae2/light_detector.png new file mode 100644 index 00000000..ab40d4a3 Binary files /dev/null and b/public/textures/ae2/light_detector.png differ diff --git a/public/textures/ae2/light_gray_covered_cable.png b/public/textures/ae2/light_gray_covered_cable.png new file mode 100644 index 00000000..4c162147 Binary files /dev/null and b/public/textures/ae2/light_gray_covered_cable.png differ diff --git a/public/textures/ae2/light_gray_covered_dense_cable.png b/public/textures/ae2/light_gray_covered_dense_cable.png new file mode 100644 index 00000000..72465067 Binary files /dev/null and b/public/textures/ae2/light_gray_covered_dense_cable.png differ diff --git a/public/textures/ae2/light_gray_glass_cable.png b/public/textures/ae2/light_gray_glass_cable.png new file mode 100644 index 00000000..a01a0948 Binary files /dev/null and b/public/textures/ae2/light_gray_glass_cable.png differ diff --git a/public/textures/ae2/light_gray_lumen_paint_ball.png b/public/textures/ae2/light_gray_lumen_paint_ball.png new file mode 100644 index 00000000..a79bfc43 Binary files /dev/null and b/public/textures/ae2/light_gray_lumen_paint_ball.png differ diff --git a/public/textures/ae2/light_gray_paint_ball.png b/public/textures/ae2/light_gray_paint_ball.png new file mode 100644 index 00000000..0f05b5de Binary files /dev/null and b/public/textures/ae2/light_gray_paint_ball.png differ diff --git a/public/textures/ae2/light_gray_smart_cable.png b/public/textures/ae2/light_gray_smart_cable.png new file mode 100644 index 00000000..f56ce8ce Binary files /dev/null and b/public/textures/ae2/light_gray_smart_cable.png differ diff --git a/public/textures/ae2/light_gray_smart_dense_cable.png b/public/textures/ae2/light_gray_smart_dense_cable.png new file mode 100644 index 00000000..1cfd7e12 Binary files /dev/null and b/public/textures/ae2/light_gray_smart_dense_cable.png differ diff --git a/public/textures/ae2/light_p2p_tunnel.png b/public/textures/ae2/light_p2p_tunnel.png new file mode 100644 index 00000000..fc92dbd5 Binary files /dev/null and b/public/textures/ae2/light_p2p_tunnel.png differ diff --git a/public/textures/ae2/lime_covered_cable.png b/public/textures/ae2/lime_covered_cable.png new file mode 100644 index 00000000..7de56e8f Binary files /dev/null and b/public/textures/ae2/lime_covered_cable.png differ diff --git a/public/textures/ae2/lime_covered_dense_cable.png b/public/textures/ae2/lime_covered_dense_cable.png new file mode 100644 index 00000000..09978474 Binary files /dev/null and b/public/textures/ae2/lime_covered_dense_cable.png differ diff --git a/public/textures/ae2/lime_glass_cable.png b/public/textures/ae2/lime_glass_cable.png new file mode 100644 index 00000000..52dc44bd Binary files /dev/null and b/public/textures/ae2/lime_glass_cable.png differ diff --git a/public/textures/ae2/lime_lumen_paint_ball.png b/public/textures/ae2/lime_lumen_paint_ball.png new file mode 100644 index 00000000..0f28b87f Binary files /dev/null and b/public/textures/ae2/lime_lumen_paint_ball.png differ diff --git a/public/textures/ae2/lime_paint_ball.png b/public/textures/ae2/lime_paint_ball.png new file mode 100644 index 00000000..c7057209 Binary files /dev/null and b/public/textures/ae2/lime_paint_ball.png differ diff --git a/public/textures/ae2/lime_smart_cable.png b/public/textures/ae2/lime_smart_cable.png new file mode 100644 index 00000000..87bc64f2 Binary files /dev/null and b/public/textures/ae2/lime_smart_cable.png differ diff --git a/public/textures/ae2/lime_smart_dense_cable.png b/public/textures/ae2/lime_smart_dense_cable.png new file mode 100644 index 00000000..84bac06a Binary files /dev/null and b/public/textures/ae2/lime_smart_dense_cable.png differ diff --git a/public/textures/ae2/logic_processor.png b/public/textures/ae2/logic_processor.png new file mode 100644 index 00000000..e7a16e92 Binary files /dev/null and b/public/textures/ae2/logic_processor.png differ diff --git a/public/textures/ae2/logic_processor_press.png b/public/textures/ae2/logic_processor_press.png new file mode 100644 index 00000000..d734b7b0 Binary files /dev/null and b/public/textures/ae2/logic_processor_press.png differ diff --git a/public/textures/ae2/magenta_covered_cable.png b/public/textures/ae2/magenta_covered_cable.png new file mode 100644 index 00000000..7bfea594 Binary files /dev/null and b/public/textures/ae2/magenta_covered_cable.png differ diff --git a/public/textures/ae2/magenta_covered_dense_cable.png b/public/textures/ae2/magenta_covered_dense_cable.png new file mode 100644 index 00000000..322f5d35 Binary files /dev/null and b/public/textures/ae2/magenta_covered_dense_cable.png differ diff --git a/public/textures/ae2/magenta_glass_cable.png b/public/textures/ae2/magenta_glass_cable.png new file mode 100644 index 00000000..652ce329 Binary files /dev/null and b/public/textures/ae2/magenta_glass_cable.png differ diff --git a/public/textures/ae2/magenta_lumen_paint_ball.png b/public/textures/ae2/magenta_lumen_paint_ball.png new file mode 100644 index 00000000..ed81f738 Binary files /dev/null and b/public/textures/ae2/magenta_lumen_paint_ball.png differ diff --git a/public/textures/ae2/magenta_paint_ball.png b/public/textures/ae2/magenta_paint_ball.png new file mode 100644 index 00000000..3f6c5929 Binary files /dev/null and b/public/textures/ae2/magenta_paint_ball.png differ diff --git a/public/textures/ae2/magenta_smart_cable.png b/public/textures/ae2/magenta_smart_cable.png new file mode 100644 index 00000000..61da1773 Binary files /dev/null and b/public/textures/ae2/magenta_smart_cable.png differ diff --git a/public/textures/ae2/magenta_smart_dense_cable.png b/public/textures/ae2/magenta_smart_dense_cable.png new file mode 100644 index 00000000..0b0a9d1a Binary files /dev/null and b/public/textures/ae2/magenta_smart_dense_cable.png differ diff --git a/public/textures/ae2/matter_ball.png b/public/textures/ae2/matter_ball.png new file mode 100644 index 00000000..b810eb61 Binary files /dev/null and b/public/textures/ae2/matter_ball.png differ diff --git a/public/textures/ae2/matter_cannon.png b/public/textures/ae2/matter_cannon.png new file mode 100644 index 00000000..549d4ce3 Binary files /dev/null and b/public/textures/ae2/matter_cannon.png differ diff --git a/public/textures/ae2/matter_cannon__{'ae2__stored_energy'__200000.0d}.png b/public/textures/ae2/matter_cannon__{'ae2__stored_energy'__200000.0d}.png new file mode 100644 index 00000000..549d4ce3 Binary files /dev/null and b/public/textures/ae2/matter_cannon__{'ae2__stored_energy'__200000.0d}.png differ diff --git a/public/textures/ae2/me_p2p_tunnel.png b/public/textures/ae2/me_p2p_tunnel.png new file mode 100644 index 00000000..9a13e20f Binary files /dev/null and b/public/textures/ae2/me_p2p_tunnel.png differ diff --git a/public/textures/ae2/medium_quartz_bud.png b/public/textures/ae2/medium_quartz_bud.png new file mode 100644 index 00000000..0f79404a Binary files /dev/null and b/public/textures/ae2/medium_quartz_bud.png differ diff --git a/public/textures/ae2/memory_card.png b/public/textures/ae2/memory_card.png new file mode 100644 index 00000000..348c1689 Binary files /dev/null and b/public/textures/ae2/memory_card.png differ diff --git a/public/textures/ae2/meteorite_compass.png b/public/textures/ae2/meteorite_compass.png new file mode 100644 index 00000000..dc140963 Binary files /dev/null and b/public/textures/ae2/meteorite_compass.png differ diff --git a/public/textures/ae2/molecular_assembler.png b/public/textures/ae2/molecular_assembler.png new file mode 100644 index 00000000..90bae40d Binary files /dev/null and b/public/textures/ae2/molecular_assembler.png differ diff --git a/public/textures/ae2/monitor.png b/public/textures/ae2/monitor.png new file mode 100644 index 00000000..f0b13b36 Binary files /dev/null and b/public/textures/ae2/monitor.png differ diff --git a/public/textures/ae2/mysterious_cube.png b/public/textures/ae2/mysterious_cube.png new file mode 100644 index 00000000..e89f9859 Binary files /dev/null and b/public/textures/ae2/mysterious_cube.png differ diff --git a/public/textures/ae2/name_press.png b/public/textures/ae2/name_press.png new file mode 100644 index 00000000..fb2f117d Binary files /dev/null and b/public/textures/ae2/name_press.png differ diff --git a/public/textures/ae2/nether_quartz_axe.png b/public/textures/ae2/nether_quartz_axe.png new file mode 100644 index 00000000..0003a238 Binary files /dev/null and b/public/textures/ae2/nether_quartz_axe.png differ diff --git a/public/textures/ae2/nether_quartz_cutting_knife.png b/public/textures/ae2/nether_quartz_cutting_knife.png new file mode 100644 index 00000000..3d177cb1 Binary files /dev/null and b/public/textures/ae2/nether_quartz_cutting_knife.png differ diff --git a/public/textures/ae2/nether_quartz_hoe.png b/public/textures/ae2/nether_quartz_hoe.png new file mode 100644 index 00000000..02b8e6d3 Binary files /dev/null and b/public/textures/ae2/nether_quartz_hoe.png differ diff --git a/public/textures/ae2/nether_quartz_pickaxe.png b/public/textures/ae2/nether_quartz_pickaxe.png new file mode 100644 index 00000000..7a55e009 Binary files /dev/null and b/public/textures/ae2/nether_quartz_pickaxe.png differ diff --git a/public/textures/ae2/nether_quartz_shovel.png b/public/textures/ae2/nether_quartz_shovel.png new file mode 100644 index 00000000..b7cc648b Binary files /dev/null and b/public/textures/ae2/nether_quartz_shovel.png differ diff --git a/public/textures/ae2/nether_quartz_sword.png b/public/textures/ae2/nether_quartz_sword.png new file mode 100644 index 00000000..c263255b Binary files /dev/null and b/public/textures/ae2/nether_quartz_sword.png differ diff --git a/public/textures/ae2/nether_quartz_wrench.png b/public/textures/ae2/nether_quartz_wrench.png new file mode 100644 index 00000000..d41fb2fd Binary files /dev/null and b/public/textures/ae2/nether_quartz_wrench.png differ diff --git a/public/textures/ae2/network_tool.png b/public/textures/ae2/network_tool.png new file mode 100644 index 00000000..60872961 Binary files /dev/null and b/public/textures/ae2/network_tool.png differ diff --git a/public/textures/ae2/not_so_mysterious_cube.png b/public/textures/ae2/not_so_mysterious_cube.png new file mode 100644 index 00000000..e89f9859 Binary files /dev/null and b/public/textures/ae2/not_so_mysterious_cube.png differ diff --git a/public/textures/ae2/orange_covered_cable.png b/public/textures/ae2/orange_covered_cable.png new file mode 100644 index 00000000..86685d99 Binary files /dev/null and b/public/textures/ae2/orange_covered_cable.png differ diff --git a/public/textures/ae2/orange_covered_dense_cable.png b/public/textures/ae2/orange_covered_dense_cable.png new file mode 100644 index 00000000..0e14fe38 Binary files /dev/null and b/public/textures/ae2/orange_covered_dense_cable.png differ diff --git a/public/textures/ae2/orange_glass_cable.png b/public/textures/ae2/orange_glass_cable.png new file mode 100644 index 00000000..2f03a55b Binary files /dev/null and b/public/textures/ae2/orange_glass_cable.png differ diff --git a/public/textures/ae2/orange_lumen_paint_ball.png b/public/textures/ae2/orange_lumen_paint_ball.png new file mode 100644 index 00000000..c0b2d78a Binary files /dev/null and b/public/textures/ae2/orange_lumen_paint_ball.png differ diff --git a/public/textures/ae2/orange_paint_ball.png b/public/textures/ae2/orange_paint_ball.png new file mode 100644 index 00000000..c5bf8b8a Binary files /dev/null and b/public/textures/ae2/orange_paint_ball.png differ diff --git a/public/textures/ae2/orange_smart_cable.png b/public/textures/ae2/orange_smart_cable.png new file mode 100644 index 00000000..f82d4b34 Binary files /dev/null and b/public/textures/ae2/orange_smart_cable.png differ diff --git a/public/textures/ae2/orange_smart_dense_cable.png b/public/textures/ae2/orange_smart_dense_cable.png new file mode 100644 index 00000000..d9031688 Binary files /dev/null and b/public/textures/ae2/orange_smart_dense_cable.png differ diff --git a/public/textures/ae2/pattern_access_terminal.png b/public/textures/ae2/pattern_access_terminal.png new file mode 100644 index 00000000..764fe9bd Binary files /dev/null and b/public/textures/ae2/pattern_access_terminal.png differ diff --git a/public/textures/ae2/pattern_encoding_terminal.png b/public/textures/ae2/pattern_encoding_terminal.png new file mode 100644 index 00000000..3f9ab82e Binary files /dev/null and b/public/textures/ae2/pattern_encoding_terminal.png differ diff --git a/public/textures/ae2/pattern_provider.png b/public/textures/ae2/pattern_provider.png new file mode 100644 index 00000000..3a41dcac Binary files /dev/null and b/public/textures/ae2/pattern_provider.png differ diff --git a/public/textures/ae2/pink_covered_cable.png b/public/textures/ae2/pink_covered_cable.png new file mode 100644 index 00000000..fe2434a5 Binary files /dev/null and b/public/textures/ae2/pink_covered_cable.png differ diff --git a/public/textures/ae2/pink_covered_dense_cable.png b/public/textures/ae2/pink_covered_dense_cable.png new file mode 100644 index 00000000..7e67c448 Binary files /dev/null and b/public/textures/ae2/pink_covered_dense_cable.png differ diff --git a/public/textures/ae2/pink_glass_cable.png b/public/textures/ae2/pink_glass_cable.png new file mode 100644 index 00000000..2247456b Binary files /dev/null and b/public/textures/ae2/pink_glass_cable.png differ diff --git a/public/textures/ae2/pink_lumen_paint_ball.png b/public/textures/ae2/pink_lumen_paint_ball.png new file mode 100644 index 00000000..de4e474d Binary files /dev/null and b/public/textures/ae2/pink_lumen_paint_ball.png differ diff --git a/public/textures/ae2/pink_paint_ball.png b/public/textures/ae2/pink_paint_ball.png new file mode 100644 index 00000000..b12c2c56 Binary files /dev/null and b/public/textures/ae2/pink_paint_ball.png differ diff --git a/public/textures/ae2/pink_smart_cable.png b/public/textures/ae2/pink_smart_cable.png new file mode 100644 index 00000000..adce8146 Binary files /dev/null and b/public/textures/ae2/pink_smart_cable.png differ diff --git a/public/textures/ae2/pink_smart_dense_cable.png b/public/textures/ae2/pink_smart_dense_cable.png new file mode 100644 index 00000000..d78b771a Binary files /dev/null and b/public/textures/ae2/pink_smart_dense_cable.png differ diff --git a/public/textures/ae2/portable_fluid_cell_16k.png b/public/textures/ae2/portable_fluid_cell_16k.png new file mode 100644 index 00000000..7deafa37 Binary files /dev/null and b/public/textures/ae2/portable_fluid_cell_16k.png differ diff --git a/public/textures/ae2/portable_fluid_cell_16k__{'ae2__stored_energy'__20000.0d}.png b/public/textures/ae2/portable_fluid_cell_16k__{'ae2__stored_energy'__20000.0d}.png new file mode 100644 index 00000000..bcf27701 Binary files /dev/null and b/public/textures/ae2/portable_fluid_cell_16k__{'ae2__stored_energy'__20000.0d}.png differ diff --git a/public/textures/ae2/portable_fluid_cell_1k.png b/public/textures/ae2/portable_fluid_cell_1k.png new file mode 100644 index 00000000..107bbcab Binary files /dev/null and b/public/textures/ae2/portable_fluid_cell_1k.png differ diff --git a/public/textures/ae2/portable_fluid_cell_1k__{'ae2__stored_energy'__20000.0d}.png b/public/textures/ae2/portable_fluid_cell_1k__{'ae2__stored_energy'__20000.0d}.png new file mode 100644 index 00000000..a3414c12 Binary files /dev/null and b/public/textures/ae2/portable_fluid_cell_1k__{'ae2__stored_energy'__20000.0d}.png differ diff --git a/public/textures/ae2/portable_fluid_cell_256k.png b/public/textures/ae2/portable_fluid_cell_256k.png new file mode 100644 index 00000000..9184c8a1 Binary files /dev/null and b/public/textures/ae2/portable_fluid_cell_256k.png differ diff --git a/public/textures/ae2/portable_fluid_cell_256k__{'ae2__stored_energy'__20000.0d}.png b/public/textures/ae2/portable_fluid_cell_256k__{'ae2__stored_energy'__20000.0d}.png new file mode 100644 index 00000000..42bbc2d5 Binary files /dev/null and b/public/textures/ae2/portable_fluid_cell_256k__{'ae2__stored_energy'__20000.0d}.png differ diff --git a/public/textures/ae2/portable_fluid_cell_4k.png b/public/textures/ae2/portable_fluid_cell_4k.png new file mode 100644 index 00000000..0d8c41a5 Binary files /dev/null and b/public/textures/ae2/portable_fluid_cell_4k.png differ diff --git a/public/textures/ae2/portable_fluid_cell_4k__{'ae2__stored_energy'__20000.0d}.png b/public/textures/ae2/portable_fluid_cell_4k__{'ae2__stored_energy'__20000.0d}.png new file mode 100644 index 00000000..67b32351 Binary files /dev/null and b/public/textures/ae2/portable_fluid_cell_4k__{'ae2__stored_energy'__20000.0d}.png differ diff --git a/public/textures/ae2/portable_fluid_cell_64k.png b/public/textures/ae2/portable_fluid_cell_64k.png new file mode 100644 index 00000000..8248864b Binary files /dev/null and b/public/textures/ae2/portable_fluid_cell_64k.png differ diff --git a/public/textures/ae2/portable_fluid_cell_64k__{'ae2__stored_energy'__20000.0d}.png b/public/textures/ae2/portable_fluid_cell_64k__{'ae2__stored_energy'__20000.0d}.png new file mode 100644 index 00000000..d8c0ac67 Binary files /dev/null and b/public/textures/ae2/portable_fluid_cell_64k__{'ae2__stored_energy'__20000.0d}.png differ diff --git a/public/textures/ae2/portable_item_cell_16k.png b/public/textures/ae2/portable_item_cell_16k.png new file mode 100644 index 00000000..0b60dd6b Binary files /dev/null and b/public/textures/ae2/portable_item_cell_16k.png differ diff --git a/public/textures/ae2/portable_item_cell_16k__{'ae2__stored_energy'__20000.0d}.png b/public/textures/ae2/portable_item_cell_16k__{'ae2__stored_energy'__20000.0d}.png new file mode 100644 index 00000000..406f89d0 Binary files /dev/null and b/public/textures/ae2/portable_item_cell_16k__{'ae2__stored_energy'__20000.0d}.png differ diff --git a/public/textures/ae2/portable_item_cell_1k.png b/public/textures/ae2/portable_item_cell_1k.png new file mode 100644 index 00000000..198cd92a Binary files /dev/null and b/public/textures/ae2/portable_item_cell_1k.png differ diff --git a/public/textures/ae2/portable_item_cell_1k__{'ae2__stored_energy'__20000.0d}.png b/public/textures/ae2/portable_item_cell_1k__{'ae2__stored_energy'__20000.0d}.png new file mode 100644 index 00000000..c6559ece Binary files /dev/null and b/public/textures/ae2/portable_item_cell_1k__{'ae2__stored_energy'__20000.0d}.png differ diff --git a/public/textures/ae2/portable_item_cell_256k.png b/public/textures/ae2/portable_item_cell_256k.png new file mode 100644 index 00000000..523d5edc Binary files /dev/null and b/public/textures/ae2/portable_item_cell_256k.png differ diff --git a/public/textures/ae2/portable_item_cell_256k__{'ae2__stored_energy'__20000.0d}.png b/public/textures/ae2/portable_item_cell_256k__{'ae2__stored_energy'__20000.0d}.png new file mode 100644 index 00000000..a4c1ef21 Binary files /dev/null and b/public/textures/ae2/portable_item_cell_256k__{'ae2__stored_energy'__20000.0d}.png differ diff --git a/public/textures/ae2/portable_item_cell_4k.png b/public/textures/ae2/portable_item_cell_4k.png new file mode 100644 index 00000000..b4bd8889 Binary files /dev/null and b/public/textures/ae2/portable_item_cell_4k.png differ diff --git a/public/textures/ae2/portable_item_cell_4k__{'ae2__stored_energy'__20000.0d}.png b/public/textures/ae2/portable_item_cell_4k__{'ae2__stored_energy'__20000.0d}.png new file mode 100644 index 00000000..abf12da3 Binary files /dev/null and b/public/textures/ae2/portable_item_cell_4k__{'ae2__stored_energy'__20000.0d}.png differ diff --git a/public/textures/ae2/portable_item_cell_64k.png b/public/textures/ae2/portable_item_cell_64k.png new file mode 100644 index 00000000..b5b8c3b2 Binary files /dev/null and b/public/textures/ae2/portable_item_cell_64k.png differ diff --git a/public/textures/ae2/portable_item_cell_64k__{'ae2__stored_energy'__20000.0d}.png b/public/textures/ae2/portable_item_cell_64k__{'ae2__stored_energy'__20000.0d}.png new file mode 100644 index 00000000..0184d11b Binary files /dev/null and b/public/textures/ae2/portable_item_cell_64k__{'ae2__stored_energy'__20000.0d}.png differ diff --git a/public/textures/ae2/printed_calculation_processor.png b/public/textures/ae2/printed_calculation_processor.png new file mode 100644 index 00000000..6fc2ce4d Binary files /dev/null and b/public/textures/ae2/printed_calculation_processor.png differ diff --git a/public/textures/ae2/printed_engineering_processor.png b/public/textures/ae2/printed_engineering_processor.png new file mode 100644 index 00000000..d7eebf80 Binary files /dev/null and b/public/textures/ae2/printed_engineering_processor.png differ diff --git a/public/textures/ae2/printed_logic_processor.png b/public/textures/ae2/printed_logic_processor.png new file mode 100644 index 00000000..23677d47 Binary files /dev/null and b/public/textures/ae2/printed_logic_processor.png differ diff --git a/public/textures/ae2/printed_silicon.png b/public/textures/ae2/printed_silicon.png new file mode 100644 index 00000000..6f323cd2 Binary files /dev/null and b/public/textures/ae2/printed_silicon.png differ diff --git a/public/textures/ae2/purple_covered_cable.png b/public/textures/ae2/purple_covered_cable.png new file mode 100644 index 00000000..4227e2b1 Binary files /dev/null and b/public/textures/ae2/purple_covered_cable.png differ diff --git a/public/textures/ae2/purple_covered_dense_cable.png b/public/textures/ae2/purple_covered_dense_cable.png new file mode 100644 index 00000000..78ebdaaf Binary files /dev/null and b/public/textures/ae2/purple_covered_dense_cable.png differ diff --git a/public/textures/ae2/purple_glass_cable.png b/public/textures/ae2/purple_glass_cable.png new file mode 100644 index 00000000..e54164b0 Binary files /dev/null and b/public/textures/ae2/purple_glass_cable.png differ diff --git a/public/textures/ae2/purple_lumen_paint_ball.png b/public/textures/ae2/purple_lumen_paint_ball.png new file mode 100644 index 00000000..f37adaab Binary files /dev/null and b/public/textures/ae2/purple_lumen_paint_ball.png differ diff --git a/public/textures/ae2/purple_paint_ball.png b/public/textures/ae2/purple_paint_ball.png new file mode 100644 index 00000000..f7a7e925 Binary files /dev/null and b/public/textures/ae2/purple_paint_ball.png differ diff --git a/public/textures/ae2/purple_smart_cable.png b/public/textures/ae2/purple_smart_cable.png new file mode 100644 index 00000000..f0c85e54 Binary files /dev/null and b/public/textures/ae2/purple_smart_cable.png differ diff --git a/public/textures/ae2/purple_smart_dense_cable.png b/public/textures/ae2/purple_smart_dense_cable.png new file mode 100644 index 00000000..6f4f8265 Binary files /dev/null and b/public/textures/ae2/purple_smart_dense_cable.png differ diff --git a/public/textures/ae2/quantum_entangled_singularity.png b/public/textures/ae2/quantum_entangled_singularity.png new file mode 100644 index 00000000..e3b3ab0c Binary files /dev/null and b/public/textures/ae2/quantum_entangled_singularity.png differ diff --git a/public/textures/ae2/quantum_link.png b/public/textures/ae2/quantum_link.png new file mode 100644 index 00000000..921a283e Binary files /dev/null and b/public/textures/ae2/quantum_link.png differ diff --git a/public/textures/ae2/quantum_ring.png b/public/textures/ae2/quantum_ring.png new file mode 100644 index 00000000..bbda6fe5 Binary files /dev/null and b/public/textures/ae2/quantum_ring.png differ diff --git a/public/textures/ae2/quartz_block.png b/public/textures/ae2/quartz_block.png new file mode 100644 index 00000000..1cb40077 Binary files /dev/null and b/public/textures/ae2/quartz_block.png differ diff --git a/public/textures/ae2/quartz_brick_slab.png b/public/textures/ae2/quartz_brick_slab.png new file mode 100644 index 00000000..b117a648 Binary files /dev/null and b/public/textures/ae2/quartz_brick_slab.png differ diff --git a/public/textures/ae2/quartz_brick_stairs.png b/public/textures/ae2/quartz_brick_stairs.png new file mode 100644 index 00000000..32e1bec2 Binary files /dev/null and b/public/textures/ae2/quartz_brick_stairs.png differ diff --git a/public/textures/ae2/quartz_brick_wall.png b/public/textures/ae2/quartz_brick_wall.png new file mode 100644 index 00000000..db20683b Binary files /dev/null and b/public/textures/ae2/quartz_brick_wall.png differ diff --git a/public/textures/ae2/quartz_bricks.png b/public/textures/ae2/quartz_bricks.png new file mode 100644 index 00000000..dc696ef9 Binary files /dev/null and b/public/textures/ae2/quartz_bricks.png differ diff --git a/public/textures/ae2/quartz_cluster.png b/public/textures/ae2/quartz_cluster.png new file mode 100644 index 00000000..225916ee Binary files /dev/null and b/public/textures/ae2/quartz_cluster.png differ diff --git a/public/textures/ae2/quartz_fiber.png b/public/textures/ae2/quartz_fiber.png new file mode 100644 index 00000000..228d09e6 Binary files /dev/null and b/public/textures/ae2/quartz_fiber.png differ diff --git a/public/textures/ae2/quartz_fixture.png b/public/textures/ae2/quartz_fixture.png new file mode 100644 index 00000000..ab40d4a3 Binary files /dev/null and b/public/textures/ae2/quartz_fixture.png differ diff --git a/public/textures/ae2/quartz_glass.png b/public/textures/ae2/quartz_glass.png new file mode 100644 index 00000000..e863c03c Binary files /dev/null and b/public/textures/ae2/quartz_glass.png differ diff --git a/public/textures/ae2/quartz_pillar.png b/public/textures/ae2/quartz_pillar.png new file mode 100644 index 00000000..66a50110 Binary files /dev/null and b/public/textures/ae2/quartz_pillar.png differ diff --git a/public/textures/ae2/quartz_pillar_slab.png b/public/textures/ae2/quartz_pillar_slab.png new file mode 100644 index 00000000..233b626f Binary files /dev/null and b/public/textures/ae2/quartz_pillar_slab.png differ diff --git a/public/textures/ae2/quartz_pillar_stairs.png b/public/textures/ae2/quartz_pillar_stairs.png new file mode 100644 index 00000000..4347a0a6 Binary files /dev/null and b/public/textures/ae2/quartz_pillar_stairs.png differ diff --git a/public/textures/ae2/quartz_pillar_wall.png b/public/textures/ae2/quartz_pillar_wall.png new file mode 100644 index 00000000..f1388030 Binary files /dev/null and b/public/textures/ae2/quartz_pillar_wall.png differ diff --git a/public/textures/ae2/quartz_slab.png b/public/textures/ae2/quartz_slab.png new file mode 100644 index 00000000..3cd12049 Binary files /dev/null and b/public/textures/ae2/quartz_slab.png differ diff --git a/public/textures/ae2/quartz_stairs.png b/public/textures/ae2/quartz_stairs.png new file mode 100644 index 00000000..6fa1a006 Binary files /dev/null and b/public/textures/ae2/quartz_stairs.png differ diff --git a/public/textures/ae2/quartz_vibrant_glass.png b/public/textures/ae2/quartz_vibrant_glass.png new file mode 100644 index 00000000..e863c03c Binary files /dev/null and b/public/textures/ae2/quartz_vibrant_glass.png differ diff --git a/public/textures/ae2/quartz_wall.png b/public/textures/ae2/quartz_wall.png new file mode 100644 index 00000000..abcb528a Binary files /dev/null and b/public/textures/ae2/quartz_wall.png differ diff --git a/public/textures/ae2/red_covered_cable.png b/public/textures/ae2/red_covered_cable.png new file mode 100644 index 00000000..9fec305e Binary files /dev/null and b/public/textures/ae2/red_covered_cable.png differ diff --git a/public/textures/ae2/red_covered_dense_cable.png b/public/textures/ae2/red_covered_dense_cable.png new file mode 100644 index 00000000..ee61e872 Binary files /dev/null and b/public/textures/ae2/red_covered_dense_cable.png differ diff --git a/public/textures/ae2/red_glass_cable.png b/public/textures/ae2/red_glass_cable.png new file mode 100644 index 00000000..a98c5c54 Binary files /dev/null and b/public/textures/ae2/red_glass_cable.png differ diff --git a/public/textures/ae2/red_lumen_paint_ball.png b/public/textures/ae2/red_lumen_paint_ball.png new file mode 100644 index 00000000..cb3a3786 Binary files /dev/null and b/public/textures/ae2/red_lumen_paint_ball.png differ diff --git a/public/textures/ae2/red_paint_ball.png b/public/textures/ae2/red_paint_ball.png new file mode 100644 index 00000000..90f4e4ab Binary files /dev/null and b/public/textures/ae2/red_paint_ball.png differ diff --git a/public/textures/ae2/red_smart_cable.png b/public/textures/ae2/red_smart_cable.png new file mode 100644 index 00000000..bb25d5c1 Binary files /dev/null and b/public/textures/ae2/red_smart_cable.png differ diff --git a/public/textures/ae2/red_smart_dense_cable.png b/public/textures/ae2/red_smart_dense_cable.png new file mode 100644 index 00000000..0552a52f Binary files /dev/null and b/public/textures/ae2/red_smart_dense_cable.png differ diff --git a/public/textures/ae2/redstone_card.png b/public/textures/ae2/redstone_card.png new file mode 100644 index 00000000..7a4a0430 Binary files /dev/null and b/public/textures/ae2/redstone_card.png differ diff --git a/public/textures/ae2/redstone_p2p_tunnel.png b/public/textures/ae2/redstone_p2p_tunnel.png new file mode 100644 index 00000000..afd9e4cc Binary files /dev/null and b/public/textures/ae2/redstone_p2p_tunnel.png differ diff --git a/public/textures/ae2/semi_dark_monitor.png b/public/textures/ae2/semi_dark_monitor.png new file mode 100644 index 00000000..b2a155a1 Binary files /dev/null and b/public/textures/ae2/semi_dark_monitor.png differ diff --git a/public/textures/ae2/silicon.png b/public/textures/ae2/silicon.png new file mode 100644 index 00000000..f4df7d40 Binary files /dev/null and b/public/textures/ae2/silicon.png differ diff --git a/public/textures/ae2/silicon_press.png b/public/textures/ae2/silicon_press.png new file mode 100644 index 00000000..0970f6c8 Binary files /dev/null and b/public/textures/ae2/silicon_press.png differ diff --git a/public/textures/ae2/singularity.png b/public/textures/ae2/singularity.png new file mode 100644 index 00000000..90b8521d Binary files /dev/null and b/public/textures/ae2/singularity.png differ diff --git a/public/textures/ae2/sky_dust.png b/public/textures/ae2/sky_dust.png new file mode 100644 index 00000000..85600acb Binary files /dev/null and b/public/textures/ae2/sky_dust.png differ diff --git a/public/textures/ae2/sky_stone_block.png b/public/textures/ae2/sky_stone_block.png new file mode 100644 index 00000000..09c4bf73 Binary files /dev/null and b/public/textures/ae2/sky_stone_block.png differ diff --git a/public/textures/ae2/sky_stone_brick.png b/public/textures/ae2/sky_stone_brick.png new file mode 100644 index 00000000..0e337540 Binary files /dev/null and b/public/textures/ae2/sky_stone_brick.png differ diff --git a/public/textures/ae2/sky_stone_brick_slab.png b/public/textures/ae2/sky_stone_brick_slab.png new file mode 100644 index 00000000..11b65efa Binary files /dev/null and b/public/textures/ae2/sky_stone_brick_slab.png differ diff --git a/public/textures/ae2/sky_stone_brick_stairs.png b/public/textures/ae2/sky_stone_brick_stairs.png new file mode 100644 index 00000000..6b1727ba Binary files /dev/null and b/public/textures/ae2/sky_stone_brick_stairs.png differ diff --git a/public/textures/ae2/sky_stone_brick_wall.png b/public/textures/ae2/sky_stone_brick_wall.png new file mode 100644 index 00000000..9ae89d96 Binary files /dev/null and b/public/textures/ae2/sky_stone_brick_wall.png differ diff --git a/public/textures/ae2/sky_stone_chest.png b/public/textures/ae2/sky_stone_chest.png new file mode 100644 index 00000000..3325bf9f Binary files /dev/null and b/public/textures/ae2/sky_stone_chest.png differ diff --git a/public/textures/ae2/sky_stone_slab.png b/public/textures/ae2/sky_stone_slab.png new file mode 100644 index 00000000..eb3e11f5 Binary files /dev/null and b/public/textures/ae2/sky_stone_slab.png differ diff --git a/public/textures/ae2/sky_stone_small_brick.png b/public/textures/ae2/sky_stone_small_brick.png new file mode 100644 index 00000000..78b397aa Binary files /dev/null and b/public/textures/ae2/sky_stone_small_brick.png differ diff --git a/public/textures/ae2/sky_stone_small_brick_slab.png b/public/textures/ae2/sky_stone_small_brick_slab.png new file mode 100644 index 00000000..dd8c8e57 Binary files /dev/null and b/public/textures/ae2/sky_stone_small_brick_slab.png differ diff --git a/public/textures/ae2/sky_stone_small_brick_stairs.png b/public/textures/ae2/sky_stone_small_brick_stairs.png new file mode 100644 index 00000000..278bcc9d Binary files /dev/null and b/public/textures/ae2/sky_stone_small_brick_stairs.png differ diff --git a/public/textures/ae2/sky_stone_small_brick_wall.png b/public/textures/ae2/sky_stone_small_brick_wall.png new file mode 100644 index 00000000..05dcb502 Binary files /dev/null and b/public/textures/ae2/sky_stone_small_brick_wall.png differ diff --git a/public/textures/ae2/sky_stone_stairs.png b/public/textures/ae2/sky_stone_stairs.png new file mode 100644 index 00000000..084a35cc Binary files /dev/null and b/public/textures/ae2/sky_stone_stairs.png differ diff --git a/public/textures/ae2/sky_stone_tank.png b/public/textures/ae2/sky_stone_tank.png new file mode 100644 index 00000000..40ef4590 Binary files /dev/null and b/public/textures/ae2/sky_stone_tank.png differ diff --git a/public/textures/ae2/sky_stone_wall.png b/public/textures/ae2/sky_stone_wall.png new file mode 100644 index 00000000..fcb7ed2d Binary files /dev/null and b/public/textures/ae2/sky_stone_wall.png differ diff --git a/public/textures/ae2/small_quartz_bud.png b/public/textures/ae2/small_quartz_bud.png new file mode 100644 index 00000000..0d457d98 Binary files /dev/null and b/public/textures/ae2/small_quartz_bud.png differ diff --git a/public/textures/ae2/smooth_quartz_block.png b/public/textures/ae2/smooth_quartz_block.png new file mode 100644 index 00000000..eb15dc9a Binary files /dev/null and b/public/textures/ae2/smooth_quartz_block.png differ diff --git a/public/textures/ae2/smooth_quartz_slab.png b/public/textures/ae2/smooth_quartz_slab.png new file mode 100644 index 00000000..56ab8d5c Binary files /dev/null and b/public/textures/ae2/smooth_quartz_slab.png differ diff --git a/public/textures/ae2/smooth_quartz_stairs.png b/public/textures/ae2/smooth_quartz_stairs.png new file mode 100644 index 00000000..14b612e9 Binary files /dev/null and b/public/textures/ae2/smooth_quartz_stairs.png differ diff --git a/public/textures/ae2/smooth_quartz_wall.png b/public/textures/ae2/smooth_quartz_wall.png new file mode 100644 index 00000000..7f0c8de6 Binary files /dev/null and b/public/textures/ae2/smooth_quartz_wall.png differ diff --git a/public/textures/ae2/smooth_sky_stone_block.png b/public/textures/ae2/smooth_sky_stone_block.png new file mode 100644 index 00000000..c3afe12d Binary files /dev/null and b/public/textures/ae2/smooth_sky_stone_block.png differ diff --git a/public/textures/ae2/smooth_sky_stone_chest.png b/public/textures/ae2/smooth_sky_stone_chest.png new file mode 100644 index 00000000..f022440e Binary files /dev/null and b/public/textures/ae2/smooth_sky_stone_chest.png differ diff --git a/public/textures/ae2/smooth_sky_stone_slab.png b/public/textures/ae2/smooth_sky_stone_slab.png new file mode 100644 index 00000000..ec129f73 Binary files /dev/null and b/public/textures/ae2/smooth_sky_stone_slab.png differ diff --git a/public/textures/ae2/smooth_sky_stone_stairs.png b/public/textures/ae2/smooth_sky_stone_stairs.png new file mode 100644 index 00000000..0cd9ab61 Binary files /dev/null and b/public/textures/ae2/smooth_sky_stone_stairs.png differ diff --git a/public/textures/ae2/smooth_sky_stone_wall.png b/public/textures/ae2/smooth_sky_stone_wall.png new file mode 100644 index 00000000..cafea354 Binary files /dev/null and b/public/textures/ae2/smooth_sky_stone_wall.png differ diff --git a/public/textures/ae2/spatial_anchor.png b/public/textures/ae2/spatial_anchor.png new file mode 100644 index 00000000..3a3ba175 Binary files /dev/null and b/public/textures/ae2/spatial_anchor.png differ diff --git a/public/textures/ae2/spatial_cell_component_128.png b/public/textures/ae2/spatial_cell_component_128.png new file mode 100644 index 00000000..f492f624 Binary files /dev/null and b/public/textures/ae2/spatial_cell_component_128.png differ diff --git a/public/textures/ae2/spatial_cell_component_16.png b/public/textures/ae2/spatial_cell_component_16.png new file mode 100644 index 00000000..c5d013d4 Binary files /dev/null and b/public/textures/ae2/spatial_cell_component_16.png differ diff --git a/public/textures/ae2/spatial_cell_component_2.png b/public/textures/ae2/spatial_cell_component_2.png new file mode 100644 index 00000000..e25b4c37 Binary files /dev/null and b/public/textures/ae2/spatial_cell_component_2.png differ diff --git a/public/textures/ae2/spatial_io_port.png b/public/textures/ae2/spatial_io_port.png new file mode 100644 index 00000000..45d7d539 Binary files /dev/null and b/public/textures/ae2/spatial_io_port.png differ diff --git a/public/textures/ae2/spatial_pylon.png b/public/textures/ae2/spatial_pylon.png new file mode 100644 index 00000000..72aaa822 Binary files /dev/null and b/public/textures/ae2/spatial_pylon.png differ diff --git a/public/textures/ae2/spatial_storage_cell_128.png b/public/textures/ae2/spatial_storage_cell_128.png new file mode 100644 index 00000000..7d80694e Binary files /dev/null and b/public/textures/ae2/spatial_storage_cell_128.png differ diff --git a/public/textures/ae2/spatial_storage_cell_16.png b/public/textures/ae2/spatial_storage_cell_16.png new file mode 100644 index 00000000..f665021f Binary files /dev/null and b/public/textures/ae2/spatial_storage_cell_16.png differ diff --git a/public/textures/ae2/spatial_storage_cell_2.png b/public/textures/ae2/spatial_storage_cell_2.png new file mode 100644 index 00000000..f4b658fc Binary files /dev/null and b/public/textures/ae2/spatial_storage_cell_2.png differ diff --git a/public/textures/ae2/speed_card.png b/public/textures/ae2/speed_card.png new file mode 100644 index 00000000..f6c683f2 Binary files /dev/null and b/public/textures/ae2/speed_card.png differ diff --git a/public/textures/ae2/storage_bus.png b/public/textures/ae2/storage_bus.png new file mode 100644 index 00000000..8ce0e09e Binary files /dev/null and b/public/textures/ae2/storage_bus.png differ diff --git a/public/textures/ae2/storage_monitor.png b/public/textures/ae2/storage_monitor.png new file mode 100644 index 00000000..c6e830ad Binary files /dev/null and b/public/textures/ae2/storage_monitor.png differ diff --git a/public/textures/ae2/terminal.png b/public/textures/ae2/terminal.png new file mode 100644 index 00000000..fd7e5da6 Binary files /dev/null and b/public/textures/ae2/terminal.png differ diff --git a/public/textures/ae2/tiny_tnt.png b/public/textures/ae2/tiny_tnt.png new file mode 100644 index 00000000..373d7258 Binary files /dev/null and b/public/textures/ae2/tiny_tnt.png differ diff --git a/public/textures/ae2/toggle_bus.png b/public/textures/ae2/toggle_bus.png new file mode 100644 index 00000000..6997f913 Binary files /dev/null and b/public/textures/ae2/toggle_bus.png differ diff --git a/public/textures/ae2/vibration_chamber.png b/public/textures/ae2/vibration_chamber.png new file mode 100644 index 00000000..44365627 Binary files /dev/null and b/public/textures/ae2/vibration_chamber.png differ diff --git a/public/textures/ae2/view_cell.png b/public/textures/ae2/view_cell.png new file mode 100644 index 00000000..7816e983 Binary files /dev/null and b/public/textures/ae2/view_cell.png differ diff --git a/public/textures/ae2/void_card.png b/public/textures/ae2/void_card.png new file mode 100644 index 00000000..205a4b46 Binary files /dev/null and b/public/textures/ae2/void_card.png differ diff --git a/public/textures/ae2/white_covered_cable.png b/public/textures/ae2/white_covered_cable.png new file mode 100644 index 00000000..24ec8845 Binary files /dev/null and b/public/textures/ae2/white_covered_cable.png differ diff --git a/public/textures/ae2/white_covered_dense_cable.png b/public/textures/ae2/white_covered_dense_cable.png new file mode 100644 index 00000000..d12cbaea Binary files /dev/null and b/public/textures/ae2/white_covered_dense_cable.png differ diff --git a/public/textures/ae2/white_glass_cable.png b/public/textures/ae2/white_glass_cable.png new file mode 100644 index 00000000..9ab45f25 Binary files /dev/null and b/public/textures/ae2/white_glass_cable.png differ diff --git a/public/textures/ae2/white_lumen_paint_ball.png b/public/textures/ae2/white_lumen_paint_ball.png new file mode 100644 index 00000000..c95db65f Binary files /dev/null and b/public/textures/ae2/white_lumen_paint_ball.png differ diff --git a/public/textures/ae2/white_paint_ball.png b/public/textures/ae2/white_paint_ball.png new file mode 100644 index 00000000..45c7d7f5 Binary files /dev/null and b/public/textures/ae2/white_paint_ball.png differ diff --git a/public/textures/ae2/white_smart_cable.png b/public/textures/ae2/white_smart_cable.png new file mode 100644 index 00000000..542a90fe Binary files /dev/null and b/public/textures/ae2/white_smart_cable.png differ diff --git a/public/textures/ae2/white_smart_dense_cable.png b/public/textures/ae2/white_smart_dense_cable.png new file mode 100644 index 00000000..ab1ef67d Binary files /dev/null and b/public/textures/ae2/white_smart_dense_cable.png differ diff --git a/public/textures/ae2/wireless_access_point.png b/public/textures/ae2/wireless_access_point.png new file mode 100644 index 00000000..b9427cd8 Binary files /dev/null and b/public/textures/ae2/wireless_access_point.png differ diff --git a/public/textures/ae2/wireless_booster.png b/public/textures/ae2/wireless_booster.png new file mode 100644 index 00000000..cd3aa6dd Binary files /dev/null and b/public/textures/ae2/wireless_booster.png differ diff --git a/public/textures/ae2/wireless_crafting_terminal.png b/public/textures/ae2/wireless_crafting_terminal.png new file mode 100644 index 00000000..ca8f1fcc Binary files /dev/null and b/public/textures/ae2/wireless_crafting_terminal.png differ diff --git a/public/textures/ae2/wireless_crafting_terminal__{'ae2__stored_energy'__1600000.0d}.png b/public/textures/ae2/wireless_crafting_terminal__{'ae2__stored_energy'__1600000.0d}.png new file mode 100644 index 00000000..ca8f1fcc Binary files /dev/null and b/public/textures/ae2/wireless_crafting_terminal__{'ae2__stored_energy'__1600000.0d}.png differ diff --git a/public/textures/ae2/wireless_receiver.png b/public/textures/ae2/wireless_receiver.png new file mode 100644 index 00000000..9ab55ade Binary files /dev/null and b/public/textures/ae2/wireless_receiver.png differ diff --git a/public/textures/ae2/wireless_terminal.png b/public/textures/ae2/wireless_terminal.png new file mode 100644 index 00000000..96268300 Binary files /dev/null and b/public/textures/ae2/wireless_terminal.png differ diff --git a/public/textures/ae2/wireless_terminal__{'ae2__stored_energy'__1600000.0d}.png b/public/textures/ae2/wireless_terminal__{'ae2__stored_energy'__1600000.0d}.png new file mode 100644 index 00000000..96268300 Binary files /dev/null and b/public/textures/ae2/wireless_terminal__{'ae2__stored_energy'__1600000.0d}.png differ diff --git a/public/textures/ae2/yellow_covered_cable.png b/public/textures/ae2/yellow_covered_cable.png new file mode 100644 index 00000000..d2faaa7b Binary files /dev/null and b/public/textures/ae2/yellow_covered_cable.png differ diff --git a/public/textures/ae2/yellow_covered_dense_cable.png b/public/textures/ae2/yellow_covered_dense_cable.png new file mode 100644 index 00000000..2ab1426f Binary files /dev/null and b/public/textures/ae2/yellow_covered_dense_cable.png differ diff --git a/public/textures/ae2/yellow_glass_cable.png b/public/textures/ae2/yellow_glass_cable.png new file mode 100644 index 00000000..d0ad876f Binary files /dev/null and b/public/textures/ae2/yellow_glass_cable.png differ diff --git a/public/textures/ae2/yellow_lumen_paint_ball.png b/public/textures/ae2/yellow_lumen_paint_ball.png new file mode 100644 index 00000000..dc2f80f1 Binary files /dev/null and b/public/textures/ae2/yellow_lumen_paint_ball.png differ diff --git a/public/textures/ae2/yellow_paint_ball.png b/public/textures/ae2/yellow_paint_ball.png new file mode 100644 index 00000000..6b607930 Binary files /dev/null and b/public/textures/ae2/yellow_paint_ball.png differ diff --git a/public/textures/ae2/yellow_smart_cable.png b/public/textures/ae2/yellow_smart_cable.png new file mode 100644 index 00000000..4ddc2903 Binary files /dev/null and b/public/textures/ae2/yellow_smart_cable.png differ diff --git a/public/textures/ae2/yellow_smart_dense_cable.png b/public/textures/ae2/yellow_smart_dense_cable.png new file mode 100644 index 00000000..efd626ec Binary files /dev/null and b/public/textures/ae2/yellow_smart_dense_cable.png differ diff --git a/public/textures/ae2wtlib/magnet_card.png b/public/textures/ae2wtlib/magnet_card.png new file mode 100644 index 00000000..c50a753d Binary files /dev/null and b/public/textures/ae2wtlib/magnet_card.png differ diff --git a/public/textures/ae2wtlib/quantum_bridge_card.png b/public/textures/ae2wtlib/quantum_bridge_card.png new file mode 100644 index 00000000..56591d38 Binary files /dev/null and b/public/textures/ae2wtlib/quantum_bridge_card.png differ diff --git a/public/textures/ae2wtlib/wireless_pattern_access_terminal.png b/public/textures/ae2wtlib/wireless_pattern_access_terminal.png new file mode 100644 index 00000000..7daba8a2 Binary files /dev/null and b/public/textures/ae2wtlib/wireless_pattern_access_terminal.png differ diff --git a/public/textures/ae2wtlib/wireless_pattern_access_terminal__{'ae2__stored_energy'__1600000.0d}.png b/public/textures/ae2wtlib/wireless_pattern_access_terminal__{'ae2__stored_energy'__1600000.0d}.png new file mode 100644 index 00000000..7daba8a2 Binary files /dev/null and b/public/textures/ae2wtlib/wireless_pattern_access_terminal__{'ae2__stored_energy'__1600000.0d}.png differ diff --git a/public/textures/ae2wtlib/wireless_pattern_encoding_terminal.png b/public/textures/ae2wtlib/wireless_pattern_encoding_terminal.png new file mode 100644 index 00000000..f2fba824 Binary files /dev/null and b/public/textures/ae2wtlib/wireless_pattern_encoding_terminal.png differ diff --git a/public/textures/ae2wtlib/wireless_pattern_encoding_terminal__{'ae2__stored_energy'__1600000.0d}.png b/public/textures/ae2wtlib/wireless_pattern_encoding_terminal__{'ae2__stored_energy'__1600000.0d}.png new file mode 100644 index 00000000..f2fba824 Binary files /dev/null and b/public/textures/ae2wtlib/wireless_pattern_encoding_terminal__{'ae2__stored_energy'__1600000.0d}.png differ diff --git a/public/textures/ae2wtlib/wireless_universal_terminal.png b/public/textures/ae2wtlib/wireless_universal_terminal.png new file mode 100644 index 00000000..bb4184a3 Binary files /dev/null and b/public/textures/ae2wtlib/wireless_universal_terminal.png differ diff --git a/public/textures/ae2wtlib/wireless_universal_terminal__{'ae2__energy_capacity'__4800000.0d,'ae2__stored_energy'__4800000.0d,'ae2wtlib__has_crafting_terminal'__{},'ae2wtlib__has_pattern_access_terminal'__{},'ae2wtlib__has_pattern_encoding_terminal'__{}}.png b/public/textures/ae2wtlib/wireless_universal_terminal__{'ae2__energy_capacity'__4800000.0d,'ae2__stored_energy'__4800000.0d,'ae2wtlib__has_crafting_terminal'__{},'ae2wtlib__has_pattern_access_terminal'__{},'ae2wtlib__has_pattern_encoding_terminal'__{}}.png new file mode 100644 index 00000000..bb4184a3 Binary files /dev/null and b/public/textures/ae2wtlib/wireless_universal_terminal__{'ae2__energy_capacity'__4800000.0d,'ae2__stored_energy'__4800000.0d,'ae2wtlib__has_crafting_terminal'__{},'ae2wtlib__has_pattern_access_terminal'__{},'ae2wtlib__has_pattern_encoding_terminal'__{}}.png differ diff --git a/public/textures/appmek/chemical_cell_housing.png b/public/textures/appmek/chemical_cell_housing.png new file mode 100644 index 00000000..336c7249 Binary files /dev/null and b/public/textures/appmek/chemical_cell_housing.png differ diff --git a/public/textures/appmek/chemical_p2p_tunnel.png b/public/textures/appmek/chemical_p2p_tunnel.png new file mode 100644 index 00000000..35f3248e Binary files /dev/null and b/public/textures/appmek/chemical_p2p_tunnel.png differ diff --git a/public/textures/appmek/chemical_storage_cell_16k.png b/public/textures/appmek/chemical_storage_cell_16k.png new file mode 100644 index 00000000..ee6eedc1 Binary files /dev/null and b/public/textures/appmek/chemical_storage_cell_16k.png differ diff --git a/public/textures/appmek/chemical_storage_cell_1k.png b/public/textures/appmek/chemical_storage_cell_1k.png new file mode 100644 index 00000000..e4e187f1 Binary files /dev/null and b/public/textures/appmek/chemical_storage_cell_1k.png differ diff --git a/public/textures/appmek/chemical_storage_cell_256k.png b/public/textures/appmek/chemical_storage_cell_256k.png new file mode 100644 index 00000000..fc0948b4 Binary files /dev/null and b/public/textures/appmek/chemical_storage_cell_256k.png differ diff --git a/public/textures/appmek/chemical_storage_cell_4k.png b/public/textures/appmek/chemical_storage_cell_4k.png new file mode 100644 index 00000000..00e2b846 Binary files /dev/null and b/public/textures/appmek/chemical_storage_cell_4k.png differ diff --git a/public/textures/appmek/chemical_storage_cell_64k.png b/public/textures/appmek/chemical_storage_cell_64k.png new file mode 100644 index 00000000..c65594d5 Binary files /dev/null and b/public/textures/appmek/chemical_storage_cell_64k.png differ diff --git a/public/textures/appmek/portable_chemical_cell_16k.png b/public/textures/appmek/portable_chemical_cell_16k.png new file mode 100644 index 00000000..eb0aaaca Binary files /dev/null and b/public/textures/appmek/portable_chemical_cell_16k.png differ diff --git a/public/textures/appmek/portable_chemical_cell_16k__{'ae2__stored_energy'__20000.0d}.png b/public/textures/appmek/portable_chemical_cell_16k__{'ae2__stored_energy'__20000.0d}.png new file mode 100644 index 00000000..a99965fc Binary files /dev/null and b/public/textures/appmek/portable_chemical_cell_16k__{'ae2__stored_energy'__20000.0d}.png differ diff --git a/public/textures/appmek/portable_chemical_cell_1k.png b/public/textures/appmek/portable_chemical_cell_1k.png new file mode 100644 index 00000000..9484e529 Binary files /dev/null and b/public/textures/appmek/portable_chemical_cell_1k.png differ diff --git a/public/textures/appmek/portable_chemical_cell_1k__{'ae2__stored_energy'__20000.0d}.png b/public/textures/appmek/portable_chemical_cell_1k__{'ae2__stored_energy'__20000.0d}.png new file mode 100644 index 00000000..5103382d Binary files /dev/null and b/public/textures/appmek/portable_chemical_cell_1k__{'ae2__stored_energy'__20000.0d}.png differ diff --git a/public/textures/appmek/portable_chemical_cell_256k.png b/public/textures/appmek/portable_chemical_cell_256k.png new file mode 100644 index 00000000..3267b68c Binary files /dev/null and b/public/textures/appmek/portable_chemical_cell_256k.png differ diff --git a/public/textures/appmek/portable_chemical_cell_256k__{'ae2__stored_energy'__20000.0d}.png b/public/textures/appmek/portable_chemical_cell_256k__{'ae2__stored_energy'__20000.0d}.png new file mode 100644 index 00000000..ece0da85 Binary files /dev/null and b/public/textures/appmek/portable_chemical_cell_256k__{'ae2__stored_energy'__20000.0d}.png differ diff --git a/public/textures/appmek/portable_chemical_cell_4k.png b/public/textures/appmek/portable_chemical_cell_4k.png new file mode 100644 index 00000000..15b203ed Binary files /dev/null and b/public/textures/appmek/portable_chemical_cell_4k.png differ diff --git a/public/textures/appmek/portable_chemical_cell_4k__{'ae2__stored_energy'__20000.0d}.png b/public/textures/appmek/portable_chemical_cell_4k__{'ae2__stored_energy'__20000.0d}.png new file mode 100644 index 00000000..62d5ee51 Binary files /dev/null and b/public/textures/appmek/portable_chemical_cell_4k__{'ae2__stored_energy'__20000.0d}.png differ diff --git a/public/textures/appmek/portable_chemical_cell_64k.png b/public/textures/appmek/portable_chemical_cell_64k.png new file mode 100644 index 00000000..79790c7e Binary files /dev/null and b/public/textures/appmek/portable_chemical_cell_64k.png differ diff --git a/public/textures/appmek/portable_chemical_cell_64k__{'ae2__stored_energy'__20000.0d}.png b/public/textures/appmek/portable_chemical_cell_64k__{'ae2__stored_energy'__20000.0d}.png new file mode 100644 index 00000000..8f00343e Binary files /dev/null and b/public/textures/appmek/portable_chemical_cell_64k__{'ae2__stored_energy'__20000.0d}.png differ diff --git a/public/textures/biomeswevegone/allium_flower_bush.png b/public/textures/biomeswevegone/allium_flower_bush.png new file mode 100644 index 00000000..5db8f79a Binary files /dev/null and b/public/textures/biomeswevegone/allium_flower_bush.png differ diff --git a/public/textures/biomeswevegone/allium_oddion_soup.png b/public/textures/biomeswevegone/allium_oddion_soup.png new file mode 100644 index 00000000..61715f16 Binary files /dev/null and b/public/textures/biomeswevegone/allium_oddion_soup.png differ diff --git a/public/textures/biomeswevegone/allium_petal_block.png b/public/textures/biomeswevegone/allium_petal_block.png new file mode 100644 index 00000000..9480824d Binary files /dev/null and b/public/textures/biomeswevegone/allium_petal_block.png differ diff --git a/public/textures/biomeswevegone/aloe_vera.png b/public/textures/biomeswevegone/aloe_vera.png new file mode 100644 index 00000000..60c3370f Binary files /dev/null and b/public/textures/biomeswevegone/aloe_vera.png differ diff --git a/public/textures/biomeswevegone/aloe_vera_juice.png b/public/textures/biomeswevegone/aloe_vera_juice.png new file mode 100644 index 00000000..672184bb Binary files /dev/null and b/public/textures/biomeswevegone/aloe_vera_juice.png differ diff --git a/public/textures/biomeswevegone/alpine_bellflower.png b/public/textures/biomeswevegone/alpine_bellflower.png new file mode 100644 index 00000000..179acc05 Binary files /dev/null and b/public/textures/biomeswevegone/alpine_bellflower.png differ diff --git a/public/textures/biomeswevegone/amaranth.png b/public/textures/biomeswevegone/amaranth.png new file mode 100644 index 00000000..01571c4d Binary files /dev/null and b/public/textures/biomeswevegone/amaranth.png differ diff --git a/public/textures/biomeswevegone/angelica.png b/public/textures/biomeswevegone/angelica.png new file mode 100644 index 00000000..e0c1770a Binary files /dev/null and b/public/textures/biomeswevegone/angelica.png differ diff --git a/public/textures/biomeswevegone/araucaria_leaves.png b/public/textures/biomeswevegone/araucaria_leaves.png new file mode 100644 index 00000000..9d385314 Binary files /dev/null and b/public/textures/biomeswevegone/araucaria_leaves.png differ diff --git a/public/textures/biomeswevegone/araucaria_sapling.png b/public/textures/biomeswevegone/araucaria_sapling.png new file mode 100644 index 00000000..ff7263fb Binary files /dev/null and b/public/textures/biomeswevegone/araucaria_sapling.png differ diff --git a/public/textures/biomeswevegone/aspen_boat.png b/public/textures/biomeswevegone/aspen_boat.png new file mode 100644 index 00000000..9492387c Binary files /dev/null and b/public/textures/biomeswevegone/aspen_boat.png differ diff --git a/public/textures/biomeswevegone/aspen_bookshelf.png b/public/textures/biomeswevegone/aspen_bookshelf.png new file mode 100644 index 00000000..584a765b Binary files /dev/null and b/public/textures/biomeswevegone/aspen_bookshelf.png differ diff --git a/public/textures/biomeswevegone/aspen_button.png b/public/textures/biomeswevegone/aspen_button.png new file mode 100644 index 00000000..18ab6d09 Binary files /dev/null and b/public/textures/biomeswevegone/aspen_button.png differ diff --git a/public/textures/biomeswevegone/aspen_chest_boat.png b/public/textures/biomeswevegone/aspen_chest_boat.png new file mode 100644 index 00000000..b54c4bc9 Binary files /dev/null and b/public/textures/biomeswevegone/aspen_chest_boat.png differ diff --git a/public/textures/biomeswevegone/aspen_crafting_table.png b/public/textures/biomeswevegone/aspen_crafting_table.png new file mode 100644 index 00000000..5ccb7e24 Binary files /dev/null and b/public/textures/biomeswevegone/aspen_crafting_table.png differ diff --git a/public/textures/biomeswevegone/aspen_door.png b/public/textures/biomeswevegone/aspen_door.png new file mode 100644 index 00000000..5e89d5fa Binary files /dev/null and b/public/textures/biomeswevegone/aspen_door.png differ diff --git a/public/textures/biomeswevegone/aspen_fence.png b/public/textures/biomeswevegone/aspen_fence.png new file mode 100644 index 00000000..669e6d04 Binary files /dev/null and b/public/textures/biomeswevegone/aspen_fence.png differ diff --git a/public/textures/biomeswevegone/aspen_fence_gate.png b/public/textures/biomeswevegone/aspen_fence_gate.png new file mode 100644 index 00000000..dee70fc2 Binary files /dev/null and b/public/textures/biomeswevegone/aspen_fence_gate.png differ diff --git a/public/textures/biomeswevegone/aspen_hanging_sign.png b/public/textures/biomeswevegone/aspen_hanging_sign.png new file mode 100644 index 00000000..3251f99c Binary files /dev/null and b/public/textures/biomeswevegone/aspen_hanging_sign.png differ diff --git a/public/textures/biomeswevegone/aspen_leaves.png b/public/textures/biomeswevegone/aspen_leaves.png new file mode 100644 index 00000000..7b362fa0 Binary files /dev/null and b/public/textures/biomeswevegone/aspen_leaves.png differ diff --git a/public/textures/biomeswevegone/aspen_log.png b/public/textures/biomeswevegone/aspen_log.png new file mode 100644 index 00000000..464a2205 Binary files /dev/null and b/public/textures/biomeswevegone/aspen_log.png differ diff --git a/public/textures/biomeswevegone/aspen_planks.png b/public/textures/biomeswevegone/aspen_planks.png new file mode 100644 index 00000000..43b63244 Binary files /dev/null and b/public/textures/biomeswevegone/aspen_planks.png differ diff --git a/public/textures/biomeswevegone/aspen_pressure_plate.png b/public/textures/biomeswevegone/aspen_pressure_plate.png new file mode 100644 index 00000000..fc981af8 Binary files /dev/null and b/public/textures/biomeswevegone/aspen_pressure_plate.png differ diff --git a/public/textures/biomeswevegone/aspen_sapling.png b/public/textures/biomeswevegone/aspen_sapling.png new file mode 100644 index 00000000..192c8847 Binary files /dev/null and b/public/textures/biomeswevegone/aspen_sapling.png differ diff --git a/public/textures/biomeswevegone/aspen_sign.png b/public/textures/biomeswevegone/aspen_sign.png new file mode 100644 index 00000000..7f351dda Binary files /dev/null and b/public/textures/biomeswevegone/aspen_sign.png differ diff --git a/public/textures/biomeswevegone/aspen_slab.png b/public/textures/biomeswevegone/aspen_slab.png new file mode 100644 index 00000000..10dd03b6 Binary files /dev/null and b/public/textures/biomeswevegone/aspen_slab.png differ diff --git a/public/textures/biomeswevegone/aspen_stairs.png b/public/textures/biomeswevegone/aspen_stairs.png new file mode 100644 index 00000000..bcdd9a5b Binary files /dev/null and b/public/textures/biomeswevegone/aspen_stairs.png differ diff --git a/public/textures/biomeswevegone/aspen_trapdoor.png b/public/textures/biomeswevegone/aspen_trapdoor.png new file mode 100644 index 00000000..79611ef0 Binary files /dev/null and b/public/textures/biomeswevegone/aspen_trapdoor.png differ diff --git a/public/textures/biomeswevegone/aspen_wood.png b/public/textures/biomeswevegone/aspen_wood.png new file mode 100644 index 00000000..339f94b5 Binary files /dev/null and b/public/textures/biomeswevegone/aspen_wood.png differ diff --git a/public/textures/biomeswevegone/baobab_boat.png b/public/textures/biomeswevegone/baobab_boat.png new file mode 100644 index 00000000..f53e5859 Binary files /dev/null and b/public/textures/biomeswevegone/baobab_boat.png differ diff --git a/public/textures/biomeswevegone/baobab_bookshelf.png b/public/textures/biomeswevegone/baobab_bookshelf.png new file mode 100644 index 00000000..8f20586f Binary files /dev/null and b/public/textures/biomeswevegone/baobab_bookshelf.png differ diff --git a/public/textures/biomeswevegone/baobab_button.png b/public/textures/biomeswevegone/baobab_button.png new file mode 100644 index 00000000..110f5a14 Binary files /dev/null and b/public/textures/biomeswevegone/baobab_button.png differ diff --git a/public/textures/biomeswevegone/baobab_chest_boat.png b/public/textures/biomeswevegone/baobab_chest_boat.png new file mode 100644 index 00000000..26329d2c Binary files /dev/null and b/public/textures/biomeswevegone/baobab_chest_boat.png differ diff --git a/public/textures/biomeswevegone/baobab_crafting_table.png b/public/textures/biomeswevegone/baobab_crafting_table.png new file mode 100644 index 00000000..3b295ad0 Binary files /dev/null and b/public/textures/biomeswevegone/baobab_crafting_table.png differ diff --git a/public/textures/biomeswevegone/baobab_door.png b/public/textures/biomeswevegone/baobab_door.png new file mode 100644 index 00000000..0e77ade4 Binary files /dev/null and b/public/textures/biomeswevegone/baobab_door.png differ diff --git a/public/textures/biomeswevegone/baobab_fence.png b/public/textures/biomeswevegone/baobab_fence.png new file mode 100644 index 00000000..ee738322 Binary files /dev/null and b/public/textures/biomeswevegone/baobab_fence.png differ diff --git a/public/textures/biomeswevegone/baobab_fence_gate.png b/public/textures/biomeswevegone/baobab_fence_gate.png new file mode 100644 index 00000000..6e6295ff Binary files /dev/null and b/public/textures/biomeswevegone/baobab_fence_gate.png differ diff --git a/public/textures/biomeswevegone/baobab_fruit.png b/public/textures/biomeswevegone/baobab_fruit.png new file mode 100644 index 00000000..79782173 Binary files /dev/null and b/public/textures/biomeswevegone/baobab_fruit.png differ diff --git a/public/textures/biomeswevegone/baobab_hanging_sign.png b/public/textures/biomeswevegone/baobab_hanging_sign.png new file mode 100644 index 00000000..8a11c728 Binary files /dev/null and b/public/textures/biomeswevegone/baobab_hanging_sign.png differ diff --git a/public/textures/biomeswevegone/baobab_leaves.png b/public/textures/biomeswevegone/baobab_leaves.png new file mode 100644 index 00000000..8374ddfd Binary files /dev/null and b/public/textures/biomeswevegone/baobab_leaves.png differ diff --git a/public/textures/biomeswevegone/baobab_log.png b/public/textures/biomeswevegone/baobab_log.png new file mode 100644 index 00000000..8e6c0389 Binary files /dev/null and b/public/textures/biomeswevegone/baobab_log.png differ diff --git a/public/textures/biomeswevegone/baobab_planks.png b/public/textures/biomeswevegone/baobab_planks.png new file mode 100644 index 00000000..222f8df5 Binary files /dev/null and b/public/textures/biomeswevegone/baobab_planks.png differ diff --git a/public/textures/biomeswevegone/baobab_pressure_plate.png b/public/textures/biomeswevegone/baobab_pressure_plate.png new file mode 100644 index 00000000..5d5aa0af Binary files /dev/null and b/public/textures/biomeswevegone/baobab_pressure_plate.png differ diff --git a/public/textures/biomeswevegone/baobab_sapling.png b/public/textures/biomeswevegone/baobab_sapling.png new file mode 100644 index 00000000..33966ec5 Binary files /dev/null and b/public/textures/biomeswevegone/baobab_sapling.png differ diff --git a/public/textures/biomeswevegone/baobab_sign.png b/public/textures/biomeswevegone/baobab_sign.png new file mode 100644 index 00000000..ba8d2860 Binary files /dev/null and b/public/textures/biomeswevegone/baobab_sign.png differ diff --git a/public/textures/biomeswevegone/baobab_slab.png b/public/textures/biomeswevegone/baobab_slab.png new file mode 100644 index 00000000..71cbb0ef Binary files /dev/null and b/public/textures/biomeswevegone/baobab_slab.png differ diff --git a/public/textures/biomeswevegone/baobab_stairs.png b/public/textures/biomeswevegone/baobab_stairs.png new file mode 100644 index 00000000..1a660af4 Binary files /dev/null and b/public/textures/biomeswevegone/baobab_stairs.png differ diff --git a/public/textures/biomeswevegone/baobab_trapdoor.png b/public/textures/biomeswevegone/baobab_trapdoor.png new file mode 100644 index 00000000..afeae999 Binary files /dev/null and b/public/textures/biomeswevegone/baobab_trapdoor.png differ diff --git a/public/textures/biomeswevegone/baobab_wood.png b/public/textures/biomeswevegone/baobab_wood.png new file mode 100644 index 00000000..943b2a5a Binary files /dev/null and b/public/textures/biomeswevegone/baobab_wood.png differ diff --git a/public/textures/biomeswevegone/barrel_cactus.png b/public/textures/biomeswevegone/barrel_cactus.png new file mode 100644 index 00000000..3aa42dca Binary files /dev/null and b/public/textures/biomeswevegone/barrel_cactus.png differ diff --git a/public/textures/biomeswevegone/beach_grass.png b/public/textures/biomeswevegone/beach_grass.png new file mode 100644 index 00000000..8116e07c Binary files /dev/null and b/public/textures/biomeswevegone/beach_grass.png differ diff --git a/public/textures/biomeswevegone/begonia.png b/public/textures/biomeswevegone/begonia.png new file mode 100644 index 00000000..2a59e260 Binary files /dev/null and b/public/textures/biomeswevegone/begonia.png differ diff --git a/public/textures/biomeswevegone/bistort.png b/public/textures/biomeswevegone/bistort.png new file mode 100644 index 00000000..6506a8fc Binary files /dev/null and b/public/textures/biomeswevegone/bistort.png differ diff --git a/public/textures/biomeswevegone/black_ice.png b/public/textures/biomeswevegone/black_ice.png new file mode 100644 index 00000000..590ae246 Binary files /dev/null and b/public/textures/biomeswevegone/black_ice.png differ diff --git a/public/textures/biomeswevegone/black_rose.png b/public/textures/biomeswevegone/black_rose.png new file mode 100644 index 00000000..183e3521 Binary files /dev/null and b/public/textures/biomeswevegone/black_rose.png differ diff --git a/public/textures/biomeswevegone/black_sand.png b/public/textures/biomeswevegone/black_sand.png new file mode 100644 index 00000000..9e8627d0 Binary files /dev/null and b/public/textures/biomeswevegone/black_sand.png differ diff --git a/public/textures/biomeswevegone/black_sandstone.png b/public/textures/biomeswevegone/black_sandstone.png new file mode 100644 index 00000000..e069d3cb Binary files /dev/null and b/public/textures/biomeswevegone/black_sandstone.png differ diff --git a/public/textures/biomeswevegone/black_sandstone_slab.png b/public/textures/biomeswevegone/black_sandstone_slab.png new file mode 100644 index 00000000..7bf0e67f Binary files /dev/null and b/public/textures/biomeswevegone/black_sandstone_slab.png differ diff --git a/public/textures/biomeswevegone/black_sandstone_stairs.png b/public/textures/biomeswevegone/black_sandstone_stairs.png new file mode 100644 index 00000000..c9392b03 Binary files /dev/null and b/public/textures/biomeswevegone/black_sandstone_stairs.png differ diff --git a/public/textures/biomeswevegone/black_sandstone_wall.png b/public/textures/biomeswevegone/black_sandstone_wall.png new file mode 100644 index 00000000..a3b47b51 Binary files /dev/null and b/public/textures/biomeswevegone/black_sandstone_wall.png differ diff --git a/public/textures/biomeswevegone/blooming_oddion.png b/public/textures/biomeswevegone/blooming_oddion.png new file mode 100644 index 00000000..ed17245f Binary files /dev/null and b/public/textures/biomeswevegone/blooming_oddion.png differ diff --git a/public/textures/biomeswevegone/blooming_witch_hazel_leaves.png b/public/textures/biomeswevegone/blooming_witch_hazel_leaves.png new file mode 100644 index 00000000..e3c3d1c3 Binary files /dev/null and b/public/textures/biomeswevegone/blooming_witch_hazel_leaves.png differ diff --git a/public/textures/biomeswevegone/blue_enchanted_boat.png b/public/textures/biomeswevegone/blue_enchanted_boat.png new file mode 100644 index 00000000..85315e7b Binary files /dev/null and b/public/textures/biomeswevegone/blue_enchanted_boat.png differ diff --git a/public/textures/biomeswevegone/blue_enchanted_bookshelf.png b/public/textures/biomeswevegone/blue_enchanted_bookshelf.png new file mode 100644 index 00000000..83d5db42 Binary files /dev/null and b/public/textures/biomeswevegone/blue_enchanted_bookshelf.png differ diff --git a/public/textures/biomeswevegone/blue_enchanted_button.png b/public/textures/biomeswevegone/blue_enchanted_button.png new file mode 100644 index 00000000..d3f7e674 Binary files /dev/null and b/public/textures/biomeswevegone/blue_enchanted_button.png differ diff --git a/public/textures/biomeswevegone/blue_enchanted_chest_boat.png b/public/textures/biomeswevegone/blue_enchanted_chest_boat.png new file mode 100644 index 00000000..68ac6eb3 Binary files /dev/null and b/public/textures/biomeswevegone/blue_enchanted_chest_boat.png differ diff --git a/public/textures/biomeswevegone/blue_enchanted_crafting_table.png b/public/textures/biomeswevegone/blue_enchanted_crafting_table.png new file mode 100644 index 00000000..17c8a722 Binary files /dev/null and b/public/textures/biomeswevegone/blue_enchanted_crafting_table.png differ diff --git a/public/textures/biomeswevegone/blue_enchanted_door.png b/public/textures/biomeswevegone/blue_enchanted_door.png new file mode 100644 index 00000000..829a030a Binary files /dev/null and b/public/textures/biomeswevegone/blue_enchanted_door.png differ diff --git a/public/textures/biomeswevegone/blue_enchanted_fence.png b/public/textures/biomeswevegone/blue_enchanted_fence.png new file mode 100644 index 00000000..d7829454 Binary files /dev/null and b/public/textures/biomeswevegone/blue_enchanted_fence.png differ diff --git a/public/textures/biomeswevegone/blue_enchanted_fence_gate.png b/public/textures/biomeswevegone/blue_enchanted_fence_gate.png new file mode 100644 index 00000000..44850e0c Binary files /dev/null and b/public/textures/biomeswevegone/blue_enchanted_fence_gate.png differ diff --git a/public/textures/biomeswevegone/blue_enchanted_hanging_sign.png b/public/textures/biomeswevegone/blue_enchanted_hanging_sign.png new file mode 100644 index 00000000..4d300667 Binary files /dev/null and b/public/textures/biomeswevegone/blue_enchanted_hanging_sign.png differ diff --git a/public/textures/biomeswevegone/blue_enchanted_leaves.png b/public/textures/biomeswevegone/blue_enchanted_leaves.png new file mode 100644 index 00000000..b150d46e Binary files /dev/null and b/public/textures/biomeswevegone/blue_enchanted_leaves.png differ diff --git a/public/textures/biomeswevegone/blue_enchanted_log.png b/public/textures/biomeswevegone/blue_enchanted_log.png new file mode 100644 index 00000000..86b8c33b Binary files /dev/null and b/public/textures/biomeswevegone/blue_enchanted_log.png differ diff --git a/public/textures/biomeswevegone/blue_enchanted_planks.png b/public/textures/biomeswevegone/blue_enchanted_planks.png new file mode 100644 index 00000000..d9455985 Binary files /dev/null and b/public/textures/biomeswevegone/blue_enchanted_planks.png differ diff --git a/public/textures/biomeswevegone/blue_enchanted_pressure_plate.png b/public/textures/biomeswevegone/blue_enchanted_pressure_plate.png new file mode 100644 index 00000000..9a7b42af Binary files /dev/null and b/public/textures/biomeswevegone/blue_enchanted_pressure_plate.png differ diff --git a/public/textures/biomeswevegone/blue_enchanted_sapling.png b/public/textures/biomeswevegone/blue_enchanted_sapling.png new file mode 100644 index 00000000..c66a2aa0 Binary files /dev/null and b/public/textures/biomeswevegone/blue_enchanted_sapling.png differ diff --git a/public/textures/biomeswevegone/blue_enchanted_sign.png b/public/textures/biomeswevegone/blue_enchanted_sign.png new file mode 100644 index 00000000..1c4a4b10 Binary files /dev/null and b/public/textures/biomeswevegone/blue_enchanted_sign.png differ diff --git a/public/textures/biomeswevegone/blue_enchanted_slab.png b/public/textures/biomeswevegone/blue_enchanted_slab.png new file mode 100644 index 00000000..a0229fba Binary files /dev/null and b/public/textures/biomeswevegone/blue_enchanted_slab.png differ diff --git a/public/textures/biomeswevegone/blue_enchanted_stairs.png b/public/textures/biomeswevegone/blue_enchanted_stairs.png new file mode 100644 index 00000000..b79089c8 Binary files /dev/null and b/public/textures/biomeswevegone/blue_enchanted_stairs.png differ diff --git a/public/textures/biomeswevegone/blue_enchanted_trapdoor.png b/public/textures/biomeswevegone/blue_enchanted_trapdoor.png new file mode 100644 index 00000000..9533b94a Binary files /dev/null and b/public/textures/biomeswevegone/blue_enchanted_trapdoor.png differ diff --git a/public/textures/biomeswevegone/blue_enchanted_wood.png b/public/textures/biomeswevegone/blue_enchanted_wood.png new file mode 100644 index 00000000..14e1c23a Binary files /dev/null and b/public/textures/biomeswevegone/blue_enchanted_wood.png differ diff --git a/public/textures/biomeswevegone/blue_glow_bottle.png b/public/textures/biomeswevegone/blue_glow_bottle.png new file mode 100644 index 00000000..2f325f9d Binary files /dev/null and b/public/textures/biomeswevegone/blue_glow_bottle.png differ diff --git a/public/textures/biomeswevegone/blue_glowcane_powder.png b/public/textures/biomeswevegone/blue_glowcane_powder.png new file mode 100644 index 00000000..35d60ea0 Binary files /dev/null and b/public/textures/biomeswevegone/blue_glowcane_powder.png differ diff --git a/public/textures/biomeswevegone/blue_glowcane_shoot.png b/public/textures/biomeswevegone/blue_glowcane_shoot.png new file mode 100644 index 00000000..f4448ea2 Binary files /dev/null and b/public/textures/biomeswevegone/blue_glowcane_shoot.png differ diff --git a/public/textures/biomeswevegone/blue_rose_bush.png b/public/textures/biomeswevegone/blue_rose_bush.png new file mode 100644 index 00000000..69f9fe4d Binary files /dev/null and b/public/textures/biomeswevegone/blue_rose_bush.png differ diff --git a/public/textures/biomeswevegone/blue_sage.png b/public/textures/biomeswevegone/blue_sage.png new file mode 100644 index 00000000..f42bc218 Binary files /dev/null and b/public/textures/biomeswevegone/blue_sage.png differ diff --git a/public/textures/biomeswevegone/blue_sand.png b/public/textures/biomeswevegone/blue_sand.png new file mode 100644 index 00000000..3877ec6a Binary files /dev/null and b/public/textures/biomeswevegone/blue_sand.png differ diff --git a/public/textures/biomeswevegone/blue_sandstone.png b/public/textures/biomeswevegone/blue_sandstone.png new file mode 100644 index 00000000..1f42fc9f Binary files /dev/null and b/public/textures/biomeswevegone/blue_sandstone.png differ diff --git a/public/textures/biomeswevegone/blue_sandstone_slab.png b/public/textures/biomeswevegone/blue_sandstone_slab.png new file mode 100644 index 00000000..44ff6a4c Binary files /dev/null and b/public/textures/biomeswevegone/blue_sandstone_slab.png differ diff --git a/public/textures/biomeswevegone/blue_sandstone_stairs.png b/public/textures/biomeswevegone/blue_sandstone_stairs.png new file mode 100644 index 00000000..63681dbd Binary files /dev/null and b/public/textures/biomeswevegone/blue_sandstone_stairs.png differ diff --git a/public/textures/biomeswevegone/blue_sandstone_wall.png b/public/textures/biomeswevegone/blue_sandstone_wall.png new file mode 100644 index 00000000..fbee199a Binary files /dev/null and b/public/textures/biomeswevegone/blue_sandstone_wall.png differ diff --git a/public/textures/biomeswevegone/blue_spruce_leaves.png b/public/textures/biomeswevegone/blue_spruce_leaves.png new file mode 100644 index 00000000..956ad216 Binary files /dev/null and b/public/textures/biomeswevegone/blue_spruce_leaves.png differ diff --git a/public/textures/biomeswevegone/blue_spruce_sapling.png b/public/textures/biomeswevegone/blue_spruce_sapling.png new file mode 100644 index 00000000..1c2bc79b Binary files /dev/null and b/public/textures/biomeswevegone/blue_spruce_sapling.png differ diff --git a/public/textures/biomeswevegone/blueberries.png b/public/textures/biomeswevegone/blueberries.png new file mode 100644 index 00000000..2c380f94 Binary files /dev/null and b/public/textures/biomeswevegone/blueberries.png differ diff --git a/public/textures/biomeswevegone/blueberry_pie.png b/public/textures/biomeswevegone/blueberry_pie.png new file mode 100644 index 00000000..ba1ace4f Binary files /dev/null and b/public/textures/biomeswevegone/blueberry_pie.png differ diff --git a/public/textures/biomeswevegone/borealis_ice.png b/public/textures/biomeswevegone/borealis_ice.png new file mode 100644 index 00000000..fece0c8c Binary files /dev/null and b/public/textures/biomeswevegone/borealis_ice.png differ diff --git a/public/textures/biomeswevegone/brown_birch_leaves.png b/public/textures/biomeswevegone/brown_birch_leaves.png new file mode 100644 index 00000000..a5d340ed Binary files /dev/null and b/public/textures/biomeswevegone/brown_birch_leaves.png differ diff --git a/public/textures/biomeswevegone/brown_birch_sapling.png b/public/textures/biomeswevegone/brown_birch_sapling.png new file mode 100644 index 00000000..da0a1b89 Binary files /dev/null and b/public/textures/biomeswevegone/brown_birch_sapling.png differ diff --git a/public/textures/biomeswevegone/brown_mushroom_stem.png b/public/textures/biomeswevegone/brown_mushroom_stem.png new file mode 100644 index 00000000..bf227f7c Binary files /dev/null and b/public/textures/biomeswevegone/brown_mushroom_stem.png differ diff --git a/public/textures/biomeswevegone/brown_oak_leaves.png b/public/textures/biomeswevegone/brown_oak_leaves.png new file mode 100644 index 00000000..4ef17a1f Binary files /dev/null and b/public/textures/biomeswevegone/brown_oak_leaves.png differ diff --git a/public/textures/biomeswevegone/brown_oak_sapling.png b/public/textures/biomeswevegone/brown_oak_sapling.png new file mode 100644 index 00000000..4caf4a01 Binary files /dev/null and b/public/textures/biomeswevegone/brown_oak_sapling.png differ diff --git a/public/textures/biomeswevegone/brown_zelkova_leaves.png b/public/textures/biomeswevegone/brown_zelkova_leaves.png new file mode 100644 index 00000000..14ffa7a5 Binary files /dev/null and b/public/textures/biomeswevegone/brown_zelkova_leaves.png differ diff --git a/public/textures/biomeswevegone/brown_zelkova_sapling.png b/public/textures/biomeswevegone/brown_zelkova_sapling.png new file mode 100644 index 00000000..3e135ae0 Binary files /dev/null and b/public/textures/biomeswevegone/brown_zelkova_sapling.png differ diff --git a/public/textures/biomeswevegone/california_poppy.png b/public/textures/biomeswevegone/california_poppy.png new file mode 100644 index 00000000..ca645294 Binary files /dev/null and b/public/textures/biomeswevegone/california_poppy.png differ diff --git a/public/textures/biomeswevegone/carved_barrel_cactus.png b/public/textures/biomeswevegone/carved_barrel_cactus.png new file mode 100644 index 00000000..7f035e99 Binary files /dev/null and b/public/textures/biomeswevegone/carved_barrel_cactus.png differ diff --git a/public/textures/biomeswevegone/carved_pale_pumpkin.png b/public/textures/biomeswevegone/carved_pale_pumpkin.png new file mode 100644 index 00000000..c835db59 Binary files /dev/null and b/public/textures/biomeswevegone/carved_pale_pumpkin.png differ diff --git a/public/textures/biomeswevegone/cattail_sprout.png b/public/textures/biomeswevegone/cattail_sprout.png new file mode 100644 index 00000000..87b3398b Binary files /dev/null and b/public/textures/biomeswevegone/cattail_sprout.png differ diff --git a/public/textures/biomeswevegone/cattail_thatch.png b/public/textures/biomeswevegone/cattail_thatch.png new file mode 100644 index 00000000..1a9f064a Binary files /dev/null and b/public/textures/biomeswevegone/cattail_thatch.png differ diff --git a/public/textures/biomeswevegone/cattail_thatch_carpet.png b/public/textures/biomeswevegone/cattail_thatch_carpet.png new file mode 100644 index 00000000..97bde147 Binary files /dev/null and b/public/textures/biomeswevegone/cattail_thatch_carpet.png differ diff --git a/public/textures/biomeswevegone/cattail_thatch_slab.png b/public/textures/biomeswevegone/cattail_thatch_slab.png new file mode 100644 index 00000000..b0ab1d60 Binary files /dev/null and b/public/textures/biomeswevegone/cattail_thatch_slab.png differ diff --git a/public/textures/biomeswevegone/cattail_thatch_stairs.png b/public/textures/biomeswevegone/cattail_thatch_stairs.png new file mode 100644 index 00000000..5c736c86 Binary files /dev/null and b/public/textures/biomeswevegone/cattail_thatch_stairs.png differ diff --git a/public/textures/biomeswevegone/chiseled_black_sandstone.png b/public/textures/biomeswevegone/chiseled_black_sandstone.png new file mode 100644 index 00000000..8f253c6f Binary files /dev/null and b/public/textures/biomeswevegone/chiseled_black_sandstone.png differ diff --git a/public/textures/biomeswevegone/chiseled_blue_sandstone.png b/public/textures/biomeswevegone/chiseled_blue_sandstone.png new file mode 100644 index 00000000..cb925e11 Binary files /dev/null and b/public/textures/biomeswevegone/chiseled_blue_sandstone.png differ diff --git a/public/textures/biomeswevegone/chiseled_pink_sandstone.png b/public/textures/biomeswevegone/chiseled_pink_sandstone.png new file mode 100644 index 00000000..bbd77bcf Binary files /dev/null and b/public/textures/biomeswevegone/chiseled_pink_sandstone.png differ diff --git a/public/textures/biomeswevegone/chiseled_purple_sandstone.png b/public/textures/biomeswevegone/chiseled_purple_sandstone.png new file mode 100644 index 00000000..46adf91a Binary files /dev/null and b/public/textures/biomeswevegone/chiseled_purple_sandstone.png differ diff --git a/public/textures/biomeswevegone/chiseled_red_rock_brick_slab.png b/public/textures/biomeswevegone/chiseled_red_rock_brick_slab.png new file mode 100644 index 00000000..abf53389 Binary files /dev/null and b/public/textures/biomeswevegone/chiseled_red_rock_brick_slab.png differ diff --git a/public/textures/biomeswevegone/chiseled_red_rock_brick_stairs.png b/public/textures/biomeswevegone/chiseled_red_rock_brick_stairs.png new file mode 100644 index 00000000..f0353682 Binary files /dev/null and b/public/textures/biomeswevegone/chiseled_red_rock_brick_stairs.png differ diff --git a/public/textures/biomeswevegone/chiseled_red_rock_brick_wall.png b/public/textures/biomeswevegone/chiseled_red_rock_brick_wall.png new file mode 100644 index 00000000..d7418ddc Binary files /dev/null and b/public/textures/biomeswevegone/chiseled_red_rock_brick_wall.png differ diff --git a/public/textures/biomeswevegone/chiseled_red_rock_bricks.png b/public/textures/biomeswevegone/chiseled_red_rock_bricks.png new file mode 100644 index 00000000..14dec263 Binary files /dev/null and b/public/textures/biomeswevegone/chiseled_red_rock_bricks.png differ diff --git a/public/textures/biomeswevegone/chiseled_white_sandstone.png b/public/textures/biomeswevegone/chiseled_white_sandstone.png new file mode 100644 index 00000000..de1bbb98 Binary files /dev/null and b/public/textures/biomeswevegone/chiseled_white_sandstone.png differ diff --git a/public/textures/biomeswevegone/chiseled_windswept_sandstone.png b/public/textures/biomeswevegone/chiseled_windswept_sandstone.png new file mode 100644 index 00000000..720f5708 Binary files /dev/null and b/public/textures/biomeswevegone/chiseled_windswept_sandstone.png differ diff --git a/public/textures/biomeswevegone/cika_boat.png b/public/textures/biomeswevegone/cika_boat.png new file mode 100644 index 00000000..c4f4b92c Binary files /dev/null and b/public/textures/biomeswevegone/cika_boat.png differ diff --git a/public/textures/biomeswevegone/cika_bookshelf.png b/public/textures/biomeswevegone/cika_bookshelf.png new file mode 100644 index 00000000..9ee4f142 Binary files /dev/null and b/public/textures/biomeswevegone/cika_bookshelf.png differ diff --git a/public/textures/biomeswevegone/cika_button.png b/public/textures/biomeswevegone/cika_button.png new file mode 100644 index 00000000..f7785a53 Binary files /dev/null and b/public/textures/biomeswevegone/cika_button.png differ diff --git a/public/textures/biomeswevegone/cika_chest_boat.png b/public/textures/biomeswevegone/cika_chest_boat.png new file mode 100644 index 00000000..2c2917a9 Binary files /dev/null and b/public/textures/biomeswevegone/cika_chest_boat.png differ diff --git a/public/textures/biomeswevegone/cika_crafting_table.png b/public/textures/biomeswevegone/cika_crafting_table.png new file mode 100644 index 00000000..05eef4df Binary files /dev/null and b/public/textures/biomeswevegone/cika_crafting_table.png differ diff --git a/public/textures/biomeswevegone/cika_door.png b/public/textures/biomeswevegone/cika_door.png new file mode 100644 index 00000000..28889069 Binary files /dev/null and b/public/textures/biomeswevegone/cika_door.png differ diff --git a/public/textures/biomeswevegone/cika_fence.png b/public/textures/biomeswevegone/cika_fence.png new file mode 100644 index 00000000..108e7728 Binary files /dev/null and b/public/textures/biomeswevegone/cika_fence.png differ diff --git a/public/textures/biomeswevegone/cika_fence_gate.png b/public/textures/biomeswevegone/cika_fence_gate.png new file mode 100644 index 00000000..5f43fde5 Binary files /dev/null and b/public/textures/biomeswevegone/cika_fence_gate.png differ diff --git a/public/textures/biomeswevegone/cika_hanging_sign.png b/public/textures/biomeswevegone/cika_hanging_sign.png new file mode 100644 index 00000000..4aa7b8af Binary files /dev/null and b/public/textures/biomeswevegone/cika_hanging_sign.png differ diff --git a/public/textures/biomeswevegone/cika_leaves.png b/public/textures/biomeswevegone/cika_leaves.png new file mode 100644 index 00000000..fd469efb Binary files /dev/null and b/public/textures/biomeswevegone/cika_leaves.png differ diff --git a/public/textures/biomeswevegone/cika_log.png b/public/textures/biomeswevegone/cika_log.png new file mode 100644 index 00000000..0f162b13 Binary files /dev/null and b/public/textures/biomeswevegone/cika_log.png differ diff --git a/public/textures/biomeswevegone/cika_planks.png b/public/textures/biomeswevegone/cika_planks.png new file mode 100644 index 00000000..e709e90c Binary files /dev/null and b/public/textures/biomeswevegone/cika_planks.png differ diff --git a/public/textures/biomeswevegone/cika_pressure_plate.png b/public/textures/biomeswevegone/cika_pressure_plate.png new file mode 100644 index 00000000..454b5277 Binary files /dev/null and b/public/textures/biomeswevegone/cika_pressure_plate.png differ diff --git a/public/textures/biomeswevegone/cika_sapling.png b/public/textures/biomeswevegone/cika_sapling.png new file mode 100644 index 00000000..81eaa691 Binary files /dev/null and b/public/textures/biomeswevegone/cika_sapling.png differ diff --git a/public/textures/biomeswevegone/cika_sign.png b/public/textures/biomeswevegone/cika_sign.png new file mode 100644 index 00000000..cfb94a58 Binary files /dev/null and b/public/textures/biomeswevegone/cika_sign.png differ diff --git a/public/textures/biomeswevegone/cika_slab.png b/public/textures/biomeswevegone/cika_slab.png new file mode 100644 index 00000000..99ffb2c2 Binary files /dev/null and b/public/textures/biomeswevegone/cika_slab.png differ diff --git a/public/textures/biomeswevegone/cika_stairs.png b/public/textures/biomeswevegone/cika_stairs.png new file mode 100644 index 00000000..ac584d06 Binary files /dev/null and b/public/textures/biomeswevegone/cika_stairs.png differ diff --git a/public/textures/biomeswevegone/cika_trapdoor.png b/public/textures/biomeswevegone/cika_trapdoor.png new file mode 100644 index 00000000..e5c0f4ff Binary files /dev/null and b/public/textures/biomeswevegone/cika_trapdoor.png differ diff --git a/public/textures/biomeswevegone/cika_wood.png b/public/textures/biomeswevegone/cika_wood.png new file mode 100644 index 00000000..d1b9b896 Binary files /dev/null and b/public/textures/biomeswevegone/cika_wood.png differ diff --git a/public/textures/biomeswevegone/clover_patch.png b/public/textures/biomeswevegone/clover_patch.png new file mode 100644 index 00000000..a715ba69 Binary files /dev/null and b/public/textures/biomeswevegone/clover_patch.png differ diff --git a/public/textures/biomeswevegone/cooked_oddion_bulb.png b/public/textures/biomeswevegone/cooked_oddion_bulb.png new file mode 100644 index 00000000..bfd2b76b Binary files /dev/null and b/public/textures/biomeswevegone/cooked_oddion_bulb.png differ diff --git a/public/textures/biomeswevegone/cooked_white_puffball_cap.png b/public/textures/biomeswevegone/cooked_white_puffball_cap.png new file mode 100644 index 00000000..900c97a9 Binary files /dev/null and b/public/textures/biomeswevegone/cooked_white_puffball_cap.png differ diff --git a/public/textures/biomeswevegone/cooked_yucca_fruit.png b/public/textures/biomeswevegone/cooked_yucca_fruit.png new file mode 100644 index 00000000..171457c3 Binary files /dev/null and b/public/textures/biomeswevegone/cooked_yucca_fruit.png differ diff --git a/public/textures/biomeswevegone/cracked_red_rock_brick_slab.png b/public/textures/biomeswevegone/cracked_red_rock_brick_slab.png new file mode 100644 index 00000000..7ac1290f Binary files /dev/null and b/public/textures/biomeswevegone/cracked_red_rock_brick_slab.png differ diff --git a/public/textures/biomeswevegone/cracked_red_rock_brick_stairs.png b/public/textures/biomeswevegone/cracked_red_rock_brick_stairs.png new file mode 100644 index 00000000..3ca8e0fc Binary files /dev/null and b/public/textures/biomeswevegone/cracked_red_rock_brick_stairs.png differ diff --git a/public/textures/biomeswevegone/cracked_red_rock_brick_wall.png b/public/textures/biomeswevegone/cracked_red_rock_brick_wall.png new file mode 100644 index 00000000..503fe56d Binary files /dev/null and b/public/textures/biomeswevegone/cracked_red_rock_brick_wall.png differ diff --git a/public/textures/biomeswevegone/cracked_red_rock_bricks.png b/public/textures/biomeswevegone/cracked_red_rock_bricks.png new file mode 100644 index 00000000..3be48b68 Binary files /dev/null and b/public/textures/biomeswevegone/cracked_red_rock_bricks.png differ diff --git a/public/textures/biomeswevegone/cracked_red_sand.png b/public/textures/biomeswevegone/cracked_red_sand.png new file mode 100644 index 00000000..e21b51cb Binary files /dev/null and b/public/textures/biomeswevegone/cracked_red_sand.png differ diff --git a/public/textures/biomeswevegone/cracked_sand.png b/public/textures/biomeswevegone/cracked_sand.png new file mode 100644 index 00000000..7886785a Binary files /dev/null and b/public/textures/biomeswevegone/cracked_sand.png differ diff --git a/public/textures/biomeswevegone/crocus.png b/public/textures/biomeswevegone/crocus.png new file mode 100644 index 00000000..0a87a5ff Binary files /dev/null and b/public/textures/biomeswevegone/crocus.png differ diff --git a/public/textures/biomeswevegone/cut_black_sandstone.png b/public/textures/biomeswevegone/cut_black_sandstone.png new file mode 100644 index 00000000..484bab1e Binary files /dev/null and b/public/textures/biomeswevegone/cut_black_sandstone.png differ diff --git a/public/textures/biomeswevegone/cut_black_sandstone_slab.png b/public/textures/biomeswevegone/cut_black_sandstone_slab.png new file mode 100644 index 00000000..369b2bbe Binary files /dev/null and b/public/textures/biomeswevegone/cut_black_sandstone_slab.png differ diff --git a/public/textures/biomeswevegone/cut_blue_sandstone.png b/public/textures/biomeswevegone/cut_blue_sandstone.png new file mode 100644 index 00000000..cf70b670 Binary files /dev/null and b/public/textures/biomeswevegone/cut_blue_sandstone.png differ diff --git a/public/textures/biomeswevegone/cut_blue_sandstone_slab.png b/public/textures/biomeswevegone/cut_blue_sandstone_slab.png new file mode 100644 index 00000000..7173fc1b Binary files /dev/null and b/public/textures/biomeswevegone/cut_blue_sandstone_slab.png differ diff --git a/public/textures/biomeswevegone/cut_pink_sandstone.png b/public/textures/biomeswevegone/cut_pink_sandstone.png new file mode 100644 index 00000000..e654d368 Binary files /dev/null and b/public/textures/biomeswevegone/cut_pink_sandstone.png differ diff --git a/public/textures/biomeswevegone/cut_pink_sandstone_slab.png b/public/textures/biomeswevegone/cut_pink_sandstone_slab.png new file mode 100644 index 00000000..6d2b75f9 Binary files /dev/null and b/public/textures/biomeswevegone/cut_pink_sandstone_slab.png differ diff --git a/public/textures/biomeswevegone/cut_purple_sandstone.png b/public/textures/biomeswevegone/cut_purple_sandstone.png new file mode 100644 index 00000000..93b12e4d Binary files /dev/null and b/public/textures/biomeswevegone/cut_purple_sandstone.png differ diff --git a/public/textures/biomeswevegone/cut_purple_sandstone_slab.png b/public/textures/biomeswevegone/cut_purple_sandstone_slab.png new file mode 100644 index 00000000..688e1a02 Binary files /dev/null and b/public/textures/biomeswevegone/cut_purple_sandstone_slab.png differ diff --git a/public/textures/biomeswevegone/cut_white_sandstone.png b/public/textures/biomeswevegone/cut_white_sandstone.png new file mode 100644 index 00000000..56349634 Binary files /dev/null and b/public/textures/biomeswevegone/cut_white_sandstone.png differ diff --git a/public/textures/biomeswevegone/cut_white_sandstone_slab.png b/public/textures/biomeswevegone/cut_white_sandstone_slab.png new file mode 100644 index 00000000..22ee6226 Binary files /dev/null and b/public/textures/biomeswevegone/cut_white_sandstone_slab.png differ diff --git a/public/textures/biomeswevegone/cut_windswept_sandstone.png b/public/textures/biomeswevegone/cut_windswept_sandstone.png new file mode 100644 index 00000000..ef3429b9 Binary files /dev/null and b/public/textures/biomeswevegone/cut_windswept_sandstone.png differ diff --git a/public/textures/biomeswevegone/cut_windswept_sandstone_slab.png b/public/textures/biomeswevegone/cut_windswept_sandstone_slab.png new file mode 100644 index 00000000..4b9f06ee Binary files /dev/null and b/public/textures/biomeswevegone/cut_windswept_sandstone_slab.png differ diff --git a/public/textures/biomeswevegone/cyan_amaranth.png b/public/textures/biomeswevegone/cyan_amaranth.png new file mode 100644 index 00000000..a971f99e Binary files /dev/null and b/public/textures/biomeswevegone/cyan_amaranth.png differ diff --git a/public/textures/biomeswevegone/cyan_pitcher_plant.png b/public/textures/biomeswevegone/cyan_pitcher_plant.png new file mode 100644 index 00000000..3c7b66de Binary files /dev/null and b/public/textures/biomeswevegone/cyan_pitcher_plant.png differ diff --git a/public/textures/biomeswevegone/cyan_rose.png b/public/textures/biomeswevegone/cyan_rose.png new file mode 100644 index 00000000..7839fa93 Binary files /dev/null and b/public/textures/biomeswevegone/cyan_rose.png differ diff --git a/public/textures/biomeswevegone/cyan_tulip.png b/public/textures/biomeswevegone/cyan_tulip.png new file mode 100644 index 00000000..0147affa Binary files /dev/null and b/public/textures/biomeswevegone/cyan_tulip.png differ diff --git a/public/textures/biomeswevegone/cypress_boat.png b/public/textures/biomeswevegone/cypress_boat.png new file mode 100644 index 00000000..42760356 Binary files /dev/null and b/public/textures/biomeswevegone/cypress_boat.png differ diff --git a/public/textures/biomeswevegone/cypress_bookshelf.png b/public/textures/biomeswevegone/cypress_bookshelf.png new file mode 100644 index 00000000..e69b704b Binary files /dev/null and b/public/textures/biomeswevegone/cypress_bookshelf.png differ diff --git a/public/textures/biomeswevegone/cypress_button.png b/public/textures/biomeswevegone/cypress_button.png new file mode 100644 index 00000000..8aa3b20a Binary files /dev/null and b/public/textures/biomeswevegone/cypress_button.png differ diff --git a/public/textures/biomeswevegone/cypress_chest_boat.png b/public/textures/biomeswevegone/cypress_chest_boat.png new file mode 100644 index 00000000..aca9c512 Binary files /dev/null and b/public/textures/biomeswevegone/cypress_chest_boat.png differ diff --git a/public/textures/biomeswevegone/cypress_crafting_table.png b/public/textures/biomeswevegone/cypress_crafting_table.png new file mode 100644 index 00000000..787c99c7 Binary files /dev/null and b/public/textures/biomeswevegone/cypress_crafting_table.png differ diff --git a/public/textures/biomeswevegone/cypress_door.png b/public/textures/biomeswevegone/cypress_door.png new file mode 100644 index 00000000..3006b542 Binary files /dev/null and b/public/textures/biomeswevegone/cypress_door.png differ diff --git a/public/textures/biomeswevegone/cypress_fence.png b/public/textures/biomeswevegone/cypress_fence.png new file mode 100644 index 00000000..4388c368 Binary files /dev/null and b/public/textures/biomeswevegone/cypress_fence.png differ diff --git a/public/textures/biomeswevegone/cypress_fence_gate.png b/public/textures/biomeswevegone/cypress_fence_gate.png new file mode 100644 index 00000000..b48f7f00 Binary files /dev/null and b/public/textures/biomeswevegone/cypress_fence_gate.png differ diff --git a/public/textures/biomeswevegone/cypress_hanging_sign.png b/public/textures/biomeswevegone/cypress_hanging_sign.png new file mode 100644 index 00000000..24382e2f Binary files /dev/null and b/public/textures/biomeswevegone/cypress_hanging_sign.png differ diff --git a/public/textures/biomeswevegone/cypress_leaves.png b/public/textures/biomeswevegone/cypress_leaves.png new file mode 100644 index 00000000..a8d9089b Binary files /dev/null and b/public/textures/biomeswevegone/cypress_leaves.png differ diff --git a/public/textures/biomeswevegone/cypress_log.png b/public/textures/biomeswevegone/cypress_log.png new file mode 100644 index 00000000..94bd49cb Binary files /dev/null and b/public/textures/biomeswevegone/cypress_log.png differ diff --git a/public/textures/biomeswevegone/cypress_planks.png b/public/textures/biomeswevegone/cypress_planks.png new file mode 100644 index 00000000..faf2dd43 Binary files /dev/null and b/public/textures/biomeswevegone/cypress_planks.png differ diff --git a/public/textures/biomeswevegone/cypress_pressure_plate.png b/public/textures/biomeswevegone/cypress_pressure_plate.png new file mode 100644 index 00000000..ba6dc0d5 Binary files /dev/null and b/public/textures/biomeswevegone/cypress_pressure_plate.png differ diff --git a/public/textures/biomeswevegone/cypress_sapling.png b/public/textures/biomeswevegone/cypress_sapling.png new file mode 100644 index 00000000..d75e9ab9 Binary files /dev/null and b/public/textures/biomeswevegone/cypress_sapling.png differ diff --git a/public/textures/biomeswevegone/cypress_sign.png b/public/textures/biomeswevegone/cypress_sign.png new file mode 100644 index 00000000..f4c66ce6 Binary files /dev/null and b/public/textures/biomeswevegone/cypress_sign.png differ diff --git a/public/textures/biomeswevegone/cypress_slab.png b/public/textures/biomeswevegone/cypress_slab.png new file mode 100644 index 00000000..0f657f18 Binary files /dev/null and b/public/textures/biomeswevegone/cypress_slab.png differ diff --git a/public/textures/biomeswevegone/cypress_stairs.png b/public/textures/biomeswevegone/cypress_stairs.png new file mode 100644 index 00000000..884fb59f Binary files /dev/null and b/public/textures/biomeswevegone/cypress_stairs.png differ diff --git a/public/textures/biomeswevegone/cypress_trapdoor.png b/public/textures/biomeswevegone/cypress_trapdoor.png new file mode 100644 index 00000000..a934cb97 Binary files /dev/null and b/public/textures/biomeswevegone/cypress_trapdoor.png differ diff --git a/public/textures/biomeswevegone/cypress_wood.png b/public/textures/biomeswevegone/cypress_wood.png new file mode 100644 index 00000000..c79cae6a Binary files /dev/null and b/public/textures/biomeswevegone/cypress_wood.png differ diff --git a/public/textures/biomeswevegone/dacite.png b/public/textures/biomeswevegone/dacite.png new file mode 100644 index 00000000..96f35e43 Binary files /dev/null and b/public/textures/biomeswevegone/dacite.png differ diff --git a/public/textures/biomeswevegone/dacite_brick_slab.png b/public/textures/biomeswevegone/dacite_brick_slab.png new file mode 100644 index 00000000..2dd9e783 Binary files /dev/null and b/public/textures/biomeswevegone/dacite_brick_slab.png differ diff --git a/public/textures/biomeswevegone/dacite_brick_stairs.png b/public/textures/biomeswevegone/dacite_brick_stairs.png new file mode 100644 index 00000000..b43fe050 Binary files /dev/null and b/public/textures/biomeswevegone/dacite_brick_stairs.png differ diff --git a/public/textures/biomeswevegone/dacite_brick_wall.png b/public/textures/biomeswevegone/dacite_brick_wall.png new file mode 100644 index 00000000..d576291d Binary files /dev/null and b/public/textures/biomeswevegone/dacite_brick_wall.png differ diff --git a/public/textures/biomeswevegone/dacite_bricks.png b/public/textures/biomeswevegone/dacite_bricks.png new file mode 100644 index 00000000..1570f89f Binary files /dev/null and b/public/textures/biomeswevegone/dacite_bricks.png differ diff --git a/public/textures/biomeswevegone/dacite_cobblestone.png b/public/textures/biomeswevegone/dacite_cobblestone.png new file mode 100644 index 00000000..e77f7b95 Binary files /dev/null and b/public/textures/biomeswevegone/dacite_cobblestone.png differ diff --git a/public/textures/biomeswevegone/dacite_cobblestone_slab.png b/public/textures/biomeswevegone/dacite_cobblestone_slab.png new file mode 100644 index 00000000..866b0c5e Binary files /dev/null and b/public/textures/biomeswevegone/dacite_cobblestone_slab.png differ diff --git a/public/textures/biomeswevegone/dacite_cobblestone_stairs.png b/public/textures/biomeswevegone/dacite_cobblestone_stairs.png new file mode 100644 index 00000000..da2b90e5 Binary files /dev/null and b/public/textures/biomeswevegone/dacite_cobblestone_stairs.png differ diff --git a/public/textures/biomeswevegone/dacite_cobblestone_wall.png b/public/textures/biomeswevegone/dacite_cobblestone_wall.png new file mode 100644 index 00000000..fb327ccf Binary files /dev/null and b/public/textures/biomeswevegone/dacite_cobblestone_wall.png differ diff --git a/public/textures/biomeswevegone/dacite_pillar.png b/public/textures/biomeswevegone/dacite_pillar.png new file mode 100644 index 00000000..bbe923dc Binary files /dev/null and b/public/textures/biomeswevegone/dacite_pillar.png differ diff --git a/public/textures/biomeswevegone/dacite_slab.png b/public/textures/biomeswevegone/dacite_slab.png new file mode 100644 index 00000000..8e39c909 Binary files /dev/null and b/public/textures/biomeswevegone/dacite_slab.png differ diff --git a/public/textures/biomeswevegone/dacite_stairs.png b/public/textures/biomeswevegone/dacite_stairs.png new file mode 100644 index 00000000..9b37a690 Binary files /dev/null and b/public/textures/biomeswevegone/dacite_stairs.png differ diff --git a/public/textures/biomeswevegone/dacite_tile.png b/public/textures/biomeswevegone/dacite_tile.png new file mode 100644 index 00000000..5a45c149 Binary files /dev/null and b/public/textures/biomeswevegone/dacite_tile.png differ diff --git a/public/textures/biomeswevegone/dacite_tile_slab.png b/public/textures/biomeswevegone/dacite_tile_slab.png new file mode 100644 index 00000000..e35f8350 Binary files /dev/null and b/public/textures/biomeswevegone/dacite_tile_slab.png differ diff --git a/public/textures/biomeswevegone/dacite_tile_stairs.png b/public/textures/biomeswevegone/dacite_tile_stairs.png new file mode 100644 index 00000000..a8c92d64 Binary files /dev/null and b/public/textures/biomeswevegone/dacite_tile_stairs.png differ diff --git a/public/textures/biomeswevegone/dacite_tile_wall.png b/public/textures/biomeswevegone/dacite_tile_wall.png new file mode 100644 index 00000000..3bc85583 Binary files /dev/null and b/public/textures/biomeswevegone/dacite_tile_wall.png differ diff --git a/public/textures/biomeswevegone/dacite_wall.png b/public/textures/biomeswevegone/dacite_wall.png new file mode 100644 index 00000000..17e388e9 Binary files /dev/null and b/public/textures/biomeswevegone/dacite_wall.png differ diff --git a/public/textures/biomeswevegone/daffodil.png b/public/textures/biomeswevegone/daffodil.png new file mode 100644 index 00000000..71f944a9 Binary files /dev/null and b/public/textures/biomeswevegone/daffodil.png differ diff --git a/public/textures/biomeswevegone/delphinium.png b/public/textures/biomeswevegone/delphinium.png new file mode 100644 index 00000000..acc36945 Binary files /dev/null and b/public/textures/biomeswevegone/delphinium.png differ diff --git a/public/textures/biomeswevegone/ebony_boat.png b/public/textures/biomeswevegone/ebony_boat.png new file mode 100644 index 00000000..6922df06 Binary files /dev/null and b/public/textures/biomeswevegone/ebony_boat.png differ diff --git a/public/textures/biomeswevegone/ebony_bookshelf.png b/public/textures/biomeswevegone/ebony_bookshelf.png new file mode 100644 index 00000000..5a8740f4 Binary files /dev/null and b/public/textures/biomeswevegone/ebony_bookshelf.png differ diff --git a/public/textures/biomeswevegone/ebony_button.png b/public/textures/biomeswevegone/ebony_button.png new file mode 100644 index 00000000..c483bd5e Binary files /dev/null and b/public/textures/biomeswevegone/ebony_button.png differ diff --git a/public/textures/biomeswevegone/ebony_chest_boat.png b/public/textures/biomeswevegone/ebony_chest_boat.png new file mode 100644 index 00000000..950799aa Binary files /dev/null and b/public/textures/biomeswevegone/ebony_chest_boat.png differ diff --git a/public/textures/biomeswevegone/ebony_crafting_table.png b/public/textures/biomeswevegone/ebony_crafting_table.png new file mode 100644 index 00000000..2c030d6f Binary files /dev/null and b/public/textures/biomeswevegone/ebony_crafting_table.png differ diff --git a/public/textures/biomeswevegone/ebony_door.png b/public/textures/biomeswevegone/ebony_door.png new file mode 100644 index 00000000..c8cc5933 Binary files /dev/null and b/public/textures/biomeswevegone/ebony_door.png differ diff --git a/public/textures/biomeswevegone/ebony_fence.png b/public/textures/biomeswevegone/ebony_fence.png new file mode 100644 index 00000000..3e2fb194 Binary files /dev/null and b/public/textures/biomeswevegone/ebony_fence.png differ diff --git a/public/textures/biomeswevegone/ebony_fence_gate.png b/public/textures/biomeswevegone/ebony_fence_gate.png new file mode 100644 index 00000000..70a03aaf Binary files /dev/null and b/public/textures/biomeswevegone/ebony_fence_gate.png differ diff --git a/public/textures/biomeswevegone/ebony_hanging_sign.png b/public/textures/biomeswevegone/ebony_hanging_sign.png new file mode 100644 index 00000000..68695b06 Binary files /dev/null and b/public/textures/biomeswevegone/ebony_hanging_sign.png differ diff --git a/public/textures/biomeswevegone/ebony_leaves.png b/public/textures/biomeswevegone/ebony_leaves.png new file mode 100644 index 00000000..0ef2afc1 Binary files /dev/null and b/public/textures/biomeswevegone/ebony_leaves.png differ diff --git a/public/textures/biomeswevegone/ebony_log.png b/public/textures/biomeswevegone/ebony_log.png new file mode 100644 index 00000000..10d8bbc8 Binary files /dev/null and b/public/textures/biomeswevegone/ebony_log.png differ diff --git a/public/textures/biomeswevegone/ebony_planks.png b/public/textures/biomeswevegone/ebony_planks.png new file mode 100644 index 00000000..6d52ce94 Binary files /dev/null and b/public/textures/biomeswevegone/ebony_planks.png differ diff --git a/public/textures/biomeswevegone/ebony_pressure_plate.png b/public/textures/biomeswevegone/ebony_pressure_plate.png new file mode 100644 index 00000000..8e836abd Binary files /dev/null and b/public/textures/biomeswevegone/ebony_pressure_plate.png differ diff --git a/public/textures/biomeswevegone/ebony_sapling.png b/public/textures/biomeswevegone/ebony_sapling.png new file mode 100644 index 00000000..1d4c2d70 Binary files /dev/null and b/public/textures/biomeswevegone/ebony_sapling.png differ diff --git a/public/textures/biomeswevegone/ebony_sign.png b/public/textures/biomeswevegone/ebony_sign.png new file mode 100644 index 00000000..1e80182d Binary files /dev/null and b/public/textures/biomeswevegone/ebony_sign.png differ diff --git a/public/textures/biomeswevegone/ebony_slab.png b/public/textures/biomeswevegone/ebony_slab.png new file mode 100644 index 00000000..4581e4e0 Binary files /dev/null and b/public/textures/biomeswevegone/ebony_slab.png differ diff --git a/public/textures/biomeswevegone/ebony_stairs.png b/public/textures/biomeswevegone/ebony_stairs.png new file mode 100644 index 00000000..28b606b6 Binary files /dev/null and b/public/textures/biomeswevegone/ebony_stairs.png differ diff --git a/public/textures/biomeswevegone/ebony_trapdoor.png b/public/textures/biomeswevegone/ebony_trapdoor.png new file mode 100644 index 00000000..3049c258 Binary files /dev/null and b/public/textures/biomeswevegone/ebony_trapdoor.png differ diff --git a/public/textures/biomeswevegone/ebony_wood.png b/public/textures/biomeswevegone/ebony_wood.png new file mode 100644 index 00000000..993d7c3c Binary files /dev/null and b/public/textures/biomeswevegone/ebony_wood.png differ diff --git a/public/textures/biomeswevegone/fairy_slipper.png b/public/textures/biomeswevegone/fairy_slipper.png new file mode 100644 index 00000000..86e85a8d Binary files /dev/null and b/public/textures/biomeswevegone/fairy_slipper.png differ diff --git a/public/textures/biomeswevegone/fir_boat.png b/public/textures/biomeswevegone/fir_boat.png new file mode 100644 index 00000000..8cf4f97e Binary files /dev/null and b/public/textures/biomeswevegone/fir_boat.png differ diff --git a/public/textures/biomeswevegone/fir_bookshelf.png b/public/textures/biomeswevegone/fir_bookshelf.png new file mode 100644 index 00000000..d49af604 Binary files /dev/null and b/public/textures/biomeswevegone/fir_bookshelf.png differ diff --git a/public/textures/biomeswevegone/fir_button.png b/public/textures/biomeswevegone/fir_button.png new file mode 100644 index 00000000..55b4931c Binary files /dev/null and b/public/textures/biomeswevegone/fir_button.png differ diff --git a/public/textures/biomeswevegone/fir_chest_boat.png b/public/textures/biomeswevegone/fir_chest_boat.png new file mode 100644 index 00000000..f0bc03a9 Binary files /dev/null and b/public/textures/biomeswevegone/fir_chest_boat.png differ diff --git a/public/textures/biomeswevegone/fir_crafting_table.png b/public/textures/biomeswevegone/fir_crafting_table.png new file mode 100644 index 00000000..c0b3fc91 Binary files /dev/null and b/public/textures/biomeswevegone/fir_crafting_table.png differ diff --git a/public/textures/biomeswevegone/fir_door.png b/public/textures/biomeswevegone/fir_door.png new file mode 100644 index 00000000..415a43ba Binary files /dev/null and b/public/textures/biomeswevegone/fir_door.png differ diff --git a/public/textures/biomeswevegone/fir_fence.png b/public/textures/biomeswevegone/fir_fence.png new file mode 100644 index 00000000..0892c722 Binary files /dev/null and b/public/textures/biomeswevegone/fir_fence.png differ diff --git a/public/textures/biomeswevegone/fir_fence_gate.png b/public/textures/biomeswevegone/fir_fence_gate.png new file mode 100644 index 00000000..370b45b3 Binary files /dev/null and b/public/textures/biomeswevegone/fir_fence_gate.png differ diff --git a/public/textures/biomeswevegone/fir_hanging_sign.png b/public/textures/biomeswevegone/fir_hanging_sign.png new file mode 100644 index 00000000..273befd0 Binary files /dev/null and b/public/textures/biomeswevegone/fir_hanging_sign.png differ diff --git a/public/textures/biomeswevegone/fir_leaves.png b/public/textures/biomeswevegone/fir_leaves.png new file mode 100644 index 00000000..e50ad297 Binary files /dev/null and b/public/textures/biomeswevegone/fir_leaves.png differ diff --git a/public/textures/biomeswevegone/fir_log.png b/public/textures/biomeswevegone/fir_log.png new file mode 100644 index 00000000..8826ad0f Binary files /dev/null and b/public/textures/biomeswevegone/fir_log.png differ diff --git a/public/textures/biomeswevegone/fir_planks.png b/public/textures/biomeswevegone/fir_planks.png new file mode 100644 index 00000000..8c00b057 Binary files /dev/null and b/public/textures/biomeswevegone/fir_planks.png differ diff --git a/public/textures/biomeswevegone/fir_pressure_plate.png b/public/textures/biomeswevegone/fir_pressure_plate.png new file mode 100644 index 00000000..2671d220 Binary files /dev/null and b/public/textures/biomeswevegone/fir_pressure_plate.png differ diff --git a/public/textures/biomeswevegone/fir_sapling.png b/public/textures/biomeswevegone/fir_sapling.png new file mode 100644 index 00000000..22eb427d Binary files /dev/null and b/public/textures/biomeswevegone/fir_sapling.png differ diff --git a/public/textures/biomeswevegone/fir_sign.png b/public/textures/biomeswevegone/fir_sign.png new file mode 100644 index 00000000..924bb9c3 Binary files /dev/null and b/public/textures/biomeswevegone/fir_sign.png differ diff --git a/public/textures/biomeswevegone/fir_slab.png b/public/textures/biomeswevegone/fir_slab.png new file mode 100644 index 00000000..41cf63cf Binary files /dev/null and b/public/textures/biomeswevegone/fir_slab.png differ diff --git a/public/textures/biomeswevegone/fir_stairs.png b/public/textures/biomeswevegone/fir_stairs.png new file mode 100644 index 00000000..4c3f6e29 Binary files /dev/null and b/public/textures/biomeswevegone/fir_stairs.png differ diff --git a/public/textures/biomeswevegone/fir_trapdoor.png b/public/textures/biomeswevegone/fir_trapdoor.png new file mode 100644 index 00000000..c8e25a9e Binary files /dev/null and b/public/textures/biomeswevegone/fir_trapdoor.png differ diff --git a/public/textures/biomeswevegone/fir_wood.png b/public/textures/biomeswevegone/fir_wood.png new file mode 100644 index 00000000..ee4bfd47 Binary files /dev/null and b/public/textures/biomeswevegone/fir_wood.png differ diff --git a/public/textures/biomeswevegone/firecracker_flower_bush.png b/public/textures/biomeswevegone/firecracker_flower_bush.png new file mode 100644 index 00000000..3c00dc77 Binary files /dev/null and b/public/textures/biomeswevegone/firecracker_flower_bush.png differ diff --git a/public/textures/biomeswevegone/firecracker_leaves.png b/public/textures/biomeswevegone/firecracker_leaves.png new file mode 100644 index 00000000..d451dde4 Binary files /dev/null and b/public/textures/biomeswevegone/firecracker_leaves.png differ diff --git a/public/textures/biomeswevegone/florus_boat.png b/public/textures/biomeswevegone/florus_boat.png new file mode 100644 index 00000000..8252b266 Binary files /dev/null and b/public/textures/biomeswevegone/florus_boat.png differ diff --git a/public/textures/biomeswevegone/florus_bookshelf.png b/public/textures/biomeswevegone/florus_bookshelf.png new file mode 100644 index 00000000..660c0806 Binary files /dev/null and b/public/textures/biomeswevegone/florus_bookshelf.png differ diff --git a/public/textures/biomeswevegone/florus_button.png b/public/textures/biomeswevegone/florus_button.png new file mode 100644 index 00000000..6e9bdf72 Binary files /dev/null and b/public/textures/biomeswevegone/florus_button.png differ diff --git a/public/textures/biomeswevegone/florus_chest_boat.png b/public/textures/biomeswevegone/florus_chest_boat.png new file mode 100644 index 00000000..9d9a87df Binary files /dev/null and b/public/textures/biomeswevegone/florus_chest_boat.png differ diff --git a/public/textures/biomeswevegone/florus_crafting_table.png b/public/textures/biomeswevegone/florus_crafting_table.png new file mode 100644 index 00000000..0441bd43 Binary files /dev/null and b/public/textures/biomeswevegone/florus_crafting_table.png differ diff --git a/public/textures/biomeswevegone/florus_door.png b/public/textures/biomeswevegone/florus_door.png new file mode 100644 index 00000000..5165df61 Binary files /dev/null and b/public/textures/biomeswevegone/florus_door.png differ diff --git a/public/textures/biomeswevegone/florus_fence.png b/public/textures/biomeswevegone/florus_fence.png new file mode 100644 index 00000000..796fe0c4 Binary files /dev/null and b/public/textures/biomeswevegone/florus_fence.png differ diff --git a/public/textures/biomeswevegone/florus_fence_gate.png b/public/textures/biomeswevegone/florus_fence_gate.png new file mode 100644 index 00000000..86d9669f Binary files /dev/null and b/public/textures/biomeswevegone/florus_fence_gate.png differ diff --git a/public/textures/biomeswevegone/florus_hanging_sign.png b/public/textures/biomeswevegone/florus_hanging_sign.png new file mode 100644 index 00000000..9f67a16c Binary files /dev/null and b/public/textures/biomeswevegone/florus_hanging_sign.png differ diff --git a/public/textures/biomeswevegone/florus_planks.png b/public/textures/biomeswevegone/florus_planks.png new file mode 100644 index 00000000..dc5255f9 Binary files /dev/null and b/public/textures/biomeswevegone/florus_planks.png differ diff --git a/public/textures/biomeswevegone/florus_pressure_plate.png b/public/textures/biomeswevegone/florus_pressure_plate.png new file mode 100644 index 00000000..0b3e2c92 Binary files /dev/null and b/public/textures/biomeswevegone/florus_pressure_plate.png differ diff --git a/public/textures/biomeswevegone/florus_sign.png b/public/textures/biomeswevegone/florus_sign.png new file mode 100644 index 00000000..90e31c1f Binary files /dev/null and b/public/textures/biomeswevegone/florus_sign.png differ diff --git a/public/textures/biomeswevegone/florus_slab.png b/public/textures/biomeswevegone/florus_slab.png new file mode 100644 index 00000000..b51829c9 Binary files /dev/null and b/public/textures/biomeswevegone/florus_slab.png differ diff --git a/public/textures/biomeswevegone/florus_stairs.png b/public/textures/biomeswevegone/florus_stairs.png new file mode 100644 index 00000000..439ec8d1 Binary files /dev/null and b/public/textures/biomeswevegone/florus_stairs.png differ diff --git a/public/textures/biomeswevegone/florus_stem.png b/public/textures/biomeswevegone/florus_stem.png new file mode 100644 index 00000000..c9110d1f Binary files /dev/null and b/public/textures/biomeswevegone/florus_stem.png differ diff --git a/public/textures/biomeswevegone/florus_trapdoor.png b/public/textures/biomeswevegone/florus_trapdoor.png new file mode 100644 index 00000000..96b0c0a0 Binary files /dev/null and b/public/textures/biomeswevegone/florus_trapdoor.png differ diff --git a/public/textures/biomeswevegone/florus_wood.png b/public/textures/biomeswevegone/florus_wood.png new file mode 100644 index 00000000..514ac245 Binary files /dev/null and b/public/textures/biomeswevegone/florus_wood.png differ diff --git a/public/textures/biomeswevegone/flower_patch.png b/public/textures/biomeswevegone/flower_patch.png new file mode 100644 index 00000000..b483cdd8 Binary files /dev/null and b/public/textures/biomeswevegone/flower_patch.png differ diff --git a/public/textures/biomeswevegone/flowering_baobab_leaves.png b/public/textures/biomeswevegone/flowering_baobab_leaves.png new file mode 100644 index 00000000..5a19623d Binary files /dev/null and b/public/textures/biomeswevegone/flowering_baobab_leaves.png differ diff --git a/public/textures/biomeswevegone/flowering_barrel_cactus.png b/public/textures/biomeswevegone/flowering_barrel_cactus.png new file mode 100644 index 00000000..ccdb84bd Binary files /dev/null and b/public/textures/biomeswevegone/flowering_barrel_cactus.png differ diff --git a/public/textures/biomeswevegone/flowering_indigo_jacaranda_bush.png b/public/textures/biomeswevegone/flowering_indigo_jacaranda_bush.png new file mode 100644 index 00000000..c4c174a0 Binary files /dev/null and b/public/textures/biomeswevegone/flowering_indigo_jacaranda_bush.png differ diff --git a/public/textures/biomeswevegone/flowering_indigo_jacaranda_leaves.png b/public/textures/biomeswevegone/flowering_indigo_jacaranda_leaves.png new file mode 100644 index 00000000..9ec9043e Binary files /dev/null and b/public/textures/biomeswevegone/flowering_indigo_jacaranda_leaves.png differ diff --git a/public/textures/biomeswevegone/flowering_ironwood_leaves.png b/public/textures/biomeswevegone/flowering_ironwood_leaves.png new file mode 100644 index 00000000..e56995b2 Binary files /dev/null and b/public/textures/biomeswevegone/flowering_ironwood_leaves.png differ diff --git a/public/textures/biomeswevegone/flowering_jacaranda_bush.png b/public/textures/biomeswevegone/flowering_jacaranda_bush.png new file mode 100644 index 00000000..0de0ec69 Binary files /dev/null and b/public/textures/biomeswevegone/flowering_jacaranda_bush.png differ diff --git a/public/textures/biomeswevegone/flowering_jacaranda_leaves.png b/public/textures/biomeswevegone/flowering_jacaranda_leaves.png new file mode 100644 index 00000000..cdc22725 Binary files /dev/null and b/public/textures/biomeswevegone/flowering_jacaranda_leaves.png differ diff --git a/public/textures/biomeswevegone/flowering_orchard_leaves.png b/public/textures/biomeswevegone/flowering_orchard_leaves.png new file mode 100644 index 00000000..cbeb8023 Binary files /dev/null and b/public/textures/biomeswevegone/flowering_orchard_leaves.png differ diff --git a/public/textures/biomeswevegone/flowering_palo_verde_leaves.png b/public/textures/biomeswevegone/flowering_palo_verde_leaves.png new file mode 100644 index 00000000..e5f1c529 Binary files /dev/null and b/public/textures/biomeswevegone/flowering_palo_verde_leaves.png differ diff --git a/public/textures/biomeswevegone/flowering_skyris_leaves.png b/public/textures/biomeswevegone/flowering_skyris_leaves.png new file mode 100644 index 00000000..c7c9cc10 Binary files /dev/null and b/public/textures/biomeswevegone/flowering_skyris_leaves.png differ diff --git a/public/textures/biomeswevegone/flowering_spirit_leaves.png b/public/textures/biomeswevegone/flowering_spirit_leaves.png new file mode 100644 index 00000000..a5dd9703 Binary files /dev/null and b/public/textures/biomeswevegone/flowering_spirit_leaves.png differ diff --git a/public/textures/biomeswevegone/flowering_tiny_lily_pads.png b/public/textures/biomeswevegone/flowering_tiny_lily_pads.png new file mode 100644 index 00000000..edf1f82d Binary files /dev/null and b/public/textures/biomeswevegone/flowering_tiny_lily_pads.png differ diff --git a/public/textures/biomeswevegone/flowering_yucca_leaves.png b/public/textures/biomeswevegone/flowering_yucca_leaves.png new file mode 100644 index 00000000..e1e724eb Binary files /dev/null and b/public/textures/biomeswevegone/flowering_yucca_leaves.png differ diff --git a/public/textures/biomeswevegone/fluorescent_cattail_sprout.png b/public/textures/biomeswevegone/fluorescent_cattail_sprout.png new file mode 100644 index 00000000..27c7b461 Binary files /dev/null and b/public/textures/biomeswevegone/fluorescent_cattail_sprout.png differ diff --git a/public/textures/biomeswevegone/foragers_table.png b/public/textures/biomeswevegone/foragers_table.png new file mode 100644 index 00000000..10203b18 Binary files /dev/null and b/public/textures/biomeswevegone/foragers_table.png differ diff --git a/public/textures/biomeswevegone/foxglove.png b/public/textures/biomeswevegone/foxglove.png new file mode 100644 index 00000000..3404b0c5 Binary files /dev/null and b/public/textures/biomeswevegone/foxglove.png differ diff --git a/public/textures/biomeswevegone/golden_spined_cactus.png b/public/textures/biomeswevegone/golden_spined_cactus.png new file mode 100644 index 00000000..5d0e535b Binary files /dev/null and b/public/textures/biomeswevegone/golden_spined_cactus.png differ diff --git a/public/textures/biomeswevegone/green_apple.png b/public/textures/biomeswevegone/green_apple.png new file mode 100644 index 00000000..824caa01 Binary files /dev/null and b/public/textures/biomeswevegone/green_apple.png differ diff --git a/public/textures/biomeswevegone/green_apple_pie.png b/public/textures/biomeswevegone/green_apple_pie.png new file mode 100644 index 00000000..4b8571e6 Binary files /dev/null and b/public/textures/biomeswevegone/green_apple_pie.png differ diff --git a/public/textures/biomeswevegone/green_apple_skyris_leaves.png b/public/textures/biomeswevegone/green_apple_skyris_leaves.png new file mode 100644 index 00000000..e9aacfba Binary files /dev/null and b/public/textures/biomeswevegone/green_apple_skyris_leaves.png differ diff --git a/public/textures/biomeswevegone/green_enchanted_boat.png b/public/textures/biomeswevegone/green_enchanted_boat.png new file mode 100644 index 00000000..eba08c87 Binary files /dev/null and b/public/textures/biomeswevegone/green_enchanted_boat.png differ diff --git a/public/textures/biomeswevegone/green_enchanted_bookshelf.png b/public/textures/biomeswevegone/green_enchanted_bookshelf.png new file mode 100644 index 00000000..9e330051 Binary files /dev/null and b/public/textures/biomeswevegone/green_enchanted_bookshelf.png differ diff --git a/public/textures/biomeswevegone/green_enchanted_button.png b/public/textures/biomeswevegone/green_enchanted_button.png new file mode 100644 index 00000000..21e28c55 Binary files /dev/null and b/public/textures/biomeswevegone/green_enchanted_button.png differ diff --git a/public/textures/biomeswevegone/green_enchanted_chest_boat.png b/public/textures/biomeswevegone/green_enchanted_chest_boat.png new file mode 100644 index 00000000..ee4ed6b3 Binary files /dev/null and b/public/textures/biomeswevegone/green_enchanted_chest_boat.png differ diff --git a/public/textures/biomeswevegone/green_enchanted_crafting_table.png b/public/textures/biomeswevegone/green_enchanted_crafting_table.png new file mode 100644 index 00000000..8c1dde0d Binary files /dev/null and b/public/textures/biomeswevegone/green_enchanted_crafting_table.png differ diff --git a/public/textures/biomeswevegone/green_enchanted_door.png b/public/textures/biomeswevegone/green_enchanted_door.png new file mode 100644 index 00000000..3b26cf5e Binary files /dev/null and b/public/textures/biomeswevegone/green_enchanted_door.png differ diff --git a/public/textures/biomeswevegone/green_enchanted_fence.png b/public/textures/biomeswevegone/green_enchanted_fence.png new file mode 100644 index 00000000..51d24a0e Binary files /dev/null and b/public/textures/biomeswevegone/green_enchanted_fence.png differ diff --git a/public/textures/biomeswevegone/green_enchanted_fence_gate.png b/public/textures/biomeswevegone/green_enchanted_fence_gate.png new file mode 100644 index 00000000..01b5ad71 Binary files /dev/null and b/public/textures/biomeswevegone/green_enchanted_fence_gate.png differ diff --git a/public/textures/biomeswevegone/green_enchanted_hanging_sign.png b/public/textures/biomeswevegone/green_enchanted_hanging_sign.png new file mode 100644 index 00000000..16f86e7b Binary files /dev/null and b/public/textures/biomeswevegone/green_enchanted_hanging_sign.png differ diff --git a/public/textures/biomeswevegone/green_enchanted_leaves.png b/public/textures/biomeswevegone/green_enchanted_leaves.png new file mode 100644 index 00000000..a1bb810e Binary files /dev/null and b/public/textures/biomeswevegone/green_enchanted_leaves.png differ diff --git a/public/textures/biomeswevegone/green_enchanted_log.png b/public/textures/biomeswevegone/green_enchanted_log.png new file mode 100644 index 00000000..4497b580 Binary files /dev/null and b/public/textures/biomeswevegone/green_enchanted_log.png differ diff --git a/public/textures/biomeswevegone/green_enchanted_planks.png b/public/textures/biomeswevegone/green_enchanted_planks.png new file mode 100644 index 00000000..378d31f4 Binary files /dev/null and b/public/textures/biomeswevegone/green_enchanted_planks.png differ diff --git a/public/textures/biomeswevegone/green_enchanted_pressure_plate.png b/public/textures/biomeswevegone/green_enchanted_pressure_plate.png new file mode 100644 index 00000000..49584725 Binary files /dev/null and b/public/textures/biomeswevegone/green_enchanted_pressure_plate.png differ diff --git a/public/textures/biomeswevegone/green_enchanted_sapling.png b/public/textures/biomeswevegone/green_enchanted_sapling.png new file mode 100644 index 00000000..f14da580 Binary files /dev/null and b/public/textures/biomeswevegone/green_enchanted_sapling.png differ diff --git a/public/textures/biomeswevegone/green_enchanted_sign.png b/public/textures/biomeswevegone/green_enchanted_sign.png new file mode 100644 index 00000000..91e46b58 Binary files /dev/null and b/public/textures/biomeswevegone/green_enchanted_sign.png differ diff --git a/public/textures/biomeswevegone/green_enchanted_slab.png b/public/textures/biomeswevegone/green_enchanted_slab.png new file mode 100644 index 00000000..91158f40 Binary files /dev/null and b/public/textures/biomeswevegone/green_enchanted_slab.png differ diff --git a/public/textures/biomeswevegone/green_enchanted_stairs.png b/public/textures/biomeswevegone/green_enchanted_stairs.png new file mode 100644 index 00000000..9d4fdc61 Binary files /dev/null and b/public/textures/biomeswevegone/green_enchanted_stairs.png differ diff --git a/public/textures/biomeswevegone/green_enchanted_trapdoor.png b/public/textures/biomeswevegone/green_enchanted_trapdoor.png new file mode 100644 index 00000000..94e70605 Binary files /dev/null and b/public/textures/biomeswevegone/green_enchanted_trapdoor.png differ diff --git a/public/textures/biomeswevegone/green_enchanted_wood.png b/public/textures/biomeswevegone/green_enchanted_wood.png new file mode 100644 index 00000000..5d7d6871 Binary files /dev/null and b/public/textures/biomeswevegone/green_enchanted_wood.png differ diff --git a/public/textures/biomeswevegone/green_glow_bottle.png b/public/textures/biomeswevegone/green_glow_bottle.png new file mode 100644 index 00000000..e2f84872 Binary files /dev/null and b/public/textures/biomeswevegone/green_glow_bottle.png differ diff --git a/public/textures/biomeswevegone/green_glowcane_powder.png b/public/textures/biomeswevegone/green_glowcane_powder.png new file mode 100644 index 00000000..e74a9d13 Binary files /dev/null and b/public/textures/biomeswevegone/green_glowcane_powder.png differ diff --git a/public/textures/biomeswevegone/green_glowcane_shoot.png b/public/textures/biomeswevegone/green_glowcane_shoot.png new file mode 100644 index 00000000..fea46ccb Binary files /dev/null and b/public/textures/biomeswevegone/green_glowcane_shoot.png differ diff --git a/public/textures/biomeswevegone/green_mushroom.png b/public/textures/biomeswevegone/green_mushroom.png new file mode 100644 index 00000000..2e638782 Binary files /dev/null and b/public/textures/biomeswevegone/green_mushroom.png differ diff --git a/public/textures/biomeswevegone/green_mushroom_block.png b/public/textures/biomeswevegone/green_mushroom_block.png new file mode 100644 index 00000000..2440125c Binary files /dev/null and b/public/textures/biomeswevegone/green_mushroom_block.png differ diff --git a/public/textures/biomeswevegone/green_tulip.png b/public/textures/biomeswevegone/green_tulip.png new file mode 100644 index 00000000..79302f4a Binary files /dev/null and b/public/textures/biomeswevegone/green_tulip.png differ diff --git a/public/textures/biomeswevegone/guzmania.png b/public/textures/biomeswevegone/guzmania.png new file mode 100644 index 00000000..d8ce51dd Binary files /dev/null and b/public/textures/biomeswevegone/guzmania.png differ diff --git a/public/textures/biomeswevegone/holly_berry_leaves.png b/public/textures/biomeswevegone/holly_berry_leaves.png new file mode 100644 index 00000000..072ddc10 Binary files /dev/null and b/public/textures/biomeswevegone/holly_berry_leaves.png differ diff --git a/public/textures/biomeswevegone/holly_boat.png b/public/textures/biomeswevegone/holly_boat.png new file mode 100644 index 00000000..9fcd7591 Binary files /dev/null and b/public/textures/biomeswevegone/holly_boat.png differ diff --git a/public/textures/biomeswevegone/holly_bookshelf.png b/public/textures/biomeswevegone/holly_bookshelf.png new file mode 100644 index 00000000..356e76b4 Binary files /dev/null and b/public/textures/biomeswevegone/holly_bookshelf.png differ diff --git a/public/textures/biomeswevegone/holly_button.png b/public/textures/biomeswevegone/holly_button.png new file mode 100644 index 00000000..de3750b9 Binary files /dev/null and b/public/textures/biomeswevegone/holly_button.png differ diff --git a/public/textures/biomeswevegone/holly_chest_boat.png b/public/textures/biomeswevegone/holly_chest_boat.png new file mode 100644 index 00000000..7128dbb9 Binary files /dev/null and b/public/textures/biomeswevegone/holly_chest_boat.png differ diff --git a/public/textures/biomeswevegone/holly_crafting_table.png b/public/textures/biomeswevegone/holly_crafting_table.png new file mode 100644 index 00000000..3d78811f Binary files /dev/null and b/public/textures/biomeswevegone/holly_crafting_table.png differ diff --git a/public/textures/biomeswevegone/holly_door.png b/public/textures/biomeswevegone/holly_door.png new file mode 100644 index 00000000..855d44fc Binary files /dev/null and b/public/textures/biomeswevegone/holly_door.png differ diff --git a/public/textures/biomeswevegone/holly_fence.png b/public/textures/biomeswevegone/holly_fence.png new file mode 100644 index 00000000..753c7c23 Binary files /dev/null and b/public/textures/biomeswevegone/holly_fence.png differ diff --git a/public/textures/biomeswevegone/holly_fence_gate.png b/public/textures/biomeswevegone/holly_fence_gate.png new file mode 100644 index 00000000..8b650204 Binary files /dev/null and b/public/textures/biomeswevegone/holly_fence_gate.png differ diff --git a/public/textures/biomeswevegone/holly_hanging_sign.png b/public/textures/biomeswevegone/holly_hanging_sign.png new file mode 100644 index 00000000..336758b7 Binary files /dev/null and b/public/textures/biomeswevegone/holly_hanging_sign.png differ diff --git a/public/textures/biomeswevegone/holly_leaves.png b/public/textures/biomeswevegone/holly_leaves.png new file mode 100644 index 00000000..795bb929 Binary files /dev/null and b/public/textures/biomeswevegone/holly_leaves.png differ diff --git a/public/textures/biomeswevegone/holly_log.png b/public/textures/biomeswevegone/holly_log.png new file mode 100644 index 00000000..8feac841 Binary files /dev/null and b/public/textures/biomeswevegone/holly_log.png differ diff --git a/public/textures/biomeswevegone/holly_planks.png b/public/textures/biomeswevegone/holly_planks.png new file mode 100644 index 00000000..63542aa8 Binary files /dev/null and b/public/textures/biomeswevegone/holly_planks.png differ diff --git a/public/textures/biomeswevegone/holly_pressure_plate.png b/public/textures/biomeswevegone/holly_pressure_plate.png new file mode 100644 index 00000000..4de93c7b Binary files /dev/null and b/public/textures/biomeswevegone/holly_pressure_plate.png differ diff --git a/public/textures/biomeswevegone/holly_sapling.png b/public/textures/biomeswevegone/holly_sapling.png new file mode 100644 index 00000000..55ab8f51 Binary files /dev/null and b/public/textures/biomeswevegone/holly_sapling.png differ diff --git a/public/textures/biomeswevegone/holly_sign.png b/public/textures/biomeswevegone/holly_sign.png new file mode 100644 index 00000000..eecf0091 Binary files /dev/null and b/public/textures/biomeswevegone/holly_sign.png differ diff --git a/public/textures/biomeswevegone/holly_slab.png b/public/textures/biomeswevegone/holly_slab.png new file mode 100644 index 00000000..b278c0c3 Binary files /dev/null and b/public/textures/biomeswevegone/holly_slab.png differ diff --git a/public/textures/biomeswevegone/holly_stairs.png b/public/textures/biomeswevegone/holly_stairs.png new file mode 100644 index 00000000..0c72616a Binary files /dev/null and b/public/textures/biomeswevegone/holly_stairs.png differ diff --git a/public/textures/biomeswevegone/holly_trapdoor.png b/public/textures/biomeswevegone/holly_trapdoor.png new file mode 100644 index 00000000..db6fe3b1 Binary files /dev/null and b/public/textures/biomeswevegone/holly_trapdoor.png differ diff --git a/public/textures/biomeswevegone/holly_wood.png b/public/textures/biomeswevegone/holly_wood.png new file mode 100644 index 00000000..a3fd8033 Binary files /dev/null and b/public/textures/biomeswevegone/holly_wood.png differ diff --git a/public/textures/biomeswevegone/horseweed.png b/public/textures/biomeswevegone/horseweed.png new file mode 100644 index 00000000..d9956df1 Binary files /dev/null and b/public/textures/biomeswevegone/horseweed.png differ diff --git a/public/textures/biomeswevegone/hydrangea_bush.png b/public/textures/biomeswevegone/hydrangea_bush.png new file mode 100644 index 00000000..c7a2504b Binary files /dev/null and b/public/textures/biomeswevegone/hydrangea_bush.png differ diff --git a/public/textures/biomeswevegone/hydrangea_hedge.png b/public/textures/biomeswevegone/hydrangea_hedge.png new file mode 100644 index 00000000..4462b48a Binary files /dev/null and b/public/textures/biomeswevegone/hydrangea_hedge.png differ diff --git a/public/textures/biomeswevegone/imbued_blue_enchanted_wood.png b/public/textures/biomeswevegone/imbued_blue_enchanted_wood.png new file mode 100644 index 00000000..ae9ace69 Binary files /dev/null and b/public/textures/biomeswevegone/imbued_blue_enchanted_wood.png differ diff --git a/public/textures/biomeswevegone/imbued_green_enchanted_wood.png b/public/textures/biomeswevegone/imbued_green_enchanted_wood.png new file mode 100644 index 00000000..75b2d2c4 Binary files /dev/null and b/public/textures/biomeswevegone/imbued_green_enchanted_wood.png differ diff --git a/public/textures/biomeswevegone/incan_lily.png b/public/textures/biomeswevegone/incan_lily.png new file mode 100644 index 00000000..e52f2e0e Binary files /dev/null and b/public/textures/biomeswevegone/incan_lily.png differ diff --git a/public/textures/biomeswevegone/indigo_jacaranda_bush.png b/public/textures/biomeswevegone/indigo_jacaranda_bush.png new file mode 100644 index 00000000..5bb8e87f Binary files /dev/null and b/public/textures/biomeswevegone/indigo_jacaranda_bush.png differ diff --git a/public/textures/biomeswevegone/indigo_jacaranda_leaves.png b/public/textures/biomeswevegone/indigo_jacaranda_leaves.png new file mode 100644 index 00000000..64f50c9d Binary files /dev/null and b/public/textures/biomeswevegone/indigo_jacaranda_leaves.png differ diff --git a/public/textures/biomeswevegone/indigo_jacaranda_sapling.png b/public/textures/biomeswevegone/indigo_jacaranda_sapling.png new file mode 100644 index 00000000..b9138bdc Binary files /dev/null and b/public/textures/biomeswevegone/indigo_jacaranda_sapling.png differ diff --git a/public/textures/biomeswevegone/iris.png b/public/textures/biomeswevegone/iris.png new file mode 100644 index 00000000..05007aae Binary files /dev/null and b/public/textures/biomeswevegone/iris.png differ diff --git a/public/textures/biomeswevegone/ironwood_boat.png b/public/textures/biomeswevegone/ironwood_boat.png new file mode 100644 index 00000000..6c7440e5 Binary files /dev/null and b/public/textures/biomeswevegone/ironwood_boat.png differ diff --git a/public/textures/biomeswevegone/ironwood_bookshelf.png b/public/textures/biomeswevegone/ironwood_bookshelf.png new file mode 100644 index 00000000..d54e8a9b Binary files /dev/null and b/public/textures/biomeswevegone/ironwood_bookshelf.png differ diff --git a/public/textures/biomeswevegone/ironwood_button.png b/public/textures/biomeswevegone/ironwood_button.png new file mode 100644 index 00000000..a241e97c Binary files /dev/null and b/public/textures/biomeswevegone/ironwood_button.png differ diff --git a/public/textures/biomeswevegone/ironwood_chest_boat.png b/public/textures/biomeswevegone/ironwood_chest_boat.png new file mode 100644 index 00000000..50f0c108 Binary files /dev/null and b/public/textures/biomeswevegone/ironwood_chest_boat.png differ diff --git a/public/textures/biomeswevegone/ironwood_crafting_table.png b/public/textures/biomeswevegone/ironwood_crafting_table.png new file mode 100644 index 00000000..8d8f0e7f Binary files /dev/null and b/public/textures/biomeswevegone/ironwood_crafting_table.png differ diff --git a/public/textures/biomeswevegone/ironwood_door.png b/public/textures/biomeswevegone/ironwood_door.png new file mode 100644 index 00000000..82b565c6 Binary files /dev/null and b/public/textures/biomeswevegone/ironwood_door.png differ diff --git a/public/textures/biomeswevegone/ironwood_fence.png b/public/textures/biomeswevegone/ironwood_fence.png new file mode 100644 index 00000000..42e8ae90 Binary files /dev/null and b/public/textures/biomeswevegone/ironwood_fence.png differ diff --git a/public/textures/biomeswevegone/ironwood_fence_gate.png b/public/textures/biomeswevegone/ironwood_fence_gate.png new file mode 100644 index 00000000..0668a6aa Binary files /dev/null and b/public/textures/biomeswevegone/ironwood_fence_gate.png differ diff --git a/public/textures/biomeswevegone/ironwood_hanging_sign.png b/public/textures/biomeswevegone/ironwood_hanging_sign.png new file mode 100644 index 00000000..ed84e8b2 Binary files /dev/null and b/public/textures/biomeswevegone/ironwood_hanging_sign.png differ diff --git a/public/textures/biomeswevegone/ironwood_leaves.png b/public/textures/biomeswevegone/ironwood_leaves.png new file mode 100644 index 00000000..cfc4b72a Binary files /dev/null and b/public/textures/biomeswevegone/ironwood_leaves.png differ diff --git a/public/textures/biomeswevegone/ironwood_log.png b/public/textures/biomeswevegone/ironwood_log.png new file mode 100644 index 00000000..2963fed4 Binary files /dev/null and b/public/textures/biomeswevegone/ironwood_log.png differ diff --git a/public/textures/biomeswevegone/ironwood_planks.png b/public/textures/biomeswevegone/ironwood_planks.png new file mode 100644 index 00000000..0c11abf6 Binary files /dev/null and b/public/textures/biomeswevegone/ironwood_planks.png differ diff --git a/public/textures/biomeswevegone/ironwood_pressure_plate.png b/public/textures/biomeswevegone/ironwood_pressure_plate.png new file mode 100644 index 00000000..b296e09e Binary files /dev/null and b/public/textures/biomeswevegone/ironwood_pressure_plate.png differ diff --git a/public/textures/biomeswevegone/ironwood_sapling.png b/public/textures/biomeswevegone/ironwood_sapling.png new file mode 100644 index 00000000..125abff1 Binary files /dev/null and b/public/textures/biomeswevegone/ironwood_sapling.png differ diff --git a/public/textures/biomeswevegone/ironwood_sign.png b/public/textures/biomeswevegone/ironwood_sign.png new file mode 100644 index 00000000..7e15e23e Binary files /dev/null and b/public/textures/biomeswevegone/ironwood_sign.png differ diff --git a/public/textures/biomeswevegone/ironwood_slab.png b/public/textures/biomeswevegone/ironwood_slab.png new file mode 100644 index 00000000..ed3d89ca Binary files /dev/null and b/public/textures/biomeswevegone/ironwood_slab.png differ diff --git a/public/textures/biomeswevegone/ironwood_stairs.png b/public/textures/biomeswevegone/ironwood_stairs.png new file mode 100644 index 00000000..beaa6fdd Binary files /dev/null and b/public/textures/biomeswevegone/ironwood_stairs.png differ diff --git a/public/textures/biomeswevegone/ironwood_trapdoor.png b/public/textures/biomeswevegone/ironwood_trapdoor.png new file mode 100644 index 00000000..15aced8d Binary files /dev/null and b/public/textures/biomeswevegone/ironwood_trapdoor.png differ diff --git a/public/textures/biomeswevegone/ironwood_wood.png b/public/textures/biomeswevegone/ironwood_wood.png new file mode 100644 index 00000000..a7f09a30 Binary files /dev/null and b/public/textures/biomeswevegone/ironwood_wood.png differ diff --git a/public/textures/biomeswevegone/jacaranda_boat.png b/public/textures/biomeswevegone/jacaranda_boat.png new file mode 100644 index 00000000..be7ecf03 Binary files /dev/null and b/public/textures/biomeswevegone/jacaranda_boat.png differ diff --git a/public/textures/biomeswevegone/jacaranda_bookshelf.png b/public/textures/biomeswevegone/jacaranda_bookshelf.png new file mode 100644 index 00000000..8450806d Binary files /dev/null and b/public/textures/biomeswevegone/jacaranda_bookshelf.png differ diff --git a/public/textures/biomeswevegone/jacaranda_bush.png b/public/textures/biomeswevegone/jacaranda_bush.png new file mode 100644 index 00000000..6a11c0f0 Binary files /dev/null and b/public/textures/biomeswevegone/jacaranda_bush.png differ diff --git a/public/textures/biomeswevegone/jacaranda_button.png b/public/textures/biomeswevegone/jacaranda_button.png new file mode 100644 index 00000000..701e0fa7 Binary files /dev/null and b/public/textures/biomeswevegone/jacaranda_button.png differ diff --git a/public/textures/biomeswevegone/jacaranda_chest_boat.png b/public/textures/biomeswevegone/jacaranda_chest_boat.png new file mode 100644 index 00000000..a6a1c152 Binary files /dev/null and b/public/textures/biomeswevegone/jacaranda_chest_boat.png differ diff --git a/public/textures/biomeswevegone/jacaranda_crafting_table.png b/public/textures/biomeswevegone/jacaranda_crafting_table.png new file mode 100644 index 00000000..15506b6d Binary files /dev/null and b/public/textures/biomeswevegone/jacaranda_crafting_table.png differ diff --git a/public/textures/biomeswevegone/jacaranda_door.png b/public/textures/biomeswevegone/jacaranda_door.png new file mode 100644 index 00000000..c712870c Binary files /dev/null and b/public/textures/biomeswevegone/jacaranda_door.png differ diff --git a/public/textures/biomeswevegone/jacaranda_fence.png b/public/textures/biomeswevegone/jacaranda_fence.png new file mode 100644 index 00000000..d7d751e5 Binary files /dev/null and b/public/textures/biomeswevegone/jacaranda_fence.png differ diff --git a/public/textures/biomeswevegone/jacaranda_fence_gate.png b/public/textures/biomeswevegone/jacaranda_fence_gate.png new file mode 100644 index 00000000..4d39b540 Binary files /dev/null and b/public/textures/biomeswevegone/jacaranda_fence_gate.png differ diff --git a/public/textures/biomeswevegone/jacaranda_hanging_sign.png b/public/textures/biomeswevegone/jacaranda_hanging_sign.png new file mode 100644 index 00000000..48ac5c0a Binary files /dev/null and b/public/textures/biomeswevegone/jacaranda_hanging_sign.png differ diff --git a/public/textures/biomeswevegone/jacaranda_leaves.png b/public/textures/biomeswevegone/jacaranda_leaves.png new file mode 100644 index 00000000..8dc3f8fd Binary files /dev/null and b/public/textures/biomeswevegone/jacaranda_leaves.png differ diff --git a/public/textures/biomeswevegone/jacaranda_log.png b/public/textures/biomeswevegone/jacaranda_log.png new file mode 100644 index 00000000..e68e138a Binary files /dev/null and b/public/textures/biomeswevegone/jacaranda_log.png differ diff --git a/public/textures/biomeswevegone/jacaranda_planks.png b/public/textures/biomeswevegone/jacaranda_planks.png new file mode 100644 index 00000000..53358392 Binary files /dev/null and b/public/textures/biomeswevegone/jacaranda_planks.png differ diff --git a/public/textures/biomeswevegone/jacaranda_pressure_plate.png b/public/textures/biomeswevegone/jacaranda_pressure_plate.png new file mode 100644 index 00000000..b38ee456 Binary files /dev/null and b/public/textures/biomeswevegone/jacaranda_pressure_plate.png differ diff --git a/public/textures/biomeswevegone/jacaranda_sapling.png b/public/textures/biomeswevegone/jacaranda_sapling.png new file mode 100644 index 00000000..ccfd28cf Binary files /dev/null and b/public/textures/biomeswevegone/jacaranda_sapling.png differ diff --git a/public/textures/biomeswevegone/jacaranda_sign.png b/public/textures/biomeswevegone/jacaranda_sign.png new file mode 100644 index 00000000..8188fefb Binary files /dev/null and b/public/textures/biomeswevegone/jacaranda_sign.png differ diff --git a/public/textures/biomeswevegone/jacaranda_slab.png b/public/textures/biomeswevegone/jacaranda_slab.png new file mode 100644 index 00000000..bb558bbc Binary files /dev/null and b/public/textures/biomeswevegone/jacaranda_slab.png differ diff --git a/public/textures/biomeswevegone/jacaranda_stairs.png b/public/textures/biomeswevegone/jacaranda_stairs.png new file mode 100644 index 00000000..77cb7478 Binary files /dev/null and b/public/textures/biomeswevegone/jacaranda_stairs.png differ diff --git a/public/textures/biomeswevegone/jacaranda_trapdoor.png b/public/textures/biomeswevegone/jacaranda_trapdoor.png new file mode 100644 index 00000000..0754e002 Binary files /dev/null and b/public/textures/biomeswevegone/jacaranda_trapdoor.png differ diff --git a/public/textures/biomeswevegone/jacaranda_wood.png b/public/textures/biomeswevegone/jacaranda_wood.png new file mode 100644 index 00000000..bd0a4294 Binary files /dev/null and b/public/textures/biomeswevegone/jacaranda_wood.png differ diff --git a/public/textures/biomeswevegone/japanese_orchid.png b/public/textures/biomeswevegone/japanese_orchid.png new file mode 100644 index 00000000..d71cf503 Binary files /dev/null and b/public/textures/biomeswevegone/japanese_orchid.png differ diff --git a/public/textures/biomeswevegone/kovan_flower.png b/public/textures/biomeswevegone/kovan_flower.png new file mode 100644 index 00000000..ef101935 Binary files /dev/null and b/public/textures/biomeswevegone/kovan_flower.png differ diff --git a/public/textures/biomeswevegone/lazarus_bellflower.png b/public/textures/biomeswevegone/lazarus_bellflower.png new file mode 100644 index 00000000..0f92f962 Binary files /dev/null and b/public/textures/biomeswevegone/lazarus_bellflower.png differ diff --git a/public/textures/biomeswevegone/leaf_pile.png b/public/textures/biomeswevegone/leaf_pile.png new file mode 100644 index 00000000..c5b378ae Binary files /dev/null and b/public/textures/biomeswevegone/leaf_pile.png differ diff --git a/public/textures/biomeswevegone/lollipop_flower.png b/public/textures/biomeswevegone/lollipop_flower.png new file mode 100644 index 00000000..6841d717 Binary files /dev/null and b/public/textures/biomeswevegone/lollipop_flower.png differ diff --git a/public/textures/biomeswevegone/lush_dirt.png b/public/textures/biomeswevegone/lush_dirt.png new file mode 100644 index 00000000..198c0321 Binary files /dev/null and b/public/textures/biomeswevegone/lush_dirt.png differ diff --git a/public/textures/biomeswevegone/lush_dirt_path.png b/public/textures/biomeswevegone/lush_dirt_path.png new file mode 100644 index 00000000..789d62c0 Binary files /dev/null and b/public/textures/biomeswevegone/lush_dirt_path.png differ diff --git a/public/textures/biomeswevegone/lush_farmland.png b/public/textures/biomeswevegone/lush_farmland.png new file mode 100644 index 00000000..4ec8e663 Binary files /dev/null and b/public/textures/biomeswevegone/lush_farmland.png differ diff --git a/public/textures/biomeswevegone/lush_grass_block.png b/public/textures/biomeswevegone/lush_grass_block.png new file mode 100644 index 00000000..b1c8dab7 Binary files /dev/null and b/public/textures/biomeswevegone/lush_grass_block.png differ diff --git a/public/textures/biomeswevegone/magenta_amaranth.png b/public/textures/biomeswevegone/magenta_amaranth.png new file mode 100644 index 00000000..de9eca71 Binary files /dev/null and b/public/textures/biomeswevegone/magenta_amaranth.png differ diff --git a/public/textures/biomeswevegone/magenta_pitcher_plant.png b/public/textures/biomeswevegone/magenta_pitcher_plant.png new file mode 100644 index 00000000..a68273c3 Binary files /dev/null and b/public/textures/biomeswevegone/magenta_pitcher_plant.png differ diff --git a/public/textures/biomeswevegone/magenta_tulip.png b/public/textures/biomeswevegone/magenta_tulip.png new file mode 100644 index 00000000..b52ea048 Binary files /dev/null and b/public/textures/biomeswevegone/magenta_tulip.png differ diff --git a/public/textures/biomeswevegone/mahogany_boat.png b/public/textures/biomeswevegone/mahogany_boat.png new file mode 100644 index 00000000..e6213020 Binary files /dev/null and b/public/textures/biomeswevegone/mahogany_boat.png differ diff --git a/public/textures/biomeswevegone/mahogany_bookshelf.png b/public/textures/biomeswevegone/mahogany_bookshelf.png new file mode 100644 index 00000000..9ea743f5 Binary files /dev/null and b/public/textures/biomeswevegone/mahogany_bookshelf.png differ diff --git a/public/textures/biomeswevegone/mahogany_button.png b/public/textures/biomeswevegone/mahogany_button.png new file mode 100644 index 00000000..93b86d26 Binary files /dev/null and b/public/textures/biomeswevegone/mahogany_button.png differ diff --git a/public/textures/biomeswevegone/mahogany_chest_boat.png b/public/textures/biomeswevegone/mahogany_chest_boat.png new file mode 100644 index 00000000..45643401 Binary files /dev/null and b/public/textures/biomeswevegone/mahogany_chest_boat.png differ diff --git a/public/textures/biomeswevegone/mahogany_crafting_table.png b/public/textures/biomeswevegone/mahogany_crafting_table.png new file mode 100644 index 00000000..4d3f8995 Binary files /dev/null and b/public/textures/biomeswevegone/mahogany_crafting_table.png differ diff --git a/public/textures/biomeswevegone/mahogany_door.png b/public/textures/biomeswevegone/mahogany_door.png new file mode 100644 index 00000000..2c0a4113 Binary files /dev/null and b/public/textures/biomeswevegone/mahogany_door.png differ diff --git a/public/textures/biomeswevegone/mahogany_fence.png b/public/textures/biomeswevegone/mahogany_fence.png new file mode 100644 index 00000000..6ff01fa1 Binary files /dev/null and b/public/textures/biomeswevegone/mahogany_fence.png differ diff --git a/public/textures/biomeswevegone/mahogany_fence_gate.png b/public/textures/biomeswevegone/mahogany_fence_gate.png new file mode 100644 index 00000000..bee92f57 Binary files /dev/null and b/public/textures/biomeswevegone/mahogany_fence_gate.png differ diff --git a/public/textures/biomeswevegone/mahogany_hanging_sign.png b/public/textures/biomeswevegone/mahogany_hanging_sign.png new file mode 100644 index 00000000..23f4b985 Binary files /dev/null and b/public/textures/biomeswevegone/mahogany_hanging_sign.png differ diff --git a/public/textures/biomeswevegone/mahogany_leaves.png b/public/textures/biomeswevegone/mahogany_leaves.png new file mode 100644 index 00000000..f0da0a2d Binary files /dev/null and b/public/textures/biomeswevegone/mahogany_leaves.png differ diff --git a/public/textures/biomeswevegone/mahogany_log.png b/public/textures/biomeswevegone/mahogany_log.png new file mode 100644 index 00000000..b96fcee7 Binary files /dev/null and b/public/textures/biomeswevegone/mahogany_log.png differ diff --git a/public/textures/biomeswevegone/mahogany_planks.png b/public/textures/biomeswevegone/mahogany_planks.png new file mode 100644 index 00000000..af6b3b14 Binary files /dev/null and b/public/textures/biomeswevegone/mahogany_planks.png differ diff --git a/public/textures/biomeswevegone/mahogany_pressure_plate.png b/public/textures/biomeswevegone/mahogany_pressure_plate.png new file mode 100644 index 00000000..b8f88a12 Binary files /dev/null and b/public/textures/biomeswevegone/mahogany_pressure_plate.png differ diff --git a/public/textures/biomeswevegone/mahogany_sapling.png b/public/textures/biomeswevegone/mahogany_sapling.png new file mode 100644 index 00000000..033dc3f5 Binary files /dev/null and b/public/textures/biomeswevegone/mahogany_sapling.png differ diff --git a/public/textures/biomeswevegone/mahogany_sign.png b/public/textures/biomeswevegone/mahogany_sign.png new file mode 100644 index 00000000..c3dcd207 Binary files /dev/null and b/public/textures/biomeswevegone/mahogany_sign.png differ diff --git a/public/textures/biomeswevegone/mahogany_slab.png b/public/textures/biomeswevegone/mahogany_slab.png new file mode 100644 index 00000000..934cfcc2 Binary files /dev/null and b/public/textures/biomeswevegone/mahogany_slab.png differ diff --git a/public/textures/biomeswevegone/mahogany_stairs.png b/public/textures/biomeswevegone/mahogany_stairs.png new file mode 100644 index 00000000..d9dd2157 Binary files /dev/null and b/public/textures/biomeswevegone/mahogany_stairs.png differ diff --git a/public/textures/biomeswevegone/mahogany_trapdoor.png b/public/textures/biomeswevegone/mahogany_trapdoor.png new file mode 100644 index 00000000..0a2e305b Binary files /dev/null and b/public/textures/biomeswevegone/mahogany_trapdoor.png differ diff --git a/public/textures/biomeswevegone/mahogany_wood.png b/public/textures/biomeswevegone/mahogany_wood.png new file mode 100644 index 00000000..7d4825a1 Binary files /dev/null and b/public/textures/biomeswevegone/mahogany_wood.png differ diff --git a/public/textures/biomeswevegone/man_o_war_bucket.png b/public/textures/biomeswevegone/man_o_war_bucket.png new file mode 100644 index 00000000..c65a9189 Binary files /dev/null and b/public/textures/biomeswevegone/man_o_war_bucket.png differ diff --git a/public/textures/biomeswevegone/man_o_war_spawn_egg.png b/public/textures/biomeswevegone/man_o_war_spawn_egg.png new file mode 100644 index 00000000..695e26ff Binary files /dev/null and b/public/textures/biomeswevegone/man_o_war_spawn_egg.png differ diff --git a/public/textures/biomeswevegone/maple_boat.png b/public/textures/biomeswevegone/maple_boat.png new file mode 100644 index 00000000..65520f8f Binary files /dev/null and b/public/textures/biomeswevegone/maple_boat.png differ diff --git a/public/textures/biomeswevegone/maple_bookshelf.png b/public/textures/biomeswevegone/maple_bookshelf.png new file mode 100644 index 00000000..1c810594 Binary files /dev/null and b/public/textures/biomeswevegone/maple_bookshelf.png differ diff --git a/public/textures/biomeswevegone/maple_button.png b/public/textures/biomeswevegone/maple_button.png new file mode 100644 index 00000000..5ec8070f Binary files /dev/null and b/public/textures/biomeswevegone/maple_button.png differ diff --git a/public/textures/biomeswevegone/maple_chest_boat.png b/public/textures/biomeswevegone/maple_chest_boat.png new file mode 100644 index 00000000..a75be9c0 Binary files /dev/null and b/public/textures/biomeswevegone/maple_chest_boat.png differ diff --git a/public/textures/biomeswevegone/maple_crafting_table.png b/public/textures/biomeswevegone/maple_crafting_table.png new file mode 100644 index 00000000..8061f711 Binary files /dev/null and b/public/textures/biomeswevegone/maple_crafting_table.png differ diff --git a/public/textures/biomeswevegone/maple_door.png b/public/textures/biomeswevegone/maple_door.png new file mode 100644 index 00000000..7b40b6e9 Binary files /dev/null and b/public/textures/biomeswevegone/maple_door.png differ diff --git a/public/textures/biomeswevegone/maple_fence.png b/public/textures/biomeswevegone/maple_fence.png new file mode 100644 index 00000000..47acd4b1 Binary files /dev/null and b/public/textures/biomeswevegone/maple_fence.png differ diff --git a/public/textures/biomeswevegone/maple_fence_gate.png b/public/textures/biomeswevegone/maple_fence_gate.png new file mode 100644 index 00000000..69d1f488 Binary files /dev/null and b/public/textures/biomeswevegone/maple_fence_gate.png differ diff --git a/public/textures/biomeswevegone/maple_hanging_sign.png b/public/textures/biomeswevegone/maple_hanging_sign.png new file mode 100644 index 00000000..aee14154 Binary files /dev/null and b/public/textures/biomeswevegone/maple_hanging_sign.png differ diff --git a/public/textures/biomeswevegone/maple_leaves.png b/public/textures/biomeswevegone/maple_leaves.png new file mode 100644 index 00000000..7ea83913 Binary files /dev/null and b/public/textures/biomeswevegone/maple_leaves.png differ diff --git a/public/textures/biomeswevegone/maple_log.png b/public/textures/biomeswevegone/maple_log.png new file mode 100644 index 00000000..1b02ac6f Binary files /dev/null and b/public/textures/biomeswevegone/maple_log.png differ diff --git a/public/textures/biomeswevegone/maple_planks.png b/public/textures/biomeswevegone/maple_planks.png new file mode 100644 index 00000000..fc46b850 Binary files /dev/null and b/public/textures/biomeswevegone/maple_planks.png differ diff --git a/public/textures/biomeswevegone/maple_pressure_plate.png b/public/textures/biomeswevegone/maple_pressure_plate.png new file mode 100644 index 00000000..571acc0c Binary files /dev/null and b/public/textures/biomeswevegone/maple_pressure_plate.png differ diff --git a/public/textures/biomeswevegone/maple_sapling.png b/public/textures/biomeswevegone/maple_sapling.png new file mode 100644 index 00000000..f3e00794 Binary files /dev/null and b/public/textures/biomeswevegone/maple_sapling.png differ diff --git a/public/textures/biomeswevegone/maple_sign.png b/public/textures/biomeswevegone/maple_sign.png new file mode 100644 index 00000000..22d54fbe Binary files /dev/null and b/public/textures/biomeswevegone/maple_sign.png differ diff --git a/public/textures/biomeswevegone/maple_slab.png b/public/textures/biomeswevegone/maple_slab.png new file mode 100644 index 00000000..4a2ed1aa Binary files /dev/null and b/public/textures/biomeswevegone/maple_slab.png differ diff --git a/public/textures/biomeswevegone/maple_stairs.png b/public/textures/biomeswevegone/maple_stairs.png new file mode 100644 index 00000000..8e6cf9a1 Binary files /dev/null and b/public/textures/biomeswevegone/maple_stairs.png differ diff --git a/public/textures/biomeswevegone/maple_trapdoor.png b/public/textures/biomeswevegone/maple_trapdoor.png new file mode 100644 index 00000000..a416d6a3 Binary files /dev/null and b/public/textures/biomeswevegone/maple_trapdoor.png differ diff --git a/public/textures/biomeswevegone/maple_wood.png b/public/textures/biomeswevegone/maple_wood.png new file mode 100644 index 00000000..c6fa356f Binary files /dev/null and b/public/textures/biomeswevegone/maple_wood.png differ diff --git a/public/textures/biomeswevegone/mini_cactus.png b/public/textures/biomeswevegone/mini_cactus.png new file mode 100644 index 00000000..5037165d Binary files /dev/null and b/public/textures/biomeswevegone/mini_cactus.png differ diff --git a/public/textures/biomeswevegone/mossy_red_rock_brick_slab.png b/public/textures/biomeswevegone/mossy_red_rock_brick_slab.png new file mode 100644 index 00000000..6f414ef4 Binary files /dev/null and b/public/textures/biomeswevegone/mossy_red_rock_brick_slab.png differ diff --git a/public/textures/biomeswevegone/mossy_red_rock_brick_stairs.png b/public/textures/biomeswevegone/mossy_red_rock_brick_stairs.png new file mode 100644 index 00000000..e2c6b84c Binary files /dev/null and b/public/textures/biomeswevegone/mossy_red_rock_brick_stairs.png differ diff --git a/public/textures/biomeswevegone/mossy_red_rock_brick_wall.png b/public/textures/biomeswevegone/mossy_red_rock_brick_wall.png new file mode 100644 index 00000000..6319f776 Binary files /dev/null and b/public/textures/biomeswevegone/mossy_red_rock_brick_wall.png differ diff --git a/public/textures/biomeswevegone/mossy_red_rock_bricks.png b/public/textures/biomeswevegone/mossy_red_rock_bricks.png new file mode 100644 index 00000000..c62f5d5f Binary files /dev/null and b/public/textures/biomeswevegone/mossy_red_rock_bricks.png differ diff --git a/public/textures/biomeswevegone/mossy_stone.png b/public/textures/biomeswevegone/mossy_stone.png new file mode 100644 index 00000000..abc660ef Binary files /dev/null and b/public/textures/biomeswevegone/mossy_stone.png differ diff --git a/public/textures/biomeswevegone/mossy_stone_slab.png b/public/textures/biomeswevegone/mossy_stone_slab.png new file mode 100644 index 00000000..4e484d40 Binary files /dev/null and b/public/textures/biomeswevegone/mossy_stone_slab.png differ diff --git a/public/textures/biomeswevegone/mossy_stone_stairs.png b/public/textures/biomeswevegone/mossy_stone_stairs.png new file mode 100644 index 00000000..6cf1418b Binary files /dev/null and b/public/textures/biomeswevegone/mossy_stone_stairs.png differ diff --git a/public/textures/biomeswevegone/mossy_stone_wall.png b/public/textures/biomeswevegone/mossy_stone_wall.png new file mode 100644 index 00000000..f15d3051 Binary files /dev/null and b/public/textures/biomeswevegone/mossy_stone_wall.png differ diff --git a/public/textures/biomeswevegone/music_disc_pixie_club.png b/public/textures/biomeswevegone/music_disc_pixie_club.png new file mode 100644 index 00000000..ea45a7bb Binary files /dev/null and b/public/textures/biomeswevegone/music_disc_pixie_club.png differ diff --git a/public/textures/biomeswevegone/oddion_bulb.png b/public/textures/biomeswevegone/oddion_bulb.png new file mode 100644 index 00000000..10c31ef8 Binary files /dev/null and b/public/textures/biomeswevegone/oddion_bulb.png differ diff --git a/public/textures/biomeswevegone/oddion_spawn_egg.png b/public/textures/biomeswevegone/oddion_spawn_egg.png new file mode 100644 index 00000000..981d745f Binary files /dev/null and b/public/textures/biomeswevegone/oddion_spawn_egg.png differ diff --git a/public/textures/biomeswevegone/orange_amaranth.png b/public/textures/biomeswevegone/orange_amaranth.png new file mode 100644 index 00000000..538ec2a8 Binary files /dev/null and b/public/textures/biomeswevegone/orange_amaranth.png differ diff --git a/public/textures/biomeswevegone/orange_birch_leaves.png b/public/textures/biomeswevegone/orange_birch_leaves.png new file mode 100644 index 00000000..60c05937 Binary files /dev/null and b/public/textures/biomeswevegone/orange_birch_leaves.png differ diff --git a/public/textures/biomeswevegone/orange_birch_sapling.png b/public/textures/biomeswevegone/orange_birch_sapling.png new file mode 100644 index 00000000..f814582e Binary files /dev/null and b/public/textures/biomeswevegone/orange_birch_sapling.png differ diff --git a/public/textures/biomeswevegone/orange_daisy.png b/public/textures/biomeswevegone/orange_daisy.png new file mode 100644 index 00000000..112e2c32 Binary files /dev/null and b/public/textures/biomeswevegone/orange_daisy.png differ diff --git a/public/textures/biomeswevegone/orange_oak_leaves.png b/public/textures/biomeswevegone/orange_oak_leaves.png new file mode 100644 index 00000000..253bce65 Binary files /dev/null and b/public/textures/biomeswevegone/orange_oak_leaves.png differ diff --git a/public/textures/biomeswevegone/orange_oak_sapling.png b/public/textures/biomeswevegone/orange_oak_sapling.png new file mode 100644 index 00000000..7afbf552 Binary files /dev/null and b/public/textures/biomeswevegone/orange_oak_sapling.png differ diff --git a/public/textures/biomeswevegone/orange_spruce_leaves.png b/public/textures/biomeswevegone/orange_spruce_leaves.png new file mode 100644 index 00000000..203cd824 Binary files /dev/null and b/public/textures/biomeswevegone/orange_spruce_leaves.png differ diff --git a/public/textures/biomeswevegone/orange_spruce_sapling.png b/public/textures/biomeswevegone/orange_spruce_sapling.png new file mode 100644 index 00000000..880013e5 Binary files /dev/null and b/public/textures/biomeswevegone/orange_spruce_sapling.png differ diff --git a/public/textures/biomeswevegone/orchard_leaves.png b/public/textures/biomeswevegone/orchard_leaves.png new file mode 100644 index 00000000..edf873f8 Binary files /dev/null and b/public/textures/biomeswevegone/orchard_leaves.png differ diff --git a/public/textures/biomeswevegone/orchard_sapling.png b/public/textures/biomeswevegone/orchard_sapling.png new file mode 100644 index 00000000..924a1e98 Binary files /dev/null and b/public/textures/biomeswevegone/orchard_sapling.png differ diff --git a/public/textures/biomeswevegone/osiria_rose.png b/public/textures/biomeswevegone/osiria_rose.png new file mode 100644 index 00000000..ab1dc6af Binary files /dev/null and b/public/textures/biomeswevegone/osiria_rose.png differ diff --git a/public/textures/biomeswevegone/overgrown_dacite.png b/public/textures/biomeswevegone/overgrown_dacite.png new file mode 100644 index 00000000..683686a1 Binary files /dev/null and b/public/textures/biomeswevegone/overgrown_dacite.png differ diff --git a/public/textures/biomeswevegone/overgrown_stone.png b/public/textures/biomeswevegone/overgrown_stone.png new file mode 100644 index 00000000..683686a1 Binary files /dev/null and b/public/textures/biomeswevegone/overgrown_stone.png differ diff --git a/public/textures/biomeswevegone/packed_black_ice.png b/public/textures/biomeswevegone/packed_black_ice.png new file mode 100644 index 00000000..4b33c4e1 Binary files /dev/null and b/public/textures/biomeswevegone/packed_black_ice.png differ diff --git a/public/textures/biomeswevegone/packed_borealis_ice.png b/public/textures/biomeswevegone/packed_borealis_ice.png new file mode 100644 index 00000000..61328d6c Binary files /dev/null and b/public/textures/biomeswevegone/packed_borealis_ice.png differ diff --git a/public/textures/biomeswevegone/packed_pale_mud.png b/public/textures/biomeswevegone/packed_pale_mud.png new file mode 100644 index 00000000..48480951 Binary files /dev/null and b/public/textures/biomeswevegone/packed_pale_mud.png differ diff --git a/public/textures/biomeswevegone/pale_jack_o_lantern.png b/public/textures/biomeswevegone/pale_jack_o_lantern.png new file mode 100644 index 00000000..89bcec49 Binary files /dev/null and b/public/textures/biomeswevegone/pale_jack_o_lantern.png differ diff --git a/public/textures/biomeswevegone/pale_mud.png b/public/textures/biomeswevegone/pale_mud.png new file mode 100644 index 00000000..a9411159 Binary files /dev/null and b/public/textures/biomeswevegone/pale_mud.png differ diff --git a/public/textures/biomeswevegone/pale_mud_bricks.png b/public/textures/biomeswevegone/pale_mud_bricks.png new file mode 100644 index 00000000..3f7e4433 Binary files /dev/null and b/public/textures/biomeswevegone/pale_mud_bricks.png differ diff --git a/public/textures/biomeswevegone/pale_mud_bricks_slab.png b/public/textures/biomeswevegone/pale_mud_bricks_slab.png new file mode 100644 index 00000000..bd9d6995 Binary files /dev/null and b/public/textures/biomeswevegone/pale_mud_bricks_slab.png differ diff --git a/public/textures/biomeswevegone/pale_mud_bricks_stairs.png b/public/textures/biomeswevegone/pale_mud_bricks_stairs.png new file mode 100644 index 00000000..4e37ef0d Binary files /dev/null and b/public/textures/biomeswevegone/pale_mud_bricks_stairs.png differ diff --git a/public/textures/biomeswevegone/pale_mud_bricks_wall.png b/public/textures/biomeswevegone/pale_mud_bricks_wall.png new file mode 100644 index 00000000..8325bb14 Binary files /dev/null and b/public/textures/biomeswevegone/pale_mud_bricks_wall.png differ diff --git a/public/textures/biomeswevegone/pale_pumpkin.png b/public/textures/biomeswevegone/pale_pumpkin.png new file mode 100644 index 00000000..b05ecf2d Binary files /dev/null and b/public/textures/biomeswevegone/pale_pumpkin.png differ diff --git a/public/textures/biomeswevegone/pale_pumpkin_seeds.png b/public/textures/biomeswevegone/pale_pumpkin_seeds.png new file mode 100644 index 00000000..fc9eb4b1 Binary files /dev/null and b/public/textures/biomeswevegone/pale_pumpkin_seeds.png differ diff --git a/public/textures/biomeswevegone/palm_boat.png b/public/textures/biomeswevegone/palm_boat.png new file mode 100644 index 00000000..00f88804 Binary files /dev/null and b/public/textures/biomeswevegone/palm_boat.png differ diff --git a/public/textures/biomeswevegone/palm_bookshelf.png b/public/textures/biomeswevegone/palm_bookshelf.png new file mode 100644 index 00000000..a195f1a5 Binary files /dev/null and b/public/textures/biomeswevegone/palm_bookshelf.png differ diff --git a/public/textures/biomeswevegone/palm_button.png b/public/textures/biomeswevegone/palm_button.png new file mode 100644 index 00000000..40bc7991 Binary files /dev/null and b/public/textures/biomeswevegone/palm_button.png differ diff --git a/public/textures/biomeswevegone/palm_chest_boat.png b/public/textures/biomeswevegone/palm_chest_boat.png new file mode 100644 index 00000000..a13c47f7 Binary files /dev/null and b/public/textures/biomeswevegone/palm_chest_boat.png differ diff --git a/public/textures/biomeswevegone/palm_crafting_table.png b/public/textures/biomeswevegone/palm_crafting_table.png new file mode 100644 index 00000000..a53cb7c4 Binary files /dev/null and b/public/textures/biomeswevegone/palm_crafting_table.png differ diff --git a/public/textures/biomeswevegone/palm_door.png b/public/textures/biomeswevegone/palm_door.png new file mode 100644 index 00000000..57f642d3 Binary files /dev/null and b/public/textures/biomeswevegone/palm_door.png differ diff --git a/public/textures/biomeswevegone/palm_fence.png b/public/textures/biomeswevegone/palm_fence.png new file mode 100644 index 00000000..3c17924a Binary files /dev/null and b/public/textures/biomeswevegone/palm_fence.png differ diff --git a/public/textures/biomeswevegone/palm_fence_gate.png b/public/textures/biomeswevegone/palm_fence_gate.png new file mode 100644 index 00000000..06bfb6d5 Binary files /dev/null and b/public/textures/biomeswevegone/palm_fence_gate.png differ diff --git a/public/textures/biomeswevegone/palm_hanging_sign.png b/public/textures/biomeswevegone/palm_hanging_sign.png new file mode 100644 index 00000000..297a632b Binary files /dev/null and b/public/textures/biomeswevegone/palm_hanging_sign.png differ diff --git a/public/textures/biomeswevegone/palm_leaves.png b/public/textures/biomeswevegone/palm_leaves.png new file mode 100644 index 00000000..b1bb4ae2 Binary files /dev/null and b/public/textures/biomeswevegone/palm_leaves.png differ diff --git a/public/textures/biomeswevegone/palm_log.png b/public/textures/biomeswevegone/palm_log.png new file mode 100644 index 00000000..56be9476 Binary files /dev/null and b/public/textures/biomeswevegone/palm_log.png differ diff --git a/public/textures/biomeswevegone/palm_planks.png b/public/textures/biomeswevegone/palm_planks.png new file mode 100644 index 00000000..4084d0e0 Binary files /dev/null and b/public/textures/biomeswevegone/palm_planks.png differ diff --git a/public/textures/biomeswevegone/palm_pressure_plate.png b/public/textures/biomeswevegone/palm_pressure_plate.png new file mode 100644 index 00000000..aea36147 Binary files /dev/null and b/public/textures/biomeswevegone/palm_pressure_plate.png differ diff --git a/public/textures/biomeswevegone/palm_sapling.png b/public/textures/biomeswevegone/palm_sapling.png new file mode 100644 index 00000000..f011cf79 Binary files /dev/null and b/public/textures/biomeswevegone/palm_sapling.png differ diff --git a/public/textures/biomeswevegone/palm_sign.png b/public/textures/biomeswevegone/palm_sign.png new file mode 100644 index 00000000..b5f5021b Binary files /dev/null and b/public/textures/biomeswevegone/palm_sign.png differ diff --git a/public/textures/biomeswevegone/palm_slab.png b/public/textures/biomeswevegone/palm_slab.png new file mode 100644 index 00000000..37bd739d Binary files /dev/null and b/public/textures/biomeswevegone/palm_slab.png differ diff --git a/public/textures/biomeswevegone/palm_stairs.png b/public/textures/biomeswevegone/palm_stairs.png new file mode 100644 index 00000000..52832b50 Binary files /dev/null and b/public/textures/biomeswevegone/palm_stairs.png differ diff --git a/public/textures/biomeswevegone/palm_trapdoor.png b/public/textures/biomeswevegone/palm_trapdoor.png new file mode 100644 index 00000000..4c80a048 Binary files /dev/null and b/public/textures/biomeswevegone/palm_trapdoor.png differ diff --git a/public/textures/biomeswevegone/palm_wood.png b/public/textures/biomeswevegone/palm_wood.png new file mode 100644 index 00000000..20f2751b Binary files /dev/null and b/public/textures/biomeswevegone/palm_wood.png differ diff --git a/public/textures/biomeswevegone/palo_verde_leaves.png b/public/textures/biomeswevegone/palo_verde_leaves.png new file mode 100644 index 00000000..82378daf Binary files /dev/null and b/public/textures/biomeswevegone/palo_verde_leaves.png differ diff --git a/public/textures/biomeswevegone/palo_verde_log.png b/public/textures/biomeswevegone/palo_verde_log.png new file mode 100644 index 00000000..f95e2845 Binary files /dev/null and b/public/textures/biomeswevegone/palo_verde_log.png differ diff --git a/public/textures/biomeswevegone/palo_verde_sapling.png b/public/textures/biomeswevegone/palo_verde_sapling.png new file mode 100644 index 00000000..8c04bf59 Binary files /dev/null and b/public/textures/biomeswevegone/palo_verde_sapling.png differ diff --git a/public/textures/biomeswevegone/palo_verde_wood.png b/public/textures/biomeswevegone/palo_verde_wood.png new file mode 100644 index 00000000..e1f7034e Binary files /dev/null and b/public/textures/biomeswevegone/palo_verde_wood.png differ diff --git a/public/textures/biomeswevegone/peach_leather_flower.png b/public/textures/biomeswevegone/peach_leather_flower.png new file mode 100644 index 00000000..afde2734 Binary files /dev/null and b/public/textures/biomeswevegone/peach_leather_flower.png differ diff --git a/public/textures/biomeswevegone/peat.png b/public/textures/biomeswevegone/peat.png new file mode 100644 index 00000000..581b95b2 Binary files /dev/null and b/public/textures/biomeswevegone/peat.png differ diff --git a/public/textures/biomeswevegone/pine_boat.png b/public/textures/biomeswevegone/pine_boat.png new file mode 100644 index 00000000..41504188 Binary files /dev/null and b/public/textures/biomeswevegone/pine_boat.png differ diff --git a/public/textures/biomeswevegone/pine_bookshelf.png b/public/textures/biomeswevegone/pine_bookshelf.png new file mode 100644 index 00000000..82af85c6 Binary files /dev/null and b/public/textures/biomeswevegone/pine_bookshelf.png differ diff --git a/public/textures/biomeswevegone/pine_button.png b/public/textures/biomeswevegone/pine_button.png new file mode 100644 index 00000000..af9f86bc Binary files /dev/null and b/public/textures/biomeswevegone/pine_button.png differ diff --git a/public/textures/biomeswevegone/pine_chest_boat.png b/public/textures/biomeswevegone/pine_chest_boat.png new file mode 100644 index 00000000..6c327e06 Binary files /dev/null and b/public/textures/biomeswevegone/pine_chest_boat.png differ diff --git a/public/textures/biomeswevegone/pine_crafting_table.png b/public/textures/biomeswevegone/pine_crafting_table.png new file mode 100644 index 00000000..11eea9b0 Binary files /dev/null and b/public/textures/biomeswevegone/pine_crafting_table.png differ diff --git a/public/textures/biomeswevegone/pine_door.png b/public/textures/biomeswevegone/pine_door.png new file mode 100644 index 00000000..d639ff2c Binary files /dev/null and b/public/textures/biomeswevegone/pine_door.png differ diff --git a/public/textures/biomeswevegone/pine_fence.png b/public/textures/biomeswevegone/pine_fence.png new file mode 100644 index 00000000..9c424cf6 Binary files /dev/null and b/public/textures/biomeswevegone/pine_fence.png differ diff --git a/public/textures/biomeswevegone/pine_fence_gate.png b/public/textures/biomeswevegone/pine_fence_gate.png new file mode 100644 index 00000000..288bfd8f Binary files /dev/null and b/public/textures/biomeswevegone/pine_fence_gate.png differ diff --git a/public/textures/biomeswevegone/pine_hanging_sign.png b/public/textures/biomeswevegone/pine_hanging_sign.png new file mode 100644 index 00000000..49bb4315 Binary files /dev/null and b/public/textures/biomeswevegone/pine_hanging_sign.png differ diff --git a/public/textures/biomeswevegone/pine_leaves.png b/public/textures/biomeswevegone/pine_leaves.png new file mode 100644 index 00000000..2cc116b0 Binary files /dev/null and b/public/textures/biomeswevegone/pine_leaves.png differ diff --git a/public/textures/biomeswevegone/pine_log.png b/public/textures/biomeswevegone/pine_log.png new file mode 100644 index 00000000..f1eaa204 Binary files /dev/null and b/public/textures/biomeswevegone/pine_log.png differ diff --git a/public/textures/biomeswevegone/pine_planks.png b/public/textures/biomeswevegone/pine_planks.png new file mode 100644 index 00000000..9edcd9c8 Binary files /dev/null and b/public/textures/biomeswevegone/pine_planks.png differ diff --git a/public/textures/biomeswevegone/pine_pressure_plate.png b/public/textures/biomeswevegone/pine_pressure_plate.png new file mode 100644 index 00000000..76acf0ba Binary files /dev/null and b/public/textures/biomeswevegone/pine_pressure_plate.png differ diff --git a/public/textures/biomeswevegone/pine_sapling.png b/public/textures/biomeswevegone/pine_sapling.png new file mode 100644 index 00000000..92ec5eba Binary files /dev/null and b/public/textures/biomeswevegone/pine_sapling.png differ diff --git a/public/textures/biomeswevegone/pine_sign.png b/public/textures/biomeswevegone/pine_sign.png new file mode 100644 index 00000000..04b460b4 Binary files /dev/null and b/public/textures/biomeswevegone/pine_sign.png differ diff --git a/public/textures/biomeswevegone/pine_slab.png b/public/textures/biomeswevegone/pine_slab.png new file mode 100644 index 00000000..6b6057be Binary files /dev/null and b/public/textures/biomeswevegone/pine_slab.png differ diff --git a/public/textures/biomeswevegone/pine_stairs.png b/public/textures/biomeswevegone/pine_stairs.png new file mode 100644 index 00000000..f8324ad1 Binary files /dev/null and b/public/textures/biomeswevegone/pine_stairs.png differ diff --git a/public/textures/biomeswevegone/pine_trapdoor.png b/public/textures/biomeswevegone/pine_trapdoor.png new file mode 100644 index 00000000..454eb81b Binary files /dev/null and b/public/textures/biomeswevegone/pine_trapdoor.png differ diff --git a/public/textures/biomeswevegone/pine_wood.png b/public/textures/biomeswevegone/pine_wood.png new file mode 100644 index 00000000..82b3c7a8 Binary files /dev/null and b/public/textures/biomeswevegone/pine_wood.png differ diff --git a/public/textures/biomeswevegone/pink_allium.png b/public/textures/biomeswevegone/pink_allium.png new file mode 100644 index 00000000..229d7738 Binary files /dev/null and b/public/textures/biomeswevegone/pink_allium.png differ diff --git a/public/textures/biomeswevegone/pink_allium_flower_bush.png b/public/textures/biomeswevegone/pink_allium_flower_bush.png new file mode 100644 index 00000000..712fe5bc Binary files /dev/null and b/public/textures/biomeswevegone/pink_allium_flower_bush.png differ diff --git a/public/textures/biomeswevegone/pink_allium_petal_block.png b/public/textures/biomeswevegone/pink_allium_petal_block.png new file mode 100644 index 00000000..05e560fe Binary files /dev/null and b/public/textures/biomeswevegone/pink_allium_petal_block.png differ diff --git a/public/textures/biomeswevegone/pink_anemone.png b/public/textures/biomeswevegone/pink_anemone.png new file mode 100644 index 00000000..b0e2ddcd Binary files /dev/null and b/public/textures/biomeswevegone/pink_anemone.png differ diff --git a/public/textures/biomeswevegone/pink_daffodil.png b/public/textures/biomeswevegone/pink_daffodil.png new file mode 100644 index 00000000..468ccb25 Binary files /dev/null and b/public/textures/biomeswevegone/pink_daffodil.png differ diff --git a/public/textures/biomeswevegone/pink_sand.png b/public/textures/biomeswevegone/pink_sand.png new file mode 100644 index 00000000..72da6b1b Binary files /dev/null and b/public/textures/biomeswevegone/pink_sand.png differ diff --git a/public/textures/biomeswevegone/pink_sandstone.png b/public/textures/biomeswevegone/pink_sandstone.png new file mode 100644 index 00000000..ac0aae05 Binary files /dev/null and b/public/textures/biomeswevegone/pink_sandstone.png differ diff --git a/public/textures/biomeswevegone/pink_sandstone_slab.png b/public/textures/biomeswevegone/pink_sandstone_slab.png new file mode 100644 index 00000000..807217f6 Binary files /dev/null and b/public/textures/biomeswevegone/pink_sandstone_slab.png differ diff --git a/public/textures/biomeswevegone/pink_sandstone_stairs.png b/public/textures/biomeswevegone/pink_sandstone_stairs.png new file mode 100644 index 00000000..94a9da99 Binary files /dev/null and b/public/textures/biomeswevegone/pink_sandstone_stairs.png differ diff --git a/public/textures/biomeswevegone/pink_sandstone_wall.png b/public/textures/biomeswevegone/pink_sandstone_wall.png new file mode 100644 index 00000000..e30fea6d Binary files /dev/null and b/public/textures/biomeswevegone/pink_sandstone_wall.png differ diff --git a/public/textures/biomeswevegone/podzol_dacite.png b/public/textures/biomeswevegone/podzol_dacite.png new file mode 100644 index 00000000..c9c14549 Binary files /dev/null and b/public/textures/biomeswevegone/podzol_dacite.png differ diff --git a/public/textures/biomeswevegone/poison_ivy.png b/public/textures/biomeswevegone/poison_ivy.png new file mode 100644 index 00000000..97d49c57 Binary files /dev/null and b/public/textures/biomeswevegone/poison_ivy.png differ diff --git a/public/textures/biomeswevegone/prairie_grass.png b/public/textures/biomeswevegone/prairie_grass.png new file mode 100644 index 00000000..f616f386 Binary files /dev/null and b/public/textures/biomeswevegone/prairie_grass.png differ diff --git a/public/textures/biomeswevegone/prickly_pear_cactus.png b/public/textures/biomeswevegone/prickly_pear_cactus.png new file mode 100644 index 00000000..6508aea3 Binary files /dev/null and b/public/textures/biomeswevegone/prickly_pear_cactus.png differ diff --git a/public/textures/biomeswevegone/protea_flower.png b/public/textures/biomeswevegone/protea_flower.png new file mode 100644 index 00000000..fd985233 Binary files /dev/null and b/public/textures/biomeswevegone/protea_flower.png differ diff --git a/public/textures/biomeswevegone/pumpkin_warden_spawn_egg.png b/public/textures/biomeswevegone/pumpkin_warden_spawn_egg.png new file mode 100644 index 00000000..df5d6191 Binary files /dev/null and b/public/textures/biomeswevegone/pumpkin_warden_spawn_egg.png differ diff --git a/public/textures/biomeswevegone/purple_amaranth.png b/public/textures/biomeswevegone/purple_amaranth.png new file mode 100644 index 00000000..a2652a8b Binary files /dev/null and b/public/textures/biomeswevegone/purple_amaranth.png differ diff --git a/public/textures/biomeswevegone/purple_sage.png b/public/textures/biomeswevegone/purple_sage.png new file mode 100644 index 00000000..0b9eef76 Binary files /dev/null and b/public/textures/biomeswevegone/purple_sage.png differ diff --git a/public/textures/biomeswevegone/purple_sand.png b/public/textures/biomeswevegone/purple_sand.png new file mode 100644 index 00000000..9f1f9c93 Binary files /dev/null and b/public/textures/biomeswevegone/purple_sand.png differ diff --git a/public/textures/biomeswevegone/purple_sandstone.png b/public/textures/biomeswevegone/purple_sandstone.png new file mode 100644 index 00000000..c9a4afba Binary files /dev/null and b/public/textures/biomeswevegone/purple_sandstone.png differ diff --git a/public/textures/biomeswevegone/purple_sandstone_slab.png b/public/textures/biomeswevegone/purple_sandstone_slab.png new file mode 100644 index 00000000..bc9839eb Binary files /dev/null and b/public/textures/biomeswevegone/purple_sandstone_slab.png differ diff --git a/public/textures/biomeswevegone/purple_sandstone_stairs.png b/public/textures/biomeswevegone/purple_sandstone_stairs.png new file mode 100644 index 00000000..7ac6a692 Binary files /dev/null and b/public/textures/biomeswevegone/purple_sandstone_stairs.png differ diff --git a/public/textures/biomeswevegone/purple_sandstone_wall.png b/public/textures/biomeswevegone/purple_sandstone_wall.png new file mode 100644 index 00000000..d3def464 Binary files /dev/null and b/public/textures/biomeswevegone/purple_sandstone_wall.png differ diff --git a/public/textures/biomeswevegone/purple_tulip.png b/public/textures/biomeswevegone/purple_tulip.png new file mode 100644 index 00000000..86525d33 Binary files /dev/null and b/public/textures/biomeswevegone/purple_tulip.png differ diff --git a/public/textures/biomeswevegone/quicksand.png b/public/textures/biomeswevegone/quicksand.png new file mode 100644 index 00000000..ed05c4c9 Binary files /dev/null and b/public/textures/biomeswevegone/quicksand.png differ diff --git a/public/textures/biomeswevegone/rainbow_eucalyptus_boat.png b/public/textures/biomeswevegone/rainbow_eucalyptus_boat.png new file mode 100644 index 00000000..c43a4e69 Binary files /dev/null and b/public/textures/biomeswevegone/rainbow_eucalyptus_boat.png differ diff --git a/public/textures/biomeswevegone/rainbow_eucalyptus_bookshelf.png b/public/textures/biomeswevegone/rainbow_eucalyptus_bookshelf.png new file mode 100644 index 00000000..5d51cf4e Binary files /dev/null and b/public/textures/biomeswevegone/rainbow_eucalyptus_bookshelf.png differ diff --git a/public/textures/biomeswevegone/rainbow_eucalyptus_button.png b/public/textures/biomeswevegone/rainbow_eucalyptus_button.png new file mode 100644 index 00000000..5c231d12 Binary files /dev/null and b/public/textures/biomeswevegone/rainbow_eucalyptus_button.png differ diff --git a/public/textures/biomeswevegone/rainbow_eucalyptus_chest_boat.png b/public/textures/biomeswevegone/rainbow_eucalyptus_chest_boat.png new file mode 100644 index 00000000..a06835f5 Binary files /dev/null and b/public/textures/biomeswevegone/rainbow_eucalyptus_chest_boat.png differ diff --git a/public/textures/biomeswevegone/rainbow_eucalyptus_crafting_table.png b/public/textures/biomeswevegone/rainbow_eucalyptus_crafting_table.png new file mode 100644 index 00000000..f046925d Binary files /dev/null and b/public/textures/biomeswevegone/rainbow_eucalyptus_crafting_table.png differ diff --git a/public/textures/biomeswevegone/rainbow_eucalyptus_door.png b/public/textures/biomeswevegone/rainbow_eucalyptus_door.png new file mode 100644 index 00000000..db360844 Binary files /dev/null and b/public/textures/biomeswevegone/rainbow_eucalyptus_door.png differ diff --git a/public/textures/biomeswevegone/rainbow_eucalyptus_fence.png b/public/textures/biomeswevegone/rainbow_eucalyptus_fence.png new file mode 100644 index 00000000..ad437cf4 Binary files /dev/null and b/public/textures/biomeswevegone/rainbow_eucalyptus_fence.png differ diff --git a/public/textures/biomeswevegone/rainbow_eucalyptus_fence_gate.png b/public/textures/biomeswevegone/rainbow_eucalyptus_fence_gate.png new file mode 100644 index 00000000..e62ace52 Binary files /dev/null and b/public/textures/biomeswevegone/rainbow_eucalyptus_fence_gate.png differ diff --git a/public/textures/biomeswevegone/rainbow_eucalyptus_hanging_sign.png b/public/textures/biomeswevegone/rainbow_eucalyptus_hanging_sign.png new file mode 100644 index 00000000..38986c90 Binary files /dev/null and b/public/textures/biomeswevegone/rainbow_eucalyptus_hanging_sign.png differ diff --git a/public/textures/biomeswevegone/rainbow_eucalyptus_leaves.png b/public/textures/biomeswevegone/rainbow_eucalyptus_leaves.png new file mode 100644 index 00000000..abc38997 Binary files /dev/null and b/public/textures/biomeswevegone/rainbow_eucalyptus_leaves.png differ diff --git a/public/textures/biomeswevegone/rainbow_eucalyptus_log.png b/public/textures/biomeswevegone/rainbow_eucalyptus_log.png new file mode 100644 index 00000000..e73a5622 Binary files /dev/null and b/public/textures/biomeswevegone/rainbow_eucalyptus_log.png differ diff --git a/public/textures/biomeswevegone/rainbow_eucalyptus_planks.png b/public/textures/biomeswevegone/rainbow_eucalyptus_planks.png new file mode 100644 index 00000000..26e34175 Binary files /dev/null and b/public/textures/biomeswevegone/rainbow_eucalyptus_planks.png differ diff --git a/public/textures/biomeswevegone/rainbow_eucalyptus_pressure_plate.png b/public/textures/biomeswevegone/rainbow_eucalyptus_pressure_plate.png new file mode 100644 index 00000000..ad75bca5 Binary files /dev/null and b/public/textures/biomeswevegone/rainbow_eucalyptus_pressure_plate.png differ diff --git a/public/textures/biomeswevegone/rainbow_eucalyptus_sapling.png b/public/textures/biomeswevegone/rainbow_eucalyptus_sapling.png new file mode 100644 index 00000000..d2addb59 Binary files /dev/null and b/public/textures/biomeswevegone/rainbow_eucalyptus_sapling.png differ diff --git a/public/textures/biomeswevegone/rainbow_eucalyptus_sign.png b/public/textures/biomeswevegone/rainbow_eucalyptus_sign.png new file mode 100644 index 00000000..d073f971 Binary files /dev/null and b/public/textures/biomeswevegone/rainbow_eucalyptus_sign.png differ diff --git a/public/textures/biomeswevegone/rainbow_eucalyptus_slab.png b/public/textures/biomeswevegone/rainbow_eucalyptus_slab.png new file mode 100644 index 00000000..f5e59c31 Binary files /dev/null and b/public/textures/biomeswevegone/rainbow_eucalyptus_slab.png differ diff --git a/public/textures/biomeswevegone/rainbow_eucalyptus_stairs.png b/public/textures/biomeswevegone/rainbow_eucalyptus_stairs.png new file mode 100644 index 00000000..c3352761 Binary files /dev/null and b/public/textures/biomeswevegone/rainbow_eucalyptus_stairs.png differ diff --git a/public/textures/biomeswevegone/rainbow_eucalyptus_trapdoor.png b/public/textures/biomeswevegone/rainbow_eucalyptus_trapdoor.png new file mode 100644 index 00000000..7ea0e279 Binary files /dev/null and b/public/textures/biomeswevegone/rainbow_eucalyptus_trapdoor.png differ diff --git a/public/textures/biomeswevegone/rainbow_eucalyptus_wood.png b/public/textures/biomeswevegone/rainbow_eucalyptus_wood.png new file mode 100644 index 00000000..f05e9b5b Binary files /dev/null and b/public/textures/biomeswevegone/rainbow_eucalyptus_wood.png differ diff --git a/public/textures/biomeswevegone/red_birch_leaves.png b/public/textures/biomeswevegone/red_birch_leaves.png new file mode 100644 index 00000000..7015d170 Binary files /dev/null and b/public/textures/biomeswevegone/red_birch_leaves.png differ diff --git a/public/textures/biomeswevegone/red_birch_sapling.png b/public/textures/biomeswevegone/red_birch_sapling.png new file mode 100644 index 00000000..e2375103 Binary files /dev/null and b/public/textures/biomeswevegone/red_birch_sapling.png differ diff --git a/public/textures/biomeswevegone/red_glow_bottle.png b/public/textures/biomeswevegone/red_glow_bottle.png new file mode 100644 index 00000000..ae4cbf8b Binary files /dev/null and b/public/textures/biomeswevegone/red_glow_bottle.png differ diff --git a/public/textures/biomeswevegone/red_glowcane_powder.png b/public/textures/biomeswevegone/red_glowcane_powder.png new file mode 100644 index 00000000..b34c7806 Binary files /dev/null and b/public/textures/biomeswevegone/red_glowcane_powder.png differ diff --git a/public/textures/biomeswevegone/red_glowcane_shoot.png b/public/textures/biomeswevegone/red_glowcane_shoot.png new file mode 100644 index 00000000..3ea9ae13 Binary files /dev/null and b/public/textures/biomeswevegone/red_glowcane_shoot.png differ diff --git a/public/textures/biomeswevegone/red_maple_leaves.png b/public/textures/biomeswevegone/red_maple_leaves.png new file mode 100644 index 00000000..2ba683af Binary files /dev/null and b/public/textures/biomeswevegone/red_maple_leaves.png differ diff --git a/public/textures/biomeswevegone/red_maple_sapling.png b/public/textures/biomeswevegone/red_maple_sapling.png new file mode 100644 index 00000000..e3450c74 Binary files /dev/null and b/public/textures/biomeswevegone/red_maple_sapling.png differ diff --git a/public/textures/biomeswevegone/red_oak_leaves.png b/public/textures/biomeswevegone/red_oak_leaves.png new file mode 100644 index 00000000..568e272b Binary files /dev/null and b/public/textures/biomeswevegone/red_oak_leaves.png differ diff --git a/public/textures/biomeswevegone/red_oak_sapling.png b/public/textures/biomeswevegone/red_oak_sapling.png new file mode 100644 index 00000000..b65f511a Binary files /dev/null and b/public/textures/biomeswevegone/red_oak_sapling.png differ diff --git a/public/textures/biomeswevegone/red_quicksand.png b/public/textures/biomeswevegone/red_quicksand.png new file mode 100644 index 00000000..e358bfc9 Binary files /dev/null and b/public/textures/biomeswevegone/red_quicksand.png differ diff --git a/public/textures/biomeswevegone/red_rock.png b/public/textures/biomeswevegone/red_rock.png new file mode 100644 index 00000000..b5f5931d Binary files /dev/null and b/public/textures/biomeswevegone/red_rock.png differ diff --git a/public/textures/biomeswevegone/red_rock_brick_slab.png b/public/textures/biomeswevegone/red_rock_brick_slab.png new file mode 100644 index 00000000..000c654b Binary files /dev/null and b/public/textures/biomeswevegone/red_rock_brick_slab.png differ diff --git a/public/textures/biomeswevegone/red_rock_brick_stairs.png b/public/textures/biomeswevegone/red_rock_brick_stairs.png new file mode 100644 index 00000000..23dec35f Binary files /dev/null and b/public/textures/biomeswevegone/red_rock_brick_stairs.png differ diff --git a/public/textures/biomeswevegone/red_rock_brick_wall.png b/public/textures/biomeswevegone/red_rock_brick_wall.png new file mode 100644 index 00000000..ee1f09c2 Binary files /dev/null and b/public/textures/biomeswevegone/red_rock_brick_wall.png differ diff --git a/public/textures/biomeswevegone/red_rock_bricks.png b/public/textures/biomeswevegone/red_rock_bricks.png new file mode 100644 index 00000000..ddbaca3d Binary files /dev/null and b/public/textures/biomeswevegone/red_rock_bricks.png differ diff --git a/public/textures/biomeswevegone/red_rock_slab.png b/public/textures/biomeswevegone/red_rock_slab.png new file mode 100644 index 00000000..4881ce46 Binary files /dev/null and b/public/textures/biomeswevegone/red_rock_slab.png differ diff --git a/public/textures/biomeswevegone/red_rock_stairs.png b/public/textures/biomeswevegone/red_rock_stairs.png new file mode 100644 index 00000000..8e0c3365 Binary files /dev/null and b/public/textures/biomeswevegone/red_rock_stairs.png differ diff --git a/public/textures/biomeswevegone/red_rock_wall.png b/public/textures/biomeswevegone/red_rock_wall.png new file mode 100644 index 00000000..b9ef9279 Binary files /dev/null and b/public/textures/biomeswevegone/red_rock_wall.png differ diff --git a/public/textures/biomeswevegone/red_spruce_leaves.png b/public/textures/biomeswevegone/red_spruce_leaves.png new file mode 100644 index 00000000..1f0f43c8 Binary files /dev/null and b/public/textures/biomeswevegone/red_spruce_leaves.png differ diff --git a/public/textures/biomeswevegone/red_spruce_sapling.png b/public/textures/biomeswevegone/red_spruce_sapling.png new file mode 100644 index 00000000..2378c874 Binary files /dev/null and b/public/textures/biomeswevegone/red_spruce_sapling.png differ diff --git a/public/textures/biomeswevegone/redwood_boat.png b/public/textures/biomeswevegone/redwood_boat.png new file mode 100644 index 00000000..807885ba Binary files /dev/null and b/public/textures/biomeswevegone/redwood_boat.png differ diff --git a/public/textures/biomeswevegone/redwood_bookshelf.png b/public/textures/biomeswevegone/redwood_bookshelf.png new file mode 100644 index 00000000..1344a4a1 Binary files /dev/null and b/public/textures/biomeswevegone/redwood_bookshelf.png differ diff --git a/public/textures/biomeswevegone/redwood_button.png b/public/textures/biomeswevegone/redwood_button.png new file mode 100644 index 00000000..ba20bb67 Binary files /dev/null and b/public/textures/biomeswevegone/redwood_button.png differ diff --git a/public/textures/biomeswevegone/redwood_chest_boat.png b/public/textures/biomeswevegone/redwood_chest_boat.png new file mode 100644 index 00000000..d356da57 Binary files /dev/null and b/public/textures/biomeswevegone/redwood_chest_boat.png differ diff --git a/public/textures/biomeswevegone/redwood_crafting_table.png b/public/textures/biomeswevegone/redwood_crafting_table.png new file mode 100644 index 00000000..3911538c Binary files /dev/null and b/public/textures/biomeswevegone/redwood_crafting_table.png differ diff --git a/public/textures/biomeswevegone/redwood_door.png b/public/textures/biomeswevegone/redwood_door.png new file mode 100644 index 00000000..fd6861dc Binary files /dev/null and b/public/textures/biomeswevegone/redwood_door.png differ diff --git a/public/textures/biomeswevegone/redwood_fence.png b/public/textures/biomeswevegone/redwood_fence.png new file mode 100644 index 00000000..10a630d0 Binary files /dev/null and b/public/textures/biomeswevegone/redwood_fence.png differ diff --git a/public/textures/biomeswevegone/redwood_fence_gate.png b/public/textures/biomeswevegone/redwood_fence_gate.png new file mode 100644 index 00000000..d1e03226 Binary files /dev/null and b/public/textures/biomeswevegone/redwood_fence_gate.png differ diff --git a/public/textures/biomeswevegone/redwood_hanging_sign.png b/public/textures/biomeswevegone/redwood_hanging_sign.png new file mode 100644 index 00000000..ec1bd219 Binary files /dev/null and b/public/textures/biomeswevegone/redwood_hanging_sign.png differ diff --git a/public/textures/biomeswevegone/redwood_leaves.png b/public/textures/biomeswevegone/redwood_leaves.png new file mode 100644 index 00000000..e1bd1ca4 Binary files /dev/null and b/public/textures/biomeswevegone/redwood_leaves.png differ diff --git a/public/textures/biomeswevegone/redwood_log.png b/public/textures/biomeswevegone/redwood_log.png new file mode 100644 index 00000000..afe68d28 Binary files /dev/null and b/public/textures/biomeswevegone/redwood_log.png differ diff --git a/public/textures/biomeswevegone/redwood_planks.png b/public/textures/biomeswevegone/redwood_planks.png new file mode 100644 index 00000000..2e001bb9 Binary files /dev/null and b/public/textures/biomeswevegone/redwood_planks.png differ diff --git a/public/textures/biomeswevegone/redwood_pressure_plate.png b/public/textures/biomeswevegone/redwood_pressure_plate.png new file mode 100644 index 00000000..2513a72c Binary files /dev/null and b/public/textures/biomeswevegone/redwood_pressure_plate.png differ diff --git a/public/textures/biomeswevegone/redwood_sapling.png b/public/textures/biomeswevegone/redwood_sapling.png new file mode 100644 index 00000000..f87349f6 Binary files /dev/null and b/public/textures/biomeswevegone/redwood_sapling.png differ diff --git a/public/textures/biomeswevegone/redwood_sign.png b/public/textures/biomeswevegone/redwood_sign.png new file mode 100644 index 00000000..1a341231 Binary files /dev/null and b/public/textures/biomeswevegone/redwood_sign.png differ diff --git a/public/textures/biomeswevegone/redwood_slab.png b/public/textures/biomeswevegone/redwood_slab.png new file mode 100644 index 00000000..8da18cf1 Binary files /dev/null and b/public/textures/biomeswevegone/redwood_slab.png differ diff --git a/public/textures/biomeswevegone/redwood_stairs.png b/public/textures/biomeswevegone/redwood_stairs.png new file mode 100644 index 00000000..5a59745b Binary files /dev/null and b/public/textures/biomeswevegone/redwood_stairs.png differ diff --git a/public/textures/biomeswevegone/redwood_trapdoor.png b/public/textures/biomeswevegone/redwood_trapdoor.png new file mode 100644 index 00000000..c1cc962f Binary files /dev/null and b/public/textures/biomeswevegone/redwood_trapdoor.png differ diff --git a/public/textures/biomeswevegone/redwood_wood.png b/public/textures/biomeswevegone/redwood_wood.png new file mode 100644 index 00000000..8c919ce3 Binary files /dev/null and b/public/textures/biomeswevegone/redwood_wood.png differ diff --git a/public/textures/biomeswevegone/richea.png b/public/textures/biomeswevegone/richea.png new file mode 100644 index 00000000..04898bbd Binary files /dev/null and b/public/textures/biomeswevegone/richea.png differ diff --git a/public/textures/biomeswevegone/ripe_baobab_leaves.png b/public/textures/biomeswevegone/ripe_baobab_leaves.png new file mode 100644 index 00000000..7e299b41 Binary files /dev/null and b/public/textures/biomeswevegone/ripe_baobab_leaves.png differ diff --git a/public/textures/biomeswevegone/ripe_orchard_leaves.png b/public/textures/biomeswevegone/ripe_orchard_leaves.png new file mode 100644 index 00000000..4863ee0e Binary files /dev/null and b/public/textures/biomeswevegone/ripe_orchard_leaves.png differ diff --git a/public/textures/biomeswevegone/ripe_yucca_leaves.png b/public/textures/biomeswevegone/ripe_yucca_leaves.png new file mode 100644 index 00000000..d7938d3e Binary files /dev/null and b/public/textures/biomeswevegone/ripe_yucca_leaves.png differ diff --git a/public/textures/biomeswevegone/rocky_stone.png b/public/textures/biomeswevegone/rocky_stone.png new file mode 100644 index 00000000..3cc96e67 Binary files /dev/null and b/public/textures/biomeswevegone/rocky_stone.png differ diff --git a/public/textures/biomeswevegone/rocky_stone_slab.png b/public/textures/biomeswevegone/rocky_stone_slab.png new file mode 100644 index 00000000..68db3021 Binary files /dev/null and b/public/textures/biomeswevegone/rocky_stone_slab.png differ diff --git a/public/textures/biomeswevegone/rocky_stone_stairs.png b/public/textures/biomeswevegone/rocky_stone_stairs.png new file mode 100644 index 00000000..bc0567d0 Binary files /dev/null and b/public/textures/biomeswevegone/rocky_stone_stairs.png differ diff --git a/public/textures/biomeswevegone/rocky_stone_wall.png b/public/textures/biomeswevegone/rocky_stone_wall.png new file mode 100644 index 00000000..6ed7c054 Binary files /dev/null and b/public/textures/biomeswevegone/rocky_stone_wall.png differ diff --git a/public/textures/biomeswevegone/rose.png b/public/textures/biomeswevegone/rose.png new file mode 100644 index 00000000..cf38ac09 Binary files /dev/null and b/public/textures/biomeswevegone/rose.png differ diff --git a/public/textures/biomeswevegone/rose_petal_block.png b/public/textures/biomeswevegone/rose_petal_block.png new file mode 100644 index 00000000..d0044844 Binary files /dev/null and b/public/textures/biomeswevegone/rose_petal_block.png differ diff --git a/public/textures/biomeswevegone/sakura_boat.png b/public/textures/biomeswevegone/sakura_boat.png new file mode 100644 index 00000000..c00bd5b0 Binary files /dev/null and b/public/textures/biomeswevegone/sakura_boat.png differ diff --git a/public/textures/biomeswevegone/sakura_bookshelf.png b/public/textures/biomeswevegone/sakura_bookshelf.png new file mode 100644 index 00000000..c02b4f22 Binary files /dev/null and b/public/textures/biomeswevegone/sakura_bookshelf.png differ diff --git a/public/textures/biomeswevegone/sakura_button.png b/public/textures/biomeswevegone/sakura_button.png new file mode 100644 index 00000000..a24fc9a6 Binary files /dev/null and b/public/textures/biomeswevegone/sakura_button.png differ diff --git a/public/textures/biomeswevegone/sakura_chest_boat.png b/public/textures/biomeswevegone/sakura_chest_boat.png new file mode 100644 index 00000000..c68a07f4 Binary files /dev/null and b/public/textures/biomeswevegone/sakura_chest_boat.png differ diff --git a/public/textures/biomeswevegone/sakura_crafting_table.png b/public/textures/biomeswevegone/sakura_crafting_table.png new file mode 100644 index 00000000..fa514980 Binary files /dev/null and b/public/textures/biomeswevegone/sakura_crafting_table.png differ diff --git a/public/textures/biomeswevegone/sakura_door.png b/public/textures/biomeswevegone/sakura_door.png new file mode 100644 index 00000000..62135586 Binary files /dev/null and b/public/textures/biomeswevegone/sakura_door.png differ diff --git a/public/textures/biomeswevegone/sakura_fence.png b/public/textures/biomeswevegone/sakura_fence.png new file mode 100644 index 00000000..87715738 Binary files /dev/null and b/public/textures/biomeswevegone/sakura_fence.png differ diff --git a/public/textures/biomeswevegone/sakura_fence_gate.png b/public/textures/biomeswevegone/sakura_fence_gate.png new file mode 100644 index 00000000..30b92943 Binary files /dev/null and b/public/textures/biomeswevegone/sakura_fence_gate.png differ diff --git a/public/textures/biomeswevegone/sakura_hanging_sign.png b/public/textures/biomeswevegone/sakura_hanging_sign.png new file mode 100644 index 00000000..b035f0a6 Binary files /dev/null and b/public/textures/biomeswevegone/sakura_hanging_sign.png differ diff --git a/public/textures/biomeswevegone/sakura_log.png b/public/textures/biomeswevegone/sakura_log.png new file mode 100644 index 00000000..55d6caf4 Binary files /dev/null and b/public/textures/biomeswevegone/sakura_log.png differ diff --git a/public/textures/biomeswevegone/sakura_planks.png b/public/textures/biomeswevegone/sakura_planks.png new file mode 100644 index 00000000..d3e88788 Binary files /dev/null and b/public/textures/biomeswevegone/sakura_planks.png differ diff --git a/public/textures/biomeswevegone/sakura_pressure_plate.png b/public/textures/biomeswevegone/sakura_pressure_plate.png new file mode 100644 index 00000000..61c4afba Binary files /dev/null and b/public/textures/biomeswevegone/sakura_pressure_plate.png differ diff --git a/public/textures/biomeswevegone/sakura_sign.png b/public/textures/biomeswevegone/sakura_sign.png new file mode 100644 index 00000000..badffe61 Binary files /dev/null and b/public/textures/biomeswevegone/sakura_sign.png differ diff --git a/public/textures/biomeswevegone/sakura_slab.png b/public/textures/biomeswevegone/sakura_slab.png new file mode 100644 index 00000000..a57ddb7c Binary files /dev/null and b/public/textures/biomeswevegone/sakura_slab.png differ diff --git a/public/textures/biomeswevegone/sakura_stairs.png b/public/textures/biomeswevegone/sakura_stairs.png new file mode 100644 index 00000000..ca76ef17 Binary files /dev/null and b/public/textures/biomeswevegone/sakura_stairs.png differ diff --git a/public/textures/biomeswevegone/sakura_trapdoor.png b/public/textures/biomeswevegone/sakura_trapdoor.png new file mode 100644 index 00000000..e3462c93 Binary files /dev/null and b/public/textures/biomeswevegone/sakura_trapdoor.png differ diff --git a/public/textures/biomeswevegone/sakura_wood.png b/public/textures/biomeswevegone/sakura_wood.png new file mode 100644 index 00000000..6828389b Binary files /dev/null and b/public/textures/biomeswevegone/sakura_wood.png differ diff --git a/public/textures/biomeswevegone/sandy_dirt.png b/public/textures/biomeswevegone/sandy_dirt.png new file mode 100644 index 00000000..d54ac635 Binary files /dev/null and b/public/textures/biomeswevegone/sandy_dirt.png differ diff --git a/public/textures/biomeswevegone/sandy_dirt_path.png b/public/textures/biomeswevegone/sandy_dirt_path.png new file mode 100644 index 00000000..789d62c0 Binary files /dev/null and b/public/textures/biomeswevegone/sandy_dirt_path.png differ diff --git a/public/textures/biomeswevegone/sandy_farmland.png b/public/textures/biomeswevegone/sandy_farmland.png new file mode 100644 index 00000000..e24401e9 Binary files /dev/null and b/public/textures/biomeswevegone/sandy_farmland.png differ diff --git a/public/textures/biomeswevegone/shelf_fungi.png b/public/textures/biomeswevegone/shelf_fungi.png new file mode 100644 index 00000000..62b00609 Binary files /dev/null and b/public/textures/biomeswevegone/shelf_fungi.png differ diff --git a/public/textures/biomeswevegone/shrub.png b/public/textures/biomeswevegone/shrub.png new file mode 100644 index 00000000..c62cbbdf Binary files /dev/null and b/public/textures/biomeswevegone/shrub.png differ diff --git a/public/textures/biomeswevegone/silver_maple_leaves.png b/public/textures/biomeswevegone/silver_maple_leaves.png new file mode 100644 index 00000000..95834ce5 Binary files /dev/null and b/public/textures/biomeswevegone/silver_maple_leaves.png differ diff --git a/public/textures/biomeswevegone/silver_maple_sapling.png b/public/textures/biomeswevegone/silver_maple_sapling.png new file mode 100644 index 00000000..7d0d81b8 Binary files /dev/null and b/public/textures/biomeswevegone/silver_maple_sapling.png differ diff --git a/public/textures/biomeswevegone/silver_vase_flower.png b/public/textures/biomeswevegone/silver_vase_flower.png new file mode 100644 index 00000000..1c1c90ce Binary files /dev/null and b/public/textures/biomeswevegone/silver_vase_flower.png differ diff --git a/public/textures/biomeswevegone/skyris_boat.png b/public/textures/biomeswevegone/skyris_boat.png new file mode 100644 index 00000000..70ae6e1c Binary files /dev/null and b/public/textures/biomeswevegone/skyris_boat.png differ diff --git a/public/textures/biomeswevegone/skyris_bookshelf.png b/public/textures/biomeswevegone/skyris_bookshelf.png new file mode 100644 index 00000000..9075077c Binary files /dev/null and b/public/textures/biomeswevegone/skyris_bookshelf.png differ diff --git a/public/textures/biomeswevegone/skyris_button.png b/public/textures/biomeswevegone/skyris_button.png new file mode 100644 index 00000000..620aaa87 Binary files /dev/null and b/public/textures/biomeswevegone/skyris_button.png differ diff --git a/public/textures/biomeswevegone/skyris_chest_boat.png b/public/textures/biomeswevegone/skyris_chest_boat.png new file mode 100644 index 00000000..1b8fe464 Binary files /dev/null and b/public/textures/biomeswevegone/skyris_chest_boat.png differ diff --git a/public/textures/biomeswevegone/skyris_crafting_table.png b/public/textures/biomeswevegone/skyris_crafting_table.png new file mode 100644 index 00000000..786e8265 Binary files /dev/null and b/public/textures/biomeswevegone/skyris_crafting_table.png differ diff --git a/public/textures/biomeswevegone/skyris_door.png b/public/textures/biomeswevegone/skyris_door.png new file mode 100644 index 00000000..6707a347 Binary files /dev/null and b/public/textures/biomeswevegone/skyris_door.png differ diff --git a/public/textures/biomeswevegone/skyris_fence.png b/public/textures/biomeswevegone/skyris_fence.png new file mode 100644 index 00000000..675a8c9e Binary files /dev/null and b/public/textures/biomeswevegone/skyris_fence.png differ diff --git a/public/textures/biomeswevegone/skyris_fence_gate.png b/public/textures/biomeswevegone/skyris_fence_gate.png new file mode 100644 index 00000000..7b215a95 Binary files /dev/null and b/public/textures/biomeswevegone/skyris_fence_gate.png differ diff --git a/public/textures/biomeswevegone/skyris_hanging_sign.png b/public/textures/biomeswevegone/skyris_hanging_sign.png new file mode 100644 index 00000000..5cce342d Binary files /dev/null and b/public/textures/biomeswevegone/skyris_hanging_sign.png differ diff --git a/public/textures/biomeswevegone/skyris_leaves.png b/public/textures/biomeswevegone/skyris_leaves.png new file mode 100644 index 00000000..04dc1d81 Binary files /dev/null and b/public/textures/biomeswevegone/skyris_leaves.png differ diff --git a/public/textures/biomeswevegone/skyris_log.png b/public/textures/biomeswevegone/skyris_log.png new file mode 100644 index 00000000..c3190f16 Binary files /dev/null and b/public/textures/biomeswevegone/skyris_log.png differ diff --git a/public/textures/biomeswevegone/skyris_planks.png b/public/textures/biomeswevegone/skyris_planks.png new file mode 100644 index 00000000..55ca2617 Binary files /dev/null and b/public/textures/biomeswevegone/skyris_planks.png differ diff --git a/public/textures/biomeswevegone/skyris_pressure_plate.png b/public/textures/biomeswevegone/skyris_pressure_plate.png new file mode 100644 index 00000000..64905df0 Binary files /dev/null and b/public/textures/biomeswevegone/skyris_pressure_plate.png differ diff --git a/public/textures/biomeswevegone/skyris_sapling.png b/public/textures/biomeswevegone/skyris_sapling.png new file mode 100644 index 00000000..8b272722 Binary files /dev/null and b/public/textures/biomeswevegone/skyris_sapling.png differ diff --git a/public/textures/biomeswevegone/skyris_sign.png b/public/textures/biomeswevegone/skyris_sign.png new file mode 100644 index 00000000..f951a9e3 Binary files /dev/null and b/public/textures/biomeswevegone/skyris_sign.png differ diff --git a/public/textures/biomeswevegone/skyris_slab.png b/public/textures/biomeswevegone/skyris_slab.png new file mode 100644 index 00000000..f0637ca5 Binary files /dev/null and b/public/textures/biomeswevegone/skyris_slab.png differ diff --git a/public/textures/biomeswevegone/skyris_stairs.png b/public/textures/biomeswevegone/skyris_stairs.png new file mode 100644 index 00000000..88fa63bc Binary files /dev/null and b/public/textures/biomeswevegone/skyris_stairs.png differ diff --git a/public/textures/biomeswevegone/skyris_trapdoor.png b/public/textures/biomeswevegone/skyris_trapdoor.png new file mode 100644 index 00000000..5ee8e171 Binary files /dev/null and b/public/textures/biomeswevegone/skyris_trapdoor.png differ diff --git a/public/textures/biomeswevegone/skyris_vine.png b/public/textures/biomeswevegone/skyris_vine.png new file mode 100644 index 00000000..cff218a4 Binary files /dev/null and b/public/textures/biomeswevegone/skyris_vine.png differ diff --git a/public/textures/biomeswevegone/skyris_wood.png b/public/textures/biomeswevegone/skyris_wood.png new file mode 100644 index 00000000..3bd70e68 Binary files /dev/null and b/public/textures/biomeswevegone/skyris_wood.png differ diff --git a/public/textures/biomeswevegone/smooth_black_sandstone.png b/public/textures/biomeswevegone/smooth_black_sandstone.png new file mode 100644 index 00000000..bab3d2eb Binary files /dev/null and b/public/textures/biomeswevegone/smooth_black_sandstone.png differ diff --git a/public/textures/biomeswevegone/smooth_black_sandstone_slab.png b/public/textures/biomeswevegone/smooth_black_sandstone_slab.png new file mode 100644 index 00000000..b774d523 Binary files /dev/null and b/public/textures/biomeswevegone/smooth_black_sandstone_slab.png differ diff --git a/public/textures/biomeswevegone/smooth_black_sandstone_stairs.png b/public/textures/biomeswevegone/smooth_black_sandstone_stairs.png new file mode 100644 index 00000000..ad73ad3c Binary files /dev/null and b/public/textures/biomeswevegone/smooth_black_sandstone_stairs.png differ diff --git a/public/textures/biomeswevegone/smooth_blue_sandstone.png b/public/textures/biomeswevegone/smooth_blue_sandstone.png new file mode 100644 index 00000000..21c009d7 Binary files /dev/null and b/public/textures/biomeswevegone/smooth_blue_sandstone.png differ diff --git a/public/textures/biomeswevegone/smooth_blue_sandstone_slab.png b/public/textures/biomeswevegone/smooth_blue_sandstone_slab.png new file mode 100644 index 00000000..6cf7048b Binary files /dev/null and b/public/textures/biomeswevegone/smooth_blue_sandstone_slab.png differ diff --git a/public/textures/biomeswevegone/smooth_blue_sandstone_stairs.png b/public/textures/biomeswevegone/smooth_blue_sandstone_stairs.png new file mode 100644 index 00000000..6a2276ab Binary files /dev/null and b/public/textures/biomeswevegone/smooth_blue_sandstone_stairs.png differ diff --git a/public/textures/biomeswevegone/smooth_pink_sandstone.png b/public/textures/biomeswevegone/smooth_pink_sandstone.png new file mode 100644 index 00000000..db296030 Binary files /dev/null and b/public/textures/biomeswevegone/smooth_pink_sandstone.png differ diff --git a/public/textures/biomeswevegone/smooth_pink_sandstone_slab.png b/public/textures/biomeswevegone/smooth_pink_sandstone_slab.png new file mode 100644 index 00000000..20165787 Binary files /dev/null and b/public/textures/biomeswevegone/smooth_pink_sandstone_slab.png differ diff --git a/public/textures/biomeswevegone/smooth_pink_sandstone_stairs.png b/public/textures/biomeswevegone/smooth_pink_sandstone_stairs.png new file mode 100644 index 00000000..722e8f36 Binary files /dev/null and b/public/textures/biomeswevegone/smooth_pink_sandstone_stairs.png differ diff --git a/public/textures/biomeswevegone/smooth_purple_sandstone.png b/public/textures/biomeswevegone/smooth_purple_sandstone.png new file mode 100644 index 00000000..55c54d8f Binary files /dev/null and b/public/textures/biomeswevegone/smooth_purple_sandstone.png differ diff --git a/public/textures/biomeswevegone/smooth_purple_sandstone_slab.png b/public/textures/biomeswevegone/smooth_purple_sandstone_slab.png new file mode 100644 index 00000000..579fec0e Binary files /dev/null and b/public/textures/biomeswevegone/smooth_purple_sandstone_slab.png differ diff --git a/public/textures/biomeswevegone/smooth_purple_sandstone_stairs.png b/public/textures/biomeswevegone/smooth_purple_sandstone_stairs.png new file mode 100644 index 00000000..07d83050 Binary files /dev/null and b/public/textures/biomeswevegone/smooth_purple_sandstone_stairs.png differ diff --git a/public/textures/biomeswevegone/smooth_white_sandstone.png b/public/textures/biomeswevegone/smooth_white_sandstone.png new file mode 100644 index 00000000..1d654d3b Binary files /dev/null and b/public/textures/biomeswevegone/smooth_white_sandstone.png differ diff --git a/public/textures/biomeswevegone/smooth_white_sandstone_slab.png b/public/textures/biomeswevegone/smooth_white_sandstone_slab.png new file mode 100644 index 00000000..a69e263a Binary files /dev/null and b/public/textures/biomeswevegone/smooth_white_sandstone_slab.png differ diff --git a/public/textures/biomeswevegone/smooth_white_sandstone_stairs.png b/public/textures/biomeswevegone/smooth_white_sandstone_stairs.png new file mode 100644 index 00000000..60f11754 Binary files /dev/null and b/public/textures/biomeswevegone/smooth_white_sandstone_stairs.png differ diff --git a/public/textures/biomeswevegone/smooth_windswept_sandstone.png b/public/textures/biomeswevegone/smooth_windswept_sandstone.png new file mode 100644 index 00000000..8e4e10fb Binary files /dev/null and b/public/textures/biomeswevegone/smooth_windswept_sandstone.png differ diff --git a/public/textures/biomeswevegone/smooth_windswept_sandstone_slab.png b/public/textures/biomeswevegone/smooth_windswept_sandstone_slab.png new file mode 100644 index 00000000..46a01067 Binary files /dev/null and b/public/textures/biomeswevegone/smooth_windswept_sandstone_slab.png differ diff --git a/public/textures/biomeswevegone/smooth_windswept_sandstone_stairs.png b/public/textures/biomeswevegone/smooth_windswept_sandstone_stairs.png new file mode 100644 index 00000000..aad21784 Binary files /dev/null and b/public/textures/biomeswevegone/smooth_windswept_sandstone_stairs.png differ diff --git a/public/textures/biomeswevegone/snowdrops.png b/public/textures/biomeswevegone/snowdrops.png new file mode 100644 index 00000000..a90a503c Binary files /dev/null and b/public/textures/biomeswevegone/snowdrops.png differ diff --git a/public/textures/biomeswevegone/soul_fruit.png b/public/textures/biomeswevegone/soul_fruit.png new file mode 100644 index 00000000..2e8814c4 Binary files /dev/null and b/public/textures/biomeswevegone/soul_fruit.png differ diff --git a/public/textures/biomeswevegone/spirit_boat.png b/public/textures/biomeswevegone/spirit_boat.png new file mode 100644 index 00000000..2fbef4be Binary files /dev/null and b/public/textures/biomeswevegone/spirit_boat.png differ diff --git a/public/textures/biomeswevegone/spirit_bookshelf.png b/public/textures/biomeswevegone/spirit_bookshelf.png new file mode 100644 index 00000000..15032a69 Binary files /dev/null and b/public/textures/biomeswevegone/spirit_bookshelf.png differ diff --git a/public/textures/biomeswevegone/spirit_button.png b/public/textures/biomeswevegone/spirit_button.png new file mode 100644 index 00000000..55d6d0d5 Binary files /dev/null and b/public/textures/biomeswevegone/spirit_button.png differ diff --git a/public/textures/biomeswevegone/spirit_chest_boat.png b/public/textures/biomeswevegone/spirit_chest_boat.png new file mode 100644 index 00000000..fef3ceed Binary files /dev/null and b/public/textures/biomeswevegone/spirit_chest_boat.png differ diff --git a/public/textures/biomeswevegone/spirit_crafting_table.png b/public/textures/biomeswevegone/spirit_crafting_table.png new file mode 100644 index 00000000..432b16f5 Binary files /dev/null and b/public/textures/biomeswevegone/spirit_crafting_table.png differ diff --git a/public/textures/biomeswevegone/spirit_door.png b/public/textures/biomeswevegone/spirit_door.png new file mode 100644 index 00000000..fc6efa4f Binary files /dev/null and b/public/textures/biomeswevegone/spirit_door.png differ diff --git a/public/textures/biomeswevegone/spirit_fence.png b/public/textures/biomeswevegone/spirit_fence.png new file mode 100644 index 00000000..2b05c411 Binary files /dev/null and b/public/textures/biomeswevegone/spirit_fence.png differ diff --git a/public/textures/biomeswevegone/spirit_fence_gate.png b/public/textures/biomeswevegone/spirit_fence_gate.png new file mode 100644 index 00000000..16ae1d52 Binary files /dev/null and b/public/textures/biomeswevegone/spirit_fence_gate.png differ diff --git a/public/textures/biomeswevegone/spirit_hanging_sign.png b/public/textures/biomeswevegone/spirit_hanging_sign.png new file mode 100644 index 00000000..2755b356 Binary files /dev/null and b/public/textures/biomeswevegone/spirit_hanging_sign.png differ diff --git a/public/textures/biomeswevegone/spirit_leaves.png b/public/textures/biomeswevegone/spirit_leaves.png new file mode 100644 index 00000000..258c6339 Binary files /dev/null and b/public/textures/biomeswevegone/spirit_leaves.png differ diff --git a/public/textures/biomeswevegone/spirit_log.png b/public/textures/biomeswevegone/spirit_log.png new file mode 100644 index 00000000..f106dc48 Binary files /dev/null and b/public/textures/biomeswevegone/spirit_log.png differ diff --git a/public/textures/biomeswevegone/spirit_planks.png b/public/textures/biomeswevegone/spirit_planks.png new file mode 100644 index 00000000..94f06035 Binary files /dev/null and b/public/textures/biomeswevegone/spirit_planks.png differ diff --git a/public/textures/biomeswevegone/spirit_pressure_plate.png b/public/textures/biomeswevegone/spirit_pressure_plate.png new file mode 100644 index 00000000..8221820a Binary files /dev/null and b/public/textures/biomeswevegone/spirit_pressure_plate.png differ diff --git a/public/textures/biomeswevegone/spirit_roots.png b/public/textures/biomeswevegone/spirit_roots.png new file mode 100644 index 00000000..0b1c3d7f Binary files /dev/null and b/public/textures/biomeswevegone/spirit_roots.png differ diff --git a/public/textures/biomeswevegone/spirit_sapling.png b/public/textures/biomeswevegone/spirit_sapling.png new file mode 100644 index 00000000..9564278f Binary files /dev/null and b/public/textures/biomeswevegone/spirit_sapling.png differ diff --git a/public/textures/biomeswevegone/spirit_sign.png b/public/textures/biomeswevegone/spirit_sign.png new file mode 100644 index 00000000..de0c780d Binary files /dev/null and b/public/textures/biomeswevegone/spirit_sign.png differ diff --git a/public/textures/biomeswevegone/spirit_slab.png b/public/textures/biomeswevegone/spirit_slab.png new file mode 100644 index 00000000..3d74ecec Binary files /dev/null and b/public/textures/biomeswevegone/spirit_slab.png differ diff --git a/public/textures/biomeswevegone/spirit_stairs.png b/public/textures/biomeswevegone/spirit_stairs.png new file mode 100644 index 00000000..9fea1788 Binary files /dev/null and b/public/textures/biomeswevegone/spirit_stairs.png differ diff --git a/public/textures/biomeswevegone/spirit_trapdoor.png b/public/textures/biomeswevegone/spirit_trapdoor.png new file mode 100644 index 00000000..32e13d21 Binary files /dev/null and b/public/textures/biomeswevegone/spirit_trapdoor.png differ diff --git a/public/textures/biomeswevegone/spirit_wood.png b/public/textures/biomeswevegone/spirit_wood.png new file mode 100644 index 00000000..3fc4f92f Binary files /dev/null and b/public/textures/biomeswevegone/spirit_wood.png differ diff --git a/public/textures/biomeswevegone/stripped_aspen_log.png b/public/textures/biomeswevegone/stripped_aspen_log.png new file mode 100644 index 00000000..4692770e Binary files /dev/null and b/public/textures/biomeswevegone/stripped_aspen_log.png differ diff --git a/public/textures/biomeswevegone/stripped_aspen_wood.png b/public/textures/biomeswevegone/stripped_aspen_wood.png new file mode 100644 index 00000000..16b09a9d Binary files /dev/null and b/public/textures/biomeswevegone/stripped_aspen_wood.png differ diff --git a/public/textures/biomeswevegone/stripped_baobab_log.png b/public/textures/biomeswevegone/stripped_baobab_log.png new file mode 100644 index 00000000..b30aa912 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_baobab_log.png differ diff --git a/public/textures/biomeswevegone/stripped_baobab_wood.png b/public/textures/biomeswevegone/stripped_baobab_wood.png new file mode 100644 index 00000000..2d3ba7c5 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_baobab_wood.png differ diff --git a/public/textures/biomeswevegone/stripped_blue_enchanted_log.png b/public/textures/biomeswevegone/stripped_blue_enchanted_log.png new file mode 100644 index 00000000..6ef222d6 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_blue_enchanted_log.png differ diff --git a/public/textures/biomeswevegone/stripped_blue_enchanted_wood.png b/public/textures/biomeswevegone/stripped_blue_enchanted_wood.png new file mode 100644 index 00000000..7d870108 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_blue_enchanted_wood.png differ diff --git a/public/textures/biomeswevegone/stripped_cika_log.png b/public/textures/biomeswevegone/stripped_cika_log.png new file mode 100644 index 00000000..315777bf Binary files /dev/null and b/public/textures/biomeswevegone/stripped_cika_log.png differ diff --git a/public/textures/biomeswevegone/stripped_cika_wood.png b/public/textures/biomeswevegone/stripped_cika_wood.png new file mode 100644 index 00000000..6e21cd5c Binary files /dev/null and b/public/textures/biomeswevegone/stripped_cika_wood.png differ diff --git a/public/textures/biomeswevegone/stripped_cypress_log.png b/public/textures/biomeswevegone/stripped_cypress_log.png new file mode 100644 index 00000000..87310441 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_cypress_log.png differ diff --git a/public/textures/biomeswevegone/stripped_cypress_wood.png b/public/textures/biomeswevegone/stripped_cypress_wood.png new file mode 100644 index 00000000..e58f9644 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_cypress_wood.png differ diff --git a/public/textures/biomeswevegone/stripped_ebony_log.png b/public/textures/biomeswevegone/stripped_ebony_log.png new file mode 100644 index 00000000..6b257208 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_ebony_log.png differ diff --git a/public/textures/biomeswevegone/stripped_ebony_wood.png b/public/textures/biomeswevegone/stripped_ebony_wood.png new file mode 100644 index 00000000..98da099d Binary files /dev/null and b/public/textures/biomeswevegone/stripped_ebony_wood.png differ diff --git a/public/textures/biomeswevegone/stripped_fir_log.png b/public/textures/biomeswevegone/stripped_fir_log.png new file mode 100644 index 00000000..4157e1de Binary files /dev/null and b/public/textures/biomeswevegone/stripped_fir_log.png differ diff --git a/public/textures/biomeswevegone/stripped_fir_wood.png b/public/textures/biomeswevegone/stripped_fir_wood.png new file mode 100644 index 00000000..2cf53100 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_fir_wood.png differ diff --git a/public/textures/biomeswevegone/stripped_florus_stem.png b/public/textures/biomeswevegone/stripped_florus_stem.png new file mode 100644 index 00000000..1f8558ff Binary files /dev/null and b/public/textures/biomeswevegone/stripped_florus_stem.png differ diff --git a/public/textures/biomeswevegone/stripped_florus_wood.png b/public/textures/biomeswevegone/stripped_florus_wood.png new file mode 100644 index 00000000..3d064070 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_florus_wood.png differ diff --git a/public/textures/biomeswevegone/stripped_green_enchanted_log.png b/public/textures/biomeswevegone/stripped_green_enchanted_log.png new file mode 100644 index 00000000..042ec42d Binary files /dev/null and b/public/textures/biomeswevegone/stripped_green_enchanted_log.png differ diff --git a/public/textures/biomeswevegone/stripped_green_enchanted_wood.png b/public/textures/biomeswevegone/stripped_green_enchanted_wood.png new file mode 100644 index 00000000..2c9e4f20 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_green_enchanted_wood.png differ diff --git a/public/textures/biomeswevegone/stripped_holly_log.png b/public/textures/biomeswevegone/stripped_holly_log.png new file mode 100644 index 00000000..685e9d62 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_holly_log.png differ diff --git a/public/textures/biomeswevegone/stripped_holly_wood.png b/public/textures/biomeswevegone/stripped_holly_wood.png new file mode 100644 index 00000000..1031ec01 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_holly_wood.png differ diff --git a/public/textures/biomeswevegone/stripped_ironwood_log.png b/public/textures/biomeswevegone/stripped_ironwood_log.png new file mode 100644 index 00000000..c59d2763 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_ironwood_log.png differ diff --git a/public/textures/biomeswevegone/stripped_ironwood_wood.png b/public/textures/biomeswevegone/stripped_ironwood_wood.png new file mode 100644 index 00000000..1af4b8b4 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_ironwood_wood.png differ diff --git a/public/textures/biomeswevegone/stripped_jacaranda_log.png b/public/textures/biomeswevegone/stripped_jacaranda_log.png new file mode 100644 index 00000000..14d6f01e Binary files /dev/null and b/public/textures/biomeswevegone/stripped_jacaranda_log.png differ diff --git a/public/textures/biomeswevegone/stripped_jacaranda_wood.png b/public/textures/biomeswevegone/stripped_jacaranda_wood.png new file mode 100644 index 00000000..2786d44e Binary files /dev/null and b/public/textures/biomeswevegone/stripped_jacaranda_wood.png differ diff --git a/public/textures/biomeswevegone/stripped_mahogany_log.png b/public/textures/biomeswevegone/stripped_mahogany_log.png new file mode 100644 index 00000000..c5f1dfcd Binary files /dev/null and b/public/textures/biomeswevegone/stripped_mahogany_log.png differ diff --git a/public/textures/biomeswevegone/stripped_mahogany_wood.png b/public/textures/biomeswevegone/stripped_mahogany_wood.png new file mode 100644 index 00000000..d818fb46 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_mahogany_wood.png differ diff --git a/public/textures/biomeswevegone/stripped_maple_log.png b/public/textures/biomeswevegone/stripped_maple_log.png new file mode 100644 index 00000000..86336c6b Binary files /dev/null and b/public/textures/biomeswevegone/stripped_maple_log.png differ diff --git a/public/textures/biomeswevegone/stripped_maple_wood.png b/public/textures/biomeswevegone/stripped_maple_wood.png new file mode 100644 index 00000000..86ecaf3d Binary files /dev/null and b/public/textures/biomeswevegone/stripped_maple_wood.png differ diff --git a/public/textures/biomeswevegone/stripped_palm_log.png b/public/textures/biomeswevegone/stripped_palm_log.png new file mode 100644 index 00000000..30819d45 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_palm_log.png differ diff --git a/public/textures/biomeswevegone/stripped_palm_wood.png b/public/textures/biomeswevegone/stripped_palm_wood.png new file mode 100644 index 00000000..5c6d4110 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_palm_wood.png differ diff --git a/public/textures/biomeswevegone/stripped_palo_verde_log.png b/public/textures/biomeswevegone/stripped_palo_verde_log.png new file mode 100644 index 00000000..cad9a6db Binary files /dev/null and b/public/textures/biomeswevegone/stripped_palo_verde_log.png differ diff --git a/public/textures/biomeswevegone/stripped_palo_verde_wood.png b/public/textures/biomeswevegone/stripped_palo_verde_wood.png new file mode 100644 index 00000000..33f21e0f Binary files /dev/null and b/public/textures/biomeswevegone/stripped_palo_verde_wood.png differ diff --git a/public/textures/biomeswevegone/stripped_pine_log.png b/public/textures/biomeswevegone/stripped_pine_log.png new file mode 100644 index 00000000..3e081bb9 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_pine_log.png differ diff --git a/public/textures/biomeswevegone/stripped_pine_wood.png b/public/textures/biomeswevegone/stripped_pine_wood.png new file mode 100644 index 00000000..2149dda4 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_pine_wood.png differ diff --git a/public/textures/biomeswevegone/stripped_rainbow_eucalyptus_log.png b/public/textures/biomeswevegone/stripped_rainbow_eucalyptus_log.png new file mode 100644 index 00000000..161044b5 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_rainbow_eucalyptus_log.png differ diff --git a/public/textures/biomeswevegone/stripped_rainbow_eucalyptus_wood.png b/public/textures/biomeswevegone/stripped_rainbow_eucalyptus_wood.png new file mode 100644 index 00000000..e9e7a448 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_rainbow_eucalyptus_wood.png differ diff --git a/public/textures/biomeswevegone/stripped_redwood_log.png b/public/textures/biomeswevegone/stripped_redwood_log.png new file mode 100644 index 00000000..c6b6d2bf Binary files /dev/null and b/public/textures/biomeswevegone/stripped_redwood_log.png differ diff --git a/public/textures/biomeswevegone/stripped_redwood_wood.png b/public/textures/biomeswevegone/stripped_redwood_wood.png new file mode 100644 index 00000000..fb46a6da Binary files /dev/null and b/public/textures/biomeswevegone/stripped_redwood_wood.png differ diff --git a/public/textures/biomeswevegone/stripped_sakura_log.png b/public/textures/biomeswevegone/stripped_sakura_log.png new file mode 100644 index 00000000..99f44f17 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_sakura_log.png differ diff --git a/public/textures/biomeswevegone/stripped_sakura_wood.png b/public/textures/biomeswevegone/stripped_sakura_wood.png new file mode 100644 index 00000000..4f7d611e Binary files /dev/null and b/public/textures/biomeswevegone/stripped_sakura_wood.png differ diff --git a/public/textures/biomeswevegone/stripped_skyris_log.png b/public/textures/biomeswevegone/stripped_skyris_log.png new file mode 100644 index 00000000..0d4744c6 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_skyris_log.png differ diff --git a/public/textures/biomeswevegone/stripped_skyris_wood.png b/public/textures/biomeswevegone/stripped_skyris_wood.png new file mode 100644 index 00000000..ad5d5542 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_skyris_wood.png differ diff --git a/public/textures/biomeswevegone/stripped_spirit_log.png b/public/textures/biomeswevegone/stripped_spirit_log.png new file mode 100644 index 00000000..14debf2f Binary files /dev/null and b/public/textures/biomeswevegone/stripped_spirit_log.png differ diff --git a/public/textures/biomeswevegone/stripped_spirit_wood.png b/public/textures/biomeswevegone/stripped_spirit_wood.png new file mode 100644 index 00000000..2ae29772 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_spirit_wood.png differ diff --git a/public/textures/biomeswevegone/stripped_white_mangrove_log.png b/public/textures/biomeswevegone/stripped_white_mangrove_log.png new file mode 100644 index 00000000..024ca072 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_white_mangrove_log.png differ diff --git a/public/textures/biomeswevegone/stripped_white_mangrove_wood.png b/public/textures/biomeswevegone/stripped_white_mangrove_wood.png new file mode 100644 index 00000000..73b2a5ac Binary files /dev/null and b/public/textures/biomeswevegone/stripped_white_mangrove_wood.png differ diff --git a/public/textures/biomeswevegone/stripped_willow_log.png b/public/textures/biomeswevegone/stripped_willow_log.png new file mode 100644 index 00000000..2a41f7ea Binary files /dev/null and b/public/textures/biomeswevegone/stripped_willow_log.png differ diff --git a/public/textures/biomeswevegone/stripped_willow_wood.png b/public/textures/biomeswevegone/stripped_willow_wood.png new file mode 100644 index 00000000..2f97e20a Binary files /dev/null and b/public/textures/biomeswevegone/stripped_willow_wood.png differ diff --git a/public/textures/biomeswevegone/stripped_witch_hazel_log.png b/public/textures/biomeswevegone/stripped_witch_hazel_log.png new file mode 100644 index 00000000..c259c0c1 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_witch_hazel_log.png differ diff --git a/public/textures/biomeswevegone/stripped_witch_hazel_wood.png b/public/textures/biomeswevegone/stripped_witch_hazel_wood.png new file mode 100644 index 00000000..e5f51192 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_witch_hazel_wood.png differ diff --git a/public/textures/biomeswevegone/stripped_zelkova_log.png b/public/textures/biomeswevegone/stripped_zelkova_log.png new file mode 100644 index 00000000..30c80fc2 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_zelkova_log.png differ diff --git a/public/textures/biomeswevegone/stripped_zelkova_wood.png b/public/textures/biomeswevegone/stripped_zelkova_wood.png new file mode 100644 index 00000000..3fb69997 Binary files /dev/null and b/public/textures/biomeswevegone/stripped_zelkova_wood.png differ diff --git a/public/textures/biomeswevegone/tall_allium.png b/public/textures/biomeswevegone/tall_allium.png new file mode 100644 index 00000000..78b6ba25 Binary files /dev/null and b/public/textures/biomeswevegone/tall_allium.png differ diff --git a/public/textures/biomeswevegone/tall_beach_grass.png b/public/textures/biomeswevegone/tall_beach_grass.png new file mode 100644 index 00000000..a936806a Binary files /dev/null and b/public/textures/biomeswevegone/tall_beach_grass.png differ diff --git a/public/textures/biomeswevegone/tall_pink_allium.png b/public/textures/biomeswevegone/tall_pink_allium.png new file mode 100644 index 00000000..8c729939 Binary files /dev/null and b/public/textures/biomeswevegone/tall_pink_allium.png differ diff --git a/public/textures/biomeswevegone/tall_prairie_grass.png b/public/textures/biomeswevegone/tall_prairie_grass.png new file mode 100644 index 00000000..52036653 Binary files /dev/null and b/public/textures/biomeswevegone/tall_prairie_grass.png differ diff --git a/public/textures/biomeswevegone/tall_white_allium.png b/public/textures/biomeswevegone/tall_white_allium.png new file mode 100644 index 00000000..96595d22 Binary files /dev/null and b/public/textures/biomeswevegone/tall_white_allium.png differ diff --git a/public/textures/biomeswevegone/tiny_lily_pads.png b/public/textures/biomeswevegone/tiny_lily_pads.png new file mode 100644 index 00000000..c71dc61b Binary files /dev/null and b/public/textures/biomeswevegone/tiny_lily_pads.png differ diff --git a/public/textures/biomeswevegone/violet_leather_flower.png b/public/textures/biomeswevegone/violet_leather_flower.png new file mode 100644 index 00000000..a1880480 Binary files /dev/null and b/public/textures/biomeswevegone/violet_leather_flower.png differ diff --git a/public/textures/biomeswevegone/water_silk.png b/public/textures/biomeswevegone/water_silk.png new file mode 100644 index 00000000..1ee3874f Binary files /dev/null and b/public/textures/biomeswevegone/water_silk.png differ diff --git a/public/textures/biomeswevegone/weeping_milkcap.png b/public/textures/biomeswevegone/weeping_milkcap.png new file mode 100644 index 00000000..8d991c22 Binary files /dev/null and b/public/textures/biomeswevegone/weeping_milkcap.png differ diff --git a/public/textures/biomeswevegone/weeping_milkcap_mushroom_block.png b/public/textures/biomeswevegone/weeping_milkcap_mushroom_block.png new file mode 100644 index 00000000..2d92a43c Binary files /dev/null and b/public/textures/biomeswevegone/weeping_milkcap_mushroom_block.png differ diff --git a/public/textures/biomeswevegone/white_allium.png b/public/textures/biomeswevegone/white_allium.png new file mode 100644 index 00000000..c5499835 Binary files /dev/null and b/public/textures/biomeswevegone/white_allium.png differ diff --git a/public/textures/biomeswevegone/white_allium_flower_bush.png b/public/textures/biomeswevegone/white_allium_flower_bush.png new file mode 100644 index 00000000..e3dfadbc Binary files /dev/null and b/public/textures/biomeswevegone/white_allium_flower_bush.png differ diff --git a/public/textures/biomeswevegone/white_allium_petal_block.png b/public/textures/biomeswevegone/white_allium_petal_block.png new file mode 100644 index 00000000..ca02eeb1 Binary files /dev/null and b/public/textures/biomeswevegone/white_allium_petal_block.png differ diff --git a/public/textures/biomeswevegone/white_anemone.png b/public/textures/biomeswevegone/white_anemone.png new file mode 100644 index 00000000..38aa1cd3 Binary files /dev/null and b/public/textures/biomeswevegone/white_anemone.png differ diff --git a/public/textures/biomeswevegone/white_mangrove_boat.png b/public/textures/biomeswevegone/white_mangrove_boat.png new file mode 100644 index 00000000..ebdc6164 Binary files /dev/null and b/public/textures/biomeswevegone/white_mangrove_boat.png differ diff --git a/public/textures/biomeswevegone/white_mangrove_bookshelf.png b/public/textures/biomeswevegone/white_mangrove_bookshelf.png new file mode 100644 index 00000000..8a7f3e8a Binary files /dev/null and b/public/textures/biomeswevegone/white_mangrove_bookshelf.png differ diff --git a/public/textures/biomeswevegone/white_mangrove_button.png b/public/textures/biomeswevegone/white_mangrove_button.png new file mode 100644 index 00000000..2362c316 Binary files /dev/null and b/public/textures/biomeswevegone/white_mangrove_button.png differ diff --git a/public/textures/biomeswevegone/white_mangrove_chest_boat.png b/public/textures/biomeswevegone/white_mangrove_chest_boat.png new file mode 100644 index 00000000..49d2da4f Binary files /dev/null and b/public/textures/biomeswevegone/white_mangrove_chest_boat.png differ diff --git a/public/textures/biomeswevegone/white_mangrove_crafting_table.png b/public/textures/biomeswevegone/white_mangrove_crafting_table.png new file mode 100644 index 00000000..a9b9507a Binary files /dev/null and b/public/textures/biomeswevegone/white_mangrove_crafting_table.png differ diff --git a/public/textures/biomeswevegone/white_mangrove_door.png b/public/textures/biomeswevegone/white_mangrove_door.png new file mode 100644 index 00000000..b02db974 Binary files /dev/null and b/public/textures/biomeswevegone/white_mangrove_door.png differ diff --git a/public/textures/biomeswevegone/white_mangrove_fence.png b/public/textures/biomeswevegone/white_mangrove_fence.png new file mode 100644 index 00000000..079bfab1 Binary files /dev/null and b/public/textures/biomeswevegone/white_mangrove_fence.png differ diff --git a/public/textures/biomeswevegone/white_mangrove_fence_gate.png b/public/textures/biomeswevegone/white_mangrove_fence_gate.png new file mode 100644 index 00000000..dd69b0a2 Binary files /dev/null and b/public/textures/biomeswevegone/white_mangrove_fence_gate.png differ diff --git a/public/textures/biomeswevegone/white_mangrove_hanging_sign.png b/public/textures/biomeswevegone/white_mangrove_hanging_sign.png new file mode 100644 index 00000000..3441a063 Binary files /dev/null and b/public/textures/biomeswevegone/white_mangrove_hanging_sign.png differ diff --git a/public/textures/biomeswevegone/white_mangrove_leaves.png b/public/textures/biomeswevegone/white_mangrove_leaves.png new file mode 100644 index 00000000..225cf52d Binary files /dev/null and b/public/textures/biomeswevegone/white_mangrove_leaves.png differ diff --git a/public/textures/biomeswevegone/white_mangrove_log.png b/public/textures/biomeswevegone/white_mangrove_log.png new file mode 100644 index 00000000..4ad5005d Binary files /dev/null and b/public/textures/biomeswevegone/white_mangrove_log.png differ diff --git a/public/textures/biomeswevegone/white_mangrove_planks.png b/public/textures/biomeswevegone/white_mangrove_planks.png new file mode 100644 index 00000000..fa48c6b6 Binary files /dev/null and b/public/textures/biomeswevegone/white_mangrove_planks.png differ diff --git a/public/textures/biomeswevegone/white_mangrove_pressure_plate.png b/public/textures/biomeswevegone/white_mangrove_pressure_plate.png new file mode 100644 index 00000000..7ab59cca Binary files /dev/null and b/public/textures/biomeswevegone/white_mangrove_pressure_plate.png differ diff --git a/public/textures/biomeswevegone/white_mangrove_sapling.png b/public/textures/biomeswevegone/white_mangrove_sapling.png new file mode 100644 index 00000000..ec07abe4 Binary files /dev/null and b/public/textures/biomeswevegone/white_mangrove_sapling.png differ diff --git a/public/textures/biomeswevegone/white_mangrove_sign.png b/public/textures/biomeswevegone/white_mangrove_sign.png new file mode 100644 index 00000000..0d147253 Binary files /dev/null and b/public/textures/biomeswevegone/white_mangrove_sign.png differ diff --git a/public/textures/biomeswevegone/white_mangrove_slab.png b/public/textures/biomeswevegone/white_mangrove_slab.png new file mode 100644 index 00000000..82e7d7ec Binary files /dev/null and b/public/textures/biomeswevegone/white_mangrove_slab.png differ diff --git a/public/textures/biomeswevegone/white_mangrove_stairs.png b/public/textures/biomeswevegone/white_mangrove_stairs.png new file mode 100644 index 00000000..0435e887 Binary files /dev/null and b/public/textures/biomeswevegone/white_mangrove_stairs.png differ diff --git a/public/textures/biomeswevegone/white_mangrove_trapdoor.png b/public/textures/biomeswevegone/white_mangrove_trapdoor.png new file mode 100644 index 00000000..26c5eab5 Binary files /dev/null and b/public/textures/biomeswevegone/white_mangrove_trapdoor.png differ diff --git a/public/textures/biomeswevegone/white_mangrove_wood.png b/public/textures/biomeswevegone/white_mangrove_wood.png new file mode 100644 index 00000000..72f8c9f9 Binary files /dev/null and b/public/textures/biomeswevegone/white_mangrove_wood.png differ diff --git a/public/textures/biomeswevegone/white_mushroom_stem.png b/public/textures/biomeswevegone/white_mushroom_stem.png new file mode 100644 index 00000000..791291c7 Binary files /dev/null and b/public/textures/biomeswevegone/white_mushroom_stem.png differ diff --git a/public/textures/biomeswevegone/white_puffball_cap.png b/public/textures/biomeswevegone/white_puffball_cap.png new file mode 100644 index 00000000..90391f8a Binary files /dev/null and b/public/textures/biomeswevegone/white_puffball_cap.png differ diff --git a/public/textures/biomeswevegone/white_puffball_spores.png b/public/textures/biomeswevegone/white_puffball_spores.png new file mode 100644 index 00000000..66cfd687 Binary files /dev/null and b/public/textures/biomeswevegone/white_puffball_spores.png differ diff --git a/public/textures/biomeswevegone/white_puffball_stew.png b/public/textures/biomeswevegone/white_puffball_stew.png new file mode 100644 index 00000000..8f86cf7d Binary files /dev/null and b/public/textures/biomeswevegone/white_puffball_stew.png differ diff --git a/public/textures/biomeswevegone/white_sage.png b/public/textures/biomeswevegone/white_sage.png new file mode 100644 index 00000000..e0594bba Binary files /dev/null and b/public/textures/biomeswevegone/white_sage.png differ diff --git a/public/textures/biomeswevegone/white_sakura_leaves.png b/public/textures/biomeswevegone/white_sakura_leaves.png new file mode 100644 index 00000000..1c0dac10 Binary files /dev/null and b/public/textures/biomeswevegone/white_sakura_leaves.png differ diff --git a/public/textures/biomeswevegone/white_sakura_petals.png b/public/textures/biomeswevegone/white_sakura_petals.png new file mode 100644 index 00000000..79ef98f1 Binary files /dev/null and b/public/textures/biomeswevegone/white_sakura_petals.png differ diff --git a/public/textures/biomeswevegone/white_sakura_sapling.png b/public/textures/biomeswevegone/white_sakura_sapling.png new file mode 100644 index 00000000..857f6fac Binary files /dev/null and b/public/textures/biomeswevegone/white_sakura_sapling.png differ diff --git a/public/textures/biomeswevegone/white_sand.png b/public/textures/biomeswevegone/white_sand.png new file mode 100644 index 00000000..a29059ed Binary files /dev/null and b/public/textures/biomeswevegone/white_sand.png differ diff --git a/public/textures/biomeswevegone/white_sandstone.png b/public/textures/biomeswevegone/white_sandstone.png new file mode 100644 index 00000000..7e312c37 Binary files /dev/null and b/public/textures/biomeswevegone/white_sandstone.png differ diff --git a/public/textures/biomeswevegone/white_sandstone_slab.png b/public/textures/biomeswevegone/white_sandstone_slab.png new file mode 100644 index 00000000..933b3f11 Binary files /dev/null and b/public/textures/biomeswevegone/white_sandstone_slab.png differ diff --git a/public/textures/biomeswevegone/white_sandstone_stairs.png b/public/textures/biomeswevegone/white_sandstone_stairs.png new file mode 100644 index 00000000..9d0734e2 Binary files /dev/null and b/public/textures/biomeswevegone/white_sandstone_stairs.png differ diff --git a/public/textures/biomeswevegone/white_sandstone_wall.png b/public/textures/biomeswevegone/white_sandstone_wall.png new file mode 100644 index 00000000..486e54b4 Binary files /dev/null and b/public/textures/biomeswevegone/white_sandstone_wall.png differ diff --git a/public/textures/biomeswevegone/willow_boat.png b/public/textures/biomeswevegone/willow_boat.png new file mode 100644 index 00000000..475b38ca Binary files /dev/null and b/public/textures/biomeswevegone/willow_boat.png differ diff --git a/public/textures/biomeswevegone/willow_bookshelf.png b/public/textures/biomeswevegone/willow_bookshelf.png new file mode 100644 index 00000000..f272124d Binary files /dev/null and b/public/textures/biomeswevegone/willow_bookshelf.png differ diff --git a/public/textures/biomeswevegone/willow_button.png b/public/textures/biomeswevegone/willow_button.png new file mode 100644 index 00000000..ba30817f Binary files /dev/null and b/public/textures/biomeswevegone/willow_button.png differ diff --git a/public/textures/biomeswevegone/willow_chest_boat.png b/public/textures/biomeswevegone/willow_chest_boat.png new file mode 100644 index 00000000..6cda493c Binary files /dev/null and b/public/textures/biomeswevegone/willow_chest_boat.png differ diff --git a/public/textures/biomeswevegone/willow_crafting_table.png b/public/textures/biomeswevegone/willow_crafting_table.png new file mode 100644 index 00000000..acbe7780 Binary files /dev/null and b/public/textures/biomeswevegone/willow_crafting_table.png differ diff --git a/public/textures/biomeswevegone/willow_door.png b/public/textures/biomeswevegone/willow_door.png new file mode 100644 index 00000000..719d7278 Binary files /dev/null and b/public/textures/biomeswevegone/willow_door.png differ diff --git a/public/textures/biomeswevegone/willow_fence.png b/public/textures/biomeswevegone/willow_fence.png new file mode 100644 index 00000000..166f491c Binary files /dev/null and b/public/textures/biomeswevegone/willow_fence.png differ diff --git a/public/textures/biomeswevegone/willow_fence_gate.png b/public/textures/biomeswevegone/willow_fence_gate.png new file mode 100644 index 00000000..cf8fa296 Binary files /dev/null and b/public/textures/biomeswevegone/willow_fence_gate.png differ diff --git a/public/textures/biomeswevegone/willow_hanging_sign.png b/public/textures/biomeswevegone/willow_hanging_sign.png new file mode 100644 index 00000000..b2e775d4 Binary files /dev/null and b/public/textures/biomeswevegone/willow_hanging_sign.png differ diff --git a/public/textures/biomeswevegone/willow_leaves.png b/public/textures/biomeswevegone/willow_leaves.png new file mode 100644 index 00000000..abab6680 Binary files /dev/null and b/public/textures/biomeswevegone/willow_leaves.png differ diff --git a/public/textures/biomeswevegone/willow_log.png b/public/textures/biomeswevegone/willow_log.png new file mode 100644 index 00000000..b844ec4f Binary files /dev/null and b/public/textures/biomeswevegone/willow_log.png differ diff --git a/public/textures/biomeswevegone/willow_planks.png b/public/textures/biomeswevegone/willow_planks.png new file mode 100644 index 00000000..46f79918 Binary files /dev/null and b/public/textures/biomeswevegone/willow_planks.png differ diff --git a/public/textures/biomeswevegone/willow_pressure_plate.png b/public/textures/biomeswevegone/willow_pressure_plate.png new file mode 100644 index 00000000..3ac239ff Binary files /dev/null and b/public/textures/biomeswevegone/willow_pressure_plate.png differ diff --git a/public/textures/biomeswevegone/willow_sapling.png b/public/textures/biomeswevegone/willow_sapling.png new file mode 100644 index 00000000..a70e5079 Binary files /dev/null and b/public/textures/biomeswevegone/willow_sapling.png differ diff --git a/public/textures/biomeswevegone/willow_sign.png b/public/textures/biomeswevegone/willow_sign.png new file mode 100644 index 00000000..238af8da Binary files /dev/null and b/public/textures/biomeswevegone/willow_sign.png differ diff --git a/public/textures/biomeswevegone/willow_slab.png b/public/textures/biomeswevegone/willow_slab.png new file mode 100644 index 00000000..9b651cb5 Binary files /dev/null and b/public/textures/biomeswevegone/willow_slab.png differ diff --git a/public/textures/biomeswevegone/willow_stairs.png b/public/textures/biomeswevegone/willow_stairs.png new file mode 100644 index 00000000..3db5ceff Binary files /dev/null and b/public/textures/biomeswevegone/willow_stairs.png differ diff --git a/public/textures/biomeswevegone/willow_trapdoor.png b/public/textures/biomeswevegone/willow_trapdoor.png new file mode 100644 index 00000000..86d276eb Binary files /dev/null and b/public/textures/biomeswevegone/willow_trapdoor.png differ diff --git a/public/textures/biomeswevegone/willow_wood.png b/public/textures/biomeswevegone/willow_wood.png new file mode 100644 index 00000000..08428d32 Binary files /dev/null and b/public/textures/biomeswevegone/willow_wood.png differ diff --git a/public/textures/biomeswevegone/windswept_sand.png b/public/textures/biomeswevegone/windswept_sand.png new file mode 100644 index 00000000..59579e6c Binary files /dev/null and b/public/textures/biomeswevegone/windswept_sand.png differ diff --git a/public/textures/biomeswevegone/windswept_sandstone.png b/public/textures/biomeswevegone/windswept_sandstone.png new file mode 100644 index 00000000..baea2268 Binary files /dev/null and b/public/textures/biomeswevegone/windswept_sandstone.png differ diff --git a/public/textures/biomeswevegone/windswept_sandstone_pillar.png b/public/textures/biomeswevegone/windswept_sandstone_pillar.png new file mode 100644 index 00000000..8fe8d395 Binary files /dev/null and b/public/textures/biomeswevegone/windswept_sandstone_pillar.png differ diff --git a/public/textures/biomeswevegone/windswept_sandstone_slab.png b/public/textures/biomeswevegone/windswept_sandstone_slab.png new file mode 100644 index 00000000..03ec51d9 Binary files /dev/null and b/public/textures/biomeswevegone/windswept_sandstone_slab.png differ diff --git a/public/textures/biomeswevegone/windswept_sandstone_stairs.png b/public/textures/biomeswevegone/windswept_sandstone_stairs.png new file mode 100644 index 00000000..9e28d6d1 Binary files /dev/null and b/public/textures/biomeswevegone/windswept_sandstone_stairs.png differ diff --git a/public/textures/biomeswevegone/windswept_sandstone_wall.png b/public/textures/biomeswevegone/windswept_sandstone_wall.png new file mode 100644 index 00000000..87f69071 Binary files /dev/null and b/public/textures/biomeswevegone/windswept_sandstone_wall.png differ diff --git a/public/textures/biomeswevegone/winter_cyclamen.png b/public/textures/biomeswevegone/winter_cyclamen.png new file mode 100644 index 00000000..eed7395f Binary files /dev/null and b/public/textures/biomeswevegone/winter_cyclamen.png differ diff --git a/public/textures/biomeswevegone/winter_rose.png b/public/textures/biomeswevegone/winter_rose.png new file mode 100644 index 00000000..fd11fb2a Binary files /dev/null and b/public/textures/biomeswevegone/winter_rose.png differ diff --git a/public/textures/biomeswevegone/winter_scilla.png b/public/textures/biomeswevegone/winter_scilla.png new file mode 100644 index 00000000..07783e10 Binary files /dev/null and b/public/textures/biomeswevegone/winter_scilla.png differ diff --git a/public/textures/biomeswevegone/winter_succulent.png b/public/textures/biomeswevegone/winter_succulent.png new file mode 100644 index 00000000..2a0afbca Binary files /dev/null and b/public/textures/biomeswevegone/winter_succulent.png differ diff --git a/public/textures/biomeswevegone/witch_hazel_blossom.png b/public/textures/biomeswevegone/witch_hazel_blossom.png new file mode 100644 index 00000000..c38c76e7 Binary files /dev/null and b/public/textures/biomeswevegone/witch_hazel_blossom.png differ diff --git a/public/textures/biomeswevegone/witch_hazel_boat.png b/public/textures/biomeswevegone/witch_hazel_boat.png new file mode 100644 index 00000000..a880f938 Binary files /dev/null and b/public/textures/biomeswevegone/witch_hazel_boat.png differ diff --git a/public/textures/biomeswevegone/witch_hazel_bookshelf.png b/public/textures/biomeswevegone/witch_hazel_bookshelf.png new file mode 100644 index 00000000..3bbeba13 Binary files /dev/null and b/public/textures/biomeswevegone/witch_hazel_bookshelf.png differ diff --git a/public/textures/biomeswevegone/witch_hazel_branch.png b/public/textures/biomeswevegone/witch_hazel_branch.png new file mode 100644 index 00000000..7d984184 Binary files /dev/null and b/public/textures/biomeswevegone/witch_hazel_branch.png differ diff --git a/public/textures/biomeswevegone/witch_hazel_button.png b/public/textures/biomeswevegone/witch_hazel_button.png new file mode 100644 index 00000000..66ae7f5e Binary files /dev/null and b/public/textures/biomeswevegone/witch_hazel_button.png differ diff --git a/public/textures/biomeswevegone/witch_hazel_chest_boat.png b/public/textures/biomeswevegone/witch_hazel_chest_boat.png new file mode 100644 index 00000000..ccf42915 Binary files /dev/null and b/public/textures/biomeswevegone/witch_hazel_chest_boat.png differ diff --git a/public/textures/biomeswevegone/witch_hazel_crafting_table.png b/public/textures/biomeswevegone/witch_hazel_crafting_table.png new file mode 100644 index 00000000..98ddb448 Binary files /dev/null and b/public/textures/biomeswevegone/witch_hazel_crafting_table.png differ diff --git a/public/textures/biomeswevegone/witch_hazel_door.png b/public/textures/biomeswevegone/witch_hazel_door.png new file mode 100644 index 00000000..c259acae Binary files /dev/null and b/public/textures/biomeswevegone/witch_hazel_door.png differ diff --git a/public/textures/biomeswevegone/witch_hazel_fence.png b/public/textures/biomeswevegone/witch_hazel_fence.png new file mode 100644 index 00000000..a79a2784 Binary files /dev/null and b/public/textures/biomeswevegone/witch_hazel_fence.png differ diff --git a/public/textures/biomeswevegone/witch_hazel_fence_gate.png b/public/textures/biomeswevegone/witch_hazel_fence_gate.png new file mode 100644 index 00000000..ab2206dc Binary files /dev/null and b/public/textures/biomeswevegone/witch_hazel_fence_gate.png differ diff --git a/public/textures/biomeswevegone/witch_hazel_hanging_sign.png b/public/textures/biomeswevegone/witch_hazel_hanging_sign.png new file mode 100644 index 00000000..3e2281c7 Binary files /dev/null and b/public/textures/biomeswevegone/witch_hazel_hanging_sign.png differ diff --git a/public/textures/biomeswevegone/witch_hazel_leaves.png b/public/textures/biomeswevegone/witch_hazel_leaves.png new file mode 100644 index 00000000..3dddb25f Binary files /dev/null and b/public/textures/biomeswevegone/witch_hazel_leaves.png differ diff --git a/public/textures/biomeswevegone/witch_hazel_log.png b/public/textures/biomeswevegone/witch_hazel_log.png new file mode 100644 index 00000000..d1a3fdcf Binary files /dev/null and b/public/textures/biomeswevegone/witch_hazel_log.png differ diff --git a/public/textures/biomeswevegone/witch_hazel_planks.png b/public/textures/biomeswevegone/witch_hazel_planks.png new file mode 100644 index 00000000..e0479df7 Binary files /dev/null and b/public/textures/biomeswevegone/witch_hazel_planks.png differ diff --git a/public/textures/biomeswevegone/witch_hazel_pressure_plate.png b/public/textures/biomeswevegone/witch_hazel_pressure_plate.png new file mode 100644 index 00000000..b684102b Binary files /dev/null and b/public/textures/biomeswevegone/witch_hazel_pressure_plate.png differ diff --git a/public/textures/biomeswevegone/witch_hazel_sapling.png b/public/textures/biomeswevegone/witch_hazel_sapling.png new file mode 100644 index 00000000..1b0d31e4 Binary files /dev/null and b/public/textures/biomeswevegone/witch_hazel_sapling.png differ diff --git a/public/textures/biomeswevegone/witch_hazel_sign.png b/public/textures/biomeswevegone/witch_hazel_sign.png new file mode 100644 index 00000000..67e3c6da Binary files /dev/null and b/public/textures/biomeswevegone/witch_hazel_sign.png differ diff --git a/public/textures/biomeswevegone/witch_hazel_slab.png b/public/textures/biomeswevegone/witch_hazel_slab.png new file mode 100644 index 00000000..1bcda001 Binary files /dev/null and b/public/textures/biomeswevegone/witch_hazel_slab.png differ diff --git a/public/textures/biomeswevegone/witch_hazel_stairs.png b/public/textures/biomeswevegone/witch_hazel_stairs.png new file mode 100644 index 00000000..000badb0 Binary files /dev/null and b/public/textures/biomeswevegone/witch_hazel_stairs.png differ diff --git a/public/textures/biomeswevegone/witch_hazel_trapdoor.png b/public/textures/biomeswevegone/witch_hazel_trapdoor.png new file mode 100644 index 00000000..2e343e0f Binary files /dev/null and b/public/textures/biomeswevegone/witch_hazel_trapdoor.png differ diff --git a/public/textures/biomeswevegone/witch_hazel_wood.png b/public/textures/biomeswevegone/witch_hazel_wood.png new file mode 100644 index 00000000..8593dc4e Binary files /dev/null and b/public/textures/biomeswevegone/witch_hazel_wood.png differ diff --git a/public/textures/biomeswevegone/wood_blewit.png b/public/textures/biomeswevegone/wood_blewit.png new file mode 100644 index 00000000..eb88e90e Binary files /dev/null and b/public/textures/biomeswevegone/wood_blewit.png differ diff --git a/public/textures/biomeswevegone/wood_blewit_mushroom_block.png b/public/textures/biomeswevegone/wood_blewit_mushroom_block.png new file mode 100644 index 00000000..504acfc4 Binary files /dev/null and b/public/textures/biomeswevegone/wood_blewit_mushroom_block.png differ diff --git a/public/textures/biomeswevegone/yellow_birch_leaves.png b/public/textures/biomeswevegone/yellow_birch_leaves.png new file mode 100644 index 00000000..3abf60e6 Binary files /dev/null and b/public/textures/biomeswevegone/yellow_birch_leaves.png differ diff --git a/public/textures/biomeswevegone/yellow_birch_sapling.png b/public/textures/biomeswevegone/yellow_birch_sapling.png new file mode 100644 index 00000000..3a5b7981 Binary files /dev/null and b/public/textures/biomeswevegone/yellow_birch_sapling.png differ diff --git a/public/textures/biomeswevegone/yellow_daffodil.png b/public/textures/biomeswevegone/yellow_daffodil.png new file mode 100644 index 00000000..e132601b Binary files /dev/null and b/public/textures/biomeswevegone/yellow_daffodil.png differ diff --git a/public/textures/biomeswevegone/yellow_glow_bottle.png b/public/textures/biomeswevegone/yellow_glow_bottle.png new file mode 100644 index 00000000..dfcec359 Binary files /dev/null and b/public/textures/biomeswevegone/yellow_glow_bottle.png differ diff --git a/public/textures/biomeswevegone/yellow_glowcane_powder.png b/public/textures/biomeswevegone/yellow_glowcane_powder.png new file mode 100644 index 00000000..89889a76 Binary files /dev/null and b/public/textures/biomeswevegone/yellow_glowcane_powder.png differ diff --git a/public/textures/biomeswevegone/yellow_glowcane_shoot.png b/public/textures/biomeswevegone/yellow_glowcane_shoot.png new file mode 100644 index 00000000..a34577fc Binary files /dev/null and b/public/textures/biomeswevegone/yellow_glowcane_shoot.png differ diff --git a/public/textures/biomeswevegone/yellow_sakura_leaves.png b/public/textures/biomeswevegone/yellow_sakura_leaves.png new file mode 100644 index 00000000..f6982053 Binary files /dev/null and b/public/textures/biomeswevegone/yellow_sakura_leaves.png differ diff --git a/public/textures/biomeswevegone/yellow_sakura_petals.png b/public/textures/biomeswevegone/yellow_sakura_petals.png new file mode 100644 index 00000000..d798c3d2 Binary files /dev/null and b/public/textures/biomeswevegone/yellow_sakura_petals.png differ diff --git a/public/textures/biomeswevegone/yellow_sakura_sapling.png b/public/textures/biomeswevegone/yellow_sakura_sapling.png new file mode 100644 index 00000000..814d7769 Binary files /dev/null and b/public/textures/biomeswevegone/yellow_sakura_sapling.png differ diff --git a/public/textures/biomeswevegone/yellow_spruce_leaves.png b/public/textures/biomeswevegone/yellow_spruce_leaves.png new file mode 100644 index 00000000..2343c633 Binary files /dev/null and b/public/textures/biomeswevegone/yellow_spruce_leaves.png differ diff --git a/public/textures/biomeswevegone/yellow_spruce_sapling.png b/public/textures/biomeswevegone/yellow_spruce_sapling.png new file mode 100644 index 00000000..a114de68 Binary files /dev/null and b/public/textures/biomeswevegone/yellow_spruce_sapling.png differ diff --git a/public/textures/biomeswevegone/yellow_tulip.png b/public/textures/biomeswevegone/yellow_tulip.png new file mode 100644 index 00000000..5c942b44 Binary files /dev/null and b/public/textures/biomeswevegone/yellow_tulip.png differ diff --git a/public/textures/biomeswevegone/yucca_fruit.png b/public/textures/biomeswevegone/yucca_fruit.png new file mode 100644 index 00000000..f75cd763 Binary files /dev/null and b/public/textures/biomeswevegone/yucca_fruit.png differ diff --git a/public/textures/biomeswevegone/yucca_leaves.png b/public/textures/biomeswevegone/yucca_leaves.png new file mode 100644 index 00000000..63f43450 Binary files /dev/null and b/public/textures/biomeswevegone/yucca_leaves.png differ diff --git a/public/textures/biomeswevegone/yucca_sapling.png b/public/textures/biomeswevegone/yucca_sapling.png new file mode 100644 index 00000000..08ad0fc0 Binary files /dev/null and b/public/textures/biomeswevegone/yucca_sapling.png differ diff --git a/public/textures/biomeswevegone/zelkova_boat.png b/public/textures/biomeswevegone/zelkova_boat.png new file mode 100644 index 00000000..255dd102 Binary files /dev/null and b/public/textures/biomeswevegone/zelkova_boat.png differ diff --git a/public/textures/biomeswevegone/zelkova_bookshelf.png b/public/textures/biomeswevegone/zelkova_bookshelf.png new file mode 100644 index 00000000..d1b88091 Binary files /dev/null and b/public/textures/biomeswevegone/zelkova_bookshelf.png differ diff --git a/public/textures/biomeswevegone/zelkova_button.png b/public/textures/biomeswevegone/zelkova_button.png new file mode 100644 index 00000000..9cb9c9c5 Binary files /dev/null and b/public/textures/biomeswevegone/zelkova_button.png differ diff --git a/public/textures/biomeswevegone/zelkova_chest_boat.png b/public/textures/biomeswevegone/zelkova_chest_boat.png new file mode 100644 index 00000000..a3da97ee Binary files /dev/null and b/public/textures/biomeswevegone/zelkova_chest_boat.png differ diff --git a/public/textures/biomeswevegone/zelkova_crafting_table.png b/public/textures/biomeswevegone/zelkova_crafting_table.png new file mode 100644 index 00000000..c6f52e31 Binary files /dev/null and b/public/textures/biomeswevegone/zelkova_crafting_table.png differ diff --git a/public/textures/biomeswevegone/zelkova_door.png b/public/textures/biomeswevegone/zelkova_door.png new file mode 100644 index 00000000..00ed9c45 Binary files /dev/null and b/public/textures/biomeswevegone/zelkova_door.png differ diff --git a/public/textures/biomeswevegone/zelkova_fence.png b/public/textures/biomeswevegone/zelkova_fence.png new file mode 100644 index 00000000..b73b016d Binary files /dev/null and b/public/textures/biomeswevegone/zelkova_fence.png differ diff --git a/public/textures/biomeswevegone/zelkova_fence_gate.png b/public/textures/biomeswevegone/zelkova_fence_gate.png new file mode 100644 index 00000000..f3ca70e0 Binary files /dev/null and b/public/textures/biomeswevegone/zelkova_fence_gate.png differ diff --git a/public/textures/biomeswevegone/zelkova_hanging_sign.png b/public/textures/biomeswevegone/zelkova_hanging_sign.png new file mode 100644 index 00000000..91cb25ab Binary files /dev/null and b/public/textures/biomeswevegone/zelkova_hanging_sign.png differ diff --git a/public/textures/biomeswevegone/zelkova_leaves.png b/public/textures/biomeswevegone/zelkova_leaves.png new file mode 100644 index 00000000..a3be4741 Binary files /dev/null and b/public/textures/biomeswevegone/zelkova_leaves.png differ diff --git a/public/textures/biomeswevegone/zelkova_log.png b/public/textures/biomeswevegone/zelkova_log.png new file mode 100644 index 00000000..769e813a Binary files /dev/null and b/public/textures/biomeswevegone/zelkova_log.png differ diff --git a/public/textures/biomeswevegone/zelkova_planks.png b/public/textures/biomeswevegone/zelkova_planks.png new file mode 100644 index 00000000..426f69de Binary files /dev/null and b/public/textures/biomeswevegone/zelkova_planks.png differ diff --git a/public/textures/biomeswevegone/zelkova_pressure_plate.png b/public/textures/biomeswevegone/zelkova_pressure_plate.png new file mode 100644 index 00000000..6c77eb43 Binary files /dev/null and b/public/textures/biomeswevegone/zelkova_pressure_plate.png differ diff --git a/public/textures/biomeswevegone/zelkova_sapling.png b/public/textures/biomeswevegone/zelkova_sapling.png new file mode 100644 index 00000000..644e4c37 Binary files /dev/null and b/public/textures/biomeswevegone/zelkova_sapling.png differ diff --git a/public/textures/biomeswevegone/zelkova_sign.png b/public/textures/biomeswevegone/zelkova_sign.png new file mode 100644 index 00000000..aae6afe9 Binary files /dev/null and b/public/textures/biomeswevegone/zelkova_sign.png differ diff --git a/public/textures/biomeswevegone/zelkova_slab.png b/public/textures/biomeswevegone/zelkova_slab.png new file mode 100644 index 00000000..b603fb4b Binary files /dev/null and b/public/textures/biomeswevegone/zelkova_slab.png differ diff --git a/public/textures/biomeswevegone/zelkova_stairs.png b/public/textures/biomeswevegone/zelkova_stairs.png new file mode 100644 index 00000000..87afc739 Binary files /dev/null and b/public/textures/biomeswevegone/zelkova_stairs.png differ diff --git a/public/textures/biomeswevegone/zelkova_trapdoor.png b/public/textures/biomeswevegone/zelkova_trapdoor.png new file mode 100644 index 00000000..22e6665e Binary files /dev/null and b/public/textures/biomeswevegone/zelkova_trapdoor.png differ diff --git a/public/textures/biomeswevegone/zelkova_wood.png b/public/textures/biomeswevegone/zelkova_wood.png new file mode 100644 index 00000000..147f7f1d Binary files /dev/null and b/public/textures/biomeswevegone/zelkova_wood.png differ diff --git a/public/textures/brewinandchewin/apple_jelly.png b/public/textures/brewinandchewin/apple_jelly.png new file mode 100644 index 00000000..b36073a1 Binary files /dev/null and b/public/textures/brewinandchewin/apple_jelly.png differ diff --git a/public/textures/brewinandchewin/beer.png b/public/textures/brewinandchewin/beer.png new file mode 100644 index 00000000..4ca10b24 Binary files /dev/null and b/public/textures/brewinandchewin/beer.png differ diff --git a/public/textures/brewinandchewin/bloody_mary.png b/public/textures/brewinandchewin/bloody_mary.png new file mode 100644 index 00000000..44ad93bb Binary files /dev/null and b/public/textures/brewinandchewin/bloody_mary.png differ diff --git a/public/textures/brewinandchewin/cheesy_pasta.png b/public/textures/brewinandchewin/cheesy_pasta.png new file mode 100644 index 00000000..0d939658 Binary files /dev/null and b/public/textures/brewinandchewin/cheesy_pasta.png differ diff --git a/public/textures/brewinandchewin/coaster.png b/public/textures/brewinandchewin/coaster.png new file mode 100644 index 00000000..4927b9ed Binary files /dev/null and b/public/textures/brewinandchewin/coaster.png differ diff --git a/public/textures/brewinandchewin/cocoa_fudge.png b/public/textures/brewinandchewin/cocoa_fudge.png new file mode 100644 index 00000000..22297351 Binary files /dev/null and b/public/textures/brewinandchewin/cocoa_fudge.png differ diff --git a/public/textures/brewinandchewin/creamy_onion_soup.png b/public/textures/brewinandchewin/creamy_onion_soup.png new file mode 100644 index 00000000..3fc894dc Binary files /dev/null and b/public/textures/brewinandchewin/creamy_onion_soup.png differ diff --git a/public/textures/brewinandchewin/dread_nog.png b/public/textures/brewinandchewin/dread_nog.png new file mode 100644 index 00000000..77fecb69 Binary files /dev/null and b/public/textures/brewinandchewin/dread_nog.png differ diff --git a/public/textures/brewinandchewin/egg_grog.png b/public/textures/brewinandchewin/egg_grog.png new file mode 100644 index 00000000..44e8a4c3 Binary files /dev/null and b/public/textures/brewinandchewin/egg_grog.png differ diff --git a/public/textures/brewinandchewin/fiery_fondue.png b/public/textures/brewinandchewin/fiery_fondue.png new file mode 100644 index 00000000..a27bc07d Binary files /dev/null and b/public/textures/brewinandchewin/fiery_fondue.png differ diff --git a/public/textures/brewinandchewin/fiery_fondue_pot.png b/public/textures/brewinandchewin/fiery_fondue_pot.png new file mode 100644 index 00000000..11e6d0c2 Binary files /dev/null and b/public/textures/brewinandchewin/fiery_fondue_pot.png differ diff --git a/public/textures/brewinandchewin/flaxen_cheese_wedge.png b/public/textures/brewinandchewin/flaxen_cheese_wedge.png new file mode 100644 index 00000000..ccbc8b2a Binary files /dev/null and b/public/textures/brewinandchewin/flaxen_cheese_wedge.png differ diff --git a/public/textures/brewinandchewin/flaxen_cheese_wheel.png b/public/textures/brewinandchewin/flaxen_cheese_wheel.png new file mode 100644 index 00000000..2223e0b7 Binary files /dev/null and b/public/textures/brewinandchewin/flaxen_cheese_wheel.png differ diff --git a/public/textures/brewinandchewin/glittering_grenadine.png b/public/textures/brewinandchewin/glittering_grenadine.png new file mode 100644 index 00000000..2cbfb47a Binary files /dev/null and b/public/textures/brewinandchewin/glittering_grenadine.png differ diff --git a/public/textures/brewinandchewin/glow_berry_marmalade.png b/public/textures/brewinandchewin/glow_berry_marmalade.png new file mode 100644 index 00000000..b55c63cd Binary files /dev/null and b/public/textures/brewinandchewin/glow_berry_marmalade.png differ diff --git a/public/textures/brewinandchewin/ham_and_cheese_sandwich.png b/public/textures/brewinandchewin/ham_and_cheese_sandwich.png new file mode 100644 index 00000000..c9b59c48 Binary files /dev/null and b/public/textures/brewinandchewin/ham_and_cheese_sandwich.png differ diff --git a/public/textures/brewinandchewin/heating_cask.png b/public/textures/brewinandchewin/heating_cask.png new file mode 100644 index 00000000..74bfbe76 Binary files /dev/null and b/public/textures/brewinandchewin/heating_cask.png differ diff --git a/public/textures/brewinandchewin/horror_lasagna.png b/public/textures/brewinandchewin/horror_lasagna.png new file mode 100644 index 00000000..68fff26e Binary files /dev/null and b/public/textures/brewinandchewin/horror_lasagna.png differ diff --git a/public/textures/brewinandchewin/ice_crate.png b/public/textures/brewinandchewin/ice_crate.png new file mode 100644 index 00000000..5016479e Binary files /dev/null and b/public/textures/brewinandchewin/ice_crate.png differ diff --git a/public/textures/brewinandchewin/jerky.png b/public/textures/brewinandchewin/jerky.png new file mode 100644 index 00000000..d07f56aa Binary files /dev/null and b/public/textures/brewinandchewin/jerky.png differ diff --git a/public/textures/brewinandchewin/keg.png b/public/textures/brewinandchewin/keg.png new file mode 100644 index 00000000..342a8e18 Binary files /dev/null and b/public/textures/brewinandchewin/keg.png differ diff --git a/public/textures/brewinandchewin/kimchi.png b/public/textures/brewinandchewin/kimchi.png new file mode 100644 index 00000000..a5e1b88c Binary files /dev/null and b/public/textures/brewinandchewin/kimchi.png differ diff --git a/public/textures/brewinandchewin/kippers.png b/public/textures/brewinandchewin/kippers.png new file mode 100644 index 00000000..a4184c3d Binary files /dev/null and b/public/textures/brewinandchewin/kippers.png differ diff --git a/public/textures/brewinandchewin/mead.png b/public/textures/brewinandchewin/mead.png new file mode 100644 index 00000000..a19c6c8d Binary files /dev/null and b/public/textures/brewinandchewin/mead.png differ diff --git a/public/textures/brewinandchewin/pale_jane.png b/public/textures/brewinandchewin/pale_jane.png new file mode 100644 index 00000000..39305cef Binary files /dev/null and b/public/textures/brewinandchewin/pale_jane.png differ diff --git a/public/textures/brewinandchewin/pickled_pickles.png b/public/textures/brewinandchewin/pickled_pickles.png new file mode 100644 index 00000000..42b00483 Binary files /dev/null and b/public/textures/brewinandchewin/pickled_pickles.png differ diff --git a/public/textures/brewinandchewin/pizza.png b/public/textures/brewinandchewin/pizza.png new file mode 100644 index 00000000..4dfdfa6c Binary files /dev/null and b/public/textures/brewinandchewin/pizza.png differ diff --git a/public/textures/brewinandchewin/pizza_slice.png b/public/textures/brewinandchewin/pizza_slice.png new file mode 100644 index 00000000..d4a41d70 Binary files /dev/null and b/public/textures/brewinandchewin/pizza_slice.png differ diff --git a/public/textures/brewinandchewin/quiche.png b/public/textures/brewinandchewin/quiche.png new file mode 100644 index 00000000..e9d25246 Binary files /dev/null and b/public/textures/brewinandchewin/quiche.png differ diff --git a/public/textures/brewinandchewin/quiche_slice.png b/public/textures/brewinandchewin/quiche_slice.png new file mode 100644 index 00000000..5a3f4963 Binary files /dev/null and b/public/textures/brewinandchewin/quiche_slice.png differ diff --git a/public/textures/brewinandchewin/red_rum.png b/public/textures/brewinandchewin/red_rum.png new file mode 100644 index 00000000..96d53f0f Binary files /dev/null and b/public/textures/brewinandchewin/red_rum.png differ diff --git a/public/textures/brewinandchewin/rice_wine.png b/public/textures/brewinandchewin/rice_wine.png new file mode 100644 index 00000000..d69f882b Binary files /dev/null and b/public/textures/brewinandchewin/rice_wine.png differ diff --git a/public/textures/brewinandchewin/saccharine_rum.png b/public/textures/brewinandchewin/saccharine_rum.png new file mode 100644 index 00000000..4d3c65b7 Binary files /dev/null and b/public/textures/brewinandchewin/saccharine_rum.png differ diff --git a/public/textures/brewinandchewin/salty_folly.png b/public/textures/brewinandchewin/salty_folly.png new file mode 100644 index 00000000..a0e0441a Binary files /dev/null and b/public/textures/brewinandchewin/salty_folly.png differ diff --git a/public/textures/brewinandchewin/scarlet_cheese_wedge.png b/public/textures/brewinandchewin/scarlet_cheese_wedge.png new file mode 100644 index 00000000..7ea71423 Binary files /dev/null and b/public/textures/brewinandchewin/scarlet_cheese_wedge.png differ diff --git a/public/textures/brewinandchewin/scarlet_cheese_wheel.png b/public/textures/brewinandchewin/scarlet_cheese_wheel.png new file mode 100644 index 00000000..06e07137 Binary files /dev/null and b/public/textures/brewinandchewin/scarlet_cheese_wheel.png differ diff --git a/public/textures/brewinandchewin/scarlet_pierogi.png b/public/textures/brewinandchewin/scarlet_pierogi.png new file mode 100644 index 00000000..93a3e29c Binary files /dev/null and b/public/textures/brewinandchewin/scarlet_pierogi.png differ diff --git a/public/textures/brewinandchewin/steel_toe_stout.png b/public/textures/brewinandchewin/steel_toe_stout.png new file mode 100644 index 00000000..03934c5c Binary files /dev/null and b/public/textures/brewinandchewin/steel_toe_stout.png differ diff --git a/public/textures/brewinandchewin/strongroot_ale.png b/public/textures/brewinandchewin/strongroot_ale.png new file mode 100644 index 00000000..0daf8f9c Binary files /dev/null and b/public/textures/brewinandchewin/strongroot_ale.png differ diff --git a/public/textures/brewinandchewin/sweet_berry_jam.png b/public/textures/brewinandchewin/sweet_berry_jam.png new file mode 100644 index 00000000..14df33d5 Binary files /dev/null and b/public/textures/brewinandchewin/sweet_berry_jam.png differ diff --git a/public/textures/brewinandchewin/tankard.png b/public/textures/brewinandchewin/tankard.png new file mode 100644 index 00000000..63b927f5 Binary files /dev/null and b/public/textures/brewinandchewin/tankard.png differ diff --git a/public/textures/brewinandchewin/unripe_flaxen_cheese_wheel.png b/public/textures/brewinandchewin/unripe_flaxen_cheese_wheel.png new file mode 100644 index 00000000..8fb6e77c Binary files /dev/null and b/public/textures/brewinandchewin/unripe_flaxen_cheese_wheel.png differ diff --git a/public/textures/brewinandchewin/unripe_scarlet_cheese_wheel.png b/public/textures/brewinandchewin/unripe_scarlet_cheese_wheel.png new file mode 100644 index 00000000..e4d1cf5f Binary files /dev/null and b/public/textures/brewinandchewin/unripe_scarlet_cheese_wheel.png differ diff --git a/public/textures/brewinandchewin/vegetable_omelet.png b/public/textures/brewinandchewin/vegetable_omelet.png new file mode 100644 index 00000000..bd394a0d Binary files /dev/null and b/public/textures/brewinandchewin/vegetable_omelet.png differ diff --git a/public/textures/brewinandchewin/vodka.png b/public/textures/brewinandchewin/vodka.png new file mode 100644 index 00000000..72d7b596 Binary files /dev/null and b/public/textures/brewinandchewin/vodka.png differ diff --git a/public/textures/brewinandchewin/withering_dross.png b/public/textures/brewinandchewin/withering_dross.png new file mode 100644 index 00000000..b8d08c54 Binary files /dev/null and b/public/textures/brewinandchewin/withering_dross.png differ diff --git a/public/textures/buildersjetpackmod/builders_jetpack.png b/public/textures/buildersjetpackmod/builders_jetpack.png new file mode 100644 index 00000000..4019f1d1 Binary files /dev/null and b/public/textures/buildersjetpackmod/builders_jetpack.png differ diff --git a/public/textures/buildersjetpackmod/jetpack_fuel.png b/public/textures/buildersjetpackmod/jetpack_fuel.png new file mode 100644 index 00000000..6de5e441 Binary files /dev/null and b/public/textures/buildersjetpackmod/jetpack_fuel.png differ diff --git a/public/textures/camera/album.png b/public/textures/camera/album.png new file mode 100644 index 00000000..2f9af9d8 Binary files /dev/null and b/public/textures/camera/album.png differ diff --git a/public/textures/camera/camera.png b/public/textures/camera/camera.png new file mode 100644 index 00000000..95e5fa47 Binary files /dev/null and b/public/textures/camera/camera.png differ diff --git a/public/textures/camera/image_frame.png b/public/textures/camera/image_frame.png new file mode 100644 index 00000000..47bd8a46 Binary files /dev/null and b/public/textures/camera/image_frame.png differ diff --git a/public/textures/chipped/acacia_barrel.png b/public/textures/chipped/acacia_barrel.png new file mode 100644 index 00000000..4632f1d8 Binary files /dev/null and b/public/textures/chipped/acacia_barrel.png differ diff --git a/public/textures/chipped/acacia_crate.png b/public/textures/chipped/acacia_crate.png new file mode 100644 index 00000000..f85a796a Binary files /dev/null and b/public/textures/chipped/acacia_crate.png differ diff --git a/public/textures/chipped/acacia_planks_mosaic.png b/public/textures/chipped/acacia_planks_mosaic.png new file mode 100644 index 00000000..38c8cf4f Binary files /dev/null and b/public/textures/chipped/acacia_planks_mosaic.png differ diff --git a/public/textures/chipped/acacia_planks_panel.png b/public/textures/chipped/acacia_planks_panel.png new file mode 100644 index 00000000..17dbc882 Binary files /dev/null and b/public/textures/chipped/acacia_planks_panel.png differ diff --git a/public/textures/chipped/acacia_planks_shavings.png b/public/textures/chipped/acacia_planks_shavings.png new file mode 100644 index 00000000..0e4ceb97 Binary files /dev/null and b/public/textures/chipped/acacia_planks_shavings.png differ diff --git a/public/textures/chipped/acacia_torch.png b/public/textures/chipped/acacia_torch.png new file mode 100644 index 00000000..4b3de125 Binary files /dev/null and b/public/textures/chipped/acacia_torch.png differ diff --git a/public/textures/chipped/ad_astra_ochre_froglight.png b/public/textures/chipped/ad_astra_ochre_froglight.png new file mode 100644 index 00000000..5aaa08bf Binary files /dev/null and b/public/textures/chipped/ad_astra_ochre_froglight.png differ diff --git a/public/textures/chipped/ad_astra_pearlescent_froglight.png b/public/textures/chipped/ad_astra_pearlescent_froglight.png new file mode 100644 index 00000000..184a5787 Binary files /dev/null and b/public/textures/chipped/ad_astra_pearlescent_froglight.png differ diff --git a/public/textures/chipped/ad_astra_verdant_froglight.png b/public/textures/chipped/ad_astra_verdant_froglight.png new file mode 100644 index 00000000..8eae2601 Binary files /dev/null and b/public/textures/chipped/ad_astra_verdant_froglight.png differ diff --git a/public/textures/chipped/airy_birch_trapdoor.png b/public/textures/chipped/airy_birch_trapdoor.png new file mode 100644 index 00000000..1becc13a Binary files /dev/null and b/public/textures/chipped/airy_birch_trapdoor.png differ diff --git a/public/textures/chipped/airy_crimson_trapdoor.png b/public/textures/chipped/airy_crimson_trapdoor.png new file mode 100644 index 00000000..e70294f6 Binary files /dev/null and b/public/textures/chipped/airy_crimson_trapdoor.png differ diff --git a/public/textures/chipped/airy_dark_oak_trapdoor.png b/public/textures/chipped/airy_dark_oak_trapdoor.png new file mode 100644 index 00000000..d9bac62f Binary files /dev/null and b/public/textures/chipped/airy_dark_oak_trapdoor.png differ diff --git a/public/textures/chipped/airy_jungle_trapdoor.png b/public/textures/chipped/airy_jungle_trapdoor.png new file mode 100644 index 00000000..5c2d236a Binary files /dev/null and b/public/textures/chipped/airy_jungle_trapdoor.png differ diff --git a/public/textures/chipped/airy_mangrove_trapdoor.png b/public/textures/chipped/airy_mangrove_trapdoor.png new file mode 100644 index 00000000..5c5bfbd7 Binary files /dev/null and b/public/textures/chipped/airy_mangrove_trapdoor.png differ diff --git a/public/textures/chipped/airy_oak_trapdoor.png b/public/textures/chipped/airy_oak_trapdoor.png new file mode 100644 index 00000000..452e43a4 Binary files /dev/null and b/public/textures/chipped/airy_oak_trapdoor.png differ diff --git a/public/textures/chipped/airy_spruce_trapdoor.png b/public/textures/chipped/airy_spruce_trapdoor.png new file mode 100644 index 00000000..086185b8 Binary files /dev/null and b/public/textures/chipped/airy_spruce_trapdoor.png differ diff --git a/public/textures/chipped/airy_warped_trapdoor.png b/public/textures/chipped/airy_warped_trapdoor.png new file mode 100644 index 00000000..a4ae9ce8 Binary files /dev/null and b/public/textures/chipped/airy_warped_trapdoor.png differ diff --git a/public/textures/chipped/alchemy_bench.png b/public/textures/chipped/alchemy_bench.png new file mode 100644 index 00000000..60fa6b80 Binary files /dev/null and b/public/textures/chipped/alchemy_bench.png differ diff --git a/public/textures/chipped/alchemy_book.png b/public/textures/chipped/alchemy_book.png new file mode 100644 index 00000000..9354c5d3 Binary files /dev/null and b/public/textures/chipped/alchemy_book.png differ diff --git a/public/textures/chipped/amethyst_block_bricks.png b/public/textures/chipped/amethyst_block_bricks.png new file mode 100644 index 00000000..91d97f79 Binary files /dev/null and b/public/textures/chipped/amethyst_block_bricks.png differ diff --git a/public/textures/chipped/amethyst_block_mini_tiles.png b/public/textures/chipped/amethyst_block_mini_tiles.png new file mode 100644 index 00000000..05ae36c3 Binary files /dev/null and b/public/textures/chipped/amethyst_block_mini_tiles.png differ diff --git a/public/textures/chipped/amethyst_block_pillar.png b/public/textures/chipped/amethyst_block_pillar.png new file mode 100644 index 00000000..67469880 Binary files /dev/null and b/public/textures/chipped/amethyst_block_pillar.png differ diff --git a/public/textures/chipped/amethyst_block_pillar_top.png b/public/textures/chipped/amethyst_block_pillar_top.png new file mode 100644 index 00000000..de429cca Binary files /dev/null and b/public/textures/chipped/amethyst_block_pillar_top.png differ diff --git a/public/textures/chipped/amethyst_block_scales.png b/public/textures/chipped/amethyst_block_scales.png new file mode 100644 index 00000000..8f51a121 Binary files /dev/null and b/public/textures/chipped/amethyst_block_scales.png differ diff --git a/public/textures/chipped/ancient_cubed_oak_bookshelf.png b/public/textures/chipped/ancient_cubed_oak_bookshelf.png new file mode 100644 index 00000000..35e6b3de Binary files /dev/null and b/public/textures/chipped/ancient_cubed_oak_bookshelf.png differ diff --git a/public/textures/chipped/ancient_debris_bricks.png b/public/textures/chipped/ancient_debris_bricks.png new file mode 100644 index 00000000..f6848e31 Binary files /dev/null and b/public/textures/chipped/ancient_debris_bricks.png differ diff --git a/public/textures/chipped/ancient_debris_mini_tiles.png b/public/textures/chipped/ancient_debris_mini_tiles.png new file mode 100644 index 00000000..5294a145 Binary files /dev/null and b/public/textures/chipped/ancient_debris_mini_tiles.png differ diff --git a/public/textures/chipped/ancient_debris_pillar.png b/public/textures/chipped/ancient_debris_pillar.png new file mode 100644 index 00000000..95517fe4 Binary files /dev/null and b/public/textures/chipped/ancient_debris_pillar.png differ diff --git a/public/textures/chipped/ancient_debris_pillar_top.png b/public/textures/chipped/ancient_debris_pillar_top.png new file mode 100644 index 00000000..8b56d69d Binary files /dev/null and b/public/textures/chipped/ancient_debris_pillar_top.png differ diff --git a/public/textures/chipped/ancient_debris_scales.png b/public/textures/chipped/ancient_debris_scales.png new file mode 100644 index 00000000..a273bb7e Binary files /dev/null and b/public/textures/chipped/ancient_debris_scales.png differ diff --git a/public/textures/chipped/ancient_diamond_block.png b/public/textures/chipped/ancient_diamond_block.png new file mode 100644 index 00000000..b8af7151 Binary files /dev/null and b/public/textures/chipped/ancient_diamond_block.png differ diff --git a/public/textures/chipped/ancient_emerald_block.png b/public/textures/chipped/ancient_emerald_block.png new file mode 100644 index 00000000..6ff29fba Binary files /dev/null and b/public/textures/chipped/ancient_emerald_block.png differ diff --git a/public/textures/chipped/ancient_gold_block.png b/public/textures/chipped/ancient_gold_block.png new file mode 100644 index 00000000..feda252d Binary files /dev/null and b/public/textures/chipped/ancient_gold_block.png differ diff --git a/public/textures/chipped/ancient_iron_block.png b/public/textures/chipped/ancient_iron_block.png new file mode 100644 index 00000000..ed0e9fcc Binary files /dev/null and b/public/textures/chipped/ancient_iron_block.png differ diff --git a/public/textures/chipped/ancient_oak_bookshelf.png b/public/textures/chipped/ancient_oak_bookshelf.png new file mode 100644 index 00000000..0ad1a856 Binary files /dev/null and b/public/textures/chipped/ancient_oak_bookshelf.png differ diff --git a/public/textures/chipped/ancient_oak_large_bookshelf.png b/public/textures/chipped/ancient_oak_large_bookshelf.png new file mode 100644 index 00000000..08b395be Binary files /dev/null and b/public/textures/chipped/ancient_oak_large_bookshelf.png differ diff --git a/public/textures/chipped/ancient_ochre_froglight.png b/public/textures/chipped/ancient_ochre_froglight.png new file mode 100644 index 00000000..4c6a1b17 Binary files /dev/null and b/public/textures/chipped/ancient_ochre_froglight.png differ diff --git a/public/textures/chipped/ancient_pearlescent_froglight.png b/public/textures/chipped/ancient_pearlescent_froglight.png new file mode 100644 index 00000000..2370658e Binary files /dev/null and b/public/textures/chipped/ancient_pearlescent_froglight.png differ diff --git a/public/textures/chipped/ancient_verdant_froglight.png b/public/textures/chipped/ancient_verdant_froglight.png new file mode 100644 index 00000000..74b78ab7 Binary files /dev/null and b/public/textures/chipped/ancient_verdant_froglight.png differ diff --git a/public/textures/chipped/ancient_vertical_oak_bookshelf.png b/public/textures/chipped/ancient_vertical_oak_bookshelf.png new file mode 100644 index 00000000..6fee9afc Binary files /dev/null and b/public/textures/chipped/ancient_vertical_oak_bookshelf.png differ diff --git a/public/textures/chipped/ancient_waxed_copper_block.png b/public/textures/chipped/ancient_waxed_copper_block.png new file mode 100644 index 00000000..eea5c2b2 Binary files /dev/null and b/public/textures/chipped/ancient_waxed_copper_block.png differ diff --git a/public/textures/chipped/ancient_waxed_exposed_copper.png b/public/textures/chipped/ancient_waxed_exposed_copper.png new file mode 100644 index 00000000..f2c38dc6 Binary files /dev/null and b/public/textures/chipped/ancient_waxed_exposed_copper.png differ diff --git a/public/textures/chipped/ancient_waxed_oxidized_copper.png b/public/textures/chipped/ancient_waxed_oxidized_copper.png new file mode 100644 index 00000000..fe7a241e Binary files /dev/null and b/public/textures/chipped/ancient_waxed_oxidized_copper.png differ diff --git a/public/textures/chipped/ancient_waxed_weathered_copper.png b/public/textures/chipped/ancient_waxed_weathered_copper.png new file mode 100644 index 00000000..0fe62f5f Binary files /dev/null and b/public/textures/chipped/ancient_waxed_weathered_copper.png differ diff --git a/public/textures/chipped/andesite_bricks.png b/public/textures/chipped/andesite_bricks.png new file mode 100644 index 00000000..e84e27ca Binary files /dev/null and b/public/textures/chipped/andesite_bricks.png differ diff --git a/public/textures/chipped/andesite_gravel.png b/public/textures/chipped/andesite_gravel.png new file mode 100644 index 00000000..8eaeff71 Binary files /dev/null and b/public/textures/chipped/andesite_gravel.png differ diff --git a/public/textures/chipped/andesite_mini_tiles.png b/public/textures/chipped/andesite_mini_tiles.png new file mode 100644 index 00000000..a8eeef23 Binary files /dev/null and b/public/textures/chipped/andesite_mini_tiles.png differ diff --git a/public/textures/chipped/andesite_pillar.png b/public/textures/chipped/andesite_pillar.png new file mode 100644 index 00000000..9df08f5c Binary files /dev/null and b/public/textures/chipped/andesite_pillar.png differ diff --git a/public/textures/chipped/andesite_pillar_top.png b/public/textures/chipped/andesite_pillar_top.png new file mode 100644 index 00000000..e684b546 Binary files /dev/null and b/public/textures/chipped/andesite_pillar_top.png differ diff --git a/public/textures/chipped/andesite_pointed_dripstone.png b/public/textures/chipped/andesite_pointed_dripstone.png new file mode 100644 index 00000000..bc88450a Binary files /dev/null and b/public/textures/chipped/andesite_pointed_dripstone.png differ diff --git a/public/textures/chipped/andesite_scales.png b/public/textures/chipped/andesite_scales.png new file mode 100644 index 00000000..f46dab0b Binary files /dev/null and b/public/textures/chipped/andesite_scales.png differ diff --git a/public/textures/chipped/angled_mud_bricks.png b/public/textures/chipped/angled_mud_bricks.png new file mode 100644 index 00000000..e1b57a2b Binary files /dev/null and b/public/textures/chipped/angled_mud_bricks.png differ diff --git a/public/textures/chipped/angled_mud_bricks_bricks.png b/public/textures/chipped/angled_mud_bricks_bricks.png new file mode 100644 index 00000000..9091c57b Binary files /dev/null and b/public/textures/chipped/angled_mud_bricks_bricks.png differ diff --git a/public/textures/chipped/angled_packed_mud_bricks.png b/public/textures/chipped/angled_packed_mud_bricks.png new file mode 100644 index 00000000..02b31c88 Binary files /dev/null and b/public/textures/chipped/angled_packed_mud_bricks.png differ diff --git a/public/textures/chipped/angry_amethyst_block.png b/public/textures/chipped/angry_amethyst_block.png new file mode 100644 index 00000000..1dd07404 Binary files /dev/null and b/public/textures/chipped/angry_amethyst_block.png differ diff --git a/public/textures/chipped/angry_ancient_debris.png b/public/textures/chipped/angry_ancient_debris.png new file mode 100644 index 00000000..bb2d6a85 Binary files /dev/null and b/public/textures/chipped/angry_ancient_debris.png differ diff --git a/public/textures/chipped/angry_andesite.png b/public/textures/chipped/angry_andesite.png new file mode 100644 index 00000000..fc390d52 Binary files /dev/null and b/public/textures/chipped/angry_andesite.png differ diff --git a/public/textures/chipped/angry_basalt.png b/public/textures/chipped/angry_basalt.png new file mode 100644 index 00000000..c10733a4 Binary files /dev/null and b/public/textures/chipped/angry_basalt.png differ diff --git a/public/textures/chipped/angry_blackstone.png b/public/textures/chipped/angry_blackstone.png new file mode 100644 index 00000000..bd324f09 Binary files /dev/null and b/public/textures/chipped/angry_blackstone.png differ diff --git a/public/textures/chipped/angry_blue_ice.png b/public/textures/chipped/angry_blue_ice.png new file mode 100644 index 00000000..00662428 Binary files /dev/null and b/public/textures/chipped/angry_blue_ice.png differ diff --git a/public/textures/chipped/angry_borderless_bricks.png b/public/textures/chipped/angry_borderless_bricks.png new file mode 100644 index 00000000..2373de69 Binary files /dev/null and b/public/textures/chipped/angry_borderless_bricks.png differ diff --git a/public/textures/chipped/angry_bricks.png b/public/textures/chipped/angry_bricks.png new file mode 100644 index 00000000..d2b6314f Binary files /dev/null and b/public/textures/chipped/angry_bricks.png differ diff --git a/public/textures/chipped/angry_calcite.png b/public/textures/chipped/angry_calcite.png new file mode 100644 index 00000000..2e25b9f4 Binary files /dev/null and b/public/textures/chipped/angry_calcite.png differ diff --git a/public/textures/chipped/angry_clay.png b/public/textures/chipped/angry_clay.png new file mode 100644 index 00000000..f40f3884 Binary files /dev/null and b/public/textures/chipped/angry_clay.png differ diff --git a/public/textures/chipped/angry_coal_block.png b/public/textures/chipped/angry_coal_block.png new file mode 100644 index 00000000..3e882e8e Binary files /dev/null and b/public/textures/chipped/angry_coal_block.png differ diff --git a/public/textures/chipped/angry_cobblestone.png b/public/textures/chipped/angry_cobblestone.png new file mode 100644 index 00000000..307ff803 Binary files /dev/null and b/public/textures/chipped/angry_cobblestone.png differ diff --git a/public/textures/chipped/angry_crying_obsidian.png b/public/textures/chipped/angry_crying_obsidian.png new file mode 100644 index 00000000..f310607b Binary files /dev/null and b/public/textures/chipped/angry_crying_obsidian.png differ diff --git a/public/textures/chipped/angry_dark_prismarine.png b/public/textures/chipped/angry_dark_prismarine.png new file mode 100644 index 00000000..8ec96d5c Binary files /dev/null and b/public/textures/chipped/angry_dark_prismarine.png differ diff --git a/public/textures/chipped/angry_deepslate.png b/public/textures/chipped/angry_deepslate.png new file mode 100644 index 00000000..bd1ffdd3 Binary files /dev/null and b/public/textures/chipped/angry_deepslate.png differ diff --git a/public/textures/chipped/angry_diorite.png b/public/textures/chipped/angry_diorite.png new file mode 100644 index 00000000..da705f39 Binary files /dev/null and b/public/textures/chipped/angry_diorite.png differ diff --git a/public/textures/chipped/angry_dirt.png b/public/textures/chipped/angry_dirt.png new file mode 100644 index 00000000..0c76b200 Binary files /dev/null and b/public/textures/chipped/angry_dirt.png differ diff --git a/public/textures/chipped/angry_dripstone_block.png b/public/textures/chipped/angry_dripstone_block.png new file mode 100644 index 00000000..a2fa8346 Binary files /dev/null and b/public/textures/chipped/angry_dripstone_block.png differ diff --git a/public/textures/chipped/angry_end_stone.png b/public/textures/chipped/angry_end_stone.png new file mode 100644 index 00000000..bceca848 Binary files /dev/null and b/public/textures/chipped/angry_end_stone.png differ diff --git a/public/textures/chipped/angry_gilded_blackstone.png b/public/textures/chipped/angry_gilded_blackstone.png new file mode 100644 index 00000000..de26457b Binary files /dev/null and b/public/textures/chipped/angry_gilded_blackstone.png differ diff --git a/public/textures/chipped/angry_granite.png b/public/textures/chipped/angry_granite.png new file mode 100644 index 00000000..f782222f Binary files /dev/null and b/public/textures/chipped/angry_granite.png differ diff --git a/public/textures/chipped/angry_ice.png b/public/textures/chipped/angry_ice.png new file mode 100644 index 00000000..bc74f667 Binary files /dev/null and b/public/textures/chipped/angry_ice.png differ diff --git a/public/textures/chipped/angry_lapis_block.png b/public/textures/chipped/angry_lapis_block.png new file mode 100644 index 00000000..b59b6a49 Binary files /dev/null and b/public/textures/chipped/angry_lapis_block.png differ diff --git a/public/textures/chipped/angry_lodestone.png b/public/textures/chipped/angry_lodestone.png new file mode 100644 index 00000000..2404d541 Binary files /dev/null and b/public/textures/chipped/angry_lodestone.png differ diff --git a/public/textures/chipped/angry_magma_block.png b/public/textures/chipped/angry_magma_block.png new file mode 100644 index 00000000..01800a5f Binary files /dev/null and b/public/textures/chipped/angry_magma_block.png differ diff --git a/public/textures/chipped/angry_mossy_cobblestone.png b/public/textures/chipped/angry_mossy_cobblestone.png new file mode 100644 index 00000000..3db9a337 Binary files /dev/null and b/public/textures/chipped/angry_mossy_cobblestone.png differ diff --git a/public/textures/chipped/angry_mossy_stone_bricks.png b/public/textures/chipped/angry_mossy_stone_bricks.png new file mode 100644 index 00000000..18616aa8 Binary files /dev/null and b/public/textures/chipped/angry_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/angry_mud.png b/public/textures/chipped/angry_mud.png new file mode 100644 index 00000000..b1c969d9 Binary files /dev/null and b/public/textures/chipped/angry_mud.png differ diff --git a/public/textures/chipped/angry_mud_bricks.png b/public/textures/chipped/angry_mud_bricks.png new file mode 100644 index 00000000..a9075256 Binary files /dev/null and b/public/textures/chipped/angry_mud_bricks.png differ diff --git a/public/textures/chipped/angry_nether_bricks.png b/public/textures/chipped/angry_nether_bricks.png new file mode 100644 index 00000000..c4cd2beb Binary files /dev/null and b/public/textures/chipped/angry_nether_bricks.png differ diff --git a/public/textures/chipped/angry_netherrack.png b/public/textures/chipped/angry_netherrack.png new file mode 100644 index 00000000..8cce1eae Binary files /dev/null and b/public/textures/chipped/angry_netherrack.png differ diff --git a/public/textures/chipped/angry_obsidian.png b/public/textures/chipped/angry_obsidian.png new file mode 100644 index 00000000..2f506edf Binary files /dev/null and b/public/textures/chipped/angry_obsidian.png differ diff --git a/public/textures/chipped/angry_packed_ice.png b/public/textures/chipped/angry_packed_ice.png new file mode 100644 index 00000000..a3ad21a2 Binary files /dev/null and b/public/textures/chipped/angry_packed_ice.png differ diff --git a/public/textures/chipped/angry_packed_mud.png b/public/textures/chipped/angry_packed_mud.png new file mode 100644 index 00000000..1ce309bb Binary files /dev/null and b/public/textures/chipped/angry_packed_mud.png differ diff --git a/public/textures/chipped/angry_prismarine.png b/public/textures/chipped/angry_prismarine.png new file mode 100644 index 00000000..d7fbe157 Binary files /dev/null and b/public/textures/chipped/angry_prismarine.png differ diff --git a/public/textures/chipped/angry_purpur_block.png b/public/textures/chipped/angry_purpur_block.png new file mode 100644 index 00000000..72b2c9d1 Binary files /dev/null and b/public/textures/chipped/angry_purpur_block.png differ diff --git a/public/textures/chipped/angry_quartz_block.png b/public/textures/chipped/angry_quartz_block.png new file mode 100644 index 00000000..20c68016 Binary files /dev/null and b/public/textures/chipped/angry_quartz_block.png differ diff --git a/public/textures/chipped/angry_raw_copper_block.png b/public/textures/chipped/angry_raw_copper_block.png new file mode 100644 index 00000000..8ca7824a Binary files /dev/null and b/public/textures/chipped/angry_raw_copper_block.png differ diff --git a/public/textures/chipped/angry_raw_gold_block.png b/public/textures/chipped/angry_raw_gold_block.png new file mode 100644 index 00000000..d3c46b38 Binary files /dev/null and b/public/textures/chipped/angry_raw_gold_block.png differ diff --git a/public/textures/chipped/angry_raw_iron_block.png b/public/textures/chipped/angry_raw_iron_block.png new file mode 100644 index 00000000..c3401cee Binary files /dev/null and b/public/textures/chipped/angry_raw_iron_block.png differ diff --git a/public/textures/chipped/angry_red_nether_bricks.png b/public/textures/chipped/angry_red_nether_bricks.png new file mode 100644 index 00000000..029d707b Binary files /dev/null and b/public/textures/chipped/angry_red_nether_bricks.png differ diff --git a/public/textures/chipped/angry_red_sandstone.png b/public/textures/chipped/angry_red_sandstone.png new file mode 100644 index 00000000..3f9e1766 Binary files /dev/null and b/public/textures/chipped/angry_red_sandstone.png differ diff --git a/public/textures/chipped/angry_redstone_block.png b/public/textures/chipped/angry_redstone_block.png new file mode 100644 index 00000000..f144ce0f Binary files /dev/null and b/public/textures/chipped/angry_redstone_block.png differ diff --git a/public/textures/chipped/angry_sandstone.png b/public/textures/chipped/angry_sandstone.png new file mode 100644 index 00000000..f9880c17 Binary files /dev/null and b/public/textures/chipped/angry_sandstone.png differ diff --git a/public/textures/chipped/angry_smooth_stone.png b/public/textures/chipped/angry_smooth_stone.png new file mode 100644 index 00000000..7816466d Binary files /dev/null and b/public/textures/chipped/angry_smooth_stone.png differ diff --git a/public/textures/chipped/angry_snow_block.png b/public/textures/chipped/angry_snow_block.png new file mode 100644 index 00000000..6ab4c3ad Binary files /dev/null and b/public/textures/chipped/angry_snow_block.png differ diff --git a/public/textures/chipped/angry_stone.png b/public/textures/chipped/angry_stone.png new file mode 100644 index 00000000..a9c91dc3 Binary files /dev/null and b/public/textures/chipped/angry_stone.png differ diff --git a/public/textures/chipped/angry_tuff.png b/public/textures/chipped/angry_tuff.png new file mode 100644 index 00000000..0bce02d4 Binary files /dev/null and b/public/textures/chipped/angry_tuff.png differ diff --git a/public/textures/chipped/anguished_carved_pumpkin.png b/public/textures/chipped/anguished_carved_pumpkin.png new file mode 100644 index 00000000..7a050a97 Binary files /dev/null and b/public/textures/chipped/anguished_carved_pumpkin.png differ diff --git a/public/textures/chipped/anguished_jack_o_lantern.png b/public/textures/chipped/anguished_jack_o_lantern.png new file mode 100644 index 00000000..816569df Binary files /dev/null and b/public/textures/chipped/anguished_jack_o_lantern.png differ diff --git a/public/textures/chipped/antique_hay_block.png b/public/textures/chipped/antique_hay_block.png new file mode 100644 index 00000000..33f1c710 Binary files /dev/null and b/public/textures/chipped/antique_hay_block.png differ diff --git a/public/textures/chipped/apple_acacia_leaves.png b/public/textures/chipped/apple_acacia_leaves.png new file mode 100644 index 00000000..b0799b51 Binary files /dev/null and b/public/textures/chipped/apple_acacia_leaves.png differ diff --git a/public/textures/chipped/apple_birch_leaves.png b/public/textures/chipped/apple_birch_leaves.png new file mode 100644 index 00000000..8efb53f7 Binary files /dev/null and b/public/textures/chipped/apple_birch_leaves.png differ diff --git a/public/textures/chipped/apple_dark_oak_leaves.png b/public/textures/chipped/apple_dark_oak_leaves.png new file mode 100644 index 00000000..4f26f74c Binary files /dev/null and b/public/textures/chipped/apple_dark_oak_leaves.png differ diff --git a/public/textures/chipped/apple_jungle_leaves.png b/public/textures/chipped/apple_jungle_leaves.png new file mode 100644 index 00000000..fc6a2e0a Binary files /dev/null and b/public/textures/chipped/apple_jungle_leaves.png differ diff --git a/public/textures/chipped/apple_oak_leaves.png b/public/textures/chipped/apple_oak_leaves.png new file mode 100644 index 00000000..e35a6860 Binary files /dev/null and b/public/textures/chipped/apple_oak_leaves.png differ diff --git a/public/textures/chipped/apple_spruce_leaves.png b/public/textures/chipped/apple_spruce_leaves.png new file mode 100644 index 00000000..1eb7544b Binary files /dev/null and b/public/textures/chipped/apple_spruce_leaves.png differ diff --git a/public/textures/chipped/arched_black_stained_glass_pane_pillar.png b/public/textures/chipped/arched_black_stained_glass_pane_pillar.png new file mode 100644 index 00000000..66855587 Binary files /dev/null and b/public/textures/chipped/arched_black_stained_glass_pane_pillar.png differ diff --git a/public/textures/chipped/arched_black_stained_glass_pillar.png b/public/textures/chipped/arched_black_stained_glass_pillar.png new file mode 100644 index 00000000..aecce015 Binary files /dev/null and b/public/textures/chipped/arched_black_stained_glass_pillar.png differ diff --git a/public/textures/chipped/arched_blue_stained_glass_pane_pillar.png b/public/textures/chipped/arched_blue_stained_glass_pane_pillar.png new file mode 100644 index 00000000..3746da8c Binary files /dev/null and b/public/textures/chipped/arched_blue_stained_glass_pane_pillar.png differ diff --git a/public/textures/chipped/arched_blue_stained_glass_pillar.png b/public/textures/chipped/arched_blue_stained_glass_pillar.png new file mode 100644 index 00000000..33683f85 Binary files /dev/null and b/public/textures/chipped/arched_blue_stained_glass_pillar.png differ diff --git a/public/textures/chipped/arched_brown_stained_glass_pane_pillar.png b/public/textures/chipped/arched_brown_stained_glass_pane_pillar.png new file mode 100644 index 00000000..7859d9e2 Binary files /dev/null and b/public/textures/chipped/arched_brown_stained_glass_pane_pillar.png differ diff --git a/public/textures/chipped/arched_brown_stained_glass_pillar.png b/public/textures/chipped/arched_brown_stained_glass_pillar.png new file mode 100644 index 00000000..a160b8bf Binary files /dev/null and b/public/textures/chipped/arched_brown_stained_glass_pillar.png differ diff --git a/public/textures/chipped/arched_cyan_stained_glass_pane_pillar.png b/public/textures/chipped/arched_cyan_stained_glass_pane_pillar.png new file mode 100644 index 00000000..09e5cbf7 Binary files /dev/null and b/public/textures/chipped/arched_cyan_stained_glass_pane_pillar.png differ diff --git a/public/textures/chipped/arched_cyan_stained_glass_pillar.png b/public/textures/chipped/arched_cyan_stained_glass_pillar.png new file mode 100644 index 00000000..dc3e1c1b Binary files /dev/null and b/public/textures/chipped/arched_cyan_stained_glass_pillar.png differ diff --git a/public/textures/chipped/arched_gray_stained_glass_pane_pillar.png b/public/textures/chipped/arched_gray_stained_glass_pane_pillar.png new file mode 100644 index 00000000..9bd0bfb2 Binary files /dev/null and b/public/textures/chipped/arched_gray_stained_glass_pane_pillar.png differ diff --git a/public/textures/chipped/arched_gray_stained_glass_pillar.png b/public/textures/chipped/arched_gray_stained_glass_pillar.png new file mode 100644 index 00000000..809504ee Binary files /dev/null and b/public/textures/chipped/arched_gray_stained_glass_pillar.png differ diff --git a/public/textures/chipped/arched_green_stained_glass_pane_pillar.png b/public/textures/chipped/arched_green_stained_glass_pane_pillar.png new file mode 100644 index 00000000..499a7f09 Binary files /dev/null and b/public/textures/chipped/arched_green_stained_glass_pane_pillar.png differ diff --git a/public/textures/chipped/arched_green_stained_glass_pillar.png b/public/textures/chipped/arched_green_stained_glass_pillar.png new file mode 100644 index 00000000..c700d82f Binary files /dev/null and b/public/textures/chipped/arched_green_stained_glass_pillar.png differ diff --git a/public/textures/chipped/arched_leaded_glass_pane_pillar.png b/public/textures/chipped/arched_leaded_glass_pane_pillar.png new file mode 100644 index 00000000..8d69f51d Binary files /dev/null and b/public/textures/chipped/arched_leaded_glass_pane_pillar.png differ diff --git a/public/textures/chipped/arched_leaded_glass_pillar.png b/public/textures/chipped/arched_leaded_glass_pillar.png new file mode 100644 index 00000000..5ec34957 Binary files /dev/null and b/public/textures/chipped/arched_leaded_glass_pillar.png differ diff --git a/public/textures/chipped/arched_light_blue_stained_glass_pane_pillar.png b/public/textures/chipped/arched_light_blue_stained_glass_pane_pillar.png new file mode 100644 index 00000000..73e68220 Binary files /dev/null and b/public/textures/chipped/arched_light_blue_stained_glass_pane_pillar.png differ diff --git a/public/textures/chipped/arched_light_blue_stained_glass_pillar.png b/public/textures/chipped/arched_light_blue_stained_glass_pillar.png new file mode 100644 index 00000000..9cda8929 Binary files /dev/null and b/public/textures/chipped/arched_light_blue_stained_glass_pillar.png differ diff --git a/public/textures/chipped/arched_light_gray_stained_glass_pane_pillar.png b/public/textures/chipped/arched_light_gray_stained_glass_pane_pillar.png new file mode 100644 index 00000000..680df38a Binary files /dev/null and b/public/textures/chipped/arched_light_gray_stained_glass_pane_pillar.png differ diff --git a/public/textures/chipped/arched_light_gray_stained_glass_pillar.png b/public/textures/chipped/arched_light_gray_stained_glass_pillar.png new file mode 100644 index 00000000..489d523f Binary files /dev/null and b/public/textures/chipped/arched_light_gray_stained_glass_pillar.png differ diff --git a/public/textures/chipped/arched_lime_stained_glass_pane_pillar.png b/public/textures/chipped/arched_lime_stained_glass_pane_pillar.png new file mode 100644 index 00000000..cc7d804a Binary files /dev/null and b/public/textures/chipped/arched_lime_stained_glass_pane_pillar.png differ diff --git a/public/textures/chipped/arched_lime_stained_glass_pillar.png b/public/textures/chipped/arched_lime_stained_glass_pillar.png new file mode 100644 index 00000000..638d619c Binary files /dev/null and b/public/textures/chipped/arched_lime_stained_glass_pillar.png differ diff --git a/public/textures/chipped/arched_magenta_stained_glass_pane_pillar.png b/public/textures/chipped/arched_magenta_stained_glass_pane_pillar.png new file mode 100644 index 00000000..58981ef2 Binary files /dev/null and b/public/textures/chipped/arched_magenta_stained_glass_pane_pillar.png differ diff --git a/public/textures/chipped/arched_magenta_stained_glass_pillar.png b/public/textures/chipped/arched_magenta_stained_glass_pillar.png new file mode 100644 index 00000000..4bbfb7e4 Binary files /dev/null and b/public/textures/chipped/arched_magenta_stained_glass_pillar.png differ diff --git a/public/textures/chipped/arched_orange_stained_glass_pane_pillar.png b/public/textures/chipped/arched_orange_stained_glass_pane_pillar.png new file mode 100644 index 00000000..f6861b08 Binary files /dev/null and b/public/textures/chipped/arched_orange_stained_glass_pane_pillar.png differ diff --git a/public/textures/chipped/arched_orange_stained_glass_pillar.png b/public/textures/chipped/arched_orange_stained_glass_pillar.png new file mode 100644 index 00000000..a9e6dd4f Binary files /dev/null and b/public/textures/chipped/arched_orange_stained_glass_pillar.png differ diff --git a/public/textures/chipped/arched_pink_stained_glass_pane_pillar.png b/public/textures/chipped/arched_pink_stained_glass_pane_pillar.png new file mode 100644 index 00000000..2b283c76 Binary files /dev/null and b/public/textures/chipped/arched_pink_stained_glass_pane_pillar.png differ diff --git a/public/textures/chipped/arched_pink_stained_glass_pillar.png b/public/textures/chipped/arched_pink_stained_glass_pillar.png new file mode 100644 index 00000000..fbf8cdb1 Binary files /dev/null and b/public/textures/chipped/arched_pink_stained_glass_pillar.png differ diff --git a/public/textures/chipped/arched_purple_stained_glass_pane_pillar.png b/public/textures/chipped/arched_purple_stained_glass_pane_pillar.png new file mode 100644 index 00000000..0b112f6b Binary files /dev/null and b/public/textures/chipped/arched_purple_stained_glass_pane_pillar.png differ diff --git a/public/textures/chipped/arched_purple_stained_glass_pillar.png b/public/textures/chipped/arched_purple_stained_glass_pillar.png new file mode 100644 index 00000000..6f5e521e Binary files /dev/null and b/public/textures/chipped/arched_purple_stained_glass_pillar.png differ diff --git a/public/textures/chipped/arched_red_stained_glass_pane_pillar.png b/public/textures/chipped/arched_red_stained_glass_pane_pillar.png new file mode 100644 index 00000000..7e323a42 Binary files /dev/null and b/public/textures/chipped/arched_red_stained_glass_pane_pillar.png differ diff --git a/public/textures/chipped/arched_red_stained_glass_pillar.png b/public/textures/chipped/arched_red_stained_glass_pillar.png new file mode 100644 index 00000000..bcfda486 Binary files /dev/null and b/public/textures/chipped/arched_red_stained_glass_pillar.png differ diff --git a/public/textures/chipped/arched_white_stained_glass_pane_pillar.png b/public/textures/chipped/arched_white_stained_glass_pane_pillar.png new file mode 100644 index 00000000..05a0320c Binary files /dev/null and b/public/textures/chipped/arched_white_stained_glass_pane_pillar.png differ diff --git a/public/textures/chipped/arched_white_stained_glass_pillar.png b/public/textures/chipped/arched_white_stained_glass_pillar.png new file mode 100644 index 00000000..e94dce38 Binary files /dev/null and b/public/textures/chipped/arched_white_stained_glass_pillar.png differ diff --git a/public/textures/chipped/arched_yellow_stained_glass_pane_pillar.png b/public/textures/chipped/arched_yellow_stained_glass_pane_pillar.png new file mode 100644 index 00000000..e0e2f403 Binary files /dev/null and b/public/textures/chipped/arched_yellow_stained_glass_pane_pillar.png differ diff --git a/public/textures/chipped/arched_yellow_stained_glass_pillar.png b/public/textures/chipped/arched_yellow_stained_glass_pillar.png new file mode 100644 index 00000000..489c6193 Binary files /dev/null and b/public/textures/chipped/arched_yellow_stained_glass_pillar.png differ diff --git a/public/textures/chipped/arrow_mud.png b/public/textures/chipped/arrow_mud.png new file mode 100644 index 00000000..b0dc4a61 Binary files /dev/null and b/public/textures/chipped/arrow_mud.png differ diff --git a/public/textures/chipped/arrow_mud_bricks.png b/public/textures/chipped/arrow_mud_bricks.png new file mode 100644 index 00000000..c0de69c1 Binary files /dev/null and b/public/textures/chipped/arrow_mud_bricks.png differ diff --git a/public/textures/chipped/arrow_packed_mud.png b/public/textures/chipped/arrow_packed_mud.png new file mode 100644 index 00000000..c6e6c3f5 Binary files /dev/null and b/public/textures/chipped/arrow_packed_mud.png differ diff --git a/public/textures/chipped/ash_sand.png b/public/textures/chipped/ash_sand.png new file mode 100644 index 00000000..8e2d5843 Binary files /dev/null and b/public/textures/chipped/ash_sand.png differ diff --git a/public/textures/chipped/autumnkin.png b/public/textures/chipped/autumnkin.png new file mode 100644 index 00000000..e08a3501 Binary files /dev/null and b/public/textures/chipped/autumnkin.png differ diff --git a/public/textures/chipped/bad_time_carved_pumpkin.png b/public/textures/chipped/bad_time_carved_pumpkin.png new file mode 100644 index 00000000..39015965 Binary files /dev/null and b/public/textures/chipped/bad_time_carved_pumpkin.png differ diff --git a/public/textures/chipped/bad_time_jack_o_lantern.png b/public/textures/chipped/bad_time_jack_o_lantern.png new file mode 100644 index 00000000..98161f39 Binary files /dev/null and b/public/textures/chipped/bad_time_jack_o_lantern.png differ diff --git a/public/textures/chipped/bamboo_barrel.png b/public/textures/chipped/bamboo_barrel.png new file mode 100644 index 00000000..f4f90294 Binary files /dev/null and b/public/textures/chipped/bamboo_barrel.png differ diff --git a/public/textures/chipped/bamboo_dried_kelp_block.png b/public/textures/chipped/bamboo_dried_kelp_block.png new file mode 100644 index 00000000..676dabed Binary files /dev/null and b/public/textures/chipped/bamboo_dried_kelp_block.png differ diff --git a/public/textures/chipped/bamboo_planks_fine_mosaic.png b/public/textures/chipped/bamboo_planks_fine_mosaic.png new file mode 100644 index 00000000..cfa63ab7 Binary files /dev/null and b/public/textures/chipped/bamboo_planks_fine_mosaic.png differ diff --git a/public/textures/chipped/bamboo_planks_panel.png b/public/textures/chipped/bamboo_planks_panel.png new file mode 100644 index 00000000..256d11eb Binary files /dev/null and b/public/textures/chipped/bamboo_planks_panel.png differ diff --git a/public/textures/chipped/bamboo_planks_shavings.png b/public/textures/chipped/bamboo_planks_shavings.png new file mode 100644 index 00000000..52dbec38 Binary files /dev/null and b/public/textures/chipped/bamboo_planks_shavings.png differ diff --git a/public/textures/chipped/barbed_iron_bars.png b/public/textures/chipped/barbed_iron_bars.png new file mode 100644 index 00000000..1c8a9027 Binary files /dev/null and b/public/textures/chipped/barbed_iron_bars.png differ diff --git a/public/textures/chipped/barky_black_carpet.png b/public/textures/chipped/barky_black_carpet.png new file mode 100644 index 00000000..a8e2721c Binary files /dev/null and b/public/textures/chipped/barky_black_carpet.png differ diff --git a/public/textures/chipped/barky_black_wool.png b/public/textures/chipped/barky_black_wool.png new file mode 100644 index 00000000..65c65e09 Binary files /dev/null and b/public/textures/chipped/barky_black_wool.png differ diff --git a/public/textures/chipped/barky_blue_carpet.png b/public/textures/chipped/barky_blue_carpet.png new file mode 100644 index 00000000..ede2fb91 Binary files /dev/null and b/public/textures/chipped/barky_blue_carpet.png differ diff --git a/public/textures/chipped/barky_blue_wool.png b/public/textures/chipped/barky_blue_wool.png new file mode 100644 index 00000000..c76635b9 Binary files /dev/null and b/public/textures/chipped/barky_blue_wool.png differ diff --git a/public/textures/chipped/barky_brown_carpet.png b/public/textures/chipped/barky_brown_carpet.png new file mode 100644 index 00000000..1ba38647 Binary files /dev/null and b/public/textures/chipped/barky_brown_carpet.png differ diff --git a/public/textures/chipped/barky_brown_wool.png b/public/textures/chipped/barky_brown_wool.png new file mode 100644 index 00000000..32aac1fb Binary files /dev/null and b/public/textures/chipped/barky_brown_wool.png differ diff --git a/public/textures/chipped/barky_cyan_carpet.png b/public/textures/chipped/barky_cyan_carpet.png new file mode 100644 index 00000000..de7c6eda Binary files /dev/null and b/public/textures/chipped/barky_cyan_carpet.png differ diff --git a/public/textures/chipped/barky_cyan_wool.png b/public/textures/chipped/barky_cyan_wool.png new file mode 100644 index 00000000..506b91dc Binary files /dev/null and b/public/textures/chipped/barky_cyan_wool.png differ diff --git a/public/textures/chipped/barky_gray_carpet.png b/public/textures/chipped/barky_gray_carpet.png new file mode 100644 index 00000000..02483ece Binary files /dev/null and b/public/textures/chipped/barky_gray_carpet.png differ diff --git a/public/textures/chipped/barky_gray_wool.png b/public/textures/chipped/barky_gray_wool.png new file mode 100644 index 00000000..f010d5a0 Binary files /dev/null and b/public/textures/chipped/barky_gray_wool.png differ diff --git a/public/textures/chipped/barky_green_carpet.png b/public/textures/chipped/barky_green_carpet.png new file mode 100644 index 00000000..bb389eae Binary files /dev/null and b/public/textures/chipped/barky_green_carpet.png differ diff --git a/public/textures/chipped/barky_green_wool.png b/public/textures/chipped/barky_green_wool.png new file mode 100644 index 00000000..f53273d9 Binary files /dev/null and b/public/textures/chipped/barky_green_wool.png differ diff --git a/public/textures/chipped/barky_light_blue_carpet.png b/public/textures/chipped/barky_light_blue_carpet.png new file mode 100644 index 00000000..cf9de371 Binary files /dev/null and b/public/textures/chipped/barky_light_blue_carpet.png differ diff --git a/public/textures/chipped/barky_light_blue_wool.png b/public/textures/chipped/barky_light_blue_wool.png new file mode 100644 index 00000000..a01d3a72 Binary files /dev/null and b/public/textures/chipped/barky_light_blue_wool.png differ diff --git a/public/textures/chipped/barky_light_gray_carpet.png b/public/textures/chipped/barky_light_gray_carpet.png new file mode 100644 index 00000000..1bf58268 Binary files /dev/null and b/public/textures/chipped/barky_light_gray_carpet.png differ diff --git a/public/textures/chipped/barky_light_gray_wool.png b/public/textures/chipped/barky_light_gray_wool.png new file mode 100644 index 00000000..9db86170 Binary files /dev/null and b/public/textures/chipped/barky_light_gray_wool.png differ diff --git a/public/textures/chipped/barky_lime_carpet.png b/public/textures/chipped/barky_lime_carpet.png new file mode 100644 index 00000000..699141f7 Binary files /dev/null and b/public/textures/chipped/barky_lime_carpet.png differ diff --git a/public/textures/chipped/barky_lime_wool.png b/public/textures/chipped/barky_lime_wool.png new file mode 100644 index 00000000..5a483037 Binary files /dev/null and b/public/textures/chipped/barky_lime_wool.png differ diff --git a/public/textures/chipped/barky_magenta_carpet.png b/public/textures/chipped/barky_magenta_carpet.png new file mode 100644 index 00000000..a1324e7e Binary files /dev/null and b/public/textures/chipped/barky_magenta_carpet.png differ diff --git a/public/textures/chipped/barky_magenta_wool.png b/public/textures/chipped/barky_magenta_wool.png new file mode 100644 index 00000000..c663c9aa Binary files /dev/null and b/public/textures/chipped/barky_magenta_wool.png differ diff --git a/public/textures/chipped/barky_orange_carpet.png b/public/textures/chipped/barky_orange_carpet.png new file mode 100644 index 00000000..7fa2d86f Binary files /dev/null and b/public/textures/chipped/barky_orange_carpet.png differ diff --git a/public/textures/chipped/barky_orange_wool.png b/public/textures/chipped/barky_orange_wool.png new file mode 100644 index 00000000..cce43dac Binary files /dev/null and b/public/textures/chipped/barky_orange_wool.png differ diff --git a/public/textures/chipped/barky_pink_carpet.png b/public/textures/chipped/barky_pink_carpet.png new file mode 100644 index 00000000..32f6ba94 Binary files /dev/null and b/public/textures/chipped/barky_pink_carpet.png differ diff --git a/public/textures/chipped/barky_pink_wool.png b/public/textures/chipped/barky_pink_wool.png new file mode 100644 index 00000000..2b088caf Binary files /dev/null and b/public/textures/chipped/barky_pink_wool.png differ diff --git a/public/textures/chipped/barky_purple_carpet.png b/public/textures/chipped/barky_purple_carpet.png new file mode 100644 index 00000000..ec06a036 Binary files /dev/null and b/public/textures/chipped/barky_purple_carpet.png differ diff --git a/public/textures/chipped/barky_purple_wool.png b/public/textures/chipped/barky_purple_wool.png new file mode 100644 index 00000000..87bdb5d9 Binary files /dev/null and b/public/textures/chipped/barky_purple_wool.png differ diff --git a/public/textures/chipped/barky_red_carpet.png b/public/textures/chipped/barky_red_carpet.png new file mode 100644 index 00000000..ebf3e26c Binary files /dev/null and b/public/textures/chipped/barky_red_carpet.png differ diff --git a/public/textures/chipped/barky_red_wool.png b/public/textures/chipped/barky_red_wool.png new file mode 100644 index 00000000..c6826f5f Binary files /dev/null and b/public/textures/chipped/barky_red_wool.png differ diff --git a/public/textures/chipped/barky_white_carpet.png b/public/textures/chipped/barky_white_carpet.png new file mode 100644 index 00000000..62858a93 Binary files /dev/null and b/public/textures/chipped/barky_white_carpet.png differ diff --git a/public/textures/chipped/barky_white_wool.png b/public/textures/chipped/barky_white_wool.png new file mode 100644 index 00000000..39290704 Binary files /dev/null and b/public/textures/chipped/barky_white_wool.png differ diff --git a/public/textures/chipped/barky_yellow_carpet.png b/public/textures/chipped/barky_yellow_carpet.png new file mode 100644 index 00000000..771b2f07 Binary files /dev/null and b/public/textures/chipped/barky_yellow_carpet.png differ diff --git a/public/textures/chipped/barky_yellow_wool.png b/public/textures/chipped/barky_yellow_wool.png new file mode 100644 index 00000000..b4a1e403 Binary files /dev/null and b/public/textures/chipped/barky_yellow_wool.png differ diff --git a/public/textures/chipped/barred_acacia_trapdoor.png b/public/textures/chipped/barred_acacia_trapdoor.png new file mode 100644 index 00000000..70981708 Binary files /dev/null and b/public/textures/chipped/barred_acacia_trapdoor.png differ diff --git a/public/textures/chipped/barred_bamboo_door.png b/public/textures/chipped/barred_bamboo_door.png new file mode 100644 index 00000000..29659bc8 Binary files /dev/null and b/public/textures/chipped/barred_bamboo_door.png differ diff --git a/public/textures/chipped/barred_bamboo_trapdoor.png b/public/textures/chipped/barred_bamboo_trapdoor.png new file mode 100644 index 00000000..c7b987b8 Binary files /dev/null and b/public/textures/chipped/barred_bamboo_trapdoor.png differ diff --git a/public/textures/chipped/barred_birch_door.png b/public/textures/chipped/barred_birch_door.png new file mode 100644 index 00000000..9cd40517 Binary files /dev/null and b/public/textures/chipped/barred_birch_door.png differ diff --git a/public/textures/chipped/barred_birch_trapdoor.png b/public/textures/chipped/barred_birch_trapdoor.png new file mode 100644 index 00000000..a06d3f70 Binary files /dev/null and b/public/textures/chipped/barred_birch_trapdoor.png differ diff --git a/public/textures/chipped/barred_cherry_door.png b/public/textures/chipped/barred_cherry_door.png new file mode 100644 index 00000000..c07d8543 Binary files /dev/null and b/public/textures/chipped/barred_cherry_door.png differ diff --git a/public/textures/chipped/barred_cherry_trapdoor.png b/public/textures/chipped/barred_cherry_trapdoor.png new file mode 100644 index 00000000..fdca5675 Binary files /dev/null and b/public/textures/chipped/barred_cherry_trapdoor.png differ diff --git a/public/textures/chipped/barred_crimson_door.png b/public/textures/chipped/barred_crimson_door.png new file mode 100644 index 00000000..49daedd3 Binary files /dev/null and b/public/textures/chipped/barred_crimson_door.png differ diff --git a/public/textures/chipped/barred_crimson_trapdoor.png b/public/textures/chipped/barred_crimson_trapdoor.png new file mode 100644 index 00000000..71009329 Binary files /dev/null and b/public/textures/chipped/barred_crimson_trapdoor.png differ diff --git a/public/textures/chipped/barred_dark_oak_door.png b/public/textures/chipped/barred_dark_oak_door.png new file mode 100644 index 00000000..c14c5310 Binary files /dev/null and b/public/textures/chipped/barred_dark_oak_door.png differ diff --git a/public/textures/chipped/barred_dark_oak_trapdoor.png b/public/textures/chipped/barred_dark_oak_trapdoor.png new file mode 100644 index 00000000..e6113bb4 Binary files /dev/null and b/public/textures/chipped/barred_dark_oak_trapdoor.png differ diff --git a/public/textures/chipped/barred_jungle_door.png b/public/textures/chipped/barred_jungle_door.png new file mode 100644 index 00000000..b2348378 Binary files /dev/null and b/public/textures/chipped/barred_jungle_door.png differ diff --git a/public/textures/chipped/barred_jungle_trapdoor.png b/public/textures/chipped/barred_jungle_trapdoor.png new file mode 100644 index 00000000..5bb3cbb6 Binary files /dev/null and b/public/textures/chipped/barred_jungle_trapdoor.png differ diff --git a/public/textures/chipped/barred_mangrove_door.png b/public/textures/chipped/barred_mangrove_door.png new file mode 100644 index 00000000..2aa16f47 Binary files /dev/null and b/public/textures/chipped/barred_mangrove_door.png differ diff --git a/public/textures/chipped/barred_mangrove_trapdoor.png b/public/textures/chipped/barred_mangrove_trapdoor.png new file mode 100644 index 00000000..816852c2 Binary files /dev/null and b/public/textures/chipped/barred_mangrove_trapdoor.png differ diff --git a/public/textures/chipped/barred_oak_door.png b/public/textures/chipped/barred_oak_door.png new file mode 100644 index 00000000..2693f1cf Binary files /dev/null and b/public/textures/chipped/barred_oak_door.png differ diff --git a/public/textures/chipped/barred_oak_trapdoor.png b/public/textures/chipped/barred_oak_trapdoor.png new file mode 100644 index 00000000..88b458bb Binary files /dev/null and b/public/textures/chipped/barred_oak_trapdoor.png differ diff --git a/public/textures/chipped/barred_ochre_froglight.png b/public/textures/chipped/barred_ochre_froglight.png new file mode 100644 index 00000000..631137d4 Binary files /dev/null and b/public/textures/chipped/barred_ochre_froglight.png differ diff --git a/public/textures/chipped/barred_pearlescent_froglight.png b/public/textures/chipped/barred_pearlescent_froglight.png new file mode 100644 index 00000000..af9afae0 Binary files /dev/null and b/public/textures/chipped/barred_pearlescent_froglight.png differ diff --git a/public/textures/chipped/barred_spruce_door.png b/public/textures/chipped/barred_spruce_door.png new file mode 100644 index 00000000..b1444497 Binary files /dev/null and b/public/textures/chipped/barred_spruce_door.png differ diff --git a/public/textures/chipped/barred_spruce_trapdoor.png b/public/textures/chipped/barred_spruce_trapdoor.png new file mode 100644 index 00000000..44a56ce7 Binary files /dev/null and b/public/textures/chipped/barred_spruce_trapdoor.png differ diff --git a/public/textures/chipped/barred_verdant_froglight.png b/public/textures/chipped/barred_verdant_froglight.png new file mode 100644 index 00000000..b314ccfa Binary files /dev/null and b/public/textures/chipped/barred_verdant_froglight.png differ diff --git a/public/textures/chipped/barred_warped_door.png b/public/textures/chipped/barred_warped_door.png new file mode 100644 index 00000000..bcb8271e Binary files /dev/null and b/public/textures/chipped/barred_warped_door.png differ diff --git a/public/textures/chipped/barred_warped_trapdoor.png b/public/textures/chipped/barred_warped_trapdoor.png new file mode 100644 index 00000000..859eaa6c Binary files /dev/null and b/public/textures/chipped/barred_warped_trapdoor.png differ diff --git a/public/textures/chipped/basalt_bricks.png b/public/textures/chipped/basalt_bricks.png new file mode 100644 index 00000000..138a5400 Binary files /dev/null and b/public/textures/chipped/basalt_bricks.png differ diff --git a/public/textures/chipped/basalt_mini_tiles.png b/public/textures/chipped/basalt_mini_tiles.png new file mode 100644 index 00000000..fdb27e68 Binary files /dev/null and b/public/textures/chipped/basalt_mini_tiles.png differ diff --git a/public/textures/chipped/basalt_pillar.png b/public/textures/chipped/basalt_pillar.png new file mode 100644 index 00000000..d05fe858 Binary files /dev/null and b/public/textures/chipped/basalt_pillar.png differ diff --git a/public/textures/chipped/basalt_pillar_top.png b/public/textures/chipped/basalt_pillar_top.png new file mode 100644 index 00000000..e8e54932 Binary files /dev/null and b/public/textures/chipped/basalt_pillar_top.png differ diff --git a/public/textures/chipped/basalt_pointed_dripstone.png b/public/textures/chipped/basalt_pointed_dripstone.png new file mode 100644 index 00000000..fefe7ad0 Binary files /dev/null and b/public/textures/chipped/basalt_pointed_dripstone.png differ diff --git a/public/textures/chipped/basalt_scales.png b/public/textures/chipped/basalt_scales.png new file mode 100644 index 00000000..49f9b3b0 Binary files /dev/null and b/public/textures/chipped/basalt_scales.png differ diff --git a/public/textures/chipped/basket_woven_acacia_planks.png b/public/textures/chipped/basket_woven_acacia_planks.png new file mode 100644 index 00000000..7a784ae7 Binary files /dev/null and b/public/textures/chipped/basket_woven_acacia_planks.png differ diff --git a/public/textures/chipped/basket_woven_bamboo_planks.png b/public/textures/chipped/basket_woven_bamboo_planks.png new file mode 100644 index 00000000..75aac5ea Binary files /dev/null and b/public/textures/chipped/basket_woven_bamboo_planks.png differ diff --git a/public/textures/chipped/basket_woven_birch_planks.png b/public/textures/chipped/basket_woven_birch_planks.png new file mode 100644 index 00000000..5d727439 Binary files /dev/null and b/public/textures/chipped/basket_woven_birch_planks.png differ diff --git a/public/textures/chipped/basket_woven_cherry_planks.png b/public/textures/chipped/basket_woven_cherry_planks.png new file mode 100644 index 00000000..97507fbd Binary files /dev/null and b/public/textures/chipped/basket_woven_cherry_planks.png differ diff --git a/public/textures/chipped/basket_woven_crimson_planks.png b/public/textures/chipped/basket_woven_crimson_planks.png new file mode 100644 index 00000000..781e11b5 Binary files /dev/null and b/public/textures/chipped/basket_woven_crimson_planks.png differ diff --git a/public/textures/chipped/basket_woven_dark_oak_planks.png b/public/textures/chipped/basket_woven_dark_oak_planks.png new file mode 100644 index 00000000..2b828183 Binary files /dev/null and b/public/textures/chipped/basket_woven_dark_oak_planks.png differ diff --git a/public/textures/chipped/basket_woven_jungle_planks.png b/public/textures/chipped/basket_woven_jungle_planks.png new file mode 100644 index 00000000..589e201a Binary files /dev/null and b/public/textures/chipped/basket_woven_jungle_planks.png differ diff --git a/public/textures/chipped/basket_woven_mangrove_planks.png b/public/textures/chipped/basket_woven_mangrove_planks.png new file mode 100644 index 00000000..27e430d4 Binary files /dev/null and b/public/textures/chipped/basket_woven_mangrove_planks.png differ diff --git a/public/textures/chipped/basket_woven_oak_planks.png b/public/textures/chipped/basket_woven_oak_planks.png new file mode 100644 index 00000000..f37cc196 Binary files /dev/null and b/public/textures/chipped/basket_woven_oak_planks.png differ diff --git a/public/textures/chipped/basket_woven_spruce_planks.png b/public/textures/chipped/basket_woven_spruce_planks.png new file mode 100644 index 00000000..598a5531 Binary files /dev/null and b/public/textures/chipped/basket_woven_spruce_planks.png differ diff --git a/public/textures/chipped/basket_woven_warped_planks.png b/public/textures/chipped/basket_woven_warped_planks.png new file mode 100644 index 00000000..027aed04 Binary files /dev/null and b/public/textures/chipped/basket_woven_warped_planks.png differ diff --git a/public/textures/chipped/beach_acacia_door.png b/public/textures/chipped/beach_acacia_door.png new file mode 100644 index 00000000..7d8a2088 Binary files /dev/null and b/public/textures/chipped/beach_acacia_door.png differ diff --git a/public/textures/chipped/beach_bamboo_door.png b/public/textures/chipped/beach_bamboo_door.png new file mode 100644 index 00000000..a357e5fc Binary files /dev/null and b/public/textures/chipped/beach_bamboo_door.png differ diff --git a/public/textures/chipped/beach_birch_door.png b/public/textures/chipped/beach_birch_door.png new file mode 100644 index 00000000..36a1439d Binary files /dev/null and b/public/textures/chipped/beach_birch_door.png differ diff --git a/public/textures/chipped/beach_cherry_door.png b/public/textures/chipped/beach_cherry_door.png new file mode 100644 index 00000000..cb087873 Binary files /dev/null and b/public/textures/chipped/beach_cherry_door.png differ diff --git a/public/textures/chipped/beach_crimson_door.png b/public/textures/chipped/beach_crimson_door.png new file mode 100644 index 00000000..c3c88ab8 Binary files /dev/null and b/public/textures/chipped/beach_crimson_door.png differ diff --git a/public/textures/chipped/beach_dark_oak_door.png b/public/textures/chipped/beach_dark_oak_door.png new file mode 100644 index 00000000..99c95ffd Binary files /dev/null and b/public/textures/chipped/beach_dark_oak_door.png differ diff --git a/public/textures/chipped/beach_mangrove_door.png b/public/textures/chipped/beach_mangrove_door.png new file mode 100644 index 00000000..5369eee1 Binary files /dev/null and b/public/textures/chipped/beach_mangrove_door.png differ diff --git a/public/textures/chipped/beach_oak_door.png b/public/textures/chipped/beach_oak_door.png new file mode 100644 index 00000000..188c2a7f Binary files /dev/null and b/public/textures/chipped/beach_oak_door.png differ diff --git a/public/textures/chipped/beach_spruce_door.png b/public/textures/chipped/beach_spruce_door.png new file mode 100644 index 00000000..c3a96919 Binary files /dev/null and b/public/textures/chipped/beach_spruce_door.png differ diff --git a/public/textures/chipped/beach_warped_door.png b/public/textures/chipped/beach_warped_door.png new file mode 100644 index 00000000..8fca8d8d Binary files /dev/null and b/public/textures/chipped/beach_warped_door.png differ diff --git a/public/textures/chipped/big_flower_lily_pad.png b/public/textures/chipped/big_flower_lily_pad.png new file mode 100644 index 00000000..3d454c79 Binary files /dev/null and b/public/textures/chipped/big_flower_lily_pad.png differ diff --git a/public/textures/chipped/big_lantern.png b/public/textures/chipped/big_lantern.png new file mode 100644 index 00000000..2f57a82c Binary files /dev/null and b/public/textures/chipped/big_lantern.png differ diff --git a/public/textures/chipped/big_soul_lantern.png b/public/textures/chipped/big_soul_lantern.png new file mode 100644 index 00000000..a18c9b95 Binary files /dev/null and b/public/textures/chipped/big_soul_lantern.png differ diff --git a/public/textures/chipped/birch_barrel.png b/public/textures/chipped/birch_barrel.png new file mode 100644 index 00000000..ecea3e85 Binary files /dev/null and b/public/textures/chipped/birch_barrel.png differ diff --git a/public/textures/chipped/birch_crate.png b/public/textures/chipped/birch_crate.png new file mode 100644 index 00000000..54017e4e Binary files /dev/null and b/public/textures/chipped/birch_crate.png differ diff --git a/public/textures/chipped/birch_planks_mosaic.png b/public/textures/chipped/birch_planks_mosaic.png new file mode 100644 index 00000000..a819e4a5 Binary files /dev/null and b/public/textures/chipped/birch_planks_mosaic.png differ diff --git a/public/textures/chipped/birch_planks_panel.png b/public/textures/chipped/birch_planks_panel.png new file mode 100644 index 00000000..ab3fbfb9 Binary files /dev/null and b/public/textures/chipped/birch_planks_panel.png differ diff --git a/public/textures/chipped/birch_planks_shavings.png b/public/textures/chipped/birch_planks_shavings.png new file mode 100644 index 00000000..ce0ed7ce Binary files /dev/null and b/public/textures/chipped/birch_planks_shavings.png differ diff --git a/public/textures/chipped/birch_torch.png b/public/textures/chipped/birch_torch.png new file mode 100644 index 00000000..392fcc82 Binary files /dev/null and b/public/textures/chipped/birch_torch.png differ diff --git a/public/textures/chipped/black_concrete_bricks.png b/public/textures/chipped/black_concrete_bricks.png new file mode 100644 index 00000000..7a5cf3a2 Binary files /dev/null and b/public/textures/chipped/black_concrete_bricks.png differ diff --git a/public/textures/chipped/black_concrete_panel.png b/public/textures/chipped/black_concrete_panel.png new file mode 100644 index 00000000..cb0c1a87 Binary files /dev/null and b/public/textures/chipped/black_concrete_panel.png differ diff --git a/public/textures/chipped/black_concrete_pillar.png b/public/textures/chipped/black_concrete_pillar.png new file mode 100644 index 00000000..00f540cf Binary files /dev/null and b/public/textures/chipped/black_concrete_pillar.png differ diff --git a/public/textures/chipped/black_concrete_tiles.png b/public/textures/chipped/black_concrete_tiles.png new file mode 100644 index 00000000..a8c3d8f7 Binary files /dev/null and b/public/textures/chipped/black_concrete_tiles.png differ diff --git a/public/textures/chipped/black_glazed_terracotta_pillar_sides.png b/public/textures/chipped/black_glazed_terracotta_pillar_sides.png new file mode 100644 index 00000000..ac8fdb34 Binary files /dev/null and b/public/textures/chipped/black_glazed_terracotta_pillar_sides.png differ diff --git a/public/textures/chipped/black_glazed_terracotta_pillar_top.png b/public/textures/chipped/black_glazed_terracotta_pillar_top.png new file mode 100644 index 00000000..918652fb Binary files /dev/null and b/public/textures/chipped/black_glazed_terracotta_pillar_top.png differ diff --git a/public/textures/chipped/black_glazed_terracotta_smooth_tiles.png b/public/textures/chipped/black_glazed_terracotta_smooth_tiles.png new file mode 100644 index 00000000..83aa1979 Binary files /dev/null and b/public/textures/chipped/black_glazed_terracotta_smooth_tiles.png differ diff --git a/public/textures/chipped/black_glazed_terracotta_tiles.png b/public/textures/chipped/black_glazed_terracotta_tiles.png new file mode 100644 index 00000000..1abeac8c Binary files /dev/null and b/public/textures/chipped/black_glazed_terracotta_tiles.png differ diff --git a/public/textures/chipped/black_terracotta_bricks.png b/public/textures/chipped/black_terracotta_bricks.png new file mode 100644 index 00000000..7e10bb62 Binary files /dev/null and b/public/textures/chipped/black_terracotta_bricks.png differ diff --git a/public/textures/chipped/black_terracotta_column.png b/public/textures/chipped/black_terracotta_column.png new file mode 100644 index 00000000..cb2f9c1c Binary files /dev/null and b/public/textures/chipped/black_terracotta_column.png differ diff --git a/public/textures/chipped/black_terracotta_pillar.png b/public/textures/chipped/black_terracotta_pillar.png new file mode 100644 index 00000000..6695bd30 Binary files /dev/null and b/public/textures/chipped/black_terracotta_pillar.png differ diff --git a/public/textures/chipped/black_terracotta_tile.png b/public/textures/chipped/black_terracotta_tile.png new file mode 100644 index 00000000..54864808 Binary files /dev/null and b/public/textures/chipped/black_terracotta_tile.png differ diff --git a/public/textures/chipped/black_terracotta_tiles.png b/public/textures/chipped/black_terracotta_tiles.png new file mode 100644 index 00000000..14ca7a7b Binary files /dev/null and b/public/textures/chipped/black_terracotta_tiles.png differ diff --git a/public/textures/chipped/blackstone_mini_tiles.png b/public/textures/chipped/blackstone_mini_tiles.png new file mode 100644 index 00000000..509246ef Binary files /dev/null and b/public/textures/chipped/blackstone_mini_tiles.png differ diff --git a/public/textures/chipped/blackstone_pillar.png b/public/textures/chipped/blackstone_pillar.png new file mode 100644 index 00000000..9aa59c56 Binary files /dev/null and b/public/textures/chipped/blackstone_pillar.png differ diff --git a/public/textures/chipped/blackstone_pillar_top.png b/public/textures/chipped/blackstone_pillar_top.png new file mode 100644 index 00000000..8e6d7a8f Binary files /dev/null and b/public/textures/chipped/blackstone_pillar_top.png differ diff --git a/public/textures/chipped/blackstone_pointed_dripstone.png b/public/textures/chipped/blackstone_pointed_dripstone.png new file mode 100644 index 00000000..daae596f Binary files /dev/null and b/public/textures/chipped/blackstone_pointed_dripstone.png differ diff --git a/public/textures/chipped/blackstone_scales.png b/public/textures/chipped/blackstone_scales.png new file mode 100644 index 00000000..5e6e5ec4 Binary files /dev/null and b/public/textures/chipped/blackstone_scales.png differ diff --git a/public/textures/chipped/blank_amethyst_block_carving.png b/public/textures/chipped/blank_amethyst_block_carving.png new file mode 100644 index 00000000..2b7c2b23 Binary files /dev/null and b/public/textures/chipped/blank_amethyst_block_carving.png differ diff --git a/public/textures/chipped/blank_ancient_debris_carving.png b/public/textures/chipped/blank_ancient_debris_carving.png new file mode 100644 index 00000000..0088def4 Binary files /dev/null and b/public/textures/chipped/blank_ancient_debris_carving.png differ diff --git a/public/textures/chipped/blank_andesite_carving.png b/public/textures/chipped/blank_andesite_carving.png new file mode 100644 index 00000000..dc89a8ac Binary files /dev/null and b/public/textures/chipped/blank_andesite_carving.png differ diff --git a/public/textures/chipped/blank_basalt_carving.png b/public/textures/chipped/blank_basalt_carving.png new file mode 100644 index 00000000..48d85757 Binary files /dev/null and b/public/textures/chipped/blank_basalt_carving.png differ diff --git a/public/textures/chipped/blank_blackstone_carving.png b/public/textures/chipped/blank_blackstone_carving.png new file mode 100644 index 00000000..7d2ff592 Binary files /dev/null and b/public/textures/chipped/blank_blackstone_carving.png differ diff --git a/public/textures/chipped/blank_blue_ice_carving.png b/public/textures/chipped/blank_blue_ice_carving.png new file mode 100644 index 00000000..f50d922c Binary files /dev/null and b/public/textures/chipped/blank_blue_ice_carving.png differ diff --git a/public/textures/chipped/blank_borderless_bricks_carving.png b/public/textures/chipped/blank_borderless_bricks_carving.png new file mode 100644 index 00000000..2b580682 Binary files /dev/null and b/public/textures/chipped/blank_borderless_bricks_carving.png differ diff --git a/public/textures/chipped/blank_bricks_carving.png b/public/textures/chipped/blank_bricks_carving.png new file mode 100644 index 00000000..5942e28e Binary files /dev/null and b/public/textures/chipped/blank_bricks_carving.png differ diff --git a/public/textures/chipped/blank_calcite_carving.png b/public/textures/chipped/blank_calcite_carving.png new file mode 100644 index 00000000..ffef7a39 Binary files /dev/null and b/public/textures/chipped/blank_calcite_carving.png differ diff --git a/public/textures/chipped/blank_clay_carving.png b/public/textures/chipped/blank_clay_carving.png new file mode 100644 index 00000000..47f10bdf Binary files /dev/null and b/public/textures/chipped/blank_clay_carving.png differ diff --git a/public/textures/chipped/blank_coal_block_carving.png b/public/textures/chipped/blank_coal_block_carving.png new file mode 100644 index 00000000..028d25d6 Binary files /dev/null and b/public/textures/chipped/blank_coal_block_carving.png differ diff --git a/public/textures/chipped/blank_cobblestone_carving.png b/public/textures/chipped/blank_cobblestone_carving.png new file mode 100644 index 00000000..4b59120c Binary files /dev/null and b/public/textures/chipped/blank_cobblestone_carving.png differ diff --git a/public/textures/chipped/blank_crying_obsidian_carving.png b/public/textures/chipped/blank_crying_obsidian_carving.png new file mode 100644 index 00000000..524f0e49 Binary files /dev/null and b/public/textures/chipped/blank_crying_obsidian_carving.png differ diff --git a/public/textures/chipped/blank_dark_prismarine_carving.png b/public/textures/chipped/blank_dark_prismarine_carving.png new file mode 100644 index 00000000..f7994fcc Binary files /dev/null and b/public/textures/chipped/blank_dark_prismarine_carving.png differ diff --git a/public/textures/chipped/blank_deepslate_carving.png b/public/textures/chipped/blank_deepslate_carving.png new file mode 100644 index 00000000..7f610779 Binary files /dev/null and b/public/textures/chipped/blank_deepslate_carving.png differ diff --git a/public/textures/chipped/blank_diorite_carving.png b/public/textures/chipped/blank_diorite_carving.png new file mode 100644 index 00000000..3d8c2f16 Binary files /dev/null and b/public/textures/chipped/blank_diorite_carving.png differ diff --git a/public/textures/chipped/blank_dirt_carving.png b/public/textures/chipped/blank_dirt_carving.png new file mode 100644 index 00000000..01c38340 Binary files /dev/null and b/public/textures/chipped/blank_dirt_carving.png differ diff --git a/public/textures/chipped/blank_dripstone_block_carving.png b/public/textures/chipped/blank_dripstone_block_carving.png new file mode 100644 index 00000000..a8f51a8e Binary files /dev/null and b/public/textures/chipped/blank_dripstone_block_carving.png differ diff --git a/public/textures/chipped/blank_end_stone_carving.png b/public/textures/chipped/blank_end_stone_carving.png new file mode 100644 index 00000000..a240e671 Binary files /dev/null and b/public/textures/chipped/blank_end_stone_carving.png differ diff --git a/public/textures/chipped/blank_gilded_blackstone_carving.png b/public/textures/chipped/blank_gilded_blackstone_carving.png new file mode 100644 index 00000000..cf6fad94 Binary files /dev/null and b/public/textures/chipped/blank_gilded_blackstone_carving.png differ diff --git a/public/textures/chipped/blank_granite_carving.png b/public/textures/chipped/blank_granite_carving.png new file mode 100644 index 00000000..3721c017 Binary files /dev/null and b/public/textures/chipped/blank_granite_carving.png differ diff --git a/public/textures/chipped/blank_ice_carving.png b/public/textures/chipped/blank_ice_carving.png new file mode 100644 index 00000000..7619ac7b Binary files /dev/null and b/public/textures/chipped/blank_ice_carving.png differ diff --git a/public/textures/chipped/blank_lapis_block_carving.png b/public/textures/chipped/blank_lapis_block_carving.png new file mode 100644 index 00000000..db702b80 Binary files /dev/null and b/public/textures/chipped/blank_lapis_block_carving.png differ diff --git a/public/textures/chipped/blank_lodestone_carving.png b/public/textures/chipped/blank_lodestone_carving.png new file mode 100644 index 00000000..20c09e88 Binary files /dev/null and b/public/textures/chipped/blank_lodestone_carving.png differ diff --git a/public/textures/chipped/blank_lodestone_side.png b/public/textures/chipped/blank_lodestone_side.png new file mode 100644 index 00000000..d41ce2f5 Binary files /dev/null and b/public/textures/chipped/blank_lodestone_side.png differ diff --git a/public/textures/chipped/blank_magma_block_carving.png b/public/textures/chipped/blank_magma_block_carving.png new file mode 100644 index 00000000..6ba46ed2 Binary files /dev/null and b/public/textures/chipped/blank_magma_block_carving.png differ diff --git a/public/textures/chipped/blank_mossy_cobblestone_carving.png b/public/textures/chipped/blank_mossy_cobblestone_carving.png new file mode 100644 index 00000000..921820dc Binary files /dev/null and b/public/textures/chipped/blank_mossy_cobblestone_carving.png differ diff --git a/public/textures/chipped/blank_mossy_stone_bricks_carving.png b/public/textures/chipped/blank_mossy_stone_bricks_carving.png new file mode 100644 index 00000000..d00cb2d9 Binary files /dev/null and b/public/textures/chipped/blank_mossy_stone_bricks_carving.png differ diff --git a/public/textures/chipped/blank_nether_bricks_carving.png b/public/textures/chipped/blank_nether_bricks_carving.png new file mode 100644 index 00000000..c8d99abd Binary files /dev/null and b/public/textures/chipped/blank_nether_bricks_carving.png differ diff --git a/public/textures/chipped/blank_netherrack_carving.png b/public/textures/chipped/blank_netherrack_carving.png new file mode 100644 index 00000000..db299f79 Binary files /dev/null and b/public/textures/chipped/blank_netherrack_carving.png differ diff --git a/public/textures/chipped/blank_obsidian_carving.png b/public/textures/chipped/blank_obsidian_carving.png new file mode 100644 index 00000000..e66cfd0b Binary files /dev/null and b/public/textures/chipped/blank_obsidian_carving.png differ diff --git a/public/textures/chipped/blank_packed_ice_carving.png b/public/textures/chipped/blank_packed_ice_carving.png new file mode 100644 index 00000000..3589fdb3 Binary files /dev/null and b/public/textures/chipped/blank_packed_ice_carving.png differ diff --git a/public/textures/chipped/blank_prismarine_carving.png b/public/textures/chipped/blank_prismarine_carving.png new file mode 100644 index 00000000..16303d53 Binary files /dev/null and b/public/textures/chipped/blank_prismarine_carving.png differ diff --git a/public/textures/chipped/blank_purpur_block_carving.png b/public/textures/chipped/blank_purpur_block_carving.png new file mode 100644 index 00000000..5dc66861 Binary files /dev/null and b/public/textures/chipped/blank_purpur_block_carving.png differ diff --git a/public/textures/chipped/blank_quartz_block_carving.png b/public/textures/chipped/blank_quartz_block_carving.png new file mode 100644 index 00000000..0c3e03c7 Binary files /dev/null and b/public/textures/chipped/blank_quartz_block_carving.png differ diff --git a/public/textures/chipped/blank_raw_copper_block_carving.png b/public/textures/chipped/blank_raw_copper_block_carving.png new file mode 100644 index 00000000..49b75fb3 Binary files /dev/null and b/public/textures/chipped/blank_raw_copper_block_carving.png differ diff --git a/public/textures/chipped/blank_raw_gold_block_carving.png b/public/textures/chipped/blank_raw_gold_block_carving.png new file mode 100644 index 00000000..a2a1b195 Binary files /dev/null and b/public/textures/chipped/blank_raw_gold_block_carving.png differ diff --git a/public/textures/chipped/blank_raw_iron_block_carving.png b/public/textures/chipped/blank_raw_iron_block_carving.png new file mode 100644 index 00000000..58627767 Binary files /dev/null and b/public/textures/chipped/blank_raw_iron_block_carving.png differ diff --git a/public/textures/chipped/blank_red_nether_bricks_carving.png b/public/textures/chipped/blank_red_nether_bricks_carving.png new file mode 100644 index 00000000..00f072b4 Binary files /dev/null and b/public/textures/chipped/blank_red_nether_bricks_carving.png differ diff --git a/public/textures/chipped/blank_red_sandstone_carving.png b/public/textures/chipped/blank_red_sandstone_carving.png new file mode 100644 index 00000000..0eeafc65 Binary files /dev/null and b/public/textures/chipped/blank_red_sandstone_carving.png differ diff --git a/public/textures/chipped/blank_redstone_block_carving.png b/public/textures/chipped/blank_redstone_block_carving.png new file mode 100644 index 00000000..96c6974f Binary files /dev/null and b/public/textures/chipped/blank_redstone_block_carving.png differ diff --git a/public/textures/chipped/blank_sandstone_carving.png b/public/textures/chipped/blank_sandstone_carving.png new file mode 100644 index 00000000..989a1753 Binary files /dev/null and b/public/textures/chipped/blank_sandstone_carving.png differ diff --git a/public/textures/chipped/blank_smooth_stone_carving.png b/public/textures/chipped/blank_smooth_stone_carving.png new file mode 100644 index 00000000..ab7200c3 Binary files /dev/null and b/public/textures/chipped/blank_smooth_stone_carving.png differ diff --git a/public/textures/chipped/blank_snow_block_carving.png b/public/textures/chipped/blank_snow_block_carving.png new file mode 100644 index 00000000..28b0d216 Binary files /dev/null and b/public/textures/chipped/blank_snow_block_carving.png differ diff --git a/public/textures/chipped/blank_stone_carving.png b/public/textures/chipped/blank_stone_carving.png new file mode 100644 index 00000000..c4e55d46 Binary files /dev/null and b/public/textures/chipped/blank_stone_carving.png differ diff --git a/public/textures/chipped/blank_tuff_carving.png b/public/textures/chipped/blank_tuff_carving.png new file mode 100644 index 00000000..fef9414a Binary files /dev/null and b/public/textures/chipped/blank_tuff_carving.png differ diff --git a/public/textures/chipped/blobby_moss_block.png b/public/textures/chipped/blobby_moss_block.png new file mode 100644 index 00000000..faf50bed Binary files /dev/null and b/public/textures/chipped/blobby_moss_block.png differ diff --git a/public/textures/chipped/blocky_black_carpet.png b/public/textures/chipped/blocky_black_carpet.png new file mode 100644 index 00000000..c3820d55 Binary files /dev/null and b/public/textures/chipped/blocky_black_carpet.png differ diff --git a/public/textures/chipped/blocky_black_wool.png b/public/textures/chipped/blocky_black_wool.png new file mode 100644 index 00000000..b0060364 Binary files /dev/null and b/public/textures/chipped/blocky_black_wool.png differ diff --git a/public/textures/chipped/blocky_blue_carpet.png b/public/textures/chipped/blocky_blue_carpet.png new file mode 100644 index 00000000..0660624e Binary files /dev/null and b/public/textures/chipped/blocky_blue_carpet.png differ diff --git a/public/textures/chipped/blocky_blue_wool.png b/public/textures/chipped/blocky_blue_wool.png new file mode 100644 index 00000000..7193dff6 Binary files /dev/null and b/public/textures/chipped/blocky_blue_wool.png differ diff --git a/public/textures/chipped/blocky_brown_carpet.png b/public/textures/chipped/blocky_brown_carpet.png new file mode 100644 index 00000000..5c8e80d0 Binary files /dev/null and b/public/textures/chipped/blocky_brown_carpet.png differ diff --git a/public/textures/chipped/blocky_brown_wool.png b/public/textures/chipped/blocky_brown_wool.png new file mode 100644 index 00000000..1bd956da Binary files /dev/null and b/public/textures/chipped/blocky_brown_wool.png differ diff --git a/public/textures/chipped/blocky_cyan_carpet.png b/public/textures/chipped/blocky_cyan_carpet.png new file mode 100644 index 00000000..264bbe14 Binary files /dev/null and b/public/textures/chipped/blocky_cyan_carpet.png differ diff --git a/public/textures/chipped/blocky_cyan_wool.png b/public/textures/chipped/blocky_cyan_wool.png new file mode 100644 index 00000000..5d2d4748 Binary files /dev/null and b/public/textures/chipped/blocky_cyan_wool.png differ diff --git a/public/textures/chipped/blocky_gray_carpet.png b/public/textures/chipped/blocky_gray_carpet.png new file mode 100644 index 00000000..42db5161 Binary files /dev/null and b/public/textures/chipped/blocky_gray_carpet.png differ diff --git a/public/textures/chipped/blocky_gray_wool.png b/public/textures/chipped/blocky_gray_wool.png new file mode 100644 index 00000000..4a426312 Binary files /dev/null and b/public/textures/chipped/blocky_gray_wool.png differ diff --git a/public/textures/chipped/blocky_green_carpet.png b/public/textures/chipped/blocky_green_carpet.png new file mode 100644 index 00000000..117da4e4 Binary files /dev/null and b/public/textures/chipped/blocky_green_carpet.png differ diff --git a/public/textures/chipped/blocky_green_wool.png b/public/textures/chipped/blocky_green_wool.png new file mode 100644 index 00000000..6c4b8682 Binary files /dev/null and b/public/textures/chipped/blocky_green_wool.png differ diff --git a/public/textures/chipped/blocky_light_blue_carpet.png b/public/textures/chipped/blocky_light_blue_carpet.png new file mode 100644 index 00000000..c37767fb Binary files /dev/null and b/public/textures/chipped/blocky_light_blue_carpet.png differ diff --git a/public/textures/chipped/blocky_light_blue_wool.png b/public/textures/chipped/blocky_light_blue_wool.png new file mode 100644 index 00000000..550096a9 Binary files /dev/null and b/public/textures/chipped/blocky_light_blue_wool.png differ diff --git a/public/textures/chipped/blocky_light_gray_carpet.png b/public/textures/chipped/blocky_light_gray_carpet.png new file mode 100644 index 00000000..2e3d3a05 Binary files /dev/null and b/public/textures/chipped/blocky_light_gray_carpet.png differ diff --git a/public/textures/chipped/blocky_light_gray_wool.png b/public/textures/chipped/blocky_light_gray_wool.png new file mode 100644 index 00000000..98556fed Binary files /dev/null and b/public/textures/chipped/blocky_light_gray_wool.png differ diff --git a/public/textures/chipped/blocky_lime_carpet.png b/public/textures/chipped/blocky_lime_carpet.png new file mode 100644 index 00000000..9d65dc55 Binary files /dev/null and b/public/textures/chipped/blocky_lime_carpet.png differ diff --git a/public/textures/chipped/blocky_lime_wool.png b/public/textures/chipped/blocky_lime_wool.png new file mode 100644 index 00000000..d67153b7 Binary files /dev/null and b/public/textures/chipped/blocky_lime_wool.png differ diff --git a/public/textures/chipped/blocky_magenta_carpet.png b/public/textures/chipped/blocky_magenta_carpet.png new file mode 100644 index 00000000..bc304b93 Binary files /dev/null and b/public/textures/chipped/blocky_magenta_carpet.png differ diff --git a/public/textures/chipped/blocky_magenta_wool.png b/public/textures/chipped/blocky_magenta_wool.png new file mode 100644 index 00000000..0505ac6b Binary files /dev/null and b/public/textures/chipped/blocky_magenta_wool.png differ diff --git a/public/textures/chipped/blocky_orange_carpet.png b/public/textures/chipped/blocky_orange_carpet.png new file mode 100644 index 00000000..dede7441 Binary files /dev/null and b/public/textures/chipped/blocky_orange_carpet.png differ diff --git a/public/textures/chipped/blocky_orange_wool.png b/public/textures/chipped/blocky_orange_wool.png new file mode 100644 index 00000000..de60e32e Binary files /dev/null and b/public/textures/chipped/blocky_orange_wool.png differ diff --git a/public/textures/chipped/blocky_pink_carpet.png b/public/textures/chipped/blocky_pink_carpet.png new file mode 100644 index 00000000..ff5950a4 Binary files /dev/null and b/public/textures/chipped/blocky_pink_carpet.png differ diff --git a/public/textures/chipped/blocky_pink_wool.png b/public/textures/chipped/blocky_pink_wool.png new file mode 100644 index 00000000..ee1b8f29 Binary files /dev/null and b/public/textures/chipped/blocky_pink_wool.png differ diff --git a/public/textures/chipped/blocky_purple_carpet.png b/public/textures/chipped/blocky_purple_carpet.png new file mode 100644 index 00000000..1c0f2373 Binary files /dev/null and b/public/textures/chipped/blocky_purple_carpet.png differ diff --git a/public/textures/chipped/blocky_purple_wool.png b/public/textures/chipped/blocky_purple_wool.png new file mode 100644 index 00000000..65c8dd6c Binary files /dev/null and b/public/textures/chipped/blocky_purple_wool.png differ diff --git a/public/textures/chipped/blocky_red_carpet.png b/public/textures/chipped/blocky_red_carpet.png new file mode 100644 index 00000000..539fc941 Binary files /dev/null and b/public/textures/chipped/blocky_red_carpet.png differ diff --git a/public/textures/chipped/blocky_red_wool.png b/public/textures/chipped/blocky_red_wool.png new file mode 100644 index 00000000..a8d45cc0 Binary files /dev/null and b/public/textures/chipped/blocky_red_wool.png differ diff --git a/public/textures/chipped/blocky_white_carpet.png b/public/textures/chipped/blocky_white_carpet.png new file mode 100644 index 00000000..9a72dedb Binary files /dev/null and b/public/textures/chipped/blocky_white_carpet.png differ diff --git a/public/textures/chipped/blocky_white_wool.png b/public/textures/chipped/blocky_white_wool.png new file mode 100644 index 00000000..c58e6f83 Binary files /dev/null and b/public/textures/chipped/blocky_white_wool.png differ diff --git a/public/textures/chipped/blocky_yellow_carpet.png b/public/textures/chipped/blocky_yellow_carpet.png new file mode 100644 index 00000000..5c15ce7e Binary files /dev/null and b/public/textures/chipped/blocky_yellow_carpet.png differ diff --git a/public/textures/chipped/blocky_yellow_wool.png b/public/textures/chipped/blocky_yellow_wool.png new file mode 100644 index 00000000..3f731d53 Binary files /dev/null and b/public/textures/chipped/blocky_yellow_wool.png differ diff --git a/public/textures/chipped/bloomed_warped_roots.png b/public/textures/chipped/bloomed_warped_roots.png new file mode 100644 index 00000000..e4d9529c Binary files /dev/null and b/public/textures/chipped/bloomed_warped_roots.png differ diff --git a/public/textures/chipped/blooming_mushroom_stem.png b/public/textures/chipped/blooming_mushroom_stem.png new file mode 100644 index 00000000..841d9971 Binary files /dev/null and b/public/textures/chipped/blooming_mushroom_stem.png differ diff --git a/public/textures/chipped/blue_concrete_bricks.png b/public/textures/chipped/blue_concrete_bricks.png new file mode 100644 index 00000000..c1f9d330 Binary files /dev/null and b/public/textures/chipped/blue_concrete_bricks.png differ diff --git a/public/textures/chipped/blue_concrete_panel.png b/public/textures/chipped/blue_concrete_panel.png new file mode 100644 index 00000000..206d5759 Binary files /dev/null and b/public/textures/chipped/blue_concrete_panel.png differ diff --git a/public/textures/chipped/blue_concrete_pillar.png b/public/textures/chipped/blue_concrete_pillar.png new file mode 100644 index 00000000..a6d7dcee Binary files /dev/null and b/public/textures/chipped/blue_concrete_pillar.png differ diff --git a/public/textures/chipped/blue_concrete_tiles.png b/public/textures/chipped/blue_concrete_tiles.png new file mode 100644 index 00000000..f20291e9 Binary files /dev/null and b/public/textures/chipped/blue_concrete_tiles.png differ diff --git a/public/textures/chipped/blue_dried_kelp_block.png b/public/textures/chipped/blue_dried_kelp_block.png new file mode 100644 index 00000000..35aa0eca Binary files /dev/null and b/public/textures/chipped/blue_dried_kelp_block.png differ diff --git a/public/textures/chipped/blue_glazed_terracotta_pillar_sides.png b/public/textures/chipped/blue_glazed_terracotta_pillar_sides.png new file mode 100644 index 00000000..0dc40601 Binary files /dev/null and b/public/textures/chipped/blue_glazed_terracotta_pillar_sides.png differ diff --git a/public/textures/chipped/blue_glazed_terracotta_pillar_top.png b/public/textures/chipped/blue_glazed_terracotta_pillar_top.png new file mode 100644 index 00000000..006099e1 Binary files /dev/null and b/public/textures/chipped/blue_glazed_terracotta_pillar_top.png differ diff --git a/public/textures/chipped/blue_glazed_terracotta_smooth_tiles.png b/public/textures/chipped/blue_glazed_terracotta_smooth_tiles.png new file mode 100644 index 00000000..ce20205a Binary files /dev/null and b/public/textures/chipped/blue_glazed_terracotta_smooth_tiles.png differ diff --git a/public/textures/chipped/blue_glazed_terracotta_tiles.png b/public/textures/chipped/blue_glazed_terracotta_tiles.png new file mode 100644 index 00000000..c56cec05 Binary files /dev/null and b/public/textures/chipped/blue_glazed_terracotta_tiles.png differ diff --git a/public/textures/chipped/blue_ice_bricks.png b/public/textures/chipped/blue_ice_bricks.png new file mode 100644 index 00000000..338de385 Binary files /dev/null and b/public/textures/chipped/blue_ice_bricks.png differ diff --git a/public/textures/chipped/blue_ice_mini_tiles.png b/public/textures/chipped/blue_ice_mini_tiles.png new file mode 100644 index 00000000..751ff865 Binary files /dev/null and b/public/textures/chipped/blue_ice_mini_tiles.png differ diff --git a/public/textures/chipped/blue_ice_pillar.png b/public/textures/chipped/blue_ice_pillar.png new file mode 100644 index 00000000..ce2b6c8f Binary files /dev/null and b/public/textures/chipped/blue_ice_pillar.png differ diff --git a/public/textures/chipped/blue_ice_pillar_top.png b/public/textures/chipped/blue_ice_pillar_top.png new file mode 100644 index 00000000..f0749369 Binary files /dev/null and b/public/textures/chipped/blue_ice_pillar_top.png differ diff --git a/public/textures/chipped/blue_ice_scales.png b/public/textures/chipped/blue_ice_scales.png new file mode 100644 index 00000000..fca70c81 Binary files /dev/null and b/public/textures/chipped/blue_ice_scales.png differ diff --git a/public/textures/chipped/blue_mangrove_roots.png b/public/textures/chipped/blue_mangrove_roots.png new file mode 100644 index 00000000..994eb912 Binary files /dev/null and b/public/textures/chipped/blue_mangrove_roots.png differ diff --git a/public/textures/chipped/blue_moss_block.png b/public/textures/chipped/blue_moss_block.png new file mode 100644 index 00000000..eb7e56b8 Binary files /dev/null and b/public/textures/chipped/blue_moss_block.png differ diff --git a/public/textures/chipped/blue_paper_lantern.png b/public/textures/chipped/blue_paper_lantern.png new file mode 100644 index 00000000..c3fea386 Binary files /dev/null and b/public/textures/chipped/blue_paper_lantern.png differ diff --git a/public/textures/chipped/blue_paper_soul_lantern.png b/public/textures/chipped/blue_paper_soul_lantern.png new file mode 100644 index 00000000..2a69b070 Binary files /dev/null and b/public/textures/chipped/blue_paper_soul_lantern.png differ diff --git a/public/textures/chipped/blue_redstone_torch.png b/public/textures/chipped/blue_redstone_torch.png new file mode 100644 index 00000000..66cdc3ea Binary files /dev/null and b/public/textures/chipped/blue_redstone_torch.png differ diff --git a/public/textures/chipped/blue_terracotta_bricks.png b/public/textures/chipped/blue_terracotta_bricks.png new file mode 100644 index 00000000..58fd0ca4 Binary files /dev/null and b/public/textures/chipped/blue_terracotta_bricks.png differ diff --git a/public/textures/chipped/blue_terracotta_column.png b/public/textures/chipped/blue_terracotta_column.png new file mode 100644 index 00000000..ed7405ad Binary files /dev/null and b/public/textures/chipped/blue_terracotta_column.png differ diff --git a/public/textures/chipped/blue_terracotta_pillar.png b/public/textures/chipped/blue_terracotta_pillar.png new file mode 100644 index 00000000..d62c51d8 Binary files /dev/null and b/public/textures/chipped/blue_terracotta_pillar.png differ diff --git a/public/textures/chipped/blue_terracotta_tile.png b/public/textures/chipped/blue_terracotta_tile.png new file mode 100644 index 00000000..e4c46245 Binary files /dev/null and b/public/textures/chipped/blue_terracotta_tile.png differ diff --git a/public/textures/chipped/blue_terracotta_tiles.png b/public/textures/chipped/blue_terracotta_tiles.png new file mode 100644 index 00000000..a3eb0df3 Binary files /dev/null and b/public/textures/chipped/blue_terracotta_tiles.png differ diff --git a/public/textures/chipped/blue_tube_soul_lantern.png b/public/textures/chipped/blue_tube_soul_lantern.png new file mode 100644 index 00000000..bf38c4e1 Binary files /dev/null and b/public/textures/chipped/blue_tube_soul_lantern.png differ diff --git a/public/textures/chipped/boarded_acacia_door.png b/public/textures/chipped/boarded_acacia_door.png new file mode 100644 index 00000000..fce2b3ca Binary files /dev/null and b/public/textures/chipped/boarded_acacia_door.png differ diff --git a/public/textures/chipped/boarded_bamboo_door.png b/public/textures/chipped/boarded_bamboo_door.png new file mode 100644 index 00000000..4482e33a Binary files /dev/null and b/public/textures/chipped/boarded_bamboo_door.png differ diff --git a/public/textures/chipped/boarded_birch_door.png b/public/textures/chipped/boarded_birch_door.png new file mode 100644 index 00000000..8a17832d Binary files /dev/null and b/public/textures/chipped/boarded_birch_door.png differ diff --git a/public/textures/chipped/boarded_cherry_door.png b/public/textures/chipped/boarded_cherry_door.png new file mode 100644 index 00000000..a5ceb81f Binary files /dev/null and b/public/textures/chipped/boarded_cherry_door.png differ diff --git a/public/textures/chipped/boarded_crimson_door.png b/public/textures/chipped/boarded_crimson_door.png new file mode 100644 index 00000000..1ba9475b Binary files /dev/null and b/public/textures/chipped/boarded_crimson_door.png differ diff --git a/public/textures/chipped/boarded_dark_oak_door.png b/public/textures/chipped/boarded_dark_oak_door.png new file mode 100644 index 00000000..6df8c05a Binary files /dev/null and b/public/textures/chipped/boarded_dark_oak_door.png differ diff --git a/public/textures/chipped/boarded_jungle_door.png b/public/textures/chipped/boarded_jungle_door.png new file mode 100644 index 00000000..8618bb65 Binary files /dev/null and b/public/textures/chipped/boarded_jungle_door.png differ diff --git a/public/textures/chipped/boarded_mangrove_door.png b/public/textures/chipped/boarded_mangrove_door.png new file mode 100644 index 00000000..38b777ab Binary files /dev/null and b/public/textures/chipped/boarded_mangrove_door.png differ diff --git a/public/textures/chipped/boarded_oak_door.png b/public/textures/chipped/boarded_oak_door.png new file mode 100644 index 00000000..88fdd911 Binary files /dev/null and b/public/textures/chipped/boarded_oak_door.png differ diff --git a/public/textures/chipped/boarded_warped_door.png b/public/textures/chipped/boarded_warped_door.png new file mode 100644 index 00000000..8e1922a2 Binary files /dev/null and b/public/textures/chipped/boarded_warped_door.png differ diff --git a/public/textures/chipped/bolby_nether_sprouts.png b/public/textures/chipped/bolby_nether_sprouts.png new file mode 100644 index 00000000..43dd894d Binary files /dev/null and b/public/textures/chipped/bolby_nether_sprouts.png differ diff --git a/public/textures/chipped/bolted_black_concrete.png b/public/textures/chipped/bolted_black_concrete.png new file mode 100644 index 00000000..0e956761 Binary files /dev/null and b/public/textures/chipped/bolted_black_concrete.png differ diff --git a/public/textures/chipped/bolted_blue_concrete.png b/public/textures/chipped/bolted_blue_concrete.png new file mode 100644 index 00000000..9df2ca1c Binary files /dev/null and b/public/textures/chipped/bolted_blue_concrete.png differ diff --git a/public/textures/chipped/bolted_brown_concrete.png b/public/textures/chipped/bolted_brown_concrete.png new file mode 100644 index 00000000..5effb395 Binary files /dev/null and b/public/textures/chipped/bolted_brown_concrete.png differ diff --git a/public/textures/chipped/bolted_cyan_concrete.png b/public/textures/chipped/bolted_cyan_concrete.png new file mode 100644 index 00000000..309c38d3 Binary files /dev/null and b/public/textures/chipped/bolted_cyan_concrete.png differ diff --git a/public/textures/chipped/bolted_gray_concrete.png b/public/textures/chipped/bolted_gray_concrete.png new file mode 100644 index 00000000..8977019e Binary files /dev/null and b/public/textures/chipped/bolted_gray_concrete.png differ diff --git a/public/textures/chipped/bolted_green_concrete.png b/public/textures/chipped/bolted_green_concrete.png new file mode 100644 index 00000000..dde21e19 Binary files /dev/null and b/public/textures/chipped/bolted_green_concrete.png differ diff --git a/public/textures/chipped/bolted_iron_bars.png b/public/textures/chipped/bolted_iron_bars.png new file mode 100644 index 00000000..e77305f7 Binary files /dev/null and b/public/textures/chipped/bolted_iron_bars.png differ diff --git a/public/textures/chipped/bolted_light_blue_concrete.png b/public/textures/chipped/bolted_light_blue_concrete.png new file mode 100644 index 00000000..e1d0e517 Binary files /dev/null and b/public/textures/chipped/bolted_light_blue_concrete.png differ diff --git a/public/textures/chipped/bolted_light_gray_concrete.png b/public/textures/chipped/bolted_light_gray_concrete.png new file mode 100644 index 00000000..02de3fd0 Binary files /dev/null and b/public/textures/chipped/bolted_light_gray_concrete.png differ diff --git a/public/textures/chipped/bolted_lime_concrete.png b/public/textures/chipped/bolted_lime_concrete.png new file mode 100644 index 00000000..a675cc80 Binary files /dev/null and b/public/textures/chipped/bolted_lime_concrete.png differ diff --git a/public/textures/chipped/bolted_magenta_concrete.png b/public/textures/chipped/bolted_magenta_concrete.png new file mode 100644 index 00000000..35bea79d Binary files /dev/null and b/public/textures/chipped/bolted_magenta_concrete.png differ diff --git a/public/textures/chipped/bolted_orange_concrete.png b/public/textures/chipped/bolted_orange_concrete.png new file mode 100644 index 00000000..5adeecdf Binary files /dev/null and b/public/textures/chipped/bolted_orange_concrete.png differ diff --git a/public/textures/chipped/bolted_pink_concrete.png b/public/textures/chipped/bolted_pink_concrete.png new file mode 100644 index 00000000..a350a2ea Binary files /dev/null and b/public/textures/chipped/bolted_pink_concrete.png differ diff --git a/public/textures/chipped/bolted_purple_concrete.png b/public/textures/chipped/bolted_purple_concrete.png new file mode 100644 index 00000000..08e295f0 Binary files /dev/null and b/public/textures/chipped/bolted_purple_concrete.png differ diff --git a/public/textures/chipped/bolted_red_concrete.png b/public/textures/chipped/bolted_red_concrete.png new file mode 100644 index 00000000..a803e8c3 Binary files /dev/null and b/public/textures/chipped/bolted_red_concrete.png differ diff --git a/public/textures/chipped/bolted_white_concrete.png b/public/textures/chipped/bolted_white_concrete.png new file mode 100644 index 00000000..6fe4a7c8 Binary files /dev/null and b/public/textures/chipped/bolted_white_concrete.png differ diff --git a/public/textures/chipped/bolted_yellow_concrete.png b/public/textures/chipped/bolted_yellow_concrete.png new file mode 100644 index 00000000..2f54d132 Binary files /dev/null and b/public/textures/chipped/bolted_yellow_concrete.png differ diff --git a/public/textures/chipped/boo_carved_pumpkin.png b/public/textures/chipped/boo_carved_pumpkin.png new file mode 100644 index 00000000..b04c5960 Binary files /dev/null and b/public/textures/chipped/boo_carved_pumpkin.png differ diff --git a/public/textures/chipped/boo_jack_o_lantern.png b/public/textures/chipped/boo_jack_o_lantern.png new file mode 100644 index 00000000..5a88c85f Binary files /dev/null and b/public/textures/chipped/boo_jack_o_lantern.png differ diff --git a/public/textures/chipped/bordered_amethyst_block.png b/public/textures/chipped/bordered_amethyst_block.png new file mode 100644 index 00000000..0e5eccb7 Binary files /dev/null and b/public/textures/chipped/bordered_amethyst_block.png differ diff --git a/public/textures/chipped/bordered_ancient_debris.png b/public/textures/chipped/bordered_ancient_debris.png new file mode 100644 index 00000000..f2545bea Binary files /dev/null and b/public/textures/chipped/bordered_ancient_debris.png differ diff --git a/public/textures/chipped/bordered_andesite.png b/public/textures/chipped/bordered_andesite.png new file mode 100644 index 00000000..db67920b Binary files /dev/null and b/public/textures/chipped/bordered_andesite.png differ diff --git a/public/textures/chipped/bordered_basalt.png b/public/textures/chipped/bordered_basalt.png new file mode 100644 index 00000000..3f81ee50 Binary files /dev/null and b/public/textures/chipped/bordered_basalt.png differ diff --git a/public/textures/chipped/bordered_blackstone.png b/public/textures/chipped/bordered_blackstone.png new file mode 100644 index 00000000..42fadcf0 Binary files /dev/null and b/public/textures/chipped/bordered_blackstone.png differ diff --git a/public/textures/chipped/bordered_blue_ice.png b/public/textures/chipped/bordered_blue_ice.png new file mode 100644 index 00000000..3154d5fe Binary files /dev/null and b/public/textures/chipped/bordered_blue_ice.png differ diff --git a/public/textures/chipped/bordered_borderless_bricks.png b/public/textures/chipped/bordered_borderless_bricks.png new file mode 100644 index 00000000..bc08999e Binary files /dev/null and b/public/textures/chipped/bordered_borderless_bricks.png differ diff --git a/public/textures/chipped/bordered_bricks.png b/public/textures/chipped/bordered_bricks.png new file mode 100644 index 00000000..03f638c1 Binary files /dev/null and b/public/textures/chipped/bordered_bricks.png differ diff --git a/public/textures/chipped/bordered_calcite.png b/public/textures/chipped/bordered_calcite.png new file mode 100644 index 00000000..ac8c17db Binary files /dev/null and b/public/textures/chipped/bordered_calcite.png differ diff --git a/public/textures/chipped/bordered_clay.png b/public/textures/chipped/bordered_clay.png new file mode 100644 index 00000000..ca387318 Binary files /dev/null and b/public/textures/chipped/bordered_clay.png differ diff --git a/public/textures/chipped/bordered_coal_block.png b/public/textures/chipped/bordered_coal_block.png new file mode 100644 index 00000000..946c182d Binary files /dev/null and b/public/textures/chipped/bordered_coal_block.png differ diff --git a/public/textures/chipped/bordered_cobblestone.png b/public/textures/chipped/bordered_cobblestone.png new file mode 100644 index 00000000..876ebac0 Binary files /dev/null and b/public/textures/chipped/bordered_cobblestone.png differ diff --git a/public/textures/chipped/bordered_crying_obsidian.png b/public/textures/chipped/bordered_crying_obsidian.png new file mode 100644 index 00000000..84e5436c Binary files /dev/null and b/public/textures/chipped/bordered_crying_obsidian.png differ diff --git a/public/textures/chipped/bordered_dark_prismarine.png b/public/textures/chipped/bordered_dark_prismarine.png new file mode 100644 index 00000000..372e0f6b Binary files /dev/null and b/public/textures/chipped/bordered_dark_prismarine.png differ diff --git a/public/textures/chipped/bordered_deepslate.png b/public/textures/chipped/bordered_deepslate.png new file mode 100644 index 00000000..da0a92f7 Binary files /dev/null and b/public/textures/chipped/bordered_deepslate.png differ diff --git a/public/textures/chipped/bordered_diorite.png b/public/textures/chipped/bordered_diorite.png new file mode 100644 index 00000000..21bef6a9 Binary files /dev/null and b/public/textures/chipped/bordered_diorite.png differ diff --git a/public/textures/chipped/bordered_dirt.png b/public/textures/chipped/bordered_dirt.png new file mode 100644 index 00000000..a4a91de6 Binary files /dev/null and b/public/textures/chipped/bordered_dirt.png differ diff --git a/public/textures/chipped/bordered_dripstone_block.png b/public/textures/chipped/bordered_dripstone_block.png new file mode 100644 index 00000000..f69b6343 Binary files /dev/null and b/public/textures/chipped/bordered_dripstone_block.png differ diff --git a/public/textures/chipped/bordered_end_stone.png b/public/textures/chipped/bordered_end_stone.png new file mode 100644 index 00000000..818aaf19 Binary files /dev/null and b/public/textures/chipped/bordered_end_stone.png differ diff --git a/public/textures/chipped/bordered_gilded_blackstone.png b/public/textures/chipped/bordered_gilded_blackstone.png new file mode 100644 index 00000000..ef441ab5 Binary files /dev/null and b/public/textures/chipped/bordered_gilded_blackstone.png differ diff --git a/public/textures/chipped/bordered_granite.png b/public/textures/chipped/bordered_granite.png new file mode 100644 index 00000000..9a2ef909 Binary files /dev/null and b/public/textures/chipped/bordered_granite.png differ diff --git a/public/textures/chipped/bordered_ice.png b/public/textures/chipped/bordered_ice.png new file mode 100644 index 00000000..391266cd Binary files /dev/null and b/public/textures/chipped/bordered_ice.png differ diff --git a/public/textures/chipped/bordered_lapis_block.png b/public/textures/chipped/bordered_lapis_block.png new file mode 100644 index 00000000..d38fc0e4 Binary files /dev/null and b/public/textures/chipped/bordered_lapis_block.png differ diff --git a/public/textures/chipped/bordered_lodestone.png b/public/textures/chipped/bordered_lodestone.png new file mode 100644 index 00000000..136f6b11 Binary files /dev/null and b/public/textures/chipped/bordered_lodestone.png differ diff --git a/public/textures/chipped/bordered_magma_block.png b/public/textures/chipped/bordered_magma_block.png new file mode 100644 index 00000000..0457da84 Binary files /dev/null and b/public/textures/chipped/bordered_magma_block.png differ diff --git a/public/textures/chipped/bordered_mossy_cobblestone.png b/public/textures/chipped/bordered_mossy_cobblestone.png new file mode 100644 index 00000000..c320b28a Binary files /dev/null and b/public/textures/chipped/bordered_mossy_cobblestone.png differ diff --git a/public/textures/chipped/bordered_mossy_stone_bricks.png b/public/textures/chipped/bordered_mossy_stone_bricks.png new file mode 100644 index 00000000..fd953997 Binary files /dev/null and b/public/textures/chipped/bordered_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/bordered_mud.png b/public/textures/chipped/bordered_mud.png new file mode 100644 index 00000000..7be09579 Binary files /dev/null and b/public/textures/chipped/bordered_mud.png differ diff --git a/public/textures/chipped/bordered_mud_bricks.png b/public/textures/chipped/bordered_mud_bricks.png new file mode 100644 index 00000000..9a18bfc9 Binary files /dev/null and b/public/textures/chipped/bordered_mud_bricks.png differ diff --git a/public/textures/chipped/bordered_nether_bricks.png b/public/textures/chipped/bordered_nether_bricks.png new file mode 100644 index 00000000..a360ebb9 Binary files /dev/null and b/public/textures/chipped/bordered_nether_bricks.png differ diff --git a/public/textures/chipped/bordered_netherrack.png b/public/textures/chipped/bordered_netherrack.png new file mode 100644 index 00000000..6ca88ef9 Binary files /dev/null and b/public/textures/chipped/bordered_netherrack.png differ diff --git a/public/textures/chipped/bordered_obsidian.png b/public/textures/chipped/bordered_obsidian.png new file mode 100644 index 00000000..b0e02119 Binary files /dev/null and b/public/textures/chipped/bordered_obsidian.png differ diff --git a/public/textures/chipped/bordered_packed_ice.png b/public/textures/chipped/bordered_packed_ice.png new file mode 100644 index 00000000..ff965bfe Binary files /dev/null and b/public/textures/chipped/bordered_packed_ice.png differ diff --git a/public/textures/chipped/bordered_packed_mud.png b/public/textures/chipped/bordered_packed_mud.png new file mode 100644 index 00000000..6719bab2 Binary files /dev/null and b/public/textures/chipped/bordered_packed_mud.png differ diff --git a/public/textures/chipped/bordered_prismarine.png b/public/textures/chipped/bordered_prismarine.png new file mode 100644 index 00000000..2a91cff9 Binary files /dev/null and b/public/textures/chipped/bordered_prismarine.png differ diff --git a/public/textures/chipped/bordered_purpur_block.png b/public/textures/chipped/bordered_purpur_block.png new file mode 100644 index 00000000..d3f989c0 Binary files /dev/null and b/public/textures/chipped/bordered_purpur_block.png differ diff --git a/public/textures/chipped/bordered_quartz_block.png b/public/textures/chipped/bordered_quartz_block.png new file mode 100644 index 00000000..fc82a20d Binary files /dev/null and b/public/textures/chipped/bordered_quartz_block.png differ diff --git a/public/textures/chipped/bordered_raw_copper_block.png b/public/textures/chipped/bordered_raw_copper_block.png new file mode 100644 index 00000000..2a64ec66 Binary files /dev/null and b/public/textures/chipped/bordered_raw_copper_block.png differ diff --git a/public/textures/chipped/bordered_raw_gold_block.png b/public/textures/chipped/bordered_raw_gold_block.png new file mode 100644 index 00000000..e0312c88 Binary files /dev/null and b/public/textures/chipped/bordered_raw_gold_block.png differ diff --git a/public/textures/chipped/bordered_raw_iron_block.png b/public/textures/chipped/bordered_raw_iron_block.png new file mode 100644 index 00000000..0e3a9d63 Binary files /dev/null and b/public/textures/chipped/bordered_raw_iron_block.png differ diff --git a/public/textures/chipped/bordered_red_nether_bricks.png b/public/textures/chipped/bordered_red_nether_bricks.png new file mode 100644 index 00000000..ed91258a Binary files /dev/null and b/public/textures/chipped/bordered_red_nether_bricks.png differ diff --git a/public/textures/chipped/bordered_red_sandstone.png b/public/textures/chipped/bordered_red_sandstone.png new file mode 100644 index 00000000..c342d79e Binary files /dev/null and b/public/textures/chipped/bordered_red_sandstone.png differ diff --git a/public/textures/chipped/bordered_redstone_block.png b/public/textures/chipped/bordered_redstone_block.png new file mode 100644 index 00000000..97db5934 Binary files /dev/null and b/public/textures/chipped/bordered_redstone_block.png differ diff --git a/public/textures/chipped/bordered_sandstone.png b/public/textures/chipped/bordered_sandstone.png new file mode 100644 index 00000000..23d8b4fc Binary files /dev/null and b/public/textures/chipped/bordered_sandstone.png differ diff --git a/public/textures/chipped/bordered_smooth_stone.png b/public/textures/chipped/bordered_smooth_stone.png new file mode 100644 index 00000000..706794bd Binary files /dev/null and b/public/textures/chipped/bordered_smooth_stone.png differ diff --git a/public/textures/chipped/bordered_snow_block.png b/public/textures/chipped/bordered_snow_block.png new file mode 100644 index 00000000..5ce8a8c1 Binary files /dev/null and b/public/textures/chipped/bordered_snow_block.png differ diff --git a/public/textures/chipped/bordered_stone.png b/public/textures/chipped/bordered_stone.png new file mode 100644 index 00000000..ea4f58da Binary files /dev/null and b/public/textures/chipped/bordered_stone.png differ diff --git a/public/textures/chipped/bordered_tuff.png b/public/textures/chipped/bordered_tuff.png new file mode 100644 index 00000000..84954f01 Binary files /dev/null and b/public/textures/chipped/bordered_tuff.png differ diff --git a/public/textures/chipped/borderless_bricks_bricks.png b/public/textures/chipped/borderless_bricks_bricks.png new file mode 100644 index 00000000..eb3d794f Binary files /dev/null and b/public/textures/chipped/borderless_bricks_bricks.png differ diff --git a/public/textures/chipped/borderless_bricks_mini_tiles.png b/public/textures/chipped/borderless_bricks_mini_tiles.png new file mode 100644 index 00000000..035aefc6 Binary files /dev/null and b/public/textures/chipped/borderless_bricks_mini_tiles.png differ diff --git a/public/textures/chipped/borderless_bricks_pillar.png b/public/textures/chipped/borderless_bricks_pillar.png new file mode 100644 index 00000000..b0f49063 Binary files /dev/null and b/public/textures/chipped/borderless_bricks_pillar.png differ diff --git a/public/textures/chipped/borderless_bricks_pillar_top.png b/public/textures/chipped/borderless_bricks_pillar_top.png new file mode 100644 index 00000000..7e507b89 Binary files /dev/null and b/public/textures/chipped/borderless_bricks_pillar_top.png differ diff --git a/public/textures/chipped/borderless_bricks_scales.png b/public/textures/chipped/borderless_bricks_scales.png new file mode 100644 index 00000000..62ec8b6f Binary files /dev/null and b/public/textures/chipped/borderless_bricks_scales.png differ diff --git a/public/textures/chipped/botanical_oak_bookshelf.png b/public/textures/chipped/botanical_oak_bookshelf.png new file mode 100644 index 00000000..2a040d44 Binary files /dev/null and b/public/textures/chipped/botanical_oak_bookshelf.png differ diff --git a/public/textures/chipped/botanical_oak_cubed_bookshelf.png b/public/textures/chipped/botanical_oak_cubed_bookshelf.png new file mode 100644 index 00000000..7c83d070 Binary files /dev/null and b/public/textures/chipped/botanical_oak_cubed_bookshelf.png differ diff --git a/public/textures/chipped/botanical_oak_large_bookshelf.png b/public/textures/chipped/botanical_oak_large_bookshelf.png new file mode 100644 index 00000000..578d73bd Binary files /dev/null and b/public/textures/chipped/botanical_oak_large_bookshelf.png differ diff --git a/public/textures/chipped/botanist_workbench.png b/public/textures/chipped/botanist_workbench.png new file mode 100644 index 00000000..62dd377f Binary files /dev/null and b/public/textures/chipped/botanist_workbench.png differ diff --git a/public/textures/chipped/boxed_acacia_planks.png b/public/textures/chipped/boxed_acacia_planks.png new file mode 100644 index 00000000..327cfffc Binary files /dev/null and b/public/textures/chipped/boxed_acacia_planks.png differ diff --git a/public/textures/chipped/boxed_bamboo_planks.png b/public/textures/chipped/boxed_bamboo_planks.png new file mode 100644 index 00000000..85d05d3f Binary files /dev/null and b/public/textures/chipped/boxed_bamboo_planks.png differ diff --git a/public/textures/chipped/boxed_birch_planks.png b/public/textures/chipped/boxed_birch_planks.png new file mode 100644 index 00000000..322b0acd Binary files /dev/null and b/public/textures/chipped/boxed_birch_planks.png differ diff --git a/public/textures/chipped/boxed_cherry_planks.png b/public/textures/chipped/boxed_cherry_planks.png new file mode 100644 index 00000000..157e707d Binary files /dev/null and b/public/textures/chipped/boxed_cherry_planks.png differ diff --git a/public/textures/chipped/boxed_crimson_planks.png b/public/textures/chipped/boxed_crimson_planks.png new file mode 100644 index 00000000..4d71e89e Binary files /dev/null and b/public/textures/chipped/boxed_crimson_planks.png differ diff --git a/public/textures/chipped/boxed_dark_oak_planks.png b/public/textures/chipped/boxed_dark_oak_planks.png new file mode 100644 index 00000000..676e74d9 Binary files /dev/null and b/public/textures/chipped/boxed_dark_oak_planks.png differ diff --git a/public/textures/chipped/boxed_jungle_planks.png b/public/textures/chipped/boxed_jungle_planks.png new file mode 100644 index 00000000..769fdaa4 Binary files /dev/null and b/public/textures/chipped/boxed_jungle_planks.png differ diff --git a/public/textures/chipped/boxed_mangrove_planks.png b/public/textures/chipped/boxed_mangrove_planks.png new file mode 100644 index 00000000..794884c1 Binary files /dev/null and b/public/textures/chipped/boxed_mangrove_planks.png differ diff --git a/public/textures/chipped/boxed_oak_planks.png b/public/textures/chipped/boxed_oak_planks.png new file mode 100644 index 00000000..739b6e95 Binary files /dev/null and b/public/textures/chipped/boxed_oak_planks.png differ diff --git a/public/textures/chipped/boxed_spruce_planks.png b/public/textures/chipped/boxed_spruce_planks.png new file mode 100644 index 00000000..e7a29ecb Binary files /dev/null and b/public/textures/chipped/boxed_spruce_planks.png differ diff --git a/public/textures/chipped/boxed_warped_planks.png b/public/textures/chipped/boxed_warped_planks.png new file mode 100644 index 00000000..a5e180d7 Binary files /dev/null and b/public/textures/chipped/boxed_warped_planks.png differ diff --git a/public/textures/chipped/brick_bond_acacia_planks.png b/public/textures/chipped/brick_bond_acacia_planks.png new file mode 100644 index 00000000..c9d39e5b Binary files /dev/null and b/public/textures/chipped/brick_bond_acacia_planks.png differ diff --git a/public/textures/chipped/brick_bond_bamboo_planks.png b/public/textures/chipped/brick_bond_bamboo_planks.png new file mode 100644 index 00000000..5bf7e11e Binary files /dev/null and b/public/textures/chipped/brick_bond_bamboo_planks.png differ diff --git a/public/textures/chipped/brick_bond_birch_planks.png b/public/textures/chipped/brick_bond_birch_planks.png new file mode 100644 index 00000000..8276f1d9 Binary files /dev/null and b/public/textures/chipped/brick_bond_birch_planks.png differ diff --git a/public/textures/chipped/brick_bond_cherry_planks.png b/public/textures/chipped/brick_bond_cherry_planks.png new file mode 100644 index 00000000..8100e887 Binary files /dev/null and b/public/textures/chipped/brick_bond_cherry_planks.png differ diff --git a/public/textures/chipped/brick_bond_crimson_planks.png b/public/textures/chipped/brick_bond_crimson_planks.png new file mode 100644 index 00000000..d6e1b620 Binary files /dev/null and b/public/textures/chipped/brick_bond_crimson_planks.png differ diff --git a/public/textures/chipped/brick_bond_dark_oak_planks.png b/public/textures/chipped/brick_bond_dark_oak_planks.png new file mode 100644 index 00000000..e142b193 Binary files /dev/null and b/public/textures/chipped/brick_bond_dark_oak_planks.png differ diff --git a/public/textures/chipped/brick_bond_jungle_planks.png b/public/textures/chipped/brick_bond_jungle_planks.png new file mode 100644 index 00000000..bf38c383 Binary files /dev/null and b/public/textures/chipped/brick_bond_jungle_planks.png differ diff --git a/public/textures/chipped/brick_bond_mangrove_planks.png b/public/textures/chipped/brick_bond_mangrove_planks.png new file mode 100644 index 00000000..58d01df0 Binary files /dev/null and b/public/textures/chipped/brick_bond_mangrove_planks.png differ diff --git a/public/textures/chipped/brick_bond_oak_planks.png b/public/textures/chipped/brick_bond_oak_planks.png new file mode 100644 index 00000000..3937a0de Binary files /dev/null and b/public/textures/chipped/brick_bond_oak_planks.png differ diff --git a/public/textures/chipped/brick_bond_spruce_planks.png b/public/textures/chipped/brick_bond_spruce_planks.png new file mode 100644 index 00000000..26d36f4b Binary files /dev/null and b/public/textures/chipped/brick_bond_spruce_planks.png differ diff --git a/public/textures/chipped/brick_bond_warped_planks.png b/public/textures/chipped/brick_bond_warped_planks.png new file mode 100644 index 00000000..cde0d9ba Binary files /dev/null and b/public/textures/chipped/brick_bond_warped_planks.png differ diff --git a/public/textures/chipped/brick_bordered_amethyst_block.png b/public/textures/chipped/brick_bordered_amethyst_block.png new file mode 100644 index 00000000..46ea7414 Binary files /dev/null and b/public/textures/chipped/brick_bordered_amethyst_block.png differ diff --git a/public/textures/chipped/brick_bordered_ancient_debris.png b/public/textures/chipped/brick_bordered_ancient_debris.png new file mode 100644 index 00000000..b7147ade Binary files /dev/null and b/public/textures/chipped/brick_bordered_ancient_debris.png differ diff --git a/public/textures/chipped/brick_bordered_andesite.png b/public/textures/chipped/brick_bordered_andesite.png new file mode 100644 index 00000000..bd4afc59 Binary files /dev/null and b/public/textures/chipped/brick_bordered_andesite.png differ diff --git a/public/textures/chipped/brick_bordered_basalt.png b/public/textures/chipped/brick_bordered_basalt.png new file mode 100644 index 00000000..9190cde8 Binary files /dev/null and b/public/textures/chipped/brick_bordered_basalt.png differ diff --git a/public/textures/chipped/brick_bordered_blackstone.png b/public/textures/chipped/brick_bordered_blackstone.png new file mode 100644 index 00000000..483d33d3 Binary files /dev/null and b/public/textures/chipped/brick_bordered_blackstone.png differ diff --git a/public/textures/chipped/brick_bordered_blue_ice.png b/public/textures/chipped/brick_bordered_blue_ice.png new file mode 100644 index 00000000..34876f59 Binary files /dev/null and b/public/textures/chipped/brick_bordered_blue_ice.png differ diff --git a/public/textures/chipped/brick_bordered_borderless_bricks.png b/public/textures/chipped/brick_bordered_borderless_bricks.png new file mode 100644 index 00000000..bfa3f863 Binary files /dev/null and b/public/textures/chipped/brick_bordered_borderless_bricks.png differ diff --git a/public/textures/chipped/brick_bordered_bricks.png b/public/textures/chipped/brick_bordered_bricks.png new file mode 100644 index 00000000..1afaa1ed Binary files /dev/null and b/public/textures/chipped/brick_bordered_bricks.png differ diff --git a/public/textures/chipped/brick_bordered_calcite.png b/public/textures/chipped/brick_bordered_calcite.png new file mode 100644 index 00000000..67cbdc6a Binary files /dev/null and b/public/textures/chipped/brick_bordered_calcite.png differ diff --git a/public/textures/chipped/brick_bordered_clay.png b/public/textures/chipped/brick_bordered_clay.png new file mode 100644 index 00000000..b9c896cc Binary files /dev/null and b/public/textures/chipped/brick_bordered_clay.png differ diff --git a/public/textures/chipped/brick_bordered_coal_block.png b/public/textures/chipped/brick_bordered_coal_block.png new file mode 100644 index 00000000..aec3d757 Binary files /dev/null and b/public/textures/chipped/brick_bordered_coal_block.png differ diff --git a/public/textures/chipped/brick_bordered_cobblestone.png b/public/textures/chipped/brick_bordered_cobblestone.png new file mode 100644 index 00000000..0af50178 Binary files /dev/null and b/public/textures/chipped/brick_bordered_cobblestone.png differ diff --git a/public/textures/chipped/brick_bordered_crying_obsidian.png b/public/textures/chipped/brick_bordered_crying_obsidian.png new file mode 100644 index 00000000..93df6fca Binary files /dev/null and b/public/textures/chipped/brick_bordered_crying_obsidian.png differ diff --git a/public/textures/chipped/brick_bordered_dark_prismarine.png b/public/textures/chipped/brick_bordered_dark_prismarine.png new file mode 100644 index 00000000..79026a1d Binary files /dev/null and b/public/textures/chipped/brick_bordered_dark_prismarine.png differ diff --git a/public/textures/chipped/brick_bordered_deepslate.png b/public/textures/chipped/brick_bordered_deepslate.png new file mode 100644 index 00000000..3189e00b Binary files /dev/null and b/public/textures/chipped/brick_bordered_deepslate.png differ diff --git a/public/textures/chipped/brick_bordered_diorite.png b/public/textures/chipped/brick_bordered_diorite.png new file mode 100644 index 00000000..295ec6d4 Binary files /dev/null and b/public/textures/chipped/brick_bordered_diorite.png differ diff --git a/public/textures/chipped/brick_bordered_dirt.png b/public/textures/chipped/brick_bordered_dirt.png new file mode 100644 index 00000000..4ff72877 Binary files /dev/null and b/public/textures/chipped/brick_bordered_dirt.png differ diff --git a/public/textures/chipped/brick_bordered_dripstone_block.png b/public/textures/chipped/brick_bordered_dripstone_block.png new file mode 100644 index 00000000..acd9152f Binary files /dev/null and b/public/textures/chipped/brick_bordered_dripstone_block.png differ diff --git a/public/textures/chipped/brick_bordered_end_stone.png b/public/textures/chipped/brick_bordered_end_stone.png new file mode 100644 index 00000000..9f884f0f Binary files /dev/null and b/public/textures/chipped/brick_bordered_end_stone.png differ diff --git a/public/textures/chipped/brick_bordered_gilded_blackstone.png b/public/textures/chipped/brick_bordered_gilded_blackstone.png new file mode 100644 index 00000000..a8e11fe1 Binary files /dev/null and b/public/textures/chipped/brick_bordered_gilded_blackstone.png differ diff --git a/public/textures/chipped/brick_bordered_granite.png b/public/textures/chipped/brick_bordered_granite.png new file mode 100644 index 00000000..379fe0da Binary files /dev/null and b/public/textures/chipped/brick_bordered_granite.png differ diff --git a/public/textures/chipped/brick_bordered_ice.png b/public/textures/chipped/brick_bordered_ice.png new file mode 100644 index 00000000..48d0b39c Binary files /dev/null and b/public/textures/chipped/brick_bordered_ice.png differ diff --git a/public/textures/chipped/brick_bordered_lapis_block.png b/public/textures/chipped/brick_bordered_lapis_block.png new file mode 100644 index 00000000..740c84fa Binary files /dev/null and b/public/textures/chipped/brick_bordered_lapis_block.png differ diff --git a/public/textures/chipped/brick_bordered_lodestone.png b/public/textures/chipped/brick_bordered_lodestone.png new file mode 100644 index 00000000..ff1adca9 Binary files /dev/null and b/public/textures/chipped/brick_bordered_lodestone.png differ diff --git a/public/textures/chipped/brick_bordered_magma_block.png b/public/textures/chipped/brick_bordered_magma_block.png new file mode 100644 index 00000000..f45cacbf Binary files /dev/null and b/public/textures/chipped/brick_bordered_magma_block.png differ diff --git a/public/textures/chipped/brick_bordered_mossy_cobblestone.png b/public/textures/chipped/brick_bordered_mossy_cobblestone.png new file mode 100644 index 00000000..276b24f4 Binary files /dev/null and b/public/textures/chipped/brick_bordered_mossy_cobblestone.png differ diff --git a/public/textures/chipped/brick_bordered_mossy_stone_bricks.png b/public/textures/chipped/brick_bordered_mossy_stone_bricks.png new file mode 100644 index 00000000..05d67863 Binary files /dev/null and b/public/textures/chipped/brick_bordered_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/brick_bordered_mud.png b/public/textures/chipped/brick_bordered_mud.png new file mode 100644 index 00000000..66157be2 Binary files /dev/null and b/public/textures/chipped/brick_bordered_mud.png differ diff --git a/public/textures/chipped/brick_bordered_mud_bricks.png b/public/textures/chipped/brick_bordered_mud_bricks.png new file mode 100644 index 00000000..a95045fd Binary files /dev/null and b/public/textures/chipped/brick_bordered_mud_bricks.png differ diff --git a/public/textures/chipped/brick_bordered_nether_bricks.png b/public/textures/chipped/brick_bordered_nether_bricks.png new file mode 100644 index 00000000..e4adc9f5 Binary files /dev/null and b/public/textures/chipped/brick_bordered_nether_bricks.png differ diff --git a/public/textures/chipped/brick_bordered_netherrack.png b/public/textures/chipped/brick_bordered_netherrack.png new file mode 100644 index 00000000..785c3f78 Binary files /dev/null and b/public/textures/chipped/brick_bordered_netherrack.png differ diff --git a/public/textures/chipped/brick_bordered_obsidian.png b/public/textures/chipped/brick_bordered_obsidian.png new file mode 100644 index 00000000..bdda58fc Binary files /dev/null and b/public/textures/chipped/brick_bordered_obsidian.png differ diff --git a/public/textures/chipped/brick_bordered_packed_ice.png b/public/textures/chipped/brick_bordered_packed_ice.png new file mode 100644 index 00000000..85f5a3b3 Binary files /dev/null and b/public/textures/chipped/brick_bordered_packed_ice.png differ diff --git a/public/textures/chipped/brick_bordered_packed_mud.png b/public/textures/chipped/brick_bordered_packed_mud.png new file mode 100644 index 00000000..4632c02c Binary files /dev/null and b/public/textures/chipped/brick_bordered_packed_mud.png differ diff --git a/public/textures/chipped/brick_bordered_prismarine.png b/public/textures/chipped/brick_bordered_prismarine.png new file mode 100644 index 00000000..ebbbcd95 Binary files /dev/null and b/public/textures/chipped/brick_bordered_prismarine.png differ diff --git a/public/textures/chipped/brick_bordered_purpur_block.png b/public/textures/chipped/brick_bordered_purpur_block.png new file mode 100644 index 00000000..d67577bf Binary files /dev/null and b/public/textures/chipped/brick_bordered_purpur_block.png differ diff --git a/public/textures/chipped/brick_bordered_quartz_block.png b/public/textures/chipped/brick_bordered_quartz_block.png new file mode 100644 index 00000000..1c058f14 Binary files /dev/null and b/public/textures/chipped/brick_bordered_quartz_block.png differ diff --git a/public/textures/chipped/brick_bordered_raw_copper_block.png b/public/textures/chipped/brick_bordered_raw_copper_block.png new file mode 100644 index 00000000..05aef20e Binary files /dev/null and b/public/textures/chipped/brick_bordered_raw_copper_block.png differ diff --git a/public/textures/chipped/brick_bordered_raw_gold_block.png b/public/textures/chipped/brick_bordered_raw_gold_block.png new file mode 100644 index 00000000..795d0aba Binary files /dev/null and b/public/textures/chipped/brick_bordered_raw_gold_block.png differ diff --git a/public/textures/chipped/brick_bordered_raw_iron_block.png b/public/textures/chipped/brick_bordered_raw_iron_block.png new file mode 100644 index 00000000..970f0c48 Binary files /dev/null and b/public/textures/chipped/brick_bordered_raw_iron_block.png differ diff --git a/public/textures/chipped/brick_bordered_red_nether_bricks.png b/public/textures/chipped/brick_bordered_red_nether_bricks.png new file mode 100644 index 00000000..8feda3c2 Binary files /dev/null and b/public/textures/chipped/brick_bordered_red_nether_bricks.png differ diff --git a/public/textures/chipped/brick_bordered_red_sandstone.png b/public/textures/chipped/brick_bordered_red_sandstone.png new file mode 100644 index 00000000..179ef105 Binary files /dev/null and b/public/textures/chipped/brick_bordered_red_sandstone.png differ diff --git a/public/textures/chipped/brick_bordered_redstone_block.png b/public/textures/chipped/brick_bordered_redstone_block.png new file mode 100644 index 00000000..e627ad52 Binary files /dev/null and b/public/textures/chipped/brick_bordered_redstone_block.png differ diff --git a/public/textures/chipped/brick_bordered_sandstone.png b/public/textures/chipped/brick_bordered_sandstone.png new file mode 100644 index 00000000..ddb829c5 Binary files /dev/null and b/public/textures/chipped/brick_bordered_sandstone.png differ diff --git a/public/textures/chipped/brick_bordered_smooth_stone.png b/public/textures/chipped/brick_bordered_smooth_stone.png new file mode 100644 index 00000000..ea45abe5 Binary files /dev/null and b/public/textures/chipped/brick_bordered_smooth_stone.png differ diff --git a/public/textures/chipped/brick_bordered_snow_block.png b/public/textures/chipped/brick_bordered_snow_block.png new file mode 100644 index 00000000..12529911 Binary files /dev/null and b/public/textures/chipped/brick_bordered_snow_block.png differ diff --git a/public/textures/chipped/brick_bordered_stone.png b/public/textures/chipped/brick_bordered_stone.png new file mode 100644 index 00000000..0546e9b5 Binary files /dev/null and b/public/textures/chipped/brick_bordered_stone.png differ diff --git a/public/textures/chipped/brick_bordered_tuff.png b/public/textures/chipped/brick_bordered_tuff.png new file mode 100644 index 00000000..ce664673 Binary files /dev/null and b/public/textures/chipped/brick_bordered_tuff.png differ diff --git a/public/textures/chipped/bricked_mangrove_planks.png b/public/textures/chipped/bricked_mangrove_planks.png new file mode 100644 index 00000000..f1081695 Binary files /dev/null and b/public/textures/chipped/bricked_mangrove_planks.png differ diff --git a/public/textures/chipped/bricks_bricks.png b/public/textures/chipped/bricks_bricks.png new file mode 100644 index 00000000..53a3e860 Binary files /dev/null and b/public/textures/chipped/bricks_bricks.png differ diff --git a/public/textures/chipped/bricks_mini_tiles.png b/public/textures/chipped/bricks_mini_tiles.png new file mode 100644 index 00000000..15b0fbac Binary files /dev/null and b/public/textures/chipped/bricks_mini_tiles.png differ diff --git a/public/textures/chipped/bricks_pillar.png b/public/textures/chipped/bricks_pillar.png new file mode 100644 index 00000000..7493d123 Binary files /dev/null and b/public/textures/chipped/bricks_pillar.png differ diff --git a/public/textures/chipped/bricks_pillar_top.png b/public/textures/chipped/bricks_pillar_top.png new file mode 100644 index 00000000..f235e0a9 Binary files /dev/null and b/public/textures/chipped/bricks_pillar_top.png differ diff --git a/public/textures/chipped/bricks_scales.png b/public/textures/chipped/bricks_scales.png new file mode 100644 index 00000000..18d198f1 Binary files /dev/null and b/public/textures/chipped/bricks_scales.png differ diff --git a/public/textures/chipped/bricky_acacia_planks.png b/public/textures/chipped/bricky_acacia_planks.png new file mode 100644 index 00000000..4fee3d39 Binary files /dev/null and b/public/textures/chipped/bricky_acacia_planks.png differ diff --git a/public/textures/chipped/bricky_bamboo_planks.png b/public/textures/chipped/bricky_bamboo_planks.png new file mode 100644 index 00000000..01ef6ed8 Binary files /dev/null and b/public/textures/chipped/bricky_bamboo_planks.png differ diff --git a/public/textures/chipped/bricky_birch_planks.png b/public/textures/chipped/bricky_birch_planks.png new file mode 100644 index 00000000..821e5cd7 Binary files /dev/null and b/public/textures/chipped/bricky_birch_planks.png differ diff --git a/public/textures/chipped/bricky_cherry_planks.png b/public/textures/chipped/bricky_cherry_planks.png new file mode 100644 index 00000000..578626ae Binary files /dev/null and b/public/textures/chipped/bricky_cherry_planks.png differ diff --git a/public/textures/chipped/bricky_crimson_planks.png b/public/textures/chipped/bricky_crimson_planks.png new file mode 100644 index 00000000..cd864bb2 Binary files /dev/null and b/public/textures/chipped/bricky_crimson_planks.png differ diff --git a/public/textures/chipped/bricky_dark_oak_planks.png b/public/textures/chipped/bricky_dark_oak_planks.png new file mode 100644 index 00000000..6d4e4d73 Binary files /dev/null and b/public/textures/chipped/bricky_dark_oak_planks.png differ diff --git a/public/textures/chipped/bricky_jungle_planks.png b/public/textures/chipped/bricky_jungle_planks.png new file mode 100644 index 00000000..40582178 Binary files /dev/null and b/public/textures/chipped/bricky_jungle_planks.png differ diff --git a/public/textures/chipped/bricky_mangrove_planks.png b/public/textures/chipped/bricky_mangrove_planks.png new file mode 100644 index 00000000..a22fd87c Binary files /dev/null and b/public/textures/chipped/bricky_mangrove_planks.png differ diff --git a/public/textures/chipped/bricky_oak_planks.png b/public/textures/chipped/bricky_oak_planks.png new file mode 100644 index 00000000..4c69a4ba Binary files /dev/null and b/public/textures/chipped/bricky_oak_planks.png differ diff --git a/public/textures/chipped/bricky_spruce_planks.png b/public/textures/chipped/bricky_spruce_planks.png new file mode 100644 index 00000000..f3a4c94d Binary files /dev/null and b/public/textures/chipped/bricky_spruce_planks.png differ diff --git a/public/textures/chipped/bricky_warped_planks.png b/public/textures/chipped/bricky_warped_planks.png new file mode 100644 index 00000000..fd053c88 Binary files /dev/null and b/public/textures/chipped/bricky_warped_planks.png differ diff --git a/public/textures/chipped/bright_melon.png b/public/textures/chipped/bright_melon.png new file mode 100644 index 00000000..c5119849 Binary files /dev/null and b/public/textures/chipped/bright_melon.png differ diff --git a/public/textures/chipped/broken_cobweb.png b/public/textures/chipped/broken_cobweb.png new file mode 100644 index 00000000..0e637433 Binary files /dev/null and b/public/textures/chipped/broken_cobweb.png differ diff --git a/public/textures/chipped/broken_glowstone.png b/public/textures/chipped/broken_glowstone.png new file mode 100644 index 00000000..ab7afdf4 Binary files /dev/null and b/public/textures/chipped/broken_glowstone.png differ diff --git a/public/textures/chipped/broken_lily_pad.png b/public/textures/chipped/broken_lily_pad.png new file mode 100644 index 00000000..83b26dc7 Binary files /dev/null and b/public/textures/chipped/broken_lily_pad.png differ diff --git a/public/textures/chipped/broken_mushroom_stem.png b/public/textures/chipped/broken_mushroom_stem.png new file mode 100644 index 00000000..7e38eb6e Binary files /dev/null and b/public/textures/chipped/broken_mushroom_stem.png differ diff --git a/public/textures/chipped/broken_sea_lantern.png b/public/textures/chipped/broken_sea_lantern.png new file mode 100644 index 00000000..bd282c10 Binary files /dev/null and b/public/textures/chipped/broken_sea_lantern.png differ diff --git a/public/textures/chipped/broken_shroomlight.png b/public/textures/chipped/broken_shroomlight.png new file mode 100644 index 00000000..426a3d13 Binary files /dev/null and b/public/textures/chipped/broken_shroomlight.png differ diff --git a/public/textures/chipped/brown_concrete_bricks.png b/public/textures/chipped/brown_concrete_bricks.png new file mode 100644 index 00000000..95edbaa8 Binary files /dev/null and b/public/textures/chipped/brown_concrete_bricks.png differ diff --git a/public/textures/chipped/brown_concrete_panel.png b/public/textures/chipped/brown_concrete_panel.png new file mode 100644 index 00000000..12964373 Binary files /dev/null and b/public/textures/chipped/brown_concrete_panel.png differ diff --git a/public/textures/chipped/brown_concrete_pillar.png b/public/textures/chipped/brown_concrete_pillar.png new file mode 100644 index 00000000..dc49002f Binary files /dev/null and b/public/textures/chipped/brown_concrete_pillar.png differ diff --git a/public/textures/chipped/brown_concrete_tiles.png b/public/textures/chipped/brown_concrete_tiles.png new file mode 100644 index 00000000..af1606b6 Binary files /dev/null and b/public/textures/chipped/brown_concrete_tiles.png differ diff --git a/public/textures/chipped/brown_dried_kelp_block.png b/public/textures/chipped/brown_dried_kelp_block.png new file mode 100644 index 00000000..cf20e7a5 Binary files /dev/null and b/public/textures/chipped/brown_dried_kelp_block.png differ diff --git a/public/textures/chipped/brown_glazed_terracotta_pillar_sides.png b/public/textures/chipped/brown_glazed_terracotta_pillar_sides.png new file mode 100644 index 00000000..06b3168e Binary files /dev/null and b/public/textures/chipped/brown_glazed_terracotta_pillar_sides.png differ diff --git a/public/textures/chipped/brown_glazed_terracotta_pillar_top.png b/public/textures/chipped/brown_glazed_terracotta_pillar_top.png new file mode 100644 index 00000000..c43cc74e Binary files /dev/null and b/public/textures/chipped/brown_glazed_terracotta_pillar_top.png differ diff --git a/public/textures/chipped/brown_glazed_terracotta_smooth_tiles.png b/public/textures/chipped/brown_glazed_terracotta_smooth_tiles.png new file mode 100644 index 00000000..4e1493f2 Binary files /dev/null and b/public/textures/chipped/brown_glazed_terracotta_smooth_tiles.png differ diff --git a/public/textures/chipped/brown_glazed_terracotta_tiles.png b/public/textures/chipped/brown_glazed_terracotta_tiles.png new file mode 100644 index 00000000..9015b997 Binary files /dev/null and b/public/textures/chipped/brown_glazed_terracotta_tiles.png differ diff --git a/public/textures/chipped/brown_mushroom_bulb.png b/public/textures/chipped/brown_mushroom_bulb.png new file mode 100644 index 00000000..ee9b49b3 Binary files /dev/null and b/public/textures/chipped/brown_mushroom_bulb.png differ diff --git a/public/textures/chipped/brown_mushroom_bushel.png b/public/textures/chipped/brown_mushroom_bushel.png new file mode 100644 index 00000000..c4a9a662 Binary files /dev/null and b/public/textures/chipped/brown_mushroom_bushel.png differ diff --git a/public/textures/chipped/brown_mushroom_cluster.png b/public/textures/chipped/brown_mushroom_cluster.png new file mode 100644 index 00000000..864b2aa3 Binary files /dev/null and b/public/textures/chipped/brown_mushroom_cluster.png differ diff --git a/public/textures/chipped/brown_mushroom_trio.png b/public/textures/chipped/brown_mushroom_trio.png new file mode 100644 index 00000000..1c096626 Binary files /dev/null and b/public/textures/chipped/brown_mushroom_trio.png differ diff --git a/public/textures/chipped/brown_terracotta_bricks.png b/public/textures/chipped/brown_terracotta_bricks.png new file mode 100644 index 00000000..d9fb6342 Binary files /dev/null and b/public/textures/chipped/brown_terracotta_bricks.png differ diff --git a/public/textures/chipped/brown_terracotta_column.png b/public/textures/chipped/brown_terracotta_column.png new file mode 100644 index 00000000..51a8dc71 Binary files /dev/null and b/public/textures/chipped/brown_terracotta_column.png differ diff --git a/public/textures/chipped/brown_terracotta_pillar.png b/public/textures/chipped/brown_terracotta_pillar.png new file mode 100644 index 00000000..4259bba7 Binary files /dev/null and b/public/textures/chipped/brown_terracotta_pillar.png differ diff --git a/public/textures/chipped/brown_terracotta_tile.png b/public/textures/chipped/brown_terracotta_tile.png new file mode 100644 index 00000000..b4c04196 Binary files /dev/null and b/public/textures/chipped/brown_terracotta_tile.png differ diff --git a/public/textures/chipped/brown_terracotta_tiles.png b/public/textures/chipped/brown_terracotta_tiles.png new file mode 100644 index 00000000..e3a56c0c Binary files /dev/null and b/public/textures/chipped/brown_terracotta_tiles.png differ diff --git a/public/textures/chipped/bubbling_nether_wart_block.png b/public/textures/chipped/bubbling_nether_wart_block.png new file mode 100644 index 00000000..2d727212 Binary files /dev/null and b/public/textures/chipped/bubbling_nether_wart_block.png differ diff --git a/public/textures/chipped/bubbling_warped_wart_block.png b/public/textures/chipped/bubbling_warped_wart_block.png new file mode 100644 index 00000000..4eaa031a Binary files /dev/null and b/public/textures/chipped/bubbling_warped_wart_block.png differ diff --git a/public/textures/chipped/budding_crimson_roots.png b/public/textures/chipped/budding_crimson_roots.png new file mode 100644 index 00000000..a98a720f Binary files /dev/null and b/public/textures/chipped/budding_crimson_roots.png differ diff --git a/public/textures/chipped/budding_crimson_roots_bulb.png b/public/textures/chipped/budding_crimson_roots_bulb.png new file mode 100644 index 00000000..c21cd309 Binary files /dev/null and b/public/textures/chipped/budding_crimson_roots_bulb.png differ diff --git a/public/textures/chipped/bulbed_brown_mushroom.png b/public/textures/chipped/bulbed_brown_mushroom.png new file mode 100644 index 00000000..cedb3ee9 Binary files /dev/null and b/public/textures/chipped/bulbed_brown_mushroom.png differ diff --git a/public/textures/chipped/bulbed_crimson_fungus.png b/public/textures/chipped/bulbed_crimson_fungus.png new file mode 100644 index 00000000..10650f57 Binary files /dev/null and b/public/textures/chipped/bulbed_crimson_fungus.png differ diff --git a/public/textures/chipped/bulbed_glowstone.png b/public/textures/chipped/bulbed_glowstone.png new file mode 100644 index 00000000..438e8bc8 Binary files /dev/null and b/public/textures/chipped/bulbed_glowstone.png differ diff --git a/public/textures/chipped/bulbed_red_mushroom.png b/public/textures/chipped/bulbed_red_mushroom.png new file mode 100644 index 00000000..b8805528 Binary files /dev/null and b/public/textures/chipped/bulbed_red_mushroom.png differ diff --git a/public/textures/chipped/bulbed_sea_lantern.png b/public/textures/chipped/bulbed_sea_lantern.png new file mode 100644 index 00000000..933c162c Binary files /dev/null and b/public/textures/chipped/bulbed_sea_lantern.png differ diff --git a/public/textures/chipped/bulbed_warped_fungus.png b/public/textures/chipped/bulbed_warped_fungus.png new file mode 100644 index 00000000..5687036e Binary files /dev/null and b/public/textures/chipped/bulbed_warped_fungus.png differ diff --git a/public/textures/chipped/bulby_sponge.png b/public/textures/chipped/bulby_sponge.png new file mode 100644 index 00000000..08598376 Binary files /dev/null and b/public/textures/chipped/bulby_sponge.png differ diff --git a/public/textures/chipped/bundled_acacia_log.png b/public/textures/chipped/bundled_acacia_log.png new file mode 100644 index 00000000..1df19267 Binary files /dev/null and b/public/textures/chipped/bundled_acacia_log.png differ diff --git a/public/textures/chipped/bundled_birch_log.png b/public/textures/chipped/bundled_birch_log.png new file mode 100644 index 00000000..933ca256 Binary files /dev/null and b/public/textures/chipped/bundled_birch_log.png differ diff --git a/public/textures/chipped/bundled_black_carpet.png b/public/textures/chipped/bundled_black_carpet.png new file mode 100644 index 00000000..eb89061c Binary files /dev/null and b/public/textures/chipped/bundled_black_carpet.png differ diff --git a/public/textures/chipped/bundled_black_wool.png b/public/textures/chipped/bundled_black_wool.png new file mode 100644 index 00000000..571d9fb3 Binary files /dev/null and b/public/textures/chipped/bundled_black_wool.png differ diff --git a/public/textures/chipped/bundled_blue_carpet.png b/public/textures/chipped/bundled_blue_carpet.png new file mode 100644 index 00000000..0f0149b1 Binary files /dev/null and b/public/textures/chipped/bundled_blue_carpet.png differ diff --git a/public/textures/chipped/bundled_blue_wool.png b/public/textures/chipped/bundled_blue_wool.png new file mode 100644 index 00000000..dd868b51 Binary files /dev/null and b/public/textures/chipped/bundled_blue_wool.png differ diff --git a/public/textures/chipped/bundled_brown_carpet.png b/public/textures/chipped/bundled_brown_carpet.png new file mode 100644 index 00000000..6e2f6351 Binary files /dev/null and b/public/textures/chipped/bundled_brown_carpet.png differ diff --git a/public/textures/chipped/bundled_brown_wool.png b/public/textures/chipped/bundled_brown_wool.png new file mode 100644 index 00000000..d9339aef Binary files /dev/null and b/public/textures/chipped/bundled_brown_wool.png differ diff --git a/public/textures/chipped/bundled_cherry_log.png b/public/textures/chipped/bundled_cherry_log.png new file mode 100644 index 00000000..726ee128 Binary files /dev/null and b/public/textures/chipped/bundled_cherry_log.png differ diff --git a/public/textures/chipped/bundled_crimson_stem.png b/public/textures/chipped/bundled_crimson_stem.png new file mode 100644 index 00000000..82b7c9cf Binary files /dev/null and b/public/textures/chipped/bundled_crimson_stem.png differ diff --git a/public/textures/chipped/bundled_cyan_carpet.png b/public/textures/chipped/bundled_cyan_carpet.png new file mode 100644 index 00000000..d1229fef Binary files /dev/null and b/public/textures/chipped/bundled_cyan_carpet.png differ diff --git a/public/textures/chipped/bundled_cyan_wool.png b/public/textures/chipped/bundled_cyan_wool.png new file mode 100644 index 00000000..389a261e Binary files /dev/null and b/public/textures/chipped/bundled_cyan_wool.png differ diff --git a/public/textures/chipped/bundled_dark_oak_log.png b/public/textures/chipped/bundled_dark_oak_log.png new file mode 100644 index 00000000..58a76737 Binary files /dev/null and b/public/textures/chipped/bundled_dark_oak_log.png differ diff --git a/public/textures/chipped/bundled_gray_carpet.png b/public/textures/chipped/bundled_gray_carpet.png new file mode 100644 index 00000000..aed301cd Binary files /dev/null and b/public/textures/chipped/bundled_gray_carpet.png differ diff --git a/public/textures/chipped/bundled_gray_wool.png b/public/textures/chipped/bundled_gray_wool.png new file mode 100644 index 00000000..4b6b186a Binary files /dev/null and b/public/textures/chipped/bundled_gray_wool.png differ diff --git a/public/textures/chipped/bundled_green_carpet.png b/public/textures/chipped/bundled_green_carpet.png new file mode 100644 index 00000000..c95651e6 Binary files /dev/null and b/public/textures/chipped/bundled_green_carpet.png differ diff --git a/public/textures/chipped/bundled_green_wool.png b/public/textures/chipped/bundled_green_wool.png new file mode 100644 index 00000000..44f5ff69 Binary files /dev/null and b/public/textures/chipped/bundled_green_wool.png differ diff --git a/public/textures/chipped/bundled_hay_block.png b/public/textures/chipped/bundled_hay_block.png new file mode 100644 index 00000000..db93151e Binary files /dev/null and b/public/textures/chipped/bundled_hay_block.png differ diff --git a/public/textures/chipped/bundled_jungle_log.png b/public/textures/chipped/bundled_jungle_log.png new file mode 100644 index 00000000..71269d14 Binary files /dev/null and b/public/textures/chipped/bundled_jungle_log.png differ diff --git a/public/textures/chipped/bundled_light_blue_carpet.png b/public/textures/chipped/bundled_light_blue_carpet.png new file mode 100644 index 00000000..e15e559c Binary files /dev/null and b/public/textures/chipped/bundled_light_blue_carpet.png differ diff --git a/public/textures/chipped/bundled_light_blue_wool.png b/public/textures/chipped/bundled_light_blue_wool.png new file mode 100644 index 00000000..bd31ef8e Binary files /dev/null and b/public/textures/chipped/bundled_light_blue_wool.png differ diff --git a/public/textures/chipped/bundled_light_gray_carpet.png b/public/textures/chipped/bundled_light_gray_carpet.png new file mode 100644 index 00000000..0e62ba9a Binary files /dev/null and b/public/textures/chipped/bundled_light_gray_carpet.png differ diff --git a/public/textures/chipped/bundled_light_gray_wool.png b/public/textures/chipped/bundled_light_gray_wool.png new file mode 100644 index 00000000..1d900ef8 Binary files /dev/null and b/public/textures/chipped/bundled_light_gray_wool.png differ diff --git a/public/textures/chipped/bundled_lime_carpet.png b/public/textures/chipped/bundled_lime_carpet.png new file mode 100644 index 00000000..9f6ebbab Binary files /dev/null and b/public/textures/chipped/bundled_lime_carpet.png differ diff --git a/public/textures/chipped/bundled_lime_wool.png b/public/textures/chipped/bundled_lime_wool.png new file mode 100644 index 00000000..c928624b Binary files /dev/null and b/public/textures/chipped/bundled_lime_wool.png differ diff --git a/public/textures/chipped/bundled_magenta_carpet.png b/public/textures/chipped/bundled_magenta_carpet.png new file mode 100644 index 00000000..1d3daaac Binary files /dev/null and b/public/textures/chipped/bundled_magenta_carpet.png differ diff --git a/public/textures/chipped/bundled_magenta_wool.png b/public/textures/chipped/bundled_magenta_wool.png new file mode 100644 index 00000000..74bbe76a Binary files /dev/null and b/public/textures/chipped/bundled_magenta_wool.png differ diff --git a/public/textures/chipped/bundled_mangrove_log.png b/public/textures/chipped/bundled_mangrove_log.png new file mode 100644 index 00000000..6f1cfaec Binary files /dev/null and b/public/textures/chipped/bundled_mangrove_log.png differ diff --git a/public/textures/chipped/bundled_oak_log.png b/public/textures/chipped/bundled_oak_log.png new file mode 100644 index 00000000..eafe2d5a Binary files /dev/null and b/public/textures/chipped/bundled_oak_log.png differ diff --git a/public/textures/chipped/bundled_orange_carpet.png b/public/textures/chipped/bundled_orange_carpet.png new file mode 100644 index 00000000..38283537 Binary files /dev/null and b/public/textures/chipped/bundled_orange_carpet.png differ diff --git a/public/textures/chipped/bundled_orange_wool.png b/public/textures/chipped/bundled_orange_wool.png new file mode 100644 index 00000000..965066dc Binary files /dev/null and b/public/textures/chipped/bundled_orange_wool.png differ diff --git a/public/textures/chipped/bundled_pink_carpet.png b/public/textures/chipped/bundled_pink_carpet.png new file mode 100644 index 00000000..763e2d76 Binary files /dev/null and b/public/textures/chipped/bundled_pink_carpet.png differ diff --git a/public/textures/chipped/bundled_pink_wool.png b/public/textures/chipped/bundled_pink_wool.png new file mode 100644 index 00000000..6fc3f96f Binary files /dev/null and b/public/textures/chipped/bundled_pink_wool.png differ diff --git a/public/textures/chipped/bundled_purple_carpet.png b/public/textures/chipped/bundled_purple_carpet.png new file mode 100644 index 00000000..810fb9a6 Binary files /dev/null and b/public/textures/chipped/bundled_purple_carpet.png differ diff --git a/public/textures/chipped/bundled_purple_wool.png b/public/textures/chipped/bundled_purple_wool.png new file mode 100644 index 00000000..ea9f85fe Binary files /dev/null and b/public/textures/chipped/bundled_purple_wool.png differ diff --git a/public/textures/chipped/bundled_red_carpet.png b/public/textures/chipped/bundled_red_carpet.png new file mode 100644 index 00000000..ed311aa7 Binary files /dev/null and b/public/textures/chipped/bundled_red_carpet.png differ diff --git a/public/textures/chipped/bundled_red_wool.png b/public/textures/chipped/bundled_red_wool.png new file mode 100644 index 00000000..cbb4be9d Binary files /dev/null and b/public/textures/chipped/bundled_red_wool.png differ diff --git a/public/textures/chipped/bundled_spruce_log.png b/public/textures/chipped/bundled_spruce_log.png new file mode 100644 index 00000000..3d4bd728 Binary files /dev/null and b/public/textures/chipped/bundled_spruce_log.png differ diff --git a/public/textures/chipped/bundled_warped_stem.png b/public/textures/chipped/bundled_warped_stem.png new file mode 100644 index 00000000..c5b7f6d0 Binary files /dev/null and b/public/textures/chipped/bundled_warped_stem.png differ diff --git a/public/textures/chipped/bundled_white_carpet.png b/public/textures/chipped/bundled_white_carpet.png new file mode 100644 index 00000000..f05b4471 Binary files /dev/null and b/public/textures/chipped/bundled_white_carpet.png differ diff --git a/public/textures/chipped/bundled_white_wool.png b/public/textures/chipped/bundled_white_wool.png new file mode 100644 index 00000000..852d965c Binary files /dev/null and b/public/textures/chipped/bundled_white_wool.png differ diff --git a/public/textures/chipped/bundled_yellow_carpet.png b/public/textures/chipped/bundled_yellow_carpet.png new file mode 100644 index 00000000..3c02d093 Binary files /dev/null and b/public/textures/chipped/bundled_yellow_carpet.png differ diff --git a/public/textures/chipped/bundled_yellow_wool.png b/public/textures/chipped/bundled_yellow_wool.png new file mode 100644 index 00000000..b1e7db03 Binary files /dev/null and b/public/textures/chipped/bundled_yellow_wool.png differ diff --git a/public/textures/chipped/burning_coal_lantern.png b/public/textures/chipped/burning_coal_lantern.png new file mode 100644 index 00000000..ed14e927 Binary files /dev/null and b/public/textures/chipped/burning_coal_lantern.png differ diff --git a/public/textures/chipped/bushy_nether_sprouts.png b/public/textures/chipped/bushy_nether_sprouts.png new file mode 100644 index 00000000..6d5096b3 Binary files /dev/null and b/public/textures/chipped/bushy_nether_sprouts.png differ diff --git a/public/textures/chipped/button_brown_mushroom.png b/public/textures/chipped/button_brown_mushroom.png new file mode 100644 index 00000000..05f05a39 Binary files /dev/null and b/public/textures/chipped/button_brown_mushroom.png differ diff --git a/public/textures/chipped/button_crimson_fungus.png b/public/textures/chipped/button_crimson_fungus.png new file mode 100644 index 00000000..a5f7611e Binary files /dev/null and b/public/textures/chipped/button_crimson_fungus.png differ diff --git a/public/textures/chipped/button_mud.png b/public/textures/chipped/button_mud.png new file mode 100644 index 00000000..10db0923 Binary files /dev/null and b/public/textures/chipped/button_mud.png differ diff --git a/public/textures/chipped/button_mud_bricks.png b/public/textures/chipped/button_mud_bricks.png new file mode 100644 index 00000000..8eaf84de Binary files /dev/null and b/public/textures/chipped/button_mud_bricks.png differ diff --git a/public/textures/chipped/button_packed_mud.png b/public/textures/chipped/button_packed_mud.png new file mode 100644 index 00000000..a1f48fd7 Binary files /dev/null and b/public/textures/chipped/button_packed_mud.png differ diff --git a/public/textures/chipped/button_red_mushroom.png b/public/textures/chipped/button_red_mushroom.png new file mode 100644 index 00000000..04c102ac Binary files /dev/null and b/public/textures/chipped/button_red_mushroom.png differ diff --git a/public/textures/chipped/button_warped_fungus.png b/public/textures/chipped/button_warped_fungus.png new file mode 100644 index 00000000..35169d7c Binary files /dev/null and b/public/textures/chipped/button_warped_fungus.png differ diff --git a/public/textures/chipped/calcite_bricks.png b/public/textures/chipped/calcite_bricks.png new file mode 100644 index 00000000..04179497 Binary files /dev/null and b/public/textures/chipped/calcite_bricks.png differ diff --git a/public/textures/chipped/calcite_mini_tiles.png b/public/textures/chipped/calcite_mini_tiles.png new file mode 100644 index 00000000..f46f1187 Binary files /dev/null and b/public/textures/chipped/calcite_mini_tiles.png differ diff --git a/public/textures/chipped/calcite_pillar.png b/public/textures/chipped/calcite_pillar.png new file mode 100644 index 00000000..0ac4abf6 Binary files /dev/null and b/public/textures/chipped/calcite_pillar.png differ diff --git a/public/textures/chipped/calcite_pillar_top.png b/public/textures/chipped/calcite_pillar_top.png new file mode 100644 index 00000000..d15525be Binary files /dev/null and b/public/textures/chipped/calcite_pillar_top.png differ diff --git a/public/textures/chipped/calcite_pointed_dripstone.png b/public/textures/chipped/calcite_pointed_dripstone.png new file mode 100644 index 00000000..f16bc9b9 Binary files /dev/null and b/public/textures/chipped/calcite_pointed_dripstone.png differ diff --git a/public/textures/chipped/calcite_scales.png b/public/textures/chipped/calcite_scales.png new file mode 100644 index 00000000..54d574ce Binary files /dev/null and b/public/textures/chipped/calcite_scales.png differ diff --git a/public/textures/chipped/carpenters_table.png b/public/textures/chipped/carpenters_table.png new file mode 100644 index 00000000..ef89fa63 Binary files /dev/null and b/public/textures/chipped/carpenters_table.png differ diff --git a/public/textures/chipped/carved_amethyst_block.png b/public/textures/chipped/carved_amethyst_block.png new file mode 100644 index 00000000..2a5629f8 Binary files /dev/null and b/public/textures/chipped/carved_amethyst_block.png differ diff --git a/public/textures/chipped/carved_ancient_debris.png b/public/textures/chipped/carved_ancient_debris.png new file mode 100644 index 00000000..71fb3178 Binary files /dev/null and b/public/textures/chipped/carved_ancient_debris.png differ diff --git a/public/textures/chipped/carved_andesite.png b/public/textures/chipped/carved_andesite.png new file mode 100644 index 00000000..22792741 Binary files /dev/null and b/public/textures/chipped/carved_andesite.png differ diff --git a/public/textures/chipped/carved_basalt.png b/public/textures/chipped/carved_basalt.png new file mode 100644 index 00000000..b6067ea4 Binary files /dev/null and b/public/textures/chipped/carved_basalt.png differ diff --git a/public/textures/chipped/carved_blackstone.png b/public/textures/chipped/carved_blackstone.png new file mode 100644 index 00000000..d7f7813f Binary files /dev/null and b/public/textures/chipped/carved_blackstone.png differ diff --git a/public/textures/chipped/carved_blue_ice.png b/public/textures/chipped/carved_blue_ice.png new file mode 100644 index 00000000..c52158ab Binary files /dev/null and b/public/textures/chipped/carved_blue_ice.png differ diff --git a/public/textures/chipped/carved_borderless_bricks.png b/public/textures/chipped/carved_borderless_bricks.png new file mode 100644 index 00000000..92bee686 Binary files /dev/null and b/public/textures/chipped/carved_borderless_bricks.png differ diff --git a/public/textures/chipped/carved_bricks.png b/public/textures/chipped/carved_bricks.png new file mode 100644 index 00000000..0347e8ee Binary files /dev/null and b/public/textures/chipped/carved_bricks.png differ diff --git a/public/textures/chipped/carved_calcite.png b/public/textures/chipped/carved_calcite.png new file mode 100644 index 00000000..b4781090 Binary files /dev/null and b/public/textures/chipped/carved_calcite.png differ diff --git a/public/textures/chipped/carved_clay.png b/public/textures/chipped/carved_clay.png new file mode 100644 index 00000000..95645f7e Binary files /dev/null and b/public/textures/chipped/carved_clay.png differ diff --git a/public/textures/chipped/carved_coal_block.png b/public/textures/chipped/carved_coal_block.png new file mode 100644 index 00000000..833797f7 Binary files /dev/null and b/public/textures/chipped/carved_coal_block.png differ diff --git a/public/textures/chipped/carved_cobblestone.png b/public/textures/chipped/carved_cobblestone.png new file mode 100644 index 00000000..b4e82863 Binary files /dev/null and b/public/textures/chipped/carved_cobblestone.png differ diff --git a/public/textures/chipped/carved_crying_obsidian.png b/public/textures/chipped/carved_crying_obsidian.png new file mode 100644 index 00000000..7dcc7d8d Binary files /dev/null and b/public/textures/chipped/carved_crying_obsidian.png differ diff --git a/public/textures/chipped/carved_dark_prismarine.png b/public/textures/chipped/carved_dark_prismarine.png new file mode 100644 index 00000000..a2922f48 Binary files /dev/null and b/public/textures/chipped/carved_dark_prismarine.png differ diff --git a/public/textures/chipped/carved_deepslate.png b/public/textures/chipped/carved_deepslate.png new file mode 100644 index 00000000..987ac3bf Binary files /dev/null and b/public/textures/chipped/carved_deepslate.png differ diff --git a/public/textures/chipped/carved_diorite.png b/public/textures/chipped/carved_diorite.png new file mode 100644 index 00000000..024f8f8e Binary files /dev/null and b/public/textures/chipped/carved_diorite.png differ diff --git a/public/textures/chipped/carved_dirt.png b/public/textures/chipped/carved_dirt.png new file mode 100644 index 00000000..d30220c3 Binary files /dev/null and b/public/textures/chipped/carved_dirt.png differ diff --git a/public/textures/chipped/carved_dripstone_block.png b/public/textures/chipped/carved_dripstone_block.png new file mode 100644 index 00000000..1bf69f4f Binary files /dev/null and b/public/textures/chipped/carved_dripstone_block.png differ diff --git a/public/textures/chipped/carved_end_stone.png b/public/textures/chipped/carved_end_stone.png new file mode 100644 index 00000000..ed311dee Binary files /dev/null and b/public/textures/chipped/carved_end_stone.png differ diff --git a/public/textures/chipped/carved_gilded_blackstone.png b/public/textures/chipped/carved_gilded_blackstone.png new file mode 100644 index 00000000..872efe60 Binary files /dev/null and b/public/textures/chipped/carved_gilded_blackstone.png differ diff --git a/public/textures/chipped/carved_granite.png b/public/textures/chipped/carved_granite.png new file mode 100644 index 00000000..15a7ef45 Binary files /dev/null and b/public/textures/chipped/carved_granite.png differ diff --git a/public/textures/chipped/carved_ice.png b/public/textures/chipped/carved_ice.png new file mode 100644 index 00000000..f45fbc9e Binary files /dev/null and b/public/textures/chipped/carved_ice.png differ diff --git a/public/textures/chipped/carved_lapis_block.png b/public/textures/chipped/carved_lapis_block.png new file mode 100644 index 00000000..446b9538 Binary files /dev/null and b/public/textures/chipped/carved_lapis_block.png differ diff --git a/public/textures/chipped/carved_lodestone.png b/public/textures/chipped/carved_lodestone.png new file mode 100644 index 00000000..51b95693 Binary files /dev/null and b/public/textures/chipped/carved_lodestone.png differ diff --git a/public/textures/chipped/carved_magma_block.png b/public/textures/chipped/carved_magma_block.png new file mode 100644 index 00000000..63ed8d2b Binary files /dev/null and b/public/textures/chipped/carved_magma_block.png differ diff --git a/public/textures/chipped/carved_mangrove_planks.png b/public/textures/chipped/carved_mangrove_planks.png new file mode 100644 index 00000000..05662387 Binary files /dev/null and b/public/textures/chipped/carved_mangrove_planks.png differ diff --git a/public/textures/chipped/carved_mossy_cobblestone.png b/public/textures/chipped/carved_mossy_cobblestone.png new file mode 100644 index 00000000..d333e1be Binary files /dev/null and b/public/textures/chipped/carved_mossy_cobblestone.png differ diff --git a/public/textures/chipped/carved_mossy_stone_bricks.png b/public/textures/chipped/carved_mossy_stone_bricks.png new file mode 100644 index 00000000..ce1b79be Binary files /dev/null and b/public/textures/chipped/carved_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/carved_mud.png b/public/textures/chipped/carved_mud.png new file mode 100644 index 00000000..e9544a05 Binary files /dev/null and b/public/textures/chipped/carved_mud.png differ diff --git a/public/textures/chipped/carved_mud_bricks.png b/public/textures/chipped/carved_mud_bricks.png new file mode 100644 index 00000000..83924c74 Binary files /dev/null and b/public/textures/chipped/carved_mud_bricks.png differ diff --git a/public/textures/chipped/carved_mud_bricks_pillar.png b/public/textures/chipped/carved_mud_bricks_pillar.png new file mode 100644 index 00000000..785d7ae6 Binary files /dev/null and b/public/textures/chipped/carved_mud_bricks_pillar.png differ diff --git a/public/textures/chipped/carved_mud_pillar.png b/public/textures/chipped/carved_mud_pillar.png new file mode 100644 index 00000000..92d42c4f Binary files /dev/null and b/public/textures/chipped/carved_mud_pillar.png differ diff --git a/public/textures/chipped/carved_nether_bricks.png b/public/textures/chipped/carved_nether_bricks.png new file mode 100644 index 00000000..6f58ee36 Binary files /dev/null and b/public/textures/chipped/carved_nether_bricks.png differ diff --git a/public/textures/chipped/carved_netherrack.png b/public/textures/chipped/carved_netherrack.png new file mode 100644 index 00000000..cb66c1b0 Binary files /dev/null and b/public/textures/chipped/carved_netherrack.png differ diff --git a/public/textures/chipped/carved_obsidian.png b/public/textures/chipped/carved_obsidian.png new file mode 100644 index 00000000..cbdf84d9 Binary files /dev/null and b/public/textures/chipped/carved_obsidian.png differ diff --git a/public/textures/chipped/carved_packed_ice.png b/public/textures/chipped/carved_packed_ice.png new file mode 100644 index 00000000..30714941 Binary files /dev/null and b/public/textures/chipped/carved_packed_ice.png differ diff --git a/public/textures/chipped/carved_packed_mud.png b/public/textures/chipped/carved_packed_mud.png new file mode 100644 index 00000000..baa8aaf6 Binary files /dev/null and b/public/textures/chipped/carved_packed_mud.png differ diff --git a/public/textures/chipped/carved_packed_mud_pillar.png b/public/textures/chipped/carved_packed_mud_pillar.png new file mode 100644 index 00000000..73251541 Binary files /dev/null and b/public/textures/chipped/carved_packed_mud_pillar.png differ diff --git a/public/textures/chipped/carved_prismarine.png b/public/textures/chipped/carved_prismarine.png new file mode 100644 index 00000000..2088c878 Binary files /dev/null and b/public/textures/chipped/carved_prismarine.png differ diff --git a/public/textures/chipped/carved_purpur_block.png b/public/textures/chipped/carved_purpur_block.png new file mode 100644 index 00000000..f0d00565 Binary files /dev/null and b/public/textures/chipped/carved_purpur_block.png differ diff --git a/public/textures/chipped/carved_raw_copper_block.png b/public/textures/chipped/carved_raw_copper_block.png new file mode 100644 index 00000000..65834208 Binary files /dev/null and b/public/textures/chipped/carved_raw_copper_block.png differ diff --git a/public/textures/chipped/carved_raw_gold_block.png b/public/textures/chipped/carved_raw_gold_block.png new file mode 100644 index 00000000..56894933 Binary files /dev/null and b/public/textures/chipped/carved_raw_gold_block.png differ diff --git a/public/textures/chipped/carved_raw_iron_block.png b/public/textures/chipped/carved_raw_iron_block.png new file mode 100644 index 00000000..c2abff67 Binary files /dev/null and b/public/textures/chipped/carved_raw_iron_block.png differ diff --git a/public/textures/chipped/carved_red_nether_bricks.png b/public/textures/chipped/carved_red_nether_bricks.png new file mode 100644 index 00000000..855d72a6 Binary files /dev/null and b/public/textures/chipped/carved_red_nether_bricks.png differ diff --git a/public/textures/chipped/carved_red_sandstone.png b/public/textures/chipped/carved_red_sandstone.png new file mode 100644 index 00000000..6747c9c6 Binary files /dev/null and b/public/textures/chipped/carved_red_sandstone.png differ diff --git a/public/textures/chipped/carved_redstone_block.png b/public/textures/chipped/carved_redstone_block.png new file mode 100644 index 00000000..29e3bb64 Binary files /dev/null and b/public/textures/chipped/carved_redstone_block.png differ diff --git a/public/textures/chipped/carved_sandstone.png b/public/textures/chipped/carved_sandstone.png new file mode 100644 index 00000000..962cf0b1 Binary files /dev/null and b/public/textures/chipped/carved_sandstone.png differ diff --git a/public/textures/chipped/carved_smooth_stone.png b/public/textures/chipped/carved_smooth_stone.png new file mode 100644 index 00000000..6449a51c Binary files /dev/null and b/public/textures/chipped/carved_smooth_stone.png differ diff --git a/public/textures/chipped/carved_snow_block.png b/public/textures/chipped/carved_snow_block.png new file mode 100644 index 00000000..1c89f3b0 Binary files /dev/null and b/public/textures/chipped/carved_snow_block.png differ diff --git a/public/textures/chipped/carved_stone.png b/public/textures/chipped/carved_stone.png new file mode 100644 index 00000000..6433cc98 Binary files /dev/null and b/public/textures/chipped/carved_stone.png differ diff --git a/public/textures/chipped/carved_stripped_acacia_log.png b/public/textures/chipped/carved_stripped_acacia_log.png new file mode 100644 index 00000000..de85e566 Binary files /dev/null and b/public/textures/chipped/carved_stripped_acacia_log.png differ diff --git a/public/textures/chipped/carved_stripped_birch_log.png b/public/textures/chipped/carved_stripped_birch_log.png new file mode 100644 index 00000000..f26bc2ba Binary files /dev/null and b/public/textures/chipped/carved_stripped_birch_log.png differ diff --git a/public/textures/chipped/carved_stripped_cherry_log.png b/public/textures/chipped/carved_stripped_cherry_log.png new file mode 100644 index 00000000..aa78b715 Binary files /dev/null and b/public/textures/chipped/carved_stripped_cherry_log.png differ diff --git a/public/textures/chipped/carved_stripped_crimson_stem.png b/public/textures/chipped/carved_stripped_crimson_stem.png new file mode 100644 index 00000000..bd622e78 Binary files /dev/null and b/public/textures/chipped/carved_stripped_crimson_stem.png differ diff --git a/public/textures/chipped/carved_stripped_dark_oak_log.png b/public/textures/chipped/carved_stripped_dark_oak_log.png new file mode 100644 index 00000000..e06efcb7 Binary files /dev/null and b/public/textures/chipped/carved_stripped_dark_oak_log.png differ diff --git a/public/textures/chipped/carved_stripped_jungle_log.png b/public/textures/chipped/carved_stripped_jungle_log.png new file mode 100644 index 00000000..f9a23c8f Binary files /dev/null and b/public/textures/chipped/carved_stripped_jungle_log.png differ diff --git a/public/textures/chipped/carved_stripped_mangrove_log.png b/public/textures/chipped/carved_stripped_mangrove_log.png new file mode 100644 index 00000000..59433bf0 Binary files /dev/null and b/public/textures/chipped/carved_stripped_mangrove_log.png differ diff --git a/public/textures/chipped/carved_stripped_oak_log.png b/public/textures/chipped/carved_stripped_oak_log.png new file mode 100644 index 00000000..a52535c4 Binary files /dev/null and b/public/textures/chipped/carved_stripped_oak_log.png differ diff --git a/public/textures/chipped/carved_stripped_spruce_log.png b/public/textures/chipped/carved_stripped_spruce_log.png new file mode 100644 index 00000000..c134eb74 Binary files /dev/null and b/public/textures/chipped/carved_stripped_spruce_log.png differ diff --git a/public/textures/chipped/carved_stripped_warped_stem.png b/public/textures/chipped/carved_stripped_warped_stem.png new file mode 100644 index 00000000..08718f46 Binary files /dev/null and b/public/textures/chipped/carved_stripped_warped_stem.png differ diff --git a/public/textures/chipped/carved_tuff.png b/public/textures/chipped/carved_tuff.png new file mode 100644 index 00000000..0cf03217 Binary files /dev/null and b/public/textures/chipped/carved_tuff.png differ diff --git a/public/textures/chipped/center_cut_acacia_log.png b/public/textures/chipped/center_cut_acacia_log.png new file mode 100644 index 00000000..f75721d6 Binary files /dev/null and b/public/textures/chipped/center_cut_acacia_log.png differ diff --git a/public/textures/chipped/center_cut_birch_log.png b/public/textures/chipped/center_cut_birch_log.png new file mode 100644 index 00000000..e07b9ab5 Binary files /dev/null and b/public/textures/chipped/center_cut_birch_log.png differ diff --git a/public/textures/chipped/center_cut_cherry_log.png b/public/textures/chipped/center_cut_cherry_log.png new file mode 100644 index 00000000..4419501e Binary files /dev/null and b/public/textures/chipped/center_cut_cherry_log.png differ diff --git a/public/textures/chipped/center_cut_crimson_stem.png b/public/textures/chipped/center_cut_crimson_stem.png new file mode 100644 index 00000000..a1d400b8 Binary files /dev/null and b/public/textures/chipped/center_cut_crimson_stem.png differ diff --git a/public/textures/chipped/center_cut_dark_oak_log.png b/public/textures/chipped/center_cut_dark_oak_log.png new file mode 100644 index 00000000..2746dd84 Binary files /dev/null and b/public/textures/chipped/center_cut_dark_oak_log.png differ diff --git a/public/textures/chipped/center_cut_jungle_log.png b/public/textures/chipped/center_cut_jungle_log.png new file mode 100644 index 00000000..8f580149 Binary files /dev/null and b/public/textures/chipped/center_cut_jungle_log.png differ diff --git a/public/textures/chipped/center_cut_mangrove_log.png b/public/textures/chipped/center_cut_mangrove_log.png new file mode 100644 index 00000000..eee0436f Binary files /dev/null and b/public/textures/chipped/center_cut_mangrove_log.png differ diff --git a/public/textures/chipped/center_cut_oak_log.png b/public/textures/chipped/center_cut_oak_log.png new file mode 100644 index 00000000..085b9114 Binary files /dev/null and b/public/textures/chipped/center_cut_oak_log.png differ diff --git a/public/textures/chipped/center_cut_spruce_log.png b/public/textures/chipped/center_cut_spruce_log.png new file mode 100644 index 00000000..cc03ceeb Binary files /dev/null and b/public/textures/chipped/center_cut_spruce_log.png differ diff --git a/public/textures/chipped/center_cut_warped_stem.png b/public/textures/chipped/center_cut_warped_stem.png new file mode 100644 index 00000000..7ee78bac Binary files /dev/null and b/public/textures/chipped/center_cut_warped_stem.png differ diff --git a/public/textures/chipped/centered_mud.png b/public/textures/chipped/centered_mud.png new file mode 100644 index 00000000..77b4179e Binary files /dev/null and b/public/textures/chipped/centered_mud.png differ diff --git a/public/textures/chipped/centered_mud_bricks.png b/public/textures/chipped/centered_mud_bricks.png new file mode 100644 index 00000000..3131288f Binary files /dev/null and b/public/textures/chipped/centered_mud_bricks.png differ diff --git a/public/textures/chipped/centered_packed_mud.png b/public/textures/chipped/centered_packed_mud.png new file mode 100644 index 00000000..792613b8 Binary files /dev/null and b/public/textures/chipped/centered_packed_mud.png differ diff --git a/public/textures/chipped/chained_iron_bars.png b/public/textures/chipped/chained_iron_bars.png new file mode 100644 index 00000000..22ae9afb Binary files /dev/null and b/public/textures/chipped/chained_iron_bars.png differ diff --git a/public/textures/chipped/checkered_acacia_trapdoor.png b/public/textures/chipped/checkered_acacia_trapdoor.png new file mode 100644 index 00000000..698d96b3 Binary files /dev/null and b/public/textures/chipped/checkered_acacia_trapdoor.png differ diff --git a/public/textures/chipped/checkered_amethyst_block_tiles.png b/public/textures/chipped/checkered_amethyst_block_tiles.png new file mode 100644 index 00000000..8e96b16a Binary files /dev/null and b/public/textures/chipped/checkered_amethyst_block_tiles.png differ diff --git a/public/textures/chipped/checkered_ancient_debris_tiles.png b/public/textures/chipped/checkered_ancient_debris_tiles.png new file mode 100644 index 00000000..a899e1a3 Binary files /dev/null and b/public/textures/chipped/checkered_ancient_debris_tiles.png differ diff --git a/public/textures/chipped/checkered_andesite_tiles.png b/public/textures/chipped/checkered_andesite_tiles.png new file mode 100644 index 00000000..01e64ae6 Binary files /dev/null and b/public/textures/chipped/checkered_andesite_tiles.png differ diff --git a/public/textures/chipped/checkered_bamboo_trapdoor.png b/public/textures/chipped/checkered_bamboo_trapdoor.png new file mode 100644 index 00000000..671db1f6 Binary files /dev/null and b/public/textures/chipped/checkered_bamboo_trapdoor.png differ diff --git a/public/textures/chipped/checkered_basalt_tiles.png b/public/textures/chipped/checkered_basalt_tiles.png new file mode 100644 index 00000000..ec9115c5 Binary files /dev/null and b/public/textures/chipped/checkered_basalt_tiles.png differ diff --git a/public/textures/chipped/checkered_birch_trapdoor.png b/public/textures/chipped/checkered_birch_trapdoor.png new file mode 100644 index 00000000..5430a1bd Binary files /dev/null and b/public/textures/chipped/checkered_birch_trapdoor.png differ diff --git a/public/textures/chipped/checkered_blackstone_tiles.png b/public/textures/chipped/checkered_blackstone_tiles.png new file mode 100644 index 00000000..5b3adac3 Binary files /dev/null and b/public/textures/chipped/checkered_blackstone_tiles.png differ diff --git a/public/textures/chipped/checkered_blue_ice_tiles.png b/public/textures/chipped/checkered_blue_ice_tiles.png new file mode 100644 index 00000000..f0521ddf Binary files /dev/null and b/public/textures/chipped/checkered_blue_ice_tiles.png differ diff --git a/public/textures/chipped/checkered_borderless_bricks_tiles.png b/public/textures/chipped/checkered_borderless_bricks_tiles.png new file mode 100644 index 00000000..bcdc4277 Binary files /dev/null and b/public/textures/chipped/checkered_borderless_bricks_tiles.png differ diff --git a/public/textures/chipped/checkered_bricks_tiles.png b/public/textures/chipped/checkered_bricks_tiles.png new file mode 100644 index 00000000..4d0e9c85 Binary files /dev/null and b/public/textures/chipped/checkered_bricks_tiles.png differ diff --git a/public/textures/chipped/checkered_calcite_tiles.png b/public/textures/chipped/checkered_calcite_tiles.png new file mode 100644 index 00000000..6ffa20ba Binary files /dev/null and b/public/textures/chipped/checkered_calcite_tiles.png differ diff --git a/public/textures/chipped/checkered_cherry_trapdoor.png b/public/textures/chipped/checkered_cherry_trapdoor.png new file mode 100644 index 00000000..2a2582f3 Binary files /dev/null and b/public/textures/chipped/checkered_cherry_trapdoor.png differ diff --git a/public/textures/chipped/checkered_clay_tiles.png b/public/textures/chipped/checkered_clay_tiles.png new file mode 100644 index 00000000..0b4ba2ad Binary files /dev/null and b/public/textures/chipped/checkered_clay_tiles.png differ diff --git a/public/textures/chipped/checkered_coal_block_tiles.png b/public/textures/chipped/checkered_coal_block_tiles.png new file mode 100644 index 00000000..1447630c Binary files /dev/null and b/public/textures/chipped/checkered_coal_block_tiles.png differ diff --git a/public/textures/chipped/checkered_cobblestone_tiles.png b/public/textures/chipped/checkered_cobblestone_tiles.png new file mode 100644 index 00000000..19fb7e43 Binary files /dev/null and b/public/textures/chipped/checkered_cobblestone_tiles.png differ diff --git a/public/textures/chipped/checkered_crimson_trapdoor.png b/public/textures/chipped/checkered_crimson_trapdoor.png new file mode 100644 index 00000000..10cff2f2 Binary files /dev/null and b/public/textures/chipped/checkered_crimson_trapdoor.png differ diff --git a/public/textures/chipped/checkered_crying_obsidian_tiles.png b/public/textures/chipped/checkered_crying_obsidian_tiles.png new file mode 100644 index 00000000..9116bcee Binary files /dev/null and b/public/textures/chipped/checkered_crying_obsidian_tiles.png differ diff --git a/public/textures/chipped/checkered_dark_oak_trapdoor.png b/public/textures/chipped/checkered_dark_oak_trapdoor.png new file mode 100644 index 00000000..4febe475 Binary files /dev/null and b/public/textures/chipped/checkered_dark_oak_trapdoor.png differ diff --git a/public/textures/chipped/checkered_dark_prismarine_tiles.png b/public/textures/chipped/checkered_dark_prismarine_tiles.png new file mode 100644 index 00000000..a1ab8aff Binary files /dev/null and b/public/textures/chipped/checkered_dark_prismarine_tiles.png differ diff --git a/public/textures/chipped/checkered_deepslate_tiles.png b/public/textures/chipped/checkered_deepslate_tiles.png new file mode 100644 index 00000000..246bbc93 Binary files /dev/null and b/public/textures/chipped/checkered_deepslate_tiles.png differ diff --git a/public/textures/chipped/checkered_diorite_tiles.png b/public/textures/chipped/checkered_diorite_tiles.png new file mode 100644 index 00000000..1ed1b739 Binary files /dev/null and b/public/textures/chipped/checkered_diorite_tiles.png differ diff --git a/public/textures/chipped/checkered_dirt_tiles.png b/public/textures/chipped/checkered_dirt_tiles.png new file mode 100644 index 00000000..3fe616f4 Binary files /dev/null and b/public/textures/chipped/checkered_dirt_tiles.png differ diff --git a/public/textures/chipped/checkered_dripstone_block_tiles.png b/public/textures/chipped/checkered_dripstone_block_tiles.png new file mode 100644 index 00000000..a4770ad7 Binary files /dev/null and b/public/textures/chipped/checkered_dripstone_block_tiles.png differ diff --git a/public/textures/chipped/checkered_end_stone_tiles.png b/public/textures/chipped/checkered_end_stone_tiles.png new file mode 100644 index 00000000..b30d361a Binary files /dev/null and b/public/textures/chipped/checkered_end_stone_tiles.png differ diff --git a/public/textures/chipped/checkered_gilded_blackstone_tiles.png b/public/textures/chipped/checkered_gilded_blackstone_tiles.png new file mode 100644 index 00000000..89441cd1 Binary files /dev/null and b/public/textures/chipped/checkered_gilded_blackstone_tiles.png differ diff --git a/public/textures/chipped/checkered_granite_tiles.png b/public/textures/chipped/checkered_granite_tiles.png new file mode 100644 index 00000000..c3013ffa Binary files /dev/null and b/public/textures/chipped/checkered_granite_tiles.png differ diff --git a/public/textures/chipped/checkered_ice_tiles.png b/public/textures/chipped/checkered_ice_tiles.png new file mode 100644 index 00000000..52345902 Binary files /dev/null and b/public/textures/chipped/checkered_ice_tiles.png differ diff --git a/public/textures/chipped/checkered_iron_lantern.png b/public/textures/chipped/checkered_iron_lantern.png new file mode 100644 index 00000000..d720f068 Binary files /dev/null and b/public/textures/chipped/checkered_iron_lantern.png differ diff --git a/public/textures/chipped/checkered_iron_soul_lantern.png b/public/textures/chipped/checkered_iron_soul_lantern.png new file mode 100644 index 00000000..6b7f08f6 Binary files /dev/null and b/public/textures/chipped/checkered_iron_soul_lantern.png differ diff --git a/public/textures/chipped/checkered_jungle_trapdoor.png b/public/textures/chipped/checkered_jungle_trapdoor.png new file mode 100644 index 00000000..e3a49b64 Binary files /dev/null and b/public/textures/chipped/checkered_jungle_trapdoor.png differ diff --git a/public/textures/chipped/checkered_lapis_block_tiles.png b/public/textures/chipped/checkered_lapis_block_tiles.png new file mode 100644 index 00000000..1c0fbb86 Binary files /dev/null and b/public/textures/chipped/checkered_lapis_block_tiles.png differ diff --git a/public/textures/chipped/checkered_lodestone_tiles.png b/public/textures/chipped/checkered_lodestone_tiles.png new file mode 100644 index 00000000..073bde50 Binary files /dev/null and b/public/textures/chipped/checkered_lodestone_tiles.png differ diff --git a/public/textures/chipped/checkered_magma_block_tiles.png b/public/textures/chipped/checkered_magma_block_tiles.png new file mode 100644 index 00000000..8544ca90 Binary files /dev/null and b/public/textures/chipped/checkered_magma_block_tiles.png differ diff --git a/public/textures/chipped/checkered_mangrove_trapdoor.png b/public/textures/chipped/checkered_mangrove_trapdoor.png new file mode 100644 index 00000000..1dccfb6e Binary files /dev/null and b/public/textures/chipped/checkered_mangrove_trapdoor.png differ diff --git a/public/textures/chipped/checkered_mossy_cobblestone_tiles.png b/public/textures/chipped/checkered_mossy_cobblestone_tiles.png new file mode 100644 index 00000000..cf8cd5ba Binary files /dev/null and b/public/textures/chipped/checkered_mossy_cobblestone_tiles.png differ diff --git a/public/textures/chipped/checkered_mossy_stone_bricks_tiles.png b/public/textures/chipped/checkered_mossy_stone_bricks_tiles.png new file mode 100644 index 00000000..f6a16618 Binary files /dev/null and b/public/textures/chipped/checkered_mossy_stone_bricks_tiles.png differ diff --git a/public/textures/chipped/checkered_nether_bricks_tiles.png b/public/textures/chipped/checkered_nether_bricks_tiles.png new file mode 100644 index 00000000..5593fa96 Binary files /dev/null and b/public/textures/chipped/checkered_nether_bricks_tiles.png differ diff --git a/public/textures/chipped/checkered_netherrack_tiles.png b/public/textures/chipped/checkered_netherrack_tiles.png new file mode 100644 index 00000000..12ec7b27 Binary files /dev/null and b/public/textures/chipped/checkered_netherrack_tiles.png differ diff --git a/public/textures/chipped/checkered_oak_trapdoor.png b/public/textures/chipped/checkered_oak_trapdoor.png new file mode 100644 index 00000000..b9b0cacc Binary files /dev/null and b/public/textures/chipped/checkered_oak_trapdoor.png differ diff --git a/public/textures/chipped/checkered_obsidian_tiles.png b/public/textures/chipped/checkered_obsidian_tiles.png new file mode 100644 index 00000000..584d2165 Binary files /dev/null and b/public/textures/chipped/checkered_obsidian_tiles.png differ diff --git a/public/textures/chipped/checkered_packed_ice_tiles.png b/public/textures/chipped/checkered_packed_ice_tiles.png new file mode 100644 index 00000000..862119d2 Binary files /dev/null and b/public/textures/chipped/checkered_packed_ice_tiles.png differ diff --git a/public/textures/chipped/checkered_prismarine_tiles.png b/public/textures/chipped/checkered_prismarine_tiles.png new file mode 100644 index 00000000..b3ed12d7 Binary files /dev/null and b/public/textures/chipped/checkered_prismarine_tiles.png differ diff --git a/public/textures/chipped/checkered_quartz_block_tiles.png b/public/textures/chipped/checkered_quartz_block_tiles.png new file mode 100644 index 00000000..dc6ea1a0 Binary files /dev/null and b/public/textures/chipped/checkered_quartz_block_tiles.png differ diff --git a/public/textures/chipped/checkered_raw_copper_block_tiles.png b/public/textures/chipped/checkered_raw_copper_block_tiles.png new file mode 100644 index 00000000..0812ee8e Binary files /dev/null and b/public/textures/chipped/checkered_raw_copper_block_tiles.png differ diff --git a/public/textures/chipped/checkered_raw_gold_block_tiles.png b/public/textures/chipped/checkered_raw_gold_block_tiles.png new file mode 100644 index 00000000..ce9c8664 Binary files /dev/null and b/public/textures/chipped/checkered_raw_gold_block_tiles.png differ diff --git a/public/textures/chipped/checkered_raw_iron_block_tiles.png b/public/textures/chipped/checkered_raw_iron_block_tiles.png new file mode 100644 index 00000000..71a61705 Binary files /dev/null and b/public/textures/chipped/checkered_raw_iron_block_tiles.png differ diff --git a/public/textures/chipped/checkered_red_nether_bricks_tiles.png b/public/textures/chipped/checkered_red_nether_bricks_tiles.png new file mode 100644 index 00000000..413f95e4 Binary files /dev/null and b/public/textures/chipped/checkered_red_nether_bricks_tiles.png differ diff --git a/public/textures/chipped/checkered_red_sandstone_tiles.png b/public/textures/chipped/checkered_red_sandstone_tiles.png new file mode 100644 index 00000000..0bce546b Binary files /dev/null and b/public/textures/chipped/checkered_red_sandstone_tiles.png differ diff --git a/public/textures/chipped/checkered_redstone_block_tiles.png b/public/textures/chipped/checkered_redstone_block_tiles.png new file mode 100644 index 00000000..abde48ea Binary files /dev/null and b/public/textures/chipped/checkered_redstone_block_tiles.png differ diff --git a/public/textures/chipped/checkered_sandstone_tiles.png b/public/textures/chipped/checkered_sandstone_tiles.png new file mode 100644 index 00000000..ae87e8c4 Binary files /dev/null and b/public/textures/chipped/checkered_sandstone_tiles.png differ diff --git a/public/textures/chipped/checkered_smooth_stone_tiles.png b/public/textures/chipped/checkered_smooth_stone_tiles.png new file mode 100644 index 00000000..578ab7b5 Binary files /dev/null and b/public/textures/chipped/checkered_smooth_stone_tiles.png differ diff --git a/public/textures/chipped/checkered_snow_block_tiles.png b/public/textures/chipped/checkered_snow_block_tiles.png new file mode 100644 index 00000000..d8ff20e1 Binary files /dev/null and b/public/textures/chipped/checkered_snow_block_tiles.png differ diff --git a/public/textures/chipped/checkered_spruce_trapdoor.png b/public/textures/chipped/checkered_spruce_trapdoor.png new file mode 100644 index 00000000..4684f3fd Binary files /dev/null and b/public/textures/chipped/checkered_spruce_trapdoor.png differ diff --git a/public/textures/chipped/checkered_stone_tiles.png b/public/textures/chipped/checkered_stone_tiles.png new file mode 100644 index 00000000..f86dae09 Binary files /dev/null and b/public/textures/chipped/checkered_stone_tiles.png differ diff --git a/public/textures/chipped/checkered_tuff_tiles.png b/public/textures/chipped/checkered_tuff_tiles.png new file mode 100644 index 00000000..f198ed0f Binary files /dev/null and b/public/textures/chipped/checkered_tuff_tiles.png differ diff --git a/public/textures/chipped/checkered_warped_trapdoor.png b/public/textures/chipped/checkered_warped_trapdoor.png new file mode 100644 index 00000000..df454aad Binary files /dev/null and b/public/textures/chipped/checkered_warped_trapdoor.png differ diff --git a/public/textures/chipped/cherry_acacia_leaves.png b/public/textures/chipped/cherry_acacia_leaves.png new file mode 100644 index 00000000..285ab4fe Binary files /dev/null and b/public/textures/chipped/cherry_acacia_leaves.png differ diff --git a/public/textures/chipped/cherry_birch_leaves.png b/public/textures/chipped/cherry_birch_leaves.png new file mode 100644 index 00000000..2a052a0b Binary files /dev/null and b/public/textures/chipped/cherry_birch_leaves.png differ diff --git a/public/textures/chipped/cherry_dark_oak_leaves.png b/public/textures/chipped/cherry_dark_oak_leaves.png new file mode 100644 index 00000000..55e1c8c8 Binary files /dev/null and b/public/textures/chipped/cherry_dark_oak_leaves.png differ diff --git a/public/textures/chipped/cherry_jungle_leaves.png b/public/textures/chipped/cherry_jungle_leaves.png new file mode 100644 index 00000000..118b855e Binary files /dev/null and b/public/textures/chipped/cherry_jungle_leaves.png differ diff --git a/public/textures/chipped/cherry_oak_leaves.png b/public/textures/chipped/cherry_oak_leaves.png new file mode 100644 index 00000000..74665d6c Binary files /dev/null and b/public/textures/chipped/cherry_oak_leaves.png differ diff --git a/public/textures/chipped/cherry_planks_mosaic.png b/public/textures/chipped/cherry_planks_mosaic.png new file mode 100644 index 00000000..4c960cf8 Binary files /dev/null and b/public/textures/chipped/cherry_planks_mosaic.png differ diff --git a/public/textures/chipped/cherry_planks_panel.png b/public/textures/chipped/cherry_planks_panel.png new file mode 100644 index 00000000..eccab295 Binary files /dev/null and b/public/textures/chipped/cherry_planks_panel.png differ diff --git a/public/textures/chipped/cherry_planks_shavings.png b/public/textures/chipped/cherry_planks_shavings.png new file mode 100644 index 00000000..e34ff808 Binary files /dev/null and b/public/textures/chipped/cherry_planks_shavings.png differ diff --git a/public/textures/chipped/cherry_spruce_leaves.png b/public/textures/chipped/cherry_spruce_leaves.png new file mode 100644 index 00000000..73737e2e Binary files /dev/null and b/public/textures/chipped/cherry_spruce_leaves.png differ diff --git a/public/textures/chipped/chipped_diamond_block.png b/public/textures/chipped/chipped_diamond_block.png new file mode 100644 index 00000000..c87d4109 Binary files /dev/null and b/public/textures/chipped/chipped_diamond_block.png differ diff --git a/public/textures/chipped/chipped_emerald_block.png b/public/textures/chipped/chipped_emerald_block.png new file mode 100644 index 00000000..ac7e5445 Binary files /dev/null and b/public/textures/chipped/chipped_emerald_block.png differ diff --git a/public/textures/chipped/chipped_gold_block.png b/public/textures/chipped/chipped_gold_block.png new file mode 100644 index 00000000..e07817d3 Binary files /dev/null and b/public/textures/chipped/chipped_gold_block.png differ diff --git a/public/textures/chipped/chipped_iron_block.png b/public/textures/chipped/chipped_iron_block.png new file mode 100644 index 00000000..411403eb Binary files /dev/null and b/public/textures/chipped/chipped_iron_block.png differ diff --git a/public/textures/chipped/chipped_netherite_block.png b/public/textures/chipped/chipped_netherite_block.png new file mode 100644 index 00000000..8a16d213 Binary files /dev/null and b/public/textures/chipped/chipped_netherite_block.png differ diff --git a/public/textures/chipped/chipped_stripped_acacia_log.png b/public/textures/chipped/chipped_stripped_acacia_log.png new file mode 100644 index 00000000..12ba4a92 Binary files /dev/null and b/public/textures/chipped/chipped_stripped_acacia_log.png differ diff --git a/public/textures/chipped/chipped_stripped_birch_log.png b/public/textures/chipped/chipped_stripped_birch_log.png new file mode 100644 index 00000000..225612c1 Binary files /dev/null and b/public/textures/chipped/chipped_stripped_birch_log.png differ diff --git a/public/textures/chipped/chipped_stripped_cherry_log.png b/public/textures/chipped/chipped_stripped_cherry_log.png new file mode 100644 index 00000000..62d1a47e Binary files /dev/null and b/public/textures/chipped/chipped_stripped_cherry_log.png differ diff --git a/public/textures/chipped/chipped_stripped_crimson_stem.png b/public/textures/chipped/chipped_stripped_crimson_stem.png new file mode 100644 index 00000000..ae9e2f0b Binary files /dev/null and b/public/textures/chipped/chipped_stripped_crimson_stem.png differ diff --git a/public/textures/chipped/chipped_stripped_dark_oak_log.png b/public/textures/chipped/chipped_stripped_dark_oak_log.png new file mode 100644 index 00000000..57b5cc4b Binary files /dev/null and b/public/textures/chipped/chipped_stripped_dark_oak_log.png differ diff --git a/public/textures/chipped/chipped_stripped_jungle_log.png b/public/textures/chipped/chipped_stripped_jungle_log.png new file mode 100644 index 00000000..947d01bf Binary files /dev/null and b/public/textures/chipped/chipped_stripped_jungle_log.png differ diff --git a/public/textures/chipped/chipped_stripped_mangrove_log.png b/public/textures/chipped/chipped_stripped_mangrove_log.png new file mode 100644 index 00000000..19990b95 Binary files /dev/null and b/public/textures/chipped/chipped_stripped_mangrove_log.png differ diff --git a/public/textures/chipped/chipped_stripped_oak_log.png b/public/textures/chipped/chipped_stripped_oak_log.png new file mode 100644 index 00000000..be9b85fd Binary files /dev/null and b/public/textures/chipped/chipped_stripped_oak_log.png differ diff --git a/public/textures/chipped/chipped_stripped_spruce_log.png b/public/textures/chipped/chipped_stripped_spruce_log.png new file mode 100644 index 00000000..42d56ff6 Binary files /dev/null and b/public/textures/chipped/chipped_stripped_spruce_log.png differ diff --git a/public/textures/chipped/chipped_stripped_warped_stem.png b/public/textures/chipped/chipped_stripped_warped_stem.png new file mode 100644 index 00000000..f1465116 Binary files /dev/null and b/public/textures/chipped/chipped_stripped_warped_stem.png differ diff --git a/public/textures/chipped/chipped_waxed_copper_block.png b/public/textures/chipped/chipped_waxed_copper_block.png new file mode 100644 index 00000000..1571fbcf Binary files /dev/null and b/public/textures/chipped/chipped_waxed_copper_block.png differ diff --git a/public/textures/chipped/chipped_waxed_exposed_copper.png b/public/textures/chipped/chipped_waxed_exposed_copper.png new file mode 100644 index 00000000..759a7f36 Binary files /dev/null and b/public/textures/chipped/chipped_waxed_exposed_copper.png differ diff --git a/public/textures/chipped/chipped_waxed_oxidized_copper.png b/public/textures/chipped/chipped_waxed_oxidized_copper.png new file mode 100644 index 00000000..e4f529df Binary files /dev/null and b/public/textures/chipped/chipped_waxed_oxidized_copper.png differ diff --git a/public/textures/chipped/chipped_waxed_weathered_copper.png b/public/textures/chipped/chipped_waxed_weathered_copper.png new file mode 100644 index 00000000..98195ae5 Binary files /dev/null and b/public/textures/chipped/chipped_waxed_weathered_copper.png differ diff --git a/public/textures/chipped/chisel.png b/public/textures/chipped/chisel.png new file mode 100644 index 00000000..328dfd4f Binary files /dev/null and b/public/textures/chipped/chisel.png differ diff --git a/public/textures/chipped/chiseled_black_terracotta.png b/public/textures/chipped/chiseled_black_terracotta.png new file mode 100644 index 00000000..1ca89daa Binary files /dev/null and b/public/textures/chipped/chiseled_black_terracotta.png differ diff --git a/public/textures/chipped/chiseled_blue_terracotta.png b/public/textures/chipped/chiseled_blue_terracotta.png new file mode 100644 index 00000000..6f8f5f04 Binary files /dev/null and b/public/textures/chipped/chiseled_blue_terracotta.png differ diff --git a/public/textures/chipped/chiseled_brown_terracotta.png b/public/textures/chipped/chiseled_brown_terracotta.png new file mode 100644 index 00000000..fdc128f8 Binary files /dev/null and b/public/textures/chipped/chiseled_brown_terracotta.png differ diff --git a/public/textures/chipped/chiseled_cyan_terracotta.png b/public/textures/chipped/chiseled_cyan_terracotta.png new file mode 100644 index 00000000..155c3572 Binary files /dev/null and b/public/textures/chipped/chiseled_cyan_terracotta.png differ diff --git a/public/textures/chipped/chiseled_gray_terracotta.png b/public/textures/chipped/chiseled_gray_terracotta.png new file mode 100644 index 00000000..39cdd7a3 Binary files /dev/null and b/public/textures/chipped/chiseled_gray_terracotta.png differ diff --git a/public/textures/chipped/chiseled_green_terracotta.png b/public/textures/chipped/chiseled_green_terracotta.png new file mode 100644 index 00000000..b6217518 Binary files /dev/null and b/public/textures/chipped/chiseled_green_terracotta.png differ diff --git a/public/textures/chipped/chiseled_light_blue_terracotta.png b/public/textures/chipped/chiseled_light_blue_terracotta.png new file mode 100644 index 00000000..a1745f8e Binary files /dev/null and b/public/textures/chipped/chiseled_light_blue_terracotta.png differ diff --git a/public/textures/chipped/chiseled_light_gray_terracotta.png b/public/textures/chipped/chiseled_light_gray_terracotta.png new file mode 100644 index 00000000..32e7c06e Binary files /dev/null and b/public/textures/chipped/chiseled_light_gray_terracotta.png differ diff --git a/public/textures/chipped/chiseled_lime_terracotta.png b/public/textures/chipped/chiseled_lime_terracotta.png new file mode 100644 index 00000000..02d84051 Binary files /dev/null and b/public/textures/chipped/chiseled_lime_terracotta.png differ diff --git a/public/textures/chipped/chiseled_magenta_terracotta.png b/public/textures/chipped/chiseled_magenta_terracotta.png new file mode 100644 index 00000000..6f68eb16 Binary files /dev/null and b/public/textures/chipped/chiseled_magenta_terracotta.png differ diff --git a/public/textures/chipped/chiseled_mangrove_planks.png b/public/textures/chipped/chiseled_mangrove_planks.png new file mode 100644 index 00000000..b3c9cca7 Binary files /dev/null and b/public/textures/chipped/chiseled_mangrove_planks.png differ diff --git a/public/textures/chipped/chiseled_mud.png b/public/textures/chipped/chiseled_mud.png new file mode 100644 index 00000000..dc58361f Binary files /dev/null and b/public/textures/chipped/chiseled_mud.png differ diff --git a/public/textures/chipped/chiseled_mud_bricks.png b/public/textures/chipped/chiseled_mud_bricks.png new file mode 100644 index 00000000..aaf8de4e Binary files /dev/null and b/public/textures/chipped/chiseled_mud_bricks.png differ diff --git a/public/textures/chipped/chiseled_orange_terracotta.png b/public/textures/chipped/chiseled_orange_terracotta.png new file mode 100644 index 00000000..f59910b0 Binary files /dev/null and b/public/textures/chipped/chiseled_orange_terracotta.png differ diff --git a/public/textures/chipped/chiseled_packed_mud.png b/public/textures/chipped/chiseled_packed_mud.png new file mode 100644 index 00000000..d597441b Binary files /dev/null and b/public/textures/chipped/chiseled_packed_mud.png differ diff --git a/public/textures/chipped/chiseled_pink_terracotta.png b/public/textures/chipped/chiseled_pink_terracotta.png new file mode 100644 index 00000000..1f12c694 Binary files /dev/null and b/public/textures/chipped/chiseled_pink_terracotta.png differ diff --git a/public/textures/chipped/chiseled_purple_terracotta.png b/public/textures/chipped/chiseled_purple_terracotta.png new file mode 100644 index 00000000..21c468c5 Binary files /dev/null and b/public/textures/chipped/chiseled_purple_terracotta.png differ diff --git a/public/textures/chipped/chiseled_red_terracotta.png b/public/textures/chipped/chiseled_red_terracotta.png new file mode 100644 index 00000000..b4361203 Binary files /dev/null and b/public/textures/chipped/chiseled_red_terracotta.png differ diff --git a/public/textures/chipped/chiseled_stripped_mangrove_log.png b/public/textures/chipped/chiseled_stripped_mangrove_log.png new file mode 100644 index 00000000..ba887ead Binary files /dev/null and b/public/textures/chipped/chiseled_stripped_mangrove_log.png differ diff --git a/public/textures/chipped/chiseled_terracotta.png b/public/textures/chipped/chiseled_terracotta.png new file mode 100644 index 00000000..3dace86c Binary files /dev/null and b/public/textures/chipped/chiseled_terracotta.png differ diff --git a/public/textures/chipped/chiseled_white_terracotta.png b/public/textures/chipped/chiseled_white_terracotta.png new file mode 100644 index 00000000..b2919831 Binary files /dev/null and b/public/textures/chipped/chiseled_white_terracotta.png differ diff --git a/public/textures/chipped/chiseled_yellow_terracotta.png b/public/textures/chipped/chiseled_yellow_terracotta.png new file mode 100644 index 00000000..17fec21d Binary files /dev/null and b/public/textures/chipped/chiseled_yellow_terracotta.png differ diff --git a/public/textures/chipped/chunky_gilded_blackstone.png b/public/textures/chipped/chunky_gilded_blackstone.png new file mode 100644 index 00000000..03ddc987 Binary files /dev/null and b/public/textures/chipped/chunky_gilded_blackstone.png differ diff --git a/public/textures/chipped/circle_oak_glass.png b/public/textures/chipped/circle_oak_glass.png new file mode 100644 index 00000000..b6c8adc3 Binary files /dev/null and b/public/textures/chipped/circle_oak_glass.png differ diff --git a/public/textures/chipped/circle_oak_glass_pane.png b/public/textures/chipped/circle_oak_glass_pane.png new file mode 100644 index 00000000..5ff253cb Binary files /dev/null and b/public/textures/chipped/circle_oak_glass_pane.png differ diff --git a/public/textures/chipped/circular_black_stained_glass.png b/public/textures/chipped/circular_black_stained_glass.png new file mode 100644 index 00000000..aecce015 Binary files /dev/null and b/public/textures/chipped/circular_black_stained_glass.png differ diff --git a/public/textures/chipped/circular_black_stained_glass_pane.png b/public/textures/chipped/circular_black_stained_glass_pane.png new file mode 100644 index 00000000..66855587 Binary files /dev/null and b/public/textures/chipped/circular_black_stained_glass_pane.png differ diff --git a/public/textures/chipped/circular_black_terracotta.png b/public/textures/chipped/circular_black_terracotta.png new file mode 100644 index 00000000..a3a4ef68 Binary files /dev/null and b/public/textures/chipped/circular_black_terracotta.png differ diff --git a/public/textures/chipped/circular_blue_stained_glass.png b/public/textures/chipped/circular_blue_stained_glass.png new file mode 100644 index 00000000..33683f85 Binary files /dev/null and b/public/textures/chipped/circular_blue_stained_glass.png differ diff --git a/public/textures/chipped/circular_blue_stained_glass_pane.png b/public/textures/chipped/circular_blue_stained_glass_pane.png new file mode 100644 index 00000000..3746da8c Binary files /dev/null and b/public/textures/chipped/circular_blue_stained_glass_pane.png differ diff --git a/public/textures/chipped/circular_blue_terracotta.png b/public/textures/chipped/circular_blue_terracotta.png new file mode 100644 index 00000000..c03cfe77 Binary files /dev/null and b/public/textures/chipped/circular_blue_terracotta.png differ diff --git a/public/textures/chipped/circular_brown_stained_glass.png b/public/textures/chipped/circular_brown_stained_glass.png new file mode 100644 index 00000000..a160b8bf Binary files /dev/null and b/public/textures/chipped/circular_brown_stained_glass.png differ diff --git a/public/textures/chipped/circular_brown_stained_glass_pane.png b/public/textures/chipped/circular_brown_stained_glass_pane.png new file mode 100644 index 00000000..7859d9e2 Binary files /dev/null and b/public/textures/chipped/circular_brown_stained_glass_pane.png differ diff --git a/public/textures/chipped/circular_brown_terracotta.png b/public/textures/chipped/circular_brown_terracotta.png new file mode 100644 index 00000000..8ffc9281 Binary files /dev/null and b/public/textures/chipped/circular_brown_terracotta.png differ diff --git a/public/textures/chipped/circular_cyan_stained_glass.png b/public/textures/chipped/circular_cyan_stained_glass.png new file mode 100644 index 00000000..dc3e1c1b Binary files /dev/null and b/public/textures/chipped/circular_cyan_stained_glass.png differ diff --git a/public/textures/chipped/circular_cyan_stained_glass_pane.png b/public/textures/chipped/circular_cyan_stained_glass_pane.png new file mode 100644 index 00000000..09e5cbf7 Binary files /dev/null and b/public/textures/chipped/circular_cyan_stained_glass_pane.png differ diff --git a/public/textures/chipped/circular_cyan_terracotta.png b/public/textures/chipped/circular_cyan_terracotta.png new file mode 100644 index 00000000..ee8849f8 Binary files /dev/null and b/public/textures/chipped/circular_cyan_terracotta.png differ diff --git a/public/textures/chipped/circular_gray_stained_glass.png b/public/textures/chipped/circular_gray_stained_glass.png new file mode 100644 index 00000000..809504ee Binary files /dev/null and b/public/textures/chipped/circular_gray_stained_glass.png differ diff --git a/public/textures/chipped/circular_gray_stained_glass_pane.png b/public/textures/chipped/circular_gray_stained_glass_pane.png new file mode 100644 index 00000000..9bd0bfb2 Binary files /dev/null and b/public/textures/chipped/circular_gray_stained_glass_pane.png differ diff --git a/public/textures/chipped/circular_gray_terracotta.png b/public/textures/chipped/circular_gray_terracotta.png new file mode 100644 index 00000000..b0d5907d Binary files /dev/null and b/public/textures/chipped/circular_gray_terracotta.png differ diff --git a/public/textures/chipped/circular_green_stained_glass.png b/public/textures/chipped/circular_green_stained_glass.png new file mode 100644 index 00000000..c700d82f Binary files /dev/null and b/public/textures/chipped/circular_green_stained_glass.png differ diff --git a/public/textures/chipped/circular_green_stained_glass_pane.png b/public/textures/chipped/circular_green_stained_glass_pane.png new file mode 100644 index 00000000..499a7f09 Binary files /dev/null and b/public/textures/chipped/circular_green_stained_glass_pane.png differ diff --git a/public/textures/chipped/circular_green_terracotta.png b/public/textures/chipped/circular_green_terracotta.png new file mode 100644 index 00000000..539e304b Binary files /dev/null and b/public/textures/chipped/circular_green_terracotta.png differ diff --git a/public/textures/chipped/circular_light_blue_stained_glass.png b/public/textures/chipped/circular_light_blue_stained_glass.png new file mode 100644 index 00000000..9cda8929 Binary files /dev/null and b/public/textures/chipped/circular_light_blue_stained_glass.png differ diff --git a/public/textures/chipped/circular_light_blue_stained_glass_pane.png b/public/textures/chipped/circular_light_blue_stained_glass_pane.png new file mode 100644 index 00000000..73e68220 Binary files /dev/null and b/public/textures/chipped/circular_light_blue_stained_glass_pane.png differ diff --git a/public/textures/chipped/circular_light_blue_terracotta.png b/public/textures/chipped/circular_light_blue_terracotta.png new file mode 100644 index 00000000..5c986050 Binary files /dev/null and b/public/textures/chipped/circular_light_blue_terracotta.png differ diff --git a/public/textures/chipped/circular_light_gray_stained_glass.png b/public/textures/chipped/circular_light_gray_stained_glass.png new file mode 100644 index 00000000..489d523f Binary files /dev/null and b/public/textures/chipped/circular_light_gray_stained_glass.png differ diff --git a/public/textures/chipped/circular_light_gray_stained_glass_pane.png b/public/textures/chipped/circular_light_gray_stained_glass_pane.png new file mode 100644 index 00000000..680df38a Binary files /dev/null and b/public/textures/chipped/circular_light_gray_stained_glass_pane.png differ diff --git a/public/textures/chipped/circular_light_gray_terracotta.png b/public/textures/chipped/circular_light_gray_terracotta.png new file mode 100644 index 00000000..fee0cbda Binary files /dev/null and b/public/textures/chipped/circular_light_gray_terracotta.png differ diff --git a/public/textures/chipped/circular_lime_stained_glass.png b/public/textures/chipped/circular_lime_stained_glass.png new file mode 100644 index 00000000..638d619c Binary files /dev/null and b/public/textures/chipped/circular_lime_stained_glass.png differ diff --git a/public/textures/chipped/circular_lime_stained_glass_pane.png b/public/textures/chipped/circular_lime_stained_glass_pane.png new file mode 100644 index 00000000..cc7d804a Binary files /dev/null and b/public/textures/chipped/circular_lime_stained_glass_pane.png differ diff --git a/public/textures/chipped/circular_lime_terracotta.png b/public/textures/chipped/circular_lime_terracotta.png new file mode 100644 index 00000000..a363e6cd Binary files /dev/null and b/public/textures/chipped/circular_lime_terracotta.png differ diff --git a/public/textures/chipped/circular_magenta_stained_glass.png b/public/textures/chipped/circular_magenta_stained_glass.png new file mode 100644 index 00000000..4bbfb7e4 Binary files /dev/null and b/public/textures/chipped/circular_magenta_stained_glass.png differ diff --git a/public/textures/chipped/circular_magenta_stained_glass_pane.png b/public/textures/chipped/circular_magenta_stained_glass_pane.png new file mode 100644 index 00000000..58981ef2 Binary files /dev/null and b/public/textures/chipped/circular_magenta_stained_glass_pane.png differ diff --git a/public/textures/chipped/circular_magenta_terracotta.png b/public/textures/chipped/circular_magenta_terracotta.png new file mode 100644 index 00000000..2e325d94 Binary files /dev/null and b/public/textures/chipped/circular_magenta_terracotta.png differ diff --git a/public/textures/chipped/circular_orange_stained_glass.png b/public/textures/chipped/circular_orange_stained_glass.png new file mode 100644 index 00000000..a9e6dd4f Binary files /dev/null and b/public/textures/chipped/circular_orange_stained_glass.png differ diff --git a/public/textures/chipped/circular_orange_stained_glass_pane.png b/public/textures/chipped/circular_orange_stained_glass_pane.png new file mode 100644 index 00000000..f6861b08 Binary files /dev/null and b/public/textures/chipped/circular_orange_stained_glass_pane.png differ diff --git a/public/textures/chipped/circular_orange_terracotta.png b/public/textures/chipped/circular_orange_terracotta.png new file mode 100644 index 00000000..d25120c4 Binary files /dev/null and b/public/textures/chipped/circular_orange_terracotta.png differ diff --git a/public/textures/chipped/circular_pink_stained_glass.png b/public/textures/chipped/circular_pink_stained_glass.png new file mode 100644 index 00000000..fbf8cdb1 Binary files /dev/null and b/public/textures/chipped/circular_pink_stained_glass.png differ diff --git a/public/textures/chipped/circular_pink_stained_glass_pane.png b/public/textures/chipped/circular_pink_stained_glass_pane.png new file mode 100644 index 00000000..2b283c76 Binary files /dev/null and b/public/textures/chipped/circular_pink_stained_glass_pane.png differ diff --git a/public/textures/chipped/circular_pink_terracotta.png b/public/textures/chipped/circular_pink_terracotta.png new file mode 100644 index 00000000..3231ec20 Binary files /dev/null and b/public/textures/chipped/circular_pink_terracotta.png differ diff --git a/public/textures/chipped/circular_purple_stained_glass.png b/public/textures/chipped/circular_purple_stained_glass.png new file mode 100644 index 00000000..6f5e521e Binary files /dev/null and b/public/textures/chipped/circular_purple_stained_glass.png differ diff --git a/public/textures/chipped/circular_purple_stained_glass_pane.png b/public/textures/chipped/circular_purple_stained_glass_pane.png new file mode 100644 index 00000000..0b112f6b Binary files /dev/null and b/public/textures/chipped/circular_purple_stained_glass_pane.png differ diff --git a/public/textures/chipped/circular_purple_terracotta.png b/public/textures/chipped/circular_purple_terracotta.png new file mode 100644 index 00000000..eb3b635f Binary files /dev/null and b/public/textures/chipped/circular_purple_terracotta.png differ diff --git a/public/textures/chipped/circular_red_stained_glass.png b/public/textures/chipped/circular_red_stained_glass.png new file mode 100644 index 00000000..bcfda486 Binary files /dev/null and b/public/textures/chipped/circular_red_stained_glass.png differ diff --git a/public/textures/chipped/circular_red_stained_glass_pane.png b/public/textures/chipped/circular_red_stained_glass_pane.png new file mode 100644 index 00000000..7e323a42 Binary files /dev/null and b/public/textures/chipped/circular_red_stained_glass_pane.png differ diff --git a/public/textures/chipped/circular_red_terracotta.png b/public/textures/chipped/circular_red_terracotta.png new file mode 100644 index 00000000..ec15c2d6 Binary files /dev/null and b/public/textures/chipped/circular_red_terracotta.png differ diff --git a/public/textures/chipped/circular_terracotta.png b/public/textures/chipped/circular_terracotta.png new file mode 100644 index 00000000..504cf72f Binary files /dev/null and b/public/textures/chipped/circular_terracotta.png differ diff --git a/public/textures/chipped/circular_white_stained_glass.png b/public/textures/chipped/circular_white_stained_glass.png new file mode 100644 index 00000000..e94dce38 Binary files /dev/null and b/public/textures/chipped/circular_white_stained_glass.png differ diff --git a/public/textures/chipped/circular_white_stained_glass_pane.png b/public/textures/chipped/circular_white_stained_glass_pane.png new file mode 100644 index 00000000..05a0320c Binary files /dev/null and b/public/textures/chipped/circular_white_stained_glass_pane.png differ diff --git a/public/textures/chipped/circular_white_terracotta.png b/public/textures/chipped/circular_white_terracotta.png new file mode 100644 index 00000000..80924e09 Binary files /dev/null and b/public/textures/chipped/circular_white_terracotta.png differ diff --git a/public/textures/chipped/circular_yellow_stained_glass.png b/public/textures/chipped/circular_yellow_stained_glass.png new file mode 100644 index 00000000..489c6193 Binary files /dev/null and b/public/textures/chipped/circular_yellow_stained_glass.png differ diff --git a/public/textures/chipped/circular_yellow_stained_glass_pane.png b/public/textures/chipped/circular_yellow_stained_glass_pane.png new file mode 100644 index 00000000..e0e2f403 Binary files /dev/null and b/public/textures/chipped/circular_yellow_stained_glass_pane.png differ diff --git a/public/textures/chipped/circular_yellow_terracotta.png b/public/textures/chipped/circular_yellow_terracotta.png new file mode 100644 index 00000000..477c9e31 Binary files /dev/null and b/public/textures/chipped/circular_yellow_terracotta.png differ diff --git a/public/textures/chipped/classic_acacia_trapdoor.png b/public/textures/chipped/classic_acacia_trapdoor.png new file mode 100644 index 00000000..175e379a Binary files /dev/null and b/public/textures/chipped/classic_acacia_trapdoor.png differ diff --git a/public/textures/chipped/classic_bamboo_trapdoor.png b/public/textures/chipped/classic_bamboo_trapdoor.png new file mode 100644 index 00000000..e05111ef Binary files /dev/null and b/public/textures/chipped/classic_bamboo_trapdoor.png differ diff --git a/public/textures/chipped/classic_birch_trapdoor.png b/public/textures/chipped/classic_birch_trapdoor.png new file mode 100644 index 00000000..e7af5302 Binary files /dev/null and b/public/textures/chipped/classic_birch_trapdoor.png differ diff --git a/public/textures/chipped/classic_cherry_trapdoor.png b/public/textures/chipped/classic_cherry_trapdoor.png new file mode 100644 index 00000000..5e308da7 Binary files /dev/null and b/public/textures/chipped/classic_cherry_trapdoor.png differ diff --git a/public/textures/chipped/classic_crimson_trapdoor.png b/public/textures/chipped/classic_crimson_trapdoor.png new file mode 100644 index 00000000..7779f072 Binary files /dev/null and b/public/textures/chipped/classic_crimson_trapdoor.png differ diff --git a/public/textures/chipped/classic_dark_oak_trapdoor.png b/public/textures/chipped/classic_dark_oak_trapdoor.png new file mode 100644 index 00000000..79b91008 Binary files /dev/null and b/public/textures/chipped/classic_dark_oak_trapdoor.png differ diff --git a/public/textures/chipped/classic_jungle_trapdoor.png b/public/textures/chipped/classic_jungle_trapdoor.png new file mode 100644 index 00000000..fa61ce37 Binary files /dev/null and b/public/textures/chipped/classic_jungle_trapdoor.png differ diff --git a/public/textures/chipped/classic_mangrove_trapdoor.png b/public/textures/chipped/classic_mangrove_trapdoor.png new file mode 100644 index 00000000..6ebdfa7b Binary files /dev/null and b/public/textures/chipped/classic_mangrove_trapdoor.png differ diff --git a/public/textures/chipped/classic_spruce_trapdoor.png b/public/textures/chipped/classic_spruce_trapdoor.png new file mode 100644 index 00000000..b707963b Binary files /dev/null and b/public/textures/chipped/classic_spruce_trapdoor.png differ diff --git a/public/textures/chipped/classic_warped_trapdoor.png b/public/textures/chipped/classic_warped_trapdoor.png new file mode 100644 index 00000000..6d61af52 Binary files /dev/null and b/public/textures/chipped/classic_warped_trapdoor.png differ diff --git a/public/textures/chipped/classic_windowed_acacia_trapdoor.png b/public/textures/chipped/classic_windowed_acacia_trapdoor.png new file mode 100644 index 00000000..5c03116f Binary files /dev/null and b/public/textures/chipped/classic_windowed_acacia_trapdoor.png differ diff --git a/public/textures/chipped/classic_windowed_bamboo_trapdoor.png b/public/textures/chipped/classic_windowed_bamboo_trapdoor.png new file mode 100644 index 00000000..2e95b8e5 Binary files /dev/null and b/public/textures/chipped/classic_windowed_bamboo_trapdoor.png differ diff --git a/public/textures/chipped/classic_windowed_birch_trapdoor.png b/public/textures/chipped/classic_windowed_birch_trapdoor.png new file mode 100644 index 00000000..4220b5c6 Binary files /dev/null and b/public/textures/chipped/classic_windowed_birch_trapdoor.png differ diff --git a/public/textures/chipped/classic_windowed_cherry_trapdoor.png b/public/textures/chipped/classic_windowed_cherry_trapdoor.png new file mode 100644 index 00000000..3cf11475 Binary files /dev/null and b/public/textures/chipped/classic_windowed_cherry_trapdoor.png differ diff --git a/public/textures/chipped/classic_windowed_crimson_trapdoor.png b/public/textures/chipped/classic_windowed_crimson_trapdoor.png new file mode 100644 index 00000000..37a4b24c Binary files /dev/null and b/public/textures/chipped/classic_windowed_crimson_trapdoor.png differ diff --git a/public/textures/chipped/classic_windowed_dark_oak_trapdoor.png b/public/textures/chipped/classic_windowed_dark_oak_trapdoor.png new file mode 100644 index 00000000..bfa5f2cd Binary files /dev/null and b/public/textures/chipped/classic_windowed_dark_oak_trapdoor.png differ diff --git a/public/textures/chipped/classic_windowed_jungle_trapdoor.png b/public/textures/chipped/classic_windowed_jungle_trapdoor.png new file mode 100644 index 00000000..c396aa43 Binary files /dev/null and b/public/textures/chipped/classic_windowed_jungle_trapdoor.png differ diff --git a/public/textures/chipped/classic_windowed_mangrove_trapdoor.png b/public/textures/chipped/classic_windowed_mangrove_trapdoor.png new file mode 100644 index 00000000..1c9f80e3 Binary files /dev/null and b/public/textures/chipped/classic_windowed_mangrove_trapdoor.png differ diff --git a/public/textures/chipped/classic_windowed_oak_trapdoor.png b/public/textures/chipped/classic_windowed_oak_trapdoor.png new file mode 100644 index 00000000..a811e0c0 Binary files /dev/null and b/public/textures/chipped/classic_windowed_oak_trapdoor.png differ diff --git a/public/textures/chipped/classic_windowed_spruce_trapdoor.png b/public/textures/chipped/classic_windowed_spruce_trapdoor.png new file mode 100644 index 00000000..9b8dd44c Binary files /dev/null and b/public/textures/chipped/classic_windowed_spruce_trapdoor.png differ diff --git a/public/textures/chipped/classic_windowed_warped_trapdoor.png b/public/textures/chipped/classic_windowed_warped_trapdoor.png new file mode 100644 index 00000000..6ba4a7d6 Binary files /dev/null and b/public/textures/chipped/classic_windowed_warped_trapdoor.png differ diff --git a/public/textures/chipped/clay_bricks.png b/public/textures/chipped/clay_bricks.png new file mode 100644 index 00000000..ae775c05 Binary files /dev/null and b/public/textures/chipped/clay_bricks.png differ diff --git a/public/textures/chipped/clay_mini_tiles.png b/public/textures/chipped/clay_mini_tiles.png new file mode 100644 index 00000000..ba57678f Binary files /dev/null and b/public/textures/chipped/clay_mini_tiles.png differ diff --git a/public/textures/chipped/clay_pillar.png b/public/textures/chipped/clay_pillar.png new file mode 100644 index 00000000..39de98b8 Binary files /dev/null and b/public/textures/chipped/clay_pillar.png differ diff --git a/public/textures/chipped/clay_pillar_top.png b/public/textures/chipped/clay_pillar_top.png new file mode 100644 index 00000000..89a6198a Binary files /dev/null and b/public/textures/chipped/clay_pillar_top.png differ diff --git a/public/textures/chipped/clay_scales.png b/public/textures/chipped/clay_scales.png new file mode 100644 index 00000000..c7cda52e Binary files /dev/null and b/public/textures/chipped/clay_scales.png differ diff --git a/public/textures/chipped/clear_leaded_glass.png b/public/textures/chipped/clear_leaded_glass.png new file mode 100644 index 00000000..0aa67c21 Binary files /dev/null and b/public/textures/chipped/clear_leaded_glass.png differ diff --git a/public/textures/chipped/clear_leaded_glass_pane.png b/public/textures/chipped/clear_leaded_glass_pane.png new file mode 100644 index 00000000..630cd094 Binary files /dev/null and b/public/textures/chipped/clear_leaded_glass_pane.png differ diff --git a/public/textures/chipped/clustered_brown_mushroom.png b/public/textures/chipped/clustered_brown_mushroom.png new file mode 100644 index 00000000..ea94e6ee Binary files /dev/null and b/public/textures/chipped/clustered_brown_mushroom.png differ diff --git a/public/textures/chipped/clustered_crimson_fungus.png b/public/textures/chipped/clustered_crimson_fungus.png new file mode 100644 index 00000000..323a5acb Binary files /dev/null and b/public/textures/chipped/clustered_crimson_fungus.png differ diff --git a/public/textures/chipped/clustered_red_mushroom.png b/public/textures/chipped/clustered_red_mushroom.png new file mode 100644 index 00000000..ff2fd8cd Binary files /dev/null and b/public/textures/chipped/clustered_red_mushroom.png differ diff --git a/public/textures/chipped/coal_barrel.png b/public/textures/chipped/coal_barrel.png new file mode 100644 index 00000000..16d382a3 Binary files /dev/null and b/public/textures/chipped/coal_barrel.png differ diff --git a/public/textures/chipped/coal_block_bricks.png b/public/textures/chipped/coal_block_bricks.png new file mode 100644 index 00000000..ab49485c Binary files /dev/null and b/public/textures/chipped/coal_block_bricks.png differ diff --git a/public/textures/chipped/coal_block_mini_tiles.png b/public/textures/chipped/coal_block_mini_tiles.png new file mode 100644 index 00000000..2795cbc4 Binary files /dev/null and b/public/textures/chipped/coal_block_mini_tiles.png differ diff --git a/public/textures/chipped/coal_block_pillar.png b/public/textures/chipped/coal_block_pillar.png new file mode 100644 index 00000000..a4231a80 Binary files /dev/null and b/public/textures/chipped/coal_block_pillar.png differ diff --git a/public/textures/chipped/coal_block_pillar_top.png b/public/textures/chipped/coal_block_pillar_top.png new file mode 100644 index 00000000..df101c41 Binary files /dev/null and b/public/textures/chipped/coal_block_pillar_top.png differ diff --git a/public/textures/chipped/coal_block_scales.png b/public/textures/chipped/coal_block_scales.png new file mode 100644 index 00000000..79446cda Binary files /dev/null and b/public/textures/chipped/coal_block_scales.png differ diff --git a/public/textures/chipped/coarse_sand.png b/public/textures/chipped/coarse_sand.png new file mode 100644 index 00000000..16ab5f0f Binary files /dev/null and b/public/textures/chipped/coarse_sand.png differ diff --git a/public/textures/chipped/cobbled_amethyst_block.png b/public/textures/chipped/cobbled_amethyst_block.png new file mode 100644 index 00000000..93a56a2a Binary files /dev/null and b/public/textures/chipped/cobbled_amethyst_block.png differ diff --git a/public/textures/chipped/cobbled_ancient_debris.png b/public/textures/chipped/cobbled_ancient_debris.png new file mode 100644 index 00000000..e3ca5680 Binary files /dev/null and b/public/textures/chipped/cobbled_ancient_debris.png differ diff --git a/public/textures/chipped/cobbled_andesite.png b/public/textures/chipped/cobbled_andesite.png new file mode 100644 index 00000000..4d7c6155 Binary files /dev/null and b/public/textures/chipped/cobbled_andesite.png differ diff --git a/public/textures/chipped/cobbled_basalt.png b/public/textures/chipped/cobbled_basalt.png new file mode 100644 index 00000000..d003c5fe Binary files /dev/null and b/public/textures/chipped/cobbled_basalt.png differ diff --git a/public/textures/chipped/cobbled_blackstone.png b/public/textures/chipped/cobbled_blackstone.png new file mode 100644 index 00000000..7e1730ae Binary files /dev/null and b/public/textures/chipped/cobbled_blackstone.png differ diff --git a/public/textures/chipped/cobbled_blue_ice.png b/public/textures/chipped/cobbled_blue_ice.png new file mode 100644 index 00000000..a815e5c8 Binary files /dev/null and b/public/textures/chipped/cobbled_blue_ice.png differ diff --git a/public/textures/chipped/cobbled_borderless_bricks.png b/public/textures/chipped/cobbled_borderless_bricks.png new file mode 100644 index 00000000..163371bd Binary files /dev/null and b/public/textures/chipped/cobbled_borderless_bricks.png differ diff --git a/public/textures/chipped/cobbled_bricks.png b/public/textures/chipped/cobbled_bricks.png new file mode 100644 index 00000000..163371bd Binary files /dev/null and b/public/textures/chipped/cobbled_bricks.png differ diff --git a/public/textures/chipped/cobbled_calcite.png b/public/textures/chipped/cobbled_calcite.png new file mode 100644 index 00000000..ef3d73cc Binary files /dev/null and b/public/textures/chipped/cobbled_calcite.png differ diff --git a/public/textures/chipped/cobbled_clay.png b/public/textures/chipped/cobbled_clay.png new file mode 100644 index 00000000..ed2edad0 Binary files /dev/null and b/public/textures/chipped/cobbled_clay.png differ diff --git a/public/textures/chipped/cobbled_coal_block.png b/public/textures/chipped/cobbled_coal_block.png new file mode 100644 index 00000000..9c8b5d89 Binary files /dev/null and b/public/textures/chipped/cobbled_coal_block.png differ diff --git a/public/textures/chipped/cobbled_cobblestone.png b/public/textures/chipped/cobbled_cobblestone.png new file mode 100644 index 00000000..d57dd7b1 Binary files /dev/null and b/public/textures/chipped/cobbled_cobblestone.png differ diff --git a/public/textures/chipped/cobbled_crying_obsidian.png b/public/textures/chipped/cobbled_crying_obsidian.png new file mode 100644 index 00000000..83dbc941 Binary files /dev/null and b/public/textures/chipped/cobbled_crying_obsidian.png differ diff --git a/public/textures/chipped/cobbled_dark_prismarine.png b/public/textures/chipped/cobbled_dark_prismarine.png new file mode 100644 index 00000000..a294bf80 Binary files /dev/null and b/public/textures/chipped/cobbled_dark_prismarine.png differ diff --git a/public/textures/chipped/cobbled_diorite.png b/public/textures/chipped/cobbled_diorite.png new file mode 100644 index 00000000..3f9c2fa6 Binary files /dev/null and b/public/textures/chipped/cobbled_diorite.png differ diff --git a/public/textures/chipped/cobbled_dirt.png b/public/textures/chipped/cobbled_dirt.png new file mode 100644 index 00000000..82904051 Binary files /dev/null and b/public/textures/chipped/cobbled_dirt.png differ diff --git a/public/textures/chipped/cobbled_dripstone_block.png b/public/textures/chipped/cobbled_dripstone_block.png new file mode 100644 index 00000000..eefad296 Binary files /dev/null and b/public/textures/chipped/cobbled_dripstone_block.png differ diff --git a/public/textures/chipped/cobbled_end_stone.png b/public/textures/chipped/cobbled_end_stone.png new file mode 100644 index 00000000..933ed15a Binary files /dev/null and b/public/textures/chipped/cobbled_end_stone.png differ diff --git a/public/textures/chipped/cobbled_gilded_blackstone.png b/public/textures/chipped/cobbled_gilded_blackstone.png new file mode 100644 index 00000000..8881627b Binary files /dev/null and b/public/textures/chipped/cobbled_gilded_blackstone.png differ diff --git a/public/textures/chipped/cobbled_granite.png b/public/textures/chipped/cobbled_granite.png new file mode 100644 index 00000000..6c71b99c Binary files /dev/null and b/public/textures/chipped/cobbled_granite.png differ diff --git a/public/textures/chipped/cobbled_ice.png b/public/textures/chipped/cobbled_ice.png new file mode 100644 index 00000000..f1ce1755 Binary files /dev/null and b/public/textures/chipped/cobbled_ice.png differ diff --git a/public/textures/chipped/cobbled_lapis_block.png b/public/textures/chipped/cobbled_lapis_block.png new file mode 100644 index 00000000..53e36f1c Binary files /dev/null and b/public/textures/chipped/cobbled_lapis_block.png differ diff --git a/public/textures/chipped/cobbled_lodestone.png b/public/textures/chipped/cobbled_lodestone.png new file mode 100644 index 00000000..97a3988c Binary files /dev/null and b/public/textures/chipped/cobbled_lodestone.png differ diff --git a/public/textures/chipped/cobbled_magma_block.png b/public/textures/chipped/cobbled_magma_block.png new file mode 100644 index 00000000..0603c531 Binary files /dev/null and b/public/textures/chipped/cobbled_magma_block.png differ diff --git a/public/textures/chipped/cobbled_mossy_cobblestone.png b/public/textures/chipped/cobbled_mossy_cobblestone.png new file mode 100644 index 00000000..0ddccff4 Binary files /dev/null and b/public/textures/chipped/cobbled_mossy_cobblestone.png differ diff --git a/public/textures/chipped/cobbled_mossy_stone_bricks.png b/public/textures/chipped/cobbled_mossy_stone_bricks.png new file mode 100644 index 00000000..bb67acde Binary files /dev/null and b/public/textures/chipped/cobbled_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/cobbled_nether_bricks.png b/public/textures/chipped/cobbled_nether_bricks.png new file mode 100644 index 00000000..d1b3789a Binary files /dev/null and b/public/textures/chipped/cobbled_nether_bricks.png differ diff --git a/public/textures/chipped/cobbled_netherrack.png b/public/textures/chipped/cobbled_netherrack.png new file mode 100644 index 00000000..2d09f59f Binary files /dev/null and b/public/textures/chipped/cobbled_netherrack.png differ diff --git a/public/textures/chipped/cobbled_obsidian.png b/public/textures/chipped/cobbled_obsidian.png new file mode 100644 index 00000000..109698c7 Binary files /dev/null and b/public/textures/chipped/cobbled_obsidian.png differ diff --git a/public/textures/chipped/cobbled_packed_ice.png b/public/textures/chipped/cobbled_packed_ice.png new file mode 100644 index 00000000..951f6e0d Binary files /dev/null and b/public/textures/chipped/cobbled_packed_ice.png differ diff --git a/public/textures/chipped/cobbled_prismarine.png b/public/textures/chipped/cobbled_prismarine.png new file mode 100644 index 00000000..ffba4f67 Binary files /dev/null and b/public/textures/chipped/cobbled_prismarine.png differ diff --git a/public/textures/chipped/cobbled_purpur_block.png b/public/textures/chipped/cobbled_purpur_block.png new file mode 100644 index 00000000..e08ec099 Binary files /dev/null and b/public/textures/chipped/cobbled_purpur_block.png differ diff --git a/public/textures/chipped/cobbled_quartz_block.png b/public/textures/chipped/cobbled_quartz_block.png new file mode 100644 index 00000000..677e62e6 Binary files /dev/null and b/public/textures/chipped/cobbled_quartz_block.png differ diff --git a/public/textures/chipped/cobbled_raw_copper_block.png b/public/textures/chipped/cobbled_raw_copper_block.png new file mode 100644 index 00000000..f34c8026 Binary files /dev/null and b/public/textures/chipped/cobbled_raw_copper_block.png differ diff --git a/public/textures/chipped/cobbled_raw_gold_block.png b/public/textures/chipped/cobbled_raw_gold_block.png new file mode 100644 index 00000000..d6222477 Binary files /dev/null and b/public/textures/chipped/cobbled_raw_gold_block.png differ diff --git a/public/textures/chipped/cobbled_raw_iron_block.png b/public/textures/chipped/cobbled_raw_iron_block.png new file mode 100644 index 00000000..8fa0df6e Binary files /dev/null and b/public/textures/chipped/cobbled_raw_iron_block.png differ diff --git a/public/textures/chipped/cobbled_red_nether_bricks.png b/public/textures/chipped/cobbled_red_nether_bricks.png new file mode 100644 index 00000000..e0b9f72b Binary files /dev/null and b/public/textures/chipped/cobbled_red_nether_bricks.png differ diff --git a/public/textures/chipped/cobbled_red_sandstone.png b/public/textures/chipped/cobbled_red_sandstone.png new file mode 100644 index 00000000..febe1581 Binary files /dev/null and b/public/textures/chipped/cobbled_red_sandstone.png differ diff --git a/public/textures/chipped/cobbled_redstone_block.png b/public/textures/chipped/cobbled_redstone_block.png new file mode 100644 index 00000000..9c3de444 Binary files /dev/null and b/public/textures/chipped/cobbled_redstone_block.png differ diff --git a/public/textures/chipped/cobbled_sandstone.png b/public/textures/chipped/cobbled_sandstone.png new file mode 100644 index 00000000..67156c65 Binary files /dev/null and b/public/textures/chipped/cobbled_sandstone.png differ diff --git a/public/textures/chipped/cobbled_smooth_stone.png b/public/textures/chipped/cobbled_smooth_stone.png new file mode 100644 index 00000000..0d1b9176 Binary files /dev/null and b/public/textures/chipped/cobbled_smooth_stone.png differ diff --git a/public/textures/chipped/cobbled_snow_block.png b/public/textures/chipped/cobbled_snow_block.png new file mode 100644 index 00000000..ad2f0042 Binary files /dev/null and b/public/textures/chipped/cobbled_snow_block.png differ diff --git a/public/textures/chipped/cobbled_stone.png b/public/textures/chipped/cobbled_stone.png new file mode 100644 index 00000000..10050df8 Binary files /dev/null and b/public/textures/chipped/cobbled_stone.png differ diff --git a/public/textures/chipped/cobbled_tuff.png b/public/textures/chipped/cobbled_tuff.png new file mode 100644 index 00000000..a5bbe357 Binary files /dev/null and b/public/textures/chipped/cobbled_tuff.png differ diff --git a/public/textures/chipped/cobblestone_bricks.png b/public/textures/chipped/cobblestone_bricks.png new file mode 100644 index 00000000..775d34c9 Binary files /dev/null and b/public/textures/chipped/cobblestone_bricks.png differ diff --git a/public/textures/chipped/cobblestone_mini_tiles.png b/public/textures/chipped/cobblestone_mini_tiles.png new file mode 100644 index 00000000..53ab13fc Binary files /dev/null and b/public/textures/chipped/cobblestone_mini_tiles.png differ diff --git a/public/textures/chipped/cobblestone_pillar.png b/public/textures/chipped/cobblestone_pillar.png new file mode 100644 index 00000000..d885438e Binary files /dev/null and b/public/textures/chipped/cobblestone_pillar.png differ diff --git a/public/textures/chipped/cobblestone_pillar_top.png b/public/textures/chipped/cobblestone_pillar_top.png new file mode 100644 index 00000000..18085201 Binary files /dev/null and b/public/textures/chipped/cobblestone_pillar_top.png differ diff --git a/public/textures/chipped/cobblestone_scales.png b/public/textures/chipped/cobblestone_scales.png new file mode 100644 index 00000000..81c6f0f4 Binary files /dev/null and b/public/textures/chipped/cobblestone_scales.png differ diff --git a/public/textures/chipped/cobweb_acacia_trapdoor.png b/public/textures/chipped/cobweb_acacia_trapdoor.png new file mode 100644 index 00000000..13d32ad0 Binary files /dev/null and b/public/textures/chipped/cobweb_acacia_trapdoor.png differ diff --git a/public/textures/chipped/cobweb_arch.png b/public/textures/chipped/cobweb_arch.png new file mode 100644 index 00000000..f7949d25 Binary files /dev/null and b/public/textures/chipped/cobweb_arch.png differ diff --git a/public/textures/chipped/cobweb_bamboo_trapdoor.png b/public/textures/chipped/cobweb_bamboo_trapdoor.png new file mode 100644 index 00000000..d288f992 Binary files /dev/null and b/public/textures/chipped/cobweb_bamboo_trapdoor.png differ diff --git a/public/textures/chipped/cobweb_birch_trapdoor.png b/public/textures/chipped/cobweb_birch_trapdoor.png new file mode 100644 index 00000000..d13e4c24 Binary files /dev/null and b/public/textures/chipped/cobweb_birch_trapdoor.png differ diff --git a/public/textures/chipped/cobweb_cherry_trapdoor.png b/public/textures/chipped/cobweb_cherry_trapdoor.png new file mode 100644 index 00000000..dc8e2f03 Binary files /dev/null and b/public/textures/chipped/cobweb_cherry_trapdoor.png differ diff --git a/public/textures/chipped/cobweb_crimson_trapdoor.png b/public/textures/chipped/cobweb_crimson_trapdoor.png new file mode 100644 index 00000000..6926e33a Binary files /dev/null and b/public/textures/chipped/cobweb_crimson_trapdoor.png differ diff --git a/public/textures/chipped/cobweb_dark_oak_trapdoor.png b/public/textures/chipped/cobweb_dark_oak_trapdoor.png new file mode 100644 index 00000000..40128680 Binary files /dev/null and b/public/textures/chipped/cobweb_dark_oak_trapdoor.png differ diff --git a/public/textures/chipped/cobweb_floor.png b/public/textures/chipped/cobweb_floor.png new file mode 100644 index 00000000..c43426d2 Binary files /dev/null and b/public/textures/chipped/cobweb_floor.png differ diff --git a/public/textures/chipped/cobweb_jungle_trapdoor.png b/public/textures/chipped/cobweb_jungle_trapdoor.png new file mode 100644 index 00000000..5645f974 Binary files /dev/null and b/public/textures/chipped/cobweb_jungle_trapdoor.png differ diff --git a/public/textures/chipped/cobweb_mangrove_trapdoor.png b/public/textures/chipped/cobweb_mangrove_trapdoor.png new file mode 100644 index 00000000..448adbab Binary files /dev/null and b/public/textures/chipped/cobweb_mangrove_trapdoor.png differ diff --git a/public/textures/chipped/cobweb_oak_trapdoor.png b/public/textures/chipped/cobweb_oak_trapdoor.png new file mode 100644 index 00000000..7d7b677a Binary files /dev/null and b/public/textures/chipped/cobweb_oak_trapdoor.png differ diff --git a/public/textures/chipped/cobweb_spruce_trapdoor.png b/public/textures/chipped/cobweb_spruce_trapdoor.png new file mode 100644 index 00000000..1454eb7f Binary files /dev/null and b/public/textures/chipped/cobweb_spruce_trapdoor.png differ diff --git a/public/textures/chipped/cobweb_warped_trapdoor.png b/public/textures/chipped/cobweb_warped_trapdoor.png new file mode 100644 index 00000000..9d3d730f Binary files /dev/null and b/public/textures/chipped/cobweb_warped_trapdoor.png differ diff --git a/public/textures/chipped/compact_dried_kelp_block.png b/public/textures/chipped/compact_dried_kelp_block.png new file mode 100644 index 00000000..3248e079 Binary files /dev/null and b/public/textures/chipped/compact_dried_kelp_block.png differ diff --git a/public/textures/chipped/copper_barrel.png b/public/textures/chipped/copper_barrel.png new file mode 100644 index 00000000..42dba252 Binary files /dev/null and b/public/textures/chipped/copper_barrel.png differ diff --git a/public/textures/chipped/cornered_acacia_planks.png b/public/textures/chipped/cornered_acacia_planks.png new file mode 100644 index 00000000..3cb037ee Binary files /dev/null and b/public/textures/chipped/cornered_acacia_planks.png differ diff --git a/public/textures/chipped/cornered_bamboo_planks.png b/public/textures/chipped/cornered_bamboo_planks.png new file mode 100644 index 00000000..ff859035 Binary files /dev/null and b/public/textures/chipped/cornered_bamboo_planks.png differ diff --git a/public/textures/chipped/cornered_birch_planks.png b/public/textures/chipped/cornered_birch_planks.png new file mode 100644 index 00000000..594e5cd4 Binary files /dev/null and b/public/textures/chipped/cornered_birch_planks.png differ diff --git a/public/textures/chipped/cornered_black_carpet.png b/public/textures/chipped/cornered_black_carpet.png new file mode 100644 index 00000000..550ba975 Binary files /dev/null and b/public/textures/chipped/cornered_black_carpet.png differ diff --git a/public/textures/chipped/cornered_black_wool.png b/public/textures/chipped/cornered_black_wool.png new file mode 100644 index 00000000..b3257dfb Binary files /dev/null and b/public/textures/chipped/cornered_black_wool.png differ diff --git a/public/textures/chipped/cornered_blue_carpet.png b/public/textures/chipped/cornered_blue_carpet.png new file mode 100644 index 00000000..ee47e281 Binary files /dev/null and b/public/textures/chipped/cornered_blue_carpet.png differ diff --git a/public/textures/chipped/cornered_blue_wool.png b/public/textures/chipped/cornered_blue_wool.png new file mode 100644 index 00000000..a6a5ac4f Binary files /dev/null and b/public/textures/chipped/cornered_blue_wool.png differ diff --git a/public/textures/chipped/cornered_brown_carpet.png b/public/textures/chipped/cornered_brown_carpet.png new file mode 100644 index 00000000..76252d24 Binary files /dev/null and b/public/textures/chipped/cornered_brown_carpet.png differ diff --git a/public/textures/chipped/cornered_brown_wool.png b/public/textures/chipped/cornered_brown_wool.png new file mode 100644 index 00000000..9c9daf59 Binary files /dev/null and b/public/textures/chipped/cornered_brown_wool.png differ diff --git a/public/textures/chipped/cornered_cherry_planks.png b/public/textures/chipped/cornered_cherry_planks.png new file mode 100644 index 00000000..c3f9038c Binary files /dev/null and b/public/textures/chipped/cornered_cherry_planks.png differ diff --git a/public/textures/chipped/cornered_crimson_planks.png b/public/textures/chipped/cornered_crimson_planks.png new file mode 100644 index 00000000..9017f414 Binary files /dev/null and b/public/textures/chipped/cornered_crimson_planks.png differ diff --git a/public/textures/chipped/cornered_cyan_carpet.png b/public/textures/chipped/cornered_cyan_carpet.png new file mode 100644 index 00000000..b2f6658b Binary files /dev/null and b/public/textures/chipped/cornered_cyan_carpet.png differ diff --git a/public/textures/chipped/cornered_cyan_wool.png b/public/textures/chipped/cornered_cyan_wool.png new file mode 100644 index 00000000..dcffd2ff Binary files /dev/null and b/public/textures/chipped/cornered_cyan_wool.png differ diff --git a/public/textures/chipped/cornered_dark_oak_planks.png b/public/textures/chipped/cornered_dark_oak_planks.png new file mode 100644 index 00000000..b1e244be Binary files /dev/null and b/public/textures/chipped/cornered_dark_oak_planks.png differ diff --git a/public/textures/chipped/cornered_gray_carpet.png b/public/textures/chipped/cornered_gray_carpet.png new file mode 100644 index 00000000..74f5c397 Binary files /dev/null and b/public/textures/chipped/cornered_gray_carpet.png differ diff --git a/public/textures/chipped/cornered_gray_wool.png b/public/textures/chipped/cornered_gray_wool.png new file mode 100644 index 00000000..d9af263e Binary files /dev/null and b/public/textures/chipped/cornered_gray_wool.png differ diff --git a/public/textures/chipped/cornered_green_carpet.png b/public/textures/chipped/cornered_green_carpet.png new file mode 100644 index 00000000..ec853d79 Binary files /dev/null and b/public/textures/chipped/cornered_green_carpet.png differ diff --git a/public/textures/chipped/cornered_green_wool.png b/public/textures/chipped/cornered_green_wool.png new file mode 100644 index 00000000..de09f0f4 Binary files /dev/null and b/public/textures/chipped/cornered_green_wool.png differ diff --git a/public/textures/chipped/cornered_jungle_planks.png b/public/textures/chipped/cornered_jungle_planks.png new file mode 100644 index 00000000..02cd9dc6 Binary files /dev/null and b/public/textures/chipped/cornered_jungle_planks.png differ diff --git a/public/textures/chipped/cornered_light_blue_carpet.png b/public/textures/chipped/cornered_light_blue_carpet.png new file mode 100644 index 00000000..31bd2fec Binary files /dev/null and b/public/textures/chipped/cornered_light_blue_carpet.png differ diff --git a/public/textures/chipped/cornered_light_blue_wool.png b/public/textures/chipped/cornered_light_blue_wool.png new file mode 100644 index 00000000..d61ac8ca Binary files /dev/null and b/public/textures/chipped/cornered_light_blue_wool.png differ diff --git a/public/textures/chipped/cornered_light_gray_carpet.png b/public/textures/chipped/cornered_light_gray_carpet.png new file mode 100644 index 00000000..31a87816 Binary files /dev/null and b/public/textures/chipped/cornered_light_gray_carpet.png differ diff --git a/public/textures/chipped/cornered_light_gray_wool.png b/public/textures/chipped/cornered_light_gray_wool.png new file mode 100644 index 00000000..add0f49c Binary files /dev/null and b/public/textures/chipped/cornered_light_gray_wool.png differ diff --git a/public/textures/chipped/cornered_lime_carpet.png b/public/textures/chipped/cornered_lime_carpet.png new file mode 100644 index 00000000..ebc15ed9 Binary files /dev/null and b/public/textures/chipped/cornered_lime_carpet.png differ diff --git a/public/textures/chipped/cornered_lime_wool.png b/public/textures/chipped/cornered_lime_wool.png new file mode 100644 index 00000000..b7549152 Binary files /dev/null and b/public/textures/chipped/cornered_lime_wool.png differ diff --git a/public/textures/chipped/cornered_magenta_carpet.png b/public/textures/chipped/cornered_magenta_carpet.png new file mode 100644 index 00000000..c51d1577 Binary files /dev/null and b/public/textures/chipped/cornered_magenta_carpet.png differ diff --git a/public/textures/chipped/cornered_magenta_wool.png b/public/textures/chipped/cornered_magenta_wool.png new file mode 100644 index 00000000..1619b5f6 Binary files /dev/null and b/public/textures/chipped/cornered_magenta_wool.png differ diff --git a/public/textures/chipped/cornered_mangrove_planks.png b/public/textures/chipped/cornered_mangrove_planks.png new file mode 100644 index 00000000..b8dcd4ff Binary files /dev/null and b/public/textures/chipped/cornered_mangrove_planks.png differ diff --git a/public/textures/chipped/cornered_oak_planks.png b/public/textures/chipped/cornered_oak_planks.png new file mode 100644 index 00000000..ecc22e5e Binary files /dev/null and b/public/textures/chipped/cornered_oak_planks.png differ diff --git a/public/textures/chipped/cornered_orange_carpet.png b/public/textures/chipped/cornered_orange_carpet.png new file mode 100644 index 00000000..d731731a Binary files /dev/null and b/public/textures/chipped/cornered_orange_carpet.png differ diff --git a/public/textures/chipped/cornered_orange_wool.png b/public/textures/chipped/cornered_orange_wool.png new file mode 100644 index 00000000..ff49ba94 Binary files /dev/null and b/public/textures/chipped/cornered_orange_wool.png differ diff --git a/public/textures/chipped/cornered_pink_carpet.png b/public/textures/chipped/cornered_pink_carpet.png new file mode 100644 index 00000000..6092d4df Binary files /dev/null and b/public/textures/chipped/cornered_pink_carpet.png differ diff --git a/public/textures/chipped/cornered_pink_wool.png b/public/textures/chipped/cornered_pink_wool.png new file mode 100644 index 00000000..b2f5f1b6 Binary files /dev/null and b/public/textures/chipped/cornered_pink_wool.png differ diff --git a/public/textures/chipped/cornered_purple_carpet.png b/public/textures/chipped/cornered_purple_carpet.png new file mode 100644 index 00000000..b2a14e43 Binary files /dev/null and b/public/textures/chipped/cornered_purple_carpet.png differ diff --git a/public/textures/chipped/cornered_purple_wool.png b/public/textures/chipped/cornered_purple_wool.png new file mode 100644 index 00000000..0f54a6b7 Binary files /dev/null and b/public/textures/chipped/cornered_purple_wool.png differ diff --git a/public/textures/chipped/cornered_red_carpet.png b/public/textures/chipped/cornered_red_carpet.png new file mode 100644 index 00000000..6b810d51 Binary files /dev/null and b/public/textures/chipped/cornered_red_carpet.png differ diff --git a/public/textures/chipped/cornered_red_wool.png b/public/textures/chipped/cornered_red_wool.png new file mode 100644 index 00000000..746bb90e Binary files /dev/null and b/public/textures/chipped/cornered_red_wool.png differ diff --git a/public/textures/chipped/cornered_spruce_planks.png b/public/textures/chipped/cornered_spruce_planks.png new file mode 100644 index 00000000..a227a9ef Binary files /dev/null and b/public/textures/chipped/cornered_spruce_planks.png differ diff --git a/public/textures/chipped/cornered_warped_planks.png b/public/textures/chipped/cornered_warped_planks.png new file mode 100644 index 00000000..709079d4 Binary files /dev/null and b/public/textures/chipped/cornered_warped_planks.png differ diff --git a/public/textures/chipped/cornered_white_carpet.png b/public/textures/chipped/cornered_white_carpet.png new file mode 100644 index 00000000..77d12e23 Binary files /dev/null and b/public/textures/chipped/cornered_white_carpet.png differ diff --git a/public/textures/chipped/cornered_white_wool.png b/public/textures/chipped/cornered_white_wool.png new file mode 100644 index 00000000..416ea68c Binary files /dev/null and b/public/textures/chipped/cornered_white_wool.png differ diff --git a/public/textures/chipped/cornered_yellow_carpet.png b/public/textures/chipped/cornered_yellow_carpet.png new file mode 100644 index 00000000..ecce8576 Binary files /dev/null and b/public/textures/chipped/cornered_yellow_carpet.png differ diff --git a/public/textures/chipped/cornered_yellow_wool.png b/public/textures/chipped/cornered_yellow_wool.png new file mode 100644 index 00000000..fff6b611 Binary files /dev/null and b/public/textures/chipped/cornered_yellow_wool.png differ diff --git a/public/textures/chipped/corny_nether_sprouts.png b/public/textures/chipped/corny_nether_sprouts.png new file mode 100644 index 00000000..5bedf78d Binary files /dev/null and b/public/textures/chipped/corny_nether_sprouts.png differ diff --git a/public/textures/chipped/corrupted_nether_sprouts.png b/public/textures/chipped/corrupted_nether_sprouts.png new file mode 100644 index 00000000..d993b04e Binary files /dev/null and b/public/textures/chipped/corrupted_nether_sprouts.png differ diff --git a/public/textures/chipped/cracked_amethyst_block_bricks.png b/public/textures/chipped/cracked_amethyst_block_bricks.png new file mode 100644 index 00000000..3954582a Binary files /dev/null and b/public/textures/chipped/cracked_amethyst_block_bricks.png differ diff --git a/public/textures/chipped/cracked_ancient_debris_bricks.png b/public/textures/chipped/cracked_ancient_debris_bricks.png new file mode 100644 index 00000000..7ae85f2b Binary files /dev/null and b/public/textures/chipped/cracked_ancient_debris_bricks.png differ diff --git a/public/textures/chipped/cracked_andesite_bricks.png b/public/textures/chipped/cracked_andesite_bricks.png new file mode 100644 index 00000000..3de13980 Binary files /dev/null and b/public/textures/chipped/cracked_andesite_bricks.png differ diff --git a/public/textures/chipped/cracked_basalt_bricks.png b/public/textures/chipped/cracked_basalt_bricks.png new file mode 100644 index 00000000..9ad78963 Binary files /dev/null and b/public/textures/chipped/cracked_basalt_bricks.png differ diff --git a/public/textures/chipped/cracked_blue_ice_bricks.png b/public/textures/chipped/cracked_blue_ice_bricks.png new file mode 100644 index 00000000..a482d9a2 Binary files /dev/null and b/public/textures/chipped/cracked_blue_ice_bricks.png differ diff --git a/public/textures/chipped/cracked_bone_block.png b/public/textures/chipped/cracked_bone_block.png new file mode 100644 index 00000000..91fb181b Binary files /dev/null and b/public/textures/chipped/cracked_bone_block.png differ diff --git a/public/textures/chipped/cracked_borderless_bricks_bricks.png b/public/textures/chipped/cracked_borderless_bricks_bricks.png new file mode 100644 index 00000000..972cbdd1 Binary files /dev/null and b/public/textures/chipped/cracked_borderless_bricks_bricks.png differ diff --git a/public/textures/chipped/cracked_bricks_bricks.png b/public/textures/chipped/cracked_bricks_bricks.png new file mode 100644 index 00000000..6fbbc79b Binary files /dev/null and b/public/textures/chipped/cracked_bricks_bricks.png differ diff --git a/public/textures/chipped/cracked_calcite_bricks.png b/public/textures/chipped/cracked_calcite_bricks.png new file mode 100644 index 00000000..9d8c7256 Binary files /dev/null and b/public/textures/chipped/cracked_calcite_bricks.png differ diff --git a/public/textures/chipped/cracked_clay_bricks.png b/public/textures/chipped/cracked_clay_bricks.png new file mode 100644 index 00000000..1b27fbf4 Binary files /dev/null and b/public/textures/chipped/cracked_clay_bricks.png differ diff --git a/public/textures/chipped/cracked_coal_block_bricks.png b/public/textures/chipped/cracked_coal_block_bricks.png new file mode 100644 index 00000000..3a219f66 Binary files /dev/null and b/public/textures/chipped/cracked_coal_block_bricks.png differ diff --git a/public/textures/chipped/cracked_cobblestone_bricks.png b/public/textures/chipped/cracked_cobblestone_bricks.png new file mode 100644 index 00000000..8bb13d1d Binary files /dev/null and b/public/textures/chipped/cracked_cobblestone_bricks.png differ diff --git a/public/textures/chipped/cracked_crying_obsidian_bricks.png b/public/textures/chipped/cracked_crying_obsidian_bricks.png new file mode 100644 index 00000000..2d29e3eb Binary files /dev/null and b/public/textures/chipped/cracked_crying_obsidian_bricks.png differ diff --git a/public/textures/chipped/cracked_dark_prismarine_bricks.png b/public/textures/chipped/cracked_dark_prismarine_bricks.png new file mode 100644 index 00000000..ba01b54c Binary files /dev/null and b/public/textures/chipped/cracked_dark_prismarine_bricks.png differ diff --git a/public/textures/chipped/cracked_diorite_bricks.png b/public/textures/chipped/cracked_diorite_bricks.png new file mode 100644 index 00000000..62edb853 Binary files /dev/null and b/public/textures/chipped/cracked_diorite_bricks.png differ diff --git a/public/textures/chipped/cracked_dirt_bricks.png b/public/textures/chipped/cracked_dirt_bricks.png new file mode 100644 index 00000000..91b78590 Binary files /dev/null and b/public/textures/chipped/cracked_dirt_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_amethyst_block_bricks.png b/public/textures/chipped/cracked_disordered_amethyst_block_bricks.png new file mode 100644 index 00000000..0950cc42 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_amethyst_block_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_ancient_debris_bricks.png b/public/textures/chipped/cracked_disordered_ancient_debris_bricks.png new file mode 100644 index 00000000..f2aab58d Binary files /dev/null and b/public/textures/chipped/cracked_disordered_ancient_debris_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_andesite_bricks.png b/public/textures/chipped/cracked_disordered_andesite_bricks.png new file mode 100644 index 00000000..62f7b85c Binary files /dev/null and b/public/textures/chipped/cracked_disordered_andesite_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_basalt_bricks.png b/public/textures/chipped/cracked_disordered_basalt_bricks.png new file mode 100644 index 00000000..4a8d1a7a Binary files /dev/null and b/public/textures/chipped/cracked_disordered_basalt_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_blackstone_bricks.png b/public/textures/chipped/cracked_disordered_blackstone_bricks.png new file mode 100644 index 00000000..89dc6693 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_blackstone_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_blue_ice_bricks.png b/public/textures/chipped/cracked_disordered_blue_ice_bricks.png new file mode 100644 index 00000000..c58df6ed Binary files /dev/null and b/public/textures/chipped/cracked_disordered_blue_ice_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_borderless_bricks_bricks.png b/public/textures/chipped/cracked_disordered_borderless_bricks_bricks.png new file mode 100644 index 00000000..413b49fe Binary files /dev/null and b/public/textures/chipped/cracked_disordered_borderless_bricks_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_bricks_bricks.png b/public/textures/chipped/cracked_disordered_bricks_bricks.png new file mode 100644 index 00000000..a562950f Binary files /dev/null and b/public/textures/chipped/cracked_disordered_bricks_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_calcite_bricks.png b/public/textures/chipped/cracked_disordered_calcite_bricks.png new file mode 100644 index 00000000..c59b354a Binary files /dev/null and b/public/textures/chipped/cracked_disordered_calcite_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_clay_bricks.png b/public/textures/chipped/cracked_disordered_clay_bricks.png new file mode 100644 index 00000000..767102fd Binary files /dev/null and b/public/textures/chipped/cracked_disordered_clay_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_coal_block_bricks.png b/public/textures/chipped/cracked_disordered_coal_block_bricks.png new file mode 100644 index 00000000..519c6bf1 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_coal_block_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_cobblestone_bricks.png b/public/textures/chipped/cracked_disordered_cobblestone_bricks.png new file mode 100644 index 00000000..9e8fe1d6 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_cobblestone_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_crying_obsidian_bricks.png b/public/textures/chipped/cracked_disordered_crying_obsidian_bricks.png new file mode 100644 index 00000000..00d3127e Binary files /dev/null and b/public/textures/chipped/cracked_disordered_crying_obsidian_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_dark_prismarine_bricks.png b/public/textures/chipped/cracked_disordered_dark_prismarine_bricks.png new file mode 100644 index 00000000..2e361abe Binary files /dev/null and b/public/textures/chipped/cracked_disordered_dark_prismarine_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_deepslate_bricks.png b/public/textures/chipped/cracked_disordered_deepslate_bricks.png new file mode 100644 index 00000000..80f22f64 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_deepslate_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_diorite_bricks.png b/public/textures/chipped/cracked_disordered_diorite_bricks.png new file mode 100644 index 00000000..8446489d Binary files /dev/null and b/public/textures/chipped/cracked_disordered_diorite_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_dirt_bricks.png b/public/textures/chipped/cracked_disordered_dirt_bricks.png new file mode 100644 index 00000000..4e9da2c5 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_dirt_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_dripstone_block_bricks.png b/public/textures/chipped/cracked_disordered_dripstone_block_bricks.png new file mode 100644 index 00000000..4a4b5956 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_dripstone_block_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_end_stone_bricks.png b/public/textures/chipped/cracked_disordered_end_stone_bricks.png new file mode 100644 index 00000000..0445a9f5 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_end_stone_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_gilded_blackstone_bricks.png b/public/textures/chipped/cracked_disordered_gilded_blackstone_bricks.png new file mode 100644 index 00000000..0e7e6cec Binary files /dev/null and b/public/textures/chipped/cracked_disordered_gilded_blackstone_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_granite_bricks.png b/public/textures/chipped/cracked_disordered_granite_bricks.png new file mode 100644 index 00000000..bca960a5 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_granite_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_ice_bricks.png b/public/textures/chipped/cracked_disordered_ice_bricks.png new file mode 100644 index 00000000..67ea3aab Binary files /dev/null and b/public/textures/chipped/cracked_disordered_ice_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_lapis_block_bricks.png b/public/textures/chipped/cracked_disordered_lapis_block_bricks.png new file mode 100644 index 00000000..e13934d1 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_lapis_block_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_lodestone_bricks.png b/public/textures/chipped/cracked_disordered_lodestone_bricks.png new file mode 100644 index 00000000..482704ce Binary files /dev/null and b/public/textures/chipped/cracked_disordered_lodestone_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_magma_block_bricks.png b/public/textures/chipped/cracked_disordered_magma_block_bricks.png new file mode 100644 index 00000000..f8a27016 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_magma_block_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_mossy_cobblestone_bricks.png b/public/textures/chipped/cracked_disordered_mossy_cobblestone_bricks.png new file mode 100644 index 00000000..f1690483 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_mossy_cobblestone_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_mossy_stone_bricks_bricks.png b/public/textures/chipped/cracked_disordered_mossy_stone_bricks_bricks.png new file mode 100644 index 00000000..b2184b50 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_mossy_stone_bricks_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_nether_bricks_bricks.png b/public/textures/chipped/cracked_disordered_nether_bricks_bricks.png new file mode 100644 index 00000000..27799fc9 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_netherrack_bricks.png b/public/textures/chipped/cracked_disordered_netherrack_bricks.png new file mode 100644 index 00000000..c534ae0c Binary files /dev/null and b/public/textures/chipped/cracked_disordered_netherrack_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_obsidian_bricks.png b/public/textures/chipped/cracked_disordered_obsidian_bricks.png new file mode 100644 index 00000000..b34823c6 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_obsidian_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_packed_ice_bricks.png b/public/textures/chipped/cracked_disordered_packed_ice_bricks.png new file mode 100644 index 00000000..e67f4cc9 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_packed_ice_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_prismarine_bricks.png b/public/textures/chipped/cracked_disordered_prismarine_bricks.png new file mode 100644 index 00000000..b3234494 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_prismarine_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_purpur_block_bricks.png b/public/textures/chipped/cracked_disordered_purpur_block_bricks.png new file mode 100644 index 00000000..b7c3bbb0 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_purpur_block_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_quartz_block_bricks.png b/public/textures/chipped/cracked_disordered_quartz_block_bricks.png new file mode 100644 index 00000000..a1cc6bb3 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_quartz_block_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_raw_copper_block_bricks.png b/public/textures/chipped/cracked_disordered_raw_copper_block_bricks.png new file mode 100644 index 00000000..7cbcd829 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_raw_copper_block_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_raw_gold_block_bricks.png b/public/textures/chipped/cracked_disordered_raw_gold_block_bricks.png new file mode 100644 index 00000000..6210ddc6 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_raw_gold_block_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_raw_iron_block_bricks.png b/public/textures/chipped/cracked_disordered_raw_iron_block_bricks.png new file mode 100644 index 00000000..3c5f70f9 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_raw_iron_block_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_red_nether_bricks_bricks.png b/public/textures/chipped/cracked_disordered_red_nether_bricks_bricks.png new file mode 100644 index 00000000..ebb82def Binary files /dev/null and b/public/textures/chipped/cracked_disordered_red_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_red_sandstone_bricks.png b/public/textures/chipped/cracked_disordered_red_sandstone_bricks.png new file mode 100644 index 00000000..1c4e6371 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_red_sandstone_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_redstone_block_bricks.png b/public/textures/chipped/cracked_disordered_redstone_block_bricks.png new file mode 100644 index 00000000..893ea088 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_redstone_block_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_sandstone_bricks.png b/public/textures/chipped/cracked_disordered_sandstone_bricks.png new file mode 100644 index 00000000..8456337d Binary files /dev/null and b/public/textures/chipped/cracked_disordered_sandstone_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_smooth_stone_bricks.png b/public/textures/chipped/cracked_disordered_smooth_stone_bricks.png new file mode 100644 index 00000000..821e7757 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_smooth_stone_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_snow_block_bricks.png b/public/textures/chipped/cracked_disordered_snow_block_bricks.png new file mode 100644 index 00000000..e2d985a9 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_snow_block_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_stone_bricks.png b/public/textures/chipped/cracked_disordered_stone_bricks.png new file mode 100644 index 00000000..919b9269 Binary files /dev/null and b/public/textures/chipped/cracked_disordered_stone_bricks.png differ diff --git a/public/textures/chipped/cracked_disordered_tuff_bricks.png b/public/textures/chipped/cracked_disordered_tuff_bricks.png new file mode 100644 index 00000000..d03a865f Binary files /dev/null and b/public/textures/chipped/cracked_disordered_tuff_bricks.png differ diff --git a/public/textures/chipped/cracked_dripstone_block_bricks.png b/public/textures/chipped/cracked_dripstone_block_bricks.png new file mode 100644 index 00000000..9ef9307f Binary files /dev/null and b/public/textures/chipped/cracked_dripstone_block_bricks.png differ diff --git a/public/textures/chipped/cracked_end_stone_bricks.png b/public/textures/chipped/cracked_end_stone_bricks.png new file mode 100644 index 00000000..b5b78079 Binary files /dev/null and b/public/textures/chipped/cracked_end_stone_bricks.png differ diff --git a/public/textures/chipped/cracked_flat_amethyst_block_tiles.png b/public/textures/chipped/cracked_flat_amethyst_block_tiles.png new file mode 100644 index 00000000..8a94a7cd Binary files /dev/null and b/public/textures/chipped/cracked_flat_amethyst_block_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_ancient_debris_tiles.png b/public/textures/chipped/cracked_flat_ancient_debris_tiles.png new file mode 100644 index 00000000..60ebf7b6 Binary files /dev/null and b/public/textures/chipped/cracked_flat_ancient_debris_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_andesite_tiles.png b/public/textures/chipped/cracked_flat_andesite_tiles.png new file mode 100644 index 00000000..fbc7fcb0 Binary files /dev/null and b/public/textures/chipped/cracked_flat_andesite_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_basalt_tiles.png b/public/textures/chipped/cracked_flat_basalt_tiles.png new file mode 100644 index 00000000..61ff042b Binary files /dev/null and b/public/textures/chipped/cracked_flat_basalt_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_blackstone_tiles.png b/public/textures/chipped/cracked_flat_blackstone_tiles.png new file mode 100644 index 00000000..9c961574 Binary files /dev/null and b/public/textures/chipped/cracked_flat_blackstone_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_blue_ice_tiles.png b/public/textures/chipped/cracked_flat_blue_ice_tiles.png new file mode 100644 index 00000000..a23a6c8e Binary files /dev/null and b/public/textures/chipped/cracked_flat_blue_ice_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_borderless_bricks_tiles.png b/public/textures/chipped/cracked_flat_borderless_bricks_tiles.png new file mode 100644 index 00000000..22a7c22e Binary files /dev/null and b/public/textures/chipped/cracked_flat_borderless_bricks_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_bricks_tiles.png b/public/textures/chipped/cracked_flat_bricks_tiles.png new file mode 100644 index 00000000..a6a9733e Binary files /dev/null and b/public/textures/chipped/cracked_flat_bricks_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_calcite_tiles.png b/public/textures/chipped/cracked_flat_calcite_tiles.png new file mode 100644 index 00000000..5f0eddae Binary files /dev/null and b/public/textures/chipped/cracked_flat_calcite_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_clay_tiles.png b/public/textures/chipped/cracked_flat_clay_tiles.png new file mode 100644 index 00000000..6e213e1b Binary files /dev/null and b/public/textures/chipped/cracked_flat_clay_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_coal_block_tiles.png b/public/textures/chipped/cracked_flat_coal_block_tiles.png new file mode 100644 index 00000000..4b2ec12a Binary files /dev/null and b/public/textures/chipped/cracked_flat_coal_block_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_cobblestone_tiles.png b/public/textures/chipped/cracked_flat_cobblestone_tiles.png new file mode 100644 index 00000000..a3b09ab9 Binary files /dev/null and b/public/textures/chipped/cracked_flat_cobblestone_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_crying_obsidian_tiles.png b/public/textures/chipped/cracked_flat_crying_obsidian_tiles.png new file mode 100644 index 00000000..cc722f8b Binary files /dev/null and b/public/textures/chipped/cracked_flat_crying_obsidian_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_dark_prismarine_tiles.png b/public/textures/chipped/cracked_flat_dark_prismarine_tiles.png new file mode 100644 index 00000000..dd908656 Binary files /dev/null and b/public/textures/chipped/cracked_flat_dark_prismarine_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_diorite_tiles.png b/public/textures/chipped/cracked_flat_diorite_tiles.png new file mode 100644 index 00000000..2228052a Binary files /dev/null and b/public/textures/chipped/cracked_flat_diorite_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_dirt_tiles.png b/public/textures/chipped/cracked_flat_dirt_tiles.png new file mode 100644 index 00000000..8a006ed7 Binary files /dev/null and b/public/textures/chipped/cracked_flat_dirt_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_dripstone_block_tiles.png b/public/textures/chipped/cracked_flat_dripstone_block_tiles.png new file mode 100644 index 00000000..25c95ff0 Binary files /dev/null and b/public/textures/chipped/cracked_flat_dripstone_block_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_end_stone_tiles.png b/public/textures/chipped/cracked_flat_end_stone_tiles.png new file mode 100644 index 00000000..9b1bc163 Binary files /dev/null and b/public/textures/chipped/cracked_flat_end_stone_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_gilded_blackstone_tiles.png b/public/textures/chipped/cracked_flat_gilded_blackstone_tiles.png new file mode 100644 index 00000000..1879b1e9 Binary files /dev/null and b/public/textures/chipped/cracked_flat_gilded_blackstone_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_granite_tiles.png b/public/textures/chipped/cracked_flat_granite_tiles.png new file mode 100644 index 00000000..102ba76e Binary files /dev/null and b/public/textures/chipped/cracked_flat_granite_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_ice_tiles.png b/public/textures/chipped/cracked_flat_ice_tiles.png new file mode 100644 index 00000000..05e03602 Binary files /dev/null and b/public/textures/chipped/cracked_flat_ice_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_lapis_block_tiles.png b/public/textures/chipped/cracked_flat_lapis_block_tiles.png new file mode 100644 index 00000000..a68533a2 Binary files /dev/null and b/public/textures/chipped/cracked_flat_lapis_block_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_lodestone_tiles.png b/public/textures/chipped/cracked_flat_lodestone_tiles.png new file mode 100644 index 00000000..8f6ce81d Binary files /dev/null and b/public/textures/chipped/cracked_flat_lodestone_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_magma_block_tiles.png b/public/textures/chipped/cracked_flat_magma_block_tiles.png new file mode 100644 index 00000000..2e08b678 Binary files /dev/null and b/public/textures/chipped/cracked_flat_magma_block_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_mossy_cobblestone_tiles.png b/public/textures/chipped/cracked_flat_mossy_cobblestone_tiles.png new file mode 100644 index 00000000..82a1f4bd Binary files /dev/null and b/public/textures/chipped/cracked_flat_mossy_cobblestone_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_mossy_stone_bricks_tiles.png b/public/textures/chipped/cracked_flat_mossy_stone_bricks_tiles.png new file mode 100644 index 00000000..0e4249ed Binary files /dev/null and b/public/textures/chipped/cracked_flat_mossy_stone_bricks_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_nether_bricks_tiles.png b/public/textures/chipped/cracked_flat_nether_bricks_tiles.png new file mode 100644 index 00000000..fd24c4a9 Binary files /dev/null and b/public/textures/chipped/cracked_flat_nether_bricks_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_netherrack_tiles.png b/public/textures/chipped/cracked_flat_netherrack_tiles.png new file mode 100644 index 00000000..192468c1 Binary files /dev/null and b/public/textures/chipped/cracked_flat_netherrack_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_obsidian_tiles.png b/public/textures/chipped/cracked_flat_obsidian_tiles.png new file mode 100644 index 00000000..6c08f8dd Binary files /dev/null and b/public/textures/chipped/cracked_flat_obsidian_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_packed_ice_tiles.png b/public/textures/chipped/cracked_flat_packed_ice_tiles.png new file mode 100644 index 00000000..64e735e0 Binary files /dev/null and b/public/textures/chipped/cracked_flat_packed_ice_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_prismarine_tiles.png b/public/textures/chipped/cracked_flat_prismarine_tiles.png new file mode 100644 index 00000000..1592bafa Binary files /dev/null and b/public/textures/chipped/cracked_flat_prismarine_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_purpur_block_tiles.png b/public/textures/chipped/cracked_flat_purpur_block_tiles.png new file mode 100644 index 00000000..46ac5e95 Binary files /dev/null and b/public/textures/chipped/cracked_flat_purpur_block_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_quartz_block_tiles.png b/public/textures/chipped/cracked_flat_quartz_block_tiles.png new file mode 100644 index 00000000..ed0f6a57 Binary files /dev/null and b/public/textures/chipped/cracked_flat_quartz_block_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_raw_copper_block_tiles.png b/public/textures/chipped/cracked_flat_raw_copper_block_tiles.png new file mode 100644 index 00000000..08e70462 Binary files /dev/null and b/public/textures/chipped/cracked_flat_raw_copper_block_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_raw_gold_block_tiles.png b/public/textures/chipped/cracked_flat_raw_gold_block_tiles.png new file mode 100644 index 00000000..7be9d6d6 Binary files /dev/null and b/public/textures/chipped/cracked_flat_raw_gold_block_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_raw_iron_block_tiles.png b/public/textures/chipped/cracked_flat_raw_iron_block_tiles.png new file mode 100644 index 00000000..a37de3f7 Binary files /dev/null and b/public/textures/chipped/cracked_flat_raw_iron_block_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_red_nether_bricks_tiles.png b/public/textures/chipped/cracked_flat_red_nether_bricks_tiles.png new file mode 100644 index 00000000..2147c9b3 Binary files /dev/null and b/public/textures/chipped/cracked_flat_red_nether_bricks_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_red_sandstone_tiles.png b/public/textures/chipped/cracked_flat_red_sandstone_tiles.png new file mode 100644 index 00000000..86b697dc Binary files /dev/null and b/public/textures/chipped/cracked_flat_red_sandstone_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_redstone_block_tiles.png b/public/textures/chipped/cracked_flat_redstone_block_tiles.png new file mode 100644 index 00000000..8cc45280 Binary files /dev/null and b/public/textures/chipped/cracked_flat_redstone_block_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_sandstone_tiles.png b/public/textures/chipped/cracked_flat_sandstone_tiles.png new file mode 100644 index 00000000..14f676ea Binary files /dev/null and b/public/textures/chipped/cracked_flat_sandstone_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_smooth_stone_tiles.png b/public/textures/chipped/cracked_flat_smooth_stone_tiles.png new file mode 100644 index 00000000..cef9504c Binary files /dev/null and b/public/textures/chipped/cracked_flat_smooth_stone_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_snow_block_tiles.png b/public/textures/chipped/cracked_flat_snow_block_tiles.png new file mode 100644 index 00000000..2911c03e Binary files /dev/null and b/public/textures/chipped/cracked_flat_snow_block_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_stone_tiles.png b/public/textures/chipped/cracked_flat_stone_tiles.png new file mode 100644 index 00000000..3487db1d Binary files /dev/null and b/public/textures/chipped/cracked_flat_stone_tiles.png differ diff --git a/public/textures/chipped/cracked_flat_tuff_tiles.png b/public/textures/chipped/cracked_flat_tuff_tiles.png new file mode 100644 index 00000000..7a02cb2c Binary files /dev/null and b/public/textures/chipped/cracked_flat_tuff_tiles.png differ diff --git a/public/textures/chipped/cracked_gilded_blackstone_bricks.png b/public/textures/chipped/cracked_gilded_blackstone_bricks.png new file mode 100644 index 00000000..13d56da2 Binary files /dev/null and b/public/textures/chipped/cracked_gilded_blackstone_bricks.png differ diff --git a/public/textures/chipped/cracked_glowstone.png b/public/textures/chipped/cracked_glowstone.png new file mode 100644 index 00000000..52594a43 Binary files /dev/null and b/public/textures/chipped/cracked_glowstone.png differ diff --git a/public/textures/chipped/cracked_granite_bricks.png b/public/textures/chipped/cracked_granite_bricks.png new file mode 100644 index 00000000..3eedea13 Binary files /dev/null and b/public/textures/chipped/cracked_granite_bricks.png differ diff --git a/public/textures/chipped/cracked_ice_bricks.png b/public/textures/chipped/cracked_ice_bricks.png new file mode 100644 index 00000000..7796ba88 Binary files /dev/null and b/public/textures/chipped/cracked_ice_bricks.png differ diff --git a/public/textures/chipped/cracked_lapis_block_bricks.png b/public/textures/chipped/cracked_lapis_block_bricks.png new file mode 100644 index 00000000..63fcb97a Binary files /dev/null and b/public/textures/chipped/cracked_lapis_block_bricks.png differ diff --git a/public/textures/chipped/cracked_lodestone_bricks.png b/public/textures/chipped/cracked_lodestone_bricks.png new file mode 100644 index 00000000..5aca4165 Binary files /dev/null and b/public/textures/chipped/cracked_lodestone_bricks.png differ diff --git a/public/textures/chipped/cracked_magma_block_bricks.png b/public/textures/chipped/cracked_magma_block_bricks.png new file mode 100644 index 00000000..b324c6f3 Binary files /dev/null and b/public/textures/chipped/cracked_magma_block_bricks.png differ diff --git a/public/textures/chipped/cracked_mossy_cobblestone_bricks.png b/public/textures/chipped/cracked_mossy_cobblestone_bricks.png new file mode 100644 index 00000000..169ca7cc Binary files /dev/null and b/public/textures/chipped/cracked_mossy_cobblestone_bricks.png differ diff --git a/public/textures/chipped/cracked_mossy_stone_bricks_bricks.png b/public/textures/chipped/cracked_mossy_stone_bricks_bricks.png new file mode 100644 index 00000000..e426a188 Binary files /dev/null and b/public/textures/chipped/cracked_mossy_stone_bricks_bricks.png differ diff --git a/public/textures/chipped/cracked_mud_bricks.png b/public/textures/chipped/cracked_mud_bricks.png new file mode 100644 index 00000000..5fdfc26a Binary files /dev/null and b/public/textures/chipped/cracked_mud_bricks.png differ diff --git a/public/textures/chipped/cracked_mud_bricks_bricks.png b/public/textures/chipped/cracked_mud_bricks_bricks.png new file mode 100644 index 00000000..5a0dc504 Binary files /dev/null and b/public/textures/chipped/cracked_mud_bricks_bricks.png differ diff --git a/public/textures/chipped/cracked_nether_bricks_bricks.png b/public/textures/chipped/cracked_nether_bricks_bricks.png new file mode 100644 index 00000000..57fc6168 Binary files /dev/null and b/public/textures/chipped/cracked_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/cracked_netherrack_bricks.png b/public/textures/chipped/cracked_netherrack_bricks.png new file mode 100644 index 00000000..bc39e7fd Binary files /dev/null and b/public/textures/chipped/cracked_netherrack_bricks.png differ diff --git a/public/textures/chipped/cracked_obsidian_bricks.png b/public/textures/chipped/cracked_obsidian_bricks.png new file mode 100644 index 00000000..110d9fc2 Binary files /dev/null and b/public/textures/chipped/cracked_obsidian_bricks.png differ diff --git a/public/textures/chipped/cracked_packed_ice_bricks.png b/public/textures/chipped/cracked_packed_ice_bricks.png new file mode 100644 index 00000000..44aea1fc Binary files /dev/null and b/public/textures/chipped/cracked_packed_ice_bricks.png differ diff --git a/public/textures/chipped/cracked_packed_mud_bricks.png b/public/textures/chipped/cracked_packed_mud_bricks.png new file mode 100644 index 00000000..286854d2 Binary files /dev/null and b/public/textures/chipped/cracked_packed_mud_bricks.png differ diff --git a/public/textures/chipped/cracked_prismarine_bricks.png b/public/textures/chipped/cracked_prismarine_bricks.png new file mode 100644 index 00000000..8b697390 Binary files /dev/null and b/public/textures/chipped/cracked_prismarine_bricks.png differ diff --git a/public/textures/chipped/cracked_purpur_block_bricks.png b/public/textures/chipped/cracked_purpur_block_bricks.png new file mode 100644 index 00000000..ad1dc8a3 Binary files /dev/null and b/public/textures/chipped/cracked_purpur_block_bricks.png differ diff --git a/public/textures/chipped/cracked_quartz_block_bricks.png b/public/textures/chipped/cracked_quartz_block_bricks.png new file mode 100644 index 00000000..3e6e8aea Binary files /dev/null and b/public/textures/chipped/cracked_quartz_block_bricks.png differ diff --git a/public/textures/chipped/cracked_raw_copper_block_bricks.png b/public/textures/chipped/cracked_raw_copper_block_bricks.png new file mode 100644 index 00000000..03ac1eef Binary files /dev/null and b/public/textures/chipped/cracked_raw_copper_block_bricks.png differ diff --git a/public/textures/chipped/cracked_raw_gold_block_bricks.png b/public/textures/chipped/cracked_raw_gold_block_bricks.png new file mode 100644 index 00000000..99ffd393 Binary files /dev/null and b/public/textures/chipped/cracked_raw_gold_block_bricks.png differ diff --git a/public/textures/chipped/cracked_raw_iron_block_bricks.png b/public/textures/chipped/cracked_raw_iron_block_bricks.png new file mode 100644 index 00000000..18121ba9 Binary files /dev/null and b/public/textures/chipped/cracked_raw_iron_block_bricks.png differ diff --git a/public/textures/chipped/cracked_red_nether_bricks_bricks.png b/public/textures/chipped/cracked_red_nether_bricks_bricks.png new file mode 100644 index 00000000..91cf058e Binary files /dev/null and b/public/textures/chipped/cracked_red_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/cracked_red_sandstone_bricks.png b/public/textures/chipped/cracked_red_sandstone_bricks.png new file mode 100644 index 00000000..d042443f Binary files /dev/null and b/public/textures/chipped/cracked_red_sandstone_bricks.png differ diff --git a/public/textures/chipped/cracked_redstone_block_bricks.png b/public/textures/chipped/cracked_redstone_block_bricks.png new file mode 100644 index 00000000..51ec5f0b Binary files /dev/null and b/public/textures/chipped/cracked_redstone_block_bricks.png differ diff --git a/public/textures/chipped/cracked_sandstone_bricks.png b/public/textures/chipped/cracked_sandstone_bricks.png new file mode 100644 index 00000000..1a7d5104 Binary files /dev/null and b/public/textures/chipped/cracked_sandstone_bricks.png differ diff --git a/public/textures/chipped/cracked_sea_lantern.png b/public/textures/chipped/cracked_sea_lantern.png new file mode 100644 index 00000000..2b7fdb0a Binary files /dev/null and b/public/textures/chipped/cracked_sea_lantern.png differ diff --git a/public/textures/chipped/cracked_shroomlight.png b/public/textures/chipped/cracked_shroomlight.png new file mode 100644 index 00000000..0a285cb2 Binary files /dev/null and b/public/textures/chipped/cracked_shroomlight.png differ diff --git a/public/textures/chipped/cracked_smooth_stone_bricks.png b/public/textures/chipped/cracked_smooth_stone_bricks.png new file mode 100644 index 00000000..40830e0b Binary files /dev/null and b/public/textures/chipped/cracked_smooth_stone_bricks.png differ diff --git a/public/textures/chipped/cracked_snow_block_bricks.png b/public/textures/chipped/cracked_snow_block_bricks.png new file mode 100644 index 00000000..539a0131 Binary files /dev/null and b/public/textures/chipped/cracked_snow_block_bricks.png differ diff --git a/public/textures/chipped/cracked_tuff_bricks.png b/public/textures/chipped/cracked_tuff_bricks.png new file mode 100644 index 00000000..7b193d93 Binary files /dev/null and b/public/textures/chipped/cracked_tuff_bricks.png differ diff --git a/public/textures/chipped/crafted_black_carpet.png b/public/textures/chipped/crafted_black_carpet.png new file mode 100644 index 00000000..29ed7f4e Binary files /dev/null and b/public/textures/chipped/crafted_black_carpet.png differ diff --git a/public/textures/chipped/crafted_black_wool.png b/public/textures/chipped/crafted_black_wool.png new file mode 100644 index 00000000..127ea6e2 Binary files /dev/null and b/public/textures/chipped/crafted_black_wool.png differ diff --git a/public/textures/chipped/crafted_blue_carpet.png b/public/textures/chipped/crafted_blue_carpet.png new file mode 100644 index 00000000..526c603f Binary files /dev/null and b/public/textures/chipped/crafted_blue_carpet.png differ diff --git a/public/textures/chipped/crafted_blue_wool.png b/public/textures/chipped/crafted_blue_wool.png new file mode 100644 index 00000000..1eeba800 Binary files /dev/null and b/public/textures/chipped/crafted_blue_wool.png differ diff --git a/public/textures/chipped/crafted_brown_carpet.png b/public/textures/chipped/crafted_brown_carpet.png new file mode 100644 index 00000000..c2b9d238 Binary files /dev/null and b/public/textures/chipped/crafted_brown_carpet.png differ diff --git a/public/textures/chipped/crafted_brown_wool.png b/public/textures/chipped/crafted_brown_wool.png new file mode 100644 index 00000000..1dbf8abb Binary files /dev/null and b/public/textures/chipped/crafted_brown_wool.png differ diff --git a/public/textures/chipped/crafted_cyan_carpet.png b/public/textures/chipped/crafted_cyan_carpet.png new file mode 100644 index 00000000..041f1db6 Binary files /dev/null and b/public/textures/chipped/crafted_cyan_carpet.png differ diff --git a/public/textures/chipped/crafted_cyan_wool.png b/public/textures/chipped/crafted_cyan_wool.png new file mode 100644 index 00000000..ce36287c Binary files /dev/null and b/public/textures/chipped/crafted_cyan_wool.png differ diff --git a/public/textures/chipped/crafted_gray_carpet.png b/public/textures/chipped/crafted_gray_carpet.png new file mode 100644 index 00000000..4de61f26 Binary files /dev/null and b/public/textures/chipped/crafted_gray_carpet.png differ diff --git a/public/textures/chipped/crafted_gray_wool.png b/public/textures/chipped/crafted_gray_wool.png new file mode 100644 index 00000000..449f69ed Binary files /dev/null and b/public/textures/chipped/crafted_gray_wool.png differ diff --git a/public/textures/chipped/crafted_green_carpet.png b/public/textures/chipped/crafted_green_carpet.png new file mode 100644 index 00000000..961a9869 Binary files /dev/null and b/public/textures/chipped/crafted_green_carpet.png differ diff --git a/public/textures/chipped/crafted_green_wool.png b/public/textures/chipped/crafted_green_wool.png new file mode 100644 index 00000000..8f57784c Binary files /dev/null and b/public/textures/chipped/crafted_green_wool.png differ diff --git a/public/textures/chipped/crafted_light_blue_carpet.png b/public/textures/chipped/crafted_light_blue_carpet.png new file mode 100644 index 00000000..29e3f362 Binary files /dev/null and b/public/textures/chipped/crafted_light_blue_carpet.png differ diff --git a/public/textures/chipped/crafted_light_blue_wool.png b/public/textures/chipped/crafted_light_blue_wool.png new file mode 100644 index 00000000..3043db44 Binary files /dev/null and b/public/textures/chipped/crafted_light_blue_wool.png differ diff --git a/public/textures/chipped/crafted_light_gray_carpet.png b/public/textures/chipped/crafted_light_gray_carpet.png new file mode 100644 index 00000000..058f6f4a Binary files /dev/null and b/public/textures/chipped/crafted_light_gray_carpet.png differ diff --git a/public/textures/chipped/crafted_light_gray_wool.png b/public/textures/chipped/crafted_light_gray_wool.png new file mode 100644 index 00000000..83032517 Binary files /dev/null and b/public/textures/chipped/crafted_light_gray_wool.png differ diff --git a/public/textures/chipped/crafted_lime_carpet.png b/public/textures/chipped/crafted_lime_carpet.png new file mode 100644 index 00000000..fc7e2bd5 Binary files /dev/null and b/public/textures/chipped/crafted_lime_carpet.png differ diff --git a/public/textures/chipped/crafted_lime_wool.png b/public/textures/chipped/crafted_lime_wool.png new file mode 100644 index 00000000..d73c988b Binary files /dev/null and b/public/textures/chipped/crafted_lime_wool.png differ diff --git a/public/textures/chipped/crafted_magenta_carpet.png b/public/textures/chipped/crafted_magenta_carpet.png new file mode 100644 index 00000000..9601ad66 Binary files /dev/null and b/public/textures/chipped/crafted_magenta_carpet.png differ diff --git a/public/textures/chipped/crafted_magenta_wool.png b/public/textures/chipped/crafted_magenta_wool.png new file mode 100644 index 00000000..0c277a67 Binary files /dev/null and b/public/textures/chipped/crafted_magenta_wool.png differ diff --git a/public/textures/chipped/crafted_orange_carpet.png b/public/textures/chipped/crafted_orange_carpet.png new file mode 100644 index 00000000..ac33022c Binary files /dev/null and b/public/textures/chipped/crafted_orange_carpet.png differ diff --git a/public/textures/chipped/crafted_orange_wool.png b/public/textures/chipped/crafted_orange_wool.png new file mode 100644 index 00000000..fc46e965 Binary files /dev/null and b/public/textures/chipped/crafted_orange_wool.png differ diff --git a/public/textures/chipped/crafted_pink_carpet.png b/public/textures/chipped/crafted_pink_carpet.png new file mode 100644 index 00000000..724028f4 Binary files /dev/null and b/public/textures/chipped/crafted_pink_carpet.png differ diff --git a/public/textures/chipped/crafted_pink_wool.png b/public/textures/chipped/crafted_pink_wool.png new file mode 100644 index 00000000..322cfeb0 Binary files /dev/null and b/public/textures/chipped/crafted_pink_wool.png differ diff --git a/public/textures/chipped/crafted_purple_carpet.png b/public/textures/chipped/crafted_purple_carpet.png new file mode 100644 index 00000000..2c4c47ee Binary files /dev/null and b/public/textures/chipped/crafted_purple_carpet.png differ diff --git a/public/textures/chipped/crafted_purple_wool.png b/public/textures/chipped/crafted_purple_wool.png new file mode 100644 index 00000000..68e3c4e9 Binary files /dev/null and b/public/textures/chipped/crafted_purple_wool.png differ diff --git a/public/textures/chipped/crafted_red_carpet.png b/public/textures/chipped/crafted_red_carpet.png new file mode 100644 index 00000000..e4f5e49d Binary files /dev/null and b/public/textures/chipped/crafted_red_carpet.png differ diff --git a/public/textures/chipped/crafted_red_wool.png b/public/textures/chipped/crafted_red_wool.png new file mode 100644 index 00000000..a7e217d5 Binary files /dev/null and b/public/textures/chipped/crafted_red_wool.png differ diff --git a/public/textures/chipped/crafted_white_carpet.png b/public/textures/chipped/crafted_white_carpet.png new file mode 100644 index 00000000..654414c5 Binary files /dev/null and b/public/textures/chipped/crafted_white_carpet.png differ diff --git a/public/textures/chipped/crafted_white_wool.png b/public/textures/chipped/crafted_white_wool.png new file mode 100644 index 00000000..49de5fdd Binary files /dev/null and b/public/textures/chipped/crafted_white_wool.png differ diff --git a/public/textures/chipped/crafted_yellow_carpet.png b/public/textures/chipped/crafted_yellow_carpet.png new file mode 100644 index 00000000..e72ccb09 Binary files /dev/null and b/public/textures/chipped/crafted_yellow_carpet.png differ diff --git a/public/textures/chipped/crafted_yellow_wool.png b/public/textures/chipped/crafted_yellow_wool.png new file mode 100644 index 00000000..04d921be Binary files /dev/null and b/public/textures/chipped/crafted_yellow_wool.png differ diff --git a/public/textures/chipped/crated_acacia_planks.png b/public/textures/chipped/crated_acacia_planks.png new file mode 100644 index 00000000..7c6f82d5 Binary files /dev/null and b/public/textures/chipped/crated_acacia_planks.png differ diff --git a/public/textures/chipped/crated_bamboo_planks.png b/public/textures/chipped/crated_bamboo_planks.png new file mode 100644 index 00000000..19d6b9c8 Binary files /dev/null and b/public/textures/chipped/crated_bamboo_planks.png differ diff --git a/public/textures/chipped/crated_birch_planks.png b/public/textures/chipped/crated_birch_planks.png new file mode 100644 index 00000000..79c81faa Binary files /dev/null and b/public/textures/chipped/crated_birch_planks.png differ diff --git a/public/textures/chipped/crated_cherry_planks.png b/public/textures/chipped/crated_cherry_planks.png new file mode 100644 index 00000000..4b3a4f01 Binary files /dev/null and b/public/textures/chipped/crated_cherry_planks.png differ diff --git a/public/textures/chipped/crated_crimson_planks.png b/public/textures/chipped/crated_crimson_planks.png new file mode 100644 index 00000000..44713bbd Binary files /dev/null and b/public/textures/chipped/crated_crimson_planks.png differ diff --git a/public/textures/chipped/crated_dark_oak_planks.png b/public/textures/chipped/crated_dark_oak_planks.png new file mode 100644 index 00000000..b23b6a3c Binary files /dev/null and b/public/textures/chipped/crated_dark_oak_planks.png differ diff --git a/public/textures/chipped/crated_jungle_planks.png b/public/textures/chipped/crated_jungle_planks.png new file mode 100644 index 00000000..45946638 Binary files /dev/null and b/public/textures/chipped/crated_jungle_planks.png differ diff --git a/public/textures/chipped/crated_mangrove_planks.png b/public/textures/chipped/crated_mangrove_planks.png new file mode 100644 index 00000000..794884c1 Binary files /dev/null and b/public/textures/chipped/crated_mangrove_planks.png differ diff --git a/public/textures/chipped/crated_oak_planks.png b/public/textures/chipped/crated_oak_planks.png new file mode 100644 index 00000000..b5ca9a83 Binary files /dev/null and b/public/textures/chipped/crated_oak_planks.png differ diff --git a/public/textures/chipped/crated_spruce_planks.png b/public/textures/chipped/crated_spruce_planks.png new file mode 100644 index 00000000..52c3756f Binary files /dev/null and b/public/textures/chipped/crated_spruce_planks.png differ diff --git a/public/textures/chipped/crated_warped_planks.png b/public/textures/chipped/crated_warped_planks.png new file mode 100644 index 00000000..5e3b040e Binary files /dev/null and b/public/textures/chipped/crated_warped_planks.png differ diff --git a/public/textures/chipped/creeper_amethyst_block_carving.png b/public/textures/chipped/creeper_amethyst_block_carving.png new file mode 100644 index 00000000..92e27e21 Binary files /dev/null and b/public/textures/chipped/creeper_amethyst_block_carving.png differ diff --git a/public/textures/chipped/creeper_ancient_debris_carving.png b/public/textures/chipped/creeper_ancient_debris_carving.png new file mode 100644 index 00000000..994fcce7 Binary files /dev/null and b/public/textures/chipped/creeper_ancient_debris_carving.png differ diff --git a/public/textures/chipped/creeper_andesite_carving.png b/public/textures/chipped/creeper_andesite_carving.png new file mode 100644 index 00000000..2022bb75 Binary files /dev/null and b/public/textures/chipped/creeper_andesite_carving.png differ diff --git a/public/textures/chipped/creeper_basalt_carving.png b/public/textures/chipped/creeper_basalt_carving.png new file mode 100644 index 00000000..4ddd3be5 Binary files /dev/null and b/public/textures/chipped/creeper_basalt_carving.png differ diff --git a/public/textures/chipped/creeper_black_concrete.png b/public/textures/chipped/creeper_black_concrete.png new file mode 100644 index 00000000..d39135a9 Binary files /dev/null and b/public/textures/chipped/creeper_black_concrete.png differ diff --git a/public/textures/chipped/creeper_blackstone_carving.png b/public/textures/chipped/creeper_blackstone_carving.png new file mode 100644 index 00000000..882d53ff Binary files /dev/null and b/public/textures/chipped/creeper_blackstone_carving.png differ diff --git a/public/textures/chipped/creeper_blue_concrete.png b/public/textures/chipped/creeper_blue_concrete.png new file mode 100644 index 00000000..f77ba548 Binary files /dev/null and b/public/textures/chipped/creeper_blue_concrete.png differ diff --git a/public/textures/chipped/creeper_blue_ice_carving.png b/public/textures/chipped/creeper_blue_ice_carving.png new file mode 100644 index 00000000..4c30b576 Binary files /dev/null and b/public/textures/chipped/creeper_blue_ice_carving.png differ diff --git a/public/textures/chipped/creeper_borderless_bricks_carving.png b/public/textures/chipped/creeper_borderless_bricks_carving.png new file mode 100644 index 00000000..cc167bef Binary files /dev/null and b/public/textures/chipped/creeper_borderless_bricks_carving.png differ diff --git a/public/textures/chipped/creeper_bricks_carving.png b/public/textures/chipped/creeper_bricks_carving.png new file mode 100644 index 00000000..40cf6362 Binary files /dev/null and b/public/textures/chipped/creeper_bricks_carving.png differ diff --git a/public/textures/chipped/creeper_brown_concrete.png b/public/textures/chipped/creeper_brown_concrete.png new file mode 100644 index 00000000..b9ebf838 Binary files /dev/null and b/public/textures/chipped/creeper_brown_concrete.png differ diff --git a/public/textures/chipped/creeper_calcite_carving.png b/public/textures/chipped/creeper_calcite_carving.png new file mode 100644 index 00000000..45174747 Binary files /dev/null and b/public/textures/chipped/creeper_calcite_carving.png differ diff --git a/public/textures/chipped/creeper_clay_carving.png b/public/textures/chipped/creeper_clay_carving.png new file mode 100644 index 00000000..6b66e3c8 Binary files /dev/null and b/public/textures/chipped/creeper_clay_carving.png differ diff --git a/public/textures/chipped/creeper_coal_block_carving.png b/public/textures/chipped/creeper_coal_block_carving.png new file mode 100644 index 00000000..58d7d5d9 Binary files /dev/null and b/public/textures/chipped/creeper_coal_block_carving.png differ diff --git a/public/textures/chipped/creeper_cobblestone_carving.png b/public/textures/chipped/creeper_cobblestone_carving.png new file mode 100644 index 00000000..0021a564 Binary files /dev/null and b/public/textures/chipped/creeper_cobblestone_carving.png differ diff --git a/public/textures/chipped/creeper_crying_obsidian_carving.png b/public/textures/chipped/creeper_crying_obsidian_carving.png new file mode 100644 index 00000000..726e735b Binary files /dev/null and b/public/textures/chipped/creeper_crying_obsidian_carving.png differ diff --git a/public/textures/chipped/creeper_cyan_concrete.png b/public/textures/chipped/creeper_cyan_concrete.png new file mode 100644 index 00000000..cd0293c1 Binary files /dev/null and b/public/textures/chipped/creeper_cyan_concrete.png differ diff --git a/public/textures/chipped/creeper_dark_prismarine_carving.png b/public/textures/chipped/creeper_dark_prismarine_carving.png new file mode 100644 index 00000000..c253dc94 Binary files /dev/null and b/public/textures/chipped/creeper_dark_prismarine_carving.png differ diff --git a/public/textures/chipped/creeper_deepslate_carving.png b/public/textures/chipped/creeper_deepslate_carving.png new file mode 100644 index 00000000..0c6b938c Binary files /dev/null and b/public/textures/chipped/creeper_deepslate_carving.png differ diff --git a/public/textures/chipped/creeper_diorite_carving.png b/public/textures/chipped/creeper_diorite_carving.png new file mode 100644 index 00000000..90d28138 Binary files /dev/null and b/public/textures/chipped/creeper_diorite_carving.png differ diff --git a/public/textures/chipped/creeper_dirt_carving.png b/public/textures/chipped/creeper_dirt_carving.png new file mode 100644 index 00000000..78a9b7b8 Binary files /dev/null and b/public/textures/chipped/creeper_dirt_carving.png differ diff --git a/public/textures/chipped/creeper_dripstone_block_carving.png b/public/textures/chipped/creeper_dripstone_block_carving.png new file mode 100644 index 00000000..29ffad48 Binary files /dev/null and b/public/textures/chipped/creeper_dripstone_block_carving.png differ diff --git a/public/textures/chipped/creeper_end_stone_carving.png b/public/textures/chipped/creeper_end_stone_carving.png new file mode 100644 index 00000000..1020dd0e Binary files /dev/null and b/public/textures/chipped/creeper_end_stone_carving.png differ diff --git a/public/textures/chipped/creeper_gilded_blackstone_carving.png b/public/textures/chipped/creeper_gilded_blackstone_carving.png new file mode 100644 index 00000000..da73e29b Binary files /dev/null and b/public/textures/chipped/creeper_gilded_blackstone_carving.png differ diff --git a/public/textures/chipped/creeper_granite_carving.png b/public/textures/chipped/creeper_granite_carving.png new file mode 100644 index 00000000..f369c04e Binary files /dev/null and b/public/textures/chipped/creeper_granite_carving.png differ diff --git a/public/textures/chipped/creeper_gray_concrete.png b/public/textures/chipped/creeper_gray_concrete.png new file mode 100644 index 00000000..221dc164 Binary files /dev/null and b/public/textures/chipped/creeper_gray_concrete.png differ diff --git a/public/textures/chipped/creeper_green_concrete.png b/public/textures/chipped/creeper_green_concrete.png new file mode 100644 index 00000000..f70b4218 Binary files /dev/null and b/public/textures/chipped/creeper_green_concrete.png differ diff --git a/public/textures/chipped/creeper_ice_carving.png b/public/textures/chipped/creeper_ice_carving.png new file mode 100644 index 00000000..a4b701d2 Binary files /dev/null and b/public/textures/chipped/creeper_ice_carving.png differ diff --git a/public/textures/chipped/creeper_lapis_block_carving.png b/public/textures/chipped/creeper_lapis_block_carving.png new file mode 100644 index 00000000..2e19a7e8 Binary files /dev/null and b/public/textures/chipped/creeper_lapis_block_carving.png differ diff --git a/public/textures/chipped/creeper_light_blue_concrete.png b/public/textures/chipped/creeper_light_blue_concrete.png new file mode 100644 index 00000000..8c9b73ef Binary files /dev/null and b/public/textures/chipped/creeper_light_blue_concrete.png differ diff --git a/public/textures/chipped/creeper_light_gray_concrete.png b/public/textures/chipped/creeper_light_gray_concrete.png new file mode 100644 index 00000000..cb56e679 Binary files /dev/null and b/public/textures/chipped/creeper_light_gray_concrete.png differ diff --git a/public/textures/chipped/creeper_lime_concrete.png b/public/textures/chipped/creeper_lime_concrete.png new file mode 100644 index 00000000..ee7594c1 Binary files /dev/null and b/public/textures/chipped/creeper_lime_concrete.png differ diff --git a/public/textures/chipped/creeper_lodestone_carving.png b/public/textures/chipped/creeper_lodestone_carving.png new file mode 100644 index 00000000..d10ea8d2 Binary files /dev/null and b/public/textures/chipped/creeper_lodestone_carving.png differ diff --git a/public/textures/chipped/creeper_magenta_concrete.png b/public/textures/chipped/creeper_magenta_concrete.png new file mode 100644 index 00000000..d253c188 Binary files /dev/null and b/public/textures/chipped/creeper_magenta_concrete.png differ diff --git a/public/textures/chipped/creeper_magma_block_carving.png b/public/textures/chipped/creeper_magma_block_carving.png new file mode 100644 index 00000000..d0849cd8 Binary files /dev/null and b/public/textures/chipped/creeper_magma_block_carving.png differ diff --git a/public/textures/chipped/creeper_mossy_cobblestone_carving.png b/public/textures/chipped/creeper_mossy_cobblestone_carving.png new file mode 100644 index 00000000..02bfe859 Binary files /dev/null and b/public/textures/chipped/creeper_mossy_cobblestone_carving.png differ diff --git a/public/textures/chipped/creeper_mossy_stone_bricks_carving.png b/public/textures/chipped/creeper_mossy_stone_bricks_carving.png new file mode 100644 index 00000000..34e83b05 Binary files /dev/null and b/public/textures/chipped/creeper_mossy_stone_bricks_carving.png differ diff --git a/public/textures/chipped/creeper_mud_bricks_carving.png b/public/textures/chipped/creeper_mud_bricks_carving.png new file mode 100644 index 00000000..d1741b32 Binary files /dev/null and b/public/textures/chipped/creeper_mud_bricks_carving.png differ diff --git a/public/textures/chipped/creeper_mud_carving.png b/public/textures/chipped/creeper_mud_carving.png new file mode 100644 index 00000000..09b17a74 Binary files /dev/null and b/public/textures/chipped/creeper_mud_carving.png differ diff --git a/public/textures/chipped/creeper_nether_bricks_carving.png b/public/textures/chipped/creeper_nether_bricks_carving.png new file mode 100644 index 00000000..1214c54b Binary files /dev/null and b/public/textures/chipped/creeper_nether_bricks_carving.png differ diff --git a/public/textures/chipped/creeper_netherrack_carving.png b/public/textures/chipped/creeper_netherrack_carving.png new file mode 100644 index 00000000..60a8bfb5 Binary files /dev/null and b/public/textures/chipped/creeper_netherrack_carving.png differ diff --git a/public/textures/chipped/creeper_obsidian_carving.png b/public/textures/chipped/creeper_obsidian_carving.png new file mode 100644 index 00000000..83ca52d4 Binary files /dev/null and b/public/textures/chipped/creeper_obsidian_carving.png differ diff --git a/public/textures/chipped/creeper_orange_concrete.png b/public/textures/chipped/creeper_orange_concrete.png new file mode 100644 index 00000000..e9fa1933 Binary files /dev/null and b/public/textures/chipped/creeper_orange_concrete.png differ diff --git a/public/textures/chipped/creeper_packed_ice_carving.png b/public/textures/chipped/creeper_packed_ice_carving.png new file mode 100644 index 00000000..3f86a7d8 Binary files /dev/null and b/public/textures/chipped/creeper_packed_ice_carving.png differ diff --git a/public/textures/chipped/creeper_packed_mud_carving.png b/public/textures/chipped/creeper_packed_mud_carving.png new file mode 100644 index 00000000..67a3b11f Binary files /dev/null and b/public/textures/chipped/creeper_packed_mud_carving.png differ diff --git a/public/textures/chipped/creeper_pink_concrete.png b/public/textures/chipped/creeper_pink_concrete.png new file mode 100644 index 00000000..d804146f Binary files /dev/null and b/public/textures/chipped/creeper_pink_concrete.png differ diff --git a/public/textures/chipped/creeper_prismarine_carving.png b/public/textures/chipped/creeper_prismarine_carving.png new file mode 100644 index 00000000..bcf7e40c Binary files /dev/null and b/public/textures/chipped/creeper_prismarine_carving.png differ diff --git a/public/textures/chipped/creeper_purple_concrete.png b/public/textures/chipped/creeper_purple_concrete.png new file mode 100644 index 00000000..718106e4 Binary files /dev/null and b/public/textures/chipped/creeper_purple_concrete.png differ diff --git a/public/textures/chipped/creeper_purpur_block_carving.png b/public/textures/chipped/creeper_purpur_block_carving.png new file mode 100644 index 00000000..9a461f79 Binary files /dev/null and b/public/textures/chipped/creeper_purpur_block_carving.png differ diff --git a/public/textures/chipped/creeper_quartz_block_carving.png b/public/textures/chipped/creeper_quartz_block_carving.png new file mode 100644 index 00000000..048f5f88 Binary files /dev/null and b/public/textures/chipped/creeper_quartz_block_carving.png differ diff --git a/public/textures/chipped/creeper_raw_copper_block_carving.png b/public/textures/chipped/creeper_raw_copper_block_carving.png new file mode 100644 index 00000000..fe1ef5d3 Binary files /dev/null and b/public/textures/chipped/creeper_raw_copper_block_carving.png differ diff --git a/public/textures/chipped/creeper_raw_gold_block_carving.png b/public/textures/chipped/creeper_raw_gold_block_carving.png new file mode 100644 index 00000000..c2fc911a Binary files /dev/null and b/public/textures/chipped/creeper_raw_gold_block_carving.png differ diff --git a/public/textures/chipped/creeper_raw_iron_block_carving.png b/public/textures/chipped/creeper_raw_iron_block_carving.png new file mode 100644 index 00000000..c8f4678c Binary files /dev/null and b/public/textures/chipped/creeper_raw_iron_block_carving.png differ diff --git a/public/textures/chipped/creeper_red_concrete.png b/public/textures/chipped/creeper_red_concrete.png new file mode 100644 index 00000000..7b4bb3a5 Binary files /dev/null and b/public/textures/chipped/creeper_red_concrete.png differ diff --git a/public/textures/chipped/creeper_red_nether_bricks_carving.png b/public/textures/chipped/creeper_red_nether_bricks_carving.png new file mode 100644 index 00000000..d0ec35af Binary files /dev/null and b/public/textures/chipped/creeper_red_nether_bricks_carving.png differ diff --git a/public/textures/chipped/creeper_red_sandstone_carving.png b/public/textures/chipped/creeper_red_sandstone_carving.png new file mode 100644 index 00000000..2290ec94 Binary files /dev/null and b/public/textures/chipped/creeper_red_sandstone_carving.png differ diff --git a/public/textures/chipped/creeper_redstone_block_carving.png b/public/textures/chipped/creeper_redstone_block_carving.png new file mode 100644 index 00000000..18e4850c Binary files /dev/null and b/public/textures/chipped/creeper_redstone_block_carving.png differ diff --git a/public/textures/chipped/creeper_sandstone_carving.png b/public/textures/chipped/creeper_sandstone_carving.png new file mode 100644 index 00000000..0fce22cf Binary files /dev/null and b/public/textures/chipped/creeper_sandstone_carving.png differ diff --git a/public/textures/chipped/creeper_smooth_stone_carving.png b/public/textures/chipped/creeper_smooth_stone_carving.png new file mode 100644 index 00000000..cbdf76cc Binary files /dev/null and b/public/textures/chipped/creeper_smooth_stone_carving.png differ diff --git a/public/textures/chipped/creeper_snow_block_carving.png b/public/textures/chipped/creeper_snow_block_carving.png new file mode 100644 index 00000000..e72cc9b3 Binary files /dev/null and b/public/textures/chipped/creeper_snow_block_carving.png differ diff --git a/public/textures/chipped/creeper_stone_carving.png b/public/textures/chipped/creeper_stone_carving.png new file mode 100644 index 00000000..f4d0f449 Binary files /dev/null and b/public/textures/chipped/creeper_stone_carving.png differ diff --git a/public/textures/chipped/creeper_tuff_carving.png b/public/textures/chipped/creeper_tuff_carving.png new file mode 100644 index 00000000..28affa7d Binary files /dev/null and b/public/textures/chipped/creeper_tuff_carving.png differ diff --git a/public/textures/chipped/creeper_white_concrete.png b/public/textures/chipped/creeper_white_concrete.png new file mode 100644 index 00000000..c319d3c7 Binary files /dev/null and b/public/textures/chipped/creeper_white_concrete.png differ diff --git a/public/textures/chipped/creeper_yellow_concrete.png b/public/textures/chipped/creeper_yellow_concrete.png new file mode 100644 index 00000000..eebd2771 Binary files /dev/null and b/public/textures/chipped/creeper_yellow_concrete.png differ diff --git a/public/textures/chipped/creeping_nether_sprouts.png b/public/textures/chipped/creeping_nether_sprouts.png new file mode 100644 index 00000000..5477ff1c Binary files /dev/null and b/public/textures/chipped/creeping_nether_sprouts.png differ diff --git a/public/textures/chipped/creepy_carved_pumpkin.png b/public/textures/chipped/creepy_carved_pumpkin.png new file mode 100644 index 00000000..5097ba9f Binary files /dev/null and b/public/textures/chipped/creepy_carved_pumpkin.png differ diff --git a/public/textures/chipped/creepy_jack_o_lantern.png b/public/textures/chipped/creepy_jack_o_lantern.png new file mode 100644 index 00000000..dbef6826 Binary files /dev/null and b/public/textures/chipped/creepy_jack_o_lantern.png differ diff --git a/public/textures/chipped/crimson_barrel.png b/public/textures/chipped/crimson_barrel.png new file mode 100644 index 00000000..b386a369 Binary files /dev/null and b/public/textures/chipped/crimson_barrel.png differ diff --git a/public/textures/chipped/crimson_crate.png b/public/textures/chipped/crimson_crate.png new file mode 100644 index 00000000..51826eb2 Binary files /dev/null and b/public/textures/chipped/crimson_crate.png differ diff --git a/public/textures/chipped/crimson_dried_kelp_block.png b/public/textures/chipped/crimson_dried_kelp_block.png new file mode 100644 index 00000000..91a4bd48 Binary files /dev/null and b/public/textures/chipped/crimson_dried_kelp_block.png differ diff --git a/public/textures/chipped/crimson_fungus_bulb.png b/public/textures/chipped/crimson_fungus_bulb.png new file mode 100644 index 00000000..abc83ff5 Binary files /dev/null and b/public/textures/chipped/crimson_fungus_bulb.png differ diff --git a/public/textures/chipped/crimson_fungus_bushel.png b/public/textures/chipped/crimson_fungus_bushel.png new file mode 100644 index 00000000..f1d2fe73 Binary files /dev/null and b/public/textures/chipped/crimson_fungus_bushel.png differ diff --git a/public/textures/chipped/crimson_fungus_cluster.png b/public/textures/chipped/crimson_fungus_cluster.png new file mode 100644 index 00000000..f60ed823 Binary files /dev/null and b/public/textures/chipped/crimson_fungus_cluster.png differ diff --git a/public/textures/chipped/crimson_fungus_trio.png b/public/textures/chipped/crimson_fungus_trio.png new file mode 100644 index 00000000..0ac3ad38 Binary files /dev/null and b/public/textures/chipped/crimson_fungus_trio.png differ diff --git a/public/textures/chipped/crimson_mangrove_roots.png b/public/textures/chipped/crimson_mangrove_roots.png new file mode 100644 index 00000000..d7737317 Binary files /dev/null and b/public/textures/chipped/crimson_mangrove_roots.png differ diff --git a/public/textures/chipped/crimson_planks_mosaic.png b/public/textures/chipped/crimson_planks_mosaic.png new file mode 100644 index 00000000..6779f670 Binary files /dev/null and b/public/textures/chipped/crimson_planks_mosaic.png differ diff --git a/public/textures/chipped/crimson_planks_panel.png b/public/textures/chipped/crimson_planks_panel.png new file mode 100644 index 00000000..2f38e3e9 Binary files /dev/null and b/public/textures/chipped/crimson_planks_panel.png differ diff --git a/public/textures/chipped/crimson_planks_shavings.png b/public/textures/chipped/crimson_planks_shavings.png new file mode 100644 index 00000000..2c682c0a Binary files /dev/null and b/public/textures/chipped/crimson_planks_shavings.png differ diff --git a/public/textures/chipped/crimson_redstone_torch.png b/public/textures/chipped/crimson_redstone_torch.png new file mode 100644 index 00000000..80436bc9 Binary files /dev/null and b/public/textures/chipped/crimson_redstone_torch.png differ diff --git a/public/textures/chipped/crimson_roots_bloom.png b/public/textures/chipped/crimson_roots_bloom.png new file mode 100644 index 00000000..03dffe4f Binary files /dev/null and b/public/textures/chipped/crimson_roots_bloom.png differ diff --git a/public/textures/chipped/crimson_roots_bramble.png b/public/textures/chipped/crimson_roots_bramble.png new file mode 100644 index 00000000..8e9f96dc Binary files /dev/null and b/public/textures/chipped/crimson_roots_bramble.png differ diff --git a/public/textures/chipped/crimson_roots_bud.png b/public/textures/chipped/crimson_roots_bud.png new file mode 100644 index 00000000..9188eb03 Binary files /dev/null and b/public/textures/chipped/crimson_roots_bud.png differ diff --git a/public/textures/chipped/crimson_roots_bulb.png b/public/textures/chipped/crimson_roots_bulb.png new file mode 100644 index 00000000..f54c7c66 Binary files /dev/null and b/public/textures/chipped/crimson_roots_bulb.png differ diff --git a/public/textures/chipped/crimson_roots_floret.png b/public/textures/chipped/crimson_roots_floret.png new file mode 100644 index 00000000..bd5cb1ef Binary files /dev/null and b/public/textures/chipped/crimson_roots_floret.png differ diff --git a/public/textures/chipped/crimson_torch.png b/public/textures/chipped/crimson_torch.png new file mode 100644 index 00000000..81050cde Binary files /dev/null and b/public/textures/chipped/crimson_torch.png differ diff --git a/public/textures/chipped/crooked_ladder.png b/public/textures/chipped/crooked_ladder.png new file mode 100644 index 00000000..64ec9682 Binary files /dev/null and b/public/textures/chipped/crooked_ladder.png differ diff --git a/public/textures/chipped/crooked_plank_ladder.png b/public/textures/chipped/crooked_plank_ladder.png new file mode 100644 index 00000000..0bf89faf Binary files /dev/null and b/public/textures/chipped/crooked_plank_ladder.png differ diff --git a/public/textures/chipped/crooked_ropeplank_ladder.png b/public/textures/chipped/crooked_ropeplank_ladder.png new file mode 100644 index 00000000..3118f0ab Binary files /dev/null and b/public/textures/chipped/crooked_ropeplank_ladder.png differ diff --git a/public/textures/chipped/cross_haired_black_carpet.png b/public/textures/chipped/cross_haired_black_carpet.png new file mode 100644 index 00000000..e83bb9e9 Binary files /dev/null and b/public/textures/chipped/cross_haired_black_carpet.png differ diff --git a/public/textures/chipped/cross_haired_black_wool.png b/public/textures/chipped/cross_haired_black_wool.png new file mode 100644 index 00000000..2686e579 Binary files /dev/null and b/public/textures/chipped/cross_haired_black_wool.png differ diff --git a/public/textures/chipped/cross_haired_blue_carpet.png b/public/textures/chipped/cross_haired_blue_carpet.png new file mode 100644 index 00000000..0abce4b8 Binary files /dev/null and b/public/textures/chipped/cross_haired_blue_carpet.png differ diff --git a/public/textures/chipped/cross_haired_blue_wool.png b/public/textures/chipped/cross_haired_blue_wool.png new file mode 100644 index 00000000..f768846f Binary files /dev/null and b/public/textures/chipped/cross_haired_blue_wool.png differ diff --git a/public/textures/chipped/cross_haired_brown_carpet.png b/public/textures/chipped/cross_haired_brown_carpet.png new file mode 100644 index 00000000..34fa5fb6 Binary files /dev/null and b/public/textures/chipped/cross_haired_brown_carpet.png differ diff --git a/public/textures/chipped/cross_haired_brown_wool.png b/public/textures/chipped/cross_haired_brown_wool.png new file mode 100644 index 00000000..4e8c3089 Binary files /dev/null and b/public/textures/chipped/cross_haired_brown_wool.png differ diff --git a/public/textures/chipped/cross_haired_cyan_carpet.png b/public/textures/chipped/cross_haired_cyan_carpet.png new file mode 100644 index 00000000..e40a24c4 Binary files /dev/null and b/public/textures/chipped/cross_haired_cyan_carpet.png differ diff --git a/public/textures/chipped/cross_haired_cyan_wool.png b/public/textures/chipped/cross_haired_cyan_wool.png new file mode 100644 index 00000000..e01673e1 Binary files /dev/null and b/public/textures/chipped/cross_haired_cyan_wool.png differ diff --git a/public/textures/chipped/cross_haired_gray_carpet.png b/public/textures/chipped/cross_haired_gray_carpet.png new file mode 100644 index 00000000..02c41235 Binary files /dev/null and b/public/textures/chipped/cross_haired_gray_carpet.png differ diff --git a/public/textures/chipped/cross_haired_gray_wool.png b/public/textures/chipped/cross_haired_gray_wool.png new file mode 100644 index 00000000..b0afba73 Binary files /dev/null and b/public/textures/chipped/cross_haired_gray_wool.png differ diff --git a/public/textures/chipped/cross_haired_green_carpet.png b/public/textures/chipped/cross_haired_green_carpet.png new file mode 100644 index 00000000..7d6ffd78 Binary files /dev/null and b/public/textures/chipped/cross_haired_green_carpet.png differ diff --git a/public/textures/chipped/cross_haired_green_wool.png b/public/textures/chipped/cross_haired_green_wool.png new file mode 100644 index 00000000..0260b23a Binary files /dev/null and b/public/textures/chipped/cross_haired_green_wool.png differ diff --git a/public/textures/chipped/cross_haired_light_blue_carpet.png b/public/textures/chipped/cross_haired_light_blue_carpet.png new file mode 100644 index 00000000..d08b77f9 Binary files /dev/null and b/public/textures/chipped/cross_haired_light_blue_carpet.png differ diff --git a/public/textures/chipped/cross_haired_light_blue_wool.png b/public/textures/chipped/cross_haired_light_blue_wool.png new file mode 100644 index 00000000..bc9c1faa Binary files /dev/null and b/public/textures/chipped/cross_haired_light_blue_wool.png differ diff --git a/public/textures/chipped/cross_haired_light_gray_carpet.png b/public/textures/chipped/cross_haired_light_gray_carpet.png new file mode 100644 index 00000000..5120c9d1 Binary files /dev/null and b/public/textures/chipped/cross_haired_light_gray_carpet.png differ diff --git a/public/textures/chipped/cross_haired_light_gray_wool.png b/public/textures/chipped/cross_haired_light_gray_wool.png new file mode 100644 index 00000000..2267443e Binary files /dev/null and b/public/textures/chipped/cross_haired_light_gray_wool.png differ diff --git a/public/textures/chipped/cross_haired_lime_carpet.png b/public/textures/chipped/cross_haired_lime_carpet.png new file mode 100644 index 00000000..e0f7ab9f Binary files /dev/null and b/public/textures/chipped/cross_haired_lime_carpet.png differ diff --git a/public/textures/chipped/cross_haired_lime_wool.png b/public/textures/chipped/cross_haired_lime_wool.png new file mode 100644 index 00000000..777e35c8 Binary files /dev/null and b/public/textures/chipped/cross_haired_lime_wool.png differ diff --git a/public/textures/chipped/cross_haired_magenta_carpet.png b/public/textures/chipped/cross_haired_magenta_carpet.png new file mode 100644 index 00000000..44637e99 Binary files /dev/null and b/public/textures/chipped/cross_haired_magenta_carpet.png differ diff --git a/public/textures/chipped/cross_haired_magenta_wool.png b/public/textures/chipped/cross_haired_magenta_wool.png new file mode 100644 index 00000000..1bd91a24 Binary files /dev/null and b/public/textures/chipped/cross_haired_magenta_wool.png differ diff --git a/public/textures/chipped/cross_haired_orange_carpet.png b/public/textures/chipped/cross_haired_orange_carpet.png new file mode 100644 index 00000000..36f5911e Binary files /dev/null and b/public/textures/chipped/cross_haired_orange_carpet.png differ diff --git a/public/textures/chipped/cross_haired_orange_wool.png b/public/textures/chipped/cross_haired_orange_wool.png new file mode 100644 index 00000000..aa928b0a Binary files /dev/null and b/public/textures/chipped/cross_haired_orange_wool.png differ diff --git a/public/textures/chipped/cross_haired_pink_carpet.png b/public/textures/chipped/cross_haired_pink_carpet.png new file mode 100644 index 00000000..f4dd18fc Binary files /dev/null and b/public/textures/chipped/cross_haired_pink_carpet.png differ diff --git a/public/textures/chipped/cross_haired_pink_wool.png b/public/textures/chipped/cross_haired_pink_wool.png new file mode 100644 index 00000000..e464d36a Binary files /dev/null and b/public/textures/chipped/cross_haired_pink_wool.png differ diff --git a/public/textures/chipped/cross_haired_purple_carpet.png b/public/textures/chipped/cross_haired_purple_carpet.png new file mode 100644 index 00000000..6f6cc308 Binary files /dev/null and b/public/textures/chipped/cross_haired_purple_carpet.png differ diff --git a/public/textures/chipped/cross_haired_purple_wool.png b/public/textures/chipped/cross_haired_purple_wool.png new file mode 100644 index 00000000..c37fe548 Binary files /dev/null and b/public/textures/chipped/cross_haired_purple_wool.png differ diff --git a/public/textures/chipped/cross_haired_red_carpet.png b/public/textures/chipped/cross_haired_red_carpet.png new file mode 100644 index 00000000..9ff12c78 Binary files /dev/null and b/public/textures/chipped/cross_haired_red_carpet.png differ diff --git a/public/textures/chipped/cross_haired_red_wool.png b/public/textures/chipped/cross_haired_red_wool.png new file mode 100644 index 00000000..470decbc Binary files /dev/null and b/public/textures/chipped/cross_haired_red_wool.png differ diff --git a/public/textures/chipped/cross_haired_white_carpet.png b/public/textures/chipped/cross_haired_white_carpet.png new file mode 100644 index 00000000..200c2e29 Binary files /dev/null and b/public/textures/chipped/cross_haired_white_carpet.png differ diff --git a/public/textures/chipped/cross_haired_white_wool.png b/public/textures/chipped/cross_haired_white_wool.png new file mode 100644 index 00000000..c94eaf23 Binary files /dev/null and b/public/textures/chipped/cross_haired_white_wool.png differ diff --git a/public/textures/chipped/cross_haired_yellow_carpet.png b/public/textures/chipped/cross_haired_yellow_carpet.png new file mode 100644 index 00000000..d5e63a20 Binary files /dev/null and b/public/textures/chipped/cross_haired_yellow_carpet.png differ diff --git a/public/textures/chipped/cross_haired_yellow_wool.png b/public/textures/chipped/cross_haired_yellow_wool.png new file mode 100644 index 00000000..4f4dacae Binary files /dev/null and b/public/textures/chipped/cross_haired_yellow_wool.png differ diff --git a/public/textures/chipped/cross_laced_acacia_planks.png b/public/textures/chipped/cross_laced_acacia_planks.png new file mode 100644 index 00000000..1f6be879 Binary files /dev/null and b/public/textures/chipped/cross_laced_acacia_planks.png differ diff --git a/public/textures/chipped/cross_laced_bamboo_planks.png b/public/textures/chipped/cross_laced_bamboo_planks.png new file mode 100644 index 00000000..b17cffc3 Binary files /dev/null and b/public/textures/chipped/cross_laced_bamboo_planks.png differ diff --git a/public/textures/chipped/cross_laced_birch_planks.png b/public/textures/chipped/cross_laced_birch_planks.png new file mode 100644 index 00000000..b3e00da2 Binary files /dev/null and b/public/textures/chipped/cross_laced_birch_planks.png differ diff --git a/public/textures/chipped/cross_laced_cherry_planks.png b/public/textures/chipped/cross_laced_cherry_planks.png new file mode 100644 index 00000000..64ba86e7 Binary files /dev/null and b/public/textures/chipped/cross_laced_cherry_planks.png differ diff --git a/public/textures/chipped/cross_laced_crimson_planks.png b/public/textures/chipped/cross_laced_crimson_planks.png new file mode 100644 index 00000000..8f09cd04 Binary files /dev/null and b/public/textures/chipped/cross_laced_crimson_planks.png differ diff --git a/public/textures/chipped/cross_laced_dark_oak_planks.png b/public/textures/chipped/cross_laced_dark_oak_planks.png new file mode 100644 index 00000000..be56233a Binary files /dev/null and b/public/textures/chipped/cross_laced_dark_oak_planks.png differ diff --git a/public/textures/chipped/cross_laced_jungle_planks.png b/public/textures/chipped/cross_laced_jungle_planks.png new file mode 100644 index 00000000..191bdef7 Binary files /dev/null and b/public/textures/chipped/cross_laced_jungle_planks.png differ diff --git a/public/textures/chipped/cross_laced_mangrove_planks.png b/public/textures/chipped/cross_laced_mangrove_planks.png new file mode 100644 index 00000000..d0411910 Binary files /dev/null and b/public/textures/chipped/cross_laced_mangrove_planks.png differ diff --git a/public/textures/chipped/cross_laced_oak_planks.png b/public/textures/chipped/cross_laced_oak_planks.png new file mode 100644 index 00000000..e340b3a8 Binary files /dev/null and b/public/textures/chipped/cross_laced_oak_planks.png differ diff --git a/public/textures/chipped/cross_laced_spruce_planks.png b/public/textures/chipped/cross_laced_spruce_planks.png new file mode 100644 index 00000000..f6505273 Binary files /dev/null and b/public/textures/chipped/cross_laced_spruce_planks.png differ diff --git a/public/textures/chipped/cross_laced_warped_planks.png b/public/textures/chipped/cross_laced_warped_planks.png new file mode 100644 index 00000000..de9c18db Binary files /dev/null and b/public/textures/chipped/cross_laced_warped_planks.png differ diff --git a/public/textures/chipped/crossbolted_iron_bars.png b/public/textures/chipped/crossbolted_iron_bars.png new file mode 100644 index 00000000..9c0b9ce4 Binary files /dev/null and b/public/textures/chipped/crossbolted_iron_bars.png differ diff --git a/public/textures/chipped/crossed_acacia_planks.png b/public/textures/chipped/crossed_acacia_planks.png new file mode 100644 index 00000000..afde9c7e Binary files /dev/null and b/public/textures/chipped/crossed_acacia_planks.png differ diff --git a/public/textures/chipped/crossed_bamboo_planks.png b/public/textures/chipped/crossed_bamboo_planks.png new file mode 100644 index 00000000..4a184709 Binary files /dev/null and b/public/textures/chipped/crossed_bamboo_planks.png differ diff --git a/public/textures/chipped/crossed_birch_planks.png b/public/textures/chipped/crossed_birch_planks.png new file mode 100644 index 00000000..0db5cf01 Binary files /dev/null and b/public/textures/chipped/crossed_birch_planks.png differ diff --git a/public/textures/chipped/crossed_black_terracotta.png b/public/textures/chipped/crossed_black_terracotta.png new file mode 100644 index 00000000..7bf77873 Binary files /dev/null and b/public/textures/chipped/crossed_black_terracotta.png differ diff --git a/public/textures/chipped/crossed_blue_terracotta.png b/public/textures/chipped/crossed_blue_terracotta.png new file mode 100644 index 00000000..f620242e Binary files /dev/null and b/public/textures/chipped/crossed_blue_terracotta.png differ diff --git a/public/textures/chipped/crossed_brown_terracotta.png b/public/textures/chipped/crossed_brown_terracotta.png new file mode 100644 index 00000000..825e2e0f Binary files /dev/null and b/public/textures/chipped/crossed_brown_terracotta.png differ diff --git a/public/textures/chipped/crossed_cherry_planks.png b/public/textures/chipped/crossed_cherry_planks.png new file mode 100644 index 00000000..0d54739f Binary files /dev/null and b/public/textures/chipped/crossed_cherry_planks.png differ diff --git a/public/textures/chipped/crossed_crimson_planks.png b/public/textures/chipped/crossed_crimson_planks.png new file mode 100644 index 00000000..c1c4da99 Binary files /dev/null and b/public/textures/chipped/crossed_crimson_planks.png differ diff --git a/public/textures/chipped/crossed_cyan_terracotta.png b/public/textures/chipped/crossed_cyan_terracotta.png new file mode 100644 index 00000000..142420fa Binary files /dev/null and b/public/textures/chipped/crossed_cyan_terracotta.png differ diff --git a/public/textures/chipped/crossed_dark_oak_planks.png b/public/textures/chipped/crossed_dark_oak_planks.png new file mode 100644 index 00000000..4e3df351 Binary files /dev/null and b/public/textures/chipped/crossed_dark_oak_planks.png differ diff --git a/public/textures/chipped/crossed_gray_terracotta.png b/public/textures/chipped/crossed_gray_terracotta.png new file mode 100644 index 00000000..62b7f1f1 Binary files /dev/null and b/public/textures/chipped/crossed_gray_terracotta.png differ diff --git a/public/textures/chipped/crossed_green_terracotta.png b/public/textures/chipped/crossed_green_terracotta.png new file mode 100644 index 00000000..9dd49b64 Binary files /dev/null and b/public/textures/chipped/crossed_green_terracotta.png differ diff --git a/public/textures/chipped/crossed_iron_bars.png b/public/textures/chipped/crossed_iron_bars.png new file mode 100644 index 00000000..9163a7c2 Binary files /dev/null and b/public/textures/chipped/crossed_iron_bars.png differ diff --git a/public/textures/chipped/crossed_jungle_planks.png b/public/textures/chipped/crossed_jungle_planks.png new file mode 100644 index 00000000..e6d83535 Binary files /dev/null and b/public/textures/chipped/crossed_jungle_planks.png differ diff --git a/public/textures/chipped/crossed_light_blue_terracotta.png b/public/textures/chipped/crossed_light_blue_terracotta.png new file mode 100644 index 00000000..c551a785 Binary files /dev/null and b/public/textures/chipped/crossed_light_blue_terracotta.png differ diff --git a/public/textures/chipped/crossed_light_gray_terracotta.png b/public/textures/chipped/crossed_light_gray_terracotta.png new file mode 100644 index 00000000..b36a052e Binary files /dev/null and b/public/textures/chipped/crossed_light_gray_terracotta.png differ diff --git a/public/textures/chipped/crossed_lime_terracotta.png b/public/textures/chipped/crossed_lime_terracotta.png new file mode 100644 index 00000000..cb276c60 Binary files /dev/null and b/public/textures/chipped/crossed_lime_terracotta.png differ diff --git a/public/textures/chipped/crossed_magenta_terracotta.png b/public/textures/chipped/crossed_magenta_terracotta.png new file mode 100644 index 00000000..a1fc752c Binary files /dev/null and b/public/textures/chipped/crossed_magenta_terracotta.png differ diff --git a/public/textures/chipped/crossed_mangrove_planks.png b/public/textures/chipped/crossed_mangrove_planks.png new file mode 100644 index 00000000..1c854bc6 Binary files /dev/null and b/public/textures/chipped/crossed_mangrove_planks.png differ diff --git a/public/textures/chipped/crossed_oak_planks.png b/public/textures/chipped/crossed_oak_planks.png new file mode 100644 index 00000000..865d1f6c Binary files /dev/null and b/public/textures/chipped/crossed_oak_planks.png differ diff --git a/public/textures/chipped/crossed_orange_terracotta.png b/public/textures/chipped/crossed_orange_terracotta.png new file mode 100644 index 00000000..96fceee7 Binary files /dev/null and b/public/textures/chipped/crossed_orange_terracotta.png differ diff --git a/public/textures/chipped/crossed_pink_terracotta.png b/public/textures/chipped/crossed_pink_terracotta.png new file mode 100644 index 00000000..211e07bd Binary files /dev/null and b/public/textures/chipped/crossed_pink_terracotta.png differ diff --git a/public/textures/chipped/crossed_purple_terracotta.png b/public/textures/chipped/crossed_purple_terracotta.png new file mode 100644 index 00000000..980f2601 Binary files /dev/null and b/public/textures/chipped/crossed_purple_terracotta.png differ diff --git a/public/textures/chipped/crossed_red_terracotta.png b/public/textures/chipped/crossed_red_terracotta.png new file mode 100644 index 00000000..2f767912 Binary files /dev/null and b/public/textures/chipped/crossed_red_terracotta.png differ diff --git a/public/textures/chipped/crossed_spruce_planks.png b/public/textures/chipped/crossed_spruce_planks.png new file mode 100644 index 00000000..f1041ba0 Binary files /dev/null and b/public/textures/chipped/crossed_spruce_planks.png differ diff --git a/public/textures/chipped/crossed_terracotta.png b/public/textures/chipped/crossed_terracotta.png new file mode 100644 index 00000000..983d9af4 Binary files /dev/null and b/public/textures/chipped/crossed_terracotta.png differ diff --git a/public/textures/chipped/crossed_warped_planks.png b/public/textures/chipped/crossed_warped_planks.png new file mode 100644 index 00000000..d8bf5969 Binary files /dev/null and b/public/textures/chipped/crossed_warped_planks.png differ diff --git a/public/textures/chipped/crossed_white_terracotta.png b/public/textures/chipped/crossed_white_terracotta.png new file mode 100644 index 00000000..2ea5478c Binary files /dev/null and b/public/textures/chipped/crossed_white_terracotta.png differ diff --git a/public/textures/chipped/crossed_yellow_terracotta.png b/public/textures/chipped/crossed_yellow_terracotta.png new file mode 100644 index 00000000..68cabe6a Binary files /dev/null and b/public/textures/chipped/crossed_yellow_terracotta.png differ diff --git a/public/textures/chipped/crumbled_nether_wart_block.png b/public/textures/chipped/crumbled_nether_wart_block.png new file mode 100644 index 00000000..305248da Binary files /dev/null and b/public/textures/chipped/crumbled_nether_wart_block.png differ diff --git a/public/textures/chipped/crumbled_warped_wart_block.png b/public/textures/chipped/crumbled_warped_wart_block.png new file mode 100644 index 00000000..28a03e23 Binary files /dev/null and b/public/textures/chipped/crumbled_warped_wart_block.png differ diff --git a/public/textures/chipped/crunched_bone_block.png b/public/textures/chipped/crunched_bone_block.png new file mode 100644 index 00000000..fcfc2185 Binary files /dev/null and b/public/textures/chipped/crunched_bone_block.png differ diff --git a/public/textures/chipped/crunched_mud_bricks.png b/public/textures/chipped/crunched_mud_bricks.png new file mode 100644 index 00000000..e1546c89 Binary files /dev/null and b/public/textures/chipped/crunched_mud_bricks.png differ diff --git a/public/textures/chipped/crunched_mud_bricks_bricks.png b/public/textures/chipped/crunched_mud_bricks_bricks.png new file mode 100644 index 00000000..d6c7f9e9 Binary files /dev/null and b/public/textures/chipped/crunched_mud_bricks_bricks.png differ diff --git a/public/textures/chipped/crunched_packed_mud_bricks.png b/public/textures/chipped/crunched_packed_mud_bricks.png new file mode 100644 index 00000000..1513cd93 Binary files /dev/null and b/public/textures/chipped/crunched_packed_mud_bricks.png differ diff --git a/public/textures/chipped/crunchy_moss_block.png b/public/textures/chipped/crunchy_moss_block.png new file mode 100644 index 00000000..39d8b969 Binary files /dev/null and b/public/textures/chipped/crunchy_moss_block.png differ diff --git a/public/textures/chipped/crusted_nether_sprouts.png b/public/textures/chipped/crusted_nether_sprouts.png new file mode 100644 index 00000000..24bbcd52 Binary files /dev/null and b/public/textures/chipped/crusted_nether_sprouts.png differ diff --git a/public/textures/chipped/crying_amethyst_block.png b/public/textures/chipped/crying_amethyst_block.png new file mode 100644 index 00000000..6e52deb1 Binary files /dev/null and b/public/textures/chipped/crying_amethyst_block.png differ diff --git a/public/textures/chipped/crying_ancient_debris.png b/public/textures/chipped/crying_ancient_debris.png new file mode 100644 index 00000000..b55de6f6 Binary files /dev/null and b/public/textures/chipped/crying_ancient_debris.png differ diff --git a/public/textures/chipped/crying_andesite.png b/public/textures/chipped/crying_andesite.png new file mode 100644 index 00000000..15421c01 Binary files /dev/null and b/public/textures/chipped/crying_andesite.png differ diff --git a/public/textures/chipped/crying_basalt.png b/public/textures/chipped/crying_basalt.png new file mode 100644 index 00000000..605ad350 Binary files /dev/null and b/public/textures/chipped/crying_basalt.png differ diff --git a/public/textures/chipped/crying_blackstone.png b/public/textures/chipped/crying_blackstone.png new file mode 100644 index 00000000..1f92606e Binary files /dev/null and b/public/textures/chipped/crying_blackstone.png differ diff --git a/public/textures/chipped/crying_blue_ice.png b/public/textures/chipped/crying_blue_ice.png new file mode 100644 index 00000000..11ab282b Binary files /dev/null and b/public/textures/chipped/crying_blue_ice.png differ diff --git a/public/textures/chipped/crying_borderless_bricks.png b/public/textures/chipped/crying_borderless_bricks.png new file mode 100644 index 00000000..891dfd3f Binary files /dev/null and b/public/textures/chipped/crying_borderless_bricks.png differ diff --git a/public/textures/chipped/crying_bricks.png b/public/textures/chipped/crying_bricks.png new file mode 100644 index 00000000..e425b2db Binary files /dev/null and b/public/textures/chipped/crying_bricks.png differ diff --git a/public/textures/chipped/crying_calcite.png b/public/textures/chipped/crying_calcite.png new file mode 100644 index 00000000..74728d78 Binary files /dev/null and b/public/textures/chipped/crying_calcite.png differ diff --git a/public/textures/chipped/crying_clay.png b/public/textures/chipped/crying_clay.png new file mode 100644 index 00000000..ec666820 Binary files /dev/null and b/public/textures/chipped/crying_clay.png differ diff --git a/public/textures/chipped/crying_coal_block.png b/public/textures/chipped/crying_coal_block.png new file mode 100644 index 00000000..a6dbff43 Binary files /dev/null and b/public/textures/chipped/crying_coal_block.png differ diff --git a/public/textures/chipped/crying_cobblestone.png b/public/textures/chipped/crying_cobblestone.png new file mode 100644 index 00000000..5081aadc Binary files /dev/null and b/public/textures/chipped/crying_cobblestone.png differ diff --git a/public/textures/chipped/crying_crimson_stem.png b/public/textures/chipped/crying_crimson_stem.png new file mode 100644 index 00000000..b54ee766 Binary files /dev/null and b/public/textures/chipped/crying_crimson_stem.png differ diff --git a/public/textures/chipped/crying_crying_obsidian.png b/public/textures/chipped/crying_crying_obsidian.png new file mode 100644 index 00000000..56f8403e Binary files /dev/null and b/public/textures/chipped/crying_crying_obsidian.png differ diff --git a/public/textures/chipped/crying_dark_prismarine.png b/public/textures/chipped/crying_dark_prismarine.png new file mode 100644 index 00000000..b9d0a9b6 Binary files /dev/null and b/public/textures/chipped/crying_dark_prismarine.png differ diff --git a/public/textures/chipped/crying_deepslate.png b/public/textures/chipped/crying_deepslate.png new file mode 100644 index 00000000..0bffb930 Binary files /dev/null and b/public/textures/chipped/crying_deepslate.png differ diff --git a/public/textures/chipped/crying_diorite.png b/public/textures/chipped/crying_diorite.png new file mode 100644 index 00000000..3503d1a6 Binary files /dev/null and b/public/textures/chipped/crying_diorite.png differ diff --git a/public/textures/chipped/crying_dirt.png b/public/textures/chipped/crying_dirt.png new file mode 100644 index 00000000..f07dc5fc Binary files /dev/null and b/public/textures/chipped/crying_dirt.png differ diff --git a/public/textures/chipped/crying_dripstone_block.png b/public/textures/chipped/crying_dripstone_block.png new file mode 100644 index 00000000..880f8e19 Binary files /dev/null and b/public/textures/chipped/crying_dripstone_block.png differ diff --git a/public/textures/chipped/crying_end_stone.png b/public/textures/chipped/crying_end_stone.png new file mode 100644 index 00000000..456cb3a9 Binary files /dev/null and b/public/textures/chipped/crying_end_stone.png differ diff --git a/public/textures/chipped/crying_gilded_blackstone.png b/public/textures/chipped/crying_gilded_blackstone.png new file mode 100644 index 00000000..d3b4b1b7 Binary files /dev/null and b/public/textures/chipped/crying_gilded_blackstone.png differ diff --git a/public/textures/chipped/crying_granite.png b/public/textures/chipped/crying_granite.png new file mode 100644 index 00000000..629481b5 Binary files /dev/null and b/public/textures/chipped/crying_granite.png differ diff --git a/public/textures/chipped/crying_ice.png b/public/textures/chipped/crying_ice.png new file mode 100644 index 00000000..376d0c2e Binary files /dev/null and b/public/textures/chipped/crying_ice.png differ diff --git a/public/textures/chipped/crying_lapis_block.png b/public/textures/chipped/crying_lapis_block.png new file mode 100644 index 00000000..106c665c Binary files /dev/null and b/public/textures/chipped/crying_lapis_block.png differ diff --git a/public/textures/chipped/crying_lodestone.png b/public/textures/chipped/crying_lodestone.png new file mode 100644 index 00000000..44748790 Binary files /dev/null and b/public/textures/chipped/crying_lodestone.png differ diff --git a/public/textures/chipped/crying_magma_block.png b/public/textures/chipped/crying_magma_block.png new file mode 100644 index 00000000..4d081f04 Binary files /dev/null and b/public/textures/chipped/crying_magma_block.png differ diff --git a/public/textures/chipped/crying_mossy_cobblestone.png b/public/textures/chipped/crying_mossy_cobblestone.png new file mode 100644 index 00000000..e2a85e18 Binary files /dev/null and b/public/textures/chipped/crying_mossy_cobblestone.png differ diff --git a/public/textures/chipped/crying_mossy_stone_bricks.png b/public/textures/chipped/crying_mossy_stone_bricks.png new file mode 100644 index 00000000..09cf0a8b Binary files /dev/null and b/public/textures/chipped/crying_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/crying_mud.png b/public/textures/chipped/crying_mud.png new file mode 100644 index 00000000..cb7511e8 Binary files /dev/null and b/public/textures/chipped/crying_mud.png differ diff --git a/public/textures/chipped/crying_mud_bricks.png b/public/textures/chipped/crying_mud_bricks.png new file mode 100644 index 00000000..71257425 Binary files /dev/null and b/public/textures/chipped/crying_mud_bricks.png differ diff --git a/public/textures/chipped/crying_nether_bricks.png b/public/textures/chipped/crying_nether_bricks.png new file mode 100644 index 00000000..3d46af3c Binary files /dev/null and b/public/textures/chipped/crying_nether_bricks.png differ diff --git a/public/textures/chipped/crying_netherrack.png b/public/textures/chipped/crying_netherrack.png new file mode 100644 index 00000000..b172a4c7 Binary files /dev/null and b/public/textures/chipped/crying_netherrack.png differ diff --git a/public/textures/chipped/crying_obsidian.png b/public/textures/chipped/crying_obsidian.png new file mode 100644 index 00000000..baebf308 Binary files /dev/null and b/public/textures/chipped/crying_obsidian.png differ diff --git a/public/textures/chipped/crying_obsidian_bricks.png b/public/textures/chipped/crying_obsidian_bricks.png new file mode 100644 index 00000000..5d8c240d Binary files /dev/null and b/public/textures/chipped/crying_obsidian_bricks.png differ diff --git a/public/textures/chipped/crying_obsidian_mini_tiles.png b/public/textures/chipped/crying_obsidian_mini_tiles.png new file mode 100644 index 00000000..bc88586e Binary files /dev/null and b/public/textures/chipped/crying_obsidian_mini_tiles.png differ diff --git a/public/textures/chipped/crying_obsidian_pillar.png b/public/textures/chipped/crying_obsidian_pillar.png new file mode 100644 index 00000000..3904821f Binary files /dev/null and b/public/textures/chipped/crying_obsidian_pillar.png differ diff --git a/public/textures/chipped/crying_obsidian_pillar_top.png b/public/textures/chipped/crying_obsidian_pillar_top.png new file mode 100644 index 00000000..6f5f8d57 Binary files /dev/null and b/public/textures/chipped/crying_obsidian_pillar_top.png differ diff --git a/public/textures/chipped/crying_obsidian_scales.png b/public/textures/chipped/crying_obsidian_scales.png new file mode 100644 index 00000000..bc313b16 Binary files /dev/null and b/public/textures/chipped/crying_obsidian_scales.png differ diff --git a/public/textures/chipped/crying_packed_ice.png b/public/textures/chipped/crying_packed_ice.png new file mode 100644 index 00000000..e78b2e20 Binary files /dev/null and b/public/textures/chipped/crying_packed_ice.png differ diff --git a/public/textures/chipped/crying_packed_mud.png b/public/textures/chipped/crying_packed_mud.png new file mode 100644 index 00000000..9b3ad307 Binary files /dev/null and b/public/textures/chipped/crying_packed_mud.png differ diff --git a/public/textures/chipped/crying_prismarine.png b/public/textures/chipped/crying_prismarine.png new file mode 100644 index 00000000..dcdf251c Binary files /dev/null and b/public/textures/chipped/crying_prismarine.png differ diff --git a/public/textures/chipped/crying_purpur_block.png b/public/textures/chipped/crying_purpur_block.png new file mode 100644 index 00000000..2d4ab0f9 Binary files /dev/null and b/public/textures/chipped/crying_purpur_block.png differ diff --git a/public/textures/chipped/crying_quartz_block.png b/public/textures/chipped/crying_quartz_block.png new file mode 100644 index 00000000..283fb645 Binary files /dev/null and b/public/textures/chipped/crying_quartz_block.png differ diff --git a/public/textures/chipped/crying_raw_copper_block.png b/public/textures/chipped/crying_raw_copper_block.png new file mode 100644 index 00000000..187e9eb2 Binary files /dev/null and b/public/textures/chipped/crying_raw_copper_block.png differ diff --git a/public/textures/chipped/crying_raw_gold_block.png b/public/textures/chipped/crying_raw_gold_block.png new file mode 100644 index 00000000..964d5e03 Binary files /dev/null and b/public/textures/chipped/crying_raw_gold_block.png differ diff --git a/public/textures/chipped/crying_raw_iron_block.png b/public/textures/chipped/crying_raw_iron_block.png new file mode 100644 index 00000000..adc71ea8 Binary files /dev/null and b/public/textures/chipped/crying_raw_iron_block.png differ diff --git a/public/textures/chipped/crying_red_nether_bricks.png b/public/textures/chipped/crying_red_nether_bricks.png new file mode 100644 index 00000000..96543d7b Binary files /dev/null and b/public/textures/chipped/crying_red_nether_bricks.png differ diff --git a/public/textures/chipped/crying_red_sandstone.png b/public/textures/chipped/crying_red_sandstone.png new file mode 100644 index 00000000..55757b29 Binary files /dev/null and b/public/textures/chipped/crying_red_sandstone.png differ diff --git a/public/textures/chipped/crying_redstone_block.png b/public/textures/chipped/crying_redstone_block.png new file mode 100644 index 00000000..64bde06f Binary files /dev/null and b/public/textures/chipped/crying_redstone_block.png differ diff --git a/public/textures/chipped/crying_sandstone.png b/public/textures/chipped/crying_sandstone.png new file mode 100644 index 00000000..4996a5a0 Binary files /dev/null and b/public/textures/chipped/crying_sandstone.png differ diff --git a/public/textures/chipped/crying_smooth_stone.png b/public/textures/chipped/crying_smooth_stone.png new file mode 100644 index 00000000..f6a709c4 Binary files /dev/null and b/public/textures/chipped/crying_smooth_stone.png differ diff --git a/public/textures/chipped/crying_snow_block.png b/public/textures/chipped/crying_snow_block.png new file mode 100644 index 00000000..42cad0fe Binary files /dev/null and b/public/textures/chipped/crying_snow_block.png differ diff --git a/public/textures/chipped/crying_stone.png b/public/textures/chipped/crying_stone.png new file mode 100644 index 00000000..8b083cd6 Binary files /dev/null and b/public/textures/chipped/crying_stone.png differ diff --git a/public/textures/chipped/crying_tuff.png b/public/textures/chipped/crying_tuff.png new file mode 100644 index 00000000..6a7e6f1f Binary files /dev/null and b/public/textures/chipped/crying_tuff.png differ diff --git a/public/textures/chipped/cubed_black_carpet.png b/public/textures/chipped/cubed_black_carpet.png new file mode 100644 index 00000000..92e4a115 Binary files /dev/null and b/public/textures/chipped/cubed_black_carpet.png differ diff --git a/public/textures/chipped/cubed_black_wool.png b/public/textures/chipped/cubed_black_wool.png new file mode 100644 index 00000000..4158d901 Binary files /dev/null and b/public/textures/chipped/cubed_black_wool.png differ diff --git a/public/textures/chipped/cubed_blue_carpet.png b/public/textures/chipped/cubed_blue_carpet.png new file mode 100644 index 00000000..3d47e011 Binary files /dev/null and b/public/textures/chipped/cubed_blue_carpet.png differ diff --git a/public/textures/chipped/cubed_blue_wool.png b/public/textures/chipped/cubed_blue_wool.png new file mode 100644 index 00000000..1940f130 Binary files /dev/null and b/public/textures/chipped/cubed_blue_wool.png differ diff --git a/public/textures/chipped/cubed_brown_carpet.png b/public/textures/chipped/cubed_brown_carpet.png new file mode 100644 index 00000000..09eb05c4 Binary files /dev/null and b/public/textures/chipped/cubed_brown_carpet.png differ diff --git a/public/textures/chipped/cubed_brown_wool.png b/public/textures/chipped/cubed_brown_wool.png new file mode 100644 index 00000000..261f3b18 Binary files /dev/null and b/public/textures/chipped/cubed_brown_wool.png differ diff --git a/public/textures/chipped/cubed_cyan_carpet.png b/public/textures/chipped/cubed_cyan_carpet.png new file mode 100644 index 00000000..e166b61e Binary files /dev/null and b/public/textures/chipped/cubed_cyan_carpet.png differ diff --git a/public/textures/chipped/cubed_cyan_wool.png b/public/textures/chipped/cubed_cyan_wool.png new file mode 100644 index 00000000..057a0383 Binary files /dev/null and b/public/textures/chipped/cubed_cyan_wool.png differ diff --git a/public/textures/chipped/cubed_gray_carpet.png b/public/textures/chipped/cubed_gray_carpet.png new file mode 100644 index 00000000..12eb0396 Binary files /dev/null and b/public/textures/chipped/cubed_gray_carpet.png differ diff --git a/public/textures/chipped/cubed_gray_wool.png b/public/textures/chipped/cubed_gray_wool.png new file mode 100644 index 00000000..c9d5c843 Binary files /dev/null and b/public/textures/chipped/cubed_gray_wool.png differ diff --git a/public/textures/chipped/cubed_green_carpet.png b/public/textures/chipped/cubed_green_carpet.png new file mode 100644 index 00000000..f2891daf Binary files /dev/null and b/public/textures/chipped/cubed_green_carpet.png differ diff --git a/public/textures/chipped/cubed_green_wool.png b/public/textures/chipped/cubed_green_wool.png new file mode 100644 index 00000000..4b1ef4b1 Binary files /dev/null and b/public/textures/chipped/cubed_green_wool.png differ diff --git a/public/textures/chipped/cubed_light_blue_carpet.png b/public/textures/chipped/cubed_light_blue_carpet.png new file mode 100644 index 00000000..284688ce Binary files /dev/null and b/public/textures/chipped/cubed_light_blue_carpet.png differ diff --git a/public/textures/chipped/cubed_light_blue_wool.png b/public/textures/chipped/cubed_light_blue_wool.png new file mode 100644 index 00000000..9de1bb87 Binary files /dev/null and b/public/textures/chipped/cubed_light_blue_wool.png differ diff --git a/public/textures/chipped/cubed_light_gray_carpet.png b/public/textures/chipped/cubed_light_gray_carpet.png new file mode 100644 index 00000000..5d6076ce Binary files /dev/null and b/public/textures/chipped/cubed_light_gray_carpet.png differ diff --git a/public/textures/chipped/cubed_light_gray_wool.png b/public/textures/chipped/cubed_light_gray_wool.png new file mode 100644 index 00000000..97001cff Binary files /dev/null and b/public/textures/chipped/cubed_light_gray_wool.png differ diff --git a/public/textures/chipped/cubed_lime_carpet.png b/public/textures/chipped/cubed_lime_carpet.png new file mode 100644 index 00000000..edc4499c Binary files /dev/null and b/public/textures/chipped/cubed_lime_carpet.png differ diff --git a/public/textures/chipped/cubed_lime_wool.png b/public/textures/chipped/cubed_lime_wool.png new file mode 100644 index 00000000..9f46bc75 Binary files /dev/null and b/public/textures/chipped/cubed_lime_wool.png differ diff --git a/public/textures/chipped/cubed_magenta_carpet.png b/public/textures/chipped/cubed_magenta_carpet.png new file mode 100644 index 00000000..e90a0634 Binary files /dev/null and b/public/textures/chipped/cubed_magenta_carpet.png differ diff --git a/public/textures/chipped/cubed_magenta_wool.png b/public/textures/chipped/cubed_magenta_wool.png new file mode 100644 index 00000000..8c6487c9 Binary files /dev/null and b/public/textures/chipped/cubed_magenta_wool.png differ diff --git a/public/textures/chipped/cubed_oak_bookshelf.png b/public/textures/chipped/cubed_oak_bookshelf.png new file mode 100644 index 00000000..29c8270c Binary files /dev/null and b/public/textures/chipped/cubed_oak_bookshelf.png differ diff --git a/public/textures/chipped/cubed_oak_empty_bookshelf.png b/public/textures/chipped/cubed_oak_empty_bookshelf.png new file mode 100644 index 00000000..8a7ede0b Binary files /dev/null and b/public/textures/chipped/cubed_oak_empty_bookshelf.png differ diff --git a/public/textures/chipped/cubed_oak_spaced_bookshelf.png b/public/textures/chipped/cubed_oak_spaced_bookshelf.png new file mode 100644 index 00000000..429395d6 Binary files /dev/null and b/public/textures/chipped/cubed_oak_spaced_bookshelf.png differ diff --git a/public/textures/chipped/cubed_oak_webbed_bookshelf.png b/public/textures/chipped/cubed_oak_webbed_bookshelf.png new file mode 100644 index 00000000..fd9725d5 Binary files /dev/null and b/public/textures/chipped/cubed_oak_webbed_bookshelf.png differ diff --git a/public/textures/chipped/cubed_orange_carpet.png b/public/textures/chipped/cubed_orange_carpet.png new file mode 100644 index 00000000..7b37ab53 Binary files /dev/null and b/public/textures/chipped/cubed_orange_carpet.png differ diff --git a/public/textures/chipped/cubed_orange_wool.png b/public/textures/chipped/cubed_orange_wool.png new file mode 100644 index 00000000..ba588c55 Binary files /dev/null and b/public/textures/chipped/cubed_orange_wool.png differ diff --git a/public/textures/chipped/cubed_pink_carpet.png b/public/textures/chipped/cubed_pink_carpet.png new file mode 100644 index 00000000..3ec6b38c Binary files /dev/null and b/public/textures/chipped/cubed_pink_carpet.png differ diff --git a/public/textures/chipped/cubed_pink_wool.png b/public/textures/chipped/cubed_pink_wool.png new file mode 100644 index 00000000..a777abc1 Binary files /dev/null and b/public/textures/chipped/cubed_pink_wool.png differ diff --git a/public/textures/chipped/cubed_purple_carpet.png b/public/textures/chipped/cubed_purple_carpet.png new file mode 100644 index 00000000..fa221585 Binary files /dev/null and b/public/textures/chipped/cubed_purple_carpet.png differ diff --git a/public/textures/chipped/cubed_purple_wool.png b/public/textures/chipped/cubed_purple_wool.png new file mode 100644 index 00000000..01f4f444 Binary files /dev/null and b/public/textures/chipped/cubed_purple_wool.png differ diff --git a/public/textures/chipped/cubed_red_carpet.png b/public/textures/chipped/cubed_red_carpet.png new file mode 100644 index 00000000..f9a81f08 Binary files /dev/null and b/public/textures/chipped/cubed_red_carpet.png differ diff --git a/public/textures/chipped/cubed_red_wool.png b/public/textures/chipped/cubed_red_wool.png new file mode 100644 index 00000000..ed4201dc Binary files /dev/null and b/public/textures/chipped/cubed_red_wool.png differ diff --git a/public/textures/chipped/cubed_white_carpet.png b/public/textures/chipped/cubed_white_carpet.png new file mode 100644 index 00000000..d5ba43f3 Binary files /dev/null and b/public/textures/chipped/cubed_white_carpet.png differ diff --git a/public/textures/chipped/cubed_white_wool.png b/public/textures/chipped/cubed_white_wool.png new file mode 100644 index 00000000..7cfe620f Binary files /dev/null and b/public/textures/chipped/cubed_white_wool.png differ diff --git a/public/textures/chipped/cubed_yellow_carpet.png b/public/textures/chipped/cubed_yellow_carpet.png new file mode 100644 index 00000000..b0f80167 Binary files /dev/null and b/public/textures/chipped/cubed_yellow_carpet.png differ diff --git a/public/textures/chipped/cubed_yellow_wool.png b/public/textures/chipped/cubed_yellow_wool.png new file mode 100644 index 00000000..a6d02e64 Binary files /dev/null and b/public/textures/chipped/cubed_yellow_wool.png differ diff --git a/public/textures/chipped/curled_black_terracotta.png b/public/textures/chipped/curled_black_terracotta.png new file mode 100644 index 00000000..f9650a0a Binary files /dev/null and b/public/textures/chipped/curled_black_terracotta.png differ diff --git a/public/textures/chipped/curled_blue_terracotta.png b/public/textures/chipped/curled_blue_terracotta.png new file mode 100644 index 00000000..a6cdb8f7 Binary files /dev/null and b/public/textures/chipped/curled_blue_terracotta.png differ diff --git a/public/textures/chipped/curled_brown_terracotta.png b/public/textures/chipped/curled_brown_terracotta.png new file mode 100644 index 00000000..cf629921 Binary files /dev/null and b/public/textures/chipped/curled_brown_terracotta.png differ diff --git a/public/textures/chipped/curled_cyan_terracotta.png b/public/textures/chipped/curled_cyan_terracotta.png new file mode 100644 index 00000000..e4f7ddc3 Binary files /dev/null and b/public/textures/chipped/curled_cyan_terracotta.png differ diff --git a/public/textures/chipped/curled_gray_terracotta.png b/public/textures/chipped/curled_gray_terracotta.png new file mode 100644 index 00000000..35364fed Binary files /dev/null and b/public/textures/chipped/curled_gray_terracotta.png differ diff --git a/public/textures/chipped/curled_green_terracotta.png b/public/textures/chipped/curled_green_terracotta.png new file mode 100644 index 00000000..ac1ef327 Binary files /dev/null and b/public/textures/chipped/curled_green_terracotta.png differ diff --git a/public/textures/chipped/curled_light_blue_terracotta.png b/public/textures/chipped/curled_light_blue_terracotta.png new file mode 100644 index 00000000..4f69bebb Binary files /dev/null and b/public/textures/chipped/curled_light_blue_terracotta.png differ diff --git a/public/textures/chipped/curled_light_gray_terracotta.png b/public/textures/chipped/curled_light_gray_terracotta.png new file mode 100644 index 00000000..5931a7b0 Binary files /dev/null and b/public/textures/chipped/curled_light_gray_terracotta.png differ diff --git a/public/textures/chipped/curled_lime_terracotta.png b/public/textures/chipped/curled_lime_terracotta.png new file mode 100644 index 00000000..f75d59c8 Binary files /dev/null and b/public/textures/chipped/curled_lime_terracotta.png differ diff --git a/public/textures/chipped/curled_magenta_terracotta.png b/public/textures/chipped/curled_magenta_terracotta.png new file mode 100644 index 00000000..e31329d8 Binary files /dev/null and b/public/textures/chipped/curled_magenta_terracotta.png differ diff --git a/public/textures/chipped/curled_orange_terracotta.png b/public/textures/chipped/curled_orange_terracotta.png new file mode 100644 index 00000000..c1544187 Binary files /dev/null and b/public/textures/chipped/curled_orange_terracotta.png differ diff --git a/public/textures/chipped/curled_pink_terracotta.png b/public/textures/chipped/curled_pink_terracotta.png new file mode 100644 index 00000000..152d30d2 Binary files /dev/null and b/public/textures/chipped/curled_pink_terracotta.png differ diff --git a/public/textures/chipped/curled_purple_terracotta.png b/public/textures/chipped/curled_purple_terracotta.png new file mode 100644 index 00000000..3b5c7522 Binary files /dev/null and b/public/textures/chipped/curled_purple_terracotta.png differ diff --git a/public/textures/chipped/curled_red_terracotta.png b/public/textures/chipped/curled_red_terracotta.png new file mode 100644 index 00000000..c8254119 Binary files /dev/null and b/public/textures/chipped/curled_red_terracotta.png differ diff --git a/public/textures/chipped/curled_terracotta.png b/public/textures/chipped/curled_terracotta.png new file mode 100644 index 00000000..82626103 Binary files /dev/null and b/public/textures/chipped/curled_terracotta.png differ diff --git a/public/textures/chipped/curled_white_terracotta.png b/public/textures/chipped/curled_white_terracotta.png new file mode 100644 index 00000000..6bd1973d Binary files /dev/null and b/public/textures/chipped/curled_white_terracotta.png differ diff --git a/public/textures/chipped/curled_yellow_terracotta.png b/public/textures/chipped/curled_yellow_terracotta.png new file mode 100644 index 00000000..79bbad91 Binary files /dev/null and b/public/textures/chipped/curled_yellow_terracotta.png differ diff --git a/public/textures/chipped/curly_amethyst_block_pillar.png b/public/textures/chipped/curly_amethyst_block_pillar.png new file mode 100644 index 00000000..58cbfb6c Binary files /dev/null and b/public/textures/chipped/curly_amethyst_block_pillar.png differ diff --git a/public/textures/chipped/curly_ancient_debris_pillar.png b/public/textures/chipped/curly_ancient_debris_pillar.png new file mode 100644 index 00000000..2da1ca0c Binary files /dev/null and b/public/textures/chipped/curly_ancient_debris_pillar.png differ diff --git a/public/textures/chipped/curly_andesite_pillar.png b/public/textures/chipped/curly_andesite_pillar.png new file mode 100644 index 00000000..d70ef5cd Binary files /dev/null and b/public/textures/chipped/curly_andesite_pillar.png differ diff --git a/public/textures/chipped/curly_basalt_pillar.png b/public/textures/chipped/curly_basalt_pillar.png new file mode 100644 index 00000000..750ce56e Binary files /dev/null and b/public/textures/chipped/curly_basalt_pillar.png differ diff --git a/public/textures/chipped/curly_blackstone_pillar.png b/public/textures/chipped/curly_blackstone_pillar.png new file mode 100644 index 00000000..8158f4ac Binary files /dev/null and b/public/textures/chipped/curly_blackstone_pillar.png differ diff --git a/public/textures/chipped/curly_blue_ice_pillar.png b/public/textures/chipped/curly_blue_ice_pillar.png new file mode 100644 index 00000000..eeda0ed3 Binary files /dev/null and b/public/textures/chipped/curly_blue_ice_pillar.png differ diff --git a/public/textures/chipped/curly_borderless_bricks_pillar.png b/public/textures/chipped/curly_borderless_bricks_pillar.png new file mode 100644 index 00000000..274bbc74 Binary files /dev/null and b/public/textures/chipped/curly_borderless_bricks_pillar.png differ diff --git a/public/textures/chipped/curly_bricks_pillar.png b/public/textures/chipped/curly_bricks_pillar.png new file mode 100644 index 00000000..2762d0bb Binary files /dev/null and b/public/textures/chipped/curly_bricks_pillar.png differ diff --git a/public/textures/chipped/curly_calcite_pillar.png b/public/textures/chipped/curly_calcite_pillar.png new file mode 100644 index 00000000..bc1e245e Binary files /dev/null and b/public/textures/chipped/curly_calcite_pillar.png differ diff --git a/public/textures/chipped/curly_clay_pillar.png b/public/textures/chipped/curly_clay_pillar.png new file mode 100644 index 00000000..7501e697 Binary files /dev/null and b/public/textures/chipped/curly_clay_pillar.png differ diff --git a/public/textures/chipped/curly_coal_block_pillar.png b/public/textures/chipped/curly_coal_block_pillar.png new file mode 100644 index 00000000..3f2b0b6d Binary files /dev/null and b/public/textures/chipped/curly_coal_block_pillar.png differ diff --git a/public/textures/chipped/curly_cobblestone_pillar.png b/public/textures/chipped/curly_cobblestone_pillar.png new file mode 100644 index 00000000..c5f34b12 Binary files /dev/null and b/public/textures/chipped/curly_cobblestone_pillar.png differ diff --git a/public/textures/chipped/curly_crying_obsidian_pillar.png b/public/textures/chipped/curly_crying_obsidian_pillar.png new file mode 100644 index 00000000..ba0ca5dd Binary files /dev/null and b/public/textures/chipped/curly_crying_obsidian_pillar.png differ diff --git a/public/textures/chipped/curly_dark_prismarine_pillar.png b/public/textures/chipped/curly_dark_prismarine_pillar.png new file mode 100644 index 00000000..6919011c Binary files /dev/null and b/public/textures/chipped/curly_dark_prismarine_pillar.png differ diff --git a/public/textures/chipped/curly_deepslate_pillar.png b/public/textures/chipped/curly_deepslate_pillar.png new file mode 100644 index 00000000..46899cd9 Binary files /dev/null and b/public/textures/chipped/curly_deepslate_pillar.png differ diff --git a/public/textures/chipped/curly_diorite_pillar.png b/public/textures/chipped/curly_diorite_pillar.png new file mode 100644 index 00000000..441ebb30 Binary files /dev/null and b/public/textures/chipped/curly_diorite_pillar.png differ diff --git a/public/textures/chipped/curly_dirt_pillar.png b/public/textures/chipped/curly_dirt_pillar.png new file mode 100644 index 00000000..5baaca31 Binary files /dev/null and b/public/textures/chipped/curly_dirt_pillar.png differ diff --git a/public/textures/chipped/curly_dripstone_block_pillar.png b/public/textures/chipped/curly_dripstone_block_pillar.png new file mode 100644 index 00000000..25ae33aa Binary files /dev/null and b/public/textures/chipped/curly_dripstone_block_pillar.png differ diff --git a/public/textures/chipped/curly_end_stone_pillar.png b/public/textures/chipped/curly_end_stone_pillar.png new file mode 100644 index 00000000..a3972f53 Binary files /dev/null and b/public/textures/chipped/curly_end_stone_pillar.png differ diff --git a/public/textures/chipped/curly_gilded_blackstone_pillar.png b/public/textures/chipped/curly_gilded_blackstone_pillar.png new file mode 100644 index 00000000..1ce12971 Binary files /dev/null and b/public/textures/chipped/curly_gilded_blackstone_pillar.png differ diff --git a/public/textures/chipped/curly_granite_pillar.png b/public/textures/chipped/curly_granite_pillar.png new file mode 100644 index 00000000..baa50be2 Binary files /dev/null and b/public/textures/chipped/curly_granite_pillar.png differ diff --git a/public/textures/chipped/curly_ice_pillar.png b/public/textures/chipped/curly_ice_pillar.png new file mode 100644 index 00000000..153cb5e5 Binary files /dev/null and b/public/textures/chipped/curly_ice_pillar.png differ diff --git a/public/textures/chipped/curly_lapis_block_pillar.png b/public/textures/chipped/curly_lapis_block_pillar.png new file mode 100644 index 00000000..3d8f3f9c Binary files /dev/null and b/public/textures/chipped/curly_lapis_block_pillar.png differ diff --git a/public/textures/chipped/curly_lodestone_pillar.png b/public/textures/chipped/curly_lodestone_pillar.png new file mode 100644 index 00000000..f93bbce7 Binary files /dev/null and b/public/textures/chipped/curly_lodestone_pillar.png differ diff --git a/public/textures/chipped/curly_magma_block_pillar.png b/public/textures/chipped/curly_magma_block_pillar.png new file mode 100644 index 00000000..7fbde798 Binary files /dev/null and b/public/textures/chipped/curly_magma_block_pillar.png differ diff --git a/public/textures/chipped/curly_mossy_cobblestone_pillar.png b/public/textures/chipped/curly_mossy_cobblestone_pillar.png new file mode 100644 index 00000000..b68f3703 Binary files /dev/null and b/public/textures/chipped/curly_mossy_cobblestone_pillar.png differ diff --git a/public/textures/chipped/curly_mossy_stone_bricks_pillar.png b/public/textures/chipped/curly_mossy_stone_bricks_pillar.png new file mode 100644 index 00000000..a332cbdb Binary files /dev/null and b/public/textures/chipped/curly_mossy_stone_bricks_pillar.png differ diff --git a/public/textures/chipped/curly_mud_bricks_pillar.png b/public/textures/chipped/curly_mud_bricks_pillar.png new file mode 100644 index 00000000..b1957f36 Binary files /dev/null and b/public/textures/chipped/curly_mud_bricks_pillar.png differ diff --git a/public/textures/chipped/curly_mud_pillar.png b/public/textures/chipped/curly_mud_pillar.png new file mode 100644 index 00000000..30f715c2 Binary files /dev/null and b/public/textures/chipped/curly_mud_pillar.png differ diff --git a/public/textures/chipped/curly_nether_bricks_pillar.png b/public/textures/chipped/curly_nether_bricks_pillar.png new file mode 100644 index 00000000..70ecd2bd Binary files /dev/null and b/public/textures/chipped/curly_nether_bricks_pillar.png differ diff --git a/public/textures/chipped/curly_netherrack_pillar.png b/public/textures/chipped/curly_netherrack_pillar.png new file mode 100644 index 00000000..a8978d8b Binary files /dev/null and b/public/textures/chipped/curly_netherrack_pillar.png differ diff --git a/public/textures/chipped/curly_obsidian_pillar.png b/public/textures/chipped/curly_obsidian_pillar.png new file mode 100644 index 00000000..96f072cd Binary files /dev/null and b/public/textures/chipped/curly_obsidian_pillar.png differ diff --git a/public/textures/chipped/curly_packed_ice_pillar.png b/public/textures/chipped/curly_packed_ice_pillar.png new file mode 100644 index 00000000..242379f4 Binary files /dev/null and b/public/textures/chipped/curly_packed_ice_pillar.png differ diff --git a/public/textures/chipped/curly_packed_mud_pillar.png b/public/textures/chipped/curly_packed_mud_pillar.png new file mode 100644 index 00000000..642d5948 Binary files /dev/null and b/public/textures/chipped/curly_packed_mud_pillar.png differ diff --git a/public/textures/chipped/curly_prismarine_pillar.png b/public/textures/chipped/curly_prismarine_pillar.png new file mode 100644 index 00000000..ee8cf2e2 Binary files /dev/null and b/public/textures/chipped/curly_prismarine_pillar.png differ diff --git a/public/textures/chipped/curly_purpur_block_pillar.png b/public/textures/chipped/curly_purpur_block_pillar.png new file mode 100644 index 00000000..1b16d4b6 Binary files /dev/null and b/public/textures/chipped/curly_purpur_block_pillar.png differ diff --git a/public/textures/chipped/curly_quartz_block_pillar.png b/public/textures/chipped/curly_quartz_block_pillar.png new file mode 100644 index 00000000..984d1762 Binary files /dev/null and b/public/textures/chipped/curly_quartz_block_pillar.png differ diff --git a/public/textures/chipped/curly_raw_copper_block_pillar.png b/public/textures/chipped/curly_raw_copper_block_pillar.png new file mode 100644 index 00000000..1807f501 Binary files /dev/null and b/public/textures/chipped/curly_raw_copper_block_pillar.png differ diff --git a/public/textures/chipped/curly_raw_gold_block_pillar.png b/public/textures/chipped/curly_raw_gold_block_pillar.png new file mode 100644 index 00000000..8b655cb7 Binary files /dev/null and b/public/textures/chipped/curly_raw_gold_block_pillar.png differ diff --git a/public/textures/chipped/curly_raw_iron_block_pillar.png b/public/textures/chipped/curly_raw_iron_block_pillar.png new file mode 100644 index 00000000..f191ab97 Binary files /dev/null and b/public/textures/chipped/curly_raw_iron_block_pillar.png differ diff --git a/public/textures/chipped/curly_red_nether_bricks_pillar.png b/public/textures/chipped/curly_red_nether_bricks_pillar.png new file mode 100644 index 00000000..1baa127b Binary files /dev/null and b/public/textures/chipped/curly_red_nether_bricks_pillar.png differ diff --git a/public/textures/chipped/curly_red_sandstone_pillar.png b/public/textures/chipped/curly_red_sandstone_pillar.png new file mode 100644 index 00000000..25245a95 Binary files /dev/null and b/public/textures/chipped/curly_red_sandstone_pillar.png differ diff --git a/public/textures/chipped/curly_redstone_block_pillar.png b/public/textures/chipped/curly_redstone_block_pillar.png new file mode 100644 index 00000000..df037c03 Binary files /dev/null and b/public/textures/chipped/curly_redstone_block_pillar.png differ diff --git a/public/textures/chipped/curly_sandstone_pillar.png b/public/textures/chipped/curly_sandstone_pillar.png new file mode 100644 index 00000000..727ff6b3 Binary files /dev/null and b/public/textures/chipped/curly_sandstone_pillar.png differ diff --git a/public/textures/chipped/curly_smooth_stone_pillar.png b/public/textures/chipped/curly_smooth_stone_pillar.png new file mode 100644 index 00000000..61658ff6 Binary files /dev/null and b/public/textures/chipped/curly_smooth_stone_pillar.png differ diff --git a/public/textures/chipped/curly_snow_block_pillar.png b/public/textures/chipped/curly_snow_block_pillar.png new file mode 100644 index 00000000..a8b57488 Binary files /dev/null and b/public/textures/chipped/curly_snow_block_pillar.png differ diff --git a/public/textures/chipped/curly_stone_pillar.png b/public/textures/chipped/curly_stone_pillar.png new file mode 100644 index 00000000..db1387ac Binary files /dev/null and b/public/textures/chipped/curly_stone_pillar.png differ diff --git a/public/textures/chipped/curly_tuff_pillar.png b/public/textures/chipped/curly_tuff_pillar.png new file mode 100644 index 00000000..edb69ad4 Binary files /dev/null and b/public/textures/chipped/curly_tuff_pillar.png differ diff --git a/public/textures/chipped/curvy_bookshelf.png b/public/textures/chipped/curvy_bookshelf.png new file mode 100644 index 00000000..745e2711 Binary files /dev/null and b/public/textures/chipped/curvy_bookshelf.png differ diff --git a/public/textures/chipped/cut_amethyst_block_column.png b/public/textures/chipped/cut_amethyst_block_column.png new file mode 100644 index 00000000..17a1850c Binary files /dev/null and b/public/textures/chipped/cut_amethyst_block_column.png differ diff --git a/public/textures/chipped/cut_ancient_debris_column.png b/public/textures/chipped/cut_ancient_debris_column.png new file mode 100644 index 00000000..57e35de4 Binary files /dev/null and b/public/textures/chipped/cut_ancient_debris_column.png differ diff --git a/public/textures/chipped/cut_andesite_column.png b/public/textures/chipped/cut_andesite_column.png new file mode 100644 index 00000000..52fed0b0 Binary files /dev/null and b/public/textures/chipped/cut_andesite_column.png differ diff --git a/public/textures/chipped/cut_basalt_column.png b/public/textures/chipped/cut_basalt_column.png new file mode 100644 index 00000000..33fa91e4 Binary files /dev/null and b/public/textures/chipped/cut_basalt_column.png differ diff --git a/public/textures/chipped/cut_black_terracotta.png b/public/textures/chipped/cut_black_terracotta.png new file mode 100644 index 00000000..86861708 Binary files /dev/null and b/public/textures/chipped/cut_black_terracotta.png differ diff --git a/public/textures/chipped/cut_blackstone_column.png b/public/textures/chipped/cut_blackstone_column.png new file mode 100644 index 00000000..0bd21387 Binary files /dev/null and b/public/textures/chipped/cut_blackstone_column.png differ diff --git a/public/textures/chipped/cut_blank_amethyst_block.png b/public/textures/chipped/cut_blank_amethyst_block.png new file mode 100644 index 00000000..f69be377 Binary files /dev/null and b/public/textures/chipped/cut_blank_amethyst_block.png differ diff --git a/public/textures/chipped/cut_blank_ancient_debris.png b/public/textures/chipped/cut_blank_ancient_debris.png new file mode 100644 index 00000000..475af926 Binary files /dev/null and b/public/textures/chipped/cut_blank_ancient_debris.png differ diff --git a/public/textures/chipped/cut_blank_andesite.png b/public/textures/chipped/cut_blank_andesite.png new file mode 100644 index 00000000..68abc05e Binary files /dev/null and b/public/textures/chipped/cut_blank_andesite.png differ diff --git a/public/textures/chipped/cut_blank_basalt.png b/public/textures/chipped/cut_blank_basalt.png new file mode 100644 index 00000000..85a497df Binary files /dev/null and b/public/textures/chipped/cut_blank_basalt.png differ diff --git a/public/textures/chipped/cut_blank_blackstone.png b/public/textures/chipped/cut_blank_blackstone.png new file mode 100644 index 00000000..e8f2603d Binary files /dev/null and b/public/textures/chipped/cut_blank_blackstone.png differ diff --git a/public/textures/chipped/cut_blank_blue_ice.png b/public/textures/chipped/cut_blank_blue_ice.png new file mode 100644 index 00000000..245272f4 Binary files /dev/null and b/public/textures/chipped/cut_blank_blue_ice.png differ diff --git a/public/textures/chipped/cut_blank_borderless_bricks.png b/public/textures/chipped/cut_blank_borderless_bricks.png new file mode 100644 index 00000000..a8b7f825 Binary files /dev/null and b/public/textures/chipped/cut_blank_borderless_bricks.png differ diff --git a/public/textures/chipped/cut_blank_bricks.png b/public/textures/chipped/cut_blank_bricks.png new file mode 100644 index 00000000..32fe0235 Binary files /dev/null and b/public/textures/chipped/cut_blank_bricks.png differ diff --git a/public/textures/chipped/cut_blank_calcite.png b/public/textures/chipped/cut_blank_calcite.png new file mode 100644 index 00000000..c45a6d14 Binary files /dev/null and b/public/textures/chipped/cut_blank_calcite.png differ diff --git a/public/textures/chipped/cut_blank_clay.png b/public/textures/chipped/cut_blank_clay.png new file mode 100644 index 00000000..530e88f4 Binary files /dev/null and b/public/textures/chipped/cut_blank_clay.png differ diff --git a/public/textures/chipped/cut_blank_coal_block.png b/public/textures/chipped/cut_blank_coal_block.png new file mode 100644 index 00000000..997bd897 Binary files /dev/null and b/public/textures/chipped/cut_blank_coal_block.png differ diff --git a/public/textures/chipped/cut_blank_cobblestone.png b/public/textures/chipped/cut_blank_cobblestone.png new file mode 100644 index 00000000..f77e5a8c Binary files /dev/null and b/public/textures/chipped/cut_blank_cobblestone.png differ diff --git a/public/textures/chipped/cut_blank_crying_obsidian.png b/public/textures/chipped/cut_blank_crying_obsidian.png new file mode 100644 index 00000000..fbca081d Binary files /dev/null and b/public/textures/chipped/cut_blank_crying_obsidian.png differ diff --git a/public/textures/chipped/cut_blank_dark_prismarine.png b/public/textures/chipped/cut_blank_dark_prismarine.png new file mode 100644 index 00000000..2b1883ec Binary files /dev/null and b/public/textures/chipped/cut_blank_dark_prismarine.png differ diff --git a/public/textures/chipped/cut_blank_deepslate.png b/public/textures/chipped/cut_blank_deepslate.png new file mode 100644 index 00000000..78813f8a Binary files /dev/null and b/public/textures/chipped/cut_blank_deepslate.png differ diff --git a/public/textures/chipped/cut_blank_diorite.png b/public/textures/chipped/cut_blank_diorite.png new file mode 100644 index 00000000..3ad2c147 Binary files /dev/null and b/public/textures/chipped/cut_blank_diorite.png differ diff --git a/public/textures/chipped/cut_blank_dirt.png b/public/textures/chipped/cut_blank_dirt.png new file mode 100644 index 00000000..03f9cbea Binary files /dev/null and b/public/textures/chipped/cut_blank_dirt.png differ diff --git a/public/textures/chipped/cut_blank_dripstone_block.png b/public/textures/chipped/cut_blank_dripstone_block.png new file mode 100644 index 00000000..73ee5268 Binary files /dev/null and b/public/textures/chipped/cut_blank_dripstone_block.png differ diff --git a/public/textures/chipped/cut_blank_end_stone.png b/public/textures/chipped/cut_blank_end_stone.png new file mode 100644 index 00000000..51d0387f Binary files /dev/null and b/public/textures/chipped/cut_blank_end_stone.png differ diff --git a/public/textures/chipped/cut_blank_gilded_blackstone.png b/public/textures/chipped/cut_blank_gilded_blackstone.png new file mode 100644 index 00000000..0d80961e Binary files /dev/null and b/public/textures/chipped/cut_blank_gilded_blackstone.png differ diff --git a/public/textures/chipped/cut_blank_granite.png b/public/textures/chipped/cut_blank_granite.png new file mode 100644 index 00000000..351f2718 Binary files /dev/null and b/public/textures/chipped/cut_blank_granite.png differ diff --git a/public/textures/chipped/cut_blank_ice.png b/public/textures/chipped/cut_blank_ice.png new file mode 100644 index 00000000..b7dcd71b Binary files /dev/null and b/public/textures/chipped/cut_blank_ice.png differ diff --git a/public/textures/chipped/cut_blank_lapis_block.png b/public/textures/chipped/cut_blank_lapis_block.png new file mode 100644 index 00000000..4264ea5b Binary files /dev/null and b/public/textures/chipped/cut_blank_lapis_block.png differ diff --git a/public/textures/chipped/cut_blank_lodestone.png b/public/textures/chipped/cut_blank_lodestone.png new file mode 100644 index 00000000..8074f958 Binary files /dev/null and b/public/textures/chipped/cut_blank_lodestone.png differ diff --git a/public/textures/chipped/cut_blank_magma_block.png b/public/textures/chipped/cut_blank_magma_block.png new file mode 100644 index 00000000..a9e32181 Binary files /dev/null and b/public/textures/chipped/cut_blank_magma_block.png differ diff --git a/public/textures/chipped/cut_blank_mossy_cobblestone.png b/public/textures/chipped/cut_blank_mossy_cobblestone.png new file mode 100644 index 00000000..b652c712 Binary files /dev/null and b/public/textures/chipped/cut_blank_mossy_cobblestone.png differ diff --git a/public/textures/chipped/cut_blank_mossy_stone_bricks.png b/public/textures/chipped/cut_blank_mossy_stone_bricks.png new file mode 100644 index 00000000..9642016c Binary files /dev/null and b/public/textures/chipped/cut_blank_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/cut_blank_mud.png b/public/textures/chipped/cut_blank_mud.png new file mode 100644 index 00000000..711a4a27 Binary files /dev/null and b/public/textures/chipped/cut_blank_mud.png differ diff --git a/public/textures/chipped/cut_blank_mud_bricks.png b/public/textures/chipped/cut_blank_mud_bricks.png new file mode 100644 index 00000000..6b5ca0ac Binary files /dev/null and b/public/textures/chipped/cut_blank_mud_bricks.png differ diff --git a/public/textures/chipped/cut_blank_nether_bricks.png b/public/textures/chipped/cut_blank_nether_bricks.png new file mode 100644 index 00000000..04aa94c6 Binary files /dev/null and b/public/textures/chipped/cut_blank_nether_bricks.png differ diff --git a/public/textures/chipped/cut_blank_netherrack.png b/public/textures/chipped/cut_blank_netherrack.png new file mode 100644 index 00000000..92aa8594 Binary files /dev/null and b/public/textures/chipped/cut_blank_netherrack.png differ diff --git a/public/textures/chipped/cut_blank_obsidian.png b/public/textures/chipped/cut_blank_obsidian.png new file mode 100644 index 00000000..24f5bbf6 Binary files /dev/null and b/public/textures/chipped/cut_blank_obsidian.png differ diff --git a/public/textures/chipped/cut_blank_packed_ice.png b/public/textures/chipped/cut_blank_packed_ice.png new file mode 100644 index 00000000..d4e27050 Binary files /dev/null and b/public/textures/chipped/cut_blank_packed_ice.png differ diff --git a/public/textures/chipped/cut_blank_packed_mud.png b/public/textures/chipped/cut_blank_packed_mud.png new file mode 100644 index 00000000..13c0bcd8 Binary files /dev/null and b/public/textures/chipped/cut_blank_packed_mud.png differ diff --git a/public/textures/chipped/cut_blank_prismarine.png b/public/textures/chipped/cut_blank_prismarine.png new file mode 100644 index 00000000..b672c04a Binary files /dev/null and b/public/textures/chipped/cut_blank_prismarine.png differ diff --git a/public/textures/chipped/cut_blank_purpur_block.png b/public/textures/chipped/cut_blank_purpur_block.png new file mode 100644 index 00000000..49067720 Binary files /dev/null and b/public/textures/chipped/cut_blank_purpur_block.png differ diff --git a/public/textures/chipped/cut_blank_quartz_block.png b/public/textures/chipped/cut_blank_quartz_block.png new file mode 100644 index 00000000..b77c28ef Binary files /dev/null and b/public/textures/chipped/cut_blank_quartz_block.png differ diff --git a/public/textures/chipped/cut_blank_raw_copper_block.png b/public/textures/chipped/cut_blank_raw_copper_block.png new file mode 100644 index 00000000..876758ce Binary files /dev/null and b/public/textures/chipped/cut_blank_raw_copper_block.png differ diff --git a/public/textures/chipped/cut_blank_raw_gold_block.png b/public/textures/chipped/cut_blank_raw_gold_block.png new file mode 100644 index 00000000..0baac7f5 Binary files /dev/null and b/public/textures/chipped/cut_blank_raw_gold_block.png differ diff --git a/public/textures/chipped/cut_blank_raw_iron_block.png b/public/textures/chipped/cut_blank_raw_iron_block.png new file mode 100644 index 00000000..dff27c58 Binary files /dev/null and b/public/textures/chipped/cut_blank_raw_iron_block.png differ diff --git a/public/textures/chipped/cut_blank_red_nether_bricks.png b/public/textures/chipped/cut_blank_red_nether_bricks.png new file mode 100644 index 00000000..e3565492 Binary files /dev/null and b/public/textures/chipped/cut_blank_red_nether_bricks.png differ diff --git a/public/textures/chipped/cut_blank_red_sandstone.png b/public/textures/chipped/cut_blank_red_sandstone.png new file mode 100644 index 00000000..714d564e Binary files /dev/null and b/public/textures/chipped/cut_blank_red_sandstone.png differ diff --git a/public/textures/chipped/cut_blank_redstone_block.png b/public/textures/chipped/cut_blank_redstone_block.png new file mode 100644 index 00000000..a2ff074d Binary files /dev/null and b/public/textures/chipped/cut_blank_redstone_block.png differ diff --git a/public/textures/chipped/cut_blank_sandstone.png b/public/textures/chipped/cut_blank_sandstone.png new file mode 100644 index 00000000..5d450ad4 Binary files /dev/null and b/public/textures/chipped/cut_blank_sandstone.png differ diff --git a/public/textures/chipped/cut_blank_smooth_stone.png b/public/textures/chipped/cut_blank_smooth_stone.png new file mode 100644 index 00000000..bd02521c Binary files /dev/null and b/public/textures/chipped/cut_blank_smooth_stone.png differ diff --git a/public/textures/chipped/cut_blank_snow_block.png b/public/textures/chipped/cut_blank_snow_block.png new file mode 100644 index 00000000..94f410c2 Binary files /dev/null and b/public/textures/chipped/cut_blank_snow_block.png differ diff --git a/public/textures/chipped/cut_blank_stone.png b/public/textures/chipped/cut_blank_stone.png new file mode 100644 index 00000000..eb07efc6 Binary files /dev/null and b/public/textures/chipped/cut_blank_stone.png differ diff --git a/public/textures/chipped/cut_blank_tuff.png b/public/textures/chipped/cut_blank_tuff.png new file mode 100644 index 00000000..868f3159 Binary files /dev/null and b/public/textures/chipped/cut_blank_tuff.png differ diff --git a/public/textures/chipped/cut_blue_ice_column.png b/public/textures/chipped/cut_blue_ice_column.png new file mode 100644 index 00000000..ddb05829 Binary files /dev/null and b/public/textures/chipped/cut_blue_ice_column.png differ diff --git a/public/textures/chipped/cut_blue_terracotta.png b/public/textures/chipped/cut_blue_terracotta.png new file mode 100644 index 00000000..6072c2df Binary files /dev/null and b/public/textures/chipped/cut_blue_terracotta.png differ diff --git a/public/textures/chipped/cut_borderless_bricks_column.png b/public/textures/chipped/cut_borderless_bricks_column.png new file mode 100644 index 00000000..693c8fdf Binary files /dev/null and b/public/textures/chipped/cut_borderless_bricks_column.png differ diff --git a/public/textures/chipped/cut_bricks_column.png b/public/textures/chipped/cut_bricks_column.png new file mode 100644 index 00000000..8897cd71 Binary files /dev/null and b/public/textures/chipped/cut_bricks_column.png differ diff --git a/public/textures/chipped/cut_brown_terracotta.png b/public/textures/chipped/cut_brown_terracotta.png new file mode 100644 index 00000000..f719a6d4 Binary files /dev/null and b/public/textures/chipped/cut_brown_terracotta.png differ diff --git a/public/textures/chipped/cut_calcite_column.png b/public/textures/chipped/cut_calcite_column.png new file mode 100644 index 00000000..cc00a291 Binary files /dev/null and b/public/textures/chipped/cut_calcite_column.png differ diff --git a/public/textures/chipped/cut_clay_column.png b/public/textures/chipped/cut_clay_column.png new file mode 100644 index 00000000..c1324c87 Binary files /dev/null and b/public/textures/chipped/cut_clay_column.png differ diff --git a/public/textures/chipped/cut_coal_block_column.png b/public/textures/chipped/cut_coal_block_column.png new file mode 100644 index 00000000..389c4e97 Binary files /dev/null and b/public/textures/chipped/cut_coal_block_column.png differ diff --git a/public/textures/chipped/cut_cobblestone_column.png b/public/textures/chipped/cut_cobblestone_column.png new file mode 100644 index 00000000..cc0e1658 Binary files /dev/null and b/public/textures/chipped/cut_cobblestone_column.png differ diff --git a/public/textures/chipped/cut_crying_obsidian_column.png b/public/textures/chipped/cut_crying_obsidian_column.png new file mode 100644 index 00000000..807eaf35 Binary files /dev/null and b/public/textures/chipped/cut_crying_obsidian_column.png differ diff --git a/public/textures/chipped/cut_cyan_terracotta.png b/public/textures/chipped/cut_cyan_terracotta.png new file mode 100644 index 00000000..93753e94 Binary files /dev/null and b/public/textures/chipped/cut_cyan_terracotta.png differ diff --git a/public/textures/chipped/cut_dark_prismarine_column.png b/public/textures/chipped/cut_dark_prismarine_column.png new file mode 100644 index 00000000..fc98e22e Binary files /dev/null and b/public/textures/chipped/cut_dark_prismarine_column.png differ diff --git a/public/textures/chipped/cut_deepslate_column.png b/public/textures/chipped/cut_deepslate_column.png new file mode 100644 index 00000000..dc3676b1 Binary files /dev/null and b/public/textures/chipped/cut_deepslate_column.png differ diff --git a/public/textures/chipped/cut_diorite_column.png b/public/textures/chipped/cut_diorite_column.png new file mode 100644 index 00000000..ca80f5c8 Binary files /dev/null and b/public/textures/chipped/cut_diorite_column.png differ diff --git a/public/textures/chipped/cut_dirt_column.png b/public/textures/chipped/cut_dirt_column.png new file mode 100644 index 00000000..1bd2d252 Binary files /dev/null and b/public/textures/chipped/cut_dirt_column.png differ diff --git a/public/textures/chipped/cut_dripstone_block_column.png b/public/textures/chipped/cut_dripstone_block_column.png new file mode 100644 index 00000000..a9c4811c Binary files /dev/null and b/public/textures/chipped/cut_dripstone_block_column.png differ diff --git a/public/textures/chipped/cut_end_stone_column.png b/public/textures/chipped/cut_end_stone_column.png new file mode 100644 index 00000000..74d77853 Binary files /dev/null and b/public/textures/chipped/cut_end_stone_column.png differ diff --git a/public/textures/chipped/cut_gilded_blackstone_column.png b/public/textures/chipped/cut_gilded_blackstone_column.png new file mode 100644 index 00000000..09e702da Binary files /dev/null and b/public/textures/chipped/cut_gilded_blackstone_column.png differ diff --git a/public/textures/chipped/cut_granite_column.png b/public/textures/chipped/cut_granite_column.png new file mode 100644 index 00000000..f70a3065 Binary files /dev/null and b/public/textures/chipped/cut_granite_column.png differ diff --git a/public/textures/chipped/cut_gray_terracotta.png b/public/textures/chipped/cut_gray_terracotta.png new file mode 100644 index 00000000..7345e808 Binary files /dev/null and b/public/textures/chipped/cut_gray_terracotta.png differ diff --git a/public/textures/chipped/cut_green_terracotta.png b/public/textures/chipped/cut_green_terracotta.png new file mode 100644 index 00000000..722d3c30 Binary files /dev/null and b/public/textures/chipped/cut_green_terracotta.png differ diff --git a/public/textures/chipped/cut_ice_column.png b/public/textures/chipped/cut_ice_column.png new file mode 100644 index 00000000..47967249 Binary files /dev/null and b/public/textures/chipped/cut_ice_column.png differ diff --git a/public/textures/chipped/cut_lapis_block_column.png b/public/textures/chipped/cut_lapis_block_column.png new file mode 100644 index 00000000..d2cce1d7 Binary files /dev/null and b/public/textures/chipped/cut_lapis_block_column.png differ diff --git a/public/textures/chipped/cut_light_blue_terracotta.png b/public/textures/chipped/cut_light_blue_terracotta.png new file mode 100644 index 00000000..8548fd5c Binary files /dev/null and b/public/textures/chipped/cut_light_blue_terracotta.png differ diff --git a/public/textures/chipped/cut_light_gray_terracotta.png b/public/textures/chipped/cut_light_gray_terracotta.png new file mode 100644 index 00000000..c86b6a4b Binary files /dev/null and b/public/textures/chipped/cut_light_gray_terracotta.png differ diff --git a/public/textures/chipped/cut_lime_terracotta.png b/public/textures/chipped/cut_lime_terracotta.png new file mode 100644 index 00000000..cc4b18ed Binary files /dev/null and b/public/textures/chipped/cut_lime_terracotta.png differ diff --git a/public/textures/chipped/cut_lodestone_column.png b/public/textures/chipped/cut_lodestone_column.png new file mode 100644 index 00000000..a1e33159 Binary files /dev/null and b/public/textures/chipped/cut_lodestone_column.png differ diff --git a/public/textures/chipped/cut_magenta_terracotta.png b/public/textures/chipped/cut_magenta_terracotta.png new file mode 100644 index 00000000..0a10e63b Binary files /dev/null and b/public/textures/chipped/cut_magenta_terracotta.png differ diff --git a/public/textures/chipped/cut_magma_block_column.png b/public/textures/chipped/cut_magma_block_column.png new file mode 100644 index 00000000..7baa16ef Binary files /dev/null and b/public/textures/chipped/cut_magma_block_column.png differ diff --git a/public/textures/chipped/cut_mangrove_planks.png b/public/textures/chipped/cut_mangrove_planks.png new file mode 100644 index 00000000..b8dcd4ff Binary files /dev/null and b/public/textures/chipped/cut_mangrove_planks.png differ diff --git a/public/textures/chipped/cut_mossy_cobblestone_column.png b/public/textures/chipped/cut_mossy_cobblestone_column.png new file mode 100644 index 00000000..c0242401 Binary files /dev/null and b/public/textures/chipped/cut_mossy_cobblestone_column.png differ diff --git a/public/textures/chipped/cut_mossy_stone_bricks_column.png b/public/textures/chipped/cut_mossy_stone_bricks_column.png new file mode 100644 index 00000000..c9609ee5 Binary files /dev/null and b/public/textures/chipped/cut_mossy_stone_bricks_column.png differ diff --git a/public/textures/chipped/cut_nether_bricks_column.png b/public/textures/chipped/cut_nether_bricks_column.png new file mode 100644 index 00000000..0fb8d507 Binary files /dev/null and b/public/textures/chipped/cut_nether_bricks_column.png differ diff --git a/public/textures/chipped/cut_netherrack_column.png b/public/textures/chipped/cut_netherrack_column.png new file mode 100644 index 00000000..59bf592c Binary files /dev/null and b/public/textures/chipped/cut_netherrack_column.png differ diff --git a/public/textures/chipped/cut_obsidian_column.png b/public/textures/chipped/cut_obsidian_column.png new file mode 100644 index 00000000..49a06924 Binary files /dev/null and b/public/textures/chipped/cut_obsidian_column.png differ diff --git a/public/textures/chipped/cut_orange_terracotta.png b/public/textures/chipped/cut_orange_terracotta.png new file mode 100644 index 00000000..2627b591 Binary files /dev/null and b/public/textures/chipped/cut_orange_terracotta.png differ diff --git a/public/textures/chipped/cut_packed_ice_column.png b/public/textures/chipped/cut_packed_ice_column.png new file mode 100644 index 00000000..fbacef80 Binary files /dev/null and b/public/textures/chipped/cut_packed_ice_column.png differ diff --git a/public/textures/chipped/cut_pink_terracotta.png b/public/textures/chipped/cut_pink_terracotta.png new file mode 100644 index 00000000..78c411e4 Binary files /dev/null and b/public/textures/chipped/cut_pink_terracotta.png differ diff --git a/public/textures/chipped/cut_prismarine_column.png b/public/textures/chipped/cut_prismarine_column.png new file mode 100644 index 00000000..a8c95279 Binary files /dev/null and b/public/textures/chipped/cut_prismarine_column.png differ diff --git a/public/textures/chipped/cut_purple_terracotta.png b/public/textures/chipped/cut_purple_terracotta.png new file mode 100644 index 00000000..949691c1 Binary files /dev/null and b/public/textures/chipped/cut_purple_terracotta.png differ diff --git a/public/textures/chipped/cut_purpur_block_column.png b/public/textures/chipped/cut_purpur_block_column.png new file mode 100644 index 00000000..af86010b Binary files /dev/null and b/public/textures/chipped/cut_purpur_block_column.png differ diff --git a/public/textures/chipped/cut_quartz_block_column.png b/public/textures/chipped/cut_quartz_block_column.png new file mode 100644 index 00000000..3c82f38f Binary files /dev/null and b/public/textures/chipped/cut_quartz_block_column.png differ diff --git a/public/textures/chipped/cut_raw_copper_block_column.png b/public/textures/chipped/cut_raw_copper_block_column.png new file mode 100644 index 00000000..9a14a548 Binary files /dev/null and b/public/textures/chipped/cut_raw_copper_block_column.png differ diff --git a/public/textures/chipped/cut_raw_gold_block_column.png b/public/textures/chipped/cut_raw_gold_block_column.png new file mode 100644 index 00000000..21a94e11 Binary files /dev/null and b/public/textures/chipped/cut_raw_gold_block_column.png differ diff --git a/public/textures/chipped/cut_raw_iron_block_column.png b/public/textures/chipped/cut_raw_iron_block_column.png new file mode 100644 index 00000000..71f2c3d6 Binary files /dev/null and b/public/textures/chipped/cut_raw_iron_block_column.png differ diff --git a/public/textures/chipped/cut_red_nether_bricks_column.png b/public/textures/chipped/cut_red_nether_bricks_column.png new file mode 100644 index 00000000..5f5a23af Binary files /dev/null and b/public/textures/chipped/cut_red_nether_bricks_column.png differ diff --git a/public/textures/chipped/cut_red_sandstone_column.png b/public/textures/chipped/cut_red_sandstone_column.png new file mode 100644 index 00000000..e4ce36cb Binary files /dev/null and b/public/textures/chipped/cut_red_sandstone_column.png differ diff --git a/public/textures/chipped/cut_red_terracotta.png b/public/textures/chipped/cut_red_terracotta.png new file mode 100644 index 00000000..735777fd Binary files /dev/null and b/public/textures/chipped/cut_red_terracotta.png differ diff --git a/public/textures/chipped/cut_redstone_block_column.png b/public/textures/chipped/cut_redstone_block_column.png new file mode 100644 index 00000000..204c4b3e Binary files /dev/null and b/public/textures/chipped/cut_redstone_block_column.png differ diff --git a/public/textures/chipped/cut_sandstone_column.png b/public/textures/chipped/cut_sandstone_column.png new file mode 100644 index 00000000..5840871a Binary files /dev/null and b/public/textures/chipped/cut_sandstone_column.png differ diff --git a/public/textures/chipped/cut_smooth_stone_column.png b/public/textures/chipped/cut_smooth_stone_column.png new file mode 100644 index 00000000..93ee876b Binary files /dev/null and b/public/textures/chipped/cut_smooth_stone_column.png differ diff --git a/public/textures/chipped/cut_snow_block_column.png b/public/textures/chipped/cut_snow_block_column.png new file mode 100644 index 00000000..a14c426c Binary files /dev/null and b/public/textures/chipped/cut_snow_block_column.png differ diff --git a/public/textures/chipped/cut_stone_column.png b/public/textures/chipped/cut_stone_column.png new file mode 100644 index 00000000..f27f974a Binary files /dev/null and b/public/textures/chipped/cut_stone_column.png differ diff --git a/public/textures/chipped/cut_terracotta.png b/public/textures/chipped/cut_terracotta.png new file mode 100644 index 00000000..8f03c670 Binary files /dev/null and b/public/textures/chipped/cut_terracotta.png differ diff --git a/public/textures/chipped/cut_tuff_column.png b/public/textures/chipped/cut_tuff_column.png new file mode 100644 index 00000000..8c5f9ca4 Binary files /dev/null and b/public/textures/chipped/cut_tuff_column.png differ diff --git a/public/textures/chipped/cut_white_terracotta.png b/public/textures/chipped/cut_white_terracotta.png new file mode 100644 index 00000000..1d7f80dc Binary files /dev/null and b/public/textures/chipped/cut_white_terracotta.png differ diff --git a/public/textures/chipped/cut_yellow_terracotta.png b/public/textures/chipped/cut_yellow_terracotta.png new file mode 100644 index 00000000..716ffedd Binary files /dev/null and b/public/textures/chipped/cut_yellow_terracotta.png differ diff --git a/public/textures/chipped/cyan_concrete_bricks.png b/public/textures/chipped/cyan_concrete_bricks.png new file mode 100644 index 00000000..acbcea41 Binary files /dev/null and b/public/textures/chipped/cyan_concrete_bricks.png differ diff --git a/public/textures/chipped/cyan_concrete_panel.png b/public/textures/chipped/cyan_concrete_panel.png new file mode 100644 index 00000000..8b4f0fc4 Binary files /dev/null and b/public/textures/chipped/cyan_concrete_panel.png differ diff --git a/public/textures/chipped/cyan_concrete_pillar.png b/public/textures/chipped/cyan_concrete_pillar.png new file mode 100644 index 00000000..31187255 Binary files /dev/null and b/public/textures/chipped/cyan_concrete_pillar.png differ diff --git a/public/textures/chipped/cyan_concrete_tiles.png b/public/textures/chipped/cyan_concrete_tiles.png new file mode 100644 index 00000000..293a2119 Binary files /dev/null and b/public/textures/chipped/cyan_concrete_tiles.png differ diff --git a/public/textures/chipped/cyan_glazed_terracotta_pillar_sides.png b/public/textures/chipped/cyan_glazed_terracotta_pillar_sides.png new file mode 100644 index 00000000..2a8e163a Binary files /dev/null and b/public/textures/chipped/cyan_glazed_terracotta_pillar_sides.png differ diff --git a/public/textures/chipped/cyan_glazed_terracotta_pillar_top.png b/public/textures/chipped/cyan_glazed_terracotta_pillar_top.png new file mode 100644 index 00000000..2c29134b Binary files /dev/null and b/public/textures/chipped/cyan_glazed_terracotta_pillar_top.png differ diff --git a/public/textures/chipped/cyan_glazed_terracotta_smooth_tiles.png b/public/textures/chipped/cyan_glazed_terracotta_smooth_tiles.png new file mode 100644 index 00000000..dbe95987 Binary files /dev/null and b/public/textures/chipped/cyan_glazed_terracotta_smooth_tiles.png differ diff --git a/public/textures/chipped/cyan_glazed_terracotta_tiles.png b/public/textures/chipped/cyan_glazed_terracotta_tiles.png new file mode 100644 index 00000000..bd8491da Binary files /dev/null and b/public/textures/chipped/cyan_glazed_terracotta_tiles.png differ diff --git a/public/textures/chipped/cyan_terracotta_bricks.png b/public/textures/chipped/cyan_terracotta_bricks.png new file mode 100644 index 00000000..4841bac6 Binary files /dev/null and b/public/textures/chipped/cyan_terracotta_bricks.png differ diff --git a/public/textures/chipped/cyan_terracotta_column.png b/public/textures/chipped/cyan_terracotta_column.png new file mode 100644 index 00000000..ce459ff8 Binary files /dev/null and b/public/textures/chipped/cyan_terracotta_column.png differ diff --git a/public/textures/chipped/cyan_terracotta_pillar.png b/public/textures/chipped/cyan_terracotta_pillar.png new file mode 100644 index 00000000..f963d79b Binary files /dev/null and b/public/textures/chipped/cyan_terracotta_pillar.png differ diff --git a/public/textures/chipped/cyan_terracotta_tile.png b/public/textures/chipped/cyan_terracotta_tile.png new file mode 100644 index 00000000..0e858fc4 Binary files /dev/null and b/public/textures/chipped/cyan_terracotta_tile.png differ diff --git a/public/textures/chipped/cyan_terracotta_tiles.png b/public/textures/chipped/cyan_terracotta_tiles.png new file mode 100644 index 00000000..02f36832 Binary files /dev/null and b/public/textures/chipped/cyan_terracotta_tiles.png differ diff --git a/public/textures/chipped/d_sign_stripped_acacia_log.png b/public/textures/chipped/d_sign_stripped_acacia_log.png new file mode 100644 index 00000000..38dca4f4 Binary files /dev/null and b/public/textures/chipped/d_sign_stripped_acacia_log.png differ diff --git a/public/textures/chipped/d_sign_stripped_birch_log.png b/public/textures/chipped/d_sign_stripped_birch_log.png new file mode 100644 index 00000000..174f25f3 Binary files /dev/null and b/public/textures/chipped/d_sign_stripped_birch_log.png differ diff --git a/public/textures/chipped/d_sign_stripped_cherry_log.png b/public/textures/chipped/d_sign_stripped_cherry_log.png new file mode 100644 index 00000000..d5a1d7d8 Binary files /dev/null and b/public/textures/chipped/d_sign_stripped_cherry_log.png differ diff --git a/public/textures/chipped/d_sign_stripped_crimson_stem.png b/public/textures/chipped/d_sign_stripped_crimson_stem.png new file mode 100644 index 00000000..4d1a46df Binary files /dev/null and b/public/textures/chipped/d_sign_stripped_crimson_stem.png differ diff --git a/public/textures/chipped/d_sign_stripped_dark_oak_log.png b/public/textures/chipped/d_sign_stripped_dark_oak_log.png new file mode 100644 index 00000000..ecdb6d00 Binary files /dev/null and b/public/textures/chipped/d_sign_stripped_dark_oak_log.png differ diff --git a/public/textures/chipped/d_sign_stripped_jungle_log.png b/public/textures/chipped/d_sign_stripped_jungle_log.png new file mode 100644 index 00000000..23ab7d88 Binary files /dev/null and b/public/textures/chipped/d_sign_stripped_jungle_log.png differ diff --git a/public/textures/chipped/d_sign_stripped_mangrove_log.png b/public/textures/chipped/d_sign_stripped_mangrove_log.png new file mode 100644 index 00000000..e5cc5d58 Binary files /dev/null and b/public/textures/chipped/d_sign_stripped_mangrove_log.png differ diff --git a/public/textures/chipped/d_sign_stripped_oak_log.png b/public/textures/chipped/d_sign_stripped_oak_log.png new file mode 100644 index 00000000..9668d222 Binary files /dev/null and b/public/textures/chipped/d_sign_stripped_oak_log.png differ diff --git a/public/textures/chipped/d_sign_stripped_spruce_log.png b/public/textures/chipped/d_sign_stripped_spruce_log.png new file mode 100644 index 00000000..a0beb3cd Binary files /dev/null and b/public/textures/chipped/d_sign_stripped_spruce_log.png differ diff --git a/public/textures/chipped/d_sign_stripped_warped_stem.png b/public/textures/chipped/d_sign_stripped_warped_stem.png new file mode 100644 index 00000000..d13787eb Binary files /dev/null and b/public/textures/chipped/d_sign_stripped_warped_stem.png differ diff --git a/public/textures/chipped/damaged_acacia_log.png b/public/textures/chipped/damaged_acacia_log.png new file mode 100644 index 00000000..04112fe2 Binary files /dev/null and b/public/textures/chipped/damaged_acacia_log.png differ diff --git a/public/textures/chipped/damaged_birch_log.png b/public/textures/chipped/damaged_birch_log.png new file mode 100644 index 00000000..a71b968e Binary files /dev/null and b/public/textures/chipped/damaged_birch_log.png differ diff --git a/public/textures/chipped/damaged_cherry_log.png b/public/textures/chipped/damaged_cherry_log.png new file mode 100644 index 00000000..7078a115 Binary files /dev/null and b/public/textures/chipped/damaged_cherry_log.png differ diff --git a/public/textures/chipped/damaged_crimson_stem.png b/public/textures/chipped/damaged_crimson_stem.png new file mode 100644 index 00000000..3c26327f Binary files /dev/null and b/public/textures/chipped/damaged_crimson_stem.png differ diff --git a/public/textures/chipped/damaged_dark_oak_log.png b/public/textures/chipped/damaged_dark_oak_log.png new file mode 100644 index 00000000..1ff2f8c1 Binary files /dev/null and b/public/textures/chipped/damaged_dark_oak_log.png differ diff --git a/public/textures/chipped/damaged_jungle_log.png b/public/textures/chipped/damaged_jungle_log.png new file mode 100644 index 00000000..9a692117 Binary files /dev/null and b/public/textures/chipped/damaged_jungle_log.png differ diff --git a/public/textures/chipped/damaged_mangrove_log.png b/public/textures/chipped/damaged_mangrove_log.png new file mode 100644 index 00000000..17d5e01c Binary files /dev/null and b/public/textures/chipped/damaged_mangrove_log.png differ diff --git a/public/textures/chipped/damaged_oak_log.png b/public/textures/chipped/damaged_oak_log.png new file mode 100644 index 00000000..a19cee18 Binary files /dev/null and b/public/textures/chipped/damaged_oak_log.png differ diff --git a/public/textures/chipped/damaged_spruce_log.png b/public/textures/chipped/damaged_spruce_log.png new file mode 100644 index 00000000..a093aa49 Binary files /dev/null and b/public/textures/chipped/damaged_spruce_log.png differ diff --git a/public/textures/chipped/damaged_warped_stem.png b/public/textures/chipped/damaged_warped_stem.png new file mode 100644 index 00000000..d4ab4bb8 Binary files /dev/null and b/public/textures/chipped/damaged_warped_stem.png differ diff --git a/public/textures/chipped/dark_blue_paper_lantern.png b/public/textures/chipped/dark_blue_paper_lantern.png new file mode 100644 index 00000000..1c995905 Binary files /dev/null and b/public/textures/chipped/dark_blue_paper_lantern.png differ diff --git a/public/textures/chipped/dark_bone_block.png b/public/textures/chipped/dark_bone_block.png new file mode 100644 index 00000000..b3451038 Binary files /dev/null and b/public/textures/chipped/dark_bone_block.png differ diff --git a/public/textures/chipped/dark_broken_lily_pad.png b/public/textures/chipped/dark_broken_lily_pad.png new file mode 100644 index 00000000..1bf8c3a7 Binary files /dev/null and b/public/textures/chipped/dark_broken_lily_pad.png differ diff --git a/public/textures/chipped/dark_dotted_red_mushroom_block.png b/public/textures/chipped/dark_dotted_red_mushroom_block.png new file mode 100644 index 00000000..59620c3c Binary files /dev/null and b/public/textures/chipped/dark_dotted_red_mushroom_block.png differ diff --git a/public/textures/chipped/dark_dusted_brown_mushroom_block.png b/public/textures/chipped/dark_dusted_brown_mushroom_block.png new file mode 100644 index 00000000..3d4cfb0b Binary files /dev/null and b/public/textures/chipped/dark_dusted_brown_mushroom_block.png differ diff --git a/public/textures/chipped/dark_dusted_red_mushroom_block.png b/public/textures/chipped/dark_dusted_red_mushroom_block.png new file mode 100644 index 00000000..067ef944 Binary files /dev/null and b/public/textures/chipped/dark_dusted_red_mushroom_block.png differ diff --git a/public/textures/chipped/dark_flowering_lily_pad.png b/public/textures/chipped/dark_flowering_lily_pad.png new file mode 100644 index 00000000..02f22ab7 Binary files /dev/null and b/public/textures/chipped/dark_flowering_lily_pad.png differ diff --git a/public/textures/chipped/dark_freckled_brown_mushroom_block.png b/public/textures/chipped/dark_freckled_brown_mushroom_block.png new file mode 100644 index 00000000..2fea4701 Binary files /dev/null and b/public/textures/chipped/dark_freckled_brown_mushroom_block.png differ diff --git a/public/textures/chipped/dark_freckled_red_mushroom_block.png b/public/textures/chipped/dark_freckled_red_mushroom_block.png new file mode 100644 index 00000000..c165bdf9 Binary files /dev/null and b/public/textures/chipped/dark_freckled_red_mushroom_block.png differ diff --git a/public/textures/chipped/dark_large_lily_pad.png b/public/textures/chipped/dark_large_lily_pad.png new file mode 100644 index 00000000..7f14f504 Binary files /dev/null and b/public/textures/chipped/dark_large_lily_pad.png differ diff --git a/public/textures/chipped/dark_leaf_lily_pad.png b/public/textures/chipped/dark_leaf_lily_pad.png new file mode 100644 index 00000000..fa8b3eb4 Binary files /dev/null and b/public/textures/chipped/dark_leaf_lily_pad.png differ diff --git a/public/textures/chipped/dark_melon.png b/public/textures/chipped/dark_melon.png new file mode 100644 index 00000000..34eb0799 Binary files /dev/null and b/public/textures/chipped/dark_melon.png differ diff --git a/public/textures/chipped/dark_micro_lily_pads.png b/public/textures/chipped/dark_micro_lily_pads.png new file mode 100644 index 00000000..7e75c914 Binary files /dev/null and b/public/textures/chipped/dark_micro_lily_pads.png differ diff --git a/public/textures/chipped/dark_oak_crate.png b/public/textures/chipped/dark_oak_crate.png new file mode 100644 index 00000000..57196346 Binary files /dev/null and b/public/textures/chipped/dark_oak_crate.png differ diff --git a/public/textures/chipped/dark_oak_planks_mosaic.png b/public/textures/chipped/dark_oak_planks_mosaic.png new file mode 100644 index 00000000..f7d55c65 Binary files /dev/null and b/public/textures/chipped/dark_oak_planks_mosaic.png differ diff --git a/public/textures/chipped/dark_oak_planks_panel.png b/public/textures/chipped/dark_oak_planks_panel.png new file mode 100644 index 00000000..2079342f Binary files /dev/null and b/public/textures/chipped/dark_oak_planks_panel.png differ diff --git a/public/textures/chipped/dark_oak_planks_shavings.png b/public/textures/chipped/dark_oak_planks_shavings.png new file mode 100644 index 00000000..1496a3ff Binary files /dev/null and b/public/textures/chipped/dark_oak_planks_shavings.png differ diff --git a/public/textures/chipped/dark_oak_torch.png b/public/textures/chipped/dark_oak_torch.png new file mode 100644 index 00000000..6047051c Binary files /dev/null and b/public/textures/chipped/dark_oak_torch.png differ diff --git a/public/textures/chipped/dark_paddle_lily_pad.png b/public/textures/chipped/dark_paddle_lily_pad.png new file mode 100644 index 00000000..03fa1509 Binary files /dev/null and b/public/textures/chipped/dark_paddle_lily_pad.png differ diff --git a/public/textures/chipped/dark_prismarine_bricks.png b/public/textures/chipped/dark_prismarine_bricks.png new file mode 100644 index 00000000..d9fec05c Binary files /dev/null and b/public/textures/chipped/dark_prismarine_bricks.png differ diff --git a/public/textures/chipped/dark_prismarine_pillar.png b/public/textures/chipped/dark_prismarine_pillar.png new file mode 100644 index 00000000..e8e06a2e Binary files /dev/null and b/public/textures/chipped/dark_prismarine_pillar.png differ diff --git a/public/textures/chipped/dark_prismarine_pillar_top.png b/public/textures/chipped/dark_prismarine_pillar_top.png new file mode 100644 index 00000000..df15c29b Binary files /dev/null and b/public/textures/chipped/dark_prismarine_pillar_top.png differ diff --git a/public/textures/chipped/dark_prismarine_scales.png b/public/textures/chipped/dark_prismarine_scales.png new file mode 100644 index 00000000..71ee2131 Binary files /dev/null and b/public/textures/chipped/dark_prismarine_scales.png differ diff --git a/public/textures/chipped/dark_rough_lily_pad.png b/public/textures/chipped/dark_rough_lily_pad.png new file mode 100644 index 00000000..f089474d Binary files /dev/null and b/public/textures/chipped/dark_rough_lily_pad.png differ diff --git a/public/textures/chipped/dark_scaled_brown_mushroom_block.png b/public/textures/chipped/dark_scaled_brown_mushroom_block.png new file mode 100644 index 00000000..74db0999 Binary files /dev/null and b/public/textures/chipped/dark_scaled_brown_mushroom_block.png differ diff --git a/public/textures/chipped/dark_smol_lily_pad.png b/public/textures/chipped/dark_smol_lily_pad.png new file mode 100644 index 00000000..d37ef3b4 Binary files /dev/null and b/public/textures/chipped/dark_smol_lily_pad.png differ diff --git a/public/textures/chipped/dark_smooth_brown_mushroom_block.png b/public/textures/chipped/dark_smooth_brown_mushroom_block.png new file mode 100644 index 00000000..5d5180ec Binary files /dev/null and b/public/textures/chipped/dark_smooth_brown_mushroom_block.png differ diff --git a/public/textures/chipped/dark_smooth_lily_pad.png b/public/textures/chipped/dark_smooth_lily_pad.png new file mode 100644 index 00000000..196dc3be Binary files /dev/null and b/public/textures/chipped/dark_smooth_lily_pad.png differ diff --git a/public/textures/chipped/dark_smooth_red_mushroom_block.png b/public/textures/chipped/dark_smooth_red_mushroom_block.png new file mode 100644 index 00000000..c18962d4 Binary files /dev/null and b/public/textures/chipped/dark_smooth_red_mushroom_block.png differ diff --git a/public/textures/chipped/dark_spotted_brown_mushroom_block.png b/public/textures/chipped/dark_spotted_brown_mushroom_block.png new file mode 100644 index 00000000..e324166c Binary files /dev/null and b/public/textures/chipped/dark_spotted_brown_mushroom_block.png differ diff --git a/public/textures/chipped/dark_spotted_red_mushroom_block.png b/public/textures/chipped/dark_spotted_red_mushroom_block.png new file mode 100644 index 00000000..1e5e5df3 Binary files /dev/null and b/public/textures/chipped/dark_spotted_red_mushroom_block.png differ diff --git a/public/textures/chipped/dark_sprinkled_brown_mushroom_block.png b/public/textures/chipped/dark_sprinkled_brown_mushroom_block.png new file mode 100644 index 00000000..ac64e4a2 Binary files /dev/null and b/public/textures/chipped/dark_sprinkled_brown_mushroom_block.png differ diff --git a/public/textures/chipped/dead_acacia_leaves.png b/public/textures/chipped/dead_acacia_leaves.png new file mode 100644 index 00000000..d372b575 Binary files /dev/null and b/public/textures/chipped/dead_acacia_leaves.png differ diff --git a/public/textures/chipped/dead_birch_leaves.png b/public/textures/chipped/dead_birch_leaves.png new file mode 100644 index 00000000..54fa047b Binary files /dev/null and b/public/textures/chipped/dead_birch_leaves.png differ diff --git a/public/textures/chipped/dead_dark_oak_leaves.png b/public/textures/chipped/dead_dark_oak_leaves.png new file mode 100644 index 00000000..16fd3724 Binary files /dev/null and b/public/textures/chipped/dead_dark_oak_leaves.png differ diff --git a/public/textures/chipped/dead_jungle_leaves.png b/public/textures/chipped/dead_jungle_leaves.png new file mode 100644 index 00000000..dee755cb Binary files /dev/null and b/public/textures/chipped/dead_jungle_leaves.png differ diff --git a/public/textures/chipped/dead_oak_leaves.png b/public/textures/chipped/dead_oak_leaves.png new file mode 100644 index 00000000..16fd3724 Binary files /dev/null and b/public/textures/chipped/dead_oak_leaves.png differ diff --git a/public/textures/chipped/dead_spruce_leaves.png b/public/textures/chipped/dead_spruce_leaves.png new file mode 100644 index 00000000..c05ad28d Binary files /dev/null and b/public/textures/chipped/dead_spruce_leaves.png differ diff --git a/public/textures/chipped/decorated_black_glazed_terracotta.png b/public/textures/chipped/decorated_black_glazed_terracotta.png new file mode 100644 index 00000000..aa0a9138 Binary files /dev/null and b/public/textures/chipped/decorated_black_glazed_terracotta.png differ diff --git a/public/textures/chipped/decorated_black_terracotta.png b/public/textures/chipped/decorated_black_terracotta.png new file mode 100644 index 00000000..10c89603 Binary files /dev/null and b/public/textures/chipped/decorated_black_terracotta.png differ diff --git a/public/textures/chipped/decorated_blue_glazed_terracotta.png b/public/textures/chipped/decorated_blue_glazed_terracotta.png new file mode 100644 index 00000000..f96c2f88 Binary files /dev/null and b/public/textures/chipped/decorated_blue_glazed_terracotta.png differ diff --git a/public/textures/chipped/decorated_blue_terracotta.png b/public/textures/chipped/decorated_blue_terracotta.png new file mode 100644 index 00000000..adeb45c3 Binary files /dev/null and b/public/textures/chipped/decorated_blue_terracotta.png differ diff --git a/public/textures/chipped/decorated_brown_glazed_terracotta.png b/public/textures/chipped/decorated_brown_glazed_terracotta.png new file mode 100644 index 00000000..1dbd1775 Binary files /dev/null and b/public/textures/chipped/decorated_brown_glazed_terracotta.png differ diff --git a/public/textures/chipped/decorated_brown_terracotta.png b/public/textures/chipped/decorated_brown_terracotta.png new file mode 100644 index 00000000..fb84f774 Binary files /dev/null and b/public/textures/chipped/decorated_brown_terracotta.png differ diff --git a/public/textures/chipped/decorated_cyan_glazed_terracotta.png b/public/textures/chipped/decorated_cyan_glazed_terracotta.png new file mode 100644 index 00000000..2616af05 Binary files /dev/null and b/public/textures/chipped/decorated_cyan_glazed_terracotta.png differ diff --git a/public/textures/chipped/decorated_cyan_terracotta.png b/public/textures/chipped/decorated_cyan_terracotta.png new file mode 100644 index 00000000..309dabd9 Binary files /dev/null and b/public/textures/chipped/decorated_cyan_terracotta.png differ diff --git a/public/textures/chipped/decorated_gray_glazed_terracotta.png b/public/textures/chipped/decorated_gray_glazed_terracotta.png new file mode 100644 index 00000000..47f96df6 Binary files /dev/null and b/public/textures/chipped/decorated_gray_glazed_terracotta.png differ diff --git a/public/textures/chipped/decorated_gray_terracotta.png b/public/textures/chipped/decorated_gray_terracotta.png new file mode 100644 index 00000000..533280bb Binary files /dev/null and b/public/textures/chipped/decorated_gray_terracotta.png differ diff --git a/public/textures/chipped/decorated_green_glazed_terracotta.png b/public/textures/chipped/decorated_green_glazed_terracotta.png new file mode 100644 index 00000000..3481acca Binary files /dev/null and b/public/textures/chipped/decorated_green_glazed_terracotta.png differ diff --git a/public/textures/chipped/decorated_green_terracotta.png b/public/textures/chipped/decorated_green_terracotta.png new file mode 100644 index 00000000..bf22f458 Binary files /dev/null and b/public/textures/chipped/decorated_green_terracotta.png differ diff --git a/public/textures/chipped/decorated_light_blue_glazed_terracotta.png b/public/textures/chipped/decorated_light_blue_glazed_terracotta.png new file mode 100644 index 00000000..36b0b46f Binary files /dev/null and b/public/textures/chipped/decorated_light_blue_glazed_terracotta.png differ diff --git a/public/textures/chipped/decorated_light_blue_terracotta.png b/public/textures/chipped/decorated_light_blue_terracotta.png new file mode 100644 index 00000000..a3d25820 Binary files /dev/null and b/public/textures/chipped/decorated_light_blue_terracotta.png differ diff --git a/public/textures/chipped/decorated_light_gray_glazed_terracotta.png b/public/textures/chipped/decorated_light_gray_glazed_terracotta.png new file mode 100644 index 00000000..3c68d21b Binary files /dev/null and b/public/textures/chipped/decorated_light_gray_glazed_terracotta.png differ diff --git a/public/textures/chipped/decorated_light_gray_terracotta.png b/public/textures/chipped/decorated_light_gray_terracotta.png new file mode 100644 index 00000000..ea9e6c3a Binary files /dev/null and b/public/textures/chipped/decorated_light_gray_terracotta.png differ diff --git a/public/textures/chipped/decorated_lime_glazed_terracotta.png b/public/textures/chipped/decorated_lime_glazed_terracotta.png new file mode 100644 index 00000000..b946a1bf Binary files /dev/null and b/public/textures/chipped/decorated_lime_glazed_terracotta.png differ diff --git a/public/textures/chipped/decorated_lime_terracotta.png b/public/textures/chipped/decorated_lime_terracotta.png new file mode 100644 index 00000000..3d8fc2f0 Binary files /dev/null and b/public/textures/chipped/decorated_lime_terracotta.png differ diff --git a/public/textures/chipped/decorated_magenta_glazed_terracotta.png b/public/textures/chipped/decorated_magenta_glazed_terracotta.png new file mode 100644 index 00000000..7c5392a5 Binary files /dev/null and b/public/textures/chipped/decorated_magenta_glazed_terracotta.png differ diff --git a/public/textures/chipped/decorated_magenta_terracotta.png b/public/textures/chipped/decorated_magenta_terracotta.png new file mode 100644 index 00000000..fe0b5a61 Binary files /dev/null and b/public/textures/chipped/decorated_magenta_terracotta.png differ diff --git a/public/textures/chipped/decorated_orange_glazed_terracotta.png b/public/textures/chipped/decorated_orange_glazed_terracotta.png new file mode 100644 index 00000000..76301d8a Binary files /dev/null and b/public/textures/chipped/decorated_orange_glazed_terracotta.png differ diff --git a/public/textures/chipped/decorated_orange_terracotta.png b/public/textures/chipped/decorated_orange_terracotta.png new file mode 100644 index 00000000..28e8aecf Binary files /dev/null and b/public/textures/chipped/decorated_orange_terracotta.png differ diff --git a/public/textures/chipped/decorated_pink_glazed_terracotta.png b/public/textures/chipped/decorated_pink_glazed_terracotta.png new file mode 100644 index 00000000..1f3077d5 Binary files /dev/null and b/public/textures/chipped/decorated_pink_glazed_terracotta.png differ diff --git a/public/textures/chipped/decorated_pink_terracotta.png b/public/textures/chipped/decorated_pink_terracotta.png new file mode 100644 index 00000000..69111e9e Binary files /dev/null and b/public/textures/chipped/decorated_pink_terracotta.png differ diff --git a/public/textures/chipped/decorated_purple_glazed_terracotta.png b/public/textures/chipped/decorated_purple_glazed_terracotta.png new file mode 100644 index 00000000..35d185d0 Binary files /dev/null and b/public/textures/chipped/decorated_purple_glazed_terracotta.png differ diff --git a/public/textures/chipped/decorated_purple_terracotta.png b/public/textures/chipped/decorated_purple_terracotta.png new file mode 100644 index 00000000..74cb0c63 Binary files /dev/null and b/public/textures/chipped/decorated_purple_terracotta.png differ diff --git a/public/textures/chipped/decorated_red_glazed_terracotta.png b/public/textures/chipped/decorated_red_glazed_terracotta.png new file mode 100644 index 00000000..23df2c95 Binary files /dev/null and b/public/textures/chipped/decorated_red_glazed_terracotta.png differ diff --git a/public/textures/chipped/decorated_red_terracotta.png b/public/textures/chipped/decorated_red_terracotta.png new file mode 100644 index 00000000..0ba599fc Binary files /dev/null and b/public/textures/chipped/decorated_red_terracotta.png differ diff --git a/public/textures/chipped/decorated_terracotta.png b/public/textures/chipped/decorated_terracotta.png new file mode 100644 index 00000000..6a20c77b Binary files /dev/null and b/public/textures/chipped/decorated_terracotta.png differ diff --git a/public/textures/chipped/decorated_white_glazed_terracotta.png b/public/textures/chipped/decorated_white_glazed_terracotta.png new file mode 100644 index 00000000..530a2f4c Binary files /dev/null and b/public/textures/chipped/decorated_white_glazed_terracotta.png differ diff --git a/public/textures/chipped/decorated_white_terracotta.png b/public/textures/chipped/decorated_white_terracotta.png new file mode 100644 index 00000000..87dfade0 Binary files /dev/null and b/public/textures/chipped/decorated_white_terracotta.png differ diff --git a/public/textures/chipped/decorated_yellow_glazed_terracotta.png b/public/textures/chipped/decorated_yellow_glazed_terracotta.png new file mode 100644 index 00000000..0729ad03 Binary files /dev/null and b/public/textures/chipped/decorated_yellow_glazed_terracotta.png differ diff --git a/public/textures/chipped/decorated_yellow_terracotta.png b/public/textures/chipped/decorated_yellow_terracotta.png new file mode 100644 index 00000000..0f9c214d Binary files /dev/null and b/public/textures/chipped/decorated_yellow_terracotta.png differ diff --git a/public/textures/chipped/deepslate_mini_tiles.png b/public/textures/chipped/deepslate_mini_tiles.png new file mode 100644 index 00000000..bb6e7195 Binary files /dev/null and b/public/textures/chipped/deepslate_mini_tiles.png differ diff --git a/public/textures/chipped/deepslate_pillar.png b/public/textures/chipped/deepslate_pillar.png new file mode 100644 index 00000000..9403d9c7 Binary files /dev/null and b/public/textures/chipped/deepslate_pillar.png differ diff --git a/public/textures/chipped/deepslate_pillar_top.png b/public/textures/chipped/deepslate_pillar_top.png new file mode 100644 index 00000000..211795ef Binary files /dev/null and b/public/textures/chipped/deepslate_pillar_top.png differ diff --git a/public/textures/chipped/deepslate_pointed_dripstone.png b/public/textures/chipped/deepslate_pointed_dripstone.png new file mode 100644 index 00000000..88a0ba54 Binary files /dev/null and b/public/textures/chipped/deepslate_pointed_dripstone.png differ diff --git a/public/textures/chipped/deepslate_scales.png b/public/textures/chipped/deepslate_scales.png new file mode 100644 index 00000000..20b4ee34 Binary files /dev/null and b/public/textures/chipped/deepslate_scales.png differ diff --git a/public/textures/chipped/dense_cobweb.png b/public/textures/chipped/dense_cobweb.png new file mode 100644 index 00000000..845834e4 Binary files /dev/null and b/public/textures/chipped/dense_cobweb.png differ diff --git a/public/textures/chipped/desert_sand.png b/public/textures/chipped/desert_sand.png new file mode 100644 index 00000000..1364fc8b Binary files /dev/null and b/public/textures/chipped/desert_sand.png differ diff --git a/public/textures/chipped/detailed_acacia_planks.png b/public/textures/chipped/detailed_acacia_planks.png new file mode 100644 index 00000000..3b2600f0 Binary files /dev/null and b/public/textures/chipped/detailed_acacia_planks.png differ diff --git a/public/textures/chipped/detailed_bamboo_planks.png b/public/textures/chipped/detailed_bamboo_planks.png new file mode 100644 index 00000000..48e294e9 Binary files /dev/null and b/public/textures/chipped/detailed_bamboo_planks.png differ diff --git a/public/textures/chipped/detailed_birch_planks.png b/public/textures/chipped/detailed_birch_planks.png new file mode 100644 index 00000000..a3a12440 Binary files /dev/null and b/public/textures/chipped/detailed_birch_planks.png differ diff --git a/public/textures/chipped/detailed_cherry_planks.png b/public/textures/chipped/detailed_cherry_planks.png new file mode 100644 index 00000000..ae50ee4f Binary files /dev/null and b/public/textures/chipped/detailed_cherry_planks.png differ diff --git a/public/textures/chipped/detailed_crimson_planks.png b/public/textures/chipped/detailed_crimson_planks.png new file mode 100644 index 00000000..df0ae215 Binary files /dev/null and b/public/textures/chipped/detailed_crimson_planks.png differ diff --git a/public/textures/chipped/detailed_dark_oak_planks.png b/public/textures/chipped/detailed_dark_oak_planks.png new file mode 100644 index 00000000..200d626c Binary files /dev/null and b/public/textures/chipped/detailed_dark_oak_planks.png differ diff --git a/public/textures/chipped/detailed_hay_block.png b/public/textures/chipped/detailed_hay_block.png new file mode 100644 index 00000000..01b87db7 Binary files /dev/null and b/public/textures/chipped/detailed_hay_block.png differ diff --git a/public/textures/chipped/detailed_jungle_planks.png b/public/textures/chipped/detailed_jungle_planks.png new file mode 100644 index 00000000..f2080f68 Binary files /dev/null and b/public/textures/chipped/detailed_jungle_planks.png differ diff --git a/public/textures/chipped/detailed_mangrove_planks.png b/public/textures/chipped/detailed_mangrove_planks.png new file mode 100644 index 00000000..cff231ff Binary files /dev/null and b/public/textures/chipped/detailed_mangrove_planks.png differ diff --git a/public/textures/chipped/detailed_oak_planks.png b/public/textures/chipped/detailed_oak_planks.png new file mode 100644 index 00000000..33ecdc79 Binary files /dev/null and b/public/textures/chipped/detailed_oak_planks.png differ diff --git a/public/textures/chipped/detailed_spruce_planks.png b/public/textures/chipped/detailed_spruce_planks.png new file mode 100644 index 00000000..733d9b68 Binary files /dev/null and b/public/textures/chipped/detailed_spruce_planks.png differ diff --git a/public/textures/chipped/detailed_warped_planks.png b/public/textures/chipped/detailed_warped_planks.png new file mode 100644 index 00000000..e5dd929d Binary files /dev/null and b/public/textures/chipped/detailed_warped_planks.png differ diff --git a/public/textures/chipped/devious_carved_pumpkin.png b/public/textures/chipped/devious_carved_pumpkin.png new file mode 100644 index 00000000..46e4e2bf Binary files /dev/null and b/public/textures/chipped/devious_carved_pumpkin.png differ diff --git a/public/textures/chipped/devious_jack_o_lantern.png b/public/textures/chipped/devious_jack_o_lantern.png new file mode 100644 index 00000000..8c40b868 Binary files /dev/null and b/public/textures/chipped/devious_jack_o_lantern.png differ diff --git a/public/textures/chipped/dewkin.png b/public/textures/chipped/dewkin.png new file mode 100644 index 00000000..13a52d93 Binary files /dev/null and b/public/textures/chipped/dewkin.png differ diff --git a/public/textures/chipped/diagonal_acacia_planks.png b/public/textures/chipped/diagonal_acacia_planks.png new file mode 100644 index 00000000..a9163832 Binary files /dev/null and b/public/textures/chipped/diagonal_acacia_planks.png differ diff --git a/public/textures/chipped/diagonal_bamboo_planks.png b/public/textures/chipped/diagonal_bamboo_planks.png new file mode 100644 index 00000000..bba3912d Binary files /dev/null and b/public/textures/chipped/diagonal_bamboo_planks.png differ diff --git a/public/textures/chipped/diagonal_birch_planks.png b/public/textures/chipped/diagonal_birch_planks.png new file mode 100644 index 00000000..bd9abf07 Binary files /dev/null and b/public/textures/chipped/diagonal_birch_planks.png differ diff --git a/public/textures/chipped/diagonal_cherry_planks.png b/public/textures/chipped/diagonal_cherry_planks.png new file mode 100644 index 00000000..6ddb4f8e Binary files /dev/null and b/public/textures/chipped/diagonal_cherry_planks.png differ diff --git a/public/textures/chipped/diagonal_crimson_planks.png b/public/textures/chipped/diagonal_crimson_planks.png new file mode 100644 index 00000000..1d96eefd Binary files /dev/null and b/public/textures/chipped/diagonal_crimson_planks.png differ diff --git a/public/textures/chipped/diagonal_dark_oak_planks.png b/public/textures/chipped/diagonal_dark_oak_planks.png new file mode 100644 index 00000000..86ee2db2 Binary files /dev/null and b/public/textures/chipped/diagonal_dark_oak_planks.png differ diff --git a/public/textures/chipped/diagonal_jungle_planks.png b/public/textures/chipped/diagonal_jungle_planks.png new file mode 100644 index 00000000..90a8f980 Binary files /dev/null and b/public/textures/chipped/diagonal_jungle_planks.png differ diff --git a/public/textures/chipped/diagonal_mangrove_planks.png b/public/textures/chipped/diagonal_mangrove_planks.png new file mode 100644 index 00000000..52766cc3 Binary files /dev/null and b/public/textures/chipped/diagonal_mangrove_planks.png differ diff --git a/public/textures/chipped/diagonal_oak_planks.png b/public/textures/chipped/diagonal_oak_planks.png new file mode 100644 index 00000000..118932da Binary files /dev/null and b/public/textures/chipped/diagonal_oak_planks.png differ diff --git a/public/textures/chipped/diagonal_spruce_planks.png b/public/textures/chipped/diagonal_spruce_planks.png new file mode 100644 index 00000000..cf9d03d2 Binary files /dev/null and b/public/textures/chipped/diagonal_spruce_planks.png differ diff --git a/public/textures/chipped/diagonal_warped_planks.png b/public/textures/chipped/diagonal_warped_planks.png new file mode 100644 index 00000000..fccd80db Binary files /dev/null and b/public/textures/chipped/diagonal_warped_planks.png differ diff --git a/public/textures/chipped/diamond_acacia_planks.png b/public/textures/chipped/diamond_acacia_planks.png new file mode 100644 index 00000000..2b0e8940 Binary files /dev/null and b/public/textures/chipped/diamond_acacia_planks.png differ diff --git a/public/textures/chipped/diamond_bamboo_planks.png b/public/textures/chipped/diamond_bamboo_planks.png new file mode 100644 index 00000000..1e547d9f Binary files /dev/null and b/public/textures/chipped/diamond_bamboo_planks.png differ diff --git a/public/textures/chipped/diamond_birch_planks.png b/public/textures/chipped/diamond_birch_planks.png new file mode 100644 index 00000000..917318a0 Binary files /dev/null and b/public/textures/chipped/diamond_birch_planks.png differ diff --git a/public/textures/chipped/diamond_block_panels.png b/public/textures/chipped/diamond_block_panels.png new file mode 100644 index 00000000..3eaea09c Binary files /dev/null and b/public/textures/chipped/diamond_block_panels.png differ diff --git a/public/textures/chipped/diamond_cherry_planks.png b/public/textures/chipped/diamond_cherry_planks.png new file mode 100644 index 00000000..e39dda8e Binary files /dev/null and b/public/textures/chipped/diamond_cherry_planks.png differ diff --git a/public/textures/chipped/diamond_crimson_planks.png b/public/textures/chipped/diamond_crimson_planks.png new file mode 100644 index 00000000..fb684aaf Binary files /dev/null and b/public/textures/chipped/diamond_crimson_planks.png differ diff --git a/public/textures/chipped/diamond_dark_oak_planks.png b/public/textures/chipped/diamond_dark_oak_planks.png new file mode 100644 index 00000000..21258207 Binary files /dev/null and b/public/textures/chipped/diamond_dark_oak_planks.png differ diff --git a/public/textures/chipped/diamond_jungle_planks.png b/public/textures/chipped/diamond_jungle_planks.png new file mode 100644 index 00000000..f6087a78 Binary files /dev/null and b/public/textures/chipped/diamond_jungle_planks.png differ diff --git a/public/textures/chipped/diamond_lodestone.png b/public/textures/chipped/diamond_lodestone.png new file mode 100644 index 00000000..9c62a3e9 Binary files /dev/null and b/public/textures/chipped/diamond_lodestone.png differ diff --git a/public/textures/chipped/diamond_mangrove_planks.png b/public/textures/chipped/diamond_mangrove_planks.png new file mode 100644 index 00000000..2a273dcf Binary files /dev/null and b/public/textures/chipped/diamond_mangrove_planks.png differ diff --git a/public/textures/chipped/diamond_mud_bricks.png b/public/textures/chipped/diamond_mud_bricks.png new file mode 100644 index 00000000..4e9d7a9f Binary files /dev/null and b/public/textures/chipped/diamond_mud_bricks.png differ diff --git a/public/textures/chipped/diamond_mud_bricks_bricks.png b/public/textures/chipped/diamond_mud_bricks_bricks.png new file mode 100644 index 00000000..74042978 Binary files /dev/null and b/public/textures/chipped/diamond_mud_bricks_bricks.png differ diff --git a/public/textures/chipped/diamond_oak_planks.png b/public/textures/chipped/diamond_oak_planks.png new file mode 100644 index 00000000..ab109a6b Binary files /dev/null and b/public/textures/chipped/diamond_oak_planks.png differ diff --git a/public/textures/chipped/diamond_packed_mud_bricks.png b/public/textures/chipped/diamond_packed_mud_bricks.png new file mode 100644 index 00000000..f419a272 Binary files /dev/null and b/public/textures/chipped/diamond_packed_mud_bricks.png differ diff --git a/public/textures/chipped/diamond_spruce_planks.png b/public/textures/chipped/diamond_spruce_planks.png new file mode 100644 index 00000000..d0c9f245 Binary files /dev/null and b/public/textures/chipped/diamond_spruce_planks.png differ diff --git a/public/textures/chipped/diamond_warped_planks.png b/public/textures/chipped/diamond_warped_planks.png new file mode 100644 index 00000000..01a6e855 Binary files /dev/null and b/public/textures/chipped/diamond_warped_planks.png differ diff --git a/public/textures/chipped/diorite_bricks.png b/public/textures/chipped/diorite_bricks.png new file mode 100644 index 00000000..6745021a Binary files /dev/null and b/public/textures/chipped/diorite_bricks.png differ diff --git a/public/textures/chipped/diorite_mini_tiles.png b/public/textures/chipped/diorite_mini_tiles.png new file mode 100644 index 00000000..a512e823 Binary files /dev/null and b/public/textures/chipped/diorite_mini_tiles.png differ diff --git a/public/textures/chipped/diorite_pillar.png b/public/textures/chipped/diorite_pillar.png new file mode 100644 index 00000000..646a89b5 Binary files /dev/null and b/public/textures/chipped/diorite_pillar.png differ diff --git a/public/textures/chipped/diorite_pillar_top.png b/public/textures/chipped/diorite_pillar_top.png new file mode 100644 index 00000000..30a31457 Binary files /dev/null and b/public/textures/chipped/diorite_pillar_top.png differ diff --git a/public/textures/chipped/diorite_pointed_dripstone.png b/public/textures/chipped/diorite_pointed_dripstone.png new file mode 100644 index 00000000..5bcfc793 Binary files /dev/null and b/public/textures/chipped/diorite_pointed_dripstone.png differ diff --git a/public/textures/chipped/diorite_scales.png b/public/textures/chipped/diorite_scales.png new file mode 100644 index 00000000..1e4e14ab Binary files /dev/null and b/public/textures/chipped/diorite_scales.png differ diff --git a/public/textures/chipped/dirt_bricks.png b/public/textures/chipped/dirt_bricks.png new file mode 100644 index 00000000..70294a9b Binary files /dev/null and b/public/textures/chipped/dirt_bricks.png differ diff --git a/public/textures/chipped/dirt_mini_tiles.png b/public/textures/chipped/dirt_mini_tiles.png new file mode 100644 index 00000000..e86adcc5 Binary files /dev/null and b/public/textures/chipped/dirt_mini_tiles.png differ diff --git a/public/textures/chipped/dirt_pillar.png b/public/textures/chipped/dirt_pillar.png new file mode 100644 index 00000000..87368d3c Binary files /dev/null and b/public/textures/chipped/dirt_pillar.png differ diff --git a/public/textures/chipped/dirt_pillar_top.png b/public/textures/chipped/dirt_pillar_top.png new file mode 100644 index 00000000..055cdd70 Binary files /dev/null and b/public/textures/chipped/dirt_pillar_top.png differ diff --git a/public/textures/chipped/dirt_scales.png b/public/textures/chipped/dirt_scales.png new file mode 100644 index 00000000..b417f1dc Binary files /dev/null and b/public/textures/chipped/dirt_scales.png differ diff --git a/public/textures/chipped/dirty_dewkin.png b/public/textures/chipped/dirty_dewkin.png new file mode 100644 index 00000000..082ab0f4 Binary files /dev/null and b/public/textures/chipped/dirty_dewkin.png differ diff --git a/public/textures/chipped/dirty_goldkin.png b/public/textures/chipped/dirty_goldkin.png new file mode 100644 index 00000000..ab32ec49 Binary files /dev/null and b/public/textures/chipped/dirty_goldkin.png differ diff --git a/public/textures/chipped/dirty_gravel.png b/public/textures/chipped/dirty_gravel.png new file mode 100644 index 00000000..ca1e6a37 Binary files /dev/null and b/public/textures/chipped/dirty_gravel.png differ diff --git a/public/textures/chipped/dirty_rosekin.png b/public/textures/chipped/dirty_rosekin.png new file mode 100644 index 00000000..6c1a57be Binary files /dev/null and b/public/textures/chipped/dirty_rosekin.png differ diff --git a/public/textures/chipped/distorted_acacia_trapdoor.png b/public/textures/chipped/distorted_acacia_trapdoor.png new file mode 100644 index 00000000..f6b52a73 Binary files /dev/null and b/public/textures/chipped/distorted_acacia_trapdoor.png differ diff --git a/public/textures/chipped/distorted_bamboo_trapdoor.png b/public/textures/chipped/distorted_bamboo_trapdoor.png new file mode 100644 index 00000000..8b1abd6a Binary files /dev/null and b/public/textures/chipped/distorted_bamboo_trapdoor.png differ diff --git a/public/textures/chipped/distorted_birch_trapdoor.png b/public/textures/chipped/distorted_birch_trapdoor.png new file mode 100644 index 00000000..e0b45950 Binary files /dev/null and b/public/textures/chipped/distorted_birch_trapdoor.png differ diff --git a/public/textures/chipped/distorted_cherry_trapdoor.png b/public/textures/chipped/distorted_cherry_trapdoor.png new file mode 100644 index 00000000..a4d5b54e Binary files /dev/null and b/public/textures/chipped/distorted_cherry_trapdoor.png differ diff --git a/public/textures/chipped/distorted_crimson_trapdoor.png b/public/textures/chipped/distorted_crimson_trapdoor.png new file mode 100644 index 00000000..814182c2 Binary files /dev/null and b/public/textures/chipped/distorted_crimson_trapdoor.png differ diff --git a/public/textures/chipped/distorted_dark_oak_trapdoor.png b/public/textures/chipped/distorted_dark_oak_trapdoor.png new file mode 100644 index 00000000..545155e8 Binary files /dev/null and b/public/textures/chipped/distorted_dark_oak_trapdoor.png differ diff --git a/public/textures/chipped/distorted_jungle_trapdoor.png b/public/textures/chipped/distorted_jungle_trapdoor.png new file mode 100644 index 00000000..e73d8084 Binary files /dev/null and b/public/textures/chipped/distorted_jungle_trapdoor.png differ diff --git a/public/textures/chipped/distorted_oak_trapdoor.png b/public/textures/chipped/distorted_oak_trapdoor.png new file mode 100644 index 00000000..e5bff905 Binary files /dev/null and b/public/textures/chipped/distorted_oak_trapdoor.png differ diff --git a/public/textures/chipped/distorted_spruce_trapdoor.png b/public/textures/chipped/distorted_spruce_trapdoor.png new file mode 100644 index 00000000..7585eb5b Binary files /dev/null and b/public/textures/chipped/distorted_spruce_trapdoor.png differ diff --git a/public/textures/chipped/donut_lantern.png b/public/textures/chipped/donut_lantern.png new file mode 100644 index 00000000..43bd20e9 Binary files /dev/null and b/public/textures/chipped/donut_lantern.png differ diff --git a/public/textures/chipped/donut_soul_lantern.png b/public/textures/chipped/donut_soul_lantern.png new file mode 100644 index 00000000..3f96969e Binary files /dev/null and b/public/textures/chipped/donut_soul_lantern.png differ diff --git a/public/textures/chipped/dot_lodestone.png b/public/textures/chipped/dot_lodestone.png new file mode 100644 index 00000000..e57efef8 Binary files /dev/null and b/public/textures/chipped/dot_lodestone.png differ diff --git a/public/textures/chipped/dotted_red_mushroom_block.png b/public/textures/chipped/dotted_red_mushroom_block.png new file mode 100644 index 00000000..49722fa3 Binary files /dev/null and b/public/textures/chipped/dotted_red_mushroom_block.png differ diff --git a/public/textures/chipped/double_brown_mushroom.png b/public/textures/chipped/double_brown_mushroom.png new file mode 100644 index 00000000..7c6d0a3c Binary files /dev/null and b/public/textures/chipped/double_brown_mushroom.png differ diff --git a/public/textures/chipped/double_crimson_fungus.png b/public/textures/chipped/double_crimson_fungus.png new file mode 100644 index 00000000..4c329890 Binary files /dev/null and b/public/textures/chipped/double_crimson_fungus.png differ diff --git a/public/textures/chipped/double_herringbone_acacia_planks.png b/public/textures/chipped/double_herringbone_acacia_planks.png new file mode 100644 index 00000000..7be94a5f Binary files /dev/null and b/public/textures/chipped/double_herringbone_acacia_planks.png differ diff --git a/public/textures/chipped/double_herringbone_bamboo_planks.png b/public/textures/chipped/double_herringbone_bamboo_planks.png new file mode 100644 index 00000000..ea289bfc Binary files /dev/null and b/public/textures/chipped/double_herringbone_bamboo_planks.png differ diff --git a/public/textures/chipped/double_herringbone_birch_planks.png b/public/textures/chipped/double_herringbone_birch_planks.png new file mode 100644 index 00000000..ac50dae5 Binary files /dev/null and b/public/textures/chipped/double_herringbone_birch_planks.png differ diff --git a/public/textures/chipped/double_herringbone_cherry_planks.png b/public/textures/chipped/double_herringbone_cherry_planks.png new file mode 100644 index 00000000..26542ad5 Binary files /dev/null and b/public/textures/chipped/double_herringbone_cherry_planks.png differ diff --git a/public/textures/chipped/double_herringbone_crimson_planks.png b/public/textures/chipped/double_herringbone_crimson_planks.png new file mode 100644 index 00000000..f871cbc2 Binary files /dev/null and b/public/textures/chipped/double_herringbone_crimson_planks.png differ diff --git a/public/textures/chipped/double_herringbone_dark_oak_planks.png b/public/textures/chipped/double_herringbone_dark_oak_planks.png new file mode 100644 index 00000000..bd083221 Binary files /dev/null and b/public/textures/chipped/double_herringbone_dark_oak_planks.png differ diff --git a/public/textures/chipped/double_herringbone_jungle_planks.png b/public/textures/chipped/double_herringbone_jungle_planks.png new file mode 100644 index 00000000..79f937f1 Binary files /dev/null and b/public/textures/chipped/double_herringbone_jungle_planks.png differ diff --git a/public/textures/chipped/double_herringbone_mangrove_planks.png b/public/textures/chipped/double_herringbone_mangrove_planks.png new file mode 100644 index 00000000..1395663e Binary files /dev/null and b/public/textures/chipped/double_herringbone_mangrove_planks.png differ diff --git a/public/textures/chipped/double_herringbone_oak_planks.png b/public/textures/chipped/double_herringbone_oak_planks.png new file mode 100644 index 00000000..bfb86d13 Binary files /dev/null and b/public/textures/chipped/double_herringbone_oak_planks.png differ diff --git a/public/textures/chipped/double_herringbone_spruce_planks.png b/public/textures/chipped/double_herringbone_spruce_planks.png new file mode 100644 index 00000000..f52ea4b5 Binary files /dev/null and b/public/textures/chipped/double_herringbone_spruce_planks.png differ diff --git a/public/textures/chipped/double_herringbone_warped_planks.png b/public/textures/chipped/double_herringbone_warped_planks.png new file mode 100644 index 00000000..5391b84e Binary files /dev/null and b/public/textures/chipped/double_herringbone_warped_planks.png differ diff --git a/public/textures/chipped/double_inlayed_glowstone.png b/public/textures/chipped/double_inlayed_glowstone.png new file mode 100644 index 00000000..65c5f7d0 Binary files /dev/null and b/public/textures/chipped/double_inlayed_glowstone.png differ diff --git a/public/textures/chipped/double_inlayed_sea_lantern.png b/public/textures/chipped/double_inlayed_sea_lantern.png new file mode 100644 index 00000000..30b042e1 Binary files /dev/null and b/public/textures/chipped/double_inlayed_sea_lantern.png differ diff --git a/public/textures/chipped/double_inlayed_shroomlight.png b/public/textures/chipped/double_inlayed_shroomlight.png new file mode 100644 index 00000000..26429a70 Binary files /dev/null and b/public/textures/chipped/double_inlayed_shroomlight.png differ diff --git a/public/textures/chipped/double_mud_bricks.png b/public/textures/chipped/double_mud_bricks.png new file mode 100644 index 00000000..d4a7d9e8 Binary files /dev/null and b/public/textures/chipped/double_mud_bricks.png differ diff --git a/public/textures/chipped/double_mud_bricks_bricks.png b/public/textures/chipped/double_mud_bricks_bricks.png new file mode 100644 index 00000000..38e7006e Binary files /dev/null and b/public/textures/chipped/double_mud_bricks_bricks.png differ diff --git a/public/textures/chipped/double_packed_mud_bricks.png b/public/textures/chipped/double_packed_mud_bricks.png new file mode 100644 index 00000000..a818b94a Binary files /dev/null and b/public/textures/chipped/double_packed_mud_bricks.png differ diff --git a/public/textures/chipped/double_red_mushroom.png b/public/textures/chipped/double_red_mushroom.png new file mode 100644 index 00000000..575ab09f Binary files /dev/null and b/public/textures/chipped/double_red_mushroom.png differ diff --git a/public/textures/chipped/double_roped_bone_block.png b/public/textures/chipped/double_roped_bone_block.png new file mode 100644 index 00000000..6ba0d162 Binary files /dev/null and b/public/textures/chipped/double_roped_bone_block.png differ diff --git a/public/textures/chipped/double_warped_fungus.png b/public/textures/chipped/double_warped_fungus.png new file mode 100644 index 00000000..e9a5b9d9 Binary files /dev/null and b/public/textures/chipped/double_warped_fungus.png differ diff --git a/public/textures/chipped/dried_nether_wart_block.png b/public/textures/chipped/dried_nether_wart_block.png new file mode 100644 index 00000000..d7d4e7da Binary files /dev/null and b/public/textures/chipped/dried_nether_wart_block.png differ diff --git a/public/textures/chipped/dried_warped_wart_block.png b/public/textures/chipped/dried_warped_wart_block.png new file mode 100644 index 00000000..66968b10 Binary files /dev/null and b/public/textures/chipped/dried_warped_wart_block.png differ diff --git a/public/textures/chipped/dripstone_block_bricks.png b/public/textures/chipped/dripstone_block_bricks.png new file mode 100644 index 00000000..fd993af7 Binary files /dev/null and b/public/textures/chipped/dripstone_block_bricks.png differ diff --git a/public/textures/chipped/dripstone_block_mini_tiles.png b/public/textures/chipped/dripstone_block_mini_tiles.png new file mode 100644 index 00000000..b905b2f7 Binary files /dev/null and b/public/textures/chipped/dripstone_block_mini_tiles.png differ diff --git a/public/textures/chipped/dripstone_block_pillar.png b/public/textures/chipped/dripstone_block_pillar.png new file mode 100644 index 00000000..9f92acea Binary files /dev/null and b/public/textures/chipped/dripstone_block_pillar.png differ diff --git a/public/textures/chipped/dripstone_block_pillar_top.png b/public/textures/chipped/dripstone_block_pillar_top.png new file mode 100644 index 00000000..8ae648ed Binary files /dev/null and b/public/textures/chipped/dripstone_block_pillar_top.png differ diff --git a/public/textures/chipped/dripstone_block_scales.png b/public/textures/chipped/dripstone_block_scales.png new file mode 100644 index 00000000..57dd49dd Binary files /dev/null and b/public/textures/chipped/dripstone_block_scales.png differ diff --git a/public/textures/chipped/droopy_vine.png b/public/textures/chipped/droopy_vine.png new file mode 100644 index 00000000..809ef952 Binary files /dev/null and b/public/textures/chipped/droopy_vine.png differ diff --git a/public/textures/chipped/dual_paneled_acacia_door.png b/public/textures/chipped/dual_paneled_acacia_door.png new file mode 100644 index 00000000..e091a5eb Binary files /dev/null and b/public/textures/chipped/dual_paneled_acacia_door.png differ diff --git a/public/textures/chipped/dual_paneled_bamboo_door.png b/public/textures/chipped/dual_paneled_bamboo_door.png new file mode 100644 index 00000000..b0bd750c Binary files /dev/null and b/public/textures/chipped/dual_paneled_bamboo_door.png differ diff --git a/public/textures/chipped/dual_paneled_birch_door.png b/public/textures/chipped/dual_paneled_birch_door.png new file mode 100644 index 00000000..8efbdfb0 Binary files /dev/null and b/public/textures/chipped/dual_paneled_birch_door.png differ diff --git a/public/textures/chipped/dual_paneled_cherry_door.png b/public/textures/chipped/dual_paneled_cherry_door.png new file mode 100644 index 00000000..f50c44d2 Binary files /dev/null and b/public/textures/chipped/dual_paneled_cherry_door.png differ diff --git a/public/textures/chipped/dual_paneled_crimson_door.png b/public/textures/chipped/dual_paneled_crimson_door.png new file mode 100644 index 00000000..81ae9076 Binary files /dev/null and b/public/textures/chipped/dual_paneled_crimson_door.png differ diff --git a/public/textures/chipped/dual_paneled_dark_oak_door.png b/public/textures/chipped/dual_paneled_dark_oak_door.png new file mode 100644 index 00000000..39d6006a Binary files /dev/null and b/public/textures/chipped/dual_paneled_dark_oak_door.png differ diff --git a/public/textures/chipped/dual_paneled_jungle_door.png b/public/textures/chipped/dual_paneled_jungle_door.png new file mode 100644 index 00000000..9631b2ba Binary files /dev/null and b/public/textures/chipped/dual_paneled_jungle_door.png differ diff --git a/public/textures/chipped/dual_paneled_mangrove_door.png b/public/textures/chipped/dual_paneled_mangrove_door.png new file mode 100644 index 00000000..61bc24fc Binary files /dev/null and b/public/textures/chipped/dual_paneled_mangrove_door.png differ diff --git a/public/textures/chipped/dual_paneled_oak_door.png b/public/textures/chipped/dual_paneled_oak_door.png new file mode 100644 index 00000000..a11310d2 Binary files /dev/null and b/public/textures/chipped/dual_paneled_oak_door.png differ diff --git a/public/textures/chipped/dual_paneled_spruce_door.png b/public/textures/chipped/dual_paneled_spruce_door.png new file mode 100644 index 00000000..39129150 Binary files /dev/null and b/public/textures/chipped/dual_paneled_spruce_door.png differ diff --git a/public/textures/chipped/dual_paneled_warped_door.png b/public/textures/chipped/dual_paneled_warped_door.png new file mode 100644 index 00000000..f5c57bbb Binary files /dev/null and b/public/textures/chipped/dual_paneled_warped_door.png differ diff --git a/public/textures/chipped/duh_amethyst_block.png b/public/textures/chipped/duh_amethyst_block.png new file mode 100644 index 00000000..4db6f959 Binary files /dev/null and b/public/textures/chipped/duh_amethyst_block.png differ diff --git a/public/textures/chipped/duh_ancient_debris.png b/public/textures/chipped/duh_ancient_debris.png new file mode 100644 index 00000000..1e93591e Binary files /dev/null and b/public/textures/chipped/duh_ancient_debris.png differ diff --git a/public/textures/chipped/duh_andesite.png b/public/textures/chipped/duh_andesite.png new file mode 100644 index 00000000..f8280e1f Binary files /dev/null and b/public/textures/chipped/duh_andesite.png differ diff --git a/public/textures/chipped/duh_basalt.png b/public/textures/chipped/duh_basalt.png new file mode 100644 index 00000000..611f442e Binary files /dev/null and b/public/textures/chipped/duh_basalt.png differ diff --git a/public/textures/chipped/duh_blackstone.png b/public/textures/chipped/duh_blackstone.png new file mode 100644 index 00000000..23a25cde Binary files /dev/null and b/public/textures/chipped/duh_blackstone.png differ diff --git a/public/textures/chipped/duh_blue_ice.png b/public/textures/chipped/duh_blue_ice.png new file mode 100644 index 00000000..7c4f4958 Binary files /dev/null and b/public/textures/chipped/duh_blue_ice.png differ diff --git a/public/textures/chipped/duh_borderless_bricks.png b/public/textures/chipped/duh_borderless_bricks.png new file mode 100644 index 00000000..010e4b06 Binary files /dev/null and b/public/textures/chipped/duh_borderless_bricks.png differ diff --git a/public/textures/chipped/duh_bricks.png b/public/textures/chipped/duh_bricks.png new file mode 100644 index 00000000..019ecd8f Binary files /dev/null and b/public/textures/chipped/duh_bricks.png differ diff --git a/public/textures/chipped/duh_calcite.png b/public/textures/chipped/duh_calcite.png new file mode 100644 index 00000000..c466cf94 Binary files /dev/null and b/public/textures/chipped/duh_calcite.png differ diff --git a/public/textures/chipped/duh_clay.png b/public/textures/chipped/duh_clay.png new file mode 100644 index 00000000..a30944e8 Binary files /dev/null and b/public/textures/chipped/duh_clay.png differ diff --git a/public/textures/chipped/duh_coal_block.png b/public/textures/chipped/duh_coal_block.png new file mode 100644 index 00000000..83393446 Binary files /dev/null and b/public/textures/chipped/duh_coal_block.png differ diff --git a/public/textures/chipped/duh_cobblestone.png b/public/textures/chipped/duh_cobblestone.png new file mode 100644 index 00000000..bba919aa Binary files /dev/null and b/public/textures/chipped/duh_cobblestone.png differ diff --git a/public/textures/chipped/duh_crying_obsidian.png b/public/textures/chipped/duh_crying_obsidian.png new file mode 100644 index 00000000..477f6e30 Binary files /dev/null and b/public/textures/chipped/duh_crying_obsidian.png differ diff --git a/public/textures/chipped/duh_dark_prismarine.png b/public/textures/chipped/duh_dark_prismarine.png new file mode 100644 index 00000000..f1fedd03 Binary files /dev/null and b/public/textures/chipped/duh_dark_prismarine.png differ diff --git a/public/textures/chipped/duh_deepslate.png b/public/textures/chipped/duh_deepslate.png new file mode 100644 index 00000000..f47ff5ff Binary files /dev/null and b/public/textures/chipped/duh_deepslate.png differ diff --git a/public/textures/chipped/duh_diorite.png b/public/textures/chipped/duh_diorite.png new file mode 100644 index 00000000..754c31a5 Binary files /dev/null and b/public/textures/chipped/duh_diorite.png differ diff --git a/public/textures/chipped/duh_dirt.png b/public/textures/chipped/duh_dirt.png new file mode 100644 index 00000000..406f8c90 Binary files /dev/null and b/public/textures/chipped/duh_dirt.png differ diff --git a/public/textures/chipped/duh_dripstone_block.png b/public/textures/chipped/duh_dripstone_block.png new file mode 100644 index 00000000..3cf586b8 Binary files /dev/null and b/public/textures/chipped/duh_dripstone_block.png differ diff --git a/public/textures/chipped/duh_end_stone.png b/public/textures/chipped/duh_end_stone.png new file mode 100644 index 00000000..f45c585e Binary files /dev/null and b/public/textures/chipped/duh_end_stone.png differ diff --git a/public/textures/chipped/duh_gilded_blackstone.png b/public/textures/chipped/duh_gilded_blackstone.png new file mode 100644 index 00000000..c2422400 Binary files /dev/null and b/public/textures/chipped/duh_gilded_blackstone.png differ diff --git a/public/textures/chipped/duh_granite.png b/public/textures/chipped/duh_granite.png new file mode 100644 index 00000000..07621678 Binary files /dev/null and b/public/textures/chipped/duh_granite.png differ diff --git a/public/textures/chipped/duh_ice.png b/public/textures/chipped/duh_ice.png new file mode 100644 index 00000000..7d42ac25 Binary files /dev/null and b/public/textures/chipped/duh_ice.png differ diff --git a/public/textures/chipped/duh_lapis_block.png b/public/textures/chipped/duh_lapis_block.png new file mode 100644 index 00000000..1f71a373 Binary files /dev/null and b/public/textures/chipped/duh_lapis_block.png differ diff --git a/public/textures/chipped/duh_lodestone.png b/public/textures/chipped/duh_lodestone.png new file mode 100644 index 00000000..63485e29 Binary files /dev/null and b/public/textures/chipped/duh_lodestone.png differ diff --git a/public/textures/chipped/duh_magma_block.png b/public/textures/chipped/duh_magma_block.png new file mode 100644 index 00000000..b6fd5ca2 Binary files /dev/null and b/public/textures/chipped/duh_magma_block.png differ diff --git a/public/textures/chipped/duh_mossy_cobblestone.png b/public/textures/chipped/duh_mossy_cobblestone.png new file mode 100644 index 00000000..9612f64b Binary files /dev/null and b/public/textures/chipped/duh_mossy_cobblestone.png differ diff --git a/public/textures/chipped/duh_mossy_stone_bricks.png b/public/textures/chipped/duh_mossy_stone_bricks.png new file mode 100644 index 00000000..9c1df826 Binary files /dev/null and b/public/textures/chipped/duh_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/duh_mud.png b/public/textures/chipped/duh_mud.png new file mode 100644 index 00000000..0752879b Binary files /dev/null and b/public/textures/chipped/duh_mud.png differ diff --git a/public/textures/chipped/duh_mud_bricks.png b/public/textures/chipped/duh_mud_bricks.png new file mode 100644 index 00000000..64709c06 Binary files /dev/null and b/public/textures/chipped/duh_mud_bricks.png differ diff --git a/public/textures/chipped/duh_nether_bricks.png b/public/textures/chipped/duh_nether_bricks.png new file mode 100644 index 00000000..00ba6e84 Binary files /dev/null and b/public/textures/chipped/duh_nether_bricks.png differ diff --git a/public/textures/chipped/duh_netherrack.png b/public/textures/chipped/duh_netherrack.png new file mode 100644 index 00000000..30f638f5 Binary files /dev/null and b/public/textures/chipped/duh_netherrack.png differ diff --git a/public/textures/chipped/duh_obsidian.png b/public/textures/chipped/duh_obsidian.png new file mode 100644 index 00000000..2cf29d50 Binary files /dev/null and b/public/textures/chipped/duh_obsidian.png differ diff --git a/public/textures/chipped/duh_packed_ice.png b/public/textures/chipped/duh_packed_ice.png new file mode 100644 index 00000000..de097a21 Binary files /dev/null and b/public/textures/chipped/duh_packed_ice.png differ diff --git a/public/textures/chipped/duh_packed_mud.png b/public/textures/chipped/duh_packed_mud.png new file mode 100644 index 00000000..5abf5446 Binary files /dev/null and b/public/textures/chipped/duh_packed_mud.png differ diff --git a/public/textures/chipped/duh_prismarine.png b/public/textures/chipped/duh_prismarine.png new file mode 100644 index 00000000..56b6f663 Binary files /dev/null and b/public/textures/chipped/duh_prismarine.png differ diff --git a/public/textures/chipped/duh_purpur_block.png b/public/textures/chipped/duh_purpur_block.png new file mode 100644 index 00000000..b403aa14 Binary files /dev/null and b/public/textures/chipped/duh_purpur_block.png differ diff --git a/public/textures/chipped/duh_quartz_block.png b/public/textures/chipped/duh_quartz_block.png new file mode 100644 index 00000000..f917826e Binary files /dev/null and b/public/textures/chipped/duh_quartz_block.png differ diff --git a/public/textures/chipped/duh_raw_copper_block.png b/public/textures/chipped/duh_raw_copper_block.png new file mode 100644 index 00000000..e00ce0da Binary files /dev/null and b/public/textures/chipped/duh_raw_copper_block.png differ diff --git a/public/textures/chipped/duh_raw_gold_block.png b/public/textures/chipped/duh_raw_gold_block.png new file mode 100644 index 00000000..89825023 Binary files /dev/null and b/public/textures/chipped/duh_raw_gold_block.png differ diff --git a/public/textures/chipped/duh_raw_iron_block.png b/public/textures/chipped/duh_raw_iron_block.png new file mode 100644 index 00000000..106c3f14 Binary files /dev/null and b/public/textures/chipped/duh_raw_iron_block.png differ diff --git a/public/textures/chipped/duh_red_nether_bricks.png b/public/textures/chipped/duh_red_nether_bricks.png new file mode 100644 index 00000000..a24e1652 Binary files /dev/null and b/public/textures/chipped/duh_red_nether_bricks.png differ diff --git a/public/textures/chipped/duh_red_sandstone.png b/public/textures/chipped/duh_red_sandstone.png new file mode 100644 index 00000000..91b14988 Binary files /dev/null and b/public/textures/chipped/duh_red_sandstone.png differ diff --git a/public/textures/chipped/duh_redstone_block.png b/public/textures/chipped/duh_redstone_block.png new file mode 100644 index 00000000..0b170e0d Binary files /dev/null and b/public/textures/chipped/duh_redstone_block.png differ diff --git a/public/textures/chipped/duh_sandstone.png b/public/textures/chipped/duh_sandstone.png new file mode 100644 index 00000000..7676689a Binary files /dev/null and b/public/textures/chipped/duh_sandstone.png differ diff --git a/public/textures/chipped/duh_smooth_stone.png b/public/textures/chipped/duh_smooth_stone.png new file mode 100644 index 00000000..2dcacd13 Binary files /dev/null and b/public/textures/chipped/duh_smooth_stone.png differ diff --git a/public/textures/chipped/duh_snow_block.png b/public/textures/chipped/duh_snow_block.png new file mode 100644 index 00000000..304fa443 Binary files /dev/null and b/public/textures/chipped/duh_snow_block.png differ diff --git a/public/textures/chipped/duh_stone.png b/public/textures/chipped/duh_stone.png new file mode 100644 index 00000000..d65c111a Binary files /dev/null and b/public/textures/chipped/duh_stone.png differ diff --git a/public/textures/chipped/duh_tuff.png b/public/textures/chipped/duh_tuff.png new file mode 100644 index 00000000..77279c02 Binary files /dev/null and b/public/textures/chipped/duh_tuff.png differ diff --git a/public/textures/chipped/dusted_brown_mushroom_block.png b/public/textures/chipped/dusted_brown_mushroom_block.png new file mode 100644 index 00000000..f112ec9a Binary files /dev/null and b/public/textures/chipped/dusted_brown_mushroom_block.png differ diff --git a/public/textures/chipped/dusted_red_mushroom_block.png b/public/textures/chipped/dusted_red_mushroom_block.png new file mode 100644 index 00000000..d063a52a Binary files /dev/null and b/public/textures/chipped/dusted_red_mushroom_block.png differ diff --git a/public/textures/chipped/dusty_bookshelf.png b/public/textures/chipped/dusty_bookshelf.png new file mode 100644 index 00000000..b022c8da Binary files /dev/null and b/public/textures/chipped/dusty_bookshelf.png differ diff --git a/public/textures/chipped/dusty_gravel.png b/public/textures/chipped/dusty_gravel.png new file mode 100644 index 00000000..2d8eb9c2 Binary files /dev/null and b/public/textures/chipped/dusty_gravel.png differ diff --git a/public/textures/chipped/edge_cut_acacia_log.png b/public/textures/chipped/edge_cut_acacia_log.png new file mode 100644 index 00000000..127004ee Binary files /dev/null and b/public/textures/chipped/edge_cut_acacia_log.png differ diff --git a/public/textures/chipped/edge_cut_birch_log.png b/public/textures/chipped/edge_cut_birch_log.png new file mode 100644 index 00000000..a224cda0 Binary files /dev/null and b/public/textures/chipped/edge_cut_birch_log.png differ diff --git a/public/textures/chipped/edge_cut_cherry_log.png b/public/textures/chipped/edge_cut_cherry_log.png new file mode 100644 index 00000000..ebfa3502 Binary files /dev/null and b/public/textures/chipped/edge_cut_cherry_log.png differ diff --git a/public/textures/chipped/edge_cut_crimson_stem.png b/public/textures/chipped/edge_cut_crimson_stem.png new file mode 100644 index 00000000..d142032d Binary files /dev/null and b/public/textures/chipped/edge_cut_crimson_stem.png differ diff --git a/public/textures/chipped/edge_cut_dark_oak_log.png b/public/textures/chipped/edge_cut_dark_oak_log.png new file mode 100644 index 00000000..f7413d42 Binary files /dev/null and b/public/textures/chipped/edge_cut_dark_oak_log.png differ diff --git a/public/textures/chipped/edge_cut_jungle_log.png b/public/textures/chipped/edge_cut_jungle_log.png new file mode 100644 index 00000000..3b81c8aa Binary files /dev/null and b/public/textures/chipped/edge_cut_jungle_log.png differ diff --git a/public/textures/chipped/edge_cut_mangrove_log.png b/public/textures/chipped/edge_cut_mangrove_log.png new file mode 100644 index 00000000..c4e7f3ac Binary files /dev/null and b/public/textures/chipped/edge_cut_mangrove_log.png differ diff --git a/public/textures/chipped/edge_cut_oak_log.png b/public/textures/chipped/edge_cut_oak_log.png new file mode 100644 index 00000000..c04582a5 Binary files /dev/null and b/public/textures/chipped/edge_cut_oak_log.png differ diff --git a/public/textures/chipped/edge_cut_spruce_log.png b/public/textures/chipped/edge_cut_spruce_log.png new file mode 100644 index 00000000..06381f25 Binary files /dev/null and b/public/textures/chipped/edge_cut_spruce_log.png differ diff --git a/public/textures/chipped/edge_cut_warped_stem.png b/public/textures/chipped/edge_cut_warped_stem.png new file mode 100644 index 00000000..4b1a2bb4 Binary files /dev/null and b/public/textures/chipped/edge_cut_warped_stem.png differ diff --git a/public/textures/chipped/edged_amethyst_block_bricks.png b/public/textures/chipped/edged_amethyst_block_bricks.png new file mode 100644 index 00000000..d77729e2 Binary files /dev/null and b/public/textures/chipped/edged_amethyst_block_bricks.png differ diff --git a/public/textures/chipped/edged_ancient_debris_bricks.png b/public/textures/chipped/edged_ancient_debris_bricks.png new file mode 100644 index 00000000..a0d05d25 Binary files /dev/null and b/public/textures/chipped/edged_ancient_debris_bricks.png differ diff --git a/public/textures/chipped/edged_andesite_bricks.png b/public/textures/chipped/edged_andesite_bricks.png new file mode 100644 index 00000000..3e149431 Binary files /dev/null and b/public/textures/chipped/edged_andesite_bricks.png differ diff --git a/public/textures/chipped/edged_basalt_bricks.png b/public/textures/chipped/edged_basalt_bricks.png new file mode 100644 index 00000000..fc473a1b Binary files /dev/null and b/public/textures/chipped/edged_basalt_bricks.png differ diff --git a/public/textures/chipped/edged_blackstone_bricks.png b/public/textures/chipped/edged_blackstone_bricks.png new file mode 100644 index 00000000..932ae055 Binary files /dev/null and b/public/textures/chipped/edged_blackstone_bricks.png differ diff --git a/public/textures/chipped/edged_blue_ice_bricks.png b/public/textures/chipped/edged_blue_ice_bricks.png new file mode 100644 index 00000000..735b2039 Binary files /dev/null and b/public/textures/chipped/edged_blue_ice_bricks.png differ diff --git a/public/textures/chipped/edged_borderless_bricks_bricks.png b/public/textures/chipped/edged_borderless_bricks_bricks.png new file mode 100644 index 00000000..39815bad Binary files /dev/null and b/public/textures/chipped/edged_borderless_bricks_bricks.png differ diff --git a/public/textures/chipped/edged_bricks_bricks.png b/public/textures/chipped/edged_bricks_bricks.png new file mode 100644 index 00000000..dbc95d8b Binary files /dev/null and b/public/textures/chipped/edged_bricks_bricks.png differ diff --git a/public/textures/chipped/edged_calcite_bricks.png b/public/textures/chipped/edged_calcite_bricks.png new file mode 100644 index 00000000..a6a441cf Binary files /dev/null and b/public/textures/chipped/edged_calcite_bricks.png differ diff --git a/public/textures/chipped/edged_clay_bricks.png b/public/textures/chipped/edged_clay_bricks.png new file mode 100644 index 00000000..0606f63d Binary files /dev/null and b/public/textures/chipped/edged_clay_bricks.png differ diff --git a/public/textures/chipped/edged_coal_block_bricks.png b/public/textures/chipped/edged_coal_block_bricks.png new file mode 100644 index 00000000..2b96228a Binary files /dev/null and b/public/textures/chipped/edged_coal_block_bricks.png differ diff --git a/public/textures/chipped/edged_cobblestone_bricks.png b/public/textures/chipped/edged_cobblestone_bricks.png new file mode 100644 index 00000000..073dfe9f Binary files /dev/null and b/public/textures/chipped/edged_cobblestone_bricks.png differ diff --git a/public/textures/chipped/edged_crying_obsidian_bricks.png b/public/textures/chipped/edged_crying_obsidian_bricks.png new file mode 100644 index 00000000..847d655a Binary files /dev/null and b/public/textures/chipped/edged_crying_obsidian_bricks.png differ diff --git a/public/textures/chipped/edged_dark_prismarine_bricks.png b/public/textures/chipped/edged_dark_prismarine_bricks.png new file mode 100644 index 00000000..671d29f7 Binary files /dev/null and b/public/textures/chipped/edged_dark_prismarine_bricks.png differ diff --git a/public/textures/chipped/edged_deepslate_bricks.png b/public/textures/chipped/edged_deepslate_bricks.png new file mode 100644 index 00000000..2e910aa0 Binary files /dev/null and b/public/textures/chipped/edged_deepslate_bricks.png differ diff --git a/public/textures/chipped/edged_diorite_bricks.png b/public/textures/chipped/edged_diorite_bricks.png new file mode 100644 index 00000000..0c1b1304 Binary files /dev/null and b/public/textures/chipped/edged_diorite_bricks.png differ diff --git a/public/textures/chipped/edged_dirt_bricks.png b/public/textures/chipped/edged_dirt_bricks.png new file mode 100644 index 00000000..e095187e Binary files /dev/null and b/public/textures/chipped/edged_dirt_bricks.png differ diff --git a/public/textures/chipped/edged_dripstone_block_bricks.png b/public/textures/chipped/edged_dripstone_block_bricks.png new file mode 100644 index 00000000..d7a04be6 Binary files /dev/null and b/public/textures/chipped/edged_dripstone_block_bricks.png differ diff --git a/public/textures/chipped/edged_end_stone_bricks.png b/public/textures/chipped/edged_end_stone_bricks.png new file mode 100644 index 00000000..dbec72f4 Binary files /dev/null and b/public/textures/chipped/edged_end_stone_bricks.png differ diff --git a/public/textures/chipped/edged_gilded_blackstone_bricks.png b/public/textures/chipped/edged_gilded_blackstone_bricks.png new file mode 100644 index 00000000..f43391a4 Binary files /dev/null and b/public/textures/chipped/edged_gilded_blackstone_bricks.png differ diff --git a/public/textures/chipped/edged_glowstone_lantern.png b/public/textures/chipped/edged_glowstone_lantern.png new file mode 100644 index 00000000..da32e2ff Binary files /dev/null and b/public/textures/chipped/edged_glowstone_lantern.png differ diff --git a/public/textures/chipped/edged_granite_bricks.png b/public/textures/chipped/edged_granite_bricks.png new file mode 100644 index 00000000..f4eafea2 Binary files /dev/null and b/public/textures/chipped/edged_granite_bricks.png differ diff --git a/public/textures/chipped/edged_ice_bricks.png b/public/textures/chipped/edged_ice_bricks.png new file mode 100644 index 00000000..554331c4 Binary files /dev/null and b/public/textures/chipped/edged_ice_bricks.png differ diff --git a/public/textures/chipped/edged_lapis_block_bricks.png b/public/textures/chipped/edged_lapis_block_bricks.png new file mode 100644 index 00000000..d5d8adcc Binary files /dev/null and b/public/textures/chipped/edged_lapis_block_bricks.png differ diff --git a/public/textures/chipped/edged_lodestone_bricks.png b/public/textures/chipped/edged_lodestone_bricks.png new file mode 100644 index 00000000..36160151 Binary files /dev/null and b/public/textures/chipped/edged_lodestone_bricks.png differ diff --git a/public/textures/chipped/edged_magma_block_bricks.png b/public/textures/chipped/edged_magma_block_bricks.png new file mode 100644 index 00000000..4d458c2f Binary files /dev/null and b/public/textures/chipped/edged_magma_block_bricks.png differ diff --git a/public/textures/chipped/edged_mossy_cobblestone_bricks.png b/public/textures/chipped/edged_mossy_cobblestone_bricks.png new file mode 100644 index 00000000..59fbb43b Binary files /dev/null and b/public/textures/chipped/edged_mossy_cobblestone_bricks.png differ diff --git a/public/textures/chipped/edged_mossy_stone_bricks_bricks.png b/public/textures/chipped/edged_mossy_stone_bricks_bricks.png new file mode 100644 index 00000000..eb5cfb15 Binary files /dev/null and b/public/textures/chipped/edged_mossy_stone_bricks_bricks.png differ diff --git a/public/textures/chipped/edged_mud_bricks.png b/public/textures/chipped/edged_mud_bricks.png new file mode 100644 index 00000000..ed84e686 Binary files /dev/null and b/public/textures/chipped/edged_mud_bricks.png differ diff --git a/public/textures/chipped/edged_mud_bricks_bricks.png b/public/textures/chipped/edged_mud_bricks_bricks.png new file mode 100644 index 00000000..9b687edb Binary files /dev/null and b/public/textures/chipped/edged_mud_bricks_bricks.png differ diff --git a/public/textures/chipped/edged_nether_bricks_bricks.png b/public/textures/chipped/edged_nether_bricks_bricks.png new file mode 100644 index 00000000..f4bbc940 Binary files /dev/null and b/public/textures/chipped/edged_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/edged_netherrack_bricks.png b/public/textures/chipped/edged_netherrack_bricks.png new file mode 100644 index 00000000..d81e4abd Binary files /dev/null and b/public/textures/chipped/edged_netherrack_bricks.png differ diff --git a/public/textures/chipped/edged_obsidian_bricks.png b/public/textures/chipped/edged_obsidian_bricks.png new file mode 100644 index 00000000..97312275 Binary files /dev/null and b/public/textures/chipped/edged_obsidian_bricks.png differ diff --git a/public/textures/chipped/edged_packed_ice_bricks.png b/public/textures/chipped/edged_packed_ice_bricks.png new file mode 100644 index 00000000..a33ac166 Binary files /dev/null and b/public/textures/chipped/edged_packed_ice_bricks.png differ diff --git a/public/textures/chipped/edged_packed_mud_bricks.png b/public/textures/chipped/edged_packed_mud_bricks.png new file mode 100644 index 00000000..e9d22ad9 Binary files /dev/null and b/public/textures/chipped/edged_packed_mud_bricks.png differ diff --git a/public/textures/chipped/edged_prismarine_bricks.png b/public/textures/chipped/edged_prismarine_bricks.png new file mode 100644 index 00000000..ebcbfb5a Binary files /dev/null and b/public/textures/chipped/edged_prismarine_bricks.png differ diff --git a/public/textures/chipped/edged_purpur_block_bricks.png b/public/textures/chipped/edged_purpur_block_bricks.png new file mode 100644 index 00000000..f7af669b Binary files /dev/null and b/public/textures/chipped/edged_purpur_block_bricks.png differ diff --git a/public/textures/chipped/edged_quartz_block_bricks.png b/public/textures/chipped/edged_quartz_block_bricks.png new file mode 100644 index 00000000..4a05b222 Binary files /dev/null and b/public/textures/chipped/edged_quartz_block_bricks.png differ diff --git a/public/textures/chipped/edged_raw_copper_block_bricks.png b/public/textures/chipped/edged_raw_copper_block_bricks.png new file mode 100644 index 00000000..57a77f3f Binary files /dev/null and b/public/textures/chipped/edged_raw_copper_block_bricks.png differ diff --git a/public/textures/chipped/edged_raw_gold_block_bricks.png b/public/textures/chipped/edged_raw_gold_block_bricks.png new file mode 100644 index 00000000..30dbc0e3 Binary files /dev/null and b/public/textures/chipped/edged_raw_gold_block_bricks.png differ diff --git a/public/textures/chipped/edged_raw_iron_block_bricks.png b/public/textures/chipped/edged_raw_iron_block_bricks.png new file mode 100644 index 00000000..d463a679 Binary files /dev/null and b/public/textures/chipped/edged_raw_iron_block_bricks.png differ diff --git a/public/textures/chipped/edged_red_nether_bricks_bricks.png b/public/textures/chipped/edged_red_nether_bricks_bricks.png new file mode 100644 index 00000000..2dbbb95f Binary files /dev/null and b/public/textures/chipped/edged_red_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/edged_red_sandstone_bricks.png b/public/textures/chipped/edged_red_sandstone_bricks.png new file mode 100644 index 00000000..9807b4db Binary files /dev/null and b/public/textures/chipped/edged_red_sandstone_bricks.png differ diff --git a/public/textures/chipped/edged_redstone_block_bricks.png b/public/textures/chipped/edged_redstone_block_bricks.png new file mode 100644 index 00000000..95ccb816 Binary files /dev/null and b/public/textures/chipped/edged_redstone_block_bricks.png differ diff --git a/public/textures/chipped/edged_redstone_lamp.png b/public/textures/chipped/edged_redstone_lamp.png new file mode 100644 index 00000000..e939e674 Binary files /dev/null and b/public/textures/chipped/edged_redstone_lamp.png differ diff --git a/public/textures/chipped/edged_sandstone_bricks.png b/public/textures/chipped/edged_sandstone_bricks.png new file mode 100644 index 00000000..0226f250 Binary files /dev/null and b/public/textures/chipped/edged_sandstone_bricks.png differ diff --git a/public/textures/chipped/edged_shroomlight_lantern.png b/public/textures/chipped/edged_shroomlight_lantern.png new file mode 100644 index 00000000..fbac1430 Binary files /dev/null and b/public/textures/chipped/edged_shroomlight_lantern.png differ diff --git a/public/textures/chipped/edged_smooth_stone_bricks.png b/public/textures/chipped/edged_smooth_stone_bricks.png new file mode 100644 index 00000000..826efddb Binary files /dev/null and b/public/textures/chipped/edged_smooth_stone_bricks.png differ diff --git a/public/textures/chipped/edged_snow_block_bricks.png b/public/textures/chipped/edged_snow_block_bricks.png new file mode 100644 index 00000000..db0d4312 Binary files /dev/null and b/public/textures/chipped/edged_snow_block_bricks.png differ diff --git a/public/textures/chipped/edged_stone_bricks.png b/public/textures/chipped/edged_stone_bricks.png new file mode 100644 index 00000000..293ca4bc Binary files /dev/null and b/public/textures/chipped/edged_stone_bricks.png differ diff --git a/public/textures/chipped/edged_stripped_acacia_log.png b/public/textures/chipped/edged_stripped_acacia_log.png new file mode 100644 index 00000000..1af3b4dd Binary files /dev/null and b/public/textures/chipped/edged_stripped_acacia_log.png differ diff --git a/public/textures/chipped/edged_stripped_birch_log.png b/public/textures/chipped/edged_stripped_birch_log.png new file mode 100644 index 00000000..b520c27a Binary files /dev/null and b/public/textures/chipped/edged_stripped_birch_log.png differ diff --git a/public/textures/chipped/edged_stripped_cherry_log.png b/public/textures/chipped/edged_stripped_cherry_log.png new file mode 100644 index 00000000..1a3dd78f Binary files /dev/null and b/public/textures/chipped/edged_stripped_cherry_log.png differ diff --git a/public/textures/chipped/edged_stripped_crimson_stem.png b/public/textures/chipped/edged_stripped_crimson_stem.png new file mode 100644 index 00000000..f57cffe5 Binary files /dev/null and b/public/textures/chipped/edged_stripped_crimson_stem.png differ diff --git a/public/textures/chipped/edged_stripped_dark_oak_log.png b/public/textures/chipped/edged_stripped_dark_oak_log.png new file mode 100644 index 00000000..ac035bd2 Binary files /dev/null and b/public/textures/chipped/edged_stripped_dark_oak_log.png differ diff --git a/public/textures/chipped/edged_stripped_jungle_log.png b/public/textures/chipped/edged_stripped_jungle_log.png new file mode 100644 index 00000000..1a9748cd Binary files /dev/null and b/public/textures/chipped/edged_stripped_jungle_log.png differ diff --git a/public/textures/chipped/edged_stripped_mangrove_log.png b/public/textures/chipped/edged_stripped_mangrove_log.png new file mode 100644 index 00000000..ed7cfb5c Binary files /dev/null and b/public/textures/chipped/edged_stripped_mangrove_log.png differ diff --git a/public/textures/chipped/edged_stripped_oak_log.png b/public/textures/chipped/edged_stripped_oak_log.png new file mode 100644 index 00000000..bc67541e Binary files /dev/null and b/public/textures/chipped/edged_stripped_oak_log.png differ diff --git a/public/textures/chipped/edged_stripped_spruce_log.png b/public/textures/chipped/edged_stripped_spruce_log.png new file mode 100644 index 00000000..f380edbc Binary files /dev/null and b/public/textures/chipped/edged_stripped_spruce_log.png differ diff --git a/public/textures/chipped/edged_stripped_warped_stem.png b/public/textures/chipped/edged_stripped_warped_stem.png new file mode 100644 index 00000000..555d3c56 Binary files /dev/null and b/public/textures/chipped/edged_stripped_warped_stem.png differ diff --git a/public/textures/chipped/edged_tuff_bricks.png b/public/textures/chipped/edged_tuff_bricks.png new file mode 100644 index 00000000..a0086f4b Binary files /dev/null and b/public/textures/chipped/edged_tuff_bricks.png differ diff --git a/public/textures/chipped/edged_white_redstone_lamp.png b/public/textures/chipped/edged_white_redstone_lamp.png new file mode 100644 index 00000000..94612bd8 Binary files /dev/null and b/public/textures/chipped/edged_white_redstone_lamp.png differ diff --git a/public/textures/chipped/elemental_ochre_froglight.png b/public/textures/chipped/elemental_ochre_froglight.png new file mode 100644 index 00000000..7fd1f7cc Binary files /dev/null and b/public/textures/chipped/elemental_ochre_froglight.png differ diff --git a/public/textures/chipped/elemental_pearlescent_froglight.png b/public/textures/chipped/elemental_pearlescent_froglight.png new file mode 100644 index 00000000..a9300141 Binary files /dev/null and b/public/textures/chipped/elemental_pearlescent_froglight.png differ diff --git a/public/textures/chipped/elemental_verdant_froglight.png b/public/textures/chipped/elemental_verdant_froglight.png new file mode 100644 index 00000000..66dd3128 Binary files /dev/null and b/public/textures/chipped/elemental_verdant_froglight.png differ diff --git a/public/textures/chipped/embossed_diamond_block.png b/public/textures/chipped/embossed_diamond_block.png new file mode 100644 index 00000000..dbb3041b Binary files /dev/null and b/public/textures/chipped/embossed_diamond_block.png differ diff --git a/public/textures/chipped/embossed_emerald_block.png b/public/textures/chipped/embossed_emerald_block.png new file mode 100644 index 00000000..c60fda1c Binary files /dev/null and b/public/textures/chipped/embossed_emerald_block.png differ diff --git a/public/textures/chipped/embossed_gold_block.png b/public/textures/chipped/embossed_gold_block.png new file mode 100644 index 00000000..4602a9e0 Binary files /dev/null and b/public/textures/chipped/embossed_gold_block.png differ diff --git a/public/textures/chipped/embossed_netherite_block.png b/public/textures/chipped/embossed_netherite_block.png new file mode 100644 index 00000000..4042e660 Binary files /dev/null and b/public/textures/chipped/embossed_netherite_block.png differ diff --git a/public/textures/chipped/embossed_waxed_copper_block.png b/public/textures/chipped/embossed_waxed_copper_block.png new file mode 100644 index 00000000..73e76e61 Binary files /dev/null and b/public/textures/chipped/embossed_waxed_copper_block.png differ diff --git a/public/textures/chipped/embossed_waxed_exposed_copper.png b/public/textures/chipped/embossed_waxed_exposed_copper.png new file mode 100644 index 00000000..2d24a26a Binary files /dev/null and b/public/textures/chipped/embossed_waxed_exposed_copper.png differ diff --git a/public/textures/chipped/embossed_waxed_oxidized_copper.png b/public/textures/chipped/embossed_waxed_oxidized_copper.png new file mode 100644 index 00000000..effdff81 Binary files /dev/null and b/public/textures/chipped/embossed_waxed_oxidized_copper.png differ diff --git a/public/textures/chipped/embossed_waxed_weathered_copper.png b/public/textures/chipped/embossed_waxed_weathered_copper.png new file mode 100644 index 00000000..1421e3b9 Binary files /dev/null and b/public/textures/chipped/embossed_waxed_weathered_copper.png differ diff --git a/public/textures/chipped/emerald_block_panels.png b/public/textures/chipped/emerald_block_panels.png new file mode 100644 index 00000000..c5c6a645 Binary files /dev/null and b/public/textures/chipped/emerald_block_panels.png differ diff --git a/public/textures/chipped/enclosed_acacia_planks.png b/public/textures/chipped/enclosed_acacia_planks.png new file mode 100644 index 00000000..f7098496 Binary files /dev/null and b/public/textures/chipped/enclosed_acacia_planks.png differ diff --git a/public/textures/chipped/enclosed_bamboo_planks.png b/public/textures/chipped/enclosed_bamboo_planks.png new file mode 100644 index 00000000..ff859035 Binary files /dev/null and b/public/textures/chipped/enclosed_bamboo_planks.png differ diff --git a/public/textures/chipped/enclosed_birch_planks.png b/public/textures/chipped/enclosed_birch_planks.png new file mode 100644 index 00000000..6177d80c Binary files /dev/null and b/public/textures/chipped/enclosed_birch_planks.png differ diff --git a/public/textures/chipped/enclosed_cherry_planks.png b/public/textures/chipped/enclosed_cherry_planks.png new file mode 100644 index 00000000..37ee0056 Binary files /dev/null and b/public/textures/chipped/enclosed_cherry_planks.png differ diff --git a/public/textures/chipped/enclosed_crimson_planks.png b/public/textures/chipped/enclosed_crimson_planks.png new file mode 100644 index 00000000..d681176d Binary files /dev/null and b/public/textures/chipped/enclosed_crimson_planks.png differ diff --git a/public/textures/chipped/enclosed_dark_oak_planks.png b/public/textures/chipped/enclosed_dark_oak_planks.png new file mode 100644 index 00000000..37c89d9a Binary files /dev/null and b/public/textures/chipped/enclosed_dark_oak_planks.png differ diff --git a/public/textures/chipped/enclosed_jungle_planks.png b/public/textures/chipped/enclosed_jungle_planks.png new file mode 100644 index 00000000..921e572a Binary files /dev/null and b/public/textures/chipped/enclosed_jungle_planks.png differ diff --git a/public/textures/chipped/enclosed_mangrove_planks.png b/public/textures/chipped/enclosed_mangrove_planks.png new file mode 100644 index 00000000..76537b44 Binary files /dev/null and b/public/textures/chipped/enclosed_mangrove_planks.png differ diff --git a/public/textures/chipped/enclosed_oak_planks.png b/public/textures/chipped/enclosed_oak_planks.png new file mode 100644 index 00000000..3fc9b17c Binary files /dev/null and b/public/textures/chipped/enclosed_oak_planks.png differ diff --git a/public/textures/chipped/enclosed_spruce_planks.png b/public/textures/chipped/enclosed_spruce_planks.png new file mode 100644 index 00000000..a4fdf99a Binary files /dev/null and b/public/textures/chipped/enclosed_spruce_planks.png differ diff --git a/public/textures/chipped/enclosed_warped_planks.png b/public/textures/chipped/enclosed_warped_planks.png new file mode 100644 index 00000000..57d942ed Binary files /dev/null and b/public/textures/chipped/enclosed_warped_planks.png differ diff --git a/public/textures/chipped/end_carved_pumpkin.png b/public/textures/chipped/end_carved_pumpkin.png new file mode 100644 index 00000000..3b53729f Binary files /dev/null and b/public/textures/chipped/end_carved_pumpkin.png differ diff --git a/public/textures/chipped/end_jack_o_lantern.png b/public/textures/chipped/end_jack_o_lantern.png new file mode 100644 index 00000000..aed8aeee Binary files /dev/null and b/public/textures/chipped/end_jack_o_lantern.png differ diff --git a/public/textures/chipped/end_pumpkin.png b/public/textures/chipped/end_pumpkin.png new file mode 100644 index 00000000..423f51bf Binary files /dev/null and b/public/textures/chipped/end_pumpkin.png differ diff --git a/public/textures/chipped/end_pumpkin_purple.png b/public/textures/chipped/end_pumpkin_purple.png new file mode 100644 index 00000000..2cfd38c8 Binary files /dev/null and b/public/textures/chipped/end_pumpkin_purple.png differ diff --git a/public/textures/chipped/end_purple_carved_pumpkin.png b/public/textures/chipped/end_purple_carved_pumpkin.png new file mode 100644 index 00000000..da02d648 Binary files /dev/null and b/public/textures/chipped/end_purple_carved_pumpkin.png differ diff --git a/public/textures/chipped/end_purple_jack_o_lantern.png b/public/textures/chipped/end_purple_jack_o_lantern.png new file mode 100644 index 00000000..e8a67767 Binary files /dev/null and b/public/textures/chipped/end_purple_jack_o_lantern.png differ diff --git a/public/textures/chipped/end_stone_bricks.png b/public/textures/chipped/end_stone_bricks.png new file mode 100644 index 00000000..eb3bd5a7 Binary files /dev/null and b/public/textures/chipped/end_stone_bricks.png differ diff --git a/public/textures/chipped/end_stone_mini_tiles.png b/public/textures/chipped/end_stone_mini_tiles.png new file mode 100644 index 00000000..c68857c1 Binary files /dev/null and b/public/textures/chipped/end_stone_mini_tiles.png differ diff --git a/public/textures/chipped/end_stone_pillar.png b/public/textures/chipped/end_stone_pillar.png new file mode 100644 index 00000000..5a3f1016 Binary files /dev/null and b/public/textures/chipped/end_stone_pillar.png differ diff --git a/public/textures/chipped/end_stone_pillar_top.png b/public/textures/chipped/end_stone_pillar_top.png new file mode 100644 index 00000000..c242e58c Binary files /dev/null and b/public/textures/chipped/end_stone_pillar_top.png differ diff --git a/public/textures/chipped/end_stone_scales.png b/public/textures/chipped/end_stone_scales.png new file mode 100644 index 00000000..f2f76942 Binary files /dev/null and b/public/textures/chipped/end_stone_scales.png differ diff --git a/public/textures/chipped/ender_lantern.png b/public/textures/chipped/ender_lantern.png new file mode 100644 index 00000000..ca100ab3 Binary files /dev/null and b/public/textures/chipped/ender_lantern.png differ diff --git a/public/textures/chipped/endstone_pointed_dripstone.png b/public/textures/chipped/endstone_pointed_dripstone.png new file mode 100644 index 00000000..8f6a1c45 Binary files /dev/null and b/public/textures/chipped/endstone_pointed_dripstone.png differ diff --git a/public/textures/chipped/engraved_amethyst_block.png b/public/textures/chipped/engraved_amethyst_block.png new file mode 100644 index 00000000..f52cd6a4 Binary files /dev/null and b/public/textures/chipped/engraved_amethyst_block.png differ diff --git a/public/textures/chipped/engraved_ancient_debris.png b/public/textures/chipped/engraved_ancient_debris.png new file mode 100644 index 00000000..55c788ae Binary files /dev/null and b/public/textures/chipped/engraved_ancient_debris.png differ diff --git a/public/textures/chipped/engraved_andesite.png b/public/textures/chipped/engraved_andesite.png new file mode 100644 index 00000000..9e409c42 Binary files /dev/null and b/public/textures/chipped/engraved_andesite.png differ diff --git a/public/textures/chipped/engraved_basalt.png b/public/textures/chipped/engraved_basalt.png new file mode 100644 index 00000000..a52915d8 Binary files /dev/null and b/public/textures/chipped/engraved_basalt.png differ diff --git a/public/textures/chipped/engraved_blackstone.png b/public/textures/chipped/engraved_blackstone.png new file mode 100644 index 00000000..da68f978 Binary files /dev/null and b/public/textures/chipped/engraved_blackstone.png differ diff --git a/public/textures/chipped/engraved_blue_ice.png b/public/textures/chipped/engraved_blue_ice.png new file mode 100644 index 00000000..490e637b Binary files /dev/null and b/public/textures/chipped/engraved_blue_ice.png differ diff --git a/public/textures/chipped/engraved_borderless_bricks.png b/public/textures/chipped/engraved_borderless_bricks.png new file mode 100644 index 00000000..e9d3189e Binary files /dev/null and b/public/textures/chipped/engraved_borderless_bricks.png differ diff --git a/public/textures/chipped/engraved_bricks.png b/public/textures/chipped/engraved_bricks.png new file mode 100644 index 00000000..c0fb7f16 Binary files /dev/null and b/public/textures/chipped/engraved_bricks.png differ diff --git a/public/textures/chipped/engraved_calcite.png b/public/textures/chipped/engraved_calcite.png new file mode 100644 index 00000000..42c145d4 Binary files /dev/null and b/public/textures/chipped/engraved_calcite.png differ diff --git a/public/textures/chipped/engraved_clay.png b/public/textures/chipped/engraved_clay.png new file mode 100644 index 00000000..c553a8fd Binary files /dev/null and b/public/textures/chipped/engraved_clay.png differ diff --git a/public/textures/chipped/engraved_coal_block.png b/public/textures/chipped/engraved_coal_block.png new file mode 100644 index 00000000..a41041e1 Binary files /dev/null and b/public/textures/chipped/engraved_coal_block.png differ diff --git a/public/textures/chipped/engraved_cobblestone.png b/public/textures/chipped/engraved_cobblestone.png new file mode 100644 index 00000000..83af515f Binary files /dev/null and b/public/textures/chipped/engraved_cobblestone.png differ diff --git a/public/textures/chipped/engraved_crying_obsidian.png b/public/textures/chipped/engraved_crying_obsidian.png new file mode 100644 index 00000000..c9d2ab7b Binary files /dev/null and b/public/textures/chipped/engraved_crying_obsidian.png differ diff --git a/public/textures/chipped/engraved_dark_prismarine.png b/public/textures/chipped/engraved_dark_prismarine.png new file mode 100644 index 00000000..26ab0253 Binary files /dev/null and b/public/textures/chipped/engraved_dark_prismarine.png differ diff --git a/public/textures/chipped/engraved_deepslate.png b/public/textures/chipped/engraved_deepslate.png new file mode 100644 index 00000000..ade820d3 Binary files /dev/null and b/public/textures/chipped/engraved_deepslate.png differ diff --git a/public/textures/chipped/engraved_diamond_block.png b/public/textures/chipped/engraved_diamond_block.png new file mode 100644 index 00000000..8eac981b Binary files /dev/null and b/public/textures/chipped/engraved_diamond_block.png differ diff --git a/public/textures/chipped/engraved_diorite.png b/public/textures/chipped/engraved_diorite.png new file mode 100644 index 00000000..c0ad6597 Binary files /dev/null and b/public/textures/chipped/engraved_diorite.png differ diff --git a/public/textures/chipped/engraved_dirt.png b/public/textures/chipped/engraved_dirt.png new file mode 100644 index 00000000..7ceff4d5 Binary files /dev/null and b/public/textures/chipped/engraved_dirt.png differ diff --git a/public/textures/chipped/engraved_dripstone_block.png b/public/textures/chipped/engraved_dripstone_block.png new file mode 100644 index 00000000..fd0011cd Binary files /dev/null and b/public/textures/chipped/engraved_dripstone_block.png differ diff --git a/public/textures/chipped/engraved_emerald_block.png b/public/textures/chipped/engraved_emerald_block.png new file mode 100644 index 00000000..0d0f2fd3 Binary files /dev/null and b/public/textures/chipped/engraved_emerald_block.png differ diff --git a/public/textures/chipped/engraved_end_stone.png b/public/textures/chipped/engraved_end_stone.png new file mode 100644 index 00000000..a4a7ae0e Binary files /dev/null and b/public/textures/chipped/engraved_end_stone.png differ diff --git a/public/textures/chipped/engraved_gilded_blackstone.png b/public/textures/chipped/engraved_gilded_blackstone.png new file mode 100644 index 00000000..575c26d8 Binary files /dev/null and b/public/textures/chipped/engraved_gilded_blackstone.png differ diff --git a/public/textures/chipped/engraved_gold_block.png b/public/textures/chipped/engraved_gold_block.png new file mode 100644 index 00000000..ef7270c6 Binary files /dev/null and b/public/textures/chipped/engraved_gold_block.png differ diff --git a/public/textures/chipped/engraved_granite.png b/public/textures/chipped/engraved_granite.png new file mode 100644 index 00000000..fc62605e Binary files /dev/null and b/public/textures/chipped/engraved_granite.png differ diff --git a/public/textures/chipped/engraved_ice.png b/public/textures/chipped/engraved_ice.png new file mode 100644 index 00000000..ed1109fd Binary files /dev/null and b/public/textures/chipped/engraved_ice.png differ diff --git a/public/textures/chipped/engraved_iron_block.png b/public/textures/chipped/engraved_iron_block.png new file mode 100644 index 00000000..04680626 Binary files /dev/null and b/public/textures/chipped/engraved_iron_block.png differ diff --git a/public/textures/chipped/engraved_lapis_block.png b/public/textures/chipped/engraved_lapis_block.png new file mode 100644 index 00000000..66eadc76 Binary files /dev/null and b/public/textures/chipped/engraved_lapis_block.png differ diff --git a/public/textures/chipped/engraved_lodestone.png b/public/textures/chipped/engraved_lodestone.png new file mode 100644 index 00000000..35df0594 Binary files /dev/null and b/public/textures/chipped/engraved_lodestone.png differ diff --git a/public/textures/chipped/engraved_magma_block.png b/public/textures/chipped/engraved_magma_block.png new file mode 100644 index 00000000..488f05ad Binary files /dev/null and b/public/textures/chipped/engraved_magma_block.png differ diff --git a/public/textures/chipped/engraved_mossy_cobblestone.png b/public/textures/chipped/engraved_mossy_cobblestone.png new file mode 100644 index 00000000..18f9f4bc Binary files /dev/null and b/public/textures/chipped/engraved_mossy_cobblestone.png differ diff --git a/public/textures/chipped/engraved_mossy_stone_bricks.png b/public/textures/chipped/engraved_mossy_stone_bricks.png new file mode 100644 index 00000000..09354137 Binary files /dev/null and b/public/textures/chipped/engraved_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/engraved_mud.png b/public/textures/chipped/engraved_mud.png new file mode 100644 index 00000000..2c4b3441 Binary files /dev/null and b/public/textures/chipped/engraved_mud.png differ diff --git a/public/textures/chipped/engraved_mud_bricks.png b/public/textures/chipped/engraved_mud_bricks.png new file mode 100644 index 00000000..06fd6e96 Binary files /dev/null and b/public/textures/chipped/engraved_mud_bricks.png differ diff --git a/public/textures/chipped/engraved_nether_bricks.png b/public/textures/chipped/engraved_nether_bricks.png new file mode 100644 index 00000000..e9e08f2b Binary files /dev/null and b/public/textures/chipped/engraved_nether_bricks.png differ diff --git a/public/textures/chipped/engraved_netherite_block.png b/public/textures/chipped/engraved_netherite_block.png new file mode 100644 index 00000000..611afd77 Binary files /dev/null and b/public/textures/chipped/engraved_netherite_block.png differ diff --git a/public/textures/chipped/engraved_netherrack.png b/public/textures/chipped/engraved_netherrack.png new file mode 100644 index 00000000..bc8c6b90 Binary files /dev/null and b/public/textures/chipped/engraved_netherrack.png differ diff --git a/public/textures/chipped/engraved_obsidian.png b/public/textures/chipped/engraved_obsidian.png new file mode 100644 index 00000000..6898171e Binary files /dev/null and b/public/textures/chipped/engraved_obsidian.png differ diff --git a/public/textures/chipped/engraved_packed_ice.png b/public/textures/chipped/engraved_packed_ice.png new file mode 100644 index 00000000..67b83a5e Binary files /dev/null and b/public/textures/chipped/engraved_packed_ice.png differ diff --git a/public/textures/chipped/engraved_packed_mud.png b/public/textures/chipped/engraved_packed_mud.png new file mode 100644 index 00000000..d7899dd0 Binary files /dev/null and b/public/textures/chipped/engraved_packed_mud.png differ diff --git a/public/textures/chipped/engraved_prismarine.png b/public/textures/chipped/engraved_prismarine.png new file mode 100644 index 00000000..22d752ca Binary files /dev/null and b/public/textures/chipped/engraved_prismarine.png differ diff --git a/public/textures/chipped/engraved_purpur_block.png b/public/textures/chipped/engraved_purpur_block.png new file mode 100644 index 00000000..73d998d0 Binary files /dev/null and b/public/textures/chipped/engraved_purpur_block.png differ diff --git a/public/textures/chipped/engraved_quartz_block.png b/public/textures/chipped/engraved_quartz_block.png new file mode 100644 index 00000000..c5f61408 Binary files /dev/null and b/public/textures/chipped/engraved_quartz_block.png differ diff --git a/public/textures/chipped/engraved_raw_copper_block.png b/public/textures/chipped/engraved_raw_copper_block.png new file mode 100644 index 00000000..7b8f7e71 Binary files /dev/null and b/public/textures/chipped/engraved_raw_copper_block.png differ diff --git a/public/textures/chipped/engraved_raw_gold_block.png b/public/textures/chipped/engraved_raw_gold_block.png new file mode 100644 index 00000000..ff8e8adf Binary files /dev/null and b/public/textures/chipped/engraved_raw_gold_block.png differ diff --git a/public/textures/chipped/engraved_raw_iron_block.png b/public/textures/chipped/engraved_raw_iron_block.png new file mode 100644 index 00000000..1aa72649 Binary files /dev/null and b/public/textures/chipped/engraved_raw_iron_block.png differ diff --git a/public/textures/chipped/engraved_red_nether_bricks.png b/public/textures/chipped/engraved_red_nether_bricks.png new file mode 100644 index 00000000..8bb4d11b Binary files /dev/null and b/public/textures/chipped/engraved_red_nether_bricks.png differ diff --git a/public/textures/chipped/engraved_red_sandstone.png b/public/textures/chipped/engraved_red_sandstone.png new file mode 100644 index 00000000..7a753349 Binary files /dev/null and b/public/textures/chipped/engraved_red_sandstone.png differ diff --git a/public/textures/chipped/engraved_redstone_block.png b/public/textures/chipped/engraved_redstone_block.png new file mode 100644 index 00000000..983d3713 Binary files /dev/null and b/public/textures/chipped/engraved_redstone_block.png differ diff --git a/public/textures/chipped/engraved_sandstone.png b/public/textures/chipped/engraved_sandstone.png new file mode 100644 index 00000000..3e5420a8 Binary files /dev/null and b/public/textures/chipped/engraved_sandstone.png differ diff --git a/public/textures/chipped/engraved_smooth_stone.png b/public/textures/chipped/engraved_smooth_stone.png new file mode 100644 index 00000000..84093d0a Binary files /dev/null and b/public/textures/chipped/engraved_smooth_stone.png differ diff --git a/public/textures/chipped/engraved_snow_block.png b/public/textures/chipped/engraved_snow_block.png new file mode 100644 index 00000000..d5e1382c Binary files /dev/null and b/public/textures/chipped/engraved_snow_block.png differ diff --git a/public/textures/chipped/engraved_stone.png b/public/textures/chipped/engraved_stone.png new file mode 100644 index 00000000..b8244485 Binary files /dev/null and b/public/textures/chipped/engraved_stone.png differ diff --git a/public/textures/chipped/engraved_tuff.png b/public/textures/chipped/engraved_tuff.png new file mode 100644 index 00000000..8a2fa9bb Binary files /dev/null and b/public/textures/chipped/engraved_tuff.png differ diff --git a/public/textures/chipped/engraved_waxed_copper_block.png b/public/textures/chipped/engraved_waxed_copper_block.png new file mode 100644 index 00000000..88fd940d Binary files /dev/null and b/public/textures/chipped/engraved_waxed_copper_block.png differ diff --git a/public/textures/chipped/engraved_waxed_exposed_copper.png b/public/textures/chipped/engraved_waxed_exposed_copper.png new file mode 100644 index 00000000..f5d5874a Binary files /dev/null and b/public/textures/chipped/engraved_waxed_exposed_copper.png differ diff --git a/public/textures/chipped/engraved_waxed_oxidized_copper.png b/public/textures/chipped/engraved_waxed_oxidized_copper.png new file mode 100644 index 00000000..41fdb0a5 Binary files /dev/null and b/public/textures/chipped/engraved_waxed_oxidized_copper.png differ diff --git a/public/textures/chipped/engraved_waxed_weathered_copper.png b/public/textures/chipped/engraved_waxed_weathered_copper.png new file mode 100644 index 00000000..9d94744a Binary files /dev/null and b/public/textures/chipped/engraved_waxed_weathered_copper.png differ diff --git a/public/textures/chipped/eroded_amethyst_block.png b/public/textures/chipped/eroded_amethyst_block.png new file mode 100644 index 00000000..a4c6df36 Binary files /dev/null and b/public/textures/chipped/eroded_amethyst_block.png differ diff --git a/public/textures/chipped/eroded_ancient_debris.png b/public/textures/chipped/eroded_ancient_debris.png new file mode 100644 index 00000000..075489ce Binary files /dev/null and b/public/textures/chipped/eroded_ancient_debris.png differ diff --git a/public/textures/chipped/eroded_andesite.png b/public/textures/chipped/eroded_andesite.png new file mode 100644 index 00000000..3a482e02 Binary files /dev/null and b/public/textures/chipped/eroded_andesite.png differ diff --git a/public/textures/chipped/eroded_basalt.png b/public/textures/chipped/eroded_basalt.png new file mode 100644 index 00000000..63b032de Binary files /dev/null and b/public/textures/chipped/eroded_basalt.png differ diff --git a/public/textures/chipped/eroded_blackstone.png b/public/textures/chipped/eroded_blackstone.png new file mode 100644 index 00000000..60b5a52f Binary files /dev/null and b/public/textures/chipped/eroded_blackstone.png differ diff --git a/public/textures/chipped/eroded_blue_ice.png b/public/textures/chipped/eroded_blue_ice.png new file mode 100644 index 00000000..6d03152a Binary files /dev/null and b/public/textures/chipped/eroded_blue_ice.png differ diff --git a/public/textures/chipped/eroded_borderless_bricks.png b/public/textures/chipped/eroded_borderless_bricks.png new file mode 100644 index 00000000..fe3f67be Binary files /dev/null and b/public/textures/chipped/eroded_borderless_bricks.png differ diff --git a/public/textures/chipped/eroded_bricks.png b/public/textures/chipped/eroded_bricks.png new file mode 100644 index 00000000..fe3f67be Binary files /dev/null and b/public/textures/chipped/eroded_bricks.png differ diff --git a/public/textures/chipped/eroded_calcite.png b/public/textures/chipped/eroded_calcite.png new file mode 100644 index 00000000..2de00f70 Binary files /dev/null and b/public/textures/chipped/eroded_calcite.png differ diff --git a/public/textures/chipped/eroded_coal_block.png b/public/textures/chipped/eroded_coal_block.png new file mode 100644 index 00000000..91613d27 Binary files /dev/null and b/public/textures/chipped/eroded_coal_block.png differ diff --git a/public/textures/chipped/eroded_cobblestone.png b/public/textures/chipped/eroded_cobblestone.png new file mode 100644 index 00000000..69900d0c Binary files /dev/null and b/public/textures/chipped/eroded_cobblestone.png differ diff --git a/public/textures/chipped/eroded_crying_obsidian.png b/public/textures/chipped/eroded_crying_obsidian.png new file mode 100644 index 00000000..11da2807 Binary files /dev/null and b/public/textures/chipped/eroded_crying_obsidian.png differ diff --git a/public/textures/chipped/eroded_dark_prismarine.png b/public/textures/chipped/eroded_dark_prismarine.png new file mode 100644 index 00000000..62121fff Binary files /dev/null and b/public/textures/chipped/eroded_dark_prismarine.png differ diff --git a/public/textures/chipped/eroded_deepslate.png b/public/textures/chipped/eroded_deepslate.png new file mode 100644 index 00000000..f4bae36f Binary files /dev/null and b/public/textures/chipped/eroded_deepslate.png differ diff --git a/public/textures/chipped/eroded_diorite.png b/public/textures/chipped/eroded_diorite.png new file mode 100644 index 00000000..ab7abdee Binary files /dev/null and b/public/textures/chipped/eroded_diorite.png differ diff --git a/public/textures/chipped/eroded_dirt.png b/public/textures/chipped/eroded_dirt.png new file mode 100644 index 00000000..79bb5425 Binary files /dev/null and b/public/textures/chipped/eroded_dirt.png differ diff --git a/public/textures/chipped/eroded_dripstone_block.png b/public/textures/chipped/eroded_dripstone_block.png new file mode 100644 index 00000000..002f0ef2 Binary files /dev/null and b/public/textures/chipped/eroded_dripstone_block.png differ diff --git a/public/textures/chipped/eroded_end_stone.png b/public/textures/chipped/eroded_end_stone.png new file mode 100644 index 00000000..cb4da6f5 Binary files /dev/null and b/public/textures/chipped/eroded_end_stone.png differ diff --git a/public/textures/chipped/eroded_gilded_blackstone.png b/public/textures/chipped/eroded_gilded_blackstone.png new file mode 100644 index 00000000..26fd826f Binary files /dev/null and b/public/textures/chipped/eroded_gilded_blackstone.png differ diff --git a/public/textures/chipped/eroded_granite.png b/public/textures/chipped/eroded_granite.png new file mode 100644 index 00000000..cc062e9f Binary files /dev/null and b/public/textures/chipped/eroded_granite.png differ diff --git a/public/textures/chipped/eroded_ice.png b/public/textures/chipped/eroded_ice.png new file mode 100644 index 00000000..a103c6ec Binary files /dev/null and b/public/textures/chipped/eroded_ice.png differ diff --git a/public/textures/chipped/eroded_lapis_block.png b/public/textures/chipped/eroded_lapis_block.png new file mode 100644 index 00000000..25b7a722 Binary files /dev/null and b/public/textures/chipped/eroded_lapis_block.png differ diff --git a/public/textures/chipped/eroded_lodestone.png b/public/textures/chipped/eroded_lodestone.png new file mode 100644 index 00000000..a3c18c66 Binary files /dev/null and b/public/textures/chipped/eroded_lodestone.png differ diff --git a/public/textures/chipped/eroded_magma_block.png b/public/textures/chipped/eroded_magma_block.png new file mode 100644 index 00000000..6626b7c7 Binary files /dev/null and b/public/textures/chipped/eroded_magma_block.png differ diff --git a/public/textures/chipped/eroded_mossy_cobblestone.png b/public/textures/chipped/eroded_mossy_cobblestone.png new file mode 100644 index 00000000..ee69cb40 Binary files /dev/null and b/public/textures/chipped/eroded_mossy_cobblestone.png differ diff --git a/public/textures/chipped/eroded_mossy_stone_bricks.png b/public/textures/chipped/eroded_mossy_stone_bricks.png new file mode 100644 index 00000000..48a5512c Binary files /dev/null and b/public/textures/chipped/eroded_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/eroded_nether_bricks.png b/public/textures/chipped/eroded_nether_bricks.png new file mode 100644 index 00000000..95c79373 Binary files /dev/null and b/public/textures/chipped/eroded_nether_bricks.png differ diff --git a/public/textures/chipped/eroded_netherrack.png b/public/textures/chipped/eroded_netherrack.png new file mode 100644 index 00000000..3769ba0b Binary files /dev/null and b/public/textures/chipped/eroded_netherrack.png differ diff --git a/public/textures/chipped/eroded_obsidian.png b/public/textures/chipped/eroded_obsidian.png new file mode 100644 index 00000000..b35d580b Binary files /dev/null and b/public/textures/chipped/eroded_obsidian.png differ diff --git a/public/textures/chipped/eroded_packed_ice.png b/public/textures/chipped/eroded_packed_ice.png new file mode 100644 index 00000000..62669672 Binary files /dev/null and b/public/textures/chipped/eroded_packed_ice.png differ diff --git a/public/textures/chipped/eroded_prismarine.png b/public/textures/chipped/eroded_prismarine.png new file mode 100644 index 00000000..46010ee9 Binary files /dev/null and b/public/textures/chipped/eroded_prismarine.png differ diff --git a/public/textures/chipped/eroded_purpur_block.png b/public/textures/chipped/eroded_purpur_block.png new file mode 100644 index 00000000..89dc5ee8 Binary files /dev/null and b/public/textures/chipped/eroded_purpur_block.png differ diff --git a/public/textures/chipped/eroded_quartz_block.png b/public/textures/chipped/eroded_quartz_block.png new file mode 100644 index 00000000..c4d7b63a Binary files /dev/null and b/public/textures/chipped/eroded_quartz_block.png differ diff --git a/public/textures/chipped/eroded_raw_copper_block.png b/public/textures/chipped/eroded_raw_copper_block.png new file mode 100644 index 00000000..cc355992 Binary files /dev/null and b/public/textures/chipped/eroded_raw_copper_block.png differ diff --git a/public/textures/chipped/eroded_raw_gold_block.png b/public/textures/chipped/eroded_raw_gold_block.png new file mode 100644 index 00000000..dacaa7fe Binary files /dev/null and b/public/textures/chipped/eroded_raw_gold_block.png differ diff --git a/public/textures/chipped/eroded_raw_iron_block.png b/public/textures/chipped/eroded_raw_iron_block.png new file mode 100644 index 00000000..00005b37 Binary files /dev/null and b/public/textures/chipped/eroded_raw_iron_block.png differ diff --git a/public/textures/chipped/eroded_red_nether_bricks.png b/public/textures/chipped/eroded_red_nether_bricks.png new file mode 100644 index 00000000..fd11ca3b Binary files /dev/null and b/public/textures/chipped/eroded_red_nether_bricks.png differ diff --git a/public/textures/chipped/eroded_red_sandstone.png b/public/textures/chipped/eroded_red_sandstone.png new file mode 100644 index 00000000..ba09b0a8 Binary files /dev/null and b/public/textures/chipped/eroded_red_sandstone.png differ diff --git a/public/textures/chipped/eroded_redstone_block.png b/public/textures/chipped/eroded_redstone_block.png new file mode 100644 index 00000000..5204593c Binary files /dev/null and b/public/textures/chipped/eroded_redstone_block.png differ diff --git a/public/textures/chipped/eroded_sandstone.png b/public/textures/chipped/eroded_sandstone.png new file mode 100644 index 00000000..8774e0bd Binary files /dev/null and b/public/textures/chipped/eroded_sandstone.png differ diff --git a/public/textures/chipped/eroded_smooth_stone.png b/public/textures/chipped/eroded_smooth_stone.png new file mode 100644 index 00000000..41fc4301 Binary files /dev/null and b/public/textures/chipped/eroded_smooth_stone.png differ diff --git a/public/textures/chipped/eroded_snow_block.png b/public/textures/chipped/eroded_snow_block.png new file mode 100644 index 00000000..109de336 Binary files /dev/null and b/public/textures/chipped/eroded_snow_block.png differ diff --git a/public/textures/chipped/eroded_tuff.png b/public/textures/chipped/eroded_tuff.png new file mode 100644 index 00000000..9cf11ac6 Binary files /dev/null and b/public/textures/chipped/eroded_tuff.png differ diff --git a/public/textures/chipped/erratic_nether_wart_block.png b/public/textures/chipped/erratic_nether_wart_block.png new file mode 100644 index 00000000..9c6a0ef9 Binary files /dev/null and b/public/textures/chipped/erratic_nether_wart_block.png differ diff --git a/public/textures/chipped/erratic_warped_wart_block.png b/public/textures/chipped/erratic_warped_wart_block.png new file mode 100644 index 00000000..7a4c724d Binary files /dev/null and b/public/textures/chipped/erratic_warped_wart_block.png differ diff --git a/public/textures/chipped/etched_amethyst_block_bricks.png b/public/textures/chipped/etched_amethyst_block_bricks.png new file mode 100644 index 00000000..f768a43a Binary files /dev/null and b/public/textures/chipped/etched_amethyst_block_bricks.png differ diff --git a/public/textures/chipped/etched_ancient_debris_bricks.png b/public/textures/chipped/etched_ancient_debris_bricks.png new file mode 100644 index 00000000..b08a2b95 Binary files /dev/null and b/public/textures/chipped/etched_ancient_debris_bricks.png differ diff --git a/public/textures/chipped/etched_andesite_bricks.png b/public/textures/chipped/etched_andesite_bricks.png new file mode 100644 index 00000000..b6a33e49 Binary files /dev/null and b/public/textures/chipped/etched_andesite_bricks.png differ diff --git a/public/textures/chipped/etched_basalt_bricks.png b/public/textures/chipped/etched_basalt_bricks.png new file mode 100644 index 00000000..b55e6c72 Binary files /dev/null and b/public/textures/chipped/etched_basalt_bricks.png differ diff --git a/public/textures/chipped/etched_blackstone_bricks.png b/public/textures/chipped/etched_blackstone_bricks.png new file mode 100644 index 00000000..298fe67c Binary files /dev/null and b/public/textures/chipped/etched_blackstone_bricks.png differ diff --git a/public/textures/chipped/etched_blue_ice_bricks.png b/public/textures/chipped/etched_blue_ice_bricks.png new file mode 100644 index 00000000..85f8fd6a Binary files /dev/null and b/public/textures/chipped/etched_blue_ice_bricks.png differ diff --git a/public/textures/chipped/etched_borderless_bricks_bricks.png b/public/textures/chipped/etched_borderless_bricks_bricks.png new file mode 100644 index 00000000..e0c71472 Binary files /dev/null and b/public/textures/chipped/etched_borderless_bricks_bricks.png differ diff --git a/public/textures/chipped/etched_bricks_bricks.png b/public/textures/chipped/etched_bricks_bricks.png new file mode 100644 index 00000000..158501fa Binary files /dev/null and b/public/textures/chipped/etched_bricks_bricks.png differ diff --git a/public/textures/chipped/etched_calcite_bricks.png b/public/textures/chipped/etched_calcite_bricks.png new file mode 100644 index 00000000..d9e25099 Binary files /dev/null and b/public/textures/chipped/etched_calcite_bricks.png differ diff --git a/public/textures/chipped/etched_clay_bricks.png b/public/textures/chipped/etched_clay_bricks.png new file mode 100644 index 00000000..db52b6c6 Binary files /dev/null and b/public/textures/chipped/etched_clay_bricks.png differ diff --git a/public/textures/chipped/etched_coal_block_bricks.png b/public/textures/chipped/etched_coal_block_bricks.png new file mode 100644 index 00000000..1c7ac184 Binary files /dev/null and b/public/textures/chipped/etched_coal_block_bricks.png differ diff --git a/public/textures/chipped/etched_cobblestone_bricks.png b/public/textures/chipped/etched_cobblestone_bricks.png new file mode 100644 index 00000000..f5edb430 Binary files /dev/null and b/public/textures/chipped/etched_cobblestone_bricks.png differ diff --git a/public/textures/chipped/etched_crying_obsidian_bricks.png b/public/textures/chipped/etched_crying_obsidian_bricks.png new file mode 100644 index 00000000..98151b65 Binary files /dev/null and b/public/textures/chipped/etched_crying_obsidian_bricks.png differ diff --git a/public/textures/chipped/etched_dark_prismarine_bricks.png b/public/textures/chipped/etched_dark_prismarine_bricks.png new file mode 100644 index 00000000..bafe9b66 Binary files /dev/null and b/public/textures/chipped/etched_dark_prismarine_bricks.png differ diff --git a/public/textures/chipped/etched_deepslate_bricks.png b/public/textures/chipped/etched_deepslate_bricks.png new file mode 100644 index 00000000..a579e5e4 Binary files /dev/null and b/public/textures/chipped/etched_deepslate_bricks.png differ diff --git a/public/textures/chipped/etched_diorite_bricks.png b/public/textures/chipped/etched_diorite_bricks.png new file mode 100644 index 00000000..7579e0af Binary files /dev/null and b/public/textures/chipped/etched_diorite_bricks.png differ diff --git a/public/textures/chipped/etched_dirt_bricks.png b/public/textures/chipped/etched_dirt_bricks.png new file mode 100644 index 00000000..43515493 Binary files /dev/null and b/public/textures/chipped/etched_dirt_bricks.png differ diff --git a/public/textures/chipped/etched_dripstone_block_bricks.png b/public/textures/chipped/etched_dripstone_block_bricks.png new file mode 100644 index 00000000..24d0ab11 Binary files /dev/null and b/public/textures/chipped/etched_dripstone_block_bricks.png differ diff --git a/public/textures/chipped/etched_end_stone_bricks.png b/public/textures/chipped/etched_end_stone_bricks.png new file mode 100644 index 00000000..8e53ac48 Binary files /dev/null and b/public/textures/chipped/etched_end_stone_bricks.png differ diff --git a/public/textures/chipped/etched_gilded_blackstone_bricks.png b/public/textures/chipped/etched_gilded_blackstone_bricks.png new file mode 100644 index 00000000..720d33d4 Binary files /dev/null and b/public/textures/chipped/etched_gilded_blackstone_bricks.png differ diff --git a/public/textures/chipped/etched_granite_bricks.png b/public/textures/chipped/etched_granite_bricks.png new file mode 100644 index 00000000..a78ef7cc Binary files /dev/null and b/public/textures/chipped/etched_granite_bricks.png differ diff --git a/public/textures/chipped/etched_ice_bricks.png b/public/textures/chipped/etched_ice_bricks.png new file mode 100644 index 00000000..6bd2f4a5 Binary files /dev/null and b/public/textures/chipped/etched_ice_bricks.png differ diff --git a/public/textures/chipped/etched_lapis_block_bricks.png b/public/textures/chipped/etched_lapis_block_bricks.png new file mode 100644 index 00000000..d606e468 Binary files /dev/null and b/public/textures/chipped/etched_lapis_block_bricks.png differ diff --git a/public/textures/chipped/etched_lodestone_bricks.png b/public/textures/chipped/etched_lodestone_bricks.png new file mode 100644 index 00000000..c496fd95 Binary files /dev/null and b/public/textures/chipped/etched_lodestone_bricks.png differ diff --git a/public/textures/chipped/etched_magma_block_bricks.png b/public/textures/chipped/etched_magma_block_bricks.png new file mode 100644 index 00000000..d6b87c6e Binary files /dev/null and b/public/textures/chipped/etched_magma_block_bricks.png differ diff --git a/public/textures/chipped/etched_mossy_cobblestone_bricks.png b/public/textures/chipped/etched_mossy_cobblestone_bricks.png new file mode 100644 index 00000000..e0a1f23b Binary files /dev/null and b/public/textures/chipped/etched_mossy_cobblestone_bricks.png differ diff --git a/public/textures/chipped/etched_mossy_stone_bricks_bricks.png b/public/textures/chipped/etched_mossy_stone_bricks_bricks.png new file mode 100644 index 00000000..bdba1eab Binary files /dev/null and b/public/textures/chipped/etched_mossy_stone_bricks_bricks.png differ diff --git a/public/textures/chipped/etched_mud_bricks.png b/public/textures/chipped/etched_mud_bricks.png new file mode 100644 index 00000000..a4de33a7 Binary files /dev/null and b/public/textures/chipped/etched_mud_bricks.png differ diff --git a/public/textures/chipped/etched_mud_bricks_bricks.png b/public/textures/chipped/etched_mud_bricks_bricks.png new file mode 100644 index 00000000..c0d66fb2 Binary files /dev/null and b/public/textures/chipped/etched_mud_bricks_bricks.png differ diff --git a/public/textures/chipped/etched_nether_bricks_bricks.png b/public/textures/chipped/etched_nether_bricks_bricks.png new file mode 100644 index 00000000..57a439d3 Binary files /dev/null and b/public/textures/chipped/etched_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/etched_netherrack_bricks.png b/public/textures/chipped/etched_netherrack_bricks.png new file mode 100644 index 00000000..6a3b2388 Binary files /dev/null and b/public/textures/chipped/etched_netherrack_bricks.png differ diff --git a/public/textures/chipped/etched_obsidian_bricks.png b/public/textures/chipped/etched_obsidian_bricks.png new file mode 100644 index 00000000..c723718c Binary files /dev/null and b/public/textures/chipped/etched_obsidian_bricks.png differ diff --git a/public/textures/chipped/etched_packed_ice_bricks.png b/public/textures/chipped/etched_packed_ice_bricks.png new file mode 100644 index 00000000..c27b509a Binary files /dev/null and b/public/textures/chipped/etched_packed_ice_bricks.png differ diff --git a/public/textures/chipped/etched_packed_mud_bricks.png b/public/textures/chipped/etched_packed_mud_bricks.png new file mode 100644 index 00000000..124a0717 Binary files /dev/null and b/public/textures/chipped/etched_packed_mud_bricks.png differ diff --git a/public/textures/chipped/etched_prismarine_bricks.png b/public/textures/chipped/etched_prismarine_bricks.png new file mode 100644 index 00000000..6a1db7d8 Binary files /dev/null and b/public/textures/chipped/etched_prismarine_bricks.png differ diff --git a/public/textures/chipped/etched_purpur_block_bricks.png b/public/textures/chipped/etched_purpur_block_bricks.png new file mode 100644 index 00000000..215f7d14 Binary files /dev/null and b/public/textures/chipped/etched_purpur_block_bricks.png differ diff --git a/public/textures/chipped/etched_quartz_block_bricks.png b/public/textures/chipped/etched_quartz_block_bricks.png new file mode 100644 index 00000000..6d383f97 Binary files /dev/null and b/public/textures/chipped/etched_quartz_block_bricks.png differ diff --git a/public/textures/chipped/etched_raw_copper_block_bricks.png b/public/textures/chipped/etched_raw_copper_block_bricks.png new file mode 100644 index 00000000..78f83288 Binary files /dev/null and b/public/textures/chipped/etched_raw_copper_block_bricks.png differ diff --git a/public/textures/chipped/etched_raw_gold_block_bricks.png b/public/textures/chipped/etched_raw_gold_block_bricks.png new file mode 100644 index 00000000..5e517a37 Binary files /dev/null and b/public/textures/chipped/etched_raw_gold_block_bricks.png differ diff --git a/public/textures/chipped/etched_raw_iron_block_bricks.png b/public/textures/chipped/etched_raw_iron_block_bricks.png new file mode 100644 index 00000000..62af944a Binary files /dev/null and b/public/textures/chipped/etched_raw_iron_block_bricks.png differ diff --git a/public/textures/chipped/etched_red_nether_bricks_bricks.png b/public/textures/chipped/etched_red_nether_bricks_bricks.png new file mode 100644 index 00000000..87fe0d37 Binary files /dev/null and b/public/textures/chipped/etched_red_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/etched_red_sandstone_bricks.png b/public/textures/chipped/etched_red_sandstone_bricks.png new file mode 100644 index 00000000..e12568ee Binary files /dev/null and b/public/textures/chipped/etched_red_sandstone_bricks.png differ diff --git a/public/textures/chipped/etched_redstone_block_bricks.png b/public/textures/chipped/etched_redstone_block_bricks.png new file mode 100644 index 00000000..79544516 Binary files /dev/null and b/public/textures/chipped/etched_redstone_block_bricks.png differ diff --git a/public/textures/chipped/etched_sandstone_bricks.png b/public/textures/chipped/etched_sandstone_bricks.png new file mode 100644 index 00000000..384f100c Binary files /dev/null and b/public/textures/chipped/etched_sandstone_bricks.png differ diff --git a/public/textures/chipped/etched_smooth_stone_bricks.png b/public/textures/chipped/etched_smooth_stone_bricks.png new file mode 100644 index 00000000..a405923d Binary files /dev/null and b/public/textures/chipped/etched_smooth_stone_bricks.png differ diff --git a/public/textures/chipped/etched_snow_block_bricks.png b/public/textures/chipped/etched_snow_block_bricks.png new file mode 100644 index 00000000..2a6dfc98 Binary files /dev/null and b/public/textures/chipped/etched_snow_block_bricks.png differ diff --git a/public/textures/chipped/etched_stone_bricks.png b/public/textures/chipped/etched_stone_bricks.png new file mode 100644 index 00000000..1956c99c Binary files /dev/null and b/public/textures/chipped/etched_stone_bricks.png differ diff --git a/public/textures/chipped/etched_tuff_bricks.png b/public/textures/chipped/etched_tuff_bricks.png new file mode 100644 index 00000000..3947a37b Binary files /dev/null and b/public/textures/chipped/etched_tuff_bricks.png differ diff --git a/public/textures/chipped/exposed_ochre_froglight.png b/public/textures/chipped/exposed_ochre_froglight.png new file mode 100644 index 00000000..795c37fe Binary files /dev/null and b/public/textures/chipped/exposed_ochre_froglight.png differ diff --git a/public/textures/chipped/exposed_pearlescent_froglight.png b/public/textures/chipped/exposed_pearlescent_froglight.png new file mode 100644 index 00000000..000273e9 Binary files /dev/null and b/public/textures/chipped/exposed_pearlescent_froglight.png differ diff --git a/public/textures/chipped/exposed_verdant_froglight.png b/public/textures/chipped/exposed_verdant_froglight.png new file mode 100644 index 00000000..f4518dec Binary files /dev/null and b/public/textures/chipped/exposed_verdant_froglight.png differ diff --git a/public/textures/chipped/eye_mud.png b/public/textures/chipped/eye_mud.png new file mode 100644 index 00000000..32796e15 Binary files /dev/null and b/public/textures/chipped/eye_mud.png differ diff --git a/public/textures/chipped/eye_mud_bricks.png b/public/textures/chipped/eye_mud_bricks.png new file mode 100644 index 00000000..49d24eda Binary files /dev/null and b/public/textures/chipped/eye_mud_bricks.png differ diff --git a/public/textures/chipped/eye_packed_mud.png b/public/textures/chipped/eye_packed_mud.png new file mode 100644 index 00000000..dea1e532 Binary files /dev/null and b/public/textures/chipped/eye_packed_mud.png differ diff --git a/public/textures/chipped/eyed_nether_wart_block.png b/public/textures/chipped/eyed_nether_wart_block.png new file mode 100644 index 00000000..be037285 Binary files /dev/null and b/public/textures/chipped/eyed_nether_wart_block.png differ diff --git a/public/textures/chipped/eyed_warped_wart_block.png b/public/textures/chipped/eyed_warped_wart_block.png new file mode 100644 index 00000000..0aaabf8a Binary files /dev/null and b/public/textures/chipped/eyed_warped_wart_block.png differ diff --git a/public/textures/chipped/f_sign_stripped_acacia_log.png b/public/textures/chipped/f_sign_stripped_acacia_log.png new file mode 100644 index 00000000..74e25814 Binary files /dev/null and b/public/textures/chipped/f_sign_stripped_acacia_log.png differ diff --git a/public/textures/chipped/f_sign_stripped_birch_log.png b/public/textures/chipped/f_sign_stripped_birch_log.png new file mode 100644 index 00000000..b7c788c9 Binary files /dev/null and b/public/textures/chipped/f_sign_stripped_birch_log.png differ diff --git a/public/textures/chipped/f_sign_stripped_cherry_log.png b/public/textures/chipped/f_sign_stripped_cherry_log.png new file mode 100644 index 00000000..ea99ffa4 Binary files /dev/null and b/public/textures/chipped/f_sign_stripped_cherry_log.png differ diff --git a/public/textures/chipped/f_sign_stripped_crimson_stem.png b/public/textures/chipped/f_sign_stripped_crimson_stem.png new file mode 100644 index 00000000..47a4a10f Binary files /dev/null and b/public/textures/chipped/f_sign_stripped_crimson_stem.png differ diff --git a/public/textures/chipped/f_sign_stripped_dark_oak_log.png b/public/textures/chipped/f_sign_stripped_dark_oak_log.png new file mode 100644 index 00000000..83a895a3 Binary files /dev/null and b/public/textures/chipped/f_sign_stripped_dark_oak_log.png differ diff --git a/public/textures/chipped/f_sign_stripped_jungle_log.png b/public/textures/chipped/f_sign_stripped_jungle_log.png new file mode 100644 index 00000000..1a3896de Binary files /dev/null and b/public/textures/chipped/f_sign_stripped_jungle_log.png differ diff --git a/public/textures/chipped/f_sign_stripped_mangrove_log.png b/public/textures/chipped/f_sign_stripped_mangrove_log.png new file mode 100644 index 00000000..51966114 Binary files /dev/null and b/public/textures/chipped/f_sign_stripped_mangrove_log.png differ diff --git a/public/textures/chipped/f_sign_stripped_oak_log.png b/public/textures/chipped/f_sign_stripped_oak_log.png new file mode 100644 index 00000000..a096ad45 Binary files /dev/null and b/public/textures/chipped/f_sign_stripped_oak_log.png differ diff --git a/public/textures/chipped/f_sign_stripped_spruce_log.png b/public/textures/chipped/f_sign_stripped_spruce_log.png new file mode 100644 index 00000000..ac8eab34 Binary files /dev/null and b/public/textures/chipped/f_sign_stripped_spruce_log.png differ diff --git a/public/textures/chipped/f_sign_stripped_warped_stem.png b/public/textures/chipped/f_sign_stripped_warped_stem.png new file mode 100644 index 00000000..84789872 Binary files /dev/null and b/public/textures/chipped/f_sign_stripped_warped_stem.png differ diff --git a/public/textures/chipped/faded_soul_sand.png b/public/textures/chipped/faded_soul_sand.png new file mode 100644 index 00000000..81ec6047 Binary files /dev/null and b/public/textures/chipped/faded_soul_sand.png differ diff --git a/public/textures/chipped/fancy_acacia_trapdoor.png b/public/textures/chipped/fancy_acacia_trapdoor.png new file mode 100644 index 00000000..256437ed Binary files /dev/null and b/public/textures/chipped/fancy_acacia_trapdoor.png differ diff --git a/public/textures/chipped/fancy_bamboo_trapdoor.png b/public/textures/chipped/fancy_bamboo_trapdoor.png new file mode 100644 index 00000000..72b47c32 Binary files /dev/null and b/public/textures/chipped/fancy_bamboo_trapdoor.png differ diff --git a/public/textures/chipped/fancy_birch_trapdoor.png b/public/textures/chipped/fancy_birch_trapdoor.png new file mode 100644 index 00000000..e9656ee1 Binary files /dev/null and b/public/textures/chipped/fancy_birch_trapdoor.png differ diff --git a/public/textures/chipped/fancy_black_stained_glass.png b/public/textures/chipped/fancy_black_stained_glass.png new file mode 100644 index 00000000..8e8ff733 Binary files /dev/null and b/public/textures/chipped/fancy_black_stained_glass.png differ diff --git a/public/textures/chipped/fancy_black_stained_glass_pane.png b/public/textures/chipped/fancy_black_stained_glass_pane.png new file mode 100644 index 00000000..491b6d3d Binary files /dev/null and b/public/textures/chipped/fancy_black_stained_glass_pane.png differ diff --git a/public/textures/chipped/fancy_blue_stained_glass.png b/public/textures/chipped/fancy_blue_stained_glass.png new file mode 100644 index 00000000..caafb06d Binary files /dev/null and b/public/textures/chipped/fancy_blue_stained_glass.png differ diff --git a/public/textures/chipped/fancy_blue_stained_glass_pane.png b/public/textures/chipped/fancy_blue_stained_glass_pane.png new file mode 100644 index 00000000..b17dbbae Binary files /dev/null and b/public/textures/chipped/fancy_blue_stained_glass_pane.png differ diff --git a/public/textures/chipped/fancy_brown_stained_glass.png b/public/textures/chipped/fancy_brown_stained_glass.png new file mode 100644 index 00000000..1f2d1873 Binary files /dev/null and b/public/textures/chipped/fancy_brown_stained_glass.png differ diff --git a/public/textures/chipped/fancy_brown_stained_glass_pane.png b/public/textures/chipped/fancy_brown_stained_glass_pane.png new file mode 100644 index 00000000..f51ae785 Binary files /dev/null and b/public/textures/chipped/fancy_brown_stained_glass_pane.png differ diff --git a/public/textures/chipped/fancy_cherry_trapdoor.png b/public/textures/chipped/fancy_cherry_trapdoor.png new file mode 100644 index 00000000..c0616b7d Binary files /dev/null and b/public/textures/chipped/fancy_cherry_trapdoor.png differ diff --git a/public/textures/chipped/fancy_chiseled_mud.png b/public/textures/chipped/fancy_chiseled_mud.png new file mode 100644 index 00000000..431f0430 Binary files /dev/null and b/public/textures/chipped/fancy_chiseled_mud.png differ diff --git a/public/textures/chipped/fancy_chiseled_mud_bricks.png b/public/textures/chipped/fancy_chiseled_mud_bricks.png new file mode 100644 index 00000000..e31a9bef Binary files /dev/null and b/public/textures/chipped/fancy_chiseled_mud_bricks.png differ diff --git a/public/textures/chipped/fancy_chiseled_packed_mud.png b/public/textures/chipped/fancy_chiseled_packed_mud.png new file mode 100644 index 00000000..91768744 Binary files /dev/null and b/public/textures/chipped/fancy_chiseled_packed_mud.png differ diff --git a/public/textures/chipped/fancy_crimson_trapdoor.png b/public/textures/chipped/fancy_crimson_trapdoor.png new file mode 100644 index 00000000..8d29c410 Binary files /dev/null and b/public/textures/chipped/fancy_crimson_trapdoor.png differ diff --git a/public/textures/chipped/fancy_cyan_stained_glass.png b/public/textures/chipped/fancy_cyan_stained_glass.png new file mode 100644 index 00000000..7179ab75 Binary files /dev/null and b/public/textures/chipped/fancy_cyan_stained_glass.png differ diff --git a/public/textures/chipped/fancy_cyan_stained_glass_pane.png b/public/textures/chipped/fancy_cyan_stained_glass_pane.png new file mode 100644 index 00000000..02c6d97e Binary files /dev/null and b/public/textures/chipped/fancy_cyan_stained_glass_pane.png differ diff --git a/public/textures/chipped/fancy_dark_oak_trapdoor.png b/public/textures/chipped/fancy_dark_oak_trapdoor.png new file mode 100644 index 00000000..8c8339b3 Binary files /dev/null and b/public/textures/chipped/fancy_dark_oak_trapdoor.png differ diff --git a/public/textures/chipped/fancy_glowstone_lantern.png b/public/textures/chipped/fancy_glowstone_lantern.png new file mode 100644 index 00000000..b81ed477 Binary files /dev/null and b/public/textures/chipped/fancy_glowstone_lantern.png differ diff --git a/public/textures/chipped/fancy_gray_stained_glass.png b/public/textures/chipped/fancy_gray_stained_glass.png new file mode 100644 index 00000000..66840aa9 Binary files /dev/null and b/public/textures/chipped/fancy_gray_stained_glass.png differ diff --git a/public/textures/chipped/fancy_gray_stained_glass_pane.png b/public/textures/chipped/fancy_gray_stained_glass_pane.png new file mode 100644 index 00000000..ae614738 Binary files /dev/null and b/public/textures/chipped/fancy_gray_stained_glass_pane.png differ diff --git a/public/textures/chipped/fancy_green_stained_glass.png b/public/textures/chipped/fancy_green_stained_glass.png new file mode 100644 index 00000000..42864636 Binary files /dev/null and b/public/textures/chipped/fancy_green_stained_glass.png differ diff --git a/public/textures/chipped/fancy_green_stained_glass_pane.png b/public/textures/chipped/fancy_green_stained_glass_pane.png new file mode 100644 index 00000000..45a5f89c Binary files /dev/null and b/public/textures/chipped/fancy_green_stained_glass_pane.png differ diff --git a/public/textures/chipped/fancy_leaded_glass.png b/public/textures/chipped/fancy_leaded_glass.png new file mode 100644 index 00000000..5ec34957 Binary files /dev/null and b/public/textures/chipped/fancy_leaded_glass.png differ diff --git a/public/textures/chipped/fancy_leaded_glass_pane.png b/public/textures/chipped/fancy_leaded_glass_pane.png new file mode 100644 index 00000000..8d69f51d Binary files /dev/null and b/public/textures/chipped/fancy_leaded_glass_pane.png differ diff --git a/public/textures/chipped/fancy_light_blue_stained_glass.png b/public/textures/chipped/fancy_light_blue_stained_glass.png new file mode 100644 index 00000000..55c2df7f Binary files /dev/null and b/public/textures/chipped/fancy_light_blue_stained_glass.png differ diff --git a/public/textures/chipped/fancy_light_blue_stained_glass_pane.png b/public/textures/chipped/fancy_light_blue_stained_glass_pane.png new file mode 100644 index 00000000..f3c5ed28 Binary files /dev/null and b/public/textures/chipped/fancy_light_blue_stained_glass_pane.png differ diff --git a/public/textures/chipped/fancy_light_gray_stained_glass.png b/public/textures/chipped/fancy_light_gray_stained_glass.png new file mode 100644 index 00000000..a45d0ffd Binary files /dev/null and b/public/textures/chipped/fancy_light_gray_stained_glass.png differ diff --git a/public/textures/chipped/fancy_light_gray_stained_glass_pane.png b/public/textures/chipped/fancy_light_gray_stained_glass_pane.png new file mode 100644 index 00000000..384ead14 Binary files /dev/null and b/public/textures/chipped/fancy_light_gray_stained_glass_pane.png differ diff --git a/public/textures/chipped/fancy_lime_stained_glass.png b/public/textures/chipped/fancy_lime_stained_glass.png new file mode 100644 index 00000000..b1b5c544 Binary files /dev/null and b/public/textures/chipped/fancy_lime_stained_glass.png differ diff --git a/public/textures/chipped/fancy_lime_stained_glass_pane.png b/public/textures/chipped/fancy_lime_stained_glass_pane.png new file mode 100644 index 00000000..0e0312dd Binary files /dev/null and b/public/textures/chipped/fancy_lime_stained_glass_pane.png differ diff --git a/public/textures/chipped/fancy_magenta_stained_glass.png b/public/textures/chipped/fancy_magenta_stained_glass.png new file mode 100644 index 00000000..4c24c648 Binary files /dev/null and b/public/textures/chipped/fancy_magenta_stained_glass.png differ diff --git a/public/textures/chipped/fancy_magenta_stained_glass_pane.png b/public/textures/chipped/fancy_magenta_stained_glass_pane.png new file mode 100644 index 00000000..96fd27fa Binary files /dev/null and b/public/textures/chipped/fancy_magenta_stained_glass_pane.png differ diff --git a/public/textures/chipped/fancy_mud.png b/public/textures/chipped/fancy_mud.png new file mode 100644 index 00000000..fe6c1e4c Binary files /dev/null and b/public/textures/chipped/fancy_mud.png differ diff --git a/public/textures/chipped/fancy_mud_bricks.png b/public/textures/chipped/fancy_mud_bricks.png new file mode 100644 index 00000000..4f8b7a46 Binary files /dev/null and b/public/textures/chipped/fancy_mud_bricks.png differ diff --git a/public/textures/chipped/fancy_mud_bricks_pillar.png b/public/textures/chipped/fancy_mud_bricks_pillar.png new file mode 100644 index 00000000..e31381ad Binary files /dev/null and b/public/textures/chipped/fancy_mud_bricks_pillar.png differ diff --git a/public/textures/chipped/fancy_mud_pillar.png b/public/textures/chipped/fancy_mud_pillar.png new file mode 100644 index 00000000..1171f370 Binary files /dev/null and b/public/textures/chipped/fancy_mud_pillar.png differ diff --git a/public/textures/chipped/fancy_oak_trapdoor.png b/public/textures/chipped/fancy_oak_trapdoor.png new file mode 100644 index 00000000..eeeac38d Binary files /dev/null and b/public/textures/chipped/fancy_oak_trapdoor.png differ diff --git a/public/textures/chipped/fancy_orange_stained_glass.png b/public/textures/chipped/fancy_orange_stained_glass.png new file mode 100644 index 00000000..eb823be4 Binary files /dev/null and b/public/textures/chipped/fancy_orange_stained_glass.png differ diff --git a/public/textures/chipped/fancy_orange_stained_glass_pane.png b/public/textures/chipped/fancy_orange_stained_glass_pane.png new file mode 100644 index 00000000..249b02bb Binary files /dev/null and b/public/textures/chipped/fancy_orange_stained_glass_pane.png differ diff --git a/public/textures/chipped/fancy_packed_mud.png b/public/textures/chipped/fancy_packed_mud.png new file mode 100644 index 00000000..db880ce7 Binary files /dev/null and b/public/textures/chipped/fancy_packed_mud.png differ diff --git a/public/textures/chipped/fancy_packed_mud_pillar.png b/public/textures/chipped/fancy_packed_mud_pillar.png new file mode 100644 index 00000000..90636f2c Binary files /dev/null and b/public/textures/chipped/fancy_packed_mud_pillar.png differ diff --git a/public/textures/chipped/fancy_pink_stained_glass.png b/public/textures/chipped/fancy_pink_stained_glass.png new file mode 100644 index 00000000..1d4cc104 Binary files /dev/null and b/public/textures/chipped/fancy_pink_stained_glass.png differ diff --git a/public/textures/chipped/fancy_pink_stained_glass_pane.png b/public/textures/chipped/fancy_pink_stained_glass_pane.png new file mode 100644 index 00000000..d5fde20a Binary files /dev/null and b/public/textures/chipped/fancy_pink_stained_glass_pane.png differ diff --git a/public/textures/chipped/fancy_purple_stained_glass.png b/public/textures/chipped/fancy_purple_stained_glass.png new file mode 100644 index 00000000..4aeebc52 Binary files /dev/null and b/public/textures/chipped/fancy_purple_stained_glass.png differ diff --git a/public/textures/chipped/fancy_purple_stained_glass_pane.png b/public/textures/chipped/fancy_purple_stained_glass_pane.png new file mode 100644 index 00000000..26bd1fab Binary files /dev/null and b/public/textures/chipped/fancy_purple_stained_glass_pane.png differ diff --git a/public/textures/chipped/fancy_red_stained_glass.png b/public/textures/chipped/fancy_red_stained_glass.png new file mode 100644 index 00000000..b640fc06 Binary files /dev/null and b/public/textures/chipped/fancy_red_stained_glass.png differ diff --git a/public/textures/chipped/fancy_red_stained_glass_pane.png b/public/textures/chipped/fancy_red_stained_glass_pane.png new file mode 100644 index 00000000..5ead6f53 Binary files /dev/null and b/public/textures/chipped/fancy_red_stained_glass_pane.png differ diff --git a/public/textures/chipped/fancy_redstone_lamp.png b/public/textures/chipped/fancy_redstone_lamp.png new file mode 100644 index 00000000..bda48d3d Binary files /dev/null and b/public/textures/chipped/fancy_redstone_lamp.png differ diff --git a/public/textures/chipped/fancy_sea_lantern.png b/public/textures/chipped/fancy_sea_lantern.png new file mode 100644 index 00000000..b35dee5f Binary files /dev/null and b/public/textures/chipped/fancy_sea_lantern.png differ diff --git a/public/textures/chipped/fancy_shroomlight_lantern.png b/public/textures/chipped/fancy_shroomlight_lantern.png new file mode 100644 index 00000000..6c219921 Binary files /dev/null and b/public/textures/chipped/fancy_shroomlight_lantern.png differ diff --git a/public/textures/chipped/fancy_spruce_trapdoor.png b/public/textures/chipped/fancy_spruce_trapdoor.png new file mode 100644 index 00000000..6d5f1529 Binary files /dev/null and b/public/textures/chipped/fancy_spruce_trapdoor.png differ diff --git a/public/textures/chipped/fancy_white_redstone_lamp.png b/public/textures/chipped/fancy_white_redstone_lamp.png new file mode 100644 index 00000000..d6ef8945 Binary files /dev/null and b/public/textures/chipped/fancy_white_redstone_lamp.png differ diff --git a/public/textures/chipped/fancy_white_stained_glass.png b/public/textures/chipped/fancy_white_stained_glass.png new file mode 100644 index 00000000..1994daf3 Binary files /dev/null and b/public/textures/chipped/fancy_white_stained_glass.png differ diff --git a/public/textures/chipped/fancy_white_stained_glass_pane.png b/public/textures/chipped/fancy_white_stained_glass_pane.png new file mode 100644 index 00000000..c279f3e1 Binary files /dev/null and b/public/textures/chipped/fancy_white_stained_glass_pane.png differ diff --git a/public/textures/chipped/fancy_yellow_stained_glass.png b/public/textures/chipped/fancy_yellow_stained_glass.png new file mode 100644 index 00000000..48e98d24 Binary files /dev/null and b/public/textures/chipped/fancy_yellow_stained_glass.png differ diff --git a/public/textures/chipped/fancy_yellow_stained_glass_pane.png b/public/textures/chipped/fancy_yellow_stained_glass_pane.png new file mode 100644 index 00000000..1f05d9f7 Binary files /dev/null and b/public/textures/chipped/fancy_yellow_stained_glass_pane.png differ diff --git a/public/textures/chipped/fertile_hay_block.png b/public/textures/chipped/fertile_hay_block.png new file mode 100644 index 00000000..d27debee Binary files /dev/null and b/public/textures/chipped/fertile_hay_block.png differ diff --git a/public/textures/chipped/fine_acacia_planks.png b/public/textures/chipped/fine_acacia_planks.png new file mode 100644 index 00000000..051a57d1 Binary files /dev/null and b/public/textures/chipped/fine_acacia_planks.png differ diff --git a/public/textures/chipped/fine_amethyst_block_pillar.png b/public/textures/chipped/fine_amethyst_block_pillar.png new file mode 100644 index 00000000..dd73e8c0 Binary files /dev/null and b/public/textures/chipped/fine_amethyst_block_pillar.png differ diff --git a/public/textures/chipped/fine_ancient_debris_pillar.png b/public/textures/chipped/fine_ancient_debris_pillar.png new file mode 100644 index 00000000..026c9d38 Binary files /dev/null and b/public/textures/chipped/fine_ancient_debris_pillar.png differ diff --git a/public/textures/chipped/fine_andesite_pillar.png b/public/textures/chipped/fine_andesite_pillar.png new file mode 100644 index 00000000..d70ef5cd Binary files /dev/null and b/public/textures/chipped/fine_andesite_pillar.png differ diff --git a/public/textures/chipped/fine_bamboo_planks.png b/public/textures/chipped/fine_bamboo_planks.png new file mode 100644 index 00000000..00f62a9e Binary files /dev/null and b/public/textures/chipped/fine_bamboo_planks.png differ diff --git a/public/textures/chipped/fine_basalt_pillar.png b/public/textures/chipped/fine_basalt_pillar.png new file mode 100644 index 00000000..c5f51f42 Binary files /dev/null and b/public/textures/chipped/fine_basalt_pillar.png differ diff --git a/public/textures/chipped/fine_birch_planks.png b/public/textures/chipped/fine_birch_planks.png new file mode 100644 index 00000000..c0419da6 Binary files /dev/null and b/public/textures/chipped/fine_birch_planks.png differ diff --git a/public/textures/chipped/fine_blackstone_pillar.png b/public/textures/chipped/fine_blackstone_pillar.png new file mode 100644 index 00000000..4a889591 Binary files /dev/null and b/public/textures/chipped/fine_blackstone_pillar.png differ diff --git a/public/textures/chipped/fine_blue_ice_pillar.png b/public/textures/chipped/fine_blue_ice_pillar.png new file mode 100644 index 00000000..eeda0ed3 Binary files /dev/null and b/public/textures/chipped/fine_blue_ice_pillar.png differ diff --git a/public/textures/chipped/fine_borderless_bricks_pillar.png b/public/textures/chipped/fine_borderless_bricks_pillar.png new file mode 100644 index 00000000..72b86b34 Binary files /dev/null and b/public/textures/chipped/fine_borderless_bricks_pillar.png differ diff --git a/public/textures/chipped/fine_bricks_pillar.png b/public/textures/chipped/fine_bricks_pillar.png new file mode 100644 index 00000000..344c8f98 Binary files /dev/null and b/public/textures/chipped/fine_bricks_pillar.png differ diff --git a/public/textures/chipped/fine_calcite_pillar.png b/public/textures/chipped/fine_calcite_pillar.png new file mode 100644 index 00000000..2553e0c4 Binary files /dev/null and b/public/textures/chipped/fine_calcite_pillar.png differ diff --git a/public/textures/chipped/fine_cherry_planks.png b/public/textures/chipped/fine_cherry_planks.png new file mode 100644 index 00000000..10d9c1a0 Binary files /dev/null and b/public/textures/chipped/fine_cherry_planks.png differ diff --git a/public/textures/chipped/fine_clay_pillar.png b/public/textures/chipped/fine_clay_pillar.png new file mode 100644 index 00000000..f08f420c Binary files /dev/null and b/public/textures/chipped/fine_clay_pillar.png differ diff --git a/public/textures/chipped/fine_coal_block_pillar.png b/public/textures/chipped/fine_coal_block_pillar.png new file mode 100644 index 00000000..69e92bd9 Binary files /dev/null and b/public/textures/chipped/fine_coal_block_pillar.png differ diff --git a/public/textures/chipped/fine_cobblestone_pillar.png b/public/textures/chipped/fine_cobblestone_pillar.png new file mode 100644 index 00000000..3f6da486 Binary files /dev/null and b/public/textures/chipped/fine_cobblestone_pillar.png differ diff --git a/public/textures/chipped/fine_crimson_planks.png b/public/textures/chipped/fine_crimson_planks.png new file mode 100644 index 00000000..fede0be0 Binary files /dev/null and b/public/textures/chipped/fine_crimson_planks.png differ diff --git a/public/textures/chipped/fine_crying_obsidian_pillar.png b/public/textures/chipped/fine_crying_obsidian_pillar.png new file mode 100644 index 00000000..8ff153ca Binary files /dev/null and b/public/textures/chipped/fine_crying_obsidian_pillar.png differ diff --git a/public/textures/chipped/fine_dark_oak_planks.png b/public/textures/chipped/fine_dark_oak_planks.png new file mode 100644 index 00000000..f9d523f5 Binary files /dev/null and b/public/textures/chipped/fine_dark_oak_planks.png differ diff --git a/public/textures/chipped/fine_dark_prismarine_pillar.png b/public/textures/chipped/fine_dark_prismarine_pillar.png new file mode 100644 index 00000000..375792e5 Binary files /dev/null and b/public/textures/chipped/fine_dark_prismarine_pillar.png differ diff --git a/public/textures/chipped/fine_deepslate_pillar.png b/public/textures/chipped/fine_deepslate_pillar.png new file mode 100644 index 00000000..65db64e7 Binary files /dev/null and b/public/textures/chipped/fine_deepslate_pillar.png differ diff --git a/public/textures/chipped/fine_diorite_pillar.png b/public/textures/chipped/fine_diorite_pillar.png new file mode 100644 index 00000000..5ba8d0f0 Binary files /dev/null and b/public/textures/chipped/fine_diorite_pillar.png differ diff --git a/public/textures/chipped/fine_dirt_pillar.png b/public/textures/chipped/fine_dirt_pillar.png new file mode 100644 index 00000000..6a547de9 Binary files /dev/null and b/public/textures/chipped/fine_dirt_pillar.png differ diff --git a/public/textures/chipped/fine_dripstone_block_pillar.png b/public/textures/chipped/fine_dripstone_block_pillar.png new file mode 100644 index 00000000..8d74cf8a Binary files /dev/null and b/public/textures/chipped/fine_dripstone_block_pillar.png differ diff --git a/public/textures/chipped/fine_end_stone_pillar.png b/public/textures/chipped/fine_end_stone_pillar.png new file mode 100644 index 00000000..7453d0d2 Binary files /dev/null and b/public/textures/chipped/fine_end_stone_pillar.png differ diff --git a/public/textures/chipped/fine_gilded_blackstone_pillar.png b/public/textures/chipped/fine_gilded_blackstone_pillar.png new file mode 100644 index 00000000..9d0cd55d Binary files /dev/null and b/public/textures/chipped/fine_gilded_blackstone_pillar.png differ diff --git a/public/textures/chipped/fine_granite_pillar.png b/public/textures/chipped/fine_granite_pillar.png new file mode 100644 index 00000000..392eeaf6 Binary files /dev/null and b/public/textures/chipped/fine_granite_pillar.png differ diff --git a/public/textures/chipped/fine_ice_pillar.png b/public/textures/chipped/fine_ice_pillar.png new file mode 100644 index 00000000..b118118b Binary files /dev/null and b/public/textures/chipped/fine_ice_pillar.png differ diff --git a/public/textures/chipped/fine_jungle_planks.png b/public/textures/chipped/fine_jungle_planks.png new file mode 100644 index 00000000..97e5f915 Binary files /dev/null and b/public/textures/chipped/fine_jungle_planks.png differ diff --git a/public/textures/chipped/fine_lapis_block_pillar.png b/public/textures/chipped/fine_lapis_block_pillar.png new file mode 100644 index 00000000..a2f85603 Binary files /dev/null and b/public/textures/chipped/fine_lapis_block_pillar.png differ diff --git a/public/textures/chipped/fine_lodestone_pillar.png b/public/textures/chipped/fine_lodestone_pillar.png new file mode 100644 index 00000000..9aa68ed6 Binary files /dev/null and b/public/textures/chipped/fine_lodestone_pillar.png differ diff --git a/public/textures/chipped/fine_magma_block_pillar.png b/public/textures/chipped/fine_magma_block_pillar.png new file mode 100644 index 00000000..dc4edd78 Binary files /dev/null and b/public/textures/chipped/fine_magma_block_pillar.png differ diff --git a/public/textures/chipped/fine_mangrove_planks.png b/public/textures/chipped/fine_mangrove_planks.png new file mode 100644 index 00000000..63a5e2a6 Binary files /dev/null and b/public/textures/chipped/fine_mangrove_planks.png differ diff --git a/public/textures/chipped/fine_mossy_cobblestone_pillar.png b/public/textures/chipped/fine_mossy_cobblestone_pillar.png new file mode 100644 index 00000000..7c0eccb6 Binary files /dev/null and b/public/textures/chipped/fine_mossy_cobblestone_pillar.png differ diff --git a/public/textures/chipped/fine_mossy_stone_bricks_pillar.png b/public/textures/chipped/fine_mossy_stone_bricks_pillar.png new file mode 100644 index 00000000..098fd73c Binary files /dev/null and b/public/textures/chipped/fine_mossy_stone_bricks_pillar.png differ diff --git a/public/textures/chipped/fine_mud_bricks_pillar.png b/public/textures/chipped/fine_mud_bricks_pillar.png new file mode 100644 index 00000000..faedf31e Binary files /dev/null and b/public/textures/chipped/fine_mud_bricks_pillar.png differ diff --git a/public/textures/chipped/fine_mud_pillar.png b/public/textures/chipped/fine_mud_pillar.png new file mode 100644 index 00000000..30f81804 Binary files /dev/null and b/public/textures/chipped/fine_mud_pillar.png differ diff --git a/public/textures/chipped/fine_nether_bricks_pillar.png b/public/textures/chipped/fine_nether_bricks_pillar.png new file mode 100644 index 00000000..833598a4 Binary files /dev/null and b/public/textures/chipped/fine_nether_bricks_pillar.png differ diff --git a/public/textures/chipped/fine_netherrack_pillar.png b/public/textures/chipped/fine_netherrack_pillar.png new file mode 100644 index 00000000..7f9c36af Binary files /dev/null and b/public/textures/chipped/fine_netherrack_pillar.png differ diff --git a/public/textures/chipped/fine_oak_planks.png b/public/textures/chipped/fine_oak_planks.png new file mode 100644 index 00000000..60e6fa90 Binary files /dev/null and b/public/textures/chipped/fine_oak_planks.png differ diff --git a/public/textures/chipped/fine_obsidian_pillar.png b/public/textures/chipped/fine_obsidian_pillar.png new file mode 100644 index 00000000..8edef333 Binary files /dev/null and b/public/textures/chipped/fine_obsidian_pillar.png differ diff --git a/public/textures/chipped/fine_packed_ice_pillar.png b/public/textures/chipped/fine_packed_ice_pillar.png new file mode 100644 index 00000000..33281f46 Binary files /dev/null and b/public/textures/chipped/fine_packed_ice_pillar.png differ diff --git a/public/textures/chipped/fine_packed_mud_pillar.png b/public/textures/chipped/fine_packed_mud_pillar.png new file mode 100644 index 00000000..80f861cb Binary files /dev/null and b/public/textures/chipped/fine_packed_mud_pillar.png differ diff --git a/public/textures/chipped/fine_prismarine_pillar.png b/public/textures/chipped/fine_prismarine_pillar.png new file mode 100644 index 00000000..f24b2086 Binary files /dev/null and b/public/textures/chipped/fine_prismarine_pillar.png differ diff --git a/public/textures/chipped/fine_purpur_block_pillar.png b/public/textures/chipped/fine_purpur_block_pillar.png new file mode 100644 index 00000000..1b16d4b6 Binary files /dev/null and b/public/textures/chipped/fine_purpur_block_pillar.png differ diff --git a/public/textures/chipped/fine_quartz_block_pillar.png b/public/textures/chipped/fine_quartz_block_pillar.png new file mode 100644 index 00000000..73fed7bb Binary files /dev/null and b/public/textures/chipped/fine_quartz_block_pillar.png differ diff --git a/public/textures/chipped/fine_raw_copper_block_pillar.png b/public/textures/chipped/fine_raw_copper_block_pillar.png new file mode 100644 index 00000000..e30570da Binary files /dev/null and b/public/textures/chipped/fine_raw_copper_block_pillar.png differ diff --git a/public/textures/chipped/fine_raw_gold_block_pillar.png b/public/textures/chipped/fine_raw_gold_block_pillar.png new file mode 100644 index 00000000..2632c7f6 Binary files /dev/null and b/public/textures/chipped/fine_raw_gold_block_pillar.png differ diff --git a/public/textures/chipped/fine_raw_iron_block_pillar.png b/public/textures/chipped/fine_raw_iron_block_pillar.png new file mode 100644 index 00000000..c82b2a74 Binary files /dev/null and b/public/textures/chipped/fine_raw_iron_block_pillar.png differ diff --git a/public/textures/chipped/fine_red_nether_bricks_pillar.png b/public/textures/chipped/fine_red_nether_bricks_pillar.png new file mode 100644 index 00000000..db5bc239 Binary files /dev/null and b/public/textures/chipped/fine_red_nether_bricks_pillar.png differ diff --git a/public/textures/chipped/fine_red_sandstone_pillar.png b/public/textures/chipped/fine_red_sandstone_pillar.png new file mode 100644 index 00000000..f152735c Binary files /dev/null and b/public/textures/chipped/fine_red_sandstone_pillar.png differ diff --git a/public/textures/chipped/fine_redstone_block_pillar.png b/public/textures/chipped/fine_redstone_block_pillar.png new file mode 100644 index 00000000..8682c88c Binary files /dev/null and b/public/textures/chipped/fine_redstone_block_pillar.png differ diff --git a/public/textures/chipped/fine_sandstone_pillar.png b/public/textures/chipped/fine_sandstone_pillar.png new file mode 100644 index 00000000..5a5130be Binary files /dev/null and b/public/textures/chipped/fine_sandstone_pillar.png differ diff --git a/public/textures/chipped/fine_smooth_stone_pillar.png b/public/textures/chipped/fine_smooth_stone_pillar.png new file mode 100644 index 00000000..eb796d87 Binary files /dev/null and b/public/textures/chipped/fine_smooth_stone_pillar.png differ diff --git a/public/textures/chipped/fine_snow_block_pillar.png b/public/textures/chipped/fine_snow_block_pillar.png new file mode 100644 index 00000000..a8b57488 Binary files /dev/null and b/public/textures/chipped/fine_snow_block_pillar.png differ diff --git a/public/textures/chipped/fine_soul_sand.png b/public/textures/chipped/fine_soul_sand.png new file mode 100644 index 00000000..138a75a1 Binary files /dev/null and b/public/textures/chipped/fine_soul_sand.png differ diff --git a/public/textures/chipped/fine_sponge.png b/public/textures/chipped/fine_sponge.png new file mode 100644 index 00000000..ee8a93aa Binary files /dev/null and b/public/textures/chipped/fine_sponge.png differ diff --git a/public/textures/chipped/fine_spruce_planks.png b/public/textures/chipped/fine_spruce_planks.png new file mode 100644 index 00000000..db078407 Binary files /dev/null and b/public/textures/chipped/fine_spruce_planks.png differ diff --git a/public/textures/chipped/fine_stone_pillar.png b/public/textures/chipped/fine_stone_pillar.png new file mode 100644 index 00000000..95516b0e Binary files /dev/null and b/public/textures/chipped/fine_stone_pillar.png differ diff --git a/public/textures/chipped/fine_tuff_pillar.png b/public/textures/chipped/fine_tuff_pillar.png new file mode 100644 index 00000000..ef8a695e Binary files /dev/null and b/public/textures/chipped/fine_tuff_pillar.png differ diff --git a/public/textures/chipped/fine_vertical_acacia_planks.png b/public/textures/chipped/fine_vertical_acacia_planks.png new file mode 100644 index 00000000..3b00ad2e Binary files /dev/null and b/public/textures/chipped/fine_vertical_acacia_planks.png differ diff --git a/public/textures/chipped/fine_vertical_bamboo_planks.png b/public/textures/chipped/fine_vertical_bamboo_planks.png new file mode 100644 index 00000000..f8c081ee Binary files /dev/null and b/public/textures/chipped/fine_vertical_bamboo_planks.png differ diff --git a/public/textures/chipped/fine_vertical_birch_planks.png b/public/textures/chipped/fine_vertical_birch_planks.png new file mode 100644 index 00000000..db25294c Binary files /dev/null and b/public/textures/chipped/fine_vertical_birch_planks.png differ diff --git a/public/textures/chipped/fine_vertical_cherry_planks.png b/public/textures/chipped/fine_vertical_cherry_planks.png new file mode 100644 index 00000000..9b0a82a0 Binary files /dev/null and b/public/textures/chipped/fine_vertical_cherry_planks.png differ diff --git a/public/textures/chipped/fine_vertical_crimson_planks.png b/public/textures/chipped/fine_vertical_crimson_planks.png new file mode 100644 index 00000000..2aaef332 Binary files /dev/null and b/public/textures/chipped/fine_vertical_crimson_planks.png differ diff --git a/public/textures/chipped/fine_vertical_dark_oak_planks.png b/public/textures/chipped/fine_vertical_dark_oak_planks.png new file mode 100644 index 00000000..a6d0d325 Binary files /dev/null and b/public/textures/chipped/fine_vertical_dark_oak_planks.png differ diff --git a/public/textures/chipped/fine_vertical_jungle_planks.png b/public/textures/chipped/fine_vertical_jungle_planks.png new file mode 100644 index 00000000..27d4682b Binary files /dev/null and b/public/textures/chipped/fine_vertical_jungle_planks.png differ diff --git a/public/textures/chipped/fine_vertical_mangrove_planks.png b/public/textures/chipped/fine_vertical_mangrove_planks.png new file mode 100644 index 00000000..b693570b Binary files /dev/null and b/public/textures/chipped/fine_vertical_mangrove_planks.png differ diff --git a/public/textures/chipped/fine_vertical_oak_planks.png b/public/textures/chipped/fine_vertical_oak_planks.png new file mode 100644 index 00000000..4241862c Binary files /dev/null and b/public/textures/chipped/fine_vertical_oak_planks.png differ diff --git a/public/textures/chipped/fine_vertical_spruce_planks.png b/public/textures/chipped/fine_vertical_spruce_planks.png new file mode 100644 index 00000000..a8004cae Binary files /dev/null and b/public/textures/chipped/fine_vertical_spruce_planks.png differ diff --git a/public/textures/chipped/fine_vertical_warped_planks.png b/public/textures/chipped/fine_vertical_warped_planks.png new file mode 100644 index 00000000..c53d1a40 Binary files /dev/null and b/public/textures/chipped/fine_vertical_warped_planks.png differ diff --git a/public/textures/chipped/fine_warped_planks.png b/public/textures/chipped/fine_warped_planks.png new file mode 100644 index 00000000..690f1258 Binary files /dev/null and b/public/textures/chipped/fine_warped_planks.png differ diff --git a/public/textures/chipped/fired_nether_sprouts.png b/public/textures/chipped/fired_nether_sprouts.png new file mode 100644 index 00000000..5cf6ccf4 Binary files /dev/null and b/public/textures/chipped/fired_nether_sprouts.png differ diff --git a/public/textures/chipped/firewood_acacia_log.png b/public/textures/chipped/firewood_acacia_log.png new file mode 100644 index 00000000..bb9f47a1 Binary files /dev/null and b/public/textures/chipped/firewood_acacia_log.png differ diff --git a/public/textures/chipped/firewood_birch_log.png b/public/textures/chipped/firewood_birch_log.png new file mode 100644 index 00000000..1b7e729a Binary files /dev/null and b/public/textures/chipped/firewood_birch_log.png differ diff --git a/public/textures/chipped/firewood_cherry_log.png b/public/textures/chipped/firewood_cherry_log.png new file mode 100644 index 00000000..b72acc61 Binary files /dev/null and b/public/textures/chipped/firewood_cherry_log.png differ diff --git a/public/textures/chipped/firewood_crimson_stem.png b/public/textures/chipped/firewood_crimson_stem.png new file mode 100644 index 00000000..db210c39 Binary files /dev/null and b/public/textures/chipped/firewood_crimson_stem.png differ diff --git a/public/textures/chipped/firewood_dark_oak_log.png b/public/textures/chipped/firewood_dark_oak_log.png new file mode 100644 index 00000000..3b0440b5 Binary files /dev/null and b/public/textures/chipped/firewood_dark_oak_log.png differ diff --git a/public/textures/chipped/firewood_jungle_log.png b/public/textures/chipped/firewood_jungle_log.png new file mode 100644 index 00000000..a2a09b31 Binary files /dev/null and b/public/textures/chipped/firewood_jungle_log.png differ diff --git a/public/textures/chipped/firewood_mangrove_log.png b/public/textures/chipped/firewood_mangrove_log.png new file mode 100644 index 00000000..35a1a36f Binary files /dev/null and b/public/textures/chipped/firewood_mangrove_log.png differ diff --git a/public/textures/chipped/firewood_oak_log.png b/public/textures/chipped/firewood_oak_log.png new file mode 100644 index 00000000..f19eebe8 Binary files /dev/null and b/public/textures/chipped/firewood_oak_log.png differ diff --git a/public/textures/chipped/firewood_spruce_log.png b/public/textures/chipped/firewood_spruce_log.png new file mode 100644 index 00000000..ebfe7924 Binary files /dev/null and b/public/textures/chipped/firewood_spruce_log.png differ diff --git a/public/textures/chipped/firewood_warped_stem.png b/public/textures/chipped/firewood_warped_stem.png new file mode 100644 index 00000000..73e72e6d Binary files /dev/null and b/public/textures/chipped/firewood_warped_stem.png differ diff --git a/public/textures/chipped/fish_barrel.png b/public/textures/chipped/fish_barrel.png new file mode 100644 index 00000000..7ec4fa4f Binary files /dev/null and b/public/textures/chipped/fish_barrel.png differ diff --git a/public/textures/chipped/flat_amethyst_block_tiles.png b/public/textures/chipped/flat_amethyst_block_tiles.png new file mode 100644 index 00000000..136dc7d7 Binary files /dev/null and b/public/textures/chipped/flat_amethyst_block_tiles.png differ diff --git a/public/textures/chipped/flat_ancient_debris_tiles.png b/public/textures/chipped/flat_ancient_debris_tiles.png new file mode 100644 index 00000000..b8d22be8 Binary files /dev/null and b/public/textures/chipped/flat_ancient_debris_tiles.png differ diff --git a/public/textures/chipped/flat_andesite_tiles.png b/public/textures/chipped/flat_andesite_tiles.png new file mode 100644 index 00000000..d5734542 Binary files /dev/null and b/public/textures/chipped/flat_andesite_tiles.png differ diff --git a/public/textures/chipped/flat_basalt_tiles.png b/public/textures/chipped/flat_basalt_tiles.png new file mode 100644 index 00000000..5b36bb8e Binary files /dev/null and b/public/textures/chipped/flat_basalt_tiles.png differ diff --git a/public/textures/chipped/flat_blackstone_tiles.png b/public/textures/chipped/flat_blackstone_tiles.png new file mode 100644 index 00000000..3d25ed5e Binary files /dev/null and b/public/textures/chipped/flat_blackstone_tiles.png differ diff --git a/public/textures/chipped/flat_blue_ice_tiles.png b/public/textures/chipped/flat_blue_ice_tiles.png new file mode 100644 index 00000000..078675af Binary files /dev/null and b/public/textures/chipped/flat_blue_ice_tiles.png differ diff --git a/public/textures/chipped/flat_borderless_bricks_tiles.png b/public/textures/chipped/flat_borderless_bricks_tiles.png new file mode 100644 index 00000000..42a8baf9 Binary files /dev/null and b/public/textures/chipped/flat_borderless_bricks_tiles.png differ diff --git a/public/textures/chipped/flat_bricks_tiles.png b/public/textures/chipped/flat_bricks_tiles.png new file mode 100644 index 00000000..e2c19452 Binary files /dev/null and b/public/textures/chipped/flat_bricks_tiles.png differ diff --git a/public/textures/chipped/flat_calcite_tiles.png b/public/textures/chipped/flat_calcite_tiles.png new file mode 100644 index 00000000..b35d9ec5 Binary files /dev/null and b/public/textures/chipped/flat_calcite_tiles.png differ diff --git a/public/textures/chipped/flat_clay_tiles.png b/public/textures/chipped/flat_clay_tiles.png new file mode 100644 index 00000000..eba52122 Binary files /dev/null and b/public/textures/chipped/flat_clay_tiles.png differ diff --git a/public/textures/chipped/flat_coal_block_tiles.png b/public/textures/chipped/flat_coal_block_tiles.png new file mode 100644 index 00000000..e40c2908 Binary files /dev/null and b/public/textures/chipped/flat_coal_block_tiles.png differ diff --git a/public/textures/chipped/flat_cobblestone_tiles.png b/public/textures/chipped/flat_cobblestone_tiles.png new file mode 100644 index 00000000..2ce70390 Binary files /dev/null and b/public/textures/chipped/flat_cobblestone_tiles.png differ diff --git a/public/textures/chipped/flat_crying_obsidian_tiles.png b/public/textures/chipped/flat_crying_obsidian_tiles.png new file mode 100644 index 00000000..4440e3fd Binary files /dev/null and b/public/textures/chipped/flat_crying_obsidian_tiles.png differ diff --git a/public/textures/chipped/flat_dark_prismarine_tiles.png b/public/textures/chipped/flat_dark_prismarine_tiles.png new file mode 100644 index 00000000..7832134f Binary files /dev/null and b/public/textures/chipped/flat_dark_prismarine_tiles.png differ diff --git a/public/textures/chipped/flat_diorite_tiles.png b/public/textures/chipped/flat_diorite_tiles.png new file mode 100644 index 00000000..f15dd4a5 Binary files /dev/null and b/public/textures/chipped/flat_diorite_tiles.png differ diff --git a/public/textures/chipped/flat_dirt_tiles.png b/public/textures/chipped/flat_dirt_tiles.png new file mode 100644 index 00000000..d5971d46 Binary files /dev/null and b/public/textures/chipped/flat_dirt_tiles.png differ diff --git a/public/textures/chipped/flat_dripstone_block_tiles.png b/public/textures/chipped/flat_dripstone_block_tiles.png new file mode 100644 index 00000000..329609a8 Binary files /dev/null and b/public/textures/chipped/flat_dripstone_block_tiles.png differ diff --git a/public/textures/chipped/flat_end_stone_tiles.png b/public/textures/chipped/flat_end_stone_tiles.png new file mode 100644 index 00000000..7cff7cc3 Binary files /dev/null and b/public/textures/chipped/flat_end_stone_tiles.png differ diff --git a/public/textures/chipped/flat_gilded_blackstone_tiles.png b/public/textures/chipped/flat_gilded_blackstone_tiles.png new file mode 100644 index 00000000..69fa5537 Binary files /dev/null and b/public/textures/chipped/flat_gilded_blackstone_tiles.png differ diff --git a/public/textures/chipped/flat_granite_tiles.png b/public/textures/chipped/flat_granite_tiles.png new file mode 100644 index 00000000..308cb9d8 Binary files /dev/null and b/public/textures/chipped/flat_granite_tiles.png differ diff --git a/public/textures/chipped/flat_ice_tiles.png b/public/textures/chipped/flat_ice_tiles.png new file mode 100644 index 00000000..7493903b Binary files /dev/null and b/public/textures/chipped/flat_ice_tiles.png differ diff --git a/public/textures/chipped/flat_lapis_block_tiles.png b/public/textures/chipped/flat_lapis_block_tiles.png new file mode 100644 index 00000000..ee21b3aa Binary files /dev/null and b/public/textures/chipped/flat_lapis_block_tiles.png differ diff --git a/public/textures/chipped/flat_lodestone_tiles.png b/public/textures/chipped/flat_lodestone_tiles.png new file mode 100644 index 00000000..afbf8b48 Binary files /dev/null and b/public/textures/chipped/flat_lodestone_tiles.png differ diff --git a/public/textures/chipped/flat_magma_block_tiles.png b/public/textures/chipped/flat_magma_block_tiles.png new file mode 100644 index 00000000..786c0d33 Binary files /dev/null and b/public/textures/chipped/flat_magma_block_tiles.png differ diff --git a/public/textures/chipped/flat_mossy_cobblestone_tiles.png b/public/textures/chipped/flat_mossy_cobblestone_tiles.png new file mode 100644 index 00000000..138e10af Binary files /dev/null and b/public/textures/chipped/flat_mossy_cobblestone_tiles.png differ diff --git a/public/textures/chipped/flat_mossy_stone_bricks_tiles.png b/public/textures/chipped/flat_mossy_stone_bricks_tiles.png new file mode 100644 index 00000000..700faca9 Binary files /dev/null and b/public/textures/chipped/flat_mossy_stone_bricks_tiles.png differ diff --git a/public/textures/chipped/flat_nether_bricks_tiles.png b/public/textures/chipped/flat_nether_bricks_tiles.png new file mode 100644 index 00000000..43e6e2e2 Binary files /dev/null and b/public/textures/chipped/flat_nether_bricks_tiles.png differ diff --git a/public/textures/chipped/flat_netherrack_tiles.png b/public/textures/chipped/flat_netherrack_tiles.png new file mode 100644 index 00000000..46738c79 Binary files /dev/null and b/public/textures/chipped/flat_netherrack_tiles.png differ diff --git a/public/textures/chipped/flat_obsidian_tiles.png b/public/textures/chipped/flat_obsidian_tiles.png new file mode 100644 index 00000000..a520a25a Binary files /dev/null and b/public/textures/chipped/flat_obsidian_tiles.png differ diff --git a/public/textures/chipped/flat_packed_ice_tiles.png b/public/textures/chipped/flat_packed_ice_tiles.png new file mode 100644 index 00000000..5e85910d Binary files /dev/null and b/public/textures/chipped/flat_packed_ice_tiles.png differ diff --git a/public/textures/chipped/flat_prismarine_tiles.png b/public/textures/chipped/flat_prismarine_tiles.png new file mode 100644 index 00000000..a106ae81 Binary files /dev/null and b/public/textures/chipped/flat_prismarine_tiles.png differ diff --git a/public/textures/chipped/flat_purpur_block_tiles.png b/public/textures/chipped/flat_purpur_block_tiles.png new file mode 100644 index 00000000..edb0d1b5 Binary files /dev/null and b/public/textures/chipped/flat_purpur_block_tiles.png differ diff --git a/public/textures/chipped/flat_quartz_block_tiles.png b/public/textures/chipped/flat_quartz_block_tiles.png new file mode 100644 index 00000000..e3bdc097 Binary files /dev/null and b/public/textures/chipped/flat_quartz_block_tiles.png differ diff --git a/public/textures/chipped/flat_raw_copper_block_tiles.png b/public/textures/chipped/flat_raw_copper_block_tiles.png new file mode 100644 index 00000000..ab2812d2 Binary files /dev/null and b/public/textures/chipped/flat_raw_copper_block_tiles.png differ diff --git a/public/textures/chipped/flat_raw_gold_block_tiles.png b/public/textures/chipped/flat_raw_gold_block_tiles.png new file mode 100644 index 00000000..1ae325e7 Binary files /dev/null and b/public/textures/chipped/flat_raw_gold_block_tiles.png differ diff --git a/public/textures/chipped/flat_raw_iron_block_tiles.png b/public/textures/chipped/flat_raw_iron_block_tiles.png new file mode 100644 index 00000000..995c3171 Binary files /dev/null and b/public/textures/chipped/flat_raw_iron_block_tiles.png differ diff --git a/public/textures/chipped/flat_red_nether_bricks_tiles.png b/public/textures/chipped/flat_red_nether_bricks_tiles.png new file mode 100644 index 00000000..2d60463c Binary files /dev/null and b/public/textures/chipped/flat_red_nether_bricks_tiles.png differ diff --git a/public/textures/chipped/flat_red_sandstone_tiles.png b/public/textures/chipped/flat_red_sandstone_tiles.png new file mode 100644 index 00000000..4fc68537 Binary files /dev/null and b/public/textures/chipped/flat_red_sandstone_tiles.png differ diff --git a/public/textures/chipped/flat_redstone_block_tiles.png b/public/textures/chipped/flat_redstone_block_tiles.png new file mode 100644 index 00000000..df9a8239 Binary files /dev/null and b/public/textures/chipped/flat_redstone_block_tiles.png differ diff --git a/public/textures/chipped/flat_sandstone_tiles.png b/public/textures/chipped/flat_sandstone_tiles.png new file mode 100644 index 00000000..254b7203 Binary files /dev/null and b/public/textures/chipped/flat_sandstone_tiles.png differ diff --git a/public/textures/chipped/flat_smooth_stone_tiles.png b/public/textures/chipped/flat_smooth_stone_tiles.png new file mode 100644 index 00000000..c0e81a12 Binary files /dev/null and b/public/textures/chipped/flat_smooth_stone_tiles.png differ diff --git a/public/textures/chipped/flat_snow_block_tiles.png b/public/textures/chipped/flat_snow_block_tiles.png new file mode 100644 index 00000000..79d365a6 Binary files /dev/null and b/public/textures/chipped/flat_snow_block_tiles.png differ diff --git a/public/textures/chipped/flat_stone_tiles.png b/public/textures/chipped/flat_stone_tiles.png new file mode 100644 index 00000000..0bfaeda5 Binary files /dev/null and b/public/textures/chipped/flat_stone_tiles.png differ diff --git a/public/textures/chipped/flat_tuff_tiles.png b/public/textures/chipped/flat_tuff_tiles.png new file mode 100644 index 00000000..feabbb8c Binary files /dev/null and b/public/textures/chipped/flat_tuff_tiles.png differ diff --git a/public/textures/chipped/flimsy_nether_sprouts.png b/public/textures/chipped/flimsy_nether_sprouts.png new file mode 100644 index 00000000..e79de4f1 Binary files /dev/null and b/public/textures/chipped/flimsy_nether_sprouts.png differ diff --git a/public/textures/chipped/floral_iron_bars.png b/public/textures/chipped/floral_iron_bars.png new file mode 100644 index 00000000..477a9ca2 Binary files /dev/null and b/public/textures/chipped/floral_iron_bars.png differ diff --git a/public/textures/chipped/flowered_crimson_roots.png b/public/textures/chipped/flowered_crimson_roots.png new file mode 100644 index 00000000..37b85431 Binary files /dev/null and b/public/textures/chipped/flowered_crimson_roots.png differ diff --git a/public/textures/chipped/flowered_crimson_roots_bulb.png b/public/textures/chipped/flowered_crimson_roots_bulb.png new file mode 100644 index 00000000..e76bee03 Binary files /dev/null and b/public/textures/chipped/flowered_crimson_roots_bulb.png differ diff --git a/public/textures/chipped/flowering_acacia_log.png b/public/textures/chipped/flowering_acacia_log.png new file mode 100644 index 00000000..9f2529c2 Binary files /dev/null and b/public/textures/chipped/flowering_acacia_log.png differ diff --git a/public/textures/chipped/flowering_birch_log.png b/public/textures/chipped/flowering_birch_log.png new file mode 100644 index 00000000..1826d8ec Binary files /dev/null and b/public/textures/chipped/flowering_birch_log.png differ diff --git a/public/textures/chipped/flowering_cherry_log.png b/public/textures/chipped/flowering_cherry_log.png new file mode 100644 index 00000000..729cf940 Binary files /dev/null and b/public/textures/chipped/flowering_cherry_log.png differ diff --git a/public/textures/chipped/flowering_dark_oak_log.png b/public/textures/chipped/flowering_dark_oak_log.png new file mode 100644 index 00000000..41c2a247 Binary files /dev/null and b/public/textures/chipped/flowering_dark_oak_log.png differ diff --git a/public/textures/chipped/flowering_jungle_log.png b/public/textures/chipped/flowering_jungle_log.png new file mode 100644 index 00000000..7703ee93 Binary files /dev/null and b/public/textures/chipped/flowering_jungle_log.png differ diff --git a/public/textures/chipped/flowering_lily_pad.png b/public/textures/chipped/flowering_lily_pad.png new file mode 100644 index 00000000..6db1bc1b Binary files /dev/null and b/public/textures/chipped/flowering_lily_pad.png differ diff --git a/public/textures/chipped/flowering_mangrove_log.png b/public/textures/chipped/flowering_mangrove_log.png new file mode 100644 index 00000000..9dec86fa Binary files /dev/null and b/public/textures/chipped/flowering_mangrove_log.png differ diff --git a/public/textures/chipped/flowering_oak_log.png b/public/textures/chipped/flowering_oak_log.png new file mode 100644 index 00000000..497270be Binary files /dev/null and b/public/textures/chipped/flowering_oak_log.png differ diff --git a/public/textures/chipped/flowering_spruce_log.png b/public/textures/chipped/flowering_spruce_log.png new file mode 100644 index 00000000..525f1758 Binary files /dev/null and b/public/textures/chipped/flowering_spruce_log.png differ diff --git a/public/textures/chipped/flowering_warped_roots.png b/public/textures/chipped/flowering_warped_roots.png new file mode 100644 index 00000000..382ea658 Binary files /dev/null and b/public/textures/chipped/flowering_warped_roots.png differ diff --git a/public/textures/chipped/flowery_mangrove_roots.png b/public/textures/chipped/flowery_mangrove_roots.png new file mode 100644 index 00000000..db10b3dc Binary files /dev/null and b/public/textures/chipped/flowery_mangrove_roots.png differ diff --git a/public/textures/chipped/flowery_vine.png b/public/textures/chipped/flowery_vine.png new file mode 100644 index 00000000..785f741b Binary files /dev/null and b/public/textures/chipped/flowery_vine.png differ diff --git a/public/textures/chipped/fortified_acacia_door.png b/public/textures/chipped/fortified_acacia_door.png new file mode 100644 index 00000000..21135a35 Binary files /dev/null and b/public/textures/chipped/fortified_acacia_door.png differ diff --git a/public/textures/chipped/fortified_bamboo_door.png b/public/textures/chipped/fortified_bamboo_door.png new file mode 100644 index 00000000..e612c8b5 Binary files /dev/null and b/public/textures/chipped/fortified_bamboo_door.png differ diff --git a/public/textures/chipped/fortified_birch_door.png b/public/textures/chipped/fortified_birch_door.png new file mode 100644 index 00000000..98786d2d Binary files /dev/null and b/public/textures/chipped/fortified_birch_door.png differ diff --git a/public/textures/chipped/fortified_cherry_door.png b/public/textures/chipped/fortified_cherry_door.png new file mode 100644 index 00000000..07cb9b32 Binary files /dev/null and b/public/textures/chipped/fortified_cherry_door.png differ diff --git a/public/textures/chipped/fortified_crimson_door.png b/public/textures/chipped/fortified_crimson_door.png new file mode 100644 index 00000000..eaede399 Binary files /dev/null and b/public/textures/chipped/fortified_crimson_door.png differ diff --git a/public/textures/chipped/fortified_dark_oak_door.png b/public/textures/chipped/fortified_dark_oak_door.png new file mode 100644 index 00000000..236b01d1 Binary files /dev/null and b/public/textures/chipped/fortified_dark_oak_door.png differ diff --git a/public/textures/chipped/fortified_jungle_door.png b/public/textures/chipped/fortified_jungle_door.png new file mode 100644 index 00000000..db4620af Binary files /dev/null and b/public/textures/chipped/fortified_jungle_door.png differ diff --git a/public/textures/chipped/fortified_mangrove_door.png b/public/textures/chipped/fortified_mangrove_door.png new file mode 100644 index 00000000..1586482a Binary files /dev/null and b/public/textures/chipped/fortified_mangrove_door.png differ diff --git a/public/textures/chipped/fortified_oak_door.png b/public/textures/chipped/fortified_oak_door.png new file mode 100644 index 00000000..407b45f3 Binary files /dev/null and b/public/textures/chipped/fortified_oak_door.png differ diff --git a/public/textures/chipped/fortified_spruce_door.png b/public/textures/chipped/fortified_spruce_door.png new file mode 100644 index 00000000..e96d50ec Binary files /dev/null and b/public/textures/chipped/fortified_spruce_door.png differ diff --git a/public/textures/chipped/fortified_warped_door.png b/public/textures/chipped/fortified_warped_door.png new file mode 100644 index 00000000..47d37c1a Binary files /dev/null and b/public/textures/chipped/fortified_warped_door.png differ diff --git a/public/textures/chipped/fractured_bone_block.png b/public/textures/chipped/fractured_bone_block.png new file mode 100644 index 00000000..210172ba Binary files /dev/null and b/public/textures/chipped/fractured_bone_block.png differ diff --git a/public/textures/chipped/framed_acacia_planks.png b/public/textures/chipped/framed_acacia_planks.png new file mode 100644 index 00000000..9d74d4f8 Binary files /dev/null and b/public/textures/chipped/framed_acacia_planks.png differ diff --git a/public/textures/chipped/framed_bamboo_planks.png b/public/textures/chipped/framed_bamboo_planks.png new file mode 100644 index 00000000..9d41d8e6 Binary files /dev/null and b/public/textures/chipped/framed_bamboo_planks.png differ diff --git a/public/textures/chipped/framed_birch_planks.png b/public/textures/chipped/framed_birch_planks.png new file mode 100644 index 00000000..4f822311 Binary files /dev/null and b/public/textures/chipped/framed_birch_planks.png differ diff --git a/public/textures/chipped/framed_cherry_planks.png b/public/textures/chipped/framed_cherry_planks.png new file mode 100644 index 00000000..ebe9d8a1 Binary files /dev/null and b/public/textures/chipped/framed_cherry_planks.png differ diff --git a/public/textures/chipped/framed_crimson_planks.png b/public/textures/chipped/framed_crimson_planks.png new file mode 100644 index 00000000..ff7a2e52 Binary files /dev/null and b/public/textures/chipped/framed_crimson_planks.png differ diff --git a/public/textures/chipped/framed_dark_oak_planks.png b/public/textures/chipped/framed_dark_oak_planks.png new file mode 100644 index 00000000..e76f6244 Binary files /dev/null and b/public/textures/chipped/framed_dark_oak_planks.png differ diff --git a/public/textures/chipped/framed_glowstone_lantern.png b/public/textures/chipped/framed_glowstone_lantern.png new file mode 100644 index 00000000..52cd3bf9 Binary files /dev/null and b/public/textures/chipped/framed_glowstone_lantern.png differ diff --git a/public/textures/chipped/framed_jungle_planks.png b/public/textures/chipped/framed_jungle_planks.png new file mode 100644 index 00000000..420f2279 Binary files /dev/null and b/public/textures/chipped/framed_jungle_planks.png differ diff --git a/public/textures/chipped/framed_mangrove_planks.png b/public/textures/chipped/framed_mangrove_planks.png new file mode 100644 index 00000000..05662387 Binary files /dev/null and b/public/textures/chipped/framed_mangrove_planks.png differ diff --git a/public/textures/chipped/framed_oak_planks.png b/public/textures/chipped/framed_oak_planks.png new file mode 100644 index 00000000..4793d6a3 Binary files /dev/null and b/public/textures/chipped/framed_oak_planks.png differ diff --git a/public/textures/chipped/framed_sea_lantern.png b/public/textures/chipped/framed_sea_lantern.png new file mode 100644 index 00000000..725a7b49 Binary files /dev/null and b/public/textures/chipped/framed_sea_lantern.png differ diff --git a/public/textures/chipped/framed_shroomlight_lantern.png b/public/textures/chipped/framed_shroomlight_lantern.png new file mode 100644 index 00000000..37ecf0e5 Binary files /dev/null and b/public/textures/chipped/framed_shroomlight_lantern.png differ diff --git a/public/textures/chipped/framed_spruce_planks.png b/public/textures/chipped/framed_spruce_planks.png new file mode 100644 index 00000000..b03fc83c Binary files /dev/null and b/public/textures/chipped/framed_spruce_planks.png differ diff --git a/public/textures/chipped/framed_warped_planks.png b/public/textures/chipped/framed_warped_planks.png new file mode 100644 index 00000000..61817b4c Binary files /dev/null and b/public/textures/chipped/framed_warped_planks.png differ diff --git a/public/textures/chipped/franken_brown_mushroom.png b/public/textures/chipped/franken_brown_mushroom.png new file mode 100644 index 00000000..dcbe8d10 Binary files /dev/null and b/public/textures/chipped/franken_brown_mushroom.png differ diff --git a/public/textures/chipped/franken_crimson_fungus.png b/public/textures/chipped/franken_crimson_fungus.png new file mode 100644 index 00000000..9d8f7f87 Binary files /dev/null and b/public/textures/chipped/franken_crimson_fungus.png differ diff --git a/public/textures/chipped/franken_red_mushroom.png b/public/textures/chipped/franken_red_mushroom.png new file mode 100644 index 00000000..735be9c6 Binary files /dev/null and b/public/textures/chipped/franken_red_mushroom.png differ diff --git a/public/textures/chipped/franken_warped_fungus.png b/public/textures/chipped/franken_warped_fungus.png new file mode 100644 index 00000000..d3fb704e Binary files /dev/null and b/public/textures/chipped/franken_warped_fungus.png differ diff --git a/public/textures/chipped/freckled_brown_mushroom_block.png b/public/textures/chipped/freckled_brown_mushroom_block.png new file mode 100644 index 00000000..5c463e2d Binary files /dev/null and b/public/textures/chipped/freckled_brown_mushroom_block.png differ diff --git a/public/textures/chipped/freckled_red_mushroom_block.png b/public/textures/chipped/freckled_red_mushroom_block.png new file mode 100644 index 00000000..ff7818fa Binary files /dev/null and b/public/textures/chipped/freckled_red_mushroom_block.png differ diff --git a/public/textures/chipped/frosted_acacia_leaves.png b/public/textures/chipped/frosted_acacia_leaves.png new file mode 100644 index 00000000..0dec7312 Binary files /dev/null and b/public/textures/chipped/frosted_acacia_leaves.png differ diff --git a/public/textures/chipped/frosted_birch_leaves.png b/public/textures/chipped/frosted_birch_leaves.png new file mode 100644 index 00000000..849a95ef Binary files /dev/null and b/public/textures/chipped/frosted_birch_leaves.png differ diff --git a/public/textures/chipped/frosted_dark_oak_leaves.png b/public/textures/chipped/frosted_dark_oak_leaves.png new file mode 100644 index 00000000..eab4f553 Binary files /dev/null and b/public/textures/chipped/frosted_dark_oak_leaves.png differ diff --git a/public/textures/chipped/frosted_jungle_leaves.png b/public/textures/chipped/frosted_jungle_leaves.png new file mode 100644 index 00000000..628de67f Binary files /dev/null and b/public/textures/chipped/frosted_jungle_leaves.png differ diff --git a/public/textures/chipped/frosted_oak_leaves.png b/public/textures/chipped/frosted_oak_leaves.png new file mode 100644 index 00000000..d9d803dd Binary files /dev/null and b/public/textures/chipped/frosted_oak_leaves.png differ diff --git a/public/textures/chipped/frosted_spruce_leaves.png b/public/textures/chipped/frosted_spruce_leaves.png new file mode 100644 index 00000000..7aed6fe8 Binary files /dev/null and b/public/textures/chipped/frosted_spruce_leaves.png differ diff --git a/public/textures/chipped/fruit_barrel.png b/public/textures/chipped/fruit_barrel.png new file mode 100644 index 00000000..2548f679 Binary files /dev/null and b/public/textures/chipped/fruit_barrel.png differ diff --git a/public/textures/chipped/full_bookshelf.png b/public/textures/chipped/full_bookshelf.png new file mode 100644 index 00000000..d32cc1d4 Binary files /dev/null and b/public/textures/chipped/full_bookshelf.png differ diff --git a/public/textures/chipped/gated_acacia_door.png b/public/textures/chipped/gated_acacia_door.png new file mode 100644 index 00000000..a78cce2a Binary files /dev/null and b/public/textures/chipped/gated_acacia_door.png differ diff --git a/public/textures/chipped/gated_bamboo_door.png b/public/textures/chipped/gated_bamboo_door.png new file mode 100644 index 00000000..674c2882 Binary files /dev/null and b/public/textures/chipped/gated_bamboo_door.png differ diff --git a/public/textures/chipped/gated_birch_door.png b/public/textures/chipped/gated_birch_door.png new file mode 100644 index 00000000..458c99c3 Binary files /dev/null and b/public/textures/chipped/gated_birch_door.png differ diff --git a/public/textures/chipped/gated_cherry_door.png b/public/textures/chipped/gated_cherry_door.png new file mode 100644 index 00000000..1ee0210d Binary files /dev/null and b/public/textures/chipped/gated_cherry_door.png differ diff --git a/public/textures/chipped/gated_crimson_door.png b/public/textures/chipped/gated_crimson_door.png new file mode 100644 index 00000000..62590882 Binary files /dev/null and b/public/textures/chipped/gated_crimson_door.png differ diff --git a/public/textures/chipped/gated_dark_oak_door.png b/public/textures/chipped/gated_dark_oak_door.png new file mode 100644 index 00000000..06ad5b0a Binary files /dev/null and b/public/textures/chipped/gated_dark_oak_door.png differ diff --git a/public/textures/chipped/gated_jungle_door.png b/public/textures/chipped/gated_jungle_door.png new file mode 100644 index 00000000..b2faa219 Binary files /dev/null and b/public/textures/chipped/gated_jungle_door.png differ diff --git a/public/textures/chipped/gated_mangrove_door.png b/public/textures/chipped/gated_mangrove_door.png new file mode 100644 index 00000000..679f5b05 Binary files /dev/null and b/public/textures/chipped/gated_mangrove_door.png differ diff --git a/public/textures/chipped/gated_oak_door.png b/public/textures/chipped/gated_oak_door.png new file mode 100644 index 00000000..d1602717 Binary files /dev/null and b/public/textures/chipped/gated_oak_door.png differ diff --git a/public/textures/chipped/gated_spruce_door.png b/public/textures/chipped/gated_spruce_door.png new file mode 100644 index 00000000..09a807b2 Binary files /dev/null and b/public/textures/chipped/gated_spruce_door.png differ diff --git a/public/textures/chipped/gated_warped_door.png b/public/textures/chipped/gated_warped_door.png new file mode 100644 index 00000000..80185f0b Binary files /dev/null and b/public/textures/chipped/gated_warped_door.png differ diff --git a/public/textures/chipped/giant_sponge.png b/public/textures/chipped/giant_sponge.png new file mode 100644 index 00000000..7de35e0a Binary files /dev/null and b/public/textures/chipped/giant_sponge.png differ diff --git a/public/textures/chipped/gilded_barrel.png b/public/textures/chipped/gilded_barrel.png new file mode 100644 index 00000000..8a494320 Binary files /dev/null and b/public/textures/chipped/gilded_barrel.png differ diff --git a/public/textures/chipped/gilded_basalt_bone_block.png b/public/textures/chipped/gilded_basalt_bone_block.png new file mode 100644 index 00000000..018d8cb2 Binary files /dev/null and b/public/textures/chipped/gilded_basalt_bone_block.png differ diff --git a/public/textures/chipped/gilded_blackstone_bricks.png b/public/textures/chipped/gilded_blackstone_bricks.png new file mode 100644 index 00000000..e272003c Binary files /dev/null and b/public/textures/chipped/gilded_blackstone_bricks.png differ diff --git a/public/textures/chipped/gilded_blackstone_mini_tiles.png b/public/textures/chipped/gilded_blackstone_mini_tiles.png new file mode 100644 index 00000000..0bf2ec33 Binary files /dev/null and b/public/textures/chipped/gilded_blackstone_mini_tiles.png differ diff --git a/public/textures/chipped/gilded_blackstone_pillar.png b/public/textures/chipped/gilded_blackstone_pillar.png new file mode 100644 index 00000000..3f4f656a Binary files /dev/null and b/public/textures/chipped/gilded_blackstone_pillar.png differ diff --git a/public/textures/chipped/gilded_blackstone_pillar_top.png b/public/textures/chipped/gilded_blackstone_pillar_top.png new file mode 100644 index 00000000..8e6d7a8f Binary files /dev/null and b/public/textures/chipped/gilded_blackstone_pillar_top.png differ diff --git a/public/textures/chipped/gilded_blackstone_scales.png b/public/textures/chipped/gilded_blackstone_scales.png new file mode 100644 index 00000000..1fa5d2ad Binary files /dev/null and b/public/textures/chipped/gilded_blackstone_scales.png differ diff --git a/public/textures/chipped/glad_amethyst_block.png b/public/textures/chipped/glad_amethyst_block.png new file mode 100644 index 00000000..bf52b8b7 Binary files /dev/null and b/public/textures/chipped/glad_amethyst_block.png differ diff --git a/public/textures/chipped/glad_ancient_debris.png b/public/textures/chipped/glad_ancient_debris.png new file mode 100644 index 00000000..6e0bd12c Binary files /dev/null and b/public/textures/chipped/glad_ancient_debris.png differ diff --git a/public/textures/chipped/glad_andesite.png b/public/textures/chipped/glad_andesite.png new file mode 100644 index 00000000..b8e83642 Binary files /dev/null and b/public/textures/chipped/glad_andesite.png differ diff --git a/public/textures/chipped/glad_basalt.png b/public/textures/chipped/glad_basalt.png new file mode 100644 index 00000000..001e40c1 Binary files /dev/null and b/public/textures/chipped/glad_basalt.png differ diff --git a/public/textures/chipped/glad_blackstone.png b/public/textures/chipped/glad_blackstone.png new file mode 100644 index 00000000..258a7356 Binary files /dev/null and b/public/textures/chipped/glad_blackstone.png differ diff --git a/public/textures/chipped/glad_blue_ice.png b/public/textures/chipped/glad_blue_ice.png new file mode 100644 index 00000000..11526482 Binary files /dev/null and b/public/textures/chipped/glad_blue_ice.png differ diff --git a/public/textures/chipped/glad_borderless_bricks.png b/public/textures/chipped/glad_borderless_bricks.png new file mode 100644 index 00000000..af1cf789 Binary files /dev/null and b/public/textures/chipped/glad_borderless_bricks.png differ diff --git a/public/textures/chipped/glad_bricks.png b/public/textures/chipped/glad_bricks.png new file mode 100644 index 00000000..08474c7f Binary files /dev/null and b/public/textures/chipped/glad_bricks.png differ diff --git a/public/textures/chipped/glad_calcite.png b/public/textures/chipped/glad_calcite.png new file mode 100644 index 00000000..40acb217 Binary files /dev/null and b/public/textures/chipped/glad_calcite.png differ diff --git a/public/textures/chipped/glad_clay.png b/public/textures/chipped/glad_clay.png new file mode 100644 index 00000000..9c9bd2f9 Binary files /dev/null and b/public/textures/chipped/glad_clay.png differ diff --git a/public/textures/chipped/glad_coal_block.png b/public/textures/chipped/glad_coal_block.png new file mode 100644 index 00000000..f591295e Binary files /dev/null and b/public/textures/chipped/glad_coal_block.png differ diff --git a/public/textures/chipped/glad_cobblestone.png b/public/textures/chipped/glad_cobblestone.png new file mode 100644 index 00000000..269b586c Binary files /dev/null and b/public/textures/chipped/glad_cobblestone.png differ diff --git a/public/textures/chipped/glad_crying_obsidian.png b/public/textures/chipped/glad_crying_obsidian.png new file mode 100644 index 00000000..ea179217 Binary files /dev/null and b/public/textures/chipped/glad_crying_obsidian.png differ diff --git a/public/textures/chipped/glad_dark_prismarine.png b/public/textures/chipped/glad_dark_prismarine.png new file mode 100644 index 00000000..7eb1a081 Binary files /dev/null and b/public/textures/chipped/glad_dark_prismarine.png differ diff --git a/public/textures/chipped/glad_deepslate.png b/public/textures/chipped/glad_deepslate.png new file mode 100644 index 00000000..a0e15b4f Binary files /dev/null and b/public/textures/chipped/glad_deepslate.png differ diff --git a/public/textures/chipped/glad_diorite.png b/public/textures/chipped/glad_diorite.png new file mode 100644 index 00000000..135b0111 Binary files /dev/null and b/public/textures/chipped/glad_diorite.png differ diff --git a/public/textures/chipped/glad_dirt.png b/public/textures/chipped/glad_dirt.png new file mode 100644 index 00000000..d5951556 Binary files /dev/null and b/public/textures/chipped/glad_dirt.png differ diff --git a/public/textures/chipped/glad_dripstone_block.png b/public/textures/chipped/glad_dripstone_block.png new file mode 100644 index 00000000..20a87d06 Binary files /dev/null and b/public/textures/chipped/glad_dripstone_block.png differ diff --git a/public/textures/chipped/glad_end_stone.png b/public/textures/chipped/glad_end_stone.png new file mode 100644 index 00000000..4e1b1415 Binary files /dev/null and b/public/textures/chipped/glad_end_stone.png differ diff --git a/public/textures/chipped/glad_gilded_blackstone.png b/public/textures/chipped/glad_gilded_blackstone.png new file mode 100644 index 00000000..fb36d13a Binary files /dev/null and b/public/textures/chipped/glad_gilded_blackstone.png differ diff --git a/public/textures/chipped/glad_granite.png b/public/textures/chipped/glad_granite.png new file mode 100644 index 00000000..38c85e85 Binary files /dev/null and b/public/textures/chipped/glad_granite.png differ diff --git a/public/textures/chipped/glad_ice.png b/public/textures/chipped/glad_ice.png new file mode 100644 index 00000000..2041a8ce Binary files /dev/null and b/public/textures/chipped/glad_ice.png differ diff --git a/public/textures/chipped/glad_lapis_block.png b/public/textures/chipped/glad_lapis_block.png new file mode 100644 index 00000000..82398650 Binary files /dev/null and b/public/textures/chipped/glad_lapis_block.png differ diff --git a/public/textures/chipped/glad_lodestone.png b/public/textures/chipped/glad_lodestone.png new file mode 100644 index 00000000..1da34312 Binary files /dev/null and b/public/textures/chipped/glad_lodestone.png differ diff --git a/public/textures/chipped/glad_magma_block.png b/public/textures/chipped/glad_magma_block.png new file mode 100644 index 00000000..d2045856 Binary files /dev/null and b/public/textures/chipped/glad_magma_block.png differ diff --git a/public/textures/chipped/glad_mossy_cobblestone.png b/public/textures/chipped/glad_mossy_cobblestone.png new file mode 100644 index 00000000..01e7ff48 Binary files /dev/null and b/public/textures/chipped/glad_mossy_cobblestone.png differ diff --git a/public/textures/chipped/glad_mossy_stone_bricks.png b/public/textures/chipped/glad_mossy_stone_bricks.png new file mode 100644 index 00000000..cbec9fbb Binary files /dev/null and b/public/textures/chipped/glad_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/glad_mud.png b/public/textures/chipped/glad_mud.png new file mode 100644 index 00000000..3c4b1610 Binary files /dev/null and b/public/textures/chipped/glad_mud.png differ diff --git a/public/textures/chipped/glad_mud_bricks.png b/public/textures/chipped/glad_mud_bricks.png new file mode 100644 index 00000000..4bcc0913 Binary files /dev/null and b/public/textures/chipped/glad_mud_bricks.png differ diff --git a/public/textures/chipped/glad_nether_bricks.png b/public/textures/chipped/glad_nether_bricks.png new file mode 100644 index 00000000..3d49f84a Binary files /dev/null and b/public/textures/chipped/glad_nether_bricks.png differ diff --git a/public/textures/chipped/glad_netherrack.png b/public/textures/chipped/glad_netherrack.png new file mode 100644 index 00000000..85a60345 Binary files /dev/null and b/public/textures/chipped/glad_netherrack.png differ diff --git a/public/textures/chipped/glad_obsidian.png b/public/textures/chipped/glad_obsidian.png new file mode 100644 index 00000000..5ae7aee1 Binary files /dev/null and b/public/textures/chipped/glad_obsidian.png differ diff --git a/public/textures/chipped/glad_packed_ice.png b/public/textures/chipped/glad_packed_ice.png new file mode 100644 index 00000000..d8813526 Binary files /dev/null and b/public/textures/chipped/glad_packed_ice.png differ diff --git a/public/textures/chipped/glad_packed_mud.png b/public/textures/chipped/glad_packed_mud.png new file mode 100644 index 00000000..16a815a6 Binary files /dev/null and b/public/textures/chipped/glad_packed_mud.png differ diff --git a/public/textures/chipped/glad_prismarine.png b/public/textures/chipped/glad_prismarine.png new file mode 100644 index 00000000..d5beea82 Binary files /dev/null and b/public/textures/chipped/glad_prismarine.png differ diff --git a/public/textures/chipped/glad_purpur_block.png b/public/textures/chipped/glad_purpur_block.png new file mode 100644 index 00000000..5cb9e7a6 Binary files /dev/null and b/public/textures/chipped/glad_purpur_block.png differ diff --git a/public/textures/chipped/glad_quartz_block.png b/public/textures/chipped/glad_quartz_block.png new file mode 100644 index 00000000..412f1210 Binary files /dev/null and b/public/textures/chipped/glad_quartz_block.png differ diff --git a/public/textures/chipped/glad_raw_copper_block.png b/public/textures/chipped/glad_raw_copper_block.png new file mode 100644 index 00000000..2bdd244b Binary files /dev/null and b/public/textures/chipped/glad_raw_copper_block.png differ diff --git a/public/textures/chipped/glad_raw_gold_block.png b/public/textures/chipped/glad_raw_gold_block.png new file mode 100644 index 00000000..8b3efead Binary files /dev/null and b/public/textures/chipped/glad_raw_gold_block.png differ diff --git a/public/textures/chipped/glad_raw_iron_block.png b/public/textures/chipped/glad_raw_iron_block.png new file mode 100644 index 00000000..a703ed17 Binary files /dev/null and b/public/textures/chipped/glad_raw_iron_block.png differ diff --git a/public/textures/chipped/glad_red_nether_bricks.png b/public/textures/chipped/glad_red_nether_bricks.png new file mode 100644 index 00000000..290fe6fd Binary files /dev/null and b/public/textures/chipped/glad_red_nether_bricks.png differ diff --git a/public/textures/chipped/glad_red_sandstone.png b/public/textures/chipped/glad_red_sandstone.png new file mode 100644 index 00000000..4829f884 Binary files /dev/null and b/public/textures/chipped/glad_red_sandstone.png differ diff --git a/public/textures/chipped/glad_redstone_block.png b/public/textures/chipped/glad_redstone_block.png new file mode 100644 index 00000000..11109340 Binary files /dev/null and b/public/textures/chipped/glad_redstone_block.png differ diff --git a/public/textures/chipped/glad_sandstone.png b/public/textures/chipped/glad_sandstone.png new file mode 100644 index 00000000..51d2d60e Binary files /dev/null and b/public/textures/chipped/glad_sandstone.png differ diff --git a/public/textures/chipped/glad_smooth_stone.png b/public/textures/chipped/glad_smooth_stone.png new file mode 100644 index 00000000..149ba2e9 Binary files /dev/null and b/public/textures/chipped/glad_smooth_stone.png differ diff --git a/public/textures/chipped/glad_snow_block.png b/public/textures/chipped/glad_snow_block.png new file mode 100644 index 00000000..81f6944b Binary files /dev/null and b/public/textures/chipped/glad_snow_block.png differ diff --git a/public/textures/chipped/glad_stone.png b/public/textures/chipped/glad_stone.png new file mode 100644 index 00000000..5dbba00d Binary files /dev/null and b/public/textures/chipped/glad_stone.png differ diff --git a/public/textures/chipped/glad_tuff.png b/public/textures/chipped/glad_tuff.png new file mode 100644 index 00000000..101db5e3 Binary files /dev/null and b/public/textures/chipped/glad_tuff.png differ diff --git a/public/textures/chipped/glass_acacia_door.png b/public/textures/chipped/glass_acacia_door.png new file mode 100644 index 00000000..11b083e4 Binary files /dev/null and b/public/textures/chipped/glass_acacia_door.png differ diff --git a/public/textures/chipped/glass_bamboo_door.png b/public/textures/chipped/glass_bamboo_door.png new file mode 100644 index 00000000..b97b61f1 Binary files /dev/null and b/public/textures/chipped/glass_bamboo_door.png differ diff --git a/public/textures/chipped/glass_birch_door.png b/public/textures/chipped/glass_birch_door.png new file mode 100644 index 00000000..d8da68e3 Binary files /dev/null and b/public/textures/chipped/glass_birch_door.png differ diff --git a/public/textures/chipped/glass_cherry_door.png b/public/textures/chipped/glass_cherry_door.png new file mode 100644 index 00000000..55bd29a5 Binary files /dev/null and b/public/textures/chipped/glass_cherry_door.png differ diff --git a/public/textures/chipped/glass_crimson_door.png b/public/textures/chipped/glass_crimson_door.png new file mode 100644 index 00000000..3d8aaafe Binary files /dev/null and b/public/textures/chipped/glass_crimson_door.png differ diff --git a/public/textures/chipped/glass_dark_oak_door.png b/public/textures/chipped/glass_dark_oak_door.png new file mode 100644 index 00000000..2ddcb423 Binary files /dev/null and b/public/textures/chipped/glass_dark_oak_door.png differ diff --git a/public/textures/chipped/glass_jungle_door.png b/public/textures/chipped/glass_jungle_door.png new file mode 100644 index 00000000..b52ac278 Binary files /dev/null and b/public/textures/chipped/glass_jungle_door.png differ diff --git a/public/textures/chipped/glass_mangrove_door.png b/public/textures/chipped/glass_mangrove_door.png new file mode 100644 index 00000000..a5d181af Binary files /dev/null and b/public/textures/chipped/glass_mangrove_door.png differ diff --git a/public/textures/chipped/glass_oak_door.png b/public/textures/chipped/glass_oak_door.png new file mode 100644 index 00000000..1af7b3da Binary files /dev/null and b/public/textures/chipped/glass_oak_door.png differ diff --git a/public/textures/chipped/glass_ochre_froglight.png b/public/textures/chipped/glass_ochre_froglight.png new file mode 100644 index 00000000..f457b653 Binary files /dev/null and b/public/textures/chipped/glass_ochre_froglight.png differ diff --git a/public/textures/chipped/glass_pearlescent_froglight.png b/public/textures/chipped/glass_pearlescent_froglight.png new file mode 100644 index 00000000..007897f0 Binary files /dev/null and b/public/textures/chipped/glass_pearlescent_froglight.png differ diff --git a/public/textures/chipped/glass_spruce_door.png b/public/textures/chipped/glass_spruce_door.png new file mode 100644 index 00000000..3eb0462f Binary files /dev/null and b/public/textures/chipped/glass_spruce_door.png differ diff --git a/public/textures/chipped/glass_verdant_froglight.png b/public/textures/chipped/glass_verdant_froglight.png new file mode 100644 index 00000000..f89aab06 Binary files /dev/null and b/public/textures/chipped/glass_verdant_froglight.png differ diff --git a/public/textures/chipped/glass_warped_door.png b/public/textures/chipped/glass_warped_door.png new file mode 100644 index 00000000..0b6e60a8 Binary files /dev/null and b/public/textures/chipped/glass_warped_door.png differ diff --git a/public/textures/chipped/glassblower.png b/public/textures/chipped/glassblower.png new file mode 100644 index 00000000..c8f6d6f5 Binary files /dev/null and b/public/textures/chipped/glassblower.png differ diff --git a/public/textures/chipped/glittering_crimson_stem.png b/public/textures/chipped/glittering_crimson_stem.png new file mode 100644 index 00000000..32f39f70 Binary files /dev/null and b/public/textures/chipped/glittering_crimson_stem.png differ diff --git a/public/textures/chipped/glow_torch.png b/public/textures/chipped/glow_torch.png new file mode 100644 index 00000000..fc63bfc6 Binary files /dev/null and b/public/textures/chipped/glow_torch.png differ diff --git a/public/textures/chipped/glowing_crimson_stem.png b/public/textures/chipped/glowing_crimson_stem.png new file mode 100644 index 00000000..f88d5a06 Binary files /dev/null and b/public/textures/chipped/glowing_crimson_stem.png differ diff --git a/public/textures/chipped/glowing_lodestone_side.png b/public/textures/chipped/glowing_lodestone_side.png new file mode 100644 index 00000000..a810a6e3 Binary files /dev/null and b/public/textures/chipped/glowing_lodestone_side.png differ diff --git a/public/textures/chipped/glowing_soul_sand.png b/public/textures/chipped/glowing_soul_sand.png new file mode 100644 index 00000000..a4699f15 Binary files /dev/null and b/public/textures/chipped/glowing_soul_sand.png differ diff --git a/public/textures/chipped/glowstone_lantern.png b/public/textures/chipped/glowstone_lantern.png new file mode 100644 index 00000000..cab48053 Binary files /dev/null and b/public/textures/chipped/glowstone_lantern.png differ diff --git a/public/textures/chipped/gold_barrel.png b/public/textures/chipped/gold_barrel.png new file mode 100644 index 00000000..868bf6ab Binary files /dev/null and b/public/textures/chipped/gold_barrel.png differ diff --git a/public/textures/chipped/gold_block_panels.png b/public/textures/chipped/gold_block_panels.png new file mode 100644 index 00000000..9bf3b2c5 Binary files /dev/null and b/public/textures/chipped/gold_block_panels.png differ diff --git a/public/textures/chipped/golden_acacia_leaves.png b/public/textures/chipped/golden_acacia_leaves.png new file mode 100644 index 00000000..b188f3a3 Binary files /dev/null and b/public/textures/chipped/golden_acacia_leaves.png differ diff --git a/public/textures/chipped/golden_apple_acacia_leaves.png b/public/textures/chipped/golden_apple_acacia_leaves.png new file mode 100644 index 00000000..bc5474f2 Binary files /dev/null and b/public/textures/chipped/golden_apple_acacia_leaves.png differ diff --git a/public/textures/chipped/golden_apple_birch_leaves.png b/public/textures/chipped/golden_apple_birch_leaves.png new file mode 100644 index 00000000..00128164 Binary files /dev/null and b/public/textures/chipped/golden_apple_birch_leaves.png differ diff --git a/public/textures/chipped/golden_apple_dark_oak_leaves.png b/public/textures/chipped/golden_apple_dark_oak_leaves.png new file mode 100644 index 00000000..fe6d1ac1 Binary files /dev/null and b/public/textures/chipped/golden_apple_dark_oak_leaves.png differ diff --git a/public/textures/chipped/golden_apple_jungle_leaves.png b/public/textures/chipped/golden_apple_jungle_leaves.png new file mode 100644 index 00000000..efa00b28 Binary files /dev/null and b/public/textures/chipped/golden_apple_jungle_leaves.png differ diff --git a/public/textures/chipped/golden_apple_oak_leaves.png b/public/textures/chipped/golden_apple_oak_leaves.png new file mode 100644 index 00000000..a8c14602 Binary files /dev/null and b/public/textures/chipped/golden_apple_oak_leaves.png differ diff --git a/public/textures/chipped/golden_apple_spruce_leaves.png b/public/textures/chipped/golden_apple_spruce_leaves.png new file mode 100644 index 00000000..2afa8ba2 Binary files /dev/null and b/public/textures/chipped/golden_apple_spruce_leaves.png differ diff --git a/public/textures/chipped/golden_barred_acacia_trapdoor.png b/public/textures/chipped/golden_barred_acacia_trapdoor.png new file mode 100644 index 00000000..66860aed Binary files /dev/null and b/public/textures/chipped/golden_barred_acacia_trapdoor.png differ diff --git a/public/textures/chipped/golden_barred_bamboo_trapdoor.png b/public/textures/chipped/golden_barred_bamboo_trapdoor.png new file mode 100644 index 00000000..48be7ea8 Binary files /dev/null and b/public/textures/chipped/golden_barred_bamboo_trapdoor.png differ diff --git a/public/textures/chipped/golden_barred_birch_trapdoor.png b/public/textures/chipped/golden_barred_birch_trapdoor.png new file mode 100644 index 00000000..59036eea Binary files /dev/null and b/public/textures/chipped/golden_barred_birch_trapdoor.png differ diff --git a/public/textures/chipped/golden_barred_cherry_trapdoor.png b/public/textures/chipped/golden_barred_cherry_trapdoor.png new file mode 100644 index 00000000..a76092f2 Binary files /dev/null and b/public/textures/chipped/golden_barred_cherry_trapdoor.png differ diff --git a/public/textures/chipped/golden_barred_crimson_trapdoor.png b/public/textures/chipped/golden_barred_crimson_trapdoor.png new file mode 100644 index 00000000..aff7a28b Binary files /dev/null and b/public/textures/chipped/golden_barred_crimson_trapdoor.png differ diff --git a/public/textures/chipped/golden_barred_dark_oak_trapdoor.png b/public/textures/chipped/golden_barred_dark_oak_trapdoor.png new file mode 100644 index 00000000..cc46b0b0 Binary files /dev/null and b/public/textures/chipped/golden_barred_dark_oak_trapdoor.png differ diff --git a/public/textures/chipped/golden_barred_jungle_trapdoor.png b/public/textures/chipped/golden_barred_jungle_trapdoor.png new file mode 100644 index 00000000..8a5faeca Binary files /dev/null and b/public/textures/chipped/golden_barred_jungle_trapdoor.png differ diff --git a/public/textures/chipped/golden_barred_mangrove_trapdoor.png b/public/textures/chipped/golden_barred_mangrove_trapdoor.png new file mode 100644 index 00000000..05ddd813 Binary files /dev/null and b/public/textures/chipped/golden_barred_mangrove_trapdoor.png differ diff --git a/public/textures/chipped/golden_barred_oak_trapdoor.png b/public/textures/chipped/golden_barred_oak_trapdoor.png new file mode 100644 index 00000000..8b2d2732 Binary files /dev/null and b/public/textures/chipped/golden_barred_oak_trapdoor.png differ diff --git a/public/textures/chipped/golden_barred_spruce_trapdoor.png b/public/textures/chipped/golden_barred_spruce_trapdoor.png new file mode 100644 index 00000000..c00d23f4 Binary files /dev/null and b/public/textures/chipped/golden_barred_spruce_trapdoor.png differ diff --git a/public/textures/chipped/golden_barred_warped_trapdoor.png b/public/textures/chipped/golden_barred_warped_trapdoor.png new file mode 100644 index 00000000..a17d3c2c Binary files /dev/null and b/public/textures/chipped/golden_barred_warped_trapdoor.png differ diff --git a/public/textures/chipped/golden_birch_leaves.png b/public/textures/chipped/golden_birch_leaves.png new file mode 100644 index 00000000..305ca7d0 Binary files /dev/null and b/public/textures/chipped/golden_birch_leaves.png differ diff --git a/public/textures/chipped/golden_cherry_acacia_leaves.png b/public/textures/chipped/golden_cherry_acacia_leaves.png new file mode 100644 index 00000000..5d508c2f Binary files /dev/null and b/public/textures/chipped/golden_cherry_acacia_leaves.png differ diff --git a/public/textures/chipped/golden_cherry_birch_leaves.png b/public/textures/chipped/golden_cherry_birch_leaves.png new file mode 100644 index 00000000..829b84db Binary files /dev/null and b/public/textures/chipped/golden_cherry_birch_leaves.png differ diff --git a/public/textures/chipped/golden_cherry_dark_oak_leaves.png b/public/textures/chipped/golden_cherry_dark_oak_leaves.png new file mode 100644 index 00000000..a9e81e1e Binary files /dev/null and b/public/textures/chipped/golden_cherry_dark_oak_leaves.png differ diff --git a/public/textures/chipped/golden_cherry_jungle_leaves.png b/public/textures/chipped/golden_cherry_jungle_leaves.png new file mode 100644 index 00000000..b42c611c Binary files /dev/null and b/public/textures/chipped/golden_cherry_jungle_leaves.png differ diff --git a/public/textures/chipped/golden_cherry_oak_leaves.png b/public/textures/chipped/golden_cherry_oak_leaves.png new file mode 100644 index 00000000..39f71102 Binary files /dev/null and b/public/textures/chipped/golden_cherry_oak_leaves.png differ diff --git a/public/textures/chipped/golden_cherry_spruce_leaves.png b/public/textures/chipped/golden_cherry_spruce_leaves.png new file mode 100644 index 00000000..2e0fe6c4 Binary files /dev/null and b/public/textures/chipped/golden_cherry_spruce_leaves.png differ diff --git a/public/textures/chipped/golden_dark_oak_leaves.png b/public/textures/chipped/golden_dark_oak_leaves.png new file mode 100644 index 00000000..7ca7c9b0 Binary files /dev/null and b/public/textures/chipped/golden_dark_oak_leaves.png differ diff --git a/public/textures/chipped/golden_jungle_leaves.png b/public/textures/chipped/golden_jungle_leaves.png new file mode 100644 index 00000000..a96969b2 Binary files /dev/null and b/public/textures/chipped/golden_jungle_leaves.png differ diff --git a/public/textures/chipped/golden_melon.png b/public/textures/chipped/golden_melon.png new file mode 100644 index 00000000..30921cbb Binary files /dev/null and b/public/textures/chipped/golden_melon.png differ diff --git a/public/textures/chipped/golden_oak_leaves.png b/public/textures/chipped/golden_oak_leaves.png new file mode 100644 index 00000000..7ca7c9b0 Binary files /dev/null and b/public/textures/chipped/golden_oak_leaves.png differ diff --git a/public/textures/chipped/golden_paper_soul_lantern.png b/public/textures/chipped/golden_paper_soul_lantern.png new file mode 100644 index 00000000..068bf5e8 Binary files /dev/null and b/public/textures/chipped/golden_paper_soul_lantern.png differ diff --git a/public/textures/chipped/golden_spruce_leaves.png b/public/textures/chipped/golden_spruce_leaves.png new file mode 100644 index 00000000..f9e5df45 Binary files /dev/null and b/public/textures/chipped/golden_spruce_leaves.png differ diff --git a/public/textures/chipped/goldkin.png b/public/textures/chipped/goldkin.png new file mode 100644 index 00000000..a0c72b7f Binary files /dev/null and b/public/textures/chipped/goldkin.png differ diff --git a/public/textures/chipped/granite_bricks.png b/public/textures/chipped/granite_bricks.png new file mode 100644 index 00000000..a5e98c71 Binary files /dev/null and b/public/textures/chipped/granite_bricks.png differ diff --git a/public/textures/chipped/granite_mini_tiles.png b/public/textures/chipped/granite_mini_tiles.png new file mode 100644 index 00000000..e4297081 Binary files /dev/null and b/public/textures/chipped/granite_mini_tiles.png differ diff --git a/public/textures/chipped/granite_pillar.png b/public/textures/chipped/granite_pillar.png new file mode 100644 index 00000000..fc15bc0c Binary files /dev/null and b/public/textures/chipped/granite_pillar.png differ diff --git a/public/textures/chipped/granite_pillar_top.png b/public/textures/chipped/granite_pillar_top.png new file mode 100644 index 00000000..94cfed64 Binary files /dev/null and b/public/textures/chipped/granite_pillar_top.png differ diff --git a/public/textures/chipped/granite_pointed_dripstone.png b/public/textures/chipped/granite_pointed_dripstone.png new file mode 100644 index 00000000..63baef62 Binary files /dev/null and b/public/textures/chipped/granite_pointed_dripstone.png differ diff --git a/public/textures/chipped/granite_prismarine.png b/public/textures/chipped/granite_prismarine.png new file mode 100644 index 00000000..f6ffd9a6 Binary files /dev/null and b/public/textures/chipped/granite_prismarine.png differ diff --git a/public/textures/chipped/granite_scales.png b/public/textures/chipped/granite_scales.png new file mode 100644 index 00000000..eb44484f Binary files /dev/null and b/public/textures/chipped/granite_scales.png differ diff --git a/public/textures/chipped/graveled_soul_sand.png b/public/textures/chipped/graveled_soul_sand.png new file mode 100644 index 00000000..1a695a5c Binary files /dev/null and b/public/textures/chipped/graveled_soul_sand.png differ diff --git a/public/textures/chipped/gray_concrete_bricks.png b/public/textures/chipped/gray_concrete_bricks.png new file mode 100644 index 00000000..958e083b Binary files /dev/null and b/public/textures/chipped/gray_concrete_bricks.png differ diff --git a/public/textures/chipped/gray_concrete_panel.png b/public/textures/chipped/gray_concrete_panel.png new file mode 100644 index 00000000..b6809cd7 Binary files /dev/null and b/public/textures/chipped/gray_concrete_panel.png differ diff --git a/public/textures/chipped/gray_concrete_pillar.png b/public/textures/chipped/gray_concrete_pillar.png new file mode 100644 index 00000000..8b162eac Binary files /dev/null and b/public/textures/chipped/gray_concrete_pillar.png differ diff --git a/public/textures/chipped/gray_concrete_tiles.png b/public/textures/chipped/gray_concrete_tiles.png new file mode 100644 index 00000000..436d2324 Binary files /dev/null and b/public/textures/chipped/gray_concrete_tiles.png differ diff --git a/public/textures/chipped/gray_glazed_terracotta_pillar_sides.png b/public/textures/chipped/gray_glazed_terracotta_pillar_sides.png new file mode 100644 index 00000000..2589fb9b Binary files /dev/null and b/public/textures/chipped/gray_glazed_terracotta_pillar_sides.png differ diff --git a/public/textures/chipped/gray_glazed_terracotta_pillar_top.png b/public/textures/chipped/gray_glazed_terracotta_pillar_top.png new file mode 100644 index 00000000..5abeda4c Binary files /dev/null and b/public/textures/chipped/gray_glazed_terracotta_pillar_top.png differ diff --git a/public/textures/chipped/gray_glazed_terracotta_smooth_tiles.png b/public/textures/chipped/gray_glazed_terracotta_smooth_tiles.png new file mode 100644 index 00000000..55c266ac Binary files /dev/null and b/public/textures/chipped/gray_glazed_terracotta_smooth_tiles.png differ diff --git a/public/textures/chipped/gray_glazed_terracotta_tiles.png b/public/textures/chipped/gray_glazed_terracotta_tiles.png new file mode 100644 index 00000000..251b768f Binary files /dev/null and b/public/textures/chipped/gray_glazed_terracotta_tiles.png differ diff --git a/public/textures/chipped/gray_paper_soul_lantern.png b/public/textures/chipped/gray_paper_soul_lantern.png new file mode 100644 index 00000000..102d48f7 Binary files /dev/null and b/public/textures/chipped/gray_paper_soul_lantern.png differ diff --git a/public/textures/chipped/gray_terracotta_bricks.png b/public/textures/chipped/gray_terracotta_bricks.png new file mode 100644 index 00000000..a60146ff Binary files /dev/null and b/public/textures/chipped/gray_terracotta_bricks.png differ diff --git a/public/textures/chipped/gray_terracotta_column.png b/public/textures/chipped/gray_terracotta_column.png new file mode 100644 index 00000000..eed8d7bd Binary files /dev/null and b/public/textures/chipped/gray_terracotta_column.png differ diff --git a/public/textures/chipped/gray_terracotta_pillar.png b/public/textures/chipped/gray_terracotta_pillar.png new file mode 100644 index 00000000..e700a0a7 Binary files /dev/null and b/public/textures/chipped/gray_terracotta_pillar.png differ diff --git a/public/textures/chipped/gray_terracotta_tile.png b/public/textures/chipped/gray_terracotta_tile.png new file mode 100644 index 00000000..8c9013ec Binary files /dev/null and b/public/textures/chipped/gray_terracotta_tile.png differ diff --git a/public/textures/chipped/gray_terracotta_tiles.png b/public/textures/chipped/gray_terracotta_tiles.png new file mode 100644 index 00000000..416860c0 Binary files /dev/null and b/public/textures/chipped/gray_terracotta_tiles.png differ diff --git a/public/textures/chipped/green_concrete_bricks.png b/public/textures/chipped/green_concrete_bricks.png new file mode 100644 index 00000000..17737c78 Binary files /dev/null and b/public/textures/chipped/green_concrete_bricks.png differ diff --git a/public/textures/chipped/green_concrete_panel.png b/public/textures/chipped/green_concrete_panel.png new file mode 100644 index 00000000..02a986fa Binary files /dev/null and b/public/textures/chipped/green_concrete_panel.png differ diff --git a/public/textures/chipped/green_concrete_pillar.png b/public/textures/chipped/green_concrete_pillar.png new file mode 100644 index 00000000..e26b9967 Binary files /dev/null and b/public/textures/chipped/green_concrete_pillar.png differ diff --git a/public/textures/chipped/green_concrete_tiles.png b/public/textures/chipped/green_concrete_tiles.png new file mode 100644 index 00000000..3e82d7e2 Binary files /dev/null and b/public/textures/chipped/green_concrete_tiles.png differ diff --git a/public/textures/chipped/green_glazed_terracotta_pillar_sides.png b/public/textures/chipped/green_glazed_terracotta_pillar_sides.png new file mode 100644 index 00000000..66960f08 Binary files /dev/null and b/public/textures/chipped/green_glazed_terracotta_pillar_sides.png differ diff --git a/public/textures/chipped/green_glazed_terracotta_pillar_top.png b/public/textures/chipped/green_glazed_terracotta_pillar_top.png new file mode 100644 index 00000000..e5fd8f5a Binary files /dev/null and b/public/textures/chipped/green_glazed_terracotta_pillar_top.png differ diff --git a/public/textures/chipped/green_glazed_terracotta_smooth_tiles.png b/public/textures/chipped/green_glazed_terracotta_smooth_tiles.png new file mode 100644 index 00000000..3822274e Binary files /dev/null and b/public/textures/chipped/green_glazed_terracotta_smooth_tiles.png differ diff --git a/public/textures/chipped/green_glazed_terracotta_tiles.png b/public/textures/chipped/green_glazed_terracotta_tiles.png new file mode 100644 index 00000000..a12bf979 Binary files /dev/null and b/public/textures/chipped/green_glazed_terracotta_tiles.png differ diff --git a/public/textures/chipped/green_paper_lantern.png b/public/textures/chipped/green_paper_lantern.png new file mode 100644 index 00000000..075fad4e Binary files /dev/null and b/public/textures/chipped/green_paper_lantern.png differ diff --git a/public/textures/chipped/green_redstone_torch.png b/public/textures/chipped/green_redstone_torch.png new file mode 100644 index 00000000..f8d57e44 Binary files /dev/null and b/public/textures/chipped/green_redstone_torch.png differ diff --git a/public/textures/chipped/green_terracotta_bricks.png b/public/textures/chipped/green_terracotta_bricks.png new file mode 100644 index 00000000..d1090b99 Binary files /dev/null and b/public/textures/chipped/green_terracotta_bricks.png differ diff --git a/public/textures/chipped/green_terracotta_column.png b/public/textures/chipped/green_terracotta_column.png new file mode 100644 index 00000000..7d577821 Binary files /dev/null and b/public/textures/chipped/green_terracotta_column.png differ diff --git a/public/textures/chipped/green_terracotta_pillar.png b/public/textures/chipped/green_terracotta_pillar.png new file mode 100644 index 00000000..7f94bf21 Binary files /dev/null and b/public/textures/chipped/green_terracotta_pillar.png differ diff --git a/public/textures/chipped/green_terracotta_tile.png b/public/textures/chipped/green_terracotta_tile.png new file mode 100644 index 00000000..d1b9f677 Binary files /dev/null and b/public/textures/chipped/green_terracotta_tile.png differ diff --git a/public/textures/chipped/green_terracotta_tiles.png b/public/textures/chipped/green_terracotta_tiles.png new file mode 100644 index 00000000..dbbf185d Binary files /dev/null and b/public/textures/chipped/green_terracotta_tiles.png differ diff --git a/public/textures/chipped/grid_black_concrete.png b/public/textures/chipped/grid_black_concrete.png new file mode 100644 index 00000000..8aa51a89 Binary files /dev/null and b/public/textures/chipped/grid_black_concrete.png differ diff --git a/public/textures/chipped/grid_blue_concrete.png b/public/textures/chipped/grid_blue_concrete.png new file mode 100644 index 00000000..76c7dd1e Binary files /dev/null and b/public/textures/chipped/grid_blue_concrete.png differ diff --git a/public/textures/chipped/grid_brown_concrete.png b/public/textures/chipped/grid_brown_concrete.png new file mode 100644 index 00000000..44bd399d Binary files /dev/null and b/public/textures/chipped/grid_brown_concrete.png differ diff --git a/public/textures/chipped/grid_cyan_concrete.png b/public/textures/chipped/grid_cyan_concrete.png new file mode 100644 index 00000000..eff1661f Binary files /dev/null and b/public/textures/chipped/grid_cyan_concrete.png differ diff --git a/public/textures/chipped/grid_gray_concrete.png b/public/textures/chipped/grid_gray_concrete.png new file mode 100644 index 00000000..fa7f12f9 Binary files /dev/null and b/public/textures/chipped/grid_gray_concrete.png differ diff --git a/public/textures/chipped/grid_green_concrete.png b/public/textures/chipped/grid_green_concrete.png new file mode 100644 index 00000000..991ba697 Binary files /dev/null and b/public/textures/chipped/grid_green_concrete.png differ diff --git a/public/textures/chipped/grid_light_blue_concrete.png b/public/textures/chipped/grid_light_blue_concrete.png new file mode 100644 index 00000000..f1edec18 Binary files /dev/null and b/public/textures/chipped/grid_light_blue_concrete.png differ diff --git a/public/textures/chipped/grid_light_gray_concrete.png b/public/textures/chipped/grid_light_gray_concrete.png new file mode 100644 index 00000000..4e0f2b6d Binary files /dev/null and b/public/textures/chipped/grid_light_gray_concrete.png differ diff --git a/public/textures/chipped/grid_lime_concrete.png b/public/textures/chipped/grid_lime_concrete.png new file mode 100644 index 00000000..e030b139 Binary files /dev/null and b/public/textures/chipped/grid_lime_concrete.png differ diff --git a/public/textures/chipped/grid_magenta_concrete.png b/public/textures/chipped/grid_magenta_concrete.png new file mode 100644 index 00000000..7881ebce Binary files /dev/null and b/public/textures/chipped/grid_magenta_concrete.png differ diff --git a/public/textures/chipped/grid_orange_concrete.png b/public/textures/chipped/grid_orange_concrete.png new file mode 100644 index 00000000..4d09b818 Binary files /dev/null and b/public/textures/chipped/grid_orange_concrete.png differ diff --git a/public/textures/chipped/grid_pink_concrete.png b/public/textures/chipped/grid_pink_concrete.png new file mode 100644 index 00000000..10c17f78 Binary files /dev/null and b/public/textures/chipped/grid_pink_concrete.png differ diff --git a/public/textures/chipped/grid_purple_concrete.png b/public/textures/chipped/grid_purple_concrete.png new file mode 100644 index 00000000..96a75e0a Binary files /dev/null and b/public/textures/chipped/grid_purple_concrete.png differ diff --git a/public/textures/chipped/grid_red_concrete.png b/public/textures/chipped/grid_red_concrete.png new file mode 100644 index 00000000..d21ccc0e Binary files /dev/null and b/public/textures/chipped/grid_red_concrete.png differ diff --git a/public/textures/chipped/grid_white_concrete.png b/public/textures/chipped/grid_white_concrete.png new file mode 100644 index 00000000..7c31d6c5 Binary files /dev/null and b/public/textures/chipped/grid_white_concrete.png differ diff --git a/public/textures/chipped/grid_yellow_concrete.png b/public/textures/chipped/grid_yellow_concrete.png new file mode 100644 index 00000000..d05ae6cc Binary files /dev/null and b/public/textures/chipped/grid_yellow_concrete.png differ diff --git a/public/textures/chipped/grill_black_concrete.png b/public/textures/chipped/grill_black_concrete.png new file mode 100644 index 00000000..8f49cb79 Binary files /dev/null and b/public/textures/chipped/grill_black_concrete.png differ diff --git a/public/textures/chipped/grill_blue_concrete.png b/public/textures/chipped/grill_blue_concrete.png new file mode 100644 index 00000000..eb7db9ff Binary files /dev/null and b/public/textures/chipped/grill_blue_concrete.png differ diff --git a/public/textures/chipped/grill_brown_concrete.png b/public/textures/chipped/grill_brown_concrete.png new file mode 100644 index 00000000..b9079c28 Binary files /dev/null and b/public/textures/chipped/grill_brown_concrete.png differ diff --git a/public/textures/chipped/grill_cyan_concrete.png b/public/textures/chipped/grill_cyan_concrete.png new file mode 100644 index 00000000..065d0fe2 Binary files /dev/null and b/public/textures/chipped/grill_cyan_concrete.png differ diff --git a/public/textures/chipped/grill_gray_concrete.png b/public/textures/chipped/grill_gray_concrete.png new file mode 100644 index 00000000..18867d1b Binary files /dev/null and b/public/textures/chipped/grill_gray_concrete.png differ diff --git a/public/textures/chipped/grill_green_concrete.png b/public/textures/chipped/grill_green_concrete.png new file mode 100644 index 00000000..aa5a4a26 Binary files /dev/null and b/public/textures/chipped/grill_green_concrete.png differ diff --git a/public/textures/chipped/grill_light_blue_concrete.png b/public/textures/chipped/grill_light_blue_concrete.png new file mode 100644 index 00000000..4d41007f Binary files /dev/null and b/public/textures/chipped/grill_light_blue_concrete.png differ diff --git a/public/textures/chipped/grill_light_gray_concrete.png b/public/textures/chipped/grill_light_gray_concrete.png new file mode 100644 index 00000000..4609a3d5 Binary files /dev/null and b/public/textures/chipped/grill_light_gray_concrete.png differ diff --git a/public/textures/chipped/grill_lime_concrete.png b/public/textures/chipped/grill_lime_concrete.png new file mode 100644 index 00000000..63432fa6 Binary files /dev/null and b/public/textures/chipped/grill_lime_concrete.png differ diff --git a/public/textures/chipped/grill_magenta_concrete.png b/public/textures/chipped/grill_magenta_concrete.png new file mode 100644 index 00000000..a49ef32d Binary files /dev/null and b/public/textures/chipped/grill_magenta_concrete.png differ diff --git a/public/textures/chipped/grill_orange_concrete.png b/public/textures/chipped/grill_orange_concrete.png new file mode 100644 index 00000000..662c4fc8 Binary files /dev/null and b/public/textures/chipped/grill_orange_concrete.png differ diff --git a/public/textures/chipped/grill_pink_concrete.png b/public/textures/chipped/grill_pink_concrete.png new file mode 100644 index 00000000..67cbbc55 Binary files /dev/null and b/public/textures/chipped/grill_pink_concrete.png differ diff --git a/public/textures/chipped/grill_purple_concrete.png b/public/textures/chipped/grill_purple_concrete.png new file mode 100644 index 00000000..8e24bc1f Binary files /dev/null and b/public/textures/chipped/grill_purple_concrete.png differ diff --git a/public/textures/chipped/grill_red_concrete.png b/public/textures/chipped/grill_red_concrete.png new file mode 100644 index 00000000..c9806daa Binary files /dev/null and b/public/textures/chipped/grill_red_concrete.png differ diff --git a/public/textures/chipped/grill_white_concrete.png b/public/textures/chipped/grill_white_concrete.png new file mode 100644 index 00000000..1fea323a Binary files /dev/null and b/public/textures/chipped/grill_white_concrete.png differ diff --git a/public/textures/chipped/grill_yellow_concrete.png b/public/textures/chipped/grill_yellow_concrete.png new file mode 100644 index 00000000..5e573515 Binary files /dev/null and b/public/textures/chipped/grill_yellow_concrete.png differ diff --git a/public/textures/chipped/grimy_mushroom_stem.png b/public/textures/chipped/grimy_mushroom_stem.png new file mode 100644 index 00000000..ec410f7f Binary files /dev/null and b/public/textures/chipped/grimy_mushroom_stem.png differ diff --git a/public/textures/chipped/grizly_nether_sprouts.png b/public/textures/chipped/grizly_nether_sprouts.png new file mode 100644 index 00000000..8b27868d Binary files /dev/null and b/public/textures/chipped/grizly_nether_sprouts.png differ diff --git a/public/textures/chipped/half_grown_warped_roots.png b/public/textures/chipped/half_grown_warped_roots.png new file mode 100644 index 00000000..70589588 Binary files /dev/null and b/public/textures/chipped/half_grown_warped_roots.png differ diff --git a/public/textures/chipped/hanging_broken_cobweb.png b/public/textures/chipped/hanging_broken_cobweb.png new file mode 100644 index 00000000..e1c4d4d6 Binary files /dev/null and b/public/textures/chipped/hanging_broken_cobweb.png differ diff --git a/public/textures/chipped/hanging_cobweb.png b/public/textures/chipped/hanging_cobweb.png new file mode 100644 index 00000000..04e23705 Binary files /dev/null and b/public/textures/chipped/hanging_cobweb.png differ diff --git a/public/textures/chipped/happy_soul_sand.png b/public/textures/chipped/happy_soul_sand.png new file mode 100644 index 00000000..d526e978 Binary files /dev/null and b/public/textures/chipped/happy_soul_sand.png differ diff --git a/public/textures/chipped/hard_mud.png b/public/textures/chipped/hard_mud.png new file mode 100644 index 00000000..00040700 Binary files /dev/null and b/public/textures/chipped/hard_mud.png differ diff --git a/public/textures/chipped/hard_mud_bricks.png b/public/textures/chipped/hard_mud_bricks.png new file mode 100644 index 00000000..e37bc026 Binary files /dev/null and b/public/textures/chipped/hard_mud_bricks.png differ diff --git a/public/textures/chipped/hard_packed_mud.png b/public/textures/chipped/hard_packed_mud.png new file mode 100644 index 00000000..f9ae1cd5 Binary files /dev/null and b/public/textures/chipped/hard_packed_mud.png differ diff --git a/public/textures/chipped/hardened_soul_sand.png b/public/textures/chipped/hardened_soul_sand.png new file mode 100644 index 00000000..25449942 Binary files /dev/null and b/public/textures/chipped/hardened_soul_sand.png differ diff --git a/public/textures/chipped/harp_iron_bars.png b/public/textures/chipped/harp_iron_bars.png new file mode 100644 index 00000000..a7d50907 Binary files /dev/null and b/public/textures/chipped/harp_iron_bars.png differ diff --git a/public/textures/chipped/harsh_quilted_black_carpet.png b/public/textures/chipped/harsh_quilted_black_carpet.png new file mode 100644 index 00000000..342b4610 Binary files /dev/null and b/public/textures/chipped/harsh_quilted_black_carpet.png differ diff --git a/public/textures/chipped/harsh_quilted_black_wool.png b/public/textures/chipped/harsh_quilted_black_wool.png new file mode 100644 index 00000000..6dc23345 Binary files /dev/null and b/public/textures/chipped/harsh_quilted_black_wool.png differ diff --git a/public/textures/chipped/harsh_quilted_blue_carpet.png b/public/textures/chipped/harsh_quilted_blue_carpet.png new file mode 100644 index 00000000..8e33ccb1 Binary files /dev/null and b/public/textures/chipped/harsh_quilted_blue_carpet.png differ diff --git a/public/textures/chipped/harsh_quilted_blue_wool.png b/public/textures/chipped/harsh_quilted_blue_wool.png new file mode 100644 index 00000000..01685746 Binary files /dev/null and b/public/textures/chipped/harsh_quilted_blue_wool.png differ diff --git a/public/textures/chipped/harsh_quilted_brown_carpet.png b/public/textures/chipped/harsh_quilted_brown_carpet.png new file mode 100644 index 00000000..498e8b13 Binary files /dev/null and b/public/textures/chipped/harsh_quilted_brown_carpet.png differ diff --git a/public/textures/chipped/harsh_quilted_brown_wool.png b/public/textures/chipped/harsh_quilted_brown_wool.png new file mode 100644 index 00000000..bff3a1bf Binary files /dev/null and b/public/textures/chipped/harsh_quilted_brown_wool.png differ diff --git a/public/textures/chipped/harsh_quilted_cyan_carpet.png b/public/textures/chipped/harsh_quilted_cyan_carpet.png new file mode 100644 index 00000000..88877652 Binary files /dev/null and b/public/textures/chipped/harsh_quilted_cyan_carpet.png differ diff --git a/public/textures/chipped/harsh_quilted_cyan_wool.png b/public/textures/chipped/harsh_quilted_cyan_wool.png new file mode 100644 index 00000000..08ff697a Binary files /dev/null and b/public/textures/chipped/harsh_quilted_cyan_wool.png differ diff --git a/public/textures/chipped/harsh_quilted_gray_carpet.png b/public/textures/chipped/harsh_quilted_gray_carpet.png new file mode 100644 index 00000000..c62fe95d Binary files /dev/null and b/public/textures/chipped/harsh_quilted_gray_carpet.png differ diff --git a/public/textures/chipped/harsh_quilted_gray_wool.png b/public/textures/chipped/harsh_quilted_gray_wool.png new file mode 100644 index 00000000..2c121593 Binary files /dev/null and b/public/textures/chipped/harsh_quilted_gray_wool.png differ diff --git a/public/textures/chipped/harsh_quilted_green_carpet.png b/public/textures/chipped/harsh_quilted_green_carpet.png new file mode 100644 index 00000000..ccf29a59 Binary files /dev/null and b/public/textures/chipped/harsh_quilted_green_carpet.png differ diff --git a/public/textures/chipped/harsh_quilted_green_wool.png b/public/textures/chipped/harsh_quilted_green_wool.png new file mode 100644 index 00000000..c4d7e135 Binary files /dev/null and b/public/textures/chipped/harsh_quilted_green_wool.png differ diff --git a/public/textures/chipped/harsh_quilted_light_blue_carpet.png b/public/textures/chipped/harsh_quilted_light_blue_carpet.png new file mode 100644 index 00000000..ff073f9c Binary files /dev/null and b/public/textures/chipped/harsh_quilted_light_blue_carpet.png differ diff --git a/public/textures/chipped/harsh_quilted_light_blue_wool.png b/public/textures/chipped/harsh_quilted_light_blue_wool.png new file mode 100644 index 00000000..121b088b Binary files /dev/null and b/public/textures/chipped/harsh_quilted_light_blue_wool.png differ diff --git a/public/textures/chipped/harsh_quilted_light_gray_carpet.png b/public/textures/chipped/harsh_quilted_light_gray_carpet.png new file mode 100644 index 00000000..f6615b98 Binary files /dev/null and b/public/textures/chipped/harsh_quilted_light_gray_carpet.png differ diff --git a/public/textures/chipped/harsh_quilted_light_gray_wool.png b/public/textures/chipped/harsh_quilted_light_gray_wool.png new file mode 100644 index 00000000..884f5360 Binary files /dev/null and b/public/textures/chipped/harsh_quilted_light_gray_wool.png differ diff --git a/public/textures/chipped/harsh_quilted_lime_carpet.png b/public/textures/chipped/harsh_quilted_lime_carpet.png new file mode 100644 index 00000000..fecf8548 Binary files /dev/null and b/public/textures/chipped/harsh_quilted_lime_carpet.png differ diff --git a/public/textures/chipped/harsh_quilted_lime_wool.png b/public/textures/chipped/harsh_quilted_lime_wool.png new file mode 100644 index 00000000..ad4d2e8f Binary files /dev/null and b/public/textures/chipped/harsh_quilted_lime_wool.png differ diff --git a/public/textures/chipped/harsh_quilted_magenta_carpet.png b/public/textures/chipped/harsh_quilted_magenta_carpet.png new file mode 100644 index 00000000..882add3f Binary files /dev/null and b/public/textures/chipped/harsh_quilted_magenta_carpet.png differ diff --git a/public/textures/chipped/harsh_quilted_magenta_wool.png b/public/textures/chipped/harsh_quilted_magenta_wool.png new file mode 100644 index 00000000..ac1c573c Binary files /dev/null and b/public/textures/chipped/harsh_quilted_magenta_wool.png differ diff --git a/public/textures/chipped/harsh_quilted_orange_carpet.png b/public/textures/chipped/harsh_quilted_orange_carpet.png new file mode 100644 index 00000000..bee816e3 Binary files /dev/null and b/public/textures/chipped/harsh_quilted_orange_carpet.png differ diff --git a/public/textures/chipped/harsh_quilted_orange_wool.png b/public/textures/chipped/harsh_quilted_orange_wool.png new file mode 100644 index 00000000..6194e011 Binary files /dev/null and b/public/textures/chipped/harsh_quilted_orange_wool.png differ diff --git a/public/textures/chipped/harsh_quilted_pink_carpet.png b/public/textures/chipped/harsh_quilted_pink_carpet.png new file mode 100644 index 00000000..9a366635 Binary files /dev/null and b/public/textures/chipped/harsh_quilted_pink_carpet.png differ diff --git a/public/textures/chipped/harsh_quilted_pink_wool.png b/public/textures/chipped/harsh_quilted_pink_wool.png new file mode 100644 index 00000000..2d285e88 Binary files /dev/null and b/public/textures/chipped/harsh_quilted_pink_wool.png differ diff --git a/public/textures/chipped/harsh_quilted_purple_carpet.png b/public/textures/chipped/harsh_quilted_purple_carpet.png new file mode 100644 index 00000000..bbd3c419 Binary files /dev/null and b/public/textures/chipped/harsh_quilted_purple_carpet.png differ diff --git a/public/textures/chipped/harsh_quilted_purple_wool.png b/public/textures/chipped/harsh_quilted_purple_wool.png new file mode 100644 index 00000000..19d73c06 Binary files /dev/null and b/public/textures/chipped/harsh_quilted_purple_wool.png differ diff --git a/public/textures/chipped/harsh_quilted_red_carpet.png b/public/textures/chipped/harsh_quilted_red_carpet.png new file mode 100644 index 00000000..9612c55c Binary files /dev/null and b/public/textures/chipped/harsh_quilted_red_carpet.png differ diff --git a/public/textures/chipped/harsh_quilted_red_wool.png b/public/textures/chipped/harsh_quilted_red_wool.png new file mode 100644 index 00000000..d0fdd18d Binary files /dev/null and b/public/textures/chipped/harsh_quilted_red_wool.png differ diff --git a/public/textures/chipped/harsh_quilted_white_carpet.png b/public/textures/chipped/harsh_quilted_white_carpet.png new file mode 100644 index 00000000..c4a228fd Binary files /dev/null and b/public/textures/chipped/harsh_quilted_white_carpet.png differ diff --git a/public/textures/chipped/harsh_quilted_white_wool.png b/public/textures/chipped/harsh_quilted_white_wool.png new file mode 100644 index 00000000..b9387750 Binary files /dev/null and b/public/textures/chipped/harsh_quilted_white_wool.png differ diff --git a/public/textures/chipped/harsh_quilted_yellow_carpet.png b/public/textures/chipped/harsh_quilted_yellow_carpet.png new file mode 100644 index 00000000..b0876b8e Binary files /dev/null and b/public/textures/chipped/harsh_quilted_yellow_carpet.png differ diff --git a/public/textures/chipped/harsh_quilted_yellow_wool.png b/public/textures/chipped/harsh_quilted_yellow_wool.png new file mode 100644 index 00000000..f0b98f38 Binary files /dev/null and b/public/textures/chipped/harsh_quilted_yellow_wool.png differ diff --git a/public/textures/chipped/hazard_black_concrete.png b/public/textures/chipped/hazard_black_concrete.png new file mode 100644 index 00000000..7f02d489 Binary files /dev/null and b/public/textures/chipped/hazard_black_concrete.png differ diff --git a/public/textures/chipped/hazard_blue_concrete.png b/public/textures/chipped/hazard_blue_concrete.png new file mode 100644 index 00000000..4b8e39c9 Binary files /dev/null and b/public/textures/chipped/hazard_blue_concrete.png differ diff --git a/public/textures/chipped/hazard_brown_concrete.png b/public/textures/chipped/hazard_brown_concrete.png new file mode 100644 index 00000000..946553a4 Binary files /dev/null and b/public/textures/chipped/hazard_brown_concrete.png differ diff --git a/public/textures/chipped/hazard_cyan_concrete.png b/public/textures/chipped/hazard_cyan_concrete.png new file mode 100644 index 00000000..17784f42 Binary files /dev/null and b/public/textures/chipped/hazard_cyan_concrete.png differ diff --git a/public/textures/chipped/hazard_gray_concrete.png b/public/textures/chipped/hazard_gray_concrete.png new file mode 100644 index 00000000..57914f10 Binary files /dev/null and b/public/textures/chipped/hazard_gray_concrete.png differ diff --git a/public/textures/chipped/hazard_green_concrete.png b/public/textures/chipped/hazard_green_concrete.png new file mode 100644 index 00000000..5d8e138b Binary files /dev/null and b/public/textures/chipped/hazard_green_concrete.png differ diff --git a/public/textures/chipped/hazard_light_blue_concrete.png b/public/textures/chipped/hazard_light_blue_concrete.png new file mode 100644 index 00000000..ae5d02dd Binary files /dev/null and b/public/textures/chipped/hazard_light_blue_concrete.png differ diff --git a/public/textures/chipped/hazard_light_gray_concrete.png b/public/textures/chipped/hazard_light_gray_concrete.png new file mode 100644 index 00000000..1f9b6ffd Binary files /dev/null and b/public/textures/chipped/hazard_light_gray_concrete.png differ diff --git a/public/textures/chipped/hazard_lime_concrete.png b/public/textures/chipped/hazard_lime_concrete.png new file mode 100644 index 00000000..d28c39cc Binary files /dev/null and b/public/textures/chipped/hazard_lime_concrete.png differ diff --git a/public/textures/chipped/hazard_magenta_concrete.png b/public/textures/chipped/hazard_magenta_concrete.png new file mode 100644 index 00000000..30885ef6 Binary files /dev/null and b/public/textures/chipped/hazard_magenta_concrete.png differ diff --git a/public/textures/chipped/hazard_orange_concrete.png b/public/textures/chipped/hazard_orange_concrete.png new file mode 100644 index 00000000..32c5d52d Binary files /dev/null and b/public/textures/chipped/hazard_orange_concrete.png differ diff --git a/public/textures/chipped/hazard_pink_concrete.png b/public/textures/chipped/hazard_pink_concrete.png new file mode 100644 index 00000000..5ca4be08 Binary files /dev/null and b/public/textures/chipped/hazard_pink_concrete.png differ diff --git a/public/textures/chipped/hazard_purple_concrete.png b/public/textures/chipped/hazard_purple_concrete.png new file mode 100644 index 00000000..1aab97b3 Binary files /dev/null and b/public/textures/chipped/hazard_purple_concrete.png differ diff --git a/public/textures/chipped/hazard_red_concrete.png b/public/textures/chipped/hazard_red_concrete.png new file mode 100644 index 00000000..31048feb Binary files /dev/null and b/public/textures/chipped/hazard_red_concrete.png differ diff --git a/public/textures/chipped/hazard_white_concrete.png b/public/textures/chipped/hazard_white_concrete.png new file mode 100644 index 00000000..c85d0ad4 Binary files /dev/null and b/public/textures/chipped/hazard_white_concrete.png differ diff --git a/public/textures/chipped/hazard_yellow_concrete.png b/public/textures/chipped/hazard_yellow_concrete.png new file mode 100644 index 00000000..011cba70 Binary files /dev/null and b/public/textures/chipped/hazard_yellow_concrete.png differ diff --git a/public/textures/chipped/heart_mud.png b/public/textures/chipped/heart_mud.png new file mode 100644 index 00000000..7be09579 Binary files /dev/null and b/public/textures/chipped/heart_mud.png differ diff --git a/public/textures/chipped/heart_mud_bricks.png b/public/textures/chipped/heart_mud_bricks.png new file mode 100644 index 00000000..9a18bfc9 Binary files /dev/null and b/public/textures/chipped/heart_mud_bricks.png differ diff --git a/public/textures/chipped/heart_packed_mud.png b/public/textures/chipped/heart_packed_mud.png new file mode 100644 index 00000000..6719bab2 Binary files /dev/null and b/public/textures/chipped/heart_packed_mud.png differ diff --git a/public/textures/chipped/heavy_acacia_door.png b/public/textures/chipped/heavy_acacia_door.png new file mode 100644 index 00000000..9fbf5f22 Binary files /dev/null and b/public/textures/chipped/heavy_acacia_door.png differ diff --git a/public/textures/chipped/heavy_acacia_trapdoor.png b/public/textures/chipped/heavy_acacia_trapdoor.png new file mode 100644 index 00000000..4d232f87 Binary files /dev/null and b/public/textures/chipped/heavy_acacia_trapdoor.png differ diff --git a/public/textures/chipped/heavy_bamboo_door.png b/public/textures/chipped/heavy_bamboo_door.png new file mode 100644 index 00000000..6a089297 Binary files /dev/null and b/public/textures/chipped/heavy_bamboo_door.png differ diff --git a/public/textures/chipped/heavy_bamboo_trapdoor.png b/public/textures/chipped/heavy_bamboo_trapdoor.png new file mode 100644 index 00000000..57334c97 Binary files /dev/null and b/public/textures/chipped/heavy_bamboo_trapdoor.png differ diff --git a/public/textures/chipped/heavy_birch_door.png b/public/textures/chipped/heavy_birch_door.png new file mode 100644 index 00000000..87e946ca Binary files /dev/null and b/public/textures/chipped/heavy_birch_door.png differ diff --git a/public/textures/chipped/heavy_birch_trapdoor.png b/public/textures/chipped/heavy_birch_trapdoor.png new file mode 100644 index 00000000..b845baf7 Binary files /dev/null and b/public/textures/chipped/heavy_birch_trapdoor.png differ diff --git a/public/textures/chipped/heavy_cherry_door.png b/public/textures/chipped/heavy_cherry_door.png new file mode 100644 index 00000000..3ee10dee Binary files /dev/null and b/public/textures/chipped/heavy_cherry_door.png differ diff --git a/public/textures/chipped/heavy_cherry_trapdoor.png b/public/textures/chipped/heavy_cherry_trapdoor.png new file mode 100644 index 00000000..c7330448 Binary files /dev/null and b/public/textures/chipped/heavy_cherry_trapdoor.png differ diff --git a/public/textures/chipped/heavy_crimson_door.png b/public/textures/chipped/heavy_crimson_door.png new file mode 100644 index 00000000..dd195e5d Binary files /dev/null and b/public/textures/chipped/heavy_crimson_door.png differ diff --git a/public/textures/chipped/heavy_crimson_trapdoor.png b/public/textures/chipped/heavy_crimson_trapdoor.png new file mode 100644 index 00000000..853fcb64 Binary files /dev/null and b/public/textures/chipped/heavy_crimson_trapdoor.png differ diff --git a/public/textures/chipped/heavy_dark_oak_door.png b/public/textures/chipped/heavy_dark_oak_door.png new file mode 100644 index 00000000..3d505dcc Binary files /dev/null and b/public/textures/chipped/heavy_dark_oak_door.png differ diff --git a/public/textures/chipped/heavy_dark_oak_trapdoor.png b/public/textures/chipped/heavy_dark_oak_trapdoor.png new file mode 100644 index 00000000..b2270d3e Binary files /dev/null and b/public/textures/chipped/heavy_dark_oak_trapdoor.png differ diff --git a/public/textures/chipped/heavy_jungle_door.png b/public/textures/chipped/heavy_jungle_door.png new file mode 100644 index 00000000..42e0d6ee Binary files /dev/null and b/public/textures/chipped/heavy_jungle_door.png differ diff --git a/public/textures/chipped/heavy_jungle_trapdoor.png b/public/textures/chipped/heavy_jungle_trapdoor.png new file mode 100644 index 00000000..0a02a55e Binary files /dev/null and b/public/textures/chipped/heavy_jungle_trapdoor.png differ diff --git a/public/textures/chipped/heavy_mangrove_door.png b/public/textures/chipped/heavy_mangrove_door.png new file mode 100644 index 00000000..2dd189e2 Binary files /dev/null and b/public/textures/chipped/heavy_mangrove_door.png differ diff --git a/public/textures/chipped/heavy_mangrove_trapdoor.png b/public/textures/chipped/heavy_mangrove_trapdoor.png new file mode 100644 index 00000000..e3248915 Binary files /dev/null and b/public/textures/chipped/heavy_mangrove_trapdoor.png differ diff --git a/public/textures/chipped/heavy_oak_door.png b/public/textures/chipped/heavy_oak_door.png new file mode 100644 index 00000000..c5d34552 Binary files /dev/null and b/public/textures/chipped/heavy_oak_door.png differ diff --git a/public/textures/chipped/heavy_oak_trapdoor.png b/public/textures/chipped/heavy_oak_trapdoor.png new file mode 100644 index 00000000..d04b6000 Binary files /dev/null and b/public/textures/chipped/heavy_oak_trapdoor.png differ diff --git a/public/textures/chipped/heavy_spruce_door.png b/public/textures/chipped/heavy_spruce_door.png new file mode 100644 index 00000000..5f6ca0e7 Binary files /dev/null and b/public/textures/chipped/heavy_spruce_door.png differ diff --git a/public/textures/chipped/heavy_warped_door.png b/public/textures/chipped/heavy_warped_door.png new file mode 100644 index 00000000..c41ee48d Binary files /dev/null and b/public/textures/chipped/heavy_warped_door.png differ diff --git a/public/textures/chipped/heavy_warped_trapdoor.png b/public/textures/chipped/heavy_warped_trapdoor.png new file mode 100644 index 00000000..5f5e93b0 Binary files /dev/null and b/public/textures/chipped/heavy_warped_trapdoor.png differ diff --git a/public/textures/chipped/herringbone_acacia_planks.png b/public/textures/chipped/herringbone_acacia_planks.png new file mode 100644 index 00000000..b4891199 Binary files /dev/null and b/public/textures/chipped/herringbone_acacia_planks.png differ diff --git a/public/textures/chipped/herringbone_bamboo_planks.png b/public/textures/chipped/herringbone_bamboo_planks.png new file mode 100644 index 00000000..015f26c3 Binary files /dev/null and b/public/textures/chipped/herringbone_bamboo_planks.png differ diff --git a/public/textures/chipped/herringbone_birch_planks.png b/public/textures/chipped/herringbone_birch_planks.png new file mode 100644 index 00000000..5b6b2ac2 Binary files /dev/null and b/public/textures/chipped/herringbone_birch_planks.png differ diff --git a/public/textures/chipped/herringbone_cherry_planks.png b/public/textures/chipped/herringbone_cherry_planks.png new file mode 100644 index 00000000..f0df92e8 Binary files /dev/null and b/public/textures/chipped/herringbone_cherry_planks.png differ diff --git a/public/textures/chipped/herringbone_crimson_planks.png b/public/textures/chipped/herringbone_crimson_planks.png new file mode 100644 index 00000000..ffd23fa2 Binary files /dev/null and b/public/textures/chipped/herringbone_crimson_planks.png differ diff --git a/public/textures/chipped/herringbone_dark_oak_planks.png b/public/textures/chipped/herringbone_dark_oak_planks.png new file mode 100644 index 00000000..2a53a49c Binary files /dev/null and b/public/textures/chipped/herringbone_dark_oak_planks.png differ diff --git a/public/textures/chipped/herringbone_jungle_planks.png b/public/textures/chipped/herringbone_jungle_planks.png new file mode 100644 index 00000000..1e9a33bd Binary files /dev/null and b/public/textures/chipped/herringbone_jungle_planks.png differ diff --git a/public/textures/chipped/herringbone_mangrove_planks.png b/public/textures/chipped/herringbone_mangrove_planks.png new file mode 100644 index 00000000..0ce18a71 Binary files /dev/null and b/public/textures/chipped/herringbone_mangrove_planks.png differ diff --git a/public/textures/chipped/herringbone_oak_planks.png b/public/textures/chipped/herringbone_oak_planks.png new file mode 100644 index 00000000..ea1bcd6b Binary files /dev/null and b/public/textures/chipped/herringbone_oak_planks.png differ diff --git a/public/textures/chipped/herringbone_spruce_planks.png b/public/textures/chipped/herringbone_spruce_planks.png new file mode 100644 index 00000000..8aad3da0 Binary files /dev/null and b/public/textures/chipped/herringbone_spruce_planks.png differ diff --git a/public/textures/chipped/herringbone_warped_planks.png b/public/textures/chipped/herringbone_warped_planks.png new file mode 100644 index 00000000..18f579c6 Binary files /dev/null and b/public/textures/chipped/herringbone_warped_planks.png differ diff --git a/public/textures/chipped/hewn_acacia_planks.png b/public/textures/chipped/hewn_acacia_planks.png new file mode 100644 index 00000000..f38cda6d Binary files /dev/null and b/public/textures/chipped/hewn_acacia_planks.png differ diff --git a/public/textures/chipped/hewn_bamboo_planks.png b/public/textures/chipped/hewn_bamboo_planks.png new file mode 100644 index 00000000..799b1747 Binary files /dev/null and b/public/textures/chipped/hewn_bamboo_planks.png differ diff --git a/public/textures/chipped/hewn_birch_planks.png b/public/textures/chipped/hewn_birch_planks.png new file mode 100644 index 00000000..f0f42d2f Binary files /dev/null and b/public/textures/chipped/hewn_birch_planks.png differ diff --git a/public/textures/chipped/hewn_cherry_planks.png b/public/textures/chipped/hewn_cherry_planks.png new file mode 100644 index 00000000..568d21e1 Binary files /dev/null and b/public/textures/chipped/hewn_cherry_planks.png differ diff --git a/public/textures/chipped/hewn_crimson_planks.png b/public/textures/chipped/hewn_crimson_planks.png new file mode 100644 index 00000000..e7131929 Binary files /dev/null and b/public/textures/chipped/hewn_crimson_planks.png differ diff --git a/public/textures/chipped/hewn_dark_oak_planks.png b/public/textures/chipped/hewn_dark_oak_planks.png new file mode 100644 index 00000000..4241e9b9 Binary files /dev/null and b/public/textures/chipped/hewn_dark_oak_planks.png differ diff --git a/public/textures/chipped/hewn_jungle_planks.png b/public/textures/chipped/hewn_jungle_planks.png new file mode 100644 index 00000000..c8fbe78e Binary files /dev/null and b/public/textures/chipped/hewn_jungle_planks.png differ diff --git a/public/textures/chipped/hewn_mangrove_planks.png b/public/textures/chipped/hewn_mangrove_planks.png new file mode 100644 index 00000000..03deb200 Binary files /dev/null and b/public/textures/chipped/hewn_mangrove_planks.png differ diff --git a/public/textures/chipped/hewn_oak_planks.png b/public/textures/chipped/hewn_oak_planks.png new file mode 100644 index 00000000..10f4087a Binary files /dev/null and b/public/textures/chipped/hewn_oak_planks.png differ diff --git a/public/textures/chipped/hewn_spruce_planks.png b/public/textures/chipped/hewn_spruce_planks.png new file mode 100644 index 00000000..45de6c25 Binary files /dev/null and b/public/textures/chipped/hewn_spruce_planks.png differ diff --git a/public/textures/chipped/hewn_warped_planks.png b/public/textures/chipped/hewn_warped_planks.png new file mode 100644 index 00000000..044c460b Binary files /dev/null and b/public/textures/chipped/hewn_warped_planks.png differ diff --git a/public/textures/chipped/hexagonical_black_glazed_terracotta.png b/public/textures/chipped/hexagonical_black_glazed_terracotta.png new file mode 100644 index 00000000..e5d4988c Binary files /dev/null and b/public/textures/chipped/hexagonical_black_glazed_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_black_terracotta.png b/public/textures/chipped/hexagonical_black_terracotta.png new file mode 100644 index 00000000..2a04de18 Binary files /dev/null and b/public/textures/chipped/hexagonical_black_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_blue_glazed_terracotta.png b/public/textures/chipped/hexagonical_blue_glazed_terracotta.png new file mode 100644 index 00000000..98e18a7d Binary files /dev/null and b/public/textures/chipped/hexagonical_blue_glazed_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_blue_terracotta.png b/public/textures/chipped/hexagonical_blue_terracotta.png new file mode 100644 index 00000000..601df394 Binary files /dev/null and b/public/textures/chipped/hexagonical_blue_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_brown_glazed_terracotta.png b/public/textures/chipped/hexagonical_brown_glazed_terracotta.png new file mode 100644 index 00000000..54afaeae Binary files /dev/null and b/public/textures/chipped/hexagonical_brown_glazed_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_brown_terracotta.png b/public/textures/chipped/hexagonical_brown_terracotta.png new file mode 100644 index 00000000..c4ef790d Binary files /dev/null and b/public/textures/chipped/hexagonical_brown_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_cyan_glazed_terracotta.png b/public/textures/chipped/hexagonical_cyan_glazed_terracotta.png new file mode 100644 index 00000000..4cdceb71 Binary files /dev/null and b/public/textures/chipped/hexagonical_cyan_glazed_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_cyan_terracotta.png b/public/textures/chipped/hexagonical_cyan_terracotta.png new file mode 100644 index 00000000..dc77010b Binary files /dev/null and b/public/textures/chipped/hexagonical_cyan_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_gray_glazed_terracotta.png b/public/textures/chipped/hexagonical_gray_glazed_terracotta.png new file mode 100644 index 00000000..8accfb3d Binary files /dev/null and b/public/textures/chipped/hexagonical_gray_glazed_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_gray_terracotta.png b/public/textures/chipped/hexagonical_gray_terracotta.png new file mode 100644 index 00000000..0c562fc9 Binary files /dev/null and b/public/textures/chipped/hexagonical_gray_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_green_glazed_terracotta.png b/public/textures/chipped/hexagonical_green_glazed_terracotta.png new file mode 100644 index 00000000..98ad2c77 Binary files /dev/null and b/public/textures/chipped/hexagonical_green_glazed_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_green_terracotta.png b/public/textures/chipped/hexagonical_green_terracotta.png new file mode 100644 index 00000000..0f701fe7 Binary files /dev/null and b/public/textures/chipped/hexagonical_green_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_light_blue_glazed_terracotta.png b/public/textures/chipped/hexagonical_light_blue_glazed_terracotta.png new file mode 100644 index 00000000..07134638 Binary files /dev/null and b/public/textures/chipped/hexagonical_light_blue_glazed_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_light_blue_terracotta.png b/public/textures/chipped/hexagonical_light_blue_terracotta.png new file mode 100644 index 00000000..b7f2cef0 Binary files /dev/null and b/public/textures/chipped/hexagonical_light_blue_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_light_gray_glazed_terracotta.png b/public/textures/chipped/hexagonical_light_gray_glazed_terracotta.png new file mode 100644 index 00000000..c3f2183e Binary files /dev/null and b/public/textures/chipped/hexagonical_light_gray_glazed_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_light_gray_terracotta.png b/public/textures/chipped/hexagonical_light_gray_terracotta.png new file mode 100644 index 00000000..292bc44c Binary files /dev/null and b/public/textures/chipped/hexagonical_light_gray_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_lime_glazed_terracotta.png b/public/textures/chipped/hexagonical_lime_glazed_terracotta.png new file mode 100644 index 00000000..9f813606 Binary files /dev/null and b/public/textures/chipped/hexagonical_lime_glazed_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_lime_terracotta.png b/public/textures/chipped/hexagonical_lime_terracotta.png new file mode 100644 index 00000000..81cd1574 Binary files /dev/null and b/public/textures/chipped/hexagonical_lime_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_magenta_glazed_terracotta.png b/public/textures/chipped/hexagonical_magenta_glazed_terracotta.png new file mode 100644 index 00000000..2afd834e Binary files /dev/null and b/public/textures/chipped/hexagonical_magenta_glazed_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_magenta_terracotta.png b/public/textures/chipped/hexagonical_magenta_terracotta.png new file mode 100644 index 00000000..e515ba8e Binary files /dev/null and b/public/textures/chipped/hexagonical_magenta_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_orange_glazed_terracotta.png b/public/textures/chipped/hexagonical_orange_glazed_terracotta.png new file mode 100644 index 00000000..3c24bee8 Binary files /dev/null and b/public/textures/chipped/hexagonical_orange_glazed_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_orange_terracotta.png b/public/textures/chipped/hexagonical_orange_terracotta.png new file mode 100644 index 00000000..a38e22c4 Binary files /dev/null and b/public/textures/chipped/hexagonical_orange_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_pink_glazed_terracotta.png b/public/textures/chipped/hexagonical_pink_glazed_terracotta.png new file mode 100644 index 00000000..75143080 Binary files /dev/null and b/public/textures/chipped/hexagonical_pink_glazed_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_pink_terracotta.png b/public/textures/chipped/hexagonical_pink_terracotta.png new file mode 100644 index 00000000..1965ce28 Binary files /dev/null and b/public/textures/chipped/hexagonical_pink_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_purple_glazed_terracotta.png b/public/textures/chipped/hexagonical_purple_glazed_terracotta.png new file mode 100644 index 00000000..9a3ffcfe Binary files /dev/null and b/public/textures/chipped/hexagonical_purple_glazed_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_purple_terracotta.png b/public/textures/chipped/hexagonical_purple_terracotta.png new file mode 100644 index 00000000..1968ce2c Binary files /dev/null and b/public/textures/chipped/hexagonical_purple_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_red_glazed_terracotta.png b/public/textures/chipped/hexagonical_red_glazed_terracotta.png new file mode 100644 index 00000000..b84fa575 Binary files /dev/null and b/public/textures/chipped/hexagonical_red_glazed_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_red_terracotta.png b/public/textures/chipped/hexagonical_red_terracotta.png new file mode 100644 index 00000000..ceee0fda Binary files /dev/null and b/public/textures/chipped/hexagonical_red_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_terracotta.png b/public/textures/chipped/hexagonical_terracotta.png new file mode 100644 index 00000000..393c84d7 Binary files /dev/null and b/public/textures/chipped/hexagonical_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_white_glazed_terracotta.png b/public/textures/chipped/hexagonical_white_glazed_terracotta.png new file mode 100644 index 00000000..bf598764 Binary files /dev/null and b/public/textures/chipped/hexagonical_white_glazed_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_white_terracotta.png b/public/textures/chipped/hexagonical_white_terracotta.png new file mode 100644 index 00000000..67eae633 Binary files /dev/null and b/public/textures/chipped/hexagonical_white_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_yellow_glazed_terracotta.png b/public/textures/chipped/hexagonical_yellow_glazed_terracotta.png new file mode 100644 index 00000000..2fb45038 Binary files /dev/null and b/public/textures/chipped/hexagonical_yellow_glazed_terracotta.png differ diff --git a/public/textures/chipped/hexagonical_yellow_terracotta.png b/public/textures/chipped/hexagonical_yellow_terracotta.png new file mode 100644 index 00000000..2328eae6 Binary files /dev/null and b/public/textures/chipped/hexagonical_yellow_terracotta.png differ diff --git a/public/textures/chipped/high_nether_sprouts.png b/public/textures/chipped/high_nether_sprouts.png new file mode 100644 index 00000000..da49fbfe Binary files /dev/null and b/public/textures/chipped/high_nether_sprouts.png differ diff --git a/public/textures/chipped/historical_oak_bookshelf.png b/public/textures/chipped/historical_oak_bookshelf.png new file mode 100644 index 00000000..1a5665e1 Binary files /dev/null and b/public/textures/chipped/historical_oak_bookshelf.png differ diff --git a/public/textures/chipped/historical_oak_large_bookshelf.png b/public/textures/chipped/historical_oak_large_bookshelf.png new file mode 100644 index 00000000..f6092c51 Binary files /dev/null and b/public/textures/chipped/historical_oak_large_bookshelf.png differ diff --git a/public/textures/chipped/hived_glowstone.png b/public/textures/chipped/hived_glowstone.png new file mode 100644 index 00000000..8b63b82b Binary files /dev/null and b/public/textures/chipped/hived_glowstone.png differ diff --git a/public/textures/chipped/hived_redstone_lamp.png b/public/textures/chipped/hived_redstone_lamp.png new file mode 100644 index 00000000..c91cc022 Binary files /dev/null and b/public/textures/chipped/hived_redstone_lamp.png differ diff --git a/public/textures/chipped/hived_sea_lantern.png b/public/textures/chipped/hived_sea_lantern.png new file mode 100644 index 00000000..23e94f93 Binary files /dev/null and b/public/textures/chipped/hived_sea_lantern.png differ diff --git a/public/textures/chipped/hived_shroomlight.png b/public/textures/chipped/hived_shroomlight.png new file mode 100644 index 00000000..9caaa851 Binary files /dev/null and b/public/textures/chipped/hived_shroomlight.png differ diff --git a/public/textures/chipped/hived_white_redstone_lamp.png b/public/textures/chipped/hived_white_redstone_lamp.png new file mode 100644 index 00000000..a61f8c84 Binary files /dev/null and b/public/textures/chipped/hived_white_redstone_lamp.png differ diff --git a/public/textures/chipped/hooded_brown_mushroom.png b/public/textures/chipped/hooded_brown_mushroom.png new file mode 100644 index 00000000..06164444 Binary files /dev/null and b/public/textures/chipped/hooded_brown_mushroom.png differ diff --git a/public/textures/chipped/hooded_crimson_fungus.png b/public/textures/chipped/hooded_crimson_fungus.png new file mode 100644 index 00000000..4fab34c5 Binary files /dev/null and b/public/textures/chipped/hooded_crimson_fungus.png differ diff --git a/public/textures/chipped/hooded_red_mushroom.png b/public/textures/chipped/hooded_red_mushroom.png new file mode 100644 index 00000000..ad25a371 Binary files /dev/null and b/public/textures/chipped/hooded_red_mushroom.png differ diff --git a/public/textures/chipped/hooded_warped_fungus.png b/public/textures/chipped/hooded_warped_fungus.png new file mode 100644 index 00000000..81121194 Binary files /dev/null and b/public/textures/chipped/hooded_warped_fungus.png differ diff --git a/public/textures/chipped/horned_mud.png b/public/textures/chipped/horned_mud.png new file mode 100644 index 00000000..f50850ab Binary files /dev/null and b/public/textures/chipped/horned_mud.png differ diff --git a/public/textures/chipped/horned_mud_bricks.png b/public/textures/chipped/horned_mud_bricks.png new file mode 100644 index 00000000..6402b47e Binary files /dev/null and b/public/textures/chipped/horned_mud_bricks.png differ diff --git a/public/textures/chipped/horned_packed_mud.png b/public/textures/chipped/horned_packed_mud.png new file mode 100644 index 00000000..38622820 Binary files /dev/null and b/public/textures/chipped/horned_packed_mud.png differ diff --git a/public/textures/chipped/horrified_carved_pumpkin.png b/public/textures/chipped/horrified_carved_pumpkin.png new file mode 100644 index 00000000..f985d33f Binary files /dev/null and b/public/textures/chipped/horrified_carved_pumpkin.png differ diff --git a/public/textures/chipped/horrified_jack_o_lantern.png b/public/textures/chipped/horrified_jack_o_lantern.png new file mode 100644 index 00000000..167695c7 Binary files /dev/null and b/public/textures/chipped/horrified_jack_o_lantern.png differ diff --git a/public/textures/chipped/i_sign_stripped_acacia_log.png b/public/textures/chipped/i_sign_stripped_acacia_log.png new file mode 100644 index 00000000..0425d19b Binary files /dev/null and b/public/textures/chipped/i_sign_stripped_acacia_log.png differ diff --git a/public/textures/chipped/i_sign_stripped_birch_log.png b/public/textures/chipped/i_sign_stripped_birch_log.png new file mode 100644 index 00000000..d86bc298 Binary files /dev/null and b/public/textures/chipped/i_sign_stripped_birch_log.png differ diff --git a/public/textures/chipped/i_sign_stripped_cherry_log.png b/public/textures/chipped/i_sign_stripped_cherry_log.png new file mode 100644 index 00000000..6c00fef7 Binary files /dev/null and b/public/textures/chipped/i_sign_stripped_cherry_log.png differ diff --git a/public/textures/chipped/i_sign_stripped_crimson_stem.png b/public/textures/chipped/i_sign_stripped_crimson_stem.png new file mode 100644 index 00000000..1d20c6fd Binary files /dev/null and b/public/textures/chipped/i_sign_stripped_crimson_stem.png differ diff --git a/public/textures/chipped/i_sign_stripped_dark_oak_log.png b/public/textures/chipped/i_sign_stripped_dark_oak_log.png new file mode 100644 index 00000000..27ba2c96 Binary files /dev/null and b/public/textures/chipped/i_sign_stripped_dark_oak_log.png differ diff --git a/public/textures/chipped/i_sign_stripped_jungle_log.png b/public/textures/chipped/i_sign_stripped_jungle_log.png new file mode 100644 index 00000000..cea8f134 Binary files /dev/null and b/public/textures/chipped/i_sign_stripped_jungle_log.png differ diff --git a/public/textures/chipped/i_sign_stripped_mangrove_log.png b/public/textures/chipped/i_sign_stripped_mangrove_log.png new file mode 100644 index 00000000..78dcc1e9 Binary files /dev/null and b/public/textures/chipped/i_sign_stripped_mangrove_log.png differ diff --git a/public/textures/chipped/i_sign_stripped_oak_log.png b/public/textures/chipped/i_sign_stripped_oak_log.png new file mode 100644 index 00000000..79afe5c3 Binary files /dev/null and b/public/textures/chipped/i_sign_stripped_oak_log.png differ diff --git a/public/textures/chipped/i_sign_stripped_spruce_log.png b/public/textures/chipped/i_sign_stripped_spruce_log.png new file mode 100644 index 00000000..58193dad Binary files /dev/null and b/public/textures/chipped/i_sign_stripped_spruce_log.png differ diff --git a/public/textures/chipped/i_sign_stripped_warped_stem.png b/public/textures/chipped/i_sign_stripped_warped_stem.png new file mode 100644 index 00000000..65e9a529 Binary files /dev/null and b/public/textures/chipped/i_sign_stripped_warped_stem.png differ diff --git a/public/textures/chipped/ice_bricks.png b/public/textures/chipped/ice_bricks.png new file mode 100644 index 00000000..8be97d67 Binary files /dev/null and b/public/textures/chipped/ice_bricks.png differ diff --git a/public/textures/chipped/ice_mini_tiles.png b/public/textures/chipped/ice_mini_tiles.png new file mode 100644 index 00000000..9e52984b Binary files /dev/null and b/public/textures/chipped/ice_mini_tiles.png differ diff --git a/public/textures/chipped/ice_pillar.png b/public/textures/chipped/ice_pillar.png new file mode 100644 index 00000000..6b00b654 Binary files /dev/null and b/public/textures/chipped/ice_pillar.png differ diff --git a/public/textures/chipped/ice_pillar_top.png b/public/textures/chipped/ice_pillar_top.png new file mode 100644 index 00000000..e71cd2a5 Binary files /dev/null and b/public/textures/chipped/ice_pillar_top.png differ diff --git a/public/textures/chipped/ice_scales.png b/public/textures/chipped/ice_scales.png new file mode 100644 index 00000000..9414bbd6 Binary files /dev/null and b/public/textures/chipped/ice_scales.png differ diff --git a/public/textures/chipped/inlayed_amethyst_block.png b/public/textures/chipped/inlayed_amethyst_block.png new file mode 100644 index 00000000..ecd8c9f9 Binary files /dev/null and b/public/textures/chipped/inlayed_amethyst_block.png differ diff --git a/public/textures/chipped/inlayed_ancient_debris.png b/public/textures/chipped/inlayed_ancient_debris.png new file mode 100644 index 00000000..787fbe1a Binary files /dev/null and b/public/textures/chipped/inlayed_ancient_debris.png differ diff --git a/public/textures/chipped/inlayed_andesite.png b/public/textures/chipped/inlayed_andesite.png new file mode 100644 index 00000000..09267eec Binary files /dev/null and b/public/textures/chipped/inlayed_andesite.png differ diff --git a/public/textures/chipped/inlayed_basalt.png b/public/textures/chipped/inlayed_basalt.png new file mode 100644 index 00000000..93c2215d Binary files /dev/null and b/public/textures/chipped/inlayed_basalt.png differ diff --git a/public/textures/chipped/inlayed_blackstone.png b/public/textures/chipped/inlayed_blackstone.png new file mode 100644 index 00000000..d3da8b38 Binary files /dev/null and b/public/textures/chipped/inlayed_blackstone.png differ diff --git a/public/textures/chipped/inlayed_blue_ice.png b/public/textures/chipped/inlayed_blue_ice.png new file mode 100644 index 00000000..146c6aa2 Binary files /dev/null and b/public/textures/chipped/inlayed_blue_ice.png differ diff --git a/public/textures/chipped/inlayed_borderless_bricks.png b/public/textures/chipped/inlayed_borderless_bricks.png new file mode 100644 index 00000000..82e26d89 Binary files /dev/null and b/public/textures/chipped/inlayed_borderless_bricks.png differ diff --git a/public/textures/chipped/inlayed_bricks.png b/public/textures/chipped/inlayed_bricks.png new file mode 100644 index 00000000..69c21ee8 Binary files /dev/null and b/public/textures/chipped/inlayed_bricks.png differ diff --git a/public/textures/chipped/inlayed_calcite.png b/public/textures/chipped/inlayed_calcite.png new file mode 100644 index 00000000..806a4c9f Binary files /dev/null and b/public/textures/chipped/inlayed_calcite.png differ diff --git a/public/textures/chipped/inlayed_clay.png b/public/textures/chipped/inlayed_clay.png new file mode 100644 index 00000000..2d999f1c Binary files /dev/null and b/public/textures/chipped/inlayed_clay.png differ diff --git a/public/textures/chipped/inlayed_coal_block.png b/public/textures/chipped/inlayed_coal_block.png new file mode 100644 index 00000000..f078f193 Binary files /dev/null and b/public/textures/chipped/inlayed_coal_block.png differ diff --git a/public/textures/chipped/inlayed_cobblestone.png b/public/textures/chipped/inlayed_cobblestone.png new file mode 100644 index 00000000..67945eb5 Binary files /dev/null and b/public/textures/chipped/inlayed_cobblestone.png differ diff --git a/public/textures/chipped/inlayed_crying_obsidian.png b/public/textures/chipped/inlayed_crying_obsidian.png new file mode 100644 index 00000000..2a5e19ef Binary files /dev/null and b/public/textures/chipped/inlayed_crying_obsidian.png differ diff --git a/public/textures/chipped/inlayed_dark_prismarine.png b/public/textures/chipped/inlayed_dark_prismarine.png new file mode 100644 index 00000000..f9b11edf Binary files /dev/null and b/public/textures/chipped/inlayed_dark_prismarine.png differ diff --git a/public/textures/chipped/inlayed_deepslate.png b/public/textures/chipped/inlayed_deepslate.png new file mode 100644 index 00000000..8c7a6877 Binary files /dev/null and b/public/textures/chipped/inlayed_deepslate.png differ diff --git a/public/textures/chipped/inlayed_diorite.png b/public/textures/chipped/inlayed_diorite.png new file mode 100644 index 00000000..549c987c Binary files /dev/null and b/public/textures/chipped/inlayed_diorite.png differ diff --git a/public/textures/chipped/inlayed_dirt.png b/public/textures/chipped/inlayed_dirt.png new file mode 100644 index 00000000..aa6fcc41 Binary files /dev/null and b/public/textures/chipped/inlayed_dirt.png differ diff --git a/public/textures/chipped/inlayed_dripstone_block.png b/public/textures/chipped/inlayed_dripstone_block.png new file mode 100644 index 00000000..f0ca9462 Binary files /dev/null and b/public/textures/chipped/inlayed_dripstone_block.png differ diff --git a/public/textures/chipped/inlayed_end_stone.png b/public/textures/chipped/inlayed_end_stone.png new file mode 100644 index 00000000..2bce7305 Binary files /dev/null and b/public/textures/chipped/inlayed_end_stone.png differ diff --git a/public/textures/chipped/inlayed_gilded_blackstone.png b/public/textures/chipped/inlayed_gilded_blackstone.png new file mode 100644 index 00000000..1a20269a Binary files /dev/null and b/public/textures/chipped/inlayed_gilded_blackstone.png differ diff --git a/public/textures/chipped/inlayed_glowstone.png b/public/textures/chipped/inlayed_glowstone.png new file mode 100644 index 00000000..65016c0a Binary files /dev/null and b/public/textures/chipped/inlayed_glowstone.png differ diff --git a/public/textures/chipped/inlayed_granite.png b/public/textures/chipped/inlayed_granite.png new file mode 100644 index 00000000..aa7133d3 Binary files /dev/null and b/public/textures/chipped/inlayed_granite.png differ diff --git a/public/textures/chipped/inlayed_ice.png b/public/textures/chipped/inlayed_ice.png new file mode 100644 index 00000000..ab8298e9 Binary files /dev/null and b/public/textures/chipped/inlayed_ice.png differ diff --git a/public/textures/chipped/inlayed_lapis_block.png b/public/textures/chipped/inlayed_lapis_block.png new file mode 100644 index 00000000..ad53f68f Binary files /dev/null and b/public/textures/chipped/inlayed_lapis_block.png differ diff --git a/public/textures/chipped/inlayed_lodestone.png b/public/textures/chipped/inlayed_lodestone.png new file mode 100644 index 00000000..b027b341 Binary files /dev/null and b/public/textures/chipped/inlayed_lodestone.png differ diff --git a/public/textures/chipped/inlayed_magma_block.png b/public/textures/chipped/inlayed_magma_block.png new file mode 100644 index 00000000..ca8c40dd Binary files /dev/null and b/public/textures/chipped/inlayed_magma_block.png differ diff --git a/public/textures/chipped/inlayed_mossy_cobblestone.png b/public/textures/chipped/inlayed_mossy_cobblestone.png new file mode 100644 index 00000000..938e820b Binary files /dev/null and b/public/textures/chipped/inlayed_mossy_cobblestone.png differ diff --git a/public/textures/chipped/inlayed_mossy_stone_bricks.png b/public/textures/chipped/inlayed_mossy_stone_bricks.png new file mode 100644 index 00000000..413627dc Binary files /dev/null and b/public/textures/chipped/inlayed_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/inlayed_mud.png b/public/textures/chipped/inlayed_mud.png new file mode 100644 index 00000000..c5453c12 Binary files /dev/null and b/public/textures/chipped/inlayed_mud.png differ diff --git a/public/textures/chipped/inlayed_mud_bricks.png b/public/textures/chipped/inlayed_mud_bricks.png new file mode 100644 index 00000000..d01453d5 Binary files /dev/null and b/public/textures/chipped/inlayed_mud_bricks.png differ diff --git a/public/textures/chipped/inlayed_nether_bricks.png b/public/textures/chipped/inlayed_nether_bricks.png new file mode 100644 index 00000000..89cacc75 Binary files /dev/null and b/public/textures/chipped/inlayed_nether_bricks.png differ diff --git a/public/textures/chipped/inlayed_netherrack.png b/public/textures/chipped/inlayed_netherrack.png new file mode 100644 index 00000000..0e59d9f2 Binary files /dev/null and b/public/textures/chipped/inlayed_netherrack.png differ diff --git a/public/textures/chipped/inlayed_obsidian.png b/public/textures/chipped/inlayed_obsidian.png new file mode 100644 index 00000000..4ec54831 Binary files /dev/null and b/public/textures/chipped/inlayed_obsidian.png differ diff --git a/public/textures/chipped/inlayed_packed_ice.png b/public/textures/chipped/inlayed_packed_ice.png new file mode 100644 index 00000000..06ba7729 Binary files /dev/null and b/public/textures/chipped/inlayed_packed_ice.png differ diff --git a/public/textures/chipped/inlayed_packed_mud.png b/public/textures/chipped/inlayed_packed_mud.png new file mode 100644 index 00000000..04534def Binary files /dev/null and b/public/textures/chipped/inlayed_packed_mud.png differ diff --git a/public/textures/chipped/inlayed_prismarine.png b/public/textures/chipped/inlayed_prismarine.png new file mode 100644 index 00000000..066eba02 Binary files /dev/null and b/public/textures/chipped/inlayed_prismarine.png differ diff --git a/public/textures/chipped/inlayed_purpur_block.png b/public/textures/chipped/inlayed_purpur_block.png new file mode 100644 index 00000000..4f5380b5 Binary files /dev/null and b/public/textures/chipped/inlayed_purpur_block.png differ diff --git a/public/textures/chipped/inlayed_quartz_block.png b/public/textures/chipped/inlayed_quartz_block.png new file mode 100644 index 00000000..c82568d5 Binary files /dev/null and b/public/textures/chipped/inlayed_quartz_block.png differ diff --git a/public/textures/chipped/inlayed_raw_copper_block.png b/public/textures/chipped/inlayed_raw_copper_block.png new file mode 100644 index 00000000..424ce79b Binary files /dev/null and b/public/textures/chipped/inlayed_raw_copper_block.png differ diff --git a/public/textures/chipped/inlayed_raw_gold_block.png b/public/textures/chipped/inlayed_raw_gold_block.png new file mode 100644 index 00000000..e0414a25 Binary files /dev/null and b/public/textures/chipped/inlayed_raw_gold_block.png differ diff --git a/public/textures/chipped/inlayed_raw_iron_block.png b/public/textures/chipped/inlayed_raw_iron_block.png new file mode 100644 index 00000000..321ac424 Binary files /dev/null and b/public/textures/chipped/inlayed_raw_iron_block.png differ diff --git a/public/textures/chipped/inlayed_red_nether_bricks.png b/public/textures/chipped/inlayed_red_nether_bricks.png new file mode 100644 index 00000000..dcb2eace Binary files /dev/null and b/public/textures/chipped/inlayed_red_nether_bricks.png differ diff --git a/public/textures/chipped/inlayed_red_sandstone.png b/public/textures/chipped/inlayed_red_sandstone.png new file mode 100644 index 00000000..a22c1277 Binary files /dev/null and b/public/textures/chipped/inlayed_red_sandstone.png differ diff --git a/public/textures/chipped/inlayed_redstone_block.png b/public/textures/chipped/inlayed_redstone_block.png new file mode 100644 index 00000000..0d91025e Binary files /dev/null and b/public/textures/chipped/inlayed_redstone_block.png differ diff --git a/public/textures/chipped/inlayed_redstone_lamp.png b/public/textures/chipped/inlayed_redstone_lamp.png new file mode 100644 index 00000000..8162bb4c Binary files /dev/null and b/public/textures/chipped/inlayed_redstone_lamp.png differ diff --git a/public/textures/chipped/inlayed_sandstone.png b/public/textures/chipped/inlayed_sandstone.png new file mode 100644 index 00000000..d939feab Binary files /dev/null and b/public/textures/chipped/inlayed_sandstone.png differ diff --git a/public/textures/chipped/inlayed_sea_lantern.png b/public/textures/chipped/inlayed_sea_lantern.png new file mode 100644 index 00000000..36d3574b Binary files /dev/null and b/public/textures/chipped/inlayed_sea_lantern.png differ diff --git a/public/textures/chipped/inlayed_shroomlight.png b/public/textures/chipped/inlayed_shroomlight.png new file mode 100644 index 00000000..e1d4d38e Binary files /dev/null and b/public/textures/chipped/inlayed_shroomlight.png differ diff --git a/public/textures/chipped/inlayed_smooth_stone.png b/public/textures/chipped/inlayed_smooth_stone.png new file mode 100644 index 00000000..4822279c Binary files /dev/null and b/public/textures/chipped/inlayed_smooth_stone.png differ diff --git a/public/textures/chipped/inlayed_snow_block.png b/public/textures/chipped/inlayed_snow_block.png new file mode 100644 index 00000000..a95e5d05 Binary files /dev/null and b/public/textures/chipped/inlayed_snow_block.png differ diff --git a/public/textures/chipped/inlayed_stone.png b/public/textures/chipped/inlayed_stone.png new file mode 100644 index 00000000..63caaedc Binary files /dev/null and b/public/textures/chipped/inlayed_stone.png differ diff --git a/public/textures/chipped/inlayed_tuff.png b/public/textures/chipped/inlayed_tuff.png new file mode 100644 index 00000000..8139ccfa Binary files /dev/null and b/public/textures/chipped/inlayed_tuff.png differ diff --git a/public/textures/chipped/inlayed_white_redstone_lamp.png b/public/textures/chipped/inlayed_white_redstone_lamp.png new file mode 100644 index 00000000..ec2d2587 Binary files /dev/null and b/public/textures/chipped/inlayed_white_redstone_lamp.png differ diff --git a/public/textures/chipped/inscribed_amethyst_block.png b/public/textures/chipped/inscribed_amethyst_block.png new file mode 100644 index 00000000..076811bb Binary files /dev/null and b/public/textures/chipped/inscribed_amethyst_block.png differ diff --git a/public/textures/chipped/inscribed_ancient_debris.png b/public/textures/chipped/inscribed_ancient_debris.png new file mode 100644 index 00000000..2e94ced8 Binary files /dev/null and b/public/textures/chipped/inscribed_ancient_debris.png differ diff --git a/public/textures/chipped/inscribed_andesite.png b/public/textures/chipped/inscribed_andesite.png new file mode 100644 index 00000000..9b19f614 Binary files /dev/null and b/public/textures/chipped/inscribed_andesite.png differ diff --git a/public/textures/chipped/inscribed_basalt.png b/public/textures/chipped/inscribed_basalt.png new file mode 100644 index 00000000..e350b923 Binary files /dev/null and b/public/textures/chipped/inscribed_basalt.png differ diff --git a/public/textures/chipped/inscribed_black_terracotta.png b/public/textures/chipped/inscribed_black_terracotta.png new file mode 100644 index 00000000..c90b373e Binary files /dev/null and b/public/textures/chipped/inscribed_black_terracotta.png differ diff --git a/public/textures/chipped/inscribed_blackstone.png b/public/textures/chipped/inscribed_blackstone.png new file mode 100644 index 00000000..c8016592 Binary files /dev/null and b/public/textures/chipped/inscribed_blackstone.png differ diff --git a/public/textures/chipped/inscribed_blue_ice.png b/public/textures/chipped/inscribed_blue_ice.png new file mode 100644 index 00000000..d1a7ffce Binary files /dev/null and b/public/textures/chipped/inscribed_blue_ice.png differ diff --git a/public/textures/chipped/inscribed_blue_terracotta.png b/public/textures/chipped/inscribed_blue_terracotta.png new file mode 100644 index 00000000..a9bded12 Binary files /dev/null and b/public/textures/chipped/inscribed_blue_terracotta.png differ diff --git a/public/textures/chipped/inscribed_bone_block.png b/public/textures/chipped/inscribed_bone_block.png new file mode 100644 index 00000000..fc86a05b Binary files /dev/null and b/public/textures/chipped/inscribed_bone_block.png differ diff --git a/public/textures/chipped/inscribed_borderless_bricks.png b/public/textures/chipped/inscribed_borderless_bricks.png new file mode 100644 index 00000000..ba9ba86c Binary files /dev/null and b/public/textures/chipped/inscribed_borderless_bricks.png differ diff --git a/public/textures/chipped/inscribed_bricks.png b/public/textures/chipped/inscribed_bricks.png new file mode 100644 index 00000000..9cdfbd27 Binary files /dev/null and b/public/textures/chipped/inscribed_bricks.png differ diff --git a/public/textures/chipped/inscribed_brown_terracotta.png b/public/textures/chipped/inscribed_brown_terracotta.png new file mode 100644 index 00000000..63ae9d2e Binary files /dev/null and b/public/textures/chipped/inscribed_brown_terracotta.png differ diff --git a/public/textures/chipped/inscribed_calcite.png b/public/textures/chipped/inscribed_calcite.png new file mode 100644 index 00000000..332a96e8 Binary files /dev/null and b/public/textures/chipped/inscribed_calcite.png differ diff --git a/public/textures/chipped/inscribed_clay.png b/public/textures/chipped/inscribed_clay.png new file mode 100644 index 00000000..d58934c7 Binary files /dev/null and b/public/textures/chipped/inscribed_clay.png differ diff --git a/public/textures/chipped/inscribed_coal_block.png b/public/textures/chipped/inscribed_coal_block.png new file mode 100644 index 00000000..ebdafe79 Binary files /dev/null and b/public/textures/chipped/inscribed_coal_block.png differ diff --git a/public/textures/chipped/inscribed_cobblestone.png b/public/textures/chipped/inscribed_cobblestone.png new file mode 100644 index 00000000..7eaf034d Binary files /dev/null and b/public/textures/chipped/inscribed_cobblestone.png differ diff --git a/public/textures/chipped/inscribed_crying_obsidian.png b/public/textures/chipped/inscribed_crying_obsidian.png new file mode 100644 index 00000000..f79cabef Binary files /dev/null and b/public/textures/chipped/inscribed_crying_obsidian.png differ diff --git a/public/textures/chipped/inscribed_cyan_terracotta.png b/public/textures/chipped/inscribed_cyan_terracotta.png new file mode 100644 index 00000000..c29347df Binary files /dev/null and b/public/textures/chipped/inscribed_cyan_terracotta.png differ diff --git a/public/textures/chipped/inscribed_dark_prismarine.png b/public/textures/chipped/inscribed_dark_prismarine.png new file mode 100644 index 00000000..43c7aade Binary files /dev/null and b/public/textures/chipped/inscribed_dark_prismarine.png differ diff --git a/public/textures/chipped/inscribed_deepslate.png b/public/textures/chipped/inscribed_deepslate.png new file mode 100644 index 00000000..164a2601 Binary files /dev/null and b/public/textures/chipped/inscribed_deepslate.png differ diff --git a/public/textures/chipped/inscribed_diorite.png b/public/textures/chipped/inscribed_diorite.png new file mode 100644 index 00000000..7e46f053 Binary files /dev/null and b/public/textures/chipped/inscribed_diorite.png differ diff --git a/public/textures/chipped/inscribed_dirt.png b/public/textures/chipped/inscribed_dirt.png new file mode 100644 index 00000000..2e1346a2 Binary files /dev/null and b/public/textures/chipped/inscribed_dirt.png differ diff --git a/public/textures/chipped/inscribed_dripstone_block.png b/public/textures/chipped/inscribed_dripstone_block.png new file mode 100644 index 00000000..95ec7696 Binary files /dev/null and b/public/textures/chipped/inscribed_dripstone_block.png differ diff --git a/public/textures/chipped/inscribed_end_stone.png b/public/textures/chipped/inscribed_end_stone.png new file mode 100644 index 00000000..20a58057 Binary files /dev/null and b/public/textures/chipped/inscribed_end_stone.png differ diff --git a/public/textures/chipped/inscribed_gilded_blackstone.png b/public/textures/chipped/inscribed_gilded_blackstone.png new file mode 100644 index 00000000..aacc2614 Binary files /dev/null and b/public/textures/chipped/inscribed_gilded_blackstone.png differ diff --git a/public/textures/chipped/inscribed_granite.png b/public/textures/chipped/inscribed_granite.png new file mode 100644 index 00000000..736c6ac9 Binary files /dev/null and b/public/textures/chipped/inscribed_granite.png differ diff --git a/public/textures/chipped/inscribed_gray_terracotta.png b/public/textures/chipped/inscribed_gray_terracotta.png new file mode 100644 index 00000000..edce1972 Binary files /dev/null and b/public/textures/chipped/inscribed_gray_terracotta.png differ diff --git a/public/textures/chipped/inscribed_green_terracotta.png b/public/textures/chipped/inscribed_green_terracotta.png new file mode 100644 index 00000000..de9fd7c3 Binary files /dev/null and b/public/textures/chipped/inscribed_green_terracotta.png differ diff --git a/public/textures/chipped/inscribed_ice.png b/public/textures/chipped/inscribed_ice.png new file mode 100644 index 00000000..1e7ffdec Binary files /dev/null and b/public/textures/chipped/inscribed_ice.png differ diff --git a/public/textures/chipped/inscribed_lapis_block.png b/public/textures/chipped/inscribed_lapis_block.png new file mode 100644 index 00000000..2b4fc07b Binary files /dev/null and b/public/textures/chipped/inscribed_lapis_block.png differ diff --git a/public/textures/chipped/inscribed_light_blue_terracotta.png b/public/textures/chipped/inscribed_light_blue_terracotta.png new file mode 100644 index 00000000..c4754159 Binary files /dev/null and b/public/textures/chipped/inscribed_light_blue_terracotta.png differ diff --git a/public/textures/chipped/inscribed_light_gray_terracotta.png b/public/textures/chipped/inscribed_light_gray_terracotta.png new file mode 100644 index 00000000..4d202a40 Binary files /dev/null and b/public/textures/chipped/inscribed_light_gray_terracotta.png differ diff --git a/public/textures/chipped/inscribed_lime_terracotta.png b/public/textures/chipped/inscribed_lime_terracotta.png new file mode 100644 index 00000000..6f26b2bf Binary files /dev/null and b/public/textures/chipped/inscribed_lime_terracotta.png differ diff --git a/public/textures/chipped/inscribed_lodestone.png b/public/textures/chipped/inscribed_lodestone.png new file mode 100644 index 00000000..121bdd1f Binary files /dev/null and b/public/textures/chipped/inscribed_lodestone.png differ diff --git a/public/textures/chipped/inscribed_magenta_terracotta.png b/public/textures/chipped/inscribed_magenta_terracotta.png new file mode 100644 index 00000000..9800363a Binary files /dev/null and b/public/textures/chipped/inscribed_magenta_terracotta.png differ diff --git a/public/textures/chipped/inscribed_magma_block.png b/public/textures/chipped/inscribed_magma_block.png new file mode 100644 index 00000000..332e5554 Binary files /dev/null and b/public/textures/chipped/inscribed_magma_block.png differ diff --git a/public/textures/chipped/inscribed_mossy_cobblestone.png b/public/textures/chipped/inscribed_mossy_cobblestone.png new file mode 100644 index 00000000..573f0561 Binary files /dev/null and b/public/textures/chipped/inscribed_mossy_cobblestone.png differ diff --git a/public/textures/chipped/inscribed_mossy_stone_bricks.png b/public/textures/chipped/inscribed_mossy_stone_bricks.png new file mode 100644 index 00000000..32baf31a Binary files /dev/null and b/public/textures/chipped/inscribed_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/inscribed_nether_bricks.png b/public/textures/chipped/inscribed_nether_bricks.png new file mode 100644 index 00000000..d2abe87f Binary files /dev/null and b/public/textures/chipped/inscribed_nether_bricks.png differ diff --git a/public/textures/chipped/inscribed_netherrack.png b/public/textures/chipped/inscribed_netherrack.png new file mode 100644 index 00000000..83a94dae Binary files /dev/null and b/public/textures/chipped/inscribed_netherrack.png differ diff --git a/public/textures/chipped/inscribed_obsidian.png b/public/textures/chipped/inscribed_obsidian.png new file mode 100644 index 00000000..321b16c7 Binary files /dev/null and b/public/textures/chipped/inscribed_obsidian.png differ diff --git a/public/textures/chipped/inscribed_orange_terracotta.png b/public/textures/chipped/inscribed_orange_terracotta.png new file mode 100644 index 00000000..162ac2e7 Binary files /dev/null and b/public/textures/chipped/inscribed_orange_terracotta.png differ diff --git a/public/textures/chipped/inscribed_packed_ice.png b/public/textures/chipped/inscribed_packed_ice.png new file mode 100644 index 00000000..aa89c6e0 Binary files /dev/null and b/public/textures/chipped/inscribed_packed_ice.png differ diff --git a/public/textures/chipped/inscribed_pink_terracotta.png b/public/textures/chipped/inscribed_pink_terracotta.png new file mode 100644 index 00000000..fc066ad0 Binary files /dev/null and b/public/textures/chipped/inscribed_pink_terracotta.png differ diff --git a/public/textures/chipped/inscribed_prismarine.png b/public/textures/chipped/inscribed_prismarine.png new file mode 100644 index 00000000..103359e0 Binary files /dev/null and b/public/textures/chipped/inscribed_prismarine.png differ diff --git a/public/textures/chipped/inscribed_purple_terracotta.png b/public/textures/chipped/inscribed_purple_terracotta.png new file mode 100644 index 00000000..785d818e Binary files /dev/null and b/public/textures/chipped/inscribed_purple_terracotta.png differ diff --git a/public/textures/chipped/inscribed_purpur_block.png b/public/textures/chipped/inscribed_purpur_block.png new file mode 100644 index 00000000..799d5eee Binary files /dev/null and b/public/textures/chipped/inscribed_purpur_block.png differ diff --git a/public/textures/chipped/inscribed_quartz_block.png b/public/textures/chipped/inscribed_quartz_block.png new file mode 100644 index 00000000..a702c5fe Binary files /dev/null and b/public/textures/chipped/inscribed_quartz_block.png differ diff --git a/public/textures/chipped/inscribed_raw_copper_block.png b/public/textures/chipped/inscribed_raw_copper_block.png new file mode 100644 index 00000000..2ea7941f Binary files /dev/null and b/public/textures/chipped/inscribed_raw_copper_block.png differ diff --git a/public/textures/chipped/inscribed_raw_gold_block.png b/public/textures/chipped/inscribed_raw_gold_block.png new file mode 100644 index 00000000..d52bd07c Binary files /dev/null and b/public/textures/chipped/inscribed_raw_gold_block.png differ diff --git a/public/textures/chipped/inscribed_raw_iron_block.png b/public/textures/chipped/inscribed_raw_iron_block.png new file mode 100644 index 00000000..5230a47a Binary files /dev/null and b/public/textures/chipped/inscribed_raw_iron_block.png differ diff --git a/public/textures/chipped/inscribed_red_nether_bricks.png b/public/textures/chipped/inscribed_red_nether_bricks.png new file mode 100644 index 00000000..f3a077da Binary files /dev/null and b/public/textures/chipped/inscribed_red_nether_bricks.png differ diff --git a/public/textures/chipped/inscribed_red_sandstone.png b/public/textures/chipped/inscribed_red_sandstone.png new file mode 100644 index 00000000..5f020083 Binary files /dev/null and b/public/textures/chipped/inscribed_red_sandstone.png differ diff --git a/public/textures/chipped/inscribed_red_terracotta.png b/public/textures/chipped/inscribed_red_terracotta.png new file mode 100644 index 00000000..0224c192 Binary files /dev/null and b/public/textures/chipped/inscribed_red_terracotta.png differ diff --git a/public/textures/chipped/inscribed_redstone_block.png b/public/textures/chipped/inscribed_redstone_block.png new file mode 100644 index 00000000..3b3b89e7 Binary files /dev/null and b/public/textures/chipped/inscribed_redstone_block.png differ diff --git a/public/textures/chipped/inscribed_sandstone.png b/public/textures/chipped/inscribed_sandstone.png new file mode 100644 index 00000000..e8173c89 Binary files /dev/null and b/public/textures/chipped/inscribed_sandstone.png differ diff --git a/public/textures/chipped/inscribed_smooth_stone.png b/public/textures/chipped/inscribed_smooth_stone.png new file mode 100644 index 00000000..5f3c7182 Binary files /dev/null and b/public/textures/chipped/inscribed_smooth_stone.png differ diff --git a/public/textures/chipped/inscribed_snow_block.png b/public/textures/chipped/inscribed_snow_block.png new file mode 100644 index 00000000..acb2c090 Binary files /dev/null and b/public/textures/chipped/inscribed_snow_block.png differ diff --git a/public/textures/chipped/inscribed_stone.png b/public/textures/chipped/inscribed_stone.png new file mode 100644 index 00000000..1e9b8ef5 Binary files /dev/null and b/public/textures/chipped/inscribed_stone.png differ diff --git a/public/textures/chipped/inscribed_terracotta.png b/public/textures/chipped/inscribed_terracotta.png new file mode 100644 index 00000000..e5c779a5 Binary files /dev/null and b/public/textures/chipped/inscribed_terracotta.png differ diff --git a/public/textures/chipped/inscribed_tuff.png b/public/textures/chipped/inscribed_tuff.png new file mode 100644 index 00000000..33b4ecc8 Binary files /dev/null and b/public/textures/chipped/inscribed_tuff.png differ diff --git a/public/textures/chipped/inscribed_white_terracotta.png b/public/textures/chipped/inscribed_white_terracotta.png new file mode 100644 index 00000000..50eda93e Binary files /dev/null and b/public/textures/chipped/inscribed_white_terracotta.png differ diff --git a/public/textures/chipped/inscribed_yellow_terracotta.png b/public/textures/chipped/inscribed_yellow_terracotta.png new file mode 100644 index 00000000..e8485a81 Binary files /dev/null and b/public/textures/chipped/inscribed_yellow_terracotta.png differ diff --git a/public/textures/chipped/iron_barred_acacia_trapdoor.png b/public/textures/chipped/iron_barred_acacia_trapdoor.png new file mode 100644 index 00000000..83a65fe4 Binary files /dev/null and b/public/textures/chipped/iron_barred_acacia_trapdoor.png differ diff --git a/public/textures/chipped/iron_barred_bamboo_trapdoor.png b/public/textures/chipped/iron_barred_bamboo_trapdoor.png new file mode 100644 index 00000000..7640c29e Binary files /dev/null and b/public/textures/chipped/iron_barred_bamboo_trapdoor.png differ diff --git a/public/textures/chipped/iron_barred_birch_trapdoor.png b/public/textures/chipped/iron_barred_birch_trapdoor.png new file mode 100644 index 00000000..bb4c9c79 Binary files /dev/null and b/public/textures/chipped/iron_barred_birch_trapdoor.png differ diff --git a/public/textures/chipped/iron_barred_cherry_trapdoor.png b/public/textures/chipped/iron_barred_cherry_trapdoor.png new file mode 100644 index 00000000..aafdbb66 Binary files /dev/null and b/public/textures/chipped/iron_barred_cherry_trapdoor.png differ diff --git a/public/textures/chipped/iron_barred_crimson_trapdoor.png b/public/textures/chipped/iron_barred_crimson_trapdoor.png new file mode 100644 index 00000000..6faf96bc Binary files /dev/null and b/public/textures/chipped/iron_barred_crimson_trapdoor.png differ diff --git a/public/textures/chipped/iron_barred_dark_oak_trapdoor.png b/public/textures/chipped/iron_barred_dark_oak_trapdoor.png new file mode 100644 index 00000000..6804878e Binary files /dev/null and b/public/textures/chipped/iron_barred_dark_oak_trapdoor.png differ diff --git a/public/textures/chipped/iron_barred_jungle_trapdoor.png b/public/textures/chipped/iron_barred_jungle_trapdoor.png new file mode 100644 index 00000000..190f182a Binary files /dev/null and b/public/textures/chipped/iron_barred_jungle_trapdoor.png differ diff --git a/public/textures/chipped/iron_barred_mangrove_trapdoor.png b/public/textures/chipped/iron_barred_mangrove_trapdoor.png new file mode 100644 index 00000000..209e38c9 Binary files /dev/null and b/public/textures/chipped/iron_barred_mangrove_trapdoor.png differ diff --git a/public/textures/chipped/iron_barred_oak_trapdoor.png b/public/textures/chipped/iron_barred_oak_trapdoor.png new file mode 100644 index 00000000..8dd73612 Binary files /dev/null and b/public/textures/chipped/iron_barred_oak_trapdoor.png differ diff --git a/public/textures/chipped/iron_barred_spruce_trapdoor.png b/public/textures/chipped/iron_barred_spruce_trapdoor.png new file mode 100644 index 00000000..ed89b654 Binary files /dev/null and b/public/textures/chipped/iron_barred_spruce_trapdoor.png differ diff --git a/public/textures/chipped/iron_barred_warped_trapdoor.png b/public/textures/chipped/iron_barred_warped_trapdoor.png new file mode 100644 index 00000000..539d3a34 Binary files /dev/null and b/public/textures/chipped/iron_barred_warped_trapdoor.png differ diff --git a/public/textures/chipped/iron_barrel.png b/public/textures/chipped/iron_barrel.png new file mode 100644 index 00000000..02996b7d Binary files /dev/null and b/public/textures/chipped/iron_barrel.png differ diff --git a/public/textures/chipped/iron_bars_top.png b/public/textures/chipped/iron_bars_top.png new file mode 100644 index 00000000..72a2062d Binary files /dev/null and b/public/textures/chipped/iron_bars_top.png differ diff --git a/public/textures/chipped/iron_block_panels.png b/public/textures/chipped/iron_block_panels.png new file mode 100644 index 00000000..fc715b34 Binary files /dev/null and b/public/textures/chipped/iron_block_panels.png differ diff --git a/public/textures/chipped/iron_bowl_lantern.png b/public/textures/chipped/iron_bowl_lantern.png new file mode 100644 index 00000000..07a63906 Binary files /dev/null and b/public/textures/chipped/iron_bowl_lantern.png differ diff --git a/public/textures/chipped/iron_bowl_soul_lantern.png b/public/textures/chipped/iron_bowl_soul_lantern.png new file mode 100644 index 00000000..28fe0f7b Binary files /dev/null and b/public/textures/chipped/iron_bowl_soul_lantern.png differ diff --git a/public/textures/chipped/iron_torch.png b/public/textures/chipped/iron_torch.png new file mode 100644 index 00000000..5f3bd27d Binary files /dev/null and b/public/textures/chipped/iron_torch.png differ diff --git a/public/textures/chipped/ivy_vine.png b/public/textures/chipped/ivy_vine.png new file mode 100644 index 00000000..05f6b91d Binary files /dev/null and b/public/textures/chipped/ivy_vine.png differ diff --git a/public/textures/chipped/jungle_crate.png b/public/textures/chipped/jungle_crate.png new file mode 100644 index 00000000..7bef5275 Binary files /dev/null and b/public/textures/chipped/jungle_crate.png differ diff --git a/public/textures/chipped/jungle_hay_block.png b/public/textures/chipped/jungle_hay_block.png new file mode 100644 index 00000000..37d2f88e Binary files /dev/null and b/public/textures/chipped/jungle_hay_block.png differ diff --git a/public/textures/chipped/jungle_planks_mosaic.png b/public/textures/chipped/jungle_planks_mosaic.png new file mode 100644 index 00000000..bbe61725 Binary files /dev/null and b/public/textures/chipped/jungle_planks_mosaic.png differ diff --git a/public/textures/chipped/jungle_planks_panel.png b/public/textures/chipped/jungle_planks_panel.png new file mode 100644 index 00000000..1cb1dc8b Binary files /dev/null and b/public/textures/chipped/jungle_planks_panel.png differ diff --git a/public/textures/chipped/jungle_planks_shavings.png b/public/textures/chipped/jungle_planks_shavings.png new file mode 100644 index 00000000..96b0bb82 Binary files /dev/null and b/public/textures/chipped/jungle_planks_shavings.png differ diff --git a/public/textures/chipped/jungle_torch.png b/public/textures/chipped/jungle_torch.png new file mode 100644 index 00000000..bc90a0db Binary files /dev/null and b/public/textures/chipped/jungle_torch.png differ diff --git a/public/textures/chipped/k_sign_stripped_acacia_log.png b/public/textures/chipped/k_sign_stripped_acacia_log.png new file mode 100644 index 00000000..2e8e13c0 Binary files /dev/null and b/public/textures/chipped/k_sign_stripped_acacia_log.png differ diff --git a/public/textures/chipped/k_sign_stripped_birch_log.png b/public/textures/chipped/k_sign_stripped_birch_log.png new file mode 100644 index 00000000..6aba5261 Binary files /dev/null and b/public/textures/chipped/k_sign_stripped_birch_log.png differ diff --git a/public/textures/chipped/k_sign_stripped_cherry_log.png b/public/textures/chipped/k_sign_stripped_cherry_log.png new file mode 100644 index 00000000..42c1917c Binary files /dev/null and b/public/textures/chipped/k_sign_stripped_cherry_log.png differ diff --git a/public/textures/chipped/k_sign_stripped_crimson_stem.png b/public/textures/chipped/k_sign_stripped_crimson_stem.png new file mode 100644 index 00000000..efc374a8 Binary files /dev/null and b/public/textures/chipped/k_sign_stripped_crimson_stem.png differ diff --git a/public/textures/chipped/k_sign_stripped_dark_oak_log.png b/public/textures/chipped/k_sign_stripped_dark_oak_log.png new file mode 100644 index 00000000..1227aba9 Binary files /dev/null and b/public/textures/chipped/k_sign_stripped_dark_oak_log.png differ diff --git a/public/textures/chipped/k_sign_stripped_jungle_log.png b/public/textures/chipped/k_sign_stripped_jungle_log.png new file mode 100644 index 00000000..1f9c233d Binary files /dev/null and b/public/textures/chipped/k_sign_stripped_jungle_log.png differ diff --git a/public/textures/chipped/k_sign_stripped_mangrove_log.png b/public/textures/chipped/k_sign_stripped_mangrove_log.png new file mode 100644 index 00000000..e65154cb Binary files /dev/null and b/public/textures/chipped/k_sign_stripped_mangrove_log.png differ diff --git a/public/textures/chipped/k_sign_stripped_oak_log.png b/public/textures/chipped/k_sign_stripped_oak_log.png new file mode 100644 index 00000000..084cdac0 Binary files /dev/null and b/public/textures/chipped/k_sign_stripped_oak_log.png differ diff --git a/public/textures/chipped/k_sign_stripped_spruce_log.png b/public/textures/chipped/k_sign_stripped_spruce_log.png new file mode 100644 index 00000000..43d69fc4 Binary files /dev/null and b/public/textures/chipped/k_sign_stripped_spruce_log.png differ diff --git a/public/textures/chipped/k_sign_stripped_warped_stem.png b/public/textures/chipped/k_sign_stripped_warped_stem.png new file mode 100644 index 00000000..288f471d Binary files /dev/null and b/public/textures/chipped/k_sign_stripped_warped_stem.png differ diff --git a/public/textures/chipped/kabotchkin.png b/public/textures/chipped/kabotchkin.png new file mode 100644 index 00000000..785c0ee0 Binary files /dev/null and b/public/textures/chipped/kabotchkin.png differ diff --git a/public/textures/chipped/kelp_sand.png b/public/textures/chipped/kelp_sand.png new file mode 100644 index 00000000..d92cb0df Binary files /dev/null and b/public/textures/chipped/kelp_sand.png differ diff --git a/public/textures/chipped/keyhole_mud.png b/public/textures/chipped/keyhole_mud.png new file mode 100644 index 00000000..75f8eb27 Binary files /dev/null and b/public/textures/chipped/keyhole_mud.png differ diff --git a/public/textures/chipped/keyhole_mud_bricks.png b/public/textures/chipped/keyhole_mud_bricks.png new file mode 100644 index 00000000..719a3460 Binary files /dev/null and b/public/textures/chipped/keyhole_mud_bricks.png differ diff --git a/public/textures/chipped/keyhole_packed_mud.png b/public/textures/chipped/keyhole_packed_mud.png new file mode 100644 index 00000000..ff230512 Binary files /dev/null and b/public/textures/chipped/keyhole_packed_mud.png differ diff --git a/public/textures/chipped/kitty_faced_carved_pumpkin.png b/public/textures/chipped/kitty_faced_carved_pumpkin.png new file mode 100644 index 00000000..6ee809c2 Binary files /dev/null and b/public/textures/chipped/kitty_faced_carved_pumpkin.png differ diff --git a/public/textures/chipped/kitty_faced_jack_o_lantern.png b/public/textures/chipped/kitty_faced_jack_o_lantern.png new file mode 100644 index 00000000..c5e6fa01 Binary files /dev/null and b/public/textures/chipped/kitty_faced_jack_o_lantern.png differ diff --git a/public/textures/chipped/knitted_black_carpet.png b/public/textures/chipped/knitted_black_carpet.png new file mode 100644 index 00000000..65062918 Binary files /dev/null and b/public/textures/chipped/knitted_black_carpet.png differ diff --git a/public/textures/chipped/knitted_black_wool.png b/public/textures/chipped/knitted_black_wool.png new file mode 100644 index 00000000..7c068abe Binary files /dev/null and b/public/textures/chipped/knitted_black_wool.png differ diff --git a/public/textures/chipped/knitted_blue_carpet.png b/public/textures/chipped/knitted_blue_carpet.png new file mode 100644 index 00000000..8d78076c Binary files /dev/null and b/public/textures/chipped/knitted_blue_carpet.png differ diff --git a/public/textures/chipped/knitted_blue_wool.png b/public/textures/chipped/knitted_blue_wool.png new file mode 100644 index 00000000..604360c7 Binary files /dev/null and b/public/textures/chipped/knitted_blue_wool.png differ diff --git a/public/textures/chipped/knitted_brown_carpet.png b/public/textures/chipped/knitted_brown_carpet.png new file mode 100644 index 00000000..5f6d15d7 Binary files /dev/null and b/public/textures/chipped/knitted_brown_carpet.png differ diff --git a/public/textures/chipped/knitted_brown_wool.png b/public/textures/chipped/knitted_brown_wool.png new file mode 100644 index 00000000..8843b492 Binary files /dev/null and b/public/textures/chipped/knitted_brown_wool.png differ diff --git a/public/textures/chipped/knitted_cyan_carpet.png b/public/textures/chipped/knitted_cyan_carpet.png new file mode 100644 index 00000000..4b92e9f0 Binary files /dev/null and b/public/textures/chipped/knitted_cyan_carpet.png differ diff --git a/public/textures/chipped/knitted_cyan_wool.png b/public/textures/chipped/knitted_cyan_wool.png new file mode 100644 index 00000000..1e3c7da2 Binary files /dev/null and b/public/textures/chipped/knitted_cyan_wool.png differ diff --git a/public/textures/chipped/knitted_gray_carpet.png b/public/textures/chipped/knitted_gray_carpet.png new file mode 100644 index 00000000..ad8e3083 Binary files /dev/null and b/public/textures/chipped/knitted_gray_carpet.png differ diff --git a/public/textures/chipped/knitted_gray_wool.png b/public/textures/chipped/knitted_gray_wool.png new file mode 100644 index 00000000..7d25ad01 Binary files /dev/null and b/public/textures/chipped/knitted_gray_wool.png differ diff --git a/public/textures/chipped/knitted_green_carpet.png b/public/textures/chipped/knitted_green_carpet.png new file mode 100644 index 00000000..535f8ab6 Binary files /dev/null and b/public/textures/chipped/knitted_green_carpet.png differ diff --git a/public/textures/chipped/knitted_green_wool.png b/public/textures/chipped/knitted_green_wool.png new file mode 100644 index 00000000..0c82e9c8 Binary files /dev/null and b/public/textures/chipped/knitted_green_wool.png differ diff --git a/public/textures/chipped/knitted_light_blue_carpet.png b/public/textures/chipped/knitted_light_blue_carpet.png new file mode 100644 index 00000000..5cfed0a7 Binary files /dev/null and b/public/textures/chipped/knitted_light_blue_carpet.png differ diff --git a/public/textures/chipped/knitted_light_blue_wool.png b/public/textures/chipped/knitted_light_blue_wool.png new file mode 100644 index 00000000..f62d94f3 Binary files /dev/null and b/public/textures/chipped/knitted_light_blue_wool.png differ diff --git a/public/textures/chipped/knitted_light_gray_carpet.png b/public/textures/chipped/knitted_light_gray_carpet.png new file mode 100644 index 00000000..d16db0fe Binary files /dev/null and b/public/textures/chipped/knitted_light_gray_carpet.png differ diff --git a/public/textures/chipped/knitted_light_gray_wool.png b/public/textures/chipped/knitted_light_gray_wool.png new file mode 100644 index 00000000..7512dc9c Binary files /dev/null and b/public/textures/chipped/knitted_light_gray_wool.png differ diff --git a/public/textures/chipped/knitted_lime_carpet.png b/public/textures/chipped/knitted_lime_carpet.png new file mode 100644 index 00000000..1efc3273 Binary files /dev/null and b/public/textures/chipped/knitted_lime_carpet.png differ diff --git a/public/textures/chipped/knitted_lime_wool.png b/public/textures/chipped/knitted_lime_wool.png new file mode 100644 index 00000000..15542e6c Binary files /dev/null and b/public/textures/chipped/knitted_lime_wool.png differ diff --git a/public/textures/chipped/knitted_magenta_carpet.png b/public/textures/chipped/knitted_magenta_carpet.png new file mode 100644 index 00000000..db01d701 Binary files /dev/null and b/public/textures/chipped/knitted_magenta_carpet.png differ diff --git a/public/textures/chipped/knitted_magenta_wool.png b/public/textures/chipped/knitted_magenta_wool.png new file mode 100644 index 00000000..7b950925 Binary files /dev/null and b/public/textures/chipped/knitted_magenta_wool.png differ diff --git a/public/textures/chipped/knitted_orange_carpet.png b/public/textures/chipped/knitted_orange_carpet.png new file mode 100644 index 00000000..c4d11e83 Binary files /dev/null and b/public/textures/chipped/knitted_orange_carpet.png differ diff --git a/public/textures/chipped/knitted_orange_wool.png b/public/textures/chipped/knitted_orange_wool.png new file mode 100644 index 00000000..983712d9 Binary files /dev/null and b/public/textures/chipped/knitted_orange_wool.png differ diff --git a/public/textures/chipped/knitted_pink_carpet.png b/public/textures/chipped/knitted_pink_carpet.png new file mode 100644 index 00000000..e7267f91 Binary files /dev/null and b/public/textures/chipped/knitted_pink_carpet.png differ diff --git a/public/textures/chipped/knitted_pink_wool.png b/public/textures/chipped/knitted_pink_wool.png new file mode 100644 index 00000000..02643dee Binary files /dev/null and b/public/textures/chipped/knitted_pink_wool.png differ diff --git a/public/textures/chipped/knitted_purple_carpet.png b/public/textures/chipped/knitted_purple_carpet.png new file mode 100644 index 00000000..ed89b789 Binary files /dev/null and b/public/textures/chipped/knitted_purple_carpet.png differ diff --git a/public/textures/chipped/knitted_purple_wool.png b/public/textures/chipped/knitted_purple_wool.png new file mode 100644 index 00000000..20896da6 Binary files /dev/null and b/public/textures/chipped/knitted_purple_wool.png differ diff --git a/public/textures/chipped/knitted_red_carpet.png b/public/textures/chipped/knitted_red_carpet.png new file mode 100644 index 00000000..565ca3f8 Binary files /dev/null and b/public/textures/chipped/knitted_red_carpet.png differ diff --git a/public/textures/chipped/knitted_red_wool.png b/public/textures/chipped/knitted_red_wool.png new file mode 100644 index 00000000..80565b25 Binary files /dev/null and b/public/textures/chipped/knitted_red_wool.png differ diff --git a/public/textures/chipped/knitted_white_carpet.png b/public/textures/chipped/knitted_white_carpet.png new file mode 100644 index 00000000..fa98fc67 Binary files /dev/null and b/public/textures/chipped/knitted_white_carpet.png differ diff --git a/public/textures/chipped/knitted_white_wool.png b/public/textures/chipped/knitted_white_wool.png new file mode 100644 index 00000000..b373257b Binary files /dev/null and b/public/textures/chipped/knitted_white_wool.png differ diff --git a/public/textures/chipped/knitted_yellow_carpet.png b/public/textures/chipped/knitted_yellow_carpet.png new file mode 100644 index 00000000..fe2a8924 Binary files /dev/null and b/public/textures/chipped/knitted_yellow_carpet.png differ diff --git a/public/textures/chipped/knitted_yellow_wool.png b/public/textures/chipped/knitted_yellow_wool.png new file mode 100644 index 00000000..51fee7ee Binary files /dev/null and b/public/textures/chipped/knitted_yellow_wool.png differ diff --git a/public/textures/chipped/knotted_stripped_acacia_log.png b/public/textures/chipped/knotted_stripped_acacia_log.png new file mode 100644 index 00000000..806e17e1 Binary files /dev/null and b/public/textures/chipped/knotted_stripped_acacia_log.png differ diff --git a/public/textures/chipped/knotted_stripped_birch_log.png b/public/textures/chipped/knotted_stripped_birch_log.png new file mode 100644 index 00000000..9150b537 Binary files /dev/null and b/public/textures/chipped/knotted_stripped_birch_log.png differ diff --git a/public/textures/chipped/knotted_stripped_cherry_log.png b/public/textures/chipped/knotted_stripped_cherry_log.png new file mode 100644 index 00000000..cbd4c200 Binary files /dev/null and b/public/textures/chipped/knotted_stripped_cherry_log.png differ diff --git a/public/textures/chipped/knotted_stripped_crimson_stem.png b/public/textures/chipped/knotted_stripped_crimson_stem.png new file mode 100644 index 00000000..7197a7c3 Binary files /dev/null and b/public/textures/chipped/knotted_stripped_crimson_stem.png differ diff --git a/public/textures/chipped/knotted_stripped_dark_oak_log.png b/public/textures/chipped/knotted_stripped_dark_oak_log.png new file mode 100644 index 00000000..55450765 Binary files /dev/null and b/public/textures/chipped/knotted_stripped_dark_oak_log.png differ diff --git a/public/textures/chipped/knotted_stripped_jungle_log.png b/public/textures/chipped/knotted_stripped_jungle_log.png new file mode 100644 index 00000000..c106ee3b Binary files /dev/null and b/public/textures/chipped/knotted_stripped_jungle_log.png differ diff --git a/public/textures/chipped/knotted_stripped_mangrove_log.png b/public/textures/chipped/knotted_stripped_mangrove_log.png new file mode 100644 index 00000000..0aefbf0a Binary files /dev/null and b/public/textures/chipped/knotted_stripped_mangrove_log.png differ diff --git a/public/textures/chipped/knotted_stripped_oak_log.png b/public/textures/chipped/knotted_stripped_oak_log.png new file mode 100644 index 00000000..64f0327f Binary files /dev/null and b/public/textures/chipped/knotted_stripped_oak_log.png differ diff --git a/public/textures/chipped/knotted_stripped_spruce_log.png b/public/textures/chipped/knotted_stripped_spruce_log.png new file mode 100644 index 00000000..0afc2070 Binary files /dev/null and b/public/textures/chipped/knotted_stripped_spruce_log.png differ diff --git a/public/textures/chipped/knotted_stripped_warped_stem.png b/public/textures/chipped/knotted_stripped_warped_stem.png new file mode 100644 index 00000000..838c75ac Binary files /dev/null and b/public/textures/chipped/knotted_stripped_warped_stem.png differ diff --git a/public/textures/chipped/l_sign_stripped_acacia_log.png b/public/textures/chipped/l_sign_stripped_acacia_log.png new file mode 100644 index 00000000..033e34b8 Binary files /dev/null and b/public/textures/chipped/l_sign_stripped_acacia_log.png differ diff --git a/public/textures/chipped/l_sign_stripped_birch_log.png b/public/textures/chipped/l_sign_stripped_birch_log.png new file mode 100644 index 00000000..9cfe8ee3 Binary files /dev/null and b/public/textures/chipped/l_sign_stripped_birch_log.png differ diff --git a/public/textures/chipped/l_sign_stripped_cherry_log.png b/public/textures/chipped/l_sign_stripped_cherry_log.png new file mode 100644 index 00000000..e4e429bf Binary files /dev/null and b/public/textures/chipped/l_sign_stripped_cherry_log.png differ diff --git a/public/textures/chipped/l_sign_stripped_crimson_stem.png b/public/textures/chipped/l_sign_stripped_crimson_stem.png new file mode 100644 index 00000000..45f00abd Binary files /dev/null and b/public/textures/chipped/l_sign_stripped_crimson_stem.png differ diff --git a/public/textures/chipped/l_sign_stripped_dark_oak_log.png b/public/textures/chipped/l_sign_stripped_dark_oak_log.png new file mode 100644 index 00000000..0b8a2030 Binary files /dev/null and b/public/textures/chipped/l_sign_stripped_dark_oak_log.png differ diff --git a/public/textures/chipped/l_sign_stripped_jungle_log.png b/public/textures/chipped/l_sign_stripped_jungle_log.png new file mode 100644 index 00000000..7f01ce8c Binary files /dev/null and b/public/textures/chipped/l_sign_stripped_jungle_log.png differ diff --git a/public/textures/chipped/l_sign_stripped_mangrove_log.png b/public/textures/chipped/l_sign_stripped_mangrove_log.png new file mode 100644 index 00000000..5075b397 Binary files /dev/null and b/public/textures/chipped/l_sign_stripped_mangrove_log.png differ diff --git a/public/textures/chipped/l_sign_stripped_oak_log.png b/public/textures/chipped/l_sign_stripped_oak_log.png new file mode 100644 index 00000000..c971a7a1 Binary files /dev/null and b/public/textures/chipped/l_sign_stripped_oak_log.png differ diff --git a/public/textures/chipped/l_sign_stripped_spruce_log.png b/public/textures/chipped/l_sign_stripped_spruce_log.png new file mode 100644 index 00000000..307bb4ac Binary files /dev/null and b/public/textures/chipped/l_sign_stripped_spruce_log.png differ diff --git a/public/textures/chipped/l_sign_stripped_warped_stem.png b/public/textures/chipped/l_sign_stripped_warped_stem.png new file mode 100644 index 00000000..7bb2deb1 Binary files /dev/null and b/public/textures/chipped/l_sign_stripped_warped_stem.png differ diff --git a/public/textures/chipped/laced_acacia_planks.png b/public/textures/chipped/laced_acacia_planks.png new file mode 100644 index 00000000..92ed11cb Binary files /dev/null and b/public/textures/chipped/laced_acacia_planks.png differ diff --git a/public/textures/chipped/laced_bamboo_planks.png b/public/textures/chipped/laced_bamboo_planks.png new file mode 100644 index 00000000..fed0da96 Binary files /dev/null and b/public/textures/chipped/laced_bamboo_planks.png differ diff --git a/public/textures/chipped/laced_birch_planks.png b/public/textures/chipped/laced_birch_planks.png new file mode 100644 index 00000000..9f9b2622 Binary files /dev/null and b/public/textures/chipped/laced_birch_planks.png differ diff --git a/public/textures/chipped/laced_cherry_planks.png b/public/textures/chipped/laced_cherry_planks.png new file mode 100644 index 00000000..092f7ac6 Binary files /dev/null and b/public/textures/chipped/laced_cherry_planks.png differ diff --git a/public/textures/chipped/laced_crimson_planks.png b/public/textures/chipped/laced_crimson_planks.png new file mode 100644 index 00000000..95249d62 Binary files /dev/null and b/public/textures/chipped/laced_crimson_planks.png differ diff --git a/public/textures/chipped/laced_dark_oak_planks.png b/public/textures/chipped/laced_dark_oak_planks.png new file mode 100644 index 00000000..97292b8b Binary files /dev/null and b/public/textures/chipped/laced_dark_oak_planks.png differ diff --git a/public/textures/chipped/laced_jungle_planks.png b/public/textures/chipped/laced_jungle_planks.png new file mode 100644 index 00000000..27b388d1 Binary files /dev/null and b/public/textures/chipped/laced_jungle_planks.png differ diff --git a/public/textures/chipped/laced_mangrove_planks.png b/public/textures/chipped/laced_mangrove_planks.png new file mode 100644 index 00000000..7d73e977 Binary files /dev/null and b/public/textures/chipped/laced_mangrove_planks.png differ diff --git a/public/textures/chipped/laced_oak_planks.png b/public/textures/chipped/laced_oak_planks.png new file mode 100644 index 00000000..f8dfd140 Binary files /dev/null and b/public/textures/chipped/laced_oak_planks.png differ diff --git a/public/textures/chipped/laced_spruce_planks.png b/public/textures/chipped/laced_spruce_planks.png new file mode 100644 index 00000000..180e43af Binary files /dev/null and b/public/textures/chipped/laced_spruce_planks.png differ diff --git a/public/textures/chipped/laced_warped_planks.png b/public/textures/chipped/laced_warped_planks.png new file mode 100644 index 00000000..e562aa50 Binary files /dev/null and b/public/textures/chipped/laced_warped_planks.png differ diff --git a/public/textures/chipped/lapis_block_bricks.png b/public/textures/chipped/lapis_block_bricks.png new file mode 100644 index 00000000..20f781ab Binary files /dev/null and b/public/textures/chipped/lapis_block_bricks.png differ diff --git a/public/textures/chipped/lapis_block_mini_tiles.png b/public/textures/chipped/lapis_block_mini_tiles.png new file mode 100644 index 00000000..b6983406 Binary files /dev/null and b/public/textures/chipped/lapis_block_mini_tiles.png differ diff --git a/public/textures/chipped/lapis_block_pillar.png b/public/textures/chipped/lapis_block_pillar.png new file mode 100644 index 00000000..947b8325 Binary files /dev/null and b/public/textures/chipped/lapis_block_pillar.png differ diff --git a/public/textures/chipped/lapis_block_pillar_top.png b/public/textures/chipped/lapis_block_pillar_top.png new file mode 100644 index 00000000..dc01fb56 Binary files /dev/null and b/public/textures/chipped/lapis_block_pillar_top.png differ diff --git a/public/textures/chipped/lapis_block_scales.png b/public/textures/chipped/lapis_block_scales.png new file mode 100644 index 00000000..eb4f7a85 Binary files /dev/null and b/public/textures/chipped/lapis_block_scales.png differ diff --git a/public/textures/chipped/large_diamond_black_stained_glass.png b/public/textures/chipped/large_diamond_black_stained_glass.png new file mode 100644 index 00000000..5afdc9bd Binary files /dev/null and b/public/textures/chipped/large_diamond_black_stained_glass.png differ diff --git a/public/textures/chipped/large_diamond_black_stained_glass_pane.png b/public/textures/chipped/large_diamond_black_stained_glass_pane.png new file mode 100644 index 00000000..5b979a03 Binary files /dev/null and b/public/textures/chipped/large_diamond_black_stained_glass_pane.png differ diff --git a/public/textures/chipped/large_diamond_blue_stained_glass.png b/public/textures/chipped/large_diamond_blue_stained_glass.png new file mode 100644 index 00000000..21bacbf4 Binary files /dev/null and b/public/textures/chipped/large_diamond_blue_stained_glass.png differ diff --git a/public/textures/chipped/large_diamond_blue_stained_glass_pane.png b/public/textures/chipped/large_diamond_blue_stained_glass_pane.png new file mode 100644 index 00000000..0a573915 Binary files /dev/null and b/public/textures/chipped/large_diamond_blue_stained_glass_pane.png differ diff --git a/public/textures/chipped/large_diamond_brown_stained_glass.png b/public/textures/chipped/large_diamond_brown_stained_glass.png new file mode 100644 index 00000000..9874ae8d Binary files /dev/null and b/public/textures/chipped/large_diamond_brown_stained_glass.png differ diff --git a/public/textures/chipped/large_diamond_brown_stained_glass_pane.png b/public/textures/chipped/large_diamond_brown_stained_glass_pane.png new file mode 100644 index 00000000..77f75108 Binary files /dev/null and b/public/textures/chipped/large_diamond_brown_stained_glass_pane.png differ diff --git a/public/textures/chipped/large_diamond_cyan_stained_glass.png b/public/textures/chipped/large_diamond_cyan_stained_glass.png new file mode 100644 index 00000000..986c1a3a Binary files /dev/null and b/public/textures/chipped/large_diamond_cyan_stained_glass.png differ diff --git a/public/textures/chipped/large_diamond_cyan_stained_glass_pane.png b/public/textures/chipped/large_diamond_cyan_stained_glass_pane.png new file mode 100644 index 00000000..4388299d Binary files /dev/null and b/public/textures/chipped/large_diamond_cyan_stained_glass_pane.png differ diff --git a/public/textures/chipped/large_diamond_gray_stained_glass.png b/public/textures/chipped/large_diamond_gray_stained_glass.png new file mode 100644 index 00000000..b5e7d4ea Binary files /dev/null and b/public/textures/chipped/large_diamond_gray_stained_glass.png differ diff --git a/public/textures/chipped/large_diamond_gray_stained_glass_pane.png b/public/textures/chipped/large_diamond_gray_stained_glass_pane.png new file mode 100644 index 00000000..eed0c273 Binary files /dev/null and b/public/textures/chipped/large_diamond_gray_stained_glass_pane.png differ diff --git a/public/textures/chipped/large_diamond_green_stained_glass.png b/public/textures/chipped/large_diamond_green_stained_glass.png new file mode 100644 index 00000000..13f1f659 Binary files /dev/null and b/public/textures/chipped/large_diamond_green_stained_glass.png differ diff --git a/public/textures/chipped/large_diamond_green_stained_glass_pane.png b/public/textures/chipped/large_diamond_green_stained_glass_pane.png new file mode 100644 index 00000000..3be50f18 Binary files /dev/null and b/public/textures/chipped/large_diamond_green_stained_glass_pane.png differ diff --git a/public/textures/chipped/large_diamond_leaded_glass.png b/public/textures/chipped/large_diamond_leaded_glass.png new file mode 100644 index 00000000..5b626110 Binary files /dev/null and b/public/textures/chipped/large_diamond_leaded_glass.png differ diff --git a/public/textures/chipped/large_diamond_leaded_glass_pane.png b/public/textures/chipped/large_diamond_leaded_glass_pane.png new file mode 100644 index 00000000..8fa7a822 Binary files /dev/null and b/public/textures/chipped/large_diamond_leaded_glass_pane.png differ diff --git a/public/textures/chipped/large_diamond_light_blue_stained_glass.png b/public/textures/chipped/large_diamond_light_blue_stained_glass.png new file mode 100644 index 00000000..ed0d5d91 Binary files /dev/null and b/public/textures/chipped/large_diamond_light_blue_stained_glass.png differ diff --git a/public/textures/chipped/large_diamond_light_blue_stained_glass_pane.png b/public/textures/chipped/large_diamond_light_blue_stained_glass_pane.png new file mode 100644 index 00000000..99b9b53a Binary files /dev/null and b/public/textures/chipped/large_diamond_light_blue_stained_glass_pane.png differ diff --git a/public/textures/chipped/large_diamond_light_gray_stained_glass.png b/public/textures/chipped/large_diamond_light_gray_stained_glass.png new file mode 100644 index 00000000..e1dbb0fd Binary files /dev/null and b/public/textures/chipped/large_diamond_light_gray_stained_glass.png differ diff --git a/public/textures/chipped/large_diamond_light_gray_stained_glass_pane.png b/public/textures/chipped/large_diamond_light_gray_stained_glass_pane.png new file mode 100644 index 00000000..668e307a Binary files /dev/null and b/public/textures/chipped/large_diamond_light_gray_stained_glass_pane.png differ diff --git a/public/textures/chipped/large_diamond_lime_stained_glass.png b/public/textures/chipped/large_diamond_lime_stained_glass.png new file mode 100644 index 00000000..4b1bae83 Binary files /dev/null and b/public/textures/chipped/large_diamond_lime_stained_glass.png differ diff --git a/public/textures/chipped/large_diamond_lime_stained_glass_pane.png b/public/textures/chipped/large_diamond_lime_stained_glass_pane.png new file mode 100644 index 00000000..43b3d949 Binary files /dev/null and b/public/textures/chipped/large_diamond_lime_stained_glass_pane.png differ diff --git a/public/textures/chipped/large_diamond_magenta_stained_glass.png b/public/textures/chipped/large_diamond_magenta_stained_glass.png new file mode 100644 index 00000000..5d516c25 Binary files /dev/null and b/public/textures/chipped/large_diamond_magenta_stained_glass.png differ diff --git a/public/textures/chipped/large_diamond_magenta_stained_glass_pane.png b/public/textures/chipped/large_diamond_magenta_stained_glass_pane.png new file mode 100644 index 00000000..da3b0f94 Binary files /dev/null and b/public/textures/chipped/large_diamond_magenta_stained_glass_pane.png differ diff --git a/public/textures/chipped/large_diamond_orange_stained_glass.png b/public/textures/chipped/large_diamond_orange_stained_glass.png new file mode 100644 index 00000000..c994bcbe Binary files /dev/null and b/public/textures/chipped/large_diamond_orange_stained_glass.png differ diff --git a/public/textures/chipped/large_diamond_orange_stained_glass_pane.png b/public/textures/chipped/large_diamond_orange_stained_glass_pane.png new file mode 100644 index 00000000..ae79ce6c Binary files /dev/null and b/public/textures/chipped/large_diamond_orange_stained_glass_pane.png differ diff --git a/public/textures/chipped/large_diamond_pink_stained_glass.png b/public/textures/chipped/large_diamond_pink_stained_glass.png new file mode 100644 index 00000000..54d90d63 Binary files /dev/null and b/public/textures/chipped/large_diamond_pink_stained_glass.png differ diff --git a/public/textures/chipped/large_diamond_pink_stained_glass_pane.png b/public/textures/chipped/large_diamond_pink_stained_glass_pane.png new file mode 100644 index 00000000..243512e8 Binary files /dev/null and b/public/textures/chipped/large_diamond_pink_stained_glass_pane.png differ diff --git a/public/textures/chipped/large_diamond_purple_stained_glass.png b/public/textures/chipped/large_diamond_purple_stained_glass.png new file mode 100644 index 00000000..e6195959 Binary files /dev/null and b/public/textures/chipped/large_diamond_purple_stained_glass.png differ diff --git a/public/textures/chipped/large_diamond_purple_stained_glass_pane.png b/public/textures/chipped/large_diamond_purple_stained_glass_pane.png new file mode 100644 index 00000000..721669c9 Binary files /dev/null and b/public/textures/chipped/large_diamond_purple_stained_glass_pane.png differ diff --git a/public/textures/chipped/large_diamond_red_stained_glass.png b/public/textures/chipped/large_diamond_red_stained_glass.png new file mode 100644 index 00000000..cc04788c Binary files /dev/null and b/public/textures/chipped/large_diamond_red_stained_glass.png differ diff --git a/public/textures/chipped/large_diamond_red_stained_glass_pane.png b/public/textures/chipped/large_diamond_red_stained_glass_pane.png new file mode 100644 index 00000000..afd3289f Binary files /dev/null and b/public/textures/chipped/large_diamond_red_stained_glass_pane.png differ diff --git a/public/textures/chipped/large_diamond_white_stained_glass.png b/public/textures/chipped/large_diamond_white_stained_glass.png new file mode 100644 index 00000000..07cd24bb Binary files /dev/null and b/public/textures/chipped/large_diamond_white_stained_glass.png differ diff --git a/public/textures/chipped/large_diamond_white_stained_glass_pane.png b/public/textures/chipped/large_diamond_white_stained_glass_pane.png new file mode 100644 index 00000000..8d5ce91f Binary files /dev/null and b/public/textures/chipped/large_diamond_white_stained_glass_pane.png differ diff --git a/public/textures/chipped/large_diamond_yellow_stained_glass.png b/public/textures/chipped/large_diamond_yellow_stained_glass.png new file mode 100644 index 00000000..dee88d41 Binary files /dev/null and b/public/textures/chipped/large_diamond_yellow_stained_glass.png differ diff --git a/public/textures/chipped/large_diamond_yellow_stained_glass_pane.png b/public/textures/chipped/large_diamond_yellow_stained_glass_pane.png new file mode 100644 index 00000000..57f010d0 Binary files /dev/null and b/public/textures/chipped/large_diamond_yellow_stained_glass_pane.png differ diff --git a/public/textures/chipped/large_lily_pad.png b/public/textures/chipped/large_lily_pad.png new file mode 100644 index 00000000..c2306872 Binary files /dev/null and b/public/textures/chipped/large_lily_pad.png differ diff --git a/public/textures/chipped/large_mud_bricks_sigil.png b/public/textures/chipped/large_mud_bricks_sigil.png new file mode 100644 index 00000000..e1c7569f Binary files /dev/null and b/public/textures/chipped/large_mud_bricks_sigil.png differ diff --git a/public/textures/chipped/large_mud_sigil.png b/public/textures/chipped/large_mud_sigil.png new file mode 100644 index 00000000..21030226 Binary files /dev/null and b/public/textures/chipped/large_mud_sigil.png differ diff --git a/public/textures/chipped/large_nether_sprouts.png b/public/textures/chipped/large_nether_sprouts.png new file mode 100644 index 00000000..1e3d2b37 Binary files /dev/null and b/public/textures/chipped/large_nether_sprouts.png differ diff --git a/public/textures/chipped/large_packed_mud_sigil.png b/public/textures/chipped/large_packed_mud_sigil.png new file mode 100644 index 00000000..c47839fb Binary files /dev/null and b/public/textures/chipped/large_packed_mud_sigil.png differ diff --git a/public/textures/chipped/large_tiled_mud.png b/public/textures/chipped/large_tiled_mud.png new file mode 100644 index 00000000..034bf6c3 Binary files /dev/null and b/public/textures/chipped/large_tiled_mud.png differ diff --git a/public/textures/chipped/large_tiled_mud_bricks.png b/public/textures/chipped/large_tiled_mud_bricks.png new file mode 100644 index 00000000..719fb524 Binary files /dev/null and b/public/textures/chipped/large_tiled_mud_bricks.png differ diff --git a/public/textures/chipped/large_tiled_packed_mud.png b/public/textures/chipped/large_tiled_packed_mud.png new file mode 100644 index 00000000..29fa991c Binary files /dev/null and b/public/textures/chipped/large_tiled_packed_mud.png differ diff --git a/public/textures/chipped/lauching_soul_sand.png b/public/textures/chipped/lauching_soul_sand.png new file mode 100644 index 00000000..fe542842 Binary files /dev/null and b/public/textures/chipped/lauching_soul_sand.png differ diff --git a/public/textures/chipped/layed_amethyst_block_bricks.png b/public/textures/chipped/layed_amethyst_block_bricks.png new file mode 100644 index 00000000..c17bc47d Binary files /dev/null and b/public/textures/chipped/layed_amethyst_block_bricks.png differ diff --git a/public/textures/chipped/layed_ancient_debris_bricks.png b/public/textures/chipped/layed_ancient_debris_bricks.png new file mode 100644 index 00000000..4aec9fc7 Binary files /dev/null and b/public/textures/chipped/layed_ancient_debris_bricks.png differ diff --git a/public/textures/chipped/layed_andesite_bricks.png b/public/textures/chipped/layed_andesite_bricks.png new file mode 100644 index 00000000..6d0031f3 Binary files /dev/null and b/public/textures/chipped/layed_andesite_bricks.png differ diff --git a/public/textures/chipped/layed_basalt_bricks.png b/public/textures/chipped/layed_basalt_bricks.png new file mode 100644 index 00000000..57c4e44f Binary files /dev/null and b/public/textures/chipped/layed_basalt_bricks.png differ diff --git a/public/textures/chipped/layed_blackstone_bricks.png b/public/textures/chipped/layed_blackstone_bricks.png new file mode 100644 index 00000000..c2772fc3 Binary files /dev/null and b/public/textures/chipped/layed_blackstone_bricks.png differ diff --git a/public/textures/chipped/layed_blue_ice_bricks.png b/public/textures/chipped/layed_blue_ice_bricks.png new file mode 100644 index 00000000..a6ae855e Binary files /dev/null and b/public/textures/chipped/layed_blue_ice_bricks.png differ diff --git a/public/textures/chipped/layed_calcite_bricks.png b/public/textures/chipped/layed_calcite_bricks.png new file mode 100644 index 00000000..b1fe8043 Binary files /dev/null and b/public/textures/chipped/layed_calcite_bricks.png differ diff --git a/public/textures/chipped/layed_clay_bricks.png b/public/textures/chipped/layed_clay_bricks.png new file mode 100644 index 00000000..3ee0f778 Binary files /dev/null and b/public/textures/chipped/layed_clay_bricks.png differ diff --git a/public/textures/chipped/layed_coal_block_bricks.png b/public/textures/chipped/layed_coal_block_bricks.png new file mode 100644 index 00000000..907e52f2 Binary files /dev/null and b/public/textures/chipped/layed_coal_block_bricks.png differ diff --git a/public/textures/chipped/layed_cobblestone_bricks.png b/public/textures/chipped/layed_cobblestone_bricks.png new file mode 100644 index 00000000..434f2798 Binary files /dev/null and b/public/textures/chipped/layed_cobblestone_bricks.png differ diff --git a/public/textures/chipped/layed_crying_obsidian_bricks.png b/public/textures/chipped/layed_crying_obsidian_bricks.png new file mode 100644 index 00000000..9892e652 Binary files /dev/null and b/public/textures/chipped/layed_crying_obsidian_bricks.png differ diff --git a/public/textures/chipped/layed_dark_prismarine_bricks.png b/public/textures/chipped/layed_dark_prismarine_bricks.png new file mode 100644 index 00000000..9b9662a5 Binary files /dev/null and b/public/textures/chipped/layed_dark_prismarine_bricks.png differ diff --git a/public/textures/chipped/layed_diorite_bricks.png b/public/textures/chipped/layed_diorite_bricks.png new file mode 100644 index 00000000..a95ad301 Binary files /dev/null and b/public/textures/chipped/layed_diorite_bricks.png differ diff --git a/public/textures/chipped/layed_dirt_bricks.png b/public/textures/chipped/layed_dirt_bricks.png new file mode 100644 index 00000000..83fe6109 Binary files /dev/null and b/public/textures/chipped/layed_dirt_bricks.png differ diff --git a/public/textures/chipped/layed_dripstone_block_bricks.png b/public/textures/chipped/layed_dripstone_block_bricks.png new file mode 100644 index 00000000..31e576f8 Binary files /dev/null and b/public/textures/chipped/layed_dripstone_block_bricks.png differ diff --git a/public/textures/chipped/layed_end_stone_bricks.png b/public/textures/chipped/layed_end_stone_bricks.png new file mode 100644 index 00000000..ccc64b1f Binary files /dev/null and b/public/textures/chipped/layed_end_stone_bricks.png differ diff --git a/public/textures/chipped/layed_gilded_blackstone_bricks.png b/public/textures/chipped/layed_gilded_blackstone_bricks.png new file mode 100644 index 00000000..d1a09be0 Binary files /dev/null and b/public/textures/chipped/layed_gilded_blackstone_bricks.png differ diff --git a/public/textures/chipped/layed_granite_bricks.png b/public/textures/chipped/layed_granite_bricks.png new file mode 100644 index 00000000..fcfff308 Binary files /dev/null and b/public/textures/chipped/layed_granite_bricks.png differ diff --git a/public/textures/chipped/layed_ice_bricks.png b/public/textures/chipped/layed_ice_bricks.png new file mode 100644 index 00000000..3bb2c5b8 Binary files /dev/null and b/public/textures/chipped/layed_ice_bricks.png differ diff --git a/public/textures/chipped/layed_lapis_block_bricks.png b/public/textures/chipped/layed_lapis_block_bricks.png new file mode 100644 index 00000000..eb6b4142 Binary files /dev/null and b/public/textures/chipped/layed_lapis_block_bricks.png differ diff --git a/public/textures/chipped/layed_lodestone_bricks.png b/public/textures/chipped/layed_lodestone_bricks.png new file mode 100644 index 00000000..94078f1f Binary files /dev/null and b/public/textures/chipped/layed_lodestone_bricks.png differ diff --git a/public/textures/chipped/layed_magma_block_bricks.png b/public/textures/chipped/layed_magma_block_bricks.png new file mode 100644 index 00000000..06c3402f Binary files /dev/null and b/public/textures/chipped/layed_magma_block_bricks.png differ diff --git a/public/textures/chipped/layed_mossy_cobblestone_bricks.png b/public/textures/chipped/layed_mossy_cobblestone_bricks.png new file mode 100644 index 00000000..7a0aab29 Binary files /dev/null and b/public/textures/chipped/layed_mossy_cobblestone_bricks.png differ diff --git a/public/textures/chipped/layed_mossy_stone_bricks_bricks.png b/public/textures/chipped/layed_mossy_stone_bricks_bricks.png new file mode 100644 index 00000000..652af71b Binary files /dev/null and b/public/textures/chipped/layed_mossy_stone_bricks_bricks.png differ diff --git a/public/textures/chipped/layed_nether_bricks_bricks.png b/public/textures/chipped/layed_nether_bricks_bricks.png new file mode 100644 index 00000000..04bf3e42 Binary files /dev/null and b/public/textures/chipped/layed_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/layed_netherrack_bricks.png b/public/textures/chipped/layed_netherrack_bricks.png new file mode 100644 index 00000000..d166628a Binary files /dev/null and b/public/textures/chipped/layed_netherrack_bricks.png differ diff --git a/public/textures/chipped/layed_obsidian_bricks.png b/public/textures/chipped/layed_obsidian_bricks.png new file mode 100644 index 00000000..60c5c009 Binary files /dev/null and b/public/textures/chipped/layed_obsidian_bricks.png differ diff --git a/public/textures/chipped/layed_packed_ice_bricks.png b/public/textures/chipped/layed_packed_ice_bricks.png new file mode 100644 index 00000000..b63bb0ce Binary files /dev/null and b/public/textures/chipped/layed_packed_ice_bricks.png differ diff --git a/public/textures/chipped/layed_prismarine_bricks.png b/public/textures/chipped/layed_prismarine_bricks.png new file mode 100644 index 00000000..5d1fead1 Binary files /dev/null and b/public/textures/chipped/layed_prismarine_bricks.png differ diff --git a/public/textures/chipped/layed_purpur_block_bricks.png b/public/textures/chipped/layed_purpur_block_bricks.png new file mode 100644 index 00000000..4c9cd887 Binary files /dev/null and b/public/textures/chipped/layed_purpur_block_bricks.png differ diff --git a/public/textures/chipped/layed_quartz_block_bricks.png b/public/textures/chipped/layed_quartz_block_bricks.png new file mode 100644 index 00000000..72594ca1 Binary files /dev/null and b/public/textures/chipped/layed_quartz_block_bricks.png differ diff --git a/public/textures/chipped/layed_raw_copper_block_bricks.png b/public/textures/chipped/layed_raw_copper_block_bricks.png new file mode 100644 index 00000000..0c491381 Binary files /dev/null and b/public/textures/chipped/layed_raw_copper_block_bricks.png differ diff --git a/public/textures/chipped/layed_raw_gold_block_bricks.png b/public/textures/chipped/layed_raw_gold_block_bricks.png new file mode 100644 index 00000000..292f1cbe Binary files /dev/null and b/public/textures/chipped/layed_raw_gold_block_bricks.png differ diff --git a/public/textures/chipped/layed_raw_iron_block_bricks.png b/public/textures/chipped/layed_raw_iron_block_bricks.png new file mode 100644 index 00000000..3bff943b Binary files /dev/null and b/public/textures/chipped/layed_raw_iron_block_bricks.png differ diff --git a/public/textures/chipped/layed_red_nether_bricks_bricks.png b/public/textures/chipped/layed_red_nether_bricks_bricks.png new file mode 100644 index 00000000..a18c2403 Binary files /dev/null and b/public/textures/chipped/layed_red_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/layed_red_sandstone_bricks.png b/public/textures/chipped/layed_red_sandstone_bricks.png new file mode 100644 index 00000000..b18821ab Binary files /dev/null and b/public/textures/chipped/layed_red_sandstone_bricks.png differ diff --git a/public/textures/chipped/layed_redstone_block_bricks.png b/public/textures/chipped/layed_redstone_block_bricks.png new file mode 100644 index 00000000..65352604 Binary files /dev/null and b/public/textures/chipped/layed_redstone_block_bricks.png differ diff --git a/public/textures/chipped/layed_sandstone_bricks.png b/public/textures/chipped/layed_sandstone_bricks.png new file mode 100644 index 00000000..c8fc240a Binary files /dev/null and b/public/textures/chipped/layed_sandstone_bricks.png differ diff --git a/public/textures/chipped/layed_smooth_stone_bricks.png b/public/textures/chipped/layed_smooth_stone_bricks.png new file mode 100644 index 00000000..bbb3526b Binary files /dev/null and b/public/textures/chipped/layed_smooth_stone_bricks.png differ diff --git a/public/textures/chipped/layed_snow_block_bricks.png b/public/textures/chipped/layed_snow_block_bricks.png new file mode 100644 index 00000000..4ec226bb Binary files /dev/null and b/public/textures/chipped/layed_snow_block_bricks.png differ diff --git a/public/textures/chipped/layed_stone_bricks.png b/public/textures/chipped/layed_stone_bricks.png new file mode 100644 index 00000000..b9ee0e49 Binary files /dev/null and b/public/textures/chipped/layed_stone_bricks.png differ diff --git a/public/textures/chipped/layed_tuff_bricks.png b/public/textures/chipped/layed_tuff_bricks.png new file mode 100644 index 00000000..6346d48b Binary files /dev/null and b/public/textures/chipped/layed_tuff_bricks.png differ diff --git a/public/textures/chipped/layered_black_terracotta.png b/public/textures/chipped/layered_black_terracotta.png new file mode 100644 index 00000000..4808b3dc Binary files /dev/null and b/public/textures/chipped/layered_black_terracotta.png differ diff --git a/public/textures/chipped/layered_blue_terracotta.png b/public/textures/chipped/layered_blue_terracotta.png new file mode 100644 index 00000000..de325138 Binary files /dev/null and b/public/textures/chipped/layered_blue_terracotta.png differ diff --git a/public/textures/chipped/layered_brown_terracotta.png b/public/textures/chipped/layered_brown_terracotta.png new file mode 100644 index 00000000..cc6caec6 Binary files /dev/null and b/public/textures/chipped/layered_brown_terracotta.png differ diff --git a/public/textures/chipped/layered_cyan_terracotta.png b/public/textures/chipped/layered_cyan_terracotta.png new file mode 100644 index 00000000..edfd3c3d Binary files /dev/null and b/public/textures/chipped/layered_cyan_terracotta.png differ diff --git a/public/textures/chipped/layered_diamond_block.png b/public/textures/chipped/layered_diamond_block.png new file mode 100644 index 00000000..9012e47e Binary files /dev/null and b/public/textures/chipped/layered_diamond_block.png differ diff --git a/public/textures/chipped/layered_emerald_block.png b/public/textures/chipped/layered_emerald_block.png new file mode 100644 index 00000000..0f8530a0 Binary files /dev/null and b/public/textures/chipped/layered_emerald_block.png differ diff --git a/public/textures/chipped/layered_gold_block.png b/public/textures/chipped/layered_gold_block.png new file mode 100644 index 00000000..387f5c22 Binary files /dev/null and b/public/textures/chipped/layered_gold_block.png differ diff --git a/public/textures/chipped/layered_gray_terracotta.png b/public/textures/chipped/layered_gray_terracotta.png new file mode 100644 index 00000000..8aee13b4 Binary files /dev/null and b/public/textures/chipped/layered_gray_terracotta.png differ diff --git a/public/textures/chipped/layered_green_terracotta.png b/public/textures/chipped/layered_green_terracotta.png new file mode 100644 index 00000000..9a8897ed Binary files /dev/null and b/public/textures/chipped/layered_green_terracotta.png differ diff --git a/public/textures/chipped/layered_iron_block.png b/public/textures/chipped/layered_iron_block.png new file mode 100644 index 00000000..8c474613 Binary files /dev/null and b/public/textures/chipped/layered_iron_block.png differ diff --git a/public/textures/chipped/layered_light_blue_terracotta.png b/public/textures/chipped/layered_light_blue_terracotta.png new file mode 100644 index 00000000..5a54de85 Binary files /dev/null and b/public/textures/chipped/layered_light_blue_terracotta.png differ diff --git a/public/textures/chipped/layered_light_gray_terracotta.png b/public/textures/chipped/layered_light_gray_terracotta.png new file mode 100644 index 00000000..2ae1d6ef Binary files /dev/null and b/public/textures/chipped/layered_light_gray_terracotta.png differ diff --git a/public/textures/chipped/layered_lime_terracotta.png b/public/textures/chipped/layered_lime_terracotta.png new file mode 100644 index 00000000..6741fb26 Binary files /dev/null and b/public/textures/chipped/layered_lime_terracotta.png differ diff --git a/public/textures/chipped/layered_magenta_terracotta.png b/public/textures/chipped/layered_magenta_terracotta.png new file mode 100644 index 00000000..7a4a4552 Binary files /dev/null and b/public/textures/chipped/layered_magenta_terracotta.png differ diff --git a/public/textures/chipped/layered_netherite_block.png b/public/textures/chipped/layered_netherite_block.png new file mode 100644 index 00000000..c250c4a1 Binary files /dev/null and b/public/textures/chipped/layered_netherite_block.png differ diff --git a/public/textures/chipped/layered_orange_terracotta.png b/public/textures/chipped/layered_orange_terracotta.png new file mode 100644 index 00000000..0025440d Binary files /dev/null and b/public/textures/chipped/layered_orange_terracotta.png differ diff --git a/public/textures/chipped/layered_pink_terracotta.png b/public/textures/chipped/layered_pink_terracotta.png new file mode 100644 index 00000000..95d5aa69 Binary files /dev/null and b/public/textures/chipped/layered_pink_terracotta.png differ diff --git a/public/textures/chipped/layered_purple_terracotta.png b/public/textures/chipped/layered_purple_terracotta.png new file mode 100644 index 00000000..35f101c8 Binary files /dev/null and b/public/textures/chipped/layered_purple_terracotta.png differ diff --git a/public/textures/chipped/layered_red_terracotta.png b/public/textures/chipped/layered_red_terracotta.png new file mode 100644 index 00000000..d145c5ab Binary files /dev/null and b/public/textures/chipped/layered_red_terracotta.png differ diff --git a/public/textures/chipped/layered_stripped_acacia_log.png b/public/textures/chipped/layered_stripped_acacia_log.png new file mode 100644 index 00000000..d1e52d8b Binary files /dev/null and b/public/textures/chipped/layered_stripped_acacia_log.png differ diff --git a/public/textures/chipped/layered_stripped_birch_log.png b/public/textures/chipped/layered_stripped_birch_log.png new file mode 100644 index 00000000..526e38c5 Binary files /dev/null and b/public/textures/chipped/layered_stripped_birch_log.png differ diff --git a/public/textures/chipped/layered_stripped_cherry_log.png b/public/textures/chipped/layered_stripped_cherry_log.png new file mode 100644 index 00000000..06506c79 Binary files /dev/null and b/public/textures/chipped/layered_stripped_cherry_log.png differ diff --git a/public/textures/chipped/layered_stripped_crimson_stem.png b/public/textures/chipped/layered_stripped_crimson_stem.png new file mode 100644 index 00000000..b480a751 Binary files /dev/null and b/public/textures/chipped/layered_stripped_crimson_stem.png differ diff --git a/public/textures/chipped/layered_stripped_dark_oak_log.png b/public/textures/chipped/layered_stripped_dark_oak_log.png new file mode 100644 index 00000000..c1d516ae Binary files /dev/null and b/public/textures/chipped/layered_stripped_dark_oak_log.png differ diff --git a/public/textures/chipped/layered_stripped_jungle_log.png b/public/textures/chipped/layered_stripped_jungle_log.png new file mode 100644 index 00000000..1d6a9562 Binary files /dev/null and b/public/textures/chipped/layered_stripped_jungle_log.png differ diff --git a/public/textures/chipped/layered_stripped_oak_log.png b/public/textures/chipped/layered_stripped_oak_log.png new file mode 100644 index 00000000..b83e2bc7 Binary files /dev/null and b/public/textures/chipped/layered_stripped_oak_log.png differ diff --git a/public/textures/chipped/layered_stripped_spruce_log.png b/public/textures/chipped/layered_stripped_spruce_log.png new file mode 100644 index 00000000..c08c1975 Binary files /dev/null and b/public/textures/chipped/layered_stripped_spruce_log.png differ diff --git a/public/textures/chipped/layered_stripped_warped_stem.png b/public/textures/chipped/layered_stripped_warped_stem.png new file mode 100644 index 00000000..1f96f91a Binary files /dev/null and b/public/textures/chipped/layered_stripped_warped_stem.png differ diff --git a/public/textures/chipped/layered_terracotta.png b/public/textures/chipped/layered_terracotta.png new file mode 100644 index 00000000..23262bf2 Binary files /dev/null and b/public/textures/chipped/layered_terracotta.png differ diff --git a/public/textures/chipped/layered_waxed_copper_block.png b/public/textures/chipped/layered_waxed_copper_block.png new file mode 100644 index 00000000..117bc053 Binary files /dev/null and b/public/textures/chipped/layered_waxed_copper_block.png differ diff --git a/public/textures/chipped/layered_waxed_exposed_copper.png b/public/textures/chipped/layered_waxed_exposed_copper.png new file mode 100644 index 00000000..09c09246 Binary files /dev/null and b/public/textures/chipped/layered_waxed_exposed_copper.png differ diff --git a/public/textures/chipped/layered_waxed_oxidized_copper.png b/public/textures/chipped/layered_waxed_oxidized_copper.png new file mode 100644 index 00000000..3ddfa135 Binary files /dev/null and b/public/textures/chipped/layered_waxed_oxidized_copper.png differ diff --git a/public/textures/chipped/layered_waxed_weathered_copper.png b/public/textures/chipped/layered_waxed_weathered_copper.png new file mode 100644 index 00000000..4706a29b Binary files /dev/null and b/public/textures/chipped/layered_waxed_weathered_copper.png differ diff --git a/public/textures/chipped/layered_white_terracotta.png b/public/textures/chipped/layered_white_terracotta.png new file mode 100644 index 00000000..68972298 Binary files /dev/null and b/public/textures/chipped/layered_white_terracotta.png differ diff --git a/public/textures/chipped/layered_yellow_terracotta.png b/public/textures/chipped/layered_yellow_terracotta.png new file mode 100644 index 00000000..30c82382 Binary files /dev/null and b/public/textures/chipped/layered_yellow_terracotta.png differ diff --git a/public/textures/chipped/lead_woven_glass.png b/public/textures/chipped/lead_woven_glass.png new file mode 100644 index 00000000..cc490ff9 Binary files /dev/null and b/public/textures/chipped/lead_woven_glass.png differ diff --git a/public/textures/chipped/lead_woven_glass_pane.png b/public/textures/chipped/lead_woven_glass_pane.png new file mode 100644 index 00000000..f7877e9f Binary files /dev/null and b/public/textures/chipped/lead_woven_glass_pane.png differ diff --git a/public/textures/chipped/leaf_lily_pad.png b/public/textures/chipped/leaf_lily_pad.png new file mode 100644 index 00000000..8177ef71 Binary files /dev/null and b/public/textures/chipped/leaf_lily_pad.png differ diff --git a/public/textures/chipped/leafy_acacia_trapdoor.png b/public/textures/chipped/leafy_acacia_trapdoor.png new file mode 100644 index 00000000..65c3270f Binary files /dev/null and b/public/textures/chipped/leafy_acacia_trapdoor.png differ diff --git a/public/textures/chipped/leafy_bamboo_trapdoor.png b/public/textures/chipped/leafy_bamboo_trapdoor.png new file mode 100644 index 00000000..89efd75c Binary files /dev/null and b/public/textures/chipped/leafy_bamboo_trapdoor.png differ diff --git a/public/textures/chipped/leafy_birch_trapdoor.png b/public/textures/chipped/leafy_birch_trapdoor.png new file mode 100644 index 00000000..e5d0eea0 Binary files /dev/null and b/public/textures/chipped/leafy_birch_trapdoor.png differ diff --git a/public/textures/chipped/leafy_cherry_trapdoor.png b/public/textures/chipped/leafy_cherry_trapdoor.png new file mode 100644 index 00000000..a6c01485 Binary files /dev/null and b/public/textures/chipped/leafy_cherry_trapdoor.png differ diff --git a/public/textures/chipped/leafy_crimson_trapdoor.png b/public/textures/chipped/leafy_crimson_trapdoor.png new file mode 100644 index 00000000..ead46c1b Binary files /dev/null and b/public/textures/chipped/leafy_crimson_trapdoor.png differ diff --git a/public/textures/chipped/leafy_dark_oak_trapdoor.png b/public/textures/chipped/leafy_dark_oak_trapdoor.png new file mode 100644 index 00000000..099eafe0 Binary files /dev/null and b/public/textures/chipped/leafy_dark_oak_trapdoor.png differ diff --git a/public/textures/chipped/leafy_dried_kelp_block.png b/public/textures/chipped/leafy_dried_kelp_block.png new file mode 100644 index 00000000..3fb5133c Binary files /dev/null and b/public/textures/chipped/leafy_dried_kelp_block.png differ diff --git a/public/textures/chipped/leafy_jungle_trapdoor.png b/public/textures/chipped/leafy_jungle_trapdoor.png new file mode 100644 index 00000000..03819db9 Binary files /dev/null and b/public/textures/chipped/leafy_jungle_trapdoor.png differ diff --git a/public/textures/chipped/leafy_mangrove_roots.png b/public/textures/chipped/leafy_mangrove_roots.png new file mode 100644 index 00000000..c6bed55d Binary files /dev/null and b/public/textures/chipped/leafy_mangrove_roots.png differ diff --git a/public/textures/chipped/leafy_mangrove_trapdoor.png b/public/textures/chipped/leafy_mangrove_trapdoor.png new file mode 100644 index 00000000..cf6a641a Binary files /dev/null and b/public/textures/chipped/leafy_mangrove_trapdoor.png differ diff --git a/public/textures/chipped/leafy_oak_trapdoor.png b/public/textures/chipped/leafy_oak_trapdoor.png new file mode 100644 index 00000000..28f5bcc4 Binary files /dev/null and b/public/textures/chipped/leafy_oak_trapdoor.png differ diff --git a/public/textures/chipped/leafy_spruce_trapdoor.png b/public/textures/chipped/leafy_spruce_trapdoor.png new file mode 100644 index 00000000..9811d906 Binary files /dev/null and b/public/textures/chipped/leafy_spruce_trapdoor.png differ diff --git a/public/textures/chipped/leafy_vine.png b/public/textures/chipped/leafy_vine.png new file mode 100644 index 00000000..3036805f Binary files /dev/null and b/public/textures/chipped/leafy_vine.png differ diff --git a/public/textures/chipped/leafy_warped_trapdoor.png b/public/textures/chipped/leafy_warped_trapdoor.png new file mode 100644 index 00000000..d162bce4 Binary files /dev/null and b/public/textures/chipped/leafy_warped_trapdoor.png differ diff --git a/public/textures/chipped/leaning_mud.png b/public/textures/chipped/leaning_mud.png new file mode 100644 index 00000000..e4571d81 Binary files /dev/null and b/public/textures/chipped/leaning_mud.png differ diff --git a/public/textures/chipped/leaning_mud_bricks.png b/public/textures/chipped/leaning_mud_bricks.png new file mode 100644 index 00000000..7ca7d5bc Binary files /dev/null and b/public/textures/chipped/leaning_mud_bricks.png differ diff --git a/public/textures/chipped/leaning_packed_mud.png b/public/textures/chipped/leaning_packed_mud.png new file mode 100644 index 00000000..762c935e Binary files /dev/null and b/public/textures/chipped/leaning_packed_mud.png differ diff --git a/public/textures/chipped/light_blue_concrete_bricks.png b/public/textures/chipped/light_blue_concrete_bricks.png new file mode 100644 index 00000000..ce9d6d1e Binary files /dev/null and b/public/textures/chipped/light_blue_concrete_bricks.png differ diff --git a/public/textures/chipped/light_blue_concrete_panel.png b/public/textures/chipped/light_blue_concrete_panel.png new file mode 100644 index 00000000..215e14f0 Binary files /dev/null and b/public/textures/chipped/light_blue_concrete_panel.png differ diff --git a/public/textures/chipped/light_blue_concrete_pillar.png b/public/textures/chipped/light_blue_concrete_pillar.png new file mode 100644 index 00000000..75b636ba Binary files /dev/null and b/public/textures/chipped/light_blue_concrete_pillar.png differ diff --git a/public/textures/chipped/light_blue_concrete_tiles.png b/public/textures/chipped/light_blue_concrete_tiles.png new file mode 100644 index 00000000..2fefbab9 Binary files /dev/null and b/public/textures/chipped/light_blue_concrete_tiles.png differ diff --git a/public/textures/chipped/light_blue_glazed_terracotta_pillar_sides.png b/public/textures/chipped/light_blue_glazed_terracotta_pillar_sides.png new file mode 100644 index 00000000..44bbb18f Binary files /dev/null and b/public/textures/chipped/light_blue_glazed_terracotta_pillar_sides.png differ diff --git a/public/textures/chipped/light_blue_glazed_terracotta_pillar_top.png b/public/textures/chipped/light_blue_glazed_terracotta_pillar_top.png new file mode 100644 index 00000000..3ce2d8f9 Binary files /dev/null and b/public/textures/chipped/light_blue_glazed_terracotta_pillar_top.png differ diff --git a/public/textures/chipped/light_blue_glazed_terracotta_smooth_tiles.png b/public/textures/chipped/light_blue_glazed_terracotta_smooth_tiles.png new file mode 100644 index 00000000..c5082cdf Binary files /dev/null and b/public/textures/chipped/light_blue_glazed_terracotta_smooth_tiles.png differ diff --git a/public/textures/chipped/light_blue_glazed_terracotta_tiles.png b/public/textures/chipped/light_blue_glazed_terracotta_tiles.png new file mode 100644 index 00000000..6e829913 Binary files /dev/null and b/public/textures/chipped/light_blue_glazed_terracotta_tiles.png differ diff --git a/public/textures/chipped/light_blue_terracotta_bricks.png b/public/textures/chipped/light_blue_terracotta_bricks.png new file mode 100644 index 00000000..c7767dee Binary files /dev/null and b/public/textures/chipped/light_blue_terracotta_bricks.png differ diff --git a/public/textures/chipped/light_blue_terracotta_column.png b/public/textures/chipped/light_blue_terracotta_column.png new file mode 100644 index 00000000..98ca3abc Binary files /dev/null and b/public/textures/chipped/light_blue_terracotta_column.png differ diff --git a/public/textures/chipped/light_blue_terracotta_pillar.png b/public/textures/chipped/light_blue_terracotta_pillar.png new file mode 100644 index 00000000..551831ef Binary files /dev/null and b/public/textures/chipped/light_blue_terracotta_pillar.png differ diff --git a/public/textures/chipped/light_blue_terracotta_tile.png b/public/textures/chipped/light_blue_terracotta_tile.png new file mode 100644 index 00000000..cc6d7ad3 Binary files /dev/null and b/public/textures/chipped/light_blue_terracotta_tile.png differ diff --git a/public/textures/chipped/light_blue_terracotta_tiles.png b/public/textures/chipped/light_blue_terracotta_tiles.png new file mode 100644 index 00000000..de4c8658 Binary files /dev/null and b/public/textures/chipped/light_blue_terracotta_tiles.png differ diff --git a/public/textures/chipped/light_dotted_red_mushroom_block.png b/public/textures/chipped/light_dotted_red_mushroom_block.png new file mode 100644 index 00000000..7e110778 Binary files /dev/null and b/public/textures/chipped/light_dotted_red_mushroom_block.png differ diff --git a/public/textures/chipped/light_dusted_brown_mushroom_block.png b/public/textures/chipped/light_dusted_brown_mushroom_block.png new file mode 100644 index 00000000..05b7ff54 Binary files /dev/null and b/public/textures/chipped/light_dusted_brown_mushroom_block.png differ diff --git a/public/textures/chipped/light_dusted_red_mushroom_block.png b/public/textures/chipped/light_dusted_red_mushroom_block.png new file mode 100644 index 00000000..4efa5c00 Binary files /dev/null and b/public/textures/chipped/light_dusted_red_mushroom_block.png differ diff --git a/public/textures/chipped/light_freckled_brown_mushroom_block.png b/public/textures/chipped/light_freckled_brown_mushroom_block.png new file mode 100644 index 00000000..d78dddf2 Binary files /dev/null and b/public/textures/chipped/light_freckled_brown_mushroom_block.png differ diff --git a/public/textures/chipped/light_freckled_red_mushroom_block.png b/public/textures/chipped/light_freckled_red_mushroom_block.png new file mode 100644 index 00000000..b686c723 Binary files /dev/null and b/public/textures/chipped/light_freckled_red_mushroom_block.png differ diff --git a/public/textures/chipped/light_gray_concrete_bricks.png b/public/textures/chipped/light_gray_concrete_bricks.png new file mode 100644 index 00000000..b2805dc6 Binary files /dev/null and b/public/textures/chipped/light_gray_concrete_bricks.png differ diff --git a/public/textures/chipped/light_gray_concrete_panel.png b/public/textures/chipped/light_gray_concrete_panel.png new file mode 100644 index 00000000..ed783ffe Binary files /dev/null and b/public/textures/chipped/light_gray_concrete_panel.png differ diff --git a/public/textures/chipped/light_gray_concrete_pillar.png b/public/textures/chipped/light_gray_concrete_pillar.png new file mode 100644 index 00000000..c94c172e Binary files /dev/null and b/public/textures/chipped/light_gray_concrete_pillar.png differ diff --git a/public/textures/chipped/light_gray_concrete_tiles.png b/public/textures/chipped/light_gray_concrete_tiles.png new file mode 100644 index 00000000..8675b1f3 Binary files /dev/null and b/public/textures/chipped/light_gray_concrete_tiles.png differ diff --git a/public/textures/chipped/light_gray_glazed_terracotta_pillar_sides.png b/public/textures/chipped/light_gray_glazed_terracotta_pillar_sides.png new file mode 100644 index 00000000..4497db8b Binary files /dev/null and b/public/textures/chipped/light_gray_glazed_terracotta_pillar_sides.png differ diff --git a/public/textures/chipped/light_gray_glazed_terracotta_pillar_top.png b/public/textures/chipped/light_gray_glazed_terracotta_pillar_top.png new file mode 100644 index 00000000..ec112a33 Binary files /dev/null and b/public/textures/chipped/light_gray_glazed_terracotta_pillar_top.png differ diff --git a/public/textures/chipped/light_gray_glazed_terracotta_smooth_tiles.png b/public/textures/chipped/light_gray_glazed_terracotta_smooth_tiles.png new file mode 100644 index 00000000..c402b17d Binary files /dev/null and b/public/textures/chipped/light_gray_glazed_terracotta_smooth_tiles.png differ diff --git a/public/textures/chipped/light_gray_glazed_terracotta_tiles.png b/public/textures/chipped/light_gray_glazed_terracotta_tiles.png new file mode 100644 index 00000000..007fa895 Binary files /dev/null and b/public/textures/chipped/light_gray_glazed_terracotta_tiles.png differ diff --git a/public/textures/chipped/light_gray_terracotta_bricks.png b/public/textures/chipped/light_gray_terracotta_bricks.png new file mode 100644 index 00000000..10014649 Binary files /dev/null and b/public/textures/chipped/light_gray_terracotta_bricks.png differ diff --git a/public/textures/chipped/light_gray_terracotta_column.png b/public/textures/chipped/light_gray_terracotta_column.png new file mode 100644 index 00000000..1a900874 Binary files /dev/null and b/public/textures/chipped/light_gray_terracotta_column.png differ diff --git a/public/textures/chipped/light_gray_terracotta_pillar.png b/public/textures/chipped/light_gray_terracotta_pillar.png new file mode 100644 index 00000000..fc61534e Binary files /dev/null and b/public/textures/chipped/light_gray_terracotta_pillar.png differ diff --git a/public/textures/chipped/light_gray_terracotta_tile.png b/public/textures/chipped/light_gray_terracotta_tile.png new file mode 100644 index 00000000..8a8bdf94 Binary files /dev/null and b/public/textures/chipped/light_gray_terracotta_tile.png differ diff --git a/public/textures/chipped/light_gray_terracotta_tiles.png b/public/textures/chipped/light_gray_terracotta_tiles.png new file mode 100644 index 00000000..10708a2b Binary files /dev/null and b/public/textures/chipped/light_gray_terracotta_tiles.png differ diff --git a/public/textures/chipped/light_leaf_lily_pad.png b/public/textures/chipped/light_leaf_lily_pad.png new file mode 100644 index 00000000..2697ba47 Binary files /dev/null and b/public/textures/chipped/light_leaf_lily_pad.png differ diff --git a/public/textures/chipped/light_rough_lily_pad.png b/public/textures/chipped/light_rough_lily_pad.png new file mode 100644 index 00000000..bc577808 Binary files /dev/null and b/public/textures/chipped/light_rough_lily_pad.png differ diff --git a/public/textures/chipped/light_scaled_brown_mushroom_block.png b/public/textures/chipped/light_scaled_brown_mushroom_block.png new file mode 100644 index 00000000..e5c3ca6b Binary files /dev/null and b/public/textures/chipped/light_scaled_brown_mushroom_block.png differ diff --git a/public/textures/chipped/light_smooth_brown_mushroom_block.png b/public/textures/chipped/light_smooth_brown_mushroom_block.png new file mode 100644 index 00000000..7ca41d30 Binary files /dev/null and b/public/textures/chipped/light_smooth_brown_mushroom_block.png differ diff --git a/public/textures/chipped/light_smooth_red_mushroom_block.png b/public/textures/chipped/light_smooth_red_mushroom_block.png new file mode 100644 index 00000000..f8611e31 Binary files /dev/null and b/public/textures/chipped/light_smooth_red_mushroom_block.png differ diff --git a/public/textures/chipped/light_spotted_brown_mushroom_block.png b/public/textures/chipped/light_spotted_brown_mushroom_block.png new file mode 100644 index 00000000..ec6802b4 Binary files /dev/null and b/public/textures/chipped/light_spotted_brown_mushroom_block.png differ diff --git a/public/textures/chipped/light_spotted_red_mushroom_block.png b/public/textures/chipped/light_spotted_red_mushroom_block.png new file mode 100644 index 00000000..4dfafc37 Binary files /dev/null and b/public/textures/chipped/light_spotted_red_mushroom_block.png differ diff --git a/public/textures/chipped/light_sprinkled_brown_mushroom_block.png b/public/textures/chipped/light_sprinkled_brown_mushroom_block.png new file mode 100644 index 00000000..d5cbdc80 Binary files /dev/null and b/public/textures/chipped/light_sprinkled_brown_mushroom_block.png differ diff --git a/public/textures/chipped/lightstick_redstone_torch.png b/public/textures/chipped/lightstick_redstone_torch.png new file mode 100644 index 00000000..97550e56 Binary files /dev/null and b/public/textures/chipped/lightstick_redstone_torch.png differ diff --git a/public/textures/chipped/lily_warped_roots.png b/public/textures/chipped/lily_warped_roots.png new file mode 100644 index 00000000..9d9c475f Binary files /dev/null and b/public/textures/chipped/lily_warped_roots.png differ diff --git a/public/textures/chipped/lime_concrete_bricks.png b/public/textures/chipped/lime_concrete_bricks.png new file mode 100644 index 00000000..f9e7e13c Binary files /dev/null and b/public/textures/chipped/lime_concrete_bricks.png differ diff --git a/public/textures/chipped/lime_concrete_panel.png b/public/textures/chipped/lime_concrete_panel.png new file mode 100644 index 00000000..ff1e1d76 Binary files /dev/null and b/public/textures/chipped/lime_concrete_panel.png differ diff --git a/public/textures/chipped/lime_concrete_pillar.png b/public/textures/chipped/lime_concrete_pillar.png new file mode 100644 index 00000000..e48ff31c Binary files /dev/null and b/public/textures/chipped/lime_concrete_pillar.png differ diff --git a/public/textures/chipped/lime_concrete_tiles.png b/public/textures/chipped/lime_concrete_tiles.png new file mode 100644 index 00000000..21913738 Binary files /dev/null and b/public/textures/chipped/lime_concrete_tiles.png differ diff --git a/public/textures/chipped/lime_glazed_terracotta_pillar_sides.png b/public/textures/chipped/lime_glazed_terracotta_pillar_sides.png new file mode 100644 index 00000000..31dc8604 Binary files /dev/null and b/public/textures/chipped/lime_glazed_terracotta_pillar_sides.png differ diff --git a/public/textures/chipped/lime_glazed_terracotta_pillar_top.png b/public/textures/chipped/lime_glazed_terracotta_pillar_top.png new file mode 100644 index 00000000..1c0cb9f8 Binary files /dev/null and b/public/textures/chipped/lime_glazed_terracotta_pillar_top.png differ diff --git a/public/textures/chipped/lime_glazed_terracotta_smooth_tiles.png b/public/textures/chipped/lime_glazed_terracotta_smooth_tiles.png new file mode 100644 index 00000000..3dd8b7d8 Binary files /dev/null and b/public/textures/chipped/lime_glazed_terracotta_smooth_tiles.png differ diff --git a/public/textures/chipped/lime_glazed_terracotta_tiles.png b/public/textures/chipped/lime_glazed_terracotta_tiles.png new file mode 100644 index 00000000..c4dd966f Binary files /dev/null and b/public/textures/chipped/lime_glazed_terracotta_tiles.png differ diff --git a/public/textures/chipped/lime_moss_block.png b/public/textures/chipped/lime_moss_block.png new file mode 100644 index 00000000..55b414e2 Binary files /dev/null and b/public/textures/chipped/lime_moss_block.png differ diff --git a/public/textures/chipped/lime_paper_soul_lantern.png b/public/textures/chipped/lime_paper_soul_lantern.png new file mode 100644 index 00000000..f6d99c44 Binary files /dev/null and b/public/textures/chipped/lime_paper_soul_lantern.png differ diff --git a/public/textures/chipped/lime_terracotta_bricks.png b/public/textures/chipped/lime_terracotta_bricks.png new file mode 100644 index 00000000..3df9d631 Binary files /dev/null and b/public/textures/chipped/lime_terracotta_bricks.png differ diff --git a/public/textures/chipped/lime_terracotta_column.png b/public/textures/chipped/lime_terracotta_column.png new file mode 100644 index 00000000..bcf2d462 Binary files /dev/null and b/public/textures/chipped/lime_terracotta_column.png differ diff --git a/public/textures/chipped/lime_terracotta_pillar.png b/public/textures/chipped/lime_terracotta_pillar.png new file mode 100644 index 00000000..99350a49 Binary files /dev/null and b/public/textures/chipped/lime_terracotta_pillar.png differ diff --git a/public/textures/chipped/lime_terracotta_tile.png b/public/textures/chipped/lime_terracotta_tile.png new file mode 100644 index 00000000..561e5699 Binary files /dev/null and b/public/textures/chipped/lime_terracotta_tile.png differ diff --git a/public/textures/chipped/lime_terracotta_tiles.png b/public/textures/chipped/lime_terracotta_tiles.png new file mode 100644 index 00000000..01d6db92 Binary files /dev/null and b/public/textures/chipped/lime_terracotta_tiles.png differ diff --git a/public/textures/chipped/linked_iron_bars.png b/public/textures/chipped/linked_iron_bars.png new file mode 100644 index 00000000..e12e19da Binary files /dev/null and b/public/textures/chipped/linked_iron_bars.png differ diff --git a/public/textures/chipped/loded_amethyst_block.png b/public/textures/chipped/loded_amethyst_block.png new file mode 100644 index 00000000..1bc2d8de Binary files /dev/null and b/public/textures/chipped/loded_amethyst_block.png differ diff --git a/public/textures/chipped/loded_ancient_debris.png b/public/textures/chipped/loded_ancient_debris.png new file mode 100644 index 00000000..aa0b8f23 Binary files /dev/null and b/public/textures/chipped/loded_ancient_debris.png differ diff --git a/public/textures/chipped/loded_andesite.png b/public/textures/chipped/loded_andesite.png new file mode 100644 index 00000000..7cbbfbad Binary files /dev/null and b/public/textures/chipped/loded_andesite.png differ diff --git a/public/textures/chipped/loded_basalt.png b/public/textures/chipped/loded_basalt.png new file mode 100644 index 00000000..bcbf7a42 Binary files /dev/null and b/public/textures/chipped/loded_basalt.png differ diff --git a/public/textures/chipped/loded_blackstone.png b/public/textures/chipped/loded_blackstone.png new file mode 100644 index 00000000..9afbdf55 Binary files /dev/null and b/public/textures/chipped/loded_blackstone.png differ diff --git a/public/textures/chipped/loded_blue_ice.png b/public/textures/chipped/loded_blue_ice.png new file mode 100644 index 00000000..3e8814b3 Binary files /dev/null and b/public/textures/chipped/loded_blue_ice.png differ diff --git a/public/textures/chipped/loded_borderless_bricks.png b/public/textures/chipped/loded_borderless_bricks.png new file mode 100644 index 00000000..b1922d1b Binary files /dev/null and b/public/textures/chipped/loded_borderless_bricks.png differ diff --git a/public/textures/chipped/loded_bricks.png b/public/textures/chipped/loded_bricks.png new file mode 100644 index 00000000..7ca3146b Binary files /dev/null and b/public/textures/chipped/loded_bricks.png differ diff --git a/public/textures/chipped/loded_calcite.png b/public/textures/chipped/loded_calcite.png new file mode 100644 index 00000000..0505a091 Binary files /dev/null and b/public/textures/chipped/loded_calcite.png differ diff --git a/public/textures/chipped/loded_clay.png b/public/textures/chipped/loded_clay.png new file mode 100644 index 00000000..b44851b8 Binary files /dev/null and b/public/textures/chipped/loded_clay.png differ diff --git a/public/textures/chipped/loded_coal_block.png b/public/textures/chipped/loded_coal_block.png new file mode 100644 index 00000000..f9e30804 Binary files /dev/null and b/public/textures/chipped/loded_coal_block.png differ diff --git a/public/textures/chipped/loded_cobblestone.png b/public/textures/chipped/loded_cobblestone.png new file mode 100644 index 00000000..f4f12a0a Binary files /dev/null and b/public/textures/chipped/loded_cobblestone.png differ diff --git a/public/textures/chipped/loded_crying_obsidian.png b/public/textures/chipped/loded_crying_obsidian.png new file mode 100644 index 00000000..2dbb89a3 Binary files /dev/null and b/public/textures/chipped/loded_crying_obsidian.png differ diff --git a/public/textures/chipped/loded_dark_prismarine.png b/public/textures/chipped/loded_dark_prismarine.png new file mode 100644 index 00000000..8d5c93fd Binary files /dev/null and b/public/textures/chipped/loded_dark_prismarine.png differ diff --git a/public/textures/chipped/loded_deepslate.png b/public/textures/chipped/loded_deepslate.png new file mode 100644 index 00000000..003c013d Binary files /dev/null and b/public/textures/chipped/loded_deepslate.png differ diff --git a/public/textures/chipped/loded_diorite.png b/public/textures/chipped/loded_diorite.png new file mode 100644 index 00000000..e1c382a3 Binary files /dev/null and b/public/textures/chipped/loded_diorite.png differ diff --git a/public/textures/chipped/loded_dirt.png b/public/textures/chipped/loded_dirt.png new file mode 100644 index 00000000..7f0b37a1 Binary files /dev/null and b/public/textures/chipped/loded_dirt.png differ diff --git a/public/textures/chipped/loded_dripstone_block.png b/public/textures/chipped/loded_dripstone_block.png new file mode 100644 index 00000000..7f6486fd Binary files /dev/null and b/public/textures/chipped/loded_dripstone_block.png differ diff --git a/public/textures/chipped/loded_end_stone.png b/public/textures/chipped/loded_end_stone.png new file mode 100644 index 00000000..ff224466 Binary files /dev/null and b/public/textures/chipped/loded_end_stone.png differ diff --git a/public/textures/chipped/loded_gilded_blackstone.png b/public/textures/chipped/loded_gilded_blackstone.png new file mode 100644 index 00000000..7a5c89cd Binary files /dev/null and b/public/textures/chipped/loded_gilded_blackstone.png differ diff --git a/public/textures/chipped/loded_granite.png b/public/textures/chipped/loded_granite.png new file mode 100644 index 00000000..40763a2c Binary files /dev/null and b/public/textures/chipped/loded_granite.png differ diff --git a/public/textures/chipped/loded_ice.png b/public/textures/chipped/loded_ice.png new file mode 100644 index 00000000..e258c41e Binary files /dev/null and b/public/textures/chipped/loded_ice.png differ diff --git a/public/textures/chipped/loded_lapis_block.png b/public/textures/chipped/loded_lapis_block.png new file mode 100644 index 00000000..d4fed66f Binary files /dev/null and b/public/textures/chipped/loded_lapis_block.png differ diff --git a/public/textures/chipped/loded_magma_block.png b/public/textures/chipped/loded_magma_block.png new file mode 100644 index 00000000..1f9db4d3 Binary files /dev/null and b/public/textures/chipped/loded_magma_block.png differ diff --git a/public/textures/chipped/loded_mossy_cobblestone.png b/public/textures/chipped/loded_mossy_cobblestone.png new file mode 100644 index 00000000..9dff544a Binary files /dev/null and b/public/textures/chipped/loded_mossy_cobblestone.png differ diff --git a/public/textures/chipped/loded_mossy_stone_bricks.png b/public/textures/chipped/loded_mossy_stone_bricks.png new file mode 100644 index 00000000..efdc26e9 Binary files /dev/null and b/public/textures/chipped/loded_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/loded_nether_bricks.png b/public/textures/chipped/loded_nether_bricks.png new file mode 100644 index 00000000..303f8e58 Binary files /dev/null and b/public/textures/chipped/loded_nether_bricks.png differ diff --git a/public/textures/chipped/loded_netherrack.png b/public/textures/chipped/loded_netherrack.png new file mode 100644 index 00000000..251b5377 Binary files /dev/null and b/public/textures/chipped/loded_netherrack.png differ diff --git a/public/textures/chipped/loded_obsidian.png b/public/textures/chipped/loded_obsidian.png new file mode 100644 index 00000000..ff2fc9ca Binary files /dev/null and b/public/textures/chipped/loded_obsidian.png differ diff --git a/public/textures/chipped/loded_packed_ice.png b/public/textures/chipped/loded_packed_ice.png new file mode 100644 index 00000000..5a9979cd Binary files /dev/null and b/public/textures/chipped/loded_packed_ice.png differ diff --git a/public/textures/chipped/loded_prismarine.png b/public/textures/chipped/loded_prismarine.png new file mode 100644 index 00000000..108f0373 Binary files /dev/null and b/public/textures/chipped/loded_prismarine.png differ diff --git a/public/textures/chipped/loded_purpur_block.png b/public/textures/chipped/loded_purpur_block.png new file mode 100644 index 00000000..22e14aea Binary files /dev/null and b/public/textures/chipped/loded_purpur_block.png differ diff --git a/public/textures/chipped/loded_quartz_block.png b/public/textures/chipped/loded_quartz_block.png new file mode 100644 index 00000000..4fdb6201 Binary files /dev/null and b/public/textures/chipped/loded_quartz_block.png differ diff --git a/public/textures/chipped/loded_raw_copper_block.png b/public/textures/chipped/loded_raw_copper_block.png new file mode 100644 index 00000000..9aa72af7 Binary files /dev/null and b/public/textures/chipped/loded_raw_copper_block.png differ diff --git a/public/textures/chipped/loded_raw_gold_block.png b/public/textures/chipped/loded_raw_gold_block.png new file mode 100644 index 00000000..0ca4748f Binary files /dev/null and b/public/textures/chipped/loded_raw_gold_block.png differ diff --git a/public/textures/chipped/loded_raw_iron_block.png b/public/textures/chipped/loded_raw_iron_block.png new file mode 100644 index 00000000..806e33db Binary files /dev/null and b/public/textures/chipped/loded_raw_iron_block.png differ diff --git a/public/textures/chipped/loded_red_nether_bricks.png b/public/textures/chipped/loded_red_nether_bricks.png new file mode 100644 index 00000000..357e4c27 Binary files /dev/null and b/public/textures/chipped/loded_red_nether_bricks.png differ diff --git a/public/textures/chipped/loded_red_sandstone.png b/public/textures/chipped/loded_red_sandstone.png new file mode 100644 index 00000000..17ae7331 Binary files /dev/null and b/public/textures/chipped/loded_red_sandstone.png differ diff --git a/public/textures/chipped/loded_redstone_block.png b/public/textures/chipped/loded_redstone_block.png new file mode 100644 index 00000000..5355a370 Binary files /dev/null and b/public/textures/chipped/loded_redstone_block.png differ diff --git a/public/textures/chipped/loded_sandstone.png b/public/textures/chipped/loded_sandstone.png new file mode 100644 index 00000000..553bd81f Binary files /dev/null and b/public/textures/chipped/loded_sandstone.png differ diff --git a/public/textures/chipped/loded_smooth_stone.png b/public/textures/chipped/loded_smooth_stone.png new file mode 100644 index 00000000..30c893f0 Binary files /dev/null and b/public/textures/chipped/loded_smooth_stone.png differ diff --git a/public/textures/chipped/loded_snow_block.png b/public/textures/chipped/loded_snow_block.png new file mode 100644 index 00000000..28654923 Binary files /dev/null and b/public/textures/chipped/loded_snow_block.png differ diff --git a/public/textures/chipped/loded_stone.png b/public/textures/chipped/loded_stone.png new file mode 100644 index 00000000..9978e63c Binary files /dev/null and b/public/textures/chipped/loded_stone.png differ diff --git a/public/textures/chipped/loded_tuff.png b/public/textures/chipped/loded_tuff.png new file mode 100644 index 00000000..6188ca84 Binary files /dev/null and b/public/textures/chipped/loded_tuff.png differ diff --git a/public/textures/chipped/lodestone_bricks.png b/public/textures/chipped/lodestone_bricks.png new file mode 100644 index 00000000..d34a5020 Binary files /dev/null and b/public/textures/chipped/lodestone_bricks.png differ diff --git a/public/textures/chipped/lodestone_mini_tiles.png b/public/textures/chipped/lodestone_mini_tiles.png new file mode 100644 index 00000000..9af39878 Binary files /dev/null and b/public/textures/chipped/lodestone_mini_tiles.png differ diff --git a/public/textures/chipped/lodestone_pillar.png b/public/textures/chipped/lodestone_pillar.png new file mode 100644 index 00000000..a28fb596 Binary files /dev/null and b/public/textures/chipped/lodestone_pillar.png differ diff --git a/public/textures/chipped/lodestone_pillar_top.png b/public/textures/chipped/lodestone_pillar_top.png new file mode 100644 index 00000000..5c29cdd2 Binary files /dev/null and b/public/textures/chipped/lodestone_pillar_top.png differ diff --git a/public/textures/chipped/lodestone_scales.png b/public/textures/chipped/lodestone_scales.png new file mode 100644 index 00000000..b66f9fe6 Binary files /dev/null and b/public/textures/chipped/lodestone_scales.png differ diff --git a/public/textures/chipped/long_vine.png b/public/textures/chipped/long_vine.png new file mode 100644 index 00000000..7d406f7e Binary files /dev/null and b/public/textures/chipped/long_vine.png differ diff --git a/public/textures/chipped/loom_table.png b/public/textures/chipped/loom_table.png new file mode 100644 index 00000000..3764ba5a Binary files /dev/null and b/public/textures/chipped/loom_table.png differ diff --git a/public/textures/chipped/loose_iron_bars.png b/public/textures/chipped/loose_iron_bars.png new file mode 100644 index 00000000..8df3e40d Binary files /dev/null and b/public/textures/chipped/loose_iron_bars.png differ diff --git a/public/textures/chipped/loreful_mud.png b/public/textures/chipped/loreful_mud.png new file mode 100644 index 00000000..0e8af929 Binary files /dev/null and b/public/textures/chipped/loreful_mud.png differ diff --git a/public/textures/chipped/loreful_mud_bricks.png b/public/textures/chipped/loreful_mud_bricks.png new file mode 100644 index 00000000..970347b1 Binary files /dev/null and b/public/textures/chipped/loreful_mud_bricks.png differ diff --git a/public/textures/chipped/loreful_packed_mud.png b/public/textures/chipped/loreful_packed_mud.png new file mode 100644 index 00000000..7bb7a64e Binary files /dev/null and b/public/textures/chipped/loreful_packed_mud.png differ diff --git a/public/textures/chipped/lumpy_stripped_acacia_log.png b/public/textures/chipped/lumpy_stripped_acacia_log.png new file mode 100644 index 00000000..02cb5a1a Binary files /dev/null and b/public/textures/chipped/lumpy_stripped_acacia_log.png differ diff --git a/public/textures/chipped/lumpy_stripped_birch_log.png b/public/textures/chipped/lumpy_stripped_birch_log.png new file mode 100644 index 00000000..e553c8a4 Binary files /dev/null and b/public/textures/chipped/lumpy_stripped_birch_log.png differ diff --git a/public/textures/chipped/lumpy_stripped_cherry_log.png b/public/textures/chipped/lumpy_stripped_cherry_log.png new file mode 100644 index 00000000..d27dff85 Binary files /dev/null and b/public/textures/chipped/lumpy_stripped_cherry_log.png differ diff --git a/public/textures/chipped/lumpy_stripped_crimson_stem.png b/public/textures/chipped/lumpy_stripped_crimson_stem.png new file mode 100644 index 00000000..0931560e Binary files /dev/null and b/public/textures/chipped/lumpy_stripped_crimson_stem.png differ diff --git a/public/textures/chipped/lumpy_stripped_dark_oak_log.png b/public/textures/chipped/lumpy_stripped_dark_oak_log.png new file mode 100644 index 00000000..ced065de Binary files /dev/null and b/public/textures/chipped/lumpy_stripped_dark_oak_log.png differ diff --git a/public/textures/chipped/lumpy_stripped_jungle_log.png b/public/textures/chipped/lumpy_stripped_jungle_log.png new file mode 100644 index 00000000..c3101e9b Binary files /dev/null and b/public/textures/chipped/lumpy_stripped_jungle_log.png differ diff --git a/public/textures/chipped/lumpy_stripped_mangrove_log.png b/public/textures/chipped/lumpy_stripped_mangrove_log.png new file mode 100644 index 00000000..fb99b539 Binary files /dev/null and b/public/textures/chipped/lumpy_stripped_mangrove_log.png differ diff --git a/public/textures/chipped/lumpy_stripped_oak_log.png b/public/textures/chipped/lumpy_stripped_oak_log.png new file mode 100644 index 00000000..ad6524de Binary files /dev/null and b/public/textures/chipped/lumpy_stripped_oak_log.png differ diff --git a/public/textures/chipped/lumpy_stripped_spruce_log.png b/public/textures/chipped/lumpy_stripped_spruce_log.png new file mode 100644 index 00000000..04b6e476 Binary files /dev/null and b/public/textures/chipped/lumpy_stripped_spruce_log.png differ diff --git a/public/textures/chipped/lumpy_stripped_warped_stem.png b/public/textures/chipped/lumpy_stripped_warped_stem.png new file mode 100644 index 00000000..72ee5925 Binary files /dev/null and b/public/textures/chipped/lumpy_stripped_warped_stem.png differ diff --git a/public/textures/chipped/lush_mangrove_roots.png b/public/textures/chipped/lush_mangrove_roots.png new file mode 100644 index 00000000..8b2a7d7b Binary files /dev/null and b/public/textures/chipped/lush_mangrove_roots.png differ diff --git a/public/textures/chipped/lush_red_sand.png b/public/textures/chipped/lush_red_sand.png new file mode 100644 index 00000000..6d015cb0 Binary files /dev/null and b/public/textures/chipped/lush_red_sand.png differ diff --git a/public/textures/chipped/lush_sponge.png b/public/textures/chipped/lush_sponge.png new file mode 100644 index 00000000..42ae6358 Binary files /dev/null and b/public/textures/chipped/lush_sponge.png differ diff --git a/public/textures/chipped/lush_vine.png b/public/textures/chipped/lush_vine.png new file mode 100644 index 00000000..366408e3 Binary files /dev/null and b/public/textures/chipped/lush_vine.png differ diff --git a/public/textures/chipped/m_sign_stripped_acacia_log.png b/public/textures/chipped/m_sign_stripped_acacia_log.png new file mode 100644 index 00000000..90772eef Binary files /dev/null and b/public/textures/chipped/m_sign_stripped_acacia_log.png differ diff --git a/public/textures/chipped/m_sign_stripped_birch_log.png b/public/textures/chipped/m_sign_stripped_birch_log.png new file mode 100644 index 00000000..9523825f Binary files /dev/null and b/public/textures/chipped/m_sign_stripped_birch_log.png differ diff --git a/public/textures/chipped/m_sign_stripped_cherry_log.png b/public/textures/chipped/m_sign_stripped_cherry_log.png new file mode 100644 index 00000000..9f41bae2 Binary files /dev/null and b/public/textures/chipped/m_sign_stripped_cherry_log.png differ diff --git a/public/textures/chipped/m_sign_stripped_crimson_stem.png b/public/textures/chipped/m_sign_stripped_crimson_stem.png new file mode 100644 index 00000000..958154cb Binary files /dev/null and b/public/textures/chipped/m_sign_stripped_crimson_stem.png differ diff --git a/public/textures/chipped/m_sign_stripped_dark_oak_log.png b/public/textures/chipped/m_sign_stripped_dark_oak_log.png new file mode 100644 index 00000000..7263f664 Binary files /dev/null and b/public/textures/chipped/m_sign_stripped_dark_oak_log.png differ diff --git a/public/textures/chipped/m_sign_stripped_jungle_log.png b/public/textures/chipped/m_sign_stripped_jungle_log.png new file mode 100644 index 00000000..a9a8a1e3 Binary files /dev/null and b/public/textures/chipped/m_sign_stripped_jungle_log.png differ diff --git a/public/textures/chipped/m_sign_stripped_mangrove_log.png b/public/textures/chipped/m_sign_stripped_mangrove_log.png new file mode 100644 index 00000000..0ab686db Binary files /dev/null and b/public/textures/chipped/m_sign_stripped_mangrove_log.png differ diff --git a/public/textures/chipped/m_sign_stripped_oak_log.png b/public/textures/chipped/m_sign_stripped_oak_log.png new file mode 100644 index 00000000..6e67a7e2 Binary files /dev/null and b/public/textures/chipped/m_sign_stripped_oak_log.png differ diff --git a/public/textures/chipped/m_sign_stripped_spruce_log.png b/public/textures/chipped/m_sign_stripped_spruce_log.png new file mode 100644 index 00000000..f501ec30 Binary files /dev/null and b/public/textures/chipped/m_sign_stripped_spruce_log.png differ diff --git a/public/textures/chipped/m_sign_stripped_warped_stem.png b/public/textures/chipped/m_sign_stripped_warped_stem.png new file mode 100644 index 00000000..54f1b2c3 Binary files /dev/null and b/public/textures/chipped/m_sign_stripped_warped_stem.png differ diff --git a/public/textures/chipped/magenta_concrete_bricks.png b/public/textures/chipped/magenta_concrete_bricks.png new file mode 100644 index 00000000..ba8e29d6 Binary files /dev/null and b/public/textures/chipped/magenta_concrete_bricks.png differ diff --git a/public/textures/chipped/magenta_concrete_panel.png b/public/textures/chipped/magenta_concrete_panel.png new file mode 100644 index 00000000..bf4dac80 Binary files /dev/null and b/public/textures/chipped/magenta_concrete_panel.png differ diff --git a/public/textures/chipped/magenta_concrete_pillar.png b/public/textures/chipped/magenta_concrete_pillar.png new file mode 100644 index 00000000..e39a1c0c Binary files /dev/null and b/public/textures/chipped/magenta_concrete_pillar.png differ diff --git a/public/textures/chipped/magenta_concrete_tiles.png b/public/textures/chipped/magenta_concrete_tiles.png new file mode 100644 index 00000000..465aac31 Binary files /dev/null and b/public/textures/chipped/magenta_concrete_tiles.png differ diff --git a/public/textures/chipped/magenta_flower_acacia_leaves.png b/public/textures/chipped/magenta_flower_acacia_leaves.png new file mode 100644 index 00000000..29737f84 Binary files /dev/null and b/public/textures/chipped/magenta_flower_acacia_leaves.png differ diff --git a/public/textures/chipped/magenta_flower_birch_leaves.png b/public/textures/chipped/magenta_flower_birch_leaves.png new file mode 100644 index 00000000..a1dac2d9 Binary files /dev/null and b/public/textures/chipped/magenta_flower_birch_leaves.png differ diff --git a/public/textures/chipped/magenta_flower_dark_oak_leaves.png b/public/textures/chipped/magenta_flower_dark_oak_leaves.png new file mode 100644 index 00000000..d65211fe Binary files /dev/null and b/public/textures/chipped/magenta_flower_dark_oak_leaves.png differ diff --git a/public/textures/chipped/magenta_flower_jungle_leaves.png b/public/textures/chipped/magenta_flower_jungle_leaves.png new file mode 100644 index 00000000..64d7d8d5 Binary files /dev/null and b/public/textures/chipped/magenta_flower_jungle_leaves.png differ diff --git a/public/textures/chipped/magenta_flower_oak_leaves.png b/public/textures/chipped/magenta_flower_oak_leaves.png new file mode 100644 index 00000000..ba6b0d87 Binary files /dev/null and b/public/textures/chipped/magenta_flower_oak_leaves.png differ diff --git a/public/textures/chipped/magenta_flower_spruce_leaves.png b/public/textures/chipped/magenta_flower_spruce_leaves.png new file mode 100644 index 00000000..21ba750c Binary files /dev/null and b/public/textures/chipped/magenta_flower_spruce_leaves.png differ diff --git a/public/textures/chipped/magenta_glazed_terracotta_pillar_sides.png b/public/textures/chipped/magenta_glazed_terracotta_pillar_sides.png new file mode 100644 index 00000000..26a45c9a Binary files /dev/null and b/public/textures/chipped/magenta_glazed_terracotta_pillar_sides.png differ diff --git a/public/textures/chipped/magenta_glazed_terracotta_pillar_top.png b/public/textures/chipped/magenta_glazed_terracotta_pillar_top.png new file mode 100644 index 00000000..d2895b35 Binary files /dev/null and b/public/textures/chipped/magenta_glazed_terracotta_pillar_top.png differ diff --git a/public/textures/chipped/magenta_glazed_terracotta_smooth_tiles.png b/public/textures/chipped/magenta_glazed_terracotta_smooth_tiles.png new file mode 100644 index 00000000..9ad710e5 Binary files /dev/null and b/public/textures/chipped/magenta_glazed_terracotta_smooth_tiles.png differ diff --git a/public/textures/chipped/magenta_glazed_terracotta_tiles.png b/public/textures/chipped/magenta_glazed_terracotta_tiles.png new file mode 100644 index 00000000..b24e2df5 Binary files /dev/null and b/public/textures/chipped/magenta_glazed_terracotta_tiles.png differ diff --git a/public/textures/chipped/magenta_terracotta_bricks.png b/public/textures/chipped/magenta_terracotta_bricks.png new file mode 100644 index 00000000..f58bec1c Binary files /dev/null and b/public/textures/chipped/magenta_terracotta_bricks.png differ diff --git a/public/textures/chipped/magenta_terracotta_column.png b/public/textures/chipped/magenta_terracotta_column.png new file mode 100644 index 00000000..9de84902 Binary files /dev/null and b/public/textures/chipped/magenta_terracotta_column.png differ diff --git a/public/textures/chipped/magenta_terracotta_pillar.png b/public/textures/chipped/magenta_terracotta_pillar.png new file mode 100644 index 00000000..b92c6c64 Binary files /dev/null and b/public/textures/chipped/magenta_terracotta_pillar.png differ diff --git a/public/textures/chipped/magenta_terracotta_tile.png b/public/textures/chipped/magenta_terracotta_tile.png new file mode 100644 index 00000000..cda7ccc0 Binary files /dev/null and b/public/textures/chipped/magenta_terracotta_tile.png differ diff --git a/public/textures/chipped/magenta_terracotta_tiles.png b/public/textures/chipped/magenta_terracotta_tiles.png new file mode 100644 index 00000000..f7ebb7cf Binary files /dev/null and b/public/textures/chipped/magenta_terracotta_tiles.png differ diff --git a/public/textures/chipped/magma_block_bricks.png b/public/textures/chipped/magma_block_bricks.png new file mode 100644 index 00000000..b27c1ba8 Binary files /dev/null and b/public/textures/chipped/magma_block_bricks.png differ diff --git a/public/textures/chipped/magma_block_mini_tiles.png b/public/textures/chipped/magma_block_mini_tiles.png new file mode 100644 index 00000000..714721d4 Binary files /dev/null and b/public/textures/chipped/magma_block_mini_tiles.png differ diff --git a/public/textures/chipped/magma_block_pillar.png b/public/textures/chipped/magma_block_pillar.png new file mode 100644 index 00000000..0c3653e6 Binary files /dev/null and b/public/textures/chipped/magma_block_pillar.png differ diff --git a/public/textures/chipped/magma_block_pillar_top.png b/public/textures/chipped/magma_block_pillar_top.png new file mode 100644 index 00000000..92d4781d Binary files /dev/null and b/public/textures/chipped/magma_block_pillar_top.png differ diff --git a/public/textures/chipped/magma_block_scales.png b/public/textures/chipped/magma_block_scales.png new file mode 100644 index 00000000..2c9cf69f Binary files /dev/null and b/public/textures/chipped/magma_block_scales.png differ diff --git a/public/textures/chipped/mangled_warped_roots.png b/public/textures/chipped/mangled_warped_roots.png new file mode 100644 index 00000000..c6867715 Binary files /dev/null and b/public/textures/chipped/mangled_warped_roots.png differ diff --git a/public/textures/chipped/mangrove_brick_barrel.png b/public/textures/chipped/mangrove_brick_barrel.png new file mode 100644 index 00000000..2dcb1e67 Binary files /dev/null and b/public/textures/chipped/mangrove_brick_barrel.png differ diff --git a/public/textures/chipped/mangrove_crate.png b/public/textures/chipped/mangrove_crate.png new file mode 100644 index 00000000..b7d61e99 Binary files /dev/null and b/public/textures/chipped/mangrove_crate.png differ diff --git a/public/textures/chipped/mangrove_planks_mosaic.png b/public/textures/chipped/mangrove_planks_mosaic.png new file mode 100644 index 00000000..11016e54 Binary files /dev/null and b/public/textures/chipped/mangrove_planks_mosaic.png differ diff --git a/public/textures/chipped/mangrove_planks_panel.png b/public/textures/chipped/mangrove_planks_panel.png new file mode 100644 index 00000000..477ba666 Binary files /dev/null and b/public/textures/chipped/mangrove_planks_panel.png differ diff --git a/public/textures/chipped/mangrove_planks_shavings.png b/public/textures/chipped/mangrove_planks_shavings.png new file mode 100644 index 00000000..c33c8cac Binary files /dev/null and b/public/textures/chipped/mangrove_planks_shavings.png differ diff --git a/public/textures/chipped/mangrove_tile_barrel.png b/public/textures/chipped/mangrove_tile_barrel.png new file mode 100644 index 00000000..c94c2268 Binary files /dev/null and b/public/textures/chipped/mangrove_tile_barrel.png differ diff --git a/public/textures/chipped/mason_table.png b/public/textures/chipped/mason_table.png new file mode 100644 index 00000000..85324f49 Binary files /dev/null and b/public/textures/chipped/mason_table.png differ diff --git a/public/textures/chipped/massive_amethyst_block_bricks.png b/public/textures/chipped/massive_amethyst_block_bricks.png new file mode 100644 index 00000000..5011d297 Binary files /dev/null and b/public/textures/chipped/massive_amethyst_block_bricks.png differ diff --git a/public/textures/chipped/massive_ancient_debris_bricks.png b/public/textures/chipped/massive_ancient_debris_bricks.png new file mode 100644 index 00000000..278d193c Binary files /dev/null and b/public/textures/chipped/massive_ancient_debris_bricks.png differ diff --git a/public/textures/chipped/massive_andesite_bricks.png b/public/textures/chipped/massive_andesite_bricks.png new file mode 100644 index 00000000..bbd87668 Binary files /dev/null and b/public/textures/chipped/massive_andesite_bricks.png differ diff --git a/public/textures/chipped/massive_basalt_bricks.png b/public/textures/chipped/massive_basalt_bricks.png new file mode 100644 index 00000000..af2726dd Binary files /dev/null and b/public/textures/chipped/massive_basalt_bricks.png differ diff --git a/public/textures/chipped/massive_blackstone_bricks.png b/public/textures/chipped/massive_blackstone_bricks.png new file mode 100644 index 00000000..9e72a38f Binary files /dev/null and b/public/textures/chipped/massive_blackstone_bricks.png differ diff --git a/public/textures/chipped/massive_blue_ice_bricks.png b/public/textures/chipped/massive_blue_ice_bricks.png new file mode 100644 index 00000000..4c3c3fc7 Binary files /dev/null and b/public/textures/chipped/massive_blue_ice_bricks.png differ diff --git a/public/textures/chipped/massive_borderless_bricks_bricks.png b/public/textures/chipped/massive_borderless_bricks_bricks.png new file mode 100644 index 00000000..95e9ce54 Binary files /dev/null and b/public/textures/chipped/massive_borderless_bricks_bricks.png differ diff --git a/public/textures/chipped/massive_bricks_bricks.png b/public/textures/chipped/massive_bricks_bricks.png new file mode 100644 index 00000000..b72f64c2 Binary files /dev/null and b/public/textures/chipped/massive_bricks_bricks.png differ diff --git a/public/textures/chipped/massive_calcite_bricks.png b/public/textures/chipped/massive_calcite_bricks.png new file mode 100644 index 00000000..2b4fa4a9 Binary files /dev/null and b/public/textures/chipped/massive_calcite_bricks.png differ diff --git a/public/textures/chipped/massive_clay_bricks.png b/public/textures/chipped/massive_clay_bricks.png new file mode 100644 index 00000000..ec02219c Binary files /dev/null and b/public/textures/chipped/massive_clay_bricks.png differ diff --git a/public/textures/chipped/massive_coal_block_bricks.png b/public/textures/chipped/massive_coal_block_bricks.png new file mode 100644 index 00000000..b511ec34 Binary files /dev/null and b/public/textures/chipped/massive_coal_block_bricks.png differ diff --git a/public/textures/chipped/massive_cobblestone_bricks.png b/public/textures/chipped/massive_cobblestone_bricks.png new file mode 100644 index 00000000..ed8dbb40 Binary files /dev/null and b/public/textures/chipped/massive_cobblestone_bricks.png differ diff --git a/public/textures/chipped/massive_crying_obsidian_bricks.png b/public/textures/chipped/massive_crying_obsidian_bricks.png new file mode 100644 index 00000000..e0a3d81c Binary files /dev/null and b/public/textures/chipped/massive_crying_obsidian_bricks.png differ diff --git a/public/textures/chipped/massive_dark_prismarine_bricks.png b/public/textures/chipped/massive_dark_prismarine_bricks.png new file mode 100644 index 00000000..8795dcfa Binary files /dev/null and b/public/textures/chipped/massive_dark_prismarine_bricks.png differ diff --git a/public/textures/chipped/massive_deepslate_bricks.png b/public/textures/chipped/massive_deepslate_bricks.png new file mode 100644 index 00000000..e41dce9e Binary files /dev/null and b/public/textures/chipped/massive_deepslate_bricks.png differ diff --git a/public/textures/chipped/massive_diorite_bricks.png b/public/textures/chipped/massive_diorite_bricks.png new file mode 100644 index 00000000..e0f27ecd Binary files /dev/null and b/public/textures/chipped/massive_diorite_bricks.png differ diff --git a/public/textures/chipped/massive_dirt_bricks.png b/public/textures/chipped/massive_dirt_bricks.png new file mode 100644 index 00000000..cd1a3e5b Binary files /dev/null and b/public/textures/chipped/massive_dirt_bricks.png differ diff --git a/public/textures/chipped/massive_dripstone_block_bricks.png b/public/textures/chipped/massive_dripstone_block_bricks.png new file mode 100644 index 00000000..d37744cf Binary files /dev/null and b/public/textures/chipped/massive_dripstone_block_bricks.png differ diff --git a/public/textures/chipped/massive_end_stone_bricks.png b/public/textures/chipped/massive_end_stone_bricks.png new file mode 100644 index 00000000..9857e973 Binary files /dev/null and b/public/textures/chipped/massive_end_stone_bricks.png differ diff --git a/public/textures/chipped/massive_gilded_blackstone_bricks.png b/public/textures/chipped/massive_gilded_blackstone_bricks.png new file mode 100644 index 00000000..913e4dd7 Binary files /dev/null and b/public/textures/chipped/massive_gilded_blackstone_bricks.png differ diff --git a/public/textures/chipped/massive_granite_bricks.png b/public/textures/chipped/massive_granite_bricks.png new file mode 100644 index 00000000..ea43888e Binary files /dev/null and b/public/textures/chipped/massive_granite_bricks.png differ diff --git a/public/textures/chipped/massive_ice_bricks.png b/public/textures/chipped/massive_ice_bricks.png new file mode 100644 index 00000000..fdaed73d Binary files /dev/null and b/public/textures/chipped/massive_ice_bricks.png differ diff --git a/public/textures/chipped/massive_lapis_block_bricks.png b/public/textures/chipped/massive_lapis_block_bricks.png new file mode 100644 index 00000000..1ff66bcb Binary files /dev/null and b/public/textures/chipped/massive_lapis_block_bricks.png differ diff --git a/public/textures/chipped/massive_lodestone_bricks.png b/public/textures/chipped/massive_lodestone_bricks.png new file mode 100644 index 00000000..99891875 Binary files /dev/null and b/public/textures/chipped/massive_lodestone_bricks.png differ diff --git a/public/textures/chipped/massive_magma_block_bricks.png b/public/textures/chipped/massive_magma_block_bricks.png new file mode 100644 index 00000000..fbf1bb45 Binary files /dev/null and b/public/textures/chipped/massive_magma_block_bricks.png differ diff --git a/public/textures/chipped/massive_mossy_cobblestone_bricks.png b/public/textures/chipped/massive_mossy_cobblestone_bricks.png new file mode 100644 index 00000000..4374eb2b Binary files /dev/null and b/public/textures/chipped/massive_mossy_cobblestone_bricks.png differ diff --git a/public/textures/chipped/massive_mossy_stone_bricks_bricks.png b/public/textures/chipped/massive_mossy_stone_bricks_bricks.png new file mode 100644 index 00000000..ae6069e1 Binary files /dev/null and b/public/textures/chipped/massive_mossy_stone_bricks_bricks.png differ diff --git a/public/textures/chipped/massive_mud_bricks.png b/public/textures/chipped/massive_mud_bricks.png new file mode 100644 index 00000000..8f0f29f5 Binary files /dev/null and b/public/textures/chipped/massive_mud_bricks.png differ diff --git a/public/textures/chipped/massive_mud_bricks_bricks.png b/public/textures/chipped/massive_mud_bricks_bricks.png new file mode 100644 index 00000000..83146b8e Binary files /dev/null and b/public/textures/chipped/massive_mud_bricks_bricks.png differ diff --git a/public/textures/chipped/massive_nether_bricks_bricks.png b/public/textures/chipped/massive_nether_bricks_bricks.png new file mode 100644 index 00000000..fca4f583 Binary files /dev/null and b/public/textures/chipped/massive_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/massive_netherrack_bricks.png b/public/textures/chipped/massive_netherrack_bricks.png new file mode 100644 index 00000000..1064d78e Binary files /dev/null and b/public/textures/chipped/massive_netherrack_bricks.png differ diff --git a/public/textures/chipped/massive_obsidian_bricks.png b/public/textures/chipped/massive_obsidian_bricks.png new file mode 100644 index 00000000..e8e2b71b Binary files /dev/null and b/public/textures/chipped/massive_obsidian_bricks.png differ diff --git a/public/textures/chipped/massive_packed_ice_bricks.png b/public/textures/chipped/massive_packed_ice_bricks.png new file mode 100644 index 00000000..506447bb Binary files /dev/null and b/public/textures/chipped/massive_packed_ice_bricks.png differ diff --git a/public/textures/chipped/massive_packed_mud_bricks.png b/public/textures/chipped/massive_packed_mud_bricks.png new file mode 100644 index 00000000..5ba17114 Binary files /dev/null and b/public/textures/chipped/massive_packed_mud_bricks.png differ diff --git a/public/textures/chipped/massive_prismarine_bricks.png b/public/textures/chipped/massive_prismarine_bricks.png new file mode 100644 index 00000000..08f27f02 Binary files /dev/null and b/public/textures/chipped/massive_prismarine_bricks.png differ diff --git a/public/textures/chipped/massive_purpur_block_bricks.png b/public/textures/chipped/massive_purpur_block_bricks.png new file mode 100644 index 00000000..676d74a5 Binary files /dev/null and b/public/textures/chipped/massive_purpur_block_bricks.png differ diff --git a/public/textures/chipped/massive_quartz_block_bricks.png b/public/textures/chipped/massive_quartz_block_bricks.png new file mode 100644 index 00000000..a0d66009 Binary files /dev/null and b/public/textures/chipped/massive_quartz_block_bricks.png differ diff --git a/public/textures/chipped/massive_raw_copper_block_bricks.png b/public/textures/chipped/massive_raw_copper_block_bricks.png new file mode 100644 index 00000000..443acc39 Binary files /dev/null and b/public/textures/chipped/massive_raw_copper_block_bricks.png differ diff --git a/public/textures/chipped/massive_raw_gold_block_bricks.png b/public/textures/chipped/massive_raw_gold_block_bricks.png new file mode 100644 index 00000000..95914250 Binary files /dev/null and b/public/textures/chipped/massive_raw_gold_block_bricks.png differ diff --git a/public/textures/chipped/massive_raw_iron_block_bricks.png b/public/textures/chipped/massive_raw_iron_block_bricks.png new file mode 100644 index 00000000..b6a7b7d7 Binary files /dev/null and b/public/textures/chipped/massive_raw_iron_block_bricks.png differ diff --git a/public/textures/chipped/massive_red_nether_bricks_bricks.png b/public/textures/chipped/massive_red_nether_bricks_bricks.png new file mode 100644 index 00000000..24a3db2e Binary files /dev/null and b/public/textures/chipped/massive_red_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/massive_red_sandstone_bricks.png b/public/textures/chipped/massive_red_sandstone_bricks.png new file mode 100644 index 00000000..c1998e41 Binary files /dev/null and b/public/textures/chipped/massive_red_sandstone_bricks.png differ diff --git a/public/textures/chipped/massive_redstone_block_bricks.png b/public/textures/chipped/massive_redstone_block_bricks.png new file mode 100644 index 00000000..85af119f Binary files /dev/null and b/public/textures/chipped/massive_redstone_block_bricks.png differ diff --git a/public/textures/chipped/massive_sandstone_bricks.png b/public/textures/chipped/massive_sandstone_bricks.png new file mode 100644 index 00000000..88c02f2b Binary files /dev/null and b/public/textures/chipped/massive_sandstone_bricks.png differ diff --git a/public/textures/chipped/massive_smooth_stone_bricks.png b/public/textures/chipped/massive_smooth_stone_bricks.png new file mode 100644 index 00000000..bcc3a151 Binary files /dev/null and b/public/textures/chipped/massive_smooth_stone_bricks.png differ diff --git a/public/textures/chipped/massive_snow_block_bricks.png b/public/textures/chipped/massive_snow_block_bricks.png new file mode 100644 index 00000000..1bda6c17 Binary files /dev/null and b/public/textures/chipped/massive_snow_block_bricks.png differ diff --git a/public/textures/chipped/massive_stone_bricks.png b/public/textures/chipped/massive_stone_bricks.png new file mode 100644 index 00000000..5f174f10 Binary files /dev/null and b/public/textures/chipped/massive_stone_bricks.png differ diff --git a/public/textures/chipped/massive_tuff_bricks.png b/public/textures/chipped/massive_tuff_bricks.png new file mode 100644 index 00000000..39c527f5 Binary files /dev/null and b/public/textures/chipped/massive_tuff_bricks.png differ diff --git a/public/textures/chipped/meming_soul_sand.png b/public/textures/chipped/meming_soul_sand.png new file mode 100644 index 00000000..7d111557 Binary files /dev/null and b/public/textures/chipped/meming_soul_sand.png differ diff --git a/public/textures/chipped/meshed_acacia_trapdoor.png b/public/textures/chipped/meshed_acacia_trapdoor.png new file mode 100644 index 00000000..448cb979 Binary files /dev/null and b/public/textures/chipped/meshed_acacia_trapdoor.png differ diff --git a/public/textures/chipped/meshed_bamboo_trapdoor.png b/public/textures/chipped/meshed_bamboo_trapdoor.png new file mode 100644 index 00000000..a52d9fdc Binary files /dev/null and b/public/textures/chipped/meshed_bamboo_trapdoor.png differ diff --git a/public/textures/chipped/meshed_birch_trapdoor.png b/public/textures/chipped/meshed_birch_trapdoor.png new file mode 100644 index 00000000..5b79a358 Binary files /dev/null and b/public/textures/chipped/meshed_birch_trapdoor.png differ diff --git a/public/textures/chipped/meshed_cherry_trapdoor.png b/public/textures/chipped/meshed_cherry_trapdoor.png new file mode 100644 index 00000000..509cb0b0 Binary files /dev/null and b/public/textures/chipped/meshed_cherry_trapdoor.png differ diff --git a/public/textures/chipped/meshed_crimson_trapdoor.png b/public/textures/chipped/meshed_crimson_trapdoor.png new file mode 100644 index 00000000..0733a772 Binary files /dev/null and b/public/textures/chipped/meshed_crimson_trapdoor.png differ diff --git a/public/textures/chipped/meshed_dark_oak_trapdoor.png b/public/textures/chipped/meshed_dark_oak_trapdoor.png new file mode 100644 index 00000000..c3f2246c Binary files /dev/null and b/public/textures/chipped/meshed_dark_oak_trapdoor.png differ diff --git a/public/textures/chipped/meshed_jungle_trapdoor.png b/public/textures/chipped/meshed_jungle_trapdoor.png new file mode 100644 index 00000000..4b38ec90 Binary files /dev/null and b/public/textures/chipped/meshed_jungle_trapdoor.png differ diff --git a/public/textures/chipped/meshed_mangrove_trapdoor.png b/public/textures/chipped/meshed_mangrove_trapdoor.png new file mode 100644 index 00000000..6f9f8d2e Binary files /dev/null and b/public/textures/chipped/meshed_mangrove_trapdoor.png differ diff --git a/public/textures/chipped/meshed_oak_trapdoor.png b/public/textures/chipped/meshed_oak_trapdoor.png new file mode 100644 index 00000000..85867df6 Binary files /dev/null and b/public/textures/chipped/meshed_oak_trapdoor.png differ diff --git a/public/textures/chipped/meshed_spruce_trapdoor.png b/public/textures/chipped/meshed_spruce_trapdoor.png new file mode 100644 index 00000000..f093ee44 Binary files /dev/null and b/public/textures/chipped/meshed_spruce_trapdoor.png differ diff --git a/public/textures/chipped/meshed_warped_trapdoor.png b/public/textures/chipped/meshed_warped_trapdoor.png new file mode 100644 index 00000000..e3fe35d8 Binary files /dev/null and b/public/textures/chipped/meshed_warped_trapdoor.png differ diff --git a/public/textures/chipped/metal_barrel.png b/public/textures/chipped/metal_barrel.png new file mode 100644 index 00000000..15da6a04 Binary files /dev/null and b/public/textures/chipped/metal_barrel.png differ diff --git a/public/textures/chipped/metal_ladder.png b/public/textures/chipped/metal_ladder.png new file mode 100644 index 00000000..332363be Binary files /dev/null and b/public/textures/chipped/metal_ladder.png differ diff --git a/public/textures/chipped/micro_brown_mushroom.png b/public/textures/chipped/micro_brown_mushroom.png new file mode 100644 index 00000000..10848367 Binary files /dev/null and b/public/textures/chipped/micro_brown_mushroom.png differ diff --git a/public/textures/chipped/micro_crimson_fungus.png b/public/textures/chipped/micro_crimson_fungus.png new file mode 100644 index 00000000..4a1b5d3d Binary files /dev/null and b/public/textures/chipped/micro_crimson_fungus.png differ diff --git a/public/textures/chipped/micro_lily_pads.png b/public/textures/chipped/micro_lily_pads.png new file mode 100644 index 00000000..ba666176 Binary files /dev/null and b/public/textures/chipped/micro_lily_pads.png differ diff --git a/public/textures/chipped/micro_red_mushroom.png b/public/textures/chipped/micro_red_mushroom.png new file mode 100644 index 00000000..a14d3211 Binary files /dev/null and b/public/textures/chipped/micro_red_mushroom.png differ diff --git a/public/textures/chipped/micro_warped_fungus.png b/public/textures/chipped/micro_warped_fungus.png new file mode 100644 index 00000000..dd51b99f Binary files /dev/null and b/public/textures/chipped/micro_warped_fungus.png differ diff --git a/public/textures/chipped/mini_brown_mushroom.png b/public/textures/chipped/mini_brown_mushroom.png new file mode 100644 index 00000000..11e2fe65 Binary files /dev/null and b/public/textures/chipped/mini_brown_mushroom.png differ diff --git a/public/textures/chipped/mini_crimson_fungus.png b/public/textures/chipped/mini_crimson_fungus.png new file mode 100644 index 00000000..723ab20a Binary files /dev/null and b/public/textures/chipped/mini_crimson_fungus.png differ diff --git a/public/textures/chipped/mini_red_mushroom.png b/public/textures/chipped/mini_red_mushroom.png new file mode 100644 index 00000000..d791b0e6 Binary files /dev/null and b/public/textures/chipped/mini_red_mushroom.png differ diff --git a/public/textures/chipped/mini_tiled_mud.png b/public/textures/chipped/mini_tiled_mud.png new file mode 100644 index 00000000..af1adecf Binary files /dev/null and b/public/textures/chipped/mini_tiled_mud.png differ diff --git a/public/textures/chipped/mini_tiled_mud_bricks.png b/public/textures/chipped/mini_tiled_mud_bricks.png new file mode 100644 index 00000000..b1228cb9 Binary files /dev/null and b/public/textures/chipped/mini_tiled_mud_bricks.png differ diff --git a/public/textures/chipped/mini_tiled_packed_mud.png b/public/textures/chipped/mini_tiled_packed_mud.png new file mode 100644 index 00000000..690201c7 Binary files /dev/null and b/public/textures/chipped/mini_tiled_packed_mud.png differ diff --git a/public/textures/chipped/mini_warped_fungus.png b/public/textures/chipped/mini_warped_fungus.png new file mode 100644 index 00000000..7510123b Binary files /dev/null and b/public/textures/chipped/mini_warped_fungus.png differ diff --git a/public/textures/chipped/minimized_black_glazed_terracotta.png b/public/textures/chipped/minimized_black_glazed_terracotta.png new file mode 100644 index 00000000..4a8d9544 Binary files /dev/null and b/public/textures/chipped/minimized_black_glazed_terracotta.png differ diff --git a/public/textures/chipped/minimized_blue_glazed_terracotta.png b/public/textures/chipped/minimized_blue_glazed_terracotta.png new file mode 100644 index 00000000..013c2697 Binary files /dev/null and b/public/textures/chipped/minimized_blue_glazed_terracotta.png differ diff --git a/public/textures/chipped/minimized_brown_glazed_terracotta.png b/public/textures/chipped/minimized_brown_glazed_terracotta.png new file mode 100644 index 00000000..97e5727f Binary files /dev/null and b/public/textures/chipped/minimized_brown_glazed_terracotta.png differ diff --git a/public/textures/chipped/minimized_cyan_glazed_terracotta.png b/public/textures/chipped/minimized_cyan_glazed_terracotta.png new file mode 100644 index 00000000..fb29ac9f Binary files /dev/null and b/public/textures/chipped/minimized_cyan_glazed_terracotta.png differ diff --git a/public/textures/chipped/minimized_gray_glazed_terracotta.png b/public/textures/chipped/minimized_gray_glazed_terracotta.png new file mode 100644 index 00000000..b4827a09 Binary files /dev/null and b/public/textures/chipped/minimized_gray_glazed_terracotta.png differ diff --git a/public/textures/chipped/minimized_green_glazed_terracotta.png b/public/textures/chipped/minimized_green_glazed_terracotta.png new file mode 100644 index 00000000..3e67349d Binary files /dev/null and b/public/textures/chipped/minimized_green_glazed_terracotta.png differ diff --git a/public/textures/chipped/minimized_light_blue_glazed_terracotta.png b/public/textures/chipped/minimized_light_blue_glazed_terracotta.png new file mode 100644 index 00000000..6b967df5 Binary files /dev/null and b/public/textures/chipped/minimized_light_blue_glazed_terracotta.png differ diff --git a/public/textures/chipped/minimized_light_gray_glazed_terracotta.png b/public/textures/chipped/minimized_light_gray_glazed_terracotta.png new file mode 100644 index 00000000..f5b11cfe Binary files /dev/null and b/public/textures/chipped/minimized_light_gray_glazed_terracotta.png differ diff --git a/public/textures/chipped/minimized_lime_glazed_terracotta.png b/public/textures/chipped/minimized_lime_glazed_terracotta.png new file mode 100644 index 00000000..211efc16 Binary files /dev/null and b/public/textures/chipped/minimized_lime_glazed_terracotta.png differ diff --git a/public/textures/chipped/minimized_magenta_glazed_terracotta.png b/public/textures/chipped/minimized_magenta_glazed_terracotta.png new file mode 100644 index 00000000..82632e57 Binary files /dev/null and b/public/textures/chipped/minimized_magenta_glazed_terracotta.png differ diff --git a/public/textures/chipped/minimized_orange_glazed_terracotta.png b/public/textures/chipped/minimized_orange_glazed_terracotta.png new file mode 100644 index 00000000..ae717fea Binary files /dev/null and b/public/textures/chipped/minimized_orange_glazed_terracotta.png differ diff --git a/public/textures/chipped/minimized_pink_glazed_terracotta.png b/public/textures/chipped/minimized_pink_glazed_terracotta.png new file mode 100644 index 00000000..a0e430c0 Binary files /dev/null and b/public/textures/chipped/minimized_pink_glazed_terracotta.png differ diff --git a/public/textures/chipped/minimized_purple_glazed_terracotta.png b/public/textures/chipped/minimized_purple_glazed_terracotta.png new file mode 100644 index 00000000..134166f9 Binary files /dev/null and b/public/textures/chipped/minimized_purple_glazed_terracotta.png differ diff --git a/public/textures/chipped/minimized_red_glazed_terracotta.png b/public/textures/chipped/minimized_red_glazed_terracotta.png new file mode 100644 index 00000000..33be65c8 Binary files /dev/null and b/public/textures/chipped/minimized_red_glazed_terracotta.png differ diff --git a/public/textures/chipped/minimized_white_glazed_terracotta.png b/public/textures/chipped/minimized_white_glazed_terracotta.png new file mode 100644 index 00000000..42bd8de2 Binary files /dev/null and b/public/textures/chipped/minimized_white_glazed_terracotta.png differ diff --git a/public/textures/chipped/minimized_yellow_glazed_terracotta.png b/public/textures/chipped/minimized_yellow_glazed_terracotta.png new file mode 100644 index 00000000..7ab088bb Binary files /dev/null and b/public/textures/chipped/minimized_yellow_glazed_terracotta.png differ diff --git a/public/textures/chipped/mixed_acacia_log.png b/public/textures/chipped/mixed_acacia_log.png new file mode 100644 index 00000000..481db036 Binary files /dev/null and b/public/textures/chipped/mixed_acacia_log.png differ diff --git a/public/textures/chipped/mixed_birch_log.png b/public/textures/chipped/mixed_birch_log.png new file mode 100644 index 00000000..b79b1e89 Binary files /dev/null and b/public/textures/chipped/mixed_birch_log.png differ diff --git a/public/textures/chipped/mixed_cherry_log.png b/public/textures/chipped/mixed_cherry_log.png new file mode 100644 index 00000000..52ba4e57 Binary files /dev/null and b/public/textures/chipped/mixed_cherry_log.png differ diff --git a/public/textures/chipped/mixed_crimson_stem.png b/public/textures/chipped/mixed_crimson_stem.png new file mode 100644 index 00000000..d3b5d737 Binary files /dev/null and b/public/textures/chipped/mixed_crimson_stem.png differ diff --git a/public/textures/chipped/mixed_cubed_oak_bookshelf.png b/public/textures/chipped/mixed_cubed_oak_bookshelf.png new file mode 100644 index 00000000..11d29e4b Binary files /dev/null and b/public/textures/chipped/mixed_cubed_oak_bookshelf.png differ diff --git a/public/textures/chipped/mixed_dark_oak_log.png b/public/textures/chipped/mixed_dark_oak_log.png new file mode 100644 index 00000000..ea500fe2 Binary files /dev/null and b/public/textures/chipped/mixed_dark_oak_log.png differ diff --git a/public/textures/chipped/mixed_jungle_log.png b/public/textures/chipped/mixed_jungle_log.png new file mode 100644 index 00000000..2ab8a915 Binary files /dev/null and b/public/textures/chipped/mixed_jungle_log.png differ diff --git a/public/textures/chipped/mixed_mangrove_log.png b/public/textures/chipped/mixed_mangrove_log.png new file mode 100644 index 00000000..3b0831db Binary files /dev/null and b/public/textures/chipped/mixed_mangrove_log.png differ diff --git a/public/textures/chipped/mixed_oak_bookshelf.png b/public/textures/chipped/mixed_oak_bookshelf.png new file mode 100644 index 00000000..83924843 Binary files /dev/null and b/public/textures/chipped/mixed_oak_bookshelf.png differ diff --git a/public/textures/chipped/mixed_oak_large_bookshelf.png b/public/textures/chipped/mixed_oak_large_bookshelf.png new file mode 100644 index 00000000..9285a1ac Binary files /dev/null and b/public/textures/chipped/mixed_oak_large_bookshelf.png differ diff --git a/public/textures/chipped/mixed_oak_log.png b/public/textures/chipped/mixed_oak_log.png new file mode 100644 index 00000000..a0461acc Binary files /dev/null and b/public/textures/chipped/mixed_oak_log.png differ diff --git a/public/textures/chipped/mixed_spruce_log.png b/public/textures/chipped/mixed_spruce_log.png new file mode 100644 index 00000000..7a005224 Binary files /dev/null and b/public/textures/chipped/mixed_spruce_log.png differ diff --git a/public/textures/chipped/mosaic_black_concrete.png b/public/textures/chipped/mosaic_black_concrete.png new file mode 100644 index 00000000..0ee5c99e Binary files /dev/null and b/public/textures/chipped/mosaic_black_concrete.png differ diff --git a/public/textures/chipped/mosaic_blue_concrete.png b/public/textures/chipped/mosaic_blue_concrete.png new file mode 100644 index 00000000..388c9e4e Binary files /dev/null and b/public/textures/chipped/mosaic_blue_concrete.png differ diff --git a/public/textures/chipped/mosaic_brown_concrete.png b/public/textures/chipped/mosaic_brown_concrete.png new file mode 100644 index 00000000..75a27ad9 Binary files /dev/null and b/public/textures/chipped/mosaic_brown_concrete.png differ diff --git a/public/textures/chipped/mosaic_cyan_concrete.png b/public/textures/chipped/mosaic_cyan_concrete.png new file mode 100644 index 00000000..412dd72b Binary files /dev/null and b/public/textures/chipped/mosaic_cyan_concrete.png differ diff --git a/public/textures/chipped/mosaic_gray_concrete.png b/public/textures/chipped/mosaic_gray_concrete.png new file mode 100644 index 00000000..eaf994d8 Binary files /dev/null and b/public/textures/chipped/mosaic_gray_concrete.png differ diff --git a/public/textures/chipped/mosaic_green_concrete.png b/public/textures/chipped/mosaic_green_concrete.png new file mode 100644 index 00000000..6212b3a2 Binary files /dev/null and b/public/textures/chipped/mosaic_green_concrete.png differ diff --git a/public/textures/chipped/mosaic_light_blue_concrete.png b/public/textures/chipped/mosaic_light_blue_concrete.png new file mode 100644 index 00000000..678e8b60 Binary files /dev/null and b/public/textures/chipped/mosaic_light_blue_concrete.png differ diff --git a/public/textures/chipped/mosaic_light_gray_concrete.png b/public/textures/chipped/mosaic_light_gray_concrete.png new file mode 100644 index 00000000..b9b7549f Binary files /dev/null and b/public/textures/chipped/mosaic_light_gray_concrete.png differ diff --git a/public/textures/chipped/mosaic_lime_concrete.png b/public/textures/chipped/mosaic_lime_concrete.png new file mode 100644 index 00000000..c2faed19 Binary files /dev/null and b/public/textures/chipped/mosaic_lime_concrete.png differ diff --git a/public/textures/chipped/mosaic_magenta_concrete.png b/public/textures/chipped/mosaic_magenta_concrete.png new file mode 100644 index 00000000..9ff7ff42 Binary files /dev/null and b/public/textures/chipped/mosaic_magenta_concrete.png differ diff --git a/public/textures/chipped/mosaic_orange_concrete.png b/public/textures/chipped/mosaic_orange_concrete.png new file mode 100644 index 00000000..aa50524b Binary files /dev/null and b/public/textures/chipped/mosaic_orange_concrete.png differ diff --git a/public/textures/chipped/mosaic_pink_concrete.png b/public/textures/chipped/mosaic_pink_concrete.png new file mode 100644 index 00000000..21d15399 Binary files /dev/null and b/public/textures/chipped/mosaic_pink_concrete.png differ diff --git a/public/textures/chipped/mosaic_purple_concrete.png b/public/textures/chipped/mosaic_purple_concrete.png new file mode 100644 index 00000000..f71f7b8e Binary files /dev/null and b/public/textures/chipped/mosaic_purple_concrete.png differ diff --git a/public/textures/chipped/mosaic_red_concrete.png b/public/textures/chipped/mosaic_red_concrete.png new file mode 100644 index 00000000..8745b733 Binary files /dev/null and b/public/textures/chipped/mosaic_red_concrete.png differ diff --git a/public/textures/chipped/mosaic_white_concrete.png b/public/textures/chipped/mosaic_white_concrete.png new file mode 100644 index 00000000..398b5ce6 Binary files /dev/null and b/public/textures/chipped/mosaic_white_concrete.png differ diff --git a/public/textures/chipped/mosaic_yellow_concrete.png b/public/textures/chipped/mosaic_yellow_concrete.png new file mode 100644 index 00000000..81757a8b Binary files /dev/null and b/public/textures/chipped/mosaic_yellow_concrete.png differ diff --git a/public/textures/chipped/mossy_cobblestone_bricks.png b/public/textures/chipped/mossy_cobblestone_bricks.png new file mode 100644 index 00000000..e55a7eee Binary files /dev/null and b/public/textures/chipped/mossy_cobblestone_bricks.png differ diff --git a/public/textures/chipped/mossy_cobblestone_mini_tiles.png b/public/textures/chipped/mossy_cobblestone_mini_tiles.png new file mode 100644 index 00000000..60c7c1e0 Binary files /dev/null and b/public/textures/chipped/mossy_cobblestone_mini_tiles.png differ diff --git a/public/textures/chipped/mossy_cobblestone_pillar.png b/public/textures/chipped/mossy_cobblestone_pillar.png new file mode 100644 index 00000000..7cd571e6 Binary files /dev/null and b/public/textures/chipped/mossy_cobblestone_pillar.png differ diff --git a/public/textures/chipped/mossy_cobblestone_pillar_top.png b/public/textures/chipped/mossy_cobblestone_pillar_top.png new file mode 100644 index 00000000..ecdb59b9 Binary files /dev/null and b/public/textures/chipped/mossy_cobblestone_pillar_top.png differ diff --git a/public/textures/chipped/mossy_cobblestone_scales.png b/public/textures/chipped/mossy_cobblestone_scales.png new file mode 100644 index 00000000..f61d966f Binary files /dev/null and b/public/textures/chipped/mossy_cobblestone_scales.png differ diff --git a/public/textures/chipped/mossy_dried_kelp_block.png b/public/textures/chipped/mossy_dried_kelp_block.png new file mode 100644 index 00000000..1e7c2efc Binary files /dev/null and b/public/textures/chipped/mossy_dried_kelp_block.png differ diff --git a/public/textures/chipped/mossy_ladder.png b/public/textures/chipped/mossy_ladder.png new file mode 100644 index 00000000..7ef963d9 Binary files /dev/null and b/public/textures/chipped/mossy_ladder.png differ diff --git a/public/textures/chipped/mossy_stone_bricks_mini_tiles.png b/public/textures/chipped/mossy_stone_bricks_mini_tiles.png new file mode 100644 index 00000000..403ee7fa Binary files /dev/null and b/public/textures/chipped/mossy_stone_bricks_mini_tiles.png differ diff --git a/public/textures/chipped/mossy_stone_bricks_pillar.png b/public/textures/chipped/mossy_stone_bricks_pillar.png new file mode 100644 index 00000000..1ef6a92d Binary files /dev/null and b/public/textures/chipped/mossy_stone_bricks_pillar.png differ diff --git a/public/textures/chipped/mossy_stone_bricks_pillar_top.png b/public/textures/chipped/mossy_stone_bricks_pillar_top.png new file mode 100644 index 00000000..7341ddd7 Binary files /dev/null and b/public/textures/chipped/mossy_stone_bricks_pillar_top.png differ diff --git a/public/textures/chipped/mossy_stone_bricks_scales.png b/public/textures/chipped/mossy_stone_bricks_scales.png new file mode 100644 index 00000000..f0be178f Binary files /dev/null and b/public/textures/chipped/mossy_stone_bricks_scales.png differ diff --git a/public/textures/chipped/mud_bricks.png b/public/textures/chipped/mud_bricks.png new file mode 100644 index 00000000..bbeccc90 Binary files /dev/null and b/public/textures/chipped/mud_bricks.png differ diff --git a/public/textures/chipped/mud_bricks_bricks.png b/public/textures/chipped/mud_bricks_bricks.png new file mode 100644 index 00000000..e3c5ab3b Binary files /dev/null and b/public/textures/chipped/mud_bricks_bricks.png differ diff --git a/public/textures/chipped/mud_bricks_pillar.png b/public/textures/chipped/mud_bricks_pillar.png new file mode 100644 index 00000000..e34ac6de Binary files /dev/null and b/public/textures/chipped/mud_bricks_pillar.png differ diff --git a/public/textures/chipped/mud_bricks_pillar_top.png b/public/textures/chipped/mud_bricks_pillar_top.png new file mode 100644 index 00000000..8c0ad092 Binary files /dev/null and b/public/textures/chipped/mud_bricks_pillar_top.png differ diff --git a/public/textures/chipped/mud_bricks_scales.png b/public/textures/chipped/mud_bricks_scales.png new file mode 100644 index 00000000..47d5a72b Binary files /dev/null and b/public/textures/chipped/mud_bricks_scales.png differ diff --git a/public/textures/chipped/mud_pillar.png b/public/textures/chipped/mud_pillar.png new file mode 100644 index 00000000..1126f221 Binary files /dev/null and b/public/textures/chipped/mud_pillar.png differ diff --git a/public/textures/chipped/mud_pillar_top.png b/public/textures/chipped/mud_pillar_top.png new file mode 100644 index 00000000..07b7a6fe Binary files /dev/null and b/public/textures/chipped/mud_pillar_top.png differ diff --git a/public/textures/chipped/mud_scales.png b/public/textures/chipped/mud_scales.png new file mode 100644 index 00000000..944b891d Binary files /dev/null and b/public/textures/chipped/mud_scales.png differ diff --git a/public/textures/chipped/muddy_mangrove_roots.png b/public/textures/chipped/muddy_mangrove_roots.png new file mode 100644 index 00000000..157c80ea Binary files /dev/null and b/public/textures/chipped/muddy_mangrove_roots.png differ diff --git a/public/textures/chipped/multimeter.png b/public/textures/chipped/multimeter.png new file mode 100644 index 00000000..a506d1b4 Binary files /dev/null and b/public/textures/chipped/multimeter.png differ diff --git a/public/textures/chipped/mushroom_barrel.png b/public/textures/chipped/mushroom_barrel.png new file mode 100644 index 00000000..31cc0422 Binary files /dev/null and b/public/textures/chipped/mushroom_barrel.png differ diff --git a/public/textures/chipped/nailed_acacia_log.png b/public/textures/chipped/nailed_acacia_log.png new file mode 100644 index 00000000..94c8160a Binary files /dev/null and b/public/textures/chipped/nailed_acacia_log.png differ diff --git a/public/textures/chipped/nailed_acacia_planks.png b/public/textures/chipped/nailed_acacia_planks.png new file mode 100644 index 00000000..bc31a91a Binary files /dev/null and b/public/textures/chipped/nailed_acacia_planks.png differ diff --git a/public/textures/chipped/nailed_birch_log.png b/public/textures/chipped/nailed_birch_log.png new file mode 100644 index 00000000..afba9e48 Binary files /dev/null and b/public/textures/chipped/nailed_birch_log.png differ diff --git a/public/textures/chipped/nailed_birch_planks.png b/public/textures/chipped/nailed_birch_planks.png new file mode 100644 index 00000000..bec54d42 Binary files /dev/null and b/public/textures/chipped/nailed_birch_planks.png differ diff --git a/public/textures/chipped/nailed_cherry_log.png b/public/textures/chipped/nailed_cherry_log.png new file mode 100644 index 00000000..5cb56a20 Binary files /dev/null and b/public/textures/chipped/nailed_cherry_log.png differ diff --git a/public/textures/chipped/nailed_cherry_planks.png b/public/textures/chipped/nailed_cherry_planks.png new file mode 100644 index 00000000..69718d9a Binary files /dev/null and b/public/textures/chipped/nailed_cherry_planks.png differ diff --git a/public/textures/chipped/nailed_crimson_planks.png b/public/textures/chipped/nailed_crimson_planks.png new file mode 100644 index 00000000..99a899cc Binary files /dev/null and b/public/textures/chipped/nailed_crimson_planks.png differ diff --git a/public/textures/chipped/nailed_crimson_stem.png b/public/textures/chipped/nailed_crimson_stem.png new file mode 100644 index 00000000..8e75a86e Binary files /dev/null and b/public/textures/chipped/nailed_crimson_stem.png differ diff --git a/public/textures/chipped/nailed_dark_oak_log.png b/public/textures/chipped/nailed_dark_oak_log.png new file mode 100644 index 00000000..817d6a5f Binary files /dev/null and b/public/textures/chipped/nailed_dark_oak_log.png differ diff --git a/public/textures/chipped/nailed_dark_oak_planks.png b/public/textures/chipped/nailed_dark_oak_planks.png new file mode 100644 index 00000000..5fff4791 Binary files /dev/null and b/public/textures/chipped/nailed_dark_oak_planks.png differ diff --git a/public/textures/chipped/nailed_jungle_log.png b/public/textures/chipped/nailed_jungle_log.png new file mode 100644 index 00000000..8db8e00e Binary files /dev/null and b/public/textures/chipped/nailed_jungle_log.png differ diff --git a/public/textures/chipped/nailed_jungle_planks.png b/public/textures/chipped/nailed_jungle_planks.png new file mode 100644 index 00000000..935bc1d3 Binary files /dev/null and b/public/textures/chipped/nailed_jungle_planks.png differ diff --git a/public/textures/chipped/nailed_mangrove_log.png b/public/textures/chipped/nailed_mangrove_log.png new file mode 100644 index 00000000..2da807f3 Binary files /dev/null and b/public/textures/chipped/nailed_mangrove_log.png differ diff --git a/public/textures/chipped/nailed_mangrove_planks.png b/public/textures/chipped/nailed_mangrove_planks.png new file mode 100644 index 00000000..be1b4148 Binary files /dev/null and b/public/textures/chipped/nailed_mangrove_planks.png differ diff --git a/public/textures/chipped/nailed_oak_log.png b/public/textures/chipped/nailed_oak_log.png new file mode 100644 index 00000000..79822bb9 Binary files /dev/null and b/public/textures/chipped/nailed_oak_log.png differ diff --git a/public/textures/chipped/nailed_oak_planks.png b/public/textures/chipped/nailed_oak_planks.png new file mode 100644 index 00000000..1afb5985 Binary files /dev/null and b/public/textures/chipped/nailed_oak_planks.png differ diff --git a/public/textures/chipped/nailed_spruce_log.png b/public/textures/chipped/nailed_spruce_log.png new file mode 100644 index 00000000..85521056 Binary files /dev/null and b/public/textures/chipped/nailed_spruce_log.png differ diff --git a/public/textures/chipped/nailed_spruce_planks.png b/public/textures/chipped/nailed_spruce_planks.png new file mode 100644 index 00000000..8dd5e4bd Binary files /dev/null and b/public/textures/chipped/nailed_spruce_planks.png differ diff --git a/public/textures/chipped/nailed_warped_planks.png b/public/textures/chipped/nailed_warped_planks.png new file mode 100644 index 00000000..2f92b319 Binary files /dev/null and b/public/textures/chipped/nailed_warped_planks.png differ diff --git a/public/textures/chipped/nailed_warped_stem.png b/public/textures/chipped/nailed_warped_stem.png new file mode 100644 index 00000000..f4612e51 Binary files /dev/null and b/public/textures/chipped/nailed_warped_stem.png differ diff --git a/public/textures/chipped/natural_acacia_planks.png b/public/textures/chipped/natural_acacia_planks.png new file mode 100644 index 00000000..2063d5ec Binary files /dev/null and b/public/textures/chipped/natural_acacia_planks.png differ diff --git a/public/textures/chipped/natural_bamboo_planks.png b/public/textures/chipped/natural_bamboo_planks.png new file mode 100644 index 00000000..9d41d8e6 Binary files /dev/null and b/public/textures/chipped/natural_bamboo_planks.png differ diff --git a/public/textures/chipped/natural_birch_planks.png b/public/textures/chipped/natural_birch_planks.png new file mode 100644 index 00000000..f19d710a Binary files /dev/null and b/public/textures/chipped/natural_birch_planks.png differ diff --git a/public/textures/chipped/natural_cherry_planks.png b/public/textures/chipped/natural_cherry_planks.png new file mode 100644 index 00000000..be2c54e9 Binary files /dev/null and b/public/textures/chipped/natural_cherry_planks.png differ diff --git a/public/textures/chipped/natural_crimson_planks.png b/public/textures/chipped/natural_crimson_planks.png new file mode 100644 index 00000000..9679d7ba Binary files /dev/null and b/public/textures/chipped/natural_crimson_planks.png differ diff --git a/public/textures/chipped/natural_dark_oak_planks.png b/public/textures/chipped/natural_dark_oak_planks.png new file mode 100644 index 00000000..56122f1c Binary files /dev/null and b/public/textures/chipped/natural_dark_oak_planks.png differ diff --git a/public/textures/chipped/natural_jungle_planks.png b/public/textures/chipped/natural_jungle_planks.png new file mode 100644 index 00000000..3b07b089 Binary files /dev/null and b/public/textures/chipped/natural_jungle_planks.png differ diff --git a/public/textures/chipped/natural_mangrove_planks.png b/public/textures/chipped/natural_mangrove_planks.png new file mode 100644 index 00000000..6c72b042 Binary files /dev/null and b/public/textures/chipped/natural_mangrove_planks.png differ diff --git a/public/textures/chipped/natural_oak_planks.png b/public/textures/chipped/natural_oak_planks.png new file mode 100644 index 00000000..2db0e471 Binary files /dev/null and b/public/textures/chipped/natural_oak_planks.png differ diff --git a/public/textures/chipped/natural_spruce_planks.png b/public/textures/chipped/natural_spruce_planks.png new file mode 100644 index 00000000..79495316 Binary files /dev/null and b/public/textures/chipped/natural_spruce_planks.png differ diff --git a/public/textures/chipped/natural_warped_planks.png b/public/textures/chipped/natural_warped_planks.png new file mode 100644 index 00000000..e9e81199 Binary files /dev/null and b/public/textures/chipped/natural_warped_planks.png differ diff --git a/public/textures/chipped/needles.png b/public/textures/chipped/needles.png new file mode 100644 index 00000000..9449adc8 Binary files /dev/null and b/public/textures/chipped/needles.png differ diff --git a/public/textures/chipped/nether_bricks_bricks.png b/public/textures/chipped/nether_bricks_bricks.png new file mode 100644 index 00000000..eadc7fb2 Binary files /dev/null and b/public/textures/chipped/nether_bricks_bricks.png differ diff --git a/public/textures/chipped/nether_bricks_mini_tiles.png b/public/textures/chipped/nether_bricks_mini_tiles.png new file mode 100644 index 00000000..812de080 Binary files /dev/null and b/public/textures/chipped/nether_bricks_mini_tiles.png differ diff --git a/public/textures/chipped/nether_bricks_pillar.png b/public/textures/chipped/nether_bricks_pillar.png new file mode 100644 index 00000000..bf3bfc3c Binary files /dev/null and b/public/textures/chipped/nether_bricks_pillar.png differ diff --git a/public/textures/chipped/nether_bricks_pillar_top.png b/public/textures/chipped/nether_bricks_pillar_top.png new file mode 100644 index 00000000..e67cfa1a Binary files /dev/null and b/public/textures/chipped/nether_bricks_pillar_top.png differ diff --git a/public/textures/chipped/nether_bricks_scales.png b/public/textures/chipped/nether_bricks_scales.png new file mode 100644 index 00000000..7ad66e17 Binary files /dev/null and b/public/textures/chipped/nether_bricks_scales.png differ diff --git a/public/textures/chipped/nether_carved_pumpkin.png b/public/textures/chipped/nether_carved_pumpkin.png new file mode 100644 index 00000000..964b6c39 Binary files /dev/null and b/public/textures/chipped/nether_carved_pumpkin.png differ diff --git a/public/textures/chipped/nether_engraved_glowstone.png b/public/textures/chipped/nether_engraved_glowstone.png new file mode 100644 index 00000000..ade56e3b Binary files /dev/null and b/public/textures/chipped/nether_engraved_glowstone.png differ diff --git a/public/textures/chipped/nether_jack_o_lantern.png b/public/textures/chipped/nether_jack_o_lantern.png new file mode 100644 index 00000000..bcd91fb1 Binary files /dev/null and b/public/textures/chipped/nether_jack_o_lantern.png differ diff --git a/public/textures/chipped/nether_pumpkin.png b/public/textures/chipped/nether_pumpkin.png new file mode 100644 index 00000000..120d9731 Binary files /dev/null and b/public/textures/chipped/nether_pumpkin.png differ diff --git a/public/textures/chipped/nether_sprouts_weeds.png b/public/textures/chipped/nether_sprouts_weeds.png new file mode 100644 index 00000000..6b878345 Binary files /dev/null and b/public/textures/chipped/nether_sprouts_weeds.png differ diff --git a/public/textures/chipped/nether_vine.png b/public/textures/chipped/nether_vine.png new file mode 100644 index 00000000..6068cfcb Binary files /dev/null and b/public/textures/chipped/nether_vine.png differ diff --git a/public/textures/chipped/netherite_block_panels.png b/public/textures/chipped/netherite_block_panels.png new file mode 100644 index 00000000..37a6505b Binary files /dev/null and b/public/textures/chipped/netherite_block_panels.png differ diff --git a/public/textures/chipped/netherite_safe.png b/public/textures/chipped/netherite_safe.png new file mode 100644 index 00000000..e04c4916 Binary files /dev/null and b/public/textures/chipped/netherite_safe.png differ diff --git a/public/textures/chipped/netherrack_bricks.png b/public/textures/chipped/netherrack_bricks.png new file mode 100644 index 00000000..47d07f87 Binary files /dev/null and b/public/textures/chipped/netherrack_bricks.png differ diff --git a/public/textures/chipped/netherrack_mini_tiles.png b/public/textures/chipped/netherrack_mini_tiles.png new file mode 100644 index 00000000..a95cb324 Binary files /dev/null and b/public/textures/chipped/netherrack_mini_tiles.png differ diff --git a/public/textures/chipped/netherrack_pillar.png b/public/textures/chipped/netherrack_pillar.png new file mode 100644 index 00000000..1ee91ffa Binary files /dev/null and b/public/textures/chipped/netherrack_pillar.png differ diff --git a/public/textures/chipped/netherrack_pillar_top.png b/public/textures/chipped/netherrack_pillar_top.png new file mode 100644 index 00000000..478a12b1 Binary files /dev/null and b/public/textures/chipped/netherrack_pillar_top.png differ diff --git a/public/textures/chipped/netherrack_pointed_dripstone.png b/public/textures/chipped/netherrack_pointed_dripstone.png new file mode 100644 index 00000000..00caf817 Binary files /dev/null and b/public/textures/chipped/netherrack_pointed_dripstone.png differ diff --git a/public/textures/chipped/netherrack_scales.png b/public/textures/chipped/netherrack_scales.png new file mode 100644 index 00000000..08dc512f Binary files /dev/null and b/public/textures/chipped/netherrack_scales.png differ diff --git a/public/textures/chipped/netherwart_dried_kelp_block.png b/public/textures/chipped/netherwart_dried_kelp_block.png new file mode 100644 index 00000000..a6f1c987 Binary files /dev/null and b/public/textures/chipped/netherwart_dried_kelp_block.png differ diff --git a/public/textures/chipped/nice_redstone_lamp.png b/public/textures/chipped/nice_redstone_lamp.png new file mode 100644 index 00000000..dbe5ec6d Binary files /dev/null and b/public/textures/chipped/nice_redstone_lamp.png differ diff --git a/public/textures/chipped/nice_white_redstone_lamp.png b/public/textures/chipped/nice_white_redstone_lamp.png new file mode 100644 index 00000000..b5a8f299 Binary files /dev/null and b/public/textures/chipped/nice_white_redstone_lamp.png differ diff --git a/public/textures/chipped/oak_bared_glass.png b/public/textures/chipped/oak_bared_glass.png new file mode 100644 index 00000000..563652ec Binary files /dev/null and b/public/textures/chipped/oak_bared_glass.png differ diff --git a/public/textures/chipped/oak_bared_glass_pane.png b/public/textures/chipped/oak_bared_glass_pane.png new file mode 100644 index 00000000..5d56cca3 Binary files /dev/null and b/public/textures/chipped/oak_bared_glass_pane.png differ diff --git a/public/textures/chipped/oak_barrel.png b/public/textures/chipped/oak_barrel.png new file mode 100644 index 00000000..0ef79439 Binary files /dev/null and b/public/textures/chipped/oak_barrel.png differ diff --git a/public/textures/chipped/oak_bookshelf.png b/public/textures/chipped/oak_bookshelf.png new file mode 100644 index 00000000..7f7ffc1b Binary files /dev/null and b/public/textures/chipped/oak_bookshelf.png differ diff --git a/public/textures/chipped/oak_bordered_glass.png b/public/textures/chipped/oak_bordered_glass.png new file mode 100644 index 00000000..4d5ac788 Binary files /dev/null and b/public/textures/chipped/oak_bordered_glass.png differ diff --git a/public/textures/chipped/oak_bordered_glass_pane.png b/public/textures/chipped/oak_bordered_glass_pane.png new file mode 100644 index 00000000..e01226e7 Binary files /dev/null and b/public/textures/chipped/oak_bordered_glass_pane.png differ diff --git a/public/textures/chipped/oak_crate.png b/public/textures/chipped/oak_crate.png new file mode 100644 index 00000000..bb40ed59 Binary files /dev/null and b/public/textures/chipped/oak_crate.png differ diff --git a/public/textures/chipped/oak_diamond_bordered_glass.png b/public/textures/chipped/oak_diamond_bordered_glass.png new file mode 100644 index 00000000..c2bc4533 Binary files /dev/null and b/public/textures/chipped/oak_diamond_bordered_glass.png differ diff --git a/public/textures/chipped/oak_diamond_bordered_glass_pane.png b/public/textures/chipped/oak_diamond_bordered_glass_pane.png new file mode 100644 index 00000000..664b9301 Binary files /dev/null and b/public/textures/chipped/oak_diamond_bordered_glass_pane.png differ diff --git a/public/textures/chipped/oak_empty_bookshelf.png b/public/textures/chipped/oak_empty_bookshelf.png new file mode 100644 index 00000000..c671887b Binary files /dev/null and b/public/textures/chipped/oak_empty_bookshelf.png differ diff --git a/public/textures/chipped/oak_horizontal_lined_glass.png b/public/textures/chipped/oak_horizontal_lined_glass.png new file mode 100644 index 00000000..3b650f5e Binary files /dev/null and b/public/textures/chipped/oak_horizontal_lined_glass.png differ diff --git a/public/textures/chipped/oak_horizontal_lined_glass_pane.png b/public/textures/chipped/oak_horizontal_lined_glass_pane.png new file mode 100644 index 00000000..7b3ce35a Binary files /dev/null and b/public/textures/chipped/oak_horizontal_lined_glass_pane.png differ diff --git a/public/textures/chipped/oak_large_bookshelf.png b/public/textures/chipped/oak_large_bookshelf.png new file mode 100644 index 00000000..71ba6b5e Binary files /dev/null and b/public/textures/chipped/oak_large_bookshelf.png differ diff --git a/public/textures/chipped/oak_large_diamond_glass.png b/public/textures/chipped/oak_large_diamond_glass.png new file mode 100644 index 00000000..2e922560 Binary files /dev/null and b/public/textures/chipped/oak_large_diamond_glass.png differ diff --git a/public/textures/chipped/oak_large_diamond_glass_pane.png b/public/textures/chipped/oak_large_diamond_glass_pane.png new file mode 100644 index 00000000..2b536cfa Binary files /dev/null and b/public/textures/chipped/oak_large_diamond_glass_pane.png differ diff --git a/public/textures/chipped/oak_lighted_bookshelf.png b/public/textures/chipped/oak_lighted_bookshelf.png new file mode 100644 index 00000000..05be8304 Binary files /dev/null and b/public/textures/chipped/oak_lighted_bookshelf.png differ diff --git a/public/textures/chipped/oak_lighted_large_bookshelf.png b/public/textures/chipped/oak_lighted_large_bookshelf.png new file mode 100644 index 00000000..371003e9 Binary files /dev/null and b/public/textures/chipped/oak_lighted_large_bookshelf.png differ diff --git a/public/textures/chipped/oak_line_bared_glass.png b/public/textures/chipped/oak_line_bared_glass.png new file mode 100644 index 00000000..d9950224 Binary files /dev/null and b/public/textures/chipped/oak_line_bared_glass.png differ diff --git a/public/textures/chipped/oak_line_bared_glass_pane.png b/public/textures/chipped/oak_line_bared_glass_pane.png new file mode 100644 index 00000000..67dcfd63 Binary files /dev/null and b/public/textures/chipped/oak_line_bared_glass_pane.png differ diff --git a/public/textures/chipped/oak_ornate_bared_glass.png b/public/textures/chipped/oak_ornate_bared_glass.png new file mode 100644 index 00000000..51a67077 Binary files /dev/null and b/public/textures/chipped/oak_ornate_bared_glass.png differ diff --git a/public/textures/chipped/oak_ornate_bared_glass_pane.png b/public/textures/chipped/oak_ornate_bared_glass_pane.png new file mode 100644 index 00000000..c7d1363b Binary files /dev/null and b/public/textures/chipped/oak_ornate_bared_glass_pane.png differ diff --git a/public/textures/chipped/oak_planks_mosaic.png b/public/textures/chipped/oak_planks_mosaic.png new file mode 100644 index 00000000..51fc6473 Binary files /dev/null and b/public/textures/chipped/oak_planks_mosaic.png differ diff --git a/public/textures/chipped/oak_planks_panel.png b/public/textures/chipped/oak_planks_panel.png new file mode 100644 index 00000000..6b72ad30 Binary files /dev/null and b/public/textures/chipped/oak_planks_panel.png differ diff --git a/public/textures/chipped/oak_planks_shavings.png b/public/textures/chipped/oak_planks_shavings.png new file mode 100644 index 00000000..d5f58370 Binary files /dev/null and b/public/textures/chipped/oak_planks_shavings.png differ diff --git a/public/textures/chipped/oak_snowflake_glass.png b/public/textures/chipped/oak_snowflake_glass.png new file mode 100644 index 00000000..318c48d8 Binary files /dev/null and b/public/textures/chipped/oak_snowflake_glass.png differ diff --git a/public/textures/chipped/oak_snowflake_glass_pane.png b/public/textures/chipped/oak_snowflake_glass_pane.png new file mode 100644 index 00000000..4b44be1a Binary files /dev/null and b/public/textures/chipped/oak_snowflake_glass_pane.png differ diff --git a/public/textures/chipped/oak_spaced_bookshelf.png b/public/textures/chipped/oak_spaced_bookshelf.png new file mode 100644 index 00000000..cf71530c Binary files /dev/null and b/public/textures/chipped/oak_spaced_bookshelf.png differ diff --git a/public/textures/chipped/oak_spaced_large_bookshelf.png b/public/textures/chipped/oak_spaced_large_bookshelf.png new file mode 100644 index 00000000..f0044b11 Binary files /dev/null and b/public/textures/chipped/oak_spaced_large_bookshelf.png differ diff --git a/public/textures/chipped/oak_webbed_bookshelf.png b/public/textures/chipped/oak_webbed_bookshelf.png new file mode 100644 index 00000000..39158126 Binary files /dev/null and b/public/textures/chipped/oak_webbed_bookshelf.png differ diff --git a/public/textures/chipped/oak_webbed_large_bookshelf.png b/public/textures/chipped/oak_webbed_large_bookshelf.png new file mode 100644 index 00000000..942d16e2 Binary files /dev/null and b/public/textures/chipped/oak_webbed_large_bookshelf.png differ diff --git a/public/textures/chipped/oak_woven_glass.png b/public/textures/chipped/oak_woven_glass.png new file mode 100644 index 00000000..63095561 Binary files /dev/null and b/public/textures/chipped/oak_woven_glass.png differ diff --git a/public/textures/chipped/oak_woven_glass_pane.png b/public/textures/chipped/oak_woven_glass_pane.png new file mode 100644 index 00000000..597b07f8 Binary files /dev/null and b/public/textures/chipped/oak_woven_glass_pane.png differ diff --git a/public/textures/chipped/obsidian_bricks.png b/public/textures/chipped/obsidian_bricks.png new file mode 100644 index 00000000..bec801b3 Binary files /dev/null and b/public/textures/chipped/obsidian_bricks.png differ diff --git a/public/textures/chipped/obsidian_mini_tiles.png b/public/textures/chipped/obsidian_mini_tiles.png new file mode 100644 index 00000000..60085ffe Binary files /dev/null and b/public/textures/chipped/obsidian_mini_tiles.png differ diff --git a/public/textures/chipped/obsidian_pillar.png b/public/textures/chipped/obsidian_pillar.png new file mode 100644 index 00000000..c18d634a Binary files /dev/null and b/public/textures/chipped/obsidian_pillar.png differ diff --git a/public/textures/chipped/obsidian_pillar_top.png b/public/textures/chipped/obsidian_pillar_top.png new file mode 100644 index 00000000..74279408 Binary files /dev/null and b/public/textures/chipped/obsidian_pillar_top.png differ diff --git a/public/textures/chipped/obsidian_scales.png b/public/textures/chipped/obsidian_scales.png new file mode 100644 index 00000000..9c525409 Binary files /dev/null and b/public/textures/chipped/obsidian_scales.png differ diff --git a/public/textures/chipped/offset_amethyst_block_bricks.png b/public/textures/chipped/offset_amethyst_block_bricks.png new file mode 100644 index 00000000..5b58388e Binary files /dev/null and b/public/textures/chipped/offset_amethyst_block_bricks.png differ diff --git a/public/textures/chipped/offset_ancient_debris_bricks.png b/public/textures/chipped/offset_ancient_debris_bricks.png new file mode 100644 index 00000000..5b19b19f Binary files /dev/null and b/public/textures/chipped/offset_ancient_debris_bricks.png differ diff --git a/public/textures/chipped/offset_andesite_bricks.png b/public/textures/chipped/offset_andesite_bricks.png new file mode 100644 index 00000000..110b6041 Binary files /dev/null and b/public/textures/chipped/offset_andesite_bricks.png differ diff --git a/public/textures/chipped/offset_basalt_bricks.png b/public/textures/chipped/offset_basalt_bricks.png new file mode 100644 index 00000000..ca2cbb05 Binary files /dev/null and b/public/textures/chipped/offset_basalt_bricks.png differ diff --git a/public/textures/chipped/offset_blackstone_bricks.png b/public/textures/chipped/offset_blackstone_bricks.png new file mode 100644 index 00000000..c1f3af84 Binary files /dev/null and b/public/textures/chipped/offset_blackstone_bricks.png differ diff --git a/public/textures/chipped/offset_blue_ice_bricks.png b/public/textures/chipped/offset_blue_ice_bricks.png new file mode 100644 index 00000000..8eeeeab2 Binary files /dev/null and b/public/textures/chipped/offset_blue_ice_bricks.png differ diff --git a/public/textures/chipped/offset_borderless_bricks_bricks.png b/public/textures/chipped/offset_borderless_bricks_bricks.png new file mode 100644 index 00000000..0df8f2bd Binary files /dev/null and b/public/textures/chipped/offset_borderless_bricks_bricks.png differ diff --git a/public/textures/chipped/offset_bricks_bricks.png b/public/textures/chipped/offset_bricks_bricks.png new file mode 100644 index 00000000..2a0acfed Binary files /dev/null and b/public/textures/chipped/offset_bricks_bricks.png differ diff --git a/public/textures/chipped/offset_calcite_bricks.png b/public/textures/chipped/offset_calcite_bricks.png new file mode 100644 index 00000000..fbb78e75 Binary files /dev/null and b/public/textures/chipped/offset_calcite_bricks.png differ diff --git a/public/textures/chipped/offset_clay_bricks.png b/public/textures/chipped/offset_clay_bricks.png new file mode 100644 index 00000000..896e35bd Binary files /dev/null and b/public/textures/chipped/offset_clay_bricks.png differ diff --git a/public/textures/chipped/offset_coal_block_bricks.png b/public/textures/chipped/offset_coal_block_bricks.png new file mode 100644 index 00000000..7cc7387e Binary files /dev/null and b/public/textures/chipped/offset_coal_block_bricks.png differ diff --git a/public/textures/chipped/offset_cobblestone_bricks.png b/public/textures/chipped/offset_cobblestone_bricks.png new file mode 100644 index 00000000..bc663dcb Binary files /dev/null and b/public/textures/chipped/offset_cobblestone_bricks.png differ diff --git a/public/textures/chipped/offset_crying_obsidian_bricks.png b/public/textures/chipped/offset_crying_obsidian_bricks.png new file mode 100644 index 00000000..440ad6be Binary files /dev/null and b/public/textures/chipped/offset_crying_obsidian_bricks.png differ diff --git a/public/textures/chipped/offset_dark_prismarine_bricks.png b/public/textures/chipped/offset_dark_prismarine_bricks.png new file mode 100644 index 00000000..541ba2cf Binary files /dev/null and b/public/textures/chipped/offset_dark_prismarine_bricks.png differ diff --git a/public/textures/chipped/offset_diorite_bricks.png b/public/textures/chipped/offset_diorite_bricks.png new file mode 100644 index 00000000..7d544c4f Binary files /dev/null and b/public/textures/chipped/offset_diorite_bricks.png differ diff --git a/public/textures/chipped/offset_dirt_bricks.png b/public/textures/chipped/offset_dirt_bricks.png new file mode 100644 index 00000000..f8bd272e Binary files /dev/null and b/public/textures/chipped/offset_dirt_bricks.png differ diff --git a/public/textures/chipped/offset_dripstone_block_bricks.png b/public/textures/chipped/offset_dripstone_block_bricks.png new file mode 100644 index 00000000..5b99cb21 Binary files /dev/null and b/public/textures/chipped/offset_dripstone_block_bricks.png differ diff --git a/public/textures/chipped/offset_end_stone_bricks.png b/public/textures/chipped/offset_end_stone_bricks.png new file mode 100644 index 00000000..f98d3afa Binary files /dev/null and b/public/textures/chipped/offset_end_stone_bricks.png differ diff --git a/public/textures/chipped/offset_gilded_blackstone_bricks.png b/public/textures/chipped/offset_gilded_blackstone_bricks.png new file mode 100644 index 00000000..8a5ec43c Binary files /dev/null and b/public/textures/chipped/offset_gilded_blackstone_bricks.png differ diff --git a/public/textures/chipped/offset_granite_bricks.png b/public/textures/chipped/offset_granite_bricks.png new file mode 100644 index 00000000..7ed72c67 Binary files /dev/null and b/public/textures/chipped/offset_granite_bricks.png differ diff --git a/public/textures/chipped/offset_ice_bricks.png b/public/textures/chipped/offset_ice_bricks.png new file mode 100644 index 00000000..a8a63f38 Binary files /dev/null and b/public/textures/chipped/offset_ice_bricks.png differ diff --git a/public/textures/chipped/offset_lapis_block_bricks.png b/public/textures/chipped/offset_lapis_block_bricks.png new file mode 100644 index 00000000..c1a3af43 Binary files /dev/null and b/public/textures/chipped/offset_lapis_block_bricks.png differ diff --git a/public/textures/chipped/offset_lodestone_bricks.png b/public/textures/chipped/offset_lodestone_bricks.png new file mode 100644 index 00000000..c510fdba Binary files /dev/null and b/public/textures/chipped/offset_lodestone_bricks.png differ diff --git a/public/textures/chipped/offset_magma_block_bricks.png b/public/textures/chipped/offset_magma_block_bricks.png new file mode 100644 index 00000000..ce07fb06 Binary files /dev/null and b/public/textures/chipped/offset_magma_block_bricks.png differ diff --git a/public/textures/chipped/offset_mossy_cobblestone_bricks.png b/public/textures/chipped/offset_mossy_cobblestone_bricks.png new file mode 100644 index 00000000..4e79c647 Binary files /dev/null and b/public/textures/chipped/offset_mossy_cobblestone_bricks.png differ diff --git a/public/textures/chipped/offset_mossy_stone_bricks_bricks.png b/public/textures/chipped/offset_mossy_stone_bricks_bricks.png new file mode 100644 index 00000000..3997bf68 Binary files /dev/null and b/public/textures/chipped/offset_mossy_stone_bricks_bricks.png differ diff --git a/public/textures/chipped/offset_mud_bricks.png b/public/textures/chipped/offset_mud_bricks.png new file mode 100644 index 00000000..da98be6c Binary files /dev/null and b/public/textures/chipped/offset_mud_bricks.png differ diff --git a/public/textures/chipped/offset_mud_bricks_bricks.png b/public/textures/chipped/offset_mud_bricks_bricks.png new file mode 100644 index 00000000..f5bd53a7 Binary files /dev/null and b/public/textures/chipped/offset_mud_bricks_bricks.png differ diff --git a/public/textures/chipped/offset_nether_bricks_bricks.png b/public/textures/chipped/offset_nether_bricks_bricks.png new file mode 100644 index 00000000..bd0202e4 Binary files /dev/null and b/public/textures/chipped/offset_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/offset_netherrack_bricks.png b/public/textures/chipped/offset_netherrack_bricks.png new file mode 100644 index 00000000..8c3c7477 Binary files /dev/null and b/public/textures/chipped/offset_netherrack_bricks.png differ diff --git a/public/textures/chipped/offset_obsidian_bricks.png b/public/textures/chipped/offset_obsidian_bricks.png new file mode 100644 index 00000000..c7a749c8 Binary files /dev/null and b/public/textures/chipped/offset_obsidian_bricks.png differ diff --git a/public/textures/chipped/offset_packed_ice_bricks.png b/public/textures/chipped/offset_packed_ice_bricks.png new file mode 100644 index 00000000..cfd010e5 Binary files /dev/null and b/public/textures/chipped/offset_packed_ice_bricks.png differ diff --git a/public/textures/chipped/offset_packed_mud_bricks.png b/public/textures/chipped/offset_packed_mud_bricks.png new file mode 100644 index 00000000..2912901f Binary files /dev/null and b/public/textures/chipped/offset_packed_mud_bricks.png differ diff --git a/public/textures/chipped/offset_prismarine_bricks.png b/public/textures/chipped/offset_prismarine_bricks.png new file mode 100644 index 00000000..b355e3dc Binary files /dev/null and b/public/textures/chipped/offset_prismarine_bricks.png differ diff --git a/public/textures/chipped/offset_purpur_block_bricks.png b/public/textures/chipped/offset_purpur_block_bricks.png new file mode 100644 index 00000000..0c8ebc97 Binary files /dev/null and b/public/textures/chipped/offset_purpur_block_bricks.png differ diff --git a/public/textures/chipped/offset_raw_copper_block_bricks.png b/public/textures/chipped/offset_raw_copper_block_bricks.png new file mode 100644 index 00000000..dcbeeff8 Binary files /dev/null and b/public/textures/chipped/offset_raw_copper_block_bricks.png differ diff --git a/public/textures/chipped/offset_raw_gold_block_bricks.png b/public/textures/chipped/offset_raw_gold_block_bricks.png new file mode 100644 index 00000000..04db8354 Binary files /dev/null and b/public/textures/chipped/offset_raw_gold_block_bricks.png differ diff --git a/public/textures/chipped/offset_raw_iron_block_bricks.png b/public/textures/chipped/offset_raw_iron_block_bricks.png new file mode 100644 index 00000000..3022eec0 Binary files /dev/null and b/public/textures/chipped/offset_raw_iron_block_bricks.png differ diff --git a/public/textures/chipped/offset_red_nether_bricks_bricks.png b/public/textures/chipped/offset_red_nether_bricks_bricks.png new file mode 100644 index 00000000..b81f51ea Binary files /dev/null and b/public/textures/chipped/offset_red_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/offset_red_sandstone_bricks.png b/public/textures/chipped/offset_red_sandstone_bricks.png new file mode 100644 index 00000000..d96bdeef Binary files /dev/null and b/public/textures/chipped/offset_red_sandstone_bricks.png differ diff --git a/public/textures/chipped/offset_redstone_block_bricks.png b/public/textures/chipped/offset_redstone_block_bricks.png new file mode 100644 index 00000000..fc0041f6 Binary files /dev/null and b/public/textures/chipped/offset_redstone_block_bricks.png differ diff --git a/public/textures/chipped/offset_sandstone_bricks.png b/public/textures/chipped/offset_sandstone_bricks.png new file mode 100644 index 00000000..fd8aaa48 Binary files /dev/null and b/public/textures/chipped/offset_sandstone_bricks.png differ diff --git a/public/textures/chipped/offset_smooth_stone_bricks.png b/public/textures/chipped/offset_smooth_stone_bricks.png new file mode 100644 index 00000000..b489661e Binary files /dev/null and b/public/textures/chipped/offset_smooth_stone_bricks.png differ diff --git a/public/textures/chipped/offset_snow_block_bricks.png b/public/textures/chipped/offset_snow_block_bricks.png new file mode 100644 index 00000000..5bc680ca Binary files /dev/null and b/public/textures/chipped/offset_snow_block_bricks.png differ diff --git a/public/textures/chipped/offset_stone_bricks.png b/public/textures/chipped/offset_stone_bricks.png new file mode 100644 index 00000000..0b918a5e Binary files /dev/null and b/public/textures/chipped/offset_stone_bricks.png differ diff --git a/public/textures/chipped/offset_tuff_bricks.png b/public/textures/chipped/offset_tuff_bricks.png new file mode 100644 index 00000000..efe64b73 Binary files /dev/null and b/public/textures/chipped/offset_tuff_bricks.png differ diff --git a/public/textures/chipped/old_moss_block.png b/public/textures/chipped/old_moss_block.png new file mode 100644 index 00000000..9db2401e Binary files /dev/null and b/public/textures/chipped/old_moss_block.png differ diff --git a/public/textures/chipped/old_mushroom_stem.png b/public/textures/chipped/old_mushroom_stem.png new file mode 100644 index 00000000..6127e63a Binary files /dev/null and b/public/textures/chipped/old_mushroom_stem.png differ diff --git a/public/textures/chipped/old_sponge.png b/public/textures/chipped/old_sponge.png new file mode 100644 index 00000000..43e6039b Binary files /dev/null and b/public/textures/chipped/old_sponge.png differ diff --git a/public/textures/chipped/orange_acacia_leaves.png b/public/textures/chipped/orange_acacia_leaves.png new file mode 100644 index 00000000..1bbf2873 Binary files /dev/null and b/public/textures/chipped/orange_acacia_leaves.png differ diff --git a/public/textures/chipped/orange_birch_leaves.png b/public/textures/chipped/orange_birch_leaves.png new file mode 100644 index 00000000..c1a8a9ec Binary files /dev/null and b/public/textures/chipped/orange_birch_leaves.png differ diff --git a/public/textures/chipped/orange_concrete_bricks.png b/public/textures/chipped/orange_concrete_bricks.png new file mode 100644 index 00000000..358d346a Binary files /dev/null and b/public/textures/chipped/orange_concrete_bricks.png differ diff --git a/public/textures/chipped/orange_concrete_panel.png b/public/textures/chipped/orange_concrete_panel.png new file mode 100644 index 00000000..14d6495d Binary files /dev/null and b/public/textures/chipped/orange_concrete_panel.png differ diff --git a/public/textures/chipped/orange_concrete_pillar.png b/public/textures/chipped/orange_concrete_pillar.png new file mode 100644 index 00000000..7e8bc414 Binary files /dev/null and b/public/textures/chipped/orange_concrete_pillar.png differ diff --git a/public/textures/chipped/orange_concrete_tiles.png b/public/textures/chipped/orange_concrete_tiles.png new file mode 100644 index 00000000..9ad77a40 Binary files /dev/null and b/public/textures/chipped/orange_concrete_tiles.png differ diff --git a/public/textures/chipped/orange_dark_oak_leaves.png b/public/textures/chipped/orange_dark_oak_leaves.png new file mode 100644 index 00000000..8c874a30 Binary files /dev/null and b/public/textures/chipped/orange_dark_oak_leaves.png differ diff --git a/public/textures/chipped/orange_glazed_terracotta_pillar_sides.png b/public/textures/chipped/orange_glazed_terracotta_pillar_sides.png new file mode 100644 index 00000000..8ced455a Binary files /dev/null and b/public/textures/chipped/orange_glazed_terracotta_pillar_sides.png differ diff --git a/public/textures/chipped/orange_glazed_terracotta_pillar_top.png b/public/textures/chipped/orange_glazed_terracotta_pillar_top.png new file mode 100644 index 00000000..e01e38e6 Binary files /dev/null and b/public/textures/chipped/orange_glazed_terracotta_pillar_top.png differ diff --git a/public/textures/chipped/orange_glazed_terracotta_smooth_tiles.png b/public/textures/chipped/orange_glazed_terracotta_smooth_tiles.png new file mode 100644 index 00000000..753acd0b Binary files /dev/null and b/public/textures/chipped/orange_glazed_terracotta_smooth_tiles.png differ diff --git a/public/textures/chipped/orange_glazed_terracotta_tiles.png b/public/textures/chipped/orange_glazed_terracotta_tiles.png new file mode 100644 index 00000000..6b7f6ddb Binary files /dev/null and b/public/textures/chipped/orange_glazed_terracotta_tiles.png differ diff --git a/public/textures/chipped/orange_gravel.png b/public/textures/chipped/orange_gravel.png new file mode 100644 index 00000000..cb41b76c Binary files /dev/null and b/public/textures/chipped/orange_gravel.png differ diff --git a/public/textures/chipped/orange_jungle_leaves.png b/public/textures/chipped/orange_jungle_leaves.png new file mode 100644 index 00000000..e0b9032d Binary files /dev/null and b/public/textures/chipped/orange_jungle_leaves.png differ diff --git a/public/textures/chipped/orange_oak_leaves.png b/public/textures/chipped/orange_oak_leaves.png new file mode 100644 index 00000000..8c874a30 Binary files /dev/null and b/public/textures/chipped/orange_oak_leaves.png differ diff --git a/public/textures/chipped/orange_paper_soul_lantern.png b/public/textures/chipped/orange_paper_soul_lantern.png new file mode 100644 index 00000000..e442d182 Binary files /dev/null and b/public/textures/chipped/orange_paper_soul_lantern.png differ diff --git a/public/textures/chipped/orange_spruce_leaves.png b/public/textures/chipped/orange_spruce_leaves.png new file mode 100644 index 00000000..6da122e8 Binary files /dev/null and b/public/textures/chipped/orange_spruce_leaves.png differ diff --git a/public/textures/chipped/orange_terracotta_bricks.png b/public/textures/chipped/orange_terracotta_bricks.png new file mode 100644 index 00000000..627014fa Binary files /dev/null and b/public/textures/chipped/orange_terracotta_bricks.png differ diff --git a/public/textures/chipped/orange_terracotta_column.png b/public/textures/chipped/orange_terracotta_column.png new file mode 100644 index 00000000..a28e4498 Binary files /dev/null and b/public/textures/chipped/orange_terracotta_column.png differ diff --git a/public/textures/chipped/orange_terracotta_pillar.png b/public/textures/chipped/orange_terracotta_pillar.png new file mode 100644 index 00000000..7fe7c80d Binary files /dev/null and b/public/textures/chipped/orange_terracotta_pillar.png differ diff --git a/public/textures/chipped/orange_terracotta_tile.png b/public/textures/chipped/orange_terracotta_tile.png new file mode 100644 index 00000000..1b58314e Binary files /dev/null and b/public/textures/chipped/orange_terracotta_tile.png differ diff --git a/public/textures/chipped/orange_terracotta_tiles.png b/public/textures/chipped/orange_terracotta_tiles.png new file mode 100644 index 00000000..fb23888f Binary files /dev/null and b/public/textures/chipped/orange_terracotta_tiles.png differ diff --git a/public/textures/chipped/ornate_amethyst_block_pillar.png b/public/textures/chipped/ornate_amethyst_block_pillar.png new file mode 100644 index 00000000..517cb863 Binary files /dev/null and b/public/textures/chipped/ornate_amethyst_block_pillar.png differ diff --git a/public/textures/chipped/ornate_ancient_debris_pillar.png b/public/textures/chipped/ornate_ancient_debris_pillar.png new file mode 100644 index 00000000..d2ba6bcf Binary files /dev/null and b/public/textures/chipped/ornate_ancient_debris_pillar.png differ diff --git a/public/textures/chipped/ornate_andesite_pillar.png b/public/textures/chipped/ornate_andesite_pillar.png new file mode 100644 index 00000000..d70ef5cd Binary files /dev/null and b/public/textures/chipped/ornate_andesite_pillar.png differ diff --git a/public/textures/chipped/ornate_basalt_pillar.png b/public/textures/chipped/ornate_basalt_pillar.png new file mode 100644 index 00000000..679ff69b Binary files /dev/null and b/public/textures/chipped/ornate_basalt_pillar.png differ diff --git a/public/textures/chipped/ornate_black_stained_glass.png b/public/textures/chipped/ornate_black_stained_glass.png new file mode 100644 index 00000000..d7f27493 Binary files /dev/null and b/public/textures/chipped/ornate_black_stained_glass.png differ diff --git a/public/textures/chipped/ornate_black_stained_glass_pane.png b/public/textures/chipped/ornate_black_stained_glass_pane.png new file mode 100644 index 00000000..cb12d888 Binary files /dev/null and b/public/textures/chipped/ornate_black_stained_glass_pane.png differ diff --git a/public/textures/chipped/ornate_blackstone_pillar.png b/public/textures/chipped/ornate_blackstone_pillar.png new file mode 100644 index 00000000..334b3e6c Binary files /dev/null and b/public/textures/chipped/ornate_blackstone_pillar.png differ diff --git a/public/textures/chipped/ornate_blue_ice_pillar.png b/public/textures/chipped/ornate_blue_ice_pillar.png new file mode 100644 index 00000000..eeda0ed3 Binary files /dev/null and b/public/textures/chipped/ornate_blue_ice_pillar.png differ diff --git a/public/textures/chipped/ornate_blue_stained_glass.png b/public/textures/chipped/ornate_blue_stained_glass.png new file mode 100644 index 00000000..5a1c85d9 Binary files /dev/null and b/public/textures/chipped/ornate_blue_stained_glass.png differ diff --git a/public/textures/chipped/ornate_blue_stained_glass_pane.png b/public/textures/chipped/ornate_blue_stained_glass_pane.png new file mode 100644 index 00000000..a24a2117 Binary files /dev/null and b/public/textures/chipped/ornate_blue_stained_glass_pane.png differ diff --git a/public/textures/chipped/ornate_borderless_bricks_pillar.png b/public/textures/chipped/ornate_borderless_bricks_pillar.png new file mode 100644 index 00000000..b4d8b23c Binary files /dev/null and b/public/textures/chipped/ornate_borderless_bricks_pillar.png differ diff --git a/public/textures/chipped/ornate_bricks_pillar.png b/public/textures/chipped/ornate_bricks_pillar.png new file mode 100644 index 00000000..2f175412 Binary files /dev/null and b/public/textures/chipped/ornate_bricks_pillar.png differ diff --git a/public/textures/chipped/ornate_brown_stained_glass.png b/public/textures/chipped/ornate_brown_stained_glass.png new file mode 100644 index 00000000..86fad39c Binary files /dev/null and b/public/textures/chipped/ornate_brown_stained_glass.png differ diff --git a/public/textures/chipped/ornate_brown_stained_glass_pane.png b/public/textures/chipped/ornate_brown_stained_glass_pane.png new file mode 100644 index 00000000..b4c5e5e9 Binary files /dev/null and b/public/textures/chipped/ornate_brown_stained_glass_pane.png differ diff --git a/public/textures/chipped/ornate_calcite_pillar.png b/public/textures/chipped/ornate_calcite_pillar.png new file mode 100644 index 00000000..a559e739 Binary files /dev/null and b/public/textures/chipped/ornate_calcite_pillar.png differ diff --git a/public/textures/chipped/ornate_clay_pillar.png b/public/textures/chipped/ornate_clay_pillar.png new file mode 100644 index 00000000..90c6a484 Binary files /dev/null and b/public/textures/chipped/ornate_clay_pillar.png differ diff --git a/public/textures/chipped/ornate_coal_block_pillar.png b/public/textures/chipped/ornate_coal_block_pillar.png new file mode 100644 index 00000000..98acd553 Binary files /dev/null and b/public/textures/chipped/ornate_coal_block_pillar.png differ diff --git a/public/textures/chipped/ornate_cobblestone_pillar.png b/public/textures/chipped/ornate_cobblestone_pillar.png new file mode 100644 index 00000000..64b74ed0 Binary files /dev/null and b/public/textures/chipped/ornate_cobblestone_pillar.png differ diff --git a/public/textures/chipped/ornate_crying_obsidian_pillar.png b/public/textures/chipped/ornate_crying_obsidian_pillar.png new file mode 100644 index 00000000..b9e2c8da Binary files /dev/null and b/public/textures/chipped/ornate_crying_obsidian_pillar.png differ diff --git a/public/textures/chipped/ornate_cyan_stained_glass.png b/public/textures/chipped/ornate_cyan_stained_glass.png new file mode 100644 index 00000000..791d15dd Binary files /dev/null and b/public/textures/chipped/ornate_cyan_stained_glass.png differ diff --git a/public/textures/chipped/ornate_cyan_stained_glass_pane.png b/public/textures/chipped/ornate_cyan_stained_glass_pane.png new file mode 100644 index 00000000..b4c46da0 Binary files /dev/null and b/public/textures/chipped/ornate_cyan_stained_glass_pane.png differ diff --git a/public/textures/chipped/ornate_dark_prismarine_pillar.png b/public/textures/chipped/ornate_dark_prismarine_pillar.png new file mode 100644 index 00000000..7c56ce02 Binary files /dev/null and b/public/textures/chipped/ornate_dark_prismarine_pillar.png differ diff --git a/public/textures/chipped/ornate_deepslate_pillar.png b/public/textures/chipped/ornate_deepslate_pillar.png new file mode 100644 index 00000000..04895d43 Binary files /dev/null and b/public/textures/chipped/ornate_deepslate_pillar.png differ diff --git a/public/textures/chipped/ornate_diorite_pillar.png b/public/textures/chipped/ornate_diorite_pillar.png new file mode 100644 index 00000000..0fead931 Binary files /dev/null and b/public/textures/chipped/ornate_diorite_pillar.png differ diff --git a/public/textures/chipped/ornate_dirt_pillar.png b/public/textures/chipped/ornate_dirt_pillar.png new file mode 100644 index 00000000..06c0541b Binary files /dev/null and b/public/textures/chipped/ornate_dirt_pillar.png differ diff --git a/public/textures/chipped/ornate_dripstone_block_pillar.png b/public/textures/chipped/ornate_dripstone_block_pillar.png new file mode 100644 index 00000000..73cf4e87 Binary files /dev/null and b/public/textures/chipped/ornate_dripstone_block_pillar.png differ diff --git a/public/textures/chipped/ornate_end_stone_pillar.png b/public/textures/chipped/ornate_end_stone_pillar.png new file mode 100644 index 00000000..3a48748e Binary files /dev/null and b/public/textures/chipped/ornate_end_stone_pillar.png differ diff --git a/public/textures/chipped/ornate_gilded_blackstone_pillar.png b/public/textures/chipped/ornate_gilded_blackstone_pillar.png new file mode 100644 index 00000000..f0b60e30 Binary files /dev/null and b/public/textures/chipped/ornate_gilded_blackstone_pillar.png differ diff --git a/public/textures/chipped/ornate_glowstone_lantern.png b/public/textures/chipped/ornate_glowstone_lantern.png new file mode 100644 index 00000000..03ef21ab Binary files /dev/null and b/public/textures/chipped/ornate_glowstone_lantern.png differ diff --git a/public/textures/chipped/ornate_granite_pillar.png b/public/textures/chipped/ornate_granite_pillar.png new file mode 100644 index 00000000..833eada5 Binary files /dev/null and b/public/textures/chipped/ornate_granite_pillar.png differ diff --git a/public/textures/chipped/ornate_gray_stained_glass.png b/public/textures/chipped/ornate_gray_stained_glass.png new file mode 100644 index 00000000..e5fcefc7 Binary files /dev/null and b/public/textures/chipped/ornate_gray_stained_glass.png differ diff --git a/public/textures/chipped/ornate_gray_stained_glass_pane.png b/public/textures/chipped/ornate_gray_stained_glass_pane.png new file mode 100644 index 00000000..785db9e7 Binary files /dev/null and b/public/textures/chipped/ornate_gray_stained_glass_pane.png differ diff --git a/public/textures/chipped/ornate_green_stained_glass.png b/public/textures/chipped/ornate_green_stained_glass.png new file mode 100644 index 00000000..5a6599bf Binary files /dev/null and b/public/textures/chipped/ornate_green_stained_glass.png differ diff --git a/public/textures/chipped/ornate_green_stained_glass_pane.png b/public/textures/chipped/ornate_green_stained_glass_pane.png new file mode 100644 index 00000000..0dfaf868 Binary files /dev/null and b/public/textures/chipped/ornate_green_stained_glass_pane.png differ diff --git a/public/textures/chipped/ornate_ice_pillar.png b/public/textures/chipped/ornate_ice_pillar.png new file mode 100644 index 00000000..8a254a0c Binary files /dev/null and b/public/textures/chipped/ornate_ice_pillar.png differ diff --git a/public/textures/chipped/ornate_lapis_block_pillar.png b/public/textures/chipped/ornate_lapis_block_pillar.png new file mode 100644 index 00000000..71d8d8a4 Binary files /dev/null and b/public/textures/chipped/ornate_lapis_block_pillar.png differ diff --git a/public/textures/chipped/ornate_leaded_glass.png b/public/textures/chipped/ornate_leaded_glass.png new file mode 100644 index 00000000..670d1723 Binary files /dev/null and b/public/textures/chipped/ornate_leaded_glass.png differ diff --git a/public/textures/chipped/ornate_leaded_glass_pane.png b/public/textures/chipped/ornate_leaded_glass_pane.png new file mode 100644 index 00000000..031df165 Binary files /dev/null and b/public/textures/chipped/ornate_leaded_glass_pane.png differ diff --git a/public/textures/chipped/ornate_light_blue_stained_glass.png b/public/textures/chipped/ornate_light_blue_stained_glass.png new file mode 100644 index 00000000..db7178cb Binary files /dev/null and b/public/textures/chipped/ornate_light_blue_stained_glass.png differ diff --git a/public/textures/chipped/ornate_light_blue_stained_glass_pane.png b/public/textures/chipped/ornate_light_blue_stained_glass_pane.png new file mode 100644 index 00000000..1966f7ce Binary files /dev/null and b/public/textures/chipped/ornate_light_blue_stained_glass_pane.png differ diff --git a/public/textures/chipped/ornate_light_gray_stained_glass.png b/public/textures/chipped/ornate_light_gray_stained_glass.png new file mode 100644 index 00000000..cbf67522 Binary files /dev/null and b/public/textures/chipped/ornate_light_gray_stained_glass.png differ diff --git a/public/textures/chipped/ornate_light_gray_stained_glass_pane.png b/public/textures/chipped/ornate_light_gray_stained_glass_pane.png new file mode 100644 index 00000000..29449503 Binary files /dev/null and b/public/textures/chipped/ornate_light_gray_stained_glass_pane.png differ diff --git a/public/textures/chipped/ornate_lime_stained_glass.png b/public/textures/chipped/ornate_lime_stained_glass.png new file mode 100644 index 00000000..026dae8d Binary files /dev/null and b/public/textures/chipped/ornate_lime_stained_glass.png differ diff --git a/public/textures/chipped/ornate_lime_stained_glass_pane.png b/public/textures/chipped/ornate_lime_stained_glass_pane.png new file mode 100644 index 00000000..2d9d1134 Binary files /dev/null and b/public/textures/chipped/ornate_lime_stained_glass_pane.png differ diff --git a/public/textures/chipped/ornate_lodestone_pillar.png b/public/textures/chipped/ornate_lodestone_pillar.png new file mode 100644 index 00000000..de87698f Binary files /dev/null and b/public/textures/chipped/ornate_lodestone_pillar.png differ diff --git a/public/textures/chipped/ornate_magenta_stained_glass.png b/public/textures/chipped/ornate_magenta_stained_glass.png new file mode 100644 index 00000000..a12697f7 Binary files /dev/null and b/public/textures/chipped/ornate_magenta_stained_glass.png differ diff --git a/public/textures/chipped/ornate_magenta_stained_glass_pane.png b/public/textures/chipped/ornate_magenta_stained_glass_pane.png new file mode 100644 index 00000000..53d21a09 Binary files /dev/null and b/public/textures/chipped/ornate_magenta_stained_glass_pane.png differ diff --git a/public/textures/chipped/ornate_magma_block_pillar.png b/public/textures/chipped/ornate_magma_block_pillar.png new file mode 100644 index 00000000..8ff13c82 Binary files /dev/null and b/public/textures/chipped/ornate_magma_block_pillar.png differ diff --git a/public/textures/chipped/ornate_mossy_cobblestone_pillar.png b/public/textures/chipped/ornate_mossy_cobblestone_pillar.png new file mode 100644 index 00000000..ff20e8a6 Binary files /dev/null and b/public/textures/chipped/ornate_mossy_cobblestone_pillar.png differ diff --git a/public/textures/chipped/ornate_mossy_stone_bricks_pillar.png b/public/textures/chipped/ornate_mossy_stone_bricks_pillar.png new file mode 100644 index 00000000..605684a5 Binary files /dev/null and b/public/textures/chipped/ornate_mossy_stone_bricks_pillar.png differ diff --git a/public/textures/chipped/ornate_mud_bricks_pillar.png b/public/textures/chipped/ornate_mud_bricks_pillar.png new file mode 100644 index 00000000..d771bf2a Binary files /dev/null and b/public/textures/chipped/ornate_mud_bricks_pillar.png differ diff --git a/public/textures/chipped/ornate_mud_pillar.png b/public/textures/chipped/ornate_mud_pillar.png new file mode 100644 index 00000000..99e7de02 Binary files /dev/null and b/public/textures/chipped/ornate_mud_pillar.png differ diff --git a/public/textures/chipped/ornate_nether_bricks_pillar.png b/public/textures/chipped/ornate_nether_bricks_pillar.png new file mode 100644 index 00000000..e98a4133 Binary files /dev/null and b/public/textures/chipped/ornate_nether_bricks_pillar.png differ diff --git a/public/textures/chipped/ornate_netherrack_pillar.png b/public/textures/chipped/ornate_netherrack_pillar.png new file mode 100644 index 00000000..73ea9230 Binary files /dev/null and b/public/textures/chipped/ornate_netherrack_pillar.png differ diff --git a/public/textures/chipped/ornate_obsidian_pillar.png b/public/textures/chipped/ornate_obsidian_pillar.png new file mode 100644 index 00000000..57353391 Binary files /dev/null and b/public/textures/chipped/ornate_obsidian_pillar.png differ diff --git a/public/textures/chipped/ornate_orange_stained_glass.png b/public/textures/chipped/ornate_orange_stained_glass.png new file mode 100644 index 00000000..82108b0d Binary files /dev/null and b/public/textures/chipped/ornate_orange_stained_glass.png differ diff --git a/public/textures/chipped/ornate_orange_stained_glass_pane.png b/public/textures/chipped/ornate_orange_stained_glass_pane.png new file mode 100644 index 00000000..ef87ffc8 Binary files /dev/null and b/public/textures/chipped/ornate_orange_stained_glass_pane.png differ diff --git a/public/textures/chipped/ornate_packed_ice_pillar.png b/public/textures/chipped/ornate_packed_ice_pillar.png new file mode 100644 index 00000000..fb5b7a5c Binary files /dev/null and b/public/textures/chipped/ornate_packed_ice_pillar.png differ diff --git a/public/textures/chipped/ornate_packed_mud_pillar.png b/public/textures/chipped/ornate_packed_mud_pillar.png new file mode 100644 index 00000000..54a192dd Binary files /dev/null and b/public/textures/chipped/ornate_packed_mud_pillar.png differ diff --git a/public/textures/chipped/ornate_pink_stained_glass.png b/public/textures/chipped/ornate_pink_stained_glass.png new file mode 100644 index 00000000..ccba3b98 Binary files /dev/null and b/public/textures/chipped/ornate_pink_stained_glass.png differ diff --git a/public/textures/chipped/ornate_pink_stained_glass_pane.png b/public/textures/chipped/ornate_pink_stained_glass_pane.png new file mode 100644 index 00000000..a0c42e92 Binary files /dev/null and b/public/textures/chipped/ornate_pink_stained_glass_pane.png differ diff --git a/public/textures/chipped/ornate_prismarine_pillar.png b/public/textures/chipped/ornate_prismarine_pillar.png new file mode 100644 index 00000000..7acc4b5b Binary files /dev/null and b/public/textures/chipped/ornate_prismarine_pillar.png differ diff --git a/public/textures/chipped/ornate_purple_stained_glass.png b/public/textures/chipped/ornate_purple_stained_glass.png new file mode 100644 index 00000000..8cfc2e39 Binary files /dev/null and b/public/textures/chipped/ornate_purple_stained_glass.png differ diff --git a/public/textures/chipped/ornate_purple_stained_glass_pane.png b/public/textures/chipped/ornate_purple_stained_glass_pane.png new file mode 100644 index 00000000..d2934e13 Binary files /dev/null and b/public/textures/chipped/ornate_purple_stained_glass_pane.png differ diff --git a/public/textures/chipped/ornate_purpur_block_pillar.png b/public/textures/chipped/ornate_purpur_block_pillar.png new file mode 100644 index 00000000..1b16d4b6 Binary files /dev/null and b/public/textures/chipped/ornate_purpur_block_pillar.png differ diff --git a/public/textures/chipped/ornate_quartz_block_pillar.png b/public/textures/chipped/ornate_quartz_block_pillar.png new file mode 100644 index 00000000..76247f5b Binary files /dev/null and b/public/textures/chipped/ornate_quartz_block_pillar.png differ diff --git a/public/textures/chipped/ornate_raw_copper_block_pillar.png b/public/textures/chipped/ornate_raw_copper_block_pillar.png new file mode 100644 index 00000000..4428d96b Binary files /dev/null and b/public/textures/chipped/ornate_raw_copper_block_pillar.png differ diff --git a/public/textures/chipped/ornate_raw_gold_block_pillar.png b/public/textures/chipped/ornate_raw_gold_block_pillar.png new file mode 100644 index 00000000..704456c9 Binary files /dev/null and b/public/textures/chipped/ornate_raw_gold_block_pillar.png differ diff --git a/public/textures/chipped/ornate_raw_iron_block_pillar.png b/public/textures/chipped/ornate_raw_iron_block_pillar.png new file mode 100644 index 00000000..d7d1a123 Binary files /dev/null and b/public/textures/chipped/ornate_raw_iron_block_pillar.png differ diff --git a/public/textures/chipped/ornate_red_nether_bricks_pillar.png b/public/textures/chipped/ornate_red_nether_bricks_pillar.png new file mode 100644 index 00000000..c4b61b09 Binary files /dev/null and b/public/textures/chipped/ornate_red_nether_bricks_pillar.png differ diff --git a/public/textures/chipped/ornate_red_sandstone_pillar.png b/public/textures/chipped/ornate_red_sandstone_pillar.png new file mode 100644 index 00000000..6dc28d02 Binary files /dev/null and b/public/textures/chipped/ornate_red_sandstone_pillar.png differ diff --git a/public/textures/chipped/ornate_red_stained_glass.png b/public/textures/chipped/ornate_red_stained_glass.png new file mode 100644 index 00000000..7774e87a Binary files /dev/null and b/public/textures/chipped/ornate_red_stained_glass.png differ diff --git a/public/textures/chipped/ornate_red_stained_glass_pane.png b/public/textures/chipped/ornate_red_stained_glass_pane.png new file mode 100644 index 00000000..66e50e3c Binary files /dev/null and b/public/textures/chipped/ornate_red_stained_glass_pane.png differ diff --git a/public/textures/chipped/ornate_redstone_block_pillar.png b/public/textures/chipped/ornate_redstone_block_pillar.png new file mode 100644 index 00000000..8e4bff02 Binary files /dev/null and b/public/textures/chipped/ornate_redstone_block_pillar.png differ diff --git a/public/textures/chipped/ornate_redstone_lamp.png b/public/textures/chipped/ornate_redstone_lamp.png new file mode 100644 index 00000000..cffe9d10 Binary files /dev/null and b/public/textures/chipped/ornate_redstone_lamp.png differ diff --git a/public/textures/chipped/ornate_sandstone_pillar.png b/public/textures/chipped/ornate_sandstone_pillar.png new file mode 100644 index 00000000..cd7ec6a2 Binary files /dev/null and b/public/textures/chipped/ornate_sandstone_pillar.png differ diff --git a/public/textures/chipped/ornate_sea_lantern.png b/public/textures/chipped/ornate_sea_lantern.png new file mode 100644 index 00000000..517a0c6c Binary files /dev/null and b/public/textures/chipped/ornate_sea_lantern.png differ diff --git a/public/textures/chipped/ornate_shroomlight_lantern.png b/public/textures/chipped/ornate_shroomlight_lantern.png new file mode 100644 index 00000000..b972f490 Binary files /dev/null and b/public/textures/chipped/ornate_shroomlight_lantern.png differ diff --git a/public/textures/chipped/ornate_smooth_stone_pillar.png b/public/textures/chipped/ornate_smooth_stone_pillar.png new file mode 100644 index 00000000..7f00a3c6 Binary files /dev/null and b/public/textures/chipped/ornate_smooth_stone_pillar.png differ diff --git a/public/textures/chipped/ornate_snow_block_pillar.png b/public/textures/chipped/ornate_snow_block_pillar.png new file mode 100644 index 00000000..a8b57488 Binary files /dev/null and b/public/textures/chipped/ornate_snow_block_pillar.png differ diff --git a/public/textures/chipped/ornate_stone_pillar.png b/public/textures/chipped/ornate_stone_pillar.png new file mode 100644 index 00000000..c101784f Binary files /dev/null and b/public/textures/chipped/ornate_stone_pillar.png differ diff --git a/public/textures/chipped/ornate_tuff_pillar.png b/public/textures/chipped/ornate_tuff_pillar.png new file mode 100644 index 00000000..198bfd09 Binary files /dev/null and b/public/textures/chipped/ornate_tuff_pillar.png differ diff --git a/public/textures/chipped/ornate_white_redstone_lamp.png b/public/textures/chipped/ornate_white_redstone_lamp.png new file mode 100644 index 00000000..caf4772e Binary files /dev/null and b/public/textures/chipped/ornate_white_redstone_lamp.png differ diff --git a/public/textures/chipped/ornate_white_stained_glass.png b/public/textures/chipped/ornate_white_stained_glass.png new file mode 100644 index 00000000..8c29b03a Binary files /dev/null and b/public/textures/chipped/ornate_white_stained_glass.png differ diff --git a/public/textures/chipped/ornate_white_stained_glass_pane.png b/public/textures/chipped/ornate_white_stained_glass_pane.png new file mode 100644 index 00000000..47f77bd3 Binary files /dev/null and b/public/textures/chipped/ornate_white_stained_glass_pane.png differ diff --git a/public/textures/chipped/ornate_yellow_stained_glass.png b/public/textures/chipped/ornate_yellow_stained_glass.png new file mode 100644 index 00000000..aff71c8d Binary files /dev/null and b/public/textures/chipped/ornate_yellow_stained_glass.png differ diff --git a/public/textures/chipped/ornate_yellow_stained_glass_pane.png b/public/textures/chipped/ornate_yellow_stained_glass_pane.png new file mode 100644 index 00000000..a332b756 Binary files /dev/null and b/public/textures/chipped/ornate_yellow_stained_glass_pane.png differ diff --git a/public/textures/chipped/overgrown_acacia_door.png b/public/textures/chipped/overgrown_acacia_door.png new file mode 100644 index 00000000..f9eeb5b4 Binary files /dev/null and b/public/textures/chipped/overgrown_acacia_door.png differ diff --git a/public/textures/chipped/overgrown_acacia_log.png b/public/textures/chipped/overgrown_acacia_log.png new file mode 100644 index 00000000..20b5c34c Binary files /dev/null and b/public/textures/chipped/overgrown_acacia_log.png differ diff --git a/public/textures/chipped/overgrown_acacia_trapdoor.png b/public/textures/chipped/overgrown_acacia_trapdoor.png new file mode 100644 index 00000000..f038362f Binary files /dev/null and b/public/textures/chipped/overgrown_acacia_trapdoor.png differ diff --git a/public/textures/chipped/overgrown_autumnkin.png b/public/textures/chipped/overgrown_autumnkin.png new file mode 100644 index 00000000..eb8ab8f2 Binary files /dev/null and b/public/textures/chipped/overgrown_autumnkin.png differ diff --git a/public/textures/chipped/overgrown_bamboo_door.png b/public/textures/chipped/overgrown_bamboo_door.png new file mode 100644 index 00000000..f96b73ea Binary files /dev/null and b/public/textures/chipped/overgrown_bamboo_door.png differ diff --git a/public/textures/chipped/overgrown_bamboo_trapdoor.png b/public/textures/chipped/overgrown_bamboo_trapdoor.png new file mode 100644 index 00000000..9d1c43f4 Binary files /dev/null and b/public/textures/chipped/overgrown_bamboo_trapdoor.png differ diff --git a/public/textures/chipped/overgrown_birch_door.png b/public/textures/chipped/overgrown_birch_door.png new file mode 100644 index 00000000..4a2d2cb2 Binary files /dev/null and b/public/textures/chipped/overgrown_birch_door.png differ diff --git a/public/textures/chipped/overgrown_birch_log.png b/public/textures/chipped/overgrown_birch_log.png new file mode 100644 index 00000000..1ced5acf Binary files /dev/null and b/public/textures/chipped/overgrown_birch_log.png differ diff --git a/public/textures/chipped/overgrown_birch_trapdoor.png b/public/textures/chipped/overgrown_birch_trapdoor.png new file mode 100644 index 00000000..c798c9e6 Binary files /dev/null and b/public/textures/chipped/overgrown_birch_trapdoor.png differ diff --git a/public/textures/chipped/overgrown_cherry_door.png b/public/textures/chipped/overgrown_cherry_door.png new file mode 100644 index 00000000..4e644061 Binary files /dev/null and b/public/textures/chipped/overgrown_cherry_door.png differ diff --git a/public/textures/chipped/overgrown_cherry_log.png b/public/textures/chipped/overgrown_cherry_log.png new file mode 100644 index 00000000..92d8ff0b Binary files /dev/null and b/public/textures/chipped/overgrown_cherry_log.png differ diff --git a/public/textures/chipped/overgrown_cherry_trapdoor.png b/public/textures/chipped/overgrown_cherry_trapdoor.png new file mode 100644 index 00000000..35a8d4a5 Binary files /dev/null and b/public/textures/chipped/overgrown_cherry_trapdoor.png differ diff --git a/public/textures/chipped/overgrown_crimson_door.png b/public/textures/chipped/overgrown_crimson_door.png new file mode 100644 index 00000000..54d04412 Binary files /dev/null and b/public/textures/chipped/overgrown_crimson_door.png differ diff --git a/public/textures/chipped/overgrown_crimson_trapdoor.png b/public/textures/chipped/overgrown_crimson_trapdoor.png new file mode 100644 index 00000000..59157d80 Binary files /dev/null and b/public/textures/chipped/overgrown_crimson_trapdoor.png differ diff --git a/public/textures/chipped/overgrown_dark_oak_door.png b/public/textures/chipped/overgrown_dark_oak_door.png new file mode 100644 index 00000000..c4537421 Binary files /dev/null and b/public/textures/chipped/overgrown_dark_oak_door.png differ diff --git a/public/textures/chipped/overgrown_dark_oak_log.png b/public/textures/chipped/overgrown_dark_oak_log.png new file mode 100644 index 00000000..fc3b5a93 Binary files /dev/null and b/public/textures/chipped/overgrown_dark_oak_log.png differ diff --git a/public/textures/chipped/overgrown_dark_oak_trapdoor.png b/public/textures/chipped/overgrown_dark_oak_trapdoor.png new file mode 100644 index 00000000..7afb6bbd Binary files /dev/null and b/public/textures/chipped/overgrown_dark_oak_trapdoor.png differ diff --git a/public/textures/chipped/overgrown_jungle_door.png b/public/textures/chipped/overgrown_jungle_door.png new file mode 100644 index 00000000..06d670bb Binary files /dev/null and b/public/textures/chipped/overgrown_jungle_door.png differ diff --git a/public/textures/chipped/overgrown_jungle_log.png b/public/textures/chipped/overgrown_jungle_log.png new file mode 100644 index 00000000..5d5fb5b8 Binary files /dev/null and b/public/textures/chipped/overgrown_jungle_log.png differ diff --git a/public/textures/chipped/overgrown_jungle_trapdoor.png b/public/textures/chipped/overgrown_jungle_trapdoor.png new file mode 100644 index 00000000..8e8f940b Binary files /dev/null and b/public/textures/chipped/overgrown_jungle_trapdoor.png differ diff --git a/public/textures/chipped/overgrown_lumpkin.png b/public/textures/chipped/overgrown_lumpkin.png new file mode 100644 index 00000000..94e1a2e5 Binary files /dev/null and b/public/textures/chipped/overgrown_lumpkin.png differ diff --git a/public/textures/chipped/overgrown_mangrove_door.png b/public/textures/chipped/overgrown_mangrove_door.png new file mode 100644 index 00000000..7be6df86 Binary files /dev/null and b/public/textures/chipped/overgrown_mangrove_door.png differ diff --git a/public/textures/chipped/overgrown_mangrove_log.png b/public/textures/chipped/overgrown_mangrove_log.png new file mode 100644 index 00000000..1ea7249d Binary files /dev/null and b/public/textures/chipped/overgrown_mangrove_log.png differ diff --git a/public/textures/chipped/overgrown_mangrove_trapdoor.png b/public/textures/chipped/overgrown_mangrove_trapdoor.png new file mode 100644 index 00000000..66a4d0f8 Binary files /dev/null and b/public/textures/chipped/overgrown_mangrove_trapdoor.png differ diff --git a/public/textures/chipped/overgrown_oak_door.png b/public/textures/chipped/overgrown_oak_door.png new file mode 100644 index 00000000..a76acce9 Binary files /dev/null and b/public/textures/chipped/overgrown_oak_door.png differ diff --git a/public/textures/chipped/overgrown_oak_log.png b/public/textures/chipped/overgrown_oak_log.png new file mode 100644 index 00000000..3c8a7664 Binary files /dev/null and b/public/textures/chipped/overgrown_oak_log.png differ diff --git a/public/textures/chipped/overgrown_oak_trapdoor.png b/public/textures/chipped/overgrown_oak_trapdoor.png new file mode 100644 index 00000000..4f22c888 Binary files /dev/null and b/public/textures/chipped/overgrown_oak_trapdoor.png differ diff --git a/public/textures/chipped/overgrown_pimpkin.png b/public/textures/chipped/overgrown_pimpkin.png new file mode 100644 index 00000000..2408e70c Binary files /dev/null and b/public/textures/chipped/overgrown_pimpkin.png differ diff --git a/public/textures/chipped/overgrown_pumpkin.png b/public/textures/chipped/overgrown_pumpkin.png new file mode 100644 index 00000000..daabac0c Binary files /dev/null and b/public/textures/chipped/overgrown_pumpkin.png differ diff --git a/public/textures/chipped/overgrown_sand.png b/public/textures/chipped/overgrown_sand.png new file mode 100644 index 00000000..a4f099e8 Binary files /dev/null and b/public/textures/chipped/overgrown_sand.png differ diff --git a/public/textures/chipped/overgrown_spruce_door.png b/public/textures/chipped/overgrown_spruce_door.png new file mode 100644 index 00000000..87d5419e Binary files /dev/null and b/public/textures/chipped/overgrown_spruce_door.png differ diff --git a/public/textures/chipped/overgrown_spruce_log.png b/public/textures/chipped/overgrown_spruce_log.png new file mode 100644 index 00000000..19563deb Binary files /dev/null and b/public/textures/chipped/overgrown_spruce_log.png differ diff --git a/public/textures/chipped/overgrown_spruce_trapdoor.png b/public/textures/chipped/overgrown_spruce_trapdoor.png new file mode 100644 index 00000000..0da6b6e9 Binary files /dev/null and b/public/textures/chipped/overgrown_spruce_trapdoor.png differ diff --git a/public/textures/chipped/overgrown_warped_roots.png b/public/textures/chipped/overgrown_warped_roots.png new file mode 100644 index 00000000..2161c467 Binary files /dev/null and b/public/textures/chipped/overgrown_warped_roots.png differ diff --git a/public/textures/chipped/overgrown_warped_trapdoor.png b/public/textures/chipped/overgrown_warped_trapdoor.png new file mode 100644 index 00000000..65f2e5b1 Binary files /dev/null and b/public/textures/chipped/overgrown_warped_trapdoor.png differ diff --git a/public/textures/chipped/overjoyed_carved_pumpkin.png b/public/textures/chipped/overjoyed_carved_pumpkin.png new file mode 100644 index 00000000..2464fc44 Binary files /dev/null and b/public/textures/chipped/overjoyed_carved_pumpkin.png differ diff --git a/public/textures/chipped/overjoyed_jack_o_lantern.png b/public/textures/chipped/overjoyed_jack_o_lantern.png new file mode 100644 index 00000000..bcb49ace Binary files /dev/null and b/public/textures/chipped/overjoyed_jack_o_lantern.png differ diff --git a/public/textures/chipped/overlapping_amethyst_block_tiles.png b/public/textures/chipped/overlapping_amethyst_block_tiles.png new file mode 100644 index 00000000..37628966 Binary files /dev/null and b/public/textures/chipped/overlapping_amethyst_block_tiles.png differ diff --git a/public/textures/chipped/overlapping_ancient_debris_tiles.png b/public/textures/chipped/overlapping_ancient_debris_tiles.png new file mode 100644 index 00000000..e06a6b9c Binary files /dev/null and b/public/textures/chipped/overlapping_ancient_debris_tiles.png differ diff --git a/public/textures/chipped/overlapping_andesite_tiles.png b/public/textures/chipped/overlapping_andesite_tiles.png new file mode 100644 index 00000000..4cb6b091 Binary files /dev/null and b/public/textures/chipped/overlapping_andesite_tiles.png differ diff --git a/public/textures/chipped/overlapping_basalt_tiles.png b/public/textures/chipped/overlapping_basalt_tiles.png new file mode 100644 index 00000000..78a0f376 Binary files /dev/null and b/public/textures/chipped/overlapping_basalt_tiles.png differ diff --git a/public/textures/chipped/overlapping_blackstone_tiles.png b/public/textures/chipped/overlapping_blackstone_tiles.png new file mode 100644 index 00000000..eeb8c925 Binary files /dev/null and b/public/textures/chipped/overlapping_blackstone_tiles.png differ diff --git a/public/textures/chipped/overlapping_blue_ice_tiles.png b/public/textures/chipped/overlapping_blue_ice_tiles.png new file mode 100644 index 00000000..609895ea Binary files /dev/null and b/public/textures/chipped/overlapping_blue_ice_tiles.png differ diff --git a/public/textures/chipped/overlapping_borderless_bricks_tiles.png b/public/textures/chipped/overlapping_borderless_bricks_tiles.png new file mode 100644 index 00000000..eea6c8f4 Binary files /dev/null and b/public/textures/chipped/overlapping_borderless_bricks_tiles.png differ diff --git a/public/textures/chipped/overlapping_bricks_tiles.png b/public/textures/chipped/overlapping_bricks_tiles.png new file mode 100644 index 00000000..79af9bd1 Binary files /dev/null and b/public/textures/chipped/overlapping_bricks_tiles.png differ diff --git a/public/textures/chipped/overlapping_calcite_tiles.png b/public/textures/chipped/overlapping_calcite_tiles.png new file mode 100644 index 00000000..0de01992 Binary files /dev/null and b/public/textures/chipped/overlapping_calcite_tiles.png differ diff --git a/public/textures/chipped/overlapping_clay_tiles.png b/public/textures/chipped/overlapping_clay_tiles.png new file mode 100644 index 00000000..010c393f Binary files /dev/null and b/public/textures/chipped/overlapping_clay_tiles.png differ diff --git a/public/textures/chipped/overlapping_coal_block_tiles.png b/public/textures/chipped/overlapping_coal_block_tiles.png new file mode 100644 index 00000000..30ece1d2 Binary files /dev/null and b/public/textures/chipped/overlapping_coal_block_tiles.png differ diff --git a/public/textures/chipped/overlapping_cobblestone_tiles.png b/public/textures/chipped/overlapping_cobblestone_tiles.png new file mode 100644 index 00000000..2006bb09 Binary files /dev/null and b/public/textures/chipped/overlapping_cobblestone_tiles.png differ diff --git a/public/textures/chipped/overlapping_crying_obsidian_tiles.png b/public/textures/chipped/overlapping_crying_obsidian_tiles.png new file mode 100644 index 00000000..9a619dc7 Binary files /dev/null and b/public/textures/chipped/overlapping_crying_obsidian_tiles.png differ diff --git a/public/textures/chipped/overlapping_dark_prismarine_tiles.png b/public/textures/chipped/overlapping_dark_prismarine_tiles.png new file mode 100644 index 00000000..71dda313 Binary files /dev/null and b/public/textures/chipped/overlapping_dark_prismarine_tiles.png differ diff --git a/public/textures/chipped/overlapping_deepslate_tiles.png b/public/textures/chipped/overlapping_deepslate_tiles.png new file mode 100644 index 00000000..ab8a1432 Binary files /dev/null and b/public/textures/chipped/overlapping_deepslate_tiles.png differ diff --git a/public/textures/chipped/overlapping_diorite_tiles.png b/public/textures/chipped/overlapping_diorite_tiles.png new file mode 100644 index 00000000..b185cc9a Binary files /dev/null and b/public/textures/chipped/overlapping_diorite_tiles.png differ diff --git a/public/textures/chipped/overlapping_dirt_tiles.png b/public/textures/chipped/overlapping_dirt_tiles.png new file mode 100644 index 00000000..55eb9d29 Binary files /dev/null and b/public/textures/chipped/overlapping_dirt_tiles.png differ diff --git a/public/textures/chipped/overlapping_dripstone_block_tiles.png b/public/textures/chipped/overlapping_dripstone_block_tiles.png new file mode 100644 index 00000000..4c9e173a Binary files /dev/null and b/public/textures/chipped/overlapping_dripstone_block_tiles.png differ diff --git a/public/textures/chipped/overlapping_end_stone_tiles.png b/public/textures/chipped/overlapping_end_stone_tiles.png new file mode 100644 index 00000000..03217d97 Binary files /dev/null and b/public/textures/chipped/overlapping_end_stone_tiles.png differ diff --git a/public/textures/chipped/overlapping_gilded_blackstone_tiles.png b/public/textures/chipped/overlapping_gilded_blackstone_tiles.png new file mode 100644 index 00000000..fc24b4cb Binary files /dev/null and b/public/textures/chipped/overlapping_gilded_blackstone_tiles.png differ diff --git a/public/textures/chipped/overlapping_granite_tiles.png b/public/textures/chipped/overlapping_granite_tiles.png new file mode 100644 index 00000000..5949d9b0 Binary files /dev/null and b/public/textures/chipped/overlapping_granite_tiles.png differ diff --git a/public/textures/chipped/overlapping_ice_tiles.png b/public/textures/chipped/overlapping_ice_tiles.png new file mode 100644 index 00000000..609fafd6 Binary files /dev/null and b/public/textures/chipped/overlapping_ice_tiles.png differ diff --git a/public/textures/chipped/overlapping_lapis_block_tiles.png b/public/textures/chipped/overlapping_lapis_block_tiles.png new file mode 100644 index 00000000..2f96dfb7 Binary files /dev/null and b/public/textures/chipped/overlapping_lapis_block_tiles.png differ diff --git a/public/textures/chipped/overlapping_lodestone_tiles.png b/public/textures/chipped/overlapping_lodestone_tiles.png new file mode 100644 index 00000000..d3891eae Binary files /dev/null and b/public/textures/chipped/overlapping_lodestone_tiles.png differ diff --git a/public/textures/chipped/overlapping_magma_block_tiles.png b/public/textures/chipped/overlapping_magma_block_tiles.png new file mode 100644 index 00000000..894c61fa Binary files /dev/null and b/public/textures/chipped/overlapping_magma_block_tiles.png differ diff --git a/public/textures/chipped/overlapping_mossy_cobblestone_tiles.png b/public/textures/chipped/overlapping_mossy_cobblestone_tiles.png new file mode 100644 index 00000000..68c6e521 Binary files /dev/null and b/public/textures/chipped/overlapping_mossy_cobblestone_tiles.png differ diff --git a/public/textures/chipped/overlapping_mossy_stone_bricks_tiles.png b/public/textures/chipped/overlapping_mossy_stone_bricks_tiles.png new file mode 100644 index 00000000..16e0d02d Binary files /dev/null and b/public/textures/chipped/overlapping_mossy_stone_bricks_tiles.png differ diff --git a/public/textures/chipped/overlapping_mud_bricks_tiles.png b/public/textures/chipped/overlapping_mud_bricks_tiles.png new file mode 100644 index 00000000..bbe91133 Binary files /dev/null and b/public/textures/chipped/overlapping_mud_bricks_tiles.png differ diff --git a/public/textures/chipped/overlapping_mud_tiles.png b/public/textures/chipped/overlapping_mud_tiles.png new file mode 100644 index 00000000..71f7ee90 Binary files /dev/null and b/public/textures/chipped/overlapping_mud_tiles.png differ diff --git a/public/textures/chipped/overlapping_nether_bricks_tiles.png b/public/textures/chipped/overlapping_nether_bricks_tiles.png new file mode 100644 index 00000000..a2c51722 Binary files /dev/null and b/public/textures/chipped/overlapping_nether_bricks_tiles.png differ diff --git a/public/textures/chipped/overlapping_netherrack_tiles.png b/public/textures/chipped/overlapping_netherrack_tiles.png new file mode 100644 index 00000000..68fa3172 Binary files /dev/null and b/public/textures/chipped/overlapping_netherrack_tiles.png differ diff --git a/public/textures/chipped/overlapping_obsidian_tiles.png b/public/textures/chipped/overlapping_obsidian_tiles.png new file mode 100644 index 00000000..dca3049a Binary files /dev/null and b/public/textures/chipped/overlapping_obsidian_tiles.png differ diff --git a/public/textures/chipped/overlapping_packed_ice_tiles.png b/public/textures/chipped/overlapping_packed_ice_tiles.png new file mode 100644 index 00000000..bd5f4a13 Binary files /dev/null and b/public/textures/chipped/overlapping_packed_ice_tiles.png differ diff --git a/public/textures/chipped/overlapping_packed_mud_tiles.png b/public/textures/chipped/overlapping_packed_mud_tiles.png new file mode 100644 index 00000000..54d78835 Binary files /dev/null and b/public/textures/chipped/overlapping_packed_mud_tiles.png differ diff --git a/public/textures/chipped/overlapping_prismarine_tiles.png b/public/textures/chipped/overlapping_prismarine_tiles.png new file mode 100644 index 00000000..24732fb2 Binary files /dev/null and b/public/textures/chipped/overlapping_prismarine_tiles.png differ diff --git a/public/textures/chipped/overlapping_purpur_block_tiles.png b/public/textures/chipped/overlapping_purpur_block_tiles.png new file mode 100644 index 00000000..0b2ca31c Binary files /dev/null and b/public/textures/chipped/overlapping_purpur_block_tiles.png differ diff --git a/public/textures/chipped/overlapping_quartz_block_tiles.png b/public/textures/chipped/overlapping_quartz_block_tiles.png new file mode 100644 index 00000000..0be5deff Binary files /dev/null and b/public/textures/chipped/overlapping_quartz_block_tiles.png differ diff --git a/public/textures/chipped/overlapping_raw_copper_block_tiles.png b/public/textures/chipped/overlapping_raw_copper_block_tiles.png new file mode 100644 index 00000000..394c860f Binary files /dev/null and b/public/textures/chipped/overlapping_raw_copper_block_tiles.png differ diff --git a/public/textures/chipped/overlapping_raw_gold_block_tiles.png b/public/textures/chipped/overlapping_raw_gold_block_tiles.png new file mode 100644 index 00000000..c11778f4 Binary files /dev/null and b/public/textures/chipped/overlapping_raw_gold_block_tiles.png differ diff --git a/public/textures/chipped/overlapping_raw_iron_block_tiles.png b/public/textures/chipped/overlapping_raw_iron_block_tiles.png new file mode 100644 index 00000000..fa9fa3c4 Binary files /dev/null and b/public/textures/chipped/overlapping_raw_iron_block_tiles.png differ diff --git a/public/textures/chipped/overlapping_red_nether_bricks_tiles.png b/public/textures/chipped/overlapping_red_nether_bricks_tiles.png new file mode 100644 index 00000000..681a923e Binary files /dev/null and b/public/textures/chipped/overlapping_red_nether_bricks_tiles.png differ diff --git a/public/textures/chipped/overlapping_red_sandstone_tiles.png b/public/textures/chipped/overlapping_red_sandstone_tiles.png new file mode 100644 index 00000000..05f7a446 Binary files /dev/null and b/public/textures/chipped/overlapping_red_sandstone_tiles.png differ diff --git a/public/textures/chipped/overlapping_redstone_block_tiles.png b/public/textures/chipped/overlapping_redstone_block_tiles.png new file mode 100644 index 00000000..adafe997 Binary files /dev/null and b/public/textures/chipped/overlapping_redstone_block_tiles.png differ diff --git a/public/textures/chipped/overlapping_sandstone_tiles.png b/public/textures/chipped/overlapping_sandstone_tiles.png new file mode 100644 index 00000000..61e02dad Binary files /dev/null and b/public/textures/chipped/overlapping_sandstone_tiles.png differ diff --git a/public/textures/chipped/overlapping_smooth_stone_tiles.png b/public/textures/chipped/overlapping_smooth_stone_tiles.png new file mode 100644 index 00000000..5c0cd15b Binary files /dev/null and b/public/textures/chipped/overlapping_smooth_stone_tiles.png differ diff --git a/public/textures/chipped/overlapping_snow_block_tiles.png b/public/textures/chipped/overlapping_snow_block_tiles.png new file mode 100644 index 00000000..baf3ed27 Binary files /dev/null and b/public/textures/chipped/overlapping_snow_block_tiles.png differ diff --git a/public/textures/chipped/overlapping_stone_tiles.png b/public/textures/chipped/overlapping_stone_tiles.png new file mode 100644 index 00000000..38fca2c1 Binary files /dev/null and b/public/textures/chipped/overlapping_stone_tiles.png differ diff --git a/public/textures/chipped/overlapping_tuff_tiles.png b/public/textures/chipped/overlapping_tuff_tiles.png new file mode 100644 index 00000000..c92b93a7 Binary files /dev/null and b/public/textures/chipped/overlapping_tuff_tiles.png differ diff --git a/public/textures/chipped/owo_carved_pumpkin.png b/public/textures/chipped/owo_carved_pumpkin.png new file mode 100644 index 00000000..6325b519 Binary files /dev/null and b/public/textures/chipped/owo_carved_pumpkin.png differ diff --git a/public/textures/chipped/owo_jack_o_lantern.png b/public/textures/chipped/owo_jack_o_lantern.png new file mode 100644 index 00000000..158aa626 Binary files /dev/null and b/public/textures/chipped/owo_jack_o_lantern.png differ diff --git a/public/textures/chipped/packed_ice_bricks.png b/public/textures/chipped/packed_ice_bricks.png new file mode 100644 index 00000000..52d80415 Binary files /dev/null and b/public/textures/chipped/packed_ice_bricks.png differ diff --git a/public/textures/chipped/packed_ice_mini_tiles.png b/public/textures/chipped/packed_ice_mini_tiles.png new file mode 100644 index 00000000..5f9422df Binary files /dev/null and b/public/textures/chipped/packed_ice_mini_tiles.png differ diff --git a/public/textures/chipped/packed_ice_pillar.png b/public/textures/chipped/packed_ice_pillar.png new file mode 100644 index 00000000..57e37a76 Binary files /dev/null and b/public/textures/chipped/packed_ice_pillar.png differ diff --git a/public/textures/chipped/packed_ice_pillar_top.png b/public/textures/chipped/packed_ice_pillar_top.png new file mode 100644 index 00000000..da95828c Binary files /dev/null and b/public/textures/chipped/packed_ice_pillar_top.png differ diff --git a/public/textures/chipped/packed_ice_pointed_dripstone.png b/public/textures/chipped/packed_ice_pointed_dripstone.png new file mode 100644 index 00000000..2ef1b4d8 Binary files /dev/null and b/public/textures/chipped/packed_ice_pointed_dripstone.png differ diff --git a/public/textures/chipped/packed_ice_scales.png b/public/textures/chipped/packed_ice_scales.png new file mode 100644 index 00000000..0d4cccce Binary files /dev/null and b/public/textures/chipped/packed_ice_scales.png differ diff --git a/public/textures/chipped/packed_mud_bricks.png b/public/textures/chipped/packed_mud_bricks.png new file mode 100644 index 00000000..c5ac214b Binary files /dev/null and b/public/textures/chipped/packed_mud_bricks.png differ diff --git a/public/textures/chipped/packed_mud_pillar.png b/public/textures/chipped/packed_mud_pillar.png new file mode 100644 index 00000000..b257bb03 Binary files /dev/null and b/public/textures/chipped/packed_mud_pillar.png differ diff --git a/public/textures/chipped/packed_mud_pillar_top.png b/public/textures/chipped/packed_mud_pillar_top.png new file mode 100644 index 00000000..11dfd6c7 Binary files /dev/null and b/public/textures/chipped/packed_mud_pillar_top.png differ diff --git a/public/textures/chipped/packed_mud_scales.png b/public/textures/chipped/packed_mud_scales.png new file mode 100644 index 00000000..5bedbd64 Binary files /dev/null and b/public/textures/chipped/packed_mud_scales.png differ diff --git a/public/textures/chipped/pacman_lily_pad.png b/public/textures/chipped/pacman_lily_pad.png new file mode 100644 index 00000000..824bde83 Binary files /dev/null and b/public/textures/chipped/pacman_lily_pad.png differ diff --git a/public/textures/chipped/paddle_lily_pad.png b/public/textures/chipped/paddle_lily_pad.png new file mode 100644 index 00000000..f0b1a493 Binary files /dev/null and b/public/textures/chipped/paddle_lily_pad.png differ diff --git a/public/textures/chipped/pale_hay_block.png b/public/textures/chipped/pale_hay_block.png new file mode 100644 index 00000000..dc01e21a Binary files /dev/null and b/public/textures/chipped/pale_hay_block.png differ diff --git a/public/textures/chipped/pancake_mud.png b/public/textures/chipped/pancake_mud.png new file mode 100644 index 00000000..5108b8c4 Binary files /dev/null and b/public/textures/chipped/pancake_mud.png differ diff --git a/public/textures/chipped/pancake_mud_bricks.png b/public/textures/chipped/pancake_mud_bricks.png new file mode 100644 index 00000000..09be3b5c Binary files /dev/null and b/public/textures/chipped/pancake_mud_bricks.png differ diff --git a/public/textures/chipped/pancake_packed_mud.png b/public/textures/chipped/pancake_packed_mud.png new file mode 100644 index 00000000..6aa4b9aa Binary files /dev/null and b/public/textures/chipped/pancake_packed_mud.png differ diff --git a/public/textures/chipped/paneled_acacia_door.png b/public/textures/chipped/paneled_acacia_door.png new file mode 100644 index 00000000..3d296eb7 Binary files /dev/null and b/public/textures/chipped/paneled_acacia_door.png differ diff --git a/public/textures/chipped/paneled_bamboo_door.png b/public/textures/chipped/paneled_bamboo_door.png new file mode 100644 index 00000000..aacb2760 Binary files /dev/null and b/public/textures/chipped/paneled_bamboo_door.png differ diff --git a/public/textures/chipped/paneled_birch_door.png b/public/textures/chipped/paneled_birch_door.png new file mode 100644 index 00000000..7c6b87b9 Binary files /dev/null and b/public/textures/chipped/paneled_birch_door.png differ diff --git a/public/textures/chipped/paneled_cherry_door.png b/public/textures/chipped/paneled_cherry_door.png new file mode 100644 index 00000000..24e26376 Binary files /dev/null and b/public/textures/chipped/paneled_cherry_door.png differ diff --git a/public/textures/chipped/paneled_crimson_door.png b/public/textures/chipped/paneled_crimson_door.png new file mode 100644 index 00000000..0dd85b8e Binary files /dev/null and b/public/textures/chipped/paneled_crimson_door.png differ diff --git a/public/textures/chipped/paneled_jungle_door.png b/public/textures/chipped/paneled_jungle_door.png new file mode 100644 index 00000000..3179febe Binary files /dev/null and b/public/textures/chipped/paneled_jungle_door.png differ diff --git a/public/textures/chipped/paneled_mangrove_door.png b/public/textures/chipped/paneled_mangrove_door.png new file mode 100644 index 00000000..c0a335ef Binary files /dev/null and b/public/textures/chipped/paneled_mangrove_door.png differ diff --git a/public/textures/chipped/paneled_oak_door.png b/public/textures/chipped/paneled_oak_door.png new file mode 100644 index 00000000..b2734b8d Binary files /dev/null and b/public/textures/chipped/paneled_oak_door.png differ diff --git a/public/textures/chipped/paneled_spruce_door.png b/public/textures/chipped/paneled_spruce_door.png new file mode 100644 index 00000000..23471a99 Binary files /dev/null and b/public/textures/chipped/paneled_spruce_door.png differ diff --git a/public/textures/chipped/paneled_warped_door.png b/public/textures/chipped/paneled_warped_door.png new file mode 100644 index 00000000..2c7d05e1 Binary files /dev/null and b/public/textures/chipped/paneled_warped_door.png differ diff --git a/public/textures/chipped/panelled_mud.png b/public/textures/chipped/panelled_mud.png new file mode 100644 index 00000000..00040700 Binary files /dev/null and b/public/textures/chipped/panelled_mud.png differ diff --git a/public/textures/chipped/panelled_mud_bricks.png b/public/textures/chipped/panelled_mud_bricks.png new file mode 100644 index 00000000..f4968c05 Binary files /dev/null and b/public/textures/chipped/panelled_mud_bricks.png differ diff --git a/public/textures/chipped/panelled_packed_mud.png b/public/textures/chipped/panelled_packed_mud.png new file mode 100644 index 00000000..a3253383 Binary files /dev/null and b/public/textures/chipped/panelled_packed_mud.png differ diff --git a/public/textures/chipped/paper_acacia_door.png b/public/textures/chipped/paper_acacia_door.png new file mode 100644 index 00000000..443654b9 Binary files /dev/null and b/public/textures/chipped/paper_acacia_door.png differ diff --git a/public/textures/chipped/paper_bamboo_door.png b/public/textures/chipped/paper_bamboo_door.png new file mode 100644 index 00000000..6f756482 Binary files /dev/null and b/public/textures/chipped/paper_bamboo_door.png differ diff --git a/public/textures/chipped/paper_cherry_door.png b/public/textures/chipped/paper_cherry_door.png new file mode 100644 index 00000000..f1251eef Binary files /dev/null and b/public/textures/chipped/paper_cherry_door.png differ diff --git a/public/textures/chipped/paper_crimson_door.png b/public/textures/chipped/paper_crimson_door.png new file mode 100644 index 00000000..5abb7d47 Binary files /dev/null and b/public/textures/chipped/paper_crimson_door.png differ diff --git a/public/textures/chipped/paper_dark_oak_door.png b/public/textures/chipped/paper_dark_oak_door.png new file mode 100644 index 00000000..9f9e63fc Binary files /dev/null and b/public/textures/chipped/paper_dark_oak_door.png differ diff --git a/public/textures/chipped/paper_jungle_door.png b/public/textures/chipped/paper_jungle_door.png new file mode 100644 index 00000000..8034b605 Binary files /dev/null and b/public/textures/chipped/paper_jungle_door.png differ diff --git a/public/textures/chipped/paper_mangrove_door.png b/public/textures/chipped/paper_mangrove_door.png new file mode 100644 index 00000000..65df1ba3 Binary files /dev/null and b/public/textures/chipped/paper_mangrove_door.png differ diff --git a/public/textures/chipped/paper_oak_door.png b/public/textures/chipped/paper_oak_door.png new file mode 100644 index 00000000..c1d06cc7 Binary files /dev/null and b/public/textures/chipped/paper_oak_door.png differ diff --git a/public/textures/chipped/paper_spruce_door.png b/public/textures/chipped/paper_spruce_door.png new file mode 100644 index 00000000..cdebf401 Binary files /dev/null and b/public/textures/chipped/paper_spruce_door.png differ diff --git a/public/textures/chipped/paper_warped_door.png b/public/textures/chipped/paper_warped_door.png new file mode 100644 index 00000000..a19b4473 Binary files /dev/null and b/public/textures/chipped/paper_warped_door.png differ diff --git a/public/textures/chipped/patched_black_carpet.png b/public/textures/chipped/patched_black_carpet.png new file mode 100644 index 00000000..672166af Binary files /dev/null and b/public/textures/chipped/patched_black_carpet.png differ diff --git a/public/textures/chipped/patched_black_wool.png b/public/textures/chipped/patched_black_wool.png new file mode 100644 index 00000000..6f5b62a4 Binary files /dev/null and b/public/textures/chipped/patched_black_wool.png differ diff --git a/public/textures/chipped/patched_blue_carpet.png b/public/textures/chipped/patched_blue_carpet.png new file mode 100644 index 00000000..e42398af Binary files /dev/null and b/public/textures/chipped/patched_blue_carpet.png differ diff --git a/public/textures/chipped/patched_blue_wool.png b/public/textures/chipped/patched_blue_wool.png new file mode 100644 index 00000000..1231ac3c Binary files /dev/null and b/public/textures/chipped/patched_blue_wool.png differ diff --git a/public/textures/chipped/patched_brown_carpet.png b/public/textures/chipped/patched_brown_carpet.png new file mode 100644 index 00000000..4be22b4f Binary files /dev/null and b/public/textures/chipped/patched_brown_carpet.png differ diff --git a/public/textures/chipped/patched_brown_wool.png b/public/textures/chipped/patched_brown_wool.png new file mode 100644 index 00000000..eb8fc4c3 Binary files /dev/null and b/public/textures/chipped/patched_brown_wool.png differ diff --git a/public/textures/chipped/patched_cyan_carpet.png b/public/textures/chipped/patched_cyan_carpet.png new file mode 100644 index 00000000..9e522714 Binary files /dev/null and b/public/textures/chipped/patched_cyan_carpet.png differ diff --git a/public/textures/chipped/patched_cyan_wool.png b/public/textures/chipped/patched_cyan_wool.png new file mode 100644 index 00000000..7299af27 Binary files /dev/null and b/public/textures/chipped/patched_cyan_wool.png differ diff --git a/public/textures/chipped/patched_gray_carpet.png b/public/textures/chipped/patched_gray_carpet.png new file mode 100644 index 00000000..65afc910 Binary files /dev/null and b/public/textures/chipped/patched_gray_carpet.png differ diff --git a/public/textures/chipped/patched_gray_wool.png b/public/textures/chipped/patched_gray_wool.png new file mode 100644 index 00000000..3aa40008 Binary files /dev/null and b/public/textures/chipped/patched_gray_wool.png differ diff --git a/public/textures/chipped/patched_green_carpet.png b/public/textures/chipped/patched_green_carpet.png new file mode 100644 index 00000000..01202515 Binary files /dev/null and b/public/textures/chipped/patched_green_carpet.png differ diff --git a/public/textures/chipped/patched_green_wool.png b/public/textures/chipped/patched_green_wool.png new file mode 100644 index 00000000..eb3c6a5b Binary files /dev/null and b/public/textures/chipped/patched_green_wool.png differ diff --git a/public/textures/chipped/patched_light_blue_carpet.png b/public/textures/chipped/patched_light_blue_carpet.png new file mode 100644 index 00000000..8177d215 Binary files /dev/null and b/public/textures/chipped/patched_light_blue_carpet.png differ diff --git a/public/textures/chipped/patched_light_blue_wool.png b/public/textures/chipped/patched_light_blue_wool.png new file mode 100644 index 00000000..7bc334ba Binary files /dev/null and b/public/textures/chipped/patched_light_blue_wool.png differ diff --git a/public/textures/chipped/patched_light_gray_carpet.png b/public/textures/chipped/patched_light_gray_carpet.png new file mode 100644 index 00000000..f357ac82 Binary files /dev/null and b/public/textures/chipped/patched_light_gray_carpet.png differ diff --git a/public/textures/chipped/patched_light_gray_wool.png b/public/textures/chipped/patched_light_gray_wool.png new file mode 100644 index 00000000..877c48f6 Binary files /dev/null and b/public/textures/chipped/patched_light_gray_wool.png differ diff --git a/public/textures/chipped/patched_lime_carpet.png b/public/textures/chipped/patched_lime_carpet.png new file mode 100644 index 00000000..0a5e34e3 Binary files /dev/null and b/public/textures/chipped/patched_lime_carpet.png differ diff --git a/public/textures/chipped/patched_lime_wool.png b/public/textures/chipped/patched_lime_wool.png new file mode 100644 index 00000000..1358dde3 Binary files /dev/null and b/public/textures/chipped/patched_lime_wool.png differ diff --git a/public/textures/chipped/patched_magenta_carpet.png b/public/textures/chipped/patched_magenta_carpet.png new file mode 100644 index 00000000..299db766 Binary files /dev/null and b/public/textures/chipped/patched_magenta_carpet.png differ diff --git a/public/textures/chipped/patched_magenta_wool.png b/public/textures/chipped/patched_magenta_wool.png new file mode 100644 index 00000000..e840fc61 Binary files /dev/null and b/public/textures/chipped/patched_magenta_wool.png differ diff --git a/public/textures/chipped/patched_nether_wart_block.png b/public/textures/chipped/patched_nether_wart_block.png new file mode 100644 index 00000000..89d88c3e Binary files /dev/null and b/public/textures/chipped/patched_nether_wart_block.png differ diff --git a/public/textures/chipped/patched_orange_carpet.png b/public/textures/chipped/patched_orange_carpet.png new file mode 100644 index 00000000..d6d17627 Binary files /dev/null and b/public/textures/chipped/patched_orange_carpet.png differ diff --git a/public/textures/chipped/patched_orange_wool.png b/public/textures/chipped/patched_orange_wool.png new file mode 100644 index 00000000..b45f23f0 Binary files /dev/null and b/public/textures/chipped/patched_orange_wool.png differ diff --git a/public/textures/chipped/patched_pink_carpet.png b/public/textures/chipped/patched_pink_carpet.png new file mode 100644 index 00000000..5398a3bf Binary files /dev/null and b/public/textures/chipped/patched_pink_carpet.png differ diff --git a/public/textures/chipped/patched_pink_wool.png b/public/textures/chipped/patched_pink_wool.png new file mode 100644 index 00000000..69aa11cd Binary files /dev/null and b/public/textures/chipped/patched_pink_wool.png differ diff --git a/public/textures/chipped/patched_purple_carpet.png b/public/textures/chipped/patched_purple_carpet.png new file mode 100644 index 00000000..fd5e373b Binary files /dev/null and b/public/textures/chipped/patched_purple_carpet.png differ diff --git a/public/textures/chipped/patched_purple_wool.png b/public/textures/chipped/patched_purple_wool.png new file mode 100644 index 00000000..bceb3e10 Binary files /dev/null and b/public/textures/chipped/patched_purple_wool.png differ diff --git a/public/textures/chipped/patched_red_carpet.png b/public/textures/chipped/patched_red_carpet.png new file mode 100644 index 00000000..9f946396 Binary files /dev/null and b/public/textures/chipped/patched_red_carpet.png differ diff --git a/public/textures/chipped/patched_red_wool.png b/public/textures/chipped/patched_red_wool.png new file mode 100644 index 00000000..d6c74364 Binary files /dev/null and b/public/textures/chipped/patched_red_wool.png differ diff --git a/public/textures/chipped/patched_warped_wart_block.png b/public/textures/chipped/patched_warped_wart_block.png new file mode 100644 index 00000000..f4605964 Binary files /dev/null and b/public/textures/chipped/patched_warped_wart_block.png differ diff --git a/public/textures/chipped/patched_white_carpet.png b/public/textures/chipped/patched_white_carpet.png new file mode 100644 index 00000000..227b9fff Binary files /dev/null and b/public/textures/chipped/patched_white_carpet.png differ diff --git a/public/textures/chipped/patched_white_wool.png b/public/textures/chipped/patched_white_wool.png new file mode 100644 index 00000000..335ea7ee Binary files /dev/null and b/public/textures/chipped/patched_white_wool.png differ diff --git a/public/textures/chipped/patched_yellow_carpet.png b/public/textures/chipped/patched_yellow_carpet.png new file mode 100644 index 00000000..5bccc84a Binary files /dev/null and b/public/textures/chipped/patched_yellow_carpet.png differ diff --git a/public/textures/chipped/patched_yellow_wool.png b/public/textures/chipped/patched_yellow_wool.png new file mode 100644 index 00000000..e8c8fd34 Binary files /dev/null and b/public/textures/chipped/patched_yellow_wool.png differ diff --git a/public/textures/chipped/patient_stripped_acacia_log.png b/public/textures/chipped/patient_stripped_acacia_log.png new file mode 100644 index 00000000..07b1c14b Binary files /dev/null and b/public/textures/chipped/patient_stripped_acacia_log.png differ diff --git a/public/textures/chipped/patient_stripped_birch_log.png b/public/textures/chipped/patient_stripped_birch_log.png new file mode 100644 index 00000000..9cd323c9 Binary files /dev/null and b/public/textures/chipped/patient_stripped_birch_log.png differ diff --git a/public/textures/chipped/patient_stripped_cherry_log.png b/public/textures/chipped/patient_stripped_cherry_log.png new file mode 100644 index 00000000..8908ed46 Binary files /dev/null and b/public/textures/chipped/patient_stripped_cherry_log.png differ diff --git a/public/textures/chipped/patient_stripped_crimson_stem.png b/public/textures/chipped/patient_stripped_crimson_stem.png new file mode 100644 index 00000000..d8267939 Binary files /dev/null and b/public/textures/chipped/patient_stripped_crimson_stem.png differ diff --git a/public/textures/chipped/patient_stripped_dark_oak_log.png b/public/textures/chipped/patient_stripped_dark_oak_log.png new file mode 100644 index 00000000..c65b1e27 Binary files /dev/null and b/public/textures/chipped/patient_stripped_dark_oak_log.png differ diff --git a/public/textures/chipped/patient_stripped_jungle_log.png b/public/textures/chipped/patient_stripped_jungle_log.png new file mode 100644 index 00000000..0d72e4f7 Binary files /dev/null and b/public/textures/chipped/patient_stripped_jungle_log.png differ diff --git a/public/textures/chipped/patient_stripped_mangrove_log.png b/public/textures/chipped/patient_stripped_mangrove_log.png new file mode 100644 index 00000000..7fa8a173 Binary files /dev/null and b/public/textures/chipped/patient_stripped_mangrove_log.png differ diff --git a/public/textures/chipped/patient_stripped_oak_log.png b/public/textures/chipped/patient_stripped_oak_log.png new file mode 100644 index 00000000..e21b74d5 Binary files /dev/null and b/public/textures/chipped/patient_stripped_oak_log.png differ diff --git a/public/textures/chipped/patient_stripped_spruce_log.png b/public/textures/chipped/patient_stripped_spruce_log.png new file mode 100644 index 00000000..44d6a813 Binary files /dev/null and b/public/textures/chipped/patient_stripped_spruce_log.png differ diff --git a/public/textures/chipped/patient_stripped_warped_stem.png b/public/textures/chipped/patient_stripped_warped_stem.png new file mode 100644 index 00000000..81b2f5dc Binary files /dev/null and b/public/textures/chipped/patient_stripped_warped_stem.png differ diff --git a/public/textures/chipped/patterned_glowstone.png b/public/textures/chipped/patterned_glowstone.png new file mode 100644 index 00000000..773261a5 Binary files /dev/null and b/public/textures/chipped/patterned_glowstone.png differ diff --git a/public/textures/chipped/paved_black_glazed_terracotta.png b/public/textures/chipped/paved_black_glazed_terracotta.png new file mode 100644 index 00000000..db961802 Binary files /dev/null and b/public/textures/chipped/paved_black_glazed_terracotta.png differ diff --git a/public/textures/chipped/paved_blue_glazed_terracotta.png b/public/textures/chipped/paved_blue_glazed_terracotta.png new file mode 100644 index 00000000..b9b2befb Binary files /dev/null and b/public/textures/chipped/paved_blue_glazed_terracotta.png differ diff --git a/public/textures/chipped/paved_brown_glazed_terracotta.png b/public/textures/chipped/paved_brown_glazed_terracotta.png new file mode 100644 index 00000000..8704e71f Binary files /dev/null and b/public/textures/chipped/paved_brown_glazed_terracotta.png differ diff --git a/public/textures/chipped/paved_cyan_glazed_terracotta.png b/public/textures/chipped/paved_cyan_glazed_terracotta.png new file mode 100644 index 00000000..6fdbbc71 Binary files /dev/null and b/public/textures/chipped/paved_cyan_glazed_terracotta.png differ diff --git a/public/textures/chipped/paved_gray_glazed_terracotta.png b/public/textures/chipped/paved_gray_glazed_terracotta.png new file mode 100644 index 00000000..bb0a6707 Binary files /dev/null and b/public/textures/chipped/paved_gray_glazed_terracotta.png differ diff --git a/public/textures/chipped/paved_green_glazed_terracotta.png b/public/textures/chipped/paved_green_glazed_terracotta.png new file mode 100644 index 00000000..18de3f3d Binary files /dev/null and b/public/textures/chipped/paved_green_glazed_terracotta.png differ diff --git a/public/textures/chipped/paved_light_blue_glazed_terracotta.png b/public/textures/chipped/paved_light_blue_glazed_terracotta.png new file mode 100644 index 00000000..301df3d7 Binary files /dev/null and b/public/textures/chipped/paved_light_blue_glazed_terracotta.png differ diff --git a/public/textures/chipped/paved_light_gray_glazed_terracotta.png b/public/textures/chipped/paved_light_gray_glazed_terracotta.png new file mode 100644 index 00000000..611596f2 Binary files /dev/null and b/public/textures/chipped/paved_light_gray_glazed_terracotta.png differ diff --git a/public/textures/chipped/paved_lime_glazed_terracotta.png b/public/textures/chipped/paved_lime_glazed_terracotta.png new file mode 100644 index 00000000..bb244652 Binary files /dev/null and b/public/textures/chipped/paved_lime_glazed_terracotta.png differ diff --git a/public/textures/chipped/paved_magenta_glazed_terracotta.png b/public/textures/chipped/paved_magenta_glazed_terracotta.png new file mode 100644 index 00000000..0deb5ddc Binary files /dev/null and b/public/textures/chipped/paved_magenta_glazed_terracotta.png differ diff --git a/public/textures/chipped/paved_orange_glazed_terracotta.png b/public/textures/chipped/paved_orange_glazed_terracotta.png new file mode 100644 index 00000000..df7f494e Binary files /dev/null and b/public/textures/chipped/paved_orange_glazed_terracotta.png differ diff --git a/public/textures/chipped/paved_pink_glazed_terracotta.png b/public/textures/chipped/paved_pink_glazed_terracotta.png new file mode 100644 index 00000000..8cfceb29 Binary files /dev/null and b/public/textures/chipped/paved_pink_glazed_terracotta.png differ diff --git a/public/textures/chipped/paved_purple_glazed_terracotta.png b/public/textures/chipped/paved_purple_glazed_terracotta.png new file mode 100644 index 00000000..91a373dc Binary files /dev/null and b/public/textures/chipped/paved_purple_glazed_terracotta.png differ diff --git a/public/textures/chipped/paved_red_glazed_terracotta.png b/public/textures/chipped/paved_red_glazed_terracotta.png new file mode 100644 index 00000000..6ec6eea1 Binary files /dev/null and b/public/textures/chipped/paved_red_glazed_terracotta.png differ diff --git a/public/textures/chipped/paved_white_glazed_terracotta.png b/public/textures/chipped/paved_white_glazed_terracotta.png new file mode 100644 index 00000000..870f8b40 Binary files /dev/null and b/public/textures/chipped/paved_white_glazed_terracotta.png differ diff --git a/public/textures/chipped/paved_yellow_glazed_terracotta.png b/public/textures/chipped/paved_yellow_glazed_terracotta.png new file mode 100644 index 00000000..97a0c489 Binary files /dev/null and b/public/textures/chipped/paved_yellow_glazed_terracotta.png differ diff --git a/public/textures/chipped/pearl_sand.png b/public/textures/chipped/pearl_sand.png new file mode 100644 index 00000000..3bd17ab1 Binary files /dev/null and b/public/textures/chipped/pearl_sand.png differ diff --git a/public/textures/chipped/pegged_acacia_planks.png b/public/textures/chipped/pegged_acacia_planks.png new file mode 100644 index 00000000..b84eb83b Binary files /dev/null and b/public/textures/chipped/pegged_acacia_planks.png differ diff --git a/public/textures/chipped/pegged_birch_planks.png b/public/textures/chipped/pegged_birch_planks.png new file mode 100644 index 00000000..8bc81d26 Binary files /dev/null and b/public/textures/chipped/pegged_birch_planks.png differ diff --git a/public/textures/chipped/pegged_black_concrete.png b/public/textures/chipped/pegged_black_concrete.png new file mode 100644 index 00000000..ac6d05dd Binary files /dev/null and b/public/textures/chipped/pegged_black_concrete.png differ diff --git a/public/textures/chipped/pegged_blue_concrete.png b/public/textures/chipped/pegged_blue_concrete.png new file mode 100644 index 00000000..f93eee36 Binary files /dev/null and b/public/textures/chipped/pegged_blue_concrete.png differ diff --git a/public/textures/chipped/pegged_brown_concrete.png b/public/textures/chipped/pegged_brown_concrete.png new file mode 100644 index 00000000..c2bff2a1 Binary files /dev/null and b/public/textures/chipped/pegged_brown_concrete.png differ diff --git a/public/textures/chipped/pegged_cherry_planks.png b/public/textures/chipped/pegged_cherry_planks.png new file mode 100644 index 00000000..b440e2e5 Binary files /dev/null and b/public/textures/chipped/pegged_cherry_planks.png differ diff --git a/public/textures/chipped/pegged_crimson_planks.png b/public/textures/chipped/pegged_crimson_planks.png new file mode 100644 index 00000000..d919b119 Binary files /dev/null and b/public/textures/chipped/pegged_crimson_planks.png differ diff --git a/public/textures/chipped/pegged_cyan_concrete.png b/public/textures/chipped/pegged_cyan_concrete.png new file mode 100644 index 00000000..a79d3f70 Binary files /dev/null and b/public/textures/chipped/pegged_cyan_concrete.png differ diff --git a/public/textures/chipped/pegged_dark_oak_planks.png b/public/textures/chipped/pegged_dark_oak_planks.png new file mode 100644 index 00000000..961bb7c5 Binary files /dev/null and b/public/textures/chipped/pegged_dark_oak_planks.png differ diff --git a/public/textures/chipped/pegged_gray_concrete.png b/public/textures/chipped/pegged_gray_concrete.png new file mode 100644 index 00000000..be468400 Binary files /dev/null and b/public/textures/chipped/pegged_gray_concrete.png differ diff --git a/public/textures/chipped/pegged_green_concrete.png b/public/textures/chipped/pegged_green_concrete.png new file mode 100644 index 00000000..c406d048 Binary files /dev/null and b/public/textures/chipped/pegged_green_concrete.png differ diff --git a/public/textures/chipped/pegged_jungle_planks.png b/public/textures/chipped/pegged_jungle_planks.png new file mode 100644 index 00000000..4b2c4d22 Binary files /dev/null and b/public/textures/chipped/pegged_jungle_planks.png differ diff --git a/public/textures/chipped/pegged_light_blue_concrete.png b/public/textures/chipped/pegged_light_blue_concrete.png new file mode 100644 index 00000000..ead630f1 Binary files /dev/null and b/public/textures/chipped/pegged_light_blue_concrete.png differ diff --git a/public/textures/chipped/pegged_light_gray_concrete.png b/public/textures/chipped/pegged_light_gray_concrete.png new file mode 100644 index 00000000..cd33dc8e Binary files /dev/null and b/public/textures/chipped/pegged_light_gray_concrete.png differ diff --git a/public/textures/chipped/pegged_lime_concrete.png b/public/textures/chipped/pegged_lime_concrete.png new file mode 100644 index 00000000..2ac1fdcd Binary files /dev/null and b/public/textures/chipped/pegged_lime_concrete.png differ diff --git a/public/textures/chipped/pegged_magenta_concrete.png b/public/textures/chipped/pegged_magenta_concrete.png new file mode 100644 index 00000000..786a2461 Binary files /dev/null and b/public/textures/chipped/pegged_magenta_concrete.png differ diff --git a/public/textures/chipped/pegged_mangrove_planks.png b/public/textures/chipped/pegged_mangrove_planks.png new file mode 100644 index 00000000..12585aff Binary files /dev/null and b/public/textures/chipped/pegged_mangrove_planks.png differ diff --git a/public/textures/chipped/pegged_oak_planks.png b/public/textures/chipped/pegged_oak_planks.png new file mode 100644 index 00000000..96ff5753 Binary files /dev/null and b/public/textures/chipped/pegged_oak_planks.png differ diff --git a/public/textures/chipped/pegged_orange_concrete.png b/public/textures/chipped/pegged_orange_concrete.png new file mode 100644 index 00000000..6336dee4 Binary files /dev/null and b/public/textures/chipped/pegged_orange_concrete.png differ diff --git a/public/textures/chipped/pegged_pink_concrete.png b/public/textures/chipped/pegged_pink_concrete.png new file mode 100644 index 00000000..f77a023c Binary files /dev/null and b/public/textures/chipped/pegged_pink_concrete.png differ diff --git a/public/textures/chipped/pegged_purple_concrete.png b/public/textures/chipped/pegged_purple_concrete.png new file mode 100644 index 00000000..73cfa1b9 Binary files /dev/null and b/public/textures/chipped/pegged_purple_concrete.png differ diff --git a/public/textures/chipped/pegged_red_concrete.png b/public/textures/chipped/pegged_red_concrete.png new file mode 100644 index 00000000..0a71f63f Binary files /dev/null and b/public/textures/chipped/pegged_red_concrete.png differ diff --git a/public/textures/chipped/pegged_spruce_planks.png b/public/textures/chipped/pegged_spruce_planks.png new file mode 100644 index 00000000..8831c6ba Binary files /dev/null and b/public/textures/chipped/pegged_spruce_planks.png differ diff --git a/public/textures/chipped/pegged_warped_planks.png b/public/textures/chipped/pegged_warped_planks.png new file mode 100644 index 00000000..9cb16792 Binary files /dev/null and b/public/textures/chipped/pegged_warped_planks.png differ diff --git a/public/textures/chipped/pegged_white_concrete.png b/public/textures/chipped/pegged_white_concrete.png new file mode 100644 index 00000000..9ce43e6d Binary files /dev/null and b/public/textures/chipped/pegged_white_concrete.png differ diff --git a/public/textures/chipped/pegged_yellow_concrete.png b/public/textures/chipped/pegged_yellow_concrete.png new file mode 100644 index 00000000..47edc9a2 Binary files /dev/null and b/public/textures/chipped/pegged_yellow_concrete.png differ diff --git a/public/textures/chipped/piked_iron_bars.png b/public/textures/chipped/piked_iron_bars.png new file mode 100644 index 00000000..49be6b93 Binary files /dev/null and b/public/textures/chipped/piked_iron_bars.png differ diff --git a/public/textures/chipped/pillar_amethyst_block_bricks.png b/public/textures/chipped/pillar_amethyst_block_bricks.png new file mode 100644 index 00000000..8a7abc84 Binary files /dev/null and b/public/textures/chipped/pillar_amethyst_block_bricks.png differ diff --git a/public/textures/chipped/pillar_ancient_debris_bricks.png b/public/textures/chipped/pillar_ancient_debris_bricks.png new file mode 100644 index 00000000..5b4fe774 Binary files /dev/null and b/public/textures/chipped/pillar_ancient_debris_bricks.png differ diff --git a/public/textures/chipped/pillar_andesite_bricks.png b/public/textures/chipped/pillar_andesite_bricks.png new file mode 100644 index 00000000..3a882ccb Binary files /dev/null and b/public/textures/chipped/pillar_andesite_bricks.png differ diff --git a/public/textures/chipped/pillar_basalt_bricks.png b/public/textures/chipped/pillar_basalt_bricks.png new file mode 100644 index 00000000..cc9343a0 Binary files /dev/null and b/public/textures/chipped/pillar_basalt_bricks.png differ diff --git a/public/textures/chipped/pillar_blackstone_bricks.png b/public/textures/chipped/pillar_blackstone_bricks.png new file mode 100644 index 00000000..8b750397 Binary files /dev/null and b/public/textures/chipped/pillar_blackstone_bricks.png differ diff --git a/public/textures/chipped/pillar_blue_ice_bricks.png b/public/textures/chipped/pillar_blue_ice_bricks.png new file mode 100644 index 00000000..07c5e43a Binary files /dev/null and b/public/textures/chipped/pillar_blue_ice_bricks.png differ diff --git a/public/textures/chipped/pillar_borderless_bricks_bricks.png b/public/textures/chipped/pillar_borderless_bricks_bricks.png new file mode 100644 index 00000000..06fbb0f0 Binary files /dev/null and b/public/textures/chipped/pillar_borderless_bricks_bricks.png differ diff --git a/public/textures/chipped/pillar_bricks_bricks.png b/public/textures/chipped/pillar_bricks_bricks.png new file mode 100644 index 00000000..e1d94d44 Binary files /dev/null and b/public/textures/chipped/pillar_bricks_bricks.png differ diff --git a/public/textures/chipped/pillar_calcite_bricks.png b/public/textures/chipped/pillar_calcite_bricks.png new file mode 100644 index 00000000..0e775476 Binary files /dev/null and b/public/textures/chipped/pillar_calcite_bricks.png differ diff --git a/public/textures/chipped/pillar_clay_bricks.png b/public/textures/chipped/pillar_clay_bricks.png new file mode 100644 index 00000000..e50a052d Binary files /dev/null and b/public/textures/chipped/pillar_clay_bricks.png differ diff --git a/public/textures/chipped/pillar_coal_block_bricks.png b/public/textures/chipped/pillar_coal_block_bricks.png new file mode 100644 index 00000000..fc83a5bd Binary files /dev/null and b/public/textures/chipped/pillar_coal_block_bricks.png differ diff --git a/public/textures/chipped/pillar_cobblestone_bricks.png b/public/textures/chipped/pillar_cobblestone_bricks.png new file mode 100644 index 00000000..31c81f54 Binary files /dev/null and b/public/textures/chipped/pillar_cobblestone_bricks.png differ diff --git a/public/textures/chipped/pillar_crying_obsidian_bricks.png b/public/textures/chipped/pillar_crying_obsidian_bricks.png new file mode 100644 index 00000000..1048ea38 Binary files /dev/null and b/public/textures/chipped/pillar_crying_obsidian_bricks.png differ diff --git a/public/textures/chipped/pillar_dark_prismarine_bricks.png b/public/textures/chipped/pillar_dark_prismarine_bricks.png new file mode 100644 index 00000000..7729459a Binary files /dev/null and b/public/textures/chipped/pillar_dark_prismarine_bricks.png differ diff --git a/public/textures/chipped/pillar_deepslate_bricks.png b/public/textures/chipped/pillar_deepslate_bricks.png new file mode 100644 index 00000000..c19c02cd Binary files /dev/null and b/public/textures/chipped/pillar_deepslate_bricks.png differ diff --git a/public/textures/chipped/pillar_diorite_bricks.png b/public/textures/chipped/pillar_diorite_bricks.png new file mode 100644 index 00000000..293b700d Binary files /dev/null and b/public/textures/chipped/pillar_diorite_bricks.png differ diff --git a/public/textures/chipped/pillar_dirt_bricks.png b/public/textures/chipped/pillar_dirt_bricks.png new file mode 100644 index 00000000..7f11106d Binary files /dev/null and b/public/textures/chipped/pillar_dirt_bricks.png differ diff --git a/public/textures/chipped/pillar_dripstone_block_bricks.png b/public/textures/chipped/pillar_dripstone_block_bricks.png new file mode 100644 index 00000000..b23dc5b7 Binary files /dev/null and b/public/textures/chipped/pillar_dripstone_block_bricks.png differ diff --git a/public/textures/chipped/pillar_end_stone_bricks.png b/public/textures/chipped/pillar_end_stone_bricks.png new file mode 100644 index 00000000..e7459ac9 Binary files /dev/null and b/public/textures/chipped/pillar_end_stone_bricks.png differ diff --git a/public/textures/chipped/pillar_gilded_blackstone_bricks.png b/public/textures/chipped/pillar_gilded_blackstone_bricks.png new file mode 100644 index 00000000..6474b55e Binary files /dev/null and b/public/textures/chipped/pillar_gilded_blackstone_bricks.png differ diff --git a/public/textures/chipped/pillar_granite_bricks.png b/public/textures/chipped/pillar_granite_bricks.png new file mode 100644 index 00000000..6a65347d Binary files /dev/null and b/public/textures/chipped/pillar_granite_bricks.png differ diff --git a/public/textures/chipped/pillar_ice_bricks.png b/public/textures/chipped/pillar_ice_bricks.png new file mode 100644 index 00000000..27431011 Binary files /dev/null and b/public/textures/chipped/pillar_ice_bricks.png differ diff --git a/public/textures/chipped/pillar_lapis_block_bricks.png b/public/textures/chipped/pillar_lapis_block_bricks.png new file mode 100644 index 00000000..319fc399 Binary files /dev/null and b/public/textures/chipped/pillar_lapis_block_bricks.png differ diff --git a/public/textures/chipped/pillar_lodestone_bricks.png b/public/textures/chipped/pillar_lodestone_bricks.png new file mode 100644 index 00000000..3347e29e Binary files /dev/null and b/public/textures/chipped/pillar_lodestone_bricks.png differ diff --git a/public/textures/chipped/pillar_magma_block_bricks.png b/public/textures/chipped/pillar_magma_block_bricks.png new file mode 100644 index 00000000..d957ca1c Binary files /dev/null and b/public/textures/chipped/pillar_magma_block_bricks.png differ diff --git a/public/textures/chipped/pillar_mossy_cobblestone_bricks.png b/public/textures/chipped/pillar_mossy_cobblestone_bricks.png new file mode 100644 index 00000000..9ac98453 Binary files /dev/null and b/public/textures/chipped/pillar_mossy_cobblestone_bricks.png differ diff --git a/public/textures/chipped/pillar_mossy_stone_bricks_bricks.png b/public/textures/chipped/pillar_mossy_stone_bricks_bricks.png new file mode 100644 index 00000000..b01fe3a3 Binary files /dev/null and b/public/textures/chipped/pillar_mossy_stone_bricks_bricks.png differ diff --git a/public/textures/chipped/pillar_nether_bricks_bricks.png b/public/textures/chipped/pillar_nether_bricks_bricks.png new file mode 100644 index 00000000..491ab6dd Binary files /dev/null and b/public/textures/chipped/pillar_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/pillar_netherrack_bricks.png b/public/textures/chipped/pillar_netherrack_bricks.png new file mode 100644 index 00000000..83212c0e Binary files /dev/null and b/public/textures/chipped/pillar_netherrack_bricks.png differ diff --git a/public/textures/chipped/pillar_obsidian_bricks.png b/public/textures/chipped/pillar_obsidian_bricks.png new file mode 100644 index 00000000..d31e3137 Binary files /dev/null and b/public/textures/chipped/pillar_obsidian_bricks.png differ diff --git a/public/textures/chipped/pillar_packed_ice_bricks.png b/public/textures/chipped/pillar_packed_ice_bricks.png new file mode 100644 index 00000000..566fadce Binary files /dev/null and b/public/textures/chipped/pillar_packed_ice_bricks.png differ diff --git a/public/textures/chipped/pillar_prismarine_bricks.png b/public/textures/chipped/pillar_prismarine_bricks.png new file mode 100644 index 00000000..1497ee72 Binary files /dev/null and b/public/textures/chipped/pillar_prismarine_bricks.png differ diff --git a/public/textures/chipped/pillar_purpur_block_bricks.png b/public/textures/chipped/pillar_purpur_block_bricks.png new file mode 100644 index 00000000..2240a41e Binary files /dev/null and b/public/textures/chipped/pillar_purpur_block_bricks.png differ diff --git a/public/textures/chipped/pillar_quartz_block_bricks.png b/public/textures/chipped/pillar_quartz_block_bricks.png new file mode 100644 index 00000000..8e43a419 Binary files /dev/null and b/public/textures/chipped/pillar_quartz_block_bricks.png differ diff --git a/public/textures/chipped/pillar_raw_copper_block_bricks.png b/public/textures/chipped/pillar_raw_copper_block_bricks.png new file mode 100644 index 00000000..548839dd Binary files /dev/null and b/public/textures/chipped/pillar_raw_copper_block_bricks.png differ diff --git a/public/textures/chipped/pillar_raw_gold_block_bricks.png b/public/textures/chipped/pillar_raw_gold_block_bricks.png new file mode 100644 index 00000000..5feaa74b Binary files /dev/null and b/public/textures/chipped/pillar_raw_gold_block_bricks.png differ diff --git a/public/textures/chipped/pillar_raw_iron_block_bricks.png b/public/textures/chipped/pillar_raw_iron_block_bricks.png new file mode 100644 index 00000000..18f8c069 Binary files /dev/null and b/public/textures/chipped/pillar_raw_iron_block_bricks.png differ diff --git a/public/textures/chipped/pillar_red_nether_bricks_bricks.png b/public/textures/chipped/pillar_red_nether_bricks_bricks.png new file mode 100644 index 00000000..cd9c6f40 Binary files /dev/null and b/public/textures/chipped/pillar_red_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/pillar_red_sandstone_bricks.png b/public/textures/chipped/pillar_red_sandstone_bricks.png new file mode 100644 index 00000000..6aaad1b5 Binary files /dev/null and b/public/textures/chipped/pillar_red_sandstone_bricks.png differ diff --git a/public/textures/chipped/pillar_redstone_block_bricks.png b/public/textures/chipped/pillar_redstone_block_bricks.png new file mode 100644 index 00000000..f98b68d4 Binary files /dev/null and b/public/textures/chipped/pillar_redstone_block_bricks.png differ diff --git a/public/textures/chipped/pillar_sandstone_bricks.png b/public/textures/chipped/pillar_sandstone_bricks.png new file mode 100644 index 00000000..183a7cc6 Binary files /dev/null and b/public/textures/chipped/pillar_sandstone_bricks.png differ diff --git a/public/textures/chipped/pillar_smooth_stone_bricks.png b/public/textures/chipped/pillar_smooth_stone_bricks.png new file mode 100644 index 00000000..cdc54b8c Binary files /dev/null and b/public/textures/chipped/pillar_smooth_stone_bricks.png differ diff --git a/public/textures/chipped/pillar_snow_block_bricks.png b/public/textures/chipped/pillar_snow_block_bricks.png new file mode 100644 index 00000000..75b06e4c Binary files /dev/null and b/public/textures/chipped/pillar_snow_block_bricks.png differ diff --git a/public/textures/chipped/pillar_stone_bricks.png b/public/textures/chipped/pillar_stone_bricks.png new file mode 100644 index 00000000..40d73829 Binary files /dev/null and b/public/textures/chipped/pillar_stone_bricks.png differ diff --git a/public/textures/chipped/pillar_tuff_bricks.png b/public/textures/chipped/pillar_tuff_bricks.png new file mode 100644 index 00000000..23b61365 Binary files /dev/null and b/public/textures/chipped/pillar_tuff_bricks.png differ diff --git a/public/textures/chipped/pimpkin.png b/public/textures/chipped/pimpkin.png new file mode 100644 index 00000000..bae5d08d Binary files /dev/null and b/public/textures/chipped/pimpkin.png differ diff --git a/public/textures/chipped/pink_concrete_bricks.png b/public/textures/chipped/pink_concrete_bricks.png new file mode 100644 index 00000000..4fffc4e1 Binary files /dev/null and b/public/textures/chipped/pink_concrete_bricks.png differ diff --git a/public/textures/chipped/pink_concrete_panel.png b/public/textures/chipped/pink_concrete_panel.png new file mode 100644 index 00000000..ddc0420b Binary files /dev/null and b/public/textures/chipped/pink_concrete_panel.png differ diff --git a/public/textures/chipped/pink_concrete_pillar.png b/public/textures/chipped/pink_concrete_pillar.png new file mode 100644 index 00000000..7d2e7bc5 Binary files /dev/null and b/public/textures/chipped/pink_concrete_pillar.png differ diff --git a/public/textures/chipped/pink_concrete_tiles.png b/public/textures/chipped/pink_concrete_tiles.png new file mode 100644 index 00000000..80578ee8 Binary files /dev/null and b/public/textures/chipped/pink_concrete_tiles.png differ diff --git a/public/textures/chipped/pink_glazed_terracotta_pillar_sides.png b/public/textures/chipped/pink_glazed_terracotta_pillar_sides.png new file mode 100644 index 00000000..f5b404da Binary files /dev/null and b/public/textures/chipped/pink_glazed_terracotta_pillar_sides.png differ diff --git a/public/textures/chipped/pink_glazed_terracotta_pillar_top.png b/public/textures/chipped/pink_glazed_terracotta_pillar_top.png new file mode 100644 index 00000000..06c1cb76 Binary files /dev/null and b/public/textures/chipped/pink_glazed_terracotta_pillar_top.png differ diff --git a/public/textures/chipped/pink_glazed_terracotta_smooth_tiles.png b/public/textures/chipped/pink_glazed_terracotta_smooth_tiles.png new file mode 100644 index 00000000..c7d8d7d9 Binary files /dev/null and b/public/textures/chipped/pink_glazed_terracotta_smooth_tiles.png differ diff --git a/public/textures/chipped/pink_glazed_terracotta_tiles.png b/public/textures/chipped/pink_glazed_terracotta_tiles.png new file mode 100644 index 00000000..fdd39f37 Binary files /dev/null and b/public/textures/chipped/pink_glazed_terracotta_tiles.png differ diff --git a/public/textures/chipped/pink_terracotta_bricks.png b/public/textures/chipped/pink_terracotta_bricks.png new file mode 100644 index 00000000..a27c2691 Binary files /dev/null and b/public/textures/chipped/pink_terracotta_bricks.png differ diff --git a/public/textures/chipped/pink_terracotta_column.png b/public/textures/chipped/pink_terracotta_column.png new file mode 100644 index 00000000..3cd6b1bf Binary files /dev/null and b/public/textures/chipped/pink_terracotta_column.png differ diff --git a/public/textures/chipped/pink_terracotta_pillar.png b/public/textures/chipped/pink_terracotta_pillar.png new file mode 100644 index 00000000..e5cba0a2 Binary files /dev/null and b/public/textures/chipped/pink_terracotta_pillar.png differ diff --git a/public/textures/chipped/pink_terracotta_tile.png b/public/textures/chipped/pink_terracotta_tile.png new file mode 100644 index 00000000..19543281 Binary files /dev/null and b/public/textures/chipped/pink_terracotta_tile.png differ diff --git a/public/textures/chipped/pink_terracotta_tiles.png b/public/textures/chipped/pink_terracotta_tiles.png new file mode 100644 index 00000000..0849d90b Binary files /dev/null and b/public/textures/chipped/pink_terracotta_tiles.png differ diff --git a/public/textures/chipped/placed_mud.png b/public/textures/chipped/placed_mud.png new file mode 100644 index 00000000..352e17c2 Binary files /dev/null and b/public/textures/chipped/placed_mud.png differ diff --git a/public/textures/chipped/placed_mud_bricks.png b/public/textures/chipped/placed_mud_bricks.png new file mode 100644 index 00000000..87300df8 Binary files /dev/null and b/public/textures/chipped/placed_mud_bricks.png differ diff --git a/public/textures/chipped/placed_packed_mud.png b/public/textures/chipped/placed_packed_mud.png new file mode 100644 index 00000000..3d6e1bb2 Binary files /dev/null and b/public/textures/chipped/placed_packed_mud.png differ diff --git a/public/textures/chipped/plank_ladder.png b/public/textures/chipped/plank_ladder.png new file mode 100644 index 00000000..0e58ee28 Binary files /dev/null and b/public/textures/chipped/plank_ladder.png differ diff --git a/public/textures/chipped/planked_acacia_log.png b/public/textures/chipped/planked_acacia_log.png new file mode 100644 index 00000000..7dcbb4a8 Binary files /dev/null and b/public/textures/chipped/planked_acacia_log.png differ diff --git a/public/textures/chipped/planked_birch_log.png b/public/textures/chipped/planked_birch_log.png new file mode 100644 index 00000000..862b8340 Binary files /dev/null and b/public/textures/chipped/planked_birch_log.png differ diff --git a/public/textures/chipped/planked_cherry_log.png b/public/textures/chipped/planked_cherry_log.png new file mode 100644 index 00000000..fc78e4ca Binary files /dev/null and b/public/textures/chipped/planked_cherry_log.png differ diff --git a/public/textures/chipped/planked_crimson_stem.png b/public/textures/chipped/planked_crimson_stem.png new file mode 100644 index 00000000..0e84b160 Binary files /dev/null and b/public/textures/chipped/planked_crimson_stem.png differ diff --git a/public/textures/chipped/planked_dark_oak_log.png b/public/textures/chipped/planked_dark_oak_log.png new file mode 100644 index 00000000..15e94919 Binary files /dev/null and b/public/textures/chipped/planked_dark_oak_log.png differ diff --git a/public/textures/chipped/planked_jungle_log.png b/public/textures/chipped/planked_jungle_log.png new file mode 100644 index 00000000..7ff5e1d2 Binary files /dev/null and b/public/textures/chipped/planked_jungle_log.png differ diff --git a/public/textures/chipped/planked_mangrove_log.png b/public/textures/chipped/planked_mangrove_log.png new file mode 100644 index 00000000..85fbd8df Binary files /dev/null and b/public/textures/chipped/planked_mangrove_log.png differ diff --git a/public/textures/chipped/planked_oak_log.png b/public/textures/chipped/planked_oak_log.png new file mode 100644 index 00000000..dadceafb Binary files /dev/null and b/public/textures/chipped/planked_oak_log.png differ diff --git a/public/textures/chipped/planked_spruce_log.png b/public/textures/chipped/planked_spruce_log.png new file mode 100644 index 00000000..b7b91cf7 Binary files /dev/null and b/public/textures/chipped/planked_spruce_log.png differ diff --git a/public/textures/chipped/planked_warped_stem.png b/public/textures/chipped/planked_warped_stem.png new file mode 100644 index 00000000..f5a1707f Binary files /dev/null and b/public/textures/chipped/planked_warped_stem.png differ diff --git a/public/textures/chipped/plated_diamond_block.png b/public/textures/chipped/plated_diamond_block.png new file mode 100644 index 00000000..5752d7c9 Binary files /dev/null and b/public/textures/chipped/plated_diamond_block.png differ diff --git a/public/textures/chipped/plated_emerald_block.png b/public/textures/chipped/plated_emerald_block.png new file mode 100644 index 00000000..8683531d Binary files /dev/null and b/public/textures/chipped/plated_emerald_block.png differ diff --git a/public/textures/chipped/plated_gold_block.png b/public/textures/chipped/plated_gold_block.png new file mode 100644 index 00000000..dbc5f847 Binary files /dev/null and b/public/textures/chipped/plated_gold_block.png differ diff --git a/public/textures/chipped/plated_iron_block.png b/public/textures/chipped/plated_iron_block.png new file mode 100644 index 00000000..41d9c793 Binary files /dev/null and b/public/textures/chipped/plated_iron_block.png differ diff --git a/public/textures/chipped/plated_netherite_block.png b/public/textures/chipped/plated_netherite_block.png new file mode 100644 index 00000000..bb4f3764 Binary files /dev/null and b/public/textures/chipped/plated_netherite_block.png differ diff --git a/public/textures/chipped/plated_waxed_copper_block.png b/public/textures/chipped/plated_waxed_copper_block.png new file mode 100644 index 00000000..cd04fca3 Binary files /dev/null and b/public/textures/chipped/plated_waxed_copper_block.png differ diff --git a/public/textures/chipped/plated_waxed_exposed_copper.png b/public/textures/chipped/plated_waxed_exposed_copper.png new file mode 100644 index 00000000..d47279fc Binary files /dev/null and b/public/textures/chipped/plated_waxed_exposed_copper.png differ diff --git a/public/textures/chipped/plated_waxed_oxidized_copper.png b/public/textures/chipped/plated_waxed_oxidized_copper.png new file mode 100644 index 00000000..ae397230 Binary files /dev/null and b/public/textures/chipped/plated_waxed_oxidized_copper.png differ diff --git a/public/textures/chipped/plated_waxed_weathered_copper.png b/public/textures/chipped/plated_waxed_weathered_copper.png new file mode 100644 index 00000000..3f0845f3 Binary files /dev/null and b/public/textures/chipped/plated_waxed_weathered_copper.png differ diff --git a/public/textures/chipped/pointless_acacia_trapdoor.png b/public/textures/chipped/pointless_acacia_trapdoor.png new file mode 100644 index 00000000..97b190ed Binary files /dev/null and b/public/textures/chipped/pointless_acacia_trapdoor.png differ diff --git a/public/textures/chipped/pointless_bamboo_trapdoor.png b/public/textures/chipped/pointless_bamboo_trapdoor.png new file mode 100644 index 00000000..f3b70e24 Binary files /dev/null and b/public/textures/chipped/pointless_bamboo_trapdoor.png differ diff --git a/public/textures/chipped/pointless_birch_trapdoor.png b/public/textures/chipped/pointless_birch_trapdoor.png new file mode 100644 index 00000000..764e081c Binary files /dev/null and b/public/textures/chipped/pointless_birch_trapdoor.png differ diff --git a/public/textures/chipped/pointless_cherry_trapdoor.png b/public/textures/chipped/pointless_cherry_trapdoor.png new file mode 100644 index 00000000..240ed5e8 Binary files /dev/null and b/public/textures/chipped/pointless_cherry_trapdoor.png differ diff --git a/public/textures/chipped/pointless_crimson_trapdoor.png b/public/textures/chipped/pointless_crimson_trapdoor.png new file mode 100644 index 00000000..653ebdfd Binary files /dev/null and b/public/textures/chipped/pointless_crimson_trapdoor.png differ diff --git a/public/textures/chipped/pointless_dark_oak_trapdoor.png b/public/textures/chipped/pointless_dark_oak_trapdoor.png new file mode 100644 index 00000000..0ede5a18 Binary files /dev/null and b/public/textures/chipped/pointless_dark_oak_trapdoor.png differ diff --git a/public/textures/chipped/pointless_jungle_trapdoor.png b/public/textures/chipped/pointless_jungle_trapdoor.png new file mode 100644 index 00000000..49f92607 Binary files /dev/null and b/public/textures/chipped/pointless_jungle_trapdoor.png differ diff --git a/public/textures/chipped/pointless_mangrove_trapdoor.png b/public/textures/chipped/pointless_mangrove_trapdoor.png new file mode 100644 index 00000000..7a722711 Binary files /dev/null and b/public/textures/chipped/pointless_mangrove_trapdoor.png differ diff --git a/public/textures/chipped/pointless_oak_trapdoor.png b/public/textures/chipped/pointless_oak_trapdoor.png new file mode 100644 index 00000000..e57fcc59 Binary files /dev/null and b/public/textures/chipped/pointless_oak_trapdoor.png differ diff --git a/public/textures/chipped/pointless_spruce_trapdoor.png b/public/textures/chipped/pointless_spruce_trapdoor.png new file mode 100644 index 00000000..9ad17c20 Binary files /dev/null and b/public/textures/chipped/pointless_spruce_trapdoor.png differ diff --git a/public/textures/chipped/pointless_warped_trapdoor.png b/public/textures/chipped/pointless_warped_trapdoor.png new file mode 100644 index 00000000..eba121fc Binary files /dev/null and b/public/textures/chipped/pointless_warped_trapdoor.png differ diff --git a/public/textures/chipped/poisonous_mushroom_stem.png b/public/textures/chipped/poisonous_mushroom_stem.png new file mode 100644 index 00000000..fa7ccbf8 Binary files /dev/null and b/public/textures/chipped/poisonous_mushroom_stem.png differ diff --git a/public/textures/chipped/poisonous_vine.png b/public/textures/chipped/poisonous_vine.png new file mode 100644 index 00000000..ada68b39 Binary files /dev/null and b/public/textures/chipped/poisonous_vine.png differ diff --git a/public/textures/chipped/polished_acacia_planks.png b/public/textures/chipped/polished_acacia_planks.png new file mode 100644 index 00000000..3e28b88a Binary files /dev/null and b/public/textures/chipped/polished_acacia_planks.png differ diff --git a/public/textures/chipped/polished_amethyst_block.png b/public/textures/chipped/polished_amethyst_block.png new file mode 100644 index 00000000..dcaffac6 Binary files /dev/null and b/public/textures/chipped/polished_amethyst_block.png differ diff --git a/public/textures/chipped/polished_ancient_debris.png b/public/textures/chipped/polished_ancient_debris.png new file mode 100644 index 00000000..a8eaaecc Binary files /dev/null and b/public/textures/chipped/polished_ancient_debris.png differ diff --git a/public/textures/chipped/polished_andesite.png b/public/textures/chipped/polished_andesite.png new file mode 100644 index 00000000..d70ef5cd Binary files /dev/null and b/public/textures/chipped/polished_andesite.png differ diff --git a/public/textures/chipped/polished_bamboo_planks.png b/public/textures/chipped/polished_bamboo_planks.png new file mode 100644 index 00000000..a4c8821d Binary files /dev/null and b/public/textures/chipped/polished_bamboo_planks.png differ diff --git a/public/textures/chipped/polished_basalt.png b/public/textures/chipped/polished_basalt.png new file mode 100644 index 00000000..ebf3ca81 Binary files /dev/null and b/public/textures/chipped/polished_basalt.png differ diff --git a/public/textures/chipped/polished_birch_planks.png b/public/textures/chipped/polished_birch_planks.png new file mode 100644 index 00000000..160246de Binary files /dev/null and b/public/textures/chipped/polished_birch_planks.png differ diff --git a/public/textures/chipped/polished_blackstone.png b/public/textures/chipped/polished_blackstone.png new file mode 100644 index 00000000..9cff6cc4 Binary files /dev/null and b/public/textures/chipped/polished_blackstone.png differ diff --git a/public/textures/chipped/polished_blue_ice.png b/public/textures/chipped/polished_blue_ice.png new file mode 100644 index 00000000..eeda0ed3 Binary files /dev/null and b/public/textures/chipped/polished_blue_ice.png differ diff --git a/public/textures/chipped/polished_borderless_bricks.png b/public/textures/chipped/polished_borderless_bricks.png new file mode 100644 index 00000000..a5607779 Binary files /dev/null and b/public/textures/chipped/polished_borderless_bricks.png differ diff --git a/public/textures/chipped/polished_bricks.png b/public/textures/chipped/polished_bricks.png new file mode 100644 index 00000000..12288eb5 Binary files /dev/null and b/public/textures/chipped/polished_bricks.png differ diff --git a/public/textures/chipped/polished_calcite.png b/public/textures/chipped/polished_calcite.png new file mode 100644 index 00000000..32d03e46 Binary files /dev/null and b/public/textures/chipped/polished_calcite.png differ diff --git a/public/textures/chipped/polished_cherry_planks.png b/public/textures/chipped/polished_cherry_planks.png new file mode 100644 index 00000000..b5120e9d Binary files /dev/null and b/public/textures/chipped/polished_cherry_planks.png differ diff --git a/public/textures/chipped/polished_clay.png b/public/textures/chipped/polished_clay.png new file mode 100644 index 00000000..4878c174 Binary files /dev/null and b/public/textures/chipped/polished_clay.png differ diff --git a/public/textures/chipped/polished_coal_block.png b/public/textures/chipped/polished_coal_block.png new file mode 100644 index 00000000..035de320 Binary files /dev/null and b/public/textures/chipped/polished_coal_block.png differ diff --git a/public/textures/chipped/polished_cobblestone.png b/public/textures/chipped/polished_cobblestone.png new file mode 100644 index 00000000..a1a824fb Binary files /dev/null and b/public/textures/chipped/polished_cobblestone.png differ diff --git a/public/textures/chipped/polished_crimson_planks.png b/public/textures/chipped/polished_crimson_planks.png new file mode 100644 index 00000000..9a68b3e7 Binary files /dev/null and b/public/textures/chipped/polished_crimson_planks.png differ diff --git a/public/textures/chipped/polished_crying_obsidian.png b/public/textures/chipped/polished_crying_obsidian.png new file mode 100644 index 00000000..70e0be06 Binary files /dev/null and b/public/textures/chipped/polished_crying_obsidian.png differ diff --git a/public/textures/chipped/polished_dark_oak_planks.png b/public/textures/chipped/polished_dark_oak_planks.png new file mode 100644 index 00000000..359d3c1b Binary files /dev/null and b/public/textures/chipped/polished_dark_oak_planks.png differ diff --git a/public/textures/chipped/polished_dark_prismarine.png b/public/textures/chipped/polished_dark_prismarine.png new file mode 100644 index 00000000..2bca6b02 Binary files /dev/null and b/public/textures/chipped/polished_dark_prismarine.png differ diff --git a/public/textures/chipped/polished_deepslate.png b/public/textures/chipped/polished_deepslate.png new file mode 100644 index 00000000..051a11e8 Binary files /dev/null and b/public/textures/chipped/polished_deepslate.png differ diff --git a/public/textures/chipped/polished_diorite.png b/public/textures/chipped/polished_diorite.png new file mode 100644 index 00000000..cd127eca Binary files /dev/null and b/public/textures/chipped/polished_diorite.png differ diff --git a/public/textures/chipped/polished_dirt.png b/public/textures/chipped/polished_dirt.png new file mode 100644 index 00000000..9d9c54c7 Binary files /dev/null and b/public/textures/chipped/polished_dirt.png differ diff --git a/public/textures/chipped/polished_dripstone_block.png b/public/textures/chipped/polished_dripstone_block.png new file mode 100644 index 00000000..31d6ed90 Binary files /dev/null and b/public/textures/chipped/polished_dripstone_block.png differ diff --git a/public/textures/chipped/polished_emerald_block.png b/public/textures/chipped/polished_emerald_block.png new file mode 100644 index 00000000..a65d81ca Binary files /dev/null and b/public/textures/chipped/polished_emerald_block.png differ diff --git a/public/textures/chipped/polished_end_stone.png b/public/textures/chipped/polished_end_stone.png new file mode 100644 index 00000000..47d008f2 Binary files /dev/null and b/public/textures/chipped/polished_end_stone.png differ diff --git a/public/textures/chipped/polished_gilded_blackstone.png b/public/textures/chipped/polished_gilded_blackstone.png new file mode 100644 index 00000000..461b869f Binary files /dev/null and b/public/textures/chipped/polished_gilded_blackstone.png differ diff --git a/public/textures/chipped/polished_glowstone.png b/public/textures/chipped/polished_glowstone.png new file mode 100644 index 00000000..8c5c9b1d Binary files /dev/null and b/public/textures/chipped/polished_glowstone.png differ diff --git a/public/textures/chipped/polished_granite.png b/public/textures/chipped/polished_granite.png new file mode 100644 index 00000000..41c99687 Binary files /dev/null and b/public/textures/chipped/polished_granite.png differ diff --git a/public/textures/chipped/polished_ice.png b/public/textures/chipped/polished_ice.png new file mode 100644 index 00000000..2ef01b18 Binary files /dev/null and b/public/textures/chipped/polished_ice.png differ diff --git a/public/textures/chipped/polished_iron_block.png b/public/textures/chipped/polished_iron_block.png new file mode 100644 index 00000000..bfa860af Binary files /dev/null and b/public/textures/chipped/polished_iron_block.png differ diff --git a/public/textures/chipped/polished_jungle_planks.png b/public/textures/chipped/polished_jungle_planks.png new file mode 100644 index 00000000..5df87a44 Binary files /dev/null and b/public/textures/chipped/polished_jungle_planks.png differ diff --git a/public/textures/chipped/polished_lapis_block.png b/public/textures/chipped/polished_lapis_block.png new file mode 100644 index 00000000..b104f99d Binary files /dev/null and b/public/textures/chipped/polished_lapis_block.png differ diff --git a/public/textures/chipped/polished_lodestone.png b/public/textures/chipped/polished_lodestone.png new file mode 100644 index 00000000..9f2383e0 Binary files /dev/null and b/public/textures/chipped/polished_lodestone.png differ diff --git a/public/textures/chipped/polished_magma_block.png b/public/textures/chipped/polished_magma_block.png new file mode 100644 index 00000000..c87ad0fb Binary files /dev/null and b/public/textures/chipped/polished_magma_block.png differ diff --git a/public/textures/chipped/polished_mangrove_planks.png b/public/textures/chipped/polished_mangrove_planks.png new file mode 100644 index 00000000..25756e03 Binary files /dev/null and b/public/textures/chipped/polished_mangrove_planks.png differ diff --git a/public/textures/chipped/polished_mossy_cobblestone.png b/public/textures/chipped/polished_mossy_cobblestone.png new file mode 100644 index 00000000..8d309d7a Binary files /dev/null and b/public/textures/chipped/polished_mossy_cobblestone.png differ diff --git a/public/textures/chipped/polished_mossy_stone_bricks.png b/public/textures/chipped/polished_mossy_stone_bricks.png new file mode 100644 index 00000000..491e6456 Binary files /dev/null and b/public/textures/chipped/polished_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/polished_mud.png b/public/textures/chipped/polished_mud.png new file mode 100644 index 00000000..57b8662c Binary files /dev/null and b/public/textures/chipped/polished_mud.png differ diff --git a/public/textures/chipped/polished_mud_bricks.png b/public/textures/chipped/polished_mud_bricks.png new file mode 100644 index 00000000..35a58f7d Binary files /dev/null and b/public/textures/chipped/polished_mud_bricks.png differ diff --git a/public/textures/chipped/polished_nether_bricks.png b/public/textures/chipped/polished_nether_bricks.png new file mode 100644 index 00000000..6e33ec4a Binary files /dev/null and b/public/textures/chipped/polished_nether_bricks.png differ diff --git a/public/textures/chipped/polished_netherite_block.png b/public/textures/chipped/polished_netherite_block.png new file mode 100644 index 00000000..1e2c24a3 Binary files /dev/null and b/public/textures/chipped/polished_netherite_block.png differ diff --git a/public/textures/chipped/polished_netherrack.png b/public/textures/chipped/polished_netherrack.png new file mode 100644 index 00000000..a7496b16 Binary files /dev/null and b/public/textures/chipped/polished_netherrack.png differ diff --git a/public/textures/chipped/polished_oak_planks.png b/public/textures/chipped/polished_oak_planks.png new file mode 100644 index 00000000..94fc7bb4 Binary files /dev/null and b/public/textures/chipped/polished_oak_planks.png differ diff --git a/public/textures/chipped/polished_obsidian.png b/public/textures/chipped/polished_obsidian.png new file mode 100644 index 00000000..672105b8 Binary files /dev/null and b/public/textures/chipped/polished_obsidian.png differ diff --git a/public/textures/chipped/polished_packed_ice.png b/public/textures/chipped/polished_packed_ice.png new file mode 100644 index 00000000..c5da8e70 Binary files /dev/null and b/public/textures/chipped/polished_packed_ice.png differ diff --git a/public/textures/chipped/polished_packed_mud.png b/public/textures/chipped/polished_packed_mud.png new file mode 100644 index 00000000..d5630aab Binary files /dev/null and b/public/textures/chipped/polished_packed_mud.png differ diff --git a/public/textures/chipped/polished_prismarine.png b/public/textures/chipped/polished_prismarine.png new file mode 100644 index 00000000..797a350f Binary files /dev/null and b/public/textures/chipped/polished_prismarine.png differ diff --git a/public/textures/chipped/polished_purpur_block.png b/public/textures/chipped/polished_purpur_block.png new file mode 100644 index 00000000..1b16d4b6 Binary files /dev/null and b/public/textures/chipped/polished_purpur_block.png differ diff --git a/public/textures/chipped/polished_quartz_block.png b/public/textures/chipped/polished_quartz_block.png new file mode 100644 index 00000000..81f35876 Binary files /dev/null and b/public/textures/chipped/polished_quartz_block.png differ diff --git a/public/textures/chipped/polished_raw_copper_block.png b/public/textures/chipped/polished_raw_copper_block.png new file mode 100644 index 00000000..d12d6856 Binary files /dev/null and b/public/textures/chipped/polished_raw_copper_block.png differ diff --git a/public/textures/chipped/polished_raw_gold_block.png b/public/textures/chipped/polished_raw_gold_block.png new file mode 100644 index 00000000..2d2b0fd1 Binary files /dev/null and b/public/textures/chipped/polished_raw_gold_block.png differ diff --git a/public/textures/chipped/polished_raw_iron_block.png b/public/textures/chipped/polished_raw_iron_block.png new file mode 100644 index 00000000..6f6c6df8 Binary files /dev/null and b/public/textures/chipped/polished_raw_iron_block.png differ diff --git a/public/textures/chipped/polished_red_nether_bricks.png b/public/textures/chipped/polished_red_nether_bricks.png new file mode 100644 index 00000000..6602fa0b Binary files /dev/null and b/public/textures/chipped/polished_red_nether_bricks.png differ diff --git a/public/textures/chipped/polished_red_sandstone.png b/public/textures/chipped/polished_red_sandstone.png new file mode 100644 index 00000000..60ab1a00 Binary files /dev/null and b/public/textures/chipped/polished_red_sandstone.png differ diff --git a/public/textures/chipped/polished_redstone_block.png b/public/textures/chipped/polished_redstone_block.png new file mode 100644 index 00000000..7e98c58e Binary files /dev/null and b/public/textures/chipped/polished_redstone_block.png differ diff --git a/public/textures/chipped/polished_sandstone.png b/public/textures/chipped/polished_sandstone.png new file mode 100644 index 00000000..a7ed1a80 Binary files /dev/null and b/public/textures/chipped/polished_sandstone.png differ diff --git a/public/textures/chipped/polished_sea_lantern.png b/public/textures/chipped/polished_sea_lantern.png new file mode 100644 index 00000000..368e4f1b Binary files /dev/null and b/public/textures/chipped/polished_sea_lantern.png differ diff --git a/public/textures/chipped/polished_shroomlight.png b/public/textures/chipped/polished_shroomlight.png new file mode 100644 index 00000000..7eaf2ad2 Binary files /dev/null and b/public/textures/chipped/polished_shroomlight.png differ diff --git a/public/textures/chipped/polished_smooth_stone.png b/public/textures/chipped/polished_smooth_stone.png new file mode 100644 index 00000000..ca149dea Binary files /dev/null and b/public/textures/chipped/polished_smooth_stone.png differ diff --git a/public/textures/chipped/polished_snow_block.png b/public/textures/chipped/polished_snow_block.png new file mode 100644 index 00000000..a8b57488 Binary files /dev/null and b/public/textures/chipped/polished_snow_block.png differ diff --git a/public/textures/chipped/polished_spruce_planks.png b/public/textures/chipped/polished_spruce_planks.png new file mode 100644 index 00000000..a4f38919 Binary files /dev/null and b/public/textures/chipped/polished_spruce_planks.png differ diff --git a/public/textures/chipped/polished_stone.png b/public/textures/chipped/polished_stone.png new file mode 100644 index 00000000..3aade05e Binary files /dev/null and b/public/textures/chipped/polished_stone.png differ diff --git a/public/textures/chipped/polished_tuff.png b/public/textures/chipped/polished_tuff.png new file mode 100644 index 00000000..0654bdc6 Binary files /dev/null and b/public/textures/chipped/polished_tuff.png differ diff --git a/public/textures/chipped/polished_warped_planks.png b/public/textures/chipped/polished_warped_planks.png new file mode 100644 index 00000000..b8fc5158 Binary files /dev/null and b/public/textures/chipped/polished_warped_planks.png differ diff --git a/public/textures/chipped/porous_nether_wart_block.png b/public/textures/chipped/porous_nether_wart_block.png new file mode 100644 index 00000000..e777b6c9 Binary files /dev/null and b/public/textures/chipped/porous_nether_wart_block.png differ diff --git a/public/textures/chipped/porous_warped_wart_block.png b/public/textures/chipped/porous_warped_wart_block.png new file mode 100644 index 00000000..0b436f62 Binary files /dev/null and b/public/textures/chipped/porous_warped_wart_block.png differ diff --git a/public/textures/chipped/pressed_acacia_door.png b/public/textures/chipped/pressed_acacia_door.png new file mode 100644 index 00000000..7f2a231f Binary files /dev/null and b/public/textures/chipped/pressed_acacia_door.png differ diff --git a/public/textures/chipped/pressed_bamboo_door.png b/public/textures/chipped/pressed_bamboo_door.png new file mode 100644 index 00000000..fd4456ba Binary files /dev/null and b/public/textures/chipped/pressed_bamboo_door.png differ diff --git a/public/textures/chipped/pressed_birch_door.png b/public/textures/chipped/pressed_birch_door.png new file mode 100644 index 00000000..27ffe1b9 Binary files /dev/null and b/public/textures/chipped/pressed_birch_door.png differ diff --git a/public/textures/chipped/pressed_cherry_door.png b/public/textures/chipped/pressed_cherry_door.png new file mode 100644 index 00000000..b87e58dd Binary files /dev/null and b/public/textures/chipped/pressed_cherry_door.png differ diff --git a/public/textures/chipped/pressed_crimson_door.png b/public/textures/chipped/pressed_crimson_door.png new file mode 100644 index 00000000..b0a240cf Binary files /dev/null and b/public/textures/chipped/pressed_crimson_door.png differ diff --git a/public/textures/chipped/pressed_dark_oak_door.png b/public/textures/chipped/pressed_dark_oak_door.png new file mode 100644 index 00000000..6d4b4e4d Binary files /dev/null and b/public/textures/chipped/pressed_dark_oak_door.png differ diff --git a/public/textures/chipped/pressed_diamond_block.png b/public/textures/chipped/pressed_diamond_block.png new file mode 100644 index 00000000..c9932f8e Binary files /dev/null and b/public/textures/chipped/pressed_diamond_block.png differ diff --git a/public/textures/chipped/pressed_gold_block.png b/public/textures/chipped/pressed_gold_block.png new file mode 100644 index 00000000..a869e8dc Binary files /dev/null and b/public/textures/chipped/pressed_gold_block.png differ diff --git a/public/textures/chipped/pressed_iron_block.png b/public/textures/chipped/pressed_iron_block.png new file mode 100644 index 00000000..59e16806 Binary files /dev/null and b/public/textures/chipped/pressed_iron_block.png differ diff --git a/public/textures/chipped/pressed_jungle_door.png b/public/textures/chipped/pressed_jungle_door.png new file mode 100644 index 00000000..0dfc588f Binary files /dev/null and b/public/textures/chipped/pressed_jungle_door.png differ diff --git a/public/textures/chipped/pressed_mangrove_door.png b/public/textures/chipped/pressed_mangrove_door.png new file mode 100644 index 00000000..d589385a Binary files /dev/null and b/public/textures/chipped/pressed_mangrove_door.png differ diff --git a/public/textures/chipped/pressed_netherite_block.png b/public/textures/chipped/pressed_netherite_block.png new file mode 100644 index 00000000..fe62e2f7 Binary files /dev/null and b/public/textures/chipped/pressed_netherite_block.png differ diff --git a/public/textures/chipped/pressed_oak_door.png b/public/textures/chipped/pressed_oak_door.png new file mode 100644 index 00000000..91baaf36 Binary files /dev/null and b/public/textures/chipped/pressed_oak_door.png differ diff --git a/public/textures/chipped/pressed_spruce_door.png b/public/textures/chipped/pressed_spruce_door.png new file mode 100644 index 00000000..93e2254c Binary files /dev/null and b/public/textures/chipped/pressed_spruce_door.png differ diff --git a/public/textures/chipped/pressed_warped_door.png b/public/textures/chipped/pressed_warped_door.png new file mode 100644 index 00000000..f50601e2 Binary files /dev/null and b/public/textures/chipped/pressed_warped_door.png differ diff --git a/public/textures/chipped/pressed_waxed_copper_block.png b/public/textures/chipped/pressed_waxed_copper_block.png new file mode 100644 index 00000000..249e7e2a Binary files /dev/null and b/public/textures/chipped/pressed_waxed_copper_block.png differ diff --git a/public/textures/chipped/pressed_waxed_exposed_copper.png b/public/textures/chipped/pressed_waxed_exposed_copper.png new file mode 100644 index 00000000..a4310aa6 Binary files /dev/null and b/public/textures/chipped/pressed_waxed_exposed_copper.png differ diff --git a/public/textures/chipped/pressed_waxed_oxidized_copper.png b/public/textures/chipped/pressed_waxed_oxidized_copper.png new file mode 100644 index 00000000..c8de868e Binary files /dev/null and b/public/textures/chipped/pressed_waxed_oxidized_copper.png differ diff --git a/public/textures/chipped/pressed_waxed_weathered_copper.png b/public/textures/chipped/pressed_waxed_weathered_copper.png new file mode 100644 index 00000000..01a1d02e Binary files /dev/null and b/public/textures/chipped/pressed_waxed_weathered_copper.png differ diff --git a/public/textures/chipped/prismal_amethyst_block_remnants.png b/public/textures/chipped/prismal_amethyst_block_remnants.png new file mode 100644 index 00000000..cc1e7635 Binary files /dev/null and b/public/textures/chipped/prismal_amethyst_block_remnants.png differ diff --git a/public/textures/chipped/prismal_ancient_debris_remnants.png b/public/textures/chipped/prismal_ancient_debris_remnants.png new file mode 100644 index 00000000..0f87a438 Binary files /dev/null and b/public/textures/chipped/prismal_ancient_debris_remnants.png differ diff --git a/public/textures/chipped/prismal_andesite_remnants.png b/public/textures/chipped/prismal_andesite_remnants.png new file mode 100644 index 00000000..512cddba Binary files /dev/null and b/public/textures/chipped/prismal_andesite_remnants.png differ diff --git a/public/textures/chipped/prismal_basalt_remnants.png b/public/textures/chipped/prismal_basalt_remnants.png new file mode 100644 index 00000000..82551391 Binary files /dev/null and b/public/textures/chipped/prismal_basalt_remnants.png differ diff --git a/public/textures/chipped/prismal_blackstone_remnants.png b/public/textures/chipped/prismal_blackstone_remnants.png new file mode 100644 index 00000000..88853665 Binary files /dev/null and b/public/textures/chipped/prismal_blackstone_remnants.png differ diff --git a/public/textures/chipped/prismal_blue_ice_remnants.png b/public/textures/chipped/prismal_blue_ice_remnants.png new file mode 100644 index 00000000..cf563eeb Binary files /dev/null and b/public/textures/chipped/prismal_blue_ice_remnants.png differ diff --git a/public/textures/chipped/prismal_borderless_bricks_remnants.png b/public/textures/chipped/prismal_borderless_bricks_remnants.png new file mode 100644 index 00000000..ca1034b4 Binary files /dev/null and b/public/textures/chipped/prismal_borderless_bricks_remnants.png differ diff --git a/public/textures/chipped/prismal_bricks_remnants.png b/public/textures/chipped/prismal_bricks_remnants.png new file mode 100644 index 00000000..34b80c22 Binary files /dev/null and b/public/textures/chipped/prismal_bricks_remnants.png differ diff --git a/public/textures/chipped/prismal_calcite_remnants.png b/public/textures/chipped/prismal_calcite_remnants.png new file mode 100644 index 00000000..a4ef009b Binary files /dev/null and b/public/textures/chipped/prismal_calcite_remnants.png differ diff --git a/public/textures/chipped/prismal_clay_remnants.png b/public/textures/chipped/prismal_clay_remnants.png new file mode 100644 index 00000000..a286275c Binary files /dev/null and b/public/textures/chipped/prismal_clay_remnants.png differ diff --git a/public/textures/chipped/prismal_coal_block_remnants.png b/public/textures/chipped/prismal_coal_block_remnants.png new file mode 100644 index 00000000..8edd3bbb Binary files /dev/null and b/public/textures/chipped/prismal_coal_block_remnants.png differ diff --git a/public/textures/chipped/prismal_cobblestone_remnants.png b/public/textures/chipped/prismal_cobblestone_remnants.png new file mode 100644 index 00000000..3d45fa53 Binary files /dev/null and b/public/textures/chipped/prismal_cobblestone_remnants.png differ diff --git a/public/textures/chipped/prismal_crying_obsidian_remnants.png b/public/textures/chipped/prismal_crying_obsidian_remnants.png new file mode 100644 index 00000000..73b3d1b7 Binary files /dev/null and b/public/textures/chipped/prismal_crying_obsidian_remnants.png differ diff --git a/public/textures/chipped/prismal_dark_prismarine_remnants.png b/public/textures/chipped/prismal_dark_prismarine_remnants.png new file mode 100644 index 00000000..915509bd Binary files /dev/null and b/public/textures/chipped/prismal_dark_prismarine_remnants.png differ diff --git a/public/textures/chipped/prismal_deepslate_remnants.png b/public/textures/chipped/prismal_deepslate_remnants.png new file mode 100644 index 00000000..02f3ea13 Binary files /dev/null and b/public/textures/chipped/prismal_deepslate_remnants.png differ diff --git a/public/textures/chipped/prismal_diorite_remnants.png b/public/textures/chipped/prismal_diorite_remnants.png new file mode 100644 index 00000000..c7cdab3d Binary files /dev/null and b/public/textures/chipped/prismal_diorite_remnants.png differ diff --git a/public/textures/chipped/prismal_dirt_remnants.png b/public/textures/chipped/prismal_dirt_remnants.png new file mode 100644 index 00000000..94c21997 Binary files /dev/null and b/public/textures/chipped/prismal_dirt_remnants.png differ diff --git a/public/textures/chipped/prismal_dripstone_block_remnants.png b/public/textures/chipped/prismal_dripstone_block_remnants.png new file mode 100644 index 00000000..b1d7f0c0 Binary files /dev/null and b/public/textures/chipped/prismal_dripstone_block_remnants.png differ diff --git a/public/textures/chipped/prismal_end_stone_remnants.png b/public/textures/chipped/prismal_end_stone_remnants.png new file mode 100644 index 00000000..47f2a66d Binary files /dev/null and b/public/textures/chipped/prismal_end_stone_remnants.png differ diff --git a/public/textures/chipped/prismal_gilded_blackstone_remnants.png b/public/textures/chipped/prismal_gilded_blackstone_remnants.png new file mode 100644 index 00000000..0f025669 Binary files /dev/null and b/public/textures/chipped/prismal_gilded_blackstone_remnants.png differ diff --git a/public/textures/chipped/prismal_granite_remnants.png b/public/textures/chipped/prismal_granite_remnants.png new file mode 100644 index 00000000..f4e67c3c Binary files /dev/null and b/public/textures/chipped/prismal_granite_remnants.png differ diff --git a/public/textures/chipped/prismal_ice_remnants.png b/public/textures/chipped/prismal_ice_remnants.png new file mode 100644 index 00000000..5cfed5db Binary files /dev/null and b/public/textures/chipped/prismal_ice_remnants.png differ diff --git a/public/textures/chipped/prismal_lapis_block_remnants.png b/public/textures/chipped/prismal_lapis_block_remnants.png new file mode 100644 index 00000000..4c717090 Binary files /dev/null and b/public/textures/chipped/prismal_lapis_block_remnants.png differ diff --git a/public/textures/chipped/prismal_lodestone_remnants.png b/public/textures/chipped/prismal_lodestone_remnants.png new file mode 100644 index 00000000..30c00e54 Binary files /dev/null and b/public/textures/chipped/prismal_lodestone_remnants.png differ diff --git a/public/textures/chipped/prismal_magma_block_remnants.png b/public/textures/chipped/prismal_magma_block_remnants.png new file mode 100644 index 00000000..6d6d0554 Binary files /dev/null and b/public/textures/chipped/prismal_magma_block_remnants.png differ diff --git a/public/textures/chipped/prismal_mossy_cobblestone_remnants.png b/public/textures/chipped/prismal_mossy_cobblestone_remnants.png new file mode 100644 index 00000000..f99f0f2e Binary files /dev/null and b/public/textures/chipped/prismal_mossy_cobblestone_remnants.png differ diff --git a/public/textures/chipped/prismal_mossy_stone_bricks_remnants.png b/public/textures/chipped/prismal_mossy_stone_bricks_remnants.png new file mode 100644 index 00000000..5262a3fa Binary files /dev/null and b/public/textures/chipped/prismal_mossy_stone_bricks_remnants.png differ diff --git a/public/textures/chipped/prismal_mud_bricks_remnants.png b/public/textures/chipped/prismal_mud_bricks_remnants.png new file mode 100644 index 00000000..a5992895 Binary files /dev/null and b/public/textures/chipped/prismal_mud_bricks_remnants.png differ diff --git a/public/textures/chipped/prismal_mud_remnants.png b/public/textures/chipped/prismal_mud_remnants.png new file mode 100644 index 00000000..7c5dba48 Binary files /dev/null and b/public/textures/chipped/prismal_mud_remnants.png differ diff --git a/public/textures/chipped/prismal_nether_bricks_remnants.png b/public/textures/chipped/prismal_nether_bricks_remnants.png new file mode 100644 index 00000000..abc16308 Binary files /dev/null and b/public/textures/chipped/prismal_nether_bricks_remnants.png differ diff --git a/public/textures/chipped/prismal_netherrack_remnants.png b/public/textures/chipped/prismal_netherrack_remnants.png new file mode 100644 index 00000000..3854c426 Binary files /dev/null and b/public/textures/chipped/prismal_netherrack_remnants.png differ diff --git a/public/textures/chipped/prismal_obsidian_remnants.png b/public/textures/chipped/prismal_obsidian_remnants.png new file mode 100644 index 00000000..d6a3704c Binary files /dev/null and b/public/textures/chipped/prismal_obsidian_remnants.png differ diff --git a/public/textures/chipped/prismal_packed_ice_remnants.png b/public/textures/chipped/prismal_packed_ice_remnants.png new file mode 100644 index 00000000..c3a35cf7 Binary files /dev/null and b/public/textures/chipped/prismal_packed_ice_remnants.png differ diff --git a/public/textures/chipped/prismal_packed_mud_remnants.png b/public/textures/chipped/prismal_packed_mud_remnants.png new file mode 100644 index 00000000..a194cba0 Binary files /dev/null and b/public/textures/chipped/prismal_packed_mud_remnants.png differ diff --git a/public/textures/chipped/prismal_purpur_block_remnants.png b/public/textures/chipped/prismal_purpur_block_remnants.png new file mode 100644 index 00000000..2448c86e Binary files /dev/null and b/public/textures/chipped/prismal_purpur_block_remnants.png differ diff --git a/public/textures/chipped/prismal_quartz_block_remnants.png b/public/textures/chipped/prismal_quartz_block_remnants.png new file mode 100644 index 00000000..f8a6a7e8 Binary files /dev/null and b/public/textures/chipped/prismal_quartz_block_remnants.png differ diff --git a/public/textures/chipped/prismal_raw_copper_block_remnants.png b/public/textures/chipped/prismal_raw_copper_block_remnants.png new file mode 100644 index 00000000..67d3a7e5 Binary files /dev/null and b/public/textures/chipped/prismal_raw_copper_block_remnants.png differ diff --git a/public/textures/chipped/prismal_raw_gold_block_remnants.png b/public/textures/chipped/prismal_raw_gold_block_remnants.png new file mode 100644 index 00000000..6e4adf54 Binary files /dev/null and b/public/textures/chipped/prismal_raw_gold_block_remnants.png differ diff --git a/public/textures/chipped/prismal_raw_iron_block_remnants.png b/public/textures/chipped/prismal_raw_iron_block_remnants.png new file mode 100644 index 00000000..89523180 Binary files /dev/null and b/public/textures/chipped/prismal_raw_iron_block_remnants.png differ diff --git a/public/textures/chipped/prismal_red_nether_bricks_remnants.png b/public/textures/chipped/prismal_red_nether_bricks_remnants.png new file mode 100644 index 00000000..3cce8b7c Binary files /dev/null and b/public/textures/chipped/prismal_red_nether_bricks_remnants.png differ diff --git a/public/textures/chipped/prismal_red_sandstone_remnants.png b/public/textures/chipped/prismal_red_sandstone_remnants.png new file mode 100644 index 00000000..09e1c156 Binary files /dev/null and b/public/textures/chipped/prismal_red_sandstone_remnants.png differ diff --git a/public/textures/chipped/prismal_redstone_block_remnants.png b/public/textures/chipped/prismal_redstone_block_remnants.png new file mode 100644 index 00000000..7078f7df Binary files /dev/null and b/public/textures/chipped/prismal_redstone_block_remnants.png differ diff --git a/public/textures/chipped/prismal_sandstone_remnants.png b/public/textures/chipped/prismal_sandstone_remnants.png new file mode 100644 index 00000000..355753ff Binary files /dev/null and b/public/textures/chipped/prismal_sandstone_remnants.png differ diff --git a/public/textures/chipped/prismal_smooth_stone_remnants.png b/public/textures/chipped/prismal_smooth_stone_remnants.png new file mode 100644 index 00000000..773397de Binary files /dev/null and b/public/textures/chipped/prismal_smooth_stone_remnants.png differ diff --git a/public/textures/chipped/prismal_snow_block_remnants.png b/public/textures/chipped/prismal_snow_block_remnants.png new file mode 100644 index 00000000..6934a966 Binary files /dev/null and b/public/textures/chipped/prismal_snow_block_remnants.png differ diff --git a/public/textures/chipped/prismal_stone_remnants.png b/public/textures/chipped/prismal_stone_remnants.png new file mode 100644 index 00000000..6b8fddd7 Binary files /dev/null and b/public/textures/chipped/prismal_stone_remnants.png differ diff --git a/public/textures/chipped/prismal_tuff_remnants.png b/public/textures/chipped/prismal_tuff_remnants.png new file mode 100644 index 00000000..8aacd138 Binary files /dev/null and b/public/textures/chipped/prismal_tuff_remnants.png differ diff --git a/public/textures/chipped/prismarine_bricks.png b/public/textures/chipped/prismarine_bricks.png new file mode 100644 index 00000000..46fe19dd Binary files /dev/null and b/public/textures/chipped/prismarine_bricks.png differ diff --git a/public/textures/chipped/prismarine_mini_tiles.png b/public/textures/chipped/prismarine_mini_tiles.png new file mode 100644 index 00000000..58384351 Binary files /dev/null and b/public/textures/chipped/prismarine_mini_tiles.png differ diff --git a/public/textures/chipped/prismarine_pillar.png b/public/textures/chipped/prismarine_pillar.png new file mode 100644 index 00000000..775cccbb Binary files /dev/null and b/public/textures/chipped/prismarine_pillar.png differ diff --git a/public/textures/chipped/prismarine_pillar_top.png b/public/textures/chipped/prismarine_pillar_top.png new file mode 100644 index 00000000..f1159f1f Binary files /dev/null and b/public/textures/chipped/prismarine_pillar_top.png differ diff --git a/public/textures/chipped/prismarine_scales.png b/public/textures/chipped/prismarine_scales.png new file mode 100644 index 00000000..30848a3b Binary files /dev/null and b/public/textures/chipped/prismarine_scales.png differ diff --git a/public/textures/chipped/purple_concrete_bricks.png b/public/textures/chipped/purple_concrete_bricks.png new file mode 100644 index 00000000..84fe003a Binary files /dev/null and b/public/textures/chipped/purple_concrete_bricks.png differ diff --git a/public/textures/chipped/purple_concrete_panel.png b/public/textures/chipped/purple_concrete_panel.png new file mode 100644 index 00000000..44bbaba7 Binary files /dev/null and b/public/textures/chipped/purple_concrete_panel.png differ diff --git a/public/textures/chipped/purple_concrete_pillar.png b/public/textures/chipped/purple_concrete_pillar.png new file mode 100644 index 00000000..a19455d2 Binary files /dev/null and b/public/textures/chipped/purple_concrete_pillar.png differ diff --git a/public/textures/chipped/purple_concrete_tiles.png b/public/textures/chipped/purple_concrete_tiles.png new file mode 100644 index 00000000..2cb4a7b1 Binary files /dev/null and b/public/textures/chipped/purple_concrete_tiles.png differ diff --git a/public/textures/chipped/purple_glazed_terracotta_pillar_sides.png b/public/textures/chipped/purple_glazed_terracotta_pillar_sides.png new file mode 100644 index 00000000..638cb083 Binary files /dev/null and b/public/textures/chipped/purple_glazed_terracotta_pillar_sides.png differ diff --git a/public/textures/chipped/purple_glazed_terracotta_pillar_top.png b/public/textures/chipped/purple_glazed_terracotta_pillar_top.png new file mode 100644 index 00000000..5916c287 Binary files /dev/null and b/public/textures/chipped/purple_glazed_terracotta_pillar_top.png differ diff --git a/public/textures/chipped/purple_glazed_terracotta_smooth_tiles.png b/public/textures/chipped/purple_glazed_terracotta_smooth_tiles.png new file mode 100644 index 00000000..d5128973 Binary files /dev/null and b/public/textures/chipped/purple_glazed_terracotta_smooth_tiles.png differ diff --git a/public/textures/chipped/purple_glazed_terracotta_tiles.png b/public/textures/chipped/purple_glazed_terracotta_tiles.png new file mode 100644 index 00000000..e59a09cf Binary files /dev/null and b/public/textures/chipped/purple_glazed_terracotta_tiles.png differ diff --git a/public/textures/chipped/purple_paper_lantern.png b/public/textures/chipped/purple_paper_lantern.png new file mode 100644 index 00000000..dac84484 Binary files /dev/null and b/public/textures/chipped/purple_paper_lantern.png differ diff --git a/public/textures/chipped/purple_terracotta_bricks.png b/public/textures/chipped/purple_terracotta_bricks.png new file mode 100644 index 00000000..fcd1537b Binary files /dev/null and b/public/textures/chipped/purple_terracotta_bricks.png differ diff --git a/public/textures/chipped/purple_terracotta_column.png b/public/textures/chipped/purple_terracotta_column.png new file mode 100644 index 00000000..35d0bca7 Binary files /dev/null and b/public/textures/chipped/purple_terracotta_column.png differ diff --git a/public/textures/chipped/purple_terracotta_pillar.png b/public/textures/chipped/purple_terracotta_pillar.png new file mode 100644 index 00000000..73e79625 Binary files /dev/null and b/public/textures/chipped/purple_terracotta_pillar.png differ diff --git a/public/textures/chipped/purple_terracotta_tile.png b/public/textures/chipped/purple_terracotta_tile.png new file mode 100644 index 00000000..1f2f3938 Binary files /dev/null and b/public/textures/chipped/purple_terracotta_tile.png differ diff --git a/public/textures/chipped/purple_terracotta_tiles.png b/public/textures/chipped/purple_terracotta_tiles.png new file mode 100644 index 00000000..546445ef Binary files /dev/null and b/public/textures/chipped/purple_terracotta_tiles.png differ diff --git a/public/textures/chipped/purpur_block_bricks.png b/public/textures/chipped/purpur_block_bricks.png new file mode 100644 index 00000000..0d7900a4 Binary files /dev/null and b/public/textures/chipped/purpur_block_bricks.png differ diff --git a/public/textures/chipped/purpur_block_mini_tiles.png b/public/textures/chipped/purpur_block_mini_tiles.png new file mode 100644 index 00000000..fad8f81e Binary files /dev/null and b/public/textures/chipped/purpur_block_mini_tiles.png differ diff --git a/public/textures/chipped/purpur_block_pillar.png b/public/textures/chipped/purpur_block_pillar.png new file mode 100644 index 00000000..8ab05ec5 Binary files /dev/null and b/public/textures/chipped/purpur_block_pillar.png differ diff --git a/public/textures/chipped/purpur_block_pillar_top.png b/public/textures/chipped/purpur_block_pillar_top.png new file mode 100644 index 00000000..82af486a Binary files /dev/null and b/public/textures/chipped/purpur_block_pillar_top.png differ diff --git a/public/textures/chipped/purpur_block_scales.png b/public/textures/chipped/purpur_block_scales.png new file mode 100644 index 00000000..327a5600 Binary files /dev/null and b/public/textures/chipped/purpur_block_scales.png differ diff --git a/public/textures/chipped/quad_mud.png b/public/textures/chipped/quad_mud.png new file mode 100644 index 00000000..f8e82c9e Binary files /dev/null and b/public/textures/chipped/quad_mud.png differ diff --git a/public/textures/chipped/quad_mud_bricks.png b/public/textures/chipped/quad_mud_bricks.png new file mode 100644 index 00000000..5cacbb18 Binary files /dev/null and b/public/textures/chipped/quad_mud_bricks.png differ diff --git a/public/textures/chipped/quad_packed_mud.png b/public/textures/chipped/quad_packed_mud.png new file mode 100644 index 00000000..d6c3b95c Binary files /dev/null and b/public/textures/chipped/quad_packed_mud.png differ diff --git a/public/textures/chipped/quartz_block_bricks.png b/public/textures/chipped/quartz_block_bricks.png new file mode 100644 index 00000000..dc6a2cdc Binary files /dev/null and b/public/textures/chipped/quartz_block_bricks.png differ diff --git a/public/textures/chipped/quartz_block_mini_tiles.png b/public/textures/chipped/quartz_block_mini_tiles.png new file mode 100644 index 00000000..91a78527 Binary files /dev/null and b/public/textures/chipped/quartz_block_mini_tiles.png differ diff --git a/public/textures/chipped/quartz_block_pillar.png b/public/textures/chipped/quartz_block_pillar.png new file mode 100644 index 00000000..59725060 Binary files /dev/null and b/public/textures/chipped/quartz_block_pillar.png differ diff --git a/public/textures/chipped/quartz_block_scales.png b/public/textures/chipped/quartz_block_scales.png new file mode 100644 index 00000000..3e59aedc Binary files /dev/null and b/public/textures/chipped/quartz_block_scales.png differ diff --git a/public/textures/chipped/railed_acacia_planks.png b/public/textures/chipped/railed_acacia_planks.png new file mode 100644 index 00000000..9a49211a Binary files /dev/null and b/public/textures/chipped/railed_acacia_planks.png differ diff --git a/public/textures/chipped/railed_bamboo_planks.png b/public/textures/chipped/railed_bamboo_planks.png new file mode 100644 index 00000000..3392146c Binary files /dev/null and b/public/textures/chipped/railed_bamboo_planks.png differ diff --git a/public/textures/chipped/railed_birch_planks.png b/public/textures/chipped/railed_birch_planks.png new file mode 100644 index 00000000..8290879d Binary files /dev/null and b/public/textures/chipped/railed_birch_planks.png differ diff --git a/public/textures/chipped/railed_black_concrete.png b/public/textures/chipped/railed_black_concrete.png new file mode 100644 index 00000000..0d863898 Binary files /dev/null and b/public/textures/chipped/railed_black_concrete.png differ diff --git a/public/textures/chipped/railed_blue_concrete.png b/public/textures/chipped/railed_blue_concrete.png new file mode 100644 index 00000000..9fac0a81 Binary files /dev/null and b/public/textures/chipped/railed_blue_concrete.png differ diff --git a/public/textures/chipped/railed_brown_concrete.png b/public/textures/chipped/railed_brown_concrete.png new file mode 100644 index 00000000..9e8d1e77 Binary files /dev/null and b/public/textures/chipped/railed_brown_concrete.png differ diff --git a/public/textures/chipped/railed_cherry_planks.png b/public/textures/chipped/railed_cherry_planks.png new file mode 100644 index 00000000..f3f7b6cd Binary files /dev/null and b/public/textures/chipped/railed_cherry_planks.png differ diff --git a/public/textures/chipped/railed_crimson_planks.png b/public/textures/chipped/railed_crimson_planks.png new file mode 100644 index 00000000..89b690fd Binary files /dev/null and b/public/textures/chipped/railed_crimson_planks.png differ diff --git a/public/textures/chipped/railed_cyan_concrete.png b/public/textures/chipped/railed_cyan_concrete.png new file mode 100644 index 00000000..80e2e5a2 Binary files /dev/null and b/public/textures/chipped/railed_cyan_concrete.png differ diff --git a/public/textures/chipped/railed_dark_oak_planks.png b/public/textures/chipped/railed_dark_oak_planks.png new file mode 100644 index 00000000..89934a5a Binary files /dev/null and b/public/textures/chipped/railed_dark_oak_planks.png differ diff --git a/public/textures/chipped/railed_gray_concrete.png b/public/textures/chipped/railed_gray_concrete.png new file mode 100644 index 00000000..c833155d Binary files /dev/null and b/public/textures/chipped/railed_gray_concrete.png differ diff --git a/public/textures/chipped/railed_green_concrete.png b/public/textures/chipped/railed_green_concrete.png new file mode 100644 index 00000000..94ef216d Binary files /dev/null and b/public/textures/chipped/railed_green_concrete.png differ diff --git a/public/textures/chipped/railed_iron_bars.png b/public/textures/chipped/railed_iron_bars.png new file mode 100644 index 00000000..70f53186 Binary files /dev/null and b/public/textures/chipped/railed_iron_bars.png differ diff --git a/public/textures/chipped/railed_jungle_planks.png b/public/textures/chipped/railed_jungle_planks.png new file mode 100644 index 00000000..1668bd1f Binary files /dev/null and b/public/textures/chipped/railed_jungle_planks.png differ diff --git a/public/textures/chipped/railed_ladder.png b/public/textures/chipped/railed_ladder.png new file mode 100644 index 00000000..e26b6122 Binary files /dev/null and b/public/textures/chipped/railed_ladder.png differ diff --git a/public/textures/chipped/railed_light_blue_concrete.png b/public/textures/chipped/railed_light_blue_concrete.png new file mode 100644 index 00000000..6c273ddf Binary files /dev/null and b/public/textures/chipped/railed_light_blue_concrete.png differ diff --git a/public/textures/chipped/railed_light_gray_concrete.png b/public/textures/chipped/railed_light_gray_concrete.png new file mode 100644 index 00000000..9bb07a77 Binary files /dev/null and b/public/textures/chipped/railed_light_gray_concrete.png differ diff --git a/public/textures/chipped/railed_lime_concrete.png b/public/textures/chipped/railed_lime_concrete.png new file mode 100644 index 00000000..31fb8dec Binary files /dev/null and b/public/textures/chipped/railed_lime_concrete.png differ diff --git a/public/textures/chipped/railed_magenta_concrete.png b/public/textures/chipped/railed_magenta_concrete.png new file mode 100644 index 00000000..08bb96df Binary files /dev/null and b/public/textures/chipped/railed_magenta_concrete.png differ diff --git a/public/textures/chipped/railed_mangrove_planks.png b/public/textures/chipped/railed_mangrove_planks.png new file mode 100644 index 00000000..dee0a15d Binary files /dev/null and b/public/textures/chipped/railed_mangrove_planks.png differ diff --git a/public/textures/chipped/railed_oak_planks.png b/public/textures/chipped/railed_oak_planks.png new file mode 100644 index 00000000..a3b83a60 Binary files /dev/null and b/public/textures/chipped/railed_oak_planks.png differ diff --git a/public/textures/chipped/railed_orange_concrete.png b/public/textures/chipped/railed_orange_concrete.png new file mode 100644 index 00000000..74db4d98 Binary files /dev/null and b/public/textures/chipped/railed_orange_concrete.png differ diff --git a/public/textures/chipped/railed_pink_concrete.png b/public/textures/chipped/railed_pink_concrete.png new file mode 100644 index 00000000..4959ad24 Binary files /dev/null and b/public/textures/chipped/railed_pink_concrete.png differ diff --git a/public/textures/chipped/railed_purple_concrete.png b/public/textures/chipped/railed_purple_concrete.png new file mode 100644 index 00000000..d6a278c6 Binary files /dev/null and b/public/textures/chipped/railed_purple_concrete.png differ diff --git a/public/textures/chipped/railed_red_concrete.png b/public/textures/chipped/railed_red_concrete.png new file mode 100644 index 00000000..b25e5a60 Binary files /dev/null and b/public/textures/chipped/railed_red_concrete.png differ diff --git a/public/textures/chipped/railed_spruce_planks.png b/public/textures/chipped/railed_spruce_planks.png new file mode 100644 index 00000000..8e8b5cc1 Binary files /dev/null and b/public/textures/chipped/railed_spruce_planks.png differ diff --git a/public/textures/chipped/railed_warped_planks.png b/public/textures/chipped/railed_warped_planks.png new file mode 100644 index 00000000..983d96ad Binary files /dev/null and b/public/textures/chipped/railed_warped_planks.png differ diff --git a/public/textures/chipped/railed_white_concrete.png b/public/textures/chipped/railed_white_concrete.png new file mode 100644 index 00000000..ac10a0c3 Binary files /dev/null and b/public/textures/chipped/railed_white_concrete.png differ diff --git a/public/textures/chipped/railed_yellow_concrete.png b/public/textures/chipped/railed_yellow_concrete.png new file mode 100644 index 00000000..c60d36e3 Binary files /dev/null and b/public/textures/chipped/railed_yellow_concrete.png differ diff --git a/public/textures/chipped/raster_black_stained_glass.png b/public/textures/chipped/raster_black_stained_glass.png new file mode 100644 index 00000000..98477bab Binary files /dev/null and b/public/textures/chipped/raster_black_stained_glass.png differ diff --git a/public/textures/chipped/raster_black_stained_glass_pane.png b/public/textures/chipped/raster_black_stained_glass_pane.png new file mode 100644 index 00000000..906d866f Binary files /dev/null and b/public/textures/chipped/raster_black_stained_glass_pane.png differ diff --git a/public/textures/chipped/raster_blue_stained_glass.png b/public/textures/chipped/raster_blue_stained_glass.png new file mode 100644 index 00000000..96339f82 Binary files /dev/null and b/public/textures/chipped/raster_blue_stained_glass.png differ diff --git a/public/textures/chipped/raster_blue_stained_glass_pane.png b/public/textures/chipped/raster_blue_stained_glass_pane.png new file mode 100644 index 00000000..1df55962 Binary files /dev/null and b/public/textures/chipped/raster_blue_stained_glass_pane.png differ diff --git a/public/textures/chipped/raster_brown_stained_glass.png b/public/textures/chipped/raster_brown_stained_glass.png new file mode 100644 index 00000000..b71de2c2 Binary files /dev/null and b/public/textures/chipped/raster_brown_stained_glass.png differ diff --git a/public/textures/chipped/raster_brown_stained_glass_pane.png b/public/textures/chipped/raster_brown_stained_glass_pane.png new file mode 100644 index 00000000..2f8d1cd2 Binary files /dev/null and b/public/textures/chipped/raster_brown_stained_glass_pane.png differ diff --git a/public/textures/chipped/raster_cyan_stained_glass.png b/public/textures/chipped/raster_cyan_stained_glass.png new file mode 100644 index 00000000..5251cafb Binary files /dev/null and b/public/textures/chipped/raster_cyan_stained_glass.png differ diff --git a/public/textures/chipped/raster_cyan_stained_glass_pane.png b/public/textures/chipped/raster_cyan_stained_glass_pane.png new file mode 100644 index 00000000..b647492d Binary files /dev/null and b/public/textures/chipped/raster_cyan_stained_glass_pane.png differ diff --git a/public/textures/chipped/raster_gray_stained_glass.png b/public/textures/chipped/raster_gray_stained_glass.png new file mode 100644 index 00000000..a7f157c6 Binary files /dev/null and b/public/textures/chipped/raster_gray_stained_glass.png differ diff --git a/public/textures/chipped/raster_gray_stained_glass_pane.png b/public/textures/chipped/raster_gray_stained_glass_pane.png new file mode 100644 index 00000000..5b1abe75 Binary files /dev/null and b/public/textures/chipped/raster_gray_stained_glass_pane.png differ diff --git a/public/textures/chipped/raster_green_stained_glass.png b/public/textures/chipped/raster_green_stained_glass.png new file mode 100644 index 00000000..39b76779 Binary files /dev/null and b/public/textures/chipped/raster_green_stained_glass.png differ diff --git a/public/textures/chipped/raster_green_stained_glass_pane.png b/public/textures/chipped/raster_green_stained_glass_pane.png new file mode 100644 index 00000000..3b7ad3b5 Binary files /dev/null and b/public/textures/chipped/raster_green_stained_glass_pane.png differ diff --git a/public/textures/chipped/raster_leaded_glass.png b/public/textures/chipped/raster_leaded_glass.png new file mode 100644 index 00000000..d69b3d8a Binary files /dev/null and b/public/textures/chipped/raster_leaded_glass.png differ diff --git a/public/textures/chipped/raster_leaded_glass_pane.png b/public/textures/chipped/raster_leaded_glass_pane.png new file mode 100644 index 00000000..a696d1d1 Binary files /dev/null and b/public/textures/chipped/raster_leaded_glass_pane.png differ diff --git a/public/textures/chipped/raster_light_blue_stained_glass.png b/public/textures/chipped/raster_light_blue_stained_glass.png new file mode 100644 index 00000000..62b422b5 Binary files /dev/null and b/public/textures/chipped/raster_light_blue_stained_glass.png differ diff --git a/public/textures/chipped/raster_light_blue_stained_glass_pane.png b/public/textures/chipped/raster_light_blue_stained_glass_pane.png new file mode 100644 index 00000000..2533ac4d Binary files /dev/null and b/public/textures/chipped/raster_light_blue_stained_glass_pane.png differ diff --git a/public/textures/chipped/raster_light_gray_stained_glass.png b/public/textures/chipped/raster_light_gray_stained_glass.png new file mode 100644 index 00000000..ad2044bc Binary files /dev/null and b/public/textures/chipped/raster_light_gray_stained_glass.png differ diff --git a/public/textures/chipped/raster_light_gray_stained_glass_pane.png b/public/textures/chipped/raster_light_gray_stained_glass_pane.png new file mode 100644 index 00000000..399fd039 Binary files /dev/null and b/public/textures/chipped/raster_light_gray_stained_glass_pane.png differ diff --git a/public/textures/chipped/raster_lime_stained_glass.png b/public/textures/chipped/raster_lime_stained_glass.png new file mode 100644 index 00000000..2bde2895 Binary files /dev/null and b/public/textures/chipped/raster_lime_stained_glass.png differ diff --git a/public/textures/chipped/raster_lime_stained_glass_pane.png b/public/textures/chipped/raster_lime_stained_glass_pane.png new file mode 100644 index 00000000..aa5c3976 Binary files /dev/null and b/public/textures/chipped/raster_lime_stained_glass_pane.png differ diff --git a/public/textures/chipped/raster_magenta_stained_glass.png b/public/textures/chipped/raster_magenta_stained_glass.png new file mode 100644 index 00000000..dfd79cc7 Binary files /dev/null and b/public/textures/chipped/raster_magenta_stained_glass.png differ diff --git a/public/textures/chipped/raster_magenta_stained_glass_pane.png b/public/textures/chipped/raster_magenta_stained_glass_pane.png new file mode 100644 index 00000000..8524d214 Binary files /dev/null and b/public/textures/chipped/raster_magenta_stained_glass_pane.png differ diff --git a/public/textures/chipped/raster_orange_stained_glass.png b/public/textures/chipped/raster_orange_stained_glass.png new file mode 100644 index 00000000..556909e1 Binary files /dev/null and b/public/textures/chipped/raster_orange_stained_glass.png differ diff --git a/public/textures/chipped/raster_orange_stained_glass_pane.png b/public/textures/chipped/raster_orange_stained_glass_pane.png new file mode 100644 index 00000000..76ccffa1 Binary files /dev/null and b/public/textures/chipped/raster_orange_stained_glass_pane.png differ diff --git a/public/textures/chipped/raster_pink_stained_glass.png b/public/textures/chipped/raster_pink_stained_glass.png new file mode 100644 index 00000000..89c39d65 Binary files /dev/null and b/public/textures/chipped/raster_pink_stained_glass.png differ diff --git a/public/textures/chipped/raster_pink_stained_glass_pane.png b/public/textures/chipped/raster_pink_stained_glass_pane.png new file mode 100644 index 00000000..87708441 Binary files /dev/null and b/public/textures/chipped/raster_pink_stained_glass_pane.png differ diff --git a/public/textures/chipped/raster_purple_stained_glass.png b/public/textures/chipped/raster_purple_stained_glass.png new file mode 100644 index 00000000..eb0a64e4 Binary files /dev/null and b/public/textures/chipped/raster_purple_stained_glass.png differ diff --git a/public/textures/chipped/raster_purple_stained_glass_pane.png b/public/textures/chipped/raster_purple_stained_glass_pane.png new file mode 100644 index 00000000..6c6b9210 Binary files /dev/null and b/public/textures/chipped/raster_purple_stained_glass_pane.png differ diff --git a/public/textures/chipped/raster_red_stained_glass.png b/public/textures/chipped/raster_red_stained_glass.png new file mode 100644 index 00000000..3949da47 Binary files /dev/null and b/public/textures/chipped/raster_red_stained_glass.png differ diff --git a/public/textures/chipped/raster_red_stained_glass_pane.png b/public/textures/chipped/raster_red_stained_glass_pane.png new file mode 100644 index 00000000..d5c99a82 Binary files /dev/null and b/public/textures/chipped/raster_red_stained_glass_pane.png differ diff --git a/public/textures/chipped/raster_white_stained_glass.png b/public/textures/chipped/raster_white_stained_glass.png new file mode 100644 index 00000000..1c15612d Binary files /dev/null and b/public/textures/chipped/raster_white_stained_glass.png differ diff --git a/public/textures/chipped/raster_white_stained_glass_pane.png b/public/textures/chipped/raster_white_stained_glass_pane.png new file mode 100644 index 00000000..ef13bb94 Binary files /dev/null and b/public/textures/chipped/raster_white_stained_glass_pane.png differ diff --git a/public/textures/chipped/raster_yellow_stained_glass.png b/public/textures/chipped/raster_yellow_stained_glass.png new file mode 100644 index 00000000..560cbe67 Binary files /dev/null and b/public/textures/chipped/raster_yellow_stained_glass.png differ diff --git a/public/textures/chipped/raster_yellow_stained_glass_pane.png b/public/textures/chipped/raster_yellow_stained_glass_pane.png new file mode 100644 index 00000000..6898967d Binary files /dev/null and b/public/textures/chipped/raster_yellow_stained_glass_pane.png differ diff --git a/public/textures/chipped/raw_copper_block_bricks.png b/public/textures/chipped/raw_copper_block_bricks.png new file mode 100644 index 00000000..6f16e3a2 Binary files /dev/null and b/public/textures/chipped/raw_copper_block_bricks.png differ diff --git a/public/textures/chipped/raw_copper_block_mini_tiles.png b/public/textures/chipped/raw_copper_block_mini_tiles.png new file mode 100644 index 00000000..cdef09b8 Binary files /dev/null and b/public/textures/chipped/raw_copper_block_mini_tiles.png differ diff --git a/public/textures/chipped/raw_copper_block_pillar.png b/public/textures/chipped/raw_copper_block_pillar.png new file mode 100644 index 00000000..0db270f5 Binary files /dev/null and b/public/textures/chipped/raw_copper_block_pillar.png differ diff --git a/public/textures/chipped/raw_copper_block_pillar_top.png b/public/textures/chipped/raw_copper_block_pillar_top.png new file mode 100644 index 00000000..06656392 Binary files /dev/null and b/public/textures/chipped/raw_copper_block_pillar_top.png differ diff --git a/public/textures/chipped/raw_copper_block_scales.png b/public/textures/chipped/raw_copper_block_scales.png new file mode 100644 index 00000000..71086308 Binary files /dev/null and b/public/textures/chipped/raw_copper_block_scales.png differ diff --git a/public/textures/chipped/raw_gold_block_bricks.png b/public/textures/chipped/raw_gold_block_bricks.png new file mode 100644 index 00000000..335d4bcd Binary files /dev/null and b/public/textures/chipped/raw_gold_block_bricks.png differ diff --git a/public/textures/chipped/raw_gold_block_mini_tiles.png b/public/textures/chipped/raw_gold_block_mini_tiles.png new file mode 100644 index 00000000..bf8f88f0 Binary files /dev/null and b/public/textures/chipped/raw_gold_block_mini_tiles.png differ diff --git a/public/textures/chipped/raw_gold_block_pillar.png b/public/textures/chipped/raw_gold_block_pillar.png new file mode 100644 index 00000000..84fe65a5 Binary files /dev/null and b/public/textures/chipped/raw_gold_block_pillar.png differ diff --git a/public/textures/chipped/raw_gold_block_pillar_top.png b/public/textures/chipped/raw_gold_block_pillar_top.png new file mode 100644 index 00000000..b84b578d Binary files /dev/null and b/public/textures/chipped/raw_gold_block_pillar_top.png differ diff --git a/public/textures/chipped/raw_gold_block_scales.png b/public/textures/chipped/raw_gold_block_scales.png new file mode 100644 index 00000000..cd7cf7b6 Binary files /dev/null and b/public/textures/chipped/raw_gold_block_scales.png differ diff --git a/public/textures/chipped/raw_iron_block_bricks.png b/public/textures/chipped/raw_iron_block_bricks.png new file mode 100644 index 00000000..3a1a41ec Binary files /dev/null and b/public/textures/chipped/raw_iron_block_bricks.png differ diff --git a/public/textures/chipped/raw_iron_block_mini_tiles.png b/public/textures/chipped/raw_iron_block_mini_tiles.png new file mode 100644 index 00000000..53778b78 Binary files /dev/null and b/public/textures/chipped/raw_iron_block_mini_tiles.png differ diff --git a/public/textures/chipped/raw_iron_block_pillar.png b/public/textures/chipped/raw_iron_block_pillar.png new file mode 100644 index 00000000..54de2133 Binary files /dev/null and b/public/textures/chipped/raw_iron_block_pillar.png differ diff --git a/public/textures/chipped/raw_iron_block_pillar_top.png b/public/textures/chipped/raw_iron_block_pillar_top.png new file mode 100644 index 00000000..365c63e6 Binary files /dev/null and b/public/textures/chipped/raw_iron_block_pillar_top.png differ diff --git a/public/textures/chipped/raw_iron_block_scales.png b/public/textures/chipped/raw_iron_block_scales.png new file mode 100644 index 00000000..d738fc90 Binary files /dev/null and b/public/textures/chipped/raw_iron_block_scales.png differ diff --git a/public/textures/chipped/reanimated_soul_sand.png b/public/textures/chipped/reanimated_soul_sand.png new file mode 100644 index 00000000..88a1db53 Binary files /dev/null and b/public/textures/chipped/reanimated_soul_sand.png differ diff --git a/public/textures/chipped/rectangle_black_carpet.png b/public/textures/chipped/rectangle_black_carpet.png new file mode 100644 index 00000000..c898a3d3 Binary files /dev/null and b/public/textures/chipped/rectangle_black_carpet.png differ diff --git a/public/textures/chipped/rectangle_black_wool.png b/public/textures/chipped/rectangle_black_wool.png new file mode 100644 index 00000000..853dca43 Binary files /dev/null and b/public/textures/chipped/rectangle_black_wool.png differ diff --git a/public/textures/chipped/rectangle_blue_carpet.png b/public/textures/chipped/rectangle_blue_carpet.png new file mode 100644 index 00000000..ddc2ce9b Binary files /dev/null and b/public/textures/chipped/rectangle_blue_carpet.png differ diff --git a/public/textures/chipped/rectangle_blue_wool.png b/public/textures/chipped/rectangle_blue_wool.png new file mode 100644 index 00000000..47216da2 Binary files /dev/null and b/public/textures/chipped/rectangle_blue_wool.png differ diff --git a/public/textures/chipped/rectangle_brown_carpet.png b/public/textures/chipped/rectangle_brown_carpet.png new file mode 100644 index 00000000..265c3260 Binary files /dev/null and b/public/textures/chipped/rectangle_brown_carpet.png differ diff --git a/public/textures/chipped/rectangle_brown_wool.png b/public/textures/chipped/rectangle_brown_wool.png new file mode 100644 index 00000000..9c6a1805 Binary files /dev/null and b/public/textures/chipped/rectangle_brown_wool.png differ diff --git a/public/textures/chipped/rectangle_cyan_carpet.png b/public/textures/chipped/rectangle_cyan_carpet.png new file mode 100644 index 00000000..3065d53e Binary files /dev/null and b/public/textures/chipped/rectangle_cyan_carpet.png differ diff --git a/public/textures/chipped/rectangle_cyan_wool.png b/public/textures/chipped/rectangle_cyan_wool.png new file mode 100644 index 00000000..42f3d474 Binary files /dev/null and b/public/textures/chipped/rectangle_cyan_wool.png differ diff --git a/public/textures/chipped/rectangle_gray_carpet.png b/public/textures/chipped/rectangle_gray_carpet.png new file mode 100644 index 00000000..e4a447d2 Binary files /dev/null and b/public/textures/chipped/rectangle_gray_carpet.png differ diff --git a/public/textures/chipped/rectangle_gray_wool.png b/public/textures/chipped/rectangle_gray_wool.png new file mode 100644 index 00000000..e591172d Binary files /dev/null and b/public/textures/chipped/rectangle_gray_wool.png differ diff --git a/public/textures/chipped/rectangle_green_carpet.png b/public/textures/chipped/rectangle_green_carpet.png new file mode 100644 index 00000000..2a98ccf4 Binary files /dev/null and b/public/textures/chipped/rectangle_green_carpet.png differ diff --git a/public/textures/chipped/rectangle_green_wool.png b/public/textures/chipped/rectangle_green_wool.png new file mode 100644 index 00000000..2b9713df Binary files /dev/null and b/public/textures/chipped/rectangle_green_wool.png differ diff --git a/public/textures/chipped/rectangle_light_blue_carpet.png b/public/textures/chipped/rectangle_light_blue_carpet.png new file mode 100644 index 00000000..e0e08170 Binary files /dev/null and b/public/textures/chipped/rectangle_light_blue_carpet.png differ diff --git a/public/textures/chipped/rectangle_light_blue_wool.png b/public/textures/chipped/rectangle_light_blue_wool.png new file mode 100644 index 00000000..3fab3712 Binary files /dev/null and b/public/textures/chipped/rectangle_light_blue_wool.png differ diff --git a/public/textures/chipped/rectangle_light_gray_carpet.png b/public/textures/chipped/rectangle_light_gray_carpet.png new file mode 100644 index 00000000..bc8eb64b Binary files /dev/null and b/public/textures/chipped/rectangle_light_gray_carpet.png differ diff --git a/public/textures/chipped/rectangle_light_gray_wool.png b/public/textures/chipped/rectangle_light_gray_wool.png new file mode 100644 index 00000000..2b831e94 Binary files /dev/null and b/public/textures/chipped/rectangle_light_gray_wool.png differ diff --git a/public/textures/chipped/rectangle_lime_carpet.png b/public/textures/chipped/rectangle_lime_carpet.png new file mode 100644 index 00000000..89774f0c Binary files /dev/null and b/public/textures/chipped/rectangle_lime_carpet.png differ diff --git a/public/textures/chipped/rectangle_lime_wool.png b/public/textures/chipped/rectangle_lime_wool.png new file mode 100644 index 00000000..2131b628 Binary files /dev/null and b/public/textures/chipped/rectangle_lime_wool.png differ diff --git a/public/textures/chipped/rectangle_magenta_carpet.png b/public/textures/chipped/rectangle_magenta_carpet.png new file mode 100644 index 00000000..5a881af2 Binary files /dev/null and b/public/textures/chipped/rectangle_magenta_carpet.png differ diff --git a/public/textures/chipped/rectangle_magenta_wool.png b/public/textures/chipped/rectangle_magenta_wool.png new file mode 100644 index 00000000..640078d8 Binary files /dev/null and b/public/textures/chipped/rectangle_magenta_wool.png differ diff --git a/public/textures/chipped/rectangle_orange_carpet.png b/public/textures/chipped/rectangle_orange_carpet.png new file mode 100644 index 00000000..b77ed5b6 Binary files /dev/null and b/public/textures/chipped/rectangle_orange_carpet.png differ diff --git a/public/textures/chipped/rectangle_orange_wool.png b/public/textures/chipped/rectangle_orange_wool.png new file mode 100644 index 00000000..dbadd416 Binary files /dev/null and b/public/textures/chipped/rectangle_orange_wool.png differ diff --git a/public/textures/chipped/rectangle_pink_carpet.png b/public/textures/chipped/rectangle_pink_carpet.png new file mode 100644 index 00000000..bef66bce Binary files /dev/null and b/public/textures/chipped/rectangle_pink_carpet.png differ diff --git a/public/textures/chipped/rectangle_pink_wool.png b/public/textures/chipped/rectangle_pink_wool.png new file mode 100644 index 00000000..6c06d756 Binary files /dev/null and b/public/textures/chipped/rectangle_pink_wool.png differ diff --git a/public/textures/chipped/rectangle_purple_carpet.png b/public/textures/chipped/rectangle_purple_carpet.png new file mode 100644 index 00000000..9f45f4c2 Binary files /dev/null and b/public/textures/chipped/rectangle_purple_carpet.png differ diff --git a/public/textures/chipped/rectangle_purple_wool.png b/public/textures/chipped/rectangle_purple_wool.png new file mode 100644 index 00000000..6cded97e Binary files /dev/null and b/public/textures/chipped/rectangle_purple_wool.png differ diff --git a/public/textures/chipped/rectangle_red_carpet.png b/public/textures/chipped/rectangle_red_carpet.png new file mode 100644 index 00000000..9865440d Binary files /dev/null and b/public/textures/chipped/rectangle_red_carpet.png differ diff --git a/public/textures/chipped/rectangle_red_wool.png b/public/textures/chipped/rectangle_red_wool.png new file mode 100644 index 00000000..64f5b500 Binary files /dev/null and b/public/textures/chipped/rectangle_red_wool.png differ diff --git a/public/textures/chipped/rectangle_white_carpet.png b/public/textures/chipped/rectangle_white_carpet.png new file mode 100644 index 00000000..baa69cad Binary files /dev/null and b/public/textures/chipped/rectangle_white_carpet.png differ diff --git a/public/textures/chipped/rectangle_white_wool.png b/public/textures/chipped/rectangle_white_wool.png new file mode 100644 index 00000000..62885d2c Binary files /dev/null and b/public/textures/chipped/rectangle_white_wool.png differ diff --git a/public/textures/chipped/rectangle_yellow_carpet.png b/public/textures/chipped/rectangle_yellow_carpet.png new file mode 100644 index 00000000..58ad6971 Binary files /dev/null and b/public/textures/chipped/rectangle_yellow_carpet.png differ diff --git a/public/textures/chipped/rectangle_yellow_wool.png b/public/textures/chipped/rectangle_yellow_wool.png new file mode 100644 index 00000000..8204c867 Binary files /dev/null and b/public/textures/chipped/rectangle_yellow_wool.png differ diff --git a/public/textures/chipped/red_acacia_leaves.png b/public/textures/chipped/red_acacia_leaves.png new file mode 100644 index 00000000..f3a23de7 Binary files /dev/null and b/public/textures/chipped/red_acacia_leaves.png differ diff --git a/public/textures/chipped/red_birch_leaves.png b/public/textures/chipped/red_birch_leaves.png new file mode 100644 index 00000000..26efaede Binary files /dev/null and b/public/textures/chipped/red_birch_leaves.png differ diff --git a/public/textures/chipped/red_concrete_bricks.png b/public/textures/chipped/red_concrete_bricks.png new file mode 100644 index 00000000..4b55d5eb Binary files /dev/null and b/public/textures/chipped/red_concrete_bricks.png differ diff --git a/public/textures/chipped/red_concrete_panel.png b/public/textures/chipped/red_concrete_panel.png new file mode 100644 index 00000000..84745316 Binary files /dev/null and b/public/textures/chipped/red_concrete_panel.png differ diff --git a/public/textures/chipped/red_concrete_pillar.png b/public/textures/chipped/red_concrete_pillar.png new file mode 100644 index 00000000..3f290b94 Binary files /dev/null and b/public/textures/chipped/red_concrete_pillar.png differ diff --git a/public/textures/chipped/red_concrete_tiles.png b/public/textures/chipped/red_concrete_tiles.png new file mode 100644 index 00000000..aa607e0d Binary files /dev/null and b/public/textures/chipped/red_concrete_tiles.png differ diff --git a/public/textures/chipped/red_dark_oak_leaves.png b/public/textures/chipped/red_dark_oak_leaves.png new file mode 100644 index 00000000..69f38a2c Binary files /dev/null and b/public/textures/chipped/red_dark_oak_leaves.png differ diff --git a/public/textures/chipped/red_glazed_terracotta_pillar_sides.png b/public/textures/chipped/red_glazed_terracotta_pillar_sides.png new file mode 100644 index 00000000..754d0318 Binary files /dev/null and b/public/textures/chipped/red_glazed_terracotta_pillar_sides.png differ diff --git a/public/textures/chipped/red_glazed_terracotta_pillar_top.png b/public/textures/chipped/red_glazed_terracotta_pillar_top.png new file mode 100644 index 00000000..b7148f67 Binary files /dev/null and b/public/textures/chipped/red_glazed_terracotta_pillar_top.png differ diff --git a/public/textures/chipped/red_glazed_terracotta_smooth_tiles.png b/public/textures/chipped/red_glazed_terracotta_smooth_tiles.png new file mode 100644 index 00000000..0016f4e5 Binary files /dev/null and b/public/textures/chipped/red_glazed_terracotta_smooth_tiles.png differ diff --git a/public/textures/chipped/red_glazed_terracotta_tiles.png b/public/textures/chipped/red_glazed_terracotta_tiles.png new file mode 100644 index 00000000..44e6ccf7 Binary files /dev/null and b/public/textures/chipped/red_glazed_terracotta_tiles.png differ diff --git a/public/textures/chipped/red_jungle_leaves.png b/public/textures/chipped/red_jungle_leaves.png new file mode 100644 index 00000000..627fcbe3 Binary files /dev/null and b/public/textures/chipped/red_jungle_leaves.png differ diff --git a/public/textures/chipped/red_moss_block.png b/public/textures/chipped/red_moss_block.png new file mode 100644 index 00000000..0eebe40d Binary files /dev/null and b/public/textures/chipped/red_moss_block.png differ diff --git a/public/textures/chipped/red_mushroom_bulb.png b/public/textures/chipped/red_mushroom_bulb.png new file mode 100644 index 00000000..54126bb2 Binary files /dev/null and b/public/textures/chipped/red_mushroom_bulb.png differ diff --git a/public/textures/chipped/red_mushroom_bushel.png b/public/textures/chipped/red_mushroom_bushel.png new file mode 100644 index 00000000..295112bc Binary files /dev/null and b/public/textures/chipped/red_mushroom_bushel.png differ diff --git a/public/textures/chipped/red_mushroom_cluster.png b/public/textures/chipped/red_mushroom_cluster.png new file mode 100644 index 00000000..c20ca77c Binary files /dev/null and b/public/textures/chipped/red_mushroom_cluster.png differ diff --git a/public/textures/chipped/red_mushroom_trio.png b/public/textures/chipped/red_mushroom_trio.png new file mode 100644 index 00000000..333307bc Binary files /dev/null and b/public/textures/chipped/red_mushroom_trio.png differ diff --git a/public/textures/chipped/red_nether_bricks_bricks.png b/public/textures/chipped/red_nether_bricks_bricks.png new file mode 100644 index 00000000..4575a209 Binary files /dev/null and b/public/textures/chipped/red_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/red_nether_bricks_mini_tiles.png b/public/textures/chipped/red_nether_bricks_mini_tiles.png new file mode 100644 index 00000000..34b61ffa Binary files /dev/null and b/public/textures/chipped/red_nether_bricks_mini_tiles.png differ diff --git a/public/textures/chipped/red_nether_bricks_pillar.png b/public/textures/chipped/red_nether_bricks_pillar.png new file mode 100644 index 00000000..1fb88922 Binary files /dev/null and b/public/textures/chipped/red_nether_bricks_pillar.png differ diff --git a/public/textures/chipped/red_nether_bricks_pillar_top.png b/public/textures/chipped/red_nether_bricks_pillar_top.png new file mode 100644 index 00000000..6db36567 Binary files /dev/null and b/public/textures/chipped/red_nether_bricks_pillar_top.png differ diff --git a/public/textures/chipped/red_nether_bricks_scales.png b/public/textures/chipped/red_nether_bricks_scales.png new file mode 100644 index 00000000..c6895910 Binary files /dev/null and b/public/textures/chipped/red_nether_bricks_scales.png differ diff --git a/public/textures/chipped/red_oak_leaves.png b/public/textures/chipped/red_oak_leaves.png new file mode 100644 index 00000000..69f38a2c Binary files /dev/null and b/public/textures/chipped/red_oak_leaves.png differ diff --git a/public/textures/chipped/red_paper_lantern.png b/public/textures/chipped/red_paper_lantern.png new file mode 100644 index 00000000..90dd22db Binary files /dev/null and b/public/textures/chipped/red_paper_lantern.png differ diff --git a/public/textures/chipped/red_sandstone_bricks.png b/public/textures/chipped/red_sandstone_bricks.png new file mode 100644 index 00000000..d35cf2dc Binary files /dev/null and b/public/textures/chipped/red_sandstone_bricks.png differ diff --git a/public/textures/chipped/red_sandstone_mini_tiles.png b/public/textures/chipped/red_sandstone_mini_tiles.png new file mode 100644 index 00000000..c71f99d8 Binary files /dev/null and b/public/textures/chipped/red_sandstone_mini_tiles.png differ diff --git a/public/textures/chipped/red_sandstone_pillar.png b/public/textures/chipped/red_sandstone_pillar.png new file mode 100644 index 00000000..d432e03e Binary files /dev/null and b/public/textures/chipped/red_sandstone_pillar.png differ diff --git a/public/textures/chipped/red_sandstone_pillar_top.png b/public/textures/chipped/red_sandstone_pillar_top.png new file mode 100644 index 00000000..1aa030c0 Binary files /dev/null and b/public/textures/chipped/red_sandstone_pillar_top.png differ diff --git a/public/textures/chipped/red_sandstone_scales.png b/public/textures/chipped/red_sandstone_scales.png new file mode 100644 index 00000000..1200d659 Binary files /dev/null and b/public/textures/chipped/red_sandstone_scales.png differ diff --git a/public/textures/chipped/red_spruce_leaves.png b/public/textures/chipped/red_spruce_leaves.png new file mode 100644 index 00000000..7db9f7b6 Binary files /dev/null and b/public/textures/chipped/red_spruce_leaves.png differ diff --git a/public/textures/chipped/red_terracotta_bricks.png b/public/textures/chipped/red_terracotta_bricks.png new file mode 100644 index 00000000..e3108be9 Binary files /dev/null and b/public/textures/chipped/red_terracotta_bricks.png differ diff --git a/public/textures/chipped/red_terracotta_column.png b/public/textures/chipped/red_terracotta_column.png new file mode 100644 index 00000000..44600f5e Binary files /dev/null and b/public/textures/chipped/red_terracotta_column.png differ diff --git a/public/textures/chipped/red_terracotta_pillar.png b/public/textures/chipped/red_terracotta_pillar.png new file mode 100644 index 00000000..0aa67a0e Binary files /dev/null and b/public/textures/chipped/red_terracotta_pillar.png differ diff --git a/public/textures/chipped/red_terracotta_tile.png b/public/textures/chipped/red_terracotta_tile.png new file mode 100644 index 00000000..8071f256 Binary files /dev/null and b/public/textures/chipped/red_terracotta_tile.png differ diff --git a/public/textures/chipped/red_terracotta_tiles.png b/public/textures/chipped/red_terracotta_tiles.png new file mode 100644 index 00000000..3fbd7690 Binary files /dev/null and b/public/textures/chipped/red_terracotta_tiles.png differ diff --git a/public/textures/chipped/redstone_block_bricks.png b/public/textures/chipped/redstone_block_bricks.png new file mode 100644 index 00000000..bbcd2557 Binary files /dev/null and b/public/textures/chipped/redstone_block_bricks.png differ diff --git a/public/textures/chipped/redstone_block_mini_tiles.png b/public/textures/chipped/redstone_block_mini_tiles.png new file mode 100644 index 00000000..73a78386 Binary files /dev/null and b/public/textures/chipped/redstone_block_mini_tiles.png differ diff --git a/public/textures/chipped/redstone_block_pillar.png b/public/textures/chipped/redstone_block_pillar.png new file mode 100644 index 00000000..19c3eb4c Binary files /dev/null and b/public/textures/chipped/redstone_block_pillar.png differ diff --git a/public/textures/chipped/redstone_block_pillar_top.png b/public/textures/chipped/redstone_block_pillar_top.png new file mode 100644 index 00000000..fc445bf4 Binary files /dev/null and b/public/textures/chipped/redstone_block_pillar_top.png differ diff --git a/public/textures/chipped/redstone_block_scales.png b/public/textures/chipped/redstone_block_scales.png new file mode 100644 index 00000000..f43aa0f9 Binary files /dev/null and b/public/textures/chipped/redstone_block_scales.png differ diff --git a/public/textures/chipped/reinforced_acacia_crate.png b/public/textures/chipped/reinforced_acacia_crate.png new file mode 100644 index 00000000..f5aa3b1e Binary files /dev/null and b/public/textures/chipped/reinforced_acacia_crate.png differ diff --git a/public/textures/chipped/reinforced_acacia_log.png b/public/textures/chipped/reinforced_acacia_log.png new file mode 100644 index 00000000..dff18419 Binary files /dev/null and b/public/textures/chipped/reinforced_acacia_log.png differ diff --git a/public/textures/chipped/reinforced_bamboo_planks.png b/public/textures/chipped/reinforced_bamboo_planks.png new file mode 100644 index 00000000..aad5463d Binary files /dev/null and b/public/textures/chipped/reinforced_bamboo_planks.png differ diff --git a/public/textures/chipped/reinforced_birch_crate.png b/public/textures/chipped/reinforced_birch_crate.png new file mode 100644 index 00000000..4fbbc0b0 Binary files /dev/null and b/public/textures/chipped/reinforced_birch_crate.png differ diff --git a/public/textures/chipped/reinforced_birch_log.png b/public/textures/chipped/reinforced_birch_log.png new file mode 100644 index 00000000..273ef788 Binary files /dev/null and b/public/textures/chipped/reinforced_birch_log.png differ diff --git a/public/textures/chipped/reinforced_black_concrete.png b/public/textures/chipped/reinforced_black_concrete.png new file mode 100644 index 00000000..82e54e78 Binary files /dev/null and b/public/textures/chipped/reinforced_black_concrete.png differ diff --git a/public/textures/chipped/reinforced_blue_concrete.png b/public/textures/chipped/reinforced_blue_concrete.png new file mode 100644 index 00000000..c4af240f Binary files /dev/null and b/public/textures/chipped/reinforced_blue_concrete.png differ diff --git a/public/textures/chipped/reinforced_bone_block.png b/public/textures/chipped/reinforced_bone_block.png new file mode 100644 index 00000000..b8a027ca Binary files /dev/null and b/public/textures/chipped/reinforced_bone_block.png differ diff --git a/public/textures/chipped/reinforced_brown_concrete.png b/public/textures/chipped/reinforced_brown_concrete.png new file mode 100644 index 00000000..9c3cb028 Binary files /dev/null and b/public/textures/chipped/reinforced_brown_concrete.png differ diff --git a/public/textures/chipped/reinforced_cherry_log.png b/public/textures/chipped/reinforced_cherry_log.png new file mode 100644 index 00000000..e1452730 Binary files /dev/null and b/public/textures/chipped/reinforced_cherry_log.png differ diff --git a/public/textures/chipped/reinforced_crimson_crate.png b/public/textures/chipped/reinforced_crimson_crate.png new file mode 100644 index 00000000..bd887ac7 Binary files /dev/null and b/public/textures/chipped/reinforced_crimson_crate.png differ diff --git a/public/textures/chipped/reinforced_cyan_concrete.png b/public/textures/chipped/reinforced_cyan_concrete.png new file mode 100644 index 00000000..1e437332 Binary files /dev/null and b/public/textures/chipped/reinforced_cyan_concrete.png differ diff --git a/public/textures/chipped/reinforced_dark_oak_crate.png b/public/textures/chipped/reinforced_dark_oak_crate.png new file mode 100644 index 00000000..13eaa446 Binary files /dev/null and b/public/textures/chipped/reinforced_dark_oak_crate.png differ diff --git a/public/textures/chipped/reinforced_dark_oak_log.png b/public/textures/chipped/reinforced_dark_oak_log.png new file mode 100644 index 00000000..104662e8 Binary files /dev/null and b/public/textures/chipped/reinforced_dark_oak_log.png differ diff --git a/public/textures/chipped/reinforced_diamond_block.png b/public/textures/chipped/reinforced_diamond_block.png new file mode 100644 index 00000000..27b694d2 Binary files /dev/null and b/public/textures/chipped/reinforced_diamond_block.png differ diff --git a/public/textures/chipped/reinforced_emerald_block.png b/public/textures/chipped/reinforced_emerald_block.png new file mode 100644 index 00000000..0a2e4c99 Binary files /dev/null and b/public/textures/chipped/reinforced_emerald_block.png differ diff --git a/public/textures/chipped/reinforced_gilded_blackstone.png b/public/textures/chipped/reinforced_gilded_blackstone.png new file mode 100644 index 00000000..0791e77d Binary files /dev/null and b/public/textures/chipped/reinforced_gilded_blackstone.png differ diff --git a/public/textures/chipped/reinforced_gold_block.png b/public/textures/chipped/reinforced_gold_block.png new file mode 100644 index 00000000..5f966d2a Binary files /dev/null and b/public/textures/chipped/reinforced_gold_block.png differ diff --git a/public/textures/chipped/reinforced_gray_concrete.png b/public/textures/chipped/reinforced_gray_concrete.png new file mode 100644 index 00000000..28d4d77d Binary files /dev/null and b/public/textures/chipped/reinforced_gray_concrete.png differ diff --git a/public/textures/chipped/reinforced_green_concrete.png b/public/textures/chipped/reinforced_green_concrete.png new file mode 100644 index 00000000..1baaf4ee Binary files /dev/null and b/public/textures/chipped/reinforced_green_concrete.png differ diff --git a/public/textures/chipped/reinforced_iron_block.png b/public/textures/chipped/reinforced_iron_block.png new file mode 100644 index 00000000..b2e0ad20 Binary files /dev/null and b/public/textures/chipped/reinforced_iron_block.png differ diff --git a/public/textures/chipped/reinforced_jungle_crate.png b/public/textures/chipped/reinforced_jungle_crate.png new file mode 100644 index 00000000..7c10d6a0 Binary files /dev/null and b/public/textures/chipped/reinforced_jungle_crate.png differ diff --git a/public/textures/chipped/reinforced_jungle_log.png b/public/textures/chipped/reinforced_jungle_log.png new file mode 100644 index 00000000..2043b22a Binary files /dev/null and b/public/textures/chipped/reinforced_jungle_log.png differ diff --git a/public/textures/chipped/reinforced_light_blue_concrete.png b/public/textures/chipped/reinforced_light_blue_concrete.png new file mode 100644 index 00000000..673f7145 Binary files /dev/null and b/public/textures/chipped/reinforced_light_blue_concrete.png differ diff --git a/public/textures/chipped/reinforced_light_gray_concrete.png b/public/textures/chipped/reinforced_light_gray_concrete.png new file mode 100644 index 00000000..67930843 Binary files /dev/null and b/public/textures/chipped/reinforced_light_gray_concrete.png differ diff --git a/public/textures/chipped/reinforced_lime_concrete.png b/public/textures/chipped/reinforced_lime_concrete.png new file mode 100644 index 00000000..633ecd27 Binary files /dev/null and b/public/textures/chipped/reinforced_lime_concrete.png differ diff --git a/public/textures/chipped/reinforced_magenta_concrete.png b/public/textures/chipped/reinforced_magenta_concrete.png new file mode 100644 index 00000000..349ad149 Binary files /dev/null and b/public/textures/chipped/reinforced_magenta_concrete.png differ diff --git a/public/textures/chipped/reinforced_mangrove_crate.png b/public/textures/chipped/reinforced_mangrove_crate.png new file mode 100644 index 00000000..53cd936d Binary files /dev/null and b/public/textures/chipped/reinforced_mangrove_crate.png differ diff --git a/public/textures/chipped/reinforced_mangrove_log.png b/public/textures/chipped/reinforced_mangrove_log.png new file mode 100644 index 00000000..dd9ed0d6 Binary files /dev/null and b/public/textures/chipped/reinforced_mangrove_log.png differ diff --git a/public/textures/chipped/reinforced_netherite_block.png b/public/textures/chipped/reinforced_netherite_block.png new file mode 100644 index 00000000..e6bf131e Binary files /dev/null and b/public/textures/chipped/reinforced_netherite_block.png differ diff --git a/public/textures/chipped/reinforced_oak_crate.png b/public/textures/chipped/reinforced_oak_crate.png new file mode 100644 index 00000000..747eb62b Binary files /dev/null and b/public/textures/chipped/reinforced_oak_crate.png differ diff --git a/public/textures/chipped/reinforced_oak_log.png b/public/textures/chipped/reinforced_oak_log.png new file mode 100644 index 00000000..555c5c83 Binary files /dev/null and b/public/textures/chipped/reinforced_oak_log.png differ diff --git a/public/textures/chipped/reinforced_ochre_froglight.png b/public/textures/chipped/reinforced_ochre_froglight.png new file mode 100644 index 00000000..4b221d1e Binary files /dev/null and b/public/textures/chipped/reinforced_ochre_froglight.png differ diff --git a/public/textures/chipped/reinforced_orange_concrete.png b/public/textures/chipped/reinforced_orange_concrete.png new file mode 100644 index 00000000..efc8071f Binary files /dev/null and b/public/textures/chipped/reinforced_orange_concrete.png differ diff --git a/public/textures/chipped/reinforced_pearlescent_froglight.png b/public/textures/chipped/reinforced_pearlescent_froglight.png new file mode 100644 index 00000000..2709313a Binary files /dev/null and b/public/textures/chipped/reinforced_pearlescent_froglight.png differ diff --git a/public/textures/chipped/reinforced_pink_concrete.png b/public/textures/chipped/reinforced_pink_concrete.png new file mode 100644 index 00000000..45fde97b Binary files /dev/null and b/public/textures/chipped/reinforced_pink_concrete.png differ diff --git a/public/textures/chipped/reinforced_purple_concrete.png b/public/textures/chipped/reinforced_purple_concrete.png new file mode 100644 index 00000000..f7970008 Binary files /dev/null and b/public/textures/chipped/reinforced_purple_concrete.png differ diff --git a/public/textures/chipped/reinforced_red_concrete.png b/public/textures/chipped/reinforced_red_concrete.png new file mode 100644 index 00000000..ae6b337f Binary files /dev/null and b/public/textures/chipped/reinforced_red_concrete.png differ diff --git a/public/textures/chipped/reinforced_redstone_lamp.png b/public/textures/chipped/reinforced_redstone_lamp.png new file mode 100644 index 00000000..cadb1750 Binary files /dev/null and b/public/textures/chipped/reinforced_redstone_lamp.png differ diff --git a/public/textures/chipped/reinforced_sea_lantern.png b/public/textures/chipped/reinforced_sea_lantern.png new file mode 100644 index 00000000..d572c9fa Binary files /dev/null and b/public/textures/chipped/reinforced_sea_lantern.png differ diff --git a/public/textures/chipped/reinforced_shroomlight.png b/public/textures/chipped/reinforced_shroomlight.png new file mode 100644 index 00000000..75e2245f Binary files /dev/null and b/public/textures/chipped/reinforced_shroomlight.png differ diff --git a/public/textures/chipped/reinforced_spruce_crate.png b/public/textures/chipped/reinforced_spruce_crate.png new file mode 100644 index 00000000..78b5093b Binary files /dev/null and b/public/textures/chipped/reinforced_spruce_crate.png differ diff --git a/public/textures/chipped/reinforced_spruce_log.png b/public/textures/chipped/reinforced_spruce_log.png new file mode 100644 index 00000000..399de334 Binary files /dev/null and b/public/textures/chipped/reinforced_spruce_log.png differ diff --git a/public/textures/chipped/reinforced_stripped_acacia_log.png b/public/textures/chipped/reinforced_stripped_acacia_log.png new file mode 100644 index 00000000..0bb1d527 Binary files /dev/null and b/public/textures/chipped/reinforced_stripped_acacia_log.png differ diff --git a/public/textures/chipped/reinforced_stripped_birch_log.png b/public/textures/chipped/reinforced_stripped_birch_log.png new file mode 100644 index 00000000..94e41ce0 Binary files /dev/null and b/public/textures/chipped/reinforced_stripped_birch_log.png differ diff --git a/public/textures/chipped/reinforced_stripped_cherry_log.png b/public/textures/chipped/reinforced_stripped_cherry_log.png new file mode 100644 index 00000000..5751ffe1 Binary files /dev/null and b/public/textures/chipped/reinforced_stripped_cherry_log.png differ diff --git a/public/textures/chipped/reinforced_stripped_crimson_stem.png b/public/textures/chipped/reinforced_stripped_crimson_stem.png new file mode 100644 index 00000000..fe468167 Binary files /dev/null and b/public/textures/chipped/reinforced_stripped_crimson_stem.png differ diff --git a/public/textures/chipped/reinforced_stripped_dark_oak_log.png b/public/textures/chipped/reinforced_stripped_dark_oak_log.png new file mode 100644 index 00000000..1c0335a0 Binary files /dev/null and b/public/textures/chipped/reinforced_stripped_dark_oak_log.png differ diff --git a/public/textures/chipped/reinforced_stripped_jungle_log.png b/public/textures/chipped/reinforced_stripped_jungle_log.png new file mode 100644 index 00000000..a9f2343f Binary files /dev/null and b/public/textures/chipped/reinforced_stripped_jungle_log.png differ diff --git a/public/textures/chipped/reinforced_stripped_mangrove_log.png b/public/textures/chipped/reinforced_stripped_mangrove_log.png new file mode 100644 index 00000000..217a9eaa Binary files /dev/null and b/public/textures/chipped/reinforced_stripped_mangrove_log.png differ diff --git a/public/textures/chipped/reinforced_stripped_oak_log.png b/public/textures/chipped/reinforced_stripped_oak_log.png new file mode 100644 index 00000000..1551769b Binary files /dev/null and b/public/textures/chipped/reinforced_stripped_oak_log.png differ diff --git a/public/textures/chipped/reinforced_stripped_spruce_log.png b/public/textures/chipped/reinforced_stripped_spruce_log.png new file mode 100644 index 00000000..d99674b1 Binary files /dev/null and b/public/textures/chipped/reinforced_stripped_spruce_log.png differ diff --git a/public/textures/chipped/reinforced_stripped_warped_stem.png b/public/textures/chipped/reinforced_stripped_warped_stem.png new file mode 100644 index 00000000..45b26c2f Binary files /dev/null and b/public/textures/chipped/reinforced_stripped_warped_stem.png differ diff --git a/public/textures/chipped/reinforced_verdant_froglight.png b/public/textures/chipped/reinforced_verdant_froglight.png new file mode 100644 index 00000000..a56a3d0c Binary files /dev/null and b/public/textures/chipped/reinforced_verdant_froglight.png differ diff --git a/public/textures/chipped/reinforced_warped_crate.png b/public/textures/chipped/reinforced_warped_crate.png new file mode 100644 index 00000000..b5bb20e5 Binary files /dev/null and b/public/textures/chipped/reinforced_warped_crate.png differ diff --git a/public/textures/chipped/reinforced_waxed_copper_block.png b/public/textures/chipped/reinforced_waxed_copper_block.png new file mode 100644 index 00000000..e81fd6fd Binary files /dev/null and b/public/textures/chipped/reinforced_waxed_copper_block.png differ diff --git a/public/textures/chipped/reinforced_waxed_exposed_copper.png b/public/textures/chipped/reinforced_waxed_exposed_copper.png new file mode 100644 index 00000000..0cf1784b Binary files /dev/null and b/public/textures/chipped/reinforced_waxed_exposed_copper.png differ diff --git a/public/textures/chipped/reinforced_waxed_oxidized_copper.png b/public/textures/chipped/reinforced_waxed_oxidized_copper.png new file mode 100644 index 00000000..91dec915 Binary files /dev/null and b/public/textures/chipped/reinforced_waxed_oxidized_copper.png differ diff --git a/public/textures/chipped/reinforced_waxed_weathered_copper.png b/public/textures/chipped/reinforced_waxed_weathered_copper.png new file mode 100644 index 00000000..cfa7dbe3 Binary files /dev/null and b/public/textures/chipped/reinforced_waxed_weathered_copper.png differ diff --git a/public/textures/chipped/reinforced_white_concrete.png b/public/textures/chipped/reinforced_white_concrete.png new file mode 100644 index 00000000..e07f6cc8 Binary files /dev/null and b/public/textures/chipped/reinforced_white_concrete.png differ diff --git a/public/textures/chipped/reinforced_white_redstone_lamp.png b/public/textures/chipped/reinforced_white_redstone_lamp.png new file mode 100644 index 00000000..b6927ad4 Binary files /dev/null and b/public/textures/chipped/reinforced_white_redstone_lamp.png differ diff --git a/public/textures/chipped/reinforced_yellow_concrete.png b/public/textures/chipped/reinforced_yellow_concrete.png new file mode 100644 index 00000000..76e2c77d Binary files /dev/null and b/public/textures/chipped/reinforced_yellow_concrete.png differ diff --git a/public/textures/chipped/ribbled_black_carpet.png b/public/textures/chipped/ribbled_black_carpet.png new file mode 100644 index 00000000..7533aed7 Binary files /dev/null and b/public/textures/chipped/ribbled_black_carpet.png differ diff --git a/public/textures/chipped/ribbled_black_wool.png b/public/textures/chipped/ribbled_black_wool.png new file mode 100644 index 00000000..ca57480b Binary files /dev/null and b/public/textures/chipped/ribbled_black_wool.png differ diff --git a/public/textures/chipped/ribbled_blue_carpet.png b/public/textures/chipped/ribbled_blue_carpet.png new file mode 100644 index 00000000..dd0c9b88 Binary files /dev/null and b/public/textures/chipped/ribbled_blue_carpet.png differ diff --git a/public/textures/chipped/ribbled_blue_wool.png b/public/textures/chipped/ribbled_blue_wool.png new file mode 100644 index 00000000..9df4ed19 Binary files /dev/null and b/public/textures/chipped/ribbled_blue_wool.png differ diff --git a/public/textures/chipped/ribbled_brown_carpet.png b/public/textures/chipped/ribbled_brown_carpet.png new file mode 100644 index 00000000..f6d17763 Binary files /dev/null and b/public/textures/chipped/ribbled_brown_carpet.png differ diff --git a/public/textures/chipped/ribbled_brown_wool.png b/public/textures/chipped/ribbled_brown_wool.png new file mode 100644 index 00000000..cfa35b2d Binary files /dev/null and b/public/textures/chipped/ribbled_brown_wool.png differ diff --git a/public/textures/chipped/ribbled_cyan_carpet.png b/public/textures/chipped/ribbled_cyan_carpet.png new file mode 100644 index 00000000..12531ec6 Binary files /dev/null and b/public/textures/chipped/ribbled_cyan_carpet.png differ diff --git a/public/textures/chipped/ribbled_cyan_wool.png b/public/textures/chipped/ribbled_cyan_wool.png new file mode 100644 index 00000000..f654f2f9 Binary files /dev/null and b/public/textures/chipped/ribbled_cyan_wool.png differ diff --git a/public/textures/chipped/ribbled_gray_carpet.png b/public/textures/chipped/ribbled_gray_carpet.png new file mode 100644 index 00000000..47eee9cb Binary files /dev/null and b/public/textures/chipped/ribbled_gray_carpet.png differ diff --git a/public/textures/chipped/ribbled_gray_wool.png b/public/textures/chipped/ribbled_gray_wool.png new file mode 100644 index 00000000..220bd3f2 Binary files /dev/null and b/public/textures/chipped/ribbled_gray_wool.png differ diff --git a/public/textures/chipped/ribbled_green_carpet.png b/public/textures/chipped/ribbled_green_carpet.png new file mode 100644 index 00000000..cac54e49 Binary files /dev/null and b/public/textures/chipped/ribbled_green_carpet.png differ diff --git a/public/textures/chipped/ribbled_green_wool.png b/public/textures/chipped/ribbled_green_wool.png new file mode 100644 index 00000000..dd34bf0a Binary files /dev/null and b/public/textures/chipped/ribbled_green_wool.png differ diff --git a/public/textures/chipped/ribbled_light_blue_carpet.png b/public/textures/chipped/ribbled_light_blue_carpet.png new file mode 100644 index 00000000..83d5a149 Binary files /dev/null and b/public/textures/chipped/ribbled_light_blue_carpet.png differ diff --git a/public/textures/chipped/ribbled_light_blue_wool.png b/public/textures/chipped/ribbled_light_blue_wool.png new file mode 100644 index 00000000..986a67c4 Binary files /dev/null and b/public/textures/chipped/ribbled_light_blue_wool.png differ diff --git a/public/textures/chipped/ribbled_light_gray_carpet.png b/public/textures/chipped/ribbled_light_gray_carpet.png new file mode 100644 index 00000000..dd7c96a5 Binary files /dev/null and b/public/textures/chipped/ribbled_light_gray_carpet.png differ diff --git a/public/textures/chipped/ribbled_light_gray_wool.png b/public/textures/chipped/ribbled_light_gray_wool.png new file mode 100644 index 00000000..6af6010e Binary files /dev/null and b/public/textures/chipped/ribbled_light_gray_wool.png differ diff --git a/public/textures/chipped/ribbled_lime_carpet.png b/public/textures/chipped/ribbled_lime_carpet.png new file mode 100644 index 00000000..273dd021 Binary files /dev/null and b/public/textures/chipped/ribbled_lime_carpet.png differ diff --git a/public/textures/chipped/ribbled_lime_wool.png b/public/textures/chipped/ribbled_lime_wool.png new file mode 100644 index 00000000..1b7af67f Binary files /dev/null and b/public/textures/chipped/ribbled_lime_wool.png differ diff --git a/public/textures/chipped/ribbled_magenta_carpet.png b/public/textures/chipped/ribbled_magenta_carpet.png new file mode 100644 index 00000000..30642500 Binary files /dev/null and b/public/textures/chipped/ribbled_magenta_carpet.png differ diff --git a/public/textures/chipped/ribbled_magenta_wool.png b/public/textures/chipped/ribbled_magenta_wool.png new file mode 100644 index 00000000..de0c0ba2 Binary files /dev/null and b/public/textures/chipped/ribbled_magenta_wool.png differ diff --git a/public/textures/chipped/ribbled_orange_carpet.png b/public/textures/chipped/ribbled_orange_carpet.png new file mode 100644 index 00000000..509ae071 Binary files /dev/null and b/public/textures/chipped/ribbled_orange_carpet.png differ diff --git a/public/textures/chipped/ribbled_orange_wool.png b/public/textures/chipped/ribbled_orange_wool.png new file mode 100644 index 00000000..b7867ed8 Binary files /dev/null and b/public/textures/chipped/ribbled_orange_wool.png differ diff --git a/public/textures/chipped/ribbled_pink_carpet.png b/public/textures/chipped/ribbled_pink_carpet.png new file mode 100644 index 00000000..b972ecbc Binary files /dev/null and b/public/textures/chipped/ribbled_pink_carpet.png differ diff --git a/public/textures/chipped/ribbled_pink_wool.png b/public/textures/chipped/ribbled_pink_wool.png new file mode 100644 index 00000000..a7ee83b9 Binary files /dev/null and b/public/textures/chipped/ribbled_pink_wool.png differ diff --git a/public/textures/chipped/ribbled_purple_carpet.png b/public/textures/chipped/ribbled_purple_carpet.png new file mode 100644 index 00000000..f91b8086 Binary files /dev/null and b/public/textures/chipped/ribbled_purple_carpet.png differ diff --git a/public/textures/chipped/ribbled_purple_wool.png b/public/textures/chipped/ribbled_purple_wool.png new file mode 100644 index 00000000..c24101eb Binary files /dev/null and b/public/textures/chipped/ribbled_purple_wool.png differ diff --git a/public/textures/chipped/ribbled_red_carpet.png b/public/textures/chipped/ribbled_red_carpet.png new file mode 100644 index 00000000..9cf0bbec Binary files /dev/null and b/public/textures/chipped/ribbled_red_carpet.png differ diff --git a/public/textures/chipped/ribbled_red_wool.png b/public/textures/chipped/ribbled_red_wool.png new file mode 100644 index 00000000..5dbb1c43 Binary files /dev/null and b/public/textures/chipped/ribbled_red_wool.png differ diff --git a/public/textures/chipped/ribbled_white_carpet.png b/public/textures/chipped/ribbled_white_carpet.png new file mode 100644 index 00000000..83ba657f Binary files /dev/null and b/public/textures/chipped/ribbled_white_carpet.png differ diff --git a/public/textures/chipped/ribbled_white_wool.png b/public/textures/chipped/ribbled_white_wool.png new file mode 100644 index 00000000..ec0a682d Binary files /dev/null and b/public/textures/chipped/ribbled_white_wool.png differ diff --git a/public/textures/chipped/ribbled_yellow_carpet.png b/public/textures/chipped/ribbled_yellow_carpet.png new file mode 100644 index 00000000..b8c9fcb8 Binary files /dev/null and b/public/textures/chipped/ribbled_yellow_carpet.png differ diff --git a/public/textures/chipped/ribbled_yellow_wool.png b/public/textures/chipped/ribbled_yellow_wool.png new file mode 100644 index 00000000..62437c9d Binary files /dev/null and b/public/textures/chipped/ribbled_yellow_wool.png differ diff --git a/public/textures/chipped/rich_hay_block.png b/public/textures/chipped/rich_hay_block.png new file mode 100644 index 00000000..87e66f02 Binary files /dev/null and b/public/textures/chipped/rich_hay_block.png differ diff --git a/public/textures/chipped/ring_lodestone.png b/public/textures/chipped/ring_lodestone.png new file mode 100644 index 00000000..866fba24 Binary files /dev/null and b/public/textures/chipped/ring_lodestone.png differ diff --git a/public/textures/chipped/ring_lodestone_side.png b/public/textures/chipped/ring_lodestone_side.png new file mode 100644 index 00000000..866fba24 Binary files /dev/null and b/public/textures/chipped/ring_lodestone_side.png differ diff --git a/public/textures/chipped/ringed_mangrove_planks.png b/public/textures/chipped/ringed_mangrove_planks.png new file mode 100644 index 00000000..6c72b042 Binary files /dev/null and b/public/textures/chipped/ringed_mangrove_planks.png differ diff --git a/public/textures/chipped/ripe_melon.png b/public/textures/chipped/ripe_melon.png new file mode 100644 index 00000000..8e2a268e Binary files /dev/null and b/public/textures/chipped/ripe_melon.png differ diff --git a/public/textures/chipped/rope_planked_ladder.png b/public/textures/chipped/rope_planked_ladder.png new file mode 100644 index 00000000..6f942f9e Binary files /dev/null and b/public/textures/chipped/rope_planked_ladder.png differ diff --git a/public/textures/chipped/roped_bone_block.png b/public/textures/chipped/roped_bone_block.png new file mode 100644 index 00000000..9291e9c8 Binary files /dev/null and b/public/textures/chipped/roped_bone_block.png differ diff --git a/public/textures/chipped/roped_ladder.png b/public/textures/chipped/roped_ladder.png new file mode 100644 index 00000000..11e04566 Binary files /dev/null and b/public/textures/chipped/roped_ladder.png differ diff --git a/public/textures/chipped/rosekin.png b/public/textures/chipped/rosekin.png new file mode 100644 index 00000000..11f40b23 Binary files /dev/null and b/public/textures/chipped/rosekin.png differ diff --git a/public/textures/chipped/rotted_warped_stem.png b/public/textures/chipped/rotted_warped_stem.png new file mode 100644 index 00000000..0702e011 Binary files /dev/null and b/public/textures/chipped/rotted_warped_stem.png differ diff --git a/public/textures/chipped/rotten_crimson_stem.png b/public/textures/chipped/rotten_crimson_stem.png new file mode 100644 index 00000000..55e2c944 Binary files /dev/null and b/public/textures/chipped/rotten_crimson_stem.png differ diff --git a/public/textures/chipped/rough_amethyst_block.png b/public/textures/chipped/rough_amethyst_block.png new file mode 100644 index 00000000..e1d7b1cb Binary files /dev/null and b/public/textures/chipped/rough_amethyst_block.png differ diff --git a/public/textures/chipped/rough_ancient_debris.png b/public/textures/chipped/rough_ancient_debris.png new file mode 100644 index 00000000..90067b06 Binary files /dev/null and b/public/textures/chipped/rough_ancient_debris.png differ diff --git a/public/textures/chipped/rough_andesite.png b/public/textures/chipped/rough_andesite.png new file mode 100644 index 00000000..1ff8de2a Binary files /dev/null and b/public/textures/chipped/rough_andesite.png differ diff --git a/public/textures/chipped/rough_blue_ice.png b/public/textures/chipped/rough_blue_ice.png new file mode 100644 index 00000000..16f6592b Binary files /dev/null and b/public/textures/chipped/rough_blue_ice.png differ diff --git a/public/textures/chipped/rough_borderless_bricks.png b/public/textures/chipped/rough_borderless_bricks.png new file mode 100644 index 00000000..98a5a365 Binary files /dev/null and b/public/textures/chipped/rough_borderless_bricks.png differ diff --git a/public/textures/chipped/rough_bricks.png b/public/textures/chipped/rough_bricks.png new file mode 100644 index 00000000..98a5a365 Binary files /dev/null and b/public/textures/chipped/rough_bricks.png differ diff --git a/public/textures/chipped/rough_calcite.png b/public/textures/chipped/rough_calcite.png new file mode 100644 index 00000000..becc7e62 Binary files /dev/null and b/public/textures/chipped/rough_calcite.png differ diff --git a/public/textures/chipped/rough_clay.png b/public/textures/chipped/rough_clay.png new file mode 100644 index 00000000..4d70adbd Binary files /dev/null and b/public/textures/chipped/rough_clay.png differ diff --git a/public/textures/chipped/rough_coal_block.png b/public/textures/chipped/rough_coal_block.png new file mode 100644 index 00000000..9ebe1764 Binary files /dev/null and b/public/textures/chipped/rough_coal_block.png differ diff --git a/public/textures/chipped/rough_cobblestone.png b/public/textures/chipped/rough_cobblestone.png new file mode 100644 index 00000000..ea3da453 Binary files /dev/null and b/public/textures/chipped/rough_cobblestone.png differ diff --git a/public/textures/chipped/rough_crimson_dried_kelp_block.png b/public/textures/chipped/rough_crimson_dried_kelp_block.png new file mode 100644 index 00000000..2465c46d Binary files /dev/null and b/public/textures/chipped/rough_crimson_dried_kelp_block.png differ diff --git a/public/textures/chipped/rough_crying_obsidian.png b/public/textures/chipped/rough_crying_obsidian.png new file mode 100644 index 00000000..0f72fb42 Binary files /dev/null and b/public/textures/chipped/rough_crying_obsidian.png differ diff --git a/public/textures/chipped/rough_dark_prismarine.png b/public/textures/chipped/rough_dark_prismarine.png new file mode 100644 index 00000000..8c8cf221 Binary files /dev/null and b/public/textures/chipped/rough_dark_prismarine.png differ diff --git a/public/textures/chipped/rough_deepslate.png b/public/textures/chipped/rough_deepslate.png new file mode 100644 index 00000000..24612ba7 Binary files /dev/null and b/public/textures/chipped/rough_deepslate.png differ diff --git a/public/textures/chipped/rough_diorite.png b/public/textures/chipped/rough_diorite.png new file mode 100644 index 00000000..dc1101f0 Binary files /dev/null and b/public/textures/chipped/rough_diorite.png differ diff --git a/public/textures/chipped/rough_dirt.png b/public/textures/chipped/rough_dirt.png new file mode 100644 index 00000000..a8b914fe Binary files /dev/null and b/public/textures/chipped/rough_dirt.png differ diff --git a/public/textures/chipped/rough_dripstone_block.png b/public/textures/chipped/rough_dripstone_block.png new file mode 100644 index 00000000..08a688b3 Binary files /dev/null and b/public/textures/chipped/rough_dripstone_block.png differ diff --git a/public/textures/chipped/rough_end_stone.png b/public/textures/chipped/rough_end_stone.png new file mode 100644 index 00000000..efabaa8a Binary files /dev/null and b/public/textures/chipped/rough_end_stone.png differ diff --git a/public/textures/chipped/rough_granite.png b/public/textures/chipped/rough_granite.png new file mode 100644 index 00000000..7da0fae4 Binary files /dev/null and b/public/textures/chipped/rough_granite.png differ diff --git a/public/textures/chipped/rough_ice.png b/public/textures/chipped/rough_ice.png new file mode 100644 index 00000000..acbcf7f9 Binary files /dev/null and b/public/textures/chipped/rough_ice.png differ diff --git a/public/textures/chipped/rough_lapis_block.png b/public/textures/chipped/rough_lapis_block.png new file mode 100644 index 00000000..1c427de8 Binary files /dev/null and b/public/textures/chipped/rough_lapis_block.png differ diff --git a/public/textures/chipped/rough_lily_pad.png b/public/textures/chipped/rough_lily_pad.png new file mode 100644 index 00000000..ad04c06a Binary files /dev/null and b/public/textures/chipped/rough_lily_pad.png differ diff --git a/public/textures/chipped/rough_lodestone.png b/public/textures/chipped/rough_lodestone.png new file mode 100644 index 00000000..37de2778 Binary files /dev/null and b/public/textures/chipped/rough_lodestone.png differ diff --git a/public/textures/chipped/rough_magma_block.png b/public/textures/chipped/rough_magma_block.png new file mode 100644 index 00000000..fa564f9b Binary files /dev/null and b/public/textures/chipped/rough_magma_block.png differ diff --git a/public/textures/chipped/rough_mossy_cobblestone.png b/public/textures/chipped/rough_mossy_cobblestone.png new file mode 100644 index 00000000..41808c56 Binary files /dev/null and b/public/textures/chipped/rough_mossy_cobblestone.png differ diff --git a/public/textures/chipped/rough_mossy_stone_bricks.png b/public/textures/chipped/rough_mossy_stone_bricks.png new file mode 100644 index 00000000..272d1cd1 Binary files /dev/null and b/public/textures/chipped/rough_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/rough_mud.png b/public/textures/chipped/rough_mud.png new file mode 100644 index 00000000..1ebeef73 Binary files /dev/null and b/public/textures/chipped/rough_mud.png differ diff --git a/public/textures/chipped/rough_mud_bricks.png b/public/textures/chipped/rough_mud_bricks.png new file mode 100644 index 00000000..bd35e96f Binary files /dev/null and b/public/textures/chipped/rough_mud_bricks.png differ diff --git a/public/textures/chipped/rough_nether_bricks.png b/public/textures/chipped/rough_nether_bricks.png new file mode 100644 index 00000000..06c27cad Binary files /dev/null and b/public/textures/chipped/rough_nether_bricks.png differ diff --git a/public/textures/chipped/rough_nether_wart_block.png b/public/textures/chipped/rough_nether_wart_block.png new file mode 100644 index 00000000..61f20116 Binary files /dev/null and b/public/textures/chipped/rough_nether_wart_block.png differ diff --git a/public/textures/chipped/rough_netherrack.png b/public/textures/chipped/rough_netherrack.png new file mode 100644 index 00000000..0efa5d6e Binary files /dev/null and b/public/textures/chipped/rough_netherrack.png differ diff --git a/public/textures/chipped/rough_obsidian.png b/public/textures/chipped/rough_obsidian.png new file mode 100644 index 00000000..23e0c829 Binary files /dev/null and b/public/textures/chipped/rough_obsidian.png differ diff --git a/public/textures/chipped/rough_packed_ice.png b/public/textures/chipped/rough_packed_ice.png new file mode 100644 index 00000000..7a31c70c Binary files /dev/null and b/public/textures/chipped/rough_packed_ice.png differ diff --git a/public/textures/chipped/rough_packed_mud.png b/public/textures/chipped/rough_packed_mud.png new file mode 100644 index 00000000..2bc5a856 Binary files /dev/null and b/public/textures/chipped/rough_packed_mud.png differ diff --git a/public/textures/chipped/rough_panelled_mud.png b/public/textures/chipped/rough_panelled_mud.png new file mode 100644 index 00000000..5864e305 Binary files /dev/null and b/public/textures/chipped/rough_panelled_mud.png differ diff --git a/public/textures/chipped/rough_panelled_mud_bricks.png b/public/textures/chipped/rough_panelled_mud_bricks.png new file mode 100644 index 00000000..e37bc026 Binary files /dev/null and b/public/textures/chipped/rough_panelled_mud_bricks.png differ diff --git a/public/textures/chipped/rough_panelled_packed_mud.png b/public/textures/chipped/rough_panelled_packed_mud.png new file mode 100644 index 00000000..f9ae1cd5 Binary files /dev/null and b/public/textures/chipped/rough_panelled_packed_mud.png differ diff --git a/public/textures/chipped/rough_prismarine.png b/public/textures/chipped/rough_prismarine.png new file mode 100644 index 00000000..a8273712 Binary files /dev/null and b/public/textures/chipped/rough_prismarine.png differ diff --git a/public/textures/chipped/rough_purpur_block.png b/public/textures/chipped/rough_purpur_block.png new file mode 100644 index 00000000..afab8724 Binary files /dev/null and b/public/textures/chipped/rough_purpur_block.png differ diff --git a/public/textures/chipped/rough_quartz_block.png b/public/textures/chipped/rough_quartz_block.png new file mode 100644 index 00000000..ad4004eb Binary files /dev/null and b/public/textures/chipped/rough_quartz_block.png differ diff --git a/public/textures/chipped/rough_raw_copper_block.png b/public/textures/chipped/rough_raw_copper_block.png new file mode 100644 index 00000000..39a6c428 Binary files /dev/null and b/public/textures/chipped/rough_raw_copper_block.png differ diff --git a/public/textures/chipped/rough_raw_gold_block.png b/public/textures/chipped/rough_raw_gold_block.png new file mode 100644 index 00000000..bcf08216 Binary files /dev/null and b/public/textures/chipped/rough_raw_gold_block.png differ diff --git a/public/textures/chipped/rough_raw_iron_block.png b/public/textures/chipped/rough_raw_iron_block.png new file mode 100644 index 00000000..660f3cb0 Binary files /dev/null and b/public/textures/chipped/rough_raw_iron_block.png differ diff --git a/public/textures/chipped/rough_red_nether_bricks.png b/public/textures/chipped/rough_red_nether_bricks.png new file mode 100644 index 00000000..0f022ba1 Binary files /dev/null and b/public/textures/chipped/rough_red_nether_bricks.png differ diff --git a/public/textures/chipped/rough_red_sandstone.png b/public/textures/chipped/rough_red_sandstone.png new file mode 100644 index 00000000..70a7a6c4 Binary files /dev/null and b/public/textures/chipped/rough_red_sandstone.png differ diff --git a/public/textures/chipped/rough_redstone_block.png b/public/textures/chipped/rough_redstone_block.png new file mode 100644 index 00000000..01b8ed49 Binary files /dev/null and b/public/textures/chipped/rough_redstone_block.png differ diff --git a/public/textures/chipped/rough_sandstone.png b/public/textures/chipped/rough_sandstone.png new file mode 100644 index 00000000..48f47fb7 Binary files /dev/null and b/public/textures/chipped/rough_sandstone.png differ diff --git a/public/textures/chipped/rough_smooth_stone.png b/public/textures/chipped/rough_smooth_stone.png new file mode 100644 index 00000000..839a71fd Binary files /dev/null and b/public/textures/chipped/rough_smooth_stone.png differ diff --git a/public/textures/chipped/rough_snow_block.png b/public/textures/chipped/rough_snow_block.png new file mode 100644 index 00000000..f93b5fe5 Binary files /dev/null and b/public/textures/chipped/rough_snow_block.png differ diff --git a/public/textures/chipped/rough_stone.png b/public/textures/chipped/rough_stone.png new file mode 100644 index 00000000..e4309287 Binary files /dev/null and b/public/textures/chipped/rough_stone.png differ diff --git a/public/textures/chipped/rough_tuff.png b/public/textures/chipped/rough_tuff.png new file mode 100644 index 00000000..29a3db46 Binary files /dev/null and b/public/textures/chipped/rough_tuff.png differ diff --git a/public/textures/chipped/rough_warped_wart_block.png b/public/textures/chipped/rough_warped_wart_block.png new file mode 100644 index 00000000..96273034 Binary files /dev/null and b/public/textures/chipped/rough_warped_wart_block.png differ diff --git a/public/textures/chipped/rought_gravel.png b/public/textures/chipped/rought_gravel.png new file mode 100644 index 00000000..92d5a712 Binary files /dev/null and b/public/textures/chipped/rought_gravel.png differ diff --git a/public/textures/chipped/round_ochre_froglight.png b/public/textures/chipped/round_ochre_froglight.png new file mode 100644 index 00000000..200bfeaf Binary files /dev/null and b/public/textures/chipped/round_ochre_froglight.png differ diff --git a/public/textures/chipped/round_pearlescent_froglight.png b/public/textures/chipped/round_pearlescent_froglight.png new file mode 100644 index 00000000..6078f4b5 Binary files /dev/null and b/public/textures/chipped/round_pearlescent_froglight.png differ diff --git a/public/textures/chipped/round_verdant_froglight.png b/public/textures/chipped/round_verdant_froglight.png new file mode 100644 index 00000000..89f518bf Binary files /dev/null and b/public/textures/chipped/round_verdant_froglight.png differ diff --git a/public/textures/chipped/rounded_amethyst_block_bricks.png b/public/textures/chipped/rounded_amethyst_block_bricks.png new file mode 100644 index 00000000..7ea47bb3 Binary files /dev/null and b/public/textures/chipped/rounded_amethyst_block_bricks.png differ diff --git a/public/textures/chipped/rounded_ancient_debris_bricks.png b/public/textures/chipped/rounded_ancient_debris_bricks.png new file mode 100644 index 00000000..eec51cef Binary files /dev/null and b/public/textures/chipped/rounded_ancient_debris_bricks.png differ diff --git a/public/textures/chipped/rounded_andesite_bricks.png b/public/textures/chipped/rounded_andesite_bricks.png new file mode 100644 index 00000000..67cab472 Binary files /dev/null and b/public/textures/chipped/rounded_andesite_bricks.png differ diff --git a/public/textures/chipped/rounded_basalt_bricks.png b/public/textures/chipped/rounded_basalt_bricks.png new file mode 100644 index 00000000..49574103 Binary files /dev/null and b/public/textures/chipped/rounded_basalt_bricks.png differ diff --git a/public/textures/chipped/rounded_blackstone_bricks.png b/public/textures/chipped/rounded_blackstone_bricks.png new file mode 100644 index 00000000..995441e3 Binary files /dev/null and b/public/textures/chipped/rounded_blackstone_bricks.png differ diff --git a/public/textures/chipped/rounded_blue_ice_bricks.png b/public/textures/chipped/rounded_blue_ice_bricks.png new file mode 100644 index 00000000..7bfc99e3 Binary files /dev/null and b/public/textures/chipped/rounded_blue_ice_bricks.png differ diff --git a/public/textures/chipped/rounded_borderless_bricks_bricks.png b/public/textures/chipped/rounded_borderless_bricks_bricks.png new file mode 100644 index 00000000..2da1e931 Binary files /dev/null and b/public/textures/chipped/rounded_borderless_bricks_bricks.png differ diff --git a/public/textures/chipped/rounded_bricks_bricks.png b/public/textures/chipped/rounded_bricks_bricks.png new file mode 100644 index 00000000..84f41136 Binary files /dev/null and b/public/textures/chipped/rounded_bricks_bricks.png differ diff --git a/public/textures/chipped/rounded_calcite_bricks.png b/public/textures/chipped/rounded_calcite_bricks.png new file mode 100644 index 00000000..cfc090dd Binary files /dev/null and b/public/textures/chipped/rounded_calcite_bricks.png differ diff --git a/public/textures/chipped/rounded_clay_bricks.png b/public/textures/chipped/rounded_clay_bricks.png new file mode 100644 index 00000000..95aadf27 Binary files /dev/null and b/public/textures/chipped/rounded_clay_bricks.png differ diff --git a/public/textures/chipped/rounded_coal_block_bricks.png b/public/textures/chipped/rounded_coal_block_bricks.png new file mode 100644 index 00000000..354ed907 Binary files /dev/null and b/public/textures/chipped/rounded_coal_block_bricks.png differ diff --git a/public/textures/chipped/rounded_cobblestone_bricks.png b/public/textures/chipped/rounded_cobblestone_bricks.png new file mode 100644 index 00000000..eabf0d1c Binary files /dev/null and b/public/textures/chipped/rounded_cobblestone_bricks.png differ diff --git a/public/textures/chipped/rounded_crying_obsidian_bricks.png b/public/textures/chipped/rounded_crying_obsidian_bricks.png new file mode 100644 index 00000000..af5c7e39 Binary files /dev/null and b/public/textures/chipped/rounded_crying_obsidian_bricks.png differ diff --git a/public/textures/chipped/rounded_dark_prismarine_bricks.png b/public/textures/chipped/rounded_dark_prismarine_bricks.png new file mode 100644 index 00000000..5506c250 Binary files /dev/null and b/public/textures/chipped/rounded_dark_prismarine_bricks.png differ diff --git a/public/textures/chipped/rounded_deepslate_bricks.png b/public/textures/chipped/rounded_deepslate_bricks.png new file mode 100644 index 00000000..30f2c153 Binary files /dev/null and b/public/textures/chipped/rounded_deepslate_bricks.png differ diff --git a/public/textures/chipped/rounded_diorite_bricks.png b/public/textures/chipped/rounded_diorite_bricks.png new file mode 100644 index 00000000..fc801314 Binary files /dev/null and b/public/textures/chipped/rounded_diorite_bricks.png differ diff --git a/public/textures/chipped/rounded_dirt_bricks.png b/public/textures/chipped/rounded_dirt_bricks.png new file mode 100644 index 00000000..7e7797e8 Binary files /dev/null and b/public/textures/chipped/rounded_dirt_bricks.png differ diff --git a/public/textures/chipped/rounded_dripstone_block_bricks.png b/public/textures/chipped/rounded_dripstone_block_bricks.png new file mode 100644 index 00000000..1b23967d Binary files /dev/null and b/public/textures/chipped/rounded_dripstone_block_bricks.png differ diff --git a/public/textures/chipped/rounded_end_stone_bricks.png b/public/textures/chipped/rounded_end_stone_bricks.png new file mode 100644 index 00000000..7c147f17 Binary files /dev/null and b/public/textures/chipped/rounded_end_stone_bricks.png differ diff --git a/public/textures/chipped/rounded_gilded_blackstone_bricks.png b/public/textures/chipped/rounded_gilded_blackstone_bricks.png new file mode 100644 index 00000000..26f38615 Binary files /dev/null and b/public/textures/chipped/rounded_gilded_blackstone_bricks.png differ diff --git a/public/textures/chipped/rounded_granite_bricks.png b/public/textures/chipped/rounded_granite_bricks.png new file mode 100644 index 00000000..8b946969 Binary files /dev/null and b/public/textures/chipped/rounded_granite_bricks.png differ diff --git a/public/textures/chipped/rounded_ice_bricks.png b/public/textures/chipped/rounded_ice_bricks.png new file mode 100644 index 00000000..e88a58a4 Binary files /dev/null and b/public/textures/chipped/rounded_ice_bricks.png differ diff --git a/public/textures/chipped/rounded_lapis_block_bricks.png b/public/textures/chipped/rounded_lapis_block_bricks.png new file mode 100644 index 00000000..66b9f634 Binary files /dev/null and b/public/textures/chipped/rounded_lapis_block_bricks.png differ diff --git a/public/textures/chipped/rounded_lodestone_bricks.png b/public/textures/chipped/rounded_lodestone_bricks.png new file mode 100644 index 00000000..97e0ea83 Binary files /dev/null and b/public/textures/chipped/rounded_lodestone_bricks.png differ diff --git a/public/textures/chipped/rounded_magma_block_bricks.png b/public/textures/chipped/rounded_magma_block_bricks.png new file mode 100644 index 00000000..0d97962a Binary files /dev/null and b/public/textures/chipped/rounded_magma_block_bricks.png differ diff --git a/public/textures/chipped/rounded_mossy_cobblestone_bricks.png b/public/textures/chipped/rounded_mossy_cobblestone_bricks.png new file mode 100644 index 00000000..4ae011a2 Binary files /dev/null and b/public/textures/chipped/rounded_mossy_cobblestone_bricks.png differ diff --git a/public/textures/chipped/rounded_mossy_stone_bricks_bricks.png b/public/textures/chipped/rounded_mossy_stone_bricks_bricks.png new file mode 100644 index 00000000..4c0e4c43 Binary files /dev/null and b/public/textures/chipped/rounded_mossy_stone_bricks_bricks.png differ diff --git a/public/textures/chipped/rounded_nether_bricks_bricks.png b/public/textures/chipped/rounded_nether_bricks_bricks.png new file mode 100644 index 00000000..d545a4a4 Binary files /dev/null and b/public/textures/chipped/rounded_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/rounded_netherrack_bricks.png b/public/textures/chipped/rounded_netherrack_bricks.png new file mode 100644 index 00000000..a6899e59 Binary files /dev/null and b/public/textures/chipped/rounded_netherrack_bricks.png differ diff --git a/public/textures/chipped/rounded_obsidian_bricks.png b/public/textures/chipped/rounded_obsidian_bricks.png new file mode 100644 index 00000000..c01f8130 Binary files /dev/null and b/public/textures/chipped/rounded_obsidian_bricks.png differ diff --git a/public/textures/chipped/rounded_packed_ice_bricks.png b/public/textures/chipped/rounded_packed_ice_bricks.png new file mode 100644 index 00000000..3aaf7608 Binary files /dev/null and b/public/textures/chipped/rounded_packed_ice_bricks.png differ diff --git a/public/textures/chipped/rounded_prismarine_bricks.png b/public/textures/chipped/rounded_prismarine_bricks.png new file mode 100644 index 00000000..019e7b82 Binary files /dev/null and b/public/textures/chipped/rounded_prismarine_bricks.png differ diff --git a/public/textures/chipped/rounded_purpur_block_bricks.png b/public/textures/chipped/rounded_purpur_block_bricks.png new file mode 100644 index 00000000..37b4bd96 Binary files /dev/null and b/public/textures/chipped/rounded_purpur_block_bricks.png differ diff --git a/public/textures/chipped/rounded_quartz_block_bricks.png b/public/textures/chipped/rounded_quartz_block_bricks.png new file mode 100644 index 00000000..b89e09fd Binary files /dev/null and b/public/textures/chipped/rounded_quartz_block_bricks.png differ diff --git a/public/textures/chipped/rounded_raw_copper_block_bricks.png b/public/textures/chipped/rounded_raw_copper_block_bricks.png new file mode 100644 index 00000000..0338e5f1 Binary files /dev/null and b/public/textures/chipped/rounded_raw_copper_block_bricks.png differ diff --git a/public/textures/chipped/rounded_raw_gold_block_bricks.png b/public/textures/chipped/rounded_raw_gold_block_bricks.png new file mode 100644 index 00000000..7925cc5e Binary files /dev/null and b/public/textures/chipped/rounded_raw_gold_block_bricks.png differ diff --git a/public/textures/chipped/rounded_raw_iron_block_bricks.png b/public/textures/chipped/rounded_raw_iron_block_bricks.png new file mode 100644 index 00000000..0d924bd3 Binary files /dev/null and b/public/textures/chipped/rounded_raw_iron_block_bricks.png differ diff --git a/public/textures/chipped/rounded_red_nether_bricks_bricks.png b/public/textures/chipped/rounded_red_nether_bricks_bricks.png new file mode 100644 index 00000000..94517685 Binary files /dev/null and b/public/textures/chipped/rounded_red_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/rounded_red_sandstone_bricks.png b/public/textures/chipped/rounded_red_sandstone_bricks.png new file mode 100644 index 00000000..b3f8e781 Binary files /dev/null and b/public/textures/chipped/rounded_red_sandstone_bricks.png differ diff --git a/public/textures/chipped/rounded_redstone_block_bricks.png b/public/textures/chipped/rounded_redstone_block_bricks.png new file mode 100644 index 00000000..58988b3f Binary files /dev/null and b/public/textures/chipped/rounded_redstone_block_bricks.png differ diff --git a/public/textures/chipped/rounded_sandstone_bricks.png b/public/textures/chipped/rounded_sandstone_bricks.png new file mode 100644 index 00000000..a39a74e5 Binary files /dev/null and b/public/textures/chipped/rounded_sandstone_bricks.png differ diff --git a/public/textures/chipped/rounded_smooth_stone_bricks.png b/public/textures/chipped/rounded_smooth_stone_bricks.png new file mode 100644 index 00000000..1ba4cda0 Binary files /dev/null and b/public/textures/chipped/rounded_smooth_stone_bricks.png differ diff --git a/public/textures/chipped/rounded_snow_block_bricks.png b/public/textures/chipped/rounded_snow_block_bricks.png new file mode 100644 index 00000000..5228625b Binary files /dev/null and b/public/textures/chipped/rounded_snow_block_bricks.png differ diff --git a/public/textures/chipped/rounded_stone_bricks.png b/public/textures/chipped/rounded_stone_bricks.png new file mode 100644 index 00000000..163122b7 Binary files /dev/null and b/public/textures/chipped/rounded_stone_bricks.png differ diff --git a/public/textures/chipped/rounded_tuff_bricks.png b/public/textures/chipped/rounded_tuff_bricks.png new file mode 100644 index 00000000..54a181a2 Binary files /dev/null and b/public/textures/chipped/rounded_tuff_bricks.png differ diff --git a/public/textures/chipped/rune_mud.png b/public/textures/chipped/rune_mud.png new file mode 100644 index 00000000..081dda40 Binary files /dev/null and b/public/textures/chipped/rune_mud.png differ diff --git a/public/textures/chipped/rune_mud_bricks.png b/public/textures/chipped/rune_mud_bricks.png new file mode 100644 index 00000000..ffbd2e82 Binary files /dev/null and b/public/textures/chipped/rune_mud_bricks.png differ diff --git a/public/textures/chipped/rune_packed_mud.png b/public/textures/chipped/rune_packed_mud.png new file mode 100644 index 00000000..9d578d81 Binary files /dev/null and b/public/textures/chipped/rune_packed_mud.png differ diff --git a/public/textures/chipped/runic_carved_amethyst_block.png b/public/textures/chipped/runic_carved_amethyst_block.png new file mode 100644 index 00000000..80be3a30 Binary files /dev/null and b/public/textures/chipped/runic_carved_amethyst_block.png differ diff --git a/public/textures/chipped/runic_carved_ancient_debris.png b/public/textures/chipped/runic_carved_ancient_debris.png new file mode 100644 index 00000000..74f01bb9 Binary files /dev/null and b/public/textures/chipped/runic_carved_ancient_debris.png differ diff --git a/public/textures/chipped/runic_carved_andesite.png b/public/textures/chipped/runic_carved_andesite.png new file mode 100644 index 00000000..476477c3 Binary files /dev/null and b/public/textures/chipped/runic_carved_andesite.png differ diff --git a/public/textures/chipped/runic_carved_basalt.png b/public/textures/chipped/runic_carved_basalt.png new file mode 100644 index 00000000..56fbe47d Binary files /dev/null and b/public/textures/chipped/runic_carved_basalt.png differ diff --git a/public/textures/chipped/runic_carved_blackstone.png b/public/textures/chipped/runic_carved_blackstone.png new file mode 100644 index 00000000..a9aff8da Binary files /dev/null and b/public/textures/chipped/runic_carved_blackstone.png differ diff --git a/public/textures/chipped/runic_carved_blue_ice.png b/public/textures/chipped/runic_carved_blue_ice.png new file mode 100644 index 00000000..71dfb07f Binary files /dev/null and b/public/textures/chipped/runic_carved_blue_ice.png differ diff --git a/public/textures/chipped/runic_carved_borderless_bricks.png b/public/textures/chipped/runic_carved_borderless_bricks.png new file mode 100644 index 00000000..011af24c Binary files /dev/null and b/public/textures/chipped/runic_carved_borderless_bricks.png differ diff --git a/public/textures/chipped/runic_carved_bricks.png b/public/textures/chipped/runic_carved_bricks.png new file mode 100644 index 00000000..792a1a4d Binary files /dev/null and b/public/textures/chipped/runic_carved_bricks.png differ diff --git a/public/textures/chipped/runic_carved_calcite.png b/public/textures/chipped/runic_carved_calcite.png new file mode 100644 index 00000000..3a9fd394 Binary files /dev/null and b/public/textures/chipped/runic_carved_calcite.png differ diff --git a/public/textures/chipped/runic_carved_clay.png b/public/textures/chipped/runic_carved_clay.png new file mode 100644 index 00000000..e49fb726 Binary files /dev/null and b/public/textures/chipped/runic_carved_clay.png differ diff --git a/public/textures/chipped/runic_carved_coal_block.png b/public/textures/chipped/runic_carved_coal_block.png new file mode 100644 index 00000000..da2dbcdf Binary files /dev/null and b/public/textures/chipped/runic_carved_coal_block.png differ diff --git a/public/textures/chipped/runic_carved_cobblestone.png b/public/textures/chipped/runic_carved_cobblestone.png new file mode 100644 index 00000000..aa658b6f Binary files /dev/null and b/public/textures/chipped/runic_carved_cobblestone.png differ diff --git a/public/textures/chipped/runic_carved_crying_obsidian.png b/public/textures/chipped/runic_carved_crying_obsidian.png new file mode 100644 index 00000000..5bef36fc Binary files /dev/null and b/public/textures/chipped/runic_carved_crying_obsidian.png differ diff --git a/public/textures/chipped/runic_carved_dark_prismarine.png b/public/textures/chipped/runic_carved_dark_prismarine.png new file mode 100644 index 00000000..b66f9f27 Binary files /dev/null and b/public/textures/chipped/runic_carved_dark_prismarine.png differ diff --git a/public/textures/chipped/runic_carved_deepslate.png b/public/textures/chipped/runic_carved_deepslate.png new file mode 100644 index 00000000..f90ca531 Binary files /dev/null and b/public/textures/chipped/runic_carved_deepslate.png differ diff --git a/public/textures/chipped/runic_carved_diorite.png b/public/textures/chipped/runic_carved_diorite.png new file mode 100644 index 00000000..3df3b692 Binary files /dev/null and b/public/textures/chipped/runic_carved_diorite.png differ diff --git a/public/textures/chipped/runic_carved_dirt.png b/public/textures/chipped/runic_carved_dirt.png new file mode 100644 index 00000000..e140613b Binary files /dev/null and b/public/textures/chipped/runic_carved_dirt.png differ diff --git a/public/textures/chipped/runic_carved_dripstone_block.png b/public/textures/chipped/runic_carved_dripstone_block.png new file mode 100644 index 00000000..e206b29b Binary files /dev/null and b/public/textures/chipped/runic_carved_dripstone_block.png differ diff --git a/public/textures/chipped/runic_carved_end_stone.png b/public/textures/chipped/runic_carved_end_stone.png new file mode 100644 index 00000000..4fe45eb4 Binary files /dev/null and b/public/textures/chipped/runic_carved_end_stone.png differ diff --git a/public/textures/chipped/runic_carved_gilded_blackstone.png b/public/textures/chipped/runic_carved_gilded_blackstone.png new file mode 100644 index 00000000..57f65f50 Binary files /dev/null and b/public/textures/chipped/runic_carved_gilded_blackstone.png differ diff --git a/public/textures/chipped/runic_carved_granite.png b/public/textures/chipped/runic_carved_granite.png new file mode 100644 index 00000000..5711a9c1 Binary files /dev/null and b/public/textures/chipped/runic_carved_granite.png differ diff --git a/public/textures/chipped/runic_carved_ice.png b/public/textures/chipped/runic_carved_ice.png new file mode 100644 index 00000000..4eb76bed Binary files /dev/null and b/public/textures/chipped/runic_carved_ice.png differ diff --git a/public/textures/chipped/runic_carved_lapis_block.png b/public/textures/chipped/runic_carved_lapis_block.png new file mode 100644 index 00000000..a174e7ed Binary files /dev/null and b/public/textures/chipped/runic_carved_lapis_block.png differ diff --git a/public/textures/chipped/runic_carved_lodestone.png b/public/textures/chipped/runic_carved_lodestone.png new file mode 100644 index 00000000..b8eb0343 Binary files /dev/null and b/public/textures/chipped/runic_carved_lodestone.png differ diff --git a/public/textures/chipped/runic_carved_magma_block.png b/public/textures/chipped/runic_carved_magma_block.png new file mode 100644 index 00000000..c1429273 Binary files /dev/null and b/public/textures/chipped/runic_carved_magma_block.png differ diff --git a/public/textures/chipped/runic_carved_mossy_cobblestone.png b/public/textures/chipped/runic_carved_mossy_cobblestone.png new file mode 100644 index 00000000..c9de89af Binary files /dev/null and b/public/textures/chipped/runic_carved_mossy_cobblestone.png differ diff --git a/public/textures/chipped/runic_carved_mossy_stone_bricks.png b/public/textures/chipped/runic_carved_mossy_stone_bricks.png new file mode 100644 index 00000000..16709ad7 Binary files /dev/null and b/public/textures/chipped/runic_carved_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/runic_carved_nether_bricks.png b/public/textures/chipped/runic_carved_nether_bricks.png new file mode 100644 index 00000000..9704b2cb Binary files /dev/null and b/public/textures/chipped/runic_carved_nether_bricks.png differ diff --git a/public/textures/chipped/runic_carved_netherrack.png b/public/textures/chipped/runic_carved_netherrack.png new file mode 100644 index 00000000..fc4c7833 Binary files /dev/null and b/public/textures/chipped/runic_carved_netherrack.png differ diff --git a/public/textures/chipped/runic_carved_obsidian.png b/public/textures/chipped/runic_carved_obsidian.png new file mode 100644 index 00000000..cb78973d Binary files /dev/null and b/public/textures/chipped/runic_carved_obsidian.png differ diff --git a/public/textures/chipped/runic_carved_packed_ice.png b/public/textures/chipped/runic_carved_packed_ice.png new file mode 100644 index 00000000..bea09c0f Binary files /dev/null and b/public/textures/chipped/runic_carved_packed_ice.png differ diff --git a/public/textures/chipped/runic_carved_prismarine.png b/public/textures/chipped/runic_carved_prismarine.png new file mode 100644 index 00000000..753c3af2 Binary files /dev/null and b/public/textures/chipped/runic_carved_prismarine.png differ diff --git a/public/textures/chipped/runic_carved_purpur_block.png b/public/textures/chipped/runic_carved_purpur_block.png new file mode 100644 index 00000000..8e6b9068 Binary files /dev/null and b/public/textures/chipped/runic_carved_purpur_block.png differ diff --git a/public/textures/chipped/runic_carved_quartz_block.png b/public/textures/chipped/runic_carved_quartz_block.png new file mode 100644 index 00000000..401e969f Binary files /dev/null and b/public/textures/chipped/runic_carved_quartz_block.png differ diff --git a/public/textures/chipped/runic_carved_raw_copper_block.png b/public/textures/chipped/runic_carved_raw_copper_block.png new file mode 100644 index 00000000..5258a674 Binary files /dev/null and b/public/textures/chipped/runic_carved_raw_copper_block.png differ diff --git a/public/textures/chipped/runic_carved_raw_gold_block.png b/public/textures/chipped/runic_carved_raw_gold_block.png new file mode 100644 index 00000000..d0b01823 Binary files /dev/null and b/public/textures/chipped/runic_carved_raw_gold_block.png differ diff --git a/public/textures/chipped/runic_carved_raw_iron_block.png b/public/textures/chipped/runic_carved_raw_iron_block.png new file mode 100644 index 00000000..7a39df37 Binary files /dev/null and b/public/textures/chipped/runic_carved_raw_iron_block.png differ diff --git a/public/textures/chipped/runic_carved_red_nether_bricks.png b/public/textures/chipped/runic_carved_red_nether_bricks.png new file mode 100644 index 00000000..c1ea805c Binary files /dev/null and b/public/textures/chipped/runic_carved_red_nether_bricks.png differ diff --git a/public/textures/chipped/runic_carved_red_sandstone.png b/public/textures/chipped/runic_carved_red_sandstone.png new file mode 100644 index 00000000..bbf133bc Binary files /dev/null and b/public/textures/chipped/runic_carved_red_sandstone.png differ diff --git a/public/textures/chipped/runic_carved_redstone_block.png b/public/textures/chipped/runic_carved_redstone_block.png new file mode 100644 index 00000000..897fa876 Binary files /dev/null and b/public/textures/chipped/runic_carved_redstone_block.png differ diff --git a/public/textures/chipped/runic_carved_sandstone.png b/public/textures/chipped/runic_carved_sandstone.png new file mode 100644 index 00000000..18054ef4 Binary files /dev/null and b/public/textures/chipped/runic_carved_sandstone.png differ diff --git a/public/textures/chipped/runic_carved_smooth_stone.png b/public/textures/chipped/runic_carved_smooth_stone.png new file mode 100644 index 00000000..26ff7b94 Binary files /dev/null and b/public/textures/chipped/runic_carved_smooth_stone.png differ diff --git a/public/textures/chipped/runic_carved_snow_block.png b/public/textures/chipped/runic_carved_snow_block.png new file mode 100644 index 00000000..282a1be6 Binary files /dev/null and b/public/textures/chipped/runic_carved_snow_block.png differ diff --git a/public/textures/chipped/runic_carved_stone.png b/public/textures/chipped/runic_carved_stone.png new file mode 100644 index 00000000..a0d90c5b Binary files /dev/null and b/public/textures/chipped/runic_carved_stone.png differ diff --git a/public/textures/chipped/runic_carved_tuff.png b/public/textures/chipped/runic_carved_tuff.png new file mode 100644 index 00000000..a4ae410a Binary files /dev/null and b/public/textures/chipped/runic_carved_tuff.png differ diff --git a/public/textures/chipped/rusted_black_concrete.png b/public/textures/chipped/rusted_black_concrete.png new file mode 100644 index 00000000..2a294c47 Binary files /dev/null and b/public/textures/chipped/rusted_black_concrete.png differ diff --git a/public/textures/chipped/rusted_blue_concrete.png b/public/textures/chipped/rusted_blue_concrete.png new file mode 100644 index 00000000..56aa4023 Binary files /dev/null and b/public/textures/chipped/rusted_blue_concrete.png differ diff --git a/public/textures/chipped/rusted_brown_concrete.png b/public/textures/chipped/rusted_brown_concrete.png new file mode 100644 index 00000000..b9a40234 Binary files /dev/null and b/public/textures/chipped/rusted_brown_concrete.png differ diff --git a/public/textures/chipped/rusted_cyan_concrete.png b/public/textures/chipped/rusted_cyan_concrete.png new file mode 100644 index 00000000..565b3c5b Binary files /dev/null and b/public/textures/chipped/rusted_cyan_concrete.png differ diff --git a/public/textures/chipped/rusted_gray_concrete.png b/public/textures/chipped/rusted_gray_concrete.png new file mode 100644 index 00000000..77f5c99a Binary files /dev/null and b/public/textures/chipped/rusted_gray_concrete.png differ diff --git a/public/textures/chipped/rusted_green_concrete.png b/public/textures/chipped/rusted_green_concrete.png new file mode 100644 index 00000000..ae4bce7b Binary files /dev/null and b/public/textures/chipped/rusted_green_concrete.png differ diff --git a/public/textures/chipped/rusted_light_blue_concrete.png b/public/textures/chipped/rusted_light_blue_concrete.png new file mode 100644 index 00000000..785c30dc Binary files /dev/null and b/public/textures/chipped/rusted_light_blue_concrete.png differ diff --git a/public/textures/chipped/rusted_light_gray_concrete.png b/public/textures/chipped/rusted_light_gray_concrete.png new file mode 100644 index 00000000..daca2e4c Binary files /dev/null and b/public/textures/chipped/rusted_light_gray_concrete.png differ diff --git a/public/textures/chipped/rusted_lime_concrete.png b/public/textures/chipped/rusted_lime_concrete.png new file mode 100644 index 00000000..27469631 Binary files /dev/null and b/public/textures/chipped/rusted_lime_concrete.png differ diff --git a/public/textures/chipped/rusted_magenta_concrete.png b/public/textures/chipped/rusted_magenta_concrete.png new file mode 100644 index 00000000..75aa1f52 Binary files /dev/null and b/public/textures/chipped/rusted_magenta_concrete.png differ diff --git a/public/textures/chipped/rusted_orange_concrete.png b/public/textures/chipped/rusted_orange_concrete.png new file mode 100644 index 00000000..b2665d10 Binary files /dev/null and b/public/textures/chipped/rusted_orange_concrete.png differ diff --git a/public/textures/chipped/rusted_pink_concrete.png b/public/textures/chipped/rusted_pink_concrete.png new file mode 100644 index 00000000..1f5e066e Binary files /dev/null and b/public/textures/chipped/rusted_pink_concrete.png differ diff --git a/public/textures/chipped/rusted_purple_concrete.png b/public/textures/chipped/rusted_purple_concrete.png new file mode 100644 index 00000000..27d3423f Binary files /dev/null and b/public/textures/chipped/rusted_purple_concrete.png differ diff --git a/public/textures/chipped/rusted_red_concrete.png b/public/textures/chipped/rusted_red_concrete.png new file mode 100644 index 00000000..f6e066ab Binary files /dev/null and b/public/textures/chipped/rusted_red_concrete.png differ diff --git a/public/textures/chipped/rusted_white_concrete.png b/public/textures/chipped/rusted_white_concrete.png new file mode 100644 index 00000000..b27917f4 Binary files /dev/null and b/public/textures/chipped/rusted_white_concrete.png differ diff --git a/public/textures/chipped/rusted_yellow_concrete.png b/public/textures/chipped/rusted_yellow_concrete.png new file mode 100644 index 00000000..0356b8db Binary files /dev/null and b/public/textures/chipped/rusted_yellow_concrete.png differ diff --git a/public/textures/chipped/rustic_melon.png b/public/textures/chipped/rustic_melon.png new file mode 100644 index 00000000..2b82d971 Binary files /dev/null and b/public/textures/chipped/rustic_melon.png differ diff --git a/public/textures/chipped/sad_amethyst_block.png b/public/textures/chipped/sad_amethyst_block.png new file mode 100644 index 00000000..f3455879 Binary files /dev/null and b/public/textures/chipped/sad_amethyst_block.png differ diff --git a/public/textures/chipped/sad_ancient_debris.png b/public/textures/chipped/sad_ancient_debris.png new file mode 100644 index 00000000..27338f92 Binary files /dev/null and b/public/textures/chipped/sad_ancient_debris.png differ diff --git a/public/textures/chipped/sad_andesite.png b/public/textures/chipped/sad_andesite.png new file mode 100644 index 00000000..81f2548b Binary files /dev/null and b/public/textures/chipped/sad_andesite.png differ diff --git a/public/textures/chipped/sad_basalt.png b/public/textures/chipped/sad_basalt.png new file mode 100644 index 00000000..de83a962 Binary files /dev/null and b/public/textures/chipped/sad_basalt.png differ diff --git a/public/textures/chipped/sad_blackstone.png b/public/textures/chipped/sad_blackstone.png new file mode 100644 index 00000000..f183c44b Binary files /dev/null and b/public/textures/chipped/sad_blackstone.png differ diff --git a/public/textures/chipped/sad_blue_ice.png b/public/textures/chipped/sad_blue_ice.png new file mode 100644 index 00000000..e5ab139f Binary files /dev/null and b/public/textures/chipped/sad_blue_ice.png differ diff --git a/public/textures/chipped/sad_borderless_bricks.png b/public/textures/chipped/sad_borderless_bricks.png new file mode 100644 index 00000000..b4925314 Binary files /dev/null and b/public/textures/chipped/sad_borderless_bricks.png differ diff --git a/public/textures/chipped/sad_bricks.png b/public/textures/chipped/sad_bricks.png new file mode 100644 index 00000000..1172b840 Binary files /dev/null and b/public/textures/chipped/sad_bricks.png differ diff --git a/public/textures/chipped/sad_calcite.png b/public/textures/chipped/sad_calcite.png new file mode 100644 index 00000000..ca2118ae Binary files /dev/null and b/public/textures/chipped/sad_calcite.png differ diff --git a/public/textures/chipped/sad_clay.png b/public/textures/chipped/sad_clay.png new file mode 100644 index 00000000..0f8c746f Binary files /dev/null and b/public/textures/chipped/sad_clay.png differ diff --git a/public/textures/chipped/sad_coal_block.png b/public/textures/chipped/sad_coal_block.png new file mode 100644 index 00000000..e0158a6e Binary files /dev/null and b/public/textures/chipped/sad_coal_block.png differ diff --git a/public/textures/chipped/sad_cobblestone.png b/public/textures/chipped/sad_cobblestone.png new file mode 100644 index 00000000..bf0d9e6c Binary files /dev/null and b/public/textures/chipped/sad_cobblestone.png differ diff --git a/public/textures/chipped/sad_crying_obsidian.png b/public/textures/chipped/sad_crying_obsidian.png new file mode 100644 index 00000000..50dd5f4a Binary files /dev/null and b/public/textures/chipped/sad_crying_obsidian.png differ diff --git a/public/textures/chipped/sad_dark_prismarine.png b/public/textures/chipped/sad_dark_prismarine.png new file mode 100644 index 00000000..b455743b Binary files /dev/null and b/public/textures/chipped/sad_dark_prismarine.png differ diff --git a/public/textures/chipped/sad_deepslate.png b/public/textures/chipped/sad_deepslate.png new file mode 100644 index 00000000..e82710ca Binary files /dev/null and b/public/textures/chipped/sad_deepslate.png differ diff --git a/public/textures/chipped/sad_diorite.png b/public/textures/chipped/sad_diorite.png new file mode 100644 index 00000000..645e9430 Binary files /dev/null and b/public/textures/chipped/sad_diorite.png differ diff --git a/public/textures/chipped/sad_dirt.png b/public/textures/chipped/sad_dirt.png new file mode 100644 index 00000000..d610d58e Binary files /dev/null and b/public/textures/chipped/sad_dirt.png differ diff --git a/public/textures/chipped/sad_dripstone_block.png b/public/textures/chipped/sad_dripstone_block.png new file mode 100644 index 00000000..19786883 Binary files /dev/null and b/public/textures/chipped/sad_dripstone_block.png differ diff --git a/public/textures/chipped/sad_end_stone.png b/public/textures/chipped/sad_end_stone.png new file mode 100644 index 00000000..7ee58427 Binary files /dev/null and b/public/textures/chipped/sad_end_stone.png differ diff --git a/public/textures/chipped/sad_gilded_blackstone.png b/public/textures/chipped/sad_gilded_blackstone.png new file mode 100644 index 00000000..93663a24 Binary files /dev/null and b/public/textures/chipped/sad_gilded_blackstone.png differ diff --git a/public/textures/chipped/sad_granite.png b/public/textures/chipped/sad_granite.png new file mode 100644 index 00000000..1405fbc4 Binary files /dev/null and b/public/textures/chipped/sad_granite.png differ diff --git a/public/textures/chipped/sad_ice.png b/public/textures/chipped/sad_ice.png new file mode 100644 index 00000000..802c873f Binary files /dev/null and b/public/textures/chipped/sad_ice.png differ diff --git a/public/textures/chipped/sad_lapis_block.png b/public/textures/chipped/sad_lapis_block.png new file mode 100644 index 00000000..6b54ca61 Binary files /dev/null and b/public/textures/chipped/sad_lapis_block.png differ diff --git a/public/textures/chipped/sad_lodestone.png b/public/textures/chipped/sad_lodestone.png new file mode 100644 index 00000000..edad75c8 Binary files /dev/null and b/public/textures/chipped/sad_lodestone.png differ diff --git a/public/textures/chipped/sad_magma_block.png b/public/textures/chipped/sad_magma_block.png new file mode 100644 index 00000000..e577609b Binary files /dev/null and b/public/textures/chipped/sad_magma_block.png differ diff --git a/public/textures/chipped/sad_mossy_cobblestone.png b/public/textures/chipped/sad_mossy_cobblestone.png new file mode 100644 index 00000000..30a1436b Binary files /dev/null and b/public/textures/chipped/sad_mossy_cobblestone.png differ diff --git a/public/textures/chipped/sad_mossy_stone_bricks.png b/public/textures/chipped/sad_mossy_stone_bricks.png new file mode 100644 index 00000000..307d8a6d Binary files /dev/null and b/public/textures/chipped/sad_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/sad_mud.png b/public/textures/chipped/sad_mud.png new file mode 100644 index 00000000..81a80a37 Binary files /dev/null and b/public/textures/chipped/sad_mud.png differ diff --git a/public/textures/chipped/sad_mud_bricks.png b/public/textures/chipped/sad_mud_bricks.png new file mode 100644 index 00000000..9e4af58f Binary files /dev/null and b/public/textures/chipped/sad_mud_bricks.png differ diff --git a/public/textures/chipped/sad_nether_bricks.png b/public/textures/chipped/sad_nether_bricks.png new file mode 100644 index 00000000..e1a1ffcb Binary files /dev/null and b/public/textures/chipped/sad_nether_bricks.png differ diff --git a/public/textures/chipped/sad_netherrack.png b/public/textures/chipped/sad_netherrack.png new file mode 100644 index 00000000..fd9d794e Binary files /dev/null and b/public/textures/chipped/sad_netherrack.png differ diff --git a/public/textures/chipped/sad_obsidian.png b/public/textures/chipped/sad_obsidian.png new file mode 100644 index 00000000..4690284e Binary files /dev/null and b/public/textures/chipped/sad_obsidian.png differ diff --git a/public/textures/chipped/sad_packed_ice.png b/public/textures/chipped/sad_packed_ice.png new file mode 100644 index 00000000..911c89dc Binary files /dev/null and b/public/textures/chipped/sad_packed_ice.png differ diff --git a/public/textures/chipped/sad_packed_mud.png b/public/textures/chipped/sad_packed_mud.png new file mode 100644 index 00000000..c22614a0 Binary files /dev/null and b/public/textures/chipped/sad_packed_mud.png differ diff --git a/public/textures/chipped/sad_prismarine.png b/public/textures/chipped/sad_prismarine.png new file mode 100644 index 00000000..1854108e Binary files /dev/null and b/public/textures/chipped/sad_prismarine.png differ diff --git a/public/textures/chipped/sad_purpur_block.png b/public/textures/chipped/sad_purpur_block.png new file mode 100644 index 00000000..71f224eb Binary files /dev/null and b/public/textures/chipped/sad_purpur_block.png differ diff --git a/public/textures/chipped/sad_quartz_block.png b/public/textures/chipped/sad_quartz_block.png new file mode 100644 index 00000000..9109e6bc Binary files /dev/null and b/public/textures/chipped/sad_quartz_block.png differ diff --git a/public/textures/chipped/sad_raw_copper_block.png b/public/textures/chipped/sad_raw_copper_block.png new file mode 100644 index 00000000..b4393544 Binary files /dev/null and b/public/textures/chipped/sad_raw_copper_block.png differ diff --git a/public/textures/chipped/sad_raw_gold_block.png b/public/textures/chipped/sad_raw_gold_block.png new file mode 100644 index 00000000..96a27d59 Binary files /dev/null and b/public/textures/chipped/sad_raw_gold_block.png differ diff --git a/public/textures/chipped/sad_raw_iron_block.png b/public/textures/chipped/sad_raw_iron_block.png new file mode 100644 index 00000000..dd566aec Binary files /dev/null and b/public/textures/chipped/sad_raw_iron_block.png differ diff --git a/public/textures/chipped/sad_red_nether_bricks.png b/public/textures/chipped/sad_red_nether_bricks.png new file mode 100644 index 00000000..dede77af Binary files /dev/null and b/public/textures/chipped/sad_red_nether_bricks.png differ diff --git a/public/textures/chipped/sad_red_sandstone.png b/public/textures/chipped/sad_red_sandstone.png new file mode 100644 index 00000000..cb2afc2e Binary files /dev/null and b/public/textures/chipped/sad_red_sandstone.png differ diff --git a/public/textures/chipped/sad_redstone_block.png b/public/textures/chipped/sad_redstone_block.png new file mode 100644 index 00000000..ca2670b7 Binary files /dev/null and b/public/textures/chipped/sad_redstone_block.png differ diff --git a/public/textures/chipped/sad_sandstone.png b/public/textures/chipped/sad_sandstone.png new file mode 100644 index 00000000..37a34e58 Binary files /dev/null and b/public/textures/chipped/sad_sandstone.png differ diff --git a/public/textures/chipped/sad_smooth_stone.png b/public/textures/chipped/sad_smooth_stone.png new file mode 100644 index 00000000..ec009368 Binary files /dev/null and b/public/textures/chipped/sad_smooth_stone.png differ diff --git a/public/textures/chipped/sad_snow_block.png b/public/textures/chipped/sad_snow_block.png new file mode 100644 index 00000000..79dc667f Binary files /dev/null and b/public/textures/chipped/sad_snow_block.png differ diff --git a/public/textures/chipped/sad_stone.png b/public/textures/chipped/sad_stone.png new file mode 100644 index 00000000..5bdc33f5 Binary files /dev/null and b/public/textures/chipped/sad_stone.png differ diff --git a/public/textures/chipped/sad_tuff.png b/public/textures/chipped/sad_tuff.png new file mode 100644 index 00000000..80dd7c8b Binary files /dev/null and b/public/textures/chipped/sad_tuff.png differ diff --git a/public/textures/chipped/sanded_amethyst_block.png b/public/textures/chipped/sanded_amethyst_block.png new file mode 100644 index 00000000..0441eac3 Binary files /dev/null and b/public/textures/chipped/sanded_amethyst_block.png differ diff --git a/public/textures/chipped/sanded_ancient_debris.png b/public/textures/chipped/sanded_ancient_debris.png new file mode 100644 index 00000000..77defd6f Binary files /dev/null and b/public/textures/chipped/sanded_ancient_debris.png differ diff --git a/public/textures/chipped/sanded_andesite.png b/public/textures/chipped/sanded_andesite.png new file mode 100644 index 00000000..7866c11c Binary files /dev/null and b/public/textures/chipped/sanded_andesite.png differ diff --git a/public/textures/chipped/sanded_basalt.png b/public/textures/chipped/sanded_basalt.png new file mode 100644 index 00000000..1ad78f9c Binary files /dev/null and b/public/textures/chipped/sanded_basalt.png differ diff --git a/public/textures/chipped/sanded_blackstone.png b/public/textures/chipped/sanded_blackstone.png new file mode 100644 index 00000000..ae31cb23 Binary files /dev/null and b/public/textures/chipped/sanded_blackstone.png differ diff --git a/public/textures/chipped/sanded_blue_ice.png b/public/textures/chipped/sanded_blue_ice.png new file mode 100644 index 00000000..6980d83f Binary files /dev/null and b/public/textures/chipped/sanded_blue_ice.png differ diff --git a/public/textures/chipped/sanded_borderless_bricks.png b/public/textures/chipped/sanded_borderless_bricks.png new file mode 100644 index 00000000..899f05c7 Binary files /dev/null and b/public/textures/chipped/sanded_borderless_bricks.png differ diff --git a/public/textures/chipped/sanded_bricks.png b/public/textures/chipped/sanded_bricks.png new file mode 100644 index 00000000..899f05c7 Binary files /dev/null and b/public/textures/chipped/sanded_bricks.png differ diff --git a/public/textures/chipped/sanded_calcite.png b/public/textures/chipped/sanded_calcite.png new file mode 100644 index 00000000..2c1a2012 Binary files /dev/null and b/public/textures/chipped/sanded_calcite.png differ diff --git a/public/textures/chipped/sanded_clay.png b/public/textures/chipped/sanded_clay.png new file mode 100644 index 00000000..3f371596 Binary files /dev/null and b/public/textures/chipped/sanded_clay.png differ diff --git a/public/textures/chipped/sanded_coal_block.png b/public/textures/chipped/sanded_coal_block.png new file mode 100644 index 00000000..758ef3e4 Binary files /dev/null and b/public/textures/chipped/sanded_coal_block.png differ diff --git a/public/textures/chipped/sanded_cobblestone.png b/public/textures/chipped/sanded_cobblestone.png new file mode 100644 index 00000000..31330bf4 Binary files /dev/null and b/public/textures/chipped/sanded_cobblestone.png differ diff --git a/public/textures/chipped/sanded_crying_obsidian.png b/public/textures/chipped/sanded_crying_obsidian.png new file mode 100644 index 00000000..3f21fcf1 Binary files /dev/null and b/public/textures/chipped/sanded_crying_obsidian.png differ diff --git a/public/textures/chipped/sanded_dark_prismarine.png b/public/textures/chipped/sanded_dark_prismarine.png new file mode 100644 index 00000000..047d82b8 Binary files /dev/null and b/public/textures/chipped/sanded_dark_prismarine.png differ diff --git a/public/textures/chipped/sanded_deepslate.png b/public/textures/chipped/sanded_deepslate.png new file mode 100644 index 00000000..8e21887f Binary files /dev/null and b/public/textures/chipped/sanded_deepslate.png differ diff --git a/public/textures/chipped/sanded_diorite.png b/public/textures/chipped/sanded_diorite.png new file mode 100644 index 00000000..f732bb1e Binary files /dev/null and b/public/textures/chipped/sanded_diorite.png differ diff --git a/public/textures/chipped/sanded_dirt.png b/public/textures/chipped/sanded_dirt.png new file mode 100644 index 00000000..38c09763 Binary files /dev/null and b/public/textures/chipped/sanded_dirt.png differ diff --git a/public/textures/chipped/sanded_dripstone_block.png b/public/textures/chipped/sanded_dripstone_block.png new file mode 100644 index 00000000..fbe4375c Binary files /dev/null and b/public/textures/chipped/sanded_dripstone_block.png differ diff --git a/public/textures/chipped/sanded_end_stone.png b/public/textures/chipped/sanded_end_stone.png new file mode 100644 index 00000000..38ff0b7b Binary files /dev/null and b/public/textures/chipped/sanded_end_stone.png differ diff --git a/public/textures/chipped/sanded_gilded_blackstone.png b/public/textures/chipped/sanded_gilded_blackstone.png new file mode 100644 index 00000000..19a21580 Binary files /dev/null and b/public/textures/chipped/sanded_gilded_blackstone.png differ diff --git a/public/textures/chipped/sanded_granite.png b/public/textures/chipped/sanded_granite.png new file mode 100644 index 00000000..2e7b101d Binary files /dev/null and b/public/textures/chipped/sanded_granite.png differ diff --git a/public/textures/chipped/sanded_ice.png b/public/textures/chipped/sanded_ice.png new file mode 100644 index 00000000..18f6ff21 Binary files /dev/null and b/public/textures/chipped/sanded_ice.png differ diff --git a/public/textures/chipped/sanded_lapis_block.png b/public/textures/chipped/sanded_lapis_block.png new file mode 100644 index 00000000..bdf6cdec Binary files /dev/null and b/public/textures/chipped/sanded_lapis_block.png differ diff --git a/public/textures/chipped/sanded_lodestone.png b/public/textures/chipped/sanded_lodestone.png new file mode 100644 index 00000000..99fa59df Binary files /dev/null and b/public/textures/chipped/sanded_lodestone.png differ diff --git a/public/textures/chipped/sanded_magma_block.png b/public/textures/chipped/sanded_magma_block.png new file mode 100644 index 00000000..582f0e36 Binary files /dev/null and b/public/textures/chipped/sanded_magma_block.png differ diff --git a/public/textures/chipped/sanded_mossy_cobblestone.png b/public/textures/chipped/sanded_mossy_cobblestone.png new file mode 100644 index 00000000..2af63bac Binary files /dev/null and b/public/textures/chipped/sanded_mossy_cobblestone.png differ diff --git a/public/textures/chipped/sanded_mossy_stone_bricks.png b/public/textures/chipped/sanded_mossy_stone_bricks.png new file mode 100644 index 00000000..4d5e4b4d Binary files /dev/null and b/public/textures/chipped/sanded_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/sanded_nether_bricks.png b/public/textures/chipped/sanded_nether_bricks.png new file mode 100644 index 00000000..4303d257 Binary files /dev/null and b/public/textures/chipped/sanded_nether_bricks.png differ diff --git a/public/textures/chipped/sanded_netherrack.png b/public/textures/chipped/sanded_netherrack.png new file mode 100644 index 00000000..6ecda774 Binary files /dev/null and b/public/textures/chipped/sanded_netherrack.png differ diff --git a/public/textures/chipped/sanded_obsidian.png b/public/textures/chipped/sanded_obsidian.png new file mode 100644 index 00000000..b778be1e Binary files /dev/null and b/public/textures/chipped/sanded_obsidian.png differ diff --git a/public/textures/chipped/sanded_packed_ice.png b/public/textures/chipped/sanded_packed_ice.png new file mode 100644 index 00000000..890c390f Binary files /dev/null and b/public/textures/chipped/sanded_packed_ice.png differ diff --git a/public/textures/chipped/sanded_prismarine.png b/public/textures/chipped/sanded_prismarine.png new file mode 100644 index 00000000..427acfaa Binary files /dev/null and b/public/textures/chipped/sanded_prismarine.png differ diff --git a/public/textures/chipped/sanded_purpur_block.png b/public/textures/chipped/sanded_purpur_block.png new file mode 100644 index 00000000..cbcc6873 Binary files /dev/null and b/public/textures/chipped/sanded_purpur_block.png differ diff --git a/public/textures/chipped/sanded_quartz_block.png b/public/textures/chipped/sanded_quartz_block.png new file mode 100644 index 00000000..f759dc4f Binary files /dev/null and b/public/textures/chipped/sanded_quartz_block.png differ diff --git a/public/textures/chipped/sanded_raw_copper_block.png b/public/textures/chipped/sanded_raw_copper_block.png new file mode 100644 index 00000000..e9bd8c19 Binary files /dev/null and b/public/textures/chipped/sanded_raw_copper_block.png differ diff --git a/public/textures/chipped/sanded_raw_gold_block.png b/public/textures/chipped/sanded_raw_gold_block.png new file mode 100644 index 00000000..918414ac Binary files /dev/null and b/public/textures/chipped/sanded_raw_gold_block.png differ diff --git a/public/textures/chipped/sanded_raw_iron_block.png b/public/textures/chipped/sanded_raw_iron_block.png new file mode 100644 index 00000000..9c750f6e Binary files /dev/null and b/public/textures/chipped/sanded_raw_iron_block.png differ diff --git a/public/textures/chipped/sanded_red_nether_bricks.png b/public/textures/chipped/sanded_red_nether_bricks.png new file mode 100644 index 00000000..222efa48 Binary files /dev/null and b/public/textures/chipped/sanded_red_nether_bricks.png differ diff --git a/public/textures/chipped/sanded_red_sandstone.png b/public/textures/chipped/sanded_red_sandstone.png new file mode 100644 index 00000000..2b18faff Binary files /dev/null and b/public/textures/chipped/sanded_red_sandstone.png differ diff --git a/public/textures/chipped/sanded_redstone_block.png b/public/textures/chipped/sanded_redstone_block.png new file mode 100644 index 00000000..1deb79cb Binary files /dev/null and b/public/textures/chipped/sanded_redstone_block.png differ diff --git a/public/textures/chipped/sanded_sandstone.png b/public/textures/chipped/sanded_sandstone.png new file mode 100644 index 00000000..c8c3eef1 Binary files /dev/null and b/public/textures/chipped/sanded_sandstone.png differ diff --git a/public/textures/chipped/sanded_smooth_stone.png b/public/textures/chipped/sanded_smooth_stone.png new file mode 100644 index 00000000..a356c9f7 Binary files /dev/null and b/public/textures/chipped/sanded_smooth_stone.png differ diff --git a/public/textures/chipped/sanded_snow_block.png b/public/textures/chipped/sanded_snow_block.png new file mode 100644 index 00000000..2e44ba6a Binary files /dev/null and b/public/textures/chipped/sanded_snow_block.png differ diff --git a/public/textures/chipped/sanded_stone.png b/public/textures/chipped/sanded_stone.png new file mode 100644 index 00000000..4349f0c9 Binary files /dev/null and b/public/textures/chipped/sanded_stone.png differ diff --git a/public/textures/chipped/sanded_tuff.png b/public/textures/chipped/sanded_tuff.png new file mode 100644 index 00000000..15b6e065 Binary files /dev/null and b/public/textures/chipped/sanded_tuff.png differ diff --git a/public/textures/chipped/sandstone_bricks.png b/public/textures/chipped/sandstone_bricks.png new file mode 100644 index 00000000..45eec761 Binary files /dev/null and b/public/textures/chipped/sandstone_bricks.png differ diff --git a/public/textures/chipped/sandstone_mini_tiles.png b/public/textures/chipped/sandstone_mini_tiles.png new file mode 100644 index 00000000..28da2144 Binary files /dev/null and b/public/textures/chipped/sandstone_mini_tiles.png differ diff --git a/public/textures/chipped/sandstone_pillar.png b/public/textures/chipped/sandstone_pillar.png new file mode 100644 index 00000000..e34eb772 Binary files /dev/null and b/public/textures/chipped/sandstone_pillar.png differ diff --git a/public/textures/chipped/sandstone_pillar_top.png b/public/textures/chipped/sandstone_pillar_top.png new file mode 100644 index 00000000..2abb6fa0 Binary files /dev/null and b/public/textures/chipped/sandstone_pillar_top.png differ diff --git a/public/textures/chipped/sandstone_scales.png b/public/textures/chipped/sandstone_scales.png new file mode 100644 index 00000000..6661cf04 Binary files /dev/null and b/public/textures/chipped/sandstone_scales.png differ diff --git a/public/textures/chipped/sandy_gravel.png b/public/textures/chipped/sandy_gravel.png new file mode 100644 index 00000000..a71d1f49 Binary files /dev/null and b/public/textures/chipped/sandy_gravel.png differ diff --git a/public/textures/chipped/saw.png b/public/textures/chipped/saw.png new file mode 100644 index 00000000..a409d94a Binary files /dev/null and b/public/textures/chipped/saw.png differ diff --git a/public/textures/chipped/scabbed_nether_wart_block.png b/public/textures/chipped/scabbed_nether_wart_block.png new file mode 100644 index 00000000..b19e8759 Binary files /dev/null and b/public/textures/chipped/scabbed_nether_wart_block.png differ diff --git a/public/textures/chipped/scabbed_warped_wart_block.png b/public/textures/chipped/scabbed_warped_wart_block.png new file mode 100644 index 00000000..464c13f4 Binary files /dev/null and b/public/textures/chipped/scabbed_warped_wart_block.png differ diff --git a/public/textures/chipped/scaled_black_carpet.png b/public/textures/chipped/scaled_black_carpet.png new file mode 100644 index 00000000..f566273d Binary files /dev/null and b/public/textures/chipped/scaled_black_carpet.png differ diff --git a/public/textures/chipped/scaled_black_wool.png b/public/textures/chipped/scaled_black_wool.png new file mode 100644 index 00000000..29231a8a Binary files /dev/null and b/public/textures/chipped/scaled_black_wool.png differ diff --git a/public/textures/chipped/scaled_blue_carpet.png b/public/textures/chipped/scaled_blue_carpet.png new file mode 100644 index 00000000..7866ffa1 Binary files /dev/null and b/public/textures/chipped/scaled_blue_carpet.png differ diff --git a/public/textures/chipped/scaled_blue_wool.png b/public/textures/chipped/scaled_blue_wool.png new file mode 100644 index 00000000..dec2f271 Binary files /dev/null and b/public/textures/chipped/scaled_blue_wool.png differ diff --git a/public/textures/chipped/scaled_brown_carpet.png b/public/textures/chipped/scaled_brown_carpet.png new file mode 100644 index 00000000..58c9481b Binary files /dev/null and b/public/textures/chipped/scaled_brown_carpet.png differ diff --git a/public/textures/chipped/scaled_brown_mushroom_block.png b/public/textures/chipped/scaled_brown_mushroom_block.png new file mode 100644 index 00000000..78d8c2d2 Binary files /dev/null and b/public/textures/chipped/scaled_brown_mushroom_block.png differ diff --git a/public/textures/chipped/scaled_brown_wool.png b/public/textures/chipped/scaled_brown_wool.png new file mode 100644 index 00000000..92f95951 Binary files /dev/null and b/public/textures/chipped/scaled_brown_wool.png differ diff --git a/public/textures/chipped/scaled_cyan_carpet.png b/public/textures/chipped/scaled_cyan_carpet.png new file mode 100644 index 00000000..dc146717 Binary files /dev/null and b/public/textures/chipped/scaled_cyan_carpet.png differ diff --git a/public/textures/chipped/scaled_cyan_wool.png b/public/textures/chipped/scaled_cyan_wool.png new file mode 100644 index 00000000..a388d6d0 Binary files /dev/null and b/public/textures/chipped/scaled_cyan_wool.png differ diff --git a/public/textures/chipped/scaled_gray_carpet.png b/public/textures/chipped/scaled_gray_carpet.png new file mode 100644 index 00000000..bc80f5d8 Binary files /dev/null and b/public/textures/chipped/scaled_gray_carpet.png differ diff --git a/public/textures/chipped/scaled_gray_wool.png b/public/textures/chipped/scaled_gray_wool.png new file mode 100644 index 00000000..88781648 Binary files /dev/null and b/public/textures/chipped/scaled_gray_wool.png differ diff --git a/public/textures/chipped/scaled_green_carpet.png b/public/textures/chipped/scaled_green_carpet.png new file mode 100644 index 00000000..ae68497b Binary files /dev/null and b/public/textures/chipped/scaled_green_carpet.png differ diff --git a/public/textures/chipped/scaled_green_wool.png b/public/textures/chipped/scaled_green_wool.png new file mode 100644 index 00000000..752c5f31 Binary files /dev/null and b/public/textures/chipped/scaled_green_wool.png differ diff --git a/public/textures/chipped/scaled_light_blue_carpet.png b/public/textures/chipped/scaled_light_blue_carpet.png new file mode 100644 index 00000000..4de983aa Binary files /dev/null and b/public/textures/chipped/scaled_light_blue_carpet.png differ diff --git a/public/textures/chipped/scaled_light_blue_wool.png b/public/textures/chipped/scaled_light_blue_wool.png new file mode 100644 index 00000000..babf1579 Binary files /dev/null and b/public/textures/chipped/scaled_light_blue_wool.png differ diff --git a/public/textures/chipped/scaled_light_gray_carpet.png b/public/textures/chipped/scaled_light_gray_carpet.png new file mode 100644 index 00000000..1fc9f782 Binary files /dev/null and b/public/textures/chipped/scaled_light_gray_carpet.png differ diff --git a/public/textures/chipped/scaled_light_gray_wool.png b/public/textures/chipped/scaled_light_gray_wool.png new file mode 100644 index 00000000..f8ea7572 Binary files /dev/null and b/public/textures/chipped/scaled_light_gray_wool.png differ diff --git a/public/textures/chipped/scaled_lime_carpet.png b/public/textures/chipped/scaled_lime_carpet.png new file mode 100644 index 00000000..77c0b00e Binary files /dev/null and b/public/textures/chipped/scaled_lime_carpet.png differ diff --git a/public/textures/chipped/scaled_lime_wool.png b/public/textures/chipped/scaled_lime_wool.png new file mode 100644 index 00000000..697c2676 Binary files /dev/null and b/public/textures/chipped/scaled_lime_wool.png differ diff --git a/public/textures/chipped/scaled_magenta_carpet.png b/public/textures/chipped/scaled_magenta_carpet.png new file mode 100644 index 00000000..c5ca1d8d Binary files /dev/null and b/public/textures/chipped/scaled_magenta_carpet.png differ diff --git a/public/textures/chipped/scaled_magenta_wool.png b/public/textures/chipped/scaled_magenta_wool.png new file mode 100644 index 00000000..b6c80a9f Binary files /dev/null and b/public/textures/chipped/scaled_magenta_wool.png differ diff --git a/public/textures/chipped/scaled_nether_wart_block.png b/public/textures/chipped/scaled_nether_wart_block.png new file mode 100644 index 00000000..52e4bbf5 Binary files /dev/null and b/public/textures/chipped/scaled_nether_wart_block.png differ diff --git a/public/textures/chipped/scaled_orange_carpet.png b/public/textures/chipped/scaled_orange_carpet.png new file mode 100644 index 00000000..e6f03e15 Binary files /dev/null and b/public/textures/chipped/scaled_orange_carpet.png differ diff --git a/public/textures/chipped/scaled_orange_wool.png b/public/textures/chipped/scaled_orange_wool.png new file mode 100644 index 00000000..8cf0b311 Binary files /dev/null and b/public/textures/chipped/scaled_orange_wool.png differ diff --git a/public/textures/chipped/scaled_pink_carpet.png b/public/textures/chipped/scaled_pink_carpet.png new file mode 100644 index 00000000..e1548538 Binary files /dev/null and b/public/textures/chipped/scaled_pink_carpet.png differ diff --git a/public/textures/chipped/scaled_pink_wool.png b/public/textures/chipped/scaled_pink_wool.png new file mode 100644 index 00000000..6013835d Binary files /dev/null and b/public/textures/chipped/scaled_pink_wool.png differ diff --git a/public/textures/chipped/scaled_purple_carpet.png b/public/textures/chipped/scaled_purple_carpet.png new file mode 100644 index 00000000..cf36d0c1 Binary files /dev/null and b/public/textures/chipped/scaled_purple_carpet.png differ diff --git a/public/textures/chipped/scaled_purple_wool.png b/public/textures/chipped/scaled_purple_wool.png new file mode 100644 index 00000000..a961e002 Binary files /dev/null and b/public/textures/chipped/scaled_purple_wool.png differ diff --git a/public/textures/chipped/scaled_red_carpet.png b/public/textures/chipped/scaled_red_carpet.png new file mode 100644 index 00000000..07eb9fab Binary files /dev/null and b/public/textures/chipped/scaled_red_carpet.png differ diff --git a/public/textures/chipped/scaled_red_wool.png b/public/textures/chipped/scaled_red_wool.png new file mode 100644 index 00000000..9c5c797d Binary files /dev/null and b/public/textures/chipped/scaled_red_wool.png differ diff --git a/public/textures/chipped/scaled_warped_wart_block.png b/public/textures/chipped/scaled_warped_wart_block.png new file mode 100644 index 00000000..621bee0d Binary files /dev/null and b/public/textures/chipped/scaled_warped_wart_block.png differ diff --git a/public/textures/chipped/scaled_white_carpet.png b/public/textures/chipped/scaled_white_carpet.png new file mode 100644 index 00000000..41ec56f6 Binary files /dev/null and b/public/textures/chipped/scaled_white_carpet.png differ diff --git a/public/textures/chipped/scaled_white_wool.png b/public/textures/chipped/scaled_white_wool.png new file mode 100644 index 00000000..41311cd1 Binary files /dev/null and b/public/textures/chipped/scaled_white_wool.png differ diff --git a/public/textures/chipped/scaled_yellow_carpet.png b/public/textures/chipped/scaled_yellow_carpet.png new file mode 100644 index 00000000..76cbbf2c Binary files /dev/null and b/public/textures/chipped/scaled_yellow_carpet.png differ diff --git a/public/textures/chipped/scaled_yellow_wool.png b/public/textures/chipped/scaled_yellow_wool.png new file mode 100644 index 00000000..9d50573a Binary files /dev/null and b/public/textures/chipped/scaled_yellow_wool.png differ diff --git a/public/textures/chipped/scaly_mud.png b/public/textures/chipped/scaly_mud.png new file mode 100644 index 00000000..5864e305 Binary files /dev/null and b/public/textures/chipped/scaly_mud.png differ diff --git a/public/textures/chipped/scaly_mud_bricks.png b/public/textures/chipped/scaly_mud_bricks.png new file mode 100644 index 00000000..f4968c05 Binary files /dev/null and b/public/textures/chipped/scaly_mud_bricks.png differ diff --git a/public/textures/chipped/scaly_packed_mud.png b/public/textures/chipped/scaly_packed_mud.png new file mode 100644 index 00000000..a3253383 Binary files /dev/null and b/public/textures/chipped/scaly_packed_mud.png differ diff --git a/public/textures/chipped/scared_soul_sand.png b/public/textures/chipped/scared_soul_sand.png new file mode 100644 index 00000000..30b2bd72 Binary files /dev/null and b/public/textures/chipped/scared_soul_sand.png differ diff --git a/public/textures/chipped/scattered_cobweb.png b/public/textures/chipped/scattered_cobweb.png new file mode 100644 index 00000000..64f9b609 Binary files /dev/null and b/public/textures/chipped/scattered_cobweb.png differ diff --git a/public/textures/chipped/screen_acacia_door.png b/public/textures/chipped/screen_acacia_door.png new file mode 100644 index 00000000..e84e9927 Binary files /dev/null and b/public/textures/chipped/screen_acacia_door.png differ diff --git a/public/textures/chipped/screen_bamboo_door.png b/public/textures/chipped/screen_bamboo_door.png new file mode 100644 index 00000000..2a23dd00 Binary files /dev/null and b/public/textures/chipped/screen_bamboo_door.png differ diff --git a/public/textures/chipped/screen_birch_door.png b/public/textures/chipped/screen_birch_door.png new file mode 100644 index 00000000..d1a30ee8 Binary files /dev/null and b/public/textures/chipped/screen_birch_door.png differ diff --git a/public/textures/chipped/screen_cherry_door.png b/public/textures/chipped/screen_cherry_door.png new file mode 100644 index 00000000..220bbbe2 Binary files /dev/null and b/public/textures/chipped/screen_cherry_door.png differ diff --git a/public/textures/chipped/screen_crimson_door.png b/public/textures/chipped/screen_crimson_door.png new file mode 100644 index 00000000..3b8714ed Binary files /dev/null and b/public/textures/chipped/screen_crimson_door.png differ diff --git a/public/textures/chipped/screen_dark_oak_door.png b/public/textures/chipped/screen_dark_oak_door.png new file mode 100644 index 00000000..11154127 Binary files /dev/null and b/public/textures/chipped/screen_dark_oak_door.png differ diff --git a/public/textures/chipped/screen_jungle_door.png b/public/textures/chipped/screen_jungle_door.png new file mode 100644 index 00000000..5d11589d Binary files /dev/null and b/public/textures/chipped/screen_jungle_door.png differ diff --git a/public/textures/chipped/screen_oak_door.png b/public/textures/chipped/screen_oak_door.png new file mode 100644 index 00000000..badc4b3a Binary files /dev/null and b/public/textures/chipped/screen_oak_door.png differ diff --git a/public/textures/chipped/screen_spruce_door.png b/public/textures/chipped/screen_spruce_door.png new file mode 100644 index 00000000..a06f396c Binary files /dev/null and b/public/textures/chipped/screen_spruce_door.png differ diff --git a/public/textures/chipped/screen_warped_door.png b/public/textures/chipped/screen_warped_door.png new file mode 100644 index 00000000..2e78010b Binary files /dev/null and b/public/textures/chipped/screen_warped_door.png differ diff --git a/public/textures/chipped/sea_lantern_lodestone.png b/public/textures/chipped/sea_lantern_lodestone.png new file mode 100644 index 00000000..892296fe Binary files /dev/null and b/public/textures/chipped/sea_lantern_lodestone.png differ diff --git a/public/textures/chipped/sea_lodestone_side.png b/public/textures/chipped/sea_lodestone_side.png new file mode 100644 index 00000000..8c298651 Binary files /dev/null and b/public/textures/chipped/sea_lodestone_side.png differ diff --git a/public/textures/chipped/seared_nether_wart_block.png b/public/textures/chipped/seared_nether_wart_block.png new file mode 100644 index 00000000..930d0c23 Binary files /dev/null and b/public/textures/chipped/seared_nether_wart_block.png differ diff --git a/public/textures/chipped/seared_warped_wart_block.png b/public/textures/chipped/seared_warped_wart_block.png new file mode 100644 index 00000000..f8b72901 Binary files /dev/null and b/public/textures/chipped/seared_warped_wart_block.png differ diff --git a/public/textures/chipped/secret_acacia_door.png b/public/textures/chipped/secret_acacia_door.png new file mode 100644 index 00000000..0a18aab3 Binary files /dev/null and b/public/textures/chipped/secret_acacia_door.png differ diff --git a/public/textures/chipped/secret_bamboo_door.png b/public/textures/chipped/secret_bamboo_door.png new file mode 100644 index 00000000..e952a698 Binary files /dev/null and b/public/textures/chipped/secret_bamboo_door.png differ diff --git a/public/textures/chipped/secret_birch_door.png b/public/textures/chipped/secret_birch_door.png new file mode 100644 index 00000000..e2826268 Binary files /dev/null and b/public/textures/chipped/secret_birch_door.png differ diff --git a/public/textures/chipped/secret_cherry_door.png b/public/textures/chipped/secret_cherry_door.png new file mode 100644 index 00000000..3c5ec44a Binary files /dev/null and b/public/textures/chipped/secret_cherry_door.png differ diff --git a/public/textures/chipped/secret_crimson_door.png b/public/textures/chipped/secret_crimson_door.png new file mode 100644 index 00000000..8b66c504 Binary files /dev/null and b/public/textures/chipped/secret_crimson_door.png differ diff --git a/public/textures/chipped/secret_dark_oak_door.png b/public/textures/chipped/secret_dark_oak_door.png new file mode 100644 index 00000000..093b70d0 Binary files /dev/null and b/public/textures/chipped/secret_dark_oak_door.png differ diff --git a/public/textures/chipped/secret_jungle_door.png b/public/textures/chipped/secret_jungle_door.png new file mode 100644 index 00000000..00dcc70c Binary files /dev/null and b/public/textures/chipped/secret_jungle_door.png differ diff --git a/public/textures/chipped/secret_mangrove_door.png b/public/textures/chipped/secret_mangrove_door.png new file mode 100644 index 00000000..bd6116c8 Binary files /dev/null and b/public/textures/chipped/secret_mangrove_door.png differ diff --git a/public/textures/chipped/secret_oak_door.png b/public/textures/chipped/secret_oak_door.png new file mode 100644 index 00000000..7d449c3c Binary files /dev/null and b/public/textures/chipped/secret_oak_door.png differ diff --git a/public/textures/chipped/secret_spruce_door.png b/public/textures/chipped/secret_spruce_door.png new file mode 100644 index 00000000..b8b94573 Binary files /dev/null and b/public/textures/chipped/secret_spruce_door.png differ diff --git a/public/textures/chipped/secret_warped_door.png b/public/textures/chipped/secret_warped_door.png new file mode 100644 index 00000000..d188a580 Binary files /dev/null and b/public/textures/chipped/secret_warped_door.png differ diff --git a/public/textures/chipped/seeded_nether_sprouts.png b/public/textures/chipped/seeded_nether_sprouts.png new file mode 100644 index 00000000..ace1d151 Binary files /dev/null and b/public/textures/chipped/seeded_nether_sprouts.png differ diff --git a/public/textures/chipped/semi_spongy_nether_wart_block.png b/public/textures/chipped/semi_spongy_nether_wart_block.png new file mode 100644 index 00000000..32a2f3b1 Binary files /dev/null and b/public/textures/chipped/semi_spongy_nether_wart_block.png differ diff --git a/public/textures/chipped/semi_spongy_warped_wart_block.png b/public/textures/chipped/semi_spongy_warped_wart_block.png new file mode 100644 index 00000000..cf0381e2 Binary files /dev/null and b/public/textures/chipped/semi_spongy_warped_wart_block.png differ diff --git a/public/textures/chipped/shack_acacia_door.png b/public/textures/chipped/shack_acacia_door.png new file mode 100644 index 00000000..cb43817d Binary files /dev/null and b/public/textures/chipped/shack_acacia_door.png differ diff --git a/public/textures/chipped/shack_bamboo_door.png b/public/textures/chipped/shack_bamboo_door.png new file mode 100644 index 00000000..beb4deb5 Binary files /dev/null and b/public/textures/chipped/shack_bamboo_door.png differ diff --git a/public/textures/chipped/shack_birch_door.png b/public/textures/chipped/shack_birch_door.png new file mode 100644 index 00000000..74a7ad4a Binary files /dev/null and b/public/textures/chipped/shack_birch_door.png differ diff --git a/public/textures/chipped/shack_cherry_door.png b/public/textures/chipped/shack_cherry_door.png new file mode 100644 index 00000000..685256b4 Binary files /dev/null and b/public/textures/chipped/shack_cherry_door.png differ diff --git a/public/textures/chipped/shack_crimson_door.png b/public/textures/chipped/shack_crimson_door.png new file mode 100644 index 00000000..a2abd9d0 Binary files /dev/null and b/public/textures/chipped/shack_crimson_door.png differ diff --git a/public/textures/chipped/shack_dark_oak_door.png b/public/textures/chipped/shack_dark_oak_door.png new file mode 100644 index 00000000..5d222052 Binary files /dev/null and b/public/textures/chipped/shack_dark_oak_door.png differ diff --git a/public/textures/chipped/shack_jungle_door.png b/public/textures/chipped/shack_jungle_door.png new file mode 100644 index 00000000..100a7a8e Binary files /dev/null and b/public/textures/chipped/shack_jungle_door.png differ diff --git a/public/textures/chipped/shack_oak_door.png b/public/textures/chipped/shack_oak_door.png new file mode 100644 index 00000000..369aea8b Binary files /dev/null and b/public/textures/chipped/shack_oak_door.png differ diff --git a/public/textures/chipped/shack_spruce_door.png b/public/textures/chipped/shack_spruce_door.png new file mode 100644 index 00000000..291fa5f3 Binary files /dev/null and b/public/textures/chipped/shack_spruce_door.png differ diff --git a/public/textures/chipped/shack_warped_door.png b/public/textures/chipped/shack_warped_door.png new file mode 100644 index 00000000..557cb414 Binary files /dev/null and b/public/textures/chipped/shack_warped_door.png differ diff --git a/public/textures/chipped/sheet_diamond_block.png b/public/textures/chipped/sheet_diamond_block.png new file mode 100644 index 00000000..c94fa5fd Binary files /dev/null and b/public/textures/chipped/sheet_diamond_block.png differ diff --git a/public/textures/chipped/sheet_emerald_block.png b/public/textures/chipped/sheet_emerald_block.png new file mode 100644 index 00000000..b8d9675e Binary files /dev/null and b/public/textures/chipped/sheet_emerald_block.png differ diff --git a/public/textures/chipped/sheet_gold_block.png b/public/textures/chipped/sheet_gold_block.png new file mode 100644 index 00000000..2560cac2 Binary files /dev/null and b/public/textures/chipped/sheet_gold_block.png differ diff --git a/public/textures/chipped/sheet_iron_block.png b/public/textures/chipped/sheet_iron_block.png new file mode 100644 index 00000000..d428b40f Binary files /dev/null and b/public/textures/chipped/sheet_iron_block.png differ diff --git a/public/textures/chipped/sheet_netherite_block.png b/public/textures/chipped/sheet_netherite_block.png new file mode 100644 index 00000000..1a052c5a Binary files /dev/null and b/public/textures/chipped/sheet_netherite_block.png differ diff --git a/public/textures/chipped/sheet_waxed_copper_block.png b/public/textures/chipped/sheet_waxed_copper_block.png new file mode 100644 index 00000000..1945087f Binary files /dev/null and b/public/textures/chipped/sheet_waxed_copper_block.png differ diff --git a/public/textures/chipped/sheet_waxed_exposed_copper.png b/public/textures/chipped/sheet_waxed_exposed_copper.png new file mode 100644 index 00000000..2cbf46e4 Binary files /dev/null and b/public/textures/chipped/sheet_waxed_exposed_copper.png differ diff --git a/public/textures/chipped/sheet_waxed_oxidized_copper.png b/public/textures/chipped/sheet_waxed_oxidized_copper.png new file mode 100644 index 00000000..6c175441 Binary files /dev/null and b/public/textures/chipped/sheet_waxed_oxidized_copper.png differ diff --git a/public/textures/chipped/sheet_waxed_weathered_copper.png b/public/textures/chipped/sheet_waxed_weathered_copper.png new file mode 100644 index 00000000..caeb3ad1 Binary files /dev/null and b/public/textures/chipped/sheet_waxed_weathered_copper.png differ diff --git a/public/textures/chipped/shelved_mangrove_planks.png b/public/textures/chipped/shelved_mangrove_planks.png new file mode 100644 index 00000000..e1ae2e88 Binary files /dev/null and b/public/textures/chipped/shelved_mangrove_planks.png differ diff --git a/public/textures/chipped/shifted_acacia_planks.png b/public/textures/chipped/shifted_acacia_planks.png new file mode 100644 index 00000000..9b904bdd Binary files /dev/null and b/public/textures/chipped/shifted_acacia_planks.png differ diff --git a/public/textures/chipped/shifted_bamboo_planks.png b/public/textures/chipped/shifted_bamboo_planks.png new file mode 100644 index 00000000..075eca17 Binary files /dev/null and b/public/textures/chipped/shifted_bamboo_planks.png differ diff --git a/public/textures/chipped/shifted_birch_planks.png b/public/textures/chipped/shifted_birch_planks.png new file mode 100644 index 00000000..a2b682eb Binary files /dev/null and b/public/textures/chipped/shifted_birch_planks.png differ diff --git a/public/textures/chipped/shifted_cherry_planks.png b/public/textures/chipped/shifted_cherry_planks.png new file mode 100644 index 00000000..99f20831 Binary files /dev/null and b/public/textures/chipped/shifted_cherry_planks.png differ diff --git a/public/textures/chipped/shifted_crimson_planks.png b/public/textures/chipped/shifted_crimson_planks.png new file mode 100644 index 00000000..54b6fb44 Binary files /dev/null and b/public/textures/chipped/shifted_crimson_planks.png differ diff --git a/public/textures/chipped/shifted_dark_oak_planks.png b/public/textures/chipped/shifted_dark_oak_planks.png new file mode 100644 index 00000000..92acfe59 Binary files /dev/null and b/public/textures/chipped/shifted_dark_oak_planks.png differ diff --git a/public/textures/chipped/shifted_jungle_planks.png b/public/textures/chipped/shifted_jungle_planks.png new file mode 100644 index 00000000..2527d7ac Binary files /dev/null and b/public/textures/chipped/shifted_jungle_planks.png differ diff --git a/public/textures/chipped/shifted_mangrove_planks.png b/public/textures/chipped/shifted_mangrove_planks.png new file mode 100644 index 00000000..97e6c563 Binary files /dev/null and b/public/textures/chipped/shifted_mangrove_planks.png differ diff --git a/public/textures/chipped/shifted_oak_planks.png b/public/textures/chipped/shifted_oak_planks.png new file mode 100644 index 00000000..5280069a Binary files /dev/null and b/public/textures/chipped/shifted_oak_planks.png differ diff --git a/public/textures/chipped/shifted_spruce_planks.png b/public/textures/chipped/shifted_spruce_planks.png new file mode 100644 index 00000000..5363897e Binary files /dev/null and b/public/textures/chipped/shifted_spruce_planks.png differ diff --git a/public/textures/chipped/shifted_warped_planks.png b/public/textures/chipped/shifted_warped_planks.png new file mode 100644 index 00000000..4d26d6b1 Binary files /dev/null and b/public/textures/chipped/shifted_warped_planks.png differ diff --git a/public/textures/chipped/shimmering_glowstone.png b/public/textures/chipped/shimmering_glowstone.png new file mode 100644 index 00000000..9f6a0ecc Binary files /dev/null and b/public/textures/chipped/shimmering_glowstone.png differ diff --git a/public/textures/chipped/shimmering_sea_lantern.png b/public/textures/chipped/shimmering_sea_lantern.png new file mode 100644 index 00000000..f069a79c Binary files /dev/null and b/public/textures/chipped/shimmering_sea_lantern.png differ diff --git a/public/textures/chipped/shimmering_shroomlight.png b/public/textures/chipped/shimmering_shroomlight.png new file mode 100644 index 00000000..71e422cc Binary files /dev/null and b/public/textures/chipped/shimmering_shroomlight.png differ diff --git a/public/textures/chipped/short_nether_sprouts.png b/public/textures/chipped/short_nether_sprouts.png new file mode 100644 index 00000000..e1010ef9 Binary files /dev/null and b/public/textures/chipped/short_nether_sprouts.png differ diff --git a/public/textures/chipped/shrooming_crimson_stem.png b/public/textures/chipped/shrooming_crimson_stem.png new file mode 100644 index 00000000..1f55f18a Binary files /dev/null and b/public/textures/chipped/shrooming_crimson_stem.png differ diff --git a/public/textures/chipped/shrooming_warped_stem.png b/public/textures/chipped/shrooming_warped_stem.png new file mode 100644 index 00000000..5a60b6f9 Binary files /dev/null and b/public/textures/chipped/shrooming_warped_stem.png differ diff --git a/public/textures/chipped/shroomlight_lantern.png b/public/textures/chipped/shroomlight_lantern.png new file mode 100644 index 00000000..11063061 Binary files /dev/null and b/public/textures/chipped/shroomlight_lantern.png differ diff --git a/public/textures/chipped/shroomlight_lodestone_side.png b/public/textures/chipped/shroomlight_lodestone_side.png new file mode 100644 index 00000000..88fa36be Binary files /dev/null and b/public/textures/chipped/shroomlight_lodestone_side.png differ diff --git a/public/textures/chipped/shroomy_dried_kelp_block.png b/public/textures/chipped/shroomy_dried_kelp_block.png new file mode 100644 index 00000000..bb411745 Binary files /dev/null and b/public/textures/chipped/shroomy_dried_kelp_block.png differ diff --git a/public/textures/chipped/shroomy_nether_sprouts.png b/public/textures/chipped/shroomy_nether_sprouts.png new file mode 100644 index 00000000..4f694b14 Binary files /dev/null and b/public/textures/chipped/shroomy_nether_sprouts.png differ diff --git a/public/textures/chipped/shrunken_black_glazed_terracotta.png b/public/textures/chipped/shrunken_black_glazed_terracotta.png new file mode 100644 index 00000000..ab0181db Binary files /dev/null and b/public/textures/chipped/shrunken_black_glazed_terracotta.png differ diff --git a/public/textures/chipped/shrunken_blue_glazed_terracotta.png b/public/textures/chipped/shrunken_blue_glazed_terracotta.png new file mode 100644 index 00000000..4ef13b20 Binary files /dev/null and b/public/textures/chipped/shrunken_blue_glazed_terracotta.png differ diff --git a/public/textures/chipped/shrunken_brown_glazed_terracotta.png b/public/textures/chipped/shrunken_brown_glazed_terracotta.png new file mode 100644 index 00000000..3bc5d6f3 Binary files /dev/null and b/public/textures/chipped/shrunken_brown_glazed_terracotta.png differ diff --git a/public/textures/chipped/shrunken_cyan_glazed_terracotta.png b/public/textures/chipped/shrunken_cyan_glazed_terracotta.png new file mode 100644 index 00000000..bda78f4d Binary files /dev/null and b/public/textures/chipped/shrunken_cyan_glazed_terracotta.png differ diff --git a/public/textures/chipped/shrunken_gray_glazed_terracotta.png b/public/textures/chipped/shrunken_gray_glazed_terracotta.png new file mode 100644 index 00000000..a4e0699c Binary files /dev/null and b/public/textures/chipped/shrunken_gray_glazed_terracotta.png differ diff --git a/public/textures/chipped/shrunken_green_glazed_terracotta.png b/public/textures/chipped/shrunken_green_glazed_terracotta.png new file mode 100644 index 00000000..a8fbdec3 Binary files /dev/null and b/public/textures/chipped/shrunken_green_glazed_terracotta.png differ diff --git a/public/textures/chipped/shrunken_light_blue_glazed_terracotta.png b/public/textures/chipped/shrunken_light_blue_glazed_terracotta.png new file mode 100644 index 00000000..4f5c31ed Binary files /dev/null and b/public/textures/chipped/shrunken_light_blue_glazed_terracotta.png differ diff --git a/public/textures/chipped/shrunken_light_gray_glazed_terracotta.png b/public/textures/chipped/shrunken_light_gray_glazed_terracotta.png new file mode 100644 index 00000000..cd5c8ee8 Binary files /dev/null and b/public/textures/chipped/shrunken_light_gray_glazed_terracotta.png differ diff --git a/public/textures/chipped/shrunken_lime_glazed_terracotta.png b/public/textures/chipped/shrunken_lime_glazed_terracotta.png new file mode 100644 index 00000000..90f728aa Binary files /dev/null and b/public/textures/chipped/shrunken_lime_glazed_terracotta.png differ diff --git a/public/textures/chipped/shrunken_magenta_glazed_terracotta.png b/public/textures/chipped/shrunken_magenta_glazed_terracotta.png new file mode 100644 index 00000000..4bf25407 Binary files /dev/null and b/public/textures/chipped/shrunken_magenta_glazed_terracotta.png differ diff --git a/public/textures/chipped/shrunken_orange_glazed_terracotta.png b/public/textures/chipped/shrunken_orange_glazed_terracotta.png new file mode 100644 index 00000000..cf2725f1 Binary files /dev/null and b/public/textures/chipped/shrunken_orange_glazed_terracotta.png differ diff --git a/public/textures/chipped/shrunken_pink_glazed_terracotta.png b/public/textures/chipped/shrunken_pink_glazed_terracotta.png new file mode 100644 index 00000000..199499c7 Binary files /dev/null and b/public/textures/chipped/shrunken_pink_glazed_terracotta.png differ diff --git a/public/textures/chipped/shrunken_purple_glazed_terracotta.png b/public/textures/chipped/shrunken_purple_glazed_terracotta.png new file mode 100644 index 00000000..ba48e404 Binary files /dev/null and b/public/textures/chipped/shrunken_purple_glazed_terracotta.png differ diff --git a/public/textures/chipped/shrunken_red_glazed_terracotta.png b/public/textures/chipped/shrunken_red_glazed_terracotta.png new file mode 100644 index 00000000..2ca2bd64 Binary files /dev/null and b/public/textures/chipped/shrunken_red_glazed_terracotta.png differ diff --git a/public/textures/chipped/shrunken_white_glazed_terracotta.png b/public/textures/chipped/shrunken_white_glazed_terracotta.png new file mode 100644 index 00000000..ff75159e Binary files /dev/null and b/public/textures/chipped/shrunken_white_glazed_terracotta.png differ diff --git a/public/textures/chipped/shrunken_yellow_glazed_terracotta.png b/public/textures/chipped/shrunken_yellow_glazed_terracotta.png new file mode 100644 index 00000000..073196cd Binary files /dev/null and b/public/textures/chipped/shrunken_yellow_glazed_terracotta.png differ diff --git a/public/textures/chipped/shuttered_diamond_block.png b/public/textures/chipped/shuttered_diamond_block.png new file mode 100644 index 00000000..530ccf8a Binary files /dev/null and b/public/textures/chipped/shuttered_diamond_block.png differ diff --git a/public/textures/chipped/shuttered_emerald_block.png b/public/textures/chipped/shuttered_emerald_block.png new file mode 100644 index 00000000..3e264484 Binary files /dev/null and b/public/textures/chipped/shuttered_emerald_block.png differ diff --git a/public/textures/chipped/shuttered_gold_block.png b/public/textures/chipped/shuttered_gold_block.png new file mode 100644 index 00000000..f1706899 Binary files /dev/null and b/public/textures/chipped/shuttered_gold_block.png differ diff --git a/public/textures/chipped/shuttered_iron_block.png b/public/textures/chipped/shuttered_iron_block.png new file mode 100644 index 00000000..6ea13d73 Binary files /dev/null and b/public/textures/chipped/shuttered_iron_block.png differ diff --git a/public/textures/chipped/shuttered_netherite_block.png b/public/textures/chipped/shuttered_netherite_block.png new file mode 100644 index 00000000..2b561456 Binary files /dev/null and b/public/textures/chipped/shuttered_netherite_block.png differ diff --git a/public/textures/chipped/shuttered_waxed_copper_block.png b/public/textures/chipped/shuttered_waxed_copper_block.png new file mode 100644 index 00000000..a569d4ee Binary files /dev/null and b/public/textures/chipped/shuttered_waxed_copper_block.png differ diff --git a/public/textures/chipped/shuttered_waxed_exposed_copper.png b/public/textures/chipped/shuttered_waxed_exposed_copper.png new file mode 100644 index 00000000..e90515b1 Binary files /dev/null and b/public/textures/chipped/shuttered_waxed_exposed_copper.png differ diff --git a/public/textures/chipped/shuttered_waxed_oxidized_copper.png b/public/textures/chipped/shuttered_waxed_oxidized_copper.png new file mode 100644 index 00000000..bf62287d Binary files /dev/null and b/public/textures/chipped/shuttered_waxed_oxidized_copper.png differ diff --git a/public/textures/chipped/shuttered_waxed_weathered_copper.png b/public/textures/chipped/shuttered_waxed_weathered_copper.png new file mode 100644 index 00000000..0353b9f8 Binary files /dev/null and b/public/textures/chipped/shuttered_waxed_weathered_copper.png differ diff --git a/public/textures/chipped/sided_mangrove_planks.png b/public/textures/chipped/sided_mangrove_planks.png new file mode 100644 index 00000000..76537b44 Binary files /dev/null and b/public/textures/chipped/sided_mangrove_planks.png differ diff --git a/public/textures/chipped/sifted_gravel.png b/public/textures/chipped/sifted_gravel.png new file mode 100644 index 00000000..4ccaa097 Binary files /dev/null and b/public/textures/chipped/sifted_gravel.png differ diff --git a/public/textures/chipped/sifted_soul_sand.png b/public/textures/chipped/sifted_soul_sand.png new file mode 100644 index 00000000..df41f7a1 Binary files /dev/null and b/public/textures/chipped/sifted_soul_sand.png differ diff --git a/public/textures/chipped/sighthole_iron_bars.png b/public/textures/chipped/sighthole_iron_bars.png new file mode 100644 index 00000000..3158a87f Binary files /dev/null and b/public/textures/chipped/sighthole_iron_bars.png differ diff --git a/public/textures/chipped/sigil_mud.png b/public/textures/chipped/sigil_mud.png new file mode 100644 index 00000000..21b49ec6 Binary files /dev/null and b/public/textures/chipped/sigil_mud.png differ diff --git a/public/textures/chipped/sigil_mud_bricks.png b/public/textures/chipped/sigil_mud_bricks.png new file mode 100644 index 00000000..a93ba0c6 Binary files /dev/null and b/public/textures/chipped/sigil_mud_bricks.png differ diff --git a/public/textures/chipped/sigil_packed_mud.png b/public/textures/chipped/sigil_packed_mud.png new file mode 100644 index 00000000..63b96df4 Binary files /dev/null and b/public/textures/chipped/sigil_packed_mud.png differ diff --git a/public/textures/chipped/sign_stripped_acacia_log.png b/public/textures/chipped/sign_stripped_acacia_log.png new file mode 100644 index 00000000..6305bb95 Binary files /dev/null and b/public/textures/chipped/sign_stripped_acacia_log.png differ diff --git a/public/textures/chipped/sign_stripped_birch_log.png b/public/textures/chipped/sign_stripped_birch_log.png new file mode 100644 index 00000000..231b32f5 Binary files /dev/null and b/public/textures/chipped/sign_stripped_birch_log.png differ diff --git a/public/textures/chipped/sign_stripped_cherry_log.png b/public/textures/chipped/sign_stripped_cherry_log.png new file mode 100644 index 00000000..797164ba Binary files /dev/null and b/public/textures/chipped/sign_stripped_cherry_log.png differ diff --git a/public/textures/chipped/sign_stripped_crimson_stem.png b/public/textures/chipped/sign_stripped_crimson_stem.png new file mode 100644 index 00000000..9d584dff Binary files /dev/null and b/public/textures/chipped/sign_stripped_crimson_stem.png differ diff --git a/public/textures/chipped/sign_stripped_dark_oak_log.png b/public/textures/chipped/sign_stripped_dark_oak_log.png new file mode 100644 index 00000000..bd087df1 Binary files /dev/null and b/public/textures/chipped/sign_stripped_dark_oak_log.png differ diff --git a/public/textures/chipped/sign_stripped_jungle_log.png b/public/textures/chipped/sign_stripped_jungle_log.png new file mode 100644 index 00000000..66a90834 Binary files /dev/null and b/public/textures/chipped/sign_stripped_jungle_log.png differ diff --git a/public/textures/chipped/sign_stripped_mangrove_log.png b/public/textures/chipped/sign_stripped_mangrove_log.png new file mode 100644 index 00000000..cf674ebe Binary files /dev/null and b/public/textures/chipped/sign_stripped_mangrove_log.png differ diff --git a/public/textures/chipped/sign_stripped_oak_log.png b/public/textures/chipped/sign_stripped_oak_log.png new file mode 100644 index 00000000..174991af Binary files /dev/null and b/public/textures/chipped/sign_stripped_oak_log.png differ diff --git a/public/textures/chipped/sign_stripped_spruce_log.png b/public/textures/chipped/sign_stripped_spruce_log.png new file mode 100644 index 00000000..963a4685 Binary files /dev/null and b/public/textures/chipped/sign_stripped_spruce_log.png differ diff --git a/public/textures/chipped/sign_stripped_warped_stem.png b/public/textures/chipped/sign_stripped_warped_stem.png new file mode 100644 index 00000000..95bc11bb Binary files /dev/null and b/public/textures/chipped/sign_stripped_warped_stem.png differ diff --git a/public/textures/chipped/silly_carved_pumpkin.png b/public/textures/chipped/silly_carved_pumpkin.png new file mode 100644 index 00000000..8ac108bd Binary files /dev/null and b/public/textures/chipped/silly_carved_pumpkin.png differ diff --git a/public/textures/chipped/silly_jack_o_lantern.png b/public/textures/chipped/silly_jack_o_lantern.png new file mode 100644 index 00000000..dfb860fa Binary files /dev/null and b/public/textures/chipped/silly_jack_o_lantern.png differ diff --git a/public/textures/chipped/simple_amethyst_block_pillar.png b/public/textures/chipped/simple_amethyst_block_pillar.png new file mode 100644 index 00000000..e4af6b0f Binary files /dev/null and b/public/textures/chipped/simple_amethyst_block_pillar.png differ diff --git a/public/textures/chipped/simple_ancient_debris_pillar.png b/public/textures/chipped/simple_ancient_debris_pillar.png new file mode 100644 index 00000000..0dc4d640 Binary files /dev/null and b/public/textures/chipped/simple_ancient_debris_pillar.png differ diff --git a/public/textures/chipped/simple_andesite_pillar.png b/public/textures/chipped/simple_andesite_pillar.png new file mode 100644 index 00000000..d70ef5cd Binary files /dev/null and b/public/textures/chipped/simple_andesite_pillar.png differ diff --git a/public/textures/chipped/simple_basalt_pillar.png b/public/textures/chipped/simple_basalt_pillar.png new file mode 100644 index 00000000..3787f86d Binary files /dev/null and b/public/textures/chipped/simple_basalt_pillar.png differ diff --git a/public/textures/chipped/simple_blackstone_pillar.png b/public/textures/chipped/simple_blackstone_pillar.png new file mode 100644 index 00000000..c8259d71 Binary files /dev/null and b/public/textures/chipped/simple_blackstone_pillar.png differ diff --git a/public/textures/chipped/simple_blue_ice_pillar.png b/public/textures/chipped/simple_blue_ice_pillar.png new file mode 100644 index 00000000..eeda0ed3 Binary files /dev/null and b/public/textures/chipped/simple_blue_ice_pillar.png differ diff --git a/public/textures/chipped/simple_borderless_bricks_pillar.png b/public/textures/chipped/simple_borderless_bricks_pillar.png new file mode 100644 index 00000000..92f8b519 Binary files /dev/null and b/public/textures/chipped/simple_borderless_bricks_pillar.png differ diff --git a/public/textures/chipped/simple_bricks_pillar.png b/public/textures/chipped/simple_bricks_pillar.png new file mode 100644 index 00000000..a54426c6 Binary files /dev/null and b/public/textures/chipped/simple_bricks_pillar.png differ diff --git a/public/textures/chipped/simple_calcite_pillar.png b/public/textures/chipped/simple_calcite_pillar.png new file mode 100644 index 00000000..acbacd84 Binary files /dev/null and b/public/textures/chipped/simple_calcite_pillar.png differ diff --git a/public/textures/chipped/simple_clay_pillar.png b/public/textures/chipped/simple_clay_pillar.png new file mode 100644 index 00000000..aaf4ea55 Binary files /dev/null and b/public/textures/chipped/simple_clay_pillar.png differ diff --git a/public/textures/chipped/simple_coal_block_pillar.png b/public/textures/chipped/simple_coal_block_pillar.png new file mode 100644 index 00000000..80b1aed9 Binary files /dev/null and b/public/textures/chipped/simple_coal_block_pillar.png differ diff --git a/public/textures/chipped/simple_cobblestone_pillar.png b/public/textures/chipped/simple_cobblestone_pillar.png new file mode 100644 index 00000000..16e567ac Binary files /dev/null and b/public/textures/chipped/simple_cobblestone_pillar.png differ diff --git a/public/textures/chipped/simple_crying_obsidian_pillar.png b/public/textures/chipped/simple_crying_obsidian_pillar.png new file mode 100644 index 00000000..3e670bed Binary files /dev/null and b/public/textures/chipped/simple_crying_obsidian_pillar.png differ diff --git a/public/textures/chipped/simple_dark_prismarine_pillar.png b/public/textures/chipped/simple_dark_prismarine_pillar.png new file mode 100644 index 00000000..b9301695 Binary files /dev/null and b/public/textures/chipped/simple_dark_prismarine_pillar.png differ diff --git a/public/textures/chipped/simple_deepslate_pillar.png b/public/textures/chipped/simple_deepslate_pillar.png new file mode 100644 index 00000000..2fadd0e0 Binary files /dev/null and b/public/textures/chipped/simple_deepslate_pillar.png differ diff --git a/public/textures/chipped/simple_diorite_pillar.png b/public/textures/chipped/simple_diorite_pillar.png new file mode 100644 index 00000000..8f30ba87 Binary files /dev/null and b/public/textures/chipped/simple_diorite_pillar.png differ diff --git a/public/textures/chipped/simple_dirt_pillar.png b/public/textures/chipped/simple_dirt_pillar.png new file mode 100644 index 00000000..4c22fadf Binary files /dev/null and b/public/textures/chipped/simple_dirt_pillar.png differ diff --git a/public/textures/chipped/simple_dripstone_block_pillar.png b/public/textures/chipped/simple_dripstone_block_pillar.png new file mode 100644 index 00000000..2241830c Binary files /dev/null and b/public/textures/chipped/simple_dripstone_block_pillar.png differ diff --git a/public/textures/chipped/simple_end_stone_pillar.png b/public/textures/chipped/simple_end_stone_pillar.png new file mode 100644 index 00000000..7bcb05b8 Binary files /dev/null and b/public/textures/chipped/simple_end_stone_pillar.png differ diff --git a/public/textures/chipped/simple_gilded_blackstone_pillar.png b/public/textures/chipped/simple_gilded_blackstone_pillar.png new file mode 100644 index 00000000..14294f08 Binary files /dev/null and b/public/textures/chipped/simple_gilded_blackstone_pillar.png differ diff --git a/public/textures/chipped/simple_granite_pillar.png b/public/textures/chipped/simple_granite_pillar.png new file mode 100644 index 00000000..5bac9517 Binary files /dev/null and b/public/textures/chipped/simple_granite_pillar.png differ diff --git a/public/textures/chipped/simple_ice_pillar.png b/public/textures/chipped/simple_ice_pillar.png new file mode 100644 index 00000000..d6453df2 Binary files /dev/null and b/public/textures/chipped/simple_ice_pillar.png differ diff --git a/public/textures/chipped/simple_lapis_block_pillar.png b/public/textures/chipped/simple_lapis_block_pillar.png new file mode 100644 index 00000000..6fe922ba Binary files /dev/null and b/public/textures/chipped/simple_lapis_block_pillar.png differ diff --git a/public/textures/chipped/simple_lodestone_pillar.png b/public/textures/chipped/simple_lodestone_pillar.png new file mode 100644 index 00000000..c32fd799 Binary files /dev/null and b/public/textures/chipped/simple_lodestone_pillar.png differ diff --git a/public/textures/chipped/simple_magma_block_pillar.png b/public/textures/chipped/simple_magma_block_pillar.png new file mode 100644 index 00000000..9a08039f Binary files /dev/null and b/public/textures/chipped/simple_magma_block_pillar.png differ diff --git a/public/textures/chipped/simple_mossy_cobblestone_pillar.png b/public/textures/chipped/simple_mossy_cobblestone_pillar.png new file mode 100644 index 00000000..90342a20 Binary files /dev/null and b/public/textures/chipped/simple_mossy_cobblestone_pillar.png differ diff --git a/public/textures/chipped/simple_mossy_stone_bricks_pillar.png b/public/textures/chipped/simple_mossy_stone_bricks_pillar.png new file mode 100644 index 00000000..51ae3d7f Binary files /dev/null and b/public/textures/chipped/simple_mossy_stone_bricks_pillar.png differ diff --git a/public/textures/chipped/simple_mud_bricks_pillar.png b/public/textures/chipped/simple_mud_bricks_pillar.png new file mode 100644 index 00000000..e4a0a913 Binary files /dev/null and b/public/textures/chipped/simple_mud_bricks_pillar.png differ diff --git a/public/textures/chipped/simple_mud_pillar.png b/public/textures/chipped/simple_mud_pillar.png new file mode 100644 index 00000000..23e879e4 Binary files /dev/null and b/public/textures/chipped/simple_mud_pillar.png differ diff --git a/public/textures/chipped/simple_nether_bricks_pillar.png b/public/textures/chipped/simple_nether_bricks_pillar.png new file mode 100644 index 00000000..1bbdb63d Binary files /dev/null and b/public/textures/chipped/simple_nether_bricks_pillar.png differ diff --git a/public/textures/chipped/simple_netherrack_pillar.png b/public/textures/chipped/simple_netherrack_pillar.png new file mode 100644 index 00000000..67f605ab Binary files /dev/null and b/public/textures/chipped/simple_netherrack_pillar.png differ diff --git a/public/textures/chipped/simple_obsidian_pillar.png b/public/textures/chipped/simple_obsidian_pillar.png new file mode 100644 index 00000000..14364e3c Binary files /dev/null and b/public/textures/chipped/simple_obsidian_pillar.png differ diff --git a/public/textures/chipped/simple_packed_ice_pillar.png b/public/textures/chipped/simple_packed_ice_pillar.png new file mode 100644 index 00000000..259e927b Binary files /dev/null and b/public/textures/chipped/simple_packed_ice_pillar.png differ diff --git a/public/textures/chipped/simple_packed_mud_pillar.png b/public/textures/chipped/simple_packed_mud_pillar.png new file mode 100644 index 00000000..a4fe13e6 Binary files /dev/null and b/public/textures/chipped/simple_packed_mud_pillar.png differ diff --git a/public/textures/chipped/simple_prismarine_pillar.png b/public/textures/chipped/simple_prismarine_pillar.png new file mode 100644 index 00000000..8f34aa53 Binary files /dev/null and b/public/textures/chipped/simple_prismarine_pillar.png differ diff --git a/public/textures/chipped/simple_purpur_block_pillar.png b/public/textures/chipped/simple_purpur_block_pillar.png new file mode 100644 index 00000000..1b16d4b6 Binary files /dev/null and b/public/textures/chipped/simple_purpur_block_pillar.png differ diff --git a/public/textures/chipped/simple_quartz_block_pillar.png b/public/textures/chipped/simple_quartz_block_pillar.png new file mode 100644 index 00000000..ffbde1a4 Binary files /dev/null and b/public/textures/chipped/simple_quartz_block_pillar.png differ diff --git a/public/textures/chipped/simple_raw_copper_block_pillar.png b/public/textures/chipped/simple_raw_copper_block_pillar.png new file mode 100644 index 00000000..9f3b122d Binary files /dev/null and b/public/textures/chipped/simple_raw_copper_block_pillar.png differ diff --git a/public/textures/chipped/simple_raw_gold_block_pillar.png b/public/textures/chipped/simple_raw_gold_block_pillar.png new file mode 100644 index 00000000..4fe158e2 Binary files /dev/null and b/public/textures/chipped/simple_raw_gold_block_pillar.png differ diff --git a/public/textures/chipped/simple_raw_iron_block_pillar.png b/public/textures/chipped/simple_raw_iron_block_pillar.png new file mode 100644 index 00000000..60dc6df1 Binary files /dev/null and b/public/textures/chipped/simple_raw_iron_block_pillar.png differ diff --git a/public/textures/chipped/simple_red_nether_bricks_pillar.png b/public/textures/chipped/simple_red_nether_bricks_pillar.png new file mode 100644 index 00000000..91f076be Binary files /dev/null and b/public/textures/chipped/simple_red_nether_bricks_pillar.png differ diff --git a/public/textures/chipped/simple_red_sandstone_pillar.png b/public/textures/chipped/simple_red_sandstone_pillar.png new file mode 100644 index 00000000..031fda80 Binary files /dev/null and b/public/textures/chipped/simple_red_sandstone_pillar.png differ diff --git a/public/textures/chipped/simple_redstone_block_pillar.png b/public/textures/chipped/simple_redstone_block_pillar.png new file mode 100644 index 00000000..c07ea91c Binary files /dev/null and b/public/textures/chipped/simple_redstone_block_pillar.png differ diff --git a/public/textures/chipped/simple_sandstone_pillar.png b/public/textures/chipped/simple_sandstone_pillar.png new file mode 100644 index 00000000..d9bfefd6 Binary files /dev/null and b/public/textures/chipped/simple_sandstone_pillar.png differ diff --git a/public/textures/chipped/simple_smooth_stone_pillar.png b/public/textures/chipped/simple_smooth_stone_pillar.png new file mode 100644 index 00000000..aca8c9d7 Binary files /dev/null and b/public/textures/chipped/simple_smooth_stone_pillar.png differ diff --git a/public/textures/chipped/simple_snow_block_pillar.png b/public/textures/chipped/simple_snow_block_pillar.png new file mode 100644 index 00000000..a8b57488 Binary files /dev/null and b/public/textures/chipped/simple_snow_block_pillar.png differ diff --git a/public/textures/chipped/simple_stone_pillar.png b/public/textures/chipped/simple_stone_pillar.png new file mode 100644 index 00000000..790cc126 Binary files /dev/null and b/public/textures/chipped/simple_stone_pillar.png differ diff --git a/public/textures/chipped/simple_tuff_pillar.png b/public/textures/chipped/simple_tuff_pillar.png new file mode 100644 index 00000000..532f6651 Binary files /dev/null and b/public/textures/chipped/simple_tuff_pillar.png differ diff --git a/public/textures/chipped/slanted_acacia_planks.png b/public/textures/chipped/slanted_acacia_planks.png new file mode 100644 index 00000000..d33306ab Binary files /dev/null and b/public/textures/chipped/slanted_acacia_planks.png differ diff --git a/public/textures/chipped/slanted_bamboo_planks.png b/public/textures/chipped/slanted_bamboo_planks.png new file mode 100644 index 00000000..5c55161f Binary files /dev/null and b/public/textures/chipped/slanted_bamboo_planks.png differ diff --git a/public/textures/chipped/slanted_birch_planks.png b/public/textures/chipped/slanted_birch_planks.png new file mode 100644 index 00000000..d830ca84 Binary files /dev/null and b/public/textures/chipped/slanted_birch_planks.png differ diff --git a/public/textures/chipped/slanted_cherry_planks.png b/public/textures/chipped/slanted_cherry_planks.png new file mode 100644 index 00000000..df19540f Binary files /dev/null and b/public/textures/chipped/slanted_cherry_planks.png differ diff --git a/public/textures/chipped/slanted_crimson_planks.png b/public/textures/chipped/slanted_crimson_planks.png new file mode 100644 index 00000000..c453c2f0 Binary files /dev/null and b/public/textures/chipped/slanted_crimson_planks.png differ diff --git a/public/textures/chipped/slanted_dark_oak_planks.png b/public/textures/chipped/slanted_dark_oak_planks.png new file mode 100644 index 00000000..72549c87 Binary files /dev/null and b/public/textures/chipped/slanted_dark_oak_planks.png differ diff --git a/public/textures/chipped/slanted_jungle_planks.png b/public/textures/chipped/slanted_jungle_planks.png new file mode 100644 index 00000000..6d399f4d Binary files /dev/null and b/public/textures/chipped/slanted_jungle_planks.png differ diff --git a/public/textures/chipped/slanted_mangrove_planks.png b/public/textures/chipped/slanted_mangrove_planks.png new file mode 100644 index 00000000..ee0df44b Binary files /dev/null and b/public/textures/chipped/slanted_mangrove_planks.png differ diff --git a/public/textures/chipped/slanted_oak_planks.png b/public/textures/chipped/slanted_oak_planks.png new file mode 100644 index 00000000..08e0f465 Binary files /dev/null and b/public/textures/chipped/slanted_oak_planks.png differ diff --git a/public/textures/chipped/slanted_spruce_planks.png b/public/textures/chipped/slanted_spruce_planks.png new file mode 100644 index 00000000..d00c26a0 Binary files /dev/null and b/public/textures/chipped/slanted_spruce_planks.png differ diff --git a/public/textures/chipped/slanted_warped_planks.png b/public/textures/chipped/slanted_warped_planks.png new file mode 100644 index 00000000..ca73c350 Binary files /dev/null and b/public/textures/chipped/slanted_warped_planks.png differ diff --git a/public/textures/chipped/sliding_acacia_door.png b/public/textures/chipped/sliding_acacia_door.png new file mode 100644 index 00000000..5996fbf6 Binary files /dev/null and b/public/textures/chipped/sliding_acacia_door.png differ diff --git a/public/textures/chipped/sliding_bamboo_door.png b/public/textures/chipped/sliding_bamboo_door.png new file mode 100644 index 00000000..caa55814 Binary files /dev/null and b/public/textures/chipped/sliding_bamboo_door.png differ diff --git a/public/textures/chipped/sliding_birch_door.png b/public/textures/chipped/sliding_birch_door.png new file mode 100644 index 00000000..d3978ef3 Binary files /dev/null and b/public/textures/chipped/sliding_birch_door.png differ diff --git a/public/textures/chipped/sliding_cherry_door.png b/public/textures/chipped/sliding_cherry_door.png new file mode 100644 index 00000000..9f0de00a Binary files /dev/null and b/public/textures/chipped/sliding_cherry_door.png differ diff --git a/public/textures/chipped/sliding_crimson_door.png b/public/textures/chipped/sliding_crimson_door.png new file mode 100644 index 00000000..c64bb411 Binary files /dev/null and b/public/textures/chipped/sliding_crimson_door.png differ diff --git a/public/textures/chipped/sliding_dark_oak_door.png b/public/textures/chipped/sliding_dark_oak_door.png new file mode 100644 index 00000000..ef165910 Binary files /dev/null and b/public/textures/chipped/sliding_dark_oak_door.png differ diff --git a/public/textures/chipped/sliding_jungle_door.png b/public/textures/chipped/sliding_jungle_door.png new file mode 100644 index 00000000..a6f93e6d Binary files /dev/null and b/public/textures/chipped/sliding_jungle_door.png differ diff --git a/public/textures/chipped/sliding_mangrove_door.png b/public/textures/chipped/sliding_mangrove_door.png new file mode 100644 index 00000000..6184a5eb Binary files /dev/null and b/public/textures/chipped/sliding_mangrove_door.png differ diff --git a/public/textures/chipped/sliding_oak_door.png b/public/textures/chipped/sliding_oak_door.png new file mode 100644 index 00000000..0b990d82 Binary files /dev/null and b/public/textures/chipped/sliding_oak_door.png differ diff --git a/public/textures/chipped/sliding_spruce_door.png b/public/textures/chipped/sliding_spruce_door.png new file mode 100644 index 00000000..703130ae Binary files /dev/null and b/public/textures/chipped/sliding_spruce_door.png differ diff --git a/public/textures/chipped/slight_smile_carved_pumpkin.png b/public/textures/chipped/slight_smile_carved_pumpkin.png new file mode 100644 index 00000000..d11dd2c6 Binary files /dev/null and b/public/textures/chipped/slight_smile_carved_pumpkin.png differ diff --git a/public/textures/chipped/slight_smile_jack_o_lantern.png b/public/textures/chipped/slight_smile_jack_o_lantern.png new file mode 100644 index 00000000..8f7901da Binary files /dev/null and b/public/textures/chipped/slight_smile_jack_o_lantern.png differ diff --git a/public/textures/chipped/slotted_acacia_trapdoor.png b/public/textures/chipped/slotted_acacia_trapdoor.png new file mode 100644 index 00000000..9d8135e5 Binary files /dev/null and b/public/textures/chipped/slotted_acacia_trapdoor.png differ diff --git a/public/textures/chipped/slotted_bamboo_trapdoor.png b/public/textures/chipped/slotted_bamboo_trapdoor.png new file mode 100644 index 00000000..9de591a6 Binary files /dev/null and b/public/textures/chipped/slotted_bamboo_trapdoor.png differ diff --git a/public/textures/chipped/slotted_birch_trapdoor.png b/public/textures/chipped/slotted_birch_trapdoor.png new file mode 100644 index 00000000..1efad5c5 Binary files /dev/null and b/public/textures/chipped/slotted_birch_trapdoor.png differ diff --git a/public/textures/chipped/slotted_cherry_trapdoor.png b/public/textures/chipped/slotted_cherry_trapdoor.png new file mode 100644 index 00000000..a7badb32 Binary files /dev/null and b/public/textures/chipped/slotted_cherry_trapdoor.png differ diff --git a/public/textures/chipped/slotted_crimson_trapdoor.png b/public/textures/chipped/slotted_crimson_trapdoor.png new file mode 100644 index 00000000..711b5380 Binary files /dev/null and b/public/textures/chipped/slotted_crimson_trapdoor.png differ diff --git a/public/textures/chipped/slotted_dark_oak_trapdoor.png b/public/textures/chipped/slotted_dark_oak_trapdoor.png new file mode 100644 index 00000000..41287131 Binary files /dev/null and b/public/textures/chipped/slotted_dark_oak_trapdoor.png differ diff --git a/public/textures/chipped/slotted_jungle_trapdoor.png b/public/textures/chipped/slotted_jungle_trapdoor.png new file mode 100644 index 00000000..48e84dfb Binary files /dev/null and b/public/textures/chipped/slotted_jungle_trapdoor.png differ diff --git a/public/textures/chipped/slotted_mangrove_trapdoor.png b/public/textures/chipped/slotted_mangrove_trapdoor.png new file mode 100644 index 00000000..f0ac6993 Binary files /dev/null and b/public/textures/chipped/slotted_mangrove_trapdoor.png differ diff --git a/public/textures/chipped/slotted_oak_trapdoor.png b/public/textures/chipped/slotted_oak_trapdoor.png new file mode 100644 index 00000000..76df5a7b Binary files /dev/null and b/public/textures/chipped/slotted_oak_trapdoor.png differ diff --git a/public/textures/chipped/slotted_spruce_trapdoor.png b/public/textures/chipped/slotted_spruce_trapdoor.png new file mode 100644 index 00000000..94e12047 Binary files /dev/null and b/public/textures/chipped/slotted_spruce_trapdoor.png differ diff --git a/public/textures/chipped/slotted_warped_trapdoor.png b/public/textures/chipped/slotted_warped_trapdoor.png new file mode 100644 index 00000000..8a0c07e1 Binary files /dev/null and b/public/textures/chipped/slotted_warped_trapdoor.png differ diff --git a/public/textures/chipped/small_amethyst_block_bricks.png b/public/textures/chipped/small_amethyst_block_bricks.png new file mode 100644 index 00000000..b004bd8a Binary files /dev/null and b/public/textures/chipped/small_amethyst_block_bricks.png differ diff --git a/public/textures/chipped/small_ancient_debris_bricks.png b/public/textures/chipped/small_ancient_debris_bricks.png new file mode 100644 index 00000000..041f60c4 Binary files /dev/null and b/public/textures/chipped/small_ancient_debris_bricks.png differ diff --git a/public/textures/chipped/small_andesite_bricks.png b/public/textures/chipped/small_andesite_bricks.png new file mode 100644 index 00000000..76493b37 Binary files /dev/null and b/public/textures/chipped/small_andesite_bricks.png differ diff --git a/public/textures/chipped/small_basalt_bricks.png b/public/textures/chipped/small_basalt_bricks.png new file mode 100644 index 00000000..e7faa5fe Binary files /dev/null and b/public/textures/chipped/small_basalt_bricks.png differ diff --git a/public/textures/chipped/small_black_stained_glass.png b/public/textures/chipped/small_black_stained_glass.png new file mode 100644 index 00000000..e0629846 Binary files /dev/null and b/public/textures/chipped/small_black_stained_glass.png differ diff --git a/public/textures/chipped/small_black_stained_glass_pane.png b/public/textures/chipped/small_black_stained_glass_pane.png new file mode 100644 index 00000000..4375b084 Binary files /dev/null and b/public/textures/chipped/small_black_stained_glass_pane.png differ diff --git a/public/textures/chipped/small_black_terracotta_tiles.png b/public/textures/chipped/small_black_terracotta_tiles.png new file mode 100644 index 00000000..793cb134 Binary files /dev/null and b/public/textures/chipped/small_black_terracotta_tiles.png differ diff --git a/public/textures/chipped/small_blackstone_bricks.png b/public/textures/chipped/small_blackstone_bricks.png new file mode 100644 index 00000000..fc1d7476 Binary files /dev/null and b/public/textures/chipped/small_blackstone_bricks.png differ diff --git a/public/textures/chipped/small_blue_ice_bricks.png b/public/textures/chipped/small_blue_ice_bricks.png new file mode 100644 index 00000000..e2595e43 Binary files /dev/null and b/public/textures/chipped/small_blue_ice_bricks.png differ diff --git a/public/textures/chipped/small_blue_stained_glass.png b/public/textures/chipped/small_blue_stained_glass.png new file mode 100644 index 00000000..e71a6c92 Binary files /dev/null and b/public/textures/chipped/small_blue_stained_glass.png differ diff --git a/public/textures/chipped/small_blue_stained_glass_pane.png b/public/textures/chipped/small_blue_stained_glass_pane.png new file mode 100644 index 00000000..0591f0bc Binary files /dev/null and b/public/textures/chipped/small_blue_stained_glass_pane.png differ diff --git a/public/textures/chipped/small_blue_terracotta_tiles.png b/public/textures/chipped/small_blue_terracotta_tiles.png new file mode 100644 index 00000000..5af38680 Binary files /dev/null and b/public/textures/chipped/small_blue_terracotta_tiles.png differ diff --git a/public/textures/chipped/small_borderless_bricks_bricks.png b/public/textures/chipped/small_borderless_bricks_bricks.png new file mode 100644 index 00000000..78ef8eef Binary files /dev/null and b/public/textures/chipped/small_borderless_bricks_bricks.png differ diff --git a/public/textures/chipped/small_bricks_bricks.png b/public/textures/chipped/small_bricks_bricks.png new file mode 100644 index 00000000..2c0abc06 Binary files /dev/null and b/public/textures/chipped/small_bricks_bricks.png differ diff --git a/public/textures/chipped/small_brown_stained_glass.png b/public/textures/chipped/small_brown_stained_glass.png new file mode 100644 index 00000000..117a1f0b Binary files /dev/null and b/public/textures/chipped/small_brown_stained_glass.png differ diff --git a/public/textures/chipped/small_brown_stained_glass_pane.png b/public/textures/chipped/small_brown_stained_glass_pane.png new file mode 100644 index 00000000..681517e5 Binary files /dev/null and b/public/textures/chipped/small_brown_stained_glass_pane.png differ diff --git a/public/textures/chipped/small_brown_terracotta_tiles.png b/public/textures/chipped/small_brown_terracotta_tiles.png new file mode 100644 index 00000000..885b72c2 Binary files /dev/null and b/public/textures/chipped/small_brown_terracotta_tiles.png differ diff --git a/public/textures/chipped/small_calcite_bricks.png b/public/textures/chipped/small_calcite_bricks.png new file mode 100644 index 00000000..f5e13d5e Binary files /dev/null and b/public/textures/chipped/small_calcite_bricks.png differ diff --git a/public/textures/chipped/small_clay_bricks.png b/public/textures/chipped/small_clay_bricks.png new file mode 100644 index 00000000..edc775dc Binary files /dev/null and b/public/textures/chipped/small_clay_bricks.png differ diff --git a/public/textures/chipped/small_coal_block_bricks.png b/public/textures/chipped/small_coal_block_bricks.png new file mode 100644 index 00000000..06c0b6c6 Binary files /dev/null and b/public/textures/chipped/small_coal_block_bricks.png differ diff --git a/public/textures/chipped/small_cobblestone_bricks.png b/public/textures/chipped/small_cobblestone_bricks.png new file mode 100644 index 00000000..08e37028 Binary files /dev/null and b/public/textures/chipped/small_cobblestone_bricks.png differ diff --git a/public/textures/chipped/small_crimson_roots_bud.png b/public/textures/chipped/small_crimson_roots_bud.png new file mode 100644 index 00000000..904003bf Binary files /dev/null and b/public/textures/chipped/small_crimson_roots_bud.png differ diff --git a/public/textures/chipped/small_crying_obsidian_bricks.png b/public/textures/chipped/small_crying_obsidian_bricks.png new file mode 100644 index 00000000..f9b2a3b1 Binary files /dev/null and b/public/textures/chipped/small_crying_obsidian_bricks.png differ diff --git a/public/textures/chipped/small_cyan_stained_glass.png b/public/textures/chipped/small_cyan_stained_glass.png new file mode 100644 index 00000000..5832c791 Binary files /dev/null and b/public/textures/chipped/small_cyan_stained_glass.png differ diff --git a/public/textures/chipped/small_cyan_stained_glass_pane.png b/public/textures/chipped/small_cyan_stained_glass_pane.png new file mode 100644 index 00000000..20a59fde Binary files /dev/null and b/public/textures/chipped/small_cyan_stained_glass_pane.png differ diff --git a/public/textures/chipped/small_cyan_terracotta_tiles.png b/public/textures/chipped/small_cyan_terracotta_tiles.png new file mode 100644 index 00000000..81ff9d5a Binary files /dev/null and b/public/textures/chipped/small_cyan_terracotta_tiles.png differ diff --git a/public/textures/chipped/small_dark_prismarine_bricks.png b/public/textures/chipped/small_dark_prismarine_bricks.png new file mode 100644 index 00000000..0007a8dd Binary files /dev/null and b/public/textures/chipped/small_dark_prismarine_bricks.png differ diff --git a/public/textures/chipped/small_deepslate_bricks.png b/public/textures/chipped/small_deepslate_bricks.png new file mode 100644 index 00000000..c72e80b2 Binary files /dev/null and b/public/textures/chipped/small_deepslate_bricks.png differ diff --git a/public/textures/chipped/small_diamond_leaded_glass.png b/public/textures/chipped/small_diamond_leaded_glass.png new file mode 100644 index 00000000..c49df111 Binary files /dev/null and b/public/textures/chipped/small_diamond_leaded_glass.png differ diff --git a/public/textures/chipped/small_diamond_leaded_glass_pane.png b/public/textures/chipped/small_diamond_leaded_glass_pane.png new file mode 100644 index 00000000..a9997003 Binary files /dev/null and b/public/textures/chipped/small_diamond_leaded_glass_pane.png differ diff --git a/public/textures/chipped/small_diorite_bricks.png b/public/textures/chipped/small_diorite_bricks.png new file mode 100644 index 00000000..ffcd9578 Binary files /dev/null and b/public/textures/chipped/small_diorite_bricks.png differ diff --git a/public/textures/chipped/small_dirt_bricks.png b/public/textures/chipped/small_dirt_bricks.png new file mode 100644 index 00000000..bd947430 Binary files /dev/null and b/public/textures/chipped/small_dirt_bricks.png differ diff --git a/public/textures/chipped/small_dripstone_block_bricks.png b/public/textures/chipped/small_dripstone_block_bricks.png new file mode 100644 index 00000000..ef0e5aa9 Binary files /dev/null and b/public/textures/chipped/small_dripstone_block_bricks.png differ diff --git a/public/textures/chipped/small_end_stone_bricks.png b/public/textures/chipped/small_end_stone_bricks.png new file mode 100644 index 00000000..6d8a77c9 Binary files /dev/null and b/public/textures/chipped/small_end_stone_bricks.png differ diff --git a/public/textures/chipped/small_gilded_blackstone_bricks.png b/public/textures/chipped/small_gilded_blackstone_bricks.png new file mode 100644 index 00000000..fccc456a Binary files /dev/null and b/public/textures/chipped/small_gilded_blackstone_bricks.png differ diff --git a/public/textures/chipped/small_granite_bricks.png b/public/textures/chipped/small_granite_bricks.png new file mode 100644 index 00000000..b8653272 Binary files /dev/null and b/public/textures/chipped/small_granite_bricks.png differ diff --git a/public/textures/chipped/small_gray_stained_glass.png b/public/textures/chipped/small_gray_stained_glass.png new file mode 100644 index 00000000..b836895f Binary files /dev/null and b/public/textures/chipped/small_gray_stained_glass.png differ diff --git a/public/textures/chipped/small_gray_stained_glass_pane.png b/public/textures/chipped/small_gray_stained_glass_pane.png new file mode 100644 index 00000000..ad5af018 Binary files /dev/null and b/public/textures/chipped/small_gray_stained_glass_pane.png differ diff --git a/public/textures/chipped/small_gray_terracotta_tiles.png b/public/textures/chipped/small_gray_terracotta_tiles.png new file mode 100644 index 00000000..aea433ac Binary files /dev/null and b/public/textures/chipped/small_gray_terracotta_tiles.png differ diff --git a/public/textures/chipped/small_green_lantern.png b/public/textures/chipped/small_green_lantern.png new file mode 100644 index 00000000..7ed4d3a4 Binary files /dev/null and b/public/textures/chipped/small_green_lantern.png differ diff --git a/public/textures/chipped/small_green_stained_glass.png b/public/textures/chipped/small_green_stained_glass.png new file mode 100644 index 00000000..3b720357 Binary files /dev/null and b/public/textures/chipped/small_green_stained_glass.png differ diff --git a/public/textures/chipped/small_green_stained_glass_pane.png b/public/textures/chipped/small_green_stained_glass_pane.png new file mode 100644 index 00000000..df13170b Binary files /dev/null and b/public/textures/chipped/small_green_stained_glass_pane.png differ diff --git a/public/textures/chipped/small_green_terracotta_tiles.png b/public/textures/chipped/small_green_terracotta_tiles.png new file mode 100644 index 00000000..3586f675 Binary files /dev/null and b/public/textures/chipped/small_green_terracotta_tiles.png differ diff --git a/public/textures/chipped/small_ice_bricks.png b/public/textures/chipped/small_ice_bricks.png new file mode 100644 index 00000000..1abaf2e3 Binary files /dev/null and b/public/textures/chipped/small_ice_bricks.png differ diff --git a/public/textures/chipped/small_lapis_block_bricks.png b/public/textures/chipped/small_lapis_block_bricks.png new file mode 100644 index 00000000..9c0edbee Binary files /dev/null and b/public/textures/chipped/small_lapis_block_bricks.png differ diff --git a/public/textures/chipped/small_light_blue_stained_glass.png b/public/textures/chipped/small_light_blue_stained_glass.png new file mode 100644 index 00000000..7522c613 Binary files /dev/null and b/public/textures/chipped/small_light_blue_stained_glass.png differ diff --git a/public/textures/chipped/small_light_blue_stained_glass_pane.png b/public/textures/chipped/small_light_blue_stained_glass_pane.png new file mode 100644 index 00000000..9584d562 Binary files /dev/null and b/public/textures/chipped/small_light_blue_stained_glass_pane.png differ diff --git a/public/textures/chipped/small_light_blue_terracotta_tiles.png b/public/textures/chipped/small_light_blue_terracotta_tiles.png new file mode 100644 index 00000000..7cc033a7 Binary files /dev/null and b/public/textures/chipped/small_light_blue_terracotta_tiles.png differ diff --git a/public/textures/chipped/small_light_gray_stained_glass.png b/public/textures/chipped/small_light_gray_stained_glass.png new file mode 100644 index 00000000..e0d6e814 Binary files /dev/null and b/public/textures/chipped/small_light_gray_stained_glass.png differ diff --git a/public/textures/chipped/small_light_gray_stained_glass_pane.png b/public/textures/chipped/small_light_gray_stained_glass_pane.png new file mode 100644 index 00000000..8ddf7720 Binary files /dev/null and b/public/textures/chipped/small_light_gray_stained_glass_pane.png differ diff --git a/public/textures/chipped/small_light_gray_terracotta_tiles.png b/public/textures/chipped/small_light_gray_terracotta_tiles.png new file mode 100644 index 00000000..90fa8f4c Binary files /dev/null and b/public/textures/chipped/small_light_gray_terracotta_tiles.png differ diff --git a/public/textures/chipped/small_lime_stained_glass.png b/public/textures/chipped/small_lime_stained_glass.png new file mode 100644 index 00000000..36feb127 Binary files /dev/null and b/public/textures/chipped/small_lime_stained_glass.png differ diff --git a/public/textures/chipped/small_lime_stained_glass_pane.png b/public/textures/chipped/small_lime_stained_glass_pane.png new file mode 100644 index 00000000..8405083b Binary files /dev/null and b/public/textures/chipped/small_lime_stained_glass_pane.png differ diff --git a/public/textures/chipped/small_lime_terracotta_tiles.png b/public/textures/chipped/small_lime_terracotta_tiles.png new file mode 100644 index 00000000..31efb53f Binary files /dev/null and b/public/textures/chipped/small_lime_terracotta_tiles.png differ diff --git a/public/textures/chipped/small_lodestone_bricks.png b/public/textures/chipped/small_lodestone_bricks.png new file mode 100644 index 00000000..62312d86 Binary files /dev/null and b/public/textures/chipped/small_lodestone_bricks.png differ diff --git a/public/textures/chipped/small_magenta_stained_glass.png b/public/textures/chipped/small_magenta_stained_glass.png new file mode 100644 index 00000000..f3d13977 Binary files /dev/null and b/public/textures/chipped/small_magenta_stained_glass.png differ diff --git a/public/textures/chipped/small_magenta_stained_glass_pane.png b/public/textures/chipped/small_magenta_stained_glass_pane.png new file mode 100644 index 00000000..58e78222 Binary files /dev/null and b/public/textures/chipped/small_magenta_stained_glass_pane.png differ diff --git a/public/textures/chipped/small_magenta_terracotta_tiles.png b/public/textures/chipped/small_magenta_terracotta_tiles.png new file mode 100644 index 00000000..0b2a1281 Binary files /dev/null and b/public/textures/chipped/small_magenta_terracotta_tiles.png differ diff --git a/public/textures/chipped/small_magma_block_bricks.png b/public/textures/chipped/small_magma_block_bricks.png new file mode 100644 index 00000000..97502fef Binary files /dev/null and b/public/textures/chipped/small_magma_block_bricks.png differ diff --git a/public/textures/chipped/small_mossy_cobblestone_bricks.png b/public/textures/chipped/small_mossy_cobblestone_bricks.png new file mode 100644 index 00000000..19adcc20 Binary files /dev/null and b/public/textures/chipped/small_mossy_cobblestone_bricks.png differ diff --git a/public/textures/chipped/small_mossy_stone_bricks_bricks.png b/public/textures/chipped/small_mossy_stone_bricks_bricks.png new file mode 100644 index 00000000..9a994111 Binary files /dev/null and b/public/textures/chipped/small_mossy_stone_bricks_bricks.png differ diff --git a/public/textures/chipped/small_mud_bricks.png b/public/textures/chipped/small_mud_bricks.png new file mode 100644 index 00000000..bfdd4a25 Binary files /dev/null and b/public/textures/chipped/small_mud_bricks.png differ diff --git a/public/textures/chipped/small_mud_bricks_bricks.png b/public/textures/chipped/small_mud_bricks_bricks.png new file mode 100644 index 00000000..fa396f6b Binary files /dev/null and b/public/textures/chipped/small_mud_bricks_bricks.png differ diff --git a/public/textures/chipped/small_nether_bricks_bricks.png b/public/textures/chipped/small_nether_bricks_bricks.png new file mode 100644 index 00000000..26e1bd34 Binary files /dev/null and b/public/textures/chipped/small_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/small_netherrack_bricks.png b/public/textures/chipped/small_netherrack_bricks.png new file mode 100644 index 00000000..b7095675 Binary files /dev/null and b/public/textures/chipped/small_netherrack_bricks.png differ diff --git a/public/textures/chipped/small_obsidian_bricks.png b/public/textures/chipped/small_obsidian_bricks.png new file mode 100644 index 00000000..0c14f771 Binary files /dev/null and b/public/textures/chipped/small_obsidian_bricks.png differ diff --git a/public/textures/chipped/small_orange_stained_glass.png b/public/textures/chipped/small_orange_stained_glass.png new file mode 100644 index 00000000..33a9afe1 Binary files /dev/null and b/public/textures/chipped/small_orange_stained_glass.png differ diff --git a/public/textures/chipped/small_orange_stained_glass_pane.png b/public/textures/chipped/small_orange_stained_glass_pane.png new file mode 100644 index 00000000..24526227 Binary files /dev/null and b/public/textures/chipped/small_orange_stained_glass_pane.png differ diff --git a/public/textures/chipped/small_orange_terracotta_tiles.png b/public/textures/chipped/small_orange_terracotta_tiles.png new file mode 100644 index 00000000..967196b8 Binary files /dev/null and b/public/textures/chipped/small_orange_terracotta_tiles.png differ diff --git a/public/textures/chipped/small_packed_ice_bricks.png b/public/textures/chipped/small_packed_ice_bricks.png new file mode 100644 index 00000000..c347cbe8 Binary files /dev/null and b/public/textures/chipped/small_packed_ice_bricks.png differ diff --git a/public/textures/chipped/small_packed_mud_bricks.png b/public/textures/chipped/small_packed_mud_bricks.png new file mode 100644 index 00000000..e922ee63 Binary files /dev/null and b/public/textures/chipped/small_packed_mud_bricks.png differ diff --git a/public/textures/chipped/small_pink_stained_glass.png b/public/textures/chipped/small_pink_stained_glass.png new file mode 100644 index 00000000..0eb3898b Binary files /dev/null and b/public/textures/chipped/small_pink_stained_glass.png differ diff --git a/public/textures/chipped/small_pink_stained_glass_pane.png b/public/textures/chipped/small_pink_stained_glass_pane.png new file mode 100644 index 00000000..33b95cc6 Binary files /dev/null and b/public/textures/chipped/small_pink_stained_glass_pane.png differ diff --git a/public/textures/chipped/small_pink_terracotta_tiles.png b/public/textures/chipped/small_pink_terracotta_tiles.png new file mode 100644 index 00000000..44de0d7c Binary files /dev/null and b/public/textures/chipped/small_pink_terracotta_tiles.png differ diff --git a/public/textures/chipped/small_prismarine_bricks.png b/public/textures/chipped/small_prismarine_bricks.png new file mode 100644 index 00000000..f4b14416 Binary files /dev/null and b/public/textures/chipped/small_prismarine_bricks.png differ diff --git a/public/textures/chipped/small_purple_stained_glass.png b/public/textures/chipped/small_purple_stained_glass.png new file mode 100644 index 00000000..2f8d1e9e Binary files /dev/null and b/public/textures/chipped/small_purple_stained_glass.png differ diff --git a/public/textures/chipped/small_purple_stained_glass_pane.png b/public/textures/chipped/small_purple_stained_glass_pane.png new file mode 100644 index 00000000..3a328215 Binary files /dev/null and b/public/textures/chipped/small_purple_stained_glass_pane.png differ diff --git a/public/textures/chipped/small_purple_terracotta_tiles.png b/public/textures/chipped/small_purple_terracotta_tiles.png new file mode 100644 index 00000000..904a85d0 Binary files /dev/null and b/public/textures/chipped/small_purple_terracotta_tiles.png differ diff --git a/public/textures/chipped/small_purpur_block_bricks.png b/public/textures/chipped/small_purpur_block_bricks.png new file mode 100644 index 00000000..425922ff Binary files /dev/null and b/public/textures/chipped/small_purpur_block_bricks.png differ diff --git a/public/textures/chipped/small_quartz_block_bricks.png b/public/textures/chipped/small_quartz_block_bricks.png new file mode 100644 index 00000000..c8bb8439 Binary files /dev/null and b/public/textures/chipped/small_quartz_block_bricks.png differ diff --git a/public/textures/chipped/small_raw_copper_block_bricks.png b/public/textures/chipped/small_raw_copper_block_bricks.png new file mode 100644 index 00000000..e868d442 Binary files /dev/null and b/public/textures/chipped/small_raw_copper_block_bricks.png differ diff --git a/public/textures/chipped/small_raw_gold_block_bricks.png b/public/textures/chipped/small_raw_gold_block_bricks.png new file mode 100644 index 00000000..f12544c5 Binary files /dev/null and b/public/textures/chipped/small_raw_gold_block_bricks.png differ diff --git a/public/textures/chipped/small_raw_iron_block_bricks.png b/public/textures/chipped/small_raw_iron_block_bricks.png new file mode 100644 index 00000000..b6ca5e15 Binary files /dev/null and b/public/textures/chipped/small_raw_iron_block_bricks.png differ diff --git a/public/textures/chipped/small_red_nether_bricks_bricks.png b/public/textures/chipped/small_red_nether_bricks_bricks.png new file mode 100644 index 00000000..19bc6c3c Binary files /dev/null and b/public/textures/chipped/small_red_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/small_red_sandstone_bricks.png b/public/textures/chipped/small_red_sandstone_bricks.png new file mode 100644 index 00000000..4bb9d607 Binary files /dev/null and b/public/textures/chipped/small_red_sandstone_bricks.png differ diff --git a/public/textures/chipped/small_red_soul_lantern.png b/public/textures/chipped/small_red_soul_lantern.png new file mode 100644 index 00000000..4b0da63c Binary files /dev/null and b/public/textures/chipped/small_red_soul_lantern.png differ diff --git a/public/textures/chipped/small_red_stained_glass.png b/public/textures/chipped/small_red_stained_glass.png new file mode 100644 index 00000000..71e461f4 Binary files /dev/null and b/public/textures/chipped/small_red_stained_glass.png differ diff --git a/public/textures/chipped/small_red_stained_glass_pane.png b/public/textures/chipped/small_red_stained_glass_pane.png new file mode 100644 index 00000000..207d9722 Binary files /dev/null and b/public/textures/chipped/small_red_stained_glass_pane.png differ diff --git a/public/textures/chipped/small_red_terracotta_tiles.png b/public/textures/chipped/small_red_terracotta_tiles.png new file mode 100644 index 00000000..73ca2a1f Binary files /dev/null and b/public/textures/chipped/small_red_terracotta_tiles.png differ diff --git a/public/textures/chipped/small_redstone_block_bricks.png b/public/textures/chipped/small_redstone_block_bricks.png new file mode 100644 index 00000000..4067b110 Binary files /dev/null and b/public/textures/chipped/small_redstone_block_bricks.png differ diff --git a/public/textures/chipped/small_sandstone_bricks.png b/public/textures/chipped/small_sandstone_bricks.png new file mode 100644 index 00000000..60125569 Binary files /dev/null and b/public/textures/chipped/small_sandstone_bricks.png differ diff --git a/public/textures/chipped/small_smooth_stone_bricks.png b/public/textures/chipped/small_smooth_stone_bricks.png new file mode 100644 index 00000000..290f86c6 Binary files /dev/null and b/public/textures/chipped/small_smooth_stone_bricks.png differ diff --git a/public/textures/chipped/small_snow_block_bricks.png b/public/textures/chipped/small_snow_block_bricks.png new file mode 100644 index 00000000..2d07e226 Binary files /dev/null and b/public/textures/chipped/small_snow_block_bricks.png differ diff --git a/public/textures/chipped/small_stone_bricks.png b/public/textures/chipped/small_stone_bricks.png new file mode 100644 index 00000000..f601935d Binary files /dev/null and b/public/textures/chipped/small_stone_bricks.png differ diff --git a/public/textures/chipped/small_terracotta_tiles.png b/public/textures/chipped/small_terracotta_tiles.png new file mode 100644 index 00000000..1eff91a8 Binary files /dev/null and b/public/textures/chipped/small_terracotta_tiles.png differ diff --git a/public/textures/chipped/small_tuff_bricks.png b/public/textures/chipped/small_tuff_bricks.png new file mode 100644 index 00000000..1166d2c4 Binary files /dev/null and b/public/textures/chipped/small_tuff_bricks.png differ diff --git a/public/textures/chipped/small_white_stained_glass.png b/public/textures/chipped/small_white_stained_glass.png new file mode 100644 index 00000000..b54d8843 Binary files /dev/null and b/public/textures/chipped/small_white_stained_glass.png differ diff --git a/public/textures/chipped/small_white_stained_glass_pane.png b/public/textures/chipped/small_white_stained_glass_pane.png new file mode 100644 index 00000000..8124d1f6 Binary files /dev/null and b/public/textures/chipped/small_white_stained_glass_pane.png differ diff --git a/public/textures/chipped/small_white_terracotta_tiles.png b/public/textures/chipped/small_white_terracotta_tiles.png new file mode 100644 index 00000000..01988453 Binary files /dev/null and b/public/textures/chipped/small_white_terracotta_tiles.png differ diff --git a/public/textures/chipped/small_yellow_stained_glass.png b/public/textures/chipped/small_yellow_stained_glass.png new file mode 100644 index 00000000..f54a5d30 Binary files /dev/null and b/public/textures/chipped/small_yellow_stained_glass.png differ diff --git a/public/textures/chipped/small_yellow_stained_glass_pane.png b/public/textures/chipped/small_yellow_stained_glass_pane.png new file mode 100644 index 00000000..09c7d3f4 Binary files /dev/null and b/public/textures/chipped/small_yellow_stained_glass_pane.png differ diff --git a/public/textures/chipped/small_yellow_terracotta_tiles.png b/public/textures/chipped/small_yellow_terracotta_tiles.png new file mode 100644 index 00000000..995a8d24 Binary files /dev/null and b/public/textures/chipped/small_yellow_terracotta_tiles.png differ diff --git a/public/textures/chipped/smiling_carved_pumpkin.png b/public/textures/chipped/smiling_carved_pumpkin.png new file mode 100644 index 00000000..8229f713 Binary files /dev/null and b/public/textures/chipped/smiling_carved_pumpkin.png differ diff --git a/public/textures/chipped/smiling_jack_o_lantern.png b/public/textures/chipped/smiling_jack_o_lantern.png new file mode 100644 index 00000000..0bcf32d7 Binary files /dev/null and b/public/textures/chipped/smiling_jack_o_lantern.png differ diff --git a/public/textures/chipped/smol_lily_pad.png b/public/textures/chipped/smol_lily_pad.png new file mode 100644 index 00000000..7fdb0e12 Binary files /dev/null and b/public/textures/chipped/smol_lily_pad.png differ diff --git a/public/textures/chipped/smooth_acacia_planks.png b/public/textures/chipped/smooth_acacia_planks.png new file mode 100644 index 00000000..a45c6e2b Binary files /dev/null and b/public/textures/chipped/smooth_acacia_planks.png differ diff --git a/public/textures/chipped/smooth_amethyst_block_column.png b/public/textures/chipped/smooth_amethyst_block_column.png new file mode 100644 index 00000000..d24597ee Binary files /dev/null and b/public/textures/chipped/smooth_amethyst_block_column.png differ diff --git a/public/textures/chipped/smooth_ancient_debris_column.png b/public/textures/chipped/smooth_ancient_debris_column.png new file mode 100644 index 00000000..88a287b1 Binary files /dev/null and b/public/textures/chipped/smooth_ancient_debris_column.png differ diff --git a/public/textures/chipped/smooth_andesite_column.png b/public/textures/chipped/smooth_andesite_column.png new file mode 100644 index 00000000..c1f260d1 Binary files /dev/null and b/public/textures/chipped/smooth_andesite_column.png differ diff --git a/public/textures/chipped/smooth_bamboo_planks.png b/public/textures/chipped/smooth_bamboo_planks.png new file mode 100644 index 00000000..f490202c Binary files /dev/null and b/public/textures/chipped/smooth_bamboo_planks.png differ diff --git a/public/textures/chipped/smooth_basalt_column.png b/public/textures/chipped/smooth_basalt_column.png new file mode 100644 index 00000000..94155c6f Binary files /dev/null and b/public/textures/chipped/smooth_basalt_column.png differ diff --git a/public/textures/chipped/smooth_basalt_pointed_dripstone.png b/public/textures/chipped/smooth_basalt_pointed_dripstone.png new file mode 100644 index 00000000..5a045c7f Binary files /dev/null and b/public/textures/chipped/smooth_basalt_pointed_dripstone.png differ diff --git a/public/textures/chipped/smooth_birch_planks.png b/public/textures/chipped/smooth_birch_planks.png new file mode 100644 index 00000000..bffd0aaa Binary files /dev/null and b/public/textures/chipped/smooth_birch_planks.png differ diff --git a/public/textures/chipped/smooth_black_concrete.png b/public/textures/chipped/smooth_black_concrete.png new file mode 100644 index 00000000..65657d6d Binary files /dev/null and b/public/textures/chipped/smooth_black_concrete.png differ diff --git a/public/textures/chipped/smooth_blackstone_bricks.png b/public/textures/chipped/smooth_blackstone_bricks.png new file mode 100644 index 00000000..d95d142a Binary files /dev/null and b/public/textures/chipped/smooth_blackstone_bricks.png differ diff --git a/public/textures/chipped/smooth_blackstone_column.png b/public/textures/chipped/smooth_blackstone_column.png new file mode 100644 index 00000000..51805035 Binary files /dev/null and b/public/textures/chipped/smooth_blackstone_column.png differ diff --git a/public/textures/chipped/smooth_blue_concrete.png b/public/textures/chipped/smooth_blue_concrete.png new file mode 100644 index 00000000..04d0fe32 Binary files /dev/null and b/public/textures/chipped/smooth_blue_concrete.png differ diff --git a/public/textures/chipped/smooth_blue_ice_column.png b/public/textures/chipped/smooth_blue_ice_column.png new file mode 100644 index 00000000..389ff915 Binary files /dev/null and b/public/textures/chipped/smooth_blue_ice_column.png differ diff --git a/public/textures/chipped/smooth_borderless_bricks_column.png b/public/textures/chipped/smooth_borderless_bricks_column.png new file mode 100644 index 00000000..d917498e Binary files /dev/null and b/public/textures/chipped/smooth_borderless_bricks_column.png differ diff --git a/public/textures/chipped/smooth_bricks_column.png b/public/textures/chipped/smooth_bricks_column.png new file mode 100644 index 00000000..f89c5912 Binary files /dev/null and b/public/textures/chipped/smooth_bricks_column.png differ diff --git a/public/textures/chipped/smooth_brown_concrete.png b/public/textures/chipped/smooth_brown_concrete.png new file mode 100644 index 00000000..1dcebf8a Binary files /dev/null and b/public/textures/chipped/smooth_brown_concrete.png differ diff --git a/public/textures/chipped/smooth_brown_mushroom_block.png b/public/textures/chipped/smooth_brown_mushroom_block.png new file mode 100644 index 00000000..77eb4e4f Binary files /dev/null and b/public/textures/chipped/smooth_brown_mushroom_block.png differ diff --git a/public/textures/chipped/smooth_calcite_column.png b/public/textures/chipped/smooth_calcite_column.png new file mode 100644 index 00000000..391fe125 Binary files /dev/null and b/public/textures/chipped/smooth_calcite_column.png differ diff --git a/public/textures/chipped/smooth_cherry_planks.png b/public/textures/chipped/smooth_cherry_planks.png new file mode 100644 index 00000000..0e705053 Binary files /dev/null and b/public/textures/chipped/smooth_cherry_planks.png differ diff --git a/public/textures/chipped/smooth_clay_column.png b/public/textures/chipped/smooth_clay_column.png new file mode 100644 index 00000000..df1b7f28 Binary files /dev/null and b/public/textures/chipped/smooth_clay_column.png differ diff --git a/public/textures/chipped/smooth_coal_block_column.png b/public/textures/chipped/smooth_coal_block_column.png new file mode 100644 index 00000000..f30c1542 Binary files /dev/null and b/public/textures/chipped/smooth_coal_block_column.png differ diff --git a/public/textures/chipped/smooth_cobblestone_column.png b/public/textures/chipped/smooth_cobblestone_column.png new file mode 100644 index 00000000..194096ca Binary files /dev/null and b/public/textures/chipped/smooth_cobblestone_column.png differ diff --git a/public/textures/chipped/smooth_crimson_planks.png b/public/textures/chipped/smooth_crimson_planks.png new file mode 100644 index 00000000..597d68ad Binary files /dev/null and b/public/textures/chipped/smooth_crimson_planks.png differ diff --git a/public/textures/chipped/smooth_crimson_stem.png b/public/textures/chipped/smooth_crimson_stem.png new file mode 100644 index 00000000..041ec939 Binary files /dev/null and b/public/textures/chipped/smooth_crimson_stem.png differ diff --git a/public/textures/chipped/smooth_crying_obsidian_column.png b/public/textures/chipped/smooth_crying_obsidian_column.png new file mode 100644 index 00000000..de818686 Binary files /dev/null and b/public/textures/chipped/smooth_crying_obsidian_column.png differ diff --git a/public/textures/chipped/smooth_cyan_concrete.png b/public/textures/chipped/smooth_cyan_concrete.png new file mode 100644 index 00000000..789ab4cf Binary files /dev/null and b/public/textures/chipped/smooth_cyan_concrete.png differ diff --git a/public/textures/chipped/smooth_dark_oak_planks.png b/public/textures/chipped/smooth_dark_oak_planks.png new file mode 100644 index 00000000..1960c11f Binary files /dev/null and b/public/textures/chipped/smooth_dark_oak_planks.png differ diff --git a/public/textures/chipped/smooth_dark_prismarine_column.png b/public/textures/chipped/smooth_dark_prismarine_column.png new file mode 100644 index 00000000..2234f6f7 Binary files /dev/null and b/public/textures/chipped/smooth_dark_prismarine_column.png differ diff --git a/public/textures/chipped/smooth_deepslate_column.png b/public/textures/chipped/smooth_deepslate_column.png new file mode 100644 index 00000000..14c86283 Binary files /dev/null and b/public/textures/chipped/smooth_deepslate_column.png differ diff --git a/public/textures/chipped/smooth_diorite_column.png b/public/textures/chipped/smooth_diorite_column.png new file mode 100644 index 00000000..5dcf63fd Binary files /dev/null and b/public/textures/chipped/smooth_diorite_column.png differ diff --git a/public/textures/chipped/smooth_dirt_column.png b/public/textures/chipped/smooth_dirt_column.png new file mode 100644 index 00000000..d881114a Binary files /dev/null and b/public/textures/chipped/smooth_dirt_column.png differ diff --git a/public/textures/chipped/smooth_dripstone_block_column.png b/public/textures/chipped/smooth_dripstone_block_column.png new file mode 100644 index 00000000..d01a329c Binary files /dev/null and b/public/textures/chipped/smooth_dripstone_block_column.png differ diff --git a/public/textures/chipped/smooth_end_stone_column.png b/public/textures/chipped/smooth_end_stone_column.png new file mode 100644 index 00000000..f667ae5d Binary files /dev/null and b/public/textures/chipped/smooth_end_stone_column.png differ diff --git a/public/textures/chipped/smooth_gilded_blackstone_column.png b/public/textures/chipped/smooth_gilded_blackstone_column.png new file mode 100644 index 00000000..cf453134 Binary files /dev/null and b/public/textures/chipped/smooth_gilded_blackstone_column.png differ diff --git a/public/textures/chipped/smooth_glowstone.png b/public/textures/chipped/smooth_glowstone.png new file mode 100644 index 00000000..dd4ad2e6 Binary files /dev/null and b/public/textures/chipped/smooth_glowstone.png differ diff --git a/public/textures/chipped/smooth_granite_column.png b/public/textures/chipped/smooth_granite_column.png new file mode 100644 index 00000000..d79b5db5 Binary files /dev/null and b/public/textures/chipped/smooth_granite_column.png differ diff --git a/public/textures/chipped/smooth_gray_concrete.png b/public/textures/chipped/smooth_gray_concrete.png new file mode 100644 index 00000000..c4bf7baa Binary files /dev/null and b/public/textures/chipped/smooth_gray_concrete.png differ diff --git a/public/textures/chipped/smooth_green_concrete.png b/public/textures/chipped/smooth_green_concrete.png new file mode 100644 index 00000000..2dc31403 Binary files /dev/null and b/public/textures/chipped/smooth_green_concrete.png differ diff --git a/public/textures/chipped/smooth_ice_column.png b/public/textures/chipped/smooth_ice_column.png new file mode 100644 index 00000000..edf62888 Binary files /dev/null and b/public/textures/chipped/smooth_ice_column.png differ diff --git a/public/textures/chipped/smooth_inlayed_amethyst_block.png b/public/textures/chipped/smooth_inlayed_amethyst_block.png new file mode 100644 index 00000000..8cda9664 Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_amethyst_block.png differ diff --git a/public/textures/chipped/smooth_inlayed_ancient_debris.png b/public/textures/chipped/smooth_inlayed_ancient_debris.png new file mode 100644 index 00000000..9be37297 Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_ancient_debris.png differ diff --git a/public/textures/chipped/smooth_inlayed_andesite.png b/public/textures/chipped/smooth_inlayed_andesite.png new file mode 100644 index 00000000..244e0fcf Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_andesite.png differ diff --git a/public/textures/chipped/smooth_inlayed_basalt.png b/public/textures/chipped/smooth_inlayed_basalt.png new file mode 100644 index 00000000..463601d1 Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_basalt.png differ diff --git a/public/textures/chipped/smooth_inlayed_blackstone.png b/public/textures/chipped/smooth_inlayed_blackstone.png new file mode 100644 index 00000000..b38f1142 Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_blackstone.png differ diff --git a/public/textures/chipped/smooth_inlayed_blue_ice.png b/public/textures/chipped/smooth_inlayed_blue_ice.png new file mode 100644 index 00000000..ba22aee2 Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_blue_ice.png differ diff --git a/public/textures/chipped/smooth_inlayed_borderless_bricks.png b/public/textures/chipped/smooth_inlayed_borderless_bricks.png new file mode 100644 index 00000000..9a1cb3cf Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_borderless_bricks.png differ diff --git a/public/textures/chipped/smooth_inlayed_bricks.png b/public/textures/chipped/smooth_inlayed_bricks.png new file mode 100644 index 00000000..2bf2bdcb Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_bricks.png differ diff --git a/public/textures/chipped/smooth_inlayed_calcite.png b/public/textures/chipped/smooth_inlayed_calcite.png new file mode 100644 index 00000000..dac34513 Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_calcite.png differ diff --git a/public/textures/chipped/smooth_inlayed_clay.png b/public/textures/chipped/smooth_inlayed_clay.png new file mode 100644 index 00000000..e58f6260 Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_clay.png differ diff --git a/public/textures/chipped/smooth_inlayed_coal_block.png b/public/textures/chipped/smooth_inlayed_coal_block.png new file mode 100644 index 00000000..b740237c Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_coal_block.png differ diff --git a/public/textures/chipped/smooth_inlayed_cobblestone.png b/public/textures/chipped/smooth_inlayed_cobblestone.png new file mode 100644 index 00000000..594cd724 Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_cobblestone.png differ diff --git a/public/textures/chipped/smooth_inlayed_crying_obsidian.png b/public/textures/chipped/smooth_inlayed_crying_obsidian.png new file mode 100644 index 00000000..705c8174 Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_crying_obsidian.png differ diff --git a/public/textures/chipped/smooth_inlayed_dark_prismarine.png b/public/textures/chipped/smooth_inlayed_dark_prismarine.png new file mode 100644 index 00000000..881df3ad Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_dark_prismarine.png differ diff --git a/public/textures/chipped/smooth_inlayed_deepslate.png b/public/textures/chipped/smooth_inlayed_deepslate.png new file mode 100644 index 00000000..caf3515e Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_deepslate.png differ diff --git a/public/textures/chipped/smooth_inlayed_diorite.png b/public/textures/chipped/smooth_inlayed_diorite.png new file mode 100644 index 00000000..83f02681 Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_diorite.png differ diff --git a/public/textures/chipped/smooth_inlayed_dirt.png b/public/textures/chipped/smooth_inlayed_dirt.png new file mode 100644 index 00000000..a1826d79 Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_dirt.png differ diff --git a/public/textures/chipped/smooth_inlayed_dripstone_block.png b/public/textures/chipped/smooth_inlayed_dripstone_block.png new file mode 100644 index 00000000..c2aaf23f Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_dripstone_block.png differ diff --git a/public/textures/chipped/smooth_inlayed_end_stone.png b/public/textures/chipped/smooth_inlayed_end_stone.png new file mode 100644 index 00000000..0d929abc Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_end_stone.png differ diff --git a/public/textures/chipped/smooth_inlayed_gilded_blackstone.png b/public/textures/chipped/smooth_inlayed_gilded_blackstone.png new file mode 100644 index 00000000..25238c1b Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_gilded_blackstone.png differ diff --git a/public/textures/chipped/smooth_inlayed_granite.png b/public/textures/chipped/smooth_inlayed_granite.png new file mode 100644 index 00000000..6a5cf5d5 Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_granite.png differ diff --git a/public/textures/chipped/smooth_inlayed_ice.png b/public/textures/chipped/smooth_inlayed_ice.png new file mode 100644 index 00000000..db9c8c47 Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_ice.png differ diff --git a/public/textures/chipped/smooth_inlayed_lapis_block.png b/public/textures/chipped/smooth_inlayed_lapis_block.png new file mode 100644 index 00000000..7dfc4e60 Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_lapis_block.png differ diff --git a/public/textures/chipped/smooth_inlayed_magma_block.png b/public/textures/chipped/smooth_inlayed_magma_block.png new file mode 100644 index 00000000..31b19dbc Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_magma_block.png differ diff --git a/public/textures/chipped/smooth_inlayed_mossy_cobblestone.png b/public/textures/chipped/smooth_inlayed_mossy_cobblestone.png new file mode 100644 index 00000000..18b8000d Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_mossy_cobblestone.png differ diff --git a/public/textures/chipped/smooth_inlayed_mossy_stone_bricks.png b/public/textures/chipped/smooth_inlayed_mossy_stone_bricks.png new file mode 100644 index 00000000..d91b06bf Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/smooth_inlayed_nether_bricks.png b/public/textures/chipped/smooth_inlayed_nether_bricks.png new file mode 100644 index 00000000..f8bf2d9f Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_nether_bricks.png differ diff --git a/public/textures/chipped/smooth_inlayed_netherrack.png b/public/textures/chipped/smooth_inlayed_netherrack.png new file mode 100644 index 00000000..5bacf755 Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_netherrack.png differ diff --git a/public/textures/chipped/smooth_inlayed_obsidian.png b/public/textures/chipped/smooth_inlayed_obsidian.png new file mode 100644 index 00000000..c5c2bce3 Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_obsidian.png differ diff --git a/public/textures/chipped/smooth_inlayed_packed_ice.png b/public/textures/chipped/smooth_inlayed_packed_ice.png new file mode 100644 index 00000000..43e1d389 Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_packed_ice.png differ diff --git a/public/textures/chipped/smooth_inlayed_prismarine.png b/public/textures/chipped/smooth_inlayed_prismarine.png new file mode 100644 index 00000000..a10d489b Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_prismarine.png differ diff --git a/public/textures/chipped/smooth_inlayed_purpur_block.png b/public/textures/chipped/smooth_inlayed_purpur_block.png new file mode 100644 index 00000000..226e46e4 Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_purpur_block.png differ diff --git a/public/textures/chipped/smooth_inlayed_quartz_block.png b/public/textures/chipped/smooth_inlayed_quartz_block.png new file mode 100644 index 00000000..5311e9cd Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_quartz_block.png differ diff --git a/public/textures/chipped/smooth_inlayed_raw_copper_block.png b/public/textures/chipped/smooth_inlayed_raw_copper_block.png new file mode 100644 index 00000000..d24a5430 Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_raw_copper_block.png differ diff --git a/public/textures/chipped/smooth_inlayed_raw_gold_block.png b/public/textures/chipped/smooth_inlayed_raw_gold_block.png new file mode 100644 index 00000000..f7d1b8ad Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_raw_gold_block.png differ diff --git a/public/textures/chipped/smooth_inlayed_raw_iron_block.png b/public/textures/chipped/smooth_inlayed_raw_iron_block.png new file mode 100644 index 00000000..14b6c47d Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_raw_iron_block.png differ diff --git a/public/textures/chipped/smooth_inlayed_red_nether_bricks.png b/public/textures/chipped/smooth_inlayed_red_nether_bricks.png new file mode 100644 index 00000000..9f8a0b83 Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_red_nether_bricks.png differ diff --git a/public/textures/chipped/smooth_inlayed_red_sandstone.png b/public/textures/chipped/smooth_inlayed_red_sandstone.png new file mode 100644 index 00000000..7a074b98 Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_red_sandstone.png differ diff --git a/public/textures/chipped/smooth_inlayed_redstone_block.png b/public/textures/chipped/smooth_inlayed_redstone_block.png new file mode 100644 index 00000000..2295854b Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_redstone_block.png differ diff --git a/public/textures/chipped/smooth_inlayed_sandstone.png b/public/textures/chipped/smooth_inlayed_sandstone.png new file mode 100644 index 00000000..29667f0d Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_sandstone.png differ diff --git a/public/textures/chipped/smooth_inlayed_smooth_stone.png b/public/textures/chipped/smooth_inlayed_smooth_stone.png new file mode 100644 index 00000000..60b2bfb4 Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_smooth_stone.png differ diff --git a/public/textures/chipped/smooth_inlayed_snow_block.png b/public/textures/chipped/smooth_inlayed_snow_block.png new file mode 100644 index 00000000..f120712a Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_snow_block.png differ diff --git a/public/textures/chipped/smooth_inlayed_stone.png b/public/textures/chipped/smooth_inlayed_stone.png new file mode 100644 index 00000000..35dc696b Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_stone.png differ diff --git a/public/textures/chipped/smooth_inlayed_tuff.png b/public/textures/chipped/smooth_inlayed_tuff.png new file mode 100644 index 00000000..a42e1b96 Binary files /dev/null and b/public/textures/chipped/smooth_inlayed_tuff.png differ diff --git a/public/textures/chipped/smooth_jungle_planks.png b/public/textures/chipped/smooth_jungle_planks.png new file mode 100644 index 00000000..39d16e25 Binary files /dev/null and b/public/textures/chipped/smooth_jungle_planks.png differ diff --git a/public/textures/chipped/smooth_lapis_block_column.png b/public/textures/chipped/smooth_lapis_block_column.png new file mode 100644 index 00000000..77021e2d Binary files /dev/null and b/public/textures/chipped/smooth_lapis_block_column.png differ diff --git a/public/textures/chipped/smooth_light_blue_concrete.png b/public/textures/chipped/smooth_light_blue_concrete.png new file mode 100644 index 00000000..815a992f Binary files /dev/null and b/public/textures/chipped/smooth_light_blue_concrete.png differ diff --git a/public/textures/chipped/smooth_light_gray_concrete.png b/public/textures/chipped/smooth_light_gray_concrete.png new file mode 100644 index 00000000..4b8a6f06 Binary files /dev/null and b/public/textures/chipped/smooth_light_gray_concrete.png differ diff --git a/public/textures/chipped/smooth_lily_pad.png b/public/textures/chipped/smooth_lily_pad.png new file mode 100644 index 00000000..613626b6 Binary files /dev/null and b/public/textures/chipped/smooth_lily_pad.png differ diff --git a/public/textures/chipped/smooth_lime_concrete.png b/public/textures/chipped/smooth_lime_concrete.png new file mode 100644 index 00000000..f7fadeea Binary files /dev/null and b/public/textures/chipped/smooth_lime_concrete.png differ diff --git a/public/textures/chipped/smooth_lodestone_column.png b/public/textures/chipped/smooth_lodestone_column.png new file mode 100644 index 00000000..eadedfb1 Binary files /dev/null and b/public/textures/chipped/smooth_lodestone_column.png differ diff --git a/public/textures/chipped/smooth_magenta_concrete.png b/public/textures/chipped/smooth_magenta_concrete.png new file mode 100644 index 00000000..d943a990 Binary files /dev/null and b/public/textures/chipped/smooth_magenta_concrete.png differ diff --git a/public/textures/chipped/smooth_magma_block_column.png b/public/textures/chipped/smooth_magma_block_column.png new file mode 100644 index 00000000..254816f3 Binary files /dev/null and b/public/textures/chipped/smooth_magma_block_column.png differ diff --git a/public/textures/chipped/smooth_mangrove_planks.png b/public/textures/chipped/smooth_mangrove_planks.png new file mode 100644 index 00000000..4c41cede Binary files /dev/null and b/public/textures/chipped/smooth_mangrove_planks.png differ diff --git a/public/textures/chipped/smooth_moss_block.png b/public/textures/chipped/smooth_moss_block.png new file mode 100644 index 00000000..d7e85fc9 Binary files /dev/null and b/public/textures/chipped/smooth_moss_block.png differ diff --git a/public/textures/chipped/smooth_mossy_cobblestone_column.png b/public/textures/chipped/smooth_mossy_cobblestone_column.png new file mode 100644 index 00000000..90118f0d Binary files /dev/null and b/public/textures/chipped/smooth_mossy_cobblestone_column.png differ diff --git a/public/textures/chipped/smooth_mossy_stone_bricks_column.png b/public/textures/chipped/smooth_mossy_stone_bricks_column.png new file mode 100644 index 00000000..33adc284 Binary files /dev/null and b/public/textures/chipped/smooth_mossy_stone_bricks_column.png differ diff --git a/public/textures/chipped/smooth_mud.png b/public/textures/chipped/smooth_mud.png new file mode 100644 index 00000000..5d979584 Binary files /dev/null and b/public/textures/chipped/smooth_mud.png differ diff --git a/public/textures/chipped/smooth_mud_bricks.png b/public/textures/chipped/smooth_mud_bricks.png new file mode 100644 index 00000000..1a4d38d5 Binary files /dev/null and b/public/textures/chipped/smooth_mud_bricks.png differ diff --git a/public/textures/chipped/smooth_mushroom_stem.png b/public/textures/chipped/smooth_mushroom_stem.png new file mode 100644 index 00000000..5a37e3bc Binary files /dev/null and b/public/textures/chipped/smooth_mushroom_stem.png differ diff --git a/public/textures/chipped/smooth_nether_bricks_column.png b/public/textures/chipped/smooth_nether_bricks_column.png new file mode 100644 index 00000000..d1e4bfe7 Binary files /dev/null and b/public/textures/chipped/smooth_nether_bricks_column.png differ diff --git a/public/textures/chipped/smooth_netherrack_column.png b/public/textures/chipped/smooth_netherrack_column.png new file mode 100644 index 00000000..70f5c6fd Binary files /dev/null and b/public/textures/chipped/smooth_netherrack_column.png differ diff --git a/public/textures/chipped/smooth_oak_planks.png b/public/textures/chipped/smooth_oak_planks.png new file mode 100644 index 00000000..0f2530e2 Binary files /dev/null and b/public/textures/chipped/smooth_oak_planks.png differ diff --git a/public/textures/chipped/smooth_obsidian_column.png b/public/textures/chipped/smooth_obsidian_column.png new file mode 100644 index 00000000..523a10be Binary files /dev/null and b/public/textures/chipped/smooth_obsidian_column.png differ diff --git a/public/textures/chipped/smooth_orange_concrete.png b/public/textures/chipped/smooth_orange_concrete.png new file mode 100644 index 00000000..f9142164 Binary files /dev/null and b/public/textures/chipped/smooth_orange_concrete.png differ diff --git a/public/textures/chipped/smooth_packed_ice_column.png b/public/textures/chipped/smooth_packed_ice_column.png new file mode 100644 index 00000000..efec50ca Binary files /dev/null and b/public/textures/chipped/smooth_packed_ice_column.png differ diff --git a/public/textures/chipped/smooth_packed_mud.png b/public/textures/chipped/smooth_packed_mud.png new file mode 100644 index 00000000..55ef50ef Binary files /dev/null and b/public/textures/chipped/smooth_packed_mud.png differ diff --git a/public/textures/chipped/smooth_pink_concrete.png b/public/textures/chipped/smooth_pink_concrete.png new file mode 100644 index 00000000..c1ac214a Binary files /dev/null and b/public/textures/chipped/smooth_pink_concrete.png differ diff --git a/public/textures/chipped/smooth_prismarine_column.png b/public/textures/chipped/smooth_prismarine_column.png new file mode 100644 index 00000000..64f75abc Binary files /dev/null and b/public/textures/chipped/smooth_prismarine_column.png differ diff --git a/public/textures/chipped/smooth_purple_concrete.png b/public/textures/chipped/smooth_purple_concrete.png new file mode 100644 index 00000000..c8cc247c Binary files /dev/null and b/public/textures/chipped/smooth_purple_concrete.png differ diff --git a/public/textures/chipped/smooth_purpur_block_column.png b/public/textures/chipped/smooth_purpur_block_column.png new file mode 100644 index 00000000..31020055 Binary files /dev/null and b/public/textures/chipped/smooth_purpur_block_column.png differ diff --git a/public/textures/chipped/smooth_quartz_block_column.png b/public/textures/chipped/smooth_quartz_block_column.png new file mode 100644 index 00000000..e5f2939a Binary files /dev/null and b/public/textures/chipped/smooth_quartz_block_column.png differ diff --git a/public/textures/chipped/smooth_raw_copper_block_column.png b/public/textures/chipped/smooth_raw_copper_block_column.png new file mode 100644 index 00000000..ad404dcd Binary files /dev/null and b/public/textures/chipped/smooth_raw_copper_block_column.png differ diff --git a/public/textures/chipped/smooth_raw_gold_block_column.png b/public/textures/chipped/smooth_raw_gold_block_column.png new file mode 100644 index 00000000..e7b78417 Binary files /dev/null and b/public/textures/chipped/smooth_raw_gold_block_column.png differ diff --git a/public/textures/chipped/smooth_raw_iron_block_column.png b/public/textures/chipped/smooth_raw_iron_block_column.png new file mode 100644 index 00000000..2d7b00bf Binary files /dev/null and b/public/textures/chipped/smooth_raw_iron_block_column.png differ diff --git a/public/textures/chipped/smooth_red_concrete.png b/public/textures/chipped/smooth_red_concrete.png new file mode 100644 index 00000000..fd63e963 Binary files /dev/null and b/public/textures/chipped/smooth_red_concrete.png differ diff --git a/public/textures/chipped/smooth_red_mushroom_block.png b/public/textures/chipped/smooth_red_mushroom_block.png new file mode 100644 index 00000000..c76b9eca Binary files /dev/null and b/public/textures/chipped/smooth_red_mushroom_block.png differ diff --git a/public/textures/chipped/smooth_red_nether_bricks_column.png b/public/textures/chipped/smooth_red_nether_bricks_column.png new file mode 100644 index 00000000..7eb59e6a Binary files /dev/null and b/public/textures/chipped/smooth_red_nether_bricks_column.png differ diff --git a/public/textures/chipped/smooth_red_sandstone_column.png b/public/textures/chipped/smooth_red_sandstone_column.png new file mode 100644 index 00000000..9c502226 Binary files /dev/null and b/public/textures/chipped/smooth_red_sandstone_column.png differ diff --git a/public/textures/chipped/smooth_redstone_block_column.png b/public/textures/chipped/smooth_redstone_block_column.png new file mode 100644 index 00000000..b6bebf32 Binary files /dev/null and b/public/textures/chipped/smooth_redstone_block_column.png differ diff --git a/public/textures/chipped/smooth_redstone_lamp.png b/public/textures/chipped/smooth_redstone_lamp.png new file mode 100644 index 00000000..dceadbf5 Binary files /dev/null and b/public/textures/chipped/smooth_redstone_lamp.png differ diff --git a/public/textures/chipped/smooth_ringed_amethyst_block.png b/public/textures/chipped/smooth_ringed_amethyst_block.png new file mode 100644 index 00000000..5f68aa56 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_amethyst_block.png differ diff --git a/public/textures/chipped/smooth_ringed_ancient_debris.png b/public/textures/chipped/smooth_ringed_ancient_debris.png new file mode 100644 index 00000000..f89609fd Binary files /dev/null and b/public/textures/chipped/smooth_ringed_ancient_debris.png differ diff --git a/public/textures/chipped/smooth_ringed_andesite.png b/public/textures/chipped/smooth_ringed_andesite.png new file mode 100644 index 00000000..77de2be1 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_andesite.png differ diff --git a/public/textures/chipped/smooth_ringed_basalt.png b/public/textures/chipped/smooth_ringed_basalt.png new file mode 100644 index 00000000..dd39ffed Binary files /dev/null and b/public/textures/chipped/smooth_ringed_basalt.png differ diff --git a/public/textures/chipped/smooth_ringed_blackstone.png b/public/textures/chipped/smooth_ringed_blackstone.png new file mode 100644 index 00000000..73a9843b Binary files /dev/null and b/public/textures/chipped/smooth_ringed_blackstone.png differ diff --git a/public/textures/chipped/smooth_ringed_blue_ice.png b/public/textures/chipped/smooth_ringed_blue_ice.png new file mode 100644 index 00000000..929c9bca Binary files /dev/null and b/public/textures/chipped/smooth_ringed_blue_ice.png differ diff --git a/public/textures/chipped/smooth_ringed_borderless_bricks.png b/public/textures/chipped/smooth_ringed_borderless_bricks.png new file mode 100644 index 00000000..a3b463a4 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_borderless_bricks.png differ diff --git a/public/textures/chipped/smooth_ringed_bricks.png b/public/textures/chipped/smooth_ringed_bricks.png new file mode 100644 index 00000000..9e7c5d0d Binary files /dev/null and b/public/textures/chipped/smooth_ringed_bricks.png differ diff --git a/public/textures/chipped/smooth_ringed_calcite.png b/public/textures/chipped/smooth_ringed_calcite.png new file mode 100644 index 00000000..a85bf0e0 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_calcite.png differ diff --git a/public/textures/chipped/smooth_ringed_clay.png b/public/textures/chipped/smooth_ringed_clay.png new file mode 100644 index 00000000..710a6e27 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_clay.png differ diff --git a/public/textures/chipped/smooth_ringed_coal_block.png b/public/textures/chipped/smooth_ringed_coal_block.png new file mode 100644 index 00000000..b0e0b0d5 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_coal_block.png differ diff --git a/public/textures/chipped/smooth_ringed_cobblestone.png b/public/textures/chipped/smooth_ringed_cobblestone.png new file mode 100644 index 00000000..5d51282f Binary files /dev/null and b/public/textures/chipped/smooth_ringed_cobblestone.png differ diff --git a/public/textures/chipped/smooth_ringed_crying_obsidian.png b/public/textures/chipped/smooth_ringed_crying_obsidian.png new file mode 100644 index 00000000..dea4db20 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_crying_obsidian.png differ diff --git a/public/textures/chipped/smooth_ringed_dark_prismarine.png b/public/textures/chipped/smooth_ringed_dark_prismarine.png new file mode 100644 index 00000000..08897559 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_dark_prismarine.png differ diff --git a/public/textures/chipped/smooth_ringed_deepslate.png b/public/textures/chipped/smooth_ringed_deepslate.png new file mode 100644 index 00000000..c23b3511 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_deepslate.png differ diff --git a/public/textures/chipped/smooth_ringed_diorite.png b/public/textures/chipped/smooth_ringed_diorite.png new file mode 100644 index 00000000..7a82312e Binary files /dev/null and b/public/textures/chipped/smooth_ringed_diorite.png differ diff --git a/public/textures/chipped/smooth_ringed_dirt.png b/public/textures/chipped/smooth_ringed_dirt.png new file mode 100644 index 00000000..3ecd55ec Binary files /dev/null and b/public/textures/chipped/smooth_ringed_dirt.png differ diff --git a/public/textures/chipped/smooth_ringed_dripstone_block.png b/public/textures/chipped/smooth_ringed_dripstone_block.png new file mode 100644 index 00000000..4c370e58 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_dripstone_block.png differ diff --git a/public/textures/chipped/smooth_ringed_end_stone.png b/public/textures/chipped/smooth_ringed_end_stone.png new file mode 100644 index 00000000..1c52c130 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_end_stone.png differ diff --git a/public/textures/chipped/smooth_ringed_gilded_blackstone.png b/public/textures/chipped/smooth_ringed_gilded_blackstone.png new file mode 100644 index 00000000..0ed4fea0 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_gilded_blackstone.png differ diff --git a/public/textures/chipped/smooth_ringed_granite.png b/public/textures/chipped/smooth_ringed_granite.png new file mode 100644 index 00000000..f9b266a8 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_granite.png differ diff --git a/public/textures/chipped/smooth_ringed_ice.png b/public/textures/chipped/smooth_ringed_ice.png new file mode 100644 index 00000000..cc73dd5d Binary files /dev/null and b/public/textures/chipped/smooth_ringed_ice.png differ diff --git a/public/textures/chipped/smooth_ringed_lapis_block.png b/public/textures/chipped/smooth_ringed_lapis_block.png new file mode 100644 index 00000000..5bf7e116 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_lapis_block.png differ diff --git a/public/textures/chipped/smooth_ringed_lodestone.png b/public/textures/chipped/smooth_ringed_lodestone.png new file mode 100644 index 00000000..6cb78b65 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_lodestone.png differ diff --git a/public/textures/chipped/smooth_ringed_magma_block.png b/public/textures/chipped/smooth_ringed_magma_block.png new file mode 100644 index 00000000..b3c2aef5 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_magma_block.png differ diff --git a/public/textures/chipped/smooth_ringed_mossy_cobblestone.png b/public/textures/chipped/smooth_ringed_mossy_cobblestone.png new file mode 100644 index 00000000..e75adfb9 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_mossy_cobblestone.png differ diff --git a/public/textures/chipped/smooth_ringed_mossy_stone_bricks.png b/public/textures/chipped/smooth_ringed_mossy_stone_bricks.png new file mode 100644 index 00000000..022d2e49 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/smooth_ringed_mud.png b/public/textures/chipped/smooth_ringed_mud.png new file mode 100644 index 00000000..66279f0a Binary files /dev/null and b/public/textures/chipped/smooth_ringed_mud.png differ diff --git a/public/textures/chipped/smooth_ringed_mud_bricks.png b/public/textures/chipped/smooth_ringed_mud_bricks.png new file mode 100644 index 00000000..91684c77 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_mud_bricks.png differ diff --git a/public/textures/chipped/smooth_ringed_nether_bricks.png b/public/textures/chipped/smooth_ringed_nether_bricks.png new file mode 100644 index 00000000..955ba078 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_nether_bricks.png differ diff --git a/public/textures/chipped/smooth_ringed_netherrack.png b/public/textures/chipped/smooth_ringed_netherrack.png new file mode 100644 index 00000000..5b950ce5 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_netherrack.png differ diff --git a/public/textures/chipped/smooth_ringed_obsidian.png b/public/textures/chipped/smooth_ringed_obsidian.png new file mode 100644 index 00000000..3f209f93 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_obsidian.png differ diff --git a/public/textures/chipped/smooth_ringed_packed_ice.png b/public/textures/chipped/smooth_ringed_packed_ice.png new file mode 100644 index 00000000..e1715979 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_packed_ice.png differ diff --git a/public/textures/chipped/smooth_ringed_packed_mud.png b/public/textures/chipped/smooth_ringed_packed_mud.png new file mode 100644 index 00000000..507a1f53 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_packed_mud.png differ diff --git a/public/textures/chipped/smooth_ringed_prismarine.png b/public/textures/chipped/smooth_ringed_prismarine.png new file mode 100644 index 00000000..f21c71cc Binary files /dev/null and b/public/textures/chipped/smooth_ringed_prismarine.png differ diff --git a/public/textures/chipped/smooth_ringed_purpur_block.png b/public/textures/chipped/smooth_ringed_purpur_block.png new file mode 100644 index 00000000..eb3e0a72 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_purpur_block.png differ diff --git a/public/textures/chipped/smooth_ringed_quartz_block.png b/public/textures/chipped/smooth_ringed_quartz_block.png new file mode 100644 index 00000000..6c3dcfbd Binary files /dev/null and b/public/textures/chipped/smooth_ringed_quartz_block.png differ diff --git a/public/textures/chipped/smooth_ringed_raw_copper_block.png b/public/textures/chipped/smooth_ringed_raw_copper_block.png new file mode 100644 index 00000000..d4510ced Binary files /dev/null and b/public/textures/chipped/smooth_ringed_raw_copper_block.png differ diff --git a/public/textures/chipped/smooth_ringed_raw_gold_block.png b/public/textures/chipped/smooth_ringed_raw_gold_block.png new file mode 100644 index 00000000..7f9df7b0 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_raw_gold_block.png differ diff --git a/public/textures/chipped/smooth_ringed_raw_iron_block.png b/public/textures/chipped/smooth_ringed_raw_iron_block.png new file mode 100644 index 00000000..5c57129b Binary files /dev/null and b/public/textures/chipped/smooth_ringed_raw_iron_block.png differ diff --git a/public/textures/chipped/smooth_ringed_red_nether_bricks.png b/public/textures/chipped/smooth_ringed_red_nether_bricks.png new file mode 100644 index 00000000..d2d753f5 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_red_nether_bricks.png differ diff --git a/public/textures/chipped/smooth_ringed_red_sandstone.png b/public/textures/chipped/smooth_ringed_red_sandstone.png new file mode 100644 index 00000000..06feb3ec Binary files /dev/null and b/public/textures/chipped/smooth_ringed_red_sandstone.png differ diff --git a/public/textures/chipped/smooth_ringed_redstone_block.png b/public/textures/chipped/smooth_ringed_redstone_block.png new file mode 100644 index 00000000..d18980c8 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_redstone_block.png differ diff --git a/public/textures/chipped/smooth_ringed_sandstone.png b/public/textures/chipped/smooth_ringed_sandstone.png new file mode 100644 index 00000000..520387ee Binary files /dev/null and b/public/textures/chipped/smooth_ringed_sandstone.png differ diff --git a/public/textures/chipped/smooth_ringed_smooth_stone.png b/public/textures/chipped/smooth_ringed_smooth_stone.png new file mode 100644 index 00000000..ea190b5f Binary files /dev/null and b/public/textures/chipped/smooth_ringed_smooth_stone.png differ diff --git a/public/textures/chipped/smooth_ringed_snow_block.png b/public/textures/chipped/smooth_ringed_snow_block.png new file mode 100644 index 00000000..a0115384 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_snow_block.png differ diff --git a/public/textures/chipped/smooth_ringed_tuff.png b/public/textures/chipped/smooth_ringed_tuff.png new file mode 100644 index 00000000..dc97e2e7 Binary files /dev/null and b/public/textures/chipped/smooth_ringed_tuff.png differ diff --git a/public/textures/chipped/smooth_sandstone_column.png b/public/textures/chipped/smooth_sandstone_column.png new file mode 100644 index 00000000..3bb14d5b Binary files /dev/null and b/public/textures/chipped/smooth_sandstone_column.png differ diff --git a/public/textures/chipped/smooth_sea_lantern.png b/public/textures/chipped/smooth_sea_lantern.png new file mode 100644 index 00000000..9a557215 Binary files /dev/null and b/public/textures/chipped/smooth_sea_lantern.png differ diff --git a/public/textures/chipped/smooth_shroomlight.png b/public/textures/chipped/smooth_shroomlight.png new file mode 100644 index 00000000..7b405796 Binary files /dev/null and b/public/textures/chipped/smooth_shroomlight.png differ diff --git a/public/textures/chipped/smooth_smooth_stone_column.png b/public/textures/chipped/smooth_smooth_stone_column.png new file mode 100644 index 00000000..033031b4 Binary files /dev/null and b/public/textures/chipped/smooth_smooth_stone_column.png differ diff --git a/public/textures/chipped/smooth_snow_block_column.png b/public/textures/chipped/smooth_snow_block_column.png new file mode 100644 index 00000000..bfe65019 Binary files /dev/null and b/public/textures/chipped/smooth_snow_block_column.png differ diff --git a/public/textures/chipped/smooth_sponge.png b/public/textures/chipped/smooth_sponge.png new file mode 100644 index 00000000..74d65397 Binary files /dev/null and b/public/textures/chipped/smooth_sponge.png differ diff --git a/public/textures/chipped/smooth_spruce_planks.png b/public/textures/chipped/smooth_spruce_planks.png new file mode 100644 index 00000000..acdca134 Binary files /dev/null and b/public/textures/chipped/smooth_spruce_planks.png differ diff --git a/public/textures/chipped/smooth_stone_bricks.png b/public/textures/chipped/smooth_stone_bricks.png new file mode 100644 index 00000000..9193e4b6 Binary files /dev/null and b/public/textures/chipped/smooth_stone_bricks.png differ diff --git a/public/textures/chipped/smooth_stone_column.png b/public/textures/chipped/smooth_stone_column.png new file mode 100644 index 00000000..c0b34f24 Binary files /dev/null and b/public/textures/chipped/smooth_stone_column.png differ diff --git a/public/textures/chipped/smooth_stone_mini_tiles.png b/public/textures/chipped/smooth_stone_mini_tiles.png new file mode 100644 index 00000000..16b0f1a7 Binary files /dev/null and b/public/textures/chipped/smooth_stone_mini_tiles.png differ diff --git a/public/textures/chipped/smooth_stone_pillar.png b/public/textures/chipped/smooth_stone_pillar.png new file mode 100644 index 00000000..9d6709bb Binary files /dev/null and b/public/textures/chipped/smooth_stone_pillar.png differ diff --git a/public/textures/chipped/smooth_stone_pillar_top.png b/public/textures/chipped/smooth_stone_pillar_top.png new file mode 100644 index 00000000..1ef036e9 Binary files /dev/null and b/public/textures/chipped/smooth_stone_pillar_top.png differ diff --git a/public/textures/chipped/smooth_stone_scales.png b/public/textures/chipped/smooth_stone_scales.png new file mode 100644 index 00000000..f9134dbe Binary files /dev/null and b/public/textures/chipped/smooth_stone_scales.png differ diff --git a/public/textures/chipped/smooth_tuff_column.png b/public/textures/chipped/smooth_tuff_column.png new file mode 100644 index 00000000..1e35565e Binary files /dev/null and b/public/textures/chipped/smooth_tuff_column.png differ diff --git a/public/textures/chipped/smooth_warped_planks.png b/public/textures/chipped/smooth_warped_planks.png new file mode 100644 index 00000000..69f2b07a Binary files /dev/null and b/public/textures/chipped/smooth_warped_planks.png differ diff --git a/public/textures/chipped/smooth_warped_stem.png b/public/textures/chipped/smooth_warped_stem.png new file mode 100644 index 00000000..46e396a4 Binary files /dev/null and b/public/textures/chipped/smooth_warped_stem.png differ diff --git a/public/textures/chipped/smooth_white_concrete.png b/public/textures/chipped/smooth_white_concrete.png new file mode 100644 index 00000000..be11e385 Binary files /dev/null and b/public/textures/chipped/smooth_white_concrete.png differ diff --git a/public/textures/chipped/smooth_white_redstone_lamp.png b/public/textures/chipped/smooth_white_redstone_lamp.png new file mode 100644 index 00000000..5f9b32a3 Binary files /dev/null and b/public/textures/chipped/smooth_white_redstone_lamp.png differ diff --git a/public/textures/chipped/smooth_yellow_concrete.png b/public/textures/chipped/smooth_yellow_concrete.png new file mode 100644 index 00000000..c05fb8fe Binary files /dev/null and b/public/textures/chipped/smooth_yellow_concrete.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_amethyst_block.png b/public/textures/chipped/smoothed_double_inlayed_amethyst_block.png new file mode 100644 index 00000000..44de958a Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_amethyst_block.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_ancient_debris.png b/public/textures/chipped/smoothed_double_inlayed_ancient_debris.png new file mode 100644 index 00000000..9c9bdd75 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_ancient_debris.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_andesite.png b/public/textures/chipped/smoothed_double_inlayed_andesite.png new file mode 100644 index 00000000..22f45301 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_andesite.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_basalt.png b/public/textures/chipped/smoothed_double_inlayed_basalt.png new file mode 100644 index 00000000..0d52b96c Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_basalt.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_blackstone.png b/public/textures/chipped/smoothed_double_inlayed_blackstone.png new file mode 100644 index 00000000..5d2ab99b Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_blackstone.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_blue_ice.png b/public/textures/chipped/smoothed_double_inlayed_blue_ice.png new file mode 100644 index 00000000..4d322f8d Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_blue_ice.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_borderless_bricks.png b/public/textures/chipped/smoothed_double_inlayed_borderless_bricks.png new file mode 100644 index 00000000..401ffa9b Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_borderless_bricks.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_bricks.png b/public/textures/chipped/smoothed_double_inlayed_bricks.png new file mode 100644 index 00000000..69cefd54 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_bricks.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_calcite.png b/public/textures/chipped/smoothed_double_inlayed_calcite.png new file mode 100644 index 00000000..2986eae8 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_calcite.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_clay.png b/public/textures/chipped/smoothed_double_inlayed_clay.png new file mode 100644 index 00000000..cc7c010a Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_clay.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_coal_block.png b/public/textures/chipped/smoothed_double_inlayed_coal_block.png new file mode 100644 index 00000000..7d31ced5 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_coal_block.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_cobblestone.png b/public/textures/chipped/smoothed_double_inlayed_cobblestone.png new file mode 100644 index 00000000..104444b2 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_cobblestone.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_crying_obsidian.png b/public/textures/chipped/smoothed_double_inlayed_crying_obsidian.png new file mode 100644 index 00000000..6ace13b9 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_crying_obsidian.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_dark_prismarine.png b/public/textures/chipped/smoothed_double_inlayed_dark_prismarine.png new file mode 100644 index 00000000..edbd08a1 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_dark_prismarine.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_deepslate.png b/public/textures/chipped/smoothed_double_inlayed_deepslate.png new file mode 100644 index 00000000..38fa1579 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_deepslate.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_diorite.png b/public/textures/chipped/smoothed_double_inlayed_diorite.png new file mode 100644 index 00000000..01e9bee0 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_diorite.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_dirt.png b/public/textures/chipped/smoothed_double_inlayed_dirt.png new file mode 100644 index 00000000..26818f1d Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_dirt.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_dripstone_block.png b/public/textures/chipped/smoothed_double_inlayed_dripstone_block.png new file mode 100644 index 00000000..0239fe5d Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_dripstone_block.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_end_stone.png b/public/textures/chipped/smoothed_double_inlayed_end_stone.png new file mode 100644 index 00000000..dfd58925 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_end_stone.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_gilded_blackstone.png b/public/textures/chipped/smoothed_double_inlayed_gilded_blackstone.png new file mode 100644 index 00000000..1029e467 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_gilded_blackstone.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_granite.png b/public/textures/chipped/smoothed_double_inlayed_granite.png new file mode 100644 index 00000000..96b53491 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_granite.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_ice.png b/public/textures/chipped/smoothed_double_inlayed_ice.png new file mode 100644 index 00000000..52ee25f3 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_ice.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_lapis_block.png b/public/textures/chipped/smoothed_double_inlayed_lapis_block.png new file mode 100644 index 00000000..b0f0b5cb Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_lapis_block.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_lodestone.png b/public/textures/chipped/smoothed_double_inlayed_lodestone.png new file mode 100644 index 00000000..ba6f3126 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_lodestone.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_magma_block.png b/public/textures/chipped/smoothed_double_inlayed_magma_block.png new file mode 100644 index 00000000..1fd3e35e Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_magma_block.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_mossy_cobblestone.png b/public/textures/chipped/smoothed_double_inlayed_mossy_cobblestone.png new file mode 100644 index 00000000..8119bdff Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_mossy_cobblestone.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_mossy_stone_bricks.png b/public/textures/chipped/smoothed_double_inlayed_mossy_stone_bricks.png new file mode 100644 index 00000000..967dd815 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_mud.png b/public/textures/chipped/smoothed_double_inlayed_mud.png new file mode 100644 index 00000000..6caaba2d Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_mud.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_mud_bricks.png b/public/textures/chipped/smoothed_double_inlayed_mud_bricks.png new file mode 100644 index 00000000..9c394eca Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_mud_bricks.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_nether_bricks.png b/public/textures/chipped/smoothed_double_inlayed_nether_bricks.png new file mode 100644 index 00000000..6a3f1596 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_nether_bricks.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_netherrack.png b/public/textures/chipped/smoothed_double_inlayed_netherrack.png new file mode 100644 index 00000000..a1c7011e Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_netherrack.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_obsidian.png b/public/textures/chipped/smoothed_double_inlayed_obsidian.png new file mode 100644 index 00000000..f12c1e6f Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_obsidian.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_packed_ice.png b/public/textures/chipped/smoothed_double_inlayed_packed_ice.png new file mode 100644 index 00000000..e82a6fce Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_packed_ice.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_packed_mud.png b/public/textures/chipped/smoothed_double_inlayed_packed_mud.png new file mode 100644 index 00000000..196f11d7 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_packed_mud.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_prismarine.png b/public/textures/chipped/smoothed_double_inlayed_prismarine.png new file mode 100644 index 00000000..906a43c3 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_prismarine.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_purpur_block.png b/public/textures/chipped/smoothed_double_inlayed_purpur_block.png new file mode 100644 index 00000000..9fd58f82 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_purpur_block.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_quartz_block.png b/public/textures/chipped/smoothed_double_inlayed_quartz_block.png new file mode 100644 index 00000000..d3348de4 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_quartz_block.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_raw_copper_block.png b/public/textures/chipped/smoothed_double_inlayed_raw_copper_block.png new file mode 100644 index 00000000..15152b52 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_raw_copper_block.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_raw_gold_block.png b/public/textures/chipped/smoothed_double_inlayed_raw_gold_block.png new file mode 100644 index 00000000..cda948ec Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_raw_gold_block.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_raw_iron_block.png b/public/textures/chipped/smoothed_double_inlayed_raw_iron_block.png new file mode 100644 index 00000000..d21c25a0 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_raw_iron_block.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_red_nether_bricks.png b/public/textures/chipped/smoothed_double_inlayed_red_nether_bricks.png new file mode 100644 index 00000000..790508d0 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_red_nether_bricks.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_red_sandstone.png b/public/textures/chipped/smoothed_double_inlayed_red_sandstone.png new file mode 100644 index 00000000..1fd5bca7 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_red_sandstone.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_redstone_block.png b/public/textures/chipped/smoothed_double_inlayed_redstone_block.png new file mode 100644 index 00000000..dd7d8296 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_redstone_block.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_sandstone.png b/public/textures/chipped/smoothed_double_inlayed_sandstone.png new file mode 100644 index 00000000..d9f77094 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_sandstone.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_smooth_stone.png b/public/textures/chipped/smoothed_double_inlayed_smooth_stone.png new file mode 100644 index 00000000..a6016a4c Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_smooth_stone.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_snow_block.png b/public/textures/chipped/smoothed_double_inlayed_snow_block.png new file mode 100644 index 00000000..96494d79 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_snow_block.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_stone.png b/public/textures/chipped/smoothed_double_inlayed_stone.png new file mode 100644 index 00000000..f4009265 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_stone.png differ diff --git a/public/textures/chipped/smoothed_double_inlayed_tuff.png b/public/textures/chipped/smoothed_double_inlayed_tuff.png new file mode 100644 index 00000000..01822590 Binary files /dev/null and b/public/textures/chipped/smoothed_double_inlayed_tuff.png differ diff --git a/public/textures/chipped/smoothed_soul_sand.png b/public/textures/chipped/smoothed_soul_sand.png new file mode 100644 index 00000000..586976ab Binary files /dev/null and b/public/textures/chipped/smoothed_soul_sand.png differ diff --git a/public/textures/chipped/snow_block_bricks.png b/public/textures/chipped/snow_block_bricks.png new file mode 100644 index 00000000..9657fda0 Binary files /dev/null and b/public/textures/chipped/snow_block_bricks.png differ diff --git a/public/textures/chipped/snow_block_mini_tiles.png b/public/textures/chipped/snow_block_mini_tiles.png new file mode 100644 index 00000000..1cb42d3a Binary files /dev/null and b/public/textures/chipped/snow_block_mini_tiles.png differ diff --git a/public/textures/chipped/snow_block_pillar.png b/public/textures/chipped/snow_block_pillar.png new file mode 100644 index 00000000..fd899f37 Binary files /dev/null and b/public/textures/chipped/snow_block_pillar.png differ diff --git a/public/textures/chipped/snow_block_pillar_top.png b/public/textures/chipped/snow_block_pillar_top.png new file mode 100644 index 00000000..0a7cbe4a Binary files /dev/null and b/public/textures/chipped/snow_block_pillar_top.png differ diff --git a/public/textures/chipped/snow_block_scales.png b/public/textures/chipped/snow_block_scales.png new file mode 100644 index 00000000..8c945d01 Binary files /dev/null and b/public/textures/chipped/snow_block_scales.png differ diff --git a/public/textures/chipped/soft_black_carpet.png b/public/textures/chipped/soft_black_carpet.png new file mode 100644 index 00000000..ce832b73 Binary files /dev/null and b/public/textures/chipped/soft_black_carpet.png differ diff --git a/public/textures/chipped/soft_black_wool.png b/public/textures/chipped/soft_black_wool.png new file mode 100644 index 00000000..c4dfac85 Binary files /dev/null and b/public/textures/chipped/soft_black_wool.png differ diff --git a/public/textures/chipped/soft_blue_carpet.png b/public/textures/chipped/soft_blue_carpet.png new file mode 100644 index 00000000..ad736a7e Binary files /dev/null and b/public/textures/chipped/soft_blue_carpet.png differ diff --git a/public/textures/chipped/soft_blue_wool.png b/public/textures/chipped/soft_blue_wool.png new file mode 100644 index 00000000..ae444810 Binary files /dev/null and b/public/textures/chipped/soft_blue_wool.png differ diff --git a/public/textures/chipped/soft_brown_carpet.png b/public/textures/chipped/soft_brown_carpet.png new file mode 100644 index 00000000..9a061892 Binary files /dev/null and b/public/textures/chipped/soft_brown_carpet.png differ diff --git a/public/textures/chipped/soft_brown_wool.png b/public/textures/chipped/soft_brown_wool.png new file mode 100644 index 00000000..470880ea Binary files /dev/null and b/public/textures/chipped/soft_brown_wool.png differ diff --git a/public/textures/chipped/soft_cyan_carpet.png b/public/textures/chipped/soft_cyan_carpet.png new file mode 100644 index 00000000..25d1c101 Binary files /dev/null and b/public/textures/chipped/soft_cyan_carpet.png differ diff --git a/public/textures/chipped/soft_cyan_wool.png b/public/textures/chipped/soft_cyan_wool.png new file mode 100644 index 00000000..47f68dea Binary files /dev/null and b/public/textures/chipped/soft_cyan_wool.png differ diff --git a/public/textures/chipped/soft_gray_carpet.png b/public/textures/chipped/soft_gray_carpet.png new file mode 100644 index 00000000..7608f22e Binary files /dev/null and b/public/textures/chipped/soft_gray_carpet.png differ diff --git a/public/textures/chipped/soft_gray_wool.png b/public/textures/chipped/soft_gray_wool.png new file mode 100644 index 00000000..81645137 Binary files /dev/null and b/public/textures/chipped/soft_gray_wool.png differ diff --git a/public/textures/chipped/soft_green_carpet.png b/public/textures/chipped/soft_green_carpet.png new file mode 100644 index 00000000..d0506722 Binary files /dev/null and b/public/textures/chipped/soft_green_carpet.png differ diff --git a/public/textures/chipped/soft_green_wool.png b/public/textures/chipped/soft_green_wool.png new file mode 100644 index 00000000..3e487964 Binary files /dev/null and b/public/textures/chipped/soft_green_wool.png differ diff --git a/public/textures/chipped/soft_light_blue_carpet.png b/public/textures/chipped/soft_light_blue_carpet.png new file mode 100644 index 00000000..acc4656d Binary files /dev/null and b/public/textures/chipped/soft_light_blue_carpet.png differ diff --git a/public/textures/chipped/soft_light_blue_wool.png b/public/textures/chipped/soft_light_blue_wool.png new file mode 100644 index 00000000..21db30a7 Binary files /dev/null and b/public/textures/chipped/soft_light_blue_wool.png differ diff --git a/public/textures/chipped/soft_light_gray_carpet.png b/public/textures/chipped/soft_light_gray_carpet.png new file mode 100644 index 00000000..d43e6c55 Binary files /dev/null and b/public/textures/chipped/soft_light_gray_carpet.png differ diff --git a/public/textures/chipped/soft_light_gray_wool.png b/public/textures/chipped/soft_light_gray_wool.png new file mode 100644 index 00000000..5f12001a Binary files /dev/null and b/public/textures/chipped/soft_light_gray_wool.png differ diff --git a/public/textures/chipped/soft_lime_carpet.png b/public/textures/chipped/soft_lime_carpet.png new file mode 100644 index 00000000..bc2f3fba Binary files /dev/null and b/public/textures/chipped/soft_lime_carpet.png differ diff --git a/public/textures/chipped/soft_lime_wool.png b/public/textures/chipped/soft_lime_wool.png new file mode 100644 index 00000000..7786de9f Binary files /dev/null and b/public/textures/chipped/soft_lime_wool.png differ diff --git a/public/textures/chipped/soft_magenta_carpet.png b/public/textures/chipped/soft_magenta_carpet.png new file mode 100644 index 00000000..cc38aea2 Binary files /dev/null and b/public/textures/chipped/soft_magenta_carpet.png differ diff --git a/public/textures/chipped/soft_magenta_wool.png b/public/textures/chipped/soft_magenta_wool.png new file mode 100644 index 00000000..eb01d038 Binary files /dev/null and b/public/textures/chipped/soft_magenta_wool.png differ diff --git a/public/textures/chipped/soft_orange_carpet.png b/public/textures/chipped/soft_orange_carpet.png new file mode 100644 index 00000000..04ceadff Binary files /dev/null and b/public/textures/chipped/soft_orange_carpet.png differ diff --git a/public/textures/chipped/soft_orange_wool.png b/public/textures/chipped/soft_orange_wool.png new file mode 100644 index 00000000..c2975321 Binary files /dev/null and b/public/textures/chipped/soft_orange_wool.png differ diff --git a/public/textures/chipped/soft_pink_carpet.png b/public/textures/chipped/soft_pink_carpet.png new file mode 100644 index 00000000..05933ab6 Binary files /dev/null and b/public/textures/chipped/soft_pink_carpet.png differ diff --git a/public/textures/chipped/soft_pink_wool.png b/public/textures/chipped/soft_pink_wool.png new file mode 100644 index 00000000..46922f1f Binary files /dev/null and b/public/textures/chipped/soft_pink_wool.png differ diff --git a/public/textures/chipped/soft_purple_carpet.png b/public/textures/chipped/soft_purple_carpet.png new file mode 100644 index 00000000..fbb04601 Binary files /dev/null and b/public/textures/chipped/soft_purple_carpet.png differ diff --git a/public/textures/chipped/soft_purple_wool.png b/public/textures/chipped/soft_purple_wool.png new file mode 100644 index 00000000..91f71499 Binary files /dev/null and b/public/textures/chipped/soft_purple_wool.png differ diff --git a/public/textures/chipped/soft_red_carpet.png b/public/textures/chipped/soft_red_carpet.png new file mode 100644 index 00000000..3416b341 Binary files /dev/null and b/public/textures/chipped/soft_red_carpet.png differ diff --git a/public/textures/chipped/soft_red_wool.png b/public/textures/chipped/soft_red_wool.png new file mode 100644 index 00000000..dc5c6fa5 Binary files /dev/null and b/public/textures/chipped/soft_red_wool.png differ diff --git a/public/textures/chipped/soft_sand.png b/public/textures/chipped/soft_sand.png new file mode 100644 index 00000000..554764b2 Binary files /dev/null and b/public/textures/chipped/soft_sand.png differ diff --git a/public/textures/chipped/soft_sponge.png b/public/textures/chipped/soft_sponge.png new file mode 100644 index 00000000..479ba613 Binary files /dev/null and b/public/textures/chipped/soft_sponge.png differ diff --git a/public/textures/chipped/soft_white_carpet.png b/public/textures/chipped/soft_white_carpet.png new file mode 100644 index 00000000..a6b0efa8 Binary files /dev/null and b/public/textures/chipped/soft_white_carpet.png differ diff --git a/public/textures/chipped/soft_white_wool.png b/public/textures/chipped/soft_white_wool.png new file mode 100644 index 00000000..94136e16 Binary files /dev/null and b/public/textures/chipped/soft_white_wool.png differ diff --git a/public/textures/chipped/soft_yellow_carpet.png b/public/textures/chipped/soft_yellow_carpet.png new file mode 100644 index 00000000..3644c574 Binary files /dev/null and b/public/textures/chipped/soft_yellow_carpet.png differ diff --git a/public/textures/chipped/soft_yellow_wool.png b/public/textures/chipped/soft_yellow_wool.png new file mode 100644 index 00000000..545a6b40 Binary files /dev/null and b/public/textures/chipped/soft_yellow_wool.png differ diff --git a/public/textures/chipped/solid_acacia_trapdoor.png b/public/textures/chipped/solid_acacia_trapdoor.png new file mode 100644 index 00000000..2189a529 Binary files /dev/null and b/public/textures/chipped/solid_acacia_trapdoor.png differ diff --git a/public/textures/chipped/solid_bamboo_trapdoor.png b/public/textures/chipped/solid_bamboo_trapdoor.png new file mode 100644 index 00000000..99a7dc45 Binary files /dev/null and b/public/textures/chipped/solid_bamboo_trapdoor.png differ diff --git a/public/textures/chipped/solid_birch_trapdoor.png b/public/textures/chipped/solid_birch_trapdoor.png new file mode 100644 index 00000000..69a2920f Binary files /dev/null and b/public/textures/chipped/solid_birch_trapdoor.png differ diff --git a/public/textures/chipped/solid_cherry_trapdoor.png b/public/textures/chipped/solid_cherry_trapdoor.png new file mode 100644 index 00000000..93262de4 Binary files /dev/null and b/public/textures/chipped/solid_cherry_trapdoor.png differ diff --git a/public/textures/chipped/solid_crimson_trapdoor.png b/public/textures/chipped/solid_crimson_trapdoor.png new file mode 100644 index 00000000..ba8008cf Binary files /dev/null and b/public/textures/chipped/solid_crimson_trapdoor.png differ diff --git a/public/textures/chipped/solid_dark_oak_trapdoor.png b/public/textures/chipped/solid_dark_oak_trapdoor.png new file mode 100644 index 00000000..7101564b Binary files /dev/null and b/public/textures/chipped/solid_dark_oak_trapdoor.png differ diff --git a/public/textures/chipped/solid_jungle_trapdoor.png b/public/textures/chipped/solid_jungle_trapdoor.png new file mode 100644 index 00000000..138f1553 Binary files /dev/null and b/public/textures/chipped/solid_jungle_trapdoor.png differ diff --git a/public/textures/chipped/solid_mangrove_trapdoor.png b/public/textures/chipped/solid_mangrove_trapdoor.png new file mode 100644 index 00000000..b5621b79 Binary files /dev/null and b/public/textures/chipped/solid_mangrove_trapdoor.png differ diff --git a/public/textures/chipped/solid_oak_trapdoor.png b/public/textures/chipped/solid_oak_trapdoor.png new file mode 100644 index 00000000..ebc984ce Binary files /dev/null and b/public/textures/chipped/solid_oak_trapdoor.png differ diff --git a/public/textures/chipped/solid_spruce_trapdoor.png b/public/textures/chipped/solid_spruce_trapdoor.png new file mode 100644 index 00000000..3f12d728 Binary files /dev/null and b/public/textures/chipped/solid_spruce_trapdoor.png differ diff --git a/public/textures/chipped/solid_warped_trapdoor.png b/public/textures/chipped/solid_warped_trapdoor.png new file mode 100644 index 00000000..978e327e Binary files /dev/null and b/public/textures/chipped/solid_warped_trapdoor.png differ diff --git a/public/textures/chipped/special_gilded_blackstone.png b/public/textures/chipped/special_gilded_blackstone.png new file mode 100644 index 00000000..16fef54d Binary files /dev/null and b/public/textures/chipped/special_gilded_blackstone.png differ diff --git a/public/textures/chipped/special_sea_lantern.png b/public/textures/chipped/special_sea_lantern.png new file mode 100644 index 00000000..c62883da Binary files /dev/null and b/public/textures/chipped/special_sea_lantern.png differ diff --git a/public/textures/chipped/speckled_nether_wart_block.png b/public/textures/chipped/speckled_nether_wart_block.png new file mode 100644 index 00000000..2dce0bf9 Binary files /dev/null and b/public/textures/chipped/speckled_nether_wart_block.png differ diff --git a/public/textures/chipped/speckled_warped_wart_block.png b/public/textures/chipped/speckled_warped_wart_block.png new file mode 100644 index 00000000..0eeb06b4 Binary files /dev/null and b/public/textures/chipped/speckled_warped_wart_block.png differ diff --git a/public/textures/chipped/spider_amethyst_block_carving.png b/public/textures/chipped/spider_amethyst_block_carving.png new file mode 100644 index 00000000..bbf44771 Binary files /dev/null and b/public/textures/chipped/spider_amethyst_block_carving.png differ diff --git a/public/textures/chipped/spider_ancient_debris_carving.png b/public/textures/chipped/spider_ancient_debris_carving.png new file mode 100644 index 00000000..2a58d76a Binary files /dev/null and b/public/textures/chipped/spider_ancient_debris_carving.png differ diff --git a/public/textures/chipped/spider_andesite_carving.png b/public/textures/chipped/spider_andesite_carving.png new file mode 100644 index 00000000..b661ee73 Binary files /dev/null and b/public/textures/chipped/spider_andesite_carving.png differ diff --git a/public/textures/chipped/spider_basalt_carving.png b/public/textures/chipped/spider_basalt_carving.png new file mode 100644 index 00000000..f3b92fdf Binary files /dev/null and b/public/textures/chipped/spider_basalt_carving.png differ diff --git a/public/textures/chipped/spider_blackstone_carving.png b/public/textures/chipped/spider_blackstone_carving.png new file mode 100644 index 00000000..c7de41f7 Binary files /dev/null and b/public/textures/chipped/spider_blackstone_carving.png differ diff --git a/public/textures/chipped/spider_blue_ice_carving.png b/public/textures/chipped/spider_blue_ice_carving.png new file mode 100644 index 00000000..1381c35e Binary files /dev/null and b/public/textures/chipped/spider_blue_ice_carving.png differ diff --git a/public/textures/chipped/spider_borderless_bricks_carving.png b/public/textures/chipped/spider_borderless_bricks_carving.png new file mode 100644 index 00000000..ee185218 Binary files /dev/null and b/public/textures/chipped/spider_borderless_bricks_carving.png differ diff --git a/public/textures/chipped/spider_bricks_carving.png b/public/textures/chipped/spider_bricks_carving.png new file mode 100644 index 00000000..efbc90b9 Binary files /dev/null and b/public/textures/chipped/spider_bricks_carving.png differ diff --git a/public/textures/chipped/spider_calcite_carving.png b/public/textures/chipped/spider_calcite_carving.png new file mode 100644 index 00000000..b617cf26 Binary files /dev/null and b/public/textures/chipped/spider_calcite_carving.png differ diff --git a/public/textures/chipped/spider_clay_carving.png b/public/textures/chipped/spider_clay_carving.png new file mode 100644 index 00000000..2dc59b5e Binary files /dev/null and b/public/textures/chipped/spider_clay_carving.png differ diff --git a/public/textures/chipped/spider_coal_block_carving.png b/public/textures/chipped/spider_coal_block_carving.png new file mode 100644 index 00000000..276f90ee Binary files /dev/null and b/public/textures/chipped/spider_coal_block_carving.png differ diff --git a/public/textures/chipped/spider_cobblestone_carving.png b/public/textures/chipped/spider_cobblestone_carving.png new file mode 100644 index 00000000..b4466967 Binary files /dev/null and b/public/textures/chipped/spider_cobblestone_carving.png differ diff --git a/public/textures/chipped/spider_crying_obsidian_carving.png b/public/textures/chipped/spider_crying_obsidian_carving.png new file mode 100644 index 00000000..6dcf8e86 Binary files /dev/null and b/public/textures/chipped/spider_crying_obsidian_carving.png differ diff --git a/public/textures/chipped/spider_dark_prismarine_carving.png b/public/textures/chipped/spider_dark_prismarine_carving.png new file mode 100644 index 00000000..e127727e Binary files /dev/null and b/public/textures/chipped/spider_dark_prismarine_carving.png differ diff --git a/public/textures/chipped/spider_deepslate_carving.png b/public/textures/chipped/spider_deepslate_carving.png new file mode 100644 index 00000000..5da5ee3b Binary files /dev/null and b/public/textures/chipped/spider_deepslate_carving.png differ diff --git a/public/textures/chipped/spider_diorite_carving.png b/public/textures/chipped/spider_diorite_carving.png new file mode 100644 index 00000000..5f4c4dd8 Binary files /dev/null and b/public/textures/chipped/spider_diorite_carving.png differ diff --git a/public/textures/chipped/spider_dirt_carving.png b/public/textures/chipped/spider_dirt_carving.png new file mode 100644 index 00000000..dee8ddad Binary files /dev/null and b/public/textures/chipped/spider_dirt_carving.png differ diff --git a/public/textures/chipped/spider_dripstone_block_carving.png b/public/textures/chipped/spider_dripstone_block_carving.png new file mode 100644 index 00000000..2cfbd74e Binary files /dev/null and b/public/textures/chipped/spider_dripstone_block_carving.png differ diff --git a/public/textures/chipped/spider_end_stone_carving.png b/public/textures/chipped/spider_end_stone_carving.png new file mode 100644 index 00000000..d8cf1589 Binary files /dev/null and b/public/textures/chipped/spider_end_stone_carving.png differ diff --git a/public/textures/chipped/spider_gilded_blackstone_carving.png b/public/textures/chipped/spider_gilded_blackstone_carving.png new file mode 100644 index 00000000..e60006b9 Binary files /dev/null and b/public/textures/chipped/spider_gilded_blackstone_carving.png differ diff --git a/public/textures/chipped/spider_granite_carving.png b/public/textures/chipped/spider_granite_carving.png new file mode 100644 index 00000000..9790761a Binary files /dev/null and b/public/textures/chipped/spider_granite_carving.png differ diff --git a/public/textures/chipped/spider_ice_carving.png b/public/textures/chipped/spider_ice_carving.png new file mode 100644 index 00000000..c0deade6 Binary files /dev/null and b/public/textures/chipped/spider_ice_carving.png differ diff --git a/public/textures/chipped/spider_lapis_block_carving.png b/public/textures/chipped/spider_lapis_block_carving.png new file mode 100644 index 00000000..5dba328a Binary files /dev/null and b/public/textures/chipped/spider_lapis_block_carving.png differ diff --git a/public/textures/chipped/spider_lodestone_carving.png b/public/textures/chipped/spider_lodestone_carving.png new file mode 100644 index 00000000..83fcee41 Binary files /dev/null and b/public/textures/chipped/spider_lodestone_carving.png differ diff --git a/public/textures/chipped/spider_magma_block_carving.png b/public/textures/chipped/spider_magma_block_carving.png new file mode 100644 index 00000000..5dbd80f1 Binary files /dev/null and b/public/textures/chipped/spider_magma_block_carving.png differ diff --git a/public/textures/chipped/spider_mossy_cobblestone_carving.png b/public/textures/chipped/spider_mossy_cobblestone_carving.png new file mode 100644 index 00000000..7c59ed5a Binary files /dev/null and b/public/textures/chipped/spider_mossy_cobblestone_carving.png differ diff --git a/public/textures/chipped/spider_mossy_stone_bricks_carving.png b/public/textures/chipped/spider_mossy_stone_bricks_carving.png new file mode 100644 index 00000000..d36afd12 Binary files /dev/null and b/public/textures/chipped/spider_mossy_stone_bricks_carving.png differ diff --git a/public/textures/chipped/spider_mud_bricks_carving.png b/public/textures/chipped/spider_mud_bricks_carving.png new file mode 100644 index 00000000..19d079f0 Binary files /dev/null and b/public/textures/chipped/spider_mud_bricks_carving.png differ diff --git a/public/textures/chipped/spider_mud_carving.png b/public/textures/chipped/spider_mud_carving.png new file mode 100644 index 00000000..b1955709 Binary files /dev/null and b/public/textures/chipped/spider_mud_carving.png differ diff --git a/public/textures/chipped/spider_nether_bricks_carving.png b/public/textures/chipped/spider_nether_bricks_carving.png new file mode 100644 index 00000000..6d622c50 Binary files /dev/null and b/public/textures/chipped/spider_nether_bricks_carving.png differ diff --git a/public/textures/chipped/spider_netherrack_carving.png b/public/textures/chipped/spider_netherrack_carving.png new file mode 100644 index 00000000..021564a4 Binary files /dev/null and b/public/textures/chipped/spider_netherrack_carving.png differ diff --git a/public/textures/chipped/spider_obsidian_carving.png b/public/textures/chipped/spider_obsidian_carving.png new file mode 100644 index 00000000..e4e15205 Binary files /dev/null and b/public/textures/chipped/spider_obsidian_carving.png differ diff --git a/public/textures/chipped/spider_packed_ice_carving.png b/public/textures/chipped/spider_packed_ice_carving.png new file mode 100644 index 00000000..26bd180f Binary files /dev/null and b/public/textures/chipped/spider_packed_ice_carving.png differ diff --git a/public/textures/chipped/spider_packed_mud_carving.png b/public/textures/chipped/spider_packed_mud_carving.png new file mode 100644 index 00000000..f9855ace Binary files /dev/null and b/public/textures/chipped/spider_packed_mud_carving.png differ diff --git a/public/textures/chipped/spider_prismarine_carving.png b/public/textures/chipped/spider_prismarine_carving.png new file mode 100644 index 00000000..e7f886db Binary files /dev/null and b/public/textures/chipped/spider_prismarine_carving.png differ diff --git a/public/textures/chipped/spider_purpur_block_carving.png b/public/textures/chipped/spider_purpur_block_carving.png new file mode 100644 index 00000000..0601165f Binary files /dev/null and b/public/textures/chipped/spider_purpur_block_carving.png differ diff --git a/public/textures/chipped/spider_quartz_block_carving.png b/public/textures/chipped/spider_quartz_block_carving.png new file mode 100644 index 00000000..24a5a76d Binary files /dev/null and b/public/textures/chipped/spider_quartz_block_carving.png differ diff --git a/public/textures/chipped/spider_raw_copper_block_carving.png b/public/textures/chipped/spider_raw_copper_block_carving.png new file mode 100644 index 00000000..c6767ef3 Binary files /dev/null and b/public/textures/chipped/spider_raw_copper_block_carving.png differ diff --git a/public/textures/chipped/spider_raw_gold_block_carving.png b/public/textures/chipped/spider_raw_gold_block_carving.png new file mode 100644 index 00000000..2f8a138d Binary files /dev/null and b/public/textures/chipped/spider_raw_gold_block_carving.png differ diff --git a/public/textures/chipped/spider_raw_iron_block_carving.png b/public/textures/chipped/spider_raw_iron_block_carving.png new file mode 100644 index 00000000..d535ef37 Binary files /dev/null and b/public/textures/chipped/spider_raw_iron_block_carving.png differ diff --git a/public/textures/chipped/spider_red_nether_bricks_carving.png b/public/textures/chipped/spider_red_nether_bricks_carving.png new file mode 100644 index 00000000..d17f573e Binary files /dev/null and b/public/textures/chipped/spider_red_nether_bricks_carving.png differ diff --git a/public/textures/chipped/spider_red_sandstone_carving.png b/public/textures/chipped/spider_red_sandstone_carving.png new file mode 100644 index 00000000..9aacfad7 Binary files /dev/null and b/public/textures/chipped/spider_red_sandstone_carving.png differ diff --git a/public/textures/chipped/spider_redstone_block_carving.png b/public/textures/chipped/spider_redstone_block_carving.png new file mode 100644 index 00000000..4caf0e53 Binary files /dev/null and b/public/textures/chipped/spider_redstone_block_carving.png differ diff --git a/public/textures/chipped/spider_sandstone_carving.png b/public/textures/chipped/spider_sandstone_carving.png new file mode 100644 index 00000000..c4f6da8c Binary files /dev/null and b/public/textures/chipped/spider_sandstone_carving.png differ diff --git a/public/textures/chipped/spider_smooth_stone_carving.png b/public/textures/chipped/spider_smooth_stone_carving.png new file mode 100644 index 00000000..9011682f Binary files /dev/null and b/public/textures/chipped/spider_smooth_stone_carving.png differ diff --git a/public/textures/chipped/spider_snow_block_carving.png b/public/textures/chipped/spider_snow_block_carving.png new file mode 100644 index 00000000..ce93e90b Binary files /dev/null and b/public/textures/chipped/spider_snow_block_carving.png differ diff --git a/public/textures/chipped/spider_stone_carving.png b/public/textures/chipped/spider_stone_carving.png new file mode 100644 index 00000000..b9d76313 Binary files /dev/null and b/public/textures/chipped/spider_stone_carving.png differ diff --git a/public/textures/chipped/spider_tuff_carving.png b/public/textures/chipped/spider_tuff_carving.png new file mode 100644 index 00000000..96f9c82f Binary files /dev/null and b/public/textures/chipped/spider_tuff_carving.png differ diff --git a/public/textures/chipped/spiral_gilded_blackstone.png b/public/textures/chipped/spiral_gilded_blackstone.png new file mode 100644 index 00000000..db571bda Binary files /dev/null and b/public/textures/chipped/spiral_gilded_blackstone.png differ diff --git a/public/textures/chipped/spiral_mud.png b/public/textures/chipped/spiral_mud.png new file mode 100644 index 00000000..07b7a6fe Binary files /dev/null and b/public/textures/chipped/spiral_mud.png differ diff --git a/public/textures/chipped/spiral_mud_bricks.png b/public/textures/chipped/spiral_mud_bricks.png new file mode 100644 index 00000000..8c0ad092 Binary files /dev/null and b/public/textures/chipped/spiral_mud_bricks.png differ diff --git a/public/textures/chipped/spiral_packed_mud.png b/public/textures/chipped/spiral_packed_mud.png new file mode 100644 index 00000000..11dfd6c7 Binary files /dev/null and b/public/textures/chipped/spiral_packed_mud.png differ diff --git a/public/textures/chipped/spiraled_amethyst_block.png b/public/textures/chipped/spiraled_amethyst_block.png new file mode 100644 index 00000000..13c62d7c Binary files /dev/null and b/public/textures/chipped/spiraled_amethyst_block.png differ diff --git a/public/textures/chipped/spiraled_ancient_debris.png b/public/textures/chipped/spiraled_ancient_debris.png new file mode 100644 index 00000000..44e61168 Binary files /dev/null and b/public/textures/chipped/spiraled_ancient_debris.png differ diff --git a/public/textures/chipped/spiraled_andesite.png b/public/textures/chipped/spiraled_andesite.png new file mode 100644 index 00000000..26385817 Binary files /dev/null and b/public/textures/chipped/spiraled_andesite.png differ diff --git a/public/textures/chipped/spiraled_basalt.png b/public/textures/chipped/spiraled_basalt.png new file mode 100644 index 00000000..655c1f4d Binary files /dev/null and b/public/textures/chipped/spiraled_basalt.png differ diff --git a/public/textures/chipped/spiraled_blackstone.png b/public/textures/chipped/spiraled_blackstone.png new file mode 100644 index 00000000..13ca03cf Binary files /dev/null and b/public/textures/chipped/spiraled_blackstone.png differ diff --git a/public/textures/chipped/spiraled_blue_ice.png b/public/textures/chipped/spiraled_blue_ice.png new file mode 100644 index 00000000..d541571a Binary files /dev/null and b/public/textures/chipped/spiraled_blue_ice.png differ diff --git a/public/textures/chipped/spiraled_borderless_bricks.png b/public/textures/chipped/spiraled_borderless_bricks.png new file mode 100644 index 00000000..3b741cf3 Binary files /dev/null and b/public/textures/chipped/spiraled_borderless_bricks.png differ diff --git a/public/textures/chipped/spiraled_bricks.png b/public/textures/chipped/spiraled_bricks.png new file mode 100644 index 00000000..e4264c69 Binary files /dev/null and b/public/textures/chipped/spiraled_bricks.png differ diff --git a/public/textures/chipped/spiraled_calcite.png b/public/textures/chipped/spiraled_calcite.png new file mode 100644 index 00000000..68982cd4 Binary files /dev/null and b/public/textures/chipped/spiraled_calcite.png differ diff --git a/public/textures/chipped/spiraled_clay.png b/public/textures/chipped/spiraled_clay.png new file mode 100644 index 00000000..6cdd303f Binary files /dev/null and b/public/textures/chipped/spiraled_clay.png differ diff --git a/public/textures/chipped/spiraled_coal_block.png b/public/textures/chipped/spiraled_coal_block.png new file mode 100644 index 00000000..0ae78680 Binary files /dev/null and b/public/textures/chipped/spiraled_coal_block.png differ diff --git a/public/textures/chipped/spiraled_cobblestone.png b/public/textures/chipped/spiraled_cobblestone.png new file mode 100644 index 00000000..176a171f Binary files /dev/null and b/public/textures/chipped/spiraled_cobblestone.png differ diff --git a/public/textures/chipped/spiraled_crying_obsidian.png b/public/textures/chipped/spiraled_crying_obsidian.png new file mode 100644 index 00000000..d9663349 Binary files /dev/null and b/public/textures/chipped/spiraled_crying_obsidian.png differ diff --git a/public/textures/chipped/spiraled_dark_prismarine.png b/public/textures/chipped/spiraled_dark_prismarine.png new file mode 100644 index 00000000..63ea862d Binary files /dev/null and b/public/textures/chipped/spiraled_dark_prismarine.png differ diff --git a/public/textures/chipped/spiraled_deepslate.png b/public/textures/chipped/spiraled_deepslate.png new file mode 100644 index 00000000..4835e0b8 Binary files /dev/null and b/public/textures/chipped/spiraled_deepslate.png differ diff --git a/public/textures/chipped/spiraled_diorite.png b/public/textures/chipped/spiraled_diorite.png new file mode 100644 index 00000000..7732bf21 Binary files /dev/null and b/public/textures/chipped/spiraled_diorite.png differ diff --git a/public/textures/chipped/spiraled_dirt.png b/public/textures/chipped/spiraled_dirt.png new file mode 100644 index 00000000..b99ab13f Binary files /dev/null and b/public/textures/chipped/spiraled_dirt.png differ diff --git a/public/textures/chipped/spiraled_dripstone_block.png b/public/textures/chipped/spiraled_dripstone_block.png new file mode 100644 index 00000000..92bd8261 Binary files /dev/null and b/public/textures/chipped/spiraled_dripstone_block.png differ diff --git a/public/textures/chipped/spiraled_end_stone.png b/public/textures/chipped/spiraled_end_stone.png new file mode 100644 index 00000000..40d2ebea Binary files /dev/null and b/public/textures/chipped/spiraled_end_stone.png differ diff --git a/public/textures/chipped/spiraled_gilded_blackstone.png b/public/textures/chipped/spiraled_gilded_blackstone.png new file mode 100644 index 00000000..ae7c3298 Binary files /dev/null and b/public/textures/chipped/spiraled_gilded_blackstone.png differ diff --git a/public/textures/chipped/spiraled_granite.png b/public/textures/chipped/spiraled_granite.png new file mode 100644 index 00000000..2886d3a0 Binary files /dev/null and b/public/textures/chipped/spiraled_granite.png differ diff --git a/public/textures/chipped/spiraled_ice.png b/public/textures/chipped/spiraled_ice.png new file mode 100644 index 00000000..35dd3cbb Binary files /dev/null and b/public/textures/chipped/spiraled_ice.png differ diff --git a/public/textures/chipped/spiraled_lapis_block.png b/public/textures/chipped/spiraled_lapis_block.png new file mode 100644 index 00000000..22e90962 Binary files /dev/null and b/public/textures/chipped/spiraled_lapis_block.png differ diff --git a/public/textures/chipped/spiraled_lodestone.png b/public/textures/chipped/spiraled_lodestone.png new file mode 100644 index 00000000..56575c1a Binary files /dev/null and b/public/textures/chipped/spiraled_lodestone.png differ diff --git a/public/textures/chipped/spiraled_magma_block.png b/public/textures/chipped/spiraled_magma_block.png new file mode 100644 index 00000000..0e9f1048 Binary files /dev/null and b/public/textures/chipped/spiraled_magma_block.png differ diff --git a/public/textures/chipped/spiraled_mossy_cobblestone.png b/public/textures/chipped/spiraled_mossy_cobblestone.png new file mode 100644 index 00000000..2f765d86 Binary files /dev/null and b/public/textures/chipped/spiraled_mossy_cobblestone.png differ diff --git a/public/textures/chipped/spiraled_mossy_stone_bricks.png b/public/textures/chipped/spiraled_mossy_stone_bricks.png new file mode 100644 index 00000000..1342b2e4 Binary files /dev/null and b/public/textures/chipped/spiraled_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/spiraled_nether_bricks.png b/public/textures/chipped/spiraled_nether_bricks.png new file mode 100644 index 00000000..6d4f2c98 Binary files /dev/null and b/public/textures/chipped/spiraled_nether_bricks.png differ diff --git a/public/textures/chipped/spiraled_netherrack.png b/public/textures/chipped/spiraled_netherrack.png new file mode 100644 index 00000000..c0e67e22 Binary files /dev/null and b/public/textures/chipped/spiraled_netherrack.png differ diff --git a/public/textures/chipped/spiraled_obsidian.png b/public/textures/chipped/spiraled_obsidian.png new file mode 100644 index 00000000..a6fbaadd Binary files /dev/null and b/public/textures/chipped/spiraled_obsidian.png differ diff --git a/public/textures/chipped/spiraled_packed_ice.png b/public/textures/chipped/spiraled_packed_ice.png new file mode 100644 index 00000000..ead18b21 Binary files /dev/null and b/public/textures/chipped/spiraled_packed_ice.png differ diff --git a/public/textures/chipped/spiraled_prismarine.png b/public/textures/chipped/spiraled_prismarine.png new file mode 100644 index 00000000..c4cf35d3 Binary files /dev/null and b/public/textures/chipped/spiraled_prismarine.png differ diff --git a/public/textures/chipped/spiraled_purpur_block.png b/public/textures/chipped/spiraled_purpur_block.png new file mode 100644 index 00000000..4219a7da Binary files /dev/null and b/public/textures/chipped/spiraled_purpur_block.png differ diff --git a/public/textures/chipped/spiraled_raw_copper_block.png b/public/textures/chipped/spiraled_raw_copper_block.png new file mode 100644 index 00000000..eabbcc84 Binary files /dev/null and b/public/textures/chipped/spiraled_raw_copper_block.png differ diff --git a/public/textures/chipped/spiraled_raw_gold_block.png b/public/textures/chipped/spiraled_raw_gold_block.png new file mode 100644 index 00000000..04151783 Binary files /dev/null and b/public/textures/chipped/spiraled_raw_gold_block.png differ diff --git a/public/textures/chipped/spiraled_raw_iron_block.png b/public/textures/chipped/spiraled_raw_iron_block.png new file mode 100644 index 00000000..fe052baa Binary files /dev/null and b/public/textures/chipped/spiraled_raw_iron_block.png differ diff --git a/public/textures/chipped/spiraled_red_nether_bricks.png b/public/textures/chipped/spiraled_red_nether_bricks.png new file mode 100644 index 00000000..3a5f2346 Binary files /dev/null and b/public/textures/chipped/spiraled_red_nether_bricks.png differ diff --git a/public/textures/chipped/spiraled_red_sandstone.png b/public/textures/chipped/spiraled_red_sandstone.png new file mode 100644 index 00000000..a5d90769 Binary files /dev/null and b/public/textures/chipped/spiraled_red_sandstone.png differ diff --git a/public/textures/chipped/spiraled_redstone_block.png b/public/textures/chipped/spiraled_redstone_block.png new file mode 100644 index 00000000..0b618a0a Binary files /dev/null and b/public/textures/chipped/spiraled_redstone_block.png differ diff --git a/public/textures/chipped/spiraled_sandstone.png b/public/textures/chipped/spiraled_sandstone.png new file mode 100644 index 00000000..aca1a428 Binary files /dev/null and b/public/textures/chipped/spiraled_sandstone.png differ diff --git a/public/textures/chipped/spiraled_smooth_stone.png b/public/textures/chipped/spiraled_smooth_stone.png new file mode 100644 index 00000000..8baa3203 Binary files /dev/null and b/public/textures/chipped/spiraled_smooth_stone.png differ diff --git a/public/textures/chipped/spiraled_snow_block.png b/public/textures/chipped/spiraled_snow_block.png new file mode 100644 index 00000000..27e48a6c Binary files /dev/null and b/public/textures/chipped/spiraled_snow_block.png differ diff --git a/public/textures/chipped/spiraled_stone.png b/public/textures/chipped/spiraled_stone.png new file mode 100644 index 00000000..229aaa36 Binary files /dev/null and b/public/textures/chipped/spiraled_stone.png differ diff --git a/public/textures/chipped/spiraled_tuff.png b/public/textures/chipped/spiraled_tuff.png new file mode 100644 index 00000000..80eccd2f Binary files /dev/null and b/public/textures/chipped/spiraled_tuff.png differ diff --git a/public/textures/chipped/spongy_moss_block.png b/public/textures/chipped/spongy_moss_block.png new file mode 100644 index 00000000..d2a958d1 Binary files /dev/null and b/public/textures/chipped/spongy_moss_block.png differ diff --git a/public/textures/chipped/spongy_nether_wart_block.png b/public/textures/chipped/spongy_nether_wart_block.png new file mode 100644 index 00000000..970d5f59 Binary files /dev/null and b/public/textures/chipped/spongy_nether_wart_block.png differ diff --git a/public/textures/chipped/spongy_warped_wart_block.png b/public/textures/chipped/spongy_warped_wart_block.png new file mode 100644 index 00000000..98b9bdeb Binary files /dev/null and b/public/textures/chipped/spongy_warped_wart_block.png differ diff --git a/public/textures/chipped/spooky_carved_pumpkin.png b/public/textures/chipped/spooky_carved_pumpkin.png new file mode 100644 index 00000000..393427c8 Binary files /dev/null and b/public/textures/chipped/spooky_carved_pumpkin.png differ diff --git a/public/textures/chipped/spooky_jack_o_lantern.png b/public/textures/chipped/spooky_jack_o_lantern.png new file mode 100644 index 00000000..f194ad27 Binary files /dev/null and b/public/textures/chipped/spooky_jack_o_lantern.png differ diff --git a/public/textures/chipped/spotted_brown_mushroom_block.png b/public/textures/chipped/spotted_brown_mushroom_block.png new file mode 100644 index 00000000..a65e4e2f Binary files /dev/null and b/public/textures/chipped/spotted_brown_mushroom_block.png differ diff --git a/public/textures/chipped/spotted_red_mushroom_block.png b/public/textures/chipped/spotted_red_mushroom_block.png new file mode 100644 index 00000000..4f7ac3fc Binary files /dev/null and b/public/textures/chipped/spotted_red_mushroom_block.png differ diff --git a/public/textures/chipped/sprinkled_brown_mushroom_block.png b/public/textures/chipped/sprinkled_brown_mushroom_block.png new file mode 100644 index 00000000..fd595d9d Binary files /dev/null and b/public/textures/chipped/sprinkled_brown_mushroom_block.png differ diff --git a/public/textures/chipped/sprinkled_moss_block.png b/public/textures/chipped/sprinkled_moss_block.png new file mode 100644 index 00000000..337d7ef1 Binary files /dev/null and b/public/textures/chipped/sprinkled_moss_block.png differ diff --git a/public/textures/chipped/sprouting_crimson_roots.png b/public/textures/chipped/sprouting_crimson_roots.png new file mode 100644 index 00000000..f89b5037 Binary files /dev/null and b/public/textures/chipped/sprouting_crimson_roots.png differ diff --git a/public/textures/chipped/sprouting_crimson_roots_bulb.png b/public/textures/chipped/sprouting_crimson_roots_bulb.png new file mode 100644 index 00000000..3ffafc0f Binary files /dev/null and b/public/textures/chipped/sprouting_crimson_roots_bulb.png differ diff --git a/public/textures/chipped/spruce_barrel.png b/public/textures/chipped/spruce_barrel.png new file mode 100644 index 00000000..f163f84b Binary files /dev/null and b/public/textures/chipped/spruce_barrel.png differ diff --git a/public/textures/chipped/spruce_crate.png b/public/textures/chipped/spruce_crate.png new file mode 100644 index 00000000..020f7b4b Binary files /dev/null and b/public/textures/chipped/spruce_crate.png differ diff --git a/public/textures/chipped/spruce_planks_mosaic.png b/public/textures/chipped/spruce_planks_mosaic.png new file mode 100644 index 00000000..f9a638f1 Binary files /dev/null and b/public/textures/chipped/spruce_planks_mosaic.png differ diff --git a/public/textures/chipped/spruce_planks_panel.png b/public/textures/chipped/spruce_planks_panel.png new file mode 100644 index 00000000..1af189f8 Binary files /dev/null and b/public/textures/chipped/spruce_planks_panel.png differ diff --git a/public/textures/chipped/spruce_planks_shavings.png b/public/textures/chipped/spruce_planks_shavings.png new file mode 100644 index 00000000..4a7ee644 Binary files /dev/null and b/public/textures/chipped/spruce_planks_shavings.png differ diff --git a/public/textures/chipped/spruce_torch.png b/public/textures/chipped/spruce_torch.png new file mode 100644 index 00000000..5f61c66e Binary files /dev/null and b/public/textures/chipped/spruce_torch.png differ diff --git a/public/textures/chipped/square_black_stained_glass.png b/public/textures/chipped/square_black_stained_glass.png new file mode 100644 index 00000000..c5471eea Binary files /dev/null and b/public/textures/chipped/square_black_stained_glass.png differ diff --git a/public/textures/chipped/square_black_stained_glass_pane.png b/public/textures/chipped/square_black_stained_glass_pane.png new file mode 100644 index 00000000..6d727f84 Binary files /dev/null and b/public/textures/chipped/square_black_stained_glass_pane.png differ diff --git a/public/textures/chipped/square_blue_stained_glass.png b/public/textures/chipped/square_blue_stained_glass.png new file mode 100644 index 00000000..b8115e0c Binary files /dev/null and b/public/textures/chipped/square_blue_stained_glass.png differ diff --git a/public/textures/chipped/square_blue_stained_glass_pane.png b/public/textures/chipped/square_blue_stained_glass_pane.png new file mode 100644 index 00000000..6f52aac6 Binary files /dev/null and b/public/textures/chipped/square_blue_stained_glass_pane.png differ diff --git a/public/textures/chipped/square_brown_stained_glass.png b/public/textures/chipped/square_brown_stained_glass.png new file mode 100644 index 00000000..27f147ec Binary files /dev/null and b/public/textures/chipped/square_brown_stained_glass.png differ diff --git a/public/textures/chipped/square_brown_stained_glass_pane.png b/public/textures/chipped/square_brown_stained_glass_pane.png new file mode 100644 index 00000000..b1f19c56 Binary files /dev/null and b/public/textures/chipped/square_brown_stained_glass_pane.png differ diff --git a/public/textures/chipped/square_cyan_stained_glass.png b/public/textures/chipped/square_cyan_stained_glass.png new file mode 100644 index 00000000..a6870d4a Binary files /dev/null and b/public/textures/chipped/square_cyan_stained_glass.png differ diff --git a/public/textures/chipped/square_cyan_stained_glass_pane.png b/public/textures/chipped/square_cyan_stained_glass_pane.png new file mode 100644 index 00000000..363bb6cf Binary files /dev/null and b/public/textures/chipped/square_cyan_stained_glass_pane.png differ diff --git a/public/textures/chipped/square_gray_stained_glass.png b/public/textures/chipped/square_gray_stained_glass.png new file mode 100644 index 00000000..0fbb7fc0 Binary files /dev/null and b/public/textures/chipped/square_gray_stained_glass.png differ diff --git a/public/textures/chipped/square_gray_stained_glass_pane.png b/public/textures/chipped/square_gray_stained_glass_pane.png new file mode 100644 index 00000000..e76a1b3f Binary files /dev/null and b/public/textures/chipped/square_gray_stained_glass_pane.png differ diff --git a/public/textures/chipped/square_green_stained_glass.png b/public/textures/chipped/square_green_stained_glass.png new file mode 100644 index 00000000..56d07a7a Binary files /dev/null and b/public/textures/chipped/square_green_stained_glass.png differ diff --git a/public/textures/chipped/square_green_stained_glass_pane.png b/public/textures/chipped/square_green_stained_glass_pane.png new file mode 100644 index 00000000..9f677d2e Binary files /dev/null and b/public/textures/chipped/square_green_stained_glass_pane.png differ diff --git a/public/textures/chipped/square_leaded_glass.png b/public/textures/chipped/square_leaded_glass.png new file mode 100644 index 00000000..05c6b454 Binary files /dev/null and b/public/textures/chipped/square_leaded_glass.png differ diff --git a/public/textures/chipped/square_leaded_glass_pane.png b/public/textures/chipped/square_leaded_glass_pane.png new file mode 100644 index 00000000..25b8a69f Binary files /dev/null and b/public/textures/chipped/square_leaded_glass_pane.png differ diff --git a/public/textures/chipped/square_light_blue_stained_glass.png b/public/textures/chipped/square_light_blue_stained_glass.png new file mode 100644 index 00000000..630ed1d9 Binary files /dev/null and b/public/textures/chipped/square_light_blue_stained_glass.png differ diff --git a/public/textures/chipped/square_light_blue_stained_glass_pane.png b/public/textures/chipped/square_light_blue_stained_glass_pane.png new file mode 100644 index 00000000..f2a65fda Binary files /dev/null and b/public/textures/chipped/square_light_blue_stained_glass_pane.png differ diff --git a/public/textures/chipped/square_light_gray_stained_glass.png b/public/textures/chipped/square_light_gray_stained_glass.png new file mode 100644 index 00000000..77757442 Binary files /dev/null and b/public/textures/chipped/square_light_gray_stained_glass.png differ diff --git a/public/textures/chipped/square_light_gray_stained_glass_pane.png b/public/textures/chipped/square_light_gray_stained_glass_pane.png new file mode 100644 index 00000000..84010b0d Binary files /dev/null and b/public/textures/chipped/square_light_gray_stained_glass_pane.png differ diff --git a/public/textures/chipped/square_lime_stained_glass.png b/public/textures/chipped/square_lime_stained_glass.png new file mode 100644 index 00000000..dd221e44 Binary files /dev/null and b/public/textures/chipped/square_lime_stained_glass.png differ diff --git a/public/textures/chipped/square_lime_stained_glass_pane.png b/public/textures/chipped/square_lime_stained_glass_pane.png new file mode 100644 index 00000000..13320571 Binary files /dev/null and b/public/textures/chipped/square_lime_stained_glass_pane.png differ diff --git a/public/textures/chipped/square_magenta_stained_glass.png b/public/textures/chipped/square_magenta_stained_glass.png new file mode 100644 index 00000000..5a4f0fbf Binary files /dev/null and b/public/textures/chipped/square_magenta_stained_glass.png differ diff --git a/public/textures/chipped/square_magenta_stained_glass_pane.png b/public/textures/chipped/square_magenta_stained_glass_pane.png new file mode 100644 index 00000000..39073fa5 Binary files /dev/null and b/public/textures/chipped/square_magenta_stained_glass_pane.png differ diff --git a/public/textures/chipped/square_oak_glass.png b/public/textures/chipped/square_oak_glass.png new file mode 100644 index 00000000..21aa079a Binary files /dev/null and b/public/textures/chipped/square_oak_glass.png differ diff --git a/public/textures/chipped/square_oak_glass_pane.png b/public/textures/chipped/square_oak_glass_pane.png new file mode 100644 index 00000000..d78ffcd5 Binary files /dev/null and b/public/textures/chipped/square_oak_glass_pane.png differ diff --git a/public/textures/chipped/square_orange_stained_glass.png b/public/textures/chipped/square_orange_stained_glass.png new file mode 100644 index 00000000..f1f7ddd6 Binary files /dev/null and b/public/textures/chipped/square_orange_stained_glass.png differ diff --git a/public/textures/chipped/square_orange_stained_glass_pane.png b/public/textures/chipped/square_orange_stained_glass_pane.png new file mode 100644 index 00000000..19b2b9eb Binary files /dev/null and b/public/textures/chipped/square_orange_stained_glass_pane.png differ diff --git a/public/textures/chipped/square_pink_stained_glass.png b/public/textures/chipped/square_pink_stained_glass.png new file mode 100644 index 00000000..833fff30 Binary files /dev/null and b/public/textures/chipped/square_pink_stained_glass.png differ diff --git a/public/textures/chipped/square_pink_stained_glass_pane.png b/public/textures/chipped/square_pink_stained_glass_pane.png new file mode 100644 index 00000000..3370d804 Binary files /dev/null and b/public/textures/chipped/square_pink_stained_glass_pane.png differ diff --git a/public/textures/chipped/square_purple_stained_glass.png b/public/textures/chipped/square_purple_stained_glass.png new file mode 100644 index 00000000..2311b8cf Binary files /dev/null and b/public/textures/chipped/square_purple_stained_glass.png differ diff --git a/public/textures/chipped/square_purple_stained_glass_pane.png b/public/textures/chipped/square_purple_stained_glass_pane.png new file mode 100644 index 00000000..18c867ff Binary files /dev/null and b/public/textures/chipped/square_purple_stained_glass_pane.png differ diff --git a/public/textures/chipped/square_red_stained_glass.png b/public/textures/chipped/square_red_stained_glass.png new file mode 100644 index 00000000..5185c3fe Binary files /dev/null and b/public/textures/chipped/square_red_stained_glass.png differ diff --git a/public/textures/chipped/square_red_stained_glass_pane.png b/public/textures/chipped/square_red_stained_glass_pane.png new file mode 100644 index 00000000..9e678b85 Binary files /dev/null and b/public/textures/chipped/square_red_stained_glass_pane.png differ diff --git a/public/textures/chipped/square_white_stained_glass.png b/public/textures/chipped/square_white_stained_glass.png new file mode 100644 index 00000000..fcd537de Binary files /dev/null and b/public/textures/chipped/square_white_stained_glass.png differ diff --git a/public/textures/chipped/square_white_stained_glass_pane.png b/public/textures/chipped/square_white_stained_glass_pane.png new file mode 100644 index 00000000..113ec9e6 Binary files /dev/null and b/public/textures/chipped/square_white_stained_glass_pane.png differ diff --git a/public/textures/chipped/square_yellow_stained_glass.png b/public/textures/chipped/square_yellow_stained_glass.png new file mode 100644 index 00000000..ebcbd99d Binary files /dev/null and b/public/textures/chipped/square_yellow_stained_glass.png differ diff --git a/public/textures/chipped/square_yellow_stained_glass_pane.png b/public/textures/chipped/square_yellow_stained_glass_pane.png new file mode 100644 index 00000000..1e93bc4e Binary files /dev/null and b/public/textures/chipped/square_yellow_stained_glass_pane.png differ diff --git a/public/textures/chipped/squished_cute_carved_pumpkin.png b/public/textures/chipped/squished_cute_carved_pumpkin.png new file mode 100644 index 00000000..6b952e78 Binary files /dev/null and b/public/textures/chipped/squished_cute_carved_pumpkin.png differ diff --git a/public/textures/chipped/squished_cute_jack_o_lantern.png b/public/textures/chipped/squished_cute_jack_o_lantern.png new file mode 100644 index 00000000..6cefa516 Binary files /dev/null and b/public/textures/chipped/squished_cute_jack_o_lantern.png differ diff --git a/public/textures/chipped/stacked_acacia_planks.png b/public/textures/chipped/stacked_acacia_planks.png new file mode 100644 index 00000000..01257d59 Binary files /dev/null and b/public/textures/chipped/stacked_acacia_planks.png differ diff --git a/public/textures/chipped/stacked_amethyst_block_bricks.png b/public/textures/chipped/stacked_amethyst_block_bricks.png new file mode 100644 index 00000000..78158083 Binary files /dev/null and b/public/textures/chipped/stacked_amethyst_block_bricks.png differ diff --git a/public/textures/chipped/stacked_ancient_debris_bricks.png b/public/textures/chipped/stacked_ancient_debris_bricks.png new file mode 100644 index 00000000..a80656e8 Binary files /dev/null and b/public/textures/chipped/stacked_ancient_debris_bricks.png differ diff --git a/public/textures/chipped/stacked_andesite_bricks.png b/public/textures/chipped/stacked_andesite_bricks.png new file mode 100644 index 00000000..2aae7d71 Binary files /dev/null and b/public/textures/chipped/stacked_andesite_bricks.png differ diff --git a/public/textures/chipped/stacked_bamboo_planks.png b/public/textures/chipped/stacked_bamboo_planks.png new file mode 100644 index 00000000..3b18ee3c Binary files /dev/null and b/public/textures/chipped/stacked_bamboo_planks.png differ diff --git a/public/textures/chipped/stacked_basalt_bricks.png b/public/textures/chipped/stacked_basalt_bricks.png new file mode 100644 index 00000000..035bc4b0 Binary files /dev/null and b/public/textures/chipped/stacked_basalt_bricks.png differ diff --git a/public/textures/chipped/stacked_birch_planks.png b/public/textures/chipped/stacked_birch_planks.png new file mode 100644 index 00000000..8644ad65 Binary files /dev/null and b/public/textures/chipped/stacked_birch_planks.png differ diff --git a/public/textures/chipped/stacked_black_concrete.png b/public/textures/chipped/stacked_black_concrete.png new file mode 100644 index 00000000..76f85c05 Binary files /dev/null and b/public/textures/chipped/stacked_black_concrete.png differ diff --git a/public/textures/chipped/stacked_blackstone_bricks.png b/public/textures/chipped/stacked_blackstone_bricks.png new file mode 100644 index 00000000..fc337ad5 Binary files /dev/null and b/public/textures/chipped/stacked_blackstone_bricks.png differ diff --git a/public/textures/chipped/stacked_blue_concrete.png b/public/textures/chipped/stacked_blue_concrete.png new file mode 100644 index 00000000..4294302c Binary files /dev/null and b/public/textures/chipped/stacked_blue_concrete.png differ diff --git a/public/textures/chipped/stacked_blue_ice_bricks.png b/public/textures/chipped/stacked_blue_ice_bricks.png new file mode 100644 index 00000000..a7d644dc Binary files /dev/null and b/public/textures/chipped/stacked_blue_ice_bricks.png differ diff --git a/public/textures/chipped/stacked_borderless_bricks_bricks.png b/public/textures/chipped/stacked_borderless_bricks_bricks.png new file mode 100644 index 00000000..481e05c2 Binary files /dev/null and b/public/textures/chipped/stacked_borderless_bricks_bricks.png differ diff --git a/public/textures/chipped/stacked_bricks_bricks.png b/public/textures/chipped/stacked_bricks_bricks.png new file mode 100644 index 00000000..d46ef093 Binary files /dev/null and b/public/textures/chipped/stacked_bricks_bricks.png differ diff --git a/public/textures/chipped/stacked_brown_concrete.png b/public/textures/chipped/stacked_brown_concrete.png new file mode 100644 index 00000000..f02a5cb6 Binary files /dev/null and b/public/textures/chipped/stacked_brown_concrete.png differ diff --git a/public/textures/chipped/stacked_calcite_bricks.png b/public/textures/chipped/stacked_calcite_bricks.png new file mode 100644 index 00000000..a73a167d Binary files /dev/null and b/public/textures/chipped/stacked_calcite_bricks.png differ diff --git a/public/textures/chipped/stacked_cherry_planks.png b/public/textures/chipped/stacked_cherry_planks.png new file mode 100644 index 00000000..477c10af Binary files /dev/null and b/public/textures/chipped/stacked_cherry_planks.png differ diff --git a/public/textures/chipped/stacked_clay_bricks.png b/public/textures/chipped/stacked_clay_bricks.png new file mode 100644 index 00000000..2b944995 Binary files /dev/null and b/public/textures/chipped/stacked_clay_bricks.png differ diff --git a/public/textures/chipped/stacked_coal_block_bricks.png b/public/textures/chipped/stacked_coal_block_bricks.png new file mode 100644 index 00000000..2ac18e68 Binary files /dev/null and b/public/textures/chipped/stacked_coal_block_bricks.png differ diff --git a/public/textures/chipped/stacked_cobblestone_bricks.png b/public/textures/chipped/stacked_cobblestone_bricks.png new file mode 100644 index 00000000..0fe466e1 Binary files /dev/null and b/public/textures/chipped/stacked_cobblestone_bricks.png differ diff --git a/public/textures/chipped/stacked_crimson_planks.png b/public/textures/chipped/stacked_crimson_planks.png new file mode 100644 index 00000000..9953633c Binary files /dev/null and b/public/textures/chipped/stacked_crimson_planks.png differ diff --git a/public/textures/chipped/stacked_crying_obsidian_bricks.png b/public/textures/chipped/stacked_crying_obsidian_bricks.png new file mode 100644 index 00000000..c8612208 Binary files /dev/null and b/public/textures/chipped/stacked_crying_obsidian_bricks.png differ diff --git a/public/textures/chipped/stacked_cyan_concrete.png b/public/textures/chipped/stacked_cyan_concrete.png new file mode 100644 index 00000000..57637c72 Binary files /dev/null and b/public/textures/chipped/stacked_cyan_concrete.png differ diff --git a/public/textures/chipped/stacked_dark_oak_planks.png b/public/textures/chipped/stacked_dark_oak_planks.png new file mode 100644 index 00000000..c05b8b8d Binary files /dev/null and b/public/textures/chipped/stacked_dark_oak_planks.png differ diff --git a/public/textures/chipped/stacked_dark_prismarine_bricks.png b/public/textures/chipped/stacked_dark_prismarine_bricks.png new file mode 100644 index 00000000..bc72297b Binary files /dev/null and b/public/textures/chipped/stacked_dark_prismarine_bricks.png differ diff --git a/public/textures/chipped/stacked_deepslate_bricks.png b/public/textures/chipped/stacked_deepslate_bricks.png new file mode 100644 index 00000000..76423577 Binary files /dev/null and b/public/textures/chipped/stacked_deepslate_bricks.png differ diff --git a/public/textures/chipped/stacked_diamond_block.png b/public/textures/chipped/stacked_diamond_block.png new file mode 100644 index 00000000..d6551df3 Binary files /dev/null and b/public/textures/chipped/stacked_diamond_block.png differ diff --git a/public/textures/chipped/stacked_diorite_bricks.png b/public/textures/chipped/stacked_diorite_bricks.png new file mode 100644 index 00000000..e3991a32 Binary files /dev/null and b/public/textures/chipped/stacked_diorite_bricks.png differ diff --git a/public/textures/chipped/stacked_dirt_bricks.png b/public/textures/chipped/stacked_dirt_bricks.png new file mode 100644 index 00000000..4fc68980 Binary files /dev/null and b/public/textures/chipped/stacked_dirt_bricks.png differ diff --git a/public/textures/chipped/stacked_dripstone_block_bricks.png b/public/textures/chipped/stacked_dripstone_block_bricks.png new file mode 100644 index 00000000..15436dc3 Binary files /dev/null and b/public/textures/chipped/stacked_dripstone_block_bricks.png differ diff --git a/public/textures/chipped/stacked_emerald_block.png b/public/textures/chipped/stacked_emerald_block.png new file mode 100644 index 00000000..c3640da4 Binary files /dev/null and b/public/textures/chipped/stacked_emerald_block.png differ diff --git a/public/textures/chipped/stacked_end_stone_bricks.png b/public/textures/chipped/stacked_end_stone_bricks.png new file mode 100644 index 00000000..9a5895a9 Binary files /dev/null and b/public/textures/chipped/stacked_end_stone_bricks.png differ diff --git a/public/textures/chipped/stacked_gilded_blackstone_bricks.png b/public/textures/chipped/stacked_gilded_blackstone_bricks.png new file mode 100644 index 00000000..be09cad1 Binary files /dev/null and b/public/textures/chipped/stacked_gilded_blackstone_bricks.png differ diff --git a/public/textures/chipped/stacked_gold_block.png b/public/textures/chipped/stacked_gold_block.png new file mode 100644 index 00000000..d617eff5 Binary files /dev/null and b/public/textures/chipped/stacked_gold_block.png differ diff --git a/public/textures/chipped/stacked_granite_bricks.png b/public/textures/chipped/stacked_granite_bricks.png new file mode 100644 index 00000000..32f7353a Binary files /dev/null and b/public/textures/chipped/stacked_granite_bricks.png differ diff --git a/public/textures/chipped/stacked_gray_concrete.png b/public/textures/chipped/stacked_gray_concrete.png new file mode 100644 index 00000000..5c7a6603 Binary files /dev/null and b/public/textures/chipped/stacked_gray_concrete.png differ diff --git a/public/textures/chipped/stacked_green_concrete.png b/public/textures/chipped/stacked_green_concrete.png new file mode 100644 index 00000000..26d16158 Binary files /dev/null and b/public/textures/chipped/stacked_green_concrete.png differ diff --git a/public/textures/chipped/stacked_ice_bricks.png b/public/textures/chipped/stacked_ice_bricks.png new file mode 100644 index 00000000..1403b9e9 Binary files /dev/null and b/public/textures/chipped/stacked_ice_bricks.png differ diff --git a/public/textures/chipped/stacked_iron_block.png b/public/textures/chipped/stacked_iron_block.png new file mode 100644 index 00000000..9fd35824 Binary files /dev/null and b/public/textures/chipped/stacked_iron_block.png differ diff --git a/public/textures/chipped/stacked_jungle_planks.png b/public/textures/chipped/stacked_jungle_planks.png new file mode 100644 index 00000000..ff0a242b Binary files /dev/null and b/public/textures/chipped/stacked_jungle_planks.png differ diff --git a/public/textures/chipped/stacked_lapis_block_bricks.png b/public/textures/chipped/stacked_lapis_block_bricks.png new file mode 100644 index 00000000..1b4cee8f Binary files /dev/null and b/public/textures/chipped/stacked_lapis_block_bricks.png differ diff --git a/public/textures/chipped/stacked_light_blue_concrete.png b/public/textures/chipped/stacked_light_blue_concrete.png new file mode 100644 index 00000000..223d7db7 Binary files /dev/null and b/public/textures/chipped/stacked_light_blue_concrete.png differ diff --git a/public/textures/chipped/stacked_light_gray_concrete.png b/public/textures/chipped/stacked_light_gray_concrete.png new file mode 100644 index 00000000..1bd6095d Binary files /dev/null and b/public/textures/chipped/stacked_light_gray_concrete.png differ diff --git a/public/textures/chipped/stacked_lime_concrete.png b/public/textures/chipped/stacked_lime_concrete.png new file mode 100644 index 00000000..031f0b2c Binary files /dev/null and b/public/textures/chipped/stacked_lime_concrete.png differ diff --git a/public/textures/chipped/stacked_lodestone_bricks.png b/public/textures/chipped/stacked_lodestone_bricks.png new file mode 100644 index 00000000..25fd080e Binary files /dev/null and b/public/textures/chipped/stacked_lodestone_bricks.png differ diff --git a/public/textures/chipped/stacked_magenta_concrete.png b/public/textures/chipped/stacked_magenta_concrete.png new file mode 100644 index 00000000..1d85f0f8 Binary files /dev/null and b/public/textures/chipped/stacked_magenta_concrete.png differ diff --git a/public/textures/chipped/stacked_magma_block_bricks.png b/public/textures/chipped/stacked_magma_block_bricks.png new file mode 100644 index 00000000..07b8bed6 Binary files /dev/null and b/public/textures/chipped/stacked_magma_block_bricks.png differ diff --git a/public/textures/chipped/stacked_mangrove_planks.png b/public/textures/chipped/stacked_mangrove_planks.png new file mode 100644 index 00000000..f4d7f9c2 Binary files /dev/null and b/public/textures/chipped/stacked_mangrove_planks.png differ diff --git a/public/textures/chipped/stacked_mossy_cobblestone_bricks.png b/public/textures/chipped/stacked_mossy_cobblestone_bricks.png new file mode 100644 index 00000000..82610692 Binary files /dev/null and b/public/textures/chipped/stacked_mossy_cobblestone_bricks.png differ diff --git a/public/textures/chipped/stacked_mossy_stone_bricks_bricks.png b/public/textures/chipped/stacked_mossy_stone_bricks_bricks.png new file mode 100644 index 00000000..c12c1f92 Binary files /dev/null and b/public/textures/chipped/stacked_mossy_stone_bricks_bricks.png differ diff --git a/public/textures/chipped/stacked_mud_bricks.png b/public/textures/chipped/stacked_mud_bricks.png new file mode 100644 index 00000000..7cda9251 Binary files /dev/null and b/public/textures/chipped/stacked_mud_bricks.png differ diff --git a/public/textures/chipped/stacked_mud_bricks_bricks.png b/public/textures/chipped/stacked_mud_bricks_bricks.png new file mode 100644 index 00000000..5910dde8 Binary files /dev/null and b/public/textures/chipped/stacked_mud_bricks_bricks.png differ diff --git a/public/textures/chipped/stacked_nether_bricks_bricks.png b/public/textures/chipped/stacked_nether_bricks_bricks.png new file mode 100644 index 00000000..f9dcc690 Binary files /dev/null and b/public/textures/chipped/stacked_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/stacked_netherite_block.png b/public/textures/chipped/stacked_netherite_block.png new file mode 100644 index 00000000..cf14fbb9 Binary files /dev/null and b/public/textures/chipped/stacked_netherite_block.png differ diff --git a/public/textures/chipped/stacked_netherrack_bricks.png b/public/textures/chipped/stacked_netherrack_bricks.png new file mode 100644 index 00000000..800656c6 Binary files /dev/null and b/public/textures/chipped/stacked_netherrack_bricks.png differ diff --git a/public/textures/chipped/stacked_oak_planks.png b/public/textures/chipped/stacked_oak_planks.png new file mode 100644 index 00000000..c1ce389f Binary files /dev/null and b/public/textures/chipped/stacked_oak_planks.png differ diff --git a/public/textures/chipped/stacked_obsidian_bricks.png b/public/textures/chipped/stacked_obsidian_bricks.png new file mode 100644 index 00000000..59bd610f Binary files /dev/null and b/public/textures/chipped/stacked_obsidian_bricks.png differ diff --git a/public/textures/chipped/stacked_orange_concrete.png b/public/textures/chipped/stacked_orange_concrete.png new file mode 100644 index 00000000..6ace1a93 Binary files /dev/null and b/public/textures/chipped/stacked_orange_concrete.png differ diff --git a/public/textures/chipped/stacked_packed_ice_bricks.png b/public/textures/chipped/stacked_packed_ice_bricks.png new file mode 100644 index 00000000..5eb0ddb9 Binary files /dev/null and b/public/textures/chipped/stacked_packed_ice_bricks.png differ diff --git a/public/textures/chipped/stacked_packed_mud_bricks.png b/public/textures/chipped/stacked_packed_mud_bricks.png new file mode 100644 index 00000000..f7dbf6c3 Binary files /dev/null and b/public/textures/chipped/stacked_packed_mud_bricks.png differ diff --git a/public/textures/chipped/stacked_pink_concrete.png b/public/textures/chipped/stacked_pink_concrete.png new file mode 100644 index 00000000..1c0672f7 Binary files /dev/null and b/public/textures/chipped/stacked_pink_concrete.png differ diff --git a/public/textures/chipped/stacked_prismarine_bricks.png b/public/textures/chipped/stacked_prismarine_bricks.png new file mode 100644 index 00000000..d791a0b1 Binary files /dev/null and b/public/textures/chipped/stacked_prismarine_bricks.png differ diff --git a/public/textures/chipped/stacked_purple_concrete.png b/public/textures/chipped/stacked_purple_concrete.png new file mode 100644 index 00000000..a967056c Binary files /dev/null and b/public/textures/chipped/stacked_purple_concrete.png differ diff --git a/public/textures/chipped/stacked_purpur_block_bricks.png b/public/textures/chipped/stacked_purpur_block_bricks.png new file mode 100644 index 00000000..ea2ad32a Binary files /dev/null and b/public/textures/chipped/stacked_purpur_block_bricks.png differ diff --git a/public/textures/chipped/stacked_quartz_block_bricks.png b/public/textures/chipped/stacked_quartz_block_bricks.png new file mode 100644 index 00000000..bff9a844 Binary files /dev/null and b/public/textures/chipped/stacked_quartz_block_bricks.png differ diff --git a/public/textures/chipped/stacked_raw_copper_block_bricks.png b/public/textures/chipped/stacked_raw_copper_block_bricks.png new file mode 100644 index 00000000..264f14e6 Binary files /dev/null and b/public/textures/chipped/stacked_raw_copper_block_bricks.png differ diff --git a/public/textures/chipped/stacked_raw_gold_block_bricks.png b/public/textures/chipped/stacked_raw_gold_block_bricks.png new file mode 100644 index 00000000..d42ae582 Binary files /dev/null and b/public/textures/chipped/stacked_raw_gold_block_bricks.png differ diff --git a/public/textures/chipped/stacked_raw_iron_block_bricks.png b/public/textures/chipped/stacked_raw_iron_block_bricks.png new file mode 100644 index 00000000..c4e03e39 Binary files /dev/null and b/public/textures/chipped/stacked_raw_iron_block_bricks.png differ diff --git a/public/textures/chipped/stacked_red_concrete.png b/public/textures/chipped/stacked_red_concrete.png new file mode 100644 index 00000000..d6490bb2 Binary files /dev/null and b/public/textures/chipped/stacked_red_concrete.png differ diff --git a/public/textures/chipped/stacked_red_nether_bricks_bricks.png b/public/textures/chipped/stacked_red_nether_bricks_bricks.png new file mode 100644 index 00000000..42dc30f4 Binary files /dev/null and b/public/textures/chipped/stacked_red_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/stacked_red_sandstone_bricks.png b/public/textures/chipped/stacked_red_sandstone_bricks.png new file mode 100644 index 00000000..c11eb2b1 Binary files /dev/null and b/public/textures/chipped/stacked_red_sandstone_bricks.png differ diff --git a/public/textures/chipped/stacked_redstone_block_bricks.png b/public/textures/chipped/stacked_redstone_block_bricks.png new file mode 100644 index 00000000..d3aaccb5 Binary files /dev/null and b/public/textures/chipped/stacked_redstone_block_bricks.png differ diff --git a/public/textures/chipped/stacked_sandstone_bricks.png b/public/textures/chipped/stacked_sandstone_bricks.png new file mode 100644 index 00000000..64478352 Binary files /dev/null and b/public/textures/chipped/stacked_sandstone_bricks.png differ diff --git a/public/textures/chipped/stacked_smooth_stone_bricks.png b/public/textures/chipped/stacked_smooth_stone_bricks.png new file mode 100644 index 00000000..d4fd6565 Binary files /dev/null and b/public/textures/chipped/stacked_smooth_stone_bricks.png differ diff --git a/public/textures/chipped/stacked_snow_block_bricks.png b/public/textures/chipped/stacked_snow_block_bricks.png new file mode 100644 index 00000000..9f6d0525 Binary files /dev/null and b/public/textures/chipped/stacked_snow_block_bricks.png differ diff --git a/public/textures/chipped/stacked_spruce_planks.png b/public/textures/chipped/stacked_spruce_planks.png new file mode 100644 index 00000000..3140a2af Binary files /dev/null and b/public/textures/chipped/stacked_spruce_planks.png differ diff --git a/public/textures/chipped/stacked_stone_bricks.png b/public/textures/chipped/stacked_stone_bricks.png new file mode 100644 index 00000000..218345a7 Binary files /dev/null and b/public/textures/chipped/stacked_stone_bricks.png differ diff --git a/public/textures/chipped/stacked_tuff_bricks.png b/public/textures/chipped/stacked_tuff_bricks.png new file mode 100644 index 00000000..09ed20a3 Binary files /dev/null and b/public/textures/chipped/stacked_tuff_bricks.png differ diff --git a/public/textures/chipped/stacked_warped_planks.png b/public/textures/chipped/stacked_warped_planks.png new file mode 100644 index 00000000..0a520f1b Binary files /dev/null and b/public/textures/chipped/stacked_warped_planks.png differ diff --git a/public/textures/chipped/stacked_waxed_copper_block.png b/public/textures/chipped/stacked_waxed_copper_block.png new file mode 100644 index 00000000..19b7ad14 Binary files /dev/null and b/public/textures/chipped/stacked_waxed_copper_block.png differ diff --git a/public/textures/chipped/stacked_waxed_exposed_copper.png b/public/textures/chipped/stacked_waxed_exposed_copper.png new file mode 100644 index 00000000..1784f3dd Binary files /dev/null and b/public/textures/chipped/stacked_waxed_exposed_copper.png differ diff --git a/public/textures/chipped/stacked_waxed_oxidized_copper.png b/public/textures/chipped/stacked_waxed_oxidized_copper.png new file mode 100644 index 00000000..b0266909 Binary files /dev/null and b/public/textures/chipped/stacked_waxed_oxidized_copper.png differ diff --git a/public/textures/chipped/stacked_waxed_weathered_copper.png b/public/textures/chipped/stacked_waxed_weathered_copper.png new file mode 100644 index 00000000..00f4bdf4 Binary files /dev/null and b/public/textures/chipped/stacked_waxed_weathered_copper.png differ diff --git a/public/textures/chipped/stacked_white_concrete.png b/public/textures/chipped/stacked_white_concrete.png new file mode 100644 index 00000000..625227c0 Binary files /dev/null and b/public/textures/chipped/stacked_white_concrete.png differ diff --git a/public/textures/chipped/stacked_yellow_concrete.png b/public/textures/chipped/stacked_yellow_concrete.png new file mode 100644 index 00000000..574d89e0 Binary files /dev/null and b/public/textures/chipped/stacked_yellow_concrete.png differ diff --git a/public/textures/chipped/star_mud.png b/public/textures/chipped/star_mud.png new file mode 100644 index 00000000..cea0d336 Binary files /dev/null and b/public/textures/chipped/star_mud.png differ diff --git a/public/textures/chipped/star_mud_bricks.png b/public/textures/chipped/star_mud_bricks.png new file mode 100644 index 00000000..46a9f6fe Binary files /dev/null and b/public/textures/chipped/star_mud_bricks.png differ diff --git a/public/textures/chipped/star_packed_mud.png b/public/textures/chipped/star_packed_mud.png new file mode 100644 index 00000000..1883628b Binary files /dev/null and b/public/textures/chipped/star_packed_mud.png differ diff --git a/public/textures/chipped/starry_black_glazed_terracotta.png b/public/textures/chipped/starry_black_glazed_terracotta.png new file mode 100644 index 00000000..22e56440 Binary files /dev/null and b/public/textures/chipped/starry_black_glazed_terracotta.png differ diff --git a/public/textures/chipped/starry_black_terracotta.png b/public/textures/chipped/starry_black_terracotta.png new file mode 100644 index 00000000..1d87f06a Binary files /dev/null and b/public/textures/chipped/starry_black_terracotta.png differ diff --git a/public/textures/chipped/starry_blue_glazed_terracotta.png b/public/textures/chipped/starry_blue_glazed_terracotta.png new file mode 100644 index 00000000..428806f1 Binary files /dev/null and b/public/textures/chipped/starry_blue_glazed_terracotta.png differ diff --git a/public/textures/chipped/starry_blue_terracotta.png b/public/textures/chipped/starry_blue_terracotta.png new file mode 100644 index 00000000..81358215 Binary files /dev/null and b/public/textures/chipped/starry_blue_terracotta.png differ diff --git a/public/textures/chipped/starry_brown_glazed_terracotta.png b/public/textures/chipped/starry_brown_glazed_terracotta.png new file mode 100644 index 00000000..f5fc5b2c Binary files /dev/null and b/public/textures/chipped/starry_brown_glazed_terracotta.png differ diff --git a/public/textures/chipped/starry_brown_terracotta.png b/public/textures/chipped/starry_brown_terracotta.png new file mode 100644 index 00000000..ecbc4018 Binary files /dev/null and b/public/textures/chipped/starry_brown_terracotta.png differ diff --git a/public/textures/chipped/starry_cyan_glazed_terracotta.png b/public/textures/chipped/starry_cyan_glazed_terracotta.png new file mode 100644 index 00000000..5d9cf6f4 Binary files /dev/null and b/public/textures/chipped/starry_cyan_glazed_terracotta.png differ diff --git a/public/textures/chipped/starry_cyan_terracotta.png b/public/textures/chipped/starry_cyan_terracotta.png new file mode 100644 index 00000000..ac2cab0d Binary files /dev/null and b/public/textures/chipped/starry_cyan_terracotta.png differ diff --git a/public/textures/chipped/starry_gray_glazed_terracotta.png b/public/textures/chipped/starry_gray_glazed_terracotta.png new file mode 100644 index 00000000..154e0b3e Binary files /dev/null and b/public/textures/chipped/starry_gray_glazed_terracotta.png differ diff --git a/public/textures/chipped/starry_gray_terracotta.png b/public/textures/chipped/starry_gray_terracotta.png new file mode 100644 index 00000000..38413557 Binary files /dev/null and b/public/textures/chipped/starry_gray_terracotta.png differ diff --git a/public/textures/chipped/starry_green_glazed_terracotta.png b/public/textures/chipped/starry_green_glazed_terracotta.png new file mode 100644 index 00000000..5ef00da2 Binary files /dev/null and b/public/textures/chipped/starry_green_glazed_terracotta.png differ diff --git a/public/textures/chipped/starry_green_terracotta.png b/public/textures/chipped/starry_green_terracotta.png new file mode 100644 index 00000000..0f68680e Binary files /dev/null and b/public/textures/chipped/starry_green_terracotta.png differ diff --git a/public/textures/chipped/starry_light_blue_glazed_terracotta.png b/public/textures/chipped/starry_light_blue_glazed_terracotta.png new file mode 100644 index 00000000..ed407f43 Binary files /dev/null and b/public/textures/chipped/starry_light_blue_glazed_terracotta.png differ diff --git a/public/textures/chipped/starry_light_blue_terracotta.png b/public/textures/chipped/starry_light_blue_terracotta.png new file mode 100644 index 00000000..438c98f4 Binary files /dev/null and b/public/textures/chipped/starry_light_blue_terracotta.png differ diff --git a/public/textures/chipped/starry_light_gray_glazed_terracotta.png b/public/textures/chipped/starry_light_gray_glazed_terracotta.png new file mode 100644 index 00000000..f3c1fe9f Binary files /dev/null and b/public/textures/chipped/starry_light_gray_glazed_terracotta.png differ diff --git a/public/textures/chipped/starry_light_gray_terracotta.png b/public/textures/chipped/starry_light_gray_terracotta.png new file mode 100644 index 00000000..cff86f05 Binary files /dev/null and b/public/textures/chipped/starry_light_gray_terracotta.png differ diff --git a/public/textures/chipped/starry_lime_glazed_terracotta.png b/public/textures/chipped/starry_lime_glazed_terracotta.png new file mode 100644 index 00000000..e1120aec Binary files /dev/null and b/public/textures/chipped/starry_lime_glazed_terracotta.png differ diff --git a/public/textures/chipped/starry_lime_terracotta.png b/public/textures/chipped/starry_lime_terracotta.png new file mode 100644 index 00000000..1fcae68c Binary files /dev/null and b/public/textures/chipped/starry_lime_terracotta.png differ diff --git a/public/textures/chipped/starry_magenta_glazed_terracotta.png b/public/textures/chipped/starry_magenta_glazed_terracotta.png new file mode 100644 index 00000000..c3d11cb0 Binary files /dev/null and b/public/textures/chipped/starry_magenta_glazed_terracotta.png differ diff --git a/public/textures/chipped/starry_magenta_terracotta.png b/public/textures/chipped/starry_magenta_terracotta.png new file mode 100644 index 00000000..f5e43fec Binary files /dev/null and b/public/textures/chipped/starry_magenta_terracotta.png differ diff --git a/public/textures/chipped/starry_orange_glazed_terracotta.png b/public/textures/chipped/starry_orange_glazed_terracotta.png new file mode 100644 index 00000000..9e75333e Binary files /dev/null and b/public/textures/chipped/starry_orange_glazed_terracotta.png differ diff --git a/public/textures/chipped/starry_orange_terracotta.png b/public/textures/chipped/starry_orange_terracotta.png new file mode 100644 index 00000000..77323300 Binary files /dev/null and b/public/textures/chipped/starry_orange_terracotta.png differ diff --git a/public/textures/chipped/starry_pink_glazed_terracotta.png b/public/textures/chipped/starry_pink_glazed_terracotta.png new file mode 100644 index 00000000..c59c8564 Binary files /dev/null and b/public/textures/chipped/starry_pink_glazed_terracotta.png differ diff --git a/public/textures/chipped/starry_pink_terracotta.png b/public/textures/chipped/starry_pink_terracotta.png new file mode 100644 index 00000000..61c5620b Binary files /dev/null and b/public/textures/chipped/starry_pink_terracotta.png differ diff --git a/public/textures/chipped/starry_purple_glazed_terracotta.png b/public/textures/chipped/starry_purple_glazed_terracotta.png new file mode 100644 index 00000000..608a9fc2 Binary files /dev/null and b/public/textures/chipped/starry_purple_glazed_terracotta.png differ diff --git a/public/textures/chipped/starry_purple_terracotta.png b/public/textures/chipped/starry_purple_terracotta.png new file mode 100644 index 00000000..33412441 Binary files /dev/null and b/public/textures/chipped/starry_purple_terracotta.png differ diff --git a/public/textures/chipped/starry_red_glazed_terracotta.png b/public/textures/chipped/starry_red_glazed_terracotta.png new file mode 100644 index 00000000..592909a2 Binary files /dev/null and b/public/textures/chipped/starry_red_glazed_terracotta.png differ diff --git a/public/textures/chipped/starry_red_terracotta.png b/public/textures/chipped/starry_red_terracotta.png new file mode 100644 index 00000000..a5703e0f Binary files /dev/null and b/public/textures/chipped/starry_red_terracotta.png differ diff --git a/public/textures/chipped/starry_terracotta.png b/public/textures/chipped/starry_terracotta.png new file mode 100644 index 00000000..6c0082ae Binary files /dev/null and b/public/textures/chipped/starry_terracotta.png differ diff --git a/public/textures/chipped/starry_white_glazed_terracotta.png b/public/textures/chipped/starry_white_glazed_terracotta.png new file mode 100644 index 00000000..28656683 Binary files /dev/null and b/public/textures/chipped/starry_white_glazed_terracotta.png differ diff --git a/public/textures/chipped/starry_white_terracotta.png b/public/textures/chipped/starry_white_terracotta.png new file mode 100644 index 00000000..8ae603a6 Binary files /dev/null and b/public/textures/chipped/starry_white_terracotta.png differ diff --git a/public/textures/chipped/starry_yellow_glazed_terracotta.png b/public/textures/chipped/starry_yellow_glazed_terracotta.png new file mode 100644 index 00000000..d4fd93ea Binary files /dev/null and b/public/textures/chipped/starry_yellow_glazed_terracotta.png differ diff --git a/public/textures/chipped/starry_yellow_terracotta.png b/public/textures/chipped/starry_yellow_terracotta.png new file mode 100644 index 00000000..e2b4cbcb Binary files /dev/null and b/public/textures/chipped/starry_yellow_terracotta.png differ diff --git a/public/textures/chipped/stem_warped_roots.png b/public/textures/chipped/stem_warped_roots.png new file mode 100644 index 00000000..fb5ba34a Binary files /dev/null and b/public/textures/chipped/stem_warped_roots.png differ diff --git a/public/textures/chipped/stepped_iron_bars.png b/public/textures/chipped/stepped_iron_bars.png new file mode 100644 index 00000000..879da212 Binary files /dev/null and b/public/textures/chipped/stepped_iron_bars.png differ diff --git a/public/textures/chipped/stern_stripped_acacia_log.png b/public/textures/chipped/stern_stripped_acacia_log.png new file mode 100644 index 00000000..bd274bf4 Binary files /dev/null and b/public/textures/chipped/stern_stripped_acacia_log.png differ diff --git a/public/textures/chipped/stern_stripped_birch_log.png b/public/textures/chipped/stern_stripped_birch_log.png new file mode 100644 index 00000000..fe5f8654 Binary files /dev/null and b/public/textures/chipped/stern_stripped_birch_log.png differ diff --git a/public/textures/chipped/stern_stripped_cherry_log.png b/public/textures/chipped/stern_stripped_cherry_log.png new file mode 100644 index 00000000..fcb3decb Binary files /dev/null and b/public/textures/chipped/stern_stripped_cherry_log.png differ diff --git a/public/textures/chipped/stern_stripped_crimson_stem.png b/public/textures/chipped/stern_stripped_crimson_stem.png new file mode 100644 index 00000000..918cd263 Binary files /dev/null and b/public/textures/chipped/stern_stripped_crimson_stem.png differ diff --git a/public/textures/chipped/stern_stripped_dark_oak_log.png b/public/textures/chipped/stern_stripped_dark_oak_log.png new file mode 100644 index 00000000..cd07c637 Binary files /dev/null and b/public/textures/chipped/stern_stripped_dark_oak_log.png differ diff --git a/public/textures/chipped/stern_stripped_jungle_log.png b/public/textures/chipped/stern_stripped_jungle_log.png new file mode 100644 index 00000000..434c11b9 Binary files /dev/null and b/public/textures/chipped/stern_stripped_jungle_log.png differ diff --git a/public/textures/chipped/stern_stripped_mangrove_log.png b/public/textures/chipped/stern_stripped_mangrove_log.png new file mode 100644 index 00000000..b9c5ce00 Binary files /dev/null and b/public/textures/chipped/stern_stripped_mangrove_log.png differ diff --git a/public/textures/chipped/stern_stripped_oak_log.png b/public/textures/chipped/stern_stripped_oak_log.png new file mode 100644 index 00000000..2a552ee4 Binary files /dev/null and b/public/textures/chipped/stern_stripped_oak_log.png differ diff --git a/public/textures/chipped/stern_stripped_spruce_log.png b/public/textures/chipped/stern_stripped_spruce_log.png new file mode 100644 index 00000000..08d30bcc Binary files /dev/null and b/public/textures/chipped/stern_stripped_spruce_log.png differ diff --git a/public/textures/chipped/stern_stripped_warped_stem.png b/public/textures/chipped/stern_stripped_warped_stem.png new file mode 100644 index 00000000..988f586d Binary files /dev/null and b/public/textures/chipped/stern_stripped_warped_stem.png differ diff --git a/public/textures/chipped/sticky_melon.png b/public/textures/chipped/sticky_melon.png new file mode 100644 index 00000000..994ff5c4 Binary files /dev/null and b/public/textures/chipped/sticky_melon.png differ diff --git a/public/textures/chipped/stone_mini_tiles.png b/public/textures/chipped/stone_mini_tiles.png new file mode 100644 index 00000000..0ac8a181 Binary files /dev/null and b/public/textures/chipped/stone_mini_tiles.png differ diff --git a/public/textures/chipped/stone_pillar.png b/public/textures/chipped/stone_pillar.png new file mode 100644 index 00000000..9a14726f Binary files /dev/null and b/public/textures/chipped/stone_pillar.png differ diff --git a/public/textures/chipped/stone_pillar_top.png b/public/textures/chipped/stone_pillar_top.png new file mode 100644 index 00000000..826bd1b5 Binary files /dev/null and b/public/textures/chipped/stone_pillar_top.png differ diff --git a/public/textures/chipped/stone_pointed_dripstone.png b/public/textures/chipped/stone_pointed_dripstone.png new file mode 100644 index 00000000..1e72e8f0 Binary files /dev/null and b/public/textures/chipped/stone_pointed_dripstone.png differ diff --git a/public/textures/chipped/stone_scales.png b/public/textures/chipped/stone_scales.png new file mode 100644 index 00000000..44176566 Binary files /dev/null and b/public/textures/chipped/stone_scales.png differ diff --git a/public/textures/chipped/stop_black_concrete.png b/public/textures/chipped/stop_black_concrete.png new file mode 100644 index 00000000..744dce51 Binary files /dev/null and b/public/textures/chipped/stop_black_concrete.png differ diff --git a/public/textures/chipped/stop_blue_concrete.png b/public/textures/chipped/stop_blue_concrete.png new file mode 100644 index 00000000..7ba42b5b Binary files /dev/null and b/public/textures/chipped/stop_blue_concrete.png differ diff --git a/public/textures/chipped/stop_brown_concrete.png b/public/textures/chipped/stop_brown_concrete.png new file mode 100644 index 00000000..cfc17745 Binary files /dev/null and b/public/textures/chipped/stop_brown_concrete.png differ diff --git a/public/textures/chipped/stop_cyan_concrete.png b/public/textures/chipped/stop_cyan_concrete.png new file mode 100644 index 00000000..7b44ffd6 Binary files /dev/null and b/public/textures/chipped/stop_cyan_concrete.png differ diff --git a/public/textures/chipped/stop_gray_concrete.png b/public/textures/chipped/stop_gray_concrete.png new file mode 100644 index 00000000..60b7c2de Binary files /dev/null and b/public/textures/chipped/stop_gray_concrete.png differ diff --git a/public/textures/chipped/stop_green_concrete.png b/public/textures/chipped/stop_green_concrete.png new file mode 100644 index 00000000..3e5d3877 Binary files /dev/null and b/public/textures/chipped/stop_green_concrete.png differ diff --git a/public/textures/chipped/stop_light_blue_concrete.png b/public/textures/chipped/stop_light_blue_concrete.png new file mode 100644 index 00000000..7cd98ddd Binary files /dev/null and b/public/textures/chipped/stop_light_blue_concrete.png differ diff --git a/public/textures/chipped/stop_light_gray_concrete.png b/public/textures/chipped/stop_light_gray_concrete.png new file mode 100644 index 00000000..4a55b2da Binary files /dev/null and b/public/textures/chipped/stop_light_gray_concrete.png differ diff --git a/public/textures/chipped/stop_lime_concrete.png b/public/textures/chipped/stop_lime_concrete.png new file mode 100644 index 00000000..31371832 Binary files /dev/null and b/public/textures/chipped/stop_lime_concrete.png differ diff --git a/public/textures/chipped/stop_magenta_concrete.png b/public/textures/chipped/stop_magenta_concrete.png new file mode 100644 index 00000000..c61ba169 Binary files /dev/null and b/public/textures/chipped/stop_magenta_concrete.png differ diff --git a/public/textures/chipped/stop_orange_concrete.png b/public/textures/chipped/stop_orange_concrete.png new file mode 100644 index 00000000..b55315c0 Binary files /dev/null and b/public/textures/chipped/stop_orange_concrete.png differ diff --git a/public/textures/chipped/stop_pink_concrete.png b/public/textures/chipped/stop_pink_concrete.png new file mode 100644 index 00000000..75418a66 Binary files /dev/null and b/public/textures/chipped/stop_pink_concrete.png differ diff --git a/public/textures/chipped/stop_purple_concrete.png b/public/textures/chipped/stop_purple_concrete.png new file mode 100644 index 00000000..88726b57 Binary files /dev/null and b/public/textures/chipped/stop_purple_concrete.png differ diff --git a/public/textures/chipped/stop_red_concrete.png b/public/textures/chipped/stop_red_concrete.png new file mode 100644 index 00000000..31f5bfc6 Binary files /dev/null and b/public/textures/chipped/stop_red_concrete.png differ diff --git a/public/textures/chipped/stop_white_concrete.png b/public/textures/chipped/stop_white_concrete.png new file mode 100644 index 00000000..d97624e9 Binary files /dev/null and b/public/textures/chipped/stop_white_concrete.png differ diff --git a/public/textures/chipped/stop_yellow_concrete.png b/public/textures/chipped/stop_yellow_concrete.png new file mode 100644 index 00000000..892be55d Binary files /dev/null and b/public/textures/chipped/stop_yellow_concrete.png differ diff --git a/public/textures/chipped/stretched_cobweb.png b/public/textures/chipped/stretched_cobweb.png new file mode 100644 index 00000000..5084fe7e Binary files /dev/null and b/public/textures/chipped/stretched_cobweb.png differ diff --git a/public/textures/chipped/stringed_black_carpet.png b/public/textures/chipped/stringed_black_carpet.png new file mode 100644 index 00000000..dfdd0eaf Binary files /dev/null and b/public/textures/chipped/stringed_black_carpet.png differ diff --git a/public/textures/chipped/stringed_black_wool.png b/public/textures/chipped/stringed_black_wool.png new file mode 100644 index 00000000..19280f80 Binary files /dev/null and b/public/textures/chipped/stringed_black_wool.png differ diff --git a/public/textures/chipped/stringed_blue_carpet.png b/public/textures/chipped/stringed_blue_carpet.png new file mode 100644 index 00000000..ffbfc8e6 Binary files /dev/null and b/public/textures/chipped/stringed_blue_carpet.png differ diff --git a/public/textures/chipped/stringed_blue_wool.png b/public/textures/chipped/stringed_blue_wool.png new file mode 100644 index 00000000..4bb427f6 Binary files /dev/null and b/public/textures/chipped/stringed_blue_wool.png differ diff --git a/public/textures/chipped/stringed_brown_carpet.png b/public/textures/chipped/stringed_brown_carpet.png new file mode 100644 index 00000000..4a989fb7 Binary files /dev/null and b/public/textures/chipped/stringed_brown_carpet.png differ diff --git a/public/textures/chipped/stringed_brown_wool.png b/public/textures/chipped/stringed_brown_wool.png new file mode 100644 index 00000000..8859505d Binary files /dev/null and b/public/textures/chipped/stringed_brown_wool.png differ diff --git a/public/textures/chipped/stringed_cyan_carpet.png b/public/textures/chipped/stringed_cyan_carpet.png new file mode 100644 index 00000000..81dbba53 Binary files /dev/null and b/public/textures/chipped/stringed_cyan_carpet.png differ diff --git a/public/textures/chipped/stringed_cyan_wool.png b/public/textures/chipped/stringed_cyan_wool.png new file mode 100644 index 00000000..8bed5128 Binary files /dev/null and b/public/textures/chipped/stringed_cyan_wool.png differ diff --git a/public/textures/chipped/stringed_gray_carpet.png b/public/textures/chipped/stringed_gray_carpet.png new file mode 100644 index 00000000..5e418336 Binary files /dev/null and b/public/textures/chipped/stringed_gray_carpet.png differ diff --git a/public/textures/chipped/stringed_gray_wool.png b/public/textures/chipped/stringed_gray_wool.png new file mode 100644 index 00000000..bb6e0f9a Binary files /dev/null and b/public/textures/chipped/stringed_gray_wool.png differ diff --git a/public/textures/chipped/stringed_green_carpet.png b/public/textures/chipped/stringed_green_carpet.png new file mode 100644 index 00000000..6c141d28 Binary files /dev/null and b/public/textures/chipped/stringed_green_carpet.png differ diff --git a/public/textures/chipped/stringed_green_wool.png b/public/textures/chipped/stringed_green_wool.png new file mode 100644 index 00000000..4ef3dbd0 Binary files /dev/null and b/public/textures/chipped/stringed_green_wool.png differ diff --git a/public/textures/chipped/stringed_light_blue_carpet.png b/public/textures/chipped/stringed_light_blue_carpet.png new file mode 100644 index 00000000..d068bd1e Binary files /dev/null and b/public/textures/chipped/stringed_light_blue_carpet.png differ diff --git a/public/textures/chipped/stringed_light_blue_wool.png b/public/textures/chipped/stringed_light_blue_wool.png new file mode 100644 index 00000000..4179efeb Binary files /dev/null and b/public/textures/chipped/stringed_light_blue_wool.png differ diff --git a/public/textures/chipped/stringed_light_gray_carpet.png b/public/textures/chipped/stringed_light_gray_carpet.png new file mode 100644 index 00000000..b8fbb467 Binary files /dev/null and b/public/textures/chipped/stringed_light_gray_carpet.png differ diff --git a/public/textures/chipped/stringed_light_gray_wool.png b/public/textures/chipped/stringed_light_gray_wool.png new file mode 100644 index 00000000..ed3dc245 Binary files /dev/null and b/public/textures/chipped/stringed_light_gray_wool.png differ diff --git a/public/textures/chipped/stringed_lime_carpet.png b/public/textures/chipped/stringed_lime_carpet.png new file mode 100644 index 00000000..fd548f53 Binary files /dev/null and b/public/textures/chipped/stringed_lime_carpet.png differ diff --git a/public/textures/chipped/stringed_lime_wool.png b/public/textures/chipped/stringed_lime_wool.png new file mode 100644 index 00000000..9d4699c0 Binary files /dev/null and b/public/textures/chipped/stringed_lime_wool.png differ diff --git a/public/textures/chipped/stringed_magenta_carpet.png b/public/textures/chipped/stringed_magenta_carpet.png new file mode 100644 index 00000000..6a8627fe Binary files /dev/null and b/public/textures/chipped/stringed_magenta_carpet.png differ diff --git a/public/textures/chipped/stringed_magenta_wool.png b/public/textures/chipped/stringed_magenta_wool.png new file mode 100644 index 00000000..68edcb57 Binary files /dev/null and b/public/textures/chipped/stringed_magenta_wool.png differ diff --git a/public/textures/chipped/stringed_orange_carpet.png b/public/textures/chipped/stringed_orange_carpet.png new file mode 100644 index 00000000..b1838aca Binary files /dev/null and b/public/textures/chipped/stringed_orange_carpet.png differ diff --git a/public/textures/chipped/stringed_orange_wool.png b/public/textures/chipped/stringed_orange_wool.png new file mode 100644 index 00000000..03debf2a Binary files /dev/null and b/public/textures/chipped/stringed_orange_wool.png differ diff --git a/public/textures/chipped/stringed_pink_carpet.png b/public/textures/chipped/stringed_pink_carpet.png new file mode 100644 index 00000000..2f1e3428 Binary files /dev/null and b/public/textures/chipped/stringed_pink_carpet.png differ diff --git a/public/textures/chipped/stringed_pink_wool.png b/public/textures/chipped/stringed_pink_wool.png new file mode 100644 index 00000000..ed585800 Binary files /dev/null and b/public/textures/chipped/stringed_pink_wool.png differ diff --git a/public/textures/chipped/stringed_purple_carpet.png b/public/textures/chipped/stringed_purple_carpet.png new file mode 100644 index 00000000..be582799 Binary files /dev/null and b/public/textures/chipped/stringed_purple_carpet.png differ diff --git a/public/textures/chipped/stringed_purple_wool.png b/public/textures/chipped/stringed_purple_wool.png new file mode 100644 index 00000000..8edf8abc Binary files /dev/null and b/public/textures/chipped/stringed_purple_wool.png differ diff --git a/public/textures/chipped/stringed_red_carpet.png b/public/textures/chipped/stringed_red_carpet.png new file mode 100644 index 00000000..4eb78add Binary files /dev/null and b/public/textures/chipped/stringed_red_carpet.png differ diff --git a/public/textures/chipped/stringed_red_wool.png b/public/textures/chipped/stringed_red_wool.png new file mode 100644 index 00000000..83434a31 Binary files /dev/null and b/public/textures/chipped/stringed_red_wool.png differ diff --git a/public/textures/chipped/stringed_white_carpet.png b/public/textures/chipped/stringed_white_carpet.png new file mode 100644 index 00000000..e831b8f8 Binary files /dev/null and b/public/textures/chipped/stringed_white_carpet.png differ diff --git a/public/textures/chipped/stringed_white_wool.png b/public/textures/chipped/stringed_white_wool.png new file mode 100644 index 00000000..70206b55 Binary files /dev/null and b/public/textures/chipped/stringed_white_wool.png differ diff --git a/public/textures/chipped/stringed_yellow_carpet.png b/public/textures/chipped/stringed_yellow_carpet.png new file mode 100644 index 00000000..be0f0de0 Binary files /dev/null and b/public/textures/chipped/stringed_yellow_carpet.png differ diff --git a/public/textures/chipped/stringed_yellow_wool.png b/public/textures/chipped/stringed_yellow_wool.png new file mode 100644 index 00000000..5717dc4a Binary files /dev/null and b/public/textures/chipped/stringed_yellow_wool.png differ diff --git a/public/textures/chipped/stringy_cobweb.png b/public/textures/chipped/stringy_cobweb.png new file mode 100644 index 00000000..95ba3421 Binary files /dev/null and b/public/textures/chipped/stringy_cobweb.png differ diff --git a/public/textures/chipped/striped_black_concrete.png b/public/textures/chipped/striped_black_concrete.png new file mode 100644 index 00000000..f636cd07 Binary files /dev/null and b/public/textures/chipped/striped_black_concrete.png differ diff --git a/public/textures/chipped/striped_blue_concrete.png b/public/textures/chipped/striped_blue_concrete.png new file mode 100644 index 00000000..693df14d Binary files /dev/null and b/public/textures/chipped/striped_blue_concrete.png differ diff --git a/public/textures/chipped/striped_brown_concrete.png b/public/textures/chipped/striped_brown_concrete.png new file mode 100644 index 00000000..83824ada Binary files /dev/null and b/public/textures/chipped/striped_brown_concrete.png differ diff --git a/public/textures/chipped/striped_cyan_concrete.png b/public/textures/chipped/striped_cyan_concrete.png new file mode 100644 index 00000000..ff2c8d5c Binary files /dev/null and b/public/textures/chipped/striped_cyan_concrete.png differ diff --git a/public/textures/chipped/striped_gray_concrete.png b/public/textures/chipped/striped_gray_concrete.png new file mode 100644 index 00000000..711c5bf0 Binary files /dev/null and b/public/textures/chipped/striped_gray_concrete.png differ diff --git a/public/textures/chipped/striped_green_concrete.png b/public/textures/chipped/striped_green_concrete.png new file mode 100644 index 00000000..bdb70442 Binary files /dev/null and b/public/textures/chipped/striped_green_concrete.png differ diff --git a/public/textures/chipped/striped_light_blue_concrete.png b/public/textures/chipped/striped_light_blue_concrete.png new file mode 100644 index 00000000..aa7a72d1 Binary files /dev/null and b/public/textures/chipped/striped_light_blue_concrete.png differ diff --git a/public/textures/chipped/striped_light_gray_concrete.png b/public/textures/chipped/striped_light_gray_concrete.png new file mode 100644 index 00000000..2c9c0cfa Binary files /dev/null and b/public/textures/chipped/striped_light_gray_concrete.png differ diff --git a/public/textures/chipped/striped_lime_concrete.png b/public/textures/chipped/striped_lime_concrete.png new file mode 100644 index 00000000..ca6449ea Binary files /dev/null and b/public/textures/chipped/striped_lime_concrete.png differ diff --git a/public/textures/chipped/striped_magenta_concrete.png b/public/textures/chipped/striped_magenta_concrete.png new file mode 100644 index 00000000..4c13b30e Binary files /dev/null and b/public/textures/chipped/striped_magenta_concrete.png differ diff --git a/public/textures/chipped/striped_orange_concrete.png b/public/textures/chipped/striped_orange_concrete.png new file mode 100644 index 00000000..aca90e8c Binary files /dev/null and b/public/textures/chipped/striped_orange_concrete.png differ diff --git a/public/textures/chipped/striped_pink_concrete.png b/public/textures/chipped/striped_pink_concrete.png new file mode 100644 index 00000000..58e19ed2 Binary files /dev/null and b/public/textures/chipped/striped_pink_concrete.png differ diff --git a/public/textures/chipped/striped_purple_concrete.png b/public/textures/chipped/striped_purple_concrete.png new file mode 100644 index 00000000..61109921 Binary files /dev/null and b/public/textures/chipped/striped_purple_concrete.png differ diff --git a/public/textures/chipped/striped_red_concrete.png b/public/textures/chipped/striped_red_concrete.png new file mode 100644 index 00000000..933d373b Binary files /dev/null and b/public/textures/chipped/striped_red_concrete.png differ diff --git a/public/textures/chipped/striped_white_concrete.png b/public/textures/chipped/striped_white_concrete.png new file mode 100644 index 00000000..b763f3a2 Binary files /dev/null and b/public/textures/chipped/striped_white_concrete.png differ diff --git a/public/textures/chipped/striped_yellow_concrete.png b/public/textures/chipped/striped_yellow_concrete.png new file mode 100644 index 00000000..11864cd7 Binary files /dev/null and b/public/textures/chipped/striped_yellow_concrete.png differ diff --git a/public/textures/chipped/strong_ladder.png b/public/textures/chipped/strong_ladder.png new file mode 100644 index 00000000..90d27634 Binary files /dev/null and b/public/textures/chipped/strong_ladder.png differ diff --git a/public/textures/chipped/sturdy_iron_bars.png b/public/textures/chipped/sturdy_iron_bars.png new file mode 100644 index 00000000..c6ce331d Binary files /dev/null and b/public/textures/chipped/sturdy_iron_bars.png differ diff --git a/public/textures/chipped/sugarcane_dried_kelp_block.png b/public/textures/chipped/sugarcane_dried_kelp_block.png new file mode 100644 index 00000000..98b86ba5 Binary files /dev/null and b/public/textures/chipped/sugarcane_dried_kelp_block.png differ diff --git a/public/textures/chipped/sunny_melon.png b/public/textures/chipped/sunny_melon.png new file mode 100644 index 00000000..e65a48ef Binary files /dev/null and b/public/textures/chipped/sunny_melon.png differ diff --git a/public/textures/chipped/supported_acacia_door.png b/public/textures/chipped/supported_acacia_door.png new file mode 100644 index 00000000..aefffa16 Binary files /dev/null and b/public/textures/chipped/supported_acacia_door.png differ diff --git a/public/textures/chipped/supported_bamboo_door.png b/public/textures/chipped/supported_bamboo_door.png new file mode 100644 index 00000000..d50c88a1 Binary files /dev/null and b/public/textures/chipped/supported_bamboo_door.png differ diff --git a/public/textures/chipped/supported_birch_door.png b/public/textures/chipped/supported_birch_door.png new file mode 100644 index 00000000..e3081394 Binary files /dev/null and b/public/textures/chipped/supported_birch_door.png differ diff --git a/public/textures/chipped/supported_cherry_door.png b/public/textures/chipped/supported_cherry_door.png new file mode 100644 index 00000000..3411882e Binary files /dev/null and b/public/textures/chipped/supported_cherry_door.png differ diff --git a/public/textures/chipped/supported_dark_oak_door.png b/public/textures/chipped/supported_dark_oak_door.png new file mode 100644 index 00000000..40243b9e Binary files /dev/null and b/public/textures/chipped/supported_dark_oak_door.png differ diff --git a/public/textures/chipped/supported_iron_bars.png b/public/textures/chipped/supported_iron_bars.png new file mode 100644 index 00000000..d4796435 Binary files /dev/null and b/public/textures/chipped/supported_iron_bars.png differ diff --git a/public/textures/chipped/supported_jungle_door.png b/public/textures/chipped/supported_jungle_door.png new file mode 100644 index 00000000..33d74dbc Binary files /dev/null and b/public/textures/chipped/supported_jungle_door.png differ diff --git a/public/textures/chipped/supported_mangrove_door.png b/public/textures/chipped/supported_mangrove_door.png new file mode 100644 index 00000000..89b28c5c Binary files /dev/null and b/public/textures/chipped/supported_mangrove_door.png differ diff --git a/public/textures/chipped/supported_oak_door.png b/public/textures/chipped/supported_oak_door.png new file mode 100644 index 00000000..ee491512 Binary files /dev/null and b/public/textures/chipped/supported_oak_door.png differ diff --git a/public/textures/chipped/supported_spruce_door.png b/public/textures/chipped/supported_spruce_door.png new file mode 100644 index 00000000..f4adc794 Binary files /dev/null and b/public/textures/chipped/supported_spruce_door.png differ diff --git a/public/textures/chipped/supported_warped_door.png b/public/textures/chipped/supported_warped_door.png new file mode 100644 index 00000000..f21a3d69 Binary files /dev/null and b/public/textures/chipped/supported_warped_door.png differ diff --git a/public/textures/chipped/suspicious_acacia_trapdoor.png b/public/textures/chipped/suspicious_acacia_trapdoor.png new file mode 100644 index 00000000..5d06446d Binary files /dev/null and b/public/textures/chipped/suspicious_acacia_trapdoor.png differ diff --git a/public/textures/chipped/suspicious_bamboo_trapdoor.png b/public/textures/chipped/suspicious_bamboo_trapdoor.png new file mode 100644 index 00000000..cf47bd6e Binary files /dev/null and b/public/textures/chipped/suspicious_bamboo_trapdoor.png differ diff --git a/public/textures/chipped/suspicious_birch_trapdoor.png b/public/textures/chipped/suspicious_birch_trapdoor.png new file mode 100644 index 00000000..cb11a6f4 Binary files /dev/null and b/public/textures/chipped/suspicious_birch_trapdoor.png differ diff --git a/public/textures/chipped/suspicious_carved_pumpkin.png b/public/textures/chipped/suspicious_carved_pumpkin.png new file mode 100644 index 00000000..a47c9c10 Binary files /dev/null and b/public/textures/chipped/suspicious_carved_pumpkin.png differ diff --git a/public/textures/chipped/suspicious_cherry_trapdoor.png b/public/textures/chipped/suspicious_cherry_trapdoor.png new file mode 100644 index 00000000..3a45372f Binary files /dev/null and b/public/textures/chipped/suspicious_cherry_trapdoor.png differ diff --git a/public/textures/chipped/suspicious_dark_oak_trapdoor.png b/public/textures/chipped/suspicious_dark_oak_trapdoor.png new file mode 100644 index 00000000..73568477 Binary files /dev/null and b/public/textures/chipped/suspicious_dark_oak_trapdoor.png differ diff --git a/public/textures/chipped/suspicious_jack_o_lantern.png b/public/textures/chipped/suspicious_jack_o_lantern.png new file mode 100644 index 00000000..751fce94 Binary files /dev/null and b/public/textures/chipped/suspicious_jack_o_lantern.png differ diff --git a/public/textures/chipped/suspicious_jungle_trapdoor.png b/public/textures/chipped/suspicious_jungle_trapdoor.png new file mode 100644 index 00000000..b56ea217 Binary files /dev/null and b/public/textures/chipped/suspicious_jungle_trapdoor.png differ diff --git a/public/textures/chipped/suspicious_mangrove_trapdoor.png b/public/textures/chipped/suspicious_mangrove_trapdoor.png new file mode 100644 index 00000000..5dbf2f01 Binary files /dev/null and b/public/textures/chipped/suspicious_mangrove_trapdoor.png differ diff --git a/public/textures/chipped/suspicious_oak_trapdoor.png b/public/textures/chipped/suspicious_oak_trapdoor.png new file mode 100644 index 00000000..a1da723b Binary files /dev/null and b/public/textures/chipped/suspicious_oak_trapdoor.png differ diff --git a/public/textures/chipped/suspicious_spruce_trapdoor.png b/public/textures/chipped/suspicious_spruce_trapdoor.png new file mode 100644 index 00000000..b5c63a3b Binary files /dev/null and b/public/textures/chipped/suspicious_spruce_trapdoor.png differ diff --git a/public/textures/chipped/suspicious_warped_trapdoor.png b/public/textures/chipped/suspicious_warped_trapdoor.png new file mode 100644 index 00000000..cf16c63d Binary files /dev/null and b/public/textures/chipped/suspicious_warped_trapdoor.png differ diff --git a/public/textures/chipped/swampy_hay_block.png b/public/textures/chipped/swampy_hay_block.png new file mode 100644 index 00000000..b1f0ffd7 Binary files /dev/null and b/public/textures/chipped/swampy_hay_block.png differ diff --git a/public/textures/chipped/swampy_melon.png b/public/textures/chipped/swampy_melon.png new file mode 100644 index 00000000..980cfb36 Binary files /dev/null and b/public/textures/chipped/swampy_melon.png differ diff --git a/public/textures/chipped/sweet_melon.png b/public/textures/chipped/sweet_melon.png new file mode 100644 index 00000000..767985f3 Binary files /dev/null and b/public/textures/chipped/sweet_melon.png differ diff --git a/public/textures/chipped/symbol_mud.png b/public/textures/chipped/symbol_mud.png new file mode 100644 index 00000000..dfac4c98 Binary files /dev/null and b/public/textures/chipped/symbol_mud.png differ diff --git a/public/textures/chipped/symbol_mud_bricks.png b/public/textures/chipped/symbol_mud_bricks.png new file mode 100644 index 00000000..a538dd3b Binary files /dev/null and b/public/textures/chipped/symbol_mud_bricks.png differ diff --git a/public/textures/chipped/symbol_packed_mud.png b/public/textures/chipped/symbol_packed_mud.png new file mode 100644 index 00000000..b8af72bf Binary files /dev/null and b/public/textures/chipped/symbol_packed_mud.png differ diff --git a/public/textures/chipped/symbolic_mud_bricks_pillar.png b/public/textures/chipped/symbolic_mud_bricks_pillar.png new file mode 100644 index 00000000..b242283b Binary files /dev/null and b/public/textures/chipped/symbolic_mud_bricks_pillar.png differ diff --git a/public/textures/chipped/symbolic_mud_pillar.png b/public/textures/chipped/symbolic_mud_pillar.png new file mode 100644 index 00000000..e3546ba9 Binary files /dev/null and b/public/textures/chipped/symbolic_mud_pillar.png differ diff --git a/public/textures/chipped/symbolic_packed_mud_pillar.png b/public/textures/chipped/symbolic_packed_mud_pillar.png new file mode 100644 index 00000000..abf70386 Binary files /dev/null and b/public/textures/chipped/symbolic_packed_mud_pillar.png differ diff --git a/public/textures/chipped/tall_lantern.png b/public/textures/chipped/tall_lantern.png new file mode 100644 index 00000000..d2c006ba Binary files /dev/null and b/public/textures/chipped/tall_lantern.png differ diff --git a/public/textures/chipped/tall_shroomy_nether_sprouts.png b/public/textures/chipped/tall_shroomy_nether_sprouts.png new file mode 100644 index 00000000..792ab1b8 Binary files /dev/null and b/public/textures/chipped/tall_shroomy_nether_sprouts.png differ diff --git a/public/textures/chipped/tall_soul_lantern.png b/public/textures/chipped/tall_soul_lantern.png new file mode 100644 index 00000000..62345cad Binary files /dev/null and b/public/textures/chipped/tall_soul_lantern.png differ diff --git a/public/textures/chipped/tar_sand.png b/public/textures/chipped/tar_sand.png new file mode 100644 index 00000000..69644f69 Binary files /dev/null and b/public/textures/chipped/tar_sand.png differ diff --git a/public/textures/chipped/terracotta_bricks.png b/public/textures/chipped/terracotta_bricks.png new file mode 100644 index 00000000..fd575ae2 Binary files /dev/null and b/public/textures/chipped/terracotta_bricks.png differ diff --git a/public/textures/chipped/terracotta_column.png b/public/textures/chipped/terracotta_column.png new file mode 100644 index 00000000..fa7be9f7 Binary files /dev/null and b/public/textures/chipped/terracotta_column.png differ diff --git a/public/textures/chipped/terracotta_pillar.png b/public/textures/chipped/terracotta_pillar.png new file mode 100644 index 00000000..8510671e Binary files /dev/null and b/public/textures/chipped/terracotta_pillar.png differ diff --git a/public/textures/chipped/terracotta_tile.png b/public/textures/chipped/terracotta_tile.png new file mode 100644 index 00000000..14d6f764 Binary files /dev/null and b/public/textures/chipped/terracotta_tile.png differ diff --git a/public/textures/chipped/terracotta_tiles.png b/public/textures/chipped/terracotta_tiles.png new file mode 100644 index 00000000..32ffa001 Binary files /dev/null and b/public/textures/chipped/terracotta_tiles.png differ diff --git a/public/textures/chipped/thicc_vine.png b/public/textures/chipped/thicc_vine.png new file mode 100644 index 00000000..e0325fd1 Binary files /dev/null and b/public/textures/chipped/thicc_vine.png differ diff --git a/public/textures/chipped/thick_cobweb_floor.png b/public/textures/chipped/thick_cobweb_floor.png new file mode 100644 index 00000000..5062e952 Binary files /dev/null and b/public/textures/chipped/thick_cobweb_floor.png differ diff --git a/public/textures/chipped/thick_inlayed_amethyst_block.png b/public/textures/chipped/thick_inlayed_amethyst_block.png new file mode 100644 index 00000000..b9e1e066 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_amethyst_block.png differ diff --git a/public/textures/chipped/thick_inlayed_ancient_debris.png b/public/textures/chipped/thick_inlayed_ancient_debris.png new file mode 100644 index 00000000..7485be54 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_ancient_debris.png differ diff --git a/public/textures/chipped/thick_inlayed_andesite.png b/public/textures/chipped/thick_inlayed_andesite.png new file mode 100644 index 00000000..b81a053e Binary files /dev/null and b/public/textures/chipped/thick_inlayed_andesite.png differ diff --git a/public/textures/chipped/thick_inlayed_basalt.png b/public/textures/chipped/thick_inlayed_basalt.png new file mode 100644 index 00000000..15cdaf12 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_basalt.png differ diff --git a/public/textures/chipped/thick_inlayed_blackstone.png b/public/textures/chipped/thick_inlayed_blackstone.png new file mode 100644 index 00000000..b24b47fe Binary files /dev/null and b/public/textures/chipped/thick_inlayed_blackstone.png differ diff --git a/public/textures/chipped/thick_inlayed_blue_ice.png b/public/textures/chipped/thick_inlayed_blue_ice.png new file mode 100644 index 00000000..1d40b0a2 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_blue_ice.png differ diff --git a/public/textures/chipped/thick_inlayed_borderless_bricks.png b/public/textures/chipped/thick_inlayed_borderless_bricks.png new file mode 100644 index 00000000..c483eda7 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_borderless_bricks.png differ diff --git a/public/textures/chipped/thick_inlayed_bricks.png b/public/textures/chipped/thick_inlayed_bricks.png new file mode 100644 index 00000000..d8ea3081 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_bricks.png differ diff --git a/public/textures/chipped/thick_inlayed_calcite.png b/public/textures/chipped/thick_inlayed_calcite.png new file mode 100644 index 00000000..a21793a1 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_calcite.png differ diff --git a/public/textures/chipped/thick_inlayed_clay.png b/public/textures/chipped/thick_inlayed_clay.png new file mode 100644 index 00000000..7b885a6f Binary files /dev/null and b/public/textures/chipped/thick_inlayed_clay.png differ diff --git a/public/textures/chipped/thick_inlayed_coal_block.png b/public/textures/chipped/thick_inlayed_coal_block.png new file mode 100644 index 00000000..f5861377 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_coal_block.png differ diff --git a/public/textures/chipped/thick_inlayed_cobblestone.png b/public/textures/chipped/thick_inlayed_cobblestone.png new file mode 100644 index 00000000..636acb08 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_cobblestone.png differ diff --git a/public/textures/chipped/thick_inlayed_crying_obsidian.png b/public/textures/chipped/thick_inlayed_crying_obsidian.png new file mode 100644 index 00000000..af5d0d3b Binary files /dev/null and b/public/textures/chipped/thick_inlayed_crying_obsidian.png differ diff --git a/public/textures/chipped/thick_inlayed_dark_prismarine.png b/public/textures/chipped/thick_inlayed_dark_prismarine.png new file mode 100644 index 00000000..45686f8b Binary files /dev/null and b/public/textures/chipped/thick_inlayed_dark_prismarine.png differ diff --git a/public/textures/chipped/thick_inlayed_deepslate.png b/public/textures/chipped/thick_inlayed_deepslate.png new file mode 100644 index 00000000..5febb471 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_deepslate.png differ diff --git a/public/textures/chipped/thick_inlayed_diorite.png b/public/textures/chipped/thick_inlayed_diorite.png new file mode 100644 index 00000000..c51354c5 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_diorite.png differ diff --git a/public/textures/chipped/thick_inlayed_dirt.png b/public/textures/chipped/thick_inlayed_dirt.png new file mode 100644 index 00000000..e245e3fa Binary files /dev/null and b/public/textures/chipped/thick_inlayed_dirt.png differ diff --git a/public/textures/chipped/thick_inlayed_dripstone_block.png b/public/textures/chipped/thick_inlayed_dripstone_block.png new file mode 100644 index 00000000..3185ec3e Binary files /dev/null and b/public/textures/chipped/thick_inlayed_dripstone_block.png differ diff --git a/public/textures/chipped/thick_inlayed_end_stone.png b/public/textures/chipped/thick_inlayed_end_stone.png new file mode 100644 index 00000000..6b965795 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_end_stone.png differ diff --git a/public/textures/chipped/thick_inlayed_gilded_blackstone.png b/public/textures/chipped/thick_inlayed_gilded_blackstone.png new file mode 100644 index 00000000..eb44a37a Binary files /dev/null and b/public/textures/chipped/thick_inlayed_gilded_blackstone.png differ diff --git a/public/textures/chipped/thick_inlayed_glowstone.png b/public/textures/chipped/thick_inlayed_glowstone.png new file mode 100644 index 00000000..bbde61ab Binary files /dev/null and b/public/textures/chipped/thick_inlayed_glowstone.png differ diff --git a/public/textures/chipped/thick_inlayed_granite.png b/public/textures/chipped/thick_inlayed_granite.png new file mode 100644 index 00000000..05ae4a90 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_granite.png differ diff --git a/public/textures/chipped/thick_inlayed_ice.png b/public/textures/chipped/thick_inlayed_ice.png new file mode 100644 index 00000000..ecc16858 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_ice.png differ diff --git a/public/textures/chipped/thick_inlayed_lapis_block.png b/public/textures/chipped/thick_inlayed_lapis_block.png new file mode 100644 index 00000000..a2af4473 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_lapis_block.png differ diff --git a/public/textures/chipped/thick_inlayed_lodestone.png b/public/textures/chipped/thick_inlayed_lodestone.png new file mode 100644 index 00000000..b353aa8f Binary files /dev/null and b/public/textures/chipped/thick_inlayed_lodestone.png differ diff --git a/public/textures/chipped/thick_inlayed_magma_block.png b/public/textures/chipped/thick_inlayed_magma_block.png new file mode 100644 index 00000000..0cad1cef Binary files /dev/null and b/public/textures/chipped/thick_inlayed_magma_block.png differ diff --git a/public/textures/chipped/thick_inlayed_mossy_cobblestone.png b/public/textures/chipped/thick_inlayed_mossy_cobblestone.png new file mode 100644 index 00000000..8fb5895a Binary files /dev/null and b/public/textures/chipped/thick_inlayed_mossy_cobblestone.png differ diff --git a/public/textures/chipped/thick_inlayed_mossy_stone_bricks.png b/public/textures/chipped/thick_inlayed_mossy_stone_bricks.png new file mode 100644 index 00000000..72ccd91c Binary files /dev/null and b/public/textures/chipped/thick_inlayed_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/thick_inlayed_mud.png b/public/textures/chipped/thick_inlayed_mud.png new file mode 100644 index 00000000..67fa3a12 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_mud.png differ diff --git a/public/textures/chipped/thick_inlayed_mud_bricks.png b/public/textures/chipped/thick_inlayed_mud_bricks.png new file mode 100644 index 00000000..c0318f31 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_mud_bricks.png differ diff --git a/public/textures/chipped/thick_inlayed_nether_bricks.png b/public/textures/chipped/thick_inlayed_nether_bricks.png new file mode 100644 index 00000000..68390dc5 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_nether_bricks.png differ diff --git a/public/textures/chipped/thick_inlayed_netherrack.png b/public/textures/chipped/thick_inlayed_netherrack.png new file mode 100644 index 00000000..ef3ade0a Binary files /dev/null and b/public/textures/chipped/thick_inlayed_netherrack.png differ diff --git a/public/textures/chipped/thick_inlayed_obsidian.png b/public/textures/chipped/thick_inlayed_obsidian.png new file mode 100644 index 00000000..e0d5ea38 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_obsidian.png differ diff --git a/public/textures/chipped/thick_inlayed_packed_ice.png b/public/textures/chipped/thick_inlayed_packed_ice.png new file mode 100644 index 00000000..b885fe71 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_packed_ice.png differ diff --git a/public/textures/chipped/thick_inlayed_packed_mud.png b/public/textures/chipped/thick_inlayed_packed_mud.png new file mode 100644 index 00000000..587e617a Binary files /dev/null and b/public/textures/chipped/thick_inlayed_packed_mud.png differ diff --git a/public/textures/chipped/thick_inlayed_prismarine.png b/public/textures/chipped/thick_inlayed_prismarine.png new file mode 100644 index 00000000..8ebfbb71 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_prismarine.png differ diff --git a/public/textures/chipped/thick_inlayed_purpur_block.png b/public/textures/chipped/thick_inlayed_purpur_block.png new file mode 100644 index 00000000..1d69047b Binary files /dev/null and b/public/textures/chipped/thick_inlayed_purpur_block.png differ diff --git a/public/textures/chipped/thick_inlayed_quartz_block.png b/public/textures/chipped/thick_inlayed_quartz_block.png new file mode 100644 index 00000000..7d65108f Binary files /dev/null and b/public/textures/chipped/thick_inlayed_quartz_block.png differ diff --git a/public/textures/chipped/thick_inlayed_raw_copper_block.png b/public/textures/chipped/thick_inlayed_raw_copper_block.png new file mode 100644 index 00000000..1702fd28 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_raw_copper_block.png differ diff --git a/public/textures/chipped/thick_inlayed_raw_gold_block.png b/public/textures/chipped/thick_inlayed_raw_gold_block.png new file mode 100644 index 00000000..043ef3bb Binary files /dev/null and b/public/textures/chipped/thick_inlayed_raw_gold_block.png differ diff --git a/public/textures/chipped/thick_inlayed_raw_iron_block.png b/public/textures/chipped/thick_inlayed_raw_iron_block.png new file mode 100644 index 00000000..c60880e5 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_raw_iron_block.png differ diff --git a/public/textures/chipped/thick_inlayed_red_nether_bricks.png b/public/textures/chipped/thick_inlayed_red_nether_bricks.png new file mode 100644 index 00000000..2d02ab65 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_red_nether_bricks.png differ diff --git a/public/textures/chipped/thick_inlayed_red_sandstone.png b/public/textures/chipped/thick_inlayed_red_sandstone.png new file mode 100644 index 00000000..1ca30951 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_red_sandstone.png differ diff --git a/public/textures/chipped/thick_inlayed_redstone_block.png b/public/textures/chipped/thick_inlayed_redstone_block.png new file mode 100644 index 00000000..61f19727 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_redstone_block.png differ diff --git a/public/textures/chipped/thick_inlayed_redstone_lamp.png b/public/textures/chipped/thick_inlayed_redstone_lamp.png new file mode 100644 index 00000000..99594e19 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_redstone_lamp.png differ diff --git a/public/textures/chipped/thick_inlayed_sandstone.png b/public/textures/chipped/thick_inlayed_sandstone.png new file mode 100644 index 00000000..ee941949 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_sandstone.png differ diff --git a/public/textures/chipped/thick_inlayed_sea_lantern.png b/public/textures/chipped/thick_inlayed_sea_lantern.png new file mode 100644 index 00000000..b3192401 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_sea_lantern.png differ diff --git a/public/textures/chipped/thick_inlayed_shroomlight.png b/public/textures/chipped/thick_inlayed_shroomlight.png new file mode 100644 index 00000000..44b33d70 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_shroomlight.png differ diff --git a/public/textures/chipped/thick_inlayed_smooth_stone.png b/public/textures/chipped/thick_inlayed_smooth_stone.png new file mode 100644 index 00000000..b19b12f5 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_smooth_stone.png differ diff --git a/public/textures/chipped/thick_inlayed_snow_block.png b/public/textures/chipped/thick_inlayed_snow_block.png new file mode 100644 index 00000000..19d3c574 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_snow_block.png differ diff --git a/public/textures/chipped/thick_inlayed_stone.png b/public/textures/chipped/thick_inlayed_stone.png new file mode 100644 index 00000000..4a0507ce Binary files /dev/null and b/public/textures/chipped/thick_inlayed_stone.png differ diff --git a/public/textures/chipped/thick_inlayed_tuff.png b/public/textures/chipped/thick_inlayed_tuff.png new file mode 100644 index 00000000..558022e3 Binary files /dev/null and b/public/textures/chipped/thick_inlayed_tuff.png differ diff --git a/public/textures/chipped/thick_white_inlayed_redstone_lamp.png b/public/textures/chipped/thick_white_inlayed_redstone_lamp.png new file mode 100644 index 00000000..dbc47006 Binary files /dev/null and b/public/textures/chipped/thick_white_inlayed_redstone_lamp.png differ diff --git a/public/textures/chipped/thin_acacia_planks.png b/public/textures/chipped/thin_acacia_planks.png new file mode 100644 index 00000000..5a26c0ba Binary files /dev/null and b/public/textures/chipped/thin_acacia_planks.png differ diff --git a/public/textures/chipped/thin_bamboo_planks.png b/public/textures/chipped/thin_bamboo_planks.png new file mode 100644 index 00000000..321db9b1 Binary files /dev/null and b/public/textures/chipped/thin_bamboo_planks.png differ diff --git a/public/textures/chipped/thin_birch_planks.png b/public/textures/chipped/thin_birch_planks.png new file mode 100644 index 00000000..ab541cf0 Binary files /dev/null and b/public/textures/chipped/thin_birch_planks.png differ diff --git a/public/textures/chipped/thin_cherry_planks.png b/public/textures/chipped/thin_cherry_planks.png new file mode 100644 index 00000000..8e77e060 Binary files /dev/null and b/public/textures/chipped/thin_cherry_planks.png differ diff --git a/public/textures/chipped/thin_crimson_planks.png b/public/textures/chipped/thin_crimson_planks.png new file mode 100644 index 00000000..5e3f5ffc Binary files /dev/null and b/public/textures/chipped/thin_crimson_planks.png differ diff --git a/public/textures/chipped/thin_dark_oak_planks.png b/public/textures/chipped/thin_dark_oak_planks.png new file mode 100644 index 00000000..56c1853d Binary files /dev/null and b/public/textures/chipped/thin_dark_oak_planks.png differ diff --git a/public/textures/chipped/thin_jungle_planks.png b/public/textures/chipped/thin_jungle_planks.png new file mode 100644 index 00000000..8c61948e Binary files /dev/null and b/public/textures/chipped/thin_jungle_planks.png differ diff --git a/public/textures/chipped/thin_mangrove_planks.png b/public/textures/chipped/thin_mangrove_planks.png new file mode 100644 index 00000000..6383e5b4 Binary files /dev/null and b/public/textures/chipped/thin_mangrove_planks.png differ diff --git a/public/textures/chipped/thin_mangrove_roots.png b/public/textures/chipped/thin_mangrove_roots.png new file mode 100644 index 00000000..2847c1af Binary files /dev/null and b/public/textures/chipped/thin_mangrove_roots.png differ diff --git a/public/textures/chipped/thin_nether_sprouts.png b/public/textures/chipped/thin_nether_sprouts.png new file mode 100644 index 00000000..41a383a7 Binary files /dev/null and b/public/textures/chipped/thin_nether_sprouts.png differ diff --git a/public/textures/chipped/thin_oak_planks.png b/public/textures/chipped/thin_oak_planks.png new file mode 100644 index 00000000..9f95da2e Binary files /dev/null and b/public/textures/chipped/thin_oak_planks.png differ diff --git a/public/textures/chipped/thin_spruce_planks.png b/public/textures/chipped/thin_spruce_planks.png new file mode 100644 index 00000000..94a9d500 Binary files /dev/null and b/public/textures/chipped/thin_spruce_planks.png differ diff --git a/public/textures/chipped/thin_vine.png b/public/textures/chipped/thin_vine.png new file mode 100644 index 00000000..5645c6ed Binary files /dev/null and b/public/textures/chipped/thin_vine.png differ diff --git a/public/textures/chipped/thin_warped_planks.png b/public/textures/chipped/thin_warped_planks.png new file mode 100644 index 00000000..31064366 Binary files /dev/null and b/public/textures/chipped/thin_warped_planks.png differ diff --git a/public/textures/chipped/thorned_iron_bars.png b/public/textures/chipped/thorned_iron_bars.png new file mode 100644 index 00000000..bf53c459 Binary files /dev/null and b/public/textures/chipped/thorned_iron_bars.png differ diff --git a/public/textures/chipped/tied_bamboo_planks.png b/public/textures/chipped/tied_bamboo_planks.png new file mode 100644 index 00000000..dffb93b4 Binary files /dev/null and b/public/textures/chipped/tied_bamboo_planks.png differ diff --git a/public/textures/chipped/tile_windowed_acacia_door.png b/public/textures/chipped/tile_windowed_acacia_door.png new file mode 100644 index 00000000..65c885fc Binary files /dev/null and b/public/textures/chipped/tile_windowed_acacia_door.png differ diff --git a/public/textures/chipped/tile_windowed_bamboo_door.png b/public/textures/chipped/tile_windowed_bamboo_door.png new file mode 100644 index 00000000..4c31319c Binary files /dev/null and b/public/textures/chipped/tile_windowed_bamboo_door.png differ diff --git a/public/textures/chipped/tile_windowed_birch_door.png b/public/textures/chipped/tile_windowed_birch_door.png new file mode 100644 index 00000000..ba4c650e Binary files /dev/null and b/public/textures/chipped/tile_windowed_birch_door.png differ diff --git a/public/textures/chipped/tile_windowed_cherry_door.png b/public/textures/chipped/tile_windowed_cherry_door.png new file mode 100644 index 00000000..8a051796 Binary files /dev/null and b/public/textures/chipped/tile_windowed_cherry_door.png differ diff --git a/public/textures/chipped/tile_windowed_crimson_door.png b/public/textures/chipped/tile_windowed_crimson_door.png new file mode 100644 index 00000000..f8081649 Binary files /dev/null and b/public/textures/chipped/tile_windowed_crimson_door.png differ diff --git a/public/textures/chipped/tile_windowed_dark_oak_door.png b/public/textures/chipped/tile_windowed_dark_oak_door.png new file mode 100644 index 00000000..969a9048 Binary files /dev/null and b/public/textures/chipped/tile_windowed_dark_oak_door.png differ diff --git a/public/textures/chipped/tile_windowed_jungle_door.png b/public/textures/chipped/tile_windowed_jungle_door.png new file mode 100644 index 00000000..b81463d8 Binary files /dev/null and b/public/textures/chipped/tile_windowed_jungle_door.png differ diff --git a/public/textures/chipped/tile_windowed_mangrove_door.png b/public/textures/chipped/tile_windowed_mangrove_door.png new file mode 100644 index 00000000..913508fb Binary files /dev/null and b/public/textures/chipped/tile_windowed_mangrove_door.png differ diff --git a/public/textures/chipped/tile_windowed_oak_door.png b/public/textures/chipped/tile_windowed_oak_door.png new file mode 100644 index 00000000..adb020ee Binary files /dev/null and b/public/textures/chipped/tile_windowed_oak_door.png differ diff --git a/public/textures/chipped/tile_windowed_spruce_door.png b/public/textures/chipped/tile_windowed_spruce_door.png new file mode 100644 index 00000000..adbfb1cf Binary files /dev/null and b/public/textures/chipped/tile_windowed_spruce_door.png differ diff --git a/public/textures/chipped/tile_windowed_warped_door.png b/public/textures/chipped/tile_windowed_warped_door.png new file mode 100644 index 00000000..eac44f31 Binary files /dev/null and b/public/textures/chipped/tile_windowed_warped_door.png differ diff --git a/public/textures/chipped/tiled_acacia_door.png b/public/textures/chipped/tiled_acacia_door.png new file mode 100644 index 00000000..a0c62f44 Binary files /dev/null and b/public/textures/chipped/tiled_acacia_door.png differ diff --git a/public/textures/chipped/tiled_acacia_planks.png b/public/textures/chipped/tiled_acacia_planks.png new file mode 100644 index 00000000..6aa873f3 Binary files /dev/null and b/public/textures/chipped/tiled_acacia_planks.png differ diff --git a/public/textures/chipped/tiled_amethyst_block.png b/public/textures/chipped/tiled_amethyst_block.png new file mode 100644 index 00000000..d0bb0993 Binary files /dev/null and b/public/textures/chipped/tiled_amethyst_block.png differ diff --git a/public/textures/chipped/tiled_amethyst_block_column.png b/public/textures/chipped/tiled_amethyst_block_column.png new file mode 100644 index 00000000..1590c10b Binary files /dev/null and b/public/textures/chipped/tiled_amethyst_block_column.png differ diff --git a/public/textures/chipped/tiled_ancient_debris.png b/public/textures/chipped/tiled_ancient_debris.png new file mode 100644 index 00000000..fc7a6b0a Binary files /dev/null and b/public/textures/chipped/tiled_ancient_debris.png differ diff --git a/public/textures/chipped/tiled_ancient_debris_column.png b/public/textures/chipped/tiled_ancient_debris_column.png new file mode 100644 index 00000000..49b7840c Binary files /dev/null and b/public/textures/chipped/tiled_ancient_debris_column.png differ diff --git a/public/textures/chipped/tiled_andesite.png b/public/textures/chipped/tiled_andesite.png new file mode 100644 index 00000000..9ad003d0 Binary files /dev/null and b/public/textures/chipped/tiled_andesite.png differ diff --git a/public/textures/chipped/tiled_andesite_column.png b/public/textures/chipped/tiled_andesite_column.png new file mode 100644 index 00000000..039d592a Binary files /dev/null and b/public/textures/chipped/tiled_andesite_column.png differ diff --git a/public/textures/chipped/tiled_bamboo_door.png b/public/textures/chipped/tiled_bamboo_door.png new file mode 100644 index 00000000..3155b251 Binary files /dev/null and b/public/textures/chipped/tiled_bamboo_door.png differ diff --git a/public/textures/chipped/tiled_bamboo_planks.png b/public/textures/chipped/tiled_bamboo_planks.png new file mode 100644 index 00000000..6147d869 Binary files /dev/null and b/public/textures/chipped/tiled_bamboo_planks.png differ diff --git a/public/textures/chipped/tiled_basalt.png b/public/textures/chipped/tiled_basalt.png new file mode 100644 index 00000000..e3fd282c Binary files /dev/null and b/public/textures/chipped/tiled_basalt.png differ diff --git a/public/textures/chipped/tiled_basalt_column.png b/public/textures/chipped/tiled_basalt_column.png new file mode 100644 index 00000000..7754c204 Binary files /dev/null and b/public/textures/chipped/tiled_basalt_column.png differ diff --git a/public/textures/chipped/tiled_birch_door.png b/public/textures/chipped/tiled_birch_door.png new file mode 100644 index 00000000..a6ecfa3f Binary files /dev/null and b/public/textures/chipped/tiled_birch_door.png differ diff --git a/public/textures/chipped/tiled_birch_planks.png b/public/textures/chipped/tiled_birch_planks.png new file mode 100644 index 00000000..b74d7ab0 Binary files /dev/null and b/public/textures/chipped/tiled_birch_planks.png differ diff --git a/public/textures/chipped/tiled_black_carpet.png b/public/textures/chipped/tiled_black_carpet.png new file mode 100644 index 00000000..8c29e607 Binary files /dev/null and b/public/textures/chipped/tiled_black_carpet.png differ diff --git a/public/textures/chipped/tiled_black_stained_glass.png b/public/textures/chipped/tiled_black_stained_glass.png new file mode 100644 index 00000000..6369a91a Binary files /dev/null and b/public/textures/chipped/tiled_black_stained_glass.png differ diff --git a/public/textures/chipped/tiled_black_stained_glass_pane.png b/public/textures/chipped/tiled_black_stained_glass_pane.png new file mode 100644 index 00000000..0d84a88a Binary files /dev/null and b/public/textures/chipped/tiled_black_stained_glass_pane.png differ diff --git a/public/textures/chipped/tiled_black_wool.png b/public/textures/chipped/tiled_black_wool.png new file mode 100644 index 00000000..eaf4633d Binary files /dev/null and b/public/textures/chipped/tiled_black_wool.png differ diff --git a/public/textures/chipped/tiled_blackstone.png b/public/textures/chipped/tiled_blackstone.png new file mode 100644 index 00000000..80524abd Binary files /dev/null and b/public/textures/chipped/tiled_blackstone.png differ diff --git a/public/textures/chipped/tiled_blackstone_column.png b/public/textures/chipped/tiled_blackstone_column.png new file mode 100644 index 00000000..9f37ee68 Binary files /dev/null and b/public/textures/chipped/tiled_blackstone_column.png differ diff --git a/public/textures/chipped/tiled_blue_carpet.png b/public/textures/chipped/tiled_blue_carpet.png new file mode 100644 index 00000000..d8b08bb0 Binary files /dev/null and b/public/textures/chipped/tiled_blue_carpet.png differ diff --git a/public/textures/chipped/tiled_blue_ice.png b/public/textures/chipped/tiled_blue_ice.png new file mode 100644 index 00000000..2f300716 Binary files /dev/null and b/public/textures/chipped/tiled_blue_ice.png differ diff --git a/public/textures/chipped/tiled_blue_ice_column.png b/public/textures/chipped/tiled_blue_ice_column.png new file mode 100644 index 00000000..91e0daab Binary files /dev/null and b/public/textures/chipped/tiled_blue_ice_column.png differ diff --git a/public/textures/chipped/tiled_blue_stained_glass.png b/public/textures/chipped/tiled_blue_stained_glass.png new file mode 100644 index 00000000..b16115f4 Binary files /dev/null and b/public/textures/chipped/tiled_blue_stained_glass.png differ diff --git a/public/textures/chipped/tiled_blue_stained_glass_pane.png b/public/textures/chipped/tiled_blue_stained_glass_pane.png new file mode 100644 index 00000000..2ca48ba6 Binary files /dev/null and b/public/textures/chipped/tiled_blue_stained_glass_pane.png differ diff --git a/public/textures/chipped/tiled_blue_wool.png b/public/textures/chipped/tiled_blue_wool.png new file mode 100644 index 00000000..bd232140 Binary files /dev/null and b/public/textures/chipped/tiled_blue_wool.png differ diff --git a/public/textures/chipped/tiled_bone_block.png b/public/textures/chipped/tiled_bone_block.png new file mode 100644 index 00000000..2e25b48d Binary files /dev/null and b/public/textures/chipped/tiled_bone_block.png differ diff --git a/public/textures/chipped/tiled_bordered_amethyst_block.png b/public/textures/chipped/tiled_bordered_amethyst_block.png new file mode 100644 index 00000000..24cb96c9 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_amethyst_block.png differ diff --git a/public/textures/chipped/tiled_bordered_ancient_debris.png b/public/textures/chipped/tiled_bordered_ancient_debris.png new file mode 100644 index 00000000..c11e0113 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_ancient_debris.png differ diff --git a/public/textures/chipped/tiled_bordered_andesite.png b/public/textures/chipped/tiled_bordered_andesite.png new file mode 100644 index 00000000..9d600c22 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_andesite.png differ diff --git a/public/textures/chipped/tiled_bordered_basalt.png b/public/textures/chipped/tiled_bordered_basalt.png new file mode 100644 index 00000000..19422d60 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_basalt.png differ diff --git a/public/textures/chipped/tiled_bordered_blackstone.png b/public/textures/chipped/tiled_bordered_blackstone.png new file mode 100644 index 00000000..b87498a8 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_blackstone.png differ diff --git a/public/textures/chipped/tiled_bordered_blue_ice.png b/public/textures/chipped/tiled_bordered_blue_ice.png new file mode 100644 index 00000000..7e42acf0 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_blue_ice.png differ diff --git a/public/textures/chipped/tiled_bordered_borderless_bricks.png b/public/textures/chipped/tiled_bordered_borderless_bricks.png new file mode 100644 index 00000000..504dcf7f Binary files /dev/null and b/public/textures/chipped/tiled_bordered_borderless_bricks.png differ diff --git a/public/textures/chipped/tiled_bordered_bricks.png b/public/textures/chipped/tiled_bordered_bricks.png new file mode 100644 index 00000000..910012b5 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_bricks.png differ diff --git a/public/textures/chipped/tiled_bordered_calcite.png b/public/textures/chipped/tiled_bordered_calcite.png new file mode 100644 index 00000000..1801ce22 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_calcite.png differ diff --git a/public/textures/chipped/tiled_bordered_clay.png b/public/textures/chipped/tiled_bordered_clay.png new file mode 100644 index 00000000..97b3594f Binary files /dev/null and b/public/textures/chipped/tiled_bordered_clay.png differ diff --git a/public/textures/chipped/tiled_bordered_coal_block.png b/public/textures/chipped/tiled_bordered_coal_block.png new file mode 100644 index 00000000..b807c0b8 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_coal_block.png differ diff --git a/public/textures/chipped/tiled_bordered_cobblestone.png b/public/textures/chipped/tiled_bordered_cobblestone.png new file mode 100644 index 00000000..fdeb6102 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_cobblestone.png differ diff --git a/public/textures/chipped/tiled_bordered_crying_obsidian.png b/public/textures/chipped/tiled_bordered_crying_obsidian.png new file mode 100644 index 00000000..a1f53542 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_crying_obsidian.png differ diff --git a/public/textures/chipped/tiled_bordered_dark_prismarine.png b/public/textures/chipped/tiled_bordered_dark_prismarine.png new file mode 100644 index 00000000..318696fb Binary files /dev/null and b/public/textures/chipped/tiled_bordered_dark_prismarine.png differ diff --git a/public/textures/chipped/tiled_bordered_deepslate.png b/public/textures/chipped/tiled_bordered_deepslate.png new file mode 100644 index 00000000..1146996a Binary files /dev/null and b/public/textures/chipped/tiled_bordered_deepslate.png differ diff --git a/public/textures/chipped/tiled_bordered_diorite.png b/public/textures/chipped/tiled_bordered_diorite.png new file mode 100644 index 00000000..af3d87e6 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_diorite.png differ diff --git a/public/textures/chipped/tiled_bordered_dirt.png b/public/textures/chipped/tiled_bordered_dirt.png new file mode 100644 index 00000000..47bf6bab Binary files /dev/null and b/public/textures/chipped/tiled_bordered_dirt.png differ diff --git a/public/textures/chipped/tiled_bordered_dripstone_block.png b/public/textures/chipped/tiled_bordered_dripstone_block.png new file mode 100644 index 00000000..fc5f03a4 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_dripstone_block.png differ diff --git a/public/textures/chipped/tiled_bordered_end_stone.png b/public/textures/chipped/tiled_bordered_end_stone.png new file mode 100644 index 00000000..57dab170 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_end_stone.png differ diff --git a/public/textures/chipped/tiled_bordered_gilded_blackstone.png b/public/textures/chipped/tiled_bordered_gilded_blackstone.png new file mode 100644 index 00000000..3a836f2c Binary files /dev/null and b/public/textures/chipped/tiled_bordered_gilded_blackstone.png differ diff --git a/public/textures/chipped/tiled_bordered_granite.png b/public/textures/chipped/tiled_bordered_granite.png new file mode 100644 index 00000000..ebd52a4a Binary files /dev/null and b/public/textures/chipped/tiled_bordered_granite.png differ diff --git a/public/textures/chipped/tiled_bordered_ice.png b/public/textures/chipped/tiled_bordered_ice.png new file mode 100644 index 00000000..9bb13a66 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_ice.png differ diff --git a/public/textures/chipped/tiled_bordered_lapis_block.png b/public/textures/chipped/tiled_bordered_lapis_block.png new file mode 100644 index 00000000..d5152973 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_lapis_block.png differ diff --git a/public/textures/chipped/tiled_bordered_lodestone.png b/public/textures/chipped/tiled_bordered_lodestone.png new file mode 100644 index 00000000..c0c030f1 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_lodestone.png differ diff --git a/public/textures/chipped/tiled_bordered_magma_block.png b/public/textures/chipped/tiled_bordered_magma_block.png new file mode 100644 index 00000000..f66c11fa Binary files /dev/null and b/public/textures/chipped/tiled_bordered_magma_block.png differ diff --git a/public/textures/chipped/tiled_bordered_mossy_cobblestone.png b/public/textures/chipped/tiled_bordered_mossy_cobblestone.png new file mode 100644 index 00000000..aabad7a0 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_mossy_cobblestone.png differ diff --git a/public/textures/chipped/tiled_bordered_mossy_stone_bricks.png b/public/textures/chipped/tiled_bordered_mossy_stone_bricks.png new file mode 100644 index 00000000..762c0db4 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/tiled_bordered_mud.png b/public/textures/chipped/tiled_bordered_mud.png new file mode 100644 index 00000000..3048b1bc Binary files /dev/null and b/public/textures/chipped/tiled_bordered_mud.png differ diff --git a/public/textures/chipped/tiled_bordered_mud_bricks.png b/public/textures/chipped/tiled_bordered_mud_bricks.png new file mode 100644 index 00000000..0797a703 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_mud_bricks.png differ diff --git a/public/textures/chipped/tiled_bordered_nether_bricks.png b/public/textures/chipped/tiled_bordered_nether_bricks.png new file mode 100644 index 00000000..a6ab5a06 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_nether_bricks.png differ diff --git a/public/textures/chipped/tiled_bordered_netherrack.png b/public/textures/chipped/tiled_bordered_netherrack.png new file mode 100644 index 00000000..6cc65655 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_netherrack.png differ diff --git a/public/textures/chipped/tiled_bordered_obsidian.png b/public/textures/chipped/tiled_bordered_obsidian.png new file mode 100644 index 00000000..77674010 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_obsidian.png differ diff --git a/public/textures/chipped/tiled_bordered_packed_ice.png b/public/textures/chipped/tiled_bordered_packed_ice.png new file mode 100644 index 00000000..828255dd Binary files /dev/null and b/public/textures/chipped/tiled_bordered_packed_ice.png differ diff --git a/public/textures/chipped/tiled_bordered_packed_mud.png b/public/textures/chipped/tiled_bordered_packed_mud.png new file mode 100644 index 00000000..c8c4d7b9 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_packed_mud.png differ diff --git a/public/textures/chipped/tiled_bordered_prismarine.png b/public/textures/chipped/tiled_bordered_prismarine.png new file mode 100644 index 00000000..a5779e60 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_prismarine.png differ diff --git a/public/textures/chipped/tiled_bordered_purpur_block.png b/public/textures/chipped/tiled_bordered_purpur_block.png new file mode 100644 index 00000000..2f3dece1 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_purpur_block.png differ diff --git a/public/textures/chipped/tiled_bordered_quartz_block.png b/public/textures/chipped/tiled_bordered_quartz_block.png new file mode 100644 index 00000000..d1081ba0 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_quartz_block.png differ diff --git a/public/textures/chipped/tiled_bordered_raw_copper_block.png b/public/textures/chipped/tiled_bordered_raw_copper_block.png new file mode 100644 index 00000000..3beed592 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_raw_copper_block.png differ diff --git a/public/textures/chipped/tiled_bordered_raw_gold_block.png b/public/textures/chipped/tiled_bordered_raw_gold_block.png new file mode 100644 index 00000000..c07595be Binary files /dev/null and b/public/textures/chipped/tiled_bordered_raw_gold_block.png differ diff --git a/public/textures/chipped/tiled_bordered_raw_iron_block.png b/public/textures/chipped/tiled_bordered_raw_iron_block.png new file mode 100644 index 00000000..e7fb53c0 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_raw_iron_block.png differ diff --git a/public/textures/chipped/tiled_bordered_red_nether_bricks.png b/public/textures/chipped/tiled_bordered_red_nether_bricks.png new file mode 100644 index 00000000..940a228c Binary files /dev/null and b/public/textures/chipped/tiled_bordered_red_nether_bricks.png differ diff --git a/public/textures/chipped/tiled_bordered_red_sandstone.png b/public/textures/chipped/tiled_bordered_red_sandstone.png new file mode 100644 index 00000000..9b1011c4 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_red_sandstone.png differ diff --git a/public/textures/chipped/tiled_bordered_redstone_block.png b/public/textures/chipped/tiled_bordered_redstone_block.png new file mode 100644 index 00000000..ca93489f Binary files /dev/null and b/public/textures/chipped/tiled_bordered_redstone_block.png differ diff --git a/public/textures/chipped/tiled_bordered_sandstone.png b/public/textures/chipped/tiled_bordered_sandstone.png new file mode 100644 index 00000000..b23813d3 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_sandstone.png differ diff --git a/public/textures/chipped/tiled_bordered_smooth_stone.png b/public/textures/chipped/tiled_bordered_smooth_stone.png new file mode 100644 index 00000000..c5922d26 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_smooth_stone.png differ diff --git a/public/textures/chipped/tiled_bordered_snow_block.png b/public/textures/chipped/tiled_bordered_snow_block.png new file mode 100644 index 00000000..00a80719 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_snow_block.png differ diff --git a/public/textures/chipped/tiled_bordered_stone.png b/public/textures/chipped/tiled_bordered_stone.png new file mode 100644 index 00000000..dc5a5489 Binary files /dev/null and b/public/textures/chipped/tiled_bordered_stone.png differ diff --git a/public/textures/chipped/tiled_bordered_tuff.png b/public/textures/chipped/tiled_bordered_tuff.png new file mode 100644 index 00000000..c26b04ea Binary files /dev/null and b/public/textures/chipped/tiled_bordered_tuff.png differ diff --git a/public/textures/chipped/tiled_borderless_bricks.png b/public/textures/chipped/tiled_borderless_bricks.png new file mode 100644 index 00000000..860423ae Binary files /dev/null and b/public/textures/chipped/tiled_borderless_bricks.png differ diff --git a/public/textures/chipped/tiled_borderless_bricks_column.png b/public/textures/chipped/tiled_borderless_bricks_column.png new file mode 100644 index 00000000..a95e6a13 Binary files /dev/null and b/public/textures/chipped/tiled_borderless_bricks_column.png differ diff --git a/public/textures/chipped/tiled_bricks.png b/public/textures/chipped/tiled_bricks.png new file mode 100644 index 00000000..ea18a435 Binary files /dev/null and b/public/textures/chipped/tiled_bricks.png differ diff --git a/public/textures/chipped/tiled_bricks_column.png b/public/textures/chipped/tiled_bricks_column.png new file mode 100644 index 00000000..dedce2ba Binary files /dev/null and b/public/textures/chipped/tiled_bricks_column.png differ diff --git a/public/textures/chipped/tiled_brown_carpet.png b/public/textures/chipped/tiled_brown_carpet.png new file mode 100644 index 00000000..017c8dee Binary files /dev/null and b/public/textures/chipped/tiled_brown_carpet.png differ diff --git a/public/textures/chipped/tiled_brown_stained_glass.png b/public/textures/chipped/tiled_brown_stained_glass.png new file mode 100644 index 00000000..8ae8e35a Binary files /dev/null and b/public/textures/chipped/tiled_brown_stained_glass.png differ diff --git a/public/textures/chipped/tiled_brown_stained_glass_pane.png b/public/textures/chipped/tiled_brown_stained_glass_pane.png new file mode 100644 index 00000000..b3bb6ccd Binary files /dev/null and b/public/textures/chipped/tiled_brown_stained_glass_pane.png differ diff --git a/public/textures/chipped/tiled_brown_wool.png b/public/textures/chipped/tiled_brown_wool.png new file mode 100644 index 00000000..cc89492f Binary files /dev/null and b/public/textures/chipped/tiled_brown_wool.png differ diff --git a/public/textures/chipped/tiled_calcite.png b/public/textures/chipped/tiled_calcite.png new file mode 100644 index 00000000..35b0c1ff Binary files /dev/null and b/public/textures/chipped/tiled_calcite.png differ diff --git a/public/textures/chipped/tiled_calcite_column.png b/public/textures/chipped/tiled_calcite_column.png new file mode 100644 index 00000000..0b16b03a Binary files /dev/null and b/public/textures/chipped/tiled_calcite_column.png differ diff --git a/public/textures/chipped/tiled_cherry_door.png b/public/textures/chipped/tiled_cherry_door.png new file mode 100644 index 00000000..c8d93f38 Binary files /dev/null and b/public/textures/chipped/tiled_cherry_door.png differ diff --git a/public/textures/chipped/tiled_cherry_planks.png b/public/textures/chipped/tiled_cherry_planks.png new file mode 100644 index 00000000..99ba8614 Binary files /dev/null and b/public/textures/chipped/tiled_cherry_planks.png differ diff --git a/public/textures/chipped/tiled_clay.png b/public/textures/chipped/tiled_clay.png new file mode 100644 index 00000000..6b8d305b Binary files /dev/null and b/public/textures/chipped/tiled_clay.png differ diff --git a/public/textures/chipped/tiled_clay_column.png b/public/textures/chipped/tiled_clay_column.png new file mode 100644 index 00000000..292cbafa Binary files /dev/null and b/public/textures/chipped/tiled_clay_column.png differ diff --git a/public/textures/chipped/tiled_coal_block.png b/public/textures/chipped/tiled_coal_block.png new file mode 100644 index 00000000..a9f82ce1 Binary files /dev/null and b/public/textures/chipped/tiled_coal_block.png differ diff --git a/public/textures/chipped/tiled_coal_block_column.png b/public/textures/chipped/tiled_coal_block_column.png new file mode 100644 index 00000000..4cfc12d6 Binary files /dev/null and b/public/textures/chipped/tiled_coal_block_column.png differ diff --git a/public/textures/chipped/tiled_cobblestone.png b/public/textures/chipped/tiled_cobblestone.png new file mode 100644 index 00000000..fc6696b9 Binary files /dev/null and b/public/textures/chipped/tiled_cobblestone.png differ diff --git a/public/textures/chipped/tiled_cobblestone_column.png b/public/textures/chipped/tiled_cobblestone_column.png new file mode 100644 index 00000000..77c4b37f Binary files /dev/null and b/public/textures/chipped/tiled_cobblestone_column.png differ diff --git a/public/textures/chipped/tiled_crimson_door.png b/public/textures/chipped/tiled_crimson_door.png new file mode 100644 index 00000000..8d088795 Binary files /dev/null and b/public/textures/chipped/tiled_crimson_door.png differ diff --git a/public/textures/chipped/tiled_crimson_planks.png b/public/textures/chipped/tiled_crimson_planks.png new file mode 100644 index 00000000..bdf9883d Binary files /dev/null and b/public/textures/chipped/tiled_crimson_planks.png differ diff --git a/public/textures/chipped/tiled_crying_obsidian.png b/public/textures/chipped/tiled_crying_obsidian.png new file mode 100644 index 00000000..abf5c67e Binary files /dev/null and b/public/textures/chipped/tiled_crying_obsidian.png differ diff --git a/public/textures/chipped/tiled_crying_obsidian_column.png b/public/textures/chipped/tiled_crying_obsidian_column.png new file mode 100644 index 00000000..cca8afe3 Binary files /dev/null and b/public/textures/chipped/tiled_crying_obsidian_column.png differ diff --git a/public/textures/chipped/tiled_cyan_carpet.png b/public/textures/chipped/tiled_cyan_carpet.png new file mode 100644 index 00000000..444c9541 Binary files /dev/null and b/public/textures/chipped/tiled_cyan_carpet.png differ diff --git a/public/textures/chipped/tiled_cyan_stained_glass.png b/public/textures/chipped/tiled_cyan_stained_glass.png new file mode 100644 index 00000000..21603fbe Binary files /dev/null and b/public/textures/chipped/tiled_cyan_stained_glass.png differ diff --git a/public/textures/chipped/tiled_cyan_stained_glass_pane.png b/public/textures/chipped/tiled_cyan_stained_glass_pane.png new file mode 100644 index 00000000..01d100d8 Binary files /dev/null and b/public/textures/chipped/tiled_cyan_stained_glass_pane.png differ diff --git a/public/textures/chipped/tiled_cyan_wool.png b/public/textures/chipped/tiled_cyan_wool.png new file mode 100644 index 00000000..00e77165 Binary files /dev/null and b/public/textures/chipped/tiled_cyan_wool.png differ diff --git a/public/textures/chipped/tiled_dark_oak_door.png b/public/textures/chipped/tiled_dark_oak_door.png new file mode 100644 index 00000000..8cfc00b4 Binary files /dev/null and b/public/textures/chipped/tiled_dark_oak_door.png differ diff --git a/public/textures/chipped/tiled_dark_oak_planks.png b/public/textures/chipped/tiled_dark_oak_planks.png new file mode 100644 index 00000000..8ec7fb12 Binary files /dev/null and b/public/textures/chipped/tiled_dark_oak_planks.png differ diff --git a/public/textures/chipped/tiled_dark_prismarine.png b/public/textures/chipped/tiled_dark_prismarine.png new file mode 100644 index 00000000..026864ea Binary files /dev/null and b/public/textures/chipped/tiled_dark_prismarine.png differ diff --git a/public/textures/chipped/tiled_dark_prismarine_column.png b/public/textures/chipped/tiled_dark_prismarine_column.png new file mode 100644 index 00000000..41e09146 Binary files /dev/null and b/public/textures/chipped/tiled_dark_prismarine_column.png differ diff --git a/public/textures/chipped/tiled_deepslate.png b/public/textures/chipped/tiled_deepslate.png new file mode 100644 index 00000000..ae632cb2 Binary files /dev/null and b/public/textures/chipped/tiled_deepslate.png differ diff --git a/public/textures/chipped/tiled_deepslate_column.png b/public/textures/chipped/tiled_deepslate_column.png new file mode 100644 index 00000000..3a6fe16d Binary files /dev/null and b/public/textures/chipped/tiled_deepslate_column.png differ diff --git a/public/textures/chipped/tiled_diorite.png b/public/textures/chipped/tiled_diorite.png new file mode 100644 index 00000000..a0724a71 Binary files /dev/null and b/public/textures/chipped/tiled_diorite.png differ diff --git a/public/textures/chipped/tiled_diorite_column.png b/public/textures/chipped/tiled_diorite_column.png new file mode 100644 index 00000000..f42228f1 Binary files /dev/null and b/public/textures/chipped/tiled_diorite_column.png differ diff --git a/public/textures/chipped/tiled_dirt.png b/public/textures/chipped/tiled_dirt.png new file mode 100644 index 00000000..063d2f8a Binary files /dev/null and b/public/textures/chipped/tiled_dirt.png differ diff --git a/public/textures/chipped/tiled_dirt_column.png b/public/textures/chipped/tiled_dirt_column.png new file mode 100644 index 00000000..8f9fd7bb Binary files /dev/null and b/public/textures/chipped/tiled_dirt_column.png differ diff --git a/public/textures/chipped/tiled_dripstone_block.png b/public/textures/chipped/tiled_dripstone_block.png new file mode 100644 index 00000000..4c8a12b2 Binary files /dev/null and b/public/textures/chipped/tiled_dripstone_block.png differ diff --git a/public/textures/chipped/tiled_dripstone_block_column.png b/public/textures/chipped/tiled_dripstone_block_column.png new file mode 100644 index 00000000..e5203227 Binary files /dev/null and b/public/textures/chipped/tiled_dripstone_block_column.png differ diff --git a/public/textures/chipped/tiled_end_stone.png b/public/textures/chipped/tiled_end_stone.png new file mode 100644 index 00000000..a5a830f7 Binary files /dev/null and b/public/textures/chipped/tiled_end_stone.png differ diff --git a/public/textures/chipped/tiled_end_stone_column.png b/public/textures/chipped/tiled_end_stone_column.png new file mode 100644 index 00000000..cd071698 Binary files /dev/null and b/public/textures/chipped/tiled_end_stone_column.png differ diff --git a/public/textures/chipped/tiled_gilded_blackstone.png b/public/textures/chipped/tiled_gilded_blackstone.png new file mode 100644 index 00000000..122cee59 Binary files /dev/null and b/public/textures/chipped/tiled_gilded_blackstone.png differ diff --git a/public/textures/chipped/tiled_gilded_blackstone_column.png b/public/textures/chipped/tiled_gilded_blackstone_column.png new file mode 100644 index 00000000..871a5725 Binary files /dev/null and b/public/textures/chipped/tiled_gilded_blackstone_column.png differ diff --git a/public/textures/chipped/tiled_glowstone_pillar.png b/public/textures/chipped/tiled_glowstone_pillar.png new file mode 100644 index 00000000..4567dd6a Binary files /dev/null and b/public/textures/chipped/tiled_glowstone_pillar.png differ diff --git a/public/textures/chipped/tiled_granite.png b/public/textures/chipped/tiled_granite.png new file mode 100644 index 00000000..40a57193 Binary files /dev/null and b/public/textures/chipped/tiled_granite.png differ diff --git a/public/textures/chipped/tiled_granite_column.png b/public/textures/chipped/tiled_granite_column.png new file mode 100644 index 00000000..bf2e4f03 Binary files /dev/null and b/public/textures/chipped/tiled_granite_column.png differ diff --git a/public/textures/chipped/tiled_gray_carpet.png b/public/textures/chipped/tiled_gray_carpet.png new file mode 100644 index 00000000..dbe27731 Binary files /dev/null and b/public/textures/chipped/tiled_gray_carpet.png differ diff --git a/public/textures/chipped/tiled_gray_stained_glass.png b/public/textures/chipped/tiled_gray_stained_glass.png new file mode 100644 index 00000000..d473b26a Binary files /dev/null and b/public/textures/chipped/tiled_gray_stained_glass.png differ diff --git a/public/textures/chipped/tiled_gray_stained_glass_pane.png b/public/textures/chipped/tiled_gray_stained_glass_pane.png new file mode 100644 index 00000000..1930cdba Binary files /dev/null and b/public/textures/chipped/tiled_gray_stained_glass_pane.png differ diff --git a/public/textures/chipped/tiled_gray_wool.png b/public/textures/chipped/tiled_gray_wool.png new file mode 100644 index 00000000..3c8c91c4 Binary files /dev/null and b/public/textures/chipped/tiled_gray_wool.png differ diff --git a/public/textures/chipped/tiled_green_carpet.png b/public/textures/chipped/tiled_green_carpet.png new file mode 100644 index 00000000..442ef65b Binary files /dev/null and b/public/textures/chipped/tiled_green_carpet.png differ diff --git a/public/textures/chipped/tiled_green_stained_glass.png b/public/textures/chipped/tiled_green_stained_glass.png new file mode 100644 index 00000000..b662c8e4 Binary files /dev/null and b/public/textures/chipped/tiled_green_stained_glass.png differ diff --git a/public/textures/chipped/tiled_green_stained_glass_pane.png b/public/textures/chipped/tiled_green_stained_glass_pane.png new file mode 100644 index 00000000..1b104be4 Binary files /dev/null and b/public/textures/chipped/tiled_green_stained_glass_pane.png differ diff --git a/public/textures/chipped/tiled_green_wool.png b/public/textures/chipped/tiled_green_wool.png new file mode 100644 index 00000000..6bb83437 Binary files /dev/null and b/public/textures/chipped/tiled_green_wool.png differ diff --git a/public/textures/chipped/tiled_ice.png b/public/textures/chipped/tiled_ice.png new file mode 100644 index 00000000..ebdb8e75 Binary files /dev/null and b/public/textures/chipped/tiled_ice.png differ diff --git a/public/textures/chipped/tiled_ice_column.png b/public/textures/chipped/tiled_ice_column.png new file mode 100644 index 00000000..07927bd3 Binary files /dev/null and b/public/textures/chipped/tiled_ice_column.png differ diff --git a/public/textures/chipped/tiled_jungle_door.png b/public/textures/chipped/tiled_jungle_door.png new file mode 100644 index 00000000..9beb544a Binary files /dev/null and b/public/textures/chipped/tiled_jungle_door.png differ diff --git a/public/textures/chipped/tiled_jungle_planks.png b/public/textures/chipped/tiled_jungle_planks.png new file mode 100644 index 00000000..f0a4c2b9 Binary files /dev/null and b/public/textures/chipped/tiled_jungle_planks.png differ diff --git a/public/textures/chipped/tiled_lapis_block.png b/public/textures/chipped/tiled_lapis_block.png new file mode 100644 index 00000000..ec13deb5 Binary files /dev/null and b/public/textures/chipped/tiled_lapis_block.png differ diff --git a/public/textures/chipped/tiled_lapis_block_column.png b/public/textures/chipped/tiled_lapis_block_column.png new file mode 100644 index 00000000..1b83890c Binary files /dev/null and b/public/textures/chipped/tiled_lapis_block_column.png differ diff --git a/public/textures/chipped/tiled_light_blue_carpet.png b/public/textures/chipped/tiled_light_blue_carpet.png new file mode 100644 index 00000000..2c2b1420 Binary files /dev/null and b/public/textures/chipped/tiled_light_blue_carpet.png differ diff --git a/public/textures/chipped/tiled_light_blue_stained_glass.png b/public/textures/chipped/tiled_light_blue_stained_glass.png new file mode 100644 index 00000000..0a10671d Binary files /dev/null and b/public/textures/chipped/tiled_light_blue_stained_glass.png differ diff --git a/public/textures/chipped/tiled_light_blue_stained_glass_pane.png b/public/textures/chipped/tiled_light_blue_stained_glass_pane.png new file mode 100644 index 00000000..151ed351 Binary files /dev/null and b/public/textures/chipped/tiled_light_blue_stained_glass_pane.png differ diff --git a/public/textures/chipped/tiled_light_blue_wool.png b/public/textures/chipped/tiled_light_blue_wool.png new file mode 100644 index 00000000..d87b5022 Binary files /dev/null and b/public/textures/chipped/tiled_light_blue_wool.png differ diff --git a/public/textures/chipped/tiled_light_gray_carpet.png b/public/textures/chipped/tiled_light_gray_carpet.png new file mode 100644 index 00000000..5b0aa067 Binary files /dev/null and b/public/textures/chipped/tiled_light_gray_carpet.png differ diff --git a/public/textures/chipped/tiled_light_gray_stained_glass.png b/public/textures/chipped/tiled_light_gray_stained_glass.png new file mode 100644 index 00000000..d903fdfe Binary files /dev/null and b/public/textures/chipped/tiled_light_gray_stained_glass.png differ diff --git a/public/textures/chipped/tiled_light_gray_stained_glass_pane.png b/public/textures/chipped/tiled_light_gray_stained_glass_pane.png new file mode 100644 index 00000000..50a43482 Binary files /dev/null and b/public/textures/chipped/tiled_light_gray_stained_glass_pane.png differ diff --git a/public/textures/chipped/tiled_light_gray_wool.png b/public/textures/chipped/tiled_light_gray_wool.png new file mode 100644 index 00000000..c40bab74 Binary files /dev/null and b/public/textures/chipped/tiled_light_gray_wool.png differ diff --git a/public/textures/chipped/tiled_lime_carpet.png b/public/textures/chipped/tiled_lime_carpet.png new file mode 100644 index 00000000..d47b6945 Binary files /dev/null and b/public/textures/chipped/tiled_lime_carpet.png differ diff --git a/public/textures/chipped/tiled_lime_stained_glass.png b/public/textures/chipped/tiled_lime_stained_glass.png new file mode 100644 index 00000000..ba0e11ab Binary files /dev/null and b/public/textures/chipped/tiled_lime_stained_glass.png differ diff --git a/public/textures/chipped/tiled_lime_stained_glass_pane.png b/public/textures/chipped/tiled_lime_stained_glass_pane.png new file mode 100644 index 00000000..48b0c2bf Binary files /dev/null and b/public/textures/chipped/tiled_lime_stained_glass_pane.png differ diff --git a/public/textures/chipped/tiled_lime_wool.png b/public/textures/chipped/tiled_lime_wool.png new file mode 100644 index 00000000..92e7a3ce Binary files /dev/null and b/public/textures/chipped/tiled_lime_wool.png differ diff --git a/public/textures/chipped/tiled_lodestone.png b/public/textures/chipped/tiled_lodestone.png new file mode 100644 index 00000000..69c9ac13 Binary files /dev/null and b/public/textures/chipped/tiled_lodestone.png differ diff --git a/public/textures/chipped/tiled_lodestone_column.png b/public/textures/chipped/tiled_lodestone_column.png new file mode 100644 index 00000000..3315b2f3 Binary files /dev/null and b/public/textures/chipped/tiled_lodestone_column.png differ diff --git a/public/textures/chipped/tiled_magenta_carpet.png b/public/textures/chipped/tiled_magenta_carpet.png new file mode 100644 index 00000000..d9bf0b6e Binary files /dev/null and b/public/textures/chipped/tiled_magenta_carpet.png differ diff --git a/public/textures/chipped/tiled_magenta_stained_glass.png b/public/textures/chipped/tiled_magenta_stained_glass.png new file mode 100644 index 00000000..85ed682b Binary files /dev/null and b/public/textures/chipped/tiled_magenta_stained_glass.png differ diff --git a/public/textures/chipped/tiled_magenta_stained_glass_pane.png b/public/textures/chipped/tiled_magenta_stained_glass_pane.png new file mode 100644 index 00000000..666599df Binary files /dev/null and b/public/textures/chipped/tiled_magenta_stained_glass_pane.png differ diff --git a/public/textures/chipped/tiled_magenta_wool.png b/public/textures/chipped/tiled_magenta_wool.png new file mode 100644 index 00000000..302618b5 Binary files /dev/null and b/public/textures/chipped/tiled_magenta_wool.png differ diff --git a/public/textures/chipped/tiled_magma_block.png b/public/textures/chipped/tiled_magma_block.png new file mode 100644 index 00000000..013246ee Binary files /dev/null and b/public/textures/chipped/tiled_magma_block.png differ diff --git a/public/textures/chipped/tiled_magma_block_column.png b/public/textures/chipped/tiled_magma_block_column.png new file mode 100644 index 00000000..0e8eaf4d Binary files /dev/null and b/public/textures/chipped/tiled_magma_block_column.png differ diff --git a/public/textures/chipped/tiled_mangrove_planks.png b/public/textures/chipped/tiled_mangrove_planks.png new file mode 100644 index 00000000..c44d433d Binary files /dev/null and b/public/textures/chipped/tiled_mangrove_planks.png differ diff --git a/public/textures/chipped/tiled_mossy_cobblestone.png b/public/textures/chipped/tiled_mossy_cobblestone.png new file mode 100644 index 00000000..6f8ab82c Binary files /dev/null and b/public/textures/chipped/tiled_mossy_cobblestone.png differ diff --git a/public/textures/chipped/tiled_mossy_cobblestone_column.png b/public/textures/chipped/tiled_mossy_cobblestone_column.png new file mode 100644 index 00000000..80c1b102 Binary files /dev/null and b/public/textures/chipped/tiled_mossy_cobblestone_column.png differ diff --git a/public/textures/chipped/tiled_mossy_stone_bricks.png b/public/textures/chipped/tiled_mossy_stone_bricks.png new file mode 100644 index 00000000..3933f179 Binary files /dev/null and b/public/textures/chipped/tiled_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/tiled_mossy_stone_bricks_column.png b/public/textures/chipped/tiled_mossy_stone_bricks_column.png new file mode 100644 index 00000000..02a04c5d Binary files /dev/null and b/public/textures/chipped/tiled_mossy_stone_bricks_column.png differ diff --git a/public/textures/chipped/tiled_mud_bricks.png b/public/textures/chipped/tiled_mud_bricks.png new file mode 100644 index 00000000..21cf95f3 Binary files /dev/null and b/public/textures/chipped/tiled_mud_bricks.png differ diff --git a/public/textures/chipped/tiled_mud_bricks_bricks.png b/public/textures/chipped/tiled_mud_bricks_bricks.png new file mode 100644 index 00000000..4ee8f477 Binary files /dev/null and b/public/textures/chipped/tiled_mud_bricks_bricks.png differ diff --git a/public/textures/chipped/tiled_mud_bricks_column.png b/public/textures/chipped/tiled_mud_bricks_column.png new file mode 100644 index 00000000..f0fc0bb5 Binary files /dev/null and b/public/textures/chipped/tiled_mud_bricks_column.png differ diff --git a/public/textures/chipped/tiled_mud_column.png b/public/textures/chipped/tiled_mud_column.png new file mode 100644 index 00000000..d623dc7d Binary files /dev/null and b/public/textures/chipped/tiled_mud_column.png differ diff --git a/public/textures/chipped/tiled_nether_bricks.png b/public/textures/chipped/tiled_nether_bricks.png new file mode 100644 index 00000000..28ae9616 Binary files /dev/null and b/public/textures/chipped/tiled_nether_bricks.png differ diff --git a/public/textures/chipped/tiled_nether_bricks_column.png b/public/textures/chipped/tiled_nether_bricks_column.png new file mode 100644 index 00000000..c2880147 Binary files /dev/null and b/public/textures/chipped/tiled_nether_bricks_column.png differ diff --git a/public/textures/chipped/tiled_netherrack.png b/public/textures/chipped/tiled_netherrack.png new file mode 100644 index 00000000..4f91f778 Binary files /dev/null and b/public/textures/chipped/tiled_netherrack.png differ diff --git a/public/textures/chipped/tiled_netherrack_column.png b/public/textures/chipped/tiled_netherrack_column.png new file mode 100644 index 00000000..c9df7200 Binary files /dev/null and b/public/textures/chipped/tiled_netherrack_column.png differ diff --git a/public/textures/chipped/tiled_oak_door.png b/public/textures/chipped/tiled_oak_door.png new file mode 100644 index 00000000..37e4ba27 Binary files /dev/null and b/public/textures/chipped/tiled_oak_door.png differ diff --git a/public/textures/chipped/tiled_oak_planks.png b/public/textures/chipped/tiled_oak_planks.png new file mode 100644 index 00000000..7e9e4b37 Binary files /dev/null and b/public/textures/chipped/tiled_oak_planks.png differ diff --git a/public/textures/chipped/tiled_obsidian.png b/public/textures/chipped/tiled_obsidian.png new file mode 100644 index 00000000..2e53c236 Binary files /dev/null and b/public/textures/chipped/tiled_obsidian.png differ diff --git a/public/textures/chipped/tiled_obsidian_column.png b/public/textures/chipped/tiled_obsidian_column.png new file mode 100644 index 00000000..e1f0b962 Binary files /dev/null and b/public/textures/chipped/tiled_obsidian_column.png differ diff --git a/public/textures/chipped/tiled_orange_carpet.png b/public/textures/chipped/tiled_orange_carpet.png new file mode 100644 index 00000000..c7f58921 Binary files /dev/null and b/public/textures/chipped/tiled_orange_carpet.png differ diff --git a/public/textures/chipped/tiled_orange_stained_glass.png b/public/textures/chipped/tiled_orange_stained_glass.png new file mode 100644 index 00000000..d88aa337 Binary files /dev/null and b/public/textures/chipped/tiled_orange_stained_glass.png differ diff --git a/public/textures/chipped/tiled_orange_stained_glass_pane.png b/public/textures/chipped/tiled_orange_stained_glass_pane.png new file mode 100644 index 00000000..06c28eec Binary files /dev/null and b/public/textures/chipped/tiled_orange_stained_glass_pane.png differ diff --git a/public/textures/chipped/tiled_orange_wool.png b/public/textures/chipped/tiled_orange_wool.png new file mode 100644 index 00000000..3cb678c5 Binary files /dev/null and b/public/textures/chipped/tiled_orange_wool.png differ diff --git a/public/textures/chipped/tiled_packed_ice.png b/public/textures/chipped/tiled_packed_ice.png new file mode 100644 index 00000000..ed81fb12 Binary files /dev/null and b/public/textures/chipped/tiled_packed_ice.png differ diff --git a/public/textures/chipped/tiled_packed_ice_column.png b/public/textures/chipped/tiled_packed_ice_column.png new file mode 100644 index 00000000..0f83f2ba Binary files /dev/null and b/public/textures/chipped/tiled_packed_ice_column.png differ diff --git a/public/textures/chipped/tiled_packed_mud_bricks.png b/public/textures/chipped/tiled_packed_mud_bricks.png new file mode 100644 index 00000000..a3b7138f Binary files /dev/null and b/public/textures/chipped/tiled_packed_mud_bricks.png differ diff --git a/public/textures/chipped/tiled_packed_mud_column.png b/public/textures/chipped/tiled_packed_mud_column.png new file mode 100644 index 00000000..5ab43795 Binary files /dev/null and b/public/textures/chipped/tiled_packed_mud_column.png differ diff --git a/public/textures/chipped/tiled_pink_carpet.png b/public/textures/chipped/tiled_pink_carpet.png new file mode 100644 index 00000000..0a2c75db Binary files /dev/null and b/public/textures/chipped/tiled_pink_carpet.png differ diff --git a/public/textures/chipped/tiled_pink_stained_glass.png b/public/textures/chipped/tiled_pink_stained_glass.png new file mode 100644 index 00000000..40c60837 Binary files /dev/null and b/public/textures/chipped/tiled_pink_stained_glass.png differ diff --git a/public/textures/chipped/tiled_pink_stained_glass_pane.png b/public/textures/chipped/tiled_pink_stained_glass_pane.png new file mode 100644 index 00000000..051bb95a Binary files /dev/null and b/public/textures/chipped/tiled_pink_stained_glass_pane.png differ diff --git a/public/textures/chipped/tiled_pink_wool.png b/public/textures/chipped/tiled_pink_wool.png new file mode 100644 index 00000000..8463057d Binary files /dev/null and b/public/textures/chipped/tiled_pink_wool.png differ diff --git a/public/textures/chipped/tiled_prismarine.png b/public/textures/chipped/tiled_prismarine.png new file mode 100644 index 00000000..e3c03886 Binary files /dev/null and b/public/textures/chipped/tiled_prismarine.png differ diff --git a/public/textures/chipped/tiled_prismarine_column.png b/public/textures/chipped/tiled_prismarine_column.png new file mode 100644 index 00000000..633c5604 Binary files /dev/null and b/public/textures/chipped/tiled_prismarine_column.png differ diff --git a/public/textures/chipped/tiled_purple_carpet.png b/public/textures/chipped/tiled_purple_carpet.png new file mode 100644 index 00000000..0fc6dce9 Binary files /dev/null and b/public/textures/chipped/tiled_purple_carpet.png differ diff --git a/public/textures/chipped/tiled_purple_stained_glass.png b/public/textures/chipped/tiled_purple_stained_glass.png new file mode 100644 index 00000000..15571c62 Binary files /dev/null and b/public/textures/chipped/tiled_purple_stained_glass.png differ diff --git a/public/textures/chipped/tiled_purple_stained_glass_pane.png b/public/textures/chipped/tiled_purple_stained_glass_pane.png new file mode 100644 index 00000000..303b901b Binary files /dev/null and b/public/textures/chipped/tiled_purple_stained_glass_pane.png differ diff --git a/public/textures/chipped/tiled_purple_wool.png b/public/textures/chipped/tiled_purple_wool.png new file mode 100644 index 00000000..de4e3cef Binary files /dev/null and b/public/textures/chipped/tiled_purple_wool.png differ diff --git a/public/textures/chipped/tiled_purpur_block.png b/public/textures/chipped/tiled_purpur_block.png new file mode 100644 index 00000000..7178bf3c Binary files /dev/null and b/public/textures/chipped/tiled_purpur_block.png differ diff --git a/public/textures/chipped/tiled_purpur_block_column.png b/public/textures/chipped/tiled_purpur_block_column.png new file mode 100644 index 00000000..5fa9c0fa Binary files /dev/null and b/public/textures/chipped/tiled_purpur_block_column.png differ diff --git a/public/textures/chipped/tiled_quartz_block.png b/public/textures/chipped/tiled_quartz_block.png new file mode 100644 index 00000000..1e7beb23 Binary files /dev/null and b/public/textures/chipped/tiled_quartz_block.png differ diff --git a/public/textures/chipped/tiled_quartz_block_column.png b/public/textures/chipped/tiled_quartz_block_column.png new file mode 100644 index 00000000..406b5951 Binary files /dev/null and b/public/textures/chipped/tiled_quartz_block_column.png differ diff --git a/public/textures/chipped/tiled_raw_copper_block.png b/public/textures/chipped/tiled_raw_copper_block.png new file mode 100644 index 00000000..9953c3b5 Binary files /dev/null and b/public/textures/chipped/tiled_raw_copper_block.png differ diff --git a/public/textures/chipped/tiled_raw_copper_block_column.png b/public/textures/chipped/tiled_raw_copper_block_column.png new file mode 100644 index 00000000..d9a5bb46 Binary files /dev/null and b/public/textures/chipped/tiled_raw_copper_block_column.png differ diff --git a/public/textures/chipped/tiled_raw_gold_block.png b/public/textures/chipped/tiled_raw_gold_block.png new file mode 100644 index 00000000..d8e36733 Binary files /dev/null and b/public/textures/chipped/tiled_raw_gold_block.png differ diff --git a/public/textures/chipped/tiled_raw_gold_block_column.png b/public/textures/chipped/tiled_raw_gold_block_column.png new file mode 100644 index 00000000..6cbd74ef Binary files /dev/null and b/public/textures/chipped/tiled_raw_gold_block_column.png differ diff --git a/public/textures/chipped/tiled_raw_iron_block.png b/public/textures/chipped/tiled_raw_iron_block.png new file mode 100644 index 00000000..fe14a028 Binary files /dev/null and b/public/textures/chipped/tiled_raw_iron_block.png differ diff --git a/public/textures/chipped/tiled_raw_iron_block_column.png b/public/textures/chipped/tiled_raw_iron_block_column.png new file mode 100644 index 00000000..1646f8be Binary files /dev/null and b/public/textures/chipped/tiled_raw_iron_block_column.png differ diff --git a/public/textures/chipped/tiled_red_carpet.png b/public/textures/chipped/tiled_red_carpet.png new file mode 100644 index 00000000..09bc6186 Binary files /dev/null and b/public/textures/chipped/tiled_red_carpet.png differ diff --git a/public/textures/chipped/tiled_red_nether_bricks.png b/public/textures/chipped/tiled_red_nether_bricks.png new file mode 100644 index 00000000..f4195747 Binary files /dev/null and b/public/textures/chipped/tiled_red_nether_bricks.png differ diff --git a/public/textures/chipped/tiled_red_nether_bricks_column.png b/public/textures/chipped/tiled_red_nether_bricks_column.png new file mode 100644 index 00000000..37f6f734 Binary files /dev/null and b/public/textures/chipped/tiled_red_nether_bricks_column.png differ diff --git a/public/textures/chipped/tiled_red_sandstone.png b/public/textures/chipped/tiled_red_sandstone.png new file mode 100644 index 00000000..f6d03e2f Binary files /dev/null and b/public/textures/chipped/tiled_red_sandstone.png differ diff --git a/public/textures/chipped/tiled_red_sandstone_column.png b/public/textures/chipped/tiled_red_sandstone_column.png new file mode 100644 index 00000000..88a91e65 Binary files /dev/null and b/public/textures/chipped/tiled_red_sandstone_column.png differ diff --git a/public/textures/chipped/tiled_red_stained_glass.png b/public/textures/chipped/tiled_red_stained_glass.png new file mode 100644 index 00000000..ed2b0078 Binary files /dev/null and b/public/textures/chipped/tiled_red_stained_glass.png differ diff --git a/public/textures/chipped/tiled_red_stained_glass_pane.png b/public/textures/chipped/tiled_red_stained_glass_pane.png new file mode 100644 index 00000000..570c20a5 Binary files /dev/null and b/public/textures/chipped/tiled_red_stained_glass_pane.png differ diff --git a/public/textures/chipped/tiled_red_wool.png b/public/textures/chipped/tiled_red_wool.png new file mode 100644 index 00000000..2da9bd15 Binary files /dev/null and b/public/textures/chipped/tiled_red_wool.png differ diff --git a/public/textures/chipped/tiled_redstone_block.png b/public/textures/chipped/tiled_redstone_block.png new file mode 100644 index 00000000..779697d2 Binary files /dev/null and b/public/textures/chipped/tiled_redstone_block.png differ diff --git a/public/textures/chipped/tiled_redstone_block_column.png b/public/textures/chipped/tiled_redstone_block_column.png new file mode 100644 index 00000000..14f69e94 Binary files /dev/null and b/public/textures/chipped/tiled_redstone_block_column.png differ diff --git a/public/textures/chipped/tiled_sandstone.png b/public/textures/chipped/tiled_sandstone.png new file mode 100644 index 00000000..76d28b9f Binary files /dev/null and b/public/textures/chipped/tiled_sandstone.png differ diff --git a/public/textures/chipped/tiled_sandstone_column.png b/public/textures/chipped/tiled_sandstone_column.png new file mode 100644 index 00000000..aa294b5e Binary files /dev/null and b/public/textures/chipped/tiled_sandstone_column.png differ diff --git a/public/textures/chipped/tiled_sea_lantern_pillar.png b/public/textures/chipped/tiled_sea_lantern_pillar.png new file mode 100644 index 00000000..b0bbc82c Binary files /dev/null and b/public/textures/chipped/tiled_sea_lantern_pillar.png differ diff --git a/public/textures/chipped/tiled_shroomlight_pillar.png b/public/textures/chipped/tiled_shroomlight_pillar.png new file mode 100644 index 00000000..0bd5d991 Binary files /dev/null and b/public/textures/chipped/tiled_shroomlight_pillar.png differ diff --git a/public/textures/chipped/tiled_smooth_stone.png b/public/textures/chipped/tiled_smooth_stone.png new file mode 100644 index 00000000..83b6e163 Binary files /dev/null and b/public/textures/chipped/tiled_smooth_stone.png differ diff --git a/public/textures/chipped/tiled_smooth_stone_column.png b/public/textures/chipped/tiled_smooth_stone_column.png new file mode 100644 index 00000000..9efe73d9 Binary files /dev/null and b/public/textures/chipped/tiled_smooth_stone_column.png differ diff --git a/public/textures/chipped/tiled_snow_block.png b/public/textures/chipped/tiled_snow_block.png new file mode 100644 index 00000000..27c9e776 Binary files /dev/null and b/public/textures/chipped/tiled_snow_block.png differ diff --git a/public/textures/chipped/tiled_snow_block_column.png b/public/textures/chipped/tiled_snow_block_column.png new file mode 100644 index 00000000..f3a6ba7f Binary files /dev/null and b/public/textures/chipped/tiled_snow_block_column.png differ diff --git a/public/textures/chipped/tiled_spruce_door.png b/public/textures/chipped/tiled_spruce_door.png new file mode 100644 index 00000000..115ec2ee Binary files /dev/null and b/public/textures/chipped/tiled_spruce_door.png differ diff --git a/public/textures/chipped/tiled_spruce_planks.png b/public/textures/chipped/tiled_spruce_planks.png new file mode 100644 index 00000000..e79a7289 Binary files /dev/null and b/public/textures/chipped/tiled_spruce_planks.png differ diff --git a/public/textures/chipped/tiled_stone.png b/public/textures/chipped/tiled_stone.png new file mode 100644 index 00000000..322b30ba Binary files /dev/null and b/public/textures/chipped/tiled_stone.png differ diff --git a/public/textures/chipped/tiled_stone_column.png b/public/textures/chipped/tiled_stone_column.png new file mode 100644 index 00000000..a9e58c8f Binary files /dev/null and b/public/textures/chipped/tiled_stone_column.png differ diff --git a/public/textures/chipped/tiled_tuff.png b/public/textures/chipped/tiled_tuff.png new file mode 100644 index 00000000..debc9928 Binary files /dev/null and b/public/textures/chipped/tiled_tuff.png differ diff --git a/public/textures/chipped/tiled_tuff_column.png b/public/textures/chipped/tiled_tuff_column.png new file mode 100644 index 00000000..67a71fd4 Binary files /dev/null and b/public/textures/chipped/tiled_tuff_column.png differ diff --git a/public/textures/chipped/tiled_warped_door.png b/public/textures/chipped/tiled_warped_door.png new file mode 100644 index 00000000..acc94229 Binary files /dev/null and b/public/textures/chipped/tiled_warped_door.png differ diff --git a/public/textures/chipped/tiled_warped_planks.png b/public/textures/chipped/tiled_warped_planks.png new file mode 100644 index 00000000..b1235689 Binary files /dev/null and b/public/textures/chipped/tiled_warped_planks.png differ diff --git a/public/textures/chipped/tiled_white_carpet.png b/public/textures/chipped/tiled_white_carpet.png new file mode 100644 index 00000000..71baa1f2 Binary files /dev/null and b/public/textures/chipped/tiled_white_carpet.png differ diff --git a/public/textures/chipped/tiled_white_stained_glass.png b/public/textures/chipped/tiled_white_stained_glass.png new file mode 100644 index 00000000..3a4ec199 Binary files /dev/null and b/public/textures/chipped/tiled_white_stained_glass.png differ diff --git a/public/textures/chipped/tiled_white_stained_glass_pane.png b/public/textures/chipped/tiled_white_stained_glass_pane.png new file mode 100644 index 00000000..5758b72c Binary files /dev/null and b/public/textures/chipped/tiled_white_stained_glass_pane.png differ diff --git a/public/textures/chipped/tiled_white_wool.png b/public/textures/chipped/tiled_white_wool.png new file mode 100644 index 00000000..874f2246 Binary files /dev/null and b/public/textures/chipped/tiled_white_wool.png differ diff --git a/public/textures/chipped/tiled_yellow_carpet.png b/public/textures/chipped/tiled_yellow_carpet.png new file mode 100644 index 00000000..3c68a9e1 Binary files /dev/null and b/public/textures/chipped/tiled_yellow_carpet.png differ diff --git a/public/textures/chipped/tiled_yellow_stained_glass.png b/public/textures/chipped/tiled_yellow_stained_glass.png new file mode 100644 index 00000000..2610fcb0 Binary files /dev/null and b/public/textures/chipped/tiled_yellow_stained_glass.png differ diff --git a/public/textures/chipped/tiled_yellow_stained_glass_pane.png b/public/textures/chipped/tiled_yellow_stained_glass_pane.png new file mode 100644 index 00000000..97962668 Binary files /dev/null and b/public/textures/chipped/tiled_yellow_stained_glass_pane.png differ diff --git a/public/textures/chipped/tiled_yellow_wool.png b/public/textures/chipped/tiled_yellow_wool.png new file mode 100644 index 00000000..4860f6d8 Binary files /dev/null and b/public/textures/chipped/tiled_yellow_wool.png differ diff --git a/public/textures/chipped/tinkering_table.png b/public/textures/chipped/tinkering_table.png new file mode 100644 index 00000000..ccb942b8 Binary files /dev/null and b/public/textures/chipped/tinkering_table.png differ diff --git a/public/textures/chipped/tiny_amethyst_block_bricks.png b/public/textures/chipped/tiny_amethyst_block_bricks.png new file mode 100644 index 00000000..5aa97e58 Binary files /dev/null and b/public/textures/chipped/tiny_amethyst_block_bricks.png differ diff --git a/public/textures/chipped/tiny_ancient_debris_bricks.png b/public/textures/chipped/tiny_ancient_debris_bricks.png new file mode 100644 index 00000000..5c61e4c4 Binary files /dev/null and b/public/textures/chipped/tiny_ancient_debris_bricks.png differ diff --git a/public/textures/chipped/tiny_andesite_bricks.png b/public/textures/chipped/tiny_andesite_bricks.png new file mode 100644 index 00000000..ea129996 Binary files /dev/null and b/public/textures/chipped/tiny_andesite_bricks.png differ diff --git a/public/textures/chipped/tiny_basalt_bricks.png b/public/textures/chipped/tiny_basalt_bricks.png new file mode 100644 index 00000000..dff00f1a Binary files /dev/null and b/public/textures/chipped/tiny_basalt_bricks.png differ diff --git a/public/textures/chipped/tiny_blackstone_bricks.png b/public/textures/chipped/tiny_blackstone_bricks.png new file mode 100644 index 00000000..b421c2fc Binary files /dev/null and b/public/textures/chipped/tiny_blackstone_bricks.png differ diff --git a/public/textures/chipped/tiny_blue_ice_bricks.png b/public/textures/chipped/tiny_blue_ice_bricks.png new file mode 100644 index 00000000..9f3be164 Binary files /dev/null and b/public/textures/chipped/tiny_blue_ice_bricks.png differ diff --git a/public/textures/chipped/tiny_borderless_bricks_bricks.png b/public/textures/chipped/tiny_borderless_bricks_bricks.png new file mode 100644 index 00000000..8bb036da Binary files /dev/null and b/public/textures/chipped/tiny_borderless_bricks_bricks.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_amethyst_block.png b/public/textures/chipped/tiny_brick_bordered_amethyst_block.png new file mode 100644 index 00000000..63aa8af5 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_amethyst_block.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_ancient_debris.png b/public/textures/chipped/tiny_brick_bordered_ancient_debris.png new file mode 100644 index 00000000..dfb3d7d0 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_ancient_debris.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_andesite.png b/public/textures/chipped/tiny_brick_bordered_andesite.png new file mode 100644 index 00000000..3d31dd22 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_andesite.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_basalt.png b/public/textures/chipped/tiny_brick_bordered_basalt.png new file mode 100644 index 00000000..0c082810 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_basalt.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_blackstone.png b/public/textures/chipped/tiny_brick_bordered_blackstone.png new file mode 100644 index 00000000..d7937579 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_blackstone.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_blue_ice.png b/public/textures/chipped/tiny_brick_bordered_blue_ice.png new file mode 100644 index 00000000..c82f6eb9 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_blue_ice.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_borderless_bricks.png b/public/textures/chipped/tiny_brick_bordered_borderless_bricks.png new file mode 100644 index 00000000..7dae7506 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_borderless_bricks.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_bricks.png b/public/textures/chipped/tiny_brick_bordered_bricks.png new file mode 100644 index 00000000..88678248 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_bricks.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_calcite.png b/public/textures/chipped/tiny_brick_bordered_calcite.png new file mode 100644 index 00000000..48d9527a Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_calcite.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_clay.png b/public/textures/chipped/tiny_brick_bordered_clay.png new file mode 100644 index 00000000..98f5d768 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_clay.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_coal_block.png b/public/textures/chipped/tiny_brick_bordered_coal_block.png new file mode 100644 index 00000000..5ed2b138 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_coal_block.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_cobblestone.png b/public/textures/chipped/tiny_brick_bordered_cobblestone.png new file mode 100644 index 00000000..f1d99744 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_cobblestone.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_crying_obsidian.png b/public/textures/chipped/tiny_brick_bordered_crying_obsidian.png new file mode 100644 index 00000000..b541d7b9 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_crying_obsidian.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_dark_prismarine.png b/public/textures/chipped/tiny_brick_bordered_dark_prismarine.png new file mode 100644 index 00000000..a1a452c2 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_dark_prismarine.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_deepslate.png b/public/textures/chipped/tiny_brick_bordered_deepslate.png new file mode 100644 index 00000000..9e5ef02c Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_deepslate.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_diorite.png b/public/textures/chipped/tiny_brick_bordered_diorite.png new file mode 100644 index 00000000..d561bd31 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_diorite.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_dirt.png b/public/textures/chipped/tiny_brick_bordered_dirt.png new file mode 100644 index 00000000..5e4b7e3a Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_dirt.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_dripstone_block.png b/public/textures/chipped/tiny_brick_bordered_dripstone_block.png new file mode 100644 index 00000000..4da6bf52 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_dripstone_block.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_end_stone.png b/public/textures/chipped/tiny_brick_bordered_end_stone.png new file mode 100644 index 00000000..0196d149 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_end_stone.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_gilded_blackstone.png b/public/textures/chipped/tiny_brick_bordered_gilded_blackstone.png new file mode 100644 index 00000000..7aefb84a Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_gilded_blackstone.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_granite.png b/public/textures/chipped/tiny_brick_bordered_granite.png new file mode 100644 index 00000000..652a8cbe Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_granite.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_ice.png b/public/textures/chipped/tiny_brick_bordered_ice.png new file mode 100644 index 00000000..4f9f5059 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_ice.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_lapis_block.png b/public/textures/chipped/tiny_brick_bordered_lapis_block.png new file mode 100644 index 00000000..ff9b7359 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_lapis_block.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_lodestone.png b/public/textures/chipped/tiny_brick_bordered_lodestone.png new file mode 100644 index 00000000..25b66387 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_lodestone.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_magma_block.png b/public/textures/chipped/tiny_brick_bordered_magma_block.png new file mode 100644 index 00000000..fd3b63f3 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_magma_block.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_mossy_cobblestone.png b/public/textures/chipped/tiny_brick_bordered_mossy_cobblestone.png new file mode 100644 index 00000000..ffc97e09 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_mossy_cobblestone.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_mossy_stone_bricks.png b/public/textures/chipped/tiny_brick_bordered_mossy_stone_bricks.png new file mode 100644 index 00000000..5928e697 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_nether_bricks.png b/public/textures/chipped/tiny_brick_bordered_nether_bricks.png new file mode 100644 index 00000000..9fa1352b Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_nether_bricks.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_netherrack.png b/public/textures/chipped/tiny_brick_bordered_netherrack.png new file mode 100644 index 00000000..f1d7aa88 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_netherrack.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_obsidian.png b/public/textures/chipped/tiny_brick_bordered_obsidian.png new file mode 100644 index 00000000..475d9498 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_obsidian.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_packed_ice.png b/public/textures/chipped/tiny_brick_bordered_packed_ice.png new file mode 100644 index 00000000..5d3ef66c Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_packed_ice.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_prismarine.png b/public/textures/chipped/tiny_brick_bordered_prismarine.png new file mode 100644 index 00000000..50ba4f24 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_prismarine.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_purpur_block.png b/public/textures/chipped/tiny_brick_bordered_purpur_block.png new file mode 100644 index 00000000..92abea33 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_purpur_block.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_quartz_block.png b/public/textures/chipped/tiny_brick_bordered_quartz_block.png new file mode 100644 index 00000000..fabd1d1b Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_quartz_block.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_raw_copper_block.png b/public/textures/chipped/tiny_brick_bordered_raw_copper_block.png new file mode 100644 index 00000000..b2a5f54c Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_raw_copper_block.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_raw_gold_block.png b/public/textures/chipped/tiny_brick_bordered_raw_gold_block.png new file mode 100644 index 00000000..cba1cc91 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_raw_gold_block.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_raw_iron_block.png b/public/textures/chipped/tiny_brick_bordered_raw_iron_block.png new file mode 100644 index 00000000..7b279dfb Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_raw_iron_block.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_red_nether_bricks.png b/public/textures/chipped/tiny_brick_bordered_red_nether_bricks.png new file mode 100644 index 00000000..65f0c9e2 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_red_nether_bricks.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_red_sandstone.png b/public/textures/chipped/tiny_brick_bordered_red_sandstone.png new file mode 100644 index 00000000..12584fc3 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_red_sandstone.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_redstone_block.png b/public/textures/chipped/tiny_brick_bordered_redstone_block.png new file mode 100644 index 00000000..530a3dcd Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_redstone_block.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_sandstone.png b/public/textures/chipped/tiny_brick_bordered_sandstone.png new file mode 100644 index 00000000..d3698a38 Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_sandstone.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_smooth_stone.png b/public/textures/chipped/tiny_brick_bordered_smooth_stone.png new file mode 100644 index 00000000..2d16fd9e Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_smooth_stone.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_snow_block.png b/public/textures/chipped/tiny_brick_bordered_snow_block.png new file mode 100644 index 00000000..cce166af Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_snow_block.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_stone.png b/public/textures/chipped/tiny_brick_bordered_stone.png new file mode 100644 index 00000000..9df01bcb Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_stone.png differ diff --git a/public/textures/chipped/tiny_brick_bordered_tuff.png b/public/textures/chipped/tiny_brick_bordered_tuff.png new file mode 100644 index 00000000..56c27c9a Binary files /dev/null and b/public/textures/chipped/tiny_brick_bordered_tuff.png differ diff --git a/public/textures/chipped/tiny_bricks_bricks.png b/public/textures/chipped/tiny_bricks_bricks.png new file mode 100644 index 00000000..adbc501f Binary files /dev/null and b/public/textures/chipped/tiny_bricks_bricks.png differ diff --git a/public/textures/chipped/tiny_calcite_bricks.png b/public/textures/chipped/tiny_calcite_bricks.png new file mode 100644 index 00000000..28dc59bb Binary files /dev/null and b/public/textures/chipped/tiny_calcite_bricks.png differ diff --git a/public/textures/chipped/tiny_clay_bricks.png b/public/textures/chipped/tiny_clay_bricks.png new file mode 100644 index 00000000..ebd9b902 Binary files /dev/null and b/public/textures/chipped/tiny_clay_bricks.png differ diff --git a/public/textures/chipped/tiny_coal_block_bricks.png b/public/textures/chipped/tiny_coal_block_bricks.png new file mode 100644 index 00000000..290c26b0 Binary files /dev/null and b/public/textures/chipped/tiny_coal_block_bricks.png differ diff --git a/public/textures/chipped/tiny_cobblestone_bricks.png b/public/textures/chipped/tiny_cobblestone_bricks.png new file mode 100644 index 00000000..e1f1ea5b Binary files /dev/null and b/public/textures/chipped/tiny_cobblestone_bricks.png differ diff --git a/public/textures/chipped/tiny_crying_obsidian_bricks.png b/public/textures/chipped/tiny_crying_obsidian_bricks.png new file mode 100644 index 00000000..4be0be9c Binary files /dev/null and b/public/textures/chipped/tiny_crying_obsidian_bricks.png differ diff --git a/public/textures/chipped/tiny_dark_prismarine_bricks.png b/public/textures/chipped/tiny_dark_prismarine_bricks.png new file mode 100644 index 00000000..658d13f6 Binary files /dev/null and b/public/textures/chipped/tiny_dark_prismarine_bricks.png differ diff --git a/public/textures/chipped/tiny_deepslate_bricks.png b/public/textures/chipped/tiny_deepslate_bricks.png new file mode 100644 index 00000000..2a4f3554 Binary files /dev/null and b/public/textures/chipped/tiny_deepslate_bricks.png differ diff --git a/public/textures/chipped/tiny_diorite_bricks.png b/public/textures/chipped/tiny_diorite_bricks.png new file mode 100644 index 00000000..3b2e756e Binary files /dev/null and b/public/textures/chipped/tiny_diorite_bricks.png differ diff --git a/public/textures/chipped/tiny_dirt_bricks.png b/public/textures/chipped/tiny_dirt_bricks.png new file mode 100644 index 00000000..9e461265 Binary files /dev/null and b/public/textures/chipped/tiny_dirt_bricks.png differ diff --git a/public/textures/chipped/tiny_dripstone_block_bricks.png b/public/textures/chipped/tiny_dripstone_block_bricks.png new file mode 100644 index 00000000..f6b6a333 Binary files /dev/null and b/public/textures/chipped/tiny_dripstone_block_bricks.png differ diff --git a/public/textures/chipped/tiny_end_stone_bricks.png b/public/textures/chipped/tiny_end_stone_bricks.png new file mode 100644 index 00000000..81e0c5bb Binary files /dev/null and b/public/textures/chipped/tiny_end_stone_bricks.png differ diff --git a/public/textures/chipped/tiny_gilded_blackstone_bricks.png b/public/textures/chipped/tiny_gilded_blackstone_bricks.png new file mode 100644 index 00000000..0f43ddfb Binary files /dev/null and b/public/textures/chipped/tiny_gilded_blackstone_bricks.png differ diff --git a/public/textures/chipped/tiny_granite_bricks.png b/public/textures/chipped/tiny_granite_bricks.png new file mode 100644 index 00000000..96bd86c6 Binary files /dev/null and b/public/textures/chipped/tiny_granite_bricks.png differ diff --git a/public/textures/chipped/tiny_ice_bricks.png b/public/textures/chipped/tiny_ice_bricks.png new file mode 100644 index 00000000..8b67944a Binary files /dev/null and b/public/textures/chipped/tiny_ice_bricks.png differ diff --git a/public/textures/chipped/tiny_lapis_block_bricks.png b/public/textures/chipped/tiny_lapis_block_bricks.png new file mode 100644 index 00000000..ed4a5e32 Binary files /dev/null and b/public/textures/chipped/tiny_lapis_block_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_amethyst_block_bricks.png b/public/textures/chipped/tiny_layered_amethyst_block_bricks.png new file mode 100644 index 00000000..ae1501d0 Binary files /dev/null and b/public/textures/chipped/tiny_layered_amethyst_block_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_amethyst_block_slabs.png b/public/textures/chipped/tiny_layered_amethyst_block_slabs.png new file mode 100644 index 00000000..0bfd2d1f Binary files /dev/null and b/public/textures/chipped/tiny_layered_amethyst_block_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_ancient_debris_bricks.png b/public/textures/chipped/tiny_layered_ancient_debris_bricks.png new file mode 100644 index 00000000..33ad59e8 Binary files /dev/null and b/public/textures/chipped/tiny_layered_ancient_debris_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_ancient_debris_slabs.png b/public/textures/chipped/tiny_layered_ancient_debris_slabs.png new file mode 100644 index 00000000..7daa434c Binary files /dev/null and b/public/textures/chipped/tiny_layered_ancient_debris_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_andesite_bricks.png b/public/textures/chipped/tiny_layered_andesite_bricks.png new file mode 100644 index 00000000..bb9396c7 Binary files /dev/null and b/public/textures/chipped/tiny_layered_andesite_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_andesite_slabs.png b/public/textures/chipped/tiny_layered_andesite_slabs.png new file mode 100644 index 00000000..0257bd48 Binary files /dev/null and b/public/textures/chipped/tiny_layered_andesite_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_basalt_bricks.png b/public/textures/chipped/tiny_layered_basalt_bricks.png new file mode 100644 index 00000000..fea35fea Binary files /dev/null and b/public/textures/chipped/tiny_layered_basalt_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_basalt_slabs.png b/public/textures/chipped/tiny_layered_basalt_slabs.png new file mode 100644 index 00000000..d2904caa Binary files /dev/null and b/public/textures/chipped/tiny_layered_basalt_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_blackstone_bricks.png b/public/textures/chipped/tiny_layered_blackstone_bricks.png new file mode 100644 index 00000000..ca0ab18b Binary files /dev/null and b/public/textures/chipped/tiny_layered_blackstone_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_blackstone_slabs.png b/public/textures/chipped/tiny_layered_blackstone_slabs.png new file mode 100644 index 00000000..7a5506a4 Binary files /dev/null and b/public/textures/chipped/tiny_layered_blackstone_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_blue_ice_bricks.png b/public/textures/chipped/tiny_layered_blue_ice_bricks.png new file mode 100644 index 00000000..fdda05ad Binary files /dev/null and b/public/textures/chipped/tiny_layered_blue_ice_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_blue_ice_slabs.png b/public/textures/chipped/tiny_layered_blue_ice_slabs.png new file mode 100644 index 00000000..5e804bd4 Binary files /dev/null and b/public/textures/chipped/tiny_layered_blue_ice_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_borderless_bricks_bricks.png b/public/textures/chipped/tiny_layered_borderless_bricks_bricks.png new file mode 100644 index 00000000..e5a44293 Binary files /dev/null and b/public/textures/chipped/tiny_layered_borderless_bricks_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_borderless_bricks_slabs.png b/public/textures/chipped/tiny_layered_borderless_bricks_slabs.png new file mode 100644 index 00000000..83307e9c Binary files /dev/null and b/public/textures/chipped/tiny_layered_borderless_bricks_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_bricks_bricks.png b/public/textures/chipped/tiny_layered_bricks_bricks.png new file mode 100644 index 00000000..60e2571a Binary files /dev/null and b/public/textures/chipped/tiny_layered_bricks_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_bricks_slabs.png b/public/textures/chipped/tiny_layered_bricks_slabs.png new file mode 100644 index 00000000..ccdbd027 Binary files /dev/null and b/public/textures/chipped/tiny_layered_bricks_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_calcite_bricks.png b/public/textures/chipped/tiny_layered_calcite_bricks.png new file mode 100644 index 00000000..8c1240f8 Binary files /dev/null and b/public/textures/chipped/tiny_layered_calcite_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_calcite_slabs.png b/public/textures/chipped/tiny_layered_calcite_slabs.png new file mode 100644 index 00000000..a3c3558f Binary files /dev/null and b/public/textures/chipped/tiny_layered_calcite_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_clay_bricks.png b/public/textures/chipped/tiny_layered_clay_bricks.png new file mode 100644 index 00000000..e58b3892 Binary files /dev/null and b/public/textures/chipped/tiny_layered_clay_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_clay_slabs.png b/public/textures/chipped/tiny_layered_clay_slabs.png new file mode 100644 index 00000000..6c3e96f3 Binary files /dev/null and b/public/textures/chipped/tiny_layered_clay_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_coal_block_bricks.png b/public/textures/chipped/tiny_layered_coal_block_bricks.png new file mode 100644 index 00000000..e2cc21bc Binary files /dev/null and b/public/textures/chipped/tiny_layered_coal_block_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_coal_block_slabs.png b/public/textures/chipped/tiny_layered_coal_block_slabs.png new file mode 100644 index 00000000..2b2075d0 Binary files /dev/null and b/public/textures/chipped/tiny_layered_coal_block_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_cobblestone_bricks.png b/public/textures/chipped/tiny_layered_cobblestone_bricks.png new file mode 100644 index 00000000..2e672e6d Binary files /dev/null and b/public/textures/chipped/tiny_layered_cobblestone_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_cobblestone_slabs.png b/public/textures/chipped/tiny_layered_cobblestone_slabs.png new file mode 100644 index 00000000..be80eea5 Binary files /dev/null and b/public/textures/chipped/tiny_layered_cobblestone_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_crying_obsidian_bricks.png b/public/textures/chipped/tiny_layered_crying_obsidian_bricks.png new file mode 100644 index 00000000..5d763aba Binary files /dev/null and b/public/textures/chipped/tiny_layered_crying_obsidian_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_crying_obsidian_slabs.png b/public/textures/chipped/tiny_layered_crying_obsidian_slabs.png new file mode 100644 index 00000000..fd06d56c Binary files /dev/null and b/public/textures/chipped/tiny_layered_crying_obsidian_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_dark_prismarine_bricks.png b/public/textures/chipped/tiny_layered_dark_prismarine_bricks.png new file mode 100644 index 00000000..131abfd8 Binary files /dev/null and b/public/textures/chipped/tiny_layered_dark_prismarine_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_dark_prismarine_slabs.png b/public/textures/chipped/tiny_layered_dark_prismarine_slabs.png new file mode 100644 index 00000000..fe147a82 Binary files /dev/null and b/public/textures/chipped/tiny_layered_dark_prismarine_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_deepslate_bricks.png b/public/textures/chipped/tiny_layered_deepslate_bricks.png new file mode 100644 index 00000000..58591b18 Binary files /dev/null and b/public/textures/chipped/tiny_layered_deepslate_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_deepslate_slabs.png b/public/textures/chipped/tiny_layered_deepslate_slabs.png new file mode 100644 index 00000000..a23c7e2f Binary files /dev/null and b/public/textures/chipped/tiny_layered_deepslate_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_diorite_bricks.png b/public/textures/chipped/tiny_layered_diorite_bricks.png new file mode 100644 index 00000000..b325dcf2 Binary files /dev/null and b/public/textures/chipped/tiny_layered_diorite_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_diorite_slabs.png b/public/textures/chipped/tiny_layered_diorite_slabs.png new file mode 100644 index 00000000..26b1d23f Binary files /dev/null and b/public/textures/chipped/tiny_layered_diorite_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_dirt_bricks.png b/public/textures/chipped/tiny_layered_dirt_bricks.png new file mode 100644 index 00000000..159d7a2a Binary files /dev/null and b/public/textures/chipped/tiny_layered_dirt_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_dirt_slabs.png b/public/textures/chipped/tiny_layered_dirt_slabs.png new file mode 100644 index 00000000..59d89fb5 Binary files /dev/null and b/public/textures/chipped/tiny_layered_dirt_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_dripstone_block_bricks.png b/public/textures/chipped/tiny_layered_dripstone_block_bricks.png new file mode 100644 index 00000000..46570237 Binary files /dev/null and b/public/textures/chipped/tiny_layered_dripstone_block_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_dripstone_block_slabs.png b/public/textures/chipped/tiny_layered_dripstone_block_slabs.png new file mode 100644 index 00000000..0ad52d33 Binary files /dev/null and b/public/textures/chipped/tiny_layered_dripstone_block_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_end_stone_bricks.png b/public/textures/chipped/tiny_layered_end_stone_bricks.png new file mode 100644 index 00000000..1a294c83 Binary files /dev/null and b/public/textures/chipped/tiny_layered_end_stone_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_end_stone_slabs.png b/public/textures/chipped/tiny_layered_end_stone_slabs.png new file mode 100644 index 00000000..457e8812 Binary files /dev/null and b/public/textures/chipped/tiny_layered_end_stone_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_gilded_blackstone_bricks.png b/public/textures/chipped/tiny_layered_gilded_blackstone_bricks.png new file mode 100644 index 00000000..8b8c6387 Binary files /dev/null and b/public/textures/chipped/tiny_layered_gilded_blackstone_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_gilded_blackstone_slabs.png b/public/textures/chipped/tiny_layered_gilded_blackstone_slabs.png new file mode 100644 index 00000000..7f792b54 Binary files /dev/null and b/public/textures/chipped/tiny_layered_gilded_blackstone_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_granite_bricks.png b/public/textures/chipped/tiny_layered_granite_bricks.png new file mode 100644 index 00000000..69078f44 Binary files /dev/null and b/public/textures/chipped/tiny_layered_granite_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_granite_slabs.png b/public/textures/chipped/tiny_layered_granite_slabs.png new file mode 100644 index 00000000..83e07640 Binary files /dev/null and b/public/textures/chipped/tiny_layered_granite_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_ice_bricks.png b/public/textures/chipped/tiny_layered_ice_bricks.png new file mode 100644 index 00000000..a85deee7 Binary files /dev/null and b/public/textures/chipped/tiny_layered_ice_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_ice_slabs.png b/public/textures/chipped/tiny_layered_ice_slabs.png new file mode 100644 index 00000000..3e420bd5 Binary files /dev/null and b/public/textures/chipped/tiny_layered_ice_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_lapis_block_bricks.png b/public/textures/chipped/tiny_layered_lapis_block_bricks.png new file mode 100644 index 00000000..896afef3 Binary files /dev/null and b/public/textures/chipped/tiny_layered_lapis_block_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_lapis_block_slabs.png b/public/textures/chipped/tiny_layered_lapis_block_slabs.png new file mode 100644 index 00000000..0d7778a7 Binary files /dev/null and b/public/textures/chipped/tiny_layered_lapis_block_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_lodestone_bricks.png b/public/textures/chipped/tiny_layered_lodestone_bricks.png new file mode 100644 index 00000000..07d8a2cb Binary files /dev/null and b/public/textures/chipped/tiny_layered_lodestone_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_lodestone_slabs.png b/public/textures/chipped/tiny_layered_lodestone_slabs.png new file mode 100644 index 00000000..9a7bfe45 Binary files /dev/null and b/public/textures/chipped/tiny_layered_lodestone_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_magma_block_bricks.png b/public/textures/chipped/tiny_layered_magma_block_bricks.png new file mode 100644 index 00000000..ab7e81bc Binary files /dev/null and b/public/textures/chipped/tiny_layered_magma_block_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_magma_block_slabs.png b/public/textures/chipped/tiny_layered_magma_block_slabs.png new file mode 100644 index 00000000..ebab5c87 Binary files /dev/null and b/public/textures/chipped/tiny_layered_magma_block_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_mossy_cobblestone_bricks.png b/public/textures/chipped/tiny_layered_mossy_cobblestone_bricks.png new file mode 100644 index 00000000..3658dfdb Binary files /dev/null and b/public/textures/chipped/tiny_layered_mossy_cobblestone_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_mossy_cobblestone_slabs.png b/public/textures/chipped/tiny_layered_mossy_cobblestone_slabs.png new file mode 100644 index 00000000..b32e4283 Binary files /dev/null and b/public/textures/chipped/tiny_layered_mossy_cobblestone_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_mossy_stone_bricks_bricks.png b/public/textures/chipped/tiny_layered_mossy_stone_bricks_bricks.png new file mode 100644 index 00000000..69bd68ea Binary files /dev/null and b/public/textures/chipped/tiny_layered_mossy_stone_bricks_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_mossy_stone_bricks_slabs.png b/public/textures/chipped/tiny_layered_mossy_stone_bricks_slabs.png new file mode 100644 index 00000000..c327c6a2 Binary files /dev/null and b/public/textures/chipped/tiny_layered_mossy_stone_bricks_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_mud_bricks.png b/public/textures/chipped/tiny_layered_mud_bricks.png new file mode 100644 index 00000000..eb7eddd7 Binary files /dev/null and b/public/textures/chipped/tiny_layered_mud_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_mud_bricks_bricks.png b/public/textures/chipped/tiny_layered_mud_bricks_bricks.png new file mode 100644 index 00000000..e093690a Binary files /dev/null and b/public/textures/chipped/tiny_layered_mud_bricks_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_nether_bricks_bricks.png b/public/textures/chipped/tiny_layered_nether_bricks_bricks.png new file mode 100644 index 00000000..7a91333a Binary files /dev/null and b/public/textures/chipped/tiny_layered_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_nether_bricks_slabs.png b/public/textures/chipped/tiny_layered_nether_bricks_slabs.png new file mode 100644 index 00000000..4e607e69 Binary files /dev/null and b/public/textures/chipped/tiny_layered_nether_bricks_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_netherrack_bricks.png b/public/textures/chipped/tiny_layered_netherrack_bricks.png new file mode 100644 index 00000000..2e21facb Binary files /dev/null and b/public/textures/chipped/tiny_layered_netherrack_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_netherrack_slabs.png b/public/textures/chipped/tiny_layered_netherrack_slabs.png new file mode 100644 index 00000000..3e3930b9 Binary files /dev/null and b/public/textures/chipped/tiny_layered_netherrack_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_obsidian_bricks.png b/public/textures/chipped/tiny_layered_obsidian_bricks.png new file mode 100644 index 00000000..4f0b883a Binary files /dev/null and b/public/textures/chipped/tiny_layered_obsidian_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_obsidian_slabs.png b/public/textures/chipped/tiny_layered_obsidian_slabs.png new file mode 100644 index 00000000..35fbcfbb Binary files /dev/null and b/public/textures/chipped/tiny_layered_obsidian_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_packed_ice_bricks.png b/public/textures/chipped/tiny_layered_packed_ice_bricks.png new file mode 100644 index 00000000..887f731d Binary files /dev/null and b/public/textures/chipped/tiny_layered_packed_ice_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_packed_ice_slabs.png b/public/textures/chipped/tiny_layered_packed_ice_slabs.png new file mode 100644 index 00000000..6f41a2d8 Binary files /dev/null and b/public/textures/chipped/tiny_layered_packed_ice_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_packed_mud_bricks.png b/public/textures/chipped/tiny_layered_packed_mud_bricks.png new file mode 100644 index 00000000..7451c989 Binary files /dev/null and b/public/textures/chipped/tiny_layered_packed_mud_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_prismarine_bricks.png b/public/textures/chipped/tiny_layered_prismarine_bricks.png new file mode 100644 index 00000000..4bb8d227 Binary files /dev/null and b/public/textures/chipped/tiny_layered_prismarine_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_prismarine_slabs.png b/public/textures/chipped/tiny_layered_prismarine_slabs.png new file mode 100644 index 00000000..2866871c Binary files /dev/null and b/public/textures/chipped/tiny_layered_prismarine_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_purpur_block_bricks.png b/public/textures/chipped/tiny_layered_purpur_block_bricks.png new file mode 100644 index 00000000..3ab3c13d Binary files /dev/null and b/public/textures/chipped/tiny_layered_purpur_block_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_purpur_block_slabs.png b/public/textures/chipped/tiny_layered_purpur_block_slabs.png new file mode 100644 index 00000000..7423da2a Binary files /dev/null and b/public/textures/chipped/tiny_layered_purpur_block_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_quartz_block_bricks.png b/public/textures/chipped/tiny_layered_quartz_block_bricks.png new file mode 100644 index 00000000..869f9cdf Binary files /dev/null and b/public/textures/chipped/tiny_layered_quartz_block_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_quartz_block_slabs.png b/public/textures/chipped/tiny_layered_quartz_block_slabs.png new file mode 100644 index 00000000..838b1bee Binary files /dev/null and b/public/textures/chipped/tiny_layered_quartz_block_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_raw_copper_block_bricks.png b/public/textures/chipped/tiny_layered_raw_copper_block_bricks.png new file mode 100644 index 00000000..b50f9020 Binary files /dev/null and b/public/textures/chipped/tiny_layered_raw_copper_block_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_raw_copper_block_slabs.png b/public/textures/chipped/tiny_layered_raw_copper_block_slabs.png new file mode 100644 index 00000000..e288f287 Binary files /dev/null and b/public/textures/chipped/tiny_layered_raw_copper_block_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_raw_gold_block_bricks.png b/public/textures/chipped/tiny_layered_raw_gold_block_bricks.png new file mode 100644 index 00000000..7e79c32a Binary files /dev/null and b/public/textures/chipped/tiny_layered_raw_gold_block_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_raw_gold_block_slabs.png b/public/textures/chipped/tiny_layered_raw_gold_block_slabs.png new file mode 100644 index 00000000..222be64b Binary files /dev/null and b/public/textures/chipped/tiny_layered_raw_gold_block_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_raw_iron_block_bricks.png b/public/textures/chipped/tiny_layered_raw_iron_block_bricks.png new file mode 100644 index 00000000..7f7be63e Binary files /dev/null and b/public/textures/chipped/tiny_layered_raw_iron_block_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_raw_iron_block_slabs.png b/public/textures/chipped/tiny_layered_raw_iron_block_slabs.png new file mode 100644 index 00000000..1956af91 Binary files /dev/null and b/public/textures/chipped/tiny_layered_raw_iron_block_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_red_nether_bricks_bricks.png b/public/textures/chipped/tiny_layered_red_nether_bricks_bricks.png new file mode 100644 index 00000000..d6bfab6e Binary files /dev/null and b/public/textures/chipped/tiny_layered_red_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_red_nether_bricks_slabs.png b/public/textures/chipped/tiny_layered_red_nether_bricks_slabs.png new file mode 100644 index 00000000..32c462b0 Binary files /dev/null and b/public/textures/chipped/tiny_layered_red_nether_bricks_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_red_sandstone_bricks.png b/public/textures/chipped/tiny_layered_red_sandstone_bricks.png new file mode 100644 index 00000000..33261ffd Binary files /dev/null and b/public/textures/chipped/tiny_layered_red_sandstone_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_red_sandstone_slabs.png b/public/textures/chipped/tiny_layered_red_sandstone_slabs.png new file mode 100644 index 00000000..910280fd Binary files /dev/null and b/public/textures/chipped/tiny_layered_red_sandstone_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_redstone_block_bricks.png b/public/textures/chipped/tiny_layered_redstone_block_bricks.png new file mode 100644 index 00000000..acac0a6e Binary files /dev/null and b/public/textures/chipped/tiny_layered_redstone_block_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_redstone_block_slabs.png b/public/textures/chipped/tiny_layered_redstone_block_slabs.png new file mode 100644 index 00000000..aaf611ba Binary files /dev/null and b/public/textures/chipped/tiny_layered_redstone_block_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_sandstone_bricks.png b/public/textures/chipped/tiny_layered_sandstone_bricks.png new file mode 100644 index 00000000..2fbbf95d Binary files /dev/null and b/public/textures/chipped/tiny_layered_sandstone_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_sandstone_slabs.png b/public/textures/chipped/tiny_layered_sandstone_slabs.png new file mode 100644 index 00000000..7c20e99d Binary files /dev/null and b/public/textures/chipped/tiny_layered_sandstone_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_smooth_stone_bricks.png b/public/textures/chipped/tiny_layered_smooth_stone_bricks.png new file mode 100644 index 00000000..1806c4ab Binary files /dev/null and b/public/textures/chipped/tiny_layered_smooth_stone_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_smooth_stone_slabs.png b/public/textures/chipped/tiny_layered_smooth_stone_slabs.png new file mode 100644 index 00000000..ca7a68d4 Binary files /dev/null and b/public/textures/chipped/tiny_layered_smooth_stone_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_snow_block_bricks.png b/public/textures/chipped/tiny_layered_snow_block_bricks.png new file mode 100644 index 00000000..757866be Binary files /dev/null and b/public/textures/chipped/tiny_layered_snow_block_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_snow_block_slabs.png b/public/textures/chipped/tiny_layered_snow_block_slabs.png new file mode 100644 index 00000000..386dcb20 Binary files /dev/null and b/public/textures/chipped/tiny_layered_snow_block_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_stone_bricks.png b/public/textures/chipped/tiny_layered_stone_bricks.png new file mode 100644 index 00000000..e533e00f Binary files /dev/null and b/public/textures/chipped/tiny_layered_stone_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_stone_slabs.png b/public/textures/chipped/tiny_layered_stone_slabs.png new file mode 100644 index 00000000..212fb554 Binary files /dev/null and b/public/textures/chipped/tiny_layered_stone_slabs.png differ diff --git a/public/textures/chipped/tiny_layered_tuff_bricks.png b/public/textures/chipped/tiny_layered_tuff_bricks.png new file mode 100644 index 00000000..08ea1c00 Binary files /dev/null and b/public/textures/chipped/tiny_layered_tuff_bricks.png differ diff --git a/public/textures/chipped/tiny_layered_tuff_slabs.png b/public/textures/chipped/tiny_layered_tuff_slabs.png new file mode 100644 index 00000000..3cb6c993 Binary files /dev/null and b/public/textures/chipped/tiny_layered_tuff_slabs.png differ diff --git a/public/textures/chipped/tiny_lodestone_bricks.png b/public/textures/chipped/tiny_lodestone_bricks.png new file mode 100644 index 00000000..7100261e Binary files /dev/null and b/public/textures/chipped/tiny_lodestone_bricks.png differ diff --git a/public/textures/chipped/tiny_magma_block_bricks.png b/public/textures/chipped/tiny_magma_block_bricks.png new file mode 100644 index 00000000..6da0b8cb Binary files /dev/null and b/public/textures/chipped/tiny_magma_block_bricks.png differ diff --git a/public/textures/chipped/tiny_mossy_cobblestone_bricks.png b/public/textures/chipped/tiny_mossy_cobblestone_bricks.png new file mode 100644 index 00000000..d4ffe278 Binary files /dev/null and b/public/textures/chipped/tiny_mossy_cobblestone_bricks.png differ diff --git a/public/textures/chipped/tiny_mossy_stone_bricks_bricks.png b/public/textures/chipped/tiny_mossy_stone_bricks_bricks.png new file mode 100644 index 00000000..54bd0dd8 Binary files /dev/null and b/public/textures/chipped/tiny_mossy_stone_bricks_bricks.png differ diff --git a/public/textures/chipped/tiny_mud_bricks.png b/public/textures/chipped/tiny_mud_bricks.png new file mode 100644 index 00000000..6b4dc080 Binary files /dev/null and b/public/textures/chipped/tiny_mud_bricks.png differ diff --git a/public/textures/chipped/tiny_mud_bricks_bricks.png b/public/textures/chipped/tiny_mud_bricks_bricks.png new file mode 100644 index 00000000..d502bf38 Binary files /dev/null and b/public/textures/chipped/tiny_mud_bricks_bricks.png differ diff --git a/public/textures/chipped/tiny_nether_bricks_bricks.png b/public/textures/chipped/tiny_nether_bricks_bricks.png new file mode 100644 index 00000000..234ca70d Binary files /dev/null and b/public/textures/chipped/tiny_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/tiny_netherrack_bricks.png b/public/textures/chipped/tiny_netherrack_bricks.png new file mode 100644 index 00000000..fa6193ed Binary files /dev/null and b/public/textures/chipped/tiny_netherrack_bricks.png differ diff --git a/public/textures/chipped/tiny_obsidian_bricks.png b/public/textures/chipped/tiny_obsidian_bricks.png new file mode 100644 index 00000000..90989489 Binary files /dev/null and b/public/textures/chipped/tiny_obsidian_bricks.png differ diff --git a/public/textures/chipped/tiny_packed_ice_bricks.png b/public/textures/chipped/tiny_packed_ice_bricks.png new file mode 100644 index 00000000..aae042ed Binary files /dev/null and b/public/textures/chipped/tiny_packed_ice_bricks.png differ diff --git a/public/textures/chipped/tiny_packed_mud_bricks.png b/public/textures/chipped/tiny_packed_mud_bricks.png new file mode 100644 index 00000000..65ba7689 Binary files /dev/null and b/public/textures/chipped/tiny_packed_mud_bricks.png differ diff --git a/public/textures/chipped/tiny_prismarine_bricks.png b/public/textures/chipped/tiny_prismarine_bricks.png new file mode 100644 index 00000000..73fdc7c6 Binary files /dev/null and b/public/textures/chipped/tiny_prismarine_bricks.png differ diff --git a/public/textures/chipped/tiny_purpur_block_bricks.png b/public/textures/chipped/tiny_purpur_block_bricks.png new file mode 100644 index 00000000..b98b126e Binary files /dev/null and b/public/textures/chipped/tiny_purpur_block_bricks.png differ diff --git a/public/textures/chipped/tiny_quartz_block_bricks.png b/public/textures/chipped/tiny_quartz_block_bricks.png new file mode 100644 index 00000000..4d29837b Binary files /dev/null and b/public/textures/chipped/tiny_quartz_block_bricks.png differ diff --git a/public/textures/chipped/tiny_raw_copper_block_bricks.png b/public/textures/chipped/tiny_raw_copper_block_bricks.png new file mode 100644 index 00000000..c8887c53 Binary files /dev/null and b/public/textures/chipped/tiny_raw_copper_block_bricks.png differ diff --git a/public/textures/chipped/tiny_raw_gold_block_bricks.png b/public/textures/chipped/tiny_raw_gold_block_bricks.png new file mode 100644 index 00000000..62da58d7 Binary files /dev/null and b/public/textures/chipped/tiny_raw_gold_block_bricks.png differ diff --git a/public/textures/chipped/tiny_raw_iron_block_bricks.png b/public/textures/chipped/tiny_raw_iron_block_bricks.png new file mode 100644 index 00000000..0697a6a1 Binary files /dev/null and b/public/textures/chipped/tiny_raw_iron_block_bricks.png differ diff --git a/public/textures/chipped/tiny_red_nether_bricks_bricks.png b/public/textures/chipped/tiny_red_nether_bricks_bricks.png new file mode 100644 index 00000000..cda26e0b Binary files /dev/null and b/public/textures/chipped/tiny_red_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/tiny_red_sandstone_bricks.png b/public/textures/chipped/tiny_red_sandstone_bricks.png new file mode 100644 index 00000000..31254b74 Binary files /dev/null and b/public/textures/chipped/tiny_red_sandstone_bricks.png differ diff --git a/public/textures/chipped/tiny_redstone_block_bricks.png b/public/textures/chipped/tiny_redstone_block_bricks.png new file mode 100644 index 00000000..a158a5d4 Binary files /dev/null and b/public/textures/chipped/tiny_redstone_block_bricks.png differ diff --git a/public/textures/chipped/tiny_sandstone_bricks.png b/public/textures/chipped/tiny_sandstone_bricks.png new file mode 100644 index 00000000..cf3d7911 Binary files /dev/null and b/public/textures/chipped/tiny_sandstone_bricks.png differ diff --git a/public/textures/chipped/tiny_smooth_stone_bricks.png b/public/textures/chipped/tiny_smooth_stone_bricks.png new file mode 100644 index 00000000..ef986dda Binary files /dev/null and b/public/textures/chipped/tiny_smooth_stone_bricks.png differ diff --git a/public/textures/chipped/tiny_smug_carved_pumpkin.png b/public/textures/chipped/tiny_smug_carved_pumpkin.png new file mode 100644 index 00000000..4cf39149 Binary files /dev/null and b/public/textures/chipped/tiny_smug_carved_pumpkin.png differ diff --git a/public/textures/chipped/tiny_smug_jack_o_lantern.png b/public/textures/chipped/tiny_smug_jack_o_lantern.png new file mode 100644 index 00000000..2edb09c5 Binary files /dev/null and b/public/textures/chipped/tiny_smug_jack_o_lantern.png differ diff --git a/public/textures/chipped/tiny_snow_block_bricks.png b/public/textures/chipped/tiny_snow_block_bricks.png new file mode 100644 index 00000000..fff22ad4 Binary files /dev/null and b/public/textures/chipped/tiny_snow_block_bricks.png differ diff --git a/public/textures/chipped/tiny_stone_bricks.png b/public/textures/chipped/tiny_stone_bricks.png new file mode 100644 index 00000000..70ffd0fb Binary files /dev/null and b/public/textures/chipped/tiny_stone_bricks.png differ diff --git a/public/textures/chipped/tiny_tuff_bricks.png b/public/textures/chipped/tiny_tuff_bricks.png new file mode 100644 index 00000000..69b863a0 Binary files /dev/null and b/public/textures/chipped/tiny_tuff_bricks.png differ diff --git a/public/textures/chipped/traditional_carved_pumpkin.png b/public/textures/chipped/traditional_carved_pumpkin.png new file mode 100644 index 00000000..6e0d3155 Binary files /dev/null and b/public/textures/chipped/traditional_carved_pumpkin.png differ diff --git a/public/textures/chipped/traditional_jack_o_lantern.png b/public/textures/chipped/traditional_jack_o_lantern.png new file mode 100644 index 00000000..e6a4845a Binary files /dev/null and b/public/textures/chipped/traditional_jack_o_lantern.png differ diff --git a/public/textures/chipped/trampled_soul_sand.png b/public/textures/chipped/trampled_soul_sand.png new file mode 100644 index 00000000..97dd6378 Binary files /dev/null and b/public/textures/chipped/trampled_soul_sand.png differ diff --git a/public/textures/chipped/triangular_black_terracotta.png b/public/textures/chipped/triangular_black_terracotta.png new file mode 100644 index 00000000..80bb5685 Binary files /dev/null and b/public/textures/chipped/triangular_black_terracotta.png differ diff --git a/public/textures/chipped/triangular_blue_terracotta.png b/public/textures/chipped/triangular_blue_terracotta.png new file mode 100644 index 00000000..451dcd11 Binary files /dev/null and b/public/textures/chipped/triangular_blue_terracotta.png differ diff --git a/public/textures/chipped/triangular_brown_terracotta.png b/public/textures/chipped/triangular_brown_terracotta.png new file mode 100644 index 00000000..3c076f62 Binary files /dev/null and b/public/textures/chipped/triangular_brown_terracotta.png differ diff --git a/public/textures/chipped/triangular_cyan_terracotta.png b/public/textures/chipped/triangular_cyan_terracotta.png new file mode 100644 index 00000000..2735fb2c Binary files /dev/null and b/public/textures/chipped/triangular_cyan_terracotta.png differ diff --git a/public/textures/chipped/triangular_gray_terracotta.png b/public/textures/chipped/triangular_gray_terracotta.png new file mode 100644 index 00000000..59d1e82e Binary files /dev/null and b/public/textures/chipped/triangular_gray_terracotta.png differ diff --git a/public/textures/chipped/triangular_green_terracotta.png b/public/textures/chipped/triangular_green_terracotta.png new file mode 100644 index 00000000..64d88871 Binary files /dev/null and b/public/textures/chipped/triangular_green_terracotta.png differ diff --git a/public/textures/chipped/triangular_light_blue_terracotta.png b/public/textures/chipped/triangular_light_blue_terracotta.png new file mode 100644 index 00000000..1a308a0f Binary files /dev/null and b/public/textures/chipped/triangular_light_blue_terracotta.png differ diff --git a/public/textures/chipped/triangular_light_gray_terracotta.png b/public/textures/chipped/triangular_light_gray_terracotta.png new file mode 100644 index 00000000..bfe30de6 Binary files /dev/null and b/public/textures/chipped/triangular_light_gray_terracotta.png differ diff --git a/public/textures/chipped/triangular_lime_terracotta.png b/public/textures/chipped/triangular_lime_terracotta.png new file mode 100644 index 00000000..2504b962 Binary files /dev/null and b/public/textures/chipped/triangular_lime_terracotta.png differ diff --git a/public/textures/chipped/triangular_magenta_terracotta.png b/public/textures/chipped/triangular_magenta_terracotta.png new file mode 100644 index 00000000..077de213 Binary files /dev/null and b/public/textures/chipped/triangular_magenta_terracotta.png differ diff --git a/public/textures/chipped/triangular_orange_terracotta.png b/public/textures/chipped/triangular_orange_terracotta.png new file mode 100644 index 00000000..b3b7905e Binary files /dev/null and b/public/textures/chipped/triangular_orange_terracotta.png differ diff --git a/public/textures/chipped/triangular_pink_terracotta.png b/public/textures/chipped/triangular_pink_terracotta.png new file mode 100644 index 00000000..3f67b21e Binary files /dev/null and b/public/textures/chipped/triangular_pink_terracotta.png differ diff --git a/public/textures/chipped/triangular_purple_terracotta.png b/public/textures/chipped/triangular_purple_terracotta.png new file mode 100644 index 00000000..82e7eb30 Binary files /dev/null and b/public/textures/chipped/triangular_purple_terracotta.png differ diff --git a/public/textures/chipped/triangular_red_terracotta.png b/public/textures/chipped/triangular_red_terracotta.png new file mode 100644 index 00000000..1c10bd03 Binary files /dev/null and b/public/textures/chipped/triangular_red_terracotta.png differ diff --git a/public/textures/chipped/triangular_terracotta.png b/public/textures/chipped/triangular_terracotta.png new file mode 100644 index 00000000..7c8886b1 Binary files /dev/null and b/public/textures/chipped/triangular_terracotta.png differ diff --git a/public/textures/chipped/triangular_white_terracotta.png b/public/textures/chipped/triangular_white_terracotta.png new file mode 100644 index 00000000..22ed0cc8 Binary files /dev/null and b/public/textures/chipped/triangular_white_terracotta.png differ diff --git a/public/textures/chipped/triangular_yellow_terracotta.png b/public/textures/chipped/triangular_yellow_terracotta.png new file mode 100644 index 00000000..02d39c8c Binary files /dev/null and b/public/textures/chipped/triangular_yellow_terracotta.png differ diff --git a/public/textures/chipped/tripped_black_carpet.png b/public/textures/chipped/tripped_black_carpet.png new file mode 100644 index 00000000..292b7e32 Binary files /dev/null and b/public/textures/chipped/tripped_black_carpet.png differ diff --git a/public/textures/chipped/tripped_black_wool.png b/public/textures/chipped/tripped_black_wool.png new file mode 100644 index 00000000..851a773e Binary files /dev/null and b/public/textures/chipped/tripped_black_wool.png differ diff --git a/public/textures/chipped/tripped_blue_carpet.png b/public/textures/chipped/tripped_blue_carpet.png new file mode 100644 index 00000000..2754be37 Binary files /dev/null and b/public/textures/chipped/tripped_blue_carpet.png differ diff --git a/public/textures/chipped/tripped_blue_wool.png b/public/textures/chipped/tripped_blue_wool.png new file mode 100644 index 00000000..05528da6 Binary files /dev/null and b/public/textures/chipped/tripped_blue_wool.png differ diff --git a/public/textures/chipped/tripped_brown_carpet.png b/public/textures/chipped/tripped_brown_carpet.png new file mode 100644 index 00000000..416fd5e6 Binary files /dev/null and b/public/textures/chipped/tripped_brown_carpet.png differ diff --git a/public/textures/chipped/tripped_brown_wool.png b/public/textures/chipped/tripped_brown_wool.png new file mode 100644 index 00000000..2b9ff16a Binary files /dev/null and b/public/textures/chipped/tripped_brown_wool.png differ diff --git a/public/textures/chipped/tripped_cyan_carpet.png b/public/textures/chipped/tripped_cyan_carpet.png new file mode 100644 index 00000000..97ff67e6 Binary files /dev/null and b/public/textures/chipped/tripped_cyan_carpet.png differ diff --git a/public/textures/chipped/tripped_cyan_wool.png b/public/textures/chipped/tripped_cyan_wool.png new file mode 100644 index 00000000..7689efaa Binary files /dev/null and b/public/textures/chipped/tripped_cyan_wool.png differ diff --git a/public/textures/chipped/tripped_gray_carpet.png b/public/textures/chipped/tripped_gray_carpet.png new file mode 100644 index 00000000..28c9fdd1 Binary files /dev/null and b/public/textures/chipped/tripped_gray_carpet.png differ diff --git a/public/textures/chipped/tripped_gray_wool.png b/public/textures/chipped/tripped_gray_wool.png new file mode 100644 index 00000000..b9dea3d0 Binary files /dev/null and b/public/textures/chipped/tripped_gray_wool.png differ diff --git a/public/textures/chipped/tripped_green_carpet.png b/public/textures/chipped/tripped_green_carpet.png new file mode 100644 index 00000000..0ccc29df Binary files /dev/null and b/public/textures/chipped/tripped_green_carpet.png differ diff --git a/public/textures/chipped/tripped_green_wool.png b/public/textures/chipped/tripped_green_wool.png new file mode 100644 index 00000000..30b30a2c Binary files /dev/null and b/public/textures/chipped/tripped_green_wool.png differ diff --git a/public/textures/chipped/tripped_light_blue_carpet.png b/public/textures/chipped/tripped_light_blue_carpet.png new file mode 100644 index 00000000..df2ec2b9 Binary files /dev/null and b/public/textures/chipped/tripped_light_blue_carpet.png differ diff --git a/public/textures/chipped/tripped_light_blue_wool.png b/public/textures/chipped/tripped_light_blue_wool.png new file mode 100644 index 00000000..74b0d8f0 Binary files /dev/null and b/public/textures/chipped/tripped_light_blue_wool.png differ diff --git a/public/textures/chipped/tripped_light_gray_carpet.png b/public/textures/chipped/tripped_light_gray_carpet.png new file mode 100644 index 00000000..fbf89368 Binary files /dev/null and b/public/textures/chipped/tripped_light_gray_carpet.png differ diff --git a/public/textures/chipped/tripped_light_gray_wool.png b/public/textures/chipped/tripped_light_gray_wool.png new file mode 100644 index 00000000..2f9b9398 Binary files /dev/null and b/public/textures/chipped/tripped_light_gray_wool.png differ diff --git a/public/textures/chipped/tripped_lime_carpet.png b/public/textures/chipped/tripped_lime_carpet.png new file mode 100644 index 00000000..387eec82 Binary files /dev/null and b/public/textures/chipped/tripped_lime_carpet.png differ diff --git a/public/textures/chipped/tripped_lime_wool.png b/public/textures/chipped/tripped_lime_wool.png new file mode 100644 index 00000000..925229fb Binary files /dev/null and b/public/textures/chipped/tripped_lime_wool.png differ diff --git a/public/textures/chipped/tripped_magenta_carpet.png b/public/textures/chipped/tripped_magenta_carpet.png new file mode 100644 index 00000000..7d097bc3 Binary files /dev/null and b/public/textures/chipped/tripped_magenta_carpet.png differ diff --git a/public/textures/chipped/tripped_magenta_wool.png b/public/textures/chipped/tripped_magenta_wool.png new file mode 100644 index 00000000..6c6c10de Binary files /dev/null and b/public/textures/chipped/tripped_magenta_wool.png differ diff --git a/public/textures/chipped/tripped_orange_carpet.png b/public/textures/chipped/tripped_orange_carpet.png new file mode 100644 index 00000000..874ad14b Binary files /dev/null and b/public/textures/chipped/tripped_orange_carpet.png differ diff --git a/public/textures/chipped/tripped_orange_wool.png b/public/textures/chipped/tripped_orange_wool.png new file mode 100644 index 00000000..df35816c Binary files /dev/null and b/public/textures/chipped/tripped_orange_wool.png differ diff --git a/public/textures/chipped/tripped_pink_carpet.png b/public/textures/chipped/tripped_pink_carpet.png new file mode 100644 index 00000000..624e8b88 Binary files /dev/null and b/public/textures/chipped/tripped_pink_carpet.png differ diff --git a/public/textures/chipped/tripped_pink_wool.png b/public/textures/chipped/tripped_pink_wool.png new file mode 100644 index 00000000..3d31fec4 Binary files /dev/null and b/public/textures/chipped/tripped_pink_wool.png differ diff --git a/public/textures/chipped/tripped_purple_carpet.png b/public/textures/chipped/tripped_purple_carpet.png new file mode 100644 index 00000000..7667c263 Binary files /dev/null and b/public/textures/chipped/tripped_purple_carpet.png differ diff --git a/public/textures/chipped/tripped_purple_wool.png b/public/textures/chipped/tripped_purple_wool.png new file mode 100644 index 00000000..7eef9e0a Binary files /dev/null and b/public/textures/chipped/tripped_purple_wool.png differ diff --git a/public/textures/chipped/tripped_red_carpet.png b/public/textures/chipped/tripped_red_carpet.png new file mode 100644 index 00000000..d60b6aa1 Binary files /dev/null and b/public/textures/chipped/tripped_red_carpet.png differ diff --git a/public/textures/chipped/tripped_red_wool.png b/public/textures/chipped/tripped_red_wool.png new file mode 100644 index 00000000..763b4b82 Binary files /dev/null and b/public/textures/chipped/tripped_red_wool.png differ diff --git a/public/textures/chipped/tripped_white_carpet.png b/public/textures/chipped/tripped_white_carpet.png new file mode 100644 index 00000000..7fcd8684 Binary files /dev/null and b/public/textures/chipped/tripped_white_carpet.png differ diff --git a/public/textures/chipped/tripped_white_wool.png b/public/textures/chipped/tripped_white_wool.png new file mode 100644 index 00000000..b4b8fa60 Binary files /dev/null and b/public/textures/chipped/tripped_white_wool.png differ diff --git a/public/textures/chipped/tripped_yellow_carpet.png b/public/textures/chipped/tripped_yellow_carpet.png new file mode 100644 index 00000000..ca028f0c Binary files /dev/null and b/public/textures/chipped/tripped_yellow_carpet.png differ diff --git a/public/textures/chipped/tripped_yellow_wool.png b/public/textures/chipped/tripped_yellow_wool.png new file mode 100644 index 00000000..f6380344 Binary files /dev/null and b/public/textures/chipped/tripped_yellow_wool.png differ diff --git a/public/textures/chipped/trodden_amethyst_block.png b/public/textures/chipped/trodden_amethyst_block.png new file mode 100644 index 00000000..a8c84004 Binary files /dev/null and b/public/textures/chipped/trodden_amethyst_block.png differ diff --git a/public/textures/chipped/trodden_ancient_debris.png b/public/textures/chipped/trodden_ancient_debris.png new file mode 100644 index 00000000..6ee74c7f Binary files /dev/null and b/public/textures/chipped/trodden_ancient_debris.png differ diff --git a/public/textures/chipped/trodden_andesite.png b/public/textures/chipped/trodden_andesite.png new file mode 100644 index 00000000..2a14834e Binary files /dev/null and b/public/textures/chipped/trodden_andesite.png differ diff --git a/public/textures/chipped/trodden_blackstone.png b/public/textures/chipped/trodden_blackstone.png new file mode 100644 index 00000000..b7cce221 Binary files /dev/null and b/public/textures/chipped/trodden_blackstone.png differ diff --git a/public/textures/chipped/trodden_blue_ice.png b/public/textures/chipped/trodden_blue_ice.png new file mode 100644 index 00000000..49c714e0 Binary files /dev/null and b/public/textures/chipped/trodden_blue_ice.png differ diff --git a/public/textures/chipped/trodden_borderless_bricks.png b/public/textures/chipped/trodden_borderless_bricks.png new file mode 100644 index 00000000..5472f84e Binary files /dev/null and b/public/textures/chipped/trodden_borderless_bricks.png differ diff --git a/public/textures/chipped/trodden_bricks.png b/public/textures/chipped/trodden_bricks.png new file mode 100644 index 00000000..5472f84e Binary files /dev/null and b/public/textures/chipped/trodden_bricks.png differ diff --git a/public/textures/chipped/trodden_calcite.png b/public/textures/chipped/trodden_calcite.png new file mode 100644 index 00000000..1017da1c Binary files /dev/null and b/public/textures/chipped/trodden_calcite.png differ diff --git a/public/textures/chipped/trodden_clay.png b/public/textures/chipped/trodden_clay.png new file mode 100644 index 00000000..539a34e6 Binary files /dev/null and b/public/textures/chipped/trodden_clay.png differ diff --git a/public/textures/chipped/trodden_coal_block.png b/public/textures/chipped/trodden_coal_block.png new file mode 100644 index 00000000..0a5d706f Binary files /dev/null and b/public/textures/chipped/trodden_coal_block.png differ diff --git a/public/textures/chipped/trodden_cobblestone.png b/public/textures/chipped/trodden_cobblestone.png new file mode 100644 index 00000000..9cda9491 Binary files /dev/null and b/public/textures/chipped/trodden_cobblestone.png differ diff --git a/public/textures/chipped/trodden_crying_obsidian.png b/public/textures/chipped/trodden_crying_obsidian.png new file mode 100644 index 00000000..068a5abc Binary files /dev/null and b/public/textures/chipped/trodden_crying_obsidian.png differ diff --git a/public/textures/chipped/trodden_dark_prismarine.png b/public/textures/chipped/trodden_dark_prismarine.png new file mode 100644 index 00000000..b864ada7 Binary files /dev/null and b/public/textures/chipped/trodden_dark_prismarine.png differ diff --git a/public/textures/chipped/trodden_deepslate.png b/public/textures/chipped/trodden_deepslate.png new file mode 100644 index 00000000..48b8c58b Binary files /dev/null and b/public/textures/chipped/trodden_deepslate.png differ diff --git a/public/textures/chipped/trodden_diorite.png b/public/textures/chipped/trodden_diorite.png new file mode 100644 index 00000000..c076ad01 Binary files /dev/null and b/public/textures/chipped/trodden_diorite.png differ diff --git a/public/textures/chipped/trodden_dirt.png b/public/textures/chipped/trodden_dirt.png new file mode 100644 index 00000000..b1ee5293 Binary files /dev/null and b/public/textures/chipped/trodden_dirt.png differ diff --git a/public/textures/chipped/trodden_dripstone_block.png b/public/textures/chipped/trodden_dripstone_block.png new file mode 100644 index 00000000..d8f12dfd Binary files /dev/null and b/public/textures/chipped/trodden_dripstone_block.png differ diff --git a/public/textures/chipped/trodden_end_stone.png b/public/textures/chipped/trodden_end_stone.png new file mode 100644 index 00000000..9cbec2a0 Binary files /dev/null and b/public/textures/chipped/trodden_end_stone.png differ diff --git a/public/textures/chipped/trodden_gilded_blackstone.png b/public/textures/chipped/trodden_gilded_blackstone.png new file mode 100644 index 00000000..7901ea84 Binary files /dev/null and b/public/textures/chipped/trodden_gilded_blackstone.png differ diff --git a/public/textures/chipped/trodden_granite.png b/public/textures/chipped/trodden_granite.png new file mode 100644 index 00000000..8c15fd1e Binary files /dev/null and b/public/textures/chipped/trodden_granite.png differ diff --git a/public/textures/chipped/trodden_ice.png b/public/textures/chipped/trodden_ice.png new file mode 100644 index 00000000..39c13126 Binary files /dev/null and b/public/textures/chipped/trodden_ice.png differ diff --git a/public/textures/chipped/trodden_lapis_block.png b/public/textures/chipped/trodden_lapis_block.png new file mode 100644 index 00000000..ef76d73b Binary files /dev/null and b/public/textures/chipped/trodden_lapis_block.png differ diff --git a/public/textures/chipped/trodden_lodestone.png b/public/textures/chipped/trodden_lodestone.png new file mode 100644 index 00000000..0cf72a06 Binary files /dev/null and b/public/textures/chipped/trodden_lodestone.png differ diff --git a/public/textures/chipped/trodden_magma_block.png b/public/textures/chipped/trodden_magma_block.png new file mode 100644 index 00000000..c887fc97 Binary files /dev/null and b/public/textures/chipped/trodden_magma_block.png differ diff --git a/public/textures/chipped/trodden_mossy_cobblestone.png b/public/textures/chipped/trodden_mossy_cobblestone.png new file mode 100644 index 00000000..c0590fec Binary files /dev/null and b/public/textures/chipped/trodden_mossy_cobblestone.png differ diff --git a/public/textures/chipped/trodden_mossy_stone_bricks.png b/public/textures/chipped/trodden_mossy_stone_bricks.png new file mode 100644 index 00000000..2b4a43dd Binary files /dev/null and b/public/textures/chipped/trodden_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/trodden_nether_bricks.png b/public/textures/chipped/trodden_nether_bricks.png new file mode 100644 index 00000000..f72e4890 Binary files /dev/null and b/public/textures/chipped/trodden_nether_bricks.png differ diff --git a/public/textures/chipped/trodden_netherrack.png b/public/textures/chipped/trodden_netherrack.png new file mode 100644 index 00000000..3baa4576 Binary files /dev/null and b/public/textures/chipped/trodden_netherrack.png differ diff --git a/public/textures/chipped/trodden_obsidian.png b/public/textures/chipped/trodden_obsidian.png new file mode 100644 index 00000000..68e13ef7 Binary files /dev/null and b/public/textures/chipped/trodden_obsidian.png differ diff --git a/public/textures/chipped/trodden_packed_ice.png b/public/textures/chipped/trodden_packed_ice.png new file mode 100644 index 00000000..6c18013c Binary files /dev/null and b/public/textures/chipped/trodden_packed_ice.png differ diff --git a/public/textures/chipped/trodden_prismarine.png b/public/textures/chipped/trodden_prismarine.png new file mode 100644 index 00000000..c355e0dc Binary files /dev/null and b/public/textures/chipped/trodden_prismarine.png differ diff --git a/public/textures/chipped/trodden_purpur_block.png b/public/textures/chipped/trodden_purpur_block.png new file mode 100644 index 00000000..6c02d0a4 Binary files /dev/null and b/public/textures/chipped/trodden_purpur_block.png differ diff --git a/public/textures/chipped/trodden_quartz_block.png b/public/textures/chipped/trodden_quartz_block.png new file mode 100644 index 00000000..5ba6a613 Binary files /dev/null and b/public/textures/chipped/trodden_quartz_block.png differ diff --git a/public/textures/chipped/trodden_raw_copper_block.png b/public/textures/chipped/trodden_raw_copper_block.png new file mode 100644 index 00000000..3087345a Binary files /dev/null and b/public/textures/chipped/trodden_raw_copper_block.png differ diff --git a/public/textures/chipped/trodden_raw_gold_block.png b/public/textures/chipped/trodden_raw_gold_block.png new file mode 100644 index 00000000..7698ff2a Binary files /dev/null and b/public/textures/chipped/trodden_raw_gold_block.png differ diff --git a/public/textures/chipped/trodden_raw_iron_block.png b/public/textures/chipped/trodden_raw_iron_block.png new file mode 100644 index 00000000..cbdedcf1 Binary files /dev/null and b/public/textures/chipped/trodden_raw_iron_block.png differ diff --git a/public/textures/chipped/trodden_red_nether_bricks.png b/public/textures/chipped/trodden_red_nether_bricks.png new file mode 100644 index 00000000..00cc49bf Binary files /dev/null and b/public/textures/chipped/trodden_red_nether_bricks.png differ diff --git a/public/textures/chipped/trodden_red_sandstone.png b/public/textures/chipped/trodden_red_sandstone.png new file mode 100644 index 00000000..37e5da7f Binary files /dev/null and b/public/textures/chipped/trodden_red_sandstone.png differ diff --git a/public/textures/chipped/trodden_redstone_block.png b/public/textures/chipped/trodden_redstone_block.png new file mode 100644 index 00000000..f232bd31 Binary files /dev/null and b/public/textures/chipped/trodden_redstone_block.png differ diff --git a/public/textures/chipped/trodden_sandstone.png b/public/textures/chipped/trodden_sandstone.png new file mode 100644 index 00000000..c660fbf1 Binary files /dev/null and b/public/textures/chipped/trodden_sandstone.png differ diff --git a/public/textures/chipped/trodden_smooth_stone.png b/public/textures/chipped/trodden_smooth_stone.png new file mode 100644 index 00000000..bc899e9a Binary files /dev/null and b/public/textures/chipped/trodden_smooth_stone.png differ diff --git a/public/textures/chipped/trodden_snow_block.png b/public/textures/chipped/trodden_snow_block.png new file mode 100644 index 00000000..ff7d6e7a Binary files /dev/null and b/public/textures/chipped/trodden_snow_block.png differ diff --git a/public/textures/chipped/trodden_stone.png b/public/textures/chipped/trodden_stone.png new file mode 100644 index 00000000..abb8b64b Binary files /dev/null and b/public/textures/chipped/trodden_stone.png differ diff --git a/public/textures/chipped/trodden_tuff.png b/public/textures/chipped/trodden_tuff.png new file mode 100644 index 00000000..307be71a Binary files /dev/null and b/public/textures/chipped/trodden_tuff.png differ diff --git a/public/textures/chipped/tropics_melon.png b/public/textures/chipped/tropics_melon.png new file mode 100644 index 00000000..111b4223 Binary files /dev/null and b/public/textures/chipped/tropics_melon.png differ diff --git a/public/textures/chipped/tubed_nether_sprouts.png b/public/textures/chipped/tubed_nether_sprouts.png new file mode 100644 index 00000000..b4a79d6b Binary files /dev/null and b/public/textures/chipped/tubed_nether_sprouts.png differ diff --git a/public/textures/chipped/tuff_bricks.png b/public/textures/chipped/tuff_bricks.png new file mode 100644 index 00000000..abfc6af9 Binary files /dev/null and b/public/textures/chipped/tuff_bricks.png differ diff --git a/public/textures/chipped/tuff_mini_tiles.png b/public/textures/chipped/tuff_mini_tiles.png new file mode 100644 index 00000000..d58d6893 Binary files /dev/null and b/public/textures/chipped/tuff_mini_tiles.png differ diff --git a/public/textures/chipped/tuff_pillar.png b/public/textures/chipped/tuff_pillar.png new file mode 100644 index 00000000..039e6236 Binary files /dev/null and b/public/textures/chipped/tuff_pillar.png differ diff --git a/public/textures/chipped/tuff_pillar_top.png b/public/textures/chipped/tuff_pillar_top.png new file mode 100644 index 00000000..a6731410 Binary files /dev/null and b/public/textures/chipped/tuff_pillar_top.png differ diff --git a/public/textures/chipped/tuff_pointed_dripstone.png b/public/textures/chipped/tuff_pointed_dripstone.png new file mode 100644 index 00000000..205ae4e0 Binary files /dev/null and b/public/textures/chipped/tuff_pointed_dripstone.png differ diff --git a/public/textures/chipped/tuff_scales.png b/public/textures/chipped/tuff_scales.png new file mode 100644 index 00000000..d19c66fa Binary files /dev/null and b/public/textures/chipped/tuff_scales.png differ diff --git a/public/textures/chipped/twisted_acacia_trapdoor.png b/public/textures/chipped/twisted_acacia_trapdoor.png new file mode 100644 index 00000000..b90b327c Binary files /dev/null and b/public/textures/chipped/twisted_acacia_trapdoor.png differ diff --git a/public/textures/chipped/twisted_bamboo_trapdoor.png b/public/textures/chipped/twisted_bamboo_trapdoor.png new file mode 100644 index 00000000..b0aaecaa Binary files /dev/null and b/public/textures/chipped/twisted_bamboo_trapdoor.png differ diff --git a/public/textures/chipped/twisted_birch_trapdoor.png b/public/textures/chipped/twisted_birch_trapdoor.png new file mode 100644 index 00000000..0dba3451 Binary files /dev/null and b/public/textures/chipped/twisted_birch_trapdoor.png differ diff --git a/public/textures/chipped/twisted_cherry_trapdoor.png b/public/textures/chipped/twisted_cherry_trapdoor.png new file mode 100644 index 00000000..cf5a96d6 Binary files /dev/null and b/public/textures/chipped/twisted_cherry_trapdoor.png differ diff --git a/public/textures/chipped/twisted_crimson_trapdoor.png b/public/textures/chipped/twisted_crimson_trapdoor.png new file mode 100644 index 00000000..5d74544c Binary files /dev/null and b/public/textures/chipped/twisted_crimson_trapdoor.png differ diff --git a/public/textures/chipped/twisted_dark_oak_trapdoor.png b/public/textures/chipped/twisted_dark_oak_trapdoor.png new file mode 100644 index 00000000..eb830b4f Binary files /dev/null and b/public/textures/chipped/twisted_dark_oak_trapdoor.png differ diff --git a/public/textures/chipped/twisted_jungle_trapdoor.png b/public/textures/chipped/twisted_jungle_trapdoor.png new file mode 100644 index 00000000..9a09a467 Binary files /dev/null and b/public/textures/chipped/twisted_jungle_trapdoor.png differ diff --git a/public/textures/chipped/twisted_mangrove_trapdoor.png b/public/textures/chipped/twisted_mangrove_trapdoor.png new file mode 100644 index 00000000..27a74f5b Binary files /dev/null and b/public/textures/chipped/twisted_mangrove_trapdoor.png differ diff --git a/public/textures/chipped/twisted_oak_trapdoor.png b/public/textures/chipped/twisted_oak_trapdoor.png new file mode 100644 index 00000000..1c167f28 Binary files /dev/null and b/public/textures/chipped/twisted_oak_trapdoor.png differ diff --git a/public/textures/chipped/twisted_spruce_trapdoor.png b/public/textures/chipped/twisted_spruce_trapdoor.png new file mode 100644 index 00000000..b01fdee6 Binary files /dev/null and b/public/textures/chipped/twisted_spruce_trapdoor.png differ diff --git a/public/textures/chipped/twisted_warped_trapdoor.png b/public/textures/chipped/twisted_warped_trapdoor.png new file mode 100644 index 00000000..4b3363c9 Binary files /dev/null and b/public/textures/chipped/twisted_warped_trapdoor.png differ diff --git a/public/textures/chipped/umbrella_brown_mushroom.png b/public/textures/chipped/umbrella_brown_mushroom.png new file mode 100644 index 00000000..8b5a4747 Binary files /dev/null and b/public/textures/chipped/umbrella_brown_mushroom.png differ diff --git a/public/textures/chipped/umbrella_crimson_fungus.png b/public/textures/chipped/umbrella_crimson_fungus.png new file mode 100644 index 00000000..37f419b9 Binary files /dev/null and b/public/textures/chipped/umbrella_crimson_fungus.png differ diff --git a/public/textures/chipped/umbrella_red_mushroom.png b/public/textures/chipped/umbrella_red_mushroom.png new file mode 100644 index 00000000..2f7c0e12 Binary files /dev/null and b/public/textures/chipped/umbrella_red_mushroom.png differ diff --git a/public/textures/chipped/umbrella_warped_fungus.png b/public/textures/chipped/umbrella_warped_fungus.png new file mode 100644 index 00000000..8875f19b Binary files /dev/null and b/public/textures/chipped/umbrella_warped_fungus.png differ diff --git a/public/textures/chipped/unamused_amethyst_block.png b/public/textures/chipped/unamused_amethyst_block.png new file mode 100644 index 00000000..2667bc1f Binary files /dev/null and b/public/textures/chipped/unamused_amethyst_block.png differ diff --git a/public/textures/chipped/unamused_ancient_debris.png b/public/textures/chipped/unamused_ancient_debris.png new file mode 100644 index 00000000..930a83f4 Binary files /dev/null and b/public/textures/chipped/unamused_ancient_debris.png differ diff --git a/public/textures/chipped/unamused_andesite.png b/public/textures/chipped/unamused_andesite.png new file mode 100644 index 00000000..febba90b Binary files /dev/null and b/public/textures/chipped/unamused_andesite.png differ diff --git a/public/textures/chipped/unamused_basalt.png b/public/textures/chipped/unamused_basalt.png new file mode 100644 index 00000000..03a403e3 Binary files /dev/null and b/public/textures/chipped/unamused_basalt.png differ diff --git a/public/textures/chipped/unamused_blackstone.png b/public/textures/chipped/unamused_blackstone.png new file mode 100644 index 00000000..7677d055 Binary files /dev/null and b/public/textures/chipped/unamused_blackstone.png differ diff --git a/public/textures/chipped/unamused_blue_ice.png b/public/textures/chipped/unamused_blue_ice.png new file mode 100644 index 00000000..4d3b60db Binary files /dev/null and b/public/textures/chipped/unamused_blue_ice.png differ diff --git a/public/textures/chipped/unamused_borderless_bricks.png b/public/textures/chipped/unamused_borderless_bricks.png new file mode 100644 index 00000000..423037a0 Binary files /dev/null and b/public/textures/chipped/unamused_borderless_bricks.png differ diff --git a/public/textures/chipped/unamused_bricks.png b/public/textures/chipped/unamused_bricks.png new file mode 100644 index 00000000..f0150ac3 Binary files /dev/null and b/public/textures/chipped/unamused_bricks.png differ diff --git a/public/textures/chipped/unamused_calcite.png b/public/textures/chipped/unamused_calcite.png new file mode 100644 index 00000000..3460b4bc Binary files /dev/null and b/public/textures/chipped/unamused_calcite.png differ diff --git a/public/textures/chipped/unamused_clay.png b/public/textures/chipped/unamused_clay.png new file mode 100644 index 00000000..7fa67c29 Binary files /dev/null and b/public/textures/chipped/unamused_clay.png differ diff --git a/public/textures/chipped/unamused_coal_block.png b/public/textures/chipped/unamused_coal_block.png new file mode 100644 index 00000000..90fb27f2 Binary files /dev/null and b/public/textures/chipped/unamused_coal_block.png differ diff --git a/public/textures/chipped/unamused_cobblestone.png b/public/textures/chipped/unamused_cobblestone.png new file mode 100644 index 00000000..4aac73e8 Binary files /dev/null and b/public/textures/chipped/unamused_cobblestone.png differ diff --git a/public/textures/chipped/unamused_crying_obsidian.png b/public/textures/chipped/unamused_crying_obsidian.png new file mode 100644 index 00000000..0b2866fc Binary files /dev/null and b/public/textures/chipped/unamused_crying_obsidian.png differ diff --git a/public/textures/chipped/unamused_dark_prismarine.png b/public/textures/chipped/unamused_dark_prismarine.png new file mode 100644 index 00000000..cd35844a Binary files /dev/null and b/public/textures/chipped/unamused_dark_prismarine.png differ diff --git a/public/textures/chipped/unamused_deepslate.png b/public/textures/chipped/unamused_deepslate.png new file mode 100644 index 00000000..c4c5e9a2 Binary files /dev/null and b/public/textures/chipped/unamused_deepslate.png differ diff --git a/public/textures/chipped/unamused_diorite.png b/public/textures/chipped/unamused_diorite.png new file mode 100644 index 00000000..d76ae0f6 Binary files /dev/null and b/public/textures/chipped/unamused_diorite.png differ diff --git a/public/textures/chipped/unamused_dirt.png b/public/textures/chipped/unamused_dirt.png new file mode 100644 index 00000000..9b8161d9 Binary files /dev/null and b/public/textures/chipped/unamused_dirt.png differ diff --git a/public/textures/chipped/unamused_dripstone_block.png b/public/textures/chipped/unamused_dripstone_block.png new file mode 100644 index 00000000..e22f40ff Binary files /dev/null and b/public/textures/chipped/unamused_dripstone_block.png differ diff --git a/public/textures/chipped/unamused_end_stone.png b/public/textures/chipped/unamused_end_stone.png new file mode 100644 index 00000000..14cd7510 Binary files /dev/null and b/public/textures/chipped/unamused_end_stone.png differ diff --git a/public/textures/chipped/unamused_gilded_blackstone.png b/public/textures/chipped/unamused_gilded_blackstone.png new file mode 100644 index 00000000..0a4f790e Binary files /dev/null and b/public/textures/chipped/unamused_gilded_blackstone.png differ diff --git a/public/textures/chipped/unamused_granite.png b/public/textures/chipped/unamused_granite.png new file mode 100644 index 00000000..6249c199 Binary files /dev/null and b/public/textures/chipped/unamused_granite.png differ diff --git a/public/textures/chipped/unamused_ice.png b/public/textures/chipped/unamused_ice.png new file mode 100644 index 00000000..92742b5b Binary files /dev/null and b/public/textures/chipped/unamused_ice.png differ diff --git a/public/textures/chipped/unamused_lapis_block.png b/public/textures/chipped/unamused_lapis_block.png new file mode 100644 index 00000000..0e42b9ef Binary files /dev/null and b/public/textures/chipped/unamused_lapis_block.png differ diff --git a/public/textures/chipped/unamused_lodestone.png b/public/textures/chipped/unamused_lodestone.png new file mode 100644 index 00000000..ab1113a3 Binary files /dev/null and b/public/textures/chipped/unamused_lodestone.png differ diff --git a/public/textures/chipped/unamused_magma_block.png b/public/textures/chipped/unamused_magma_block.png new file mode 100644 index 00000000..94c7b48c Binary files /dev/null and b/public/textures/chipped/unamused_magma_block.png differ diff --git a/public/textures/chipped/unamused_mossy_cobblestone.png b/public/textures/chipped/unamused_mossy_cobblestone.png new file mode 100644 index 00000000..1e6a6202 Binary files /dev/null and b/public/textures/chipped/unamused_mossy_cobblestone.png differ diff --git a/public/textures/chipped/unamused_mossy_stone_bricks.png b/public/textures/chipped/unamused_mossy_stone_bricks.png new file mode 100644 index 00000000..36692736 Binary files /dev/null and b/public/textures/chipped/unamused_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/unamused_mud.png b/public/textures/chipped/unamused_mud.png new file mode 100644 index 00000000..db09950e Binary files /dev/null and b/public/textures/chipped/unamused_mud.png differ diff --git a/public/textures/chipped/unamused_mud_bricks.png b/public/textures/chipped/unamused_mud_bricks.png new file mode 100644 index 00000000..fc171f35 Binary files /dev/null and b/public/textures/chipped/unamused_mud_bricks.png differ diff --git a/public/textures/chipped/unamused_nether_bricks.png b/public/textures/chipped/unamused_nether_bricks.png new file mode 100644 index 00000000..0928b540 Binary files /dev/null and b/public/textures/chipped/unamused_nether_bricks.png differ diff --git a/public/textures/chipped/unamused_netherrack.png b/public/textures/chipped/unamused_netherrack.png new file mode 100644 index 00000000..04f266a1 Binary files /dev/null and b/public/textures/chipped/unamused_netherrack.png differ diff --git a/public/textures/chipped/unamused_obsidian.png b/public/textures/chipped/unamused_obsidian.png new file mode 100644 index 00000000..111ac484 Binary files /dev/null and b/public/textures/chipped/unamused_obsidian.png differ diff --git a/public/textures/chipped/unamused_packed_ice.png b/public/textures/chipped/unamused_packed_ice.png new file mode 100644 index 00000000..786a884e Binary files /dev/null and b/public/textures/chipped/unamused_packed_ice.png differ diff --git a/public/textures/chipped/unamused_packed_mud.png b/public/textures/chipped/unamused_packed_mud.png new file mode 100644 index 00000000..3996cdb9 Binary files /dev/null and b/public/textures/chipped/unamused_packed_mud.png differ diff --git a/public/textures/chipped/unamused_prismarine.png b/public/textures/chipped/unamused_prismarine.png new file mode 100644 index 00000000..eccc38ee Binary files /dev/null and b/public/textures/chipped/unamused_prismarine.png differ diff --git a/public/textures/chipped/unamused_purpur_block.png b/public/textures/chipped/unamused_purpur_block.png new file mode 100644 index 00000000..0ebe5e8d Binary files /dev/null and b/public/textures/chipped/unamused_purpur_block.png differ diff --git a/public/textures/chipped/unamused_quartz_block.png b/public/textures/chipped/unamused_quartz_block.png new file mode 100644 index 00000000..a5bf64f2 Binary files /dev/null and b/public/textures/chipped/unamused_quartz_block.png differ diff --git a/public/textures/chipped/unamused_raw_copper_block.png b/public/textures/chipped/unamused_raw_copper_block.png new file mode 100644 index 00000000..e9f12428 Binary files /dev/null and b/public/textures/chipped/unamused_raw_copper_block.png differ diff --git a/public/textures/chipped/unamused_raw_gold_block.png b/public/textures/chipped/unamused_raw_gold_block.png new file mode 100644 index 00000000..4f6644d2 Binary files /dev/null and b/public/textures/chipped/unamused_raw_gold_block.png differ diff --git a/public/textures/chipped/unamused_raw_iron_block.png b/public/textures/chipped/unamused_raw_iron_block.png new file mode 100644 index 00000000..2ea517b3 Binary files /dev/null and b/public/textures/chipped/unamused_raw_iron_block.png differ diff --git a/public/textures/chipped/unamused_red_nether_bricks.png b/public/textures/chipped/unamused_red_nether_bricks.png new file mode 100644 index 00000000..cdb100dc Binary files /dev/null and b/public/textures/chipped/unamused_red_nether_bricks.png differ diff --git a/public/textures/chipped/unamused_red_sandstone.png b/public/textures/chipped/unamused_red_sandstone.png new file mode 100644 index 00000000..f486e7f0 Binary files /dev/null and b/public/textures/chipped/unamused_red_sandstone.png differ diff --git a/public/textures/chipped/unamused_redstone_block.png b/public/textures/chipped/unamused_redstone_block.png new file mode 100644 index 00000000..c7b90ecd Binary files /dev/null and b/public/textures/chipped/unamused_redstone_block.png differ diff --git a/public/textures/chipped/unamused_sandstone.png b/public/textures/chipped/unamused_sandstone.png new file mode 100644 index 00000000..9fbb87aa Binary files /dev/null and b/public/textures/chipped/unamused_sandstone.png differ diff --git a/public/textures/chipped/unamused_smooth_stone.png b/public/textures/chipped/unamused_smooth_stone.png new file mode 100644 index 00000000..c4d9641f Binary files /dev/null and b/public/textures/chipped/unamused_smooth_stone.png differ diff --git a/public/textures/chipped/unamused_snow_block.png b/public/textures/chipped/unamused_snow_block.png new file mode 100644 index 00000000..287f9494 Binary files /dev/null and b/public/textures/chipped/unamused_snow_block.png differ diff --git a/public/textures/chipped/unamused_stone.png b/public/textures/chipped/unamused_stone.png new file mode 100644 index 00000000..af28d600 Binary files /dev/null and b/public/textures/chipped/unamused_stone.png differ diff --git a/public/textures/chipped/unamused_tuff.png b/public/textures/chipped/unamused_tuff.png new file mode 100644 index 00000000..27fa2deb Binary files /dev/null and b/public/textures/chipped/unamused_tuff.png differ diff --git a/public/textures/chipped/upside_down_carved_pumpkin.png b/public/textures/chipped/upside_down_carved_pumpkin.png new file mode 100644 index 00000000..c75466a2 Binary files /dev/null and b/public/textures/chipped/upside_down_carved_pumpkin.png differ diff --git a/public/textures/chipped/upside_down_jack_o_lantern.png b/public/textures/chipped/upside_down_jack_o_lantern.png new file mode 100644 index 00000000..599a681f Binary files /dev/null and b/public/textures/chipped/upside_down_jack_o_lantern.png differ diff --git a/public/textures/chipped/varnished_barrel.png b/public/textures/chipped/varnished_barrel.png new file mode 100644 index 00000000..f1fcb7c9 Binary files /dev/null and b/public/textures/chipped/varnished_barrel.png differ diff --git a/public/textures/chipped/versailles_acacia_planks.png b/public/textures/chipped/versailles_acacia_planks.png new file mode 100644 index 00000000..b9c54234 Binary files /dev/null and b/public/textures/chipped/versailles_acacia_planks.png differ diff --git a/public/textures/chipped/versailles_bamboo_planks.png b/public/textures/chipped/versailles_bamboo_planks.png new file mode 100644 index 00000000..6276c50e Binary files /dev/null and b/public/textures/chipped/versailles_bamboo_planks.png differ diff --git a/public/textures/chipped/versailles_birch_planks.png b/public/textures/chipped/versailles_birch_planks.png new file mode 100644 index 00000000..4a979eae Binary files /dev/null and b/public/textures/chipped/versailles_birch_planks.png differ diff --git a/public/textures/chipped/versailles_cherry_planks.png b/public/textures/chipped/versailles_cherry_planks.png new file mode 100644 index 00000000..7874b422 Binary files /dev/null and b/public/textures/chipped/versailles_cherry_planks.png differ diff --git a/public/textures/chipped/versailles_crimson_planks.png b/public/textures/chipped/versailles_crimson_planks.png new file mode 100644 index 00000000..f501f609 Binary files /dev/null and b/public/textures/chipped/versailles_crimson_planks.png differ diff --git a/public/textures/chipped/versailles_dark_oak_planks.png b/public/textures/chipped/versailles_dark_oak_planks.png new file mode 100644 index 00000000..630828e4 Binary files /dev/null and b/public/textures/chipped/versailles_dark_oak_planks.png differ diff --git a/public/textures/chipped/versailles_jungle_planks.png b/public/textures/chipped/versailles_jungle_planks.png new file mode 100644 index 00000000..efa9c3f8 Binary files /dev/null and b/public/textures/chipped/versailles_jungle_planks.png differ diff --git a/public/textures/chipped/versailles_mangrove_planks.png b/public/textures/chipped/versailles_mangrove_planks.png new file mode 100644 index 00000000..494e1e44 Binary files /dev/null and b/public/textures/chipped/versailles_mangrove_planks.png differ diff --git a/public/textures/chipped/versailles_oak_planks.png b/public/textures/chipped/versailles_oak_planks.png new file mode 100644 index 00000000..fa7a9c60 Binary files /dev/null and b/public/textures/chipped/versailles_oak_planks.png differ diff --git a/public/textures/chipped/versailles_spruce_planks.png b/public/textures/chipped/versailles_spruce_planks.png new file mode 100644 index 00000000..f3d5479a Binary files /dev/null and b/public/textures/chipped/versailles_spruce_planks.png differ diff --git a/public/textures/chipped/versailles_warped_planks.png b/public/textures/chipped/versailles_warped_planks.png new file mode 100644 index 00000000..c14fddce Binary files /dev/null and b/public/textures/chipped/versailles_warped_planks.png differ diff --git a/public/textures/chipped/vertical_acacia_planks.png b/public/textures/chipped/vertical_acacia_planks.png new file mode 100644 index 00000000..a5cce36f Binary files /dev/null and b/public/textures/chipped/vertical_acacia_planks.png differ diff --git a/public/textures/chipped/vertical_bamboo_planks.png b/public/textures/chipped/vertical_bamboo_planks.png new file mode 100644 index 00000000..3dae16a2 Binary files /dev/null and b/public/textures/chipped/vertical_bamboo_planks.png differ diff --git a/public/textures/chipped/vertical_birch_planks.png b/public/textures/chipped/vertical_birch_planks.png new file mode 100644 index 00000000..c2bc80bf Binary files /dev/null and b/public/textures/chipped/vertical_birch_planks.png differ diff --git a/public/textures/chipped/vertical_botanical_oak_bookshelf.png b/public/textures/chipped/vertical_botanical_oak_bookshelf.png new file mode 100644 index 00000000..69b7dabc Binary files /dev/null and b/public/textures/chipped/vertical_botanical_oak_bookshelf.png differ diff --git a/public/textures/chipped/vertical_cherry_planks.png b/public/textures/chipped/vertical_cherry_planks.png new file mode 100644 index 00000000..8b1e7715 Binary files /dev/null and b/public/textures/chipped/vertical_cherry_planks.png differ diff --git a/public/textures/chipped/vertical_crimson_planks.png b/public/textures/chipped/vertical_crimson_planks.png new file mode 100644 index 00000000..6addc0fd Binary files /dev/null and b/public/textures/chipped/vertical_crimson_planks.png differ diff --git a/public/textures/chipped/vertical_cut_amethyst_block.png b/public/textures/chipped/vertical_cut_amethyst_block.png new file mode 100644 index 00000000..4be07791 Binary files /dev/null and b/public/textures/chipped/vertical_cut_amethyst_block.png differ diff --git a/public/textures/chipped/vertical_cut_ancient_debris.png b/public/textures/chipped/vertical_cut_ancient_debris.png new file mode 100644 index 00000000..0c297801 Binary files /dev/null and b/public/textures/chipped/vertical_cut_ancient_debris.png differ diff --git a/public/textures/chipped/vertical_cut_andesite.png b/public/textures/chipped/vertical_cut_andesite.png new file mode 100644 index 00000000..282b8240 Binary files /dev/null and b/public/textures/chipped/vertical_cut_andesite.png differ diff --git a/public/textures/chipped/vertical_cut_basalt.png b/public/textures/chipped/vertical_cut_basalt.png new file mode 100644 index 00000000..d2f5c514 Binary files /dev/null and b/public/textures/chipped/vertical_cut_basalt.png differ diff --git a/public/textures/chipped/vertical_cut_blackstone.png b/public/textures/chipped/vertical_cut_blackstone.png new file mode 100644 index 00000000..dffc2629 Binary files /dev/null and b/public/textures/chipped/vertical_cut_blackstone.png differ diff --git a/public/textures/chipped/vertical_cut_blue_ice.png b/public/textures/chipped/vertical_cut_blue_ice.png new file mode 100644 index 00000000..5d24012d Binary files /dev/null and b/public/textures/chipped/vertical_cut_blue_ice.png differ diff --git a/public/textures/chipped/vertical_cut_borderless_bricks.png b/public/textures/chipped/vertical_cut_borderless_bricks.png new file mode 100644 index 00000000..b7ccad20 Binary files /dev/null and b/public/textures/chipped/vertical_cut_borderless_bricks.png differ diff --git a/public/textures/chipped/vertical_cut_bricks.png b/public/textures/chipped/vertical_cut_bricks.png new file mode 100644 index 00000000..cbe530a7 Binary files /dev/null and b/public/textures/chipped/vertical_cut_bricks.png differ diff --git a/public/textures/chipped/vertical_cut_calcite.png b/public/textures/chipped/vertical_cut_calcite.png new file mode 100644 index 00000000..2231d522 Binary files /dev/null and b/public/textures/chipped/vertical_cut_calcite.png differ diff --git a/public/textures/chipped/vertical_cut_clay.png b/public/textures/chipped/vertical_cut_clay.png new file mode 100644 index 00000000..636f4f43 Binary files /dev/null and b/public/textures/chipped/vertical_cut_clay.png differ diff --git a/public/textures/chipped/vertical_cut_coal_block.png b/public/textures/chipped/vertical_cut_coal_block.png new file mode 100644 index 00000000..be8e8894 Binary files /dev/null and b/public/textures/chipped/vertical_cut_coal_block.png differ diff --git a/public/textures/chipped/vertical_cut_cobblestone.png b/public/textures/chipped/vertical_cut_cobblestone.png new file mode 100644 index 00000000..4a175d85 Binary files /dev/null and b/public/textures/chipped/vertical_cut_cobblestone.png differ diff --git a/public/textures/chipped/vertical_cut_crying_obsidian.png b/public/textures/chipped/vertical_cut_crying_obsidian.png new file mode 100644 index 00000000..fb65ddc0 Binary files /dev/null and b/public/textures/chipped/vertical_cut_crying_obsidian.png differ diff --git a/public/textures/chipped/vertical_cut_dark_prismarine.png b/public/textures/chipped/vertical_cut_dark_prismarine.png new file mode 100644 index 00000000..21a5b878 Binary files /dev/null and b/public/textures/chipped/vertical_cut_dark_prismarine.png differ diff --git a/public/textures/chipped/vertical_cut_deepslate.png b/public/textures/chipped/vertical_cut_deepslate.png new file mode 100644 index 00000000..ba181bcf Binary files /dev/null and b/public/textures/chipped/vertical_cut_deepslate.png differ diff --git a/public/textures/chipped/vertical_cut_diorite.png b/public/textures/chipped/vertical_cut_diorite.png new file mode 100644 index 00000000..aec4e82b Binary files /dev/null and b/public/textures/chipped/vertical_cut_diorite.png differ diff --git a/public/textures/chipped/vertical_cut_dirt.png b/public/textures/chipped/vertical_cut_dirt.png new file mode 100644 index 00000000..a398be94 Binary files /dev/null and b/public/textures/chipped/vertical_cut_dirt.png differ diff --git a/public/textures/chipped/vertical_cut_dripstone_block.png b/public/textures/chipped/vertical_cut_dripstone_block.png new file mode 100644 index 00000000..bc99e8d9 Binary files /dev/null and b/public/textures/chipped/vertical_cut_dripstone_block.png differ diff --git a/public/textures/chipped/vertical_cut_end_stone.png b/public/textures/chipped/vertical_cut_end_stone.png new file mode 100644 index 00000000..aa4ddefe Binary files /dev/null and b/public/textures/chipped/vertical_cut_end_stone.png differ diff --git a/public/textures/chipped/vertical_cut_gilded_blackstone.png b/public/textures/chipped/vertical_cut_gilded_blackstone.png new file mode 100644 index 00000000..f9d15c12 Binary files /dev/null and b/public/textures/chipped/vertical_cut_gilded_blackstone.png differ diff --git a/public/textures/chipped/vertical_cut_granite.png b/public/textures/chipped/vertical_cut_granite.png new file mode 100644 index 00000000..b6a9a61b Binary files /dev/null and b/public/textures/chipped/vertical_cut_granite.png differ diff --git a/public/textures/chipped/vertical_cut_ice.png b/public/textures/chipped/vertical_cut_ice.png new file mode 100644 index 00000000..8ad8cb96 Binary files /dev/null and b/public/textures/chipped/vertical_cut_ice.png differ diff --git a/public/textures/chipped/vertical_cut_lapis_block.png b/public/textures/chipped/vertical_cut_lapis_block.png new file mode 100644 index 00000000..c4fb2e9e Binary files /dev/null and b/public/textures/chipped/vertical_cut_lapis_block.png differ diff --git a/public/textures/chipped/vertical_cut_lodestone.png b/public/textures/chipped/vertical_cut_lodestone.png new file mode 100644 index 00000000..cc48818e Binary files /dev/null and b/public/textures/chipped/vertical_cut_lodestone.png differ diff --git a/public/textures/chipped/vertical_cut_magma_block.png b/public/textures/chipped/vertical_cut_magma_block.png new file mode 100644 index 00000000..ca776736 Binary files /dev/null and b/public/textures/chipped/vertical_cut_magma_block.png differ diff --git a/public/textures/chipped/vertical_cut_mossy_cobblestone.png b/public/textures/chipped/vertical_cut_mossy_cobblestone.png new file mode 100644 index 00000000..41045d8f Binary files /dev/null and b/public/textures/chipped/vertical_cut_mossy_cobblestone.png differ diff --git a/public/textures/chipped/vertical_cut_mossy_stone_bricks.png b/public/textures/chipped/vertical_cut_mossy_stone_bricks.png new file mode 100644 index 00000000..64aa8cbe Binary files /dev/null and b/public/textures/chipped/vertical_cut_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/vertical_cut_mud.png b/public/textures/chipped/vertical_cut_mud.png new file mode 100644 index 00000000..83c6d342 Binary files /dev/null and b/public/textures/chipped/vertical_cut_mud.png differ diff --git a/public/textures/chipped/vertical_cut_mud_bricks.png b/public/textures/chipped/vertical_cut_mud_bricks.png new file mode 100644 index 00000000..212dc8ea Binary files /dev/null and b/public/textures/chipped/vertical_cut_mud_bricks.png differ diff --git a/public/textures/chipped/vertical_cut_nether_bricks.png b/public/textures/chipped/vertical_cut_nether_bricks.png new file mode 100644 index 00000000..3f74ed7f Binary files /dev/null and b/public/textures/chipped/vertical_cut_nether_bricks.png differ diff --git a/public/textures/chipped/vertical_cut_netherrack.png b/public/textures/chipped/vertical_cut_netherrack.png new file mode 100644 index 00000000..d0263884 Binary files /dev/null and b/public/textures/chipped/vertical_cut_netherrack.png differ diff --git a/public/textures/chipped/vertical_cut_obsidian.png b/public/textures/chipped/vertical_cut_obsidian.png new file mode 100644 index 00000000..e6595be4 Binary files /dev/null and b/public/textures/chipped/vertical_cut_obsidian.png differ diff --git a/public/textures/chipped/vertical_cut_packed_ice.png b/public/textures/chipped/vertical_cut_packed_ice.png new file mode 100644 index 00000000..7b01c2ee Binary files /dev/null and b/public/textures/chipped/vertical_cut_packed_ice.png differ diff --git a/public/textures/chipped/vertical_cut_packed_mud.png b/public/textures/chipped/vertical_cut_packed_mud.png new file mode 100644 index 00000000..65c17176 Binary files /dev/null and b/public/textures/chipped/vertical_cut_packed_mud.png differ diff --git a/public/textures/chipped/vertical_cut_prismarine.png b/public/textures/chipped/vertical_cut_prismarine.png new file mode 100644 index 00000000..ee436dca Binary files /dev/null and b/public/textures/chipped/vertical_cut_prismarine.png differ diff --git a/public/textures/chipped/vertical_cut_purpur_block.png b/public/textures/chipped/vertical_cut_purpur_block.png new file mode 100644 index 00000000..cfa862b0 Binary files /dev/null and b/public/textures/chipped/vertical_cut_purpur_block.png differ diff --git a/public/textures/chipped/vertical_cut_quartz_block.png b/public/textures/chipped/vertical_cut_quartz_block.png new file mode 100644 index 00000000..00ea64db Binary files /dev/null and b/public/textures/chipped/vertical_cut_quartz_block.png differ diff --git a/public/textures/chipped/vertical_cut_raw_copper_block.png b/public/textures/chipped/vertical_cut_raw_copper_block.png new file mode 100644 index 00000000..fad2ca2f Binary files /dev/null and b/public/textures/chipped/vertical_cut_raw_copper_block.png differ diff --git a/public/textures/chipped/vertical_cut_raw_gold_block.png b/public/textures/chipped/vertical_cut_raw_gold_block.png new file mode 100644 index 00000000..c3686286 Binary files /dev/null and b/public/textures/chipped/vertical_cut_raw_gold_block.png differ diff --git a/public/textures/chipped/vertical_cut_raw_iron_block.png b/public/textures/chipped/vertical_cut_raw_iron_block.png new file mode 100644 index 00000000..22ca3312 Binary files /dev/null and b/public/textures/chipped/vertical_cut_raw_iron_block.png differ diff --git a/public/textures/chipped/vertical_cut_red_nether_bricks.png b/public/textures/chipped/vertical_cut_red_nether_bricks.png new file mode 100644 index 00000000..aa9f0a91 Binary files /dev/null and b/public/textures/chipped/vertical_cut_red_nether_bricks.png differ diff --git a/public/textures/chipped/vertical_cut_red_sandstone.png b/public/textures/chipped/vertical_cut_red_sandstone.png new file mode 100644 index 00000000..bf73cdae Binary files /dev/null and b/public/textures/chipped/vertical_cut_red_sandstone.png differ diff --git a/public/textures/chipped/vertical_cut_redstone_block.png b/public/textures/chipped/vertical_cut_redstone_block.png new file mode 100644 index 00000000..522ba570 Binary files /dev/null and b/public/textures/chipped/vertical_cut_redstone_block.png differ diff --git a/public/textures/chipped/vertical_cut_sandstone.png b/public/textures/chipped/vertical_cut_sandstone.png new file mode 100644 index 00000000..b1d30c7a Binary files /dev/null and b/public/textures/chipped/vertical_cut_sandstone.png differ diff --git a/public/textures/chipped/vertical_cut_smooth_stone.png b/public/textures/chipped/vertical_cut_smooth_stone.png new file mode 100644 index 00000000..bb04b489 Binary files /dev/null and b/public/textures/chipped/vertical_cut_smooth_stone.png differ diff --git a/public/textures/chipped/vertical_cut_snow_block.png b/public/textures/chipped/vertical_cut_snow_block.png new file mode 100644 index 00000000..54e1afde Binary files /dev/null and b/public/textures/chipped/vertical_cut_snow_block.png differ diff --git a/public/textures/chipped/vertical_cut_stone.png b/public/textures/chipped/vertical_cut_stone.png new file mode 100644 index 00000000..b0882d74 Binary files /dev/null and b/public/textures/chipped/vertical_cut_stone.png differ diff --git a/public/textures/chipped/vertical_cut_tuff.png b/public/textures/chipped/vertical_cut_tuff.png new file mode 100644 index 00000000..5d130ee5 Binary files /dev/null and b/public/textures/chipped/vertical_cut_tuff.png differ diff --git a/public/textures/chipped/vertical_dark_oak_planks.png b/public/textures/chipped/vertical_dark_oak_planks.png new file mode 100644 index 00000000..dd4172e7 Binary files /dev/null and b/public/textures/chipped/vertical_dark_oak_planks.png differ diff --git a/public/textures/chipped/vertical_disordered_amethyst_block_bricks.png b/public/textures/chipped/vertical_disordered_amethyst_block_bricks.png new file mode 100644 index 00000000..dd308d8e Binary files /dev/null and b/public/textures/chipped/vertical_disordered_amethyst_block_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_ancient_debris_bricks.png b/public/textures/chipped/vertical_disordered_ancient_debris_bricks.png new file mode 100644 index 00000000..2ec7be08 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_ancient_debris_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_andesite_bricks.png b/public/textures/chipped/vertical_disordered_andesite_bricks.png new file mode 100644 index 00000000..5313fa0f Binary files /dev/null and b/public/textures/chipped/vertical_disordered_andesite_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_basalt_bricks.png b/public/textures/chipped/vertical_disordered_basalt_bricks.png new file mode 100644 index 00000000..caad1fe4 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_basalt_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_blackstone_bricks.png b/public/textures/chipped/vertical_disordered_blackstone_bricks.png new file mode 100644 index 00000000..3e97ff34 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_blackstone_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_blue_ice_bricks.png b/public/textures/chipped/vertical_disordered_blue_ice_bricks.png new file mode 100644 index 00000000..7f805bd1 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_blue_ice_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_borderless_bricks_bricks.png b/public/textures/chipped/vertical_disordered_borderless_bricks_bricks.png new file mode 100644 index 00000000..e6302f6c Binary files /dev/null and b/public/textures/chipped/vertical_disordered_borderless_bricks_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_bricks_bricks.png b/public/textures/chipped/vertical_disordered_bricks_bricks.png new file mode 100644 index 00000000..b5e72558 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_bricks_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_calcite_bricks.png b/public/textures/chipped/vertical_disordered_calcite_bricks.png new file mode 100644 index 00000000..a75b0348 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_calcite_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_clay_bricks.png b/public/textures/chipped/vertical_disordered_clay_bricks.png new file mode 100644 index 00000000..e155bfc4 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_clay_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_coal_block_bricks.png b/public/textures/chipped/vertical_disordered_coal_block_bricks.png new file mode 100644 index 00000000..e8c9d458 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_coal_block_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_cobblestone_bricks.png b/public/textures/chipped/vertical_disordered_cobblestone_bricks.png new file mode 100644 index 00000000..cda8a594 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_cobblestone_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_crying_obsidian_bricks.png b/public/textures/chipped/vertical_disordered_crying_obsidian_bricks.png new file mode 100644 index 00000000..0fd29a8c Binary files /dev/null and b/public/textures/chipped/vertical_disordered_crying_obsidian_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_dark_prismarine_bricks.png b/public/textures/chipped/vertical_disordered_dark_prismarine_bricks.png new file mode 100644 index 00000000..904e3dda Binary files /dev/null and b/public/textures/chipped/vertical_disordered_dark_prismarine_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_deepslate_bricks.png b/public/textures/chipped/vertical_disordered_deepslate_bricks.png new file mode 100644 index 00000000..0711b578 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_deepslate_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_diorite_bricks.png b/public/textures/chipped/vertical_disordered_diorite_bricks.png new file mode 100644 index 00000000..8daaf851 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_diorite_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_dirt_bricks.png b/public/textures/chipped/vertical_disordered_dirt_bricks.png new file mode 100644 index 00000000..c6a0c4cf Binary files /dev/null and b/public/textures/chipped/vertical_disordered_dirt_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_dripstone_block_bricks.png b/public/textures/chipped/vertical_disordered_dripstone_block_bricks.png new file mode 100644 index 00000000..6592d3c2 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_dripstone_block_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_end_stone_bricks.png b/public/textures/chipped/vertical_disordered_end_stone_bricks.png new file mode 100644 index 00000000..80290ebb Binary files /dev/null and b/public/textures/chipped/vertical_disordered_end_stone_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_gilded_blackstone_bricks.png b/public/textures/chipped/vertical_disordered_gilded_blackstone_bricks.png new file mode 100644 index 00000000..b1c4fe0d Binary files /dev/null and b/public/textures/chipped/vertical_disordered_gilded_blackstone_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_granite_bricks.png b/public/textures/chipped/vertical_disordered_granite_bricks.png new file mode 100644 index 00000000..0ada2a78 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_granite_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_ice_bricks.png b/public/textures/chipped/vertical_disordered_ice_bricks.png new file mode 100644 index 00000000..626f9287 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_ice_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_lapis_block_bricks.png b/public/textures/chipped/vertical_disordered_lapis_block_bricks.png new file mode 100644 index 00000000..87244579 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_lapis_block_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_lodestone_bricks.png b/public/textures/chipped/vertical_disordered_lodestone_bricks.png new file mode 100644 index 00000000..83748503 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_lodestone_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_magma_block_bricks.png b/public/textures/chipped/vertical_disordered_magma_block_bricks.png new file mode 100644 index 00000000..ecc5e189 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_magma_block_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_mossy_cobblestone_bricks.png b/public/textures/chipped/vertical_disordered_mossy_cobblestone_bricks.png new file mode 100644 index 00000000..4a133c2a Binary files /dev/null and b/public/textures/chipped/vertical_disordered_mossy_cobblestone_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_mossy_stone_bricks_bricks.png b/public/textures/chipped/vertical_disordered_mossy_stone_bricks_bricks.png new file mode 100644 index 00000000..0a433ea3 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_mossy_stone_bricks_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_mud_bricks.png b/public/textures/chipped/vertical_disordered_mud_bricks.png new file mode 100644 index 00000000..069fdcc3 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_mud_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_mud_bricks_bricks.png b/public/textures/chipped/vertical_disordered_mud_bricks_bricks.png new file mode 100644 index 00000000..8767b225 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_mud_bricks_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_nether_bricks_bricks.png b/public/textures/chipped/vertical_disordered_nether_bricks_bricks.png new file mode 100644 index 00000000..225e10aa Binary files /dev/null and b/public/textures/chipped/vertical_disordered_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_netherrack_bricks.png b/public/textures/chipped/vertical_disordered_netherrack_bricks.png new file mode 100644 index 00000000..4328bbb5 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_netherrack_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_obsidian_bricks.png b/public/textures/chipped/vertical_disordered_obsidian_bricks.png new file mode 100644 index 00000000..f0e53c98 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_obsidian_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_packed_ice_bricks.png b/public/textures/chipped/vertical_disordered_packed_ice_bricks.png new file mode 100644 index 00000000..ae23d7bb Binary files /dev/null and b/public/textures/chipped/vertical_disordered_packed_ice_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_packed_mud_bricks.png b/public/textures/chipped/vertical_disordered_packed_mud_bricks.png new file mode 100644 index 00000000..b5850711 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_packed_mud_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_prismarine_bricks.png b/public/textures/chipped/vertical_disordered_prismarine_bricks.png new file mode 100644 index 00000000..397c3591 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_prismarine_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_purpur_block_bricks.png b/public/textures/chipped/vertical_disordered_purpur_block_bricks.png new file mode 100644 index 00000000..5c87ed67 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_purpur_block_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_quartz_block_bricks.png b/public/textures/chipped/vertical_disordered_quartz_block_bricks.png new file mode 100644 index 00000000..23323d7d Binary files /dev/null and b/public/textures/chipped/vertical_disordered_quartz_block_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_raw_copper_block_bricks.png b/public/textures/chipped/vertical_disordered_raw_copper_block_bricks.png new file mode 100644 index 00000000..b7fc5f66 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_raw_copper_block_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_raw_gold_block_bricks.png b/public/textures/chipped/vertical_disordered_raw_gold_block_bricks.png new file mode 100644 index 00000000..103e841b Binary files /dev/null and b/public/textures/chipped/vertical_disordered_raw_gold_block_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_raw_iron_block_bricks.png b/public/textures/chipped/vertical_disordered_raw_iron_block_bricks.png new file mode 100644 index 00000000..ceba49ff Binary files /dev/null and b/public/textures/chipped/vertical_disordered_raw_iron_block_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_red_nether_bricks_bricks.png b/public/textures/chipped/vertical_disordered_red_nether_bricks_bricks.png new file mode 100644 index 00000000..635a6d96 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_red_nether_bricks_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_red_sandstone_bricks.png b/public/textures/chipped/vertical_disordered_red_sandstone_bricks.png new file mode 100644 index 00000000..9cd4b848 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_red_sandstone_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_redstone_block_bricks.png b/public/textures/chipped/vertical_disordered_redstone_block_bricks.png new file mode 100644 index 00000000..b0f7c139 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_redstone_block_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_sandstone_bricks.png b/public/textures/chipped/vertical_disordered_sandstone_bricks.png new file mode 100644 index 00000000..6bd92e9e Binary files /dev/null and b/public/textures/chipped/vertical_disordered_sandstone_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_smooth_stone_bricks.png b/public/textures/chipped/vertical_disordered_smooth_stone_bricks.png new file mode 100644 index 00000000..7ed13631 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_smooth_stone_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_snow_block_bricks.png b/public/textures/chipped/vertical_disordered_snow_block_bricks.png new file mode 100644 index 00000000..4ce27880 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_snow_block_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_stone_bricks.png b/public/textures/chipped/vertical_disordered_stone_bricks.png new file mode 100644 index 00000000..93b03205 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_stone_bricks.png differ diff --git a/public/textures/chipped/vertical_disordered_tuff_bricks.png b/public/textures/chipped/vertical_disordered_tuff_bricks.png new file mode 100644 index 00000000..ecdca225 Binary files /dev/null and b/public/textures/chipped/vertical_disordered_tuff_bricks.png differ diff --git a/public/textures/chipped/vertical_jungle_planks.png b/public/textures/chipped/vertical_jungle_planks.png new file mode 100644 index 00000000..928898fc Binary files /dev/null and b/public/textures/chipped/vertical_jungle_planks.png differ diff --git a/public/textures/chipped/vertical_layered_stripped_mangrove_log.png b/public/textures/chipped/vertical_layered_stripped_mangrove_log.png new file mode 100644 index 00000000..2e9ed57d Binary files /dev/null and b/public/textures/chipped/vertical_layered_stripped_mangrove_log.png differ diff --git a/public/textures/chipped/vertical_leaded_glass.png b/public/textures/chipped/vertical_leaded_glass.png new file mode 100644 index 00000000..bd6c57a1 Binary files /dev/null and b/public/textures/chipped/vertical_leaded_glass.png differ diff --git a/public/textures/chipped/vertical_leaded_glass_pane.png b/public/textures/chipped/vertical_leaded_glass_pane.png new file mode 100644 index 00000000..65c0f2be Binary files /dev/null and b/public/textures/chipped/vertical_leaded_glass_pane.png differ diff --git a/public/textures/chipped/vertical_mangrove_planks.png b/public/textures/chipped/vertical_mangrove_planks.png new file mode 100644 index 00000000..022e9647 Binary files /dev/null and b/public/textures/chipped/vertical_mangrove_planks.png differ diff --git a/public/textures/chipped/vertical_mixed_oak_bookshelf.png b/public/textures/chipped/vertical_mixed_oak_bookshelf.png new file mode 100644 index 00000000..d9aa717f Binary files /dev/null and b/public/textures/chipped/vertical_mixed_oak_bookshelf.png differ diff --git a/public/textures/chipped/vertical_oak_bookshelf.png b/public/textures/chipped/vertical_oak_bookshelf.png new file mode 100644 index 00000000..857d09bd Binary files /dev/null and b/public/textures/chipped/vertical_oak_bookshelf.png differ diff --git a/public/textures/chipped/vertical_oak_lighted_bookshelf.png b/public/textures/chipped/vertical_oak_lighted_bookshelf.png new file mode 100644 index 00000000..4b2df36f Binary files /dev/null and b/public/textures/chipped/vertical_oak_lighted_bookshelf.png differ diff --git a/public/textures/chipped/vertical_oak_planks.png b/public/textures/chipped/vertical_oak_planks.png new file mode 100644 index 00000000..f62b868e Binary files /dev/null and b/public/textures/chipped/vertical_oak_planks.png differ diff --git a/public/textures/chipped/vertical_oak_webbed_bookshelf.png b/public/textures/chipped/vertical_oak_webbed_bookshelf.png new file mode 100644 index 00000000..bc7f5f9a Binary files /dev/null and b/public/textures/chipped/vertical_oak_webbed_bookshelf.png differ diff --git a/public/textures/chipped/vertical_spruce_planks.png b/public/textures/chipped/vertical_spruce_planks.png new file mode 100644 index 00000000..1c6650d3 Binary files /dev/null and b/public/textures/chipped/vertical_spruce_planks.png differ diff --git a/public/textures/chipped/vertical_stiped_black_stained_glass.png b/public/textures/chipped/vertical_stiped_black_stained_glass.png new file mode 100644 index 00000000..a3a6b89a Binary files /dev/null and b/public/textures/chipped/vertical_stiped_black_stained_glass.png differ diff --git a/public/textures/chipped/vertical_stiped_black_stained_glass_pane.png b/public/textures/chipped/vertical_stiped_black_stained_glass_pane.png new file mode 100644 index 00000000..54942042 Binary files /dev/null and b/public/textures/chipped/vertical_stiped_black_stained_glass_pane.png differ diff --git a/public/textures/chipped/vertical_stiped_blue_stained_glass.png b/public/textures/chipped/vertical_stiped_blue_stained_glass.png new file mode 100644 index 00000000..721d91b5 Binary files /dev/null and b/public/textures/chipped/vertical_stiped_blue_stained_glass.png differ diff --git a/public/textures/chipped/vertical_stiped_blue_stained_glass_pane.png b/public/textures/chipped/vertical_stiped_blue_stained_glass_pane.png new file mode 100644 index 00000000..2aad1566 Binary files /dev/null and b/public/textures/chipped/vertical_stiped_blue_stained_glass_pane.png differ diff --git a/public/textures/chipped/vertical_stiped_brown_stained_glass.png b/public/textures/chipped/vertical_stiped_brown_stained_glass.png new file mode 100644 index 00000000..b92d2c62 Binary files /dev/null and b/public/textures/chipped/vertical_stiped_brown_stained_glass.png differ diff --git a/public/textures/chipped/vertical_stiped_brown_stained_glass_pane.png b/public/textures/chipped/vertical_stiped_brown_stained_glass_pane.png new file mode 100644 index 00000000..df0c94a2 Binary files /dev/null and b/public/textures/chipped/vertical_stiped_brown_stained_glass_pane.png differ diff --git a/public/textures/chipped/vertical_stiped_cyan_stained_glass.png b/public/textures/chipped/vertical_stiped_cyan_stained_glass.png new file mode 100644 index 00000000..ea3b7e49 Binary files /dev/null and b/public/textures/chipped/vertical_stiped_cyan_stained_glass.png differ diff --git a/public/textures/chipped/vertical_stiped_cyan_stained_glass_pane.png b/public/textures/chipped/vertical_stiped_cyan_stained_glass_pane.png new file mode 100644 index 00000000..52953bd1 Binary files /dev/null and b/public/textures/chipped/vertical_stiped_cyan_stained_glass_pane.png differ diff --git a/public/textures/chipped/vertical_stiped_gray_stained_glass.png b/public/textures/chipped/vertical_stiped_gray_stained_glass.png new file mode 100644 index 00000000..5fed8087 Binary files /dev/null and b/public/textures/chipped/vertical_stiped_gray_stained_glass.png differ diff --git a/public/textures/chipped/vertical_stiped_gray_stained_glass_pane.png b/public/textures/chipped/vertical_stiped_gray_stained_glass_pane.png new file mode 100644 index 00000000..b2e8c0c5 Binary files /dev/null and b/public/textures/chipped/vertical_stiped_gray_stained_glass_pane.png differ diff --git a/public/textures/chipped/vertical_stiped_green_stained_glass.png b/public/textures/chipped/vertical_stiped_green_stained_glass.png new file mode 100644 index 00000000..761e9a98 Binary files /dev/null and b/public/textures/chipped/vertical_stiped_green_stained_glass.png differ diff --git a/public/textures/chipped/vertical_stiped_green_stained_glass_pane.png b/public/textures/chipped/vertical_stiped_green_stained_glass_pane.png new file mode 100644 index 00000000..c6178fc5 Binary files /dev/null and b/public/textures/chipped/vertical_stiped_green_stained_glass_pane.png differ diff --git a/public/textures/chipped/vertical_stiped_light_blue_stained_glass.png b/public/textures/chipped/vertical_stiped_light_blue_stained_glass.png new file mode 100644 index 00000000..db6b2314 Binary files /dev/null and b/public/textures/chipped/vertical_stiped_light_blue_stained_glass.png differ diff --git a/public/textures/chipped/vertical_stiped_light_blue_stained_glass_pane.png b/public/textures/chipped/vertical_stiped_light_blue_stained_glass_pane.png new file mode 100644 index 00000000..c7f19bfb Binary files /dev/null and b/public/textures/chipped/vertical_stiped_light_blue_stained_glass_pane.png differ diff --git a/public/textures/chipped/vertical_stiped_light_gray_stained_glass.png b/public/textures/chipped/vertical_stiped_light_gray_stained_glass.png new file mode 100644 index 00000000..f9a76c72 Binary files /dev/null and b/public/textures/chipped/vertical_stiped_light_gray_stained_glass.png differ diff --git a/public/textures/chipped/vertical_stiped_light_gray_stained_glass_pane.png b/public/textures/chipped/vertical_stiped_light_gray_stained_glass_pane.png new file mode 100644 index 00000000..0523f26f Binary files /dev/null and b/public/textures/chipped/vertical_stiped_light_gray_stained_glass_pane.png differ diff --git a/public/textures/chipped/vertical_stiped_lime_stained_glass.png b/public/textures/chipped/vertical_stiped_lime_stained_glass.png new file mode 100644 index 00000000..524ec39f Binary files /dev/null and b/public/textures/chipped/vertical_stiped_lime_stained_glass.png differ diff --git a/public/textures/chipped/vertical_stiped_lime_stained_glass_pane.png b/public/textures/chipped/vertical_stiped_lime_stained_glass_pane.png new file mode 100644 index 00000000..3c530825 Binary files /dev/null and b/public/textures/chipped/vertical_stiped_lime_stained_glass_pane.png differ diff --git a/public/textures/chipped/vertical_stiped_magenta_stained_glass.png b/public/textures/chipped/vertical_stiped_magenta_stained_glass.png new file mode 100644 index 00000000..e76b7104 Binary files /dev/null and b/public/textures/chipped/vertical_stiped_magenta_stained_glass.png differ diff --git a/public/textures/chipped/vertical_stiped_magenta_stained_glass_pane.png b/public/textures/chipped/vertical_stiped_magenta_stained_glass_pane.png new file mode 100644 index 00000000..97e5b186 Binary files /dev/null and b/public/textures/chipped/vertical_stiped_magenta_stained_glass_pane.png differ diff --git a/public/textures/chipped/vertical_stiped_orange_stained_glass.png b/public/textures/chipped/vertical_stiped_orange_stained_glass.png new file mode 100644 index 00000000..a5b3e870 Binary files /dev/null and b/public/textures/chipped/vertical_stiped_orange_stained_glass.png differ diff --git a/public/textures/chipped/vertical_stiped_orange_stained_glass_pane.png b/public/textures/chipped/vertical_stiped_orange_stained_glass_pane.png new file mode 100644 index 00000000..f2f29a94 Binary files /dev/null and b/public/textures/chipped/vertical_stiped_orange_stained_glass_pane.png differ diff --git a/public/textures/chipped/vertical_stiped_pink_stained_glass.png b/public/textures/chipped/vertical_stiped_pink_stained_glass.png new file mode 100644 index 00000000..67f9fdc3 Binary files /dev/null and b/public/textures/chipped/vertical_stiped_pink_stained_glass.png differ diff --git a/public/textures/chipped/vertical_stiped_pink_stained_glass_pane.png b/public/textures/chipped/vertical_stiped_pink_stained_glass_pane.png new file mode 100644 index 00000000..e6f7e00a Binary files /dev/null and b/public/textures/chipped/vertical_stiped_pink_stained_glass_pane.png differ diff --git a/public/textures/chipped/vertical_stiped_purple_stained_glass.png b/public/textures/chipped/vertical_stiped_purple_stained_glass.png new file mode 100644 index 00000000..7542ed79 Binary files /dev/null and b/public/textures/chipped/vertical_stiped_purple_stained_glass.png differ diff --git a/public/textures/chipped/vertical_stiped_purple_stained_glass_pane.png b/public/textures/chipped/vertical_stiped_purple_stained_glass_pane.png new file mode 100644 index 00000000..6eb9e79c Binary files /dev/null and b/public/textures/chipped/vertical_stiped_purple_stained_glass_pane.png differ diff --git a/public/textures/chipped/vertical_stiped_red_stained_glass.png b/public/textures/chipped/vertical_stiped_red_stained_glass.png new file mode 100644 index 00000000..3f1b737b Binary files /dev/null and b/public/textures/chipped/vertical_stiped_red_stained_glass.png differ diff --git a/public/textures/chipped/vertical_stiped_red_stained_glass_pane.png b/public/textures/chipped/vertical_stiped_red_stained_glass_pane.png new file mode 100644 index 00000000..72f819da Binary files /dev/null and b/public/textures/chipped/vertical_stiped_red_stained_glass_pane.png differ diff --git a/public/textures/chipped/vertical_stiped_white_stained_glass.png b/public/textures/chipped/vertical_stiped_white_stained_glass.png new file mode 100644 index 00000000..3ffe821e Binary files /dev/null and b/public/textures/chipped/vertical_stiped_white_stained_glass.png differ diff --git a/public/textures/chipped/vertical_stiped_white_stained_glass_pane.png b/public/textures/chipped/vertical_stiped_white_stained_glass_pane.png new file mode 100644 index 00000000..d6db5ef4 Binary files /dev/null and b/public/textures/chipped/vertical_stiped_white_stained_glass_pane.png differ diff --git a/public/textures/chipped/vertical_stiped_yellow_stained_glass.png b/public/textures/chipped/vertical_stiped_yellow_stained_glass.png new file mode 100644 index 00000000..9b79c022 Binary files /dev/null and b/public/textures/chipped/vertical_stiped_yellow_stained_glass.png differ diff --git a/public/textures/chipped/vertical_stiped_yellow_stained_glass_pane.png b/public/textures/chipped/vertical_stiped_yellow_stained_glass_pane.png new file mode 100644 index 00000000..1f3a26fa Binary files /dev/null and b/public/textures/chipped/vertical_stiped_yellow_stained_glass_pane.png differ diff --git a/public/textures/chipped/vertical_warped_planks.png b/public/textures/chipped/vertical_warped_planks.png new file mode 100644 index 00000000..051e468e Binary files /dev/null and b/public/textures/chipped/vertical_warped_planks.png differ diff --git a/public/textures/chipped/vertically_railed_acacia_planks.png b/public/textures/chipped/vertically_railed_acacia_planks.png new file mode 100644 index 00000000..6e10e5cc Binary files /dev/null and b/public/textures/chipped/vertically_railed_acacia_planks.png differ diff --git a/public/textures/chipped/vertically_railed_bamboo_planks.png b/public/textures/chipped/vertically_railed_bamboo_planks.png new file mode 100644 index 00000000..39919d6b Binary files /dev/null and b/public/textures/chipped/vertically_railed_bamboo_planks.png differ diff --git a/public/textures/chipped/vertically_railed_birch_planks.png b/public/textures/chipped/vertically_railed_birch_planks.png new file mode 100644 index 00000000..f5a8f49f Binary files /dev/null and b/public/textures/chipped/vertically_railed_birch_planks.png differ diff --git a/public/textures/chipped/vertically_railed_cherry_planks.png b/public/textures/chipped/vertically_railed_cherry_planks.png new file mode 100644 index 00000000..8d966afc Binary files /dev/null and b/public/textures/chipped/vertically_railed_cherry_planks.png differ diff --git a/public/textures/chipped/vertically_railed_crimson_planks.png b/public/textures/chipped/vertically_railed_crimson_planks.png new file mode 100644 index 00000000..2aabf61b Binary files /dev/null and b/public/textures/chipped/vertically_railed_crimson_planks.png differ diff --git a/public/textures/chipped/vertically_railed_dark_oak_planks.png b/public/textures/chipped/vertically_railed_dark_oak_planks.png new file mode 100644 index 00000000..fe8b0b58 Binary files /dev/null and b/public/textures/chipped/vertically_railed_dark_oak_planks.png differ diff --git a/public/textures/chipped/vertically_railed_jungle_planks.png b/public/textures/chipped/vertically_railed_jungle_planks.png new file mode 100644 index 00000000..f85d71c7 Binary files /dev/null and b/public/textures/chipped/vertically_railed_jungle_planks.png differ diff --git a/public/textures/chipped/vertically_railed_mangrove_planks.png b/public/textures/chipped/vertically_railed_mangrove_planks.png new file mode 100644 index 00000000..55a0a1e5 Binary files /dev/null and b/public/textures/chipped/vertically_railed_mangrove_planks.png differ diff --git a/public/textures/chipped/vertically_railed_oak_planks.png b/public/textures/chipped/vertically_railed_oak_planks.png new file mode 100644 index 00000000..b724590a Binary files /dev/null and b/public/textures/chipped/vertically_railed_oak_planks.png differ diff --git a/public/textures/chipped/vertically_railed_spruce_planks.png b/public/textures/chipped/vertically_railed_spruce_planks.png new file mode 100644 index 00000000..2060d863 Binary files /dev/null and b/public/textures/chipped/vertically_railed_spruce_planks.png differ diff --git a/public/textures/chipped/vertically_railed_warped_planks.png b/public/textures/chipped/vertically_railed_warped_planks.png new file mode 100644 index 00000000..b70309e6 Binary files /dev/null and b/public/textures/chipped/vertically_railed_warped_planks.png differ diff --git a/public/textures/chipped/victorian_iron_bars_pikes.png b/public/textures/chipped/victorian_iron_bars_pikes.png new file mode 100644 index 00000000..2fdca4f5 Binary files /dev/null and b/public/textures/chipped/victorian_iron_bars_pikes.png differ diff --git a/public/textures/chipped/vined_acacia_trapdoor.png b/public/textures/chipped/vined_acacia_trapdoor.png new file mode 100644 index 00000000..c74f7948 Binary files /dev/null and b/public/textures/chipped/vined_acacia_trapdoor.png differ diff --git a/public/textures/chipped/vined_bamboo_trapdoor.png b/public/textures/chipped/vined_bamboo_trapdoor.png new file mode 100644 index 00000000..32539029 Binary files /dev/null and b/public/textures/chipped/vined_bamboo_trapdoor.png differ diff --git a/public/textures/chipped/vined_birch_trapdoor.png b/public/textures/chipped/vined_birch_trapdoor.png new file mode 100644 index 00000000..860d6567 Binary files /dev/null and b/public/textures/chipped/vined_birch_trapdoor.png differ diff --git a/public/textures/chipped/vined_cherry_trapdoor.png b/public/textures/chipped/vined_cherry_trapdoor.png new file mode 100644 index 00000000..2fe1012f Binary files /dev/null and b/public/textures/chipped/vined_cherry_trapdoor.png differ diff --git a/public/textures/chipped/vined_crimson_trapdoor.png b/public/textures/chipped/vined_crimson_trapdoor.png new file mode 100644 index 00000000..c7395d20 Binary files /dev/null and b/public/textures/chipped/vined_crimson_trapdoor.png differ diff --git a/public/textures/chipped/vined_dark_oak_trapdoor.png b/public/textures/chipped/vined_dark_oak_trapdoor.png new file mode 100644 index 00000000..4670a74d Binary files /dev/null and b/public/textures/chipped/vined_dark_oak_trapdoor.png differ diff --git a/public/textures/chipped/vined_iron_bars.png b/public/textures/chipped/vined_iron_bars.png new file mode 100644 index 00000000..267d1308 Binary files /dev/null and b/public/textures/chipped/vined_iron_bars.png differ diff --git a/public/textures/chipped/vined_jungle_trapdoor.png b/public/textures/chipped/vined_jungle_trapdoor.png new file mode 100644 index 00000000..a2d3004f Binary files /dev/null and b/public/textures/chipped/vined_jungle_trapdoor.png differ diff --git a/public/textures/chipped/vined_mangrove_trapdoor.png b/public/textures/chipped/vined_mangrove_trapdoor.png new file mode 100644 index 00000000..1a6ae272 Binary files /dev/null and b/public/textures/chipped/vined_mangrove_trapdoor.png differ diff --git a/public/textures/chipped/vined_oak_trapdoor.png b/public/textures/chipped/vined_oak_trapdoor.png new file mode 100644 index 00000000..67a3bc04 Binary files /dev/null and b/public/textures/chipped/vined_oak_trapdoor.png differ diff --git a/public/textures/chipped/vined_spruce_trapdoor.png b/public/textures/chipped/vined_spruce_trapdoor.png new file mode 100644 index 00000000..88abd282 Binary files /dev/null and b/public/textures/chipped/vined_spruce_trapdoor.png differ diff --git a/public/textures/chipped/vined_warped_trapdoor.png b/public/textures/chipped/vined_warped_trapdoor.png new file mode 100644 index 00000000..4d3e95e5 Binary files /dev/null and b/public/textures/chipped/vined_warped_trapdoor.png differ diff --git a/public/textures/chipped/warm_mushroom_stem.png b/public/textures/chipped/warm_mushroom_stem.png new file mode 100644 index 00000000..f2c5724f Binary files /dev/null and b/public/textures/chipped/warm_mushroom_stem.png differ diff --git a/public/textures/chipped/warning_black_concrete.png b/public/textures/chipped/warning_black_concrete.png new file mode 100644 index 00000000..451b5d2f Binary files /dev/null and b/public/textures/chipped/warning_black_concrete.png differ diff --git a/public/textures/chipped/warning_blue_concrete.png b/public/textures/chipped/warning_blue_concrete.png new file mode 100644 index 00000000..54780fd8 Binary files /dev/null and b/public/textures/chipped/warning_blue_concrete.png differ diff --git a/public/textures/chipped/warning_brown_concrete.png b/public/textures/chipped/warning_brown_concrete.png new file mode 100644 index 00000000..1f30fdca Binary files /dev/null and b/public/textures/chipped/warning_brown_concrete.png differ diff --git a/public/textures/chipped/warning_cyan_concrete.png b/public/textures/chipped/warning_cyan_concrete.png new file mode 100644 index 00000000..1d4dc6be Binary files /dev/null and b/public/textures/chipped/warning_cyan_concrete.png differ diff --git a/public/textures/chipped/warning_gray_concrete.png b/public/textures/chipped/warning_gray_concrete.png new file mode 100644 index 00000000..a3a6d5ac Binary files /dev/null and b/public/textures/chipped/warning_gray_concrete.png differ diff --git a/public/textures/chipped/warning_green_concrete.png b/public/textures/chipped/warning_green_concrete.png new file mode 100644 index 00000000..51458af5 Binary files /dev/null and b/public/textures/chipped/warning_green_concrete.png differ diff --git a/public/textures/chipped/warning_light_blue_concrete.png b/public/textures/chipped/warning_light_blue_concrete.png new file mode 100644 index 00000000..dcf51a74 Binary files /dev/null and b/public/textures/chipped/warning_light_blue_concrete.png differ diff --git a/public/textures/chipped/warning_light_gray_concrete.png b/public/textures/chipped/warning_light_gray_concrete.png new file mode 100644 index 00000000..f4006adf Binary files /dev/null and b/public/textures/chipped/warning_light_gray_concrete.png differ diff --git a/public/textures/chipped/warning_lime_concrete.png b/public/textures/chipped/warning_lime_concrete.png new file mode 100644 index 00000000..2a03f90e Binary files /dev/null and b/public/textures/chipped/warning_lime_concrete.png differ diff --git a/public/textures/chipped/warning_magenta_concrete.png b/public/textures/chipped/warning_magenta_concrete.png new file mode 100644 index 00000000..e3e26801 Binary files /dev/null and b/public/textures/chipped/warning_magenta_concrete.png differ diff --git a/public/textures/chipped/warning_orange_concrete.png b/public/textures/chipped/warning_orange_concrete.png new file mode 100644 index 00000000..18f35102 Binary files /dev/null and b/public/textures/chipped/warning_orange_concrete.png differ diff --git a/public/textures/chipped/warning_pink_concrete.png b/public/textures/chipped/warning_pink_concrete.png new file mode 100644 index 00000000..3788d1ee Binary files /dev/null and b/public/textures/chipped/warning_pink_concrete.png differ diff --git a/public/textures/chipped/warning_purple_concrete.png b/public/textures/chipped/warning_purple_concrete.png new file mode 100644 index 00000000..a947dfb2 Binary files /dev/null and b/public/textures/chipped/warning_purple_concrete.png differ diff --git a/public/textures/chipped/warning_red_concrete.png b/public/textures/chipped/warning_red_concrete.png new file mode 100644 index 00000000..c46832a0 Binary files /dev/null and b/public/textures/chipped/warning_red_concrete.png differ diff --git a/public/textures/chipped/warning_white_concrete.png b/public/textures/chipped/warning_white_concrete.png new file mode 100644 index 00000000..a18a7588 Binary files /dev/null and b/public/textures/chipped/warning_white_concrete.png differ diff --git a/public/textures/chipped/warning_yellow_concrete.png b/public/textures/chipped/warning_yellow_concrete.png new file mode 100644 index 00000000..b7019388 Binary files /dev/null and b/public/textures/chipped/warning_yellow_concrete.png differ diff --git a/public/textures/chipped/warped_crate.png b/public/textures/chipped/warped_crate.png new file mode 100644 index 00000000..432745ac Binary files /dev/null and b/public/textures/chipped/warped_crate.png differ diff --git a/public/textures/chipped/warped_fungus_bulb.png b/public/textures/chipped/warped_fungus_bulb.png new file mode 100644 index 00000000..37f230af Binary files /dev/null and b/public/textures/chipped/warped_fungus_bulb.png differ diff --git a/public/textures/chipped/warped_fungus_bushel.png b/public/textures/chipped/warped_fungus_bushel.png new file mode 100644 index 00000000..0b67c4cd Binary files /dev/null and b/public/textures/chipped/warped_fungus_bushel.png differ diff --git a/public/textures/chipped/warped_fungus_cluster.png b/public/textures/chipped/warped_fungus_cluster.png new file mode 100644 index 00000000..345a19ad Binary files /dev/null and b/public/textures/chipped/warped_fungus_cluster.png differ diff --git a/public/textures/chipped/warped_fungus_trio.png b/public/textures/chipped/warped_fungus_trio.png new file mode 100644 index 00000000..67e9ae29 Binary files /dev/null and b/public/textures/chipped/warped_fungus_trio.png differ diff --git a/public/textures/chipped/warped_planks_mosaic.png b/public/textures/chipped/warped_planks_mosaic.png new file mode 100644 index 00000000..bc0e5035 Binary files /dev/null and b/public/textures/chipped/warped_planks_mosaic.png differ diff --git a/public/textures/chipped/warped_planks_panel.png b/public/textures/chipped/warped_planks_panel.png new file mode 100644 index 00000000..e9921da0 Binary files /dev/null and b/public/textures/chipped/warped_planks_panel.png differ diff --git a/public/textures/chipped/warped_planks_shavings.png b/public/textures/chipped/warped_planks_shavings.png new file mode 100644 index 00000000..e70ba310 Binary files /dev/null and b/public/textures/chipped/warped_planks_shavings.png differ diff --git a/public/textures/chipped/warped_torch.png b/public/textures/chipped/warped_torch.png new file mode 100644 index 00000000..b2746e6f Binary files /dev/null and b/public/textures/chipped/warped_torch.png differ diff --git a/public/textures/chipped/warped_vine.png b/public/textures/chipped/warped_vine.png new file mode 100644 index 00000000..194f9c39 Binary files /dev/null and b/public/textures/chipped/warped_vine.png differ diff --git a/public/textures/chipped/wart_dried_kelp_block.png b/public/textures/chipped/wart_dried_kelp_block.png new file mode 100644 index 00000000..13fe74dc Binary files /dev/null and b/public/textures/chipped/wart_dried_kelp_block.png differ diff --git a/public/textures/chipped/warted_acacia_trapdoor.png b/public/textures/chipped/warted_acacia_trapdoor.png new file mode 100644 index 00000000..ec0c81b1 Binary files /dev/null and b/public/textures/chipped/warted_acacia_trapdoor.png differ diff --git a/public/textures/chipped/warted_bamboo_trapdoor.png b/public/textures/chipped/warted_bamboo_trapdoor.png new file mode 100644 index 00000000..d16b707c Binary files /dev/null and b/public/textures/chipped/warted_bamboo_trapdoor.png differ diff --git a/public/textures/chipped/warted_birch_trapdoor.png b/public/textures/chipped/warted_birch_trapdoor.png new file mode 100644 index 00000000..792819f8 Binary files /dev/null and b/public/textures/chipped/warted_birch_trapdoor.png differ diff --git a/public/textures/chipped/warted_cherry_trapdoor.png b/public/textures/chipped/warted_cherry_trapdoor.png new file mode 100644 index 00000000..da98527a Binary files /dev/null and b/public/textures/chipped/warted_cherry_trapdoor.png differ diff --git a/public/textures/chipped/warted_crimson_trapdoor.png b/public/textures/chipped/warted_crimson_trapdoor.png new file mode 100644 index 00000000..83f87011 Binary files /dev/null and b/public/textures/chipped/warted_crimson_trapdoor.png differ diff --git a/public/textures/chipped/warted_dark_oak_trapdoor.png b/public/textures/chipped/warted_dark_oak_trapdoor.png new file mode 100644 index 00000000..c246c922 Binary files /dev/null and b/public/textures/chipped/warted_dark_oak_trapdoor.png differ diff --git a/public/textures/chipped/warted_jungle_trapdoor.png b/public/textures/chipped/warted_jungle_trapdoor.png new file mode 100644 index 00000000..f9841d1d Binary files /dev/null and b/public/textures/chipped/warted_jungle_trapdoor.png differ diff --git a/public/textures/chipped/warted_mangrove_trapdoor.png b/public/textures/chipped/warted_mangrove_trapdoor.png new file mode 100644 index 00000000..662a5b02 Binary files /dev/null and b/public/textures/chipped/warted_mangrove_trapdoor.png differ diff --git a/public/textures/chipped/warted_oak_trapdoor.png b/public/textures/chipped/warted_oak_trapdoor.png new file mode 100644 index 00000000..b2857ed3 Binary files /dev/null and b/public/textures/chipped/warted_oak_trapdoor.png differ diff --git a/public/textures/chipped/warted_spruce_trapdoor.png b/public/textures/chipped/warted_spruce_trapdoor.png new file mode 100644 index 00000000..43e0edec Binary files /dev/null and b/public/textures/chipped/warted_spruce_trapdoor.png differ diff --git a/public/textures/chipped/warted_warped_trapdoor.png b/public/textures/chipped/warted_warped_trapdoor.png new file mode 100644 index 00000000..67b7a331 Binary files /dev/null and b/public/textures/chipped/warted_warped_trapdoor.png differ diff --git a/public/textures/chipped/warty_nether_sprouts.png b/public/textures/chipped/warty_nether_sprouts.png new file mode 100644 index 00000000..5047a095 Binary files /dev/null and b/public/textures/chipped/warty_nether_sprouts.png differ diff --git a/public/textures/chipped/watching_lodestone.png b/public/textures/chipped/watching_lodestone.png new file mode 100644 index 00000000..e40cbae6 Binary files /dev/null and b/public/textures/chipped/watching_lodestone.png differ diff --git a/public/textures/chipped/watering_can.png b/public/textures/chipped/watering_can.png new file mode 100644 index 00000000..c42f8f7c Binary files /dev/null and b/public/textures/chipped/watering_can.png differ diff --git a/public/textures/chipped/waved_black_glazed_terracotta.png b/public/textures/chipped/waved_black_glazed_terracotta.png new file mode 100644 index 00000000..335c5fa8 Binary files /dev/null and b/public/textures/chipped/waved_black_glazed_terracotta.png differ diff --git a/public/textures/chipped/waved_blue_glazed_terracotta.png b/public/textures/chipped/waved_blue_glazed_terracotta.png new file mode 100644 index 00000000..a6563a5e Binary files /dev/null and b/public/textures/chipped/waved_blue_glazed_terracotta.png differ diff --git a/public/textures/chipped/waved_brown_glazed_terracotta.png b/public/textures/chipped/waved_brown_glazed_terracotta.png new file mode 100644 index 00000000..a4d12ec4 Binary files /dev/null and b/public/textures/chipped/waved_brown_glazed_terracotta.png differ diff --git a/public/textures/chipped/waved_cyan_glazed_terracotta.png b/public/textures/chipped/waved_cyan_glazed_terracotta.png new file mode 100644 index 00000000..a013f8b9 Binary files /dev/null and b/public/textures/chipped/waved_cyan_glazed_terracotta.png differ diff --git a/public/textures/chipped/waved_gray_glazed_terracotta.png b/public/textures/chipped/waved_gray_glazed_terracotta.png new file mode 100644 index 00000000..91734c19 Binary files /dev/null and b/public/textures/chipped/waved_gray_glazed_terracotta.png differ diff --git a/public/textures/chipped/waved_green_glazed_terracotta.png b/public/textures/chipped/waved_green_glazed_terracotta.png new file mode 100644 index 00000000..b6a6fa3c Binary files /dev/null and b/public/textures/chipped/waved_green_glazed_terracotta.png differ diff --git a/public/textures/chipped/waved_light_blue_glazed_terracotta.png b/public/textures/chipped/waved_light_blue_glazed_terracotta.png new file mode 100644 index 00000000..4a701174 Binary files /dev/null and b/public/textures/chipped/waved_light_blue_glazed_terracotta.png differ diff --git a/public/textures/chipped/waved_light_gray_glazed_terracotta.png b/public/textures/chipped/waved_light_gray_glazed_terracotta.png new file mode 100644 index 00000000..91236407 Binary files /dev/null and b/public/textures/chipped/waved_light_gray_glazed_terracotta.png differ diff --git a/public/textures/chipped/waved_lime_glazed_terracotta.png b/public/textures/chipped/waved_lime_glazed_terracotta.png new file mode 100644 index 00000000..73e3ebfd Binary files /dev/null and b/public/textures/chipped/waved_lime_glazed_terracotta.png differ diff --git a/public/textures/chipped/waved_magenta_glazed_terracotta.png b/public/textures/chipped/waved_magenta_glazed_terracotta.png new file mode 100644 index 00000000..921f0b4d Binary files /dev/null and b/public/textures/chipped/waved_magenta_glazed_terracotta.png differ diff --git a/public/textures/chipped/waved_orange_glazed_terracotta.png b/public/textures/chipped/waved_orange_glazed_terracotta.png new file mode 100644 index 00000000..89a5da49 Binary files /dev/null and b/public/textures/chipped/waved_orange_glazed_terracotta.png differ diff --git a/public/textures/chipped/waved_pink_glazed_terracotta.png b/public/textures/chipped/waved_pink_glazed_terracotta.png new file mode 100644 index 00000000..dad3b0f6 Binary files /dev/null and b/public/textures/chipped/waved_pink_glazed_terracotta.png differ diff --git a/public/textures/chipped/waved_purple_glazed_terracotta.png b/public/textures/chipped/waved_purple_glazed_terracotta.png new file mode 100644 index 00000000..2f8202df Binary files /dev/null and b/public/textures/chipped/waved_purple_glazed_terracotta.png differ diff --git a/public/textures/chipped/waved_red_glazed_terracotta.png b/public/textures/chipped/waved_red_glazed_terracotta.png new file mode 100644 index 00000000..d9a0c496 Binary files /dev/null and b/public/textures/chipped/waved_red_glazed_terracotta.png differ diff --git a/public/textures/chipped/waved_white_glazed_terracotta.png b/public/textures/chipped/waved_white_glazed_terracotta.png new file mode 100644 index 00000000..ca85304e Binary files /dev/null and b/public/textures/chipped/waved_white_glazed_terracotta.png differ diff --git a/public/textures/chipped/waved_yellow_glazed_terracotta.png b/public/textures/chipped/waved_yellow_glazed_terracotta.png new file mode 100644 index 00000000..82286b5f Binary files /dev/null and b/public/textures/chipped/waved_yellow_glazed_terracotta.png differ diff --git a/public/textures/chipped/weathered_amethyst_block.png b/public/textures/chipped/weathered_amethyst_block.png new file mode 100644 index 00000000..65088c80 Binary files /dev/null and b/public/textures/chipped/weathered_amethyst_block.png differ diff --git a/public/textures/chipped/weathered_ancient_debris.png b/public/textures/chipped/weathered_ancient_debris.png new file mode 100644 index 00000000..01bf6bdc Binary files /dev/null and b/public/textures/chipped/weathered_ancient_debris.png differ diff --git a/public/textures/chipped/weathered_andesite.png b/public/textures/chipped/weathered_andesite.png new file mode 100644 index 00000000..f4ff7525 Binary files /dev/null and b/public/textures/chipped/weathered_andesite.png differ diff --git a/public/textures/chipped/weathered_basalt.png b/public/textures/chipped/weathered_basalt.png new file mode 100644 index 00000000..de3efec8 Binary files /dev/null and b/public/textures/chipped/weathered_basalt.png differ diff --git a/public/textures/chipped/weathered_blue_ice.png b/public/textures/chipped/weathered_blue_ice.png new file mode 100644 index 00000000..93091a01 Binary files /dev/null and b/public/textures/chipped/weathered_blue_ice.png differ diff --git a/public/textures/chipped/weathered_borderless_bricks.png b/public/textures/chipped/weathered_borderless_bricks.png new file mode 100644 index 00000000..8ef68756 Binary files /dev/null and b/public/textures/chipped/weathered_borderless_bricks.png differ diff --git a/public/textures/chipped/weathered_bricks.png b/public/textures/chipped/weathered_bricks.png new file mode 100644 index 00000000..8ef68756 Binary files /dev/null and b/public/textures/chipped/weathered_bricks.png differ diff --git a/public/textures/chipped/weathered_calcite.png b/public/textures/chipped/weathered_calcite.png new file mode 100644 index 00000000..3d6d84d3 Binary files /dev/null and b/public/textures/chipped/weathered_calcite.png differ diff --git a/public/textures/chipped/weathered_clay.png b/public/textures/chipped/weathered_clay.png new file mode 100644 index 00000000..5f46dd47 Binary files /dev/null and b/public/textures/chipped/weathered_clay.png differ diff --git a/public/textures/chipped/weathered_coal_block.png b/public/textures/chipped/weathered_coal_block.png new file mode 100644 index 00000000..490349d8 Binary files /dev/null and b/public/textures/chipped/weathered_coal_block.png differ diff --git a/public/textures/chipped/weathered_cobblestone.png b/public/textures/chipped/weathered_cobblestone.png new file mode 100644 index 00000000..29f2e933 Binary files /dev/null and b/public/textures/chipped/weathered_cobblestone.png differ diff --git a/public/textures/chipped/weathered_crying_obsidian.png b/public/textures/chipped/weathered_crying_obsidian.png new file mode 100644 index 00000000..14b20571 Binary files /dev/null and b/public/textures/chipped/weathered_crying_obsidian.png differ diff --git a/public/textures/chipped/weathered_dark_prismarine.png b/public/textures/chipped/weathered_dark_prismarine.png new file mode 100644 index 00000000..125eb02b Binary files /dev/null and b/public/textures/chipped/weathered_dark_prismarine.png differ diff --git a/public/textures/chipped/weathered_deepslate.png b/public/textures/chipped/weathered_deepslate.png new file mode 100644 index 00000000..6df34500 Binary files /dev/null and b/public/textures/chipped/weathered_deepslate.png differ diff --git a/public/textures/chipped/weathered_diorite.png b/public/textures/chipped/weathered_diorite.png new file mode 100644 index 00000000..1e0493c6 Binary files /dev/null and b/public/textures/chipped/weathered_diorite.png differ diff --git a/public/textures/chipped/weathered_dirt.png b/public/textures/chipped/weathered_dirt.png new file mode 100644 index 00000000..303e9823 Binary files /dev/null and b/public/textures/chipped/weathered_dirt.png differ diff --git a/public/textures/chipped/weathered_dripstone_block.png b/public/textures/chipped/weathered_dripstone_block.png new file mode 100644 index 00000000..44d1e2a2 Binary files /dev/null and b/public/textures/chipped/weathered_dripstone_block.png differ diff --git a/public/textures/chipped/weathered_end_stone.png b/public/textures/chipped/weathered_end_stone.png new file mode 100644 index 00000000..4da56d89 Binary files /dev/null and b/public/textures/chipped/weathered_end_stone.png differ diff --git a/public/textures/chipped/weathered_gilded_blackstone.png b/public/textures/chipped/weathered_gilded_blackstone.png new file mode 100644 index 00000000..2cb36261 Binary files /dev/null and b/public/textures/chipped/weathered_gilded_blackstone.png differ diff --git a/public/textures/chipped/weathered_granite.png b/public/textures/chipped/weathered_granite.png new file mode 100644 index 00000000..2e6fc207 Binary files /dev/null and b/public/textures/chipped/weathered_granite.png differ diff --git a/public/textures/chipped/weathered_ice.png b/public/textures/chipped/weathered_ice.png new file mode 100644 index 00000000..724a2a6e Binary files /dev/null and b/public/textures/chipped/weathered_ice.png differ diff --git a/public/textures/chipped/weathered_lapis_block.png b/public/textures/chipped/weathered_lapis_block.png new file mode 100644 index 00000000..66c2f7b1 Binary files /dev/null and b/public/textures/chipped/weathered_lapis_block.png differ diff --git a/public/textures/chipped/weathered_lodestone.png b/public/textures/chipped/weathered_lodestone.png new file mode 100644 index 00000000..240abd92 Binary files /dev/null and b/public/textures/chipped/weathered_lodestone.png differ diff --git a/public/textures/chipped/weathered_magma_block.png b/public/textures/chipped/weathered_magma_block.png new file mode 100644 index 00000000..edf092a8 Binary files /dev/null and b/public/textures/chipped/weathered_magma_block.png differ diff --git a/public/textures/chipped/weathered_mossy_cobblestone.png b/public/textures/chipped/weathered_mossy_cobblestone.png new file mode 100644 index 00000000..758d0fdc Binary files /dev/null and b/public/textures/chipped/weathered_mossy_cobblestone.png differ diff --git a/public/textures/chipped/weathered_mossy_stone_bricks.png b/public/textures/chipped/weathered_mossy_stone_bricks.png new file mode 100644 index 00000000..d2eb0b66 Binary files /dev/null and b/public/textures/chipped/weathered_mossy_stone_bricks.png differ diff --git a/public/textures/chipped/weathered_nether_bricks.png b/public/textures/chipped/weathered_nether_bricks.png new file mode 100644 index 00000000..b1add805 Binary files /dev/null and b/public/textures/chipped/weathered_nether_bricks.png differ diff --git a/public/textures/chipped/weathered_netherrack.png b/public/textures/chipped/weathered_netherrack.png new file mode 100644 index 00000000..bdbec93b Binary files /dev/null and b/public/textures/chipped/weathered_netherrack.png differ diff --git a/public/textures/chipped/weathered_obsidian.png b/public/textures/chipped/weathered_obsidian.png new file mode 100644 index 00000000..ce0b9789 Binary files /dev/null and b/public/textures/chipped/weathered_obsidian.png differ diff --git a/public/textures/chipped/weathered_packed_ice.png b/public/textures/chipped/weathered_packed_ice.png new file mode 100644 index 00000000..1f69e743 Binary files /dev/null and b/public/textures/chipped/weathered_packed_ice.png differ diff --git a/public/textures/chipped/weathered_prismarine.png b/public/textures/chipped/weathered_prismarine.png new file mode 100644 index 00000000..3c220a0f Binary files /dev/null and b/public/textures/chipped/weathered_prismarine.png differ diff --git a/public/textures/chipped/weathered_purpur_block.png b/public/textures/chipped/weathered_purpur_block.png new file mode 100644 index 00000000..4d54652a Binary files /dev/null and b/public/textures/chipped/weathered_purpur_block.png differ diff --git a/public/textures/chipped/weathered_quartz_block.png b/public/textures/chipped/weathered_quartz_block.png new file mode 100644 index 00000000..a3e26285 Binary files /dev/null and b/public/textures/chipped/weathered_quartz_block.png differ diff --git a/public/textures/chipped/weathered_raw_copper_block.png b/public/textures/chipped/weathered_raw_copper_block.png new file mode 100644 index 00000000..cc7b1d4c Binary files /dev/null and b/public/textures/chipped/weathered_raw_copper_block.png differ diff --git a/public/textures/chipped/weathered_raw_gold_block.png b/public/textures/chipped/weathered_raw_gold_block.png new file mode 100644 index 00000000..f94105b5 Binary files /dev/null and b/public/textures/chipped/weathered_raw_gold_block.png differ diff --git a/public/textures/chipped/weathered_raw_iron_block.png b/public/textures/chipped/weathered_raw_iron_block.png new file mode 100644 index 00000000..b44e7882 Binary files /dev/null and b/public/textures/chipped/weathered_raw_iron_block.png differ diff --git a/public/textures/chipped/weathered_red_nether_bricks.png b/public/textures/chipped/weathered_red_nether_bricks.png new file mode 100644 index 00000000..6caea1f3 Binary files /dev/null and b/public/textures/chipped/weathered_red_nether_bricks.png differ diff --git a/public/textures/chipped/weathered_red_sandstone.png b/public/textures/chipped/weathered_red_sandstone.png new file mode 100644 index 00000000..2026d8d1 Binary files /dev/null and b/public/textures/chipped/weathered_red_sandstone.png differ diff --git a/public/textures/chipped/weathered_redstone_block.png b/public/textures/chipped/weathered_redstone_block.png new file mode 100644 index 00000000..f987a845 Binary files /dev/null and b/public/textures/chipped/weathered_redstone_block.png differ diff --git a/public/textures/chipped/weathered_sandstone.png b/public/textures/chipped/weathered_sandstone.png new file mode 100644 index 00000000..597c4019 Binary files /dev/null and b/public/textures/chipped/weathered_sandstone.png differ diff --git a/public/textures/chipped/weathered_smooth_stone.png b/public/textures/chipped/weathered_smooth_stone.png new file mode 100644 index 00000000..38b6f170 Binary files /dev/null and b/public/textures/chipped/weathered_smooth_stone.png differ diff --git a/public/textures/chipped/weathered_snow_block.png b/public/textures/chipped/weathered_snow_block.png new file mode 100644 index 00000000..a25e0f0f Binary files /dev/null and b/public/textures/chipped/weathered_snow_block.png differ diff --git a/public/textures/chipped/weathered_stone.png b/public/textures/chipped/weathered_stone.png new file mode 100644 index 00000000..279de009 Binary files /dev/null and b/public/textures/chipped/weathered_stone.png differ diff --git a/public/textures/chipped/weathered_tuff.png b/public/textures/chipped/weathered_tuff.png new file mode 100644 index 00000000..2b105a0e Binary files /dev/null and b/public/textures/chipped/weathered_tuff.png differ diff --git a/public/textures/chipped/weaved_bone_block.png b/public/textures/chipped/weaved_bone_block.png new file mode 100644 index 00000000..43b50526 Binary files /dev/null and b/public/textures/chipped/weaved_bone_block.png differ diff --git a/public/textures/chipped/wet_red_sand.png b/public/textures/chipped/wet_red_sand.png new file mode 100644 index 00000000..f6e1cb78 Binary files /dev/null and b/public/textures/chipped/wet_red_sand.png differ diff --git a/public/textures/chipped/wet_sand.png b/public/textures/chipped/wet_sand.png new file mode 100644 index 00000000..befafcf2 Binary files /dev/null and b/public/textures/chipped/wet_sand.png differ diff --git a/public/textures/chipped/whirlwind_acacia_planks.png b/public/textures/chipped/whirlwind_acacia_planks.png new file mode 100644 index 00000000..1d485d3f Binary files /dev/null and b/public/textures/chipped/whirlwind_acacia_planks.png differ diff --git a/public/textures/chipped/whirlwind_bamboo_planks.png b/public/textures/chipped/whirlwind_bamboo_planks.png new file mode 100644 index 00000000..b2716be8 Binary files /dev/null and b/public/textures/chipped/whirlwind_bamboo_planks.png differ diff --git a/public/textures/chipped/whirlwind_birch_planks.png b/public/textures/chipped/whirlwind_birch_planks.png new file mode 100644 index 00000000..d56d8d91 Binary files /dev/null and b/public/textures/chipped/whirlwind_birch_planks.png differ diff --git a/public/textures/chipped/whirlwind_cherry_planks.png b/public/textures/chipped/whirlwind_cherry_planks.png new file mode 100644 index 00000000..2afb24a9 Binary files /dev/null and b/public/textures/chipped/whirlwind_cherry_planks.png differ diff --git a/public/textures/chipped/whirlwind_crimson_planks.png b/public/textures/chipped/whirlwind_crimson_planks.png new file mode 100644 index 00000000..9f0b9936 Binary files /dev/null and b/public/textures/chipped/whirlwind_crimson_planks.png differ diff --git a/public/textures/chipped/whirlwind_dark_oak_planks.png b/public/textures/chipped/whirlwind_dark_oak_planks.png new file mode 100644 index 00000000..b7fe4b92 Binary files /dev/null and b/public/textures/chipped/whirlwind_dark_oak_planks.png differ diff --git a/public/textures/chipped/whirlwind_jungle_planks.png b/public/textures/chipped/whirlwind_jungle_planks.png new file mode 100644 index 00000000..a4a374d4 Binary files /dev/null and b/public/textures/chipped/whirlwind_jungle_planks.png differ diff --git a/public/textures/chipped/whirlwind_oak_planks.png b/public/textures/chipped/whirlwind_oak_planks.png new file mode 100644 index 00000000..866016cd Binary files /dev/null and b/public/textures/chipped/whirlwind_oak_planks.png differ diff --git a/public/textures/chipped/whirlwind_spruce_planks.png b/public/textures/chipped/whirlwind_spruce_planks.png new file mode 100644 index 00000000..f48975bb Binary files /dev/null and b/public/textures/chipped/whirlwind_spruce_planks.png differ diff --git a/public/textures/chipped/whirlwind_warped_planks.png b/public/textures/chipped/whirlwind_warped_planks.png new file mode 100644 index 00000000..69f2b07a Binary files /dev/null and b/public/textures/chipped/whirlwind_warped_planks.png differ diff --git a/public/textures/chipped/white_concrete_bricks.png b/public/textures/chipped/white_concrete_bricks.png new file mode 100644 index 00000000..149df340 Binary files /dev/null and b/public/textures/chipped/white_concrete_bricks.png differ diff --git a/public/textures/chipped/white_concrete_panel.png b/public/textures/chipped/white_concrete_panel.png new file mode 100644 index 00000000..85e66c3c Binary files /dev/null and b/public/textures/chipped/white_concrete_panel.png differ diff --git a/public/textures/chipped/white_concrete_pillar.png b/public/textures/chipped/white_concrete_pillar.png new file mode 100644 index 00000000..5b0ce3a8 Binary files /dev/null and b/public/textures/chipped/white_concrete_pillar.png differ diff --git a/public/textures/chipped/white_concrete_tiles.png b/public/textures/chipped/white_concrete_tiles.png new file mode 100644 index 00000000..cf0cbee1 Binary files /dev/null and b/public/textures/chipped/white_concrete_tiles.png differ diff --git a/public/textures/chipped/white_dusted_brown_mushroom_block.png b/public/textures/chipped/white_dusted_brown_mushroom_block.png new file mode 100644 index 00000000..da8a1c03 Binary files /dev/null and b/public/textures/chipped/white_dusted_brown_mushroom_block.png differ diff --git a/public/textures/chipped/white_flower_acacia_leaves.png b/public/textures/chipped/white_flower_acacia_leaves.png new file mode 100644 index 00000000..07b750e0 Binary files /dev/null and b/public/textures/chipped/white_flower_acacia_leaves.png differ diff --git a/public/textures/chipped/white_flower_birch_leaves.png b/public/textures/chipped/white_flower_birch_leaves.png new file mode 100644 index 00000000..f0301731 Binary files /dev/null and b/public/textures/chipped/white_flower_birch_leaves.png differ diff --git a/public/textures/chipped/white_flower_dark_oak_leaves.png b/public/textures/chipped/white_flower_dark_oak_leaves.png new file mode 100644 index 00000000..13dbc8d9 Binary files /dev/null and b/public/textures/chipped/white_flower_dark_oak_leaves.png differ diff --git a/public/textures/chipped/white_flower_jungle_leaves.png b/public/textures/chipped/white_flower_jungle_leaves.png new file mode 100644 index 00000000..187a4f65 Binary files /dev/null and b/public/textures/chipped/white_flower_jungle_leaves.png differ diff --git a/public/textures/chipped/white_flower_oak_leaves.png b/public/textures/chipped/white_flower_oak_leaves.png new file mode 100644 index 00000000..369050d9 Binary files /dev/null and b/public/textures/chipped/white_flower_oak_leaves.png differ diff --git a/public/textures/chipped/white_flower_spruce_leaves.png b/public/textures/chipped/white_flower_spruce_leaves.png new file mode 100644 index 00000000..96f836ee Binary files /dev/null and b/public/textures/chipped/white_flower_spruce_leaves.png differ diff --git a/public/textures/chipped/white_freckled_brown_mushroom_block.png b/public/textures/chipped/white_freckled_brown_mushroom_block.png new file mode 100644 index 00000000..a651b4c1 Binary files /dev/null and b/public/textures/chipped/white_freckled_brown_mushroom_block.png differ diff --git a/public/textures/chipped/white_glazed_terracotta_pillar_sides.png b/public/textures/chipped/white_glazed_terracotta_pillar_sides.png new file mode 100644 index 00000000..127e1cd3 Binary files /dev/null and b/public/textures/chipped/white_glazed_terracotta_pillar_sides.png differ diff --git a/public/textures/chipped/white_glazed_terracotta_pillar_top.png b/public/textures/chipped/white_glazed_terracotta_pillar_top.png new file mode 100644 index 00000000..109c438f Binary files /dev/null and b/public/textures/chipped/white_glazed_terracotta_pillar_top.png differ diff --git a/public/textures/chipped/white_glazed_terracotta_smooth_tiles.png b/public/textures/chipped/white_glazed_terracotta_smooth_tiles.png new file mode 100644 index 00000000..93e68b49 Binary files /dev/null and b/public/textures/chipped/white_glazed_terracotta_smooth_tiles.png differ diff --git a/public/textures/chipped/white_glazed_terracotta_tiles.png b/public/textures/chipped/white_glazed_terracotta_tiles.png new file mode 100644 index 00000000..62f50498 Binary files /dev/null and b/public/textures/chipped/white_glazed_terracotta_tiles.png differ diff --git a/public/textures/chipped/white_paper_lantern.png b/public/textures/chipped/white_paper_lantern.png new file mode 100644 index 00000000..3a0aae1b Binary files /dev/null and b/public/textures/chipped/white_paper_lantern.png differ diff --git a/public/textures/chipped/white_sand.png b/public/textures/chipped/white_sand.png new file mode 100644 index 00000000..1c00a109 Binary files /dev/null and b/public/textures/chipped/white_sand.png differ diff --git a/public/textures/chipped/white_spotted_brown_mushroom_block.png b/public/textures/chipped/white_spotted_brown_mushroom_block.png new file mode 100644 index 00000000..cd582c20 Binary files /dev/null and b/public/textures/chipped/white_spotted_brown_mushroom_block.png differ diff --git a/public/textures/chipped/white_sprinkled_brown_mushroom_block.png b/public/textures/chipped/white_sprinkled_brown_mushroom_block.png new file mode 100644 index 00000000..f34ba3fd Binary files /dev/null and b/public/textures/chipped/white_sprinkled_brown_mushroom_block.png differ diff --git a/public/textures/chipped/white_terracotta_bricks.png b/public/textures/chipped/white_terracotta_bricks.png new file mode 100644 index 00000000..172880f6 Binary files /dev/null and b/public/textures/chipped/white_terracotta_bricks.png differ diff --git a/public/textures/chipped/white_terracotta_column.png b/public/textures/chipped/white_terracotta_column.png new file mode 100644 index 00000000..39e61344 Binary files /dev/null and b/public/textures/chipped/white_terracotta_column.png differ diff --git a/public/textures/chipped/white_terracotta_pillar.png b/public/textures/chipped/white_terracotta_pillar.png new file mode 100644 index 00000000..bada695b Binary files /dev/null and b/public/textures/chipped/white_terracotta_pillar.png differ diff --git a/public/textures/chipped/white_terracotta_tile.png b/public/textures/chipped/white_terracotta_tile.png new file mode 100644 index 00000000..18331e78 Binary files /dev/null and b/public/textures/chipped/white_terracotta_tile.png differ diff --git a/public/textures/chipped/white_terracotta_tiles.png b/public/textures/chipped/white_terracotta_tiles.png new file mode 100644 index 00000000..150b1088 Binary files /dev/null and b/public/textures/chipped/white_terracotta_tiles.png differ diff --git a/public/textures/chipped/wicked_brown_mushroom.png b/public/textures/chipped/wicked_brown_mushroom.png new file mode 100644 index 00000000..b56ea2c7 Binary files /dev/null and b/public/textures/chipped/wicked_brown_mushroom.png differ diff --git a/public/textures/chipped/wicked_crimson_fungus.png b/public/textures/chipped/wicked_crimson_fungus.png new file mode 100644 index 00000000..77d7cf13 Binary files /dev/null and b/public/textures/chipped/wicked_crimson_fungus.png differ diff --git a/public/textures/chipped/wicked_red_mushroom.png b/public/textures/chipped/wicked_red_mushroom.png new file mode 100644 index 00000000..d3acfb5c Binary files /dev/null and b/public/textures/chipped/wicked_red_mushroom.png differ diff --git a/public/textures/chipped/wicked_warped_fungus.png b/public/textures/chipped/wicked_warped_fungus.png new file mode 100644 index 00000000..f02c08d2 Binary files /dev/null and b/public/textures/chipped/wicked_warped_fungus.png differ diff --git a/public/textures/chipped/wickered_acacia_planks.png b/public/textures/chipped/wickered_acacia_planks.png new file mode 100644 index 00000000..a9e989ba Binary files /dev/null and b/public/textures/chipped/wickered_acacia_planks.png differ diff --git a/public/textures/chipped/wickered_bamboo_planks.png b/public/textures/chipped/wickered_bamboo_planks.png new file mode 100644 index 00000000..691de616 Binary files /dev/null and b/public/textures/chipped/wickered_bamboo_planks.png differ diff --git a/public/textures/chipped/wickered_birch_planks.png b/public/textures/chipped/wickered_birch_planks.png new file mode 100644 index 00000000..76cb1b35 Binary files /dev/null and b/public/textures/chipped/wickered_birch_planks.png differ diff --git a/public/textures/chipped/wickered_black_carpet.png b/public/textures/chipped/wickered_black_carpet.png new file mode 100644 index 00000000..ac0eb1b5 Binary files /dev/null and b/public/textures/chipped/wickered_black_carpet.png differ diff --git a/public/textures/chipped/wickered_black_wool.png b/public/textures/chipped/wickered_black_wool.png new file mode 100644 index 00000000..30401da1 Binary files /dev/null and b/public/textures/chipped/wickered_black_wool.png differ diff --git a/public/textures/chipped/wickered_blue_carpet.png b/public/textures/chipped/wickered_blue_carpet.png new file mode 100644 index 00000000..cb3ceb02 Binary files /dev/null and b/public/textures/chipped/wickered_blue_carpet.png differ diff --git a/public/textures/chipped/wickered_blue_wool.png b/public/textures/chipped/wickered_blue_wool.png new file mode 100644 index 00000000..7138161d Binary files /dev/null and b/public/textures/chipped/wickered_blue_wool.png differ diff --git a/public/textures/chipped/wickered_brown_carpet.png b/public/textures/chipped/wickered_brown_carpet.png new file mode 100644 index 00000000..56dbf7d3 Binary files /dev/null and b/public/textures/chipped/wickered_brown_carpet.png differ diff --git a/public/textures/chipped/wickered_brown_wool.png b/public/textures/chipped/wickered_brown_wool.png new file mode 100644 index 00000000..9672d7d0 Binary files /dev/null and b/public/textures/chipped/wickered_brown_wool.png differ diff --git a/public/textures/chipped/wickered_cherry_planks.png b/public/textures/chipped/wickered_cherry_planks.png new file mode 100644 index 00000000..c7af36c9 Binary files /dev/null and b/public/textures/chipped/wickered_cherry_planks.png differ diff --git a/public/textures/chipped/wickered_crimson_planks.png b/public/textures/chipped/wickered_crimson_planks.png new file mode 100644 index 00000000..0a0feb80 Binary files /dev/null and b/public/textures/chipped/wickered_crimson_planks.png differ diff --git a/public/textures/chipped/wickered_cyan_carpet.png b/public/textures/chipped/wickered_cyan_carpet.png new file mode 100644 index 00000000..66823051 Binary files /dev/null and b/public/textures/chipped/wickered_cyan_carpet.png differ diff --git a/public/textures/chipped/wickered_cyan_wool.png b/public/textures/chipped/wickered_cyan_wool.png new file mode 100644 index 00000000..9f5780e9 Binary files /dev/null and b/public/textures/chipped/wickered_cyan_wool.png differ diff --git a/public/textures/chipped/wickered_dark_oak_planks.png b/public/textures/chipped/wickered_dark_oak_planks.png new file mode 100644 index 00000000..3c7ed562 Binary files /dev/null and b/public/textures/chipped/wickered_dark_oak_planks.png differ diff --git a/public/textures/chipped/wickered_gray_carpet.png b/public/textures/chipped/wickered_gray_carpet.png new file mode 100644 index 00000000..b83b7e50 Binary files /dev/null and b/public/textures/chipped/wickered_gray_carpet.png differ diff --git a/public/textures/chipped/wickered_gray_wool.png b/public/textures/chipped/wickered_gray_wool.png new file mode 100644 index 00000000..7add369b Binary files /dev/null and b/public/textures/chipped/wickered_gray_wool.png differ diff --git a/public/textures/chipped/wickered_green_carpet.png b/public/textures/chipped/wickered_green_carpet.png new file mode 100644 index 00000000..b8af5272 Binary files /dev/null and b/public/textures/chipped/wickered_green_carpet.png differ diff --git a/public/textures/chipped/wickered_green_wool.png b/public/textures/chipped/wickered_green_wool.png new file mode 100644 index 00000000..d7b5fdd8 Binary files /dev/null and b/public/textures/chipped/wickered_green_wool.png differ diff --git a/public/textures/chipped/wickered_jungle_planks.png b/public/textures/chipped/wickered_jungle_planks.png new file mode 100644 index 00000000..1944b46f Binary files /dev/null and b/public/textures/chipped/wickered_jungle_planks.png differ diff --git a/public/textures/chipped/wickered_light_blue_carpet.png b/public/textures/chipped/wickered_light_blue_carpet.png new file mode 100644 index 00000000..bd7a52ec Binary files /dev/null and b/public/textures/chipped/wickered_light_blue_carpet.png differ diff --git a/public/textures/chipped/wickered_light_blue_wool.png b/public/textures/chipped/wickered_light_blue_wool.png new file mode 100644 index 00000000..c02d18a2 Binary files /dev/null and b/public/textures/chipped/wickered_light_blue_wool.png differ diff --git a/public/textures/chipped/wickered_light_gray_carpet.png b/public/textures/chipped/wickered_light_gray_carpet.png new file mode 100644 index 00000000..2782f190 Binary files /dev/null and b/public/textures/chipped/wickered_light_gray_carpet.png differ diff --git a/public/textures/chipped/wickered_light_gray_wool.png b/public/textures/chipped/wickered_light_gray_wool.png new file mode 100644 index 00000000..9534e1b7 Binary files /dev/null and b/public/textures/chipped/wickered_light_gray_wool.png differ diff --git a/public/textures/chipped/wickered_lime_carpet.png b/public/textures/chipped/wickered_lime_carpet.png new file mode 100644 index 00000000..7d8b1896 Binary files /dev/null and b/public/textures/chipped/wickered_lime_carpet.png differ diff --git a/public/textures/chipped/wickered_lime_wool.png b/public/textures/chipped/wickered_lime_wool.png new file mode 100644 index 00000000..d98a9d1e Binary files /dev/null and b/public/textures/chipped/wickered_lime_wool.png differ diff --git a/public/textures/chipped/wickered_magenta_carpet.png b/public/textures/chipped/wickered_magenta_carpet.png new file mode 100644 index 00000000..32ac8c1a Binary files /dev/null and b/public/textures/chipped/wickered_magenta_carpet.png differ diff --git a/public/textures/chipped/wickered_magenta_wool.png b/public/textures/chipped/wickered_magenta_wool.png new file mode 100644 index 00000000..76eff9a8 Binary files /dev/null and b/public/textures/chipped/wickered_magenta_wool.png differ diff --git a/public/textures/chipped/wickered_oak_planks.png b/public/textures/chipped/wickered_oak_planks.png new file mode 100644 index 00000000..96c8f6f1 Binary files /dev/null and b/public/textures/chipped/wickered_oak_planks.png differ diff --git a/public/textures/chipped/wickered_orange_carpet.png b/public/textures/chipped/wickered_orange_carpet.png new file mode 100644 index 00000000..c33ef384 Binary files /dev/null and b/public/textures/chipped/wickered_orange_carpet.png differ diff --git a/public/textures/chipped/wickered_orange_wool.png b/public/textures/chipped/wickered_orange_wool.png new file mode 100644 index 00000000..8d223f8f Binary files /dev/null and b/public/textures/chipped/wickered_orange_wool.png differ diff --git a/public/textures/chipped/wickered_pink_carpet.png b/public/textures/chipped/wickered_pink_carpet.png new file mode 100644 index 00000000..313c5132 Binary files /dev/null and b/public/textures/chipped/wickered_pink_carpet.png differ diff --git a/public/textures/chipped/wickered_pink_wool.png b/public/textures/chipped/wickered_pink_wool.png new file mode 100644 index 00000000..3ce8d394 Binary files /dev/null and b/public/textures/chipped/wickered_pink_wool.png differ diff --git a/public/textures/chipped/wickered_purple_carpet.png b/public/textures/chipped/wickered_purple_carpet.png new file mode 100644 index 00000000..240f759e Binary files /dev/null and b/public/textures/chipped/wickered_purple_carpet.png differ diff --git a/public/textures/chipped/wickered_purple_wool.png b/public/textures/chipped/wickered_purple_wool.png new file mode 100644 index 00000000..8d575579 Binary files /dev/null and b/public/textures/chipped/wickered_purple_wool.png differ diff --git a/public/textures/chipped/wickered_red_carpet.png b/public/textures/chipped/wickered_red_carpet.png new file mode 100644 index 00000000..8cda7650 Binary files /dev/null and b/public/textures/chipped/wickered_red_carpet.png differ diff --git a/public/textures/chipped/wickered_red_wool.png b/public/textures/chipped/wickered_red_wool.png new file mode 100644 index 00000000..25e59be6 Binary files /dev/null and b/public/textures/chipped/wickered_red_wool.png differ diff --git a/public/textures/chipped/wickered_spruce_planks.png b/public/textures/chipped/wickered_spruce_planks.png new file mode 100644 index 00000000..5f506631 Binary files /dev/null and b/public/textures/chipped/wickered_spruce_planks.png differ diff --git a/public/textures/chipped/wickered_warped_planks.png b/public/textures/chipped/wickered_warped_planks.png new file mode 100644 index 00000000..d92e877a Binary files /dev/null and b/public/textures/chipped/wickered_warped_planks.png differ diff --git a/public/textures/chipped/wickered_white_carpet.png b/public/textures/chipped/wickered_white_carpet.png new file mode 100644 index 00000000..b54c978b Binary files /dev/null and b/public/textures/chipped/wickered_white_carpet.png differ diff --git a/public/textures/chipped/wickered_white_wool.png b/public/textures/chipped/wickered_white_wool.png new file mode 100644 index 00000000..44f60ccf Binary files /dev/null and b/public/textures/chipped/wickered_white_wool.png differ diff --git a/public/textures/chipped/wickered_yellow_carpet.png b/public/textures/chipped/wickered_yellow_carpet.png new file mode 100644 index 00000000..9386c1fe Binary files /dev/null and b/public/textures/chipped/wickered_yellow_carpet.png differ diff --git a/public/textures/chipped/wickered_yellow_wool.png b/public/textures/chipped/wickered_yellow_wool.png new file mode 100644 index 00000000..c93628a6 Binary files /dev/null and b/public/textures/chipped/wickered_yellow_wool.png differ diff --git a/public/textures/chipped/wide_eyed_carved_pumpkin.png b/public/textures/chipped/wide_eyed_carved_pumpkin.png new file mode 100644 index 00000000..0650e289 Binary files /dev/null and b/public/textures/chipped/wide_eyed_carved_pumpkin.png differ diff --git a/public/textures/chipped/wide_eyed_jack_o_lantern.png b/public/textures/chipped/wide_eyed_jack_o_lantern.png new file mode 100644 index 00000000..8465b328 Binary files /dev/null and b/public/textures/chipped/wide_eyed_jack_o_lantern.png differ diff --git a/public/textures/chipped/wide_lantern.png b/public/textures/chipped/wide_lantern.png new file mode 100644 index 00000000..0efbfeac Binary files /dev/null and b/public/textures/chipped/wide_lantern.png differ diff --git a/public/textures/chipped/wide_nether_sprouts.png b/public/textures/chipped/wide_nether_sprouts.png new file mode 100644 index 00000000..f9393f60 Binary files /dev/null and b/public/textures/chipped/wide_nether_sprouts.png differ diff --git a/public/textures/chipped/wide_soul_lantern.png b/public/textures/chipped/wide_soul_lantern.png new file mode 100644 index 00000000..3eb1fe20 Binary files /dev/null and b/public/textures/chipped/wide_soul_lantern.png differ diff --git a/public/textures/chipped/wider_diamond_lodestone.png b/public/textures/chipped/wider_diamond_lodestone.png new file mode 100644 index 00000000..f0b31645 Binary files /dev/null and b/public/textures/chipped/wider_diamond_lodestone.png differ diff --git a/public/textures/chipped/wider_ring_lodestone.png b/public/textures/chipped/wider_ring_lodestone.png new file mode 100644 index 00000000..4b385807 Binary files /dev/null and b/public/textures/chipped/wider_ring_lodestone.png differ diff --git a/public/textures/chipped/wider_watching_lodestone.png b/public/textures/chipped/wider_watching_lodestone.png new file mode 100644 index 00000000..053d0bf4 Binary files /dev/null and b/public/textures/chipped/wider_watching_lodestone.png differ diff --git a/public/textures/chipped/wiggly_warped_roots.png b/public/textures/chipped/wiggly_warped_roots.png new file mode 100644 index 00000000..37cf569c Binary files /dev/null and b/public/textures/chipped/wiggly_warped_roots.png differ diff --git a/public/textures/chipped/wilted_crimson_roots_bud.png b/public/textures/chipped/wilted_crimson_roots_bud.png new file mode 100644 index 00000000..bca1e975 Binary files /dev/null and b/public/textures/chipped/wilted_crimson_roots_bud.png differ diff --git a/public/textures/chipped/wilted_crimson_roots_bulb.png b/public/textures/chipped/wilted_crimson_roots_bulb.png new file mode 100644 index 00000000..6a995adc Binary files /dev/null and b/public/textures/chipped/wilted_crimson_roots_bulb.png differ diff --git a/public/textures/chipped/windmill_black_carpet.png b/public/textures/chipped/windmill_black_carpet.png new file mode 100644 index 00000000..e33d663b Binary files /dev/null and b/public/textures/chipped/windmill_black_carpet.png differ diff --git a/public/textures/chipped/windmill_black_wool.png b/public/textures/chipped/windmill_black_wool.png new file mode 100644 index 00000000..a564db8e Binary files /dev/null and b/public/textures/chipped/windmill_black_wool.png differ diff --git a/public/textures/chipped/windmill_blue_carpet.png b/public/textures/chipped/windmill_blue_carpet.png new file mode 100644 index 00000000..e5688ed4 Binary files /dev/null and b/public/textures/chipped/windmill_blue_carpet.png differ diff --git a/public/textures/chipped/windmill_blue_wool.png b/public/textures/chipped/windmill_blue_wool.png new file mode 100644 index 00000000..af599b53 Binary files /dev/null and b/public/textures/chipped/windmill_blue_wool.png differ diff --git a/public/textures/chipped/windmill_brown_carpet.png b/public/textures/chipped/windmill_brown_carpet.png new file mode 100644 index 00000000..36639593 Binary files /dev/null and b/public/textures/chipped/windmill_brown_carpet.png differ diff --git a/public/textures/chipped/windmill_brown_wool.png b/public/textures/chipped/windmill_brown_wool.png new file mode 100644 index 00000000..971ecb67 Binary files /dev/null and b/public/textures/chipped/windmill_brown_wool.png differ diff --git a/public/textures/chipped/windmill_cyan_carpet.png b/public/textures/chipped/windmill_cyan_carpet.png new file mode 100644 index 00000000..478bf1a8 Binary files /dev/null and b/public/textures/chipped/windmill_cyan_carpet.png differ diff --git a/public/textures/chipped/windmill_cyan_wool.png b/public/textures/chipped/windmill_cyan_wool.png new file mode 100644 index 00000000..68d999c7 Binary files /dev/null and b/public/textures/chipped/windmill_cyan_wool.png differ diff --git a/public/textures/chipped/windmill_gray_carpet.png b/public/textures/chipped/windmill_gray_carpet.png new file mode 100644 index 00000000..a02d673c Binary files /dev/null and b/public/textures/chipped/windmill_gray_carpet.png differ diff --git a/public/textures/chipped/windmill_gray_wool.png b/public/textures/chipped/windmill_gray_wool.png new file mode 100644 index 00000000..1e979c5c Binary files /dev/null and b/public/textures/chipped/windmill_gray_wool.png differ diff --git a/public/textures/chipped/windmill_green_carpet.png b/public/textures/chipped/windmill_green_carpet.png new file mode 100644 index 00000000..a72b926a Binary files /dev/null and b/public/textures/chipped/windmill_green_carpet.png differ diff --git a/public/textures/chipped/windmill_green_wool.png b/public/textures/chipped/windmill_green_wool.png new file mode 100644 index 00000000..2121cd5d Binary files /dev/null and b/public/textures/chipped/windmill_green_wool.png differ diff --git a/public/textures/chipped/windmill_light_blue_carpet.png b/public/textures/chipped/windmill_light_blue_carpet.png new file mode 100644 index 00000000..d39b09a8 Binary files /dev/null and b/public/textures/chipped/windmill_light_blue_carpet.png differ diff --git a/public/textures/chipped/windmill_light_blue_wool.png b/public/textures/chipped/windmill_light_blue_wool.png new file mode 100644 index 00000000..fe50e059 Binary files /dev/null and b/public/textures/chipped/windmill_light_blue_wool.png differ diff --git a/public/textures/chipped/windmill_light_gray_carpet.png b/public/textures/chipped/windmill_light_gray_carpet.png new file mode 100644 index 00000000..d9d6f077 Binary files /dev/null and b/public/textures/chipped/windmill_light_gray_carpet.png differ diff --git a/public/textures/chipped/windmill_light_gray_wool.png b/public/textures/chipped/windmill_light_gray_wool.png new file mode 100644 index 00000000..2c3f29fc Binary files /dev/null and b/public/textures/chipped/windmill_light_gray_wool.png differ diff --git a/public/textures/chipped/windmill_lime_carpet.png b/public/textures/chipped/windmill_lime_carpet.png new file mode 100644 index 00000000..234e0729 Binary files /dev/null and b/public/textures/chipped/windmill_lime_carpet.png differ diff --git a/public/textures/chipped/windmill_lime_wool.png b/public/textures/chipped/windmill_lime_wool.png new file mode 100644 index 00000000..7aed23f8 Binary files /dev/null and b/public/textures/chipped/windmill_lime_wool.png differ diff --git a/public/textures/chipped/windmill_magenta_carpet.png b/public/textures/chipped/windmill_magenta_carpet.png new file mode 100644 index 00000000..40acb301 Binary files /dev/null and b/public/textures/chipped/windmill_magenta_carpet.png differ diff --git a/public/textures/chipped/windmill_magenta_wool.png b/public/textures/chipped/windmill_magenta_wool.png new file mode 100644 index 00000000..c19694ae Binary files /dev/null and b/public/textures/chipped/windmill_magenta_wool.png differ diff --git a/public/textures/chipped/windmill_orange_carpet.png b/public/textures/chipped/windmill_orange_carpet.png new file mode 100644 index 00000000..7791ccb0 Binary files /dev/null and b/public/textures/chipped/windmill_orange_carpet.png differ diff --git a/public/textures/chipped/windmill_orange_wool.png b/public/textures/chipped/windmill_orange_wool.png new file mode 100644 index 00000000..3d7e1937 Binary files /dev/null and b/public/textures/chipped/windmill_orange_wool.png differ diff --git a/public/textures/chipped/windmill_pink_carpet.png b/public/textures/chipped/windmill_pink_carpet.png new file mode 100644 index 00000000..629ee9b9 Binary files /dev/null and b/public/textures/chipped/windmill_pink_carpet.png differ diff --git a/public/textures/chipped/windmill_pink_wool.png b/public/textures/chipped/windmill_pink_wool.png new file mode 100644 index 00000000..95def60d Binary files /dev/null and b/public/textures/chipped/windmill_pink_wool.png differ diff --git a/public/textures/chipped/windmill_purple_carpet.png b/public/textures/chipped/windmill_purple_carpet.png new file mode 100644 index 00000000..27e21d8c Binary files /dev/null and b/public/textures/chipped/windmill_purple_carpet.png differ diff --git a/public/textures/chipped/windmill_purple_wool.png b/public/textures/chipped/windmill_purple_wool.png new file mode 100644 index 00000000..f3a55eb3 Binary files /dev/null and b/public/textures/chipped/windmill_purple_wool.png differ diff --git a/public/textures/chipped/windmill_red_carpet.png b/public/textures/chipped/windmill_red_carpet.png new file mode 100644 index 00000000..cc4b35d9 Binary files /dev/null and b/public/textures/chipped/windmill_red_carpet.png differ diff --git a/public/textures/chipped/windmill_red_wool.png b/public/textures/chipped/windmill_red_wool.png new file mode 100644 index 00000000..5d00e0af Binary files /dev/null and b/public/textures/chipped/windmill_red_wool.png differ diff --git a/public/textures/chipped/windmill_white_carpet.png b/public/textures/chipped/windmill_white_carpet.png new file mode 100644 index 00000000..4397285d Binary files /dev/null and b/public/textures/chipped/windmill_white_carpet.png differ diff --git a/public/textures/chipped/windmill_white_wool.png b/public/textures/chipped/windmill_white_wool.png new file mode 100644 index 00000000..0cad9585 Binary files /dev/null and b/public/textures/chipped/windmill_white_wool.png differ diff --git a/public/textures/chipped/windmill_yellow_carpet.png b/public/textures/chipped/windmill_yellow_carpet.png new file mode 100644 index 00000000..96a44b16 Binary files /dev/null and b/public/textures/chipped/windmill_yellow_carpet.png differ diff --git a/public/textures/chipped/windmill_yellow_wool.png b/public/textures/chipped/windmill_yellow_wool.png new file mode 100644 index 00000000..32869d27 Binary files /dev/null and b/public/textures/chipped/windmill_yellow_wool.png differ diff --git a/public/textures/chipped/windowed_acacia_door.png b/public/textures/chipped/windowed_acacia_door.png new file mode 100644 index 00000000..9fcc1066 Binary files /dev/null and b/public/textures/chipped/windowed_acacia_door.png differ diff --git a/public/textures/chipped/windowed_acacia_trapdoor.png b/public/textures/chipped/windowed_acacia_trapdoor.png new file mode 100644 index 00000000..c6a8a41a Binary files /dev/null and b/public/textures/chipped/windowed_acacia_trapdoor.png differ diff --git a/public/textures/chipped/windowed_bamboo_trapdoor.png b/public/textures/chipped/windowed_bamboo_trapdoor.png new file mode 100644 index 00000000..63c12f00 Binary files /dev/null and b/public/textures/chipped/windowed_bamboo_trapdoor.png differ diff --git a/public/textures/chipped/windowed_birch_door.png b/public/textures/chipped/windowed_birch_door.png new file mode 100644 index 00000000..5aa79bb4 Binary files /dev/null and b/public/textures/chipped/windowed_birch_door.png differ diff --git a/public/textures/chipped/windowed_birch_trapdoor.png b/public/textures/chipped/windowed_birch_trapdoor.png new file mode 100644 index 00000000..babfef90 Binary files /dev/null and b/public/textures/chipped/windowed_birch_trapdoor.png differ diff --git a/public/textures/chipped/windowed_cherry_trapdoor.png b/public/textures/chipped/windowed_cherry_trapdoor.png new file mode 100644 index 00000000..2d96a28f Binary files /dev/null and b/public/textures/chipped/windowed_cherry_trapdoor.png differ diff --git a/public/textures/chipped/windowed_crimson_door.png b/public/textures/chipped/windowed_crimson_door.png new file mode 100644 index 00000000..3a40dd56 Binary files /dev/null and b/public/textures/chipped/windowed_crimson_door.png differ diff --git a/public/textures/chipped/windowed_crimson_trapdoor.png b/public/textures/chipped/windowed_crimson_trapdoor.png new file mode 100644 index 00000000..4c68a133 Binary files /dev/null and b/public/textures/chipped/windowed_crimson_trapdoor.png differ diff --git a/public/textures/chipped/windowed_dark_oak_door.png b/public/textures/chipped/windowed_dark_oak_door.png new file mode 100644 index 00000000..9fdb9308 Binary files /dev/null and b/public/textures/chipped/windowed_dark_oak_door.png differ diff --git a/public/textures/chipped/windowed_dark_oak_trapdoor.png b/public/textures/chipped/windowed_dark_oak_trapdoor.png new file mode 100644 index 00000000..7b4a39a7 Binary files /dev/null and b/public/textures/chipped/windowed_dark_oak_trapdoor.png differ diff --git a/public/textures/chipped/windowed_jungle_door.png b/public/textures/chipped/windowed_jungle_door.png new file mode 100644 index 00000000..860507a3 Binary files /dev/null and b/public/textures/chipped/windowed_jungle_door.png differ diff --git a/public/textures/chipped/windowed_jungle_trapdoor.png b/public/textures/chipped/windowed_jungle_trapdoor.png new file mode 100644 index 00000000..16e3c92e Binary files /dev/null and b/public/textures/chipped/windowed_jungle_trapdoor.png differ diff --git a/public/textures/chipped/windowed_mangrove_door.png b/public/textures/chipped/windowed_mangrove_door.png new file mode 100644 index 00000000..0fa825a6 Binary files /dev/null and b/public/textures/chipped/windowed_mangrove_door.png differ diff --git a/public/textures/chipped/windowed_mangrove_trapdoor.png b/public/textures/chipped/windowed_mangrove_trapdoor.png new file mode 100644 index 00000000..9586cbfb Binary files /dev/null and b/public/textures/chipped/windowed_mangrove_trapdoor.png differ diff --git a/public/textures/chipped/windowed_oak_door.png b/public/textures/chipped/windowed_oak_door.png new file mode 100644 index 00000000..aaae44d9 Binary files /dev/null and b/public/textures/chipped/windowed_oak_door.png differ diff --git a/public/textures/chipped/windowed_oak_trapdoor.png b/public/textures/chipped/windowed_oak_trapdoor.png new file mode 100644 index 00000000..a26547bf Binary files /dev/null and b/public/textures/chipped/windowed_oak_trapdoor.png differ diff --git a/public/textures/chipped/windowed_spruce_door.png b/public/textures/chipped/windowed_spruce_door.png new file mode 100644 index 00000000..786b6d6f Binary files /dev/null and b/public/textures/chipped/windowed_spruce_door.png differ diff --git a/public/textures/chipped/windowed_spruce_trapdoor.png b/public/textures/chipped/windowed_spruce_trapdoor.png new file mode 100644 index 00000000..76673637 Binary files /dev/null and b/public/textures/chipped/windowed_spruce_trapdoor.png differ diff --git a/public/textures/chipped/windowed_warped_door.png b/public/textures/chipped/windowed_warped_door.png new file mode 100644 index 00000000..41f6de4c Binary files /dev/null and b/public/textures/chipped/windowed_warped_door.png differ diff --git a/public/textures/chipped/windowed_warped_trapdoor.png b/public/textures/chipped/windowed_warped_trapdoor.png new file mode 100644 index 00000000..b139c1f2 Binary files /dev/null and b/public/textures/chipped/windowed_warped_trapdoor.png differ diff --git a/public/textures/chipped/wired_black_concrete.png b/public/textures/chipped/wired_black_concrete.png new file mode 100644 index 00000000..1a5c77d2 Binary files /dev/null and b/public/textures/chipped/wired_black_concrete.png differ diff --git a/public/textures/chipped/wired_blue_concrete.png b/public/textures/chipped/wired_blue_concrete.png new file mode 100644 index 00000000..ad7cf0f4 Binary files /dev/null and b/public/textures/chipped/wired_blue_concrete.png differ diff --git a/public/textures/chipped/wired_brown_concrete.png b/public/textures/chipped/wired_brown_concrete.png new file mode 100644 index 00000000..c4c26219 Binary files /dev/null and b/public/textures/chipped/wired_brown_concrete.png differ diff --git a/public/textures/chipped/wired_cyan_concrete.png b/public/textures/chipped/wired_cyan_concrete.png new file mode 100644 index 00000000..44ace8b1 Binary files /dev/null and b/public/textures/chipped/wired_cyan_concrete.png differ diff --git a/public/textures/chipped/wired_gray_concrete.png b/public/textures/chipped/wired_gray_concrete.png new file mode 100644 index 00000000..66f4c1d1 Binary files /dev/null and b/public/textures/chipped/wired_gray_concrete.png differ diff --git a/public/textures/chipped/wired_green_concrete.png b/public/textures/chipped/wired_green_concrete.png new file mode 100644 index 00000000..c85828cd Binary files /dev/null and b/public/textures/chipped/wired_green_concrete.png differ diff --git a/public/textures/chipped/wired_light_blue_concrete.png b/public/textures/chipped/wired_light_blue_concrete.png new file mode 100644 index 00000000..5242cf5e Binary files /dev/null and b/public/textures/chipped/wired_light_blue_concrete.png differ diff --git a/public/textures/chipped/wired_light_gray_concrete.png b/public/textures/chipped/wired_light_gray_concrete.png new file mode 100644 index 00000000..92fdec5e Binary files /dev/null and b/public/textures/chipped/wired_light_gray_concrete.png differ diff --git a/public/textures/chipped/wired_lime_concrete.png b/public/textures/chipped/wired_lime_concrete.png new file mode 100644 index 00000000..80765fdc Binary files /dev/null and b/public/textures/chipped/wired_lime_concrete.png differ diff --git a/public/textures/chipped/wired_magenta_concrete.png b/public/textures/chipped/wired_magenta_concrete.png new file mode 100644 index 00000000..9c102149 Binary files /dev/null and b/public/textures/chipped/wired_magenta_concrete.png differ diff --git a/public/textures/chipped/wired_orange_concrete.png b/public/textures/chipped/wired_orange_concrete.png new file mode 100644 index 00000000..dd6662c7 Binary files /dev/null and b/public/textures/chipped/wired_orange_concrete.png differ diff --git a/public/textures/chipped/wired_pink_concrete.png b/public/textures/chipped/wired_pink_concrete.png new file mode 100644 index 00000000..9aaea197 Binary files /dev/null and b/public/textures/chipped/wired_pink_concrete.png differ diff --git a/public/textures/chipped/wired_purple_concrete.png b/public/textures/chipped/wired_purple_concrete.png new file mode 100644 index 00000000..4f0bafa0 Binary files /dev/null and b/public/textures/chipped/wired_purple_concrete.png differ diff --git a/public/textures/chipped/wired_red_concrete.png b/public/textures/chipped/wired_red_concrete.png new file mode 100644 index 00000000..6cb8e6f7 Binary files /dev/null and b/public/textures/chipped/wired_red_concrete.png differ diff --git a/public/textures/chipped/wired_white_concrete.png b/public/textures/chipped/wired_white_concrete.png new file mode 100644 index 00000000..bb33b5c7 Binary files /dev/null and b/public/textures/chipped/wired_white_concrete.png differ diff --git a/public/textures/chipped/wired_yellow_concrete.png b/public/textures/chipped/wired_yellow_concrete.png new file mode 100644 index 00000000..db20cbf1 Binary files /dev/null and b/public/textures/chipped/wired_yellow_concrete.png differ diff --git a/public/textures/chipped/wise_stripped_acacia_log.png b/public/textures/chipped/wise_stripped_acacia_log.png new file mode 100644 index 00000000..b5ad1166 Binary files /dev/null and b/public/textures/chipped/wise_stripped_acacia_log.png differ diff --git a/public/textures/chipped/wise_stripped_birch_log.png b/public/textures/chipped/wise_stripped_birch_log.png new file mode 100644 index 00000000..9e361d65 Binary files /dev/null and b/public/textures/chipped/wise_stripped_birch_log.png differ diff --git a/public/textures/chipped/wise_stripped_cherry_log.png b/public/textures/chipped/wise_stripped_cherry_log.png new file mode 100644 index 00000000..eda98aae Binary files /dev/null and b/public/textures/chipped/wise_stripped_cherry_log.png differ diff --git a/public/textures/chipped/wise_stripped_crimson_stem.png b/public/textures/chipped/wise_stripped_crimson_stem.png new file mode 100644 index 00000000..7d392576 Binary files /dev/null and b/public/textures/chipped/wise_stripped_crimson_stem.png differ diff --git a/public/textures/chipped/wise_stripped_dark_oak_log.png b/public/textures/chipped/wise_stripped_dark_oak_log.png new file mode 100644 index 00000000..33de30e4 Binary files /dev/null and b/public/textures/chipped/wise_stripped_dark_oak_log.png differ diff --git a/public/textures/chipped/wise_stripped_jungle_log.png b/public/textures/chipped/wise_stripped_jungle_log.png new file mode 100644 index 00000000..4908c138 Binary files /dev/null and b/public/textures/chipped/wise_stripped_jungle_log.png differ diff --git a/public/textures/chipped/wise_stripped_mangrove_log.png b/public/textures/chipped/wise_stripped_mangrove_log.png new file mode 100644 index 00000000..82bafc11 Binary files /dev/null and b/public/textures/chipped/wise_stripped_mangrove_log.png differ diff --git a/public/textures/chipped/wise_stripped_oak_log.png b/public/textures/chipped/wise_stripped_oak_log.png new file mode 100644 index 00000000..96d08316 Binary files /dev/null and b/public/textures/chipped/wise_stripped_oak_log.png differ diff --git a/public/textures/chipped/wise_stripped_spruce_log.png b/public/textures/chipped/wise_stripped_spruce_log.png new file mode 100644 index 00000000..92324737 Binary files /dev/null and b/public/textures/chipped/wise_stripped_spruce_log.png differ diff --git a/public/textures/chipped/wise_stripped_warped_stem.png b/public/textures/chipped/wise_stripped_warped_stem.png new file mode 100644 index 00000000..b51986ff Binary files /dev/null and b/public/textures/chipped/wise_stripped_warped_stem.png differ diff --git a/public/textures/chipped/wither_engraved_glowstone.png b/public/textures/chipped/wither_engraved_glowstone.png new file mode 100644 index 00000000..03bff457 Binary files /dev/null and b/public/textures/chipped/wither_engraved_glowstone.png differ diff --git a/public/textures/chipped/wooden_cage_lantern.png b/public/textures/chipped/wooden_cage_lantern.png new file mode 100644 index 00000000..1f37ed7f Binary files /dev/null and b/public/textures/chipped/wooden_cage_lantern.png differ diff --git a/public/textures/chipped/wooden_cage_soul_lantern.png b/public/textures/chipped/wooden_cage_soul_lantern.png new file mode 100644 index 00000000..28200c1d Binary files /dev/null and b/public/textures/chipped/wooden_cage_soul_lantern.png differ diff --git a/public/textures/chipped/woved_black_carpet.png b/public/textures/chipped/woved_black_carpet.png new file mode 100644 index 00000000..c639efaf Binary files /dev/null and b/public/textures/chipped/woved_black_carpet.png differ diff --git a/public/textures/chipped/woved_black_wool.png b/public/textures/chipped/woved_black_wool.png new file mode 100644 index 00000000..8981cd6f Binary files /dev/null and b/public/textures/chipped/woved_black_wool.png differ diff --git a/public/textures/chipped/woved_blue_carpet.png b/public/textures/chipped/woved_blue_carpet.png new file mode 100644 index 00000000..a5886efb Binary files /dev/null and b/public/textures/chipped/woved_blue_carpet.png differ diff --git a/public/textures/chipped/woved_blue_wool.png b/public/textures/chipped/woved_blue_wool.png new file mode 100644 index 00000000..5823f07b Binary files /dev/null and b/public/textures/chipped/woved_blue_wool.png differ diff --git a/public/textures/chipped/woved_brown_carpet.png b/public/textures/chipped/woved_brown_carpet.png new file mode 100644 index 00000000..e5f6b301 Binary files /dev/null and b/public/textures/chipped/woved_brown_carpet.png differ diff --git a/public/textures/chipped/woved_brown_wool.png b/public/textures/chipped/woved_brown_wool.png new file mode 100644 index 00000000..589093d7 Binary files /dev/null and b/public/textures/chipped/woved_brown_wool.png differ diff --git a/public/textures/chipped/woved_cyan_carpet.png b/public/textures/chipped/woved_cyan_carpet.png new file mode 100644 index 00000000..ddd91adc Binary files /dev/null and b/public/textures/chipped/woved_cyan_carpet.png differ diff --git a/public/textures/chipped/woved_cyan_wool.png b/public/textures/chipped/woved_cyan_wool.png new file mode 100644 index 00000000..3dbd084c Binary files /dev/null and b/public/textures/chipped/woved_cyan_wool.png differ diff --git a/public/textures/chipped/woved_gray_carpet.png b/public/textures/chipped/woved_gray_carpet.png new file mode 100644 index 00000000..b1ea2864 Binary files /dev/null and b/public/textures/chipped/woved_gray_carpet.png differ diff --git a/public/textures/chipped/woved_gray_wool.png b/public/textures/chipped/woved_gray_wool.png new file mode 100644 index 00000000..7376930a Binary files /dev/null and b/public/textures/chipped/woved_gray_wool.png differ diff --git a/public/textures/chipped/woved_green_carpet.png b/public/textures/chipped/woved_green_carpet.png new file mode 100644 index 00000000..ae91f2a3 Binary files /dev/null and b/public/textures/chipped/woved_green_carpet.png differ diff --git a/public/textures/chipped/woved_green_wool.png b/public/textures/chipped/woved_green_wool.png new file mode 100644 index 00000000..e598a540 Binary files /dev/null and b/public/textures/chipped/woved_green_wool.png differ diff --git a/public/textures/chipped/woved_light_blue_carpet.png b/public/textures/chipped/woved_light_blue_carpet.png new file mode 100644 index 00000000..5ebeb146 Binary files /dev/null and b/public/textures/chipped/woved_light_blue_carpet.png differ diff --git a/public/textures/chipped/woved_light_blue_wool.png b/public/textures/chipped/woved_light_blue_wool.png new file mode 100644 index 00000000..0704dd5e Binary files /dev/null and b/public/textures/chipped/woved_light_blue_wool.png differ diff --git a/public/textures/chipped/woved_light_gray_carpet.png b/public/textures/chipped/woved_light_gray_carpet.png new file mode 100644 index 00000000..2b2ce509 Binary files /dev/null and b/public/textures/chipped/woved_light_gray_carpet.png differ diff --git a/public/textures/chipped/woved_light_gray_wool.png b/public/textures/chipped/woved_light_gray_wool.png new file mode 100644 index 00000000..67b3ab74 Binary files /dev/null and b/public/textures/chipped/woved_light_gray_wool.png differ diff --git a/public/textures/chipped/woved_lime_carpet.png b/public/textures/chipped/woved_lime_carpet.png new file mode 100644 index 00000000..9ef43e09 Binary files /dev/null and b/public/textures/chipped/woved_lime_carpet.png differ diff --git a/public/textures/chipped/woved_lime_wool.png b/public/textures/chipped/woved_lime_wool.png new file mode 100644 index 00000000..ea8ad7dc Binary files /dev/null and b/public/textures/chipped/woved_lime_wool.png differ diff --git a/public/textures/chipped/woved_magenta_carpet.png b/public/textures/chipped/woved_magenta_carpet.png new file mode 100644 index 00000000..0df6af22 Binary files /dev/null and b/public/textures/chipped/woved_magenta_carpet.png differ diff --git a/public/textures/chipped/woved_magenta_wool.png b/public/textures/chipped/woved_magenta_wool.png new file mode 100644 index 00000000..25550828 Binary files /dev/null and b/public/textures/chipped/woved_magenta_wool.png differ diff --git a/public/textures/chipped/woved_orange_carpet.png b/public/textures/chipped/woved_orange_carpet.png new file mode 100644 index 00000000..93c77e15 Binary files /dev/null and b/public/textures/chipped/woved_orange_carpet.png differ diff --git a/public/textures/chipped/woved_orange_wool.png b/public/textures/chipped/woved_orange_wool.png new file mode 100644 index 00000000..ea3fd2f3 Binary files /dev/null and b/public/textures/chipped/woved_orange_wool.png differ diff --git a/public/textures/chipped/woved_pink_carpet.png b/public/textures/chipped/woved_pink_carpet.png new file mode 100644 index 00000000..a8a85518 Binary files /dev/null and b/public/textures/chipped/woved_pink_carpet.png differ diff --git a/public/textures/chipped/woved_pink_wool.png b/public/textures/chipped/woved_pink_wool.png new file mode 100644 index 00000000..e654695b Binary files /dev/null and b/public/textures/chipped/woved_pink_wool.png differ diff --git a/public/textures/chipped/woved_purple_carpet.png b/public/textures/chipped/woved_purple_carpet.png new file mode 100644 index 00000000..8bda8697 Binary files /dev/null and b/public/textures/chipped/woved_purple_carpet.png differ diff --git a/public/textures/chipped/woved_purple_wool.png b/public/textures/chipped/woved_purple_wool.png new file mode 100644 index 00000000..abcc928f Binary files /dev/null and b/public/textures/chipped/woved_purple_wool.png differ diff --git a/public/textures/chipped/woved_red_carpet.png b/public/textures/chipped/woved_red_carpet.png new file mode 100644 index 00000000..f4b51915 Binary files /dev/null and b/public/textures/chipped/woved_red_carpet.png differ diff --git a/public/textures/chipped/woved_red_wool.png b/public/textures/chipped/woved_red_wool.png new file mode 100644 index 00000000..996357bf Binary files /dev/null and b/public/textures/chipped/woved_red_wool.png differ diff --git a/public/textures/chipped/woved_white_carpet.png b/public/textures/chipped/woved_white_carpet.png new file mode 100644 index 00000000..6ad1aab2 Binary files /dev/null and b/public/textures/chipped/woved_white_carpet.png differ diff --git a/public/textures/chipped/woved_white_wool.png b/public/textures/chipped/woved_white_wool.png new file mode 100644 index 00000000..8d96dde5 Binary files /dev/null and b/public/textures/chipped/woved_white_wool.png differ diff --git a/public/textures/chipped/woved_yellow_carpet.png b/public/textures/chipped/woved_yellow_carpet.png new file mode 100644 index 00000000..980ee44e Binary files /dev/null and b/public/textures/chipped/woved_yellow_carpet.png differ diff --git a/public/textures/chipped/woved_yellow_wool.png b/public/textures/chipped/woved_yellow_wool.png new file mode 100644 index 00000000..1da974d2 Binary files /dev/null and b/public/textures/chipped/woved_yellow_wool.png differ diff --git a/public/textures/chipped/woven_acacia_trapdoor.png b/public/textures/chipped/woven_acacia_trapdoor.png new file mode 100644 index 00000000..da62f7ae Binary files /dev/null and b/public/textures/chipped/woven_acacia_trapdoor.png differ diff --git a/public/textures/chipped/woven_bamboo_trapdoor.png b/public/textures/chipped/woven_bamboo_trapdoor.png new file mode 100644 index 00000000..334188b3 Binary files /dev/null and b/public/textures/chipped/woven_bamboo_trapdoor.png differ diff --git a/public/textures/chipped/woven_birch_trapdoor.png b/public/textures/chipped/woven_birch_trapdoor.png new file mode 100644 index 00000000..80968c93 Binary files /dev/null and b/public/textures/chipped/woven_birch_trapdoor.png differ diff --git a/public/textures/chipped/woven_black_stained_glass.png b/public/textures/chipped/woven_black_stained_glass.png new file mode 100644 index 00000000..515a2c13 Binary files /dev/null and b/public/textures/chipped/woven_black_stained_glass.png differ diff --git a/public/textures/chipped/woven_black_stained_glass_pane.png b/public/textures/chipped/woven_black_stained_glass_pane.png new file mode 100644 index 00000000..4c9fa881 Binary files /dev/null and b/public/textures/chipped/woven_black_stained_glass_pane.png differ diff --git a/public/textures/chipped/woven_blue_stained_glass.png b/public/textures/chipped/woven_blue_stained_glass.png new file mode 100644 index 00000000..88e39fcc Binary files /dev/null and b/public/textures/chipped/woven_blue_stained_glass.png differ diff --git a/public/textures/chipped/woven_blue_stained_glass_pane.png b/public/textures/chipped/woven_blue_stained_glass_pane.png new file mode 100644 index 00000000..d0074f73 Binary files /dev/null and b/public/textures/chipped/woven_blue_stained_glass_pane.png differ diff --git a/public/textures/chipped/woven_brown_stained_glass.png b/public/textures/chipped/woven_brown_stained_glass.png new file mode 100644 index 00000000..61c5b118 Binary files /dev/null and b/public/textures/chipped/woven_brown_stained_glass.png differ diff --git a/public/textures/chipped/woven_brown_stained_glass_pane.png b/public/textures/chipped/woven_brown_stained_glass_pane.png new file mode 100644 index 00000000..924304f0 Binary files /dev/null and b/public/textures/chipped/woven_brown_stained_glass_pane.png differ diff --git a/public/textures/chipped/woven_cherry_trapdoor.png b/public/textures/chipped/woven_cherry_trapdoor.png new file mode 100644 index 00000000..730230aa Binary files /dev/null and b/public/textures/chipped/woven_cherry_trapdoor.png differ diff --git a/public/textures/chipped/woven_crimson_trapdoor.png b/public/textures/chipped/woven_crimson_trapdoor.png new file mode 100644 index 00000000..e90416a9 Binary files /dev/null and b/public/textures/chipped/woven_crimson_trapdoor.png differ diff --git a/public/textures/chipped/woven_cyan_stained_glass.png b/public/textures/chipped/woven_cyan_stained_glass.png new file mode 100644 index 00000000..26946ea6 Binary files /dev/null and b/public/textures/chipped/woven_cyan_stained_glass.png differ diff --git a/public/textures/chipped/woven_cyan_stained_glass_pane.png b/public/textures/chipped/woven_cyan_stained_glass_pane.png new file mode 100644 index 00000000..af51a7a9 Binary files /dev/null and b/public/textures/chipped/woven_cyan_stained_glass_pane.png differ diff --git a/public/textures/chipped/woven_dark_oak_trapdoor.png b/public/textures/chipped/woven_dark_oak_trapdoor.png new file mode 100644 index 00000000..26e673f0 Binary files /dev/null and b/public/textures/chipped/woven_dark_oak_trapdoor.png differ diff --git a/public/textures/chipped/woven_gray_stained_glass.png b/public/textures/chipped/woven_gray_stained_glass.png new file mode 100644 index 00000000..aff61f62 Binary files /dev/null and b/public/textures/chipped/woven_gray_stained_glass.png differ diff --git a/public/textures/chipped/woven_gray_stained_glass_pane.png b/public/textures/chipped/woven_gray_stained_glass_pane.png new file mode 100644 index 00000000..adaaab19 Binary files /dev/null and b/public/textures/chipped/woven_gray_stained_glass_pane.png differ diff --git a/public/textures/chipped/woven_green_stained_glass.png b/public/textures/chipped/woven_green_stained_glass.png new file mode 100644 index 00000000..453e806c Binary files /dev/null and b/public/textures/chipped/woven_green_stained_glass.png differ diff --git a/public/textures/chipped/woven_green_stained_glass_pane.png b/public/textures/chipped/woven_green_stained_glass_pane.png new file mode 100644 index 00000000..e2b4a4f8 Binary files /dev/null and b/public/textures/chipped/woven_green_stained_glass_pane.png differ diff --git a/public/textures/chipped/woven_iron_bars.png b/public/textures/chipped/woven_iron_bars.png new file mode 100644 index 00000000..2e390443 Binary files /dev/null and b/public/textures/chipped/woven_iron_bars.png differ diff --git a/public/textures/chipped/woven_jungle_trapdoor.png b/public/textures/chipped/woven_jungle_trapdoor.png new file mode 100644 index 00000000..0310b595 Binary files /dev/null and b/public/textures/chipped/woven_jungle_trapdoor.png differ diff --git a/public/textures/chipped/woven_light_blue_stained_glass.png b/public/textures/chipped/woven_light_blue_stained_glass.png new file mode 100644 index 00000000..378ff031 Binary files /dev/null and b/public/textures/chipped/woven_light_blue_stained_glass.png differ diff --git a/public/textures/chipped/woven_light_blue_stained_glass_pane.png b/public/textures/chipped/woven_light_blue_stained_glass_pane.png new file mode 100644 index 00000000..3b99ca06 Binary files /dev/null and b/public/textures/chipped/woven_light_blue_stained_glass_pane.png differ diff --git a/public/textures/chipped/woven_light_gray_stained_glass.png b/public/textures/chipped/woven_light_gray_stained_glass.png new file mode 100644 index 00000000..0150bb84 Binary files /dev/null and b/public/textures/chipped/woven_light_gray_stained_glass.png differ diff --git a/public/textures/chipped/woven_light_gray_stained_glass_pane.png b/public/textures/chipped/woven_light_gray_stained_glass_pane.png new file mode 100644 index 00000000..91bf13f4 Binary files /dev/null and b/public/textures/chipped/woven_light_gray_stained_glass_pane.png differ diff --git a/public/textures/chipped/woven_lime_stained_glass.png b/public/textures/chipped/woven_lime_stained_glass.png new file mode 100644 index 00000000..db4ff984 Binary files /dev/null and b/public/textures/chipped/woven_lime_stained_glass.png differ diff --git a/public/textures/chipped/woven_lime_stained_glass_pane.png b/public/textures/chipped/woven_lime_stained_glass_pane.png new file mode 100644 index 00000000..d1b271ba Binary files /dev/null and b/public/textures/chipped/woven_lime_stained_glass_pane.png differ diff --git a/public/textures/chipped/woven_magenta_stained_glass.png b/public/textures/chipped/woven_magenta_stained_glass.png new file mode 100644 index 00000000..26415bd7 Binary files /dev/null and b/public/textures/chipped/woven_magenta_stained_glass.png differ diff --git a/public/textures/chipped/woven_magenta_stained_glass_pane.png b/public/textures/chipped/woven_magenta_stained_glass_pane.png new file mode 100644 index 00000000..68e9afe6 Binary files /dev/null and b/public/textures/chipped/woven_magenta_stained_glass_pane.png differ diff --git a/public/textures/chipped/woven_mangrove_trapdoor.png b/public/textures/chipped/woven_mangrove_trapdoor.png new file mode 100644 index 00000000..9739b3c0 Binary files /dev/null and b/public/textures/chipped/woven_mangrove_trapdoor.png differ diff --git a/public/textures/chipped/woven_oak_trapdoor.png b/public/textures/chipped/woven_oak_trapdoor.png new file mode 100644 index 00000000..2b4cb56b Binary files /dev/null and b/public/textures/chipped/woven_oak_trapdoor.png differ diff --git a/public/textures/chipped/woven_orange_stained_glass.png b/public/textures/chipped/woven_orange_stained_glass.png new file mode 100644 index 00000000..e35513f5 Binary files /dev/null and b/public/textures/chipped/woven_orange_stained_glass.png differ diff --git a/public/textures/chipped/woven_orange_stained_glass_pane.png b/public/textures/chipped/woven_orange_stained_glass_pane.png new file mode 100644 index 00000000..c60e57ce Binary files /dev/null and b/public/textures/chipped/woven_orange_stained_glass_pane.png differ diff --git a/public/textures/chipped/woven_pink_stained_glass.png b/public/textures/chipped/woven_pink_stained_glass.png new file mode 100644 index 00000000..cf32d1c7 Binary files /dev/null and b/public/textures/chipped/woven_pink_stained_glass.png differ diff --git a/public/textures/chipped/woven_pink_stained_glass_pane.png b/public/textures/chipped/woven_pink_stained_glass_pane.png new file mode 100644 index 00000000..39cdcc5b Binary files /dev/null and b/public/textures/chipped/woven_pink_stained_glass_pane.png differ diff --git a/public/textures/chipped/woven_purple_stained_glass.png b/public/textures/chipped/woven_purple_stained_glass.png new file mode 100644 index 00000000..d7874556 Binary files /dev/null and b/public/textures/chipped/woven_purple_stained_glass.png differ diff --git a/public/textures/chipped/woven_purple_stained_glass_pane.png b/public/textures/chipped/woven_purple_stained_glass_pane.png new file mode 100644 index 00000000..b8ecc42a Binary files /dev/null and b/public/textures/chipped/woven_purple_stained_glass_pane.png differ diff --git a/public/textures/chipped/woven_red_stained_glass.png b/public/textures/chipped/woven_red_stained_glass.png new file mode 100644 index 00000000..cb0ed0fa Binary files /dev/null and b/public/textures/chipped/woven_red_stained_glass.png differ diff --git a/public/textures/chipped/woven_red_stained_glass_pane.png b/public/textures/chipped/woven_red_stained_glass_pane.png new file mode 100644 index 00000000..c13ac18d Binary files /dev/null and b/public/textures/chipped/woven_red_stained_glass_pane.png differ diff --git a/public/textures/chipped/woven_spruce_trapdoor.png b/public/textures/chipped/woven_spruce_trapdoor.png new file mode 100644 index 00000000..fb1fe212 Binary files /dev/null and b/public/textures/chipped/woven_spruce_trapdoor.png differ diff --git a/public/textures/chipped/woven_warped_trapdoor.png b/public/textures/chipped/woven_warped_trapdoor.png new file mode 100644 index 00000000..50f23518 Binary files /dev/null and b/public/textures/chipped/woven_warped_trapdoor.png differ diff --git a/public/textures/chipped/woven_white_stained_glass.png b/public/textures/chipped/woven_white_stained_glass.png new file mode 100644 index 00000000..9b5fa004 Binary files /dev/null and b/public/textures/chipped/woven_white_stained_glass.png differ diff --git a/public/textures/chipped/woven_white_stained_glass_pane.png b/public/textures/chipped/woven_white_stained_glass_pane.png new file mode 100644 index 00000000..f748d9ce Binary files /dev/null and b/public/textures/chipped/woven_white_stained_glass_pane.png differ diff --git a/public/textures/chipped/woven_yellow_stained_glass.png b/public/textures/chipped/woven_yellow_stained_glass.png new file mode 100644 index 00000000..f91f8dc3 Binary files /dev/null and b/public/textures/chipped/woven_yellow_stained_glass.png differ diff --git a/public/textures/chipped/woven_yellow_stained_glass_pane.png b/public/textures/chipped/woven_yellow_stained_glass_pane.png new file mode 100644 index 00000000..09d00a27 Binary files /dev/null and b/public/textures/chipped/woven_yellow_stained_glass_pane.png differ diff --git a/public/textures/chipped/wrought_iron_lantern.png b/public/textures/chipped/wrought_iron_lantern.png new file mode 100644 index 00000000..f8d26de5 Binary files /dev/null and b/public/textures/chipped/wrought_iron_lantern.png differ diff --git a/public/textures/chipped/yellow_concrete_bricks.png b/public/textures/chipped/yellow_concrete_bricks.png new file mode 100644 index 00000000..27c84925 Binary files /dev/null and b/public/textures/chipped/yellow_concrete_bricks.png differ diff --git a/public/textures/chipped/yellow_concrete_panel.png b/public/textures/chipped/yellow_concrete_panel.png new file mode 100644 index 00000000..6ced3482 Binary files /dev/null and b/public/textures/chipped/yellow_concrete_panel.png differ diff --git a/public/textures/chipped/yellow_concrete_pillar.png b/public/textures/chipped/yellow_concrete_pillar.png new file mode 100644 index 00000000..9d584398 Binary files /dev/null and b/public/textures/chipped/yellow_concrete_pillar.png differ diff --git a/public/textures/chipped/yellow_concrete_tiles.png b/public/textures/chipped/yellow_concrete_tiles.png new file mode 100644 index 00000000..c0a98e13 Binary files /dev/null and b/public/textures/chipped/yellow_concrete_tiles.png differ diff --git a/public/textures/chipped/yellow_glazed_terracotta_pillar_sides.png b/public/textures/chipped/yellow_glazed_terracotta_pillar_sides.png new file mode 100644 index 00000000..b676f922 Binary files /dev/null and b/public/textures/chipped/yellow_glazed_terracotta_pillar_sides.png differ diff --git a/public/textures/chipped/yellow_glazed_terracotta_pillar_top.png b/public/textures/chipped/yellow_glazed_terracotta_pillar_top.png new file mode 100644 index 00000000..88b44441 Binary files /dev/null and b/public/textures/chipped/yellow_glazed_terracotta_pillar_top.png differ diff --git a/public/textures/chipped/yellow_glazed_terracotta_smooth_tiles.png b/public/textures/chipped/yellow_glazed_terracotta_smooth_tiles.png new file mode 100644 index 00000000..dddf4dee Binary files /dev/null and b/public/textures/chipped/yellow_glazed_terracotta_smooth_tiles.png differ diff --git a/public/textures/chipped/yellow_glazed_terracotta_tiles.png b/public/textures/chipped/yellow_glazed_terracotta_tiles.png new file mode 100644 index 00000000..9b2a8ac2 Binary files /dev/null and b/public/textures/chipped/yellow_glazed_terracotta_tiles.png differ diff --git a/public/textures/chipped/yellow_moss_block.png b/public/textures/chipped/yellow_moss_block.png new file mode 100644 index 00000000..a712274e Binary files /dev/null and b/public/textures/chipped/yellow_moss_block.png differ diff --git a/public/textures/chipped/yellow_paper_soul_lantern.png b/public/textures/chipped/yellow_paper_soul_lantern.png new file mode 100644 index 00000000..71102ddb Binary files /dev/null and b/public/textures/chipped/yellow_paper_soul_lantern.png differ diff --git a/public/textures/chipped/yellow_redstone_torch.png b/public/textures/chipped/yellow_redstone_torch.png new file mode 100644 index 00000000..6aa87c64 Binary files /dev/null and b/public/textures/chipped/yellow_redstone_torch.png differ diff --git a/public/textures/chipped/yellow_terracotta_bricks.png b/public/textures/chipped/yellow_terracotta_bricks.png new file mode 100644 index 00000000..92c97adc Binary files /dev/null and b/public/textures/chipped/yellow_terracotta_bricks.png differ diff --git a/public/textures/chipped/yellow_terracotta_column.png b/public/textures/chipped/yellow_terracotta_column.png new file mode 100644 index 00000000..41e84518 Binary files /dev/null and b/public/textures/chipped/yellow_terracotta_column.png differ diff --git a/public/textures/chipped/yellow_terracotta_pillar.png b/public/textures/chipped/yellow_terracotta_pillar.png new file mode 100644 index 00000000..1a7e0d03 Binary files /dev/null and b/public/textures/chipped/yellow_terracotta_pillar.png differ diff --git a/public/textures/chipped/yellow_terracotta_tile.png b/public/textures/chipped/yellow_terracotta_tile.png new file mode 100644 index 00000000..0ad5239d Binary files /dev/null and b/public/textures/chipped/yellow_terracotta_tile.png differ diff --git a/public/textures/chipped/yellow_terracotta_tiles.png b/public/textures/chipped/yellow_terracotta_tiles.png new file mode 100644 index 00000000..e54bd46b Binary files /dev/null and b/public/textures/chipped/yellow_terracotta_tiles.png differ diff --git a/public/textures/chipped/yellow_tube_lantern.png b/public/textures/chipped/yellow_tube_lantern.png new file mode 100644 index 00000000..c87df6ea Binary files /dev/null and b/public/textures/chipped/yellow_tube_lantern.png differ diff --git a/public/textures/chipped/young_warped_roots.png b/public/textures/chipped/young_warped_roots.png new file mode 100644 index 00000000..5c6953b7 Binary files /dev/null and b/public/textures/chipped/young_warped_roots.png differ diff --git a/public/textures/chipped/zippered_iron_bars.png b/public/textures/chipped/zippered_iron_bars.png new file mode 100644 index 00000000..ada4477c Binary files /dev/null and b/public/textures/chipped/zippered_iron_bars.png differ diff --git a/public/textures/computercraft/cable.png b/public/textures/computercraft/cable.png new file mode 100644 index 00000000..a523329b Binary files /dev/null and b/public/textures/computercraft/cable.png differ diff --git a/public/textures/computercraft/computer_advanced.png b/public/textures/computercraft/computer_advanced.png new file mode 100644 index 00000000..fc062128 Binary files /dev/null and b/public/textures/computercraft/computer_advanced.png differ diff --git a/public/textures/computercraft/computer_normal.png b/public/textures/computercraft/computer_normal.png new file mode 100644 index 00000000..7432f96d Binary files /dev/null and b/public/textures/computercraft/computer_normal.png differ diff --git a/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__10066329,show_in_tooltip__0b}}.png b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__10066329,show_in_tooltip__0b}}.png new file mode 100644 index 00000000..8267c7a5 Binary files /dev/null and b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__10066329,show_in_tooltip__0b}}.png differ diff --git a/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__10072818,show_in_tooltip__0b}}.png b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__10072818,show_in_tooltip__0b}}.png new file mode 100644 index 00000000..4b679790 Binary files /dev/null and b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__10072818,show_in_tooltip__0b}}.png differ diff --git a/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__1118481,show_in_tooltip__0b}}.png b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__1118481,show_in_tooltip__0b}}.png new file mode 100644 index 00000000..e7c85e73 Binary files /dev/null and b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__1118481,show_in_tooltip__0b}}.png differ diff --git a/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__11691749,show_in_tooltip__0b}}.png b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__11691749,show_in_tooltip__0b}}.png new file mode 100644 index 00000000..82305740 Binary files /dev/null and b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__11691749,show_in_tooltip__0b}}.png differ diff --git a/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__13388876,show_in_tooltip__0b}}.png b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__13388876,show_in_tooltip__0b}}.png new file mode 100644 index 00000000..0834aab7 Binary files /dev/null and b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__13388876,show_in_tooltip__0b}}.png differ diff --git a/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__14605932,show_in_tooltip__0b}}.png b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__14605932,show_in_tooltip__0b}}.png new file mode 100644 index 00000000..f17bfb14 Binary files /dev/null and b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__14605932,show_in_tooltip__0b}}.png differ diff --git a/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__15040472,show_in_tooltip__0b}}.png b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__15040472,show_in_tooltip__0b}}.png new file mode 100644 index 00000000..1c2c5f84 Binary files /dev/null and b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__15040472,show_in_tooltip__0b}}.png differ diff --git a/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__15790320,show_in_tooltip__0b}}.png b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__15790320,show_in_tooltip__0b}}.png new file mode 100644 index 00000000..58b11e74 Binary files /dev/null and b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__15790320,show_in_tooltip__0b}}.png differ diff --git a/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__15905331,show_in_tooltip__0b}}.png b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__15905331,show_in_tooltip__0b}}.png new file mode 100644 index 00000000..5efe085c Binary files /dev/null and b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__15905331,show_in_tooltip__0b}}.png differ diff --git a/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__15905484,show_in_tooltip__0b}}.png b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__15905484,show_in_tooltip__0b}}.png new file mode 100644 index 00000000..5ee6fbe4 Binary files /dev/null and b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__15905484,show_in_tooltip__0b}}.png differ diff --git a/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__3368652,show_in_tooltip__0b}}.png b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__3368652,show_in_tooltip__0b}}.png new file mode 100644 index 00000000..f27f9fc6 Binary files /dev/null and b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__3368652,show_in_tooltip__0b}}.png differ diff --git a/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__5000268,show_in_tooltip__0b}}.png b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__5000268,show_in_tooltip__0b}}.png new file mode 100644 index 00000000..b43b4eff Binary files /dev/null and b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__5000268,show_in_tooltip__0b}}.png differ diff --git a/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__5020082,show_in_tooltip__0b}}.png b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__5020082,show_in_tooltip__0b}}.png new file mode 100644 index 00000000..b92b655f Binary files /dev/null and b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__5020082,show_in_tooltip__0b}}.png differ diff --git a/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__5744206,show_in_tooltip__0b}}.png b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__5744206,show_in_tooltip__0b}}.png new file mode 100644 index 00000000..eaa66919 Binary files /dev/null and b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__5744206,show_in_tooltip__0b}}.png differ diff --git a/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__8349260,show_in_tooltip__0b}}.png b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__8349260,show_in_tooltip__0b}}.png new file mode 100644 index 00000000..03f987d0 Binary files /dev/null and b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__8349260,show_in_tooltip__0b}}.png differ diff --git a/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__8375321,show_in_tooltip__0b}}.png b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__8375321,show_in_tooltip__0b}}.png new file mode 100644 index 00000000..c43ffbad Binary files /dev/null and b/public/textures/computercraft/disk__{'minecraft__dyed_color'__{rgb__8375321,show_in_tooltip__0b}}.png differ diff --git a/public/textures/computercraft/disk_drive.png b/public/textures/computercraft/disk_drive.png new file mode 100644 index 00000000..ac3f84ad Binary files /dev/null and b/public/textures/computercraft/disk_drive.png differ diff --git a/public/textures/computercraft/monitor_advanced.png b/public/textures/computercraft/monitor_advanced.png new file mode 100644 index 00000000..47a5b0d3 Binary files /dev/null and b/public/textures/computercraft/monitor_advanced.png differ diff --git a/public/textures/computercraft/monitor_normal.png b/public/textures/computercraft/monitor_normal.png new file mode 100644 index 00000000..c2168648 Binary files /dev/null and b/public/textures/computercraft/monitor_normal.png differ diff --git a/public/textures/computercraft/pocket_computer_advanced.png b/public/textures/computercraft/pocket_computer_advanced.png new file mode 100644 index 00000000..4a4c1870 Binary files /dev/null and b/public/textures/computercraft/pocket_computer_advanced.png differ diff --git a/public/textures/computercraft/pocket_computer_normal.png b/public/textures/computercraft/pocket_computer_normal.png new file mode 100644 index 00000000..20e7b691 Binary files /dev/null and b/public/textures/computercraft/pocket_computer_normal.png differ diff --git a/public/textures/computercraft/printed_book.png b/public/textures/computercraft/printed_book.png new file mode 100644 index 00000000..ebd0fe03 Binary files /dev/null and b/public/textures/computercraft/printed_book.png differ diff --git a/public/textures/computercraft/printed_page.png b/public/textures/computercraft/printed_page.png new file mode 100644 index 00000000..768cb00d Binary files /dev/null and b/public/textures/computercraft/printed_page.png differ diff --git a/public/textures/computercraft/printed_pages.png b/public/textures/computercraft/printed_pages.png new file mode 100644 index 00000000..be4f4eb9 Binary files /dev/null and b/public/textures/computercraft/printed_pages.png differ diff --git a/public/textures/computercraft/printer.png b/public/textures/computercraft/printer.png new file mode 100644 index 00000000..352b2f50 Binary files /dev/null and b/public/textures/computercraft/printer.png differ diff --git a/public/textures/computercraft/redstone_relay.png b/public/textures/computercraft/redstone_relay.png new file mode 100644 index 00000000..d8d5e4b6 Binary files /dev/null and b/public/textures/computercraft/redstone_relay.png differ diff --git a/public/textures/computercraft/speaker.png b/public/textures/computercraft/speaker.png new file mode 100644 index 00000000..276a7fb9 Binary files /dev/null and b/public/textures/computercraft/speaker.png differ diff --git a/public/textures/computercraft/turtle_advanced.png b/public/textures/computercraft/turtle_advanced.png new file mode 100644 index 00000000..65c60a22 Binary files /dev/null and b/public/textures/computercraft/turtle_advanced.png differ diff --git a/public/textures/computercraft/turtle_normal.png b/public/textures/computercraft/turtle_normal.png new file mode 100644 index 00000000..fd674497 Binary files /dev/null and b/public/textures/computercraft/turtle_normal.png differ diff --git a/public/textures/computercraft/wired_modem.png b/public/textures/computercraft/wired_modem.png new file mode 100644 index 00000000..dd454c4f Binary files /dev/null and b/public/textures/computercraft/wired_modem.png differ diff --git a/public/textures/computercraft/wired_modem_full.png b/public/textures/computercraft/wired_modem_full.png new file mode 100644 index 00000000..6e747561 Binary files /dev/null and b/public/textures/computercraft/wired_modem_full.png differ diff --git a/public/textures/computercraft/wireless_modem_advanced.png b/public/textures/computercraft/wireless_modem_advanced.png new file mode 100644 index 00000000..d9f8923f Binary files /dev/null and b/public/textures/computercraft/wireless_modem_advanced.png differ diff --git a/public/textures/computercraft/wireless_modem_normal.png b/public/textures/computercraft/wireless_modem_normal.png new file mode 100644 index 00000000..13c128a4 Binary files /dev/null and b/public/textures/computercraft/wireless_modem_normal.png differ diff --git a/public/textures/connectedglass/borderless_glass.png b/public/textures/connectedglass/borderless_glass.png new file mode 100644 index 00000000..17772e65 Binary files /dev/null and b/public/textures/connectedglass/borderless_glass.png differ diff --git a/public/textures/connectedglass/borderless_glass_black.png b/public/textures/connectedglass/borderless_glass_black.png new file mode 100644 index 00000000..4be7bac8 Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_black.png differ diff --git a/public/textures/connectedglass/borderless_glass_black_pane.png b/public/textures/connectedglass/borderless_glass_black_pane.png new file mode 100644 index 00000000..ff157a9d Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_black_pane.png differ diff --git a/public/textures/connectedglass/borderless_glass_blue.png b/public/textures/connectedglass/borderless_glass_blue.png new file mode 100644 index 00000000..d632bd15 Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_blue.png differ diff --git a/public/textures/connectedglass/borderless_glass_blue_pane.png b/public/textures/connectedglass/borderless_glass_blue_pane.png new file mode 100644 index 00000000..829dfd76 Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_blue_pane.png differ diff --git a/public/textures/connectedglass/borderless_glass_brown.png b/public/textures/connectedglass/borderless_glass_brown.png new file mode 100644 index 00000000..46ce86c2 Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_brown.png differ diff --git a/public/textures/connectedglass/borderless_glass_brown_pane.png b/public/textures/connectedglass/borderless_glass_brown_pane.png new file mode 100644 index 00000000..7e0b1ffe Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_brown_pane.png differ diff --git a/public/textures/connectedglass/borderless_glass_cyan.png b/public/textures/connectedglass/borderless_glass_cyan.png new file mode 100644 index 00000000..adac6b21 Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_cyan.png differ diff --git a/public/textures/connectedglass/borderless_glass_cyan_pane.png b/public/textures/connectedglass/borderless_glass_cyan_pane.png new file mode 100644 index 00000000..3208a8fc Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_cyan_pane.png differ diff --git a/public/textures/connectedglass/borderless_glass_gray.png b/public/textures/connectedglass/borderless_glass_gray.png new file mode 100644 index 00000000..d49dbec8 Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_gray.png differ diff --git a/public/textures/connectedglass/borderless_glass_gray_pane.png b/public/textures/connectedglass/borderless_glass_gray_pane.png new file mode 100644 index 00000000..24dc048a Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_gray_pane.png differ diff --git a/public/textures/connectedglass/borderless_glass_green.png b/public/textures/connectedglass/borderless_glass_green.png new file mode 100644 index 00000000..97eb5e41 Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_green.png differ diff --git a/public/textures/connectedglass/borderless_glass_green_pane.png b/public/textures/connectedglass/borderless_glass_green_pane.png new file mode 100644 index 00000000..c92c3074 Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_green_pane.png differ diff --git a/public/textures/connectedglass/borderless_glass_light_blue.png b/public/textures/connectedglass/borderless_glass_light_blue.png new file mode 100644 index 00000000..ecf69c87 Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_light_blue.png differ diff --git a/public/textures/connectedglass/borderless_glass_light_blue_pane.png b/public/textures/connectedglass/borderless_glass_light_blue_pane.png new file mode 100644 index 00000000..8d2f984b Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_light_blue_pane.png differ diff --git a/public/textures/connectedglass/borderless_glass_light_gray.png b/public/textures/connectedglass/borderless_glass_light_gray.png new file mode 100644 index 00000000..eab54596 Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_light_gray.png differ diff --git a/public/textures/connectedglass/borderless_glass_light_gray_pane.png b/public/textures/connectedglass/borderless_glass_light_gray_pane.png new file mode 100644 index 00000000..f2853c25 Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_light_gray_pane.png differ diff --git a/public/textures/connectedglass/borderless_glass_lime.png b/public/textures/connectedglass/borderless_glass_lime.png new file mode 100644 index 00000000..2b4163cc Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_lime.png differ diff --git a/public/textures/connectedglass/borderless_glass_lime_pane.png b/public/textures/connectedglass/borderless_glass_lime_pane.png new file mode 100644 index 00000000..8201bc1d Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_lime_pane.png differ diff --git a/public/textures/connectedglass/borderless_glass_magenta.png b/public/textures/connectedglass/borderless_glass_magenta.png new file mode 100644 index 00000000..5f8c5efa Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_magenta.png differ diff --git a/public/textures/connectedglass/borderless_glass_magenta_pane.png b/public/textures/connectedglass/borderless_glass_magenta_pane.png new file mode 100644 index 00000000..516ce107 Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_magenta_pane.png differ diff --git a/public/textures/connectedglass/borderless_glass_orange.png b/public/textures/connectedglass/borderless_glass_orange.png new file mode 100644 index 00000000..4b32b03c Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_orange.png differ diff --git a/public/textures/connectedglass/borderless_glass_orange_pane.png b/public/textures/connectedglass/borderless_glass_orange_pane.png new file mode 100644 index 00000000..19878eec Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_orange_pane.png differ diff --git a/public/textures/connectedglass/borderless_glass_pane.png b/public/textures/connectedglass/borderless_glass_pane.png new file mode 100644 index 00000000..7437c4aa Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_pane.png differ diff --git a/public/textures/connectedglass/borderless_glass_pink.png b/public/textures/connectedglass/borderless_glass_pink.png new file mode 100644 index 00000000..0bcdd04d Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_pink.png differ diff --git a/public/textures/connectedglass/borderless_glass_pink_pane.png b/public/textures/connectedglass/borderless_glass_pink_pane.png new file mode 100644 index 00000000..7cf3c546 Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_pink_pane.png differ diff --git a/public/textures/connectedglass/borderless_glass_purple.png b/public/textures/connectedglass/borderless_glass_purple.png new file mode 100644 index 00000000..f0fa0656 Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_purple.png differ diff --git a/public/textures/connectedglass/borderless_glass_purple_pane.png b/public/textures/connectedglass/borderless_glass_purple_pane.png new file mode 100644 index 00000000..7b2bfd8c Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_purple_pane.png differ diff --git a/public/textures/connectedglass/borderless_glass_red.png b/public/textures/connectedglass/borderless_glass_red.png new file mode 100644 index 00000000..23e7a4cd Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_red.png differ diff --git a/public/textures/connectedglass/borderless_glass_red_pane.png b/public/textures/connectedglass/borderless_glass_red_pane.png new file mode 100644 index 00000000..7c050b25 Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_red_pane.png differ diff --git a/public/textures/connectedglass/borderless_glass_white.png b/public/textures/connectedglass/borderless_glass_white.png new file mode 100644 index 00000000..52449d7f Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_white.png differ diff --git a/public/textures/connectedglass/borderless_glass_white_pane.png b/public/textures/connectedglass/borderless_glass_white_pane.png new file mode 100644 index 00000000..4bbaae6f Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_white_pane.png differ diff --git a/public/textures/connectedglass/borderless_glass_yellow.png b/public/textures/connectedglass/borderless_glass_yellow.png new file mode 100644 index 00000000..8d99ef8e Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_yellow.png differ diff --git a/public/textures/connectedglass/borderless_glass_yellow_pane.png b/public/textures/connectedglass/borderless_glass_yellow_pane.png new file mode 100644 index 00000000..d051ddc9 Binary files /dev/null and b/public/textures/connectedglass/borderless_glass_yellow_pane.png differ diff --git a/public/textures/connectedglass/clear_glass.png b/public/textures/connectedglass/clear_glass.png new file mode 100644 index 00000000..4569ebfe Binary files /dev/null and b/public/textures/connectedglass/clear_glass.png differ diff --git a/public/textures/connectedglass/clear_glass_black.png b/public/textures/connectedglass/clear_glass_black.png new file mode 100644 index 00000000..187be90f Binary files /dev/null and b/public/textures/connectedglass/clear_glass_black.png differ diff --git a/public/textures/connectedglass/clear_glass_black_pane.png b/public/textures/connectedglass/clear_glass_black_pane.png new file mode 100644 index 00000000..8a40b83e Binary files /dev/null and b/public/textures/connectedglass/clear_glass_black_pane.png differ diff --git a/public/textures/connectedglass/clear_glass_blue.png b/public/textures/connectedglass/clear_glass_blue.png new file mode 100644 index 00000000..d17a5863 Binary files /dev/null and b/public/textures/connectedglass/clear_glass_blue.png differ diff --git a/public/textures/connectedglass/clear_glass_blue_pane.png b/public/textures/connectedglass/clear_glass_blue_pane.png new file mode 100644 index 00000000..28d9ae30 Binary files /dev/null and b/public/textures/connectedglass/clear_glass_blue_pane.png differ diff --git a/public/textures/connectedglass/clear_glass_brown.png b/public/textures/connectedglass/clear_glass_brown.png new file mode 100644 index 00000000..bdad050a Binary files /dev/null and b/public/textures/connectedglass/clear_glass_brown.png differ diff --git a/public/textures/connectedglass/clear_glass_brown_pane.png b/public/textures/connectedglass/clear_glass_brown_pane.png new file mode 100644 index 00000000..a1864a9e Binary files /dev/null and b/public/textures/connectedglass/clear_glass_brown_pane.png differ diff --git a/public/textures/connectedglass/clear_glass_cyan.png b/public/textures/connectedglass/clear_glass_cyan.png new file mode 100644 index 00000000..ed3183c2 Binary files /dev/null and b/public/textures/connectedglass/clear_glass_cyan.png differ diff --git a/public/textures/connectedglass/clear_glass_cyan_pane.png b/public/textures/connectedglass/clear_glass_cyan_pane.png new file mode 100644 index 00000000..0db04bb6 Binary files /dev/null and b/public/textures/connectedglass/clear_glass_cyan_pane.png differ diff --git a/public/textures/connectedglass/clear_glass_gray.png b/public/textures/connectedglass/clear_glass_gray.png new file mode 100644 index 00000000..234a65aa Binary files /dev/null and b/public/textures/connectedglass/clear_glass_gray.png differ diff --git a/public/textures/connectedglass/clear_glass_gray_pane.png b/public/textures/connectedglass/clear_glass_gray_pane.png new file mode 100644 index 00000000..0c01254e Binary files /dev/null and b/public/textures/connectedglass/clear_glass_gray_pane.png differ diff --git a/public/textures/connectedglass/clear_glass_green.png b/public/textures/connectedglass/clear_glass_green.png new file mode 100644 index 00000000..b46fe345 Binary files /dev/null and b/public/textures/connectedglass/clear_glass_green.png differ diff --git a/public/textures/connectedglass/clear_glass_green_pane.png b/public/textures/connectedglass/clear_glass_green_pane.png new file mode 100644 index 00000000..6efa7927 Binary files /dev/null and b/public/textures/connectedglass/clear_glass_green_pane.png differ diff --git a/public/textures/connectedglass/clear_glass_light_blue.png b/public/textures/connectedglass/clear_glass_light_blue.png new file mode 100644 index 00000000..c56d16f8 Binary files /dev/null and b/public/textures/connectedglass/clear_glass_light_blue.png differ diff --git a/public/textures/connectedglass/clear_glass_light_blue_pane.png b/public/textures/connectedglass/clear_glass_light_blue_pane.png new file mode 100644 index 00000000..d19de301 Binary files /dev/null and b/public/textures/connectedglass/clear_glass_light_blue_pane.png differ diff --git a/public/textures/connectedglass/clear_glass_light_gray.png b/public/textures/connectedglass/clear_glass_light_gray.png new file mode 100644 index 00000000..bfa8bd23 Binary files /dev/null and b/public/textures/connectedglass/clear_glass_light_gray.png differ diff --git a/public/textures/connectedglass/clear_glass_light_gray_pane.png b/public/textures/connectedglass/clear_glass_light_gray_pane.png new file mode 100644 index 00000000..ce4f5a0d Binary files /dev/null and b/public/textures/connectedglass/clear_glass_light_gray_pane.png differ diff --git a/public/textures/connectedglass/clear_glass_lime.png b/public/textures/connectedglass/clear_glass_lime.png new file mode 100644 index 00000000..fdf8210a Binary files /dev/null and b/public/textures/connectedglass/clear_glass_lime.png differ diff --git a/public/textures/connectedglass/clear_glass_lime_pane.png b/public/textures/connectedglass/clear_glass_lime_pane.png new file mode 100644 index 00000000..ee2584b3 Binary files /dev/null and b/public/textures/connectedglass/clear_glass_lime_pane.png differ diff --git a/public/textures/connectedglass/clear_glass_magenta.png b/public/textures/connectedglass/clear_glass_magenta.png new file mode 100644 index 00000000..1a51140a Binary files /dev/null and b/public/textures/connectedglass/clear_glass_magenta.png differ diff --git a/public/textures/connectedglass/clear_glass_magenta_pane.png b/public/textures/connectedglass/clear_glass_magenta_pane.png new file mode 100644 index 00000000..625b32c7 Binary files /dev/null and b/public/textures/connectedglass/clear_glass_magenta_pane.png differ diff --git a/public/textures/connectedglass/clear_glass_orange.png b/public/textures/connectedglass/clear_glass_orange.png new file mode 100644 index 00000000..f7466947 Binary files /dev/null and b/public/textures/connectedglass/clear_glass_orange.png differ diff --git a/public/textures/connectedglass/clear_glass_orange_pane.png b/public/textures/connectedglass/clear_glass_orange_pane.png new file mode 100644 index 00000000..866873c3 Binary files /dev/null and b/public/textures/connectedglass/clear_glass_orange_pane.png differ diff --git a/public/textures/connectedglass/clear_glass_pane.png b/public/textures/connectedglass/clear_glass_pane.png new file mode 100644 index 00000000..9d46f10d Binary files /dev/null and b/public/textures/connectedglass/clear_glass_pane.png differ diff --git a/public/textures/connectedglass/clear_glass_pink.png b/public/textures/connectedglass/clear_glass_pink.png new file mode 100644 index 00000000..455c1e0a Binary files /dev/null and b/public/textures/connectedglass/clear_glass_pink.png differ diff --git a/public/textures/connectedglass/clear_glass_pink_pane.png b/public/textures/connectedglass/clear_glass_pink_pane.png new file mode 100644 index 00000000..170be7b7 Binary files /dev/null and b/public/textures/connectedglass/clear_glass_pink_pane.png differ diff --git a/public/textures/connectedglass/clear_glass_purple.png b/public/textures/connectedglass/clear_glass_purple.png new file mode 100644 index 00000000..cba3c227 Binary files /dev/null and b/public/textures/connectedglass/clear_glass_purple.png differ diff --git a/public/textures/connectedglass/clear_glass_purple_pane.png b/public/textures/connectedglass/clear_glass_purple_pane.png new file mode 100644 index 00000000..8260f265 Binary files /dev/null and b/public/textures/connectedglass/clear_glass_purple_pane.png differ diff --git a/public/textures/connectedglass/clear_glass_red.png b/public/textures/connectedglass/clear_glass_red.png new file mode 100644 index 00000000..4ae296c2 Binary files /dev/null and b/public/textures/connectedglass/clear_glass_red.png differ diff --git a/public/textures/connectedglass/clear_glass_red_pane.png b/public/textures/connectedglass/clear_glass_red_pane.png new file mode 100644 index 00000000..3e156276 Binary files /dev/null and b/public/textures/connectedglass/clear_glass_red_pane.png differ diff --git a/public/textures/connectedglass/clear_glass_white.png b/public/textures/connectedglass/clear_glass_white.png new file mode 100644 index 00000000..20215c48 Binary files /dev/null and b/public/textures/connectedglass/clear_glass_white.png differ diff --git a/public/textures/connectedglass/clear_glass_white_pane.png b/public/textures/connectedglass/clear_glass_white_pane.png new file mode 100644 index 00000000..eab0fc69 Binary files /dev/null and b/public/textures/connectedglass/clear_glass_white_pane.png differ diff --git a/public/textures/connectedglass/clear_glass_yellow.png b/public/textures/connectedglass/clear_glass_yellow.png new file mode 100644 index 00000000..74425bf5 Binary files /dev/null and b/public/textures/connectedglass/clear_glass_yellow.png differ diff --git a/public/textures/connectedglass/clear_glass_yellow_pane.png b/public/textures/connectedglass/clear_glass_yellow_pane.png new file mode 100644 index 00000000..5c406f33 Binary files /dev/null and b/public/textures/connectedglass/clear_glass_yellow_pane.png differ diff --git a/public/textures/connectedglass/scratched_glass.png b/public/textures/connectedglass/scratched_glass.png new file mode 100644 index 00000000..00c02f06 Binary files /dev/null and b/public/textures/connectedglass/scratched_glass.png differ diff --git a/public/textures/connectedglass/scratched_glass_black.png b/public/textures/connectedglass/scratched_glass_black.png new file mode 100644 index 00000000..b6fe1712 Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_black.png differ diff --git a/public/textures/connectedglass/scratched_glass_black_pane.png b/public/textures/connectedglass/scratched_glass_black_pane.png new file mode 100644 index 00000000..92125df5 Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_black_pane.png differ diff --git a/public/textures/connectedglass/scratched_glass_blue.png b/public/textures/connectedglass/scratched_glass_blue.png new file mode 100644 index 00000000..6a546082 Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_blue.png differ diff --git a/public/textures/connectedglass/scratched_glass_blue_pane.png b/public/textures/connectedglass/scratched_glass_blue_pane.png new file mode 100644 index 00000000..0827d1da Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_blue_pane.png differ diff --git a/public/textures/connectedglass/scratched_glass_brown.png b/public/textures/connectedglass/scratched_glass_brown.png new file mode 100644 index 00000000..301da2fa Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_brown.png differ diff --git a/public/textures/connectedglass/scratched_glass_brown_pane.png b/public/textures/connectedglass/scratched_glass_brown_pane.png new file mode 100644 index 00000000..0e310c5e Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_brown_pane.png differ diff --git a/public/textures/connectedglass/scratched_glass_cyan.png b/public/textures/connectedglass/scratched_glass_cyan.png new file mode 100644 index 00000000..a503b6b6 Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_cyan.png differ diff --git a/public/textures/connectedglass/scratched_glass_cyan_pane.png b/public/textures/connectedglass/scratched_glass_cyan_pane.png new file mode 100644 index 00000000..58dd2df5 Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_cyan_pane.png differ diff --git a/public/textures/connectedglass/scratched_glass_gray.png b/public/textures/connectedglass/scratched_glass_gray.png new file mode 100644 index 00000000..7f772997 Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_gray.png differ diff --git a/public/textures/connectedglass/scratched_glass_gray_pane.png b/public/textures/connectedglass/scratched_glass_gray_pane.png new file mode 100644 index 00000000..fb25ffc9 Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_gray_pane.png differ diff --git a/public/textures/connectedglass/scratched_glass_green.png b/public/textures/connectedglass/scratched_glass_green.png new file mode 100644 index 00000000..a5a5956b Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_green.png differ diff --git a/public/textures/connectedglass/scratched_glass_green_pane.png b/public/textures/connectedglass/scratched_glass_green_pane.png new file mode 100644 index 00000000..3d07dab0 Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_green_pane.png differ diff --git a/public/textures/connectedglass/scratched_glass_light_blue.png b/public/textures/connectedglass/scratched_glass_light_blue.png new file mode 100644 index 00000000..650592ac Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_light_blue.png differ diff --git a/public/textures/connectedglass/scratched_glass_light_blue_pane.png b/public/textures/connectedglass/scratched_glass_light_blue_pane.png new file mode 100644 index 00000000..0dc6cb0d Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_light_blue_pane.png differ diff --git a/public/textures/connectedglass/scratched_glass_light_gray.png b/public/textures/connectedglass/scratched_glass_light_gray.png new file mode 100644 index 00000000..b8ccbcf8 Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_light_gray.png differ diff --git a/public/textures/connectedglass/scratched_glass_light_gray_pane.png b/public/textures/connectedglass/scratched_glass_light_gray_pane.png new file mode 100644 index 00000000..29aebe42 Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_light_gray_pane.png differ diff --git a/public/textures/connectedglass/scratched_glass_lime.png b/public/textures/connectedglass/scratched_glass_lime.png new file mode 100644 index 00000000..e90a02a1 Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_lime.png differ diff --git a/public/textures/connectedglass/scratched_glass_lime_pane.png b/public/textures/connectedglass/scratched_glass_lime_pane.png new file mode 100644 index 00000000..825cfdfc Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_lime_pane.png differ diff --git a/public/textures/connectedglass/scratched_glass_magenta.png b/public/textures/connectedglass/scratched_glass_magenta.png new file mode 100644 index 00000000..94648889 Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_magenta.png differ diff --git a/public/textures/connectedglass/scratched_glass_magenta_pane.png b/public/textures/connectedglass/scratched_glass_magenta_pane.png new file mode 100644 index 00000000..771fbc0d Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_magenta_pane.png differ diff --git a/public/textures/connectedglass/scratched_glass_orange.png b/public/textures/connectedglass/scratched_glass_orange.png new file mode 100644 index 00000000..5d205673 Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_orange.png differ diff --git a/public/textures/connectedglass/scratched_glass_orange_pane.png b/public/textures/connectedglass/scratched_glass_orange_pane.png new file mode 100644 index 00000000..7dd190da Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_orange_pane.png differ diff --git a/public/textures/connectedglass/scratched_glass_pane.png b/public/textures/connectedglass/scratched_glass_pane.png new file mode 100644 index 00000000..eb166d79 Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_pane.png differ diff --git a/public/textures/connectedglass/scratched_glass_pink.png b/public/textures/connectedglass/scratched_glass_pink.png new file mode 100644 index 00000000..0d1b2914 Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_pink.png differ diff --git a/public/textures/connectedglass/scratched_glass_pink_pane.png b/public/textures/connectedglass/scratched_glass_pink_pane.png new file mode 100644 index 00000000..9c593dc0 Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_pink_pane.png differ diff --git a/public/textures/connectedglass/scratched_glass_purple.png b/public/textures/connectedglass/scratched_glass_purple.png new file mode 100644 index 00000000..07d93cd8 Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_purple.png differ diff --git a/public/textures/connectedglass/scratched_glass_purple_pane.png b/public/textures/connectedglass/scratched_glass_purple_pane.png new file mode 100644 index 00000000..aa826705 Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_purple_pane.png differ diff --git a/public/textures/connectedglass/scratched_glass_red.png b/public/textures/connectedglass/scratched_glass_red.png new file mode 100644 index 00000000..9f932146 Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_red.png differ diff --git a/public/textures/connectedglass/scratched_glass_red_pane.png b/public/textures/connectedglass/scratched_glass_red_pane.png new file mode 100644 index 00000000..f9ef68b7 Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_red_pane.png differ diff --git a/public/textures/connectedglass/scratched_glass_white.png b/public/textures/connectedglass/scratched_glass_white.png new file mode 100644 index 00000000..a23e4fdc Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_white.png differ diff --git a/public/textures/connectedglass/scratched_glass_white_pane.png b/public/textures/connectedglass/scratched_glass_white_pane.png new file mode 100644 index 00000000..2294a0a9 Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_white_pane.png differ diff --git a/public/textures/connectedglass/scratched_glass_yellow.png b/public/textures/connectedglass/scratched_glass_yellow.png new file mode 100644 index 00000000..b8072c84 Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_yellow.png differ diff --git a/public/textures/connectedglass/scratched_glass_yellow_pane.png b/public/textures/connectedglass/scratched_glass_yellow_pane.png new file mode 100644 index 00000000..2b0844f4 Binary files /dev/null and b/public/textures/connectedglass/scratched_glass_yellow_pane.png differ diff --git a/public/textures/connectedglass/tinted_borderless_glass.png b/public/textures/connectedglass/tinted_borderless_glass.png new file mode 100644 index 00000000..2742db93 Binary files /dev/null and b/public/textures/connectedglass/tinted_borderless_glass.png differ diff --git a/public/textures/connectedglass/tinted_borderless_glass_black.png b/public/textures/connectedglass/tinted_borderless_glass_black.png new file mode 100644 index 00000000..9f4eab5c Binary files /dev/null and b/public/textures/connectedglass/tinted_borderless_glass_black.png differ diff --git a/public/textures/connectedglass/tinted_borderless_glass_blue.png b/public/textures/connectedglass/tinted_borderless_glass_blue.png new file mode 100644 index 00000000..cfafca28 Binary files /dev/null and b/public/textures/connectedglass/tinted_borderless_glass_blue.png differ diff --git a/public/textures/connectedglass/tinted_borderless_glass_brown.png b/public/textures/connectedglass/tinted_borderless_glass_brown.png new file mode 100644 index 00000000..f5467668 Binary files /dev/null and b/public/textures/connectedglass/tinted_borderless_glass_brown.png differ diff --git a/public/textures/connectedglass/tinted_borderless_glass_cyan.png b/public/textures/connectedglass/tinted_borderless_glass_cyan.png new file mode 100644 index 00000000..0d8f9939 Binary files /dev/null and b/public/textures/connectedglass/tinted_borderless_glass_cyan.png differ diff --git a/public/textures/connectedglass/tinted_borderless_glass_gray.png b/public/textures/connectedglass/tinted_borderless_glass_gray.png new file mode 100644 index 00000000..776c572a Binary files /dev/null and b/public/textures/connectedglass/tinted_borderless_glass_gray.png differ diff --git a/public/textures/connectedglass/tinted_borderless_glass_green.png b/public/textures/connectedglass/tinted_borderless_glass_green.png new file mode 100644 index 00000000..1b2b5f27 Binary files /dev/null and b/public/textures/connectedglass/tinted_borderless_glass_green.png differ diff --git a/public/textures/connectedglass/tinted_borderless_glass_light_blue.png b/public/textures/connectedglass/tinted_borderless_glass_light_blue.png new file mode 100644 index 00000000..5c82f199 Binary files /dev/null and b/public/textures/connectedglass/tinted_borderless_glass_light_blue.png differ diff --git a/public/textures/connectedglass/tinted_borderless_glass_light_gray.png b/public/textures/connectedglass/tinted_borderless_glass_light_gray.png new file mode 100644 index 00000000..1141fa0c Binary files /dev/null and b/public/textures/connectedglass/tinted_borderless_glass_light_gray.png differ diff --git a/public/textures/connectedglass/tinted_borderless_glass_lime.png b/public/textures/connectedglass/tinted_borderless_glass_lime.png new file mode 100644 index 00000000..ff22e8fb Binary files /dev/null and b/public/textures/connectedglass/tinted_borderless_glass_lime.png differ diff --git a/public/textures/connectedglass/tinted_borderless_glass_magenta.png b/public/textures/connectedglass/tinted_borderless_glass_magenta.png new file mode 100644 index 00000000..fa799464 Binary files /dev/null and b/public/textures/connectedglass/tinted_borderless_glass_magenta.png differ diff --git a/public/textures/connectedglass/tinted_borderless_glass_orange.png b/public/textures/connectedglass/tinted_borderless_glass_orange.png new file mode 100644 index 00000000..c8d09f59 Binary files /dev/null and b/public/textures/connectedglass/tinted_borderless_glass_orange.png differ diff --git a/public/textures/connectedglass/tinted_borderless_glass_pink.png b/public/textures/connectedglass/tinted_borderless_glass_pink.png new file mode 100644 index 00000000..f87750a5 Binary files /dev/null and b/public/textures/connectedglass/tinted_borderless_glass_pink.png differ diff --git a/public/textures/connectedglass/tinted_borderless_glass_purple.png b/public/textures/connectedglass/tinted_borderless_glass_purple.png new file mode 100644 index 00000000..d7d97266 Binary files /dev/null and b/public/textures/connectedglass/tinted_borderless_glass_purple.png differ diff --git a/public/textures/connectedglass/tinted_borderless_glass_red.png b/public/textures/connectedglass/tinted_borderless_glass_red.png new file mode 100644 index 00000000..2b25ddec Binary files /dev/null and b/public/textures/connectedglass/tinted_borderless_glass_red.png differ diff --git a/public/textures/connectedglass/tinted_borderless_glass_white.png b/public/textures/connectedglass/tinted_borderless_glass_white.png new file mode 100644 index 00000000..f8049783 Binary files /dev/null and b/public/textures/connectedglass/tinted_borderless_glass_white.png differ diff --git a/public/textures/connectedglass/tinted_borderless_glass_yellow.png b/public/textures/connectedglass/tinted_borderless_glass_yellow.png new file mode 100644 index 00000000..28b3ca06 Binary files /dev/null and b/public/textures/connectedglass/tinted_borderless_glass_yellow.png differ diff --git a/public/textures/corn_delight/boiled_corn.png b/public/textures/corn_delight/boiled_corn.png new file mode 100644 index 00000000..e83ee5e8 Binary files /dev/null and b/public/textures/corn_delight/boiled_corn.png differ diff --git a/public/textures/corn_delight/caramel_popcorn.png b/public/textures/corn_delight/caramel_popcorn.png new file mode 100644 index 00000000..f6b26253 Binary files /dev/null and b/public/textures/corn_delight/caramel_popcorn.png differ diff --git a/public/textures/corn_delight/classic_corn_dog.png b/public/textures/corn_delight/classic_corn_dog.png new file mode 100644 index 00000000..16499e39 Binary files /dev/null and b/public/textures/corn_delight/classic_corn_dog.png differ diff --git a/public/textures/corn_delight/cob_pipe.png b/public/textures/corn_delight/cob_pipe.png new file mode 100644 index 00000000..a215dfee Binary files /dev/null and b/public/textures/corn_delight/cob_pipe.png differ diff --git a/public/textures/corn_delight/corn.png b/public/textures/corn_delight/corn.png new file mode 100644 index 00000000..2ba71b2d Binary files /dev/null and b/public/textures/corn_delight/corn.png differ diff --git a/public/textures/corn_delight/corn_crate.png b/public/textures/corn_delight/corn_crate.png new file mode 100644 index 00000000..6672e659 Binary files /dev/null and b/public/textures/corn_delight/corn_crate.png differ diff --git a/public/textures/corn_delight/corn_dog.png b/public/textures/corn_delight/corn_dog.png new file mode 100644 index 00000000..f93c74f9 Binary files /dev/null and b/public/textures/corn_delight/corn_dog.png differ diff --git a/public/textures/corn_delight/corn_kernel_bag.png b/public/textures/corn_delight/corn_kernel_bag.png new file mode 100644 index 00000000..4b561ad3 Binary files /dev/null and b/public/textures/corn_delight/corn_kernel_bag.png differ diff --git a/public/textures/corn_delight/corn_seeds.png b/public/textures/corn_delight/corn_seeds.png new file mode 100644 index 00000000..029221ef Binary files /dev/null and b/public/textures/corn_delight/corn_seeds.png differ diff --git a/public/textures/corn_delight/corn_soup.png b/public/textures/corn_delight/corn_soup.png new file mode 100644 index 00000000..c0c88a5f Binary files /dev/null and b/public/textures/corn_delight/corn_soup.png differ diff --git a/public/textures/corn_delight/cornbread.png b/public/textures/corn_delight/cornbread.png new file mode 100644 index 00000000..756b0b9e Binary files /dev/null and b/public/textures/corn_delight/cornbread.png differ diff --git a/public/textures/corn_delight/cornbread_batter.png b/public/textures/corn_delight/cornbread_batter.png new file mode 100644 index 00000000..57a38993 Binary files /dev/null and b/public/textures/corn_delight/cornbread_batter.png differ diff --git a/public/textures/corn_delight/cornbread_stuffing.png b/public/textures/corn_delight/cornbread_stuffing.png new file mode 100644 index 00000000..19899a5c Binary files /dev/null and b/public/textures/corn_delight/cornbread_stuffing.png differ diff --git a/public/textures/corn_delight/corncob.png b/public/textures/corn_delight/corncob.png new file mode 100644 index 00000000..6953f05d Binary files /dev/null and b/public/textures/corn_delight/corncob.png differ diff --git a/public/textures/corn_delight/creamed_corn.png b/public/textures/corn_delight/creamed_corn.png new file mode 100644 index 00000000..4f53ac90 Binary files /dev/null and b/public/textures/corn_delight/creamed_corn.png differ diff --git a/public/textures/corn_delight/creamy_corn_drink.png b/public/textures/corn_delight/creamy_corn_drink.png new file mode 100644 index 00000000..021ba335 Binary files /dev/null and b/public/textures/corn_delight/creamy_corn_drink.png differ diff --git a/public/textures/corn_delight/grilled_corn.png b/public/textures/corn_delight/grilled_corn.png new file mode 100644 index 00000000..87bfa410 Binary files /dev/null and b/public/textures/corn_delight/grilled_corn.png differ diff --git a/public/textures/corn_delight/nachos_block.png b/public/textures/corn_delight/nachos_block.png new file mode 100644 index 00000000..a0a81a09 Binary files /dev/null and b/public/textures/corn_delight/nachos_block.png differ diff --git a/public/textures/corn_delight/nachos_bowl.png b/public/textures/corn_delight/nachos_bowl.png new file mode 100644 index 00000000..f2dd123a Binary files /dev/null and b/public/textures/corn_delight/nachos_bowl.png differ diff --git a/public/textures/corn_delight/popcorn.png b/public/textures/corn_delight/popcorn.png new file mode 100644 index 00000000..0bbb5abf Binary files /dev/null and b/public/textures/corn_delight/popcorn.png differ diff --git a/public/textures/corn_delight/popcorn_box.png b/public/textures/corn_delight/popcorn_box.png new file mode 100644 index 00000000..77ed729d Binary files /dev/null and b/public/textures/corn_delight/popcorn_box.png differ diff --git a/public/textures/corn_delight/taco.png b/public/textures/corn_delight/taco.png new file mode 100644 index 00000000..321433d4 Binary files /dev/null and b/public/textures/corn_delight/taco.png differ diff --git a/public/textures/corn_delight/tortilla.png b/public/textures/corn_delight/tortilla.png new file mode 100644 index 00000000..436dbd3c Binary files /dev/null and b/public/textures/corn_delight/tortilla.png differ diff --git a/public/textures/corn_delight/tortilla_chip.png b/public/textures/corn_delight/tortilla_chip.png new file mode 100644 index 00000000..1fdaa745 Binary files /dev/null and b/public/textures/corn_delight/tortilla_chip.png differ diff --git a/public/textures/corn_delight/tortilla_raw.png b/public/textures/corn_delight/tortilla_raw.png new file mode 100644 index 00000000..33316c5a Binary files /dev/null and b/public/textures/corn_delight/tortilla_raw.png differ diff --git a/public/textures/corn_delight/wild_corn.png b/public/textures/corn_delight/wild_corn.png new file mode 100644 index 00000000..928666d0 Binary files /dev/null and b/public/textures/corn_delight/wild_corn.png differ diff --git a/public/textures/create/acacia_window.png b/public/textures/create/acacia_window.png new file mode 100644 index 00000000..bd87bea7 Binary files /dev/null and b/public/textures/create/acacia_window.png differ diff --git a/public/textures/create/acacia_window_pane.png b/public/textures/create/acacia_window_pane.png new file mode 100644 index 00000000..884587c4 Binary files /dev/null and b/public/textures/create/acacia_window_pane.png differ diff --git a/public/textures/create/adjustable_chain_gearshift.png b/public/textures/create/adjustable_chain_gearshift.png new file mode 100644 index 00000000..f34c7c9b Binary files /dev/null and b/public/textures/create/adjustable_chain_gearshift.png differ diff --git a/public/textures/create/analog_lever.png b/public/textures/create/analog_lever.png new file mode 100644 index 00000000..43e65e16 Binary files /dev/null and b/public/textures/create/analog_lever.png differ diff --git a/public/textures/create/andesite_alloy.png b/public/textures/create/andesite_alloy.png new file mode 100644 index 00000000..cfaa5ad7 Binary files /dev/null and b/public/textures/create/andesite_alloy.png differ diff --git a/public/textures/create/andesite_alloy_block.png b/public/textures/create/andesite_alloy_block.png new file mode 100644 index 00000000..aa8da4d9 Binary files /dev/null and b/public/textures/create/andesite_alloy_block.png differ diff --git a/public/textures/create/andesite_bars.png b/public/textures/create/andesite_bars.png new file mode 100644 index 00000000..4262a0d9 Binary files /dev/null and b/public/textures/create/andesite_bars.png differ diff --git a/public/textures/create/andesite_casing.png b/public/textures/create/andesite_casing.png new file mode 100644 index 00000000..ee692c08 Binary files /dev/null and b/public/textures/create/andesite_casing.png differ diff --git a/public/textures/create/andesite_door.png b/public/textures/create/andesite_door.png new file mode 100644 index 00000000..436f75ce Binary files /dev/null and b/public/textures/create/andesite_door.png differ diff --git a/public/textures/create/andesite_funnel.png b/public/textures/create/andesite_funnel.png new file mode 100644 index 00000000..c38db912 Binary files /dev/null and b/public/textures/create/andesite_funnel.png differ diff --git a/public/textures/create/andesite_ladder.png b/public/textures/create/andesite_ladder.png new file mode 100644 index 00000000..b6315e27 Binary files /dev/null and b/public/textures/create/andesite_ladder.png differ diff --git a/public/textures/create/andesite_pillar.png b/public/textures/create/andesite_pillar.png new file mode 100644 index 00000000..26bdea5a Binary files /dev/null and b/public/textures/create/andesite_pillar.png differ diff --git a/public/textures/create/andesite_scaffolding.png b/public/textures/create/andesite_scaffolding.png new file mode 100644 index 00000000..fcce976b Binary files /dev/null and b/public/textures/create/andesite_scaffolding.png differ diff --git a/public/textures/create/andesite_table_cloth.png b/public/textures/create/andesite_table_cloth.png new file mode 100644 index 00000000..677dae5a Binary files /dev/null and b/public/textures/create/andesite_table_cloth.png differ diff --git a/public/textures/create/andesite_tunnel.png b/public/textures/create/andesite_tunnel.png new file mode 100644 index 00000000..65331c68 Binary files /dev/null and b/public/textures/create/andesite_tunnel.png differ diff --git a/public/textures/create/asurine.png b/public/textures/create/asurine.png new file mode 100644 index 00000000..68e7a7f3 Binary files /dev/null and b/public/textures/create/asurine.png differ diff --git a/public/textures/create/asurine_pillar.png b/public/textures/create/asurine_pillar.png new file mode 100644 index 00000000..92a67fae Binary files /dev/null and b/public/textures/create/asurine_pillar.png differ diff --git a/public/textures/create/attribute_filter.png b/public/textures/create/attribute_filter.png new file mode 100644 index 00000000..f2fd0555 Binary files /dev/null and b/public/textures/create/attribute_filter.png differ diff --git a/public/textures/create/bamboo_window.png b/public/textures/create/bamboo_window.png new file mode 100644 index 00000000..db26d691 Binary files /dev/null and b/public/textures/create/bamboo_window.png differ diff --git a/public/textures/create/bamboo_window_pane.png b/public/textures/create/bamboo_window_pane.png new file mode 100644 index 00000000..2c2860f8 Binary files /dev/null and b/public/textures/create/bamboo_window_pane.png differ diff --git a/public/textures/create/bar_of_chocolate.png b/public/textures/create/bar_of_chocolate.png new file mode 100644 index 00000000..b3a5f7a1 Binary files /dev/null and b/public/textures/create/bar_of_chocolate.png differ diff --git a/public/textures/create/basin.png b/public/textures/create/basin.png new file mode 100644 index 00000000..436f5c4b Binary files /dev/null and b/public/textures/create/basin.png differ diff --git a/public/textures/create/belt_connector.png b/public/textures/create/belt_connector.png new file mode 100644 index 00000000..3191e53b Binary files /dev/null and b/public/textures/create/belt_connector.png differ diff --git a/public/textures/create/birch_window.png b/public/textures/create/birch_window.png new file mode 100644 index 00000000..99d324cc Binary files /dev/null and b/public/textures/create/birch_window.png differ diff --git a/public/textures/create/birch_window_pane.png b/public/textures/create/birch_window_pane.png new file mode 100644 index 00000000..9dd5a86a Binary files /dev/null and b/public/textures/create/birch_window_pane.png differ diff --git a/public/textures/create/blaze_burner.png b/public/textures/create/blaze_burner.png new file mode 100644 index 00000000..2496742f Binary files /dev/null and b/public/textures/create/blaze_burner.png differ diff --git a/public/textures/create/blaze_cake.png b/public/textures/create/blaze_cake.png new file mode 100644 index 00000000..01cc54a3 Binary files /dev/null and b/public/textures/create/blaze_cake.png differ diff --git a/public/textures/create/bound_cardboard_block.png b/public/textures/create/bound_cardboard_block.png new file mode 100644 index 00000000..340dff0f Binary files /dev/null and b/public/textures/create/bound_cardboard_block.png differ diff --git a/public/textures/create/brass_bars.png b/public/textures/create/brass_bars.png new file mode 100644 index 00000000..9814a3c6 Binary files /dev/null and b/public/textures/create/brass_bars.png differ diff --git a/public/textures/create/brass_block.png b/public/textures/create/brass_block.png new file mode 100644 index 00000000..dc6bda36 Binary files /dev/null and b/public/textures/create/brass_block.png differ diff --git a/public/textures/create/brass_casing.png b/public/textures/create/brass_casing.png new file mode 100644 index 00000000..5fd83680 Binary files /dev/null and b/public/textures/create/brass_casing.png differ diff --git a/public/textures/create/brass_door.png b/public/textures/create/brass_door.png new file mode 100644 index 00000000..0206c68b Binary files /dev/null and b/public/textures/create/brass_door.png differ diff --git a/public/textures/create/brass_funnel.png b/public/textures/create/brass_funnel.png new file mode 100644 index 00000000..940aae6f Binary files /dev/null and b/public/textures/create/brass_funnel.png differ diff --git a/public/textures/create/brass_hand.png b/public/textures/create/brass_hand.png new file mode 100644 index 00000000..aac48e73 Binary files /dev/null and b/public/textures/create/brass_hand.png differ diff --git a/public/textures/create/brass_ingot.png b/public/textures/create/brass_ingot.png new file mode 100644 index 00000000..8217acde Binary files /dev/null and b/public/textures/create/brass_ingot.png differ diff --git a/public/textures/create/brass_ladder.png b/public/textures/create/brass_ladder.png new file mode 100644 index 00000000..98b36e65 Binary files /dev/null and b/public/textures/create/brass_ladder.png differ diff --git a/public/textures/create/brass_nugget.png b/public/textures/create/brass_nugget.png new file mode 100644 index 00000000..d71e1951 Binary files /dev/null and b/public/textures/create/brass_nugget.png differ diff --git a/public/textures/create/brass_scaffolding.png b/public/textures/create/brass_scaffolding.png new file mode 100644 index 00000000..df4c8ea3 Binary files /dev/null and b/public/textures/create/brass_scaffolding.png differ diff --git a/public/textures/create/brass_sheet.png b/public/textures/create/brass_sheet.png new file mode 100644 index 00000000..0c86489a Binary files /dev/null and b/public/textures/create/brass_sheet.png differ diff --git a/public/textures/create/brass_table_cloth.png b/public/textures/create/brass_table_cloth.png new file mode 100644 index 00000000..3555099c Binary files /dev/null and b/public/textures/create/brass_table_cloth.png differ diff --git a/public/textures/create/brass_tunnel.png b/public/textures/create/brass_tunnel.png new file mode 100644 index 00000000..4f9a9b14 Binary files /dev/null and b/public/textures/create/brass_tunnel.png differ diff --git a/public/textures/create/brown_toolbox.png b/public/textures/create/brown_toolbox.png new file mode 100644 index 00000000..aba5f9f7 Binary files /dev/null and b/public/textures/create/brown_toolbox.png differ diff --git a/public/textures/create/builders_tea.png b/public/textures/create/builders_tea.png new file mode 100644 index 00000000..3ce86d66 Binary files /dev/null and b/public/textures/create/builders_tea.png differ diff --git a/public/textures/create/calcite_pillar.png b/public/textures/create/calcite_pillar.png new file mode 100644 index 00000000..04d96098 Binary files /dev/null and b/public/textures/create/calcite_pillar.png differ diff --git a/public/textures/create/cardboard.png b/public/textures/create/cardboard.png new file mode 100644 index 00000000..850502b4 Binary files /dev/null and b/public/textures/create/cardboard.png differ diff --git a/public/textures/create/cardboard_block.png b/public/textures/create/cardboard_block.png new file mode 100644 index 00000000..92f9c9bd Binary files /dev/null and b/public/textures/create/cardboard_block.png differ diff --git a/public/textures/create/cardboard_boots.png b/public/textures/create/cardboard_boots.png new file mode 100644 index 00000000..7598e2e8 Binary files /dev/null and b/public/textures/create/cardboard_boots.png differ diff --git a/public/textures/create/cardboard_chestplate.png b/public/textures/create/cardboard_chestplate.png new file mode 100644 index 00000000..912b3169 Binary files /dev/null and b/public/textures/create/cardboard_chestplate.png differ diff --git a/public/textures/create/cardboard_helmet.png b/public/textures/create/cardboard_helmet.png new file mode 100644 index 00000000..44cb4ec8 Binary files /dev/null and b/public/textures/create/cardboard_helmet.png differ diff --git a/public/textures/create/cardboard_leggings.png b/public/textures/create/cardboard_leggings.png new file mode 100644 index 00000000..6d9a108b Binary files /dev/null and b/public/textures/create/cardboard_leggings.png differ diff --git a/public/textures/create/cardboard_package_10x12.png b/public/textures/create/cardboard_package_10x12.png new file mode 100644 index 00000000..cd539f15 Binary files /dev/null and b/public/textures/create/cardboard_package_10x12.png differ diff --git a/public/textures/create/cardboard_package_10x8.png b/public/textures/create/cardboard_package_10x8.png new file mode 100644 index 00000000..d228ee48 Binary files /dev/null and b/public/textures/create/cardboard_package_10x8.png differ diff --git a/public/textures/create/cardboard_package_12x10.png b/public/textures/create/cardboard_package_12x10.png new file mode 100644 index 00000000..6d46a391 Binary files /dev/null and b/public/textures/create/cardboard_package_12x10.png differ diff --git a/public/textures/create/cardboard_package_12x12.png b/public/textures/create/cardboard_package_12x12.png new file mode 100644 index 00000000..37ac4151 Binary files /dev/null and b/public/textures/create/cardboard_package_12x12.png differ diff --git a/public/textures/create/cardboard_sword.png b/public/textures/create/cardboard_sword.png new file mode 100644 index 00000000..50b1555f Binary files /dev/null and b/public/textures/create/cardboard_sword.png differ diff --git a/public/textures/create/cart_assembler.png b/public/textures/create/cart_assembler.png new file mode 100644 index 00000000..97a9ba5e Binary files /dev/null and b/public/textures/create/cart_assembler.png differ diff --git a/public/textures/create/chain_conveyor.png b/public/textures/create/chain_conveyor.png new file mode 100644 index 00000000..36ef6a03 Binary files /dev/null and b/public/textures/create/chain_conveyor.png differ diff --git a/public/textures/create/cherry_window.png b/public/textures/create/cherry_window.png new file mode 100644 index 00000000..2f8a2d17 Binary files /dev/null and b/public/textures/create/cherry_window.png differ diff --git a/public/textures/create/cherry_window_pane.png b/public/textures/create/cherry_window_pane.png new file mode 100644 index 00000000..419ea6e9 Binary files /dev/null and b/public/textures/create/cherry_window_pane.png differ diff --git a/public/textures/create/chocolate_bucket.png b/public/textures/create/chocolate_bucket.png new file mode 100644 index 00000000..8da6ce66 Binary files /dev/null and b/public/textures/create/chocolate_bucket.png differ diff --git a/public/textures/create/chocolate_glazed_berries.png b/public/textures/create/chocolate_glazed_berries.png new file mode 100644 index 00000000..e0d5f5bd Binary files /dev/null and b/public/textures/create/chocolate_glazed_berries.png differ diff --git a/public/textures/create/chute.png b/public/textures/create/chute.png new file mode 100644 index 00000000..577bea0d Binary files /dev/null and b/public/textures/create/chute.png differ diff --git a/public/textures/create/cinder_flour.png b/public/textures/create/cinder_flour.png new file mode 100644 index 00000000..6e395336 Binary files /dev/null and b/public/textures/create/cinder_flour.png differ diff --git a/public/textures/create/clipboard.png b/public/textures/create/clipboard.png new file mode 100644 index 00000000..3311fc87 Binary files /dev/null and b/public/textures/create/clipboard.png differ diff --git a/public/textures/create/clockwork_bearing.png b/public/textures/create/clockwork_bearing.png new file mode 100644 index 00000000..7dec5c78 Binary files /dev/null and b/public/textures/create/clockwork_bearing.png differ diff --git a/public/textures/create/clutch.png b/public/textures/create/clutch.png new file mode 100644 index 00000000..9ae62f3f Binary files /dev/null and b/public/textures/create/clutch.png differ diff --git a/public/textures/create/cogwheel.png b/public/textures/create/cogwheel.png new file mode 100644 index 00000000..a8fdab6b Binary files /dev/null and b/public/textures/create/cogwheel.png differ diff --git a/public/textures/create/content_observer.png b/public/textures/create/content_observer.png new file mode 100644 index 00000000..ca35721d Binary files /dev/null and b/public/textures/create/content_observer.png differ diff --git a/public/textures/create/contraption_controls.png b/public/textures/create/contraption_controls.png new file mode 100644 index 00000000..4ed7cea6 Binary files /dev/null and b/public/textures/create/contraption_controls.png differ diff --git a/public/textures/create/controller_rail.png b/public/textures/create/controller_rail.png new file mode 100644 index 00000000..5f986a8b Binary files /dev/null and b/public/textures/create/controller_rail.png differ diff --git a/public/textures/create/controls.png b/public/textures/create/controls.png new file mode 100644 index 00000000..1d9fa9b8 Binary files /dev/null and b/public/textures/create/controls.png differ diff --git a/public/textures/create/copper_backtank__{'create__banktank_air'__900}.png b/public/textures/create/copper_backtank__{'create__banktank_air'__900}.png new file mode 100644 index 00000000..2057d4c7 Binary files /dev/null and b/public/textures/create/copper_backtank__{'create__banktank_air'__900}.png differ diff --git a/public/textures/create/copper_bars.png b/public/textures/create/copper_bars.png new file mode 100644 index 00000000..6d831a9b Binary files /dev/null and b/public/textures/create/copper_bars.png differ diff --git a/public/textures/create/copper_casing.png b/public/textures/create/copper_casing.png new file mode 100644 index 00000000..b127899e Binary files /dev/null and b/public/textures/create/copper_casing.png differ diff --git a/public/textures/create/copper_diving_boots.png b/public/textures/create/copper_diving_boots.png new file mode 100644 index 00000000..f0d31678 Binary files /dev/null and b/public/textures/create/copper_diving_boots.png differ diff --git a/public/textures/create/copper_diving_helmet.png b/public/textures/create/copper_diving_helmet.png new file mode 100644 index 00000000..2f9ab300 Binary files /dev/null and b/public/textures/create/copper_diving_helmet.png differ diff --git a/public/textures/create/copper_door.png b/public/textures/create/copper_door.png new file mode 100644 index 00000000..32a8d888 Binary files /dev/null and b/public/textures/create/copper_door.png differ diff --git a/public/textures/create/copper_ladder.png b/public/textures/create/copper_ladder.png new file mode 100644 index 00000000..a1e9512f Binary files /dev/null and b/public/textures/create/copper_ladder.png differ diff --git a/public/textures/create/copper_nugget.png b/public/textures/create/copper_nugget.png new file mode 100644 index 00000000..cd9c4ec9 Binary files /dev/null and b/public/textures/create/copper_nugget.png differ diff --git a/public/textures/create/copper_scaffolding.png b/public/textures/create/copper_scaffolding.png new file mode 100644 index 00000000..633dcbd8 Binary files /dev/null and b/public/textures/create/copper_scaffolding.png differ diff --git a/public/textures/create/copper_sheet.png b/public/textures/create/copper_sheet.png new file mode 100644 index 00000000..ca1ed54b Binary files /dev/null and b/public/textures/create/copper_sheet.png differ diff --git a/public/textures/create/copper_shingle_slab.png b/public/textures/create/copper_shingle_slab.png new file mode 100644 index 00000000..3f5a853c Binary files /dev/null and b/public/textures/create/copper_shingle_slab.png differ diff --git a/public/textures/create/copper_shingle_stairs.png b/public/textures/create/copper_shingle_stairs.png new file mode 100644 index 00000000..7ac53255 Binary files /dev/null and b/public/textures/create/copper_shingle_stairs.png differ diff --git a/public/textures/create/copper_shingles.png b/public/textures/create/copper_shingles.png new file mode 100644 index 00000000..6da0ce63 Binary files /dev/null and b/public/textures/create/copper_shingles.png differ diff --git a/public/textures/create/copper_table_cloth.png b/public/textures/create/copper_table_cloth.png new file mode 100644 index 00000000..7f17868b Binary files /dev/null and b/public/textures/create/copper_table_cloth.png differ diff --git a/public/textures/create/copper_tile_slab.png b/public/textures/create/copper_tile_slab.png new file mode 100644 index 00000000..5d3090f9 Binary files /dev/null and b/public/textures/create/copper_tile_slab.png differ diff --git a/public/textures/create/copper_tile_stairs.png b/public/textures/create/copper_tile_stairs.png new file mode 100644 index 00000000..1493bb57 Binary files /dev/null and b/public/textures/create/copper_tile_stairs.png differ diff --git a/public/textures/create/copper_tiles.png b/public/textures/create/copper_tiles.png new file mode 100644 index 00000000..8f102fad Binary files /dev/null and b/public/textures/create/copper_tiles.png differ diff --git a/public/textures/create/copper_valve_handle.png b/public/textures/create/copper_valve_handle.png new file mode 100644 index 00000000..a2edb010 Binary files /dev/null and b/public/textures/create/copper_valve_handle.png differ diff --git a/public/textures/create/copycat_panel.png b/public/textures/create/copycat_panel.png new file mode 100644 index 00000000..8f1ad64c Binary files /dev/null and b/public/textures/create/copycat_panel.png differ diff --git a/public/textures/create/copycat_step.png b/public/textures/create/copycat_step.png new file mode 100644 index 00000000..8e09655a Binary files /dev/null and b/public/textures/create/copycat_step.png differ diff --git a/public/textures/create/crafter_slot_cover.png b/public/textures/create/crafter_slot_cover.png new file mode 100644 index 00000000..30cba91f Binary files /dev/null and b/public/textures/create/crafter_slot_cover.png differ diff --git a/public/textures/create/crafting_blueprint.png b/public/textures/create/crafting_blueprint.png new file mode 100644 index 00000000..11a6e703 Binary files /dev/null and b/public/textures/create/crafting_blueprint.png differ diff --git a/public/textures/create/creative_blaze_cake.png b/public/textures/create/creative_blaze_cake.png new file mode 100644 index 00000000..1f23afed Binary files /dev/null and b/public/textures/create/creative_blaze_cake.png differ diff --git a/public/textures/create/creative_crate.png b/public/textures/create/creative_crate.png new file mode 100644 index 00000000..e92fbd6c Binary files /dev/null and b/public/textures/create/creative_crate.png differ diff --git a/public/textures/create/creative_fluid_tank.png b/public/textures/create/creative_fluid_tank.png new file mode 100644 index 00000000..07c70074 Binary files /dev/null and b/public/textures/create/creative_fluid_tank.png differ diff --git a/public/textures/create/creative_motor.png b/public/textures/create/creative_motor.png new file mode 100644 index 00000000..02e8f61b Binary files /dev/null and b/public/textures/create/creative_motor.png differ diff --git a/public/textures/create/crimsite.png b/public/textures/create/crimsite.png new file mode 100644 index 00000000..e3d1e206 Binary files /dev/null and b/public/textures/create/crimsite.png differ diff --git a/public/textures/create/crimsite_pillar.png b/public/textures/create/crimsite_pillar.png new file mode 100644 index 00000000..0702a914 Binary files /dev/null and b/public/textures/create/crimsite_pillar.png differ diff --git a/public/textures/create/crimson_window.png b/public/textures/create/crimson_window.png new file mode 100644 index 00000000..2e8f3163 Binary files /dev/null and b/public/textures/create/crimson_window.png differ diff --git a/public/textures/create/crimson_window_pane.png b/public/textures/create/crimson_window_pane.png new file mode 100644 index 00000000..cb034c0a Binary files /dev/null and b/public/textures/create/crimson_window_pane.png differ diff --git a/public/textures/create/crushed_raw_aluminum.png b/public/textures/create/crushed_raw_aluminum.png new file mode 100644 index 00000000..c1bed03b Binary files /dev/null and b/public/textures/create/crushed_raw_aluminum.png differ diff --git a/public/textures/create/crushed_raw_copper.png b/public/textures/create/crushed_raw_copper.png new file mode 100644 index 00000000..b2241a17 Binary files /dev/null and b/public/textures/create/crushed_raw_copper.png differ diff --git a/public/textures/create/crushed_raw_gold.png b/public/textures/create/crushed_raw_gold.png new file mode 100644 index 00000000..a5fabd3c Binary files /dev/null and b/public/textures/create/crushed_raw_gold.png differ diff --git a/public/textures/create/crushed_raw_iron.png b/public/textures/create/crushed_raw_iron.png new file mode 100644 index 00000000..23b296a0 Binary files /dev/null and b/public/textures/create/crushed_raw_iron.png differ diff --git a/public/textures/create/crushed_raw_lead.png b/public/textures/create/crushed_raw_lead.png new file mode 100644 index 00000000..c627a0f9 Binary files /dev/null and b/public/textures/create/crushed_raw_lead.png differ diff --git a/public/textures/create/crushed_raw_nickel.png b/public/textures/create/crushed_raw_nickel.png new file mode 100644 index 00000000..a13f0567 Binary files /dev/null and b/public/textures/create/crushed_raw_nickel.png differ diff --git a/public/textures/create/crushed_raw_osmium.png b/public/textures/create/crushed_raw_osmium.png new file mode 100644 index 00000000..2485dc01 Binary files /dev/null and b/public/textures/create/crushed_raw_osmium.png differ diff --git a/public/textures/create/crushed_raw_silver.png b/public/textures/create/crushed_raw_silver.png new file mode 100644 index 00000000..6cfbbb66 Binary files /dev/null and b/public/textures/create/crushed_raw_silver.png differ diff --git a/public/textures/create/crushed_raw_tin.png b/public/textures/create/crushed_raw_tin.png new file mode 100644 index 00000000..a14ac004 Binary files /dev/null and b/public/textures/create/crushed_raw_tin.png differ diff --git a/public/textures/create/crushed_raw_uranium.png b/public/textures/create/crushed_raw_uranium.png new file mode 100644 index 00000000..38d3d72f Binary files /dev/null and b/public/textures/create/crushed_raw_uranium.png differ diff --git a/public/textures/create/crushed_raw_zinc.png b/public/textures/create/crushed_raw_zinc.png new file mode 100644 index 00000000..0c1725ae Binary files /dev/null and b/public/textures/create/crushed_raw_zinc.png differ diff --git a/public/textures/create/crushing_wheel.png b/public/textures/create/crushing_wheel.png new file mode 100644 index 00000000..9dea10fe Binary files /dev/null and b/public/textures/create/crushing_wheel.png differ diff --git a/public/textures/create/cuckoo_clock.png b/public/textures/create/cuckoo_clock.png new file mode 100644 index 00000000..53694028 Binary files /dev/null and b/public/textures/create/cuckoo_clock.png differ diff --git a/public/textures/create/cut_andesite.png b/public/textures/create/cut_andesite.png new file mode 100644 index 00000000..01fb868b Binary files /dev/null and b/public/textures/create/cut_andesite.png differ diff --git a/public/textures/create/cut_andesite_brick_slab.png b/public/textures/create/cut_andesite_brick_slab.png new file mode 100644 index 00000000..6c7bdfd5 Binary files /dev/null and b/public/textures/create/cut_andesite_brick_slab.png differ diff --git a/public/textures/create/cut_andesite_brick_stairs.png b/public/textures/create/cut_andesite_brick_stairs.png new file mode 100644 index 00000000..7aa21810 Binary files /dev/null and b/public/textures/create/cut_andesite_brick_stairs.png differ diff --git a/public/textures/create/cut_andesite_brick_wall.png b/public/textures/create/cut_andesite_brick_wall.png new file mode 100644 index 00000000..f7f3f81e Binary files /dev/null and b/public/textures/create/cut_andesite_brick_wall.png differ diff --git a/public/textures/create/cut_andesite_bricks.png b/public/textures/create/cut_andesite_bricks.png new file mode 100644 index 00000000..e0995482 Binary files /dev/null and b/public/textures/create/cut_andesite_bricks.png differ diff --git a/public/textures/create/cut_andesite_slab.png b/public/textures/create/cut_andesite_slab.png new file mode 100644 index 00000000..954c3a9a Binary files /dev/null and b/public/textures/create/cut_andesite_slab.png differ diff --git a/public/textures/create/cut_andesite_stairs.png b/public/textures/create/cut_andesite_stairs.png new file mode 100644 index 00000000..5a720d86 Binary files /dev/null and b/public/textures/create/cut_andesite_stairs.png differ diff --git a/public/textures/create/cut_andesite_wall.png b/public/textures/create/cut_andesite_wall.png new file mode 100644 index 00000000..d32cf4e7 Binary files /dev/null and b/public/textures/create/cut_andesite_wall.png differ diff --git a/public/textures/create/cut_asurine.png b/public/textures/create/cut_asurine.png new file mode 100644 index 00000000..f21a1d45 Binary files /dev/null and b/public/textures/create/cut_asurine.png differ diff --git a/public/textures/create/cut_asurine_brick_slab.png b/public/textures/create/cut_asurine_brick_slab.png new file mode 100644 index 00000000..3b940b3b Binary files /dev/null and b/public/textures/create/cut_asurine_brick_slab.png differ diff --git a/public/textures/create/cut_asurine_brick_stairs.png b/public/textures/create/cut_asurine_brick_stairs.png new file mode 100644 index 00000000..35d534a8 Binary files /dev/null and b/public/textures/create/cut_asurine_brick_stairs.png differ diff --git a/public/textures/create/cut_asurine_brick_wall.png b/public/textures/create/cut_asurine_brick_wall.png new file mode 100644 index 00000000..2f754cea Binary files /dev/null and b/public/textures/create/cut_asurine_brick_wall.png differ diff --git a/public/textures/create/cut_asurine_bricks.png b/public/textures/create/cut_asurine_bricks.png new file mode 100644 index 00000000..333cb4db Binary files /dev/null and b/public/textures/create/cut_asurine_bricks.png differ diff --git a/public/textures/create/cut_asurine_slab.png b/public/textures/create/cut_asurine_slab.png new file mode 100644 index 00000000..9a039b30 Binary files /dev/null and b/public/textures/create/cut_asurine_slab.png differ diff --git a/public/textures/create/cut_asurine_stairs.png b/public/textures/create/cut_asurine_stairs.png new file mode 100644 index 00000000..08e24128 Binary files /dev/null and b/public/textures/create/cut_asurine_stairs.png differ diff --git a/public/textures/create/cut_asurine_wall.png b/public/textures/create/cut_asurine_wall.png new file mode 100644 index 00000000..aa0a04e9 Binary files /dev/null and b/public/textures/create/cut_asurine_wall.png differ diff --git a/public/textures/create/cut_calcite.png b/public/textures/create/cut_calcite.png new file mode 100644 index 00000000..22ca61bd Binary files /dev/null and b/public/textures/create/cut_calcite.png differ diff --git a/public/textures/create/cut_calcite_brick_slab.png b/public/textures/create/cut_calcite_brick_slab.png new file mode 100644 index 00000000..9bf41b3d Binary files /dev/null and b/public/textures/create/cut_calcite_brick_slab.png differ diff --git a/public/textures/create/cut_calcite_brick_stairs.png b/public/textures/create/cut_calcite_brick_stairs.png new file mode 100644 index 00000000..785cd3ba Binary files /dev/null and b/public/textures/create/cut_calcite_brick_stairs.png differ diff --git a/public/textures/create/cut_calcite_brick_wall.png b/public/textures/create/cut_calcite_brick_wall.png new file mode 100644 index 00000000..5e31cc9a Binary files /dev/null and b/public/textures/create/cut_calcite_brick_wall.png differ diff --git a/public/textures/create/cut_calcite_bricks.png b/public/textures/create/cut_calcite_bricks.png new file mode 100644 index 00000000..a2006e81 Binary files /dev/null and b/public/textures/create/cut_calcite_bricks.png differ diff --git a/public/textures/create/cut_calcite_slab.png b/public/textures/create/cut_calcite_slab.png new file mode 100644 index 00000000..d104892e Binary files /dev/null and b/public/textures/create/cut_calcite_slab.png differ diff --git a/public/textures/create/cut_calcite_stairs.png b/public/textures/create/cut_calcite_stairs.png new file mode 100644 index 00000000..3a4de61e Binary files /dev/null and b/public/textures/create/cut_calcite_stairs.png differ diff --git a/public/textures/create/cut_calcite_wall.png b/public/textures/create/cut_calcite_wall.png new file mode 100644 index 00000000..a63a099b Binary files /dev/null and b/public/textures/create/cut_calcite_wall.png differ diff --git a/public/textures/create/cut_crimsite.png b/public/textures/create/cut_crimsite.png new file mode 100644 index 00000000..0d4c4dd8 Binary files /dev/null and b/public/textures/create/cut_crimsite.png differ diff --git a/public/textures/create/cut_crimsite_brick_slab.png b/public/textures/create/cut_crimsite_brick_slab.png new file mode 100644 index 00000000..ea9335a1 Binary files /dev/null and b/public/textures/create/cut_crimsite_brick_slab.png differ diff --git a/public/textures/create/cut_crimsite_brick_stairs.png b/public/textures/create/cut_crimsite_brick_stairs.png new file mode 100644 index 00000000..c55f992e Binary files /dev/null and b/public/textures/create/cut_crimsite_brick_stairs.png differ diff --git a/public/textures/create/cut_crimsite_brick_wall.png b/public/textures/create/cut_crimsite_brick_wall.png new file mode 100644 index 00000000..e87503d3 Binary files /dev/null and b/public/textures/create/cut_crimsite_brick_wall.png differ diff --git a/public/textures/create/cut_crimsite_bricks.png b/public/textures/create/cut_crimsite_bricks.png new file mode 100644 index 00000000..d68f0621 Binary files /dev/null and b/public/textures/create/cut_crimsite_bricks.png differ diff --git a/public/textures/create/cut_crimsite_slab.png b/public/textures/create/cut_crimsite_slab.png new file mode 100644 index 00000000..3225b5d6 Binary files /dev/null and b/public/textures/create/cut_crimsite_slab.png differ diff --git a/public/textures/create/cut_crimsite_stairs.png b/public/textures/create/cut_crimsite_stairs.png new file mode 100644 index 00000000..889f131b Binary files /dev/null and b/public/textures/create/cut_crimsite_stairs.png differ diff --git a/public/textures/create/cut_crimsite_wall.png b/public/textures/create/cut_crimsite_wall.png new file mode 100644 index 00000000..478fe2be Binary files /dev/null and b/public/textures/create/cut_crimsite_wall.png differ diff --git a/public/textures/create/cut_deepslate.png b/public/textures/create/cut_deepslate.png new file mode 100644 index 00000000..979c9492 Binary files /dev/null and b/public/textures/create/cut_deepslate.png differ diff --git a/public/textures/create/cut_deepslate_brick_slab.png b/public/textures/create/cut_deepslate_brick_slab.png new file mode 100644 index 00000000..8b2b137e Binary files /dev/null and b/public/textures/create/cut_deepslate_brick_slab.png differ diff --git a/public/textures/create/cut_deepslate_brick_stairs.png b/public/textures/create/cut_deepslate_brick_stairs.png new file mode 100644 index 00000000..00a9a81a Binary files /dev/null and b/public/textures/create/cut_deepslate_brick_stairs.png differ diff --git a/public/textures/create/cut_deepslate_brick_wall.png b/public/textures/create/cut_deepslate_brick_wall.png new file mode 100644 index 00000000..060ca335 Binary files /dev/null and b/public/textures/create/cut_deepslate_brick_wall.png differ diff --git a/public/textures/create/cut_deepslate_bricks.png b/public/textures/create/cut_deepslate_bricks.png new file mode 100644 index 00000000..3ed048d3 Binary files /dev/null and b/public/textures/create/cut_deepslate_bricks.png differ diff --git a/public/textures/create/cut_deepslate_slab.png b/public/textures/create/cut_deepslate_slab.png new file mode 100644 index 00000000..0712b8de Binary files /dev/null and b/public/textures/create/cut_deepslate_slab.png differ diff --git a/public/textures/create/cut_deepslate_stairs.png b/public/textures/create/cut_deepslate_stairs.png new file mode 100644 index 00000000..15aa8d06 Binary files /dev/null and b/public/textures/create/cut_deepslate_stairs.png differ diff --git a/public/textures/create/cut_deepslate_wall.png b/public/textures/create/cut_deepslate_wall.png new file mode 100644 index 00000000..8bfe62fa Binary files /dev/null and b/public/textures/create/cut_deepslate_wall.png differ diff --git a/public/textures/create/cut_diorite.png b/public/textures/create/cut_diorite.png new file mode 100644 index 00000000..8978df3f Binary files /dev/null and b/public/textures/create/cut_diorite.png differ diff --git a/public/textures/create/cut_diorite_brick_slab.png b/public/textures/create/cut_diorite_brick_slab.png new file mode 100644 index 00000000..62ed8720 Binary files /dev/null and b/public/textures/create/cut_diorite_brick_slab.png differ diff --git a/public/textures/create/cut_diorite_brick_stairs.png b/public/textures/create/cut_diorite_brick_stairs.png new file mode 100644 index 00000000..246617be Binary files /dev/null and b/public/textures/create/cut_diorite_brick_stairs.png differ diff --git a/public/textures/create/cut_diorite_brick_wall.png b/public/textures/create/cut_diorite_brick_wall.png new file mode 100644 index 00000000..ffd7c50b Binary files /dev/null and b/public/textures/create/cut_diorite_brick_wall.png differ diff --git a/public/textures/create/cut_diorite_bricks.png b/public/textures/create/cut_diorite_bricks.png new file mode 100644 index 00000000..d471d8b9 Binary files /dev/null and b/public/textures/create/cut_diorite_bricks.png differ diff --git a/public/textures/create/cut_diorite_slab.png b/public/textures/create/cut_diorite_slab.png new file mode 100644 index 00000000..294c8c03 Binary files /dev/null and b/public/textures/create/cut_diorite_slab.png differ diff --git a/public/textures/create/cut_diorite_stairs.png b/public/textures/create/cut_diorite_stairs.png new file mode 100644 index 00000000..c5752679 Binary files /dev/null and b/public/textures/create/cut_diorite_stairs.png differ diff --git a/public/textures/create/cut_diorite_wall.png b/public/textures/create/cut_diorite_wall.png new file mode 100644 index 00000000..d3d7c47f Binary files /dev/null and b/public/textures/create/cut_diorite_wall.png differ diff --git a/public/textures/create/cut_dripstone.png b/public/textures/create/cut_dripstone.png new file mode 100644 index 00000000..6ac96033 Binary files /dev/null and b/public/textures/create/cut_dripstone.png differ diff --git a/public/textures/create/cut_dripstone_brick_slab.png b/public/textures/create/cut_dripstone_brick_slab.png new file mode 100644 index 00000000..cc8e450e Binary files /dev/null and b/public/textures/create/cut_dripstone_brick_slab.png differ diff --git a/public/textures/create/cut_dripstone_brick_stairs.png b/public/textures/create/cut_dripstone_brick_stairs.png new file mode 100644 index 00000000..6d4f1f1e Binary files /dev/null and b/public/textures/create/cut_dripstone_brick_stairs.png differ diff --git a/public/textures/create/cut_dripstone_brick_wall.png b/public/textures/create/cut_dripstone_brick_wall.png new file mode 100644 index 00000000..0edabcf6 Binary files /dev/null and b/public/textures/create/cut_dripstone_brick_wall.png differ diff --git a/public/textures/create/cut_dripstone_bricks.png b/public/textures/create/cut_dripstone_bricks.png new file mode 100644 index 00000000..73348435 Binary files /dev/null and b/public/textures/create/cut_dripstone_bricks.png differ diff --git a/public/textures/create/cut_dripstone_slab.png b/public/textures/create/cut_dripstone_slab.png new file mode 100644 index 00000000..6c29125f Binary files /dev/null and b/public/textures/create/cut_dripstone_slab.png differ diff --git a/public/textures/create/cut_dripstone_stairs.png b/public/textures/create/cut_dripstone_stairs.png new file mode 100644 index 00000000..f01ac9d5 Binary files /dev/null and b/public/textures/create/cut_dripstone_stairs.png differ diff --git a/public/textures/create/cut_dripstone_wall.png b/public/textures/create/cut_dripstone_wall.png new file mode 100644 index 00000000..48fa9f64 Binary files /dev/null and b/public/textures/create/cut_dripstone_wall.png differ diff --git a/public/textures/create/cut_granite.png b/public/textures/create/cut_granite.png new file mode 100644 index 00000000..626a0a78 Binary files /dev/null and b/public/textures/create/cut_granite.png differ diff --git a/public/textures/create/cut_granite_brick_slab.png b/public/textures/create/cut_granite_brick_slab.png new file mode 100644 index 00000000..228567c5 Binary files /dev/null and b/public/textures/create/cut_granite_brick_slab.png differ diff --git a/public/textures/create/cut_granite_brick_stairs.png b/public/textures/create/cut_granite_brick_stairs.png new file mode 100644 index 00000000..9116e602 Binary files /dev/null and b/public/textures/create/cut_granite_brick_stairs.png differ diff --git a/public/textures/create/cut_granite_brick_wall.png b/public/textures/create/cut_granite_brick_wall.png new file mode 100644 index 00000000..071a9633 Binary files /dev/null and b/public/textures/create/cut_granite_brick_wall.png differ diff --git a/public/textures/create/cut_granite_bricks.png b/public/textures/create/cut_granite_bricks.png new file mode 100644 index 00000000..483345ad Binary files /dev/null and b/public/textures/create/cut_granite_bricks.png differ diff --git a/public/textures/create/cut_granite_slab.png b/public/textures/create/cut_granite_slab.png new file mode 100644 index 00000000..bfcefe46 Binary files /dev/null and b/public/textures/create/cut_granite_slab.png differ diff --git a/public/textures/create/cut_granite_stairs.png b/public/textures/create/cut_granite_stairs.png new file mode 100644 index 00000000..bc61cb8c Binary files /dev/null and b/public/textures/create/cut_granite_stairs.png differ diff --git a/public/textures/create/cut_granite_wall.png b/public/textures/create/cut_granite_wall.png new file mode 100644 index 00000000..5b0e3311 Binary files /dev/null and b/public/textures/create/cut_granite_wall.png differ diff --git a/public/textures/create/cut_limestone.png b/public/textures/create/cut_limestone.png new file mode 100644 index 00000000..3d5210a0 Binary files /dev/null and b/public/textures/create/cut_limestone.png differ diff --git a/public/textures/create/cut_limestone_brick_slab.png b/public/textures/create/cut_limestone_brick_slab.png new file mode 100644 index 00000000..4c472d11 Binary files /dev/null and b/public/textures/create/cut_limestone_brick_slab.png differ diff --git a/public/textures/create/cut_limestone_brick_stairs.png b/public/textures/create/cut_limestone_brick_stairs.png new file mode 100644 index 00000000..25163b77 Binary files /dev/null and b/public/textures/create/cut_limestone_brick_stairs.png differ diff --git a/public/textures/create/cut_limestone_brick_wall.png b/public/textures/create/cut_limestone_brick_wall.png new file mode 100644 index 00000000..795fd6a2 Binary files /dev/null and b/public/textures/create/cut_limestone_brick_wall.png differ diff --git a/public/textures/create/cut_limestone_bricks.png b/public/textures/create/cut_limestone_bricks.png new file mode 100644 index 00000000..97b6a3de Binary files /dev/null and b/public/textures/create/cut_limestone_bricks.png differ diff --git a/public/textures/create/cut_limestone_slab.png b/public/textures/create/cut_limestone_slab.png new file mode 100644 index 00000000..9e73cc2d Binary files /dev/null and b/public/textures/create/cut_limestone_slab.png differ diff --git a/public/textures/create/cut_limestone_stairs.png b/public/textures/create/cut_limestone_stairs.png new file mode 100644 index 00000000..1a9f773d Binary files /dev/null and b/public/textures/create/cut_limestone_stairs.png differ diff --git a/public/textures/create/cut_limestone_wall.png b/public/textures/create/cut_limestone_wall.png new file mode 100644 index 00000000..e74576c2 Binary files /dev/null and b/public/textures/create/cut_limestone_wall.png differ diff --git a/public/textures/create/cut_ochrum.png b/public/textures/create/cut_ochrum.png new file mode 100644 index 00000000..fd6d18fa Binary files /dev/null and b/public/textures/create/cut_ochrum.png differ diff --git a/public/textures/create/cut_ochrum_brick_slab.png b/public/textures/create/cut_ochrum_brick_slab.png new file mode 100644 index 00000000..71f6eb36 Binary files /dev/null and b/public/textures/create/cut_ochrum_brick_slab.png differ diff --git a/public/textures/create/cut_ochrum_brick_stairs.png b/public/textures/create/cut_ochrum_brick_stairs.png new file mode 100644 index 00000000..bed67439 Binary files /dev/null and b/public/textures/create/cut_ochrum_brick_stairs.png differ diff --git a/public/textures/create/cut_ochrum_brick_wall.png b/public/textures/create/cut_ochrum_brick_wall.png new file mode 100644 index 00000000..aac46d3e Binary files /dev/null and b/public/textures/create/cut_ochrum_brick_wall.png differ diff --git a/public/textures/create/cut_ochrum_bricks.png b/public/textures/create/cut_ochrum_bricks.png new file mode 100644 index 00000000..566b1d59 Binary files /dev/null and b/public/textures/create/cut_ochrum_bricks.png differ diff --git a/public/textures/create/cut_ochrum_slab.png b/public/textures/create/cut_ochrum_slab.png new file mode 100644 index 00000000..8e38f53f Binary files /dev/null and b/public/textures/create/cut_ochrum_slab.png differ diff --git a/public/textures/create/cut_ochrum_stairs.png b/public/textures/create/cut_ochrum_stairs.png new file mode 100644 index 00000000..8dcef1d6 Binary files /dev/null and b/public/textures/create/cut_ochrum_stairs.png differ diff --git a/public/textures/create/cut_ochrum_wall.png b/public/textures/create/cut_ochrum_wall.png new file mode 100644 index 00000000..0dc3f1e2 Binary files /dev/null and b/public/textures/create/cut_ochrum_wall.png differ diff --git a/public/textures/create/cut_scorchia.png b/public/textures/create/cut_scorchia.png new file mode 100644 index 00000000..93f25704 Binary files /dev/null and b/public/textures/create/cut_scorchia.png differ diff --git a/public/textures/create/cut_scorchia_brick_slab.png b/public/textures/create/cut_scorchia_brick_slab.png new file mode 100644 index 00000000..c5150a41 Binary files /dev/null and b/public/textures/create/cut_scorchia_brick_slab.png differ diff --git a/public/textures/create/cut_scorchia_brick_stairs.png b/public/textures/create/cut_scorchia_brick_stairs.png new file mode 100644 index 00000000..8caf9c52 Binary files /dev/null and b/public/textures/create/cut_scorchia_brick_stairs.png differ diff --git a/public/textures/create/cut_scorchia_brick_wall.png b/public/textures/create/cut_scorchia_brick_wall.png new file mode 100644 index 00000000..551c3c42 Binary files /dev/null and b/public/textures/create/cut_scorchia_brick_wall.png differ diff --git a/public/textures/create/cut_scorchia_bricks.png b/public/textures/create/cut_scorchia_bricks.png new file mode 100644 index 00000000..12a803ab Binary files /dev/null and b/public/textures/create/cut_scorchia_bricks.png differ diff --git a/public/textures/create/cut_scorchia_slab.png b/public/textures/create/cut_scorchia_slab.png new file mode 100644 index 00000000..63052455 Binary files /dev/null and b/public/textures/create/cut_scorchia_slab.png differ diff --git a/public/textures/create/cut_scorchia_stairs.png b/public/textures/create/cut_scorchia_stairs.png new file mode 100644 index 00000000..6b42e72f Binary files /dev/null and b/public/textures/create/cut_scorchia_stairs.png differ diff --git a/public/textures/create/cut_scorchia_wall.png b/public/textures/create/cut_scorchia_wall.png new file mode 100644 index 00000000..790672ec Binary files /dev/null and b/public/textures/create/cut_scorchia_wall.png differ diff --git a/public/textures/create/cut_scoria.png b/public/textures/create/cut_scoria.png new file mode 100644 index 00000000..e1a36ddb Binary files /dev/null and b/public/textures/create/cut_scoria.png differ diff --git a/public/textures/create/cut_scoria_brick_slab.png b/public/textures/create/cut_scoria_brick_slab.png new file mode 100644 index 00000000..08a39efa Binary files /dev/null and b/public/textures/create/cut_scoria_brick_slab.png differ diff --git a/public/textures/create/cut_scoria_brick_stairs.png b/public/textures/create/cut_scoria_brick_stairs.png new file mode 100644 index 00000000..93ebff89 Binary files /dev/null and b/public/textures/create/cut_scoria_brick_stairs.png differ diff --git a/public/textures/create/cut_scoria_brick_wall.png b/public/textures/create/cut_scoria_brick_wall.png new file mode 100644 index 00000000..80b8be45 Binary files /dev/null and b/public/textures/create/cut_scoria_brick_wall.png differ diff --git a/public/textures/create/cut_scoria_bricks.png b/public/textures/create/cut_scoria_bricks.png new file mode 100644 index 00000000..a45a108b Binary files /dev/null and b/public/textures/create/cut_scoria_bricks.png differ diff --git a/public/textures/create/cut_scoria_slab.png b/public/textures/create/cut_scoria_slab.png new file mode 100644 index 00000000..32404e7e Binary files /dev/null and b/public/textures/create/cut_scoria_slab.png differ diff --git a/public/textures/create/cut_scoria_stairs.png b/public/textures/create/cut_scoria_stairs.png new file mode 100644 index 00000000..bb781ffe Binary files /dev/null and b/public/textures/create/cut_scoria_stairs.png differ diff --git a/public/textures/create/cut_scoria_wall.png b/public/textures/create/cut_scoria_wall.png new file mode 100644 index 00000000..63eb0b64 Binary files /dev/null and b/public/textures/create/cut_scoria_wall.png differ diff --git a/public/textures/create/cut_tuff.png b/public/textures/create/cut_tuff.png new file mode 100644 index 00000000..150c3416 Binary files /dev/null and b/public/textures/create/cut_tuff.png differ diff --git a/public/textures/create/cut_tuff_brick_slab.png b/public/textures/create/cut_tuff_brick_slab.png new file mode 100644 index 00000000..9c5e68da Binary files /dev/null and b/public/textures/create/cut_tuff_brick_slab.png differ diff --git a/public/textures/create/cut_tuff_brick_stairs.png b/public/textures/create/cut_tuff_brick_stairs.png new file mode 100644 index 00000000..b9bbf89c Binary files /dev/null and b/public/textures/create/cut_tuff_brick_stairs.png differ diff --git a/public/textures/create/cut_tuff_brick_wall.png b/public/textures/create/cut_tuff_brick_wall.png new file mode 100644 index 00000000..dfd9f86f Binary files /dev/null and b/public/textures/create/cut_tuff_brick_wall.png differ diff --git a/public/textures/create/cut_tuff_bricks.png b/public/textures/create/cut_tuff_bricks.png new file mode 100644 index 00000000..7deef51a Binary files /dev/null and b/public/textures/create/cut_tuff_bricks.png differ diff --git a/public/textures/create/cut_tuff_slab.png b/public/textures/create/cut_tuff_slab.png new file mode 100644 index 00000000..df4b7944 Binary files /dev/null and b/public/textures/create/cut_tuff_slab.png differ diff --git a/public/textures/create/cut_tuff_stairs.png b/public/textures/create/cut_tuff_stairs.png new file mode 100644 index 00000000..e9216d1c Binary files /dev/null and b/public/textures/create/cut_tuff_stairs.png differ diff --git a/public/textures/create/cut_tuff_wall.png b/public/textures/create/cut_tuff_wall.png new file mode 100644 index 00000000..942e7dad Binary files /dev/null and b/public/textures/create/cut_tuff_wall.png differ diff --git a/public/textures/create/cut_veridium.png b/public/textures/create/cut_veridium.png new file mode 100644 index 00000000..0521d899 Binary files /dev/null and b/public/textures/create/cut_veridium.png differ diff --git a/public/textures/create/cut_veridium_brick_slab.png b/public/textures/create/cut_veridium_brick_slab.png new file mode 100644 index 00000000..d80f3379 Binary files /dev/null and b/public/textures/create/cut_veridium_brick_slab.png differ diff --git a/public/textures/create/cut_veridium_brick_stairs.png b/public/textures/create/cut_veridium_brick_stairs.png new file mode 100644 index 00000000..de90d05b Binary files /dev/null and b/public/textures/create/cut_veridium_brick_stairs.png differ diff --git a/public/textures/create/cut_veridium_brick_wall.png b/public/textures/create/cut_veridium_brick_wall.png new file mode 100644 index 00000000..f5bc1a58 Binary files /dev/null and b/public/textures/create/cut_veridium_brick_wall.png differ diff --git a/public/textures/create/cut_veridium_bricks.png b/public/textures/create/cut_veridium_bricks.png new file mode 100644 index 00000000..4e9aacdb Binary files /dev/null and b/public/textures/create/cut_veridium_bricks.png differ diff --git a/public/textures/create/cut_veridium_slab.png b/public/textures/create/cut_veridium_slab.png new file mode 100644 index 00000000..d3028b2c Binary files /dev/null and b/public/textures/create/cut_veridium_slab.png differ diff --git a/public/textures/create/cut_veridium_stairs.png b/public/textures/create/cut_veridium_stairs.png new file mode 100644 index 00000000..30d8d43a Binary files /dev/null and b/public/textures/create/cut_veridium_stairs.png differ diff --git a/public/textures/create/cut_veridium_wall.png b/public/textures/create/cut_veridium_wall.png new file mode 100644 index 00000000..5010c963 Binary files /dev/null and b/public/textures/create/cut_veridium_wall.png differ diff --git a/public/textures/create/dark_oak_window.png b/public/textures/create/dark_oak_window.png new file mode 100644 index 00000000..ab2ec2a3 Binary files /dev/null and b/public/textures/create/dark_oak_window.png differ diff --git a/public/textures/create/dark_oak_window_pane.png b/public/textures/create/dark_oak_window_pane.png new file mode 100644 index 00000000..3193382c Binary files /dev/null and b/public/textures/create/dark_oak_window_pane.png differ diff --git a/public/textures/create/deepslate_pillar.png b/public/textures/create/deepslate_pillar.png new file mode 100644 index 00000000..14066dca Binary files /dev/null and b/public/textures/create/deepslate_pillar.png differ diff --git a/public/textures/create/deepslate_zinc_ore.png b/public/textures/create/deepslate_zinc_ore.png new file mode 100644 index 00000000..453cd6f9 Binary files /dev/null and b/public/textures/create/deepslate_zinc_ore.png differ diff --git a/public/textures/create/deployer.png b/public/textures/create/deployer.png new file mode 100644 index 00000000..90790cc6 Binary files /dev/null and b/public/textures/create/deployer.png differ diff --git a/public/textures/create/depot.png b/public/textures/create/depot.png new file mode 100644 index 00000000..9473679b Binary files /dev/null and b/public/textures/create/depot.png differ diff --git a/public/textures/create/desk_bell.png b/public/textures/create/desk_bell.png new file mode 100644 index 00000000..3fd0416e Binary files /dev/null and b/public/textures/create/desk_bell.png differ diff --git a/public/textures/create/diorite_pillar.png b/public/textures/create/diorite_pillar.png new file mode 100644 index 00000000..1d671dc0 Binary files /dev/null and b/public/textures/create/diorite_pillar.png differ diff --git a/public/textures/create/display_board.png b/public/textures/create/display_board.png new file mode 100644 index 00000000..679ec391 Binary files /dev/null and b/public/textures/create/display_board.png differ diff --git a/public/textures/create/display_link.png b/public/textures/create/display_link.png new file mode 100644 index 00000000..83d60056 Binary files /dev/null and b/public/textures/create/display_link.png differ diff --git a/public/textures/create/dough.png b/public/textures/create/dough.png new file mode 100644 index 00000000..7777ed02 Binary files /dev/null and b/public/textures/create/dough.png differ diff --git a/public/textures/create/dripstone_pillar.png b/public/textures/create/dripstone_pillar.png new file mode 100644 index 00000000..0871081b Binary files /dev/null and b/public/textures/create/dripstone_pillar.png differ diff --git a/public/textures/create/electron_tube.png b/public/textures/create/electron_tube.png new file mode 100644 index 00000000..1161090a Binary files /dev/null and b/public/textures/create/electron_tube.png differ diff --git a/public/textures/create/elevator_pulley.png b/public/textures/create/elevator_pulley.png new file mode 100644 index 00000000..40e0963f Binary files /dev/null and b/public/textures/create/elevator_pulley.png differ diff --git a/public/textures/create/empty_blaze_burner.png b/public/textures/create/empty_blaze_burner.png new file mode 100644 index 00000000..9eddddb4 Binary files /dev/null and b/public/textures/create/empty_blaze_burner.png differ diff --git a/public/textures/create/empty_schematic.png b/public/textures/create/empty_schematic.png new file mode 100644 index 00000000..a0d2b399 Binary files /dev/null and b/public/textures/create/empty_schematic.png differ diff --git a/public/textures/create/encased_chain_drive.png b/public/textures/create/encased_chain_drive.png new file mode 100644 index 00000000..e56b6023 Binary files /dev/null and b/public/textures/create/encased_chain_drive.png differ diff --git a/public/textures/create/encased_fan.png b/public/textures/create/encased_fan.png new file mode 100644 index 00000000..15cea0ec Binary files /dev/null and b/public/textures/create/encased_fan.png differ diff --git a/public/textures/create/experience_block.png b/public/textures/create/experience_block.png new file mode 100644 index 00000000..683c54e4 Binary files /dev/null and b/public/textures/create/experience_block.png differ diff --git a/public/textures/create/experience_nugget.png b/public/textures/create/experience_nugget.png new file mode 100644 index 00000000..deb61090 Binary files /dev/null and b/public/textures/create/experience_nugget.png differ diff --git a/public/textures/create/exposed_copper_shingle_slab.png b/public/textures/create/exposed_copper_shingle_slab.png new file mode 100644 index 00000000..dfbeea5c Binary files /dev/null and b/public/textures/create/exposed_copper_shingle_slab.png differ diff --git a/public/textures/create/exposed_copper_shingle_stairs.png b/public/textures/create/exposed_copper_shingle_stairs.png new file mode 100644 index 00000000..0bbda0fb Binary files /dev/null and b/public/textures/create/exposed_copper_shingle_stairs.png differ diff --git a/public/textures/create/exposed_copper_shingles.png b/public/textures/create/exposed_copper_shingles.png new file mode 100644 index 00000000..9440b338 Binary files /dev/null and b/public/textures/create/exposed_copper_shingles.png differ diff --git a/public/textures/create/exposed_copper_tile_slab.png b/public/textures/create/exposed_copper_tile_slab.png new file mode 100644 index 00000000..f84f2604 Binary files /dev/null and b/public/textures/create/exposed_copper_tile_slab.png differ diff --git a/public/textures/create/exposed_copper_tile_stairs.png b/public/textures/create/exposed_copper_tile_stairs.png new file mode 100644 index 00000000..3300a270 Binary files /dev/null and b/public/textures/create/exposed_copper_tile_stairs.png differ diff --git a/public/textures/create/exposed_copper_tiles.png b/public/textures/create/exposed_copper_tiles.png new file mode 100644 index 00000000..4c19ee28 Binary files /dev/null and b/public/textures/create/exposed_copper_tiles.png differ diff --git a/public/textures/create/extendo_grip.png b/public/textures/create/extendo_grip.png new file mode 100644 index 00000000..137f15e9 Binary files /dev/null and b/public/textures/create/extendo_grip.png differ diff --git a/public/textures/create/factory_gauge.png b/public/textures/create/factory_gauge.png new file mode 100644 index 00000000..628c9811 Binary files /dev/null and b/public/textures/create/factory_gauge.png differ diff --git a/public/textures/create/filter.png b/public/textures/create/filter.png new file mode 100644 index 00000000..0edc0002 Binary files /dev/null and b/public/textures/create/filter.png differ diff --git a/public/textures/create/fluid_pipe.png b/public/textures/create/fluid_pipe.png new file mode 100644 index 00000000..47b12488 Binary files /dev/null and b/public/textures/create/fluid_pipe.png differ diff --git a/public/textures/create/fluid_tank.png b/public/textures/create/fluid_tank.png new file mode 100644 index 00000000..7d455244 Binary files /dev/null and b/public/textures/create/fluid_tank.png differ diff --git a/public/textures/create/fluid_valve.png b/public/textures/create/fluid_valve.png new file mode 100644 index 00000000..61057cf2 Binary files /dev/null and b/public/textures/create/fluid_valve.png differ diff --git a/public/textures/create/flywheel.png b/public/textures/create/flywheel.png new file mode 100644 index 00000000..1c08894f Binary files /dev/null and b/public/textures/create/flywheel.png differ diff --git a/public/textures/create/framed_glass.png b/public/textures/create/framed_glass.png new file mode 100644 index 00000000..c8fc875c Binary files /dev/null and b/public/textures/create/framed_glass.png differ diff --git a/public/textures/create/framed_glass_door.png b/public/textures/create/framed_glass_door.png new file mode 100644 index 00000000..b8db007b Binary files /dev/null and b/public/textures/create/framed_glass_door.png differ diff --git a/public/textures/create/framed_glass_pane.png b/public/textures/create/framed_glass_pane.png new file mode 100644 index 00000000..8d64a083 Binary files /dev/null and b/public/textures/create/framed_glass_pane.png differ diff --git a/public/textures/create/framed_glass_trapdoor.png b/public/textures/create/framed_glass_trapdoor.png new file mode 100644 index 00000000..28b89585 Binary files /dev/null and b/public/textures/create/framed_glass_trapdoor.png differ diff --git a/public/textures/create/gantry_carriage.png b/public/textures/create/gantry_carriage.png new file mode 100644 index 00000000..99238155 Binary files /dev/null and b/public/textures/create/gantry_carriage.png differ diff --git a/public/textures/create/gantry_shaft.png b/public/textures/create/gantry_shaft.png new file mode 100644 index 00000000..3a3c5a9c Binary files /dev/null and b/public/textures/create/gantry_shaft.png differ diff --git a/public/textures/create/gearbox.png b/public/textures/create/gearbox.png new file mode 100644 index 00000000..6794f66c Binary files /dev/null and b/public/textures/create/gearbox.png differ diff --git a/public/textures/create/gearshift.png b/public/textures/create/gearshift.png new file mode 100644 index 00000000..c56873cf Binary files /dev/null and b/public/textures/create/gearshift.png differ diff --git a/public/textures/create/goggles.png b/public/textures/create/goggles.png new file mode 100644 index 00000000..3b0aa92b Binary files /dev/null and b/public/textures/create/goggles.png differ diff --git a/public/textures/create/golden_sheet.png b/public/textures/create/golden_sheet.png new file mode 100644 index 00000000..1281b2a8 Binary files /dev/null and b/public/textures/create/golden_sheet.png differ diff --git a/public/textures/create/granite_pillar.png b/public/textures/create/granite_pillar.png new file mode 100644 index 00000000..44449479 Binary files /dev/null and b/public/textures/create/granite_pillar.png differ diff --git a/public/textures/create/hand_crank.png b/public/textures/create/hand_crank.png new file mode 100644 index 00000000..8c35c034 Binary files /dev/null and b/public/textures/create/hand_crank.png differ diff --git a/public/textures/create/handheld_worldshaper.png b/public/textures/create/handheld_worldshaper.png new file mode 100644 index 00000000..d4999253 Binary files /dev/null and b/public/textures/create/handheld_worldshaper.png differ diff --git a/public/textures/create/haunted_bell.png b/public/textures/create/haunted_bell.png new file mode 100644 index 00000000..e8667414 Binary files /dev/null and b/public/textures/create/haunted_bell.png differ diff --git a/public/textures/create/honey_bucket.png b/public/textures/create/honey_bucket.png new file mode 100644 index 00000000..e538b101 Binary files /dev/null and b/public/textures/create/honey_bucket.png differ diff --git a/public/textures/create/honeyed_apple.png b/public/textures/create/honeyed_apple.png new file mode 100644 index 00000000..036158d7 Binary files /dev/null and b/public/textures/create/honeyed_apple.png differ diff --git a/public/textures/create/horizontal_framed_glass.png b/public/textures/create/horizontal_framed_glass.png new file mode 100644 index 00000000..c8a0fdc8 Binary files /dev/null and b/public/textures/create/horizontal_framed_glass.png differ diff --git a/public/textures/create/horizontal_framed_glass_pane.png b/public/textures/create/horizontal_framed_glass_pane.png new file mode 100644 index 00000000..d9a0d9d4 Binary files /dev/null and b/public/textures/create/horizontal_framed_glass_pane.png differ diff --git a/public/textures/create/hose_pulley.png b/public/textures/create/hose_pulley.png new file mode 100644 index 00000000..4819a5d0 Binary files /dev/null and b/public/textures/create/hose_pulley.png differ diff --git a/public/textures/create/industrial_iron_block.png b/public/textures/create/industrial_iron_block.png new file mode 100644 index 00000000..ba58e77b Binary files /dev/null and b/public/textures/create/industrial_iron_block.png differ diff --git a/public/textures/create/industrial_iron_window.png b/public/textures/create/industrial_iron_window.png new file mode 100644 index 00000000..8fe5b78c Binary files /dev/null and b/public/textures/create/industrial_iron_window.png differ diff --git a/public/textures/create/industrial_iron_window_pane.png b/public/textures/create/industrial_iron_window_pane.png new file mode 100644 index 00000000..9f4e066a Binary files /dev/null and b/public/textures/create/industrial_iron_window_pane.png differ diff --git a/public/textures/create/iron_sheet.png b/public/textures/create/iron_sheet.png new file mode 100644 index 00000000..4b8558d5 Binary files /dev/null and b/public/textures/create/iron_sheet.png differ diff --git a/public/textures/create/item_drain.png b/public/textures/create/item_drain.png new file mode 100644 index 00000000..6365fdd9 Binary files /dev/null and b/public/textures/create/item_drain.png differ diff --git a/public/textures/create/item_hatch.png b/public/textures/create/item_hatch.png new file mode 100644 index 00000000..12fead9a Binary files /dev/null and b/public/textures/create/item_hatch.png differ diff --git a/public/textures/create/item_vault.png b/public/textures/create/item_vault.png new file mode 100644 index 00000000..cfadcbff Binary files /dev/null and b/public/textures/create/item_vault.png differ diff --git a/public/textures/create/jungle_window.png b/public/textures/create/jungle_window.png new file mode 100644 index 00000000..d6542306 Binary files /dev/null and b/public/textures/create/jungle_window.png differ diff --git a/public/textures/create/jungle_window_pane.png b/public/textures/create/jungle_window_pane.png new file mode 100644 index 00000000..a04aa1f2 Binary files /dev/null and b/public/textures/create/jungle_window_pane.png differ diff --git a/public/textures/create/large_cogwheel.png b/public/textures/create/large_cogwheel.png new file mode 100644 index 00000000..4cef6ff1 Binary files /dev/null and b/public/textures/create/large_cogwheel.png differ diff --git a/public/textures/create/large_water_wheel.png b/public/textures/create/large_water_wheel.png new file mode 100644 index 00000000..3c8cb3a3 Binary files /dev/null and b/public/textures/create/large_water_wheel.png differ diff --git a/public/textures/create/layered_andesite.png b/public/textures/create/layered_andesite.png new file mode 100644 index 00000000..e0903054 Binary files /dev/null and b/public/textures/create/layered_andesite.png differ diff --git a/public/textures/create/layered_asurine.png b/public/textures/create/layered_asurine.png new file mode 100644 index 00000000..9180c60e Binary files /dev/null and b/public/textures/create/layered_asurine.png differ diff --git a/public/textures/create/layered_calcite.png b/public/textures/create/layered_calcite.png new file mode 100644 index 00000000..013a7a75 Binary files /dev/null and b/public/textures/create/layered_calcite.png differ diff --git a/public/textures/create/layered_crimsite.png b/public/textures/create/layered_crimsite.png new file mode 100644 index 00000000..14c4076c Binary files /dev/null and b/public/textures/create/layered_crimsite.png differ diff --git a/public/textures/create/layered_deepslate.png b/public/textures/create/layered_deepslate.png new file mode 100644 index 00000000..7af45b39 Binary files /dev/null and b/public/textures/create/layered_deepslate.png differ diff --git a/public/textures/create/layered_diorite.png b/public/textures/create/layered_diorite.png new file mode 100644 index 00000000..b99211d7 Binary files /dev/null and b/public/textures/create/layered_diorite.png differ diff --git a/public/textures/create/layered_dripstone.png b/public/textures/create/layered_dripstone.png new file mode 100644 index 00000000..9959896c Binary files /dev/null and b/public/textures/create/layered_dripstone.png differ diff --git a/public/textures/create/layered_granite.png b/public/textures/create/layered_granite.png new file mode 100644 index 00000000..ccbfaabf Binary files /dev/null and b/public/textures/create/layered_granite.png differ diff --git a/public/textures/create/layered_limestone.png b/public/textures/create/layered_limestone.png new file mode 100644 index 00000000..f8065661 Binary files /dev/null and b/public/textures/create/layered_limestone.png differ diff --git a/public/textures/create/layered_ochrum.png b/public/textures/create/layered_ochrum.png new file mode 100644 index 00000000..31ab762f Binary files /dev/null and b/public/textures/create/layered_ochrum.png differ diff --git a/public/textures/create/layered_scorchia.png b/public/textures/create/layered_scorchia.png new file mode 100644 index 00000000..65140c71 Binary files /dev/null and b/public/textures/create/layered_scorchia.png differ diff --git a/public/textures/create/layered_scoria.png b/public/textures/create/layered_scoria.png new file mode 100644 index 00000000..ecaa3344 Binary files /dev/null and b/public/textures/create/layered_scoria.png differ diff --git a/public/textures/create/layered_tuff.png b/public/textures/create/layered_tuff.png new file mode 100644 index 00000000..e886f15f Binary files /dev/null and b/public/textures/create/layered_tuff.png differ diff --git a/public/textures/create/layered_veridium.png b/public/textures/create/layered_veridium.png new file mode 100644 index 00000000..2acf2c0e Binary files /dev/null and b/public/textures/create/layered_veridium.png differ diff --git a/public/textures/create/limestone.png b/public/textures/create/limestone.png new file mode 100644 index 00000000..6173aff9 Binary files /dev/null and b/public/textures/create/limestone.png differ diff --git a/public/textures/create/limestone_pillar.png b/public/textures/create/limestone_pillar.png new file mode 100644 index 00000000..b9fd1911 Binary files /dev/null and b/public/textures/create/limestone_pillar.png differ diff --git a/public/textures/create/linear_chassis.png b/public/textures/create/linear_chassis.png new file mode 100644 index 00000000..b55df524 Binary files /dev/null and b/public/textures/create/linear_chassis.png differ diff --git a/public/textures/create/linked_controller.png b/public/textures/create/linked_controller.png new file mode 100644 index 00000000..ddaac678 Binary files /dev/null and b/public/textures/create/linked_controller.png differ diff --git a/public/textures/create/mangrove_window.png b/public/textures/create/mangrove_window.png new file mode 100644 index 00000000..60bfc869 Binary files /dev/null and b/public/textures/create/mangrove_window.png differ diff --git a/public/textures/create/mangrove_window_pane.png b/public/textures/create/mangrove_window_pane.png new file mode 100644 index 00000000..43015757 Binary files /dev/null and b/public/textures/create/mangrove_window_pane.png differ diff --git a/public/textures/create/mechanical_arm.png b/public/textures/create/mechanical_arm.png new file mode 100644 index 00000000..59cc13cb Binary files /dev/null and b/public/textures/create/mechanical_arm.png differ diff --git a/public/textures/create/mechanical_bearing.png b/public/textures/create/mechanical_bearing.png new file mode 100644 index 00000000..be48b8b6 Binary files /dev/null and b/public/textures/create/mechanical_bearing.png differ diff --git a/public/textures/create/mechanical_crafter.png b/public/textures/create/mechanical_crafter.png new file mode 100644 index 00000000..c2e024e2 Binary files /dev/null and b/public/textures/create/mechanical_crafter.png differ diff --git a/public/textures/create/mechanical_drill.png b/public/textures/create/mechanical_drill.png new file mode 100644 index 00000000..84420dbe Binary files /dev/null and b/public/textures/create/mechanical_drill.png differ diff --git a/public/textures/create/mechanical_harvester.png b/public/textures/create/mechanical_harvester.png new file mode 100644 index 00000000..3a98cbd7 Binary files /dev/null and b/public/textures/create/mechanical_harvester.png differ diff --git a/public/textures/create/mechanical_mixer.png b/public/textures/create/mechanical_mixer.png new file mode 100644 index 00000000..161f8ebd Binary files /dev/null and b/public/textures/create/mechanical_mixer.png differ diff --git a/public/textures/create/mechanical_piston.png b/public/textures/create/mechanical_piston.png new file mode 100644 index 00000000..b27d4273 Binary files /dev/null and b/public/textures/create/mechanical_piston.png differ diff --git a/public/textures/create/mechanical_plough.png b/public/textures/create/mechanical_plough.png new file mode 100644 index 00000000..021a8230 Binary files /dev/null and b/public/textures/create/mechanical_plough.png differ diff --git a/public/textures/create/mechanical_press.png b/public/textures/create/mechanical_press.png new file mode 100644 index 00000000..d1df07e6 Binary files /dev/null and b/public/textures/create/mechanical_press.png differ diff --git a/public/textures/create/mechanical_pump.png b/public/textures/create/mechanical_pump.png new file mode 100644 index 00000000..be523120 Binary files /dev/null and b/public/textures/create/mechanical_pump.png differ diff --git a/public/textures/create/mechanical_roller.png b/public/textures/create/mechanical_roller.png new file mode 100644 index 00000000..7d622739 Binary files /dev/null and b/public/textures/create/mechanical_roller.png differ diff --git a/public/textures/create/mechanical_saw.png b/public/textures/create/mechanical_saw.png new file mode 100644 index 00000000..a6f37230 Binary files /dev/null and b/public/textures/create/mechanical_saw.png differ diff --git a/public/textures/create/metal_bracket.png b/public/textures/create/metal_bracket.png new file mode 100644 index 00000000..1955f220 Binary files /dev/null and b/public/textures/create/metal_bracket.png differ diff --git a/public/textures/create/metal_girder.png b/public/textures/create/metal_girder.png new file mode 100644 index 00000000..875d0392 Binary files /dev/null and b/public/textures/create/metal_girder.png differ diff --git a/public/textures/create/millstone.png b/public/textures/create/millstone.png new file mode 100644 index 00000000..4f490ebe Binary files /dev/null and b/public/textures/create/millstone.png differ diff --git a/public/textures/create/minecart_coupling.png b/public/textures/create/minecart_coupling.png new file mode 100644 index 00000000..dc558b97 Binary files /dev/null and b/public/textures/create/minecart_coupling.png differ diff --git a/public/textures/create/netherite_backtank__{'create__banktank_air'__900}.png b/public/textures/create/netherite_backtank__{'create__banktank_air'__900}.png new file mode 100644 index 00000000..8610c037 Binary files /dev/null and b/public/textures/create/netherite_backtank__{'create__banktank_air'__900}.png differ diff --git a/public/textures/create/netherite_diving_boots.png b/public/textures/create/netherite_diving_boots.png new file mode 100644 index 00000000..35d112b7 Binary files /dev/null and b/public/textures/create/netherite_diving_boots.png differ diff --git a/public/textures/create/netherite_diving_helmet.png b/public/textures/create/netherite_diving_helmet.png new file mode 100644 index 00000000..bdb90469 Binary files /dev/null and b/public/textures/create/netherite_diving_helmet.png differ diff --git a/public/textures/create/nixie_tube.png b/public/textures/create/nixie_tube.png new file mode 100644 index 00000000..078167bc Binary files /dev/null and b/public/textures/create/nixie_tube.png differ diff --git a/public/textures/create/nozzle.png b/public/textures/create/nozzle.png new file mode 100644 index 00000000..f8a8af93 Binary files /dev/null and b/public/textures/create/nozzle.png differ diff --git a/public/textures/create/oak_window.png b/public/textures/create/oak_window.png new file mode 100644 index 00000000..c27b1037 Binary files /dev/null and b/public/textures/create/oak_window.png differ diff --git a/public/textures/create/oak_window_pane.png b/public/textures/create/oak_window_pane.png new file mode 100644 index 00000000..e1295359 Binary files /dev/null and b/public/textures/create/oak_window_pane.png differ diff --git a/public/textures/create/ochrum.png b/public/textures/create/ochrum.png new file mode 100644 index 00000000..aa7520f5 Binary files /dev/null and b/public/textures/create/ochrum.png differ diff --git a/public/textures/create/ochrum_pillar.png b/public/textures/create/ochrum_pillar.png new file mode 100644 index 00000000..aca44afd Binary files /dev/null and b/public/textures/create/ochrum_pillar.png differ diff --git a/public/textures/create/ornate_iron_window.png b/public/textures/create/ornate_iron_window.png new file mode 100644 index 00000000..ccec015e Binary files /dev/null and b/public/textures/create/ornate_iron_window.png differ diff --git a/public/textures/create/ornate_iron_window_pane.png b/public/textures/create/ornate_iron_window_pane.png new file mode 100644 index 00000000..068aa686 Binary files /dev/null and b/public/textures/create/ornate_iron_window_pane.png differ diff --git a/public/textures/create/oxidized_copper_shingle_slab.png b/public/textures/create/oxidized_copper_shingle_slab.png new file mode 100644 index 00000000..66957dcc Binary files /dev/null and b/public/textures/create/oxidized_copper_shingle_slab.png differ diff --git a/public/textures/create/oxidized_copper_shingle_stairs.png b/public/textures/create/oxidized_copper_shingle_stairs.png new file mode 100644 index 00000000..79ece7a6 Binary files /dev/null and b/public/textures/create/oxidized_copper_shingle_stairs.png differ diff --git a/public/textures/create/oxidized_copper_shingles.png b/public/textures/create/oxidized_copper_shingles.png new file mode 100644 index 00000000..034b6841 Binary files /dev/null and b/public/textures/create/oxidized_copper_shingles.png differ diff --git a/public/textures/create/oxidized_copper_tile_slab.png b/public/textures/create/oxidized_copper_tile_slab.png new file mode 100644 index 00000000..35323db7 Binary files /dev/null and b/public/textures/create/oxidized_copper_tile_slab.png differ diff --git a/public/textures/create/oxidized_copper_tile_stairs.png b/public/textures/create/oxidized_copper_tile_stairs.png new file mode 100644 index 00000000..64f7c69f Binary files /dev/null and b/public/textures/create/oxidized_copper_tile_stairs.png differ diff --git a/public/textures/create/oxidized_copper_tiles.png b/public/textures/create/oxidized_copper_tiles.png new file mode 100644 index 00000000..cde16509 Binary files /dev/null and b/public/textures/create/oxidized_copper_tiles.png differ diff --git a/public/textures/create/package_filter.png b/public/textures/create/package_filter.png new file mode 100644 index 00000000..e26791b7 Binary files /dev/null and b/public/textures/create/package_filter.png differ diff --git a/public/textures/create/package_frogport.png b/public/textures/create/package_frogport.png new file mode 100644 index 00000000..3fd88deb Binary files /dev/null and b/public/textures/create/package_frogport.png differ diff --git a/public/textures/create/packager.png b/public/textures/create/packager.png new file mode 100644 index 00000000..211eb661 Binary files /dev/null and b/public/textures/create/packager.png differ diff --git a/public/textures/create/peculiar_bell.png b/public/textures/create/peculiar_bell.png new file mode 100644 index 00000000..3aec3f3c Binary files /dev/null and b/public/textures/create/peculiar_bell.png differ diff --git a/public/textures/create/piston_extension_pole.png b/public/textures/create/piston_extension_pole.png new file mode 100644 index 00000000..4b6f458c Binary files /dev/null and b/public/textures/create/piston_extension_pole.png differ diff --git a/public/textures/create/placard.png b/public/textures/create/placard.png new file mode 100644 index 00000000..27d06ad9 Binary files /dev/null and b/public/textures/create/placard.png differ diff --git a/public/textures/create/polished_cut_andesite.png b/public/textures/create/polished_cut_andesite.png new file mode 100644 index 00000000..166c471d Binary files /dev/null and b/public/textures/create/polished_cut_andesite.png differ diff --git a/public/textures/create/polished_cut_andesite_slab.png b/public/textures/create/polished_cut_andesite_slab.png new file mode 100644 index 00000000..c0a1b3e6 Binary files /dev/null and b/public/textures/create/polished_cut_andesite_slab.png differ diff --git a/public/textures/create/polished_cut_andesite_stairs.png b/public/textures/create/polished_cut_andesite_stairs.png new file mode 100644 index 00000000..222cb138 Binary files /dev/null and b/public/textures/create/polished_cut_andesite_stairs.png differ diff --git a/public/textures/create/polished_cut_andesite_wall.png b/public/textures/create/polished_cut_andesite_wall.png new file mode 100644 index 00000000..10930110 Binary files /dev/null and b/public/textures/create/polished_cut_andesite_wall.png differ diff --git a/public/textures/create/polished_cut_asurine.png b/public/textures/create/polished_cut_asurine.png new file mode 100644 index 00000000..4689cace Binary files /dev/null and b/public/textures/create/polished_cut_asurine.png differ diff --git a/public/textures/create/polished_cut_asurine_slab.png b/public/textures/create/polished_cut_asurine_slab.png new file mode 100644 index 00000000..7885df14 Binary files /dev/null and b/public/textures/create/polished_cut_asurine_slab.png differ diff --git a/public/textures/create/polished_cut_asurine_stairs.png b/public/textures/create/polished_cut_asurine_stairs.png new file mode 100644 index 00000000..7f992b65 Binary files /dev/null and b/public/textures/create/polished_cut_asurine_stairs.png differ diff --git a/public/textures/create/polished_cut_asurine_wall.png b/public/textures/create/polished_cut_asurine_wall.png new file mode 100644 index 00000000..c438fb98 Binary files /dev/null and b/public/textures/create/polished_cut_asurine_wall.png differ diff --git a/public/textures/create/polished_cut_calcite.png b/public/textures/create/polished_cut_calcite.png new file mode 100644 index 00000000..300cddb8 Binary files /dev/null and b/public/textures/create/polished_cut_calcite.png differ diff --git a/public/textures/create/polished_cut_calcite_slab.png b/public/textures/create/polished_cut_calcite_slab.png new file mode 100644 index 00000000..1fbe2b85 Binary files /dev/null and b/public/textures/create/polished_cut_calcite_slab.png differ diff --git a/public/textures/create/polished_cut_calcite_stairs.png b/public/textures/create/polished_cut_calcite_stairs.png new file mode 100644 index 00000000..500ee378 Binary files /dev/null and b/public/textures/create/polished_cut_calcite_stairs.png differ diff --git a/public/textures/create/polished_cut_calcite_wall.png b/public/textures/create/polished_cut_calcite_wall.png new file mode 100644 index 00000000..0a3a919a Binary files /dev/null and b/public/textures/create/polished_cut_calcite_wall.png differ diff --git a/public/textures/create/polished_cut_crimsite.png b/public/textures/create/polished_cut_crimsite.png new file mode 100644 index 00000000..823847ab Binary files /dev/null and b/public/textures/create/polished_cut_crimsite.png differ diff --git a/public/textures/create/polished_cut_crimsite_slab.png b/public/textures/create/polished_cut_crimsite_slab.png new file mode 100644 index 00000000..85624d76 Binary files /dev/null and b/public/textures/create/polished_cut_crimsite_slab.png differ diff --git a/public/textures/create/polished_cut_crimsite_stairs.png b/public/textures/create/polished_cut_crimsite_stairs.png new file mode 100644 index 00000000..b0c28a77 Binary files /dev/null and b/public/textures/create/polished_cut_crimsite_stairs.png differ diff --git a/public/textures/create/polished_cut_crimsite_wall.png b/public/textures/create/polished_cut_crimsite_wall.png new file mode 100644 index 00000000..533c6c01 Binary files /dev/null and b/public/textures/create/polished_cut_crimsite_wall.png differ diff --git a/public/textures/create/polished_cut_deepslate.png b/public/textures/create/polished_cut_deepslate.png new file mode 100644 index 00000000..652fc1bf Binary files /dev/null and b/public/textures/create/polished_cut_deepslate.png differ diff --git a/public/textures/create/polished_cut_deepslate_slab.png b/public/textures/create/polished_cut_deepslate_slab.png new file mode 100644 index 00000000..821e79d6 Binary files /dev/null and b/public/textures/create/polished_cut_deepslate_slab.png differ diff --git a/public/textures/create/polished_cut_deepslate_stairs.png b/public/textures/create/polished_cut_deepslate_stairs.png new file mode 100644 index 00000000..fa70cee6 Binary files /dev/null and b/public/textures/create/polished_cut_deepslate_stairs.png differ diff --git a/public/textures/create/polished_cut_deepslate_wall.png b/public/textures/create/polished_cut_deepslate_wall.png new file mode 100644 index 00000000..a2befe15 Binary files /dev/null and b/public/textures/create/polished_cut_deepslate_wall.png differ diff --git a/public/textures/create/polished_cut_diorite.png b/public/textures/create/polished_cut_diorite.png new file mode 100644 index 00000000..47fb9bf7 Binary files /dev/null and b/public/textures/create/polished_cut_diorite.png differ diff --git a/public/textures/create/polished_cut_diorite_slab.png b/public/textures/create/polished_cut_diorite_slab.png new file mode 100644 index 00000000..00f7378e Binary files /dev/null and b/public/textures/create/polished_cut_diorite_slab.png differ diff --git a/public/textures/create/polished_cut_diorite_stairs.png b/public/textures/create/polished_cut_diorite_stairs.png new file mode 100644 index 00000000..408c9fc0 Binary files /dev/null and b/public/textures/create/polished_cut_diorite_stairs.png differ diff --git a/public/textures/create/polished_cut_diorite_wall.png b/public/textures/create/polished_cut_diorite_wall.png new file mode 100644 index 00000000..2638e3a6 Binary files /dev/null and b/public/textures/create/polished_cut_diorite_wall.png differ diff --git a/public/textures/create/polished_cut_dripstone.png b/public/textures/create/polished_cut_dripstone.png new file mode 100644 index 00000000..1bc21023 Binary files /dev/null and b/public/textures/create/polished_cut_dripstone.png differ diff --git a/public/textures/create/polished_cut_dripstone_slab.png b/public/textures/create/polished_cut_dripstone_slab.png new file mode 100644 index 00000000..5323757e Binary files /dev/null and b/public/textures/create/polished_cut_dripstone_slab.png differ diff --git a/public/textures/create/polished_cut_dripstone_stairs.png b/public/textures/create/polished_cut_dripstone_stairs.png new file mode 100644 index 00000000..b89d2298 Binary files /dev/null and b/public/textures/create/polished_cut_dripstone_stairs.png differ diff --git a/public/textures/create/polished_cut_dripstone_wall.png b/public/textures/create/polished_cut_dripstone_wall.png new file mode 100644 index 00000000..8ad14556 Binary files /dev/null and b/public/textures/create/polished_cut_dripstone_wall.png differ diff --git a/public/textures/create/polished_cut_granite.png b/public/textures/create/polished_cut_granite.png new file mode 100644 index 00000000..a0659435 Binary files /dev/null and b/public/textures/create/polished_cut_granite.png differ diff --git a/public/textures/create/polished_cut_granite_slab.png b/public/textures/create/polished_cut_granite_slab.png new file mode 100644 index 00000000..a4d3c540 Binary files /dev/null and b/public/textures/create/polished_cut_granite_slab.png differ diff --git a/public/textures/create/polished_cut_granite_stairs.png b/public/textures/create/polished_cut_granite_stairs.png new file mode 100644 index 00000000..60bb411b Binary files /dev/null and b/public/textures/create/polished_cut_granite_stairs.png differ diff --git a/public/textures/create/polished_cut_granite_wall.png b/public/textures/create/polished_cut_granite_wall.png new file mode 100644 index 00000000..714b963f Binary files /dev/null and b/public/textures/create/polished_cut_granite_wall.png differ diff --git a/public/textures/create/polished_cut_limestone.png b/public/textures/create/polished_cut_limestone.png new file mode 100644 index 00000000..e1f64468 Binary files /dev/null and b/public/textures/create/polished_cut_limestone.png differ diff --git a/public/textures/create/polished_cut_limestone_slab.png b/public/textures/create/polished_cut_limestone_slab.png new file mode 100644 index 00000000..590f2d00 Binary files /dev/null and b/public/textures/create/polished_cut_limestone_slab.png differ diff --git a/public/textures/create/polished_cut_limestone_stairs.png b/public/textures/create/polished_cut_limestone_stairs.png new file mode 100644 index 00000000..81a5de7e Binary files /dev/null and b/public/textures/create/polished_cut_limestone_stairs.png differ diff --git a/public/textures/create/polished_cut_limestone_wall.png b/public/textures/create/polished_cut_limestone_wall.png new file mode 100644 index 00000000..1287c6cc Binary files /dev/null and b/public/textures/create/polished_cut_limestone_wall.png differ diff --git a/public/textures/create/polished_cut_ochrum.png b/public/textures/create/polished_cut_ochrum.png new file mode 100644 index 00000000..4cec4aec Binary files /dev/null and b/public/textures/create/polished_cut_ochrum.png differ diff --git a/public/textures/create/polished_cut_ochrum_slab.png b/public/textures/create/polished_cut_ochrum_slab.png new file mode 100644 index 00000000..f2dfdb19 Binary files /dev/null and b/public/textures/create/polished_cut_ochrum_slab.png differ diff --git a/public/textures/create/polished_cut_ochrum_stairs.png b/public/textures/create/polished_cut_ochrum_stairs.png new file mode 100644 index 00000000..300b1fd9 Binary files /dev/null and b/public/textures/create/polished_cut_ochrum_stairs.png differ diff --git a/public/textures/create/polished_cut_ochrum_wall.png b/public/textures/create/polished_cut_ochrum_wall.png new file mode 100644 index 00000000..90a523a8 Binary files /dev/null and b/public/textures/create/polished_cut_ochrum_wall.png differ diff --git a/public/textures/create/polished_cut_scorchia.png b/public/textures/create/polished_cut_scorchia.png new file mode 100644 index 00000000..8bb9c91b Binary files /dev/null and b/public/textures/create/polished_cut_scorchia.png differ diff --git a/public/textures/create/polished_cut_scorchia_slab.png b/public/textures/create/polished_cut_scorchia_slab.png new file mode 100644 index 00000000..2f28a27b Binary files /dev/null and b/public/textures/create/polished_cut_scorchia_slab.png differ diff --git a/public/textures/create/polished_cut_scorchia_stairs.png b/public/textures/create/polished_cut_scorchia_stairs.png new file mode 100644 index 00000000..c8a1efbc Binary files /dev/null and b/public/textures/create/polished_cut_scorchia_stairs.png differ diff --git a/public/textures/create/polished_cut_scorchia_wall.png b/public/textures/create/polished_cut_scorchia_wall.png new file mode 100644 index 00000000..60a7852c Binary files /dev/null and b/public/textures/create/polished_cut_scorchia_wall.png differ diff --git a/public/textures/create/polished_cut_scoria.png b/public/textures/create/polished_cut_scoria.png new file mode 100644 index 00000000..8c886bb7 Binary files /dev/null and b/public/textures/create/polished_cut_scoria.png differ diff --git a/public/textures/create/polished_cut_scoria_slab.png b/public/textures/create/polished_cut_scoria_slab.png new file mode 100644 index 00000000..4f8bface Binary files /dev/null and b/public/textures/create/polished_cut_scoria_slab.png differ diff --git a/public/textures/create/polished_cut_scoria_stairs.png b/public/textures/create/polished_cut_scoria_stairs.png new file mode 100644 index 00000000..9e101ecd Binary files /dev/null and b/public/textures/create/polished_cut_scoria_stairs.png differ diff --git a/public/textures/create/polished_cut_scoria_wall.png b/public/textures/create/polished_cut_scoria_wall.png new file mode 100644 index 00000000..b086d691 Binary files /dev/null and b/public/textures/create/polished_cut_scoria_wall.png differ diff --git a/public/textures/create/polished_cut_tuff.png b/public/textures/create/polished_cut_tuff.png new file mode 100644 index 00000000..8979b85c Binary files /dev/null and b/public/textures/create/polished_cut_tuff.png differ diff --git a/public/textures/create/polished_cut_tuff_slab.png b/public/textures/create/polished_cut_tuff_slab.png new file mode 100644 index 00000000..b0d4bab0 Binary files /dev/null and b/public/textures/create/polished_cut_tuff_slab.png differ diff --git a/public/textures/create/polished_cut_tuff_stairs.png b/public/textures/create/polished_cut_tuff_stairs.png new file mode 100644 index 00000000..b9657a59 Binary files /dev/null and b/public/textures/create/polished_cut_tuff_stairs.png differ diff --git a/public/textures/create/polished_cut_tuff_wall.png b/public/textures/create/polished_cut_tuff_wall.png new file mode 100644 index 00000000..364d801f Binary files /dev/null and b/public/textures/create/polished_cut_tuff_wall.png differ diff --git a/public/textures/create/polished_cut_veridium.png b/public/textures/create/polished_cut_veridium.png new file mode 100644 index 00000000..6db1918f Binary files /dev/null and b/public/textures/create/polished_cut_veridium.png differ diff --git a/public/textures/create/polished_cut_veridium_slab.png b/public/textures/create/polished_cut_veridium_slab.png new file mode 100644 index 00000000..551b703d Binary files /dev/null and b/public/textures/create/polished_cut_veridium_slab.png differ diff --git a/public/textures/create/polished_cut_veridium_stairs.png b/public/textures/create/polished_cut_veridium_stairs.png new file mode 100644 index 00000000..dfaef21b Binary files /dev/null and b/public/textures/create/polished_cut_veridium_stairs.png differ diff --git a/public/textures/create/polished_cut_veridium_wall.png b/public/textures/create/polished_cut_veridium_wall.png new file mode 100644 index 00000000..b12380b7 Binary files /dev/null and b/public/textures/create/polished_cut_veridium_wall.png differ diff --git a/public/textures/create/polished_rose_quartz.png b/public/textures/create/polished_rose_quartz.png new file mode 100644 index 00000000..f0e4b1ff Binary files /dev/null and b/public/textures/create/polished_rose_quartz.png differ diff --git a/public/textures/create/portable_fluid_interface.png b/public/textures/create/portable_fluid_interface.png new file mode 100644 index 00000000..84b33d4e Binary files /dev/null and b/public/textures/create/portable_fluid_interface.png differ diff --git a/public/textures/create/portable_storage_interface.png b/public/textures/create/portable_storage_interface.png new file mode 100644 index 00000000..9d5c2287 Binary files /dev/null and b/public/textures/create/portable_storage_interface.png differ diff --git a/public/textures/create/potato_cannon.png b/public/textures/create/potato_cannon.png new file mode 100644 index 00000000..de1422c7 Binary files /dev/null and b/public/textures/create/potato_cannon.png differ diff --git a/public/textures/create/powdered_obsidian.png b/public/textures/create/powdered_obsidian.png new file mode 100644 index 00000000..0ae83c3f Binary files /dev/null and b/public/textures/create/powdered_obsidian.png differ diff --git a/public/textures/create/powered_latch.png b/public/textures/create/powered_latch.png new file mode 100644 index 00000000..96487de7 Binary files /dev/null and b/public/textures/create/powered_latch.png differ diff --git a/public/textures/create/powered_toggle_latch.png b/public/textures/create/powered_toggle_latch.png new file mode 100644 index 00000000..5877520a Binary files /dev/null and b/public/textures/create/powered_toggle_latch.png differ diff --git a/public/textures/create/precision_mechanism.png b/public/textures/create/precision_mechanism.png new file mode 100644 index 00000000..e441f2e0 Binary files /dev/null and b/public/textures/create/precision_mechanism.png differ diff --git a/public/textures/create/propeller.png b/public/textures/create/propeller.png new file mode 100644 index 00000000..b47d4f3e Binary files /dev/null and b/public/textures/create/propeller.png differ diff --git a/public/textures/create/pulp.png b/public/textures/create/pulp.png new file mode 100644 index 00000000..c1ece36f Binary files /dev/null and b/public/textures/create/pulp.png differ diff --git a/public/textures/create/pulse_extender.png b/public/textures/create/pulse_extender.png new file mode 100644 index 00000000..6411c6c9 Binary files /dev/null and b/public/textures/create/pulse_extender.png differ diff --git a/public/textures/create/pulse_repeater.png b/public/textures/create/pulse_repeater.png new file mode 100644 index 00000000..212b3377 Binary files /dev/null and b/public/textures/create/pulse_repeater.png differ diff --git a/public/textures/create/pulse_timer.png b/public/textures/create/pulse_timer.png new file mode 100644 index 00000000..b522cdb3 Binary files /dev/null and b/public/textures/create/pulse_timer.png differ diff --git a/public/textures/create/radial_chassis.png b/public/textures/create/radial_chassis.png new file mode 100644 index 00000000..6108caaa Binary files /dev/null and b/public/textures/create/radial_chassis.png differ diff --git a/public/textures/create/railway_casing.png b/public/textures/create/railway_casing.png new file mode 100644 index 00000000..7195f7f9 Binary files /dev/null and b/public/textures/create/railway_casing.png differ diff --git a/public/textures/create/raw_zinc.png b/public/textures/create/raw_zinc.png new file mode 100644 index 00000000..b00917d8 Binary files /dev/null and b/public/textures/create/raw_zinc.png differ diff --git a/public/textures/create/raw_zinc_block.png b/public/textures/create/raw_zinc_block.png new file mode 100644 index 00000000..642185eb Binary files /dev/null and b/public/textures/create/raw_zinc_block.png differ diff --git a/public/textures/create/red_sand_paper.png b/public/textures/create/red_sand_paper.png new file mode 100644 index 00000000..0f74b4e9 Binary files /dev/null and b/public/textures/create/red_sand_paper.png differ diff --git a/public/textures/create/red_seat.png b/public/textures/create/red_seat.png new file mode 100644 index 00000000..1de555cf Binary files /dev/null and b/public/textures/create/red_seat.png differ diff --git a/public/textures/create/red_table_cloth.png b/public/textures/create/red_table_cloth.png new file mode 100644 index 00000000..573b90c7 Binary files /dev/null and b/public/textures/create/red_table_cloth.png differ diff --git a/public/textures/create/redstone_contact.png b/public/textures/create/redstone_contact.png new file mode 100644 index 00000000..a7227808 Binary files /dev/null and b/public/textures/create/redstone_contact.png differ diff --git a/public/textures/create/redstone_link.png b/public/textures/create/redstone_link.png new file mode 100644 index 00000000..db0f9a29 Binary files /dev/null and b/public/textures/create/redstone_link.png differ diff --git a/public/textures/create/redstone_requester.png b/public/textures/create/redstone_requester.png new file mode 100644 index 00000000..035b310e Binary files /dev/null and b/public/textures/create/redstone_requester.png differ diff --git a/public/textures/create/repackager.png b/public/textures/create/repackager.png new file mode 100644 index 00000000..fc9e8b01 Binary files /dev/null and b/public/textures/create/repackager.png differ diff --git a/public/textures/create/rope_pulley.png b/public/textures/create/rope_pulley.png new file mode 100644 index 00000000..23b73b4b Binary files /dev/null and b/public/textures/create/rope_pulley.png differ diff --git a/public/textures/create/rose_quartz.png b/public/textures/create/rose_quartz.png new file mode 100644 index 00000000..6f1c17a4 Binary files /dev/null and b/public/textures/create/rose_quartz.png differ diff --git a/public/textures/create/rose_quartz_block.png b/public/textures/create/rose_quartz_block.png new file mode 100644 index 00000000..d709857d Binary files /dev/null and b/public/textures/create/rose_quartz_block.png differ diff --git a/public/textures/create/rose_quartz_lamp.png b/public/textures/create/rose_quartz_lamp.png new file mode 100644 index 00000000..6423bc53 Binary files /dev/null and b/public/textures/create/rose_quartz_lamp.png differ diff --git a/public/textures/create/rose_quartz_tiles.png b/public/textures/create/rose_quartz_tiles.png new file mode 100644 index 00000000..76d2fe50 Binary files /dev/null and b/public/textures/create/rose_quartz_tiles.png differ diff --git a/public/textures/create/rotation_speed_controller.png b/public/textures/create/rotation_speed_controller.png new file mode 100644 index 00000000..4cb7c5c7 Binary files /dev/null and b/public/textures/create/rotation_speed_controller.png differ diff --git a/public/textures/create/sail_frame.png b/public/textures/create/sail_frame.png new file mode 100644 index 00000000..ae9848b0 Binary files /dev/null and b/public/textures/create/sail_frame.png differ diff --git a/public/textures/create/sand_paper.png b/public/textures/create/sand_paper.png new file mode 100644 index 00000000..c23a1668 Binary files /dev/null and b/public/textures/create/sand_paper.png differ diff --git a/public/textures/create/schedule.png b/public/textures/create/schedule.png new file mode 100644 index 00000000..28e982cb Binary files /dev/null and b/public/textures/create/schedule.png differ diff --git a/public/textures/create/schematic_and_quill.png b/public/textures/create/schematic_and_quill.png new file mode 100644 index 00000000..8b1499e5 Binary files /dev/null and b/public/textures/create/schematic_and_quill.png differ diff --git a/public/textures/create/schematic_table.png b/public/textures/create/schematic_table.png new file mode 100644 index 00000000..74baae09 Binary files /dev/null and b/public/textures/create/schematic_table.png differ diff --git a/public/textures/create/schematicannon.png b/public/textures/create/schematicannon.png new file mode 100644 index 00000000..ff7392a9 Binary files /dev/null and b/public/textures/create/schematicannon.png differ diff --git a/public/textures/create/scorchia.png b/public/textures/create/scorchia.png new file mode 100644 index 00000000..d01d3bbf Binary files /dev/null and b/public/textures/create/scorchia.png differ diff --git a/public/textures/create/scorchia_pillar.png b/public/textures/create/scorchia_pillar.png new file mode 100644 index 00000000..a84d14b5 Binary files /dev/null and b/public/textures/create/scorchia_pillar.png differ diff --git a/public/textures/create/scoria.png b/public/textures/create/scoria.png new file mode 100644 index 00000000..7227b0eb Binary files /dev/null and b/public/textures/create/scoria.png differ diff --git a/public/textures/create/scoria_pillar.png b/public/textures/create/scoria_pillar.png new file mode 100644 index 00000000..0a2bf057 Binary files /dev/null and b/public/textures/create/scoria_pillar.png differ diff --git a/public/textures/create/secondary_linear_chassis.png b/public/textures/create/secondary_linear_chassis.png new file mode 100644 index 00000000..dd0835f6 Binary files /dev/null and b/public/textures/create/secondary_linear_chassis.png differ diff --git a/public/textures/create/sequenced_gearshift.png b/public/textures/create/sequenced_gearshift.png new file mode 100644 index 00000000..7f76eabe Binary files /dev/null and b/public/textures/create/sequenced_gearshift.png differ diff --git a/public/textures/create/shaft.png b/public/textures/create/shaft.png new file mode 100644 index 00000000..b371625d Binary files /dev/null and b/public/textures/create/shaft.png differ diff --git a/public/textures/create/small_andesite_brick_slab.png b/public/textures/create/small_andesite_brick_slab.png new file mode 100644 index 00000000..c850f0a8 Binary files /dev/null and b/public/textures/create/small_andesite_brick_slab.png differ diff --git a/public/textures/create/small_andesite_brick_stairs.png b/public/textures/create/small_andesite_brick_stairs.png new file mode 100644 index 00000000..00d00ae0 Binary files /dev/null and b/public/textures/create/small_andesite_brick_stairs.png differ diff --git a/public/textures/create/small_andesite_brick_wall.png b/public/textures/create/small_andesite_brick_wall.png new file mode 100644 index 00000000..52dc6ff0 Binary files /dev/null and b/public/textures/create/small_andesite_brick_wall.png differ diff --git a/public/textures/create/small_andesite_bricks.png b/public/textures/create/small_andesite_bricks.png new file mode 100644 index 00000000..f005791a Binary files /dev/null and b/public/textures/create/small_andesite_bricks.png differ diff --git a/public/textures/create/small_asurine_brick_slab.png b/public/textures/create/small_asurine_brick_slab.png new file mode 100644 index 00000000..965457aa Binary files /dev/null and b/public/textures/create/small_asurine_brick_slab.png differ diff --git a/public/textures/create/small_asurine_brick_stairs.png b/public/textures/create/small_asurine_brick_stairs.png new file mode 100644 index 00000000..35eeaf00 Binary files /dev/null and b/public/textures/create/small_asurine_brick_stairs.png differ diff --git a/public/textures/create/small_asurine_brick_wall.png b/public/textures/create/small_asurine_brick_wall.png new file mode 100644 index 00000000..a21caa78 Binary files /dev/null and b/public/textures/create/small_asurine_brick_wall.png differ diff --git a/public/textures/create/small_asurine_bricks.png b/public/textures/create/small_asurine_bricks.png new file mode 100644 index 00000000..dd4ab52a Binary files /dev/null and b/public/textures/create/small_asurine_bricks.png differ diff --git a/public/textures/create/small_calcite_brick_slab.png b/public/textures/create/small_calcite_brick_slab.png new file mode 100644 index 00000000..0ec23ddb Binary files /dev/null and b/public/textures/create/small_calcite_brick_slab.png differ diff --git a/public/textures/create/small_calcite_brick_stairs.png b/public/textures/create/small_calcite_brick_stairs.png new file mode 100644 index 00000000..a612ec84 Binary files /dev/null and b/public/textures/create/small_calcite_brick_stairs.png differ diff --git a/public/textures/create/small_calcite_brick_wall.png b/public/textures/create/small_calcite_brick_wall.png new file mode 100644 index 00000000..11d18098 Binary files /dev/null and b/public/textures/create/small_calcite_brick_wall.png differ diff --git a/public/textures/create/small_calcite_bricks.png b/public/textures/create/small_calcite_bricks.png new file mode 100644 index 00000000..fe8afb26 Binary files /dev/null and b/public/textures/create/small_calcite_bricks.png differ diff --git a/public/textures/create/small_crimsite_brick_slab.png b/public/textures/create/small_crimsite_brick_slab.png new file mode 100644 index 00000000..b7777422 Binary files /dev/null and b/public/textures/create/small_crimsite_brick_slab.png differ diff --git a/public/textures/create/small_crimsite_brick_stairs.png b/public/textures/create/small_crimsite_brick_stairs.png new file mode 100644 index 00000000..52c18b3d Binary files /dev/null and b/public/textures/create/small_crimsite_brick_stairs.png differ diff --git a/public/textures/create/small_crimsite_brick_wall.png b/public/textures/create/small_crimsite_brick_wall.png new file mode 100644 index 00000000..532856b2 Binary files /dev/null and b/public/textures/create/small_crimsite_brick_wall.png differ diff --git a/public/textures/create/small_crimsite_bricks.png b/public/textures/create/small_crimsite_bricks.png new file mode 100644 index 00000000..58430303 Binary files /dev/null and b/public/textures/create/small_crimsite_bricks.png differ diff --git a/public/textures/create/small_deepslate_brick_slab.png b/public/textures/create/small_deepslate_brick_slab.png new file mode 100644 index 00000000..87434c6f Binary files /dev/null and b/public/textures/create/small_deepslate_brick_slab.png differ diff --git a/public/textures/create/small_deepslate_brick_stairs.png b/public/textures/create/small_deepslate_brick_stairs.png new file mode 100644 index 00000000..a33bb0fb Binary files /dev/null and b/public/textures/create/small_deepslate_brick_stairs.png differ diff --git a/public/textures/create/small_deepslate_brick_wall.png b/public/textures/create/small_deepslate_brick_wall.png new file mode 100644 index 00000000..ac5921b3 Binary files /dev/null and b/public/textures/create/small_deepslate_brick_wall.png differ diff --git a/public/textures/create/small_deepslate_bricks.png b/public/textures/create/small_deepslate_bricks.png new file mode 100644 index 00000000..09a4e210 Binary files /dev/null and b/public/textures/create/small_deepslate_bricks.png differ diff --git a/public/textures/create/small_diorite_brick_slab.png b/public/textures/create/small_diorite_brick_slab.png new file mode 100644 index 00000000..8ed0393c Binary files /dev/null and b/public/textures/create/small_diorite_brick_slab.png differ diff --git a/public/textures/create/small_diorite_brick_stairs.png b/public/textures/create/small_diorite_brick_stairs.png new file mode 100644 index 00000000..1469f727 Binary files /dev/null and b/public/textures/create/small_diorite_brick_stairs.png differ diff --git a/public/textures/create/small_diorite_brick_wall.png b/public/textures/create/small_diorite_brick_wall.png new file mode 100644 index 00000000..d7d347c4 Binary files /dev/null and b/public/textures/create/small_diorite_brick_wall.png differ diff --git a/public/textures/create/small_diorite_bricks.png b/public/textures/create/small_diorite_bricks.png new file mode 100644 index 00000000..afc80e4f Binary files /dev/null and b/public/textures/create/small_diorite_bricks.png differ diff --git a/public/textures/create/small_dripstone_brick_slab.png b/public/textures/create/small_dripstone_brick_slab.png new file mode 100644 index 00000000..5a6aaa5a Binary files /dev/null and b/public/textures/create/small_dripstone_brick_slab.png differ diff --git a/public/textures/create/small_dripstone_brick_stairs.png b/public/textures/create/small_dripstone_brick_stairs.png new file mode 100644 index 00000000..ff4885bc Binary files /dev/null and b/public/textures/create/small_dripstone_brick_stairs.png differ diff --git a/public/textures/create/small_dripstone_brick_wall.png b/public/textures/create/small_dripstone_brick_wall.png new file mode 100644 index 00000000..f9dac36f Binary files /dev/null and b/public/textures/create/small_dripstone_brick_wall.png differ diff --git a/public/textures/create/small_dripstone_bricks.png b/public/textures/create/small_dripstone_bricks.png new file mode 100644 index 00000000..ba0ea2ff Binary files /dev/null and b/public/textures/create/small_dripstone_bricks.png differ diff --git a/public/textures/create/small_granite_brick_slab.png b/public/textures/create/small_granite_brick_slab.png new file mode 100644 index 00000000..e6ef3e86 Binary files /dev/null and b/public/textures/create/small_granite_brick_slab.png differ diff --git a/public/textures/create/small_granite_brick_stairs.png b/public/textures/create/small_granite_brick_stairs.png new file mode 100644 index 00000000..6e6038f0 Binary files /dev/null and b/public/textures/create/small_granite_brick_stairs.png differ diff --git a/public/textures/create/small_granite_brick_wall.png b/public/textures/create/small_granite_brick_wall.png new file mode 100644 index 00000000..625c1dda Binary files /dev/null and b/public/textures/create/small_granite_brick_wall.png differ diff --git a/public/textures/create/small_granite_bricks.png b/public/textures/create/small_granite_bricks.png new file mode 100644 index 00000000..3e6fb167 Binary files /dev/null and b/public/textures/create/small_granite_bricks.png differ diff --git a/public/textures/create/small_limestone_brick_slab.png b/public/textures/create/small_limestone_brick_slab.png new file mode 100644 index 00000000..35f2221c Binary files /dev/null and b/public/textures/create/small_limestone_brick_slab.png differ diff --git a/public/textures/create/small_limestone_brick_stairs.png b/public/textures/create/small_limestone_brick_stairs.png new file mode 100644 index 00000000..b7a8d8a6 Binary files /dev/null and b/public/textures/create/small_limestone_brick_stairs.png differ diff --git a/public/textures/create/small_limestone_brick_wall.png b/public/textures/create/small_limestone_brick_wall.png new file mode 100644 index 00000000..36786152 Binary files /dev/null and b/public/textures/create/small_limestone_brick_wall.png differ diff --git a/public/textures/create/small_limestone_bricks.png b/public/textures/create/small_limestone_bricks.png new file mode 100644 index 00000000..69a1e332 Binary files /dev/null and b/public/textures/create/small_limestone_bricks.png differ diff --git a/public/textures/create/small_ochrum_brick_slab.png b/public/textures/create/small_ochrum_brick_slab.png new file mode 100644 index 00000000..19bda686 Binary files /dev/null and b/public/textures/create/small_ochrum_brick_slab.png differ diff --git a/public/textures/create/small_ochrum_brick_stairs.png b/public/textures/create/small_ochrum_brick_stairs.png new file mode 100644 index 00000000..39be608c Binary files /dev/null and b/public/textures/create/small_ochrum_brick_stairs.png differ diff --git a/public/textures/create/small_ochrum_brick_wall.png b/public/textures/create/small_ochrum_brick_wall.png new file mode 100644 index 00000000..cbe15dc5 Binary files /dev/null and b/public/textures/create/small_ochrum_brick_wall.png differ diff --git a/public/textures/create/small_ochrum_bricks.png b/public/textures/create/small_ochrum_bricks.png new file mode 100644 index 00000000..4de90b58 Binary files /dev/null and b/public/textures/create/small_ochrum_bricks.png differ diff --git a/public/textures/create/small_rose_quartz_tiles.png b/public/textures/create/small_rose_quartz_tiles.png new file mode 100644 index 00000000..fbbebbf2 Binary files /dev/null and b/public/textures/create/small_rose_quartz_tiles.png differ diff --git a/public/textures/create/small_scorchia_brick_slab.png b/public/textures/create/small_scorchia_brick_slab.png new file mode 100644 index 00000000..313aa656 Binary files /dev/null and b/public/textures/create/small_scorchia_brick_slab.png differ diff --git a/public/textures/create/small_scorchia_brick_stairs.png b/public/textures/create/small_scorchia_brick_stairs.png new file mode 100644 index 00000000..e0113db6 Binary files /dev/null and b/public/textures/create/small_scorchia_brick_stairs.png differ diff --git a/public/textures/create/small_scorchia_brick_wall.png b/public/textures/create/small_scorchia_brick_wall.png new file mode 100644 index 00000000..16717d25 Binary files /dev/null and b/public/textures/create/small_scorchia_brick_wall.png differ diff --git a/public/textures/create/small_scorchia_bricks.png b/public/textures/create/small_scorchia_bricks.png new file mode 100644 index 00000000..1ec91056 Binary files /dev/null and b/public/textures/create/small_scorchia_bricks.png differ diff --git a/public/textures/create/small_scoria_brick_slab.png b/public/textures/create/small_scoria_brick_slab.png new file mode 100644 index 00000000..ae0190e2 Binary files /dev/null and b/public/textures/create/small_scoria_brick_slab.png differ diff --git a/public/textures/create/small_scoria_brick_stairs.png b/public/textures/create/small_scoria_brick_stairs.png new file mode 100644 index 00000000..54428a6e Binary files /dev/null and b/public/textures/create/small_scoria_brick_stairs.png differ diff --git a/public/textures/create/small_scoria_brick_wall.png b/public/textures/create/small_scoria_brick_wall.png new file mode 100644 index 00000000..542a500b Binary files /dev/null and b/public/textures/create/small_scoria_brick_wall.png differ diff --git a/public/textures/create/small_scoria_bricks.png b/public/textures/create/small_scoria_bricks.png new file mode 100644 index 00000000..ed601962 Binary files /dev/null and b/public/textures/create/small_scoria_bricks.png differ diff --git a/public/textures/create/small_tuff_brick_slab.png b/public/textures/create/small_tuff_brick_slab.png new file mode 100644 index 00000000..d7c2bbf5 Binary files /dev/null and b/public/textures/create/small_tuff_brick_slab.png differ diff --git a/public/textures/create/small_tuff_brick_stairs.png b/public/textures/create/small_tuff_brick_stairs.png new file mode 100644 index 00000000..1d24f83e Binary files /dev/null and b/public/textures/create/small_tuff_brick_stairs.png differ diff --git a/public/textures/create/small_tuff_brick_wall.png b/public/textures/create/small_tuff_brick_wall.png new file mode 100644 index 00000000..875eca1d Binary files /dev/null and b/public/textures/create/small_tuff_brick_wall.png differ diff --git a/public/textures/create/small_tuff_bricks.png b/public/textures/create/small_tuff_bricks.png new file mode 100644 index 00000000..eac1c3e1 Binary files /dev/null and b/public/textures/create/small_tuff_bricks.png differ diff --git a/public/textures/create/small_veridium_brick_slab.png b/public/textures/create/small_veridium_brick_slab.png new file mode 100644 index 00000000..85639697 Binary files /dev/null and b/public/textures/create/small_veridium_brick_slab.png differ diff --git a/public/textures/create/small_veridium_brick_stairs.png b/public/textures/create/small_veridium_brick_stairs.png new file mode 100644 index 00000000..b4db5d75 Binary files /dev/null and b/public/textures/create/small_veridium_brick_stairs.png differ diff --git a/public/textures/create/small_veridium_brick_wall.png b/public/textures/create/small_veridium_brick_wall.png new file mode 100644 index 00000000..98bf28dc Binary files /dev/null and b/public/textures/create/small_veridium_brick_wall.png differ diff --git a/public/textures/create/small_veridium_bricks.png b/public/textures/create/small_veridium_bricks.png new file mode 100644 index 00000000..605346b8 Binary files /dev/null and b/public/textures/create/small_veridium_bricks.png differ diff --git a/public/textures/create/smart_chute.png b/public/textures/create/smart_chute.png new file mode 100644 index 00000000..f3f804c8 Binary files /dev/null and b/public/textures/create/smart_chute.png differ diff --git a/public/textures/create/smart_fluid_pipe.png b/public/textures/create/smart_fluid_pipe.png new file mode 100644 index 00000000..260b0f10 Binary files /dev/null and b/public/textures/create/smart_fluid_pipe.png differ diff --git a/public/textures/create/speedometer.png b/public/textures/create/speedometer.png new file mode 100644 index 00000000..69fdec71 Binary files /dev/null and b/public/textures/create/speedometer.png differ diff --git a/public/textures/create/spout.png b/public/textures/create/spout.png new file mode 100644 index 00000000..273016dc Binary files /dev/null and b/public/textures/create/spout.png differ diff --git a/public/textures/create/spruce_window.png b/public/textures/create/spruce_window.png new file mode 100644 index 00000000..632682b6 Binary files /dev/null and b/public/textures/create/spruce_window.png differ diff --git a/public/textures/create/spruce_window_pane.png b/public/textures/create/spruce_window_pane.png new file mode 100644 index 00000000..871d2188 Binary files /dev/null and b/public/textures/create/spruce_window_pane.png differ diff --git a/public/textures/create/steam_engine.png b/public/textures/create/steam_engine.png new file mode 100644 index 00000000..cd801cf0 Binary files /dev/null and b/public/textures/create/steam_engine.png differ diff --git a/public/textures/create/steam_whistle.png b/public/textures/create/steam_whistle.png new file mode 100644 index 00000000..4aeb8cd9 Binary files /dev/null and b/public/textures/create/steam_whistle.png differ diff --git a/public/textures/create/sticker.png b/public/textures/create/sticker.png new file mode 100644 index 00000000..884b0223 Binary files /dev/null and b/public/textures/create/sticker.png differ diff --git a/public/textures/create/sticky_mechanical_piston.png b/public/textures/create/sticky_mechanical_piston.png new file mode 100644 index 00000000..52679894 Binary files /dev/null and b/public/textures/create/sticky_mechanical_piston.png differ diff --git a/public/textures/create/stock_link.png b/public/textures/create/stock_link.png new file mode 100644 index 00000000..35477034 Binary files /dev/null and b/public/textures/create/stock_link.png differ diff --git a/public/textures/create/stock_ticker.png b/public/textures/create/stock_ticker.png new file mode 100644 index 00000000..4b5e733e Binary files /dev/null and b/public/textures/create/stock_ticker.png differ diff --git a/public/textures/create/stockpile_switch.png b/public/textures/create/stockpile_switch.png new file mode 100644 index 00000000..7204a385 Binary files /dev/null and b/public/textures/create/stockpile_switch.png differ diff --git a/public/textures/create/stressometer.png b/public/textures/create/stressometer.png new file mode 100644 index 00000000..bba35e07 Binary files /dev/null and b/public/textures/create/stressometer.png differ diff --git a/public/textures/create/sturdy_sheet.png b/public/textures/create/sturdy_sheet.png new file mode 100644 index 00000000..20ca6d5b Binary files /dev/null and b/public/textures/create/sturdy_sheet.png differ diff --git a/public/textures/create/super_glue.png b/public/textures/create/super_glue.png new file mode 100644 index 00000000..09dba998 Binary files /dev/null and b/public/textures/create/super_glue.png differ diff --git a/public/textures/create/sweet_roll.png b/public/textures/create/sweet_roll.png new file mode 100644 index 00000000..bb50a6ba Binary files /dev/null and b/public/textures/create/sweet_roll.png differ diff --git a/public/textures/create/tiled_glass.png b/public/textures/create/tiled_glass.png new file mode 100644 index 00000000..f6c0f5ad Binary files /dev/null and b/public/textures/create/tiled_glass.png differ diff --git a/public/textures/create/tiled_glass_pane.png b/public/textures/create/tiled_glass_pane.png new file mode 100644 index 00000000..d78cbf65 Binary files /dev/null and b/public/textures/create/tiled_glass_pane.png differ diff --git a/public/textures/create/track.png b/public/textures/create/track.png new file mode 100644 index 00000000..be5b0c96 Binary files /dev/null and b/public/textures/create/track.png differ diff --git a/public/textures/create/track_observer.png b/public/textures/create/track_observer.png new file mode 100644 index 00000000..14d301d9 Binary files /dev/null and b/public/textures/create/track_observer.png differ diff --git a/public/textures/create/track_signal.png b/public/textures/create/track_signal.png new file mode 100644 index 00000000..d07f327f Binary files /dev/null and b/public/textures/create/track_signal.png differ diff --git a/public/textures/create/track_station.png b/public/textures/create/track_station.png new file mode 100644 index 00000000..dc78b59a Binary files /dev/null and b/public/textures/create/track_station.png differ diff --git a/public/textures/create/train_door.png b/public/textures/create/train_door.png new file mode 100644 index 00000000..bcb40aaf Binary files /dev/null and b/public/textures/create/train_door.png differ diff --git a/public/textures/create/train_trapdoor.png b/public/textures/create/train_trapdoor.png new file mode 100644 index 00000000..53bb4c55 Binary files /dev/null and b/public/textures/create/train_trapdoor.png differ diff --git a/public/textures/create/transmitter.png b/public/textures/create/transmitter.png new file mode 100644 index 00000000..4163a822 Binary files /dev/null and b/public/textures/create/transmitter.png differ diff --git a/public/textures/create/tree_fertilizer.png b/public/textures/create/tree_fertilizer.png new file mode 100644 index 00000000..2de3800d Binary files /dev/null and b/public/textures/create/tree_fertilizer.png differ diff --git a/public/textures/create/tuff_pillar.png b/public/textures/create/tuff_pillar.png new file mode 100644 index 00000000..4ef30aa7 Binary files /dev/null and b/public/textures/create/tuff_pillar.png differ diff --git a/public/textures/create/turntable.png b/public/textures/create/turntable.png new file mode 100644 index 00000000..87b3d489 Binary files /dev/null and b/public/textures/create/turntable.png differ diff --git a/public/textures/create/veridium.png b/public/textures/create/veridium.png new file mode 100644 index 00000000..85e9e47f Binary files /dev/null and b/public/textures/create/veridium.png differ diff --git a/public/textures/create/veridium_pillar.png b/public/textures/create/veridium_pillar.png new file mode 100644 index 00000000..bf9a7268 Binary files /dev/null and b/public/textures/create/veridium_pillar.png differ diff --git a/public/textures/create/vertical_framed_glass.png b/public/textures/create/vertical_framed_glass.png new file mode 100644 index 00000000..7a4bafe2 Binary files /dev/null and b/public/textures/create/vertical_framed_glass.png differ diff --git a/public/textures/create/vertical_framed_glass_pane.png b/public/textures/create/vertical_framed_glass_pane.png new file mode 100644 index 00000000..888b31b8 Binary files /dev/null and b/public/textures/create/vertical_framed_glass_pane.png differ diff --git a/public/textures/create/vertical_gearbox.png b/public/textures/create/vertical_gearbox.png new file mode 100644 index 00000000..a1e5f5d2 Binary files /dev/null and b/public/textures/create/vertical_gearbox.png differ diff --git a/public/textures/create/wand_of_symmetry.png b/public/textures/create/wand_of_symmetry.png new file mode 100644 index 00000000..40251a8a Binary files /dev/null and b/public/textures/create/wand_of_symmetry.png differ diff --git a/public/textures/create/warped_window.png b/public/textures/create/warped_window.png new file mode 100644 index 00000000..4f088f69 Binary files /dev/null and b/public/textures/create/warped_window.png differ diff --git a/public/textures/create/warped_window_pane.png b/public/textures/create/warped_window_pane.png new file mode 100644 index 00000000..4704bf3f Binary files /dev/null and b/public/textures/create/warped_window_pane.png differ diff --git a/public/textures/create/water_wheel.png b/public/textures/create/water_wheel.png new file mode 100644 index 00000000..d1d15252 Binary files /dev/null and b/public/textures/create/water_wheel.png differ diff --git a/public/textures/create/waxed_copper_shingle_slab.png b/public/textures/create/waxed_copper_shingle_slab.png new file mode 100644 index 00000000..3f5a853c Binary files /dev/null and b/public/textures/create/waxed_copper_shingle_slab.png differ diff --git a/public/textures/create/waxed_copper_shingle_stairs.png b/public/textures/create/waxed_copper_shingle_stairs.png new file mode 100644 index 00000000..7ac53255 Binary files /dev/null and b/public/textures/create/waxed_copper_shingle_stairs.png differ diff --git a/public/textures/create/waxed_copper_shingles.png b/public/textures/create/waxed_copper_shingles.png new file mode 100644 index 00000000..6da0ce63 Binary files /dev/null and b/public/textures/create/waxed_copper_shingles.png differ diff --git a/public/textures/create/waxed_copper_tile_slab.png b/public/textures/create/waxed_copper_tile_slab.png new file mode 100644 index 00000000..5d3090f9 Binary files /dev/null and b/public/textures/create/waxed_copper_tile_slab.png differ diff --git a/public/textures/create/waxed_copper_tile_stairs.png b/public/textures/create/waxed_copper_tile_stairs.png new file mode 100644 index 00000000..1493bb57 Binary files /dev/null and b/public/textures/create/waxed_copper_tile_stairs.png differ diff --git a/public/textures/create/waxed_copper_tiles.png b/public/textures/create/waxed_copper_tiles.png new file mode 100644 index 00000000..8f102fad Binary files /dev/null and b/public/textures/create/waxed_copper_tiles.png differ diff --git a/public/textures/create/waxed_exposed_copper_shingle_slab.png b/public/textures/create/waxed_exposed_copper_shingle_slab.png new file mode 100644 index 00000000..dfbeea5c Binary files /dev/null and b/public/textures/create/waxed_exposed_copper_shingle_slab.png differ diff --git a/public/textures/create/waxed_exposed_copper_shingle_stairs.png b/public/textures/create/waxed_exposed_copper_shingle_stairs.png new file mode 100644 index 00000000..0bbda0fb Binary files /dev/null and b/public/textures/create/waxed_exposed_copper_shingle_stairs.png differ diff --git a/public/textures/create/waxed_exposed_copper_shingles.png b/public/textures/create/waxed_exposed_copper_shingles.png new file mode 100644 index 00000000..9440b338 Binary files /dev/null and b/public/textures/create/waxed_exposed_copper_shingles.png differ diff --git a/public/textures/create/waxed_exposed_copper_tile_slab.png b/public/textures/create/waxed_exposed_copper_tile_slab.png new file mode 100644 index 00000000..f84f2604 Binary files /dev/null and b/public/textures/create/waxed_exposed_copper_tile_slab.png differ diff --git a/public/textures/create/waxed_exposed_copper_tile_stairs.png b/public/textures/create/waxed_exposed_copper_tile_stairs.png new file mode 100644 index 00000000..3300a270 Binary files /dev/null and b/public/textures/create/waxed_exposed_copper_tile_stairs.png differ diff --git a/public/textures/create/waxed_exposed_copper_tiles.png b/public/textures/create/waxed_exposed_copper_tiles.png new file mode 100644 index 00000000..4c19ee28 Binary files /dev/null and b/public/textures/create/waxed_exposed_copper_tiles.png differ diff --git a/public/textures/create/waxed_oxidized_copper_shingle_slab.png b/public/textures/create/waxed_oxidized_copper_shingle_slab.png new file mode 100644 index 00000000..66957dcc Binary files /dev/null and b/public/textures/create/waxed_oxidized_copper_shingle_slab.png differ diff --git a/public/textures/create/waxed_oxidized_copper_shingle_stairs.png b/public/textures/create/waxed_oxidized_copper_shingle_stairs.png new file mode 100644 index 00000000..79ece7a6 Binary files /dev/null and b/public/textures/create/waxed_oxidized_copper_shingle_stairs.png differ diff --git a/public/textures/create/waxed_oxidized_copper_shingles.png b/public/textures/create/waxed_oxidized_copper_shingles.png new file mode 100644 index 00000000..034b6841 Binary files /dev/null and b/public/textures/create/waxed_oxidized_copper_shingles.png differ diff --git a/public/textures/create/waxed_oxidized_copper_tile_slab.png b/public/textures/create/waxed_oxidized_copper_tile_slab.png new file mode 100644 index 00000000..35323db7 Binary files /dev/null and b/public/textures/create/waxed_oxidized_copper_tile_slab.png differ diff --git a/public/textures/create/waxed_oxidized_copper_tile_stairs.png b/public/textures/create/waxed_oxidized_copper_tile_stairs.png new file mode 100644 index 00000000..64f7c69f Binary files /dev/null and b/public/textures/create/waxed_oxidized_copper_tile_stairs.png differ diff --git a/public/textures/create/waxed_oxidized_copper_tiles.png b/public/textures/create/waxed_oxidized_copper_tiles.png new file mode 100644 index 00000000..cde16509 Binary files /dev/null and b/public/textures/create/waxed_oxidized_copper_tiles.png differ diff --git a/public/textures/create/waxed_weathered_copper_shingle_slab.png b/public/textures/create/waxed_weathered_copper_shingle_slab.png new file mode 100644 index 00000000..f54dbc0e Binary files /dev/null and b/public/textures/create/waxed_weathered_copper_shingle_slab.png differ diff --git a/public/textures/create/waxed_weathered_copper_shingle_stairs.png b/public/textures/create/waxed_weathered_copper_shingle_stairs.png new file mode 100644 index 00000000..5d0537b4 Binary files /dev/null and b/public/textures/create/waxed_weathered_copper_shingle_stairs.png differ diff --git a/public/textures/create/waxed_weathered_copper_shingles.png b/public/textures/create/waxed_weathered_copper_shingles.png new file mode 100644 index 00000000..4def1f62 Binary files /dev/null and b/public/textures/create/waxed_weathered_copper_shingles.png differ diff --git a/public/textures/create/waxed_weathered_copper_tile_slab.png b/public/textures/create/waxed_weathered_copper_tile_slab.png new file mode 100644 index 00000000..4443ab6a Binary files /dev/null and b/public/textures/create/waxed_weathered_copper_tile_slab.png differ diff --git a/public/textures/create/waxed_weathered_copper_tile_stairs.png b/public/textures/create/waxed_weathered_copper_tile_stairs.png new file mode 100644 index 00000000..af7815a6 Binary files /dev/null and b/public/textures/create/waxed_weathered_copper_tile_stairs.png differ diff --git a/public/textures/create/waxed_weathered_copper_tiles.png b/public/textures/create/waxed_weathered_copper_tiles.png new file mode 100644 index 00000000..9ff66fea Binary files /dev/null and b/public/textures/create/waxed_weathered_copper_tiles.png differ diff --git a/public/textures/create/weathered_copper_shingle_slab.png b/public/textures/create/weathered_copper_shingle_slab.png new file mode 100644 index 00000000..f54dbc0e Binary files /dev/null and b/public/textures/create/weathered_copper_shingle_slab.png differ diff --git a/public/textures/create/weathered_copper_shingle_stairs.png b/public/textures/create/weathered_copper_shingle_stairs.png new file mode 100644 index 00000000..5d0537b4 Binary files /dev/null and b/public/textures/create/weathered_copper_shingle_stairs.png differ diff --git a/public/textures/create/weathered_copper_shingles.png b/public/textures/create/weathered_copper_shingles.png new file mode 100644 index 00000000..4def1f62 Binary files /dev/null and b/public/textures/create/weathered_copper_shingles.png differ diff --git a/public/textures/create/weathered_copper_tile_slab.png b/public/textures/create/weathered_copper_tile_slab.png new file mode 100644 index 00000000..4443ab6a Binary files /dev/null and b/public/textures/create/weathered_copper_tile_slab.png differ diff --git a/public/textures/create/weathered_copper_tile_stairs.png b/public/textures/create/weathered_copper_tile_stairs.png new file mode 100644 index 00000000..af7815a6 Binary files /dev/null and b/public/textures/create/weathered_copper_tile_stairs.png differ diff --git a/public/textures/create/weathered_copper_tiles.png b/public/textures/create/weathered_copper_tiles.png new file mode 100644 index 00000000..9ff66fea Binary files /dev/null and b/public/textures/create/weathered_copper_tiles.png differ diff --git a/public/textures/create/weathered_iron_block.png b/public/textures/create/weathered_iron_block.png new file mode 100644 index 00000000..0246facd Binary files /dev/null and b/public/textures/create/weathered_iron_block.png differ diff --git a/public/textures/create/weathered_iron_window.png b/public/textures/create/weathered_iron_window.png new file mode 100644 index 00000000..cdc685a6 Binary files /dev/null and b/public/textures/create/weathered_iron_window.png differ diff --git a/public/textures/create/weathered_iron_window_pane.png b/public/textures/create/weathered_iron_window_pane.png new file mode 100644 index 00000000..d814f444 Binary files /dev/null and b/public/textures/create/weathered_iron_window_pane.png differ diff --git a/public/textures/create/weighted_ejector.png b/public/textures/create/weighted_ejector.png new file mode 100644 index 00000000..a78b36f3 Binary files /dev/null and b/public/textures/create/weighted_ejector.png differ diff --git a/public/textures/create/wheat_flour.png b/public/textures/create/wheat_flour.png new file mode 100644 index 00000000..64fffbc7 Binary files /dev/null and b/public/textures/create/wheat_flour.png differ diff --git a/public/textures/create/whisk.png b/public/textures/create/whisk.png new file mode 100644 index 00000000..d38b7e3b Binary files /dev/null and b/public/textures/create/whisk.png differ diff --git a/public/textures/create/white_postbox.png b/public/textures/create/white_postbox.png new file mode 100644 index 00000000..81086823 Binary files /dev/null and b/public/textures/create/white_postbox.png differ diff --git a/public/textures/create/white_sail.png b/public/textures/create/white_sail.png new file mode 100644 index 00000000..19599811 Binary files /dev/null and b/public/textures/create/white_sail.png differ diff --git a/public/textures/create/windmill_bearing.png b/public/textures/create/windmill_bearing.png new file mode 100644 index 00000000..f12eb7f0 Binary files /dev/null and b/public/textures/create/windmill_bearing.png differ diff --git a/public/textures/create/wooden_bracket.png b/public/textures/create/wooden_bracket.png new file mode 100644 index 00000000..8c7b3b80 Binary files /dev/null and b/public/textures/create/wooden_bracket.png differ diff --git a/public/textures/create/wrench.png b/public/textures/create/wrench.png new file mode 100644 index 00000000..6000b91a Binary files /dev/null and b/public/textures/create/wrench.png differ diff --git a/public/textures/create/zinc_block.png b/public/textures/create/zinc_block.png new file mode 100644 index 00000000..a2b73762 Binary files /dev/null and b/public/textures/create/zinc_block.png differ diff --git a/public/textures/create/zinc_ingot.png b/public/textures/create/zinc_ingot.png new file mode 100644 index 00000000..54957983 Binary files /dev/null and b/public/textures/create/zinc_ingot.png differ diff --git a/public/textures/create/zinc_nugget.png b/public/textures/create/zinc_nugget.png new file mode 100644 index 00000000..69037227 Binary files /dev/null and b/public/textures/create/zinc_nugget.png differ diff --git a/public/textures/create/zinc_ore.png b/public/textures/create/zinc_ore.png new file mode 100644 index 00000000..129bfaca Binary files /dev/null and b/public/textures/create/zinc_ore.png differ diff --git a/public/textures/create_connected/brake.png b/public/textures/create_connected/brake.png new file mode 100644 index 00000000..2a6e5ab1 Binary files /dev/null and b/public/textures/create_connected/brake.png differ diff --git a/public/textures/create_connected/brass_gearbox.png b/public/textures/create_connected/brass_gearbox.png new file mode 100644 index 00000000..324a5e02 Binary files /dev/null and b/public/textures/create_connected/brass_gearbox.png differ diff --git a/public/textures/create_connected/centrifugal_clutch.png b/public/textures/create_connected/centrifugal_clutch.png new file mode 100644 index 00000000..1a920354 Binary files /dev/null and b/public/textures/create_connected/centrifugal_clutch.png differ diff --git a/public/textures/create_connected/charged_kinetic_battery.png b/public/textures/create_connected/charged_kinetic_battery.png new file mode 100644 index 00000000..a87e97a7 Binary files /dev/null and b/public/textures/create_connected/charged_kinetic_battery.png differ diff --git a/public/textures/create_connected/control_chip.png b/public/textures/create_connected/control_chip.png new file mode 100644 index 00000000..3a6c5cbc Binary files /dev/null and b/public/textures/create_connected/control_chip.png differ diff --git a/public/textures/create_connected/copycat_beam.png b/public/textures/create_connected/copycat_beam.png new file mode 100644 index 00000000..6cc385ee Binary files /dev/null and b/public/textures/create_connected/copycat_beam.png differ diff --git a/public/textures/create_connected/copycat_block.png b/public/textures/create_connected/copycat_block.png new file mode 100644 index 00000000..699e0e21 Binary files /dev/null and b/public/textures/create_connected/copycat_block.png differ diff --git a/public/textures/create_connected/copycat_board.png b/public/textures/create_connected/copycat_board.png new file mode 100644 index 00000000..73510054 Binary files /dev/null and b/public/textures/create_connected/copycat_board.png differ diff --git a/public/textures/create_connected/copycat_box.png b/public/textures/create_connected/copycat_box.png new file mode 100644 index 00000000..80dcb757 Binary files /dev/null and b/public/textures/create_connected/copycat_box.png differ diff --git a/public/textures/create_connected/copycat_catwalk.png b/public/textures/create_connected/copycat_catwalk.png new file mode 100644 index 00000000..068bb55b Binary files /dev/null and b/public/textures/create_connected/copycat_catwalk.png differ diff --git a/public/textures/create_connected/copycat_fence.png b/public/textures/create_connected/copycat_fence.png new file mode 100644 index 00000000..fcefeebf Binary files /dev/null and b/public/textures/create_connected/copycat_fence.png differ diff --git a/public/textures/create_connected/copycat_fence_gate.png b/public/textures/create_connected/copycat_fence_gate.png new file mode 100644 index 00000000..62f9afb5 Binary files /dev/null and b/public/textures/create_connected/copycat_fence_gate.png differ diff --git a/public/textures/create_connected/copycat_slab.png b/public/textures/create_connected/copycat_slab.png new file mode 100644 index 00000000..4a3480e3 Binary files /dev/null and b/public/textures/create_connected/copycat_slab.png differ diff --git a/public/textures/create_connected/copycat_stairs.png b/public/textures/create_connected/copycat_stairs.png new file mode 100644 index 00000000..996eadb8 Binary files /dev/null and b/public/textures/create_connected/copycat_stairs.png differ diff --git a/public/textures/create_connected/copycat_vertical_step.png b/public/textures/create_connected/copycat_vertical_step.png new file mode 100644 index 00000000..1502f734 Binary files /dev/null and b/public/textures/create_connected/copycat_vertical_step.png differ diff --git a/public/textures/create_connected/copycat_wall.png b/public/textures/create_connected/copycat_wall.png new file mode 100644 index 00000000..89d81ec2 Binary files /dev/null and b/public/textures/create_connected/copycat_wall.png differ diff --git a/public/textures/create_connected/crank_wheel.png b/public/textures/create_connected/crank_wheel.png new file mode 100644 index 00000000..31f0fa25 Binary files /dev/null and b/public/textures/create_connected/crank_wheel.png differ diff --git a/public/textures/create_connected/creative_fluid_vessel.png b/public/textures/create_connected/creative_fluid_vessel.png new file mode 100644 index 00000000..3242cb73 Binary files /dev/null and b/public/textures/create_connected/creative_fluid_vessel.png differ diff --git a/public/textures/create_connected/cross_connector.png b/public/textures/create_connected/cross_connector.png new file mode 100644 index 00000000..3205effe Binary files /dev/null and b/public/textures/create_connected/cross_connector.png differ diff --git a/public/textures/create_connected/empty_fan_catalyst.png b/public/textures/create_connected/empty_fan_catalyst.png new file mode 100644 index 00000000..36193392 Binary files /dev/null and b/public/textures/create_connected/empty_fan_catalyst.png differ diff --git a/public/textures/create_connected/encased_chain_cogwheel.png b/public/textures/create_connected/encased_chain_cogwheel.png new file mode 100644 index 00000000..db807589 Binary files /dev/null and b/public/textures/create_connected/encased_chain_cogwheel.png differ diff --git a/public/textures/create_connected/fan_blasting_catalyst.png b/public/textures/create_connected/fan_blasting_catalyst.png new file mode 100644 index 00000000..ac07ee91 Binary files /dev/null and b/public/textures/create_connected/fan_blasting_catalyst.png differ diff --git a/public/textures/create_connected/fan_ending_catalyst_dragon_head.png b/public/textures/create_connected/fan_ending_catalyst_dragon_head.png new file mode 100644 index 00000000..fff5d8fd Binary files /dev/null and b/public/textures/create_connected/fan_ending_catalyst_dragon_head.png differ diff --git a/public/textures/create_connected/fan_ending_catalyst_dragons_breath.png b/public/textures/create_connected/fan_ending_catalyst_dragons_breath.png new file mode 100644 index 00000000..7ecad9d3 Binary files /dev/null and b/public/textures/create_connected/fan_ending_catalyst_dragons_breath.png differ diff --git a/public/textures/create_connected/fan_freezing_catalyst.png b/public/textures/create_connected/fan_freezing_catalyst.png new file mode 100644 index 00000000..c68bebd0 Binary files /dev/null and b/public/textures/create_connected/fan_freezing_catalyst.png differ diff --git a/public/textures/create_connected/fan_haunting_catalyst.png b/public/textures/create_connected/fan_haunting_catalyst.png new file mode 100644 index 00000000..0544b907 Binary files /dev/null and b/public/textures/create_connected/fan_haunting_catalyst.png differ diff --git a/public/textures/create_connected/fan_sanding_catalyst.png b/public/textures/create_connected/fan_sanding_catalyst.png new file mode 100644 index 00000000..9d7d3322 Binary files /dev/null and b/public/textures/create_connected/fan_sanding_catalyst.png differ diff --git a/public/textures/create_connected/fan_smoking_catalyst.png b/public/textures/create_connected/fan_smoking_catalyst.png new file mode 100644 index 00000000..7135cc37 Binary files /dev/null and b/public/textures/create_connected/fan_smoking_catalyst.png differ diff --git a/public/textures/create_connected/fan_splashing_catalyst.png b/public/textures/create_connected/fan_splashing_catalyst.png new file mode 100644 index 00000000..ae991c5f Binary files /dev/null and b/public/textures/create_connected/fan_splashing_catalyst.png differ diff --git a/public/textures/create_connected/fluid_vessel.png b/public/textures/create_connected/fluid_vessel.png new file mode 100644 index 00000000..939c0b83 Binary files /dev/null and b/public/textures/create_connected/fluid_vessel.png differ diff --git a/public/textures/create_connected/freewheel_clutch.png b/public/textures/create_connected/freewheel_clutch.png new file mode 100644 index 00000000..7c1e7d6d Binary files /dev/null and b/public/textures/create_connected/freewheel_clutch.png differ diff --git a/public/textures/create_connected/inventory_access_port.png b/public/textures/create_connected/inventory_access_port.png new file mode 100644 index 00000000..638a9002 Binary files /dev/null and b/public/textures/create_connected/inventory_access_port.png differ diff --git a/public/textures/create_connected/inventory_bridge.png b/public/textures/create_connected/inventory_bridge.png new file mode 100644 index 00000000..ae12ecb4 Binary files /dev/null and b/public/textures/create_connected/inventory_bridge.png differ diff --git a/public/textures/create_connected/inverted_clutch.png b/public/textures/create_connected/inverted_clutch.png new file mode 100644 index 00000000..6ccee985 Binary files /dev/null and b/public/textures/create_connected/inverted_clutch.png differ diff --git a/public/textures/create_connected/inverted_gearshift.png b/public/textures/create_connected/inverted_gearshift.png new file mode 100644 index 00000000..222bbfdb Binary files /dev/null and b/public/textures/create_connected/inverted_gearshift.png differ diff --git a/public/textures/create_connected/item_silo.png b/public/textures/create_connected/item_silo.png new file mode 100644 index 00000000..568da6a9 Binary files /dev/null and b/public/textures/create_connected/item_silo.png differ diff --git a/public/textures/create_connected/kinetic_battery.png b/public/textures/create_connected/kinetic_battery.png new file mode 100644 index 00000000..88ce01f9 Binary files /dev/null and b/public/textures/create_connected/kinetic_battery.png differ diff --git a/public/textures/create_connected/kinetic_bridge.png b/public/textures/create_connected/kinetic_bridge.png new file mode 100644 index 00000000..48046971 Binary files /dev/null and b/public/textures/create_connected/kinetic_bridge.png differ diff --git a/public/textures/create_connected/large_crank_wheel.png b/public/textures/create_connected/large_crank_wheel.png new file mode 100644 index 00000000..5952286d Binary files /dev/null and b/public/textures/create_connected/large_crank_wheel.png differ diff --git a/public/textures/create_connected/linked_transmitter.png b/public/textures/create_connected/linked_transmitter.png new file mode 100644 index 00000000..07ef0767 Binary files /dev/null and b/public/textures/create_connected/linked_transmitter.png differ diff --git a/public/textures/create_connected/music_disc_elevator.png b/public/textures/create_connected/music_disc_elevator.png new file mode 100644 index 00000000..41d31f97 Binary files /dev/null and b/public/textures/create_connected/music_disc_elevator.png differ diff --git a/public/textures/create_connected/music_disc_interlude.png b/public/textures/create_connected/music_disc_interlude.png new file mode 100644 index 00000000..503a0eae Binary files /dev/null and b/public/textures/create_connected/music_disc_interlude.png differ diff --git a/public/textures/create_connected/overstress_clutch.png b/public/textures/create_connected/overstress_clutch.png new file mode 100644 index 00000000..14cfbd4f Binary files /dev/null and b/public/textures/create_connected/overstress_clutch.png differ diff --git a/public/textures/create_connected/parallel_gearbox.png b/public/textures/create_connected/parallel_gearbox.png new file mode 100644 index 00000000..bcae9945 Binary files /dev/null and b/public/textures/create_connected/parallel_gearbox.png differ diff --git a/public/textures/create_connected/redstone_link_wildcard.png b/public/textures/create_connected/redstone_link_wildcard.png new file mode 100644 index 00000000..924aadd3 Binary files /dev/null and b/public/textures/create_connected/redstone_link_wildcard.png differ diff --git a/public/textures/create_connected/sequenced_pulse_generator.png b/public/textures/create_connected/sequenced_pulse_generator.png new file mode 100644 index 00000000..4fb2cf09 Binary files /dev/null and b/public/textures/create_connected/sequenced_pulse_generator.png differ diff --git a/public/textures/create_connected/shear_pin.png b/public/textures/create_connected/shear_pin.png new file mode 100644 index 00000000..e92b578d Binary files /dev/null and b/public/textures/create_connected/shear_pin.png differ diff --git a/public/textures/create_connected/six_way_gearbox.png b/public/textures/create_connected/six_way_gearbox.png new file mode 100644 index 00000000..35889adc Binary files /dev/null and b/public/textures/create_connected/six_way_gearbox.png differ diff --git a/public/textures/create_connected/vertical_brass_gearbox.png b/public/textures/create_connected/vertical_brass_gearbox.png new file mode 100644 index 00000000..b50b492f Binary files /dev/null and b/public/textures/create_connected/vertical_brass_gearbox.png differ diff --git a/public/textures/create_connected/vertical_parallel_gearbox.png b/public/textures/create_connected/vertical_parallel_gearbox.png new file mode 100644 index 00000000..672f78bf Binary files /dev/null and b/public/textures/create_connected/vertical_parallel_gearbox.png differ diff --git a/public/textures/create_connected/vertical_six_way_gearbox.png b/public/textures/create_connected/vertical_six_way_gearbox.png new file mode 100644 index 00000000..155238ff Binary files /dev/null and b/public/textures/create_connected/vertical_six_way_gearbox.png differ diff --git a/public/textures/create_dragons_plus/black_dye_bucket.png b/public/textures/create_dragons_plus/black_dye_bucket.png new file mode 100644 index 00000000..e1ecbc3f Binary files /dev/null and b/public/textures/create_dragons_plus/black_dye_bucket.png differ diff --git a/public/textures/create_dragons_plus/blaze_upgrade_smithing_template.png b/public/textures/create_dragons_plus/blaze_upgrade_smithing_template.png new file mode 100644 index 00000000..65058ac4 Binary files /dev/null and b/public/textures/create_dragons_plus/blaze_upgrade_smithing_template.png differ diff --git a/public/textures/create_dragons_plus/blue_dye_bucket.png b/public/textures/create_dragons_plus/blue_dye_bucket.png new file mode 100644 index 00000000..49fb5d70 Binary files /dev/null and b/public/textures/create_dragons_plus/blue_dye_bucket.png differ diff --git a/public/textures/create_dragons_plus/brown_dye_bucket.png b/public/textures/create_dragons_plus/brown_dye_bucket.png new file mode 100644 index 00000000..e5d829fb Binary files /dev/null and b/public/textures/create_dragons_plus/brown_dye_bucket.png differ diff --git a/public/textures/create_dragons_plus/cyan_dye_bucket.png b/public/textures/create_dragons_plus/cyan_dye_bucket.png new file mode 100644 index 00000000..9603995e Binary files /dev/null and b/public/textures/create_dragons_plus/cyan_dye_bucket.png differ diff --git a/public/textures/create_dragons_plus/dragon_breath_bucket.png b/public/textures/create_dragons_plus/dragon_breath_bucket.png new file mode 100644 index 00000000..23474478 Binary files /dev/null and b/public/textures/create_dragons_plus/dragon_breath_bucket.png differ diff --git a/public/textures/create_dragons_plus/fluid_hatch.png b/public/textures/create_dragons_plus/fluid_hatch.png new file mode 100644 index 00000000..a57d1bf9 Binary files /dev/null and b/public/textures/create_dragons_plus/fluid_hatch.png differ diff --git a/public/textures/create_dragons_plus/gray_dye_bucket.png b/public/textures/create_dragons_plus/gray_dye_bucket.png new file mode 100644 index 00000000..a4184a1e Binary files /dev/null and b/public/textures/create_dragons_plus/gray_dye_bucket.png differ diff --git a/public/textures/create_dragons_plus/green_dye_bucket.png b/public/textures/create_dragons_plus/green_dye_bucket.png new file mode 100644 index 00000000..0e3a37f4 Binary files /dev/null and b/public/textures/create_dragons_plus/green_dye_bucket.png differ diff --git a/public/textures/create_dragons_plus/light_blue_dye_bucket.png b/public/textures/create_dragons_plus/light_blue_dye_bucket.png new file mode 100644 index 00000000..4709f4a0 Binary files /dev/null and b/public/textures/create_dragons_plus/light_blue_dye_bucket.png differ diff --git a/public/textures/create_dragons_plus/light_gray_dye_bucket.png b/public/textures/create_dragons_plus/light_gray_dye_bucket.png new file mode 100644 index 00000000..5e6f10c6 Binary files /dev/null and b/public/textures/create_dragons_plus/light_gray_dye_bucket.png differ diff --git a/public/textures/create_dragons_plus/lime_dye_bucket.png b/public/textures/create_dragons_plus/lime_dye_bucket.png new file mode 100644 index 00000000..017a6942 Binary files /dev/null and b/public/textures/create_dragons_plus/lime_dye_bucket.png differ diff --git a/public/textures/create_dragons_plus/magenta_dye_bucket.png b/public/textures/create_dragons_plus/magenta_dye_bucket.png new file mode 100644 index 00000000..f2bfeaa3 Binary files /dev/null and b/public/textures/create_dragons_plus/magenta_dye_bucket.png differ diff --git a/public/textures/create_dragons_plus/orange_dye_bucket.png b/public/textures/create_dragons_plus/orange_dye_bucket.png new file mode 100644 index 00000000..250b4611 Binary files /dev/null and b/public/textures/create_dragons_plus/orange_dye_bucket.png differ diff --git a/public/textures/create_dragons_plus/pink_dye_bucket.png b/public/textures/create_dragons_plus/pink_dye_bucket.png new file mode 100644 index 00000000..9041d6d6 Binary files /dev/null and b/public/textures/create_dragons_plus/pink_dye_bucket.png differ diff --git a/public/textures/create_dragons_plus/purple_dye_bucket.png b/public/textures/create_dragons_plus/purple_dye_bucket.png new file mode 100644 index 00000000..7e5f2613 Binary files /dev/null and b/public/textures/create_dragons_plus/purple_dye_bucket.png differ diff --git a/public/textures/create_dragons_plus/red_dye_bucket.png b/public/textures/create_dragons_plus/red_dye_bucket.png new file mode 100644 index 00000000..8f4a654a Binary files /dev/null and b/public/textures/create_dragons_plus/red_dye_bucket.png differ diff --git a/public/textures/create_dragons_plus/white_dye_bucket.png b/public/textures/create_dragons_plus/white_dye_bucket.png new file mode 100644 index 00000000..f3fd38a6 Binary files /dev/null and b/public/textures/create_dragons_plus/white_dye_bucket.png differ diff --git a/public/textures/create_dragons_plus/yellow_dye_bucket.png b/public/textures/create_dragons_plus/yellow_dye_bucket.png new file mode 100644 index 00000000..fb709337 Binary files /dev/null and b/public/textures/create_dragons_plus/yellow_dye_bucket.png differ diff --git a/public/textures/create_enchantment_industry/blaze_enchanter.png b/public/textures/create_enchantment_industry/blaze_enchanter.png new file mode 100644 index 00000000..5e2752ef Binary files /dev/null and b/public/textures/create_enchantment_industry/blaze_enchanter.png differ diff --git a/public/textures/create_enchantment_industry/blaze_forger.png b/public/textures/create_enchantment_industry/blaze_forger.png new file mode 100644 index 00000000..d8b274fe Binary files /dev/null and b/public/textures/create_enchantment_industry/blaze_forger.png differ diff --git a/public/textures/create_enchantment_industry/enchanting_template.png b/public/textures/create_enchantment_industry/enchanting_template.png new file mode 100644 index 00000000..bfb543e5 Binary files /dev/null and b/public/textures/create_enchantment_industry/enchanting_template.png differ diff --git a/public/textures/create_enchantment_industry/experience_bucket.png b/public/textures/create_enchantment_industry/experience_bucket.png new file mode 100644 index 00000000..780c445f Binary files /dev/null and b/public/textures/create_enchantment_industry/experience_bucket.png differ diff --git a/public/textures/create_enchantment_industry/experience_cake.png b/public/textures/create_enchantment_industry/experience_cake.png new file mode 100644 index 00000000..68189d3b Binary files /dev/null and b/public/textures/create_enchantment_industry/experience_cake.png differ diff --git a/public/textures/create_enchantment_industry/experience_cake_slice.png b/public/textures/create_enchantment_industry/experience_cake_slice.png new file mode 100644 index 00000000..3d45b219 Binary files /dev/null and b/public/textures/create_enchantment_industry/experience_cake_slice.png differ diff --git a/public/textures/create_enchantment_industry/experience_hatch.png b/public/textures/create_enchantment_industry/experience_hatch.png new file mode 100644 index 00000000..4c55919a Binary files /dev/null and b/public/textures/create_enchantment_industry/experience_hatch.png differ diff --git a/public/textures/create_enchantment_industry/experience_lantern.png b/public/textures/create_enchantment_industry/experience_lantern.png new file mode 100644 index 00000000..a7ec2e36 Binary files /dev/null and b/public/textures/create_enchantment_industry/experience_lantern.png differ diff --git a/public/textures/create_enchantment_industry/mechanical_grindstone.png b/public/textures/create_enchantment_industry/mechanical_grindstone.png new file mode 100644 index 00000000..acf57ce5 Binary files /dev/null and b/public/textures/create_enchantment_industry/mechanical_grindstone.png differ diff --git a/public/textures/create_enchantment_industry/printer.png b/public/textures/create_enchantment_industry/printer.png new file mode 100644 index 00000000..6922b5dd Binary files /dev/null and b/public/textures/create_enchantment_industry/printer.png differ diff --git a/public/textures/create_enchantment_industry/super_enchanting_template.png b/public/textures/create_enchantment_industry/super_enchanting_template.png new file mode 100644 index 00000000..0ce77257 Binary files /dev/null and b/public/textures/create_enchantment_industry/super_enchanting_template.png differ diff --git a/public/textures/create_enchantment_industry/super_experience_block.png b/public/textures/create_enchantment_industry/super_experience_block.png new file mode 100644 index 00000000..eaa9ad58 Binary files /dev/null and b/public/textures/create_enchantment_industry/super_experience_block.png differ diff --git a/public/textures/create_enchantment_industry/super_experience_nugget.png b/public/textures/create_enchantment_industry/super_experience_nugget.png new file mode 100644 index 00000000..2e33103c Binary files /dev/null and b/public/textures/create_enchantment_industry/super_experience_nugget.png differ diff --git a/public/textures/create_integrated_farming/chicken_roost.png b/public/textures/create_integrated_farming/chicken_roost.png new file mode 100644 index 00000000..9ec31f41 Binary files /dev/null and b/public/textures/create_integrated_farming/chicken_roost.png differ diff --git a/public/textures/create_integrated_farming/fishing_net.png b/public/textures/create_integrated_farming/fishing_net.png new file mode 100644 index 00000000..70c5a832 Binary files /dev/null and b/public/textures/create_integrated_farming/fishing_net.png differ diff --git a/public/textures/create_integrated_farming/roost.png b/public/textures/create_integrated_farming/roost.png new file mode 100644 index 00000000..daeda06e Binary files /dev/null and b/public/textures/create_integrated_farming/roost.png differ diff --git a/public/textures/createaddition/alternator.png b/public/textures/createaddition/alternator.png new file mode 100644 index 00000000..78e60755 Binary files /dev/null and b/public/textures/createaddition/alternator.png differ diff --git a/public/textures/createaddition/barbed_wire.png b/public/textures/createaddition/barbed_wire.png new file mode 100644 index 00000000..64b0598f Binary files /dev/null and b/public/textures/createaddition/barbed_wire.png differ diff --git a/public/textures/createaddition/bioethanol_bucket.png b/public/textures/createaddition/bioethanol_bucket.png new file mode 100644 index 00000000..1408ac2c Binary files /dev/null and b/public/textures/createaddition/bioethanol_bucket.png differ diff --git a/public/textures/createaddition/biomass_pellet.png b/public/textures/createaddition/biomass_pellet.png new file mode 100644 index 00000000..1d6e2108 Binary files /dev/null and b/public/textures/createaddition/biomass_pellet.png differ diff --git a/public/textures/createaddition/biomass_pellet_block.png b/public/textures/createaddition/biomass_pellet_block.png new file mode 100644 index 00000000..f87c2e85 Binary files /dev/null and b/public/textures/createaddition/biomass_pellet_block.png differ diff --git a/public/textures/createaddition/brass_rod.png b/public/textures/createaddition/brass_rod.png new file mode 100644 index 00000000..638ed778 Binary files /dev/null and b/public/textures/createaddition/brass_rod.png differ diff --git a/public/textures/createaddition/capacitor.png b/public/textures/createaddition/capacitor.png new file mode 100644 index 00000000..d97ab5ed Binary files /dev/null and b/public/textures/createaddition/capacitor.png differ diff --git a/public/textures/createaddition/chocolate_cake.png b/public/textures/createaddition/chocolate_cake.png new file mode 100644 index 00000000..f5b19549 Binary files /dev/null and b/public/textures/createaddition/chocolate_cake.png differ diff --git a/public/textures/createaddition/connector.png b/public/textures/createaddition/connector.png new file mode 100644 index 00000000..715514f4 Binary files /dev/null and b/public/textures/createaddition/connector.png differ diff --git a/public/textures/createaddition/copper_rod.png b/public/textures/createaddition/copper_rod.png new file mode 100644 index 00000000..cc589dab Binary files /dev/null and b/public/textures/createaddition/copper_rod.png differ diff --git a/public/textures/createaddition/copper_spool.png b/public/textures/createaddition/copper_spool.png new file mode 100644 index 00000000..478fc9cb Binary files /dev/null and b/public/textures/createaddition/copper_spool.png differ diff --git a/public/textures/createaddition/copper_wire.png b/public/textures/createaddition/copper_wire.png new file mode 100644 index 00000000..ea583d43 Binary files /dev/null and b/public/textures/createaddition/copper_wire.png differ diff --git a/public/textures/createaddition/creative_energy.png b/public/textures/createaddition/creative_energy.png new file mode 100644 index 00000000..b4bd8660 Binary files /dev/null and b/public/textures/createaddition/creative_energy.png differ diff --git a/public/textures/createaddition/diamond_grit.png b/public/textures/createaddition/diamond_grit.png new file mode 100644 index 00000000..076092a9 Binary files /dev/null and b/public/textures/createaddition/diamond_grit.png differ diff --git a/public/textures/createaddition/diamond_grit_sandpaper.png b/public/textures/createaddition/diamond_grit_sandpaper.png new file mode 100644 index 00000000..f79c433a Binary files /dev/null and b/public/textures/createaddition/diamond_grit_sandpaper.png differ diff --git a/public/textures/createaddition/digital_adapter.png b/public/textures/createaddition/digital_adapter.png new file mode 100644 index 00000000..e43442cc Binary files /dev/null and b/public/textures/createaddition/digital_adapter.png differ diff --git a/public/textures/createaddition/electric_motor.png b/public/textures/createaddition/electric_motor.png new file mode 100644 index 00000000..15bd73f7 Binary files /dev/null and b/public/textures/createaddition/electric_motor.png differ diff --git a/public/textures/createaddition/electrum_amulet.png b/public/textures/createaddition/electrum_amulet.png new file mode 100644 index 00000000..c99c74c8 Binary files /dev/null and b/public/textures/createaddition/electrum_amulet.png differ diff --git a/public/textures/createaddition/electrum_block.png b/public/textures/createaddition/electrum_block.png new file mode 100644 index 00000000..753defd6 Binary files /dev/null and b/public/textures/createaddition/electrum_block.png differ diff --git a/public/textures/createaddition/electrum_ingot.png b/public/textures/createaddition/electrum_ingot.png new file mode 100644 index 00000000..174117b7 Binary files /dev/null and b/public/textures/createaddition/electrum_ingot.png differ diff --git a/public/textures/createaddition/electrum_nugget.png b/public/textures/createaddition/electrum_nugget.png new file mode 100644 index 00000000..2ab9c9a4 Binary files /dev/null and b/public/textures/createaddition/electrum_nugget.png differ diff --git a/public/textures/createaddition/electrum_rod.png b/public/textures/createaddition/electrum_rod.png new file mode 100644 index 00000000..7ec1e3d9 Binary files /dev/null and b/public/textures/createaddition/electrum_rod.png differ diff --git a/public/textures/createaddition/electrum_sheet.png b/public/textures/createaddition/electrum_sheet.png new file mode 100644 index 00000000..87b82cf0 Binary files /dev/null and b/public/textures/createaddition/electrum_sheet.png differ diff --git a/public/textures/createaddition/electrum_spool.png b/public/textures/createaddition/electrum_spool.png new file mode 100644 index 00000000..1b4de92e Binary files /dev/null and b/public/textures/createaddition/electrum_spool.png differ diff --git a/public/textures/createaddition/electrum_wire.png b/public/textures/createaddition/electrum_wire.png new file mode 100644 index 00000000..03b0d8d1 Binary files /dev/null and b/public/textures/createaddition/electrum_wire.png differ diff --git a/public/textures/createaddition/festive_spool.png b/public/textures/createaddition/festive_spool.png new file mode 100644 index 00000000..0660d019 Binary files /dev/null and b/public/textures/createaddition/festive_spool.png differ diff --git a/public/textures/createaddition/gold_rod.png b/public/textures/createaddition/gold_rod.png new file mode 100644 index 00000000..24055a6e Binary files /dev/null and b/public/textures/createaddition/gold_rod.png differ diff --git a/public/textures/createaddition/gold_spool.png b/public/textures/createaddition/gold_spool.png new file mode 100644 index 00000000..2bf345b7 Binary files /dev/null and b/public/textures/createaddition/gold_spool.png differ diff --git a/public/textures/createaddition/gold_wire.png b/public/textures/createaddition/gold_wire.png new file mode 100644 index 00000000..ea43bc06 Binary files /dev/null and b/public/textures/createaddition/gold_wire.png differ diff --git a/public/textures/createaddition/honey_cake.png b/public/textures/createaddition/honey_cake.png new file mode 100644 index 00000000..12c264a0 Binary files /dev/null and b/public/textures/createaddition/honey_cake.png differ diff --git a/public/textures/createaddition/iron_rod.png b/public/textures/createaddition/iron_rod.png new file mode 100644 index 00000000..09bef288 Binary files /dev/null and b/public/textures/createaddition/iron_rod.png differ diff --git a/public/textures/createaddition/iron_wire.png b/public/textures/createaddition/iron_wire.png new file mode 100644 index 00000000..c41b85be Binary files /dev/null and b/public/textures/createaddition/iron_wire.png differ diff --git a/public/textures/createaddition/large_connector.png b/public/textures/createaddition/large_connector.png new file mode 100644 index 00000000..442f3699 Binary files /dev/null and b/public/textures/createaddition/large_connector.png differ diff --git a/public/textures/createaddition/modular_accumulator.png b/public/textures/createaddition/modular_accumulator.png new file mode 100644 index 00000000..ee86cb61 Binary files /dev/null and b/public/textures/createaddition/modular_accumulator.png differ diff --git a/public/textures/createaddition/portable_energy_interface.png b/public/textures/createaddition/portable_energy_interface.png new file mode 100644 index 00000000..29aa705d Binary files /dev/null and b/public/textures/createaddition/portable_energy_interface.png differ diff --git a/public/textures/createaddition/redstone_relay.png b/public/textures/createaddition/redstone_relay.png new file mode 100644 index 00000000..16165c28 Binary files /dev/null and b/public/textures/createaddition/redstone_relay.png differ diff --git a/public/textures/createaddition/rolling_mill.png b/public/textures/createaddition/rolling_mill.png new file mode 100644 index 00000000..699aa7c3 Binary files /dev/null and b/public/textures/createaddition/rolling_mill.png differ diff --git a/public/textures/createaddition/seed_oil_bucket.png b/public/textures/createaddition/seed_oil_bucket.png new file mode 100644 index 00000000..a5fa59e7 Binary files /dev/null and b/public/textures/createaddition/seed_oil_bucket.png differ diff --git a/public/textures/createaddition/small_light_connector.png b/public/textures/createaddition/small_light_connector.png new file mode 100644 index 00000000..dcef8223 Binary files /dev/null and b/public/textures/createaddition/small_light_connector.png differ diff --git a/public/textures/createaddition/spool.png b/public/textures/createaddition/spool.png new file mode 100644 index 00000000..822cf282 Binary files /dev/null and b/public/textures/createaddition/spool.png differ diff --git a/public/textures/createaddition/straw.png b/public/textures/createaddition/straw.png new file mode 100644 index 00000000..2e10fda1 Binary files /dev/null and b/public/textures/createaddition/straw.png differ diff --git a/public/textures/createaddition/tesla_coil.png b/public/textures/createaddition/tesla_coil.png new file mode 100644 index 00000000..646fff80 Binary files /dev/null and b/public/textures/createaddition/tesla_coil.png differ diff --git a/public/textures/createaddition/zinc_sheet.png b/public/textures/createaddition/zinc_sheet.png new file mode 100644 index 00000000..ea7bb828 Binary files /dev/null and b/public/textures/createaddition/zinc_sheet.png differ diff --git a/public/textures/createstockbridge/ae_bridge.png b/public/textures/createstockbridge/ae_bridge.png new file mode 100644 index 00000000..b2ef32c1 Binary files /dev/null and b/public/textures/createstockbridge/ae_bridge.png differ diff --git a/public/textures/delivery_director/package_rewriter.png b/public/textures/delivery_director/package_rewriter.png new file mode 100644 index 00000000..586f81c8 Binary files /dev/null and b/public/textures/delivery_director/package_rewriter.png differ diff --git a/public/textures/dummmmmmy/target_dummy.png b/public/textures/dummmmmmy/target_dummy.png new file mode 100644 index 00000000..4af4c132 Binary files /dev/null and b/public/textures/dummmmmmy/target_dummy.png differ diff --git a/public/textures/enchantinginfuser/advanced_enchanting_infuser.png b/public/textures/enchantinginfuser/advanced_enchanting_infuser.png new file mode 100644 index 00000000..08dd54fb Binary files /dev/null and b/public/textures/enchantinginfuser/advanced_enchanting_infuser.png differ diff --git a/public/textures/enchantinginfuser/enchanting_infuser.png b/public/textures/enchantinginfuser/enchanting_infuser.png new file mode 100644 index 00000000..35e67040 Binary files /dev/null and b/public/textures/enchantinginfuser/enchanting_infuser.png differ diff --git a/public/textures/endersdelight/amberveil.png b/public/textures/endersdelight/amberveil.png new file mode 100644 index 00000000..8ce96023 Binary files /dev/null and b/public/textures/endersdelight/amberveil.png differ diff --git a/public/textures/endersdelight/amberveil_stew.png b/public/textures/endersdelight/amberveil_stew.png new file mode 100644 index 00000000..946610d8 Binary files /dev/null and b/public/textures/endersdelight/amberveil_stew.png differ diff --git a/public/textures/endersdelight/amberveiled_curry.png b/public/textures/endersdelight/amberveiled_curry.png new file mode 100644 index 00000000..5346ca5d Binary files /dev/null and b/public/textures/endersdelight/amberveiled_curry.png differ diff --git a/public/textures/endersdelight/chicken_curry.png b/public/textures/endersdelight/chicken_curry.png new file mode 100644 index 00000000..731b44e8 Binary files /dev/null and b/public/textures/endersdelight/chicken_curry.png differ diff --git a/public/textures/endersdelight/chorus_crate.png b/public/textures/endersdelight/chorus_crate.png new file mode 100644 index 00000000..7bdebd8e Binary files /dev/null and b/public/textures/endersdelight/chorus_crate.png differ diff --git a/public/textures/endersdelight/chorus_juice.png b/public/textures/endersdelight/chorus_juice.png new file mode 100644 index 00000000..4185576b Binary files /dev/null and b/public/textures/endersdelight/chorus_juice.png differ diff --git a/public/textures/endersdelight/chorus_pie.png b/public/textures/endersdelight/chorus_pie.png new file mode 100644 index 00000000..2a21deb5 Binary files /dev/null and b/public/textures/endersdelight/chorus_pie.png differ diff --git a/public/textures/endersdelight/chorus_pie_slice.png b/public/textures/endersdelight/chorus_pie_slice.png new file mode 100644 index 00000000..44c1e582 Binary files /dev/null and b/public/textures/endersdelight/chorus_pie_slice.png differ diff --git a/public/textures/endersdelight/chorus_stew.png b/public/textures/endersdelight/chorus_stew.png new file mode 100644 index 00000000..2908abb4 Binary files /dev/null and b/public/textures/endersdelight/chorus_stew.png differ diff --git a/public/textures/endersdelight/chorusflame.png b/public/textures/endersdelight/chorusflame.png new file mode 100644 index 00000000..80cd5104 Binary files /dev/null and b/public/textures/endersdelight/chorusflame.png differ diff --git a/public/textures/endersdelight/crawling_sandwich.png b/public/textures/endersdelight/crawling_sandwich.png new file mode 100644 index 00000000..9522fc2b Binary files /dev/null and b/public/textures/endersdelight/crawling_sandwich.png differ diff --git a/public/textures/endersdelight/crispy_skewer.png b/public/textures/endersdelight/crispy_skewer.png new file mode 100644 index 00000000..afc3d450 Binary files /dev/null and b/public/textures/endersdelight/crispy_skewer.png differ diff --git a/public/textures/endersdelight/ender_paella.png b/public/textures/endersdelight/ender_paella.png new file mode 100644 index 00000000..7414ae80 Binary files /dev/null and b/public/textures/endersdelight/ender_paella.png differ diff --git a/public/textures/endersdelight/ender_shard.png b/public/textures/endersdelight/ender_shard.png new file mode 100644 index 00000000..a2756525 Binary files /dev/null and b/public/textures/endersdelight/ender_shard.png differ diff --git a/public/textures/endersdelight/enderman_sight.png b/public/textures/endersdelight/enderman_sight.png new file mode 100644 index 00000000..5be60856 Binary files /dev/null and b/public/textures/endersdelight/enderman_sight.png differ diff --git a/public/textures/endersdelight/endermite_stew.png b/public/textures/endersdelight/endermite_stew.png new file mode 100644 index 00000000..bb9a2acd Binary files /dev/null and b/public/textures/endersdelight/endermite_stew.png differ diff --git a/public/textures/endersdelight/endstone_stove.png b/public/textures/endersdelight/endstone_stove.png new file mode 100644 index 00000000..8f48603a Binary files /dev/null and b/public/textures/endersdelight/endstone_stove.png differ diff --git a/public/textures/endersdelight/ethereal_saffron.png b/public/textures/endersdelight/ethereal_saffron.png new file mode 100644 index 00000000..f8544492 Binary files /dev/null and b/public/textures/endersdelight/ethereal_saffron.png differ diff --git a/public/textures/endersdelight/mite_crust.png b/public/textures/endersdelight/mite_crust.png new file mode 100644 index 00000000..fd7ad62d Binary files /dev/null and b/public/textures/endersdelight/mite_crust.png differ diff --git a/public/textures/endersdelight/pearl_pasta.png b/public/textures/endersdelight/pearl_pasta.png new file mode 100644 index 00000000..68771eca Binary files /dev/null and b/public/textures/endersdelight/pearl_pasta.png differ diff --git a/public/textures/endersdelight/shulker_bowl.png b/public/textures/endersdelight/shulker_bowl.png new file mode 100644 index 00000000..dc6ea717 Binary files /dev/null and b/public/textures/endersdelight/shulker_bowl.png differ diff --git a/public/textures/endersdelight/shulker_filet.png b/public/textures/endersdelight/shulker_filet.png new file mode 100644 index 00000000..cfae8c63 Binary files /dev/null and b/public/textures/endersdelight/shulker_filet.png differ diff --git a/public/textures/endersdelight/shulker_mollusk.png b/public/textures/endersdelight/shulker_mollusk.png new file mode 100644 index 00000000..df472081 Binary files /dev/null and b/public/textures/endersdelight/shulker_mollusk.png differ diff --git a/public/textures/endersdelight/sight_fragments.png b/public/textures/endersdelight/sight_fragments.png new file mode 100644 index 00000000..62960e46 Binary files /dev/null and b/public/textures/endersdelight/sight_fragments.png differ diff --git a/public/textures/endersdelight/steak_fries.png b/public/textures/endersdelight/steak_fries.png new file mode 100644 index 00000000..e88b70d2 Binary files /dev/null and b/public/textures/endersdelight/steak_fries.png differ diff --git a/public/textures/endersdelight/strange_eclair.png b/public/textures/endersdelight/strange_eclair.png new file mode 100644 index 00000000..c12ef45e Binary files /dev/null and b/public/textures/endersdelight/strange_eclair.png differ diff --git a/public/textures/endersdelight/stuffed_shulker.png b/public/textures/endersdelight/stuffed_shulker.png new file mode 100644 index 00000000..5fc471e9 Binary files /dev/null and b/public/textures/endersdelight/stuffed_shulker.png differ diff --git a/public/textures/endersdelight/stuffed_shulker_bowl.png b/public/textures/endersdelight/stuffed_shulker_bowl.png new file mode 100644 index 00000000..67369863 Binary files /dev/null and b/public/textures/endersdelight/stuffed_shulker_bowl.png differ diff --git a/public/textures/endersdelight/twisted_cereal.png b/public/textures/endersdelight/twisted_cereal.png new file mode 100644 index 00000000..25f610b9 Binary files /dev/null and b/public/textures/endersdelight/twisted_cereal.png differ diff --git a/public/textures/endersdelight/uncanny_cookies.png b/public/textures/endersdelight/uncanny_cookies.png new file mode 100644 index 00000000..b59c557f Binary files /dev/null and b/public/textures/endersdelight/uncanny_cookies.png differ diff --git a/public/textures/endersdelight/veil_of_flames_risotto.png b/public/textures/endersdelight/veil_of_flames_risotto.png new file mode 100644 index 00000000..3592103d Binary files /dev/null and b/public/textures/endersdelight/veil_of_flames_risotto.png differ diff --git a/public/textures/endersdelight/voidpepper.png b/public/textures/endersdelight/voidpepper.png new file mode 100644 index 00000000..fcb68aa1 Binary files /dev/null and b/public/textures/endersdelight/voidpepper.png differ diff --git a/public/textures/ends_delight/assorted_salad.png b/public/textures/ends_delight/assorted_salad.png new file mode 100644 index 00000000..ea59677f Binary files /dev/null and b/public/textures/ends_delight/assorted_salad.png differ diff --git a/public/textures/ends_delight/bubble_tea.png b/public/textures/ends_delight/bubble_tea.png new file mode 100644 index 00000000..ec045d04 Binary files /dev/null and b/public/textures/ends_delight/bubble_tea.png differ diff --git a/public/textures/ends_delight/chorus_cookie.png b/public/textures/ends_delight/chorus_cookie.png new file mode 100644 index 00000000..872aff40 Binary files /dev/null and b/public/textures/ends_delight/chorus_cookie.png differ diff --git a/public/textures/ends_delight/chorus_flower_pie.png b/public/textures/ends_delight/chorus_flower_pie.png new file mode 100644 index 00000000..0a9fe9bc Binary files /dev/null and b/public/textures/ends_delight/chorus_flower_pie.png differ diff --git a/public/textures/ends_delight/chorus_flower_tea.png b/public/textures/ends_delight/chorus_flower_tea.png new file mode 100644 index 00000000..eee9f634 Binary files /dev/null and b/public/textures/ends_delight/chorus_flower_tea.png differ diff --git a/public/textures/ends_delight/chorus_fruit_crate.png b/public/textures/ends_delight/chorus_fruit_crate.png new file mode 100644 index 00000000..f438aab0 Binary files /dev/null and b/public/textures/ends_delight/chorus_fruit_crate.png differ diff --git a/public/textures/ends_delight/chorus_fruit_grain.png b/public/textures/ends_delight/chorus_fruit_grain.png new file mode 100644 index 00000000..427c87b2 Binary files /dev/null and b/public/textures/ends_delight/chorus_fruit_grain.png differ diff --git a/public/textures/ends_delight/chorus_fruit_milk_tea.png b/public/textures/ends_delight/chorus_fruit_milk_tea.png new file mode 100644 index 00000000..afc438a5 Binary files /dev/null and b/public/textures/ends_delight/chorus_fruit_milk_tea.png differ diff --git a/public/textures/ends_delight/chorus_fruit_pie.png b/public/textures/ends_delight/chorus_fruit_pie.png new file mode 100644 index 00000000..b20a5ee9 Binary files /dev/null and b/public/textures/ends_delight/chorus_fruit_pie.png differ diff --git a/public/textures/ends_delight/chorus_fruit_pie_slice.png b/public/textures/ends_delight/chorus_fruit_pie_slice.png new file mode 100644 index 00000000..868116bc Binary files /dev/null and b/public/textures/ends_delight/chorus_fruit_pie_slice.png differ diff --git a/public/textures/ends_delight/chorus_fruit_popsicle.png b/public/textures/ends_delight/chorus_fruit_popsicle.png new file mode 100644 index 00000000..b850fd80 Binary files /dev/null and b/public/textures/ends_delight/chorus_fruit_popsicle.png differ diff --git a/public/textures/ends_delight/chorus_fruit_wine.png b/public/textures/ends_delight/chorus_fruit_wine.png new file mode 100644 index 00000000..b9fb0ff4 Binary files /dev/null and b/public/textures/ends_delight/chorus_fruit_wine.png differ diff --git a/public/textures/ends_delight/chorus_sauce.png b/public/textures/ends_delight/chorus_sauce.png new file mode 100644 index 00000000..0e537cf0 Binary files /dev/null and b/public/textures/ends_delight/chorus_sauce.png differ diff --git a/public/textures/ends_delight/chorus_succulent.png b/public/textures/ends_delight/chorus_succulent.png new file mode 100644 index 00000000..465f0474 Binary files /dev/null and b/public/textures/ends_delight/chorus_succulent.png differ diff --git a/public/textures/ends_delight/dragon_breath_and_chorus_soup.png b/public/textures/ends_delight/dragon_breath_and_chorus_soup.png new file mode 100644 index 00000000..c60fcd1b Binary files /dev/null and b/public/textures/ends_delight/dragon_breath_and_chorus_soup.png differ diff --git a/public/textures/ends_delight/dragon_breath_soda.png b/public/textures/ends_delight/dragon_breath_soda.png new file mode 100644 index 00000000..3e2dc40d Binary files /dev/null and b/public/textures/ends_delight/dragon_breath_soda.png differ diff --git a/public/textures/ends_delight/dragon_egg_shell_knife.png b/public/textures/ends_delight/dragon_egg_shell_knife.png new file mode 100644 index 00000000..ae61e518 Binary files /dev/null and b/public/textures/ends_delight/dragon_egg_shell_knife.png differ diff --git a/public/textures/ends_delight/dragon_leg.png b/public/textures/ends_delight/dragon_leg.png new file mode 100644 index 00000000..da1df351 Binary files /dev/null and b/public/textures/ends_delight/dragon_leg.png differ diff --git a/public/textures/ends_delight/dragon_leg_with_sauce.png b/public/textures/ends_delight/dragon_leg_with_sauce.png new file mode 100644 index 00000000..fa46de99 Binary files /dev/null and b/public/textures/ends_delight/dragon_leg_with_sauce.png differ diff --git a/public/textures/ends_delight/dragon_leg_with_sauce_block.png b/public/textures/ends_delight/dragon_leg_with_sauce_block.png new file mode 100644 index 00000000..4af308be Binary files /dev/null and b/public/textures/ends_delight/dragon_leg_with_sauce_block.png differ diff --git a/public/textures/ends_delight/dragon_meat_stew.png b/public/textures/ends_delight/dragon_meat_stew.png new file mode 100644 index 00000000..ed41bcdd Binary files /dev/null and b/public/textures/ends_delight/dragon_meat_stew.png differ diff --git a/public/textures/ends_delight/dragon_meat_stew_block.png b/public/textures/ends_delight/dragon_meat_stew_block.png new file mode 100644 index 00000000..25bd6915 Binary files /dev/null and b/public/textures/ends_delight/dragon_meat_stew_block.png differ diff --git a/public/textures/ends_delight/dragon_tooth.png b/public/textures/ends_delight/dragon_tooth.png new file mode 100644 index 00000000..93589fcf Binary files /dev/null and b/public/textures/ends_delight/dragon_tooth.png differ diff --git a/public/textures/ends_delight/dragon_tooth_knife.png b/public/textures/ends_delight/dragon_tooth_knife.png new file mode 100644 index 00000000..b99d2161 Binary files /dev/null and b/public/textures/ends_delight/dragon_tooth_knife.png differ diff --git a/public/textures/ends_delight/dried_chorus_flower.png b/public/textures/ends_delight/dried_chorus_flower.png new file mode 100644 index 00000000..15f19e76 Binary files /dev/null and b/public/textures/ends_delight/dried_chorus_flower.png differ diff --git a/public/textures/ends_delight/dried_endermite_meat.png b/public/textures/ends_delight/dried_endermite_meat.png new file mode 100644 index 00000000..3e1e194d Binary files /dev/null and b/public/textures/ends_delight/dried_endermite_meat.png differ diff --git a/public/textures/ends_delight/end_barbecue_stick.png b/public/textures/ends_delight/end_barbecue_stick.png new file mode 100644 index 00000000..ed54fcaa Binary files /dev/null and b/public/textures/ends_delight/end_barbecue_stick.png differ diff --git a/public/textures/ends_delight/end_mixed_salad.png b/public/textures/ends_delight/end_mixed_salad.png new file mode 100644 index 00000000..d3ee8e87 Binary files /dev/null and b/public/textures/ends_delight/end_mixed_salad.png differ diff --git a/public/textures/ends_delight/end_stone_knife.png b/public/textures/ends_delight/end_stone_knife.png new file mode 100644 index 00000000..887e10bf Binary files /dev/null and b/public/textures/ends_delight/end_stone_knife.png differ diff --git a/public/textures/ends_delight/end_stove.png b/public/textures/ends_delight/end_stove.png new file mode 100644 index 00000000..b6bd2dbe Binary files /dev/null and b/public/textures/ends_delight/end_stove.png differ diff --git a/public/textures/ends_delight/ender_bamboo_rice.png b/public/textures/ends_delight/ender_bamboo_rice.png new file mode 100644 index 00000000..c2848cb5 Binary files /dev/null and b/public/textures/ends_delight/ender_bamboo_rice.png differ diff --git a/public/textures/ends_delight/ender_congee.png b/public/textures/ends_delight/ender_congee.png new file mode 100644 index 00000000..129619ca Binary files /dev/null and b/public/textures/ends_delight/ender_congee.png differ diff --git a/public/textures/ends_delight/ender_noodle.png b/public/textures/ends_delight/ender_noodle.png new file mode 100644 index 00000000..863ded3d Binary files /dev/null and b/public/textures/ends_delight/ender_noodle.png differ diff --git a/public/textures/ends_delight/ender_pearl_grain.png b/public/textures/ends_delight/ender_pearl_grain.png new file mode 100644 index 00000000..dd70b375 Binary files /dev/null and b/public/textures/ends_delight/ender_pearl_grain.png differ diff --git a/public/textures/ends_delight/ender_sausage.png b/public/textures/ends_delight/ender_sausage.png new file mode 100644 index 00000000..d1ba7665 Binary files /dev/null and b/public/textures/ends_delight/ender_sausage.png differ diff --git a/public/textures/ends_delight/enderman_gristle.png b/public/textures/ends_delight/enderman_gristle.png new file mode 100644 index 00000000..88d2b9c3 Binary files /dev/null and b/public/textures/ends_delight/enderman_gristle.png differ diff --git a/public/textures/ends_delight/enderman_gristle_stew.png b/public/textures/ends_delight/enderman_gristle_stew.png new file mode 100644 index 00000000..d173b973 Binary files /dev/null and b/public/textures/ends_delight/enderman_gristle_stew.png differ diff --git a/public/textures/ends_delight/fried_dragon_egg.png b/public/textures/ends_delight/fried_dragon_egg.png new file mode 100644 index 00000000..7e56bf64 Binary files /dev/null and b/public/textures/ends_delight/fried_dragon_egg.png differ diff --git a/public/textures/ends_delight/grilled_shulker.png b/public/textures/ends_delight/grilled_shulker.png new file mode 100644 index 00000000..47b7e522 Binary files /dev/null and b/public/textures/ends_delight/grilled_shulker.png differ diff --git a/public/textures/ends_delight/grilled_shulker_block.png b/public/textures/ends_delight/grilled_shulker_block.png new file mode 100644 index 00000000..be013470 Binary files /dev/null and b/public/textures/ends_delight/grilled_shulker_block.png differ diff --git a/public/textures/ends_delight/half_dragon_egg_shell.png b/public/textures/ends_delight/half_dragon_egg_shell.png new file mode 100644 index 00000000..307362ab Binary files /dev/null and b/public/textures/ends_delight/half_dragon_egg_shell.png differ diff --git a/public/textures/ends_delight/liquid_dragon_egg.png b/public/textures/ends_delight/liquid_dragon_egg.png new file mode 100644 index 00000000..e56cfaf6 Binary files /dev/null and b/public/textures/ends_delight/liquid_dragon_egg.png differ diff --git a/public/textures/ends_delight/non_hatchable_dragon_egg.png b/public/textures/ends_delight/non_hatchable_dragon_egg.png new file mode 100644 index 00000000..33ef247a Binary files /dev/null and b/public/textures/ends_delight/non_hatchable_dragon_egg.png differ diff --git a/public/textures/ends_delight/purpur_knife.png b/public/textures/ends_delight/purpur_knife.png new file mode 100644 index 00000000..77dc41dc Binary files /dev/null and b/public/textures/ends_delight/purpur_knife.png differ diff --git a/public/textures/ends_delight/raw_dragon_meat.png b/public/textures/ends_delight/raw_dragon_meat.png new file mode 100644 index 00000000..ff3cc49b Binary files /dev/null and b/public/textures/ends_delight/raw_dragon_meat.png differ diff --git a/public/textures/ends_delight/raw_dragon_meat_cuts.png b/public/textures/ends_delight/raw_dragon_meat_cuts.png new file mode 100644 index 00000000..7d5cfd3c Binary files /dev/null and b/public/textures/ends_delight/raw_dragon_meat_cuts.png differ diff --git a/public/textures/ends_delight/raw_ender_mite_meat.png b/public/textures/ends_delight/raw_ender_mite_meat.png new file mode 100644 index 00000000..fbb02de4 Binary files /dev/null and b/public/textures/ends_delight/raw_ender_mite_meat.png differ diff --git a/public/textures/ends_delight/raw_ender_sausage.png b/public/textures/ends_delight/raw_ender_sausage.png new file mode 100644 index 00000000..8ef19586 Binary files /dev/null and b/public/textures/ends_delight/raw_ender_sausage.png differ diff --git a/public/textures/ends_delight/roasted_dragon_meat.png b/public/textures/ends_delight/roasted_dragon_meat.png new file mode 100644 index 00000000..e27a83dc Binary files /dev/null and b/public/textures/ends_delight/roasted_dragon_meat.png differ diff --git a/public/textures/ends_delight/roasted_dragon_meat_cuts.png b/public/textures/ends_delight/roasted_dragon_meat_cuts.png new file mode 100644 index 00000000..783f721a Binary files /dev/null and b/public/textures/ends_delight/roasted_dragon_meat_cuts.png differ diff --git a/public/textures/ends_delight/roasted_dragon_steak.png b/public/textures/ends_delight/roasted_dragon_steak.png new file mode 100644 index 00000000..30bb6a2c Binary files /dev/null and b/public/textures/ends_delight/roasted_dragon_steak.png differ diff --git a/public/textures/ends_delight/roasted_shulker_meat.png b/public/textures/ends_delight/roasted_shulker_meat.png new file mode 100644 index 00000000..a7f70636 Binary files /dev/null and b/public/textures/ends_delight/roasted_shulker_meat.png differ diff --git a/public/textures/ends_delight/roasted_shulker_meat_slice.png b/public/textures/ends_delight/roasted_shulker_meat_slice.png new file mode 100644 index 00000000..d48024cf Binary files /dev/null and b/public/textures/ends_delight/roasted_shulker_meat_slice.png differ diff --git a/public/textures/ends_delight/shulker_meat.png b/public/textures/ends_delight/shulker_meat.png new file mode 100644 index 00000000..c3fb4baf Binary files /dev/null and b/public/textures/ends_delight/shulker_meat.png differ diff --git a/public/textures/ends_delight/shulker_meat_slice.png b/public/textures/ends_delight/shulker_meat_slice.png new file mode 100644 index 00000000..17cc6703 Binary files /dev/null and b/public/textures/ends_delight/shulker_meat_slice.png differ diff --git a/public/textures/ends_delight/shulker_omelette.png b/public/textures/ends_delight/shulker_omelette.png new file mode 100644 index 00000000..caa0f480 Binary files /dev/null and b/public/textures/ends_delight/shulker_omelette.png differ diff --git a/public/textures/ends_delight/shulker_omelette_mixture.png b/public/textures/ends_delight/shulker_omelette_mixture.png new file mode 100644 index 00000000..2d9aeaf0 Binary files /dev/null and b/public/textures/ends_delight/shulker_omelette_mixture.png differ diff --git a/public/textures/ends_delight/shulker_soup.png b/public/textures/ends_delight/shulker_soup.png new file mode 100644 index 00000000..19cfffda Binary files /dev/null and b/public/textures/ends_delight/shulker_soup.png differ diff --git a/public/textures/ends_delight/smoked_dragon_leg.png b/public/textures/ends_delight/smoked_dragon_leg.png new file mode 100644 index 00000000..ac19df73 Binary files /dev/null and b/public/textures/ends_delight/smoked_dragon_leg.png differ diff --git a/public/textures/ends_delight/steamed_dragon_egg.png b/public/textures/ends_delight/steamed_dragon_egg.png new file mode 100644 index 00000000..1c458f88 Binary files /dev/null and b/public/textures/ends_delight/steamed_dragon_egg.png differ diff --git a/public/textures/ends_delight/steamed_dragon_egg_block.png b/public/textures/ends_delight/steamed_dragon_egg_block.png new file mode 100644 index 00000000..2b6a938e Binary files /dev/null and b/public/textures/ends_delight/steamed_dragon_egg_block.png differ diff --git a/public/textures/ends_delight/stir_fried_shulker_meat.png b/public/textures/ends_delight/stir_fried_shulker_meat.png new file mode 100644 index 00000000..f130fffc Binary files /dev/null and b/public/textures/ends_delight/stir_fried_shulker_meat.png differ diff --git a/public/textures/ends_delight/stuffed_rice_cake.png b/public/textures/ends_delight/stuffed_rice_cake.png new file mode 100644 index 00000000..475dbd06 Binary files /dev/null and b/public/textures/ends_delight/stuffed_rice_cake.png differ diff --git a/public/textures/explorerscompass/explorerscompass.png b/public/textures/explorerscompass/explorerscompass.png new file mode 100644 index 00000000..5041d385 Binary files /dev/null and b/public/textures/explorerscompass/explorerscompass.png differ diff --git a/public/textures/farmers_delight_christmas_editio/baked_ginger_bread_ma.png b/public/textures/farmers_delight_christmas_editio/baked_ginger_bread_ma.png new file mode 100644 index 00000000..3427f263 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/baked_ginger_bread_ma.png differ diff --git a/public/textures/farmers_delight_christmas_editio/baked_gingerbread_circle.png b/public/textures/farmers_delight_christmas_editio/baked_gingerbread_circle.png new file mode 100644 index 00000000..4cff4ed5 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/baked_gingerbread_circle.png differ diff --git a/public/textures/farmers_delight_christmas_editio/baked_gingerbread_star.png b/public/textures/farmers_delight_christmas_editio/baked_gingerbread_star.png new file mode 100644 index 00000000..222968af Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/baked_gingerbread_star.png differ diff --git a/public/textures/farmers_delight_christmas_editio/baked_gingerbread_tree.png b/public/textures/farmers_delight_christmas_editio/baked_gingerbread_tree.png new file mode 100644 index 00000000..2aca4128 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/baked_gingerbread_tree.png differ diff --git a/public/textures/farmers_delight_christmas_editio/black_frosted_gingerbread_cookie.png b/public/textures/farmers_delight_christmas_editio/black_frosted_gingerbread_cookie.png new file mode 100644 index 00000000..28ba9705 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/black_frosted_gingerbread_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/black_gingerbread_man.png b/public/textures/farmers_delight_christmas_editio/black_gingerbread_man.png new file mode 100644 index 00000000..d0473e55 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/black_gingerbread_man.png differ diff --git a/public/textures/farmers_delight_christmas_editio/black_gingerbread_star.png b/public/textures/farmers_delight_christmas_editio/black_gingerbread_star.png new file mode 100644 index 00000000..ac92d740 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/black_gingerbread_star.png differ diff --git a/public/textures/farmers_delight_christmas_editio/black_gingerbread_tree.png b/public/textures/farmers_delight_christmas_editio/black_gingerbread_tree.png new file mode 100644 index 00000000..83867cac Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/black_gingerbread_tree.png differ diff --git a/public/textures/farmers_delight_christmas_editio/black_royal_frosting.png b/public/textures/farmers_delight_christmas_editio/black_royal_frosting.png new file mode 100644 index 00000000..47686e7d Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/black_royal_frosting.png differ diff --git a/public/textures/farmers_delight_christmas_editio/black_sugar_cookie.png b/public/textures/farmers_delight_christmas_editio/black_sugar_cookie.png new file mode 100644 index 00000000..6eb41c05 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/black_sugar_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/blue_frosted_gingerbread_cookie.png b/public/textures/farmers_delight_christmas_editio/blue_frosted_gingerbread_cookie.png new file mode 100644 index 00000000..e0f4ae91 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/blue_frosted_gingerbread_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/blue_gingerbread_man.png b/public/textures/farmers_delight_christmas_editio/blue_gingerbread_man.png new file mode 100644 index 00000000..278598da Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/blue_gingerbread_man.png differ diff --git a/public/textures/farmers_delight_christmas_editio/blue_gingerbread_star.png b/public/textures/farmers_delight_christmas_editio/blue_gingerbread_star.png new file mode 100644 index 00000000..56893267 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/blue_gingerbread_star.png differ diff --git a/public/textures/farmers_delight_christmas_editio/blue_gingerbread_tree.png b/public/textures/farmers_delight_christmas_editio/blue_gingerbread_tree.png new file mode 100644 index 00000000..fa7c6912 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/blue_gingerbread_tree.png differ diff --git a/public/textures/farmers_delight_christmas_editio/blue_sugar_cookie.png b/public/textures/farmers_delight_christmas_editio/blue_sugar_cookie.png new file mode 100644 index 00000000..1473df7c Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/blue_sugar_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/brown_frosted_gingerbread_cookie.png b/public/textures/farmers_delight_christmas_editio/brown_frosted_gingerbread_cookie.png new file mode 100644 index 00000000..f97a386c Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/brown_frosted_gingerbread_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/brown_gingerbread_man.png b/public/textures/farmers_delight_christmas_editio/brown_gingerbread_man.png new file mode 100644 index 00000000..c9cb7d43 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/brown_gingerbread_man.png differ diff --git a/public/textures/farmers_delight_christmas_editio/brown_gingerbread_star.png b/public/textures/farmers_delight_christmas_editio/brown_gingerbread_star.png new file mode 100644 index 00000000..86aae864 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/brown_gingerbread_star.png differ diff --git a/public/textures/farmers_delight_christmas_editio/brown_gingerbread_tree.png b/public/textures/farmers_delight_christmas_editio/brown_gingerbread_tree.png new file mode 100644 index 00000000..13d2c8be Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/brown_gingerbread_tree.png differ diff --git a/public/textures/farmers_delight_christmas_editio/brown_royal_frosting.png b/public/textures/farmers_delight_christmas_editio/brown_royal_frosting.png new file mode 100644 index 00000000..830038ef Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/brown_royal_frosting.png differ diff --git a/public/textures/farmers_delight_christmas_editio/brown_sugar_cookie.png b/public/textures/farmers_delight_christmas_editio/brown_sugar_cookie.png new file mode 100644 index 00000000..f1e2aa94 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/brown_sugar_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/candy_cane.png b/public/textures/farmers_delight_christmas_editio/candy_cane.png new file mode 100644 index 00000000..fd53a5dc Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/candy_cane.png differ diff --git a/public/textures/farmers_delight_christmas_editio/candy_cane_and_chocolate_chip_ice_cream.png b/public/textures/farmers_delight_christmas_editio/candy_cane_and_chocolate_chip_ice_cream.png new file mode 100644 index 00000000..5f0e0a63 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/candy_cane_and_chocolate_chip_ice_cream.png differ diff --git a/public/textures/farmers_delight_christmas_editio/candy_cane_bit_ice_cream.png b/public/textures/farmers_delight_christmas_editio/candy_cane_bit_ice_cream.png new file mode 100644 index 00000000..63bdec34 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/candy_cane_bit_ice_cream.png differ diff --git a/public/textures/farmers_delight_christmas_editio/chocolate_bar.png b/public/textures/farmers_delight_christmas_editio/chocolate_bar.png new file mode 100644 index 00000000..4e6117ab Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/chocolate_bar.png differ diff --git a/public/textures/farmers_delight_christmas_editio/chocolate_chip_ice_cream.png b/public/textures/farmers_delight_christmas_editio/chocolate_chip_ice_cream.png new file mode 100644 index 00000000..d656fcdf Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/chocolate_chip_ice_cream.png differ diff --git a/public/textures/farmers_delight_christmas_editio/chocolate_coin.png b/public/textures/farmers_delight_christmas_editio/chocolate_coin.png new file mode 100644 index 00000000..96e7043e Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/chocolate_coin.png differ diff --git a/public/textures/farmers_delight_christmas_editio/cinnamon.png b/public/textures/farmers_delight_christmas_editio/cinnamon.png new file mode 100644 index 00000000..392e0725 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/cinnamon.png differ diff --git a/public/textures/farmers_delight_christmas_editio/cinnamon_eggnog.png b/public/textures/farmers_delight_christmas_editio/cinnamon_eggnog.png new file mode 100644 index 00000000..f93db5d0 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/cinnamon_eggnog.png differ diff --git a/public/textures/farmers_delight_christmas_editio/circle_cookie_cutter.png b/public/textures/farmers_delight_christmas_editio/circle_cookie_cutter.png new file mode 100644 index 00000000..2605f1c4 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/circle_cookie_cutter.png differ diff --git a/public/textures/farmers_delight_christmas_editio/coin_wrapper.png b/public/textures/farmers_delight_christmas_editio/coin_wrapper.png new file mode 100644 index 00000000..8b89c389 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/coin_wrapper.png differ diff --git a/public/textures/farmers_delight_christmas_editio/cream_cheese_and_berry_log.png b/public/textures/farmers_delight_christmas_editio/cream_cheese_and_berry_log.png new file mode 100644 index 00000000..c7642e88 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/cream_cheese_and_berry_log.png differ diff --git a/public/textures/farmers_delight_christmas_editio/cream_cheese_and_berry_log_slice.png b/public/textures/farmers_delight_christmas_editio/cream_cheese_and_berry_log_slice.png new file mode 100644 index 00000000..737e98c7 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/cream_cheese_and_berry_log_slice.png differ diff --git a/public/textures/farmers_delight_christmas_editio/crushed_candy_cane.png b/public/textures/farmers_delight_christmas_editio/crushed_candy_cane.png new file mode 100644 index 00000000..8b2f90b9 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/crushed_candy_cane.png differ diff --git a/public/textures/farmers_delight_christmas_editio/cyan_frosted_gingerbread_cookie.png b/public/textures/farmers_delight_christmas_editio/cyan_frosted_gingerbread_cookie.png new file mode 100644 index 00000000..1ece02e7 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/cyan_frosted_gingerbread_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/cyan_gingerbread_man.png b/public/textures/farmers_delight_christmas_editio/cyan_gingerbread_man.png new file mode 100644 index 00000000..74a61b48 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/cyan_gingerbread_man.png differ diff --git a/public/textures/farmers_delight_christmas_editio/cyan_gingerbread_star.png b/public/textures/farmers_delight_christmas_editio/cyan_gingerbread_star.png new file mode 100644 index 00000000..2a22e837 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/cyan_gingerbread_star.png differ diff --git a/public/textures/farmers_delight_christmas_editio/cyan_gingerbread_tree.png b/public/textures/farmers_delight_christmas_editio/cyan_gingerbread_tree.png new file mode 100644 index 00000000..54183a25 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/cyan_gingerbread_tree.png differ diff --git a/public/textures/farmers_delight_christmas_editio/cyan_royal_frosting.png b/public/textures/farmers_delight_christmas_editio/cyan_royal_frosting.png new file mode 100644 index 00000000..bac64cbd Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/cyan_royal_frosting.png differ diff --git a/public/textures/farmers_delight_christmas_editio/cyan_sugar_cookie.png b/public/textures/farmers_delight_christmas_editio/cyan_sugar_cookie.png new file mode 100644 index 00000000..d350d5dc Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/cyan_sugar_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/eggnog.png b/public/textures/farmers_delight_christmas_editio/eggnog.png new file mode 100644 index 00000000..bb5627fb Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/eggnog.png differ diff --git a/public/textures/farmers_delight_christmas_editio/frosted_gingerbread_circle.png b/public/textures/farmers_delight_christmas_editio/frosted_gingerbread_circle.png new file mode 100644 index 00000000..d8bd3f9d Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/frosted_gingerbread_circle.png differ diff --git a/public/textures/farmers_delight_christmas_editio/frosted_gingerbread_man.png b/public/textures/farmers_delight_christmas_editio/frosted_gingerbread_man.png new file mode 100644 index 00000000..a0f7f41c Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/frosted_gingerbread_man.png differ diff --git a/public/textures/farmers_delight_christmas_editio/frosted_gingerbread_star.png b/public/textures/farmers_delight_christmas_editio/frosted_gingerbread_star.png new file mode 100644 index 00000000..96e1f738 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/frosted_gingerbread_star.png differ diff --git a/public/textures/farmers_delight_christmas_editio/frosted_gingerbread_tree.png b/public/textures/farmers_delight_christmas_editio/frosted_gingerbread_tree.png new file mode 100644 index 00000000..bdd3e804 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/frosted_gingerbread_tree.png differ diff --git a/public/textures/farmers_delight_christmas_editio/gray_frosted_gingerbread_cookie.png b/public/textures/farmers_delight_christmas_editio/gray_frosted_gingerbread_cookie.png new file mode 100644 index 00000000..bddb1410 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/gray_frosted_gingerbread_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/gray_frosting.png b/public/textures/farmers_delight_christmas_editio/gray_frosting.png new file mode 100644 index 00000000..411fece3 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/gray_frosting.png differ diff --git a/public/textures/farmers_delight_christmas_editio/gray_gingerbread_man.png b/public/textures/farmers_delight_christmas_editio/gray_gingerbread_man.png new file mode 100644 index 00000000..b9ede467 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/gray_gingerbread_man.png differ diff --git a/public/textures/farmers_delight_christmas_editio/gray_gingerbread_star.png b/public/textures/farmers_delight_christmas_editio/gray_gingerbread_star.png new file mode 100644 index 00000000..27c78433 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/gray_gingerbread_star.png differ diff --git a/public/textures/farmers_delight_christmas_editio/gray_gingerbread_tree.png b/public/textures/farmers_delight_christmas_editio/gray_gingerbread_tree.png new file mode 100644 index 00000000..7b1d9cd2 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/gray_gingerbread_tree.png differ diff --git a/public/textures/farmers_delight_christmas_editio/gray_sugar_cookie.png b/public/textures/farmers_delight_christmas_editio/gray_sugar_cookie.png new file mode 100644 index 00000000..81ead91b Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/gray_sugar_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/green_frosted_gingerbread_cookie.png b/public/textures/farmers_delight_christmas_editio/green_frosted_gingerbread_cookie.png new file mode 100644 index 00000000..ccde64b8 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/green_frosted_gingerbread_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/green_gingerbread_man.png b/public/textures/farmers_delight_christmas_editio/green_gingerbread_man.png new file mode 100644 index 00000000..59494e53 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/green_gingerbread_man.png differ diff --git a/public/textures/farmers_delight_christmas_editio/green_gingerbread_star.png b/public/textures/farmers_delight_christmas_editio/green_gingerbread_star.png new file mode 100644 index 00000000..032aed9f Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/green_gingerbread_star.png differ diff --git a/public/textures/farmers_delight_christmas_editio/green_gingerbread_tree.png b/public/textures/farmers_delight_christmas_editio/green_gingerbread_tree.png new file mode 100644 index 00000000..c1efe6b5 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/green_gingerbread_tree.png differ diff --git a/public/textures/farmers_delight_christmas_editio/green_royal_frosting.png b/public/textures/farmers_delight_christmas_editio/green_royal_frosting.png new file mode 100644 index 00000000..f439e723 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/green_royal_frosting.png differ diff --git a/public/textures/farmers_delight_christmas_editio/green_sugar_cookie.png b/public/textures/farmers_delight_christmas_editio/green_sugar_cookie.png new file mode 100644 index 00000000..70b20f7a Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/green_sugar_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/hot_cocoa_with_marshmallows.png b/public/textures/farmers_delight_christmas_editio/hot_cocoa_with_marshmallows.png new file mode 100644 index 00000000..88dffaa6 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/hot_cocoa_with_marshmallows.png differ diff --git a/public/textures/farmers_delight_christmas_editio/hot_cocoa_with_marshmallows_and_candy_cane.png b/public/textures/farmers_delight_christmas_editio/hot_cocoa_with_marshmallows_and_candy_cane.png new file mode 100644 index 00000000..31af941d Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/hot_cocoa_with_marshmallows_and_candy_cane.png differ diff --git a/public/textures/farmers_delight_christmas_editio/hot_cocoa_with_marshmallows_and_cinnamon.png b/public/textures/farmers_delight_christmas_editio/hot_cocoa_with_marshmallows_and_cinnamon.png new file mode 100644 index 00000000..faedd4cd Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/hot_cocoa_with_marshmallows_and_cinnamon.png differ diff --git a/public/textures/farmers_delight_christmas_editio/hot_cocoa_with_marshmallows_and_peppermint.png b/public/textures/farmers_delight_christmas_editio/hot_cocoa_with_marshmallows_and_peppermint.png new file mode 100644 index 00000000..1cb1cfa1 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/hot_cocoa_with_marshmallows_and_peppermint.png differ diff --git a/public/textures/farmers_delight_christmas_editio/light_blue_frosted_gingerbread_cookie.png b/public/textures/farmers_delight_christmas_editio/light_blue_frosted_gingerbread_cookie.png new file mode 100644 index 00000000..31dad7ff Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/light_blue_frosted_gingerbread_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/light_blue_gingerbread_man.png b/public/textures/farmers_delight_christmas_editio/light_blue_gingerbread_man.png new file mode 100644 index 00000000..f4c3e5d5 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/light_blue_gingerbread_man.png differ diff --git a/public/textures/farmers_delight_christmas_editio/light_blue_gingerbread_star.png b/public/textures/farmers_delight_christmas_editio/light_blue_gingerbread_star.png new file mode 100644 index 00000000..0236c048 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/light_blue_gingerbread_star.png differ diff --git a/public/textures/farmers_delight_christmas_editio/light_blue_gingerbread_tree.png b/public/textures/farmers_delight_christmas_editio/light_blue_gingerbread_tree.png new file mode 100644 index 00000000..41a81603 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/light_blue_gingerbread_tree.png differ diff --git a/public/textures/farmers_delight_christmas_editio/light_blue_royal_frosting.png b/public/textures/farmers_delight_christmas_editio/light_blue_royal_frosting.png new file mode 100644 index 00000000..96c96445 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/light_blue_royal_frosting.png differ diff --git a/public/textures/farmers_delight_christmas_editio/light_blue_sugar_cookie.png b/public/textures/farmers_delight_christmas_editio/light_blue_sugar_cookie.png new file mode 100644 index 00000000..ec0a684e Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/light_blue_sugar_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/light_gray_frosted_gingerbread_cookie.png b/public/textures/farmers_delight_christmas_editio/light_gray_frosted_gingerbread_cookie.png new file mode 100644 index 00000000..e7b401ed Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/light_gray_frosted_gingerbread_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/light_gray_frosting.png b/public/textures/farmers_delight_christmas_editio/light_gray_frosting.png new file mode 100644 index 00000000..b418edac Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/light_gray_frosting.png differ diff --git a/public/textures/farmers_delight_christmas_editio/light_gray_gingerbread_man.png b/public/textures/farmers_delight_christmas_editio/light_gray_gingerbread_man.png new file mode 100644 index 00000000..2d63bf4b Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/light_gray_gingerbread_man.png differ diff --git a/public/textures/farmers_delight_christmas_editio/light_gray_gingerbread_star.png b/public/textures/farmers_delight_christmas_editio/light_gray_gingerbread_star.png new file mode 100644 index 00000000..7f6dac43 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/light_gray_gingerbread_star.png differ diff --git a/public/textures/farmers_delight_christmas_editio/light_gray_gingerbread_tree.png b/public/textures/farmers_delight_christmas_editio/light_gray_gingerbread_tree.png new file mode 100644 index 00000000..1db9f1cb Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/light_gray_gingerbread_tree.png differ diff --git a/public/textures/farmers_delight_christmas_editio/light_gray_sugar_cookie.png b/public/textures/farmers_delight_christmas_editio/light_gray_sugar_cookie.png new file mode 100644 index 00000000..17a1b47a Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/light_gray_sugar_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/lime_frosted_gingerbread_cookie.png b/public/textures/farmers_delight_christmas_editio/lime_frosted_gingerbread_cookie.png new file mode 100644 index 00000000..9da06e55 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/lime_frosted_gingerbread_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/lime_gingerbread_man.png b/public/textures/farmers_delight_christmas_editio/lime_gingerbread_man.png new file mode 100644 index 00000000..8beb2def Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/lime_gingerbread_man.png differ diff --git a/public/textures/farmers_delight_christmas_editio/lime_gingerbread_star.png b/public/textures/farmers_delight_christmas_editio/lime_gingerbread_star.png new file mode 100644 index 00000000..13549259 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/lime_gingerbread_star.png differ diff --git a/public/textures/farmers_delight_christmas_editio/lime_gingerbread_tree.png b/public/textures/farmers_delight_christmas_editio/lime_gingerbread_tree.png new file mode 100644 index 00000000..e0f0cacc Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/lime_gingerbread_tree.png differ diff --git a/public/textures/farmers_delight_christmas_editio/lime_royal_frosting.png b/public/textures/farmers_delight_christmas_editio/lime_royal_frosting.png new file mode 100644 index 00000000..2b7fbe93 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/lime_royal_frosting.png differ diff --git a/public/textures/farmers_delight_christmas_editio/lime_sugar_cookie.png b/public/textures/farmers_delight_christmas_editio/lime_sugar_cookie.png new file mode 100644 index 00000000..661b475d Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/lime_sugar_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/magenta_frosted_gingerbread_cookie.png b/public/textures/farmers_delight_christmas_editio/magenta_frosted_gingerbread_cookie.png new file mode 100644 index 00000000..fbcfa4df Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/magenta_frosted_gingerbread_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/magenta_gingerbread_man.png b/public/textures/farmers_delight_christmas_editio/magenta_gingerbread_man.png new file mode 100644 index 00000000..7659a28b Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/magenta_gingerbread_man.png differ diff --git a/public/textures/farmers_delight_christmas_editio/magenta_gingerbread_star.png b/public/textures/farmers_delight_christmas_editio/magenta_gingerbread_star.png new file mode 100644 index 00000000..89e07847 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/magenta_gingerbread_star.png differ diff --git a/public/textures/farmers_delight_christmas_editio/magenta_gingerbread_tree.png b/public/textures/farmers_delight_christmas_editio/magenta_gingerbread_tree.png new file mode 100644 index 00000000..5719925a Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/magenta_gingerbread_tree.png differ diff --git a/public/textures/farmers_delight_christmas_editio/magenta_royal_frosting.png b/public/textures/farmers_delight_christmas_editio/magenta_royal_frosting.png new file mode 100644 index 00000000..4d929dbe Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/magenta_royal_frosting.png differ diff --git a/public/textures/farmers_delight_christmas_editio/magenta_sugar_cookie.png b/public/textures/farmers_delight_christmas_editio/magenta_sugar_cookie.png new file mode 100644 index 00000000..c6a7d363 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/magenta_sugar_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/man_cutter.png b/public/textures/farmers_delight_christmas_editio/man_cutter.png new file mode 100644 index 00000000..75abd106 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/man_cutter.png differ diff --git a/public/textures/farmers_delight_christmas_editio/marshmallow.png b/public/textures/farmers_delight_christmas_editio/marshmallow.png new file mode 100644 index 00000000..250eab64 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/marshmallow.png differ diff --git a/public/textures/farmers_delight_christmas_editio/orange_frosted_gingerbread_cookie.png b/public/textures/farmers_delight_christmas_editio/orange_frosted_gingerbread_cookie.png new file mode 100644 index 00000000..9bb9d1d6 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/orange_frosted_gingerbread_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/orange_gingerbread_man.png b/public/textures/farmers_delight_christmas_editio/orange_gingerbread_man.png new file mode 100644 index 00000000..35f4c3b9 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/orange_gingerbread_man.png differ diff --git a/public/textures/farmers_delight_christmas_editio/orange_gingerbread_star.png b/public/textures/farmers_delight_christmas_editio/orange_gingerbread_star.png new file mode 100644 index 00000000..ef70abbd Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/orange_gingerbread_star.png differ diff --git a/public/textures/farmers_delight_christmas_editio/orange_gingerbread_tree.png b/public/textures/farmers_delight_christmas_editio/orange_gingerbread_tree.png new file mode 100644 index 00000000..3289a8cc Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/orange_gingerbread_tree.png differ diff --git a/public/textures/farmers_delight_christmas_editio/orange_royal_frosting.png b/public/textures/farmers_delight_christmas_editio/orange_royal_frosting.png new file mode 100644 index 00000000..26ace090 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/orange_royal_frosting.png differ diff --git a/public/textures/farmers_delight_christmas_editio/orange_sugar_cookie.png b/public/textures/farmers_delight_christmas_editio/orange_sugar_cookie.png new file mode 100644 index 00000000..bed43987 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/orange_sugar_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/pink_frosted_gingerbread_cookie.png b/public/textures/farmers_delight_christmas_editio/pink_frosted_gingerbread_cookie.png new file mode 100644 index 00000000..1e0000fd Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/pink_frosted_gingerbread_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/pink_gingerbread_man.png b/public/textures/farmers_delight_christmas_editio/pink_gingerbread_man.png new file mode 100644 index 00000000..a97fa686 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/pink_gingerbread_man.png differ diff --git a/public/textures/farmers_delight_christmas_editio/pink_gingerbread_star.png b/public/textures/farmers_delight_christmas_editio/pink_gingerbread_star.png new file mode 100644 index 00000000..6f2d146a Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/pink_gingerbread_star.png differ diff --git a/public/textures/farmers_delight_christmas_editio/pink_gingerbread_tree.png b/public/textures/farmers_delight_christmas_editio/pink_gingerbread_tree.png new file mode 100644 index 00000000..cebe17e0 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/pink_gingerbread_tree.png differ diff --git a/public/textures/farmers_delight_christmas_editio/pink_royal_frosting.png b/public/textures/farmers_delight_christmas_editio/pink_royal_frosting.png new file mode 100644 index 00000000..22a73d9a Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/pink_royal_frosting.png differ diff --git a/public/textures/farmers_delight_christmas_editio/pink_sugar_cookie.png b/public/textures/farmers_delight_christmas_editio/pink_sugar_cookie.png new file mode 100644 index 00000000..c6df4805 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/pink_sugar_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/purple_frosted_gingerbread_cookie.png b/public/textures/farmers_delight_christmas_editio/purple_frosted_gingerbread_cookie.png new file mode 100644 index 00000000..8e2217c5 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/purple_frosted_gingerbread_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/purple_gingerbread_man.png b/public/textures/farmers_delight_christmas_editio/purple_gingerbread_man.png new file mode 100644 index 00000000..76c8eaf7 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/purple_gingerbread_man.png differ diff --git a/public/textures/farmers_delight_christmas_editio/purple_gingerbread_star.png b/public/textures/farmers_delight_christmas_editio/purple_gingerbread_star.png new file mode 100644 index 00000000..ffa4d3c7 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/purple_gingerbread_star.png differ diff --git a/public/textures/farmers_delight_christmas_editio/purple_gingerbread_tree.png b/public/textures/farmers_delight_christmas_editio/purple_gingerbread_tree.png new file mode 100644 index 00000000..c556a29f Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/purple_gingerbread_tree.png differ diff --git a/public/textures/farmers_delight_christmas_editio/purple_royal_frosting.png b/public/textures/farmers_delight_christmas_editio/purple_royal_frosting.png new file mode 100644 index 00000000..5851b480 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/purple_royal_frosting.png differ diff --git a/public/textures/farmers_delight_christmas_editio/purplesugarcookie.png b/public/textures/farmers_delight_christmas_editio/purplesugarcookie.png new file mode 100644 index 00000000..16141cb3 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/purplesugarcookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/raw_gingerbread_cookie.png b/public/textures/farmers_delight_christmas_editio/raw_gingerbread_cookie.png new file mode 100644 index 00000000..98fa90d4 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/raw_gingerbread_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/raw_gingerbread_dough.png b/public/textures/farmers_delight_christmas_editio/raw_gingerbread_dough.png new file mode 100644 index 00000000..cd0df6ae Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/raw_gingerbread_dough.png differ diff --git a/public/textures/farmers_delight_christmas_editio/raw_gingerbread_man.png b/public/textures/farmers_delight_christmas_editio/raw_gingerbread_man.png new file mode 100644 index 00000000..60707450 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/raw_gingerbread_man.png differ diff --git a/public/textures/farmers_delight_christmas_editio/raw_gingerbread_star.png b/public/textures/farmers_delight_christmas_editio/raw_gingerbread_star.png new file mode 100644 index 00000000..b7bc5f58 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/raw_gingerbread_star.png differ diff --git a/public/textures/farmers_delight_christmas_editio/raw_gingerbread_tree.png b/public/textures/farmers_delight_christmas_editio/raw_gingerbread_tree.png new file mode 100644 index 00000000..1ae248fa Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/raw_gingerbread_tree.png differ diff --git a/public/textures/farmers_delight_christmas_editio/red_frosted_gingerbread_cookie.png b/public/textures/farmers_delight_christmas_editio/red_frosted_gingerbread_cookie.png new file mode 100644 index 00000000..6e033fd9 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/red_frosted_gingerbread_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/red_gingerbread_man.png b/public/textures/farmers_delight_christmas_editio/red_gingerbread_man.png new file mode 100644 index 00000000..249597f8 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/red_gingerbread_man.png differ diff --git a/public/textures/farmers_delight_christmas_editio/red_gingerbread_star.png b/public/textures/farmers_delight_christmas_editio/red_gingerbread_star.png new file mode 100644 index 00000000..7cd4f522 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/red_gingerbread_star.png differ diff --git a/public/textures/farmers_delight_christmas_editio/red_gingerbread_tree.png b/public/textures/farmers_delight_christmas_editio/red_gingerbread_tree.png new file mode 100644 index 00000000..0bfd8e23 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/red_gingerbread_tree.png differ diff --git a/public/textures/farmers_delight_christmas_editio/red_sugar_cookie.png b/public/textures/farmers_delight_christmas_editio/red_sugar_cookie.png new file mode 100644 index 00000000..8e4eb662 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/red_sugar_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/royal_frosting_blue.png b/public/textures/farmers_delight_christmas_editio/royal_frosting_blue.png new file mode 100644 index 00000000..71314924 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/royal_frosting_blue.png differ diff --git a/public/textures/farmers_delight_christmas_editio/royal_frosting_red.png b/public/textures/farmers_delight_christmas_editio/royal_frosting_red.png new file mode 100644 index 00000000..c95cae7e Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/royal_frosting_red.png differ diff --git a/public/textures/farmers_delight_christmas_editio/star_cookie_cutter.png b/public/textures/farmers_delight_christmas_editio/star_cookie_cutter.png new file mode 100644 index 00000000..517e38c3 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/star_cookie_cutter.png differ diff --git a/public/textures/farmers_delight_christmas_editio/sugar_cookie.png b/public/textures/farmers_delight_christmas_editio/sugar_cookie.png new file mode 100644 index 00000000..caac987c Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/sugar_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/tree_cookie_cutter.png b/public/textures/farmers_delight_christmas_editio/tree_cookie_cutter.png new file mode 100644 index 00000000..fe891e42 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/tree_cookie_cutter.png differ diff --git a/public/textures/farmers_delight_christmas_editio/vannila_ice_cream.png b/public/textures/farmers_delight_christmas_editio/vannila_ice_cream.png new file mode 100644 index 00000000..0f250727 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/vannila_ice_cream.png differ diff --git a/public/textures/farmers_delight_christmas_editio/white_frosted_gingerbread_cookie.png b/public/textures/farmers_delight_christmas_editio/white_frosted_gingerbread_cookie.png new file mode 100644 index 00000000..0ad716e5 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/white_frosted_gingerbread_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/white_gingerbread_man.png b/public/textures/farmers_delight_christmas_editio/white_gingerbread_man.png new file mode 100644 index 00000000..c82cacda Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/white_gingerbread_man.png differ diff --git a/public/textures/farmers_delight_christmas_editio/white_gingerbread_star.png b/public/textures/farmers_delight_christmas_editio/white_gingerbread_star.png new file mode 100644 index 00000000..dc1e5817 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/white_gingerbread_star.png differ diff --git a/public/textures/farmers_delight_christmas_editio/white_royal_frosting.png b/public/textures/farmers_delight_christmas_editio/white_royal_frosting.png new file mode 100644 index 00000000..8e6dcaa5 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/white_royal_frosting.png differ diff --git a/public/textures/farmers_delight_christmas_editio/white_sugar_cookie.png b/public/textures/farmers_delight_christmas_editio/white_sugar_cookie.png new file mode 100644 index 00000000..f3e9fd8c Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/white_sugar_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/wrapped_chocolate_coin.png b/public/textures/farmers_delight_christmas_editio/wrapped_chocolate_coin.png new file mode 100644 index 00000000..b5848997 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/wrapped_chocolate_coin.png differ diff --git a/public/textures/farmers_delight_christmas_editio/yellow_frosted_gingerbread_cookie.png b/public/textures/farmers_delight_christmas_editio/yellow_frosted_gingerbread_cookie.png new file mode 100644 index 00000000..11950533 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/yellow_frosted_gingerbread_cookie.png differ diff --git a/public/textures/farmers_delight_christmas_editio/yellow_gingerbread_man.png b/public/textures/farmers_delight_christmas_editio/yellow_gingerbread_man.png new file mode 100644 index 00000000..7732a850 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/yellow_gingerbread_man.png differ diff --git a/public/textures/farmers_delight_christmas_editio/yellow_gingerbread_star.png b/public/textures/farmers_delight_christmas_editio/yellow_gingerbread_star.png new file mode 100644 index 00000000..67056d1e Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/yellow_gingerbread_star.png differ diff --git a/public/textures/farmers_delight_christmas_editio/yellow_gingerbread_tree.png b/public/textures/farmers_delight_christmas_editio/yellow_gingerbread_tree.png new file mode 100644 index 00000000..b70ae22b Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/yellow_gingerbread_tree.png differ diff --git a/public/textures/farmers_delight_christmas_editio/yellow_royal_frosting.png b/public/textures/farmers_delight_christmas_editio/yellow_royal_frosting.png new file mode 100644 index 00000000..2ff12a0a Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/yellow_royal_frosting.png differ diff --git a/public/textures/farmers_delight_christmas_editio/yellow_sugar_cookie.png b/public/textures/farmers_delight_christmas_editio/yellow_sugar_cookie.png new file mode 100644 index 00000000..483bcf66 Binary files /dev/null and b/public/textures/farmers_delight_christmas_editio/yellow_sugar_cookie.png differ diff --git a/public/textures/farmersdelight/acacia_cabinet.png b/public/textures/farmersdelight/acacia_cabinet.png new file mode 100644 index 00000000..78acf0ff Binary files /dev/null and b/public/textures/farmersdelight/acacia_cabinet.png differ diff --git a/public/textures/farmersdelight/apple_cider.png b/public/textures/farmersdelight/apple_cider.png new file mode 100644 index 00000000..b41ecfca Binary files /dev/null and b/public/textures/farmersdelight/apple_cider.png differ diff --git a/public/textures/farmersdelight/apple_pie.png b/public/textures/farmersdelight/apple_pie.png new file mode 100644 index 00000000..f3a3d8ab Binary files /dev/null and b/public/textures/farmersdelight/apple_pie.png differ diff --git a/public/textures/farmersdelight/apple_pie_slice.png b/public/textures/farmersdelight/apple_pie_slice.png new file mode 100644 index 00000000..ae536d69 Binary files /dev/null and b/public/textures/farmersdelight/apple_pie_slice.png differ diff --git a/public/textures/farmersdelight/bacon.png b/public/textures/farmersdelight/bacon.png new file mode 100644 index 00000000..025469a5 Binary files /dev/null and b/public/textures/farmersdelight/bacon.png differ diff --git a/public/textures/farmersdelight/bacon_and_eggs.png b/public/textures/farmersdelight/bacon_and_eggs.png new file mode 100644 index 00000000..ba78a79d Binary files /dev/null and b/public/textures/farmersdelight/bacon_and_eggs.png differ diff --git a/public/textures/farmersdelight/bacon_sandwich.png b/public/textures/farmersdelight/bacon_sandwich.png new file mode 100644 index 00000000..fd2e08c5 Binary files /dev/null and b/public/textures/farmersdelight/bacon_sandwich.png differ diff --git a/public/textures/farmersdelight/baked_cod_stew.png b/public/textures/farmersdelight/baked_cod_stew.png new file mode 100644 index 00000000..982b5788 Binary files /dev/null and b/public/textures/farmersdelight/baked_cod_stew.png differ diff --git a/public/textures/farmersdelight/bamboo_cabinet.png b/public/textures/farmersdelight/bamboo_cabinet.png new file mode 100644 index 00000000..be729eb3 Binary files /dev/null and b/public/textures/farmersdelight/bamboo_cabinet.png differ diff --git a/public/textures/farmersdelight/barbecue_stick.png b/public/textures/farmersdelight/barbecue_stick.png new file mode 100644 index 00000000..af340bb8 Binary files /dev/null and b/public/textures/farmersdelight/barbecue_stick.png differ diff --git a/public/textures/farmersdelight/basket.png b/public/textures/farmersdelight/basket.png new file mode 100644 index 00000000..9975d190 Binary files /dev/null and b/public/textures/farmersdelight/basket.png differ diff --git a/public/textures/farmersdelight/beef_patty.png b/public/textures/farmersdelight/beef_patty.png new file mode 100644 index 00000000..b7e0586c Binary files /dev/null and b/public/textures/farmersdelight/beef_patty.png differ diff --git a/public/textures/farmersdelight/beef_stew.png b/public/textures/farmersdelight/beef_stew.png new file mode 100644 index 00000000..7b857fa0 Binary files /dev/null and b/public/textures/farmersdelight/beef_stew.png differ diff --git a/public/textures/farmersdelight/beetroot_crate.png b/public/textures/farmersdelight/beetroot_crate.png new file mode 100644 index 00000000..31478732 Binary files /dev/null and b/public/textures/farmersdelight/beetroot_crate.png differ diff --git a/public/textures/farmersdelight/birch_cabinet.png b/public/textures/farmersdelight/birch_cabinet.png new file mode 100644 index 00000000..a9f41360 Binary files /dev/null and b/public/textures/farmersdelight/birch_cabinet.png differ diff --git a/public/textures/farmersdelight/black_canvas_sign.png b/public/textures/farmersdelight/black_canvas_sign.png new file mode 100644 index 00000000..bfa3caa7 Binary files /dev/null and b/public/textures/farmersdelight/black_canvas_sign.png differ diff --git a/public/textures/farmersdelight/black_hanging_canvas_sign.png b/public/textures/farmersdelight/black_hanging_canvas_sign.png new file mode 100644 index 00000000..580070fa Binary files /dev/null and b/public/textures/farmersdelight/black_hanging_canvas_sign.png differ diff --git a/public/textures/farmersdelight/blue_canvas_sign.png b/public/textures/farmersdelight/blue_canvas_sign.png new file mode 100644 index 00000000..262d5065 Binary files /dev/null and b/public/textures/farmersdelight/blue_canvas_sign.png differ diff --git a/public/textures/farmersdelight/blue_hanging_canvas_sign.png b/public/textures/farmersdelight/blue_hanging_canvas_sign.png new file mode 100644 index 00000000..e6c15432 Binary files /dev/null and b/public/textures/farmersdelight/blue_hanging_canvas_sign.png differ diff --git a/public/textures/farmersdelight/bone_broth.png b/public/textures/farmersdelight/bone_broth.png new file mode 100644 index 00000000..a11ccb58 Binary files /dev/null and b/public/textures/farmersdelight/bone_broth.png differ diff --git a/public/textures/farmersdelight/brown_canvas_sign.png b/public/textures/farmersdelight/brown_canvas_sign.png new file mode 100644 index 00000000..0d63ede6 Binary files /dev/null and b/public/textures/farmersdelight/brown_canvas_sign.png differ diff --git a/public/textures/farmersdelight/brown_hanging_canvas_sign.png b/public/textures/farmersdelight/brown_hanging_canvas_sign.png new file mode 100644 index 00000000..15e0680a Binary files /dev/null and b/public/textures/farmersdelight/brown_hanging_canvas_sign.png differ diff --git a/public/textures/farmersdelight/brown_mushroom_colony.png b/public/textures/farmersdelight/brown_mushroom_colony.png new file mode 100644 index 00000000..347a7e88 Binary files /dev/null and b/public/textures/farmersdelight/brown_mushroom_colony.png differ diff --git a/public/textures/farmersdelight/cabbage.png b/public/textures/farmersdelight/cabbage.png new file mode 100644 index 00000000..d37eda61 Binary files /dev/null and b/public/textures/farmersdelight/cabbage.png differ diff --git a/public/textures/farmersdelight/cabbage_crate.png b/public/textures/farmersdelight/cabbage_crate.png new file mode 100644 index 00000000..b08dcf39 Binary files /dev/null and b/public/textures/farmersdelight/cabbage_crate.png differ diff --git a/public/textures/farmersdelight/cabbage_leaf.png b/public/textures/farmersdelight/cabbage_leaf.png new file mode 100644 index 00000000..be5cb758 Binary files /dev/null and b/public/textures/farmersdelight/cabbage_leaf.png differ diff --git a/public/textures/farmersdelight/cabbage_rolls.png b/public/textures/farmersdelight/cabbage_rolls.png new file mode 100644 index 00000000..a63c6f2f Binary files /dev/null and b/public/textures/farmersdelight/cabbage_rolls.png differ diff --git a/public/textures/farmersdelight/cabbage_seeds.png b/public/textures/farmersdelight/cabbage_seeds.png new file mode 100644 index 00000000..2c78181b Binary files /dev/null and b/public/textures/farmersdelight/cabbage_seeds.png differ diff --git a/public/textures/farmersdelight/cake_slice.png b/public/textures/farmersdelight/cake_slice.png new file mode 100644 index 00000000..e0b9d42d Binary files /dev/null and b/public/textures/farmersdelight/cake_slice.png differ diff --git a/public/textures/farmersdelight/canvas.png b/public/textures/farmersdelight/canvas.png new file mode 100644 index 00000000..3e3dad54 Binary files /dev/null and b/public/textures/farmersdelight/canvas.png differ diff --git a/public/textures/farmersdelight/canvas_rug.png b/public/textures/farmersdelight/canvas_rug.png new file mode 100644 index 00000000..0cec61e2 Binary files /dev/null and b/public/textures/farmersdelight/canvas_rug.png differ diff --git a/public/textures/farmersdelight/canvas_sign.png b/public/textures/farmersdelight/canvas_sign.png new file mode 100644 index 00000000..7c3df052 Binary files /dev/null and b/public/textures/farmersdelight/canvas_sign.png differ diff --git a/public/textures/farmersdelight/carrot_crate.png b/public/textures/farmersdelight/carrot_crate.png new file mode 100644 index 00000000..43cd796d Binary files /dev/null and b/public/textures/farmersdelight/carrot_crate.png differ diff --git a/public/textures/farmersdelight/cherry_cabinet.png b/public/textures/farmersdelight/cherry_cabinet.png new file mode 100644 index 00000000..4c7a3acc Binary files /dev/null and b/public/textures/farmersdelight/cherry_cabinet.png differ diff --git a/public/textures/farmersdelight/chicken_cuts.png b/public/textures/farmersdelight/chicken_cuts.png new file mode 100644 index 00000000..512d47e1 Binary files /dev/null and b/public/textures/farmersdelight/chicken_cuts.png differ diff --git a/public/textures/farmersdelight/chicken_sandwich.png b/public/textures/farmersdelight/chicken_sandwich.png new file mode 100644 index 00000000..20c39dea Binary files /dev/null and b/public/textures/farmersdelight/chicken_sandwich.png differ diff --git a/public/textures/farmersdelight/chicken_soup.png b/public/textures/farmersdelight/chicken_soup.png new file mode 100644 index 00000000..bef6a912 Binary files /dev/null and b/public/textures/farmersdelight/chicken_soup.png differ diff --git a/public/textures/farmersdelight/chocolate_pie.png b/public/textures/farmersdelight/chocolate_pie.png new file mode 100644 index 00000000..fa4f99f2 Binary files /dev/null and b/public/textures/farmersdelight/chocolate_pie.png differ diff --git a/public/textures/farmersdelight/chocolate_pie_slice.png b/public/textures/farmersdelight/chocolate_pie_slice.png new file mode 100644 index 00000000..a3cc9cfc Binary files /dev/null and b/public/textures/farmersdelight/chocolate_pie_slice.png differ diff --git a/public/textures/farmersdelight/cod_roll.png b/public/textures/farmersdelight/cod_roll.png new file mode 100644 index 00000000..a91591cb Binary files /dev/null and b/public/textures/farmersdelight/cod_roll.png differ diff --git a/public/textures/farmersdelight/cod_slice.png b/public/textures/farmersdelight/cod_slice.png new file mode 100644 index 00000000..d01a4cbe Binary files /dev/null and b/public/textures/farmersdelight/cod_slice.png differ diff --git a/public/textures/farmersdelight/cooked_bacon.png b/public/textures/farmersdelight/cooked_bacon.png new file mode 100644 index 00000000..ba0cdffb Binary files /dev/null and b/public/textures/farmersdelight/cooked_bacon.png differ diff --git a/public/textures/farmersdelight/cooked_chicken_cuts.png b/public/textures/farmersdelight/cooked_chicken_cuts.png new file mode 100644 index 00000000..c08204b7 Binary files /dev/null and b/public/textures/farmersdelight/cooked_chicken_cuts.png differ diff --git a/public/textures/farmersdelight/cooked_cod_slice.png b/public/textures/farmersdelight/cooked_cod_slice.png new file mode 100644 index 00000000..1f64cf74 Binary files /dev/null and b/public/textures/farmersdelight/cooked_cod_slice.png differ diff --git a/public/textures/farmersdelight/cooked_mutton_chops.png b/public/textures/farmersdelight/cooked_mutton_chops.png new file mode 100644 index 00000000..fe0b3f3a Binary files /dev/null and b/public/textures/farmersdelight/cooked_mutton_chops.png differ diff --git a/public/textures/farmersdelight/cooked_rice.png b/public/textures/farmersdelight/cooked_rice.png new file mode 100644 index 00000000..42446c4e Binary files /dev/null and b/public/textures/farmersdelight/cooked_rice.png differ diff --git a/public/textures/farmersdelight/cooked_salmon_slice.png b/public/textures/farmersdelight/cooked_salmon_slice.png new file mode 100644 index 00000000..94d4b011 Binary files /dev/null and b/public/textures/farmersdelight/cooked_salmon_slice.png differ diff --git a/public/textures/farmersdelight/cooking_pot.png b/public/textures/farmersdelight/cooking_pot.png new file mode 100644 index 00000000..d24bc8d9 Binary files /dev/null and b/public/textures/farmersdelight/cooking_pot.png differ diff --git a/public/textures/farmersdelight/crimson_cabinet.png b/public/textures/farmersdelight/crimson_cabinet.png new file mode 100644 index 00000000..076dc821 Binary files /dev/null and b/public/textures/farmersdelight/crimson_cabinet.png differ diff --git a/public/textures/farmersdelight/cutting_board.png b/public/textures/farmersdelight/cutting_board.png new file mode 100644 index 00000000..16e11c26 Binary files /dev/null and b/public/textures/farmersdelight/cutting_board.png differ diff --git a/public/textures/farmersdelight/cyan_canvas_sign.png b/public/textures/farmersdelight/cyan_canvas_sign.png new file mode 100644 index 00000000..34724257 Binary files /dev/null and b/public/textures/farmersdelight/cyan_canvas_sign.png differ diff --git a/public/textures/farmersdelight/cyan_hanging_canvas_sign.png b/public/textures/farmersdelight/cyan_hanging_canvas_sign.png new file mode 100644 index 00000000..7a75460f Binary files /dev/null and b/public/textures/farmersdelight/cyan_hanging_canvas_sign.png differ diff --git a/public/textures/farmersdelight/dark_oak_cabinet.png b/public/textures/farmersdelight/dark_oak_cabinet.png new file mode 100644 index 00000000..8692e3c8 Binary files /dev/null and b/public/textures/farmersdelight/dark_oak_cabinet.png differ diff --git a/public/textures/farmersdelight/diamond_knife.png b/public/textures/farmersdelight/diamond_knife.png new file mode 100644 index 00000000..bc5c8a3f Binary files /dev/null and b/public/textures/farmersdelight/diamond_knife.png differ diff --git a/public/textures/farmersdelight/dog_food.png b/public/textures/farmersdelight/dog_food.png new file mode 100644 index 00000000..e54a87bb Binary files /dev/null and b/public/textures/farmersdelight/dog_food.png differ diff --git a/public/textures/farmersdelight/dumplings.png b/public/textures/farmersdelight/dumplings.png new file mode 100644 index 00000000..ab84a6b9 Binary files /dev/null and b/public/textures/farmersdelight/dumplings.png differ diff --git a/public/textures/farmersdelight/egg_sandwich.png b/public/textures/farmersdelight/egg_sandwich.png new file mode 100644 index 00000000..b6e92641 Binary files /dev/null and b/public/textures/farmersdelight/egg_sandwich.png differ diff --git a/public/textures/farmersdelight/fish_stew.png b/public/textures/farmersdelight/fish_stew.png new file mode 100644 index 00000000..ecc861ea Binary files /dev/null and b/public/textures/farmersdelight/fish_stew.png differ diff --git a/public/textures/farmersdelight/flint_knife.png b/public/textures/farmersdelight/flint_knife.png new file mode 100644 index 00000000..baf2fa32 Binary files /dev/null and b/public/textures/farmersdelight/flint_knife.png differ diff --git a/public/textures/farmersdelight/fried_egg.png b/public/textures/farmersdelight/fried_egg.png new file mode 100644 index 00000000..f9d46a35 Binary files /dev/null and b/public/textures/farmersdelight/fried_egg.png differ diff --git a/public/textures/farmersdelight/fried_rice.png b/public/textures/farmersdelight/fried_rice.png new file mode 100644 index 00000000..4a479310 Binary files /dev/null and b/public/textures/farmersdelight/fried_rice.png differ diff --git a/public/textures/farmersdelight/fruit_salad.png b/public/textures/farmersdelight/fruit_salad.png new file mode 100644 index 00000000..c463f358 Binary files /dev/null and b/public/textures/farmersdelight/fruit_salad.png differ diff --git a/public/textures/farmersdelight/full_tatami_mat.png b/public/textures/farmersdelight/full_tatami_mat.png new file mode 100644 index 00000000..67016de0 Binary files /dev/null and b/public/textures/farmersdelight/full_tatami_mat.png differ diff --git a/public/textures/farmersdelight/glow_berry_custard.png b/public/textures/farmersdelight/glow_berry_custard.png new file mode 100644 index 00000000..54f9710a Binary files /dev/null and b/public/textures/farmersdelight/glow_berry_custard.png differ diff --git a/public/textures/farmersdelight/golden_knife.png b/public/textures/farmersdelight/golden_knife.png new file mode 100644 index 00000000..c73db7d6 Binary files /dev/null and b/public/textures/farmersdelight/golden_knife.png differ diff --git a/public/textures/farmersdelight/gray_canvas_sign.png b/public/textures/farmersdelight/gray_canvas_sign.png new file mode 100644 index 00000000..ce43af45 Binary files /dev/null and b/public/textures/farmersdelight/gray_canvas_sign.png differ diff --git a/public/textures/farmersdelight/gray_hanging_canvas_sign.png b/public/textures/farmersdelight/gray_hanging_canvas_sign.png new file mode 100644 index 00000000..167de660 Binary files /dev/null and b/public/textures/farmersdelight/gray_hanging_canvas_sign.png differ diff --git a/public/textures/farmersdelight/green_canvas_sign.png b/public/textures/farmersdelight/green_canvas_sign.png new file mode 100644 index 00000000..ce93a44e Binary files /dev/null and b/public/textures/farmersdelight/green_canvas_sign.png differ diff --git a/public/textures/farmersdelight/green_hanging_canvas_sign.png b/public/textures/farmersdelight/green_hanging_canvas_sign.png new file mode 100644 index 00000000..638d1a3d Binary files /dev/null and b/public/textures/farmersdelight/green_hanging_canvas_sign.png differ diff --git a/public/textures/farmersdelight/grilled_salmon.png b/public/textures/farmersdelight/grilled_salmon.png new file mode 100644 index 00000000..e07cb528 Binary files /dev/null and b/public/textures/farmersdelight/grilled_salmon.png differ diff --git a/public/textures/farmersdelight/half_tatami_mat.png b/public/textures/farmersdelight/half_tatami_mat.png new file mode 100644 index 00000000..0f4ea93e Binary files /dev/null and b/public/textures/farmersdelight/half_tatami_mat.png differ diff --git a/public/textures/farmersdelight/ham.png b/public/textures/farmersdelight/ham.png new file mode 100644 index 00000000..5afdc71c Binary files /dev/null and b/public/textures/farmersdelight/ham.png differ diff --git a/public/textures/farmersdelight/hamburger.png b/public/textures/farmersdelight/hamburger.png new file mode 100644 index 00000000..25419cda Binary files /dev/null and b/public/textures/farmersdelight/hamburger.png differ diff --git a/public/textures/farmersdelight/hanging_canvas_sign.png b/public/textures/farmersdelight/hanging_canvas_sign.png new file mode 100644 index 00000000..49157165 Binary files /dev/null and b/public/textures/farmersdelight/hanging_canvas_sign.png differ diff --git a/public/textures/farmersdelight/honey_cookie.png b/public/textures/farmersdelight/honey_cookie.png new file mode 100644 index 00000000..b69ffe03 Binary files /dev/null and b/public/textures/farmersdelight/honey_cookie.png differ diff --git a/public/textures/farmersdelight/honey_glazed_ham.png b/public/textures/farmersdelight/honey_glazed_ham.png new file mode 100644 index 00000000..b80a3ab1 Binary files /dev/null and b/public/textures/farmersdelight/honey_glazed_ham.png differ diff --git a/public/textures/farmersdelight/honey_glazed_ham_block.png b/public/textures/farmersdelight/honey_glazed_ham_block.png new file mode 100644 index 00000000..3e8acac1 Binary files /dev/null and b/public/textures/farmersdelight/honey_glazed_ham_block.png differ diff --git a/public/textures/farmersdelight/horse_feed.png b/public/textures/farmersdelight/horse_feed.png new file mode 100644 index 00000000..e42b4f1b Binary files /dev/null and b/public/textures/farmersdelight/horse_feed.png differ diff --git a/public/textures/farmersdelight/hot_cocoa.png b/public/textures/farmersdelight/hot_cocoa.png new file mode 100644 index 00000000..2e246497 Binary files /dev/null and b/public/textures/farmersdelight/hot_cocoa.png differ diff --git a/public/textures/farmersdelight/iron_knife.png b/public/textures/farmersdelight/iron_knife.png new file mode 100644 index 00000000..1707df37 Binary files /dev/null and b/public/textures/farmersdelight/iron_knife.png differ diff --git a/public/textures/farmersdelight/jungle_cabinet.png b/public/textures/farmersdelight/jungle_cabinet.png new file mode 100644 index 00000000..4e7fb1e9 Binary files /dev/null and b/public/textures/farmersdelight/jungle_cabinet.png differ diff --git a/public/textures/farmersdelight/kelp_roll.png b/public/textures/farmersdelight/kelp_roll.png new file mode 100644 index 00000000..ff31d17c Binary files /dev/null and b/public/textures/farmersdelight/kelp_roll.png differ diff --git a/public/textures/farmersdelight/kelp_roll_slice.png b/public/textures/farmersdelight/kelp_roll_slice.png new file mode 100644 index 00000000..5053a325 Binary files /dev/null and b/public/textures/farmersdelight/kelp_roll_slice.png differ diff --git a/public/textures/farmersdelight/light_blue_canvas_sign.png b/public/textures/farmersdelight/light_blue_canvas_sign.png new file mode 100644 index 00000000..b070f1b3 Binary files /dev/null and b/public/textures/farmersdelight/light_blue_canvas_sign.png differ diff --git a/public/textures/farmersdelight/light_blue_hanging_canvas_sign.png b/public/textures/farmersdelight/light_blue_hanging_canvas_sign.png new file mode 100644 index 00000000..3b6cdabb Binary files /dev/null and b/public/textures/farmersdelight/light_blue_hanging_canvas_sign.png differ diff --git a/public/textures/farmersdelight/light_gray_canvas_sign.png b/public/textures/farmersdelight/light_gray_canvas_sign.png new file mode 100644 index 00000000..a6cb04f4 Binary files /dev/null and b/public/textures/farmersdelight/light_gray_canvas_sign.png differ diff --git a/public/textures/farmersdelight/light_gray_hanging_canvas_sign.png b/public/textures/farmersdelight/light_gray_hanging_canvas_sign.png new file mode 100644 index 00000000..c5e8e6cf Binary files /dev/null and b/public/textures/farmersdelight/light_gray_hanging_canvas_sign.png differ diff --git a/public/textures/farmersdelight/lime_canvas_sign.png b/public/textures/farmersdelight/lime_canvas_sign.png new file mode 100644 index 00000000..0eed1a24 Binary files /dev/null and b/public/textures/farmersdelight/lime_canvas_sign.png differ diff --git a/public/textures/farmersdelight/lime_hanging_canvas_sign.png b/public/textures/farmersdelight/lime_hanging_canvas_sign.png new file mode 100644 index 00000000..cb15bb47 Binary files /dev/null and b/public/textures/farmersdelight/lime_hanging_canvas_sign.png differ diff --git a/public/textures/farmersdelight/magenta_canvas_sign.png b/public/textures/farmersdelight/magenta_canvas_sign.png new file mode 100644 index 00000000..5dd1cbc0 Binary files /dev/null and b/public/textures/farmersdelight/magenta_canvas_sign.png differ diff --git a/public/textures/farmersdelight/magenta_hanging_canvas_sign.png b/public/textures/farmersdelight/magenta_hanging_canvas_sign.png new file mode 100644 index 00000000..5195fe31 Binary files /dev/null and b/public/textures/farmersdelight/magenta_hanging_canvas_sign.png differ diff --git a/public/textures/farmersdelight/mangrove_cabinet.png b/public/textures/farmersdelight/mangrove_cabinet.png new file mode 100644 index 00000000..71e3f849 Binary files /dev/null and b/public/textures/farmersdelight/mangrove_cabinet.png differ diff --git a/public/textures/farmersdelight/melon_juice.png b/public/textures/farmersdelight/melon_juice.png new file mode 100644 index 00000000..5c57f976 Binary files /dev/null and b/public/textures/farmersdelight/melon_juice.png differ diff --git a/public/textures/farmersdelight/melon_popsicle.png b/public/textures/farmersdelight/melon_popsicle.png new file mode 100644 index 00000000..b9b75447 Binary files /dev/null and b/public/textures/farmersdelight/melon_popsicle.png differ diff --git a/public/textures/farmersdelight/milk_bottle.png b/public/textures/farmersdelight/milk_bottle.png new file mode 100644 index 00000000..395c9ae7 Binary files /dev/null and b/public/textures/farmersdelight/milk_bottle.png differ diff --git a/public/textures/farmersdelight/minced_beef.png b/public/textures/farmersdelight/minced_beef.png new file mode 100644 index 00000000..e06a32cf Binary files /dev/null and b/public/textures/farmersdelight/minced_beef.png differ diff --git a/public/textures/farmersdelight/mixed_salad.png b/public/textures/farmersdelight/mixed_salad.png new file mode 100644 index 00000000..e1c1c668 Binary files /dev/null and b/public/textures/farmersdelight/mixed_salad.png differ diff --git a/public/textures/farmersdelight/mushroom_rice.png b/public/textures/farmersdelight/mushroom_rice.png new file mode 100644 index 00000000..e498d0e6 Binary files /dev/null and b/public/textures/farmersdelight/mushroom_rice.png differ diff --git a/public/textures/farmersdelight/mutton_chops.png b/public/textures/farmersdelight/mutton_chops.png new file mode 100644 index 00000000..14dc0f1e Binary files /dev/null and b/public/textures/farmersdelight/mutton_chops.png differ diff --git a/public/textures/farmersdelight/mutton_wrap.png b/public/textures/farmersdelight/mutton_wrap.png new file mode 100644 index 00000000..cad87376 Binary files /dev/null and b/public/textures/farmersdelight/mutton_wrap.png differ diff --git a/public/textures/farmersdelight/nether_salad.png b/public/textures/farmersdelight/nether_salad.png new file mode 100644 index 00000000..f32d4139 Binary files /dev/null and b/public/textures/farmersdelight/nether_salad.png differ diff --git a/public/textures/farmersdelight/netherite_knife.png b/public/textures/farmersdelight/netherite_knife.png new file mode 100644 index 00000000..914034a6 Binary files /dev/null and b/public/textures/farmersdelight/netherite_knife.png differ diff --git a/public/textures/farmersdelight/noodle_soup.png b/public/textures/farmersdelight/noodle_soup.png new file mode 100644 index 00000000..29dfcbd7 Binary files /dev/null and b/public/textures/farmersdelight/noodle_soup.png differ diff --git a/public/textures/farmersdelight/oak_cabinet.png b/public/textures/farmersdelight/oak_cabinet.png new file mode 100644 index 00000000..bcb5f573 Binary files /dev/null and b/public/textures/farmersdelight/oak_cabinet.png differ diff --git a/public/textures/farmersdelight/onion.png b/public/textures/farmersdelight/onion.png new file mode 100644 index 00000000..1d368953 Binary files /dev/null and b/public/textures/farmersdelight/onion.png differ diff --git a/public/textures/farmersdelight/onion_crate.png b/public/textures/farmersdelight/onion_crate.png new file mode 100644 index 00000000..f4909d63 Binary files /dev/null and b/public/textures/farmersdelight/onion_crate.png differ diff --git a/public/textures/farmersdelight/orange_canvas_sign.png b/public/textures/farmersdelight/orange_canvas_sign.png new file mode 100644 index 00000000..e9fe4b29 Binary files /dev/null and b/public/textures/farmersdelight/orange_canvas_sign.png differ diff --git a/public/textures/farmersdelight/orange_hanging_canvas_sign.png b/public/textures/farmersdelight/orange_hanging_canvas_sign.png new file mode 100644 index 00000000..fa6f5827 Binary files /dev/null and b/public/textures/farmersdelight/orange_hanging_canvas_sign.png differ diff --git a/public/textures/farmersdelight/organic_compost.png b/public/textures/farmersdelight/organic_compost.png new file mode 100644 index 00000000..be9de48c Binary files /dev/null and b/public/textures/farmersdelight/organic_compost.png differ diff --git a/public/textures/farmersdelight/pasta_with_meatballs.png b/public/textures/farmersdelight/pasta_with_meatballs.png new file mode 100644 index 00000000..c00cc302 Binary files /dev/null and b/public/textures/farmersdelight/pasta_with_meatballs.png differ diff --git a/public/textures/farmersdelight/pasta_with_mutton_chop.png b/public/textures/farmersdelight/pasta_with_mutton_chop.png new file mode 100644 index 00000000..99855af1 Binary files /dev/null and b/public/textures/farmersdelight/pasta_with_mutton_chop.png differ diff --git a/public/textures/farmersdelight/pie_crust.png b/public/textures/farmersdelight/pie_crust.png new file mode 100644 index 00000000..7291ca50 Binary files /dev/null and b/public/textures/farmersdelight/pie_crust.png differ diff --git a/public/textures/farmersdelight/pink_canvas_sign.png b/public/textures/farmersdelight/pink_canvas_sign.png new file mode 100644 index 00000000..ed55ef90 Binary files /dev/null and b/public/textures/farmersdelight/pink_canvas_sign.png differ diff --git a/public/textures/farmersdelight/pink_hanging_canvas_sign.png b/public/textures/farmersdelight/pink_hanging_canvas_sign.png new file mode 100644 index 00000000..fb29e72a Binary files /dev/null and b/public/textures/farmersdelight/pink_hanging_canvas_sign.png differ diff --git a/public/textures/farmersdelight/potato_crate.png b/public/textures/farmersdelight/potato_crate.png new file mode 100644 index 00000000..b320caa2 Binary files /dev/null and b/public/textures/farmersdelight/potato_crate.png differ diff --git a/public/textures/farmersdelight/pumpkin_slice.png b/public/textures/farmersdelight/pumpkin_slice.png new file mode 100644 index 00000000..91da70d8 Binary files /dev/null and b/public/textures/farmersdelight/pumpkin_slice.png differ diff --git a/public/textures/farmersdelight/pumpkin_soup.png b/public/textures/farmersdelight/pumpkin_soup.png new file mode 100644 index 00000000..cc3a5bd4 Binary files /dev/null and b/public/textures/farmersdelight/pumpkin_soup.png differ diff --git a/public/textures/farmersdelight/purple_canvas_sign.png b/public/textures/farmersdelight/purple_canvas_sign.png new file mode 100644 index 00000000..b63bc251 Binary files /dev/null and b/public/textures/farmersdelight/purple_canvas_sign.png differ diff --git a/public/textures/farmersdelight/purple_hanging_canvas_sign.png b/public/textures/farmersdelight/purple_hanging_canvas_sign.png new file mode 100644 index 00000000..bd1673ab Binary files /dev/null and b/public/textures/farmersdelight/purple_hanging_canvas_sign.png differ diff --git a/public/textures/farmersdelight/ratatouille.png b/public/textures/farmersdelight/ratatouille.png new file mode 100644 index 00000000..dcba7160 Binary files /dev/null and b/public/textures/farmersdelight/ratatouille.png differ diff --git a/public/textures/farmersdelight/raw_pasta.png b/public/textures/farmersdelight/raw_pasta.png new file mode 100644 index 00000000..70df66df Binary files /dev/null and b/public/textures/farmersdelight/raw_pasta.png differ diff --git a/public/textures/farmersdelight/red_canvas_sign.png b/public/textures/farmersdelight/red_canvas_sign.png new file mode 100644 index 00000000..db88b73f Binary files /dev/null and b/public/textures/farmersdelight/red_canvas_sign.png differ diff --git a/public/textures/farmersdelight/red_hanging_canvas_sign.png b/public/textures/farmersdelight/red_hanging_canvas_sign.png new file mode 100644 index 00000000..fd0b75d9 Binary files /dev/null and b/public/textures/farmersdelight/red_hanging_canvas_sign.png differ diff --git a/public/textures/farmersdelight/red_mushroom_colony.png b/public/textures/farmersdelight/red_mushroom_colony.png new file mode 100644 index 00000000..2913d6b3 Binary files /dev/null and b/public/textures/farmersdelight/red_mushroom_colony.png differ diff --git a/public/textures/farmersdelight/rice.png b/public/textures/farmersdelight/rice.png new file mode 100644 index 00000000..c98d5d26 Binary files /dev/null and b/public/textures/farmersdelight/rice.png differ diff --git a/public/textures/farmersdelight/rice_bag.png b/public/textures/farmersdelight/rice_bag.png new file mode 100644 index 00000000..055000cc Binary files /dev/null and b/public/textures/farmersdelight/rice_bag.png differ diff --git a/public/textures/farmersdelight/rice_bale.png b/public/textures/farmersdelight/rice_bale.png new file mode 100644 index 00000000..a7d206d7 Binary files /dev/null and b/public/textures/farmersdelight/rice_bale.png differ diff --git a/public/textures/farmersdelight/rice_panicle.png b/public/textures/farmersdelight/rice_panicle.png new file mode 100644 index 00000000..6e1c8815 Binary files /dev/null and b/public/textures/farmersdelight/rice_panicle.png differ diff --git a/public/textures/farmersdelight/rice_roll_medley_block.png b/public/textures/farmersdelight/rice_roll_medley_block.png new file mode 100644 index 00000000..c303a4cf Binary files /dev/null and b/public/textures/farmersdelight/rice_roll_medley_block.png differ diff --git a/public/textures/farmersdelight/rich_soil.png b/public/textures/farmersdelight/rich_soil.png new file mode 100644 index 00000000..95bb3931 Binary files /dev/null and b/public/textures/farmersdelight/rich_soil.png differ diff --git a/public/textures/farmersdelight/rich_soil_farmland.png b/public/textures/farmersdelight/rich_soil_farmland.png new file mode 100644 index 00000000..d21ea24a Binary files /dev/null and b/public/textures/farmersdelight/rich_soil_farmland.png differ diff --git a/public/textures/farmersdelight/roast_chicken.png b/public/textures/farmersdelight/roast_chicken.png new file mode 100644 index 00000000..f10a2901 Binary files /dev/null and b/public/textures/farmersdelight/roast_chicken.png differ diff --git a/public/textures/farmersdelight/roast_chicken_block.png b/public/textures/farmersdelight/roast_chicken_block.png new file mode 100644 index 00000000..f4c12d13 Binary files /dev/null and b/public/textures/farmersdelight/roast_chicken_block.png differ diff --git a/public/textures/farmersdelight/roasted_mutton_chops.png b/public/textures/farmersdelight/roasted_mutton_chops.png new file mode 100644 index 00000000..509ca1cd Binary files /dev/null and b/public/textures/farmersdelight/roasted_mutton_chops.png differ diff --git a/public/textures/farmersdelight/rope.png b/public/textures/farmersdelight/rope.png new file mode 100644 index 00000000..20d05cf0 Binary files /dev/null and b/public/textures/farmersdelight/rope.png differ diff --git a/public/textures/farmersdelight/rotten_tomato.png b/public/textures/farmersdelight/rotten_tomato.png new file mode 100644 index 00000000..b4f0ec04 Binary files /dev/null and b/public/textures/farmersdelight/rotten_tomato.png differ diff --git a/public/textures/farmersdelight/safety_net.png b/public/textures/farmersdelight/safety_net.png new file mode 100644 index 00000000..eb5d1c6c Binary files /dev/null and b/public/textures/farmersdelight/safety_net.png differ diff --git a/public/textures/farmersdelight/salmon_roll.png b/public/textures/farmersdelight/salmon_roll.png new file mode 100644 index 00000000..9f8cb46b Binary files /dev/null and b/public/textures/farmersdelight/salmon_roll.png differ diff --git a/public/textures/farmersdelight/salmon_slice.png b/public/textures/farmersdelight/salmon_slice.png new file mode 100644 index 00000000..96303ce3 Binary files /dev/null and b/public/textures/farmersdelight/salmon_slice.png differ diff --git a/public/textures/farmersdelight/sandy_shrub.png b/public/textures/farmersdelight/sandy_shrub.png new file mode 100644 index 00000000..df2867f7 Binary files /dev/null and b/public/textures/farmersdelight/sandy_shrub.png differ diff --git a/public/textures/farmersdelight/shepherds_pie.png b/public/textures/farmersdelight/shepherds_pie.png new file mode 100644 index 00000000..44d273d6 Binary files /dev/null and b/public/textures/farmersdelight/shepherds_pie.png differ diff --git a/public/textures/farmersdelight/shepherds_pie_block.png b/public/textures/farmersdelight/shepherds_pie_block.png new file mode 100644 index 00000000..ab95c7e9 Binary files /dev/null and b/public/textures/farmersdelight/shepherds_pie_block.png differ diff --git a/public/textures/farmersdelight/skillet.png b/public/textures/farmersdelight/skillet.png new file mode 100644 index 00000000..7a19797e Binary files /dev/null and b/public/textures/farmersdelight/skillet.png differ diff --git a/public/textures/farmersdelight/smoked_ham.png b/public/textures/farmersdelight/smoked_ham.png new file mode 100644 index 00000000..c5e7106d Binary files /dev/null and b/public/textures/farmersdelight/smoked_ham.png differ diff --git a/public/textures/farmersdelight/spruce_cabinet.png b/public/textures/farmersdelight/spruce_cabinet.png new file mode 100644 index 00000000..4853f916 Binary files /dev/null and b/public/textures/farmersdelight/spruce_cabinet.png differ diff --git a/public/textures/farmersdelight/squid_ink_pasta.png b/public/textures/farmersdelight/squid_ink_pasta.png new file mode 100644 index 00000000..90a8ded1 Binary files /dev/null and b/public/textures/farmersdelight/squid_ink_pasta.png differ diff --git a/public/textures/farmersdelight/steak_and_potatoes.png b/public/textures/farmersdelight/steak_and_potatoes.png new file mode 100644 index 00000000..79ce6229 Binary files /dev/null and b/public/textures/farmersdelight/steak_and_potatoes.png differ diff --git a/public/textures/farmersdelight/stove.png b/public/textures/farmersdelight/stove.png new file mode 100644 index 00000000..3028853f Binary files /dev/null and b/public/textures/farmersdelight/stove.png differ diff --git a/public/textures/farmersdelight/straw.png b/public/textures/farmersdelight/straw.png new file mode 100644 index 00000000..5dd7cc67 Binary files /dev/null and b/public/textures/farmersdelight/straw.png differ diff --git a/public/textures/farmersdelight/straw_bale.png b/public/textures/farmersdelight/straw_bale.png new file mode 100644 index 00000000..15353c59 Binary files /dev/null and b/public/textures/farmersdelight/straw_bale.png differ diff --git a/public/textures/farmersdelight/stuffed_potato.png b/public/textures/farmersdelight/stuffed_potato.png new file mode 100644 index 00000000..bfafc0f7 Binary files /dev/null and b/public/textures/farmersdelight/stuffed_potato.png differ diff --git a/public/textures/farmersdelight/stuffed_pumpkin.png b/public/textures/farmersdelight/stuffed_pumpkin.png new file mode 100644 index 00000000..5a85f85f Binary files /dev/null and b/public/textures/farmersdelight/stuffed_pumpkin.png differ diff --git a/public/textures/farmersdelight/stuffed_pumpkin_block.png b/public/textures/farmersdelight/stuffed_pumpkin_block.png new file mode 100644 index 00000000..2008f58e Binary files /dev/null and b/public/textures/farmersdelight/stuffed_pumpkin_block.png differ diff --git a/public/textures/farmersdelight/sweet_berry_cheesecake.png b/public/textures/farmersdelight/sweet_berry_cheesecake.png new file mode 100644 index 00000000..8dc42d2d Binary files /dev/null and b/public/textures/farmersdelight/sweet_berry_cheesecake.png differ diff --git a/public/textures/farmersdelight/sweet_berry_cheesecake_slice.png b/public/textures/farmersdelight/sweet_berry_cheesecake_slice.png new file mode 100644 index 00000000..b80c7695 Binary files /dev/null and b/public/textures/farmersdelight/sweet_berry_cheesecake_slice.png differ diff --git a/public/textures/farmersdelight/sweet_berry_cookie.png b/public/textures/farmersdelight/sweet_berry_cookie.png new file mode 100644 index 00000000..1e11e058 Binary files /dev/null and b/public/textures/farmersdelight/sweet_berry_cookie.png differ diff --git a/public/textures/farmersdelight/tatami.png b/public/textures/farmersdelight/tatami.png new file mode 100644 index 00000000..a959870f Binary files /dev/null and b/public/textures/farmersdelight/tatami.png differ diff --git a/public/textures/farmersdelight/tomato.png b/public/textures/farmersdelight/tomato.png new file mode 100644 index 00000000..cf8fc6d4 Binary files /dev/null and b/public/textures/farmersdelight/tomato.png differ diff --git a/public/textures/farmersdelight/tomato_crate.png b/public/textures/farmersdelight/tomato_crate.png new file mode 100644 index 00000000..71e32c45 Binary files /dev/null and b/public/textures/farmersdelight/tomato_crate.png differ diff --git a/public/textures/farmersdelight/tomato_sauce.png b/public/textures/farmersdelight/tomato_sauce.png new file mode 100644 index 00000000..68e6619d Binary files /dev/null and b/public/textures/farmersdelight/tomato_sauce.png differ diff --git a/public/textures/farmersdelight/tomato_seeds.png b/public/textures/farmersdelight/tomato_seeds.png new file mode 100644 index 00000000..5c24e020 Binary files /dev/null and b/public/textures/farmersdelight/tomato_seeds.png differ diff --git a/public/textures/farmersdelight/tree_bark.png b/public/textures/farmersdelight/tree_bark.png new file mode 100644 index 00000000..7bf90bee Binary files /dev/null and b/public/textures/farmersdelight/tree_bark.png differ diff --git a/public/textures/farmersdelight/vegetable_noodles.png b/public/textures/farmersdelight/vegetable_noodles.png new file mode 100644 index 00000000..0c616dc9 Binary files /dev/null and b/public/textures/farmersdelight/vegetable_noodles.png differ diff --git a/public/textures/farmersdelight/vegetable_soup.png b/public/textures/farmersdelight/vegetable_soup.png new file mode 100644 index 00000000..3525d661 Binary files /dev/null and b/public/textures/farmersdelight/vegetable_soup.png differ diff --git a/public/textures/farmersdelight/warped_cabinet.png b/public/textures/farmersdelight/warped_cabinet.png new file mode 100644 index 00000000..35a2d4ee Binary files /dev/null and b/public/textures/farmersdelight/warped_cabinet.png differ diff --git a/public/textures/farmersdelight/wheat_dough.png b/public/textures/farmersdelight/wheat_dough.png new file mode 100644 index 00000000..627c5f28 Binary files /dev/null and b/public/textures/farmersdelight/wheat_dough.png differ diff --git a/public/textures/farmersdelight/white_canvas_sign.png b/public/textures/farmersdelight/white_canvas_sign.png new file mode 100644 index 00000000..ca8de774 Binary files /dev/null and b/public/textures/farmersdelight/white_canvas_sign.png differ diff --git a/public/textures/farmersdelight/white_hanging_canvas_sign.png b/public/textures/farmersdelight/white_hanging_canvas_sign.png new file mode 100644 index 00000000..24d0c052 Binary files /dev/null and b/public/textures/farmersdelight/white_hanging_canvas_sign.png differ diff --git a/public/textures/farmersdelight/wild_beetroots.png b/public/textures/farmersdelight/wild_beetroots.png new file mode 100644 index 00000000..6ede481a Binary files /dev/null and b/public/textures/farmersdelight/wild_beetroots.png differ diff --git a/public/textures/farmersdelight/wild_cabbages.png b/public/textures/farmersdelight/wild_cabbages.png new file mode 100644 index 00000000..6c0c101e Binary files /dev/null and b/public/textures/farmersdelight/wild_cabbages.png differ diff --git a/public/textures/farmersdelight/wild_carrots.png b/public/textures/farmersdelight/wild_carrots.png new file mode 100644 index 00000000..a8036b4e Binary files /dev/null and b/public/textures/farmersdelight/wild_carrots.png differ diff --git a/public/textures/farmersdelight/wild_onions.png b/public/textures/farmersdelight/wild_onions.png new file mode 100644 index 00000000..eaaff24b Binary files /dev/null and b/public/textures/farmersdelight/wild_onions.png differ diff --git a/public/textures/farmersdelight/wild_potatoes.png b/public/textures/farmersdelight/wild_potatoes.png new file mode 100644 index 00000000..8e28df26 Binary files /dev/null and b/public/textures/farmersdelight/wild_potatoes.png differ diff --git a/public/textures/farmersdelight/wild_rice.png b/public/textures/farmersdelight/wild_rice.png new file mode 100644 index 00000000..8630605c Binary files /dev/null and b/public/textures/farmersdelight/wild_rice.png differ diff --git a/public/textures/farmersdelight/wild_tomatoes.png b/public/textures/farmersdelight/wild_tomatoes.png new file mode 100644 index 00000000..6fb1e4c8 Binary files /dev/null and b/public/textures/farmersdelight/wild_tomatoes.png differ diff --git a/public/textures/farmersdelight/yellow_canvas_sign.png b/public/textures/farmersdelight/yellow_canvas_sign.png new file mode 100644 index 00000000..44b19f9f Binary files /dev/null and b/public/textures/farmersdelight/yellow_canvas_sign.png differ diff --git a/public/textures/farmersdelight/yellow_hanging_canvas_sign.png b/public/textures/farmersdelight/yellow_hanging_canvas_sign.png new file mode 100644 index 00000000..104780b8 Binary files /dev/null and b/public/textures/farmersdelight/yellow_hanging_canvas_sign.png differ diff --git a/public/textures/fireflybush/fireflybush.png b/public/textures/fireflybush/fireflybush.png new file mode 100644 index 00000000..b0e7ea5a Binary files /dev/null and b/public/textures/fireflybush/fireflybush.png differ diff --git a/public/textures/fireproofboats/crimson_boat.png b/public/textures/fireproofboats/crimson_boat.png new file mode 100644 index 00000000..c8574db0 Binary files /dev/null and b/public/textures/fireproofboats/crimson_boat.png differ diff --git a/public/textures/fireproofboats/crimson_chest_boat.png b/public/textures/fireproofboats/crimson_chest_boat.png new file mode 100644 index 00000000..8739a6db Binary files /dev/null and b/public/textures/fireproofboats/crimson_chest_boat.png differ diff --git a/public/textures/fireproofboats/warped_boat.png b/public/textures/fireproofboats/warped_boat.png new file mode 100644 index 00000000..aab23422 Binary files /dev/null and b/public/textures/fireproofboats/warped_boat.png differ diff --git a/public/textures/fireproofboats/warped_chest_boat.png b/public/textures/fireproofboats/warped_chest_boat.png new file mode 100644 index 00000000..2b9def47 Binary files /dev/null and b/public/textures/fireproofboats/warped_chest_boat.png differ diff --git a/public/textures/fluid/brewinandchewin__beer.png b/public/textures/fluid/brewinandchewin__beer.png new file mode 100644 index 00000000..1957ea27 Binary files /dev/null and b/public/textures/fluid/brewinandchewin__beer.png differ diff --git a/public/textures/fluid/brewinandchewin__bloody_mary.png b/public/textures/fluid/brewinandchewin__bloody_mary.png new file mode 100644 index 00000000..c10f0658 Binary files /dev/null and b/public/textures/fluid/brewinandchewin__bloody_mary.png differ diff --git a/public/textures/fluid/brewinandchewin__dread_nog.png b/public/textures/fluid/brewinandchewin__dread_nog.png new file mode 100644 index 00000000..41687f71 Binary files /dev/null and b/public/textures/fluid/brewinandchewin__dread_nog.png differ diff --git a/public/textures/fluid/brewinandchewin__egg_grog.png b/public/textures/fluid/brewinandchewin__egg_grog.png new file mode 100644 index 00000000..15d6f4e3 Binary files /dev/null and b/public/textures/fluid/brewinandchewin__egg_grog.png differ diff --git a/public/textures/fluid/brewinandchewin__flaxen_cheese.png b/public/textures/fluid/brewinandchewin__flaxen_cheese.png new file mode 100644 index 00000000..35ea0b81 Binary files /dev/null and b/public/textures/fluid/brewinandchewin__flaxen_cheese.png differ diff --git a/public/textures/fluid/brewinandchewin__flowing_beer.png b/public/textures/fluid/brewinandchewin__flowing_beer.png new file mode 100644 index 00000000..b5cb6610 Binary files /dev/null and b/public/textures/fluid/brewinandchewin__flowing_beer.png differ diff --git a/public/textures/fluid/brewinandchewin__flowing_bloody_mary.png b/public/textures/fluid/brewinandchewin__flowing_bloody_mary.png new file mode 100644 index 00000000..7400cc28 Binary files /dev/null and b/public/textures/fluid/brewinandchewin__flowing_bloody_mary.png differ diff --git a/public/textures/fluid/brewinandchewin__flowing_dread_nog.png b/public/textures/fluid/brewinandchewin__flowing_dread_nog.png new file mode 100644 index 00000000..b895631f Binary files /dev/null and b/public/textures/fluid/brewinandchewin__flowing_dread_nog.png differ diff --git a/public/textures/fluid/brewinandchewin__flowing_egg_grog.png b/public/textures/fluid/brewinandchewin__flowing_egg_grog.png new file mode 100644 index 00000000..46bdb0cd Binary files /dev/null and b/public/textures/fluid/brewinandchewin__flowing_egg_grog.png differ diff --git a/public/textures/fluid/brewinandchewin__flowing_flaxen_cheese.png b/public/textures/fluid/brewinandchewin__flowing_flaxen_cheese.png new file mode 100644 index 00000000..75e31089 Binary files /dev/null and b/public/textures/fluid/brewinandchewin__flowing_flaxen_cheese.png differ diff --git a/public/textures/fluid/brewinandchewin__flowing_glittering_grenadine.png b/public/textures/fluid/brewinandchewin__flowing_glittering_grenadine.png new file mode 100644 index 00000000..959c69f1 Binary files /dev/null and b/public/textures/fluid/brewinandchewin__flowing_glittering_grenadine.png differ diff --git a/public/textures/fluid/brewinandchewin__flowing_honey.png b/public/textures/fluid/brewinandchewin__flowing_honey.png new file mode 100644 index 00000000..20c0b908 Binary files /dev/null and b/public/textures/fluid/brewinandchewin__flowing_honey.png differ diff --git a/public/textures/fluid/brewinandchewin__flowing_kombucha.png b/public/textures/fluid/brewinandchewin__flowing_kombucha.png new file mode 100644 index 00000000..c9f48c31 Binary files /dev/null and b/public/textures/fluid/brewinandchewin__flowing_kombucha.png differ diff --git a/public/textures/fluid/brewinandchewin__flowing_mead.png b/public/textures/fluid/brewinandchewin__flowing_mead.png new file mode 100644 index 00000000..0fa743b1 Binary files /dev/null and b/public/textures/fluid/brewinandchewin__flowing_mead.png differ diff --git a/public/textures/fluid/brewinandchewin__flowing_pale_jane.png b/public/textures/fluid/brewinandchewin__flowing_pale_jane.png new file mode 100644 index 00000000..1df4cbfc Binary files /dev/null and b/public/textures/fluid/brewinandchewin__flowing_pale_jane.png differ diff --git a/public/textures/fluid/brewinandchewin__flowing_red_rum.png b/public/textures/fluid/brewinandchewin__flowing_red_rum.png new file mode 100644 index 00000000..91ad403e Binary files /dev/null and b/public/textures/fluid/brewinandchewin__flowing_red_rum.png differ diff --git a/public/textures/fluid/brewinandchewin__flowing_rice_wine.png b/public/textures/fluid/brewinandchewin__flowing_rice_wine.png new file mode 100644 index 00000000..46bdb0cd Binary files /dev/null and b/public/textures/fluid/brewinandchewin__flowing_rice_wine.png differ diff --git a/public/textures/fluid/brewinandchewin__flowing_saccharine_rum.png b/public/textures/fluid/brewinandchewin__flowing_saccharine_rum.png new file mode 100644 index 00000000..500b290e Binary files /dev/null and b/public/textures/fluid/brewinandchewin__flowing_saccharine_rum.png differ diff --git a/public/textures/fluid/brewinandchewin__flowing_salty_folly.png b/public/textures/fluid/brewinandchewin__flowing_salty_folly.png new file mode 100644 index 00000000..16ff93f8 Binary files /dev/null and b/public/textures/fluid/brewinandchewin__flowing_salty_folly.png differ diff --git a/public/textures/fluid/brewinandchewin__flowing_scarlet_cheese.png b/public/textures/fluid/brewinandchewin__flowing_scarlet_cheese.png new file mode 100644 index 00000000..ae820706 Binary files /dev/null and b/public/textures/fluid/brewinandchewin__flowing_scarlet_cheese.png differ diff --git a/public/textures/fluid/brewinandchewin__flowing_steel_toe_stout.png b/public/textures/fluid/brewinandchewin__flowing_steel_toe_stout.png new file mode 100644 index 00000000..a142fa78 Binary files /dev/null and b/public/textures/fluid/brewinandchewin__flowing_steel_toe_stout.png differ diff --git a/public/textures/fluid/brewinandchewin__flowing_strongroot_ale.png b/public/textures/fluid/brewinandchewin__flowing_strongroot_ale.png new file mode 100644 index 00000000..e11da941 Binary files /dev/null and b/public/textures/fluid/brewinandchewin__flowing_strongroot_ale.png differ diff --git a/public/textures/fluid/brewinandchewin__flowing_vodka.png b/public/textures/fluid/brewinandchewin__flowing_vodka.png new file mode 100644 index 00000000..ab89cdfe Binary files /dev/null and b/public/textures/fluid/brewinandchewin__flowing_vodka.png differ diff --git a/public/textures/fluid/brewinandchewin__flowing_withering_dross.png b/public/textures/fluid/brewinandchewin__flowing_withering_dross.png new file mode 100644 index 00000000..32ddb9d2 Binary files /dev/null and b/public/textures/fluid/brewinandchewin__flowing_withering_dross.png differ diff --git a/public/textures/fluid/brewinandchewin__glittering_grenadine.png b/public/textures/fluid/brewinandchewin__glittering_grenadine.png new file mode 100644 index 00000000..77316583 Binary files /dev/null and b/public/textures/fluid/brewinandchewin__glittering_grenadine.png differ diff --git a/public/textures/fluid/brewinandchewin__honey.png b/public/textures/fluid/brewinandchewin__honey.png new file mode 100644 index 00000000..20c0b908 Binary files /dev/null and b/public/textures/fluid/brewinandchewin__honey.png differ diff --git a/public/textures/fluid/brewinandchewin__kombucha.png b/public/textures/fluid/brewinandchewin__kombucha.png new file mode 100644 index 00000000..9fd39fbd Binary files /dev/null and b/public/textures/fluid/brewinandchewin__kombucha.png differ diff --git a/public/textures/fluid/brewinandchewin__mead.png b/public/textures/fluid/brewinandchewin__mead.png new file mode 100644 index 00000000..0fa743b1 Binary files /dev/null and b/public/textures/fluid/brewinandchewin__mead.png differ diff --git a/public/textures/fluid/brewinandchewin__pale_jane.png b/public/textures/fluid/brewinandchewin__pale_jane.png new file mode 100644 index 00000000..ddaa3308 Binary files /dev/null and b/public/textures/fluid/brewinandchewin__pale_jane.png differ diff --git a/public/textures/fluid/brewinandchewin__red_rum.png b/public/textures/fluid/brewinandchewin__red_rum.png new file mode 100644 index 00000000..5f3d8b9a Binary files /dev/null and b/public/textures/fluid/brewinandchewin__red_rum.png differ diff --git a/public/textures/fluid/brewinandchewin__rice_wine.png b/public/textures/fluid/brewinandchewin__rice_wine.png new file mode 100644 index 00000000..400a61e7 Binary files /dev/null and b/public/textures/fluid/brewinandchewin__rice_wine.png differ diff --git a/public/textures/fluid/brewinandchewin__saccharine_rum.png b/public/textures/fluid/brewinandchewin__saccharine_rum.png new file mode 100644 index 00000000..986483b7 Binary files /dev/null and b/public/textures/fluid/brewinandchewin__saccharine_rum.png differ diff --git a/public/textures/fluid/brewinandchewin__salty_folly.png b/public/textures/fluid/brewinandchewin__salty_folly.png new file mode 100644 index 00000000..3c12666c Binary files /dev/null and b/public/textures/fluid/brewinandchewin__salty_folly.png differ diff --git a/public/textures/fluid/brewinandchewin__scarlet_cheese.png b/public/textures/fluid/brewinandchewin__scarlet_cheese.png new file mode 100644 index 00000000..ae820706 Binary files /dev/null and b/public/textures/fluid/brewinandchewin__scarlet_cheese.png differ diff --git a/public/textures/fluid/brewinandchewin__steel_toe_stout.png b/public/textures/fluid/brewinandchewin__steel_toe_stout.png new file mode 100644 index 00000000..d8729afa Binary files /dev/null and b/public/textures/fluid/brewinandchewin__steel_toe_stout.png differ diff --git a/public/textures/fluid/brewinandchewin__strongroot_ale.png b/public/textures/fluid/brewinandchewin__strongroot_ale.png new file mode 100644 index 00000000..e11da941 Binary files /dev/null and b/public/textures/fluid/brewinandchewin__strongroot_ale.png differ diff --git a/public/textures/fluid/brewinandchewin__vodka.png b/public/textures/fluid/brewinandchewin__vodka.png new file mode 100644 index 00000000..ab89cdfe Binary files /dev/null and b/public/textures/fluid/brewinandchewin__vodka.png differ diff --git a/public/textures/fluid/brewinandchewin__withering_dross.png b/public/textures/fluid/brewinandchewin__withering_dross.png new file mode 100644 index 00000000..b37da224 Binary files /dev/null and b/public/textures/fluid/brewinandchewin__withering_dross.png differ diff --git a/public/textures/fluid/create__chocolate.png b/public/textures/fluid/create__chocolate.png new file mode 100644 index 00000000..30478fb4 Binary files /dev/null and b/public/textures/fluid/create__chocolate.png differ diff --git a/public/textures/fluid/create__flowing_chocolate.png b/public/textures/fluid/create__flowing_chocolate.png new file mode 100644 index 00000000..8900ca9b Binary files /dev/null and b/public/textures/fluid/create__flowing_chocolate.png differ diff --git a/public/textures/fluid/create__flowing_honey.png b/public/textures/fluid/create__flowing_honey.png new file mode 100644 index 00000000..f98bfc69 Binary files /dev/null and b/public/textures/fluid/create__flowing_honey.png differ diff --git a/public/textures/fluid/create__flowing_potion.png b/public/textures/fluid/create__flowing_potion.png new file mode 100644 index 00000000..62993390 Binary files /dev/null and b/public/textures/fluid/create__flowing_potion.png differ diff --git a/public/textures/fluid/create__flowing_tea.png b/public/textures/fluid/create__flowing_tea.png new file mode 100644 index 00000000..bb0f6ad7 Binary files /dev/null and b/public/textures/fluid/create__flowing_tea.png differ diff --git a/public/textures/fluid/create__honey.png b/public/textures/fluid/create__honey.png new file mode 100644 index 00000000..f98bfc69 Binary files /dev/null and b/public/textures/fluid/create__honey.png differ diff --git a/public/textures/fluid/create__potion.png b/public/textures/fluid/create__potion.png new file mode 100644 index 00000000..eff613cc Binary files /dev/null and b/public/textures/fluid/create__potion.png differ diff --git a/public/textures/fluid/create__tea.png b/public/textures/fluid/create__tea.png new file mode 100644 index 00000000..e3427180 Binary files /dev/null and b/public/textures/fluid/create__tea.png differ diff --git a/public/textures/fluid/create_dragons_plus__black_dye.png b/public/textures/fluid/create_dragons_plus__black_dye.png new file mode 100644 index 00000000..9ed78573 Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__black_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__blue_dye.png b/public/textures/fluid/create_dragons_plus__blue_dye.png new file mode 100644 index 00000000..931874ba Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__blue_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__brown_dye.png b/public/textures/fluid/create_dragons_plus__brown_dye.png new file mode 100644 index 00000000..585bd9d8 Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__brown_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__cyan_dye.png b/public/textures/fluid/create_dragons_plus__cyan_dye.png new file mode 100644 index 00000000..5330fb41 Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__cyan_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__dragon_breath.png b/public/textures/fluid/create_dragons_plus__dragon_breath.png new file mode 100644 index 00000000..ff6dd114 Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__dragon_breath.png differ diff --git a/public/textures/fluid/create_dragons_plus__flowing_black_dye.png b/public/textures/fluid/create_dragons_plus__flowing_black_dye.png new file mode 100644 index 00000000..9ed78573 Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__flowing_black_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__flowing_blue_dye.png b/public/textures/fluid/create_dragons_plus__flowing_blue_dye.png new file mode 100644 index 00000000..7d90209a Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__flowing_blue_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__flowing_brown_dye.png b/public/textures/fluid/create_dragons_plus__flowing_brown_dye.png new file mode 100644 index 00000000..dd4e0090 Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__flowing_brown_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__flowing_cyan_dye.png b/public/textures/fluid/create_dragons_plus__flowing_cyan_dye.png new file mode 100644 index 00000000..3049dee6 Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__flowing_cyan_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__flowing_dragon_breath.png b/public/textures/fluid/create_dragons_plus__flowing_dragon_breath.png new file mode 100644 index 00000000..ff6dd114 Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__flowing_dragon_breath.png differ diff --git a/public/textures/fluid/create_dragons_plus__flowing_gray_dye.png b/public/textures/fluid/create_dragons_plus__flowing_gray_dye.png new file mode 100644 index 00000000..f7dd3aa9 Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__flowing_gray_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__flowing_green_dye.png b/public/textures/fluid/create_dragons_plus__flowing_green_dye.png new file mode 100644 index 00000000..cb362e50 Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__flowing_green_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__flowing_light_blue_dye.png b/public/textures/fluid/create_dragons_plus__flowing_light_blue_dye.png new file mode 100644 index 00000000..85096316 Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__flowing_light_blue_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__flowing_light_gray_dye.png b/public/textures/fluid/create_dragons_plus__flowing_light_gray_dye.png new file mode 100644 index 00000000..2075fc79 Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__flowing_light_gray_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__flowing_lime_dye.png b/public/textures/fluid/create_dragons_plus__flowing_lime_dye.png new file mode 100644 index 00000000..d6a350c7 Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__flowing_lime_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__flowing_magenta_dye.png b/public/textures/fluid/create_dragons_plus__flowing_magenta_dye.png new file mode 100644 index 00000000..8fc96652 Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__flowing_magenta_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__flowing_orange_dye.png b/public/textures/fluid/create_dragons_plus__flowing_orange_dye.png new file mode 100644 index 00000000..cd27d9c7 Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__flowing_orange_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__flowing_pink_dye.png b/public/textures/fluid/create_dragons_plus__flowing_pink_dye.png new file mode 100644 index 00000000..b197f503 Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__flowing_pink_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__flowing_purple_dye.png b/public/textures/fluid/create_dragons_plus__flowing_purple_dye.png new file mode 100644 index 00000000..173a5dbe Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__flowing_purple_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__flowing_red_dye.png b/public/textures/fluid/create_dragons_plus__flowing_red_dye.png new file mode 100644 index 00000000..045106bb Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__flowing_red_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__flowing_white_dye.png b/public/textures/fluid/create_dragons_plus__flowing_white_dye.png new file mode 100644 index 00000000..a5997e7d Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__flowing_white_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__flowing_yellow_dye.png b/public/textures/fluid/create_dragons_plus__flowing_yellow_dye.png new file mode 100644 index 00000000..34f3ce1b Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__flowing_yellow_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__gray_dye.png b/public/textures/fluid/create_dragons_plus__gray_dye.png new file mode 100644 index 00000000..a5d02fb4 Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__gray_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__green_dye.png b/public/textures/fluid/create_dragons_plus__green_dye.png new file mode 100644 index 00000000..cb362e50 Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__green_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__light_blue_dye.png b/public/textures/fluid/create_dragons_plus__light_blue_dye.png new file mode 100644 index 00000000..e0556cc0 Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__light_blue_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__light_gray_dye.png b/public/textures/fluid/create_dragons_plus__light_gray_dye.png new file mode 100644 index 00000000..11742392 Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__light_gray_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__lime_dye.png b/public/textures/fluid/create_dragons_plus__lime_dye.png new file mode 100644 index 00000000..e71a574e Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__lime_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__magenta_dye.png b/public/textures/fluid/create_dragons_plus__magenta_dye.png new file mode 100644 index 00000000..73deee04 Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__magenta_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__orange_dye.png b/public/textures/fluid/create_dragons_plus__orange_dye.png new file mode 100644 index 00000000..5ba1365f Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__orange_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__pink_dye.png b/public/textures/fluid/create_dragons_plus__pink_dye.png new file mode 100644 index 00000000..00c9b3d1 Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__pink_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__purple_dye.png b/public/textures/fluid/create_dragons_plus__purple_dye.png new file mode 100644 index 00000000..2dcc5525 Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__purple_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__red_dye.png b/public/textures/fluid/create_dragons_plus__red_dye.png new file mode 100644 index 00000000..1e3d3fed Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__red_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__white_dye.png b/public/textures/fluid/create_dragons_plus__white_dye.png new file mode 100644 index 00000000..8266cd5d Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__white_dye.png differ diff --git a/public/textures/fluid/create_dragons_plus__yellow_dye.png b/public/textures/fluid/create_dragons_plus__yellow_dye.png new file mode 100644 index 00000000..3b5e8a12 Binary files /dev/null and b/public/textures/fluid/create_dragons_plus__yellow_dye.png differ diff --git a/public/textures/fluid/create_enchantment_industry__experience.png b/public/textures/fluid/create_enchantment_industry__experience.png new file mode 100644 index 00000000..1f2f8363 Binary files /dev/null and b/public/textures/fluid/create_enchantment_industry__experience.png differ diff --git a/public/textures/fluid/create_enchantment_industry__flowing_experience.png b/public/textures/fluid/create_enchantment_industry__flowing_experience.png new file mode 100644 index 00000000..1f2f8363 Binary files /dev/null and b/public/textures/fluid/create_enchantment_industry__flowing_experience.png differ diff --git a/public/textures/fluid/createaddition__bioethanol.png b/public/textures/fluid/createaddition__bioethanol.png new file mode 100644 index 00000000..35a79878 Binary files /dev/null and b/public/textures/fluid/createaddition__bioethanol.png differ diff --git a/public/textures/fluid/createaddition__flowing_bioethanol.png b/public/textures/fluid/createaddition__flowing_bioethanol.png new file mode 100644 index 00000000..35a79878 Binary files /dev/null and b/public/textures/fluid/createaddition__flowing_bioethanol.png differ diff --git a/public/textures/fluid/createaddition__flowing_seed_oil.png b/public/textures/fluid/createaddition__flowing_seed_oil.png new file mode 100644 index 00000000..016b6d33 Binary files /dev/null and b/public/textures/fluid/createaddition__flowing_seed_oil.png differ diff --git a/public/textures/fluid/createaddition__seed_oil.png b/public/textures/fluid/createaddition__seed_oil.png new file mode 100644 index 00000000..016b6d33 Binary files /dev/null and b/public/textures/fluid/createaddition__seed_oil.png differ diff --git a/public/textures/fluid/immersiveengineering__acetaldehyde.png b/public/textures/fluid/immersiveengineering__acetaldehyde.png new file mode 100644 index 00000000..ce1654f7 Binary files /dev/null and b/public/textures/fluid/immersiveengineering__acetaldehyde.png differ diff --git a/public/textures/fluid/immersiveengineering__acetaldehyde_flowing.png b/public/textures/fluid/immersiveengineering__acetaldehyde_flowing.png new file mode 100644 index 00000000..a90847fc Binary files /dev/null and b/public/textures/fluid/immersiveengineering__acetaldehyde_flowing.png differ diff --git a/public/textures/fluid/immersiveengineering__biodiesel.png b/public/textures/fluid/immersiveengineering__biodiesel.png new file mode 100644 index 00000000..42353317 Binary files /dev/null and b/public/textures/fluid/immersiveengineering__biodiesel.png differ diff --git a/public/textures/fluid/immersiveengineering__biodiesel_flowing.png b/public/textures/fluid/immersiveengineering__biodiesel_flowing.png new file mode 100644 index 00000000..391a50dd Binary files /dev/null and b/public/textures/fluid/immersiveengineering__biodiesel_flowing.png differ diff --git a/public/textures/fluid/immersiveengineering__concrete.png b/public/textures/fluid/immersiveengineering__concrete.png new file mode 100644 index 00000000..b89cc759 Binary files /dev/null and b/public/textures/fluid/immersiveengineering__concrete.png differ diff --git a/public/textures/fluid/immersiveengineering__concrete_flowing.png b/public/textures/fluid/immersiveengineering__concrete_flowing.png new file mode 100644 index 00000000..8c135bd2 Binary files /dev/null and b/public/textures/fluid/immersiveengineering__concrete_flowing.png differ diff --git a/public/textures/fluid/immersiveengineering__creosote.png b/public/textures/fluid/immersiveengineering__creosote.png new file mode 100644 index 00000000..75511b9d Binary files /dev/null and b/public/textures/fluid/immersiveengineering__creosote.png differ diff --git a/public/textures/fluid/immersiveengineering__creosote_flowing.png b/public/textures/fluid/immersiveengineering__creosote_flowing.png new file mode 100644 index 00000000..0519305d Binary files /dev/null and b/public/textures/fluid/immersiveengineering__creosote_flowing.png differ diff --git a/public/textures/fluid/immersiveengineering__ethanol.png b/public/textures/fluid/immersiveengineering__ethanol.png new file mode 100644 index 00000000..c4329c13 Binary files /dev/null and b/public/textures/fluid/immersiveengineering__ethanol.png differ diff --git a/public/textures/fluid/immersiveengineering__ethanol_flowing.png b/public/textures/fluid/immersiveengineering__ethanol_flowing.png new file mode 100644 index 00000000..a84864c1 Binary files /dev/null and b/public/textures/fluid/immersiveengineering__ethanol_flowing.png differ diff --git a/public/textures/fluid/immersiveengineering__herbicide.png b/public/textures/fluid/immersiveengineering__herbicide.png new file mode 100644 index 00000000..9175b231 Binary files /dev/null and b/public/textures/fluid/immersiveengineering__herbicide.png differ diff --git a/public/textures/fluid/immersiveengineering__herbicide_flowing.png b/public/textures/fluid/immersiveengineering__herbicide_flowing.png new file mode 100644 index 00000000..b277d4b8 Binary files /dev/null and b/public/textures/fluid/immersiveengineering__herbicide_flowing.png differ diff --git a/public/textures/fluid/immersiveengineering__high_power_biodiesel.png b/public/textures/fluid/immersiveengineering__high_power_biodiesel.png new file mode 100644 index 00000000..9d64e525 Binary files /dev/null and b/public/textures/fluid/immersiveengineering__high_power_biodiesel.png differ diff --git a/public/textures/fluid/immersiveengineering__high_power_biodiesel_flowing.png b/public/textures/fluid/immersiveengineering__high_power_biodiesel_flowing.png new file mode 100644 index 00000000..addbc840 Binary files /dev/null and b/public/textures/fluid/immersiveengineering__high_power_biodiesel_flowing.png differ diff --git a/public/textures/fluid/immersiveengineering__phenolic_resin.png b/public/textures/fluid/immersiveengineering__phenolic_resin.png new file mode 100644 index 00000000..763da4f9 Binary files /dev/null and b/public/textures/fluid/immersiveengineering__phenolic_resin.png differ diff --git a/public/textures/fluid/immersiveengineering__phenolic_resin_flowing.png b/public/textures/fluid/immersiveengineering__phenolic_resin_flowing.png new file mode 100644 index 00000000..763da4f9 Binary files /dev/null and b/public/textures/fluid/immersiveengineering__phenolic_resin_flowing.png differ diff --git a/public/textures/fluid/immersiveengineering__plantoil.png b/public/textures/fluid/immersiveengineering__plantoil.png new file mode 100644 index 00000000..817b0a35 Binary files /dev/null and b/public/textures/fluid/immersiveengineering__plantoil.png differ diff --git a/public/textures/fluid/immersiveengineering__plantoil_flowing.png b/public/textures/fluid/immersiveengineering__plantoil_flowing.png new file mode 100644 index 00000000..a892c3ee Binary files /dev/null and b/public/textures/fluid/immersiveengineering__plantoil_flowing.png differ diff --git a/public/textures/fluid/immersiveengineering__potion.png b/public/textures/fluid/immersiveengineering__potion.png new file mode 100644 index 00000000..72d55a74 Binary files /dev/null and b/public/textures/fluid/immersiveengineering__potion.png differ diff --git a/public/textures/fluid/immersiveengineering__redstone_acid.png b/public/textures/fluid/immersiveengineering__redstone_acid.png new file mode 100644 index 00000000..f699faae Binary files /dev/null and b/public/textures/fluid/immersiveengineering__redstone_acid.png differ diff --git a/public/textures/fluid/immersiveengineering__redstone_acid_flowing.png b/public/textures/fluid/immersiveengineering__redstone_acid_flowing.png new file mode 100644 index 00000000..f699faae Binary files /dev/null and b/public/textures/fluid/immersiveengineering__redstone_acid_flowing.png differ diff --git a/public/textures/fluid/mekanism__brine.png b/public/textures/fluid/mekanism__brine.png new file mode 100644 index 00000000..e0217fee Binary files /dev/null and b/public/textures/fluid/mekanism__brine.png differ diff --git a/public/textures/fluid/mekanism__chlorine.png b/public/textures/fluid/mekanism__chlorine.png new file mode 100644 index 00000000..5967803a Binary files /dev/null and b/public/textures/fluid/mekanism__chlorine.png differ diff --git a/public/textures/fluid/mekanism__ethene.png b/public/textures/fluid/mekanism__ethene.png new file mode 100644 index 00000000..3be5320b Binary files /dev/null and b/public/textures/fluid/mekanism__ethene.png differ diff --git a/public/textures/fluid/mekanism__flowing_brine.png b/public/textures/fluid/mekanism__flowing_brine.png new file mode 100644 index 00000000..ff294b04 Binary files /dev/null and b/public/textures/fluid/mekanism__flowing_brine.png differ diff --git a/public/textures/fluid/mekanism__flowing_chlorine.png b/public/textures/fluid/mekanism__flowing_chlorine.png new file mode 100644 index 00000000..5967803a Binary files /dev/null and b/public/textures/fluid/mekanism__flowing_chlorine.png differ diff --git a/public/textures/fluid/mekanism__flowing_ethene.png b/public/textures/fluid/mekanism__flowing_ethene.png new file mode 100644 index 00000000..bdb5ca99 Binary files /dev/null and b/public/textures/fluid/mekanism__flowing_ethene.png differ diff --git a/public/textures/fluid/mekanism__flowing_heavy_water.png b/public/textures/fluid/mekanism__flowing_heavy_water.png new file mode 100644 index 00000000..3bff7a9c Binary files /dev/null and b/public/textures/fluid/mekanism__flowing_heavy_water.png differ diff --git a/public/textures/fluid/mekanism__flowing_hydrofluoric_acid.png b/public/textures/fluid/mekanism__flowing_hydrofluoric_acid.png new file mode 100644 index 00000000..1e60bbda Binary files /dev/null and b/public/textures/fluid/mekanism__flowing_hydrofluoric_acid.png differ diff --git a/public/textures/fluid/mekanism__flowing_hydrogen.png b/public/textures/fluid/mekanism__flowing_hydrogen.png new file mode 100644 index 00000000..fee0743c Binary files /dev/null and b/public/textures/fluid/mekanism__flowing_hydrogen.png differ diff --git a/public/textures/fluid/mekanism__flowing_hydrogen_chloride.png b/public/textures/fluid/mekanism__flowing_hydrogen_chloride.png new file mode 100644 index 00000000..e345a078 Binary files /dev/null and b/public/textures/fluid/mekanism__flowing_hydrogen_chloride.png differ diff --git a/public/textures/fluid/mekanism__flowing_lithium.png b/public/textures/fluid/mekanism__flowing_lithium.png new file mode 100644 index 00000000..1efce468 Binary files /dev/null and b/public/textures/fluid/mekanism__flowing_lithium.png differ diff --git a/public/textures/fluid/mekanism__flowing_nutritional_paste.png b/public/textures/fluid/mekanism__flowing_nutritional_paste.png new file mode 100644 index 00000000..c846bfab Binary files /dev/null and b/public/textures/fluid/mekanism__flowing_nutritional_paste.png differ diff --git a/public/textures/fluid/mekanism__flowing_oxygen.png b/public/textures/fluid/mekanism__flowing_oxygen.png new file mode 100644 index 00000000..3e33056b Binary files /dev/null and b/public/textures/fluid/mekanism__flowing_oxygen.png differ diff --git a/public/textures/fluid/mekanism__flowing_sodium.png b/public/textures/fluid/mekanism__flowing_sodium.png new file mode 100644 index 00000000..ab7626b0 Binary files /dev/null and b/public/textures/fluid/mekanism__flowing_sodium.png differ diff --git a/public/textures/fluid/mekanism__flowing_steam.png b/public/textures/fluid/mekanism__flowing_steam.png new file mode 100644 index 00000000..cef687df Binary files /dev/null and b/public/textures/fluid/mekanism__flowing_steam.png differ diff --git a/public/textures/fluid/mekanism__flowing_sulfur_dioxide.png b/public/textures/fluid/mekanism__flowing_sulfur_dioxide.png new file mode 100644 index 00000000..6c2c72b1 Binary files /dev/null and b/public/textures/fluid/mekanism__flowing_sulfur_dioxide.png differ diff --git a/public/textures/fluid/mekanism__flowing_sulfur_trioxide.png b/public/textures/fluid/mekanism__flowing_sulfur_trioxide.png new file mode 100644 index 00000000..763d0ded Binary files /dev/null and b/public/textures/fluid/mekanism__flowing_sulfur_trioxide.png differ diff --git a/public/textures/fluid/mekanism__flowing_sulfuric_acid.png b/public/textures/fluid/mekanism__flowing_sulfuric_acid.png new file mode 100644 index 00000000..7ea6a13d Binary files /dev/null and b/public/textures/fluid/mekanism__flowing_sulfuric_acid.png differ diff --git a/public/textures/fluid/mekanism__flowing_superheated_sodium.png b/public/textures/fluid/mekanism__flowing_superheated_sodium.png new file mode 100644 index 00000000..4c17cb2b Binary files /dev/null and b/public/textures/fluid/mekanism__flowing_superheated_sodium.png differ diff --git a/public/textures/fluid/mekanism__flowing_uranium_hexafluoride.png b/public/textures/fluid/mekanism__flowing_uranium_hexafluoride.png new file mode 100644 index 00000000..f863de6c Binary files /dev/null and b/public/textures/fluid/mekanism__flowing_uranium_hexafluoride.png differ diff --git a/public/textures/fluid/mekanism__flowing_uranium_oxide.png b/public/textures/fluid/mekanism__flowing_uranium_oxide.png new file mode 100644 index 00000000..8cd50eff Binary files /dev/null and b/public/textures/fluid/mekanism__flowing_uranium_oxide.png differ diff --git a/public/textures/fluid/mekanism__heavy_water.png b/public/textures/fluid/mekanism__heavy_water.png new file mode 100644 index 00000000..f67b0c30 Binary files /dev/null and b/public/textures/fluid/mekanism__heavy_water.png differ diff --git a/public/textures/fluid/mekanism__hydrofluoric_acid.png b/public/textures/fluid/mekanism__hydrofluoric_acid.png new file mode 100644 index 00000000..6e3dd32a Binary files /dev/null and b/public/textures/fluid/mekanism__hydrofluoric_acid.png differ diff --git a/public/textures/fluid/mekanism__hydrogen.png b/public/textures/fluid/mekanism__hydrogen.png new file mode 100644 index 00000000..cef687df Binary files /dev/null and b/public/textures/fluid/mekanism__hydrogen.png differ diff --git a/public/textures/fluid/mekanism__hydrogen_chloride.png b/public/textures/fluid/mekanism__hydrogen_chloride.png new file mode 100644 index 00000000..392e5e47 Binary files /dev/null and b/public/textures/fluid/mekanism__hydrogen_chloride.png differ diff --git a/public/textures/fluid/mekanism__lithium.png b/public/textures/fluid/mekanism__lithium.png new file mode 100644 index 00000000..d1f2f253 Binary files /dev/null and b/public/textures/fluid/mekanism__lithium.png differ diff --git a/public/textures/fluid/mekanism__nutritional_paste.png b/public/textures/fluid/mekanism__nutritional_paste.png new file mode 100644 index 00000000..7294f928 Binary files /dev/null and b/public/textures/fluid/mekanism__nutritional_paste.png differ diff --git a/public/textures/fluid/mekanism__oxygen.png b/public/textures/fluid/mekanism__oxygen.png new file mode 100644 index 00000000..23436843 Binary files /dev/null and b/public/textures/fluid/mekanism__oxygen.png differ diff --git a/public/textures/fluid/mekanism__sodium.png b/public/textures/fluid/mekanism__sodium.png new file mode 100644 index 00000000..864e7ca5 Binary files /dev/null and b/public/textures/fluid/mekanism__sodium.png differ diff --git a/public/textures/fluid/mekanism__steam.png b/public/textures/fluid/mekanism__steam.png new file mode 100644 index 00000000..2b242a5c Binary files /dev/null and b/public/textures/fluid/mekanism__steam.png differ diff --git a/public/textures/fluid/mekanism__sulfur_dioxide.png b/public/textures/fluid/mekanism__sulfur_dioxide.png new file mode 100644 index 00000000..08753b45 Binary files /dev/null and b/public/textures/fluid/mekanism__sulfur_dioxide.png differ diff --git a/public/textures/fluid/mekanism__sulfur_trioxide.png b/public/textures/fluid/mekanism__sulfur_trioxide.png new file mode 100644 index 00000000..5ab3221c Binary files /dev/null and b/public/textures/fluid/mekanism__sulfur_trioxide.png differ diff --git a/public/textures/fluid/mekanism__sulfuric_acid.png b/public/textures/fluid/mekanism__sulfuric_acid.png new file mode 100644 index 00000000..7ea6a13d Binary files /dev/null and b/public/textures/fluid/mekanism__sulfuric_acid.png differ diff --git a/public/textures/fluid/mekanism__superheated_sodium.png b/public/textures/fluid/mekanism__superheated_sodium.png new file mode 100644 index 00000000..4c17cb2b Binary files /dev/null and b/public/textures/fluid/mekanism__superheated_sodium.png differ diff --git a/public/textures/fluid/mekanism__uranium_hexafluoride.png b/public/textures/fluid/mekanism__uranium_hexafluoride.png new file mode 100644 index 00000000..31ee121b Binary files /dev/null and b/public/textures/fluid/mekanism__uranium_hexafluoride.png differ diff --git a/public/textures/fluid/mekanism__uranium_oxide.png b/public/textures/fluid/mekanism__uranium_oxide.png new file mode 100644 index 00000000..1d0e28a5 Binary files /dev/null and b/public/textures/fluid/mekanism__uranium_oxide.png differ diff --git a/public/textures/fluid/mekanismgenerators__bioethanol.png b/public/textures/fluid/mekanismgenerators__bioethanol.png new file mode 100644 index 00000000..ee2896d7 Binary files /dev/null and b/public/textures/fluid/mekanismgenerators__bioethanol.png differ diff --git a/public/textures/fluid/mekanismgenerators__deuterium.png b/public/textures/fluid/mekanismgenerators__deuterium.png new file mode 100644 index 00000000..82c1aed9 Binary files /dev/null and b/public/textures/fluid/mekanismgenerators__deuterium.png differ diff --git a/public/textures/fluid/mekanismgenerators__flowing_bioethanol.png b/public/textures/fluid/mekanismgenerators__flowing_bioethanol.png new file mode 100644 index 00000000..9e1f8c1f Binary files /dev/null and b/public/textures/fluid/mekanismgenerators__flowing_bioethanol.png differ diff --git a/public/textures/fluid/mekanismgenerators__flowing_deuterium.png b/public/textures/fluid/mekanismgenerators__flowing_deuterium.png new file mode 100644 index 00000000..f5ae700a Binary files /dev/null and b/public/textures/fluid/mekanismgenerators__flowing_deuterium.png differ diff --git a/public/textures/fluid/mekanismgenerators__flowing_fusion_fuel.png b/public/textures/fluid/mekanismgenerators__flowing_fusion_fuel.png new file mode 100644 index 00000000..4af05dbd Binary files /dev/null and b/public/textures/fluid/mekanismgenerators__flowing_fusion_fuel.png differ diff --git a/public/textures/fluid/mekanismgenerators__flowing_tritium.png b/public/textures/fluid/mekanismgenerators__flowing_tritium.png new file mode 100644 index 00000000..3f936a92 Binary files /dev/null and b/public/textures/fluid/mekanismgenerators__flowing_tritium.png differ diff --git a/public/textures/fluid/mekanismgenerators__fusion_fuel.png b/public/textures/fluid/mekanismgenerators__fusion_fuel.png new file mode 100644 index 00000000..75ba868f Binary files /dev/null and b/public/textures/fluid/mekanismgenerators__fusion_fuel.png differ diff --git a/public/textures/fluid/mekanismgenerators__tritium.png b/public/textures/fluid/mekanismgenerators__tritium.png new file mode 100644 index 00000000..e32e513c Binary files /dev/null and b/public/textures/fluid/mekanismgenerators__tritium.png differ diff --git a/public/textures/fluid/minecraft__empty.png b/public/textures/fluid/minecraft__empty.png new file mode 100644 index 00000000..e38512b1 Binary files /dev/null and b/public/textures/fluid/minecraft__empty.png differ diff --git a/public/textures/fluid/minecraft__flowing_lava.png b/public/textures/fluid/minecraft__flowing_lava.png new file mode 100644 index 00000000..ea437cf3 Binary files /dev/null and b/public/textures/fluid/minecraft__flowing_lava.png differ diff --git a/public/textures/fluid/minecraft__flowing_milk.png b/public/textures/fluid/minecraft__flowing_milk.png new file mode 100644 index 00000000..e851e1c6 Binary files /dev/null and b/public/textures/fluid/minecraft__flowing_milk.png differ diff --git a/public/textures/fluid/minecraft__flowing_water.png b/public/textures/fluid/minecraft__flowing_water.png new file mode 100644 index 00000000..42e26e4e Binary files /dev/null and b/public/textures/fluid/minecraft__flowing_water.png differ diff --git a/public/textures/fluid/minecraft__lava.png b/public/textures/fluid/minecraft__lava.png new file mode 100644 index 00000000..ba152503 Binary files /dev/null and b/public/textures/fluid/minecraft__lava.png differ diff --git a/public/textures/fluid/minecraft__milk.png b/public/textures/fluid/minecraft__milk.png new file mode 100644 index 00000000..e851e1c6 Binary files /dev/null and b/public/textures/fluid/minecraft__milk.png differ diff --git a/public/textures/fluid/minecraft__water.png b/public/textures/fluid/minecraft__water.png new file mode 100644 index 00000000..b12ded66 Binary files /dev/null and b/public/textures/fluid/minecraft__water.png differ diff --git a/public/textures/fluid/sophisticatedcore__xp_flowing.png b/public/textures/fluid/sophisticatedcore__xp_flowing.png new file mode 100644 index 00000000..9e1f1b4a Binary files /dev/null and b/public/textures/fluid/sophisticatedcore__xp_flowing.png differ diff --git a/public/textures/fluid/sophisticatedcore__xp_still.png b/public/textures/fluid/sophisticatedcore__xp_still.png new file mode 100644 index 00000000..9e1f1b4a Binary files /dev/null and b/public/textures/fluid/sophisticatedcore__xp_still.png differ diff --git a/public/textures/guardvillagers/guard_spawn_egg.png b/public/textures/guardvillagers/guard_spawn_egg.png new file mode 100644 index 00000000..a1e8875b Binary files /dev/null and b/public/textures/guardvillagers/guard_spawn_egg.png differ diff --git a/public/textures/guardvillagers/illusioner_spawn_egg.png b/public/textures/guardvillagers/illusioner_spawn_egg.png new file mode 100644 index 00000000..e5ec941b Binary files /dev/null and b/public/textures/guardvillagers/illusioner_spawn_egg.png differ diff --git a/public/textures/illagerinvasion/alchemist_spawn_egg.png b/public/textures/illagerinvasion/alchemist_spawn_egg.png new file mode 100644 index 00000000..7f76c9f4 Binary files /dev/null and b/public/textures/illagerinvasion/alchemist_spawn_egg.png differ diff --git a/public/textures/illagerinvasion/archivist_spawn_egg.png b/public/textures/illagerinvasion/archivist_spawn_egg.png new file mode 100644 index 00000000..3455f25b Binary files /dev/null and b/public/textures/illagerinvasion/archivist_spawn_egg.png differ diff --git a/public/textures/illagerinvasion/basher_spawn_egg.png b/public/textures/illagerinvasion/basher_spawn_egg.png new file mode 100644 index 00000000..af33401e Binary files /dev/null and b/public/textures/illagerinvasion/basher_spawn_egg.png differ diff --git a/public/textures/illagerinvasion/firecaller_spawn_egg.png b/public/textures/illagerinvasion/firecaller_spawn_egg.png new file mode 100644 index 00000000..5a3a058c Binary files /dev/null and b/public/textures/illagerinvasion/firecaller_spawn_egg.png differ diff --git a/public/textures/illagerinvasion/hallowed_gem.png b/public/textures/illagerinvasion/hallowed_gem.png new file mode 100644 index 00000000..a476f682 Binary files /dev/null and b/public/textures/illagerinvasion/hallowed_gem.png differ diff --git a/public/textures/illagerinvasion/horn_of_sight.png b/public/textures/illagerinvasion/horn_of_sight.png new file mode 100644 index 00000000..39c659fd Binary files /dev/null and b/public/textures/illagerinvasion/horn_of_sight.png differ diff --git a/public/textures/illagerinvasion/illusionary_dust.png b/public/textures/illagerinvasion/illusionary_dust.png new file mode 100644 index 00000000..3ed84a08 Binary files /dev/null and b/public/textures/illagerinvasion/illusionary_dust.png differ diff --git a/public/textures/illagerinvasion/illusioner_spawn_egg.png b/public/textures/illagerinvasion/illusioner_spawn_egg.png new file mode 100644 index 00000000..f2787f76 Binary files /dev/null and b/public/textures/illagerinvasion/illusioner_spawn_egg.png differ diff --git a/public/textures/illagerinvasion/imbuing_table.png b/public/textures/illagerinvasion/imbuing_table.png new file mode 100644 index 00000000..ba62c5a1 Binary files /dev/null and b/public/textures/illagerinvasion/imbuing_table.png differ diff --git a/public/textures/illagerinvasion/inquisitor_spawn_egg.png b/public/textures/illagerinvasion/inquisitor_spawn_egg.png new file mode 100644 index 00000000..562dcb29 Binary files /dev/null and b/public/textures/illagerinvasion/inquisitor_spawn_egg.png differ diff --git a/public/textures/illagerinvasion/invoker_spawn_egg.png b/public/textures/illagerinvasion/invoker_spawn_egg.png new file mode 100644 index 00000000..79d3beee Binary files /dev/null and b/public/textures/illagerinvasion/invoker_spawn_egg.png differ diff --git a/public/textures/illagerinvasion/lost_candle.png b/public/textures/illagerinvasion/lost_candle.png new file mode 100644 index 00000000..2a335ef8 Binary files /dev/null and b/public/textures/illagerinvasion/lost_candle.png differ diff --git a/public/textures/illagerinvasion/magical_fire_charge.png b/public/textures/illagerinvasion/magical_fire_charge.png new file mode 100644 index 00000000..21b57f33 Binary files /dev/null and b/public/textures/illagerinvasion/magical_fire_charge.png differ diff --git a/public/textures/illagerinvasion/marauder_spawn_egg.png b/public/textures/illagerinvasion/marauder_spawn_egg.png new file mode 100644 index 00000000..bc194e04 Binary files /dev/null and b/public/textures/illagerinvasion/marauder_spawn_egg.png differ diff --git a/public/textures/illagerinvasion/necromancer_spawn_egg.png b/public/textures/illagerinvasion/necromancer_spawn_egg.png new file mode 100644 index 00000000..bfc19370 Binary files /dev/null and b/public/textures/illagerinvasion/necromancer_spawn_egg.png differ diff --git a/public/textures/illagerinvasion/platinum_chunk.png b/public/textures/illagerinvasion/platinum_chunk.png new file mode 100644 index 00000000..3a5bf951 Binary files /dev/null and b/public/textures/illagerinvasion/platinum_chunk.png differ diff --git a/public/textures/illagerinvasion/platinum_infused_hatchet.png b/public/textures/illagerinvasion/platinum_infused_hatchet.png new file mode 100644 index 00000000..ef228135 Binary files /dev/null and b/public/textures/illagerinvasion/platinum_infused_hatchet.png differ diff --git a/public/textures/illagerinvasion/platinum_sheet.png b/public/textures/illagerinvasion/platinum_sheet.png new file mode 100644 index 00000000..8404f62b Binary files /dev/null and b/public/textures/illagerinvasion/platinum_sheet.png differ diff --git a/public/textures/illagerinvasion/primal_essence.png b/public/textures/illagerinvasion/primal_essence.png new file mode 100644 index 00000000..cb22836f Binary files /dev/null and b/public/textures/illagerinvasion/primal_essence.png differ diff --git a/public/textures/illagerinvasion/provoker_spawn_egg.png b/public/textures/illagerinvasion/provoker_spawn_egg.png new file mode 100644 index 00000000..072ee6c7 Binary files /dev/null and b/public/textures/illagerinvasion/provoker_spawn_egg.png differ diff --git a/public/textures/illagerinvasion/sorcerer_spawn_egg.png b/public/textures/illagerinvasion/sorcerer_spawn_egg.png new file mode 100644 index 00000000..a096b4ab Binary files /dev/null and b/public/textures/illagerinvasion/sorcerer_spawn_egg.png differ diff --git a/public/textures/illagerinvasion/surrendered_spawn_egg.png b/public/textures/illagerinvasion/surrendered_spawn_egg.png new file mode 100644 index 00000000..7f378d6e Binary files /dev/null and b/public/textures/illagerinvasion/surrendered_spawn_egg.png differ diff --git a/public/textures/illagerinvasion/unusual_dust.png b/public/textures/illagerinvasion/unusual_dust.png new file mode 100644 index 00000000..84163cfe Binary files /dev/null and b/public/textures/illagerinvasion/unusual_dust.png differ diff --git a/public/textures/immersiveengineering/acetaldehyde_bucket.png b/public/textures/immersiveengineering/acetaldehyde_bucket.png new file mode 100644 index 00000000..ad4d60a3 Binary files /dev/null and b/public/textures/immersiveengineering/acetaldehyde_bucket.png differ diff --git a/public/textures/immersiveengineering/alloybrick.png b/public/textures/immersiveengineering/alloybrick.png new file mode 100644 index 00000000..3067147f Binary files /dev/null and b/public/textures/immersiveengineering/alloybrick.png differ diff --git a/public/textures/immersiveengineering/alu_catwalk.png b/public/textures/immersiveengineering/alu_catwalk.png new file mode 100644 index 00000000..e283d748 Binary files /dev/null and b/public/textures/immersiveengineering/alu_catwalk.png differ diff --git a/public/textures/immersiveengineering/alu_catwalk_stairs.png b/public/textures/immersiveengineering/alu_catwalk_stairs.png new file mode 100644 index 00000000..4a5f63af Binary files /dev/null and b/public/textures/immersiveengineering/alu_catwalk_stairs.png differ diff --git a/public/textures/immersiveengineering/alu_fence.png b/public/textures/immersiveengineering/alu_fence.png new file mode 100644 index 00000000..9a78096f Binary files /dev/null and b/public/textures/immersiveengineering/alu_fence.png differ diff --git a/public/textures/immersiveengineering/alu_fence_gate.png b/public/textures/immersiveengineering/alu_fence_gate.png new file mode 100644 index 00000000..c12035e5 Binary files /dev/null and b/public/textures/immersiveengineering/alu_fence_gate.png differ diff --git a/public/textures/immersiveengineering/alu_post.png b/public/textures/immersiveengineering/alu_post.png new file mode 100644 index 00000000..49e4f6fc Binary files /dev/null and b/public/textures/immersiveengineering/alu_post.png differ diff --git a/public/textures/immersiveengineering/alu_scaffolding_grate_top.png b/public/textures/immersiveengineering/alu_scaffolding_grate_top.png new file mode 100644 index 00000000..8e9e5558 Binary files /dev/null and b/public/textures/immersiveengineering/alu_scaffolding_grate_top.png differ diff --git a/public/textures/immersiveengineering/alu_scaffolding_standard.png b/public/textures/immersiveengineering/alu_scaffolding_standard.png new file mode 100644 index 00000000..5f00d94c Binary files /dev/null and b/public/textures/immersiveengineering/alu_scaffolding_standard.png differ diff --git a/public/textures/immersiveengineering/alu_scaffolding_wooden_top.png b/public/textures/immersiveengineering/alu_scaffolding_wooden_top.png new file mode 100644 index 00000000..52bb34c0 Binary files /dev/null and b/public/textures/immersiveengineering/alu_scaffolding_wooden_top.png differ diff --git a/public/textures/immersiveengineering/alu_slope.png b/public/textures/immersiveengineering/alu_slope.png new file mode 100644 index 00000000..1a3321a1 Binary files /dev/null and b/public/textures/immersiveengineering/alu_slope.png differ diff --git a/public/textures/immersiveengineering/alu_wallmount.png b/public/textures/immersiveengineering/alu_wallmount.png new file mode 100644 index 00000000..91001e2f Binary files /dev/null and b/public/textures/immersiveengineering/alu_wallmount.png differ diff --git a/public/textures/immersiveengineering/alu_window.png b/public/textures/immersiveengineering/alu_window.png new file mode 100644 index 00000000..eed146ad Binary files /dev/null and b/public/textures/immersiveengineering/alu_window.png differ diff --git a/public/textures/immersiveengineering/aluminum_hanging_sign.png b/public/textures/immersiveengineering/aluminum_hanging_sign.png new file mode 100644 index 00000000..2cf33785 Binary files /dev/null and b/public/textures/immersiveengineering/aluminum_hanging_sign.png differ diff --git a/public/textures/immersiveengineering/aluminum_sign.png b/public/textures/immersiveengineering/aluminum_sign.png new file mode 100644 index 00000000..8fd8100f Binary files /dev/null and b/public/textures/immersiveengineering/aluminum_sign.png differ diff --git a/public/textures/immersiveengineering/armor_faraday_boots.png b/public/textures/immersiveengineering/armor_faraday_boots.png new file mode 100644 index 00000000..3067580d Binary files /dev/null and b/public/textures/immersiveengineering/armor_faraday_boots.png differ diff --git a/public/textures/immersiveengineering/armor_faraday_chestplate.png b/public/textures/immersiveengineering/armor_faraday_chestplate.png new file mode 100644 index 00000000..248a56f1 Binary files /dev/null and b/public/textures/immersiveengineering/armor_faraday_chestplate.png differ diff --git a/public/textures/immersiveengineering/armor_faraday_helmet.png b/public/textures/immersiveengineering/armor_faraday_helmet.png new file mode 100644 index 00000000..cddc9dcc Binary files /dev/null and b/public/textures/immersiveengineering/armor_faraday_helmet.png differ diff --git a/public/textures/immersiveengineering/armor_faraday_leggings.png b/public/textures/immersiveengineering/armor_faraday_leggings.png new file mode 100644 index 00000000..e73da965 Binary files /dev/null and b/public/textures/immersiveengineering/armor_faraday_leggings.png differ diff --git a/public/textures/immersiveengineering/armor_steel_boots.png b/public/textures/immersiveengineering/armor_steel_boots.png new file mode 100644 index 00000000..88bf2cac Binary files /dev/null and b/public/textures/immersiveengineering/armor_steel_boots.png differ diff --git a/public/textures/immersiveengineering/armor_steel_chestplate.png b/public/textures/immersiveengineering/armor_steel_chestplate.png new file mode 100644 index 00000000..7abab734 Binary files /dev/null and b/public/textures/immersiveengineering/armor_steel_chestplate.png differ diff --git a/public/textures/immersiveengineering/armor_steel_helmet.png b/public/textures/immersiveengineering/armor_steel_helmet.png new file mode 100644 index 00000000..2011bff4 Binary files /dev/null and b/public/textures/immersiveengineering/armor_steel_helmet.png differ diff --git a/public/textures/immersiveengineering/armor_steel_leggings.png b/public/textures/immersiveengineering/armor_steel_leggings.png new file mode 100644 index 00000000..6648d18a Binary files /dev/null and b/public/textures/immersiveengineering/armor_steel_leggings.png differ diff --git a/public/textures/immersiveengineering/axe_steel.png b/public/textures/immersiveengineering/axe_steel.png new file mode 100644 index 00000000..3d9d3803 Binary files /dev/null and b/public/textures/immersiveengineering/axe_steel.png differ diff --git a/public/textures/immersiveengineering/balloon.png b/public/textures/immersiveengineering/balloon.png new file mode 100644 index 00000000..a4dc71f9 Binary files /dev/null and b/public/textures/immersiveengineering/balloon.png differ diff --git a/public/textures/immersiveengineering/bannerpattern_bevels.png b/public/textures/immersiveengineering/bannerpattern_bevels.png new file mode 100644 index 00000000..ac141e3f Binary files /dev/null and b/public/textures/immersiveengineering/bannerpattern_bevels.png differ diff --git a/public/textures/immersiveengineering/bannerpattern_hammer.png b/public/textures/immersiveengineering/bannerpattern_hammer.png new file mode 100644 index 00000000..9ad45eb1 Binary files /dev/null and b/public/textures/immersiveengineering/bannerpattern_hammer.png differ diff --git a/public/textures/immersiveengineering/bannerpattern_ornate.png b/public/textures/immersiveengineering/bannerpattern_ornate.png new file mode 100644 index 00000000..7059ab67 Binary files /dev/null and b/public/textures/immersiveengineering/bannerpattern_ornate.png differ diff --git a/public/textures/immersiveengineering/bannerpattern_screwdriver.png b/public/textures/immersiveengineering/bannerpattern_screwdriver.png new file mode 100644 index 00000000..0c5cc7b3 Binary files /dev/null and b/public/textures/immersiveengineering/bannerpattern_screwdriver.png differ diff --git a/public/textures/immersiveengineering/bannerpattern_treated_wood.png b/public/textures/immersiveengineering/bannerpattern_treated_wood.png new file mode 100644 index 00000000..2699eea1 Binary files /dev/null and b/public/textures/immersiveengineering/bannerpattern_treated_wood.png differ diff --git a/public/textures/immersiveengineering/bannerpattern_warning.png b/public/textures/immersiveengineering/bannerpattern_warning.png new file mode 100644 index 00000000..1bdb0500 Binary files /dev/null and b/public/textures/immersiveengineering/bannerpattern_warning.png differ diff --git a/public/textures/immersiveengineering/bannerpattern_windmill.png b/public/textures/immersiveengineering/bannerpattern_windmill.png new file mode 100644 index 00000000..78539799 Binary files /dev/null and b/public/textures/immersiveengineering/bannerpattern_windmill.png differ diff --git a/public/textures/immersiveengineering/bannerpattern_wirecutter.png b/public/textures/immersiveengineering/bannerpattern_wirecutter.png new file mode 100644 index 00000000..41d0e75a Binary files /dev/null and b/public/textures/immersiveengineering/bannerpattern_wirecutter.png differ diff --git a/public/textures/immersiveengineering/bannerpattern_wolf.png b/public/textures/immersiveengineering/bannerpattern_wolf.png new file mode 100644 index 00000000..83926a6a Binary files /dev/null and b/public/textures/immersiveengineering/bannerpattern_wolf.png differ diff --git a/public/textures/immersiveengineering/basic_engineering.png b/public/textures/immersiveengineering/basic_engineering.png new file mode 100644 index 00000000..3291d256 Binary files /dev/null and b/public/textures/immersiveengineering/basic_engineering.png differ diff --git a/public/textures/immersiveengineering/biodiesel_bucket.png b/public/textures/immersiveengineering/biodiesel_bucket.png new file mode 100644 index 00000000..94fde593 Binary files /dev/null and b/public/textures/immersiveengineering/biodiesel_bucket.png differ diff --git a/public/textures/immersiveengineering/blastbrick.png b/public/textures/immersiveengineering/blastbrick.png new file mode 100644 index 00000000..9641a918 Binary files /dev/null and b/public/textures/immersiveengineering/blastbrick.png differ diff --git a/public/textures/immersiveengineering/blastbrick_reinforced.png b/public/textures/immersiveengineering/blastbrick_reinforced.png new file mode 100644 index 00000000..55564745 Binary files /dev/null and b/public/textures/immersiveengineering/blastbrick_reinforced.png differ diff --git a/public/textures/immersiveengineering/blastfurnace_preheater.png b/public/textures/immersiveengineering/blastfurnace_preheater.png new file mode 100644 index 00000000..4e34abb7 Binary files /dev/null and b/public/textures/immersiveengineering/blastfurnace_preheater.png differ diff --git a/public/textures/immersiveengineering/blueprint__{'immersiveengineering__blueprint'__'automatons'}.png b/public/textures/immersiveengineering/blueprint__{'immersiveengineering__blueprint'__'automatons'}.png new file mode 100644 index 00000000..af099768 Binary files /dev/null and b/public/textures/immersiveengineering/blueprint__{'immersiveengineering__blueprint'__'automatons'}.png differ diff --git a/public/textures/immersiveengineering/blueprint__{'immersiveengineering__blueprint'__'bannerpatterns'}.png b/public/textures/immersiveengineering/blueprint__{'immersiveengineering__blueprint'__'bannerpatterns'}.png new file mode 100644 index 00000000..af099768 Binary files /dev/null and b/public/textures/immersiveengineering/blueprint__{'immersiveengineering__blueprint'__'bannerpatterns'}.png differ diff --git a/public/textures/immersiveengineering/blueprint__{'immersiveengineering__blueprint'__'bullet'}.png b/public/textures/immersiveengineering/blueprint__{'immersiveengineering__blueprint'__'bullet'}.png new file mode 100644 index 00000000..af099768 Binary files /dev/null and b/public/textures/immersiveengineering/blueprint__{'immersiveengineering__blueprint'__'bullet'}.png differ diff --git a/public/textures/immersiveengineering/blueprint__{'immersiveengineering__blueprint'__'components'}.png b/public/textures/immersiveengineering/blueprint__{'immersiveengineering__blueprint'__'components'}.png new file mode 100644 index 00000000..af099768 Binary files /dev/null and b/public/textures/immersiveengineering/blueprint__{'immersiveengineering__blueprint'__'components'}.png differ diff --git a/public/textures/immersiveengineering/blueprint__{'immersiveengineering__blueprint'__'molds'}.png b/public/textures/immersiveengineering/blueprint__{'immersiveengineering__blueprint'__'molds'}.png new file mode 100644 index 00000000..af099768 Binary files /dev/null and b/public/textures/immersiveengineering/blueprint__{'immersiveengineering__blueprint'__'molds'}.png differ diff --git a/public/textures/immersiveengineering/blueprint__{'immersiveengineering__blueprint'__'specialBullet'}.png b/public/textures/immersiveengineering/blueprint__{'immersiveengineering__blueprint'__'specialBullet'}.png new file mode 100644 index 00000000..af099768 Binary files /dev/null and b/public/textures/immersiveengineering/blueprint__{'immersiveengineering__blueprint'__'specialBullet'}.png differ diff --git a/public/textures/immersiveengineering/blueprint__{'immersiveengineering__blueprint'__'warning_sign'}.png b/public/textures/immersiveengineering/blueprint__{'immersiveengineering__blueprint'__'warning_sign'}.png new file mode 100644 index 00000000..af099768 Binary files /dev/null and b/public/textures/immersiveengineering/blueprint__{'immersiveengineering__blueprint'__'warning_sign'}.png differ diff --git a/public/textures/immersiveengineering/blueprint_shelf.png b/public/textures/immersiveengineering/blueprint_shelf.png new file mode 100644 index 00000000..0d7b7088 Binary files /dev/null and b/public/textures/immersiveengineering/blueprint_shelf.png differ diff --git a/public/textures/immersiveengineering/breaker_switch.png b/public/textures/immersiveengineering/breaker_switch.png new file mode 100644 index 00000000..dba259cf Binary files /dev/null and b/public/textures/immersiveengineering/breaker_switch.png differ diff --git a/public/textures/immersiveengineering/bullet_armor_piercing.png b/public/textures/immersiveengineering/bullet_armor_piercing.png new file mode 100644 index 00000000..9b791448 Binary files /dev/null and b/public/textures/immersiveengineering/bullet_armor_piercing.png differ diff --git a/public/textures/immersiveengineering/bullet_buckshot.png b/public/textures/immersiveengineering/bullet_buckshot.png new file mode 100644 index 00000000..7c372a45 Binary files /dev/null and b/public/textures/immersiveengineering/bullet_buckshot.png differ diff --git a/public/textures/immersiveengineering/bullet_casull.png b/public/textures/immersiveengineering/bullet_casull.png new file mode 100644 index 00000000..1fc07781 Binary files /dev/null and b/public/textures/immersiveengineering/bullet_casull.png differ diff --git a/public/textures/immersiveengineering/bullet_dragons_breath.png b/public/textures/immersiveengineering/bullet_dragons_breath.png new file mode 100644 index 00000000..343f2ced Binary files /dev/null and b/public/textures/immersiveengineering/bullet_dragons_breath.png differ diff --git a/public/textures/immersiveengineering/bullet_firework.png b/public/textures/immersiveengineering/bullet_firework.png new file mode 100644 index 00000000..e57f84c1 Binary files /dev/null and b/public/textures/immersiveengineering/bullet_firework.png differ diff --git a/public/textures/immersiveengineering/bullet_flare.png b/public/textures/immersiveengineering/bullet_flare.png new file mode 100644 index 00000000..3a4fe64f Binary files /dev/null and b/public/textures/immersiveengineering/bullet_flare.png differ diff --git a/public/textures/immersiveengineering/bullet_he.png b/public/textures/immersiveengineering/bullet_he.png new file mode 100644 index 00000000..125106b8 Binary files /dev/null and b/public/textures/immersiveengineering/bullet_he.png differ diff --git a/public/textures/immersiveengineering/bullet_homing.png b/public/textures/immersiveengineering/bullet_homing.png new file mode 100644 index 00000000..8728dfdf Binary files /dev/null and b/public/textures/immersiveengineering/bullet_homing.png differ diff --git a/public/textures/immersiveengineering/bullet_potion.png b/public/textures/immersiveengineering/bullet_potion.png new file mode 100644 index 00000000..43966b54 Binary files /dev/null and b/public/textures/immersiveengineering/bullet_potion.png differ diff --git a/public/textures/immersiveengineering/bullet_silver.png b/public/textures/immersiveengineering/bullet_silver.png new file mode 100644 index 00000000..27e519c7 Binary files /dev/null and b/public/textures/immersiveengineering/bullet_silver.png differ diff --git a/public/textures/immersiveengineering/bullet_wolfpack.png b/public/textures/immersiveengineering/bullet_wolfpack.png new file mode 100644 index 00000000..7fe3f666 Binary files /dev/null and b/public/textures/immersiveengineering/bullet_wolfpack.png differ diff --git a/public/textures/immersiveengineering/bulwark_spawn_egg.png b/public/textures/immersiveengineering/bulwark_spawn_egg.png new file mode 100644 index 00000000..eba2fad2 Binary files /dev/null and b/public/textures/immersiveengineering/bulwark_spawn_egg.png differ diff --git a/public/textures/immersiveengineering/buzzsaw.png b/public/textures/immersiveengineering/buzzsaw.png new file mode 100644 index 00000000..0f361829 Binary files /dev/null and b/public/textures/immersiveengineering/buzzsaw.png differ diff --git a/public/textures/immersiveengineering/cagelamp.png b/public/textures/immersiveengineering/cagelamp.png new file mode 100644 index 00000000..806293be Binary files /dev/null and b/public/textures/immersiveengineering/cagelamp.png differ diff --git a/public/textures/immersiveengineering/capacitor_creative.png b/public/textures/immersiveengineering/capacitor_creative.png new file mode 100644 index 00000000..872ad0dc Binary files /dev/null and b/public/textures/immersiveengineering/capacitor_creative.png differ diff --git a/public/textures/immersiveengineering/capacitor_hv.png b/public/textures/immersiveengineering/capacitor_hv.png new file mode 100644 index 00000000..8993535a Binary files /dev/null and b/public/textures/immersiveengineering/capacitor_hv.png differ diff --git a/public/textures/immersiveengineering/capacitor_lv.png b/public/textures/immersiveengineering/capacitor_lv.png new file mode 100644 index 00000000..ade50e63 Binary files /dev/null and b/public/textures/immersiveengineering/capacitor_lv.png differ diff --git a/public/textures/immersiveengineering/capacitor_mv.png b/public/textures/immersiveengineering/capacitor_mv.png new file mode 100644 index 00000000..9b66bc85 Binary files /dev/null and b/public/textures/immersiveengineering/capacitor_mv.png differ diff --git a/public/textures/immersiveengineering/charging_station.png b/public/textures/immersiveengineering/charging_station.png new file mode 100644 index 00000000..86f3b020 Binary files /dev/null and b/public/textures/immersiveengineering/charging_station.png differ diff --git a/public/textures/immersiveengineering/chemthrower.png b/public/textures/immersiveengineering/chemthrower.png new file mode 100644 index 00000000..a3d61da6 Binary files /dev/null and b/public/textures/immersiveengineering/chemthrower.png differ diff --git a/public/textures/immersiveengineering/chute_aluminum.png b/public/textures/immersiveengineering/chute_aluminum.png new file mode 100644 index 00000000..1462d464 Binary files /dev/null and b/public/textures/immersiveengineering/chute_aluminum.png differ diff --git a/public/textures/immersiveengineering/chute_colored_black.png b/public/textures/immersiveengineering/chute_colored_black.png new file mode 100644 index 00000000..b46ff10c Binary files /dev/null and b/public/textures/immersiveengineering/chute_colored_black.png differ diff --git a/public/textures/immersiveengineering/chute_colored_blue.png b/public/textures/immersiveengineering/chute_colored_blue.png new file mode 100644 index 00000000..568215df Binary files /dev/null and b/public/textures/immersiveengineering/chute_colored_blue.png differ diff --git a/public/textures/immersiveengineering/chute_colored_brown.png b/public/textures/immersiveengineering/chute_colored_brown.png new file mode 100644 index 00000000..d7ec0b05 Binary files /dev/null and b/public/textures/immersiveengineering/chute_colored_brown.png differ diff --git a/public/textures/immersiveengineering/chute_colored_cyan.png b/public/textures/immersiveengineering/chute_colored_cyan.png new file mode 100644 index 00000000..4bc5dc55 Binary files /dev/null and b/public/textures/immersiveengineering/chute_colored_cyan.png differ diff --git a/public/textures/immersiveengineering/chute_colored_gray.png b/public/textures/immersiveengineering/chute_colored_gray.png new file mode 100644 index 00000000..753371a9 Binary files /dev/null and b/public/textures/immersiveengineering/chute_colored_gray.png differ diff --git a/public/textures/immersiveengineering/chute_colored_green.png b/public/textures/immersiveengineering/chute_colored_green.png new file mode 100644 index 00000000..36adc3a6 Binary files /dev/null and b/public/textures/immersiveengineering/chute_colored_green.png differ diff --git a/public/textures/immersiveengineering/chute_colored_light_blue.png b/public/textures/immersiveengineering/chute_colored_light_blue.png new file mode 100644 index 00000000..be85e26c Binary files /dev/null and b/public/textures/immersiveengineering/chute_colored_light_blue.png differ diff --git a/public/textures/immersiveengineering/chute_colored_light_gray.png b/public/textures/immersiveengineering/chute_colored_light_gray.png new file mode 100644 index 00000000..677d77ea Binary files /dev/null and b/public/textures/immersiveengineering/chute_colored_light_gray.png differ diff --git a/public/textures/immersiveengineering/chute_colored_lime.png b/public/textures/immersiveengineering/chute_colored_lime.png new file mode 100644 index 00000000..1822ce2e Binary files /dev/null and b/public/textures/immersiveengineering/chute_colored_lime.png differ diff --git a/public/textures/immersiveengineering/chute_colored_magenta.png b/public/textures/immersiveengineering/chute_colored_magenta.png new file mode 100644 index 00000000..d9972780 Binary files /dev/null and b/public/textures/immersiveengineering/chute_colored_magenta.png differ diff --git a/public/textures/immersiveengineering/chute_colored_orange.png b/public/textures/immersiveengineering/chute_colored_orange.png new file mode 100644 index 00000000..bc7547bc Binary files /dev/null and b/public/textures/immersiveengineering/chute_colored_orange.png differ diff --git a/public/textures/immersiveengineering/chute_colored_pink.png b/public/textures/immersiveengineering/chute_colored_pink.png new file mode 100644 index 00000000..b54569b4 Binary files /dev/null and b/public/textures/immersiveengineering/chute_colored_pink.png differ diff --git a/public/textures/immersiveengineering/chute_colored_purple.png b/public/textures/immersiveengineering/chute_colored_purple.png new file mode 100644 index 00000000..cb6df80a Binary files /dev/null and b/public/textures/immersiveengineering/chute_colored_purple.png differ diff --git a/public/textures/immersiveengineering/chute_colored_red.png b/public/textures/immersiveengineering/chute_colored_red.png new file mode 100644 index 00000000..f3017d64 Binary files /dev/null and b/public/textures/immersiveengineering/chute_colored_red.png differ diff --git a/public/textures/immersiveengineering/chute_colored_white.png b/public/textures/immersiveengineering/chute_colored_white.png new file mode 100644 index 00000000..debcb8e3 Binary files /dev/null and b/public/textures/immersiveengineering/chute_colored_white.png differ diff --git a/public/textures/immersiveengineering/chute_colored_yellow.png b/public/textures/immersiveengineering/chute_colored_yellow.png new file mode 100644 index 00000000..05e5008e Binary files /dev/null and b/public/textures/immersiveengineering/chute_colored_yellow.png differ diff --git a/public/textures/immersiveengineering/chute_copper.png b/public/textures/immersiveengineering/chute_copper.png new file mode 100644 index 00000000..37700918 Binary files /dev/null and b/public/textures/immersiveengineering/chute_copper.png differ diff --git a/public/textures/immersiveengineering/chute_iron.png b/public/textures/immersiveengineering/chute_iron.png new file mode 100644 index 00000000..a8e0e632 Binary files /dev/null and b/public/textures/immersiveengineering/chute_iron.png differ diff --git a/public/textures/immersiveengineering/chute_steel.png b/public/textures/immersiveengineering/chute_steel.png new file mode 100644 index 00000000..34627e30 Binary files /dev/null and b/public/textures/immersiveengineering/chute_steel.png differ diff --git a/public/textures/immersiveengineering/circuit_board.png b/public/textures/immersiveengineering/circuit_board.png new file mode 100644 index 00000000..d78e7844 Binary files /dev/null and b/public/textures/immersiveengineering/circuit_board.png differ diff --git a/public/textures/immersiveengineering/circuit_table.png b/public/textures/immersiveengineering/circuit_table.png new file mode 100644 index 00000000..d502c06b Binary files /dev/null and b/public/textures/immersiveengineering/circuit_table.png differ diff --git a/public/textures/immersiveengineering/clinker_brick.png b/public/textures/immersiveengineering/clinker_brick.png new file mode 100644 index 00000000..4bc8c6d9 Binary files /dev/null and b/public/textures/immersiveengineering/clinker_brick.png differ diff --git a/public/textures/immersiveengineering/clinker_brick_quoin.png b/public/textures/immersiveengineering/clinker_brick_quoin.png new file mode 100644 index 00000000..26189d48 Binary files /dev/null and b/public/textures/immersiveengineering/clinker_brick_quoin.png differ diff --git a/public/textures/immersiveengineering/clinker_brick_sill.png b/public/textures/immersiveengineering/clinker_brick_sill.png new file mode 100644 index 00000000..f8801fae Binary files /dev/null and b/public/textures/immersiveengineering/clinker_brick_sill.png differ diff --git a/public/textures/immersiveengineering/cloche.png b/public/textures/immersiveengineering/cloche.png new file mode 100644 index 00000000..34035cea Binary files /dev/null and b/public/textures/immersiveengineering/cloche.png differ diff --git a/public/textures/immersiveengineering/coal_coke.png b/public/textures/immersiveengineering/coal_coke.png new file mode 100644 index 00000000..25fccc91 Binary files /dev/null and b/public/textures/immersiveengineering/coal_coke.png differ diff --git a/public/textures/immersiveengineering/coil_hv.png b/public/textures/immersiveengineering/coil_hv.png new file mode 100644 index 00000000..e54930ef Binary files /dev/null and b/public/textures/immersiveengineering/coil_hv.png differ diff --git a/public/textures/immersiveengineering/coil_lv.png b/public/textures/immersiveengineering/coil_lv.png new file mode 100644 index 00000000..9b8fd95f Binary files /dev/null and b/public/textures/immersiveengineering/coil_lv.png differ diff --git a/public/textures/immersiveengineering/coil_mv.png b/public/textures/immersiveengineering/coil_mv.png new file mode 100644 index 00000000..9b843fd0 Binary files /dev/null and b/public/textures/immersiveengineering/coil_mv.png differ diff --git a/public/textures/immersiveengineering/coke.png b/public/textures/immersiveengineering/coke.png new file mode 100644 index 00000000..8b8506e8 Binary files /dev/null and b/public/textures/immersiveengineering/coke.png differ diff --git a/public/textures/immersiveengineering/cokebrick.png b/public/textures/immersiveengineering/cokebrick.png new file mode 100644 index 00000000..ae49d0e7 Binary files /dev/null and b/public/textures/immersiveengineering/cokebrick.png differ diff --git a/public/textures/immersiveengineering/commando_spawn_egg.png b/public/textures/immersiveengineering/commando_spawn_egg.png new file mode 100644 index 00000000..30346d92 Binary files /dev/null and b/public/textures/immersiveengineering/commando_spawn_egg.png differ diff --git a/public/textures/immersiveengineering/component_electronic.png b/public/textures/immersiveengineering/component_electronic.png new file mode 100644 index 00000000..958c063c Binary files /dev/null and b/public/textures/immersiveengineering/component_electronic.png differ diff --git a/public/textures/immersiveengineering/component_electronic_adv.png b/public/textures/immersiveengineering/component_electronic_adv.png new file mode 100644 index 00000000..1656092a Binary files /dev/null and b/public/textures/immersiveengineering/component_electronic_adv.png differ diff --git a/public/textures/immersiveengineering/component_iron.png b/public/textures/immersiveengineering/component_iron.png new file mode 100644 index 00000000..7a135b14 Binary files /dev/null and b/public/textures/immersiveengineering/component_iron.png differ diff --git a/public/textures/immersiveengineering/component_steel.png b/public/textures/immersiveengineering/component_steel.png new file mode 100644 index 00000000..845548f8 Binary files /dev/null and b/public/textures/immersiveengineering/component_steel.png differ diff --git a/public/textures/immersiveengineering/concrete.png b/public/textures/immersiveengineering/concrete.png new file mode 100644 index 00000000..006fb741 Binary files /dev/null and b/public/textures/immersiveengineering/concrete.png differ diff --git a/public/textures/immersiveengineering/concrete_brick.png b/public/textures/immersiveengineering/concrete_brick.png new file mode 100644 index 00000000..7b67fdf5 Binary files /dev/null and b/public/textures/immersiveengineering/concrete_brick.png differ diff --git a/public/textures/immersiveengineering/concrete_brick_cracked.png b/public/textures/immersiveengineering/concrete_brick_cracked.png new file mode 100644 index 00000000..700f0ba5 Binary files /dev/null and b/public/textures/immersiveengineering/concrete_brick_cracked.png differ diff --git a/public/textures/immersiveengineering/concrete_bucket.png b/public/textures/immersiveengineering/concrete_bucket.png new file mode 100644 index 00000000..97323a5e Binary files /dev/null and b/public/textures/immersiveengineering/concrete_bucket.png differ diff --git a/public/textures/immersiveengineering/concrete_chiseled.png b/public/textures/immersiveengineering/concrete_chiseled.png new file mode 100644 index 00000000..bf998e30 Binary files /dev/null and b/public/textures/immersiveengineering/concrete_chiseled.png differ diff --git a/public/textures/immersiveengineering/concrete_leaded.png b/public/textures/immersiveengineering/concrete_leaded.png new file mode 100644 index 00000000..032cc415 Binary files /dev/null and b/public/textures/immersiveengineering/concrete_leaded.png differ diff --git a/public/textures/immersiveengineering/concrete_pillar.png b/public/textures/immersiveengineering/concrete_pillar.png new file mode 100644 index 00000000..f0557779 Binary files /dev/null and b/public/textures/immersiveengineering/concrete_pillar.png differ diff --git a/public/textures/immersiveengineering/concrete_quarter.png b/public/textures/immersiveengineering/concrete_quarter.png new file mode 100644 index 00000000..cca0bc05 Binary files /dev/null and b/public/textures/immersiveengineering/concrete_quarter.png differ diff --git a/public/textures/immersiveengineering/concrete_reinforced.png b/public/textures/immersiveengineering/concrete_reinforced.png new file mode 100644 index 00000000..f83c93de Binary files /dev/null and b/public/textures/immersiveengineering/concrete_reinforced.png differ diff --git a/public/textures/immersiveengineering/concrete_reinforced_tile.png b/public/textures/immersiveengineering/concrete_reinforced_tile.png new file mode 100644 index 00000000..a5638d94 Binary files /dev/null and b/public/textures/immersiveengineering/concrete_reinforced_tile.png differ diff --git a/public/textures/immersiveengineering/concrete_sheet.png b/public/textures/immersiveengineering/concrete_sheet.png new file mode 100644 index 00000000..ebc6ca12 Binary files /dev/null and b/public/textures/immersiveengineering/concrete_sheet.png differ diff --git a/public/textures/immersiveengineering/concrete_sprayed.png b/public/textures/immersiveengineering/concrete_sprayed.png new file mode 100644 index 00000000..5e3a4c41 Binary files /dev/null and b/public/textures/immersiveengineering/concrete_sprayed.png differ diff --git a/public/textures/immersiveengineering/concrete_three_quarter.png b/public/textures/immersiveengineering/concrete_three_quarter.png new file mode 100644 index 00000000..53b16822 Binary files /dev/null and b/public/textures/immersiveengineering/concrete_three_quarter.png differ diff --git a/public/textures/immersiveengineering/concrete_tile.png b/public/textures/immersiveengineering/concrete_tile.png new file mode 100644 index 00000000..e4c7a291 Binary files /dev/null and b/public/textures/immersiveengineering/concrete_tile.png differ diff --git a/public/textures/immersiveengineering/connector_bundled.png b/public/textures/immersiveengineering/connector_bundled.png new file mode 100644 index 00000000..d9437cc3 Binary files /dev/null and b/public/textures/immersiveengineering/connector_bundled.png differ diff --git a/public/textures/immersiveengineering/connector_hv.png b/public/textures/immersiveengineering/connector_hv.png new file mode 100644 index 00000000..e0b8b6ca Binary files /dev/null and b/public/textures/immersiveengineering/connector_hv.png differ diff --git a/public/textures/immersiveengineering/connector_hv_relay.png b/public/textures/immersiveengineering/connector_hv_relay.png new file mode 100644 index 00000000..2432a05c Binary files /dev/null and b/public/textures/immersiveengineering/connector_hv_relay.png differ diff --git a/public/textures/immersiveengineering/connector_lv.png b/public/textures/immersiveengineering/connector_lv.png new file mode 100644 index 00000000..6855d30a Binary files /dev/null and b/public/textures/immersiveengineering/connector_lv.png differ diff --git a/public/textures/immersiveengineering/connector_lv_relay.png b/public/textures/immersiveengineering/connector_lv_relay.png new file mode 100644 index 00000000..c1a292fc Binary files /dev/null and b/public/textures/immersiveengineering/connector_lv_relay.png differ diff --git a/public/textures/immersiveengineering/connector_mv.png b/public/textures/immersiveengineering/connector_mv.png new file mode 100644 index 00000000..97f5c8e1 Binary files /dev/null and b/public/textures/immersiveengineering/connector_mv.png differ diff --git a/public/textures/immersiveengineering/connector_mv_relay.png b/public/textures/immersiveengineering/connector_mv_relay.png new file mode 100644 index 00000000..8fcb86e1 Binary files /dev/null and b/public/textures/immersiveengineering/connector_mv_relay.png differ diff --git a/public/textures/immersiveengineering/connector_probe.png b/public/textures/immersiveengineering/connector_probe.png new file mode 100644 index 00000000..cbe4ea20 Binary files /dev/null and b/public/textures/immersiveengineering/connector_probe.png differ diff --git a/public/textures/immersiveengineering/connector_redstone.png b/public/textures/immersiveengineering/connector_redstone.png new file mode 100644 index 00000000..00185346 Binary files /dev/null and b/public/textures/immersiveengineering/connector_redstone.png differ diff --git a/public/textures/immersiveengineering/connector_structural.png b/public/textures/immersiveengineering/connector_structural.png new file mode 100644 index 00000000..9d27a82b Binary files /dev/null and b/public/textures/immersiveengineering/connector_structural.png differ diff --git a/public/textures/immersiveengineering/conveyor_basic.png b/public/textures/immersiveengineering/conveyor_basic.png new file mode 100644 index 00000000..e7b6c7e5 Binary files /dev/null and b/public/textures/immersiveengineering/conveyor_basic.png differ diff --git a/public/textures/immersiveengineering/conveyor_basic__{'immersiveengineering__default_cover'__'immersiveengineering__steel_scaffolding_standard'}.png b/public/textures/immersiveengineering/conveyor_basic__{'immersiveengineering__default_cover'__'immersiveengineering__steel_scaffolding_standard'}.png new file mode 100644 index 00000000..c2664101 Binary files /dev/null and b/public/textures/immersiveengineering/conveyor_basic__{'immersiveengineering__default_cover'__'immersiveengineering__steel_scaffolding_standard'}.png differ diff --git a/public/textures/immersiveengineering/conveyor_dropper.png b/public/textures/immersiveengineering/conveyor_dropper.png new file mode 100644 index 00000000..b3df0389 Binary files /dev/null and b/public/textures/immersiveengineering/conveyor_dropper.png differ diff --git a/public/textures/immersiveengineering/conveyor_dropper__{'immersiveengineering__default_cover'__'immersiveengineering__steel_scaffolding_standard'}.png b/public/textures/immersiveengineering/conveyor_dropper__{'immersiveengineering__default_cover'__'immersiveengineering__steel_scaffolding_standard'}.png new file mode 100644 index 00000000..d896374d Binary files /dev/null and b/public/textures/immersiveengineering/conveyor_dropper__{'immersiveengineering__default_cover'__'immersiveengineering__steel_scaffolding_standard'}.png differ diff --git a/public/textures/immersiveengineering/conveyor_extract.png b/public/textures/immersiveengineering/conveyor_extract.png new file mode 100644 index 00000000..87340e92 Binary files /dev/null and b/public/textures/immersiveengineering/conveyor_extract.png differ diff --git a/public/textures/immersiveengineering/conveyor_extract__{'immersiveengineering__default_cover'__'immersiveengineering__steel_scaffolding_standard'}.png b/public/textures/immersiveengineering/conveyor_extract__{'immersiveengineering__default_cover'__'immersiveengineering__steel_scaffolding_standard'}.png new file mode 100644 index 00000000..f64df0d2 Binary files /dev/null and b/public/textures/immersiveengineering/conveyor_extract__{'immersiveengineering__default_cover'__'immersiveengineering__steel_scaffolding_standard'}.png differ diff --git a/public/textures/immersiveengineering/conveyor_redstone.png b/public/textures/immersiveengineering/conveyor_redstone.png new file mode 100644 index 00000000..b76039dd Binary files /dev/null and b/public/textures/immersiveengineering/conveyor_redstone.png differ diff --git a/public/textures/immersiveengineering/conveyor_splitter.png b/public/textures/immersiveengineering/conveyor_splitter.png new file mode 100644 index 00000000..0ca1b966 Binary files /dev/null and b/public/textures/immersiveengineering/conveyor_splitter.png differ diff --git a/public/textures/immersiveengineering/conveyor_splitter__{'immersiveengineering__default_cover'__'immersiveengineering__steel_scaffolding_standard'}.png b/public/textures/immersiveengineering/conveyor_splitter__{'immersiveengineering__default_cover'__'immersiveengineering__steel_scaffolding_standard'}.png new file mode 100644 index 00000000..b2eae6ba Binary files /dev/null and b/public/textures/immersiveengineering/conveyor_splitter__{'immersiveengineering__default_cover'__'immersiveengineering__steel_scaffolding_standard'}.png differ diff --git a/public/textures/immersiveengineering/conveyor_vertical.png b/public/textures/immersiveengineering/conveyor_vertical.png new file mode 100644 index 00000000..e1a1ce79 Binary files /dev/null and b/public/textures/immersiveengineering/conveyor_vertical.png differ diff --git a/public/textures/immersiveengineering/conveyor_vertical__{'immersiveengineering__default_cover'__'immersiveengineering__steel_scaffolding_standard'}.png b/public/textures/immersiveengineering/conveyor_vertical__{'immersiveengineering__default_cover'__'immersiveengineering__steel_scaffolding_standard'}.png new file mode 100644 index 00000000..44e163bc Binary files /dev/null and b/public/textures/immersiveengineering/conveyor_vertical__{'immersiveengineering__default_cover'__'immersiveengineering__steel_scaffolding_standard'}.png differ diff --git a/public/textures/immersiveengineering/coresample.png b/public/textures/immersiveengineering/coresample.png new file mode 100644 index 00000000..1d80f463 Binary files /dev/null and b/public/textures/immersiveengineering/coresample.png differ diff --git a/public/textures/immersiveengineering/craftingtable.png b/public/textures/immersiveengineering/craftingtable.png new file mode 100644 index 00000000..ebf94f1d Binary files /dev/null and b/public/textures/immersiveengineering/craftingtable.png differ diff --git a/public/textures/immersiveengineering/crate.png b/public/textures/immersiveengineering/crate.png new file mode 100644 index 00000000..80b8528b Binary files /dev/null and b/public/textures/immersiveengineering/crate.png differ diff --git a/public/textures/immersiveengineering/creosote_bucket.png b/public/textures/immersiveengineering/creosote_bucket.png new file mode 100644 index 00000000..7beb386f Binary files /dev/null and b/public/textures/immersiveengineering/creosote_bucket.png differ diff --git a/public/textures/immersiveengineering/current_transformer.png b/public/textures/immersiveengineering/current_transformer.png new file mode 100644 index 00000000..30d6f5f4 Binary files /dev/null and b/public/textures/immersiveengineering/current_transformer.png differ diff --git a/public/textures/immersiveengineering/cushion.png b/public/textures/immersiveengineering/cushion.png new file mode 100644 index 00000000..f9b19bc9 Binary files /dev/null and b/public/textures/immersiveengineering/cushion.png differ diff --git a/public/textures/immersiveengineering/deepslate_ore_aluminum.png b/public/textures/immersiveengineering/deepslate_ore_aluminum.png new file mode 100644 index 00000000..8bb7961f Binary files /dev/null and b/public/textures/immersiveengineering/deepslate_ore_aluminum.png differ diff --git a/public/textures/immersiveengineering/deepslate_ore_lead.png b/public/textures/immersiveengineering/deepslate_ore_lead.png new file mode 100644 index 00000000..b7c6975b Binary files /dev/null and b/public/textures/immersiveengineering/deepslate_ore_lead.png differ diff --git a/public/textures/immersiveengineering/deepslate_ore_nickel.png b/public/textures/immersiveengineering/deepslate_ore_nickel.png new file mode 100644 index 00000000..58974060 Binary files /dev/null and b/public/textures/immersiveengineering/deepslate_ore_nickel.png differ diff --git a/public/textures/immersiveengineering/deepslate_ore_silver.png b/public/textures/immersiveengineering/deepslate_ore_silver.png new file mode 100644 index 00000000..01e2f0a4 Binary files /dev/null and b/public/textures/immersiveengineering/deepslate_ore_silver.png differ diff --git a/public/textures/immersiveengineering/deepslate_ore_uranium.png b/public/textures/immersiveengineering/deepslate_ore_uranium.png new file mode 100644 index 00000000..a8c327fa Binary files /dev/null and b/public/textures/immersiveengineering/deepslate_ore_uranium.png differ diff --git a/public/textures/immersiveengineering/drill.png b/public/textures/immersiveengineering/drill.png new file mode 100644 index 00000000..14cd79c2 Binary files /dev/null and b/public/textures/immersiveengineering/drill.png differ diff --git a/public/textures/immersiveengineering/drillhead_iron.png b/public/textures/immersiveengineering/drillhead_iron.png new file mode 100644 index 00000000..8d478102 Binary files /dev/null and b/public/textures/immersiveengineering/drillhead_iron.png differ diff --git a/public/textures/immersiveengineering/drillhead_steel.png b/public/textures/immersiveengineering/drillhead_steel.png new file mode 100644 index 00000000..2013a8ff Binary files /dev/null and b/public/textures/immersiveengineering/drillhead_steel.png differ diff --git a/public/textures/immersiveengineering/duroplast.png b/public/textures/immersiveengineering/duroplast.png new file mode 100644 index 00000000..74761e87 Binary files /dev/null and b/public/textures/immersiveengineering/duroplast.png differ diff --git a/public/textures/immersiveengineering/dust_aluminum.png b/public/textures/immersiveengineering/dust_aluminum.png new file mode 100644 index 00000000..2c46aa2e Binary files /dev/null and b/public/textures/immersiveengineering/dust_aluminum.png differ diff --git a/public/textures/immersiveengineering/dust_coke.png b/public/textures/immersiveengineering/dust_coke.png new file mode 100644 index 00000000..4d6ac59d Binary files /dev/null and b/public/textures/immersiveengineering/dust_coke.png differ diff --git a/public/textures/immersiveengineering/dust_constantan.png b/public/textures/immersiveengineering/dust_constantan.png new file mode 100644 index 00000000..61deef63 Binary files /dev/null and b/public/textures/immersiveengineering/dust_constantan.png differ diff --git a/public/textures/immersiveengineering/dust_copper.png b/public/textures/immersiveengineering/dust_copper.png new file mode 100644 index 00000000..632276aa Binary files /dev/null and b/public/textures/immersiveengineering/dust_copper.png differ diff --git a/public/textures/immersiveengineering/dust_electrum.png b/public/textures/immersiveengineering/dust_electrum.png new file mode 100644 index 00000000..54153f3e Binary files /dev/null and b/public/textures/immersiveengineering/dust_electrum.png differ diff --git a/public/textures/immersiveengineering/dust_gold.png b/public/textures/immersiveengineering/dust_gold.png new file mode 100644 index 00000000..ed442cf0 Binary files /dev/null and b/public/textures/immersiveengineering/dust_gold.png differ diff --git a/public/textures/immersiveengineering/dust_hop_graphite.png b/public/textures/immersiveengineering/dust_hop_graphite.png new file mode 100644 index 00000000..d2650843 Binary files /dev/null and b/public/textures/immersiveengineering/dust_hop_graphite.png differ diff --git a/public/textures/immersiveengineering/dust_iron.png b/public/textures/immersiveengineering/dust_iron.png new file mode 100644 index 00000000..99e70816 Binary files /dev/null and b/public/textures/immersiveengineering/dust_iron.png differ diff --git a/public/textures/immersiveengineering/dust_lead.png b/public/textures/immersiveengineering/dust_lead.png new file mode 100644 index 00000000..67ca58ad Binary files /dev/null and b/public/textures/immersiveengineering/dust_lead.png differ diff --git a/public/textures/immersiveengineering/dust_nickel.png b/public/textures/immersiveengineering/dust_nickel.png new file mode 100644 index 00000000..8983d14a Binary files /dev/null and b/public/textures/immersiveengineering/dust_nickel.png differ diff --git a/public/textures/immersiveengineering/dust_saltpeter.png b/public/textures/immersiveengineering/dust_saltpeter.png new file mode 100644 index 00000000..d5b268ea Binary files /dev/null and b/public/textures/immersiveengineering/dust_saltpeter.png differ diff --git a/public/textures/immersiveengineering/dust_silver.png b/public/textures/immersiveengineering/dust_silver.png new file mode 100644 index 00000000..cebddaba Binary files /dev/null and b/public/textures/immersiveengineering/dust_silver.png differ diff --git a/public/textures/immersiveengineering/dust_steel.png b/public/textures/immersiveengineering/dust_steel.png new file mode 100644 index 00000000..3c1cb835 Binary files /dev/null and b/public/textures/immersiveengineering/dust_steel.png differ diff --git a/public/textures/immersiveengineering/dust_sulfur.png b/public/textures/immersiveengineering/dust_sulfur.png new file mode 100644 index 00000000..c83b07f5 Binary files /dev/null and b/public/textures/immersiveengineering/dust_sulfur.png differ diff --git a/public/textures/immersiveengineering/dust_uranium.png b/public/textures/immersiveengineering/dust_uranium.png new file mode 100644 index 00000000..1ab44824 Binary files /dev/null and b/public/textures/immersiveengineering/dust_uranium.png differ diff --git a/public/textures/immersiveengineering/dust_wood.png b/public/textures/immersiveengineering/dust_wood.png new file mode 100644 index 00000000..68d00ea4 Binary files /dev/null and b/public/textures/immersiveengineering/dust_wood.png differ diff --git a/public/textures/immersiveengineering/dynamo.png b/public/textures/immersiveengineering/dynamo.png new file mode 100644 index 00000000..a9e59d8e Binary files /dev/null and b/public/textures/immersiveengineering/dynamo.png differ diff --git a/public/textures/immersiveengineering/earmuffs.png b/public/textures/immersiveengineering/earmuffs.png new file mode 100644 index 00000000..26333f3b Binary files /dev/null and b/public/textures/immersiveengineering/earmuffs.png differ diff --git a/public/textures/immersiveengineering/electric_lantern.png b/public/textures/immersiveengineering/electric_lantern.png new file mode 100644 index 00000000..91670967 Binary files /dev/null and b/public/textures/immersiveengineering/electric_lantern.png differ diff --git a/public/textures/immersiveengineering/electromagnet.png b/public/textures/immersiveengineering/electromagnet.png new file mode 100644 index 00000000..5fd4c364 Binary files /dev/null and b/public/textures/immersiveengineering/electromagnet.png differ diff --git a/public/textures/immersiveengineering/electron_tube.png b/public/textures/immersiveengineering/electron_tube.png new file mode 100644 index 00000000..36fdf0a5 Binary files /dev/null and b/public/textures/immersiveengineering/electron_tube.png differ diff --git a/public/textures/immersiveengineering/empty_casing.png b/public/textures/immersiveengineering/empty_casing.png new file mode 100644 index 00000000..41d5f890 Binary files /dev/null and b/public/textures/immersiveengineering/empty_casing.png differ diff --git a/public/textures/immersiveengineering/empty_shell.png b/public/textures/immersiveengineering/empty_shell.png new file mode 100644 index 00000000..3d65bfb8 Binary files /dev/null and b/public/textures/immersiveengineering/empty_shell.png differ diff --git a/public/textures/immersiveengineering/ersatz_leather.png b/public/textures/immersiveengineering/ersatz_leather.png new file mode 100644 index 00000000..fd7e4c32 Binary files /dev/null and b/public/textures/immersiveengineering/ersatz_leather.png differ diff --git a/public/textures/immersiveengineering/ethanol_bucket.png b/public/textures/immersiveengineering/ethanol_bucket.png new file mode 100644 index 00000000..464e8640 Binary files /dev/null and b/public/textures/immersiveengineering/ethanol_bucket.png differ diff --git a/public/textures/immersiveengineering/fertilizer.png b/public/textures/immersiveengineering/fertilizer.png new file mode 100644 index 00000000..900c5ca2 Binary files /dev/null and b/public/textures/immersiveengineering/fertilizer.png differ diff --git a/public/textures/immersiveengineering/fiberboard.png b/public/textures/immersiveengineering/fiberboard.png new file mode 100644 index 00000000..efa4d4a0 Binary files /dev/null and b/public/textures/immersiveengineering/fiberboard.png differ diff --git a/public/textures/immersiveengineering/floodlight.png b/public/textures/immersiveengineering/floodlight.png new file mode 100644 index 00000000..d1d60ed6 Binary files /dev/null and b/public/textures/immersiveengineering/floodlight.png differ diff --git a/public/textures/immersiveengineering/fluid_pipe.png b/public/textures/immersiveengineering/fluid_pipe.png new file mode 100644 index 00000000..8b7ed0da Binary files /dev/null and b/public/textures/immersiveengineering/fluid_pipe.png differ diff --git a/public/textures/immersiveengineering/fluid_placer.png b/public/textures/immersiveengineering/fluid_placer.png new file mode 100644 index 00000000..a2f1fe16 Binary files /dev/null and b/public/textures/immersiveengineering/fluid_placer.png differ diff --git a/public/textures/immersiveengineering/fluid_pump.png b/public/textures/immersiveengineering/fluid_pump.png new file mode 100644 index 00000000..301a9977 Binary files /dev/null and b/public/textures/immersiveengineering/fluid_pump.png differ diff --git a/public/textures/immersiveengineering/fluid_sorter.png b/public/textures/immersiveengineering/fluid_sorter.png new file mode 100644 index 00000000..8770a241 Binary files /dev/null and b/public/textures/immersiveengineering/fluid_sorter.png differ diff --git a/public/textures/immersiveengineering/fluorescent_tube.png b/public/textures/immersiveengineering/fluorescent_tube.png new file mode 100644 index 00000000..e5e3f5da Binary files /dev/null and b/public/textures/immersiveengineering/fluorescent_tube.png differ diff --git a/public/textures/immersiveengineering/furnace_heater.png b/public/textures/immersiveengineering/furnace_heater.png new file mode 100644 index 00000000..ccb6618c Binary files /dev/null and b/public/textures/immersiveengineering/furnace_heater.png differ diff --git a/public/textures/immersiveengineering/fusilier_spawn_egg.png b/public/textures/immersiveengineering/fusilier_spawn_egg.png new file mode 100644 index 00000000..dcfbe86d Binary files /dev/null and b/public/textures/immersiveengineering/fusilier_spawn_egg.png differ diff --git a/public/textures/immersiveengineering/generator.png b/public/textures/immersiveengineering/generator.png new file mode 100644 index 00000000..7a4fe1ca Binary files /dev/null and b/public/textures/immersiveengineering/generator.png differ diff --git a/public/textures/immersiveengineering/glider.png b/public/textures/immersiveengineering/glider.png new file mode 100644 index 00000000..74f4bd8f Binary files /dev/null and b/public/textures/immersiveengineering/glider.png differ diff --git a/public/textures/immersiveengineering/graphite_electrode.png b/public/textures/immersiveengineering/graphite_electrode.png new file mode 100644 index 00000000..0e363d06 Binary files /dev/null and b/public/textures/immersiveengineering/graphite_electrode.png differ diff --git a/public/textures/immersiveengineering/grindingdisk.png b/public/textures/immersiveengineering/grindingdisk.png new file mode 100644 index 00000000..cf42157a Binary files /dev/null and b/public/textures/immersiveengineering/grindingdisk.png differ diff --git a/public/textures/immersiveengineering/grit_sand.png b/public/textures/immersiveengineering/grit_sand.png new file mode 100644 index 00000000..1b7e7465 Binary files /dev/null and b/public/textures/immersiveengineering/grit_sand.png differ diff --git a/public/textures/immersiveengineering/gunpart_barrel.png b/public/textures/immersiveengineering/gunpart_barrel.png new file mode 100644 index 00000000..f0df5b1d Binary files /dev/null and b/public/textures/immersiveengineering/gunpart_barrel.png differ diff --git a/public/textures/immersiveengineering/gunpart_drum.png b/public/textures/immersiveengineering/gunpart_drum.png new file mode 100644 index 00000000..5fa7c71d Binary files /dev/null and b/public/textures/immersiveengineering/gunpart_drum.png differ diff --git a/public/textures/immersiveengineering/gunpart_hammer.png b/public/textures/immersiveengineering/gunpart_hammer.png new file mode 100644 index 00000000..b0488e32 Binary files /dev/null and b/public/textures/immersiveengineering/gunpart_hammer.png differ diff --git a/public/textures/immersiveengineering/gunpowder_barrel.png b/public/textures/immersiveengineering/gunpowder_barrel.png new file mode 100644 index 00000000..980be971 Binary files /dev/null and b/public/textures/immersiveengineering/gunpowder_barrel.png differ diff --git a/public/textures/immersiveengineering/hammer.png b/public/textures/immersiveengineering/hammer.png new file mode 100644 index 00000000..5e19b05e Binary files /dev/null and b/public/textures/immersiveengineering/hammer.png differ diff --git a/public/textures/immersiveengineering/heavy_engineering.png b/public/textures/immersiveengineering/heavy_engineering.png new file mode 100644 index 00000000..66e6ba6b Binary files /dev/null and b/public/textures/immersiveengineering/heavy_engineering.png differ diff --git a/public/textures/immersiveengineering/hemp_fabric.png b/public/textures/immersiveengineering/hemp_fabric.png new file mode 100644 index 00000000..7179bdae Binary files /dev/null and b/public/textures/immersiveengineering/hemp_fabric.png differ diff --git a/public/textures/immersiveengineering/hemp_fiber.png b/public/textures/immersiveengineering/hemp_fiber.png new file mode 100644 index 00000000..68daa1b8 Binary files /dev/null and b/public/textures/immersiveengineering/hemp_fiber.png differ diff --git a/public/textures/immersiveengineering/hempcrete.png b/public/textures/immersiveengineering/hempcrete.png new file mode 100644 index 00000000..b88fb0c0 Binary files /dev/null and b/public/textures/immersiveengineering/hempcrete.png differ diff --git a/public/textures/immersiveengineering/hempcrete_brick.png b/public/textures/immersiveengineering/hempcrete_brick.png new file mode 100644 index 00000000..44b8333b Binary files /dev/null and b/public/textures/immersiveengineering/hempcrete_brick.png differ diff --git a/public/textures/immersiveengineering/hempcrete_brick_cracked.png b/public/textures/immersiveengineering/hempcrete_brick_cracked.png new file mode 100644 index 00000000..fa2c019c Binary files /dev/null and b/public/textures/immersiveengineering/hempcrete_brick_cracked.png differ diff --git a/public/textures/immersiveengineering/hempcrete_chiseled.png b/public/textures/immersiveengineering/hempcrete_chiseled.png new file mode 100644 index 00000000..2a50624a Binary files /dev/null and b/public/textures/immersiveengineering/hempcrete_chiseled.png differ diff --git a/public/textures/immersiveengineering/hempcrete_pillar.png b/public/textures/immersiveengineering/hempcrete_pillar.png new file mode 100644 index 00000000..ad2698b2 Binary files /dev/null and b/public/textures/immersiveengineering/hempcrete_pillar.png differ diff --git a/public/textures/immersiveengineering/herbicide_bucket.png b/public/textures/immersiveengineering/herbicide_bucket.png new file mode 100644 index 00000000..461961aa Binary files /dev/null and b/public/textures/immersiveengineering/herbicide_bucket.png differ diff --git a/public/textures/immersiveengineering/high_power_biodiesel_bucket.png b/public/textures/immersiveengineering/high_power_biodiesel_bucket.png new file mode 100644 index 00000000..94fde593 Binary files /dev/null and b/public/textures/immersiveengineering/high_power_biodiesel_bucket.png differ diff --git a/public/textures/immersiveengineering/hoe_steel.png b/public/textures/immersiveengineering/hoe_steel.png new file mode 100644 index 00000000..d43b0100 Binary files /dev/null and b/public/textures/immersiveengineering/hoe_steel.png differ diff --git a/public/textures/immersiveengineering/ingot_aluminum.png b/public/textures/immersiveengineering/ingot_aluminum.png new file mode 100644 index 00000000..866dab50 Binary files /dev/null and b/public/textures/immersiveengineering/ingot_aluminum.png differ diff --git a/public/textures/immersiveengineering/ingot_constantan.png b/public/textures/immersiveengineering/ingot_constantan.png new file mode 100644 index 00000000..2e13c20d Binary files /dev/null and b/public/textures/immersiveengineering/ingot_constantan.png differ diff --git a/public/textures/immersiveengineering/ingot_electrum.png b/public/textures/immersiveengineering/ingot_electrum.png new file mode 100644 index 00000000..b793436c Binary files /dev/null and b/public/textures/immersiveengineering/ingot_electrum.png differ diff --git a/public/textures/immersiveengineering/ingot_hop_graphite.png b/public/textures/immersiveengineering/ingot_hop_graphite.png new file mode 100644 index 00000000..efa6ad02 Binary files /dev/null and b/public/textures/immersiveengineering/ingot_hop_graphite.png differ diff --git a/public/textures/immersiveengineering/ingot_lead.png b/public/textures/immersiveengineering/ingot_lead.png new file mode 100644 index 00000000..53867ad8 Binary files /dev/null and b/public/textures/immersiveengineering/ingot_lead.png differ diff --git a/public/textures/immersiveengineering/ingot_nickel.png b/public/textures/immersiveengineering/ingot_nickel.png new file mode 100644 index 00000000..a62bb7aa Binary files /dev/null and b/public/textures/immersiveengineering/ingot_nickel.png differ diff --git a/public/textures/immersiveengineering/ingot_silver.png b/public/textures/immersiveengineering/ingot_silver.png new file mode 100644 index 00000000..67c23af2 Binary files /dev/null and b/public/textures/immersiveengineering/ingot_silver.png differ diff --git a/public/textures/immersiveengineering/ingot_steel.png b/public/textures/immersiveengineering/ingot_steel.png new file mode 100644 index 00000000..5366a8ac Binary files /dev/null and b/public/textures/immersiveengineering/ingot_steel.png differ diff --git a/public/textures/immersiveengineering/ingot_uranium.png b/public/textures/immersiveengineering/ingot_uranium.png new file mode 100644 index 00000000..722a0a1e Binary files /dev/null and b/public/textures/immersiveengineering/ingot_uranium.png differ diff --git a/public/textures/immersiveengineering/insulating_glass.png b/public/textures/immersiveengineering/insulating_glass.png new file mode 100644 index 00000000..3bedf4da Binary files /dev/null and b/public/textures/immersiveengineering/insulating_glass.png differ diff --git a/public/textures/immersiveengineering/item_batcher.png b/public/textures/immersiveengineering/item_batcher.png new file mode 100644 index 00000000..517951d2 Binary files /dev/null and b/public/textures/immersiveengineering/item_batcher.png differ diff --git a/public/textures/immersiveengineering/jerrycan.png b/public/textures/immersiveengineering/jerrycan.png new file mode 100644 index 00000000..4ae7f562 Binary files /dev/null and b/public/textures/immersiveengineering/jerrycan.png differ diff --git a/public/textures/immersiveengineering/lantern.png b/public/textures/immersiveengineering/lantern.png new file mode 100644 index 00000000..8d3aa1d3 Binary files /dev/null and b/public/textures/immersiveengineering/lantern.png differ diff --git a/public/textures/immersiveengineering/light_bulb.png b/public/textures/immersiveengineering/light_bulb.png new file mode 100644 index 00000000..439e1241 Binary files /dev/null and b/public/textures/immersiveengineering/light_bulb.png differ diff --git a/public/textures/immersiveengineering/light_engineering.png b/public/textures/immersiveengineering/light_engineering.png new file mode 100644 index 00000000..444f3128 Binary files /dev/null and b/public/textures/immersiveengineering/light_engineering.png differ diff --git a/public/textures/immersiveengineering/logic_circuit.png b/public/textures/immersiveengineering/logic_circuit.png new file mode 100644 index 00000000..92bf7f4e Binary files /dev/null and b/public/textures/immersiveengineering/logic_circuit.png differ diff --git a/public/textures/immersiveengineering/logic_unit.png b/public/textures/immersiveengineering/logic_unit.png new file mode 100644 index 00000000..179ecbc5 Binary files /dev/null and b/public/textures/immersiveengineering/logic_unit.png differ diff --git a/public/textures/immersiveengineering/machine_interface.png b/public/textures/immersiveengineering/machine_interface.png new file mode 100644 index 00000000..7f1277a2 Binary files /dev/null and b/public/textures/immersiveengineering/machine_interface.png differ diff --git a/public/textures/immersiveengineering/maintenance_kit.png b/public/textures/immersiveengineering/maintenance_kit.png new file mode 100644 index 00000000..591fd733 Binary files /dev/null and b/public/textures/immersiveengineering/maintenance_kit.png differ diff --git a/public/textures/immersiveengineering/manual.png b/public/textures/immersiveengineering/manual.png new file mode 100644 index 00000000..a87f1034 Binary files /dev/null and b/public/textures/immersiveengineering/manual.png differ diff --git a/public/textures/immersiveengineering/metal_barrel.png b/public/textures/immersiveengineering/metal_barrel.png new file mode 100644 index 00000000..bf748c68 Binary files /dev/null and b/public/textures/immersiveengineering/metal_barrel.png differ diff --git a/public/textures/immersiveengineering/metal_ladder_alu.png b/public/textures/immersiveengineering/metal_ladder_alu.png new file mode 100644 index 00000000..029c8f7b Binary files /dev/null and b/public/textures/immersiveengineering/metal_ladder_alu.png differ diff --git a/public/textures/immersiveengineering/metal_ladder_none.png b/public/textures/immersiveengineering/metal_ladder_none.png new file mode 100644 index 00000000..4694320b Binary files /dev/null and b/public/textures/immersiveengineering/metal_ladder_none.png differ diff --git a/public/textures/immersiveengineering/metal_ladder_steel.png b/public/textures/immersiveengineering/metal_ladder_steel.png new file mode 100644 index 00000000..40949088 Binary files /dev/null and b/public/textures/immersiveengineering/metal_ladder_steel.png differ diff --git a/public/textures/immersiveengineering/minecart_metalbarrel.png b/public/textures/immersiveengineering/minecart_metalbarrel.png new file mode 100644 index 00000000..20263503 Binary files /dev/null and b/public/textures/immersiveengineering/minecart_metalbarrel.png differ diff --git a/public/textures/immersiveengineering/minecart_reinforcedcrate.png b/public/textures/immersiveengineering/minecart_reinforcedcrate.png new file mode 100644 index 00000000..3a743b49 Binary files /dev/null and b/public/textures/immersiveengineering/minecart_reinforcedcrate.png differ diff --git a/public/textures/immersiveengineering/minecart_woodenbarrel.png b/public/textures/immersiveengineering/minecart_woodenbarrel.png new file mode 100644 index 00000000..b08a9825 Binary files /dev/null and b/public/textures/immersiveengineering/minecart_woodenbarrel.png differ diff --git a/public/textures/immersiveengineering/minecart_woodencrate.png b/public/textures/immersiveengineering/minecart_woodencrate.png new file mode 100644 index 00000000..c4dabde0 Binary files /dev/null and b/public/textures/immersiveengineering/minecart_woodencrate.png differ diff --git a/public/textures/immersiveengineering/mold_bullet_casing.png b/public/textures/immersiveengineering/mold_bullet_casing.png new file mode 100644 index 00000000..8f607460 Binary files /dev/null and b/public/textures/immersiveengineering/mold_bullet_casing.png differ diff --git a/public/textures/immersiveengineering/mold_gear.png b/public/textures/immersiveengineering/mold_gear.png new file mode 100644 index 00000000..3be0e0e1 Binary files /dev/null and b/public/textures/immersiveengineering/mold_gear.png differ diff --git a/public/textures/immersiveengineering/mold_packing_4.png b/public/textures/immersiveengineering/mold_packing_4.png new file mode 100644 index 00000000..2882969d Binary files /dev/null and b/public/textures/immersiveengineering/mold_packing_4.png differ diff --git a/public/textures/immersiveengineering/mold_packing_9.png b/public/textures/immersiveengineering/mold_packing_9.png new file mode 100644 index 00000000..cb7f13c6 Binary files /dev/null and b/public/textures/immersiveengineering/mold_packing_9.png differ diff --git a/public/textures/immersiveengineering/mold_plate.png b/public/textures/immersiveengineering/mold_plate.png new file mode 100644 index 00000000..890eb9a6 Binary files /dev/null and b/public/textures/immersiveengineering/mold_plate.png differ diff --git a/public/textures/immersiveengineering/mold_rod.png b/public/textures/immersiveengineering/mold_rod.png new file mode 100644 index 00000000..bd2ca440 Binary files /dev/null and b/public/textures/immersiveengineering/mold_rod.png differ diff --git a/public/textures/immersiveengineering/mold_unpacking.png b/public/textures/immersiveengineering/mold_unpacking.png new file mode 100644 index 00000000..5ce2ba2c Binary files /dev/null and b/public/textures/immersiveengineering/mold_unpacking.png differ diff --git a/public/textures/immersiveengineering/mold_wire.png b/public/textures/immersiveengineering/mold_wire.png new file mode 100644 index 00000000..7fd46fe2 Binary files /dev/null and b/public/textures/immersiveengineering/mold_wire.png differ diff --git a/public/textures/immersiveengineering/nugget_aluminum.png b/public/textures/immersiveengineering/nugget_aluminum.png new file mode 100644 index 00000000..4d2789da Binary files /dev/null and b/public/textures/immersiveengineering/nugget_aluminum.png differ diff --git a/public/textures/immersiveengineering/nugget_constantan.png b/public/textures/immersiveengineering/nugget_constantan.png new file mode 100644 index 00000000..4fb19cae Binary files /dev/null and b/public/textures/immersiveengineering/nugget_constantan.png differ diff --git a/public/textures/immersiveengineering/nugget_copper.png b/public/textures/immersiveengineering/nugget_copper.png new file mode 100644 index 00000000..66ebce86 Binary files /dev/null and b/public/textures/immersiveengineering/nugget_copper.png differ diff --git a/public/textures/immersiveengineering/nugget_electrum.png b/public/textures/immersiveengineering/nugget_electrum.png new file mode 100644 index 00000000..8c0b1bd4 Binary files /dev/null and b/public/textures/immersiveengineering/nugget_electrum.png differ diff --git a/public/textures/immersiveengineering/nugget_lead.png b/public/textures/immersiveengineering/nugget_lead.png new file mode 100644 index 00000000..00adaaf0 Binary files /dev/null and b/public/textures/immersiveengineering/nugget_lead.png differ diff --git a/public/textures/immersiveengineering/nugget_netherite.png b/public/textures/immersiveengineering/nugget_netherite.png new file mode 100644 index 00000000..32223354 Binary files /dev/null and b/public/textures/immersiveengineering/nugget_netherite.png differ diff --git a/public/textures/immersiveengineering/nugget_nickel.png b/public/textures/immersiveengineering/nugget_nickel.png new file mode 100644 index 00000000..d3aa9f5b Binary files /dev/null and b/public/textures/immersiveengineering/nugget_nickel.png differ diff --git a/public/textures/immersiveengineering/nugget_silver.png b/public/textures/immersiveengineering/nugget_silver.png new file mode 100644 index 00000000..bee7a4e1 Binary files /dev/null and b/public/textures/immersiveengineering/nugget_silver.png differ diff --git a/public/textures/immersiveengineering/nugget_steel.png b/public/textures/immersiveengineering/nugget_steel.png new file mode 100644 index 00000000..7d94e42c Binary files /dev/null and b/public/textures/immersiveengineering/nugget_steel.png differ diff --git a/public/textures/immersiveengineering/nugget_uranium.png b/public/textures/immersiveengineering/nugget_uranium.png new file mode 100644 index 00000000..b3d8ae8f Binary files /dev/null and b/public/textures/immersiveengineering/nugget_uranium.png differ diff --git a/public/textures/immersiveengineering/ore_aluminum.png b/public/textures/immersiveengineering/ore_aluminum.png new file mode 100644 index 00000000..f0f10567 Binary files /dev/null and b/public/textures/immersiveengineering/ore_aluminum.png differ diff --git a/public/textures/immersiveengineering/ore_lead.png b/public/textures/immersiveengineering/ore_lead.png new file mode 100644 index 00000000..5c67cc61 Binary files /dev/null and b/public/textures/immersiveengineering/ore_lead.png differ diff --git a/public/textures/immersiveengineering/ore_nickel.png b/public/textures/immersiveengineering/ore_nickel.png new file mode 100644 index 00000000..372c5dfe Binary files /dev/null and b/public/textures/immersiveengineering/ore_nickel.png differ diff --git a/public/textures/immersiveengineering/ore_silver.png b/public/textures/immersiveengineering/ore_silver.png new file mode 100644 index 00000000..8dbe6b85 Binary files /dev/null and b/public/textures/immersiveengineering/ore_silver.png differ diff --git a/public/textures/immersiveengineering/ore_uranium.png b/public/textures/immersiveengineering/ore_uranium.png new file mode 100644 index 00000000..0a3fe134 Binary files /dev/null and b/public/textures/immersiveengineering/ore_uranium.png differ diff --git a/public/textures/immersiveengineering/phenolic_resin_bucket.png b/public/textures/immersiveengineering/phenolic_resin_bucket.png new file mode 100644 index 00000000..51e95ed2 Binary files /dev/null and b/public/textures/immersiveengineering/phenolic_resin_bucket.png differ diff --git a/public/textures/immersiveengineering/pickaxe_steel.png b/public/textures/immersiveengineering/pickaxe_steel.png new file mode 100644 index 00000000..6bff9b0b Binary files /dev/null and b/public/textures/immersiveengineering/pickaxe_steel.png differ diff --git a/public/textures/immersiveengineering/pipe_valve.png b/public/textures/immersiveengineering/pipe_valve.png new file mode 100644 index 00000000..75fa9cb2 Binary files /dev/null and b/public/textures/immersiveengineering/pipe_valve.png differ diff --git a/public/textures/immersiveengineering/plantoil_bucket.png b/public/textures/immersiveengineering/plantoil_bucket.png new file mode 100644 index 00000000..0513ee5b Binary files /dev/null and b/public/textures/immersiveengineering/plantoil_bucket.png differ diff --git a/public/textures/immersiveengineering/plate_aluminum.png b/public/textures/immersiveengineering/plate_aluminum.png new file mode 100644 index 00000000..7b7ec7ea Binary files /dev/null and b/public/textures/immersiveengineering/plate_aluminum.png differ diff --git a/public/textures/immersiveengineering/plate_constantan.png b/public/textures/immersiveengineering/plate_constantan.png new file mode 100644 index 00000000..35afc6d2 Binary files /dev/null and b/public/textures/immersiveengineering/plate_constantan.png differ diff --git a/public/textures/immersiveengineering/plate_copper.png b/public/textures/immersiveengineering/plate_copper.png new file mode 100644 index 00000000..5f5ff733 Binary files /dev/null and b/public/textures/immersiveengineering/plate_copper.png differ diff --git a/public/textures/immersiveengineering/plate_duroplast.png b/public/textures/immersiveengineering/plate_duroplast.png new file mode 100644 index 00000000..f03404e8 Binary files /dev/null and b/public/textures/immersiveengineering/plate_duroplast.png differ diff --git a/public/textures/immersiveengineering/plate_electrum.png b/public/textures/immersiveengineering/plate_electrum.png new file mode 100644 index 00000000..309a7908 Binary files /dev/null and b/public/textures/immersiveengineering/plate_electrum.png differ diff --git a/public/textures/immersiveengineering/plate_gold.png b/public/textures/immersiveengineering/plate_gold.png new file mode 100644 index 00000000..a8277384 Binary files /dev/null and b/public/textures/immersiveengineering/plate_gold.png differ diff --git a/public/textures/immersiveengineering/plate_hop_graphite.png b/public/textures/immersiveengineering/plate_hop_graphite.png new file mode 100644 index 00000000..67fbf04d Binary files /dev/null and b/public/textures/immersiveengineering/plate_hop_graphite.png differ diff --git a/public/textures/immersiveengineering/plate_iron.png b/public/textures/immersiveengineering/plate_iron.png new file mode 100644 index 00000000..0e8e8f92 Binary files /dev/null and b/public/textures/immersiveengineering/plate_iron.png differ diff --git a/public/textures/immersiveengineering/plate_lead.png b/public/textures/immersiveengineering/plate_lead.png new file mode 100644 index 00000000..7b34c784 Binary files /dev/null and b/public/textures/immersiveengineering/plate_lead.png differ diff --git a/public/textures/immersiveengineering/plate_nickel.png b/public/textures/immersiveengineering/plate_nickel.png new file mode 100644 index 00000000..a7947a05 Binary files /dev/null and b/public/textures/immersiveengineering/plate_nickel.png differ diff --git a/public/textures/immersiveengineering/plate_silver.png b/public/textures/immersiveengineering/plate_silver.png new file mode 100644 index 00000000..92b5e52c Binary files /dev/null and b/public/textures/immersiveengineering/plate_silver.png differ diff --git a/public/textures/immersiveengineering/plate_steel.png b/public/textures/immersiveengineering/plate_steel.png new file mode 100644 index 00000000..d76a7279 Binary files /dev/null and b/public/textures/immersiveengineering/plate_steel.png differ diff --git a/public/textures/immersiveengineering/plate_uranium.png b/public/textures/immersiveengineering/plate_uranium.png new file mode 100644 index 00000000..6b2f4a8e Binary files /dev/null and b/public/textures/immersiveengineering/plate_uranium.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'illagerinvasion__berserking'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'illagerinvasion__berserking'}}.png new file mode 100644 index 00000000..d58f8397 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'illagerinvasion__berserking'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'illagerinvasion__long_berserking'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'illagerinvasion__long_berserking'}}.png new file mode 100644 index 00000000..d58f8397 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'illagerinvasion__long_berserking'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'illagerinvasion__strong_berserking'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'illagerinvasion__strong_berserking'}}.png new file mode 100644 index 00000000..1c90639e Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'illagerinvasion__strong_berserking'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__awkward'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__awkward'}}.png new file mode 100644 index 00000000..461b8809 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__awkward'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__fire_resistance'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__fire_resistance'}}.png new file mode 100644 index 00000000..4420f626 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__fire_resistance'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__harming'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__harming'}}.png new file mode 100644 index 00000000..c6674fe2 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__harming'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__healing'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__healing'}}.png new file mode 100644 index 00000000..0d0bcfc6 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__healing'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__infested'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__infested'}}.png new file mode 100644 index 00000000..0985df4b Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__infested'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__invisibility'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__invisibility'}}.png new file mode 100644 index 00000000..2e3b40a6 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__invisibility'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__leaping'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__leaping'}}.png new file mode 100644 index 00000000..f171ebe4 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__leaping'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_fire_resistance'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_fire_resistance'}}.png new file mode 100644 index 00000000..4420f626 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_fire_resistance'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_invisibility'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_invisibility'}}.png new file mode 100644 index 00000000..2e3b40a6 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_invisibility'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_leaping'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_leaping'}}.png new file mode 100644 index 00000000..f171ebe4 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_leaping'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_night_vision'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_night_vision'}}.png new file mode 100644 index 00000000..3095b9d5 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_night_vision'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_poison'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_poison'}}.png new file mode 100644 index 00000000..e1327a9a Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_poison'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_regeneration'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_regeneration'}}.png new file mode 100644 index 00000000..4a00dd52 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_regeneration'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_slow_falling'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_slow_falling'}}.png new file mode 100644 index 00000000..ec1e361b Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_slow_falling'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_slowness'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_slowness'}}.png new file mode 100644 index 00000000..5fa13d40 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_slowness'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_strength'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_strength'}}.png new file mode 100644 index 00000000..bddc8f9a Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_strength'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_swiftness'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_swiftness'}}.png new file mode 100644 index 00000000..37ae1fec Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_swiftness'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_turtle_master'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_turtle_master'}}.png new file mode 100644 index 00000000..c6a79020 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_turtle_master'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_water_breathing'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_water_breathing'}}.png new file mode 100644 index 00000000..0d6bf077 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_water_breathing'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_weakness'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_weakness'}}.png new file mode 100644 index 00000000..0e59d2ab Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__long_weakness'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__luck'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__luck'}}.png new file mode 100644 index 00000000..d3ff6f55 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__luck'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__mundane'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__mundane'}}.png new file mode 100644 index 00000000..461b8809 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__mundane'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__night_vision'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__night_vision'}}.png new file mode 100644 index 00000000..3ed2f046 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__night_vision'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__oozing'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__oozing'}}.png new file mode 100644 index 00000000..09bdb655 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__oozing'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__poison'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__poison'}}.png new file mode 100644 index 00000000..e1327a9a Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__poison'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__regeneration'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__regeneration'}}.png new file mode 100644 index 00000000..4a00dd52 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__regeneration'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__slow_falling'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__slow_falling'}}.png new file mode 100644 index 00000000..ec1e361b Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__slow_falling'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__slowness'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__slowness'}}.png new file mode 100644 index 00000000..5fa13d40 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__slowness'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strength'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strength'}}.png new file mode 100644 index 00000000..bddc8f9a Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strength'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_harming'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_harming'}}.png new file mode 100644 index 00000000..c6674fe2 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_harming'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_healing'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_healing'}}.png new file mode 100644 index 00000000..0d0bcfc6 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_healing'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_leaping'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_leaping'}}.png new file mode 100644 index 00000000..f171ebe4 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_leaping'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_poison'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_poison'}}.png new file mode 100644 index 00000000..e1327a9a Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_poison'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_regeneration'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_regeneration'}}.png new file mode 100644 index 00000000..4a00dd52 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_regeneration'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_slowness'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_slowness'}}.png new file mode 100644 index 00000000..5fa13d40 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_slowness'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_strength'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_strength'}}.png new file mode 100644 index 00000000..0daba201 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_strength'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_swiftness'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_swiftness'}}.png new file mode 100644 index 00000000..37ae1fec Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_swiftness'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_turtle_master'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_turtle_master'}}.png new file mode 100644 index 00000000..9ddaa5aa Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__strong_turtle_master'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__swiftness'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__swiftness'}}.png new file mode 100644 index 00000000..37ae1fec Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__swiftness'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__thick'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__thick'}}.png new file mode 100644 index 00000000..49ff52a9 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__thick'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__turtle_master'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__turtle_master'}}.png new file mode 100644 index 00000000..c6a79020 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__turtle_master'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__water_breathing'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__water_breathing'}}.png new file mode 100644 index 00000000..0d6bf077 Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__water_breathing'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__weakness'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__weakness'}}.png new file mode 100644 index 00000000..0e59d2ab Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__weakness'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__weaving'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__weaving'}}.png new file mode 100644 index 00000000..ad57fa8f Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__weaving'}}.png differ diff --git a/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__wind_charged'}}.png b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__wind_charged'}}.png new file mode 100644 index 00000000..ed7e91fd Binary files /dev/null and b/public/textures/immersiveengineering/potion_bucket__{'minecraft__potion_contents'__{potion__'minecraft__wind_charged'}}.png differ diff --git a/public/textures/immersiveengineering/powerpack.png b/public/textures/immersiveengineering/powerpack.png new file mode 100644 index 00000000..1f099b4c Binary files /dev/null and b/public/textures/immersiveengineering/powerpack.png differ diff --git a/public/textures/immersiveengineering/radiator.png b/public/textures/immersiveengineering/radiator.png new file mode 100644 index 00000000..823d3da5 Binary files /dev/null and b/public/textures/immersiveengineering/radiator.png differ diff --git a/public/textures/immersiveengineering/railgun.png b/public/textures/immersiveengineering/railgun.png new file mode 100644 index 00000000..89f923fe Binary files /dev/null and b/public/textures/immersiveengineering/railgun.png differ diff --git a/public/textures/immersiveengineering/raw_aluminum.png b/public/textures/immersiveengineering/raw_aluminum.png new file mode 100644 index 00000000..c882e174 Binary files /dev/null and b/public/textures/immersiveengineering/raw_aluminum.png differ diff --git a/public/textures/immersiveengineering/raw_block_aluminum.png b/public/textures/immersiveengineering/raw_block_aluminum.png new file mode 100644 index 00000000..ef45af09 Binary files /dev/null and b/public/textures/immersiveengineering/raw_block_aluminum.png differ diff --git a/public/textures/immersiveengineering/raw_block_lead.png b/public/textures/immersiveengineering/raw_block_lead.png new file mode 100644 index 00000000..26bd581d Binary files /dev/null and b/public/textures/immersiveengineering/raw_block_lead.png differ diff --git a/public/textures/immersiveengineering/raw_block_nickel.png b/public/textures/immersiveengineering/raw_block_nickel.png new file mode 100644 index 00000000..9f59f653 Binary files /dev/null and b/public/textures/immersiveengineering/raw_block_nickel.png differ diff --git a/public/textures/immersiveengineering/raw_block_silver.png b/public/textures/immersiveengineering/raw_block_silver.png new file mode 100644 index 00000000..08103fb1 Binary files /dev/null and b/public/textures/immersiveengineering/raw_block_silver.png differ diff --git a/public/textures/immersiveengineering/raw_block_uranium.png b/public/textures/immersiveengineering/raw_block_uranium.png new file mode 100644 index 00000000..b95e1aaa Binary files /dev/null and b/public/textures/immersiveengineering/raw_block_uranium.png differ diff --git a/public/textures/immersiveengineering/raw_lead.png b/public/textures/immersiveengineering/raw_lead.png new file mode 100644 index 00000000..b49ad374 Binary files /dev/null and b/public/textures/immersiveengineering/raw_lead.png differ diff --git a/public/textures/immersiveengineering/raw_nickel.png b/public/textures/immersiveengineering/raw_nickel.png new file mode 100644 index 00000000..c6d40437 Binary files /dev/null and b/public/textures/immersiveengineering/raw_nickel.png differ diff --git a/public/textures/immersiveengineering/raw_silver.png b/public/textures/immersiveengineering/raw_silver.png new file mode 100644 index 00000000..47197c6a Binary files /dev/null and b/public/textures/immersiveengineering/raw_silver.png differ diff --git a/public/textures/immersiveengineering/raw_uranium.png b/public/textures/immersiveengineering/raw_uranium.png new file mode 100644 index 00000000..bdd869ec Binary files /dev/null and b/public/textures/immersiveengineering/raw_uranium.png differ diff --git a/public/textures/immersiveengineering/razor_wire.png b/public/textures/immersiveengineering/razor_wire.png new file mode 100644 index 00000000..6eb643b3 Binary files /dev/null and b/public/textures/immersiveengineering/razor_wire.png differ diff --git a/public/textures/immersiveengineering/redstone_acid_bucket.png b/public/textures/immersiveengineering/redstone_acid_bucket.png new file mode 100644 index 00000000..1ac68591 Binary files /dev/null and b/public/textures/immersiveengineering/redstone_acid_bucket.png differ diff --git a/public/textures/immersiveengineering/redstone_breaker.png b/public/textures/immersiveengineering/redstone_breaker.png new file mode 100644 index 00000000..795c0536 Binary files /dev/null and b/public/textures/immersiveengineering/redstone_breaker.png differ diff --git a/public/textures/immersiveengineering/redstone_state_cell.png b/public/textures/immersiveengineering/redstone_state_cell.png new file mode 100644 index 00000000..aaaa53e6 Binary files /dev/null and b/public/textures/immersiveengineering/redstone_state_cell.png differ diff --git a/public/textures/immersiveengineering/redstone_switchboard.png b/public/textures/immersiveengineering/redstone_switchboard.png new file mode 100644 index 00000000..661d9934 Binary files /dev/null and b/public/textures/immersiveengineering/redstone_switchboard.png differ diff --git a/public/textures/immersiveengineering/redstone_timer.png b/public/textures/immersiveengineering/redstone_timer.png new file mode 100644 index 00000000..77431b4b Binary files /dev/null and b/public/textures/immersiveengineering/redstone_timer.png differ diff --git a/public/textures/immersiveengineering/reinforced_crate.png b/public/textures/immersiveengineering/reinforced_crate.png new file mode 100644 index 00000000..52d454b0 Binary files /dev/null and b/public/textures/immersiveengineering/reinforced_crate.png differ diff --git a/public/textures/immersiveengineering/reinforced_window.png b/public/textures/immersiveengineering/reinforced_window.png new file mode 100644 index 00000000..d27d6b4d Binary files /dev/null and b/public/textures/immersiveengineering/reinforced_window.png differ diff --git a/public/textures/immersiveengineering/resonanz_engineering.png b/public/textures/immersiveengineering/resonanz_engineering.png new file mode 100644 index 00000000..b772cd53 Binary files /dev/null and b/public/textures/immersiveengineering/resonanz_engineering.png differ diff --git a/public/textures/immersiveengineering/revolver.png b/public/textures/immersiveengineering/revolver.png new file mode 100644 index 00000000..b86d2c6d Binary files /dev/null and b/public/textures/immersiveengineering/revolver.png differ diff --git a/public/textures/immersiveengineering/robot_wolf.png b/public/textures/immersiveengineering/robot_wolf.png new file mode 100644 index 00000000..142bd112 Binary files /dev/null and b/public/textures/immersiveengineering/robot_wolf.png differ diff --git a/public/textures/immersiveengineering/rockcutter.png b/public/textures/immersiveengineering/rockcutter.png new file mode 100644 index 00000000..3834029e Binary files /dev/null and b/public/textures/immersiveengineering/rockcutter.png differ diff --git a/public/textures/immersiveengineering/rs_engineering.png b/public/textures/immersiveengineering/rs_engineering.png new file mode 100644 index 00000000..e77c40d7 Binary files /dev/null and b/public/textures/immersiveengineering/rs_engineering.png differ diff --git a/public/textures/immersiveengineering/sample_drill.png b/public/textures/immersiveengineering/sample_drill.png new file mode 100644 index 00000000..bb38ebba Binary files /dev/null and b/public/textures/immersiveengineering/sample_drill.png differ diff --git a/public/textures/immersiveengineering/sawblade.png b/public/textures/immersiveengineering/sawblade.png new file mode 100644 index 00000000..7d83c8b5 Binary files /dev/null and b/public/textures/immersiveengineering/sawblade.png differ diff --git a/public/textures/immersiveengineering/sawdust.png b/public/textures/immersiveengineering/sawdust.png new file mode 100644 index 00000000..5208d15e Binary files /dev/null and b/public/textures/immersiveengineering/sawdust.png differ diff --git a/public/textures/immersiveengineering/screwdriver.png b/public/textures/immersiveengineering/screwdriver.png new file mode 100644 index 00000000..73a9df40 Binary files /dev/null and b/public/textures/immersiveengineering/screwdriver.png differ diff --git a/public/textures/immersiveengineering/seed.png b/public/textures/immersiveengineering/seed.png new file mode 100644 index 00000000..8364d37d Binary files /dev/null and b/public/textures/immersiveengineering/seed.png differ diff --git a/public/textures/immersiveengineering/shader_acepride.png b/public/textures/immersiveengineering/shader_acepride.png new file mode 100644 index 00000000..ac9496ff Binary files /dev/null and b/public/textures/immersiveengineering/shader_acepride.png differ diff --git a/public/textures/immersiveengineering/shader_ancient.png b/public/textures/immersiveengineering/shader_ancient.png new file mode 100644 index 00000000..78f33a5e Binary files /dev/null and b/public/textures/immersiveengineering/shader_ancient.png differ diff --git a/public/textures/immersiveengineering/shader_angelsthesis.png b/public/textures/immersiveengineering/shader_angelsthesis.png new file mode 100644 index 00000000..ff87bb0b Binary files /dev/null and b/public/textures/immersiveengineering/shader_angelsthesis.png differ diff --git a/public/textures/immersiveengineering/shader_argo.png b/public/textures/immersiveengineering/shader_argo.png new file mode 100644 index 00000000..1a0e444e Binary files /dev/null and b/public/textures/immersiveengineering/shader_argo.png differ diff --git a/public/textures/immersiveengineering/shader_astartes.png b/public/textures/immersiveengineering/shader_astartes.png new file mode 100644 index 00000000..6f5ffafe Binary files /dev/null and b/public/textures/immersiveengineering/shader_astartes.png differ diff --git a/public/textures/immersiveengineering/shader_bag_common.png b/public/textures/immersiveengineering/shader_bag_common.png new file mode 100644 index 00000000..7c24181b Binary files /dev/null and b/public/textures/immersiveengineering/shader_bag_common.png differ diff --git a/public/textures/immersiveengineering/shader_bag_epic.png b/public/textures/immersiveengineering/shader_bag_epic.png new file mode 100644 index 00000000..cc7cd883 Binary files /dev/null and b/public/textures/immersiveengineering/shader_bag_epic.png differ diff --git a/public/textures/immersiveengineering/shader_bag_immersiveengineering_masterwork.png b/public/textures/immersiveengineering/shader_bag_immersiveengineering_masterwork.png new file mode 100644 index 00000000..14bf70ed Binary files /dev/null and b/public/textures/immersiveengineering/shader_bag_immersiveengineering_masterwork.png differ diff --git a/public/textures/immersiveengineering/shader_bag_rare.png b/public/textures/immersiveengineering/shader_bag_rare.png new file mode 100644 index 00000000..15471386 Binary files /dev/null and b/public/textures/immersiveengineering/shader_bag_rare.png differ diff --git a/public/textures/immersiveengineering/shader_bag_uncommon.png b/public/textures/immersiveengineering/shader_bag_uncommon.png new file mode 100644 index 00000000..0fdeb057 Binary files /dev/null and b/public/textures/immersiveengineering/shader_bag_uncommon.png differ diff --git a/public/textures/immersiveengineering/shader_bipride.png b/public/textures/immersiveengineering/shader_bipride.png new file mode 100644 index 00000000..459c4cc7 Binary files /dev/null and b/public/textures/immersiveengineering/shader_bipride.png differ diff --git a/public/textures/immersiveengineering/shader_chloris.png b/public/textures/immersiveengineering/shader_chloris.png new file mode 100644 index 00000000..14fe601a Binary files /dev/null and b/public/textures/immersiveengineering/shader_chloris.png differ diff --git a/public/textures/immersiveengineering/shader_crescentrose.png b/public/textures/immersiveengineering/shader_crescentrose.png new file mode 100644 index 00000000..45effa74 Binary files /dev/null and b/public/textures/immersiveengineering/shader_crescentrose.png differ diff --git a/public/textures/immersiveengineering/shader_crimsonlotus.png b/public/textures/immersiveengineering/shader_crimsonlotus.png new file mode 100644 index 00000000..0023e197 Binary files /dev/null and b/public/textures/immersiveengineering/shader_crimsonlotus.png differ diff --git a/public/textures/immersiveengineering/shader_darkfire.png b/public/textures/immersiveengineering/shader_darkfire.png new file mode 100644 index 00000000..a6744ba3 Binary files /dev/null and b/public/textures/immersiveengineering/shader_darkfire.png differ diff --git a/public/textures/immersiveengineering/shader_dominator.png b/public/textures/immersiveengineering/shader_dominator.png new file mode 100644 index 00000000..0643c5a0 Binary files /dev/null and b/public/textures/immersiveengineering/shader_dominator.png differ diff --git a/public/textures/immersiveengineering/shader_dragonsbreath.png b/public/textures/immersiveengineering/shader_dragonsbreath.png new file mode 100644 index 00000000..badeb363 Binary files /dev/null and b/public/textures/immersiveengineering/shader_dragonsbreath.png differ diff --git a/public/textures/immersiveengineering/shader_enbypride.png b/public/textures/immersiveengineering/shader_enbypride.png new file mode 100644 index 00000000..869aa501 Binary files /dev/null and b/public/textures/immersiveengineering/shader_enbypride.png differ diff --git a/public/textures/immersiveengineering/shader_erruption.png b/public/textures/immersiveengineering/shader_erruption.png new file mode 100644 index 00000000..61d52ce9 Binary files /dev/null and b/public/textures/immersiveengineering/shader_erruption.png differ diff --git a/public/textures/immersiveengineering/shader_exia.png b/public/textures/immersiveengineering/shader_exia.png new file mode 100644 index 00000000..6a7f83ca Binary files /dev/null and b/public/textures/immersiveengineering/shader_exia.png differ diff --git a/public/textures/immersiveengineering/shader_eyas.png b/public/textures/immersiveengineering/shader_eyas.png new file mode 100644 index 00000000..210d70ce Binary files /dev/null and b/public/textures/immersiveengineering/shader_eyas.png differ diff --git a/public/textures/immersiveengineering/shader_felix.png b/public/textures/immersiveengineering/shader_felix.png new file mode 100644 index 00000000..c3a9e91c Binary files /dev/null and b/public/textures/immersiveengineering/shader_felix.png differ diff --git a/public/textures/immersiveengineering/shader_fox.png b/public/textures/immersiveengineering/shader_fox.png new file mode 100644 index 00000000..cbf56ae6 Binary files /dev/null and b/public/textures/immersiveengineering/shader_fox.png differ diff --git a/public/textures/immersiveengineering/shader_gaypride.png b/public/textures/immersiveengineering/shader_gaypride.png new file mode 100644 index 00000000..bf2eed56 Binary files /dev/null and b/public/textures/immersiveengineering/shader_gaypride.png differ diff --git a/public/textures/immersiveengineering/shader_glacis.png b/public/textures/immersiveengineering/shader_glacis.png new file mode 100644 index 00000000..ad983106 Binary files /dev/null and b/public/textures/immersiveengineering/shader_glacis.png differ diff --git a/public/textures/immersiveengineering/shader_harrowed.png b/public/textures/immersiveengineering/shader_harrowed.png new file mode 100644 index 00000000..9cf9e466 Binary files /dev/null and b/public/textures/immersiveengineering/shader_harrowed.png differ diff --git a/public/textures/immersiveengineering/shader_hawk.png b/public/textures/immersiveengineering/shader_hawk.png new file mode 100644 index 00000000..16701395 Binary files /dev/null and b/public/textures/immersiveengineering/shader_hawk.png differ diff --git a/public/textures/immersiveengineering/shader_hollow.png b/public/textures/immersiveengineering/shader_hollow.png new file mode 100644 index 00000000..677b4269 Binary files /dev/null and b/public/textures/immersiveengineering/shader_hollow.png differ diff --git a/public/textures/immersiveengineering/shader_ikelos.png b/public/textures/immersiveengineering/shader_ikelos.png new file mode 100644 index 00000000..d3d01e7c Binary files /dev/null and b/public/textures/immersiveengineering/shader_ikelos.png differ diff --git a/public/textures/immersiveengineering/shader_kindled.png b/public/textures/immersiveengineering/shader_kindled.png new file mode 100644 index 00000000..a6f08bee Binary files /dev/null and b/public/textures/immersiveengineering/shader_kindled.png differ diff --git a/public/textures/immersiveengineering/shader_lesbianpride.png b/public/textures/immersiveengineering/shader_lesbianpride.png new file mode 100644 index 00000000..fb3792b3 Binary files /dev/null and b/public/textures/immersiveengineering/shader_lesbianpride.png differ diff --git a/public/textures/immersiveengineering/shader_locus.png b/public/textures/immersiveengineering/shader_locus.png new file mode 100644 index 00000000..ac1c9c42 Binary files /dev/null and b/public/textures/immersiveengineering/shader_locus.png differ diff --git a/public/textures/immersiveengineering/shader_lususnaturae.png b/public/textures/immersiveengineering/shader_lususnaturae.png new file mode 100644 index 00000000..57dcf867 Binary files /dev/null and b/public/textures/immersiveengineering/shader_lususnaturae.png differ diff --git a/public/textures/immersiveengineering/shader_magnum.png b/public/textures/immersiveengineering/shader_magnum.png new file mode 100644 index 00000000..0d4afc65 Binary files /dev/null and b/public/textures/immersiveengineering/shader_magnum.png differ diff --git a/public/textures/immersiveengineering/shader_massfusion.png b/public/textures/immersiveengineering/shader_massfusion.png new file mode 100644 index 00000000..230c6ec5 Binary files /dev/null and b/public/textures/immersiveengineering/shader_massfusion.png differ diff --git a/public/textures/immersiveengineering/shader_matrix.png b/public/textures/immersiveengineering/shader_matrix.png new file mode 100644 index 00000000..b154babe Binary files /dev/null and b/public/textures/immersiveengineering/shader_matrix.png differ diff --git a/public/textures/immersiveengineering/shader_microshark.png b/public/textures/immersiveengineering/shader_microshark.png new file mode 100644 index 00000000..12087fb5 Binary files /dev/null and b/public/textures/immersiveengineering/shader_microshark.png differ diff --git a/public/textures/immersiveengineering/shader_milo.png b/public/textures/immersiveengineering/shader_milo.png new file mode 100644 index 00000000..93999f2f Binary files /dev/null and b/public/textures/immersiveengineering/shader_milo.png differ diff --git a/public/textures/immersiveengineering/shader_n7.png b/public/textures/immersiveengineering/shader_n7.png new file mode 100644 index 00000000..46393239 Binary files /dev/null and b/public/textures/immersiveengineering/shader_n7.png differ diff --git a/public/textures/immersiveengineering/shader_netherforged.png b/public/textures/immersiveengineering/shader_netherforged.png new file mode 100644 index 00000000..c71d111b Binary files /dev/null and b/public/textures/immersiveengineering/shader_netherforged.png differ diff --git a/public/textures/immersiveengineering/shader_normandy.png b/public/textures/immersiveengineering/shader_normandy.png new file mode 100644 index 00000000..e8e8e198 Binary files /dev/null and b/public/textures/immersiveengineering/shader_normandy.png differ diff --git a/public/textures/immersiveengineering/shader_omnitool.png b/public/textures/immersiveengineering/shader_omnitool.png new file mode 100644 index 00000000..ad67b37a Binary files /dev/null and b/public/textures/immersiveengineering/shader_omnitool.png differ diff --git a/public/textures/immersiveengineering/shader_phoenix.png b/public/textures/immersiveengineering/shader_phoenix.png new file mode 100644 index 00000000..21023ebf Binary files /dev/null and b/public/textures/immersiveengineering/shader_phoenix.png differ diff --git a/public/textures/immersiveengineering/shader_qrow.png b/public/textures/immersiveengineering/shader_qrow.png new file mode 100644 index 00000000..3f1c9ba8 Binary files /dev/null and b/public/textures/immersiveengineering/shader_qrow.png differ diff --git a/public/textures/immersiveengineering/shader_radiant.png b/public/textures/immersiveengineering/shader_radiant.png new file mode 100644 index 00000000..646885a2 Binary files /dev/null and b/public/textures/immersiveengineering/shader_radiant.png differ diff --git a/public/textures/immersiveengineering/shader_regal.png b/public/textures/immersiveengineering/shader_regal.png new file mode 100644 index 00000000..1a3e3598 Binary files /dev/null and b/public/textures/immersiveengineering/shader_regal.png differ diff --git a/public/textures/immersiveengineering/shader_rosequartz.png b/public/textures/immersiveengineering/shader_rosequartz.png new file mode 100644 index 00000000..3f89a199 Binary files /dev/null and b/public/textures/immersiveengineering/shader_rosequartz.png differ diff --git a/public/textures/immersiveengineering/shader_sharkface.png b/public/textures/immersiveengineering/shader_sharkface.png new file mode 100644 index 00000000..0b7e5687 Binary files /dev/null and b/public/textures/immersiveengineering/shader_sharkface.png differ diff --git a/public/textures/immersiveengineering/shader_sponsor.png b/public/textures/immersiveengineering/shader_sponsor.png new file mode 100644 index 00000000..17cfc393 Binary files /dev/null and b/public/textures/immersiveengineering/shader_sponsor.png differ diff --git a/public/textures/immersiveengineering/shader_stormflower.png b/public/textures/immersiveengineering/shader_stormflower.png new file mode 100644 index 00000000..33b221cb Binary files /dev/null and b/public/textures/immersiveengineering/shader_stormflower.png differ diff --git a/public/textures/immersiveengineering/shader_sunstrike.png b/public/textures/immersiveengineering/shader_sunstrike.png new file mode 100644 index 00000000..b17ace27 Binary files /dev/null and b/public/textures/immersiveengineering/shader_sunstrike.png differ diff --git a/public/textures/immersiveengineering/shader_sutherland.png b/public/textures/immersiveengineering/shader_sutherland.png new file mode 100644 index 00000000..8aaaa281 Binary files /dev/null and b/public/textures/immersiveengineering/shader_sutherland.png differ diff --git a/public/textures/immersiveengineering/shader_taken.png b/public/textures/immersiveengineering/shader_taken.png new file mode 100644 index 00000000..a2f17ab9 Binary files /dev/null and b/public/textures/immersiveengineering/shader_taken.png differ diff --git a/public/textures/immersiveengineering/shader_transpride.png b/public/textures/immersiveengineering/shader_transpride.png new file mode 100644 index 00000000..d3212a44 Binary files /dev/null and b/public/textures/immersiveengineering/shader_transpride.png differ diff --git a/public/textures/immersiveengineering/shader_trident.png b/public/textures/immersiveengineering/shader_trident.png new file mode 100644 index 00000000..24554034 Binary files /dev/null and b/public/textures/immersiveengineering/shader_trident.png differ diff --git a/public/textures/immersiveengineering/shader_twili.png b/public/textures/immersiveengineering/shader_twili.png new file mode 100644 index 00000000..b2aa392c Binary files /dev/null and b/public/textures/immersiveengineering/shader_twili.png differ diff --git a/public/textures/immersiveengineering/shader_usurper.png b/public/textures/immersiveengineering/shader_usurper.png new file mode 100644 index 00000000..b3bf1ca9 Binary files /dev/null and b/public/textures/immersiveengineering/shader_usurper.png differ diff --git a/public/textures/immersiveengineering/shader_vanguard.png b/public/textures/immersiveengineering/shader_vanguard.png new file mode 100644 index 00000000..3ad508a6 Binary files /dev/null and b/public/textures/immersiveengineering/shader_vanguard.png differ diff --git a/public/textures/immersiveengineering/shader_vaulttec.png b/public/textures/immersiveengineering/shader_vaulttec.png new file mode 100644 index 00000000..1a066439 Binary files /dev/null and b/public/textures/immersiveengineering/shader_vaulttec.png differ diff --git a/public/textures/immersiveengineering/shader_waaagh.png b/public/textures/immersiveengineering/shader_waaagh.png new file mode 100644 index 00000000..c630c8f8 Binary files /dev/null and b/public/textures/immersiveengineering/shader_waaagh.png differ diff --git a/public/textures/immersiveengineering/shader_warbird.png b/public/textures/immersiveengineering/shader_warbird.png new file mode 100644 index 00000000..59b5f0de Binary files /dev/null and b/public/textures/immersiveengineering/shader_warbird.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_aluminum.png b/public/textures/immersiveengineering/sheetmetal_aluminum.png new file mode 100644 index 00000000..61ace32f Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_aluminum.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_colored_black.png b/public/textures/immersiveengineering/sheetmetal_colored_black.png new file mode 100644 index 00000000..914aa596 Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_colored_black.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_colored_blue.png b/public/textures/immersiveengineering/sheetmetal_colored_blue.png new file mode 100644 index 00000000..9257edef Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_colored_blue.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_colored_brown.png b/public/textures/immersiveengineering/sheetmetal_colored_brown.png new file mode 100644 index 00000000..a9961d53 Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_colored_brown.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_colored_cyan.png b/public/textures/immersiveengineering/sheetmetal_colored_cyan.png new file mode 100644 index 00000000..e420238b Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_colored_cyan.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_colored_gray.png b/public/textures/immersiveengineering/sheetmetal_colored_gray.png new file mode 100644 index 00000000..d51ceb03 Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_colored_gray.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_colored_green.png b/public/textures/immersiveengineering/sheetmetal_colored_green.png new file mode 100644 index 00000000..63110c20 Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_colored_green.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_colored_light_blue.png b/public/textures/immersiveengineering/sheetmetal_colored_light_blue.png new file mode 100644 index 00000000..7edd3d1c Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_colored_light_blue.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_colored_light_gray.png b/public/textures/immersiveengineering/sheetmetal_colored_light_gray.png new file mode 100644 index 00000000..6edb3f7a Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_colored_light_gray.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_colored_lime.png b/public/textures/immersiveengineering/sheetmetal_colored_lime.png new file mode 100644 index 00000000..53c29773 Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_colored_lime.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_colored_magenta.png b/public/textures/immersiveengineering/sheetmetal_colored_magenta.png new file mode 100644 index 00000000..ba0ec969 Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_colored_magenta.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_colored_orange.png b/public/textures/immersiveengineering/sheetmetal_colored_orange.png new file mode 100644 index 00000000..077307ad Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_colored_orange.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_colored_pink.png b/public/textures/immersiveengineering/sheetmetal_colored_pink.png new file mode 100644 index 00000000..2b499052 Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_colored_pink.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_colored_purple.png b/public/textures/immersiveengineering/sheetmetal_colored_purple.png new file mode 100644 index 00000000..adda3180 Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_colored_purple.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_colored_red.png b/public/textures/immersiveengineering/sheetmetal_colored_red.png new file mode 100644 index 00000000..ffe769cc Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_colored_red.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_colored_white.png b/public/textures/immersiveengineering/sheetmetal_colored_white.png new file mode 100644 index 00000000..50a2c131 Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_colored_white.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_colored_yellow.png b/public/textures/immersiveengineering/sheetmetal_colored_yellow.png new file mode 100644 index 00000000..a5b9db7c Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_colored_yellow.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_constantan.png b/public/textures/immersiveengineering/sheetmetal_constantan.png new file mode 100644 index 00000000..26a381ed Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_constantan.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_copper.png b/public/textures/immersiveengineering/sheetmetal_copper.png new file mode 100644 index 00000000..da19f254 Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_copper.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_electrum.png b/public/textures/immersiveengineering/sheetmetal_electrum.png new file mode 100644 index 00000000..45d8a541 Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_electrum.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_gold.png b/public/textures/immersiveengineering/sheetmetal_gold.png new file mode 100644 index 00000000..10c4f9fd Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_gold.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_iron.png b/public/textures/immersiveengineering/sheetmetal_iron.png new file mode 100644 index 00000000..f70ba84f Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_iron.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_lead.png b/public/textures/immersiveengineering/sheetmetal_lead.png new file mode 100644 index 00000000..7d7e89fa Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_lead.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_nickel.png b/public/textures/immersiveengineering/sheetmetal_nickel.png new file mode 100644 index 00000000..8972c4cb Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_nickel.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_silver.png b/public/textures/immersiveengineering/sheetmetal_silver.png new file mode 100644 index 00000000..56b3b191 Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_silver.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_steel.png b/public/textures/immersiveengineering/sheetmetal_steel.png new file mode 100644 index 00000000..e9133fe6 Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_steel.png differ diff --git a/public/textures/immersiveengineering/sheetmetal_uranium.png b/public/textures/immersiveengineering/sheetmetal_uranium.png new file mode 100644 index 00000000..6937343f Binary files /dev/null and b/public/textures/immersiveengineering/sheetmetal_uranium.png differ diff --git a/public/textures/immersiveengineering/shield.png b/public/textures/immersiveengineering/shield.png new file mode 100644 index 00000000..85e84563 Binary files /dev/null and b/public/textures/immersiveengineering/shield.png differ diff --git a/public/textures/immersiveengineering/shovel_steel.png b/public/textures/immersiveengineering/shovel_steel.png new file mode 100644 index 00000000..995afca9 Binary files /dev/null and b/public/textures/immersiveengineering/shovel_steel.png differ diff --git a/public/textures/immersiveengineering/siren.png b/public/textures/immersiveengineering/siren.png new file mode 100644 index 00000000..5c1acc17 Binary files /dev/null and b/public/textures/immersiveengineering/siren.png differ diff --git a/public/textures/immersiveengineering/skyhook.png b/public/textures/immersiveengineering/skyhook.png new file mode 100644 index 00000000..c80d64a2 Binary files /dev/null and b/public/textures/immersiveengineering/skyhook.png differ diff --git a/public/textures/immersiveengineering/slab_alloybrick.png b/public/textures/immersiveengineering/slab_alloybrick.png new file mode 100644 index 00000000..2b9014bc Binary files /dev/null and b/public/textures/immersiveengineering/slab_alloybrick.png differ diff --git a/public/textures/immersiveengineering/slab_alu_scaffolding_grate_top.png b/public/textures/immersiveengineering/slab_alu_scaffolding_grate_top.png new file mode 100644 index 00000000..a0addca9 Binary files /dev/null and b/public/textures/immersiveengineering/slab_alu_scaffolding_grate_top.png differ diff --git a/public/textures/immersiveengineering/slab_alu_scaffolding_standard.png b/public/textures/immersiveengineering/slab_alu_scaffolding_standard.png new file mode 100644 index 00000000..31264089 Binary files /dev/null and b/public/textures/immersiveengineering/slab_alu_scaffolding_standard.png differ diff --git a/public/textures/immersiveengineering/slab_alu_scaffolding_wooden_top.png b/public/textures/immersiveengineering/slab_alu_scaffolding_wooden_top.png new file mode 100644 index 00000000..e4b3d2fc Binary files /dev/null and b/public/textures/immersiveengineering/slab_alu_scaffolding_wooden_top.png differ diff --git a/public/textures/immersiveengineering/slab_blastbrick.png b/public/textures/immersiveengineering/slab_blastbrick.png new file mode 100644 index 00000000..87cd1b99 Binary files /dev/null and b/public/textures/immersiveengineering/slab_blastbrick.png differ diff --git a/public/textures/immersiveengineering/slab_blastbrick_reinforced.png b/public/textures/immersiveengineering/slab_blastbrick_reinforced.png new file mode 100644 index 00000000..ea197b65 Binary files /dev/null and b/public/textures/immersiveengineering/slab_blastbrick_reinforced.png differ diff --git a/public/textures/immersiveengineering/slab_clinker_brick.png b/public/textures/immersiveengineering/slab_clinker_brick.png new file mode 100644 index 00000000..a5c52025 Binary files /dev/null and b/public/textures/immersiveengineering/slab_clinker_brick.png differ diff --git a/public/textures/immersiveengineering/slab_coke.png b/public/textures/immersiveengineering/slab_coke.png new file mode 100644 index 00000000..d7268a94 Binary files /dev/null and b/public/textures/immersiveengineering/slab_coke.png differ diff --git a/public/textures/immersiveengineering/slab_cokebrick.png b/public/textures/immersiveengineering/slab_cokebrick.png new file mode 100644 index 00000000..c245ea7e Binary files /dev/null and b/public/textures/immersiveengineering/slab_cokebrick.png differ diff --git a/public/textures/immersiveengineering/slab_concrete.png b/public/textures/immersiveengineering/slab_concrete.png new file mode 100644 index 00000000..5a88bdab Binary files /dev/null and b/public/textures/immersiveengineering/slab_concrete.png differ diff --git a/public/textures/immersiveengineering/slab_concrete_brick.png b/public/textures/immersiveengineering/slab_concrete_brick.png new file mode 100644 index 00000000..10844234 Binary files /dev/null and b/public/textures/immersiveengineering/slab_concrete_brick.png differ diff --git a/public/textures/immersiveengineering/slab_concrete_leaded.png b/public/textures/immersiveengineering/slab_concrete_leaded.png new file mode 100644 index 00000000..1ec8c3c4 Binary files /dev/null and b/public/textures/immersiveengineering/slab_concrete_leaded.png differ diff --git a/public/textures/immersiveengineering/slab_concrete_reinforced.png b/public/textures/immersiveengineering/slab_concrete_reinforced.png new file mode 100644 index 00000000..95b87bff Binary files /dev/null and b/public/textures/immersiveengineering/slab_concrete_reinforced.png differ diff --git a/public/textures/immersiveengineering/slab_concrete_reinforced_tile.png b/public/textures/immersiveengineering/slab_concrete_reinforced_tile.png new file mode 100644 index 00000000..909db07d Binary files /dev/null and b/public/textures/immersiveengineering/slab_concrete_reinforced_tile.png differ diff --git a/public/textures/immersiveengineering/slab_concrete_tile.png b/public/textures/immersiveengineering/slab_concrete_tile.png new file mode 100644 index 00000000..e230248e Binary files /dev/null and b/public/textures/immersiveengineering/slab_concrete_tile.png differ diff --git a/public/textures/immersiveengineering/slab_hempcrete.png b/public/textures/immersiveengineering/slab_hempcrete.png new file mode 100644 index 00000000..f8cc53e6 Binary files /dev/null and b/public/textures/immersiveengineering/slab_hempcrete.png differ diff --git a/public/textures/immersiveengineering/slab_hempcrete_brick.png b/public/textures/immersiveengineering/slab_hempcrete_brick.png new file mode 100644 index 00000000..68bbc421 Binary files /dev/null and b/public/textures/immersiveengineering/slab_hempcrete_brick.png differ diff --git a/public/textures/immersiveengineering/slab_insulating_glass.png b/public/textures/immersiveengineering/slab_insulating_glass.png new file mode 100644 index 00000000..7aa39f11 Binary files /dev/null and b/public/textures/immersiveengineering/slab_insulating_glass.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_aluminum.png b/public/textures/immersiveengineering/slab_sheetmetal_aluminum.png new file mode 100644 index 00000000..5edfad6d Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_aluminum.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_colored_black.png b/public/textures/immersiveengineering/slab_sheetmetal_colored_black.png new file mode 100644 index 00000000..74473059 Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_colored_black.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_colored_blue.png b/public/textures/immersiveengineering/slab_sheetmetal_colored_blue.png new file mode 100644 index 00000000..3b33b6b4 Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_colored_blue.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_colored_brown.png b/public/textures/immersiveengineering/slab_sheetmetal_colored_brown.png new file mode 100644 index 00000000..c7309777 Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_colored_brown.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_colored_cyan.png b/public/textures/immersiveengineering/slab_sheetmetal_colored_cyan.png new file mode 100644 index 00000000..f68eb466 Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_colored_cyan.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_colored_gray.png b/public/textures/immersiveengineering/slab_sheetmetal_colored_gray.png new file mode 100644 index 00000000..8ccc065b Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_colored_gray.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_colored_green.png b/public/textures/immersiveengineering/slab_sheetmetal_colored_green.png new file mode 100644 index 00000000..5e11debe Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_colored_green.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_colored_light_blue.png b/public/textures/immersiveengineering/slab_sheetmetal_colored_light_blue.png new file mode 100644 index 00000000..f5bfd0b7 Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_colored_light_blue.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_colored_light_gray.png b/public/textures/immersiveengineering/slab_sheetmetal_colored_light_gray.png new file mode 100644 index 00000000..6446c961 Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_colored_light_gray.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_colored_lime.png b/public/textures/immersiveengineering/slab_sheetmetal_colored_lime.png new file mode 100644 index 00000000..6c9bfdd2 Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_colored_lime.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_colored_magenta.png b/public/textures/immersiveengineering/slab_sheetmetal_colored_magenta.png new file mode 100644 index 00000000..b0af8ba1 Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_colored_magenta.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_colored_orange.png b/public/textures/immersiveengineering/slab_sheetmetal_colored_orange.png new file mode 100644 index 00000000..1a264f28 Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_colored_orange.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_colored_pink.png b/public/textures/immersiveengineering/slab_sheetmetal_colored_pink.png new file mode 100644 index 00000000..5df9f4f0 Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_colored_pink.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_colored_purple.png b/public/textures/immersiveengineering/slab_sheetmetal_colored_purple.png new file mode 100644 index 00000000..22a6df9a Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_colored_purple.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_colored_red.png b/public/textures/immersiveengineering/slab_sheetmetal_colored_red.png new file mode 100644 index 00000000..84e54805 Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_colored_red.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_colored_white.png b/public/textures/immersiveengineering/slab_sheetmetal_colored_white.png new file mode 100644 index 00000000..901180e0 Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_colored_white.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_colored_yellow.png b/public/textures/immersiveengineering/slab_sheetmetal_colored_yellow.png new file mode 100644 index 00000000..5a73192a Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_colored_yellow.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_constantan.png b/public/textures/immersiveengineering/slab_sheetmetal_constantan.png new file mode 100644 index 00000000..925a9aec Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_constantan.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_copper.png b/public/textures/immersiveengineering/slab_sheetmetal_copper.png new file mode 100644 index 00000000..d4966dbc Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_copper.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_electrum.png b/public/textures/immersiveengineering/slab_sheetmetal_electrum.png new file mode 100644 index 00000000..90cea96c Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_electrum.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_gold.png b/public/textures/immersiveengineering/slab_sheetmetal_gold.png new file mode 100644 index 00000000..2eebbe93 Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_gold.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_iron.png b/public/textures/immersiveengineering/slab_sheetmetal_iron.png new file mode 100644 index 00000000..fed3a8c3 Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_iron.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_lead.png b/public/textures/immersiveengineering/slab_sheetmetal_lead.png new file mode 100644 index 00000000..b53cd771 Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_lead.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_nickel.png b/public/textures/immersiveengineering/slab_sheetmetal_nickel.png new file mode 100644 index 00000000..d1913d38 Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_nickel.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_silver.png b/public/textures/immersiveengineering/slab_sheetmetal_silver.png new file mode 100644 index 00000000..f21b2711 Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_silver.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_steel.png b/public/textures/immersiveengineering/slab_sheetmetal_steel.png new file mode 100644 index 00000000..acae8f52 Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_steel.png differ diff --git a/public/textures/immersiveengineering/slab_sheetmetal_uranium.png b/public/textures/immersiveengineering/slab_sheetmetal_uranium.png new file mode 100644 index 00000000..1e985697 Binary files /dev/null and b/public/textures/immersiveengineering/slab_sheetmetal_uranium.png differ diff --git a/public/textures/immersiveengineering/slab_slag_brick.png b/public/textures/immersiveengineering/slab_slag_brick.png new file mode 100644 index 00000000..cb5d4dc6 Binary files /dev/null and b/public/textures/immersiveengineering/slab_slag_brick.png differ diff --git a/public/textures/immersiveengineering/slab_steel_scaffolding_grate_top.png b/public/textures/immersiveengineering/slab_steel_scaffolding_grate_top.png new file mode 100644 index 00000000..930f881e Binary files /dev/null and b/public/textures/immersiveengineering/slab_steel_scaffolding_grate_top.png differ diff --git a/public/textures/immersiveengineering/slab_steel_scaffolding_standard.png b/public/textures/immersiveengineering/slab_steel_scaffolding_standard.png new file mode 100644 index 00000000..ff43148a Binary files /dev/null and b/public/textures/immersiveengineering/slab_steel_scaffolding_standard.png differ diff --git a/public/textures/immersiveengineering/slab_steel_scaffolding_wooden_top.png b/public/textures/immersiveengineering/slab_steel_scaffolding_wooden_top.png new file mode 100644 index 00000000..c45f5e16 Binary files /dev/null and b/public/textures/immersiveengineering/slab_steel_scaffolding_wooden_top.png differ diff --git a/public/textures/immersiveengineering/slab_storage_aluminum.png b/public/textures/immersiveengineering/slab_storage_aluminum.png new file mode 100644 index 00000000..191b0a32 Binary files /dev/null and b/public/textures/immersiveengineering/slab_storage_aluminum.png differ diff --git a/public/textures/immersiveengineering/slab_storage_constantan.png b/public/textures/immersiveengineering/slab_storage_constantan.png new file mode 100644 index 00000000..ad3432d9 Binary files /dev/null and b/public/textures/immersiveengineering/slab_storage_constantan.png differ diff --git a/public/textures/immersiveengineering/slab_storage_electrum.png b/public/textures/immersiveengineering/slab_storage_electrum.png new file mode 100644 index 00000000..2e0e1083 Binary files /dev/null and b/public/textures/immersiveengineering/slab_storage_electrum.png differ diff --git a/public/textures/immersiveengineering/slab_storage_lead.png b/public/textures/immersiveengineering/slab_storage_lead.png new file mode 100644 index 00000000..45d63ca2 Binary files /dev/null and b/public/textures/immersiveengineering/slab_storage_lead.png differ diff --git a/public/textures/immersiveengineering/slab_storage_nickel.png b/public/textures/immersiveengineering/slab_storage_nickel.png new file mode 100644 index 00000000..514e9563 Binary files /dev/null and b/public/textures/immersiveengineering/slab_storage_nickel.png differ diff --git a/public/textures/immersiveengineering/slab_storage_silver.png b/public/textures/immersiveengineering/slab_storage_silver.png new file mode 100644 index 00000000..3540862e Binary files /dev/null and b/public/textures/immersiveengineering/slab_storage_silver.png differ diff --git a/public/textures/immersiveengineering/slab_storage_steel.png b/public/textures/immersiveengineering/slab_storage_steel.png new file mode 100644 index 00000000..022b6269 Binary files /dev/null and b/public/textures/immersiveengineering/slab_storage_steel.png differ diff --git a/public/textures/immersiveengineering/slab_storage_uranium.png b/public/textures/immersiveengineering/slab_storage_uranium.png new file mode 100644 index 00000000..4abd312e Binary files /dev/null and b/public/textures/immersiveengineering/slab_storage_uranium.png differ diff --git a/public/textures/immersiveengineering/slab_treated_wood_horizontal.png b/public/textures/immersiveengineering/slab_treated_wood_horizontal.png new file mode 100644 index 00000000..e9985a6c Binary files /dev/null and b/public/textures/immersiveengineering/slab_treated_wood_horizontal.png differ diff --git a/public/textures/immersiveengineering/slab_treated_wood_packaged.png b/public/textures/immersiveengineering/slab_treated_wood_packaged.png new file mode 100644 index 00000000..6b4d2282 Binary files /dev/null and b/public/textures/immersiveengineering/slab_treated_wood_packaged.png differ diff --git a/public/textures/immersiveengineering/slab_treated_wood_vertical.png b/public/textures/immersiveengineering/slab_treated_wood_vertical.png new file mode 100644 index 00000000..767282a0 Binary files /dev/null and b/public/textures/immersiveengineering/slab_treated_wood_vertical.png differ diff --git a/public/textures/immersiveengineering/slag.png b/public/textures/immersiveengineering/slag.png new file mode 100644 index 00000000..bc8cf584 Binary files /dev/null and b/public/textures/immersiveengineering/slag.png differ diff --git a/public/textures/immersiveengineering/slag_brick.png b/public/textures/immersiveengineering/slag_brick.png new file mode 100644 index 00000000..05e4f2b3 Binary files /dev/null and b/public/textures/immersiveengineering/slag_brick.png differ diff --git a/public/textures/immersiveengineering/slag_glass.png b/public/textures/immersiveengineering/slag_glass.png new file mode 100644 index 00000000..7f2bc8f5 Binary files /dev/null and b/public/textures/immersiveengineering/slag_glass.png differ diff --git a/public/textures/immersiveengineering/slag_gravel.png b/public/textures/immersiveengineering/slag_gravel.png new file mode 100644 index 00000000..9e27a610 Binary files /dev/null and b/public/textures/immersiveengineering/slag_gravel.png differ diff --git a/public/textures/immersiveengineering/sorter.png b/public/textures/immersiveengineering/sorter.png new file mode 100644 index 00000000..176210b4 Binary files /dev/null and b/public/textures/immersiveengineering/sorter.png differ diff --git a/public/textures/immersiveengineering/speedloader.png b/public/textures/immersiveengineering/speedloader.png new file mode 100644 index 00000000..2990a16f Binary files /dev/null and b/public/textures/immersiveengineering/speedloader.png differ diff --git a/public/textures/immersiveengineering/stairs_alu_scaffolding_grate_top.png b/public/textures/immersiveengineering/stairs_alu_scaffolding_grate_top.png new file mode 100644 index 00000000..dd9e2d2e Binary files /dev/null and b/public/textures/immersiveengineering/stairs_alu_scaffolding_grate_top.png differ diff --git a/public/textures/immersiveengineering/stairs_alu_scaffolding_standard.png b/public/textures/immersiveengineering/stairs_alu_scaffolding_standard.png new file mode 100644 index 00000000..0db07231 Binary files /dev/null and b/public/textures/immersiveengineering/stairs_alu_scaffolding_standard.png differ diff --git a/public/textures/immersiveengineering/stairs_alu_scaffolding_wooden_top.png b/public/textures/immersiveengineering/stairs_alu_scaffolding_wooden_top.png new file mode 100644 index 00000000..27c5692e Binary files /dev/null and b/public/textures/immersiveengineering/stairs_alu_scaffolding_wooden_top.png differ diff --git a/public/textures/immersiveengineering/stairs_clinker_brick.png b/public/textures/immersiveengineering/stairs_clinker_brick.png new file mode 100644 index 00000000..1b421fb9 Binary files /dev/null and b/public/textures/immersiveengineering/stairs_clinker_brick.png differ diff --git a/public/textures/immersiveengineering/stairs_concrete.png b/public/textures/immersiveengineering/stairs_concrete.png new file mode 100644 index 00000000..062ab885 Binary files /dev/null and b/public/textures/immersiveengineering/stairs_concrete.png differ diff --git a/public/textures/immersiveengineering/stairs_concrete_brick.png b/public/textures/immersiveengineering/stairs_concrete_brick.png new file mode 100644 index 00000000..47a86e74 Binary files /dev/null and b/public/textures/immersiveengineering/stairs_concrete_brick.png differ diff --git a/public/textures/immersiveengineering/stairs_concrete_leaded.png b/public/textures/immersiveengineering/stairs_concrete_leaded.png new file mode 100644 index 00000000..e91fb825 Binary files /dev/null and b/public/textures/immersiveengineering/stairs_concrete_leaded.png differ diff --git a/public/textures/immersiveengineering/stairs_concrete_tile.png b/public/textures/immersiveengineering/stairs_concrete_tile.png new file mode 100644 index 00000000..5a768caf Binary files /dev/null and b/public/textures/immersiveengineering/stairs_concrete_tile.png differ diff --git a/public/textures/immersiveengineering/stairs_hempcrete.png b/public/textures/immersiveengineering/stairs_hempcrete.png new file mode 100644 index 00000000..adef5192 Binary files /dev/null and b/public/textures/immersiveengineering/stairs_hempcrete.png differ diff --git a/public/textures/immersiveengineering/stairs_hempcrete_brick.png b/public/textures/immersiveengineering/stairs_hempcrete_brick.png new file mode 100644 index 00000000..4b0e0618 Binary files /dev/null and b/public/textures/immersiveengineering/stairs_hempcrete_brick.png differ diff --git a/public/textures/immersiveengineering/stairs_slag_brick.png b/public/textures/immersiveengineering/stairs_slag_brick.png new file mode 100644 index 00000000..873f7821 Binary files /dev/null and b/public/textures/immersiveengineering/stairs_slag_brick.png differ diff --git a/public/textures/immersiveengineering/stairs_steel_scaffolding_grate_top.png b/public/textures/immersiveengineering/stairs_steel_scaffolding_grate_top.png new file mode 100644 index 00000000..400c4ea3 Binary files /dev/null and b/public/textures/immersiveengineering/stairs_steel_scaffolding_grate_top.png differ diff --git a/public/textures/immersiveengineering/stairs_steel_scaffolding_standard.png b/public/textures/immersiveengineering/stairs_steel_scaffolding_standard.png new file mode 100644 index 00000000..b29981f3 Binary files /dev/null and b/public/textures/immersiveengineering/stairs_steel_scaffolding_standard.png differ diff --git a/public/textures/immersiveengineering/stairs_steel_scaffolding_wooden_top.png b/public/textures/immersiveengineering/stairs_steel_scaffolding_wooden_top.png new file mode 100644 index 00000000..b88d326a Binary files /dev/null and b/public/textures/immersiveengineering/stairs_steel_scaffolding_wooden_top.png differ diff --git a/public/textures/immersiveengineering/stairs_treated_wood_horizontal.png b/public/textures/immersiveengineering/stairs_treated_wood_horizontal.png new file mode 100644 index 00000000..13d579cd Binary files /dev/null and b/public/textures/immersiveengineering/stairs_treated_wood_horizontal.png differ diff --git a/public/textures/immersiveengineering/stairs_treated_wood_packaged.png b/public/textures/immersiveengineering/stairs_treated_wood_packaged.png new file mode 100644 index 00000000..55779d93 Binary files /dev/null and b/public/textures/immersiveengineering/stairs_treated_wood_packaged.png differ diff --git a/public/textures/immersiveengineering/stairs_treated_wood_vertical.png b/public/textures/immersiveengineering/stairs_treated_wood_vertical.png new file mode 100644 index 00000000..f14b5d9f Binary files /dev/null and b/public/textures/immersiveengineering/stairs_treated_wood_vertical.png differ diff --git a/public/textures/immersiveengineering/steel_catwalk.png b/public/textures/immersiveengineering/steel_catwalk.png new file mode 100644 index 00000000..49c998e8 Binary files /dev/null and b/public/textures/immersiveengineering/steel_catwalk.png differ diff --git a/public/textures/immersiveengineering/steel_catwalk_stairs.png b/public/textures/immersiveengineering/steel_catwalk_stairs.png new file mode 100644 index 00000000..d982b050 Binary files /dev/null and b/public/textures/immersiveengineering/steel_catwalk_stairs.png differ diff --git a/public/textures/immersiveengineering/steel_door.png b/public/textures/immersiveengineering/steel_door.png new file mode 100644 index 00000000..d7074278 Binary files /dev/null and b/public/textures/immersiveengineering/steel_door.png differ diff --git a/public/textures/immersiveengineering/steel_fence.png b/public/textures/immersiveengineering/steel_fence.png new file mode 100644 index 00000000..3e8afe38 Binary files /dev/null and b/public/textures/immersiveengineering/steel_fence.png differ diff --git a/public/textures/immersiveengineering/steel_fence_gate.png b/public/textures/immersiveengineering/steel_fence_gate.png new file mode 100644 index 00000000..7534141a Binary files /dev/null and b/public/textures/immersiveengineering/steel_fence_gate.png differ diff --git a/public/textures/immersiveengineering/steel_hanging_sign.png b/public/textures/immersiveengineering/steel_hanging_sign.png new file mode 100644 index 00000000..af39e82c Binary files /dev/null and b/public/textures/immersiveengineering/steel_hanging_sign.png differ diff --git a/public/textures/immersiveengineering/steel_post.png b/public/textures/immersiveengineering/steel_post.png new file mode 100644 index 00000000..a1d88e3b Binary files /dev/null and b/public/textures/immersiveengineering/steel_post.png differ diff --git a/public/textures/immersiveengineering/steel_scaffolding_grate_top.png b/public/textures/immersiveengineering/steel_scaffolding_grate_top.png new file mode 100644 index 00000000..47c7fc3e Binary files /dev/null and b/public/textures/immersiveengineering/steel_scaffolding_grate_top.png differ diff --git a/public/textures/immersiveengineering/steel_scaffolding_standard.png b/public/textures/immersiveengineering/steel_scaffolding_standard.png new file mode 100644 index 00000000..76d531bc Binary files /dev/null and b/public/textures/immersiveengineering/steel_scaffolding_standard.png differ diff --git a/public/textures/immersiveengineering/steel_scaffolding_wooden_top.png b/public/textures/immersiveengineering/steel_scaffolding_wooden_top.png new file mode 100644 index 00000000..9a821e2f Binary files /dev/null and b/public/textures/immersiveengineering/steel_scaffolding_wooden_top.png differ diff --git a/public/textures/immersiveengineering/steel_sign.png b/public/textures/immersiveengineering/steel_sign.png new file mode 100644 index 00000000..ed963ddd Binary files /dev/null and b/public/textures/immersiveengineering/steel_sign.png differ diff --git a/public/textures/immersiveengineering/steel_slope.png b/public/textures/immersiveengineering/steel_slope.png new file mode 100644 index 00000000..a4db3932 Binary files /dev/null and b/public/textures/immersiveengineering/steel_slope.png differ diff --git a/public/textures/immersiveengineering/steel_trapdoor.png b/public/textures/immersiveengineering/steel_trapdoor.png new file mode 100644 index 00000000..4e80c1c5 Binary files /dev/null and b/public/textures/immersiveengineering/steel_trapdoor.png differ diff --git a/public/textures/immersiveengineering/steel_wallmount.png b/public/textures/immersiveengineering/steel_wallmount.png new file mode 100644 index 00000000..3d67e6fc Binary files /dev/null and b/public/textures/immersiveengineering/steel_wallmount.png differ diff --git a/public/textures/immersiveengineering/steel_window.png b/public/textures/immersiveengineering/steel_window.png new file mode 100644 index 00000000..7fb8d9ce Binary files /dev/null and b/public/textures/immersiveengineering/steel_window.png differ diff --git a/public/textures/immersiveengineering/stick_aluminum.png b/public/textures/immersiveengineering/stick_aluminum.png new file mode 100644 index 00000000..46c9808e Binary files /dev/null and b/public/textures/immersiveengineering/stick_aluminum.png differ diff --git a/public/textures/immersiveengineering/stick_iron.png b/public/textures/immersiveengineering/stick_iron.png new file mode 100644 index 00000000..eda4cc50 Binary files /dev/null and b/public/textures/immersiveengineering/stick_iron.png differ diff --git a/public/textures/immersiveengineering/stick_netherite.png b/public/textures/immersiveengineering/stick_netherite.png new file mode 100644 index 00000000..1c0115bd Binary files /dev/null and b/public/textures/immersiveengineering/stick_netherite.png differ diff --git a/public/textures/immersiveengineering/stick_steel.png b/public/textures/immersiveengineering/stick_steel.png new file mode 100644 index 00000000..5e3250eb Binary files /dev/null and b/public/textures/immersiveengineering/stick_steel.png differ diff --git a/public/textures/immersiveengineering/stick_treated.png b/public/textures/immersiveengineering/stick_treated.png new file mode 100644 index 00000000..cd533cdf Binary files /dev/null and b/public/textures/immersiveengineering/stick_treated.png differ diff --git a/public/textures/immersiveengineering/storage_aluminum.png b/public/textures/immersiveengineering/storage_aluminum.png new file mode 100644 index 00000000..86f350d7 Binary files /dev/null and b/public/textures/immersiveengineering/storage_aluminum.png differ diff --git a/public/textures/immersiveengineering/storage_constantan.png b/public/textures/immersiveengineering/storage_constantan.png new file mode 100644 index 00000000..d0577850 Binary files /dev/null and b/public/textures/immersiveengineering/storage_constantan.png differ diff --git a/public/textures/immersiveengineering/storage_electrum.png b/public/textures/immersiveengineering/storage_electrum.png new file mode 100644 index 00000000..5eafba46 Binary files /dev/null and b/public/textures/immersiveengineering/storage_electrum.png differ diff --git a/public/textures/immersiveengineering/storage_lead.png b/public/textures/immersiveengineering/storage_lead.png new file mode 100644 index 00000000..d274aa3a Binary files /dev/null and b/public/textures/immersiveengineering/storage_lead.png differ diff --git a/public/textures/immersiveengineering/storage_nickel.png b/public/textures/immersiveengineering/storage_nickel.png new file mode 100644 index 00000000..1547c102 Binary files /dev/null and b/public/textures/immersiveengineering/storage_nickel.png differ diff --git a/public/textures/immersiveengineering/storage_silver.png b/public/textures/immersiveengineering/storage_silver.png new file mode 100644 index 00000000..9cebeb35 Binary files /dev/null and b/public/textures/immersiveengineering/storage_silver.png differ diff --git a/public/textures/immersiveengineering/storage_steel.png b/public/textures/immersiveengineering/storage_steel.png new file mode 100644 index 00000000..2461bff8 Binary files /dev/null and b/public/textures/immersiveengineering/storage_steel.png differ diff --git a/public/textures/immersiveengineering/storage_uranium.png b/public/textures/immersiveengineering/storage_uranium.png new file mode 100644 index 00000000..2d191eb7 Binary files /dev/null and b/public/textures/immersiveengineering/storage_uranium.png differ diff --git a/public/textures/immersiveengineering/strip_curtain.png b/public/textures/immersiveengineering/strip_curtain.png new file mode 100644 index 00000000..17e2d7ef Binary files /dev/null and b/public/textures/immersiveengineering/strip_curtain.png differ diff --git a/public/textures/immersiveengineering/survey_tools.png b/public/textures/immersiveengineering/survey_tools.png new file mode 100644 index 00000000..53379085 Binary files /dev/null and b/public/textures/immersiveengineering/survey_tools.png differ diff --git a/public/textures/immersiveengineering/sword_steel.png b/public/textures/immersiveengineering/sword_steel.png new file mode 100644 index 00000000..6c3fce71 Binary files /dev/null and b/public/textures/immersiveengineering/sword_steel.png differ diff --git a/public/textures/immersiveengineering/tesla_coil.png b/public/textures/immersiveengineering/tesla_coil.png new file mode 100644 index 00000000..787c41d4 Binary files /dev/null and b/public/textures/immersiveengineering/tesla_coil.png differ diff --git a/public/textures/immersiveengineering/thermoelectric_generator.png b/public/textures/immersiveengineering/thermoelectric_generator.png new file mode 100644 index 00000000..6ba481fc Binary files /dev/null and b/public/textures/immersiveengineering/thermoelectric_generator.png differ diff --git a/public/textures/immersiveengineering/toolbox.png b/public/textures/immersiveengineering/toolbox.png new file mode 100644 index 00000000..828008ba Binary files /dev/null and b/public/textures/immersiveengineering/toolbox.png differ diff --git a/public/textures/immersiveengineering/toolupgrade_buzzsaw_spareblades.png b/public/textures/immersiveengineering/toolupgrade_buzzsaw_spareblades.png new file mode 100644 index 00000000..f4323049 Binary files /dev/null and b/public/textures/immersiveengineering/toolupgrade_buzzsaw_spareblades.png differ diff --git a/public/textures/immersiveengineering/toolupgrade_chemthrower_focus.png b/public/textures/immersiveengineering/toolupgrade_chemthrower_focus.png new file mode 100644 index 00000000..f6a9bbef Binary files /dev/null and b/public/textures/immersiveengineering/toolupgrade_chemthrower_focus.png differ diff --git a/public/textures/immersiveengineering/toolupgrade_chemthrower_multitank.png b/public/textures/immersiveengineering/toolupgrade_chemthrower_multitank.png new file mode 100644 index 00000000..31061dd5 Binary files /dev/null and b/public/textures/immersiveengineering/toolupgrade_chemthrower_multitank.png differ diff --git a/public/textures/immersiveengineering/toolupgrade_drill_capacity.png b/public/textures/immersiveengineering/toolupgrade_drill_capacity.png new file mode 100644 index 00000000..f8e672fa Binary files /dev/null and b/public/textures/immersiveengineering/toolupgrade_drill_capacity.png differ diff --git a/public/textures/immersiveengineering/toolupgrade_drill_damage.png b/public/textures/immersiveengineering/toolupgrade_drill_damage.png new file mode 100644 index 00000000..c1454d4d Binary files /dev/null and b/public/textures/immersiveengineering/toolupgrade_drill_damage.png differ diff --git a/public/textures/immersiveengineering/toolupgrade_drill_fortune.png b/public/textures/immersiveengineering/toolupgrade_drill_fortune.png new file mode 100644 index 00000000..0e6c3d7e Binary files /dev/null and b/public/textures/immersiveengineering/toolupgrade_drill_fortune.png differ diff --git a/public/textures/immersiveengineering/toolupgrade_drill_lube.png b/public/textures/immersiveengineering/toolupgrade_drill_lube.png new file mode 100644 index 00000000..22a653b8 Binary files /dev/null and b/public/textures/immersiveengineering/toolupgrade_drill_lube.png differ diff --git a/public/textures/immersiveengineering/toolupgrade_drill_waterproof.png b/public/textures/immersiveengineering/toolupgrade_drill_waterproof.png new file mode 100644 index 00000000..d60f4fe2 Binary files /dev/null and b/public/textures/immersiveengineering/toolupgrade_drill_waterproof.png differ diff --git a/public/textures/immersiveengineering/toolupgrade_powerpack_antenna.png b/public/textures/immersiveengineering/toolupgrade_powerpack_antenna.png new file mode 100644 index 00000000..89ccceec Binary files /dev/null and b/public/textures/immersiveengineering/toolupgrade_powerpack_antenna.png differ diff --git a/public/textures/immersiveengineering/toolupgrade_powerpack_induction.png b/public/textures/immersiveengineering/toolupgrade_powerpack_induction.png new file mode 100644 index 00000000..246f56de Binary files /dev/null and b/public/textures/immersiveengineering/toolupgrade_powerpack_induction.png differ diff --git a/public/textures/immersiveengineering/toolupgrade_powerpack_magnet.png b/public/textures/immersiveengineering/toolupgrade_powerpack_magnet.png new file mode 100644 index 00000000..23dd68e9 Binary files /dev/null and b/public/textures/immersiveengineering/toolupgrade_powerpack_magnet.png differ diff --git a/public/textures/immersiveengineering/toolupgrade_powerpack_tesla.png b/public/textures/immersiveengineering/toolupgrade_powerpack_tesla.png new file mode 100644 index 00000000..4ac70e79 Binary files /dev/null and b/public/textures/immersiveengineering/toolupgrade_powerpack_tesla.png differ diff --git a/public/textures/immersiveengineering/toolupgrade_railgun_capacitors.png b/public/textures/immersiveengineering/toolupgrade_railgun_capacitors.png new file mode 100644 index 00000000..465addf6 Binary files /dev/null and b/public/textures/immersiveengineering/toolupgrade_railgun_capacitors.png differ diff --git a/public/textures/immersiveengineering/toolupgrade_railgun_scope.png b/public/textures/immersiveengineering/toolupgrade_railgun_scope.png new file mode 100644 index 00000000..11d57a0b Binary files /dev/null and b/public/textures/immersiveengineering/toolupgrade_railgun_scope.png differ diff --git a/public/textures/immersiveengineering/toolupgrade_revolver_bayonet.png b/public/textures/immersiveengineering/toolupgrade_revolver_bayonet.png new file mode 100644 index 00000000..fd14d531 Binary files /dev/null and b/public/textures/immersiveengineering/toolupgrade_revolver_bayonet.png differ diff --git a/public/textures/immersiveengineering/toolupgrade_revolver_electro.png b/public/textures/immersiveengineering/toolupgrade_revolver_electro.png new file mode 100644 index 00000000..365fde1b Binary files /dev/null and b/public/textures/immersiveengineering/toolupgrade_revolver_electro.png differ diff --git a/public/textures/immersiveengineering/toolupgrade_revolver_magazine.png b/public/textures/immersiveengineering/toolupgrade_revolver_magazine.png new file mode 100644 index 00000000..e59d2b14 Binary files /dev/null and b/public/textures/immersiveengineering/toolupgrade_revolver_magazine.png differ diff --git a/public/textures/immersiveengineering/toolupgrade_shield_flash.png b/public/textures/immersiveengineering/toolupgrade_shield_flash.png new file mode 100644 index 00000000..d15c2fb3 Binary files /dev/null and b/public/textures/immersiveengineering/toolupgrade_shield_flash.png differ diff --git a/public/textures/immersiveengineering/toolupgrade_shield_magnet.png b/public/textures/immersiveengineering/toolupgrade_shield_magnet.png new file mode 100644 index 00000000..940acb25 Binary files /dev/null and b/public/textures/immersiveengineering/toolupgrade_shield_magnet.png differ diff --git a/public/textures/immersiveengineering/toolupgrade_shield_shock.png b/public/textures/immersiveengineering/toolupgrade_shield_shock.png new file mode 100644 index 00000000..6d83a087 Binary files /dev/null and b/public/textures/immersiveengineering/toolupgrade_shield_shock.png differ diff --git a/public/textures/immersiveengineering/toolupgrade_skyhook_insulation.png b/public/textures/immersiveengineering/toolupgrade_skyhook_insulation.png new file mode 100644 index 00000000..472fa40f Binary files /dev/null and b/public/textures/immersiveengineering/toolupgrade_skyhook_insulation.png differ diff --git a/public/textures/immersiveengineering/toolupgrade_skyhook_mace.png b/public/textures/immersiveengineering/toolupgrade_skyhook_mace.png new file mode 100644 index 00000000..13936ce6 Binary files /dev/null and b/public/textures/immersiveengineering/toolupgrade_skyhook_mace.png differ diff --git a/public/textures/immersiveengineering/toolupgrade_skyhook_slope.png b/public/textures/immersiveengineering/toolupgrade_skyhook_slope.png new file mode 100644 index 00000000..d37936c6 Binary files /dev/null and b/public/textures/immersiveengineering/toolupgrade_skyhook_slope.png differ diff --git a/public/textures/immersiveengineering/transformer.png b/public/textures/immersiveengineering/transformer.png new file mode 100644 index 00000000..227dbf81 Binary files /dev/null and b/public/textures/immersiveengineering/transformer.png differ diff --git a/public/textures/immersiveengineering/transformer_hv.png b/public/textures/immersiveengineering/transformer_hv.png new file mode 100644 index 00000000..c7f81aed Binary files /dev/null and b/public/textures/immersiveengineering/transformer_hv.png differ diff --git a/public/textures/immersiveengineering/treated_catwalk.png b/public/textures/immersiveengineering/treated_catwalk.png new file mode 100644 index 00000000..2b8d97d1 Binary files /dev/null and b/public/textures/immersiveengineering/treated_catwalk.png differ diff --git a/public/textures/immersiveengineering/treated_catwalk_stairs.png b/public/textures/immersiveengineering/treated_catwalk_stairs.png new file mode 100644 index 00000000..4f9e643e Binary files /dev/null and b/public/textures/immersiveengineering/treated_catwalk_stairs.png differ diff --git a/public/textures/immersiveengineering/treated_door.png b/public/textures/immersiveengineering/treated_door.png new file mode 100644 index 00000000..1e0e0608 Binary files /dev/null and b/public/textures/immersiveengineering/treated_door.png differ diff --git a/public/textures/immersiveengineering/treated_door_framed.png b/public/textures/immersiveengineering/treated_door_framed.png new file mode 100644 index 00000000..f240fd10 Binary files /dev/null and b/public/textures/immersiveengineering/treated_door_framed.png differ diff --git a/public/textures/immersiveengineering/treated_fence.png b/public/textures/immersiveengineering/treated_fence.png new file mode 100644 index 00000000..3bfabab2 Binary files /dev/null and b/public/textures/immersiveengineering/treated_fence.png differ diff --git a/public/textures/immersiveengineering/treated_fence_gate.png b/public/textures/immersiveengineering/treated_fence_gate.png new file mode 100644 index 00000000..73f3b9a1 Binary files /dev/null and b/public/textures/immersiveengineering/treated_fence_gate.png differ diff --git a/public/textures/immersiveengineering/treated_post.png b/public/textures/immersiveengineering/treated_post.png new file mode 100644 index 00000000..60281e08 Binary files /dev/null and b/public/textures/immersiveengineering/treated_post.png differ diff --git a/public/textures/immersiveengineering/treated_scaffold.png b/public/textures/immersiveengineering/treated_scaffold.png new file mode 100644 index 00000000..b477c87d Binary files /dev/null and b/public/textures/immersiveengineering/treated_scaffold.png differ diff --git a/public/textures/immersiveengineering/treated_trapdoor.png b/public/textures/immersiveengineering/treated_trapdoor.png new file mode 100644 index 00000000..488ee20b Binary files /dev/null and b/public/textures/immersiveengineering/treated_trapdoor.png differ diff --git a/public/textures/immersiveengineering/treated_trapdoor_framed.png b/public/textures/immersiveengineering/treated_trapdoor_framed.png new file mode 100644 index 00000000..a5d40023 Binary files /dev/null and b/public/textures/immersiveengineering/treated_trapdoor_framed.png differ diff --git a/public/textures/immersiveengineering/treated_wallmount.png b/public/textures/immersiveengineering/treated_wallmount.png new file mode 100644 index 00000000..dfd5e7a6 Binary files /dev/null and b/public/textures/immersiveengineering/treated_wallmount.png differ diff --git a/public/textures/immersiveengineering/treated_window.png b/public/textures/immersiveengineering/treated_window.png new file mode 100644 index 00000000..55743ac1 Binary files /dev/null and b/public/textures/immersiveengineering/treated_window.png differ diff --git a/public/textures/immersiveengineering/treated_wood_hanging_sign.png b/public/textures/immersiveengineering/treated_wood_hanging_sign.png new file mode 100644 index 00000000..bfae5d39 Binary files /dev/null and b/public/textures/immersiveengineering/treated_wood_hanging_sign.png differ diff --git a/public/textures/immersiveengineering/treated_wood_horizontal.png b/public/textures/immersiveengineering/treated_wood_horizontal.png new file mode 100644 index 00000000..93ead853 Binary files /dev/null and b/public/textures/immersiveengineering/treated_wood_horizontal.png differ diff --git a/public/textures/immersiveengineering/treated_wood_packaged.png b/public/textures/immersiveengineering/treated_wood_packaged.png new file mode 100644 index 00000000..a27794f2 Binary files /dev/null and b/public/textures/immersiveengineering/treated_wood_packaged.png differ diff --git a/public/textures/immersiveengineering/treated_wood_sign.png b/public/textures/immersiveengineering/treated_wood_sign.png new file mode 100644 index 00000000..b201e677 Binary files /dev/null and b/public/textures/immersiveengineering/treated_wood_sign.png differ diff --git a/public/textures/immersiveengineering/treated_wood_vertical.png b/public/textures/immersiveengineering/treated_wood_vertical.png new file mode 100644 index 00000000..44412c2f Binary files /dev/null and b/public/textures/immersiveengineering/treated_wood_vertical.png differ diff --git a/public/textures/immersiveengineering/turntable.png b/public/textures/immersiveengineering/turntable.png new file mode 100644 index 00000000..b3c4d838 Binary files /dev/null and b/public/textures/immersiveengineering/turntable.png differ diff --git a/public/textures/immersiveengineering/turret_chem.png b/public/textures/immersiveengineering/turret_chem.png new file mode 100644 index 00000000..6225b7b5 Binary files /dev/null and b/public/textures/immersiveengineering/turret_chem.png differ diff --git a/public/textures/immersiveengineering/turret_gun.png b/public/textures/immersiveengineering/turret_gun.png new file mode 100644 index 00000000..45852196 Binary files /dev/null and b/public/textures/immersiveengineering/turret_gun.png differ diff --git a/public/textures/immersiveengineering/voltmeter.png b/public/textures/immersiveengineering/voltmeter.png new file mode 100644 index 00000000..862f4f76 Binary files /dev/null and b/public/textures/immersiveengineering/voltmeter.png differ diff --git a/public/textures/immersiveengineering/wall_clinker_brick.png b/public/textures/immersiveengineering/wall_clinker_brick.png new file mode 100644 index 00000000..072e7e69 Binary files /dev/null and b/public/textures/immersiveengineering/wall_clinker_brick.png differ diff --git a/public/textures/immersiveengineering/wall_concrete.png b/public/textures/immersiveengineering/wall_concrete.png new file mode 100644 index 00000000..adc904d0 Binary files /dev/null and b/public/textures/immersiveengineering/wall_concrete.png differ diff --git a/public/textures/immersiveengineering/wall_concrete_brick.png b/public/textures/immersiveengineering/wall_concrete_brick.png new file mode 100644 index 00000000..43bf4695 Binary files /dev/null and b/public/textures/immersiveengineering/wall_concrete_brick.png differ diff --git a/public/textures/immersiveengineering/wall_concrete_leaded.png b/public/textures/immersiveengineering/wall_concrete_leaded.png new file mode 100644 index 00000000..89e058ff Binary files /dev/null and b/public/textures/immersiveengineering/wall_concrete_leaded.png differ diff --git a/public/textures/immersiveengineering/wall_concrete_tile.png b/public/textures/immersiveengineering/wall_concrete_tile.png new file mode 100644 index 00000000..bfafda27 Binary files /dev/null and b/public/textures/immersiveengineering/wall_concrete_tile.png differ diff --git a/public/textures/immersiveengineering/wall_hempcrete.png b/public/textures/immersiveengineering/wall_hempcrete.png new file mode 100644 index 00000000..25ceb9f2 Binary files /dev/null and b/public/textures/immersiveengineering/wall_hempcrete.png differ diff --git a/public/textures/immersiveengineering/wall_hempcrete_brick.png b/public/textures/immersiveengineering/wall_hempcrete_brick.png new file mode 100644 index 00000000..9ba8d7b7 Binary files /dev/null and b/public/textures/immersiveengineering/wall_hempcrete_brick.png differ diff --git a/public/textures/immersiveengineering/wall_slag_brick.png b/public/textures/immersiveengineering/wall_slag_brick.png new file mode 100644 index 00000000..f9f83988 Binary files /dev/null and b/public/textures/immersiveengineering/wall_slag_brick.png differ diff --git a/public/textures/immersiveengineering/warning_sign_arrow_double_down.png b/public/textures/immersiveengineering/warning_sign_arrow_double_down.png new file mode 100644 index 00000000..e55bb731 Binary files /dev/null and b/public/textures/immersiveengineering/warning_sign_arrow_double_down.png differ diff --git a/public/textures/immersiveengineering/warning_sign_arrow_double_left.png b/public/textures/immersiveengineering/warning_sign_arrow_double_left.png new file mode 100644 index 00000000..9fd0ff4d Binary files /dev/null and b/public/textures/immersiveengineering/warning_sign_arrow_double_left.png differ diff --git a/public/textures/immersiveengineering/warning_sign_arrow_double_right.png b/public/textures/immersiveengineering/warning_sign_arrow_double_right.png new file mode 100644 index 00000000..7a494932 Binary files /dev/null and b/public/textures/immersiveengineering/warning_sign_arrow_double_right.png differ diff --git a/public/textures/immersiveengineering/warning_sign_arrow_double_up.png b/public/textures/immersiveengineering/warning_sign_arrow_double_up.png new file mode 100644 index 00000000..be6ee8e6 Binary files /dev/null and b/public/textures/immersiveengineering/warning_sign_arrow_double_up.png differ diff --git a/public/textures/immersiveengineering/warning_sign_arrow_down.png b/public/textures/immersiveengineering/warning_sign_arrow_down.png new file mode 100644 index 00000000..1395c498 Binary files /dev/null and b/public/textures/immersiveengineering/warning_sign_arrow_down.png differ diff --git a/public/textures/immersiveengineering/warning_sign_arrow_left.png b/public/textures/immersiveengineering/warning_sign_arrow_left.png new file mode 100644 index 00000000..12780439 Binary files /dev/null and b/public/textures/immersiveengineering/warning_sign_arrow_left.png differ diff --git a/public/textures/immersiveengineering/warning_sign_arrow_right.png b/public/textures/immersiveengineering/warning_sign_arrow_right.png new file mode 100644 index 00000000..8852c71e Binary files /dev/null and b/public/textures/immersiveengineering/warning_sign_arrow_right.png differ diff --git a/public/textures/immersiveengineering/warning_sign_arrow_up.png b/public/textures/immersiveengineering/warning_sign_arrow_up.png new file mode 100644 index 00000000..0bdfef53 Binary files /dev/null and b/public/textures/immersiveengineering/warning_sign_arrow_up.png differ diff --git a/public/textures/immersiveengineering/warning_sign_attention.png b/public/textures/immersiveengineering/warning_sign_attention.png new file mode 100644 index 00000000..60e5b2f1 Binary files /dev/null and b/public/textures/immersiveengineering/warning_sign_attention.png differ diff --git a/public/textures/immersiveengineering/warning_sign_cat.png b/public/textures/immersiveengineering/warning_sign_cat.png new file mode 100644 index 00000000..9d4bb40b Binary files /dev/null and b/public/textures/immersiveengineering/warning_sign_cat.png differ diff --git a/public/textures/immersiveengineering/warning_sign_cold.png b/public/textures/immersiveengineering/warning_sign_cold.png new file mode 100644 index 00000000..8487f2ef Binary files /dev/null and b/public/textures/immersiveengineering/warning_sign_cold.png differ diff --git a/public/textures/immersiveengineering/warning_sign_creeper.png b/public/textures/immersiveengineering/warning_sign_creeper.png new file mode 100644 index 00000000..d13b5aca Binary files /dev/null and b/public/textures/immersiveengineering/warning_sign_creeper.png differ diff --git a/public/textures/immersiveengineering/warning_sign_ear_defenders.png b/public/textures/immersiveengineering/warning_sign_ear_defenders.png new file mode 100644 index 00000000..9e4af671 Binary files /dev/null and b/public/textures/immersiveengineering/warning_sign_ear_defenders.png differ diff --git a/public/textures/immersiveengineering/warning_sign_electric.png b/public/textures/immersiveengineering/warning_sign_electric.png new file mode 100644 index 00000000..ff1b58cd Binary files /dev/null and b/public/textures/immersiveengineering/warning_sign_electric.png differ diff --git a/public/textures/immersiveengineering/warning_sign_falling.png b/public/textures/immersiveengineering/warning_sign_falling.png new file mode 100644 index 00000000..917a2290 Binary files /dev/null and b/public/textures/immersiveengineering/warning_sign_falling.png differ diff --git a/public/textures/immersiveengineering/warning_sign_fire.png b/public/textures/immersiveengineering/warning_sign_fire.png new file mode 100644 index 00000000..a36c2571 Binary files /dev/null and b/public/textures/immersiveengineering/warning_sign_fire.png differ diff --git a/public/textures/immersiveengineering/warning_sign_hot.png b/public/textures/immersiveengineering/warning_sign_hot.png new file mode 100644 index 00000000..a4d4b437 Binary files /dev/null and b/public/textures/immersiveengineering/warning_sign_hot.png differ diff --git a/public/textures/immersiveengineering/warning_sign_magnet.png b/public/textures/immersiveengineering/warning_sign_magnet.png new file mode 100644 index 00000000..089458ac Binary files /dev/null and b/public/textures/immersiveengineering/warning_sign_magnet.png differ diff --git a/public/textures/immersiveengineering/warning_sign_shrieker.png b/public/textures/immersiveengineering/warning_sign_shrieker.png new file mode 100644 index 00000000..e60b7172 Binary files /dev/null and b/public/textures/immersiveengineering/warning_sign_shrieker.png differ diff --git a/public/textures/immersiveengineering/warning_sign_sound.png b/public/textures/immersiveengineering/warning_sign_sound.png new file mode 100644 index 00000000..9ef7c6a4 Binary files /dev/null and b/public/textures/immersiveengineering/warning_sign_sound.png differ diff --git a/public/textures/immersiveengineering/warning_sign_turret.png b/public/textures/immersiveengineering/warning_sign_turret.png new file mode 100644 index 00000000..7a076e9e Binary files /dev/null and b/public/textures/immersiveengineering/warning_sign_turret.png differ diff --git a/public/textures/immersiveengineering/warning_sign_villager.png b/public/textures/immersiveengineering/warning_sign_villager.png new file mode 100644 index 00000000..cfc452cd Binary files /dev/null and b/public/textures/immersiveengineering/warning_sign_villager.png differ diff --git a/public/textures/immersiveengineering/warning_sign_warden.png b/public/textures/immersiveengineering/warning_sign_warden.png new file mode 100644 index 00000000..7c7f5a01 Binary files /dev/null and b/public/textures/immersiveengineering/warning_sign_warden.png differ diff --git a/public/textures/immersiveengineering/watermill.png b/public/textures/immersiveengineering/watermill.png new file mode 100644 index 00000000..d77fcd91 Binary files /dev/null and b/public/textures/immersiveengineering/watermill.png differ diff --git a/public/textures/immersiveengineering/waterwheel_segment.png b/public/textures/immersiveengineering/waterwheel_segment.png new file mode 100644 index 00000000..57810a10 Binary files /dev/null and b/public/textures/immersiveengineering/waterwheel_segment.png differ diff --git a/public/textures/immersiveengineering/windmill.png b/public/textures/immersiveengineering/windmill.png new file mode 100644 index 00000000..76fae1c1 Binary files /dev/null and b/public/textures/immersiveengineering/windmill.png differ diff --git a/public/textures/immersiveengineering/windmill_blade.png b/public/textures/immersiveengineering/windmill_blade.png new file mode 100644 index 00000000..f7c41401 Binary files /dev/null and b/public/textures/immersiveengineering/windmill_blade.png differ diff --git a/public/textures/immersiveengineering/windmill_sail.png b/public/textures/immersiveengineering/windmill_sail.png new file mode 100644 index 00000000..63e5f54a Binary files /dev/null and b/public/textures/immersiveengineering/windmill_sail.png differ diff --git a/public/textures/immersiveengineering/wire_aluminum.png b/public/textures/immersiveengineering/wire_aluminum.png new file mode 100644 index 00000000..e69dfe6f Binary files /dev/null and b/public/textures/immersiveengineering/wire_aluminum.png differ diff --git a/public/textures/immersiveengineering/wire_copper.png b/public/textures/immersiveengineering/wire_copper.png new file mode 100644 index 00000000..6d912855 Binary files /dev/null and b/public/textures/immersiveengineering/wire_copper.png differ diff --git a/public/textures/immersiveengineering/wire_electrum.png b/public/textures/immersiveengineering/wire_electrum.png new file mode 100644 index 00000000..0117dc97 Binary files /dev/null and b/public/textures/immersiveengineering/wire_electrum.png differ diff --git a/public/textures/immersiveengineering/wire_lead.png b/public/textures/immersiveengineering/wire_lead.png new file mode 100644 index 00000000..c2d36ca7 Binary files /dev/null and b/public/textures/immersiveengineering/wire_lead.png differ diff --git a/public/textures/immersiveengineering/wire_steel.png b/public/textures/immersiveengineering/wire_steel.png new file mode 100644 index 00000000..31fa4ca9 Binary files /dev/null and b/public/textures/immersiveengineering/wire_steel.png differ diff --git a/public/textures/immersiveengineering/wirecoil_copper.png b/public/textures/immersiveengineering/wirecoil_copper.png new file mode 100644 index 00000000..c57078aa Binary files /dev/null and b/public/textures/immersiveengineering/wirecoil_copper.png differ diff --git a/public/textures/immersiveengineering/wirecoil_copper_ins.png b/public/textures/immersiveengineering/wirecoil_copper_ins.png new file mode 100644 index 00000000..62b67b09 Binary files /dev/null and b/public/textures/immersiveengineering/wirecoil_copper_ins.png differ diff --git a/public/textures/immersiveengineering/wirecoil_electrum.png b/public/textures/immersiveengineering/wirecoil_electrum.png new file mode 100644 index 00000000..d2b5b103 Binary files /dev/null and b/public/textures/immersiveengineering/wirecoil_electrum.png differ diff --git a/public/textures/immersiveengineering/wirecoil_electrum_ins.png b/public/textures/immersiveengineering/wirecoil_electrum_ins.png new file mode 100644 index 00000000..f180e23c Binary files /dev/null and b/public/textures/immersiveengineering/wirecoil_electrum_ins.png differ diff --git a/public/textures/immersiveengineering/wirecoil_redstone.png b/public/textures/immersiveengineering/wirecoil_redstone.png new file mode 100644 index 00000000..cc54ad93 Binary files /dev/null and b/public/textures/immersiveengineering/wirecoil_redstone.png differ diff --git a/public/textures/immersiveengineering/wirecoil_steel.png b/public/textures/immersiveengineering/wirecoil_steel.png new file mode 100644 index 00000000..d510e1cc Binary files /dev/null and b/public/textures/immersiveengineering/wirecoil_steel.png differ diff --git a/public/textures/immersiveengineering/wirecoil_structure_rope.png b/public/textures/immersiveengineering/wirecoil_structure_rope.png new file mode 100644 index 00000000..61c06545 Binary files /dev/null and b/public/textures/immersiveengineering/wirecoil_structure_rope.png differ diff --git a/public/textures/immersiveengineering/wirecoil_structure_steel.png b/public/textures/immersiveengineering/wirecoil_structure_steel.png new file mode 100644 index 00000000..2b831a7f Binary files /dev/null and b/public/textures/immersiveengineering/wirecoil_structure_steel.png differ diff --git a/public/textures/immersiveengineering/wirecutter.png b/public/textures/immersiveengineering/wirecutter.png new file mode 100644 index 00000000..9ee93aad Binary files /dev/null and b/public/textures/immersiveengineering/wirecutter.png differ diff --git a/public/textures/immersiveengineering/wooden_barrel.png b/public/textures/immersiveengineering/wooden_barrel.png new file mode 100644 index 00000000..5821d6c3 Binary files /dev/null and b/public/textures/immersiveengineering/wooden_barrel.png differ diff --git a/public/textures/immersiveengineering/wooden_grip.png b/public/textures/immersiveengineering/wooden_grip.png new file mode 100644 index 00000000..b2e8048d Binary files /dev/null and b/public/textures/immersiveengineering/wooden_grip.png differ diff --git a/public/textures/immersiveengineering/workbench.png b/public/textures/immersiveengineering/workbench.png new file mode 100644 index 00000000..7c8c96e7 Binary files /dev/null and b/public/textures/immersiveengineering/workbench.png differ diff --git a/public/textures/iron_ender_chests/copper_ender_chest.png b/public/textures/iron_ender_chests/copper_ender_chest.png new file mode 100644 index 00000000..28df2a0f Binary files /dev/null and b/public/textures/iron_ender_chests/copper_ender_chest.png differ diff --git a/public/textures/iron_ender_chests/diamond_ender_chest.png b/public/textures/iron_ender_chests/diamond_ender_chest.png new file mode 100644 index 00000000..83b5fd34 Binary files /dev/null and b/public/textures/iron_ender_chests/diamond_ender_chest.png differ diff --git a/public/textures/iron_ender_chests/emerald_ender_chest.png b/public/textures/iron_ender_chests/emerald_ender_chest.png new file mode 100644 index 00000000..1432c380 Binary files /dev/null and b/public/textures/iron_ender_chests/emerald_ender_chest.png differ diff --git a/public/textures/iron_ender_chests/gold_ender_chest.png b/public/textures/iron_ender_chests/gold_ender_chest.png new file mode 100644 index 00000000..4f01f6dd Binary files /dev/null and b/public/textures/iron_ender_chests/gold_ender_chest.png differ diff --git a/public/textures/iron_ender_chests/iron_ender_chest.png b/public/textures/iron_ender_chests/iron_ender_chest.png new file mode 100644 index 00000000..300ff2f9 Binary files /dev/null and b/public/textures/iron_ender_chests/iron_ender_chest.png differ diff --git a/public/textures/iron_ender_chests/lapis_ender_chest.png b/public/textures/iron_ender_chests/lapis_ender_chest.png new file mode 100644 index 00000000..3351b606 Binary files /dev/null and b/public/textures/iron_ender_chests/lapis_ender_chest.png differ diff --git a/public/textures/iron_ender_chests/netherite_ender_chest.png b/public/textures/iron_ender_chests/netherite_ender_chest.png new file mode 100644 index 00000000..e8f91311 Binary files /dev/null and b/public/textures/iron_ender_chests/netherite_ender_chest.png differ diff --git a/public/textures/iron_ender_chests/redstone_ender_chest.png b/public/textures/iron_ender_chests/redstone_ender_chest.png new file mode 100644 index 00000000..28fdb5a2 Binary files /dev/null and b/public/textures/iron_ender_chests/redstone_ender_chest.png differ diff --git a/public/textures/ironchest/copper_chest.png b/public/textures/ironchest/copper_chest.png new file mode 100644 index 00000000..cd20f1ba Binary files /dev/null and b/public/textures/ironchest/copper_chest.png differ diff --git a/public/textures/ironchest/copper_to_iron_chest_upgrade.png b/public/textures/ironchest/copper_to_iron_chest_upgrade.png new file mode 100644 index 00000000..e0c26914 Binary files /dev/null and b/public/textures/ironchest/copper_to_iron_chest_upgrade.png differ diff --git a/public/textures/ironchest/crystal_chest.png b/public/textures/ironchest/crystal_chest.png new file mode 100644 index 00000000..7c7ffbfa Binary files /dev/null and b/public/textures/ironchest/crystal_chest.png differ diff --git a/public/textures/ironchest/diamond_chest.png b/public/textures/ironchest/diamond_chest.png new file mode 100644 index 00000000..26d5e4cd Binary files /dev/null and b/public/textures/ironchest/diamond_chest.png differ diff --git a/public/textures/ironchest/diamond_to_crystal_chest_upgrade.png b/public/textures/ironchest/diamond_to_crystal_chest_upgrade.png new file mode 100644 index 00000000..4fc1663e Binary files /dev/null and b/public/textures/ironchest/diamond_to_crystal_chest_upgrade.png differ diff --git a/public/textures/ironchest/diamond_to_obsidian_chest_upgrade.png b/public/textures/ironchest/diamond_to_obsidian_chest_upgrade.png new file mode 100644 index 00000000..741005ea Binary files /dev/null and b/public/textures/ironchest/diamond_to_obsidian_chest_upgrade.png differ diff --git a/public/textures/ironchest/dirt_chest.png b/public/textures/ironchest/dirt_chest.png new file mode 100644 index 00000000..22a283e3 Binary files /dev/null and b/public/textures/ironchest/dirt_chest.png differ diff --git a/public/textures/ironchest/gold_chest.png b/public/textures/ironchest/gold_chest.png new file mode 100644 index 00000000..62dded78 Binary files /dev/null and b/public/textures/ironchest/gold_chest.png differ diff --git a/public/textures/ironchest/gold_to_diamond_chest_upgrade.png b/public/textures/ironchest/gold_to_diamond_chest_upgrade.png new file mode 100644 index 00000000..b46b83f1 Binary files /dev/null and b/public/textures/ironchest/gold_to_diamond_chest_upgrade.png differ diff --git a/public/textures/ironchest/iron_chest.png b/public/textures/ironchest/iron_chest.png new file mode 100644 index 00000000..dc5e3b84 Binary files /dev/null and b/public/textures/ironchest/iron_chest.png differ diff --git a/public/textures/ironchest/iron_to_gold_chest_upgrade.png b/public/textures/ironchest/iron_to_gold_chest_upgrade.png new file mode 100644 index 00000000..92e02b58 Binary files /dev/null and b/public/textures/ironchest/iron_to_gold_chest_upgrade.png differ diff --git a/public/textures/ironchest/obsidian_chest.png b/public/textures/ironchest/obsidian_chest.png new file mode 100644 index 00000000..71c14e1a Binary files /dev/null and b/public/textures/ironchest/obsidian_chest.png differ diff --git a/public/textures/ironchest/trapped_copper_chest.png b/public/textures/ironchest/trapped_copper_chest.png new file mode 100644 index 00000000..95bcc58c Binary files /dev/null and b/public/textures/ironchest/trapped_copper_chest.png differ diff --git a/public/textures/ironchest/trapped_crystal_chest.png b/public/textures/ironchest/trapped_crystal_chest.png new file mode 100644 index 00000000..69f98aa6 Binary files /dev/null and b/public/textures/ironchest/trapped_crystal_chest.png differ diff --git a/public/textures/ironchest/trapped_diamond_chest.png b/public/textures/ironchest/trapped_diamond_chest.png new file mode 100644 index 00000000..68f5ce2f Binary files /dev/null and b/public/textures/ironchest/trapped_diamond_chest.png differ diff --git a/public/textures/ironchest/trapped_dirt_chest.png b/public/textures/ironchest/trapped_dirt_chest.png new file mode 100644 index 00000000..b929d3c7 Binary files /dev/null and b/public/textures/ironchest/trapped_dirt_chest.png differ diff --git a/public/textures/ironchest/trapped_gold_chest.png b/public/textures/ironchest/trapped_gold_chest.png new file mode 100644 index 00000000..f1207f9b Binary files /dev/null and b/public/textures/ironchest/trapped_gold_chest.png differ diff --git a/public/textures/ironchest/trapped_iron_chest.png b/public/textures/ironchest/trapped_iron_chest.png new file mode 100644 index 00000000..29f8077e Binary files /dev/null and b/public/textures/ironchest/trapped_iron_chest.png differ diff --git a/public/textures/ironchest/trapped_obsidian_chest.png b/public/textures/ironchest/trapped_obsidian_chest.png new file mode 100644 index 00000000..1c113669 Binary files /dev/null and b/public/textures/ironchest/trapped_obsidian_chest.png differ diff --git a/public/textures/ironchest/wood_to_copper_chest_upgrade.png b/public/textures/ironchest/wood_to_copper_chest_upgrade.png new file mode 100644 index 00000000..de5a1137 Binary files /dev/null and b/public/textures/ironchest/wood_to_copper_chest_upgrade.png differ diff --git a/public/textures/ironchest/wood_to_iron_chest_upgrade.png b/public/textures/ironchest/wood_to_iron_chest_upgrade.png new file mode 100644 index 00000000..68c23b88 Binary files /dev/null and b/public/textures/ironchest/wood_to_iron_chest_upgrade.png differ diff --git a/public/textures/luminous_monsters/cherry_skeleton_spawn_egg.png b/public/textures/luminous_monsters/cherry_skeleton_spawn_egg.png new file mode 100644 index 00000000..3c971419 Binary files /dev/null and b/public/textures/luminous_monsters/cherry_skeleton_spawn_egg.png differ diff --git a/public/textures/luminous_monsters/cherry_zombie_spawn_egg.png b/public/textures/luminous_monsters/cherry_zombie_spawn_egg.png new file mode 100644 index 00000000..bf76c95a Binary files /dev/null and b/public/textures/luminous_monsters/cherry_zombie_spawn_egg.png differ diff --git a/public/textures/luminous_monsters/crimson_walker_spawn_egg.png b/public/textures/luminous_monsters/crimson_walker_spawn_egg.png new file mode 100644 index 00000000..31ac5567 Binary files /dev/null and b/public/textures/luminous_monsters/crimson_walker_spawn_egg.png differ diff --git a/public/textures/luminous_monsters/dark_oak_skeleton_spawn_egg.png b/public/textures/luminous_monsters/dark_oak_skeleton_spawn_egg.png new file mode 100644 index 00000000..6865fafc Binary files /dev/null and b/public/textures/luminous_monsters/dark_oak_skeleton_spawn_egg.png differ diff --git a/public/textures/luminous_monsters/dark_oak_zombie_spawn_egg.png b/public/textures/luminous_monsters/dark_oak_zombie_spawn_egg.png new file mode 100644 index 00000000..9cc58cf1 Binary files /dev/null and b/public/textures/luminous_monsters/dark_oak_zombie_spawn_egg.png differ diff --git a/public/textures/luminous_monsters/glacial_skeleton_spawn_egg.png b/public/textures/luminous_monsters/glacial_skeleton_spawn_egg.png new file mode 100644 index 00000000..9a66bf06 Binary files /dev/null and b/public/textures/luminous_monsters/glacial_skeleton_spawn_egg.png differ diff --git a/public/textures/luminous_monsters/glacial_zombie_spawn_egg.png b/public/textures/luminous_monsters/glacial_zombie_spawn_egg.png new file mode 100644 index 00000000..94db224b Binary files /dev/null and b/public/textures/luminous_monsters/glacial_zombie_spawn_egg.png differ diff --git a/public/textures/luminous_monsters/hollow_spawn_egg.png b/public/textures/luminous_monsters/hollow_spawn_egg.png new file mode 100644 index 00000000..f5f1ccc8 Binary files /dev/null and b/public/textures/luminous_monsters/hollow_spawn_egg.png differ diff --git a/public/textures/luminous_monsters/miner_skeleton_spawn_egg.png b/public/textures/luminous_monsters/miner_skeleton_spawn_egg.png new file mode 100644 index 00000000..aaed654b Binary files /dev/null and b/public/textures/luminous_monsters/miner_skeleton_spawn_egg.png differ diff --git a/public/textures/luminous_monsters/miner_zombie_spawn_egg.png b/public/textures/luminous_monsters/miner_zombie_spawn_egg.png new file mode 100644 index 00000000..f7b6b292 Binary files /dev/null and b/public/textures/luminous_monsters/miner_zombie_spawn_egg.png differ diff --git a/public/textures/luminous_monsters/revenant_spawn_egg.png b/public/textures/luminous_monsters/revenant_spawn_egg.png new file mode 100644 index 00000000..2d3f4c73 Binary files /dev/null and b/public/textures/luminous_monsters/revenant_spawn_egg.png differ diff --git a/public/textures/luminous_monsters/savanna_skeleton_spawn_egg.png b/public/textures/luminous_monsters/savanna_skeleton_spawn_egg.png new file mode 100644 index 00000000..3e4c6ee3 Binary files /dev/null and b/public/textures/luminous_monsters/savanna_skeleton_spawn_egg.png differ diff --git a/public/textures/luminous_monsters/savanna_zombie_spawn_egg.png b/public/textures/luminous_monsters/savanna_zombie_spawn_egg.png new file mode 100644 index 00000000..3962fe51 Binary files /dev/null and b/public/textures/luminous_monsters/savanna_zombie_spawn_egg.png differ diff --git a/public/textures/luminous_monsters/sunken_spawn_egg.png b/public/textures/luminous_monsters/sunken_spawn_egg.png new file mode 100644 index 00000000..0e75b9cb Binary files /dev/null and b/public/textures/luminous_monsters/sunken_spawn_egg.png differ diff --git a/public/textures/luminous_monsters/swamp_skeleton_spawn_egg.png b/public/textures/luminous_monsters/swamp_skeleton_spawn_egg.png new file mode 100644 index 00000000..ef0cd449 Binary files /dev/null and b/public/textures/luminous_monsters/swamp_skeleton_spawn_egg.png differ diff --git a/public/textures/luminous_monsters/swamp_zombie_spawn_egg.png b/public/textures/luminous_monsters/swamp_zombie_spawn_egg.png new file mode 100644 index 00000000..0ebc1634 Binary files /dev/null and b/public/textures/luminous_monsters/swamp_zombie_spawn_egg.png differ diff --git a/public/textures/luminoustag/decorative_tag.png b/public/textures/luminoustag/decorative_tag.png new file mode 100644 index 00000000..bdb49597 Binary files /dev/null and b/public/textures/luminoustag/decorative_tag.png differ diff --git a/public/textures/mcwbridges/acacia_bridge_pier.png b/public/textures/mcwbridges/acacia_bridge_pier.png new file mode 100644 index 00000000..97480700 Binary files /dev/null and b/public/textures/mcwbridges/acacia_bridge_pier.png differ diff --git a/public/textures/mcwbridges/acacia_log_bridge_middle.png b/public/textures/mcwbridges/acacia_log_bridge_middle.png new file mode 100644 index 00000000..e3244926 Binary files /dev/null and b/public/textures/mcwbridges/acacia_log_bridge_middle.png differ diff --git a/public/textures/mcwbridges/acacia_log_bridge_stair.png b/public/textures/mcwbridges/acacia_log_bridge_stair.png new file mode 100644 index 00000000..fbf71188 Binary files /dev/null and b/public/textures/mcwbridges/acacia_log_bridge_stair.png differ diff --git a/public/textures/mcwbridges/acacia_rail_bridge.png b/public/textures/mcwbridges/acacia_rail_bridge.png new file mode 100644 index 00000000..20c218dc Binary files /dev/null and b/public/textures/mcwbridges/acacia_rail_bridge.png differ diff --git a/public/textures/mcwbridges/acacia_rope_bridge_stair.png b/public/textures/mcwbridges/acacia_rope_bridge_stair.png new file mode 100644 index 00000000..d9a1ce32 Binary files /dev/null and b/public/textures/mcwbridges/acacia_rope_bridge_stair.png differ diff --git a/public/textures/mcwbridges/andesite_bridge.png b/public/textures/mcwbridges/andesite_bridge.png new file mode 100644 index 00000000..6d0b48d9 Binary files /dev/null and b/public/textures/mcwbridges/andesite_bridge.png differ diff --git a/public/textures/mcwbridges/andesite_bridge_pier.png b/public/textures/mcwbridges/andesite_bridge_pier.png new file mode 100644 index 00000000..bf4a8274 Binary files /dev/null and b/public/textures/mcwbridges/andesite_bridge_pier.png differ diff --git a/public/textures/mcwbridges/andesite_bridge_stair.png b/public/textures/mcwbridges/andesite_bridge_stair.png new file mode 100644 index 00000000..eb552b84 Binary files /dev/null and b/public/textures/mcwbridges/andesite_bridge_stair.png differ diff --git a/public/textures/mcwbridges/asian_red_bridge.png b/public/textures/mcwbridges/asian_red_bridge.png new file mode 100644 index 00000000..5977e100 Binary files /dev/null and b/public/textures/mcwbridges/asian_red_bridge.png differ diff --git a/public/textures/mcwbridges/asian_red_bridge_pier.png b/public/textures/mcwbridges/asian_red_bridge_pier.png new file mode 100644 index 00000000..a64c2c4e Binary files /dev/null and b/public/textures/mcwbridges/asian_red_bridge_pier.png differ diff --git a/public/textures/mcwbridges/asian_red_bridge_stair.png b/public/textures/mcwbridges/asian_red_bridge_stair.png new file mode 100644 index 00000000..5e18bab6 Binary files /dev/null and b/public/textures/mcwbridges/asian_red_bridge_stair.png differ diff --git a/public/textures/mcwbridges/balustrade_andesite_bridge.png b/public/textures/mcwbridges/balustrade_andesite_bridge.png new file mode 100644 index 00000000..4b87dc3c Binary files /dev/null and b/public/textures/mcwbridges/balustrade_andesite_bridge.png differ diff --git a/public/textures/mcwbridges/balustrade_blackstone_bridge.png b/public/textures/mcwbridges/balustrade_blackstone_bridge.png new file mode 100644 index 00000000..3dcc306d Binary files /dev/null and b/public/textures/mcwbridges/balustrade_blackstone_bridge.png differ diff --git a/public/textures/mcwbridges/balustrade_bricks_bridge.png b/public/textures/mcwbridges/balustrade_bricks_bridge.png new file mode 100644 index 00000000..5884a99e Binary files /dev/null and b/public/textures/mcwbridges/balustrade_bricks_bridge.png differ diff --git a/public/textures/mcwbridges/balustrade_cobblestone_bridge.png b/public/textures/mcwbridges/balustrade_cobblestone_bridge.png new file mode 100644 index 00000000..16ecbb4d Binary files /dev/null and b/public/textures/mcwbridges/balustrade_cobblestone_bridge.png differ diff --git a/public/textures/mcwbridges/balustrade_deepslate_bricks_bridge.png b/public/textures/mcwbridges/balustrade_deepslate_bricks_bridge.png new file mode 100644 index 00000000..6d41276a Binary files /dev/null and b/public/textures/mcwbridges/balustrade_deepslate_bricks_bridge.png differ diff --git a/public/textures/mcwbridges/balustrade_deepslate_tiles_bridge.png b/public/textures/mcwbridges/balustrade_deepslate_tiles_bridge.png new file mode 100644 index 00000000..9ba8e385 Binary files /dev/null and b/public/textures/mcwbridges/balustrade_deepslate_tiles_bridge.png differ diff --git a/public/textures/mcwbridges/balustrade_diorite_bridge.png b/public/textures/mcwbridges/balustrade_diorite_bridge.png new file mode 100644 index 00000000..9bda9a19 Binary files /dev/null and b/public/textures/mcwbridges/balustrade_diorite_bridge.png differ diff --git a/public/textures/mcwbridges/balustrade_end_stone_bricks_bridge.png b/public/textures/mcwbridges/balustrade_end_stone_bricks_bridge.png new file mode 100644 index 00000000..3bbb4ecf Binary files /dev/null and b/public/textures/mcwbridges/balustrade_end_stone_bricks_bridge.png differ diff --git a/public/textures/mcwbridges/balustrade_granite_bridge.png b/public/textures/mcwbridges/balustrade_granite_bridge.png new file mode 100644 index 00000000..0f062827 Binary files /dev/null and b/public/textures/mcwbridges/balustrade_granite_bridge.png differ diff --git a/public/textures/mcwbridges/balustrade_mossy_cobblestone_bridge.png b/public/textures/mcwbridges/balustrade_mossy_cobblestone_bridge.png new file mode 100644 index 00000000..a974599e Binary files /dev/null and b/public/textures/mcwbridges/balustrade_mossy_cobblestone_bridge.png differ diff --git a/public/textures/mcwbridges/balustrade_mossy_stone_bricks_bridge.png b/public/textures/mcwbridges/balustrade_mossy_stone_bricks_bridge.png new file mode 100644 index 00000000..1460a02f Binary files /dev/null and b/public/textures/mcwbridges/balustrade_mossy_stone_bricks_bridge.png differ diff --git a/public/textures/mcwbridges/balustrade_mud_bricks_bridge.png b/public/textures/mcwbridges/balustrade_mud_bricks_bridge.png new file mode 100644 index 00000000..0d8d36ea Binary files /dev/null and b/public/textures/mcwbridges/balustrade_mud_bricks_bridge.png differ diff --git a/public/textures/mcwbridges/balustrade_nether_bricks_bridge.png b/public/textures/mcwbridges/balustrade_nether_bricks_bridge.png new file mode 100644 index 00000000..ed712657 Binary files /dev/null and b/public/textures/mcwbridges/balustrade_nether_bricks_bridge.png differ diff --git a/public/textures/mcwbridges/balustrade_orange_sandstone_bridge.png b/public/textures/mcwbridges/balustrade_orange_sandstone_bridge.png new file mode 100644 index 00000000..13c3aa3f Binary files /dev/null and b/public/textures/mcwbridges/balustrade_orange_sandstone_bridge.png differ diff --git a/public/textures/mcwbridges/balustrade_prismarine_bricks_bridge.png b/public/textures/mcwbridges/balustrade_prismarine_bricks_bridge.png new file mode 100644 index 00000000..0873d19d Binary files /dev/null and b/public/textures/mcwbridges/balustrade_prismarine_bricks_bridge.png differ diff --git a/public/textures/mcwbridges/balustrade_sandstone_bridge.png b/public/textures/mcwbridges/balustrade_sandstone_bridge.png new file mode 100644 index 00000000..8b22d6b6 Binary files /dev/null and b/public/textures/mcwbridges/balustrade_sandstone_bridge.png differ diff --git a/public/textures/mcwbridges/balustrade_stone_bricks_bridge.png b/public/textures/mcwbridges/balustrade_stone_bricks_bridge.png new file mode 100644 index 00000000..8eca174e Binary files /dev/null and b/public/textures/mcwbridges/balustrade_stone_bricks_bridge.png differ diff --git a/public/textures/mcwbridges/bamboo_bridge.png b/public/textures/mcwbridges/bamboo_bridge.png new file mode 100644 index 00000000..5f72234e Binary files /dev/null and b/public/textures/mcwbridges/bamboo_bridge.png differ diff --git a/public/textures/mcwbridges/bamboo_bridge_pier.png b/public/textures/mcwbridges/bamboo_bridge_pier.png new file mode 100644 index 00000000..cbb6b755 Binary files /dev/null and b/public/textures/mcwbridges/bamboo_bridge_pier.png differ diff --git a/public/textures/mcwbridges/bamboo_bridge_stair.png b/public/textures/mcwbridges/bamboo_bridge_stair.png new file mode 100644 index 00000000..165d7c00 Binary files /dev/null and b/public/textures/mcwbridges/bamboo_bridge_stair.png differ diff --git a/public/textures/mcwbridges/birch_bridge_pier.png b/public/textures/mcwbridges/birch_bridge_pier.png new file mode 100644 index 00000000..1572784a Binary files /dev/null and b/public/textures/mcwbridges/birch_bridge_pier.png differ diff --git a/public/textures/mcwbridges/birch_log_bridge_middle.png b/public/textures/mcwbridges/birch_log_bridge_middle.png new file mode 100644 index 00000000..b2ae3470 Binary files /dev/null and b/public/textures/mcwbridges/birch_log_bridge_middle.png differ diff --git a/public/textures/mcwbridges/birch_log_bridge_stair.png b/public/textures/mcwbridges/birch_log_bridge_stair.png new file mode 100644 index 00000000..bd149764 Binary files /dev/null and b/public/textures/mcwbridges/birch_log_bridge_stair.png differ diff --git a/public/textures/mcwbridges/birch_rail_bridge.png b/public/textures/mcwbridges/birch_rail_bridge.png new file mode 100644 index 00000000..f3c1bd27 Binary files /dev/null and b/public/textures/mcwbridges/birch_rail_bridge.png differ diff --git a/public/textures/mcwbridges/birch_rope_bridge_stair.png b/public/textures/mcwbridges/birch_rope_bridge_stair.png new file mode 100644 index 00000000..8b615b89 Binary files /dev/null and b/public/textures/mcwbridges/birch_rope_bridge_stair.png differ diff --git a/public/textures/mcwbridges/blackstone_bridge.png b/public/textures/mcwbridges/blackstone_bridge.png new file mode 100644 index 00000000..a0fde42d Binary files /dev/null and b/public/textures/mcwbridges/blackstone_bridge.png differ diff --git a/public/textures/mcwbridges/blackstone_bridge_pier.png b/public/textures/mcwbridges/blackstone_bridge_pier.png new file mode 100644 index 00000000..ec9b0a81 Binary files /dev/null and b/public/textures/mcwbridges/blackstone_bridge_pier.png differ diff --git a/public/textures/mcwbridges/blackstone_bridge_stair.png b/public/textures/mcwbridges/blackstone_bridge_stair.png new file mode 100644 index 00000000..90958f43 Binary files /dev/null and b/public/textures/mcwbridges/blackstone_bridge_stair.png differ diff --git a/public/textures/mcwbridges/brick_bridge.png b/public/textures/mcwbridges/brick_bridge.png new file mode 100644 index 00000000..507fcae0 Binary files /dev/null and b/public/textures/mcwbridges/brick_bridge.png differ diff --git a/public/textures/mcwbridges/brick_bridge_pier.png b/public/textures/mcwbridges/brick_bridge_pier.png new file mode 100644 index 00000000..83828226 Binary files /dev/null and b/public/textures/mcwbridges/brick_bridge_pier.png differ diff --git a/public/textures/mcwbridges/brick_bridge_stair.png b/public/textures/mcwbridges/brick_bridge_stair.png new file mode 100644 index 00000000..2664f54a Binary files /dev/null and b/public/textures/mcwbridges/brick_bridge_stair.png differ diff --git a/public/textures/mcwbridges/bridge_lantern.png b/public/textures/mcwbridges/bridge_lantern.png new file mode 100644 index 00000000..6a6c1738 Binary files /dev/null and b/public/textures/mcwbridges/bridge_lantern.png differ diff --git a/public/textures/mcwbridges/bridge_torch.png b/public/textures/mcwbridges/bridge_torch.png new file mode 100644 index 00000000..816a263b Binary files /dev/null and b/public/textures/mcwbridges/bridge_torch.png differ diff --git a/public/textures/mcwbridges/cherry_bridge_pier.png b/public/textures/mcwbridges/cherry_bridge_pier.png new file mode 100644 index 00000000..ba02f2a2 Binary files /dev/null and b/public/textures/mcwbridges/cherry_bridge_pier.png differ diff --git a/public/textures/mcwbridges/cherry_log_bridge_middle.png b/public/textures/mcwbridges/cherry_log_bridge_middle.png new file mode 100644 index 00000000..cadb6ae9 Binary files /dev/null and b/public/textures/mcwbridges/cherry_log_bridge_middle.png differ diff --git a/public/textures/mcwbridges/cherry_log_bridge_stair.png b/public/textures/mcwbridges/cherry_log_bridge_stair.png new file mode 100644 index 00000000..8624fd67 Binary files /dev/null and b/public/textures/mcwbridges/cherry_log_bridge_stair.png differ diff --git a/public/textures/mcwbridges/cherry_rail_bridge.png b/public/textures/mcwbridges/cherry_rail_bridge.png new file mode 100644 index 00000000..6a7aa666 Binary files /dev/null and b/public/textures/mcwbridges/cherry_rail_bridge.png differ diff --git a/public/textures/mcwbridges/cherry_rope_bridge_stair.png b/public/textures/mcwbridges/cherry_rope_bridge_stair.png new file mode 100644 index 00000000..d3812035 Binary files /dev/null and b/public/textures/mcwbridges/cherry_rope_bridge_stair.png differ diff --git a/public/textures/mcwbridges/cobblestone_bridge.png b/public/textures/mcwbridges/cobblestone_bridge.png new file mode 100644 index 00000000..39044fa0 Binary files /dev/null and b/public/textures/mcwbridges/cobblestone_bridge.png differ diff --git a/public/textures/mcwbridges/cobblestone_bridge_pier.png b/public/textures/mcwbridges/cobblestone_bridge_pier.png new file mode 100644 index 00000000..d3924143 Binary files /dev/null and b/public/textures/mcwbridges/cobblestone_bridge_pier.png differ diff --git a/public/textures/mcwbridges/cobblestone_bridge_stair.png b/public/textures/mcwbridges/cobblestone_bridge_stair.png new file mode 100644 index 00000000..85f1114e Binary files /dev/null and b/public/textures/mcwbridges/cobblestone_bridge_stair.png differ diff --git a/public/textures/mcwbridges/crimson_bridge_pier.png b/public/textures/mcwbridges/crimson_bridge_pier.png new file mode 100644 index 00000000..b0a805c6 Binary files /dev/null and b/public/textures/mcwbridges/crimson_bridge_pier.png differ diff --git a/public/textures/mcwbridges/crimson_log_bridge_middle.png b/public/textures/mcwbridges/crimson_log_bridge_middle.png new file mode 100644 index 00000000..35f81146 Binary files /dev/null and b/public/textures/mcwbridges/crimson_log_bridge_middle.png differ diff --git a/public/textures/mcwbridges/crimson_log_bridge_stair.png b/public/textures/mcwbridges/crimson_log_bridge_stair.png new file mode 100644 index 00000000..a2d88346 Binary files /dev/null and b/public/textures/mcwbridges/crimson_log_bridge_stair.png differ diff --git a/public/textures/mcwbridges/crimson_rail_bridge.png b/public/textures/mcwbridges/crimson_rail_bridge.png new file mode 100644 index 00000000..c0d8a300 Binary files /dev/null and b/public/textures/mcwbridges/crimson_rail_bridge.png differ diff --git a/public/textures/mcwbridges/crimson_rope_bridge_stair.png b/public/textures/mcwbridges/crimson_rope_bridge_stair.png new file mode 100644 index 00000000..fa9e3306 Binary files /dev/null and b/public/textures/mcwbridges/crimson_rope_bridge_stair.png differ diff --git a/public/textures/mcwbridges/dark_oak_bridge_pier.png b/public/textures/mcwbridges/dark_oak_bridge_pier.png new file mode 100644 index 00000000..4032f79a Binary files /dev/null and b/public/textures/mcwbridges/dark_oak_bridge_pier.png differ diff --git a/public/textures/mcwbridges/dark_oak_log_bridge_middle.png b/public/textures/mcwbridges/dark_oak_log_bridge_middle.png new file mode 100644 index 00000000..25bacec4 Binary files /dev/null and b/public/textures/mcwbridges/dark_oak_log_bridge_middle.png differ diff --git a/public/textures/mcwbridges/dark_oak_log_bridge_stair.png b/public/textures/mcwbridges/dark_oak_log_bridge_stair.png new file mode 100644 index 00000000..cfe90947 Binary files /dev/null and b/public/textures/mcwbridges/dark_oak_log_bridge_stair.png differ diff --git a/public/textures/mcwbridges/dark_oak_rail_bridge.png b/public/textures/mcwbridges/dark_oak_rail_bridge.png new file mode 100644 index 00000000..da2cb7dc Binary files /dev/null and b/public/textures/mcwbridges/dark_oak_rail_bridge.png differ diff --git a/public/textures/mcwbridges/dark_oak_rope_bridge_stair.png b/public/textures/mcwbridges/dark_oak_rope_bridge_stair.png new file mode 100644 index 00000000..3761f2aa Binary files /dev/null and b/public/textures/mcwbridges/dark_oak_rope_bridge_stair.png differ diff --git a/public/textures/mcwbridges/deepslate_brick_bridge.png b/public/textures/mcwbridges/deepslate_brick_bridge.png new file mode 100644 index 00000000..69a879ca Binary files /dev/null and b/public/textures/mcwbridges/deepslate_brick_bridge.png differ diff --git a/public/textures/mcwbridges/deepslate_brick_bridge_pier.png b/public/textures/mcwbridges/deepslate_brick_bridge_pier.png new file mode 100644 index 00000000..b024a808 Binary files /dev/null and b/public/textures/mcwbridges/deepslate_brick_bridge_pier.png differ diff --git a/public/textures/mcwbridges/deepslate_brick_bridge_stair.png b/public/textures/mcwbridges/deepslate_brick_bridge_stair.png new file mode 100644 index 00000000..87798921 Binary files /dev/null and b/public/textures/mcwbridges/deepslate_brick_bridge_stair.png differ diff --git a/public/textures/mcwbridges/deepslate_tile_bridge.png b/public/textures/mcwbridges/deepslate_tile_bridge.png new file mode 100644 index 00000000..f562edfc Binary files /dev/null and b/public/textures/mcwbridges/deepslate_tile_bridge.png differ diff --git a/public/textures/mcwbridges/deepslate_tile_bridge_pier.png b/public/textures/mcwbridges/deepslate_tile_bridge_pier.png new file mode 100644 index 00000000..d34dc0bb Binary files /dev/null and b/public/textures/mcwbridges/deepslate_tile_bridge_pier.png differ diff --git a/public/textures/mcwbridges/deepslate_tile_bridge_stair.png b/public/textures/mcwbridges/deepslate_tile_bridge_stair.png new file mode 100644 index 00000000..6e604f2c Binary files /dev/null and b/public/textures/mcwbridges/deepslate_tile_bridge_stair.png differ diff --git a/public/textures/mcwbridges/diorite_bridge.png b/public/textures/mcwbridges/diorite_bridge.png new file mode 100644 index 00000000..83306a66 Binary files /dev/null and b/public/textures/mcwbridges/diorite_bridge.png differ diff --git a/public/textures/mcwbridges/diorite_bridge_pier.png b/public/textures/mcwbridges/diorite_bridge_pier.png new file mode 100644 index 00000000..629758c9 Binary files /dev/null and b/public/textures/mcwbridges/diorite_bridge_pier.png differ diff --git a/public/textures/mcwbridges/diorite_bridge_stair.png b/public/textures/mcwbridges/diorite_bridge_stair.png new file mode 100644 index 00000000..ff10aa6a Binary files /dev/null and b/public/textures/mcwbridges/diorite_bridge_stair.png differ diff --git a/public/textures/mcwbridges/dry_bamboo_bridge.png b/public/textures/mcwbridges/dry_bamboo_bridge.png new file mode 100644 index 00000000..56bb15ff Binary files /dev/null and b/public/textures/mcwbridges/dry_bamboo_bridge.png differ diff --git a/public/textures/mcwbridges/dry_bamboo_bridge_pier.png b/public/textures/mcwbridges/dry_bamboo_bridge_pier.png new file mode 100644 index 00000000..6f796c79 Binary files /dev/null and b/public/textures/mcwbridges/dry_bamboo_bridge_pier.png differ diff --git a/public/textures/mcwbridges/dry_bamboo_bridge_stair.png b/public/textures/mcwbridges/dry_bamboo_bridge_stair.png new file mode 100644 index 00000000..5e130bfd Binary files /dev/null and b/public/textures/mcwbridges/dry_bamboo_bridge_stair.png differ diff --git a/public/textures/mcwbridges/end_stone_bricks_bridge.png b/public/textures/mcwbridges/end_stone_bricks_bridge.png new file mode 100644 index 00000000..d80d0d21 Binary files /dev/null and b/public/textures/mcwbridges/end_stone_bricks_bridge.png differ diff --git a/public/textures/mcwbridges/end_stone_bricks_bridge_pier.png b/public/textures/mcwbridges/end_stone_bricks_bridge_pier.png new file mode 100644 index 00000000..7e1c3fe7 Binary files /dev/null and b/public/textures/mcwbridges/end_stone_bricks_bridge_pier.png differ diff --git a/public/textures/mcwbridges/end_stone_bricks_bridge_stair.png b/public/textures/mcwbridges/end_stone_bricks_bridge_stair.png new file mode 100644 index 00000000..7d1c7b6a Binary files /dev/null and b/public/textures/mcwbridges/end_stone_bricks_bridge_stair.png differ diff --git a/public/textures/mcwbridges/glass_bridge.png b/public/textures/mcwbridges/glass_bridge.png new file mode 100644 index 00000000..5a67872b Binary files /dev/null and b/public/textures/mcwbridges/glass_bridge.png differ diff --git a/public/textures/mcwbridges/glass_bridge_pier.png b/public/textures/mcwbridges/glass_bridge_pier.png new file mode 100644 index 00000000..10596dc7 Binary files /dev/null and b/public/textures/mcwbridges/glass_bridge_pier.png differ diff --git a/public/textures/mcwbridges/glass_bridge_stair.png b/public/textures/mcwbridges/glass_bridge_stair.png new file mode 100644 index 00000000..336a7d82 Binary files /dev/null and b/public/textures/mcwbridges/glass_bridge_stair.png differ diff --git a/public/textures/mcwbridges/granite_bridge.png b/public/textures/mcwbridges/granite_bridge.png new file mode 100644 index 00000000..65a49e13 Binary files /dev/null and b/public/textures/mcwbridges/granite_bridge.png differ diff --git a/public/textures/mcwbridges/granite_bridge_pier.png b/public/textures/mcwbridges/granite_bridge_pier.png new file mode 100644 index 00000000..28f29e1d Binary files /dev/null and b/public/textures/mcwbridges/granite_bridge_pier.png differ diff --git a/public/textures/mcwbridges/granite_bridge_stair.png b/public/textures/mcwbridges/granite_bridge_stair.png new file mode 100644 index 00000000..3b043396 Binary files /dev/null and b/public/textures/mcwbridges/granite_bridge_stair.png differ diff --git a/public/textures/mcwbridges/iron_bridge.png b/public/textures/mcwbridges/iron_bridge.png new file mode 100644 index 00000000..704a8a18 Binary files /dev/null and b/public/textures/mcwbridges/iron_bridge.png differ diff --git a/public/textures/mcwbridges/iron_bridge_pier.png b/public/textures/mcwbridges/iron_bridge_pier.png new file mode 100644 index 00000000..fb760345 Binary files /dev/null and b/public/textures/mcwbridges/iron_bridge_pier.png differ diff --git a/public/textures/mcwbridges/iron_bridge_stair.png b/public/textures/mcwbridges/iron_bridge_stair.png new file mode 100644 index 00000000..77cf290e Binary files /dev/null and b/public/textures/mcwbridges/iron_bridge_stair.png differ diff --git a/public/textures/mcwbridges/jungle_bridge_pier.png b/public/textures/mcwbridges/jungle_bridge_pier.png new file mode 100644 index 00000000..b26a9d39 Binary files /dev/null and b/public/textures/mcwbridges/jungle_bridge_pier.png differ diff --git a/public/textures/mcwbridges/jungle_log_bridge_middle.png b/public/textures/mcwbridges/jungle_log_bridge_middle.png new file mode 100644 index 00000000..95f03222 Binary files /dev/null and b/public/textures/mcwbridges/jungle_log_bridge_middle.png differ diff --git a/public/textures/mcwbridges/jungle_log_bridge_stair.png b/public/textures/mcwbridges/jungle_log_bridge_stair.png new file mode 100644 index 00000000..fbb191cc Binary files /dev/null and b/public/textures/mcwbridges/jungle_log_bridge_stair.png differ diff --git a/public/textures/mcwbridges/jungle_rail_bridge.png b/public/textures/mcwbridges/jungle_rail_bridge.png new file mode 100644 index 00000000..f6a734e2 Binary files /dev/null and b/public/textures/mcwbridges/jungle_rail_bridge.png differ diff --git a/public/textures/mcwbridges/jungle_rope_bridge_stair.png b/public/textures/mcwbridges/jungle_rope_bridge_stair.png new file mode 100644 index 00000000..4264240c Binary files /dev/null and b/public/textures/mcwbridges/jungle_rope_bridge_stair.png differ diff --git a/public/textures/mcwbridges/mangrove_bridge_pier.png b/public/textures/mcwbridges/mangrove_bridge_pier.png new file mode 100644 index 00000000..93b76333 Binary files /dev/null and b/public/textures/mcwbridges/mangrove_bridge_pier.png differ diff --git a/public/textures/mcwbridges/mangrove_log_bridge_middle.png b/public/textures/mcwbridges/mangrove_log_bridge_middle.png new file mode 100644 index 00000000..88c3ca6b Binary files /dev/null and b/public/textures/mcwbridges/mangrove_log_bridge_middle.png differ diff --git a/public/textures/mcwbridges/mangrove_log_bridge_stair.png b/public/textures/mcwbridges/mangrove_log_bridge_stair.png new file mode 100644 index 00000000..db048f10 Binary files /dev/null and b/public/textures/mcwbridges/mangrove_log_bridge_stair.png differ diff --git a/public/textures/mcwbridges/mangrove_rail_bridge.png b/public/textures/mcwbridges/mangrove_rail_bridge.png new file mode 100644 index 00000000..6cbe820c Binary files /dev/null and b/public/textures/mcwbridges/mangrove_rail_bridge.png differ diff --git a/public/textures/mcwbridges/mangrove_rope_bridge_stair.png b/public/textures/mcwbridges/mangrove_rope_bridge_stair.png new file mode 100644 index 00000000..2676f5eb Binary files /dev/null and b/public/textures/mcwbridges/mangrove_rope_bridge_stair.png differ diff --git a/public/textures/mcwbridges/mossy_cobblestone_bridge.png b/public/textures/mcwbridges/mossy_cobblestone_bridge.png new file mode 100644 index 00000000..79c93a84 Binary files /dev/null and b/public/textures/mcwbridges/mossy_cobblestone_bridge.png differ diff --git a/public/textures/mcwbridges/mossy_cobblestone_bridge_pier.png b/public/textures/mcwbridges/mossy_cobblestone_bridge_pier.png new file mode 100644 index 00000000..426638c2 Binary files /dev/null and b/public/textures/mcwbridges/mossy_cobblestone_bridge_pier.png differ diff --git a/public/textures/mcwbridges/mossy_cobblestone_bridge_stair.png b/public/textures/mcwbridges/mossy_cobblestone_bridge_stair.png new file mode 100644 index 00000000..448e9585 Binary files /dev/null and b/public/textures/mcwbridges/mossy_cobblestone_bridge_stair.png differ diff --git a/public/textures/mcwbridges/mossy_stone_brick_bridge.png b/public/textures/mcwbridges/mossy_stone_brick_bridge.png new file mode 100644 index 00000000..296c4ffb Binary files /dev/null and b/public/textures/mcwbridges/mossy_stone_brick_bridge.png differ diff --git a/public/textures/mcwbridges/mossy_stone_bridge_pier.png b/public/textures/mcwbridges/mossy_stone_bridge_pier.png new file mode 100644 index 00000000..3514491f Binary files /dev/null and b/public/textures/mcwbridges/mossy_stone_bridge_pier.png differ diff --git a/public/textures/mcwbridges/mossy_stone_bridge_stair.png b/public/textures/mcwbridges/mossy_stone_bridge_stair.png new file mode 100644 index 00000000..b344d5d1 Binary files /dev/null and b/public/textures/mcwbridges/mossy_stone_bridge_stair.png differ diff --git a/public/textures/mcwbridges/mud_brick_bridge.png b/public/textures/mcwbridges/mud_brick_bridge.png new file mode 100644 index 00000000..36cd0e63 Binary files /dev/null and b/public/textures/mcwbridges/mud_brick_bridge.png differ diff --git a/public/textures/mcwbridges/mud_brick_bridge_pier.png b/public/textures/mcwbridges/mud_brick_bridge_pier.png new file mode 100644 index 00000000..b3987708 Binary files /dev/null and b/public/textures/mcwbridges/mud_brick_bridge_pier.png differ diff --git a/public/textures/mcwbridges/mud_brick_bridge_stair.png b/public/textures/mcwbridges/mud_brick_bridge_stair.png new file mode 100644 index 00000000..c56b918e Binary files /dev/null and b/public/textures/mcwbridges/mud_brick_bridge_stair.png differ diff --git a/public/textures/mcwbridges/nether_bricks_bridge.png b/public/textures/mcwbridges/nether_bricks_bridge.png new file mode 100644 index 00000000..33a1c199 Binary files /dev/null and b/public/textures/mcwbridges/nether_bricks_bridge.png differ diff --git a/public/textures/mcwbridges/nether_bricks_bridge_pier.png b/public/textures/mcwbridges/nether_bricks_bridge_pier.png new file mode 100644 index 00000000..d1d32c03 Binary files /dev/null and b/public/textures/mcwbridges/nether_bricks_bridge_pier.png differ diff --git a/public/textures/mcwbridges/nether_bricks_bridge_stair.png b/public/textures/mcwbridges/nether_bricks_bridge_stair.png new file mode 100644 index 00000000..a37382b6 Binary files /dev/null and b/public/textures/mcwbridges/nether_bricks_bridge_stair.png differ diff --git a/public/textures/mcwbridges/oak_bridge_pier.png b/public/textures/mcwbridges/oak_bridge_pier.png new file mode 100644 index 00000000..fbf3e4c7 Binary files /dev/null and b/public/textures/mcwbridges/oak_bridge_pier.png differ diff --git a/public/textures/mcwbridges/oak_log_bridge_middle.png b/public/textures/mcwbridges/oak_log_bridge_middle.png new file mode 100644 index 00000000..258632d4 Binary files /dev/null and b/public/textures/mcwbridges/oak_log_bridge_middle.png differ diff --git a/public/textures/mcwbridges/oak_log_bridge_stair.png b/public/textures/mcwbridges/oak_log_bridge_stair.png new file mode 100644 index 00000000..32e6aa3b Binary files /dev/null and b/public/textures/mcwbridges/oak_log_bridge_stair.png differ diff --git a/public/textures/mcwbridges/oak_rail_bridge.png b/public/textures/mcwbridges/oak_rail_bridge.png new file mode 100644 index 00000000..37a01bd7 Binary files /dev/null and b/public/textures/mcwbridges/oak_rail_bridge.png differ diff --git a/public/textures/mcwbridges/oak_rope_bridge_stair.png b/public/textures/mcwbridges/oak_rope_bridge_stair.png new file mode 100644 index 00000000..5a2fbeff Binary files /dev/null and b/public/textures/mcwbridges/oak_rope_bridge_stair.png differ diff --git a/public/textures/mcwbridges/orange_sandstone_bridge.png b/public/textures/mcwbridges/orange_sandstone_bridge.png new file mode 100644 index 00000000..d2cff158 Binary files /dev/null and b/public/textures/mcwbridges/orange_sandstone_bridge.png differ diff --git a/public/textures/mcwbridges/pliers.png b/public/textures/mcwbridges/pliers.png new file mode 100644 index 00000000..2addc612 Binary files /dev/null and b/public/textures/mcwbridges/pliers.png differ diff --git a/public/textures/mcwbridges/prismarine_bricks_bridge.png b/public/textures/mcwbridges/prismarine_bricks_bridge.png new file mode 100644 index 00000000..5b3eddd0 Binary files /dev/null and b/public/textures/mcwbridges/prismarine_bricks_bridge.png differ diff --git a/public/textures/mcwbridges/prismarine_bricks_bridge_pier.png b/public/textures/mcwbridges/prismarine_bricks_bridge_pier.png new file mode 100644 index 00000000..affad72d Binary files /dev/null and b/public/textures/mcwbridges/prismarine_bricks_bridge_pier.png differ diff --git a/public/textures/mcwbridges/prismarine_bricks_bridge_stair.png b/public/textures/mcwbridges/prismarine_bricks_bridge_stair.png new file mode 100644 index 00000000..b75be529 Binary files /dev/null and b/public/textures/mcwbridges/prismarine_bricks_bridge_stair.png differ diff --git a/public/textures/mcwbridges/red_sandstone_bridge_pier.png b/public/textures/mcwbridges/red_sandstone_bridge_pier.png new file mode 100644 index 00000000..1a614f52 Binary files /dev/null and b/public/textures/mcwbridges/red_sandstone_bridge_pier.png differ diff --git a/public/textures/mcwbridges/red_sandstone_bridge_stair.png b/public/textures/mcwbridges/red_sandstone_bridge_stair.png new file mode 100644 index 00000000..6413df63 Binary files /dev/null and b/public/textures/mcwbridges/red_sandstone_bridge_stair.png differ diff --git a/public/textures/mcwbridges/rope_acacia_bridge.png b/public/textures/mcwbridges/rope_acacia_bridge.png new file mode 100644 index 00000000..a1a4a213 Binary files /dev/null and b/public/textures/mcwbridges/rope_acacia_bridge.png differ diff --git a/public/textures/mcwbridges/rope_birch_bridge.png b/public/textures/mcwbridges/rope_birch_bridge.png new file mode 100644 index 00000000..174739d1 Binary files /dev/null and b/public/textures/mcwbridges/rope_birch_bridge.png differ diff --git a/public/textures/mcwbridges/rope_cherry_bridge.png b/public/textures/mcwbridges/rope_cherry_bridge.png new file mode 100644 index 00000000..b6ef4514 Binary files /dev/null and b/public/textures/mcwbridges/rope_cherry_bridge.png differ diff --git a/public/textures/mcwbridges/rope_crimson_bridge.png b/public/textures/mcwbridges/rope_crimson_bridge.png new file mode 100644 index 00000000..d41cfba3 Binary files /dev/null and b/public/textures/mcwbridges/rope_crimson_bridge.png differ diff --git a/public/textures/mcwbridges/rope_dark_oak_bridge.png b/public/textures/mcwbridges/rope_dark_oak_bridge.png new file mode 100644 index 00000000..2c450f82 Binary files /dev/null and b/public/textures/mcwbridges/rope_dark_oak_bridge.png differ diff --git a/public/textures/mcwbridges/rope_jungle_bridge.png b/public/textures/mcwbridges/rope_jungle_bridge.png new file mode 100644 index 00000000..c6db1ee2 Binary files /dev/null and b/public/textures/mcwbridges/rope_jungle_bridge.png differ diff --git a/public/textures/mcwbridges/rope_mangrove_bridge.png b/public/textures/mcwbridges/rope_mangrove_bridge.png new file mode 100644 index 00000000..ae966130 Binary files /dev/null and b/public/textures/mcwbridges/rope_mangrove_bridge.png differ diff --git a/public/textures/mcwbridges/rope_oak_bridge.png b/public/textures/mcwbridges/rope_oak_bridge.png new file mode 100644 index 00000000..52b817ce Binary files /dev/null and b/public/textures/mcwbridges/rope_oak_bridge.png differ diff --git a/public/textures/mcwbridges/rope_spruce_bridge.png b/public/textures/mcwbridges/rope_spruce_bridge.png new file mode 100644 index 00000000..ae016e3c Binary files /dev/null and b/public/textures/mcwbridges/rope_spruce_bridge.png differ diff --git a/public/textures/mcwbridges/rope_warped_bridge.png b/public/textures/mcwbridges/rope_warped_bridge.png new file mode 100644 index 00000000..098b2584 Binary files /dev/null and b/public/textures/mcwbridges/rope_warped_bridge.png differ diff --git a/public/textures/mcwbridges/sandstone_bridge.png b/public/textures/mcwbridges/sandstone_bridge.png new file mode 100644 index 00000000..f231a10a Binary files /dev/null and b/public/textures/mcwbridges/sandstone_bridge.png differ diff --git a/public/textures/mcwbridges/sandstone_bridge_pier.png b/public/textures/mcwbridges/sandstone_bridge_pier.png new file mode 100644 index 00000000..7d8e5c59 Binary files /dev/null and b/public/textures/mcwbridges/sandstone_bridge_pier.png differ diff --git a/public/textures/mcwbridges/sandstone_bridge_stair.png b/public/textures/mcwbridges/sandstone_bridge_stair.png new file mode 100644 index 00000000..6fee5d03 Binary files /dev/null and b/public/textures/mcwbridges/sandstone_bridge_stair.png differ diff --git a/public/textures/mcwbridges/spruce_bridge_pier.png b/public/textures/mcwbridges/spruce_bridge_pier.png new file mode 100644 index 00000000..d502db03 Binary files /dev/null and b/public/textures/mcwbridges/spruce_bridge_pier.png differ diff --git a/public/textures/mcwbridges/spruce_log_bridge_middle.png b/public/textures/mcwbridges/spruce_log_bridge_middle.png new file mode 100644 index 00000000..d6de08b0 Binary files /dev/null and b/public/textures/mcwbridges/spruce_log_bridge_middle.png differ diff --git a/public/textures/mcwbridges/spruce_log_bridge_stair.png b/public/textures/mcwbridges/spruce_log_bridge_stair.png new file mode 100644 index 00000000..48972e62 Binary files /dev/null and b/public/textures/mcwbridges/spruce_log_bridge_stair.png differ diff --git a/public/textures/mcwbridges/spruce_rail_bridge.png b/public/textures/mcwbridges/spruce_rail_bridge.png new file mode 100644 index 00000000..90906152 Binary files /dev/null and b/public/textures/mcwbridges/spruce_rail_bridge.png differ diff --git a/public/textures/mcwbridges/spruce_rope_bridge_stair.png b/public/textures/mcwbridges/spruce_rope_bridge_stair.png new file mode 100644 index 00000000..fde9e03e Binary files /dev/null and b/public/textures/mcwbridges/spruce_rope_bridge_stair.png differ diff --git a/public/textures/mcwbridges/stone_brick_bridge.png b/public/textures/mcwbridges/stone_brick_bridge.png new file mode 100644 index 00000000..19a49908 Binary files /dev/null and b/public/textures/mcwbridges/stone_brick_bridge.png differ diff --git a/public/textures/mcwbridges/stone_brick_bridge_stair.png b/public/textures/mcwbridges/stone_brick_bridge_stair.png new file mode 100644 index 00000000..7ee9cd41 Binary files /dev/null and b/public/textures/mcwbridges/stone_brick_bridge_stair.png differ diff --git a/public/textures/mcwbridges/stone_bridge_pier.png b/public/textures/mcwbridges/stone_bridge_pier.png new file mode 100644 index 00000000..13d13f4a Binary files /dev/null and b/public/textures/mcwbridges/stone_bridge_pier.png differ diff --git a/public/textures/mcwbridges/warped_bridge_pier.png b/public/textures/mcwbridges/warped_bridge_pier.png new file mode 100644 index 00000000..40af18a0 Binary files /dev/null and b/public/textures/mcwbridges/warped_bridge_pier.png differ diff --git a/public/textures/mcwbridges/warped_log_bridge_middle.png b/public/textures/mcwbridges/warped_log_bridge_middle.png new file mode 100644 index 00000000..856cc164 Binary files /dev/null and b/public/textures/mcwbridges/warped_log_bridge_middle.png differ diff --git a/public/textures/mcwbridges/warped_log_bridge_stair.png b/public/textures/mcwbridges/warped_log_bridge_stair.png new file mode 100644 index 00000000..17c4a198 Binary files /dev/null and b/public/textures/mcwbridges/warped_log_bridge_stair.png differ diff --git a/public/textures/mcwbridges/warped_rail_bridge.png b/public/textures/mcwbridges/warped_rail_bridge.png new file mode 100644 index 00000000..fbffa29e Binary files /dev/null and b/public/textures/mcwbridges/warped_rail_bridge.png differ diff --git a/public/textures/mcwbridges/warped_rope_bridge_stair.png b/public/textures/mcwbridges/warped_rope_bridge_stair.png new file mode 100644 index 00000000..c68b7a1a Binary files /dev/null and b/public/textures/mcwbridges/warped_rope_bridge_stair.png differ diff --git a/public/textures/mcwbyg/araucaria_hedge.png b/public/textures/mcwbyg/araucaria_hedge.png new file mode 100644 index 00000000..e5ae2740 Binary files /dev/null and b/public/textures/mcwbyg/araucaria_hedge.png differ diff --git a/public/textures/mcwbyg/aspen_attic_roof.png b/public/textures/mcwbyg/aspen_attic_roof.png new file mode 100644 index 00000000..0ffcc903 Binary files /dev/null and b/public/textures/mcwbyg/aspen_attic_roof.png differ diff --git a/public/textures/mcwbyg/aspen_bamboo_door.png b/public/textures/mcwbyg/aspen_bamboo_door.png new file mode 100644 index 00000000..63283246 Binary files /dev/null and b/public/textures/mcwbyg/aspen_bamboo_door.png differ diff --git a/public/textures/mcwbyg/aspen_bamboo_trapdoor.png b/public/textures/mcwbyg/aspen_bamboo_trapdoor.png new file mode 100644 index 00000000..f8790b9d Binary files /dev/null and b/public/textures/mcwbyg/aspen_bamboo_trapdoor.png differ diff --git a/public/textures/mcwbyg/aspen_bark_glass_door.png b/public/textures/mcwbyg/aspen_bark_glass_door.png new file mode 100644 index 00000000..f733e5b3 Binary files /dev/null and b/public/textures/mcwbyg/aspen_bark_glass_door.png differ diff --git a/public/textures/mcwbyg/aspen_bark_trapdoor.png b/public/textures/mcwbyg/aspen_bark_trapdoor.png new file mode 100644 index 00000000..48f8b635 Binary files /dev/null and b/public/textures/mcwbyg/aspen_bark_trapdoor.png differ diff --git a/public/textures/mcwbyg/aspen_barn_door.png b/public/textures/mcwbyg/aspen_barn_door.png new file mode 100644 index 00000000..298a78a9 Binary files /dev/null and b/public/textures/mcwbyg/aspen_barn_door.png differ diff --git a/public/textures/mcwbyg/aspen_barn_glass_door.png b/public/textures/mcwbyg/aspen_barn_glass_door.png new file mode 100644 index 00000000..68e0f479 Binary files /dev/null and b/public/textures/mcwbyg/aspen_barn_glass_door.png differ diff --git a/public/textures/mcwbyg/aspen_barn_trapdoor.png b/public/textures/mcwbyg/aspen_barn_trapdoor.png new file mode 100644 index 00000000..16586e4e Binary files /dev/null and b/public/textures/mcwbyg/aspen_barn_trapdoor.png differ diff --git a/public/textures/mcwbyg/aspen_barred_trapdoor.png b/public/textures/mcwbyg/aspen_barred_trapdoor.png new file mode 100644 index 00000000..e12d49bb Binary files /dev/null and b/public/textures/mcwbyg/aspen_barred_trapdoor.png differ diff --git a/public/textures/mcwbyg/aspen_barrel_trapdoor.png b/public/textures/mcwbyg/aspen_barrel_trapdoor.png new file mode 100644 index 00000000..91a70079 Binary files /dev/null and b/public/textures/mcwbyg/aspen_barrel_trapdoor.png differ diff --git a/public/textures/mcwbyg/aspen_beach_door.png b/public/textures/mcwbyg/aspen_beach_door.png new file mode 100644 index 00000000..f0091c84 Binary files /dev/null and b/public/textures/mcwbyg/aspen_beach_door.png differ diff --git a/public/textures/mcwbyg/aspen_beach_trapdoor.png b/public/textures/mcwbyg/aspen_beach_trapdoor.png new file mode 100644 index 00000000..d240f8eb Binary files /dev/null and b/public/textures/mcwbyg/aspen_beach_trapdoor.png differ diff --git a/public/textures/mcwbyg/aspen_blinds.png b/public/textures/mcwbyg/aspen_blinds.png new file mode 100644 index 00000000..4d625a14 Binary files /dev/null and b/public/textures/mcwbyg/aspen_blinds.png differ diff --git a/public/textures/mcwbyg/aspen_blossom_trapdoor.png b/public/textures/mcwbyg/aspen_blossom_trapdoor.png new file mode 100644 index 00000000..a3779910 Binary files /dev/null and b/public/textures/mcwbyg/aspen_blossom_trapdoor.png differ diff --git a/public/textures/mcwbyg/aspen_bookshelf.png b/public/textures/mcwbyg/aspen_bookshelf.png new file mode 100644 index 00000000..bd812081 Binary files /dev/null and b/public/textures/mcwbyg/aspen_bookshelf.png differ diff --git a/public/textures/mcwbyg/aspen_bookshelf_cupboard.png b/public/textures/mcwbyg/aspen_bookshelf_cupboard.png new file mode 100644 index 00000000..4adf2a1c Binary files /dev/null and b/public/textures/mcwbyg/aspen_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/aspen_bookshelf_drawer.png b/public/textures/mcwbyg/aspen_bookshelf_drawer.png new file mode 100644 index 00000000..346c6f6f Binary files /dev/null and b/public/textures/mcwbyg/aspen_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/aspen_bridge_pier.png b/public/textures/mcwbyg/aspen_bridge_pier.png new file mode 100644 index 00000000..ea72588f Binary files /dev/null and b/public/textures/mcwbyg/aspen_bridge_pier.png differ diff --git a/public/textures/mcwbyg/aspen_chair.png b/public/textures/mcwbyg/aspen_chair.png new file mode 100644 index 00000000..adfb6646 Binary files /dev/null and b/public/textures/mcwbyg/aspen_chair.png differ diff --git a/public/textures/mcwbyg/aspen_classic_door.png b/public/textures/mcwbyg/aspen_classic_door.png new file mode 100644 index 00000000..7f6e9ae1 Binary files /dev/null and b/public/textures/mcwbyg/aspen_classic_door.png differ diff --git a/public/textures/mcwbyg/aspen_classic_trapdoor.png b/public/textures/mcwbyg/aspen_classic_trapdoor.png new file mode 100644 index 00000000..d9dd0880 Binary files /dev/null and b/public/textures/mcwbyg/aspen_classic_trapdoor.png differ diff --git a/public/textures/mcwbyg/aspen_coffee_table.png b/public/textures/mcwbyg/aspen_coffee_table.png new file mode 100644 index 00000000..b793de41 Binary files /dev/null and b/public/textures/mcwbyg/aspen_coffee_table.png differ diff --git a/public/textures/mcwbyg/aspen_cottage_door.png b/public/textures/mcwbyg/aspen_cottage_door.png new file mode 100644 index 00000000..8bcd41ce Binary files /dev/null and b/public/textures/mcwbyg/aspen_cottage_door.png differ diff --git a/public/textures/mcwbyg/aspen_cottage_trapdoor.png b/public/textures/mcwbyg/aspen_cottage_trapdoor.png new file mode 100644 index 00000000..27458335 Binary files /dev/null and b/public/textures/mcwbyg/aspen_cottage_trapdoor.png differ diff --git a/public/textures/mcwbyg/aspen_counter.png b/public/textures/mcwbyg/aspen_counter.png new file mode 100644 index 00000000..9b016537 Binary files /dev/null and b/public/textures/mcwbyg/aspen_counter.png differ diff --git a/public/textures/mcwbyg/aspen_covered_desk.png b/public/textures/mcwbyg/aspen_covered_desk.png new file mode 100644 index 00000000..46b4b2e0 Binary files /dev/null and b/public/textures/mcwbyg/aspen_covered_desk.png differ diff --git a/public/textures/mcwbyg/aspen_cupboard_counter.png b/public/textures/mcwbyg/aspen_cupboard_counter.png new file mode 100644 index 00000000..290ba115 Binary files /dev/null and b/public/textures/mcwbyg/aspen_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/aspen_curtain_rod.png b/public/textures/mcwbyg/aspen_curtain_rod.png new file mode 100644 index 00000000..d2ac5db7 Binary files /dev/null and b/public/textures/mcwbyg/aspen_curtain_rod.png differ diff --git a/public/textures/mcwbyg/aspen_curved_gate.png b/public/textures/mcwbyg/aspen_curved_gate.png new file mode 100644 index 00000000..de890500 Binary files /dev/null and b/public/textures/mcwbyg/aspen_curved_gate.png differ diff --git a/public/textures/mcwbyg/aspen_desk.png b/public/textures/mcwbyg/aspen_desk.png new file mode 100644 index 00000000..cd571bf5 Binary files /dev/null and b/public/textures/mcwbyg/aspen_desk.png differ diff --git a/public/textures/mcwbyg/aspen_double_drawer.png b/public/textures/mcwbyg/aspen_double_drawer.png new file mode 100644 index 00000000..0dd5dbbb Binary files /dev/null and b/public/textures/mcwbyg/aspen_double_drawer.png differ diff --git a/public/textures/mcwbyg/aspen_double_drawer_counter.png b/public/textures/mcwbyg/aspen_double_drawer_counter.png new file mode 100644 index 00000000..df7e17b8 Binary files /dev/null and b/public/textures/mcwbyg/aspen_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/aspen_double_kitchen_cabinet.png b/public/textures/mcwbyg/aspen_double_kitchen_cabinet.png new file mode 100644 index 00000000..87b7ac14 Binary files /dev/null and b/public/textures/mcwbyg/aspen_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/aspen_double_wardrobe.png b/public/textures/mcwbyg/aspen_double_wardrobe.png new file mode 100644 index 00000000..eff14e6d Binary files /dev/null and b/public/textures/mcwbyg/aspen_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/aspen_drawer.png b/public/textures/mcwbyg/aspen_drawer.png new file mode 100644 index 00000000..e28b8cb1 Binary files /dev/null and b/public/textures/mcwbyg/aspen_drawer.png differ diff --git a/public/textures/mcwbyg/aspen_drawer_counter.png b/public/textures/mcwbyg/aspen_drawer_counter.png new file mode 100644 index 00000000..540c7365 Binary files /dev/null and b/public/textures/mcwbyg/aspen_drawer_counter.png differ diff --git a/public/textures/mcwbyg/aspen_end_table.png b/public/textures/mcwbyg/aspen_end_table.png new file mode 100644 index 00000000..bf32b260 Binary files /dev/null and b/public/textures/mcwbyg/aspen_end_table.png differ diff --git a/public/textures/mcwbyg/aspen_four_panel_door.png b/public/textures/mcwbyg/aspen_four_panel_door.png new file mode 100644 index 00000000..bf83357e Binary files /dev/null and b/public/textures/mcwbyg/aspen_four_panel_door.png differ diff --git a/public/textures/mcwbyg/aspen_four_panel_trapdoor.png b/public/textures/mcwbyg/aspen_four_panel_trapdoor.png new file mode 100644 index 00000000..55ac7103 Binary files /dev/null and b/public/textures/mcwbyg/aspen_four_panel_trapdoor.png differ diff --git a/public/textures/mcwbyg/aspen_four_window.png b/public/textures/mcwbyg/aspen_four_window.png new file mode 100644 index 00000000..d6ac3429 Binary files /dev/null and b/public/textures/mcwbyg/aspen_four_window.png differ diff --git a/public/textures/mcwbyg/aspen_glass_door.png b/public/textures/mcwbyg/aspen_glass_door.png new file mode 100644 index 00000000..33373116 Binary files /dev/null and b/public/textures/mcwbyg/aspen_glass_door.png differ diff --git a/public/textures/mcwbyg/aspen_glass_kitchen_cabinet.png b/public/textures/mcwbyg/aspen_glass_kitchen_cabinet.png new file mode 100644 index 00000000..e5889f0c Binary files /dev/null and b/public/textures/mcwbyg/aspen_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/aspen_glass_table.png b/public/textures/mcwbyg/aspen_glass_table.png new file mode 100644 index 00000000..cf7b28d2 Binary files /dev/null and b/public/textures/mcwbyg/aspen_glass_table.png differ diff --git a/public/textures/mcwbyg/aspen_glass_trapdoor.png b/public/textures/mcwbyg/aspen_glass_trapdoor.png new file mode 100644 index 00000000..5603f2b0 Binary files /dev/null and b/public/textures/mcwbyg/aspen_glass_trapdoor.png differ diff --git a/public/textures/mcwbyg/aspen_hedge.png b/public/textures/mcwbyg/aspen_hedge.png new file mode 100644 index 00000000..548ca2e2 Binary files /dev/null and b/public/textures/mcwbyg/aspen_hedge.png differ diff --git a/public/textures/mcwbyg/aspen_highley_gate.png b/public/textures/mcwbyg/aspen_highley_gate.png new file mode 100644 index 00000000..5889bc96 Binary files /dev/null and b/public/textures/mcwbyg/aspen_highley_gate.png differ diff --git a/public/textures/mcwbyg/aspen_horse_fence.png b/public/textures/mcwbyg/aspen_horse_fence.png new file mode 100644 index 00000000..ac41157d Binary files /dev/null and b/public/textures/mcwbyg/aspen_horse_fence.png differ diff --git a/public/textures/mcwbyg/aspen_japanese2_door.png b/public/textures/mcwbyg/aspen_japanese2_door.png new file mode 100644 index 00000000..eda518c7 Binary files /dev/null and b/public/textures/mcwbyg/aspen_japanese2_door.png differ diff --git a/public/textures/mcwbyg/aspen_japanese_door.png b/public/textures/mcwbyg/aspen_japanese_door.png new file mode 100644 index 00000000..1c3de6cb Binary files /dev/null and b/public/textures/mcwbyg/aspen_japanese_door.png differ diff --git a/public/textures/mcwbyg/aspen_kitchen_cabinet.png b/public/textures/mcwbyg/aspen_kitchen_cabinet.png new file mode 100644 index 00000000..47187e46 Binary files /dev/null and b/public/textures/mcwbyg/aspen_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/aspen_large_drawer.png b/public/textures/mcwbyg/aspen_large_drawer.png new file mode 100644 index 00000000..ba2a070a Binary files /dev/null and b/public/textures/mcwbyg/aspen_large_drawer.png differ diff --git a/public/textures/mcwbyg/aspen_log_bridge_middle.png b/public/textures/mcwbyg/aspen_log_bridge_middle.png new file mode 100644 index 00000000..627a70e9 Binary files /dev/null and b/public/textures/mcwbyg/aspen_log_bridge_middle.png differ diff --git a/public/textures/mcwbyg/aspen_log_bridge_stair.png b/public/textures/mcwbyg/aspen_log_bridge_stair.png new file mode 100644 index 00000000..5f116505 Binary files /dev/null and b/public/textures/mcwbyg/aspen_log_bridge_stair.png differ diff --git a/public/textures/mcwbyg/aspen_log_parapet.png b/public/textures/mcwbyg/aspen_log_parapet.png new file mode 100644 index 00000000..cd38adff Binary files /dev/null and b/public/textures/mcwbyg/aspen_log_parapet.png differ diff --git a/public/textures/mcwbyg/aspen_louvered_shutter.png b/public/textures/mcwbyg/aspen_louvered_shutter.png new file mode 100644 index 00000000..f363fcfd Binary files /dev/null and b/public/textures/mcwbyg/aspen_louvered_shutter.png differ diff --git a/public/textures/mcwbyg/aspen_lower_bookshelf_drawer.png b/public/textures/mcwbyg/aspen_lower_bookshelf_drawer.png new file mode 100644 index 00000000..222a913b Binary files /dev/null and b/public/textures/mcwbyg/aspen_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/aspen_lower_roof.png b/public/textures/mcwbyg/aspen_lower_roof.png new file mode 100644 index 00000000..89e27f39 Binary files /dev/null and b/public/textures/mcwbyg/aspen_lower_roof.png differ diff --git a/public/textures/mcwbyg/aspen_lower_triple_drawer.png b/public/textures/mcwbyg/aspen_lower_triple_drawer.png new file mode 100644 index 00000000..b56c01cc Binary files /dev/null and b/public/textures/mcwbyg/aspen_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/aspen_modern_chair.png b/public/textures/mcwbyg/aspen_modern_chair.png new file mode 100644 index 00000000..a24231cd Binary files /dev/null and b/public/textures/mcwbyg/aspen_modern_chair.png differ diff --git a/public/textures/mcwbyg/aspen_modern_desk.png b/public/textures/mcwbyg/aspen_modern_desk.png new file mode 100644 index 00000000..c5dd01ce Binary files /dev/null and b/public/textures/mcwbyg/aspen_modern_desk.png differ diff --git a/public/textures/mcwbyg/aspen_modern_door.png b/public/textures/mcwbyg/aspen_modern_door.png new file mode 100644 index 00000000..17565684 Binary files /dev/null and b/public/textures/mcwbyg/aspen_modern_door.png differ diff --git a/public/textures/mcwbyg/aspen_modern_wardrobe.png b/public/textures/mcwbyg/aspen_modern_wardrobe.png new file mode 100644 index 00000000..70515e02 Binary files /dev/null and b/public/textures/mcwbyg/aspen_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/aspen_mystic_door.png b/public/textures/mcwbyg/aspen_mystic_door.png new file mode 100644 index 00000000..5ca7799f Binary files /dev/null and b/public/textures/mcwbyg/aspen_mystic_door.png differ diff --git a/public/textures/mcwbyg/aspen_mystic_trapdoor.png b/public/textures/mcwbyg/aspen_mystic_trapdoor.png new file mode 100644 index 00000000..84b18be8 Binary files /dev/null and b/public/textures/mcwbyg/aspen_mystic_trapdoor.png differ diff --git a/public/textures/mcwbyg/aspen_nether_door.png b/public/textures/mcwbyg/aspen_nether_door.png new file mode 100644 index 00000000..49de1c59 Binary files /dev/null and b/public/textures/mcwbyg/aspen_nether_door.png differ diff --git a/public/textures/mcwbyg/aspen_pane_window.png b/public/textures/mcwbyg/aspen_pane_window.png new file mode 100644 index 00000000..ae62d45b Binary files /dev/null and b/public/textures/mcwbyg/aspen_pane_window.png differ diff --git a/public/textures/mcwbyg/aspen_paper_door.png b/public/textures/mcwbyg/aspen_paper_door.png new file mode 100644 index 00000000..cae92ed0 Binary files /dev/null and b/public/textures/mcwbyg/aspen_paper_door.png differ diff --git a/public/textures/mcwbyg/aspen_paper_trapdoor.png b/public/textures/mcwbyg/aspen_paper_trapdoor.png new file mode 100644 index 00000000..c2678222 Binary files /dev/null and b/public/textures/mcwbyg/aspen_paper_trapdoor.png differ diff --git a/public/textures/mcwbyg/aspen_picket_fence.png b/public/textures/mcwbyg/aspen_picket_fence.png new file mode 100644 index 00000000..b5a5e83a Binary files /dev/null and b/public/textures/mcwbyg/aspen_picket_fence.png differ diff --git a/public/textures/mcwbyg/aspen_plank_four_window.png b/public/textures/mcwbyg/aspen_plank_four_window.png new file mode 100644 index 00000000..e930ead7 Binary files /dev/null and b/public/textures/mcwbyg/aspen_plank_four_window.png differ diff --git a/public/textures/mcwbyg/aspen_plank_pane_window.png b/public/textures/mcwbyg/aspen_plank_pane_window.png new file mode 100644 index 00000000..640de0ec Binary files /dev/null and b/public/textures/mcwbyg/aspen_plank_pane_window.png differ diff --git a/public/textures/mcwbyg/aspen_plank_parapet.png b/public/textures/mcwbyg/aspen_plank_parapet.png new file mode 100644 index 00000000..e6797454 Binary files /dev/null and b/public/textures/mcwbyg/aspen_plank_parapet.png differ diff --git a/public/textures/mcwbyg/aspen_plank_window.png b/public/textures/mcwbyg/aspen_plank_window.png new file mode 100644 index 00000000..acd62007 Binary files /dev/null and b/public/textures/mcwbyg/aspen_plank_window.png differ diff --git a/public/textures/mcwbyg/aspen_plank_window2.png b/public/textures/mcwbyg/aspen_plank_window2.png new file mode 100644 index 00000000..e43ebf98 Binary files /dev/null and b/public/textures/mcwbyg/aspen_plank_window2.png differ diff --git a/public/textures/mcwbyg/aspen_planks_attic_roof.png b/public/textures/mcwbyg/aspen_planks_attic_roof.png new file mode 100644 index 00000000..3ac50603 Binary files /dev/null and b/public/textures/mcwbyg/aspen_planks_attic_roof.png differ diff --git a/public/textures/mcwbyg/aspen_planks_lower_roof.png b/public/textures/mcwbyg/aspen_planks_lower_roof.png new file mode 100644 index 00000000..32e66f74 Binary files /dev/null and b/public/textures/mcwbyg/aspen_planks_lower_roof.png differ diff --git a/public/textures/mcwbyg/aspen_planks_path.png b/public/textures/mcwbyg/aspen_planks_path.png new file mode 100644 index 00000000..2b3498e0 Binary files /dev/null and b/public/textures/mcwbyg/aspen_planks_path.png differ diff --git a/public/textures/mcwbyg/aspen_planks_roof.png b/public/textures/mcwbyg/aspen_planks_roof.png new file mode 100644 index 00000000..e64de370 Binary files /dev/null and b/public/textures/mcwbyg/aspen_planks_roof.png differ diff --git a/public/textures/mcwbyg/aspen_planks_steep_roof.png b/public/textures/mcwbyg/aspen_planks_steep_roof.png new file mode 100644 index 00000000..716b8fce Binary files /dev/null and b/public/textures/mcwbyg/aspen_planks_steep_roof.png differ diff --git a/public/textures/mcwbyg/aspen_planks_top_roof.png b/public/textures/mcwbyg/aspen_planks_top_roof.png new file mode 100644 index 00000000..f9c03105 Binary files /dev/null and b/public/textures/mcwbyg/aspen_planks_top_roof.png differ diff --git a/public/textures/mcwbyg/aspen_planks_upper_lower_roof.png b/public/textures/mcwbyg/aspen_planks_upper_lower_roof.png new file mode 100644 index 00000000..24444ff5 Binary files /dev/null and b/public/textures/mcwbyg/aspen_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/aspen_planks_upper_steep_roof.png b/public/textures/mcwbyg/aspen_planks_upper_steep_roof.png new file mode 100644 index 00000000..0fb99cc3 Binary files /dev/null and b/public/textures/mcwbyg/aspen_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/aspen_pyramid_gate.png b/public/textures/mcwbyg/aspen_pyramid_gate.png new file mode 100644 index 00000000..c5773755 Binary files /dev/null and b/public/textures/mcwbyg/aspen_pyramid_gate.png differ diff --git a/public/textures/mcwbyg/aspen_rail_bridge.png b/public/textures/mcwbyg/aspen_rail_bridge.png new file mode 100644 index 00000000..f31c9880 Binary files /dev/null and b/public/textures/mcwbyg/aspen_rail_bridge.png differ diff --git a/public/textures/mcwbyg/aspen_ranch_trapdoor.png b/public/textures/mcwbyg/aspen_ranch_trapdoor.png new file mode 100644 index 00000000..99aa94dd Binary files /dev/null and b/public/textures/mcwbyg/aspen_ranch_trapdoor.png differ diff --git a/public/textures/mcwbyg/aspen_roof.png b/public/textures/mcwbyg/aspen_roof.png new file mode 100644 index 00000000..9fd2d7ce Binary files /dev/null and b/public/textures/mcwbyg/aspen_roof.png differ diff --git a/public/textures/mcwbyg/aspen_rope_bridge_stair.png b/public/textures/mcwbyg/aspen_rope_bridge_stair.png new file mode 100644 index 00000000..44a7b186 Binary files /dev/null and b/public/textures/mcwbyg/aspen_rope_bridge_stair.png differ diff --git a/public/textures/mcwbyg/aspen_shutter.png b/public/textures/mcwbyg/aspen_shutter.png new file mode 100644 index 00000000..2e46d44c Binary files /dev/null and b/public/textures/mcwbyg/aspen_shutter.png differ diff --git a/public/textures/mcwbyg/aspen_stable_door.png b/public/textures/mcwbyg/aspen_stable_door.png new file mode 100644 index 00000000..7cebd6ae Binary files /dev/null and b/public/textures/mcwbyg/aspen_stable_door.png differ diff --git a/public/textures/mcwbyg/aspen_stable_head_door.png b/public/textures/mcwbyg/aspen_stable_head_door.png new file mode 100644 index 00000000..748d32ad Binary files /dev/null and b/public/textures/mcwbyg/aspen_stable_head_door.png differ diff --git a/public/textures/mcwbyg/aspen_steep_roof.png b/public/textures/mcwbyg/aspen_steep_roof.png new file mode 100644 index 00000000..c222f575 Binary files /dev/null and b/public/textures/mcwbyg/aspen_steep_roof.png differ diff --git a/public/textures/mcwbyg/aspen_stockade_fence.png b/public/textures/mcwbyg/aspen_stockade_fence.png new file mode 100644 index 00000000..45684c15 Binary files /dev/null and b/public/textures/mcwbyg/aspen_stockade_fence.png differ diff --git a/public/textures/mcwbyg/aspen_stool_chair.png b/public/textures/mcwbyg/aspen_stool_chair.png new file mode 100644 index 00000000..81fb4851 Binary files /dev/null and b/public/textures/mcwbyg/aspen_stool_chair.png differ diff --git a/public/textures/mcwbyg/aspen_striped_chair.png b/public/textures/mcwbyg/aspen_striped_chair.png new file mode 100644 index 00000000..290466e4 Binary files /dev/null and b/public/textures/mcwbyg/aspen_striped_chair.png differ diff --git a/public/textures/mcwbyg/aspen_swamp_door.png b/public/textures/mcwbyg/aspen_swamp_door.png new file mode 100644 index 00000000..1b317c9d Binary files /dev/null and b/public/textures/mcwbyg/aspen_swamp_door.png differ diff --git a/public/textures/mcwbyg/aspen_swamp_trapdoor.png b/public/textures/mcwbyg/aspen_swamp_trapdoor.png new file mode 100644 index 00000000..4b8a96e8 Binary files /dev/null and b/public/textures/mcwbyg/aspen_swamp_trapdoor.png differ diff --git a/public/textures/mcwbyg/aspen_table.png b/public/textures/mcwbyg/aspen_table.png new file mode 100644 index 00000000..eafca119 Binary files /dev/null and b/public/textures/mcwbyg/aspen_table.png differ diff --git a/public/textures/mcwbyg/aspen_top_roof.png b/public/textures/mcwbyg/aspen_top_roof.png new file mode 100644 index 00000000..37c89a74 Binary files /dev/null and b/public/textures/mcwbyg/aspen_top_roof.png differ diff --git a/public/textures/mcwbyg/aspen_triple_drawer.png b/public/textures/mcwbyg/aspen_triple_drawer.png new file mode 100644 index 00000000..c84e6e81 Binary files /dev/null and b/public/textures/mcwbyg/aspen_triple_drawer.png differ diff --git a/public/textures/mcwbyg/aspen_tropical_door.png b/public/textures/mcwbyg/aspen_tropical_door.png new file mode 100644 index 00000000..201dcb31 Binary files /dev/null and b/public/textures/mcwbyg/aspen_tropical_door.png differ diff --git a/public/textures/mcwbyg/aspen_tropical_trapdoor.png b/public/textures/mcwbyg/aspen_tropical_trapdoor.png new file mode 100644 index 00000000..e4e3ed8e Binary files /dev/null and b/public/textures/mcwbyg/aspen_tropical_trapdoor.png differ diff --git a/public/textures/mcwbyg/aspen_upper_lower_roof.png b/public/textures/mcwbyg/aspen_upper_lower_roof.png new file mode 100644 index 00000000..f4d5b27e Binary files /dev/null and b/public/textures/mcwbyg/aspen_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/aspen_upper_steep_roof.png b/public/textures/mcwbyg/aspen_upper_steep_roof.png new file mode 100644 index 00000000..a0d906e6 Binary files /dev/null and b/public/textures/mcwbyg/aspen_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/aspen_waffle_door.png b/public/textures/mcwbyg/aspen_waffle_door.png new file mode 100644 index 00000000..59093986 Binary files /dev/null and b/public/textures/mcwbyg/aspen_waffle_door.png differ diff --git a/public/textures/mcwbyg/aspen_wardrobe.png b/public/textures/mcwbyg/aspen_wardrobe.png new file mode 100644 index 00000000..9517ae5b Binary files /dev/null and b/public/textures/mcwbyg/aspen_wardrobe.png differ diff --git a/public/textures/mcwbyg/aspen_western_door.png b/public/textures/mcwbyg/aspen_western_door.png new file mode 100644 index 00000000..6ce4c9d8 Binary files /dev/null and b/public/textures/mcwbyg/aspen_western_door.png differ diff --git a/public/textures/mcwbyg/aspen_whispering_door.png b/public/textures/mcwbyg/aspen_whispering_door.png new file mode 100644 index 00000000..cae4b593 Binary files /dev/null and b/public/textures/mcwbyg/aspen_whispering_door.png differ diff --git a/public/textures/mcwbyg/aspen_whispering_trapdoor.png b/public/textures/mcwbyg/aspen_whispering_trapdoor.png new file mode 100644 index 00000000..aaaed476 Binary files /dev/null and b/public/textures/mcwbyg/aspen_whispering_trapdoor.png differ diff --git a/public/textures/mcwbyg/aspen_window.png b/public/textures/mcwbyg/aspen_window.png new file mode 100644 index 00000000..5a1d5ceb Binary files /dev/null and b/public/textures/mcwbyg/aspen_window.png differ diff --git a/public/textures/mcwbyg/aspen_window2.png b/public/textures/mcwbyg/aspen_window2.png new file mode 100644 index 00000000..35b18ec2 Binary files /dev/null and b/public/textures/mcwbyg/aspen_window2.png differ diff --git a/public/textures/mcwbyg/aspen_wired_fence.png b/public/textures/mcwbyg/aspen_wired_fence.png new file mode 100644 index 00000000..66295e91 Binary files /dev/null and b/public/textures/mcwbyg/aspen_wired_fence.png differ diff --git a/public/textures/mcwbyg/balustrade_black_sandstone_bridge.png b/public/textures/mcwbyg/balustrade_black_sandstone_bridge.png new file mode 100644 index 00000000..3c79fe54 Binary files /dev/null and b/public/textures/mcwbyg/balustrade_black_sandstone_bridge.png differ diff --git a/public/textures/mcwbyg/balustrade_blue_sandstone_bridge.png b/public/textures/mcwbyg/balustrade_blue_sandstone_bridge.png new file mode 100644 index 00000000..ca42d286 Binary files /dev/null and b/public/textures/mcwbyg/balustrade_blue_sandstone_bridge.png differ diff --git a/public/textures/mcwbyg/balustrade_dacite_bricks_bridge.png b/public/textures/mcwbyg/balustrade_dacite_bricks_bridge.png new file mode 100644 index 00000000..4007fce4 Binary files /dev/null and b/public/textures/mcwbyg/balustrade_dacite_bricks_bridge.png differ diff --git a/public/textures/mcwbyg/balustrade_pink_sandstone_bridge.png b/public/textures/mcwbyg/balustrade_pink_sandstone_bridge.png new file mode 100644 index 00000000..9f76880f Binary files /dev/null and b/public/textures/mcwbyg/balustrade_pink_sandstone_bridge.png differ diff --git a/public/textures/mcwbyg/balustrade_purple_sandstone_bridge.png b/public/textures/mcwbyg/balustrade_purple_sandstone_bridge.png new file mode 100644 index 00000000..60305402 Binary files /dev/null and b/public/textures/mcwbyg/balustrade_purple_sandstone_bridge.png differ diff --git a/public/textures/mcwbyg/balustrade_red_rock_bricks_bridge.png b/public/textures/mcwbyg/balustrade_red_rock_bricks_bridge.png new file mode 100644 index 00000000..39dd5753 Binary files /dev/null and b/public/textures/mcwbyg/balustrade_red_rock_bricks_bridge.png differ diff --git a/public/textures/mcwbyg/balustrade_white_sandstone_bridge.png b/public/textures/mcwbyg/balustrade_white_sandstone_bridge.png new file mode 100644 index 00000000..3d5266cc Binary files /dev/null and b/public/textures/mcwbyg/balustrade_white_sandstone_bridge.png differ diff --git a/public/textures/mcwbyg/balustrade_windswept_sandstone_bridge.png b/public/textures/mcwbyg/balustrade_windswept_sandstone_bridge.png new file mode 100644 index 00000000..fed341be Binary files /dev/null and b/public/textures/mcwbyg/balustrade_windswept_sandstone_bridge.png differ diff --git a/public/textures/mcwbyg/baobab_attic_roof.png b/public/textures/mcwbyg/baobab_attic_roof.png new file mode 100644 index 00000000..1e3939da Binary files /dev/null and b/public/textures/mcwbyg/baobab_attic_roof.png differ diff --git a/public/textures/mcwbyg/baobab_bamboo_door.png b/public/textures/mcwbyg/baobab_bamboo_door.png new file mode 100644 index 00000000..49a44936 Binary files /dev/null and b/public/textures/mcwbyg/baobab_bamboo_door.png differ diff --git a/public/textures/mcwbyg/baobab_bamboo_trapdoor.png b/public/textures/mcwbyg/baobab_bamboo_trapdoor.png new file mode 100644 index 00000000..45a8eb85 Binary files /dev/null and b/public/textures/mcwbyg/baobab_bamboo_trapdoor.png differ diff --git a/public/textures/mcwbyg/baobab_bark_glass_door.png b/public/textures/mcwbyg/baobab_bark_glass_door.png new file mode 100644 index 00000000..2c26b08e Binary files /dev/null and b/public/textures/mcwbyg/baobab_bark_glass_door.png differ diff --git a/public/textures/mcwbyg/baobab_bark_trapdoor.png b/public/textures/mcwbyg/baobab_bark_trapdoor.png new file mode 100644 index 00000000..e334a621 Binary files /dev/null and b/public/textures/mcwbyg/baobab_bark_trapdoor.png differ diff --git a/public/textures/mcwbyg/baobab_barn_door.png b/public/textures/mcwbyg/baobab_barn_door.png new file mode 100644 index 00000000..1083f0b3 Binary files /dev/null and b/public/textures/mcwbyg/baobab_barn_door.png differ diff --git a/public/textures/mcwbyg/baobab_barn_glass_door.png b/public/textures/mcwbyg/baobab_barn_glass_door.png new file mode 100644 index 00000000..b43782ae Binary files /dev/null and b/public/textures/mcwbyg/baobab_barn_glass_door.png differ diff --git a/public/textures/mcwbyg/baobab_barn_trapdoor.png b/public/textures/mcwbyg/baobab_barn_trapdoor.png new file mode 100644 index 00000000..836b203c Binary files /dev/null and b/public/textures/mcwbyg/baobab_barn_trapdoor.png differ diff --git a/public/textures/mcwbyg/baobab_barred_trapdoor.png b/public/textures/mcwbyg/baobab_barred_trapdoor.png new file mode 100644 index 00000000..1e0b1321 Binary files /dev/null and b/public/textures/mcwbyg/baobab_barred_trapdoor.png differ diff --git a/public/textures/mcwbyg/baobab_barrel_trapdoor.png b/public/textures/mcwbyg/baobab_barrel_trapdoor.png new file mode 100644 index 00000000..369d59d4 Binary files /dev/null and b/public/textures/mcwbyg/baobab_barrel_trapdoor.png differ diff --git a/public/textures/mcwbyg/baobab_beach_door.png b/public/textures/mcwbyg/baobab_beach_door.png new file mode 100644 index 00000000..70c1ead2 Binary files /dev/null and b/public/textures/mcwbyg/baobab_beach_door.png differ diff --git a/public/textures/mcwbyg/baobab_beach_trapdoor.png b/public/textures/mcwbyg/baobab_beach_trapdoor.png new file mode 100644 index 00000000..dab04988 Binary files /dev/null and b/public/textures/mcwbyg/baobab_beach_trapdoor.png differ diff --git a/public/textures/mcwbyg/baobab_blinds.png b/public/textures/mcwbyg/baobab_blinds.png new file mode 100644 index 00000000..ac6675b1 Binary files /dev/null and b/public/textures/mcwbyg/baobab_blinds.png differ diff --git a/public/textures/mcwbyg/baobab_blossom_trapdoor.png b/public/textures/mcwbyg/baobab_blossom_trapdoor.png new file mode 100644 index 00000000..3d0e2a35 Binary files /dev/null and b/public/textures/mcwbyg/baobab_blossom_trapdoor.png differ diff --git a/public/textures/mcwbyg/baobab_bookshelf.png b/public/textures/mcwbyg/baobab_bookshelf.png new file mode 100644 index 00000000..29ec3c23 Binary files /dev/null and b/public/textures/mcwbyg/baobab_bookshelf.png differ diff --git a/public/textures/mcwbyg/baobab_bookshelf_cupboard.png b/public/textures/mcwbyg/baobab_bookshelf_cupboard.png new file mode 100644 index 00000000..52d0dde6 Binary files /dev/null and b/public/textures/mcwbyg/baobab_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/baobab_bookshelf_drawer.png b/public/textures/mcwbyg/baobab_bookshelf_drawer.png new file mode 100644 index 00000000..d56e3ee4 Binary files /dev/null and b/public/textures/mcwbyg/baobab_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/baobab_bridge_pier.png b/public/textures/mcwbyg/baobab_bridge_pier.png new file mode 100644 index 00000000..2b94e953 Binary files /dev/null and b/public/textures/mcwbyg/baobab_bridge_pier.png differ diff --git a/public/textures/mcwbyg/baobab_chair.png b/public/textures/mcwbyg/baobab_chair.png new file mode 100644 index 00000000..b65ca90f Binary files /dev/null and b/public/textures/mcwbyg/baobab_chair.png differ diff --git a/public/textures/mcwbyg/baobab_classic_door.png b/public/textures/mcwbyg/baobab_classic_door.png new file mode 100644 index 00000000..f241c252 Binary files /dev/null and b/public/textures/mcwbyg/baobab_classic_door.png differ diff --git a/public/textures/mcwbyg/baobab_classic_trapdoor.png b/public/textures/mcwbyg/baobab_classic_trapdoor.png new file mode 100644 index 00000000..f48897c1 Binary files /dev/null and b/public/textures/mcwbyg/baobab_classic_trapdoor.png differ diff --git a/public/textures/mcwbyg/baobab_coffee_table.png b/public/textures/mcwbyg/baobab_coffee_table.png new file mode 100644 index 00000000..56df328c Binary files /dev/null and b/public/textures/mcwbyg/baobab_coffee_table.png differ diff --git a/public/textures/mcwbyg/baobab_cottage_door.png b/public/textures/mcwbyg/baobab_cottage_door.png new file mode 100644 index 00000000..31bde5a6 Binary files /dev/null and b/public/textures/mcwbyg/baobab_cottage_door.png differ diff --git a/public/textures/mcwbyg/baobab_cottage_trapdoor.png b/public/textures/mcwbyg/baobab_cottage_trapdoor.png new file mode 100644 index 00000000..bff666ad Binary files /dev/null and b/public/textures/mcwbyg/baobab_cottage_trapdoor.png differ diff --git a/public/textures/mcwbyg/baobab_counter.png b/public/textures/mcwbyg/baobab_counter.png new file mode 100644 index 00000000..62459a40 Binary files /dev/null and b/public/textures/mcwbyg/baobab_counter.png differ diff --git a/public/textures/mcwbyg/baobab_covered_desk.png b/public/textures/mcwbyg/baobab_covered_desk.png new file mode 100644 index 00000000..7517c026 Binary files /dev/null and b/public/textures/mcwbyg/baobab_covered_desk.png differ diff --git a/public/textures/mcwbyg/baobab_cupboard_counter.png b/public/textures/mcwbyg/baobab_cupboard_counter.png new file mode 100644 index 00000000..f6557573 Binary files /dev/null and b/public/textures/mcwbyg/baobab_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/baobab_curtain_rod.png b/public/textures/mcwbyg/baobab_curtain_rod.png new file mode 100644 index 00000000..abce33f6 Binary files /dev/null and b/public/textures/mcwbyg/baobab_curtain_rod.png differ diff --git a/public/textures/mcwbyg/baobab_curved_gate.png b/public/textures/mcwbyg/baobab_curved_gate.png new file mode 100644 index 00000000..e4fcdd9d Binary files /dev/null and b/public/textures/mcwbyg/baobab_curved_gate.png differ diff --git a/public/textures/mcwbyg/baobab_desk.png b/public/textures/mcwbyg/baobab_desk.png new file mode 100644 index 00000000..dcf49783 Binary files /dev/null and b/public/textures/mcwbyg/baobab_desk.png differ diff --git a/public/textures/mcwbyg/baobab_double_drawer.png b/public/textures/mcwbyg/baobab_double_drawer.png new file mode 100644 index 00000000..2d04904e Binary files /dev/null and b/public/textures/mcwbyg/baobab_double_drawer.png differ diff --git a/public/textures/mcwbyg/baobab_double_drawer_counter.png b/public/textures/mcwbyg/baobab_double_drawer_counter.png new file mode 100644 index 00000000..ead73f45 Binary files /dev/null and b/public/textures/mcwbyg/baobab_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/baobab_double_kitchen_cabinet.png b/public/textures/mcwbyg/baobab_double_kitchen_cabinet.png new file mode 100644 index 00000000..5d01792f Binary files /dev/null and b/public/textures/mcwbyg/baobab_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/baobab_double_wardrobe.png b/public/textures/mcwbyg/baobab_double_wardrobe.png new file mode 100644 index 00000000..4be550e1 Binary files /dev/null and b/public/textures/mcwbyg/baobab_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/baobab_drawer.png b/public/textures/mcwbyg/baobab_drawer.png new file mode 100644 index 00000000..a94edd41 Binary files /dev/null and b/public/textures/mcwbyg/baobab_drawer.png differ diff --git a/public/textures/mcwbyg/baobab_drawer_counter.png b/public/textures/mcwbyg/baobab_drawer_counter.png new file mode 100644 index 00000000..15a4f0b3 Binary files /dev/null and b/public/textures/mcwbyg/baobab_drawer_counter.png differ diff --git a/public/textures/mcwbyg/baobab_end_table.png b/public/textures/mcwbyg/baobab_end_table.png new file mode 100644 index 00000000..b3e15fcd Binary files /dev/null and b/public/textures/mcwbyg/baobab_end_table.png differ diff --git a/public/textures/mcwbyg/baobab_four_panel_door.png b/public/textures/mcwbyg/baobab_four_panel_door.png new file mode 100644 index 00000000..83d3a822 Binary files /dev/null and b/public/textures/mcwbyg/baobab_four_panel_door.png differ diff --git a/public/textures/mcwbyg/baobab_four_panel_trapdoor.png b/public/textures/mcwbyg/baobab_four_panel_trapdoor.png new file mode 100644 index 00000000..a090244b Binary files /dev/null and b/public/textures/mcwbyg/baobab_four_panel_trapdoor.png differ diff --git a/public/textures/mcwbyg/baobab_four_window.png b/public/textures/mcwbyg/baobab_four_window.png new file mode 100644 index 00000000..169c47d4 Binary files /dev/null and b/public/textures/mcwbyg/baobab_four_window.png differ diff --git a/public/textures/mcwbyg/baobab_glass_door.png b/public/textures/mcwbyg/baobab_glass_door.png new file mode 100644 index 00000000..53224878 Binary files /dev/null and b/public/textures/mcwbyg/baobab_glass_door.png differ diff --git a/public/textures/mcwbyg/baobab_glass_kitchen_cabinet.png b/public/textures/mcwbyg/baobab_glass_kitchen_cabinet.png new file mode 100644 index 00000000..d9a628c7 Binary files /dev/null and b/public/textures/mcwbyg/baobab_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/baobab_glass_table.png b/public/textures/mcwbyg/baobab_glass_table.png new file mode 100644 index 00000000..cc15a5b4 Binary files /dev/null and b/public/textures/mcwbyg/baobab_glass_table.png differ diff --git a/public/textures/mcwbyg/baobab_glass_trapdoor.png b/public/textures/mcwbyg/baobab_glass_trapdoor.png new file mode 100644 index 00000000..2beb633d Binary files /dev/null and b/public/textures/mcwbyg/baobab_glass_trapdoor.png differ diff --git a/public/textures/mcwbyg/baobab_hedge.png b/public/textures/mcwbyg/baobab_hedge.png new file mode 100644 index 00000000..8592ef69 Binary files /dev/null and b/public/textures/mcwbyg/baobab_hedge.png differ diff --git a/public/textures/mcwbyg/baobab_highley_gate.png b/public/textures/mcwbyg/baobab_highley_gate.png new file mode 100644 index 00000000..c06cea55 Binary files /dev/null and b/public/textures/mcwbyg/baobab_highley_gate.png differ diff --git a/public/textures/mcwbyg/baobab_horse_fence.png b/public/textures/mcwbyg/baobab_horse_fence.png new file mode 100644 index 00000000..198e640b Binary files /dev/null and b/public/textures/mcwbyg/baobab_horse_fence.png differ diff --git a/public/textures/mcwbyg/baobab_japanese2_door.png b/public/textures/mcwbyg/baobab_japanese2_door.png new file mode 100644 index 00000000..1b09ab8e Binary files /dev/null and b/public/textures/mcwbyg/baobab_japanese2_door.png differ diff --git a/public/textures/mcwbyg/baobab_japanese_door.png b/public/textures/mcwbyg/baobab_japanese_door.png new file mode 100644 index 00000000..35c6f8ba Binary files /dev/null and b/public/textures/mcwbyg/baobab_japanese_door.png differ diff --git a/public/textures/mcwbyg/baobab_kitchen_cabinet.png b/public/textures/mcwbyg/baobab_kitchen_cabinet.png new file mode 100644 index 00000000..024ad19e Binary files /dev/null and b/public/textures/mcwbyg/baobab_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/baobab_large_drawer.png b/public/textures/mcwbyg/baobab_large_drawer.png new file mode 100644 index 00000000..24f10267 Binary files /dev/null and b/public/textures/mcwbyg/baobab_large_drawer.png differ diff --git a/public/textures/mcwbyg/baobab_log_bridge_middle.png b/public/textures/mcwbyg/baobab_log_bridge_middle.png new file mode 100644 index 00000000..f11ad01f Binary files /dev/null and b/public/textures/mcwbyg/baobab_log_bridge_middle.png differ diff --git a/public/textures/mcwbyg/baobab_log_bridge_stair.png b/public/textures/mcwbyg/baobab_log_bridge_stair.png new file mode 100644 index 00000000..5d4b8741 Binary files /dev/null and b/public/textures/mcwbyg/baobab_log_bridge_stair.png differ diff --git a/public/textures/mcwbyg/baobab_log_parapet.png b/public/textures/mcwbyg/baobab_log_parapet.png new file mode 100644 index 00000000..761e15a9 Binary files /dev/null and b/public/textures/mcwbyg/baobab_log_parapet.png differ diff --git a/public/textures/mcwbyg/baobab_louvered_shutter.png b/public/textures/mcwbyg/baobab_louvered_shutter.png new file mode 100644 index 00000000..238f38d5 Binary files /dev/null and b/public/textures/mcwbyg/baobab_louvered_shutter.png differ diff --git a/public/textures/mcwbyg/baobab_lower_bookshelf_drawer.png b/public/textures/mcwbyg/baobab_lower_bookshelf_drawer.png new file mode 100644 index 00000000..230a5f99 Binary files /dev/null and b/public/textures/mcwbyg/baobab_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/baobab_lower_roof.png b/public/textures/mcwbyg/baobab_lower_roof.png new file mode 100644 index 00000000..49242da6 Binary files /dev/null and b/public/textures/mcwbyg/baobab_lower_roof.png differ diff --git a/public/textures/mcwbyg/baobab_lower_triple_drawer.png b/public/textures/mcwbyg/baobab_lower_triple_drawer.png new file mode 100644 index 00000000..6cf8f5d8 Binary files /dev/null and b/public/textures/mcwbyg/baobab_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/baobab_modern_chair.png b/public/textures/mcwbyg/baobab_modern_chair.png new file mode 100644 index 00000000..d7d12d50 Binary files /dev/null and b/public/textures/mcwbyg/baobab_modern_chair.png differ diff --git a/public/textures/mcwbyg/baobab_modern_desk.png b/public/textures/mcwbyg/baobab_modern_desk.png new file mode 100644 index 00000000..44cdd5b7 Binary files /dev/null and b/public/textures/mcwbyg/baobab_modern_desk.png differ diff --git a/public/textures/mcwbyg/baobab_modern_door.png b/public/textures/mcwbyg/baobab_modern_door.png new file mode 100644 index 00000000..bd8b4429 Binary files /dev/null and b/public/textures/mcwbyg/baobab_modern_door.png differ diff --git a/public/textures/mcwbyg/baobab_modern_wardrobe.png b/public/textures/mcwbyg/baobab_modern_wardrobe.png new file mode 100644 index 00000000..cca7c654 Binary files /dev/null and b/public/textures/mcwbyg/baobab_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/baobab_mystic_door.png b/public/textures/mcwbyg/baobab_mystic_door.png new file mode 100644 index 00000000..40ba3d99 Binary files /dev/null and b/public/textures/mcwbyg/baobab_mystic_door.png differ diff --git a/public/textures/mcwbyg/baobab_mystic_trapdoor.png b/public/textures/mcwbyg/baobab_mystic_trapdoor.png new file mode 100644 index 00000000..eb09a249 Binary files /dev/null and b/public/textures/mcwbyg/baobab_mystic_trapdoor.png differ diff --git a/public/textures/mcwbyg/baobab_nether_door.png b/public/textures/mcwbyg/baobab_nether_door.png new file mode 100644 index 00000000..df6c8acd Binary files /dev/null and b/public/textures/mcwbyg/baobab_nether_door.png differ diff --git a/public/textures/mcwbyg/baobab_pane_window.png b/public/textures/mcwbyg/baobab_pane_window.png new file mode 100644 index 00000000..eb31c5c1 Binary files /dev/null and b/public/textures/mcwbyg/baobab_pane_window.png differ diff --git a/public/textures/mcwbyg/baobab_paper_door.png b/public/textures/mcwbyg/baobab_paper_door.png new file mode 100644 index 00000000..638441e6 Binary files /dev/null and b/public/textures/mcwbyg/baobab_paper_door.png differ diff --git a/public/textures/mcwbyg/baobab_paper_trapdoor.png b/public/textures/mcwbyg/baobab_paper_trapdoor.png new file mode 100644 index 00000000..5905bf86 Binary files /dev/null and b/public/textures/mcwbyg/baobab_paper_trapdoor.png differ diff --git a/public/textures/mcwbyg/baobab_picket_fence.png b/public/textures/mcwbyg/baobab_picket_fence.png new file mode 100644 index 00000000..2908876d Binary files /dev/null and b/public/textures/mcwbyg/baobab_picket_fence.png differ diff --git a/public/textures/mcwbyg/baobab_plank_four_window.png b/public/textures/mcwbyg/baobab_plank_four_window.png new file mode 100644 index 00000000..7c4c1081 Binary files /dev/null and b/public/textures/mcwbyg/baobab_plank_four_window.png differ diff --git a/public/textures/mcwbyg/baobab_plank_pane_window.png b/public/textures/mcwbyg/baobab_plank_pane_window.png new file mode 100644 index 00000000..cc58375d Binary files /dev/null and b/public/textures/mcwbyg/baobab_plank_pane_window.png differ diff --git a/public/textures/mcwbyg/baobab_plank_parapet.png b/public/textures/mcwbyg/baobab_plank_parapet.png new file mode 100644 index 00000000..5283d77e Binary files /dev/null and b/public/textures/mcwbyg/baobab_plank_parapet.png differ diff --git a/public/textures/mcwbyg/baobab_plank_window.png b/public/textures/mcwbyg/baobab_plank_window.png new file mode 100644 index 00000000..e9c931ce Binary files /dev/null and b/public/textures/mcwbyg/baobab_plank_window.png differ diff --git a/public/textures/mcwbyg/baobab_plank_window2.png b/public/textures/mcwbyg/baobab_plank_window2.png new file mode 100644 index 00000000..844d55d8 Binary files /dev/null and b/public/textures/mcwbyg/baobab_plank_window2.png differ diff --git a/public/textures/mcwbyg/baobab_planks_attic_roof.png b/public/textures/mcwbyg/baobab_planks_attic_roof.png new file mode 100644 index 00000000..1d0eb0b5 Binary files /dev/null and b/public/textures/mcwbyg/baobab_planks_attic_roof.png differ diff --git a/public/textures/mcwbyg/baobab_planks_lower_roof.png b/public/textures/mcwbyg/baobab_planks_lower_roof.png new file mode 100644 index 00000000..cd8ae6e6 Binary files /dev/null and b/public/textures/mcwbyg/baobab_planks_lower_roof.png differ diff --git a/public/textures/mcwbyg/baobab_planks_path.png b/public/textures/mcwbyg/baobab_planks_path.png new file mode 100644 index 00000000..3e3c4a77 Binary files /dev/null and b/public/textures/mcwbyg/baobab_planks_path.png differ diff --git a/public/textures/mcwbyg/baobab_planks_roof.png b/public/textures/mcwbyg/baobab_planks_roof.png new file mode 100644 index 00000000..3aeb8a62 Binary files /dev/null and b/public/textures/mcwbyg/baobab_planks_roof.png differ diff --git a/public/textures/mcwbyg/baobab_planks_steep_roof.png b/public/textures/mcwbyg/baobab_planks_steep_roof.png new file mode 100644 index 00000000..e2a20d73 Binary files /dev/null and b/public/textures/mcwbyg/baobab_planks_steep_roof.png differ diff --git a/public/textures/mcwbyg/baobab_planks_top_roof.png b/public/textures/mcwbyg/baobab_planks_top_roof.png new file mode 100644 index 00000000..61a6e01f Binary files /dev/null and b/public/textures/mcwbyg/baobab_planks_top_roof.png differ diff --git a/public/textures/mcwbyg/baobab_planks_upper_lower_roof.png b/public/textures/mcwbyg/baobab_planks_upper_lower_roof.png new file mode 100644 index 00000000..d9043c34 Binary files /dev/null and b/public/textures/mcwbyg/baobab_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/baobab_planks_upper_steep_roof.png b/public/textures/mcwbyg/baobab_planks_upper_steep_roof.png new file mode 100644 index 00000000..4dd30f78 Binary files /dev/null and b/public/textures/mcwbyg/baobab_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/baobab_pyramid_gate.png b/public/textures/mcwbyg/baobab_pyramid_gate.png new file mode 100644 index 00000000..0cb4a748 Binary files /dev/null and b/public/textures/mcwbyg/baobab_pyramid_gate.png differ diff --git a/public/textures/mcwbyg/baobab_rail_bridge.png b/public/textures/mcwbyg/baobab_rail_bridge.png new file mode 100644 index 00000000..787278c7 Binary files /dev/null and b/public/textures/mcwbyg/baobab_rail_bridge.png differ diff --git a/public/textures/mcwbyg/baobab_ranch_trapdoor.png b/public/textures/mcwbyg/baobab_ranch_trapdoor.png new file mode 100644 index 00000000..5aa60348 Binary files /dev/null and b/public/textures/mcwbyg/baobab_ranch_trapdoor.png differ diff --git a/public/textures/mcwbyg/baobab_roof.png b/public/textures/mcwbyg/baobab_roof.png new file mode 100644 index 00000000..ad842f03 Binary files /dev/null and b/public/textures/mcwbyg/baobab_roof.png differ diff --git a/public/textures/mcwbyg/baobab_rope_bridge_stair.png b/public/textures/mcwbyg/baobab_rope_bridge_stair.png new file mode 100644 index 00000000..bcde53bd Binary files /dev/null and b/public/textures/mcwbyg/baobab_rope_bridge_stair.png differ diff --git a/public/textures/mcwbyg/baobab_shutter.png b/public/textures/mcwbyg/baobab_shutter.png new file mode 100644 index 00000000..3ebd7c8a Binary files /dev/null and b/public/textures/mcwbyg/baobab_shutter.png differ diff --git a/public/textures/mcwbyg/baobab_stable_door.png b/public/textures/mcwbyg/baobab_stable_door.png new file mode 100644 index 00000000..8ee13089 Binary files /dev/null and b/public/textures/mcwbyg/baobab_stable_door.png differ diff --git a/public/textures/mcwbyg/baobab_stable_head_door.png b/public/textures/mcwbyg/baobab_stable_head_door.png new file mode 100644 index 00000000..ecbfec84 Binary files /dev/null and b/public/textures/mcwbyg/baobab_stable_head_door.png differ diff --git a/public/textures/mcwbyg/baobab_steep_roof.png b/public/textures/mcwbyg/baobab_steep_roof.png new file mode 100644 index 00000000..c7b4a608 Binary files /dev/null and b/public/textures/mcwbyg/baobab_steep_roof.png differ diff --git a/public/textures/mcwbyg/baobab_stockade_fence.png b/public/textures/mcwbyg/baobab_stockade_fence.png new file mode 100644 index 00000000..8556e5c6 Binary files /dev/null and b/public/textures/mcwbyg/baobab_stockade_fence.png differ diff --git a/public/textures/mcwbyg/baobab_stool_chair.png b/public/textures/mcwbyg/baobab_stool_chair.png new file mode 100644 index 00000000..7fd61f9a Binary files /dev/null and b/public/textures/mcwbyg/baobab_stool_chair.png differ diff --git a/public/textures/mcwbyg/baobab_striped_chair.png b/public/textures/mcwbyg/baobab_striped_chair.png new file mode 100644 index 00000000..a0d2a038 Binary files /dev/null and b/public/textures/mcwbyg/baobab_striped_chair.png differ diff --git a/public/textures/mcwbyg/baobab_swamp_door.png b/public/textures/mcwbyg/baobab_swamp_door.png new file mode 100644 index 00000000..d470fb06 Binary files /dev/null and b/public/textures/mcwbyg/baobab_swamp_door.png differ diff --git a/public/textures/mcwbyg/baobab_swamp_trapdoor.png b/public/textures/mcwbyg/baobab_swamp_trapdoor.png new file mode 100644 index 00000000..08c83c40 Binary files /dev/null and b/public/textures/mcwbyg/baobab_swamp_trapdoor.png differ diff --git a/public/textures/mcwbyg/baobab_table.png b/public/textures/mcwbyg/baobab_table.png new file mode 100644 index 00000000..5b8eb0d3 Binary files /dev/null and b/public/textures/mcwbyg/baobab_table.png differ diff --git a/public/textures/mcwbyg/baobab_top_roof.png b/public/textures/mcwbyg/baobab_top_roof.png new file mode 100644 index 00000000..c829c0cd Binary files /dev/null and b/public/textures/mcwbyg/baobab_top_roof.png differ diff --git a/public/textures/mcwbyg/baobab_triple_drawer.png b/public/textures/mcwbyg/baobab_triple_drawer.png new file mode 100644 index 00000000..d202bb72 Binary files /dev/null and b/public/textures/mcwbyg/baobab_triple_drawer.png differ diff --git a/public/textures/mcwbyg/baobab_tropical_door.png b/public/textures/mcwbyg/baobab_tropical_door.png new file mode 100644 index 00000000..159caf0d Binary files /dev/null and b/public/textures/mcwbyg/baobab_tropical_door.png differ diff --git a/public/textures/mcwbyg/baobab_tropical_trapdoor.png b/public/textures/mcwbyg/baobab_tropical_trapdoor.png new file mode 100644 index 00000000..3c2c7a27 Binary files /dev/null and b/public/textures/mcwbyg/baobab_tropical_trapdoor.png differ diff --git a/public/textures/mcwbyg/baobab_upper_lower_roof.png b/public/textures/mcwbyg/baobab_upper_lower_roof.png new file mode 100644 index 00000000..57a1c2b1 Binary files /dev/null and b/public/textures/mcwbyg/baobab_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/baobab_upper_steep_roof.png b/public/textures/mcwbyg/baobab_upper_steep_roof.png new file mode 100644 index 00000000..2169a628 Binary files /dev/null and b/public/textures/mcwbyg/baobab_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/baobab_waffle_door.png b/public/textures/mcwbyg/baobab_waffle_door.png new file mode 100644 index 00000000..a7fd6052 Binary files /dev/null and b/public/textures/mcwbyg/baobab_waffle_door.png differ diff --git a/public/textures/mcwbyg/baobab_wardrobe.png b/public/textures/mcwbyg/baobab_wardrobe.png new file mode 100644 index 00000000..c012fd46 Binary files /dev/null and b/public/textures/mcwbyg/baobab_wardrobe.png differ diff --git a/public/textures/mcwbyg/baobab_western_door.png b/public/textures/mcwbyg/baobab_western_door.png new file mode 100644 index 00000000..a74201fd Binary files /dev/null and b/public/textures/mcwbyg/baobab_western_door.png differ diff --git a/public/textures/mcwbyg/baobab_whispering_door.png b/public/textures/mcwbyg/baobab_whispering_door.png new file mode 100644 index 00000000..b9dea71d Binary files /dev/null and b/public/textures/mcwbyg/baobab_whispering_door.png differ diff --git a/public/textures/mcwbyg/baobab_whispering_trapdoor.png b/public/textures/mcwbyg/baobab_whispering_trapdoor.png new file mode 100644 index 00000000..90d92548 Binary files /dev/null and b/public/textures/mcwbyg/baobab_whispering_trapdoor.png differ diff --git a/public/textures/mcwbyg/baobab_window.png b/public/textures/mcwbyg/baobab_window.png new file mode 100644 index 00000000..edc1e23a Binary files /dev/null and b/public/textures/mcwbyg/baobab_window.png differ diff --git a/public/textures/mcwbyg/baobab_window2.png b/public/textures/mcwbyg/baobab_window2.png new file mode 100644 index 00000000..856ca025 Binary files /dev/null and b/public/textures/mcwbyg/baobab_window2.png differ diff --git a/public/textures/mcwbyg/baobab_wired_fence.png b/public/textures/mcwbyg/baobab_wired_fence.png new file mode 100644 index 00000000..14cfd66d Binary files /dev/null and b/public/textures/mcwbyg/baobab_wired_fence.png differ diff --git a/public/textures/mcwbyg/black_sandstone_attic_roof.png b/public/textures/mcwbyg/black_sandstone_attic_roof.png new file mode 100644 index 00000000..fc2c0b2a Binary files /dev/null and b/public/textures/mcwbyg/black_sandstone_attic_roof.png differ diff --git a/public/textures/mcwbyg/black_sandstone_bridge.png b/public/textures/mcwbyg/black_sandstone_bridge.png new file mode 100644 index 00000000..ff186501 Binary files /dev/null and b/public/textures/mcwbyg/black_sandstone_bridge.png differ diff --git a/public/textures/mcwbyg/black_sandstone_bridge_pier.png b/public/textures/mcwbyg/black_sandstone_bridge_pier.png new file mode 100644 index 00000000..3755682b Binary files /dev/null and b/public/textures/mcwbyg/black_sandstone_bridge_pier.png differ diff --git a/public/textures/mcwbyg/black_sandstone_bridge_stair.png b/public/textures/mcwbyg/black_sandstone_bridge_stair.png new file mode 100644 index 00000000..b7d3b49a Binary files /dev/null and b/public/textures/mcwbyg/black_sandstone_bridge_stair.png differ diff --git a/public/textures/mcwbyg/black_sandstone_grass_topped_wall.png b/public/textures/mcwbyg/black_sandstone_grass_topped_wall.png new file mode 100644 index 00000000..da955149 Binary files /dev/null and b/public/textures/mcwbyg/black_sandstone_grass_topped_wall.png differ diff --git a/public/textures/mcwbyg/black_sandstone_lower_roof.png b/public/textures/mcwbyg/black_sandstone_lower_roof.png new file mode 100644 index 00000000..2328ce72 Binary files /dev/null and b/public/textures/mcwbyg/black_sandstone_lower_roof.png differ diff --git a/public/textures/mcwbyg/black_sandstone_pillar_wall.png b/public/textures/mcwbyg/black_sandstone_pillar_wall.png new file mode 100644 index 00000000..ba1db2c1 Binary files /dev/null and b/public/textures/mcwbyg/black_sandstone_pillar_wall.png differ diff --git a/public/textures/mcwbyg/black_sandstone_railing_gate.png b/public/textures/mcwbyg/black_sandstone_railing_gate.png new file mode 100644 index 00000000..97ed4103 Binary files /dev/null and b/public/textures/mcwbyg/black_sandstone_railing_gate.png differ diff --git a/public/textures/mcwbyg/black_sandstone_roof.png b/public/textures/mcwbyg/black_sandstone_roof.png new file mode 100644 index 00000000..480b2ba7 Binary files /dev/null and b/public/textures/mcwbyg/black_sandstone_roof.png differ diff --git a/public/textures/mcwbyg/black_sandstone_steep_roof.png b/public/textures/mcwbyg/black_sandstone_steep_roof.png new file mode 100644 index 00000000..a95a8c2d Binary files /dev/null and b/public/textures/mcwbyg/black_sandstone_steep_roof.png differ diff --git a/public/textures/mcwbyg/black_sandstone_top_roof.png b/public/textures/mcwbyg/black_sandstone_top_roof.png new file mode 100644 index 00000000..ffef6157 Binary files /dev/null and b/public/textures/mcwbyg/black_sandstone_top_roof.png differ diff --git a/public/textures/mcwbyg/black_sandstone_upper_lower_roof.png b/public/textures/mcwbyg/black_sandstone_upper_lower_roof.png new file mode 100644 index 00000000..ae3add3c Binary files /dev/null and b/public/textures/mcwbyg/black_sandstone_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/black_sandstone_upper_steep_roof.png b/public/textures/mcwbyg/black_sandstone_upper_steep_roof.png new file mode 100644 index 00000000..a00a8c64 Binary files /dev/null and b/public/textures/mcwbyg/black_sandstone_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/blooming_witch_hazel_hedge.png b/public/textures/mcwbyg/blooming_witch_hazel_hedge.png new file mode 100644 index 00000000..ae7be513 Binary files /dev/null and b/public/textures/mcwbyg/blooming_witch_hazel_hedge.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_attic_roof.png b/public/textures/mcwbyg/blue_enchanted_attic_roof.png new file mode 100644 index 00000000..8c4b3aa8 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_attic_roof.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_bamboo_door.png b/public/textures/mcwbyg/blue_enchanted_bamboo_door.png new file mode 100644 index 00000000..f0fade2d Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_bamboo_door.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_bamboo_trapdoor.png b/public/textures/mcwbyg/blue_enchanted_bamboo_trapdoor.png new file mode 100644 index 00000000..a6c9e2ec Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_bamboo_trapdoor.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_bark_glass_door.png b/public/textures/mcwbyg/blue_enchanted_bark_glass_door.png new file mode 100644 index 00000000..ab11eaec Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_bark_glass_door.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_bark_trapdoor.png b/public/textures/mcwbyg/blue_enchanted_bark_trapdoor.png new file mode 100644 index 00000000..e452eb98 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_bark_trapdoor.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_barn_door.png b/public/textures/mcwbyg/blue_enchanted_barn_door.png new file mode 100644 index 00000000..c1842da5 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_barn_door.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_barn_glass_door.png b/public/textures/mcwbyg/blue_enchanted_barn_glass_door.png new file mode 100644 index 00000000..83c3d768 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_barn_glass_door.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_barn_trapdoor.png b/public/textures/mcwbyg/blue_enchanted_barn_trapdoor.png new file mode 100644 index 00000000..67508c88 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_barn_trapdoor.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_barred_trapdoor.png b/public/textures/mcwbyg/blue_enchanted_barred_trapdoor.png new file mode 100644 index 00000000..c5d7ab6b Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_barred_trapdoor.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_barrel_trapdoor.png b/public/textures/mcwbyg/blue_enchanted_barrel_trapdoor.png new file mode 100644 index 00000000..d5107969 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_barrel_trapdoor.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_beach_door.png b/public/textures/mcwbyg/blue_enchanted_beach_door.png new file mode 100644 index 00000000..28b3505c Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_beach_door.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_beach_trapdoor.png b/public/textures/mcwbyg/blue_enchanted_beach_trapdoor.png new file mode 100644 index 00000000..441d8962 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_beach_trapdoor.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_blinds.png b/public/textures/mcwbyg/blue_enchanted_blinds.png new file mode 100644 index 00000000..e1a4aaca Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_blinds.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_blossom_trapdoor.png b/public/textures/mcwbyg/blue_enchanted_blossom_trapdoor.png new file mode 100644 index 00000000..515f3376 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_blossom_trapdoor.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_bookshelf.png b/public/textures/mcwbyg/blue_enchanted_bookshelf.png new file mode 100644 index 00000000..3428cf5e Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_bookshelf.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_bookshelf_cupboard.png b/public/textures/mcwbyg/blue_enchanted_bookshelf_cupboard.png new file mode 100644 index 00000000..ee3e145c Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_bookshelf_drawer.png b/public/textures/mcwbyg/blue_enchanted_bookshelf_drawer.png new file mode 100644 index 00000000..8380ecbf Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_bridge_pier.png b/public/textures/mcwbyg/blue_enchanted_bridge_pier.png new file mode 100644 index 00000000..b9a4ec4e Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_bridge_pier.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_chair.png b/public/textures/mcwbyg/blue_enchanted_chair.png new file mode 100644 index 00000000..ff231d0f Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_chair.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_classic_door.png b/public/textures/mcwbyg/blue_enchanted_classic_door.png new file mode 100644 index 00000000..010569ec Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_classic_door.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_classic_trapdoor.png b/public/textures/mcwbyg/blue_enchanted_classic_trapdoor.png new file mode 100644 index 00000000..7469e7e1 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_classic_trapdoor.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_coffee_table.png b/public/textures/mcwbyg/blue_enchanted_coffee_table.png new file mode 100644 index 00000000..55de8523 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_coffee_table.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_cottage_door.png b/public/textures/mcwbyg/blue_enchanted_cottage_door.png new file mode 100644 index 00000000..29c61939 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_cottage_door.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_cottage_trapdoor.png b/public/textures/mcwbyg/blue_enchanted_cottage_trapdoor.png new file mode 100644 index 00000000..435cc86e Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_cottage_trapdoor.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_counter.png b/public/textures/mcwbyg/blue_enchanted_counter.png new file mode 100644 index 00000000..4896a3a9 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_counter.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_covered_desk.png b/public/textures/mcwbyg/blue_enchanted_covered_desk.png new file mode 100644 index 00000000..828477b1 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_covered_desk.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_cupboard_counter.png b/public/textures/mcwbyg/blue_enchanted_cupboard_counter.png new file mode 100644 index 00000000..487ec6ef Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_curtain_rod.png b/public/textures/mcwbyg/blue_enchanted_curtain_rod.png new file mode 100644 index 00000000..822bbd73 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_curtain_rod.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_curved_gate.png b/public/textures/mcwbyg/blue_enchanted_curved_gate.png new file mode 100644 index 00000000..87c1d22b Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_curved_gate.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_desk.png b/public/textures/mcwbyg/blue_enchanted_desk.png new file mode 100644 index 00000000..54e2fbca Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_desk.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_double_drawer.png b/public/textures/mcwbyg/blue_enchanted_double_drawer.png new file mode 100644 index 00000000..49c32f57 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_double_drawer.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_double_drawer_counter.png b/public/textures/mcwbyg/blue_enchanted_double_drawer_counter.png new file mode 100644 index 00000000..1bc74138 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_double_kitchen_cabinet.png b/public/textures/mcwbyg/blue_enchanted_double_kitchen_cabinet.png new file mode 100644 index 00000000..93010e84 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_double_wardrobe.png b/public/textures/mcwbyg/blue_enchanted_double_wardrobe.png new file mode 100644 index 00000000..8d4f9fa2 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_drawer.png b/public/textures/mcwbyg/blue_enchanted_drawer.png new file mode 100644 index 00000000..d32fd006 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_drawer.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_drawer_counter.png b/public/textures/mcwbyg/blue_enchanted_drawer_counter.png new file mode 100644 index 00000000..605ecb10 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_drawer_counter.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_end_table.png b/public/textures/mcwbyg/blue_enchanted_end_table.png new file mode 100644 index 00000000..bf352c3a Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_end_table.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_four_panel_door.png b/public/textures/mcwbyg/blue_enchanted_four_panel_door.png new file mode 100644 index 00000000..2ab9e9be Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_four_panel_door.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_four_panel_trapdoor.png b/public/textures/mcwbyg/blue_enchanted_four_panel_trapdoor.png new file mode 100644 index 00000000..939083d8 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_four_panel_trapdoor.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_four_window.png b/public/textures/mcwbyg/blue_enchanted_four_window.png new file mode 100644 index 00000000..953fc4b8 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_four_window.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_glass_door.png b/public/textures/mcwbyg/blue_enchanted_glass_door.png new file mode 100644 index 00000000..a3e9bf82 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_glass_door.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_glass_kitchen_cabinet.png b/public/textures/mcwbyg/blue_enchanted_glass_kitchen_cabinet.png new file mode 100644 index 00000000..4ea618ee Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_glass_table.png b/public/textures/mcwbyg/blue_enchanted_glass_table.png new file mode 100644 index 00000000..5885fe39 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_glass_table.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_glass_trapdoor.png b/public/textures/mcwbyg/blue_enchanted_glass_trapdoor.png new file mode 100644 index 00000000..e59aa528 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_glass_trapdoor.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_hedge.png b/public/textures/mcwbyg/blue_enchanted_hedge.png new file mode 100644 index 00000000..00e8f63a Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_hedge.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_highley_gate.png b/public/textures/mcwbyg/blue_enchanted_highley_gate.png new file mode 100644 index 00000000..d6b33505 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_highley_gate.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_horse_fence.png b/public/textures/mcwbyg/blue_enchanted_horse_fence.png new file mode 100644 index 00000000..0effbcc8 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_horse_fence.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_japanese2_door.png b/public/textures/mcwbyg/blue_enchanted_japanese2_door.png new file mode 100644 index 00000000..b358cb12 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_japanese2_door.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_japanese_door.png b/public/textures/mcwbyg/blue_enchanted_japanese_door.png new file mode 100644 index 00000000..fc34886b Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_japanese_door.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_kitchen_cabinet.png b/public/textures/mcwbyg/blue_enchanted_kitchen_cabinet.png new file mode 100644 index 00000000..cbaaff6e Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_large_drawer.png b/public/textures/mcwbyg/blue_enchanted_large_drawer.png new file mode 100644 index 00000000..f8a8153a Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_large_drawer.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_log_bridge_middle.png b/public/textures/mcwbyg/blue_enchanted_log_bridge_middle.png new file mode 100644 index 00000000..6bc4be0c Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_log_bridge_middle.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_log_bridge_stair.png b/public/textures/mcwbyg/blue_enchanted_log_bridge_stair.png new file mode 100644 index 00000000..6caf8a01 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_log_bridge_stair.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_log_parapet.png b/public/textures/mcwbyg/blue_enchanted_log_parapet.png new file mode 100644 index 00000000..4886a02d Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_log_parapet.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_louvered_shutter.png b/public/textures/mcwbyg/blue_enchanted_louvered_shutter.png new file mode 100644 index 00000000..28ba5e00 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_louvered_shutter.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_lower_bookshelf_drawer.png b/public/textures/mcwbyg/blue_enchanted_lower_bookshelf_drawer.png new file mode 100644 index 00000000..af9aaca8 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_lower_roof.png b/public/textures/mcwbyg/blue_enchanted_lower_roof.png new file mode 100644 index 00000000..f640adab Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_lower_roof.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_lower_triple_drawer.png b/public/textures/mcwbyg/blue_enchanted_lower_triple_drawer.png new file mode 100644 index 00000000..794b1b46 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_modern_chair.png b/public/textures/mcwbyg/blue_enchanted_modern_chair.png new file mode 100644 index 00000000..579c0936 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_modern_chair.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_modern_desk.png b/public/textures/mcwbyg/blue_enchanted_modern_desk.png new file mode 100644 index 00000000..29067864 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_modern_desk.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_modern_door.png b/public/textures/mcwbyg/blue_enchanted_modern_door.png new file mode 100644 index 00000000..7088eb79 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_modern_door.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_modern_wardrobe.png b/public/textures/mcwbyg/blue_enchanted_modern_wardrobe.png new file mode 100644 index 00000000..c7b3ddf2 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_mystic_door.png b/public/textures/mcwbyg/blue_enchanted_mystic_door.png new file mode 100644 index 00000000..55fabb1f Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_mystic_door.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_mystic_trapdoor.png b/public/textures/mcwbyg/blue_enchanted_mystic_trapdoor.png new file mode 100644 index 00000000..793321a1 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_mystic_trapdoor.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_nether_door.png b/public/textures/mcwbyg/blue_enchanted_nether_door.png new file mode 100644 index 00000000..db39ef56 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_nether_door.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_pane_window.png b/public/textures/mcwbyg/blue_enchanted_pane_window.png new file mode 100644 index 00000000..9262f07e Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_pane_window.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_paper_door.png b/public/textures/mcwbyg/blue_enchanted_paper_door.png new file mode 100644 index 00000000..c97c78e7 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_paper_door.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_paper_trapdoor.png b/public/textures/mcwbyg/blue_enchanted_paper_trapdoor.png new file mode 100644 index 00000000..f3aec0d0 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_paper_trapdoor.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_picket_fence.png b/public/textures/mcwbyg/blue_enchanted_picket_fence.png new file mode 100644 index 00000000..85de8b04 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_picket_fence.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_plank_four_window.png b/public/textures/mcwbyg/blue_enchanted_plank_four_window.png new file mode 100644 index 00000000..81d7e77b Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_plank_four_window.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_plank_pane_window.png b/public/textures/mcwbyg/blue_enchanted_plank_pane_window.png new file mode 100644 index 00000000..588489e2 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_plank_pane_window.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_plank_parapet.png b/public/textures/mcwbyg/blue_enchanted_plank_parapet.png new file mode 100644 index 00000000..181c7060 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_plank_parapet.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_plank_window.png b/public/textures/mcwbyg/blue_enchanted_plank_window.png new file mode 100644 index 00000000..fc95ab46 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_plank_window.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_plank_window2.png b/public/textures/mcwbyg/blue_enchanted_plank_window2.png new file mode 100644 index 00000000..5b6a712d Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_plank_window2.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_planks_attic_roof.png b/public/textures/mcwbyg/blue_enchanted_planks_attic_roof.png new file mode 100644 index 00000000..6849e613 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_planks_attic_roof.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_planks_lower_roof.png b/public/textures/mcwbyg/blue_enchanted_planks_lower_roof.png new file mode 100644 index 00000000..76349c7b Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_planks_lower_roof.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_planks_path.png b/public/textures/mcwbyg/blue_enchanted_planks_path.png new file mode 100644 index 00000000..2405e371 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_planks_path.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_planks_roof.png b/public/textures/mcwbyg/blue_enchanted_planks_roof.png new file mode 100644 index 00000000..065d9dee Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_planks_roof.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_planks_steep_roof.png b/public/textures/mcwbyg/blue_enchanted_planks_steep_roof.png new file mode 100644 index 00000000..16837acf Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_planks_steep_roof.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_planks_top_roof.png b/public/textures/mcwbyg/blue_enchanted_planks_top_roof.png new file mode 100644 index 00000000..3d3599a0 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_planks_top_roof.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_planks_upper_lower_roof.png b/public/textures/mcwbyg/blue_enchanted_planks_upper_lower_roof.png new file mode 100644 index 00000000..bd450b4f Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_planks_upper_steep_roof.png b/public/textures/mcwbyg/blue_enchanted_planks_upper_steep_roof.png new file mode 100644 index 00000000..4c88afe2 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_pyramid_gate.png b/public/textures/mcwbyg/blue_enchanted_pyramid_gate.png new file mode 100644 index 00000000..3fe61c4f Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_pyramid_gate.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_rail_bridge.png b/public/textures/mcwbyg/blue_enchanted_rail_bridge.png new file mode 100644 index 00000000..9f334a40 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_rail_bridge.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_ranch_trapdoor.png b/public/textures/mcwbyg/blue_enchanted_ranch_trapdoor.png new file mode 100644 index 00000000..8b68fb6f Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_ranch_trapdoor.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_roof.png b/public/textures/mcwbyg/blue_enchanted_roof.png new file mode 100644 index 00000000..cb89012e Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_roof.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_rope_bridge_stair.png b/public/textures/mcwbyg/blue_enchanted_rope_bridge_stair.png new file mode 100644 index 00000000..b883aceb Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_rope_bridge_stair.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_shutter.png b/public/textures/mcwbyg/blue_enchanted_shutter.png new file mode 100644 index 00000000..2b203d10 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_shutter.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_stable_door.png b/public/textures/mcwbyg/blue_enchanted_stable_door.png new file mode 100644 index 00000000..26535a83 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_stable_door.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_stable_head_door.png b/public/textures/mcwbyg/blue_enchanted_stable_head_door.png new file mode 100644 index 00000000..401b9625 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_stable_head_door.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_steep_roof.png b/public/textures/mcwbyg/blue_enchanted_steep_roof.png new file mode 100644 index 00000000..1eef902a Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_steep_roof.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_stockade_fence.png b/public/textures/mcwbyg/blue_enchanted_stockade_fence.png new file mode 100644 index 00000000..f2acbf37 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_stockade_fence.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_stool_chair.png b/public/textures/mcwbyg/blue_enchanted_stool_chair.png new file mode 100644 index 00000000..0c1aba20 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_stool_chair.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_striped_chair.png b/public/textures/mcwbyg/blue_enchanted_striped_chair.png new file mode 100644 index 00000000..bb1a59ef Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_striped_chair.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_swamp_door.png b/public/textures/mcwbyg/blue_enchanted_swamp_door.png new file mode 100644 index 00000000..e6c454aa Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_swamp_door.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_swamp_trapdoor.png b/public/textures/mcwbyg/blue_enchanted_swamp_trapdoor.png new file mode 100644 index 00000000..98fbd09a Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_swamp_trapdoor.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_table.png b/public/textures/mcwbyg/blue_enchanted_table.png new file mode 100644 index 00000000..0a1c4f43 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_table.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_top_roof.png b/public/textures/mcwbyg/blue_enchanted_top_roof.png new file mode 100644 index 00000000..410ab1d3 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_top_roof.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_triple_drawer.png b/public/textures/mcwbyg/blue_enchanted_triple_drawer.png new file mode 100644 index 00000000..932e02a0 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_triple_drawer.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_tropical_door.png b/public/textures/mcwbyg/blue_enchanted_tropical_door.png new file mode 100644 index 00000000..2939c934 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_tropical_door.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_tropical_trapdoor.png b/public/textures/mcwbyg/blue_enchanted_tropical_trapdoor.png new file mode 100644 index 00000000..cb3c3090 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_tropical_trapdoor.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_upper_lower_roof.png b/public/textures/mcwbyg/blue_enchanted_upper_lower_roof.png new file mode 100644 index 00000000..0e1b84f9 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_upper_steep_roof.png b/public/textures/mcwbyg/blue_enchanted_upper_steep_roof.png new file mode 100644 index 00000000..f009c754 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_waffle_door.png b/public/textures/mcwbyg/blue_enchanted_waffle_door.png new file mode 100644 index 00000000..15130a9f Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_waffle_door.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_wardrobe.png b/public/textures/mcwbyg/blue_enchanted_wardrobe.png new file mode 100644 index 00000000..626ec43e Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_wardrobe.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_western_door.png b/public/textures/mcwbyg/blue_enchanted_western_door.png new file mode 100644 index 00000000..63d49118 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_western_door.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_whispering_door.png b/public/textures/mcwbyg/blue_enchanted_whispering_door.png new file mode 100644 index 00000000..3dc72ae2 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_whispering_door.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_whispering_trapdoor.png b/public/textures/mcwbyg/blue_enchanted_whispering_trapdoor.png new file mode 100644 index 00000000..c361d87f Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_whispering_trapdoor.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_window.png b/public/textures/mcwbyg/blue_enchanted_window.png new file mode 100644 index 00000000..06a47209 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_window.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_window2.png b/public/textures/mcwbyg/blue_enchanted_window2.png new file mode 100644 index 00000000..70ab666f Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_window2.png differ diff --git a/public/textures/mcwbyg/blue_enchanted_wired_fence.png b/public/textures/mcwbyg/blue_enchanted_wired_fence.png new file mode 100644 index 00000000..f9e37c52 Binary files /dev/null and b/public/textures/mcwbyg/blue_enchanted_wired_fence.png differ diff --git a/public/textures/mcwbyg/blue_sandstone_attic_roof.png b/public/textures/mcwbyg/blue_sandstone_attic_roof.png new file mode 100644 index 00000000..708a8d1d Binary files /dev/null and b/public/textures/mcwbyg/blue_sandstone_attic_roof.png differ diff --git a/public/textures/mcwbyg/blue_sandstone_bridge.png b/public/textures/mcwbyg/blue_sandstone_bridge.png new file mode 100644 index 00000000..4346cfc9 Binary files /dev/null and b/public/textures/mcwbyg/blue_sandstone_bridge.png differ diff --git a/public/textures/mcwbyg/blue_sandstone_bridge_pier.png b/public/textures/mcwbyg/blue_sandstone_bridge_pier.png new file mode 100644 index 00000000..d07565eb Binary files /dev/null and b/public/textures/mcwbyg/blue_sandstone_bridge_pier.png differ diff --git a/public/textures/mcwbyg/blue_sandstone_bridge_stair.png b/public/textures/mcwbyg/blue_sandstone_bridge_stair.png new file mode 100644 index 00000000..2f2e2215 Binary files /dev/null and b/public/textures/mcwbyg/blue_sandstone_bridge_stair.png differ diff --git a/public/textures/mcwbyg/blue_sandstone_grass_topped_wall.png b/public/textures/mcwbyg/blue_sandstone_grass_topped_wall.png new file mode 100644 index 00000000..95b19b98 Binary files /dev/null and b/public/textures/mcwbyg/blue_sandstone_grass_topped_wall.png differ diff --git a/public/textures/mcwbyg/blue_sandstone_lower_roof.png b/public/textures/mcwbyg/blue_sandstone_lower_roof.png new file mode 100644 index 00000000..787543c9 Binary files /dev/null and b/public/textures/mcwbyg/blue_sandstone_lower_roof.png differ diff --git a/public/textures/mcwbyg/blue_sandstone_pillar_wall.png b/public/textures/mcwbyg/blue_sandstone_pillar_wall.png new file mode 100644 index 00000000..4e31d191 Binary files /dev/null and b/public/textures/mcwbyg/blue_sandstone_pillar_wall.png differ diff --git a/public/textures/mcwbyg/blue_sandstone_railing_gate.png b/public/textures/mcwbyg/blue_sandstone_railing_gate.png new file mode 100644 index 00000000..9ad4ad15 Binary files /dev/null and b/public/textures/mcwbyg/blue_sandstone_railing_gate.png differ diff --git a/public/textures/mcwbyg/blue_sandstone_roof.png b/public/textures/mcwbyg/blue_sandstone_roof.png new file mode 100644 index 00000000..08d4bef1 Binary files /dev/null and b/public/textures/mcwbyg/blue_sandstone_roof.png differ diff --git a/public/textures/mcwbyg/blue_sandstone_steep_roof.png b/public/textures/mcwbyg/blue_sandstone_steep_roof.png new file mode 100644 index 00000000..1635d24a Binary files /dev/null and b/public/textures/mcwbyg/blue_sandstone_steep_roof.png differ diff --git a/public/textures/mcwbyg/blue_sandstone_top_roof.png b/public/textures/mcwbyg/blue_sandstone_top_roof.png new file mode 100644 index 00000000..2243808f Binary files /dev/null and b/public/textures/mcwbyg/blue_sandstone_top_roof.png differ diff --git a/public/textures/mcwbyg/blue_sandstone_upper_lower_roof.png b/public/textures/mcwbyg/blue_sandstone_upper_lower_roof.png new file mode 100644 index 00000000..49bff4e0 Binary files /dev/null and b/public/textures/mcwbyg/blue_sandstone_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/blue_sandstone_upper_steep_roof.png b/public/textures/mcwbyg/blue_sandstone_upper_steep_roof.png new file mode 100644 index 00000000..09e0e32c Binary files /dev/null and b/public/textures/mcwbyg/blue_sandstone_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/blue_spruce_hedge.png b/public/textures/mcwbyg/blue_spruce_hedge.png new file mode 100644 index 00000000..23cce71e Binary files /dev/null and b/public/textures/mcwbyg/blue_spruce_hedge.png differ diff --git a/public/textures/mcwbyg/brown_birch_hedge.png b/public/textures/mcwbyg/brown_birch_hedge.png new file mode 100644 index 00000000..9926fc40 Binary files /dev/null and b/public/textures/mcwbyg/brown_birch_hedge.png differ diff --git a/public/textures/mcwbyg/brown_oak_hedge.png b/public/textures/mcwbyg/brown_oak_hedge.png new file mode 100644 index 00000000..da201e38 Binary files /dev/null and b/public/textures/mcwbyg/brown_oak_hedge.png differ diff --git a/public/textures/mcwbyg/cika_attic_roof.png b/public/textures/mcwbyg/cika_attic_roof.png new file mode 100644 index 00000000..3fa33545 Binary files /dev/null and b/public/textures/mcwbyg/cika_attic_roof.png differ diff --git a/public/textures/mcwbyg/cika_bamboo_door.png b/public/textures/mcwbyg/cika_bamboo_door.png new file mode 100644 index 00000000..701ac983 Binary files /dev/null and b/public/textures/mcwbyg/cika_bamboo_door.png differ diff --git a/public/textures/mcwbyg/cika_bamboo_trapdoor.png b/public/textures/mcwbyg/cika_bamboo_trapdoor.png new file mode 100644 index 00000000..de730e81 Binary files /dev/null and b/public/textures/mcwbyg/cika_bamboo_trapdoor.png differ diff --git a/public/textures/mcwbyg/cika_bark_glass_door.png b/public/textures/mcwbyg/cika_bark_glass_door.png new file mode 100644 index 00000000..9ff0c668 Binary files /dev/null and b/public/textures/mcwbyg/cika_bark_glass_door.png differ diff --git a/public/textures/mcwbyg/cika_bark_trapdoor.png b/public/textures/mcwbyg/cika_bark_trapdoor.png new file mode 100644 index 00000000..1886e421 Binary files /dev/null and b/public/textures/mcwbyg/cika_bark_trapdoor.png differ diff --git a/public/textures/mcwbyg/cika_barn_door.png b/public/textures/mcwbyg/cika_barn_door.png new file mode 100644 index 00000000..0d59afcd Binary files /dev/null and b/public/textures/mcwbyg/cika_barn_door.png differ diff --git a/public/textures/mcwbyg/cika_barn_glass_door.png b/public/textures/mcwbyg/cika_barn_glass_door.png new file mode 100644 index 00000000..e6d5783d Binary files /dev/null and b/public/textures/mcwbyg/cika_barn_glass_door.png differ diff --git a/public/textures/mcwbyg/cika_barn_trapdoor.png b/public/textures/mcwbyg/cika_barn_trapdoor.png new file mode 100644 index 00000000..b3668031 Binary files /dev/null and b/public/textures/mcwbyg/cika_barn_trapdoor.png differ diff --git a/public/textures/mcwbyg/cika_barred_trapdoor.png b/public/textures/mcwbyg/cika_barred_trapdoor.png new file mode 100644 index 00000000..e7d18c8d Binary files /dev/null and b/public/textures/mcwbyg/cika_barred_trapdoor.png differ diff --git a/public/textures/mcwbyg/cika_barrel_trapdoor.png b/public/textures/mcwbyg/cika_barrel_trapdoor.png new file mode 100644 index 00000000..674d9614 Binary files /dev/null and b/public/textures/mcwbyg/cika_barrel_trapdoor.png differ diff --git a/public/textures/mcwbyg/cika_beach_door.png b/public/textures/mcwbyg/cika_beach_door.png new file mode 100644 index 00000000..31a2b497 Binary files /dev/null and b/public/textures/mcwbyg/cika_beach_door.png differ diff --git a/public/textures/mcwbyg/cika_beach_trapdoor.png b/public/textures/mcwbyg/cika_beach_trapdoor.png new file mode 100644 index 00000000..f6504656 Binary files /dev/null and b/public/textures/mcwbyg/cika_beach_trapdoor.png differ diff --git a/public/textures/mcwbyg/cika_blinds.png b/public/textures/mcwbyg/cika_blinds.png new file mode 100644 index 00000000..3b31604b Binary files /dev/null and b/public/textures/mcwbyg/cika_blinds.png differ diff --git a/public/textures/mcwbyg/cika_blossom_trapdoor.png b/public/textures/mcwbyg/cika_blossom_trapdoor.png new file mode 100644 index 00000000..798f1392 Binary files /dev/null and b/public/textures/mcwbyg/cika_blossom_trapdoor.png differ diff --git a/public/textures/mcwbyg/cika_bookshelf.png b/public/textures/mcwbyg/cika_bookshelf.png new file mode 100644 index 00000000..506856ac Binary files /dev/null and b/public/textures/mcwbyg/cika_bookshelf.png differ diff --git a/public/textures/mcwbyg/cika_bookshelf_cupboard.png b/public/textures/mcwbyg/cika_bookshelf_cupboard.png new file mode 100644 index 00000000..b3d6018f Binary files /dev/null and b/public/textures/mcwbyg/cika_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/cika_bookshelf_drawer.png b/public/textures/mcwbyg/cika_bookshelf_drawer.png new file mode 100644 index 00000000..8eea94ee Binary files /dev/null and b/public/textures/mcwbyg/cika_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/cika_bridge_pier.png b/public/textures/mcwbyg/cika_bridge_pier.png new file mode 100644 index 00000000..18898eaa Binary files /dev/null and b/public/textures/mcwbyg/cika_bridge_pier.png differ diff --git a/public/textures/mcwbyg/cika_chair.png b/public/textures/mcwbyg/cika_chair.png new file mode 100644 index 00000000..8c05c087 Binary files /dev/null and b/public/textures/mcwbyg/cika_chair.png differ diff --git a/public/textures/mcwbyg/cika_classic_door.png b/public/textures/mcwbyg/cika_classic_door.png new file mode 100644 index 00000000..2e4845e1 Binary files /dev/null and b/public/textures/mcwbyg/cika_classic_door.png differ diff --git a/public/textures/mcwbyg/cika_classic_trapdoor.png b/public/textures/mcwbyg/cika_classic_trapdoor.png new file mode 100644 index 00000000..2322c67f Binary files /dev/null and b/public/textures/mcwbyg/cika_classic_trapdoor.png differ diff --git a/public/textures/mcwbyg/cika_coffee_table.png b/public/textures/mcwbyg/cika_coffee_table.png new file mode 100644 index 00000000..17d22bd2 Binary files /dev/null and b/public/textures/mcwbyg/cika_coffee_table.png differ diff --git a/public/textures/mcwbyg/cika_cottage_door.png b/public/textures/mcwbyg/cika_cottage_door.png new file mode 100644 index 00000000..e662305a Binary files /dev/null and b/public/textures/mcwbyg/cika_cottage_door.png differ diff --git a/public/textures/mcwbyg/cika_cottage_trapdoor.png b/public/textures/mcwbyg/cika_cottage_trapdoor.png new file mode 100644 index 00000000..760e1c26 Binary files /dev/null and b/public/textures/mcwbyg/cika_cottage_trapdoor.png differ diff --git a/public/textures/mcwbyg/cika_counter.png b/public/textures/mcwbyg/cika_counter.png new file mode 100644 index 00000000..cf60804f Binary files /dev/null and b/public/textures/mcwbyg/cika_counter.png differ diff --git a/public/textures/mcwbyg/cika_covered_desk.png b/public/textures/mcwbyg/cika_covered_desk.png new file mode 100644 index 00000000..11577161 Binary files /dev/null and b/public/textures/mcwbyg/cika_covered_desk.png differ diff --git a/public/textures/mcwbyg/cika_cupboard_counter.png b/public/textures/mcwbyg/cika_cupboard_counter.png new file mode 100644 index 00000000..3ca90420 Binary files /dev/null and b/public/textures/mcwbyg/cika_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/cika_curtain_rod.png b/public/textures/mcwbyg/cika_curtain_rod.png new file mode 100644 index 00000000..ebc92d20 Binary files /dev/null and b/public/textures/mcwbyg/cika_curtain_rod.png differ diff --git a/public/textures/mcwbyg/cika_curved_gate.png b/public/textures/mcwbyg/cika_curved_gate.png new file mode 100644 index 00000000..2d88c0a4 Binary files /dev/null and b/public/textures/mcwbyg/cika_curved_gate.png differ diff --git a/public/textures/mcwbyg/cika_desk.png b/public/textures/mcwbyg/cika_desk.png new file mode 100644 index 00000000..7128f173 Binary files /dev/null and b/public/textures/mcwbyg/cika_desk.png differ diff --git a/public/textures/mcwbyg/cika_double_drawer.png b/public/textures/mcwbyg/cika_double_drawer.png new file mode 100644 index 00000000..a6f3e44b Binary files /dev/null and b/public/textures/mcwbyg/cika_double_drawer.png differ diff --git a/public/textures/mcwbyg/cika_double_drawer_counter.png b/public/textures/mcwbyg/cika_double_drawer_counter.png new file mode 100644 index 00000000..22da0ac7 Binary files /dev/null and b/public/textures/mcwbyg/cika_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/cika_double_kitchen_cabinet.png b/public/textures/mcwbyg/cika_double_kitchen_cabinet.png new file mode 100644 index 00000000..71e5f0d6 Binary files /dev/null and b/public/textures/mcwbyg/cika_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/cika_double_wardrobe.png b/public/textures/mcwbyg/cika_double_wardrobe.png new file mode 100644 index 00000000..eaad467f Binary files /dev/null and b/public/textures/mcwbyg/cika_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/cika_drawer.png b/public/textures/mcwbyg/cika_drawer.png new file mode 100644 index 00000000..7d1583fb Binary files /dev/null and b/public/textures/mcwbyg/cika_drawer.png differ diff --git a/public/textures/mcwbyg/cika_drawer_counter.png b/public/textures/mcwbyg/cika_drawer_counter.png new file mode 100644 index 00000000..938f5989 Binary files /dev/null and b/public/textures/mcwbyg/cika_drawer_counter.png differ diff --git a/public/textures/mcwbyg/cika_end_table.png b/public/textures/mcwbyg/cika_end_table.png new file mode 100644 index 00000000..bf961552 Binary files /dev/null and b/public/textures/mcwbyg/cika_end_table.png differ diff --git a/public/textures/mcwbyg/cika_four_panel_door.png b/public/textures/mcwbyg/cika_four_panel_door.png new file mode 100644 index 00000000..a4caed79 Binary files /dev/null and b/public/textures/mcwbyg/cika_four_panel_door.png differ diff --git a/public/textures/mcwbyg/cika_four_panel_trapdoor.png b/public/textures/mcwbyg/cika_four_panel_trapdoor.png new file mode 100644 index 00000000..8511f131 Binary files /dev/null and b/public/textures/mcwbyg/cika_four_panel_trapdoor.png differ diff --git a/public/textures/mcwbyg/cika_four_window.png b/public/textures/mcwbyg/cika_four_window.png new file mode 100644 index 00000000..54a4dbb1 Binary files /dev/null and b/public/textures/mcwbyg/cika_four_window.png differ diff --git a/public/textures/mcwbyg/cika_glass_door.png b/public/textures/mcwbyg/cika_glass_door.png new file mode 100644 index 00000000..8c2013f9 Binary files /dev/null and b/public/textures/mcwbyg/cika_glass_door.png differ diff --git a/public/textures/mcwbyg/cika_glass_kitchen_cabinet.png b/public/textures/mcwbyg/cika_glass_kitchen_cabinet.png new file mode 100644 index 00000000..4caf80f7 Binary files /dev/null and b/public/textures/mcwbyg/cika_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/cika_glass_table.png b/public/textures/mcwbyg/cika_glass_table.png new file mode 100644 index 00000000..8451d5a8 Binary files /dev/null and b/public/textures/mcwbyg/cika_glass_table.png differ diff --git a/public/textures/mcwbyg/cika_glass_trapdoor.png b/public/textures/mcwbyg/cika_glass_trapdoor.png new file mode 100644 index 00000000..1fc23bd5 Binary files /dev/null and b/public/textures/mcwbyg/cika_glass_trapdoor.png differ diff --git a/public/textures/mcwbyg/cika_hedge.png b/public/textures/mcwbyg/cika_hedge.png new file mode 100644 index 00000000..c8013460 Binary files /dev/null and b/public/textures/mcwbyg/cika_hedge.png differ diff --git a/public/textures/mcwbyg/cika_highley_gate.png b/public/textures/mcwbyg/cika_highley_gate.png new file mode 100644 index 00000000..7f462176 Binary files /dev/null and b/public/textures/mcwbyg/cika_highley_gate.png differ diff --git a/public/textures/mcwbyg/cika_horse_fence.png b/public/textures/mcwbyg/cika_horse_fence.png new file mode 100644 index 00000000..aa06a7da Binary files /dev/null and b/public/textures/mcwbyg/cika_horse_fence.png differ diff --git a/public/textures/mcwbyg/cika_japanese2_door.png b/public/textures/mcwbyg/cika_japanese2_door.png new file mode 100644 index 00000000..9a6311ff Binary files /dev/null and b/public/textures/mcwbyg/cika_japanese2_door.png differ diff --git a/public/textures/mcwbyg/cika_japanese_door.png b/public/textures/mcwbyg/cika_japanese_door.png new file mode 100644 index 00000000..85f16991 Binary files /dev/null and b/public/textures/mcwbyg/cika_japanese_door.png differ diff --git a/public/textures/mcwbyg/cika_kitchen_cabinet.png b/public/textures/mcwbyg/cika_kitchen_cabinet.png new file mode 100644 index 00000000..188cd30c Binary files /dev/null and b/public/textures/mcwbyg/cika_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/cika_large_drawer.png b/public/textures/mcwbyg/cika_large_drawer.png new file mode 100644 index 00000000..327f56fa Binary files /dev/null and b/public/textures/mcwbyg/cika_large_drawer.png differ diff --git a/public/textures/mcwbyg/cika_log_bridge_middle.png b/public/textures/mcwbyg/cika_log_bridge_middle.png new file mode 100644 index 00000000..2a3f5eb0 Binary files /dev/null and b/public/textures/mcwbyg/cika_log_bridge_middle.png differ diff --git a/public/textures/mcwbyg/cika_log_bridge_stair.png b/public/textures/mcwbyg/cika_log_bridge_stair.png new file mode 100644 index 00000000..e497eba7 Binary files /dev/null and b/public/textures/mcwbyg/cika_log_bridge_stair.png differ diff --git a/public/textures/mcwbyg/cika_log_parapet.png b/public/textures/mcwbyg/cika_log_parapet.png new file mode 100644 index 00000000..0b423488 Binary files /dev/null and b/public/textures/mcwbyg/cika_log_parapet.png differ diff --git a/public/textures/mcwbyg/cika_louvered_shutter.png b/public/textures/mcwbyg/cika_louvered_shutter.png new file mode 100644 index 00000000..84184ee9 Binary files /dev/null and b/public/textures/mcwbyg/cika_louvered_shutter.png differ diff --git a/public/textures/mcwbyg/cika_lower_bookshelf_drawer.png b/public/textures/mcwbyg/cika_lower_bookshelf_drawer.png new file mode 100644 index 00000000..b3098965 Binary files /dev/null and b/public/textures/mcwbyg/cika_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/cika_lower_roof.png b/public/textures/mcwbyg/cika_lower_roof.png new file mode 100644 index 00000000..6557e836 Binary files /dev/null and b/public/textures/mcwbyg/cika_lower_roof.png differ diff --git a/public/textures/mcwbyg/cika_lower_triple_drawer.png b/public/textures/mcwbyg/cika_lower_triple_drawer.png new file mode 100644 index 00000000..3a71bac3 Binary files /dev/null and b/public/textures/mcwbyg/cika_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/cika_modern_chair.png b/public/textures/mcwbyg/cika_modern_chair.png new file mode 100644 index 00000000..3f9cf5f6 Binary files /dev/null and b/public/textures/mcwbyg/cika_modern_chair.png differ diff --git a/public/textures/mcwbyg/cika_modern_desk.png b/public/textures/mcwbyg/cika_modern_desk.png new file mode 100644 index 00000000..9d7659a5 Binary files /dev/null and b/public/textures/mcwbyg/cika_modern_desk.png differ diff --git a/public/textures/mcwbyg/cika_modern_door.png b/public/textures/mcwbyg/cika_modern_door.png new file mode 100644 index 00000000..6770276c Binary files /dev/null and b/public/textures/mcwbyg/cika_modern_door.png differ diff --git a/public/textures/mcwbyg/cika_modern_wardrobe.png b/public/textures/mcwbyg/cika_modern_wardrobe.png new file mode 100644 index 00000000..6f8f1fa8 Binary files /dev/null and b/public/textures/mcwbyg/cika_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/cika_mystic_door.png b/public/textures/mcwbyg/cika_mystic_door.png new file mode 100644 index 00000000..0c2366fd Binary files /dev/null and b/public/textures/mcwbyg/cika_mystic_door.png differ diff --git a/public/textures/mcwbyg/cika_mystic_trapdoor.png b/public/textures/mcwbyg/cika_mystic_trapdoor.png new file mode 100644 index 00000000..15c4e3ff Binary files /dev/null and b/public/textures/mcwbyg/cika_mystic_trapdoor.png differ diff --git a/public/textures/mcwbyg/cika_nether_door.png b/public/textures/mcwbyg/cika_nether_door.png new file mode 100644 index 00000000..eba01232 Binary files /dev/null and b/public/textures/mcwbyg/cika_nether_door.png differ diff --git a/public/textures/mcwbyg/cika_pane_window.png b/public/textures/mcwbyg/cika_pane_window.png new file mode 100644 index 00000000..6faae832 Binary files /dev/null and b/public/textures/mcwbyg/cika_pane_window.png differ diff --git a/public/textures/mcwbyg/cika_paper_door.png b/public/textures/mcwbyg/cika_paper_door.png new file mode 100644 index 00000000..93a760db Binary files /dev/null and b/public/textures/mcwbyg/cika_paper_door.png differ diff --git a/public/textures/mcwbyg/cika_paper_trapdoor.png b/public/textures/mcwbyg/cika_paper_trapdoor.png new file mode 100644 index 00000000..374a968a Binary files /dev/null and b/public/textures/mcwbyg/cika_paper_trapdoor.png differ diff --git a/public/textures/mcwbyg/cika_picket_fence.png b/public/textures/mcwbyg/cika_picket_fence.png new file mode 100644 index 00000000..ea98db6e Binary files /dev/null and b/public/textures/mcwbyg/cika_picket_fence.png differ diff --git a/public/textures/mcwbyg/cika_plank_four_window.png b/public/textures/mcwbyg/cika_plank_four_window.png new file mode 100644 index 00000000..48d477b6 Binary files /dev/null and b/public/textures/mcwbyg/cika_plank_four_window.png differ diff --git a/public/textures/mcwbyg/cika_plank_pane_window.png b/public/textures/mcwbyg/cika_plank_pane_window.png new file mode 100644 index 00000000..88f1a98c Binary files /dev/null and b/public/textures/mcwbyg/cika_plank_pane_window.png differ diff --git a/public/textures/mcwbyg/cika_plank_parapet.png b/public/textures/mcwbyg/cika_plank_parapet.png new file mode 100644 index 00000000..779d6118 Binary files /dev/null and b/public/textures/mcwbyg/cika_plank_parapet.png differ diff --git a/public/textures/mcwbyg/cika_plank_window.png b/public/textures/mcwbyg/cika_plank_window.png new file mode 100644 index 00000000..eab6c964 Binary files /dev/null and b/public/textures/mcwbyg/cika_plank_window.png differ diff --git a/public/textures/mcwbyg/cika_plank_window2.png b/public/textures/mcwbyg/cika_plank_window2.png new file mode 100644 index 00000000..1114a744 Binary files /dev/null and b/public/textures/mcwbyg/cika_plank_window2.png differ diff --git a/public/textures/mcwbyg/cika_planks_attic_roof.png b/public/textures/mcwbyg/cika_planks_attic_roof.png new file mode 100644 index 00000000..8ba0a414 Binary files /dev/null and b/public/textures/mcwbyg/cika_planks_attic_roof.png differ diff --git a/public/textures/mcwbyg/cika_planks_lower_roof.png b/public/textures/mcwbyg/cika_planks_lower_roof.png new file mode 100644 index 00000000..5f953988 Binary files /dev/null and b/public/textures/mcwbyg/cika_planks_lower_roof.png differ diff --git a/public/textures/mcwbyg/cika_planks_path.png b/public/textures/mcwbyg/cika_planks_path.png new file mode 100644 index 00000000..54ea023f Binary files /dev/null and b/public/textures/mcwbyg/cika_planks_path.png differ diff --git a/public/textures/mcwbyg/cika_planks_roof.png b/public/textures/mcwbyg/cika_planks_roof.png new file mode 100644 index 00000000..e31dfa2d Binary files /dev/null and b/public/textures/mcwbyg/cika_planks_roof.png differ diff --git a/public/textures/mcwbyg/cika_planks_steep_roof.png b/public/textures/mcwbyg/cika_planks_steep_roof.png new file mode 100644 index 00000000..87c142d3 Binary files /dev/null and b/public/textures/mcwbyg/cika_planks_steep_roof.png differ diff --git a/public/textures/mcwbyg/cika_planks_top_roof.png b/public/textures/mcwbyg/cika_planks_top_roof.png new file mode 100644 index 00000000..118b25c6 Binary files /dev/null and b/public/textures/mcwbyg/cika_planks_top_roof.png differ diff --git a/public/textures/mcwbyg/cika_planks_upper_lower_roof.png b/public/textures/mcwbyg/cika_planks_upper_lower_roof.png new file mode 100644 index 00000000..d8a9d37d Binary files /dev/null and b/public/textures/mcwbyg/cika_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/cika_planks_upper_steep_roof.png b/public/textures/mcwbyg/cika_planks_upper_steep_roof.png new file mode 100644 index 00000000..bb7e4628 Binary files /dev/null and b/public/textures/mcwbyg/cika_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/cika_pyramid_gate.png b/public/textures/mcwbyg/cika_pyramid_gate.png new file mode 100644 index 00000000..d51c7b7a Binary files /dev/null and b/public/textures/mcwbyg/cika_pyramid_gate.png differ diff --git a/public/textures/mcwbyg/cika_rail_bridge.png b/public/textures/mcwbyg/cika_rail_bridge.png new file mode 100644 index 00000000..c8c09e39 Binary files /dev/null and b/public/textures/mcwbyg/cika_rail_bridge.png differ diff --git a/public/textures/mcwbyg/cika_ranch_trapdoor.png b/public/textures/mcwbyg/cika_ranch_trapdoor.png new file mode 100644 index 00000000..93e0c6be Binary files /dev/null and b/public/textures/mcwbyg/cika_ranch_trapdoor.png differ diff --git a/public/textures/mcwbyg/cika_roof.png b/public/textures/mcwbyg/cika_roof.png new file mode 100644 index 00000000..a2efc4d5 Binary files /dev/null and b/public/textures/mcwbyg/cika_roof.png differ diff --git a/public/textures/mcwbyg/cika_rope_bridge_stair.png b/public/textures/mcwbyg/cika_rope_bridge_stair.png new file mode 100644 index 00000000..4208cfdb Binary files /dev/null and b/public/textures/mcwbyg/cika_rope_bridge_stair.png differ diff --git a/public/textures/mcwbyg/cika_shutter.png b/public/textures/mcwbyg/cika_shutter.png new file mode 100644 index 00000000..671302d4 Binary files /dev/null and b/public/textures/mcwbyg/cika_shutter.png differ diff --git a/public/textures/mcwbyg/cika_stable_door.png b/public/textures/mcwbyg/cika_stable_door.png new file mode 100644 index 00000000..ce616692 Binary files /dev/null and b/public/textures/mcwbyg/cika_stable_door.png differ diff --git a/public/textures/mcwbyg/cika_stable_head_door.png b/public/textures/mcwbyg/cika_stable_head_door.png new file mode 100644 index 00000000..fc716522 Binary files /dev/null and b/public/textures/mcwbyg/cika_stable_head_door.png differ diff --git a/public/textures/mcwbyg/cika_steep_roof.png b/public/textures/mcwbyg/cika_steep_roof.png new file mode 100644 index 00000000..69ecc6c2 Binary files /dev/null and b/public/textures/mcwbyg/cika_steep_roof.png differ diff --git a/public/textures/mcwbyg/cika_stockade_fence.png b/public/textures/mcwbyg/cika_stockade_fence.png new file mode 100644 index 00000000..ad648990 Binary files /dev/null and b/public/textures/mcwbyg/cika_stockade_fence.png differ diff --git a/public/textures/mcwbyg/cika_stool_chair.png b/public/textures/mcwbyg/cika_stool_chair.png new file mode 100644 index 00000000..c2032c26 Binary files /dev/null and b/public/textures/mcwbyg/cika_stool_chair.png differ diff --git a/public/textures/mcwbyg/cika_striped_chair.png b/public/textures/mcwbyg/cika_striped_chair.png new file mode 100644 index 00000000..1a62e49e Binary files /dev/null and b/public/textures/mcwbyg/cika_striped_chair.png differ diff --git a/public/textures/mcwbyg/cika_swamp_door.png b/public/textures/mcwbyg/cika_swamp_door.png new file mode 100644 index 00000000..58909fcf Binary files /dev/null and b/public/textures/mcwbyg/cika_swamp_door.png differ diff --git a/public/textures/mcwbyg/cika_swamp_trapdoor.png b/public/textures/mcwbyg/cika_swamp_trapdoor.png new file mode 100644 index 00000000..7b20c1b6 Binary files /dev/null and b/public/textures/mcwbyg/cika_swamp_trapdoor.png differ diff --git a/public/textures/mcwbyg/cika_table.png b/public/textures/mcwbyg/cika_table.png new file mode 100644 index 00000000..36046861 Binary files /dev/null and b/public/textures/mcwbyg/cika_table.png differ diff --git a/public/textures/mcwbyg/cika_top_roof.png b/public/textures/mcwbyg/cika_top_roof.png new file mode 100644 index 00000000..3c539409 Binary files /dev/null and b/public/textures/mcwbyg/cika_top_roof.png differ diff --git a/public/textures/mcwbyg/cika_triple_drawer.png b/public/textures/mcwbyg/cika_triple_drawer.png new file mode 100644 index 00000000..6f0caf7d Binary files /dev/null and b/public/textures/mcwbyg/cika_triple_drawer.png differ diff --git a/public/textures/mcwbyg/cika_tropical_door.png b/public/textures/mcwbyg/cika_tropical_door.png new file mode 100644 index 00000000..dd46fa28 Binary files /dev/null and b/public/textures/mcwbyg/cika_tropical_door.png differ diff --git a/public/textures/mcwbyg/cika_tropical_trapdoor.png b/public/textures/mcwbyg/cika_tropical_trapdoor.png new file mode 100644 index 00000000..e41b78eb Binary files /dev/null and b/public/textures/mcwbyg/cika_tropical_trapdoor.png differ diff --git a/public/textures/mcwbyg/cika_upper_lower_roof.png b/public/textures/mcwbyg/cika_upper_lower_roof.png new file mode 100644 index 00000000..dbdd845c Binary files /dev/null and b/public/textures/mcwbyg/cika_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/cika_upper_steep_roof.png b/public/textures/mcwbyg/cika_upper_steep_roof.png new file mode 100644 index 00000000..13fecc6e Binary files /dev/null and b/public/textures/mcwbyg/cika_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/cika_waffle_door.png b/public/textures/mcwbyg/cika_waffle_door.png new file mode 100644 index 00000000..a3a732a5 Binary files /dev/null and b/public/textures/mcwbyg/cika_waffle_door.png differ diff --git a/public/textures/mcwbyg/cika_wardrobe.png b/public/textures/mcwbyg/cika_wardrobe.png new file mode 100644 index 00000000..b27e5e41 Binary files /dev/null and b/public/textures/mcwbyg/cika_wardrobe.png differ diff --git a/public/textures/mcwbyg/cika_western_door.png b/public/textures/mcwbyg/cika_western_door.png new file mode 100644 index 00000000..2a221058 Binary files /dev/null and b/public/textures/mcwbyg/cika_western_door.png differ diff --git a/public/textures/mcwbyg/cika_whispering_door.png b/public/textures/mcwbyg/cika_whispering_door.png new file mode 100644 index 00000000..e2e7c69c Binary files /dev/null and b/public/textures/mcwbyg/cika_whispering_door.png differ diff --git a/public/textures/mcwbyg/cika_whispering_trapdoor.png b/public/textures/mcwbyg/cika_whispering_trapdoor.png new file mode 100644 index 00000000..ea649259 Binary files /dev/null and b/public/textures/mcwbyg/cika_whispering_trapdoor.png differ diff --git a/public/textures/mcwbyg/cika_window.png b/public/textures/mcwbyg/cika_window.png new file mode 100644 index 00000000..693c4e12 Binary files /dev/null and b/public/textures/mcwbyg/cika_window.png differ diff --git a/public/textures/mcwbyg/cika_window2.png b/public/textures/mcwbyg/cika_window2.png new file mode 100644 index 00000000..16327210 Binary files /dev/null and b/public/textures/mcwbyg/cika_window2.png differ diff --git a/public/textures/mcwbyg/cika_wired_fence.png b/public/textures/mcwbyg/cika_wired_fence.png new file mode 100644 index 00000000..7a36225b Binary files /dev/null and b/public/textures/mcwbyg/cika_wired_fence.png differ diff --git a/public/textures/mcwbyg/cypress_attic_roof.png b/public/textures/mcwbyg/cypress_attic_roof.png new file mode 100644 index 00000000..b94382d4 Binary files /dev/null and b/public/textures/mcwbyg/cypress_attic_roof.png differ diff --git a/public/textures/mcwbyg/cypress_bamboo_door.png b/public/textures/mcwbyg/cypress_bamboo_door.png new file mode 100644 index 00000000..378fbe2d Binary files /dev/null and b/public/textures/mcwbyg/cypress_bamboo_door.png differ diff --git a/public/textures/mcwbyg/cypress_bamboo_trapdoor.png b/public/textures/mcwbyg/cypress_bamboo_trapdoor.png new file mode 100644 index 00000000..a8a76e3f Binary files /dev/null and b/public/textures/mcwbyg/cypress_bamboo_trapdoor.png differ diff --git a/public/textures/mcwbyg/cypress_bark_glass_door.png b/public/textures/mcwbyg/cypress_bark_glass_door.png new file mode 100644 index 00000000..2b65b04a Binary files /dev/null and b/public/textures/mcwbyg/cypress_bark_glass_door.png differ diff --git a/public/textures/mcwbyg/cypress_bark_trapdoor.png b/public/textures/mcwbyg/cypress_bark_trapdoor.png new file mode 100644 index 00000000..df48c2f8 Binary files /dev/null and b/public/textures/mcwbyg/cypress_bark_trapdoor.png differ diff --git a/public/textures/mcwbyg/cypress_barn_door.png b/public/textures/mcwbyg/cypress_barn_door.png new file mode 100644 index 00000000..0e1323f3 Binary files /dev/null and b/public/textures/mcwbyg/cypress_barn_door.png differ diff --git a/public/textures/mcwbyg/cypress_barn_glass_door.png b/public/textures/mcwbyg/cypress_barn_glass_door.png new file mode 100644 index 00000000..64e95d3c Binary files /dev/null and b/public/textures/mcwbyg/cypress_barn_glass_door.png differ diff --git a/public/textures/mcwbyg/cypress_barn_trapdoor.png b/public/textures/mcwbyg/cypress_barn_trapdoor.png new file mode 100644 index 00000000..5ffb3d7e Binary files /dev/null and b/public/textures/mcwbyg/cypress_barn_trapdoor.png differ diff --git a/public/textures/mcwbyg/cypress_barred_trapdoor.png b/public/textures/mcwbyg/cypress_barred_trapdoor.png new file mode 100644 index 00000000..ad271e1e Binary files /dev/null and b/public/textures/mcwbyg/cypress_barred_trapdoor.png differ diff --git a/public/textures/mcwbyg/cypress_barrel_trapdoor.png b/public/textures/mcwbyg/cypress_barrel_trapdoor.png new file mode 100644 index 00000000..db097d65 Binary files /dev/null and b/public/textures/mcwbyg/cypress_barrel_trapdoor.png differ diff --git a/public/textures/mcwbyg/cypress_beach_door.png b/public/textures/mcwbyg/cypress_beach_door.png new file mode 100644 index 00000000..e78732b9 Binary files /dev/null and b/public/textures/mcwbyg/cypress_beach_door.png differ diff --git a/public/textures/mcwbyg/cypress_beach_trapdoor.png b/public/textures/mcwbyg/cypress_beach_trapdoor.png new file mode 100644 index 00000000..5b25f7e4 Binary files /dev/null and b/public/textures/mcwbyg/cypress_beach_trapdoor.png differ diff --git a/public/textures/mcwbyg/cypress_blinds.png b/public/textures/mcwbyg/cypress_blinds.png new file mode 100644 index 00000000..62f977fb Binary files /dev/null and b/public/textures/mcwbyg/cypress_blinds.png differ diff --git a/public/textures/mcwbyg/cypress_blossom_trapdoor.png b/public/textures/mcwbyg/cypress_blossom_trapdoor.png new file mode 100644 index 00000000..18cbe578 Binary files /dev/null and b/public/textures/mcwbyg/cypress_blossom_trapdoor.png differ diff --git a/public/textures/mcwbyg/cypress_bookshelf.png b/public/textures/mcwbyg/cypress_bookshelf.png new file mode 100644 index 00000000..8d61a8f9 Binary files /dev/null and b/public/textures/mcwbyg/cypress_bookshelf.png differ diff --git a/public/textures/mcwbyg/cypress_bookshelf_cupboard.png b/public/textures/mcwbyg/cypress_bookshelf_cupboard.png new file mode 100644 index 00000000..0e819911 Binary files /dev/null and b/public/textures/mcwbyg/cypress_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/cypress_bookshelf_drawer.png b/public/textures/mcwbyg/cypress_bookshelf_drawer.png new file mode 100644 index 00000000..9e3c40b7 Binary files /dev/null and b/public/textures/mcwbyg/cypress_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/cypress_bridge_pier.png b/public/textures/mcwbyg/cypress_bridge_pier.png new file mode 100644 index 00000000..32099a11 Binary files /dev/null and b/public/textures/mcwbyg/cypress_bridge_pier.png differ diff --git a/public/textures/mcwbyg/cypress_chair.png b/public/textures/mcwbyg/cypress_chair.png new file mode 100644 index 00000000..ce7a67bb Binary files /dev/null and b/public/textures/mcwbyg/cypress_chair.png differ diff --git a/public/textures/mcwbyg/cypress_classic_door.png b/public/textures/mcwbyg/cypress_classic_door.png new file mode 100644 index 00000000..4f0d42fb Binary files /dev/null and b/public/textures/mcwbyg/cypress_classic_door.png differ diff --git a/public/textures/mcwbyg/cypress_classic_trapdoor.png b/public/textures/mcwbyg/cypress_classic_trapdoor.png new file mode 100644 index 00000000..26f58fbb Binary files /dev/null and b/public/textures/mcwbyg/cypress_classic_trapdoor.png differ diff --git a/public/textures/mcwbyg/cypress_coffee_table.png b/public/textures/mcwbyg/cypress_coffee_table.png new file mode 100644 index 00000000..37d2e9ce Binary files /dev/null and b/public/textures/mcwbyg/cypress_coffee_table.png differ diff --git a/public/textures/mcwbyg/cypress_cottage_door.png b/public/textures/mcwbyg/cypress_cottage_door.png new file mode 100644 index 00000000..4419b0d6 Binary files /dev/null and b/public/textures/mcwbyg/cypress_cottage_door.png differ diff --git a/public/textures/mcwbyg/cypress_cottage_trapdoor.png b/public/textures/mcwbyg/cypress_cottage_trapdoor.png new file mode 100644 index 00000000..04395f54 Binary files /dev/null and b/public/textures/mcwbyg/cypress_cottage_trapdoor.png differ diff --git a/public/textures/mcwbyg/cypress_counter.png b/public/textures/mcwbyg/cypress_counter.png new file mode 100644 index 00000000..2c2ecf56 Binary files /dev/null and b/public/textures/mcwbyg/cypress_counter.png differ diff --git a/public/textures/mcwbyg/cypress_covered_desk.png b/public/textures/mcwbyg/cypress_covered_desk.png new file mode 100644 index 00000000..f953f113 Binary files /dev/null and b/public/textures/mcwbyg/cypress_covered_desk.png differ diff --git a/public/textures/mcwbyg/cypress_cupboard_counter.png b/public/textures/mcwbyg/cypress_cupboard_counter.png new file mode 100644 index 00000000..d3890471 Binary files /dev/null and b/public/textures/mcwbyg/cypress_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/cypress_curtain_rod.png b/public/textures/mcwbyg/cypress_curtain_rod.png new file mode 100644 index 00000000..e7a54aa7 Binary files /dev/null and b/public/textures/mcwbyg/cypress_curtain_rod.png differ diff --git a/public/textures/mcwbyg/cypress_curved_gate.png b/public/textures/mcwbyg/cypress_curved_gate.png new file mode 100644 index 00000000..a176d2b4 Binary files /dev/null and b/public/textures/mcwbyg/cypress_curved_gate.png differ diff --git a/public/textures/mcwbyg/cypress_desk.png b/public/textures/mcwbyg/cypress_desk.png new file mode 100644 index 00000000..e111ac32 Binary files /dev/null and b/public/textures/mcwbyg/cypress_desk.png differ diff --git a/public/textures/mcwbyg/cypress_double_drawer.png b/public/textures/mcwbyg/cypress_double_drawer.png new file mode 100644 index 00000000..f6a92904 Binary files /dev/null and b/public/textures/mcwbyg/cypress_double_drawer.png differ diff --git a/public/textures/mcwbyg/cypress_double_drawer_counter.png b/public/textures/mcwbyg/cypress_double_drawer_counter.png new file mode 100644 index 00000000..860509e3 Binary files /dev/null and b/public/textures/mcwbyg/cypress_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/cypress_double_kitchen_cabinet.png b/public/textures/mcwbyg/cypress_double_kitchen_cabinet.png new file mode 100644 index 00000000..ea477fc3 Binary files /dev/null and b/public/textures/mcwbyg/cypress_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/cypress_double_wardrobe.png b/public/textures/mcwbyg/cypress_double_wardrobe.png new file mode 100644 index 00000000..c75fb6d8 Binary files /dev/null and b/public/textures/mcwbyg/cypress_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/cypress_drawer.png b/public/textures/mcwbyg/cypress_drawer.png new file mode 100644 index 00000000..91da7992 Binary files /dev/null and b/public/textures/mcwbyg/cypress_drawer.png differ diff --git a/public/textures/mcwbyg/cypress_drawer_counter.png b/public/textures/mcwbyg/cypress_drawer_counter.png new file mode 100644 index 00000000..7478ac3e Binary files /dev/null and b/public/textures/mcwbyg/cypress_drawer_counter.png differ diff --git a/public/textures/mcwbyg/cypress_end_table.png b/public/textures/mcwbyg/cypress_end_table.png new file mode 100644 index 00000000..30311334 Binary files /dev/null and b/public/textures/mcwbyg/cypress_end_table.png differ diff --git a/public/textures/mcwbyg/cypress_four_panel_door.png b/public/textures/mcwbyg/cypress_four_panel_door.png new file mode 100644 index 00000000..cbbfc011 Binary files /dev/null and b/public/textures/mcwbyg/cypress_four_panel_door.png differ diff --git a/public/textures/mcwbyg/cypress_four_panel_trapdoor.png b/public/textures/mcwbyg/cypress_four_panel_trapdoor.png new file mode 100644 index 00000000..94874153 Binary files /dev/null and b/public/textures/mcwbyg/cypress_four_panel_trapdoor.png differ diff --git a/public/textures/mcwbyg/cypress_four_window.png b/public/textures/mcwbyg/cypress_four_window.png new file mode 100644 index 00000000..d0f4a048 Binary files /dev/null and b/public/textures/mcwbyg/cypress_four_window.png differ diff --git a/public/textures/mcwbyg/cypress_glass_door.png b/public/textures/mcwbyg/cypress_glass_door.png new file mode 100644 index 00000000..dab219a9 Binary files /dev/null and b/public/textures/mcwbyg/cypress_glass_door.png differ diff --git a/public/textures/mcwbyg/cypress_glass_kitchen_cabinet.png b/public/textures/mcwbyg/cypress_glass_kitchen_cabinet.png new file mode 100644 index 00000000..6c5be529 Binary files /dev/null and b/public/textures/mcwbyg/cypress_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/cypress_glass_table.png b/public/textures/mcwbyg/cypress_glass_table.png new file mode 100644 index 00000000..35c7491d Binary files /dev/null and b/public/textures/mcwbyg/cypress_glass_table.png differ diff --git a/public/textures/mcwbyg/cypress_glass_trapdoor.png b/public/textures/mcwbyg/cypress_glass_trapdoor.png new file mode 100644 index 00000000..6c0cd313 Binary files /dev/null and b/public/textures/mcwbyg/cypress_glass_trapdoor.png differ diff --git a/public/textures/mcwbyg/cypress_hedge.png b/public/textures/mcwbyg/cypress_hedge.png new file mode 100644 index 00000000..8c043920 Binary files /dev/null and b/public/textures/mcwbyg/cypress_hedge.png differ diff --git a/public/textures/mcwbyg/cypress_highley_gate.png b/public/textures/mcwbyg/cypress_highley_gate.png new file mode 100644 index 00000000..ffc9a2fe Binary files /dev/null and b/public/textures/mcwbyg/cypress_highley_gate.png differ diff --git a/public/textures/mcwbyg/cypress_horse_fence.png b/public/textures/mcwbyg/cypress_horse_fence.png new file mode 100644 index 00000000..d0a24cf8 Binary files /dev/null and b/public/textures/mcwbyg/cypress_horse_fence.png differ diff --git a/public/textures/mcwbyg/cypress_japanese2_door.png b/public/textures/mcwbyg/cypress_japanese2_door.png new file mode 100644 index 00000000..ca273b7e Binary files /dev/null and b/public/textures/mcwbyg/cypress_japanese2_door.png differ diff --git a/public/textures/mcwbyg/cypress_japanese_door.png b/public/textures/mcwbyg/cypress_japanese_door.png new file mode 100644 index 00000000..756071e9 Binary files /dev/null and b/public/textures/mcwbyg/cypress_japanese_door.png differ diff --git a/public/textures/mcwbyg/cypress_kitchen_cabinet.png b/public/textures/mcwbyg/cypress_kitchen_cabinet.png new file mode 100644 index 00000000..20c8dd64 Binary files /dev/null and b/public/textures/mcwbyg/cypress_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/cypress_large_drawer.png b/public/textures/mcwbyg/cypress_large_drawer.png new file mode 100644 index 00000000..1c55343a Binary files /dev/null and b/public/textures/mcwbyg/cypress_large_drawer.png differ diff --git a/public/textures/mcwbyg/cypress_log_bridge_middle.png b/public/textures/mcwbyg/cypress_log_bridge_middle.png new file mode 100644 index 00000000..7564df35 Binary files /dev/null and b/public/textures/mcwbyg/cypress_log_bridge_middle.png differ diff --git a/public/textures/mcwbyg/cypress_log_bridge_stair.png b/public/textures/mcwbyg/cypress_log_bridge_stair.png new file mode 100644 index 00000000..35be33ba Binary files /dev/null and b/public/textures/mcwbyg/cypress_log_bridge_stair.png differ diff --git a/public/textures/mcwbyg/cypress_log_parapet.png b/public/textures/mcwbyg/cypress_log_parapet.png new file mode 100644 index 00000000..c6f9b59b Binary files /dev/null and b/public/textures/mcwbyg/cypress_log_parapet.png differ diff --git a/public/textures/mcwbyg/cypress_louvered_shutter.png b/public/textures/mcwbyg/cypress_louvered_shutter.png new file mode 100644 index 00000000..4b802e92 Binary files /dev/null and b/public/textures/mcwbyg/cypress_louvered_shutter.png differ diff --git a/public/textures/mcwbyg/cypress_lower_bookshelf_drawer.png b/public/textures/mcwbyg/cypress_lower_bookshelf_drawer.png new file mode 100644 index 00000000..50ea326b Binary files /dev/null and b/public/textures/mcwbyg/cypress_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/cypress_lower_roof.png b/public/textures/mcwbyg/cypress_lower_roof.png new file mode 100644 index 00000000..67323868 Binary files /dev/null and b/public/textures/mcwbyg/cypress_lower_roof.png differ diff --git a/public/textures/mcwbyg/cypress_lower_triple_drawer.png b/public/textures/mcwbyg/cypress_lower_triple_drawer.png new file mode 100644 index 00000000..2da3854b Binary files /dev/null and b/public/textures/mcwbyg/cypress_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/cypress_modern_chair.png b/public/textures/mcwbyg/cypress_modern_chair.png new file mode 100644 index 00000000..24835d2c Binary files /dev/null and b/public/textures/mcwbyg/cypress_modern_chair.png differ diff --git a/public/textures/mcwbyg/cypress_modern_desk.png b/public/textures/mcwbyg/cypress_modern_desk.png new file mode 100644 index 00000000..e49bfaf7 Binary files /dev/null and b/public/textures/mcwbyg/cypress_modern_desk.png differ diff --git a/public/textures/mcwbyg/cypress_modern_door.png b/public/textures/mcwbyg/cypress_modern_door.png new file mode 100644 index 00000000..21bbe9df Binary files /dev/null and b/public/textures/mcwbyg/cypress_modern_door.png differ diff --git a/public/textures/mcwbyg/cypress_modern_wardrobe.png b/public/textures/mcwbyg/cypress_modern_wardrobe.png new file mode 100644 index 00000000..21ec6fff Binary files /dev/null and b/public/textures/mcwbyg/cypress_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/cypress_mystic_door.png b/public/textures/mcwbyg/cypress_mystic_door.png new file mode 100644 index 00000000..75542802 Binary files /dev/null and b/public/textures/mcwbyg/cypress_mystic_door.png differ diff --git a/public/textures/mcwbyg/cypress_mystic_trapdoor.png b/public/textures/mcwbyg/cypress_mystic_trapdoor.png new file mode 100644 index 00000000..8f033ad7 Binary files /dev/null and b/public/textures/mcwbyg/cypress_mystic_trapdoor.png differ diff --git a/public/textures/mcwbyg/cypress_nether_door.png b/public/textures/mcwbyg/cypress_nether_door.png new file mode 100644 index 00000000..7ddacbce Binary files /dev/null and b/public/textures/mcwbyg/cypress_nether_door.png differ diff --git a/public/textures/mcwbyg/cypress_pane_window.png b/public/textures/mcwbyg/cypress_pane_window.png new file mode 100644 index 00000000..90ce716c Binary files /dev/null and b/public/textures/mcwbyg/cypress_pane_window.png differ diff --git a/public/textures/mcwbyg/cypress_paper_door.png b/public/textures/mcwbyg/cypress_paper_door.png new file mode 100644 index 00000000..5bdbc3de Binary files /dev/null and b/public/textures/mcwbyg/cypress_paper_door.png differ diff --git a/public/textures/mcwbyg/cypress_paper_trapdoor.png b/public/textures/mcwbyg/cypress_paper_trapdoor.png new file mode 100644 index 00000000..391722cf Binary files /dev/null and b/public/textures/mcwbyg/cypress_paper_trapdoor.png differ diff --git a/public/textures/mcwbyg/cypress_picket_fence.png b/public/textures/mcwbyg/cypress_picket_fence.png new file mode 100644 index 00000000..ec0c1c00 Binary files /dev/null and b/public/textures/mcwbyg/cypress_picket_fence.png differ diff --git a/public/textures/mcwbyg/cypress_plank_four_window.png b/public/textures/mcwbyg/cypress_plank_four_window.png new file mode 100644 index 00000000..b1a82c8c Binary files /dev/null and b/public/textures/mcwbyg/cypress_plank_four_window.png differ diff --git a/public/textures/mcwbyg/cypress_plank_pane_window.png b/public/textures/mcwbyg/cypress_plank_pane_window.png new file mode 100644 index 00000000..ba8967fa Binary files /dev/null and b/public/textures/mcwbyg/cypress_plank_pane_window.png differ diff --git a/public/textures/mcwbyg/cypress_plank_parapet.png b/public/textures/mcwbyg/cypress_plank_parapet.png new file mode 100644 index 00000000..6b798b3b Binary files /dev/null and b/public/textures/mcwbyg/cypress_plank_parapet.png differ diff --git a/public/textures/mcwbyg/cypress_plank_window.png b/public/textures/mcwbyg/cypress_plank_window.png new file mode 100644 index 00000000..11ac4bb5 Binary files /dev/null and b/public/textures/mcwbyg/cypress_plank_window.png differ diff --git a/public/textures/mcwbyg/cypress_plank_window2.png b/public/textures/mcwbyg/cypress_plank_window2.png new file mode 100644 index 00000000..b69bdf97 Binary files /dev/null and b/public/textures/mcwbyg/cypress_plank_window2.png differ diff --git a/public/textures/mcwbyg/cypress_planks_attic_roof.png b/public/textures/mcwbyg/cypress_planks_attic_roof.png new file mode 100644 index 00000000..25e3f6b5 Binary files /dev/null and b/public/textures/mcwbyg/cypress_planks_attic_roof.png differ diff --git a/public/textures/mcwbyg/cypress_planks_lower_roof.png b/public/textures/mcwbyg/cypress_planks_lower_roof.png new file mode 100644 index 00000000..6ff334fe Binary files /dev/null and b/public/textures/mcwbyg/cypress_planks_lower_roof.png differ diff --git a/public/textures/mcwbyg/cypress_planks_path.png b/public/textures/mcwbyg/cypress_planks_path.png new file mode 100644 index 00000000..b952e327 Binary files /dev/null and b/public/textures/mcwbyg/cypress_planks_path.png differ diff --git a/public/textures/mcwbyg/cypress_planks_roof.png b/public/textures/mcwbyg/cypress_planks_roof.png new file mode 100644 index 00000000..ee180e0a Binary files /dev/null and b/public/textures/mcwbyg/cypress_planks_roof.png differ diff --git a/public/textures/mcwbyg/cypress_planks_steep_roof.png b/public/textures/mcwbyg/cypress_planks_steep_roof.png new file mode 100644 index 00000000..8dc1ab9f Binary files /dev/null and b/public/textures/mcwbyg/cypress_planks_steep_roof.png differ diff --git a/public/textures/mcwbyg/cypress_planks_top_roof.png b/public/textures/mcwbyg/cypress_planks_top_roof.png new file mode 100644 index 00000000..bb8fb452 Binary files /dev/null and b/public/textures/mcwbyg/cypress_planks_top_roof.png differ diff --git a/public/textures/mcwbyg/cypress_planks_upper_lower_roof.png b/public/textures/mcwbyg/cypress_planks_upper_lower_roof.png new file mode 100644 index 00000000..07aace15 Binary files /dev/null and b/public/textures/mcwbyg/cypress_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/cypress_planks_upper_steep_roof.png b/public/textures/mcwbyg/cypress_planks_upper_steep_roof.png new file mode 100644 index 00000000..60fd13b7 Binary files /dev/null and b/public/textures/mcwbyg/cypress_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/cypress_pyramid_gate.png b/public/textures/mcwbyg/cypress_pyramid_gate.png new file mode 100644 index 00000000..698270d1 Binary files /dev/null and b/public/textures/mcwbyg/cypress_pyramid_gate.png differ diff --git a/public/textures/mcwbyg/cypress_rail_bridge.png b/public/textures/mcwbyg/cypress_rail_bridge.png new file mode 100644 index 00000000..2ce46e71 Binary files /dev/null and b/public/textures/mcwbyg/cypress_rail_bridge.png differ diff --git a/public/textures/mcwbyg/cypress_ranch_trapdoor.png b/public/textures/mcwbyg/cypress_ranch_trapdoor.png new file mode 100644 index 00000000..44b403f4 Binary files /dev/null and b/public/textures/mcwbyg/cypress_ranch_trapdoor.png differ diff --git a/public/textures/mcwbyg/cypress_roof.png b/public/textures/mcwbyg/cypress_roof.png new file mode 100644 index 00000000..03500308 Binary files /dev/null and b/public/textures/mcwbyg/cypress_roof.png differ diff --git a/public/textures/mcwbyg/cypress_rope_bridge_stair.png b/public/textures/mcwbyg/cypress_rope_bridge_stair.png new file mode 100644 index 00000000..39d83b0e Binary files /dev/null and b/public/textures/mcwbyg/cypress_rope_bridge_stair.png differ diff --git a/public/textures/mcwbyg/cypress_shutter.png b/public/textures/mcwbyg/cypress_shutter.png new file mode 100644 index 00000000..8417acb1 Binary files /dev/null and b/public/textures/mcwbyg/cypress_shutter.png differ diff --git a/public/textures/mcwbyg/cypress_stable_door.png b/public/textures/mcwbyg/cypress_stable_door.png new file mode 100644 index 00000000..dc01bcbe Binary files /dev/null and b/public/textures/mcwbyg/cypress_stable_door.png differ diff --git a/public/textures/mcwbyg/cypress_stable_head_door.png b/public/textures/mcwbyg/cypress_stable_head_door.png new file mode 100644 index 00000000..35085d42 Binary files /dev/null and b/public/textures/mcwbyg/cypress_stable_head_door.png differ diff --git a/public/textures/mcwbyg/cypress_steep_roof.png b/public/textures/mcwbyg/cypress_steep_roof.png new file mode 100644 index 00000000..5afa9ea3 Binary files /dev/null and b/public/textures/mcwbyg/cypress_steep_roof.png differ diff --git a/public/textures/mcwbyg/cypress_stockade_fence.png b/public/textures/mcwbyg/cypress_stockade_fence.png new file mode 100644 index 00000000..2fbb63d3 Binary files /dev/null and b/public/textures/mcwbyg/cypress_stockade_fence.png differ diff --git a/public/textures/mcwbyg/cypress_stool_chair.png b/public/textures/mcwbyg/cypress_stool_chair.png new file mode 100644 index 00000000..67c60068 Binary files /dev/null and b/public/textures/mcwbyg/cypress_stool_chair.png differ diff --git a/public/textures/mcwbyg/cypress_striped_chair.png b/public/textures/mcwbyg/cypress_striped_chair.png new file mode 100644 index 00000000..ff2fb056 Binary files /dev/null and b/public/textures/mcwbyg/cypress_striped_chair.png differ diff --git a/public/textures/mcwbyg/cypress_swamp_door.png b/public/textures/mcwbyg/cypress_swamp_door.png new file mode 100644 index 00000000..4c5241fe Binary files /dev/null and b/public/textures/mcwbyg/cypress_swamp_door.png differ diff --git a/public/textures/mcwbyg/cypress_swamp_trapdoor.png b/public/textures/mcwbyg/cypress_swamp_trapdoor.png new file mode 100644 index 00000000..eb266cab Binary files /dev/null and b/public/textures/mcwbyg/cypress_swamp_trapdoor.png differ diff --git a/public/textures/mcwbyg/cypress_table.png b/public/textures/mcwbyg/cypress_table.png new file mode 100644 index 00000000..cc4b25f3 Binary files /dev/null and b/public/textures/mcwbyg/cypress_table.png differ diff --git a/public/textures/mcwbyg/cypress_top_roof.png b/public/textures/mcwbyg/cypress_top_roof.png new file mode 100644 index 00000000..a0eb243e Binary files /dev/null and b/public/textures/mcwbyg/cypress_top_roof.png differ diff --git a/public/textures/mcwbyg/cypress_triple_drawer.png b/public/textures/mcwbyg/cypress_triple_drawer.png new file mode 100644 index 00000000..aee5964c Binary files /dev/null and b/public/textures/mcwbyg/cypress_triple_drawer.png differ diff --git a/public/textures/mcwbyg/cypress_tropical_door.png b/public/textures/mcwbyg/cypress_tropical_door.png new file mode 100644 index 00000000..a87e16b7 Binary files /dev/null and b/public/textures/mcwbyg/cypress_tropical_door.png differ diff --git a/public/textures/mcwbyg/cypress_tropical_trapdoor.png b/public/textures/mcwbyg/cypress_tropical_trapdoor.png new file mode 100644 index 00000000..5dcc11f8 Binary files /dev/null and b/public/textures/mcwbyg/cypress_tropical_trapdoor.png differ diff --git a/public/textures/mcwbyg/cypress_upper_lower_roof.png b/public/textures/mcwbyg/cypress_upper_lower_roof.png new file mode 100644 index 00000000..c995cb5e Binary files /dev/null and b/public/textures/mcwbyg/cypress_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/cypress_upper_steep_roof.png b/public/textures/mcwbyg/cypress_upper_steep_roof.png new file mode 100644 index 00000000..26ad61be Binary files /dev/null and b/public/textures/mcwbyg/cypress_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/cypress_waffle_door.png b/public/textures/mcwbyg/cypress_waffle_door.png new file mode 100644 index 00000000..b6336f56 Binary files /dev/null and b/public/textures/mcwbyg/cypress_waffle_door.png differ diff --git a/public/textures/mcwbyg/cypress_wardrobe.png b/public/textures/mcwbyg/cypress_wardrobe.png new file mode 100644 index 00000000..8f975518 Binary files /dev/null and b/public/textures/mcwbyg/cypress_wardrobe.png differ diff --git a/public/textures/mcwbyg/cypress_western_door.png b/public/textures/mcwbyg/cypress_western_door.png new file mode 100644 index 00000000..439494df Binary files /dev/null and b/public/textures/mcwbyg/cypress_western_door.png differ diff --git a/public/textures/mcwbyg/cypress_whispering_door.png b/public/textures/mcwbyg/cypress_whispering_door.png new file mode 100644 index 00000000..ef66e07b Binary files /dev/null and b/public/textures/mcwbyg/cypress_whispering_door.png differ diff --git a/public/textures/mcwbyg/cypress_whispering_trapdoor.png b/public/textures/mcwbyg/cypress_whispering_trapdoor.png new file mode 100644 index 00000000..a8035bde Binary files /dev/null and b/public/textures/mcwbyg/cypress_whispering_trapdoor.png differ diff --git a/public/textures/mcwbyg/cypress_window.png b/public/textures/mcwbyg/cypress_window.png new file mode 100644 index 00000000..48701e32 Binary files /dev/null and b/public/textures/mcwbyg/cypress_window.png differ diff --git a/public/textures/mcwbyg/cypress_window2.png b/public/textures/mcwbyg/cypress_window2.png new file mode 100644 index 00000000..46451c2c Binary files /dev/null and b/public/textures/mcwbyg/cypress_window2.png differ diff --git a/public/textures/mcwbyg/cypress_wired_fence.png b/public/textures/mcwbyg/cypress_wired_fence.png new file mode 100644 index 00000000..f7f6dc6c Binary files /dev/null and b/public/textures/mcwbyg/cypress_wired_fence.png differ diff --git a/public/textures/mcwbyg/dacite_bricks_attic_roof.png b/public/textures/mcwbyg/dacite_bricks_attic_roof.png new file mode 100644 index 00000000..066f27f9 Binary files /dev/null and b/public/textures/mcwbyg/dacite_bricks_attic_roof.png differ diff --git a/public/textures/mcwbyg/dacite_bricks_bridge.png b/public/textures/mcwbyg/dacite_bricks_bridge.png new file mode 100644 index 00000000..c9fa66ba Binary files /dev/null and b/public/textures/mcwbyg/dacite_bricks_bridge.png differ diff --git a/public/textures/mcwbyg/dacite_bricks_bridge_pier.png b/public/textures/mcwbyg/dacite_bricks_bridge_pier.png new file mode 100644 index 00000000..c30d9a3d Binary files /dev/null and b/public/textures/mcwbyg/dacite_bricks_bridge_pier.png differ diff --git a/public/textures/mcwbyg/dacite_bricks_bridge_stair.png b/public/textures/mcwbyg/dacite_bricks_bridge_stair.png new file mode 100644 index 00000000..9f227d5d Binary files /dev/null and b/public/textures/mcwbyg/dacite_bricks_bridge_stair.png differ diff --git a/public/textures/mcwbyg/dacite_bricks_grass_topped_wall.png b/public/textures/mcwbyg/dacite_bricks_grass_topped_wall.png new file mode 100644 index 00000000..50ce52a8 Binary files /dev/null and b/public/textures/mcwbyg/dacite_bricks_grass_topped_wall.png differ diff --git a/public/textures/mcwbyg/dacite_bricks_lower_roof.png b/public/textures/mcwbyg/dacite_bricks_lower_roof.png new file mode 100644 index 00000000..3238ca0e Binary files /dev/null and b/public/textures/mcwbyg/dacite_bricks_lower_roof.png differ diff --git a/public/textures/mcwbyg/dacite_bricks_pillar_wall.png b/public/textures/mcwbyg/dacite_bricks_pillar_wall.png new file mode 100644 index 00000000..aa176359 Binary files /dev/null and b/public/textures/mcwbyg/dacite_bricks_pillar_wall.png differ diff --git a/public/textures/mcwbyg/dacite_bricks_railing_gate.png b/public/textures/mcwbyg/dacite_bricks_railing_gate.png new file mode 100644 index 00000000..a3d74fbd Binary files /dev/null and b/public/textures/mcwbyg/dacite_bricks_railing_gate.png differ diff --git a/public/textures/mcwbyg/dacite_bricks_roof.png b/public/textures/mcwbyg/dacite_bricks_roof.png new file mode 100644 index 00000000..3ebff909 Binary files /dev/null and b/public/textures/mcwbyg/dacite_bricks_roof.png differ diff --git a/public/textures/mcwbyg/dacite_bricks_steep_roof.png b/public/textures/mcwbyg/dacite_bricks_steep_roof.png new file mode 100644 index 00000000..485ec7a5 Binary files /dev/null and b/public/textures/mcwbyg/dacite_bricks_steep_roof.png differ diff --git a/public/textures/mcwbyg/dacite_bricks_top_roof.png b/public/textures/mcwbyg/dacite_bricks_top_roof.png new file mode 100644 index 00000000..54437502 Binary files /dev/null and b/public/textures/mcwbyg/dacite_bricks_top_roof.png differ diff --git a/public/textures/mcwbyg/dacite_bricks_upper_lower_roof.png b/public/textures/mcwbyg/dacite_bricks_upper_lower_roof.png new file mode 100644 index 00000000..87d8d696 Binary files /dev/null and b/public/textures/mcwbyg/dacite_bricks_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/dacite_bricks_upper_steep_roof.png b/public/textures/mcwbyg/dacite_bricks_upper_steep_roof.png new file mode 100644 index 00000000..7a44ddc3 Binary files /dev/null and b/public/textures/mcwbyg/dacite_bricks_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/ebony_attic_roof.png b/public/textures/mcwbyg/ebony_attic_roof.png new file mode 100644 index 00000000..d1117dfe Binary files /dev/null and b/public/textures/mcwbyg/ebony_attic_roof.png differ diff --git a/public/textures/mcwbyg/ebony_bamboo_door.png b/public/textures/mcwbyg/ebony_bamboo_door.png new file mode 100644 index 00000000..de4a4ba0 Binary files /dev/null and b/public/textures/mcwbyg/ebony_bamboo_door.png differ diff --git a/public/textures/mcwbyg/ebony_bamboo_trapdoor.png b/public/textures/mcwbyg/ebony_bamboo_trapdoor.png new file mode 100644 index 00000000..8edc91cc Binary files /dev/null and b/public/textures/mcwbyg/ebony_bamboo_trapdoor.png differ diff --git a/public/textures/mcwbyg/ebony_bark_glass_door.png b/public/textures/mcwbyg/ebony_bark_glass_door.png new file mode 100644 index 00000000..746d11f3 Binary files /dev/null and b/public/textures/mcwbyg/ebony_bark_glass_door.png differ diff --git a/public/textures/mcwbyg/ebony_bark_trapdoor.png b/public/textures/mcwbyg/ebony_bark_trapdoor.png new file mode 100644 index 00000000..51fb1363 Binary files /dev/null and b/public/textures/mcwbyg/ebony_bark_trapdoor.png differ diff --git a/public/textures/mcwbyg/ebony_barn_door.png b/public/textures/mcwbyg/ebony_barn_door.png new file mode 100644 index 00000000..57e67623 Binary files /dev/null and b/public/textures/mcwbyg/ebony_barn_door.png differ diff --git a/public/textures/mcwbyg/ebony_barn_glass_door.png b/public/textures/mcwbyg/ebony_barn_glass_door.png new file mode 100644 index 00000000..7e2b3b21 Binary files /dev/null and b/public/textures/mcwbyg/ebony_barn_glass_door.png differ diff --git a/public/textures/mcwbyg/ebony_barn_trapdoor.png b/public/textures/mcwbyg/ebony_barn_trapdoor.png new file mode 100644 index 00000000..ab1847d4 Binary files /dev/null and b/public/textures/mcwbyg/ebony_barn_trapdoor.png differ diff --git a/public/textures/mcwbyg/ebony_barred_trapdoor.png b/public/textures/mcwbyg/ebony_barred_trapdoor.png new file mode 100644 index 00000000..4b7d9a30 Binary files /dev/null and b/public/textures/mcwbyg/ebony_barred_trapdoor.png differ diff --git a/public/textures/mcwbyg/ebony_barrel_trapdoor.png b/public/textures/mcwbyg/ebony_barrel_trapdoor.png new file mode 100644 index 00000000..efc6d40a Binary files /dev/null and b/public/textures/mcwbyg/ebony_barrel_trapdoor.png differ diff --git a/public/textures/mcwbyg/ebony_beach_door.png b/public/textures/mcwbyg/ebony_beach_door.png new file mode 100644 index 00000000..da11c28a Binary files /dev/null and b/public/textures/mcwbyg/ebony_beach_door.png differ diff --git a/public/textures/mcwbyg/ebony_beach_trapdoor.png b/public/textures/mcwbyg/ebony_beach_trapdoor.png new file mode 100644 index 00000000..1f996e36 Binary files /dev/null and b/public/textures/mcwbyg/ebony_beach_trapdoor.png differ diff --git a/public/textures/mcwbyg/ebony_blinds.png b/public/textures/mcwbyg/ebony_blinds.png new file mode 100644 index 00000000..f4df4603 Binary files /dev/null and b/public/textures/mcwbyg/ebony_blinds.png differ diff --git a/public/textures/mcwbyg/ebony_blossom_trapdoor.png b/public/textures/mcwbyg/ebony_blossom_trapdoor.png new file mode 100644 index 00000000..3ab3bada Binary files /dev/null and b/public/textures/mcwbyg/ebony_blossom_trapdoor.png differ diff --git a/public/textures/mcwbyg/ebony_bookshelf.png b/public/textures/mcwbyg/ebony_bookshelf.png new file mode 100644 index 00000000..771fbb4b Binary files /dev/null and b/public/textures/mcwbyg/ebony_bookshelf.png differ diff --git a/public/textures/mcwbyg/ebony_bookshelf_cupboard.png b/public/textures/mcwbyg/ebony_bookshelf_cupboard.png new file mode 100644 index 00000000..21a707b0 Binary files /dev/null and b/public/textures/mcwbyg/ebony_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/ebony_bookshelf_drawer.png b/public/textures/mcwbyg/ebony_bookshelf_drawer.png new file mode 100644 index 00000000..99cd33ed Binary files /dev/null and b/public/textures/mcwbyg/ebony_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/ebony_bridge_pier.png b/public/textures/mcwbyg/ebony_bridge_pier.png new file mode 100644 index 00000000..ab01123c Binary files /dev/null and b/public/textures/mcwbyg/ebony_bridge_pier.png differ diff --git a/public/textures/mcwbyg/ebony_chair.png b/public/textures/mcwbyg/ebony_chair.png new file mode 100644 index 00000000..f3a6772d Binary files /dev/null and b/public/textures/mcwbyg/ebony_chair.png differ diff --git a/public/textures/mcwbyg/ebony_classic_door.png b/public/textures/mcwbyg/ebony_classic_door.png new file mode 100644 index 00000000..8a33526f Binary files /dev/null and b/public/textures/mcwbyg/ebony_classic_door.png differ diff --git a/public/textures/mcwbyg/ebony_classic_trapdoor.png b/public/textures/mcwbyg/ebony_classic_trapdoor.png new file mode 100644 index 00000000..44053a79 Binary files /dev/null and b/public/textures/mcwbyg/ebony_classic_trapdoor.png differ diff --git a/public/textures/mcwbyg/ebony_coffee_table.png b/public/textures/mcwbyg/ebony_coffee_table.png new file mode 100644 index 00000000..06d0c6d9 Binary files /dev/null and b/public/textures/mcwbyg/ebony_coffee_table.png differ diff --git a/public/textures/mcwbyg/ebony_cottage_door.png b/public/textures/mcwbyg/ebony_cottage_door.png new file mode 100644 index 00000000..9413f9b9 Binary files /dev/null and b/public/textures/mcwbyg/ebony_cottage_door.png differ diff --git a/public/textures/mcwbyg/ebony_cottage_trapdoor.png b/public/textures/mcwbyg/ebony_cottage_trapdoor.png new file mode 100644 index 00000000..25f24cd1 Binary files /dev/null and b/public/textures/mcwbyg/ebony_cottage_trapdoor.png differ diff --git a/public/textures/mcwbyg/ebony_counter.png b/public/textures/mcwbyg/ebony_counter.png new file mode 100644 index 00000000..bd351183 Binary files /dev/null and b/public/textures/mcwbyg/ebony_counter.png differ diff --git a/public/textures/mcwbyg/ebony_covered_desk.png b/public/textures/mcwbyg/ebony_covered_desk.png new file mode 100644 index 00000000..0094ff7d Binary files /dev/null and b/public/textures/mcwbyg/ebony_covered_desk.png differ diff --git a/public/textures/mcwbyg/ebony_cupboard_counter.png b/public/textures/mcwbyg/ebony_cupboard_counter.png new file mode 100644 index 00000000..959b3be1 Binary files /dev/null and b/public/textures/mcwbyg/ebony_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/ebony_curtain_rod.png b/public/textures/mcwbyg/ebony_curtain_rod.png new file mode 100644 index 00000000..3bd9e7b7 Binary files /dev/null and b/public/textures/mcwbyg/ebony_curtain_rod.png differ diff --git a/public/textures/mcwbyg/ebony_curved_gate.png b/public/textures/mcwbyg/ebony_curved_gate.png new file mode 100644 index 00000000..8c8d9bfe Binary files /dev/null and b/public/textures/mcwbyg/ebony_curved_gate.png differ diff --git a/public/textures/mcwbyg/ebony_desk.png b/public/textures/mcwbyg/ebony_desk.png new file mode 100644 index 00000000..1a16567a Binary files /dev/null and b/public/textures/mcwbyg/ebony_desk.png differ diff --git a/public/textures/mcwbyg/ebony_double_drawer.png b/public/textures/mcwbyg/ebony_double_drawer.png new file mode 100644 index 00000000..0a120f60 Binary files /dev/null and b/public/textures/mcwbyg/ebony_double_drawer.png differ diff --git a/public/textures/mcwbyg/ebony_double_drawer_counter.png b/public/textures/mcwbyg/ebony_double_drawer_counter.png new file mode 100644 index 00000000..6bb5d7c9 Binary files /dev/null and b/public/textures/mcwbyg/ebony_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/ebony_double_kitchen_cabinet.png b/public/textures/mcwbyg/ebony_double_kitchen_cabinet.png new file mode 100644 index 00000000..cab0c887 Binary files /dev/null and b/public/textures/mcwbyg/ebony_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/ebony_double_wardrobe.png b/public/textures/mcwbyg/ebony_double_wardrobe.png new file mode 100644 index 00000000..d913aaa8 Binary files /dev/null and b/public/textures/mcwbyg/ebony_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/ebony_drawer.png b/public/textures/mcwbyg/ebony_drawer.png new file mode 100644 index 00000000..c48e34a4 Binary files /dev/null and b/public/textures/mcwbyg/ebony_drawer.png differ diff --git a/public/textures/mcwbyg/ebony_drawer_counter.png b/public/textures/mcwbyg/ebony_drawer_counter.png new file mode 100644 index 00000000..eaa46df0 Binary files /dev/null and b/public/textures/mcwbyg/ebony_drawer_counter.png differ diff --git a/public/textures/mcwbyg/ebony_end_table.png b/public/textures/mcwbyg/ebony_end_table.png new file mode 100644 index 00000000..3612ded2 Binary files /dev/null and b/public/textures/mcwbyg/ebony_end_table.png differ diff --git a/public/textures/mcwbyg/ebony_four_panel_door.png b/public/textures/mcwbyg/ebony_four_panel_door.png new file mode 100644 index 00000000..07c95f1d Binary files /dev/null and b/public/textures/mcwbyg/ebony_four_panel_door.png differ diff --git a/public/textures/mcwbyg/ebony_four_panel_trapdoor.png b/public/textures/mcwbyg/ebony_four_panel_trapdoor.png new file mode 100644 index 00000000..bd7e5ff4 Binary files /dev/null and b/public/textures/mcwbyg/ebony_four_panel_trapdoor.png differ diff --git a/public/textures/mcwbyg/ebony_four_window.png b/public/textures/mcwbyg/ebony_four_window.png new file mode 100644 index 00000000..9f676dca Binary files /dev/null and b/public/textures/mcwbyg/ebony_four_window.png differ diff --git a/public/textures/mcwbyg/ebony_glass_door.png b/public/textures/mcwbyg/ebony_glass_door.png new file mode 100644 index 00000000..837ac007 Binary files /dev/null and b/public/textures/mcwbyg/ebony_glass_door.png differ diff --git a/public/textures/mcwbyg/ebony_glass_kitchen_cabinet.png b/public/textures/mcwbyg/ebony_glass_kitchen_cabinet.png new file mode 100644 index 00000000..1fbee115 Binary files /dev/null and b/public/textures/mcwbyg/ebony_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/ebony_glass_table.png b/public/textures/mcwbyg/ebony_glass_table.png new file mode 100644 index 00000000..e25f8bd9 Binary files /dev/null and b/public/textures/mcwbyg/ebony_glass_table.png differ diff --git a/public/textures/mcwbyg/ebony_glass_trapdoor.png b/public/textures/mcwbyg/ebony_glass_trapdoor.png new file mode 100644 index 00000000..c4f70910 Binary files /dev/null and b/public/textures/mcwbyg/ebony_glass_trapdoor.png differ diff --git a/public/textures/mcwbyg/ebony_hedge.png b/public/textures/mcwbyg/ebony_hedge.png new file mode 100644 index 00000000..9e6ebcd9 Binary files /dev/null and b/public/textures/mcwbyg/ebony_hedge.png differ diff --git a/public/textures/mcwbyg/ebony_highley_gate.png b/public/textures/mcwbyg/ebony_highley_gate.png new file mode 100644 index 00000000..d9bcc7e3 Binary files /dev/null and b/public/textures/mcwbyg/ebony_highley_gate.png differ diff --git a/public/textures/mcwbyg/ebony_horse_fence.png b/public/textures/mcwbyg/ebony_horse_fence.png new file mode 100644 index 00000000..e7148b51 Binary files /dev/null and b/public/textures/mcwbyg/ebony_horse_fence.png differ diff --git a/public/textures/mcwbyg/ebony_japanese2_door.png b/public/textures/mcwbyg/ebony_japanese2_door.png new file mode 100644 index 00000000..05b59ce8 Binary files /dev/null and b/public/textures/mcwbyg/ebony_japanese2_door.png differ diff --git a/public/textures/mcwbyg/ebony_japanese_door.png b/public/textures/mcwbyg/ebony_japanese_door.png new file mode 100644 index 00000000..2b379c7f Binary files /dev/null and b/public/textures/mcwbyg/ebony_japanese_door.png differ diff --git a/public/textures/mcwbyg/ebony_kitchen_cabinet.png b/public/textures/mcwbyg/ebony_kitchen_cabinet.png new file mode 100644 index 00000000..b68cc5bf Binary files /dev/null and b/public/textures/mcwbyg/ebony_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/ebony_large_drawer.png b/public/textures/mcwbyg/ebony_large_drawer.png new file mode 100644 index 00000000..3fbc9d8e Binary files /dev/null and b/public/textures/mcwbyg/ebony_large_drawer.png differ diff --git a/public/textures/mcwbyg/ebony_log_bridge_middle.png b/public/textures/mcwbyg/ebony_log_bridge_middle.png new file mode 100644 index 00000000..c4f7c797 Binary files /dev/null and b/public/textures/mcwbyg/ebony_log_bridge_middle.png differ diff --git a/public/textures/mcwbyg/ebony_log_bridge_stair.png b/public/textures/mcwbyg/ebony_log_bridge_stair.png new file mode 100644 index 00000000..b65feeed Binary files /dev/null and b/public/textures/mcwbyg/ebony_log_bridge_stair.png differ diff --git a/public/textures/mcwbyg/ebony_log_parapet.png b/public/textures/mcwbyg/ebony_log_parapet.png new file mode 100644 index 00000000..7c23d2b4 Binary files /dev/null and b/public/textures/mcwbyg/ebony_log_parapet.png differ diff --git a/public/textures/mcwbyg/ebony_louvered_shutter.png b/public/textures/mcwbyg/ebony_louvered_shutter.png new file mode 100644 index 00000000..35526b22 Binary files /dev/null and b/public/textures/mcwbyg/ebony_louvered_shutter.png differ diff --git a/public/textures/mcwbyg/ebony_lower_bookshelf_drawer.png b/public/textures/mcwbyg/ebony_lower_bookshelf_drawer.png new file mode 100644 index 00000000..6274840b Binary files /dev/null and b/public/textures/mcwbyg/ebony_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/ebony_lower_roof.png b/public/textures/mcwbyg/ebony_lower_roof.png new file mode 100644 index 00000000..2123f358 Binary files /dev/null and b/public/textures/mcwbyg/ebony_lower_roof.png differ diff --git a/public/textures/mcwbyg/ebony_lower_triple_drawer.png b/public/textures/mcwbyg/ebony_lower_triple_drawer.png new file mode 100644 index 00000000..8a684c5d Binary files /dev/null and b/public/textures/mcwbyg/ebony_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/ebony_modern_chair.png b/public/textures/mcwbyg/ebony_modern_chair.png new file mode 100644 index 00000000..2b9b92ee Binary files /dev/null and b/public/textures/mcwbyg/ebony_modern_chair.png differ diff --git a/public/textures/mcwbyg/ebony_modern_desk.png b/public/textures/mcwbyg/ebony_modern_desk.png new file mode 100644 index 00000000..f7e86157 Binary files /dev/null and b/public/textures/mcwbyg/ebony_modern_desk.png differ diff --git a/public/textures/mcwbyg/ebony_modern_door.png b/public/textures/mcwbyg/ebony_modern_door.png new file mode 100644 index 00000000..41f4109e Binary files /dev/null and b/public/textures/mcwbyg/ebony_modern_door.png differ diff --git a/public/textures/mcwbyg/ebony_modern_wardrobe.png b/public/textures/mcwbyg/ebony_modern_wardrobe.png new file mode 100644 index 00000000..84decb4c Binary files /dev/null and b/public/textures/mcwbyg/ebony_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/ebony_mystic_door.png b/public/textures/mcwbyg/ebony_mystic_door.png new file mode 100644 index 00000000..ce47e128 Binary files /dev/null and b/public/textures/mcwbyg/ebony_mystic_door.png differ diff --git a/public/textures/mcwbyg/ebony_mystic_trapdoor.png b/public/textures/mcwbyg/ebony_mystic_trapdoor.png new file mode 100644 index 00000000..820dd188 Binary files /dev/null and b/public/textures/mcwbyg/ebony_mystic_trapdoor.png differ diff --git a/public/textures/mcwbyg/ebony_nether_door.png b/public/textures/mcwbyg/ebony_nether_door.png new file mode 100644 index 00000000..64613aad Binary files /dev/null and b/public/textures/mcwbyg/ebony_nether_door.png differ diff --git a/public/textures/mcwbyg/ebony_pane_window.png b/public/textures/mcwbyg/ebony_pane_window.png new file mode 100644 index 00000000..d72a65c6 Binary files /dev/null and b/public/textures/mcwbyg/ebony_pane_window.png differ diff --git a/public/textures/mcwbyg/ebony_paper_door.png b/public/textures/mcwbyg/ebony_paper_door.png new file mode 100644 index 00000000..04cf4183 Binary files /dev/null and b/public/textures/mcwbyg/ebony_paper_door.png differ diff --git a/public/textures/mcwbyg/ebony_paper_trapdoor.png b/public/textures/mcwbyg/ebony_paper_trapdoor.png new file mode 100644 index 00000000..3126da27 Binary files /dev/null and b/public/textures/mcwbyg/ebony_paper_trapdoor.png differ diff --git a/public/textures/mcwbyg/ebony_picket_fence.png b/public/textures/mcwbyg/ebony_picket_fence.png new file mode 100644 index 00000000..794760fb Binary files /dev/null and b/public/textures/mcwbyg/ebony_picket_fence.png differ diff --git a/public/textures/mcwbyg/ebony_plank_four_window.png b/public/textures/mcwbyg/ebony_plank_four_window.png new file mode 100644 index 00000000..7587d374 Binary files /dev/null and b/public/textures/mcwbyg/ebony_plank_four_window.png differ diff --git a/public/textures/mcwbyg/ebony_plank_pane_window.png b/public/textures/mcwbyg/ebony_plank_pane_window.png new file mode 100644 index 00000000..2555b310 Binary files /dev/null and b/public/textures/mcwbyg/ebony_plank_pane_window.png differ diff --git a/public/textures/mcwbyg/ebony_plank_parapet.png b/public/textures/mcwbyg/ebony_plank_parapet.png new file mode 100644 index 00000000..08e0e339 Binary files /dev/null and b/public/textures/mcwbyg/ebony_plank_parapet.png differ diff --git a/public/textures/mcwbyg/ebony_plank_window.png b/public/textures/mcwbyg/ebony_plank_window.png new file mode 100644 index 00000000..e51e1e8a Binary files /dev/null and b/public/textures/mcwbyg/ebony_plank_window.png differ diff --git a/public/textures/mcwbyg/ebony_plank_window2.png b/public/textures/mcwbyg/ebony_plank_window2.png new file mode 100644 index 00000000..062d1ecd Binary files /dev/null and b/public/textures/mcwbyg/ebony_plank_window2.png differ diff --git a/public/textures/mcwbyg/ebony_planks_attic_roof.png b/public/textures/mcwbyg/ebony_planks_attic_roof.png new file mode 100644 index 00000000..4b189707 Binary files /dev/null and b/public/textures/mcwbyg/ebony_planks_attic_roof.png differ diff --git a/public/textures/mcwbyg/ebony_planks_lower_roof.png b/public/textures/mcwbyg/ebony_planks_lower_roof.png new file mode 100644 index 00000000..e1279374 Binary files /dev/null and b/public/textures/mcwbyg/ebony_planks_lower_roof.png differ diff --git a/public/textures/mcwbyg/ebony_planks_path.png b/public/textures/mcwbyg/ebony_planks_path.png new file mode 100644 index 00000000..a4e2b040 Binary files /dev/null and b/public/textures/mcwbyg/ebony_planks_path.png differ diff --git a/public/textures/mcwbyg/ebony_planks_roof.png b/public/textures/mcwbyg/ebony_planks_roof.png new file mode 100644 index 00000000..ed05f378 Binary files /dev/null and b/public/textures/mcwbyg/ebony_planks_roof.png differ diff --git a/public/textures/mcwbyg/ebony_planks_steep_roof.png b/public/textures/mcwbyg/ebony_planks_steep_roof.png new file mode 100644 index 00000000..179950c2 Binary files /dev/null and b/public/textures/mcwbyg/ebony_planks_steep_roof.png differ diff --git a/public/textures/mcwbyg/ebony_planks_top_roof.png b/public/textures/mcwbyg/ebony_planks_top_roof.png new file mode 100644 index 00000000..daf075cb Binary files /dev/null and b/public/textures/mcwbyg/ebony_planks_top_roof.png differ diff --git a/public/textures/mcwbyg/ebony_planks_upper_lower_roof.png b/public/textures/mcwbyg/ebony_planks_upper_lower_roof.png new file mode 100644 index 00000000..447da0dc Binary files /dev/null and b/public/textures/mcwbyg/ebony_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/ebony_planks_upper_steep_roof.png b/public/textures/mcwbyg/ebony_planks_upper_steep_roof.png new file mode 100644 index 00000000..fd1a2dad Binary files /dev/null and b/public/textures/mcwbyg/ebony_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/ebony_pyramid_gate.png b/public/textures/mcwbyg/ebony_pyramid_gate.png new file mode 100644 index 00000000..8a27652f Binary files /dev/null and b/public/textures/mcwbyg/ebony_pyramid_gate.png differ diff --git a/public/textures/mcwbyg/ebony_rail_bridge.png b/public/textures/mcwbyg/ebony_rail_bridge.png new file mode 100644 index 00000000..592a1e86 Binary files /dev/null and b/public/textures/mcwbyg/ebony_rail_bridge.png differ diff --git a/public/textures/mcwbyg/ebony_ranch_trapdoor.png b/public/textures/mcwbyg/ebony_ranch_trapdoor.png new file mode 100644 index 00000000..cffa1cfe Binary files /dev/null and b/public/textures/mcwbyg/ebony_ranch_trapdoor.png differ diff --git a/public/textures/mcwbyg/ebony_roof.png b/public/textures/mcwbyg/ebony_roof.png new file mode 100644 index 00000000..2393e49e Binary files /dev/null and b/public/textures/mcwbyg/ebony_roof.png differ diff --git a/public/textures/mcwbyg/ebony_rope_bridge_stair.png b/public/textures/mcwbyg/ebony_rope_bridge_stair.png new file mode 100644 index 00000000..abf3b119 Binary files /dev/null and b/public/textures/mcwbyg/ebony_rope_bridge_stair.png differ diff --git a/public/textures/mcwbyg/ebony_shutter.png b/public/textures/mcwbyg/ebony_shutter.png new file mode 100644 index 00000000..cc2b04e5 Binary files /dev/null and b/public/textures/mcwbyg/ebony_shutter.png differ diff --git a/public/textures/mcwbyg/ebony_stable_door.png b/public/textures/mcwbyg/ebony_stable_door.png new file mode 100644 index 00000000..267836ac Binary files /dev/null and b/public/textures/mcwbyg/ebony_stable_door.png differ diff --git a/public/textures/mcwbyg/ebony_stable_head_door.png b/public/textures/mcwbyg/ebony_stable_head_door.png new file mode 100644 index 00000000..fc86e357 Binary files /dev/null and b/public/textures/mcwbyg/ebony_stable_head_door.png differ diff --git a/public/textures/mcwbyg/ebony_steep_roof.png b/public/textures/mcwbyg/ebony_steep_roof.png new file mode 100644 index 00000000..a30cbc2c Binary files /dev/null and b/public/textures/mcwbyg/ebony_steep_roof.png differ diff --git a/public/textures/mcwbyg/ebony_stockade_fence.png b/public/textures/mcwbyg/ebony_stockade_fence.png new file mode 100644 index 00000000..2e0b3f84 Binary files /dev/null and b/public/textures/mcwbyg/ebony_stockade_fence.png differ diff --git a/public/textures/mcwbyg/ebony_stool_chair.png b/public/textures/mcwbyg/ebony_stool_chair.png new file mode 100644 index 00000000..ac73688b Binary files /dev/null and b/public/textures/mcwbyg/ebony_stool_chair.png differ diff --git a/public/textures/mcwbyg/ebony_striped_chair.png b/public/textures/mcwbyg/ebony_striped_chair.png new file mode 100644 index 00000000..abcc4fa8 Binary files /dev/null and b/public/textures/mcwbyg/ebony_striped_chair.png differ diff --git a/public/textures/mcwbyg/ebony_swamp_door.png b/public/textures/mcwbyg/ebony_swamp_door.png new file mode 100644 index 00000000..3cb043f8 Binary files /dev/null and b/public/textures/mcwbyg/ebony_swamp_door.png differ diff --git a/public/textures/mcwbyg/ebony_swamp_trapdoor.png b/public/textures/mcwbyg/ebony_swamp_trapdoor.png new file mode 100644 index 00000000..4c406198 Binary files /dev/null and b/public/textures/mcwbyg/ebony_swamp_trapdoor.png differ diff --git a/public/textures/mcwbyg/ebony_table.png b/public/textures/mcwbyg/ebony_table.png new file mode 100644 index 00000000..d952348f Binary files /dev/null and b/public/textures/mcwbyg/ebony_table.png differ diff --git a/public/textures/mcwbyg/ebony_top_roof.png b/public/textures/mcwbyg/ebony_top_roof.png new file mode 100644 index 00000000..e2a46b20 Binary files /dev/null and b/public/textures/mcwbyg/ebony_top_roof.png differ diff --git a/public/textures/mcwbyg/ebony_triple_drawer.png b/public/textures/mcwbyg/ebony_triple_drawer.png new file mode 100644 index 00000000..cb3c3e37 Binary files /dev/null and b/public/textures/mcwbyg/ebony_triple_drawer.png differ diff --git a/public/textures/mcwbyg/ebony_tropical_door.png b/public/textures/mcwbyg/ebony_tropical_door.png new file mode 100644 index 00000000..a49583f3 Binary files /dev/null and b/public/textures/mcwbyg/ebony_tropical_door.png differ diff --git a/public/textures/mcwbyg/ebony_tropical_trapdoor.png b/public/textures/mcwbyg/ebony_tropical_trapdoor.png new file mode 100644 index 00000000..7b7ffaa6 Binary files /dev/null and b/public/textures/mcwbyg/ebony_tropical_trapdoor.png differ diff --git a/public/textures/mcwbyg/ebony_upper_lower_roof.png b/public/textures/mcwbyg/ebony_upper_lower_roof.png new file mode 100644 index 00000000..1d6185c0 Binary files /dev/null and b/public/textures/mcwbyg/ebony_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/ebony_upper_steep_roof.png b/public/textures/mcwbyg/ebony_upper_steep_roof.png new file mode 100644 index 00000000..b3e4a279 Binary files /dev/null and b/public/textures/mcwbyg/ebony_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/ebony_waffle_door.png b/public/textures/mcwbyg/ebony_waffle_door.png new file mode 100644 index 00000000..7a705409 Binary files /dev/null and b/public/textures/mcwbyg/ebony_waffle_door.png differ diff --git a/public/textures/mcwbyg/ebony_wardrobe.png b/public/textures/mcwbyg/ebony_wardrobe.png new file mode 100644 index 00000000..890fea23 Binary files /dev/null and b/public/textures/mcwbyg/ebony_wardrobe.png differ diff --git a/public/textures/mcwbyg/ebony_western_door.png b/public/textures/mcwbyg/ebony_western_door.png new file mode 100644 index 00000000..399f4dcb Binary files /dev/null and b/public/textures/mcwbyg/ebony_western_door.png differ diff --git a/public/textures/mcwbyg/ebony_whispering_door.png b/public/textures/mcwbyg/ebony_whispering_door.png new file mode 100644 index 00000000..4b8cca33 Binary files /dev/null and b/public/textures/mcwbyg/ebony_whispering_door.png differ diff --git a/public/textures/mcwbyg/ebony_whispering_trapdoor.png b/public/textures/mcwbyg/ebony_whispering_trapdoor.png new file mode 100644 index 00000000..eff36deb Binary files /dev/null and b/public/textures/mcwbyg/ebony_whispering_trapdoor.png differ diff --git a/public/textures/mcwbyg/ebony_window.png b/public/textures/mcwbyg/ebony_window.png new file mode 100644 index 00000000..6c097725 Binary files /dev/null and b/public/textures/mcwbyg/ebony_window.png differ diff --git a/public/textures/mcwbyg/ebony_window2.png b/public/textures/mcwbyg/ebony_window2.png new file mode 100644 index 00000000..19147caa Binary files /dev/null and b/public/textures/mcwbyg/ebony_window2.png differ diff --git a/public/textures/mcwbyg/ebony_wired_fence.png b/public/textures/mcwbyg/ebony_wired_fence.png new file mode 100644 index 00000000..dd53d41e Binary files /dev/null and b/public/textures/mcwbyg/ebony_wired_fence.png differ diff --git a/public/textures/mcwbyg/fir_attic_roof.png b/public/textures/mcwbyg/fir_attic_roof.png new file mode 100644 index 00000000..b8f8940d Binary files /dev/null and b/public/textures/mcwbyg/fir_attic_roof.png differ diff --git a/public/textures/mcwbyg/fir_bamboo_door.png b/public/textures/mcwbyg/fir_bamboo_door.png new file mode 100644 index 00000000..327d5b82 Binary files /dev/null and b/public/textures/mcwbyg/fir_bamboo_door.png differ diff --git a/public/textures/mcwbyg/fir_bamboo_trapdoor.png b/public/textures/mcwbyg/fir_bamboo_trapdoor.png new file mode 100644 index 00000000..79459f1f Binary files /dev/null and b/public/textures/mcwbyg/fir_bamboo_trapdoor.png differ diff --git a/public/textures/mcwbyg/fir_bark_glass_door.png b/public/textures/mcwbyg/fir_bark_glass_door.png new file mode 100644 index 00000000..fa538e87 Binary files /dev/null and b/public/textures/mcwbyg/fir_bark_glass_door.png differ diff --git a/public/textures/mcwbyg/fir_bark_trapdoor.png b/public/textures/mcwbyg/fir_bark_trapdoor.png new file mode 100644 index 00000000..162fd796 Binary files /dev/null and b/public/textures/mcwbyg/fir_bark_trapdoor.png differ diff --git a/public/textures/mcwbyg/fir_barn_door.png b/public/textures/mcwbyg/fir_barn_door.png new file mode 100644 index 00000000..7fe4ad8f Binary files /dev/null and b/public/textures/mcwbyg/fir_barn_door.png differ diff --git a/public/textures/mcwbyg/fir_barn_glass_door.png b/public/textures/mcwbyg/fir_barn_glass_door.png new file mode 100644 index 00000000..1c9d5a69 Binary files /dev/null and b/public/textures/mcwbyg/fir_barn_glass_door.png differ diff --git a/public/textures/mcwbyg/fir_barn_trapdoor.png b/public/textures/mcwbyg/fir_barn_trapdoor.png new file mode 100644 index 00000000..068a0aee Binary files /dev/null and b/public/textures/mcwbyg/fir_barn_trapdoor.png differ diff --git a/public/textures/mcwbyg/fir_barred_trapdoor.png b/public/textures/mcwbyg/fir_barred_trapdoor.png new file mode 100644 index 00000000..3c4a0eca Binary files /dev/null and b/public/textures/mcwbyg/fir_barred_trapdoor.png differ diff --git a/public/textures/mcwbyg/fir_barrel_trapdoor.png b/public/textures/mcwbyg/fir_barrel_trapdoor.png new file mode 100644 index 00000000..9d49f658 Binary files /dev/null and b/public/textures/mcwbyg/fir_barrel_trapdoor.png differ diff --git a/public/textures/mcwbyg/fir_beach_door.png b/public/textures/mcwbyg/fir_beach_door.png new file mode 100644 index 00000000..78eb7339 Binary files /dev/null and b/public/textures/mcwbyg/fir_beach_door.png differ diff --git a/public/textures/mcwbyg/fir_beach_trapdoor.png b/public/textures/mcwbyg/fir_beach_trapdoor.png new file mode 100644 index 00000000..ff8ad57b Binary files /dev/null and b/public/textures/mcwbyg/fir_beach_trapdoor.png differ diff --git a/public/textures/mcwbyg/fir_blinds.png b/public/textures/mcwbyg/fir_blinds.png new file mode 100644 index 00000000..b22ed234 Binary files /dev/null and b/public/textures/mcwbyg/fir_blinds.png differ diff --git a/public/textures/mcwbyg/fir_blossom_trapdoor.png b/public/textures/mcwbyg/fir_blossom_trapdoor.png new file mode 100644 index 00000000..f8728c05 Binary files /dev/null and b/public/textures/mcwbyg/fir_blossom_trapdoor.png differ diff --git a/public/textures/mcwbyg/fir_bookshelf.png b/public/textures/mcwbyg/fir_bookshelf.png new file mode 100644 index 00000000..183c17c7 Binary files /dev/null and b/public/textures/mcwbyg/fir_bookshelf.png differ diff --git a/public/textures/mcwbyg/fir_bookshelf_cupboard.png b/public/textures/mcwbyg/fir_bookshelf_cupboard.png new file mode 100644 index 00000000..3ed99a1f Binary files /dev/null and b/public/textures/mcwbyg/fir_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/fir_bookshelf_drawer.png b/public/textures/mcwbyg/fir_bookshelf_drawer.png new file mode 100644 index 00000000..97719190 Binary files /dev/null and b/public/textures/mcwbyg/fir_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/fir_bridge_pier.png b/public/textures/mcwbyg/fir_bridge_pier.png new file mode 100644 index 00000000..65638587 Binary files /dev/null and b/public/textures/mcwbyg/fir_bridge_pier.png differ diff --git a/public/textures/mcwbyg/fir_chair.png b/public/textures/mcwbyg/fir_chair.png new file mode 100644 index 00000000..7a4d519e Binary files /dev/null and b/public/textures/mcwbyg/fir_chair.png differ diff --git a/public/textures/mcwbyg/fir_classic_door.png b/public/textures/mcwbyg/fir_classic_door.png new file mode 100644 index 00000000..745b5088 Binary files /dev/null and b/public/textures/mcwbyg/fir_classic_door.png differ diff --git a/public/textures/mcwbyg/fir_classic_trapdoor.png b/public/textures/mcwbyg/fir_classic_trapdoor.png new file mode 100644 index 00000000..6206838e Binary files /dev/null and b/public/textures/mcwbyg/fir_classic_trapdoor.png differ diff --git a/public/textures/mcwbyg/fir_coffee_table.png b/public/textures/mcwbyg/fir_coffee_table.png new file mode 100644 index 00000000..8c63af7f Binary files /dev/null and b/public/textures/mcwbyg/fir_coffee_table.png differ diff --git a/public/textures/mcwbyg/fir_cottage_door.png b/public/textures/mcwbyg/fir_cottage_door.png new file mode 100644 index 00000000..d18682ec Binary files /dev/null and b/public/textures/mcwbyg/fir_cottage_door.png differ diff --git a/public/textures/mcwbyg/fir_cottage_trapdoor.png b/public/textures/mcwbyg/fir_cottage_trapdoor.png new file mode 100644 index 00000000..d9eb99ab Binary files /dev/null and b/public/textures/mcwbyg/fir_cottage_trapdoor.png differ diff --git a/public/textures/mcwbyg/fir_counter.png b/public/textures/mcwbyg/fir_counter.png new file mode 100644 index 00000000..28c10a65 Binary files /dev/null and b/public/textures/mcwbyg/fir_counter.png differ diff --git a/public/textures/mcwbyg/fir_covered_desk.png b/public/textures/mcwbyg/fir_covered_desk.png new file mode 100644 index 00000000..ea103503 Binary files /dev/null and b/public/textures/mcwbyg/fir_covered_desk.png differ diff --git a/public/textures/mcwbyg/fir_cupboard_counter.png b/public/textures/mcwbyg/fir_cupboard_counter.png new file mode 100644 index 00000000..2098a360 Binary files /dev/null and b/public/textures/mcwbyg/fir_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/fir_curtain_rod.png b/public/textures/mcwbyg/fir_curtain_rod.png new file mode 100644 index 00000000..d2a060e6 Binary files /dev/null and b/public/textures/mcwbyg/fir_curtain_rod.png differ diff --git a/public/textures/mcwbyg/fir_curved_gate.png b/public/textures/mcwbyg/fir_curved_gate.png new file mode 100644 index 00000000..48dfc356 Binary files /dev/null and b/public/textures/mcwbyg/fir_curved_gate.png differ diff --git a/public/textures/mcwbyg/fir_desk.png b/public/textures/mcwbyg/fir_desk.png new file mode 100644 index 00000000..84057a23 Binary files /dev/null and b/public/textures/mcwbyg/fir_desk.png differ diff --git a/public/textures/mcwbyg/fir_double_drawer.png b/public/textures/mcwbyg/fir_double_drawer.png new file mode 100644 index 00000000..186d595f Binary files /dev/null and b/public/textures/mcwbyg/fir_double_drawer.png differ diff --git a/public/textures/mcwbyg/fir_double_drawer_counter.png b/public/textures/mcwbyg/fir_double_drawer_counter.png new file mode 100644 index 00000000..16025c48 Binary files /dev/null and b/public/textures/mcwbyg/fir_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/fir_double_kitchen_cabinet.png b/public/textures/mcwbyg/fir_double_kitchen_cabinet.png new file mode 100644 index 00000000..0e132a84 Binary files /dev/null and b/public/textures/mcwbyg/fir_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/fir_double_wardrobe.png b/public/textures/mcwbyg/fir_double_wardrobe.png new file mode 100644 index 00000000..15cbf38c Binary files /dev/null and b/public/textures/mcwbyg/fir_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/fir_drawer.png b/public/textures/mcwbyg/fir_drawer.png new file mode 100644 index 00000000..0b7fae1c Binary files /dev/null and b/public/textures/mcwbyg/fir_drawer.png differ diff --git a/public/textures/mcwbyg/fir_drawer_counter.png b/public/textures/mcwbyg/fir_drawer_counter.png new file mode 100644 index 00000000..fd7b477c Binary files /dev/null and b/public/textures/mcwbyg/fir_drawer_counter.png differ diff --git a/public/textures/mcwbyg/fir_end_table.png b/public/textures/mcwbyg/fir_end_table.png new file mode 100644 index 00000000..0ca17a03 Binary files /dev/null and b/public/textures/mcwbyg/fir_end_table.png differ diff --git a/public/textures/mcwbyg/fir_four_panel_door.png b/public/textures/mcwbyg/fir_four_panel_door.png new file mode 100644 index 00000000..f698502d Binary files /dev/null and b/public/textures/mcwbyg/fir_four_panel_door.png differ diff --git a/public/textures/mcwbyg/fir_four_panel_trapdoor.png b/public/textures/mcwbyg/fir_four_panel_trapdoor.png new file mode 100644 index 00000000..6a8d7be4 Binary files /dev/null and b/public/textures/mcwbyg/fir_four_panel_trapdoor.png differ diff --git a/public/textures/mcwbyg/fir_four_window.png b/public/textures/mcwbyg/fir_four_window.png new file mode 100644 index 00000000..88aefd09 Binary files /dev/null and b/public/textures/mcwbyg/fir_four_window.png differ diff --git a/public/textures/mcwbyg/fir_glass_door.png b/public/textures/mcwbyg/fir_glass_door.png new file mode 100644 index 00000000..a7fda222 Binary files /dev/null and b/public/textures/mcwbyg/fir_glass_door.png differ diff --git a/public/textures/mcwbyg/fir_glass_kitchen_cabinet.png b/public/textures/mcwbyg/fir_glass_kitchen_cabinet.png new file mode 100644 index 00000000..da280fe5 Binary files /dev/null and b/public/textures/mcwbyg/fir_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/fir_glass_table.png b/public/textures/mcwbyg/fir_glass_table.png new file mode 100644 index 00000000..0ecf266c Binary files /dev/null and b/public/textures/mcwbyg/fir_glass_table.png differ diff --git a/public/textures/mcwbyg/fir_glass_trapdoor.png b/public/textures/mcwbyg/fir_glass_trapdoor.png new file mode 100644 index 00000000..e45cd884 Binary files /dev/null and b/public/textures/mcwbyg/fir_glass_trapdoor.png differ diff --git a/public/textures/mcwbyg/fir_hedge.png b/public/textures/mcwbyg/fir_hedge.png new file mode 100644 index 00000000..ee6b896a Binary files /dev/null and b/public/textures/mcwbyg/fir_hedge.png differ diff --git a/public/textures/mcwbyg/fir_highley_gate.png b/public/textures/mcwbyg/fir_highley_gate.png new file mode 100644 index 00000000..81967fda Binary files /dev/null and b/public/textures/mcwbyg/fir_highley_gate.png differ diff --git a/public/textures/mcwbyg/fir_horse_fence.png b/public/textures/mcwbyg/fir_horse_fence.png new file mode 100644 index 00000000..d20d7c11 Binary files /dev/null and b/public/textures/mcwbyg/fir_horse_fence.png differ diff --git a/public/textures/mcwbyg/fir_japanese2_door.png b/public/textures/mcwbyg/fir_japanese2_door.png new file mode 100644 index 00000000..7a3f75dd Binary files /dev/null and b/public/textures/mcwbyg/fir_japanese2_door.png differ diff --git a/public/textures/mcwbyg/fir_japanese_door.png b/public/textures/mcwbyg/fir_japanese_door.png new file mode 100644 index 00000000..b4c02013 Binary files /dev/null and b/public/textures/mcwbyg/fir_japanese_door.png differ diff --git a/public/textures/mcwbyg/fir_kitchen_cabinet.png b/public/textures/mcwbyg/fir_kitchen_cabinet.png new file mode 100644 index 00000000..e34cf782 Binary files /dev/null and b/public/textures/mcwbyg/fir_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/fir_large_drawer.png b/public/textures/mcwbyg/fir_large_drawer.png new file mode 100644 index 00000000..6d1f36a8 Binary files /dev/null and b/public/textures/mcwbyg/fir_large_drawer.png differ diff --git a/public/textures/mcwbyg/fir_log_bridge_middle.png b/public/textures/mcwbyg/fir_log_bridge_middle.png new file mode 100644 index 00000000..7cfdd2dc Binary files /dev/null and b/public/textures/mcwbyg/fir_log_bridge_middle.png differ diff --git a/public/textures/mcwbyg/fir_log_bridge_stair.png b/public/textures/mcwbyg/fir_log_bridge_stair.png new file mode 100644 index 00000000..ba6a9f2c Binary files /dev/null and b/public/textures/mcwbyg/fir_log_bridge_stair.png differ diff --git a/public/textures/mcwbyg/fir_log_parapet.png b/public/textures/mcwbyg/fir_log_parapet.png new file mode 100644 index 00000000..ff24d5ec Binary files /dev/null and b/public/textures/mcwbyg/fir_log_parapet.png differ diff --git a/public/textures/mcwbyg/fir_louvered_shutter.png b/public/textures/mcwbyg/fir_louvered_shutter.png new file mode 100644 index 00000000..811d7c7e Binary files /dev/null and b/public/textures/mcwbyg/fir_louvered_shutter.png differ diff --git a/public/textures/mcwbyg/fir_lower_bookshelf_drawer.png b/public/textures/mcwbyg/fir_lower_bookshelf_drawer.png new file mode 100644 index 00000000..6ca9547d Binary files /dev/null and b/public/textures/mcwbyg/fir_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/fir_lower_roof.png b/public/textures/mcwbyg/fir_lower_roof.png new file mode 100644 index 00000000..14012f36 Binary files /dev/null and b/public/textures/mcwbyg/fir_lower_roof.png differ diff --git a/public/textures/mcwbyg/fir_lower_triple_drawer.png b/public/textures/mcwbyg/fir_lower_triple_drawer.png new file mode 100644 index 00000000..0943cc4c Binary files /dev/null and b/public/textures/mcwbyg/fir_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/fir_modern_chair.png b/public/textures/mcwbyg/fir_modern_chair.png new file mode 100644 index 00000000..44bfa6a3 Binary files /dev/null and b/public/textures/mcwbyg/fir_modern_chair.png differ diff --git a/public/textures/mcwbyg/fir_modern_desk.png b/public/textures/mcwbyg/fir_modern_desk.png new file mode 100644 index 00000000..c69841c7 Binary files /dev/null and b/public/textures/mcwbyg/fir_modern_desk.png differ diff --git a/public/textures/mcwbyg/fir_modern_door.png b/public/textures/mcwbyg/fir_modern_door.png new file mode 100644 index 00000000..76d7e095 Binary files /dev/null and b/public/textures/mcwbyg/fir_modern_door.png differ diff --git a/public/textures/mcwbyg/fir_modern_wardrobe.png b/public/textures/mcwbyg/fir_modern_wardrobe.png new file mode 100644 index 00000000..45a352b1 Binary files /dev/null and b/public/textures/mcwbyg/fir_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/fir_mystic_door.png b/public/textures/mcwbyg/fir_mystic_door.png new file mode 100644 index 00000000..e771f0b3 Binary files /dev/null and b/public/textures/mcwbyg/fir_mystic_door.png differ diff --git a/public/textures/mcwbyg/fir_mystic_trapdoor.png b/public/textures/mcwbyg/fir_mystic_trapdoor.png new file mode 100644 index 00000000..12f4f8f4 Binary files /dev/null and b/public/textures/mcwbyg/fir_mystic_trapdoor.png differ diff --git a/public/textures/mcwbyg/fir_nether_door.png b/public/textures/mcwbyg/fir_nether_door.png new file mode 100644 index 00000000..fee835ca Binary files /dev/null and b/public/textures/mcwbyg/fir_nether_door.png differ diff --git a/public/textures/mcwbyg/fir_pane_window.png b/public/textures/mcwbyg/fir_pane_window.png new file mode 100644 index 00000000..7b1ed8de Binary files /dev/null and b/public/textures/mcwbyg/fir_pane_window.png differ diff --git a/public/textures/mcwbyg/fir_paper_door.png b/public/textures/mcwbyg/fir_paper_door.png new file mode 100644 index 00000000..2dc5c2ec Binary files /dev/null and b/public/textures/mcwbyg/fir_paper_door.png differ diff --git a/public/textures/mcwbyg/fir_paper_trapdoor.png b/public/textures/mcwbyg/fir_paper_trapdoor.png new file mode 100644 index 00000000..9b6c085a Binary files /dev/null and b/public/textures/mcwbyg/fir_paper_trapdoor.png differ diff --git a/public/textures/mcwbyg/fir_picket_fence.png b/public/textures/mcwbyg/fir_picket_fence.png new file mode 100644 index 00000000..888da1b9 Binary files /dev/null and b/public/textures/mcwbyg/fir_picket_fence.png differ diff --git a/public/textures/mcwbyg/fir_plank_four_window.png b/public/textures/mcwbyg/fir_plank_four_window.png new file mode 100644 index 00000000..afbec08f Binary files /dev/null and b/public/textures/mcwbyg/fir_plank_four_window.png differ diff --git a/public/textures/mcwbyg/fir_plank_pane_window.png b/public/textures/mcwbyg/fir_plank_pane_window.png new file mode 100644 index 00000000..1c6d2a51 Binary files /dev/null and b/public/textures/mcwbyg/fir_plank_pane_window.png differ diff --git a/public/textures/mcwbyg/fir_plank_parapet.png b/public/textures/mcwbyg/fir_plank_parapet.png new file mode 100644 index 00000000..28bef783 Binary files /dev/null and b/public/textures/mcwbyg/fir_plank_parapet.png differ diff --git a/public/textures/mcwbyg/fir_plank_window.png b/public/textures/mcwbyg/fir_plank_window.png new file mode 100644 index 00000000..6569cc1f Binary files /dev/null and b/public/textures/mcwbyg/fir_plank_window.png differ diff --git a/public/textures/mcwbyg/fir_plank_window2.png b/public/textures/mcwbyg/fir_plank_window2.png new file mode 100644 index 00000000..7558c709 Binary files /dev/null and b/public/textures/mcwbyg/fir_plank_window2.png differ diff --git a/public/textures/mcwbyg/fir_planks_attic_roof.png b/public/textures/mcwbyg/fir_planks_attic_roof.png new file mode 100644 index 00000000..d0b01cd8 Binary files /dev/null and b/public/textures/mcwbyg/fir_planks_attic_roof.png differ diff --git a/public/textures/mcwbyg/fir_planks_lower_roof.png b/public/textures/mcwbyg/fir_planks_lower_roof.png new file mode 100644 index 00000000..0da4a7d3 Binary files /dev/null and b/public/textures/mcwbyg/fir_planks_lower_roof.png differ diff --git a/public/textures/mcwbyg/fir_planks_path.png b/public/textures/mcwbyg/fir_planks_path.png new file mode 100644 index 00000000..c583a066 Binary files /dev/null and b/public/textures/mcwbyg/fir_planks_path.png differ diff --git a/public/textures/mcwbyg/fir_planks_roof.png b/public/textures/mcwbyg/fir_planks_roof.png new file mode 100644 index 00000000..42295114 Binary files /dev/null and b/public/textures/mcwbyg/fir_planks_roof.png differ diff --git a/public/textures/mcwbyg/fir_planks_steep_roof.png b/public/textures/mcwbyg/fir_planks_steep_roof.png new file mode 100644 index 00000000..17083eb7 Binary files /dev/null and b/public/textures/mcwbyg/fir_planks_steep_roof.png differ diff --git a/public/textures/mcwbyg/fir_planks_top_roof.png b/public/textures/mcwbyg/fir_planks_top_roof.png new file mode 100644 index 00000000..16786ce6 Binary files /dev/null and b/public/textures/mcwbyg/fir_planks_top_roof.png differ diff --git a/public/textures/mcwbyg/fir_planks_upper_lower_roof.png b/public/textures/mcwbyg/fir_planks_upper_lower_roof.png new file mode 100644 index 00000000..7dcc5dbd Binary files /dev/null and b/public/textures/mcwbyg/fir_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/fir_planks_upper_steep_roof.png b/public/textures/mcwbyg/fir_planks_upper_steep_roof.png new file mode 100644 index 00000000..85faec33 Binary files /dev/null and b/public/textures/mcwbyg/fir_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/fir_pyramid_gate.png b/public/textures/mcwbyg/fir_pyramid_gate.png new file mode 100644 index 00000000..9d0e417d Binary files /dev/null and b/public/textures/mcwbyg/fir_pyramid_gate.png differ diff --git a/public/textures/mcwbyg/fir_rail_bridge.png b/public/textures/mcwbyg/fir_rail_bridge.png new file mode 100644 index 00000000..e4066f50 Binary files /dev/null and b/public/textures/mcwbyg/fir_rail_bridge.png differ diff --git a/public/textures/mcwbyg/fir_ranch_trapdoor.png b/public/textures/mcwbyg/fir_ranch_trapdoor.png new file mode 100644 index 00000000..e77db4e0 Binary files /dev/null and b/public/textures/mcwbyg/fir_ranch_trapdoor.png differ diff --git a/public/textures/mcwbyg/fir_roof.png b/public/textures/mcwbyg/fir_roof.png new file mode 100644 index 00000000..4b28f3a7 Binary files /dev/null and b/public/textures/mcwbyg/fir_roof.png differ diff --git a/public/textures/mcwbyg/fir_rope_bridge_stair.png b/public/textures/mcwbyg/fir_rope_bridge_stair.png new file mode 100644 index 00000000..73ce7364 Binary files /dev/null and b/public/textures/mcwbyg/fir_rope_bridge_stair.png differ diff --git a/public/textures/mcwbyg/fir_shutter.png b/public/textures/mcwbyg/fir_shutter.png new file mode 100644 index 00000000..2ac5a93a Binary files /dev/null and b/public/textures/mcwbyg/fir_shutter.png differ diff --git a/public/textures/mcwbyg/fir_stable_door.png b/public/textures/mcwbyg/fir_stable_door.png new file mode 100644 index 00000000..f2da9540 Binary files /dev/null and b/public/textures/mcwbyg/fir_stable_door.png differ diff --git a/public/textures/mcwbyg/fir_stable_head_door.png b/public/textures/mcwbyg/fir_stable_head_door.png new file mode 100644 index 00000000..9c3864ab Binary files /dev/null and b/public/textures/mcwbyg/fir_stable_head_door.png differ diff --git a/public/textures/mcwbyg/fir_steep_roof.png b/public/textures/mcwbyg/fir_steep_roof.png new file mode 100644 index 00000000..c70b6c24 Binary files /dev/null and b/public/textures/mcwbyg/fir_steep_roof.png differ diff --git a/public/textures/mcwbyg/fir_stockade_fence.png b/public/textures/mcwbyg/fir_stockade_fence.png new file mode 100644 index 00000000..7deb00d2 Binary files /dev/null and b/public/textures/mcwbyg/fir_stockade_fence.png differ diff --git a/public/textures/mcwbyg/fir_stool_chair.png b/public/textures/mcwbyg/fir_stool_chair.png new file mode 100644 index 00000000..8ee86bc7 Binary files /dev/null and b/public/textures/mcwbyg/fir_stool_chair.png differ diff --git a/public/textures/mcwbyg/fir_striped_chair.png b/public/textures/mcwbyg/fir_striped_chair.png new file mode 100644 index 00000000..52192e2d Binary files /dev/null and b/public/textures/mcwbyg/fir_striped_chair.png differ diff --git a/public/textures/mcwbyg/fir_swamp_door.png b/public/textures/mcwbyg/fir_swamp_door.png new file mode 100644 index 00000000..f4282c6f Binary files /dev/null and b/public/textures/mcwbyg/fir_swamp_door.png differ diff --git a/public/textures/mcwbyg/fir_swamp_trapdoor.png b/public/textures/mcwbyg/fir_swamp_trapdoor.png new file mode 100644 index 00000000..529370d0 Binary files /dev/null and b/public/textures/mcwbyg/fir_swamp_trapdoor.png differ diff --git a/public/textures/mcwbyg/fir_table.png b/public/textures/mcwbyg/fir_table.png new file mode 100644 index 00000000..b5791926 Binary files /dev/null and b/public/textures/mcwbyg/fir_table.png differ diff --git a/public/textures/mcwbyg/fir_top_roof.png b/public/textures/mcwbyg/fir_top_roof.png new file mode 100644 index 00000000..5339182c Binary files /dev/null and b/public/textures/mcwbyg/fir_top_roof.png differ diff --git a/public/textures/mcwbyg/fir_triple_drawer.png b/public/textures/mcwbyg/fir_triple_drawer.png new file mode 100644 index 00000000..3be6c77d Binary files /dev/null and b/public/textures/mcwbyg/fir_triple_drawer.png differ diff --git a/public/textures/mcwbyg/fir_tropical_door.png b/public/textures/mcwbyg/fir_tropical_door.png new file mode 100644 index 00000000..62aa703b Binary files /dev/null and b/public/textures/mcwbyg/fir_tropical_door.png differ diff --git a/public/textures/mcwbyg/fir_tropical_trapdoor.png b/public/textures/mcwbyg/fir_tropical_trapdoor.png new file mode 100644 index 00000000..45c1c412 Binary files /dev/null and b/public/textures/mcwbyg/fir_tropical_trapdoor.png differ diff --git a/public/textures/mcwbyg/fir_upper_lower_roof.png b/public/textures/mcwbyg/fir_upper_lower_roof.png new file mode 100644 index 00000000..93266c68 Binary files /dev/null and b/public/textures/mcwbyg/fir_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/fir_upper_steep_roof.png b/public/textures/mcwbyg/fir_upper_steep_roof.png new file mode 100644 index 00000000..5d7c733d Binary files /dev/null and b/public/textures/mcwbyg/fir_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/fir_waffle_door.png b/public/textures/mcwbyg/fir_waffle_door.png new file mode 100644 index 00000000..78be2684 Binary files /dev/null and b/public/textures/mcwbyg/fir_waffle_door.png differ diff --git a/public/textures/mcwbyg/fir_wardrobe.png b/public/textures/mcwbyg/fir_wardrobe.png new file mode 100644 index 00000000..49f3ea13 Binary files /dev/null and b/public/textures/mcwbyg/fir_wardrobe.png differ diff --git a/public/textures/mcwbyg/fir_western_door.png b/public/textures/mcwbyg/fir_western_door.png new file mode 100644 index 00000000..467c0164 Binary files /dev/null and b/public/textures/mcwbyg/fir_western_door.png differ diff --git a/public/textures/mcwbyg/fir_whispering_door.png b/public/textures/mcwbyg/fir_whispering_door.png new file mode 100644 index 00000000..2676ec87 Binary files /dev/null and b/public/textures/mcwbyg/fir_whispering_door.png differ diff --git a/public/textures/mcwbyg/fir_whispering_trapdoor.png b/public/textures/mcwbyg/fir_whispering_trapdoor.png new file mode 100644 index 00000000..2c6febb3 Binary files /dev/null and b/public/textures/mcwbyg/fir_whispering_trapdoor.png differ diff --git a/public/textures/mcwbyg/fir_window.png b/public/textures/mcwbyg/fir_window.png new file mode 100644 index 00000000..c2cfbecb Binary files /dev/null and b/public/textures/mcwbyg/fir_window.png differ diff --git a/public/textures/mcwbyg/fir_window2.png b/public/textures/mcwbyg/fir_window2.png new file mode 100644 index 00000000..48879bc8 Binary files /dev/null and b/public/textures/mcwbyg/fir_window2.png differ diff --git a/public/textures/mcwbyg/fir_wired_fence.png b/public/textures/mcwbyg/fir_wired_fence.png new file mode 100644 index 00000000..447a1c8f Binary files /dev/null and b/public/textures/mcwbyg/fir_wired_fence.png differ diff --git a/public/textures/mcwbyg/florus_attic_roof.png b/public/textures/mcwbyg/florus_attic_roof.png new file mode 100644 index 00000000..21ec78f0 Binary files /dev/null and b/public/textures/mcwbyg/florus_attic_roof.png differ diff --git a/public/textures/mcwbyg/florus_bamboo_door.png b/public/textures/mcwbyg/florus_bamboo_door.png new file mode 100644 index 00000000..cf63a585 Binary files /dev/null and b/public/textures/mcwbyg/florus_bamboo_door.png differ diff --git a/public/textures/mcwbyg/florus_bamboo_trapdoor.png b/public/textures/mcwbyg/florus_bamboo_trapdoor.png new file mode 100644 index 00000000..0665bee8 Binary files /dev/null and b/public/textures/mcwbyg/florus_bamboo_trapdoor.png differ diff --git a/public/textures/mcwbyg/florus_bark_glass_door.png b/public/textures/mcwbyg/florus_bark_glass_door.png new file mode 100644 index 00000000..7e4b608b Binary files /dev/null and b/public/textures/mcwbyg/florus_bark_glass_door.png differ diff --git a/public/textures/mcwbyg/florus_bark_trapdoor.png b/public/textures/mcwbyg/florus_bark_trapdoor.png new file mode 100644 index 00000000..3596311e Binary files /dev/null and b/public/textures/mcwbyg/florus_bark_trapdoor.png differ diff --git a/public/textures/mcwbyg/florus_barn_door.png b/public/textures/mcwbyg/florus_barn_door.png new file mode 100644 index 00000000..c4a87cbd Binary files /dev/null and b/public/textures/mcwbyg/florus_barn_door.png differ diff --git a/public/textures/mcwbyg/florus_barn_glass_door.png b/public/textures/mcwbyg/florus_barn_glass_door.png new file mode 100644 index 00000000..3cc0d9cb Binary files /dev/null and b/public/textures/mcwbyg/florus_barn_glass_door.png differ diff --git a/public/textures/mcwbyg/florus_barn_trapdoor.png b/public/textures/mcwbyg/florus_barn_trapdoor.png new file mode 100644 index 00000000..3cef255b Binary files /dev/null and b/public/textures/mcwbyg/florus_barn_trapdoor.png differ diff --git a/public/textures/mcwbyg/florus_barred_trapdoor.png b/public/textures/mcwbyg/florus_barred_trapdoor.png new file mode 100644 index 00000000..a1cba52b Binary files /dev/null and b/public/textures/mcwbyg/florus_barred_trapdoor.png differ diff --git a/public/textures/mcwbyg/florus_barrel_trapdoor.png b/public/textures/mcwbyg/florus_barrel_trapdoor.png new file mode 100644 index 00000000..f5dccf9c Binary files /dev/null and b/public/textures/mcwbyg/florus_barrel_trapdoor.png differ diff --git a/public/textures/mcwbyg/florus_beach_door.png b/public/textures/mcwbyg/florus_beach_door.png new file mode 100644 index 00000000..fbbacacf Binary files /dev/null and b/public/textures/mcwbyg/florus_beach_door.png differ diff --git a/public/textures/mcwbyg/florus_beach_trapdoor.png b/public/textures/mcwbyg/florus_beach_trapdoor.png new file mode 100644 index 00000000..3295eedb Binary files /dev/null and b/public/textures/mcwbyg/florus_beach_trapdoor.png differ diff --git a/public/textures/mcwbyg/florus_blinds.png b/public/textures/mcwbyg/florus_blinds.png new file mode 100644 index 00000000..e7f9aece Binary files /dev/null and b/public/textures/mcwbyg/florus_blinds.png differ diff --git a/public/textures/mcwbyg/florus_blossom_trapdoor.png b/public/textures/mcwbyg/florus_blossom_trapdoor.png new file mode 100644 index 00000000..30357805 Binary files /dev/null and b/public/textures/mcwbyg/florus_blossom_trapdoor.png differ diff --git a/public/textures/mcwbyg/florus_bookshelf.png b/public/textures/mcwbyg/florus_bookshelf.png new file mode 100644 index 00000000..ca8b3f36 Binary files /dev/null and b/public/textures/mcwbyg/florus_bookshelf.png differ diff --git a/public/textures/mcwbyg/florus_bookshelf_cupboard.png b/public/textures/mcwbyg/florus_bookshelf_cupboard.png new file mode 100644 index 00000000..a3e62524 Binary files /dev/null and b/public/textures/mcwbyg/florus_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/florus_bookshelf_drawer.png b/public/textures/mcwbyg/florus_bookshelf_drawer.png new file mode 100644 index 00000000..298aebe4 Binary files /dev/null and b/public/textures/mcwbyg/florus_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/florus_bridge_pier.png b/public/textures/mcwbyg/florus_bridge_pier.png new file mode 100644 index 00000000..faccb5f5 Binary files /dev/null and b/public/textures/mcwbyg/florus_bridge_pier.png differ diff --git a/public/textures/mcwbyg/florus_chair.png b/public/textures/mcwbyg/florus_chair.png new file mode 100644 index 00000000..bfec522c Binary files /dev/null and b/public/textures/mcwbyg/florus_chair.png differ diff --git a/public/textures/mcwbyg/florus_classic_door.png b/public/textures/mcwbyg/florus_classic_door.png new file mode 100644 index 00000000..291b1e1c Binary files /dev/null and b/public/textures/mcwbyg/florus_classic_door.png differ diff --git a/public/textures/mcwbyg/florus_classic_trapdoor.png b/public/textures/mcwbyg/florus_classic_trapdoor.png new file mode 100644 index 00000000..9203e1f0 Binary files /dev/null and b/public/textures/mcwbyg/florus_classic_trapdoor.png differ diff --git a/public/textures/mcwbyg/florus_coffee_table.png b/public/textures/mcwbyg/florus_coffee_table.png new file mode 100644 index 00000000..463bd90c Binary files /dev/null and b/public/textures/mcwbyg/florus_coffee_table.png differ diff --git a/public/textures/mcwbyg/florus_cottage_door.png b/public/textures/mcwbyg/florus_cottage_door.png new file mode 100644 index 00000000..edfe9442 Binary files /dev/null and b/public/textures/mcwbyg/florus_cottage_door.png differ diff --git a/public/textures/mcwbyg/florus_cottage_trapdoor.png b/public/textures/mcwbyg/florus_cottage_trapdoor.png new file mode 100644 index 00000000..4d62a4ca Binary files /dev/null and b/public/textures/mcwbyg/florus_cottage_trapdoor.png differ diff --git a/public/textures/mcwbyg/florus_counter.png b/public/textures/mcwbyg/florus_counter.png new file mode 100644 index 00000000..3327fe2f Binary files /dev/null and b/public/textures/mcwbyg/florus_counter.png differ diff --git a/public/textures/mcwbyg/florus_covered_desk.png b/public/textures/mcwbyg/florus_covered_desk.png new file mode 100644 index 00000000..1051290e Binary files /dev/null and b/public/textures/mcwbyg/florus_covered_desk.png differ diff --git a/public/textures/mcwbyg/florus_cupboard_counter.png b/public/textures/mcwbyg/florus_cupboard_counter.png new file mode 100644 index 00000000..7cf08195 Binary files /dev/null and b/public/textures/mcwbyg/florus_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/florus_curtain_rod.png b/public/textures/mcwbyg/florus_curtain_rod.png new file mode 100644 index 00000000..89d9f103 Binary files /dev/null and b/public/textures/mcwbyg/florus_curtain_rod.png differ diff --git a/public/textures/mcwbyg/florus_curved_gate.png b/public/textures/mcwbyg/florus_curved_gate.png new file mode 100644 index 00000000..02854fb3 Binary files /dev/null and b/public/textures/mcwbyg/florus_curved_gate.png differ diff --git a/public/textures/mcwbyg/florus_desk.png b/public/textures/mcwbyg/florus_desk.png new file mode 100644 index 00000000..de220937 Binary files /dev/null and b/public/textures/mcwbyg/florus_desk.png differ diff --git a/public/textures/mcwbyg/florus_double_drawer.png b/public/textures/mcwbyg/florus_double_drawer.png new file mode 100644 index 00000000..c9d74222 Binary files /dev/null and b/public/textures/mcwbyg/florus_double_drawer.png differ diff --git a/public/textures/mcwbyg/florus_double_drawer_counter.png b/public/textures/mcwbyg/florus_double_drawer_counter.png new file mode 100644 index 00000000..fba02584 Binary files /dev/null and b/public/textures/mcwbyg/florus_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/florus_double_kitchen_cabinet.png b/public/textures/mcwbyg/florus_double_kitchen_cabinet.png new file mode 100644 index 00000000..0d4aab35 Binary files /dev/null and b/public/textures/mcwbyg/florus_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/florus_double_wardrobe.png b/public/textures/mcwbyg/florus_double_wardrobe.png new file mode 100644 index 00000000..679b854c Binary files /dev/null and b/public/textures/mcwbyg/florus_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/florus_drawer.png b/public/textures/mcwbyg/florus_drawer.png new file mode 100644 index 00000000..3f1554a5 Binary files /dev/null and b/public/textures/mcwbyg/florus_drawer.png differ diff --git a/public/textures/mcwbyg/florus_drawer_counter.png b/public/textures/mcwbyg/florus_drawer_counter.png new file mode 100644 index 00000000..81bee7c2 Binary files /dev/null and b/public/textures/mcwbyg/florus_drawer_counter.png differ diff --git a/public/textures/mcwbyg/florus_end_table.png b/public/textures/mcwbyg/florus_end_table.png new file mode 100644 index 00000000..45053669 Binary files /dev/null and b/public/textures/mcwbyg/florus_end_table.png differ diff --git a/public/textures/mcwbyg/florus_four_panel_door.png b/public/textures/mcwbyg/florus_four_panel_door.png new file mode 100644 index 00000000..2b0a7e9c Binary files /dev/null and b/public/textures/mcwbyg/florus_four_panel_door.png differ diff --git a/public/textures/mcwbyg/florus_four_panel_trapdoor.png b/public/textures/mcwbyg/florus_four_panel_trapdoor.png new file mode 100644 index 00000000..cc9e1b4f Binary files /dev/null and b/public/textures/mcwbyg/florus_four_panel_trapdoor.png differ diff --git a/public/textures/mcwbyg/florus_four_window.png b/public/textures/mcwbyg/florus_four_window.png new file mode 100644 index 00000000..602f0592 Binary files /dev/null and b/public/textures/mcwbyg/florus_four_window.png differ diff --git a/public/textures/mcwbyg/florus_glass_door.png b/public/textures/mcwbyg/florus_glass_door.png new file mode 100644 index 00000000..b7d9086f Binary files /dev/null and b/public/textures/mcwbyg/florus_glass_door.png differ diff --git a/public/textures/mcwbyg/florus_glass_kitchen_cabinet.png b/public/textures/mcwbyg/florus_glass_kitchen_cabinet.png new file mode 100644 index 00000000..83eb5439 Binary files /dev/null and b/public/textures/mcwbyg/florus_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/florus_glass_table.png b/public/textures/mcwbyg/florus_glass_table.png new file mode 100644 index 00000000..9a8927bf Binary files /dev/null and b/public/textures/mcwbyg/florus_glass_table.png differ diff --git a/public/textures/mcwbyg/florus_glass_trapdoor.png b/public/textures/mcwbyg/florus_glass_trapdoor.png new file mode 100644 index 00000000..beb2341c Binary files /dev/null and b/public/textures/mcwbyg/florus_glass_trapdoor.png differ diff --git a/public/textures/mcwbyg/florus_highley_gate.png b/public/textures/mcwbyg/florus_highley_gate.png new file mode 100644 index 00000000..8471760d Binary files /dev/null and b/public/textures/mcwbyg/florus_highley_gate.png differ diff --git a/public/textures/mcwbyg/florus_horse_fence.png b/public/textures/mcwbyg/florus_horse_fence.png new file mode 100644 index 00000000..bf82dd85 Binary files /dev/null and b/public/textures/mcwbyg/florus_horse_fence.png differ diff --git a/public/textures/mcwbyg/florus_japanese2_door.png b/public/textures/mcwbyg/florus_japanese2_door.png new file mode 100644 index 00000000..3835558c Binary files /dev/null and b/public/textures/mcwbyg/florus_japanese2_door.png differ diff --git a/public/textures/mcwbyg/florus_japanese_door.png b/public/textures/mcwbyg/florus_japanese_door.png new file mode 100644 index 00000000..752b2765 Binary files /dev/null and b/public/textures/mcwbyg/florus_japanese_door.png differ diff --git a/public/textures/mcwbyg/florus_kitchen_cabinet.png b/public/textures/mcwbyg/florus_kitchen_cabinet.png new file mode 100644 index 00000000..3ebbcedd Binary files /dev/null and b/public/textures/mcwbyg/florus_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/florus_large_drawer.png b/public/textures/mcwbyg/florus_large_drawer.png new file mode 100644 index 00000000..f851b44d Binary files /dev/null and b/public/textures/mcwbyg/florus_large_drawer.png differ diff --git a/public/textures/mcwbyg/florus_log_bridge_middle.png b/public/textures/mcwbyg/florus_log_bridge_middle.png new file mode 100644 index 00000000..41fc406c Binary files /dev/null and b/public/textures/mcwbyg/florus_log_bridge_middle.png differ diff --git a/public/textures/mcwbyg/florus_log_bridge_stair.png b/public/textures/mcwbyg/florus_log_bridge_stair.png new file mode 100644 index 00000000..7a27c620 Binary files /dev/null and b/public/textures/mcwbyg/florus_log_bridge_stair.png differ diff --git a/public/textures/mcwbyg/florus_log_parapet.png b/public/textures/mcwbyg/florus_log_parapet.png new file mode 100644 index 00000000..dc7f63b7 Binary files /dev/null and b/public/textures/mcwbyg/florus_log_parapet.png differ diff --git a/public/textures/mcwbyg/florus_louvered_shutter.png b/public/textures/mcwbyg/florus_louvered_shutter.png new file mode 100644 index 00000000..7247e264 Binary files /dev/null and b/public/textures/mcwbyg/florus_louvered_shutter.png differ diff --git a/public/textures/mcwbyg/florus_lower_bookshelf_drawer.png b/public/textures/mcwbyg/florus_lower_bookshelf_drawer.png new file mode 100644 index 00000000..73a873a4 Binary files /dev/null and b/public/textures/mcwbyg/florus_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/florus_lower_roof.png b/public/textures/mcwbyg/florus_lower_roof.png new file mode 100644 index 00000000..0ab99bd8 Binary files /dev/null and b/public/textures/mcwbyg/florus_lower_roof.png differ diff --git a/public/textures/mcwbyg/florus_lower_triple_drawer.png b/public/textures/mcwbyg/florus_lower_triple_drawer.png new file mode 100644 index 00000000..1393a65f Binary files /dev/null and b/public/textures/mcwbyg/florus_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/florus_modern_chair.png b/public/textures/mcwbyg/florus_modern_chair.png new file mode 100644 index 00000000..64e3bc46 Binary files /dev/null and b/public/textures/mcwbyg/florus_modern_chair.png differ diff --git a/public/textures/mcwbyg/florus_modern_desk.png b/public/textures/mcwbyg/florus_modern_desk.png new file mode 100644 index 00000000..24783808 Binary files /dev/null and b/public/textures/mcwbyg/florus_modern_desk.png differ diff --git a/public/textures/mcwbyg/florus_modern_door.png b/public/textures/mcwbyg/florus_modern_door.png new file mode 100644 index 00000000..de25d414 Binary files /dev/null and b/public/textures/mcwbyg/florus_modern_door.png differ diff --git a/public/textures/mcwbyg/florus_modern_wardrobe.png b/public/textures/mcwbyg/florus_modern_wardrobe.png new file mode 100644 index 00000000..c87d957e Binary files /dev/null and b/public/textures/mcwbyg/florus_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/florus_mystic_door.png b/public/textures/mcwbyg/florus_mystic_door.png new file mode 100644 index 00000000..479df49d Binary files /dev/null and b/public/textures/mcwbyg/florus_mystic_door.png differ diff --git a/public/textures/mcwbyg/florus_mystic_trapdoor.png b/public/textures/mcwbyg/florus_mystic_trapdoor.png new file mode 100644 index 00000000..cb364273 Binary files /dev/null and b/public/textures/mcwbyg/florus_mystic_trapdoor.png differ diff --git a/public/textures/mcwbyg/florus_nether_door.png b/public/textures/mcwbyg/florus_nether_door.png new file mode 100644 index 00000000..daecd184 Binary files /dev/null and b/public/textures/mcwbyg/florus_nether_door.png differ diff --git a/public/textures/mcwbyg/florus_pane_window.png b/public/textures/mcwbyg/florus_pane_window.png new file mode 100644 index 00000000..9be7585e Binary files /dev/null and b/public/textures/mcwbyg/florus_pane_window.png differ diff --git a/public/textures/mcwbyg/florus_paper_door.png b/public/textures/mcwbyg/florus_paper_door.png new file mode 100644 index 00000000..a90723d0 Binary files /dev/null and b/public/textures/mcwbyg/florus_paper_door.png differ diff --git a/public/textures/mcwbyg/florus_paper_trapdoor.png b/public/textures/mcwbyg/florus_paper_trapdoor.png new file mode 100644 index 00000000..5ed83a3b Binary files /dev/null and b/public/textures/mcwbyg/florus_paper_trapdoor.png differ diff --git a/public/textures/mcwbyg/florus_picket_fence.png b/public/textures/mcwbyg/florus_picket_fence.png new file mode 100644 index 00000000..b8ed9b20 Binary files /dev/null and b/public/textures/mcwbyg/florus_picket_fence.png differ diff --git a/public/textures/mcwbyg/florus_plank_four_window.png b/public/textures/mcwbyg/florus_plank_four_window.png new file mode 100644 index 00000000..ff090a3b Binary files /dev/null and b/public/textures/mcwbyg/florus_plank_four_window.png differ diff --git a/public/textures/mcwbyg/florus_plank_pane_window.png b/public/textures/mcwbyg/florus_plank_pane_window.png new file mode 100644 index 00000000..5d1a030f Binary files /dev/null and b/public/textures/mcwbyg/florus_plank_pane_window.png differ diff --git a/public/textures/mcwbyg/florus_plank_parapet.png b/public/textures/mcwbyg/florus_plank_parapet.png new file mode 100644 index 00000000..46bbda19 Binary files /dev/null and b/public/textures/mcwbyg/florus_plank_parapet.png differ diff --git a/public/textures/mcwbyg/florus_plank_window.png b/public/textures/mcwbyg/florus_plank_window.png new file mode 100644 index 00000000..92318b1d Binary files /dev/null and b/public/textures/mcwbyg/florus_plank_window.png differ diff --git a/public/textures/mcwbyg/florus_plank_window2.png b/public/textures/mcwbyg/florus_plank_window2.png new file mode 100644 index 00000000..23c7b74e Binary files /dev/null and b/public/textures/mcwbyg/florus_plank_window2.png differ diff --git a/public/textures/mcwbyg/florus_planks_attic_roof.png b/public/textures/mcwbyg/florus_planks_attic_roof.png new file mode 100644 index 00000000..a5fd6fd1 Binary files /dev/null and b/public/textures/mcwbyg/florus_planks_attic_roof.png differ diff --git a/public/textures/mcwbyg/florus_planks_lower_roof.png b/public/textures/mcwbyg/florus_planks_lower_roof.png new file mode 100644 index 00000000..c0a60153 Binary files /dev/null and b/public/textures/mcwbyg/florus_planks_lower_roof.png differ diff --git a/public/textures/mcwbyg/florus_planks_path.png b/public/textures/mcwbyg/florus_planks_path.png new file mode 100644 index 00000000..c72562f5 Binary files /dev/null and b/public/textures/mcwbyg/florus_planks_path.png differ diff --git a/public/textures/mcwbyg/florus_planks_roof.png b/public/textures/mcwbyg/florus_planks_roof.png new file mode 100644 index 00000000..b1ae43d0 Binary files /dev/null and b/public/textures/mcwbyg/florus_planks_roof.png differ diff --git a/public/textures/mcwbyg/florus_planks_steep_roof.png b/public/textures/mcwbyg/florus_planks_steep_roof.png new file mode 100644 index 00000000..268296ec Binary files /dev/null and b/public/textures/mcwbyg/florus_planks_steep_roof.png differ diff --git a/public/textures/mcwbyg/florus_planks_top_roof.png b/public/textures/mcwbyg/florus_planks_top_roof.png new file mode 100644 index 00000000..5d086dc0 Binary files /dev/null and b/public/textures/mcwbyg/florus_planks_top_roof.png differ diff --git a/public/textures/mcwbyg/florus_planks_upper_lower_roof.png b/public/textures/mcwbyg/florus_planks_upper_lower_roof.png new file mode 100644 index 00000000..1c155e98 Binary files /dev/null and b/public/textures/mcwbyg/florus_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/florus_planks_upper_steep_roof.png b/public/textures/mcwbyg/florus_planks_upper_steep_roof.png new file mode 100644 index 00000000..6407cf2e Binary files /dev/null and b/public/textures/mcwbyg/florus_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/florus_pyramid_gate.png b/public/textures/mcwbyg/florus_pyramid_gate.png new file mode 100644 index 00000000..7b8db41a Binary files /dev/null and b/public/textures/mcwbyg/florus_pyramid_gate.png differ diff --git a/public/textures/mcwbyg/florus_rail_bridge.png b/public/textures/mcwbyg/florus_rail_bridge.png new file mode 100644 index 00000000..a228567c Binary files /dev/null and b/public/textures/mcwbyg/florus_rail_bridge.png differ diff --git a/public/textures/mcwbyg/florus_ranch_trapdoor.png b/public/textures/mcwbyg/florus_ranch_trapdoor.png new file mode 100644 index 00000000..788f6b28 Binary files /dev/null and b/public/textures/mcwbyg/florus_ranch_trapdoor.png differ diff --git a/public/textures/mcwbyg/florus_roof.png b/public/textures/mcwbyg/florus_roof.png new file mode 100644 index 00000000..6fa65a47 Binary files /dev/null and b/public/textures/mcwbyg/florus_roof.png differ diff --git a/public/textures/mcwbyg/florus_rope_bridge_stair.png b/public/textures/mcwbyg/florus_rope_bridge_stair.png new file mode 100644 index 00000000..2ea460ff Binary files /dev/null and b/public/textures/mcwbyg/florus_rope_bridge_stair.png differ diff --git a/public/textures/mcwbyg/florus_shutter.png b/public/textures/mcwbyg/florus_shutter.png new file mode 100644 index 00000000..88dd467b Binary files /dev/null and b/public/textures/mcwbyg/florus_shutter.png differ diff --git a/public/textures/mcwbyg/florus_stable_door.png b/public/textures/mcwbyg/florus_stable_door.png new file mode 100644 index 00000000..336aca0e Binary files /dev/null and b/public/textures/mcwbyg/florus_stable_door.png differ diff --git a/public/textures/mcwbyg/florus_stable_head_door.png b/public/textures/mcwbyg/florus_stable_head_door.png new file mode 100644 index 00000000..43cedb00 Binary files /dev/null and b/public/textures/mcwbyg/florus_stable_head_door.png differ diff --git a/public/textures/mcwbyg/florus_steep_roof.png b/public/textures/mcwbyg/florus_steep_roof.png new file mode 100644 index 00000000..c219f905 Binary files /dev/null and b/public/textures/mcwbyg/florus_steep_roof.png differ diff --git a/public/textures/mcwbyg/florus_stockade_fence.png b/public/textures/mcwbyg/florus_stockade_fence.png new file mode 100644 index 00000000..abf1f592 Binary files /dev/null and b/public/textures/mcwbyg/florus_stockade_fence.png differ diff --git a/public/textures/mcwbyg/florus_stool_chair.png b/public/textures/mcwbyg/florus_stool_chair.png new file mode 100644 index 00000000..4f1d430b Binary files /dev/null and b/public/textures/mcwbyg/florus_stool_chair.png differ diff --git a/public/textures/mcwbyg/florus_striped_chair.png b/public/textures/mcwbyg/florus_striped_chair.png new file mode 100644 index 00000000..076203e8 Binary files /dev/null and b/public/textures/mcwbyg/florus_striped_chair.png differ diff --git a/public/textures/mcwbyg/florus_swamp_door.png b/public/textures/mcwbyg/florus_swamp_door.png new file mode 100644 index 00000000..16999a1b Binary files /dev/null and b/public/textures/mcwbyg/florus_swamp_door.png differ diff --git a/public/textures/mcwbyg/florus_swamp_trapdoor.png b/public/textures/mcwbyg/florus_swamp_trapdoor.png new file mode 100644 index 00000000..36f789ca Binary files /dev/null and b/public/textures/mcwbyg/florus_swamp_trapdoor.png differ diff --git a/public/textures/mcwbyg/florus_table.png b/public/textures/mcwbyg/florus_table.png new file mode 100644 index 00000000..58ff3292 Binary files /dev/null and b/public/textures/mcwbyg/florus_table.png differ diff --git a/public/textures/mcwbyg/florus_top_roof.png b/public/textures/mcwbyg/florus_top_roof.png new file mode 100644 index 00000000..eef36cbc Binary files /dev/null and b/public/textures/mcwbyg/florus_top_roof.png differ diff --git a/public/textures/mcwbyg/florus_triple_drawer.png b/public/textures/mcwbyg/florus_triple_drawer.png new file mode 100644 index 00000000..98a662da Binary files /dev/null and b/public/textures/mcwbyg/florus_triple_drawer.png differ diff --git a/public/textures/mcwbyg/florus_tropical_door.png b/public/textures/mcwbyg/florus_tropical_door.png new file mode 100644 index 00000000..c4372dd3 Binary files /dev/null and b/public/textures/mcwbyg/florus_tropical_door.png differ diff --git a/public/textures/mcwbyg/florus_tropical_trapdoor.png b/public/textures/mcwbyg/florus_tropical_trapdoor.png new file mode 100644 index 00000000..fb03079d Binary files /dev/null and b/public/textures/mcwbyg/florus_tropical_trapdoor.png differ diff --git a/public/textures/mcwbyg/florus_upper_lower_roof.png b/public/textures/mcwbyg/florus_upper_lower_roof.png new file mode 100644 index 00000000..4964e111 Binary files /dev/null and b/public/textures/mcwbyg/florus_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/florus_upper_steep_roof.png b/public/textures/mcwbyg/florus_upper_steep_roof.png new file mode 100644 index 00000000..821808e7 Binary files /dev/null and b/public/textures/mcwbyg/florus_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/florus_waffle_door.png b/public/textures/mcwbyg/florus_waffle_door.png new file mode 100644 index 00000000..ab8e9122 Binary files /dev/null and b/public/textures/mcwbyg/florus_waffle_door.png differ diff --git a/public/textures/mcwbyg/florus_wardrobe.png b/public/textures/mcwbyg/florus_wardrobe.png new file mode 100644 index 00000000..dae54d50 Binary files /dev/null and b/public/textures/mcwbyg/florus_wardrobe.png differ diff --git a/public/textures/mcwbyg/florus_western_door.png b/public/textures/mcwbyg/florus_western_door.png new file mode 100644 index 00000000..afbfe838 Binary files /dev/null and b/public/textures/mcwbyg/florus_western_door.png differ diff --git a/public/textures/mcwbyg/florus_whispering_door.png b/public/textures/mcwbyg/florus_whispering_door.png new file mode 100644 index 00000000..52362ef1 Binary files /dev/null and b/public/textures/mcwbyg/florus_whispering_door.png differ diff --git a/public/textures/mcwbyg/florus_whispering_trapdoor.png b/public/textures/mcwbyg/florus_whispering_trapdoor.png new file mode 100644 index 00000000..12609bad Binary files /dev/null and b/public/textures/mcwbyg/florus_whispering_trapdoor.png differ diff --git a/public/textures/mcwbyg/florus_window.png b/public/textures/mcwbyg/florus_window.png new file mode 100644 index 00000000..1a897123 Binary files /dev/null and b/public/textures/mcwbyg/florus_window.png differ diff --git a/public/textures/mcwbyg/florus_window2.png b/public/textures/mcwbyg/florus_window2.png new file mode 100644 index 00000000..d7483f1b Binary files /dev/null and b/public/textures/mcwbyg/florus_window2.png differ diff --git a/public/textures/mcwbyg/florus_wired_fence.png b/public/textures/mcwbyg/florus_wired_fence.png new file mode 100644 index 00000000..9d71f980 Binary files /dev/null and b/public/textures/mcwbyg/florus_wired_fence.png differ diff --git a/public/textures/mcwbyg/flowering_indigo_jacaranda_hedge.png b/public/textures/mcwbyg/flowering_indigo_jacaranda_hedge.png new file mode 100644 index 00000000..d6b777ca Binary files /dev/null and b/public/textures/mcwbyg/flowering_indigo_jacaranda_hedge.png differ diff --git a/public/textures/mcwbyg/flowering_ironwood_hedge.png b/public/textures/mcwbyg/flowering_ironwood_hedge.png new file mode 100644 index 00000000..907185cd Binary files /dev/null and b/public/textures/mcwbyg/flowering_ironwood_hedge.png differ diff --git a/public/textures/mcwbyg/flowering_jacaranda_hedge.png b/public/textures/mcwbyg/flowering_jacaranda_hedge.png new file mode 100644 index 00000000..6fcb1dbb Binary files /dev/null and b/public/textures/mcwbyg/flowering_jacaranda_hedge.png differ diff --git a/public/textures/mcwbyg/flowering_orchard_hedge.png b/public/textures/mcwbyg/flowering_orchard_hedge.png new file mode 100644 index 00000000..d68e6765 Binary files /dev/null and b/public/textures/mcwbyg/flowering_orchard_hedge.png differ diff --git a/public/textures/mcwbyg/flowering_palo_verde_hedge.png b/public/textures/mcwbyg/flowering_palo_verde_hedge.png new file mode 100644 index 00000000..93f8df91 Binary files /dev/null and b/public/textures/mcwbyg/flowering_palo_verde_hedge.png differ diff --git a/public/textures/mcwbyg/flowering_skyris_hedge.png b/public/textures/mcwbyg/flowering_skyris_hedge.png new file mode 100644 index 00000000..94f3508f Binary files /dev/null and b/public/textures/mcwbyg/flowering_skyris_hedge.png differ diff --git a/public/textures/mcwbyg/flowering_yucca_hedge.png b/public/textures/mcwbyg/flowering_yucca_hedge.png new file mode 100644 index 00000000..1b6d5914 Binary files /dev/null and b/public/textures/mcwbyg/flowering_yucca_hedge.png differ diff --git a/public/textures/mcwbyg/green_enchanted_attic_roof.png b/public/textures/mcwbyg/green_enchanted_attic_roof.png new file mode 100644 index 00000000..08d7c875 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_attic_roof.png differ diff --git a/public/textures/mcwbyg/green_enchanted_bamboo_door.png b/public/textures/mcwbyg/green_enchanted_bamboo_door.png new file mode 100644 index 00000000..1b7acfcd Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_bamboo_door.png differ diff --git a/public/textures/mcwbyg/green_enchanted_bamboo_trapdoor.png b/public/textures/mcwbyg/green_enchanted_bamboo_trapdoor.png new file mode 100644 index 00000000..9b40b40e Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_bamboo_trapdoor.png differ diff --git a/public/textures/mcwbyg/green_enchanted_bark_glass_door.png b/public/textures/mcwbyg/green_enchanted_bark_glass_door.png new file mode 100644 index 00000000..f1b242ad Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_bark_glass_door.png differ diff --git a/public/textures/mcwbyg/green_enchanted_bark_trapdoor.png b/public/textures/mcwbyg/green_enchanted_bark_trapdoor.png new file mode 100644 index 00000000..9ff56e80 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_bark_trapdoor.png differ diff --git a/public/textures/mcwbyg/green_enchanted_barn_door.png b/public/textures/mcwbyg/green_enchanted_barn_door.png new file mode 100644 index 00000000..373f62ab Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_barn_door.png differ diff --git a/public/textures/mcwbyg/green_enchanted_barn_glass_door.png b/public/textures/mcwbyg/green_enchanted_barn_glass_door.png new file mode 100644 index 00000000..e8977cfa Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_barn_glass_door.png differ diff --git a/public/textures/mcwbyg/green_enchanted_barn_trapdoor.png b/public/textures/mcwbyg/green_enchanted_barn_trapdoor.png new file mode 100644 index 00000000..1936bcea Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_barn_trapdoor.png differ diff --git a/public/textures/mcwbyg/green_enchanted_barred_trapdoor.png b/public/textures/mcwbyg/green_enchanted_barred_trapdoor.png new file mode 100644 index 00000000..57e5f4a8 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_barred_trapdoor.png differ diff --git a/public/textures/mcwbyg/green_enchanted_barrel_trapdoor.png b/public/textures/mcwbyg/green_enchanted_barrel_trapdoor.png new file mode 100644 index 00000000..2ae0edd1 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_barrel_trapdoor.png differ diff --git a/public/textures/mcwbyg/green_enchanted_beach_door.png b/public/textures/mcwbyg/green_enchanted_beach_door.png new file mode 100644 index 00000000..6ddc364a Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_beach_door.png differ diff --git a/public/textures/mcwbyg/green_enchanted_beach_trapdoor.png b/public/textures/mcwbyg/green_enchanted_beach_trapdoor.png new file mode 100644 index 00000000..68d9b743 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_beach_trapdoor.png differ diff --git a/public/textures/mcwbyg/green_enchanted_blinds.png b/public/textures/mcwbyg/green_enchanted_blinds.png new file mode 100644 index 00000000..5c60d17f Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_blinds.png differ diff --git a/public/textures/mcwbyg/green_enchanted_blossom_trapdoor.png b/public/textures/mcwbyg/green_enchanted_blossom_trapdoor.png new file mode 100644 index 00000000..61c40efd Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_blossom_trapdoor.png differ diff --git a/public/textures/mcwbyg/green_enchanted_bookshelf.png b/public/textures/mcwbyg/green_enchanted_bookshelf.png new file mode 100644 index 00000000..f1a7e9e2 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_bookshelf.png differ diff --git a/public/textures/mcwbyg/green_enchanted_bookshelf_cupboard.png b/public/textures/mcwbyg/green_enchanted_bookshelf_cupboard.png new file mode 100644 index 00000000..de9afdbd Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/green_enchanted_bookshelf_drawer.png b/public/textures/mcwbyg/green_enchanted_bookshelf_drawer.png new file mode 100644 index 00000000..92325f83 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/green_enchanted_bridge_pier.png b/public/textures/mcwbyg/green_enchanted_bridge_pier.png new file mode 100644 index 00000000..2ea34f0f Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_bridge_pier.png differ diff --git a/public/textures/mcwbyg/green_enchanted_chair.png b/public/textures/mcwbyg/green_enchanted_chair.png new file mode 100644 index 00000000..4d35a0ad Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_chair.png differ diff --git a/public/textures/mcwbyg/green_enchanted_classic_door.png b/public/textures/mcwbyg/green_enchanted_classic_door.png new file mode 100644 index 00000000..86292a8f Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_classic_door.png differ diff --git a/public/textures/mcwbyg/green_enchanted_classic_trapdoor.png b/public/textures/mcwbyg/green_enchanted_classic_trapdoor.png new file mode 100644 index 00000000..6311f85b Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_classic_trapdoor.png differ diff --git a/public/textures/mcwbyg/green_enchanted_coffee_table.png b/public/textures/mcwbyg/green_enchanted_coffee_table.png new file mode 100644 index 00000000..99224252 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_coffee_table.png differ diff --git a/public/textures/mcwbyg/green_enchanted_cottage_door.png b/public/textures/mcwbyg/green_enchanted_cottage_door.png new file mode 100644 index 00000000..da98bb64 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_cottage_door.png differ diff --git a/public/textures/mcwbyg/green_enchanted_cottage_trapdoor.png b/public/textures/mcwbyg/green_enchanted_cottage_trapdoor.png new file mode 100644 index 00000000..921389f2 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_cottage_trapdoor.png differ diff --git a/public/textures/mcwbyg/green_enchanted_counter.png b/public/textures/mcwbyg/green_enchanted_counter.png new file mode 100644 index 00000000..978e1a26 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_counter.png differ diff --git a/public/textures/mcwbyg/green_enchanted_covered_desk.png b/public/textures/mcwbyg/green_enchanted_covered_desk.png new file mode 100644 index 00000000..16a62039 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_covered_desk.png differ diff --git a/public/textures/mcwbyg/green_enchanted_cupboard_counter.png b/public/textures/mcwbyg/green_enchanted_cupboard_counter.png new file mode 100644 index 00000000..bf1fb44c Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/green_enchanted_curtain_rod.png b/public/textures/mcwbyg/green_enchanted_curtain_rod.png new file mode 100644 index 00000000..d48cb265 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_curtain_rod.png differ diff --git a/public/textures/mcwbyg/green_enchanted_curved_gate.png b/public/textures/mcwbyg/green_enchanted_curved_gate.png new file mode 100644 index 00000000..e95cbc1f Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_curved_gate.png differ diff --git a/public/textures/mcwbyg/green_enchanted_desk.png b/public/textures/mcwbyg/green_enchanted_desk.png new file mode 100644 index 00000000..ddf7955d Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_desk.png differ diff --git a/public/textures/mcwbyg/green_enchanted_double_drawer.png b/public/textures/mcwbyg/green_enchanted_double_drawer.png new file mode 100644 index 00000000..fc6899a1 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_double_drawer.png differ diff --git a/public/textures/mcwbyg/green_enchanted_double_drawer_counter.png b/public/textures/mcwbyg/green_enchanted_double_drawer_counter.png new file mode 100644 index 00000000..589feccd Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/green_enchanted_double_kitchen_cabinet.png b/public/textures/mcwbyg/green_enchanted_double_kitchen_cabinet.png new file mode 100644 index 00000000..af6a2da4 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/green_enchanted_double_wardrobe.png b/public/textures/mcwbyg/green_enchanted_double_wardrobe.png new file mode 100644 index 00000000..7a59bbf5 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/green_enchanted_drawer.png b/public/textures/mcwbyg/green_enchanted_drawer.png new file mode 100644 index 00000000..00850890 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_drawer.png differ diff --git a/public/textures/mcwbyg/green_enchanted_drawer_counter.png b/public/textures/mcwbyg/green_enchanted_drawer_counter.png new file mode 100644 index 00000000..c47b0542 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_drawer_counter.png differ diff --git a/public/textures/mcwbyg/green_enchanted_end_table.png b/public/textures/mcwbyg/green_enchanted_end_table.png new file mode 100644 index 00000000..363fe00e Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_end_table.png differ diff --git a/public/textures/mcwbyg/green_enchanted_four_panel_door.png b/public/textures/mcwbyg/green_enchanted_four_panel_door.png new file mode 100644 index 00000000..38159af5 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_four_panel_door.png differ diff --git a/public/textures/mcwbyg/green_enchanted_four_panel_trapdoor.png b/public/textures/mcwbyg/green_enchanted_four_panel_trapdoor.png new file mode 100644 index 00000000..22d52e33 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_four_panel_trapdoor.png differ diff --git a/public/textures/mcwbyg/green_enchanted_four_window.png b/public/textures/mcwbyg/green_enchanted_four_window.png new file mode 100644 index 00000000..84331201 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_four_window.png differ diff --git a/public/textures/mcwbyg/green_enchanted_glass_door.png b/public/textures/mcwbyg/green_enchanted_glass_door.png new file mode 100644 index 00000000..6a15011b Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_glass_door.png differ diff --git a/public/textures/mcwbyg/green_enchanted_glass_kitchen_cabinet.png b/public/textures/mcwbyg/green_enchanted_glass_kitchen_cabinet.png new file mode 100644 index 00000000..8430feb9 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/green_enchanted_glass_table.png b/public/textures/mcwbyg/green_enchanted_glass_table.png new file mode 100644 index 00000000..ed397396 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_glass_table.png differ diff --git a/public/textures/mcwbyg/green_enchanted_glass_trapdoor.png b/public/textures/mcwbyg/green_enchanted_glass_trapdoor.png new file mode 100644 index 00000000..35d26b03 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_glass_trapdoor.png differ diff --git a/public/textures/mcwbyg/green_enchanted_hedge.png b/public/textures/mcwbyg/green_enchanted_hedge.png new file mode 100644 index 00000000..44b2d1d9 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_hedge.png differ diff --git a/public/textures/mcwbyg/green_enchanted_highley_gate.png b/public/textures/mcwbyg/green_enchanted_highley_gate.png new file mode 100644 index 00000000..c75dcfb8 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_highley_gate.png differ diff --git a/public/textures/mcwbyg/green_enchanted_horse_fence.png b/public/textures/mcwbyg/green_enchanted_horse_fence.png new file mode 100644 index 00000000..7a6af0a0 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_horse_fence.png differ diff --git a/public/textures/mcwbyg/green_enchanted_japanese2_door.png b/public/textures/mcwbyg/green_enchanted_japanese2_door.png new file mode 100644 index 00000000..dda55a19 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_japanese2_door.png differ diff --git a/public/textures/mcwbyg/green_enchanted_japanese_door.png b/public/textures/mcwbyg/green_enchanted_japanese_door.png new file mode 100644 index 00000000..520539fd Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_japanese_door.png differ diff --git a/public/textures/mcwbyg/green_enchanted_kitchen_cabinet.png b/public/textures/mcwbyg/green_enchanted_kitchen_cabinet.png new file mode 100644 index 00000000..7a66c6a4 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/green_enchanted_large_drawer.png b/public/textures/mcwbyg/green_enchanted_large_drawer.png new file mode 100644 index 00000000..13e1f34c Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_large_drawer.png differ diff --git a/public/textures/mcwbyg/green_enchanted_log_bridge_middle.png b/public/textures/mcwbyg/green_enchanted_log_bridge_middle.png new file mode 100644 index 00000000..953362f0 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_log_bridge_middle.png differ diff --git a/public/textures/mcwbyg/green_enchanted_log_bridge_stair.png b/public/textures/mcwbyg/green_enchanted_log_bridge_stair.png new file mode 100644 index 00000000..54ca722d Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_log_bridge_stair.png differ diff --git a/public/textures/mcwbyg/green_enchanted_log_parapet.png b/public/textures/mcwbyg/green_enchanted_log_parapet.png new file mode 100644 index 00000000..ad436492 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_log_parapet.png differ diff --git a/public/textures/mcwbyg/green_enchanted_louvered_shutter.png b/public/textures/mcwbyg/green_enchanted_louvered_shutter.png new file mode 100644 index 00000000..958903f1 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_louvered_shutter.png differ diff --git a/public/textures/mcwbyg/green_enchanted_lower_bookshelf_drawer.png b/public/textures/mcwbyg/green_enchanted_lower_bookshelf_drawer.png new file mode 100644 index 00000000..8a59838d Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/green_enchanted_lower_roof.png b/public/textures/mcwbyg/green_enchanted_lower_roof.png new file mode 100644 index 00000000..e8c9cfef Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_lower_roof.png differ diff --git a/public/textures/mcwbyg/green_enchanted_lower_triple_drawer.png b/public/textures/mcwbyg/green_enchanted_lower_triple_drawer.png new file mode 100644 index 00000000..66af088b Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/green_enchanted_modern_chair.png b/public/textures/mcwbyg/green_enchanted_modern_chair.png new file mode 100644 index 00000000..b235fcba Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_modern_chair.png differ diff --git a/public/textures/mcwbyg/green_enchanted_modern_desk.png b/public/textures/mcwbyg/green_enchanted_modern_desk.png new file mode 100644 index 00000000..c2b6c372 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_modern_desk.png differ diff --git a/public/textures/mcwbyg/green_enchanted_modern_door.png b/public/textures/mcwbyg/green_enchanted_modern_door.png new file mode 100644 index 00000000..49a0864f Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_modern_door.png differ diff --git a/public/textures/mcwbyg/green_enchanted_modern_wardrobe.png b/public/textures/mcwbyg/green_enchanted_modern_wardrobe.png new file mode 100644 index 00000000..ad992b53 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/green_enchanted_mystic_door.png b/public/textures/mcwbyg/green_enchanted_mystic_door.png new file mode 100644 index 00000000..fbaa1222 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_mystic_door.png differ diff --git a/public/textures/mcwbyg/green_enchanted_mystic_trapdoor.png b/public/textures/mcwbyg/green_enchanted_mystic_trapdoor.png new file mode 100644 index 00000000..ffff954c Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_mystic_trapdoor.png differ diff --git a/public/textures/mcwbyg/green_enchanted_nether_door.png b/public/textures/mcwbyg/green_enchanted_nether_door.png new file mode 100644 index 00000000..3be1003c Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_nether_door.png differ diff --git a/public/textures/mcwbyg/green_enchanted_pane_window.png b/public/textures/mcwbyg/green_enchanted_pane_window.png new file mode 100644 index 00000000..e585984f Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_pane_window.png differ diff --git a/public/textures/mcwbyg/green_enchanted_paper_door.png b/public/textures/mcwbyg/green_enchanted_paper_door.png new file mode 100644 index 00000000..007352c5 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_paper_door.png differ diff --git a/public/textures/mcwbyg/green_enchanted_paper_trapdoor.png b/public/textures/mcwbyg/green_enchanted_paper_trapdoor.png new file mode 100644 index 00000000..e0b5385d Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_paper_trapdoor.png differ diff --git a/public/textures/mcwbyg/green_enchanted_picket_fence.png b/public/textures/mcwbyg/green_enchanted_picket_fence.png new file mode 100644 index 00000000..6f13ddf5 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_picket_fence.png differ diff --git a/public/textures/mcwbyg/green_enchanted_plank_four_window.png b/public/textures/mcwbyg/green_enchanted_plank_four_window.png new file mode 100644 index 00000000..c799173c Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_plank_four_window.png differ diff --git a/public/textures/mcwbyg/green_enchanted_plank_pane_window.png b/public/textures/mcwbyg/green_enchanted_plank_pane_window.png new file mode 100644 index 00000000..b5323cb4 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_plank_pane_window.png differ diff --git a/public/textures/mcwbyg/green_enchanted_plank_parapet.png b/public/textures/mcwbyg/green_enchanted_plank_parapet.png new file mode 100644 index 00000000..7915fc8d Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_plank_parapet.png differ diff --git a/public/textures/mcwbyg/green_enchanted_plank_window.png b/public/textures/mcwbyg/green_enchanted_plank_window.png new file mode 100644 index 00000000..eec7e678 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_plank_window.png differ diff --git a/public/textures/mcwbyg/green_enchanted_plank_window2.png b/public/textures/mcwbyg/green_enchanted_plank_window2.png new file mode 100644 index 00000000..e1b7a866 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_plank_window2.png differ diff --git a/public/textures/mcwbyg/green_enchanted_planks_attic_roof.png b/public/textures/mcwbyg/green_enchanted_planks_attic_roof.png new file mode 100644 index 00000000..bf3571a8 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_planks_attic_roof.png differ diff --git a/public/textures/mcwbyg/green_enchanted_planks_lower_roof.png b/public/textures/mcwbyg/green_enchanted_planks_lower_roof.png new file mode 100644 index 00000000..a2b171fd Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_planks_lower_roof.png differ diff --git a/public/textures/mcwbyg/green_enchanted_planks_path.png b/public/textures/mcwbyg/green_enchanted_planks_path.png new file mode 100644 index 00000000..19054da4 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_planks_path.png differ diff --git a/public/textures/mcwbyg/green_enchanted_planks_roof.png b/public/textures/mcwbyg/green_enchanted_planks_roof.png new file mode 100644 index 00000000..f90a74a0 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_planks_roof.png differ diff --git a/public/textures/mcwbyg/green_enchanted_planks_steep_roof.png b/public/textures/mcwbyg/green_enchanted_planks_steep_roof.png new file mode 100644 index 00000000..166042c0 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_planks_steep_roof.png differ diff --git a/public/textures/mcwbyg/green_enchanted_planks_top_roof.png b/public/textures/mcwbyg/green_enchanted_planks_top_roof.png new file mode 100644 index 00000000..26986cca Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_planks_top_roof.png differ diff --git a/public/textures/mcwbyg/green_enchanted_planks_upper_lower_roof.png b/public/textures/mcwbyg/green_enchanted_planks_upper_lower_roof.png new file mode 100644 index 00000000..b0aa7147 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/green_enchanted_planks_upper_steep_roof.png b/public/textures/mcwbyg/green_enchanted_planks_upper_steep_roof.png new file mode 100644 index 00000000..cd7b1e52 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/green_enchanted_pyramid_gate.png b/public/textures/mcwbyg/green_enchanted_pyramid_gate.png new file mode 100644 index 00000000..741d7c97 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_pyramid_gate.png differ diff --git a/public/textures/mcwbyg/green_enchanted_rail_bridge.png b/public/textures/mcwbyg/green_enchanted_rail_bridge.png new file mode 100644 index 00000000..81c2a675 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_rail_bridge.png differ diff --git a/public/textures/mcwbyg/green_enchanted_ranch_trapdoor.png b/public/textures/mcwbyg/green_enchanted_ranch_trapdoor.png new file mode 100644 index 00000000..553f6564 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_ranch_trapdoor.png differ diff --git a/public/textures/mcwbyg/green_enchanted_roof.png b/public/textures/mcwbyg/green_enchanted_roof.png new file mode 100644 index 00000000..d38db647 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_roof.png differ diff --git a/public/textures/mcwbyg/green_enchanted_rope_bridge_stair.png b/public/textures/mcwbyg/green_enchanted_rope_bridge_stair.png new file mode 100644 index 00000000..8f047be0 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_rope_bridge_stair.png differ diff --git a/public/textures/mcwbyg/green_enchanted_shutter.png b/public/textures/mcwbyg/green_enchanted_shutter.png new file mode 100644 index 00000000..41dc0efe Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_shutter.png differ diff --git a/public/textures/mcwbyg/green_enchanted_stable_door.png b/public/textures/mcwbyg/green_enchanted_stable_door.png new file mode 100644 index 00000000..67ccdf8c Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_stable_door.png differ diff --git a/public/textures/mcwbyg/green_enchanted_stable_head_door.png b/public/textures/mcwbyg/green_enchanted_stable_head_door.png new file mode 100644 index 00000000..43ddd901 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_stable_head_door.png differ diff --git a/public/textures/mcwbyg/green_enchanted_steep_roof.png b/public/textures/mcwbyg/green_enchanted_steep_roof.png new file mode 100644 index 00000000..60260c88 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_steep_roof.png differ diff --git a/public/textures/mcwbyg/green_enchanted_stockade_fence.png b/public/textures/mcwbyg/green_enchanted_stockade_fence.png new file mode 100644 index 00000000..47f74842 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_stockade_fence.png differ diff --git a/public/textures/mcwbyg/green_enchanted_stool_chair.png b/public/textures/mcwbyg/green_enchanted_stool_chair.png new file mode 100644 index 00000000..503acc48 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_stool_chair.png differ diff --git a/public/textures/mcwbyg/green_enchanted_striped_chair.png b/public/textures/mcwbyg/green_enchanted_striped_chair.png new file mode 100644 index 00000000..151fc28f Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_striped_chair.png differ diff --git a/public/textures/mcwbyg/green_enchanted_swamp_door.png b/public/textures/mcwbyg/green_enchanted_swamp_door.png new file mode 100644 index 00000000..2d677756 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_swamp_door.png differ diff --git a/public/textures/mcwbyg/green_enchanted_swamp_trapdoor.png b/public/textures/mcwbyg/green_enchanted_swamp_trapdoor.png new file mode 100644 index 00000000..94c866b1 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_swamp_trapdoor.png differ diff --git a/public/textures/mcwbyg/green_enchanted_table.png b/public/textures/mcwbyg/green_enchanted_table.png new file mode 100644 index 00000000..448b3384 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_table.png differ diff --git a/public/textures/mcwbyg/green_enchanted_top_roof.png b/public/textures/mcwbyg/green_enchanted_top_roof.png new file mode 100644 index 00000000..1d653cc7 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_top_roof.png differ diff --git a/public/textures/mcwbyg/green_enchanted_triple_drawer.png b/public/textures/mcwbyg/green_enchanted_triple_drawer.png new file mode 100644 index 00000000..870c94b8 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_triple_drawer.png differ diff --git a/public/textures/mcwbyg/green_enchanted_tropical_door.png b/public/textures/mcwbyg/green_enchanted_tropical_door.png new file mode 100644 index 00000000..14bff0ae Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_tropical_door.png differ diff --git a/public/textures/mcwbyg/green_enchanted_tropical_trapdoor.png b/public/textures/mcwbyg/green_enchanted_tropical_trapdoor.png new file mode 100644 index 00000000..a122eeff Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_tropical_trapdoor.png differ diff --git a/public/textures/mcwbyg/green_enchanted_upper_lower_roof.png b/public/textures/mcwbyg/green_enchanted_upper_lower_roof.png new file mode 100644 index 00000000..36c87901 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/green_enchanted_upper_steep_roof.png b/public/textures/mcwbyg/green_enchanted_upper_steep_roof.png new file mode 100644 index 00000000..0c6281c3 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/green_enchanted_waffle_door.png b/public/textures/mcwbyg/green_enchanted_waffle_door.png new file mode 100644 index 00000000..62c0bf18 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_waffle_door.png differ diff --git a/public/textures/mcwbyg/green_enchanted_wardrobe.png b/public/textures/mcwbyg/green_enchanted_wardrobe.png new file mode 100644 index 00000000..98865a43 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_wardrobe.png differ diff --git a/public/textures/mcwbyg/green_enchanted_western_door.png b/public/textures/mcwbyg/green_enchanted_western_door.png new file mode 100644 index 00000000..0fe50f40 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_western_door.png differ diff --git a/public/textures/mcwbyg/green_enchanted_whispering_door.png b/public/textures/mcwbyg/green_enchanted_whispering_door.png new file mode 100644 index 00000000..cb1395a3 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_whispering_door.png differ diff --git a/public/textures/mcwbyg/green_enchanted_whispering_trapdoor.png b/public/textures/mcwbyg/green_enchanted_whispering_trapdoor.png new file mode 100644 index 00000000..9c0bad46 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_whispering_trapdoor.png differ diff --git a/public/textures/mcwbyg/green_enchanted_window.png b/public/textures/mcwbyg/green_enchanted_window.png new file mode 100644 index 00000000..b97ec742 Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_window.png differ diff --git a/public/textures/mcwbyg/green_enchanted_window2.png b/public/textures/mcwbyg/green_enchanted_window2.png new file mode 100644 index 00000000..9ab0e94c Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_window2.png differ diff --git a/public/textures/mcwbyg/green_enchanted_wired_fence.png b/public/textures/mcwbyg/green_enchanted_wired_fence.png new file mode 100644 index 00000000..b398480f Binary files /dev/null and b/public/textures/mcwbyg/green_enchanted_wired_fence.png differ diff --git a/public/textures/mcwbyg/holly_attic_roof.png b/public/textures/mcwbyg/holly_attic_roof.png new file mode 100644 index 00000000..d0285f99 Binary files /dev/null and b/public/textures/mcwbyg/holly_attic_roof.png differ diff --git a/public/textures/mcwbyg/holly_bamboo_door.png b/public/textures/mcwbyg/holly_bamboo_door.png new file mode 100644 index 00000000..90016081 Binary files /dev/null and b/public/textures/mcwbyg/holly_bamboo_door.png differ diff --git a/public/textures/mcwbyg/holly_bamboo_trapdoor.png b/public/textures/mcwbyg/holly_bamboo_trapdoor.png new file mode 100644 index 00000000..2fe28bcb Binary files /dev/null and b/public/textures/mcwbyg/holly_bamboo_trapdoor.png differ diff --git a/public/textures/mcwbyg/holly_bark_glass_door.png b/public/textures/mcwbyg/holly_bark_glass_door.png new file mode 100644 index 00000000..9f87b25d Binary files /dev/null and b/public/textures/mcwbyg/holly_bark_glass_door.png differ diff --git a/public/textures/mcwbyg/holly_bark_trapdoor.png b/public/textures/mcwbyg/holly_bark_trapdoor.png new file mode 100644 index 00000000..7ecf2b0b Binary files /dev/null and b/public/textures/mcwbyg/holly_bark_trapdoor.png differ diff --git a/public/textures/mcwbyg/holly_barn_door.png b/public/textures/mcwbyg/holly_barn_door.png new file mode 100644 index 00000000..5793dcbb Binary files /dev/null and b/public/textures/mcwbyg/holly_barn_door.png differ diff --git a/public/textures/mcwbyg/holly_barn_glass_door.png b/public/textures/mcwbyg/holly_barn_glass_door.png new file mode 100644 index 00000000..46380c0c Binary files /dev/null and b/public/textures/mcwbyg/holly_barn_glass_door.png differ diff --git a/public/textures/mcwbyg/holly_barn_trapdoor.png b/public/textures/mcwbyg/holly_barn_trapdoor.png new file mode 100644 index 00000000..71c7d8e6 Binary files /dev/null and b/public/textures/mcwbyg/holly_barn_trapdoor.png differ diff --git a/public/textures/mcwbyg/holly_barred_trapdoor.png b/public/textures/mcwbyg/holly_barred_trapdoor.png new file mode 100644 index 00000000..80d1f302 Binary files /dev/null and b/public/textures/mcwbyg/holly_barred_trapdoor.png differ diff --git a/public/textures/mcwbyg/holly_barrel_trapdoor.png b/public/textures/mcwbyg/holly_barrel_trapdoor.png new file mode 100644 index 00000000..e6c0e78e Binary files /dev/null and b/public/textures/mcwbyg/holly_barrel_trapdoor.png differ diff --git a/public/textures/mcwbyg/holly_beach_door.png b/public/textures/mcwbyg/holly_beach_door.png new file mode 100644 index 00000000..59c8c78c Binary files /dev/null and b/public/textures/mcwbyg/holly_beach_door.png differ diff --git a/public/textures/mcwbyg/holly_beach_trapdoor.png b/public/textures/mcwbyg/holly_beach_trapdoor.png new file mode 100644 index 00000000..aaa65c3e Binary files /dev/null and b/public/textures/mcwbyg/holly_beach_trapdoor.png differ diff --git a/public/textures/mcwbyg/holly_blinds.png b/public/textures/mcwbyg/holly_blinds.png new file mode 100644 index 00000000..f3a04b96 Binary files /dev/null and b/public/textures/mcwbyg/holly_blinds.png differ diff --git a/public/textures/mcwbyg/holly_blossom_trapdoor.png b/public/textures/mcwbyg/holly_blossom_trapdoor.png new file mode 100644 index 00000000..51cb8924 Binary files /dev/null and b/public/textures/mcwbyg/holly_blossom_trapdoor.png differ diff --git a/public/textures/mcwbyg/holly_bookshelf.png b/public/textures/mcwbyg/holly_bookshelf.png new file mode 100644 index 00000000..53dca456 Binary files /dev/null and b/public/textures/mcwbyg/holly_bookshelf.png differ diff --git a/public/textures/mcwbyg/holly_bookshelf_cupboard.png b/public/textures/mcwbyg/holly_bookshelf_cupboard.png new file mode 100644 index 00000000..72b681d7 Binary files /dev/null and b/public/textures/mcwbyg/holly_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/holly_bookshelf_drawer.png b/public/textures/mcwbyg/holly_bookshelf_drawer.png new file mode 100644 index 00000000..5ea044c6 Binary files /dev/null and b/public/textures/mcwbyg/holly_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/holly_bridge_pier.png b/public/textures/mcwbyg/holly_bridge_pier.png new file mode 100644 index 00000000..5ec8af44 Binary files /dev/null and b/public/textures/mcwbyg/holly_bridge_pier.png differ diff --git a/public/textures/mcwbyg/holly_chair.png b/public/textures/mcwbyg/holly_chair.png new file mode 100644 index 00000000..f6df5143 Binary files /dev/null and b/public/textures/mcwbyg/holly_chair.png differ diff --git a/public/textures/mcwbyg/holly_classic_door.png b/public/textures/mcwbyg/holly_classic_door.png new file mode 100644 index 00000000..c67fb3f6 Binary files /dev/null and b/public/textures/mcwbyg/holly_classic_door.png differ diff --git a/public/textures/mcwbyg/holly_classic_trapdoor.png b/public/textures/mcwbyg/holly_classic_trapdoor.png new file mode 100644 index 00000000..a8d9bea2 Binary files /dev/null and b/public/textures/mcwbyg/holly_classic_trapdoor.png differ diff --git a/public/textures/mcwbyg/holly_coffee_table.png b/public/textures/mcwbyg/holly_coffee_table.png new file mode 100644 index 00000000..98ecc679 Binary files /dev/null and b/public/textures/mcwbyg/holly_coffee_table.png differ diff --git a/public/textures/mcwbyg/holly_cottage_door.png b/public/textures/mcwbyg/holly_cottage_door.png new file mode 100644 index 00000000..164db04a Binary files /dev/null and b/public/textures/mcwbyg/holly_cottage_door.png differ diff --git a/public/textures/mcwbyg/holly_cottage_trapdoor.png b/public/textures/mcwbyg/holly_cottage_trapdoor.png new file mode 100644 index 00000000..09652018 Binary files /dev/null and b/public/textures/mcwbyg/holly_cottage_trapdoor.png differ diff --git a/public/textures/mcwbyg/holly_counter.png b/public/textures/mcwbyg/holly_counter.png new file mode 100644 index 00000000..34daf18c Binary files /dev/null and b/public/textures/mcwbyg/holly_counter.png differ diff --git a/public/textures/mcwbyg/holly_covered_desk.png b/public/textures/mcwbyg/holly_covered_desk.png new file mode 100644 index 00000000..5d995eb8 Binary files /dev/null and b/public/textures/mcwbyg/holly_covered_desk.png differ diff --git a/public/textures/mcwbyg/holly_cupboard_counter.png b/public/textures/mcwbyg/holly_cupboard_counter.png new file mode 100644 index 00000000..507c5758 Binary files /dev/null and b/public/textures/mcwbyg/holly_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/holly_curtain_rod.png b/public/textures/mcwbyg/holly_curtain_rod.png new file mode 100644 index 00000000..70af22b3 Binary files /dev/null and b/public/textures/mcwbyg/holly_curtain_rod.png differ diff --git a/public/textures/mcwbyg/holly_curved_gate.png b/public/textures/mcwbyg/holly_curved_gate.png new file mode 100644 index 00000000..aebcccf0 Binary files /dev/null and b/public/textures/mcwbyg/holly_curved_gate.png differ diff --git a/public/textures/mcwbyg/holly_desk.png b/public/textures/mcwbyg/holly_desk.png new file mode 100644 index 00000000..934b92ea Binary files /dev/null and b/public/textures/mcwbyg/holly_desk.png differ diff --git a/public/textures/mcwbyg/holly_double_drawer.png b/public/textures/mcwbyg/holly_double_drawer.png new file mode 100644 index 00000000..72328609 Binary files /dev/null and b/public/textures/mcwbyg/holly_double_drawer.png differ diff --git a/public/textures/mcwbyg/holly_double_drawer_counter.png b/public/textures/mcwbyg/holly_double_drawer_counter.png new file mode 100644 index 00000000..e5773027 Binary files /dev/null and b/public/textures/mcwbyg/holly_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/holly_double_kitchen_cabinet.png b/public/textures/mcwbyg/holly_double_kitchen_cabinet.png new file mode 100644 index 00000000..865fab28 Binary files /dev/null and b/public/textures/mcwbyg/holly_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/holly_double_wardrobe.png b/public/textures/mcwbyg/holly_double_wardrobe.png new file mode 100644 index 00000000..2a70bc1c Binary files /dev/null and b/public/textures/mcwbyg/holly_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/holly_drawer.png b/public/textures/mcwbyg/holly_drawer.png new file mode 100644 index 00000000..63b30ba9 Binary files /dev/null and b/public/textures/mcwbyg/holly_drawer.png differ diff --git a/public/textures/mcwbyg/holly_drawer_counter.png b/public/textures/mcwbyg/holly_drawer_counter.png new file mode 100644 index 00000000..bfd05675 Binary files /dev/null and b/public/textures/mcwbyg/holly_drawer_counter.png differ diff --git a/public/textures/mcwbyg/holly_end_table.png b/public/textures/mcwbyg/holly_end_table.png new file mode 100644 index 00000000..d437c22a Binary files /dev/null and b/public/textures/mcwbyg/holly_end_table.png differ diff --git a/public/textures/mcwbyg/holly_four_panel_door.png b/public/textures/mcwbyg/holly_four_panel_door.png new file mode 100644 index 00000000..80df8c71 Binary files /dev/null and b/public/textures/mcwbyg/holly_four_panel_door.png differ diff --git a/public/textures/mcwbyg/holly_four_panel_trapdoor.png b/public/textures/mcwbyg/holly_four_panel_trapdoor.png new file mode 100644 index 00000000..f357c2ab Binary files /dev/null and b/public/textures/mcwbyg/holly_four_panel_trapdoor.png differ diff --git a/public/textures/mcwbyg/holly_four_window.png b/public/textures/mcwbyg/holly_four_window.png new file mode 100644 index 00000000..ec9de574 Binary files /dev/null and b/public/textures/mcwbyg/holly_four_window.png differ diff --git a/public/textures/mcwbyg/holly_glass_door.png b/public/textures/mcwbyg/holly_glass_door.png new file mode 100644 index 00000000..7818c26b Binary files /dev/null and b/public/textures/mcwbyg/holly_glass_door.png differ diff --git a/public/textures/mcwbyg/holly_glass_kitchen_cabinet.png b/public/textures/mcwbyg/holly_glass_kitchen_cabinet.png new file mode 100644 index 00000000..d62177a2 Binary files /dev/null and b/public/textures/mcwbyg/holly_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/holly_glass_table.png b/public/textures/mcwbyg/holly_glass_table.png new file mode 100644 index 00000000..605ea876 Binary files /dev/null and b/public/textures/mcwbyg/holly_glass_table.png differ diff --git a/public/textures/mcwbyg/holly_glass_trapdoor.png b/public/textures/mcwbyg/holly_glass_trapdoor.png new file mode 100644 index 00000000..ad553c3b Binary files /dev/null and b/public/textures/mcwbyg/holly_glass_trapdoor.png differ diff --git a/public/textures/mcwbyg/holly_hedge.png b/public/textures/mcwbyg/holly_hedge.png new file mode 100644 index 00000000..6f23b481 Binary files /dev/null and b/public/textures/mcwbyg/holly_hedge.png differ diff --git a/public/textures/mcwbyg/holly_highley_gate.png b/public/textures/mcwbyg/holly_highley_gate.png new file mode 100644 index 00000000..f461bd94 Binary files /dev/null and b/public/textures/mcwbyg/holly_highley_gate.png differ diff --git a/public/textures/mcwbyg/holly_horse_fence.png b/public/textures/mcwbyg/holly_horse_fence.png new file mode 100644 index 00000000..591cb757 Binary files /dev/null and b/public/textures/mcwbyg/holly_horse_fence.png differ diff --git a/public/textures/mcwbyg/holly_japanese2_door.png b/public/textures/mcwbyg/holly_japanese2_door.png new file mode 100644 index 00000000..700359ab Binary files /dev/null and b/public/textures/mcwbyg/holly_japanese2_door.png differ diff --git a/public/textures/mcwbyg/holly_japanese_door.png b/public/textures/mcwbyg/holly_japanese_door.png new file mode 100644 index 00000000..ddf44254 Binary files /dev/null and b/public/textures/mcwbyg/holly_japanese_door.png differ diff --git a/public/textures/mcwbyg/holly_kitchen_cabinet.png b/public/textures/mcwbyg/holly_kitchen_cabinet.png new file mode 100644 index 00000000..4f792471 Binary files /dev/null and b/public/textures/mcwbyg/holly_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/holly_large_drawer.png b/public/textures/mcwbyg/holly_large_drawer.png new file mode 100644 index 00000000..882ae6e8 Binary files /dev/null and b/public/textures/mcwbyg/holly_large_drawer.png differ diff --git a/public/textures/mcwbyg/holly_log_bridge_middle.png b/public/textures/mcwbyg/holly_log_bridge_middle.png new file mode 100644 index 00000000..47eada44 Binary files /dev/null and b/public/textures/mcwbyg/holly_log_bridge_middle.png differ diff --git a/public/textures/mcwbyg/holly_log_bridge_stair.png b/public/textures/mcwbyg/holly_log_bridge_stair.png new file mode 100644 index 00000000..5b4f4b4f Binary files /dev/null and b/public/textures/mcwbyg/holly_log_bridge_stair.png differ diff --git a/public/textures/mcwbyg/holly_log_parapet.png b/public/textures/mcwbyg/holly_log_parapet.png new file mode 100644 index 00000000..28e2f9f0 Binary files /dev/null and b/public/textures/mcwbyg/holly_log_parapet.png differ diff --git a/public/textures/mcwbyg/holly_louvered_shutter.png b/public/textures/mcwbyg/holly_louvered_shutter.png new file mode 100644 index 00000000..2053561b Binary files /dev/null and b/public/textures/mcwbyg/holly_louvered_shutter.png differ diff --git a/public/textures/mcwbyg/holly_lower_bookshelf_drawer.png b/public/textures/mcwbyg/holly_lower_bookshelf_drawer.png new file mode 100644 index 00000000..8afd55aa Binary files /dev/null and b/public/textures/mcwbyg/holly_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/holly_lower_roof.png b/public/textures/mcwbyg/holly_lower_roof.png new file mode 100644 index 00000000..7407e5dc Binary files /dev/null and b/public/textures/mcwbyg/holly_lower_roof.png differ diff --git a/public/textures/mcwbyg/holly_lower_triple_drawer.png b/public/textures/mcwbyg/holly_lower_triple_drawer.png new file mode 100644 index 00000000..beb1dcd9 Binary files /dev/null and b/public/textures/mcwbyg/holly_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/holly_modern_chair.png b/public/textures/mcwbyg/holly_modern_chair.png new file mode 100644 index 00000000..5c6348f5 Binary files /dev/null and b/public/textures/mcwbyg/holly_modern_chair.png differ diff --git a/public/textures/mcwbyg/holly_modern_desk.png b/public/textures/mcwbyg/holly_modern_desk.png new file mode 100644 index 00000000..8d7c2459 Binary files /dev/null and b/public/textures/mcwbyg/holly_modern_desk.png differ diff --git a/public/textures/mcwbyg/holly_modern_door.png b/public/textures/mcwbyg/holly_modern_door.png new file mode 100644 index 00000000..bcc2a96a Binary files /dev/null and b/public/textures/mcwbyg/holly_modern_door.png differ diff --git a/public/textures/mcwbyg/holly_modern_wardrobe.png b/public/textures/mcwbyg/holly_modern_wardrobe.png new file mode 100644 index 00000000..fa6cda16 Binary files /dev/null and b/public/textures/mcwbyg/holly_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/holly_mystic_door.png b/public/textures/mcwbyg/holly_mystic_door.png new file mode 100644 index 00000000..b7c9192e Binary files /dev/null and b/public/textures/mcwbyg/holly_mystic_door.png differ diff --git a/public/textures/mcwbyg/holly_mystic_trapdoor.png b/public/textures/mcwbyg/holly_mystic_trapdoor.png new file mode 100644 index 00000000..92e49f9e Binary files /dev/null and b/public/textures/mcwbyg/holly_mystic_trapdoor.png differ diff --git a/public/textures/mcwbyg/holly_nether_door.png b/public/textures/mcwbyg/holly_nether_door.png new file mode 100644 index 00000000..01047e22 Binary files /dev/null and b/public/textures/mcwbyg/holly_nether_door.png differ diff --git a/public/textures/mcwbyg/holly_pane_window.png b/public/textures/mcwbyg/holly_pane_window.png new file mode 100644 index 00000000..36b7d3ff Binary files /dev/null and b/public/textures/mcwbyg/holly_pane_window.png differ diff --git a/public/textures/mcwbyg/holly_paper_door.png b/public/textures/mcwbyg/holly_paper_door.png new file mode 100644 index 00000000..19b030ad Binary files /dev/null and b/public/textures/mcwbyg/holly_paper_door.png differ diff --git a/public/textures/mcwbyg/holly_paper_trapdoor.png b/public/textures/mcwbyg/holly_paper_trapdoor.png new file mode 100644 index 00000000..ef7bab74 Binary files /dev/null and b/public/textures/mcwbyg/holly_paper_trapdoor.png differ diff --git a/public/textures/mcwbyg/holly_picket_fence.png b/public/textures/mcwbyg/holly_picket_fence.png new file mode 100644 index 00000000..2b002078 Binary files /dev/null and b/public/textures/mcwbyg/holly_picket_fence.png differ diff --git a/public/textures/mcwbyg/holly_plank_four_window.png b/public/textures/mcwbyg/holly_plank_four_window.png new file mode 100644 index 00000000..61d7122d Binary files /dev/null and b/public/textures/mcwbyg/holly_plank_four_window.png differ diff --git a/public/textures/mcwbyg/holly_plank_pane_window.png b/public/textures/mcwbyg/holly_plank_pane_window.png new file mode 100644 index 00000000..29d44d1f Binary files /dev/null and b/public/textures/mcwbyg/holly_plank_pane_window.png differ diff --git a/public/textures/mcwbyg/holly_plank_parapet.png b/public/textures/mcwbyg/holly_plank_parapet.png new file mode 100644 index 00000000..75bcaa39 Binary files /dev/null and b/public/textures/mcwbyg/holly_plank_parapet.png differ diff --git a/public/textures/mcwbyg/holly_plank_window.png b/public/textures/mcwbyg/holly_plank_window.png new file mode 100644 index 00000000..70d09382 Binary files /dev/null and b/public/textures/mcwbyg/holly_plank_window.png differ diff --git a/public/textures/mcwbyg/holly_plank_window2.png b/public/textures/mcwbyg/holly_plank_window2.png new file mode 100644 index 00000000..260f23d2 Binary files /dev/null and b/public/textures/mcwbyg/holly_plank_window2.png differ diff --git a/public/textures/mcwbyg/holly_planks_attic_roof.png b/public/textures/mcwbyg/holly_planks_attic_roof.png new file mode 100644 index 00000000..daff5dd2 Binary files /dev/null and b/public/textures/mcwbyg/holly_planks_attic_roof.png differ diff --git a/public/textures/mcwbyg/holly_planks_lower_roof.png b/public/textures/mcwbyg/holly_planks_lower_roof.png new file mode 100644 index 00000000..719d027d Binary files /dev/null and b/public/textures/mcwbyg/holly_planks_lower_roof.png differ diff --git a/public/textures/mcwbyg/holly_planks_path.png b/public/textures/mcwbyg/holly_planks_path.png new file mode 100644 index 00000000..5937c97d Binary files /dev/null and b/public/textures/mcwbyg/holly_planks_path.png differ diff --git a/public/textures/mcwbyg/holly_planks_roof.png b/public/textures/mcwbyg/holly_planks_roof.png new file mode 100644 index 00000000..70f51bab Binary files /dev/null and b/public/textures/mcwbyg/holly_planks_roof.png differ diff --git a/public/textures/mcwbyg/holly_planks_steep_roof.png b/public/textures/mcwbyg/holly_planks_steep_roof.png new file mode 100644 index 00000000..927951c7 Binary files /dev/null and b/public/textures/mcwbyg/holly_planks_steep_roof.png differ diff --git a/public/textures/mcwbyg/holly_planks_top_roof.png b/public/textures/mcwbyg/holly_planks_top_roof.png new file mode 100644 index 00000000..a25e082e Binary files /dev/null and b/public/textures/mcwbyg/holly_planks_top_roof.png differ diff --git a/public/textures/mcwbyg/holly_planks_upper_lower_roof.png b/public/textures/mcwbyg/holly_planks_upper_lower_roof.png new file mode 100644 index 00000000..df69c139 Binary files /dev/null and b/public/textures/mcwbyg/holly_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/holly_planks_upper_steep_roof.png b/public/textures/mcwbyg/holly_planks_upper_steep_roof.png new file mode 100644 index 00000000..6e3cd672 Binary files /dev/null and b/public/textures/mcwbyg/holly_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/holly_pyramid_gate.png b/public/textures/mcwbyg/holly_pyramid_gate.png new file mode 100644 index 00000000..ec730f47 Binary files /dev/null and b/public/textures/mcwbyg/holly_pyramid_gate.png differ diff --git a/public/textures/mcwbyg/holly_rail_bridge.png b/public/textures/mcwbyg/holly_rail_bridge.png new file mode 100644 index 00000000..1ab08f59 Binary files /dev/null and b/public/textures/mcwbyg/holly_rail_bridge.png differ diff --git a/public/textures/mcwbyg/holly_ranch_trapdoor.png b/public/textures/mcwbyg/holly_ranch_trapdoor.png new file mode 100644 index 00000000..0f23bfeb Binary files /dev/null and b/public/textures/mcwbyg/holly_ranch_trapdoor.png differ diff --git a/public/textures/mcwbyg/holly_roof.png b/public/textures/mcwbyg/holly_roof.png new file mode 100644 index 00000000..c7df560f Binary files /dev/null and b/public/textures/mcwbyg/holly_roof.png differ diff --git a/public/textures/mcwbyg/holly_rope_bridge_stair.png b/public/textures/mcwbyg/holly_rope_bridge_stair.png new file mode 100644 index 00000000..b9ca60f9 Binary files /dev/null and b/public/textures/mcwbyg/holly_rope_bridge_stair.png differ diff --git a/public/textures/mcwbyg/holly_shutter.png b/public/textures/mcwbyg/holly_shutter.png new file mode 100644 index 00000000..c7713ad4 Binary files /dev/null and b/public/textures/mcwbyg/holly_shutter.png differ diff --git a/public/textures/mcwbyg/holly_stable_door.png b/public/textures/mcwbyg/holly_stable_door.png new file mode 100644 index 00000000..c4a6d626 Binary files /dev/null and b/public/textures/mcwbyg/holly_stable_door.png differ diff --git a/public/textures/mcwbyg/holly_stable_head_door.png b/public/textures/mcwbyg/holly_stable_head_door.png new file mode 100644 index 00000000..9c4dd322 Binary files /dev/null and b/public/textures/mcwbyg/holly_stable_head_door.png differ diff --git a/public/textures/mcwbyg/holly_steep_roof.png b/public/textures/mcwbyg/holly_steep_roof.png new file mode 100644 index 00000000..1185d41d Binary files /dev/null and b/public/textures/mcwbyg/holly_steep_roof.png differ diff --git a/public/textures/mcwbyg/holly_stockade_fence.png b/public/textures/mcwbyg/holly_stockade_fence.png new file mode 100644 index 00000000..e520c9d0 Binary files /dev/null and b/public/textures/mcwbyg/holly_stockade_fence.png differ diff --git a/public/textures/mcwbyg/holly_stool_chair.png b/public/textures/mcwbyg/holly_stool_chair.png new file mode 100644 index 00000000..198431eb Binary files /dev/null and b/public/textures/mcwbyg/holly_stool_chair.png differ diff --git a/public/textures/mcwbyg/holly_striped_chair.png b/public/textures/mcwbyg/holly_striped_chair.png new file mode 100644 index 00000000..d95eb38c Binary files /dev/null and b/public/textures/mcwbyg/holly_striped_chair.png differ diff --git a/public/textures/mcwbyg/holly_swamp_door.png b/public/textures/mcwbyg/holly_swamp_door.png new file mode 100644 index 00000000..91acb73a Binary files /dev/null and b/public/textures/mcwbyg/holly_swamp_door.png differ diff --git a/public/textures/mcwbyg/holly_swamp_trapdoor.png b/public/textures/mcwbyg/holly_swamp_trapdoor.png new file mode 100644 index 00000000..9a098f69 Binary files /dev/null and b/public/textures/mcwbyg/holly_swamp_trapdoor.png differ diff --git a/public/textures/mcwbyg/holly_table.png b/public/textures/mcwbyg/holly_table.png new file mode 100644 index 00000000..1c2cb93f Binary files /dev/null and b/public/textures/mcwbyg/holly_table.png differ diff --git a/public/textures/mcwbyg/holly_top_roof.png b/public/textures/mcwbyg/holly_top_roof.png new file mode 100644 index 00000000..fd301cc6 Binary files /dev/null and b/public/textures/mcwbyg/holly_top_roof.png differ diff --git a/public/textures/mcwbyg/holly_triple_drawer.png b/public/textures/mcwbyg/holly_triple_drawer.png new file mode 100644 index 00000000..67803f33 Binary files /dev/null and b/public/textures/mcwbyg/holly_triple_drawer.png differ diff --git a/public/textures/mcwbyg/holly_tropical_door.png b/public/textures/mcwbyg/holly_tropical_door.png new file mode 100644 index 00000000..6bf36091 Binary files /dev/null and b/public/textures/mcwbyg/holly_tropical_door.png differ diff --git a/public/textures/mcwbyg/holly_tropical_trapdoor.png b/public/textures/mcwbyg/holly_tropical_trapdoor.png new file mode 100644 index 00000000..455ef5be Binary files /dev/null and b/public/textures/mcwbyg/holly_tropical_trapdoor.png differ diff --git a/public/textures/mcwbyg/holly_upper_lower_roof.png b/public/textures/mcwbyg/holly_upper_lower_roof.png new file mode 100644 index 00000000..40777cf0 Binary files /dev/null and b/public/textures/mcwbyg/holly_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/holly_upper_steep_roof.png b/public/textures/mcwbyg/holly_upper_steep_roof.png new file mode 100644 index 00000000..52dd2580 Binary files /dev/null and b/public/textures/mcwbyg/holly_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/holly_waffle_door.png b/public/textures/mcwbyg/holly_waffle_door.png new file mode 100644 index 00000000..0fccec36 Binary files /dev/null and b/public/textures/mcwbyg/holly_waffle_door.png differ diff --git a/public/textures/mcwbyg/holly_wardrobe.png b/public/textures/mcwbyg/holly_wardrobe.png new file mode 100644 index 00000000..a64e0829 Binary files /dev/null and b/public/textures/mcwbyg/holly_wardrobe.png differ diff --git a/public/textures/mcwbyg/holly_western_door.png b/public/textures/mcwbyg/holly_western_door.png new file mode 100644 index 00000000..77e82b30 Binary files /dev/null and b/public/textures/mcwbyg/holly_western_door.png differ diff --git a/public/textures/mcwbyg/holly_whispering_door.png b/public/textures/mcwbyg/holly_whispering_door.png new file mode 100644 index 00000000..1a01f94a Binary files /dev/null and b/public/textures/mcwbyg/holly_whispering_door.png differ diff --git a/public/textures/mcwbyg/holly_whispering_trapdoor.png b/public/textures/mcwbyg/holly_whispering_trapdoor.png new file mode 100644 index 00000000..68deffcb Binary files /dev/null and b/public/textures/mcwbyg/holly_whispering_trapdoor.png differ diff --git a/public/textures/mcwbyg/holly_window.png b/public/textures/mcwbyg/holly_window.png new file mode 100644 index 00000000..044f8eda Binary files /dev/null and b/public/textures/mcwbyg/holly_window.png differ diff --git a/public/textures/mcwbyg/holly_window2.png b/public/textures/mcwbyg/holly_window2.png new file mode 100644 index 00000000..1896ed16 Binary files /dev/null and b/public/textures/mcwbyg/holly_window2.png differ diff --git a/public/textures/mcwbyg/holly_wired_fence.png b/public/textures/mcwbyg/holly_wired_fence.png new file mode 100644 index 00000000..7f669fa0 Binary files /dev/null and b/public/textures/mcwbyg/holly_wired_fence.png differ diff --git a/public/textures/mcwbyg/ironwood_attic_roof.png b/public/textures/mcwbyg/ironwood_attic_roof.png new file mode 100644 index 00000000..549e217d Binary files /dev/null and b/public/textures/mcwbyg/ironwood_attic_roof.png differ diff --git a/public/textures/mcwbyg/ironwood_bamboo_door.png b/public/textures/mcwbyg/ironwood_bamboo_door.png new file mode 100644 index 00000000..912204b9 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_bamboo_door.png differ diff --git a/public/textures/mcwbyg/ironwood_bamboo_trapdoor.png b/public/textures/mcwbyg/ironwood_bamboo_trapdoor.png new file mode 100644 index 00000000..0051c18c Binary files /dev/null and b/public/textures/mcwbyg/ironwood_bamboo_trapdoor.png differ diff --git a/public/textures/mcwbyg/ironwood_bark_glass_door.png b/public/textures/mcwbyg/ironwood_bark_glass_door.png new file mode 100644 index 00000000..8a7f636a Binary files /dev/null and b/public/textures/mcwbyg/ironwood_bark_glass_door.png differ diff --git a/public/textures/mcwbyg/ironwood_bark_trapdoor.png b/public/textures/mcwbyg/ironwood_bark_trapdoor.png new file mode 100644 index 00000000..e9879ec4 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_bark_trapdoor.png differ diff --git a/public/textures/mcwbyg/ironwood_barn_door.png b/public/textures/mcwbyg/ironwood_barn_door.png new file mode 100644 index 00000000..0c2dd0d3 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_barn_door.png differ diff --git a/public/textures/mcwbyg/ironwood_barn_glass_door.png b/public/textures/mcwbyg/ironwood_barn_glass_door.png new file mode 100644 index 00000000..6bca5dda Binary files /dev/null and b/public/textures/mcwbyg/ironwood_barn_glass_door.png differ diff --git a/public/textures/mcwbyg/ironwood_barn_trapdoor.png b/public/textures/mcwbyg/ironwood_barn_trapdoor.png new file mode 100644 index 00000000..1efc21b1 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_barn_trapdoor.png differ diff --git a/public/textures/mcwbyg/ironwood_barred_trapdoor.png b/public/textures/mcwbyg/ironwood_barred_trapdoor.png new file mode 100644 index 00000000..3c7757c7 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_barred_trapdoor.png differ diff --git a/public/textures/mcwbyg/ironwood_barrel_trapdoor.png b/public/textures/mcwbyg/ironwood_barrel_trapdoor.png new file mode 100644 index 00000000..e0b48e86 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_barrel_trapdoor.png differ diff --git a/public/textures/mcwbyg/ironwood_beach_door.png b/public/textures/mcwbyg/ironwood_beach_door.png new file mode 100644 index 00000000..b4d2a9da Binary files /dev/null and b/public/textures/mcwbyg/ironwood_beach_door.png differ diff --git a/public/textures/mcwbyg/ironwood_beach_trapdoor.png b/public/textures/mcwbyg/ironwood_beach_trapdoor.png new file mode 100644 index 00000000..4d10ed6a Binary files /dev/null and b/public/textures/mcwbyg/ironwood_beach_trapdoor.png differ diff --git a/public/textures/mcwbyg/ironwood_blinds.png b/public/textures/mcwbyg/ironwood_blinds.png new file mode 100644 index 00000000..c996b861 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_blinds.png differ diff --git a/public/textures/mcwbyg/ironwood_blossom_trapdoor.png b/public/textures/mcwbyg/ironwood_blossom_trapdoor.png new file mode 100644 index 00000000..98cf9bb3 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_blossom_trapdoor.png differ diff --git a/public/textures/mcwbyg/ironwood_bookshelf.png b/public/textures/mcwbyg/ironwood_bookshelf.png new file mode 100644 index 00000000..ae8e99e4 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_bookshelf.png differ diff --git a/public/textures/mcwbyg/ironwood_bookshelf_cupboard.png b/public/textures/mcwbyg/ironwood_bookshelf_cupboard.png new file mode 100644 index 00000000..f49cf0c8 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/ironwood_bookshelf_drawer.png b/public/textures/mcwbyg/ironwood_bookshelf_drawer.png new file mode 100644 index 00000000..b188a7af Binary files /dev/null and b/public/textures/mcwbyg/ironwood_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/ironwood_bridge_pier.png b/public/textures/mcwbyg/ironwood_bridge_pier.png new file mode 100644 index 00000000..a4868b4a Binary files /dev/null and b/public/textures/mcwbyg/ironwood_bridge_pier.png differ diff --git a/public/textures/mcwbyg/ironwood_chair.png b/public/textures/mcwbyg/ironwood_chair.png new file mode 100644 index 00000000..0879360f Binary files /dev/null and b/public/textures/mcwbyg/ironwood_chair.png differ diff --git a/public/textures/mcwbyg/ironwood_classic_door.png b/public/textures/mcwbyg/ironwood_classic_door.png new file mode 100644 index 00000000..641b224a Binary files /dev/null and b/public/textures/mcwbyg/ironwood_classic_door.png differ diff --git a/public/textures/mcwbyg/ironwood_classic_trapdoor.png b/public/textures/mcwbyg/ironwood_classic_trapdoor.png new file mode 100644 index 00000000..10cca2f9 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_classic_trapdoor.png differ diff --git a/public/textures/mcwbyg/ironwood_coffee_table.png b/public/textures/mcwbyg/ironwood_coffee_table.png new file mode 100644 index 00000000..3b0f534e Binary files /dev/null and b/public/textures/mcwbyg/ironwood_coffee_table.png differ diff --git a/public/textures/mcwbyg/ironwood_cottage_door.png b/public/textures/mcwbyg/ironwood_cottage_door.png new file mode 100644 index 00000000..3c679ba0 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_cottage_door.png differ diff --git a/public/textures/mcwbyg/ironwood_cottage_trapdoor.png b/public/textures/mcwbyg/ironwood_cottage_trapdoor.png new file mode 100644 index 00000000..866bf9a8 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_cottage_trapdoor.png differ diff --git a/public/textures/mcwbyg/ironwood_counter.png b/public/textures/mcwbyg/ironwood_counter.png new file mode 100644 index 00000000..5dd03b74 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_counter.png differ diff --git a/public/textures/mcwbyg/ironwood_covered_desk.png b/public/textures/mcwbyg/ironwood_covered_desk.png new file mode 100644 index 00000000..bd1e1210 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_covered_desk.png differ diff --git a/public/textures/mcwbyg/ironwood_cupboard_counter.png b/public/textures/mcwbyg/ironwood_cupboard_counter.png new file mode 100644 index 00000000..823cb66e Binary files /dev/null and b/public/textures/mcwbyg/ironwood_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/ironwood_curtain_rod.png b/public/textures/mcwbyg/ironwood_curtain_rod.png new file mode 100644 index 00000000..90b95c94 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_curtain_rod.png differ diff --git a/public/textures/mcwbyg/ironwood_curved_gate.png b/public/textures/mcwbyg/ironwood_curved_gate.png new file mode 100644 index 00000000..cfbde389 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_curved_gate.png differ diff --git a/public/textures/mcwbyg/ironwood_desk.png b/public/textures/mcwbyg/ironwood_desk.png new file mode 100644 index 00000000..d5ea9dda Binary files /dev/null and b/public/textures/mcwbyg/ironwood_desk.png differ diff --git a/public/textures/mcwbyg/ironwood_double_drawer.png b/public/textures/mcwbyg/ironwood_double_drawer.png new file mode 100644 index 00000000..5f1a329a Binary files /dev/null and b/public/textures/mcwbyg/ironwood_double_drawer.png differ diff --git a/public/textures/mcwbyg/ironwood_double_drawer_counter.png b/public/textures/mcwbyg/ironwood_double_drawer_counter.png new file mode 100644 index 00000000..f4f48ae8 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/ironwood_double_kitchen_cabinet.png b/public/textures/mcwbyg/ironwood_double_kitchen_cabinet.png new file mode 100644 index 00000000..4ee283ea Binary files /dev/null and b/public/textures/mcwbyg/ironwood_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/ironwood_double_wardrobe.png b/public/textures/mcwbyg/ironwood_double_wardrobe.png new file mode 100644 index 00000000..09bbced3 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/ironwood_drawer.png b/public/textures/mcwbyg/ironwood_drawer.png new file mode 100644 index 00000000..4f286381 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_drawer.png differ diff --git a/public/textures/mcwbyg/ironwood_drawer_counter.png b/public/textures/mcwbyg/ironwood_drawer_counter.png new file mode 100644 index 00000000..38a4a437 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_drawer_counter.png differ diff --git a/public/textures/mcwbyg/ironwood_end_table.png b/public/textures/mcwbyg/ironwood_end_table.png new file mode 100644 index 00000000..cf8acf75 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_end_table.png differ diff --git a/public/textures/mcwbyg/ironwood_four_panel_door.png b/public/textures/mcwbyg/ironwood_four_panel_door.png new file mode 100644 index 00000000..88407ae0 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_four_panel_door.png differ diff --git a/public/textures/mcwbyg/ironwood_four_panel_trapdoor.png b/public/textures/mcwbyg/ironwood_four_panel_trapdoor.png new file mode 100644 index 00000000..d3641c56 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_four_panel_trapdoor.png differ diff --git a/public/textures/mcwbyg/ironwood_four_window.png b/public/textures/mcwbyg/ironwood_four_window.png new file mode 100644 index 00000000..0940da08 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_four_window.png differ diff --git a/public/textures/mcwbyg/ironwood_glass_door.png b/public/textures/mcwbyg/ironwood_glass_door.png new file mode 100644 index 00000000..de1ca627 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_glass_door.png differ diff --git a/public/textures/mcwbyg/ironwood_glass_kitchen_cabinet.png b/public/textures/mcwbyg/ironwood_glass_kitchen_cabinet.png new file mode 100644 index 00000000..341779be Binary files /dev/null and b/public/textures/mcwbyg/ironwood_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/ironwood_glass_table.png b/public/textures/mcwbyg/ironwood_glass_table.png new file mode 100644 index 00000000..84fcfea7 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_glass_table.png differ diff --git a/public/textures/mcwbyg/ironwood_glass_trapdoor.png b/public/textures/mcwbyg/ironwood_glass_trapdoor.png new file mode 100644 index 00000000..7e2c05c9 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_glass_trapdoor.png differ diff --git a/public/textures/mcwbyg/ironwood_hedge.png b/public/textures/mcwbyg/ironwood_hedge.png new file mode 100644 index 00000000..8f8f7c08 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_hedge.png differ diff --git a/public/textures/mcwbyg/ironwood_highley_gate.png b/public/textures/mcwbyg/ironwood_highley_gate.png new file mode 100644 index 00000000..68316d52 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_highley_gate.png differ diff --git a/public/textures/mcwbyg/ironwood_horse_fence.png b/public/textures/mcwbyg/ironwood_horse_fence.png new file mode 100644 index 00000000..77d97837 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_horse_fence.png differ diff --git a/public/textures/mcwbyg/ironwood_japanese2_door.png b/public/textures/mcwbyg/ironwood_japanese2_door.png new file mode 100644 index 00000000..31d6507f Binary files /dev/null and b/public/textures/mcwbyg/ironwood_japanese2_door.png differ diff --git a/public/textures/mcwbyg/ironwood_japanese_door.png b/public/textures/mcwbyg/ironwood_japanese_door.png new file mode 100644 index 00000000..d05ee724 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_japanese_door.png differ diff --git a/public/textures/mcwbyg/ironwood_kitchen_cabinet.png b/public/textures/mcwbyg/ironwood_kitchen_cabinet.png new file mode 100644 index 00000000..c4866256 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/ironwood_large_drawer.png b/public/textures/mcwbyg/ironwood_large_drawer.png new file mode 100644 index 00000000..babc17a5 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_large_drawer.png differ diff --git a/public/textures/mcwbyg/ironwood_log_bridge_middle.png b/public/textures/mcwbyg/ironwood_log_bridge_middle.png new file mode 100644 index 00000000..bfe5145e Binary files /dev/null and b/public/textures/mcwbyg/ironwood_log_bridge_middle.png differ diff --git a/public/textures/mcwbyg/ironwood_log_bridge_stair.png b/public/textures/mcwbyg/ironwood_log_bridge_stair.png new file mode 100644 index 00000000..cef7fadc Binary files /dev/null and b/public/textures/mcwbyg/ironwood_log_bridge_stair.png differ diff --git a/public/textures/mcwbyg/ironwood_log_parapet.png b/public/textures/mcwbyg/ironwood_log_parapet.png new file mode 100644 index 00000000..ad832a2d Binary files /dev/null and b/public/textures/mcwbyg/ironwood_log_parapet.png differ diff --git a/public/textures/mcwbyg/ironwood_louvered_shutter.png b/public/textures/mcwbyg/ironwood_louvered_shutter.png new file mode 100644 index 00000000..1c0b3670 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_louvered_shutter.png differ diff --git a/public/textures/mcwbyg/ironwood_lower_bookshelf_drawer.png b/public/textures/mcwbyg/ironwood_lower_bookshelf_drawer.png new file mode 100644 index 00000000..24d7d980 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/ironwood_lower_roof.png b/public/textures/mcwbyg/ironwood_lower_roof.png new file mode 100644 index 00000000..51351c9c Binary files /dev/null and b/public/textures/mcwbyg/ironwood_lower_roof.png differ diff --git a/public/textures/mcwbyg/ironwood_lower_triple_drawer.png b/public/textures/mcwbyg/ironwood_lower_triple_drawer.png new file mode 100644 index 00000000..fd0e2592 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/ironwood_modern_chair.png b/public/textures/mcwbyg/ironwood_modern_chair.png new file mode 100644 index 00000000..95feebb1 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_modern_chair.png differ diff --git a/public/textures/mcwbyg/ironwood_modern_desk.png b/public/textures/mcwbyg/ironwood_modern_desk.png new file mode 100644 index 00000000..e962e1fd Binary files /dev/null and b/public/textures/mcwbyg/ironwood_modern_desk.png differ diff --git a/public/textures/mcwbyg/ironwood_modern_door.png b/public/textures/mcwbyg/ironwood_modern_door.png new file mode 100644 index 00000000..3a09c961 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_modern_door.png differ diff --git a/public/textures/mcwbyg/ironwood_modern_wardrobe.png b/public/textures/mcwbyg/ironwood_modern_wardrobe.png new file mode 100644 index 00000000..b7079b25 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/ironwood_mystic_door.png b/public/textures/mcwbyg/ironwood_mystic_door.png new file mode 100644 index 00000000..c0a66fd7 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_mystic_door.png differ diff --git a/public/textures/mcwbyg/ironwood_mystic_trapdoor.png b/public/textures/mcwbyg/ironwood_mystic_trapdoor.png new file mode 100644 index 00000000..fbddffb6 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_mystic_trapdoor.png differ diff --git a/public/textures/mcwbyg/ironwood_nether_door.png b/public/textures/mcwbyg/ironwood_nether_door.png new file mode 100644 index 00000000..1baf7bb9 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_nether_door.png differ diff --git a/public/textures/mcwbyg/ironwood_pane_window.png b/public/textures/mcwbyg/ironwood_pane_window.png new file mode 100644 index 00000000..24d880e4 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_pane_window.png differ diff --git a/public/textures/mcwbyg/ironwood_paper_door.png b/public/textures/mcwbyg/ironwood_paper_door.png new file mode 100644 index 00000000..6f9c0aed Binary files /dev/null and b/public/textures/mcwbyg/ironwood_paper_door.png differ diff --git a/public/textures/mcwbyg/ironwood_paper_trapdoor.png b/public/textures/mcwbyg/ironwood_paper_trapdoor.png new file mode 100644 index 00000000..cdf16cd1 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_paper_trapdoor.png differ diff --git a/public/textures/mcwbyg/ironwood_picket_fence.png b/public/textures/mcwbyg/ironwood_picket_fence.png new file mode 100644 index 00000000..c60cd114 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_picket_fence.png differ diff --git a/public/textures/mcwbyg/ironwood_plank_four_window.png b/public/textures/mcwbyg/ironwood_plank_four_window.png new file mode 100644 index 00000000..d57459aa Binary files /dev/null and b/public/textures/mcwbyg/ironwood_plank_four_window.png differ diff --git a/public/textures/mcwbyg/ironwood_plank_pane_window.png b/public/textures/mcwbyg/ironwood_plank_pane_window.png new file mode 100644 index 00000000..de95d30d Binary files /dev/null and b/public/textures/mcwbyg/ironwood_plank_pane_window.png differ diff --git a/public/textures/mcwbyg/ironwood_plank_parapet.png b/public/textures/mcwbyg/ironwood_plank_parapet.png new file mode 100644 index 00000000..36842a1b Binary files /dev/null and b/public/textures/mcwbyg/ironwood_plank_parapet.png differ diff --git a/public/textures/mcwbyg/ironwood_plank_window.png b/public/textures/mcwbyg/ironwood_plank_window.png new file mode 100644 index 00000000..03a4f742 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_plank_window.png differ diff --git a/public/textures/mcwbyg/ironwood_plank_window2.png b/public/textures/mcwbyg/ironwood_plank_window2.png new file mode 100644 index 00000000..5b8b4767 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_plank_window2.png differ diff --git a/public/textures/mcwbyg/ironwood_planks_attic_roof.png b/public/textures/mcwbyg/ironwood_planks_attic_roof.png new file mode 100644 index 00000000..da45d53b Binary files /dev/null and b/public/textures/mcwbyg/ironwood_planks_attic_roof.png differ diff --git a/public/textures/mcwbyg/ironwood_planks_lower_roof.png b/public/textures/mcwbyg/ironwood_planks_lower_roof.png new file mode 100644 index 00000000..77ad17d4 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_planks_lower_roof.png differ diff --git a/public/textures/mcwbyg/ironwood_planks_path.png b/public/textures/mcwbyg/ironwood_planks_path.png new file mode 100644 index 00000000..c9d6151b Binary files /dev/null and b/public/textures/mcwbyg/ironwood_planks_path.png differ diff --git a/public/textures/mcwbyg/ironwood_planks_roof.png b/public/textures/mcwbyg/ironwood_planks_roof.png new file mode 100644 index 00000000..2b58a8cc Binary files /dev/null and b/public/textures/mcwbyg/ironwood_planks_roof.png differ diff --git a/public/textures/mcwbyg/ironwood_planks_steep_roof.png b/public/textures/mcwbyg/ironwood_planks_steep_roof.png new file mode 100644 index 00000000..c8fb7cc9 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_planks_steep_roof.png differ diff --git a/public/textures/mcwbyg/ironwood_planks_top_roof.png b/public/textures/mcwbyg/ironwood_planks_top_roof.png new file mode 100644 index 00000000..5410855b Binary files /dev/null and b/public/textures/mcwbyg/ironwood_planks_top_roof.png differ diff --git a/public/textures/mcwbyg/ironwood_planks_upper_lower_roof.png b/public/textures/mcwbyg/ironwood_planks_upper_lower_roof.png new file mode 100644 index 00000000..cbd02d85 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/ironwood_planks_upper_steep_roof.png b/public/textures/mcwbyg/ironwood_planks_upper_steep_roof.png new file mode 100644 index 00000000..c4eed49f Binary files /dev/null and b/public/textures/mcwbyg/ironwood_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/ironwood_pyramid_gate.png b/public/textures/mcwbyg/ironwood_pyramid_gate.png new file mode 100644 index 00000000..68f31b43 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_pyramid_gate.png differ diff --git a/public/textures/mcwbyg/ironwood_rail_bridge.png b/public/textures/mcwbyg/ironwood_rail_bridge.png new file mode 100644 index 00000000..99b5b02b Binary files /dev/null and b/public/textures/mcwbyg/ironwood_rail_bridge.png differ diff --git a/public/textures/mcwbyg/ironwood_ranch_trapdoor.png b/public/textures/mcwbyg/ironwood_ranch_trapdoor.png new file mode 100644 index 00000000..26bbd982 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_ranch_trapdoor.png differ diff --git a/public/textures/mcwbyg/ironwood_roof.png b/public/textures/mcwbyg/ironwood_roof.png new file mode 100644 index 00000000..59f37a60 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_roof.png differ diff --git a/public/textures/mcwbyg/ironwood_rope_bridge_stair.png b/public/textures/mcwbyg/ironwood_rope_bridge_stair.png new file mode 100644 index 00000000..fa58e1d7 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_rope_bridge_stair.png differ diff --git a/public/textures/mcwbyg/ironwood_shutter.png b/public/textures/mcwbyg/ironwood_shutter.png new file mode 100644 index 00000000..1eb4953d Binary files /dev/null and b/public/textures/mcwbyg/ironwood_shutter.png differ diff --git a/public/textures/mcwbyg/ironwood_stable_door.png b/public/textures/mcwbyg/ironwood_stable_door.png new file mode 100644 index 00000000..cccc5e16 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_stable_door.png differ diff --git a/public/textures/mcwbyg/ironwood_stable_head_door.png b/public/textures/mcwbyg/ironwood_stable_head_door.png new file mode 100644 index 00000000..0583965d Binary files /dev/null and b/public/textures/mcwbyg/ironwood_stable_head_door.png differ diff --git a/public/textures/mcwbyg/ironwood_steep_roof.png b/public/textures/mcwbyg/ironwood_steep_roof.png new file mode 100644 index 00000000..cbb64014 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_steep_roof.png differ diff --git a/public/textures/mcwbyg/ironwood_stockade_fence.png b/public/textures/mcwbyg/ironwood_stockade_fence.png new file mode 100644 index 00000000..4798b640 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_stockade_fence.png differ diff --git a/public/textures/mcwbyg/ironwood_stool_chair.png b/public/textures/mcwbyg/ironwood_stool_chair.png new file mode 100644 index 00000000..1f07067e Binary files /dev/null and b/public/textures/mcwbyg/ironwood_stool_chair.png differ diff --git a/public/textures/mcwbyg/ironwood_striped_chair.png b/public/textures/mcwbyg/ironwood_striped_chair.png new file mode 100644 index 00000000..ff112f06 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_striped_chair.png differ diff --git a/public/textures/mcwbyg/ironwood_swamp_door.png b/public/textures/mcwbyg/ironwood_swamp_door.png new file mode 100644 index 00000000..99b1587d Binary files /dev/null and b/public/textures/mcwbyg/ironwood_swamp_door.png differ diff --git a/public/textures/mcwbyg/ironwood_swamp_trapdoor.png b/public/textures/mcwbyg/ironwood_swamp_trapdoor.png new file mode 100644 index 00000000..befb055a Binary files /dev/null and b/public/textures/mcwbyg/ironwood_swamp_trapdoor.png differ diff --git a/public/textures/mcwbyg/ironwood_table.png b/public/textures/mcwbyg/ironwood_table.png new file mode 100644 index 00000000..5b0043f0 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_table.png differ diff --git a/public/textures/mcwbyg/ironwood_top_roof.png b/public/textures/mcwbyg/ironwood_top_roof.png new file mode 100644 index 00000000..20185b65 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_top_roof.png differ diff --git a/public/textures/mcwbyg/ironwood_triple_drawer.png b/public/textures/mcwbyg/ironwood_triple_drawer.png new file mode 100644 index 00000000..4ed3e787 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_triple_drawer.png differ diff --git a/public/textures/mcwbyg/ironwood_tropical_door.png b/public/textures/mcwbyg/ironwood_tropical_door.png new file mode 100644 index 00000000..a09775e6 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_tropical_door.png differ diff --git a/public/textures/mcwbyg/ironwood_tropical_trapdoor.png b/public/textures/mcwbyg/ironwood_tropical_trapdoor.png new file mode 100644 index 00000000..e92ea2fe Binary files /dev/null and b/public/textures/mcwbyg/ironwood_tropical_trapdoor.png differ diff --git a/public/textures/mcwbyg/ironwood_upper_lower_roof.png b/public/textures/mcwbyg/ironwood_upper_lower_roof.png new file mode 100644 index 00000000..55a6918d Binary files /dev/null and b/public/textures/mcwbyg/ironwood_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/ironwood_upper_steep_roof.png b/public/textures/mcwbyg/ironwood_upper_steep_roof.png new file mode 100644 index 00000000..4f83df7a Binary files /dev/null and b/public/textures/mcwbyg/ironwood_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/ironwood_waffle_door.png b/public/textures/mcwbyg/ironwood_waffle_door.png new file mode 100644 index 00000000..19d9f0ad Binary files /dev/null and b/public/textures/mcwbyg/ironwood_waffle_door.png differ diff --git a/public/textures/mcwbyg/ironwood_wardrobe.png b/public/textures/mcwbyg/ironwood_wardrobe.png new file mode 100644 index 00000000..bab6a3a4 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_wardrobe.png differ diff --git a/public/textures/mcwbyg/ironwood_western_door.png b/public/textures/mcwbyg/ironwood_western_door.png new file mode 100644 index 00000000..c1bd0d74 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_western_door.png differ diff --git a/public/textures/mcwbyg/ironwood_whispering_door.png b/public/textures/mcwbyg/ironwood_whispering_door.png new file mode 100644 index 00000000..d2155cd0 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_whispering_door.png differ diff --git a/public/textures/mcwbyg/ironwood_whispering_trapdoor.png b/public/textures/mcwbyg/ironwood_whispering_trapdoor.png new file mode 100644 index 00000000..f017a4fd Binary files /dev/null and b/public/textures/mcwbyg/ironwood_whispering_trapdoor.png differ diff --git a/public/textures/mcwbyg/ironwood_window.png b/public/textures/mcwbyg/ironwood_window.png new file mode 100644 index 00000000..a2189d3b Binary files /dev/null and b/public/textures/mcwbyg/ironwood_window.png differ diff --git a/public/textures/mcwbyg/ironwood_window2.png b/public/textures/mcwbyg/ironwood_window2.png new file mode 100644 index 00000000..91104be8 Binary files /dev/null and b/public/textures/mcwbyg/ironwood_window2.png differ diff --git a/public/textures/mcwbyg/ironwood_wired_fence.png b/public/textures/mcwbyg/ironwood_wired_fence.png new file mode 100644 index 00000000..1b7e507c Binary files /dev/null and b/public/textures/mcwbyg/ironwood_wired_fence.png differ diff --git a/public/textures/mcwbyg/jacaranda_attic_roof.png b/public/textures/mcwbyg/jacaranda_attic_roof.png new file mode 100644 index 00000000..b726a08c Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_attic_roof.png differ diff --git a/public/textures/mcwbyg/jacaranda_bamboo_door.png b/public/textures/mcwbyg/jacaranda_bamboo_door.png new file mode 100644 index 00000000..2c7d6203 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_bamboo_door.png differ diff --git a/public/textures/mcwbyg/jacaranda_bamboo_trapdoor.png b/public/textures/mcwbyg/jacaranda_bamboo_trapdoor.png new file mode 100644 index 00000000..48783a7b Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_bamboo_trapdoor.png differ diff --git a/public/textures/mcwbyg/jacaranda_bark_glass_door.png b/public/textures/mcwbyg/jacaranda_bark_glass_door.png new file mode 100644 index 00000000..d1a34b1f Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_bark_glass_door.png differ diff --git a/public/textures/mcwbyg/jacaranda_bark_trapdoor.png b/public/textures/mcwbyg/jacaranda_bark_trapdoor.png new file mode 100644 index 00000000..0b63c784 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_bark_trapdoor.png differ diff --git a/public/textures/mcwbyg/jacaranda_barn_door.png b/public/textures/mcwbyg/jacaranda_barn_door.png new file mode 100644 index 00000000..3be30fe7 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_barn_door.png differ diff --git a/public/textures/mcwbyg/jacaranda_barn_glass_door.png b/public/textures/mcwbyg/jacaranda_barn_glass_door.png new file mode 100644 index 00000000..0f4bea1c Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_barn_glass_door.png differ diff --git a/public/textures/mcwbyg/jacaranda_barn_trapdoor.png b/public/textures/mcwbyg/jacaranda_barn_trapdoor.png new file mode 100644 index 00000000..c5f884fd Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_barn_trapdoor.png differ diff --git a/public/textures/mcwbyg/jacaranda_barred_trapdoor.png b/public/textures/mcwbyg/jacaranda_barred_trapdoor.png new file mode 100644 index 00000000..7dff7143 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_barred_trapdoor.png differ diff --git a/public/textures/mcwbyg/jacaranda_barrel_trapdoor.png b/public/textures/mcwbyg/jacaranda_barrel_trapdoor.png new file mode 100644 index 00000000..68e1db6f Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_barrel_trapdoor.png differ diff --git a/public/textures/mcwbyg/jacaranda_beach_door.png b/public/textures/mcwbyg/jacaranda_beach_door.png new file mode 100644 index 00000000..6f88d0cc Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_beach_door.png differ diff --git a/public/textures/mcwbyg/jacaranda_beach_trapdoor.png b/public/textures/mcwbyg/jacaranda_beach_trapdoor.png new file mode 100644 index 00000000..34ae1dd4 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_beach_trapdoor.png differ diff --git a/public/textures/mcwbyg/jacaranda_blinds.png b/public/textures/mcwbyg/jacaranda_blinds.png new file mode 100644 index 00000000..1080620f Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_blinds.png differ diff --git a/public/textures/mcwbyg/jacaranda_blossom_trapdoor.png b/public/textures/mcwbyg/jacaranda_blossom_trapdoor.png new file mode 100644 index 00000000..377e6b9d Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_blossom_trapdoor.png differ diff --git a/public/textures/mcwbyg/jacaranda_bookshelf.png b/public/textures/mcwbyg/jacaranda_bookshelf.png new file mode 100644 index 00000000..93d88ba6 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_bookshelf.png differ diff --git a/public/textures/mcwbyg/jacaranda_bookshelf_cupboard.png b/public/textures/mcwbyg/jacaranda_bookshelf_cupboard.png new file mode 100644 index 00000000..67c1ce42 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/jacaranda_bookshelf_drawer.png b/public/textures/mcwbyg/jacaranda_bookshelf_drawer.png new file mode 100644 index 00000000..d2fcf8c5 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/jacaranda_bridge_pier.png b/public/textures/mcwbyg/jacaranda_bridge_pier.png new file mode 100644 index 00000000..6822082a Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_bridge_pier.png differ diff --git a/public/textures/mcwbyg/jacaranda_chair.png b/public/textures/mcwbyg/jacaranda_chair.png new file mode 100644 index 00000000..75a24e13 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_chair.png differ diff --git a/public/textures/mcwbyg/jacaranda_classic_door.png b/public/textures/mcwbyg/jacaranda_classic_door.png new file mode 100644 index 00000000..71308b90 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_classic_door.png differ diff --git a/public/textures/mcwbyg/jacaranda_classic_trapdoor.png b/public/textures/mcwbyg/jacaranda_classic_trapdoor.png new file mode 100644 index 00000000..ec623804 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_classic_trapdoor.png differ diff --git a/public/textures/mcwbyg/jacaranda_coffee_table.png b/public/textures/mcwbyg/jacaranda_coffee_table.png new file mode 100644 index 00000000..bd66f519 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_coffee_table.png differ diff --git a/public/textures/mcwbyg/jacaranda_cottage_door.png b/public/textures/mcwbyg/jacaranda_cottage_door.png new file mode 100644 index 00000000..670a8864 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_cottage_door.png differ diff --git a/public/textures/mcwbyg/jacaranda_cottage_trapdoor.png b/public/textures/mcwbyg/jacaranda_cottage_trapdoor.png new file mode 100644 index 00000000..d3cf978c Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_cottage_trapdoor.png differ diff --git a/public/textures/mcwbyg/jacaranda_counter.png b/public/textures/mcwbyg/jacaranda_counter.png new file mode 100644 index 00000000..f42cbc6e Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_counter.png differ diff --git a/public/textures/mcwbyg/jacaranda_covered_desk.png b/public/textures/mcwbyg/jacaranda_covered_desk.png new file mode 100644 index 00000000..0adc35de Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_covered_desk.png differ diff --git a/public/textures/mcwbyg/jacaranda_cupboard_counter.png b/public/textures/mcwbyg/jacaranda_cupboard_counter.png new file mode 100644 index 00000000..befb2f49 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/jacaranda_curtain_rod.png b/public/textures/mcwbyg/jacaranda_curtain_rod.png new file mode 100644 index 00000000..b127ca1f Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_curtain_rod.png differ diff --git a/public/textures/mcwbyg/jacaranda_curved_gate.png b/public/textures/mcwbyg/jacaranda_curved_gate.png new file mode 100644 index 00000000..e7e7ca57 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_curved_gate.png differ diff --git a/public/textures/mcwbyg/jacaranda_desk.png b/public/textures/mcwbyg/jacaranda_desk.png new file mode 100644 index 00000000..55b67c23 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_desk.png differ diff --git a/public/textures/mcwbyg/jacaranda_double_drawer.png b/public/textures/mcwbyg/jacaranda_double_drawer.png new file mode 100644 index 00000000..0c831e50 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_double_drawer.png differ diff --git a/public/textures/mcwbyg/jacaranda_double_drawer_counter.png b/public/textures/mcwbyg/jacaranda_double_drawer_counter.png new file mode 100644 index 00000000..2e69e585 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/jacaranda_double_kitchen_cabinet.png b/public/textures/mcwbyg/jacaranda_double_kitchen_cabinet.png new file mode 100644 index 00000000..becc9144 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/jacaranda_double_wardrobe.png b/public/textures/mcwbyg/jacaranda_double_wardrobe.png new file mode 100644 index 00000000..ae4df785 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/jacaranda_drawer.png b/public/textures/mcwbyg/jacaranda_drawer.png new file mode 100644 index 00000000..3fd95a1c Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_drawer.png differ diff --git a/public/textures/mcwbyg/jacaranda_drawer_counter.png b/public/textures/mcwbyg/jacaranda_drawer_counter.png new file mode 100644 index 00000000..7fa41027 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_drawer_counter.png differ diff --git a/public/textures/mcwbyg/jacaranda_end_table.png b/public/textures/mcwbyg/jacaranda_end_table.png new file mode 100644 index 00000000..14953b20 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_end_table.png differ diff --git a/public/textures/mcwbyg/jacaranda_four_panel_door.png b/public/textures/mcwbyg/jacaranda_four_panel_door.png new file mode 100644 index 00000000..b3fc3b10 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_four_panel_door.png differ diff --git a/public/textures/mcwbyg/jacaranda_four_panel_trapdoor.png b/public/textures/mcwbyg/jacaranda_four_panel_trapdoor.png new file mode 100644 index 00000000..52810aaf Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_four_panel_trapdoor.png differ diff --git a/public/textures/mcwbyg/jacaranda_four_window.png b/public/textures/mcwbyg/jacaranda_four_window.png new file mode 100644 index 00000000..67cdb7b4 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_four_window.png differ diff --git a/public/textures/mcwbyg/jacaranda_glass_door.png b/public/textures/mcwbyg/jacaranda_glass_door.png new file mode 100644 index 00000000..6c2e8e6c Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_glass_door.png differ diff --git a/public/textures/mcwbyg/jacaranda_glass_kitchen_cabinet.png b/public/textures/mcwbyg/jacaranda_glass_kitchen_cabinet.png new file mode 100644 index 00000000..779eddf2 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/jacaranda_glass_table.png b/public/textures/mcwbyg/jacaranda_glass_table.png new file mode 100644 index 00000000..4f02d0ce Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_glass_table.png differ diff --git a/public/textures/mcwbyg/jacaranda_glass_trapdoor.png b/public/textures/mcwbyg/jacaranda_glass_trapdoor.png new file mode 100644 index 00000000..a08d0939 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_glass_trapdoor.png differ diff --git a/public/textures/mcwbyg/jacaranda_hedge.png b/public/textures/mcwbyg/jacaranda_hedge.png new file mode 100644 index 00000000..2b7e7b03 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_hedge.png differ diff --git a/public/textures/mcwbyg/jacaranda_highley_gate.png b/public/textures/mcwbyg/jacaranda_highley_gate.png new file mode 100644 index 00000000..049e05e0 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_highley_gate.png differ diff --git a/public/textures/mcwbyg/jacaranda_horse_fence.png b/public/textures/mcwbyg/jacaranda_horse_fence.png new file mode 100644 index 00000000..c286bdbc Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_horse_fence.png differ diff --git a/public/textures/mcwbyg/jacaranda_japanese2_door.png b/public/textures/mcwbyg/jacaranda_japanese2_door.png new file mode 100644 index 00000000..30808d80 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_japanese2_door.png differ diff --git a/public/textures/mcwbyg/jacaranda_japanese_door.png b/public/textures/mcwbyg/jacaranda_japanese_door.png new file mode 100644 index 00000000..215a54f8 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_japanese_door.png differ diff --git a/public/textures/mcwbyg/jacaranda_kitchen_cabinet.png b/public/textures/mcwbyg/jacaranda_kitchen_cabinet.png new file mode 100644 index 00000000..b44f2056 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/jacaranda_large_drawer.png b/public/textures/mcwbyg/jacaranda_large_drawer.png new file mode 100644 index 00000000..bc6e59e8 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_large_drawer.png differ diff --git a/public/textures/mcwbyg/jacaranda_log_bridge_middle.png b/public/textures/mcwbyg/jacaranda_log_bridge_middle.png new file mode 100644 index 00000000..bc83e4bf Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_log_bridge_middle.png differ diff --git a/public/textures/mcwbyg/jacaranda_log_bridge_stair.png b/public/textures/mcwbyg/jacaranda_log_bridge_stair.png new file mode 100644 index 00000000..2d246def Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_log_bridge_stair.png differ diff --git a/public/textures/mcwbyg/jacaranda_log_parapet.png b/public/textures/mcwbyg/jacaranda_log_parapet.png new file mode 100644 index 00000000..3f65aa8e Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_log_parapet.png differ diff --git a/public/textures/mcwbyg/jacaranda_louvered_shutter.png b/public/textures/mcwbyg/jacaranda_louvered_shutter.png new file mode 100644 index 00000000..de541846 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_louvered_shutter.png differ diff --git a/public/textures/mcwbyg/jacaranda_lower_bookshelf_drawer.png b/public/textures/mcwbyg/jacaranda_lower_bookshelf_drawer.png new file mode 100644 index 00000000..b88595cc Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/jacaranda_lower_roof.png b/public/textures/mcwbyg/jacaranda_lower_roof.png new file mode 100644 index 00000000..a51f5562 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_lower_roof.png differ diff --git a/public/textures/mcwbyg/jacaranda_lower_triple_drawer.png b/public/textures/mcwbyg/jacaranda_lower_triple_drawer.png new file mode 100644 index 00000000..4675e506 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/jacaranda_modern_chair.png b/public/textures/mcwbyg/jacaranda_modern_chair.png new file mode 100644 index 00000000..f3a5019d Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_modern_chair.png differ diff --git a/public/textures/mcwbyg/jacaranda_modern_desk.png b/public/textures/mcwbyg/jacaranda_modern_desk.png new file mode 100644 index 00000000..4a7d9654 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_modern_desk.png differ diff --git a/public/textures/mcwbyg/jacaranda_modern_door.png b/public/textures/mcwbyg/jacaranda_modern_door.png new file mode 100644 index 00000000..39da0b12 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_modern_door.png differ diff --git a/public/textures/mcwbyg/jacaranda_modern_wardrobe.png b/public/textures/mcwbyg/jacaranda_modern_wardrobe.png new file mode 100644 index 00000000..e1ce7a3b Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/jacaranda_mystic_door.png b/public/textures/mcwbyg/jacaranda_mystic_door.png new file mode 100644 index 00000000..26e2d0cd Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_mystic_door.png differ diff --git a/public/textures/mcwbyg/jacaranda_mystic_trapdoor.png b/public/textures/mcwbyg/jacaranda_mystic_trapdoor.png new file mode 100644 index 00000000..8c1d6af6 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_mystic_trapdoor.png differ diff --git a/public/textures/mcwbyg/jacaranda_nether_door.png b/public/textures/mcwbyg/jacaranda_nether_door.png new file mode 100644 index 00000000..6c645560 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_nether_door.png differ diff --git a/public/textures/mcwbyg/jacaranda_pane_window.png b/public/textures/mcwbyg/jacaranda_pane_window.png new file mode 100644 index 00000000..050be09a Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_pane_window.png differ diff --git a/public/textures/mcwbyg/jacaranda_paper_door.png b/public/textures/mcwbyg/jacaranda_paper_door.png new file mode 100644 index 00000000..3c9ab2b8 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_paper_door.png differ diff --git a/public/textures/mcwbyg/jacaranda_paper_trapdoor.png b/public/textures/mcwbyg/jacaranda_paper_trapdoor.png new file mode 100644 index 00000000..9981f0d4 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_paper_trapdoor.png differ diff --git a/public/textures/mcwbyg/jacaranda_picket_fence.png b/public/textures/mcwbyg/jacaranda_picket_fence.png new file mode 100644 index 00000000..bc15d0cf Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_picket_fence.png differ diff --git a/public/textures/mcwbyg/jacaranda_plank_four_window.png b/public/textures/mcwbyg/jacaranda_plank_four_window.png new file mode 100644 index 00000000..47d5c50c Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_plank_four_window.png differ diff --git a/public/textures/mcwbyg/jacaranda_plank_pane_window.png b/public/textures/mcwbyg/jacaranda_plank_pane_window.png new file mode 100644 index 00000000..6d935eb6 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_plank_pane_window.png differ diff --git a/public/textures/mcwbyg/jacaranda_plank_parapet.png b/public/textures/mcwbyg/jacaranda_plank_parapet.png new file mode 100644 index 00000000..72a038bb Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_plank_parapet.png differ diff --git a/public/textures/mcwbyg/jacaranda_plank_window.png b/public/textures/mcwbyg/jacaranda_plank_window.png new file mode 100644 index 00000000..e2e05fae Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_plank_window.png differ diff --git a/public/textures/mcwbyg/jacaranda_plank_window2.png b/public/textures/mcwbyg/jacaranda_plank_window2.png new file mode 100644 index 00000000..a442da6f Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_plank_window2.png differ diff --git a/public/textures/mcwbyg/jacaranda_planks_attic_roof.png b/public/textures/mcwbyg/jacaranda_planks_attic_roof.png new file mode 100644 index 00000000..f80188de Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_planks_attic_roof.png differ diff --git a/public/textures/mcwbyg/jacaranda_planks_lower_roof.png b/public/textures/mcwbyg/jacaranda_planks_lower_roof.png new file mode 100644 index 00000000..42ac567e Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_planks_lower_roof.png differ diff --git a/public/textures/mcwbyg/jacaranda_planks_path.png b/public/textures/mcwbyg/jacaranda_planks_path.png new file mode 100644 index 00000000..ae2cca93 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_planks_path.png differ diff --git a/public/textures/mcwbyg/jacaranda_planks_roof.png b/public/textures/mcwbyg/jacaranda_planks_roof.png new file mode 100644 index 00000000..14ed139a Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_planks_roof.png differ diff --git a/public/textures/mcwbyg/jacaranda_planks_steep_roof.png b/public/textures/mcwbyg/jacaranda_planks_steep_roof.png new file mode 100644 index 00000000..473e890f Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_planks_steep_roof.png differ diff --git a/public/textures/mcwbyg/jacaranda_planks_top_roof.png b/public/textures/mcwbyg/jacaranda_planks_top_roof.png new file mode 100644 index 00000000..2da67f6e Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_planks_top_roof.png differ diff --git a/public/textures/mcwbyg/jacaranda_planks_upper_lower_roof.png b/public/textures/mcwbyg/jacaranda_planks_upper_lower_roof.png new file mode 100644 index 00000000..84169e68 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/jacaranda_planks_upper_steep_roof.png b/public/textures/mcwbyg/jacaranda_planks_upper_steep_roof.png new file mode 100644 index 00000000..01e9fdac Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/jacaranda_pyramid_gate.png b/public/textures/mcwbyg/jacaranda_pyramid_gate.png new file mode 100644 index 00000000..109bf9fe Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_pyramid_gate.png differ diff --git a/public/textures/mcwbyg/jacaranda_rail_bridge.png b/public/textures/mcwbyg/jacaranda_rail_bridge.png new file mode 100644 index 00000000..28ea9b70 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_rail_bridge.png differ diff --git a/public/textures/mcwbyg/jacaranda_ranch_trapdoor.png b/public/textures/mcwbyg/jacaranda_ranch_trapdoor.png new file mode 100644 index 00000000..ccda997e Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_ranch_trapdoor.png differ diff --git a/public/textures/mcwbyg/jacaranda_roof.png b/public/textures/mcwbyg/jacaranda_roof.png new file mode 100644 index 00000000..65dc6ed2 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_roof.png differ diff --git a/public/textures/mcwbyg/jacaranda_rope_bridge_stair.png b/public/textures/mcwbyg/jacaranda_rope_bridge_stair.png new file mode 100644 index 00000000..ff87ce22 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_rope_bridge_stair.png differ diff --git a/public/textures/mcwbyg/jacaranda_shutter.png b/public/textures/mcwbyg/jacaranda_shutter.png new file mode 100644 index 00000000..1bd5d642 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_shutter.png differ diff --git a/public/textures/mcwbyg/jacaranda_stable_door.png b/public/textures/mcwbyg/jacaranda_stable_door.png new file mode 100644 index 00000000..98a875af Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_stable_door.png differ diff --git a/public/textures/mcwbyg/jacaranda_stable_head_door.png b/public/textures/mcwbyg/jacaranda_stable_head_door.png new file mode 100644 index 00000000..ff9787c7 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_stable_head_door.png differ diff --git a/public/textures/mcwbyg/jacaranda_steep_roof.png b/public/textures/mcwbyg/jacaranda_steep_roof.png new file mode 100644 index 00000000..07090baf Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_steep_roof.png differ diff --git a/public/textures/mcwbyg/jacaranda_stockade_fence.png b/public/textures/mcwbyg/jacaranda_stockade_fence.png new file mode 100644 index 00000000..28ecfdf9 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_stockade_fence.png differ diff --git a/public/textures/mcwbyg/jacaranda_stool_chair.png b/public/textures/mcwbyg/jacaranda_stool_chair.png new file mode 100644 index 00000000..2baa9e65 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_stool_chair.png differ diff --git a/public/textures/mcwbyg/jacaranda_striped_chair.png b/public/textures/mcwbyg/jacaranda_striped_chair.png new file mode 100644 index 00000000..15e954a0 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_striped_chair.png differ diff --git a/public/textures/mcwbyg/jacaranda_swamp_door.png b/public/textures/mcwbyg/jacaranda_swamp_door.png new file mode 100644 index 00000000..443003db Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_swamp_door.png differ diff --git a/public/textures/mcwbyg/jacaranda_swamp_trapdoor.png b/public/textures/mcwbyg/jacaranda_swamp_trapdoor.png new file mode 100644 index 00000000..36672816 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_swamp_trapdoor.png differ diff --git a/public/textures/mcwbyg/jacaranda_table.png b/public/textures/mcwbyg/jacaranda_table.png new file mode 100644 index 00000000..17a2997f Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_table.png differ diff --git a/public/textures/mcwbyg/jacaranda_top_roof.png b/public/textures/mcwbyg/jacaranda_top_roof.png new file mode 100644 index 00000000..c8764c0f Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_top_roof.png differ diff --git a/public/textures/mcwbyg/jacaranda_triple_drawer.png b/public/textures/mcwbyg/jacaranda_triple_drawer.png new file mode 100644 index 00000000..858c1c09 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_triple_drawer.png differ diff --git a/public/textures/mcwbyg/jacaranda_tropical_door.png b/public/textures/mcwbyg/jacaranda_tropical_door.png new file mode 100644 index 00000000..7e791d2a Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_tropical_door.png differ diff --git a/public/textures/mcwbyg/jacaranda_tropical_trapdoor.png b/public/textures/mcwbyg/jacaranda_tropical_trapdoor.png new file mode 100644 index 00000000..f9c36af6 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_tropical_trapdoor.png differ diff --git a/public/textures/mcwbyg/jacaranda_upper_lower_roof.png b/public/textures/mcwbyg/jacaranda_upper_lower_roof.png new file mode 100644 index 00000000..d8c3a3d7 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/jacaranda_upper_steep_roof.png b/public/textures/mcwbyg/jacaranda_upper_steep_roof.png new file mode 100644 index 00000000..5068e7b2 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/jacaranda_waffle_door.png b/public/textures/mcwbyg/jacaranda_waffle_door.png new file mode 100644 index 00000000..585b6b0f Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_waffle_door.png differ diff --git a/public/textures/mcwbyg/jacaranda_wardrobe.png b/public/textures/mcwbyg/jacaranda_wardrobe.png new file mode 100644 index 00000000..82d2d1c0 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_wardrobe.png differ diff --git a/public/textures/mcwbyg/jacaranda_western_door.png b/public/textures/mcwbyg/jacaranda_western_door.png new file mode 100644 index 00000000..d0ca52f0 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_western_door.png differ diff --git a/public/textures/mcwbyg/jacaranda_whispering_door.png b/public/textures/mcwbyg/jacaranda_whispering_door.png new file mode 100644 index 00000000..15ab8876 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_whispering_door.png differ diff --git a/public/textures/mcwbyg/jacaranda_whispering_trapdoor.png b/public/textures/mcwbyg/jacaranda_whispering_trapdoor.png new file mode 100644 index 00000000..821a7eaf Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_whispering_trapdoor.png differ diff --git a/public/textures/mcwbyg/jacaranda_window.png b/public/textures/mcwbyg/jacaranda_window.png new file mode 100644 index 00000000..c53b7e19 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_window.png differ diff --git a/public/textures/mcwbyg/jacaranda_window2.png b/public/textures/mcwbyg/jacaranda_window2.png new file mode 100644 index 00000000..010b3470 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_window2.png differ diff --git a/public/textures/mcwbyg/jacaranda_wired_fence.png b/public/textures/mcwbyg/jacaranda_wired_fence.png new file mode 100644 index 00000000..635cf170 Binary files /dev/null and b/public/textures/mcwbyg/jacaranda_wired_fence.png differ diff --git a/public/textures/mcwbyg/mahogany_attic_roof.png b/public/textures/mcwbyg/mahogany_attic_roof.png new file mode 100644 index 00000000..e7c10b55 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_attic_roof.png differ diff --git a/public/textures/mcwbyg/mahogany_bamboo_door.png b/public/textures/mcwbyg/mahogany_bamboo_door.png new file mode 100644 index 00000000..e210e1e4 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_bamboo_door.png differ diff --git a/public/textures/mcwbyg/mahogany_bamboo_trapdoor.png b/public/textures/mcwbyg/mahogany_bamboo_trapdoor.png new file mode 100644 index 00000000..4ef78d48 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_bamboo_trapdoor.png differ diff --git a/public/textures/mcwbyg/mahogany_bark_glass_door.png b/public/textures/mcwbyg/mahogany_bark_glass_door.png new file mode 100644 index 00000000..658e4e68 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_bark_glass_door.png differ diff --git a/public/textures/mcwbyg/mahogany_bark_trapdoor.png b/public/textures/mcwbyg/mahogany_bark_trapdoor.png new file mode 100644 index 00000000..0399257a Binary files /dev/null and b/public/textures/mcwbyg/mahogany_bark_trapdoor.png differ diff --git a/public/textures/mcwbyg/mahogany_barn_door.png b/public/textures/mcwbyg/mahogany_barn_door.png new file mode 100644 index 00000000..c5750d9b Binary files /dev/null and b/public/textures/mcwbyg/mahogany_barn_door.png differ diff --git a/public/textures/mcwbyg/mahogany_barn_glass_door.png b/public/textures/mcwbyg/mahogany_barn_glass_door.png new file mode 100644 index 00000000..53c3e340 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_barn_glass_door.png differ diff --git a/public/textures/mcwbyg/mahogany_barn_trapdoor.png b/public/textures/mcwbyg/mahogany_barn_trapdoor.png new file mode 100644 index 00000000..0f1cb81a Binary files /dev/null and b/public/textures/mcwbyg/mahogany_barn_trapdoor.png differ diff --git a/public/textures/mcwbyg/mahogany_barred_trapdoor.png b/public/textures/mcwbyg/mahogany_barred_trapdoor.png new file mode 100644 index 00000000..ae8ad61b Binary files /dev/null and b/public/textures/mcwbyg/mahogany_barred_trapdoor.png differ diff --git a/public/textures/mcwbyg/mahogany_barrel_trapdoor.png b/public/textures/mcwbyg/mahogany_barrel_trapdoor.png new file mode 100644 index 00000000..975ffa31 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_barrel_trapdoor.png differ diff --git a/public/textures/mcwbyg/mahogany_beach_door.png b/public/textures/mcwbyg/mahogany_beach_door.png new file mode 100644 index 00000000..b6d9083b Binary files /dev/null and b/public/textures/mcwbyg/mahogany_beach_door.png differ diff --git a/public/textures/mcwbyg/mahogany_beach_trapdoor.png b/public/textures/mcwbyg/mahogany_beach_trapdoor.png new file mode 100644 index 00000000..21144ba4 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_beach_trapdoor.png differ diff --git a/public/textures/mcwbyg/mahogany_blinds.png b/public/textures/mcwbyg/mahogany_blinds.png new file mode 100644 index 00000000..dfdbd462 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_blinds.png differ diff --git a/public/textures/mcwbyg/mahogany_blossom_trapdoor.png b/public/textures/mcwbyg/mahogany_blossom_trapdoor.png new file mode 100644 index 00000000..c53c7fd3 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_blossom_trapdoor.png differ diff --git a/public/textures/mcwbyg/mahogany_bookshelf.png b/public/textures/mcwbyg/mahogany_bookshelf.png new file mode 100644 index 00000000..866893fa Binary files /dev/null and b/public/textures/mcwbyg/mahogany_bookshelf.png differ diff --git a/public/textures/mcwbyg/mahogany_bookshelf_cupboard.png b/public/textures/mcwbyg/mahogany_bookshelf_cupboard.png new file mode 100644 index 00000000..e92fff81 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/mahogany_bookshelf_drawer.png b/public/textures/mcwbyg/mahogany_bookshelf_drawer.png new file mode 100644 index 00000000..7db7d58a Binary files /dev/null and b/public/textures/mcwbyg/mahogany_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/mahogany_bridge_pier.png b/public/textures/mcwbyg/mahogany_bridge_pier.png new file mode 100644 index 00000000..7245837d Binary files /dev/null and b/public/textures/mcwbyg/mahogany_bridge_pier.png differ diff --git a/public/textures/mcwbyg/mahogany_chair.png b/public/textures/mcwbyg/mahogany_chair.png new file mode 100644 index 00000000..61fc7526 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_chair.png differ diff --git a/public/textures/mcwbyg/mahogany_classic_door.png b/public/textures/mcwbyg/mahogany_classic_door.png new file mode 100644 index 00000000..a09b9e19 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_classic_door.png differ diff --git a/public/textures/mcwbyg/mahogany_classic_trapdoor.png b/public/textures/mcwbyg/mahogany_classic_trapdoor.png new file mode 100644 index 00000000..0a0af9f3 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_classic_trapdoor.png differ diff --git a/public/textures/mcwbyg/mahogany_coffee_table.png b/public/textures/mcwbyg/mahogany_coffee_table.png new file mode 100644 index 00000000..1930a243 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_coffee_table.png differ diff --git a/public/textures/mcwbyg/mahogany_cottage_door.png b/public/textures/mcwbyg/mahogany_cottage_door.png new file mode 100644 index 00000000..7cd479b8 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_cottage_door.png differ diff --git a/public/textures/mcwbyg/mahogany_cottage_trapdoor.png b/public/textures/mcwbyg/mahogany_cottage_trapdoor.png new file mode 100644 index 00000000..4c022a75 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_cottage_trapdoor.png differ diff --git a/public/textures/mcwbyg/mahogany_counter.png b/public/textures/mcwbyg/mahogany_counter.png new file mode 100644 index 00000000..d69699a5 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_counter.png differ diff --git a/public/textures/mcwbyg/mahogany_covered_desk.png b/public/textures/mcwbyg/mahogany_covered_desk.png new file mode 100644 index 00000000..2ee4ba4b Binary files /dev/null and b/public/textures/mcwbyg/mahogany_covered_desk.png differ diff --git a/public/textures/mcwbyg/mahogany_cupboard_counter.png b/public/textures/mcwbyg/mahogany_cupboard_counter.png new file mode 100644 index 00000000..e02c0e4a Binary files /dev/null and b/public/textures/mcwbyg/mahogany_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/mahogany_curtain_rod.png b/public/textures/mcwbyg/mahogany_curtain_rod.png new file mode 100644 index 00000000..2ca0e70b Binary files /dev/null and b/public/textures/mcwbyg/mahogany_curtain_rod.png differ diff --git a/public/textures/mcwbyg/mahogany_curved_gate.png b/public/textures/mcwbyg/mahogany_curved_gate.png new file mode 100644 index 00000000..0bf758a3 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_curved_gate.png differ diff --git a/public/textures/mcwbyg/mahogany_desk.png b/public/textures/mcwbyg/mahogany_desk.png new file mode 100644 index 00000000..a38dcaa6 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_desk.png differ diff --git a/public/textures/mcwbyg/mahogany_double_drawer.png b/public/textures/mcwbyg/mahogany_double_drawer.png new file mode 100644 index 00000000..08f91f8f Binary files /dev/null and b/public/textures/mcwbyg/mahogany_double_drawer.png differ diff --git a/public/textures/mcwbyg/mahogany_double_drawer_counter.png b/public/textures/mcwbyg/mahogany_double_drawer_counter.png new file mode 100644 index 00000000..0521f2c2 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/mahogany_double_kitchen_cabinet.png b/public/textures/mcwbyg/mahogany_double_kitchen_cabinet.png new file mode 100644 index 00000000..dccca23d Binary files /dev/null and b/public/textures/mcwbyg/mahogany_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/mahogany_double_wardrobe.png b/public/textures/mcwbyg/mahogany_double_wardrobe.png new file mode 100644 index 00000000..4470b5af Binary files /dev/null and b/public/textures/mcwbyg/mahogany_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/mahogany_drawer.png b/public/textures/mcwbyg/mahogany_drawer.png new file mode 100644 index 00000000..96be4e60 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_drawer.png differ diff --git a/public/textures/mcwbyg/mahogany_drawer_counter.png b/public/textures/mcwbyg/mahogany_drawer_counter.png new file mode 100644 index 00000000..76a84b8e Binary files /dev/null and b/public/textures/mcwbyg/mahogany_drawer_counter.png differ diff --git a/public/textures/mcwbyg/mahogany_end_table.png b/public/textures/mcwbyg/mahogany_end_table.png new file mode 100644 index 00000000..cf20100b Binary files /dev/null and b/public/textures/mcwbyg/mahogany_end_table.png differ diff --git a/public/textures/mcwbyg/mahogany_four_panel_door.png b/public/textures/mcwbyg/mahogany_four_panel_door.png new file mode 100644 index 00000000..f021c262 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_four_panel_door.png differ diff --git a/public/textures/mcwbyg/mahogany_four_panel_trapdoor.png b/public/textures/mcwbyg/mahogany_four_panel_trapdoor.png new file mode 100644 index 00000000..b2c20520 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_four_panel_trapdoor.png differ diff --git a/public/textures/mcwbyg/mahogany_four_window.png b/public/textures/mcwbyg/mahogany_four_window.png new file mode 100644 index 00000000..af4bf358 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_four_window.png differ diff --git a/public/textures/mcwbyg/mahogany_glass_door.png b/public/textures/mcwbyg/mahogany_glass_door.png new file mode 100644 index 00000000..0306c2ca Binary files /dev/null and b/public/textures/mcwbyg/mahogany_glass_door.png differ diff --git a/public/textures/mcwbyg/mahogany_glass_kitchen_cabinet.png b/public/textures/mcwbyg/mahogany_glass_kitchen_cabinet.png new file mode 100644 index 00000000..8b5fe9e2 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/mahogany_glass_table.png b/public/textures/mcwbyg/mahogany_glass_table.png new file mode 100644 index 00000000..dd586633 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_glass_table.png differ diff --git a/public/textures/mcwbyg/mahogany_glass_trapdoor.png b/public/textures/mcwbyg/mahogany_glass_trapdoor.png new file mode 100644 index 00000000..2ed3d206 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_glass_trapdoor.png differ diff --git a/public/textures/mcwbyg/mahogany_hedge.png b/public/textures/mcwbyg/mahogany_hedge.png new file mode 100644 index 00000000..f6cd4030 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_hedge.png differ diff --git a/public/textures/mcwbyg/mahogany_highley_gate.png b/public/textures/mcwbyg/mahogany_highley_gate.png new file mode 100644 index 00000000..ec3c7a81 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_highley_gate.png differ diff --git a/public/textures/mcwbyg/mahogany_horse_fence.png b/public/textures/mcwbyg/mahogany_horse_fence.png new file mode 100644 index 00000000..940db174 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_horse_fence.png differ diff --git a/public/textures/mcwbyg/mahogany_japanese2_door.png b/public/textures/mcwbyg/mahogany_japanese2_door.png new file mode 100644 index 00000000..2cb12fa4 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_japanese2_door.png differ diff --git a/public/textures/mcwbyg/mahogany_japanese_door.png b/public/textures/mcwbyg/mahogany_japanese_door.png new file mode 100644 index 00000000..b24bb32f Binary files /dev/null and b/public/textures/mcwbyg/mahogany_japanese_door.png differ diff --git a/public/textures/mcwbyg/mahogany_kitchen_cabinet.png b/public/textures/mcwbyg/mahogany_kitchen_cabinet.png new file mode 100644 index 00000000..20db65ef Binary files /dev/null and b/public/textures/mcwbyg/mahogany_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/mahogany_large_drawer.png b/public/textures/mcwbyg/mahogany_large_drawer.png new file mode 100644 index 00000000..772b6253 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_large_drawer.png differ diff --git a/public/textures/mcwbyg/mahogany_log_bridge_middle.png b/public/textures/mcwbyg/mahogany_log_bridge_middle.png new file mode 100644 index 00000000..4a80e465 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_log_bridge_middle.png differ diff --git a/public/textures/mcwbyg/mahogany_log_bridge_stair.png b/public/textures/mcwbyg/mahogany_log_bridge_stair.png new file mode 100644 index 00000000..36d634bd Binary files /dev/null and b/public/textures/mcwbyg/mahogany_log_bridge_stair.png differ diff --git a/public/textures/mcwbyg/mahogany_log_parapet.png b/public/textures/mcwbyg/mahogany_log_parapet.png new file mode 100644 index 00000000..c9127950 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_log_parapet.png differ diff --git a/public/textures/mcwbyg/mahogany_louvered_shutter.png b/public/textures/mcwbyg/mahogany_louvered_shutter.png new file mode 100644 index 00000000..144bda6d Binary files /dev/null and b/public/textures/mcwbyg/mahogany_louvered_shutter.png differ diff --git a/public/textures/mcwbyg/mahogany_lower_bookshelf_drawer.png b/public/textures/mcwbyg/mahogany_lower_bookshelf_drawer.png new file mode 100644 index 00000000..09f7e0b0 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/mahogany_lower_roof.png b/public/textures/mcwbyg/mahogany_lower_roof.png new file mode 100644 index 00000000..a1b96915 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_lower_roof.png differ diff --git a/public/textures/mcwbyg/mahogany_lower_triple_drawer.png b/public/textures/mcwbyg/mahogany_lower_triple_drawer.png new file mode 100644 index 00000000..aebb2253 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/mahogany_modern_chair.png b/public/textures/mcwbyg/mahogany_modern_chair.png new file mode 100644 index 00000000..feacc03b Binary files /dev/null and b/public/textures/mcwbyg/mahogany_modern_chair.png differ diff --git a/public/textures/mcwbyg/mahogany_modern_desk.png b/public/textures/mcwbyg/mahogany_modern_desk.png new file mode 100644 index 00000000..7f4804c7 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_modern_desk.png differ diff --git a/public/textures/mcwbyg/mahogany_modern_door.png b/public/textures/mcwbyg/mahogany_modern_door.png new file mode 100644 index 00000000..6c98f28b Binary files /dev/null and b/public/textures/mcwbyg/mahogany_modern_door.png differ diff --git a/public/textures/mcwbyg/mahogany_modern_wardrobe.png b/public/textures/mcwbyg/mahogany_modern_wardrobe.png new file mode 100644 index 00000000..4fda85bc Binary files /dev/null and b/public/textures/mcwbyg/mahogany_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/mahogany_mystic_door.png b/public/textures/mcwbyg/mahogany_mystic_door.png new file mode 100644 index 00000000..0ab2d80c Binary files /dev/null and b/public/textures/mcwbyg/mahogany_mystic_door.png differ diff --git a/public/textures/mcwbyg/mahogany_mystic_trapdoor.png b/public/textures/mcwbyg/mahogany_mystic_trapdoor.png new file mode 100644 index 00000000..a801a8a0 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_mystic_trapdoor.png differ diff --git a/public/textures/mcwbyg/mahogany_nether_door.png b/public/textures/mcwbyg/mahogany_nether_door.png new file mode 100644 index 00000000..09d64411 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_nether_door.png differ diff --git a/public/textures/mcwbyg/mahogany_pane_window.png b/public/textures/mcwbyg/mahogany_pane_window.png new file mode 100644 index 00000000..d32f43df Binary files /dev/null and b/public/textures/mcwbyg/mahogany_pane_window.png differ diff --git a/public/textures/mcwbyg/mahogany_paper_door.png b/public/textures/mcwbyg/mahogany_paper_door.png new file mode 100644 index 00000000..5d1e0666 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_paper_door.png differ diff --git a/public/textures/mcwbyg/mahogany_paper_trapdoor.png b/public/textures/mcwbyg/mahogany_paper_trapdoor.png new file mode 100644 index 00000000..2c435211 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_paper_trapdoor.png differ diff --git a/public/textures/mcwbyg/mahogany_picket_fence.png b/public/textures/mcwbyg/mahogany_picket_fence.png new file mode 100644 index 00000000..8ac01123 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_picket_fence.png differ diff --git a/public/textures/mcwbyg/mahogany_plank_four_window.png b/public/textures/mcwbyg/mahogany_plank_four_window.png new file mode 100644 index 00000000..37dbd159 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_plank_four_window.png differ diff --git a/public/textures/mcwbyg/mahogany_plank_pane_window.png b/public/textures/mcwbyg/mahogany_plank_pane_window.png new file mode 100644 index 00000000..359a4798 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_plank_pane_window.png differ diff --git a/public/textures/mcwbyg/mahogany_plank_parapet.png b/public/textures/mcwbyg/mahogany_plank_parapet.png new file mode 100644 index 00000000..e78e4fc7 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_plank_parapet.png differ diff --git a/public/textures/mcwbyg/mahogany_plank_window.png b/public/textures/mcwbyg/mahogany_plank_window.png new file mode 100644 index 00000000..e99ac2b9 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_plank_window.png differ diff --git a/public/textures/mcwbyg/mahogany_plank_window2.png b/public/textures/mcwbyg/mahogany_plank_window2.png new file mode 100644 index 00000000..9c44cc31 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_plank_window2.png differ diff --git a/public/textures/mcwbyg/mahogany_planks_attic_roof.png b/public/textures/mcwbyg/mahogany_planks_attic_roof.png new file mode 100644 index 00000000..e59c2581 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_planks_attic_roof.png differ diff --git a/public/textures/mcwbyg/mahogany_planks_lower_roof.png b/public/textures/mcwbyg/mahogany_planks_lower_roof.png new file mode 100644 index 00000000..fa87ad78 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_planks_lower_roof.png differ diff --git a/public/textures/mcwbyg/mahogany_planks_path.png b/public/textures/mcwbyg/mahogany_planks_path.png new file mode 100644 index 00000000..636a23e8 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_planks_path.png differ diff --git a/public/textures/mcwbyg/mahogany_planks_roof.png b/public/textures/mcwbyg/mahogany_planks_roof.png new file mode 100644 index 00000000..56537e5e Binary files /dev/null and b/public/textures/mcwbyg/mahogany_planks_roof.png differ diff --git a/public/textures/mcwbyg/mahogany_planks_steep_roof.png b/public/textures/mcwbyg/mahogany_planks_steep_roof.png new file mode 100644 index 00000000..9f6a83f6 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_planks_steep_roof.png differ diff --git a/public/textures/mcwbyg/mahogany_planks_top_roof.png b/public/textures/mcwbyg/mahogany_planks_top_roof.png new file mode 100644 index 00000000..b4e2d7db Binary files /dev/null and b/public/textures/mcwbyg/mahogany_planks_top_roof.png differ diff --git a/public/textures/mcwbyg/mahogany_planks_upper_lower_roof.png b/public/textures/mcwbyg/mahogany_planks_upper_lower_roof.png new file mode 100644 index 00000000..af84e1da Binary files /dev/null and b/public/textures/mcwbyg/mahogany_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/mahogany_planks_upper_steep_roof.png b/public/textures/mcwbyg/mahogany_planks_upper_steep_roof.png new file mode 100644 index 00000000..826f6e49 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/mahogany_pyramid_gate.png b/public/textures/mcwbyg/mahogany_pyramid_gate.png new file mode 100644 index 00000000..620b0603 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_pyramid_gate.png differ diff --git a/public/textures/mcwbyg/mahogany_rail_bridge.png b/public/textures/mcwbyg/mahogany_rail_bridge.png new file mode 100644 index 00000000..574bdd17 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_rail_bridge.png differ diff --git a/public/textures/mcwbyg/mahogany_ranch_trapdoor.png b/public/textures/mcwbyg/mahogany_ranch_trapdoor.png new file mode 100644 index 00000000..ba8fc7b2 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_ranch_trapdoor.png differ diff --git a/public/textures/mcwbyg/mahogany_roof.png b/public/textures/mcwbyg/mahogany_roof.png new file mode 100644 index 00000000..758775a8 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_roof.png differ diff --git a/public/textures/mcwbyg/mahogany_rope_bridge_stair.png b/public/textures/mcwbyg/mahogany_rope_bridge_stair.png new file mode 100644 index 00000000..bf1b5104 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_rope_bridge_stair.png differ diff --git a/public/textures/mcwbyg/mahogany_shutter.png b/public/textures/mcwbyg/mahogany_shutter.png new file mode 100644 index 00000000..cdd37706 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_shutter.png differ diff --git a/public/textures/mcwbyg/mahogany_stable_door.png b/public/textures/mcwbyg/mahogany_stable_door.png new file mode 100644 index 00000000..81a304c7 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_stable_door.png differ diff --git a/public/textures/mcwbyg/mahogany_stable_head_door.png b/public/textures/mcwbyg/mahogany_stable_head_door.png new file mode 100644 index 00000000..60f0a397 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_stable_head_door.png differ diff --git a/public/textures/mcwbyg/mahogany_steep_roof.png b/public/textures/mcwbyg/mahogany_steep_roof.png new file mode 100644 index 00000000..35d6e671 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_steep_roof.png differ diff --git a/public/textures/mcwbyg/mahogany_stockade_fence.png b/public/textures/mcwbyg/mahogany_stockade_fence.png new file mode 100644 index 00000000..c3584d6c Binary files /dev/null and b/public/textures/mcwbyg/mahogany_stockade_fence.png differ diff --git a/public/textures/mcwbyg/mahogany_stool_chair.png b/public/textures/mcwbyg/mahogany_stool_chair.png new file mode 100644 index 00000000..52940b42 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_stool_chair.png differ diff --git a/public/textures/mcwbyg/mahogany_striped_chair.png b/public/textures/mcwbyg/mahogany_striped_chair.png new file mode 100644 index 00000000..898ce058 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_striped_chair.png differ diff --git a/public/textures/mcwbyg/mahogany_swamp_door.png b/public/textures/mcwbyg/mahogany_swamp_door.png new file mode 100644 index 00000000..a3a0be6e Binary files /dev/null and b/public/textures/mcwbyg/mahogany_swamp_door.png differ diff --git a/public/textures/mcwbyg/mahogany_swamp_trapdoor.png b/public/textures/mcwbyg/mahogany_swamp_trapdoor.png new file mode 100644 index 00000000..c1c11cf4 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_swamp_trapdoor.png differ diff --git a/public/textures/mcwbyg/mahogany_table.png b/public/textures/mcwbyg/mahogany_table.png new file mode 100644 index 00000000..2408e920 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_table.png differ diff --git a/public/textures/mcwbyg/mahogany_top_roof.png b/public/textures/mcwbyg/mahogany_top_roof.png new file mode 100644 index 00000000..c4d9c373 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_top_roof.png differ diff --git a/public/textures/mcwbyg/mahogany_triple_drawer.png b/public/textures/mcwbyg/mahogany_triple_drawer.png new file mode 100644 index 00000000..8c2719dd Binary files /dev/null and b/public/textures/mcwbyg/mahogany_triple_drawer.png differ diff --git a/public/textures/mcwbyg/mahogany_tropical_door.png b/public/textures/mcwbyg/mahogany_tropical_door.png new file mode 100644 index 00000000..2d8c62ab Binary files /dev/null and b/public/textures/mcwbyg/mahogany_tropical_door.png differ diff --git a/public/textures/mcwbyg/mahogany_tropical_trapdoor.png b/public/textures/mcwbyg/mahogany_tropical_trapdoor.png new file mode 100644 index 00000000..a1d6d92c Binary files /dev/null and b/public/textures/mcwbyg/mahogany_tropical_trapdoor.png differ diff --git a/public/textures/mcwbyg/mahogany_upper_lower_roof.png b/public/textures/mcwbyg/mahogany_upper_lower_roof.png new file mode 100644 index 00000000..b77a8c2f Binary files /dev/null and b/public/textures/mcwbyg/mahogany_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/mahogany_upper_steep_roof.png b/public/textures/mcwbyg/mahogany_upper_steep_roof.png new file mode 100644 index 00000000..20b79315 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/mahogany_waffle_door.png b/public/textures/mcwbyg/mahogany_waffle_door.png new file mode 100644 index 00000000..1d9b7b06 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_waffle_door.png differ diff --git a/public/textures/mcwbyg/mahogany_wardrobe.png b/public/textures/mcwbyg/mahogany_wardrobe.png new file mode 100644 index 00000000..3a80f4a2 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_wardrobe.png differ diff --git a/public/textures/mcwbyg/mahogany_western_door.png b/public/textures/mcwbyg/mahogany_western_door.png new file mode 100644 index 00000000..d66c9f76 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_western_door.png differ diff --git a/public/textures/mcwbyg/mahogany_whispering_door.png b/public/textures/mcwbyg/mahogany_whispering_door.png new file mode 100644 index 00000000..53b5881b Binary files /dev/null and b/public/textures/mcwbyg/mahogany_whispering_door.png differ diff --git a/public/textures/mcwbyg/mahogany_whispering_trapdoor.png b/public/textures/mcwbyg/mahogany_whispering_trapdoor.png new file mode 100644 index 00000000..59071d6f Binary files /dev/null and b/public/textures/mcwbyg/mahogany_whispering_trapdoor.png differ diff --git a/public/textures/mcwbyg/mahogany_window.png b/public/textures/mcwbyg/mahogany_window.png new file mode 100644 index 00000000..8c178d42 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_window.png differ diff --git a/public/textures/mcwbyg/mahogany_window2.png b/public/textures/mcwbyg/mahogany_window2.png new file mode 100644 index 00000000..82234e24 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_window2.png differ diff --git a/public/textures/mcwbyg/mahogany_wired_fence.png b/public/textures/mcwbyg/mahogany_wired_fence.png new file mode 100644 index 00000000..86f957f7 Binary files /dev/null and b/public/textures/mcwbyg/mahogany_wired_fence.png differ diff --git a/public/textures/mcwbyg/maple_attic_roof.png b/public/textures/mcwbyg/maple_attic_roof.png new file mode 100644 index 00000000..63c22b61 Binary files /dev/null and b/public/textures/mcwbyg/maple_attic_roof.png differ diff --git a/public/textures/mcwbyg/maple_bamboo_door.png b/public/textures/mcwbyg/maple_bamboo_door.png new file mode 100644 index 00000000..2e205421 Binary files /dev/null and b/public/textures/mcwbyg/maple_bamboo_door.png differ diff --git a/public/textures/mcwbyg/maple_bamboo_trapdoor.png b/public/textures/mcwbyg/maple_bamboo_trapdoor.png new file mode 100644 index 00000000..c2b2a839 Binary files /dev/null and b/public/textures/mcwbyg/maple_bamboo_trapdoor.png differ diff --git a/public/textures/mcwbyg/maple_bark_glass_door.png b/public/textures/mcwbyg/maple_bark_glass_door.png new file mode 100644 index 00000000..4cb082ed Binary files /dev/null and b/public/textures/mcwbyg/maple_bark_glass_door.png differ diff --git a/public/textures/mcwbyg/maple_bark_trapdoor.png b/public/textures/mcwbyg/maple_bark_trapdoor.png new file mode 100644 index 00000000..04e10af3 Binary files /dev/null and b/public/textures/mcwbyg/maple_bark_trapdoor.png differ diff --git a/public/textures/mcwbyg/maple_barn_door.png b/public/textures/mcwbyg/maple_barn_door.png new file mode 100644 index 00000000..2b48a0e2 Binary files /dev/null and b/public/textures/mcwbyg/maple_barn_door.png differ diff --git a/public/textures/mcwbyg/maple_barn_glass_door.png b/public/textures/mcwbyg/maple_barn_glass_door.png new file mode 100644 index 00000000..d19a9ac5 Binary files /dev/null and b/public/textures/mcwbyg/maple_barn_glass_door.png differ diff --git a/public/textures/mcwbyg/maple_barn_trapdoor.png b/public/textures/mcwbyg/maple_barn_trapdoor.png new file mode 100644 index 00000000..8f1f7691 Binary files /dev/null and b/public/textures/mcwbyg/maple_barn_trapdoor.png differ diff --git a/public/textures/mcwbyg/maple_barred_trapdoor.png b/public/textures/mcwbyg/maple_barred_trapdoor.png new file mode 100644 index 00000000..5a66514f Binary files /dev/null and b/public/textures/mcwbyg/maple_barred_trapdoor.png differ diff --git a/public/textures/mcwbyg/maple_barrel_trapdoor.png b/public/textures/mcwbyg/maple_barrel_trapdoor.png new file mode 100644 index 00000000..a59941fd Binary files /dev/null and b/public/textures/mcwbyg/maple_barrel_trapdoor.png differ diff --git a/public/textures/mcwbyg/maple_beach_door.png b/public/textures/mcwbyg/maple_beach_door.png new file mode 100644 index 00000000..c142f180 Binary files /dev/null and b/public/textures/mcwbyg/maple_beach_door.png differ diff --git a/public/textures/mcwbyg/maple_beach_trapdoor.png b/public/textures/mcwbyg/maple_beach_trapdoor.png new file mode 100644 index 00000000..727488ef Binary files /dev/null and b/public/textures/mcwbyg/maple_beach_trapdoor.png differ diff --git a/public/textures/mcwbyg/maple_blinds.png b/public/textures/mcwbyg/maple_blinds.png new file mode 100644 index 00000000..3680a94e Binary files /dev/null and b/public/textures/mcwbyg/maple_blinds.png differ diff --git a/public/textures/mcwbyg/maple_blossom_trapdoor.png b/public/textures/mcwbyg/maple_blossom_trapdoor.png new file mode 100644 index 00000000..2ff98a9d Binary files /dev/null and b/public/textures/mcwbyg/maple_blossom_trapdoor.png differ diff --git a/public/textures/mcwbyg/maple_bookshelf.png b/public/textures/mcwbyg/maple_bookshelf.png new file mode 100644 index 00000000..b804d9a0 Binary files /dev/null and b/public/textures/mcwbyg/maple_bookshelf.png differ diff --git a/public/textures/mcwbyg/maple_bookshelf_cupboard.png b/public/textures/mcwbyg/maple_bookshelf_cupboard.png new file mode 100644 index 00000000..1e7e5ec6 Binary files /dev/null and b/public/textures/mcwbyg/maple_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/maple_bookshelf_drawer.png b/public/textures/mcwbyg/maple_bookshelf_drawer.png new file mode 100644 index 00000000..90231019 Binary files /dev/null and b/public/textures/mcwbyg/maple_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/maple_bridge_pier.png b/public/textures/mcwbyg/maple_bridge_pier.png new file mode 100644 index 00000000..6df242d0 Binary files /dev/null and b/public/textures/mcwbyg/maple_bridge_pier.png differ diff --git a/public/textures/mcwbyg/maple_chair.png b/public/textures/mcwbyg/maple_chair.png new file mode 100644 index 00000000..c11823a2 Binary files /dev/null and b/public/textures/mcwbyg/maple_chair.png differ diff --git a/public/textures/mcwbyg/maple_classic_door.png b/public/textures/mcwbyg/maple_classic_door.png new file mode 100644 index 00000000..0a574dbd Binary files /dev/null and b/public/textures/mcwbyg/maple_classic_door.png differ diff --git a/public/textures/mcwbyg/maple_classic_trapdoor.png b/public/textures/mcwbyg/maple_classic_trapdoor.png new file mode 100644 index 00000000..ae9a2bd9 Binary files /dev/null and b/public/textures/mcwbyg/maple_classic_trapdoor.png differ diff --git a/public/textures/mcwbyg/maple_coffee_table.png b/public/textures/mcwbyg/maple_coffee_table.png new file mode 100644 index 00000000..990619c1 Binary files /dev/null and b/public/textures/mcwbyg/maple_coffee_table.png differ diff --git a/public/textures/mcwbyg/maple_cottage_door.png b/public/textures/mcwbyg/maple_cottage_door.png new file mode 100644 index 00000000..0804fed4 Binary files /dev/null and b/public/textures/mcwbyg/maple_cottage_door.png differ diff --git a/public/textures/mcwbyg/maple_cottage_trapdoor.png b/public/textures/mcwbyg/maple_cottage_trapdoor.png new file mode 100644 index 00000000..6c30b262 Binary files /dev/null and b/public/textures/mcwbyg/maple_cottage_trapdoor.png differ diff --git a/public/textures/mcwbyg/maple_counter.png b/public/textures/mcwbyg/maple_counter.png new file mode 100644 index 00000000..2f7bf014 Binary files /dev/null and b/public/textures/mcwbyg/maple_counter.png differ diff --git a/public/textures/mcwbyg/maple_covered_desk.png b/public/textures/mcwbyg/maple_covered_desk.png new file mode 100644 index 00000000..dcd21076 Binary files /dev/null and b/public/textures/mcwbyg/maple_covered_desk.png differ diff --git a/public/textures/mcwbyg/maple_cupboard_counter.png b/public/textures/mcwbyg/maple_cupboard_counter.png new file mode 100644 index 00000000..e68ac7d2 Binary files /dev/null and b/public/textures/mcwbyg/maple_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/maple_curtain_rod.png b/public/textures/mcwbyg/maple_curtain_rod.png new file mode 100644 index 00000000..12591ed9 Binary files /dev/null and b/public/textures/mcwbyg/maple_curtain_rod.png differ diff --git a/public/textures/mcwbyg/maple_curved_gate.png b/public/textures/mcwbyg/maple_curved_gate.png new file mode 100644 index 00000000..3ee51ad8 Binary files /dev/null and b/public/textures/mcwbyg/maple_curved_gate.png differ diff --git a/public/textures/mcwbyg/maple_desk.png b/public/textures/mcwbyg/maple_desk.png new file mode 100644 index 00000000..33928588 Binary files /dev/null and b/public/textures/mcwbyg/maple_desk.png differ diff --git a/public/textures/mcwbyg/maple_double_drawer.png b/public/textures/mcwbyg/maple_double_drawer.png new file mode 100644 index 00000000..cf017d0d Binary files /dev/null and b/public/textures/mcwbyg/maple_double_drawer.png differ diff --git a/public/textures/mcwbyg/maple_double_drawer_counter.png b/public/textures/mcwbyg/maple_double_drawer_counter.png new file mode 100644 index 00000000..587d61a2 Binary files /dev/null and b/public/textures/mcwbyg/maple_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/maple_double_kitchen_cabinet.png b/public/textures/mcwbyg/maple_double_kitchen_cabinet.png new file mode 100644 index 00000000..e8e83720 Binary files /dev/null and b/public/textures/mcwbyg/maple_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/maple_double_wardrobe.png b/public/textures/mcwbyg/maple_double_wardrobe.png new file mode 100644 index 00000000..197d68d5 Binary files /dev/null and b/public/textures/mcwbyg/maple_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/maple_drawer.png b/public/textures/mcwbyg/maple_drawer.png new file mode 100644 index 00000000..8ea8b351 Binary files /dev/null and b/public/textures/mcwbyg/maple_drawer.png differ diff --git a/public/textures/mcwbyg/maple_drawer_counter.png b/public/textures/mcwbyg/maple_drawer_counter.png new file mode 100644 index 00000000..8e6b4488 Binary files /dev/null and b/public/textures/mcwbyg/maple_drawer_counter.png differ diff --git a/public/textures/mcwbyg/maple_end_table.png b/public/textures/mcwbyg/maple_end_table.png new file mode 100644 index 00000000..242ae556 Binary files /dev/null and b/public/textures/mcwbyg/maple_end_table.png differ diff --git a/public/textures/mcwbyg/maple_four_panel_door.png b/public/textures/mcwbyg/maple_four_panel_door.png new file mode 100644 index 00000000..c621cc0e Binary files /dev/null and b/public/textures/mcwbyg/maple_four_panel_door.png differ diff --git a/public/textures/mcwbyg/maple_four_panel_trapdoor.png b/public/textures/mcwbyg/maple_four_panel_trapdoor.png new file mode 100644 index 00000000..a079afbb Binary files /dev/null and b/public/textures/mcwbyg/maple_four_panel_trapdoor.png differ diff --git a/public/textures/mcwbyg/maple_four_window.png b/public/textures/mcwbyg/maple_four_window.png new file mode 100644 index 00000000..65d4b93e Binary files /dev/null and b/public/textures/mcwbyg/maple_four_window.png differ diff --git a/public/textures/mcwbyg/maple_glass_door.png b/public/textures/mcwbyg/maple_glass_door.png new file mode 100644 index 00000000..a71fb8b4 Binary files /dev/null and b/public/textures/mcwbyg/maple_glass_door.png differ diff --git a/public/textures/mcwbyg/maple_glass_kitchen_cabinet.png b/public/textures/mcwbyg/maple_glass_kitchen_cabinet.png new file mode 100644 index 00000000..2fda566b Binary files /dev/null and b/public/textures/mcwbyg/maple_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/maple_glass_table.png b/public/textures/mcwbyg/maple_glass_table.png new file mode 100644 index 00000000..1563c548 Binary files /dev/null and b/public/textures/mcwbyg/maple_glass_table.png differ diff --git a/public/textures/mcwbyg/maple_glass_trapdoor.png b/public/textures/mcwbyg/maple_glass_trapdoor.png new file mode 100644 index 00000000..35613531 Binary files /dev/null and b/public/textures/mcwbyg/maple_glass_trapdoor.png differ diff --git a/public/textures/mcwbyg/maple_hedge.png b/public/textures/mcwbyg/maple_hedge.png new file mode 100644 index 00000000..43ec55a2 Binary files /dev/null and b/public/textures/mcwbyg/maple_hedge.png differ diff --git a/public/textures/mcwbyg/maple_highley_gate.png b/public/textures/mcwbyg/maple_highley_gate.png new file mode 100644 index 00000000..6993a130 Binary files /dev/null and b/public/textures/mcwbyg/maple_highley_gate.png differ diff --git a/public/textures/mcwbyg/maple_horse_fence.png b/public/textures/mcwbyg/maple_horse_fence.png new file mode 100644 index 00000000..6976fe1a Binary files /dev/null and b/public/textures/mcwbyg/maple_horse_fence.png differ diff --git a/public/textures/mcwbyg/maple_japanese2_door.png b/public/textures/mcwbyg/maple_japanese2_door.png new file mode 100644 index 00000000..dfcb30cf Binary files /dev/null and b/public/textures/mcwbyg/maple_japanese2_door.png differ diff --git a/public/textures/mcwbyg/maple_japanese_door.png b/public/textures/mcwbyg/maple_japanese_door.png new file mode 100644 index 00000000..4c356a6b Binary files /dev/null and b/public/textures/mcwbyg/maple_japanese_door.png differ diff --git a/public/textures/mcwbyg/maple_kitchen_cabinet.png b/public/textures/mcwbyg/maple_kitchen_cabinet.png new file mode 100644 index 00000000..42513ca0 Binary files /dev/null and b/public/textures/mcwbyg/maple_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/maple_large_drawer.png b/public/textures/mcwbyg/maple_large_drawer.png new file mode 100644 index 00000000..605b9db3 Binary files /dev/null and b/public/textures/mcwbyg/maple_large_drawer.png differ diff --git a/public/textures/mcwbyg/maple_log_bridge_middle.png b/public/textures/mcwbyg/maple_log_bridge_middle.png new file mode 100644 index 00000000..fb4bd9e5 Binary files /dev/null and b/public/textures/mcwbyg/maple_log_bridge_middle.png differ diff --git a/public/textures/mcwbyg/maple_log_bridge_stair.png b/public/textures/mcwbyg/maple_log_bridge_stair.png new file mode 100644 index 00000000..4d3d0b73 Binary files /dev/null and b/public/textures/mcwbyg/maple_log_bridge_stair.png differ diff --git a/public/textures/mcwbyg/maple_log_parapet.png b/public/textures/mcwbyg/maple_log_parapet.png new file mode 100644 index 00000000..6f67805c Binary files /dev/null and b/public/textures/mcwbyg/maple_log_parapet.png differ diff --git a/public/textures/mcwbyg/maple_louvered_shutter.png b/public/textures/mcwbyg/maple_louvered_shutter.png new file mode 100644 index 00000000..e2497f4d Binary files /dev/null and b/public/textures/mcwbyg/maple_louvered_shutter.png differ diff --git a/public/textures/mcwbyg/maple_lower_bookshelf_drawer.png b/public/textures/mcwbyg/maple_lower_bookshelf_drawer.png new file mode 100644 index 00000000..2941491a Binary files /dev/null and b/public/textures/mcwbyg/maple_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/maple_lower_roof.png b/public/textures/mcwbyg/maple_lower_roof.png new file mode 100644 index 00000000..68ca1132 Binary files /dev/null and b/public/textures/mcwbyg/maple_lower_roof.png differ diff --git a/public/textures/mcwbyg/maple_lower_triple_drawer.png b/public/textures/mcwbyg/maple_lower_triple_drawer.png new file mode 100644 index 00000000..08821336 Binary files /dev/null and b/public/textures/mcwbyg/maple_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/maple_modern_chair.png b/public/textures/mcwbyg/maple_modern_chair.png new file mode 100644 index 00000000..9e2eec86 Binary files /dev/null and b/public/textures/mcwbyg/maple_modern_chair.png differ diff --git a/public/textures/mcwbyg/maple_modern_desk.png b/public/textures/mcwbyg/maple_modern_desk.png new file mode 100644 index 00000000..afde8d9f Binary files /dev/null and b/public/textures/mcwbyg/maple_modern_desk.png differ diff --git a/public/textures/mcwbyg/maple_modern_door.png b/public/textures/mcwbyg/maple_modern_door.png new file mode 100644 index 00000000..8bbb6111 Binary files /dev/null and b/public/textures/mcwbyg/maple_modern_door.png differ diff --git a/public/textures/mcwbyg/maple_modern_wardrobe.png b/public/textures/mcwbyg/maple_modern_wardrobe.png new file mode 100644 index 00000000..9d4a859a Binary files /dev/null and b/public/textures/mcwbyg/maple_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/maple_mystic_door.png b/public/textures/mcwbyg/maple_mystic_door.png new file mode 100644 index 00000000..b3681c67 Binary files /dev/null and b/public/textures/mcwbyg/maple_mystic_door.png differ diff --git a/public/textures/mcwbyg/maple_mystic_trapdoor.png b/public/textures/mcwbyg/maple_mystic_trapdoor.png new file mode 100644 index 00000000..b4ed007f Binary files /dev/null and b/public/textures/mcwbyg/maple_mystic_trapdoor.png differ diff --git a/public/textures/mcwbyg/maple_nether_door.png b/public/textures/mcwbyg/maple_nether_door.png new file mode 100644 index 00000000..8aafbdba Binary files /dev/null and b/public/textures/mcwbyg/maple_nether_door.png differ diff --git a/public/textures/mcwbyg/maple_pane_window.png b/public/textures/mcwbyg/maple_pane_window.png new file mode 100644 index 00000000..f16078b6 Binary files /dev/null and b/public/textures/mcwbyg/maple_pane_window.png differ diff --git a/public/textures/mcwbyg/maple_paper_door.png b/public/textures/mcwbyg/maple_paper_door.png new file mode 100644 index 00000000..54305b1c Binary files /dev/null and b/public/textures/mcwbyg/maple_paper_door.png differ diff --git a/public/textures/mcwbyg/maple_paper_trapdoor.png b/public/textures/mcwbyg/maple_paper_trapdoor.png new file mode 100644 index 00000000..ade35629 Binary files /dev/null and b/public/textures/mcwbyg/maple_paper_trapdoor.png differ diff --git a/public/textures/mcwbyg/maple_picket_fence.png b/public/textures/mcwbyg/maple_picket_fence.png new file mode 100644 index 00000000..2ccd6c05 Binary files /dev/null and b/public/textures/mcwbyg/maple_picket_fence.png differ diff --git a/public/textures/mcwbyg/maple_plank_four_window.png b/public/textures/mcwbyg/maple_plank_four_window.png new file mode 100644 index 00000000..064c6271 Binary files /dev/null and b/public/textures/mcwbyg/maple_plank_four_window.png differ diff --git a/public/textures/mcwbyg/maple_plank_pane_window.png b/public/textures/mcwbyg/maple_plank_pane_window.png new file mode 100644 index 00000000..8d2e263b Binary files /dev/null and b/public/textures/mcwbyg/maple_plank_pane_window.png differ diff --git a/public/textures/mcwbyg/maple_plank_parapet.png b/public/textures/mcwbyg/maple_plank_parapet.png new file mode 100644 index 00000000..cb046170 Binary files /dev/null and b/public/textures/mcwbyg/maple_plank_parapet.png differ diff --git a/public/textures/mcwbyg/maple_plank_window.png b/public/textures/mcwbyg/maple_plank_window.png new file mode 100644 index 00000000..614d897e Binary files /dev/null and b/public/textures/mcwbyg/maple_plank_window.png differ diff --git a/public/textures/mcwbyg/maple_plank_window2.png b/public/textures/mcwbyg/maple_plank_window2.png new file mode 100644 index 00000000..79775850 Binary files /dev/null and b/public/textures/mcwbyg/maple_plank_window2.png differ diff --git a/public/textures/mcwbyg/maple_planks_attic_roof.png b/public/textures/mcwbyg/maple_planks_attic_roof.png new file mode 100644 index 00000000..3b7dbc91 Binary files /dev/null and b/public/textures/mcwbyg/maple_planks_attic_roof.png differ diff --git a/public/textures/mcwbyg/maple_planks_lower_roof.png b/public/textures/mcwbyg/maple_planks_lower_roof.png new file mode 100644 index 00000000..da7417e6 Binary files /dev/null and b/public/textures/mcwbyg/maple_planks_lower_roof.png differ diff --git a/public/textures/mcwbyg/maple_planks_path.png b/public/textures/mcwbyg/maple_planks_path.png new file mode 100644 index 00000000..4398652a Binary files /dev/null and b/public/textures/mcwbyg/maple_planks_path.png differ diff --git a/public/textures/mcwbyg/maple_planks_roof.png b/public/textures/mcwbyg/maple_planks_roof.png new file mode 100644 index 00000000..bb9ad7fe Binary files /dev/null and b/public/textures/mcwbyg/maple_planks_roof.png differ diff --git a/public/textures/mcwbyg/maple_planks_steep_roof.png b/public/textures/mcwbyg/maple_planks_steep_roof.png new file mode 100644 index 00000000..3e433118 Binary files /dev/null and b/public/textures/mcwbyg/maple_planks_steep_roof.png differ diff --git a/public/textures/mcwbyg/maple_planks_top_roof.png b/public/textures/mcwbyg/maple_planks_top_roof.png new file mode 100644 index 00000000..3c59116c Binary files /dev/null and b/public/textures/mcwbyg/maple_planks_top_roof.png differ diff --git a/public/textures/mcwbyg/maple_planks_upper_lower_roof.png b/public/textures/mcwbyg/maple_planks_upper_lower_roof.png new file mode 100644 index 00000000..213fc4fb Binary files /dev/null and b/public/textures/mcwbyg/maple_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/maple_planks_upper_steep_roof.png b/public/textures/mcwbyg/maple_planks_upper_steep_roof.png new file mode 100644 index 00000000..734ae17b Binary files /dev/null and b/public/textures/mcwbyg/maple_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/maple_pyramid_gate.png b/public/textures/mcwbyg/maple_pyramid_gate.png new file mode 100644 index 00000000..22f164bb Binary files /dev/null and b/public/textures/mcwbyg/maple_pyramid_gate.png differ diff --git a/public/textures/mcwbyg/maple_rail_bridge.png b/public/textures/mcwbyg/maple_rail_bridge.png new file mode 100644 index 00000000..2fe28192 Binary files /dev/null and b/public/textures/mcwbyg/maple_rail_bridge.png differ diff --git a/public/textures/mcwbyg/maple_ranch_trapdoor.png b/public/textures/mcwbyg/maple_ranch_trapdoor.png new file mode 100644 index 00000000..fa16e94f Binary files /dev/null and b/public/textures/mcwbyg/maple_ranch_trapdoor.png differ diff --git a/public/textures/mcwbyg/maple_roof.png b/public/textures/mcwbyg/maple_roof.png new file mode 100644 index 00000000..ba682a11 Binary files /dev/null and b/public/textures/mcwbyg/maple_roof.png differ diff --git a/public/textures/mcwbyg/maple_rope_bridge_stair.png b/public/textures/mcwbyg/maple_rope_bridge_stair.png new file mode 100644 index 00000000..8658a3d1 Binary files /dev/null and b/public/textures/mcwbyg/maple_rope_bridge_stair.png differ diff --git a/public/textures/mcwbyg/maple_shutter.png b/public/textures/mcwbyg/maple_shutter.png new file mode 100644 index 00000000..d2af0863 Binary files /dev/null and b/public/textures/mcwbyg/maple_shutter.png differ diff --git a/public/textures/mcwbyg/maple_stable_door.png b/public/textures/mcwbyg/maple_stable_door.png new file mode 100644 index 00000000..e3ce30e9 Binary files /dev/null and b/public/textures/mcwbyg/maple_stable_door.png differ diff --git a/public/textures/mcwbyg/maple_stable_head_door.png b/public/textures/mcwbyg/maple_stable_head_door.png new file mode 100644 index 00000000..06ce6b87 Binary files /dev/null and b/public/textures/mcwbyg/maple_stable_head_door.png differ diff --git a/public/textures/mcwbyg/maple_steep_roof.png b/public/textures/mcwbyg/maple_steep_roof.png new file mode 100644 index 00000000..a059e9a3 Binary files /dev/null and b/public/textures/mcwbyg/maple_steep_roof.png differ diff --git a/public/textures/mcwbyg/maple_stockade_fence.png b/public/textures/mcwbyg/maple_stockade_fence.png new file mode 100644 index 00000000..b89c9387 Binary files /dev/null and b/public/textures/mcwbyg/maple_stockade_fence.png differ diff --git a/public/textures/mcwbyg/maple_stool_chair.png b/public/textures/mcwbyg/maple_stool_chair.png new file mode 100644 index 00000000..c72777e2 Binary files /dev/null and b/public/textures/mcwbyg/maple_stool_chair.png differ diff --git a/public/textures/mcwbyg/maple_striped_chair.png b/public/textures/mcwbyg/maple_striped_chair.png new file mode 100644 index 00000000..9de612ba Binary files /dev/null and b/public/textures/mcwbyg/maple_striped_chair.png differ diff --git a/public/textures/mcwbyg/maple_swamp_door.png b/public/textures/mcwbyg/maple_swamp_door.png new file mode 100644 index 00000000..be9381a9 Binary files /dev/null and b/public/textures/mcwbyg/maple_swamp_door.png differ diff --git a/public/textures/mcwbyg/maple_swamp_trapdoor.png b/public/textures/mcwbyg/maple_swamp_trapdoor.png new file mode 100644 index 00000000..86bcd0eb Binary files /dev/null and b/public/textures/mcwbyg/maple_swamp_trapdoor.png differ diff --git a/public/textures/mcwbyg/maple_table.png b/public/textures/mcwbyg/maple_table.png new file mode 100644 index 00000000..a633fc24 Binary files /dev/null and b/public/textures/mcwbyg/maple_table.png differ diff --git a/public/textures/mcwbyg/maple_top_roof.png b/public/textures/mcwbyg/maple_top_roof.png new file mode 100644 index 00000000..9341f677 Binary files /dev/null and b/public/textures/mcwbyg/maple_top_roof.png differ diff --git a/public/textures/mcwbyg/maple_triple_drawer.png b/public/textures/mcwbyg/maple_triple_drawer.png new file mode 100644 index 00000000..9ce0bbab Binary files /dev/null and b/public/textures/mcwbyg/maple_triple_drawer.png differ diff --git a/public/textures/mcwbyg/maple_tropical_door.png b/public/textures/mcwbyg/maple_tropical_door.png new file mode 100644 index 00000000..5e529f64 Binary files /dev/null and b/public/textures/mcwbyg/maple_tropical_door.png differ diff --git a/public/textures/mcwbyg/maple_tropical_trapdoor.png b/public/textures/mcwbyg/maple_tropical_trapdoor.png new file mode 100644 index 00000000..a7b8a3ab Binary files /dev/null and b/public/textures/mcwbyg/maple_tropical_trapdoor.png differ diff --git a/public/textures/mcwbyg/maple_upper_lower_roof.png b/public/textures/mcwbyg/maple_upper_lower_roof.png new file mode 100644 index 00000000..7c6b40ef Binary files /dev/null and b/public/textures/mcwbyg/maple_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/maple_upper_steep_roof.png b/public/textures/mcwbyg/maple_upper_steep_roof.png new file mode 100644 index 00000000..c6a04d78 Binary files /dev/null and b/public/textures/mcwbyg/maple_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/maple_waffle_door.png b/public/textures/mcwbyg/maple_waffle_door.png new file mode 100644 index 00000000..d79228d8 Binary files /dev/null and b/public/textures/mcwbyg/maple_waffle_door.png differ diff --git a/public/textures/mcwbyg/maple_wardrobe.png b/public/textures/mcwbyg/maple_wardrobe.png new file mode 100644 index 00000000..87611afb Binary files /dev/null and b/public/textures/mcwbyg/maple_wardrobe.png differ diff --git a/public/textures/mcwbyg/maple_western_door.png b/public/textures/mcwbyg/maple_western_door.png new file mode 100644 index 00000000..5cdad96f Binary files /dev/null and b/public/textures/mcwbyg/maple_western_door.png differ diff --git a/public/textures/mcwbyg/maple_whispering_door.png b/public/textures/mcwbyg/maple_whispering_door.png new file mode 100644 index 00000000..d0bf2cb0 Binary files /dev/null and b/public/textures/mcwbyg/maple_whispering_door.png differ diff --git a/public/textures/mcwbyg/maple_whispering_trapdoor.png b/public/textures/mcwbyg/maple_whispering_trapdoor.png new file mode 100644 index 00000000..b3c48117 Binary files /dev/null and b/public/textures/mcwbyg/maple_whispering_trapdoor.png differ diff --git a/public/textures/mcwbyg/maple_window.png b/public/textures/mcwbyg/maple_window.png new file mode 100644 index 00000000..ef706e55 Binary files /dev/null and b/public/textures/mcwbyg/maple_window.png differ diff --git a/public/textures/mcwbyg/maple_window2.png b/public/textures/mcwbyg/maple_window2.png new file mode 100644 index 00000000..309b0072 Binary files /dev/null and b/public/textures/mcwbyg/maple_window2.png differ diff --git a/public/textures/mcwbyg/maple_wired_fence.png b/public/textures/mcwbyg/maple_wired_fence.png new file mode 100644 index 00000000..1faca528 Binary files /dev/null and b/public/textures/mcwbyg/maple_wired_fence.png differ diff --git a/public/textures/mcwbyg/modern_black_sandstone_wall.png b/public/textures/mcwbyg/modern_black_sandstone_wall.png new file mode 100644 index 00000000..e4aa0046 Binary files /dev/null and b/public/textures/mcwbyg/modern_black_sandstone_wall.png differ diff --git a/public/textures/mcwbyg/modern_blue_sandstone_wall.png b/public/textures/mcwbyg/modern_blue_sandstone_wall.png new file mode 100644 index 00000000..4122095c Binary files /dev/null and b/public/textures/mcwbyg/modern_blue_sandstone_wall.png differ diff --git a/public/textures/mcwbyg/modern_dacite_bricks_wall.png b/public/textures/mcwbyg/modern_dacite_bricks_wall.png new file mode 100644 index 00000000..d932db47 Binary files /dev/null and b/public/textures/mcwbyg/modern_dacite_bricks_wall.png differ diff --git a/public/textures/mcwbyg/modern_pink_sandstone_wall.png b/public/textures/mcwbyg/modern_pink_sandstone_wall.png new file mode 100644 index 00000000..e46fb375 Binary files /dev/null and b/public/textures/mcwbyg/modern_pink_sandstone_wall.png differ diff --git a/public/textures/mcwbyg/modern_purple_sandstone_wall.png b/public/textures/mcwbyg/modern_purple_sandstone_wall.png new file mode 100644 index 00000000..14a18fc8 Binary files /dev/null and b/public/textures/mcwbyg/modern_purple_sandstone_wall.png differ diff --git a/public/textures/mcwbyg/modern_red_rock_bricks_wall.png b/public/textures/mcwbyg/modern_red_rock_bricks_wall.png new file mode 100644 index 00000000..de524dbf Binary files /dev/null and b/public/textures/mcwbyg/modern_red_rock_bricks_wall.png differ diff --git a/public/textures/mcwbyg/modern_white_sandstone_wall.png b/public/textures/mcwbyg/modern_white_sandstone_wall.png new file mode 100644 index 00000000..2dd319a8 Binary files /dev/null and b/public/textures/mcwbyg/modern_white_sandstone_wall.png differ diff --git a/public/textures/mcwbyg/modern_windswept_sandstone_wall.png b/public/textures/mcwbyg/modern_windswept_sandstone_wall.png new file mode 100644 index 00000000..f5c22ade Binary files /dev/null and b/public/textures/mcwbyg/modern_windswept_sandstone_wall.png differ diff --git a/public/textures/mcwbyg/orange_birch_hedge.png b/public/textures/mcwbyg/orange_birch_hedge.png new file mode 100644 index 00000000..849af7b4 Binary files /dev/null and b/public/textures/mcwbyg/orange_birch_hedge.png differ diff --git a/public/textures/mcwbyg/orange_oak_hedge.png b/public/textures/mcwbyg/orange_oak_hedge.png new file mode 100644 index 00000000..3c15a493 Binary files /dev/null and b/public/textures/mcwbyg/orange_oak_hedge.png differ diff --git a/public/textures/mcwbyg/orange_spruce_hedge.png b/public/textures/mcwbyg/orange_spruce_hedge.png new file mode 100644 index 00000000..1d91505b Binary files /dev/null and b/public/textures/mcwbyg/orange_spruce_hedge.png differ diff --git a/public/textures/mcwbyg/palm_attic_roof.png b/public/textures/mcwbyg/palm_attic_roof.png new file mode 100644 index 00000000..c6e5cc01 Binary files /dev/null and b/public/textures/mcwbyg/palm_attic_roof.png differ diff --git a/public/textures/mcwbyg/palm_bamboo_door.png b/public/textures/mcwbyg/palm_bamboo_door.png new file mode 100644 index 00000000..0c5cb853 Binary files /dev/null and b/public/textures/mcwbyg/palm_bamboo_door.png differ diff --git a/public/textures/mcwbyg/palm_bamboo_trapdoor.png b/public/textures/mcwbyg/palm_bamboo_trapdoor.png new file mode 100644 index 00000000..d9c54be1 Binary files /dev/null and b/public/textures/mcwbyg/palm_bamboo_trapdoor.png differ diff --git a/public/textures/mcwbyg/palm_bark_glass_door.png b/public/textures/mcwbyg/palm_bark_glass_door.png new file mode 100644 index 00000000..9bfcc40b Binary files /dev/null and b/public/textures/mcwbyg/palm_bark_glass_door.png differ diff --git a/public/textures/mcwbyg/palm_bark_trapdoor.png b/public/textures/mcwbyg/palm_bark_trapdoor.png new file mode 100644 index 00000000..27f297ca Binary files /dev/null and b/public/textures/mcwbyg/palm_bark_trapdoor.png differ diff --git a/public/textures/mcwbyg/palm_barn_door.png b/public/textures/mcwbyg/palm_barn_door.png new file mode 100644 index 00000000..f02acc03 Binary files /dev/null and b/public/textures/mcwbyg/palm_barn_door.png differ diff --git a/public/textures/mcwbyg/palm_barn_glass_door.png b/public/textures/mcwbyg/palm_barn_glass_door.png new file mode 100644 index 00000000..cfac1be7 Binary files /dev/null and b/public/textures/mcwbyg/palm_barn_glass_door.png differ diff --git a/public/textures/mcwbyg/palm_barn_trapdoor.png b/public/textures/mcwbyg/palm_barn_trapdoor.png new file mode 100644 index 00000000..572b4f80 Binary files /dev/null and b/public/textures/mcwbyg/palm_barn_trapdoor.png differ diff --git a/public/textures/mcwbyg/palm_barred_trapdoor.png b/public/textures/mcwbyg/palm_barred_trapdoor.png new file mode 100644 index 00000000..88e4b67e Binary files /dev/null and b/public/textures/mcwbyg/palm_barred_trapdoor.png differ diff --git a/public/textures/mcwbyg/palm_barrel_trapdoor.png b/public/textures/mcwbyg/palm_barrel_trapdoor.png new file mode 100644 index 00000000..b3b50927 Binary files /dev/null and b/public/textures/mcwbyg/palm_barrel_trapdoor.png differ diff --git a/public/textures/mcwbyg/palm_beach_door.png b/public/textures/mcwbyg/palm_beach_door.png new file mode 100644 index 00000000..b054c0d1 Binary files /dev/null and b/public/textures/mcwbyg/palm_beach_door.png differ diff --git a/public/textures/mcwbyg/palm_beach_trapdoor.png b/public/textures/mcwbyg/palm_beach_trapdoor.png new file mode 100644 index 00000000..32ea7bef Binary files /dev/null and b/public/textures/mcwbyg/palm_beach_trapdoor.png differ diff --git a/public/textures/mcwbyg/palm_blinds.png b/public/textures/mcwbyg/palm_blinds.png new file mode 100644 index 00000000..ee7e8432 Binary files /dev/null and b/public/textures/mcwbyg/palm_blinds.png differ diff --git a/public/textures/mcwbyg/palm_blossom_trapdoor.png b/public/textures/mcwbyg/palm_blossom_trapdoor.png new file mode 100644 index 00000000..a07b1b10 Binary files /dev/null and b/public/textures/mcwbyg/palm_blossom_trapdoor.png differ diff --git a/public/textures/mcwbyg/palm_bookshelf.png b/public/textures/mcwbyg/palm_bookshelf.png new file mode 100644 index 00000000..00b3df18 Binary files /dev/null and b/public/textures/mcwbyg/palm_bookshelf.png differ diff --git a/public/textures/mcwbyg/palm_bookshelf_cupboard.png b/public/textures/mcwbyg/palm_bookshelf_cupboard.png new file mode 100644 index 00000000..b3e003f8 Binary files /dev/null and b/public/textures/mcwbyg/palm_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/palm_bookshelf_drawer.png b/public/textures/mcwbyg/palm_bookshelf_drawer.png new file mode 100644 index 00000000..855c9e66 Binary files /dev/null and b/public/textures/mcwbyg/palm_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/palm_bridge_pier.png b/public/textures/mcwbyg/palm_bridge_pier.png new file mode 100644 index 00000000..9d062a8d Binary files /dev/null and b/public/textures/mcwbyg/palm_bridge_pier.png differ diff --git a/public/textures/mcwbyg/palm_chair.png b/public/textures/mcwbyg/palm_chair.png new file mode 100644 index 00000000..f37e5a4f Binary files /dev/null and b/public/textures/mcwbyg/palm_chair.png differ diff --git a/public/textures/mcwbyg/palm_classic_door.png b/public/textures/mcwbyg/palm_classic_door.png new file mode 100644 index 00000000..d1b475a5 Binary files /dev/null and b/public/textures/mcwbyg/palm_classic_door.png differ diff --git a/public/textures/mcwbyg/palm_classic_trapdoor.png b/public/textures/mcwbyg/palm_classic_trapdoor.png new file mode 100644 index 00000000..f124b86b Binary files /dev/null and b/public/textures/mcwbyg/palm_classic_trapdoor.png differ diff --git a/public/textures/mcwbyg/palm_coffee_table.png b/public/textures/mcwbyg/palm_coffee_table.png new file mode 100644 index 00000000..26f5533f Binary files /dev/null and b/public/textures/mcwbyg/palm_coffee_table.png differ diff --git a/public/textures/mcwbyg/palm_cottage_door.png b/public/textures/mcwbyg/palm_cottage_door.png new file mode 100644 index 00000000..824b5fc5 Binary files /dev/null and b/public/textures/mcwbyg/palm_cottage_door.png differ diff --git a/public/textures/mcwbyg/palm_cottage_trapdoor.png b/public/textures/mcwbyg/palm_cottage_trapdoor.png new file mode 100644 index 00000000..7bf37b09 Binary files /dev/null and b/public/textures/mcwbyg/palm_cottage_trapdoor.png differ diff --git a/public/textures/mcwbyg/palm_counter.png b/public/textures/mcwbyg/palm_counter.png new file mode 100644 index 00000000..b08bc8d4 Binary files /dev/null and b/public/textures/mcwbyg/palm_counter.png differ diff --git a/public/textures/mcwbyg/palm_covered_desk.png b/public/textures/mcwbyg/palm_covered_desk.png new file mode 100644 index 00000000..278714d7 Binary files /dev/null and b/public/textures/mcwbyg/palm_covered_desk.png differ diff --git a/public/textures/mcwbyg/palm_cupboard_counter.png b/public/textures/mcwbyg/palm_cupboard_counter.png new file mode 100644 index 00000000..62b730d9 Binary files /dev/null and b/public/textures/mcwbyg/palm_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/palm_curtain_rod.png b/public/textures/mcwbyg/palm_curtain_rod.png new file mode 100644 index 00000000..7fc536eb Binary files /dev/null and b/public/textures/mcwbyg/palm_curtain_rod.png differ diff --git a/public/textures/mcwbyg/palm_curved_gate.png b/public/textures/mcwbyg/palm_curved_gate.png new file mode 100644 index 00000000..400047e5 Binary files /dev/null and b/public/textures/mcwbyg/palm_curved_gate.png differ diff --git a/public/textures/mcwbyg/palm_desk.png b/public/textures/mcwbyg/palm_desk.png new file mode 100644 index 00000000..d1ad986d Binary files /dev/null and b/public/textures/mcwbyg/palm_desk.png differ diff --git a/public/textures/mcwbyg/palm_double_drawer.png b/public/textures/mcwbyg/palm_double_drawer.png new file mode 100644 index 00000000..ff425b8a Binary files /dev/null and b/public/textures/mcwbyg/palm_double_drawer.png differ diff --git a/public/textures/mcwbyg/palm_double_drawer_counter.png b/public/textures/mcwbyg/palm_double_drawer_counter.png new file mode 100644 index 00000000..2a3801db Binary files /dev/null and b/public/textures/mcwbyg/palm_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/palm_double_kitchen_cabinet.png b/public/textures/mcwbyg/palm_double_kitchen_cabinet.png new file mode 100644 index 00000000..5a3f4199 Binary files /dev/null and b/public/textures/mcwbyg/palm_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/palm_double_wardrobe.png b/public/textures/mcwbyg/palm_double_wardrobe.png new file mode 100644 index 00000000..b85aff56 Binary files /dev/null and b/public/textures/mcwbyg/palm_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/palm_drawer.png b/public/textures/mcwbyg/palm_drawer.png new file mode 100644 index 00000000..e5a97282 Binary files /dev/null and b/public/textures/mcwbyg/palm_drawer.png differ diff --git a/public/textures/mcwbyg/palm_drawer_counter.png b/public/textures/mcwbyg/palm_drawer_counter.png new file mode 100644 index 00000000..381fcdbe Binary files /dev/null and b/public/textures/mcwbyg/palm_drawer_counter.png differ diff --git a/public/textures/mcwbyg/palm_end_table.png b/public/textures/mcwbyg/palm_end_table.png new file mode 100644 index 00000000..a9e3db0e Binary files /dev/null and b/public/textures/mcwbyg/palm_end_table.png differ diff --git a/public/textures/mcwbyg/palm_four_panel_door.png b/public/textures/mcwbyg/palm_four_panel_door.png new file mode 100644 index 00000000..52eac169 Binary files /dev/null and b/public/textures/mcwbyg/palm_four_panel_door.png differ diff --git a/public/textures/mcwbyg/palm_four_panel_trapdoor.png b/public/textures/mcwbyg/palm_four_panel_trapdoor.png new file mode 100644 index 00000000..8f597421 Binary files /dev/null and b/public/textures/mcwbyg/palm_four_panel_trapdoor.png differ diff --git a/public/textures/mcwbyg/palm_four_window.png b/public/textures/mcwbyg/palm_four_window.png new file mode 100644 index 00000000..bb9a3fc0 Binary files /dev/null and b/public/textures/mcwbyg/palm_four_window.png differ diff --git a/public/textures/mcwbyg/palm_glass_door.png b/public/textures/mcwbyg/palm_glass_door.png new file mode 100644 index 00000000..e2d587e4 Binary files /dev/null and b/public/textures/mcwbyg/palm_glass_door.png differ diff --git a/public/textures/mcwbyg/palm_glass_kitchen_cabinet.png b/public/textures/mcwbyg/palm_glass_kitchen_cabinet.png new file mode 100644 index 00000000..5002c5b0 Binary files /dev/null and b/public/textures/mcwbyg/palm_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/palm_glass_table.png b/public/textures/mcwbyg/palm_glass_table.png new file mode 100644 index 00000000..0e039cae Binary files /dev/null and b/public/textures/mcwbyg/palm_glass_table.png differ diff --git a/public/textures/mcwbyg/palm_glass_trapdoor.png b/public/textures/mcwbyg/palm_glass_trapdoor.png new file mode 100644 index 00000000..f2335a1c Binary files /dev/null and b/public/textures/mcwbyg/palm_glass_trapdoor.png differ diff --git a/public/textures/mcwbyg/palm_hedge.png b/public/textures/mcwbyg/palm_hedge.png new file mode 100644 index 00000000..11cc63e3 Binary files /dev/null and b/public/textures/mcwbyg/palm_hedge.png differ diff --git a/public/textures/mcwbyg/palm_highley_gate.png b/public/textures/mcwbyg/palm_highley_gate.png new file mode 100644 index 00000000..19b670bc Binary files /dev/null and b/public/textures/mcwbyg/palm_highley_gate.png differ diff --git a/public/textures/mcwbyg/palm_horse_fence.png b/public/textures/mcwbyg/palm_horse_fence.png new file mode 100644 index 00000000..16335da1 Binary files /dev/null and b/public/textures/mcwbyg/palm_horse_fence.png differ diff --git a/public/textures/mcwbyg/palm_japanese2_door.png b/public/textures/mcwbyg/palm_japanese2_door.png new file mode 100644 index 00000000..adc7addf Binary files /dev/null and b/public/textures/mcwbyg/palm_japanese2_door.png differ diff --git a/public/textures/mcwbyg/palm_japanese_door.png b/public/textures/mcwbyg/palm_japanese_door.png new file mode 100644 index 00000000..902185c8 Binary files /dev/null and b/public/textures/mcwbyg/palm_japanese_door.png differ diff --git a/public/textures/mcwbyg/palm_kitchen_cabinet.png b/public/textures/mcwbyg/palm_kitchen_cabinet.png new file mode 100644 index 00000000..b57a5fb8 Binary files /dev/null and b/public/textures/mcwbyg/palm_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/palm_large_drawer.png b/public/textures/mcwbyg/palm_large_drawer.png new file mode 100644 index 00000000..695a6673 Binary files /dev/null and b/public/textures/mcwbyg/palm_large_drawer.png differ diff --git a/public/textures/mcwbyg/palm_log_bridge_middle.png b/public/textures/mcwbyg/palm_log_bridge_middle.png new file mode 100644 index 00000000..e5b1df93 Binary files /dev/null and b/public/textures/mcwbyg/palm_log_bridge_middle.png differ diff --git a/public/textures/mcwbyg/palm_log_bridge_stair.png b/public/textures/mcwbyg/palm_log_bridge_stair.png new file mode 100644 index 00000000..7a28ab2b Binary files /dev/null and b/public/textures/mcwbyg/palm_log_bridge_stair.png differ diff --git a/public/textures/mcwbyg/palm_log_parapet.png b/public/textures/mcwbyg/palm_log_parapet.png new file mode 100644 index 00000000..1fcfbdd8 Binary files /dev/null and b/public/textures/mcwbyg/palm_log_parapet.png differ diff --git a/public/textures/mcwbyg/palm_louvered_shutter.png b/public/textures/mcwbyg/palm_louvered_shutter.png new file mode 100644 index 00000000..7d7ddf58 Binary files /dev/null and b/public/textures/mcwbyg/palm_louvered_shutter.png differ diff --git a/public/textures/mcwbyg/palm_lower_bookshelf_drawer.png b/public/textures/mcwbyg/palm_lower_bookshelf_drawer.png new file mode 100644 index 00000000..1b7579fa Binary files /dev/null and b/public/textures/mcwbyg/palm_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/palm_lower_roof.png b/public/textures/mcwbyg/palm_lower_roof.png new file mode 100644 index 00000000..1d1998d7 Binary files /dev/null and b/public/textures/mcwbyg/palm_lower_roof.png differ diff --git a/public/textures/mcwbyg/palm_lower_triple_drawer.png b/public/textures/mcwbyg/palm_lower_triple_drawer.png new file mode 100644 index 00000000..1af9e83b Binary files /dev/null and b/public/textures/mcwbyg/palm_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/palm_modern_chair.png b/public/textures/mcwbyg/palm_modern_chair.png new file mode 100644 index 00000000..3d50b5bf Binary files /dev/null and b/public/textures/mcwbyg/palm_modern_chair.png differ diff --git a/public/textures/mcwbyg/palm_modern_desk.png b/public/textures/mcwbyg/palm_modern_desk.png new file mode 100644 index 00000000..75a9507a Binary files /dev/null and b/public/textures/mcwbyg/palm_modern_desk.png differ diff --git a/public/textures/mcwbyg/palm_modern_door.png b/public/textures/mcwbyg/palm_modern_door.png new file mode 100644 index 00000000..35f7cc78 Binary files /dev/null and b/public/textures/mcwbyg/palm_modern_door.png differ diff --git a/public/textures/mcwbyg/palm_modern_wardrobe.png b/public/textures/mcwbyg/palm_modern_wardrobe.png new file mode 100644 index 00000000..f9ab3b7c Binary files /dev/null and b/public/textures/mcwbyg/palm_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/palm_mystic_door.png b/public/textures/mcwbyg/palm_mystic_door.png new file mode 100644 index 00000000..abb53b66 Binary files /dev/null and b/public/textures/mcwbyg/palm_mystic_door.png differ diff --git a/public/textures/mcwbyg/palm_mystic_trapdoor.png b/public/textures/mcwbyg/palm_mystic_trapdoor.png new file mode 100644 index 00000000..d41e850c Binary files /dev/null and b/public/textures/mcwbyg/palm_mystic_trapdoor.png differ diff --git a/public/textures/mcwbyg/palm_nether_door.png b/public/textures/mcwbyg/palm_nether_door.png new file mode 100644 index 00000000..79c06ac3 Binary files /dev/null and b/public/textures/mcwbyg/palm_nether_door.png differ diff --git a/public/textures/mcwbyg/palm_pane_window.png b/public/textures/mcwbyg/palm_pane_window.png new file mode 100644 index 00000000..e8be9dc7 Binary files /dev/null and b/public/textures/mcwbyg/palm_pane_window.png differ diff --git a/public/textures/mcwbyg/palm_paper_door.png b/public/textures/mcwbyg/palm_paper_door.png new file mode 100644 index 00000000..087e0d11 Binary files /dev/null and b/public/textures/mcwbyg/palm_paper_door.png differ diff --git a/public/textures/mcwbyg/palm_paper_trapdoor.png b/public/textures/mcwbyg/palm_paper_trapdoor.png new file mode 100644 index 00000000..be4788c0 Binary files /dev/null and b/public/textures/mcwbyg/palm_paper_trapdoor.png differ diff --git a/public/textures/mcwbyg/palm_picket_fence.png b/public/textures/mcwbyg/palm_picket_fence.png new file mode 100644 index 00000000..427212e5 Binary files /dev/null and b/public/textures/mcwbyg/palm_picket_fence.png differ diff --git a/public/textures/mcwbyg/palm_plank_four_window.png b/public/textures/mcwbyg/palm_plank_four_window.png new file mode 100644 index 00000000..4467c6ba Binary files /dev/null and b/public/textures/mcwbyg/palm_plank_four_window.png differ diff --git a/public/textures/mcwbyg/palm_plank_pane_window.png b/public/textures/mcwbyg/palm_plank_pane_window.png new file mode 100644 index 00000000..a9f759a2 Binary files /dev/null and b/public/textures/mcwbyg/palm_plank_pane_window.png differ diff --git a/public/textures/mcwbyg/palm_plank_parapet.png b/public/textures/mcwbyg/palm_plank_parapet.png new file mode 100644 index 00000000..2f430c4b Binary files /dev/null and b/public/textures/mcwbyg/palm_plank_parapet.png differ diff --git a/public/textures/mcwbyg/palm_plank_window.png b/public/textures/mcwbyg/palm_plank_window.png new file mode 100644 index 00000000..fdca4a24 Binary files /dev/null and b/public/textures/mcwbyg/palm_plank_window.png differ diff --git a/public/textures/mcwbyg/palm_plank_window2.png b/public/textures/mcwbyg/palm_plank_window2.png new file mode 100644 index 00000000..1c2680ab Binary files /dev/null and b/public/textures/mcwbyg/palm_plank_window2.png differ diff --git a/public/textures/mcwbyg/palm_planks_attic_roof.png b/public/textures/mcwbyg/palm_planks_attic_roof.png new file mode 100644 index 00000000..7dd015ef Binary files /dev/null and b/public/textures/mcwbyg/palm_planks_attic_roof.png differ diff --git a/public/textures/mcwbyg/palm_planks_lower_roof.png b/public/textures/mcwbyg/palm_planks_lower_roof.png new file mode 100644 index 00000000..4ee32e35 Binary files /dev/null and b/public/textures/mcwbyg/palm_planks_lower_roof.png differ diff --git a/public/textures/mcwbyg/palm_planks_path.png b/public/textures/mcwbyg/palm_planks_path.png new file mode 100644 index 00000000..e3c6dc4c Binary files /dev/null and b/public/textures/mcwbyg/palm_planks_path.png differ diff --git a/public/textures/mcwbyg/palm_planks_roof.png b/public/textures/mcwbyg/palm_planks_roof.png new file mode 100644 index 00000000..86ef30bd Binary files /dev/null and b/public/textures/mcwbyg/palm_planks_roof.png differ diff --git a/public/textures/mcwbyg/palm_planks_steep_roof.png b/public/textures/mcwbyg/palm_planks_steep_roof.png new file mode 100644 index 00000000..cd45453c Binary files /dev/null and b/public/textures/mcwbyg/palm_planks_steep_roof.png differ diff --git a/public/textures/mcwbyg/palm_planks_top_roof.png b/public/textures/mcwbyg/palm_planks_top_roof.png new file mode 100644 index 00000000..f663497e Binary files /dev/null and b/public/textures/mcwbyg/palm_planks_top_roof.png differ diff --git a/public/textures/mcwbyg/palm_planks_upper_lower_roof.png b/public/textures/mcwbyg/palm_planks_upper_lower_roof.png new file mode 100644 index 00000000..4cbfc207 Binary files /dev/null and b/public/textures/mcwbyg/palm_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/palm_planks_upper_steep_roof.png b/public/textures/mcwbyg/palm_planks_upper_steep_roof.png new file mode 100644 index 00000000..b00d9b0b Binary files /dev/null and b/public/textures/mcwbyg/palm_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/palm_pyramid_gate.png b/public/textures/mcwbyg/palm_pyramid_gate.png new file mode 100644 index 00000000..b6bf4c4c Binary files /dev/null and b/public/textures/mcwbyg/palm_pyramid_gate.png differ diff --git a/public/textures/mcwbyg/palm_rail_bridge.png b/public/textures/mcwbyg/palm_rail_bridge.png new file mode 100644 index 00000000..3620e9b1 Binary files /dev/null and b/public/textures/mcwbyg/palm_rail_bridge.png differ diff --git a/public/textures/mcwbyg/palm_ranch_trapdoor.png b/public/textures/mcwbyg/palm_ranch_trapdoor.png new file mode 100644 index 00000000..8c35c7f2 Binary files /dev/null and b/public/textures/mcwbyg/palm_ranch_trapdoor.png differ diff --git a/public/textures/mcwbyg/palm_roof.png b/public/textures/mcwbyg/palm_roof.png new file mode 100644 index 00000000..aa6d2713 Binary files /dev/null and b/public/textures/mcwbyg/palm_roof.png differ diff --git a/public/textures/mcwbyg/palm_rope_bridge_stair.png b/public/textures/mcwbyg/palm_rope_bridge_stair.png new file mode 100644 index 00000000..ff28463b Binary files /dev/null and b/public/textures/mcwbyg/palm_rope_bridge_stair.png differ diff --git a/public/textures/mcwbyg/palm_shutter.png b/public/textures/mcwbyg/palm_shutter.png new file mode 100644 index 00000000..4343324d Binary files /dev/null and b/public/textures/mcwbyg/palm_shutter.png differ diff --git a/public/textures/mcwbyg/palm_stable_door.png b/public/textures/mcwbyg/palm_stable_door.png new file mode 100644 index 00000000..056615e0 Binary files /dev/null and b/public/textures/mcwbyg/palm_stable_door.png differ diff --git a/public/textures/mcwbyg/palm_stable_head_door.png b/public/textures/mcwbyg/palm_stable_head_door.png new file mode 100644 index 00000000..8e2f89eb Binary files /dev/null and b/public/textures/mcwbyg/palm_stable_head_door.png differ diff --git a/public/textures/mcwbyg/palm_steep_roof.png b/public/textures/mcwbyg/palm_steep_roof.png new file mode 100644 index 00000000..7c3f31c9 Binary files /dev/null and b/public/textures/mcwbyg/palm_steep_roof.png differ diff --git a/public/textures/mcwbyg/palm_stockade_fence.png b/public/textures/mcwbyg/palm_stockade_fence.png new file mode 100644 index 00000000..a544c048 Binary files /dev/null and b/public/textures/mcwbyg/palm_stockade_fence.png differ diff --git a/public/textures/mcwbyg/palm_stool_chair.png b/public/textures/mcwbyg/palm_stool_chair.png new file mode 100644 index 00000000..8d3c71cc Binary files /dev/null and b/public/textures/mcwbyg/palm_stool_chair.png differ diff --git a/public/textures/mcwbyg/palm_striped_chair.png b/public/textures/mcwbyg/palm_striped_chair.png new file mode 100644 index 00000000..bb9415d1 Binary files /dev/null and b/public/textures/mcwbyg/palm_striped_chair.png differ diff --git a/public/textures/mcwbyg/palm_swamp_door.png b/public/textures/mcwbyg/palm_swamp_door.png new file mode 100644 index 00000000..ab852524 Binary files /dev/null and b/public/textures/mcwbyg/palm_swamp_door.png differ diff --git a/public/textures/mcwbyg/palm_swamp_trapdoor.png b/public/textures/mcwbyg/palm_swamp_trapdoor.png new file mode 100644 index 00000000..d7aafd0d Binary files /dev/null and b/public/textures/mcwbyg/palm_swamp_trapdoor.png differ diff --git a/public/textures/mcwbyg/palm_table.png b/public/textures/mcwbyg/palm_table.png new file mode 100644 index 00000000..bdc32e9a Binary files /dev/null and b/public/textures/mcwbyg/palm_table.png differ diff --git a/public/textures/mcwbyg/palm_top_roof.png b/public/textures/mcwbyg/palm_top_roof.png new file mode 100644 index 00000000..d556101a Binary files /dev/null and b/public/textures/mcwbyg/palm_top_roof.png differ diff --git a/public/textures/mcwbyg/palm_triple_drawer.png b/public/textures/mcwbyg/palm_triple_drawer.png new file mode 100644 index 00000000..4a23ec93 Binary files /dev/null and b/public/textures/mcwbyg/palm_triple_drawer.png differ diff --git a/public/textures/mcwbyg/palm_tropical_door.png b/public/textures/mcwbyg/palm_tropical_door.png new file mode 100644 index 00000000..daa8bab0 Binary files /dev/null and b/public/textures/mcwbyg/palm_tropical_door.png differ diff --git a/public/textures/mcwbyg/palm_tropical_trapdoor.png b/public/textures/mcwbyg/palm_tropical_trapdoor.png new file mode 100644 index 00000000..6e5c1ead Binary files /dev/null and b/public/textures/mcwbyg/palm_tropical_trapdoor.png differ diff --git a/public/textures/mcwbyg/palm_upper_lower_roof.png b/public/textures/mcwbyg/palm_upper_lower_roof.png new file mode 100644 index 00000000..b389ca34 Binary files /dev/null and b/public/textures/mcwbyg/palm_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/palm_upper_steep_roof.png b/public/textures/mcwbyg/palm_upper_steep_roof.png new file mode 100644 index 00000000..0519ce48 Binary files /dev/null and b/public/textures/mcwbyg/palm_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/palm_waffle_door.png b/public/textures/mcwbyg/palm_waffle_door.png new file mode 100644 index 00000000..43470544 Binary files /dev/null and b/public/textures/mcwbyg/palm_waffle_door.png differ diff --git a/public/textures/mcwbyg/palm_wardrobe.png b/public/textures/mcwbyg/palm_wardrobe.png new file mode 100644 index 00000000..68e5a1d1 Binary files /dev/null and b/public/textures/mcwbyg/palm_wardrobe.png differ diff --git a/public/textures/mcwbyg/palm_western_door.png b/public/textures/mcwbyg/palm_western_door.png new file mode 100644 index 00000000..ce44a716 Binary files /dev/null and b/public/textures/mcwbyg/palm_western_door.png differ diff --git a/public/textures/mcwbyg/palm_whispering_door.png b/public/textures/mcwbyg/palm_whispering_door.png new file mode 100644 index 00000000..be3eee14 Binary files /dev/null and b/public/textures/mcwbyg/palm_whispering_door.png differ diff --git a/public/textures/mcwbyg/palm_whispering_trapdoor.png b/public/textures/mcwbyg/palm_whispering_trapdoor.png new file mode 100644 index 00000000..88349302 Binary files /dev/null and b/public/textures/mcwbyg/palm_whispering_trapdoor.png differ diff --git a/public/textures/mcwbyg/palm_window.png b/public/textures/mcwbyg/palm_window.png new file mode 100644 index 00000000..6caaf940 Binary files /dev/null and b/public/textures/mcwbyg/palm_window.png differ diff --git a/public/textures/mcwbyg/palm_window2.png b/public/textures/mcwbyg/palm_window2.png new file mode 100644 index 00000000..764de6dc Binary files /dev/null and b/public/textures/mcwbyg/palm_window2.png differ diff --git a/public/textures/mcwbyg/palm_wired_fence.png b/public/textures/mcwbyg/palm_wired_fence.png new file mode 100644 index 00000000..1b6b70f4 Binary files /dev/null and b/public/textures/mcwbyg/palm_wired_fence.png differ diff --git a/public/textures/mcwbyg/pine_attic_roof.png b/public/textures/mcwbyg/pine_attic_roof.png new file mode 100644 index 00000000..22edbcf8 Binary files /dev/null and b/public/textures/mcwbyg/pine_attic_roof.png differ diff --git a/public/textures/mcwbyg/pine_bamboo_door.png b/public/textures/mcwbyg/pine_bamboo_door.png new file mode 100644 index 00000000..933b4572 Binary files /dev/null and b/public/textures/mcwbyg/pine_bamboo_door.png differ diff --git a/public/textures/mcwbyg/pine_bamboo_trapdoor.png b/public/textures/mcwbyg/pine_bamboo_trapdoor.png new file mode 100644 index 00000000..b32d1210 Binary files /dev/null and b/public/textures/mcwbyg/pine_bamboo_trapdoor.png differ diff --git a/public/textures/mcwbyg/pine_bark_glass_door.png b/public/textures/mcwbyg/pine_bark_glass_door.png new file mode 100644 index 00000000..b9e158a4 Binary files /dev/null and b/public/textures/mcwbyg/pine_bark_glass_door.png differ diff --git a/public/textures/mcwbyg/pine_bark_trapdoor.png b/public/textures/mcwbyg/pine_bark_trapdoor.png new file mode 100644 index 00000000..370a97c3 Binary files /dev/null and b/public/textures/mcwbyg/pine_bark_trapdoor.png differ diff --git a/public/textures/mcwbyg/pine_barn_door.png b/public/textures/mcwbyg/pine_barn_door.png new file mode 100644 index 00000000..bc6b1445 Binary files /dev/null and b/public/textures/mcwbyg/pine_barn_door.png differ diff --git a/public/textures/mcwbyg/pine_barn_glass_door.png b/public/textures/mcwbyg/pine_barn_glass_door.png new file mode 100644 index 00000000..508904aa Binary files /dev/null and b/public/textures/mcwbyg/pine_barn_glass_door.png differ diff --git a/public/textures/mcwbyg/pine_barn_trapdoor.png b/public/textures/mcwbyg/pine_barn_trapdoor.png new file mode 100644 index 00000000..24652574 Binary files /dev/null and b/public/textures/mcwbyg/pine_barn_trapdoor.png differ diff --git a/public/textures/mcwbyg/pine_barred_trapdoor.png b/public/textures/mcwbyg/pine_barred_trapdoor.png new file mode 100644 index 00000000..3e81c459 Binary files /dev/null and b/public/textures/mcwbyg/pine_barred_trapdoor.png differ diff --git a/public/textures/mcwbyg/pine_barrel_trapdoor.png b/public/textures/mcwbyg/pine_barrel_trapdoor.png new file mode 100644 index 00000000..cd302977 Binary files /dev/null and b/public/textures/mcwbyg/pine_barrel_trapdoor.png differ diff --git a/public/textures/mcwbyg/pine_beach_door.png b/public/textures/mcwbyg/pine_beach_door.png new file mode 100644 index 00000000..40631c02 Binary files /dev/null and b/public/textures/mcwbyg/pine_beach_door.png differ diff --git a/public/textures/mcwbyg/pine_beach_trapdoor.png b/public/textures/mcwbyg/pine_beach_trapdoor.png new file mode 100644 index 00000000..cf0cb75e Binary files /dev/null and b/public/textures/mcwbyg/pine_beach_trapdoor.png differ diff --git a/public/textures/mcwbyg/pine_blinds.png b/public/textures/mcwbyg/pine_blinds.png new file mode 100644 index 00000000..d9260fd2 Binary files /dev/null and b/public/textures/mcwbyg/pine_blinds.png differ diff --git a/public/textures/mcwbyg/pine_blossom_trapdoor.png b/public/textures/mcwbyg/pine_blossom_trapdoor.png new file mode 100644 index 00000000..b0e59f6e Binary files /dev/null and b/public/textures/mcwbyg/pine_blossom_trapdoor.png differ diff --git a/public/textures/mcwbyg/pine_bookshelf.png b/public/textures/mcwbyg/pine_bookshelf.png new file mode 100644 index 00000000..e037fd98 Binary files /dev/null and b/public/textures/mcwbyg/pine_bookshelf.png differ diff --git a/public/textures/mcwbyg/pine_bookshelf_cupboard.png b/public/textures/mcwbyg/pine_bookshelf_cupboard.png new file mode 100644 index 00000000..e3a4f983 Binary files /dev/null and b/public/textures/mcwbyg/pine_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/pine_bookshelf_drawer.png b/public/textures/mcwbyg/pine_bookshelf_drawer.png new file mode 100644 index 00000000..18717253 Binary files /dev/null and b/public/textures/mcwbyg/pine_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/pine_bridge_pier.png b/public/textures/mcwbyg/pine_bridge_pier.png new file mode 100644 index 00000000..0b805b9c Binary files /dev/null and b/public/textures/mcwbyg/pine_bridge_pier.png differ diff --git a/public/textures/mcwbyg/pine_chair.png b/public/textures/mcwbyg/pine_chair.png new file mode 100644 index 00000000..63a61fec Binary files /dev/null and b/public/textures/mcwbyg/pine_chair.png differ diff --git a/public/textures/mcwbyg/pine_classic_door.png b/public/textures/mcwbyg/pine_classic_door.png new file mode 100644 index 00000000..959985f9 Binary files /dev/null and b/public/textures/mcwbyg/pine_classic_door.png differ diff --git a/public/textures/mcwbyg/pine_classic_trapdoor.png b/public/textures/mcwbyg/pine_classic_trapdoor.png new file mode 100644 index 00000000..c01ab0a4 Binary files /dev/null and b/public/textures/mcwbyg/pine_classic_trapdoor.png differ diff --git a/public/textures/mcwbyg/pine_coffee_table.png b/public/textures/mcwbyg/pine_coffee_table.png new file mode 100644 index 00000000..cce0a447 Binary files /dev/null and b/public/textures/mcwbyg/pine_coffee_table.png differ diff --git a/public/textures/mcwbyg/pine_cottage_door.png b/public/textures/mcwbyg/pine_cottage_door.png new file mode 100644 index 00000000..65b4e869 Binary files /dev/null and b/public/textures/mcwbyg/pine_cottage_door.png differ diff --git a/public/textures/mcwbyg/pine_cottage_trapdoor.png b/public/textures/mcwbyg/pine_cottage_trapdoor.png new file mode 100644 index 00000000..1fa8d7d6 Binary files /dev/null and b/public/textures/mcwbyg/pine_cottage_trapdoor.png differ diff --git a/public/textures/mcwbyg/pine_counter.png b/public/textures/mcwbyg/pine_counter.png new file mode 100644 index 00000000..1836c8c7 Binary files /dev/null and b/public/textures/mcwbyg/pine_counter.png differ diff --git a/public/textures/mcwbyg/pine_covered_desk.png b/public/textures/mcwbyg/pine_covered_desk.png new file mode 100644 index 00000000..c4466bab Binary files /dev/null and b/public/textures/mcwbyg/pine_covered_desk.png differ diff --git a/public/textures/mcwbyg/pine_cupboard_counter.png b/public/textures/mcwbyg/pine_cupboard_counter.png new file mode 100644 index 00000000..b8fbf241 Binary files /dev/null and b/public/textures/mcwbyg/pine_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/pine_curtain_rod.png b/public/textures/mcwbyg/pine_curtain_rod.png new file mode 100644 index 00000000..c1a67efb Binary files /dev/null and b/public/textures/mcwbyg/pine_curtain_rod.png differ diff --git a/public/textures/mcwbyg/pine_curved_gate.png b/public/textures/mcwbyg/pine_curved_gate.png new file mode 100644 index 00000000..081cb023 Binary files /dev/null and b/public/textures/mcwbyg/pine_curved_gate.png differ diff --git a/public/textures/mcwbyg/pine_desk.png b/public/textures/mcwbyg/pine_desk.png new file mode 100644 index 00000000..c267ad08 Binary files /dev/null and b/public/textures/mcwbyg/pine_desk.png differ diff --git a/public/textures/mcwbyg/pine_double_drawer.png b/public/textures/mcwbyg/pine_double_drawer.png new file mode 100644 index 00000000..ee071529 Binary files /dev/null and b/public/textures/mcwbyg/pine_double_drawer.png differ diff --git a/public/textures/mcwbyg/pine_double_drawer_counter.png b/public/textures/mcwbyg/pine_double_drawer_counter.png new file mode 100644 index 00000000..170d6db8 Binary files /dev/null and b/public/textures/mcwbyg/pine_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/pine_double_kitchen_cabinet.png b/public/textures/mcwbyg/pine_double_kitchen_cabinet.png new file mode 100644 index 00000000..589b9505 Binary files /dev/null and b/public/textures/mcwbyg/pine_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/pine_double_wardrobe.png b/public/textures/mcwbyg/pine_double_wardrobe.png new file mode 100644 index 00000000..1a406473 Binary files /dev/null and b/public/textures/mcwbyg/pine_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/pine_drawer.png b/public/textures/mcwbyg/pine_drawer.png new file mode 100644 index 00000000..1b153fba Binary files /dev/null and b/public/textures/mcwbyg/pine_drawer.png differ diff --git a/public/textures/mcwbyg/pine_drawer_counter.png b/public/textures/mcwbyg/pine_drawer_counter.png new file mode 100644 index 00000000..81d962b6 Binary files /dev/null and b/public/textures/mcwbyg/pine_drawer_counter.png differ diff --git a/public/textures/mcwbyg/pine_end_table.png b/public/textures/mcwbyg/pine_end_table.png new file mode 100644 index 00000000..0dc543f3 Binary files /dev/null and b/public/textures/mcwbyg/pine_end_table.png differ diff --git a/public/textures/mcwbyg/pine_four_panel_door.png b/public/textures/mcwbyg/pine_four_panel_door.png new file mode 100644 index 00000000..cfb747fd Binary files /dev/null and b/public/textures/mcwbyg/pine_four_panel_door.png differ diff --git a/public/textures/mcwbyg/pine_four_panel_trapdoor.png b/public/textures/mcwbyg/pine_four_panel_trapdoor.png new file mode 100644 index 00000000..0ef970ef Binary files /dev/null and b/public/textures/mcwbyg/pine_four_panel_trapdoor.png differ diff --git a/public/textures/mcwbyg/pine_four_window.png b/public/textures/mcwbyg/pine_four_window.png new file mode 100644 index 00000000..b04c03b4 Binary files /dev/null and b/public/textures/mcwbyg/pine_four_window.png differ diff --git a/public/textures/mcwbyg/pine_glass_door.png b/public/textures/mcwbyg/pine_glass_door.png new file mode 100644 index 00000000..c5190b52 Binary files /dev/null and b/public/textures/mcwbyg/pine_glass_door.png differ diff --git a/public/textures/mcwbyg/pine_glass_kitchen_cabinet.png b/public/textures/mcwbyg/pine_glass_kitchen_cabinet.png new file mode 100644 index 00000000..c1da3328 Binary files /dev/null and b/public/textures/mcwbyg/pine_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/pine_glass_table.png b/public/textures/mcwbyg/pine_glass_table.png new file mode 100644 index 00000000..ec91fa08 Binary files /dev/null and b/public/textures/mcwbyg/pine_glass_table.png differ diff --git a/public/textures/mcwbyg/pine_glass_trapdoor.png b/public/textures/mcwbyg/pine_glass_trapdoor.png new file mode 100644 index 00000000..19765038 Binary files /dev/null and b/public/textures/mcwbyg/pine_glass_trapdoor.png differ diff --git a/public/textures/mcwbyg/pine_hedge.png b/public/textures/mcwbyg/pine_hedge.png new file mode 100644 index 00000000..d6f03d0b Binary files /dev/null and b/public/textures/mcwbyg/pine_hedge.png differ diff --git a/public/textures/mcwbyg/pine_highley_gate.png b/public/textures/mcwbyg/pine_highley_gate.png new file mode 100644 index 00000000..0bbd3aeb Binary files /dev/null and b/public/textures/mcwbyg/pine_highley_gate.png differ diff --git a/public/textures/mcwbyg/pine_horse_fence.png b/public/textures/mcwbyg/pine_horse_fence.png new file mode 100644 index 00000000..3955f4e9 Binary files /dev/null and b/public/textures/mcwbyg/pine_horse_fence.png differ diff --git a/public/textures/mcwbyg/pine_japanese2_door.png b/public/textures/mcwbyg/pine_japanese2_door.png new file mode 100644 index 00000000..226fa261 Binary files /dev/null and b/public/textures/mcwbyg/pine_japanese2_door.png differ diff --git a/public/textures/mcwbyg/pine_japanese_door.png b/public/textures/mcwbyg/pine_japanese_door.png new file mode 100644 index 00000000..b7c86c37 Binary files /dev/null and b/public/textures/mcwbyg/pine_japanese_door.png differ diff --git a/public/textures/mcwbyg/pine_kitchen_cabinet.png b/public/textures/mcwbyg/pine_kitchen_cabinet.png new file mode 100644 index 00000000..49beb294 Binary files /dev/null and b/public/textures/mcwbyg/pine_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/pine_large_drawer.png b/public/textures/mcwbyg/pine_large_drawer.png new file mode 100644 index 00000000..4fd8e00d Binary files /dev/null and b/public/textures/mcwbyg/pine_large_drawer.png differ diff --git a/public/textures/mcwbyg/pine_log_bridge_middle.png b/public/textures/mcwbyg/pine_log_bridge_middle.png new file mode 100644 index 00000000..e03e6264 Binary files /dev/null and b/public/textures/mcwbyg/pine_log_bridge_middle.png differ diff --git a/public/textures/mcwbyg/pine_log_bridge_stair.png b/public/textures/mcwbyg/pine_log_bridge_stair.png new file mode 100644 index 00000000..a565bc86 Binary files /dev/null and b/public/textures/mcwbyg/pine_log_bridge_stair.png differ diff --git a/public/textures/mcwbyg/pine_log_parapet.png b/public/textures/mcwbyg/pine_log_parapet.png new file mode 100644 index 00000000..b264cff7 Binary files /dev/null and b/public/textures/mcwbyg/pine_log_parapet.png differ diff --git a/public/textures/mcwbyg/pine_louvered_shutter.png b/public/textures/mcwbyg/pine_louvered_shutter.png new file mode 100644 index 00000000..82a91603 Binary files /dev/null and b/public/textures/mcwbyg/pine_louvered_shutter.png differ diff --git a/public/textures/mcwbyg/pine_lower_bookshelf_drawer.png b/public/textures/mcwbyg/pine_lower_bookshelf_drawer.png new file mode 100644 index 00000000..521809e3 Binary files /dev/null and b/public/textures/mcwbyg/pine_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/pine_lower_roof.png b/public/textures/mcwbyg/pine_lower_roof.png new file mode 100644 index 00000000..fcde4031 Binary files /dev/null and b/public/textures/mcwbyg/pine_lower_roof.png differ diff --git a/public/textures/mcwbyg/pine_lower_triple_drawer.png b/public/textures/mcwbyg/pine_lower_triple_drawer.png new file mode 100644 index 00000000..639d6fea Binary files /dev/null and b/public/textures/mcwbyg/pine_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/pine_modern_chair.png b/public/textures/mcwbyg/pine_modern_chair.png new file mode 100644 index 00000000..1b732c49 Binary files /dev/null and b/public/textures/mcwbyg/pine_modern_chair.png differ diff --git a/public/textures/mcwbyg/pine_modern_desk.png b/public/textures/mcwbyg/pine_modern_desk.png new file mode 100644 index 00000000..b578bdb7 Binary files /dev/null and b/public/textures/mcwbyg/pine_modern_desk.png differ diff --git a/public/textures/mcwbyg/pine_modern_door.png b/public/textures/mcwbyg/pine_modern_door.png new file mode 100644 index 00000000..76ce253d Binary files /dev/null and b/public/textures/mcwbyg/pine_modern_door.png differ diff --git a/public/textures/mcwbyg/pine_modern_wardrobe.png b/public/textures/mcwbyg/pine_modern_wardrobe.png new file mode 100644 index 00000000..85774e66 Binary files /dev/null and b/public/textures/mcwbyg/pine_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/pine_mystic_door.png b/public/textures/mcwbyg/pine_mystic_door.png new file mode 100644 index 00000000..206ecdde Binary files /dev/null and b/public/textures/mcwbyg/pine_mystic_door.png differ diff --git a/public/textures/mcwbyg/pine_mystic_trapdoor.png b/public/textures/mcwbyg/pine_mystic_trapdoor.png new file mode 100644 index 00000000..3208247a Binary files /dev/null and b/public/textures/mcwbyg/pine_mystic_trapdoor.png differ diff --git a/public/textures/mcwbyg/pine_nether_door.png b/public/textures/mcwbyg/pine_nether_door.png new file mode 100644 index 00000000..682ed449 Binary files /dev/null and b/public/textures/mcwbyg/pine_nether_door.png differ diff --git a/public/textures/mcwbyg/pine_pane_window.png b/public/textures/mcwbyg/pine_pane_window.png new file mode 100644 index 00000000..ba55f0d8 Binary files /dev/null and b/public/textures/mcwbyg/pine_pane_window.png differ diff --git a/public/textures/mcwbyg/pine_paper_door.png b/public/textures/mcwbyg/pine_paper_door.png new file mode 100644 index 00000000..1a637c78 Binary files /dev/null and b/public/textures/mcwbyg/pine_paper_door.png differ diff --git a/public/textures/mcwbyg/pine_paper_trapdoor.png b/public/textures/mcwbyg/pine_paper_trapdoor.png new file mode 100644 index 00000000..707a25e4 Binary files /dev/null and b/public/textures/mcwbyg/pine_paper_trapdoor.png differ diff --git a/public/textures/mcwbyg/pine_picket_fence.png b/public/textures/mcwbyg/pine_picket_fence.png new file mode 100644 index 00000000..2577bfeb Binary files /dev/null and b/public/textures/mcwbyg/pine_picket_fence.png differ diff --git a/public/textures/mcwbyg/pine_plank_four_window.png b/public/textures/mcwbyg/pine_plank_four_window.png new file mode 100644 index 00000000..821fc79a Binary files /dev/null and b/public/textures/mcwbyg/pine_plank_four_window.png differ diff --git a/public/textures/mcwbyg/pine_plank_pane_window.png b/public/textures/mcwbyg/pine_plank_pane_window.png new file mode 100644 index 00000000..297cbb0c Binary files /dev/null and b/public/textures/mcwbyg/pine_plank_pane_window.png differ diff --git a/public/textures/mcwbyg/pine_plank_parapet.png b/public/textures/mcwbyg/pine_plank_parapet.png new file mode 100644 index 00000000..e2a0167a Binary files /dev/null and b/public/textures/mcwbyg/pine_plank_parapet.png differ diff --git a/public/textures/mcwbyg/pine_plank_window.png b/public/textures/mcwbyg/pine_plank_window.png new file mode 100644 index 00000000..bf27446c Binary files /dev/null and b/public/textures/mcwbyg/pine_plank_window.png differ diff --git a/public/textures/mcwbyg/pine_plank_window2.png b/public/textures/mcwbyg/pine_plank_window2.png new file mode 100644 index 00000000..dc7b331d Binary files /dev/null and b/public/textures/mcwbyg/pine_plank_window2.png differ diff --git a/public/textures/mcwbyg/pine_planks_attic_roof.png b/public/textures/mcwbyg/pine_planks_attic_roof.png new file mode 100644 index 00000000..85e6cb2a Binary files /dev/null and b/public/textures/mcwbyg/pine_planks_attic_roof.png differ diff --git a/public/textures/mcwbyg/pine_planks_lower_roof.png b/public/textures/mcwbyg/pine_planks_lower_roof.png new file mode 100644 index 00000000..6c90d4f7 Binary files /dev/null and b/public/textures/mcwbyg/pine_planks_lower_roof.png differ diff --git a/public/textures/mcwbyg/pine_planks_path.png b/public/textures/mcwbyg/pine_planks_path.png new file mode 100644 index 00000000..c347b667 Binary files /dev/null and b/public/textures/mcwbyg/pine_planks_path.png differ diff --git a/public/textures/mcwbyg/pine_planks_roof.png b/public/textures/mcwbyg/pine_planks_roof.png new file mode 100644 index 00000000..07b8caa0 Binary files /dev/null and b/public/textures/mcwbyg/pine_planks_roof.png differ diff --git a/public/textures/mcwbyg/pine_planks_steep_roof.png b/public/textures/mcwbyg/pine_planks_steep_roof.png new file mode 100644 index 00000000..2dbdfe7e Binary files /dev/null and b/public/textures/mcwbyg/pine_planks_steep_roof.png differ diff --git a/public/textures/mcwbyg/pine_planks_top_roof.png b/public/textures/mcwbyg/pine_planks_top_roof.png new file mode 100644 index 00000000..81036e5e Binary files /dev/null and b/public/textures/mcwbyg/pine_planks_top_roof.png differ diff --git a/public/textures/mcwbyg/pine_planks_upper_lower_roof.png b/public/textures/mcwbyg/pine_planks_upper_lower_roof.png new file mode 100644 index 00000000..f061246b Binary files /dev/null and b/public/textures/mcwbyg/pine_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/pine_planks_upper_steep_roof.png b/public/textures/mcwbyg/pine_planks_upper_steep_roof.png new file mode 100644 index 00000000..0711ce08 Binary files /dev/null and b/public/textures/mcwbyg/pine_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/pine_pyramid_gate.png b/public/textures/mcwbyg/pine_pyramid_gate.png new file mode 100644 index 00000000..55f27d16 Binary files /dev/null and b/public/textures/mcwbyg/pine_pyramid_gate.png differ diff --git a/public/textures/mcwbyg/pine_rail_bridge.png b/public/textures/mcwbyg/pine_rail_bridge.png new file mode 100644 index 00000000..28f2865a Binary files /dev/null and b/public/textures/mcwbyg/pine_rail_bridge.png differ diff --git a/public/textures/mcwbyg/pine_ranch_trapdoor.png b/public/textures/mcwbyg/pine_ranch_trapdoor.png new file mode 100644 index 00000000..b8309cf8 Binary files /dev/null and b/public/textures/mcwbyg/pine_ranch_trapdoor.png differ diff --git a/public/textures/mcwbyg/pine_roof.png b/public/textures/mcwbyg/pine_roof.png new file mode 100644 index 00000000..7f3a78aa Binary files /dev/null and b/public/textures/mcwbyg/pine_roof.png differ diff --git a/public/textures/mcwbyg/pine_rope_bridge_stair.png b/public/textures/mcwbyg/pine_rope_bridge_stair.png new file mode 100644 index 00000000..daee97c8 Binary files /dev/null and b/public/textures/mcwbyg/pine_rope_bridge_stair.png differ diff --git a/public/textures/mcwbyg/pine_shutter.png b/public/textures/mcwbyg/pine_shutter.png new file mode 100644 index 00000000..1d3474e3 Binary files /dev/null and b/public/textures/mcwbyg/pine_shutter.png differ diff --git a/public/textures/mcwbyg/pine_stable_door.png b/public/textures/mcwbyg/pine_stable_door.png new file mode 100644 index 00000000..94ed2ac2 Binary files /dev/null and b/public/textures/mcwbyg/pine_stable_door.png differ diff --git a/public/textures/mcwbyg/pine_stable_head_door.png b/public/textures/mcwbyg/pine_stable_head_door.png new file mode 100644 index 00000000..987f68ba Binary files /dev/null and b/public/textures/mcwbyg/pine_stable_head_door.png differ diff --git a/public/textures/mcwbyg/pine_steep_roof.png b/public/textures/mcwbyg/pine_steep_roof.png new file mode 100644 index 00000000..ce093fdf Binary files /dev/null and b/public/textures/mcwbyg/pine_steep_roof.png differ diff --git a/public/textures/mcwbyg/pine_stockade_fence.png b/public/textures/mcwbyg/pine_stockade_fence.png new file mode 100644 index 00000000..04060383 Binary files /dev/null and b/public/textures/mcwbyg/pine_stockade_fence.png differ diff --git a/public/textures/mcwbyg/pine_stool_chair.png b/public/textures/mcwbyg/pine_stool_chair.png new file mode 100644 index 00000000..0c343fb1 Binary files /dev/null and b/public/textures/mcwbyg/pine_stool_chair.png differ diff --git a/public/textures/mcwbyg/pine_striped_chair.png b/public/textures/mcwbyg/pine_striped_chair.png new file mode 100644 index 00000000..c3d458ad Binary files /dev/null and b/public/textures/mcwbyg/pine_striped_chair.png differ diff --git a/public/textures/mcwbyg/pine_swamp_door.png b/public/textures/mcwbyg/pine_swamp_door.png new file mode 100644 index 00000000..35ea39b9 Binary files /dev/null and b/public/textures/mcwbyg/pine_swamp_door.png differ diff --git a/public/textures/mcwbyg/pine_swamp_trapdoor.png b/public/textures/mcwbyg/pine_swamp_trapdoor.png new file mode 100644 index 00000000..4f4f3055 Binary files /dev/null and b/public/textures/mcwbyg/pine_swamp_trapdoor.png differ diff --git a/public/textures/mcwbyg/pine_table.png b/public/textures/mcwbyg/pine_table.png new file mode 100644 index 00000000..0edb9f2d Binary files /dev/null and b/public/textures/mcwbyg/pine_table.png differ diff --git a/public/textures/mcwbyg/pine_top_roof.png b/public/textures/mcwbyg/pine_top_roof.png new file mode 100644 index 00000000..de93c343 Binary files /dev/null and b/public/textures/mcwbyg/pine_top_roof.png differ diff --git a/public/textures/mcwbyg/pine_triple_drawer.png b/public/textures/mcwbyg/pine_triple_drawer.png new file mode 100644 index 00000000..4f946b9b Binary files /dev/null and b/public/textures/mcwbyg/pine_triple_drawer.png differ diff --git a/public/textures/mcwbyg/pine_tropical_door.png b/public/textures/mcwbyg/pine_tropical_door.png new file mode 100644 index 00000000..eaa0d50a Binary files /dev/null and b/public/textures/mcwbyg/pine_tropical_door.png differ diff --git a/public/textures/mcwbyg/pine_tropical_trapdoor.png b/public/textures/mcwbyg/pine_tropical_trapdoor.png new file mode 100644 index 00000000..05a27aba Binary files /dev/null and b/public/textures/mcwbyg/pine_tropical_trapdoor.png differ diff --git a/public/textures/mcwbyg/pine_upper_lower_roof.png b/public/textures/mcwbyg/pine_upper_lower_roof.png new file mode 100644 index 00000000..78980630 Binary files /dev/null and b/public/textures/mcwbyg/pine_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/pine_upper_steep_roof.png b/public/textures/mcwbyg/pine_upper_steep_roof.png new file mode 100644 index 00000000..7fe1aa4a Binary files /dev/null and b/public/textures/mcwbyg/pine_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/pine_waffle_door.png b/public/textures/mcwbyg/pine_waffle_door.png new file mode 100644 index 00000000..05bc1617 Binary files /dev/null and b/public/textures/mcwbyg/pine_waffle_door.png differ diff --git a/public/textures/mcwbyg/pine_wardrobe.png b/public/textures/mcwbyg/pine_wardrobe.png new file mode 100644 index 00000000..720fac23 Binary files /dev/null and b/public/textures/mcwbyg/pine_wardrobe.png differ diff --git a/public/textures/mcwbyg/pine_western_door.png b/public/textures/mcwbyg/pine_western_door.png new file mode 100644 index 00000000..62cb1922 Binary files /dev/null and b/public/textures/mcwbyg/pine_western_door.png differ diff --git a/public/textures/mcwbyg/pine_whispering_door.png b/public/textures/mcwbyg/pine_whispering_door.png new file mode 100644 index 00000000..bac3b8d6 Binary files /dev/null and b/public/textures/mcwbyg/pine_whispering_door.png differ diff --git a/public/textures/mcwbyg/pine_whispering_trapdoor.png b/public/textures/mcwbyg/pine_whispering_trapdoor.png new file mode 100644 index 00000000..37cdbb68 Binary files /dev/null and b/public/textures/mcwbyg/pine_whispering_trapdoor.png differ diff --git a/public/textures/mcwbyg/pine_window.png b/public/textures/mcwbyg/pine_window.png new file mode 100644 index 00000000..178e42fd Binary files /dev/null and b/public/textures/mcwbyg/pine_window.png differ diff --git a/public/textures/mcwbyg/pine_window2.png b/public/textures/mcwbyg/pine_window2.png new file mode 100644 index 00000000..c4b214af Binary files /dev/null and b/public/textures/mcwbyg/pine_window2.png differ diff --git a/public/textures/mcwbyg/pine_wired_fence.png b/public/textures/mcwbyg/pine_wired_fence.png new file mode 100644 index 00000000..04ab82dc Binary files /dev/null and b/public/textures/mcwbyg/pine_wired_fence.png differ diff --git a/public/textures/mcwbyg/pink_sandstone_attic_roof.png b/public/textures/mcwbyg/pink_sandstone_attic_roof.png new file mode 100644 index 00000000..dc07cbc2 Binary files /dev/null and b/public/textures/mcwbyg/pink_sandstone_attic_roof.png differ diff --git a/public/textures/mcwbyg/pink_sandstone_bridge.png b/public/textures/mcwbyg/pink_sandstone_bridge.png new file mode 100644 index 00000000..747fca0c Binary files /dev/null and b/public/textures/mcwbyg/pink_sandstone_bridge.png differ diff --git a/public/textures/mcwbyg/pink_sandstone_bridge_pier.png b/public/textures/mcwbyg/pink_sandstone_bridge_pier.png new file mode 100644 index 00000000..b18f8de1 Binary files /dev/null and b/public/textures/mcwbyg/pink_sandstone_bridge_pier.png differ diff --git a/public/textures/mcwbyg/pink_sandstone_bridge_stair.png b/public/textures/mcwbyg/pink_sandstone_bridge_stair.png new file mode 100644 index 00000000..ff87ac51 Binary files /dev/null and b/public/textures/mcwbyg/pink_sandstone_bridge_stair.png differ diff --git a/public/textures/mcwbyg/pink_sandstone_grass_topped_wall.png b/public/textures/mcwbyg/pink_sandstone_grass_topped_wall.png new file mode 100644 index 00000000..fce53304 Binary files /dev/null and b/public/textures/mcwbyg/pink_sandstone_grass_topped_wall.png differ diff --git a/public/textures/mcwbyg/pink_sandstone_lower_roof.png b/public/textures/mcwbyg/pink_sandstone_lower_roof.png new file mode 100644 index 00000000..ffe58b33 Binary files /dev/null and b/public/textures/mcwbyg/pink_sandstone_lower_roof.png differ diff --git a/public/textures/mcwbyg/pink_sandstone_pillar_wall.png b/public/textures/mcwbyg/pink_sandstone_pillar_wall.png new file mode 100644 index 00000000..4f7c1b9b Binary files /dev/null and b/public/textures/mcwbyg/pink_sandstone_pillar_wall.png differ diff --git a/public/textures/mcwbyg/pink_sandstone_railing_gate.png b/public/textures/mcwbyg/pink_sandstone_railing_gate.png new file mode 100644 index 00000000..f1d950d9 Binary files /dev/null and b/public/textures/mcwbyg/pink_sandstone_railing_gate.png differ diff --git a/public/textures/mcwbyg/pink_sandstone_roof.png b/public/textures/mcwbyg/pink_sandstone_roof.png new file mode 100644 index 00000000..b0a3c02c Binary files /dev/null and b/public/textures/mcwbyg/pink_sandstone_roof.png differ diff --git a/public/textures/mcwbyg/pink_sandstone_steep_roof.png b/public/textures/mcwbyg/pink_sandstone_steep_roof.png new file mode 100644 index 00000000..b2796f01 Binary files /dev/null and b/public/textures/mcwbyg/pink_sandstone_steep_roof.png differ diff --git a/public/textures/mcwbyg/pink_sandstone_top_roof.png b/public/textures/mcwbyg/pink_sandstone_top_roof.png new file mode 100644 index 00000000..7c0c3f5e Binary files /dev/null and b/public/textures/mcwbyg/pink_sandstone_top_roof.png differ diff --git a/public/textures/mcwbyg/pink_sandstone_upper_lower_roof.png b/public/textures/mcwbyg/pink_sandstone_upper_lower_roof.png new file mode 100644 index 00000000..e02ce365 Binary files /dev/null and b/public/textures/mcwbyg/pink_sandstone_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/pink_sandstone_upper_steep_roof.png b/public/textures/mcwbyg/pink_sandstone_upper_steep_roof.png new file mode 100644 index 00000000..4751ec3a Binary files /dev/null and b/public/textures/mcwbyg/pink_sandstone_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/purple_sandstone_attic_roof.png b/public/textures/mcwbyg/purple_sandstone_attic_roof.png new file mode 100644 index 00000000..10430cb1 Binary files /dev/null and b/public/textures/mcwbyg/purple_sandstone_attic_roof.png differ diff --git a/public/textures/mcwbyg/purple_sandstone_bridge.png b/public/textures/mcwbyg/purple_sandstone_bridge.png new file mode 100644 index 00000000..687306c1 Binary files /dev/null and b/public/textures/mcwbyg/purple_sandstone_bridge.png differ diff --git a/public/textures/mcwbyg/purple_sandstone_bridge_pier.png b/public/textures/mcwbyg/purple_sandstone_bridge_pier.png new file mode 100644 index 00000000..682f2f43 Binary files /dev/null and b/public/textures/mcwbyg/purple_sandstone_bridge_pier.png differ diff --git a/public/textures/mcwbyg/purple_sandstone_bridge_stair.png b/public/textures/mcwbyg/purple_sandstone_bridge_stair.png new file mode 100644 index 00000000..2c423c96 Binary files /dev/null and b/public/textures/mcwbyg/purple_sandstone_bridge_stair.png differ diff --git a/public/textures/mcwbyg/purple_sandstone_grass_topped_wall.png b/public/textures/mcwbyg/purple_sandstone_grass_topped_wall.png new file mode 100644 index 00000000..a70873d8 Binary files /dev/null and b/public/textures/mcwbyg/purple_sandstone_grass_topped_wall.png differ diff --git a/public/textures/mcwbyg/purple_sandstone_lower_roof.png b/public/textures/mcwbyg/purple_sandstone_lower_roof.png new file mode 100644 index 00000000..f2c4689d Binary files /dev/null and b/public/textures/mcwbyg/purple_sandstone_lower_roof.png differ diff --git a/public/textures/mcwbyg/purple_sandstone_pillar_wall.png b/public/textures/mcwbyg/purple_sandstone_pillar_wall.png new file mode 100644 index 00000000..a78d25f9 Binary files /dev/null and b/public/textures/mcwbyg/purple_sandstone_pillar_wall.png differ diff --git a/public/textures/mcwbyg/purple_sandstone_railing_gate.png b/public/textures/mcwbyg/purple_sandstone_railing_gate.png new file mode 100644 index 00000000..6430a6b0 Binary files /dev/null and b/public/textures/mcwbyg/purple_sandstone_railing_gate.png differ diff --git a/public/textures/mcwbyg/purple_sandstone_roof.png b/public/textures/mcwbyg/purple_sandstone_roof.png new file mode 100644 index 00000000..ab8d29a3 Binary files /dev/null and b/public/textures/mcwbyg/purple_sandstone_roof.png differ diff --git a/public/textures/mcwbyg/purple_sandstone_steep_roof.png b/public/textures/mcwbyg/purple_sandstone_steep_roof.png new file mode 100644 index 00000000..3bd559a5 Binary files /dev/null and b/public/textures/mcwbyg/purple_sandstone_steep_roof.png differ diff --git a/public/textures/mcwbyg/purple_sandstone_top_roof.png b/public/textures/mcwbyg/purple_sandstone_top_roof.png new file mode 100644 index 00000000..42308250 Binary files /dev/null and b/public/textures/mcwbyg/purple_sandstone_top_roof.png differ diff --git a/public/textures/mcwbyg/purple_sandstone_upper_lower_roof.png b/public/textures/mcwbyg/purple_sandstone_upper_lower_roof.png new file mode 100644 index 00000000..1841fa98 Binary files /dev/null and b/public/textures/mcwbyg/purple_sandstone_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/purple_sandstone_upper_steep_roof.png b/public/textures/mcwbyg/purple_sandstone_upper_steep_roof.png new file mode 100644 index 00000000..e2e2bf25 Binary files /dev/null and b/public/textures/mcwbyg/purple_sandstone_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/railing_black_sandstone_wall.png b/public/textures/mcwbyg/railing_black_sandstone_wall.png new file mode 100644 index 00000000..bcf4ea56 Binary files /dev/null and b/public/textures/mcwbyg/railing_black_sandstone_wall.png differ diff --git a/public/textures/mcwbyg/railing_blue_sandstone_wall.png b/public/textures/mcwbyg/railing_blue_sandstone_wall.png new file mode 100644 index 00000000..1d5bd301 Binary files /dev/null and b/public/textures/mcwbyg/railing_blue_sandstone_wall.png differ diff --git a/public/textures/mcwbyg/railing_dacite_bricks_wall.png b/public/textures/mcwbyg/railing_dacite_bricks_wall.png new file mode 100644 index 00000000..8d0559d8 Binary files /dev/null and b/public/textures/mcwbyg/railing_dacite_bricks_wall.png differ diff --git a/public/textures/mcwbyg/railing_pink_sandstone_wall.png b/public/textures/mcwbyg/railing_pink_sandstone_wall.png new file mode 100644 index 00000000..d453acbd Binary files /dev/null and b/public/textures/mcwbyg/railing_pink_sandstone_wall.png differ diff --git a/public/textures/mcwbyg/railing_purple_sandstone_wall.png b/public/textures/mcwbyg/railing_purple_sandstone_wall.png new file mode 100644 index 00000000..1aa0e295 Binary files /dev/null and b/public/textures/mcwbyg/railing_purple_sandstone_wall.png differ diff --git a/public/textures/mcwbyg/railing_red_rock_bricks_wall.png b/public/textures/mcwbyg/railing_red_rock_bricks_wall.png new file mode 100644 index 00000000..fb27e987 Binary files /dev/null and b/public/textures/mcwbyg/railing_red_rock_bricks_wall.png differ diff --git a/public/textures/mcwbyg/railing_white_sandstone_wall.png b/public/textures/mcwbyg/railing_white_sandstone_wall.png new file mode 100644 index 00000000..c93cfbae Binary files /dev/null and b/public/textures/mcwbyg/railing_white_sandstone_wall.png differ diff --git a/public/textures/mcwbyg/railing_windswept_sandstone_wall.png b/public/textures/mcwbyg/railing_windswept_sandstone_wall.png new file mode 100644 index 00000000..b984aa52 Binary files /dev/null and b/public/textures/mcwbyg/railing_windswept_sandstone_wall.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_attic_roof.png b/public/textures/mcwbyg/rainbow_eucalyptus_attic_roof.png new file mode 100644 index 00000000..4551b966 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_attic_roof.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_bamboo_door.png b/public/textures/mcwbyg/rainbow_eucalyptus_bamboo_door.png new file mode 100644 index 00000000..19a42965 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_bamboo_door.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_bamboo_trapdoor.png b/public/textures/mcwbyg/rainbow_eucalyptus_bamboo_trapdoor.png new file mode 100644 index 00000000..15220b59 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_bamboo_trapdoor.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_bark_glass_door.png b/public/textures/mcwbyg/rainbow_eucalyptus_bark_glass_door.png new file mode 100644 index 00000000..9372b635 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_bark_glass_door.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_bark_trapdoor.png b/public/textures/mcwbyg/rainbow_eucalyptus_bark_trapdoor.png new file mode 100644 index 00000000..3890c3e3 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_bark_trapdoor.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_barn_door.png b/public/textures/mcwbyg/rainbow_eucalyptus_barn_door.png new file mode 100644 index 00000000..c5c6a490 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_barn_door.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_barn_glass_door.png b/public/textures/mcwbyg/rainbow_eucalyptus_barn_glass_door.png new file mode 100644 index 00000000..6ee36599 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_barn_glass_door.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_barn_trapdoor.png b/public/textures/mcwbyg/rainbow_eucalyptus_barn_trapdoor.png new file mode 100644 index 00000000..be94db34 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_barn_trapdoor.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_barred_trapdoor.png b/public/textures/mcwbyg/rainbow_eucalyptus_barred_trapdoor.png new file mode 100644 index 00000000..62641f29 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_barred_trapdoor.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_barrel_trapdoor.png b/public/textures/mcwbyg/rainbow_eucalyptus_barrel_trapdoor.png new file mode 100644 index 00000000..c0d8c12e Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_barrel_trapdoor.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_beach_door.png b/public/textures/mcwbyg/rainbow_eucalyptus_beach_door.png new file mode 100644 index 00000000..912ceeac Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_beach_door.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_beach_trapdoor.png b/public/textures/mcwbyg/rainbow_eucalyptus_beach_trapdoor.png new file mode 100644 index 00000000..1e0ae31d Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_beach_trapdoor.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_blinds.png b/public/textures/mcwbyg/rainbow_eucalyptus_blinds.png new file mode 100644 index 00000000..e5342cb6 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_blinds.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_blossom_trapdoor.png b/public/textures/mcwbyg/rainbow_eucalyptus_blossom_trapdoor.png new file mode 100644 index 00000000..963987d2 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_blossom_trapdoor.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_bookshelf.png b/public/textures/mcwbyg/rainbow_eucalyptus_bookshelf.png new file mode 100644 index 00000000..3bf9ed1b Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_bookshelf.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_bookshelf_cupboard.png b/public/textures/mcwbyg/rainbow_eucalyptus_bookshelf_cupboard.png new file mode 100644 index 00000000..e26b7b4f Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_bookshelf_drawer.png b/public/textures/mcwbyg/rainbow_eucalyptus_bookshelf_drawer.png new file mode 100644 index 00000000..797ed047 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_bridge_pier.png b/public/textures/mcwbyg/rainbow_eucalyptus_bridge_pier.png new file mode 100644 index 00000000..850b173e Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_bridge_pier.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_chair.png b/public/textures/mcwbyg/rainbow_eucalyptus_chair.png new file mode 100644 index 00000000..008c6eda Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_chair.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_classic_door.png b/public/textures/mcwbyg/rainbow_eucalyptus_classic_door.png new file mode 100644 index 00000000..3d1216f5 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_classic_door.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_classic_trapdoor.png b/public/textures/mcwbyg/rainbow_eucalyptus_classic_trapdoor.png new file mode 100644 index 00000000..8bcdd372 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_classic_trapdoor.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_coffee_table.png b/public/textures/mcwbyg/rainbow_eucalyptus_coffee_table.png new file mode 100644 index 00000000..96112e38 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_coffee_table.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_cottage_door.png b/public/textures/mcwbyg/rainbow_eucalyptus_cottage_door.png new file mode 100644 index 00000000..43cfb9f3 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_cottage_door.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_cottage_trapdoor.png b/public/textures/mcwbyg/rainbow_eucalyptus_cottage_trapdoor.png new file mode 100644 index 00000000..c2e42454 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_cottage_trapdoor.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_counter.png b/public/textures/mcwbyg/rainbow_eucalyptus_counter.png new file mode 100644 index 00000000..f5603c65 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_counter.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_covered_desk.png b/public/textures/mcwbyg/rainbow_eucalyptus_covered_desk.png new file mode 100644 index 00000000..e97b7e1e Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_covered_desk.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_cupboard_counter.png b/public/textures/mcwbyg/rainbow_eucalyptus_cupboard_counter.png new file mode 100644 index 00000000..6c6e2173 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_curtain_rod.png b/public/textures/mcwbyg/rainbow_eucalyptus_curtain_rod.png new file mode 100644 index 00000000..ecd3baca Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_curtain_rod.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_curved_gate.png b/public/textures/mcwbyg/rainbow_eucalyptus_curved_gate.png new file mode 100644 index 00000000..03d22dec Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_curved_gate.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_desk.png b/public/textures/mcwbyg/rainbow_eucalyptus_desk.png new file mode 100644 index 00000000..2105cc87 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_desk.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_double_drawer.png b/public/textures/mcwbyg/rainbow_eucalyptus_double_drawer.png new file mode 100644 index 00000000..561dfb24 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_double_drawer.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_double_drawer_counter.png b/public/textures/mcwbyg/rainbow_eucalyptus_double_drawer_counter.png new file mode 100644 index 00000000..97c06989 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_double_kitchen_cabinet.png b/public/textures/mcwbyg/rainbow_eucalyptus_double_kitchen_cabinet.png new file mode 100644 index 00000000..6b1ff878 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_double_wardrobe.png b/public/textures/mcwbyg/rainbow_eucalyptus_double_wardrobe.png new file mode 100644 index 00000000..182ae50d Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_drawer.png b/public/textures/mcwbyg/rainbow_eucalyptus_drawer.png new file mode 100644 index 00000000..b2b01247 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_drawer.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_drawer_counter.png b/public/textures/mcwbyg/rainbow_eucalyptus_drawer_counter.png new file mode 100644 index 00000000..45dc2dfd Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_drawer_counter.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_end_table.png b/public/textures/mcwbyg/rainbow_eucalyptus_end_table.png new file mode 100644 index 00000000..e32191a8 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_end_table.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_four_panel_door.png b/public/textures/mcwbyg/rainbow_eucalyptus_four_panel_door.png new file mode 100644 index 00000000..a80d762e Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_four_panel_door.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_four_panel_trapdoor.png b/public/textures/mcwbyg/rainbow_eucalyptus_four_panel_trapdoor.png new file mode 100644 index 00000000..2b8d9412 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_four_panel_trapdoor.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_four_window.png b/public/textures/mcwbyg/rainbow_eucalyptus_four_window.png new file mode 100644 index 00000000..f633ff50 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_four_window.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_glass_door.png b/public/textures/mcwbyg/rainbow_eucalyptus_glass_door.png new file mode 100644 index 00000000..af9cdff1 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_glass_door.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_glass_kitchen_cabinet.png b/public/textures/mcwbyg/rainbow_eucalyptus_glass_kitchen_cabinet.png new file mode 100644 index 00000000..2175e3a1 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_glass_table.png b/public/textures/mcwbyg/rainbow_eucalyptus_glass_table.png new file mode 100644 index 00000000..cb750e59 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_glass_table.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_glass_trapdoor.png b/public/textures/mcwbyg/rainbow_eucalyptus_glass_trapdoor.png new file mode 100644 index 00000000..041d8880 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_glass_trapdoor.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_hedge.png b/public/textures/mcwbyg/rainbow_eucalyptus_hedge.png new file mode 100644 index 00000000..76436c67 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_hedge.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_highley_gate.png b/public/textures/mcwbyg/rainbow_eucalyptus_highley_gate.png new file mode 100644 index 00000000..79a02dac Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_highley_gate.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_horse_fence.png b/public/textures/mcwbyg/rainbow_eucalyptus_horse_fence.png new file mode 100644 index 00000000..36bf0281 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_horse_fence.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_japanese2_door.png b/public/textures/mcwbyg/rainbow_eucalyptus_japanese2_door.png new file mode 100644 index 00000000..801126f4 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_japanese2_door.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_japanese_door.png b/public/textures/mcwbyg/rainbow_eucalyptus_japanese_door.png new file mode 100644 index 00000000..b94ce3df Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_japanese_door.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_kitchen_cabinet.png b/public/textures/mcwbyg/rainbow_eucalyptus_kitchen_cabinet.png new file mode 100644 index 00000000..e3824477 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_large_drawer.png b/public/textures/mcwbyg/rainbow_eucalyptus_large_drawer.png new file mode 100644 index 00000000..6fb977f1 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_large_drawer.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_log_bridge_middle.png b/public/textures/mcwbyg/rainbow_eucalyptus_log_bridge_middle.png new file mode 100644 index 00000000..fedf6374 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_log_bridge_middle.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_log_bridge_stair.png b/public/textures/mcwbyg/rainbow_eucalyptus_log_bridge_stair.png new file mode 100644 index 00000000..0f8e6b77 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_log_bridge_stair.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_log_parapet.png b/public/textures/mcwbyg/rainbow_eucalyptus_log_parapet.png new file mode 100644 index 00000000..5ed66557 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_log_parapet.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_louvered_shutter.png b/public/textures/mcwbyg/rainbow_eucalyptus_louvered_shutter.png new file mode 100644 index 00000000..a79f44b2 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_louvered_shutter.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_lower_bookshelf_drawer.png b/public/textures/mcwbyg/rainbow_eucalyptus_lower_bookshelf_drawer.png new file mode 100644 index 00000000..7fd23bb5 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_lower_roof.png b/public/textures/mcwbyg/rainbow_eucalyptus_lower_roof.png new file mode 100644 index 00000000..e666dc1e Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_lower_roof.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_lower_triple_drawer.png b/public/textures/mcwbyg/rainbow_eucalyptus_lower_triple_drawer.png new file mode 100644 index 00000000..70c44896 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_modern_chair.png b/public/textures/mcwbyg/rainbow_eucalyptus_modern_chair.png new file mode 100644 index 00000000..1298d905 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_modern_chair.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_modern_desk.png b/public/textures/mcwbyg/rainbow_eucalyptus_modern_desk.png new file mode 100644 index 00000000..5ed94480 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_modern_desk.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_modern_door.png b/public/textures/mcwbyg/rainbow_eucalyptus_modern_door.png new file mode 100644 index 00000000..aa8bfb3d Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_modern_door.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_modern_wardrobe.png b/public/textures/mcwbyg/rainbow_eucalyptus_modern_wardrobe.png new file mode 100644 index 00000000..d8b69ad3 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_mystic_door.png b/public/textures/mcwbyg/rainbow_eucalyptus_mystic_door.png new file mode 100644 index 00000000..6cc4280c Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_mystic_door.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_mystic_trapdoor.png b/public/textures/mcwbyg/rainbow_eucalyptus_mystic_trapdoor.png new file mode 100644 index 00000000..f0934d50 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_mystic_trapdoor.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_nether_door.png b/public/textures/mcwbyg/rainbow_eucalyptus_nether_door.png new file mode 100644 index 00000000..f2bd8a38 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_nether_door.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_pane_window.png b/public/textures/mcwbyg/rainbow_eucalyptus_pane_window.png new file mode 100644 index 00000000..f09d60fa Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_pane_window.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_paper_door.png b/public/textures/mcwbyg/rainbow_eucalyptus_paper_door.png new file mode 100644 index 00000000..b5f8b07d Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_paper_door.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_paper_trapdoor.png b/public/textures/mcwbyg/rainbow_eucalyptus_paper_trapdoor.png new file mode 100644 index 00000000..3a6c9853 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_paper_trapdoor.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_picket_fence.png b/public/textures/mcwbyg/rainbow_eucalyptus_picket_fence.png new file mode 100644 index 00000000..fc26ee45 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_picket_fence.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_plank_four_window.png b/public/textures/mcwbyg/rainbow_eucalyptus_plank_four_window.png new file mode 100644 index 00000000..c32885d1 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_plank_four_window.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_plank_pane_window.png b/public/textures/mcwbyg/rainbow_eucalyptus_plank_pane_window.png new file mode 100644 index 00000000..90e9102a Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_plank_pane_window.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_plank_parapet.png b/public/textures/mcwbyg/rainbow_eucalyptus_plank_parapet.png new file mode 100644 index 00000000..1db909eb Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_plank_parapet.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_plank_window.png b/public/textures/mcwbyg/rainbow_eucalyptus_plank_window.png new file mode 100644 index 00000000..292d565b Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_plank_window.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_plank_window2.png b/public/textures/mcwbyg/rainbow_eucalyptus_plank_window2.png new file mode 100644 index 00000000..dd9ceea7 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_plank_window2.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_planks_attic_roof.png b/public/textures/mcwbyg/rainbow_eucalyptus_planks_attic_roof.png new file mode 100644 index 00000000..47f4e0fe Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_planks_attic_roof.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_planks_lower_roof.png b/public/textures/mcwbyg/rainbow_eucalyptus_planks_lower_roof.png new file mode 100644 index 00000000..37094350 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_planks_lower_roof.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_planks_path.png b/public/textures/mcwbyg/rainbow_eucalyptus_planks_path.png new file mode 100644 index 00000000..9e548a79 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_planks_path.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_planks_roof.png b/public/textures/mcwbyg/rainbow_eucalyptus_planks_roof.png new file mode 100644 index 00000000..b57c361c Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_planks_roof.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_planks_steep_roof.png b/public/textures/mcwbyg/rainbow_eucalyptus_planks_steep_roof.png new file mode 100644 index 00000000..d203c63f Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_planks_steep_roof.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_planks_top_roof.png b/public/textures/mcwbyg/rainbow_eucalyptus_planks_top_roof.png new file mode 100644 index 00000000..9fd92e3b Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_planks_top_roof.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_planks_upper_lower_roof.png b/public/textures/mcwbyg/rainbow_eucalyptus_planks_upper_lower_roof.png new file mode 100644 index 00000000..5547c865 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_planks_upper_steep_roof.png b/public/textures/mcwbyg/rainbow_eucalyptus_planks_upper_steep_roof.png new file mode 100644 index 00000000..1e71501b Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_pyramid_gate.png b/public/textures/mcwbyg/rainbow_eucalyptus_pyramid_gate.png new file mode 100644 index 00000000..7d23737d Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_pyramid_gate.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_rail_bridge.png b/public/textures/mcwbyg/rainbow_eucalyptus_rail_bridge.png new file mode 100644 index 00000000..051f1a0f Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_rail_bridge.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_ranch_trapdoor.png b/public/textures/mcwbyg/rainbow_eucalyptus_ranch_trapdoor.png new file mode 100644 index 00000000..0f4637e6 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_ranch_trapdoor.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_roof.png b/public/textures/mcwbyg/rainbow_eucalyptus_roof.png new file mode 100644 index 00000000..11700715 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_roof.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_rope_bridge_stair.png b/public/textures/mcwbyg/rainbow_eucalyptus_rope_bridge_stair.png new file mode 100644 index 00000000..ca652cd8 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_rope_bridge_stair.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_shutter.png b/public/textures/mcwbyg/rainbow_eucalyptus_shutter.png new file mode 100644 index 00000000..d2df2263 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_shutter.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_stable_door.png b/public/textures/mcwbyg/rainbow_eucalyptus_stable_door.png new file mode 100644 index 00000000..63084717 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_stable_door.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_stable_head_door.png b/public/textures/mcwbyg/rainbow_eucalyptus_stable_head_door.png new file mode 100644 index 00000000..60ba0b27 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_stable_head_door.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_steep_roof.png b/public/textures/mcwbyg/rainbow_eucalyptus_steep_roof.png new file mode 100644 index 00000000..88b6ee31 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_steep_roof.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_stockade_fence.png b/public/textures/mcwbyg/rainbow_eucalyptus_stockade_fence.png new file mode 100644 index 00000000..2ed38434 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_stockade_fence.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_stool_chair.png b/public/textures/mcwbyg/rainbow_eucalyptus_stool_chair.png new file mode 100644 index 00000000..ab52f067 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_stool_chair.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_striped_chair.png b/public/textures/mcwbyg/rainbow_eucalyptus_striped_chair.png new file mode 100644 index 00000000..85aea5dd Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_striped_chair.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_swamp_door.png b/public/textures/mcwbyg/rainbow_eucalyptus_swamp_door.png new file mode 100644 index 00000000..a6339e2e Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_swamp_door.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_swamp_trapdoor.png b/public/textures/mcwbyg/rainbow_eucalyptus_swamp_trapdoor.png new file mode 100644 index 00000000..14e876d1 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_swamp_trapdoor.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_table.png b/public/textures/mcwbyg/rainbow_eucalyptus_table.png new file mode 100644 index 00000000..edf2c37e Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_table.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_top_roof.png b/public/textures/mcwbyg/rainbow_eucalyptus_top_roof.png new file mode 100644 index 00000000..2d1f68b6 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_top_roof.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_triple_drawer.png b/public/textures/mcwbyg/rainbow_eucalyptus_triple_drawer.png new file mode 100644 index 00000000..feff9a56 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_triple_drawer.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_tropical_door.png b/public/textures/mcwbyg/rainbow_eucalyptus_tropical_door.png new file mode 100644 index 00000000..72c66eaf Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_tropical_door.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_tropical_trapdoor.png b/public/textures/mcwbyg/rainbow_eucalyptus_tropical_trapdoor.png new file mode 100644 index 00000000..0cf83a3d Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_tropical_trapdoor.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_upper_lower_roof.png b/public/textures/mcwbyg/rainbow_eucalyptus_upper_lower_roof.png new file mode 100644 index 00000000..f0ecf875 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_upper_steep_roof.png b/public/textures/mcwbyg/rainbow_eucalyptus_upper_steep_roof.png new file mode 100644 index 00000000..f86012a0 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_waffle_door.png b/public/textures/mcwbyg/rainbow_eucalyptus_waffle_door.png new file mode 100644 index 00000000..4c27c4bf Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_waffle_door.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_wardrobe.png b/public/textures/mcwbyg/rainbow_eucalyptus_wardrobe.png new file mode 100644 index 00000000..a853937b Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_wardrobe.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_western_door.png b/public/textures/mcwbyg/rainbow_eucalyptus_western_door.png new file mode 100644 index 00000000..c86079cc Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_western_door.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_whispering_door.png b/public/textures/mcwbyg/rainbow_eucalyptus_whispering_door.png new file mode 100644 index 00000000..109f7805 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_whispering_door.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_whispering_trapdoor.png b/public/textures/mcwbyg/rainbow_eucalyptus_whispering_trapdoor.png new file mode 100644 index 00000000..870fd112 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_whispering_trapdoor.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_window.png b/public/textures/mcwbyg/rainbow_eucalyptus_window.png new file mode 100644 index 00000000..b2e49b1b Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_window.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_window2.png b/public/textures/mcwbyg/rainbow_eucalyptus_window2.png new file mode 100644 index 00000000..48693cb9 Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_window2.png differ diff --git a/public/textures/mcwbyg/rainbow_eucalyptus_wired_fence.png b/public/textures/mcwbyg/rainbow_eucalyptus_wired_fence.png new file mode 100644 index 00000000..b67c5d0e Binary files /dev/null and b/public/textures/mcwbyg/rainbow_eucalyptus_wired_fence.png differ diff --git a/public/textures/mcwbyg/red_birch_hedge.png b/public/textures/mcwbyg/red_birch_hedge.png new file mode 100644 index 00000000..12a34aec Binary files /dev/null and b/public/textures/mcwbyg/red_birch_hedge.png differ diff --git a/public/textures/mcwbyg/red_maple_hedge.png b/public/textures/mcwbyg/red_maple_hedge.png new file mode 100644 index 00000000..aff58054 Binary files /dev/null and b/public/textures/mcwbyg/red_maple_hedge.png differ diff --git a/public/textures/mcwbyg/red_oak_hedge.png b/public/textures/mcwbyg/red_oak_hedge.png new file mode 100644 index 00000000..0a63e1f5 Binary files /dev/null and b/public/textures/mcwbyg/red_oak_hedge.png differ diff --git a/public/textures/mcwbyg/red_rock_bricks_attic_roof.png b/public/textures/mcwbyg/red_rock_bricks_attic_roof.png new file mode 100644 index 00000000..363e5db6 Binary files /dev/null and b/public/textures/mcwbyg/red_rock_bricks_attic_roof.png differ diff --git a/public/textures/mcwbyg/red_rock_bricks_bridge.png b/public/textures/mcwbyg/red_rock_bricks_bridge.png new file mode 100644 index 00000000..55ccb51b Binary files /dev/null and b/public/textures/mcwbyg/red_rock_bricks_bridge.png differ diff --git a/public/textures/mcwbyg/red_rock_bricks_bridge_pier.png b/public/textures/mcwbyg/red_rock_bricks_bridge_pier.png new file mode 100644 index 00000000..5d281b4a Binary files /dev/null and b/public/textures/mcwbyg/red_rock_bricks_bridge_pier.png differ diff --git a/public/textures/mcwbyg/red_rock_bricks_bridge_stair.png b/public/textures/mcwbyg/red_rock_bricks_bridge_stair.png new file mode 100644 index 00000000..320a23c9 Binary files /dev/null and b/public/textures/mcwbyg/red_rock_bricks_bridge_stair.png differ diff --git a/public/textures/mcwbyg/red_rock_bricks_grass_topped_wall.png b/public/textures/mcwbyg/red_rock_bricks_grass_topped_wall.png new file mode 100644 index 00000000..22913300 Binary files /dev/null and b/public/textures/mcwbyg/red_rock_bricks_grass_topped_wall.png differ diff --git a/public/textures/mcwbyg/red_rock_bricks_lower_roof.png b/public/textures/mcwbyg/red_rock_bricks_lower_roof.png new file mode 100644 index 00000000..b7c1297e Binary files /dev/null and b/public/textures/mcwbyg/red_rock_bricks_lower_roof.png differ diff --git a/public/textures/mcwbyg/red_rock_bricks_pillar_wall.png b/public/textures/mcwbyg/red_rock_bricks_pillar_wall.png new file mode 100644 index 00000000..d2265e75 Binary files /dev/null and b/public/textures/mcwbyg/red_rock_bricks_pillar_wall.png differ diff --git a/public/textures/mcwbyg/red_rock_bricks_railing_gate.png b/public/textures/mcwbyg/red_rock_bricks_railing_gate.png new file mode 100644 index 00000000..07996c6d Binary files /dev/null and b/public/textures/mcwbyg/red_rock_bricks_railing_gate.png differ diff --git a/public/textures/mcwbyg/red_rock_bricks_roof.png b/public/textures/mcwbyg/red_rock_bricks_roof.png new file mode 100644 index 00000000..7dedcd68 Binary files /dev/null and b/public/textures/mcwbyg/red_rock_bricks_roof.png differ diff --git a/public/textures/mcwbyg/red_rock_bricks_steep_roof.png b/public/textures/mcwbyg/red_rock_bricks_steep_roof.png new file mode 100644 index 00000000..31e46bdd Binary files /dev/null and b/public/textures/mcwbyg/red_rock_bricks_steep_roof.png differ diff --git a/public/textures/mcwbyg/red_rock_bricks_top_roof.png b/public/textures/mcwbyg/red_rock_bricks_top_roof.png new file mode 100644 index 00000000..717975f1 Binary files /dev/null and b/public/textures/mcwbyg/red_rock_bricks_top_roof.png differ diff --git a/public/textures/mcwbyg/red_rock_bricks_upper_lower_roof.png b/public/textures/mcwbyg/red_rock_bricks_upper_lower_roof.png new file mode 100644 index 00000000..6c00ab96 Binary files /dev/null and b/public/textures/mcwbyg/red_rock_bricks_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/red_rock_bricks_upper_steep_roof.png b/public/textures/mcwbyg/red_rock_bricks_upper_steep_roof.png new file mode 100644 index 00000000..fb3f6f3c Binary files /dev/null and b/public/textures/mcwbyg/red_rock_bricks_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/red_spruce_hedge.png b/public/textures/mcwbyg/red_spruce_hedge.png new file mode 100644 index 00000000..149a196c Binary files /dev/null and b/public/textures/mcwbyg/red_spruce_hedge.png differ diff --git a/public/textures/mcwbyg/redwood_attic_roof.png b/public/textures/mcwbyg/redwood_attic_roof.png new file mode 100644 index 00000000..6a34d672 Binary files /dev/null and b/public/textures/mcwbyg/redwood_attic_roof.png differ diff --git a/public/textures/mcwbyg/redwood_bamboo_door.png b/public/textures/mcwbyg/redwood_bamboo_door.png new file mode 100644 index 00000000..71682e7b Binary files /dev/null and b/public/textures/mcwbyg/redwood_bamboo_door.png differ diff --git a/public/textures/mcwbyg/redwood_bamboo_trapdoor.png b/public/textures/mcwbyg/redwood_bamboo_trapdoor.png new file mode 100644 index 00000000..512184b5 Binary files /dev/null and b/public/textures/mcwbyg/redwood_bamboo_trapdoor.png differ diff --git a/public/textures/mcwbyg/redwood_bark_glass_door.png b/public/textures/mcwbyg/redwood_bark_glass_door.png new file mode 100644 index 00000000..a67f6d83 Binary files /dev/null and b/public/textures/mcwbyg/redwood_bark_glass_door.png differ diff --git a/public/textures/mcwbyg/redwood_bark_trapdoor.png b/public/textures/mcwbyg/redwood_bark_trapdoor.png new file mode 100644 index 00000000..55479400 Binary files /dev/null and b/public/textures/mcwbyg/redwood_bark_trapdoor.png differ diff --git a/public/textures/mcwbyg/redwood_barn_door.png b/public/textures/mcwbyg/redwood_barn_door.png new file mode 100644 index 00000000..b5ca39fe Binary files /dev/null and b/public/textures/mcwbyg/redwood_barn_door.png differ diff --git a/public/textures/mcwbyg/redwood_barn_glass_door.png b/public/textures/mcwbyg/redwood_barn_glass_door.png new file mode 100644 index 00000000..4f4ce881 Binary files /dev/null and b/public/textures/mcwbyg/redwood_barn_glass_door.png differ diff --git a/public/textures/mcwbyg/redwood_barn_trapdoor.png b/public/textures/mcwbyg/redwood_barn_trapdoor.png new file mode 100644 index 00000000..a9ecf1f0 Binary files /dev/null and b/public/textures/mcwbyg/redwood_barn_trapdoor.png differ diff --git a/public/textures/mcwbyg/redwood_barred_trapdoor.png b/public/textures/mcwbyg/redwood_barred_trapdoor.png new file mode 100644 index 00000000..b6b9607c Binary files /dev/null and b/public/textures/mcwbyg/redwood_barred_trapdoor.png differ diff --git a/public/textures/mcwbyg/redwood_barrel_trapdoor.png b/public/textures/mcwbyg/redwood_barrel_trapdoor.png new file mode 100644 index 00000000..bb6e2d5b Binary files /dev/null and b/public/textures/mcwbyg/redwood_barrel_trapdoor.png differ diff --git a/public/textures/mcwbyg/redwood_beach_door.png b/public/textures/mcwbyg/redwood_beach_door.png new file mode 100644 index 00000000..76b277a3 Binary files /dev/null and b/public/textures/mcwbyg/redwood_beach_door.png differ diff --git a/public/textures/mcwbyg/redwood_beach_trapdoor.png b/public/textures/mcwbyg/redwood_beach_trapdoor.png new file mode 100644 index 00000000..ced51436 Binary files /dev/null and b/public/textures/mcwbyg/redwood_beach_trapdoor.png differ diff --git a/public/textures/mcwbyg/redwood_blinds.png b/public/textures/mcwbyg/redwood_blinds.png new file mode 100644 index 00000000..d8b91d45 Binary files /dev/null and b/public/textures/mcwbyg/redwood_blinds.png differ diff --git a/public/textures/mcwbyg/redwood_blossom_trapdoor.png b/public/textures/mcwbyg/redwood_blossom_trapdoor.png new file mode 100644 index 00000000..fa62abe6 Binary files /dev/null and b/public/textures/mcwbyg/redwood_blossom_trapdoor.png differ diff --git a/public/textures/mcwbyg/redwood_bookshelf.png b/public/textures/mcwbyg/redwood_bookshelf.png new file mode 100644 index 00000000..cf386ae5 Binary files /dev/null and b/public/textures/mcwbyg/redwood_bookshelf.png differ diff --git a/public/textures/mcwbyg/redwood_bookshelf_cupboard.png b/public/textures/mcwbyg/redwood_bookshelf_cupboard.png new file mode 100644 index 00000000..e718c533 Binary files /dev/null and b/public/textures/mcwbyg/redwood_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/redwood_bookshelf_drawer.png b/public/textures/mcwbyg/redwood_bookshelf_drawer.png new file mode 100644 index 00000000..16624364 Binary files /dev/null and b/public/textures/mcwbyg/redwood_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/redwood_bridge_pier.png b/public/textures/mcwbyg/redwood_bridge_pier.png new file mode 100644 index 00000000..2a6f46c9 Binary files /dev/null and b/public/textures/mcwbyg/redwood_bridge_pier.png differ diff --git a/public/textures/mcwbyg/redwood_chair.png b/public/textures/mcwbyg/redwood_chair.png new file mode 100644 index 00000000..6060d8bb Binary files /dev/null and b/public/textures/mcwbyg/redwood_chair.png differ diff --git a/public/textures/mcwbyg/redwood_classic_door.png b/public/textures/mcwbyg/redwood_classic_door.png new file mode 100644 index 00000000..965cc411 Binary files /dev/null and b/public/textures/mcwbyg/redwood_classic_door.png differ diff --git a/public/textures/mcwbyg/redwood_classic_trapdoor.png b/public/textures/mcwbyg/redwood_classic_trapdoor.png new file mode 100644 index 00000000..3bc555a3 Binary files /dev/null and b/public/textures/mcwbyg/redwood_classic_trapdoor.png differ diff --git a/public/textures/mcwbyg/redwood_coffee_table.png b/public/textures/mcwbyg/redwood_coffee_table.png new file mode 100644 index 00000000..298b3b03 Binary files /dev/null and b/public/textures/mcwbyg/redwood_coffee_table.png differ diff --git a/public/textures/mcwbyg/redwood_cottage_door.png b/public/textures/mcwbyg/redwood_cottage_door.png new file mode 100644 index 00000000..06a91250 Binary files /dev/null and b/public/textures/mcwbyg/redwood_cottage_door.png differ diff --git a/public/textures/mcwbyg/redwood_cottage_trapdoor.png b/public/textures/mcwbyg/redwood_cottage_trapdoor.png new file mode 100644 index 00000000..339bdaf1 Binary files /dev/null and b/public/textures/mcwbyg/redwood_cottage_trapdoor.png differ diff --git a/public/textures/mcwbyg/redwood_counter.png b/public/textures/mcwbyg/redwood_counter.png new file mode 100644 index 00000000..4f78cd32 Binary files /dev/null and b/public/textures/mcwbyg/redwood_counter.png differ diff --git a/public/textures/mcwbyg/redwood_covered_desk.png b/public/textures/mcwbyg/redwood_covered_desk.png new file mode 100644 index 00000000..c0a113ec Binary files /dev/null and b/public/textures/mcwbyg/redwood_covered_desk.png differ diff --git a/public/textures/mcwbyg/redwood_cupboard_counter.png b/public/textures/mcwbyg/redwood_cupboard_counter.png new file mode 100644 index 00000000..d0e2f66b Binary files /dev/null and b/public/textures/mcwbyg/redwood_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/redwood_curtain_rod.png b/public/textures/mcwbyg/redwood_curtain_rod.png new file mode 100644 index 00000000..7b72d517 Binary files /dev/null and b/public/textures/mcwbyg/redwood_curtain_rod.png differ diff --git a/public/textures/mcwbyg/redwood_curved_gate.png b/public/textures/mcwbyg/redwood_curved_gate.png new file mode 100644 index 00000000..e394df0e Binary files /dev/null and b/public/textures/mcwbyg/redwood_curved_gate.png differ diff --git a/public/textures/mcwbyg/redwood_desk.png b/public/textures/mcwbyg/redwood_desk.png new file mode 100644 index 00000000..b9743fd2 Binary files /dev/null and b/public/textures/mcwbyg/redwood_desk.png differ diff --git a/public/textures/mcwbyg/redwood_double_drawer.png b/public/textures/mcwbyg/redwood_double_drawer.png new file mode 100644 index 00000000..77e8ff6b Binary files /dev/null and b/public/textures/mcwbyg/redwood_double_drawer.png differ diff --git a/public/textures/mcwbyg/redwood_double_drawer_counter.png b/public/textures/mcwbyg/redwood_double_drawer_counter.png new file mode 100644 index 00000000..c688308f Binary files /dev/null and b/public/textures/mcwbyg/redwood_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/redwood_double_kitchen_cabinet.png b/public/textures/mcwbyg/redwood_double_kitchen_cabinet.png new file mode 100644 index 00000000..4134b79b Binary files /dev/null and b/public/textures/mcwbyg/redwood_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/redwood_double_wardrobe.png b/public/textures/mcwbyg/redwood_double_wardrobe.png new file mode 100644 index 00000000..e61b8f70 Binary files /dev/null and b/public/textures/mcwbyg/redwood_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/redwood_drawer.png b/public/textures/mcwbyg/redwood_drawer.png new file mode 100644 index 00000000..3ba6a2a3 Binary files /dev/null and b/public/textures/mcwbyg/redwood_drawer.png differ diff --git a/public/textures/mcwbyg/redwood_drawer_counter.png b/public/textures/mcwbyg/redwood_drawer_counter.png new file mode 100644 index 00000000..b317314f Binary files /dev/null and b/public/textures/mcwbyg/redwood_drawer_counter.png differ diff --git a/public/textures/mcwbyg/redwood_end_table.png b/public/textures/mcwbyg/redwood_end_table.png new file mode 100644 index 00000000..ccd0c51d Binary files /dev/null and b/public/textures/mcwbyg/redwood_end_table.png differ diff --git a/public/textures/mcwbyg/redwood_four_panel_door.png b/public/textures/mcwbyg/redwood_four_panel_door.png new file mode 100644 index 00000000..a58d3a44 Binary files /dev/null and b/public/textures/mcwbyg/redwood_four_panel_door.png differ diff --git a/public/textures/mcwbyg/redwood_four_panel_trapdoor.png b/public/textures/mcwbyg/redwood_four_panel_trapdoor.png new file mode 100644 index 00000000..54bd3b93 Binary files /dev/null and b/public/textures/mcwbyg/redwood_four_panel_trapdoor.png differ diff --git a/public/textures/mcwbyg/redwood_four_window.png b/public/textures/mcwbyg/redwood_four_window.png new file mode 100644 index 00000000..6e04b30c Binary files /dev/null and b/public/textures/mcwbyg/redwood_four_window.png differ diff --git a/public/textures/mcwbyg/redwood_glass_door.png b/public/textures/mcwbyg/redwood_glass_door.png new file mode 100644 index 00000000..70c03724 Binary files /dev/null and b/public/textures/mcwbyg/redwood_glass_door.png differ diff --git a/public/textures/mcwbyg/redwood_glass_kitchen_cabinet.png b/public/textures/mcwbyg/redwood_glass_kitchen_cabinet.png new file mode 100644 index 00000000..f56ea1e5 Binary files /dev/null and b/public/textures/mcwbyg/redwood_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/redwood_glass_table.png b/public/textures/mcwbyg/redwood_glass_table.png new file mode 100644 index 00000000..e71a5b0e Binary files /dev/null and b/public/textures/mcwbyg/redwood_glass_table.png differ diff --git a/public/textures/mcwbyg/redwood_glass_trapdoor.png b/public/textures/mcwbyg/redwood_glass_trapdoor.png new file mode 100644 index 00000000..65eb8cf5 Binary files /dev/null and b/public/textures/mcwbyg/redwood_glass_trapdoor.png differ diff --git a/public/textures/mcwbyg/redwood_hedge.png b/public/textures/mcwbyg/redwood_hedge.png new file mode 100644 index 00000000..05c6dd11 Binary files /dev/null and b/public/textures/mcwbyg/redwood_hedge.png differ diff --git a/public/textures/mcwbyg/redwood_highley_gate.png b/public/textures/mcwbyg/redwood_highley_gate.png new file mode 100644 index 00000000..daf7d363 Binary files /dev/null and b/public/textures/mcwbyg/redwood_highley_gate.png differ diff --git a/public/textures/mcwbyg/redwood_horse_fence.png b/public/textures/mcwbyg/redwood_horse_fence.png new file mode 100644 index 00000000..39e86728 Binary files /dev/null and b/public/textures/mcwbyg/redwood_horse_fence.png differ diff --git a/public/textures/mcwbyg/redwood_japanese2_door.png b/public/textures/mcwbyg/redwood_japanese2_door.png new file mode 100644 index 00000000..21e2585a Binary files /dev/null and b/public/textures/mcwbyg/redwood_japanese2_door.png differ diff --git a/public/textures/mcwbyg/redwood_japanese_door.png b/public/textures/mcwbyg/redwood_japanese_door.png new file mode 100644 index 00000000..ca3e5b79 Binary files /dev/null and b/public/textures/mcwbyg/redwood_japanese_door.png differ diff --git a/public/textures/mcwbyg/redwood_kitchen_cabinet.png b/public/textures/mcwbyg/redwood_kitchen_cabinet.png new file mode 100644 index 00000000..93ea307b Binary files /dev/null and b/public/textures/mcwbyg/redwood_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/redwood_large_drawer.png b/public/textures/mcwbyg/redwood_large_drawer.png new file mode 100644 index 00000000..fc7f4662 Binary files /dev/null and b/public/textures/mcwbyg/redwood_large_drawer.png differ diff --git a/public/textures/mcwbyg/redwood_log_bridge_middle.png b/public/textures/mcwbyg/redwood_log_bridge_middle.png new file mode 100644 index 00000000..458e801b Binary files /dev/null and b/public/textures/mcwbyg/redwood_log_bridge_middle.png differ diff --git a/public/textures/mcwbyg/redwood_log_bridge_stair.png b/public/textures/mcwbyg/redwood_log_bridge_stair.png new file mode 100644 index 00000000..497311c4 Binary files /dev/null and b/public/textures/mcwbyg/redwood_log_bridge_stair.png differ diff --git a/public/textures/mcwbyg/redwood_log_parapet.png b/public/textures/mcwbyg/redwood_log_parapet.png new file mode 100644 index 00000000..cb41703c Binary files /dev/null and b/public/textures/mcwbyg/redwood_log_parapet.png differ diff --git a/public/textures/mcwbyg/redwood_louvered_shutter.png b/public/textures/mcwbyg/redwood_louvered_shutter.png new file mode 100644 index 00000000..f27ccee9 Binary files /dev/null and b/public/textures/mcwbyg/redwood_louvered_shutter.png differ diff --git a/public/textures/mcwbyg/redwood_lower_bookshelf_drawer.png b/public/textures/mcwbyg/redwood_lower_bookshelf_drawer.png new file mode 100644 index 00000000..9d2deceb Binary files /dev/null and b/public/textures/mcwbyg/redwood_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/redwood_lower_roof.png b/public/textures/mcwbyg/redwood_lower_roof.png new file mode 100644 index 00000000..8e1e89c5 Binary files /dev/null and b/public/textures/mcwbyg/redwood_lower_roof.png differ diff --git a/public/textures/mcwbyg/redwood_lower_triple_drawer.png b/public/textures/mcwbyg/redwood_lower_triple_drawer.png new file mode 100644 index 00000000..e783b4d8 Binary files /dev/null and b/public/textures/mcwbyg/redwood_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/redwood_modern_chair.png b/public/textures/mcwbyg/redwood_modern_chair.png new file mode 100644 index 00000000..e3518286 Binary files /dev/null and b/public/textures/mcwbyg/redwood_modern_chair.png differ diff --git a/public/textures/mcwbyg/redwood_modern_desk.png b/public/textures/mcwbyg/redwood_modern_desk.png new file mode 100644 index 00000000..ce8f29fe Binary files /dev/null and b/public/textures/mcwbyg/redwood_modern_desk.png differ diff --git a/public/textures/mcwbyg/redwood_modern_door.png b/public/textures/mcwbyg/redwood_modern_door.png new file mode 100644 index 00000000..13dd1fbf Binary files /dev/null and b/public/textures/mcwbyg/redwood_modern_door.png differ diff --git a/public/textures/mcwbyg/redwood_modern_wardrobe.png b/public/textures/mcwbyg/redwood_modern_wardrobe.png new file mode 100644 index 00000000..e473a0b7 Binary files /dev/null and b/public/textures/mcwbyg/redwood_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/redwood_mystic_door.png b/public/textures/mcwbyg/redwood_mystic_door.png new file mode 100644 index 00000000..3dbd35ee Binary files /dev/null and b/public/textures/mcwbyg/redwood_mystic_door.png differ diff --git a/public/textures/mcwbyg/redwood_mystic_trapdoor.png b/public/textures/mcwbyg/redwood_mystic_trapdoor.png new file mode 100644 index 00000000..f02cd9e3 Binary files /dev/null and b/public/textures/mcwbyg/redwood_mystic_trapdoor.png differ diff --git a/public/textures/mcwbyg/redwood_nether_door.png b/public/textures/mcwbyg/redwood_nether_door.png new file mode 100644 index 00000000..d144628a Binary files /dev/null and b/public/textures/mcwbyg/redwood_nether_door.png differ diff --git a/public/textures/mcwbyg/redwood_pane_window.png b/public/textures/mcwbyg/redwood_pane_window.png new file mode 100644 index 00000000..38227c0e Binary files /dev/null and b/public/textures/mcwbyg/redwood_pane_window.png differ diff --git a/public/textures/mcwbyg/redwood_paper_door.png b/public/textures/mcwbyg/redwood_paper_door.png new file mode 100644 index 00000000..06609a0e Binary files /dev/null and b/public/textures/mcwbyg/redwood_paper_door.png differ diff --git a/public/textures/mcwbyg/redwood_paper_trapdoor.png b/public/textures/mcwbyg/redwood_paper_trapdoor.png new file mode 100644 index 00000000..96ea07fb Binary files /dev/null and b/public/textures/mcwbyg/redwood_paper_trapdoor.png differ diff --git a/public/textures/mcwbyg/redwood_picket_fence.png b/public/textures/mcwbyg/redwood_picket_fence.png new file mode 100644 index 00000000..74882b41 Binary files /dev/null and b/public/textures/mcwbyg/redwood_picket_fence.png differ diff --git a/public/textures/mcwbyg/redwood_plank_four_window.png b/public/textures/mcwbyg/redwood_plank_four_window.png new file mode 100644 index 00000000..976cb27d Binary files /dev/null and b/public/textures/mcwbyg/redwood_plank_four_window.png differ diff --git a/public/textures/mcwbyg/redwood_plank_pane_window.png b/public/textures/mcwbyg/redwood_plank_pane_window.png new file mode 100644 index 00000000..70642fe0 Binary files /dev/null and b/public/textures/mcwbyg/redwood_plank_pane_window.png differ diff --git a/public/textures/mcwbyg/redwood_plank_parapet.png b/public/textures/mcwbyg/redwood_plank_parapet.png new file mode 100644 index 00000000..2baa0d59 Binary files /dev/null and b/public/textures/mcwbyg/redwood_plank_parapet.png differ diff --git a/public/textures/mcwbyg/redwood_plank_window.png b/public/textures/mcwbyg/redwood_plank_window.png new file mode 100644 index 00000000..11d03a72 Binary files /dev/null and b/public/textures/mcwbyg/redwood_plank_window.png differ diff --git a/public/textures/mcwbyg/redwood_plank_window2.png b/public/textures/mcwbyg/redwood_plank_window2.png new file mode 100644 index 00000000..184428b9 Binary files /dev/null and b/public/textures/mcwbyg/redwood_plank_window2.png differ diff --git a/public/textures/mcwbyg/redwood_planks_attic_roof.png b/public/textures/mcwbyg/redwood_planks_attic_roof.png new file mode 100644 index 00000000..3e9fa533 Binary files /dev/null and b/public/textures/mcwbyg/redwood_planks_attic_roof.png differ diff --git a/public/textures/mcwbyg/redwood_planks_lower_roof.png b/public/textures/mcwbyg/redwood_planks_lower_roof.png new file mode 100644 index 00000000..6cfa4ea4 Binary files /dev/null and b/public/textures/mcwbyg/redwood_planks_lower_roof.png differ diff --git a/public/textures/mcwbyg/redwood_planks_path.png b/public/textures/mcwbyg/redwood_planks_path.png new file mode 100644 index 00000000..dcf6f02c Binary files /dev/null and b/public/textures/mcwbyg/redwood_planks_path.png differ diff --git a/public/textures/mcwbyg/redwood_planks_roof.png b/public/textures/mcwbyg/redwood_planks_roof.png new file mode 100644 index 00000000..bb680220 Binary files /dev/null and b/public/textures/mcwbyg/redwood_planks_roof.png differ diff --git a/public/textures/mcwbyg/redwood_planks_steep_roof.png b/public/textures/mcwbyg/redwood_planks_steep_roof.png new file mode 100644 index 00000000..c3e2f496 Binary files /dev/null and b/public/textures/mcwbyg/redwood_planks_steep_roof.png differ diff --git a/public/textures/mcwbyg/redwood_planks_top_roof.png b/public/textures/mcwbyg/redwood_planks_top_roof.png new file mode 100644 index 00000000..4c3da870 Binary files /dev/null and b/public/textures/mcwbyg/redwood_planks_top_roof.png differ diff --git a/public/textures/mcwbyg/redwood_planks_upper_lower_roof.png b/public/textures/mcwbyg/redwood_planks_upper_lower_roof.png new file mode 100644 index 00000000..cb68e379 Binary files /dev/null and b/public/textures/mcwbyg/redwood_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/redwood_planks_upper_steep_roof.png b/public/textures/mcwbyg/redwood_planks_upper_steep_roof.png new file mode 100644 index 00000000..82ea6177 Binary files /dev/null and b/public/textures/mcwbyg/redwood_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/redwood_pyramid_gate.png b/public/textures/mcwbyg/redwood_pyramid_gate.png new file mode 100644 index 00000000..a51268c6 Binary files /dev/null and b/public/textures/mcwbyg/redwood_pyramid_gate.png differ diff --git a/public/textures/mcwbyg/redwood_rail_bridge.png b/public/textures/mcwbyg/redwood_rail_bridge.png new file mode 100644 index 00000000..4019adc7 Binary files /dev/null and b/public/textures/mcwbyg/redwood_rail_bridge.png differ diff --git a/public/textures/mcwbyg/redwood_ranch_trapdoor.png b/public/textures/mcwbyg/redwood_ranch_trapdoor.png new file mode 100644 index 00000000..e1a8fbc2 Binary files /dev/null and b/public/textures/mcwbyg/redwood_ranch_trapdoor.png differ diff --git a/public/textures/mcwbyg/redwood_roof.png b/public/textures/mcwbyg/redwood_roof.png new file mode 100644 index 00000000..f99b3cb9 Binary files /dev/null and b/public/textures/mcwbyg/redwood_roof.png differ diff --git a/public/textures/mcwbyg/redwood_rope_bridge_stair.png b/public/textures/mcwbyg/redwood_rope_bridge_stair.png new file mode 100644 index 00000000..3e11f3ab Binary files /dev/null and b/public/textures/mcwbyg/redwood_rope_bridge_stair.png differ diff --git a/public/textures/mcwbyg/redwood_shutter.png b/public/textures/mcwbyg/redwood_shutter.png new file mode 100644 index 00000000..e98b6a56 Binary files /dev/null and b/public/textures/mcwbyg/redwood_shutter.png differ diff --git a/public/textures/mcwbyg/redwood_stable_door.png b/public/textures/mcwbyg/redwood_stable_door.png new file mode 100644 index 00000000..3072629e Binary files /dev/null and b/public/textures/mcwbyg/redwood_stable_door.png differ diff --git a/public/textures/mcwbyg/redwood_stable_head_door.png b/public/textures/mcwbyg/redwood_stable_head_door.png new file mode 100644 index 00000000..e89292a4 Binary files /dev/null and b/public/textures/mcwbyg/redwood_stable_head_door.png differ diff --git a/public/textures/mcwbyg/redwood_steep_roof.png b/public/textures/mcwbyg/redwood_steep_roof.png new file mode 100644 index 00000000..b39b00b6 Binary files /dev/null and b/public/textures/mcwbyg/redwood_steep_roof.png differ diff --git a/public/textures/mcwbyg/redwood_stockade_fence.png b/public/textures/mcwbyg/redwood_stockade_fence.png new file mode 100644 index 00000000..311b63d4 Binary files /dev/null and b/public/textures/mcwbyg/redwood_stockade_fence.png differ diff --git a/public/textures/mcwbyg/redwood_stool_chair.png b/public/textures/mcwbyg/redwood_stool_chair.png new file mode 100644 index 00000000..c8c022d7 Binary files /dev/null and b/public/textures/mcwbyg/redwood_stool_chair.png differ diff --git a/public/textures/mcwbyg/redwood_striped_chair.png b/public/textures/mcwbyg/redwood_striped_chair.png new file mode 100644 index 00000000..083ad90b Binary files /dev/null and b/public/textures/mcwbyg/redwood_striped_chair.png differ diff --git a/public/textures/mcwbyg/redwood_swamp_door.png b/public/textures/mcwbyg/redwood_swamp_door.png new file mode 100644 index 00000000..5ee33614 Binary files /dev/null and b/public/textures/mcwbyg/redwood_swamp_door.png differ diff --git a/public/textures/mcwbyg/redwood_swamp_trapdoor.png b/public/textures/mcwbyg/redwood_swamp_trapdoor.png new file mode 100644 index 00000000..1d45d654 Binary files /dev/null and b/public/textures/mcwbyg/redwood_swamp_trapdoor.png differ diff --git a/public/textures/mcwbyg/redwood_table.png b/public/textures/mcwbyg/redwood_table.png new file mode 100644 index 00000000..6674ab51 Binary files /dev/null and b/public/textures/mcwbyg/redwood_table.png differ diff --git a/public/textures/mcwbyg/redwood_top_roof.png b/public/textures/mcwbyg/redwood_top_roof.png new file mode 100644 index 00000000..33964474 Binary files /dev/null and b/public/textures/mcwbyg/redwood_top_roof.png differ diff --git a/public/textures/mcwbyg/redwood_triple_drawer.png b/public/textures/mcwbyg/redwood_triple_drawer.png new file mode 100644 index 00000000..c129284e Binary files /dev/null and b/public/textures/mcwbyg/redwood_triple_drawer.png differ diff --git a/public/textures/mcwbyg/redwood_tropical_door.png b/public/textures/mcwbyg/redwood_tropical_door.png new file mode 100644 index 00000000..ba98b9e0 Binary files /dev/null and b/public/textures/mcwbyg/redwood_tropical_door.png differ diff --git a/public/textures/mcwbyg/redwood_tropical_trapdoor.png b/public/textures/mcwbyg/redwood_tropical_trapdoor.png new file mode 100644 index 00000000..bf7f9f3f Binary files /dev/null and b/public/textures/mcwbyg/redwood_tropical_trapdoor.png differ diff --git a/public/textures/mcwbyg/redwood_upper_lower_roof.png b/public/textures/mcwbyg/redwood_upper_lower_roof.png new file mode 100644 index 00000000..96eff6d3 Binary files /dev/null and b/public/textures/mcwbyg/redwood_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/redwood_upper_steep_roof.png b/public/textures/mcwbyg/redwood_upper_steep_roof.png new file mode 100644 index 00000000..21be633d Binary files /dev/null and b/public/textures/mcwbyg/redwood_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/redwood_waffle_door.png b/public/textures/mcwbyg/redwood_waffle_door.png new file mode 100644 index 00000000..5b46411f Binary files /dev/null and b/public/textures/mcwbyg/redwood_waffle_door.png differ diff --git a/public/textures/mcwbyg/redwood_wardrobe.png b/public/textures/mcwbyg/redwood_wardrobe.png new file mode 100644 index 00000000..f8ab0a5d Binary files /dev/null and b/public/textures/mcwbyg/redwood_wardrobe.png differ diff --git a/public/textures/mcwbyg/redwood_western_door.png b/public/textures/mcwbyg/redwood_western_door.png new file mode 100644 index 00000000..a35722b6 Binary files /dev/null and b/public/textures/mcwbyg/redwood_western_door.png differ diff --git a/public/textures/mcwbyg/redwood_whispering_door.png b/public/textures/mcwbyg/redwood_whispering_door.png new file mode 100644 index 00000000..1aac8eba Binary files /dev/null and b/public/textures/mcwbyg/redwood_whispering_door.png differ diff --git a/public/textures/mcwbyg/redwood_whispering_trapdoor.png b/public/textures/mcwbyg/redwood_whispering_trapdoor.png new file mode 100644 index 00000000..3d65fac1 Binary files /dev/null and b/public/textures/mcwbyg/redwood_whispering_trapdoor.png differ diff --git a/public/textures/mcwbyg/redwood_window.png b/public/textures/mcwbyg/redwood_window.png new file mode 100644 index 00000000..17f3c30f Binary files /dev/null and b/public/textures/mcwbyg/redwood_window.png differ diff --git a/public/textures/mcwbyg/redwood_window2.png b/public/textures/mcwbyg/redwood_window2.png new file mode 100644 index 00000000..9123b808 Binary files /dev/null and b/public/textures/mcwbyg/redwood_window2.png differ diff --git a/public/textures/mcwbyg/redwood_wired_fence.png b/public/textures/mcwbyg/redwood_wired_fence.png new file mode 100644 index 00000000..7d4b01e2 Binary files /dev/null and b/public/textures/mcwbyg/redwood_wired_fence.png differ diff --git a/public/textures/mcwbyg/rope_aspen_bridge.png b/public/textures/mcwbyg/rope_aspen_bridge.png new file mode 100644 index 00000000..cd32405f Binary files /dev/null and b/public/textures/mcwbyg/rope_aspen_bridge.png differ diff --git a/public/textures/mcwbyg/rope_baobab_bridge.png b/public/textures/mcwbyg/rope_baobab_bridge.png new file mode 100644 index 00000000..10baab37 Binary files /dev/null and b/public/textures/mcwbyg/rope_baobab_bridge.png differ diff --git a/public/textures/mcwbyg/rope_blue_enchanted_bridge.png b/public/textures/mcwbyg/rope_blue_enchanted_bridge.png new file mode 100644 index 00000000..cd78a436 Binary files /dev/null and b/public/textures/mcwbyg/rope_blue_enchanted_bridge.png differ diff --git a/public/textures/mcwbyg/rope_cika_bridge.png b/public/textures/mcwbyg/rope_cika_bridge.png new file mode 100644 index 00000000..5a914411 Binary files /dev/null and b/public/textures/mcwbyg/rope_cika_bridge.png differ diff --git a/public/textures/mcwbyg/rope_cypress_bridge.png b/public/textures/mcwbyg/rope_cypress_bridge.png new file mode 100644 index 00000000..e55dfbc2 Binary files /dev/null and b/public/textures/mcwbyg/rope_cypress_bridge.png differ diff --git a/public/textures/mcwbyg/rope_ebony_bridge.png b/public/textures/mcwbyg/rope_ebony_bridge.png new file mode 100644 index 00000000..7341c8e9 Binary files /dev/null and b/public/textures/mcwbyg/rope_ebony_bridge.png differ diff --git a/public/textures/mcwbyg/rope_fir_bridge.png b/public/textures/mcwbyg/rope_fir_bridge.png new file mode 100644 index 00000000..cd391639 Binary files /dev/null and b/public/textures/mcwbyg/rope_fir_bridge.png differ diff --git a/public/textures/mcwbyg/rope_florus_bridge.png b/public/textures/mcwbyg/rope_florus_bridge.png new file mode 100644 index 00000000..f5c65b94 Binary files /dev/null and b/public/textures/mcwbyg/rope_florus_bridge.png differ diff --git a/public/textures/mcwbyg/rope_green_enchanted_bridge.png b/public/textures/mcwbyg/rope_green_enchanted_bridge.png new file mode 100644 index 00000000..6afa2304 Binary files /dev/null and b/public/textures/mcwbyg/rope_green_enchanted_bridge.png differ diff --git a/public/textures/mcwbyg/rope_holly_bridge.png b/public/textures/mcwbyg/rope_holly_bridge.png new file mode 100644 index 00000000..90e02233 Binary files /dev/null and b/public/textures/mcwbyg/rope_holly_bridge.png differ diff --git a/public/textures/mcwbyg/rope_ironwood_bridge.png b/public/textures/mcwbyg/rope_ironwood_bridge.png new file mode 100644 index 00000000..abf5a05d Binary files /dev/null and b/public/textures/mcwbyg/rope_ironwood_bridge.png differ diff --git a/public/textures/mcwbyg/rope_jacaranda_bridge.png b/public/textures/mcwbyg/rope_jacaranda_bridge.png new file mode 100644 index 00000000..83740539 Binary files /dev/null and b/public/textures/mcwbyg/rope_jacaranda_bridge.png differ diff --git a/public/textures/mcwbyg/rope_mahogany_bridge.png b/public/textures/mcwbyg/rope_mahogany_bridge.png new file mode 100644 index 00000000..bbc7b944 Binary files /dev/null and b/public/textures/mcwbyg/rope_mahogany_bridge.png differ diff --git a/public/textures/mcwbyg/rope_maple_bridge.png b/public/textures/mcwbyg/rope_maple_bridge.png new file mode 100644 index 00000000..6e7a79e5 Binary files /dev/null and b/public/textures/mcwbyg/rope_maple_bridge.png differ diff --git a/public/textures/mcwbyg/rope_palm_bridge.png b/public/textures/mcwbyg/rope_palm_bridge.png new file mode 100644 index 00000000..90e85ac1 Binary files /dev/null and b/public/textures/mcwbyg/rope_palm_bridge.png differ diff --git a/public/textures/mcwbyg/rope_pine_bridge.png b/public/textures/mcwbyg/rope_pine_bridge.png new file mode 100644 index 00000000..acc176ec Binary files /dev/null and b/public/textures/mcwbyg/rope_pine_bridge.png differ diff --git a/public/textures/mcwbyg/rope_rainbow_eucalyptus_bridge.png b/public/textures/mcwbyg/rope_rainbow_eucalyptus_bridge.png new file mode 100644 index 00000000..6e632c1a Binary files /dev/null and b/public/textures/mcwbyg/rope_rainbow_eucalyptus_bridge.png differ diff --git a/public/textures/mcwbyg/rope_redwood_bridge.png b/public/textures/mcwbyg/rope_redwood_bridge.png new file mode 100644 index 00000000..2676f596 Binary files /dev/null and b/public/textures/mcwbyg/rope_redwood_bridge.png differ diff --git a/public/textures/mcwbyg/rope_sakura_bridge.png b/public/textures/mcwbyg/rope_sakura_bridge.png new file mode 100644 index 00000000..62588bab Binary files /dev/null and b/public/textures/mcwbyg/rope_sakura_bridge.png differ diff --git a/public/textures/mcwbyg/rope_skyris_bridge.png b/public/textures/mcwbyg/rope_skyris_bridge.png new file mode 100644 index 00000000..de561bf0 Binary files /dev/null and b/public/textures/mcwbyg/rope_skyris_bridge.png differ diff --git a/public/textures/mcwbyg/rope_white_mangrove_bridge.png b/public/textures/mcwbyg/rope_white_mangrove_bridge.png new file mode 100644 index 00000000..8a462ec4 Binary files /dev/null and b/public/textures/mcwbyg/rope_white_mangrove_bridge.png differ diff --git a/public/textures/mcwbyg/rope_willow_bridge.png b/public/textures/mcwbyg/rope_willow_bridge.png new file mode 100644 index 00000000..7471c145 Binary files /dev/null and b/public/textures/mcwbyg/rope_willow_bridge.png differ diff --git a/public/textures/mcwbyg/rope_witch_hazel_bridge.png b/public/textures/mcwbyg/rope_witch_hazel_bridge.png new file mode 100644 index 00000000..b87890b0 Binary files /dev/null and b/public/textures/mcwbyg/rope_witch_hazel_bridge.png differ diff --git a/public/textures/mcwbyg/rope_zelkova_bridge.png b/public/textures/mcwbyg/rope_zelkova_bridge.png new file mode 100644 index 00000000..4d66f08d Binary files /dev/null and b/public/textures/mcwbyg/rope_zelkova_bridge.png differ diff --git a/public/textures/mcwbyg/sakura_attic_roof.png b/public/textures/mcwbyg/sakura_attic_roof.png new file mode 100644 index 00000000..76f5f434 Binary files /dev/null and b/public/textures/mcwbyg/sakura_attic_roof.png differ diff --git a/public/textures/mcwbyg/sakura_bamboo_door.png b/public/textures/mcwbyg/sakura_bamboo_door.png new file mode 100644 index 00000000..5ddbe099 Binary files /dev/null and b/public/textures/mcwbyg/sakura_bamboo_door.png differ diff --git a/public/textures/mcwbyg/sakura_bamboo_trapdoor.png b/public/textures/mcwbyg/sakura_bamboo_trapdoor.png new file mode 100644 index 00000000..415017b5 Binary files /dev/null and b/public/textures/mcwbyg/sakura_bamboo_trapdoor.png differ diff --git a/public/textures/mcwbyg/sakura_bark_glass_door.png b/public/textures/mcwbyg/sakura_bark_glass_door.png new file mode 100644 index 00000000..caa1d7a9 Binary files /dev/null and b/public/textures/mcwbyg/sakura_bark_glass_door.png differ diff --git a/public/textures/mcwbyg/sakura_bark_trapdoor.png b/public/textures/mcwbyg/sakura_bark_trapdoor.png new file mode 100644 index 00000000..bc887285 Binary files /dev/null and b/public/textures/mcwbyg/sakura_bark_trapdoor.png differ diff --git a/public/textures/mcwbyg/sakura_barn_door.png b/public/textures/mcwbyg/sakura_barn_door.png new file mode 100644 index 00000000..0612b9fe Binary files /dev/null and b/public/textures/mcwbyg/sakura_barn_door.png differ diff --git a/public/textures/mcwbyg/sakura_barn_glass_door.png b/public/textures/mcwbyg/sakura_barn_glass_door.png new file mode 100644 index 00000000..83fda7da Binary files /dev/null and b/public/textures/mcwbyg/sakura_barn_glass_door.png differ diff --git a/public/textures/mcwbyg/sakura_barn_trapdoor.png b/public/textures/mcwbyg/sakura_barn_trapdoor.png new file mode 100644 index 00000000..88f58aff Binary files /dev/null and b/public/textures/mcwbyg/sakura_barn_trapdoor.png differ diff --git a/public/textures/mcwbyg/sakura_barred_trapdoor.png b/public/textures/mcwbyg/sakura_barred_trapdoor.png new file mode 100644 index 00000000..55f35a79 Binary files /dev/null and b/public/textures/mcwbyg/sakura_barred_trapdoor.png differ diff --git a/public/textures/mcwbyg/sakura_barrel_trapdoor.png b/public/textures/mcwbyg/sakura_barrel_trapdoor.png new file mode 100644 index 00000000..a460ec01 Binary files /dev/null and b/public/textures/mcwbyg/sakura_barrel_trapdoor.png differ diff --git a/public/textures/mcwbyg/sakura_beach_door.png b/public/textures/mcwbyg/sakura_beach_door.png new file mode 100644 index 00000000..9b305ff5 Binary files /dev/null and b/public/textures/mcwbyg/sakura_beach_door.png differ diff --git a/public/textures/mcwbyg/sakura_beach_trapdoor.png b/public/textures/mcwbyg/sakura_beach_trapdoor.png new file mode 100644 index 00000000..6b7d6a55 Binary files /dev/null and b/public/textures/mcwbyg/sakura_beach_trapdoor.png differ diff --git a/public/textures/mcwbyg/sakura_blinds.png b/public/textures/mcwbyg/sakura_blinds.png new file mode 100644 index 00000000..0bd6a256 Binary files /dev/null and b/public/textures/mcwbyg/sakura_blinds.png differ diff --git a/public/textures/mcwbyg/sakura_blossom_trapdoor.png b/public/textures/mcwbyg/sakura_blossom_trapdoor.png new file mode 100644 index 00000000..d03b8df3 Binary files /dev/null and b/public/textures/mcwbyg/sakura_blossom_trapdoor.png differ diff --git a/public/textures/mcwbyg/sakura_bookshelf.png b/public/textures/mcwbyg/sakura_bookshelf.png new file mode 100644 index 00000000..6c26f23b Binary files /dev/null and b/public/textures/mcwbyg/sakura_bookshelf.png differ diff --git a/public/textures/mcwbyg/sakura_bookshelf_cupboard.png b/public/textures/mcwbyg/sakura_bookshelf_cupboard.png new file mode 100644 index 00000000..fa6e7d62 Binary files /dev/null and b/public/textures/mcwbyg/sakura_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/sakura_bookshelf_drawer.png b/public/textures/mcwbyg/sakura_bookshelf_drawer.png new file mode 100644 index 00000000..8e6b8565 Binary files /dev/null and b/public/textures/mcwbyg/sakura_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/sakura_bridge_pier.png b/public/textures/mcwbyg/sakura_bridge_pier.png new file mode 100644 index 00000000..6944d62b Binary files /dev/null and b/public/textures/mcwbyg/sakura_bridge_pier.png differ diff --git a/public/textures/mcwbyg/sakura_chair.png b/public/textures/mcwbyg/sakura_chair.png new file mode 100644 index 00000000..525b8b4a Binary files /dev/null and b/public/textures/mcwbyg/sakura_chair.png differ diff --git a/public/textures/mcwbyg/sakura_classic_door.png b/public/textures/mcwbyg/sakura_classic_door.png new file mode 100644 index 00000000..2be4a784 Binary files /dev/null and b/public/textures/mcwbyg/sakura_classic_door.png differ diff --git a/public/textures/mcwbyg/sakura_classic_trapdoor.png b/public/textures/mcwbyg/sakura_classic_trapdoor.png new file mode 100644 index 00000000..224e180d Binary files /dev/null and b/public/textures/mcwbyg/sakura_classic_trapdoor.png differ diff --git a/public/textures/mcwbyg/sakura_coffee_table.png b/public/textures/mcwbyg/sakura_coffee_table.png new file mode 100644 index 00000000..46c72582 Binary files /dev/null and b/public/textures/mcwbyg/sakura_coffee_table.png differ diff --git a/public/textures/mcwbyg/sakura_cottage_door.png b/public/textures/mcwbyg/sakura_cottage_door.png new file mode 100644 index 00000000..b1d07c24 Binary files /dev/null and b/public/textures/mcwbyg/sakura_cottage_door.png differ diff --git a/public/textures/mcwbyg/sakura_cottage_trapdoor.png b/public/textures/mcwbyg/sakura_cottage_trapdoor.png new file mode 100644 index 00000000..e4be7936 Binary files /dev/null and b/public/textures/mcwbyg/sakura_cottage_trapdoor.png differ diff --git a/public/textures/mcwbyg/sakura_counter.png b/public/textures/mcwbyg/sakura_counter.png new file mode 100644 index 00000000..d740a37f Binary files /dev/null and b/public/textures/mcwbyg/sakura_counter.png differ diff --git a/public/textures/mcwbyg/sakura_covered_desk.png b/public/textures/mcwbyg/sakura_covered_desk.png new file mode 100644 index 00000000..4e95962a Binary files /dev/null and b/public/textures/mcwbyg/sakura_covered_desk.png differ diff --git a/public/textures/mcwbyg/sakura_cupboard_counter.png b/public/textures/mcwbyg/sakura_cupboard_counter.png new file mode 100644 index 00000000..e4e9c82f Binary files /dev/null and b/public/textures/mcwbyg/sakura_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/sakura_curtain_rod.png b/public/textures/mcwbyg/sakura_curtain_rod.png new file mode 100644 index 00000000..45acf3a0 Binary files /dev/null and b/public/textures/mcwbyg/sakura_curtain_rod.png differ diff --git a/public/textures/mcwbyg/sakura_curved_gate.png b/public/textures/mcwbyg/sakura_curved_gate.png new file mode 100644 index 00000000..4f6ba7c0 Binary files /dev/null and b/public/textures/mcwbyg/sakura_curved_gate.png differ diff --git a/public/textures/mcwbyg/sakura_desk.png b/public/textures/mcwbyg/sakura_desk.png new file mode 100644 index 00000000..a18a810c Binary files /dev/null and b/public/textures/mcwbyg/sakura_desk.png differ diff --git a/public/textures/mcwbyg/sakura_double_drawer.png b/public/textures/mcwbyg/sakura_double_drawer.png new file mode 100644 index 00000000..d6336790 Binary files /dev/null and b/public/textures/mcwbyg/sakura_double_drawer.png differ diff --git a/public/textures/mcwbyg/sakura_double_drawer_counter.png b/public/textures/mcwbyg/sakura_double_drawer_counter.png new file mode 100644 index 00000000..9d995b4b Binary files /dev/null and b/public/textures/mcwbyg/sakura_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/sakura_double_kitchen_cabinet.png b/public/textures/mcwbyg/sakura_double_kitchen_cabinet.png new file mode 100644 index 00000000..c229884d Binary files /dev/null and b/public/textures/mcwbyg/sakura_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/sakura_double_wardrobe.png b/public/textures/mcwbyg/sakura_double_wardrobe.png new file mode 100644 index 00000000..165a9b61 Binary files /dev/null and b/public/textures/mcwbyg/sakura_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/sakura_drawer.png b/public/textures/mcwbyg/sakura_drawer.png new file mode 100644 index 00000000..91d9f61e Binary files /dev/null and b/public/textures/mcwbyg/sakura_drawer.png differ diff --git a/public/textures/mcwbyg/sakura_drawer_counter.png b/public/textures/mcwbyg/sakura_drawer_counter.png new file mode 100644 index 00000000..3bab2b3b Binary files /dev/null and b/public/textures/mcwbyg/sakura_drawer_counter.png differ diff --git a/public/textures/mcwbyg/sakura_end_table.png b/public/textures/mcwbyg/sakura_end_table.png new file mode 100644 index 00000000..e88808a4 Binary files /dev/null and b/public/textures/mcwbyg/sakura_end_table.png differ diff --git a/public/textures/mcwbyg/sakura_four_panel_door.png b/public/textures/mcwbyg/sakura_four_panel_door.png new file mode 100644 index 00000000..dcd24256 Binary files /dev/null and b/public/textures/mcwbyg/sakura_four_panel_door.png differ diff --git a/public/textures/mcwbyg/sakura_four_panel_trapdoor.png b/public/textures/mcwbyg/sakura_four_panel_trapdoor.png new file mode 100644 index 00000000..18133011 Binary files /dev/null and b/public/textures/mcwbyg/sakura_four_panel_trapdoor.png differ diff --git a/public/textures/mcwbyg/sakura_four_window.png b/public/textures/mcwbyg/sakura_four_window.png new file mode 100644 index 00000000..ad459888 Binary files /dev/null and b/public/textures/mcwbyg/sakura_four_window.png differ diff --git a/public/textures/mcwbyg/sakura_glass_door.png b/public/textures/mcwbyg/sakura_glass_door.png new file mode 100644 index 00000000..2bab4beb Binary files /dev/null and b/public/textures/mcwbyg/sakura_glass_door.png differ diff --git a/public/textures/mcwbyg/sakura_glass_kitchen_cabinet.png b/public/textures/mcwbyg/sakura_glass_kitchen_cabinet.png new file mode 100644 index 00000000..6772b7db Binary files /dev/null and b/public/textures/mcwbyg/sakura_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/sakura_glass_table.png b/public/textures/mcwbyg/sakura_glass_table.png new file mode 100644 index 00000000..7ea97422 Binary files /dev/null and b/public/textures/mcwbyg/sakura_glass_table.png differ diff --git a/public/textures/mcwbyg/sakura_glass_trapdoor.png b/public/textures/mcwbyg/sakura_glass_trapdoor.png new file mode 100644 index 00000000..df20a172 Binary files /dev/null and b/public/textures/mcwbyg/sakura_glass_trapdoor.png differ diff --git a/public/textures/mcwbyg/sakura_highley_gate.png b/public/textures/mcwbyg/sakura_highley_gate.png new file mode 100644 index 00000000..ff5533e8 Binary files /dev/null and b/public/textures/mcwbyg/sakura_highley_gate.png differ diff --git a/public/textures/mcwbyg/sakura_horse_fence.png b/public/textures/mcwbyg/sakura_horse_fence.png new file mode 100644 index 00000000..abb03ede Binary files /dev/null and b/public/textures/mcwbyg/sakura_horse_fence.png differ diff --git a/public/textures/mcwbyg/sakura_japanese2_door.png b/public/textures/mcwbyg/sakura_japanese2_door.png new file mode 100644 index 00000000..d71ada2d Binary files /dev/null and b/public/textures/mcwbyg/sakura_japanese2_door.png differ diff --git a/public/textures/mcwbyg/sakura_japanese_door.png b/public/textures/mcwbyg/sakura_japanese_door.png new file mode 100644 index 00000000..bae444a0 Binary files /dev/null and b/public/textures/mcwbyg/sakura_japanese_door.png differ diff --git a/public/textures/mcwbyg/sakura_kitchen_cabinet.png b/public/textures/mcwbyg/sakura_kitchen_cabinet.png new file mode 100644 index 00000000..c827ee6d Binary files /dev/null and b/public/textures/mcwbyg/sakura_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/sakura_large_drawer.png b/public/textures/mcwbyg/sakura_large_drawer.png new file mode 100644 index 00000000..eccb06c7 Binary files /dev/null and b/public/textures/mcwbyg/sakura_large_drawer.png differ diff --git a/public/textures/mcwbyg/sakura_log_bridge_middle.png b/public/textures/mcwbyg/sakura_log_bridge_middle.png new file mode 100644 index 00000000..a42fc2a1 Binary files /dev/null and b/public/textures/mcwbyg/sakura_log_bridge_middle.png differ diff --git a/public/textures/mcwbyg/sakura_log_bridge_stair.png b/public/textures/mcwbyg/sakura_log_bridge_stair.png new file mode 100644 index 00000000..76397590 Binary files /dev/null and b/public/textures/mcwbyg/sakura_log_bridge_stair.png differ diff --git a/public/textures/mcwbyg/sakura_log_parapet.png b/public/textures/mcwbyg/sakura_log_parapet.png new file mode 100644 index 00000000..eaef94a3 Binary files /dev/null and b/public/textures/mcwbyg/sakura_log_parapet.png differ diff --git a/public/textures/mcwbyg/sakura_louvered_shutter.png b/public/textures/mcwbyg/sakura_louvered_shutter.png new file mode 100644 index 00000000..d07a19c7 Binary files /dev/null and b/public/textures/mcwbyg/sakura_louvered_shutter.png differ diff --git a/public/textures/mcwbyg/sakura_lower_bookshelf_drawer.png b/public/textures/mcwbyg/sakura_lower_bookshelf_drawer.png new file mode 100644 index 00000000..2a98b75e Binary files /dev/null and b/public/textures/mcwbyg/sakura_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/sakura_lower_roof.png b/public/textures/mcwbyg/sakura_lower_roof.png new file mode 100644 index 00000000..c70d9165 Binary files /dev/null and b/public/textures/mcwbyg/sakura_lower_roof.png differ diff --git a/public/textures/mcwbyg/sakura_lower_triple_drawer.png b/public/textures/mcwbyg/sakura_lower_triple_drawer.png new file mode 100644 index 00000000..59aa3789 Binary files /dev/null and b/public/textures/mcwbyg/sakura_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/sakura_modern_chair.png b/public/textures/mcwbyg/sakura_modern_chair.png new file mode 100644 index 00000000..f423a9bf Binary files /dev/null and b/public/textures/mcwbyg/sakura_modern_chair.png differ diff --git a/public/textures/mcwbyg/sakura_modern_desk.png b/public/textures/mcwbyg/sakura_modern_desk.png new file mode 100644 index 00000000..b06c6504 Binary files /dev/null and b/public/textures/mcwbyg/sakura_modern_desk.png differ diff --git a/public/textures/mcwbyg/sakura_modern_door.png b/public/textures/mcwbyg/sakura_modern_door.png new file mode 100644 index 00000000..2bbdb04e Binary files /dev/null and b/public/textures/mcwbyg/sakura_modern_door.png differ diff --git a/public/textures/mcwbyg/sakura_modern_wardrobe.png b/public/textures/mcwbyg/sakura_modern_wardrobe.png new file mode 100644 index 00000000..0ba39ca7 Binary files /dev/null and b/public/textures/mcwbyg/sakura_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/sakura_mystic_door.png b/public/textures/mcwbyg/sakura_mystic_door.png new file mode 100644 index 00000000..31c48524 Binary files /dev/null and b/public/textures/mcwbyg/sakura_mystic_door.png differ diff --git a/public/textures/mcwbyg/sakura_mystic_trapdoor.png b/public/textures/mcwbyg/sakura_mystic_trapdoor.png new file mode 100644 index 00000000..19b31b08 Binary files /dev/null and b/public/textures/mcwbyg/sakura_mystic_trapdoor.png differ diff --git a/public/textures/mcwbyg/sakura_nether_door.png b/public/textures/mcwbyg/sakura_nether_door.png new file mode 100644 index 00000000..d379287c Binary files /dev/null and b/public/textures/mcwbyg/sakura_nether_door.png differ diff --git a/public/textures/mcwbyg/sakura_pane_window.png b/public/textures/mcwbyg/sakura_pane_window.png new file mode 100644 index 00000000..59c92d9c Binary files /dev/null and b/public/textures/mcwbyg/sakura_pane_window.png differ diff --git a/public/textures/mcwbyg/sakura_paper_door.png b/public/textures/mcwbyg/sakura_paper_door.png new file mode 100644 index 00000000..0ea51756 Binary files /dev/null and b/public/textures/mcwbyg/sakura_paper_door.png differ diff --git a/public/textures/mcwbyg/sakura_paper_trapdoor.png b/public/textures/mcwbyg/sakura_paper_trapdoor.png new file mode 100644 index 00000000..8a75a5a1 Binary files /dev/null and b/public/textures/mcwbyg/sakura_paper_trapdoor.png differ diff --git a/public/textures/mcwbyg/sakura_picket_fence.png b/public/textures/mcwbyg/sakura_picket_fence.png new file mode 100644 index 00000000..af5ec301 Binary files /dev/null and b/public/textures/mcwbyg/sakura_picket_fence.png differ diff --git a/public/textures/mcwbyg/sakura_plank_four_window.png b/public/textures/mcwbyg/sakura_plank_four_window.png new file mode 100644 index 00000000..f2d0aa82 Binary files /dev/null and b/public/textures/mcwbyg/sakura_plank_four_window.png differ diff --git a/public/textures/mcwbyg/sakura_plank_pane_window.png b/public/textures/mcwbyg/sakura_plank_pane_window.png new file mode 100644 index 00000000..64b2161a Binary files /dev/null and b/public/textures/mcwbyg/sakura_plank_pane_window.png differ diff --git a/public/textures/mcwbyg/sakura_plank_parapet.png b/public/textures/mcwbyg/sakura_plank_parapet.png new file mode 100644 index 00000000..ef015d44 Binary files /dev/null and b/public/textures/mcwbyg/sakura_plank_parapet.png differ diff --git a/public/textures/mcwbyg/sakura_plank_window.png b/public/textures/mcwbyg/sakura_plank_window.png new file mode 100644 index 00000000..4e277d22 Binary files /dev/null and b/public/textures/mcwbyg/sakura_plank_window.png differ diff --git a/public/textures/mcwbyg/sakura_plank_window2.png b/public/textures/mcwbyg/sakura_plank_window2.png new file mode 100644 index 00000000..231927b4 Binary files /dev/null and b/public/textures/mcwbyg/sakura_plank_window2.png differ diff --git a/public/textures/mcwbyg/sakura_planks_attic_roof.png b/public/textures/mcwbyg/sakura_planks_attic_roof.png new file mode 100644 index 00000000..cc0cae83 Binary files /dev/null and b/public/textures/mcwbyg/sakura_planks_attic_roof.png differ diff --git a/public/textures/mcwbyg/sakura_planks_lower_roof.png b/public/textures/mcwbyg/sakura_planks_lower_roof.png new file mode 100644 index 00000000..8d16e079 Binary files /dev/null and b/public/textures/mcwbyg/sakura_planks_lower_roof.png differ diff --git a/public/textures/mcwbyg/sakura_planks_path.png b/public/textures/mcwbyg/sakura_planks_path.png new file mode 100644 index 00000000..7dd8e106 Binary files /dev/null and b/public/textures/mcwbyg/sakura_planks_path.png differ diff --git a/public/textures/mcwbyg/sakura_planks_roof.png b/public/textures/mcwbyg/sakura_planks_roof.png new file mode 100644 index 00000000..b988a3e0 Binary files /dev/null and b/public/textures/mcwbyg/sakura_planks_roof.png differ diff --git a/public/textures/mcwbyg/sakura_planks_steep_roof.png b/public/textures/mcwbyg/sakura_planks_steep_roof.png new file mode 100644 index 00000000..9a835329 Binary files /dev/null and b/public/textures/mcwbyg/sakura_planks_steep_roof.png differ diff --git a/public/textures/mcwbyg/sakura_planks_top_roof.png b/public/textures/mcwbyg/sakura_planks_top_roof.png new file mode 100644 index 00000000..6be9fcdb Binary files /dev/null and b/public/textures/mcwbyg/sakura_planks_top_roof.png differ diff --git a/public/textures/mcwbyg/sakura_planks_upper_lower_roof.png b/public/textures/mcwbyg/sakura_planks_upper_lower_roof.png new file mode 100644 index 00000000..1dfa9ac1 Binary files /dev/null and b/public/textures/mcwbyg/sakura_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/sakura_planks_upper_steep_roof.png b/public/textures/mcwbyg/sakura_planks_upper_steep_roof.png new file mode 100644 index 00000000..8c3cdf51 Binary files /dev/null and b/public/textures/mcwbyg/sakura_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/sakura_pyramid_gate.png b/public/textures/mcwbyg/sakura_pyramid_gate.png new file mode 100644 index 00000000..96868ec7 Binary files /dev/null and b/public/textures/mcwbyg/sakura_pyramid_gate.png differ diff --git a/public/textures/mcwbyg/sakura_rail_bridge.png b/public/textures/mcwbyg/sakura_rail_bridge.png new file mode 100644 index 00000000..203a5810 Binary files /dev/null and b/public/textures/mcwbyg/sakura_rail_bridge.png differ diff --git a/public/textures/mcwbyg/sakura_ranch_trapdoor.png b/public/textures/mcwbyg/sakura_ranch_trapdoor.png new file mode 100644 index 00000000..09af31e2 Binary files /dev/null and b/public/textures/mcwbyg/sakura_ranch_trapdoor.png differ diff --git a/public/textures/mcwbyg/sakura_roof.png b/public/textures/mcwbyg/sakura_roof.png new file mode 100644 index 00000000..f5d087f0 Binary files /dev/null and b/public/textures/mcwbyg/sakura_roof.png differ diff --git a/public/textures/mcwbyg/sakura_rope_bridge_stair.png b/public/textures/mcwbyg/sakura_rope_bridge_stair.png new file mode 100644 index 00000000..5487e9f0 Binary files /dev/null and b/public/textures/mcwbyg/sakura_rope_bridge_stair.png differ diff --git a/public/textures/mcwbyg/sakura_shutter.png b/public/textures/mcwbyg/sakura_shutter.png new file mode 100644 index 00000000..5d0eaa50 Binary files /dev/null and b/public/textures/mcwbyg/sakura_shutter.png differ diff --git a/public/textures/mcwbyg/sakura_stable_door.png b/public/textures/mcwbyg/sakura_stable_door.png new file mode 100644 index 00000000..08772298 Binary files /dev/null and b/public/textures/mcwbyg/sakura_stable_door.png differ diff --git a/public/textures/mcwbyg/sakura_stable_head_door.png b/public/textures/mcwbyg/sakura_stable_head_door.png new file mode 100644 index 00000000..11d733c6 Binary files /dev/null and b/public/textures/mcwbyg/sakura_stable_head_door.png differ diff --git a/public/textures/mcwbyg/sakura_steep_roof.png b/public/textures/mcwbyg/sakura_steep_roof.png new file mode 100644 index 00000000..91c71bca Binary files /dev/null and b/public/textures/mcwbyg/sakura_steep_roof.png differ diff --git a/public/textures/mcwbyg/sakura_stockade_fence.png b/public/textures/mcwbyg/sakura_stockade_fence.png new file mode 100644 index 00000000..d53704c2 Binary files /dev/null and b/public/textures/mcwbyg/sakura_stockade_fence.png differ diff --git a/public/textures/mcwbyg/sakura_stool_chair.png b/public/textures/mcwbyg/sakura_stool_chair.png new file mode 100644 index 00000000..9cef7097 Binary files /dev/null and b/public/textures/mcwbyg/sakura_stool_chair.png differ diff --git a/public/textures/mcwbyg/sakura_striped_chair.png b/public/textures/mcwbyg/sakura_striped_chair.png new file mode 100644 index 00000000..a2460678 Binary files /dev/null and b/public/textures/mcwbyg/sakura_striped_chair.png differ diff --git a/public/textures/mcwbyg/sakura_swamp_door.png b/public/textures/mcwbyg/sakura_swamp_door.png new file mode 100644 index 00000000..8a6fca3a Binary files /dev/null and b/public/textures/mcwbyg/sakura_swamp_door.png differ diff --git a/public/textures/mcwbyg/sakura_swamp_trapdoor.png b/public/textures/mcwbyg/sakura_swamp_trapdoor.png new file mode 100644 index 00000000..909cc444 Binary files /dev/null and b/public/textures/mcwbyg/sakura_swamp_trapdoor.png differ diff --git a/public/textures/mcwbyg/sakura_table.png b/public/textures/mcwbyg/sakura_table.png new file mode 100644 index 00000000..25dbe48c Binary files /dev/null and b/public/textures/mcwbyg/sakura_table.png differ diff --git a/public/textures/mcwbyg/sakura_top_roof.png b/public/textures/mcwbyg/sakura_top_roof.png new file mode 100644 index 00000000..4e5f3778 Binary files /dev/null and b/public/textures/mcwbyg/sakura_top_roof.png differ diff --git a/public/textures/mcwbyg/sakura_triple_drawer.png b/public/textures/mcwbyg/sakura_triple_drawer.png new file mode 100644 index 00000000..80e08e57 Binary files /dev/null and b/public/textures/mcwbyg/sakura_triple_drawer.png differ diff --git a/public/textures/mcwbyg/sakura_tropical_door.png b/public/textures/mcwbyg/sakura_tropical_door.png new file mode 100644 index 00000000..a062af5f Binary files /dev/null and b/public/textures/mcwbyg/sakura_tropical_door.png differ diff --git a/public/textures/mcwbyg/sakura_tropical_trapdoor.png b/public/textures/mcwbyg/sakura_tropical_trapdoor.png new file mode 100644 index 00000000..065f97d7 Binary files /dev/null and b/public/textures/mcwbyg/sakura_tropical_trapdoor.png differ diff --git a/public/textures/mcwbyg/sakura_upper_lower_roof.png b/public/textures/mcwbyg/sakura_upper_lower_roof.png new file mode 100644 index 00000000..70a127a8 Binary files /dev/null and b/public/textures/mcwbyg/sakura_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/sakura_upper_steep_roof.png b/public/textures/mcwbyg/sakura_upper_steep_roof.png new file mode 100644 index 00000000..cad4dd43 Binary files /dev/null and b/public/textures/mcwbyg/sakura_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/sakura_waffle_door.png b/public/textures/mcwbyg/sakura_waffle_door.png new file mode 100644 index 00000000..55312921 Binary files /dev/null and b/public/textures/mcwbyg/sakura_waffle_door.png differ diff --git a/public/textures/mcwbyg/sakura_wardrobe.png b/public/textures/mcwbyg/sakura_wardrobe.png new file mode 100644 index 00000000..29771d7d Binary files /dev/null and b/public/textures/mcwbyg/sakura_wardrobe.png differ diff --git a/public/textures/mcwbyg/sakura_western_door.png b/public/textures/mcwbyg/sakura_western_door.png new file mode 100644 index 00000000..018330e0 Binary files /dev/null and b/public/textures/mcwbyg/sakura_western_door.png differ diff --git a/public/textures/mcwbyg/sakura_whispering_door.png b/public/textures/mcwbyg/sakura_whispering_door.png new file mode 100644 index 00000000..7836e5b2 Binary files /dev/null and b/public/textures/mcwbyg/sakura_whispering_door.png differ diff --git a/public/textures/mcwbyg/sakura_whispering_trapdoor.png b/public/textures/mcwbyg/sakura_whispering_trapdoor.png new file mode 100644 index 00000000..739a36da Binary files /dev/null and b/public/textures/mcwbyg/sakura_whispering_trapdoor.png differ diff --git a/public/textures/mcwbyg/sakura_window.png b/public/textures/mcwbyg/sakura_window.png new file mode 100644 index 00000000..8dbe7b51 Binary files /dev/null and b/public/textures/mcwbyg/sakura_window.png differ diff --git a/public/textures/mcwbyg/sakura_window2.png b/public/textures/mcwbyg/sakura_window2.png new file mode 100644 index 00000000..381ca0eb Binary files /dev/null and b/public/textures/mcwbyg/sakura_window2.png differ diff --git a/public/textures/mcwbyg/sakura_wired_fence.png b/public/textures/mcwbyg/sakura_wired_fence.png new file mode 100644 index 00000000..f84cefb2 Binary files /dev/null and b/public/textures/mcwbyg/sakura_wired_fence.png differ diff --git a/public/textures/mcwbyg/skyris_attic_roof.png b/public/textures/mcwbyg/skyris_attic_roof.png new file mode 100644 index 00000000..dab02d2a Binary files /dev/null and b/public/textures/mcwbyg/skyris_attic_roof.png differ diff --git a/public/textures/mcwbyg/skyris_bamboo_door.png b/public/textures/mcwbyg/skyris_bamboo_door.png new file mode 100644 index 00000000..61e03585 Binary files /dev/null and b/public/textures/mcwbyg/skyris_bamboo_door.png differ diff --git a/public/textures/mcwbyg/skyris_bamboo_trapdoor.png b/public/textures/mcwbyg/skyris_bamboo_trapdoor.png new file mode 100644 index 00000000..23f1c66b Binary files /dev/null and b/public/textures/mcwbyg/skyris_bamboo_trapdoor.png differ diff --git a/public/textures/mcwbyg/skyris_bark_glass_door.png b/public/textures/mcwbyg/skyris_bark_glass_door.png new file mode 100644 index 00000000..e75b97e4 Binary files /dev/null and b/public/textures/mcwbyg/skyris_bark_glass_door.png differ diff --git a/public/textures/mcwbyg/skyris_bark_trapdoor.png b/public/textures/mcwbyg/skyris_bark_trapdoor.png new file mode 100644 index 00000000..9f96d742 Binary files /dev/null and b/public/textures/mcwbyg/skyris_bark_trapdoor.png differ diff --git a/public/textures/mcwbyg/skyris_barn_door.png b/public/textures/mcwbyg/skyris_barn_door.png new file mode 100644 index 00000000..7c405f6d Binary files /dev/null and b/public/textures/mcwbyg/skyris_barn_door.png differ diff --git a/public/textures/mcwbyg/skyris_barn_glass_door.png b/public/textures/mcwbyg/skyris_barn_glass_door.png new file mode 100644 index 00000000..042714e1 Binary files /dev/null and b/public/textures/mcwbyg/skyris_barn_glass_door.png differ diff --git a/public/textures/mcwbyg/skyris_barn_trapdoor.png b/public/textures/mcwbyg/skyris_barn_trapdoor.png new file mode 100644 index 00000000..27e24a1a Binary files /dev/null and b/public/textures/mcwbyg/skyris_barn_trapdoor.png differ diff --git a/public/textures/mcwbyg/skyris_barred_trapdoor.png b/public/textures/mcwbyg/skyris_barred_trapdoor.png new file mode 100644 index 00000000..973610c7 Binary files /dev/null and b/public/textures/mcwbyg/skyris_barred_trapdoor.png differ diff --git a/public/textures/mcwbyg/skyris_barrel_trapdoor.png b/public/textures/mcwbyg/skyris_barrel_trapdoor.png new file mode 100644 index 00000000..d63d3cbd Binary files /dev/null and b/public/textures/mcwbyg/skyris_barrel_trapdoor.png differ diff --git a/public/textures/mcwbyg/skyris_beach_door.png b/public/textures/mcwbyg/skyris_beach_door.png new file mode 100644 index 00000000..9f30ba6f Binary files /dev/null and b/public/textures/mcwbyg/skyris_beach_door.png differ diff --git a/public/textures/mcwbyg/skyris_beach_trapdoor.png b/public/textures/mcwbyg/skyris_beach_trapdoor.png new file mode 100644 index 00000000..499b46c5 Binary files /dev/null and b/public/textures/mcwbyg/skyris_beach_trapdoor.png differ diff --git a/public/textures/mcwbyg/skyris_blinds.png b/public/textures/mcwbyg/skyris_blinds.png new file mode 100644 index 00000000..6abe2db4 Binary files /dev/null and b/public/textures/mcwbyg/skyris_blinds.png differ diff --git a/public/textures/mcwbyg/skyris_blossom_trapdoor.png b/public/textures/mcwbyg/skyris_blossom_trapdoor.png new file mode 100644 index 00000000..abc57d03 Binary files /dev/null and b/public/textures/mcwbyg/skyris_blossom_trapdoor.png differ diff --git a/public/textures/mcwbyg/skyris_bookshelf.png b/public/textures/mcwbyg/skyris_bookshelf.png new file mode 100644 index 00000000..d64d3fb9 Binary files /dev/null and b/public/textures/mcwbyg/skyris_bookshelf.png differ diff --git a/public/textures/mcwbyg/skyris_bookshelf_cupboard.png b/public/textures/mcwbyg/skyris_bookshelf_cupboard.png new file mode 100644 index 00000000..9ee4685d Binary files /dev/null and b/public/textures/mcwbyg/skyris_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/skyris_bookshelf_drawer.png b/public/textures/mcwbyg/skyris_bookshelf_drawer.png new file mode 100644 index 00000000..ec70fc9d Binary files /dev/null and b/public/textures/mcwbyg/skyris_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/skyris_bridge_pier.png b/public/textures/mcwbyg/skyris_bridge_pier.png new file mode 100644 index 00000000..8e7bfb58 Binary files /dev/null and b/public/textures/mcwbyg/skyris_bridge_pier.png differ diff --git a/public/textures/mcwbyg/skyris_chair.png b/public/textures/mcwbyg/skyris_chair.png new file mode 100644 index 00000000..40768b45 Binary files /dev/null and b/public/textures/mcwbyg/skyris_chair.png differ diff --git a/public/textures/mcwbyg/skyris_classic_door.png b/public/textures/mcwbyg/skyris_classic_door.png new file mode 100644 index 00000000..09f0f617 Binary files /dev/null and b/public/textures/mcwbyg/skyris_classic_door.png differ diff --git a/public/textures/mcwbyg/skyris_classic_trapdoor.png b/public/textures/mcwbyg/skyris_classic_trapdoor.png new file mode 100644 index 00000000..2fb4da0b Binary files /dev/null and b/public/textures/mcwbyg/skyris_classic_trapdoor.png differ diff --git a/public/textures/mcwbyg/skyris_coffee_table.png b/public/textures/mcwbyg/skyris_coffee_table.png new file mode 100644 index 00000000..2f116eea Binary files /dev/null and b/public/textures/mcwbyg/skyris_coffee_table.png differ diff --git a/public/textures/mcwbyg/skyris_cottage_door.png b/public/textures/mcwbyg/skyris_cottage_door.png new file mode 100644 index 00000000..e93332cf Binary files /dev/null and b/public/textures/mcwbyg/skyris_cottage_door.png differ diff --git a/public/textures/mcwbyg/skyris_cottage_trapdoor.png b/public/textures/mcwbyg/skyris_cottage_trapdoor.png new file mode 100644 index 00000000..1eb7078f Binary files /dev/null and b/public/textures/mcwbyg/skyris_cottage_trapdoor.png differ diff --git a/public/textures/mcwbyg/skyris_counter.png b/public/textures/mcwbyg/skyris_counter.png new file mode 100644 index 00000000..c83e3dc9 Binary files /dev/null and b/public/textures/mcwbyg/skyris_counter.png differ diff --git a/public/textures/mcwbyg/skyris_covered_desk.png b/public/textures/mcwbyg/skyris_covered_desk.png new file mode 100644 index 00000000..27a2f59d Binary files /dev/null and b/public/textures/mcwbyg/skyris_covered_desk.png differ diff --git a/public/textures/mcwbyg/skyris_cupboard_counter.png b/public/textures/mcwbyg/skyris_cupboard_counter.png new file mode 100644 index 00000000..db8d5da9 Binary files /dev/null and b/public/textures/mcwbyg/skyris_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/skyris_curtain_rod.png b/public/textures/mcwbyg/skyris_curtain_rod.png new file mode 100644 index 00000000..d45ff5db Binary files /dev/null and b/public/textures/mcwbyg/skyris_curtain_rod.png differ diff --git a/public/textures/mcwbyg/skyris_curved_gate.png b/public/textures/mcwbyg/skyris_curved_gate.png new file mode 100644 index 00000000..abf3988f Binary files /dev/null and b/public/textures/mcwbyg/skyris_curved_gate.png differ diff --git a/public/textures/mcwbyg/skyris_desk.png b/public/textures/mcwbyg/skyris_desk.png new file mode 100644 index 00000000..06f9c973 Binary files /dev/null and b/public/textures/mcwbyg/skyris_desk.png differ diff --git a/public/textures/mcwbyg/skyris_double_drawer.png b/public/textures/mcwbyg/skyris_double_drawer.png new file mode 100644 index 00000000..6a48fdb9 Binary files /dev/null and b/public/textures/mcwbyg/skyris_double_drawer.png differ diff --git a/public/textures/mcwbyg/skyris_double_drawer_counter.png b/public/textures/mcwbyg/skyris_double_drawer_counter.png new file mode 100644 index 00000000..4bae1c7b Binary files /dev/null and b/public/textures/mcwbyg/skyris_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/skyris_double_kitchen_cabinet.png b/public/textures/mcwbyg/skyris_double_kitchen_cabinet.png new file mode 100644 index 00000000..8957a915 Binary files /dev/null and b/public/textures/mcwbyg/skyris_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/skyris_double_wardrobe.png b/public/textures/mcwbyg/skyris_double_wardrobe.png new file mode 100644 index 00000000..8b6c207d Binary files /dev/null and b/public/textures/mcwbyg/skyris_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/skyris_drawer.png b/public/textures/mcwbyg/skyris_drawer.png new file mode 100644 index 00000000..feeb821b Binary files /dev/null and b/public/textures/mcwbyg/skyris_drawer.png differ diff --git a/public/textures/mcwbyg/skyris_drawer_counter.png b/public/textures/mcwbyg/skyris_drawer_counter.png new file mode 100644 index 00000000..08882474 Binary files /dev/null and b/public/textures/mcwbyg/skyris_drawer_counter.png differ diff --git a/public/textures/mcwbyg/skyris_end_table.png b/public/textures/mcwbyg/skyris_end_table.png new file mode 100644 index 00000000..0ea516b7 Binary files /dev/null and b/public/textures/mcwbyg/skyris_end_table.png differ diff --git a/public/textures/mcwbyg/skyris_four_panel_door.png b/public/textures/mcwbyg/skyris_four_panel_door.png new file mode 100644 index 00000000..ac2ae999 Binary files /dev/null and b/public/textures/mcwbyg/skyris_four_panel_door.png differ diff --git a/public/textures/mcwbyg/skyris_four_panel_trapdoor.png b/public/textures/mcwbyg/skyris_four_panel_trapdoor.png new file mode 100644 index 00000000..ee88400f Binary files /dev/null and b/public/textures/mcwbyg/skyris_four_panel_trapdoor.png differ diff --git a/public/textures/mcwbyg/skyris_four_window.png b/public/textures/mcwbyg/skyris_four_window.png new file mode 100644 index 00000000..2f2aa2f0 Binary files /dev/null and b/public/textures/mcwbyg/skyris_four_window.png differ diff --git a/public/textures/mcwbyg/skyris_glass_door.png b/public/textures/mcwbyg/skyris_glass_door.png new file mode 100644 index 00000000..37c96e5d Binary files /dev/null and b/public/textures/mcwbyg/skyris_glass_door.png differ diff --git a/public/textures/mcwbyg/skyris_glass_kitchen_cabinet.png b/public/textures/mcwbyg/skyris_glass_kitchen_cabinet.png new file mode 100644 index 00000000..35b63a6a Binary files /dev/null and b/public/textures/mcwbyg/skyris_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/skyris_glass_table.png b/public/textures/mcwbyg/skyris_glass_table.png new file mode 100644 index 00000000..04f39d5d Binary files /dev/null and b/public/textures/mcwbyg/skyris_glass_table.png differ diff --git a/public/textures/mcwbyg/skyris_glass_trapdoor.png b/public/textures/mcwbyg/skyris_glass_trapdoor.png new file mode 100644 index 00000000..971fca82 Binary files /dev/null and b/public/textures/mcwbyg/skyris_glass_trapdoor.png differ diff --git a/public/textures/mcwbyg/skyris_hedge.png b/public/textures/mcwbyg/skyris_hedge.png new file mode 100644 index 00000000..6f1a7e24 Binary files /dev/null and b/public/textures/mcwbyg/skyris_hedge.png differ diff --git a/public/textures/mcwbyg/skyris_highley_gate.png b/public/textures/mcwbyg/skyris_highley_gate.png new file mode 100644 index 00000000..8e712111 Binary files /dev/null and b/public/textures/mcwbyg/skyris_highley_gate.png differ diff --git a/public/textures/mcwbyg/skyris_horse_fence.png b/public/textures/mcwbyg/skyris_horse_fence.png new file mode 100644 index 00000000..3007a292 Binary files /dev/null and b/public/textures/mcwbyg/skyris_horse_fence.png differ diff --git a/public/textures/mcwbyg/skyris_japanese2_door.png b/public/textures/mcwbyg/skyris_japanese2_door.png new file mode 100644 index 00000000..0086db4d Binary files /dev/null and b/public/textures/mcwbyg/skyris_japanese2_door.png differ diff --git a/public/textures/mcwbyg/skyris_japanese_door.png b/public/textures/mcwbyg/skyris_japanese_door.png new file mode 100644 index 00000000..fc1fa38e Binary files /dev/null and b/public/textures/mcwbyg/skyris_japanese_door.png differ diff --git a/public/textures/mcwbyg/skyris_kitchen_cabinet.png b/public/textures/mcwbyg/skyris_kitchen_cabinet.png new file mode 100644 index 00000000..6e67d7a9 Binary files /dev/null and b/public/textures/mcwbyg/skyris_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/skyris_large_drawer.png b/public/textures/mcwbyg/skyris_large_drawer.png new file mode 100644 index 00000000..847265da Binary files /dev/null and b/public/textures/mcwbyg/skyris_large_drawer.png differ diff --git a/public/textures/mcwbyg/skyris_log_bridge_middle.png b/public/textures/mcwbyg/skyris_log_bridge_middle.png new file mode 100644 index 00000000..23f8b30a Binary files /dev/null and b/public/textures/mcwbyg/skyris_log_bridge_middle.png differ diff --git a/public/textures/mcwbyg/skyris_log_bridge_stair.png b/public/textures/mcwbyg/skyris_log_bridge_stair.png new file mode 100644 index 00000000..6bafdee7 Binary files /dev/null and b/public/textures/mcwbyg/skyris_log_bridge_stair.png differ diff --git a/public/textures/mcwbyg/skyris_log_parapet.png b/public/textures/mcwbyg/skyris_log_parapet.png new file mode 100644 index 00000000..8acf36f4 Binary files /dev/null and b/public/textures/mcwbyg/skyris_log_parapet.png differ diff --git a/public/textures/mcwbyg/skyris_louvered_shutter.png b/public/textures/mcwbyg/skyris_louvered_shutter.png new file mode 100644 index 00000000..6419cf29 Binary files /dev/null and b/public/textures/mcwbyg/skyris_louvered_shutter.png differ diff --git a/public/textures/mcwbyg/skyris_lower_bookshelf_drawer.png b/public/textures/mcwbyg/skyris_lower_bookshelf_drawer.png new file mode 100644 index 00000000..f93c74ff Binary files /dev/null and b/public/textures/mcwbyg/skyris_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/skyris_lower_roof.png b/public/textures/mcwbyg/skyris_lower_roof.png new file mode 100644 index 00000000..5534dc0f Binary files /dev/null and b/public/textures/mcwbyg/skyris_lower_roof.png differ diff --git a/public/textures/mcwbyg/skyris_lower_triple_drawer.png b/public/textures/mcwbyg/skyris_lower_triple_drawer.png new file mode 100644 index 00000000..1f0647f9 Binary files /dev/null and b/public/textures/mcwbyg/skyris_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/skyris_modern_chair.png b/public/textures/mcwbyg/skyris_modern_chair.png new file mode 100644 index 00000000..658b1009 Binary files /dev/null and b/public/textures/mcwbyg/skyris_modern_chair.png differ diff --git a/public/textures/mcwbyg/skyris_modern_desk.png b/public/textures/mcwbyg/skyris_modern_desk.png new file mode 100644 index 00000000..af6941e4 Binary files /dev/null and b/public/textures/mcwbyg/skyris_modern_desk.png differ diff --git a/public/textures/mcwbyg/skyris_modern_door.png b/public/textures/mcwbyg/skyris_modern_door.png new file mode 100644 index 00000000..62d96eed Binary files /dev/null and b/public/textures/mcwbyg/skyris_modern_door.png differ diff --git a/public/textures/mcwbyg/skyris_modern_wardrobe.png b/public/textures/mcwbyg/skyris_modern_wardrobe.png new file mode 100644 index 00000000..3e8e055e Binary files /dev/null and b/public/textures/mcwbyg/skyris_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/skyris_mystic_door.png b/public/textures/mcwbyg/skyris_mystic_door.png new file mode 100644 index 00000000..9b542850 Binary files /dev/null and b/public/textures/mcwbyg/skyris_mystic_door.png differ diff --git a/public/textures/mcwbyg/skyris_mystic_trapdoor.png b/public/textures/mcwbyg/skyris_mystic_trapdoor.png new file mode 100644 index 00000000..539eb2b9 Binary files /dev/null and b/public/textures/mcwbyg/skyris_mystic_trapdoor.png differ diff --git a/public/textures/mcwbyg/skyris_nether_door.png b/public/textures/mcwbyg/skyris_nether_door.png new file mode 100644 index 00000000..5075b6f5 Binary files /dev/null and b/public/textures/mcwbyg/skyris_nether_door.png differ diff --git a/public/textures/mcwbyg/skyris_pane_window.png b/public/textures/mcwbyg/skyris_pane_window.png new file mode 100644 index 00000000..ffc7d7bd Binary files /dev/null and b/public/textures/mcwbyg/skyris_pane_window.png differ diff --git a/public/textures/mcwbyg/skyris_paper_door.png b/public/textures/mcwbyg/skyris_paper_door.png new file mode 100644 index 00000000..2796da66 Binary files /dev/null and b/public/textures/mcwbyg/skyris_paper_door.png differ diff --git a/public/textures/mcwbyg/skyris_paper_trapdoor.png b/public/textures/mcwbyg/skyris_paper_trapdoor.png new file mode 100644 index 00000000..71fd641b Binary files /dev/null and b/public/textures/mcwbyg/skyris_paper_trapdoor.png differ diff --git a/public/textures/mcwbyg/skyris_picket_fence.png b/public/textures/mcwbyg/skyris_picket_fence.png new file mode 100644 index 00000000..0eae3d0b Binary files /dev/null and b/public/textures/mcwbyg/skyris_picket_fence.png differ diff --git a/public/textures/mcwbyg/skyris_plank_four_window.png b/public/textures/mcwbyg/skyris_plank_four_window.png new file mode 100644 index 00000000..539b0758 Binary files /dev/null and b/public/textures/mcwbyg/skyris_plank_four_window.png differ diff --git a/public/textures/mcwbyg/skyris_plank_pane_window.png b/public/textures/mcwbyg/skyris_plank_pane_window.png new file mode 100644 index 00000000..415a780f Binary files /dev/null and b/public/textures/mcwbyg/skyris_plank_pane_window.png differ diff --git a/public/textures/mcwbyg/skyris_plank_parapet.png b/public/textures/mcwbyg/skyris_plank_parapet.png new file mode 100644 index 00000000..47a48648 Binary files /dev/null and b/public/textures/mcwbyg/skyris_plank_parapet.png differ diff --git a/public/textures/mcwbyg/skyris_plank_window.png b/public/textures/mcwbyg/skyris_plank_window.png new file mode 100644 index 00000000..f4669371 Binary files /dev/null and b/public/textures/mcwbyg/skyris_plank_window.png differ diff --git a/public/textures/mcwbyg/skyris_plank_window2.png b/public/textures/mcwbyg/skyris_plank_window2.png new file mode 100644 index 00000000..eab21bfc Binary files /dev/null and b/public/textures/mcwbyg/skyris_plank_window2.png differ diff --git a/public/textures/mcwbyg/skyris_planks_attic_roof.png b/public/textures/mcwbyg/skyris_planks_attic_roof.png new file mode 100644 index 00000000..6f94dae2 Binary files /dev/null and b/public/textures/mcwbyg/skyris_planks_attic_roof.png differ diff --git a/public/textures/mcwbyg/skyris_planks_lower_roof.png b/public/textures/mcwbyg/skyris_planks_lower_roof.png new file mode 100644 index 00000000..f28704de Binary files /dev/null and b/public/textures/mcwbyg/skyris_planks_lower_roof.png differ diff --git a/public/textures/mcwbyg/skyris_planks_path.png b/public/textures/mcwbyg/skyris_planks_path.png new file mode 100644 index 00000000..786e3bdf Binary files /dev/null and b/public/textures/mcwbyg/skyris_planks_path.png differ diff --git a/public/textures/mcwbyg/skyris_planks_roof.png b/public/textures/mcwbyg/skyris_planks_roof.png new file mode 100644 index 00000000..bd189068 Binary files /dev/null and b/public/textures/mcwbyg/skyris_planks_roof.png differ diff --git a/public/textures/mcwbyg/skyris_planks_steep_roof.png b/public/textures/mcwbyg/skyris_planks_steep_roof.png new file mode 100644 index 00000000..726ef89a Binary files /dev/null and b/public/textures/mcwbyg/skyris_planks_steep_roof.png differ diff --git a/public/textures/mcwbyg/skyris_planks_top_roof.png b/public/textures/mcwbyg/skyris_planks_top_roof.png new file mode 100644 index 00000000..fa6b3fc0 Binary files /dev/null and b/public/textures/mcwbyg/skyris_planks_top_roof.png differ diff --git a/public/textures/mcwbyg/skyris_planks_upper_lower_roof.png b/public/textures/mcwbyg/skyris_planks_upper_lower_roof.png new file mode 100644 index 00000000..5f085efb Binary files /dev/null and b/public/textures/mcwbyg/skyris_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/skyris_planks_upper_steep_roof.png b/public/textures/mcwbyg/skyris_planks_upper_steep_roof.png new file mode 100644 index 00000000..fe80f549 Binary files /dev/null and b/public/textures/mcwbyg/skyris_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/skyris_pyramid_gate.png b/public/textures/mcwbyg/skyris_pyramid_gate.png new file mode 100644 index 00000000..8f5aac5c Binary files /dev/null and b/public/textures/mcwbyg/skyris_pyramid_gate.png differ diff --git a/public/textures/mcwbyg/skyris_rail_bridge.png b/public/textures/mcwbyg/skyris_rail_bridge.png new file mode 100644 index 00000000..dff18319 Binary files /dev/null and b/public/textures/mcwbyg/skyris_rail_bridge.png differ diff --git a/public/textures/mcwbyg/skyris_ranch_trapdoor.png b/public/textures/mcwbyg/skyris_ranch_trapdoor.png new file mode 100644 index 00000000..3e776749 Binary files /dev/null and b/public/textures/mcwbyg/skyris_ranch_trapdoor.png differ diff --git a/public/textures/mcwbyg/skyris_roof.png b/public/textures/mcwbyg/skyris_roof.png new file mode 100644 index 00000000..9cebb84c Binary files /dev/null and b/public/textures/mcwbyg/skyris_roof.png differ diff --git a/public/textures/mcwbyg/skyris_rope_bridge_stair.png b/public/textures/mcwbyg/skyris_rope_bridge_stair.png new file mode 100644 index 00000000..aa5a6dcf Binary files /dev/null and b/public/textures/mcwbyg/skyris_rope_bridge_stair.png differ diff --git a/public/textures/mcwbyg/skyris_shutter.png b/public/textures/mcwbyg/skyris_shutter.png new file mode 100644 index 00000000..05493afa Binary files /dev/null and b/public/textures/mcwbyg/skyris_shutter.png differ diff --git a/public/textures/mcwbyg/skyris_stable_door.png b/public/textures/mcwbyg/skyris_stable_door.png new file mode 100644 index 00000000..0b8ee1b1 Binary files /dev/null and b/public/textures/mcwbyg/skyris_stable_door.png differ diff --git a/public/textures/mcwbyg/skyris_stable_head_door.png b/public/textures/mcwbyg/skyris_stable_head_door.png new file mode 100644 index 00000000..2bf8d603 Binary files /dev/null and b/public/textures/mcwbyg/skyris_stable_head_door.png differ diff --git a/public/textures/mcwbyg/skyris_steep_roof.png b/public/textures/mcwbyg/skyris_steep_roof.png new file mode 100644 index 00000000..ae4bb50b Binary files /dev/null and b/public/textures/mcwbyg/skyris_steep_roof.png differ diff --git a/public/textures/mcwbyg/skyris_stockade_fence.png b/public/textures/mcwbyg/skyris_stockade_fence.png new file mode 100644 index 00000000..d0c9e345 Binary files /dev/null and b/public/textures/mcwbyg/skyris_stockade_fence.png differ diff --git a/public/textures/mcwbyg/skyris_stool_chair.png b/public/textures/mcwbyg/skyris_stool_chair.png new file mode 100644 index 00000000..4d95872f Binary files /dev/null and b/public/textures/mcwbyg/skyris_stool_chair.png differ diff --git a/public/textures/mcwbyg/skyris_striped_chair.png b/public/textures/mcwbyg/skyris_striped_chair.png new file mode 100644 index 00000000..39cd25c5 Binary files /dev/null and b/public/textures/mcwbyg/skyris_striped_chair.png differ diff --git a/public/textures/mcwbyg/skyris_swamp_door.png b/public/textures/mcwbyg/skyris_swamp_door.png new file mode 100644 index 00000000..5a33364d Binary files /dev/null and b/public/textures/mcwbyg/skyris_swamp_door.png differ diff --git a/public/textures/mcwbyg/skyris_swamp_trapdoor.png b/public/textures/mcwbyg/skyris_swamp_trapdoor.png new file mode 100644 index 00000000..48cc3c90 Binary files /dev/null and b/public/textures/mcwbyg/skyris_swamp_trapdoor.png differ diff --git a/public/textures/mcwbyg/skyris_table.png b/public/textures/mcwbyg/skyris_table.png new file mode 100644 index 00000000..e6b2ea14 Binary files /dev/null and b/public/textures/mcwbyg/skyris_table.png differ diff --git a/public/textures/mcwbyg/skyris_top_roof.png b/public/textures/mcwbyg/skyris_top_roof.png new file mode 100644 index 00000000..60f67837 Binary files /dev/null and b/public/textures/mcwbyg/skyris_top_roof.png differ diff --git a/public/textures/mcwbyg/skyris_triple_drawer.png b/public/textures/mcwbyg/skyris_triple_drawer.png new file mode 100644 index 00000000..b4e74955 Binary files /dev/null and b/public/textures/mcwbyg/skyris_triple_drawer.png differ diff --git a/public/textures/mcwbyg/skyris_tropical_door.png b/public/textures/mcwbyg/skyris_tropical_door.png new file mode 100644 index 00000000..1617c354 Binary files /dev/null and b/public/textures/mcwbyg/skyris_tropical_door.png differ diff --git a/public/textures/mcwbyg/skyris_tropical_trapdoor.png b/public/textures/mcwbyg/skyris_tropical_trapdoor.png new file mode 100644 index 00000000..6eede0a6 Binary files /dev/null and b/public/textures/mcwbyg/skyris_tropical_trapdoor.png differ diff --git a/public/textures/mcwbyg/skyris_upper_lower_roof.png b/public/textures/mcwbyg/skyris_upper_lower_roof.png new file mode 100644 index 00000000..47aded79 Binary files /dev/null and b/public/textures/mcwbyg/skyris_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/skyris_upper_steep_roof.png b/public/textures/mcwbyg/skyris_upper_steep_roof.png new file mode 100644 index 00000000..50375a29 Binary files /dev/null and b/public/textures/mcwbyg/skyris_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/skyris_waffle_door.png b/public/textures/mcwbyg/skyris_waffle_door.png new file mode 100644 index 00000000..bf97894e Binary files /dev/null and b/public/textures/mcwbyg/skyris_waffle_door.png differ diff --git a/public/textures/mcwbyg/skyris_wardrobe.png b/public/textures/mcwbyg/skyris_wardrobe.png new file mode 100644 index 00000000..791d1281 Binary files /dev/null and b/public/textures/mcwbyg/skyris_wardrobe.png differ diff --git a/public/textures/mcwbyg/skyris_western_door.png b/public/textures/mcwbyg/skyris_western_door.png new file mode 100644 index 00000000..4cf73fe8 Binary files /dev/null and b/public/textures/mcwbyg/skyris_western_door.png differ diff --git a/public/textures/mcwbyg/skyris_whispering_door.png b/public/textures/mcwbyg/skyris_whispering_door.png new file mode 100644 index 00000000..516ff694 Binary files /dev/null and b/public/textures/mcwbyg/skyris_whispering_door.png differ diff --git a/public/textures/mcwbyg/skyris_whispering_trapdoor.png b/public/textures/mcwbyg/skyris_whispering_trapdoor.png new file mode 100644 index 00000000..4fc2b13b Binary files /dev/null and b/public/textures/mcwbyg/skyris_whispering_trapdoor.png differ diff --git a/public/textures/mcwbyg/skyris_window.png b/public/textures/mcwbyg/skyris_window.png new file mode 100644 index 00000000..49334f2e Binary files /dev/null and b/public/textures/mcwbyg/skyris_window.png differ diff --git a/public/textures/mcwbyg/skyris_window2.png b/public/textures/mcwbyg/skyris_window2.png new file mode 100644 index 00000000..f69a3223 Binary files /dev/null and b/public/textures/mcwbyg/skyris_window2.png differ diff --git a/public/textures/mcwbyg/skyris_wired_fence.png b/public/textures/mcwbyg/skyris_wired_fence.png new file mode 100644 index 00000000..95ff26c1 Binary files /dev/null and b/public/textures/mcwbyg/skyris_wired_fence.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_bookshelf.png b/public/textures/mcwbyg/stripped_aspen_bookshelf.png new file mode 100644 index 00000000..93a1d042 Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_bookshelf.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_bookshelf_cupboard.png b/public/textures/mcwbyg/stripped_aspen_bookshelf_cupboard.png new file mode 100644 index 00000000..d4e55e2b Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_aspen_bookshelf_drawer.png new file mode 100644 index 00000000..26e47d58 Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_chair.png b/public/textures/mcwbyg/stripped_aspen_chair.png new file mode 100644 index 00000000..52a6abb7 Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_chair.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_coffee_table.png b/public/textures/mcwbyg/stripped_aspen_coffee_table.png new file mode 100644 index 00000000..a4e403f0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_coffee_table.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_counter.png b/public/textures/mcwbyg/stripped_aspen_counter.png new file mode 100644 index 00000000..3c77bce2 Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_counter.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_covered_desk.png b/public/textures/mcwbyg/stripped_aspen_covered_desk.png new file mode 100644 index 00000000..69f2b933 Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_covered_desk.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_cupboard_counter.png b/public/textures/mcwbyg/stripped_aspen_cupboard_counter.png new file mode 100644 index 00000000..cc6ddbe0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_desk.png b/public/textures/mcwbyg/stripped_aspen_desk.png new file mode 100644 index 00000000..e0b237e5 Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_desk.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_double_drawer.png b/public/textures/mcwbyg/stripped_aspen_double_drawer.png new file mode 100644 index 00000000..66d67703 Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_double_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_double_drawer_counter.png b/public/textures/mcwbyg/stripped_aspen_double_drawer_counter.png new file mode 100644 index 00000000..e66693c8 Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_double_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_aspen_double_kitchen_cabinet.png new file mode 100644 index 00000000..a25ba777 Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_double_wardrobe.png b/public/textures/mcwbyg/stripped_aspen_double_wardrobe.png new file mode 100644 index 00000000..daf83627 Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_drawer.png b/public/textures/mcwbyg/stripped_aspen_drawer.png new file mode 100644 index 00000000..45cf550e Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_drawer_counter.png b/public/textures/mcwbyg/stripped_aspen_drawer_counter.png new file mode 100644 index 00000000..eef37bb1 Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_end_table.png b/public/textures/mcwbyg/stripped_aspen_end_table.png new file mode 100644 index 00000000..75aca5f9 Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_end_table.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_glass_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_aspen_glass_kitchen_cabinet.png new file mode 100644 index 00000000..0e3f1fdc Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_glass_table.png b/public/textures/mcwbyg/stripped_aspen_glass_table.png new file mode 100644 index 00000000..d8d71651 Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_glass_table.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_aspen_kitchen_cabinet.png new file mode 100644 index 00000000..0f29c88b Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_large_drawer.png b/public/textures/mcwbyg/stripped_aspen_large_drawer.png new file mode 100644 index 00000000..d0867f0f Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_large_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_log_four_window.png b/public/textures/mcwbyg/stripped_aspen_log_four_window.png new file mode 100644 index 00000000..ecfdb647 Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_log_four_window.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_log_window.png b/public/textures/mcwbyg/stripped_aspen_log_window.png new file mode 100644 index 00000000..ce80f8c5 Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_log_window.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_log_window2.png b/public/textures/mcwbyg/stripped_aspen_log_window2.png new file mode 100644 index 00000000..cd0ba4dd Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_log_window2.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_lower_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_aspen_lower_bookshelf_drawer.png new file mode 100644 index 00000000..c702faa7 Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_lower_triple_drawer.png b/public/textures/mcwbyg/stripped_aspen_lower_triple_drawer.png new file mode 100644 index 00000000..7c6759b0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_modern_chair.png b/public/textures/mcwbyg/stripped_aspen_modern_chair.png new file mode 100644 index 00000000..01d031fe Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_modern_chair.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_modern_desk.png b/public/textures/mcwbyg/stripped_aspen_modern_desk.png new file mode 100644 index 00000000..0bc3b397 Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_modern_desk.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_modern_wardrobe.png b/public/textures/mcwbyg/stripped_aspen_modern_wardrobe.png new file mode 100644 index 00000000..e17d1b87 Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_pane_window.png b/public/textures/mcwbyg/stripped_aspen_pane_window.png new file mode 100644 index 00000000..d04672fa Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_pane_window.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_stool_chair.png b/public/textures/mcwbyg/stripped_aspen_stool_chair.png new file mode 100644 index 00000000..ce677274 Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_stool_chair.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_striped_chair.png b/public/textures/mcwbyg/stripped_aspen_striped_chair.png new file mode 100644 index 00000000..6301fee1 Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_striped_chair.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_table.png b/public/textures/mcwbyg/stripped_aspen_table.png new file mode 100644 index 00000000..7dbf885b Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_table.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_triple_drawer.png b/public/textures/mcwbyg/stripped_aspen_triple_drawer.png new file mode 100644 index 00000000..215abd87 Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_aspen_wardrobe.png b/public/textures/mcwbyg/stripped_aspen_wardrobe.png new file mode 100644 index 00000000..9f12d3ad Binary files /dev/null and b/public/textures/mcwbyg/stripped_aspen_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_bookshelf.png b/public/textures/mcwbyg/stripped_baobab_bookshelf.png new file mode 100644 index 00000000..a818b12b Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_bookshelf.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_bookshelf_cupboard.png b/public/textures/mcwbyg/stripped_baobab_bookshelf_cupboard.png new file mode 100644 index 00000000..2a7e50d8 Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_baobab_bookshelf_drawer.png new file mode 100644 index 00000000..572593e1 Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_chair.png b/public/textures/mcwbyg/stripped_baobab_chair.png new file mode 100644 index 00000000..eff29cef Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_chair.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_coffee_table.png b/public/textures/mcwbyg/stripped_baobab_coffee_table.png new file mode 100644 index 00000000..08a2fd76 Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_coffee_table.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_counter.png b/public/textures/mcwbyg/stripped_baobab_counter.png new file mode 100644 index 00000000..4a21b755 Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_counter.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_covered_desk.png b/public/textures/mcwbyg/stripped_baobab_covered_desk.png new file mode 100644 index 00000000..cf085d50 Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_covered_desk.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_cupboard_counter.png b/public/textures/mcwbyg/stripped_baobab_cupboard_counter.png new file mode 100644 index 00000000..05c283dc Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_desk.png b/public/textures/mcwbyg/stripped_baobab_desk.png new file mode 100644 index 00000000..87ff616a Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_desk.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_double_drawer.png b/public/textures/mcwbyg/stripped_baobab_double_drawer.png new file mode 100644 index 00000000..22ec9d8c Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_double_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_double_drawer_counter.png b/public/textures/mcwbyg/stripped_baobab_double_drawer_counter.png new file mode 100644 index 00000000..913b26d2 Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_double_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_baobab_double_kitchen_cabinet.png new file mode 100644 index 00000000..2c21e6d3 Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_double_wardrobe.png b/public/textures/mcwbyg/stripped_baobab_double_wardrobe.png new file mode 100644 index 00000000..2daf9423 Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_drawer.png b/public/textures/mcwbyg/stripped_baobab_drawer.png new file mode 100644 index 00000000..a685c805 Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_drawer_counter.png b/public/textures/mcwbyg/stripped_baobab_drawer_counter.png new file mode 100644 index 00000000..d0af8c23 Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_end_table.png b/public/textures/mcwbyg/stripped_baobab_end_table.png new file mode 100644 index 00000000..7aa6f7e5 Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_end_table.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_glass_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_baobab_glass_kitchen_cabinet.png new file mode 100644 index 00000000..3f520ad0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_glass_table.png b/public/textures/mcwbyg/stripped_baobab_glass_table.png new file mode 100644 index 00000000..054b818b Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_glass_table.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_baobab_kitchen_cabinet.png new file mode 100644 index 00000000..9253dfcc Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_large_drawer.png b/public/textures/mcwbyg/stripped_baobab_large_drawer.png new file mode 100644 index 00000000..85597ec3 Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_large_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_log_four_window.png b/public/textures/mcwbyg/stripped_baobab_log_four_window.png new file mode 100644 index 00000000..912cd939 Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_log_four_window.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_log_window.png b/public/textures/mcwbyg/stripped_baobab_log_window.png new file mode 100644 index 00000000..a877a932 Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_log_window.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_log_window2.png b/public/textures/mcwbyg/stripped_baobab_log_window2.png new file mode 100644 index 00000000..6a3f0a46 Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_log_window2.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_lower_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_baobab_lower_bookshelf_drawer.png new file mode 100644 index 00000000..e9f13c4b Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_lower_triple_drawer.png b/public/textures/mcwbyg/stripped_baobab_lower_triple_drawer.png new file mode 100644 index 00000000..305eb530 Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_modern_chair.png b/public/textures/mcwbyg/stripped_baobab_modern_chair.png new file mode 100644 index 00000000..f17c4713 Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_modern_chair.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_modern_desk.png b/public/textures/mcwbyg/stripped_baobab_modern_desk.png new file mode 100644 index 00000000..1bdd7f4b Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_modern_desk.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_modern_wardrobe.png b/public/textures/mcwbyg/stripped_baobab_modern_wardrobe.png new file mode 100644 index 00000000..5d2ccb2f Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_pane_window.png b/public/textures/mcwbyg/stripped_baobab_pane_window.png new file mode 100644 index 00000000..0037ba78 Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_pane_window.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_stool_chair.png b/public/textures/mcwbyg/stripped_baobab_stool_chair.png new file mode 100644 index 00000000..fb6222ff Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_stool_chair.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_striped_chair.png b/public/textures/mcwbyg/stripped_baobab_striped_chair.png new file mode 100644 index 00000000..4c42af8b Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_striped_chair.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_table.png b/public/textures/mcwbyg/stripped_baobab_table.png new file mode 100644 index 00000000..c998332c Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_table.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_triple_drawer.png b/public/textures/mcwbyg/stripped_baobab_triple_drawer.png new file mode 100644 index 00000000..d1e04237 Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_baobab_wardrobe.png b/public/textures/mcwbyg/stripped_baobab_wardrobe.png new file mode 100644 index 00000000..53626591 Binary files /dev/null and b/public/textures/mcwbyg/stripped_baobab_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_bookshelf.png b/public/textures/mcwbyg/stripped_blue_enchanted_bookshelf.png new file mode 100644 index 00000000..d78d14bf Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_bookshelf.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_bookshelf_cupboard.png b/public/textures/mcwbyg/stripped_blue_enchanted_bookshelf_cupboard.png new file mode 100644 index 00000000..6768f988 Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_blue_enchanted_bookshelf_drawer.png new file mode 100644 index 00000000..06b8064c Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_chair.png b/public/textures/mcwbyg/stripped_blue_enchanted_chair.png new file mode 100644 index 00000000..f2c7ae94 Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_chair.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_coffee_table.png b/public/textures/mcwbyg/stripped_blue_enchanted_coffee_table.png new file mode 100644 index 00000000..4ab56615 Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_coffee_table.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_counter.png b/public/textures/mcwbyg/stripped_blue_enchanted_counter.png new file mode 100644 index 00000000..f3fc17e6 Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_counter.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_covered_desk.png b/public/textures/mcwbyg/stripped_blue_enchanted_covered_desk.png new file mode 100644 index 00000000..85a559cf Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_covered_desk.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_cupboard_counter.png b/public/textures/mcwbyg/stripped_blue_enchanted_cupboard_counter.png new file mode 100644 index 00000000..f20c3f98 Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_desk.png b/public/textures/mcwbyg/stripped_blue_enchanted_desk.png new file mode 100644 index 00000000..ba8f8ab2 Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_desk.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_double_drawer.png b/public/textures/mcwbyg/stripped_blue_enchanted_double_drawer.png new file mode 100644 index 00000000..9287d2b5 Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_double_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_double_drawer_counter.png b/public/textures/mcwbyg/stripped_blue_enchanted_double_drawer_counter.png new file mode 100644 index 00000000..f019ddeb Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_double_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_blue_enchanted_double_kitchen_cabinet.png new file mode 100644 index 00000000..ce5fc18f Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_double_wardrobe.png b/public/textures/mcwbyg/stripped_blue_enchanted_double_wardrobe.png new file mode 100644 index 00000000..445d7881 Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_drawer.png b/public/textures/mcwbyg/stripped_blue_enchanted_drawer.png new file mode 100644 index 00000000..3b8bf15a Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_drawer_counter.png b/public/textures/mcwbyg/stripped_blue_enchanted_drawer_counter.png new file mode 100644 index 00000000..ec5b6896 Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_end_table.png b/public/textures/mcwbyg/stripped_blue_enchanted_end_table.png new file mode 100644 index 00000000..9363fa5e Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_end_table.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_glass_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_blue_enchanted_glass_kitchen_cabinet.png new file mode 100644 index 00000000..282f5ddd Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_glass_table.png b/public/textures/mcwbyg/stripped_blue_enchanted_glass_table.png new file mode 100644 index 00000000..58a7c0ff Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_glass_table.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_blue_enchanted_kitchen_cabinet.png new file mode 100644 index 00000000..7e79da4c Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_large_drawer.png b/public/textures/mcwbyg/stripped_blue_enchanted_large_drawer.png new file mode 100644 index 00000000..e2174bcc Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_large_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_log_four_window.png b/public/textures/mcwbyg/stripped_blue_enchanted_log_four_window.png new file mode 100644 index 00000000..9f2fe2d6 Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_log_four_window.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_log_window.png b/public/textures/mcwbyg/stripped_blue_enchanted_log_window.png new file mode 100644 index 00000000..436a1a4e Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_log_window.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_log_window2.png b/public/textures/mcwbyg/stripped_blue_enchanted_log_window2.png new file mode 100644 index 00000000..294cd653 Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_log_window2.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_lower_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_blue_enchanted_lower_bookshelf_drawer.png new file mode 100644 index 00000000..fce129fe Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_lower_triple_drawer.png b/public/textures/mcwbyg/stripped_blue_enchanted_lower_triple_drawer.png new file mode 100644 index 00000000..44cca110 Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_modern_chair.png b/public/textures/mcwbyg/stripped_blue_enchanted_modern_chair.png new file mode 100644 index 00000000..1d80337c Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_modern_chair.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_modern_desk.png b/public/textures/mcwbyg/stripped_blue_enchanted_modern_desk.png new file mode 100644 index 00000000..02d54d07 Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_modern_desk.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_modern_wardrobe.png b/public/textures/mcwbyg/stripped_blue_enchanted_modern_wardrobe.png new file mode 100644 index 00000000..c38d95d6 Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_pane_window.png b/public/textures/mcwbyg/stripped_blue_enchanted_pane_window.png new file mode 100644 index 00000000..d0c45f2e Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_pane_window.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_stool_chair.png b/public/textures/mcwbyg/stripped_blue_enchanted_stool_chair.png new file mode 100644 index 00000000..c55164d8 Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_stool_chair.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_striped_chair.png b/public/textures/mcwbyg/stripped_blue_enchanted_striped_chair.png new file mode 100644 index 00000000..c0668897 Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_striped_chair.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_table.png b/public/textures/mcwbyg/stripped_blue_enchanted_table.png new file mode 100644 index 00000000..364aa9ba Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_table.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_triple_drawer.png b/public/textures/mcwbyg/stripped_blue_enchanted_triple_drawer.png new file mode 100644 index 00000000..2e93cd6e Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_blue_enchanted_wardrobe.png b/public/textures/mcwbyg/stripped_blue_enchanted_wardrobe.png new file mode 100644 index 00000000..a2bbed9f Binary files /dev/null and b/public/textures/mcwbyg/stripped_blue_enchanted_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_cika_bookshelf.png b/public/textures/mcwbyg/stripped_cika_bookshelf.png new file mode 100644 index 00000000..ceb2d362 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_bookshelf.png differ diff --git a/public/textures/mcwbyg/stripped_cika_bookshelf_cupboard.png b/public/textures/mcwbyg/stripped_cika_bookshelf_cupboard.png new file mode 100644 index 00000000..768da4ce Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/stripped_cika_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_cika_bookshelf_drawer.png new file mode 100644 index 00000000..52a9febf Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_cika_chair.png b/public/textures/mcwbyg/stripped_cika_chair.png new file mode 100644 index 00000000..542de04e Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_chair.png differ diff --git a/public/textures/mcwbyg/stripped_cika_coffee_table.png b/public/textures/mcwbyg/stripped_cika_coffee_table.png new file mode 100644 index 00000000..0a41247a Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_coffee_table.png differ diff --git a/public/textures/mcwbyg/stripped_cika_counter.png b/public/textures/mcwbyg/stripped_cika_counter.png new file mode 100644 index 00000000..a6980a97 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_counter.png differ diff --git a/public/textures/mcwbyg/stripped_cika_covered_desk.png b/public/textures/mcwbyg/stripped_cika_covered_desk.png new file mode 100644 index 00000000..a4b49503 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_covered_desk.png differ diff --git a/public/textures/mcwbyg/stripped_cika_cupboard_counter.png b/public/textures/mcwbyg/stripped_cika_cupboard_counter.png new file mode 100644 index 00000000..197dcc40 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/stripped_cika_desk.png b/public/textures/mcwbyg/stripped_cika_desk.png new file mode 100644 index 00000000..a14eb250 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_desk.png differ diff --git a/public/textures/mcwbyg/stripped_cika_double_drawer.png b/public/textures/mcwbyg/stripped_cika_double_drawer.png new file mode 100644 index 00000000..c4cb7ade Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_double_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_cika_double_drawer_counter.png b/public/textures/mcwbyg/stripped_cika_double_drawer_counter.png new file mode 100644 index 00000000..cff63c0d Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_cika_double_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_cika_double_kitchen_cabinet.png new file mode 100644 index 00000000..b72e62f4 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_cika_double_wardrobe.png b/public/textures/mcwbyg/stripped_cika_double_wardrobe.png new file mode 100644 index 00000000..58efddc3 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_cika_drawer.png b/public/textures/mcwbyg/stripped_cika_drawer.png new file mode 100644 index 00000000..162e9a40 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_cika_drawer_counter.png b/public/textures/mcwbyg/stripped_cika_drawer_counter.png new file mode 100644 index 00000000..2d9d990d Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_cika_end_table.png b/public/textures/mcwbyg/stripped_cika_end_table.png new file mode 100644 index 00000000..3d3e2565 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_end_table.png differ diff --git a/public/textures/mcwbyg/stripped_cika_glass_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_cika_glass_kitchen_cabinet.png new file mode 100644 index 00000000..c30ff72e Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_cika_glass_table.png b/public/textures/mcwbyg/stripped_cika_glass_table.png new file mode 100644 index 00000000..58bd51b9 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_glass_table.png differ diff --git a/public/textures/mcwbyg/stripped_cika_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_cika_kitchen_cabinet.png new file mode 100644 index 00000000..9b1b0871 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_cika_large_drawer.png b/public/textures/mcwbyg/stripped_cika_large_drawer.png new file mode 100644 index 00000000..1aac27c9 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_large_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_cika_log_four_window.png b/public/textures/mcwbyg/stripped_cika_log_four_window.png new file mode 100644 index 00000000..3989bd39 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_log_four_window.png differ diff --git a/public/textures/mcwbyg/stripped_cika_log_window.png b/public/textures/mcwbyg/stripped_cika_log_window.png new file mode 100644 index 00000000..4554a33e Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_log_window.png differ diff --git a/public/textures/mcwbyg/stripped_cika_log_window2.png b/public/textures/mcwbyg/stripped_cika_log_window2.png new file mode 100644 index 00000000..4bc3c58a Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_log_window2.png differ diff --git a/public/textures/mcwbyg/stripped_cika_lower_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_cika_lower_bookshelf_drawer.png new file mode 100644 index 00000000..bed1793f Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_cika_lower_triple_drawer.png b/public/textures/mcwbyg/stripped_cika_lower_triple_drawer.png new file mode 100644 index 00000000..7aee1562 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_cika_modern_chair.png b/public/textures/mcwbyg/stripped_cika_modern_chair.png new file mode 100644 index 00000000..74c0a550 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_modern_chair.png differ diff --git a/public/textures/mcwbyg/stripped_cika_modern_desk.png b/public/textures/mcwbyg/stripped_cika_modern_desk.png new file mode 100644 index 00000000..8df763ce Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_modern_desk.png differ diff --git a/public/textures/mcwbyg/stripped_cika_modern_wardrobe.png b/public/textures/mcwbyg/stripped_cika_modern_wardrobe.png new file mode 100644 index 00000000..abf3d1fd Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_cika_pane_window.png b/public/textures/mcwbyg/stripped_cika_pane_window.png new file mode 100644 index 00000000..0ff691c0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_pane_window.png differ diff --git a/public/textures/mcwbyg/stripped_cika_stool_chair.png b/public/textures/mcwbyg/stripped_cika_stool_chair.png new file mode 100644 index 00000000..41289876 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_stool_chair.png differ diff --git a/public/textures/mcwbyg/stripped_cika_striped_chair.png b/public/textures/mcwbyg/stripped_cika_striped_chair.png new file mode 100644 index 00000000..da4cd174 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_striped_chair.png differ diff --git a/public/textures/mcwbyg/stripped_cika_table.png b/public/textures/mcwbyg/stripped_cika_table.png new file mode 100644 index 00000000..90795566 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_table.png differ diff --git a/public/textures/mcwbyg/stripped_cika_triple_drawer.png b/public/textures/mcwbyg/stripped_cika_triple_drawer.png new file mode 100644 index 00000000..be36a967 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_cika_wardrobe.png b/public/textures/mcwbyg/stripped_cika_wardrobe.png new file mode 100644 index 00000000..0c4fb4a4 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cika_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_bookshelf.png b/public/textures/mcwbyg/stripped_cypress_bookshelf.png new file mode 100644 index 00000000..5be802ac Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_bookshelf.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_bookshelf_cupboard.png b/public/textures/mcwbyg/stripped_cypress_bookshelf_cupboard.png new file mode 100644 index 00000000..ba3a0f2c Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_cypress_bookshelf_drawer.png new file mode 100644 index 00000000..ec326bcf Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_chair.png b/public/textures/mcwbyg/stripped_cypress_chair.png new file mode 100644 index 00000000..14102c98 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_chair.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_coffee_table.png b/public/textures/mcwbyg/stripped_cypress_coffee_table.png new file mode 100644 index 00000000..4c487ab2 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_coffee_table.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_counter.png b/public/textures/mcwbyg/stripped_cypress_counter.png new file mode 100644 index 00000000..bf983983 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_counter.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_covered_desk.png b/public/textures/mcwbyg/stripped_cypress_covered_desk.png new file mode 100644 index 00000000..e4f8888e Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_covered_desk.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_cupboard_counter.png b/public/textures/mcwbyg/stripped_cypress_cupboard_counter.png new file mode 100644 index 00000000..a35b86c0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_desk.png b/public/textures/mcwbyg/stripped_cypress_desk.png new file mode 100644 index 00000000..c3a3b777 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_desk.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_double_drawer.png b/public/textures/mcwbyg/stripped_cypress_double_drawer.png new file mode 100644 index 00000000..23b10ceb Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_double_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_double_drawer_counter.png b/public/textures/mcwbyg/stripped_cypress_double_drawer_counter.png new file mode 100644 index 00000000..371d6af6 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_double_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_cypress_double_kitchen_cabinet.png new file mode 100644 index 00000000..882ee8bf Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_double_wardrobe.png b/public/textures/mcwbyg/stripped_cypress_double_wardrobe.png new file mode 100644 index 00000000..407b133a Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_drawer.png b/public/textures/mcwbyg/stripped_cypress_drawer.png new file mode 100644 index 00000000..e6176f85 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_drawer_counter.png b/public/textures/mcwbyg/stripped_cypress_drawer_counter.png new file mode 100644 index 00000000..14d439bc Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_end_table.png b/public/textures/mcwbyg/stripped_cypress_end_table.png new file mode 100644 index 00000000..ea2ac344 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_end_table.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_glass_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_cypress_glass_kitchen_cabinet.png new file mode 100644 index 00000000..f8633e9c Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_glass_table.png b/public/textures/mcwbyg/stripped_cypress_glass_table.png new file mode 100644 index 00000000..77bfed1e Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_glass_table.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_cypress_kitchen_cabinet.png new file mode 100644 index 00000000..2bf77b84 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_large_drawer.png b/public/textures/mcwbyg/stripped_cypress_large_drawer.png new file mode 100644 index 00000000..f6c8a8f0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_large_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_log_four_window.png b/public/textures/mcwbyg/stripped_cypress_log_four_window.png new file mode 100644 index 00000000..baf3d40a Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_log_four_window.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_log_window.png b/public/textures/mcwbyg/stripped_cypress_log_window.png new file mode 100644 index 00000000..f88ef3c2 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_log_window.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_log_window2.png b/public/textures/mcwbyg/stripped_cypress_log_window2.png new file mode 100644 index 00000000..f03d34f4 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_log_window2.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_lower_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_cypress_lower_bookshelf_drawer.png new file mode 100644 index 00000000..3a6ebd6f Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_lower_triple_drawer.png b/public/textures/mcwbyg/stripped_cypress_lower_triple_drawer.png new file mode 100644 index 00000000..265f2c1e Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_modern_chair.png b/public/textures/mcwbyg/stripped_cypress_modern_chair.png new file mode 100644 index 00000000..3308e5cd Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_modern_chair.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_modern_desk.png b/public/textures/mcwbyg/stripped_cypress_modern_desk.png new file mode 100644 index 00000000..dec129e2 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_modern_desk.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_modern_wardrobe.png b/public/textures/mcwbyg/stripped_cypress_modern_wardrobe.png new file mode 100644 index 00000000..fc1f4edb Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_pane_window.png b/public/textures/mcwbyg/stripped_cypress_pane_window.png new file mode 100644 index 00000000..efd55f11 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_pane_window.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_stool_chair.png b/public/textures/mcwbyg/stripped_cypress_stool_chair.png new file mode 100644 index 00000000..7be325f6 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_stool_chair.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_striped_chair.png b/public/textures/mcwbyg/stripped_cypress_striped_chair.png new file mode 100644 index 00000000..7ac0623b Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_striped_chair.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_table.png b/public/textures/mcwbyg/stripped_cypress_table.png new file mode 100644 index 00000000..e9a372b8 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_table.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_triple_drawer.png b/public/textures/mcwbyg/stripped_cypress_triple_drawer.png new file mode 100644 index 00000000..0c6dfba4 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_cypress_wardrobe.png b/public/textures/mcwbyg/stripped_cypress_wardrobe.png new file mode 100644 index 00000000..80481a83 Binary files /dev/null and b/public/textures/mcwbyg/stripped_cypress_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_bookshelf.png b/public/textures/mcwbyg/stripped_ebony_bookshelf.png new file mode 100644 index 00000000..968bac3c Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_bookshelf.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_bookshelf_cupboard.png b/public/textures/mcwbyg/stripped_ebony_bookshelf_cupboard.png new file mode 100644 index 00000000..9f70967d Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_ebony_bookshelf_drawer.png new file mode 100644 index 00000000..0090840d Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_chair.png b/public/textures/mcwbyg/stripped_ebony_chair.png new file mode 100644 index 00000000..a54a8b63 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_chair.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_coffee_table.png b/public/textures/mcwbyg/stripped_ebony_coffee_table.png new file mode 100644 index 00000000..23f87a99 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_coffee_table.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_counter.png b/public/textures/mcwbyg/stripped_ebony_counter.png new file mode 100644 index 00000000..ffce3e43 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_counter.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_covered_desk.png b/public/textures/mcwbyg/stripped_ebony_covered_desk.png new file mode 100644 index 00000000..9123f5c5 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_covered_desk.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_cupboard_counter.png b/public/textures/mcwbyg/stripped_ebony_cupboard_counter.png new file mode 100644 index 00000000..086d6bca Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_desk.png b/public/textures/mcwbyg/stripped_ebony_desk.png new file mode 100644 index 00000000..82ff78c8 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_desk.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_double_drawer.png b/public/textures/mcwbyg/stripped_ebony_double_drawer.png new file mode 100644 index 00000000..362f2b08 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_double_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_double_drawer_counter.png b/public/textures/mcwbyg/stripped_ebony_double_drawer_counter.png new file mode 100644 index 00000000..e045142b Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_double_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_ebony_double_kitchen_cabinet.png new file mode 100644 index 00000000..5088c08c Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_double_wardrobe.png b/public/textures/mcwbyg/stripped_ebony_double_wardrobe.png new file mode 100644 index 00000000..6db8c22b Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_drawer.png b/public/textures/mcwbyg/stripped_ebony_drawer.png new file mode 100644 index 00000000..61e04d3d Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_drawer_counter.png b/public/textures/mcwbyg/stripped_ebony_drawer_counter.png new file mode 100644 index 00000000..586452a9 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_end_table.png b/public/textures/mcwbyg/stripped_ebony_end_table.png new file mode 100644 index 00000000..7c26b5b5 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_end_table.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_glass_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_ebony_glass_kitchen_cabinet.png new file mode 100644 index 00000000..a06faa01 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_glass_table.png b/public/textures/mcwbyg/stripped_ebony_glass_table.png new file mode 100644 index 00000000..39a14902 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_glass_table.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_ebony_kitchen_cabinet.png new file mode 100644 index 00000000..025fb5a6 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_large_drawer.png b/public/textures/mcwbyg/stripped_ebony_large_drawer.png new file mode 100644 index 00000000..120d0d8d Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_large_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_log_four_window.png b/public/textures/mcwbyg/stripped_ebony_log_four_window.png new file mode 100644 index 00000000..a7166125 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_log_four_window.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_log_window.png b/public/textures/mcwbyg/stripped_ebony_log_window.png new file mode 100644 index 00000000..f4d2eaa8 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_log_window.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_log_window2.png b/public/textures/mcwbyg/stripped_ebony_log_window2.png new file mode 100644 index 00000000..12f3259a Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_log_window2.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_lower_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_ebony_lower_bookshelf_drawer.png new file mode 100644 index 00000000..a8424062 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_lower_triple_drawer.png b/public/textures/mcwbyg/stripped_ebony_lower_triple_drawer.png new file mode 100644 index 00000000..b82a85bb Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_modern_chair.png b/public/textures/mcwbyg/stripped_ebony_modern_chair.png new file mode 100644 index 00000000..40856fa3 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_modern_chair.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_modern_desk.png b/public/textures/mcwbyg/stripped_ebony_modern_desk.png new file mode 100644 index 00000000..f00bafd3 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_modern_desk.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_modern_wardrobe.png b/public/textures/mcwbyg/stripped_ebony_modern_wardrobe.png new file mode 100644 index 00000000..ecab6abd Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_pane_window.png b/public/textures/mcwbyg/stripped_ebony_pane_window.png new file mode 100644 index 00000000..68ca23cd Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_pane_window.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_stool_chair.png b/public/textures/mcwbyg/stripped_ebony_stool_chair.png new file mode 100644 index 00000000..c86f4b8e Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_stool_chair.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_striped_chair.png b/public/textures/mcwbyg/stripped_ebony_striped_chair.png new file mode 100644 index 00000000..7a1613c5 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_striped_chair.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_table.png b/public/textures/mcwbyg/stripped_ebony_table.png new file mode 100644 index 00000000..789577f3 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_table.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_triple_drawer.png b/public/textures/mcwbyg/stripped_ebony_triple_drawer.png new file mode 100644 index 00000000..8baecb98 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_ebony_wardrobe.png b/public/textures/mcwbyg/stripped_ebony_wardrobe.png new file mode 100644 index 00000000..b80054f4 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ebony_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_fir_bookshelf.png b/public/textures/mcwbyg/stripped_fir_bookshelf.png new file mode 100644 index 00000000..cdc453b5 Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_bookshelf.png differ diff --git a/public/textures/mcwbyg/stripped_fir_bookshelf_cupboard.png b/public/textures/mcwbyg/stripped_fir_bookshelf_cupboard.png new file mode 100644 index 00000000..432de4ee Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/stripped_fir_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_fir_bookshelf_drawer.png new file mode 100644 index 00000000..e318db04 Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_fir_chair.png b/public/textures/mcwbyg/stripped_fir_chair.png new file mode 100644 index 00000000..a5588af4 Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_chair.png differ diff --git a/public/textures/mcwbyg/stripped_fir_coffee_table.png b/public/textures/mcwbyg/stripped_fir_coffee_table.png new file mode 100644 index 00000000..89f3ae45 Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_coffee_table.png differ diff --git a/public/textures/mcwbyg/stripped_fir_counter.png b/public/textures/mcwbyg/stripped_fir_counter.png new file mode 100644 index 00000000..22572040 Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_counter.png differ diff --git a/public/textures/mcwbyg/stripped_fir_covered_desk.png b/public/textures/mcwbyg/stripped_fir_covered_desk.png new file mode 100644 index 00000000..0b4018db Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_covered_desk.png differ diff --git a/public/textures/mcwbyg/stripped_fir_cupboard_counter.png b/public/textures/mcwbyg/stripped_fir_cupboard_counter.png new file mode 100644 index 00000000..a0f9c7d0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/stripped_fir_desk.png b/public/textures/mcwbyg/stripped_fir_desk.png new file mode 100644 index 00000000..afa392af Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_desk.png differ diff --git a/public/textures/mcwbyg/stripped_fir_double_drawer.png b/public/textures/mcwbyg/stripped_fir_double_drawer.png new file mode 100644 index 00000000..51874159 Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_double_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_fir_double_drawer_counter.png b/public/textures/mcwbyg/stripped_fir_double_drawer_counter.png new file mode 100644 index 00000000..b5688340 Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_fir_double_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_fir_double_kitchen_cabinet.png new file mode 100644 index 00000000..7a0529ec Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_fir_double_wardrobe.png b/public/textures/mcwbyg/stripped_fir_double_wardrobe.png new file mode 100644 index 00000000..68a03c59 Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_fir_drawer.png b/public/textures/mcwbyg/stripped_fir_drawer.png new file mode 100644 index 00000000..84561b85 Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_fir_drawer_counter.png b/public/textures/mcwbyg/stripped_fir_drawer_counter.png new file mode 100644 index 00000000..01e2fe3f Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_fir_end_table.png b/public/textures/mcwbyg/stripped_fir_end_table.png new file mode 100644 index 00000000..2a5ff094 Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_end_table.png differ diff --git a/public/textures/mcwbyg/stripped_fir_glass_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_fir_glass_kitchen_cabinet.png new file mode 100644 index 00000000..392d3592 Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_fir_glass_table.png b/public/textures/mcwbyg/stripped_fir_glass_table.png new file mode 100644 index 00000000..a91700cf Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_glass_table.png differ diff --git a/public/textures/mcwbyg/stripped_fir_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_fir_kitchen_cabinet.png new file mode 100644 index 00000000..4e09c9dc Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_fir_large_drawer.png b/public/textures/mcwbyg/stripped_fir_large_drawer.png new file mode 100644 index 00000000..2f8ae1cf Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_large_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_fir_log_four_window.png b/public/textures/mcwbyg/stripped_fir_log_four_window.png new file mode 100644 index 00000000..130e5935 Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_log_four_window.png differ diff --git a/public/textures/mcwbyg/stripped_fir_log_window.png b/public/textures/mcwbyg/stripped_fir_log_window.png new file mode 100644 index 00000000..149b2ea8 Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_log_window.png differ diff --git a/public/textures/mcwbyg/stripped_fir_log_window2.png b/public/textures/mcwbyg/stripped_fir_log_window2.png new file mode 100644 index 00000000..699bd551 Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_log_window2.png differ diff --git a/public/textures/mcwbyg/stripped_fir_lower_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_fir_lower_bookshelf_drawer.png new file mode 100644 index 00000000..aff6ac98 Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_fir_lower_triple_drawer.png b/public/textures/mcwbyg/stripped_fir_lower_triple_drawer.png new file mode 100644 index 00000000..8e1047f2 Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_fir_modern_chair.png b/public/textures/mcwbyg/stripped_fir_modern_chair.png new file mode 100644 index 00000000..f06ab3bd Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_modern_chair.png differ diff --git a/public/textures/mcwbyg/stripped_fir_modern_desk.png b/public/textures/mcwbyg/stripped_fir_modern_desk.png new file mode 100644 index 00000000..65e02e92 Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_modern_desk.png differ diff --git a/public/textures/mcwbyg/stripped_fir_modern_wardrobe.png b/public/textures/mcwbyg/stripped_fir_modern_wardrobe.png new file mode 100644 index 00000000..b22ca756 Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_fir_pane_window.png b/public/textures/mcwbyg/stripped_fir_pane_window.png new file mode 100644 index 00000000..7e2363cb Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_pane_window.png differ diff --git a/public/textures/mcwbyg/stripped_fir_stool_chair.png b/public/textures/mcwbyg/stripped_fir_stool_chair.png new file mode 100644 index 00000000..c9421f8c Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_stool_chair.png differ diff --git a/public/textures/mcwbyg/stripped_fir_striped_chair.png b/public/textures/mcwbyg/stripped_fir_striped_chair.png new file mode 100644 index 00000000..090332a2 Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_striped_chair.png differ diff --git a/public/textures/mcwbyg/stripped_fir_table.png b/public/textures/mcwbyg/stripped_fir_table.png new file mode 100644 index 00000000..326d1839 Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_table.png differ diff --git a/public/textures/mcwbyg/stripped_fir_triple_drawer.png b/public/textures/mcwbyg/stripped_fir_triple_drawer.png new file mode 100644 index 00000000..75d0b9bb Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_fir_wardrobe.png b/public/textures/mcwbyg/stripped_fir_wardrobe.png new file mode 100644 index 00000000..1dd72482 Binary files /dev/null and b/public/textures/mcwbyg/stripped_fir_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_florus_bookshelf.png b/public/textures/mcwbyg/stripped_florus_bookshelf.png new file mode 100644 index 00000000..11152b02 Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_bookshelf.png differ diff --git a/public/textures/mcwbyg/stripped_florus_bookshelf_cupboard.png b/public/textures/mcwbyg/stripped_florus_bookshelf_cupboard.png new file mode 100644 index 00000000..fbcaae04 Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/stripped_florus_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_florus_bookshelf_drawer.png new file mode 100644 index 00000000..c393084d Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_florus_chair.png b/public/textures/mcwbyg/stripped_florus_chair.png new file mode 100644 index 00000000..22bcba7a Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_chair.png differ diff --git a/public/textures/mcwbyg/stripped_florus_coffee_table.png b/public/textures/mcwbyg/stripped_florus_coffee_table.png new file mode 100644 index 00000000..ef1e6ce1 Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_coffee_table.png differ diff --git a/public/textures/mcwbyg/stripped_florus_counter.png b/public/textures/mcwbyg/stripped_florus_counter.png new file mode 100644 index 00000000..0eace64b Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_counter.png differ diff --git a/public/textures/mcwbyg/stripped_florus_covered_desk.png b/public/textures/mcwbyg/stripped_florus_covered_desk.png new file mode 100644 index 00000000..7062a23d Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_covered_desk.png differ diff --git a/public/textures/mcwbyg/stripped_florus_cupboard_counter.png b/public/textures/mcwbyg/stripped_florus_cupboard_counter.png new file mode 100644 index 00000000..6230ab7c Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/stripped_florus_desk.png b/public/textures/mcwbyg/stripped_florus_desk.png new file mode 100644 index 00000000..f33c6bc8 Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_desk.png differ diff --git a/public/textures/mcwbyg/stripped_florus_double_drawer.png b/public/textures/mcwbyg/stripped_florus_double_drawer.png new file mode 100644 index 00000000..7818f8f8 Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_double_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_florus_double_drawer_counter.png b/public/textures/mcwbyg/stripped_florus_double_drawer_counter.png new file mode 100644 index 00000000..53321a2e Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_florus_double_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_florus_double_kitchen_cabinet.png new file mode 100644 index 00000000..44bed438 Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_florus_double_wardrobe.png b/public/textures/mcwbyg/stripped_florus_double_wardrobe.png new file mode 100644 index 00000000..54c7f686 Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_florus_drawer.png b/public/textures/mcwbyg/stripped_florus_drawer.png new file mode 100644 index 00000000..e9cf3625 Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_florus_drawer_counter.png b/public/textures/mcwbyg/stripped_florus_drawer_counter.png new file mode 100644 index 00000000..456de88d Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_florus_end_table.png b/public/textures/mcwbyg/stripped_florus_end_table.png new file mode 100644 index 00000000..a5c6d099 Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_end_table.png differ diff --git a/public/textures/mcwbyg/stripped_florus_glass_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_florus_glass_kitchen_cabinet.png new file mode 100644 index 00000000..10d22e63 Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_florus_glass_table.png b/public/textures/mcwbyg/stripped_florus_glass_table.png new file mode 100644 index 00000000..2c07b7be Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_glass_table.png differ diff --git a/public/textures/mcwbyg/stripped_florus_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_florus_kitchen_cabinet.png new file mode 100644 index 00000000..806e41a4 Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_florus_large_drawer.png b/public/textures/mcwbyg/stripped_florus_large_drawer.png new file mode 100644 index 00000000..7e9dbda2 Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_large_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_florus_log_four_window.png b/public/textures/mcwbyg/stripped_florus_log_four_window.png new file mode 100644 index 00000000..32582e79 Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_log_four_window.png differ diff --git a/public/textures/mcwbyg/stripped_florus_log_window.png b/public/textures/mcwbyg/stripped_florus_log_window.png new file mode 100644 index 00000000..2ac7d8c2 Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_log_window.png differ diff --git a/public/textures/mcwbyg/stripped_florus_log_window2.png b/public/textures/mcwbyg/stripped_florus_log_window2.png new file mode 100644 index 00000000..462951ff Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_log_window2.png differ diff --git a/public/textures/mcwbyg/stripped_florus_lower_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_florus_lower_bookshelf_drawer.png new file mode 100644 index 00000000..b597fad4 Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_florus_lower_triple_drawer.png b/public/textures/mcwbyg/stripped_florus_lower_triple_drawer.png new file mode 100644 index 00000000..eb6b273b Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_florus_modern_chair.png b/public/textures/mcwbyg/stripped_florus_modern_chair.png new file mode 100644 index 00000000..428ea6ca Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_modern_chair.png differ diff --git a/public/textures/mcwbyg/stripped_florus_modern_desk.png b/public/textures/mcwbyg/stripped_florus_modern_desk.png new file mode 100644 index 00000000..51949486 Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_modern_desk.png differ diff --git a/public/textures/mcwbyg/stripped_florus_modern_wardrobe.png b/public/textures/mcwbyg/stripped_florus_modern_wardrobe.png new file mode 100644 index 00000000..bc21d9e4 Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_florus_pane_window.png b/public/textures/mcwbyg/stripped_florus_pane_window.png new file mode 100644 index 00000000..bd79afb3 Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_pane_window.png differ diff --git a/public/textures/mcwbyg/stripped_florus_stool_chair.png b/public/textures/mcwbyg/stripped_florus_stool_chair.png new file mode 100644 index 00000000..9f0cc05a Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_stool_chair.png differ diff --git a/public/textures/mcwbyg/stripped_florus_striped_chair.png b/public/textures/mcwbyg/stripped_florus_striped_chair.png new file mode 100644 index 00000000..ec3a360c Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_striped_chair.png differ diff --git a/public/textures/mcwbyg/stripped_florus_table.png b/public/textures/mcwbyg/stripped_florus_table.png new file mode 100644 index 00000000..47bfe835 Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_table.png differ diff --git a/public/textures/mcwbyg/stripped_florus_triple_drawer.png b/public/textures/mcwbyg/stripped_florus_triple_drawer.png new file mode 100644 index 00000000..357c1cfa Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_florus_wardrobe.png b/public/textures/mcwbyg/stripped_florus_wardrobe.png new file mode 100644 index 00000000..83c3276a Binary files /dev/null and b/public/textures/mcwbyg/stripped_florus_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_bookshelf.png b/public/textures/mcwbyg/stripped_green_enchanted_bookshelf.png new file mode 100644 index 00000000..4d3d7f05 Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_bookshelf.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_bookshelf_cupboard.png b/public/textures/mcwbyg/stripped_green_enchanted_bookshelf_cupboard.png new file mode 100644 index 00000000..6c0261bc Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_green_enchanted_bookshelf_drawer.png new file mode 100644 index 00000000..6bfa198d Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_chair.png b/public/textures/mcwbyg/stripped_green_enchanted_chair.png new file mode 100644 index 00000000..57d85a04 Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_chair.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_coffee_table.png b/public/textures/mcwbyg/stripped_green_enchanted_coffee_table.png new file mode 100644 index 00000000..cbcab0cd Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_coffee_table.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_counter.png b/public/textures/mcwbyg/stripped_green_enchanted_counter.png new file mode 100644 index 00000000..6402bf34 Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_counter.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_covered_desk.png b/public/textures/mcwbyg/stripped_green_enchanted_covered_desk.png new file mode 100644 index 00000000..08f93468 Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_covered_desk.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_cupboard_counter.png b/public/textures/mcwbyg/stripped_green_enchanted_cupboard_counter.png new file mode 100644 index 00000000..00706279 Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_desk.png b/public/textures/mcwbyg/stripped_green_enchanted_desk.png new file mode 100644 index 00000000..9bc8bcac Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_desk.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_double_drawer.png b/public/textures/mcwbyg/stripped_green_enchanted_double_drawer.png new file mode 100644 index 00000000..59e72dc0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_double_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_double_drawer_counter.png b/public/textures/mcwbyg/stripped_green_enchanted_double_drawer_counter.png new file mode 100644 index 00000000..cb321541 Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_double_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_green_enchanted_double_kitchen_cabinet.png new file mode 100644 index 00000000..048ded2b Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_double_wardrobe.png b/public/textures/mcwbyg/stripped_green_enchanted_double_wardrobe.png new file mode 100644 index 00000000..3678109f Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_drawer.png b/public/textures/mcwbyg/stripped_green_enchanted_drawer.png new file mode 100644 index 00000000..737d39db Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_drawer_counter.png b/public/textures/mcwbyg/stripped_green_enchanted_drawer_counter.png new file mode 100644 index 00000000..921e90cc Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_end_table.png b/public/textures/mcwbyg/stripped_green_enchanted_end_table.png new file mode 100644 index 00000000..a0de3fe6 Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_end_table.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_glass_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_green_enchanted_glass_kitchen_cabinet.png new file mode 100644 index 00000000..3624b9f2 Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_glass_table.png b/public/textures/mcwbyg/stripped_green_enchanted_glass_table.png new file mode 100644 index 00000000..a49af432 Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_glass_table.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_green_enchanted_kitchen_cabinet.png new file mode 100644 index 00000000..f888f30a Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_large_drawer.png b/public/textures/mcwbyg/stripped_green_enchanted_large_drawer.png new file mode 100644 index 00000000..be99057a Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_large_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_log_four_window.png b/public/textures/mcwbyg/stripped_green_enchanted_log_four_window.png new file mode 100644 index 00000000..c4b3553f Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_log_four_window.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_log_window.png b/public/textures/mcwbyg/stripped_green_enchanted_log_window.png new file mode 100644 index 00000000..8e6528cc Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_log_window.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_log_window2.png b/public/textures/mcwbyg/stripped_green_enchanted_log_window2.png new file mode 100644 index 00000000..9ddb69d8 Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_log_window2.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_lower_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_green_enchanted_lower_bookshelf_drawer.png new file mode 100644 index 00000000..19e2d3fc Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_lower_triple_drawer.png b/public/textures/mcwbyg/stripped_green_enchanted_lower_triple_drawer.png new file mode 100644 index 00000000..e0e85eca Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_modern_chair.png b/public/textures/mcwbyg/stripped_green_enchanted_modern_chair.png new file mode 100644 index 00000000..34a32203 Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_modern_chair.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_modern_desk.png b/public/textures/mcwbyg/stripped_green_enchanted_modern_desk.png new file mode 100644 index 00000000..8336f96b Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_modern_desk.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_modern_wardrobe.png b/public/textures/mcwbyg/stripped_green_enchanted_modern_wardrobe.png new file mode 100644 index 00000000..b54c74f7 Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_pane_window.png b/public/textures/mcwbyg/stripped_green_enchanted_pane_window.png new file mode 100644 index 00000000..32d1b0a4 Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_pane_window.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_stool_chair.png b/public/textures/mcwbyg/stripped_green_enchanted_stool_chair.png new file mode 100644 index 00000000..8fc32543 Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_stool_chair.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_striped_chair.png b/public/textures/mcwbyg/stripped_green_enchanted_striped_chair.png new file mode 100644 index 00000000..c39abdad Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_striped_chair.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_table.png b/public/textures/mcwbyg/stripped_green_enchanted_table.png new file mode 100644 index 00000000..2e66b277 Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_table.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_triple_drawer.png b/public/textures/mcwbyg/stripped_green_enchanted_triple_drawer.png new file mode 100644 index 00000000..3a65c78f Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_green_enchanted_wardrobe.png b/public/textures/mcwbyg/stripped_green_enchanted_wardrobe.png new file mode 100644 index 00000000..785d0783 Binary files /dev/null and b/public/textures/mcwbyg/stripped_green_enchanted_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_holly_bookshelf.png b/public/textures/mcwbyg/stripped_holly_bookshelf.png new file mode 100644 index 00000000..029f9b11 Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_bookshelf.png differ diff --git a/public/textures/mcwbyg/stripped_holly_bookshelf_cupboard.png b/public/textures/mcwbyg/stripped_holly_bookshelf_cupboard.png new file mode 100644 index 00000000..41ec042c Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/stripped_holly_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_holly_bookshelf_drawer.png new file mode 100644 index 00000000..d4ef1243 Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_holly_chair.png b/public/textures/mcwbyg/stripped_holly_chair.png new file mode 100644 index 00000000..3b75b5dd Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_chair.png differ diff --git a/public/textures/mcwbyg/stripped_holly_coffee_table.png b/public/textures/mcwbyg/stripped_holly_coffee_table.png new file mode 100644 index 00000000..a7c7c9c0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_coffee_table.png differ diff --git a/public/textures/mcwbyg/stripped_holly_counter.png b/public/textures/mcwbyg/stripped_holly_counter.png new file mode 100644 index 00000000..7791dc51 Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_counter.png differ diff --git a/public/textures/mcwbyg/stripped_holly_covered_desk.png b/public/textures/mcwbyg/stripped_holly_covered_desk.png new file mode 100644 index 00000000..966a68fc Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_covered_desk.png differ diff --git a/public/textures/mcwbyg/stripped_holly_cupboard_counter.png b/public/textures/mcwbyg/stripped_holly_cupboard_counter.png new file mode 100644 index 00000000..d779f99e Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/stripped_holly_desk.png b/public/textures/mcwbyg/stripped_holly_desk.png new file mode 100644 index 00000000..b7ac64ff Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_desk.png differ diff --git a/public/textures/mcwbyg/stripped_holly_double_drawer.png b/public/textures/mcwbyg/stripped_holly_double_drawer.png new file mode 100644 index 00000000..9d199919 Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_double_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_holly_double_drawer_counter.png b/public/textures/mcwbyg/stripped_holly_double_drawer_counter.png new file mode 100644 index 00000000..12b8b9e9 Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_holly_double_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_holly_double_kitchen_cabinet.png new file mode 100644 index 00000000..34acde10 Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_holly_double_wardrobe.png b/public/textures/mcwbyg/stripped_holly_double_wardrobe.png new file mode 100644 index 00000000..b49afc18 Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_holly_drawer.png b/public/textures/mcwbyg/stripped_holly_drawer.png new file mode 100644 index 00000000..768cc1b7 Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_holly_drawer_counter.png b/public/textures/mcwbyg/stripped_holly_drawer_counter.png new file mode 100644 index 00000000..3e21382f Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_holly_end_table.png b/public/textures/mcwbyg/stripped_holly_end_table.png new file mode 100644 index 00000000..2b1cae69 Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_end_table.png differ diff --git a/public/textures/mcwbyg/stripped_holly_glass_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_holly_glass_kitchen_cabinet.png new file mode 100644 index 00000000..52704651 Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_holly_glass_table.png b/public/textures/mcwbyg/stripped_holly_glass_table.png new file mode 100644 index 00000000..625b3ce8 Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_glass_table.png differ diff --git a/public/textures/mcwbyg/stripped_holly_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_holly_kitchen_cabinet.png new file mode 100644 index 00000000..96f31162 Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_holly_large_drawer.png b/public/textures/mcwbyg/stripped_holly_large_drawer.png new file mode 100644 index 00000000..2250fb18 Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_large_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_holly_log_four_window.png b/public/textures/mcwbyg/stripped_holly_log_four_window.png new file mode 100644 index 00000000..6bdfcbce Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_log_four_window.png differ diff --git a/public/textures/mcwbyg/stripped_holly_log_window.png b/public/textures/mcwbyg/stripped_holly_log_window.png new file mode 100644 index 00000000..bf00d800 Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_log_window.png differ diff --git a/public/textures/mcwbyg/stripped_holly_log_window2.png b/public/textures/mcwbyg/stripped_holly_log_window2.png new file mode 100644 index 00000000..c1dfc527 Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_log_window2.png differ diff --git a/public/textures/mcwbyg/stripped_holly_lower_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_holly_lower_bookshelf_drawer.png new file mode 100644 index 00000000..6cc118bd Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_holly_lower_triple_drawer.png b/public/textures/mcwbyg/stripped_holly_lower_triple_drawer.png new file mode 100644 index 00000000..60fb2c84 Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_holly_modern_chair.png b/public/textures/mcwbyg/stripped_holly_modern_chair.png new file mode 100644 index 00000000..d5027ba9 Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_modern_chair.png differ diff --git a/public/textures/mcwbyg/stripped_holly_modern_desk.png b/public/textures/mcwbyg/stripped_holly_modern_desk.png new file mode 100644 index 00000000..5479dad5 Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_modern_desk.png differ diff --git a/public/textures/mcwbyg/stripped_holly_modern_wardrobe.png b/public/textures/mcwbyg/stripped_holly_modern_wardrobe.png new file mode 100644 index 00000000..e6794aa3 Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_holly_pane_window.png b/public/textures/mcwbyg/stripped_holly_pane_window.png new file mode 100644 index 00000000..38a953e7 Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_pane_window.png differ diff --git a/public/textures/mcwbyg/stripped_holly_stool_chair.png b/public/textures/mcwbyg/stripped_holly_stool_chair.png new file mode 100644 index 00000000..56dd318c Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_stool_chair.png differ diff --git a/public/textures/mcwbyg/stripped_holly_striped_chair.png b/public/textures/mcwbyg/stripped_holly_striped_chair.png new file mode 100644 index 00000000..2214a0d3 Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_striped_chair.png differ diff --git a/public/textures/mcwbyg/stripped_holly_table.png b/public/textures/mcwbyg/stripped_holly_table.png new file mode 100644 index 00000000..7da6d2f6 Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_table.png differ diff --git a/public/textures/mcwbyg/stripped_holly_triple_drawer.png b/public/textures/mcwbyg/stripped_holly_triple_drawer.png new file mode 100644 index 00000000..a1470539 Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_holly_wardrobe.png b/public/textures/mcwbyg/stripped_holly_wardrobe.png new file mode 100644 index 00000000..d31f8ea9 Binary files /dev/null and b/public/textures/mcwbyg/stripped_holly_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_bookshelf.png b/public/textures/mcwbyg/stripped_ironwood_bookshelf.png new file mode 100644 index 00000000..43536ea7 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_bookshelf.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_bookshelf_cupboard.png b/public/textures/mcwbyg/stripped_ironwood_bookshelf_cupboard.png new file mode 100644 index 00000000..5b73a863 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_ironwood_bookshelf_drawer.png new file mode 100644 index 00000000..fb8add70 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_chair.png b/public/textures/mcwbyg/stripped_ironwood_chair.png new file mode 100644 index 00000000..84cdc264 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_chair.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_coffee_table.png b/public/textures/mcwbyg/stripped_ironwood_coffee_table.png new file mode 100644 index 00000000..2d7a1240 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_coffee_table.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_counter.png b/public/textures/mcwbyg/stripped_ironwood_counter.png new file mode 100644 index 00000000..8a230dad Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_counter.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_covered_desk.png b/public/textures/mcwbyg/stripped_ironwood_covered_desk.png new file mode 100644 index 00000000..9fa1ccd6 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_covered_desk.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_cupboard_counter.png b/public/textures/mcwbyg/stripped_ironwood_cupboard_counter.png new file mode 100644 index 00000000..d4c04f54 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_desk.png b/public/textures/mcwbyg/stripped_ironwood_desk.png new file mode 100644 index 00000000..477fc896 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_desk.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_double_drawer.png b/public/textures/mcwbyg/stripped_ironwood_double_drawer.png new file mode 100644 index 00000000..fd4cb968 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_double_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_double_drawer_counter.png b/public/textures/mcwbyg/stripped_ironwood_double_drawer_counter.png new file mode 100644 index 00000000..4d2e8c4b Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_double_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_ironwood_double_kitchen_cabinet.png new file mode 100644 index 00000000..96b42d7f Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_double_wardrobe.png b/public/textures/mcwbyg/stripped_ironwood_double_wardrobe.png new file mode 100644 index 00000000..557772a2 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_drawer.png b/public/textures/mcwbyg/stripped_ironwood_drawer.png new file mode 100644 index 00000000..fab53018 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_drawer_counter.png b/public/textures/mcwbyg/stripped_ironwood_drawer_counter.png new file mode 100644 index 00000000..354aaae2 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_end_table.png b/public/textures/mcwbyg/stripped_ironwood_end_table.png new file mode 100644 index 00000000..dfc2e721 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_end_table.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_glass_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_ironwood_glass_kitchen_cabinet.png new file mode 100644 index 00000000..a2d1560d Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_glass_table.png b/public/textures/mcwbyg/stripped_ironwood_glass_table.png new file mode 100644 index 00000000..701ac7d3 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_glass_table.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_ironwood_kitchen_cabinet.png new file mode 100644 index 00000000..6e9a45e6 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_large_drawer.png b/public/textures/mcwbyg/stripped_ironwood_large_drawer.png new file mode 100644 index 00000000..d2936272 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_large_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_log_four_window.png b/public/textures/mcwbyg/stripped_ironwood_log_four_window.png new file mode 100644 index 00000000..e3376edf Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_log_four_window.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_log_window.png b/public/textures/mcwbyg/stripped_ironwood_log_window.png new file mode 100644 index 00000000..5a3b3e0d Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_log_window.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_log_window2.png b/public/textures/mcwbyg/stripped_ironwood_log_window2.png new file mode 100644 index 00000000..759998a4 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_log_window2.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_lower_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_ironwood_lower_bookshelf_drawer.png new file mode 100644 index 00000000..19cd3e66 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_lower_triple_drawer.png b/public/textures/mcwbyg/stripped_ironwood_lower_triple_drawer.png new file mode 100644 index 00000000..609a4bfe Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_modern_chair.png b/public/textures/mcwbyg/stripped_ironwood_modern_chair.png new file mode 100644 index 00000000..ca87ea5f Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_modern_chair.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_modern_desk.png b/public/textures/mcwbyg/stripped_ironwood_modern_desk.png new file mode 100644 index 00000000..23cfce4f Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_modern_desk.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_modern_wardrobe.png b/public/textures/mcwbyg/stripped_ironwood_modern_wardrobe.png new file mode 100644 index 00000000..1084699e Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_pane_window.png b/public/textures/mcwbyg/stripped_ironwood_pane_window.png new file mode 100644 index 00000000..304d521b Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_pane_window.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_stool_chair.png b/public/textures/mcwbyg/stripped_ironwood_stool_chair.png new file mode 100644 index 00000000..be1be2d3 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_stool_chair.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_striped_chair.png b/public/textures/mcwbyg/stripped_ironwood_striped_chair.png new file mode 100644 index 00000000..ef16a81d Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_striped_chair.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_table.png b/public/textures/mcwbyg/stripped_ironwood_table.png new file mode 100644 index 00000000..47d74ba7 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_table.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_triple_drawer.png b/public/textures/mcwbyg/stripped_ironwood_triple_drawer.png new file mode 100644 index 00000000..d2cef06b Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_ironwood_wardrobe.png b/public/textures/mcwbyg/stripped_ironwood_wardrobe.png new file mode 100644 index 00000000..88c3ae54 Binary files /dev/null and b/public/textures/mcwbyg/stripped_ironwood_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_bookshelf.png b/public/textures/mcwbyg/stripped_jacaranda_bookshelf.png new file mode 100644 index 00000000..89a17cb2 Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_bookshelf.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_bookshelf_cupboard.png b/public/textures/mcwbyg/stripped_jacaranda_bookshelf_cupboard.png new file mode 100644 index 00000000..09470a30 Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_jacaranda_bookshelf_drawer.png new file mode 100644 index 00000000..32f72377 Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_chair.png b/public/textures/mcwbyg/stripped_jacaranda_chair.png new file mode 100644 index 00000000..b792b078 Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_chair.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_coffee_table.png b/public/textures/mcwbyg/stripped_jacaranda_coffee_table.png new file mode 100644 index 00000000..87e46fb7 Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_coffee_table.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_counter.png b/public/textures/mcwbyg/stripped_jacaranda_counter.png new file mode 100644 index 00000000..74ce97ea Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_counter.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_covered_desk.png b/public/textures/mcwbyg/stripped_jacaranda_covered_desk.png new file mode 100644 index 00000000..42225e4d Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_covered_desk.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_cupboard_counter.png b/public/textures/mcwbyg/stripped_jacaranda_cupboard_counter.png new file mode 100644 index 00000000..f94521b5 Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_desk.png b/public/textures/mcwbyg/stripped_jacaranda_desk.png new file mode 100644 index 00000000..26d4dce7 Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_desk.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_double_drawer.png b/public/textures/mcwbyg/stripped_jacaranda_double_drawer.png new file mode 100644 index 00000000..4592e723 Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_double_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_double_drawer_counter.png b/public/textures/mcwbyg/stripped_jacaranda_double_drawer_counter.png new file mode 100644 index 00000000..dc1e9a68 Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_double_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_jacaranda_double_kitchen_cabinet.png new file mode 100644 index 00000000..c19592ff Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_double_wardrobe.png b/public/textures/mcwbyg/stripped_jacaranda_double_wardrobe.png new file mode 100644 index 00000000..e07c19da Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_drawer.png b/public/textures/mcwbyg/stripped_jacaranda_drawer.png new file mode 100644 index 00000000..cc78016f Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_drawer_counter.png b/public/textures/mcwbyg/stripped_jacaranda_drawer_counter.png new file mode 100644 index 00000000..2d0e54cf Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_end_table.png b/public/textures/mcwbyg/stripped_jacaranda_end_table.png new file mode 100644 index 00000000..9eda5a25 Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_end_table.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_glass_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_jacaranda_glass_kitchen_cabinet.png new file mode 100644 index 00000000..5ea5a26b Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_glass_table.png b/public/textures/mcwbyg/stripped_jacaranda_glass_table.png new file mode 100644 index 00000000..08d95856 Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_glass_table.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_jacaranda_kitchen_cabinet.png new file mode 100644 index 00000000..37385af0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_large_drawer.png b/public/textures/mcwbyg/stripped_jacaranda_large_drawer.png new file mode 100644 index 00000000..b1d3978a Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_large_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_log_four_window.png b/public/textures/mcwbyg/stripped_jacaranda_log_four_window.png new file mode 100644 index 00000000..5a6e4379 Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_log_four_window.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_log_window.png b/public/textures/mcwbyg/stripped_jacaranda_log_window.png new file mode 100644 index 00000000..d4b7eb4e Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_log_window.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_log_window2.png b/public/textures/mcwbyg/stripped_jacaranda_log_window2.png new file mode 100644 index 00000000..eb3e54fc Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_log_window2.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_lower_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_jacaranda_lower_bookshelf_drawer.png new file mode 100644 index 00000000..cef5bf30 Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_lower_triple_drawer.png b/public/textures/mcwbyg/stripped_jacaranda_lower_triple_drawer.png new file mode 100644 index 00000000..a7a2858f Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_modern_chair.png b/public/textures/mcwbyg/stripped_jacaranda_modern_chair.png new file mode 100644 index 00000000..5fec1d3d Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_modern_chair.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_modern_desk.png b/public/textures/mcwbyg/stripped_jacaranda_modern_desk.png new file mode 100644 index 00000000..4ac2a1ce Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_modern_desk.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_modern_wardrobe.png b/public/textures/mcwbyg/stripped_jacaranda_modern_wardrobe.png new file mode 100644 index 00000000..7004aba5 Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_pane_window.png b/public/textures/mcwbyg/stripped_jacaranda_pane_window.png new file mode 100644 index 00000000..9ff5f9be Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_pane_window.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_stool_chair.png b/public/textures/mcwbyg/stripped_jacaranda_stool_chair.png new file mode 100644 index 00000000..4bcc590b Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_stool_chair.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_striped_chair.png b/public/textures/mcwbyg/stripped_jacaranda_striped_chair.png new file mode 100644 index 00000000..baec0e57 Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_striped_chair.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_table.png b/public/textures/mcwbyg/stripped_jacaranda_table.png new file mode 100644 index 00000000..6a99a1d5 Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_table.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_triple_drawer.png b/public/textures/mcwbyg/stripped_jacaranda_triple_drawer.png new file mode 100644 index 00000000..89a16ad9 Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_jacaranda_wardrobe.png b/public/textures/mcwbyg/stripped_jacaranda_wardrobe.png new file mode 100644 index 00000000..8b52e519 Binary files /dev/null and b/public/textures/mcwbyg/stripped_jacaranda_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_bookshelf.png b/public/textures/mcwbyg/stripped_mahogany_bookshelf.png new file mode 100644 index 00000000..e8d164bb Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_bookshelf.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_bookshelf_cupboard.png b/public/textures/mcwbyg/stripped_mahogany_bookshelf_cupboard.png new file mode 100644 index 00000000..aeb613ba Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_mahogany_bookshelf_drawer.png new file mode 100644 index 00000000..20605a66 Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_chair.png b/public/textures/mcwbyg/stripped_mahogany_chair.png new file mode 100644 index 00000000..f4021ab7 Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_chair.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_coffee_table.png b/public/textures/mcwbyg/stripped_mahogany_coffee_table.png new file mode 100644 index 00000000..d1a54b74 Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_coffee_table.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_counter.png b/public/textures/mcwbyg/stripped_mahogany_counter.png new file mode 100644 index 00000000..063fdd06 Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_counter.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_covered_desk.png b/public/textures/mcwbyg/stripped_mahogany_covered_desk.png new file mode 100644 index 00000000..ed4a9518 Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_covered_desk.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_cupboard_counter.png b/public/textures/mcwbyg/stripped_mahogany_cupboard_counter.png new file mode 100644 index 00000000..2a31d1f1 Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_desk.png b/public/textures/mcwbyg/stripped_mahogany_desk.png new file mode 100644 index 00000000..8d2ef4b1 Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_desk.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_double_drawer.png b/public/textures/mcwbyg/stripped_mahogany_double_drawer.png new file mode 100644 index 00000000..3821c196 Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_double_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_double_drawer_counter.png b/public/textures/mcwbyg/stripped_mahogany_double_drawer_counter.png new file mode 100644 index 00000000..d22023be Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_double_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_mahogany_double_kitchen_cabinet.png new file mode 100644 index 00000000..f436ca37 Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_double_wardrobe.png b/public/textures/mcwbyg/stripped_mahogany_double_wardrobe.png new file mode 100644 index 00000000..c048a6d6 Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_drawer.png b/public/textures/mcwbyg/stripped_mahogany_drawer.png new file mode 100644 index 00000000..1843becd Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_drawer_counter.png b/public/textures/mcwbyg/stripped_mahogany_drawer_counter.png new file mode 100644 index 00000000..6307c061 Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_end_table.png b/public/textures/mcwbyg/stripped_mahogany_end_table.png new file mode 100644 index 00000000..5923820f Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_end_table.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_glass_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_mahogany_glass_kitchen_cabinet.png new file mode 100644 index 00000000..ccc2f988 Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_glass_table.png b/public/textures/mcwbyg/stripped_mahogany_glass_table.png new file mode 100644 index 00000000..ab4f7701 Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_glass_table.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_mahogany_kitchen_cabinet.png new file mode 100644 index 00000000..0be42b38 Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_large_drawer.png b/public/textures/mcwbyg/stripped_mahogany_large_drawer.png new file mode 100644 index 00000000..403b0441 Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_large_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_log_four_window.png b/public/textures/mcwbyg/stripped_mahogany_log_four_window.png new file mode 100644 index 00000000..d4498d7c Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_log_four_window.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_log_window.png b/public/textures/mcwbyg/stripped_mahogany_log_window.png new file mode 100644 index 00000000..d3d1220b Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_log_window.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_log_window2.png b/public/textures/mcwbyg/stripped_mahogany_log_window2.png new file mode 100644 index 00000000..63b9c89a Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_log_window2.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_lower_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_mahogany_lower_bookshelf_drawer.png new file mode 100644 index 00000000..ddc0a9e0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_lower_triple_drawer.png b/public/textures/mcwbyg/stripped_mahogany_lower_triple_drawer.png new file mode 100644 index 00000000..e7821bc8 Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_modern_chair.png b/public/textures/mcwbyg/stripped_mahogany_modern_chair.png new file mode 100644 index 00000000..8944fd01 Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_modern_chair.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_modern_desk.png b/public/textures/mcwbyg/stripped_mahogany_modern_desk.png new file mode 100644 index 00000000..79902266 Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_modern_desk.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_modern_wardrobe.png b/public/textures/mcwbyg/stripped_mahogany_modern_wardrobe.png new file mode 100644 index 00000000..b705c5ea Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_pane_window.png b/public/textures/mcwbyg/stripped_mahogany_pane_window.png new file mode 100644 index 00000000..7ce2545a Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_pane_window.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_stool_chair.png b/public/textures/mcwbyg/stripped_mahogany_stool_chair.png new file mode 100644 index 00000000..ff036e34 Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_stool_chair.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_striped_chair.png b/public/textures/mcwbyg/stripped_mahogany_striped_chair.png new file mode 100644 index 00000000..91663b4d Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_striped_chair.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_table.png b/public/textures/mcwbyg/stripped_mahogany_table.png new file mode 100644 index 00000000..3517e4d9 Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_table.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_triple_drawer.png b/public/textures/mcwbyg/stripped_mahogany_triple_drawer.png new file mode 100644 index 00000000..b83eb227 Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_mahogany_wardrobe.png b/public/textures/mcwbyg/stripped_mahogany_wardrobe.png new file mode 100644 index 00000000..e1cd0ce7 Binary files /dev/null and b/public/textures/mcwbyg/stripped_mahogany_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_maple_bookshelf.png b/public/textures/mcwbyg/stripped_maple_bookshelf.png new file mode 100644 index 00000000..4e598e8f Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_bookshelf.png differ diff --git a/public/textures/mcwbyg/stripped_maple_bookshelf_cupboard.png b/public/textures/mcwbyg/stripped_maple_bookshelf_cupboard.png new file mode 100644 index 00000000..38a87c31 Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/stripped_maple_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_maple_bookshelf_drawer.png new file mode 100644 index 00000000..3eec8d4a Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_maple_chair.png b/public/textures/mcwbyg/stripped_maple_chair.png new file mode 100644 index 00000000..20c94836 Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_chair.png differ diff --git a/public/textures/mcwbyg/stripped_maple_coffee_table.png b/public/textures/mcwbyg/stripped_maple_coffee_table.png new file mode 100644 index 00000000..048c2d3f Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_coffee_table.png differ diff --git a/public/textures/mcwbyg/stripped_maple_counter.png b/public/textures/mcwbyg/stripped_maple_counter.png new file mode 100644 index 00000000..150b2da1 Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_counter.png differ diff --git a/public/textures/mcwbyg/stripped_maple_covered_desk.png b/public/textures/mcwbyg/stripped_maple_covered_desk.png new file mode 100644 index 00000000..f9d8d2cf Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_covered_desk.png differ diff --git a/public/textures/mcwbyg/stripped_maple_cupboard_counter.png b/public/textures/mcwbyg/stripped_maple_cupboard_counter.png new file mode 100644 index 00000000..961d89af Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/stripped_maple_desk.png b/public/textures/mcwbyg/stripped_maple_desk.png new file mode 100644 index 00000000..10287b3d Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_desk.png differ diff --git a/public/textures/mcwbyg/stripped_maple_double_drawer.png b/public/textures/mcwbyg/stripped_maple_double_drawer.png new file mode 100644 index 00000000..0c2857e0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_double_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_maple_double_drawer_counter.png b/public/textures/mcwbyg/stripped_maple_double_drawer_counter.png new file mode 100644 index 00000000..d479e2f8 Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_maple_double_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_maple_double_kitchen_cabinet.png new file mode 100644 index 00000000..5bb3a7ca Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_maple_double_wardrobe.png b/public/textures/mcwbyg/stripped_maple_double_wardrobe.png new file mode 100644 index 00000000..6fd028ca Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_maple_drawer.png b/public/textures/mcwbyg/stripped_maple_drawer.png new file mode 100644 index 00000000..c8f7904b Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_maple_drawer_counter.png b/public/textures/mcwbyg/stripped_maple_drawer_counter.png new file mode 100644 index 00000000..d2829537 Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_maple_end_table.png b/public/textures/mcwbyg/stripped_maple_end_table.png new file mode 100644 index 00000000..a99f13c8 Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_end_table.png differ diff --git a/public/textures/mcwbyg/stripped_maple_glass_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_maple_glass_kitchen_cabinet.png new file mode 100644 index 00000000..38b83e6c Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_maple_glass_table.png b/public/textures/mcwbyg/stripped_maple_glass_table.png new file mode 100644 index 00000000..84e6eb32 Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_glass_table.png differ diff --git a/public/textures/mcwbyg/stripped_maple_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_maple_kitchen_cabinet.png new file mode 100644 index 00000000..a7aea1f8 Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_maple_large_drawer.png b/public/textures/mcwbyg/stripped_maple_large_drawer.png new file mode 100644 index 00000000..c6772818 Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_large_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_maple_log_four_window.png b/public/textures/mcwbyg/stripped_maple_log_four_window.png new file mode 100644 index 00000000..659aa234 Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_log_four_window.png differ diff --git a/public/textures/mcwbyg/stripped_maple_log_window.png b/public/textures/mcwbyg/stripped_maple_log_window.png new file mode 100644 index 00000000..d1b77d8b Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_log_window.png differ diff --git a/public/textures/mcwbyg/stripped_maple_log_window2.png b/public/textures/mcwbyg/stripped_maple_log_window2.png new file mode 100644 index 00000000..6c35edc2 Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_log_window2.png differ diff --git a/public/textures/mcwbyg/stripped_maple_lower_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_maple_lower_bookshelf_drawer.png new file mode 100644 index 00000000..8940eb4b Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_maple_lower_triple_drawer.png b/public/textures/mcwbyg/stripped_maple_lower_triple_drawer.png new file mode 100644 index 00000000..1049174c Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_maple_modern_chair.png b/public/textures/mcwbyg/stripped_maple_modern_chair.png new file mode 100644 index 00000000..59e8c9ce Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_modern_chair.png differ diff --git a/public/textures/mcwbyg/stripped_maple_modern_desk.png b/public/textures/mcwbyg/stripped_maple_modern_desk.png new file mode 100644 index 00000000..fbab287a Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_modern_desk.png differ diff --git a/public/textures/mcwbyg/stripped_maple_modern_wardrobe.png b/public/textures/mcwbyg/stripped_maple_modern_wardrobe.png new file mode 100644 index 00000000..d7be0659 Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_maple_pane_window.png b/public/textures/mcwbyg/stripped_maple_pane_window.png new file mode 100644 index 00000000..583692d3 Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_pane_window.png differ diff --git a/public/textures/mcwbyg/stripped_maple_stool_chair.png b/public/textures/mcwbyg/stripped_maple_stool_chair.png new file mode 100644 index 00000000..f583bcc7 Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_stool_chair.png differ diff --git a/public/textures/mcwbyg/stripped_maple_striped_chair.png b/public/textures/mcwbyg/stripped_maple_striped_chair.png new file mode 100644 index 00000000..b2ccb3d3 Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_striped_chair.png differ diff --git a/public/textures/mcwbyg/stripped_maple_table.png b/public/textures/mcwbyg/stripped_maple_table.png new file mode 100644 index 00000000..4af8144c Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_table.png differ diff --git a/public/textures/mcwbyg/stripped_maple_triple_drawer.png b/public/textures/mcwbyg/stripped_maple_triple_drawer.png new file mode 100644 index 00000000..b6a450e8 Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_maple_wardrobe.png b/public/textures/mcwbyg/stripped_maple_wardrobe.png new file mode 100644 index 00000000..63a682b6 Binary files /dev/null and b/public/textures/mcwbyg/stripped_maple_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_palm_bookshelf.png b/public/textures/mcwbyg/stripped_palm_bookshelf.png new file mode 100644 index 00000000..9e936b21 Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_bookshelf.png differ diff --git a/public/textures/mcwbyg/stripped_palm_bookshelf_cupboard.png b/public/textures/mcwbyg/stripped_palm_bookshelf_cupboard.png new file mode 100644 index 00000000..ca978da8 Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/stripped_palm_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_palm_bookshelf_drawer.png new file mode 100644 index 00000000..7c8ddf3e Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_palm_chair.png b/public/textures/mcwbyg/stripped_palm_chair.png new file mode 100644 index 00000000..a13cb041 Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_chair.png differ diff --git a/public/textures/mcwbyg/stripped_palm_coffee_table.png b/public/textures/mcwbyg/stripped_palm_coffee_table.png new file mode 100644 index 00000000..33474172 Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_coffee_table.png differ diff --git a/public/textures/mcwbyg/stripped_palm_counter.png b/public/textures/mcwbyg/stripped_palm_counter.png new file mode 100644 index 00000000..040ab9d6 Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_counter.png differ diff --git a/public/textures/mcwbyg/stripped_palm_covered_desk.png b/public/textures/mcwbyg/stripped_palm_covered_desk.png new file mode 100644 index 00000000..85e874be Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_covered_desk.png differ diff --git a/public/textures/mcwbyg/stripped_palm_cupboard_counter.png b/public/textures/mcwbyg/stripped_palm_cupboard_counter.png new file mode 100644 index 00000000..1c6226a3 Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/stripped_palm_desk.png b/public/textures/mcwbyg/stripped_palm_desk.png new file mode 100644 index 00000000..a23da3a3 Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_desk.png differ diff --git a/public/textures/mcwbyg/stripped_palm_double_drawer.png b/public/textures/mcwbyg/stripped_palm_double_drawer.png new file mode 100644 index 00000000..d5f45db6 Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_double_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_palm_double_drawer_counter.png b/public/textures/mcwbyg/stripped_palm_double_drawer_counter.png new file mode 100644 index 00000000..e7efc752 Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_palm_double_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_palm_double_kitchen_cabinet.png new file mode 100644 index 00000000..536b0313 Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_palm_double_wardrobe.png b/public/textures/mcwbyg/stripped_palm_double_wardrobe.png new file mode 100644 index 00000000..1d77381b Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_palm_drawer.png b/public/textures/mcwbyg/stripped_palm_drawer.png new file mode 100644 index 00000000..1f1eb5ca Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_palm_drawer_counter.png b/public/textures/mcwbyg/stripped_palm_drawer_counter.png new file mode 100644 index 00000000..56dc2843 Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_palm_end_table.png b/public/textures/mcwbyg/stripped_palm_end_table.png new file mode 100644 index 00000000..a1eea434 Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_end_table.png differ diff --git a/public/textures/mcwbyg/stripped_palm_glass_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_palm_glass_kitchen_cabinet.png new file mode 100644 index 00000000..5d71df0d Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_palm_glass_table.png b/public/textures/mcwbyg/stripped_palm_glass_table.png new file mode 100644 index 00000000..19399e5b Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_glass_table.png differ diff --git a/public/textures/mcwbyg/stripped_palm_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_palm_kitchen_cabinet.png new file mode 100644 index 00000000..98ba52fa Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_palm_large_drawer.png b/public/textures/mcwbyg/stripped_palm_large_drawer.png new file mode 100644 index 00000000..4b4c2c05 Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_large_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_palm_log_four_window.png b/public/textures/mcwbyg/stripped_palm_log_four_window.png new file mode 100644 index 00000000..4a456847 Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_log_four_window.png differ diff --git a/public/textures/mcwbyg/stripped_palm_log_window.png b/public/textures/mcwbyg/stripped_palm_log_window.png new file mode 100644 index 00000000..abaf1fed Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_log_window.png differ diff --git a/public/textures/mcwbyg/stripped_palm_log_window2.png b/public/textures/mcwbyg/stripped_palm_log_window2.png new file mode 100644 index 00000000..c11b7586 Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_log_window2.png differ diff --git a/public/textures/mcwbyg/stripped_palm_lower_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_palm_lower_bookshelf_drawer.png new file mode 100644 index 00000000..33bce59a Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_palm_lower_triple_drawer.png b/public/textures/mcwbyg/stripped_palm_lower_triple_drawer.png new file mode 100644 index 00000000..cae5ad0b Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_palm_modern_chair.png b/public/textures/mcwbyg/stripped_palm_modern_chair.png new file mode 100644 index 00000000..07945a96 Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_modern_chair.png differ diff --git a/public/textures/mcwbyg/stripped_palm_modern_desk.png b/public/textures/mcwbyg/stripped_palm_modern_desk.png new file mode 100644 index 00000000..7a8489e3 Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_modern_desk.png differ diff --git a/public/textures/mcwbyg/stripped_palm_modern_wardrobe.png b/public/textures/mcwbyg/stripped_palm_modern_wardrobe.png new file mode 100644 index 00000000..86a235b7 Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_palm_pane_window.png b/public/textures/mcwbyg/stripped_palm_pane_window.png new file mode 100644 index 00000000..9a3c21b3 Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_pane_window.png differ diff --git a/public/textures/mcwbyg/stripped_palm_stool_chair.png b/public/textures/mcwbyg/stripped_palm_stool_chair.png new file mode 100644 index 00000000..844b416e Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_stool_chair.png differ diff --git a/public/textures/mcwbyg/stripped_palm_striped_chair.png b/public/textures/mcwbyg/stripped_palm_striped_chair.png new file mode 100644 index 00000000..1007ad37 Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_striped_chair.png differ diff --git a/public/textures/mcwbyg/stripped_palm_table.png b/public/textures/mcwbyg/stripped_palm_table.png new file mode 100644 index 00000000..a0113262 Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_table.png differ diff --git a/public/textures/mcwbyg/stripped_palm_triple_drawer.png b/public/textures/mcwbyg/stripped_palm_triple_drawer.png new file mode 100644 index 00000000..b7c0307b Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_palm_wardrobe.png b/public/textures/mcwbyg/stripped_palm_wardrobe.png new file mode 100644 index 00000000..3398248b Binary files /dev/null and b/public/textures/mcwbyg/stripped_palm_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_pine_bookshelf.png b/public/textures/mcwbyg/stripped_pine_bookshelf.png new file mode 100644 index 00000000..31aca1a1 Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_bookshelf.png differ diff --git a/public/textures/mcwbyg/stripped_pine_bookshelf_cupboard.png b/public/textures/mcwbyg/stripped_pine_bookshelf_cupboard.png new file mode 100644 index 00000000..5427501a Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/stripped_pine_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_pine_bookshelf_drawer.png new file mode 100644 index 00000000..8c91b3d0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_pine_chair.png b/public/textures/mcwbyg/stripped_pine_chair.png new file mode 100644 index 00000000..5aef979f Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_chair.png differ diff --git a/public/textures/mcwbyg/stripped_pine_coffee_table.png b/public/textures/mcwbyg/stripped_pine_coffee_table.png new file mode 100644 index 00000000..34aa1f33 Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_coffee_table.png differ diff --git a/public/textures/mcwbyg/stripped_pine_counter.png b/public/textures/mcwbyg/stripped_pine_counter.png new file mode 100644 index 00000000..ae10a1c0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_counter.png differ diff --git a/public/textures/mcwbyg/stripped_pine_covered_desk.png b/public/textures/mcwbyg/stripped_pine_covered_desk.png new file mode 100644 index 00000000..095e501e Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_covered_desk.png differ diff --git a/public/textures/mcwbyg/stripped_pine_cupboard_counter.png b/public/textures/mcwbyg/stripped_pine_cupboard_counter.png new file mode 100644 index 00000000..86033f76 Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/stripped_pine_desk.png b/public/textures/mcwbyg/stripped_pine_desk.png new file mode 100644 index 00000000..b7176c82 Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_desk.png differ diff --git a/public/textures/mcwbyg/stripped_pine_double_drawer.png b/public/textures/mcwbyg/stripped_pine_double_drawer.png new file mode 100644 index 00000000..fa38ab29 Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_double_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_pine_double_drawer_counter.png b/public/textures/mcwbyg/stripped_pine_double_drawer_counter.png new file mode 100644 index 00000000..8684da39 Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_pine_double_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_pine_double_kitchen_cabinet.png new file mode 100644 index 00000000..6bbc35c9 Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_pine_double_wardrobe.png b/public/textures/mcwbyg/stripped_pine_double_wardrobe.png new file mode 100644 index 00000000..95fd3d0c Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_pine_drawer.png b/public/textures/mcwbyg/stripped_pine_drawer.png new file mode 100644 index 00000000..b434ee17 Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_pine_drawer_counter.png b/public/textures/mcwbyg/stripped_pine_drawer_counter.png new file mode 100644 index 00000000..f6b56dee Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_pine_end_table.png b/public/textures/mcwbyg/stripped_pine_end_table.png new file mode 100644 index 00000000..1b7d41fa Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_end_table.png differ diff --git a/public/textures/mcwbyg/stripped_pine_glass_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_pine_glass_kitchen_cabinet.png new file mode 100644 index 00000000..249484c6 Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_pine_glass_table.png b/public/textures/mcwbyg/stripped_pine_glass_table.png new file mode 100644 index 00000000..4f42cb92 Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_glass_table.png differ diff --git a/public/textures/mcwbyg/stripped_pine_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_pine_kitchen_cabinet.png new file mode 100644 index 00000000..47ed89ae Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_pine_large_drawer.png b/public/textures/mcwbyg/stripped_pine_large_drawer.png new file mode 100644 index 00000000..91ad60f1 Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_large_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_pine_log_four_window.png b/public/textures/mcwbyg/stripped_pine_log_four_window.png new file mode 100644 index 00000000..39bd2d6e Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_log_four_window.png differ diff --git a/public/textures/mcwbyg/stripped_pine_log_window.png b/public/textures/mcwbyg/stripped_pine_log_window.png new file mode 100644 index 00000000..909823de Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_log_window.png differ diff --git a/public/textures/mcwbyg/stripped_pine_log_window2.png b/public/textures/mcwbyg/stripped_pine_log_window2.png new file mode 100644 index 00000000..5b3225ec Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_log_window2.png differ diff --git a/public/textures/mcwbyg/stripped_pine_lower_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_pine_lower_bookshelf_drawer.png new file mode 100644 index 00000000..8aaef8a5 Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_pine_lower_triple_drawer.png b/public/textures/mcwbyg/stripped_pine_lower_triple_drawer.png new file mode 100644 index 00000000..dd034a59 Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_pine_modern_chair.png b/public/textures/mcwbyg/stripped_pine_modern_chair.png new file mode 100644 index 00000000..204cd44f Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_modern_chair.png differ diff --git a/public/textures/mcwbyg/stripped_pine_modern_desk.png b/public/textures/mcwbyg/stripped_pine_modern_desk.png new file mode 100644 index 00000000..ba1fe3bc Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_modern_desk.png differ diff --git a/public/textures/mcwbyg/stripped_pine_modern_wardrobe.png b/public/textures/mcwbyg/stripped_pine_modern_wardrobe.png new file mode 100644 index 00000000..e36aa7a8 Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_pine_pane_window.png b/public/textures/mcwbyg/stripped_pine_pane_window.png new file mode 100644 index 00000000..44d5eaf6 Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_pane_window.png differ diff --git a/public/textures/mcwbyg/stripped_pine_stool_chair.png b/public/textures/mcwbyg/stripped_pine_stool_chair.png new file mode 100644 index 00000000..8f6ea2ab Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_stool_chair.png differ diff --git a/public/textures/mcwbyg/stripped_pine_striped_chair.png b/public/textures/mcwbyg/stripped_pine_striped_chair.png new file mode 100644 index 00000000..57e27d5f Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_striped_chair.png differ diff --git a/public/textures/mcwbyg/stripped_pine_table.png b/public/textures/mcwbyg/stripped_pine_table.png new file mode 100644 index 00000000..9a28bc2b Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_table.png differ diff --git a/public/textures/mcwbyg/stripped_pine_triple_drawer.png b/public/textures/mcwbyg/stripped_pine_triple_drawer.png new file mode 100644 index 00000000..5e698bcc Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_pine_wardrobe.png b/public/textures/mcwbyg/stripped_pine_wardrobe.png new file mode 100644 index 00000000..5fa1162d Binary files /dev/null and b/public/textures/mcwbyg/stripped_pine_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_bookshelf.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_bookshelf.png new file mode 100644 index 00000000..8d1d5275 Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_bookshelf.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_bookshelf_cupboard.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_bookshelf_cupboard.png new file mode 100644 index 00000000..f8ed8ef8 Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_bookshelf_drawer.png new file mode 100644 index 00000000..43fa3f18 Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_chair.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_chair.png new file mode 100644 index 00000000..cf41ba1b Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_chair.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_coffee_table.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_coffee_table.png new file mode 100644 index 00000000..b54bdad4 Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_coffee_table.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_counter.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_counter.png new file mode 100644 index 00000000..a7e9cc0a Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_counter.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_covered_desk.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_covered_desk.png new file mode 100644 index 00000000..623fc4d7 Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_covered_desk.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_cupboard_counter.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_cupboard_counter.png new file mode 100644 index 00000000..fa50588a Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_desk.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_desk.png new file mode 100644 index 00000000..53dd8a47 Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_desk.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_double_drawer.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_double_drawer.png new file mode 100644 index 00000000..0dc783f6 Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_double_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_double_drawer_counter.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_double_drawer_counter.png new file mode 100644 index 00000000..75d05186 Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_double_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_double_kitchen_cabinet.png new file mode 100644 index 00000000..8a51d215 Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_double_wardrobe.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_double_wardrobe.png new file mode 100644 index 00000000..f8aa674f Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_drawer.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_drawer.png new file mode 100644 index 00000000..637a6af1 Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_drawer_counter.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_drawer_counter.png new file mode 100644 index 00000000..1d102da1 Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_end_table.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_end_table.png new file mode 100644 index 00000000..25e14d71 Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_end_table.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_glass_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_glass_kitchen_cabinet.png new file mode 100644 index 00000000..6100bfa5 Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_glass_table.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_glass_table.png new file mode 100644 index 00000000..696dad3d Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_glass_table.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_kitchen_cabinet.png new file mode 100644 index 00000000..1f17f35a Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_large_drawer.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_large_drawer.png new file mode 100644 index 00000000..a5998d32 Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_large_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_log_four_window.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_log_four_window.png new file mode 100644 index 00000000..c5c29ad0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_log_four_window.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_log_window.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_log_window.png new file mode 100644 index 00000000..6e4eda89 Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_log_window.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_log_window2.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_log_window2.png new file mode 100644 index 00000000..0c06192c Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_log_window2.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_lower_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_lower_bookshelf_drawer.png new file mode 100644 index 00000000..70a983fa Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_lower_triple_drawer.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_lower_triple_drawer.png new file mode 100644 index 00000000..7ba7af44 Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_modern_chair.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_modern_chair.png new file mode 100644 index 00000000..65c1cfed Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_modern_chair.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_modern_desk.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_modern_desk.png new file mode 100644 index 00000000..cff569d6 Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_modern_desk.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_modern_wardrobe.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_modern_wardrobe.png new file mode 100644 index 00000000..90a740c0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_pane_window.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_pane_window.png new file mode 100644 index 00000000..2afaa408 Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_pane_window.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_stool_chair.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_stool_chair.png new file mode 100644 index 00000000..1e2d78fa Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_stool_chair.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_striped_chair.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_striped_chair.png new file mode 100644 index 00000000..296fec60 Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_striped_chair.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_table.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_table.png new file mode 100644 index 00000000..5ccf6157 Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_table.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_triple_drawer.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_triple_drawer.png new file mode 100644 index 00000000..448fd99d Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_rainbow_eucalyptus_wardrobe.png b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_wardrobe.png new file mode 100644 index 00000000..4058b7a8 Binary files /dev/null and b/public/textures/mcwbyg/stripped_rainbow_eucalyptus_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_bookshelf.png b/public/textures/mcwbyg/stripped_redwood_bookshelf.png new file mode 100644 index 00000000..2667f47b Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_bookshelf.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_bookshelf_cupboard.png b/public/textures/mcwbyg/stripped_redwood_bookshelf_cupboard.png new file mode 100644 index 00000000..46411853 Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_redwood_bookshelf_drawer.png new file mode 100644 index 00000000..8af70484 Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_chair.png b/public/textures/mcwbyg/stripped_redwood_chair.png new file mode 100644 index 00000000..e51b5be2 Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_chair.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_coffee_table.png b/public/textures/mcwbyg/stripped_redwood_coffee_table.png new file mode 100644 index 00000000..2c5b0727 Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_coffee_table.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_counter.png b/public/textures/mcwbyg/stripped_redwood_counter.png new file mode 100644 index 00000000..330c7d60 Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_counter.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_covered_desk.png b/public/textures/mcwbyg/stripped_redwood_covered_desk.png new file mode 100644 index 00000000..9ce22e05 Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_covered_desk.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_cupboard_counter.png b/public/textures/mcwbyg/stripped_redwood_cupboard_counter.png new file mode 100644 index 00000000..210fcc4b Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_desk.png b/public/textures/mcwbyg/stripped_redwood_desk.png new file mode 100644 index 00000000..5376f423 Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_desk.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_double_drawer.png b/public/textures/mcwbyg/stripped_redwood_double_drawer.png new file mode 100644 index 00000000..14ee2400 Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_double_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_double_drawer_counter.png b/public/textures/mcwbyg/stripped_redwood_double_drawer_counter.png new file mode 100644 index 00000000..32ca3e89 Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_double_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_redwood_double_kitchen_cabinet.png new file mode 100644 index 00000000..9a4bda99 Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_double_wardrobe.png b/public/textures/mcwbyg/stripped_redwood_double_wardrobe.png new file mode 100644 index 00000000..def54342 Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_drawer.png b/public/textures/mcwbyg/stripped_redwood_drawer.png new file mode 100644 index 00000000..c5b5d544 Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_drawer_counter.png b/public/textures/mcwbyg/stripped_redwood_drawer_counter.png new file mode 100644 index 00000000..ae2a2b47 Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_end_table.png b/public/textures/mcwbyg/stripped_redwood_end_table.png new file mode 100644 index 00000000..ddaf4606 Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_end_table.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_glass_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_redwood_glass_kitchen_cabinet.png new file mode 100644 index 00000000..b2011009 Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_glass_table.png b/public/textures/mcwbyg/stripped_redwood_glass_table.png new file mode 100644 index 00000000..44b0dc8a Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_glass_table.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_redwood_kitchen_cabinet.png new file mode 100644 index 00000000..12da741f Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_large_drawer.png b/public/textures/mcwbyg/stripped_redwood_large_drawer.png new file mode 100644 index 00000000..830b9495 Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_large_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_log_four_window.png b/public/textures/mcwbyg/stripped_redwood_log_four_window.png new file mode 100644 index 00000000..239d00f5 Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_log_four_window.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_log_window.png b/public/textures/mcwbyg/stripped_redwood_log_window.png new file mode 100644 index 00000000..5c546c25 Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_log_window.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_log_window2.png b/public/textures/mcwbyg/stripped_redwood_log_window2.png new file mode 100644 index 00000000..05cdc9ef Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_log_window2.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_lower_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_redwood_lower_bookshelf_drawer.png new file mode 100644 index 00000000..9ecd13a3 Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_lower_triple_drawer.png b/public/textures/mcwbyg/stripped_redwood_lower_triple_drawer.png new file mode 100644 index 00000000..4873a4ec Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_modern_chair.png b/public/textures/mcwbyg/stripped_redwood_modern_chair.png new file mode 100644 index 00000000..26456827 Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_modern_chair.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_modern_desk.png b/public/textures/mcwbyg/stripped_redwood_modern_desk.png new file mode 100644 index 00000000..368a26b1 Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_modern_desk.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_modern_wardrobe.png b/public/textures/mcwbyg/stripped_redwood_modern_wardrobe.png new file mode 100644 index 00000000..508c2bee Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_pane_window.png b/public/textures/mcwbyg/stripped_redwood_pane_window.png new file mode 100644 index 00000000..4fe90724 Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_pane_window.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_stool_chair.png b/public/textures/mcwbyg/stripped_redwood_stool_chair.png new file mode 100644 index 00000000..87aa3ea4 Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_stool_chair.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_striped_chair.png b/public/textures/mcwbyg/stripped_redwood_striped_chair.png new file mode 100644 index 00000000..73391541 Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_striped_chair.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_table.png b/public/textures/mcwbyg/stripped_redwood_table.png new file mode 100644 index 00000000..f5802a4f Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_table.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_triple_drawer.png b/public/textures/mcwbyg/stripped_redwood_triple_drawer.png new file mode 100644 index 00000000..b318fecc Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_redwood_wardrobe.png b/public/textures/mcwbyg/stripped_redwood_wardrobe.png new file mode 100644 index 00000000..f6d62857 Binary files /dev/null and b/public/textures/mcwbyg/stripped_redwood_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_bookshelf.png b/public/textures/mcwbyg/stripped_sakura_bookshelf.png new file mode 100644 index 00000000..2005e3f0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_bookshelf.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_bookshelf_cupboard.png b/public/textures/mcwbyg/stripped_sakura_bookshelf_cupboard.png new file mode 100644 index 00000000..54678be0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_sakura_bookshelf_drawer.png new file mode 100644 index 00000000..fe19ce50 Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_chair.png b/public/textures/mcwbyg/stripped_sakura_chair.png new file mode 100644 index 00000000..cd7cdde0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_chair.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_coffee_table.png b/public/textures/mcwbyg/stripped_sakura_coffee_table.png new file mode 100644 index 00000000..22513caf Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_coffee_table.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_counter.png b/public/textures/mcwbyg/stripped_sakura_counter.png new file mode 100644 index 00000000..c67ac459 Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_counter.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_covered_desk.png b/public/textures/mcwbyg/stripped_sakura_covered_desk.png new file mode 100644 index 00000000..d16c982d Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_covered_desk.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_cupboard_counter.png b/public/textures/mcwbyg/stripped_sakura_cupboard_counter.png new file mode 100644 index 00000000..f4a729f3 Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_desk.png b/public/textures/mcwbyg/stripped_sakura_desk.png new file mode 100644 index 00000000..e4fa40d8 Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_desk.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_double_drawer.png b/public/textures/mcwbyg/stripped_sakura_double_drawer.png new file mode 100644 index 00000000..0dc1aa6e Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_double_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_double_drawer_counter.png b/public/textures/mcwbyg/stripped_sakura_double_drawer_counter.png new file mode 100644 index 00000000..0cd78993 Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_double_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_sakura_double_kitchen_cabinet.png new file mode 100644 index 00000000..415d720b Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_double_wardrobe.png b/public/textures/mcwbyg/stripped_sakura_double_wardrobe.png new file mode 100644 index 00000000..d642ca72 Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_drawer.png b/public/textures/mcwbyg/stripped_sakura_drawer.png new file mode 100644 index 00000000..163a6300 Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_drawer_counter.png b/public/textures/mcwbyg/stripped_sakura_drawer_counter.png new file mode 100644 index 00000000..94e4bd03 Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_end_table.png b/public/textures/mcwbyg/stripped_sakura_end_table.png new file mode 100644 index 00000000..86176d08 Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_end_table.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_glass_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_sakura_glass_kitchen_cabinet.png new file mode 100644 index 00000000..ed644470 Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_glass_table.png b/public/textures/mcwbyg/stripped_sakura_glass_table.png new file mode 100644 index 00000000..bc5c4263 Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_glass_table.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_sakura_kitchen_cabinet.png new file mode 100644 index 00000000..a2cf5df7 Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_large_drawer.png b/public/textures/mcwbyg/stripped_sakura_large_drawer.png new file mode 100644 index 00000000..7a462037 Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_large_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_log_four_window.png b/public/textures/mcwbyg/stripped_sakura_log_four_window.png new file mode 100644 index 00000000..e654aed5 Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_log_four_window.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_log_window.png b/public/textures/mcwbyg/stripped_sakura_log_window.png new file mode 100644 index 00000000..602d5a44 Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_log_window.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_log_window2.png b/public/textures/mcwbyg/stripped_sakura_log_window2.png new file mode 100644 index 00000000..23158e1e Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_log_window2.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_lower_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_sakura_lower_bookshelf_drawer.png new file mode 100644 index 00000000..1682c61b Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_lower_triple_drawer.png b/public/textures/mcwbyg/stripped_sakura_lower_triple_drawer.png new file mode 100644 index 00000000..9f23b624 Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_modern_chair.png b/public/textures/mcwbyg/stripped_sakura_modern_chair.png new file mode 100644 index 00000000..22b4338e Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_modern_chair.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_modern_desk.png b/public/textures/mcwbyg/stripped_sakura_modern_desk.png new file mode 100644 index 00000000..39087509 Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_modern_desk.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_modern_wardrobe.png b/public/textures/mcwbyg/stripped_sakura_modern_wardrobe.png new file mode 100644 index 00000000..eafc9ae2 Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_pane_window.png b/public/textures/mcwbyg/stripped_sakura_pane_window.png new file mode 100644 index 00000000..6a9c99f2 Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_pane_window.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_stool_chair.png b/public/textures/mcwbyg/stripped_sakura_stool_chair.png new file mode 100644 index 00000000..624b300e Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_stool_chair.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_striped_chair.png b/public/textures/mcwbyg/stripped_sakura_striped_chair.png new file mode 100644 index 00000000..826bfce8 Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_striped_chair.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_table.png b/public/textures/mcwbyg/stripped_sakura_table.png new file mode 100644 index 00000000..c8b80706 Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_table.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_triple_drawer.png b/public/textures/mcwbyg/stripped_sakura_triple_drawer.png new file mode 100644 index 00000000..67c56634 Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_sakura_wardrobe.png b/public/textures/mcwbyg/stripped_sakura_wardrobe.png new file mode 100644 index 00000000..594d80a0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_sakura_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_bookshelf.png b/public/textures/mcwbyg/stripped_skyris_bookshelf.png new file mode 100644 index 00000000..a25be8c5 Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_bookshelf.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_bookshelf_cupboard.png b/public/textures/mcwbyg/stripped_skyris_bookshelf_cupboard.png new file mode 100644 index 00000000..aeba19e3 Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_skyris_bookshelf_drawer.png new file mode 100644 index 00000000..27020a7e Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_chair.png b/public/textures/mcwbyg/stripped_skyris_chair.png new file mode 100644 index 00000000..4d8b191f Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_chair.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_coffee_table.png b/public/textures/mcwbyg/stripped_skyris_coffee_table.png new file mode 100644 index 00000000..4ce1ad2f Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_coffee_table.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_counter.png b/public/textures/mcwbyg/stripped_skyris_counter.png new file mode 100644 index 00000000..a99f8d13 Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_counter.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_covered_desk.png b/public/textures/mcwbyg/stripped_skyris_covered_desk.png new file mode 100644 index 00000000..e2b74dbd Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_covered_desk.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_cupboard_counter.png b/public/textures/mcwbyg/stripped_skyris_cupboard_counter.png new file mode 100644 index 00000000..0c79e273 Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_desk.png b/public/textures/mcwbyg/stripped_skyris_desk.png new file mode 100644 index 00000000..e069094a Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_desk.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_double_drawer.png b/public/textures/mcwbyg/stripped_skyris_double_drawer.png new file mode 100644 index 00000000..d9c78c4e Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_double_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_double_drawer_counter.png b/public/textures/mcwbyg/stripped_skyris_double_drawer_counter.png new file mode 100644 index 00000000..bea78fe3 Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_double_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_skyris_double_kitchen_cabinet.png new file mode 100644 index 00000000..7fa37f57 Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_double_wardrobe.png b/public/textures/mcwbyg/stripped_skyris_double_wardrobe.png new file mode 100644 index 00000000..22e9a0c1 Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_drawer.png b/public/textures/mcwbyg/stripped_skyris_drawer.png new file mode 100644 index 00000000..827f5bac Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_drawer_counter.png b/public/textures/mcwbyg/stripped_skyris_drawer_counter.png new file mode 100644 index 00000000..1eef9c7b Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_end_table.png b/public/textures/mcwbyg/stripped_skyris_end_table.png new file mode 100644 index 00000000..3b490c4d Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_end_table.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_glass_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_skyris_glass_kitchen_cabinet.png new file mode 100644 index 00000000..6b1ac452 Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_glass_table.png b/public/textures/mcwbyg/stripped_skyris_glass_table.png new file mode 100644 index 00000000..42179a2c Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_glass_table.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_skyris_kitchen_cabinet.png new file mode 100644 index 00000000..333308e7 Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_large_drawer.png b/public/textures/mcwbyg/stripped_skyris_large_drawer.png new file mode 100644 index 00000000..c987f997 Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_large_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_log_four_window.png b/public/textures/mcwbyg/stripped_skyris_log_four_window.png new file mode 100644 index 00000000..6d812de2 Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_log_four_window.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_log_window.png b/public/textures/mcwbyg/stripped_skyris_log_window.png new file mode 100644 index 00000000..39fd6c4b Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_log_window.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_log_window2.png b/public/textures/mcwbyg/stripped_skyris_log_window2.png new file mode 100644 index 00000000..c28825f5 Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_log_window2.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_lower_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_skyris_lower_bookshelf_drawer.png new file mode 100644 index 00000000..7cd7c951 Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_lower_triple_drawer.png b/public/textures/mcwbyg/stripped_skyris_lower_triple_drawer.png new file mode 100644 index 00000000..cc2155ee Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_modern_chair.png b/public/textures/mcwbyg/stripped_skyris_modern_chair.png new file mode 100644 index 00000000..81b336e7 Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_modern_chair.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_modern_desk.png b/public/textures/mcwbyg/stripped_skyris_modern_desk.png new file mode 100644 index 00000000..e2e538bd Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_modern_desk.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_modern_wardrobe.png b/public/textures/mcwbyg/stripped_skyris_modern_wardrobe.png new file mode 100644 index 00000000..58fa85ee Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_pane_window.png b/public/textures/mcwbyg/stripped_skyris_pane_window.png new file mode 100644 index 00000000..75973e4e Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_pane_window.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_stool_chair.png b/public/textures/mcwbyg/stripped_skyris_stool_chair.png new file mode 100644 index 00000000..097f0dbc Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_stool_chair.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_striped_chair.png b/public/textures/mcwbyg/stripped_skyris_striped_chair.png new file mode 100644 index 00000000..6997d33b Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_striped_chair.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_table.png b/public/textures/mcwbyg/stripped_skyris_table.png new file mode 100644 index 00000000..44e0030a Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_table.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_triple_drawer.png b/public/textures/mcwbyg/stripped_skyris_triple_drawer.png new file mode 100644 index 00000000..b3358c49 Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_skyris_wardrobe.png b/public/textures/mcwbyg/stripped_skyris_wardrobe.png new file mode 100644 index 00000000..28909413 Binary files /dev/null and b/public/textures/mcwbyg/stripped_skyris_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_bookshelf.png b/public/textures/mcwbyg/stripped_white_mangrove_bookshelf.png new file mode 100644 index 00000000..93d04082 Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_bookshelf.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_bookshelf_cupboard.png b/public/textures/mcwbyg/stripped_white_mangrove_bookshelf_cupboard.png new file mode 100644 index 00000000..49cb5f89 Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_white_mangrove_bookshelf_drawer.png new file mode 100644 index 00000000..53e0210c Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_chair.png b/public/textures/mcwbyg/stripped_white_mangrove_chair.png new file mode 100644 index 00000000..3f92ec8d Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_chair.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_coffee_table.png b/public/textures/mcwbyg/stripped_white_mangrove_coffee_table.png new file mode 100644 index 00000000..f2339dbb Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_coffee_table.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_counter.png b/public/textures/mcwbyg/stripped_white_mangrove_counter.png new file mode 100644 index 00000000..15b7576b Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_counter.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_covered_desk.png b/public/textures/mcwbyg/stripped_white_mangrove_covered_desk.png new file mode 100644 index 00000000..eaa121ef Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_covered_desk.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_cupboard_counter.png b/public/textures/mcwbyg/stripped_white_mangrove_cupboard_counter.png new file mode 100644 index 00000000..c76a45b2 Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_desk.png b/public/textures/mcwbyg/stripped_white_mangrove_desk.png new file mode 100644 index 00000000..9f6feae5 Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_desk.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_double_drawer.png b/public/textures/mcwbyg/stripped_white_mangrove_double_drawer.png new file mode 100644 index 00000000..d964bb55 Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_double_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_double_drawer_counter.png b/public/textures/mcwbyg/stripped_white_mangrove_double_drawer_counter.png new file mode 100644 index 00000000..5bc5342f Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_double_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_white_mangrove_double_kitchen_cabinet.png new file mode 100644 index 00000000..19405e34 Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_double_wardrobe.png b/public/textures/mcwbyg/stripped_white_mangrove_double_wardrobe.png new file mode 100644 index 00000000..d2a46c9d Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_drawer.png b/public/textures/mcwbyg/stripped_white_mangrove_drawer.png new file mode 100644 index 00000000..4bfcb229 Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_drawer_counter.png b/public/textures/mcwbyg/stripped_white_mangrove_drawer_counter.png new file mode 100644 index 00000000..8a060c00 Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_end_table.png b/public/textures/mcwbyg/stripped_white_mangrove_end_table.png new file mode 100644 index 00000000..fa933bee Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_end_table.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_glass_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_white_mangrove_glass_kitchen_cabinet.png new file mode 100644 index 00000000..6537b5e0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_glass_table.png b/public/textures/mcwbyg/stripped_white_mangrove_glass_table.png new file mode 100644 index 00000000..f0550249 Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_glass_table.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_white_mangrove_kitchen_cabinet.png new file mode 100644 index 00000000..1b60a9c3 Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_large_drawer.png b/public/textures/mcwbyg/stripped_white_mangrove_large_drawer.png new file mode 100644 index 00000000..211a5bff Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_large_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_log_four_window.png b/public/textures/mcwbyg/stripped_white_mangrove_log_four_window.png new file mode 100644 index 00000000..6b859bbb Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_log_four_window.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_log_window.png b/public/textures/mcwbyg/stripped_white_mangrove_log_window.png new file mode 100644 index 00000000..81765b3e Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_log_window.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_log_window2.png b/public/textures/mcwbyg/stripped_white_mangrove_log_window2.png new file mode 100644 index 00000000..3e989a2b Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_log_window2.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_lower_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_white_mangrove_lower_bookshelf_drawer.png new file mode 100644 index 00000000..3130f176 Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_lower_triple_drawer.png b/public/textures/mcwbyg/stripped_white_mangrove_lower_triple_drawer.png new file mode 100644 index 00000000..5a5e2c2c Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_modern_chair.png b/public/textures/mcwbyg/stripped_white_mangrove_modern_chair.png new file mode 100644 index 00000000..bf124dab Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_modern_chair.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_modern_desk.png b/public/textures/mcwbyg/stripped_white_mangrove_modern_desk.png new file mode 100644 index 00000000..78597a05 Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_modern_desk.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_modern_wardrobe.png b/public/textures/mcwbyg/stripped_white_mangrove_modern_wardrobe.png new file mode 100644 index 00000000..c9b3b6f2 Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_pane_window.png b/public/textures/mcwbyg/stripped_white_mangrove_pane_window.png new file mode 100644 index 00000000..89be70e3 Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_pane_window.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_stool_chair.png b/public/textures/mcwbyg/stripped_white_mangrove_stool_chair.png new file mode 100644 index 00000000..9243b4b0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_stool_chair.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_striped_chair.png b/public/textures/mcwbyg/stripped_white_mangrove_striped_chair.png new file mode 100644 index 00000000..4faece4b Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_striped_chair.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_table.png b/public/textures/mcwbyg/stripped_white_mangrove_table.png new file mode 100644 index 00000000..f6161dc5 Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_table.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_triple_drawer.png b/public/textures/mcwbyg/stripped_white_mangrove_triple_drawer.png new file mode 100644 index 00000000..6e05c582 Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_white_mangrove_wardrobe.png b/public/textures/mcwbyg/stripped_white_mangrove_wardrobe.png new file mode 100644 index 00000000..6410cc4e Binary files /dev/null and b/public/textures/mcwbyg/stripped_white_mangrove_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_willow_bookshelf.png b/public/textures/mcwbyg/stripped_willow_bookshelf.png new file mode 100644 index 00000000..e5adf734 Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_bookshelf.png differ diff --git a/public/textures/mcwbyg/stripped_willow_bookshelf_cupboard.png b/public/textures/mcwbyg/stripped_willow_bookshelf_cupboard.png new file mode 100644 index 00000000..784d7ed5 Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/stripped_willow_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_willow_bookshelf_drawer.png new file mode 100644 index 00000000..a3b8bd48 Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_willow_chair.png b/public/textures/mcwbyg/stripped_willow_chair.png new file mode 100644 index 00000000..f80fd1ac Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_chair.png differ diff --git a/public/textures/mcwbyg/stripped_willow_coffee_table.png b/public/textures/mcwbyg/stripped_willow_coffee_table.png new file mode 100644 index 00000000..32e17024 Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_coffee_table.png differ diff --git a/public/textures/mcwbyg/stripped_willow_counter.png b/public/textures/mcwbyg/stripped_willow_counter.png new file mode 100644 index 00000000..221b552a Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_counter.png differ diff --git a/public/textures/mcwbyg/stripped_willow_covered_desk.png b/public/textures/mcwbyg/stripped_willow_covered_desk.png new file mode 100644 index 00000000..712e1393 Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_covered_desk.png differ diff --git a/public/textures/mcwbyg/stripped_willow_cupboard_counter.png b/public/textures/mcwbyg/stripped_willow_cupboard_counter.png new file mode 100644 index 00000000..608de880 Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/stripped_willow_desk.png b/public/textures/mcwbyg/stripped_willow_desk.png new file mode 100644 index 00000000..e36b894b Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_desk.png differ diff --git a/public/textures/mcwbyg/stripped_willow_double_drawer.png b/public/textures/mcwbyg/stripped_willow_double_drawer.png new file mode 100644 index 00000000..3a106ddc Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_double_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_willow_double_drawer_counter.png b/public/textures/mcwbyg/stripped_willow_double_drawer_counter.png new file mode 100644 index 00000000..62ccc7aa Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_willow_double_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_willow_double_kitchen_cabinet.png new file mode 100644 index 00000000..1f736360 Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_willow_double_wardrobe.png b/public/textures/mcwbyg/stripped_willow_double_wardrobe.png new file mode 100644 index 00000000..aeb123d1 Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_willow_drawer.png b/public/textures/mcwbyg/stripped_willow_drawer.png new file mode 100644 index 00000000..84c7a367 Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_willow_drawer_counter.png b/public/textures/mcwbyg/stripped_willow_drawer_counter.png new file mode 100644 index 00000000..21dc8ccd Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_willow_end_table.png b/public/textures/mcwbyg/stripped_willow_end_table.png new file mode 100644 index 00000000..ad8ba878 Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_end_table.png differ diff --git a/public/textures/mcwbyg/stripped_willow_glass_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_willow_glass_kitchen_cabinet.png new file mode 100644 index 00000000..60376be6 Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_willow_glass_table.png b/public/textures/mcwbyg/stripped_willow_glass_table.png new file mode 100644 index 00000000..b38b9b2f Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_glass_table.png differ diff --git a/public/textures/mcwbyg/stripped_willow_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_willow_kitchen_cabinet.png new file mode 100644 index 00000000..120f01aa Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_willow_large_drawer.png b/public/textures/mcwbyg/stripped_willow_large_drawer.png new file mode 100644 index 00000000..44dab013 Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_large_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_willow_log_four_window.png b/public/textures/mcwbyg/stripped_willow_log_four_window.png new file mode 100644 index 00000000..b480589f Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_log_four_window.png differ diff --git a/public/textures/mcwbyg/stripped_willow_log_window.png b/public/textures/mcwbyg/stripped_willow_log_window.png new file mode 100644 index 00000000..12990788 Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_log_window.png differ diff --git a/public/textures/mcwbyg/stripped_willow_log_window2.png b/public/textures/mcwbyg/stripped_willow_log_window2.png new file mode 100644 index 00000000..1398b300 Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_log_window2.png differ diff --git a/public/textures/mcwbyg/stripped_willow_lower_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_willow_lower_bookshelf_drawer.png new file mode 100644 index 00000000..e833e60e Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_willow_lower_triple_drawer.png b/public/textures/mcwbyg/stripped_willow_lower_triple_drawer.png new file mode 100644 index 00000000..2eaff3a8 Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_willow_modern_chair.png b/public/textures/mcwbyg/stripped_willow_modern_chair.png new file mode 100644 index 00000000..28311283 Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_modern_chair.png differ diff --git a/public/textures/mcwbyg/stripped_willow_modern_desk.png b/public/textures/mcwbyg/stripped_willow_modern_desk.png new file mode 100644 index 00000000..d07b96ed Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_modern_desk.png differ diff --git a/public/textures/mcwbyg/stripped_willow_modern_wardrobe.png b/public/textures/mcwbyg/stripped_willow_modern_wardrobe.png new file mode 100644 index 00000000..18c87992 Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_willow_pane_window.png b/public/textures/mcwbyg/stripped_willow_pane_window.png new file mode 100644 index 00000000..ac9021ee Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_pane_window.png differ diff --git a/public/textures/mcwbyg/stripped_willow_stool_chair.png b/public/textures/mcwbyg/stripped_willow_stool_chair.png new file mode 100644 index 00000000..b1540226 Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_stool_chair.png differ diff --git a/public/textures/mcwbyg/stripped_willow_striped_chair.png b/public/textures/mcwbyg/stripped_willow_striped_chair.png new file mode 100644 index 00000000..8eb93265 Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_striped_chair.png differ diff --git a/public/textures/mcwbyg/stripped_willow_table.png b/public/textures/mcwbyg/stripped_willow_table.png new file mode 100644 index 00000000..beb422e2 Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_table.png differ diff --git a/public/textures/mcwbyg/stripped_willow_triple_drawer.png b/public/textures/mcwbyg/stripped_willow_triple_drawer.png new file mode 100644 index 00000000..0e847a60 Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_willow_wardrobe.png b/public/textures/mcwbyg/stripped_willow_wardrobe.png new file mode 100644 index 00000000..906f40eb Binary files /dev/null and b/public/textures/mcwbyg/stripped_willow_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_bookshelf.png b/public/textures/mcwbyg/stripped_witch_hazel_bookshelf.png new file mode 100644 index 00000000..8b1a0929 Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_bookshelf.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_bookshelf_cupboard.png b/public/textures/mcwbyg/stripped_witch_hazel_bookshelf_cupboard.png new file mode 100644 index 00000000..8c1f67a1 Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_witch_hazel_bookshelf_drawer.png new file mode 100644 index 00000000..f4ce34f1 Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_chair.png b/public/textures/mcwbyg/stripped_witch_hazel_chair.png new file mode 100644 index 00000000..0e3d1055 Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_chair.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_coffee_table.png b/public/textures/mcwbyg/stripped_witch_hazel_coffee_table.png new file mode 100644 index 00000000..dadf1095 Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_coffee_table.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_counter.png b/public/textures/mcwbyg/stripped_witch_hazel_counter.png new file mode 100644 index 00000000..44968bc0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_counter.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_covered_desk.png b/public/textures/mcwbyg/stripped_witch_hazel_covered_desk.png new file mode 100644 index 00000000..58e2ad9c Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_covered_desk.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_cupboard_counter.png b/public/textures/mcwbyg/stripped_witch_hazel_cupboard_counter.png new file mode 100644 index 00000000..7324f78c Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_desk.png b/public/textures/mcwbyg/stripped_witch_hazel_desk.png new file mode 100644 index 00000000..10f0aed4 Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_desk.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_double_drawer.png b/public/textures/mcwbyg/stripped_witch_hazel_double_drawer.png new file mode 100644 index 00000000..13081655 Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_double_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_double_drawer_counter.png b/public/textures/mcwbyg/stripped_witch_hazel_double_drawer_counter.png new file mode 100644 index 00000000..341b7789 Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_double_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_witch_hazel_double_kitchen_cabinet.png new file mode 100644 index 00000000..12334135 Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_double_wardrobe.png b/public/textures/mcwbyg/stripped_witch_hazel_double_wardrobe.png new file mode 100644 index 00000000..1d7a7bd0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_drawer.png b/public/textures/mcwbyg/stripped_witch_hazel_drawer.png new file mode 100644 index 00000000..40eca4a2 Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_drawer_counter.png b/public/textures/mcwbyg/stripped_witch_hazel_drawer_counter.png new file mode 100644 index 00000000..195521d3 Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_end_table.png b/public/textures/mcwbyg/stripped_witch_hazel_end_table.png new file mode 100644 index 00000000..a0a46a51 Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_end_table.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_glass_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_witch_hazel_glass_kitchen_cabinet.png new file mode 100644 index 00000000..a48d64dd Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_glass_table.png b/public/textures/mcwbyg/stripped_witch_hazel_glass_table.png new file mode 100644 index 00000000..abfde4fd Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_glass_table.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_witch_hazel_kitchen_cabinet.png new file mode 100644 index 00000000..b9a99f01 Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_large_drawer.png b/public/textures/mcwbyg/stripped_witch_hazel_large_drawer.png new file mode 100644 index 00000000..1ec9a900 Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_large_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_log_four_window.png b/public/textures/mcwbyg/stripped_witch_hazel_log_four_window.png new file mode 100644 index 00000000..f98f475a Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_log_four_window.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_log_window.png b/public/textures/mcwbyg/stripped_witch_hazel_log_window.png new file mode 100644 index 00000000..f021c017 Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_log_window.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_log_window2.png b/public/textures/mcwbyg/stripped_witch_hazel_log_window2.png new file mode 100644 index 00000000..46664f60 Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_log_window2.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_lower_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_witch_hazel_lower_bookshelf_drawer.png new file mode 100644 index 00000000..bf430e94 Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_lower_triple_drawer.png b/public/textures/mcwbyg/stripped_witch_hazel_lower_triple_drawer.png new file mode 100644 index 00000000..e7fbccf2 Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_modern_chair.png b/public/textures/mcwbyg/stripped_witch_hazel_modern_chair.png new file mode 100644 index 00000000..da61e6ce Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_modern_chair.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_modern_desk.png b/public/textures/mcwbyg/stripped_witch_hazel_modern_desk.png new file mode 100644 index 00000000..f91f7aaa Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_modern_desk.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_modern_wardrobe.png b/public/textures/mcwbyg/stripped_witch_hazel_modern_wardrobe.png new file mode 100644 index 00000000..a3d1f7e8 Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_pane_window.png b/public/textures/mcwbyg/stripped_witch_hazel_pane_window.png new file mode 100644 index 00000000..de83319e Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_pane_window.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_stool_chair.png b/public/textures/mcwbyg/stripped_witch_hazel_stool_chair.png new file mode 100644 index 00000000..ff953e2e Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_stool_chair.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_striped_chair.png b/public/textures/mcwbyg/stripped_witch_hazel_striped_chair.png new file mode 100644 index 00000000..6ece35a8 Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_striped_chair.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_table.png b/public/textures/mcwbyg/stripped_witch_hazel_table.png new file mode 100644 index 00000000..f9a91514 Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_table.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_triple_drawer.png b/public/textures/mcwbyg/stripped_witch_hazel_triple_drawer.png new file mode 100644 index 00000000..2620fda4 Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_witch_hazel_wardrobe.png b/public/textures/mcwbyg/stripped_witch_hazel_wardrobe.png new file mode 100644 index 00000000..1ee06c8e Binary files /dev/null and b/public/textures/mcwbyg/stripped_witch_hazel_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_bookshelf.png b/public/textures/mcwbyg/stripped_zelkova_bookshelf.png new file mode 100644 index 00000000..e583b50b Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_bookshelf.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_bookshelf_cupboard.png b/public/textures/mcwbyg/stripped_zelkova_bookshelf_cupboard.png new file mode 100644 index 00000000..2649ea3e Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_zelkova_bookshelf_drawer.png new file mode 100644 index 00000000..3a75fd38 Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_chair.png b/public/textures/mcwbyg/stripped_zelkova_chair.png new file mode 100644 index 00000000..07a44912 Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_chair.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_coffee_table.png b/public/textures/mcwbyg/stripped_zelkova_coffee_table.png new file mode 100644 index 00000000..71961552 Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_coffee_table.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_counter.png b/public/textures/mcwbyg/stripped_zelkova_counter.png new file mode 100644 index 00000000..d86f3045 Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_counter.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_covered_desk.png b/public/textures/mcwbyg/stripped_zelkova_covered_desk.png new file mode 100644 index 00000000..dd2c9a8f Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_covered_desk.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_cupboard_counter.png b/public/textures/mcwbyg/stripped_zelkova_cupboard_counter.png new file mode 100644 index 00000000..a90bd12f Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_desk.png b/public/textures/mcwbyg/stripped_zelkova_desk.png new file mode 100644 index 00000000..cf505596 Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_desk.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_double_drawer.png b/public/textures/mcwbyg/stripped_zelkova_double_drawer.png new file mode 100644 index 00000000..cd13a7ca Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_double_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_double_drawer_counter.png b/public/textures/mcwbyg/stripped_zelkova_double_drawer_counter.png new file mode 100644 index 00000000..3223931e Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_double_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_zelkova_double_kitchen_cabinet.png new file mode 100644 index 00000000..8618c195 Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_double_wardrobe.png b/public/textures/mcwbyg/stripped_zelkova_double_wardrobe.png new file mode 100644 index 00000000..22ed1466 Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_drawer.png b/public/textures/mcwbyg/stripped_zelkova_drawer.png new file mode 100644 index 00000000..5bb94c56 Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_drawer_counter.png b/public/textures/mcwbyg/stripped_zelkova_drawer_counter.png new file mode 100644 index 00000000..bb734cca Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_drawer_counter.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_end_table.png b/public/textures/mcwbyg/stripped_zelkova_end_table.png new file mode 100644 index 00000000..7515dddf Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_end_table.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_glass_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_zelkova_glass_kitchen_cabinet.png new file mode 100644 index 00000000..cfaff1be Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_glass_table.png b/public/textures/mcwbyg/stripped_zelkova_glass_table.png new file mode 100644 index 00000000..9cb8fbb6 Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_glass_table.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_kitchen_cabinet.png b/public/textures/mcwbyg/stripped_zelkova_kitchen_cabinet.png new file mode 100644 index 00000000..bd4ceacc Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_large_drawer.png b/public/textures/mcwbyg/stripped_zelkova_large_drawer.png new file mode 100644 index 00000000..ca356d37 Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_large_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_log_four_window.png b/public/textures/mcwbyg/stripped_zelkova_log_four_window.png new file mode 100644 index 00000000..fc6d0857 Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_log_four_window.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_log_window.png b/public/textures/mcwbyg/stripped_zelkova_log_window.png new file mode 100644 index 00000000..e162dbd0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_log_window.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_log_window2.png b/public/textures/mcwbyg/stripped_zelkova_log_window2.png new file mode 100644 index 00000000..85180ae4 Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_log_window2.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_lower_bookshelf_drawer.png b/public/textures/mcwbyg/stripped_zelkova_lower_bookshelf_drawer.png new file mode 100644 index 00000000..5dfbb3ab Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_lower_triple_drawer.png b/public/textures/mcwbyg/stripped_zelkova_lower_triple_drawer.png new file mode 100644 index 00000000..4b4a4ef6 Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_modern_chair.png b/public/textures/mcwbyg/stripped_zelkova_modern_chair.png new file mode 100644 index 00000000..a2691b17 Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_modern_chair.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_modern_desk.png b/public/textures/mcwbyg/stripped_zelkova_modern_desk.png new file mode 100644 index 00000000..dfcbb833 Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_modern_desk.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_modern_wardrobe.png b/public/textures/mcwbyg/stripped_zelkova_modern_wardrobe.png new file mode 100644 index 00000000..05faf01a Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_pane_window.png b/public/textures/mcwbyg/stripped_zelkova_pane_window.png new file mode 100644 index 00000000..0f4c6df0 Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_pane_window.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_stool_chair.png b/public/textures/mcwbyg/stripped_zelkova_stool_chair.png new file mode 100644 index 00000000..326f40ab Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_stool_chair.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_striped_chair.png b/public/textures/mcwbyg/stripped_zelkova_striped_chair.png new file mode 100644 index 00000000..1706d99a Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_striped_chair.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_table.png b/public/textures/mcwbyg/stripped_zelkova_table.png new file mode 100644 index 00000000..d7550c45 Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_table.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_triple_drawer.png b/public/textures/mcwbyg/stripped_zelkova_triple_drawer.png new file mode 100644 index 00000000..c9a76838 Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_triple_drawer.png differ diff --git a/public/textures/mcwbyg/stripped_zelkova_wardrobe.png b/public/textures/mcwbyg/stripped_zelkova_wardrobe.png new file mode 100644 index 00000000..556778b8 Binary files /dev/null and b/public/textures/mcwbyg/stripped_zelkova_wardrobe.png differ diff --git a/public/textures/mcwbyg/white_mangrove_attic_roof.png b/public/textures/mcwbyg/white_mangrove_attic_roof.png new file mode 100644 index 00000000..f6e7dae2 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_attic_roof.png differ diff --git a/public/textures/mcwbyg/white_mangrove_bamboo_door.png b/public/textures/mcwbyg/white_mangrove_bamboo_door.png new file mode 100644 index 00000000..7b6c5989 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_bamboo_door.png differ diff --git a/public/textures/mcwbyg/white_mangrove_bamboo_trapdoor.png b/public/textures/mcwbyg/white_mangrove_bamboo_trapdoor.png new file mode 100644 index 00000000..d5f1dd4e Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_bamboo_trapdoor.png differ diff --git a/public/textures/mcwbyg/white_mangrove_bark_glass_door.png b/public/textures/mcwbyg/white_mangrove_bark_glass_door.png new file mode 100644 index 00000000..94e54b10 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_bark_glass_door.png differ diff --git a/public/textures/mcwbyg/white_mangrove_bark_trapdoor.png b/public/textures/mcwbyg/white_mangrove_bark_trapdoor.png new file mode 100644 index 00000000..b86af545 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_bark_trapdoor.png differ diff --git a/public/textures/mcwbyg/white_mangrove_barn_door.png b/public/textures/mcwbyg/white_mangrove_barn_door.png new file mode 100644 index 00000000..71aec412 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_barn_door.png differ diff --git a/public/textures/mcwbyg/white_mangrove_barn_glass_door.png b/public/textures/mcwbyg/white_mangrove_barn_glass_door.png new file mode 100644 index 00000000..7e894ae0 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_barn_glass_door.png differ diff --git a/public/textures/mcwbyg/white_mangrove_barn_trapdoor.png b/public/textures/mcwbyg/white_mangrove_barn_trapdoor.png new file mode 100644 index 00000000..644f98f0 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_barn_trapdoor.png differ diff --git a/public/textures/mcwbyg/white_mangrove_barred_trapdoor.png b/public/textures/mcwbyg/white_mangrove_barred_trapdoor.png new file mode 100644 index 00000000..3997750e Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_barred_trapdoor.png differ diff --git a/public/textures/mcwbyg/white_mangrove_barrel_trapdoor.png b/public/textures/mcwbyg/white_mangrove_barrel_trapdoor.png new file mode 100644 index 00000000..97c5e2ec Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_barrel_trapdoor.png differ diff --git a/public/textures/mcwbyg/white_mangrove_beach_door.png b/public/textures/mcwbyg/white_mangrove_beach_door.png new file mode 100644 index 00000000..62a74a88 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_beach_door.png differ diff --git a/public/textures/mcwbyg/white_mangrove_beach_trapdoor.png b/public/textures/mcwbyg/white_mangrove_beach_trapdoor.png new file mode 100644 index 00000000..c385c8e7 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_beach_trapdoor.png differ diff --git a/public/textures/mcwbyg/white_mangrove_blinds.png b/public/textures/mcwbyg/white_mangrove_blinds.png new file mode 100644 index 00000000..d34b3c98 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_blinds.png differ diff --git a/public/textures/mcwbyg/white_mangrove_blossom_trapdoor.png b/public/textures/mcwbyg/white_mangrove_blossom_trapdoor.png new file mode 100644 index 00000000..1b97d241 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_blossom_trapdoor.png differ diff --git a/public/textures/mcwbyg/white_mangrove_bookshelf.png b/public/textures/mcwbyg/white_mangrove_bookshelf.png new file mode 100644 index 00000000..cfaaaa1a Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_bookshelf.png differ diff --git a/public/textures/mcwbyg/white_mangrove_bookshelf_cupboard.png b/public/textures/mcwbyg/white_mangrove_bookshelf_cupboard.png new file mode 100644 index 00000000..f043b1c3 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/white_mangrove_bookshelf_drawer.png b/public/textures/mcwbyg/white_mangrove_bookshelf_drawer.png new file mode 100644 index 00000000..76f91a50 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/white_mangrove_bridge_pier.png b/public/textures/mcwbyg/white_mangrove_bridge_pier.png new file mode 100644 index 00000000..7887279e Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_bridge_pier.png differ diff --git a/public/textures/mcwbyg/white_mangrove_chair.png b/public/textures/mcwbyg/white_mangrove_chair.png new file mode 100644 index 00000000..e2f96614 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_chair.png differ diff --git a/public/textures/mcwbyg/white_mangrove_classic_door.png b/public/textures/mcwbyg/white_mangrove_classic_door.png new file mode 100644 index 00000000..4e98fbfa Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_classic_door.png differ diff --git a/public/textures/mcwbyg/white_mangrove_classic_trapdoor.png b/public/textures/mcwbyg/white_mangrove_classic_trapdoor.png new file mode 100644 index 00000000..52b1d58d Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_classic_trapdoor.png differ diff --git a/public/textures/mcwbyg/white_mangrove_coffee_table.png b/public/textures/mcwbyg/white_mangrove_coffee_table.png new file mode 100644 index 00000000..94d90acf Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_coffee_table.png differ diff --git a/public/textures/mcwbyg/white_mangrove_cottage_door.png b/public/textures/mcwbyg/white_mangrove_cottage_door.png new file mode 100644 index 00000000..20999ada Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_cottage_door.png differ diff --git a/public/textures/mcwbyg/white_mangrove_cottage_trapdoor.png b/public/textures/mcwbyg/white_mangrove_cottage_trapdoor.png new file mode 100644 index 00000000..915325a8 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_cottage_trapdoor.png differ diff --git a/public/textures/mcwbyg/white_mangrove_counter.png b/public/textures/mcwbyg/white_mangrove_counter.png new file mode 100644 index 00000000..93d19335 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_counter.png differ diff --git a/public/textures/mcwbyg/white_mangrove_covered_desk.png b/public/textures/mcwbyg/white_mangrove_covered_desk.png new file mode 100644 index 00000000..e2379322 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_covered_desk.png differ diff --git a/public/textures/mcwbyg/white_mangrove_cupboard_counter.png b/public/textures/mcwbyg/white_mangrove_cupboard_counter.png new file mode 100644 index 00000000..c4d5d36d Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/white_mangrove_curtain_rod.png b/public/textures/mcwbyg/white_mangrove_curtain_rod.png new file mode 100644 index 00000000..4aa18125 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_curtain_rod.png differ diff --git a/public/textures/mcwbyg/white_mangrove_curved_gate.png b/public/textures/mcwbyg/white_mangrove_curved_gate.png new file mode 100644 index 00000000..235db144 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_curved_gate.png differ diff --git a/public/textures/mcwbyg/white_mangrove_desk.png b/public/textures/mcwbyg/white_mangrove_desk.png new file mode 100644 index 00000000..5f809d7a Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_desk.png differ diff --git a/public/textures/mcwbyg/white_mangrove_double_drawer.png b/public/textures/mcwbyg/white_mangrove_double_drawer.png new file mode 100644 index 00000000..2e043e3c Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_double_drawer.png differ diff --git a/public/textures/mcwbyg/white_mangrove_double_drawer_counter.png b/public/textures/mcwbyg/white_mangrove_double_drawer_counter.png new file mode 100644 index 00000000..02d96027 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/white_mangrove_double_kitchen_cabinet.png b/public/textures/mcwbyg/white_mangrove_double_kitchen_cabinet.png new file mode 100644 index 00000000..3a4d3606 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/white_mangrove_double_wardrobe.png b/public/textures/mcwbyg/white_mangrove_double_wardrobe.png new file mode 100644 index 00000000..cad3423d Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/white_mangrove_drawer.png b/public/textures/mcwbyg/white_mangrove_drawer.png new file mode 100644 index 00000000..b6741be8 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_drawer.png differ diff --git a/public/textures/mcwbyg/white_mangrove_drawer_counter.png b/public/textures/mcwbyg/white_mangrove_drawer_counter.png new file mode 100644 index 00000000..68829bc4 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_drawer_counter.png differ diff --git a/public/textures/mcwbyg/white_mangrove_end_table.png b/public/textures/mcwbyg/white_mangrove_end_table.png new file mode 100644 index 00000000..5e7e5840 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_end_table.png differ diff --git a/public/textures/mcwbyg/white_mangrove_four_panel_door.png b/public/textures/mcwbyg/white_mangrove_four_panel_door.png new file mode 100644 index 00000000..d8ba1baf Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_four_panel_door.png differ diff --git a/public/textures/mcwbyg/white_mangrove_four_panel_trapdoor.png b/public/textures/mcwbyg/white_mangrove_four_panel_trapdoor.png new file mode 100644 index 00000000..d3161863 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_four_panel_trapdoor.png differ diff --git a/public/textures/mcwbyg/white_mangrove_four_window.png b/public/textures/mcwbyg/white_mangrove_four_window.png new file mode 100644 index 00000000..aa5d0ab6 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_four_window.png differ diff --git a/public/textures/mcwbyg/white_mangrove_glass_door.png b/public/textures/mcwbyg/white_mangrove_glass_door.png new file mode 100644 index 00000000..fe52b25b Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_glass_door.png differ diff --git a/public/textures/mcwbyg/white_mangrove_glass_kitchen_cabinet.png b/public/textures/mcwbyg/white_mangrove_glass_kitchen_cabinet.png new file mode 100644 index 00000000..b0245e9b Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/white_mangrove_glass_table.png b/public/textures/mcwbyg/white_mangrove_glass_table.png new file mode 100644 index 00000000..eed4b19e Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_glass_table.png differ diff --git a/public/textures/mcwbyg/white_mangrove_glass_trapdoor.png b/public/textures/mcwbyg/white_mangrove_glass_trapdoor.png new file mode 100644 index 00000000..b8343a01 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_glass_trapdoor.png differ diff --git a/public/textures/mcwbyg/white_mangrove_hedge.png b/public/textures/mcwbyg/white_mangrove_hedge.png new file mode 100644 index 00000000..03ec26f6 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_hedge.png differ diff --git a/public/textures/mcwbyg/white_mangrove_highley_gate.png b/public/textures/mcwbyg/white_mangrove_highley_gate.png new file mode 100644 index 00000000..31b90f91 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_highley_gate.png differ diff --git a/public/textures/mcwbyg/white_mangrove_horse_fence.png b/public/textures/mcwbyg/white_mangrove_horse_fence.png new file mode 100644 index 00000000..303573bf Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_horse_fence.png differ diff --git a/public/textures/mcwbyg/white_mangrove_japanese2_door.png b/public/textures/mcwbyg/white_mangrove_japanese2_door.png new file mode 100644 index 00000000..758bcb0c Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_japanese2_door.png differ diff --git a/public/textures/mcwbyg/white_mangrove_japanese_door.png b/public/textures/mcwbyg/white_mangrove_japanese_door.png new file mode 100644 index 00000000..bdffbc92 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_japanese_door.png differ diff --git a/public/textures/mcwbyg/white_mangrove_kitchen_cabinet.png b/public/textures/mcwbyg/white_mangrove_kitchen_cabinet.png new file mode 100644 index 00000000..b50c684c Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/white_mangrove_large_drawer.png b/public/textures/mcwbyg/white_mangrove_large_drawer.png new file mode 100644 index 00000000..89daa740 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_large_drawer.png differ diff --git a/public/textures/mcwbyg/white_mangrove_log_bridge_middle.png b/public/textures/mcwbyg/white_mangrove_log_bridge_middle.png new file mode 100644 index 00000000..8400ea94 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_log_bridge_middle.png differ diff --git a/public/textures/mcwbyg/white_mangrove_log_bridge_stair.png b/public/textures/mcwbyg/white_mangrove_log_bridge_stair.png new file mode 100644 index 00000000..42fd9ff9 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_log_bridge_stair.png differ diff --git a/public/textures/mcwbyg/white_mangrove_log_parapet.png b/public/textures/mcwbyg/white_mangrove_log_parapet.png new file mode 100644 index 00000000..2b03822c Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_log_parapet.png differ diff --git a/public/textures/mcwbyg/white_mangrove_louvered_shutter.png b/public/textures/mcwbyg/white_mangrove_louvered_shutter.png new file mode 100644 index 00000000..238a0796 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_louvered_shutter.png differ diff --git a/public/textures/mcwbyg/white_mangrove_lower_bookshelf_drawer.png b/public/textures/mcwbyg/white_mangrove_lower_bookshelf_drawer.png new file mode 100644 index 00000000..9f65a07f Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/white_mangrove_lower_roof.png b/public/textures/mcwbyg/white_mangrove_lower_roof.png new file mode 100644 index 00000000..43d63f85 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_lower_roof.png differ diff --git a/public/textures/mcwbyg/white_mangrove_lower_triple_drawer.png b/public/textures/mcwbyg/white_mangrove_lower_triple_drawer.png new file mode 100644 index 00000000..94f1e72e Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/white_mangrove_modern_chair.png b/public/textures/mcwbyg/white_mangrove_modern_chair.png new file mode 100644 index 00000000..dd8c81f9 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_modern_chair.png differ diff --git a/public/textures/mcwbyg/white_mangrove_modern_desk.png b/public/textures/mcwbyg/white_mangrove_modern_desk.png new file mode 100644 index 00000000..0e6794d5 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_modern_desk.png differ diff --git a/public/textures/mcwbyg/white_mangrove_modern_door.png b/public/textures/mcwbyg/white_mangrove_modern_door.png new file mode 100644 index 00000000..e8ff282f Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_modern_door.png differ diff --git a/public/textures/mcwbyg/white_mangrove_modern_wardrobe.png b/public/textures/mcwbyg/white_mangrove_modern_wardrobe.png new file mode 100644 index 00000000..fcf80285 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/white_mangrove_mystic_door.png b/public/textures/mcwbyg/white_mangrove_mystic_door.png new file mode 100644 index 00000000..9117c1b6 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_mystic_door.png differ diff --git a/public/textures/mcwbyg/white_mangrove_mystic_trapdoor.png b/public/textures/mcwbyg/white_mangrove_mystic_trapdoor.png new file mode 100644 index 00000000..6dd9c865 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_mystic_trapdoor.png differ diff --git a/public/textures/mcwbyg/white_mangrove_nether_door.png b/public/textures/mcwbyg/white_mangrove_nether_door.png new file mode 100644 index 00000000..1889b8c5 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_nether_door.png differ diff --git a/public/textures/mcwbyg/white_mangrove_pane_window.png b/public/textures/mcwbyg/white_mangrove_pane_window.png new file mode 100644 index 00000000..ee519552 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_pane_window.png differ diff --git a/public/textures/mcwbyg/white_mangrove_paper_door.png b/public/textures/mcwbyg/white_mangrove_paper_door.png new file mode 100644 index 00000000..1cada65e Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_paper_door.png differ diff --git a/public/textures/mcwbyg/white_mangrove_paper_trapdoor.png b/public/textures/mcwbyg/white_mangrove_paper_trapdoor.png new file mode 100644 index 00000000..f50d25e0 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_paper_trapdoor.png differ diff --git a/public/textures/mcwbyg/white_mangrove_picket_fence.png b/public/textures/mcwbyg/white_mangrove_picket_fence.png new file mode 100644 index 00000000..259f7e4c Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_picket_fence.png differ diff --git a/public/textures/mcwbyg/white_mangrove_plank_four_window.png b/public/textures/mcwbyg/white_mangrove_plank_four_window.png new file mode 100644 index 00000000..87edf138 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_plank_four_window.png differ diff --git a/public/textures/mcwbyg/white_mangrove_plank_pane_window.png b/public/textures/mcwbyg/white_mangrove_plank_pane_window.png new file mode 100644 index 00000000..18f7c6b6 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_plank_pane_window.png differ diff --git a/public/textures/mcwbyg/white_mangrove_plank_parapet.png b/public/textures/mcwbyg/white_mangrove_plank_parapet.png new file mode 100644 index 00000000..d0bdc70e Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_plank_parapet.png differ diff --git a/public/textures/mcwbyg/white_mangrove_plank_window.png b/public/textures/mcwbyg/white_mangrove_plank_window.png new file mode 100644 index 00000000..2f03e130 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_plank_window.png differ diff --git a/public/textures/mcwbyg/white_mangrove_plank_window2.png b/public/textures/mcwbyg/white_mangrove_plank_window2.png new file mode 100644 index 00000000..d2dadc04 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_plank_window2.png differ diff --git a/public/textures/mcwbyg/white_mangrove_planks_attic_roof.png b/public/textures/mcwbyg/white_mangrove_planks_attic_roof.png new file mode 100644 index 00000000..e8728c20 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_planks_attic_roof.png differ diff --git a/public/textures/mcwbyg/white_mangrove_planks_lower_roof.png b/public/textures/mcwbyg/white_mangrove_planks_lower_roof.png new file mode 100644 index 00000000..2b11705d Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_planks_lower_roof.png differ diff --git a/public/textures/mcwbyg/white_mangrove_planks_path.png b/public/textures/mcwbyg/white_mangrove_planks_path.png new file mode 100644 index 00000000..019ccc39 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_planks_path.png differ diff --git a/public/textures/mcwbyg/white_mangrove_planks_roof.png b/public/textures/mcwbyg/white_mangrove_planks_roof.png new file mode 100644 index 00000000..28e510d7 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_planks_roof.png differ diff --git a/public/textures/mcwbyg/white_mangrove_planks_steep_roof.png b/public/textures/mcwbyg/white_mangrove_planks_steep_roof.png new file mode 100644 index 00000000..e657d0ba Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_planks_steep_roof.png differ diff --git a/public/textures/mcwbyg/white_mangrove_planks_top_roof.png b/public/textures/mcwbyg/white_mangrove_planks_top_roof.png new file mode 100644 index 00000000..e0f3da28 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_planks_top_roof.png differ diff --git a/public/textures/mcwbyg/white_mangrove_planks_upper_lower_roof.png b/public/textures/mcwbyg/white_mangrove_planks_upper_lower_roof.png new file mode 100644 index 00000000..8f02d86e Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/white_mangrove_planks_upper_steep_roof.png b/public/textures/mcwbyg/white_mangrove_planks_upper_steep_roof.png new file mode 100644 index 00000000..b4b60016 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/white_mangrove_pyramid_gate.png b/public/textures/mcwbyg/white_mangrove_pyramid_gate.png new file mode 100644 index 00000000..96e5e6a1 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_pyramid_gate.png differ diff --git a/public/textures/mcwbyg/white_mangrove_rail_bridge.png b/public/textures/mcwbyg/white_mangrove_rail_bridge.png new file mode 100644 index 00000000..705fc626 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_rail_bridge.png differ diff --git a/public/textures/mcwbyg/white_mangrove_ranch_trapdoor.png b/public/textures/mcwbyg/white_mangrove_ranch_trapdoor.png new file mode 100644 index 00000000..de9184e3 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_ranch_trapdoor.png differ diff --git a/public/textures/mcwbyg/white_mangrove_roof.png b/public/textures/mcwbyg/white_mangrove_roof.png new file mode 100644 index 00000000..e8dc08b0 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_roof.png differ diff --git a/public/textures/mcwbyg/white_mangrove_rope_bridge_stair.png b/public/textures/mcwbyg/white_mangrove_rope_bridge_stair.png new file mode 100644 index 00000000..2b411a75 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_rope_bridge_stair.png differ diff --git a/public/textures/mcwbyg/white_mangrove_shutter.png b/public/textures/mcwbyg/white_mangrove_shutter.png new file mode 100644 index 00000000..bc9bb8a6 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_shutter.png differ diff --git a/public/textures/mcwbyg/white_mangrove_stable_door.png b/public/textures/mcwbyg/white_mangrove_stable_door.png new file mode 100644 index 00000000..51cc7e18 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_stable_door.png differ diff --git a/public/textures/mcwbyg/white_mangrove_stable_head_door.png b/public/textures/mcwbyg/white_mangrove_stable_head_door.png new file mode 100644 index 00000000..5fca0dbe Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_stable_head_door.png differ diff --git a/public/textures/mcwbyg/white_mangrove_steep_roof.png b/public/textures/mcwbyg/white_mangrove_steep_roof.png new file mode 100644 index 00000000..df9c51b1 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_steep_roof.png differ diff --git a/public/textures/mcwbyg/white_mangrove_stockade_fence.png b/public/textures/mcwbyg/white_mangrove_stockade_fence.png new file mode 100644 index 00000000..6494e7b1 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_stockade_fence.png differ diff --git a/public/textures/mcwbyg/white_mangrove_stool_chair.png b/public/textures/mcwbyg/white_mangrove_stool_chair.png new file mode 100644 index 00000000..e8ed2147 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_stool_chair.png differ diff --git a/public/textures/mcwbyg/white_mangrove_striped_chair.png b/public/textures/mcwbyg/white_mangrove_striped_chair.png new file mode 100644 index 00000000..e4e5c784 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_striped_chair.png differ diff --git a/public/textures/mcwbyg/white_mangrove_swamp_door.png b/public/textures/mcwbyg/white_mangrove_swamp_door.png new file mode 100644 index 00000000..8448095d Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_swamp_door.png differ diff --git a/public/textures/mcwbyg/white_mangrove_swamp_trapdoor.png b/public/textures/mcwbyg/white_mangrove_swamp_trapdoor.png new file mode 100644 index 00000000..642336c7 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_swamp_trapdoor.png differ diff --git a/public/textures/mcwbyg/white_mangrove_table.png b/public/textures/mcwbyg/white_mangrove_table.png new file mode 100644 index 00000000..36f14f24 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_table.png differ diff --git a/public/textures/mcwbyg/white_mangrove_top_roof.png b/public/textures/mcwbyg/white_mangrove_top_roof.png new file mode 100644 index 00000000..ce871a60 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_top_roof.png differ diff --git a/public/textures/mcwbyg/white_mangrove_triple_drawer.png b/public/textures/mcwbyg/white_mangrove_triple_drawer.png new file mode 100644 index 00000000..603bfb52 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_triple_drawer.png differ diff --git a/public/textures/mcwbyg/white_mangrove_tropical_door.png b/public/textures/mcwbyg/white_mangrove_tropical_door.png new file mode 100644 index 00000000..c2e79796 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_tropical_door.png differ diff --git a/public/textures/mcwbyg/white_mangrove_tropical_trapdoor.png b/public/textures/mcwbyg/white_mangrove_tropical_trapdoor.png new file mode 100644 index 00000000..672f0764 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_tropical_trapdoor.png differ diff --git a/public/textures/mcwbyg/white_mangrove_upper_lower_roof.png b/public/textures/mcwbyg/white_mangrove_upper_lower_roof.png new file mode 100644 index 00000000..6b4c5664 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/white_mangrove_upper_steep_roof.png b/public/textures/mcwbyg/white_mangrove_upper_steep_roof.png new file mode 100644 index 00000000..c10830db Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/white_mangrove_waffle_door.png b/public/textures/mcwbyg/white_mangrove_waffle_door.png new file mode 100644 index 00000000..5479f603 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_waffle_door.png differ diff --git a/public/textures/mcwbyg/white_mangrove_wardrobe.png b/public/textures/mcwbyg/white_mangrove_wardrobe.png new file mode 100644 index 00000000..e3102084 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_wardrobe.png differ diff --git a/public/textures/mcwbyg/white_mangrove_western_door.png b/public/textures/mcwbyg/white_mangrove_western_door.png new file mode 100644 index 00000000..54541a49 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_western_door.png differ diff --git a/public/textures/mcwbyg/white_mangrove_whispering_door.png b/public/textures/mcwbyg/white_mangrove_whispering_door.png new file mode 100644 index 00000000..9f9fe663 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_whispering_door.png differ diff --git a/public/textures/mcwbyg/white_mangrove_whispering_trapdoor.png b/public/textures/mcwbyg/white_mangrove_whispering_trapdoor.png new file mode 100644 index 00000000..df766997 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_whispering_trapdoor.png differ diff --git a/public/textures/mcwbyg/white_mangrove_window.png b/public/textures/mcwbyg/white_mangrove_window.png new file mode 100644 index 00000000..f3c07203 Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_window.png differ diff --git a/public/textures/mcwbyg/white_mangrove_window2.png b/public/textures/mcwbyg/white_mangrove_window2.png new file mode 100644 index 00000000..fc919dff Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_window2.png differ diff --git a/public/textures/mcwbyg/white_mangrove_wired_fence.png b/public/textures/mcwbyg/white_mangrove_wired_fence.png new file mode 100644 index 00000000..479e2e6f Binary files /dev/null and b/public/textures/mcwbyg/white_mangrove_wired_fence.png differ diff --git a/public/textures/mcwbyg/white_sakura_hedge.png b/public/textures/mcwbyg/white_sakura_hedge.png new file mode 100644 index 00000000..eb1ca4dc Binary files /dev/null and b/public/textures/mcwbyg/white_sakura_hedge.png differ diff --git a/public/textures/mcwbyg/white_sandstone_attic_roof.png b/public/textures/mcwbyg/white_sandstone_attic_roof.png new file mode 100644 index 00000000..1732db39 Binary files /dev/null and b/public/textures/mcwbyg/white_sandstone_attic_roof.png differ diff --git a/public/textures/mcwbyg/white_sandstone_bridge.png b/public/textures/mcwbyg/white_sandstone_bridge.png new file mode 100644 index 00000000..e85865d6 Binary files /dev/null and b/public/textures/mcwbyg/white_sandstone_bridge.png differ diff --git a/public/textures/mcwbyg/white_sandstone_bridge_pier.png b/public/textures/mcwbyg/white_sandstone_bridge_pier.png new file mode 100644 index 00000000..0c84ecc2 Binary files /dev/null and b/public/textures/mcwbyg/white_sandstone_bridge_pier.png differ diff --git a/public/textures/mcwbyg/white_sandstone_bridge_stair.png b/public/textures/mcwbyg/white_sandstone_bridge_stair.png new file mode 100644 index 00000000..c904685f Binary files /dev/null and b/public/textures/mcwbyg/white_sandstone_bridge_stair.png differ diff --git a/public/textures/mcwbyg/white_sandstone_grass_topped_wall.png b/public/textures/mcwbyg/white_sandstone_grass_topped_wall.png new file mode 100644 index 00000000..dd618afa Binary files /dev/null and b/public/textures/mcwbyg/white_sandstone_grass_topped_wall.png differ diff --git a/public/textures/mcwbyg/white_sandstone_lower_roof.png b/public/textures/mcwbyg/white_sandstone_lower_roof.png new file mode 100644 index 00000000..972d77c3 Binary files /dev/null and b/public/textures/mcwbyg/white_sandstone_lower_roof.png differ diff --git a/public/textures/mcwbyg/white_sandstone_pillar_wall.png b/public/textures/mcwbyg/white_sandstone_pillar_wall.png new file mode 100644 index 00000000..17b7510d Binary files /dev/null and b/public/textures/mcwbyg/white_sandstone_pillar_wall.png differ diff --git a/public/textures/mcwbyg/white_sandstone_railing_gate.png b/public/textures/mcwbyg/white_sandstone_railing_gate.png new file mode 100644 index 00000000..60cbe61c Binary files /dev/null and b/public/textures/mcwbyg/white_sandstone_railing_gate.png differ diff --git a/public/textures/mcwbyg/white_sandstone_roof.png b/public/textures/mcwbyg/white_sandstone_roof.png new file mode 100644 index 00000000..6a4dc362 Binary files /dev/null and b/public/textures/mcwbyg/white_sandstone_roof.png differ diff --git a/public/textures/mcwbyg/white_sandstone_steep_roof.png b/public/textures/mcwbyg/white_sandstone_steep_roof.png new file mode 100644 index 00000000..8dac39a1 Binary files /dev/null and b/public/textures/mcwbyg/white_sandstone_steep_roof.png differ diff --git a/public/textures/mcwbyg/white_sandstone_top_roof.png b/public/textures/mcwbyg/white_sandstone_top_roof.png new file mode 100644 index 00000000..873974b6 Binary files /dev/null and b/public/textures/mcwbyg/white_sandstone_top_roof.png differ diff --git a/public/textures/mcwbyg/white_sandstone_upper_lower_roof.png b/public/textures/mcwbyg/white_sandstone_upper_lower_roof.png new file mode 100644 index 00000000..a6341ec0 Binary files /dev/null and b/public/textures/mcwbyg/white_sandstone_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/white_sandstone_upper_steep_roof.png b/public/textures/mcwbyg/white_sandstone_upper_steep_roof.png new file mode 100644 index 00000000..ff8e6084 Binary files /dev/null and b/public/textures/mcwbyg/white_sandstone_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/willow_attic_roof.png b/public/textures/mcwbyg/willow_attic_roof.png new file mode 100644 index 00000000..abeff41b Binary files /dev/null and b/public/textures/mcwbyg/willow_attic_roof.png differ diff --git a/public/textures/mcwbyg/willow_bamboo_door.png b/public/textures/mcwbyg/willow_bamboo_door.png new file mode 100644 index 00000000..061032f8 Binary files /dev/null and b/public/textures/mcwbyg/willow_bamboo_door.png differ diff --git a/public/textures/mcwbyg/willow_bamboo_trapdoor.png b/public/textures/mcwbyg/willow_bamboo_trapdoor.png new file mode 100644 index 00000000..188f1374 Binary files /dev/null and b/public/textures/mcwbyg/willow_bamboo_trapdoor.png differ diff --git a/public/textures/mcwbyg/willow_bark_glass_door.png b/public/textures/mcwbyg/willow_bark_glass_door.png new file mode 100644 index 00000000..9c61d24a Binary files /dev/null and b/public/textures/mcwbyg/willow_bark_glass_door.png differ diff --git a/public/textures/mcwbyg/willow_bark_trapdoor.png b/public/textures/mcwbyg/willow_bark_trapdoor.png new file mode 100644 index 00000000..92db0501 Binary files /dev/null and b/public/textures/mcwbyg/willow_bark_trapdoor.png differ diff --git a/public/textures/mcwbyg/willow_barn_door.png b/public/textures/mcwbyg/willow_barn_door.png new file mode 100644 index 00000000..a1d5d057 Binary files /dev/null and b/public/textures/mcwbyg/willow_barn_door.png differ diff --git a/public/textures/mcwbyg/willow_barn_glass_door.png b/public/textures/mcwbyg/willow_barn_glass_door.png new file mode 100644 index 00000000..a25f70cf Binary files /dev/null and b/public/textures/mcwbyg/willow_barn_glass_door.png differ diff --git a/public/textures/mcwbyg/willow_barn_trapdoor.png b/public/textures/mcwbyg/willow_barn_trapdoor.png new file mode 100644 index 00000000..11f6ac15 Binary files /dev/null and b/public/textures/mcwbyg/willow_barn_trapdoor.png differ diff --git a/public/textures/mcwbyg/willow_barred_trapdoor.png b/public/textures/mcwbyg/willow_barred_trapdoor.png new file mode 100644 index 00000000..65eb1ffe Binary files /dev/null and b/public/textures/mcwbyg/willow_barred_trapdoor.png differ diff --git a/public/textures/mcwbyg/willow_barrel_trapdoor.png b/public/textures/mcwbyg/willow_barrel_trapdoor.png new file mode 100644 index 00000000..abe07b1c Binary files /dev/null and b/public/textures/mcwbyg/willow_barrel_trapdoor.png differ diff --git a/public/textures/mcwbyg/willow_beach_door.png b/public/textures/mcwbyg/willow_beach_door.png new file mode 100644 index 00000000..a1700afb Binary files /dev/null and b/public/textures/mcwbyg/willow_beach_door.png differ diff --git a/public/textures/mcwbyg/willow_beach_trapdoor.png b/public/textures/mcwbyg/willow_beach_trapdoor.png new file mode 100644 index 00000000..7d1a77f2 Binary files /dev/null and b/public/textures/mcwbyg/willow_beach_trapdoor.png differ diff --git a/public/textures/mcwbyg/willow_blinds.png b/public/textures/mcwbyg/willow_blinds.png new file mode 100644 index 00000000..3e8a035a Binary files /dev/null and b/public/textures/mcwbyg/willow_blinds.png differ diff --git a/public/textures/mcwbyg/willow_blossom_trapdoor.png b/public/textures/mcwbyg/willow_blossom_trapdoor.png new file mode 100644 index 00000000..a15b82e3 Binary files /dev/null and b/public/textures/mcwbyg/willow_blossom_trapdoor.png differ diff --git a/public/textures/mcwbyg/willow_bookshelf.png b/public/textures/mcwbyg/willow_bookshelf.png new file mode 100644 index 00000000..647d90f7 Binary files /dev/null and b/public/textures/mcwbyg/willow_bookshelf.png differ diff --git a/public/textures/mcwbyg/willow_bookshelf_cupboard.png b/public/textures/mcwbyg/willow_bookshelf_cupboard.png new file mode 100644 index 00000000..e7a5a15c Binary files /dev/null and b/public/textures/mcwbyg/willow_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/willow_bookshelf_drawer.png b/public/textures/mcwbyg/willow_bookshelf_drawer.png new file mode 100644 index 00000000..39157a72 Binary files /dev/null and b/public/textures/mcwbyg/willow_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/willow_bridge_pier.png b/public/textures/mcwbyg/willow_bridge_pier.png new file mode 100644 index 00000000..0ed93792 Binary files /dev/null and b/public/textures/mcwbyg/willow_bridge_pier.png differ diff --git a/public/textures/mcwbyg/willow_chair.png b/public/textures/mcwbyg/willow_chair.png new file mode 100644 index 00000000..88eab502 Binary files /dev/null and b/public/textures/mcwbyg/willow_chair.png differ diff --git a/public/textures/mcwbyg/willow_classic_door.png b/public/textures/mcwbyg/willow_classic_door.png new file mode 100644 index 00000000..91c647e3 Binary files /dev/null and b/public/textures/mcwbyg/willow_classic_door.png differ diff --git a/public/textures/mcwbyg/willow_classic_trapdoor.png b/public/textures/mcwbyg/willow_classic_trapdoor.png new file mode 100644 index 00000000..f97271ba Binary files /dev/null and b/public/textures/mcwbyg/willow_classic_trapdoor.png differ diff --git a/public/textures/mcwbyg/willow_coffee_table.png b/public/textures/mcwbyg/willow_coffee_table.png new file mode 100644 index 00000000..2b0394b0 Binary files /dev/null and b/public/textures/mcwbyg/willow_coffee_table.png differ diff --git a/public/textures/mcwbyg/willow_cottage_door.png b/public/textures/mcwbyg/willow_cottage_door.png new file mode 100644 index 00000000..837b1258 Binary files /dev/null and b/public/textures/mcwbyg/willow_cottage_door.png differ diff --git a/public/textures/mcwbyg/willow_cottage_trapdoor.png b/public/textures/mcwbyg/willow_cottage_trapdoor.png new file mode 100644 index 00000000..bb74a908 Binary files /dev/null and b/public/textures/mcwbyg/willow_cottage_trapdoor.png differ diff --git a/public/textures/mcwbyg/willow_counter.png b/public/textures/mcwbyg/willow_counter.png new file mode 100644 index 00000000..585dc951 Binary files /dev/null and b/public/textures/mcwbyg/willow_counter.png differ diff --git a/public/textures/mcwbyg/willow_covered_desk.png b/public/textures/mcwbyg/willow_covered_desk.png new file mode 100644 index 00000000..f1f7c278 Binary files /dev/null and b/public/textures/mcwbyg/willow_covered_desk.png differ diff --git a/public/textures/mcwbyg/willow_cupboard_counter.png b/public/textures/mcwbyg/willow_cupboard_counter.png new file mode 100644 index 00000000..53e19926 Binary files /dev/null and b/public/textures/mcwbyg/willow_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/willow_curtain_rod.png b/public/textures/mcwbyg/willow_curtain_rod.png new file mode 100644 index 00000000..0c709725 Binary files /dev/null and b/public/textures/mcwbyg/willow_curtain_rod.png differ diff --git a/public/textures/mcwbyg/willow_curved_gate.png b/public/textures/mcwbyg/willow_curved_gate.png new file mode 100644 index 00000000..eac2b69d Binary files /dev/null and b/public/textures/mcwbyg/willow_curved_gate.png differ diff --git a/public/textures/mcwbyg/willow_desk.png b/public/textures/mcwbyg/willow_desk.png new file mode 100644 index 00000000..e35a813d Binary files /dev/null and b/public/textures/mcwbyg/willow_desk.png differ diff --git a/public/textures/mcwbyg/willow_double_drawer.png b/public/textures/mcwbyg/willow_double_drawer.png new file mode 100644 index 00000000..344b378d Binary files /dev/null and b/public/textures/mcwbyg/willow_double_drawer.png differ diff --git a/public/textures/mcwbyg/willow_double_drawer_counter.png b/public/textures/mcwbyg/willow_double_drawer_counter.png new file mode 100644 index 00000000..c8162da6 Binary files /dev/null and b/public/textures/mcwbyg/willow_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/willow_double_kitchen_cabinet.png b/public/textures/mcwbyg/willow_double_kitchen_cabinet.png new file mode 100644 index 00000000..3ab6f564 Binary files /dev/null and b/public/textures/mcwbyg/willow_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/willow_double_wardrobe.png b/public/textures/mcwbyg/willow_double_wardrobe.png new file mode 100644 index 00000000..1a662c85 Binary files /dev/null and b/public/textures/mcwbyg/willow_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/willow_drawer.png b/public/textures/mcwbyg/willow_drawer.png new file mode 100644 index 00000000..56b4bb5d Binary files /dev/null and b/public/textures/mcwbyg/willow_drawer.png differ diff --git a/public/textures/mcwbyg/willow_drawer_counter.png b/public/textures/mcwbyg/willow_drawer_counter.png new file mode 100644 index 00000000..6669d479 Binary files /dev/null and b/public/textures/mcwbyg/willow_drawer_counter.png differ diff --git a/public/textures/mcwbyg/willow_end_table.png b/public/textures/mcwbyg/willow_end_table.png new file mode 100644 index 00000000..7729c589 Binary files /dev/null and b/public/textures/mcwbyg/willow_end_table.png differ diff --git a/public/textures/mcwbyg/willow_four_panel_door.png b/public/textures/mcwbyg/willow_four_panel_door.png new file mode 100644 index 00000000..bb654639 Binary files /dev/null and b/public/textures/mcwbyg/willow_four_panel_door.png differ diff --git a/public/textures/mcwbyg/willow_four_panel_trapdoor.png b/public/textures/mcwbyg/willow_four_panel_trapdoor.png new file mode 100644 index 00000000..1a7be888 Binary files /dev/null and b/public/textures/mcwbyg/willow_four_panel_trapdoor.png differ diff --git a/public/textures/mcwbyg/willow_four_window.png b/public/textures/mcwbyg/willow_four_window.png new file mode 100644 index 00000000..392d7433 Binary files /dev/null and b/public/textures/mcwbyg/willow_four_window.png differ diff --git a/public/textures/mcwbyg/willow_glass_door.png b/public/textures/mcwbyg/willow_glass_door.png new file mode 100644 index 00000000..096f71d9 Binary files /dev/null and b/public/textures/mcwbyg/willow_glass_door.png differ diff --git a/public/textures/mcwbyg/willow_glass_kitchen_cabinet.png b/public/textures/mcwbyg/willow_glass_kitchen_cabinet.png new file mode 100644 index 00000000..d76b7b98 Binary files /dev/null and b/public/textures/mcwbyg/willow_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/willow_glass_table.png b/public/textures/mcwbyg/willow_glass_table.png new file mode 100644 index 00000000..a69aa44f Binary files /dev/null and b/public/textures/mcwbyg/willow_glass_table.png differ diff --git a/public/textures/mcwbyg/willow_glass_trapdoor.png b/public/textures/mcwbyg/willow_glass_trapdoor.png new file mode 100644 index 00000000..7423a195 Binary files /dev/null and b/public/textures/mcwbyg/willow_glass_trapdoor.png differ diff --git a/public/textures/mcwbyg/willow_hedge.png b/public/textures/mcwbyg/willow_hedge.png new file mode 100644 index 00000000..26ed73bd Binary files /dev/null and b/public/textures/mcwbyg/willow_hedge.png differ diff --git a/public/textures/mcwbyg/willow_highley_gate.png b/public/textures/mcwbyg/willow_highley_gate.png new file mode 100644 index 00000000..52e159e8 Binary files /dev/null and b/public/textures/mcwbyg/willow_highley_gate.png differ diff --git a/public/textures/mcwbyg/willow_horse_fence.png b/public/textures/mcwbyg/willow_horse_fence.png new file mode 100644 index 00000000..7af2bb4b Binary files /dev/null and b/public/textures/mcwbyg/willow_horse_fence.png differ diff --git a/public/textures/mcwbyg/willow_japanese2_door.png b/public/textures/mcwbyg/willow_japanese2_door.png new file mode 100644 index 00000000..ebfa61b9 Binary files /dev/null and b/public/textures/mcwbyg/willow_japanese2_door.png differ diff --git a/public/textures/mcwbyg/willow_japanese_door.png b/public/textures/mcwbyg/willow_japanese_door.png new file mode 100644 index 00000000..a13df543 Binary files /dev/null and b/public/textures/mcwbyg/willow_japanese_door.png differ diff --git a/public/textures/mcwbyg/willow_kitchen_cabinet.png b/public/textures/mcwbyg/willow_kitchen_cabinet.png new file mode 100644 index 00000000..28958660 Binary files /dev/null and b/public/textures/mcwbyg/willow_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/willow_large_drawer.png b/public/textures/mcwbyg/willow_large_drawer.png new file mode 100644 index 00000000..ef14134d Binary files /dev/null and b/public/textures/mcwbyg/willow_large_drawer.png differ diff --git a/public/textures/mcwbyg/willow_log_bridge_middle.png b/public/textures/mcwbyg/willow_log_bridge_middle.png new file mode 100644 index 00000000..b999fc03 Binary files /dev/null and b/public/textures/mcwbyg/willow_log_bridge_middle.png differ diff --git a/public/textures/mcwbyg/willow_log_bridge_stair.png b/public/textures/mcwbyg/willow_log_bridge_stair.png new file mode 100644 index 00000000..42e8b727 Binary files /dev/null and b/public/textures/mcwbyg/willow_log_bridge_stair.png differ diff --git a/public/textures/mcwbyg/willow_log_parapet.png b/public/textures/mcwbyg/willow_log_parapet.png new file mode 100644 index 00000000..e6a7726f Binary files /dev/null and b/public/textures/mcwbyg/willow_log_parapet.png differ diff --git a/public/textures/mcwbyg/willow_louvered_shutter.png b/public/textures/mcwbyg/willow_louvered_shutter.png new file mode 100644 index 00000000..a9e5567b Binary files /dev/null and b/public/textures/mcwbyg/willow_louvered_shutter.png differ diff --git a/public/textures/mcwbyg/willow_lower_bookshelf_drawer.png b/public/textures/mcwbyg/willow_lower_bookshelf_drawer.png new file mode 100644 index 00000000..b1d3e35a Binary files /dev/null and b/public/textures/mcwbyg/willow_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/willow_lower_roof.png b/public/textures/mcwbyg/willow_lower_roof.png new file mode 100644 index 00000000..1e4eed3f Binary files /dev/null and b/public/textures/mcwbyg/willow_lower_roof.png differ diff --git a/public/textures/mcwbyg/willow_lower_triple_drawer.png b/public/textures/mcwbyg/willow_lower_triple_drawer.png new file mode 100644 index 00000000..27d009b4 Binary files /dev/null and b/public/textures/mcwbyg/willow_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/willow_modern_chair.png b/public/textures/mcwbyg/willow_modern_chair.png new file mode 100644 index 00000000..1f6fb99c Binary files /dev/null and b/public/textures/mcwbyg/willow_modern_chair.png differ diff --git a/public/textures/mcwbyg/willow_modern_desk.png b/public/textures/mcwbyg/willow_modern_desk.png new file mode 100644 index 00000000..2fc66fd3 Binary files /dev/null and b/public/textures/mcwbyg/willow_modern_desk.png differ diff --git a/public/textures/mcwbyg/willow_modern_door.png b/public/textures/mcwbyg/willow_modern_door.png new file mode 100644 index 00000000..421706eb Binary files /dev/null and b/public/textures/mcwbyg/willow_modern_door.png differ diff --git a/public/textures/mcwbyg/willow_modern_wardrobe.png b/public/textures/mcwbyg/willow_modern_wardrobe.png new file mode 100644 index 00000000..e8f0c43f Binary files /dev/null and b/public/textures/mcwbyg/willow_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/willow_mystic_door.png b/public/textures/mcwbyg/willow_mystic_door.png new file mode 100644 index 00000000..d59a73b6 Binary files /dev/null and b/public/textures/mcwbyg/willow_mystic_door.png differ diff --git a/public/textures/mcwbyg/willow_mystic_trapdoor.png b/public/textures/mcwbyg/willow_mystic_trapdoor.png new file mode 100644 index 00000000..7985c765 Binary files /dev/null and b/public/textures/mcwbyg/willow_mystic_trapdoor.png differ diff --git a/public/textures/mcwbyg/willow_nether_door.png b/public/textures/mcwbyg/willow_nether_door.png new file mode 100644 index 00000000..709a67ae Binary files /dev/null and b/public/textures/mcwbyg/willow_nether_door.png differ diff --git a/public/textures/mcwbyg/willow_pane_window.png b/public/textures/mcwbyg/willow_pane_window.png new file mode 100644 index 00000000..eca48e22 Binary files /dev/null and b/public/textures/mcwbyg/willow_pane_window.png differ diff --git a/public/textures/mcwbyg/willow_paper_door.png b/public/textures/mcwbyg/willow_paper_door.png new file mode 100644 index 00000000..c522604b Binary files /dev/null and b/public/textures/mcwbyg/willow_paper_door.png differ diff --git a/public/textures/mcwbyg/willow_paper_trapdoor.png b/public/textures/mcwbyg/willow_paper_trapdoor.png new file mode 100644 index 00000000..bcdee40f Binary files /dev/null and b/public/textures/mcwbyg/willow_paper_trapdoor.png differ diff --git a/public/textures/mcwbyg/willow_picket_fence.png b/public/textures/mcwbyg/willow_picket_fence.png new file mode 100644 index 00000000..efdf4f80 Binary files /dev/null and b/public/textures/mcwbyg/willow_picket_fence.png differ diff --git a/public/textures/mcwbyg/willow_plank_four_window.png b/public/textures/mcwbyg/willow_plank_four_window.png new file mode 100644 index 00000000..efb78758 Binary files /dev/null and b/public/textures/mcwbyg/willow_plank_four_window.png differ diff --git a/public/textures/mcwbyg/willow_plank_pane_window.png b/public/textures/mcwbyg/willow_plank_pane_window.png new file mode 100644 index 00000000..91b99a06 Binary files /dev/null and b/public/textures/mcwbyg/willow_plank_pane_window.png differ diff --git a/public/textures/mcwbyg/willow_plank_parapet.png b/public/textures/mcwbyg/willow_plank_parapet.png new file mode 100644 index 00000000..3e014e66 Binary files /dev/null and b/public/textures/mcwbyg/willow_plank_parapet.png differ diff --git a/public/textures/mcwbyg/willow_plank_window.png b/public/textures/mcwbyg/willow_plank_window.png new file mode 100644 index 00000000..dc4dbdde Binary files /dev/null and b/public/textures/mcwbyg/willow_plank_window.png differ diff --git a/public/textures/mcwbyg/willow_plank_window2.png b/public/textures/mcwbyg/willow_plank_window2.png new file mode 100644 index 00000000..e64b8e9d Binary files /dev/null and b/public/textures/mcwbyg/willow_plank_window2.png differ diff --git a/public/textures/mcwbyg/willow_planks_attic_roof.png b/public/textures/mcwbyg/willow_planks_attic_roof.png new file mode 100644 index 00000000..3602ef01 Binary files /dev/null and b/public/textures/mcwbyg/willow_planks_attic_roof.png differ diff --git a/public/textures/mcwbyg/willow_planks_lower_roof.png b/public/textures/mcwbyg/willow_planks_lower_roof.png new file mode 100644 index 00000000..2a61a6e4 Binary files /dev/null and b/public/textures/mcwbyg/willow_planks_lower_roof.png differ diff --git a/public/textures/mcwbyg/willow_planks_path.png b/public/textures/mcwbyg/willow_planks_path.png new file mode 100644 index 00000000..e157e50f Binary files /dev/null and b/public/textures/mcwbyg/willow_planks_path.png differ diff --git a/public/textures/mcwbyg/willow_planks_roof.png b/public/textures/mcwbyg/willow_planks_roof.png new file mode 100644 index 00000000..108f9b39 Binary files /dev/null and b/public/textures/mcwbyg/willow_planks_roof.png differ diff --git a/public/textures/mcwbyg/willow_planks_steep_roof.png b/public/textures/mcwbyg/willow_planks_steep_roof.png new file mode 100644 index 00000000..4cc8c7e6 Binary files /dev/null and b/public/textures/mcwbyg/willow_planks_steep_roof.png differ diff --git a/public/textures/mcwbyg/willow_planks_top_roof.png b/public/textures/mcwbyg/willow_planks_top_roof.png new file mode 100644 index 00000000..117d019f Binary files /dev/null and b/public/textures/mcwbyg/willow_planks_top_roof.png differ diff --git a/public/textures/mcwbyg/willow_planks_upper_lower_roof.png b/public/textures/mcwbyg/willow_planks_upper_lower_roof.png new file mode 100644 index 00000000..6728a069 Binary files /dev/null and b/public/textures/mcwbyg/willow_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/willow_planks_upper_steep_roof.png b/public/textures/mcwbyg/willow_planks_upper_steep_roof.png new file mode 100644 index 00000000..fd4b8c0c Binary files /dev/null and b/public/textures/mcwbyg/willow_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/willow_pyramid_gate.png b/public/textures/mcwbyg/willow_pyramid_gate.png new file mode 100644 index 00000000..959f3079 Binary files /dev/null and b/public/textures/mcwbyg/willow_pyramid_gate.png differ diff --git a/public/textures/mcwbyg/willow_rail_bridge.png b/public/textures/mcwbyg/willow_rail_bridge.png new file mode 100644 index 00000000..b93e8dd0 Binary files /dev/null and b/public/textures/mcwbyg/willow_rail_bridge.png differ diff --git a/public/textures/mcwbyg/willow_ranch_trapdoor.png b/public/textures/mcwbyg/willow_ranch_trapdoor.png new file mode 100644 index 00000000..f2c3e26c Binary files /dev/null and b/public/textures/mcwbyg/willow_ranch_trapdoor.png differ diff --git a/public/textures/mcwbyg/willow_roof.png b/public/textures/mcwbyg/willow_roof.png new file mode 100644 index 00000000..e02d1d9f Binary files /dev/null and b/public/textures/mcwbyg/willow_roof.png differ diff --git a/public/textures/mcwbyg/willow_rope_bridge_stair.png b/public/textures/mcwbyg/willow_rope_bridge_stair.png new file mode 100644 index 00000000..4fb121ca Binary files /dev/null and b/public/textures/mcwbyg/willow_rope_bridge_stair.png differ diff --git a/public/textures/mcwbyg/willow_shutter.png b/public/textures/mcwbyg/willow_shutter.png new file mode 100644 index 00000000..ec9309b3 Binary files /dev/null and b/public/textures/mcwbyg/willow_shutter.png differ diff --git a/public/textures/mcwbyg/willow_stable_door.png b/public/textures/mcwbyg/willow_stable_door.png new file mode 100644 index 00000000..5a4fabaf Binary files /dev/null and b/public/textures/mcwbyg/willow_stable_door.png differ diff --git a/public/textures/mcwbyg/willow_stable_head_door.png b/public/textures/mcwbyg/willow_stable_head_door.png new file mode 100644 index 00000000..4cca186b Binary files /dev/null and b/public/textures/mcwbyg/willow_stable_head_door.png differ diff --git a/public/textures/mcwbyg/willow_steep_roof.png b/public/textures/mcwbyg/willow_steep_roof.png new file mode 100644 index 00000000..f4b5a951 Binary files /dev/null and b/public/textures/mcwbyg/willow_steep_roof.png differ diff --git a/public/textures/mcwbyg/willow_stockade_fence.png b/public/textures/mcwbyg/willow_stockade_fence.png new file mode 100644 index 00000000..2fb8b943 Binary files /dev/null and b/public/textures/mcwbyg/willow_stockade_fence.png differ diff --git a/public/textures/mcwbyg/willow_stool_chair.png b/public/textures/mcwbyg/willow_stool_chair.png new file mode 100644 index 00000000..e3bcaf90 Binary files /dev/null and b/public/textures/mcwbyg/willow_stool_chair.png differ diff --git a/public/textures/mcwbyg/willow_striped_chair.png b/public/textures/mcwbyg/willow_striped_chair.png new file mode 100644 index 00000000..27fce58a Binary files /dev/null and b/public/textures/mcwbyg/willow_striped_chair.png differ diff --git a/public/textures/mcwbyg/willow_swamp_door.png b/public/textures/mcwbyg/willow_swamp_door.png new file mode 100644 index 00000000..cfcb6fb6 Binary files /dev/null and b/public/textures/mcwbyg/willow_swamp_door.png differ diff --git a/public/textures/mcwbyg/willow_swamp_trapdoor.png b/public/textures/mcwbyg/willow_swamp_trapdoor.png new file mode 100644 index 00000000..d699926a Binary files /dev/null and b/public/textures/mcwbyg/willow_swamp_trapdoor.png differ diff --git a/public/textures/mcwbyg/willow_table.png b/public/textures/mcwbyg/willow_table.png new file mode 100644 index 00000000..280e7cf5 Binary files /dev/null and b/public/textures/mcwbyg/willow_table.png differ diff --git a/public/textures/mcwbyg/willow_top_roof.png b/public/textures/mcwbyg/willow_top_roof.png new file mode 100644 index 00000000..821e795d Binary files /dev/null and b/public/textures/mcwbyg/willow_top_roof.png differ diff --git a/public/textures/mcwbyg/willow_triple_drawer.png b/public/textures/mcwbyg/willow_triple_drawer.png new file mode 100644 index 00000000..25f660f0 Binary files /dev/null and b/public/textures/mcwbyg/willow_triple_drawer.png differ diff --git a/public/textures/mcwbyg/willow_tropical_door.png b/public/textures/mcwbyg/willow_tropical_door.png new file mode 100644 index 00000000..25bae367 Binary files /dev/null and b/public/textures/mcwbyg/willow_tropical_door.png differ diff --git a/public/textures/mcwbyg/willow_tropical_trapdoor.png b/public/textures/mcwbyg/willow_tropical_trapdoor.png new file mode 100644 index 00000000..03b59f70 Binary files /dev/null and b/public/textures/mcwbyg/willow_tropical_trapdoor.png differ diff --git a/public/textures/mcwbyg/willow_upper_lower_roof.png b/public/textures/mcwbyg/willow_upper_lower_roof.png new file mode 100644 index 00000000..b49545f5 Binary files /dev/null and b/public/textures/mcwbyg/willow_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/willow_upper_steep_roof.png b/public/textures/mcwbyg/willow_upper_steep_roof.png new file mode 100644 index 00000000..7ba2ebbb Binary files /dev/null and b/public/textures/mcwbyg/willow_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/willow_waffle_door.png b/public/textures/mcwbyg/willow_waffle_door.png new file mode 100644 index 00000000..91ca8013 Binary files /dev/null and b/public/textures/mcwbyg/willow_waffle_door.png differ diff --git a/public/textures/mcwbyg/willow_wardrobe.png b/public/textures/mcwbyg/willow_wardrobe.png new file mode 100644 index 00000000..dbe07bc3 Binary files /dev/null and b/public/textures/mcwbyg/willow_wardrobe.png differ diff --git a/public/textures/mcwbyg/willow_western_door.png b/public/textures/mcwbyg/willow_western_door.png new file mode 100644 index 00000000..7c066ddb Binary files /dev/null and b/public/textures/mcwbyg/willow_western_door.png differ diff --git a/public/textures/mcwbyg/willow_whispering_door.png b/public/textures/mcwbyg/willow_whispering_door.png new file mode 100644 index 00000000..1b0b78fc Binary files /dev/null and b/public/textures/mcwbyg/willow_whispering_door.png differ diff --git a/public/textures/mcwbyg/willow_whispering_trapdoor.png b/public/textures/mcwbyg/willow_whispering_trapdoor.png new file mode 100644 index 00000000..ee3d990d Binary files /dev/null and b/public/textures/mcwbyg/willow_whispering_trapdoor.png differ diff --git a/public/textures/mcwbyg/willow_window.png b/public/textures/mcwbyg/willow_window.png new file mode 100644 index 00000000..f15228c0 Binary files /dev/null and b/public/textures/mcwbyg/willow_window.png differ diff --git a/public/textures/mcwbyg/willow_window2.png b/public/textures/mcwbyg/willow_window2.png new file mode 100644 index 00000000..ac0c852b Binary files /dev/null and b/public/textures/mcwbyg/willow_window2.png differ diff --git a/public/textures/mcwbyg/willow_wired_fence.png b/public/textures/mcwbyg/willow_wired_fence.png new file mode 100644 index 00000000..af6b2bd3 Binary files /dev/null and b/public/textures/mcwbyg/willow_wired_fence.png differ diff --git a/public/textures/mcwbyg/windswept_sandstone_attic_roof.png b/public/textures/mcwbyg/windswept_sandstone_attic_roof.png new file mode 100644 index 00000000..a892d43b Binary files /dev/null and b/public/textures/mcwbyg/windswept_sandstone_attic_roof.png differ diff --git a/public/textures/mcwbyg/windswept_sandstone_bridge.png b/public/textures/mcwbyg/windswept_sandstone_bridge.png new file mode 100644 index 00000000..44edb3d4 Binary files /dev/null and b/public/textures/mcwbyg/windswept_sandstone_bridge.png differ diff --git a/public/textures/mcwbyg/windswept_sandstone_bridge_pier.png b/public/textures/mcwbyg/windswept_sandstone_bridge_pier.png new file mode 100644 index 00000000..29c137bc Binary files /dev/null and b/public/textures/mcwbyg/windswept_sandstone_bridge_pier.png differ diff --git a/public/textures/mcwbyg/windswept_sandstone_bridge_stair.png b/public/textures/mcwbyg/windswept_sandstone_bridge_stair.png new file mode 100644 index 00000000..da1aa6fe Binary files /dev/null and b/public/textures/mcwbyg/windswept_sandstone_bridge_stair.png differ diff --git a/public/textures/mcwbyg/windswept_sandstone_grass_topped_wall.png b/public/textures/mcwbyg/windswept_sandstone_grass_topped_wall.png new file mode 100644 index 00000000..6c4adbc0 Binary files /dev/null and b/public/textures/mcwbyg/windswept_sandstone_grass_topped_wall.png differ diff --git a/public/textures/mcwbyg/windswept_sandstone_lower_roof.png b/public/textures/mcwbyg/windswept_sandstone_lower_roof.png new file mode 100644 index 00000000..c0dd2079 Binary files /dev/null and b/public/textures/mcwbyg/windswept_sandstone_lower_roof.png differ diff --git a/public/textures/mcwbyg/windswept_sandstone_pillar_wall.png b/public/textures/mcwbyg/windswept_sandstone_pillar_wall.png new file mode 100644 index 00000000..11024739 Binary files /dev/null and b/public/textures/mcwbyg/windswept_sandstone_pillar_wall.png differ diff --git a/public/textures/mcwbyg/windswept_sandstone_railing_gate.png b/public/textures/mcwbyg/windswept_sandstone_railing_gate.png new file mode 100644 index 00000000..60783a17 Binary files /dev/null and b/public/textures/mcwbyg/windswept_sandstone_railing_gate.png differ diff --git a/public/textures/mcwbyg/windswept_sandstone_roof.png b/public/textures/mcwbyg/windswept_sandstone_roof.png new file mode 100644 index 00000000..9f34b1e7 Binary files /dev/null and b/public/textures/mcwbyg/windswept_sandstone_roof.png differ diff --git a/public/textures/mcwbyg/windswept_sandstone_steep_roof.png b/public/textures/mcwbyg/windswept_sandstone_steep_roof.png new file mode 100644 index 00000000..ad701eb6 Binary files /dev/null and b/public/textures/mcwbyg/windswept_sandstone_steep_roof.png differ diff --git a/public/textures/mcwbyg/windswept_sandstone_top_roof.png b/public/textures/mcwbyg/windswept_sandstone_top_roof.png new file mode 100644 index 00000000..a8e8bf06 Binary files /dev/null and b/public/textures/mcwbyg/windswept_sandstone_top_roof.png differ diff --git a/public/textures/mcwbyg/windswept_sandstone_upper_lower_roof.png b/public/textures/mcwbyg/windswept_sandstone_upper_lower_roof.png new file mode 100644 index 00000000..15fc351f Binary files /dev/null and b/public/textures/mcwbyg/windswept_sandstone_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/windswept_sandstone_upper_steep_roof.png b/public/textures/mcwbyg/windswept_sandstone_upper_steep_roof.png new file mode 100644 index 00000000..c1335f82 Binary files /dev/null and b/public/textures/mcwbyg/windswept_sandstone_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/witch_hazel_attic_roof.png b/public/textures/mcwbyg/witch_hazel_attic_roof.png new file mode 100644 index 00000000..c6959162 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_attic_roof.png differ diff --git a/public/textures/mcwbyg/witch_hazel_bamboo_door.png b/public/textures/mcwbyg/witch_hazel_bamboo_door.png new file mode 100644 index 00000000..986db2ff Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_bamboo_door.png differ diff --git a/public/textures/mcwbyg/witch_hazel_bamboo_trapdoor.png b/public/textures/mcwbyg/witch_hazel_bamboo_trapdoor.png new file mode 100644 index 00000000..e55d90f8 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_bamboo_trapdoor.png differ diff --git a/public/textures/mcwbyg/witch_hazel_bark_glass_door.png b/public/textures/mcwbyg/witch_hazel_bark_glass_door.png new file mode 100644 index 00000000..0c84ce40 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_bark_glass_door.png differ diff --git a/public/textures/mcwbyg/witch_hazel_bark_trapdoor.png b/public/textures/mcwbyg/witch_hazel_bark_trapdoor.png new file mode 100644 index 00000000..9b326d75 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_bark_trapdoor.png differ diff --git a/public/textures/mcwbyg/witch_hazel_barn_door.png b/public/textures/mcwbyg/witch_hazel_barn_door.png new file mode 100644 index 00000000..3c9d6bb5 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_barn_door.png differ diff --git a/public/textures/mcwbyg/witch_hazel_barn_glass_door.png b/public/textures/mcwbyg/witch_hazel_barn_glass_door.png new file mode 100644 index 00000000..30ff646b Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_barn_glass_door.png differ diff --git a/public/textures/mcwbyg/witch_hazel_barn_trapdoor.png b/public/textures/mcwbyg/witch_hazel_barn_trapdoor.png new file mode 100644 index 00000000..f8fc1ecc Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_barn_trapdoor.png differ diff --git a/public/textures/mcwbyg/witch_hazel_barred_trapdoor.png b/public/textures/mcwbyg/witch_hazel_barred_trapdoor.png new file mode 100644 index 00000000..fb5ebbc7 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_barred_trapdoor.png differ diff --git a/public/textures/mcwbyg/witch_hazel_barrel_trapdoor.png b/public/textures/mcwbyg/witch_hazel_barrel_trapdoor.png new file mode 100644 index 00000000..82d22217 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_barrel_trapdoor.png differ diff --git a/public/textures/mcwbyg/witch_hazel_beach_door.png b/public/textures/mcwbyg/witch_hazel_beach_door.png new file mode 100644 index 00000000..9b22d182 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_beach_door.png differ diff --git a/public/textures/mcwbyg/witch_hazel_beach_trapdoor.png b/public/textures/mcwbyg/witch_hazel_beach_trapdoor.png new file mode 100644 index 00000000..1e18dd22 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_beach_trapdoor.png differ diff --git a/public/textures/mcwbyg/witch_hazel_blinds.png b/public/textures/mcwbyg/witch_hazel_blinds.png new file mode 100644 index 00000000..da88bc5d Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_blinds.png differ diff --git a/public/textures/mcwbyg/witch_hazel_blossom_trapdoor.png b/public/textures/mcwbyg/witch_hazel_blossom_trapdoor.png new file mode 100644 index 00000000..2768a80a Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_blossom_trapdoor.png differ diff --git a/public/textures/mcwbyg/witch_hazel_bookshelf.png b/public/textures/mcwbyg/witch_hazel_bookshelf.png new file mode 100644 index 00000000..73a5267c Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_bookshelf.png differ diff --git a/public/textures/mcwbyg/witch_hazel_bookshelf_cupboard.png b/public/textures/mcwbyg/witch_hazel_bookshelf_cupboard.png new file mode 100644 index 00000000..13ed5a2b Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/witch_hazel_bookshelf_drawer.png b/public/textures/mcwbyg/witch_hazel_bookshelf_drawer.png new file mode 100644 index 00000000..a96fb3c2 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/witch_hazel_bridge_pier.png b/public/textures/mcwbyg/witch_hazel_bridge_pier.png new file mode 100644 index 00000000..db1eb0b7 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_bridge_pier.png differ diff --git a/public/textures/mcwbyg/witch_hazel_chair.png b/public/textures/mcwbyg/witch_hazel_chair.png new file mode 100644 index 00000000..bb4bcb62 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_chair.png differ diff --git a/public/textures/mcwbyg/witch_hazel_classic_door.png b/public/textures/mcwbyg/witch_hazel_classic_door.png new file mode 100644 index 00000000..4d7c9053 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_classic_door.png differ diff --git a/public/textures/mcwbyg/witch_hazel_classic_trapdoor.png b/public/textures/mcwbyg/witch_hazel_classic_trapdoor.png new file mode 100644 index 00000000..2fdc7852 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_classic_trapdoor.png differ diff --git a/public/textures/mcwbyg/witch_hazel_coffee_table.png b/public/textures/mcwbyg/witch_hazel_coffee_table.png new file mode 100644 index 00000000..69e4d6bc Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_coffee_table.png differ diff --git a/public/textures/mcwbyg/witch_hazel_cottage_door.png b/public/textures/mcwbyg/witch_hazel_cottage_door.png new file mode 100644 index 00000000..fe524d4b Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_cottage_door.png differ diff --git a/public/textures/mcwbyg/witch_hazel_cottage_trapdoor.png b/public/textures/mcwbyg/witch_hazel_cottage_trapdoor.png new file mode 100644 index 00000000..f1ab0d4e Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_cottage_trapdoor.png differ diff --git a/public/textures/mcwbyg/witch_hazel_counter.png b/public/textures/mcwbyg/witch_hazel_counter.png new file mode 100644 index 00000000..732cfcf2 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_counter.png differ diff --git a/public/textures/mcwbyg/witch_hazel_covered_desk.png b/public/textures/mcwbyg/witch_hazel_covered_desk.png new file mode 100644 index 00000000..c685a647 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_covered_desk.png differ diff --git a/public/textures/mcwbyg/witch_hazel_cupboard_counter.png b/public/textures/mcwbyg/witch_hazel_cupboard_counter.png new file mode 100644 index 00000000..180e344b Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/witch_hazel_curtain_rod.png b/public/textures/mcwbyg/witch_hazel_curtain_rod.png new file mode 100644 index 00000000..6c777402 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_curtain_rod.png differ diff --git a/public/textures/mcwbyg/witch_hazel_curved_gate.png b/public/textures/mcwbyg/witch_hazel_curved_gate.png new file mode 100644 index 00000000..152ab6d9 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_curved_gate.png differ diff --git a/public/textures/mcwbyg/witch_hazel_desk.png b/public/textures/mcwbyg/witch_hazel_desk.png new file mode 100644 index 00000000..995f74b8 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_desk.png differ diff --git a/public/textures/mcwbyg/witch_hazel_double_drawer.png b/public/textures/mcwbyg/witch_hazel_double_drawer.png new file mode 100644 index 00000000..b8be1a7f Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_double_drawer.png differ diff --git a/public/textures/mcwbyg/witch_hazel_double_drawer_counter.png b/public/textures/mcwbyg/witch_hazel_double_drawer_counter.png new file mode 100644 index 00000000..9d15decc Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/witch_hazel_double_kitchen_cabinet.png b/public/textures/mcwbyg/witch_hazel_double_kitchen_cabinet.png new file mode 100644 index 00000000..52257a85 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/witch_hazel_double_wardrobe.png b/public/textures/mcwbyg/witch_hazel_double_wardrobe.png new file mode 100644 index 00000000..218100d9 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/witch_hazel_drawer.png b/public/textures/mcwbyg/witch_hazel_drawer.png new file mode 100644 index 00000000..944395d3 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_drawer.png differ diff --git a/public/textures/mcwbyg/witch_hazel_drawer_counter.png b/public/textures/mcwbyg/witch_hazel_drawer_counter.png new file mode 100644 index 00000000..ff37bc94 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_drawer_counter.png differ diff --git a/public/textures/mcwbyg/witch_hazel_end_table.png b/public/textures/mcwbyg/witch_hazel_end_table.png new file mode 100644 index 00000000..a0ea3b7a Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_end_table.png differ diff --git a/public/textures/mcwbyg/witch_hazel_four_panel_door.png b/public/textures/mcwbyg/witch_hazel_four_panel_door.png new file mode 100644 index 00000000..74412237 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_four_panel_door.png differ diff --git a/public/textures/mcwbyg/witch_hazel_four_panel_trapdoor.png b/public/textures/mcwbyg/witch_hazel_four_panel_trapdoor.png new file mode 100644 index 00000000..23ad79e7 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_four_panel_trapdoor.png differ diff --git a/public/textures/mcwbyg/witch_hazel_four_window.png b/public/textures/mcwbyg/witch_hazel_four_window.png new file mode 100644 index 00000000..0b31467f Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_four_window.png differ diff --git a/public/textures/mcwbyg/witch_hazel_glass_door.png b/public/textures/mcwbyg/witch_hazel_glass_door.png new file mode 100644 index 00000000..04fe887b Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_glass_door.png differ diff --git a/public/textures/mcwbyg/witch_hazel_glass_kitchen_cabinet.png b/public/textures/mcwbyg/witch_hazel_glass_kitchen_cabinet.png new file mode 100644 index 00000000..a716a961 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/witch_hazel_glass_table.png b/public/textures/mcwbyg/witch_hazel_glass_table.png new file mode 100644 index 00000000..9d9bfb94 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_glass_table.png differ diff --git a/public/textures/mcwbyg/witch_hazel_glass_trapdoor.png b/public/textures/mcwbyg/witch_hazel_glass_trapdoor.png new file mode 100644 index 00000000..1bbf363c Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_glass_trapdoor.png differ diff --git a/public/textures/mcwbyg/witch_hazel_hedge.png b/public/textures/mcwbyg/witch_hazel_hedge.png new file mode 100644 index 00000000..96942995 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_hedge.png differ diff --git a/public/textures/mcwbyg/witch_hazel_highley_gate.png b/public/textures/mcwbyg/witch_hazel_highley_gate.png new file mode 100644 index 00000000..4e7c179b Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_highley_gate.png differ diff --git a/public/textures/mcwbyg/witch_hazel_horse_fence.png b/public/textures/mcwbyg/witch_hazel_horse_fence.png new file mode 100644 index 00000000..a035ec49 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_horse_fence.png differ diff --git a/public/textures/mcwbyg/witch_hazel_japanese2_door.png b/public/textures/mcwbyg/witch_hazel_japanese2_door.png new file mode 100644 index 00000000..a25d2eb4 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_japanese2_door.png differ diff --git a/public/textures/mcwbyg/witch_hazel_japanese_door.png b/public/textures/mcwbyg/witch_hazel_japanese_door.png new file mode 100644 index 00000000..38f0839a Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_japanese_door.png differ diff --git a/public/textures/mcwbyg/witch_hazel_kitchen_cabinet.png b/public/textures/mcwbyg/witch_hazel_kitchen_cabinet.png new file mode 100644 index 00000000..32f42238 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/witch_hazel_large_drawer.png b/public/textures/mcwbyg/witch_hazel_large_drawer.png new file mode 100644 index 00000000..07a05e0a Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_large_drawer.png differ diff --git a/public/textures/mcwbyg/witch_hazel_log_bridge_middle.png b/public/textures/mcwbyg/witch_hazel_log_bridge_middle.png new file mode 100644 index 00000000..f46f9433 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_log_bridge_middle.png differ diff --git a/public/textures/mcwbyg/witch_hazel_log_bridge_stair.png b/public/textures/mcwbyg/witch_hazel_log_bridge_stair.png new file mode 100644 index 00000000..cd83d34a Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_log_bridge_stair.png differ diff --git a/public/textures/mcwbyg/witch_hazel_log_parapet.png b/public/textures/mcwbyg/witch_hazel_log_parapet.png new file mode 100644 index 00000000..2654440f Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_log_parapet.png differ diff --git a/public/textures/mcwbyg/witch_hazel_louvered_shutter.png b/public/textures/mcwbyg/witch_hazel_louvered_shutter.png new file mode 100644 index 00000000..387daa89 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_louvered_shutter.png differ diff --git a/public/textures/mcwbyg/witch_hazel_lower_bookshelf_drawer.png b/public/textures/mcwbyg/witch_hazel_lower_bookshelf_drawer.png new file mode 100644 index 00000000..952bf83d Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/witch_hazel_lower_roof.png b/public/textures/mcwbyg/witch_hazel_lower_roof.png new file mode 100644 index 00000000..558f66fe Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_lower_roof.png differ diff --git a/public/textures/mcwbyg/witch_hazel_lower_triple_drawer.png b/public/textures/mcwbyg/witch_hazel_lower_triple_drawer.png new file mode 100644 index 00000000..8c047467 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/witch_hazel_modern_chair.png b/public/textures/mcwbyg/witch_hazel_modern_chair.png new file mode 100644 index 00000000..a8eb66e7 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_modern_chair.png differ diff --git a/public/textures/mcwbyg/witch_hazel_modern_desk.png b/public/textures/mcwbyg/witch_hazel_modern_desk.png new file mode 100644 index 00000000..196807fc Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_modern_desk.png differ diff --git a/public/textures/mcwbyg/witch_hazel_modern_door.png b/public/textures/mcwbyg/witch_hazel_modern_door.png new file mode 100644 index 00000000..6741cfe6 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_modern_door.png differ diff --git a/public/textures/mcwbyg/witch_hazel_modern_wardrobe.png b/public/textures/mcwbyg/witch_hazel_modern_wardrobe.png new file mode 100644 index 00000000..b5875893 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/witch_hazel_mystic_door.png b/public/textures/mcwbyg/witch_hazel_mystic_door.png new file mode 100644 index 00000000..bdb11cd7 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_mystic_door.png differ diff --git a/public/textures/mcwbyg/witch_hazel_mystic_trapdoor.png b/public/textures/mcwbyg/witch_hazel_mystic_trapdoor.png new file mode 100644 index 00000000..4015ab35 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_mystic_trapdoor.png differ diff --git a/public/textures/mcwbyg/witch_hazel_nether_door.png b/public/textures/mcwbyg/witch_hazel_nether_door.png new file mode 100644 index 00000000..ea679a23 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_nether_door.png differ diff --git a/public/textures/mcwbyg/witch_hazel_pane_window.png b/public/textures/mcwbyg/witch_hazel_pane_window.png new file mode 100644 index 00000000..b05d59b9 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_pane_window.png differ diff --git a/public/textures/mcwbyg/witch_hazel_paper_door.png b/public/textures/mcwbyg/witch_hazel_paper_door.png new file mode 100644 index 00000000..90343208 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_paper_door.png differ diff --git a/public/textures/mcwbyg/witch_hazel_paper_trapdoor.png b/public/textures/mcwbyg/witch_hazel_paper_trapdoor.png new file mode 100644 index 00000000..1c355f72 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_paper_trapdoor.png differ diff --git a/public/textures/mcwbyg/witch_hazel_picket_fence.png b/public/textures/mcwbyg/witch_hazel_picket_fence.png new file mode 100644 index 00000000..3388550b Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_picket_fence.png differ diff --git a/public/textures/mcwbyg/witch_hazel_plank_four_window.png b/public/textures/mcwbyg/witch_hazel_plank_four_window.png new file mode 100644 index 00000000..1aab70a4 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_plank_four_window.png differ diff --git a/public/textures/mcwbyg/witch_hazel_plank_pane_window.png b/public/textures/mcwbyg/witch_hazel_plank_pane_window.png new file mode 100644 index 00000000..c9fcdee6 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_plank_pane_window.png differ diff --git a/public/textures/mcwbyg/witch_hazel_plank_parapet.png b/public/textures/mcwbyg/witch_hazel_plank_parapet.png new file mode 100644 index 00000000..55cdf0dd Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_plank_parapet.png differ diff --git a/public/textures/mcwbyg/witch_hazel_plank_window.png b/public/textures/mcwbyg/witch_hazel_plank_window.png new file mode 100644 index 00000000..3c3a40fe Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_plank_window.png differ diff --git a/public/textures/mcwbyg/witch_hazel_plank_window2.png b/public/textures/mcwbyg/witch_hazel_plank_window2.png new file mode 100644 index 00000000..92d83ffc Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_plank_window2.png differ diff --git a/public/textures/mcwbyg/witch_hazel_planks_attic_roof.png b/public/textures/mcwbyg/witch_hazel_planks_attic_roof.png new file mode 100644 index 00000000..99f5dc04 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_planks_attic_roof.png differ diff --git a/public/textures/mcwbyg/witch_hazel_planks_lower_roof.png b/public/textures/mcwbyg/witch_hazel_planks_lower_roof.png new file mode 100644 index 00000000..9586e599 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_planks_lower_roof.png differ diff --git a/public/textures/mcwbyg/witch_hazel_planks_path.png b/public/textures/mcwbyg/witch_hazel_planks_path.png new file mode 100644 index 00000000..ca84986b Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_planks_path.png differ diff --git a/public/textures/mcwbyg/witch_hazel_planks_roof.png b/public/textures/mcwbyg/witch_hazel_planks_roof.png new file mode 100644 index 00000000..ae9653af Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_planks_roof.png differ diff --git a/public/textures/mcwbyg/witch_hazel_planks_steep_roof.png b/public/textures/mcwbyg/witch_hazel_planks_steep_roof.png new file mode 100644 index 00000000..c1fb97cb Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_planks_steep_roof.png differ diff --git a/public/textures/mcwbyg/witch_hazel_planks_top_roof.png b/public/textures/mcwbyg/witch_hazel_planks_top_roof.png new file mode 100644 index 00000000..89404ee7 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_planks_top_roof.png differ diff --git a/public/textures/mcwbyg/witch_hazel_planks_upper_lower_roof.png b/public/textures/mcwbyg/witch_hazel_planks_upper_lower_roof.png new file mode 100644 index 00000000..b1900736 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/witch_hazel_planks_upper_steep_roof.png b/public/textures/mcwbyg/witch_hazel_planks_upper_steep_roof.png new file mode 100644 index 00000000..ab2cb25f Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/witch_hazel_pyramid_gate.png b/public/textures/mcwbyg/witch_hazel_pyramid_gate.png new file mode 100644 index 00000000..c568b018 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_pyramid_gate.png differ diff --git a/public/textures/mcwbyg/witch_hazel_rail_bridge.png b/public/textures/mcwbyg/witch_hazel_rail_bridge.png new file mode 100644 index 00000000..e22db12c Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_rail_bridge.png differ diff --git a/public/textures/mcwbyg/witch_hazel_ranch_trapdoor.png b/public/textures/mcwbyg/witch_hazel_ranch_trapdoor.png new file mode 100644 index 00000000..7e65b168 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_ranch_trapdoor.png differ diff --git a/public/textures/mcwbyg/witch_hazel_roof.png b/public/textures/mcwbyg/witch_hazel_roof.png new file mode 100644 index 00000000..00ead065 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_roof.png differ diff --git a/public/textures/mcwbyg/witch_hazel_rope_bridge_stair.png b/public/textures/mcwbyg/witch_hazel_rope_bridge_stair.png new file mode 100644 index 00000000..fb235161 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_rope_bridge_stair.png differ diff --git a/public/textures/mcwbyg/witch_hazel_shutter.png b/public/textures/mcwbyg/witch_hazel_shutter.png new file mode 100644 index 00000000..60ff41ae Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_shutter.png differ diff --git a/public/textures/mcwbyg/witch_hazel_stable_door.png b/public/textures/mcwbyg/witch_hazel_stable_door.png new file mode 100644 index 00000000..9f354762 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_stable_door.png differ diff --git a/public/textures/mcwbyg/witch_hazel_stable_head_door.png b/public/textures/mcwbyg/witch_hazel_stable_head_door.png new file mode 100644 index 00000000..9f5bbaf7 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_stable_head_door.png differ diff --git a/public/textures/mcwbyg/witch_hazel_steep_roof.png b/public/textures/mcwbyg/witch_hazel_steep_roof.png new file mode 100644 index 00000000..3b4431df Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_steep_roof.png differ diff --git a/public/textures/mcwbyg/witch_hazel_stockade_fence.png b/public/textures/mcwbyg/witch_hazel_stockade_fence.png new file mode 100644 index 00000000..3f0fddb9 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_stockade_fence.png differ diff --git a/public/textures/mcwbyg/witch_hazel_stool_chair.png b/public/textures/mcwbyg/witch_hazel_stool_chair.png new file mode 100644 index 00000000..2d1536b8 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_stool_chair.png differ diff --git a/public/textures/mcwbyg/witch_hazel_striped_chair.png b/public/textures/mcwbyg/witch_hazel_striped_chair.png new file mode 100644 index 00000000..7562c793 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_striped_chair.png differ diff --git a/public/textures/mcwbyg/witch_hazel_swamp_door.png b/public/textures/mcwbyg/witch_hazel_swamp_door.png new file mode 100644 index 00000000..9af332f9 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_swamp_door.png differ diff --git a/public/textures/mcwbyg/witch_hazel_swamp_trapdoor.png b/public/textures/mcwbyg/witch_hazel_swamp_trapdoor.png new file mode 100644 index 00000000..ae4741da Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_swamp_trapdoor.png differ diff --git a/public/textures/mcwbyg/witch_hazel_table.png b/public/textures/mcwbyg/witch_hazel_table.png new file mode 100644 index 00000000..06abf61f Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_table.png differ diff --git a/public/textures/mcwbyg/witch_hazel_top_roof.png b/public/textures/mcwbyg/witch_hazel_top_roof.png new file mode 100644 index 00000000..afd35aae Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_top_roof.png differ diff --git a/public/textures/mcwbyg/witch_hazel_triple_drawer.png b/public/textures/mcwbyg/witch_hazel_triple_drawer.png new file mode 100644 index 00000000..804aa1cd Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_triple_drawer.png differ diff --git a/public/textures/mcwbyg/witch_hazel_tropical_door.png b/public/textures/mcwbyg/witch_hazel_tropical_door.png new file mode 100644 index 00000000..c883bb15 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_tropical_door.png differ diff --git a/public/textures/mcwbyg/witch_hazel_tropical_trapdoor.png b/public/textures/mcwbyg/witch_hazel_tropical_trapdoor.png new file mode 100644 index 00000000..7c665fdf Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_tropical_trapdoor.png differ diff --git a/public/textures/mcwbyg/witch_hazel_upper_lower_roof.png b/public/textures/mcwbyg/witch_hazel_upper_lower_roof.png new file mode 100644 index 00000000..3b099658 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/witch_hazel_upper_steep_roof.png b/public/textures/mcwbyg/witch_hazel_upper_steep_roof.png new file mode 100644 index 00000000..f5814da3 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/witch_hazel_waffle_door.png b/public/textures/mcwbyg/witch_hazel_waffle_door.png new file mode 100644 index 00000000..69529af7 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_waffle_door.png differ diff --git a/public/textures/mcwbyg/witch_hazel_wardrobe.png b/public/textures/mcwbyg/witch_hazel_wardrobe.png new file mode 100644 index 00000000..a7f2f07e Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_wardrobe.png differ diff --git a/public/textures/mcwbyg/witch_hazel_western_door.png b/public/textures/mcwbyg/witch_hazel_western_door.png new file mode 100644 index 00000000..8b70dbdf Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_western_door.png differ diff --git a/public/textures/mcwbyg/witch_hazel_whispering_door.png b/public/textures/mcwbyg/witch_hazel_whispering_door.png new file mode 100644 index 00000000..ad035486 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_whispering_door.png differ diff --git a/public/textures/mcwbyg/witch_hazel_whispering_trapdoor.png b/public/textures/mcwbyg/witch_hazel_whispering_trapdoor.png new file mode 100644 index 00000000..99d47b46 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_whispering_trapdoor.png differ diff --git a/public/textures/mcwbyg/witch_hazel_window.png b/public/textures/mcwbyg/witch_hazel_window.png new file mode 100644 index 00000000..2a863d46 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_window.png differ diff --git a/public/textures/mcwbyg/witch_hazel_window2.png b/public/textures/mcwbyg/witch_hazel_window2.png new file mode 100644 index 00000000..84760f61 Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_window2.png differ diff --git a/public/textures/mcwbyg/witch_hazel_wired_fence.png b/public/textures/mcwbyg/witch_hazel_wired_fence.png new file mode 100644 index 00000000..a80e25ef Binary files /dev/null and b/public/textures/mcwbyg/witch_hazel_wired_fence.png differ diff --git a/public/textures/mcwbyg/yellow_birch_hedge.png b/public/textures/mcwbyg/yellow_birch_hedge.png new file mode 100644 index 00000000..7335e204 Binary files /dev/null and b/public/textures/mcwbyg/yellow_birch_hedge.png differ diff --git a/public/textures/mcwbyg/yellow_sakura_hedge.png b/public/textures/mcwbyg/yellow_sakura_hedge.png new file mode 100644 index 00000000..1fd4de71 Binary files /dev/null and b/public/textures/mcwbyg/yellow_sakura_hedge.png differ diff --git a/public/textures/mcwbyg/yellow_spruce_hedge.png b/public/textures/mcwbyg/yellow_spruce_hedge.png new file mode 100644 index 00000000..05a9ffb3 Binary files /dev/null and b/public/textures/mcwbyg/yellow_spruce_hedge.png differ diff --git a/public/textures/mcwbyg/zelkova_attic_roof.png b/public/textures/mcwbyg/zelkova_attic_roof.png new file mode 100644 index 00000000..c4c9e342 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_attic_roof.png differ diff --git a/public/textures/mcwbyg/zelkova_bamboo_door.png b/public/textures/mcwbyg/zelkova_bamboo_door.png new file mode 100644 index 00000000..f9388998 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_bamboo_door.png differ diff --git a/public/textures/mcwbyg/zelkova_bamboo_trapdoor.png b/public/textures/mcwbyg/zelkova_bamboo_trapdoor.png new file mode 100644 index 00000000..4fbd8a56 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_bamboo_trapdoor.png differ diff --git a/public/textures/mcwbyg/zelkova_bark_glass_door.png b/public/textures/mcwbyg/zelkova_bark_glass_door.png new file mode 100644 index 00000000..c3c90e5f Binary files /dev/null and b/public/textures/mcwbyg/zelkova_bark_glass_door.png differ diff --git a/public/textures/mcwbyg/zelkova_bark_trapdoor.png b/public/textures/mcwbyg/zelkova_bark_trapdoor.png new file mode 100644 index 00000000..29a98a71 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_bark_trapdoor.png differ diff --git a/public/textures/mcwbyg/zelkova_barn_door.png b/public/textures/mcwbyg/zelkova_barn_door.png new file mode 100644 index 00000000..ee063bcb Binary files /dev/null and b/public/textures/mcwbyg/zelkova_barn_door.png differ diff --git a/public/textures/mcwbyg/zelkova_barn_glass_door.png b/public/textures/mcwbyg/zelkova_barn_glass_door.png new file mode 100644 index 00000000..f527feb6 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_barn_glass_door.png differ diff --git a/public/textures/mcwbyg/zelkova_barn_trapdoor.png b/public/textures/mcwbyg/zelkova_barn_trapdoor.png new file mode 100644 index 00000000..e659bf5e Binary files /dev/null and b/public/textures/mcwbyg/zelkova_barn_trapdoor.png differ diff --git a/public/textures/mcwbyg/zelkova_barred_trapdoor.png b/public/textures/mcwbyg/zelkova_barred_trapdoor.png new file mode 100644 index 00000000..23bd2b8f Binary files /dev/null and b/public/textures/mcwbyg/zelkova_barred_trapdoor.png differ diff --git a/public/textures/mcwbyg/zelkova_barrel_trapdoor.png b/public/textures/mcwbyg/zelkova_barrel_trapdoor.png new file mode 100644 index 00000000..30e6c58c Binary files /dev/null and b/public/textures/mcwbyg/zelkova_barrel_trapdoor.png differ diff --git a/public/textures/mcwbyg/zelkova_beach_door.png b/public/textures/mcwbyg/zelkova_beach_door.png new file mode 100644 index 00000000..55ce3eb1 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_beach_door.png differ diff --git a/public/textures/mcwbyg/zelkova_beach_trapdoor.png b/public/textures/mcwbyg/zelkova_beach_trapdoor.png new file mode 100644 index 00000000..258eb293 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_beach_trapdoor.png differ diff --git a/public/textures/mcwbyg/zelkova_blinds.png b/public/textures/mcwbyg/zelkova_blinds.png new file mode 100644 index 00000000..8a497db3 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_blinds.png differ diff --git a/public/textures/mcwbyg/zelkova_blossom_trapdoor.png b/public/textures/mcwbyg/zelkova_blossom_trapdoor.png new file mode 100644 index 00000000..dc49db4e Binary files /dev/null and b/public/textures/mcwbyg/zelkova_blossom_trapdoor.png differ diff --git a/public/textures/mcwbyg/zelkova_bookshelf.png b/public/textures/mcwbyg/zelkova_bookshelf.png new file mode 100644 index 00000000..9dbb8c85 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_bookshelf.png differ diff --git a/public/textures/mcwbyg/zelkova_bookshelf_cupboard.png b/public/textures/mcwbyg/zelkova_bookshelf_cupboard.png new file mode 100644 index 00000000..c3159845 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_bookshelf_cupboard.png differ diff --git a/public/textures/mcwbyg/zelkova_bookshelf_drawer.png b/public/textures/mcwbyg/zelkova_bookshelf_drawer.png new file mode 100644 index 00000000..8d05550b Binary files /dev/null and b/public/textures/mcwbyg/zelkova_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/zelkova_bridge_pier.png b/public/textures/mcwbyg/zelkova_bridge_pier.png new file mode 100644 index 00000000..e2e11ef9 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_bridge_pier.png differ diff --git a/public/textures/mcwbyg/zelkova_chair.png b/public/textures/mcwbyg/zelkova_chair.png new file mode 100644 index 00000000..42936f2c Binary files /dev/null and b/public/textures/mcwbyg/zelkova_chair.png differ diff --git a/public/textures/mcwbyg/zelkova_classic_door.png b/public/textures/mcwbyg/zelkova_classic_door.png new file mode 100644 index 00000000..b9f31452 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_classic_door.png differ diff --git a/public/textures/mcwbyg/zelkova_classic_trapdoor.png b/public/textures/mcwbyg/zelkova_classic_trapdoor.png new file mode 100644 index 00000000..f90fbe92 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_classic_trapdoor.png differ diff --git a/public/textures/mcwbyg/zelkova_coffee_table.png b/public/textures/mcwbyg/zelkova_coffee_table.png new file mode 100644 index 00000000..1105b417 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_coffee_table.png differ diff --git a/public/textures/mcwbyg/zelkova_cottage_door.png b/public/textures/mcwbyg/zelkova_cottage_door.png new file mode 100644 index 00000000..b101a751 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_cottage_door.png differ diff --git a/public/textures/mcwbyg/zelkova_cottage_trapdoor.png b/public/textures/mcwbyg/zelkova_cottage_trapdoor.png new file mode 100644 index 00000000..649af98a Binary files /dev/null and b/public/textures/mcwbyg/zelkova_cottage_trapdoor.png differ diff --git a/public/textures/mcwbyg/zelkova_counter.png b/public/textures/mcwbyg/zelkova_counter.png new file mode 100644 index 00000000..fad3a6f4 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_counter.png differ diff --git a/public/textures/mcwbyg/zelkova_covered_desk.png b/public/textures/mcwbyg/zelkova_covered_desk.png new file mode 100644 index 00000000..b082822f Binary files /dev/null and b/public/textures/mcwbyg/zelkova_covered_desk.png differ diff --git a/public/textures/mcwbyg/zelkova_cupboard_counter.png b/public/textures/mcwbyg/zelkova_cupboard_counter.png new file mode 100644 index 00000000..ac901fec Binary files /dev/null and b/public/textures/mcwbyg/zelkova_cupboard_counter.png differ diff --git a/public/textures/mcwbyg/zelkova_curtain_rod.png b/public/textures/mcwbyg/zelkova_curtain_rod.png new file mode 100644 index 00000000..75f94ba6 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_curtain_rod.png differ diff --git a/public/textures/mcwbyg/zelkova_curved_gate.png b/public/textures/mcwbyg/zelkova_curved_gate.png new file mode 100644 index 00000000..f7b968e1 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_curved_gate.png differ diff --git a/public/textures/mcwbyg/zelkova_desk.png b/public/textures/mcwbyg/zelkova_desk.png new file mode 100644 index 00000000..abe242ce Binary files /dev/null and b/public/textures/mcwbyg/zelkova_desk.png differ diff --git a/public/textures/mcwbyg/zelkova_double_drawer.png b/public/textures/mcwbyg/zelkova_double_drawer.png new file mode 100644 index 00000000..cc131eda Binary files /dev/null and b/public/textures/mcwbyg/zelkova_double_drawer.png differ diff --git a/public/textures/mcwbyg/zelkova_double_drawer_counter.png b/public/textures/mcwbyg/zelkova_double_drawer_counter.png new file mode 100644 index 00000000..492131a9 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_double_drawer_counter.png differ diff --git a/public/textures/mcwbyg/zelkova_double_kitchen_cabinet.png b/public/textures/mcwbyg/zelkova_double_kitchen_cabinet.png new file mode 100644 index 00000000..a0c8f1ba Binary files /dev/null and b/public/textures/mcwbyg/zelkova_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/zelkova_double_wardrobe.png b/public/textures/mcwbyg/zelkova_double_wardrobe.png new file mode 100644 index 00000000..7c624a14 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_double_wardrobe.png differ diff --git a/public/textures/mcwbyg/zelkova_drawer.png b/public/textures/mcwbyg/zelkova_drawer.png new file mode 100644 index 00000000..86738cb1 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_drawer.png differ diff --git a/public/textures/mcwbyg/zelkova_drawer_counter.png b/public/textures/mcwbyg/zelkova_drawer_counter.png new file mode 100644 index 00000000..95cb08ae Binary files /dev/null and b/public/textures/mcwbyg/zelkova_drawer_counter.png differ diff --git a/public/textures/mcwbyg/zelkova_end_table.png b/public/textures/mcwbyg/zelkova_end_table.png new file mode 100644 index 00000000..4e45ce4c Binary files /dev/null and b/public/textures/mcwbyg/zelkova_end_table.png differ diff --git a/public/textures/mcwbyg/zelkova_four_panel_door.png b/public/textures/mcwbyg/zelkova_four_panel_door.png new file mode 100644 index 00000000..a39fe263 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_four_panel_door.png differ diff --git a/public/textures/mcwbyg/zelkova_four_panel_trapdoor.png b/public/textures/mcwbyg/zelkova_four_panel_trapdoor.png new file mode 100644 index 00000000..c8df82fd Binary files /dev/null and b/public/textures/mcwbyg/zelkova_four_panel_trapdoor.png differ diff --git a/public/textures/mcwbyg/zelkova_four_window.png b/public/textures/mcwbyg/zelkova_four_window.png new file mode 100644 index 00000000..c2ad5f7c Binary files /dev/null and b/public/textures/mcwbyg/zelkova_four_window.png differ diff --git a/public/textures/mcwbyg/zelkova_glass_door.png b/public/textures/mcwbyg/zelkova_glass_door.png new file mode 100644 index 00000000..b137195a Binary files /dev/null and b/public/textures/mcwbyg/zelkova_glass_door.png differ diff --git a/public/textures/mcwbyg/zelkova_glass_kitchen_cabinet.png b/public/textures/mcwbyg/zelkova_glass_kitchen_cabinet.png new file mode 100644 index 00000000..f8c84cff Binary files /dev/null and b/public/textures/mcwbyg/zelkova_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/zelkova_glass_table.png b/public/textures/mcwbyg/zelkova_glass_table.png new file mode 100644 index 00000000..0c7de98e Binary files /dev/null and b/public/textures/mcwbyg/zelkova_glass_table.png differ diff --git a/public/textures/mcwbyg/zelkova_glass_trapdoor.png b/public/textures/mcwbyg/zelkova_glass_trapdoor.png new file mode 100644 index 00000000..97b34dd5 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_glass_trapdoor.png differ diff --git a/public/textures/mcwbyg/zelkova_hedge.png b/public/textures/mcwbyg/zelkova_hedge.png new file mode 100644 index 00000000..9794a10c Binary files /dev/null and b/public/textures/mcwbyg/zelkova_hedge.png differ diff --git a/public/textures/mcwbyg/zelkova_highley_gate.png b/public/textures/mcwbyg/zelkova_highley_gate.png new file mode 100644 index 00000000..847ec711 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_highley_gate.png differ diff --git a/public/textures/mcwbyg/zelkova_horse_fence.png b/public/textures/mcwbyg/zelkova_horse_fence.png new file mode 100644 index 00000000..adee83c5 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_horse_fence.png differ diff --git a/public/textures/mcwbyg/zelkova_japanese2_door.png b/public/textures/mcwbyg/zelkova_japanese2_door.png new file mode 100644 index 00000000..b172fc24 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_japanese2_door.png differ diff --git a/public/textures/mcwbyg/zelkova_japanese_door.png b/public/textures/mcwbyg/zelkova_japanese_door.png new file mode 100644 index 00000000..89b576ea Binary files /dev/null and b/public/textures/mcwbyg/zelkova_japanese_door.png differ diff --git a/public/textures/mcwbyg/zelkova_kitchen_cabinet.png b/public/textures/mcwbyg/zelkova_kitchen_cabinet.png new file mode 100644 index 00000000..ab3ec211 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_kitchen_cabinet.png differ diff --git a/public/textures/mcwbyg/zelkova_large_drawer.png b/public/textures/mcwbyg/zelkova_large_drawer.png new file mode 100644 index 00000000..dda87a90 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_large_drawer.png differ diff --git a/public/textures/mcwbyg/zelkova_log_bridge_middle.png b/public/textures/mcwbyg/zelkova_log_bridge_middle.png new file mode 100644 index 00000000..64efee87 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_log_bridge_middle.png differ diff --git a/public/textures/mcwbyg/zelkova_log_bridge_stair.png b/public/textures/mcwbyg/zelkova_log_bridge_stair.png new file mode 100644 index 00000000..471176f7 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_log_bridge_stair.png differ diff --git a/public/textures/mcwbyg/zelkova_log_parapet.png b/public/textures/mcwbyg/zelkova_log_parapet.png new file mode 100644 index 00000000..c62fd0c7 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_log_parapet.png differ diff --git a/public/textures/mcwbyg/zelkova_louvered_shutter.png b/public/textures/mcwbyg/zelkova_louvered_shutter.png new file mode 100644 index 00000000..84ede8b8 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_louvered_shutter.png differ diff --git a/public/textures/mcwbyg/zelkova_lower_bookshelf_drawer.png b/public/textures/mcwbyg/zelkova_lower_bookshelf_drawer.png new file mode 100644 index 00000000..04332f7e Binary files /dev/null and b/public/textures/mcwbyg/zelkova_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwbyg/zelkova_lower_roof.png b/public/textures/mcwbyg/zelkova_lower_roof.png new file mode 100644 index 00000000..ce22603d Binary files /dev/null and b/public/textures/mcwbyg/zelkova_lower_roof.png differ diff --git a/public/textures/mcwbyg/zelkova_lower_triple_drawer.png b/public/textures/mcwbyg/zelkova_lower_triple_drawer.png new file mode 100644 index 00000000..a7dd1528 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_lower_triple_drawer.png differ diff --git a/public/textures/mcwbyg/zelkova_modern_chair.png b/public/textures/mcwbyg/zelkova_modern_chair.png new file mode 100644 index 00000000..c6ab24f2 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_modern_chair.png differ diff --git a/public/textures/mcwbyg/zelkova_modern_desk.png b/public/textures/mcwbyg/zelkova_modern_desk.png new file mode 100644 index 00000000..87082719 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_modern_desk.png differ diff --git a/public/textures/mcwbyg/zelkova_modern_door.png b/public/textures/mcwbyg/zelkova_modern_door.png new file mode 100644 index 00000000..7afb6757 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_modern_door.png differ diff --git a/public/textures/mcwbyg/zelkova_modern_wardrobe.png b/public/textures/mcwbyg/zelkova_modern_wardrobe.png new file mode 100644 index 00000000..e6d5c9e2 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_modern_wardrobe.png differ diff --git a/public/textures/mcwbyg/zelkova_mystic_door.png b/public/textures/mcwbyg/zelkova_mystic_door.png new file mode 100644 index 00000000..0be3ff8c Binary files /dev/null and b/public/textures/mcwbyg/zelkova_mystic_door.png differ diff --git a/public/textures/mcwbyg/zelkova_mystic_trapdoor.png b/public/textures/mcwbyg/zelkova_mystic_trapdoor.png new file mode 100644 index 00000000..85c15bbe Binary files /dev/null and b/public/textures/mcwbyg/zelkova_mystic_trapdoor.png differ diff --git a/public/textures/mcwbyg/zelkova_nether_door.png b/public/textures/mcwbyg/zelkova_nether_door.png new file mode 100644 index 00000000..15965ded Binary files /dev/null and b/public/textures/mcwbyg/zelkova_nether_door.png differ diff --git a/public/textures/mcwbyg/zelkova_pane_window.png b/public/textures/mcwbyg/zelkova_pane_window.png new file mode 100644 index 00000000..13f4f719 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_pane_window.png differ diff --git a/public/textures/mcwbyg/zelkova_paper_door.png b/public/textures/mcwbyg/zelkova_paper_door.png new file mode 100644 index 00000000..a2b76349 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_paper_door.png differ diff --git a/public/textures/mcwbyg/zelkova_paper_trapdoor.png b/public/textures/mcwbyg/zelkova_paper_trapdoor.png new file mode 100644 index 00000000..88f48b6c Binary files /dev/null and b/public/textures/mcwbyg/zelkova_paper_trapdoor.png differ diff --git a/public/textures/mcwbyg/zelkova_picket_fence.png b/public/textures/mcwbyg/zelkova_picket_fence.png new file mode 100644 index 00000000..deb050fd Binary files /dev/null and b/public/textures/mcwbyg/zelkova_picket_fence.png differ diff --git a/public/textures/mcwbyg/zelkova_plank_four_window.png b/public/textures/mcwbyg/zelkova_plank_four_window.png new file mode 100644 index 00000000..37a8afa2 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_plank_four_window.png differ diff --git a/public/textures/mcwbyg/zelkova_plank_pane_window.png b/public/textures/mcwbyg/zelkova_plank_pane_window.png new file mode 100644 index 00000000..1062d642 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_plank_pane_window.png differ diff --git a/public/textures/mcwbyg/zelkova_plank_parapet.png b/public/textures/mcwbyg/zelkova_plank_parapet.png new file mode 100644 index 00000000..b1f8724c Binary files /dev/null and b/public/textures/mcwbyg/zelkova_plank_parapet.png differ diff --git a/public/textures/mcwbyg/zelkova_plank_window.png b/public/textures/mcwbyg/zelkova_plank_window.png new file mode 100644 index 00000000..d6c7016e Binary files /dev/null and b/public/textures/mcwbyg/zelkova_plank_window.png differ diff --git a/public/textures/mcwbyg/zelkova_plank_window2.png b/public/textures/mcwbyg/zelkova_plank_window2.png new file mode 100644 index 00000000..ca5f3b36 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_plank_window2.png differ diff --git a/public/textures/mcwbyg/zelkova_planks_attic_roof.png b/public/textures/mcwbyg/zelkova_planks_attic_roof.png new file mode 100644 index 00000000..5400e2ea Binary files /dev/null and b/public/textures/mcwbyg/zelkova_planks_attic_roof.png differ diff --git a/public/textures/mcwbyg/zelkova_planks_lower_roof.png b/public/textures/mcwbyg/zelkova_planks_lower_roof.png new file mode 100644 index 00000000..0506c53c Binary files /dev/null and b/public/textures/mcwbyg/zelkova_planks_lower_roof.png differ diff --git a/public/textures/mcwbyg/zelkova_planks_path.png b/public/textures/mcwbyg/zelkova_planks_path.png new file mode 100644 index 00000000..8d31c020 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_planks_path.png differ diff --git a/public/textures/mcwbyg/zelkova_planks_roof.png b/public/textures/mcwbyg/zelkova_planks_roof.png new file mode 100644 index 00000000..a5571af3 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_planks_roof.png differ diff --git a/public/textures/mcwbyg/zelkova_planks_steep_roof.png b/public/textures/mcwbyg/zelkova_planks_steep_roof.png new file mode 100644 index 00000000..37f6847e Binary files /dev/null and b/public/textures/mcwbyg/zelkova_planks_steep_roof.png differ diff --git a/public/textures/mcwbyg/zelkova_planks_top_roof.png b/public/textures/mcwbyg/zelkova_planks_top_roof.png new file mode 100644 index 00000000..18f1e621 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_planks_top_roof.png differ diff --git a/public/textures/mcwbyg/zelkova_planks_upper_lower_roof.png b/public/textures/mcwbyg/zelkova_planks_upper_lower_roof.png new file mode 100644 index 00000000..3cef1534 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/zelkova_planks_upper_steep_roof.png b/public/textures/mcwbyg/zelkova_planks_upper_steep_roof.png new file mode 100644 index 00000000..718edcc6 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/zelkova_pyramid_gate.png b/public/textures/mcwbyg/zelkova_pyramid_gate.png new file mode 100644 index 00000000..50d9ce79 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_pyramid_gate.png differ diff --git a/public/textures/mcwbyg/zelkova_rail_bridge.png b/public/textures/mcwbyg/zelkova_rail_bridge.png new file mode 100644 index 00000000..c691000d Binary files /dev/null and b/public/textures/mcwbyg/zelkova_rail_bridge.png differ diff --git a/public/textures/mcwbyg/zelkova_ranch_trapdoor.png b/public/textures/mcwbyg/zelkova_ranch_trapdoor.png new file mode 100644 index 00000000..94ace8f0 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_ranch_trapdoor.png differ diff --git a/public/textures/mcwbyg/zelkova_roof.png b/public/textures/mcwbyg/zelkova_roof.png new file mode 100644 index 00000000..96aed88d Binary files /dev/null and b/public/textures/mcwbyg/zelkova_roof.png differ diff --git a/public/textures/mcwbyg/zelkova_rope_bridge_stair.png b/public/textures/mcwbyg/zelkova_rope_bridge_stair.png new file mode 100644 index 00000000..c806ea82 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_rope_bridge_stair.png differ diff --git a/public/textures/mcwbyg/zelkova_shutter.png b/public/textures/mcwbyg/zelkova_shutter.png new file mode 100644 index 00000000..02350459 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_shutter.png differ diff --git a/public/textures/mcwbyg/zelkova_stable_door.png b/public/textures/mcwbyg/zelkova_stable_door.png new file mode 100644 index 00000000..7c44c38b Binary files /dev/null and b/public/textures/mcwbyg/zelkova_stable_door.png differ diff --git a/public/textures/mcwbyg/zelkova_stable_head_door.png b/public/textures/mcwbyg/zelkova_stable_head_door.png new file mode 100644 index 00000000..77a1c1c8 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_stable_head_door.png differ diff --git a/public/textures/mcwbyg/zelkova_steep_roof.png b/public/textures/mcwbyg/zelkova_steep_roof.png new file mode 100644 index 00000000..db4b392f Binary files /dev/null and b/public/textures/mcwbyg/zelkova_steep_roof.png differ diff --git a/public/textures/mcwbyg/zelkova_stockade_fence.png b/public/textures/mcwbyg/zelkova_stockade_fence.png new file mode 100644 index 00000000..f0b0b51d Binary files /dev/null and b/public/textures/mcwbyg/zelkova_stockade_fence.png differ diff --git a/public/textures/mcwbyg/zelkova_stool_chair.png b/public/textures/mcwbyg/zelkova_stool_chair.png new file mode 100644 index 00000000..5f069a59 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_stool_chair.png differ diff --git a/public/textures/mcwbyg/zelkova_striped_chair.png b/public/textures/mcwbyg/zelkova_striped_chair.png new file mode 100644 index 00000000..5e35276d Binary files /dev/null and b/public/textures/mcwbyg/zelkova_striped_chair.png differ diff --git a/public/textures/mcwbyg/zelkova_swamp_door.png b/public/textures/mcwbyg/zelkova_swamp_door.png new file mode 100644 index 00000000..32c6d107 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_swamp_door.png differ diff --git a/public/textures/mcwbyg/zelkova_swamp_trapdoor.png b/public/textures/mcwbyg/zelkova_swamp_trapdoor.png new file mode 100644 index 00000000..acb6612a Binary files /dev/null and b/public/textures/mcwbyg/zelkova_swamp_trapdoor.png differ diff --git a/public/textures/mcwbyg/zelkova_table.png b/public/textures/mcwbyg/zelkova_table.png new file mode 100644 index 00000000..389eab9d Binary files /dev/null and b/public/textures/mcwbyg/zelkova_table.png differ diff --git a/public/textures/mcwbyg/zelkova_top_roof.png b/public/textures/mcwbyg/zelkova_top_roof.png new file mode 100644 index 00000000..34b9bb80 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_top_roof.png differ diff --git a/public/textures/mcwbyg/zelkova_triple_drawer.png b/public/textures/mcwbyg/zelkova_triple_drawer.png new file mode 100644 index 00000000..fe6fd7da Binary files /dev/null and b/public/textures/mcwbyg/zelkova_triple_drawer.png differ diff --git a/public/textures/mcwbyg/zelkova_tropical_door.png b/public/textures/mcwbyg/zelkova_tropical_door.png new file mode 100644 index 00000000..b6ffb479 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_tropical_door.png differ diff --git a/public/textures/mcwbyg/zelkova_tropical_trapdoor.png b/public/textures/mcwbyg/zelkova_tropical_trapdoor.png new file mode 100644 index 00000000..68507d6a Binary files /dev/null and b/public/textures/mcwbyg/zelkova_tropical_trapdoor.png differ diff --git a/public/textures/mcwbyg/zelkova_upper_lower_roof.png b/public/textures/mcwbyg/zelkova_upper_lower_roof.png new file mode 100644 index 00000000..c5dc8b3a Binary files /dev/null and b/public/textures/mcwbyg/zelkova_upper_lower_roof.png differ diff --git a/public/textures/mcwbyg/zelkova_upper_steep_roof.png b/public/textures/mcwbyg/zelkova_upper_steep_roof.png new file mode 100644 index 00000000..7402c9e1 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_upper_steep_roof.png differ diff --git a/public/textures/mcwbyg/zelkova_waffle_door.png b/public/textures/mcwbyg/zelkova_waffle_door.png new file mode 100644 index 00000000..73a47685 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_waffle_door.png differ diff --git a/public/textures/mcwbyg/zelkova_wardrobe.png b/public/textures/mcwbyg/zelkova_wardrobe.png new file mode 100644 index 00000000..ad183b7a Binary files /dev/null and b/public/textures/mcwbyg/zelkova_wardrobe.png differ diff --git a/public/textures/mcwbyg/zelkova_western_door.png b/public/textures/mcwbyg/zelkova_western_door.png new file mode 100644 index 00000000..6f9c7707 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_western_door.png differ diff --git a/public/textures/mcwbyg/zelkova_whispering_door.png b/public/textures/mcwbyg/zelkova_whispering_door.png new file mode 100644 index 00000000..b2da3e86 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_whispering_door.png differ diff --git a/public/textures/mcwbyg/zelkova_whispering_trapdoor.png b/public/textures/mcwbyg/zelkova_whispering_trapdoor.png new file mode 100644 index 00000000..1e5f571c Binary files /dev/null and b/public/textures/mcwbyg/zelkova_whispering_trapdoor.png differ diff --git a/public/textures/mcwbyg/zelkova_window.png b/public/textures/mcwbyg/zelkova_window.png new file mode 100644 index 00000000..2d98d0c6 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_window.png differ diff --git a/public/textures/mcwbyg/zelkova_window2.png b/public/textures/mcwbyg/zelkova_window2.png new file mode 100644 index 00000000..e15d32b8 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_window2.png differ diff --git a/public/textures/mcwbyg/zelkova_wired_fence.png b/public/textures/mcwbyg/zelkova_wired_fence.png new file mode 100644 index 00000000..2cfa4064 Binary files /dev/null and b/public/textures/mcwbyg/zelkova_wired_fence.png differ diff --git a/public/textures/mcwdoors/acacia_bamboo_door.png b/public/textures/mcwdoors/acacia_bamboo_door.png new file mode 100644 index 00000000..c348c5cc Binary files /dev/null and b/public/textures/mcwdoors/acacia_bamboo_door.png differ diff --git a/public/textures/mcwdoors/acacia_bark_glass_door.png b/public/textures/mcwdoors/acacia_bark_glass_door.png new file mode 100644 index 00000000..49be8bf9 Binary files /dev/null and b/public/textures/mcwdoors/acacia_bark_glass_door.png differ diff --git a/public/textures/mcwdoors/acacia_barn_door.png b/public/textures/mcwdoors/acacia_barn_door.png new file mode 100644 index 00000000..c591dd7f Binary files /dev/null and b/public/textures/mcwdoors/acacia_barn_door.png differ diff --git a/public/textures/mcwdoors/acacia_barn_glass_door.png b/public/textures/mcwdoors/acacia_barn_glass_door.png new file mode 100644 index 00000000..1d0f1597 Binary files /dev/null and b/public/textures/mcwdoors/acacia_barn_glass_door.png differ diff --git a/public/textures/mcwdoors/acacia_beach_door.png b/public/textures/mcwdoors/acacia_beach_door.png new file mode 100644 index 00000000..935b36dc Binary files /dev/null and b/public/textures/mcwdoors/acacia_beach_door.png differ diff --git a/public/textures/mcwdoors/acacia_classic_door.png b/public/textures/mcwdoors/acacia_classic_door.png new file mode 100644 index 00000000..52f8f010 Binary files /dev/null and b/public/textures/mcwdoors/acacia_classic_door.png differ diff --git a/public/textures/mcwdoors/acacia_cottage_door.png b/public/textures/mcwdoors/acacia_cottage_door.png new file mode 100644 index 00000000..0b24d1b2 Binary files /dev/null and b/public/textures/mcwdoors/acacia_cottage_door.png differ diff --git a/public/textures/mcwdoors/acacia_four_panel_door.png b/public/textures/mcwdoors/acacia_four_panel_door.png new file mode 100644 index 00000000..dc615d4a Binary files /dev/null and b/public/textures/mcwdoors/acacia_four_panel_door.png differ diff --git a/public/textures/mcwdoors/acacia_glass_door.png b/public/textures/mcwdoors/acacia_glass_door.png new file mode 100644 index 00000000..f6c7001e Binary files /dev/null and b/public/textures/mcwdoors/acacia_glass_door.png differ diff --git a/public/textures/mcwdoors/acacia_japanese2_door.png b/public/textures/mcwdoors/acacia_japanese2_door.png new file mode 100644 index 00000000..56ee6951 Binary files /dev/null and b/public/textures/mcwdoors/acacia_japanese2_door.png differ diff --git a/public/textures/mcwdoors/acacia_japanese_door.png b/public/textures/mcwdoors/acacia_japanese_door.png new file mode 100644 index 00000000..8b08a973 Binary files /dev/null and b/public/textures/mcwdoors/acacia_japanese_door.png differ diff --git a/public/textures/mcwdoors/acacia_modern_door.png b/public/textures/mcwdoors/acacia_modern_door.png new file mode 100644 index 00000000..0449194b Binary files /dev/null and b/public/textures/mcwdoors/acacia_modern_door.png differ diff --git a/public/textures/mcwdoors/acacia_mystic_door.png b/public/textures/mcwdoors/acacia_mystic_door.png new file mode 100644 index 00000000..2f84428e Binary files /dev/null and b/public/textures/mcwdoors/acacia_mystic_door.png differ diff --git a/public/textures/mcwdoors/acacia_nether_door.png b/public/textures/mcwdoors/acacia_nether_door.png new file mode 100644 index 00000000..1516db9d Binary files /dev/null and b/public/textures/mcwdoors/acacia_nether_door.png differ diff --git a/public/textures/mcwdoors/acacia_paper_door.png b/public/textures/mcwdoors/acacia_paper_door.png new file mode 100644 index 00000000..c3640c34 Binary files /dev/null and b/public/textures/mcwdoors/acacia_paper_door.png differ diff --git a/public/textures/mcwdoors/acacia_stable_door.png b/public/textures/mcwdoors/acacia_stable_door.png new file mode 100644 index 00000000..8db1e9b9 Binary files /dev/null and b/public/textures/mcwdoors/acacia_stable_door.png differ diff --git a/public/textures/mcwdoors/acacia_stable_head_door.png b/public/textures/mcwdoors/acacia_stable_head_door.png new file mode 100644 index 00000000..2fa28a42 Binary files /dev/null and b/public/textures/mcwdoors/acacia_stable_head_door.png differ diff --git a/public/textures/mcwdoors/acacia_swamp_door.png b/public/textures/mcwdoors/acacia_swamp_door.png new file mode 100644 index 00000000..b514c9de Binary files /dev/null and b/public/textures/mcwdoors/acacia_swamp_door.png differ diff --git a/public/textures/mcwdoors/acacia_waffle_door.png b/public/textures/mcwdoors/acacia_waffle_door.png new file mode 100644 index 00000000..f51fd42a Binary files /dev/null and b/public/textures/mcwdoors/acacia_waffle_door.png differ diff --git a/public/textures/mcwdoors/acacia_western_door.png b/public/textures/mcwdoors/acacia_western_door.png new file mode 100644 index 00000000..80a1c6d7 Binary files /dev/null and b/public/textures/mcwdoors/acacia_western_door.png differ diff --git a/public/textures/mcwdoors/acacia_whispering_door.png b/public/textures/mcwdoors/acacia_whispering_door.png new file mode 100644 index 00000000..d7b6d56b Binary files /dev/null and b/public/textures/mcwdoors/acacia_whispering_door.png differ diff --git a/public/textures/mcwdoors/bamboo_bark_glass_door.png b/public/textures/mcwdoors/bamboo_bark_glass_door.png new file mode 100644 index 00000000..2a35f275 Binary files /dev/null and b/public/textures/mcwdoors/bamboo_bark_glass_door.png differ diff --git a/public/textures/mcwdoors/bamboo_barn_door.png b/public/textures/mcwdoors/bamboo_barn_door.png new file mode 100644 index 00000000..a2b1926b Binary files /dev/null and b/public/textures/mcwdoors/bamboo_barn_door.png differ diff --git a/public/textures/mcwdoors/bamboo_barn_glass_door.png b/public/textures/mcwdoors/bamboo_barn_glass_door.png new file mode 100644 index 00000000..2cb7f2d1 Binary files /dev/null and b/public/textures/mcwdoors/bamboo_barn_glass_door.png differ diff --git a/public/textures/mcwdoors/bamboo_beach_door.png b/public/textures/mcwdoors/bamboo_beach_door.png new file mode 100644 index 00000000..3f2c9fe3 Binary files /dev/null and b/public/textures/mcwdoors/bamboo_beach_door.png differ diff --git a/public/textures/mcwdoors/bamboo_classic_door.png b/public/textures/mcwdoors/bamboo_classic_door.png new file mode 100644 index 00000000..e37499cf Binary files /dev/null and b/public/textures/mcwdoors/bamboo_classic_door.png differ diff --git a/public/textures/mcwdoors/bamboo_cottage_door.png b/public/textures/mcwdoors/bamboo_cottage_door.png new file mode 100644 index 00000000..f31a64f0 Binary files /dev/null and b/public/textures/mcwdoors/bamboo_cottage_door.png differ diff --git a/public/textures/mcwdoors/bamboo_four_panel_door.png b/public/textures/mcwdoors/bamboo_four_panel_door.png new file mode 100644 index 00000000..9b4f41dc Binary files /dev/null and b/public/textures/mcwdoors/bamboo_four_panel_door.png differ diff --git a/public/textures/mcwdoors/bamboo_glass_door.png b/public/textures/mcwdoors/bamboo_glass_door.png new file mode 100644 index 00000000..0e6a87df Binary files /dev/null and b/public/textures/mcwdoors/bamboo_glass_door.png differ diff --git a/public/textures/mcwdoors/bamboo_japanese2_door.png b/public/textures/mcwdoors/bamboo_japanese2_door.png new file mode 100644 index 00000000..39957ca4 Binary files /dev/null and b/public/textures/mcwdoors/bamboo_japanese2_door.png differ diff --git a/public/textures/mcwdoors/bamboo_japanese_door.png b/public/textures/mcwdoors/bamboo_japanese_door.png new file mode 100644 index 00000000..3e6269e8 Binary files /dev/null and b/public/textures/mcwdoors/bamboo_japanese_door.png differ diff --git a/public/textures/mcwdoors/bamboo_modern_door.png b/public/textures/mcwdoors/bamboo_modern_door.png new file mode 100644 index 00000000..d743e30a Binary files /dev/null and b/public/textures/mcwdoors/bamboo_modern_door.png differ diff --git a/public/textures/mcwdoors/bamboo_mystic_door.png b/public/textures/mcwdoors/bamboo_mystic_door.png new file mode 100644 index 00000000..cf61eb28 Binary files /dev/null and b/public/textures/mcwdoors/bamboo_mystic_door.png differ diff --git a/public/textures/mcwdoors/bamboo_nether_door.png b/public/textures/mcwdoors/bamboo_nether_door.png new file mode 100644 index 00000000..e26b856e Binary files /dev/null and b/public/textures/mcwdoors/bamboo_nether_door.png differ diff --git a/public/textures/mcwdoors/bamboo_paper_door.png b/public/textures/mcwdoors/bamboo_paper_door.png new file mode 100644 index 00000000..4d851f09 Binary files /dev/null and b/public/textures/mcwdoors/bamboo_paper_door.png differ diff --git a/public/textures/mcwdoors/bamboo_stable_door.png b/public/textures/mcwdoors/bamboo_stable_door.png new file mode 100644 index 00000000..d261e80e Binary files /dev/null and b/public/textures/mcwdoors/bamboo_stable_door.png differ diff --git a/public/textures/mcwdoors/bamboo_stable_head_door.png b/public/textures/mcwdoors/bamboo_stable_head_door.png new file mode 100644 index 00000000..ca089720 Binary files /dev/null and b/public/textures/mcwdoors/bamboo_stable_head_door.png differ diff --git a/public/textures/mcwdoors/bamboo_swamp_door.png b/public/textures/mcwdoors/bamboo_swamp_door.png new file mode 100644 index 00000000..ea8cda01 Binary files /dev/null and b/public/textures/mcwdoors/bamboo_swamp_door.png differ diff --git a/public/textures/mcwdoors/bamboo_tropical_door.png b/public/textures/mcwdoors/bamboo_tropical_door.png new file mode 100644 index 00000000..42e5d5aa Binary files /dev/null and b/public/textures/mcwdoors/bamboo_tropical_door.png differ diff --git a/public/textures/mcwdoors/bamboo_waffle_door.png b/public/textures/mcwdoors/bamboo_waffle_door.png new file mode 100644 index 00000000..c025517b Binary files /dev/null and b/public/textures/mcwdoors/bamboo_waffle_door.png differ diff --git a/public/textures/mcwdoors/bamboo_western_door.png b/public/textures/mcwdoors/bamboo_western_door.png new file mode 100644 index 00000000..38e530ee Binary files /dev/null and b/public/textures/mcwdoors/bamboo_western_door.png differ diff --git a/public/textures/mcwdoors/bamboo_whispering_door.png b/public/textures/mcwdoors/bamboo_whispering_door.png new file mode 100644 index 00000000..aa39a94a Binary files /dev/null and b/public/textures/mcwdoors/bamboo_whispering_door.png differ diff --git a/public/textures/mcwdoors/birch_bamboo_door.png b/public/textures/mcwdoors/birch_bamboo_door.png new file mode 100644 index 00000000..450208e2 Binary files /dev/null and b/public/textures/mcwdoors/birch_bamboo_door.png differ diff --git a/public/textures/mcwdoors/birch_bark_glass_door.png b/public/textures/mcwdoors/birch_bark_glass_door.png new file mode 100644 index 00000000..d5f539bf Binary files /dev/null and b/public/textures/mcwdoors/birch_bark_glass_door.png differ diff --git a/public/textures/mcwdoors/birch_barn_door.png b/public/textures/mcwdoors/birch_barn_door.png new file mode 100644 index 00000000..261135ee Binary files /dev/null and b/public/textures/mcwdoors/birch_barn_door.png differ diff --git a/public/textures/mcwdoors/birch_barn_glass_door.png b/public/textures/mcwdoors/birch_barn_glass_door.png new file mode 100644 index 00000000..302f13d8 Binary files /dev/null and b/public/textures/mcwdoors/birch_barn_glass_door.png differ diff --git a/public/textures/mcwdoors/birch_beach_door.png b/public/textures/mcwdoors/birch_beach_door.png new file mode 100644 index 00000000..29c6b3ec Binary files /dev/null and b/public/textures/mcwdoors/birch_beach_door.png differ diff --git a/public/textures/mcwdoors/birch_classic_door.png b/public/textures/mcwdoors/birch_classic_door.png new file mode 100644 index 00000000..f648edb6 Binary files /dev/null and b/public/textures/mcwdoors/birch_classic_door.png differ diff --git a/public/textures/mcwdoors/birch_cottage_door.png b/public/textures/mcwdoors/birch_cottage_door.png new file mode 100644 index 00000000..db34e65c Binary files /dev/null and b/public/textures/mcwdoors/birch_cottage_door.png differ diff --git a/public/textures/mcwdoors/birch_four_panel_door.png b/public/textures/mcwdoors/birch_four_panel_door.png new file mode 100644 index 00000000..1c55272c Binary files /dev/null and b/public/textures/mcwdoors/birch_four_panel_door.png differ diff --git a/public/textures/mcwdoors/birch_glass_door.png b/public/textures/mcwdoors/birch_glass_door.png new file mode 100644 index 00000000..ee48171d Binary files /dev/null and b/public/textures/mcwdoors/birch_glass_door.png differ diff --git a/public/textures/mcwdoors/birch_japanese2_door.png b/public/textures/mcwdoors/birch_japanese2_door.png new file mode 100644 index 00000000..1f372c76 Binary files /dev/null and b/public/textures/mcwdoors/birch_japanese2_door.png differ diff --git a/public/textures/mcwdoors/birch_japanese_door.png b/public/textures/mcwdoors/birch_japanese_door.png new file mode 100644 index 00000000..e8d8d768 Binary files /dev/null and b/public/textures/mcwdoors/birch_japanese_door.png differ diff --git a/public/textures/mcwdoors/birch_modern_door.png b/public/textures/mcwdoors/birch_modern_door.png new file mode 100644 index 00000000..576cf649 Binary files /dev/null and b/public/textures/mcwdoors/birch_modern_door.png differ diff --git a/public/textures/mcwdoors/birch_mystic_door.png b/public/textures/mcwdoors/birch_mystic_door.png new file mode 100644 index 00000000..536d8dcf Binary files /dev/null and b/public/textures/mcwdoors/birch_mystic_door.png differ diff --git a/public/textures/mcwdoors/birch_nether_door.png b/public/textures/mcwdoors/birch_nether_door.png new file mode 100644 index 00000000..2dee6abc Binary files /dev/null and b/public/textures/mcwdoors/birch_nether_door.png differ diff --git a/public/textures/mcwdoors/birch_stable_door.png b/public/textures/mcwdoors/birch_stable_door.png new file mode 100644 index 00000000..4c7c1976 Binary files /dev/null and b/public/textures/mcwdoors/birch_stable_door.png differ diff --git a/public/textures/mcwdoors/birch_stable_head_door.png b/public/textures/mcwdoors/birch_stable_head_door.png new file mode 100644 index 00000000..56fe1cb6 Binary files /dev/null and b/public/textures/mcwdoors/birch_stable_head_door.png differ diff --git a/public/textures/mcwdoors/birch_swamp_door.png b/public/textures/mcwdoors/birch_swamp_door.png new file mode 100644 index 00000000..4d4948ca Binary files /dev/null and b/public/textures/mcwdoors/birch_swamp_door.png differ diff --git a/public/textures/mcwdoors/birch_tropical_door.png b/public/textures/mcwdoors/birch_tropical_door.png new file mode 100644 index 00000000..22a6eaa4 Binary files /dev/null and b/public/textures/mcwdoors/birch_tropical_door.png differ diff --git a/public/textures/mcwdoors/birch_waffle_door.png b/public/textures/mcwdoors/birch_waffle_door.png new file mode 100644 index 00000000..f9c1c2bc Binary files /dev/null and b/public/textures/mcwdoors/birch_waffle_door.png differ diff --git a/public/textures/mcwdoors/birch_western_door.png b/public/textures/mcwdoors/birch_western_door.png new file mode 100644 index 00000000..0423694b Binary files /dev/null and b/public/textures/mcwdoors/birch_western_door.png differ diff --git a/public/textures/mcwdoors/birch_whispering_door.png b/public/textures/mcwdoors/birch_whispering_door.png new file mode 100644 index 00000000..035538ef Binary files /dev/null and b/public/textures/mcwdoors/birch_whispering_door.png differ diff --git a/public/textures/mcwdoors/cherry_bamboo_door.png b/public/textures/mcwdoors/cherry_bamboo_door.png new file mode 100644 index 00000000..61f3f8d0 Binary files /dev/null and b/public/textures/mcwdoors/cherry_bamboo_door.png differ diff --git a/public/textures/mcwdoors/cherry_bark_glass_door.png b/public/textures/mcwdoors/cherry_bark_glass_door.png new file mode 100644 index 00000000..5165e39c Binary files /dev/null and b/public/textures/mcwdoors/cherry_bark_glass_door.png differ diff --git a/public/textures/mcwdoors/cherry_barn_door.png b/public/textures/mcwdoors/cherry_barn_door.png new file mode 100644 index 00000000..2c260227 Binary files /dev/null and b/public/textures/mcwdoors/cherry_barn_door.png differ diff --git a/public/textures/mcwdoors/cherry_barn_glass_door.png b/public/textures/mcwdoors/cherry_barn_glass_door.png new file mode 100644 index 00000000..656f6484 Binary files /dev/null and b/public/textures/mcwdoors/cherry_barn_glass_door.png differ diff --git a/public/textures/mcwdoors/cherry_beach_door.png b/public/textures/mcwdoors/cherry_beach_door.png new file mode 100644 index 00000000..e682c361 Binary files /dev/null and b/public/textures/mcwdoors/cherry_beach_door.png differ diff --git a/public/textures/mcwdoors/cherry_classic_door.png b/public/textures/mcwdoors/cherry_classic_door.png new file mode 100644 index 00000000..1d1e51d7 Binary files /dev/null and b/public/textures/mcwdoors/cherry_classic_door.png differ diff --git a/public/textures/mcwdoors/cherry_cottage_door.png b/public/textures/mcwdoors/cherry_cottage_door.png new file mode 100644 index 00000000..a9ad03a2 Binary files /dev/null and b/public/textures/mcwdoors/cherry_cottage_door.png differ diff --git a/public/textures/mcwdoors/cherry_four_panel_door.png b/public/textures/mcwdoors/cherry_four_panel_door.png new file mode 100644 index 00000000..bfd22ff1 Binary files /dev/null and b/public/textures/mcwdoors/cherry_four_panel_door.png differ diff --git a/public/textures/mcwdoors/cherry_glass_door.png b/public/textures/mcwdoors/cherry_glass_door.png new file mode 100644 index 00000000..cc31ac0d Binary files /dev/null and b/public/textures/mcwdoors/cherry_glass_door.png differ diff --git a/public/textures/mcwdoors/cherry_japanese2_door.png b/public/textures/mcwdoors/cherry_japanese2_door.png new file mode 100644 index 00000000..abb1cd94 Binary files /dev/null and b/public/textures/mcwdoors/cherry_japanese2_door.png differ diff --git a/public/textures/mcwdoors/cherry_japanese_door.png b/public/textures/mcwdoors/cherry_japanese_door.png new file mode 100644 index 00000000..8137dbfd Binary files /dev/null and b/public/textures/mcwdoors/cherry_japanese_door.png differ diff --git a/public/textures/mcwdoors/cherry_modern_door.png b/public/textures/mcwdoors/cherry_modern_door.png new file mode 100644 index 00000000..b0add7f7 Binary files /dev/null and b/public/textures/mcwdoors/cherry_modern_door.png differ diff --git a/public/textures/mcwdoors/cherry_mystic_door.png b/public/textures/mcwdoors/cherry_mystic_door.png new file mode 100644 index 00000000..12d8acfb Binary files /dev/null and b/public/textures/mcwdoors/cherry_mystic_door.png differ diff --git a/public/textures/mcwdoors/cherry_nether_door.png b/public/textures/mcwdoors/cherry_nether_door.png new file mode 100644 index 00000000..1b78a364 Binary files /dev/null and b/public/textures/mcwdoors/cherry_nether_door.png differ diff --git a/public/textures/mcwdoors/cherry_paper_door.png b/public/textures/mcwdoors/cherry_paper_door.png new file mode 100644 index 00000000..ddb17188 Binary files /dev/null and b/public/textures/mcwdoors/cherry_paper_door.png differ diff --git a/public/textures/mcwdoors/cherry_stable_door.png b/public/textures/mcwdoors/cherry_stable_door.png new file mode 100644 index 00000000..701d93a2 Binary files /dev/null and b/public/textures/mcwdoors/cherry_stable_door.png differ diff --git a/public/textures/mcwdoors/cherry_stable_head_door.png b/public/textures/mcwdoors/cherry_stable_head_door.png new file mode 100644 index 00000000..4227222a Binary files /dev/null and b/public/textures/mcwdoors/cherry_stable_head_door.png differ diff --git a/public/textures/mcwdoors/cherry_swamp_door.png b/public/textures/mcwdoors/cherry_swamp_door.png new file mode 100644 index 00000000..71d4644a Binary files /dev/null and b/public/textures/mcwdoors/cherry_swamp_door.png differ diff --git a/public/textures/mcwdoors/cherry_tropical_door.png b/public/textures/mcwdoors/cherry_tropical_door.png new file mode 100644 index 00000000..57fc65ad Binary files /dev/null and b/public/textures/mcwdoors/cherry_tropical_door.png differ diff --git a/public/textures/mcwdoors/cherry_western_door.png b/public/textures/mcwdoors/cherry_western_door.png new file mode 100644 index 00000000..6732819b Binary files /dev/null and b/public/textures/mcwdoors/cherry_western_door.png differ diff --git a/public/textures/mcwdoors/cherry_whispering_door.png b/public/textures/mcwdoors/cherry_whispering_door.png new file mode 100644 index 00000000..fcbd4d9a Binary files /dev/null and b/public/textures/mcwdoors/cherry_whispering_door.png differ diff --git a/public/textures/mcwdoors/crimson_bamboo_door.png b/public/textures/mcwdoors/crimson_bamboo_door.png new file mode 100644 index 00000000..2cf50c3a Binary files /dev/null and b/public/textures/mcwdoors/crimson_bamboo_door.png differ diff --git a/public/textures/mcwdoors/crimson_barn_door.png b/public/textures/mcwdoors/crimson_barn_door.png new file mode 100644 index 00000000..3be5ea0c Binary files /dev/null and b/public/textures/mcwdoors/crimson_barn_door.png differ diff --git a/public/textures/mcwdoors/crimson_barn_glass_door.png b/public/textures/mcwdoors/crimson_barn_glass_door.png new file mode 100644 index 00000000..079b5bcb Binary files /dev/null and b/public/textures/mcwdoors/crimson_barn_glass_door.png differ diff --git a/public/textures/mcwdoors/crimson_beach_door.png b/public/textures/mcwdoors/crimson_beach_door.png new file mode 100644 index 00000000..affa0e11 Binary files /dev/null and b/public/textures/mcwdoors/crimson_beach_door.png differ diff --git a/public/textures/mcwdoors/crimson_classic_door.png b/public/textures/mcwdoors/crimson_classic_door.png new file mode 100644 index 00000000..ba0da57a Binary files /dev/null and b/public/textures/mcwdoors/crimson_classic_door.png differ diff --git a/public/textures/mcwdoors/crimson_cottage_door.png b/public/textures/mcwdoors/crimson_cottage_door.png new file mode 100644 index 00000000..904c1877 Binary files /dev/null and b/public/textures/mcwdoors/crimson_cottage_door.png differ diff --git a/public/textures/mcwdoors/crimson_four_panel_door.png b/public/textures/mcwdoors/crimson_four_panel_door.png new file mode 100644 index 00000000..abc6b2ce Binary files /dev/null and b/public/textures/mcwdoors/crimson_four_panel_door.png differ diff --git a/public/textures/mcwdoors/crimson_glass_door.png b/public/textures/mcwdoors/crimson_glass_door.png new file mode 100644 index 00000000..51cbe79f Binary files /dev/null and b/public/textures/mcwdoors/crimson_glass_door.png differ diff --git a/public/textures/mcwdoors/crimson_japanese2_door.png b/public/textures/mcwdoors/crimson_japanese2_door.png new file mode 100644 index 00000000..6249c338 Binary files /dev/null and b/public/textures/mcwdoors/crimson_japanese2_door.png differ diff --git a/public/textures/mcwdoors/crimson_japanese_door.png b/public/textures/mcwdoors/crimson_japanese_door.png new file mode 100644 index 00000000..49ac66b9 Binary files /dev/null and b/public/textures/mcwdoors/crimson_japanese_door.png differ diff --git a/public/textures/mcwdoors/crimson_modern_door.png b/public/textures/mcwdoors/crimson_modern_door.png new file mode 100644 index 00000000..e37f967f Binary files /dev/null and b/public/textures/mcwdoors/crimson_modern_door.png differ diff --git a/public/textures/mcwdoors/crimson_mystic_door.png b/public/textures/mcwdoors/crimson_mystic_door.png new file mode 100644 index 00000000..841ccb2a Binary files /dev/null and b/public/textures/mcwdoors/crimson_mystic_door.png differ diff --git a/public/textures/mcwdoors/crimson_paper_door.png b/public/textures/mcwdoors/crimson_paper_door.png new file mode 100644 index 00000000..9deb209a Binary files /dev/null and b/public/textures/mcwdoors/crimson_paper_door.png differ diff --git a/public/textures/mcwdoors/crimson_stable_door.png b/public/textures/mcwdoors/crimson_stable_door.png new file mode 100644 index 00000000..88acc0ab Binary files /dev/null and b/public/textures/mcwdoors/crimson_stable_door.png differ diff --git a/public/textures/mcwdoors/crimson_stable_head_door.png b/public/textures/mcwdoors/crimson_stable_head_door.png new file mode 100644 index 00000000..cfa70dc1 Binary files /dev/null and b/public/textures/mcwdoors/crimson_stable_head_door.png differ diff --git a/public/textures/mcwdoors/crimson_stem_glass_door.png b/public/textures/mcwdoors/crimson_stem_glass_door.png new file mode 100644 index 00000000..d675f69a Binary files /dev/null and b/public/textures/mcwdoors/crimson_stem_glass_door.png differ diff --git a/public/textures/mcwdoors/crimson_swamp_door.png b/public/textures/mcwdoors/crimson_swamp_door.png new file mode 100644 index 00000000..e7cf6156 Binary files /dev/null and b/public/textures/mcwdoors/crimson_swamp_door.png differ diff --git a/public/textures/mcwdoors/crimson_tropical_door.png b/public/textures/mcwdoors/crimson_tropical_door.png new file mode 100644 index 00000000..43f9264d Binary files /dev/null and b/public/textures/mcwdoors/crimson_tropical_door.png differ diff --git a/public/textures/mcwdoors/crimson_waffle_door.png b/public/textures/mcwdoors/crimson_waffle_door.png new file mode 100644 index 00000000..4df4e57b Binary files /dev/null and b/public/textures/mcwdoors/crimson_waffle_door.png differ diff --git a/public/textures/mcwdoors/crimson_western_door.png b/public/textures/mcwdoors/crimson_western_door.png new file mode 100644 index 00000000..3508ac3f Binary files /dev/null and b/public/textures/mcwdoors/crimson_western_door.png differ diff --git a/public/textures/mcwdoors/crimson_whispering_door.png b/public/textures/mcwdoors/crimson_whispering_door.png new file mode 100644 index 00000000..2c2fee1e Binary files /dev/null and b/public/textures/mcwdoors/crimson_whispering_door.png differ diff --git a/public/textures/mcwdoors/dark_oak_bamboo_door.png b/public/textures/mcwdoors/dark_oak_bamboo_door.png new file mode 100644 index 00000000..6365d36f Binary files /dev/null and b/public/textures/mcwdoors/dark_oak_bamboo_door.png differ diff --git a/public/textures/mcwdoors/dark_oak_bark_glass_door.png b/public/textures/mcwdoors/dark_oak_bark_glass_door.png new file mode 100644 index 00000000..34161579 Binary files /dev/null and b/public/textures/mcwdoors/dark_oak_bark_glass_door.png differ diff --git a/public/textures/mcwdoors/dark_oak_barn_door.png b/public/textures/mcwdoors/dark_oak_barn_door.png new file mode 100644 index 00000000..5221947e Binary files /dev/null and b/public/textures/mcwdoors/dark_oak_barn_door.png differ diff --git a/public/textures/mcwdoors/dark_oak_barn_glass_door.png b/public/textures/mcwdoors/dark_oak_barn_glass_door.png new file mode 100644 index 00000000..75f66d55 Binary files /dev/null and b/public/textures/mcwdoors/dark_oak_barn_glass_door.png differ diff --git a/public/textures/mcwdoors/dark_oak_beach_door.png b/public/textures/mcwdoors/dark_oak_beach_door.png new file mode 100644 index 00000000..d46a115f Binary files /dev/null and b/public/textures/mcwdoors/dark_oak_beach_door.png differ diff --git a/public/textures/mcwdoors/dark_oak_classic_door.png b/public/textures/mcwdoors/dark_oak_classic_door.png new file mode 100644 index 00000000..affb9de5 Binary files /dev/null and b/public/textures/mcwdoors/dark_oak_classic_door.png differ diff --git a/public/textures/mcwdoors/dark_oak_cottage_door.png b/public/textures/mcwdoors/dark_oak_cottage_door.png new file mode 100644 index 00000000..739b752b Binary files /dev/null and b/public/textures/mcwdoors/dark_oak_cottage_door.png differ diff --git a/public/textures/mcwdoors/dark_oak_glass_door.png b/public/textures/mcwdoors/dark_oak_glass_door.png new file mode 100644 index 00000000..190c42ac Binary files /dev/null and b/public/textures/mcwdoors/dark_oak_glass_door.png differ diff --git a/public/textures/mcwdoors/dark_oak_japanese2_door.png b/public/textures/mcwdoors/dark_oak_japanese2_door.png new file mode 100644 index 00000000..55310d50 Binary files /dev/null and b/public/textures/mcwdoors/dark_oak_japanese2_door.png differ diff --git a/public/textures/mcwdoors/dark_oak_japanese_door.png b/public/textures/mcwdoors/dark_oak_japanese_door.png new file mode 100644 index 00000000..7a6ffed4 Binary files /dev/null and b/public/textures/mcwdoors/dark_oak_japanese_door.png differ diff --git a/public/textures/mcwdoors/dark_oak_modern_door.png b/public/textures/mcwdoors/dark_oak_modern_door.png new file mode 100644 index 00000000..3c399039 Binary files /dev/null and b/public/textures/mcwdoors/dark_oak_modern_door.png differ diff --git a/public/textures/mcwdoors/dark_oak_mystic_door.png b/public/textures/mcwdoors/dark_oak_mystic_door.png new file mode 100644 index 00000000..c4b19e0b Binary files /dev/null and b/public/textures/mcwdoors/dark_oak_mystic_door.png differ diff --git a/public/textures/mcwdoors/dark_oak_nether_door.png b/public/textures/mcwdoors/dark_oak_nether_door.png new file mode 100644 index 00000000..eafb65f7 Binary files /dev/null and b/public/textures/mcwdoors/dark_oak_nether_door.png differ diff --git a/public/textures/mcwdoors/dark_oak_paper_door.png b/public/textures/mcwdoors/dark_oak_paper_door.png new file mode 100644 index 00000000..3565e4f7 Binary files /dev/null and b/public/textures/mcwdoors/dark_oak_paper_door.png differ diff --git a/public/textures/mcwdoors/dark_oak_stable_door.png b/public/textures/mcwdoors/dark_oak_stable_door.png new file mode 100644 index 00000000..ba47b043 Binary files /dev/null and b/public/textures/mcwdoors/dark_oak_stable_door.png differ diff --git a/public/textures/mcwdoors/dark_oak_stable_head_door.png b/public/textures/mcwdoors/dark_oak_stable_head_door.png new file mode 100644 index 00000000..5f94f63b Binary files /dev/null and b/public/textures/mcwdoors/dark_oak_stable_head_door.png differ diff --git a/public/textures/mcwdoors/dark_oak_swamp_door.png b/public/textures/mcwdoors/dark_oak_swamp_door.png new file mode 100644 index 00000000..d2deaf5d Binary files /dev/null and b/public/textures/mcwdoors/dark_oak_swamp_door.png differ diff --git a/public/textures/mcwdoors/dark_oak_tropical_door.png b/public/textures/mcwdoors/dark_oak_tropical_door.png new file mode 100644 index 00000000..1c0a2fe2 Binary files /dev/null and b/public/textures/mcwdoors/dark_oak_tropical_door.png differ diff --git a/public/textures/mcwdoors/dark_oak_waffle_door.png b/public/textures/mcwdoors/dark_oak_waffle_door.png new file mode 100644 index 00000000..d5874319 Binary files /dev/null and b/public/textures/mcwdoors/dark_oak_waffle_door.png differ diff --git a/public/textures/mcwdoors/dark_oak_western_door.png b/public/textures/mcwdoors/dark_oak_western_door.png new file mode 100644 index 00000000..ecd009ee Binary files /dev/null and b/public/textures/mcwdoors/dark_oak_western_door.png differ diff --git a/public/textures/mcwdoors/dark_oak_whispering_door.png b/public/textures/mcwdoors/dark_oak_whispering_door.png new file mode 100644 index 00000000..7fde6e36 Binary files /dev/null and b/public/textures/mcwdoors/dark_oak_whispering_door.png differ diff --git a/public/textures/mcwdoors/garage_black_door.png b/public/textures/mcwdoors/garage_black_door.png new file mode 100644 index 00000000..fd389e3a Binary files /dev/null and b/public/textures/mcwdoors/garage_black_door.png differ diff --git a/public/textures/mcwdoors/garage_gray_door.png b/public/textures/mcwdoors/garage_gray_door.png new file mode 100644 index 00000000..d1d87afe Binary files /dev/null and b/public/textures/mcwdoors/garage_gray_door.png differ diff --git a/public/textures/mcwdoors/garage_silver_door.png b/public/textures/mcwdoors/garage_silver_door.png new file mode 100644 index 00000000..c0fc4746 Binary files /dev/null and b/public/textures/mcwdoors/garage_silver_door.png differ diff --git a/public/textures/mcwdoors/garage_white_door.png b/public/textures/mcwdoors/garage_white_door.png new file mode 100644 index 00000000..6f4ff1c2 Binary files /dev/null and b/public/textures/mcwdoors/garage_white_door.png differ diff --git a/public/textures/mcwdoors/iron_portcullis.png b/public/textures/mcwdoors/iron_portcullis.png new file mode 100644 index 00000000..4ede2ebc Binary files /dev/null and b/public/textures/mcwdoors/iron_portcullis.png differ diff --git a/public/textures/mcwdoors/jail_door.png b/public/textures/mcwdoors/jail_door.png new file mode 100644 index 00000000..b3faf584 Binary files /dev/null and b/public/textures/mcwdoors/jail_door.png differ diff --git a/public/textures/mcwdoors/jungle_bamboo_door.png b/public/textures/mcwdoors/jungle_bamboo_door.png new file mode 100644 index 00000000..6bad685c Binary files /dev/null and b/public/textures/mcwdoors/jungle_bamboo_door.png differ diff --git a/public/textures/mcwdoors/jungle_bark_glass_door.png b/public/textures/mcwdoors/jungle_bark_glass_door.png new file mode 100644 index 00000000..3a9b9a7d Binary files /dev/null and b/public/textures/mcwdoors/jungle_bark_glass_door.png differ diff --git a/public/textures/mcwdoors/jungle_barn_door.png b/public/textures/mcwdoors/jungle_barn_door.png new file mode 100644 index 00000000..e79fca3d Binary files /dev/null and b/public/textures/mcwdoors/jungle_barn_door.png differ diff --git a/public/textures/mcwdoors/jungle_barn_glass_door.png b/public/textures/mcwdoors/jungle_barn_glass_door.png new file mode 100644 index 00000000..12df8086 Binary files /dev/null and b/public/textures/mcwdoors/jungle_barn_glass_door.png differ diff --git a/public/textures/mcwdoors/jungle_classic_door.png b/public/textures/mcwdoors/jungle_classic_door.png new file mode 100644 index 00000000..0dad2674 Binary files /dev/null and b/public/textures/mcwdoors/jungle_classic_door.png differ diff --git a/public/textures/mcwdoors/jungle_cottage_door.png b/public/textures/mcwdoors/jungle_cottage_door.png new file mode 100644 index 00000000..0891321a Binary files /dev/null and b/public/textures/mcwdoors/jungle_cottage_door.png differ diff --git a/public/textures/mcwdoors/jungle_four_panel_door.png b/public/textures/mcwdoors/jungle_four_panel_door.png new file mode 100644 index 00000000..692ffa52 Binary files /dev/null and b/public/textures/mcwdoors/jungle_four_panel_door.png differ diff --git a/public/textures/mcwdoors/jungle_glass_door.png b/public/textures/mcwdoors/jungle_glass_door.png new file mode 100644 index 00000000..6f89c1bb Binary files /dev/null and b/public/textures/mcwdoors/jungle_glass_door.png differ diff --git a/public/textures/mcwdoors/jungle_japanese2_door.png b/public/textures/mcwdoors/jungle_japanese2_door.png new file mode 100644 index 00000000..25943990 Binary files /dev/null and b/public/textures/mcwdoors/jungle_japanese2_door.png differ diff --git a/public/textures/mcwdoors/jungle_japanese_door.png b/public/textures/mcwdoors/jungle_japanese_door.png new file mode 100644 index 00000000..3c2169c7 Binary files /dev/null and b/public/textures/mcwdoors/jungle_japanese_door.png differ diff --git a/public/textures/mcwdoors/jungle_modern_door.png b/public/textures/mcwdoors/jungle_modern_door.png new file mode 100644 index 00000000..9614f66b Binary files /dev/null and b/public/textures/mcwdoors/jungle_modern_door.png differ diff --git a/public/textures/mcwdoors/jungle_mystic_door.png b/public/textures/mcwdoors/jungle_mystic_door.png new file mode 100644 index 00000000..7a795a3d Binary files /dev/null and b/public/textures/mcwdoors/jungle_mystic_door.png differ diff --git a/public/textures/mcwdoors/jungle_nether_door.png b/public/textures/mcwdoors/jungle_nether_door.png new file mode 100644 index 00000000..a89669d1 Binary files /dev/null and b/public/textures/mcwdoors/jungle_nether_door.png differ diff --git a/public/textures/mcwdoors/jungle_paper_door.png b/public/textures/mcwdoors/jungle_paper_door.png new file mode 100644 index 00000000..5bbce89a Binary files /dev/null and b/public/textures/mcwdoors/jungle_paper_door.png differ diff --git a/public/textures/mcwdoors/jungle_stable_door.png b/public/textures/mcwdoors/jungle_stable_door.png new file mode 100644 index 00000000..a96758c0 Binary files /dev/null and b/public/textures/mcwdoors/jungle_stable_door.png differ diff --git a/public/textures/mcwdoors/jungle_stable_head_door.png b/public/textures/mcwdoors/jungle_stable_head_door.png new file mode 100644 index 00000000..d0d009d2 Binary files /dev/null and b/public/textures/mcwdoors/jungle_stable_head_door.png differ diff --git a/public/textures/mcwdoors/jungle_swamp_door.png b/public/textures/mcwdoors/jungle_swamp_door.png new file mode 100644 index 00000000..3a1cbbae Binary files /dev/null and b/public/textures/mcwdoors/jungle_swamp_door.png differ diff --git a/public/textures/mcwdoors/jungle_tropical_door.png b/public/textures/mcwdoors/jungle_tropical_door.png new file mode 100644 index 00000000..673227e7 Binary files /dev/null and b/public/textures/mcwdoors/jungle_tropical_door.png differ diff --git a/public/textures/mcwdoors/jungle_waffle_door.png b/public/textures/mcwdoors/jungle_waffle_door.png new file mode 100644 index 00000000..ccabe2aa Binary files /dev/null and b/public/textures/mcwdoors/jungle_waffle_door.png differ diff --git a/public/textures/mcwdoors/jungle_western_door.png b/public/textures/mcwdoors/jungle_western_door.png new file mode 100644 index 00000000..8c41c264 Binary files /dev/null and b/public/textures/mcwdoors/jungle_western_door.png differ diff --git a/public/textures/mcwdoors/jungle_whispering_door.png b/public/textures/mcwdoors/jungle_whispering_door.png new file mode 100644 index 00000000..10b19482 Binary files /dev/null and b/public/textures/mcwdoors/jungle_whispering_door.png differ diff --git a/public/textures/mcwdoors/mangrove_bamboo_door.png b/public/textures/mcwdoors/mangrove_bamboo_door.png new file mode 100644 index 00000000..f8d5841f Binary files /dev/null and b/public/textures/mcwdoors/mangrove_bamboo_door.png differ diff --git a/public/textures/mcwdoors/mangrove_bark_glass_door.png b/public/textures/mcwdoors/mangrove_bark_glass_door.png new file mode 100644 index 00000000..229c056a Binary files /dev/null and b/public/textures/mcwdoors/mangrove_bark_glass_door.png differ diff --git a/public/textures/mcwdoors/mangrove_barn_door.png b/public/textures/mcwdoors/mangrove_barn_door.png new file mode 100644 index 00000000..29101b0b Binary files /dev/null and b/public/textures/mcwdoors/mangrove_barn_door.png differ diff --git a/public/textures/mcwdoors/mangrove_barn_glass_door.png b/public/textures/mcwdoors/mangrove_barn_glass_door.png new file mode 100644 index 00000000..cef43feb Binary files /dev/null and b/public/textures/mcwdoors/mangrove_barn_glass_door.png differ diff --git a/public/textures/mcwdoors/mangrove_beach_door.png b/public/textures/mcwdoors/mangrove_beach_door.png new file mode 100644 index 00000000..b6ab9056 Binary files /dev/null and b/public/textures/mcwdoors/mangrove_beach_door.png differ diff --git a/public/textures/mcwdoors/mangrove_classic_door.png b/public/textures/mcwdoors/mangrove_classic_door.png new file mode 100644 index 00000000..79c8cf94 Binary files /dev/null and b/public/textures/mcwdoors/mangrove_classic_door.png differ diff --git a/public/textures/mcwdoors/mangrove_cottage_door.png b/public/textures/mcwdoors/mangrove_cottage_door.png new file mode 100644 index 00000000..a603ece3 Binary files /dev/null and b/public/textures/mcwdoors/mangrove_cottage_door.png differ diff --git a/public/textures/mcwdoors/mangrove_four_panel_door.png b/public/textures/mcwdoors/mangrove_four_panel_door.png new file mode 100644 index 00000000..6752db99 Binary files /dev/null and b/public/textures/mcwdoors/mangrove_four_panel_door.png differ diff --git a/public/textures/mcwdoors/mangrove_glass_door.png b/public/textures/mcwdoors/mangrove_glass_door.png new file mode 100644 index 00000000..7d6bb94f Binary files /dev/null and b/public/textures/mcwdoors/mangrove_glass_door.png differ diff --git a/public/textures/mcwdoors/mangrove_japanese2_door.png b/public/textures/mcwdoors/mangrove_japanese2_door.png new file mode 100644 index 00000000..4f19bf81 Binary files /dev/null and b/public/textures/mcwdoors/mangrove_japanese2_door.png differ diff --git a/public/textures/mcwdoors/mangrove_japanese_door.png b/public/textures/mcwdoors/mangrove_japanese_door.png new file mode 100644 index 00000000..ddeb44d7 Binary files /dev/null and b/public/textures/mcwdoors/mangrove_japanese_door.png differ diff --git a/public/textures/mcwdoors/mangrove_modern_door.png b/public/textures/mcwdoors/mangrove_modern_door.png new file mode 100644 index 00000000..0aa4b140 Binary files /dev/null and b/public/textures/mcwdoors/mangrove_modern_door.png differ diff --git a/public/textures/mcwdoors/mangrove_mystic_door.png b/public/textures/mcwdoors/mangrove_mystic_door.png new file mode 100644 index 00000000..b1b5add7 Binary files /dev/null and b/public/textures/mcwdoors/mangrove_mystic_door.png differ diff --git a/public/textures/mcwdoors/mangrove_nether_door.png b/public/textures/mcwdoors/mangrove_nether_door.png new file mode 100644 index 00000000..f5abddbd Binary files /dev/null and b/public/textures/mcwdoors/mangrove_nether_door.png differ diff --git a/public/textures/mcwdoors/mangrove_paper_door.png b/public/textures/mcwdoors/mangrove_paper_door.png new file mode 100644 index 00000000..5d13adaf Binary files /dev/null and b/public/textures/mcwdoors/mangrove_paper_door.png differ diff --git a/public/textures/mcwdoors/mangrove_stable_door.png b/public/textures/mcwdoors/mangrove_stable_door.png new file mode 100644 index 00000000..bddcea33 Binary files /dev/null and b/public/textures/mcwdoors/mangrove_stable_door.png differ diff --git a/public/textures/mcwdoors/mangrove_stable_head_door.png b/public/textures/mcwdoors/mangrove_stable_head_door.png new file mode 100644 index 00000000..97637752 Binary files /dev/null and b/public/textures/mcwdoors/mangrove_stable_head_door.png differ diff --git a/public/textures/mcwdoors/mangrove_tropical_door.png b/public/textures/mcwdoors/mangrove_tropical_door.png new file mode 100644 index 00000000..d81cf4ba Binary files /dev/null and b/public/textures/mcwdoors/mangrove_tropical_door.png differ diff --git a/public/textures/mcwdoors/mangrove_waffle_door.png b/public/textures/mcwdoors/mangrove_waffle_door.png new file mode 100644 index 00000000..290c5e9c Binary files /dev/null and b/public/textures/mcwdoors/mangrove_waffle_door.png differ diff --git a/public/textures/mcwdoors/mangrove_western_door.png b/public/textures/mcwdoors/mangrove_western_door.png new file mode 100644 index 00000000..993c3577 Binary files /dev/null and b/public/textures/mcwdoors/mangrove_western_door.png differ diff --git a/public/textures/mcwdoors/metal_door.png b/public/textures/mcwdoors/metal_door.png new file mode 100644 index 00000000..15ca6a81 Binary files /dev/null and b/public/textures/mcwdoors/metal_door.png differ diff --git a/public/textures/mcwdoors/metal_hospital_door.png b/public/textures/mcwdoors/metal_hospital_door.png new file mode 100644 index 00000000..dee6a375 Binary files /dev/null and b/public/textures/mcwdoors/metal_hospital_door.png differ diff --git a/public/textures/mcwdoors/metal_reinforced_door.png b/public/textures/mcwdoors/metal_reinforced_door.png new file mode 100644 index 00000000..45f63363 Binary files /dev/null and b/public/textures/mcwdoors/metal_reinforced_door.png differ diff --git a/public/textures/mcwdoors/metal_warning_door.png b/public/textures/mcwdoors/metal_warning_door.png new file mode 100644 index 00000000..ab5c40bf Binary files /dev/null and b/public/textures/mcwdoors/metal_warning_door.png differ diff --git a/public/textures/mcwdoors/metal_windowed_door.png b/public/textures/mcwdoors/metal_windowed_door.png new file mode 100644 index 00000000..bb95ea53 Binary files /dev/null and b/public/textures/mcwdoors/metal_windowed_door.png differ diff --git a/public/textures/mcwdoors/oak_bamboo_door.png b/public/textures/mcwdoors/oak_bamboo_door.png new file mode 100644 index 00000000..96e25604 Binary files /dev/null and b/public/textures/mcwdoors/oak_bamboo_door.png differ diff --git a/public/textures/mcwdoors/oak_bark_glass_door.png b/public/textures/mcwdoors/oak_bark_glass_door.png new file mode 100644 index 00000000..86e33e04 Binary files /dev/null and b/public/textures/mcwdoors/oak_bark_glass_door.png differ diff --git a/public/textures/mcwdoors/oak_barn_door.png b/public/textures/mcwdoors/oak_barn_door.png new file mode 100644 index 00000000..fe3e3554 Binary files /dev/null and b/public/textures/mcwdoors/oak_barn_door.png differ diff --git a/public/textures/mcwdoors/oak_barn_glass_door.png b/public/textures/mcwdoors/oak_barn_glass_door.png new file mode 100644 index 00000000..85b51660 Binary files /dev/null and b/public/textures/mcwdoors/oak_barn_glass_door.png differ diff --git a/public/textures/mcwdoors/oak_beach_door.png b/public/textures/mcwdoors/oak_beach_door.png new file mode 100644 index 00000000..09cbb874 Binary files /dev/null and b/public/textures/mcwdoors/oak_beach_door.png differ diff --git a/public/textures/mcwdoors/oak_cottage_door.png b/public/textures/mcwdoors/oak_cottage_door.png new file mode 100644 index 00000000..5d681238 Binary files /dev/null and b/public/textures/mcwdoors/oak_cottage_door.png differ diff --git a/public/textures/mcwdoors/oak_four_panel_door.png b/public/textures/mcwdoors/oak_four_panel_door.png new file mode 100644 index 00000000..d1ab3b3b Binary files /dev/null and b/public/textures/mcwdoors/oak_four_panel_door.png differ diff --git a/public/textures/mcwdoors/oak_glass_door.png b/public/textures/mcwdoors/oak_glass_door.png new file mode 100644 index 00000000..a3d82eb0 Binary files /dev/null and b/public/textures/mcwdoors/oak_glass_door.png differ diff --git a/public/textures/mcwdoors/oak_japanese2_door.png b/public/textures/mcwdoors/oak_japanese2_door.png new file mode 100644 index 00000000..b0d93801 Binary files /dev/null and b/public/textures/mcwdoors/oak_japanese2_door.png differ diff --git a/public/textures/mcwdoors/oak_japanese_door.png b/public/textures/mcwdoors/oak_japanese_door.png new file mode 100644 index 00000000..d4761792 Binary files /dev/null and b/public/textures/mcwdoors/oak_japanese_door.png differ diff --git a/public/textures/mcwdoors/oak_modern_door.png b/public/textures/mcwdoors/oak_modern_door.png new file mode 100644 index 00000000..ed0444bd Binary files /dev/null and b/public/textures/mcwdoors/oak_modern_door.png differ diff --git a/public/textures/mcwdoors/oak_mystic_door.png b/public/textures/mcwdoors/oak_mystic_door.png new file mode 100644 index 00000000..288e088b Binary files /dev/null and b/public/textures/mcwdoors/oak_mystic_door.png differ diff --git a/public/textures/mcwdoors/oak_nether_door.png b/public/textures/mcwdoors/oak_nether_door.png new file mode 100644 index 00000000..d8226b6b Binary files /dev/null and b/public/textures/mcwdoors/oak_nether_door.png differ diff --git a/public/textures/mcwdoors/oak_paper_door.png b/public/textures/mcwdoors/oak_paper_door.png new file mode 100644 index 00000000..96685177 Binary files /dev/null and b/public/textures/mcwdoors/oak_paper_door.png differ diff --git a/public/textures/mcwdoors/oak_stable_door.png b/public/textures/mcwdoors/oak_stable_door.png new file mode 100644 index 00000000..8ac1010d Binary files /dev/null and b/public/textures/mcwdoors/oak_stable_door.png differ diff --git a/public/textures/mcwdoors/oak_stable_head_door.png b/public/textures/mcwdoors/oak_stable_head_door.png new file mode 100644 index 00000000..3fb82a63 Binary files /dev/null and b/public/textures/mcwdoors/oak_stable_head_door.png differ diff --git a/public/textures/mcwdoors/oak_swamp_door.png b/public/textures/mcwdoors/oak_swamp_door.png new file mode 100644 index 00000000..2ad7d1eb Binary files /dev/null and b/public/textures/mcwdoors/oak_swamp_door.png differ diff --git a/public/textures/mcwdoors/oak_tropical_door.png b/public/textures/mcwdoors/oak_tropical_door.png new file mode 100644 index 00000000..633621a4 Binary files /dev/null and b/public/textures/mcwdoors/oak_tropical_door.png differ diff --git a/public/textures/mcwdoors/oak_waffle_door.png b/public/textures/mcwdoors/oak_waffle_door.png new file mode 100644 index 00000000..57aac04e Binary files /dev/null and b/public/textures/mcwdoors/oak_waffle_door.png differ diff --git a/public/textures/mcwdoors/oak_western_door.png b/public/textures/mcwdoors/oak_western_door.png new file mode 100644 index 00000000..b0a94492 Binary files /dev/null and b/public/textures/mcwdoors/oak_western_door.png differ diff --git a/public/textures/mcwdoors/oak_whispering_door.png b/public/textures/mcwdoors/oak_whispering_door.png new file mode 100644 index 00000000..7af69cd3 Binary files /dev/null and b/public/textures/mcwdoors/oak_whispering_door.png differ diff --git a/public/textures/mcwdoors/print_acacia.png b/public/textures/mcwdoors/print_acacia.png new file mode 100644 index 00000000..ac8e40fc Binary files /dev/null and b/public/textures/mcwdoors/print_acacia.png differ diff --git a/public/textures/mcwdoors/print_bamboo.png b/public/textures/mcwdoors/print_bamboo.png new file mode 100644 index 00000000..4d125d7e Binary files /dev/null and b/public/textures/mcwdoors/print_bamboo.png differ diff --git a/public/textures/mcwdoors/print_birch.png b/public/textures/mcwdoors/print_birch.png new file mode 100644 index 00000000..ad89345c Binary files /dev/null and b/public/textures/mcwdoors/print_birch.png differ diff --git a/public/textures/mcwdoors/print_dark_oak.png b/public/textures/mcwdoors/print_dark_oak.png new file mode 100644 index 00000000..9e96ca77 Binary files /dev/null and b/public/textures/mcwdoors/print_dark_oak.png differ diff --git a/public/textures/mcwdoors/print_jungle.png b/public/textures/mcwdoors/print_jungle.png new file mode 100644 index 00000000..3912f12d Binary files /dev/null and b/public/textures/mcwdoors/print_jungle.png differ diff --git a/public/textures/mcwdoors/print_mystic.png b/public/textures/mcwdoors/print_mystic.png new file mode 100644 index 00000000..dc71fd25 Binary files /dev/null and b/public/textures/mcwdoors/print_mystic.png differ diff --git a/public/textures/mcwdoors/print_nether.png b/public/textures/mcwdoors/print_nether.png new file mode 100644 index 00000000..7771fb1c Binary files /dev/null and b/public/textures/mcwdoors/print_nether.png differ diff --git a/public/textures/mcwdoors/print_oak.png b/public/textures/mcwdoors/print_oak.png new file mode 100644 index 00000000..e59a9166 Binary files /dev/null and b/public/textures/mcwdoors/print_oak.png differ diff --git a/public/textures/mcwdoors/print_spruce.png b/public/textures/mcwdoors/print_spruce.png new file mode 100644 index 00000000..8cd9aaba Binary files /dev/null and b/public/textures/mcwdoors/print_spruce.png differ diff --git a/public/textures/mcwdoors/print_swamp.png b/public/textures/mcwdoors/print_swamp.png new file mode 100644 index 00000000..40966fc4 Binary files /dev/null and b/public/textures/mcwdoors/print_swamp.png differ diff --git a/public/textures/mcwdoors/print_waffle.png b/public/textures/mcwdoors/print_waffle.png new file mode 100644 index 00000000..b8dff0ff Binary files /dev/null and b/public/textures/mcwdoors/print_waffle.png differ diff --git a/public/textures/mcwdoors/print_whispering.png b/public/textures/mcwdoors/print_whispering.png new file mode 100644 index 00000000..9790f28d Binary files /dev/null and b/public/textures/mcwdoors/print_whispering.png differ diff --git a/public/textures/mcwdoors/sliding_glass_door.png b/public/textures/mcwdoors/sliding_glass_door.png new file mode 100644 index 00000000..6dcfcee1 Binary files /dev/null and b/public/textures/mcwdoors/sliding_glass_door.png differ diff --git a/public/textures/mcwdoors/spruce_bamboo_door.png b/public/textures/mcwdoors/spruce_bamboo_door.png new file mode 100644 index 00000000..c2be07ab Binary files /dev/null and b/public/textures/mcwdoors/spruce_bamboo_door.png differ diff --git a/public/textures/mcwdoors/spruce_bark_glass_door.png b/public/textures/mcwdoors/spruce_bark_glass_door.png new file mode 100644 index 00000000..2068e771 Binary files /dev/null and b/public/textures/mcwdoors/spruce_bark_glass_door.png differ diff --git a/public/textures/mcwdoors/spruce_barn_door.png b/public/textures/mcwdoors/spruce_barn_door.png new file mode 100644 index 00000000..af516a5b Binary files /dev/null and b/public/textures/mcwdoors/spruce_barn_door.png differ diff --git a/public/textures/mcwdoors/spruce_barn_glass_door.png b/public/textures/mcwdoors/spruce_barn_glass_door.png new file mode 100644 index 00000000..31fa34ff Binary files /dev/null and b/public/textures/mcwdoors/spruce_barn_glass_door.png differ diff --git a/public/textures/mcwdoors/spruce_beach_door.png b/public/textures/mcwdoors/spruce_beach_door.png new file mode 100644 index 00000000..cfaa7c53 Binary files /dev/null and b/public/textures/mcwdoors/spruce_beach_door.png differ diff --git a/public/textures/mcwdoors/spruce_classic_door.png b/public/textures/mcwdoors/spruce_classic_door.png new file mode 100644 index 00000000..a79e55c7 Binary files /dev/null and b/public/textures/mcwdoors/spruce_classic_door.png differ diff --git a/public/textures/mcwdoors/spruce_four_panel_door.png b/public/textures/mcwdoors/spruce_four_panel_door.png new file mode 100644 index 00000000..2723dde8 Binary files /dev/null and b/public/textures/mcwdoors/spruce_four_panel_door.png differ diff --git a/public/textures/mcwdoors/spruce_glass_door.png b/public/textures/mcwdoors/spruce_glass_door.png new file mode 100644 index 00000000..da0355e5 Binary files /dev/null and b/public/textures/mcwdoors/spruce_glass_door.png differ diff --git a/public/textures/mcwdoors/spruce_japanese2_door.png b/public/textures/mcwdoors/spruce_japanese2_door.png new file mode 100644 index 00000000..ca72b091 Binary files /dev/null and b/public/textures/mcwdoors/spruce_japanese2_door.png differ diff --git a/public/textures/mcwdoors/spruce_japanese_door.png b/public/textures/mcwdoors/spruce_japanese_door.png new file mode 100644 index 00000000..969761fc Binary files /dev/null and b/public/textures/mcwdoors/spruce_japanese_door.png differ diff --git a/public/textures/mcwdoors/spruce_modern_door.png b/public/textures/mcwdoors/spruce_modern_door.png new file mode 100644 index 00000000..b85195bd Binary files /dev/null and b/public/textures/mcwdoors/spruce_modern_door.png differ diff --git a/public/textures/mcwdoors/spruce_mystic_door.png b/public/textures/mcwdoors/spruce_mystic_door.png new file mode 100644 index 00000000..22fcf1c6 Binary files /dev/null and b/public/textures/mcwdoors/spruce_mystic_door.png differ diff --git a/public/textures/mcwdoors/spruce_nether_door.png b/public/textures/mcwdoors/spruce_nether_door.png new file mode 100644 index 00000000..c0d0a5a9 Binary files /dev/null and b/public/textures/mcwdoors/spruce_nether_door.png differ diff --git a/public/textures/mcwdoors/spruce_paper_door.png b/public/textures/mcwdoors/spruce_paper_door.png new file mode 100644 index 00000000..cdebf401 Binary files /dev/null and b/public/textures/mcwdoors/spruce_paper_door.png differ diff --git a/public/textures/mcwdoors/spruce_stable_door.png b/public/textures/mcwdoors/spruce_stable_door.png new file mode 100644 index 00000000..f60df330 Binary files /dev/null and b/public/textures/mcwdoors/spruce_stable_door.png differ diff --git a/public/textures/mcwdoors/spruce_stable_head_door.png b/public/textures/mcwdoors/spruce_stable_head_door.png new file mode 100644 index 00000000..0224a097 Binary files /dev/null and b/public/textures/mcwdoors/spruce_stable_head_door.png differ diff --git a/public/textures/mcwdoors/spruce_swamp_door.png b/public/textures/mcwdoors/spruce_swamp_door.png new file mode 100644 index 00000000..36719a4e Binary files /dev/null and b/public/textures/mcwdoors/spruce_swamp_door.png differ diff --git a/public/textures/mcwdoors/spruce_tropical_door.png b/public/textures/mcwdoors/spruce_tropical_door.png new file mode 100644 index 00000000..701c960f Binary files /dev/null and b/public/textures/mcwdoors/spruce_tropical_door.png differ diff --git a/public/textures/mcwdoors/spruce_waffle_door.png b/public/textures/mcwdoors/spruce_waffle_door.png new file mode 100644 index 00000000..e984d696 Binary files /dev/null and b/public/textures/mcwdoors/spruce_waffle_door.png differ diff --git a/public/textures/mcwdoors/spruce_western_door.png b/public/textures/mcwdoors/spruce_western_door.png new file mode 100644 index 00000000..3763fdaa Binary files /dev/null and b/public/textures/mcwdoors/spruce_western_door.png differ diff --git a/public/textures/mcwdoors/spruce_whispering_door.png b/public/textures/mcwdoors/spruce_whispering_door.png new file mode 100644 index 00000000..9f1bede3 Binary files /dev/null and b/public/textures/mcwdoors/spruce_whispering_door.png differ diff --git a/public/textures/mcwdoors/store_door.png b/public/textures/mcwdoors/store_door.png new file mode 100644 index 00000000..9e309255 Binary files /dev/null and b/public/textures/mcwdoors/store_door.png differ diff --git a/public/textures/mcwdoors/warped_bamboo_door.png b/public/textures/mcwdoors/warped_bamboo_door.png new file mode 100644 index 00000000..8fa346eb Binary files /dev/null and b/public/textures/mcwdoors/warped_bamboo_door.png differ diff --git a/public/textures/mcwdoors/warped_barn_door.png b/public/textures/mcwdoors/warped_barn_door.png new file mode 100644 index 00000000..d0da1869 Binary files /dev/null and b/public/textures/mcwdoors/warped_barn_door.png differ diff --git a/public/textures/mcwdoors/warped_barn_glass_door.png b/public/textures/mcwdoors/warped_barn_glass_door.png new file mode 100644 index 00000000..17888eba Binary files /dev/null and b/public/textures/mcwdoors/warped_barn_glass_door.png differ diff --git a/public/textures/mcwdoors/warped_beach_door.png b/public/textures/mcwdoors/warped_beach_door.png new file mode 100644 index 00000000..59e38259 Binary files /dev/null and b/public/textures/mcwdoors/warped_beach_door.png differ diff --git a/public/textures/mcwdoors/warped_classic_door.png b/public/textures/mcwdoors/warped_classic_door.png new file mode 100644 index 00000000..47425363 Binary files /dev/null and b/public/textures/mcwdoors/warped_classic_door.png differ diff --git a/public/textures/mcwdoors/warped_cottage_door.png b/public/textures/mcwdoors/warped_cottage_door.png new file mode 100644 index 00000000..5b63d4d1 Binary files /dev/null and b/public/textures/mcwdoors/warped_cottage_door.png differ diff --git a/public/textures/mcwdoors/warped_four_panel_door.png b/public/textures/mcwdoors/warped_four_panel_door.png new file mode 100644 index 00000000..9261b87d Binary files /dev/null and b/public/textures/mcwdoors/warped_four_panel_door.png differ diff --git a/public/textures/mcwdoors/warped_glass_door.png b/public/textures/mcwdoors/warped_glass_door.png new file mode 100644 index 00000000..275cdc48 Binary files /dev/null and b/public/textures/mcwdoors/warped_glass_door.png differ diff --git a/public/textures/mcwdoors/warped_japanese2_door.png b/public/textures/mcwdoors/warped_japanese2_door.png new file mode 100644 index 00000000..2c1ac7eb Binary files /dev/null and b/public/textures/mcwdoors/warped_japanese2_door.png differ diff --git a/public/textures/mcwdoors/warped_japanese_door.png b/public/textures/mcwdoors/warped_japanese_door.png new file mode 100644 index 00000000..c7f47f4a Binary files /dev/null and b/public/textures/mcwdoors/warped_japanese_door.png differ diff --git a/public/textures/mcwdoors/warped_modern_door.png b/public/textures/mcwdoors/warped_modern_door.png new file mode 100644 index 00000000..0f5a47db Binary files /dev/null and b/public/textures/mcwdoors/warped_modern_door.png differ diff --git a/public/textures/mcwdoors/warped_nether_door.png b/public/textures/mcwdoors/warped_nether_door.png new file mode 100644 index 00000000..c31d067c Binary files /dev/null and b/public/textures/mcwdoors/warped_nether_door.png differ diff --git a/public/textures/mcwdoors/warped_paper_door.png b/public/textures/mcwdoors/warped_paper_door.png new file mode 100644 index 00000000..193803b5 Binary files /dev/null and b/public/textures/mcwdoors/warped_paper_door.png differ diff --git a/public/textures/mcwdoors/warped_stable_door.png b/public/textures/mcwdoors/warped_stable_door.png new file mode 100644 index 00000000..0d5345e3 Binary files /dev/null and b/public/textures/mcwdoors/warped_stable_door.png differ diff --git a/public/textures/mcwdoors/warped_stable_head_door.png b/public/textures/mcwdoors/warped_stable_head_door.png new file mode 100644 index 00000000..3004cf3b Binary files /dev/null and b/public/textures/mcwdoors/warped_stable_head_door.png differ diff --git a/public/textures/mcwdoors/warped_stem_glass_door.png b/public/textures/mcwdoors/warped_stem_glass_door.png new file mode 100644 index 00000000..ac31d6f9 Binary files /dev/null and b/public/textures/mcwdoors/warped_stem_glass_door.png differ diff --git a/public/textures/mcwdoors/warped_swamp_door.png b/public/textures/mcwdoors/warped_swamp_door.png new file mode 100644 index 00000000..8b25c934 Binary files /dev/null and b/public/textures/mcwdoors/warped_swamp_door.png differ diff --git a/public/textures/mcwdoors/warped_tropical_door.png b/public/textures/mcwdoors/warped_tropical_door.png new file mode 100644 index 00000000..0d9f94d6 Binary files /dev/null and b/public/textures/mcwdoors/warped_tropical_door.png differ diff --git a/public/textures/mcwdoors/warped_waffle_door.png b/public/textures/mcwdoors/warped_waffle_door.png new file mode 100644 index 00000000..9fc8fbc5 Binary files /dev/null and b/public/textures/mcwdoors/warped_waffle_door.png differ diff --git a/public/textures/mcwdoors/warped_western_door.png b/public/textures/mcwdoors/warped_western_door.png new file mode 100644 index 00000000..dfa10e2a Binary files /dev/null and b/public/textures/mcwdoors/warped_western_door.png differ diff --git a/public/textures/mcwdoors/warped_whispering_door.png b/public/textures/mcwdoors/warped_whispering_door.png new file mode 100644 index 00000000..219338f7 Binary files /dev/null and b/public/textures/mcwdoors/warped_whispering_door.png differ diff --git a/public/textures/mcwdoors/wooden_portcullis.png b/public/textures/mcwdoors/wooden_portcullis.png new file mode 100644 index 00000000..23909da0 Binary files /dev/null and b/public/textures/mcwdoors/wooden_portcullis.png differ diff --git a/public/textures/mcwfences/acacia_curved_gate.png b/public/textures/mcwfences/acacia_curved_gate.png new file mode 100644 index 00000000..8937e1af Binary files /dev/null and b/public/textures/mcwfences/acacia_curved_gate.png differ diff --git a/public/textures/mcwfences/acacia_hedge.png b/public/textures/mcwfences/acacia_hedge.png new file mode 100644 index 00000000..8c13e0a2 Binary files /dev/null and b/public/textures/mcwfences/acacia_hedge.png differ diff --git a/public/textures/mcwfences/acacia_highley_gate.png b/public/textures/mcwfences/acacia_highley_gate.png new file mode 100644 index 00000000..c4f23353 Binary files /dev/null and b/public/textures/mcwfences/acacia_highley_gate.png differ diff --git a/public/textures/mcwfences/acacia_horse_fence.png b/public/textures/mcwfences/acacia_horse_fence.png new file mode 100644 index 00000000..ccea4582 Binary files /dev/null and b/public/textures/mcwfences/acacia_horse_fence.png differ diff --git a/public/textures/mcwfences/acacia_picket_fence.png b/public/textures/mcwfences/acacia_picket_fence.png new file mode 100644 index 00000000..e13578e0 Binary files /dev/null and b/public/textures/mcwfences/acacia_picket_fence.png differ diff --git a/public/textures/mcwfences/acacia_pyramid_gate.png b/public/textures/mcwfences/acacia_pyramid_gate.png new file mode 100644 index 00000000..d155d3ba Binary files /dev/null and b/public/textures/mcwfences/acacia_pyramid_gate.png differ diff --git a/public/textures/mcwfences/acacia_stockade_fence.png b/public/textures/mcwfences/acacia_stockade_fence.png new file mode 100644 index 00000000..4f5aa6ef Binary files /dev/null and b/public/textures/mcwfences/acacia_stockade_fence.png differ diff --git a/public/textures/mcwfences/acacia_wired_fence.png b/public/textures/mcwfences/acacia_wired_fence.png new file mode 100644 index 00000000..15885176 Binary files /dev/null and b/public/textures/mcwfences/acacia_wired_fence.png differ diff --git a/public/textures/mcwfences/acorn_metal_fence.png b/public/textures/mcwfences/acorn_metal_fence.png new file mode 100644 index 00000000..1009d29e Binary files /dev/null and b/public/textures/mcwfences/acorn_metal_fence.png differ diff --git a/public/textures/mcwfences/andesite_grass_topped_wall.png b/public/textures/mcwfences/andesite_grass_topped_wall.png new file mode 100644 index 00000000..245d5a0c Binary files /dev/null and b/public/textures/mcwfences/andesite_grass_topped_wall.png differ diff --git a/public/textures/mcwfences/andesite_pillar_wall.png b/public/textures/mcwfences/andesite_pillar_wall.png new file mode 100644 index 00000000..9aa4a505 Binary files /dev/null and b/public/textures/mcwfences/andesite_pillar_wall.png differ diff --git a/public/textures/mcwfences/andesite_railing_gate.png b/public/textures/mcwfences/andesite_railing_gate.png new file mode 100644 index 00000000..6d641307 Binary files /dev/null and b/public/textures/mcwfences/andesite_railing_gate.png differ diff --git a/public/textures/mcwfences/azalea_hedge.png b/public/textures/mcwfences/azalea_hedge.png new file mode 100644 index 00000000..9db843a5 Binary files /dev/null and b/public/textures/mcwfences/azalea_hedge.png differ diff --git a/public/textures/mcwfences/bamboo_curved_gate.png b/public/textures/mcwfences/bamboo_curved_gate.png new file mode 100644 index 00000000..a1e99d5d Binary files /dev/null and b/public/textures/mcwfences/bamboo_curved_gate.png differ diff --git a/public/textures/mcwfences/bamboo_fence.png b/public/textures/mcwfences/bamboo_fence.png new file mode 100644 index 00000000..354a2fbb Binary files /dev/null and b/public/textures/mcwfences/bamboo_fence.png differ diff --git a/public/textures/mcwfences/bamboo_highley_gate.png b/public/textures/mcwfences/bamboo_highley_gate.png new file mode 100644 index 00000000..9ba734f2 Binary files /dev/null and b/public/textures/mcwfences/bamboo_highley_gate.png differ diff --git a/public/textures/mcwfences/bamboo_horse_fence.png b/public/textures/mcwfences/bamboo_horse_fence.png new file mode 100644 index 00000000..dcb4582b Binary files /dev/null and b/public/textures/mcwfences/bamboo_horse_fence.png differ diff --git a/public/textures/mcwfences/bamboo_picket_fence.png b/public/textures/mcwfences/bamboo_picket_fence.png new file mode 100644 index 00000000..b73b18c3 Binary files /dev/null and b/public/textures/mcwfences/bamboo_picket_fence.png differ diff --git a/public/textures/mcwfences/bamboo_pyramid_gate.png b/public/textures/mcwfences/bamboo_pyramid_gate.png new file mode 100644 index 00000000..79e3639d Binary files /dev/null and b/public/textures/mcwfences/bamboo_pyramid_gate.png differ diff --git a/public/textures/mcwfences/bamboo_stockade_fence.png b/public/textures/mcwfences/bamboo_stockade_fence.png new file mode 100644 index 00000000..4647618a Binary files /dev/null and b/public/textures/mcwfences/bamboo_stockade_fence.png differ diff --git a/public/textures/mcwfences/bamboo_wired_fence.png b/public/textures/mcwfences/bamboo_wired_fence.png new file mode 100644 index 00000000..c3192c24 Binary files /dev/null and b/public/textures/mcwfences/bamboo_wired_fence.png differ diff --git a/public/textures/mcwfences/bastion_metal_fence.png b/public/textures/mcwfences/bastion_metal_fence.png new file mode 100644 index 00000000..7ddd1ff9 Binary files /dev/null and b/public/textures/mcwfences/bastion_metal_fence.png differ diff --git a/public/textures/mcwfences/bastion_metal_fence_gate.png b/public/textures/mcwfences/bastion_metal_fence_gate.png new file mode 100644 index 00000000..1192ea4a Binary files /dev/null and b/public/textures/mcwfences/bastion_metal_fence_gate.png differ diff --git a/public/textures/mcwfences/birch_curved_gate.png b/public/textures/mcwfences/birch_curved_gate.png new file mode 100644 index 00000000..3de9c06a Binary files /dev/null and b/public/textures/mcwfences/birch_curved_gate.png differ diff --git a/public/textures/mcwfences/birch_hedge.png b/public/textures/mcwfences/birch_hedge.png new file mode 100644 index 00000000..e288f32d Binary files /dev/null and b/public/textures/mcwfences/birch_hedge.png differ diff --git a/public/textures/mcwfences/birch_highley_gate.png b/public/textures/mcwfences/birch_highley_gate.png new file mode 100644 index 00000000..693094b8 Binary files /dev/null and b/public/textures/mcwfences/birch_highley_gate.png differ diff --git a/public/textures/mcwfences/birch_horse_fence.png b/public/textures/mcwfences/birch_horse_fence.png new file mode 100644 index 00000000..dcc3b1e1 Binary files /dev/null and b/public/textures/mcwfences/birch_horse_fence.png differ diff --git a/public/textures/mcwfences/birch_picket_fence.png b/public/textures/mcwfences/birch_picket_fence.png new file mode 100644 index 00000000..c5286531 Binary files /dev/null and b/public/textures/mcwfences/birch_picket_fence.png differ diff --git a/public/textures/mcwfences/birch_pyramid_gate.png b/public/textures/mcwfences/birch_pyramid_gate.png new file mode 100644 index 00000000..7f5c420e Binary files /dev/null and b/public/textures/mcwfences/birch_pyramid_gate.png differ diff --git a/public/textures/mcwfences/birch_stockade_fence.png b/public/textures/mcwfences/birch_stockade_fence.png new file mode 100644 index 00000000..39749d66 Binary files /dev/null and b/public/textures/mcwfences/birch_stockade_fence.png differ diff --git a/public/textures/mcwfences/birch_wired_fence.png b/public/textures/mcwfences/birch_wired_fence.png new file mode 100644 index 00000000..e834d481 Binary files /dev/null and b/public/textures/mcwfences/birch_wired_fence.png differ diff --git a/public/textures/mcwfences/blackstone_brick_railing_gate.png b/public/textures/mcwfences/blackstone_brick_railing_gate.png new file mode 100644 index 00000000..a14f029e Binary files /dev/null and b/public/textures/mcwfences/blackstone_brick_railing_gate.png differ diff --git a/public/textures/mcwfences/blackstone_grass_topped_wall.png b/public/textures/mcwfences/blackstone_grass_topped_wall.png new file mode 100644 index 00000000..7dfbb900 Binary files /dev/null and b/public/textures/mcwfences/blackstone_grass_topped_wall.png differ diff --git a/public/textures/mcwfences/blackstone_pillar_wall.png b/public/textures/mcwfences/blackstone_pillar_wall.png new file mode 100644 index 00000000..b8240da1 Binary files /dev/null and b/public/textures/mcwfences/blackstone_pillar_wall.png differ diff --git a/public/textures/mcwfences/blackstone_railing_gate.png b/public/textures/mcwfences/blackstone_railing_gate.png new file mode 100644 index 00000000..3b651631 Binary files /dev/null and b/public/textures/mcwfences/blackstone_railing_gate.png differ diff --git a/public/textures/mcwfences/cathedral_metal_fence.png b/public/textures/mcwfences/cathedral_metal_fence.png new file mode 100644 index 00000000..36095e57 Binary files /dev/null and b/public/textures/mcwfences/cathedral_metal_fence.png differ diff --git a/public/textures/mcwfences/cherry_curved_gate.png b/public/textures/mcwfences/cherry_curved_gate.png new file mode 100644 index 00000000..6df456f3 Binary files /dev/null and b/public/textures/mcwfences/cherry_curved_gate.png differ diff --git a/public/textures/mcwfences/cherry_hedge.png b/public/textures/mcwfences/cherry_hedge.png new file mode 100644 index 00000000..51d0ac1b Binary files /dev/null and b/public/textures/mcwfences/cherry_hedge.png differ diff --git a/public/textures/mcwfences/cherry_highley_gate.png b/public/textures/mcwfences/cherry_highley_gate.png new file mode 100644 index 00000000..11d1e00b Binary files /dev/null and b/public/textures/mcwfences/cherry_highley_gate.png differ diff --git a/public/textures/mcwfences/cherry_horse_fence.png b/public/textures/mcwfences/cherry_horse_fence.png new file mode 100644 index 00000000..8ef7922c Binary files /dev/null and b/public/textures/mcwfences/cherry_horse_fence.png differ diff --git a/public/textures/mcwfences/cherry_picket_fence.png b/public/textures/mcwfences/cherry_picket_fence.png new file mode 100644 index 00000000..6b7a3abc Binary files /dev/null and b/public/textures/mcwfences/cherry_picket_fence.png differ diff --git a/public/textures/mcwfences/cherry_pyramid_gate.png b/public/textures/mcwfences/cherry_pyramid_gate.png new file mode 100644 index 00000000..2543cdae Binary files /dev/null and b/public/textures/mcwfences/cherry_pyramid_gate.png differ diff --git a/public/textures/mcwfences/cherry_stockade_fence.png b/public/textures/mcwfences/cherry_stockade_fence.png new file mode 100644 index 00000000..c3ce0def Binary files /dev/null and b/public/textures/mcwfences/cherry_stockade_fence.png differ diff --git a/public/textures/mcwfences/cherry_wired_fence.png b/public/textures/mcwfences/cherry_wired_fence.png new file mode 100644 index 00000000..48b264ff Binary files /dev/null and b/public/textures/mcwfences/cherry_wired_fence.png differ diff --git a/public/textures/mcwfences/crimson_curved_gate.png b/public/textures/mcwfences/crimson_curved_gate.png new file mode 100644 index 00000000..65c148b8 Binary files /dev/null and b/public/textures/mcwfences/crimson_curved_gate.png differ diff --git a/public/textures/mcwfences/crimson_highley_gate.png b/public/textures/mcwfences/crimson_highley_gate.png new file mode 100644 index 00000000..ab731107 Binary files /dev/null and b/public/textures/mcwfences/crimson_highley_gate.png differ diff --git a/public/textures/mcwfences/crimson_horse_fence.png b/public/textures/mcwfences/crimson_horse_fence.png new file mode 100644 index 00000000..48309eb4 Binary files /dev/null and b/public/textures/mcwfences/crimson_horse_fence.png differ diff --git a/public/textures/mcwfences/crimson_picket_fence.png b/public/textures/mcwfences/crimson_picket_fence.png new file mode 100644 index 00000000..25d90571 Binary files /dev/null and b/public/textures/mcwfences/crimson_picket_fence.png differ diff --git a/public/textures/mcwfences/crimson_pyramid_gate.png b/public/textures/mcwfences/crimson_pyramid_gate.png new file mode 100644 index 00000000..f77d68e0 Binary files /dev/null and b/public/textures/mcwfences/crimson_pyramid_gate.png differ diff --git a/public/textures/mcwfences/crimson_stockade_fence.png b/public/textures/mcwfences/crimson_stockade_fence.png new file mode 100644 index 00000000..27c76dda Binary files /dev/null and b/public/textures/mcwfences/crimson_stockade_fence.png differ diff --git a/public/textures/mcwfences/crimson_wired_fence.png b/public/textures/mcwfences/crimson_wired_fence.png new file mode 100644 index 00000000..55ee8dfd Binary files /dev/null and b/public/textures/mcwfences/crimson_wired_fence.png differ diff --git a/public/textures/mcwfences/curved_metal_fence.png b/public/textures/mcwfences/curved_metal_fence.png new file mode 100644 index 00000000..dffa179e Binary files /dev/null and b/public/textures/mcwfences/curved_metal_fence.png differ diff --git a/public/textures/mcwfences/curved_metal_fence_gate.png b/public/textures/mcwfences/curved_metal_fence_gate.png new file mode 100644 index 00000000..c69ec506 Binary files /dev/null and b/public/textures/mcwfences/curved_metal_fence_gate.png differ diff --git a/public/textures/mcwfences/dark_oak_curved_gate.png b/public/textures/mcwfences/dark_oak_curved_gate.png new file mode 100644 index 00000000..24f90e44 Binary files /dev/null and b/public/textures/mcwfences/dark_oak_curved_gate.png differ diff --git a/public/textures/mcwfences/dark_oak_hedge.png b/public/textures/mcwfences/dark_oak_hedge.png new file mode 100644 index 00000000..5b22c9c7 Binary files /dev/null and b/public/textures/mcwfences/dark_oak_hedge.png differ diff --git a/public/textures/mcwfences/dark_oak_highley_gate.png b/public/textures/mcwfences/dark_oak_highley_gate.png new file mode 100644 index 00000000..f013a6d9 Binary files /dev/null and b/public/textures/mcwfences/dark_oak_highley_gate.png differ diff --git a/public/textures/mcwfences/dark_oak_horse_fence.png b/public/textures/mcwfences/dark_oak_horse_fence.png new file mode 100644 index 00000000..33373696 Binary files /dev/null and b/public/textures/mcwfences/dark_oak_horse_fence.png differ diff --git a/public/textures/mcwfences/dark_oak_picket_fence.png b/public/textures/mcwfences/dark_oak_picket_fence.png new file mode 100644 index 00000000..03ba809a Binary files /dev/null and b/public/textures/mcwfences/dark_oak_picket_fence.png differ diff --git a/public/textures/mcwfences/dark_oak_pyramid_gate.png b/public/textures/mcwfences/dark_oak_pyramid_gate.png new file mode 100644 index 00000000..2bafb8a4 Binary files /dev/null and b/public/textures/mcwfences/dark_oak_pyramid_gate.png differ diff --git a/public/textures/mcwfences/dark_oak_stockade_fence.png b/public/textures/mcwfences/dark_oak_stockade_fence.png new file mode 100644 index 00000000..ea1a37c2 Binary files /dev/null and b/public/textures/mcwfences/dark_oak_stockade_fence.png differ diff --git a/public/textures/mcwfences/dark_oak_wired_fence.png b/public/textures/mcwfences/dark_oak_wired_fence.png new file mode 100644 index 00000000..901544e6 Binary files /dev/null and b/public/textures/mcwfences/dark_oak_wired_fence.png differ diff --git a/public/textures/mcwfences/deepslate_brick_grass_topped_wall.png b/public/textures/mcwfences/deepslate_brick_grass_topped_wall.png new file mode 100644 index 00000000..08768ebe Binary files /dev/null and b/public/textures/mcwfences/deepslate_brick_grass_topped_wall.png differ diff --git a/public/textures/mcwfences/deepslate_brick_pillar_wall.png b/public/textures/mcwfences/deepslate_brick_pillar_wall.png new file mode 100644 index 00000000..86c24741 Binary files /dev/null and b/public/textures/mcwfences/deepslate_brick_pillar_wall.png differ diff --git a/public/textures/mcwfences/deepslate_brick_railing_gate.png b/public/textures/mcwfences/deepslate_brick_railing_gate.png new file mode 100644 index 00000000..79226bde Binary files /dev/null and b/public/textures/mcwfences/deepslate_brick_railing_gate.png differ diff --git a/public/textures/mcwfences/deepslate_grass_topped_wall.png b/public/textures/mcwfences/deepslate_grass_topped_wall.png new file mode 100644 index 00000000..39ba2521 Binary files /dev/null and b/public/textures/mcwfences/deepslate_grass_topped_wall.png differ diff --git a/public/textures/mcwfences/deepslate_pillar_wall.png b/public/textures/mcwfences/deepslate_pillar_wall.png new file mode 100644 index 00000000..4e29938d Binary files /dev/null and b/public/textures/mcwfences/deepslate_pillar_wall.png differ diff --git a/public/textures/mcwfences/deepslate_railing_gate.png b/public/textures/mcwfences/deepslate_railing_gate.png new file mode 100644 index 00000000..94e51a7a Binary files /dev/null and b/public/textures/mcwfences/deepslate_railing_gate.png differ diff --git a/public/textures/mcwfences/diorite_grass_topped_wall.png b/public/textures/mcwfences/diorite_grass_topped_wall.png new file mode 100644 index 00000000..10368d74 Binary files /dev/null and b/public/textures/mcwfences/diorite_grass_topped_wall.png differ diff --git a/public/textures/mcwfences/diorite_pillar_wall.png b/public/textures/mcwfences/diorite_pillar_wall.png new file mode 100644 index 00000000..a990b772 Binary files /dev/null and b/public/textures/mcwfences/diorite_pillar_wall.png differ diff --git a/public/textures/mcwfences/diorite_railing_gate.png b/public/textures/mcwfences/diorite_railing_gate.png new file mode 100644 index 00000000..58ef33d7 Binary files /dev/null and b/public/textures/mcwfences/diorite_railing_gate.png differ diff --git a/public/textures/mcwfences/double_curved_metal_fence.png b/public/textures/mcwfences/double_curved_metal_fence.png new file mode 100644 index 00000000..474a1c2c Binary files /dev/null and b/public/textures/mcwfences/double_curved_metal_fence.png differ diff --git a/public/textures/mcwfences/end_brick_grass_topped_wall.png b/public/textures/mcwfences/end_brick_grass_topped_wall.png new file mode 100644 index 00000000..1ef5f10d Binary files /dev/null and b/public/textures/mcwfences/end_brick_grass_topped_wall.png differ diff --git a/public/textures/mcwfences/end_brick_pillar_wall.png b/public/textures/mcwfences/end_brick_pillar_wall.png new file mode 100644 index 00000000..287d758a Binary files /dev/null and b/public/textures/mcwfences/end_brick_pillar_wall.png differ diff --git a/public/textures/mcwfences/end_brick_railing_gate.png b/public/textures/mcwfences/end_brick_railing_gate.png new file mode 100644 index 00000000..a25b8800 Binary files /dev/null and b/public/textures/mcwfences/end_brick_railing_gate.png differ diff --git a/public/textures/mcwfences/expanded_mesh_metal_fence.png b/public/textures/mcwfences/expanded_mesh_metal_fence.png new file mode 100644 index 00000000..32e34bd6 Binary files /dev/null and b/public/textures/mcwfences/expanded_mesh_metal_fence.png differ diff --git a/public/textures/mcwfences/flowering_azalea_hedge.png b/public/textures/mcwfences/flowering_azalea_hedge.png new file mode 100644 index 00000000..27a7dc0d Binary files /dev/null and b/public/textures/mcwfences/flowering_azalea_hedge.png differ diff --git a/public/textures/mcwfences/fortress_metal_fence.png b/public/textures/mcwfences/fortress_metal_fence.png new file mode 100644 index 00000000..9deb57cc Binary files /dev/null and b/public/textures/mcwfences/fortress_metal_fence.png differ diff --git a/public/textures/mcwfences/gothic_metal_fence.png b/public/textures/mcwfences/gothic_metal_fence.png new file mode 100644 index 00000000..c2d33f5b Binary files /dev/null and b/public/textures/mcwfences/gothic_metal_fence.png differ diff --git a/public/textures/mcwfences/granite_grass_topped_wall.png b/public/textures/mcwfences/granite_grass_topped_wall.png new file mode 100644 index 00000000..47b6a569 Binary files /dev/null and b/public/textures/mcwfences/granite_grass_topped_wall.png differ diff --git a/public/textures/mcwfences/granite_pillar_wall.png b/public/textures/mcwfences/granite_pillar_wall.png new file mode 100644 index 00000000..94a59187 Binary files /dev/null and b/public/textures/mcwfences/granite_pillar_wall.png differ diff --git a/public/textures/mcwfences/granite_railing_gate.png b/public/textures/mcwfences/granite_railing_gate.png new file mode 100644 index 00000000..49ba0504 Binary files /dev/null and b/public/textures/mcwfences/granite_railing_gate.png differ diff --git a/public/textures/mcwfences/guardian_metal_fence.png b/public/textures/mcwfences/guardian_metal_fence.png new file mode 100644 index 00000000..bc0baa45 Binary files /dev/null and b/public/textures/mcwfences/guardian_metal_fence.png differ diff --git a/public/textures/mcwfences/iron_cheval_de_frise.png b/public/textures/mcwfences/iron_cheval_de_frise.png new file mode 100644 index 00000000..7c12f30e Binary files /dev/null and b/public/textures/mcwfences/iron_cheval_de_frise.png differ diff --git a/public/textures/mcwfences/jungle_curved_gate.png b/public/textures/mcwfences/jungle_curved_gate.png new file mode 100644 index 00000000..1da4aed1 Binary files /dev/null and b/public/textures/mcwfences/jungle_curved_gate.png differ diff --git a/public/textures/mcwfences/jungle_hedge.png b/public/textures/mcwfences/jungle_hedge.png new file mode 100644 index 00000000..1b7e3826 Binary files /dev/null and b/public/textures/mcwfences/jungle_hedge.png differ diff --git a/public/textures/mcwfences/jungle_highley_gate.png b/public/textures/mcwfences/jungle_highley_gate.png new file mode 100644 index 00000000..bfa42a25 Binary files /dev/null and b/public/textures/mcwfences/jungle_highley_gate.png differ diff --git a/public/textures/mcwfences/jungle_horse_fence.png b/public/textures/mcwfences/jungle_horse_fence.png new file mode 100644 index 00000000..23eb73b3 Binary files /dev/null and b/public/textures/mcwfences/jungle_horse_fence.png differ diff --git a/public/textures/mcwfences/jungle_picket_fence.png b/public/textures/mcwfences/jungle_picket_fence.png new file mode 100644 index 00000000..5400f571 Binary files /dev/null and b/public/textures/mcwfences/jungle_picket_fence.png differ diff --git a/public/textures/mcwfences/jungle_pyramid_gate.png b/public/textures/mcwfences/jungle_pyramid_gate.png new file mode 100644 index 00000000..e9a50710 Binary files /dev/null and b/public/textures/mcwfences/jungle_pyramid_gate.png differ diff --git a/public/textures/mcwfences/jungle_stockade_fence.png b/public/textures/mcwfences/jungle_stockade_fence.png new file mode 100644 index 00000000..4b2b3f7b Binary files /dev/null and b/public/textures/mcwfences/jungle_stockade_fence.png differ diff --git a/public/textures/mcwfences/jungle_wired_fence.png b/public/textures/mcwfences/jungle_wired_fence.png new file mode 100644 index 00000000..bbd7269d Binary files /dev/null and b/public/textures/mcwfences/jungle_wired_fence.png differ diff --git a/public/textures/mcwfences/majestic_metal_fence_gate.png b/public/textures/mcwfences/majestic_metal_fence_gate.png new file mode 100644 index 00000000..f996373a Binary files /dev/null and b/public/textures/mcwfences/majestic_metal_fence_gate.png differ diff --git a/public/textures/mcwfences/mangrove_curved_gate.png b/public/textures/mcwfences/mangrove_curved_gate.png new file mode 100644 index 00000000..b87f7765 Binary files /dev/null and b/public/textures/mcwfences/mangrove_curved_gate.png differ diff --git a/public/textures/mcwfences/mangrove_hedge.png b/public/textures/mcwfences/mangrove_hedge.png new file mode 100644 index 00000000..6311bc21 Binary files /dev/null and b/public/textures/mcwfences/mangrove_hedge.png differ diff --git a/public/textures/mcwfences/mangrove_highley_gate.png b/public/textures/mcwfences/mangrove_highley_gate.png new file mode 100644 index 00000000..e3187575 Binary files /dev/null and b/public/textures/mcwfences/mangrove_highley_gate.png differ diff --git a/public/textures/mcwfences/mangrove_horse_fence.png b/public/textures/mcwfences/mangrove_horse_fence.png new file mode 100644 index 00000000..101d32e9 Binary files /dev/null and b/public/textures/mcwfences/mangrove_horse_fence.png differ diff --git a/public/textures/mcwfences/mangrove_picket_fence.png b/public/textures/mcwfences/mangrove_picket_fence.png new file mode 100644 index 00000000..7357fdb4 Binary files /dev/null and b/public/textures/mcwfences/mangrove_picket_fence.png differ diff --git a/public/textures/mcwfences/mangrove_pyramid_gate.png b/public/textures/mcwfences/mangrove_pyramid_gate.png new file mode 100644 index 00000000..b6fe4f08 Binary files /dev/null and b/public/textures/mcwfences/mangrove_pyramid_gate.png differ diff --git a/public/textures/mcwfences/mangrove_stockade_fence.png b/public/textures/mcwfences/mangrove_stockade_fence.png new file mode 100644 index 00000000..3836841f Binary files /dev/null and b/public/textures/mcwfences/mangrove_stockade_fence.png differ diff --git a/public/textures/mcwfences/mangrove_wired_fence.png b/public/textures/mcwfences/mangrove_wired_fence.png new file mode 100644 index 00000000..3a3d66a8 Binary files /dev/null and b/public/textures/mcwfences/mangrove_wired_fence.png differ diff --git a/public/textures/mcwfences/mesh_metal_fence.png b/public/textures/mcwfences/mesh_metal_fence.png new file mode 100644 index 00000000..3c7e1736 Binary files /dev/null and b/public/textures/mcwfences/mesh_metal_fence.png differ diff --git a/public/textures/mcwfences/mesh_metal_fence_gate.png b/public/textures/mcwfences/mesh_metal_fence_gate.png new file mode 100644 index 00000000..9e4b181e Binary files /dev/null and b/public/textures/mcwfences/mesh_metal_fence_gate.png differ diff --git a/public/textures/mcwfences/modern_andesite_wall.png b/public/textures/mcwfences/modern_andesite_wall.png new file mode 100644 index 00000000..5904b3ad Binary files /dev/null and b/public/textures/mcwfences/modern_andesite_wall.png differ diff --git a/public/textures/mcwfences/modern_blackstone_wall.png b/public/textures/mcwfences/modern_blackstone_wall.png new file mode 100644 index 00000000..b8613987 Binary files /dev/null and b/public/textures/mcwfences/modern_blackstone_wall.png differ diff --git a/public/textures/mcwfences/modern_deepslate_brick_wall.png b/public/textures/mcwfences/modern_deepslate_brick_wall.png new file mode 100644 index 00000000..a81827cc Binary files /dev/null and b/public/textures/mcwfences/modern_deepslate_brick_wall.png differ diff --git a/public/textures/mcwfences/modern_deepslate_wall.png b/public/textures/mcwfences/modern_deepslate_wall.png new file mode 100644 index 00000000..939d86ba Binary files /dev/null and b/public/textures/mcwfences/modern_deepslate_wall.png differ diff --git a/public/textures/mcwfences/modern_diorite_wall.png b/public/textures/mcwfences/modern_diorite_wall.png new file mode 100644 index 00000000..cd5066a1 Binary files /dev/null and b/public/textures/mcwfences/modern_diorite_wall.png differ diff --git a/public/textures/mcwfences/modern_end_brick_wall.png b/public/textures/mcwfences/modern_end_brick_wall.png new file mode 100644 index 00000000..d2070c52 Binary files /dev/null and b/public/textures/mcwfences/modern_end_brick_wall.png differ diff --git a/public/textures/mcwfences/modern_granite_wall.png b/public/textures/mcwfences/modern_granite_wall.png new file mode 100644 index 00000000..d4abb7d7 Binary files /dev/null and b/public/textures/mcwfences/modern_granite_wall.png differ diff --git a/public/textures/mcwfences/modern_mud_brick_wall.png b/public/textures/mcwfences/modern_mud_brick_wall.png new file mode 100644 index 00000000..d838d3fd Binary files /dev/null and b/public/textures/mcwfences/modern_mud_brick_wall.png differ diff --git a/public/textures/mcwfences/modern_nether_brick_wall.png b/public/textures/mcwfences/modern_nether_brick_wall.png new file mode 100644 index 00000000..60a3a165 Binary files /dev/null and b/public/textures/mcwfences/modern_nether_brick_wall.png differ diff --git a/public/textures/mcwfences/modern_prismarine_wall.png b/public/textures/mcwfences/modern_prismarine_wall.png new file mode 100644 index 00000000..f649cd4e Binary files /dev/null and b/public/textures/mcwfences/modern_prismarine_wall.png differ diff --git a/public/textures/mcwfences/modern_quartz_wall.png b/public/textures/mcwfences/modern_quartz_wall.png new file mode 100644 index 00000000..ab1b5424 Binary files /dev/null and b/public/textures/mcwfences/modern_quartz_wall.png differ diff --git a/public/textures/mcwfences/modern_red_sandstone_wall.png b/public/textures/mcwfences/modern_red_sandstone_wall.png new file mode 100644 index 00000000..e6a50f21 Binary files /dev/null and b/public/textures/mcwfences/modern_red_sandstone_wall.png differ diff --git a/public/textures/mcwfences/modern_sandstone_wall.png b/public/textures/mcwfences/modern_sandstone_wall.png new file mode 100644 index 00000000..0ae32b7d Binary files /dev/null and b/public/textures/mcwfences/modern_sandstone_wall.png differ diff --git a/public/textures/mcwfences/modern_stone_brick_wall.png b/public/textures/mcwfences/modern_stone_brick_wall.png new file mode 100644 index 00000000..f7e524d3 Binary files /dev/null and b/public/textures/mcwfences/modern_stone_brick_wall.png differ diff --git a/public/textures/mcwfences/mud_brick_grass_topped_wall.png b/public/textures/mcwfences/mud_brick_grass_topped_wall.png new file mode 100644 index 00000000..3e4e0ff8 Binary files /dev/null and b/public/textures/mcwfences/mud_brick_grass_topped_wall.png differ diff --git a/public/textures/mcwfences/mud_brick_pillar_wall.png b/public/textures/mcwfences/mud_brick_pillar_wall.png new file mode 100644 index 00000000..24e6ff34 Binary files /dev/null and b/public/textures/mcwfences/mud_brick_pillar_wall.png differ diff --git a/public/textures/mcwfences/mud_brick_railing_gate.png b/public/textures/mcwfences/mud_brick_railing_gate.png new file mode 100644 index 00000000..f76bb96b Binary files /dev/null and b/public/textures/mcwfences/mud_brick_railing_gate.png differ diff --git a/public/textures/mcwfences/nether_brick_grass_topped_wall.png b/public/textures/mcwfences/nether_brick_grass_topped_wall.png new file mode 100644 index 00000000..db317aa8 Binary files /dev/null and b/public/textures/mcwfences/nether_brick_grass_topped_wall.png differ diff --git a/public/textures/mcwfences/nether_brick_pillar_wall.png b/public/textures/mcwfences/nether_brick_pillar_wall.png new file mode 100644 index 00000000..b4161689 Binary files /dev/null and b/public/textures/mcwfences/nether_brick_pillar_wall.png differ diff --git a/public/textures/mcwfences/nether_brick_railing_gate.png b/public/textures/mcwfences/nether_brick_railing_gate.png new file mode 100644 index 00000000..2828767f Binary files /dev/null and b/public/textures/mcwfences/nether_brick_railing_gate.png differ diff --git a/public/textures/mcwfences/oak_curved_gate.png b/public/textures/mcwfences/oak_curved_gate.png new file mode 100644 index 00000000..00b545b6 Binary files /dev/null and b/public/textures/mcwfences/oak_curved_gate.png differ diff --git a/public/textures/mcwfences/oak_hedge.png b/public/textures/mcwfences/oak_hedge.png new file mode 100644 index 00000000..81bacfcc Binary files /dev/null and b/public/textures/mcwfences/oak_hedge.png differ diff --git a/public/textures/mcwfences/oak_highley_gate.png b/public/textures/mcwfences/oak_highley_gate.png new file mode 100644 index 00000000..8e136952 Binary files /dev/null and b/public/textures/mcwfences/oak_highley_gate.png differ diff --git a/public/textures/mcwfences/oak_horse_fence.png b/public/textures/mcwfences/oak_horse_fence.png new file mode 100644 index 00000000..a67c52bd Binary files /dev/null and b/public/textures/mcwfences/oak_horse_fence.png differ diff --git a/public/textures/mcwfences/oak_picket_fence.png b/public/textures/mcwfences/oak_picket_fence.png new file mode 100644 index 00000000..7a912901 Binary files /dev/null and b/public/textures/mcwfences/oak_picket_fence.png differ diff --git a/public/textures/mcwfences/oak_pyramid_gate.png b/public/textures/mcwfences/oak_pyramid_gate.png new file mode 100644 index 00000000..594a1d34 Binary files /dev/null and b/public/textures/mcwfences/oak_pyramid_gate.png differ diff --git a/public/textures/mcwfences/oak_stockade_fence.png b/public/textures/mcwfences/oak_stockade_fence.png new file mode 100644 index 00000000..6c699b2c Binary files /dev/null and b/public/textures/mcwfences/oak_stockade_fence.png differ diff --git a/public/textures/mcwfences/oak_wired_fence.png b/public/textures/mcwfences/oak_wired_fence.png new file mode 100644 index 00000000..789770a4 Binary files /dev/null and b/public/textures/mcwfences/oak_wired_fence.png differ diff --git a/public/textures/mcwfences/ornate_metal_fence.png b/public/textures/mcwfences/ornate_metal_fence.png new file mode 100644 index 00000000..8b007f80 Binary files /dev/null and b/public/textures/mcwfences/ornate_metal_fence.png differ diff --git a/public/textures/mcwfences/panelled_metal_fence.png b/public/textures/mcwfences/panelled_metal_fence.png new file mode 100644 index 00000000..886bec71 Binary files /dev/null and b/public/textures/mcwfences/panelled_metal_fence.png differ diff --git a/public/textures/mcwfences/panelled_metal_fence_gate.png b/public/textures/mcwfences/panelled_metal_fence_gate.png new file mode 100644 index 00000000..e261bda6 Binary files /dev/null and b/public/textures/mcwfences/panelled_metal_fence_gate.png differ diff --git a/public/textures/mcwfences/prismarine_grass_topped_wall.png b/public/textures/mcwfences/prismarine_grass_topped_wall.png new file mode 100644 index 00000000..d1987a5b Binary files /dev/null and b/public/textures/mcwfences/prismarine_grass_topped_wall.png differ diff --git a/public/textures/mcwfences/prismarine_pillar_wall.png b/public/textures/mcwfences/prismarine_pillar_wall.png new file mode 100644 index 00000000..d8cc6bbd Binary files /dev/null and b/public/textures/mcwfences/prismarine_pillar_wall.png differ diff --git a/public/textures/mcwfences/prismarine_railing_gate.png b/public/textures/mcwfences/prismarine_railing_gate.png new file mode 100644 index 00000000..32c12f69 Binary files /dev/null and b/public/textures/mcwfences/prismarine_railing_gate.png differ diff --git a/public/textures/mcwfences/quartz_grass_topped_wall.png b/public/textures/mcwfences/quartz_grass_topped_wall.png new file mode 100644 index 00000000..9f6b8e65 Binary files /dev/null and b/public/textures/mcwfences/quartz_grass_topped_wall.png differ diff --git a/public/textures/mcwfences/quartz_pillar_wall.png b/public/textures/mcwfences/quartz_pillar_wall.png new file mode 100644 index 00000000..8738ce22 Binary files /dev/null and b/public/textures/mcwfences/quartz_pillar_wall.png differ diff --git a/public/textures/mcwfences/quartz_railing_gate.png b/public/textures/mcwfences/quartz_railing_gate.png new file mode 100644 index 00000000..bae0ae02 Binary files /dev/null and b/public/textures/mcwfences/quartz_railing_gate.png differ diff --git a/public/textures/mcwfences/railing_andesite_wall.png b/public/textures/mcwfences/railing_andesite_wall.png new file mode 100644 index 00000000..cf5888d8 Binary files /dev/null and b/public/textures/mcwfences/railing_andesite_wall.png differ diff --git a/public/textures/mcwfences/railing_blackstone_wall.png b/public/textures/mcwfences/railing_blackstone_wall.png new file mode 100644 index 00000000..cbd5134d Binary files /dev/null and b/public/textures/mcwfences/railing_blackstone_wall.png differ diff --git a/public/textures/mcwfences/railing_deepslate_brick_wall.png b/public/textures/mcwfences/railing_deepslate_brick_wall.png new file mode 100644 index 00000000..20d35129 Binary files /dev/null and b/public/textures/mcwfences/railing_deepslate_brick_wall.png differ diff --git a/public/textures/mcwfences/railing_deepslate_wall.png b/public/textures/mcwfences/railing_deepslate_wall.png new file mode 100644 index 00000000..216362c8 Binary files /dev/null and b/public/textures/mcwfences/railing_deepslate_wall.png differ diff --git a/public/textures/mcwfences/railing_diorite_wall.png b/public/textures/mcwfences/railing_diorite_wall.png new file mode 100644 index 00000000..172fef45 Binary files /dev/null and b/public/textures/mcwfences/railing_diorite_wall.png differ diff --git a/public/textures/mcwfences/railing_end_brick_wall.png b/public/textures/mcwfences/railing_end_brick_wall.png new file mode 100644 index 00000000..3e36b935 Binary files /dev/null and b/public/textures/mcwfences/railing_end_brick_wall.png differ diff --git a/public/textures/mcwfences/railing_granite_wall.png b/public/textures/mcwfences/railing_granite_wall.png new file mode 100644 index 00000000..8cfcbfd7 Binary files /dev/null and b/public/textures/mcwfences/railing_granite_wall.png differ diff --git a/public/textures/mcwfences/railing_mud_brick_wall.png b/public/textures/mcwfences/railing_mud_brick_wall.png new file mode 100644 index 00000000..db2e6953 Binary files /dev/null and b/public/textures/mcwfences/railing_mud_brick_wall.png differ diff --git a/public/textures/mcwfences/railing_nether_brick_wall.png b/public/textures/mcwfences/railing_nether_brick_wall.png new file mode 100644 index 00000000..3536e3d6 Binary files /dev/null and b/public/textures/mcwfences/railing_nether_brick_wall.png differ diff --git a/public/textures/mcwfences/railing_prismarine_wall.png b/public/textures/mcwfences/railing_prismarine_wall.png new file mode 100644 index 00000000..c8d20261 Binary files /dev/null and b/public/textures/mcwfences/railing_prismarine_wall.png differ diff --git a/public/textures/mcwfences/railing_quartz_wall.png b/public/textures/mcwfences/railing_quartz_wall.png new file mode 100644 index 00000000..c5b8b933 Binary files /dev/null and b/public/textures/mcwfences/railing_quartz_wall.png differ diff --git a/public/textures/mcwfences/railing_red_sandstone_wall.png b/public/textures/mcwfences/railing_red_sandstone_wall.png new file mode 100644 index 00000000..336cd31e Binary files /dev/null and b/public/textures/mcwfences/railing_red_sandstone_wall.png differ diff --git a/public/textures/mcwfences/railing_sandstone_wall.png b/public/textures/mcwfences/railing_sandstone_wall.png new file mode 100644 index 00000000..5f76c1c8 Binary files /dev/null and b/public/textures/mcwfences/railing_sandstone_wall.png differ diff --git a/public/textures/mcwfences/railing_stone_brick_wall.png b/public/textures/mcwfences/railing_stone_brick_wall.png new file mode 100644 index 00000000..1e3bdd47 Binary files /dev/null and b/public/textures/mcwfences/railing_stone_brick_wall.png differ diff --git a/public/textures/mcwfences/red_sandstone_grass_topped_wall.png b/public/textures/mcwfences/red_sandstone_grass_topped_wall.png new file mode 100644 index 00000000..7e54a221 Binary files /dev/null and b/public/textures/mcwfences/red_sandstone_grass_topped_wall.png differ diff --git a/public/textures/mcwfences/red_sandstone_pillar_wall.png b/public/textures/mcwfences/red_sandstone_pillar_wall.png new file mode 100644 index 00000000..fa834563 Binary files /dev/null and b/public/textures/mcwfences/red_sandstone_pillar_wall.png differ diff --git a/public/textures/mcwfences/red_sandstone_railing_gate.png b/public/textures/mcwfences/red_sandstone_railing_gate.png new file mode 100644 index 00000000..7b390ca4 Binary files /dev/null and b/public/textures/mcwfences/red_sandstone_railing_gate.png differ diff --git a/public/textures/mcwfences/sandstone_grass_topped_wall.png b/public/textures/mcwfences/sandstone_grass_topped_wall.png new file mode 100644 index 00000000..8cc885ac Binary files /dev/null and b/public/textures/mcwfences/sandstone_grass_topped_wall.png differ diff --git a/public/textures/mcwfences/sandstone_pillar_wall.png b/public/textures/mcwfences/sandstone_pillar_wall.png new file mode 100644 index 00000000..cadf9a88 Binary files /dev/null and b/public/textures/mcwfences/sandstone_pillar_wall.png differ diff --git a/public/textures/mcwfences/sandstone_railing_gate.png b/public/textures/mcwfences/sandstone_railing_gate.png new file mode 100644 index 00000000..4fbc631f Binary files /dev/null and b/public/textures/mcwfences/sandstone_railing_gate.png differ diff --git a/public/textures/mcwfences/spruce_curved_gate.png b/public/textures/mcwfences/spruce_curved_gate.png new file mode 100644 index 00000000..000df17b Binary files /dev/null and b/public/textures/mcwfences/spruce_curved_gate.png differ diff --git a/public/textures/mcwfences/spruce_hedge.png b/public/textures/mcwfences/spruce_hedge.png new file mode 100644 index 00000000..eec904d4 Binary files /dev/null and b/public/textures/mcwfences/spruce_hedge.png differ diff --git a/public/textures/mcwfences/spruce_highley_gate.png b/public/textures/mcwfences/spruce_highley_gate.png new file mode 100644 index 00000000..2d976e2d Binary files /dev/null and b/public/textures/mcwfences/spruce_highley_gate.png differ diff --git a/public/textures/mcwfences/spruce_horse_fence.png b/public/textures/mcwfences/spruce_horse_fence.png new file mode 100644 index 00000000..4d40f94a Binary files /dev/null and b/public/textures/mcwfences/spruce_horse_fence.png differ diff --git a/public/textures/mcwfences/spruce_picket_fence.png b/public/textures/mcwfences/spruce_picket_fence.png new file mode 100644 index 00000000..a10b0768 Binary files /dev/null and b/public/textures/mcwfences/spruce_picket_fence.png differ diff --git a/public/textures/mcwfences/spruce_pyramid_gate.png b/public/textures/mcwfences/spruce_pyramid_gate.png new file mode 100644 index 00000000..4bb47ecb Binary files /dev/null and b/public/textures/mcwfences/spruce_pyramid_gate.png differ diff --git a/public/textures/mcwfences/spruce_stockade_fence.png b/public/textures/mcwfences/spruce_stockade_fence.png new file mode 100644 index 00000000..1f30ed81 Binary files /dev/null and b/public/textures/mcwfences/spruce_stockade_fence.png differ diff --git a/public/textures/mcwfences/spruce_wired_fence.png b/public/textures/mcwfences/spruce_wired_fence.png new file mode 100644 index 00000000..c8064130 Binary files /dev/null and b/public/textures/mcwfences/spruce_wired_fence.png differ diff --git a/public/textures/mcwfences/stone_brick_railing_gate.png b/public/textures/mcwfences/stone_brick_railing_gate.png new file mode 100644 index 00000000..de670e87 Binary files /dev/null and b/public/textures/mcwfences/stone_brick_railing_gate.png differ diff --git a/public/textures/mcwfences/stone_grass_topped_wall.png b/public/textures/mcwfences/stone_grass_topped_wall.png new file mode 100644 index 00000000..89f94ade Binary files /dev/null and b/public/textures/mcwfences/stone_grass_topped_wall.png differ diff --git a/public/textures/mcwfences/stone_pillar_wall.png b/public/textures/mcwfences/stone_pillar_wall.png new file mode 100644 index 00000000..95689064 Binary files /dev/null and b/public/textures/mcwfences/stone_pillar_wall.png differ diff --git a/public/textures/mcwfences/twilight_metal_fence.png b/public/textures/mcwfences/twilight_metal_fence.png new file mode 100644 index 00000000..5b5cc1d2 Binary files /dev/null and b/public/textures/mcwfences/twilight_metal_fence.png differ diff --git a/public/textures/mcwfences/vintage_metal_fence.png b/public/textures/mcwfences/vintage_metal_fence.png new file mode 100644 index 00000000..cdf33d2b Binary files /dev/null and b/public/textures/mcwfences/vintage_metal_fence.png differ diff --git a/public/textures/mcwfences/warped_curved_gate.png b/public/textures/mcwfences/warped_curved_gate.png new file mode 100644 index 00000000..0562a0a8 Binary files /dev/null and b/public/textures/mcwfences/warped_curved_gate.png differ diff --git a/public/textures/mcwfences/warped_highley_gate.png b/public/textures/mcwfences/warped_highley_gate.png new file mode 100644 index 00000000..95760d51 Binary files /dev/null and b/public/textures/mcwfences/warped_highley_gate.png differ diff --git a/public/textures/mcwfences/warped_horse_fence.png b/public/textures/mcwfences/warped_horse_fence.png new file mode 100644 index 00000000..203ee748 Binary files /dev/null and b/public/textures/mcwfences/warped_horse_fence.png differ diff --git a/public/textures/mcwfences/warped_picket_fence.png b/public/textures/mcwfences/warped_picket_fence.png new file mode 100644 index 00000000..cf2e12fd Binary files /dev/null and b/public/textures/mcwfences/warped_picket_fence.png differ diff --git a/public/textures/mcwfences/warped_pyramid_gate.png b/public/textures/mcwfences/warped_pyramid_gate.png new file mode 100644 index 00000000..71fcb11c Binary files /dev/null and b/public/textures/mcwfences/warped_pyramid_gate.png differ diff --git a/public/textures/mcwfences/warped_stockade_fence.png b/public/textures/mcwfences/warped_stockade_fence.png new file mode 100644 index 00000000..03818588 Binary files /dev/null and b/public/textures/mcwfences/warped_stockade_fence.png differ diff --git a/public/textures/mcwfences/warped_wired_fence.png b/public/textures/mcwfences/warped_wired_fence.png new file mode 100644 index 00000000..59e4ecef Binary files /dev/null and b/public/textures/mcwfences/warped_wired_fence.png differ diff --git a/public/textures/mcwfences/wooden_cheval_de_frise.png b/public/textures/mcwfences/wooden_cheval_de_frise.png new file mode 100644 index 00000000..cc318117 Binary files /dev/null and b/public/textures/mcwfences/wooden_cheval_de_frise.png differ diff --git a/public/textures/mcwfurnitures/acacia_bookshelf.png b/public/textures/mcwfurnitures/acacia_bookshelf.png new file mode 100644 index 00000000..e55c6753 Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_bookshelf.png differ diff --git a/public/textures/mcwfurnitures/acacia_bookshelf_cupboard.png b/public/textures/mcwfurnitures/acacia_bookshelf_cupboard.png new file mode 100644 index 00000000..46deacac Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_bookshelf_cupboard.png differ diff --git a/public/textures/mcwfurnitures/acacia_bookshelf_drawer.png b/public/textures/mcwfurnitures/acacia_bookshelf_drawer.png new file mode 100644 index 00000000..0bf2018f Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/acacia_chair.png b/public/textures/mcwfurnitures/acacia_chair.png new file mode 100644 index 00000000..dc3cd33b Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_chair.png differ diff --git a/public/textures/mcwfurnitures/acacia_coffee_table.png b/public/textures/mcwfurnitures/acacia_coffee_table.png new file mode 100644 index 00000000..08a45e5d Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_coffee_table.png differ diff --git a/public/textures/mcwfurnitures/acacia_counter.png b/public/textures/mcwfurnitures/acacia_counter.png new file mode 100644 index 00000000..ed1823be Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_counter.png differ diff --git a/public/textures/mcwfurnitures/acacia_covered_desk.png b/public/textures/mcwfurnitures/acacia_covered_desk.png new file mode 100644 index 00000000..ab17bf6c Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_covered_desk.png differ diff --git a/public/textures/mcwfurnitures/acacia_cupboard_counter.png b/public/textures/mcwfurnitures/acacia_cupboard_counter.png new file mode 100644 index 00000000..55b50e42 Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_cupboard_counter.png differ diff --git a/public/textures/mcwfurnitures/acacia_desk.png b/public/textures/mcwfurnitures/acacia_desk.png new file mode 100644 index 00000000..bc1ba075 Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_desk.png differ diff --git a/public/textures/mcwfurnitures/acacia_double_drawer.png b/public/textures/mcwfurnitures/acacia_double_drawer.png new file mode 100644 index 00000000..254f8cfe Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_double_drawer.png differ diff --git a/public/textures/mcwfurnitures/acacia_double_drawer_counter.png b/public/textures/mcwfurnitures/acacia_double_drawer_counter.png new file mode 100644 index 00000000..29b3f8f6 Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_double_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/acacia_double_kitchen_cabinet.png b/public/textures/mcwfurnitures/acacia_double_kitchen_cabinet.png new file mode 100644 index 00000000..77012879 Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/acacia_double_wardrobe.png b/public/textures/mcwfurnitures/acacia_double_wardrobe.png new file mode 100644 index 00000000..d433ee02 Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_double_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/acacia_drawer.png b/public/textures/mcwfurnitures/acacia_drawer.png new file mode 100644 index 00000000..2ed99baf Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_drawer.png differ diff --git a/public/textures/mcwfurnitures/acacia_drawer_counter.png b/public/textures/mcwfurnitures/acacia_drawer_counter.png new file mode 100644 index 00000000..505e9aa6 Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/acacia_end_table.png b/public/textures/mcwfurnitures/acacia_end_table.png new file mode 100644 index 00000000..80a3c4e8 Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_end_table.png differ diff --git a/public/textures/mcwfurnitures/acacia_glass_kitchen_cabinet.png b/public/textures/mcwfurnitures/acacia_glass_kitchen_cabinet.png new file mode 100644 index 00000000..f742e6ce Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/acacia_glass_table.png b/public/textures/mcwfurnitures/acacia_glass_table.png new file mode 100644 index 00000000..f451304c Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_glass_table.png differ diff --git a/public/textures/mcwfurnitures/acacia_kitchen_cabinet.png b/public/textures/mcwfurnitures/acacia_kitchen_cabinet.png new file mode 100644 index 00000000..7e266a08 Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/acacia_large_drawer.png b/public/textures/mcwfurnitures/acacia_large_drawer.png new file mode 100644 index 00000000..680aceac Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_large_drawer.png differ diff --git a/public/textures/mcwfurnitures/acacia_lower_bookshelf_drawer.png b/public/textures/mcwfurnitures/acacia_lower_bookshelf_drawer.png new file mode 100644 index 00000000..e29b1e7f Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/acacia_lower_triple_drawer.png b/public/textures/mcwfurnitures/acacia_lower_triple_drawer.png new file mode 100644 index 00000000..9dbe7303 Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_lower_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/acacia_modern_chair.png b/public/textures/mcwfurnitures/acacia_modern_chair.png new file mode 100644 index 00000000..c52632f4 Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_modern_chair.png differ diff --git a/public/textures/mcwfurnitures/acacia_modern_desk.png b/public/textures/mcwfurnitures/acacia_modern_desk.png new file mode 100644 index 00000000..f1dbd324 Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_modern_desk.png differ diff --git a/public/textures/mcwfurnitures/acacia_modern_wardrobe.png b/public/textures/mcwfurnitures/acacia_modern_wardrobe.png new file mode 100644 index 00000000..781bac5c Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_modern_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/acacia_stool_chair.png b/public/textures/mcwfurnitures/acacia_stool_chair.png new file mode 100644 index 00000000..b1c4b936 Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_stool_chair.png differ diff --git a/public/textures/mcwfurnitures/acacia_striped_chair.png b/public/textures/mcwfurnitures/acacia_striped_chair.png new file mode 100644 index 00000000..f2b50b92 Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_striped_chair.png differ diff --git a/public/textures/mcwfurnitures/acacia_table.png b/public/textures/mcwfurnitures/acacia_table.png new file mode 100644 index 00000000..e03eeaad Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_table.png differ diff --git a/public/textures/mcwfurnitures/acacia_triple_drawer.png b/public/textures/mcwfurnitures/acacia_triple_drawer.png new file mode 100644 index 00000000..5ab30e73 Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/acacia_wardrobe.png b/public/textures/mcwfurnitures/acacia_wardrobe.png new file mode 100644 index 00000000..feaad474 Binary files /dev/null and b/public/textures/mcwfurnitures/acacia_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/birch_bookshelf.png b/public/textures/mcwfurnitures/birch_bookshelf.png new file mode 100644 index 00000000..1edc3325 Binary files /dev/null and b/public/textures/mcwfurnitures/birch_bookshelf.png differ diff --git a/public/textures/mcwfurnitures/birch_bookshelf_cupboard.png b/public/textures/mcwfurnitures/birch_bookshelf_cupboard.png new file mode 100644 index 00000000..6d1faec6 Binary files /dev/null and b/public/textures/mcwfurnitures/birch_bookshelf_cupboard.png differ diff --git a/public/textures/mcwfurnitures/birch_bookshelf_drawer.png b/public/textures/mcwfurnitures/birch_bookshelf_drawer.png new file mode 100644 index 00000000..4fb7f5df Binary files /dev/null and b/public/textures/mcwfurnitures/birch_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/birch_chair.png b/public/textures/mcwfurnitures/birch_chair.png new file mode 100644 index 00000000..cdbe32d7 Binary files /dev/null and b/public/textures/mcwfurnitures/birch_chair.png differ diff --git a/public/textures/mcwfurnitures/birch_coffee_table.png b/public/textures/mcwfurnitures/birch_coffee_table.png new file mode 100644 index 00000000..d293edee Binary files /dev/null and b/public/textures/mcwfurnitures/birch_coffee_table.png differ diff --git a/public/textures/mcwfurnitures/birch_counter.png b/public/textures/mcwfurnitures/birch_counter.png new file mode 100644 index 00000000..f067f731 Binary files /dev/null and b/public/textures/mcwfurnitures/birch_counter.png differ diff --git a/public/textures/mcwfurnitures/birch_covered_desk.png b/public/textures/mcwfurnitures/birch_covered_desk.png new file mode 100644 index 00000000..1325fc8b Binary files /dev/null and b/public/textures/mcwfurnitures/birch_covered_desk.png differ diff --git a/public/textures/mcwfurnitures/birch_cupboard_counter.png b/public/textures/mcwfurnitures/birch_cupboard_counter.png new file mode 100644 index 00000000..88bbdaf3 Binary files /dev/null and b/public/textures/mcwfurnitures/birch_cupboard_counter.png differ diff --git a/public/textures/mcwfurnitures/birch_desk.png b/public/textures/mcwfurnitures/birch_desk.png new file mode 100644 index 00000000..b813d4fd Binary files /dev/null and b/public/textures/mcwfurnitures/birch_desk.png differ diff --git a/public/textures/mcwfurnitures/birch_double_drawer.png b/public/textures/mcwfurnitures/birch_double_drawer.png new file mode 100644 index 00000000..efe07f18 Binary files /dev/null and b/public/textures/mcwfurnitures/birch_double_drawer.png differ diff --git a/public/textures/mcwfurnitures/birch_double_drawer_counter.png b/public/textures/mcwfurnitures/birch_double_drawer_counter.png new file mode 100644 index 00000000..4c5cdd6b Binary files /dev/null and b/public/textures/mcwfurnitures/birch_double_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/birch_double_kitchen_cabinet.png b/public/textures/mcwfurnitures/birch_double_kitchen_cabinet.png new file mode 100644 index 00000000..590a39cc Binary files /dev/null and b/public/textures/mcwfurnitures/birch_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/birch_double_wardrobe.png b/public/textures/mcwfurnitures/birch_double_wardrobe.png new file mode 100644 index 00000000..598ee89a Binary files /dev/null and b/public/textures/mcwfurnitures/birch_double_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/birch_drawer.png b/public/textures/mcwfurnitures/birch_drawer.png new file mode 100644 index 00000000..c232db54 Binary files /dev/null and b/public/textures/mcwfurnitures/birch_drawer.png differ diff --git a/public/textures/mcwfurnitures/birch_drawer_counter.png b/public/textures/mcwfurnitures/birch_drawer_counter.png new file mode 100644 index 00000000..83ce603d Binary files /dev/null and b/public/textures/mcwfurnitures/birch_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/birch_end_table.png b/public/textures/mcwfurnitures/birch_end_table.png new file mode 100644 index 00000000..907688f0 Binary files /dev/null and b/public/textures/mcwfurnitures/birch_end_table.png differ diff --git a/public/textures/mcwfurnitures/birch_glass_kitchen_cabinet.png b/public/textures/mcwfurnitures/birch_glass_kitchen_cabinet.png new file mode 100644 index 00000000..79b05247 Binary files /dev/null and b/public/textures/mcwfurnitures/birch_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/birch_glass_table.png b/public/textures/mcwfurnitures/birch_glass_table.png new file mode 100644 index 00000000..55e7d724 Binary files /dev/null and b/public/textures/mcwfurnitures/birch_glass_table.png differ diff --git a/public/textures/mcwfurnitures/birch_kitchen_cabinet.png b/public/textures/mcwfurnitures/birch_kitchen_cabinet.png new file mode 100644 index 00000000..3f718870 Binary files /dev/null and b/public/textures/mcwfurnitures/birch_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/birch_large_drawer.png b/public/textures/mcwfurnitures/birch_large_drawer.png new file mode 100644 index 00000000..0fd45788 Binary files /dev/null and b/public/textures/mcwfurnitures/birch_large_drawer.png differ diff --git a/public/textures/mcwfurnitures/birch_lower_bookshelf_drawer.png b/public/textures/mcwfurnitures/birch_lower_bookshelf_drawer.png new file mode 100644 index 00000000..3c62c9f3 Binary files /dev/null and b/public/textures/mcwfurnitures/birch_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/birch_lower_triple_drawer.png b/public/textures/mcwfurnitures/birch_lower_triple_drawer.png new file mode 100644 index 00000000..b01b9886 Binary files /dev/null and b/public/textures/mcwfurnitures/birch_lower_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/birch_modern_chair.png b/public/textures/mcwfurnitures/birch_modern_chair.png new file mode 100644 index 00000000..1fdd808e Binary files /dev/null and b/public/textures/mcwfurnitures/birch_modern_chair.png differ diff --git a/public/textures/mcwfurnitures/birch_modern_desk.png b/public/textures/mcwfurnitures/birch_modern_desk.png new file mode 100644 index 00000000..e4764464 Binary files /dev/null and b/public/textures/mcwfurnitures/birch_modern_desk.png differ diff --git a/public/textures/mcwfurnitures/birch_modern_wardrobe.png b/public/textures/mcwfurnitures/birch_modern_wardrobe.png new file mode 100644 index 00000000..93d8f3ed Binary files /dev/null and b/public/textures/mcwfurnitures/birch_modern_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/birch_stool_chair.png b/public/textures/mcwfurnitures/birch_stool_chair.png new file mode 100644 index 00000000..9abddded Binary files /dev/null and b/public/textures/mcwfurnitures/birch_stool_chair.png differ diff --git a/public/textures/mcwfurnitures/birch_striped_chair.png b/public/textures/mcwfurnitures/birch_striped_chair.png new file mode 100644 index 00000000..4eca040d Binary files /dev/null and b/public/textures/mcwfurnitures/birch_striped_chair.png differ diff --git a/public/textures/mcwfurnitures/birch_table.png b/public/textures/mcwfurnitures/birch_table.png new file mode 100644 index 00000000..e994cdb5 Binary files /dev/null and b/public/textures/mcwfurnitures/birch_table.png differ diff --git a/public/textures/mcwfurnitures/birch_triple_drawer.png b/public/textures/mcwfurnitures/birch_triple_drawer.png new file mode 100644 index 00000000..5bd445b2 Binary files /dev/null and b/public/textures/mcwfurnitures/birch_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/birch_wardrobe.png b/public/textures/mcwfurnitures/birch_wardrobe.png new file mode 100644 index 00000000..d47027c9 Binary files /dev/null and b/public/textures/mcwfurnitures/birch_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/cabinet_door.png b/public/textures/mcwfurnitures/cabinet_door.png new file mode 100644 index 00000000..cb66dad7 Binary files /dev/null and b/public/textures/mcwfurnitures/cabinet_door.png differ diff --git a/public/textures/mcwfurnitures/cabinet_drawer.png b/public/textures/mcwfurnitures/cabinet_drawer.png new file mode 100644 index 00000000..cf998d83 Binary files /dev/null and b/public/textures/mcwfurnitures/cabinet_drawer.png differ diff --git a/public/textures/mcwfurnitures/cherry_bookshelf.png b/public/textures/mcwfurnitures/cherry_bookshelf.png new file mode 100644 index 00000000..bdd92f66 Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_bookshelf.png differ diff --git a/public/textures/mcwfurnitures/cherry_bookshelf_cupboard.png b/public/textures/mcwfurnitures/cherry_bookshelf_cupboard.png new file mode 100644 index 00000000..a1358ce5 Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_bookshelf_cupboard.png differ diff --git a/public/textures/mcwfurnitures/cherry_bookshelf_drawer.png b/public/textures/mcwfurnitures/cherry_bookshelf_drawer.png new file mode 100644 index 00000000..deac0c13 Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/cherry_chair.png b/public/textures/mcwfurnitures/cherry_chair.png new file mode 100644 index 00000000..0209745f Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_chair.png differ diff --git a/public/textures/mcwfurnitures/cherry_coffee_table.png b/public/textures/mcwfurnitures/cherry_coffee_table.png new file mode 100644 index 00000000..d94d2566 Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_coffee_table.png differ diff --git a/public/textures/mcwfurnitures/cherry_counter.png b/public/textures/mcwfurnitures/cherry_counter.png new file mode 100644 index 00000000..187cedf7 Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_counter.png differ diff --git a/public/textures/mcwfurnitures/cherry_covered_desk.png b/public/textures/mcwfurnitures/cherry_covered_desk.png new file mode 100644 index 00000000..e32de4e8 Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_covered_desk.png differ diff --git a/public/textures/mcwfurnitures/cherry_cupboard_counter.png b/public/textures/mcwfurnitures/cherry_cupboard_counter.png new file mode 100644 index 00000000..df4d656c Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_cupboard_counter.png differ diff --git a/public/textures/mcwfurnitures/cherry_desk.png b/public/textures/mcwfurnitures/cherry_desk.png new file mode 100644 index 00000000..006be060 Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_desk.png differ diff --git a/public/textures/mcwfurnitures/cherry_double_drawer.png b/public/textures/mcwfurnitures/cherry_double_drawer.png new file mode 100644 index 00000000..2d224f3b Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_double_drawer.png differ diff --git a/public/textures/mcwfurnitures/cherry_double_drawer_counter.png b/public/textures/mcwfurnitures/cherry_double_drawer_counter.png new file mode 100644 index 00000000..618990a4 Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_double_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/cherry_double_kitchen_cabinet.png b/public/textures/mcwfurnitures/cherry_double_kitchen_cabinet.png new file mode 100644 index 00000000..f9f64cf3 Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/cherry_double_wardrobe.png b/public/textures/mcwfurnitures/cherry_double_wardrobe.png new file mode 100644 index 00000000..996798d0 Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_double_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/cherry_drawer.png b/public/textures/mcwfurnitures/cherry_drawer.png new file mode 100644 index 00000000..ec255622 Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_drawer.png differ diff --git a/public/textures/mcwfurnitures/cherry_drawer_counter.png b/public/textures/mcwfurnitures/cherry_drawer_counter.png new file mode 100644 index 00000000..ffa6f01c Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/cherry_end_table.png b/public/textures/mcwfurnitures/cherry_end_table.png new file mode 100644 index 00000000..46ebd215 Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_end_table.png differ diff --git a/public/textures/mcwfurnitures/cherry_glass_kitchen_cabinet.png b/public/textures/mcwfurnitures/cherry_glass_kitchen_cabinet.png new file mode 100644 index 00000000..8c2bc755 Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/cherry_glass_table.png b/public/textures/mcwfurnitures/cherry_glass_table.png new file mode 100644 index 00000000..43b92a1b Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_glass_table.png differ diff --git a/public/textures/mcwfurnitures/cherry_kitchen_cabinet.png b/public/textures/mcwfurnitures/cherry_kitchen_cabinet.png new file mode 100644 index 00000000..5deba609 Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/cherry_large_drawer.png b/public/textures/mcwfurnitures/cherry_large_drawer.png new file mode 100644 index 00000000..92608b8e Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_large_drawer.png differ diff --git a/public/textures/mcwfurnitures/cherry_lower_bookshelf_drawer.png b/public/textures/mcwfurnitures/cherry_lower_bookshelf_drawer.png new file mode 100644 index 00000000..1527f78e Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/cherry_lower_triple_drawer.png b/public/textures/mcwfurnitures/cherry_lower_triple_drawer.png new file mode 100644 index 00000000..2b6ed270 Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_lower_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/cherry_modern_chair.png b/public/textures/mcwfurnitures/cherry_modern_chair.png new file mode 100644 index 00000000..bf2bb698 Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_modern_chair.png differ diff --git a/public/textures/mcwfurnitures/cherry_modern_desk.png b/public/textures/mcwfurnitures/cherry_modern_desk.png new file mode 100644 index 00000000..d87aebec Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_modern_desk.png differ diff --git a/public/textures/mcwfurnitures/cherry_modern_wardrobe.png b/public/textures/mcwfurnitures/cherry_modern_wardrobe.png new file mode 100644 index 00000000..3cc2786f Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_modern_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/cherry_stool_chair.png b/public/textures/mcwfurnitures/cherry_stool_chair.png new file mode 100644 index 00000000..9ae9a0ff Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_stool_chair.png differ diff --git a/public/textures/mcwfurnitures/cherry_striped_chair.png b/public/textures/mcwfurnitures/cherry_striped_chair.png new file mode 100644 index 00000000..2eca518d Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_striped_chair.png differ diff --git a/public/textures/mcwfurnitures/cherry_table.png b/public/textures/mcwfurnitures/cherry_table.png new file mode 100644 index 00000000..bd301441 Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_table.png differ diff --git a/public/textures/mcwfurnitures/cherry_triple_drawer.png b/public/textures/mcwfurnitures/cherry_triple_drawer.png new file mode 100644 index 00000000..29411d60 Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/cherry_wardrobe.png b/public/textures/mcwfurnitures/cherry_wardrobe.png new file mode 100644 index 00000000..d29372ee Binary files /dev/null and b/public/textures/mcwfurnitures/cherry_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/crimson_bookshelf.png b/public/textures/mcwfurnitures/crimson_bookshelf.png new file mode 100644 index 00000000..c638aa8a Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_bookshelf.png differ diff --git a/public/textures/mcwfurnitures/crimson_bookshelf_cupboard.png b/public/textures/mcwfurnitures/crimson_bookshelf_cupboard.png new file mode 100644 index 00000000..b5573a16 Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_bookshelf_cupboard.png differ diff --git a/public/textures/mcwfurnitures/crimson_bookshelf_drawer.png b/public/textures/mcwfurnitures/crimson_bookshelf_drawer.png new file mode 100644 index 00000000..8832ce4f Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/crimson_chair.png b/public/textures/mcwfurnitures/crimson_chair.png new file mode 100644 index 00000000..87411853 Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_chair.png differ diff --git a/public/textures/mcwfurnitures/crimson_coffee_table.png b/public/textures/mcwfurnitures/crimson_coffee_table.png new file mode 100644 index 00000000..fcb011da Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_coffee_table.png differ diff --git a/public/textures/mcwfurnitures/crimson_counter.png b/public/textures/mcwfurnitures/crimson_counter.png new file mode 100644 index 00000000..7f4393a1 Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_counter.png differ diff --git a/public/textures/mcwfurnitures/crimson_covered_desk.png b/public/textures/mcwfurnitures/crimson_covered_desk.png new file mode 100644 index 00000000..1449ac3d Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_covered_desk.png differ diff --git a/public/textures/mcwfurnitures/crimson_cupboard_counter.png b/public/textures/mcwfurnitures/crimson_cupboard_counter.png new file mode 100644 index 00000000..c7cae30d Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_cupboard_counter.png differ diff --git a/public/textures/mcwfurnitures/crimson_desk.png b/public/textures/mcwfurnitures/crimson_desk.png new file mode 100644 index 00000000..4b2650ad Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_desk.png differ diff --git a/public/textures/mcwfurnitures/crimson_double_drawer.png b/public/textures/mcwfurnitures/crimson_double_drawer.png new file mode 100644 index 00000000..33517c63 Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_double_drawer.png differ diff --git a/public/textures/mcwfurnitures/crimson_double_drawer_counter.png b/public/textures/mcwfurnitures/crimson_double_drawer_counter.png new file mode 100644 index 00000000..c40a483e Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_double_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/crimson_double_kitchen_cabinet.png b/public/textures/mcwfurnitures/crimson_double_kitchen_cabinet.png new file mode 100644 index 00000000..7294272f Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/crimson_double_wardrobe.png b/public/textures/mcwfurnitures/crimson_double_wardrobe.png new file mode 100644 index 00000000..dac7fc1c Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_double_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/crimson_drawer.png b/public/textures/mcwfurnitures/crimson_drawer.png new file mode 100644 index 00000000..3a8beaff Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_drawer.png differ diff --git a/public/textures/mcwfurnitures/crimson_drawer_counter.png b/public/textures/mcwfurnitures/crimson_drawer_counter.png new file mode 100644 index 00000000..8f3cb5be Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/crimson_end_table.png b/public/textures/mcwfurnitures/crimson_end_table.png new file mode 100644 index 00000000..0ed2a1fb Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_end_table.png differ diff --git a/public/textures/mcwfurnitures/crimson_glass_kitchen_cabinet.png b/public/textures/mcwfurnitures/crimson_glass_kitchen_cabinet.png new file mode 100644 index 00000000..282f3d97 Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/crimson_glass_table.png b/public/textures/mcwfurnitures/crimson_glass_table.png new file mode 100644 index 00000000..abeda42a Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_glass_table.png differ diff --git a/public/textures/mcwfurnitures/crimson_kitchen_cabinet.png b/public/textures/mcwfurnitures/crimson_kitchen_cabinet.png new file mode 100644 index 00000000..18506364 Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/crimson_large_drawer.png b/public/textures/mcwfurnitures/crimson_large_drawer.png new file mode 100644 index 00000000..481237a8 Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_large_drawer.png differ diff --git a/public/textures/mcwfurnitures/crimson_lower_bookshelf_drawer.png b/public/textures/mcwfurnitures/crimson_lower_bookshelf_drawer.png new file mode 100644 index 00000000..c927f64e Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/crimson_lower_triple_drawer.png b/public/textures/mcwfurnitures/crimson_lower_triple_drawer.png new file mode 100644 index 00000000..c68e1c9c Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_lower_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/crimson_modern_chair.png b/public/textures/mcwfurnitures/crimson_modern_chair.png new file mode 100644 index 00000000..c288c270 Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_modern_chair.png differ diff --git a/public/textures/mcwfurnitures/crimson_modern_desk.png b/public/textures/mcwfurnitures/crimson_modern_desk.png new file mode 100644 index 00000000..5d6346b6 Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_modern_desk.png differ diff --git a/public/textures/mcwfurnitures/crimson_modern_wardrobe.png b/public/textures/mcwfurnitures/crimson_modern_wardrobe.png new file mode 100644 index 00000000..6357ad67 Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_modern_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/crimson_stool_chair.png b/public/textures/mcwfurnitures/crimson_stool_chair.png new file mode 100644 index 00000000..545299fc Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_stool_chair.png differ diff --git a/public/textures/mcwfurnitures/crimson_striped_chair.png b/public/textures/mcwfurnitures/crimson_striped_chair.png new file mode 100644 index 00000000..f600e2ea Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_striped_chair.png differ diff --git a/public/textures/mcwfurnitures/crimson_table.png b/public/textures/mcwfurnitures/crimson_table.png new file mode 100644 index 00000000..e0cf6795 Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_table.png differ diff --git a/public/textures/mcwfurnitures/crimson_triple_drawer.png b/public/textures/mcwfurnitures/crimson_triple_drawer.png new file mode 100644 index 00000000..d80756ad Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/crimson_wardrobe.png b/public/textures/mcwfurnitures/crimson_wardrobe.png new file mode 100644 index 00000000..fcb7695b Binary files /dev/null and b/public/textures/mcwfurnitures/crimson_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_bookshelf.png b/public/textures/mcwfurnitures/dark_oak_bookshelf.png new file mode 100644 index 00000000..f97901e9 Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_bookshelf.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_bookshelf_cupboard.png b/public/textures/mcwfurnitures/dark_oak_bookshelf_cupboard.png new file mode 100644 index 00000000..95e99267 Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_bookshelf_cupboard.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_bookshelf_drawer.png b/public/textures/mcwfurnitures/dark_oak_bookshelf_drawer.png new file mode 100644 index 00000000..406a43ec Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_chair.png b/public/textures/mcwfurnitures/dark_oak_chair.png new file mode 100644 index 00000000..0b6b7155 Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_chair.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_coffee_table.png b/public/textures/mcwfurnitures/dark_oak_coffee_table.png new file mode 100644 index 00000000..b3374202 Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_coffee_table.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_counter.png b/public/textures/mcwfurnitures/dark_oak_counter.png new file mode 100644 index 00000000..a073f1c6 Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_counter.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_covered_desk.png b/public/textures/mcwfurnitures/dark_oak_covered_desk.png new file mode 100644 index 00000000..34da209b Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_covered_desk.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_cupboard_counter.png b/public/textures/mcwfurnitures/dark_oak_cupboard_counter.png new file mode 100644 index 00000000..37a806df Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_cupboard_counter.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_desk.png b/public/textures/mcwfurnitures/dark_oak_desk.png new file mode 100644 index 00000000..da792808 Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_desk.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_double_drawer.png b/public/textures/mcwfurnitures/dark_oak_double_drawer.png new file mode 100644 index 00000000..f1ae0d48 Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_double_drawer.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_double_drawer_counter.png b/public/textures/mcwfurnitures/dark_oak_double_drawer_counter.png new file mode 100644 index 00000000..f0914e8c Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_double_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_double_kitchen_cabinet.png b/public/textures/mcwfurnitures/dark_oak_double_kitchen_cabinet.png new file mode 100644 index 00000000..f69c9856 Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_double_wardrobe.png b/public/textures/mcwfurnitures/dark_oak_double_wardrobe.png new file mode 100644 index 00000000..7bc96f05 Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_double_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_drawer.png b/public/textures/mcwfurnitures/dark_oak_drawer.png new file mode 100644 index 00000000..2c42b20f Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_drawer.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_drawer_counter.png b/public/textures/mcwfurnitures/dark_oak_drawer_counter.png new file mode 100644 index 00000000..ffe02d8c Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_end_table.png b/public/textures/mcwfurnitures/dark_oak_end_table.png new file mode 100644 index 00000000..b0b628f2 Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_end_table.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_glass_kitchen_cabinet.png b/public/textures/mcwfurnitures/dark_oak_glass_kitchen_cabinet.png new file mode 100644 index 00000000..f5af90c1 Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_glass_table.png b/public/textures/mcwfurnitures/dark_oak_glass_table.png new file mode 100644 index 00000000..9e6f4363 Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_glass_table.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_kitchen_cabinet.png b/public/textures/mcwfurnitures/dark_oak_kitchen_cabinet.png new file mode 100644 index 00000000..f75335c3 Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_large_drawer.png b/public/textures/mcwfurnitures/dark_oak_large_drawer.png new file mode 100644 index 00000000..f41d9b01 Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_large_drawer.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_lower_bookshelf_drawer.png b/public/textures/mcwfurnitures/dark_oak_lower_bookshelf_drawer.png new file mode 100644 index 00000000..2ee318f9 Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_lower_triple_drawer.png b/public/textures/mcwfurnitures/dark_oak_lower_triple_drawer.png new file mode 100644 index 00000000..109f113c Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_lower_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_modern_chair.png b/public/textures/mcwfurnitures/dark_oak_modern_chair.png new file mode 100644 index 00000000..cada83be Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_modern_chair.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_modern_desk.png b/public/textures/mcwfurnitures/dark_oak_modern_desk.png new file mode 100644 index 00000000..48d44bd5 Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_modern_desk.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_modern_wardrobe.png b/public/textures/mcwfurnitures/dark_oak_modern_wardrobe.png new file mode 100644 index 00000000..f8fbb06d Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_modern_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_stool_chair.png b/public/textures/mcwfurnitures/dark_oak_stool_chair.png new file mode 100644 index 00000000..7784ad0a Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_stool_chair.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_striped_chair.png b/public/textures/mcwfurnitures/dark_oak_striped_chair.png new file mode 100644 index 00000000..74573c87 Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_striped_chair.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_table.png b/public/textures/mcwfurnitures/dark_oak_table.png new file mode 100644 index 00000000..324c78cb Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_table.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_triple_drawer.png b/public/textures/mcwfurnitures/dark_oak_triple_drawer.png new file mode 100644 index 00000000..68f03914 Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/dark_oak_wardrobe.png b/public/textures/mcwfurnitures/dark_oak_wardrobe.png new file mode 100644 index 00000000..64f4d76e Binary files /dev/null and b/public/textures/mcwfurnitures/dark_oak_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/jungle_bookshelf.png b/public/textures/mcwfurnitures/jungle_bookshelf.png new file mode 100644 index 00000000..446b1a3b Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_bookshelf.png differ diff --git a/public/textures/mcwfurnitures/jungle_bookshelf_cupboard.png b/public/textures/mcwfurnitures/jungle_bookshelf_cupboard.png new file mode 100644 index 00000000..9127f4dc Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_bookshelf_cupboard.png differ diff --git a/public/textures/mcwfurnitures/jungle_bookshelf_drawer.png b/public/textures/mcwfurnitures/jungle_bookshelf_drawer.png new file mode 100644 index 00000000..db61b5e3 Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/jungle_chair.png b/public/textures/mcwfurnitures/jungle_chair.png new file mode 100644 index 00000000..c9df746f Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_chair.png differ diff --git a/public/textures/mcwfurnitures/jungle_coffee_table.png b/public/textures/mcwfurnitures/jungle_coffee_table.png new file mode 100644 index 00000000..89697cc9 Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_coffee_table.png differ diff --git a/public/textures/mcwfurnitures/jungle_counter.png b/public/textures/mcwfurnitures/jungle_counter.png new file mode 100644 index 00000000..18a68413 Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_counter.png differ diff --git a/public/textures/mcwfurnitures/jungle_covered_desk.png b/public/textures/mcwfurnitures/jungle_covered_desk.png new file mode 100644 index 00000000..46fe6a7f Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_covered_desk.png differ diff --git a/public/textures/mcwfurnitures/jungle_cupboard_counter.png b/public/textures/mcwfurnitures/jungle_cupboard_counter.png new file mode 100644 index 00000000..671967f0 Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_cupboard_counter.png differ diff --git a/public/textures/mcwfurnitures/jungle_desk.png b/public/textures/mcwfurnitures/jungle_desk.png new file mode 100644 index 00000000..9a736df9 Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_desk.png differ diff --git a/public/textures/mcwfurnitures/jungle_double_drawer.png b/public/textures/mcwfurnitures/jungle_double_drawer.png new file mode 100644 index 00000000..c6c1e2df Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_double_drawer.png differ diff --git a/public/textures/mcwfurnitures/jungle_double_drawer_counter.png b/public/textures/mcwfurnitures/jungle_double_drawer_counter.png new file mode 100644 index 00000000..16f0ad2c Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_double_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/jungle_double_kitchen_cabinet.png b/public/textures/mcwfurnitures/jungle_double_kitchen_cabinet.png new file mode 100644 index 00000000..e93ad2f1 Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/jungle_double_wardrobe.png b/public/textures/mcwfurnitures/jungle_double_wardrobe.png new file mode 100644 index 00000000..ef30c37b Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_double_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/jungle_drawer.png b/public/textures/mcwfurnitures/jungle_drawer.png new file mode 100644 index 00000000..a5ffe76b Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_drawer.png differ diff --git a/public/textures/mcwfurnitures/jungle_drawer_counter.png b/public/textures/mcwfurnitures/jungle_drawer_counter.png new file mode 100644 index 00000000..d112da2e Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/jungle_end_table.png b/public/textures/mcwfurnitures/jungle_end_table.png new file mode 100644 index 00000000..8bff77d6 Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_end_table.png differ diff --git a/public/textures/mcwfurnitures/jungle_glass_kitchen_cabinet.png b/public/textures/mcwfurnitures/jungle_glass_kitchen_cabinet.png new file mode 100644 index 00000000..cafeb3e3 Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/jungle_glass_table.png b/public/textures/mcwfurnitures/jungle_glass_table.png new file mode 100644 index 00000000..f914409a Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_glass_table.png differ diff --git a/public/textures/mcwfurnitures/jungle_kitchen_cabinet.png b/public/textures/mcwfurnitures/jungle_kitchen_cabinet.png new file mode 100644 index 00000000..95ae6a37 Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/jungle_large_drawer.png b/public/textures/mcwfurnitures/jungle_large_drawer.png new file mode 100644 index 00000000..530f6f5b Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_large_drawer.png differ diff --git a/public/textures/mcwfurnitures/jungle_lower_bookshelf_drawer.png b/public/textures/mcwfurnitures/jungle_lower_bookshelf_drawer.png new file mode 100644 index 00000000..391d4841 Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/jungle_lower_triple_drawer.png b/public/textures/mcwfurnitures/jungle_lower_triple_drawer.png new file mode 100644 index 00000000..b6a11ce3 Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_lower_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/jungle_modern_chair.png b/public/textures/mcwfurnitures/jungle_modern_chair.png new file mode 100644 index 00000000..a048c269 Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_modern_chair.png differ diff --git a/public/textures/mcwfurnitures/jungle_modern_desk.png b/public/textures/mcwfurnitures/jungle_modern_desk.png new file mode 100644 index 00000000..5b90ef28 Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_modern_desk.png differ diff --git a/public/textures/mcwfurnitures/jungle_modern_wardrobe.png b/public/textures/mcwfurnitures/jungle_modern_wardrobe.png new file mode 100644 index 00000000..066e0681 Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_modern_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/jungle_stool_chair.png b/public/textures/mcwfurnitures/jungle_stool_chair.png new file mode 100644 index 00000000..d82c0eea Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_stool_chair.png differ diff --git a/public/textures/mcwfurnitures/jungle_striped_chair.png b/public/textures/mcwfurnitures/jungle_striped_chair.png new file mode 100644 index 00000000..1b21eb2e Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_striped_chair.png differ diff --git a/public/textures/mcwfurnitures/jungle_table.png b/public/textures/mcwfurnitures/jungle_table.png new file mode 100644 index 00000000..2d924602 Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_table.png differ diff --git a/public/textures/mcwfurnitures/jungle_triple_drawer.png b/public/textures/mcwfurnitures/jungle_triple_drawer.png new file mode 100644 index 00000000..0dc9354c Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/jungle_wardrobe.png b/public/textures/mcwfurnitures/jungle_wardrobe.png new file mode 100644 index 00000000..8bc51294 Binary files /dev/null and b/public/textures/mcwfurnitures/jungle_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/mangrove_bookshelf.png b/public/textures/mcwfurnitures/mangrove_bookshelf.png new file mode 100644 index 00000000..55bee86d Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_bookshelf.png differ diff --git a/public/textures/mcwfurnitures/mangrove_bookshelf_cupboard.png b/public/textures/mcwfurnitures/mangrove_bookshelf_cupboard.png new file mode 100644 index 00000000..2d5a7bb7 Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_bookshelf_cupboard.png differ diff --git a/public/textures/mcwfurnitures/mangrove_bookshelf_drawer.png b/public/textures/mcwfurnitures/mangrove_bookshelf_drawer.png new file mode 100644 index 00000000..ebeba458 Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/mangrove_chair.png b/public/textures/mcwfurnitures/mangrove_chair.png new file mode 100644 index 00000000..5e9e7190 Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_chair.png differ diff --git a/public/textures/mcwfurnitures/mangrove_coffee_table.png b/public/textures/mcwfurnitures/mangrove_coffee_table.png new file mode 100644 index 00000000..7aaeea81 Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_coffee_table.png differ diff --git a/public/textures/mcwfurnitures/mangrove_counter.png b/public/textures/mcwfurnitures/mangrove_counter.png new file mode 100644 index 00000000..539e6469 Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_counter.png differ diff --git a/public/textures/mcwfurnitures/mangrove_covered_desk.png b/public/textures/mcwfurnitures/mangrove_covered_desk.png new file mode 100644 index 00000000..491b0b18 Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_covered_desk.png differ diff --git a/public/textures/mcwfurnitures/mangrove_cupboard_counter.png b/public/textures/mcwfurnitures/mangrove_cupboard_counter.png new file mode 100644 index 00000000..1f574709 Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_cupboard_counter.png differ diff --git a/public/textures/mcwfurnitures/mangrove_desk.png b/public/textures/mcwfurnitures/mangrove_desk.png new file mode 100644 index 00000000..a47db8a2 Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_desk.png differ diff --git a/public/textures/mcwfurnitures/mangrove_double_drawer.png b/public/textures/mcwfurnitures/mangrove_double_drawer.png new file mode 100644 index 00000000..367c3807 Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_double_drawer.png differ diff --git a/public/textures/mcwfurnitures/mangrove_double_drawer_counter.png b/public/textures/mcwfurnitures/mangrove_double_drawer_counter.png new file mode 100644 index 00000000..5ec11240 Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_double_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/mangrove_double_kitchen_cabinet.png b/public/textures/mcwfurnitures/mangrove_double_kitchen_cabinet.png new file mode 100644 index 00000000..ac951cd2 Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/mangrove_double_wardrobe.png b/public/textures/mcwfurnitures/mangrove_double_wardrobe.png new file mode 100644 index 00000000..4226e3ff Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_double_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/mangrove_drawer.png b/public/textures/mcwfurnitures/mangrove_drawer.png new file mode 100644 index 00000000..653bdbc0 Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_drawer.png differ diff --git a/public/textures/mcwfurnitures/mangrove_drawer_counter.png b/public/textures/mcwfurnitures/mangrove_drawer_counter.png new file mode 100644 index 00000000..1e9376c2 Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/mangrove_end_table.png b/public/textures/mcwfurnitures/mangrove_end_table.png new file mode 100644 index 00000000..212efce3 Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_end_table.png differ diff --git a/public/textures/mcwfurnitures/mangrove_glass_kitchen_cabinet.png b/public/textures/mcwfurnitures/mangrove_glass_kitchen_cabinet.png new file mode 100644 index 00000000..e43c9638 Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/mangrove_glass_table.png b/public/textures/mcwfurnitures/mangrove_glass_table.png new file mode 100644 index 00000000..170fa14a Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_glass_table.png differ diff --git a/public/textures/mcwfurnitures/mangrove_kitchen_cabinet.png b/public/textures/mcwfurnitures/mangrove_kitchen_cabinet.png new file mode 100644 index 00000000..0a99cef2 Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/mangrove_large_drawer.png b/public/textures/mcwfurnitures/mangrove_large_drawer.png new file mode 100644 index 00000000..8b0c3f99 Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_large_drawer.png differ diff --git a/public/textures/mcwfurnitures/mangrove_lower_bookshelf_drawer.png b/public/textures/mcwfurnitures/mangrove_lower_bookshelf_drawer.png new file mode 100644 index 00000000..30360f56 Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/mangrove_lower_triple_drawer.png b/public/textures/mcwfurnitures/mangrove_lower_triple_drawer.png new file mode 100644 index 00000000..8ffc4059 Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_lower_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/mangrove_modern_chair.png b/public/textures/mcwfurnitures/mangrove_modern_chair.png new file mode 100644 index 00000000..1b04b2bd Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_modern_chair.png differ diff --git a/public/textures/mcwfurnitures/mangrove_modern_desk.png b/public/textures/mcwfurnitures/mangrove_modern_desk.png new file mode 100644 index 00000000..4f0a175d Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_modern_desk.png differ diff --git a/public/textures/mcwfurnitures/mangrove_modern_wardrobe.png b/public/textures/mcwfurnitures/mangrove_modern_wardrobe.png new file mode 100644 index 00000000..bf54ea8a Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_modern_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/mangrove_stool_chair.png b/public/textures/mcwfurnitures/mangrove_stool_chair.png new file mode 100644 index 00000000..d1368d37 Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_stool_chair.png differ diff --git a/public/textures/mcwfurnitures/mangrove_striped_chair.png b/public/textures/mcwfurnitures/mangrove_striped_chair.png new file mode 100644 index 00000000..8129f911 Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_striped_chair.png differ diff --git a/public/textures/mcwfurnitures/mangrove_table.png b/public/textures/mcwfurnitures/mangrove_table.png new file mode 100644 index 00000000..dc0236bf Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_table.png differ diff --git a/public/textures/mcwfurnitures/mangrove_triple_drawer.png b/public/textures/mcwfurnitures/mangrove_triple_drawer.png new file mode 100644 index 00000000..ec31e2e1 Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/mangrove_wardrobe.png b/public/textures/mcwfurnitures/mangrove_wardrobe.png new file mode 100644 index 00000000..de096bc0 Binary files /dev/null and b/public/textures/mcwfurnitures/mangrove_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/oak_bookshelf.png b/public/textures/mcwfurnitures/oak_bookshelf.png new file mode 100644 index 00000000..57ffbd6b Binary files /dev/null and b/public/textures/mcwfurnitures/oak_bookshelf.png differ diff --git a/public/textures/mcwfurnitures/oak_bookshelf_cupboard.png b/public/textures/mcwfurnitures/oak_bookshelf_cupboard.png new file mode 100644 index 00000000..5951a6f1 Binary files /dev/null and b/public/textures/mcwfurnitures/oak_bookshelf_cupboard.png differ diff --git a/public/textures/mcwfurnitures/oak_bookshelf_drawer.png b/public/textures/mcwfurnitures/oak_bookshelf_drawer.png new file mode 100644 index 00000000..5aef8610 Binary files /dev/null and b/public/textures/mcwfurnitures/oak_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/oak_chair.png b/public/textures/mcwfurnitures/oak_chair.png new file mode 100644 index 00000000..f8206965 Binary files /dev/null and b/public/textures/mcwfurnitures/oak_chair.png differ diff --git a/public/textures/mcwfurnitures/oak_coffee_table.png b/public/textures/mcwfurnitures/oak_coffee_table.png new file mode 100644 index 00000000..ca3e0ec6 Binary files /dev/null and b/public/textures/mcwfurnitures/oak_coffee_table.png differ diff --git a/public/textures/mcwfurnitures/oak_counter.png b/public/textures/mcwfurnitures/oak_counter.png new file mode 100644 index 00000000..854b3062 Binary files /dev/null and b/public/textures/mcwfurnitures/oak_counter.png differ diff --git a/public/textures/mcwfurnitures/oak_covered_desk.png b/public/textures/mcwfurnitures/oak_covered_desk.png new file mode 100644 index 00000000..3bfac2d3 Binary files /dev/null and b/public/textures/mcwfurnitures/oak_covered_desk.png differ diff --git a/public/textures/mcwfurnitures/oak_cupboard_counter.png b/public/textures/mcwfurnitures/oak_cupboard_counter.png new file mode 100644 index 00000000..ffaac4b5 Binary files /dev/null and b/public/textures/mcwfurnitures/oak_cupboard_counter.png differ diff --git a/public/textures/mcwfurnitures/oak_desk.png b/public/textures/mcwfurnitures/oak_desk.png new file mode 100644 index 00000000..de92037f Binary files /dev/null and b/public/textures/mcwfurnitures/oak_desk.png differ diff --git a/public/textures/mcwfurnitures/oak_double_drawer.png b/public/textures/mcwfurnitures/oak_double_drawer.png new file mode 100644 index 00000000..43c11d60 Binary files /dev/null and b/public/textures/mcwfurnitures/oak_double_drawer.png differ diff --git a/public/textures/mcwfurnitures/oak_double_drawer_counter.png b/public/textures/mcwfurnitures/oak_double_drawer_counter.png new file mode 100644 index 00000000..36178179 Binary files /dev/null and b/public/textures/mcwfurnitures/oak_double_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/oak_double_kitchen_cabinet.png b/public/textures/mcwfurnitures/oak_double_kitchen_cabinet.png new file mode 100644 index 00000000..90cd703d Binary files /dev/null and b/public/textures/mcwfurnitures/oak_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/oak_double_wardrobe.png b/public/textures/mcwfurnitures/oak_double_wardrobe.png new file mode 100644 index 00000000..c6a494c7 Binary files /dev/null and b/public/textures/mcwfurnitures/oak_double_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/oak_drawer.png b/public/textures/mcwfurnitures/oak_drawer.png new file mode 100644 index 00000000..c3b6b5cc Binary files /dev/null and b/public/textures/mcwfurnitures/oak_drawer.png differ diff --git a/public/textures/mcwfurnitures/oak_drawer_counter.png b/public/textures/mcwfurnitures/oak_drawer_counter.png new file mode 100644 index 00000000..1bbb5234 Binary files /dev/null and b/public/textures/mcwfurnitures/oak_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/oak_end_table.png b/public/textures/mcwfurnitures/oak_end_table.png new file mode 100644 index 00000000..309c1690 Binary files /dev/null and b/public/textures/mcwfurnitures/oak_end_table.png differ diff --git a/public/textures/mcwfurnitures/oak_glass_kitchen_cabinet.png b/public/textures/mcwfurnitures/oak_glass_kitchen_cabinet.png new file mode 100644 index 00000000..512c0b10 Binary files /dev/null and b/public/textures/mcwfurnitures/oak_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/oak_glass_table.png b/public/textures/mcwfurnitures/oak_glass_table.png new file mode 100644 index 00000000..55281d3a Binary files /dev/null and b/public/textures/mcwfurnitures/oak_glass_table.png differ diff --git a/public/textures/mcwfurnitures/oak_kitchen_cabinet.png b/public/textures/mcwfurnitures/oak_kitchen_cabinet.png new file mode 100644 index 00000000..fd07c5fb Binary files /dev/null and b/public/textures/mcwfurnitures/oak_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/oak_large_drawer.png b/public/textures/mcwfurnitures/oak_large_drawer.png new file mode 100644 index 00000000..3842e1c7 Binary files /dev/null and b/public/textures/mcwfurnitures/oak_large_drawer.png differ diff --git a/public/textures/mcwfurnitures/oak_lower_bookshelf_drawer.png b/public/textures/mcwfurnitures/oak_lower_bookshelf_drawer.png new file mode 100644 index 00000000..f7242f35 Binary files /dev/null and b/public/textures/mcwfurnitures/oak_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/oak_lower_triple_drawer.png b/public/textures/mcwfurnitures/oak_lower_triple_drawer.png new file mode 100644 index 00000000..5cfc22d2 Binary files /dev/null and b/public/textures/mcwfurnitures/oak_lower_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/oak_modern_chair.png b/public/textures/mcwfurnitures/oak_modern_chair.png new file mode 100644 index 00000000..45fdb32c Binary files /dev/null and b/public/textures/mcwfurnitures/oak_modern_chair.png differ diff --git a/public/textures/mcwfurnitures/oak_modern_desk.png b/public/textures/mcwfurnitures/oak_modern_desk.png new file mode 100644 index 00000000..b956c06c Binary files /dev/null and b/public/textures/mcwfurnitures/oak_modern_desk.png differ diff --git a/public/textures/mcwfurnitures/oak_modern_wardrobe.png b/public/textures/mcwfurnitures/oak_modern_wardrobe.png new file mode 100644 index 00000000..5039557c Binary files /dev/null and b/public/textures/mcwfurnitures/oak_modern_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/oak_stool_chair.png b/public/textures/mcwfurnitures/oak_stool_chair.png new file mode 100644 index 00000000..411f40df Binary files /dev/null and b/public/textures/mcwfurnitures/oak_stool_chair.png differ diff --git a/public/textures/mcwfurnitures/oak_striped_chair.png b/public/textures/mcwfurnitures/oak_striped_chair.png new file mode 100644 index 00000000..eaa09910 Binary files /dev/null and b/public/textures/mcwfurnitures/oak_striped_chair.png differ diff --git a/public/textures/mcwfurnitures/oak_table.png b/public/textures/mcwfurnitures/oak_table.png new file mode 100644 index 00000000..289bc4e5 Binary files /dev/null and b/public/textures/mcwfurnitures/oak_table.png differ diff --git a/public/textures/mcwfurnitures/oak_triple_drawer.png b/public/textures/mcwfurnitures/oak_triple_drawer.png new file mode 100644 index 00000000..0005bd10 Binary files /dev/null and b/public/textures/mcwfurnitures/oak_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/oak_wardrobe.png b/public/textures/mcwfurnitures/oak_wardrobe.png new file mode 100644 index 00000000..92a92869 Binary files /dev/null and b/public/textures/mcwfurnitures/oak_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/spruce_bookshelf.png b/public/textures/mcwfurnitures/spruce_bookshelf.png new file mode 100644 index 00000000..de3f66d0 Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_bookshelf.png differ diff --git a/public/textures/mcwfurnitures/spruce_bookshelf_cupboard.png b/public/textures/mcwfurnitures/spruce_bookshelf_cupboard.png new file mode 100644 index 00000000..9365ae8c Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_bookshelf_cupboard.png differ diff --git a/public/textures/mcwfurnitures/spruce_bookshelf_drawer.png b/public/textures/mcwfurnitures/spruce_bookshelf_drawer.png new file mode 100644 index 00000000..79dfd93a Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/spruce_chair.png b/public/textures/mcwfurnitures/spruce_chair.png new file mode 100644 index 00000000..a8b3a3ea Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_chair.png differ diff --git a/public/textures/mcwfurnitures/spruce_coffee_table.png b/public/textures/mcwfurnitures/spruce_coffee_table.png new file mode 100644 index 00000000..570db906 Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_coffee_table.png differ diff --git a/public/textures/mcwfurnitures/spruce_counter.png b/public/textures/mcwfurnitures/spruce_counter.png new file mode 100644 index 00000000..c0603a08 Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_counter.png differ diff --git a/public/textures/mcwfurnitures/spruce_covered_desk.png b/public/textures/mcwfurnitures/spruce_covered_desk.png new file mode 100644 index 00000000..2da28442 Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_covered_desk.png differ diff --git a/public/textures/mcwfurnitures/spruce_cupboard_counter.png b/public/textures/mcwfurnitures/spruce_cupboard_counter.png new file mode 100644 index 00000000..0eec9a68 Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_cupboard_counter.png differ diff --git a/public/textures/mcwfurnitures/spruce_desk.png b/public/textures/mcwfurnitures/spruce_desk.png new file mode 100644 index 00000000..25a5fa5b Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_desk.png differ diff --git a/public/textures/mcwfurnitures/spruce_double_drawer.png b/public/textures/mcwfurnitures/spruce_double_drawer.png new file mode 100644 index 00000000..2fb8ce74 Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_double_drawer.png differ diff --git a/public/textures/mcwfurnitures/spruce_double_drawer_counter.png b/public/textures/mcwfurnitures/spruce_double_drawer_counter.png new file mode 100644 index 00000000..840a00b2 Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_double_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/spruce_double_kitchen_cabinet.png b/public/textures/mcwfurnitures/spruce_double_kitchen_cabinet.png new file mode 100644 index 00000000..1943b770 Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/spruce_double_wardrobe.png b/public/textures/mcwfurnitures/spruce_double_wardrobe.png new file mode 100644 index 00000000..1e38ffe2 Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_double_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/spruce_drawer.png b/public/textures/mcwfurnitures/spruce_drawer.png new file mode 100644 index 00000000..d61758c7 Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_drawer.png differ diff --git a/public/textures/mcwfurnitures/spruce_drawer_counter.png b/public/textures/mcwfurnitures/spruce_drawer_counter.png new file mode 100644 index 00000000..333c25ac Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/spruce_end_table.png b/public/textures/mcwfurnitures/spruce_end_table.png new file mode 100644 index 00000000..e01f39eb Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_end_table.png differ diff --git a/public/textures/mcwfurnitures/spruce_glass_kitchen_cabinet.png b/public/textures/mcwfurnitures/spruce_glass_kitchen_cabinet.png new file mode 100644 index 00000000..5753a14e Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/spruce_glass_table.png b/public/textures/mcwfurnitures/spruce_glass_table.png new file mode 100644 index 00000000..135ad858 Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_glass_table.png differ diff --git a/public/textures/mcwfurnitures/spruce_kitchen_cabinet.png b/public/textures/mcwfurnitures/spruce_kitchen_cabinet.png new file mode 100644 index 00000000..83b2f6f6 Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/spruce_large_drawer.png b/public/textures/mcwfurnitures/spruce_large_drawer.png new file mode 100644 index 00000000..5bc8eb06 Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_large_drawer.png differ diff --git a/public/textures/mcwfurnitures/spruce_lower_bookshelf_drawer.png b/public/textures/mcwfurnitures/spruce_lower_bookshelf_drawer.png new file mode 100644 index 00000000..bf5ccf06 Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/spruce_lower_triple_drawer.png b/public/textures/mcwfurnitures/spruce_lower_triple_drawer.png new file mode 100644 index 00000000..3aef5d6e Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_lower_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/spruce_modern_chair.png b/public/textures/mcwfurnitures/spruce_modern_chair.png new file mode 100644 index 00000000..4b648cd8 Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_modern_chair.png differ diff --git a/public/textures/mcwfurnitures/spruce_modern_desk.png b/public/textures/mcwfurnitures/spruce_modern_desk.png new file mode 100644 index 00000000..3e74bb94 Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_modern_desk.png differ diff --git a/public/textures/mcwfurnitures/spruce_modern_wardrobe.png b/public/textures/mcwfurnitures/spruce_modern_wardrobe.png new file mode 100644 index 00000000..8325cd77 Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_modern_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/spruce_stool_chair.png b/public/textures/mcwfurnitures/spruce_stool_chair.png new file mode 100644 index 00000000..280e7dcc Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_stool_chair.png differ diff --git a/public/textures/mcwfurnitures/spruce_striped_chair.png b/public/textures/mcwfurnitures/spruce_striped_chair.png new file mode 100644 index 00000000..2ca360fb Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_striped_chair.png differ diff --git a/public/textures/mcwfurnitures/spruce_table.png b/public/textures/mcwfurnitures/spruce_table.png new file mode 100644 index 00000000..f40ba342 Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_table.png differ diff --git a/public/textures/mcwfurnitures/spruce_triple_drawer.png b/public/textures/mcwfurnitures/spruce_triple_drawer.png new file mode 100644 index 00000000..be92b735 Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/spruce_wardrobe.png b/public/textures/mcwfurnitures/spruce_wardrobe.png new file mode 100644 index 00000000..dd439e7c Binary files /dev/null and b/public/textures/mcwfurnitures/spruce_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_bookshelf.png b/public/textures/mcwfurnitures/stripped_acacia_bookshelf.png new file mode 100644 index 00000000..5988eb18 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_bookshelf.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_bookshelf_cupboard.png b/public/textures/mcwfurnitures/stripped_acacia_bookshelf_cupboard.png new file mode 100644 index 00000000..c74e4167 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_bookshelf_cupboard.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_bookshelf_drawer.png b/public/textures/mcwfurnitures/stripped_acacia_bookshelf_drawer.png new file mode 100644 index 00000000..d90e5bdd Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_chair.png b/public/textures/mcwfurnitures/stripped_acacia_chair.png new file mode 100644 index 00000000..5e95e4a3 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_coffee_table.png b/public/textures/mcwfurnitures/stripped_acacia_coffee_table.png new file mode 100644 index 00000000..3a858ea9 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_coffee_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_counter.png b/public/textures/mcwfurnitures/stripped_acacia_counter.png new file mode 100644 index 00000000..b3f085d5 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_covered_desk.png b/public/textures/mcwfurnitures/stripped_acacia_covered_desk.png new file mode 100644 index 00000000..6d87ea0a Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_covered_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_cupboard_counter.png b/public/textures/mcwfurnitures/stripped_acacia_cupboard_counter.png new file mode 100644 index 00000000..f768f2b9 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_cupboard_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_desk.png b/public/textures/mcwfurnitures/stripped_acacia_desk.png new file mode 100644 index 00000000..676adfcd Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_double_drawer.png b/public/textures/mcwfurnitures/stripped_acacia_double_drawer.png new file mode 100644 index 00000000..f70c7d00 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_double_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_double_drawer_counter.png b/public/textures/mcwfurnitures/stripped_acacia_double_drawer_counter.png new file mode 100644 index 00000000..83c4d506 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_double_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_double_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_acacia_double_kitchen_cabinet.png new file mode 100644 index 00000000..ec0af540 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_double_wardrobe.png b/public/textures/mcwfurnitures/stripped_acacia_double_wardrobe.png new file mode 100644 index 00000000..aff1dc6a Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_double_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_drawer.png b/public/textures/mcwfurnitures/stripped_acacia_drawer.png new file mode 100644 index 00000000..56df168f Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_drawer_counter.png b/public/textures/mcwfurnitures/stripped_acacia_drawer_counter.png new file mode 100644 index 00000000..c89e6f91 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_end_table.png b/public/textures/mcwfurnitures/stripped_acacia_end_table.png new file mode 100644 index 00000000..73e871e8 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_end_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_glass_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_acacia_glass_kitchen_cabinet.png new file mode 100644 index 00000000..07451b4d Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_glass_table.png b/public/textures/mcwfurnitures/stripped_acacia_glass_table.png new file mode 100644 index 00000000..41b86b94 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_glass_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_acacia_kitchen_cabinet.png new file mode 100644 index 00000000..7ef6de6d Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_large_drawer.png b/public/textures/mcwfurnitures/stripped_acacia_large_drawer.png new file mode 100644 index 00000000..e717e5b4 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_large_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_lower_bookshelf_drawer.png b/public/textures/mcwfurnitures/stripped_acacia_lower_bookshelf_drawer.png new file mode 100644 index 00000000..6c74eb8f Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_lower_triple_drawer.png b/public/textures/mcwfurnitures/stripped_acacia_lower_triple_drawer.png new file mode 100644 index 00000000..423db49a Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_lower_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_modern_chair.png b/public/textures/mcwfurnitures/stripped_acacia_modern_chair.png new file mode 100644 index 00000000..d4d235af Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_modern_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_modern_desk.png b/public/textures/mcwfurnitures/stripped_acacia_modern_desk.png new file mode 100644 index 00000000..85ac42ca Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_modern_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_modern_wardrobe.png b/public/textures/mcwfurnitures/stripped_acacia_modern_wardrobe.png new file mode 100644 index 00000000..32d62fdb Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_modern_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_stool_chair.png b/public/textures/mcwfurnitures/stripped_acacia_stool_chair.png new file mode 100644 index 00000000..9ceea836 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_stool_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_striped_chair.png b/public/textures/mcwfurnitures/stripped_acacia_striped_chair.png new file mode 100644 index 00000000..4cfd7e4c Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_striped_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_table.png b/public/textures/mcwfurnitures/stripped_acacia_table.png new file mode 100644 index 00000000..70f66008 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_triple_drawer.png b/public/textures/mcwfurnitures/stripped_acacia_triple_drawer.png new file mode 100644 index 00000000..f6b16dc9 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_acacia_wardrobe.png b/public/textures/mcwfurnitures/stripped_acacia_wardrobe.png new file mode 100644 index 00000000..fd3a1f0e Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_acacia_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_bookshelf.png b/public/textures/mcwfurnitures/stripped_birch_bookshelf.png new file mode 100644 index 00000000..e56f7432 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_bookshelf.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_bookshelf_cupboard.png b/public/textures/mcwfurnitures/stripped_birch_bookshelf_cupboard.png new file mode 100644 index 00000000..e4020087 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_bookshelf_cupboard.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_bookshelf_drawer.png b/public/textures/mcwfurnitures/stripped_birch_bookshelf_drawer.png new file mode 100644 index 00000000..75e77b4e Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_chair.png b/public/textures/mcwfurnitures/stripped_birch_chair.png new file mode 100644 index 00000000..c2e3f7dd Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_coffee_table.png b/public/textures/mcwfurnitures/stripped_birch_coffee_table.png new file mode 100644 index 00000000..d44b8bdf Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_coffee_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_counter.png b/public/textures/mcwfurnitures/stripped_birch_counter.png new file mode 100644 index 00000000..11812de9 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_covered_desk.png b/public/textures/mcwfurnitures/stripped_birch_covered_desk.png new file mode 100644 index 00000000..2d828257 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_covered_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_cupboard_counter.png b/public/textures/mcwfurnitures/stripped_birch_cupboard_counter.png new file mode 100644 index 00000000..dff0ebd8 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_cupboard_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_desk.png b/public/textures/mcwfurnitures/stripped_birch_desk.png new file mode 100644 index 00000000..5169d6bf Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_double_drawer.png b/public/textures/mcwfurnitures/stripped_birch_double_drawer.png new file mode 100644 index 00000000..5c022493 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_double_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_double_drawer_counter.png b/public/textures/mcwfurnitures/stripped_birch_double_drawer_counter.png new file mode 100644 index 00000000..fc15b552 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_double_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_double_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_birch_double_kitchen_cabinet.png new file mode 100644 index 00000000..9bfd884d Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_double_wardrobe.png b/public/textures/mcwfurnitures/stripped_birch_double_wardrobe.png new file mode 100644 index 00000000..a803abcb Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_double_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_drawer.png b/public/textures/mcwfurnitures/stripped_birch_drawer.png new file mode 100644 index 00000000..0b90f049 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_drawer_counter.png b/public/textures/mcwfurnitures/stripped_birch_drawer_counter.png new file mode 100644 index 00000000..de9cb849 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_end_table.png b/public/textures/mcwfurnitures/stripped_birch_end_table.png new file mode 100644 index 00000000..5e7cdd40 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_end_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_glass_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_birch_glass_kitchen_cabinet.png new file mode 100644 index 00000000..1e248bab Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_glass_table.png b/public/textures/mcwfurnitures/stripped_birch_glass_table.png new file mode 100644 index 00000000..531d503c Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_glass_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_birch_kitchen_cabinet.png new file mode 100644 index 00000000..4798b814 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_large_drawer.png b/public/textures/mcwfurnitures/stripped_birch_large_drawer.png new file mode 100644 index 00000000..c1072f49 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_large_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_lower_bookshelf_drawer.png b/public/textures/mcwfurnitures/stripped_birch_lower_bookshelf_drawer.png new file mode 100644 index 00000000..4bb8150c Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_lower_triple_drawer.png b/public/textures/mcwfurnitures/stripped_birch_lower_triple_drawer.png new file mode 100644 index 00000000..41ff3e0f Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_lower_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_modern_chair.png b/public/textures/mcwfurnitures/stripped_birch_modern_chair.png new file mode 100644 index 00000000..01ff38a1 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_modern_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_modern_desk.png b/public/textures/mcwfurnitures/stripped_birch_modern_desk.png new file mode 100644 index 00000000..639e58f1 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_modern_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_modern_wardrobe.png b/public/textures/mcwfurnitures/stripped_birch_modern_wardrobe.png new file mode 100644 index 00000000..810fe2e3 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_modern_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_stool_chair.png b/public/textures/mcwfurnitures/stripped_birch_stool_chair.png new file mode 100644 index 00000000..4624499f Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_stool_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_striped_chair.png b/public/textures/mcwfurnitures/stripped_birch_striped_chair.png new file mode 100644 index 00000000..ce8aaaa0 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_striped_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_table.png b/public/textures/mcwfurnitures/stripped_birch_table.png new file mode 100644 index 00000000..4936dedb Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_triple_drawer.png b/public/textures/mcwfurnitures/stripped_birch_triple_drawer.png new file mode 100644 index 00000000..d6b6db9a Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_birch_wardrobe.png b/public/textures/mcwfurnitures/stripped_birch_wardrobe.png new file mode 100644 index 00000000..d084a276 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_birch_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_bookshelf.png b/public/textures/mcwfurnitures/stripped_cherry_bookshelf.png new file mode 100644 index 00000000..c48cf070 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_bookshelf.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_bookshelf_cupboard.png b/public/textures/mcwfurnitures/stripped_cherry_bookshelf_cupboard.png new file mode 100644 index 00000000..de4a08d5 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_bookshelf_cupboard.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_bookshelf_drawer.png b/public/textures/mcwfurnitures/stripped_cherry_bookshelf_drawer.png new file mode 100644 index 00000000..bc1f924a Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_chair.png b/public/textures/mcwfurnitures/stripped_cherry_chair.png new file mode 100644 index 00000000..71a811f5 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_coffee_table.png b/public/textures/mcwfurnitures/stripped_cherry_coffee_table.png new file mode 100644 index 00000000..8b591321 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_coffee_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_counter.png b/public/textures/mcwfurnitures/stripped_cherry_counter.png new file mode 100644 index 00000000..82f10c09 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_covered_desk.png b/public/textures/mcwfurnitures/stripped_cherry_covered_desk.png new file mode 100644 index 00000000..11643486 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_covered_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_cupboard_counter.png b/public/textures/mcwfurnitures/stripped_cherry_cupboard_counter.png new file mode 100644 index 00000000..47d5d059 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_cupboard_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_desk.png b/public/textures/mcwfurnitures/stripped_cherry_desk.png new file mode 100644 index 00000000..0d6a1c37 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_double_drawer.png b/public/textures/mcwfurnitures/stripped_cherry_double_drawer.png new file mode 100644 index 00000000..e28551f4 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_double_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_double_drawer_counter.png b/public/textures/mcwfurnitures/stripped_cherry_double_drawer_counter.png new file mode 100644 index 00000000..9e6884b1 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_double_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_double_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_cherry_double_kitchen_cabinet.png new file mode 100644 index 00000000..a5307506 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_double_wardrobe.png b/public/textures/mcwfurnitures/stripped_cherry_double_wardrobe.png new file mode 100644 index 00000000..15ae7798 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_double_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_drawer.png b/public/textures/mcwfurnitures/stripped_cherry_drawer.png new file mode 100644 index 00000000..9bbcb18c Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_drawer_counter.png b/public/textures/mcwfurnitures/stripped_cherry_drawer_counter.png new file mode 100644 index 00000000..51394a1d Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_end_table.png b/public/textures/mcwfurnitures/stripped_cherry_end_table.png new file mode 100644 index 00000000..9cedc50f Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_end_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_glass_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_cherry_glass_kitchen_cabinet.png new file mode 100644 index 00000000..1fe1dc71 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_glass_table.png b/public/textures/mcwfurnitures/stripped_cherry_glass_table.png new file mode 100644 index 00000000..44d367a1 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_glass_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_cherry_kitchen_cabinet.png new file mode 100644 index 00000000..324e18a7 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_large_drawer.png b/public/textures/mcwfurnitures/stripped_cherry_large_drawer.png new file mode 100644 index 00000000..c25171bb Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_large_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_lower_bookshelf_drawer.png b/public/textures/mcwfurnitures/stripped_cherry_lower_bookshelf_drawer.png new file mode 100644 index 00000000..63b244ad Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_lower_triple_drawer.png b/public/textures/mcwfurnitures/stripped_cherry_lower_triple_drawer.png new file mode 100644 index 00000000..0ef19be5 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_lower_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_modern_chair.png b/public/textures/mcwfurnitures/stripped_cherry_modern_chair.png new file mode 100644 index 00000000..4864c639 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_modern_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_modern_desk.png b/public/textures/mcwfurnitures/stripped_cherry_modern_desk.png new file mode 100644 index 00000000..59548c02 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_modern_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_modern_wardrobe.png b/public/textures/mcwfurnitures/stripped_cherry_modern_wardrobe.png new file mode 100644 index 00000000..8090e269 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_modern_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_stool_chair.png b/public/textures/mcwfurnitures/stripped_cherry_stool_chair.png new file mode 100644 index 00000000..9c62e99a Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_stool_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_striped_chair.png b/public/textures/mcwfurnitures/stripped_cherry_striped_chair.png new file mode 100644 index 00000000..fbf8e8a9 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_striped_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_table.png b/public/textures/mcwfurnitures/stripped_cherry_table.png new file mode 100644 index 00000000..9d15f30f Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_triple_drawer.png b/public/textures/mcwfurnitures/stripped_cherry_triple_drawer.png new file mode 100644 index 00000000..fec817d7 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_cherry_wardrobe.png b/public/textures/mcwfurnitures/stripped_cherry_wardrobe.png new file mode 100644 index 00000000..b09014d5 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_cherry_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_bookshelf.png b/public/textures/mcwfurnitures/stripped_crimson_bookshelf.png new file mode 100644 index 00000000..6f37285c Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_bookshelf.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_bookshelf_cupboard.png b/public/textures/mcwfurnitures/stripped_crimson_bookshelf_cupboard.png new file mode 100644 index 00000000..1b6cc15b Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_bookshelf_cupboard.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_bookshelf_drawer.png b/public/textures/mcwfurnitures/stripped_crimson_bookshelf_drawer.png new file mode 100644 index 00000000..2d0ac61a Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_chair.png b/public/textures/mcwfurnitures/stripped_crimson_chair.png new file mode 100644 index 00000000..34a33d20 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_coffee_table.png b/public/textures/mcwfurnitures/stripped_crimson_coffee_table.png new file mode 100644 index 00000000..524caf68 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_coffee_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_counter.png b/public/textures/mcwfurnitures/stripped_crimson_counter.png new file mode 100644 index 00000000..7d08522f Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_covered_desk.png b/public/textures/mcwfurnitures/stripped_crimson_covered_desk.png new file mode 100644 index 00000000..a509bf8b Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_covered_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_cupboard_counter.png b/public/textures/mcwfurnitures/stripped_crimson_cupboard_counter.png new file mode 100644 index 00000000..7e80c620 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_cupboard_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_desk.png b/public/textures/mcwfurnitures/stripped_crimson_desk.png new file mode 100644 index 00000000..c282bd75 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_double_drawer.png b/public/textures/mcwfurnitures/stripped_crimson_double_drawer.png new file mode 100644 index 00000000..d559c91a Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_double_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_double_drawer_counter.png b/public/textures/mcwfurnitures/stripped_crimson_double_drawer_counter.png new file mode 100644 index 00000000..42d119de Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_double_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_double_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_crimson_double_kitchen_cabinet.png new file mode 100644 index 00000000..ab777e6a Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_double_wardrobe.png b/public/textures/mcwfurnitures/stripped_crimson_double_wardrobe.png new file mode 100644 index 00000000..2aa3b387 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_double_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_drawer.png b/public/textures/mcwfurnitures/stripped_crimson_drawer.png new file mode 100644 index 00000000..e4bcdd61 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_drawer_counter.png b/public/textures/mcwfurnitures/stripped_crimson_drawer_counter.png new file mode 100644 index 00000000..16ac9412 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_end_table.png b/public/textures/mcwfurnitures/stripped_crimson_end_table.png new file mode 100644 index 00000000..f734b6c8 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_end_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_glass_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_crimson_glass_kitchen_cabinet.png new file mode 100644 index 00000000..dcd425a3 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_glass_table.png b/public/textures/mcwfurnitures/stripped_crimson_glass_table.png new file mode 100644 index 00000000..3b25a883 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_glass_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_crimson_kitchen_cabinet.png new file mode 100644 index 00000000..cfa10c8b Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_large_drawer.png b/public/textures/mcwfurnitures/stripped_crimson_large_drawer.png new file mode 100644 index 00000000..90d6b315 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_large_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_lower_bookshelf_drawer.png b/public/textures/mcwfurnitures/stripped_crimson_lower_bookshelf_drawer.png new file mode 100644 index 00000000..d489c6b9 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_lower_triple_drawer.png b/public/textures/mcwfurnitures/stripped_crimson_lower_triple_drawer.png new file mode 100644 index 00000000..6b1bf04f Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_lower_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_modern_chair.png b/public/textures/mcwfurnitures/stripped_crimson_modern_chair.png new file mode 100644 index 00000000..10849522 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_modern_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_modern_desk.png b/public/textures/mcwfurnitures/stripped_crimson_modern_desk.png new file mode 100644 index 00000000..37692394 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_modern_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_modern_wardrobe.png b/public/textures/mcwfurnitures/stripped_crimson_modern_wardrobe.png new file mode 100644 index 00000000..90c1752f Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_modern_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_stool_chair.png b/public/textures/mcwfurnitures/stripped_crimson_stool_chair.png new file mode 100644 index 00000000..2cf9c467 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_stool_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_striped_chair.png b/public/textures/mcwfurnitures/stripped_crimson_striped_chair.png new file mode 100644 index 00000000..d551b515 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_striped_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_table.png b/public/textures/mcwfurnitures/stripped_crimson_table.png new file mode 100644 index 00000000..c2098b0e Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_triple_drawer.png b/public/textures/mcwfurnitures/stripped_crimson_triple_drawer.png new file mode 100644 index 00000000..e5e092a3 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_crimson_wardrobe.png b/public/textures/mcwfurnitures/stripped_crimson_wardrobe.png new file mode 100644 index 00000000..256683f2 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_crimson_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_bookshelf.png b/public/textures/mcwfurnitures/stripped_dark_oak_bookshelf.png new file mode 100644 index 00000000..380c7940 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_bookshelf.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_bookshelf_cupboard.png b/public/textures/mcwfurnitures/stripped_dark_oak_bookshelf_cupboard.png new file mode 100644 index 00000000..f04976a9 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_bookshelf_cupboard.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_bookshelf_drawer.png b/public/textures/mcwfurnitures/stripped_dark_oak_bookshelf_drawer.png new file mode 100644 index 00000000..af3f0be0 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_chair.png b/public/textures/mcwfurnitures/stripped_dark_oak_chair.png new file mode 100644 index 00000000..73143947 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_coffee_table.png b/public/textures/mcwfurnitures/stripped_dark_oak_coffee_table.png new file mode 100644 index 00000000..511b6b6f Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_coffee_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_counter.png b/public/textures/mcwfurnitures/stripped_dark_oak_counter.png new file mode 100644 index 00000000..2ef92ba5 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_covered_desk.png b/public/textures/mcwfurnitures/stripped_dark_oak_covered_desk.png new file mode 100644 index 00000000..be4fe1d7 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_covered_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_cupboard_counter.png b/public/textures/mcwfurnitures/stripped_dark_oak_cupboard_counter.png new file mode 100644 index 00000000..c7108c65 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_cupboard_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_desk.png b/public/textures/mcwfurnitures/stripped_dark_oak_desk.png new file mode 100644 index 00000000..ad4014fe Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_double_drawer.png b/public/textures/mcwfurnitures/stripped_dark_oak_double_drawer.png new file mode 100644 index 00000000..99d7bbf6 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_double_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_double_drawer_counter.png b/public/textures/mcwfurnitures/stripped_dark_oak_double_drawer_counter.png new file mode 100644 index 00000000..78bca781 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_double_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_double_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_dark_oak_double_kitchen_cabinet.png new file mode 100644 index 00000000..9c0b12df Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_double_wardrobe.png b/public/textures/mcwfurnitures/stripped_dark_oak_double_wardrobe.png new file mode 100644 index 00000000..2b15089d Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_double_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_drawer.png b/public/textures/mcwfurnitures/stripped_dark_oak_drawer.png new file mode 100644 index 00000000..38a7ea89 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_drawer_counter.png b/public/textures/mcwfurnitures/stripped_dark_oak_drawer_counter.png new file mode 100644 index 00000000..0ee946fd Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_end_table.png b/public/textures/mcwfurnitures/stripped_dark_oak_end_table.png new file mode 100644 index 00000000..1bbd8fe9 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_end_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_glass_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_dark_oak_glass_kitchen_cabinet.png new file mode 100644 index 00000000..7090f39d Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_glass_table.png b/public/textures/mcwfurnitures/stripped_dark_oak_glass_table.png new file mode 100644 index 00000000..5c234c63 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_glass_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_dark_oak_kitchen_cabinet.png new file mode 100644 index 00000000..f16df3d6 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_large_drawer.png b/public/textures/mcwfurnitures/stripped_dark_oak_large_drawer.png new file mode 100644 index 00000000..f30d26a4 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_large_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_lower_bookshelf_drawer.png b/public/textures/mcwfurnitures/stripped_dark_oak_lower_bookshelf_drawer.png new file mode 100644 index 00000000..85e5d9db Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_lower_triple_drawer.png b/public/textures/mcwfurnitures/stripped_dark_oak_lower_triple_drawer.png new file mode 100644 index 00000000..473e013b Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_lower_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_modern_chair.png b/public/textures/mcwfurnitures/stripped_dark_oak_modern_chair.png new file mode 100644 index 00000000..60887a38 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_modern_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_modern_desk.png b/public/textures/mcwfurnitures/stripped_dark_oak_modern_desk.png new file mode 100644 index 00000000..1d62cda3 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_modern_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_modern_wardrobe.png b/public/textures/mcwfurnitures/stripped_dark_oak_modern_wardrobe.png new file mode 100644 index 00000000..41913e8a Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_modern_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_stool_chair.png b/public/textures/mcwfurnitures/stripped_dark_oak_stool_chair.png new file mode 100644 index 00000000..5a622c49 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_stool_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_striped_chair.png b/public/textures/mcwfurnitures/stripped_dark_oak_striped_chair.png new file mode 100644 index 00000000..d7a21fb8 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_striped_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_table.png b/public/textures/mcwfurnitures/stripped_dark_oak_table.png new file mode 100644 index 00000000..f79c0c75 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_triple_drawer.png b/public/textures/mcwfurnitures/stripped_dark_oak_triple_drawer.png new file mode 100644 index 00000000..811efa74 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_dark_oak_wardrobe.png b/public/textures/mcwfurnitures/stripped_dark_oak_wardrobe.png new file mode 100644 index 00000000..63d79ff9 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_dark_oak_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_bookshelf.png b/public/textures/mcwfurnitures/stripped_jungle_bookshelf.png new file mode 100644 index 00000000..504a2d34 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_bookshelf.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_bookshelf_cupboard.png b/public/textures/mcwfurnitures/stripped_jungle_bookshelf_cupboard.png new file mode 100644 index 00000000..5a21c225 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_bookshelf_cupboard.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_bookshelf_drawer.png b/public/textures/mcwfurnitures/stripped_jungle_bookshelf_drawer.png new file mode 100644 index 00000000..36ae93de Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_chair.png b/public/textures/mcwfurnitures/stripped_jungle_chair.png new file mode 100644 index 00000000..7ef457e0 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_coffee_table.png b/public/textures/mcwfurnitures/stripped_jungle_coffee_table.png new file mode 100644 index 00000000..e435253b Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_coffee_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_counter.png b/public/textures/mcwfurnitures/stripped_jungle_counter.png new file mode 100644 index 00000000..b9330848 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_covered_desk.png b/public/textures/mcwfurnitures/stripped_jungle_covered_desk.png new file mode 100644 index 00000000..edd8de66 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_covered_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_cupboard_counter.png b/public/textures/mcwfurnitures/stripped_jungle_cupboard_counter.png new file mode 100644 index 00000000..fcc96c3b Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_cupboard_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_desk.png b/public/textures/mcwfurnitures/stripped_jungle_desk.png new file mode 100644 index 00000000..25b753f2 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_double_drawer.png b/public/textures/mcwfurnitures/stripped_jungle_double_drawer.png new file mode 100644 index 00000000..15293826 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_double_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_double_drawer_counter.png b/public/textures/mcwfurnitures/stripped_jungle_double_drawer_counter.png new file mode 100644 index 00000000..9a4ebb8b Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_double_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_double_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_jungle_double_kitchen_cabinet.png new file mode 100644 index 00000000..6ca7c875 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_double_wardrobe.png b/public/textures/mcwfurnitures/stripped_jungle_double_wardrobe.png new file mode 100644 index 00000000..5ebda0bd Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_double_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_drawer.png b/public/textures/mcwfurnitures/stripped_jungle_drawer.png new file mode 100644 index 00000000..4dd22720 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_drawer_counter.png b/public/textures/mcwfurnitures/stripped_jungle_drawer_counter.png new file mode 100644 index 00000000..34e4901d Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_end_table.png b/public/textures/mcwfurnitures/stripped_jungle_end_table.png new file mode 100644 index 00000000..4756c4f8 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_end_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_glass_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_jungle_glass_kitchen_cabinet.png new file mode 100644 index 00000000..ab162203 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_glass_table.png b/public/textures/mcwfurnitures/stripped_jungle_glass_table.png new file mode 100644 index 00000000..511c557a Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_glass_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_jungle_kitchen_cabinet.png new file mode 100644 index 00000000..bc245521 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_large_drawer.png b/public/textures/mcwfurnitures/stripped_jungle_large_drawer.png new file mode 100644 index 00000000..eb077559 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_large_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_lower_bookshelf_drawer.png b/public/textures/mcwfurnitures/stripped_jungle_lower_bookshelf_drawer.png new file mode 100644 index 00000000..79030b06 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_lower_triple_drawer.png b/public/textures/mcwfurnitures/stripped_jungle_lower_triple_drawer.png new file mode 100644 index 00000000..0fd40042 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_lower_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_modern_chair.png b/public/textures/mcwfurnitures/stripped_jungle_modern_chair.png new file mode 100644 index 00000000..f664faef Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_modern_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_modern_desk.png b/public/textures/mcwfurnitures/stripped_jungle_modern_desk.png new file mode 100644 index 00000000..d0faac74 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_modern_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_modern_wardrobe.png b/public/textures/mcwfurnitures/stripped_jungle_modern_wardrobe.png new file mode 100644 index 00000000..08afb1dc Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_modern_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_stool_chair.png b/public/textures/mcwfurnitures/stripped_jungle_stool_chair.png new file mode 100644 index 00000000..210c8ebe Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_stool_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_striped_chair.png b/public/textures/mcwfurnitures/stripped_jungle_striped_chair.png new file mode 100644 index 00000000..1519642f Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_striped_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_table.png b/public/textures/mcwfurnitures/stripped_jungle_table.png new file mode 100644 index 00000000..c2bc8059 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_triple_drawer.png b/public/textures/mcwfurnitures/stripped_jungle_triple_drawer.png new file mode 100644 index 00000000..d91a309f Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_jungle_wardrobe.png b/public/textures/mcwfurnitures/stripped_jungle_wardrobe.png new file mode 100644 index 00000000..79918975 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_jungle_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_bookshelf.png b/public/textures/mcwfurnitures/stripped_mangrove_bookshelf.png new file mode 100644 index 00000000..266fc29d Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_bookshelf.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_bookshelf_cupboard.png b/public/textures/mcwfurnitures/stripped_mangrove_bookshelf_cupboard.png new file mode 100644 index 00000000..4ff137eb Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_bookshelf_cupboard.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_bookshelf_drawer.png b/public/textures/mcwfurnitures/stripped_mangrove_bookshelf_drawer.png new file mode 100644 index 00000000..c7cb8ea7 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_chair.png b/public/textures/mcwfurnitures/stripped_mangrove_chair.png new file mode 100644 index 00000000..82be6974 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_coffee_table.png b/public/textures/mcwfurnitures/stripped_mangrove_coffee_table.png new file mode 100644 index 00000000..b91c799b Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_coffee_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_counter.png b/public/textures/mcwfurnitures/stripped_mangrove_counter.png new file mode 100644 index 00000000..db1e880f Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_covered_desk.png b/public/textures/mcwfurnitures/stripped_mangrove_covered_desk.png new file mode 100644 index 00000000..daa4bafc Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_covered_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_cupboard_counter.png b/public/textures/mcwfurnitures/stripped_mangrove_cupboard_counter.png new file mode 100644 index 00000000..05e8b4b5 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_cupboard_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_desk.png b/public/textures/mcwfurnitures/stripped_mangrove_desk.png new file mode 100644 index 00000000..9e0f61af Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_double_drawer.png b/public/textures/mcwfurnitures/stripped_mangrove_double_drawer.png new file mode 100644 index 00000000..1d956788 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_double_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_double_drawer_counter.png b/public/textures/mcwfurnitures/stripped_mangrove_double_drawer_counter.png new file mode 100644 index 00000000..be53ae2e Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_double_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_double_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_mangrove_double_kitchen_cabinet.png new file mode 100644 index 00000000..04ecf4cc Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_double_wardrobe.png b/public/textures/mcwfurnitures/stripped_mangrove_double_wardrobe.png new file mode 100644 index 00000000..6710a53d Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_double_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_drawer.png b/public/textures/mcwfurnitures/stripped_mangrove_drawer.png new file mode 100644 index 00000000..fe96129d Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_drawer_counter.png b/public/textures/mcwfurnitures/stripped_mangrove_drawer_counter.png new file mode 100644 index 00000000..f16ed111 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_end_table.png b/public/textures/mcwfurnitures/stripped_mangrove_end_table.png new file mode 100644 index 00000000..e76673e7 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_end_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_glass_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_mangrove_glass_kitchen_cabinet.png new file mode 100644 index 00000000..d8ef4310 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_glass_table.png b/public/textures/mcwfurnitures/stripped_mangrove_glass_table.png new file mode 100644 index 00000000..d107f9fa Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_glass_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_mangrove_kitchen_cabinet.png new file mode 100644 index 00000000..ff1ce665 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_large_drawer.png b/public/textures/mcwfurnitures/stripped_mangrove_large_drawer.png new file mode 100644 index 00000000..30a71d92 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_large_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_lower_bookshelf_drawer.png b/public/textures/mcwfurnitures/stripped_mangrove_lower_bookshelf_drawer.png new file mode 100644 index 00000000..af9be1b1 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_lower_triple_drawer.png b/public/textures/mcwfurnitures/stripped_mangrove_lower_triple_drawer.png new file mode 100644 index 00000000..41b1bd44 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_lower_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_modern_chair.png b/public/textures/mcwfurnitures/stripped_mangrove_modern_chair.png new file mode 100644 index 00000000..7d679710 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_modern_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_modern_desk.png b/public/textures/mcwfurnitures/stripped_mangrove_modern_desk.png new file mode 100644 index 00000000..121fc887 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_modern_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_modern_wardrobe.png b/public/textures/mcwfurnitures/stripped_mangrove_modern_wardrobe.png new file mode 100644 index 00000000..ea5420c8 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_modern_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_stool_chair.png b/public/textures/mcwfurnitures/stripped_mangrove_stool_chair.png new file mode 100644 index 00000000..399c9ecc Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_stool_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_striped_chair.png b/public/textures/mcwfurnitures/stripped_mangrove_striped_chair.png new file mode 100644 index 00000000..9cb51503 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_striped_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_table.png b/public/textures/mcwfurnitures/stripped_mangrove_table.png new file mode 100644 index 00000000..afc9e418 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_triple_drawer.png b/public/textures/mcwfurnitures/stripped_mangrove_triple_drawer.png new file mode 100644 index 00000000..287bc225 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_mangrove_wardrobe.png b/public/textures/mcwfurnitures/stripped_mangrove_wardrobe.png new file mode 100644 index 00000000..0ac1bb2a Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_mangrove_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_bookshelf.png b/public/textures/mcwfurnitures/stripped_oak_bookshelf.png new file mode 100644 index 00000000..7db218db Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_bookshelf.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_bookshelf_cupboard.png b/public/textures/mcwfurnitures/stripped_oak_bookshelf_cupboard.png new file mode 100644 index 00000000..2fa5424b Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_bookshelf_cupboard.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_bookshelf_drawer.png b/public/textures/mcwfurnitures/stripped_oak_bookshelf_drawer.png new file mode 100644 index 00000000..9c5f435b Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_chair.png b/public/textures/mcwfurnitures/stripped_oak_chair.png new file mode 100644 index 00000000..0d4130e9 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_coffee_table.png b/public/textures/mcwfurnitures/stripped_oak_coffee_table.png new file mode 100644 index 00000000..7cc8e702 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_coffee_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_counter.png b/public/textures/mcwfurnitures/stripped_oak_counter.png new file mode 100644 index 00000000..bf3a8db4 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_covered_desk.png b/public/textures/mcwfurnitures/stripped_oak_covered_desk.png new file mode 100644 index 00000000..dc8f6356 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_covered_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_cupboard_counter.png b/public/textures/mcwfurnitures/stripped_oak_cupboard_counter.png new file mode 100644 index 00000000..b5a6fe30 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_cupboard_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_desk.png b/public/textures/mcwfurnitures/stripped_oak_desk.png new file mode 100644 index 00000000..b0637cd5 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_double_drawer.png b/public/textures/mcwfurnitures/stripped_oak_double_drawer.png new file mode 100644 index 00000000..f5a01eca Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_double_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_double_drawer_counter.png b/public/textures/mcwfurnitures/stripped_oak_double_drawer_counter.png new file mode 100644 index 00000000..c0288d0d Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_double_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_double_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_oak_double_kitchen_cabinet.png new file mode 100644 index 00000000..b3ee9ccf Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_double_wardrobe.png b/public/textures/mcwfurnitures/stripped_oak_double_wardrobe.png new file mode 100644 index 00000000..29fc3640 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_double_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_drawer.png b/public/textures/mcwfurnitures/stripped_oak_drawer.png new file mode 100644 index 00000000..c4cc48fc Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_drawer_counter.png b/public/textures/mcwfurnitures/stripped_oak_drawer_counter.png new file mode 100644 index 00000000..eb8148c1 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_end_table.png b/public/textures/mcwfurnitures/stripped_oak_end_table.png new file mode 100644 index 00000000..225b4329 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_end_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_glass_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_oak_glass_kitchen_cabinet.png new file mode 100644 index 00000000..7fe6768a Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_glass_table.png b/public/textures/mcwfurnitures/stripped_oak_glass_table.png new file mode 100644 index 00000000..ce07aceb Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_glass_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_oak_kitchen_cabinet.png new file mode 100644 index 00000000..c6cecf50 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_large_drawer.png b/public/textures/mcwfurnitures/stripped_oak_large_drawer.png new file mode 100644 index 00000000..57d2c5c1 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_large_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_lower_bookshelf_drawer.png b/public/textures/mcwfurnitures/stripped_oak_lower_bookshelf_drawer.png new file mode 100644 index 00000000..e23a7e25 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_lower_triple_drawer.png b/public/textures/mcwfurnitures/stripped_oak_lower_triple_drawer.png new file mode 100644 index 00000000..62b554be Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_lower_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_modern_chair.png b/public/textures/mcwfurnitures/stripped_oak_modern_chair.png new file mode 100644 index 00000000..d12dd2e7 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_modern_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_modern_desk.png b/public/textures/mcwfurnitures/stripped_oak_modern_desk.png new file mode 100644 index 00000000..90be6d7f Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_modern_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_modern_wardrobe.png b/public/textures/mcwfurnitures/stripped_oak_modern_wardrobe.png new file mode 100644 index 00000000..074425d8 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_modern_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_stool_chair.png b/public/textures/mcwfurnitures/stripped_oak_stool_chair.png new file mode 100644 index 00000000..c5ed48a6 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_stool_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_striped_chair.png b/public/textures/mcwfurnitures/stripped_oak_striped_chair.png new file mode 100644 index 00000000..b0858852 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_striped_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_table.png b/public/textures/mcwfurnitures/stripped_oak_table.png new file mode 100644 index 00000000..d9ce55d3 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_triple_drawer.png b/public/textures/mcwfurnitures/stripped_oak_triple_drawer.png new file mode 100644 index 00000000..c9ec9727 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_oak_wardrobe.png b/public/textures/mcwfurnitures/stripped_oak_wardrobe.png new file mode 100644 index 00000000..0ba77947 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_oak_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_bookshelf.png b/public/textures/mcwfurnitures/stripped_spruce_bookshelf.png new file mode 100644 index 00000000..8057269a Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_bookshelf.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_bookshelf_cupboard.png b/public/textures/mcwfurnitures/stripped_spruce_bookshelf_cupboard.png new file mode 100644 index 00000000..a4048161 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_bookshelf_cupboard.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_bookshelf_drawer.png b/public/textures/mcwfurnitures/stripped_spruce_bookshelf_drawer.png new file mode 100644 index 00000000..a2e13190 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_chair.png b/public/textures/mcwfurnitures/stripped_spruce_chair.png new file mode 100644 index 00000000..948a4858 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_coffee_table.png b/public/textures/mcwfurnitures/stripped_spruce_coffee_table.png new file mode 100644 index 00000000..4f695481 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_coffee_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_counter.png b/public/textures/mcwfurnitures/stripped_spruce_counter.png new file mode 100644 index 00000000..02a0fe81 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_covered_desk.png b/public/textures/mcwfurnitures/stripped_spruce_covered_desk.png new file mode 100644 index 00000000..98652318 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_covered_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_cupboard_counter.png b/public/textures/mcwfurnitures/stripped_spruce_cupboard_counter.png new file mode 100644 index 00000000..eeef6ba0 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_cupboard_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_desk.png b/public/textures/mcwfurnitures/stripped_spruce_desk.png new file mode 100644 index 00000000..e088ee94 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_double_drawer.png b/public/textures/mcwfurnitures/stripped_spruce_double_drawer.png new file mode 100644 index 00000000..8091509b Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_double_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_double_drawer_counter.png b/public/textures/mcwfurnitures/stripped_spruce_double_drawer_counter.png new file mode 100644 index 00000000..8398786d Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_double_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_double_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_spruce_double_kitchen_cabinet.png new file mode 100644 index 00000000..18176757 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_double_wardrobe.png b/public/textures/mcwfurnitures/stripped_spruce_double_wardrobe.png new file mode 100644 index 00000000..d739bdda Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_double_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_drawer.png b/public/textures/mcwfurnitures/stripped_spruce_drawer.png new file mode 100644 index 00000000..00d1e767 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_drawer_counter.png b/public/textures/mcwfurnitures/stripped_spruce_drawer_counter.png new file mode 100644 index 00000000..9f0f4deb Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_end_table.png b/public/textures/mcwfurnitures/stripped_spruce_end_table.png new file mode 100644 index 00000000..7a307011 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_end_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_glass_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_spruce_glass_kitchen_cabinet.png new file mode 100644 index 00000000..78f63d20 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_glass_table.png b/public/textures/mcwfurnitures/stripped_spruce_glass_table.png new file mode 100644 index 00000000..103e5623 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_glass_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_spruce_kitchen_cabinet.png new file mode 100644 index 00000000..c95df564 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_large_drawer.png b/public/textures/mcwfurnitures/stripped_spruce_large_drawer.png new file mode 100644 index 00000000..445bde81 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_large_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_lower_bookshelf_drawer.png b/public/textures/mcwfurnitures/stripped_spruce_lower_bookshelf_drawer.png new file mode 100644 index 00000000..b41d2b8c Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_lower_triple_drawer.png b/public/textures/mcwfurnitures/stripped_spruce_lower_triple_drawer.png new file mode 100644 index 00000000..2bc17d4c Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_lower_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_modern_chair.png b/public/textures/mcwfurnitures/stripped_spruce_modern_chair.png new file mode 100644 index 00000000..0b4509d9 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_modern_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_modern_desk.png b/public/textures/mcwfurnitures/stripped_spruce_modern_desk.png new file mode 100644 index 00000000..d59eb512 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_modern_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_modern_wardrobe.png b/public/textures/mcwfurnitures/stripped_spruce_modern_wardrobe.png new file mode 100644 index 00000000..8c9caf3b Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_modern_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_stool_chair.png b/public/textures/mcwfurnitures/stripped_spruce_stool_chair.png new file mode 100644 index 00000000..5d29e43e Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_stool_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_striped_chair.png b/public/textures/mcwfurnitures/stripped_spruce_striped_chair.png new file mode 100644 index 00000000..a234c3cd Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_striped_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_table.png b/public/textures/mcwfurnitures/stripped_spruce_table.png new file mode 100644 index 00000000..be51f6a9 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_triple_drawer.png b/public/textures/mcwfurnitures/stripped_spruce_triple_drawer.png new file mode 100644 index 00000000..390f089d Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_spruce_wardrobe.png b/public/textures/mcwfurnitures/stripped_spruce_wardrobe.png new file mode 100644 index 00000000..6bba81df Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_spruce_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_bookshelf.png b/public/textures/mcwfurnitures/stripped_warped_bookshelf.png new file mode 100644 index 00000000..6c596e4f Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_bookshelf.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_bookshelf_cupboard.png b/public/textures/mcwfurnitures/stripped_warped_bookshelf_cupboard.png new file mode 100644 index 00000000..696aa31e Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_bookshelf_cupboard.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_bookshelf_drawer.png b/public/textures/mcwfurnitures/stripped_warped_bookshelf_drawer.png new file mode 100644 index 00000000..ad20771b Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_chair.png b/public/textures/mcwfurnitures/stripped_warped_chair.png new file mode 100644 index 00000000..7cdac082 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_coffee_table.png b/public/textures/mcwfurnitures/stripped_warped_coffee_table.png new file mode 100644 index 00000000..a9da8324 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_coffee_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_counter.png b/public/textures/mcwfurnitures/stripped_warped_counter.png new file mode 100644 index 00000000..89c54d5f Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_covered_desk.png b/public/textures/mcwfurnitures/stripped_warped_covered_desk.png new file mode 100644 index 00000000..aaa7ab96 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_covered_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_cupboard_counter.png b/public/textures/mcwfurnitures/stripped_warped_cupboard_counter.png new file mode 100644 index 00000000..a11c3be6 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_cupboard_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_desk.png b/public/textures/mcwfurnitures/stripped_warped_desk.png new file mode 100644 index 00000000..6dd5378a Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_double_drawer.png b/public/textures/mcwfurnitures/stripped_warped_double_drawer.png new file mode 100644 index 00000000..7ef2d415 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_double_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_double_drawer_counter.png b/public/textures/mcwfurnitures/stripped_warped_double_drawer_counter.png new file mode 100644 index 00000000..26d7414b Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_double_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_double_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_warped_double_kitchen_cabinet.png new file mode 100644 index 00000000..02021b6d Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_double_wardrobe.png b/public/textures/mcwfurnitures/stripped_warped_double_wardrobe.png new file mode 100644 index 00000000..86558ed4 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_double_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_drawer.png b/public/textures/mcwfurnitures/stripped_warped_drawer.png new file mode 100644 index 00000000..0542151e Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_drawer_counter.png b/public/textures/mcwfurnitures/stripped_warped_drawer_counter.png new file mode 100644 index 00000000..4897b288 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_end_table.png b/public/textures/mcwfurnitures/stripped_warped_end_table.png new file mode 100644 index 00000000..180d0446 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_end_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_glass_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_warped_glass_kitchen_cabinet.png new file mode 100644 index 00000000..7f70e69a Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_glass_table.png b/public/textures/mcwfurnitures/stripped_warped_glass_table.png new file mode 100644 index 00000000..d6d47303 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_glass_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_kitchen_cabinet.png b/public/textures/mcwfurnitures/stripped_warped_kitchen_cabinet.png new file mode 100644 index 00000000..b5634d4a Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_large_drawer.png b/public/textures/mcwfurnitures/stripped_warped_large_drawer.png new file mode 100644 index 00000000..5b4b6d08 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_large_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_lower_bookshelf_drawer.png b/public/textures/mcwfurnitures/stripped_warped_lower_bookshelf_drawer.png new file mode 100644 index 00000000..28802318 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_lower_triple_drawer.png b/public/textures/mcwfurnitures/stripped_warped_lower_triple_drawer.png new file mode 100644 index 00000000..ab2270f6 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_lower_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_modern_chair.png b/public/textures/mcwfurnitures/stripped_warped_modern_chair.png new file mode 100644 index 00000000..a8ad7836 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_modern_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_modern_desk.png b/public/textures/mcwfurnitures/stripped_warped_modern_desk.png new file mode 100644 index 00000000..57682d06 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_modern_desk.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_modern_wardrobe.png b/public/textures/mcwfurnitures/stripped_warped_modern_wardrobe.png new file mode 100644 index 00000000..348a5630 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_modern_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_stool_chair.png b/public/textures/mcwfurnitures/stripped_warped_stool_chair.png new file mode 100644 index 00000000..ff1640dd Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_stool_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_striped_chair.png b/public/textures/mcwfurnitures/stripped_warped_striped_chair.png new file mode 100644 index 00000000..c75b30a7 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_striped_chair.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_table.png b/public/textures/mcwfurnitures/stripped_warped_table.png new file mode 100644 index 00000000..4f17628d Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_table.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_triple_drawer.png b/public/textures/mcwfurnitures/stripped_warped_triple_drawer.png new file mode 100644 index 00000000..63e22444 Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/stripped_warped_wardrobe.png b/public/textures/mcwfurnitures/stripped_warped_wardrobe.png new file mode 100644 index 00000000..4aa2ea0d Binary files /dev/null and b/public/textures/mcwfurnitures/stripped_warped_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/warped_bookshelf.png b/public/textures/mcwfurnitures/warped_bookshelf.png new file mode 100644 index 00000000..eadc8a33 Binary files /dev/null and b/public/textures/mcwfurnitures/warped_bookshelf.png differ diff --git a/public/textures/mcwfurnitures/warped_bookshelf_cupboard.png b/public/textures/mcwfurnitures/warped_bookshelf_cupboard.png new file mode 100644 index 00000000..9d11fdbe Binary files /dev/null and b/public/textures/mcwfurnitures/warped_bookshelf_cupboard.png differ diff --git a/public/textures/mcwfurnitures/warped_bookshelf_drawer.png b/public/textures/mcwfurnitures/warped_bookshelf_drawer.png new file mode 100644 index 00000000..19570439 Binary files /dev/null and b/public/textures/mcwfurnitures/warped_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/warped_chair.png b/public/textures/mcwfurnitures/warped_chair.png new file mode 100644 index 00000000..6e2b00e5 Binary files /dev/null and b/public/textures/mcwfurnitures/warped_chair.png differ diff --git a/public/textures/mcwfurnitures/warped_coffee_table.png b/public/textures/mcwfurnitures/warped_coffee_table.png new file mode 100644 index 00000000..6c78d6e0 Binary files /dev/null and b/public/textures/mcwfurnitures/warped_coffee_table.png differ diff --git a/public/textures/mcwfurnitures/warped_counter.png b/public/textures/mcwfurnitures/warped_counter.png new file mode 100644 index 00000000..8d0b0962 Binary files /dev/null and b/public/textures/mcwfurnitures/warped_counter.png differ diff --git a/public/textures/mcwfurnitures/warped_covered_desk.png b/public/textures/mcwfurnitures/warped_covered_desk.png new file mode 100644 index 00000000..4a27f2b3 Binary files /dev/null and b/public/textures/mcwfurnitures/warped_covered_desk.png differ diff --git a/public/textures/mcwfurnitures/warped_cupboard_counter.png b/public/textures/mcwfurnitures/warped_cupboard_counter.png new file mode 100644 index 00000000..5beb4ef8 Binary files /dev/null and b/public/textures/mcwfurnitures/warped_cupboard_counter.png differ diff --git a/public/textures/mcwfurnitures/warped_desk.png b/public/textures/mcwfurnitures/warped_desk.png new file mode 100644 index 00000000..121b77e2 Binary files /dev/null and b/public/textures/mcwfurnitures/warped_desk.png differ diff --git a/public/textures/mcwfurnitures/warped_double_drawer.png b/public/textures/mcwfurnitures/warped_double_drawer.png new file mode 100644 index 00000000..e756e3e6 Binary files /dev/null and b/public/textures/mcwfurnitures/warped_double_drawer.png differ diff --git a/public/textures/mcwfurnitures/warped_double_drawer_counter.png b/public/textures/mcwfurnitures/warped_double_drawer_counter.png new file mode 100644 index 00000000..3a585f23 Binary files /dev/null and b/public/textures/mcwfurnitures/warped_double_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/warped_double_kitchen_cabinet.png b/public/textures/mcwfurnitures/warped_double_kitchen_cabinet.png new file mode 100644 index 00000000..ca27d19c Binary files /dev/null and b/public/textures/mcwfurnitures/warped_double_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/warped_double_wardrobe.png b/public/textures/mcwfurnitures/warped_double_wardrobe.png new file mode 100644 index 00000000..dd5ecd2f Binary files /dev/null and b/public/textures/mcwfurnitures/warped_double_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/warped_drawer.png b/public/textures/mcwfurnitures/warped_drawer.png new file mode 100644 index 00000000..9f296904 Binary files /dev/null and b/public/textures/mcwfurnitures/warped_drawer.png differ diff --git a/public/textures/mcwfurnitures/warped_drawer_counter.png b/public/textures/mcwfurnitures/warped_drawer_counter.png new file mode 100644 index 00000000..1d5d7537 Binary files /dev/null and b/public/textures/mcwfurnitures/warped_drawer_counter.png differ diff --git a/public/textures/mcwfurnitures/warped_end_table.png b/public/textures/mcwfurnitures/warped_end_table.png new file mode 100644 index 00000000..72976311 Binary files /dev/null and b/public/textures/mcwfurnitures/warped_end_table.png differ diff --git a/public/textures/mcwfurnitures/warped_glass_kitchen_cabinet.png b/public/textures/mcwfurnitures/warped_glass_kitchen_cabinet.png new file mode 100644 index 00000000..a2adf06f Binary files /dev/null and b/public/textures/mcwfurnitures/warped_glass_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/warped_glass_table.png b/public/textures/mcwfurnitures/warped_glass_table.png new file mode 100644 index 00000000..ca149eaa Binary files /dev/null and b/public/textures/mcwfurnitures/warped_glass_table.png differ diff --git a/public/textures/mcwfurnitures/warped_kitchen_cabinet.png b/public/textures/mcwfurnitures/warped_kitchen_cabinet.png new file mode 100644 index 00000000..d482905a Binary files /dev/null and b/public/textures/mcwfurnitures/warped_kitchen_cabinet.png differ diff --git a/public/textures/mcwfurnitures/warped_large_drawer.png b/public/textures/mcwfurnitures/warped_large_drawer.png new file mode 100644 index 00000000..fec59b7a Binary files /dev/null and b/public/textures/mcwfurnitures/warped_large_drawer.png differ diff --git a/public/textures/mcwfurnitures/warped_lower_bookshelf_drawer.png b/public/textures/mcwfurnitures/warped_lower_bookshelf_drawer.png new file mode 100644 index 00000000..2d03fd73 Binary files /dev/null and b/public/textures/mcwfurnitures/warped_lower_bookshelf_drawer.png differ diff --git a/public/textures/mcwfurnitures/warped_lower_triple_drawer.png b/public/textures/mcwfurnitures/warped_lower_triple_drawer.png new file mode 100644 index 00000000..fa54d957 Binary files /dev/null and b/public/textures/mcwfurnitures/warped_lower_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/warped_modern_chair.png b/public/textures/mcwfurnitures/warped_modern_chair.png new file mode 100644 index 00000000..790e9edf Binary files /dev/null and b/public/textures/mcwfurnitures/warped_modern_chair.png differ diff --git a/public/textures/mcwfurnitures/warped_modern_desk.png b/public/textures/mcwfurnitures/warped_modern_desk.png new file mode 100644 index 00000000..a77ae57d Binary files /dev/null and b/public/textures/mcwfurnitures/warped_modern_desk.png differ diff --git a/public/textures/mcwfurnitures/warped_modern_wardrobe.png b/public/textures/mcwfurnitures/warped_modern_wardrobe.png new file mode 100644 index 00000000..557f63ab Binary files /dev/null and b/public/textures/mcwfurnitures/warped_modern_wardrobe.png differ diff --git a/public/textures/mcwfurnitures/warped_stool_chair.png b/public/textures/mcwfurnitures/warped_stool_chair.png new file mode 100644 index 00000000..1bc99c2d Binary files /dev/null and b/public/textures/mcwfurnitures/warped_stool_chair.png differ diff --git a/public/textures/mcwfurnitures/warped_striped_chair.png b/public/textures/mcwfurnitures/warped_striped_chair.png new file mode 100644 index 00000000..f122813f Binary files /dev/null and b/public/textures/mcwfurnitures/warped_striped_chair.png differ diff --git a/public/textures/mcwfurnitures/warped_table.png b/public/textures/mcwfurnitures/warped_table.png new file mode 100644 index 00000000..447e43f4 Binary files /dev/null and b/public/textures/mcwfurnitures/warped_table.png differ diff --git a/public/textures/mcwfurnitures/warped_triple_drawer.png b/public/textures/mcwfurnitures/warped_triple_drawer.png new file mode 100644 index 00000000..586505de Binary files /dev/null and b/public/textures/mcwfurnitures/warped_triple_drawer.png differ diff --git a/public/textures/mcwfurnitures/warped_wardrobe.png b/public/textures/mcwfurnitures/warped_wardrobe.png new file mode 100644 index 00000000..3bdb75db Binary files /dev/null and b/public/textures/mcwfurnitures/warped_wardrobe.png differ diff --git a/public/textures/mcwpaths/acacia_planks_path.png b/public/textures/mcwpaths/acacia_planks_path.png new file mode 100644 index 00000000..2f7be2c7 Binary files /dev/null and b/public/textures/mcwpaths/acacia_planks_path.png differ diff --git a/public/textures/mcwpaths/andesite_basket_weave_paving.png b/public/textures/mcwpaths/andesite_basket_weave_paving.png new file mode 100644 index 00000000..da92ee23 Binary files /dev/null and b/public/textures/mcwpaths/andesite_basket_weave_paving.png differ diff --git a/public/textures/mcwpaths/andesite_clover_paving.png b/public/textures/mcwpaths/andesite_clover_paving.png new file mode 100644 index 00000000..aa6a636b Binary files /dev/null and b/public/textures/mcwpaths/andesite_clover_paving.png differ diff --git a/public/textures/mcwpaths/andesite_crystal_floor.png b/public/textures/mcwpaths/andesite_crystal_floor.png new file mode 100644 index 00000000..c5f27b88 Binary files /dev/null and b/public/textures/mcwpaths/andesite_crystal_floor.png differ diff --git a/public/textures/mcwpaths/andesite_crystal_floor_path.png b/public/textures/mcwpaths/andesite_crystal_floor_path.png new file mode 100644 index 00000000..4bfb4cca Binary files /dev/null and b/public/textures/mcwpaths/andesite_crystal_floor_path.png differ diff --git a/public/textures/mcwpaths/andesite_crystal_floor_slab.png b/public/textures/mcwpaths/andesite_crystal_floor_slab.png new file mode 100644 index 00000000..aed441bd Binary files /dev/null and b/public/textures/mcwpaths/andesite_crystal_floor_slab.png differ diff --git a/public/textures/mcwpaths/andesite_crystal_floor_stairs.png b/public/textures/mcwpaths/andesite_crystal_floor_stairs.png new file mode 100644 index 00000000..b949f6e3 Binary files /dev/null and b/public/textures/mcwpaths/andesite_crystal_floor_stairs.png differ diff --git a/public/textures/mcwpaths/andesite_diamond_paving.png b/public/textures/mcwpaths/andesite_diamond_paving.png new file mode 100644 index 00000000..df9aeb09 Binary files /dev/null and b/public/textures/mcwpaths/andesite_diamond_paving.png differ diff --git a/public/textures/mcwpaths/andesite_dumble_paving.png b/public/textures/mcwpaths/andesite_dumble_paving.png new file mode 100644 index 00000000..fe9e8f5f Binary files /dev/null and b/public/textures/mcwpaths/andesite_dumble_paving.png differ diff --git a/public/textures/mcwpaths/andesite_flagstone.png b/public/textures/mcwpaths/andesite_flagstone.png new file mode 100644 index 00000000..fa98f553 Binary files /dev/null and b/public/textures/mcwpaths/andesite_flagstone.png differ diff --git a/public/textures/mcwpaths/andesite_flagstone_path.png b/public/textures/mcwpaths/andesite_flagstone_path.png new file mode 100644 index 00000000..6f9372a9 Binary files /dev/null and b/public/textures/mcwpaths/andesite_flagstone_path.png differ diff --git a/public/textures/mcwpaths/andesite_flagstone_slab.png b/public/textures/mcwpaths/andesite_flagstone_slab.png new file mode 100644 index 00000000..98829b46 Binary files /dev/null and b/public/textures/mcwpaths/andesite_flagstone_slab.png differ diff --git a/public/textures/mcwpaths/andesite_flagstone_stairs.png b/public/textures/mcwpaths/andesite_flagstone_stairs.png new file mode 100644 index 00000000..58369c94 Binary files /dev/null and b/public/textures/mcwpaths/andesite_flagstone_stairs.png differ diff --git a/public/textures/mcwpaths/andesite_honeycomb_paving.png b/public/textures/mcwpaths/andesite_honeycomb_paving.png new file mode 100644 index 00000000..2f132d43 Binary files /dev/null and b/public/textures/mcwpaths/andesite_honeycomb_paving.png differ diff --git a/public/textures/mcwpaths/andesite_running_bond.png b/public/textures/mcwpaths/andesite_running_bond.png new file mode 100644 index 00000000..51e81ed1 Binary files /dev/null and b/public/textures/mcwpaths/andesite_running_bond.png differ diff --git a/public/textures/mcwpaths/andesite_running_bond_path.png b/public/textures/mcwpaths/andesite_running_bond_path.png new file mode 100644 index 00000000..7fc75788 Binary files /dev/null and b/public/textures/mcwpaths/andesite_running_bond_path.png differ diff --git a/public/textures/mcwpaths/andesite_running_bond_slab.png b/public/textures/mcwpaths/andesite_running_bond_slab.png new file mode 100644 index 00000000..286a442b Binary files /dev/null and b/public/textures/mcwpaths/andesite_running_bond_slab.png differ diff --git a/public/textures/mcwpaths/andesite_running_bond_stairs.png b/public/textures/mcwpaths/andesite_running_bond_stairs.png new file mode 100644 index 00000000..1205cae8 Binary files /dev/null and b/public/textures/mcwpaths/andesite_running_bond_stairs.png differ diff --git a/public/textures/mcwpaths/andesite_square_paving.png b/public/textures/mcwpaths/andesite_square_paving.png new file mode 100644 index 00000000..e9ca4f20 Binary files /dev/null and b/public/textures/mcwpaths/andesite_square_paving.png differ diff --git a/public/textures/mcwpaths/andesite_strewn_rocky_path.png b/public/textures/mcwpaths/andesite_strewn_rocky_path.png new file mode 100644 index 00000000..e4a30210 Binary files /dev/null and b/public/textures/mcwpaths/andesite_strewn_rocky_path.png differ diff --git a/public/textures/mcwpaths/andesite_windmill_weave.png b/public/textures/mcwpaths/andesite_windmill_weave.png new file mode 100644 index 00000000..8a0e765e Binary files /dev/null and b/public/textures/mcwpaths/andesite_windmill_weave.png differ diff --git a/public/textures/mcwpaths/andesite_windmill_weave_path.png b/public/textures/mcwpaths/andesite_windmill_weave_path.png new file mode 100644 index 00000000..499ae867 Binary files /dev/null and b/public/textures/mcwpaths/andesite_windmill_weave_path.png differ diff --git a/public/textures/mcwpaths/andesite_windmill_weave_slab.png b/public/textures/mcwpaths/andesite_windmill_weave_slab.png new file mode 100644 index 00000000..5a812763 Binary files /dev/null and b/public/textures/mcwpaths/andesite_windmill_weave_slab.png differ diff --git a/public/textures/mcwpaths/andesite_windmill_weave_stairs.png b/public/textures/mcwpaths/andesite_windmill_weave_stairs.png new file mode 100644 index 00000000..66836de1 Binary files /dev/null and b/public/textures/mcwpaths/andesite_windmill_weave_stairs.png differ diff --git a/public/textures/mcwpaths/bamboo_planks_path.png b/public/textures/mcwpaths/bamboo_planks_path.png new file mode 100644 index 00000000..11650d9a Binary files /dev/null and b/public/textures/mcwpaths/bamboo_planks_path.png differ diff --git a/public/textures/mcwpaths/birch_planks_path.png b/public/textures/mcwpaths/birch_planks_path.png new file mode 100644 index 00000000..ba7e70d7 Binary files /dev/null and b/public/textures/mcwpaths/birch_planks_path.png differ diff --git a/public/textures/mcwpaths/blackstone_basket_weave_paving.png b/public/textures/mcwpaths/blackstone_basket_weave_paving.png new file mode 100644 index 00000000..8d569274 Binary files /dev/null and b/public/textures/mcwpaths/blackstone_basket_weave_paving.png differ diff --git a/public/textures/mcwpaths/blackstone_clover_paving.png b/public/textures/mcwpaths/blackstone_clover_paving.png new file mode 100644 index 00000000..3187b998 Binary files /dev/null and b/public/textures/mcwpaths/blackstone_clover_paving.png differ diff --git a/public/textures/mcwpaths/blackstone_crystal_floor.png b/public/textures/mcwpaths/blackstone_crystal_floor.png new file mode 100644 index 00000000..5315dbb0 Binary files /dev/null and b/public/textures/mcwpaths/blackstone_crystal_floor.png differ diff --git a/public/textures/mcwpaths/blackstone_crystal_floor_path.png b/public/textures/mcwpaths/blackstone_crystal_floor_path.png new file mode 100644 index 00000000..46a2a1ac Binary files /dev/null and b/public/textures/mcwpaths/blackstone_crystal_floor_path.png differ diff --git a/public/textures/mcwpaths/blackstone_crystal_floor_slab.png b/public/textures/mcwpaths/blackstone_crystal_floor_slab.png new file mode 100644 index 00000000..2de44a90 Binary files /dev/null and b/public/textures/mcwpaths/blackstone_crystal_floor_slab.png differ diff --git a/public/textures/mcwpaths/blackstone_crystal_floor_stairs.png b/public/textures/mcwpaths/blackstone_crystal_floor_stairs.png new file mode 100644 index 00000000..a96d9435 Binary files /dev/null and b/public/textures/mcwpaths/blackstone_crystal_floor_stairs.png differ diff --git a/public/textures/mcwpaths/blackstone_diamond_paving.png b/public/textures/mcwpaths/blackstone_diamond_paving.png new file mode 100644 index 00000000..0946325b Binary files /dev/null and b/public/textures/mcwpaths/blackstone_diamond_paving.png differ diff --git a/public/textures/mcwpaths/blackstone_dumble_paving.png b/public/textures/mcwpaths/blackstone_dumble_paving.png new file mode 100644 index 00000000..1fd8f6ad Binary files /dev/null and b/public/textures/mcwpaths/blackstone_dumble_paving.png differ diff --git a/public/textures/mcwpaths/blackstone_flagstone.png b/public/textures/mcwpaths/blackstone_flagstone.png new file mode 100644 index 00000000..77fd0d5b Binary files /dev/null and b/public/textures/mcwpaths/blackstone_flagstone.png differ diff --git a/public/textures/mcwpaths/blackstone_flagstone_path.png b/public/textures/mcwpaths/blackstone_flagstone_path.png new file mode 100644 index 00000000..45cdf356 Binary files /dev/null and b/public/textures/mcwpaths/blackstone_flagstone_path.png differ diff --git a/public/textures/mcwpaths/blackstone_flagstone_slab.png b/public/textures/mcwpaths/blackstone_flagstone_slab.png new file mode 100644 index 00000000..8e96e6e5 Binary files /dev/null and b/public/textures/mcwpaths/blackstone_flagstone_slab.png differ diff --git a/public/textures/mcwpaths/blackstone_flagstone_stairs.png b/public/textures/mcwpaths/blackstone_flagstone_stairs.png new file mode 100644 index 00000000..ea8c2e46 Binary files /dev/null and b/public/textures/mcwpaths/blackstone_flagstone_stairs.png differ diff --git a/public/textures/mcwpaths/blackstone_honeycomb_paving.png b/public/textures/mcwpaths/blackstone_honeycomb_paving.png new file mode 100644 index 00000000..947b526e Binary files /dev/null and b/public/textures/mcwpaths/blackstone_honeycomb_paving.png differ diff --git a/public/textures/mcwpaths/blackstone_running_bond.png b/public/textures/mcwpaths/blackstone_running_bond.png new file mode 100644 index 00000000..86b78b5b Binary files /dev/null and b/public/textures/mcwpaths/blackstone_running_bond.png differ diff --git a/public/textures/mcwpaths/blackstone_running_bond_path.png b/public/textures/mcwpaths/blackstone_running_bond_path.png new file mode 100644 index 00000000..3ffd314f Binary files /dev/null and b/public/textures/mcwpaths/blackstone_running_bond_path.png differ diff --git a/public/textures/mcwpaths/blackstone_running_bond_slab.png b/public/textures/mcwpaths/blackstone_running_bond_slab.png new file mode 100644 index 00000000..8c69b97e Binary files /dev/null and b/public/textures/mcwpaths/blackstone_running_bond_slab.png differ diff --git a/public/textures/mcwpaths/blackstone_running_bond_stairs.png b/public/textures/mcwpaths/blackstone_running_bond_stairs.png new file mode 100644 index 00000000..da7e8f17 Binary files /dev/null and b/public/textures/mcwpaths/blackstone_running_bond_stairs.png differ diff --git a/public/textures/mcwpaths/blackstone_square_paving.png b/public/textures/mcwpaths/blackstone_square_paving.png new file mode 100644 index 00000000..5fb43fb4 Binary files /dev/null and b/public/textures/mcwpaths/blackstone_square_paving.png differ diff --git a/public/textures/mcwpaths/blackstone_strewn_rocky_path.png b/public/textures/mcwpaths/blackstone_strewn_rocky_path.png new file mode 100644 index 00000000..a7049e20 Binary files /dev/null and b/public/textures/mcwpaths/blackstone_strewn_rocky_path.png differ diff --git a/public/textures/mcwpaths/blackstone_windmill_weave.png b/public/textures/mcwpaths/blackstone_windmill_weave.png new file mode 100644 index 00000000..c9393645 Binary files /dev/null and b/public/textures/mcwpaths/blackstone_windmill_weave.png differ diff --git a/public/textures/mcwpaths/blackstone_windmill_weave_path.png b/public/textures/mcwpaths/blackstone_windmill_weave_path.png new file mode 100644 index 00000000..ab023495 Binary files /dev/null and b/public/textures/mcwpaths/blackstone_windmill_weave_path.png differ diff --git a/public/textures/mcwpaths/blackstone_windmill_weave_slab.png b/public/textures/mcwpaths/blackstone_windmill_weave_slab.png new file mode 100644 index 00000000..67ef841e Binary files /dev/null and b/public/textures/mcwpaths/blackstone_windmill_weave_slab.png differ diff --git a/public/textures/mcwpaths/blackstone_windmill_weave_stairs.png b/public/textures/mcwpaths/blackstone_windmill_weave_stairs.png new file mode 100644 index 00000000..94240657 Binary files /dev/null and b/public/textures/mcwpaths/blackstone_windmill_weave_stairs.png differ diff --git a/public/textures/mcwpaths/brick_basket_weave_paving.png b/public/textures/mcwpaths/brick_basket_weave_paving.png new file mode 100644 index 00000000..1fb4515c Binary files /dev/null and b/public/textures/mcwpaths/brick_basket_weave_paving.png differ diff --git a/public/textures/mcwpaths/brick_clover_paving.png b/public/textures/mcwpaths/brick_clover_paving.png new file mode 100644 index 00000000..cf8d5c2f Binary files /dev/null and b/public/textures/mcwpaths/brick_clover_paving.png differ diff --git a/public/textures/mcwpaths/brick_crystal_floor.png b/public/textures/mcwpaths/brick_crystal_floor.png new file mode 100644 index 00000000..2447bfd8 Binary files /dev/null and b/public/textures/mcwpaths/brick_crystal_floor.png differ diff --git a/public/textures/mcwpaths/brick_crystal_floor_path.png b/public/textures/mcwpaths/brick_crystal_floor_path.png new file mode 100644 index 00000000..180b1d21 Binary files /dev/null and b/public/textures/mcwpaths/brick_crystal_floor_path.png differ diff --git a/public/textures/mcwpaths/brick_crystal_floor_slab.png b/public/textures/mcwpaths/brick_crystal_floor_slab.png new file mode 100644 index 00000000..bf126778 Binary files /dev/null and b/public/textures/mcwpaths/brick_crystal_floor_slab.png differ diff --git a/public/textures/mcwpaths/brick_crystal_floor_stairs.png b/public/textures/mcwpaths/brick_crystal_floor_stairs.png new file mode 100644 index 00000000..feb9da4a Binary files /dev/null and b/public/textures/mcwpaths/brick_crystal_floor_stairs.png differ diff --git a/public/textures/mcwpaths/brick_diamond_paving.png b/public/textures/mcwpaths/brick_diamond_paving.png new file mode 100644 index 00000000..dd2849f2 Binary files /dev/null and b/public/textures/mcwpaths/brick_diamond_paving.png differ diff --git a/public/textures/mcwpaths/brick_dumble_paving.png b/public/textures/mcwpaths/brick_dumble_paving.png new file mode 100644 index 00000000..089f37c9 Binary files /dev/null and b/public/textures/mcwpaths/brick_dumble_paving.png differ diff --git a/public/textures/mcwpaths/brick_flagstone.png b/public/textures/mcwpaths/brick_flagstone.png new file mode 100644 index 00000000..722eae6b Binary files /dev/null and b/public/textures/mcwpaths/brick_flagstone.png differ diff --git a/public/textures/mcwpaths/brick_flagstone_path.png b/public/textures/mcwpaths/brick_flagstone_path.png new file mode 100644 index 00000000..c99c84f3 Binary files /dev/null and b/public/textures/mcwpaths/brick_flagstone_path.png differ diff --git a/public/textures/mcwpaths/brick_flagstone_slab.png b/public/textures/mcwpaths/brick_flagstone_slab.png new file mode 100644 index 00000000..d41b72c1 Binary files /dev/null and b/public/textures/mcwpaths/brick_flagstone_slab.png differ diff --git a/public/textures/mcwpaths/brick_flagstone_stairs.png b/public/textures/mcwpaths/brick_flagstone_stairs.png new file mode 100644 index 00000000..a1deedbe Binary files /dev/null and b/public/textures/mcwpaths/brick_flagstone_stairs.png differ diff --git a/public/textures/mcwpaths/brick_honeycomb_paving.png b/public/textures/mcwpaths/brick_honeycomb_paving.png new file mode 100644 index 00000000..ce9f1c12 Binary files /dev/null and b/public/textures/mcwpaths/brick_honeycomb_paving.png differ diff --git a/public/textures/mcwpaths/brick_running_bond.png b/public/textures/mcwpaths/brick_running_bond.png new file mode 100644 index 00000000..036ff68d Binary files /dev/null and b/public/textures/mcwpaths/brick_running_bond.png differ diff --git a/public/textures/mcwpaths/brick_running_bond_path.png b/public/textures/mcwpaths/brick_running_bond_path.png new file mode 100644 index 00000000..1a913e95 Binary files /dev/null and b/public/textures/mcwpaths/brick_running_bond_path.png differ diff --git a/public/textures/mcwpaths/brick_running_bond_slab.png b/public/textures/mcwpaths/brick_running_bond_slab.png new file mode 100644 index 00000000..4a4323e1 Binary files /dev/null and b/public/textures/mcwpaths/brick_running_bond_slab.png differ diff --git a/public/textures/mcwpaths/brick_running_bond_stairs.png b/public/textures/mcwpaths/brick_running_bond_stairs.png new file mode 100644 index 00000000..35ea7aa8 Binary files /dev/null and b/public/textures/mcwpaths/brick_running_bond_stairs.png differ diff --git a/public/textures/mcwpaths/brick_square_paving.png b/public/textures/mcwpaths/brick_square_paving.png new file mode 100644 index 00000000..76ca65c2 Binary files /dev/null and b/public/textures/mcwpaths/brick_square_paving.png differ diff --git a/public/textures/mcwpaths/brick_strewn_rocky_path.png b/public/textures/mcwpaths/brick_strewn_rocky_path.png new file mode 100644 index 00000000..cc89e7bb Binary files /dev/null and b/public/textures/mcwpaths/brick_strewn_rocky_path.png differ diff --git a/public/textures/mcwpaths/brick_windmill_weave.png b/public/textures/mcwpaths/brick_windmill_weave.png new file mode 100644 index 00000000..fb2fed15 Binary files /dev/null and b/public/textures/mcwpaths/brick_windmill_weave.png differ diff --git a/public/textures/mcwpaths/brick_windmill_weave_path.png b/public/textures/mcwpaths/brick_windmill_weave_path.png new file mode 100644 index 00000000..13ce82c4 Binary files /dev/null and b/public/textures/mcwpaths/brick_windmill_weave_path.png differ diff --git a/public/textures/mcwpaths/brick_windmill_weave_slab.png b/public/textures/mcwpaths/brick_windmill_weave_slab.png new file mode 100644 index 00000000..c3e63d08 Binary files /dev/null and b/public/textures/mcwpaths/brick_windmill_weave_slab.png differ diff --git a/public/textures/mcwpaths/brick_windmill_weave_stairs.png b/public/textures/mcwpaths/brick_windmill_weave_stairs.png new file mode 100644 index 00000000..81c0d755 Binary files /dev/null and b/public/textures/mcwpaths/brick_windmill_weave_stairs.png differ diff --git a/public/textures/mcwpaths/cherry_planks_path.png b/public/textures/mcwpaths/cherry_planks_path.png new file mode 100644 index 00000000..9d75763e Binary files /dev/null and b/public/textures/mcwpaths/cherry_planks_path.png differ diff --git a/public/textures/mcwpaths/cobbled_deepslate_basket_weave_paving.png b/public/textures/mcwpaths/cobbled_deepslate_basket_weave_paving.png new file mode 100644 index 00000000..a919cbce Binary files /dev/null and b/public/textures/mcwpaths/cobbled_deepslate_basket_weave_paving.png differ diff --git a/public/textures/mcwpaths/cobbled_deepslate_clover_paving.png b/public/textures/mcwpaths/cobbled_deepslate_clover_paving.png new file mode 100644 index 00000000..225406cc Binary files /dev/null and b/public/textures/mcwpaths/cobbled_deepslate_clover_paving.png differ diff --git a/public/textures/mcwpaths/cobbled_deepslate_crystal_floor.png b/public/textures/mcwpaths/cobbled_deepslate_crystal_floor.png new file mode 100644 index 00000000..94c12f0b Binary files /dev/null and b/public/textures/mcwpaths/cobbled_deepslate_crystal_floor.png differ diff --git a/public/textures/mcwpaths/cobbled_deepslate_crystal_floor_path.png b/public/textures/mcwpaths/cobbled_deepslate_crystal_floor_path.png new file mode 100644 index 00000000..48750c57 Binary files /dev/null and b/public/textures/mcwpaths/cobbled_deepslate_crystal_floor_path.png differ diff --git a/public/textures/mcwpaths/cobbled_deepslate_crystal_floor_slab.png b/public/textures/mcwpaths/cobbled_deepslate_crystal_floor_slab.png new file mode 100644 index 00000000..920a8118 Binary files /dev/null and b/public/textures/mcwpaths/cobbled_deepslate_crystal_floor_slab.png differ diff --git a/public/textures/mcwpaths/cobbled_deepslate_crystal_floor_stairs.png b/public/textures/mcwpaths/cobbled_deepslate_crystal_floor_stairs.png new file mode 100644 index 00000000..2fbfb316 Binary files /dev/null and b/public/textures/mcwpaths/cobbled_deepslate_crystal_floor_stairs.png differ diff --git a/public/textures/mcwpaths/cobbled_deepslate_diamond_paving.png b/public/textures/mcwpaths/cobbled_deepslate_diamond_paving.png new file mode 100644 index 00000000..a4446a29 Binary files /dev/null and b/public/textures/mcwpaths/cobbled_deepslate_diamond_paving.png differ diff --git a/public/textures/mcwpaths/cobbled_deepslate_dumble_paving.png b/public/textures/mcwpaths/cobbled_deepslate_dumble_paving.png new file mode 100644 index 00000000..b8505da3 Binary files /dev/null and b/public/textures/mcwpaths/cobbled_deepslate_dumble_paving.png differ diff --git a/public/textures/mcwpaths/cobbled_deepslate_flagstone.png b/public/textures/mcwpaths/cobbled_deepslate_flagstone.png new file mode 100644 index 00000000..ae248006 Binary files /dev/null and b/public/textures/mcwpaths/cobbled_deepslate_flagstone.png differ diff --git a/public/textures/mcwpaths/cobbled_deepslate_flagstone_path.png b/public/textures/mcwpaths/cobbled_deepslate_flagstone_path.png new file mode 100644 index 00000000..b3162169 Binary files /dev/null and b/public/textures/mcwpaths/cobbled_deepslate_flagstone_path.png differ diff --git a/public/textures/mcwpaths/cobbled_deepslate_flagstone_slab.png b/public/textures/mcwpaths/cobbled_deepslate_flagstone_slab.png new file mode 100644 index 00000000..ee983db0 Binary files /dev/null and b/public/textures/mcwpaths/cobbled_deepslate_flagstone_slab.png differ diff --git a/public/textures/mcwpaths/cobbled_deepslate_flagstone_stairs.png b/public/textures/mcwpaths/cobbled_deepslate_flagstone_stairs.png new file mode 100644 index 00000000..1a384409 Binary files /dev/null and b/public/textures/mcwpaths/cobbled_deepslate_flagstone_stairs.png differ diff --git a/public/textures/mcwpaths/cobbled_deepslate_honeycomb_paving.png b/public/textures/mcwpaths/cobbled_deepslate_honeycomb_paving.png new file mode 100644 index 00000000..39f7ed5f Binary files /dev/null and b/public/textures/mcwpaths/cobbled_deepslate_honeycomb_paving.png differ diff --git a/public/textures/mcwpaths/cobbled_deepslate_running_bond.png b/public/textures/mcwpaths/cobbled_deepslate_running_bond.png new file mode 100644 index 00000000..0903eda0 Binary files /dev/null and b/public/textures/mcwpaths/cobbled_deepslate_running_bond.png differ diff --git a/public/textures/mcwpaths/cobbled_deepslate_running_bond_path.png b/public/textures/mcwpaths/cobbled_deepslate_running_bond_path.png new file mode 100644 index 00000000..524df0a2 Binary files /dev/null and b/public/textures/mcwpaths/cobbled_deepslate_running_bond_path.png differ diff --git a/public/textures/mcwpaths/cobbled_deepslate_running_bond_slab.png b/public/textures/mcwpaths/cobbled_deepslate_running_bond_slab.png new file mode 100644 index 00000000..60377536 Binary files /dev/null and b/public/textures/mcwpaths/cobbled_deepslate_running_bond_slab.png differ diff --git a/public/textures/mcwpaths/cobbled_deepslate_running_bond_stairs.png b/public/textures/mcwpaths/cobbled_deepslate_running_bond_stairs.png new file mode 100644 index 00000000..8c20e4d1 Binary files /dev/null and b/public/textures/mcwpaths/cobbled_deepslate_running_bond_stairs.png differ diff --git a/public/textures/mcwpaths/cobbled_deepslate_square_paving.png b/public/textures/mcwpaths/cobbled_deepslate_square_paving.png new file mode 100644 index 00000000..477a05b6 Binary files /dev/null and b/public/textures/mcwpaths/cobbled_deepslate_square_paving.png differ diff --git a/public/textures/mcwpaths/cobbled_deepslate_strewn_rocky_path.png b/public/textures/mcwpaths/cobbled_deepslate_strewn_rocky_path.png new file mode 100644 index 00000000..1bcb4f02 Binary files /dev/null and b/public/textures/mcwpaths/cobbled_deepslate_strewn_rocky_path.png differ diff --git a/public/textures/mcwpaths/cobbled_deepslate_windmill_weave.png b/public/textures/mcwpaths/cobbled_deepslate_windmill_weave.png new file mode 100644 index 00000000..5b4078ae Binary files /dev/null and b/public/textures/mcwpaths/cobbled_deepslate_windmill_weave.png differ diff --git a/public/textures/mcwpaths/cobbled_deepslate_windmill_weave_path.png b/public/textures/mcwpaths/cobbled_deepslate_windmill_weave_path.png new file mode 100644 index 00000000..634cdca9 Binary files /dev/null and b/public/textures/mcwpaths/cobbled_deepslate_windmill_weave_path.png differ diff --git a/public/textures/mcwpaths/cobbled_deepslate_windmill_weave_slab.png b/public/textures/mcwpaths/cobbled_deepslate_windmill_weave_slab.png new file mode 100644 index 00000000..29ecca39 Binary files /dev/null and b/public/textures/mcwpaths/cobbled_deepslate_windmill_weave_slab.png differ diff --git a/public/textures/mcwpaths/cobbled_deepslate_windmill_weave_stairs.png b/public/textures/mcwpaths/cobbled_deepslate_windmill_weave_stairs.png new file mode 100644 index 00000000..dce40f50 Binary files /dev/null and b/public/textures/mcwpaths/cobbled_deepslate_windmill_weave_stairs.png differ diff --git a/public/textures/mcwpaths/cobblestone_basket_weave_paving.png b/public/textures/mcwpaths/cobblestone_basket_weave_paving.png new file mode 100644 index 00000000..994c08d0 Binary files /dev/null and b/public/textures/mcwpaths/cobblestone_basket_weave_paving.png differ diff --git a/public/textures/mcwpaths/cobblestone_clover_paving.png b/public/textures/mcwpaths/cobblestone_clover_paving.png new file mode 100644 index 00000000..c22051f0 Binary files /dev/null and b/public/textures/mcwpaths/cobblestone_clover_paving.png differ diff --git a/public/textures/mcwpaths/cobblestone_diamond_paving.png b/public/textures/mcwpaths/cobblestone_diamond_paving.png new file mode 100644 index 00000000..c2c37011 Binary files /dev/null and b/public/textures/mcwpaths/cobblestone_diamond_paving.png differ diff --git a/public/textures/mcwpaths/cobblestone_dumble_paving.png b/public/textures/mcwpaths/cobblestone_dumble_paving.png new file mode 100644 index 00000000..3b18ea1d Binary files /dev/null and b/public/textures/mcwpaths/cobblestone_dumble_paving.png differ diff --git a/public/textures/mcwpaths/cobblestone_honeycomb_paving.png b/public/textures/mcwpaths/cobblestone_honeycomb_paving.png new file mode 100644 index 00000000..e4d88b92 Binary files /dev/null and b/public/textures/mcwpaths/cobblestone_honeycomb_paving.png differ diff --git a/public/textures/mcwpaths/cobblestone_square_paving.png b/public/textures/mcwpaths/cobblestone_square_paving.png new file mode 100644 index 00000000..89ec62a2 Binary files /dev/null and b/public/textures/mcwpaths/cobblestone_square_paving.png differ diff --git a/public/textures/mcwpaths/crimson_planks_path.png b/public/textures/mcwpaths/crimson_planks_path.png new file mode 100644 index 00000000..b8bda57f Binary files /dev/null and b/public/textures/mcwpaths/crimson_planks_path.png differ diff --git a/public/textures/mcwpaths/dark_oak_planks_path.png b/public/textures/mcwpaths/dark_oak_planks_path.png new file mode 100644 index 00000000..231f45af Binary files /dev/null and b/public/textures/mcwpaths/dark_oak_planks_path.png differ diff --git a/public/textures/mcwpaths/dark_prismarine_basket_weave_paving.png b/public/textures/mcwpaths/dark_prismarine_basket_weave_paving.png new file mode 100644 index 00000000..4f57482b Binary files /dev/null and b/public/textures/mcwpaths/dark_prismarine_basket_weave_paving.png differ diff --git a/public/textures/mcwpaths/dark_prismarine_clover_paving.png b/public/textures/mcwpaths/dark_prismarine_clover_paving.png new file mode 100644 index 00000000..ceaf2661 Binary files /dev/null and b/public/textures/mcwpaths/dark_prismarine_clover_paving.png differ diff --git a/public/textures/mcwpaths/dark_prismarine_crystal_floor.png b/public/textures/mcwpaths/dark_prismarine_crystal_floor.png new file mode 100644 index 00000000..07d12615 Binary files /dev/null and b/public/textures/mcwpaths/dark_prismarine_crystal_floor.png differ diff --git a/public/textures/mcwpaths/dark_prismarine_crystal_floor_path.png b/public/textures/mcwpaths/dark_prismarine_crystal_floor_path.png new file mode 100644 index 00000000..b3836617 Binary files /dev/null and b/public/textures/mcwpaths/dark_prismarine_crystal_floor_path.png differ diff --git a/public/textures/mcwpaths/dark_prismarine_crystal_floor_slab.png b/public/textures/mcwpaths/dark_prismarine_crystal_floor_slab.png new file mode 100644 index 00000000..8271332f Binary files /dev/null and b/public/textures/mcwpaths/dark_prismarine_crystal_floor_slab.png differ diff --git a/public/textures/mcwpaths/dark_prismarine_crystal_floor_stairs.png b/public/textures/mcwpaths/dark_prismarine_crystal_floor_stairs.png new file mode 100644 index 00000000..7c7f5e27 Binary files /dev/null and b/public/textures/mcwpaths/dark_prismarine_crystal_floor_stairs.png differ diff --git a/public/textures/mcwpaths/dark_prismarine_diamond_paving.png b/public/textures/mcwpaths/dark_prismarine_diamond_paving.png new file mode 100644 index 00000000..296e7837 Binary files /dev/null and b/public/textures/mcwpaths/dark_prismarine_diamond_paving.png differ diff --git a/public/textures/mcwpaths/dark_prismarine_dumble_paving.png b/public/textures/mcwpaths/dark_prismarine_dumble_paving.png new file mode 100644 index 00000000..adec0ff5 Binary files /dev/null and b/public/textures/mcwpaths/dark_prismarine_dumble_paving.png differ diff --git a/public/textures/mcwpaths/dark_prismarine_flagstone.png b/public/textures/mcwpaths/dark_prismarine_flagstone.png new file mode 100644 index 00000000..069041e6 Binary files /dev/null and b/public/textures/mcwpaths/dark_prismarine_flagstone.png differ diff --git a/public/textures/mcwpaths/dark_prismarine_flagstone_path.png b/public/textures/mcwpaths/dark_prismarine_flagstone_path.png new file mode 100644 index 00000000..f331f92f Binary files /dev/null and b/public/textures/mcwpaths/dark_prismarine_flagstone_path.png differ diff --git a/public/textures/mcwpaths/dark_prismarine_flagstone_slab.png b/public/textures/mcwpaths/dark_prismarine_flagstone_slab.png new file mode 100644 index 00000000..f14fd115 Binary files /dev/null and b/public/textures/mcwpaths/dark_prismarine_flagstone_slab.png differ diff --git a/public/textures/mcwpaths/dark_prismarine_flagstone_stairs.png b/public/textures/mcwpaths/dark_prismarine_flagstone_stairs.png new file mode 100644 index 00000000..b27f8971 Binary files /dev/null and b/public/textures/mcwpaths/dark_prismarine_flagstone_stairs.png differ diff --git a/public/textures/mcwpaths/dark_prismarine_honeycomb_paving.png b/public/textures/mcwpaths/dark_prismarine_honeycomb_paving.png new file mode 100644 index 00000000..908ecba5 Binary files /dev/null and b/public/textures/mcwpaths/dark_prismarine_honeycomb_paving.png differ diff --git a/public/textures/mcwpaths/dark_prismarine_running_bond.png b/public/textures/mcwpaths/dark_prismarine_running_bond.png new file mode 100644 index 00000000..eae53c6c Binary files /dev/null and b/public/textures/mcwpaths/dark_prismarine_running_bond.png differ diff --git a/public/textures/mcwpaths/dark_prismarine_running_bond_path.png b/public/textures/mcwpaths/dark_prismarine_running_bond_path.png new file mode 100644 index 00000000..1149c979 Binary files /dev/null and b/public/textures/mcwpaths/dark_prismarine_running_bond_path.png differ diff --git a/public/textures/mcwpaths/dark_prismarine_running_bond_slab.png b/public/textures/mcwpaths/dark_prismarine_running_bond_slab.png new file mode 100644 index 00000000..ac8cfa96 Binary files /dev/null and b/public/textures/mcwpaths/dark_prismarine_running_bond_slab.png differ diff --git a/public/textures/mcwpaths/dark_prismarine_running_bond_stairs.png b/public/textures/mcwpaths/dark_prismarine_running_bond_stairs.png new file mode 100644 index 00000000..f3aeb140 Binary files /dev/null and b/public/textures/mcwpaths/dark_prismarine_running_bond_stairs.png differ diff --git a/public/textures/mcwpaths/dark_prismarine_square_paving.png b/public/textures/mcwpaths/dark_prismarine_square_paving.png new file mode 100644 index 00000000..3aebf83e Binary files /dev/null and b/public/textures/mcwpaths/dark_prismarine_square_paving.png differ diff --git a/public/textures/mcwpaths/dark_prismarine_strewn_rocky_path.png b/public/textures/mcwpaths/dark_prismarine_strewn_rocky_path.png new file mode 100644 index 00000000..f8821dfc Binary files /dev/null and b/public/textures/mcwpaths/dark_prismarine_strewn_rocky_path.png differ diff --git a/public/textures/mcwpaths/dark_prismarine_windmill_weave.png b/public/textures/mcwpaths/dark_prismarine_windmill_weave.png new file mode 100644 index 00000000..5bd7727d Binary files /dev/null and b/public/textures/mcwpaths/dark_prismarine_windmill_weave.png differ diff --git a/public/textures/mcwpaths/dark_prismarine_windmill_weave_path.png b/public/textures/mcwpaths/dark_prismarine_windmill_weave_path.png new file mode 100644 index 00000000..4aaa54e6 Binary files /dev/null and b/public/textures/mcwpaths/dark_prismarine_windmill_weave_path.png differ diff --git a/public/textures/mcwpaths/dark_prismarine_windmill_weave_slab.png b/public/textures/mcwpaths/dark_prismarine_windmill_weave_slab.png new file mode 100644 index 00000000..00fe0131 Binary files /dev/null and b/public/textures/mcwpaths/dark_prismarine_windmill_weave_slab.png differ diff --git a/public/textures/mcwpaths/dark_prismarine_windmill_weave_stairs.png b/public/textures/mcwpaths/dark_prismarine_windmill_weave_stairs.png new file mode 100644 index 00000000..5c73e264 Binary files /dev/null and b/public/textures/mcwpaths/dark_prismarine_windmill_weave_stairs.png differ diff --git a/public/textures/mcwpaths/deepslate_basket_weave_paving.png b/public/textures/mcwpaths/deepslate_basket_weave_paving.png new file mode 100644 index 00000000..1d225608 Binary files /dev/null and b/public/textures/mcwpaths/deepslate_basket_weave_paving.png differ diff --git a/public/textures/mcwpaths/deepslate_clover_paving.png b/public/textures/mcwpaths/deepslate_clover_paving.png new file mode 100644 index 00000000..c38e1567 Binary files /dev/null and b/public/textures/mcwpaths/deepslate_clover_paving.png differ diff --git a/public/textures/mcwpaths/deepslate_crystal_floor.png b/public/textures/mcwpaths/deepslate_crystal_floor.png new file mode 100644 index 00000000..6d102b05 Binary files /dev/null and b/public/textures/mcwpaths/deepslate_crystal_floor.png differ diff --git a/public/textures/mcwpaths/deepslate_crystal_floor_path.png b/public/textures/mcwpaths/deepslate_crystal_floor_path.png new file mode 100644 index 00000000..8dda8e14 Binary files /dev/null and b/public/textures/mcwpaths/deepslate_crystal_floor_path.png differ diff --git a/public/textures/mcwpaths/deepslate_crystal_floor_slab.png b/public/textures/mcwpaths/deepslate_crystal_floor_slab.png new file mode 100644 index 00000000..c0ba832d Binary files /dev/null and b/public/textures/mcwpaths/deepslate_crystal_floor_slab.png differ diff --git a/public/textures/mcwpaths/deepslate_crystal_floor_stairs.png b/public/textures/mcwpaths/deepslate_crystal_floor_stairs.png new file mode 100644 index 00000000..ac3608a2 Binary files /dev/null and b/public/textures/mcwpaths/deepslate_crystal_floor_stairs.png differ diff --git a/public/textures/mcwpaths/deepslate_diamond_paving.png b/public/textures/mcwpaths/deepslate_diamond_paving.png new file mode 100644 index 00000000..3aec3aa4 Binary files /dev/null and b/public/textures/mcwpaths/deepslate_diamond_paving.png differ diff --git a/public/textures/mcwpaths/deepslate_dumble_paving.png b/public/textures/mcwpaths/deepslate_dumble_paving.png new file mode 100644 index 00000000..71a5fc46 Binary files /dev/null and b/public/textures/mcwpaths/deepslate_dumble_paving.png differ diff --git a/public/textures/mcwpaths/deepslate_flagstone.png b/public/textures/mcwpaths/deepslate_flagstone.png new file mode 100644 index 00000000..5847bccc Binary files /dev/null and b/public/textures/mcwpaths/deepslate_flagstone.png differ diff --git a/public/textures/mcwpaths/deepslate_flagstone_path.png b/public/textures/mcwpaths/deepslate_flagstone_path.png new file mode 100644 index 00000000..f27e5dca Binary files /dev/null and b/public/textures/mcwpaths/deepslate_flagstone_path.png differ diff --git a/public/textures/mcwpaths/deepslate_flagstone_slab.png b/public/textures/mcwpaths/deepslate_flagstone_slab.png new file mode 100644 index 00000000..42c35666 Binary files /dev/null and b/public/textures/mcwpaths/deepslate_flagstone_slab.png differ diff --git a/public/textures/mcwpaths/deepslate_flagstone_stairs.png b/public/textures/mcwpaths/deepslate_flagstone_stairs.png new file mode 100644 index 00000000..709f0358 Binary files /dev/null and b/public/textures/mcwpaths/deepslate_flagstone_stairs.png differ diff --git a/public/textures/mcwpaths/deepslate_honeycomb_paving.png b/public/textures/mcwpaths/deepslate_honeycomb_paving.png new file mode 100644 index 00000000..2e47220f Binary files /dev/null and b/public/textures/mcwpaths/deepslate_honeycomb_paving.png differ diff --git a/public/textures/mcwpaths/deepslate_running_bond.png b/public/textures/mcwpaths/deepslate_running_bond.png new file mode 100644 index 00000000..4ae1823a Binary files /dev/null and b/public/textures/mcwpaths/deepslate_running_bond.png differ diff --git a/public/textures/mcwpaths/deepslate_running_bond_path.png b/public/textures/mcwpaths/deepslate_running_bond_path.png new file mode 100644 index 00000000..73f44f41 Binary files /dev/null and b/public/textures/mcwpaths/deepslate_running_bond_path.png differ diff --git a/public/textures/mcwpaths/deepslate_running_bond_slab.png b/public/textures/mcwpaths/deepslate_running_bond_slab.png new file mode 100644 index 00000000..e332f66f Binary files /dev/null and b/public/textures/mcwpaths/deepslate_running_bond_slab.png differ diff --git a/public/textures/mcwpaths/deepslate_running_bond_stairs.png b/public/textures/mcwpaths/deepslate_running_bond_stairs.png new file mode 100644 index 00000000..f442bbbc Binary files /dev/null and b/public/textures/mcwpaths/deepslate_running_bond_stairs.png differ diff --git a/public/textures/mcwpaths/deepslate_square_paving.png b/public/textures/mcwpaths/deepslate_square_paving.png new file mode 100644 index 00000000..e67cd819 Binary files /dev/null and b/public/textures/mcwpaths/deepslate_square_paving.png differ diff --git a/public/textures/mcwpaths/deepslate_strewn_rocky_path.png b/public/textures/mcwpaths/deepslate_strewn_rocky_path.png new file mode 100644 index 00000000..1262cc9c Binary files /dev/null and b/public/textures/mcwpaths/deepslate_strewn_rocky_path.png differ diff --git a/public/textures/mcwpaths/deepslate_windmill_weave.png b/public/textures/mcwpaths/deepslate_windmill_weave.png new file mode 100644 index 00000000..7e842466 Binary files /dev/null and b/public/textures/mcwpaths/deepslate_windmill_weave.png differ diff --git a/public/textures/mcwpaths/deepslate_windmill_weave_path.png b/public/textures/mcwpaths/deepslate_windmill_weave_path.png new file mode 100644 index 00000000..f9082566 Binary files /dev/null and b/public/textures/mcwpaths/deepslate_windmill_weave_path.png differ diff --git a/public/textures/mcwpaths/deepslate_windmill_weave_slab.png b/public/textures/mcwpaths/deepslate_windmill_weave_slab.png new file mode 100644 index 00000000..fef91cf3 Binary files /dev/null and b/public/textures/mcwpaths/deepslate_windmill_weave_slab.png differ diff --git a/public/textures/mcwpaths/deepslate_windmill_weave_stairs.png b/public/textures/mcwpaths/deepslate_windmill_weave_stairs.png new file mode 100644 index 00000000..f4a7fcee Binary files /dev/null and b/public/textures/mcwpaths/deepslate_windmill_weave_stairs.png differ diff --git a/public/textures/mcwpaths/diorite_basket_weave_paving.png b/public/textures/mcwpaths/diorite_basket_weave_paving.png new file mode 100644 index 00000000..764c8dc0 Binary files /dev/null and b/public/textures/mcwpaths/diorite_basket_weave_paving.png differ diff --git a/public/textures/mcwpaths/diorite_clover_paving.png b/public/textures/mcwpaths/diorite_clover_paving.png new file mode 100644 index 00000000..825f5878 Binary files /dev/null and b/public/textures/mcwpaths/diorite_clover_paving.png differ diff --git a/public/textures/mcwpaths/diorite_crystal_floor.png b/public/textures/mcwpaths/diorite_crystal_floor.png new file mode 100644 index 00000000..9eef9931 Binary files /dev/null and b/public/textures/mcwpaths/diorite_crystal_floor.png differ diff --git a/public/textures/mcwpaths/diorite_crystal_floor_path.png b/public/textures/mcwpaths/diorite_crystal_floor_path.png new file mode 100644 index 00000000..48b73b4c Binary files /dev/null and b/public/textures/mcwpaths/diorite_crystal_floor_path.png differ diff --git a/public/textures/mcwpaths/diorite_crystal_floor_slab.png b/public/textures/mcwpaths/diorite_crystal_floor_slab.png new file mode 100644 index 00000000..2583b6d7 Binary files /dev/null and b/public/textures/mcwpaths/diorite_crystal_floor_slab.png differ diff --git a/public/textures/mcwpaths/diorite_crystal_floor_stairs.png b/public/textures/mcwpaths/diorite_crystal_floor_stairs.png new file mode 100644 index 00000000..3f8e4960 Binary files /dev/null and b/public/textures/mcwpaths/diorite_crystal_floor_stairs.png differ diff --git a/public/textures/mcwpaths/diorite_diamond_paving.png b/public/textures/mcwpaths/diorite_diamond_paving.png new file mode 100644 index 00000000..538b6024 Binary files /dev/null and b/public/textures/mcwpaths/diorite_diamond_paving.png differ diff --git a/public/textures/mcwpaths/diorite_dumble_paving.png b/public/textures/mcwpaths/diorite_dumble_paving.png new file mode 100644 index 00000000..41d0fd4b Binary files /dev/null and b/public/textures/mcwpaths/diorite_dumble_paving.png differ diff --git a/public/textures/mcwpaths/diorite_flagstone.png b/public/textures/mcwpaths/diorite_flagstone.png new file mode 100644 index 00000000..48cd4e18 Binary files /dev/null and b/public/textures/mcwpaths/diorite_flagstone.png differ diff --git a/public/textures/mcwpaths/diorite_flagstone_path.png b/public/textures/mcwpaths/diorite_flagstone_path.png new file mode 100644 index 00000000..8f5eecb9 Binary files /dev/null and b/public/textures/mcwpaths/diorite_flagstone_path.png differ diff --git a/public/textures/mcwpaths/diorite_flagstone_slab.png b/public/textures/mcwpaths/diorite_flagstone_slab.png new file mode 100644 index 00000000..e4e4026e Binary files /dev/null and b/public/textures/mcwpaths/diorite_flagstone_slab.png differ diff --git a/public/textures/mcwpaths/diorite_flagstone_stairs.png b/public/textures/mcwpaths/diorite_flagstone_stairs.png new file mode 100644 index 00000000..a861a9dd Binary files /dev/null and b/public/textures/mcwpaths/diorite_flagstone_stairs.png differ diff --git a/public/textures/mcwpaths/diorite_honeycomb_paving.png b/public/textures/mcwpaths/diorite_honeycomb_paving.png new file mode 100644 index 00000000..326943df Binary files /dev/null and b/public/textures/mcwpaths/diorite_honeycomb_paving.png differ diff --git a/public/textures/mcwpaths/diorite_running_bond.png b/public/textures/mcwpaths/diorite_running_bond.png new file mode 100644 index 00000000..db759526 Binary files /dev/null and b/public/textures/mcwpaths/diorite_running_bond.png differ diff --git a/public/textures/mcwpaths/diorite_running_bond_path.png b/public/textures/mcwpaths/diorite_running_bond_path.png new file mode 100644 index 00000000..c5b71687 Binary files /dev/null and b/public/textures/mcwpaths/diorite_running_bond_path.png differ diff --git a/public/textures/mcwpaths/diorite_running_bond_slab.png b/public/textures/mcwpaths/diorite_running_bond_slab.png new file mode 100644 index 00000000..95ab41e9 Binary files /dev/null and b/public/textures/mcwpaths/diorite_running_bond_slab.png differ diff --git a/public/textures/mcwpaths/diorite_running_bond_stairs.png b/public/textures/mcwpaths/diorite_running_bond_stairs.png new file mode 100644 index 00000000..39067b06 Binary files /dev/null and b/public/textures/mcwpaths/diorite_running_bond_stairs.png differ diff --git a/public/textures/mcwpaths/diorite_square_paving.png b/public/textures/mcwpaths/diorite_square_paving.png new file mode 100644 index 00000000..4e18ab16 Binary files /dev/null and b/public/textures/mcwpaths/diorite_square_paving.png differ diff --git a/public/textures/mcwpaths/diorite_strewn_rocky_path.png b/public/textures/mcwpaths/diorite_strewn_rocky_path.png new file mode 100644 index 00000000..6c45e750 Binary files /dev/null and b/public/textures/mcwpaths/diorite_strewn_rocky_path.png differ diff --git a/public/textures/mcwpaths/diorite_windmill_weave.png b/public/textures/mcwpaths/diorite_windmill_weave.png new file mode 100644 index 00000000..b0141840 Binary files /dev/null and b/public/textures/mcwpaths/diorite_windmill_weave.png differ diff --git a/public/textures/mcwpaths/diorite_windmill_weave_path.png b/public/textures/mcwpaths/diorite_windmill_weave_path.png new file mode 100644 index 00000000..6221469b Binary files /dev/null and b/public/textures/mcwpaths/diorite_windmill_weave_path.png differ diff --git a/public/textures/mcwpaths/diorite_windmill_weave_slab.png b/public/textures/mcwpaths/diorite_windmill_weave_slab.png new file mode 100644 index 00000000..8cec58a5 Binary files /dev/null and b/public/textures/mcwpaths/diorite_windmill_weave_slab.png differ diff --git a/public/textures/mcwpaths/diorite_windmill_weave_stairs.png b/public/textures/mcwpaths/diorite_windmill_weave_stairs.png new file mode 100644 index 00000000..16298635 Binary files /dev/null and b/public/textures/mcwpaths/diorite_windmill_weave_stairs.png differ diff --git a/public/textures/mcwpaths/dirt_path_block.png b/public/textures/mcwpaths/dirt_path_block.png new file mode 100644 index 00000000..1425c323 Binary files /dev/null and b/public/textures/mcwpaths/dirt_path_block.png differ diff --git a/public/textures/mcwpaths/granite_basket_weave_paving.png b/public/textures/mcwpaths/granite_basket_weave_paving.png new file mode 100644 index 00000000..4bfb8c07 Binary files /dev/null and b/public/textures/mcwpaths/granite_basket_weave_paving.png differ diff --git a/public/textures/mcwpaths/granite_clover_paving.png b/public/textures/mcwpaths/granite_clover_paving.png new file mode 100644 index 00000000..e9e0dd61 Binary files /dev/null and b/public/textures/mcwpaths/granite_clover_paving.png differ diff --git a/public/textures/mcwpaths/granite_crystal_floor.png b/public/textures/mcwpaths/granite_crystal_floor.png new file mode 100644 index 00000000..e54120a9 Binary files /dev/null and b/public/textures/mcwpaths/granite_crystal_floor.png differ diff --git a/public/textures/mcwpaths/granite_crystal_floor_path.png b/public/textures/mcwpaths/granite_crystal_floor_path.png new file mode 100644 index 00000000..f0d838b4 Binary files /dev/null and b/public/textures/mcwpaths/granite_crystal_floor_path.png differ diff --git a/public/textures/mcwpaths/granite_crystal_floor_slab.png b/public/textures/mcwpaths/granite_crystal_floor_slab.png new file mode 100644 index 00000000..e57d794a Binary files /dev/null and b/public/textures/mcwpaths/granite_crystal_floor_slab.png differ diff --git a/public/textures/mcwpaths/granite_crystal_floor_stairs.png b/public/textures/mcwpaths/granite_crystal_floor_stairs.png new file mode 100644 index 00000000..a85b3c3d Binary files /dev/null and b/public/textures/mcwpaths/granite_crystal_floor_stairs.png differ diff --git a/public/textures/mcwpaths/granite_diamond_paving.png b/public/textures/mcwpaths/granite_diamond_paving.png new file mode 100644 index 00000000..798831bb Binary files /dev/null and b/public/textures/mcwpaths/granite_diamond_paving.png differ diff --git a/public/textures/mcwpaths/granite_dumble_paving.png b/public/textures/mcwpaths/granite_dumble_paving.png new file mode 100644 index 00000000..1387387e Binary files /dev/null and b/public/textures/mcwpaths/granite_dumble_paving.png differ diff --git a/public/textures/mcwpaths/granite_flagstone.png b/public/textures/mcwpaths/granite_flagstone.png new file mode 100644 index 00000000..664ebccc Binary files /dev/null and b/public/textures/mcwpaths/granite_flagstone.png differ diff --git a/public/textures/mcwpaths/granite_flagstone_path.png b/public/textures/mcwpaths/granite_flagstone_path.png new file mode 100644 index 00000000..da9e2f43 Binary files /dev/null and b/public/textures/mcwpaths/granite_flagstone_path.png differ diff --git a/public/textures/mcwpaths/granite_flagstone_slab.png b/public/textures/mcwpaths/granite_flagstone_slab.png new file mode 100644 index 00000000..f34d094c Binary files /dev/null and b/public/textures/mcwpaths/granite_flagstone_slab.png differ diff --git a/public/textures/mcwpaths/granite_flagstone_stairs.png b/public/textures/mcwpaths/granite_flagstone_stairs.png new file mode 100644 index 00000000..de9455a5 Binary files /dev/null and b/public/textures/mcwpaths/granite_flagstone_stairs.png differ diff --git a/public/textures/mcwpaths/granite_honeycomb_paving.png b/public/textures/mcwpaths/granite_honeycomb_paving.png new file mode 100644 index 00000000..b8dbf28c Binary files /dev/null and b/public/textures/mcwpaths/granite_honeycomb_paving.png differ diff --git a/public/textures/mcwpaths/granite_running_bond.png b/public/textures/mcwpaths/granite_running_bond.png new file mode 100644 index 00000000..689d0196 Binary files /dev/null and b/public/textures/mcwpaths/granite_running_bond.png differ diff --git a/public/textures/mcwpaths/granite_running_bond_path.png b/public/textures/mcwpaths/granite_running_bond_path.png new file mode 100644 index 00000000..2ac4f639 Binary files /dev/null and b/public/textures/mcwpaths/granite_running_bond_path.png differ diff --git a/public/textures/mcwpaths/granite_running_bond_slab.png b/public/textures/mcwpaths/granite_running_bond_slab.png new file mode 100644 index 00000000..9ebab49b Binary files /dev/null and b/public/textures/mcwpaths/granite_running_bond_slab.png differ diff --git a/public/textures/mcwpaths/granite_running_bond_stairs.png b/public/textures/mcwpaths/granite_running_bond_stairs.png new file mode 100644 index 00000000..8c37dfbd Binary files /dev/null and b/public/textures/mcwpaths/granite_running_bond_stairs.png differ diff --git a/public/textures/mcwpaths/granite_square_paving.png b/public/textures/mcwpaths/granite_square_paving.png new file mode 100644 index 00000000..06fd9fdf Binary files /dev/null and b/public/textures/mcwpaths/granite_square_paving.png differ diff --git a/public/textures/mcwpaths/granite_strewn_rocky_path.png b/public/textures/mcwpaths/granite_strewn_rocky_path.png new file mode 100644 index 00000000..919a9a28 Binary files /dev/null and b/public/textures/mcwpaths/granite_strewn_rocky_path.png differ diff --git a/public/textures/mcwpaths/granite_windmill_weave.png b/public/textures/mcwpaths/granite_windmill_weave.png new file mode 100644 index 00000000..5f8fce1b Binary files /dev/null and b/public/textures/mcwpaths/granite_windmill_weave.png differ diff --git a/public/textures/mcwpaths/granite_windmill_weave_path.png b/public/textures/mcwpaths/granite_windmill_weave_path.png new file mode 100644 index 00000000..798a5e67 Binary files /dev/null and b/public/textures/mcwpaths/granite_windmill_weave_path.png differ diff --git a/public/textures/mcwpaths/granite_windmill_weave_slab.png b/public/textures/mcwpaths/granite_windmill_weave_slab.png new file mode 100644 index 00000000..36426d56 Binary files /dev/null and b/public/textures/mcwpaths/granite_windmill_weave_slab.png differ diff --git a/public/textures/mcwpaths/granite_windmill_weave_stairs.png b/public/textures/mcwpaths/granite_windmill_weave_stairs.png new file mode 100644 index 00000000..bc39aa85 Binary files /dev/null and b/public/textures/mcwpaths/granite_windmill_weave_stairs.png differ diff --git a/public/textures/mcwpaths/gravel_path_block.png b/public/textures/mcwpaths/gravel_path_block.png new file mode 100644 index 00000000..2f39b08e Binary files /dev/null and b/public/textures/mcwpaths/gravel_path_block.png differ diff --git a/public/textures/mcwpaths/jungle_planks_path.png b/public/textures/mcwpaths/jungle_planks_path.png new file mode 100644 index 00000000..049340b7 Binary files /dev/null and b/public/textures/mcwpaths/jungle_planks_path.png differ diff --git a/public/textures/mcwpaths/mangrove_planks_path.png b/public/textures/mcwpaths/mangrove_planks_path.png new file mode 100644 index 00000000..10a12f0e Binary files /dev/null and b/public/textures/mcwpaths/mangrove_planks_path.png differ diff --git a/public/textures/mcwpaths/mossy_cobblestone_basket_weave_paving.png b/public/textures/mcwpaths/mossy_cobblestone_basket_weave_paving.png new file mode 100644 index 00000000..93cebbfa Binary files /dev/null and b/public/textures/mcwpaths/mossy_cobblestone_basket_weave_paving.png differ diff --git a/public/textures/mcwpaths/mossy_cobblestone_clover_paving.png b/public/textures/mcwpaths/mossy_cobblestone_clover_paving.png new file mode 100644 index 00000000..8fce497c Binary files /dev/null and b/public/textures/mcwpaths/mossy_cobblestone_clover_paving.png differ diff --git a/public/textures/mcwpaths/mossy_cobblestone_diamond_paving.png b/public/textures/mcwpaths/mossy_cobblestone_diamond_paving.png new file mode 100644 index 00000000..c0b73886 Binary files /dev/null and b/public/textures/mcwpaths/mossy_cobblestone_diamond_paving.png differ diff --git a/public/textures/mcwpaths/mossy_cobblestone_dumble_paving.png b/public/textures/mcwpaths/mossy_cobblestone_dumble_paving.png new file mode 100644 index 00000000..5e30f1a8 Binary files /dev/null and b/public/textures/mcwpaths/mossy_cobblestone_dumble_paving.png differ diff --git a/public/textures/mcwpaths/mossy_cobblestone_honeycomb_paving.png b/public/textures/mcwpaths/mossy_cobblestone_honeycomb_paving.png new file mode 100644 index 00000000..2fd614f6 Binary files /dev/null and b/public/textures/mcwpaths/mossy_cobblestone_honeycomb_paving.png differ diff --git a/public/textures/mcwpaths/mossy_cobblestone_square_paving.png b/public/textures/mcwpaths/mossy_cobblestone_square_paving.png new file mode 100644 index 00000000..b365b35f Binary files /dev/null and b/public/textures/mcwpaths/mossy_cobblestone_square_paving.png differ diff --git a/public/textures/mcwpaths/mossy_stone_crystal_floor.png b/public/textures/mcwpaths/mossy_stone_crystal_floor.png new file mode 100644 index 00000000..2f0e8b7e Binary files /dev/null and b/public/textures/mcwpaths/mossy_stone_crystal_floor.png differ diff --git a/public/textures/mcwpaths/mossy_stone_crystal_floor_path.png b/public/textures/mcwpaths/mossy_stone_crystal_floor_path.png new file mode 100644 index 00000000..fd8a04e6 Binary files /dev/null and b/public/textures/mcwpaths/mossy_stone_crystal_floor_path.png differ diff --git a/public/textures/mcwpaths/mossy_stone_crystal_floor_slab.png b/public/textures/mcwpaths/mossy_stone_crystal_floor_slab.png new file mode 100644 index 00000000..70fd7591 Binary files /dev/null and b/public/textures/mcwpaths/mossy_stone_crystal_floor_slab.png differ diff --git a/public/textures/mcwpaths/mossy_stone_crystal_floor_stairs.png b/public/textures/mcwpaths/mossy_stone_crystal_floor_stairs.png new file mode 100644 index 00000000..2d17afc5 Binary files /dev/null and b/public/textures/mcwpaths/mossy_stone_crystal_floor_stairs.png differ diff --git a/public/textures/mcwpaths/mossy_stone_flagstone.png b/public/textures/mcwpaths/mossy_stone_flagstone.png new file mode 100644 index 00000000..d43e447f Binary files /dev/null and b/public/textures/mcwpaths/mossy_stone_flagstone.png differ diff --git a/public/textures/mcwpaths/mossy_stone_flagstone_path.png b/public/textures/mcwpaths/mossy_stone_flagstone_path.png new file mode 100644 index 00000000..0d0a6a62 Binary files /dev/null and b/public/textures/mcwpaths/mossy_stone_flagstone_path.png differ diff --git a/public/textures/mcwpaths/mossy_stone_flagstone_slab.png b/public/textures/mcwpaths/mossy_stone_flagstone_slab.png new file mode 100644 index 00000000..2bc317b2 Binary files /dev/null and b/public/textures/mcwpaths/mossy_stone_flagstone_slab.png differ diff --git a/public/textures/mcwpaths/mossy_stone_flagstone_stairs.png b/public/textures/mcwpaths/mossy_stone_flagstone_stairs.png new file mode 100644 index 00000000..e3316089 Binary files /dev/null and b/public/textures/mcwpaths/mossy_stone_flagstone_stairs.png differ diff --git a/public/textures/mcwpaths/mossy_stone_running_bond.png b/public/textures/mcwpaths/mossy_stone_running_bond.png new file mode 100644 index 00000000..be38f603 Binary files /dev/null and b/public/textures/mcwpaths/mossy_stone_running_bond.png differ diff --git a/public/textures/mcwpaths/mossy_stone_running_bond_path.png b/public/textures/mcwpaths/mossy_stone_running_bond_path.png new file mode 100644 index 00000000..22f38ee9 Binary files /dev/null and b/public/textures/mcwpaths/mossy_stone_running_bond_path.png differ diff --git a/public/textures/mcwpaths/mossy_stone_running_bond_slab.png b/public/textures/mcwpaths/mossy_stone_running_bond_slab.png new file mode 100644 index 00000000..e58041ef Binary files /dev/null and b/public/textures/mcwpaths/mossy_stone_running_bond_slab.png differ diff --git a/public/textures/mcwpaths/mossy_stone_running_bond_stairs.png b/public/textures/mcwpaths/mossy_stone_running_bond_stairs.png new file mode 100644 index 00000000..7e0ba988 Binary files /dev/null and b/public/textures/mcwpaths/mossy_stone_running_bond_stairs.png differ diff --git a/public/textures/mcwpaths/mossy_stone_strewn_rocky_path.png b/public/textures/mcwpaths/mossy_stone_strewn_rocky_path.png new file mode 100644 index 00000000..68382172 Binary files /dev/null and b/public/textures/mcwpaths/mossy_stone_strewn_rocky_path.png differ diff --git a/public/textures/mcwpaths/mossy_stone_windmill_weave.png b/public/textures/mcwpaths/mossy_stone_windmill_weave.png new file mode 100644 index 00000000..b2504f7d Binary files /dev/null and b/public/textures/mcwpaths/mossy_stone_windmill_weave.png differ diff --git a/public/textures/mcwpaths/mossy_stone_windmill_weave_path.png b/public/textures/mcwpaths/mossy_stone_windmill_weave_path.png new file mode 100644 index 00000000..4eb53120 Binary files /dev/null and b/public/textures/mcwpaths/mossy_stone_windmill_weave_path.png differ diff --git a/public/textures/mcwpaths/mossy_stone_windmill_weave_slab.png b/public/textures/mcwpaths/mossy_stone_windmill_weave_slab.png new file mode 100644 index 00000000..31ce8269 Binary files /dev/null and b/public/textures/mcwpaths/mossy_stone_windmill_weave_slab.png differ diff --git a/public/textures/mcwpaths/mossy_stone_windmill_weave_stairs.png b/public/textures/mcwpaths/mossy_stone_windmill_weave_stairs.png new file mode 100644 index 00000000..0a633ade Binary files /dev/null and b/public/textures/mcwpaths/mossy_stone_windmill_weave_stairs.png differ diff --git a/public/textures/mcwpaths/mud_brick_basket_weave_paving.png b/public/textures/mcwpaths/mud_brick_basket_weave_paving.png new file mode 100644 index 00000000..3db770f7 Binary files /dev/null and b/public/textures/mcwpaths/mud_brick_basket_weave_paving.png differ diff --git a/public/textures/mcwpaths/mud_brick_clover_paving.png b/public/textures/mcwpaths/mud_brick_clover_paving.png new file mode 100644 index 00000000..8ba772ff Binary files /dev/null and b/public/textures/mcwpaths/mud_brick_clover_paving.png differ diff --git a/public/textures/mcwpaths/mud_brick_crystal_floor.png b/public/textures/mcwpaths/mud_brick_crystal_floor.png new file mode 100644 index 00000000..66e6516c Binary files /dev/null and b/public/textures/mcwpaths/mud_brick_crystal_floor.png differ diff --git a/public/textures/mcwpaths/mud_brick_crystal_floor_path.png b/public/textures/mcwpaths/mud_brick_crystal_floor_path.png new file mode 100644 index 00000000..f83ff1f0 Binary files /dev/null and b/public/textures/mcwpaths/mud_brick_crystal_floor_path.png differ diff --git a/public/textures/mcwpaths/mud_brick_crystal_floor_slab.png b/public/textures/mcwpaths/mud_brick_crystal_floor_slab.png new file mode 100644 index 00000000..8f628804 Binary files /dev/null and b/public/textures/mcwpaths/mud_brick_crystal_floor_slab.png differ diff --git a/public/textures/mcwpaths/mud_brick_crystal_floor_stairs.png b/public/textures/mcwpaths/mud_brick_crystal_floor_stairs.png new file mode 100644 index 00000000..a01f2f19 Binary files /dev/null and b/public/textures/mcwpaths/mud_brick_crystal_floor_stairs.png differ diff --git a/public/textures/mcwpaths/mud_brick_diamond_paving.png b/public/textures/mcwpaths/mud_brick_diamond_paving.png new file mode 100644 index 00000000..5f1803d4 Binary files /dev/null and b/public/textures/mcwpaths/mud_brick_diamond_paving.png differ diff --git a/public/textures/mcwpaths/mud_brick_dumble_paving.png b/public/textures/mcwpaths/mud_brick_dumble_paving.png new file mode 100644 index 00000000..db0099e4 Binary files /dev/null and b/public/textures/mcwpaths/mud_brick_dumble_paving.png differ diff --git a/public/textures/mcwpaths/mud_brick_flagstone.png b/public/textures/mcwpaths/mud_brick_flagstone.png new file mode 100644 index 00000000..1ce95e11 Binary files /dev/null and b/public/textures/mcwpaths/mud_brick_flagstone.png differ diff --git a/public/textures/mcwpaths/mud_brick_flagstone_path.png b/public/textures/mcwpaths/mud_brick_flagstone_path.png new file mode 100644 index 00000000..3244c109 Binary files /dev/null and b/public/textures/mcwpaths/mud_brick_flagstone_path.png differ diff --git a/public/textures/mcwpaths/mud_brick_flagstone_slab.png b/public/textures/mcwpaths/mud_brick_flagstone_slab.png new file mode 100644 index 00000000..89088898 Binary files /dev/null and b/public/textures/mcwpaths/mud_brick_flagstone_slab.png differ diff --git a/public/textures/mcwpaths/mud_brick_flagstone_stairs.png b/public/textures/mcwpaths/mud_brick_flagstone_stairs.png new file mode 100644 index 00000000..6b05798b Binary files /dev/null and b/public/textures/mcwpaths/mud_brick_flagstone_stairs.png differ diff --git a/public/textures/mcwpaths/mud_brick_honeycomb_paving.png b/public/textures/mcwpaths/mud_brick_honeycomb_paving.png new file mode 100644 index 00000000..99563f14 Binary files /dev/null and b/public/textures/mcwpaths/mud_brick_honeycomb_paving.png differ diff --git a/public/textures/mcwpaths/mud_brick_running_bond.png b/public/textures/mcwpaths/mud_brick_running_bond.png new file mode 100644 index 00000000..a94c4e46 Binary files /dev/null and b/public/textures/mcwpaths/mud_brick_running_bond.png differ diff --git a/public/textures/mcwpaths/mud_brick_running_bond_path.png b/public/textures/mcwpaths/mud_brick_running_bond_path.png new file mode 100644 index 00000000..568deff1 Binary files /dev/null and b/public/textures/mcwpaths/mud_brick_running_bond_path.png differ diff --git a/public/textures/mcwpaths/mud_brick_running_bond_slab.png b/public/textures/mcwpaths/mud_brick_running_bond_slab.png new file mode 100644 index 00000000..ef4dabf7 Binary files /dev/null and b/public/textures/mcwpaths/mud_brick_running_bond_slab.png differ diff --git a/public/textures/mcwpaths/mud_brick_running_bond_stairs.png b/public/textures/mcwpaths/mud_brick_running_bond_stairs.png new file mode 100644 index 00000000..892cb1ea Binary files /dev/null and b/public/textures/mcwpaths/mud_brick_running_bond_stairs.png differ diff --git a/public/textures/mcwpaths/mud_brick_square_paving.png b/public/textures/mcwpaths/mud_brick_square_paving.png new file mode 100644 index 00000000..03fe6f5f Binary files /dev/null and b/public/textures/mcwpaths/mud_brick_square_paving.png differ diff --git a/public/textures/mcwpaths/mud_brick_strewn_rocky_path.png b/public/textures/mcwpaths/mud_brick_strewn_rocky_path.png new file mode 100644 index 00000000..658c0a9a Binary files /dev/null and b/public/textures/mcwpaths/mud_brick_strewn_rocky_path.png differ diff --git a/public/textures/mcwpaths/mud_brick_windmill_weave.png b/public/textures/mcwpaths/mud_brick_windmill_weave.png new file mode 100644 index 00000000..09c90a58 Binary files /dev/null and b/public/textures/mcwpaths/mud_brick_windmill_weave.png differ diff --git a/public/textures/mcwpaths/mud_brick_windmill_weave_path.png b/public/textures/mcwpaths/mud_brick_windmill_weave_path.png new file mode 100644 index 00000000..37bca5f3 Binary files /dev/null and b/public/textures/mcwpaths/mud_brick_windmill_weave_path.png differ diff --git a/public/textures/mcwpaths/mud_brick_windmill_weave_slab.png b/public/textures/mcwpaths/mud_brick_windmill_weave_slab.png new file mode 100644 index 00000000..425260dc Binary files /dev/null and b/public/textures/mcwpaths/mud_brick_windmill_weave_slab.png differ diff --git a/public/textures/mcwpaths/mud_brick_windmill_weave_stairs.png b/public/textures/mcwpaths/mud_brick_windmill_weave_stairs.png new file mode 100644 index 00000000..587f3ad9 Binary files /dev/null and b/public/textures/mcwpaths/mud_brick_windmill_weave_stairs.png differ diff --git a/public/textures/mcwpaths/oak_planks_path.png b/public/textures/mcwpaths/oak_planks_path.png new file mode 100644 index 00000000..6ed8b20f Binary files /dev/null and b/public/textures/mcwpaths/oak_planks_path.png differ diff --git a/public/textures/mcwpaths/podzol_path_block.png b/public/textures/mcwpaths/podzol_path_block.png new file mode 100644 index 00000000..c7bf3d01 Binary files /dev/null and b/public/textures/mcwpaths/podzol_path_block.png differ diff --git a/public/textures/mcwpaths/red_sand_path_block.png b/public/textures/mcwpaths/red_sand_path_block.png new file mode 100644 index 00000000..ece4aec7 Binary files /dev/null and b/public/textures/mcwpaths/red_sand_path_block.png differ diff --git a/public/textures/mcwpaths/red_sandstone_basket_weave_paving.png b/public/textures/mcwpaths/red_sandstone_basket_weave_paving.png new file mode 100644 index 00000000..fb02224a Binary files /dev/null and b/public/textures/mcwpaths/red_sandstone_basket_weave_paving.png differ diff --git a/public/textures/mcwpaths/red_sandstone_clover_paving.png b/public/textures/mcwpaths/red_sandstone_clover_paving.png new file mode 100644 index 00000000..ab4513b4 Binary files /dev/null and b/public/textures/mcwpaths/red_sandstone_clover_paving.png differ diff --git a/public/textures/mcwpaths/red_sandstone_crystal_floor.png b/public/textures/mcwpaths/red_sandstone_crystal_floor.png new file mode 100644 index 00000000..109554aa Binary files /dev/null and b/public/textures/mcwpaths/red_sandstone_crystal_floor.png differ diff --git a/public/textures/mcwpaths/red_sandstone_crystal_floor_path.png b/public/textures/mcwpaths/red_sandstone_crystal_floor_path.png new file mode 100644 index 00000000..4e54dbb9 Binary files /dev/null and b/public/textures/mcwpaths/red_sandstone_crystal_floor_path.png differ diff --git a/public/textures/mcwpaths/red_sandstone_crystal_floor_slab.png b/public/textures/mcwpaths/red_sandstone_crystal_floor_slab.png new file mode 100644 index 00000000..71119bc6 Binary files /dev/null and b/public/textures/mcwpaths/red_sandstone_crystal_floor_slab.png differ diff --git a/public/textures/mcwpaths/red_sandstone_crystal_floor_stairs.png b/public/textures/mcwpaths/red_sandstone_crystal_floor_stairs.png new file mode 100644 index 00000000..0e5abbc4 Binary files /dev/null and b/public/textures/mcwpaths/red_sandstone_crystal_floor_stairs.png differ diff --git a/public/textures/mcwpaths/red_sandstone_diamond_paving.png b/public/textures/mcwpaths/red_sandstone_diamond_paving.png new file mode 100644 index 00000000..f7ee3be4 Binary files /dev/null and b/public/textures/mcwpaths/red_sandstone_diamond_paving.png differ diff --git a/public/textures/mcwpaths/red_sandstone_dumble_paving.png b/public/textures/mcwpaths/red_sandstone_dumble_paving.png new file mode 100644 index 00000000..4a1cfc8b Binary files /dev/null and b/public/textures/mcwpaths/red_sandstone_dumble_paving.png differ diff --git a/public/textures/mcwpaths/red_sandstone_flagstone.png b/public/textures/mcwpaths/red_sandstone_flagstone.png new file mode 100644 index 00000000..af78b0a0 Binary files /dev/null and b/public/textures/mcwpaths/red_sandstone_flagstone.png differ diff --git a/public/textures/mcwpaths/red_sandstone_flagstone_path.png b/public/textures/mcwpaths/red_sandstone_flagstone_path.png new file mode 100644 index 00000000..d50d7b88 Binary files /dev/null and b/public/textures/mcwpaths/red_sandstone_flagstone_path.png differ diff --git a/public/textures/mcwpaths/red_sandstone_flagstone_slab.png b/public/textures/mcwpaths/red_sandstone_flagstone_slab.png new file mode 100644 index 00000000..c9f2c10a Binary files /dev/null and b/public/textures/mcwpaths/red_sandstone_flagstone_slab.png differ diff --git a/public/textures/mcwpaths/red_sandstone_flagstone_stairs.png b/public/textures/mcwpaths/red_sandstone_flagstone_stairs.png new file mode 100644 index 00000000..7d29dc8f Binary files /dev/null and b/public/textures/mcwpaths/red_sandstone_flagstone_stairs.png differ diff --git a/public/textures/mcwpaths/red_sandstone_honeycomb_paving.png b/public/textures/mcwpaths/red_sandstone_honeycomb_paving.png new file mode 100644 index 00000000..6ca32ad0 Binary files /dev/null and b/public/textures/mcwpaths/red_sandstone_honeycomb_paving.png differ diff --git a/public/textures/mcwpaths/red_sandstone_running_bond.png b/public/textures/mcwpaths/red_sandstone_running_bond.png new file mode 100644 index 00000000..6ce7829f Binary files /dev/null and b/public/textures/mcwpaths/red_sandstone_running_bond.png differ diff --git a/public/textures/mcwpaths/red_sandstone_running_bond_path.png b/public/textures/mcwpaths/red_sandstone_running_bond_path.png new file mode 100644 index 00000000..05fbd071 Binary files /dev/null and b/public/textures/mcwpaths/red_sandstone_running_bond_path.png differ diff --git a/public/textures/mcwpaths/red_sandstone_running_bond_slab.png b/public/textures/mcwpaths/red_sandstone_running_bond_slab.png new file mode 100644 index 00000000..9b38d1e4 Binary files /dev/null and b/public/textures/mcwpaths/red_sandstone_running_bond_slab.png differ diff --git a/public/textures/mcwpaths/red_sandstone_running_bond_stairs.png b/public/textures/mcwpaths/red_sandstone_running_bond_stairs.png new file mode 100644 index 00000000..0896eb20 Binary files /dev/null and b/public/textures/mcwpaths/red_sandstone_running_bond_stairs.png differ diff --git a/public/textures/mcwpaths/red_sandstone_square_paving.png b/public/textures/mcwpaths/red_sandstone_square_paving.png new file mode 100644 index 00000000..a7aedefa Binary files /dev/null and b/public/textures/mcwpaths/red_sandstone_square_paving.png differ diff --git a/public/textures/mcwpaths/red_sandstone_strewn_rocky_path.png b/public/textures/mcwpaths/red_sandstone_strewn_rocky_path.png new file mode 100644 index 00000000..072453b5 Binary files /dev/null and b/public/textures/mcwpaths/red_sandstone_strewn_rocky_path.png differ diff --git a/public/textures/mcwpaths/red_sandstone_windmill_weave.png b/public/textures/mcwpaths/red_sandstone_windmill_weave.png new file mode 100644 index 00000000..87528e67 Binary files /dev/null and b/public/textures/mcwpaths/red_sandstone_windmill_weave.png differ diff --git a/public/textures/mcwpaths/red_sandstone_windmill_weave_path.png b/public/textures/mcwpaths/red_sandstone_windmill_weave_path.png new file mode 100644 index 00000000..e2687ea6 Binary files /dev/null and b/public/textures/mcwpaths/red_sandstone_windmill_weave_path.png differ diff --git a/public/textures/mcwpaths/red_sandstone_windmill_weave_slab.png b/public/textures/mcwpaths/red_sandstone_windmill_weave_slab.png new file mode 100644 index 00000000..54f733a4 Binary files /dev/null and b/public/textures/mcwpaths/red_sandstone_windmill_weave_slab.png differ diff --git a/public/textures/mcwpaths/red_sandstone_windmill_weave_stairs.png b/public/textures/mcwpaths/red_sandstone_windmill_weave_stairs.png new file mode 100644 index 00000000..ed91290d Binary files /dev/null and b/public/textures/mcwpaths/red_sandstone_windmill_weave_stairs.png differ diff --git a/public/textures/mcwpaths/sand_path_block.png b/public/textures/mcwpaths/sand_path_block.png new file mode 100644 index 00000000..d5c9cb1a Binary files /dev/null and b/public/textures/mcwpaths/sand_path_block.png differ diff --git a/public/textures/mcwpaths/sandstone_basket_weave_paving.png b/public/textures/mcwpaths/sandstone_basket_weave_paving.png new file mode 100644 index 00000000..44b61211 Binary files /dev/null and b/public/textures/mcwpaths/sandstone_basket_weave_paving.png differ diff --git a/public/textures/mcwpaths/sandstone_clover_paving.png b/public/textures/mcwpaths/sandstone_clover_paving.png new file mode 100644 index 00000000..12fbc1a7 Binary files /dev/null and b/public/textures/mcwpaths/sandstone_clover_paving.png differ diff --git a/public/textures/mcwpaths/sandstone_crystal_floor.png b/public/textures/mcwpaths/sandstone_crystal_floor.png new file mode 100644 index 00000000..10b54df2 Binary files /dev/null and b/public/textures/mcwpaths/sandstone_crystal_floor.png differ diff --git a/public/textures/mcwpaths/sandstone_crystal_floor_path.png b/public/textures/mcwpaths/sandstone_crystal_floor_path.png new file mode 100644 index 00000000..48f80374 Binary files /dev/null and b/public/textures/mcwpaths/sandstone_crystal_floor_path.png differ diff --git a/public/textures/mcwpaths/sandstone_crystal_floor_slab.png b/public/textures/mcwpaths/sandstone_crystal_floor_slab.png new file mode 100644 index 00000000..080e2803 Binary files /dev/null and b/public/textures/mcwpaths/sandstone_crystal_floor_slab.png differ diff --git a/public/textures/mcwpaths/sandstone_crystal_floor_stairs.png b/public/textures/mcwpaths/sandstone_crystal_floor_stairs.png new file mode 100644 index 00000000..f9050f98 Binary files /dev/null and b/public/textures/mcwpaths/sandstone_crystal_floor_stairs.png differ diff --git a/public/textures/mcwpaths/sandstone_diamond_paving.png b/public/textures/mcwpaths/sandstone_diamond_paving.png new file mode 100644 index 00000000..2937a395 Binary files /dev/null and b/public/textures/mcwpaths/sandstone_diamond_paving.png differ diff --git a/public/textures/mcwpaths/sandstone_dumble_paving.png b/public/textures/mcwpaths/sandstone_dumble_paving.png new file mode 100644 index 00000000..a410da62 Binary files /dev/null and b/public/textures/mcwpaths/sandstone_dumble_paving.png differ diff --git a/public/textures/mcwpaths/sandstone_flagstone.png b/public/textures/mcwpaths/sandstone_flagstone.png new file mode 100644 index 00000000..c421b67a Binary files /dev/null and b/public/textures/mcwpaths/sandstone_flagstone.png differ diff --git a/public/textures/mcwpaths/sandstone_flagstone_path.png b/public/textures/mcwpaths/sandstone_flagstone_path.png new file mode 100644 index 00000000..d7b12302 Binary files /dev/null and b/public/textures/mcwpaths/sandstone_flagstone_path.png differ diff --git a/public/textures/mcwpaths/sandstone_flagstone_slab.png b/public/textures/mcwpaths/sandstone_flagstone_slab.png new file mode 100644 index 00000000..05acfde3 Binary files /dev/null and b/public/textures/mcwpaths/sandstone_flagstone_slab.png differ diff --git a/public/textures/mcwpaths/sandstone_flagstone_stairs.png b/public/textures/mcwpaths/sandstone_flagstone_stairs.png new file mode 100644 index 00000000..9e7151fa Binary files /dev/null and b/public/textures/mcwpaths/sandstone_flagstone_stairs.png differ diff --git a/public/textures/mcwpaths/sandstone_honeycomb_paving.png b/public/textures/mcwpaths/sandstone_honeycomb_paving.png new file mode 100644 index 00000000..2ad04111 Binary files /dev/null and b/public/textures/mcwpaths/sandstone_honeycomb_paving.png differ diff --git a/public/textures/mcwpaths/sandstone_running_bond.png b/public/textures/mcwpaths/sandstone_running_bond.png new file mode 100644 index 00000000..ae1179de Binary files /dev/null and b/public/textures/mcwpaths/sandstone_running_bond.png differ diff --git a/public/textures/mcwpaths/sandstone_running_bond_path.png b/public/textures/mcwpaths/sandstone_running_bond_path.png new file mode 100644 index 00000000..b1e1abfb Binary files /dev/null and b/public/textures/mcwpaths/sandstone_running_bond_path.png differ diff --git a/public/textures/mcwpaths/sandstone_running_bond_slab.png b/public/textures/mcwpaths/sandstone_running_bond_slab.png new file mode 100644 index 00000000..d6f2f983 Binary files /dev/null and b/public/textures/mcwpaths/sandstone_running_bond_slab.png differ diff --git a/public/textures/mcwpaths/sandstone_running_bond_stairs.png b/public/textures/mcwpaths/sandstone_running_bond_stairs.png new file mode 100644 index 00000000..b88c97d5 Binary files /dev/null and b/public/textures/mcwpaths/sandstone_running_bond_stairs.png differ diff --git a/public/textures/mcwpaths/sandstone_square_paving.png b/public/textures/mcwpaths/sandstone_square_paving.png new file mode 100644 index 00000000..c636d50a Binary files /dev/null and b/public/textures/mcwpaths/sandstone_square_paving.png differ diff --git a/public/textures/mcwpaths/sandstone_strewn_rocky_path.png b/public/textures/mcwpaths/sandstone_strewn_rocky_path.png new file mode 100644 index 00000000..c1effce5 Binary files /dev/null and b/public/textures/mcwpaths/sandstone_strewn_rocky_path.png differ diff --git a/public/textures/mcwpaths/sandstone_windmill_weave.png b/public/textures/mcwpaths/sandstone_windmill_weave.png new file mode 100644 index 00000000..5885a220 Binary files /dev/null and b/public/textures/mcwpaths/sandstone_windmill_weave.png differ diff --git a/public/textures/mcwpaths/sandstone_windmill_weave_path.png b/public/textures/mcwpaths/sandstone_windmill_weave_path.png new file mode 100644 index 00000000..db137ba1 Binary files /dev/null and b/public/textures/mcwpaths/sandstone_windmill_weave_path.png differ diff --git a/public/textures/mcwpaths/sandstone_windmill_weave_slab.png b/public/textures/mcwpaths/sandstone_windmill_weave_slab.png new file mode 100644 index 00000000..620841e1 Binary files /dev/null and b/public/textures/mcwpaths/sandstone_windmill_weave_slab.png differ diff --git a/public/textures/mcwpaths/sandstone_windmill_weave_stairs.png b/public/textures/mcwpaths/sandstone_windmill_weave_stairs.png new file mode 100644 index 00000000..96e5de6a Binary files /dev/null and b/public/textures/mcwpaths/sandstone_windmill_weave_stairs.png differ diff --git a/public/textures/mcwpaths/spruce_planks_path.png b/public/textures/mcwpaths/spruce_planks_path.png new file mode 100644 index 00000000..9bf5d391 Binary files /dev/null and b/public/textures/mcwpaths/spruce_planks_path.png differ diff --git a/public/textures/mcwpaths/stone_crystal_floor.png b/public/textures/mcwpaths/stone_crystal_floor.png new file mode 100644 index 00000000..2fa9d5de Binary files /dev/null and b/public/textures/mcwpaths/stone_crystal_floor.png differ diff --git a/public/textures/mcwpaths/stone_crystal_floor_path.png b/public/textures/mcwpaths/stone_crystal_floor_path.png new file mode 100644 index 00000000..b4b3368a Binary files /dev/null and b/public/textures/mcwpaths/stone_crystal_floor_path.png differ diff --git a/public/textures/mcwpaths/stone_crystal_floor_slab.png b/public/textures/mcwpaths/stone_crystal_floor_slab.png new file mode 100644 index 00000000..ec42b58a Binary files /dev/null and b/public/textures/mcwpaths/stone_crystal_floor_slab.png differ diff --git a/public/textures/mcwpaths/stone_crystal_floor_stairs.png b/public/textures/mcwpaths/stone_crystal_floor_stairs.png new file mode 100644 index 00000000..cd2d6202 Binary files /dev/null and b/public/textures/mcwpaths/stone_crystal_floor_stairs.png differ diff --git a/public/textures/mcwpaths/stone_flagstone.png b/public/textures/mcwpaths/stone_flagstone.png new file mode 100644 index 00000000..169ac371 Binary files /dev/null and b/public/textures/mcwpaths/stone_flagstone.png differ diff --git a/public/textures/mcwpaths/stone_flagstone_path.png b/public/textures/mcwpaths/stone_flagstone_path.png new file mode 100644 index 00000000..5655129e Binary files /dev/null and b/public/textures/mcwpaths/stone_flagstone_path.png differ diff --git a/public/textures/mcwpaths/stone_flagstone_slab.png b/public/textures/mcwpaths/stone_flagstone_slab.png new file mode 100644 index 00000000..413012f1 Binary files /dev/null and b/public/textures/mcwpaths/stone_flagstone_slab.png differ diff --git a/public/textures/mcwpaths/stone_flagstone_stairs.png b/public/textures/mcwpaths/stone_flagstone_stairs.png new file mode 100644 index 00000000..b32daadc Binary files /dev/null and b/public/textures/mcwpaths/stone_flagstone_stairs.png differ diff --git a/public/textures/mcwpaths/stone_running_bond.png b/public/textures/mcwpaths/stone_running_bond.png new file mode 100644 index 00000000..2c6c00a0 Binary files /dev/null and b/public/textures/mcwpaths/stone_running_bond.png differ diff --git a/public/textures/mcwpaths/stone_running_bond_path.png b/public/textures/mcwpaths/stone_running_bond_path.png new file mode 100644 index 00000000..2e86602c Binary files /dev/null and b/public/textures/mcwpaths/stone_running_bond_path.png differ diff --git a/public/textures/mcwpaths/stone_running_bond_slab.png b/public/textures/mcwpaths/stone_running_bond_slab.png new file mode 100644 index 00000000..04d15e4b Binary files /dev/null and b/public/textures/mcwpaths/stone_running_bond_slab.png differ diff --git a/public/textures/mcwpaths/stone_running_bond_stairs.png b/public/textures/mcwpaths/stone_running_bond_stairs.png new file mode 100644 index 00000000..f12b287a Binary files /dev/null and b/public/textures/mcwpaths/stone_running_bond_stairs.png differ diff --git a/public/textures/mcwpaths/stone_strewn_rocky_path.png b/public/textures/mcwpaths/stone_strewn_rocky_path.png new file mode 100644 index 00000000..3cdc5b5f Binary files /dev/null and b/public/textures/mcwpaths/stone_strewn_rocky_path.png differ diff --git a/public/textures/mcwpaths/stone_windmill_weave.png b/public/textures/mcwpaths/stone_windmill_weave.png new file mode 100644 index 00000000..f566a869 Binary files /dev/null and b/public/textures/mcwpaths/stone_windmill_weave.png differ diff --git a/public/textures/mcwpaths/stone_windmill_weave_path.png b/public/textures/mcwpaths/stone_windmill_weave_path.png new file mode 100644 index 00000000..770126f6 Binary files /dev/null and b/public/textures/mcwpaths/stone_windmill_weave_path.png differ diff --git a/public/textures/mcwpaths/stone_windmill_weave_slab.png b/public/textures/mcwpaths/stone_windmill_weave_slab.png new file mode 100644 index 00000000..10b880e9 Binary files /dev/null and b/public/textures/mcwpaths/stone_windmill_weave_slab.png differ diff --git a/public/textures/mcwpaths/stone_windmill_weave_stairs.png b/public/textures/mcwpaths/stone_windmill_weave_stairs.png new file mode 100644 index 00000000..a618617f Binary files /dev/null and b/public/textures/mcwpaths/stone_windmill_weave_stairs.png differ diff --git a/public/textures/mcwpaths/warped_planks_path.png b/public/textures/mcwpaths/warped_planks_path.png new file mode 100644 index 00000000..db51a422 Binary files /dev/null and b/public/textures/mcwpaths/warped_planks_path.png differ diff --git a/public/textures/mcwroofs/acacia_attic_roof.png b/public/textures/mcwroofs/acacia_attic_roof.png new file mode 100644 index 00000000..34e42b22 Binary files /dev/null and b/public/textures/mcwroofs/acacia_attic_roof.png differ diff --git a/public/textures/mcwroofs/acacia_lower_roof.png b/public/textures/mcwroofs/acacia_lower_roof.png new file mode 100644 index 00000000..3342dbe7 Binary files /dev/null and b/public/textures/mcwroofs/acacia_lower_roof.png differ diff --git a/public/textures/mcwroofs/acacia_planks_attic_roof.png b/public/textures/mcwroofs/acacia_planks_attic_roof.png new file mode 100644 index 00000000..3780ac0b Binary files /dev/null and b/public/textures/mcwroofs/acacia_planks_attic_roof.png differ diff --git a/public/textures/mcwroofs/acacia_planks_lower_roof.png b/public/textures/mcwroofs/acacia_planks_lower_roof.png new file mode 100644 index 00000000..e2d77a62 Binary files /dev/null and b/public/textures/mcwroofs/acacia_planks_lower_roof.png differ diff --git a/public/textures/mcwroofs/acacia_planks_roof.png b/public/textures/mcwroofs/acacia_planks_roof.png new file mode 100644 index 00000000..ce362407 Binary files /dev/null and b/public/textures/mcwroofs/acacia_planks_roof.png differ diff --git a/public/textures/mcwroofs/acacia_planks_steep_roof.png b/public/textures/mcwroofs/acacia_planks_steep_roof.png new file mode 100644 index 00000000..06fd40a6 Binary files /dev/null and b/public/textures/mcwroofs/acacia_planks_steep_roof.png differ diff --git a/public/textures/mcwroofs/acacia_planks_top_roof.png b/public/textures/mcwroofs/acacia_planks_top_roof.png new file mode 100644 index 00000000..cdb3fe23 Binary files /dev/null and b/public/textures/mcwroofs/acacia_planks_top_roof.png differ diff --git a/public/textures/mcwroofs/acacia_planks_upper_lower_roof.png b/public/textures/mcwroofs/acacia_planks_upper_lower_roof.png new file mode 100644 index 00000000..0292eea8 Binary files /dev/null and b/public/textures/mcwroofs/acacia_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/acacia_planks_upper_steep_roof.png b/public/textures/mcwroofs/acacia_planks_upper_steep_roof.png new file mode 100644 index 00000000..8bf91f79 Binary files /dev/null and b/public/textures/mcwroofs/acacia_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/acacia_roof.png b/public/textures/mcwroofs/acacia_roof.png new file mode 100644 index 00000000..3fdad018 Binary files /dev/null and b/public/textures/mcwroofs/acacia_roof.png differ diff --git a/public/textures/mcwroofs/acacia_steep_roof.png b/public/textures/mcwroofs/acacia_steep_roof.png new file mode 100644 index 00000000..f271e7df Binary files /dev/null and b/public/textures/mcwroofs/acacia_steep_roof.png differ diff --git a/public/textures/mcwroofs/acacia_top_roof.png b/public/textures/mcwroofs/acacia_top_roof.png new file mode 100644 index 00000000..25f35950 Binary files /dev/null and b/public/textures/mcwroofs/acacia_top_roof.png differ diff --git a/public/textures/mcwroofs/acacia_upper_lower_roof.png b/public/textures/mcwroofs/acacia_upper_lower_roof.png new file mode 100644 index 00000000..ccc032b1 Binary files /dev/null and b/public/textures/mcwroofs/acacia_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/acacia_upper_steep_roof.png b/public/textures/mcwroofs/acacia_upper_steep_roof.png new file mode 100644 index 00000000..ca62063a Binary files /dev/null and b/public/textures/mcwroofs/acacia_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/andesite_attic_roof.png b/public/textures/mcwroofs/andesite_attic_roof.png new file mode 100644 index 00000000..f4f812aa Binary files /dev/null and b/public/textures/mcwroofs/andesite_attic_roof.png differ diff --git a/public/textures/mcwroofs/andesite_lower_roof.png b/public/textures/mcwroofs/andesite_lower_roof.png new file mode 100644 index 00000000..e0ae450e Binary files /dev/null and b/public/textures/mcwroofs/andesite_lower_roof.png differ diff --git a/public/textures/mcwroofs/andesite_roof.png b/public/textures/mcwroofs/andesite_roof.png new file mode 100644 index 00000000..ce9328a4 Binary files /dev/null and b/public/textures/mcwroofs/andesite_roof.png differ diff --git a/public/textures/mcwroofs/andesite_steep_roof.png b/public/textures/mcwroofs/andesite_steep_roof.png new file mode 100644 index 00000000..e959aa09 Binary files /dev/null and b/public/textures/mcwroofs/andesite_steep_roof.png differ diff --git a/public/textures/mcwroofs/andesite_top_roof.png b/public/textures/mcwroofs/andesite_top_roof.png new file mode 100644 index 00000000..120282ff Binary files /dev/null and b/public/textures/mcwroofs/andesite_top_roof.png differ diff --git a/public/textures/mcwroofs/andesite_upper_lower_roof.png b/public/textures/mcwroofs/andesite_upper_lower_roof.png new file mode 100644 index 00000000..bc8d3769 Binary files /dev/null and b/public/textures/mcwroofs/andesite_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/andesite_upper_steep_roof.png b/public/textures/mcwroofs/andesite_upper_steep_roof.png new file mode 100644 index 00000000..5c38fd4b Binary files /dev/null and b/public/textures/mcwroofs/andesite_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/bamboo_attic_roof.png b/public/textures/mcwroofs/bamboo_attic_roof.png new file mode 100644 index 00000000..2f29fed9 Binary files /dev/null and b/public/textures/mcwroofs/bamboo_attic_roof.png differ diff --git a/public/textures/mcwroofs/bamboo_lower_roof.png b/public/textures/mcwroofs/bamboo_lower_roof.png new file mode 100644 index 00000000..23247d76 Binary files /dev/null and b/public/textures/mcwroofs/bamboo_lower_roof.png differ diff --git a/public/textures/mcwroofs/bamboo_mosaic_attic_roof.png b/public/textures/mcwroofs/bamboo_mosaic_attic_roof.png new file mode 100644 index 00000000..4dc15773 Binary files /dev/null and b/public/textures/mcwroofs/bamboo_mosaic_attic_roof.png differ diff --git a/public/textures/mcwroofs/bamboo_mosaic_lower_roof.png b/public/textures/mcwroofs/bamboo_mosaic_lower_roof.png new file mode 100644 index 00000000..f21aca2c Binary files /dev/null and b/public/textures/mcwroofs/bamboo_mosaic_lower_roof.png differ diff --git a/public/textures/mcwroofs/bamboo_mosaic_roof.png b/public/textures/mcwroofs/bamboo_mosaic_roof.png new file mode 100644 index 00000000..fd702296 Binary files /dev/null and b/public/textures/mcwroofs/bamboo_mosaic_roof.png differ diff --git a/public/textures/mcwroofs/bamboo_mosaic_steep_roof.png b/public/textures/mcwroofs/bamboo_mosaic_steep_roof.png new file mode 100644 index 00000000..a6deab0d Binary files /dev/null and b/public/textures/mcwroofs/bamboo_mosaic_steep_roof.png differ diff --git a/public/textures/mcwroofs/bamboo_mosaic_top_roof.png b/public/textures/mcwroofs/bamboo_mosaic_top_roof.png new file mode 100644 index 00000000..da9dec62 Binary files /dev/null and b/public/textures/mcwroofs/bamboo_mosaic_top_roof.png differ diff --git a/public/textures/mcwroofs/bamboo_mosaic_upper_lower_roof.png b/public/textures/mcwroofs/bamboo_mosaic_upper_lower_roof.png new file mode 100644 index 00000000..4bf7a000 Binary files /dev/null and b/public/textures/mcwroofs/bamboo_mosaic_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/bamboo_mosaic_upper_steep_roof.png b/public/textures/mcwroofs/bamboo_mosaic_upper_steep_roof.png new file mode 100644 index 00000000..d4906894 Binary files /dev/null and b/public/textures/mcwroofs/bamboo_mosaic_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/bamboo_planks_attic_roof.png b/public/textures/mcwroofs/bamboo_planks_attic_roof.png new file mode 100644 index 00000000..79c970ab Binary files /dev/null and b/public/textures/mcwroofs/bamboo_planks_attic_roof.png differ diff --git a/public/textures/mcwroofs/bamboo_planks_lower_roof.png b/public/textures/mcwroofs/bamboo_planks_lower_roof.png new file mode 100644 index 00000000..e5436aaf Binary files /dev/null and b/public/textures/mcwroofs/bamboo_planks_lower_roof.png differ diff --git a/public/textures/mcwroofs/bamboo_planks_roof.png b/public/textures/mcwroofs/bamboo_planks_roof.png new file mode 100644 index 00000000..49b55b1b Binary files /dev/null and b/public/textures/mcwroofs/bamboo_planks_roof.png differ diff --git a/public/textures/mcwroofs/bamboo_planks_steep_roof.png b/public/textures/mcwroofs/bamboo_planks_steep_roof.png new file mode 100644 index 00000000..722944be Binary files /dev/null and b/public/textures/mcwroofs/bamboo_planks_steep_roof.png differ diff --git a/public/textures/mcwroofs/bamboo_planks_top_roof.png b/public/textures/mcwroofs/bamboo_planks_top_roof.png new file mode 100644 index 00000000..7608d467 Binary files /dev/null and b/public/textures/mcwroofs/bamboo_planks_top_roof.png differ diff --git a/public/textures/mcwroofs/bamboo_planks_upper_lower_roof.png b/public/textures/mcwroofs/bamboo_planks_upper_lower_roof.png new file mode 100644 index 00000000..ce77208c Binary files /dev/null and b/public/textures/mcwroofs/bamboo_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/bamboo_planks_upper_steep_roof.png b/public/textures/mcwroofs/bamboo_planks_upper_steep_roof.png new file mode 100644 index 00000000..bbf53d83 Binary files /dev/null and b/public/textures/mcwroofs/bamboo_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/bamboo_roof.png b/public/textures/mcwroofs/bamboo_roof.png new file mode 100644 index 00000000..d30dffa0 Binary files /dev/null and b/public/textures/mcwroofs/bamboo_roof.png differ diff --git a/public/textures/mcwroofs/bamboo_steep_roof.png b/public/textures/mcwroofs/bamboo_steep_roof.png new file mode 100644 index 00000000..ac7b28e8 Binary files /dev/null and b/public/textures/mcwroofs/bamboo_steep_roof.png differ diff --git a/public/textures/mcwroofs/bamboo_top_roof.png b/public/textures/mcwroofs/bamboo_top_roof.png new file mode 100644 index 00000000..535921f9 Binary files /dev/null and b/public/textures/mcwroofs/bamboo_top_roof.png differ diff --git a/public/textures/mcwroofs/bamboo_upper_lower_roof.png b/public/textures/mcwroofs/bamboo_upper_lower_roof.png new file mode 100644 index 00000000..1f1a1144 Binary files /dev/null and b/public/textures/mcwroofs/bamboo_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/bamboo_upper_steep_roof.png b/public/textures/mcwroofs/bamboo_upper_steep_roof.png new file mode 100644 index 00000000..efbd89a1 Binary files /dev/null and b/public/textures/mcwroofs/bamboo_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/base_attic_roof.png b/public/textures/mcwroofs/base_attic_roof.png new file mode 100644 index 00000000..423075f3 Binary files /dev/null and b/public/textures/mcwroofs/base_attic_roof.png differ diff --git a/public/textures/mcwroofs/base_lower_roof.png b/public/textures/mcwroofs/base_lower_roof.png new file mode 100644 index 00000000..8d572f02 Binary files /dev/null and b/public/textures/mcwroofs/base_lower_roof.png differ diff --git a/public/textures/mcwroofs/base_roof.png b/public/textures/mcwroofs/base_roof.png new file mode 100644 index 00000000..753e715a Binary files /dev/null and b/public/textures/mcwroofs/base_roof.png differ diff --git a/public/textures/mcwroofs/base_roof_block.png b/public/textures/mcwroofs/base_roof_block.png new file mode 100644 index 00000000..f4a467b2 Binary files /dev/null and b/public/textures/mcwroofs/base_roof_block.png differ diff --git a/public/textures/mcwroofs/base_roof_slab.png b/public/textures/mcwroofs/base_roof_slab.png new file mode 100644 index 00000000..e1506bc3 Binary files /dev/null and b/public/textures/mcwroofs/base_roof_slab.png differ diff --git a/public/textures/mcwroofs/base_steep_roof.png b/public/textures/mcwroofs/base_steep_roof.png new file mode 100644 index 00000000..23770181 Binary files /dev/null and b/public/textures/mcwroofs/base_steep_roof.png differ diff --git a/public/textures/mcwroofs/base_top_roof.png b/public/textures/mcwroofs/base_top_roof.png new file mode 100644 index 00000000..446b7df2 Binary files /dev/null and b/public/textures/mcwroofs/base_top_roof.png differ diff --git a/public/textures/mcwroofs/base_upper_lower_roof.png b/public/textures/mcwroofs/base_upper_lower_roof.png new file mode 100644 index 00000000..38e3b5a7 Binary files /dev/null and b/public/textures/mcwroofs/base_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/base_upper_steep_roof.png b/public/textures/mcwroofs/base_upper_steep_roof.png new file mode 100644 index 00000000..90f3f479 Binary files /dev/null and b/public/textures/mcwroofs/base_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/birch_attic_roof.png b/public/textures/mcwroofs/birch_attic_roof.png new file mode 100644 index 00000000..a219b331 Binary files /dev/null and b/public/textures/mcwroofs/birch_attic_roof.png differ diff --git a/public/textures/mcwroofs/birch_lower_roof.png b/public/textures/mcwroofs/birch_lower_roof.png new file mode 100644 index 00000000..52011012 Binary files /dev/null and b/public/textures/mcwroofs/birch_lower_roof.png differ diff --git a/public/textures/mcwroofs/birch_planks_attic_roof.png b/public/textures/mcwroofs/birch_planks_attic_roof.png new file mode 100644 index 00000000..5cbfc728 Binary files /dev/null and b/public/textures/mcwroofs/birch_planks_attic_roof.png differ diff --git a/public/textures/mcwroofs/birch_planks_lower_roof.png b/public/textures/mcwroofs/birch_planks_lower_roof.png new file mode 100644 index 00000000..1245068b Binary files /dev/null and b/public/textures/mcwroofs/birch_planks_lower_roof.png differ diff --git a/public/textures/mcwroofs/birch_planks_roof.png b/public/textures/mcwroofs/birch_planks_roof.png new file mode 100644 index 00000000..9c1d71f9 Binary files /dev/null and b/public/textures/mcwroofs/birch_planks_roof.png differ diff --git a/public/textures/mcwroofs/birch_planks_steep_roof.png b/public/textures/mcwroofs/birch_planks_steep_roof.png new file mode 100644 index 00000000..815f4fe4 Binary files /dev/null and b/public/textures/mcwroofs/birch_planks_steep_roof.png differ diff --git a/public/textures/mcwroofs/birch_planks_top_roof.png b/public/textures/mcwroofs/birch_planks_top_roof.png new file mode 100644 index 00000000..43f63742 Binary files /dev/null and b/public/textures/mcwroofs/birch_planks_top_roof.png differ diff --git a/public/textures/mcwroofs/birch_planks_upper_lower_roof.png b/public/textures/mcwroofs/birch_planks_upper_lower_roof.png new file mode 100644 index 00000000..a791386b Binary files /dev/null and b/public/textures/mcwroofs/birch_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/birch_planks_upper_steep_roof.png b/public/textures/mcwroofs/birch_planks_upper_steep_roof.png new file mode 100644 index 00000000..4c2cdcab Binary files /dev/null and b/public/textures/mcwroofs/birch_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/birch_roof.png b/public/textures/mcwroofs/birch_roof.png new file mode 100644 index 00000000..f057fe72 Binary files /dev/null and b/public/textures/mcwroofs/birch_roof.png differ diff --git a/public/textures/mcwroofs/birch_steep_roof.png b/public/textures/mcwroofs/birch_steep_roof.png new file mode 100644 index 00000000..9d050d52 Binary files /dev/null and b/public/textures/mcwroofs/birch_steep_roof.png differ diff --git a/public/textures/mcwroofs/birch_top_roof.png b/public/textures/mcwroofs/birch_top_roof.png new file mode 100644 index 00000000..21581c0c Binary files /dev/null and b/public/textures/mcwroofs/birch_top_roof.png differ diff --git a/public/textures/mcwroofs/birch_upper_lower_roof.png b/public/textures/mcwroofs/birch_upper_lower_roof.png new file mode 100644 index 00000000..f73bd8f4 Binary files /dev/null and b/public/textures/mcwroofs/birch_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/birch_upper_steep_roof.png b/public/textures/mcwroofs/birch_upper_steep_roof.png new file mode 100644 index 00000000..7473695f Binary files /dev/null and b/public/textures/mcwroofs/birch_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/black_attic_roof.png b/public/textures/mcwroofs/black_attic_roof.png new file mode 100644 index 00000000..12b5f04e Binary files /dev/null and b/public/textures/mcwroofs/black_attic_roof.png differ diff --git a/public/textures/mcwroofs/black_concrete_attic_roof.png b/public/textures/mcwroofs/black_concrete_attic_roof.png new file mode 100644 index 00000000..25e4bf97 Binary files /dev/null and b/public/textures/mcwroofs/black_concrete_attic_roof.png differ diff --git a/public/textures/mcwroofs/black_concrete_lower_roof.png b/public/textures/mcwroofs/black_concrete_lower_roof.png new file mode 100644 index 00000000..6aae7832 Binary files /dev/null and b/public/textures/mcwroofs/black_concrete_lower_roof.png differ diff --git a/public/textures/mcwroofs/black_concrete_roof.png b/public/textures/mcwroofs/black_concrete_roof.png new file mode 100644 index 00000000..e728a462 Binary files /dev/null and b/public/textures/mcwroofs/black_concrete_roof.png differ diff --git a/public/textures/mcwroofs/black_concrete_steep_roof.png b/public/textures/mcwroofs/black_concrete_steep_roof.png new file mode 100644 index 00000000..ab6ad421 Binary files /dev/null and b/public/textures/mcwroofs/black_concrete_steep_roof.png differ diff --git a/public/textures/mcwroofs/black_concrete_top_roof.png b/public/textures/mcwroofs/black_concrete_top_roof.png new file mode 100644 index 00000000..129df907 Binary files /dev/null and b/public/textures/mcwroofs/black_concrete_top_roof.png differ diff --git a/public/textures/mcwroofs/black_concrete_upper_lower_roof.png b/public/textures/mcwroofs/black_concrete_upper_lower_roof.png new file mode 100644 index 00000000..d2bc3d7d Binary files /dev/null and b/public/textures/mcwroofs/black_concrete_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/black_concrete_upper_steep_roof.png b/public/textures/mcwroofs/black_concrete_upper_steep_roof.png new file mode 100644 index 00000000..e9650a0f Binary files /dev/null and b/public/textures/mcwroofs/black_concrete_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/black_lower_roof.png b/public/textures/mcwroofs/black_lower_roof.png new file mode 100644 index 00000000..09b10f9d Binary files /dev/null and b/public/textures/mcwroofs/black_lower_roof.png differ diff --git a/public/textures/mcwroofs/black_roof.png b/public/textures/mcwroofs/black_roof.png new file mode 100644 index 00000000..b0eb9951 Binary files /dev/null and b/public/textures/mcwroofs/black_roof.png differ diff --git a/public/textures/mcwroofs/black_roof_block.png b/public/textures/mcwroofs/black_roof_block.png new file mode 100644 index 00000000..55728b81 Binary files /dev/null and b/public/textures/mcwroofs/black_roof_block.png differ diff --git a/public/textures/mcwroofs/black_roof_slab.png b/public/textures/mcwroofs/black_roof_slab.png new file mode 100644 index 00000000..0240ed02 Binary files /dev/null and b/public/textures/mcwroofs/black_roof_slab.png differ diff --git a/public/textures/mcwroofs/black_steep_roof.png b/public/textures/mcwroofs/black_steep_roof.png new file mode 100644 index 00000000..bbf319d3 Binary files /dev/null and b/public/textures/mcwroofs/black_steep_roof.png differ diff --git a/public/textures/mcwroofs/black_striped_awning.png b/public/textures/mcwroofs/black_striped_awning.png new file mode 100644 index 00000000..c4da5393 Binary files /dev/null and b/public/textures/mcwroofs/black_striped_awning.png differ diff --git a/public/textures/mcwroofs/black_terracotta_attic_roof.png b/public/textures/mcwroofs/black_terracotta_attic_roof.png new file mode 100644 index 00000000..d4152c66 Binary files /dev/null and b/public/textures/mcwroofs/black_terracotta_attic_roof.png differ diff --git a/public/textures/mcwroofs/black_terracotta_lower_roof.png b/public/textures/mcwroofs/black_terracotta_lower_roof.png new file mode 100644 index 00000000..6e8e0629 Binary files /dev/null and b/public/textures/mcwroofs/black_terracotta_lower_roof.png differ diff --git a/public/textures/mcwroofs/black_terracotta_roof.png b/public/textures/mcwroofs/black_terracotta_roof.png new file mode 100644 index 00000000..bf585f01 Binary files /dev/null and b/public/textures/mcwroofs/black_terracotta_roof.png differ diff --git a/public/textures/mcwroofs/black_terracotta_steep_roof.png b/public/textures/mcwroofs/black_terracotta_steep_roof.png new file mode 100644 index 00000000..7237e881 Binary files /dev/null and b/public/textures/mcwroofs/black_terracotta_steep_roof.png differ diff --git a/public/textures/mcwroofs/black_terracotta_top_roof.png b/public/textures/mcwroofs/black_terracotta_top_roof.png new file mode 100644 index 00000000..915faa40 Binary files /dev/null and b/public/textures/mcwroofs/black_terracotta_top_roof.png differ diff --git a/public/textures/mcwroofs/black_terracotta_upper_lower_roof.png b/public/textures/mcwroofs/black_terracotta_upper_lower_roof.png new file mode 100644 index 00000000..daf171e5 Binary files /dev/null and b/public/textures/mcwroofs/black_terracotta_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/black_terracotta_upper_steep_roof.png b/public/textures/mcwroofs/black_terracotta_upper_steep_roof.png new file mode 100644 index 00000000..dd067966 Binary files /dev/null and b/public/textures/mcwroofs/black_terracotta_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/black_top_roof.png b/public/textures/mcwroofs/black_top_roof.png new file mode 100644 index 00000000..bd5a1c51 Binary files /dev/null and b/public/textures/mcwroofs/black_top_roof.png differ diff --git a/public/textures/mcwroofs/black_upper_lower_roof.png b/public/textures/mcwroofs/black_upper_lower_roof.png new file mode 100644 index 00000000..cc43cd11 Binary files /dev/null and b/public/textures/mcwroofs/black_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/black_upper_steep_roof.png b/public/textures/mcwroofs/black_upper_steep_roof.png new file mode 100644 index 00000000..bf84622e Binary files /dev/null and b/public/textures/mcwroofs/black_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/blackstone_attic_roof.png b/public/textures/mcwroofs/blackstone_attic_roof.png new file mode 100644 index 00000000..f0bdc120 Binary files /dev/null and b/public/textures/mcwroofs/blackstone_attic_roof.png differ diff --git a/public/textures/mcwroofs/blackstone_lower_roof.png b/public/textures/mcwroofs/blackstone_lower_roof.png new file mode 100644 index 00000000..1c5b40ae Binary files /dev/null and b/public/textures/mcwroofs/blackstone_lower_roof.png differ diff --git a/public/textures/mcwroofs/blackstone_roof.png b/public/textures/mcwroofs/blackstone_roof.png new file mode 100644 index 00000000..a37dec52 Binary files /dev/null and b/public/textures/mcwroofs/blackstone_roof.png differ diff --git a/public/textures/mcwroofs/blackstone_steep_roof.png b/public/textures/mcwroofs/blackstone_steep_roof.png new file mode 100644 index 00000000..818e706b Binary files /dev/null and b/public/textures/mcwroofs/blackstone_steep_roof.png differ diff --git a/public/textures/mcwroofs/blackstone_top_roof.png b/public/textures/mcwroofs/blackstone_top_roof.png new file mode 100644 index 00000000..9aeb1ce9 Binary files /dev/null and b/public/textures/mcwroofs/blackstone_top_roof.png differ diff --git a/public/textures/mcwroofs/blackstone_upper_lower_roof.png b/public/textures/mcwroofs/blackstone_upper_lower_roof.png new file mode 100644 index 00000000..00687df1 Binary files /dev/null and b/public/textures/mcwroofs/blackstone_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/blackstone_upper_steep_roof.png b/public/textures/mcwroofs/blackstone_upper_steep_roof.png new file mode 100644 index 00000000..6615f5a2 Binary files /dev/null and b/public/textures/mcwroofs/blackstone_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/blue_concrete_attic_roof.png b/public/textures/mcwroofs/blue_concrete_attic_roof.png new file mode 100644 index 00000000..e36226d8 Binary files /dev/null and b/public/textures/mcwroofs/blue_concrete_attic_roof.png differ diff --git a/public/textures/mcwroofs/blue_concrete_lower_roof.png b/public/textures/mcwroofs/blue_concrete_lower_roof.png new file mode 100644 index 00000000..66ae271c Binary files /dev/null and b/public/textures/mcwroofs/blue_concrete_lower_roof.png differ diff --git a/public/textures/mcwroofs/blue_concrete_roof.png b/public/textures/mcwroofs/blue_concrete_roof.png new file mode 100644 index 00000000..bb8dd979 Binary files /dev/null and b/public/textures/mcwroofs/blue_concrete_roof.png differ diff --git a/public/textures/mcwroofs/blue_concrete_steep_roof.png b/public/textures/mcwroofs/blue_concrete_steep_roof.png new file mode 100644 index 00000000..36708e49 Binary files /dev/null and b/public/textures/mcwroofs/blue_concrete_steep_roof.png differ diff --git a/public/textures/mcwroofs/blue_concrete_top_roof.png b/public/textures/mcwroofs/blue_concrete_top_roof.png new file mode 100644 index 00000000..ed24462d Binary files /dev/null and b/public/textures/mcwroofs/blue_concrete_top_roof.png differ diff --git a/public/textures/mcwroofs/blue_concrete_upper_lower_roof.png b/public/textures/mcwroofs/blue_concrete_upper_lower_roof.png new file mode 100644 index 00000000..8d23653d Binary files /dev/null and b/public/textures/mcwroofs/blue_concrete_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/blue_concrete_upper_steep_roof.png b/public/textures/mcwroofs/blue_concrete_upper_steep_roof.png new file mode 100644 index 00000000..bbad559b Binary files /dev/null and b/public/textures/mcwroofs/blue_concrete_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/blue_striped_awning.png b/public/textures/mcwroofs/blue_striped_awning.png new file mode 100644 index 00000000..91e4b7c9 Binary files /dev/null and b/public/textures/mcwroofs/blue_striped_awning.png differ diff --git a/public/textures/mcwroofs/blue_terracotta_attic_roof.png b/public/textures/mcwroofs/blue_terracotta_attic_roof.png new file mode 100644 index 00000000..a46092f3 Binary files /dev/null and b/public/textures/mcwroofs/blue_terracotta_attic_roof.png differ diff --git a/public/textures/mcwroofs/blue_terracotta_lower_roof.png b/public/textures/mcwroofs/blue_terracotta_lower_roof.png new file mode 100644 index 00000000..aef5f1b8 Binary files /dev/null and b/public/textures/mcwroofs/blue_terracotta_lower_roof.png differ diff --git a/public/textures/mcwroofs/blue_terracotta_roof.png b/public/textures/mcwroofs/blue_terracotta_roof.png new file mode 100644 index 00000000..a3b8ef11 Binary files /dev/null and b/public/textures/mcwroofs/blue_terracotta_roof.png differ diff --git a/public/textures/mcwroofs/blue_terracotta_steep_roof.png b/public/textures/mcwroofs/blue_terracotta_steep_roof.png new file mode 100644 index 00000000..82d8178c Binary files /dev/null and b/public/textures/mcwroofs/blue_terracotta_steep_roof.png differ diff --git a/public/textures/mcwroofs/blue_terracotta_top_roof.png b/public/textures/mcwroofs/blue_terracotta_top_roof.png new file mode 100644 index 00000000..16b8af48 Binary files /dev/null and b/public/textures/mcwroofs/blue_terracotta_top_roof.png differ diff --git a/public/textures/mcwroofs/blue_terracotta_upper_lower_roof.png b/public/textures/mcwroofs/blue_terracotta_upper_lower_roof.png new file mode 100644 index 00000000..e5464d4a Binary files /dev/null and b/public/textures/mcwroofs/blue_terracotta_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/blue_terracotta_upper_steep_roof.png b/public/textures/mcwroofs/blue_terracotta_upper_steep_roof.png new file mode 100644 index 00000000..f40c15d7 Binary files /dev/null and b/public/textures/mcwroofs/blue_terracotta_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/bricks_attic_roof.png b/public/textures/mcwroofs/bricks_attic_roof.png new file mode 100644 index 00000000..78a4ec7e Binary files /dev/null and b/public/textures/mcwroofs/bricks_attic_roof.png differ diff --git a/public/textures/mcwroofs/bricks_lower_roof.png b/public/textures/mcwroofs/bricks_lower_roof.png new file mode 100644 index 00000000..f1c81a87 Binary files /dev/null and b/public/textures/mcwroofs/bricks_lower_roof.png differ diff --git a/public/textures/mcwroofs/bricks_roof.png b/public/textures/mcwroofs/bricks_roof.png new file mode 100644 index 00000000..f6618664 Binary files /dev/null and b/public/textures/mcwroofs/bricks_roof.png differ diff --git a/public/textures/mcwroofs/bricks_steep_roof.png b/public/textures/mcwroofs/bricks_steep_roof.png new file mode 100644 index 00000000..f385a911 Binary files /dev/null and b/public/textures/mcwroofs/bricks_steep_roof.png differ diff --git a/public/textures/mcwroofs/bricks_top_roof.png b/public/textures/mcwroofs/bricks_top_roof.png new file mode 100644 index 00000000..4ca1c5f5 Binary files /dev/null and b/public/textures/mcwroofs/bricks_top_roof.png differ diff --git a/public/textures/mcwroofs/bricks_upper_lower_roof.png b/public/textures/mcwroofs/bricks_upper_lower_roof.png new file mode 100644 index 00000000..c7dab96f Binary files /dev/null and b/public/textures/mcwroofs/bricks_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/bricks_upper_steep_roof.png b/public/textures/mcwroofs/bricks_upper_steep_roof.png new file mode 100644 index 00000000..25591a7f Binary files /dev/null and b/public/textures/mcwroofs/bricks_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/brown_concrete_attic_roof.png b/public/textures/mcwroofs/brown_concrete_attic_roof.png new file mode 100644 index 00000000..84f8427c Binary files /dev/null and b/public/textures/mcwroofs/brown_concrete_attic_roof.png differ diff --git a/public/textures/mcwroofs/brown_concrete_lower_roof.png b/public/textures/mcwroofs/brown_concrete_lower_roof.png new file mode 100644 index 00000000..eb822e0d Binary files /dev/null and b/public/textures/mcwroofs/brown_concrete_lower_roof.png differ diff --git a/public/textures/mcwroofs/brown_concrete_roof.png b/public/textures/mcwroofs/brown_concrete_roof.png new file mode 100644 index 00000000..8e10b1cf Binary files /dev/null and b/public/textures/mcwroofs/brown_concrete_roof.png differ diff --git a/public/textures/mcwroofs/brown_concrete_steep_roof.png b/public/textures/mcwroofs/brown_concrete_steep_roof.png new file mode 100644 index 00000000..048c921a Binary files /dev/null and b/public/textures/mcwroofs/brown_concrete_steep_roof.png differ diff --git a/public/textures/mcwroofs/brown_concrete_top_roof.png b/public/textures/mcwroofs/brown_concrete_top_roof.png new file mode 100644 index 00000000..b480fdfa Binary files /dev/null and b/public/textures/mcwroofs/brown_concrete_top_roof.png differ diff --git a/public/textures/mcwroofs/brown_concrete_upper_lower_roof.png b/public/textures/mcwroofs/brown_concrete_upper_lower_roof.png new file mode 100644 index 00000000..61cebd5b Binary files /dev/null and b/public/textures/mcwroofs/brown_concrete_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/brown_concrete_upper_steep_roof.png b/public/textures/mcwroofs/brown_concrete_upper_steep_roof.png new file mode 100644 index 00000000..d5aad751 Binary files /dev/null and b/public/textures/mcwroofs/brown_concrete_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/brown_striped_awning.png b/public/textures/mcwroofs/brown_striped_awning.png new file mode 100644 index 00000000..390f846c Binary files /dev/null and b/public/textures/mcwroofs/brown_striped_awning.png differ diff --git a/public/textures/mcwroofs/brown_terracotta_attic_roof.png b/public/textures/mcwroofs/brown_terracotta_attic_roof.png new file mode 100644 index 00000000..93c87707 Binary files /dev/null and b/public/textures/mcwroofs/brown_terracotta_attic_roof.png differ diff --git a/public/textures/mcwroofs/brown_terracotta_lower_roof.png b/public/textures/mcwroofs/brown_terracotta_lower_roof.png new file mode 100644 index 00000000..86ad3876 Binary files /dev/null and b/public/textures/mcwroofs/brown_terracotta_lower_roof.png differ diff --git a/public/textures/mcwroofs/brown_terracotta_roof.png b/public/textures/mcwroofs/brown_terracotta_roof.png new file mode 100644 index 00000000..472fdd8e Binary files /dev/null and b/public/textures/mcwroofs/brown_terracotta_roof.png differ diff --git a/public/textures/mcwroofs/brown_terracotta_steep_roof.png b/public/textures/mcwroofs/brown_terracotta_steep_roof.png new file mode 100644 index 00000000..cb78e77a Binary files /dev/null and b/public/textures/mcwroofs/brown_terracotta_steep_roof.png differ diff --git a/public/textures/mcwroofs/brown_terracotta_top_roof.png b/public/textures/mcwroofs/brown_terracotta_top_roof.png new file mode 100644 index 00000000..072ad7f5 Binary files /dev/null and b/public/textures/mcwroofs/brown_terracotta_top_roof.png differ diff --git a/public/textures/mcwroofs/brown_terracotta_upper_lower_roof.png b/public/textures/mcwroofs/brown_terracotta_upper_lower_roof.png new file mode 100644 index 00000000..c046ba64 Binary files /dev/null and b/public/textures/mcwroofs/brown_terracotta_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/brown_terracotta_upper_steep_roof.png b/public/textures/mcwroofs/brown_terracotta_upper_steep_roof.png new file mode 100644 index 00000000..414daf92 Binary files /dev/null and b/public/textures/mcwroofs/brown_terracotta_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/cherry_attic_roof.png b/public/textures/mcwroofs/cherry_attic_roof.png new file mode 100644 index 00000000..90783cf6 Binary files /dev/null and b/public/textures/mcwroofs/cherry_attic_roof.png differ diff --git a/public/textures/mcwroofs/cherry_lower_roof.png b/public/textures/mcwroofs/cherry_lower_roof.png new file mode 100644 index 00000000..9a5d4563 Binary files /dev/null and b/public/textures/mcwroofs/cherry_lower_roof.png differ diff --git a/public/textures/mcwroofs/cherry_planks_attic_roof.png b/public/textures/mcwroofs/cherry_planks_attic_roof.png new file mode 100644 index 00000000..4f48c2de Binary files /dev/null and b/public/textures/mcwroofs/cherry_planks_attic_roof.png differ diff --git a/public/textures/mcwroofs/cherry_planks_lower_roof.png b/public/textures/mcwroofs/cherry_planks_lower_roof.png new file mode 100644 index 00000000..432fba6a Binary files /dev/null and b/public/textures/mcwroofs/cherry_planks_lower_roof.png differ diff --git a/public/textures/mcwroofs/cherry_planks_roof.png b/public/textures/mcwroofs/cherry_planks_roof.png new file mode 100644 index 00000000..5c562941 Binary files /dev/null and b/public/textures/mcwroofs/cherry_planks_roof.png differ diff --git a/public/textures/mcwroofs/cherry_planks_steep_roof.png b/public/textures/mcwroofs/cherry_planks_steep_roof.png new file mode 100644 index 00000000..db52ca66 Binary files /dev/null and b/public/textures/mcwroofs/cherry_planks_steep_roof.png differ diff --git a/public/textures/mcwroofs/cherry_planks_top_roof.png b/public/textures/mcwroofs/cherry_planks_top_roof.png new file mode 100644 index 00000000..f84f61d2 Binary files /dev/null and b/public/textures/mcwroofs/cherry_planks_top_roof.png differ diff --git a/public/textures/mcwroofs/cherry_planks_upper_lower_roof.png b/public/textures/mcwroofs/cherry_planks_upper_lower_roof.png new file mode 100644 index 00000000..1309ae1e Binary files /dev/null and b/public/textures/mcwroofs/cherry_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/cherry_planks_upper_steep_roof.png b/public/textures/mcwroofs/cherry_planks_upper_steep_roof.png new file mode 100644 index 00000000..4c235aaa Binary files /dev/null and b/public/textures/mcwroofs/cherry_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/cherry_roof.png b/public/textures/mcwroofs/cherry_roof.png new file mode 100644 index 00000000..abadccea Binary files /dev/null and b/public/textures/mcwroofs/cherry_roof.png differ diff --git a/public/textures/mcwroofs/cherry_steep_roof.png b/public/textures/mcwroofs/cherry_steep_roof.png new file mode 100644 index 00000000..fa29b3f5 Binary files /dev/null and b/public/textures/mcwroofs/cherry_steep_roof.png differ diff --git a/public/textures/mcwroofs/cherry_top_roof.png b/public/textures/mcwroofs/cherry_top_roof.png new file mode 100644 index 00000000..635be8cd Binary files /dev/null and b/public/textures/mcwroofs/cherry_top_roof.png differ diff --git a/public/textures/mcwroofs/cherry_upper_lower_roof.png b/public/textures/mcwroofs/cherry_upper_lower_roof.png new file mode 100644 index 00000000..8c9a2e5b Binary files /dev/null and b/public/textures/mcwroofs/cherry_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/cherry_upper_steep_roof.png b/public/textures/mcwroofs/cherry_upper_steep_roof.png new file mode 100644 index 00000000..29921839 Binary files /dev/null and b/public/textures/mcwroofs/cherry_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/cobblestone_attic_roof.png b/public/textures/mcwroofs/cobblestone_attic_roof.png new file mode 100644 index 00000000..fc3b6475 Binary files /dev/null and b/public/textures/mcwroofs/cobblestone_attic_roof.png differ diff --git a/public/textures/mcwroofs/cobblestone_lower_roof.png b/public/textures/mcwroofs/cobblestone_lower_roof.png new file mode 100644 index 00000000..f1ec88c7 Binary files /dev/null and b/public/textures/mcwroofs/cobblestone_lower_roof.png differ diff --git a/public/textures/mcwroofs/cobblestone_roof.png b/public/textures/mcwroofs/cobblestone_roof.png new file mode 100644 index 00000000..055e2470 Binary files /dev/null and b/public/textures/mcwroofs/cobblestone_roof.png differ diff --git a/public/textures/mcwroofs/cobblestone_steep_roof.png b/public/textures/mcwroofs/cobblestone_steep_roof.png new file mode 100644 index 00000000..050c9bc6 Binary files /dev/null and b/public/textures/mcwroofs/cobblestone_steep_roof.png differ diff --git a/public/textures/mcwroofs/cobblestone_top_roof.png b/public/textures/mcwroofs/cobblestone_top_roof.png new file mode 100644 index 00000000..3f3469f4 Binary files /dev/null and b/public/textures/mcwroofs/cobblestone_top_roof.png differ diff --git a/public/textures/mcwroofs/cobblestone_upper_lower_roof.png b/public/textures/mcwroofs/cobblestone_upper_lower_roof.png new file mode 100644 index 00000000..3416eef4 Binary files /dev/null and b/public/textures/mcwroofs/cobblestone_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/cobblestone_upper_steep_roof.png b/public/textures/mcwroofs/cobblestone_upper_steep_roof.png new file mode 100644 index 00000000..d2e7cf89 Binary files /dev/null and b/public/textures/mcwroofs/cobblestone_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/crimson_attic_roof.png b/public/textures/mcwroofs/crimson_attic_roof.png new file mode 100644 index 00000000..ea0196a3 Binary files /dev/null and b/public/textures/mcwroofs/crimson_attic_roof.png differ diff --git a/public/textures/mcwroofs/crimson_lower_roof.png b/public/textures/mcwroofs/crimson_lower_roof.png new file mode 100644 index 00000000..bef49b0a Binary files /dev/null and b/public/textures/mcwroofs/crimson_lower_roof.png differ diff --git a/public/textures/mcwroofs/crimson_planks_attic_roof.png b/public/textures/mcwroofs/crimson_planks_attic_roof.png new file mode 100644 index 00000000..fc5e19fc Binary files /dev/null and b/public/textures/mcwroofs/crimson_planks_attic_roof.png differ diff --git a/public/textures/mcwroofs/crimson_planks_lower_roof.png b/public/textures/mcwroofs/crimson_planks_lower_roof.png new file mode 100644 index 00000000..839f422d Binary files /dev/null and b/public/textures/mcwroofs/crimson_planks_lower_roof.png differ diff --git a/public/textures/mcwroofs/crimson_planks_roof.png b/public/textures/mcwroofs/crimson_planks_roof.png new file mode 100644 index 00000000..d0d1b97e Binary files /dev/null and b/public/textures/mcwroofs/crimson_planks_roof.png differ diff --git a/public/textures/mcwroofs/crimson_planks_steep_roof.png b/public/textures/mcwroofs/crimson_planks_steep_roof.png new file mode 100644 index 00000000..9931a1ae Binary files /dev/null and b/public/textures/mcwroofs/crimson_planks_steep_roof.png differ diff --git a/public/textures/mcwroofs/crimson_planks_top_roof.png b/public/textures/mcwroofs/crimson_planks_top_roof.png new file mode 100644 index 00000000..c4564f71 Binary files /dev/null and b/public/textures/mcwroofs/crimson_planks_top_roof.png differ diff --git a/public/textures/mcwroofs/crimson_planks_upper_lower_roof.png b/public/textures/mcwroofs/crimson_planks_upper_lower_roof.png new file mode 100644 index 00000000..ec950936 Binary files /dev/null and b/public/textures/mcwroofs/crimson_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/crimson_planks_upper_steep_roof.png b/public/textures/mcwroofs/crimson_planks_upper_steep_roof.png new file mode 100644 index 00000000..929f517a Binary files /dev/null and b/public/textures/mcwroofs/crimson_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/crimson_roof.png b/public/textures/mcwroofs/crimson_roof.png new file mode 100644 index 00000000..e219eee1 Binary files /dev/null and b/public/textures/mcwroofs/crimson_roof.png differ diff --git a/public/textures/mcwroofs/crimson_steep_roof.png b/public/textures/mcwroofs/crimson_steep_roof.png new file mode 100644 index 00000000..970bc4e3 Binary files /dev/null and b/public/textures/mcwroofs/crimson_steep_roof.png differ diff --git a/public/textures/mcwroofs/crimson_top_roof.png b/public/textures/mcwroofs/crimson_top_roof.png new file mode 100644 index 00000000..59d279ee Binary files /dev/null and b/public/textures/mcwroofs/crimson_top_roof.png differ diff --git a/public/textures/mcwroofs/crimson_upper_lower_roof.png b/public/textures/mcwroofs/crimson_upper_lower_roof.png new file mode 100644 index 00000000..016bd851 Binary files /dev/null and b/public/textures/mcwroofs/crimson_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/crimson_upper_steep_roof.png b/public/textures/mcwroofs/crimson_upper_steep_roof.png new file mode 100644 index 00000000..9b807228 Binary files /dev/null and b/public/textures/mcwroofs/crimson_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/cyan_concrete_attic_roof.png b/public/textures/mcwroofs/cyan_concrete_attic_roof.png new file mode 100644 index 00000000..c880dad7 Binary files /dev/null and b/public/textures/mcwroofs/cyan_concrete_attic_roof.png differ diff --git a/public/textures/mcwroofs/cyan_concrete_lower_roof.png b/public/textures/mcwroofs/cyan_concrete_lower_roof.png new file mode 100644 index 00000000..68bbcc0b Binary files /dev/null and b/public/textures/mcwroofs/cyan_concrete_lower_roof.png differ diff --git a/public/textures/mcwroofs/cyan_concrete_roof.png b/public/textures/mcwroofs/cyan_concrete_roof.png new file mode 100644 index 00000000..5dd98dc3 Binary files /dev/null and b/public/textures/mcwroofs/cyan_concrete_roof.png differ diff --git a/public/textures/mcwroofs/cyan_concrete_steep_roof.png b/public/textures/mcwroofs/cyan_concrete_steep_roof.png new file mode 100644 index 00000000..879f9225 Binary files /dev/null and b/public/textures/mcwroofs/cyan_concrete_steep_roof.png differ diff --git a/public/textures/mcwroofs/cyan_concrete_top_roof.png b/public/textures/mcwroofs/cyan_concrete_top_roof.png new file mode 100644 index 00000000..894c3565 Binary files /dev/null and b/public/textures/mcwroofs/cyan_concrete_top_roof.png differ diff --git a/public/textures/mcwroofs/cyan_concrete_upper_lower_roof.png b/public/textures/mcwroofs/cyan_concrete_upper_lower_roof.png new file mode 100644 index 00000000..a0c47120 Binary files /dev/null and b/public/textures/mcwroofs/cyan_concrete_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/cyan_concrete_upper_steep_roof.png b/public/textures/mcwroofs/cyan_concrete_upper_steep_roof.png new file mode 100644 index 00000000..c8146b87 Binary files /dev/null and b/public/textures/mcwroofs/cyan_concrete_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/cyan_striped_awning.png b/public/textures/mcwroofs/cyan_striped_awning.png new file mode 100644 index 00000000..f48b2746 Binary files /dev/null and b/public/textures/mcwroofs/cyan_striped_awning.png differ diff --git a/public/textures/mcwroofs/cyan_terracotta_attic_roof.png b/public/textures/mcwroofs/cyan_terracotta_attic_roof.png new file mode 100644 index 00000000..b1c4072d Binary files /dev/null and b/public/textures/mcwroofs/cyan_terracotta_attic_roof.png differ diff --git a/public/textures/mcwroofs/cyan_terracotta_lower_roof.png b/public/textures/mcwroofs/cyan_terracotta_lower_roof.png new file mode 100644 index 00000000..cb8f8cce Binary files /dev/null and b/public/textures/mcwroofs/cyan_terracotta_lower_roof.png differ diff --git a/public/textures/mcwroofs/cyan_terracotta_roof.png b/public/textures/mcwroofs/cyan_terracotta_roof.png new file mode 100644 index 00000000..ca566946 Binary files /dev/null and b/public/textures/mcwroofs/cyan_terracotta_roof.png differ diff --git a/public/textures/mcwroofs/cyan_terracotta_steep_roof.png b/public/textures/mcwroofs/cyan_terracotta_steep_roof.png new file mode 100644 index 00000000..b170d2d6 Binary files /dev/null and b/public/textures/mcwroofs/cyan_terracotta_steep_roof.png differ diff --git a/public/textures/mcwroofs/cyan_terracotta_top_roof.png b/public/textures/mcwroofs/cyan_terracotta_top_roof.png new file mode 100644 index 00000000..c181192c Binary files /dev/null and b/public/textures/mcwroofs/cyan_terracotta_top_roof.png differ diff --git a/public/textures/mcwroofs/cyan_terracotta_upper_lower_roof.png b/public/textures/mcwroofs/cyan_terracotta_upper_lower_roof.png new file mode 100644 index 00000000..304c28e2 Binary files /dev/null and b/public/textures/mcwroofs/cyan_terracotta_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/cyan_terracotta_upper_steep_roof.png b/public/textures/mcwroofs/cyan_terracotta_upper_steep_roof.png new file mode 100644 index 00000000..d6c69257 Binary files /dev/null and b/public/textures/mcwroofs/cyan_terracotta_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/dark_oak_attic_roof.png b/public/textures/mcwroofs/dark_oak_attic_roof.png new file mode 100644 index 00000000..24fb2e02 Binary files /dev/null and b/public/textures/mcwroofs/dark_oak_attic_roof.png differ diff --git a/public/textures/mcwroofs/dark_oak_lower_roof.png b/public/textures/mcwroofs/dark_oak_lower_roof.png new file mode 100644 index 00000000..c549e20c Binary files /dev/null and b/public/textures/mcwroofs/dark_oak_lower_roof.png differ diff --git a/public/textures/mcwroofs/dark_oak_planks_attic_roof.png b/public/textures/mcwroofs/dark_oak_planks_attic_roof.png new file mode 100644 index 00000000..f3edb46d Binary files /dev/null and b/public/textures/mcwroofs/dark_oak_planks_attic_roof.png differ diff --git a/public/textures/mcwroofs/dark_oak_planks_lower_roof.png b/public/textures/mcwroofs/dark_oak_planks_lower_roof.png new file mode 100644 index 00000000..8e7e62c6 Binary files /dev/null and b/public/textures/mcwroofs/dark_oak_planks_lower_roof.png differ diff --git a/public/textures/mcwroofs/dark_oak_planks_roof.png b/public/textures/mcwroofs/dark_oak_planks_roof.png new file mode 100644 index 00000000..7126d48a Binary files /dev/null and b/public/textures/mcwroofs/dark_oak_planks_roof.png differ diff --git a/public/textures/mcwroofs/dark_oak_planks_steep_roof.png b/public/textures/mcwroofs/dark_oak_planks_steep_roof.png new file mode 100644 index 00000000..9ec8851c Binary files /dev/null and b/public/textures/mcwroofs/dark_oak_planks_steep_roof.png differ diff --git a/public/textures/mcwroofs/dark_oak_planks_top_roof.png b/public/textures/mcwroofs/dark_oak_planks_top_roof.png new file mode 100644 index 00000000..8e2a4e3a Binary files /dev/null and b/public/textures/mcwroofs/dark_oak_planks_top_roof.png differ diff --git a/public/textures/mcwroofs/dark_oak_planks_upper_lower_roof.png b/public/textures/mcwroofs/dark_oak_planks_upper_lower_roof.png new file mode 100644 index 00000000..fbbc0fdd Binary files /dev/null and b/public/textures/mcwroofs/dark_oak_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/dark_oak_planks_upper_steep_roof.png b/public/textures/mcwroofs/dark_oak_planks_upper_steep_roof.png new file mode 100644 index 00000000..752919e4 Binary files /dev/null and b/public/textures/mcwroofs/dark_oak_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/dark_oak_roof.png b/public/textures/mcwroofs/dark_oak_roof.png new file mode 100644 index 00000000..1b286296 Binary files /dev/null and b/public/textures/mcwroofs/dark_oak_roof.png differ diff --git a/public/textures/mcwroofs/dark_oak_steep_roof.png b/public/textures/mcwroofs/dark_oak_steep_roof.png new file mode 100644 index 00000000..6a38ef17 Binary files /dev/null and b/public/textures/mcwroofs/dark_oak_steep_roof.png differ diff --git a/public/textures/mcwroofs/dark_oak_top_roof.png b/public/textures/mcwroofs/dark_oak_top_roof.png new file mode 100644 index 00000000..386f2724 Binary files /dev/null and b/public/textures/mcwroofs/dark_oak_top_roof.png differ diff --git a/public/textures/mcwroofs/dark_oak_upper_lower_roof.png b/public/textures/mcwroofs/dark_oak_upper_lower_roof.png new file mode 100644 index 00000000..b38fbb60 Binary files /dev/null and b/public/textures/mcwroofs/dark_oak_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/dark_oak_upper_steep_roof.png b/public/textures/mcwroofs/dark_oak_upper_steep_roof.png new file mode 100644 index 00000000..ea25eac8 Binary files /dev/null and b/public/textures/mcwroofs/dark_oak_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/dark_prismarine_attic_roof.png b/public/textures/mcwroofs/dark_prismarine_attic_roof.png new file mode 100644 index 00000000..2b5bdb0b Binary files /dev/null and b/public/textures/mcwroofs/dark_prismarine_attic_roof.png differ diff --git a/public/textures/mcwroofs/dark_prismarine_lower_roof.png b/public/textures/mcwroofs/dark_prismarine_lower_roof.png new file mode 100644 index 00000000..19e11ccb Binary files /dev/null and b/public/textures/mcwroofs/dark_prismarine_lower_roof.png differ diff --git a/public/textures/mcwroofs/dark_prismarine_roof.png b/public/textures/mcwroofs/dark_prismarine_roof.png new file mode 100644 index 00000000..f98e5e91 Binary files /dev/null and b/public/textures/mcwroofs/dark_prismarine_roof.png differ diff --git a/public/textures/mcwroofs/dark_prismarine_steep_roof.png b/public/textures/mcwroofs/dark_prismarine_steep_roof.png new file mode 100644 index 00000000..13c3501c Binary files /dev/null and b/public/textures/mcwroofs/dark_prismarine_steep_roof.png differ diff --git a/public/textures/mcwroofs/dark_prismarine_top_roof.png b/public/textures/mcwroofs/dark_prismarine_top_roof.png new file mode 100644 index 00000000..71378424 Binary files /dev/null and b/public/textures/mcwroofs/dark_prismarine_top_roof.png differ diff --git a/public/textures/mcwroofs/dark_prismarine_upper_lower_roof.png b/public/textures/mcwroofs/dark_prismarine_upper_lower_roof.png new file mode 100644 index 00000000..7feadb4b Binary files /dev/null and b/public/textures/mcwroofs/dark_prismarine_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/dark_prismarine_upper_steep_roof.png b/public/textures/mcwroofs/dark_prismarine_upper_steep_roof.png new file mode 100644 index 00000000..79fb5a03 Binary files /dev/null and b/public/textures/mcwroofs/dark_prismarine_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/deepslate_attic_roof.png b/public/textures/mcwroofs/deepslate_attic_roof.png new file mode 100644 index 00000000..5cfa23e4 Binary files /dev/null and b/public/textures/mcwroofs/deepslate_attic_roof.png differ diff --git a/public/textures/mcwroofs/deepslate_lower_roof.png b/public/textures/mcwroofs/deepslate_lower_roof.png new file mode 100644 index 00000000..4225b3f7 Binary files /dev/null and b/public/textures/mcwroofs/deepslate_lower_roof.png differ diff --git a/public/textures/mcwroofs/deepslate_roof.png b/public/textures/mcwroofs/deepslate_roof.png new file mode 100644 index 00000000..57c500aa Binary files /dev/null and b/public/textures/mcwroofs/deepslate_roof.png differ diff --git a/public/textures/mcwroofs/deepslate_steep_roof.png b/public/textures/mcwroofs/deepslate_steep_roof.png new file mode 100644 index 00000000..c21b4b49 Binary files /dev/null and b/public/textures/mcwroofs/deepslate_steep_roof.png differ diff --git a/public/textures/mcwroofs/deepslate_top_roof.png b/public/textures/mcwroofs/deepslate_top_roof.png new file mode 100644 index 00000000..4f20c20b Binary files /dev/null and b/public/textures/mcwroofs/deepslate_top_roof.png differ diff --git a/public/textures/mcwroofs/deepslate_upper_lower_roof.png b/public/textures/mcwroofs/deepslate_upper_lower_roof.png new file mode 100644 index 00000000..37b80057 Binary files /dev/null and b/public/textures/mcwroofs/deepslate_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/deepslate_upper_steep_roof.png b/public/textures/mcwroofs/deepslate_upper_steep_roof.png new file mode 100644 index 00000000..b7978da4 Binary files /dev/null and b/public/textures/mcwroofs/deepslate_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/diorite_attic_roof.png b/public/textures/mcwroofs/diorite_attic_roof.png new file mode 100644 index 00000000..49ddff5b Binary files /dev/null and b/public/textures/mcwroofs/diorite_attic_roof.png differ diff --git a/public/textures/mcwroofs/diorite_lower_roof.png b/public/textures/mcwroofs/diorite_lower_roof.png new file mode 100644 index 00000000..6ea8d630 Binary files /dev/null and b/public/textures/mcwroofs/diorite_lower_roof.png differ diff --git a/public/textures/mcwroofs/diorite_roof.png b/public/textures/mcwroofs/diorite_roof.png new file mode 100644 index 00000000..592d236f Binary files /dev/null and b/public/textures/mcwroofs/diorite_roof.png differ diff --git a/public/textures/mcwroofs/diorite_steep_roof.png b/public/textures/mcwroofs/diorite_steep_roof.png new file mode 100644 index 00000000..b306e75a Binary files /dev/null and b/public/textures/mcwroofs/diorite_steep_roof.png differ diff --git a/public/textures/mcwroofs/diorite_top_roof.png b/public/textures/mcwroofs/diorite_top_roof.png new file mode 100644 index 00000000..f9d6951e Binary files /dev/null and b/public/textures/mcwroofs/diorite_top_roof.png differ diff --git a/public/textures/mcwroofs/diorite_upper_lower_roof.png b/public/textures/mcwroofs/diorite_upper_lower_roof.png new file mode 100644 index 00000000..a6f1f30c Binary files /dev/null and b/public/textures/mcwroofs/diorite_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/diorite_upper_steep_roof.png b/public/textures/mcwroofs/diorite_upper_steep_roof.png new file mode 100644 index 00000000..0e34dc00 Binary files /dev/null and b/public/textures/mcwroofs/diorite_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/granite_attic_roof.png b/public/textures/mcwroofs/granite_attic_roof.png new file mode 100644 index 00000000..8f97c600 Binary files /dev/null and b/public/textures/mcwroofs/granite_attic_roof.png differ diff --git a/public/textures/mcwroofs/granite_lower_roof.png b/public/textures/mcwroofs/granite_lower_roof.png new file mode 100644 index 00000000..750ed98d Binary files /dev/null and b/public/textures/mcwroofs/granite_lower_roof.png differ diff --git a/public/textures/mcwroofs/granite_roof.png b/public/textures/mcwroofs/granite_roof.png new file mode 100644 index 00000000..474de787 Binary files /dev/null and b/public/textures/mcwroofs/granite_roof.png differ diff --git a/public/textures/mcwroofs/granite_steep_roof.png b/public/textures/mcwroofs/granite_steep_roof.png new file mode 100644 index 00000000..ad156d12 Binary files /dev/null and b/public/textures/mcwroofs/granite_steep_roof.png differ diff --git a/public/textures/mcwroofs/granite_top_roof.png b/public/textures/mcwroofs/granite_top_roof.png new file mode 100644 index 00000000..f1a9a28a Binary files /dev/null and b/public/textures/mcwroofs/granite_top_roof.png differ diff --git a/public/textures/mcwroofs/granite_upper_lower_roof.png b/public/textures/mcwroofs/granite_upper_lower_roof.png new file mode 100644 index 00000000..bd8147b3 Binary files /dev/null and b/public/textures/mcwroofs/granite_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/granite_upper_steep_roof.png b/public/textures/mcwroofs/granite_upper_steep_roof.png new file mode 100644 index 00000000..bc92e7e9 Binary files /dev/null and b/public/textures/mcwroofs/granite_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/grass_attic_roof.png b/public/textures/mcwroofs/grass_attic_roof.png new file mode 100644 index 00000000..eac1af6f Binary files /dev/null and b/public/textures/mcwroofs/grass_attic_roof.png differ diff --git a/public/textures/mcwroofs/grass_lower_roof.png b/public/textures/mcwroofs/grass_lower_roof.png new file mode 100644 index 00000000..a757563c Binary files /dev/null and b/public/textures/mcwroofs/grass_lower_roof.png differ diff --git a/public/textures/mcwroofs/grass_roof.png b/public/textures/mcwroofs/grass_roof.png new file mode 100644 index 00000000..782e1c9d Binary files /dev/null and b/public/textures/mcwroofs/grass_roof.png differ diff --git a/public/textures/mcwroofs/grass_steep_roof.png b/public/textures/mcwroofs/grass_steep_roof.png new file mode 100644 index 00000000..472175f3 Binary files /dev/null and b/public/textures/mcwroofs/grass_steep_roof.png differ diff --git a/public/textures/mcwroofs/grass_top_roof.png b/public/textures/mcwroofs/grass_top_roof.png new file mode 100644 index 00000000..231d424c Binary files /dev/null and b/public/textures/mcwroofs/grass_top_roof.png differ diff --git a/public/textures/mcwroofs/grass_upper_lower_roof.png b/public/textures/mcwroofs/grass_upper_lower_roof.png new file mode 100644 index 00000000..21b025eb Binary files /dev/null and b/public/textures/mcwroofs/grass_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/grass_upper_steep_roof.png b/public/textures/mcwroofs/grass_upper_steep_roof.png new file mode 100644 index 00000000..98f8b959 Binary files /dev/null and b/public/textures/mcwroofs/grass_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/gray_attic_roof.png b/public/textures/mcwroofs/gray_attic_roof.png new file mode 100644 index 00000000..e759cfc7 Binary files /dev/null and b/public/textures/mcwroofs/gray_attic_roof.png differ diff --git a/public/textures/mcwroofs/gray_concrete_attic_roof.png b/public/textures/mcwroofs/gray_concrete_attic_roof.png new file mode 100644 index 00000000..c0af59b8 Binary files /dev/null and b/public/textures/mcwroofs/gray_concrete_attic_roof.png differ diff --git a/public/textures/mcwroofs/gray_concrete_lower_roof.png b/public/textures/mcwroofs/gray_concrete_lower_roof.png new file mode 100644 index 00000000..f3a5d4e3 Binary files /dev/null and b/public/textures/mcwroofs/gray_concrete_lower_roof.png differ diff --git a/public/textures/mcwroofs/gray_concrete_roof.png b/public/textures/mcwroofs/gray_concrete_roof.png new file mode 100644 index 00000000..f5225ec9 Binary files /dev/null and b/public/textures/mcwroofs/gray_concrete_roof.png differ diff --git a/public/textures/mcwroofs/gray_concrete_steep_roof.png b/public/textures/mcwroofs/gray_concrete_steep_roof.png new file mode 100644 index 00000000..71b6559e Binary files /dev/null and b/public/textures/mcwroofs/gray_concrete_steep_roof.png differ diff --git a/public/textures/mcwroofs/gray_concrete_top_roof.png b/public/textures/mcwroofs/gray_concrete_top_roof.png new file mode 100644 index 00000000..d6d4902d Binary files /dev/null and b/public/textures/mcwroofs/gray_concrete_top_roof.png differ diff --git a/public/textures/mcwroofs/gray_concrete_upper_lower_roof.png b/public/textures/mcwroofs/gray_concrete_upper_lower_roof.png new file mode 100644 index 00000000..1ac54a13 Binary files /dev/null and b/public/textures/mcwroofs/gray_concrete_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/gray_concrete_upper_steep_roof.png b/public/textures/mcwroofs/gray_concrete_upper_steep_roof.png new file mode 100644 index 00000000..7432a757 Binary files /dev/null and b/public/textures/mcwroofs/gray_concrete_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/gray_lower_roof.png b/public/textures/mcwroofs/gray_lower_roof.png new file mode 100644 index 00000000..4650a5b2 Binary files /dev/null and b/public/textures/mcwroofs/gray_lower_roof.png differ diff --git a/public/textures/mcwroofs/gray_roof.png b/public/textures/mcwroofs/gray_roof.png new file mode 100644 index 00000000..c684a484 Binary files /dev/null and b/public/textures/mcwroofs/gray_roof.png differ diff --git a/public/textures/mcwroofs/gray_roof_block.png b/public/textures/mcwroofs/gray_roof_block.png new file mode 100644 index 00000000..61cb0864 Binary files /dev/null and b/public/textures/mcwroofs/gray_roof_block.png differ diff --git a/public/textures/mcwroofs/gray_roof_slab.png b/public/textures/mcwroofs/gray_roof_slab.png new file mode 100644 index 00000000..3b71cdfa Binary files /dev/null and b/public/textures/mcwroofs/gray_roof_slab.png differ diff --git a/public/textures/mcwroofs/gray_steep_roof.png b/public/textures/mcwroofs/gray_steep_roof.png new file mode 100644 index 00000000..ed40acf0 Binary files /dev/null and b/public/textures/mcwroofs/gray_steep_roof.png differ diff --git a/public/textures/mcwroofs/gray_striped_awning.png b/public/textures/mcwroofs/gray_striped_awning.png new file mode 100644 index 00000000..f78b33a8 Binary files /dev/null and b/public/textures/mcwroofs/gray_striped_awning.png differ diff --git a/public/textures/mcwroofs/gray_terracotta_attic_roof.png b/public/textures/mcwroofs/gray_terracotta_attic_roof.png new file mode 100644 index 00000000..24876678 Binary files /dev/null and b/public/textures/mcwroofs/gray_terracotta_attic_roof.png differ diff --git a/public/textures/mcwroofs/gray_terracotta_lower_roof.png b/public/textures/mcwroofs/gray_terracotta_lower_roof.png new file mode 100644 index 00000000..f73bde94 Binary files /dev/null and b/public/textures/mcwroofs/gray_terracotta_lower_roof.png differ diff --git a/public/textures/mcwroofs/gray_terracotta_roof.png b/public/textures/mcwroofs/gray_terracotta_roof.png new file mode 100644 index 00000000..9f34b88b Binary files /dev/null and b/public/textures/mcwroofs/gray_terracotta_roof.png differ diff --git a/public/textures/mcwroofs/gray_terracotta_steep_roof.png b/public/textures/mcwroofs/gray_terracotta_steep_roof.png new file mode 100644 index 00000000..06fb7646 Binary files /dev/null and b/public/textures/mcwroofs/gray_terracotta_steep_roof.png differ diff --git a/public/textures/mcwroofs/gray_terracotta_top_roof.png b/public/textures/mcwroofs/gray_terracotta_top_roof.png new file mode 100644 index 00000000..6436f8fd Binary files /dev/null and b/public/textures/mcwroofs/gray_terracotta_top_roof.png differ diff --git a/public/textures/mcwroofs/gray_terracotta_upper_lower_roof.png b/public/textures/mcwroofs/gray_terracotta_upper_lower_roof.png new file mode 100644 index 00000000..dabee335 Binary files /dev/null and b/public/textures/mcwroofs/gray_terracotta_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/gray_terracotta_upper_steep_roof.png b/public/textures/mcwroofs/gray_terracotta_upper_steep_roof.png new file mode 100644 index 00000000..f51eb916 Binary files /dev/null and b/public/textures/mcwroofs/gray_terracotta_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/gray_top_roof.png b/public/textures/mcwroofs/gray_top_roof.png new file mode 100644 index 00000000..59723ec6 Binary files /dev/null and b/public/textures/mcwroofs/gray_top_roof.png differ diff --git a/public/textures/mcwroofs/gray_upper_lower_roof.png b/public/textures/mcwroofs/gray_upper_lower_roof.png new file mode 100644 index 00000000..eff46ddc Binary files /dev/null and b/public/textures/mcwroofs/gray_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/gray_upper_steep_roof.png b/public/textures/mcwroofs/gray_upper_steep_roof.png new file mode 100644 index 00000000..43960773 Binary files /dev/null and b/public/textures/mcwroofs/gray_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/green_concrete_attic_roof.png b/public/textures/mcwroofs/green_concrete_attic_roof.png new file mode 100644 index 00000000..0f145640 Binary files /dev/null and b/public/textures/mcwroofs/green_concrete_attic_roof.png differ diff --git a/public/textures/mcwroofs/green_concrete_lower_roof.png b/public/textures/mcwroofs/green_concrete_lower_roof.png new file mode 100644 index 00000000..daab4967 Binary files /dev/null and b/public/textures/mcwroofs/green_concrete_lower_roof.png differ diff --git a/public/textures/mcwroofs/green_concrete_roof.png b/public/textures/mcwroofs/green_concrete_roof.png new file mode 100644 index 00000000..3693b0fd Binary files /dev/null and b/public/textures/mcwroofs/green_concrete_roof.png differ diff --git a/public/textures/mcwroofs/green_concrete_steep_roof.png b/public/textures/mcwroofs/green_concrete_steep_roof.png new file mode 100644 index 00000000..7a295176 Binary files /dev/null and b/public/textures/mcwroofs/green_concrete_steep_roof.png differ diff --git a/public/textures/mcwroofs/green_concrete_top_roof.png b/public/textures/mcwroofs/green_concrete_top_roof.png new file mode 100644 index 00000000..969ac378 Binary files /dev/null and b/public/textures/mcwroofs/green_concrete_top_roof.png differ diff --git a/public/textures/mcwroofs/green_concrete_upper_lower_roof.png b/public/textures/mcwroofs/green_concrete_upper_lower_roof.png new file mode 100644 index 00000000..a91cd97f Binary files /dev/null and b/public/textures/mcwroofs/green_concrete_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/green_concrete_upper_steep_roof.png b/public/textures/mcwroofs/green_concrete_upper_steep_roof.png new file mode 100644 index 00000000..e7732b6a Binary files /dev/null and b/public/textures/mcwroofs/green_concrete_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/green_striped_awning.png b/public/textures/mcwroofs/green_striped_awning.png new file mode 100644 index 00000000..4bc4c5a8 Binary files /dev/null and b/public/textures/mcwroofs/green_striped_awning.png differ diff --git a/public/textures/mcwroofs/green_terracotta_attic_roof.png b/public/textures/mcwroofs/green_terracotta_attic_roof.png new file mode 100644 index 00000000..f36d0d5b Binary files /dev/null and b/public/textures/mcwroofs/green_terracotta_attic_roof.png differ diff --git a/public/textures/mcwroofs/green_terracotta_lower_roof.png b/public/textures/mcwroofs/green_terracotta_lower_roof.png new file mode 100644 index 00000000..f7831232 Binary files /dev/null and b/public/textures/mcwroofs/green_terracotta_lower_roof.png differ diff --git a/public/textures/mcwroofs/green_terracotta_roof.png b/public/textures/mcwroofs/green_terracotta_roof.png new file mode 100644 index 00000000..559202d0 Binary files /dev/null and b/public/textures/mcwroofs/green_terracotta_roof.png differ diff --git a/public/textures/mcwroofs/green_terracotta_steep_roof.png b/public/textures/mcwroofs/green_terracotta_steep_roof.png new file mode 100644 index 00000000..f4a3ae50 Binary files /dev/null and b/public/textures/mcwroofs/green_terracotta_steep_roof.png differ diff --git a/public/textures/mcwroofs/green_terracotta_top_roof.png b/public/textures/mcwroofs/green_terracotta_top_roof.png new file mode 100644 index 00000000..6d6eaf9f Binary files /dev/null and b/public/textures/mcwroofs/green_terracotta_top_roof.png differ diff --git a/public/textures/mcwroofs/green_terracotta_upper_lower_roof.png b/public/textures/mcwroofs/green_terracotta_upper_lower_roof.png new file mode 100644 index 00000000..78df62b8 Binary files /dev/null and b/public/textures/mcwroofs/green_terracotta_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/green_terracotta_upper_steep_roof.png b/public/textures/mcwroofs/green_terracotta_upper_steep_roof.png new file mode 100644 index 00000000..43b34965 Binary files /dev/null and b/public/textures/mcwroofs/green_terracotta_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/gutter_base.png b/public/textures/mcwroofs/gutter_base.png new file mode 100644 index 00000000..2a5a79c8 Binary files /dev/null and b/public/textures/mcwroofs/gutter_base.png differ diff --git a/public/textures/mcwroofs/gutter_base_black.png b/public/textures/mcwroofs/gutter_base_black.png new file mode 100644 index 00000000..202b868a Binary files /dev/null and b/public/textures/mcwroofs/gutter_base_black.png differ diff --git a/public/textures/mcwroofs/gutter_base_blue.png b/public/textures/mcwroofs/gutter_base_blue.png new file mode 100644 index 00000000..658f4e33 Binary files /dev/null and b/public/textures/mcwroofs/gutter_base_blue.png differ diff --git a/public/textures/mcwroofs/gutter_base_brown.png b/public/textures/mcwroofs/gutter_base_brown.png new file mode 100644 index 00000000..114dcb2a Binary files /dev/null and b/public/textures/mcwroofs/gutter_base_brown.png differ diff --git a/public/textures/mcwroofs/gutter_base_cyan.png b/public/textures/mcwroofs/gutter_base_cyan.png new file mode 100644 index 00000000..4f8ff031 Binary files /dev/null and b/public/textures/mcwroofs/gutter_base_cyan.png differ diff --git a/public/textures/mcwroofs/gutter_base_gray.png b/public/textures/mcwroofs/gutter_base_gray.png new file mode 100644 index 00000000..4a3cddfc Binary files /dev/null and b/public/textures/mcwroofs/gutter_base_gray.png differ diff --git a/public/textures/mcwroofs/gutter_base_green.png b/public/textures/mcwroofs/gutter_base_green.png new file mode 100644 index 00000000..1938ebc3 Binary files /dev/null and b/public/textures/mcwroofs/gutter_base_green.png differ diff --git a/public/textures/mcwroofs/gutter_base_light_blue.png b/public/textures/mcwroofs/gutter_base_light_blue.png new file mode 100644 index 00000000..8b0df041 Binary files /dev/null and b/public/textures/mcwroofs/gutter_base_light_blue.png differ diff --git a/public/textures/mcwroofs/gutter_base_light_gray.png b/public/textures/mcwroofs/gutter_base_light_gray.png new file mode 100644 index 00000000..11168760 Binary files /dev/null and b/public/textures/mcwroofs/gutter_base_light_gray.png differ diff --git a/public/textures/mcwroofs/gutter_base_lime.png b/public/textures/mcwroofs/gutter_base_lime.png new file mode 100644 index 00000000..532dfda8 Binary files /dev/null and b/public/textures/mcwroofs/gutter_base_lime.png differ diff --git a/public/textures/mcwroofs/gutter_base_magenta.png b/public/textures/mcwroofs/gutter_base_magenta.png new file mode 100644 index 00000000..776912a2 Binary files /dev/null and b/public/textures/mcwroofs/gutter_base_magenta.png differ diff --git a/public/textures/mcwroofs/gutter_base_orange.png b/public/textures/mcwroofs/gutter_base_orange.png new file mode 100644 index 00000000..579673ff Binary files /dev/null and b/public/textures/mcwroofs/gutter_base_orange.png differ diff --git a/public/textures/mcwroofs/gutter_base_pink.png b/public/textures/mcwroofs/gutter_base_pink.png new file mode 100644 index 00000000..06051497 Binary files /dev/null and b/public/textures/mcwroofs/gutter_base_pink.png differ diff --git a/public/textures/mcwroofs/gutter_base_purple.png b/public/textures/mcwroofs/gutter_base_purple.png new file mode 100644 index 00000000..41ed653f Binary files /dev/null and b/public/textures/mcwroofs/gutter_base_purple.png differ diff --git a/public/textures/mcwroofs/gutter_base_red.png b/public/textures/mcwroofs/gutter_base_red.png new file mode 100644 index 00000000..833f74c4 Binary files /dev/null and b/public/textures/mcwroofs/gutter_base_red.png differ diff --git a/public/textures/mcwroofs/gutter_base_white.png b/public/textures/mcwroofs/gutter_base_white.png new file mode 100644 index 00000000..dab3e5bd Binary files /dev/null and b/public/textures/mcwroofs/gutter_base_white.png differ diff --git a/public/textures/mcwroofs/gutter_base_yellow.png b/public/textures/mcwroofs/gutter_base_yellow.png new file mode 100644 index 00000000..37f6bacc Binary files /dev/null and b/public/textures/mcwroofs/gutter_base_yellow.png differ diff --git a/public/textures/mcwroofs/gutter_middle.png b/public/textures/mcwroofs/gutter_middle.png new file mode 100644 index 00000000..4a2e9458 Binary files /dev/null and b/public/textures/mcwroofs/gutter_middle.png differ diff --git a/public/textures/mcwroofs/gutter_middle_black.png b/public/textures/mcwroofs/gutter_middle_black.png new file mode 100644 index 00000000..4cee229b Binary files /dev/null and b/public/textures/mcwroofs/gutter_middle_black.png differ diff --git a/public/textures/mcwroofs/gutter_middle_blue.png b/public/textures/mcwroofs/gutter_middle_blue.png new file mode 100644 index 00000000..b37600c8 Binary files /dev/null and b/public/textures/mcwroofs/gutter_middle_blue.png differ diff --git a/public/textures/mcwroofs/gutter_middle_brown.png b/public/textures/mcwroofs/gutter_middle_brown.png new file mode 100644 index 00000000..93f65200 Binary files /dev/null and b/public/textures/mcwroofs/gutter_middle_brown.png differ diff --git a/public/textures/mcwroofs/gutter_middle_cyan.png b/public/textures/mcwroofs/gutter_middle_cyan.png new file mode 100644 index 00000000..819f6811 Binary files /dev/null and b/public/textures/mcwroofs/gutter_middle_cyan.png differ diff --git a/public/textures/mcwroofs/gutter_middle_gray.png b/public/textures/mcwroofs/gutter_middle_gray.png new file mode 100644 index 00000000..5f0f820f Binary files /dev/null and b/public/textures/mcwroofs/gutter_middle_gray.png differ diff --git a/public/textures/mcwroofs/gutter_middle_green.png b/public/textures/mcwroofs/gutter_middle_green.png new file mode 100644 index 00000000..dd326233 Binary files /dev/null and b/public/textures/mcwroofs/gutter_middle_green.png differ diff --git a/public/textures/mcwroofs/gutter_middle_light_blue.png b/public/textures/mcwroofs/gutter_middle_light_blue.png new file mode 100644 index 00000000..0ad07b48 Binary files /dev/null and b/public/textures/mcwroofs/gutter_middle_light_blue.png differ diff --git a/public/textures/mcwroofs/gutter_middle_light_gray.png b/public/textures/mcwroofs/gutter_middle_light_gray.png new file mode 100644 index 00000000..47818af7 Binary files /dev/null and b/public/textures/mcwroofs/gutter_middle_light_gray.png differ diff --git a/public/textures/mcwroofs/gutter_middle_lime.png b/public/textures/mcwroofs/gutter_middle_lime.png new file mode 100644 index 00000000..bc5732e0 Binary files /dev/null and b/public/textures/mcwroofs/gutter_middle_lime.png differ diff --git a/public/textures/mcwroofs/gutter_middle_magenta.png b/public/textures/mcwroofs/gutter_middle_magenta.png new file mode 100644 index 00000000..a4983172 Binary files /dev/null and b/public/textures/mcwroofs/gutter_middle_magenta.png differ diff --git a/public/textures/mcwroofs/gutter_middle_orange.png b/public/textures/mcwroofs/gutter_middle_orange.png new file mode 100644 index 00000000..1a312428 Binary files /dev/null and b/public/textures/mcwroofs/gutter_middle_orange.png differ diff --git a/public/textures/mcwroofs/gutter_middle_pink.png b/public/textures/mcwroofs/gutter_middle_pink.png new file mode 100644 index 00000000..2e2ea49b Binary files /dev/null and b/public/textures/mcwroofs/gutter_middle_pink.png differ diff --git a/public/textures/mcwroofs/gutter_middle_purple.png b/public/textures/mcwroofs/gutter_middle_purple.png new file mode 100644 index 00000000..110e0a2d Binary files /dev/null and b/public/textures/mcwroofs/gutter_middle_purple.png differ diff --git a/public/textures/mcwroofs/gutter_middle_red.png b/public/textures/mcwroofs/gutter_middle_red.png new file mode 100644 index 00000000..a61a929f Binary files /dev/null and b/public/textures/mcwroofs/gutter_middle_red.png differ diff --git a/public/textures/mcwroofs/gutter_middle_white.png b/public/textures/mcwroofs/gutter_middle_white.png new file mode 100644 index 00000000..8d85d1f1 Binary files /dev/null and b/public/textures/mcwroofs/gutter_middle_white.png differ diff --git a/public/textures/mcwroofs/gutter_middle_yellow.png b/public/textures/mcwroofs/gutter_middle_yellow.png new file mode 100644 index 00000000..a22e8549 Binary files /dev/null and b/public/textures/mcwroofs/gutter_middle_yellow.png differ diff --git a/public/textures/mcwroofs/jungle_attic_roof.png b/public/textures/mcwroofs/jungle_attic_roof.png new file mode 100644 index 00000000..8d103ad2 Binary files /dev/null and b/public/textures/mcwroofs/jungle_attic_roof.png differ diff --git a/public/textures/mcwroofs/jungle_lower_roof.png b/public/textures/mcwroofs/jungle_lower_roof.png new file mode 100644 index 00000000..34285fa6 Binary files /dev/null and b/public/textures/mcwroofs/jungle_lower_roof.png differ diff --git a/public/textures/mcwroofs/jungle_planks_attic_roof.png b/public/textures/mcwroofs/jungle_planks_attic_roof.png new file mode 100644 index 00000000..8d65e19b Binary files /dev/null and b/public/textures/mcwroofs/jungle_planks_attic_roof.png differ diff --git a/public/textures/mcwroofs/jungle_planks_lower_roof.png b/public/textures/mcwroofs/jungle_planks_lower_roof.png new file mode 100644 index 00000000..62a860c1 Binary files /dev/null and b/public/textures/mcwroofs/jungle_planks_lower_roof.png differ diff --git a/public/textures/mcwroofs/jungle_planks_roof.png b/public/textures/mcwroofs/jungle_planks_roof.png new file mode 100644 index 00000000..5c1b1102 Binary files /dev/null and b/public/textures/mcwroofs/jungle_planks_roof.png differ diff --git a/public/textures/mcwroofs/jungle_planks_steep_roof.png b/public/textures/mcwroofs/jungle_planks_steep_roof.png new file mode 100644 index 00000000..a65d210e Binary files /dev/null and b/public/textures/mcwroofs/jungle_planks_steep_roof.png differ diff --git a/public/textures/mcwroofs/jungle_planks_top_roof.png b/public/textures/mcwroofs/jungle_planks_top_roof.png new file mode 100644 index 00000000..f53388af Binary files /dev/null and b/public/textures/mcwroofs/jungle_planks_top_roof.png differ diff --git a/public/textures/mcwroofs/jungle_planks_upper_lower_roof.png b/public/textures/mcwroofs/jungle_planks_upper_lower_roof.png new file mode 100644 index 00000000..77eaf613 Binary files /dev/null and b/public/textures/mcwroofs/jungle_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/jungle_planks_upper_steep_roof.png b/public/textures/mcwroofs/jungle_planks_upper_steep_roof.png new file mode 100644 index 00000000..dca6a52b Binary files /dev/null and b/public/textures/mcwroofs/jungle_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/jungle_roof.png b/public/textures/mcwroofs/jungle_roof.png new file mode 100644 index 00000000..e75b5f41 Binary files /dev/null and b/public/textures/mcwroofs/jungle_roof.png differ diff --git a/public/textures/mcwroofs/jungle_steep_roof.png b/public/textures/mcwroofs/jungle_steep_roof.png new file mode 100644 index 00000000..cf5fb142 Binary files /dev/null and b/public/textures/mcwroofs/jungle_steep_roof.png differ diff --git a/public/textures/mcwroofs/jungle_top_roof.png b/public/textures/mcwroofs/jungle_top_roof.png new file mode 100644 index 00000000..cf14ed85 Binary files /dev/null and b/public/textures/mcwroofs/jungle_top_roof.png differ diff --git a/public/textures/mcwroofs/jungle_upper_lower_roof.png b/public/textures/mcwroofs/jungle_upper_lower_roof.png new file mode 100644 index 00000000..9d585bbc Binary files /dev/null and b/public/textures/mcwroofs/jungle_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/jungle_upper_steep_roof.png b/public/textures/mcwroofs/jungle_upper_steep_roof.png new file mode 100644 index 00000000..cc161637 Binary files /dev/null and b/public/textures/mcwroofs/jungle_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/light_blue_concrete_attic_roof.png b/public/textures/mcwroofs/light_blue_concrete_attic_roof.png new file mode 100644 index 00000000..ddaa2d91 Binary files /dev/null and b/public/textures/mcwroofs/light_blue_concrete_attic_roof.png differ diff --git a/public/textures/mcwroofs/light_blue_concrete_lower_roof.png b/public/textures/mcwroofs/light_blue_concrete_lower_roof.png new file mode 100644 index 00000000..17b0567d Binary files /dev/null and b/public/textures/mcwroofs/light_blue_concrete_lower_roof.png differ diff --git a/public/textures/mcwroofs/light_blue_concrete_roof.png b/public/textures/mcwroofs/light_blue_concrete_roof.png new file mode 100644 index 00000000..eb46217d Binary files /dev/null and b/public/textures/mcwroofs/light_blue_concrete_roof.png differ diff --git a/public/textures/mcwroofs/light_blue_concrete_steep_roof.png b/public/textures/mcwroofs/light_blue_concrete_steep_roof.png new file mode 100644 index 00000000..3a6a7452 Binary files /dev/null and b/public/textures/mcwroofs/light_blue_concrete_steep_roof.png differ diff --git a/public/textures/mcwroofs/light_blue_concrete_top_roof.png b/public/textures/mcwroofs/light_blue_concrete_top_roof.png new file mode 100644 index 00000000..87529dbf Binary files /dev/null and b/public/textures/mcwroofs/light_blue_concrete_top_roof.png differ diff --git a/public/textures/mcwroofs/light_blue_concrete_upper_lower_roof.png b/public/textures/mcwroofs/light_blue_concrete_upper_lower_roof.png new file mode 100644 index 00000000..87f68c49 Binary files /dev/null and b/public/textures/mcwroofs/light_blue_concrete_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/light_blue_concrete_upper_steep_roof.png b/public/textures/mcwroofs/light_blue_concrete_upper_steep_roof.png new file mode 100644 index 00000000..2393b1b4 Binary files /dev/null and b/public/textures/mcwroofs/light_blue_concrete_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/light_blue_striped_awning.png b/public/textures/mcwroofs/light_blue_striped_awning.png new file mode 100644 index 00000000..ec97a823 Binary files /dev/null and b/public/textures/mcwroofs/light_blue_striped_awning.png differ diff --git a/public/textures/mcwroofs/light_blue_terracotta_attic_roof.png b/public/textures/mcwroofs/light_blue_terracotta_attic_roof.png new file mode 100644 index 00000000..9160bf60 Binary files /dev/null and b/public/textures/mcwroofs/light_blue_terracotta_attic_roof.png differ diff --git a/public/textures/mcwroofs/light_blue_terracotta_lower_roof.png b/public/textures/mcwroofs/light_blue_terracotta_lower_roof.png new file mode 100644 index 00000000..dfa128bf Binary files /dev/null and b/public/textures/mcwroofs/light_blue_terracotta_lower_roof.png differ diff --git a/public/textures/mcwroofs/light_blue_terracotta_roof.png b/public/textures/mcwroofs/light_blue_terracotta_roof.png new file mode 100644 index 00000000..af95c410 Binary files /dev/null and b/public/textures/mcwroofs/light_blue_terracotta_roof.png differ diff --git a/public/textures/mcwroofs/light_blue_terracotta_steep_roof.png b/public/textures/mcwroofs/light_blue_terracotta_steep_roof.png new file mode 100644 index 00000000..2a9a654b Binary files /dev/null and b/public/textures/mcwroofs/light_blue_terracotta_steep_roof.png differ diff --git a/public/textures/mcwroofs/light_blue_terracotta_top_roof.png b/public/textures/mcwroofs/light_blue_terracotta_top_roof.png new file mode 100644 index 00000000..016a9d6e Binary files /dev/null and b/public/textures/mcwroofs/light_blue_terracotta_top_roof.png differ diff --git a/public/textures/mcwroofs/light_blue_terracotta_upper_lower_roof.png b/public/textures/mcwroofs/light_blue_terracotta_upper_lower_roof.png new file mode 100644 index 00000000..a7374c88 Binary files /dev/null and b/public/textures/mcwroofs/light_blue_terracotta_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/light_blue_terracotta_upper_steep_roof.png b/public/textures/mcwroofs/light_blue_terracotta_upper_steep_roof.png new file mode 100644 index 00000000..2c1d7dd2 Binary files /dev/null and b/public/textures/mcwroofs/light_blue_terracotta_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/light_gray_attic_roof.png b/public/textures/mcwroofs/light_gray_attic_roof.png new file mode 100644 index 00000000..4473b842 Binary files /dev/null and b/public/textures/mcwroofs/light_gray_attic_roof.png differ diff --git a/public/textures/mcwroofs/light_gray_concrete_attic_roof.png b/public/textures/mcwroofs/light_gray_concrete_attic_roof.png new file mode 100644 index 00000000..fc203fb5 Binary files /dev/null and b/public/textures/mcwroofs/light_gray_concrete_attic_roof.png differ diff --git a/public/textures/mcwroofs/light_gray_concrete_lower_roof.png b/public/textures/mcwroofs/light_gray_concrete_lower_roof.png new file mode 100644 index 00000000..60f88d42 Binary files /dev/null and b/public/textures/mcwroofs/light_gray_concrete_lower_roof.png differ diff --git a/public/textures/mcwroofs/light_gray_concrete_roof.png b/public/textures/mcwroofs/light_gray_concrete_roof.png new file mode 100644 index 00000000..2fb7e024 Binary files /dev/null and b/public/textures/mcwroofs/light_gray_concrete_roof.png differ diff --git a/public/textures/mcwroofs/light_gray_concrete_steep_roof.png b/public/textures/mcwroofs/light_gray_concrete_steep_roof.png new file mode 100644 index 00000000..7f5f8575 Binary files /dev/null and b/public/textures/mcwroofs/light_gray_concrete_steep_roof.png differ diff --git a/public/textures/mcwroofs/light_gray_concrete_top_roof.png b/public/textures/mcwroofs/light_gray_concrete_top_roof.png new file mode 100644 index 00000000..2e2c18b7 Binary files /dev/null and b/public/textures/mcwroofs/light_gray_concrete_top_roof.png differ diff --git a/public/textures/mcwroofs/light_gray_concrete_upper_lower_roof.png b/public/textures/mcwroofs/light_gray_concrete_upper_lower_roof.png new file mode 100644 index 00000000..25d43f61 Binary files /dev/null and b/public/textures/mcwroofs/light_gray_concrete_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/light_gray_concrete_upper_steep_roof.png b/public/textures/mcwroofs/light_gray_concrete_upper_steep_roof.png new file mode 100644 index 00000000..e2f68858 Binary files /dev/null and b/public/textures/mcwroofs/light_gray_concrete_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/light_gray_lower_roof.png b/public/textures/mcwroofs/light_gray_lower_roof.png new file mode 100644 index 00000000..b3e1531f Binary files /dev/null and b/public/textures/mcwroofs/light_gray_lower_roof.png differ diff --git a/public/textures/mcwroofs/light_gray_roof.png b/public/textures/mcwroofs/light_gray_roof.png new file mode 100644 index 00000000..278f37ce Binary files /dev/null and b/public/textures/mcwroofs/light_gray_roof.png differ diff --git a/public/textures/mcwroofs/light_gray_roof_block.png b/public/textures/mcwroofs/light_gray_roof_block.png new file mode 100644 index 00000000..0352dfb9 Binary files /dev/null and b/public/textures/mcwroofs/light_gray_roof_block.png differ diff --git a/public/textures/mcwroofs/light_gray_roof_slab.png b/public/textures/mcwroofs/light_gray_roof_slab.png new file mode 100644 index 00000000..13a739ca Binary files /dev/null and b/public/textures/mcwroofs/light_gray_roof_slab.png differ diff --git a/public/textures/mcwroofs/light_gray_steep_roof.png b/public/textures/mcwroofs/light_gray_steep_roof.png new file mode 100644 index 00000000..5a3ed322 Binary files /dev/null and b/public/textures/mcwroofs/light_gray_steep_roof.png differ diff --git a/public/textures/mcwroofs/light_gray_striped_awning.png b/public/textures/mcwroofs/light_gray_striped_awning.png new file mode 100644 index 00000000..649953f3 Binary files /dev/null and b/public/textures/mcwroofs/light_gray_striped_awning.png differ diff --git a/public/textures/mcwroofs/light_gray_terracotta_attic_roof.png b/public/textures/mcwroofs/light_gray_terracotta_attic_roof.png new file mode 100644 index 00000000..bd668c1f Binary files /dev/null and b/public/textures/mcwroofs/light_gray_terracotta_attic_roof.png differ diff --git a/public/textures/mcwroofs/light_gray_terracotta_lower_roof.png b/public/textures/mcwroofs/light_gray_terracotta_lower_roof.png new file mode 100644 index 00000000..ad34b543 Binary files /dev/null and b/public/textures/mcwroofs/light_gray_terracotta_lower_roof.png differ diff --git a/public/textures/mcwroofs/light_gray_terracotta_roof.png b/public/textures/mcwroofs/light_gray_terracotta_roof.png new file mode 100644 index 00000000..efc9fa80 Binary files /dev/null and b/public/textures/mcwroofs/light_gray_terracotta_roof.png differ diff --git a/public/textures/mcwroofs/light_gray_terracotta_steep_roof.png b/public/textures/mcwroofs/light_gray_terracotta_steep_roof.png new file mode 100644 index 00000000..8a2e6c61 Binary files /dev/null and b/public/textures/mcwroofs/light_gray_terracotta_steep_roof.png differ diff --git a/public/textures/mcwroofs/light_gray_terracotta_top_roof.png b/public/textures/mcwroofs/light_gray_terracotta_top_roof.png new file mode 100644 index 00000000..f47aa30e Binary files /dev/null and b/public/textures/mcwroofs/light_gray_terracotta_top_roof.png differ diff --git a/public/textures/mcwroofs/light_gray_terracotta_upper_lower_roof.png b/public/textures/mcwroofs/light_gray_terracotta_upper_lower_roof.png new file mode 100644 index 00000000..5b57e5c8 Binary files /dev/null and b/public/textures/mcwroofs/light_gray_terracotta_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/light_gray_terracotta_upper_steep_roof.png b/public/textures/mcwroofs/light_gray_terracotta_upper_steep_roof.png new file mode 100644 index 00000000..2e95287a Binary files /dev/null and b/public/textures/mcwroofs/light_gray_terracotta_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/light_gray_top_roof.png b/public/textures/mcwroofs/light_gray_top_roof.png new file mode 100644 index 00000000..bc7219a2 Binary files /dev/null and b/public/textures/mcwroofs/light_gray_top_roof.png differ diff --git a/public/textures/mcwroofs/light_gray_upper_lower_roof.png b/public/textures/mcwroofs/light_gray_upper_lower_roof.png new file mode 100644 index 00000000..d88da284 Binary files /dev/null and b/public/textures/mcwroofs/light_gray_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/light_gray_upper_steep_roof.png b/public/textures/mcwroofs/light_gray_upper_steep_roof.png new file mode 100644 index 00000000..9d537520 Binary files /dev/null and b/public/textures/mcwroofs/light_gray_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/lime_concrete_attic_roof.png b/public/textures/mcwroofs/lime_concrete_attic_roof.png new file mode 100644 index 00000000..f4f00bb6 Binary files /dev/null and b/public/textures/mcwroofs/lime_concrete_attic_roof.png differ diff --git a/public/textures/mcwroofs/lime_concrete_lower_roof.png b/public/textures/mcwroofs/lime_concrete_lower_roof.png new file mode 100644 index 00000000..25985da9 Binary files /dev/null and b/public/textures/mcwroofs/lime_concrete_lower_roof.png differ diff --git a/public/textures/mcwroofs/lime_concrete_roof.png b/public/textures/mcwroofs/lime_concrete_roof.png new file mode 100644 index 00000000..960f5d96 Binary files /dev/null and b/public/textures/mcwroofs/lime_concrete_roof.png differ diff --git a/public/textures/mcwroofs/lime_concrete_steep_roof.png b/public/textures/mcwroofs/lime_concrete_steep_roof.png new file mode 100644 index 00000000..1d29b676 Binary files /dev/null and b/public/textures/mcwroofs/lime_concrete_steep_roof.png differ diff --git a/public/textures/mcwroofs/lime_concrete_top_roof.png b/public/textures/mcwroofs/lime_concrete_top_roof.png new file mode 100644 index 00000000..63113d49 Binary files /dev/null and b/public/textures/mcwroofs/lime_concrete_top_roof.png differ diff --git a/public/textures/mcwroofs/lime_concrete_upper_lower_roof.png b/public/textures/mcwroofs/lime_concrete_upper_lower_roof.png new file mode 100644 index 00000000..179711b1 Binary files /dev/null and b/public/textures/mcwroofs/lime_concrete_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/lime_concrete_upper_steep_roof.png b/public/textures/mcwroofs/lime_concrete_upper_steep_roof.png new file mode 100644 index 00000000..bceb2c12 Binary files /dev/null and b/public/textures/mcwroofs/lime_concrete_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/lime_striped_awning.png b/public/textures/mcwroofs/lime_striped_awning.png new file mode 100644 index 00000000..7da2afec Binary files /dev/null and b/public/textures/mcwroofs/lime_striped_awning.png differ diff --git a/public/textures/mcwroofs/lime_terracotta_attic_roof.png b/public/textures/mcwroofs/lime_terracotta_attic_roof.png new file mode 100644 index 00000000..ec17dfbb Binary files /dev/null and b/public/textures/mcwroofs/lime_terracotta_attic_roof.png differ diff --git a/public/textures/mcwroofs/lime_terracotta_lower_roof.png b/public/textures/mcwroofs/lime_terracotta_lower_roof.png new file mode 100644 index 00000000..0fc9beda Binary files /dev/null and b/public/textures/mcwroofs/lime_terracotta_lower_roof.png differ diff --git a/public/textures/mcwroofs/lime_terracotta_roof.png b/public/textures/mcwroofs/lime_terracotta_roof.png new file mode 100644 index 00000000..19db48ce Binary files /dev/null and b/public/textures/mcwroofs/lime_terracotta_roof.png differ diff --git a/public/textures/mcwroofs/lime_terracotta_steep_roof.png b/public/textures/mcwroofs/lime_terracotta_steep_roof.png new file mode 100644 index 00000000..ff930588 Binary files /dev/null and b/public/textures/mcwroofs/lime_terracotta_steep_roof.png differ diff --git a/public/textures/mcwroofs/lime_terracotta_top_roof.png b/public/textures/mcwroofs/lime_terracotta_top_roof.png new file mode 100644 index 00000000..054706dd Binary files /dev/null and b/public/textures/mcwroofs/lime_terracotta_top_roof.png differ diff --git a/public/textures/mcwroofs/lime_terracotta_upper_lower_roof.png b/public/textures/mcwroofs/lime_terracotta_upper_lower_roof.png new file mode 100644 index 00000000..b1583d15 Binary files /dev/null and b/public/textures/mcwroofs/lime_terracotta_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/lime_terracotta_upper_steep_roof.png b/public/textures/mcwroofs/lime_terracotta_upper_steep_roof.png new file mode 100644 index 00000000..46d42568 Binary files /dev/null and b/public/textures/mcwroofs/lime_terracotta_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/magenta_concrete_attic_roof.png b/public/textures/mcwroofs/magenta_concrete_attic_roof.png new file mode 100644 index 00000000..a17813d9 Binary files /dev/null and b/public/textures/mcwroofs/magenta_concrete_attic_roof.png differ diff --git a/public/textures/mcwroofs/magenta_concrete_lower_roof.png b/public/textures/mcwroofs/magenta_concrete_lower_roof.png new file mode 100644 index 00000000..63bca4c1 Binary files /dev/null and b/public/textures/mcwroofs/magenta_concrete_lower_roof.png differ diff --git a/public/textures/mcwroofs/magenta_concrete_roof.png b/public/textures/mcwroofs/magenta_concrete_roof.png new file mode 100644 index 00000000..8c7d154b Binary files /dev/null and b/public/textures/mcwroofs/magenta_concrete_roof.png differ diff --git a/public/textures/mcwroofs/magenta_concrete_steep_roof.png b/public/textures/mcwroofs/magenta_concrete_steep_roof.png new file mode 100644 index 00000000..a05410bf Binary files /dev/null and b/public/textures/mcwroofs/magenta_concrete_steep_roof.png differ diff --git a/public/textures/mcwroofs/magenta_concrete_top_roof.png b/public/textures/mcwroofs/magenta_concrete_top_roof.png new file mode 100644 index 00000000..4a955628 Binary files /dev/null and b/public/textures/mcwroofs/magenta_concrete_top_roof.png differ diff --git a/public/textures/mcwroofs/magenta_concrete_upper_lower_roof.png b/public/textures/mcwroofs/magenta_concrete_upper_lower_roof.png new file mode 100644 index 00000000..152f0e2d Binary files /dev/null and b/public/textures/mcwroofs/magenta_concrete_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/magenta_concrete_upper_steep_roof.png b/public/textures/mcwroofs/magenta_concrete_upper_steep_roof.png new file mode 100644 index 00000000..ca9da783 Binary files /dev/null and b/public/textures/mcwroofs/magenta_concrete_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/magenta_striped_awning.png b/public/textures/mcwroofs/magenta_striped_awning.png new file mode 100644 index 00000000..c71375c6 Binary files /dev/null and b/public/textures/mcwroofs/magenta_striped_awning.png differ diff --git a/public/textures/mcwroofs/magenta_terracotta_attic_roof.png b/public/textures/mcwroofs/magenta_terracotta_attic_roof.png new file mode 100644 index 00000000..6749691d Binary files /dev/null and b/public/textures/mcwroofs/magenta_terracotta_attic_roof.png differ diff --git a/public/textures/mcwroofs/magenta_terracotta_lower_roof.png b/public/textures/mcwroofs/magenta_terracotta_lower_roof.png new file mode 100644 index 00000000..d5a03caf Binary files /dev/null and b/public/textures/mcwroofs/magenta_terracotta_lower_roof.png differ diff --git a/public/textures/mcwroofs/magenta_terracotta_roof.png b/public/textures/mcwroofs/magenta_terracotta_roof.png new file mode 100644 index 00000000..d5df54c5 Binary files /dev/null and b/public/textures/mcwroofs/magenta_terracotta_roof.png differ diff --git a/public/textures/mcwroofs/magenta_terracotta_steep_roof.png b/public/textures/mcwroofs/magenta_terracotta_steep_roof.png new file mode 100644 index 00000000..b90424a3 Binary files /dev/null and b/public/textures/mcwroofs/magenta_terracotta_steep_roof.png differ diff --git a/public/textures/mcwroofs/magenta_terracotta_top_roof.png b/public/textures/mcwroofs/magenta_terracotta_top_roof.png new file mode 100644 index 00000000..4ad7a152 Binary files /dev/null and b/public/textures/mcwroofs/magenta_terracotta_top_roof.png differ diff --git a/public/textures/mcwroofs/magenta_terracotta_upper_lower_roof.png b/public/textures/mcwroofs/magenta_terracotta_upper_lower_roof.png new file mode 100644 index 00000000..0e6f82e6 Binary files /dev/null and b/public/textures/mcwroofs/magenta_terracotta_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/magenta_terracotta_upper_steep_roof.png b/public/textures/mcwroofs/magenta_terracotta_upper_steep_roof.png new file mode 100644 index 00000000..e10afd8d Binary files /dev/null and b/public/textures/mcwroofs/magenta_terracotta_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/mangrove_attic_roof.png b/public/textures/mcwroofs/mangrove_attic_roof.png new file mode 100644 index 00000000..68be815b Binary files /dev/null and b/public/textures/mcwroofs/mangrove_attic_roof.png differ diff --git a/public/textures/mcwroofs/mangrove_lower_roof.png b/public/textures/mcwroofs/mangrove_lower_roof.png new file mode 100644 index 00000000..d619ae86 Binary files /dev/null and b/public/textures/mcwroofs/mangrove_lower_roof.png differ diff --git a/public/textures/mcwroofs/mangrove_planks_attic_roof.png b/public/textures/mcwroofs/mangrove_planks_attic_roof.png new file mode 100644 index 00000000..d2ea0cab Binary files /dev/null and b/public/textures/mcwroofs/mangrove_planks_attic_roof.png differ diff --git a/public/textures/mcwroofs/mangrove_planks_lower_roof.png b/public/textures/mcwroofs/mangrove_planks_lower_roof.png new file mode 100644 index 00000000..34658ed5 Binary files /dev/null and b/public/textures/mcwroofs/mangrove_planks_lower_roof.png differ diff --git a/public/textures/mcwroofs/mangrove_planks_roof.png b/public/textures/mcwroofs/mangrove_planks_roof.png new file mode 100644 index 00000000..fa9c77c7 Binary files /dev/null and b/public/textures/mcwroofs/mangrove_planks_roof.png differ diff --git a/public/textures/mcwroofs/mangrove_planks_steep_roof.png b/public/textures/mcwroofs/mangrove_planks_steep_roof.png new file mode 100644 index 00000000..b2ed0609 Binary files /dev/null and b/public/textures/mcwroofs/mangrove_planks_steep_roof.png differ diff --git a/public/textures/mcwroofs/mangrove_planks_top_roof.png b/public/textures/mcwroofs/mangrove_planks_top_roof.png new file mode 100644 index 00000000..cdb61f07 Binary files /dev/null and b/public/textures/mcwroofs/mangrove_planks_top_roof.png differ diff --git a/public/textures/mcwroofs/mangrove_planks_upper_lower_roof.png b/public/textures/mcwroofs/mangrove_planks_upper_lower_roof.png new file mode 100644 index 00000000..d08275b4 Binary files /dev/null and b/public/textures/mcwroofs/mangrove_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/mangrove_planks_upper_steep_roof.png b/public/textures/mcwroofs/mangrove_planks_upper_steep_roof.png new file mode 100644 index 00000000..a9643035 Binary files /dev/null and b/public/textures/mcwroofs/mangrove_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/mangrove_roof.png b/public/textures/mcwroofs/mangrove_roof.png new file mode 100644 index 00000000..d48479c2 Binary files /dev/null and b/public/textures/mcwroofs/mangrove_roof.png differ diff --git a/public/textures/mcwroofs/mangrove_steep_roof.png b/public/textures/mcwroofs/mangrove_steep_roof.png new file mode 100644 index 00000000..38586f5a Binary files /dev/null and b/public/textures/mcwroofs/mangrove_steep_roof.png differ diff --git a/public/textures/mcwroofs/mangrove_top_roof.png b/public/textures/mcwroofs/mangrove_top_roof.png new file mode 100644 index 00000000..718779c2 Binary files /dev/null and b/public/textures/mcwroofs/mangrove_top_roof.png differ diff --git a/public/textures/mcwroofs/mangrove_upper_lower_roof.png b/public/textures/mcwroofs/mangrove_upper_lower_roof.png new file mode 100644 index 00000000..38aa96b8 Binary files /dev/null and b/public/textures/mcwroofs/mangrove_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/mangrove_upper_steep_roof.png b/public/textures/mcwroofs/mangrove_upper_steep_roof.png new file mode 100644 index 00000000..9bdf9640 Binary files /dev/null and b/public/textures/mcwroofs/mangrove_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/mud_brick_attic_roof.png b/public/textures/mcwroofs/mud_brick_attic_roof.png new file mode 100644 index 00000000..69ae7d41 Binary files /dev/null and b/public/textures/mcwroofs/mud_brick_attic_roof.png differ diff --git a/public/textures/mcwroofs/mud_brick_lower_roof.png b/public/textures/mcwroofs/mud_brick_lower_roof.png new file mode 100644 index 00000000..67777d83 Binary files /dev/null and b/public/textures/mcwroofs/mud_brick_lower_roof.png differ diff --git a/public/textures/mcwroofs/mud_brick_roof.png b/public/textures/mcwroofs/mud_brick_roof.png new file mode 100644 index 00000000..f6698059 Binary files /dev/null and b/public/textures/mcwroofs/mud_brick_roof.png differ diff --git a/public/textures/mcwroofs/mud_brick_steep_roof.png b/public/textures/mcwroofs/mud_brick_steep_roof.png new file mode 100644 index 00000000..eb28408a Binary files /dev/null and b/public/textures/mcwroofs/mud_brick_steep_roof.png differ diff --git a/public/textures/mcwroofs/mud_brick_top_roof.png b/public/textures/mcwroofs/mud_brick_top_roof.png new file mode 100644 index 00000000..bae09a30 Binary files /dev/null and b/public/textures/mcwroofs/mud_brick_top_roof.png differ diff --git a/public/textures/mcwroofs/mud_brick_upper_lower_roof.png b/public/textures/mcwroofs/mud_brick_upper_lower_roof.png new file mode 100644 index 00000000..63062247 Binary files /dev/null and b/public/textures/mcwroofs/mud_brick_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/mud_brick_upper_steep_roof.png b/public/textures/mcwroofs/mud_brick_upper_steep_roof.png new file mode 100644 index 00000000..89d2a2ec Binary files /dev/null and b/public/textures/mcwroofs/mud_brick_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/nether_bricks_attic_roof.png b/public/textures/mcwroofs/nether_bricks_attic_roof.png new file mode 100644 index 00000000..6cf88c9d Binary files /dev/null and b/public/textures/mcwroofs/nether_bricks_attic_roof.png differ diff --git a/public/textures/mcwroofs/nether_bricks_lower_roof.png b/public/textures/mcwroofs/nether_bricks_lower_roof.png new file mode 100644 index 00000000..cecb1f58 Binary files /dev/null and b/public/textures/mcwroofs/nether_bricks_lower_roof.png differ diff --git a/public/textures/mcwroofs/nether_bricks_roof.png b/public/textures/mcwroofs/nether_bricks_roof.png new file mode 100644 index 00000000..ead3f5f8 Binary files /dev/null and b/public/textures/mcwroofs/nether_bricks_roof.png differ diff --git a/public/textures/mcwroofs/nether_bricks_steep_roof.png b/public/textures/mcwroofs/nether_bricks_steep_roof.png new file mode 100644 index 00000000..90cd432c Binary files /dev/null and b/public/textures/mcwroofs/nether_bricks_steep_roof.png differ diff --git a/public/textures/mcwroofs/nether_bricks_top_roof.png b/public/textures/mcwroofs/nether_bricks_top_roof.png new file mode 100644 index 00000000..622563f4 Binary files /dev/null and b/public/textures/mcwroofs/nether_bricks_top_roof.png differ diff --git a/public/textures/mcwroofs/nether_bricks_upper_lower_roof.png b/public/textures/mcwroofs/nether_bricks_upper_lower_roof.png new file mode 100644 index 00000000..92bb9d70 Binary files /dev/null and b/public/textures/mcwroofs/nether_bricks_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/nether_bricks_upper_steep_roof.png b/public/textures/mcwroofs/nether_bricks_upper_steep_roof.png new file mode 100644 index 00000000..207b012c Binary files /dev/null and b/public/textures/mcwroofs/nether_bricks_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/oak_attic_roof.png b/public/textures/mcwroofs/oak_attic_roof.png new file mode 100644 index 00000000..d24fecca Binary files /dev/null and b/public/textures/mcwroofs/oak_attic_roof.png differ diff --git a/public/textures/mcwroofs/oak_lower_roof.png b/public/textures/mcwroofs/oak_lower_roof.png new file mode 100644 index 00000000..cac58102 Binary files /dev/null and b/public/textures/mcwroofs/oak_lower_roof.png differ diff --git a/public/textures/mcwroofs/oak_planks_attic_roof.png b/public/textures/mcwroofs/oak_planks_attic_roof.png new file mode 100644 index 00000000..12781093 Binary files /dev/null and b/public/textures/mcwroofs/oak_planks_attic_roof.png differ diff --git a/public/textures/mcwroofs/oak_planks_lower_roof.png b/public/textures/mcwroofs/oak_planks_lower_roof.png new file mode 100644 index 00000000..9797bdc7 Binary files /dev/null and b/public/textures/mcwroofs/oak_planks_lower_roof.png differ diff --git a/public/textures/mcwroofs/oak_planks_roof.png b/public/textures/mcwroofs/oak_planks_roof.png new file mode 100644 index 00000000..d09f5028 Binary files /dev/null and b/public/textures/mcwroofs/oak_planks_roof.png differ diff --git a/public/textures/mcwroofs/oak_planks_steep_roof.png b/public/textures/mcwroofs/oak_planks_steep_roof.png new file mode 100644 index 00000000..266ded75 Binary files /dev/null and b/public/textures/mcwroofs/oak_planks_steep_roof.png differ diff --git a/public/textures/mcwroofs/oak_planks_top_roof.png b/public/textures/mcwroofs/oak_planks_top_roof.png new file mode 100644 index 00000000..9801fd1d Binary files /dev/null and b/public/textures/mcwroofs/oak_planks_top_roof.png differ diff --git a/public/textures/mcwroofs/oak_planks_upper_lower_roof.png b/public/textures/mcwroofs/oak_planks_upper_lower_roof.png new file mode 100644 index 00000000..6f6126a1 Binary files /dev/null and b/public/textures/mcwroofs/oak_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/oak_planks_upper_steep_roof.png b/public/textures/mcwroofs/oak_planks_upper_steep_roof.png new file mode 100644 index 00000000..2ed03771 Binary files /dev/null and b/public/textures/mcwroofs/oak_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/oak_roof.png b/public/textures/mcwroofs/oak_roof.png new file mode 100644 index 00000000..647ebafc Binary files /dev/null and b/public/textures/mcwroofs/oak_roof.png differ diff --git a/public/textures/mcwroofs/oak_steep_roof.png b/public/textures/mcwroofs/oak_steep_roof.png new file mode 100644 index 00000000..34c2d3b7 Binary files /dev/null and b/public/textures/mcwroofs/oak_steep_roof.png differ diff --git a/public/textures/mcwroofs/oak_top_roof.png b/public/textures/mcwroofs/oak_top_roof.png new file mode 100644 index 00000000..071c3845 Binary files /dev/null and b/public/textures/mcwroofs/oak_top_roof.png differ diff --git a/public/textures/mcwroofs/oak_upper_lower_roof.png b/public/textures/mcwroofs/oak_upper_lower_roof.png new file mode 100644 index 00000000..9accb9f3 Binary files /dev/null and b/public/textures/mcwroofs/oak_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/oak_upper_steep_roof.png b/public/textures/mcwroofs/oak_upper_steep_roof.png new file mode 100644 index 00000000..9fb7cdc8 Binary files /dev/null and b/public/textures/mcwroofs/oak_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/orange_concrete_attic_roof.png b/public/textures/mcwroofs/orange_concrete_attic_roof.png new file mode 100644 index 00000000..532e97b1 Binary files /dev/null and b/public/textures/mcwroofs/orange_concrete_attic_roof.png differ diff --git a/public/textures/mcwroofs/orange_concrete_lower_roof.png b/public/textures/mcwroofs/orange_concrete_lower_roof.png new file mode 100644 index 00000000..51e03a12 Binary files /dev/null and b/public/textures/mcwroofs/orange_concrete_lower_roof.png differ diff --git a/public/textures/mcwroofs/orange_concrete_roof.png b/public/textures/mcwroofs/orange_concrete_roof.png new file mode 100644 index 00000000..4142fce7 Binary files /dev/null and b/public/textures/mcwroofs/orange_concrete_roof.png differ diff --git a/public/textures/mcwroofs/orange_concrete_steep_roof.png b/public/textures/mcwroofs/orange_concrete_steep_roof.png new file mode 100644 index 00000000..4c88bc66 Binary files /dev/null and b/public/textures/mcwroofs/orange_concrete_steep_roof.png differ diff --git a/public/textures/mcwroofs/orange_concrete_top_roof.png b/public/textures/mcwroofs/orange_concrete_top_roof.png new file mode 100644 index 00000000..3a450e2b Binary files /dev/null and b/public/textures/mcwroofs/orange_concrete_top_roof.png differ diff --git a/public/textures/mcwroofs/orange_concrete_upper_lower_roof.png b/public/textures/mcwroofs/orange_concrete_upper_lower_roof.png new file mode 100644 index 00000000..f7109209 Binary files /dev/null and b/public/textures/mcwroofs/orange_concrete_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/orange_concrete_upper_steep_roof.png b/public/textures/mcwroofs/orange_concrete_upper_steep_roof.png new file mode 100644 index 00000000..fca35da2 Binary files /dev/null and b/public/textures/mcwroofs/orange_concrete_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/orange_striped_awning.png b/public/textures/mcwroofs/orange_striped_awning.png new file mode 100644 index 00000000..d6615370 Binary files /dev/null and b/public/textures/mcwroofs/orange_striped_awning.png differ diff --git a/public/textures/mcwroofs/orange_terracotta_attic_roof.png b/public/textures/mcwroofs/orange_terracotta_attic_roof.png new file mode 100644 index 00000000..be09c724 Binary files /dev/null and b/public/textures/mcwroofs/orange_terracotta_attic_roof.png differ diff --git a/public/textures/mcwroofs/orange_terracotta_lower_roof.png b/public/textures/mcwroofs/orange_terracotta_lower_roof.png new file mode 100644 index 00000000..08016bb3 Binary files /dev/null and b/public/textures/mcwroofs/orange_terracotta_lower_roof.png differ diff --git a/public/textures/mcwroofs/orange_terracotta_roof.png b/public/textures/mcwroofs/orange_terracotta_roof.png new file mode 100644 index 00000000..9c1ff764 Binary files /dev/null and b/public/textures/mcwroofs/orange_terracotta_roof.png differ diff --git a/public/textures/mcwroofs/orange_terracotta_steep_roof.png b/public/textures/mcwroofs/orange_terracotta_steep_roof.png new file mode 100644 index 00000000..a487cdb4 Binary files /dev/null and b/public/textures/mcwroofs/orange_terracotta_steep_roof.png differ diff --git a/public/textures/mcwroofs/orange_terracotta_top_roof.png b/public/textures/mcwroofs/orange_terracotta_top_roof.png new file mode 100644 index 00000000..a968eaf9 Binary files /dev/null and b/public/textures/mcwroofs/orange_terracotta_top_roof.png differ diff --git a/public/textures/mcwroofs/orange_terracotta_upper_lower_roof.png b/public/textures/mcwroofs/orange_terracotta_upper_lower_roof.png new file mode 100644 index 00000000..71138213 Binary files /dev/null and b/public/textures/mcwroofs/orange_terracotta_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/orange_terracotta_upper_steep_roof.png b/public/textures/mcwroofs/orange_terracotta_upper_steep_roof.png new file mode 100644 index 00000000..ea1f7376 Binary files /dev/null and b/public/textures/mcwroofs/orange_terracotta_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/pink_concrete_attic_roof.png b/public/textures/mcwroofs/pink_concrete_attic_roof.png new file mode 100644 index 00000000..f284a4da Binary files /dev/null and b/public/textures/mcwroofs/pink_concrete_attic_roof.png differ diff --git a/public/textures/mcwroofs/pink_concrete_lower_roof.png b/public/textures/mcwroofs/pink_concrete_lower_roof.png new file mode 100644 index 00000000..444fdc3e Binary files /dev/null and b/public/textures/mcwroofs/pink_concrete_lower_roof.png differ diff --git a/public/textures/mcwroofs/pink_concrete_roof.png b/public/textures/mcwroofs/pink_concrete_roof.png new file mode 100644 index 00000000..08b1b89b Binary files /dev/null and b/public/textures/mcwroofs/pink_concrete_roof.png differ diff --git a/public/textures/mcwroofs/pink_concrete_steep_roof.png b/public/textures/mcwroofs/pink_concrete_steep_roof.png new file mode 100644 index 00000000..8771218c Binary files /dev/null and b/public/textures/mcwroofs/pink_concrete_steep_roof.png differ diff --git a/public/textures/mcwroofs/pink_concrete_top_roof.png b/public/textures/mcwroofs/pink_concrete_top_roof.png new file mode 100644 index 00000000..bffc1ef0 Binary files /dev/null and b/public/textures/mcwroofs/pink_concrete_top_roof.png differ diff --git a/public/textures/mcwroofs/pink_concrete_upper_lower_roof.png b/public/textures/mcwroofs/pink_concrete_upper_lower_roof.png new file mode 100644 index 00000000..2814ce45 Binary files /dev/null and b/public/textures/mcwroofs/pink_concrete_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/pink_concrete_upper_steep_roof.png b/public/textures/mcwroofs/pink_concrete_upper_steep_roof.png new file mode 100644 index 00000000..ddc39348 Binary files /dev/null and b/public/textures/mcwroofs/pink_concrete_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/pink_striped_awning.png b/public/textures/mcwroofs/pink_striped_awning.png new file mode 100644 index 00000000..2674acf2 Binary files /dev/null and b/public/textures/mcwroofs/pink_striped_awning.png differ diff --git a/public/textures/mcwroofs/pink_terracotta_attic_roof.png b/public/textures/mcwroofs/pink_terracotta_attic_roof.png new file mode 100644 index 00000000..8d044aa9 Binary files /dev/null and b/public/textures/mcwroofs/pink_terracotta_attic_roof.png differ diff --git a/public/textures/mcwroofs/pink_terracotta_lower_roof.png b/public/textures/mcwroofs/pink_terracotta_lower_roof.png new file mode 100644 index 00000000..8770dd8c Binary files /dev/null and b/public/textures/mcwroofs/pink_terracotta_lower_roof.png differ diff --git a/public/textures/mcwroofs/pink_terracotta_roof.png b/public/textures/mcwroofs/pink_terracotta_roof.png new file mode 100644 index 00000000..56167313 Binary files /dev/null and b/public/textures/mcwroofs/pink_terracotta_roof.png differ diff --git a/public/textures/mcwroofs/pink_terracotta_steep_roof.png b/public/textures/mcwroofs/pink_terracotta_steep_roof.png new file mode 100644 index 00000000..40d3c7c2 Binary files /dev/null and b/public/textures/mcwroofs/pink_terracotta_steep_roof.png differ diff --git a/public/textures/mcwroofs/pink_terracotta_top_roof.png b/public/textures/mcwroofs/pink_terracotta_top_roof.png new file mode 100644 index 00000000..a0e9c2e5 Binary files /dev/null and b/public/textures/mcwroofs/pink_terracotta_top_roof.png differ diff --git a/public/textures/mcwroofs/pink_terracotta_upper_lower_roof.png b/public/textures/mcwroofs/pink_terracotta_upper_lower_roof.png new file mode 100644 index 00000000..02fc0d47 Binary files /dev/null and b/public/textures/mcwroofs/pink_terracotta_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/pink_terracotta_upper_steep_roof.png b/public/textures/mcwroofs/pink_terracotta_upper_steep_roof.png new file mode 100644 index 00000000..afbd41c0 Binary files /dev/null and b/public/textures/mcwroofs/pink_terracotta_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/prismarine_brick_attic_roof.png b/public/textures/mcwroofs/prismarine_brick_attic_roof.png new file mode 100644 index 00000000..5a5db569 Binary files /dev/null and b/public/textures/mcwroofs/prismarine_brick_attic_roof.png differ diff --git a/public/textures/mcwroofs/prismarine_brick_lower_roof.png b/public/textures/mcwroofs/prismarine_brick_lower_roof.png new file mode 100644 index 00000000..c73e49d6 Binary files /dev/null and b/public/textures/mcwroofs/prismarine_brick_lower_roof.png differ diff --git a/public/textures/mcwroofs/prismarine_brick_roof.png b/public/textures/mcwroofs/prismarine_brick_roof.png new file mode 100644 index 00000000..e88ef304 Binary files /dev/null and b/public/textures/mcwroofs/prismarine_brick_roof.png differ diff --git a/public/textures/mcwroofs/prismarine_brick_steep_roof.png b/public/textures/mcwroofs/prismarine_brick_steep_roof.png new file mode 100644 index 00000000..4b0a77a5 Binary files /dev/null and b/public/textures/mcwroofs/prismarine_brick_steep_roof.png differ diff --git a/public/textures/mcwroofs/prismarine_brick_top_roof.png b/public/textures/mcwroofs/prismarine_brick_top_roof.png new file mode 100644 index 00000000..3b8566f7 Binary files /dev/null and b/public/textures/mcwroofs/prismarine_brick_top_roof.png differ diff --git a/public/textures/mcwroofs/prismarine_brick_upper_lower_roof.png b/public/textures/mcwroofs/prismarine_brick_upper_lower_roof.png new file mode 100644 index 00000000..9a75aaac Binary files /dev/null and b/public/textures/mcwroofs/prismarine_brick_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/prismarine_brick_upper_steep_roof.png b/public/textures/mcwroofs/prismarine_brick_upper_steep_roof.png new file mode 100644 index 00000000..8b50e4ff Binary files /dev/null and b/public/textures/mcwroofs/prismarine_brick_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/purple_concrete_attic_roof.png b/public/textures/mcwroofs/purple_concrete_attic_roof.png new file mode 100644 index 00000000..4aa74c5a Binary files /dev/null and b/public/textures/mcwroofs/purple_concrete_attic_roof.png differ diff --git a/public/textures/mcwroofs/purple_concrete_lower_roof.png b/public/textures/mcwroofs/purple_concrete_lower_roof.png new file mode 100644 index 00000000..b925ab64 Binary files /dev/null and b/public/textures/mcwroofs/purple_concrete_lower_roof.png differ diff --git a/public/textures/mcwroofs/purple_concrete_roof.png b/public/textures/mcwroofs/purple_concrete_roof.png new file mode 100644 index 00000000..14132a85 Binary files /dev/null and b/public/textures/mcwroofs/purple_concrete_roof.png differ diff --git a/public/textures/mcwroofs/purple_concrete_steep_roof.png b/public/textures/mcwroofs/purple_concrete_steep_roof.png new file mode 100644 index 00000000..868caa67 Binary files /dev/null and b/public/textures/mcwroofs/purple_concrete_steep_roof.png differ diff --git a/public/textures/mcwroofs/purple_concrete_top_roof.png b/public/textures/mcwroofs/purple_concrete_top_roof.png new file mode 100644 index 00000000..0035facd Binary files /dev/null and b/public/textures/mcwroofs/purple_concrete_top_roof.png differ diff --git a/public/textures/mcwroofs/purple_concrete_upper_lower_roof.png b/public/textures/mcwroofs/purple_concrete_upper_lower_roof.png new file mode 100644 index 00000000..cbb84fa6 Binary files /dev/null and b/public/textures/mcwroofs/purple_concrete_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/purple_concrete_upper_steep_roof.png b/public/textures/mcwroofs/purple_concrete_upper_steep_roof.png new file mode 100644 index 00000000..70683c0d Binary files /dev/null and b/public/textures/mcwroofs/purple_concrete_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/purple_striped_awning.png b/public/textures/mcwroofs/purple_striped_awning.png new file mode 100644 index 00000000..d97949b5 Binary files /dev/null and b/public/textures/mcwroofs/purple_striped_awning.png differ diff --git a/public/textures/mcwroofs/purple_terracotta_attic_roof.png b/public/textures/mcwroofs/purple_terracotta_attic_roof.png new file mode 100644 index 00000000..2fc746d9 Binary files /dev/null and b/public/textures/mcwroofs/purple_terracotta_attic_roof.png differ diff --git a/public/textures/mcwroofs/purple_terracotta_lower_roof.png b/public/textures/mcwroofs/purple_terracotta_lower_roof.png new file mode 100644 index 00000000..c9bd57c8 Binary files /dev/null and b/public/textures/mcwroofs/purple_terracotta_lower_roof.png differ diff --git a/public/textures/mcwroofs/purple_terracotta_roof.png b/public/textures/mcwroofs/purple_terracotta_roof.png new file mode 100644 index 00000000..806b99cf Binary files /dev/null and b/public/textures/mcwroofs/purple_terracotta_roof.png differ diff --git a/public/textures/mcwroofs/purple_terracotta_steep_roof.png b/public/textures/mcwroofs/purple_terracotta_steep_roof.png new file mode 100644 index 00000000..79fce8de Binary files /dev/null and b/public/textures/mcwroofs/purple_terracotta_steep_roof.png differ diff --git a/public/textures/mcwroofs/purple_terracotta_top_roof.png b/public/textures/mcwroofs/purple_terracotta_top_roof.png new file mode 100644 index 00000000..54b04b1a Binary files /dev/null and b/public/textures/mcwroofs/purple_terracotta_top_roof.png differ diff --git a/public/textures/mcwroofs/purple_terracotta_upper_lower_roof.png b/public/textures/mcwroofs/purple_terracotta_upper_lower_roof.png new file mode 100644 index 00000000..74c0dc5b Binary files /dev/null and b/public/textures/mcwroofs/purple_terracotta_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/purple_terracotta_upper_steep_roof.png b/public/textures/mcwroofs/purple_terracotta_upper_steep_roof.png new file mode 100644 index 00000000..d2a2365f Binary files /dev/null and b/public/textures/mcwroofs/purple_terracotta_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/rain_gutter.png b/public/textures/mcwroofs/rain_gutter.png new file mode 100644 index 00000000..09215067 Binary files /dev/null and b/public/textures/mcwroofs/rain_gutter.png differ diff --git a/public/textures/mcwroofs/red_concrete_attic_roof.png b/public/textures/mcwroofs/red_concrete_attic_roof.png new file mode 100644 index 00000000..0c6e7c61 Binary files /dev/null and b/public/textures/mcwroofs/red_concrete_attic_roof.png differ diff --git a/public/textures/mcwroofs/red_concrete_lower_roof.png b/public/textures/mcwroofs/red_concrete_lower_roof.png new file mode 100644 index 00000000..2013e5cb Binary files /dev/null and b/public/textures/mcwroofs/red_concrete_lower_roof.png differ diff --git a/public/textures/mcwroofs/red_concrete_roof.png b/public/textures/mcwroofs/red_concrete_roof.png new file mode 100644 index 00000000..18560252 Binary files /dev/null and b/public/textures/mcwroofs/red_concrete_roof.png differ diff --git a/public/textures/mcwroofs/red_concrete_steep_roof.png b/public/textures/mcwroofs/red_concrete_steep_roof.png new file mode 100644 index 00000000..31a08caf Binary files /dev/null and b/public/textures/mcwroofs/red_concrete_steep_roof.png differ diff --git a/public/textures/mcwroofs/red_concrete_top_roof.png b/public/textures/mcwroofs/red_concrete_top_roof.png new file mode 100644 index 00000000..252600d0 Binary files /dev/null and b/public/textures/mcwroofs/red_concrete_top_roof.png differ diff --git a/public/textures/mcwroofs/red_concrete_upper_lower_roof.png b/public/textures/mcwroofs/red_concrete_upper_lower_roof.png new file mode 100644 index 00000000..3e9bb7e3 Binary files /dev/null and b/public/textures/mcwroofs/red_concrete_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/red_concrete_upper_steep_roof.png b/public/textures/mcwroofs/red_concrete_upper_steep_roof.png new file mode 100644 index 00000000..2c728f5b Binary files /dev/null and b/public/textures/mcwroofs/red_concrete_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/red_nether_bricks_attic_roof.png b/public/textures/mcwroofs/red_nether_bricks_attic_roof.png new file mode 100644 index 00000000..21cdf06b Binary files /dev/null and b/public/textures/mcwroofs/red_nether_bricks_attic_roof.png differ diff --git a/public/textures/mcwroofs/red_nether_bricks_lower_roof.png b/public/textures/mcwroofs/red_nether_bricks_lower_roof.png new file mode 100644 index 00000000..15713c62 Binary files /dev/null and b/public/textures/mcwroofs/red_nether_bricks_lower_roof.png differ diff --git a/public/textures/mcwroofs/red_nether_bricks_roof.png b/public/textures/mcwroofs/red_nether_bricks_roof.png new file mode 100644 index 00000000..dd48732f Binary files /dev/null and b/public/textures/mcwroofs/red_nether_bricks_roof.png differ diff --git a/public/textures/mcwroofs/red_nether_bricks_steep_roof.png b/public/textures/mcwroofs/red_nether_bricks_steep_roof.png new file mode 100644 index 00000000..824d0b94 Binary files /dev/null and b/public/textures/mcwroofs/red_nether_bricks_steep_roof.png differ diff --git a/public/textures/mcwroofs/red_nether_bricks_top_roof.png b/public/textures/mcwroofs/red_nether_bricks_top_roof.png new file mode 100644 index 00000000..c410a5aa Binary files /dev/null and b/public/textures/mcwroofs/red_nether_bricks_top_roof.png differ diff --git a/public/textures/mcwroofs/red_nether_bricks_upper_lower_roof.png b/public/textures/mcwroofs/red_nether_bricks_upper_lower_roof.png new file mode 100644 index 00000000..170e50b1 Binary files /dev/null and b/public/textures/mcwroofs/red_nether_bricks_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/red_nether_bricks_upper_steep_roof.png b/public/textures/mcwroofs/red_nether_bricks_upper_steep_roof.png new file mode 100644 index 00000000..2fd97f6f Binary files /dev/null and b/public/textures/mcwroofs/red_nether_bricks_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/red_sandstone_attic_roof.png b/public/textures/mcwroofs/red_sandstone_attic_roof.png new file mode 100644 index 00000000..23221c36 Binary files /dev/null and b/public/textures/mcwroofs/red_sandstone_attic_roof.png differ diff --git a/public/textures/mcwroofs/red_sandstone_lower_roof.png b/public/textures/mcwroofs/red_sandstone_lower_roof.png new file mode 100644 index 00000000..fe1b07c6 Binary files /dev/null and b/public/textures/mcwroofs/red_sandstone_lower_roof.png differ diff --git a/public/textures/mcwroofs/red_sandstone_roof.png b/public/textures/mcwroofs/red_sandstone_roof.png new file mode 100644 index 00000000..dcea66c3 Binary files /dev/null and b/public/textures/mcwroofs/red_sandstone_roof.png differ diff --git a/public/textures/mcwroofs/red_sandstone_steep_roof.png b/public/textures/mcwroofs/red_sandstone_steep_roof.png new file mode 100644 index 00000000..88288231 Binary files /dev/null and b/public/textures/mcwroofs/red_sandstone_steep_roof.png differ diff --git a/public/textures/mcwroofs/red_sandstone_top_roof.png b/public/textures/mcwroofs/red_sandstone_top_roof.png new file mode 100644 index 00000000..d2e1deee Binary files /dev/null and b/public/textures/mcwroofs/red_sandstone_top_roof.png differ diff --git a/public/textures/mcwroofs/red_sandstone_upper_lower_roof.png b/public/textures/mcwroofs/red_sandstone_upper_lower_roof.png new file mode 100644 index 00000000..0b44b155 Binary files /dev/null and b/public/textures/mcwroofs/red_sandstone_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/red_sandstone_upper_steep_roof.png b/public/textures/mcwroofs/red_sandstone_upper_steep_roof.png new file mode 100644 index 00000000..8349d283 Binary files /dev/null and b/public/textures/mcwroofs/red_sandstone_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/red_striped_awning.png b/public/textures/mcwroofs/red_striped_awning.png new file mode 100644 index 00000000..7a3a1e6d Binary files /dev/null and b/public/textures/mcwroofs/red_striped_awning.png differ diff --git a/public/textures/mcwroofs/red_terracotta_attic_roof.png b/public/textures/mcwroofs/red_terracotta_attic_roof.png new file mode 100644 index 00000000..ddfe811b Binary files /dev/null and b/public/textures/mcwroofs/red_terracotta_attic_roof.png differ diff --git a/public/textures/mcwroofs/red_terracotta_lower_roof.png b/public/textures/mcwroofs/red_terracotta_lower_roof.png new file mode 100644 index 00000000..3f4efcfb Binary files /dev/null and b/public/textures/mcwroofs/red_terracotta_lower_roof.png differ diff --git a/public/textures/mcwroofs/red_terracotta_roof.png b/public/textures/mcwroofs/red_terracotta_roof.png new file mode 100644 index 00000000..d186e424 Binary files /dev/null and b/public/textures/mcwroofs/red_terracotta_roof.png differ diff --git a/public/textures/mcwroofs/red_terracotta_steep_roof.png b/public/textures/mcwroofs/red_terracotta_steep_roof.png new file mode 100644 index 00000000..6946c9e4 Binary files /dev/null and b/public/textures/mcwroofs/red_terracotta_steep_roof.png differ diff --git a/public/textures/mcwroofs/red_terracotta_top_roof.png b/public/textures/mcwroofs/red_terracotta_top_roof.png new file mode 100644 index 00000000..151cddfe Binary files /dev/null and b/public/textures/mcwroofs/red_terracotta_top_roof.png differ diff --git a/public/textures/mcwroofs/red_terracotta_upper_lower_roof.png b/public/textures/mcwroofs/red_terracotta_upper_lower_roof.png new file mode 100644 index 00000000..128e7780 Binary files /dev/null and b/public/textures/mcwroofs/red_terracotta_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/red_terracotta_upper_steep_roof.png b/public/textures/mcwroofs/red_terracotta_upper_steep_roof.png new file mode 100644 index 00000000..942e6a00 Binary files /dev/null and b/public/textures/mcwroofs/red_terracotta_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/roofing_hammer.png b/public/textures/mcwroofs/roofing_hammer.png new file mode 100644 index 00000000..ee387432 Binary files /dev/null and b/public/textures/mcwroofs/roofing_hammer.png differ diff --git a/public/textures/mcwroofs/sandstone_attic_roof.png b/public/textures/mcwroofs/sandstone_attic_roof.png new file mode 100644 index 00000000..12f0a53b Binary files /dev/null and b/public/textures/mcwroofs/sandstone_attic_roof.png differ diff --git a/public/textures/mcwroofs/sandstone_lower_roof.png b/public/textures/mcwroofs/sandstone_lower_roof.png new file mode 100644 index 00000000..bf9f79f8 Binary files /dev/null and b/public/textures/mcwroofs/sandstone_lower_roof.png differ diff --git a/public/textures/mcwroofs/sandstone_roof.png b/public/textures/mcwroofs/sandstone_roof.png new file mode 100644 index 00000000..22974652 Binary files /dev/null and b/public/textures/mcwroofs/sandstone_roof.png differ diff --git a/public/textures/mcwroofs/sandstone_steep_roof.png b/public/textures/mcwroofs/sandstone_steep_roof.png new file mode 100644 index 00000000..9bcd9c5b Binary files /dev/null and b/public/textures/mcwroofs/sandstone_steep_roof.png differ diff --git a/public/textures/mcwroofs/sandstone_top_roof.png b/public/textures/mcwroofs/sandstone_top_roof.png new file mode 100644 index 00000000..f66559a2 Binary files /dev/null and b/public/textures/mcwroofs/sandstone_top_roof.png differ diff --git a/public/textures/mcwroofs/sandstone_upper_lower_roof.png b/public/textures/mcwroofs/sandstone_upper_lower_roof.png new file mode 100644 index 00000000..8ae1b03f Binary files /dev/null and b/public/textures/mcwroofs/sandstone_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/sandstone_upper_steep_roof.png b/public/textures/mcwroofs/sandstone_upper_steep_roof.png new file mode 100644 index 00000000..a3e0fbb5 Binary files /dev/null and b/public/textures/mcwroofs/sandstone_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/spruce_attic_roof.png b/public/textures/mcwroofs/spruce_attic_roof.png new file mode 100644 index 00000000..239ad3fd Binary files /dev/null and b/public/textures/mcwroofs/spruce_attic_roof.png differ diff --git a/public/textures/mcwroofs/spruce_lower_roof.png b/public/textures/mcwroofs/spruce_lower_roof.png new file mode 100644 index 00000000..629ee514 Binary files /dev/null and b/public/textures/mcwroofs/spruce_lower_roof.png differ diff --git a/public/textures/mcwroofs/spruce_planks_attic_roof.png b/public/textures/mcwroofs/spruce_planks_attic_roof.png new file mode 100644 index 00000000..67441c19 Binary files /dev/null and b/public/textures/mcwroofs/spruce_planks_attic_roof.png differ diff --git a/public/textures/mcwroofs/spruce_planks_lower_roof.png b/public/textures/mcwroofs/spruce_planks_lower_roof.png new file mode 100644 index 00000000..8ca22d55 Binary files /dev/null and b/public/textures/mcwroofs/spruce_planks_lower_roof.png differ diff --git a/public/textures/mcwroofs/spruce_planks_roof.png b/public/textures/mcwroofs/spruce_planks_roof.png new file mode 100644 index 00000000..1d2ae7a2 Binary files /dev/null and b/public/textures/mcwroofs/spruce_planks_roof.png differ diff --git a/public/textures/mcwroofs/spruce_planks_steep_roof.png b/public/textures/mcwroofs/spruce_planks_steep_roof.png new file mode 100644 index 00000000..447fba51 Binary files /dev/null and b/public/textures/mcwroofs/spruce_planks_steep_roof.png differ diff --git a/public/textures/mcwroofs/spruce_planks_top_roof.png b/public/textures/mcwroofs/spruce_planks_top_roof.png new file mode 100644 index 00000000..5e555519 Binary files /dev/null and b/public/textures/mcwroofs/spruce_planks_top_roof.png differ diff --git a/public/textures/mcwroofs/spruce_planks_upper_lower_roof.png b/public/textures/mcwroofs/spruce_planks_upper_lower_roof.png new file mode 100644 index 00000000..b548217c Binary files /dev/null and b/public/textures/mcwroofs/spruce_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/spruce_planks_upper_steep_roof.png b/public/textures/mcwroofs/spruce_planks_upper_steep_roof.png new file mode 100644 index 00000000..c07467f0 Binary files /dev/null and b/public/textures/mcwroofs/spruce_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/spruce_roof.png b/public/textures/mcwroofs/spruce_roof.png new file mode 100644 index 00000000..c6010cc8 Binary files /dev/null and b/public/textures/mcwroofs/spruce_roof.png differ diff --git a/public/textures/mcwroofs/spruce_steep_roof.png b/public/textures/mcwroofs/spruce_steep_roof.png new file mode 100644 index 00000000..c5117649 Binary files /dev/null and b/public/textures/mcwroofs/spruce_steep_roof.png differ diff --git a/public/textures/mcwroofs/spruce_top_roof.png b/public/textures/mcwroofs/spruce_top_roof.png new file mode 100644 index 00000000..da074e23 Binary files /dev/null and b/public/textures/mcwroofs/spruce_top_roof.png differ diff --git a/public/textures/mcwroofs/spruce_upper_lower_roof.png b/public/textures/mcwroofs/spruce_upper_lower_roof.png new file mode 100644 index 00000000..01dd3cb3 Binary files /dev/null and b/public/textures/mcwroofs/spruce_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/spruce_upper_steep_roof.png b/public/textures/mcwroofs/spruce_upper_steep_roof.png new file mode 100644 index 00000000..1b566a23 Binary files /dev/null and b/public/textures/mcwroofs/spruce_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/stone_attic_roof.png b/public/textures/mcwroofs/stone_attic_roof.png new file mode 100644 index 00000000..e7c3f7d4 Binary files /dev/null and b/public/textures/mcwroofs/stone_attic_roof.png differ diff --git a/public/textures/mcwroofs/stone_bricks_attic_roof.png b/public/textures/mcwroofs/stone_bricks_attic_roof.png new file mode 100644 index 00000000..8cdf7019 Binary files /dev/null and b/public/textures/mcwroofs/stone_bricks_attic_roof.png differ diff --git a/public/textures/mcwroofs/stone_bricks_lower_roof.png b/public/textures/mcwroofs/stone_bricks_lower_roof.png new file mode 100644 index 00000000..2aa349b7 Binary files /dev/null and b/public/textures/mcwroofs/stone_bricks_lower_roof.png differ diff --git a/public/textures/mcwroofs/stone_bricks_roof.png b/public/textures/mcwroofs/stone_bricks_roof.png new file mode 100644 index 00000000..501dd41d Binary files /dev/null and b/public/textures/mcwroofs/stone_bricks_roof.png differ diff --git a/public/textures/mcwroofs/stone_bricks_steep_roof.png b/public/textures/mcwroofs/stone_bricks_steep_roof.png new file mode 100644 index 00000000..b8d9f1dc Binary files /dev/null and b/public/textures/mcwroofs/stone_bricks_steep_roof.png differ diff --git a/public/textures/mcwroofs/stone_bricks_top_roof.png b/public/textures/mcwroofs/stone_bricks_top_roof.png new file mode 100644 index 00000000..54b30119 Binary files /dev/null and b/public/textures/mcwroofs/stone_bricks_top_roof.png differ diff --git a/public/textures/mcwroofs/stone_bricks_upper_lower_roof.png b/public/textures/mcwroofs/stone_bricks_upper_lower_roof.png new file mode 100644 index 00000000..c9c66a22 Binary files /dev/null and b/public/textures/mcwroofs/stone_bricks_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/stone_bricks_upper_steep_roof.png b/public/textures/mcwroofs/stone_bricks_upper_steep_roof.png new file mode 100644 index 00000000..7e1e48a3 Binary files /dev/null and b/public/textures/mcwroofs/stone_bricks_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/stone_lower_roof.png b/public/textures/mcwroofs/stone_lower_roof.png new file mode 100644 index 00000000..0d0154aa Binary files /dev/null and b/public/textures/mcwroofs/stone_lower_roof.png differ diff --git a/public/textures/mcwroofs/stone_roof.png b/public/textures/mcwroofs/stone_roof.png new file mode 100644 index 00000000..c35e2131 Binary files /dev/null and b/public/textures/mcwroofs/stone_roof.png differ diff --git a/public/textures/mcwroofs/stone_steep_roof.png b/public/textures/mcwroofs/stone_steep_roof.png new file mode 100644 index 00000000..106e5ff6 Binary files /dev/null and b/public/textures/mcwroofs/stone_steep_roof.png differ diff --git a/public/textures/mcwroofs/stone_top_roof.png b/public/textures/mcwroofs/stone_top_roof.png new file mode 100644 index 00000000..e55d42ae Binary files /dev/null and b/public/textures/mcwroofs/stone_top_roof.png differ diff --git a/public/textures/mcwroofs/stone_upper_lower_roof.png b/public/textures/mcwroofs/stone_upper_lower_roof.png new file mode 100644 index 00000000..d61a4343 Binary files /dev/null and b/public/textures/mcwroofs/stone_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/stone_upper_steep_roof.png b/public/textures/mcwroofs/stone_upper_steep_roof.png new file mode 100644 index 00000000..65997b18 Binary files /dev/null and b/public/textures/mcwroofs/stone_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/thatch_attic_roof.png b/public/textures/mcwroofs/thatch_attic_roof.png new file mode 100644 index 00000000..394cc3d4 Binary files /dev/null and b/public/textures/mcwroofs/thatch_attic_roof.png differ diff --git a/public/textures/mcwroofs/thatch_lower_roof.png b/public/textures/mcwroofs/thatch_lower_roof.png new file mode 100644 index 00000000..92d5605b Binary files /dev/null and b/public/textures/mcwroofs/thatch_lower_roof.png differ diff --git a/public/textures/mcwroofs/thatch_roof.png b/public/textures/mcwroofs/thatch_roof.png new file mode 100644 index 00000000..0a85eb90 Binary files /dev/null and b/public/textures/mcwroofs/thatch_roof.png differ diff --git a/public/textures/mcwroofs/thatch_steep_roof.png b/public/textures/mcwroofs/thatch_steep_roof.png new file mode 100644 index 00000000..c9529ef8 Binary files /dev/null and b/public/textures/mcwroofs/thatch_steep_roof.png differ diff --git a/public/textures/mcwroofs/thatch_top_roof.png b/public/textures/mcwroofs/thatch_top_roof.png new file mode 100644 index 00000000..559fec46 Binary files /dev/null and b/public/textures/mcwroofs/thatch_top_roof.png differ diff --git a/public/textures/mcwroofs/thatch_upper_lower_roof.png b/public/textures/mcwroofs/thatch_upper_lower_roof.png new file mode 100644 index 00000000..88f6740c Binary files /dev/null and b/public/textures/mcwroofs/thatch_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/thatch_upper_steep_roof.png b/public/textures/mcwroofs/thatch_upper_steep_roof.png new file mode 100644 index 00000000..e6de8c30 Binary files /dev/null and b/public/textures/mcwroofs/thatch_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/warped_attic_roof.png b/public/textures/mcwroofs/warped_attic_roof.png new file mode 100644 index 00000000..5d1a5e86 Binary files /dev/null and b/public/textures/mcwroofs/warped_attic_roof.png differ diff --git a/public/textures/mcwroofs/warped_lower_roof.png b/public/textures/mcwroofs/warped_lower_roof.png new file mode 100644 index 00000000..48b8ab80 Binary files /dev/null and b/public/textures/mcwroofs/warped_lower_roof.png differ diff --git a/public/textures/mcwroofs/warped_planks_attic_roof.png b/public/textures/mcwroofs/warped_planks_attic_roof.png new file mode 100644 index 00000000..d9f5244c Binary files /dev/null and b/public/textures/mcwroofs/warped_planks_attic_roof.png differ diff --git a/public/textures/mcwroofs/warped_planks_lower_roof.png b/public/textures/mcwroofs/warped_planks_lower_roof.png new file mode 100644 index 00000000..4dea3277 Binary files /dev/null and b/public/textures/mcwroofs/warped_planks_lower_roof.png differ diff --git a/public/textures/mcwroofs/warped_planks_roof.png b/public/textures/mcwroofs/warped_planks_roof.png new file mode 100644 index 00000000..fc2c79e9 Binary files /dev/null and b/public/textures/mcwroofs/warped_planks_roof.png differ diff --git a/public/textures/mcwroofs/warped_planks_steep_roof.png b/public/textures/mcwroofs/warped_planks_steep_roof.png new file mode 100644 index 00000000..34bbeb48 Binary files /dev/null and b/public/textures/mcwroofs/warped_planks_steep_roof.png differ diff --git a/public/textures/mcwroofs/warped_planks_top_roof.png b/public/textures/mcwroofs/warped_planks_top_roof.png new file mode 100644 index 00000000..1f3ddf2d Binary files /dev/null and b/public/textures/mcwroofs/warped_planks_top_roof.png differ diff --git a/public/textures/mcwroofs/warped_planks_upper_lower_roof.png b/public/textures/mcwroofs/warped_planks_upper_lower_roof.png new file mode 100644 index 00000000..989dbc3a Binary files /dev/null and b/public/textures/mcwroofs/warped_planks_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/warped_planks_upper_steep_roof.png b/public/textures/mcwroofs/warped_planks_upper_steep_roof.png new file mode 100644 index 00000000..9e832c38 Binary files /dev/null and b/public/textures/mcwroofs/warped_planks_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/warped_roof.png b/public/textures/mcwroofs/warped_roof.png new file mode 100644 index 00000000..f07c7abe Binary files /dev/null and b/public/textures/mcwroofs/warped_roof.png differ diff --git a/public/textures/mcwroofs/warped_steep_roof.png b/public/textures/mcwroofs/warped_steep_roof.png new file mode 100644 index 00000000..ad9166c7 Binary files /dev/null and b/public/textures/mcwroofs/warped_steep_roof.png differ diff --git a/public/textures/mcwroofs/warped_top_roof.png b/public/textures/mcwroofs/warped_top_roof.png new file mode 100644 index 00000000..00c59d7e Binary files /dev/null and b/public/textures/mcwroofs/warped_top_roof.png differ diff --git a/public/textures/mcwroofs/warped_upper_lower_roof.png b/public/textures/mcwroofs/warped_upper_lower_roof.png new file mode 100644 index 00000000..36b17598 Binary files /dev/null and b/public/textures/mcwroofs/warped_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/warped_upper_steep_roof.png b/public/textures/mcwroofs/warped_upper_steep_roof.png new file mode 100644 index 00000000..468f61c5 Binary files /dev/null and b/public/textures/mcwroofs/warped_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/white_attic_roof.png b/public/textures/mcwroofs/white_attic_roof.png new file mode 100644 index 00000000..1a33e16b Binary files /dev/null and b/public/textures/mcwroofs/white_attic_roof.png differ diff --git a/public/textures/mcwroofs/white_concrete_attic_roof.png b/public/textures/mcwroofs/white_concrete_attic_roof.png new file mode 100644 index 00000000..298181c8 Binary files /dev/null and b/public/textures/mcwroofs/white_concrete_attic_roof.png differ diff --git a/public/textures/mcwroofs/white_concrete_lower_roof.png b/public/textures/mcwroofs/white_concrete_lower_roof.png new file mode 100644 index 00000000..3a085a15 Binary files /dev/null and b/public/textures/mcwroofs/white_concrete_lower_roof.png differ diff --git a/public/textures/mcwroofs/white_concrete_roof.png b/public/textures/mcwroofs/white_concrete_roof.png new file mode 100644 index 00000000..6679fed7 Binary files /dev/null and b/public/textures/mcwroofs/white_concrete_roof.png differ diff --git a/public/textures/mcwroofs/white_concrete_steep_roof.png b/public/textures/mcwroofs/white_concrete_steep_roof.png new file mode 100644 index 00000000..9321aaae Binary files /dev/null and b/public/textures/mcwroofs/white_concrete_steep_roof.png differ diff --git a/public/textures/mcwroofs/white_concrete_top_roof.png b/public/textures/mcwroofs/white_concrete_top_roof.png new file mode 100644 index 00000000..9ebb83fc Binary files /dev/null and b/public/textures/mcwroofs/white_concrete_top_roof.png differ diff --git a/public/textures/mcwroofs/white_concrete_upper_lower_roof.png b/public/textures/mcwroofs/white_concrete_upper_lower_roof.png new file mode 100644 index 00000000..91488f8f Binary files /dev/null and b/public/textures/mcwroofs/white_concrete_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/white_concrete_upper_steep_roof.png b/public/textures/mcwroofs/white_concrete_upper_steep_roof.png new file mode 100644 index 00000000..86b50405 Binary files /dev/null and b/public/textures/mcwroofs/white_concrete_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/white_lower_roof.png b/public/textures/mcwroofs/white_lower_roof.png new file mode 100644 index 00000000..3dc25f43 Binary files /dev/null and b/public/textures/mcwroofs/white_lower_roof.png differ diff --git a/public/textures/mcwroofs/white_roof.png b/public/textures/mcwroofs/white_roof.png new file mode 100644 index 00000000..10811538 Binary files /dev/null and b/public/textures/mcwroofs/white_roof.png differ diff --git a/public/textures/mcwroofs/white_roof_block.png b/public/textures/mcwroofs/white_roof_block.png new file mode 100644 index 00000000..bfe17a1f Binary files /dev/null and b/public/textures/mcwroofs/white_roof_block.png differ diff --git a/public/textures/mcwroofs/white_roof_slab.png b/public/textures/mcwroofs/white_roof_slab.png new file mode 100644 index 00000000..58e54abc Binary files /dev/null and b/public/textures/mcwroofs/white_roof_slab.png differ diff --git a/public/textures/mcwroofs/white_steep_roof.png b/public/textures/mcwroofs/white_steep_roof.png new file mode 100644 index 00000000..99285a40 Binary files /dev/null and b/public/textures/mcwroofs/white_steep_roof.png differ diff --git a/public/textures/mcwroofs/white_terracotta_attic_roof.png b/public/textures/mcwroofs/white_terracotta_attic_roof.png new file mode 100644 index 00000000..1d85b53a Binary files /dev/null and b/public/textures/mcwroofs/white_terracotta_attic_roof.png differ diff --git a/public/textures/mcwroofs/white_terracotta_lower_roof.png b/public/textures/mcwroofs/white_terracotta_lower_roof.png new file mode 100644 index 00000000..eb0638f5 Binary files /dev/null and b/public/textures/mcwroofs/white_terracotta_lower_roof.png differ diff --git a/public/textures/mcwroofs/white_terracotta_roof.png b/public/textures/mcwroofs/white_terracotta_roof.png new file mode 100644 index 00000000..f1c378e9 Binary files /dev/null and b/public/textures/mcwroofs/white_terracotta_roof.png differ diff --git a/public/textures/mcwroofs/white_terracotta_steep_roof.png b/public/textures/mcwroofs/white_terracotta_steep_roof.png new file mode 100644 index 00000000..efbb2511 Binary files /dev/null and b/public/textures/mcwroofs/white_terracotta_steep_roof.png differ diff --git a/public/textures/mcwroofs/white_terracotta_top_roof.png b/public/textures/mcwroofs/white_terracotta_top_roof.png new file mode 100644 index 00000000..80f5461b Binary files /dev/null and b/public/textures/mcwroofs/white_terracotta_top_roof.png differ diff --git a/public/textures/mcwroofs/white_terracotta_upper_lower_roof.png b/public/textures/mcwroofs/white_terracotta_upper_lower_roof.png new file mode 100644 index 00000000..330fb6a9 Binary files /dev/null and b/public/textures/mcwroofs/white_terracotta_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/white_terracotta_upper_steep_roof.png b/public/textures/mcwroofs/white_terracotta_upper_steep_roof.png new file mode 100644 index 00000000..24acbb03 Binary files /dev/null and b/public/textures/mcwroofs/white_terracotta_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/white_top_roof.png b/public/textures/mcwroofs/white_top_roof.png new file mode 100644 index 00000000..4fe6c1ea Binary files /dev/null and b/public/textures/mcwroofs/white_top_roof.png differ diff --git a/public/textures/mcwroofs/white_upper_lower_roof.png b/public/textures/mcwroofs/white_upper_lower_roof.png new file mode 100644 index 00000000..1747a988 Binary files /dev/null and b/public/textures/mcwroofs/white_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/white_upper_steep_roof.png b/public/textures/mcwroofs/white_upper_steep_roof.png new file mode 100644 index 00000000..c7b3d224 Binary files /dev/null and b/public/textures/mcwroofs/white_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/yellow_concrete_attic_roof.png b/public/textures/mcwroofs/yellow_concrete_attic_roof.png new file mode 100644 index 00000000..d61ee968 Binary files /dev/null and b/public/textures/mcwroofs/yellow_concrete_attic_roof.png differ diff --git a/public/textures/mcwroofs/yellow_concrete_lower_roof.png b/public/textures/mcwroofs/yellow_concrete_lower_roof.png new file mode 100644 index 00000000..3223c6ea Binary files /dev/null and b/public/textures/mcwroofs/yellow_concrete_lower_roof.png differ diff --git a/public/textures/mcwroofs/yellow_concrete_roof.png b/public/textures/mcwroofs/yellow_concrete_roof.png new file mode 100644 index 00000000..a64d8442 Binary files /dev/null and b/public/textures/mcwroofs/yellow_concrete_roof.png differ diff --git a/public/textures/mcwroofs/yellow_concrete_steep_roof.png b/public/textures/mcwroofs/yellow_concrete_steep_roof.png new file mode 100644 index 00000000..8ccdb013 Binary files /dev/null and b/public/textures/mcwroofs/yellow_concrete_steep_roof.png differ diff --git a/public/textures/mcwroofs/yellow_concrete_top_roof.png b/public/textures/mcwroofs/yellow_concrete_top_roof.png new file mode 100644 index 00000000..aec5520a Binary files /dev/null and b/public/textures/mcwroofs/yellow_concrete_top_roof.png differ diff --git a/public/textures/mcwroofs/yellow_concrete_upper_lower_roof.png b/public/textures/mcwroofs/yellow_concrete_upper_lower_roof.png new file mode 100644 index 00000000..d179588a Binary files /dev/null and b/public/textures/mcwroofs/yellow_concrete_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/yellow_concrete_upper_steep_roof.png b/public/textures/mcwroofs/yellow_concrete_upper_steep_roof.png new file mode 100644 index 00000000..fbaf159e Binary files /dev/null and b/public/textures/mcwroofs/yellow_concrete_upper_steep_roof.png differ diff --git a/public/textures/mcwroofs/yellow_striped_awning.png b/public/textures/mcwroofs/yellow_striped_awning.png new file mode 100644 index 00000000..ff925512 Binary files /dev/null and b/public/textures/mcwroofs/yellow_striped_awning.png differ diff --git a/public/textures/mcwroofs/yellow_terracotta_attic_roof.png b/public/textures/mcwroofs/yellow_terracotta_attic_roof.png new file mode 100644 index 00000000..2639c389 Binary files /dev/null and b/public/textures/mcwroofs/yellow_terracotta_attic_roof.png differ diff --git a/public/textures/mcwroofs/yellow_terracotta_lower_roof.png b/public/textures/mcwroofs/yellow_terracotta_lower_roof.png new file mode 100644 index 00000000..877963f8 Binary files /dev/null and b/public/textures/mcwroofs/yellow_terracotta_lower_roof.png differ diff --git a/public/textures/mcwroofs/yellow_terracotta_roof.png b/public/textures/mcwroofs/yellow_terracotta_roof.png new file mode 100644 index 00000000..f42d7a36 Binary files /dev/null and b/public/textures/mcwroofs/yellow_terracotta_roof.png differ diff --git a/public/textures/mcwroofs/yellow_terracotta_steep_roof.png b/public/textures/mcwroofs/yellow_terracotta_steep_roof.png new file mode 100644 index 00000000..478294d3 Binary files /dev/null and b/public/textures/mcwroofs/yellow_terracotta_steep_roof.png differ diff --git a/public/textures/mcwroofs/yellow_terracotta_top_roof.png b/public/textures/mcwroofs/yellow_terracotta_top_roof.png new file mode 100644 index 00000000..f2e7a7bb Binary files /dev/null and b/public/textures/mcwroofs/yellow_terracotta_top_roof.png differ diff --git a/public/textures/mcwroofs/yellow_terracotta_upper_lower_roof.png b/public/textures/mcwroofs/yellow_terracotta_upper_lower_roof.png new file mode 100644 index 00000000..421fbb05 Binary files /dev/null and b/public/textures/mcwroofs/yellow_terracotta_upper_lower_roof.png differ diff --git a/public/textures/mcwroofs/yellow_terracotta_upper_steep_roof.png b/public/textures/mcwroofs/yellow_terracotta_upper_steep_roof.png new file mode 100644 index 00000000..a7836583 Binary files /dev/null and b/public/textures/mcwroofs/yellow_terracotta_upper_steep_roof.png differ diff --git a/public/textures/mcwtrpdoors/acacia_bamboo_trapdoor.png b/public/textures/mcwtrpdoors/acacia_bamboo_trapdoor.png new file mode 100644 index 00000000..fb11d7ef Binary files /dev/null and b/public/textures/mcwtrpdoors/acacia_bamboo_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/acacia_bark_trapdoor.png b/public/textures/mcwtrpdoors/acacia_bark_trapdoor.png new file mode 100644 index 00000000..93af5d8e Binary files /dev/null and b/public/textures/mcwtrpdoors/acacia_bark_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/acacia_barn_trapdoor.png b/public/textures/mcwtrpdoors/acacia_barn_trapdoor.png new file mode 100644 index 00000000..0db32f44 Binary files /dev/null and b/public/textures/mcwtrpdoors/acacia_barn_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/acacia_barred_trapdoor.png b/public/textures/mcwtrpdoors/acacia_barred_trapdoor.png new file mode 100644 index 00000000..1c217523 Binary files /dev/null and b/public/textures/mcwtrpdoors/acacia_barred_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/acacia_barrel_trapdoor.png b/public/textures/mcwtrpdoors/acacia_barrel_trapdoor.png new file mode 100644 index 00000000..2132bfb0 Binary files /dev/null and b/public/textures/mcwtrpdoors/acacia_barrel_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/acacia_beach_trapdoor.png b/public/textures/mcwtrpdoors/acacia_beach_trapdoor.png new file mode 100644 index 00000000..2737b286 Binary files /dev/null and b/public/textures/mcwtrpdoors/acacia_beach_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/acacia_blossom_trapdoor.png b/public/textures/mcwtrpdoors/acacia_blossom_trapdoor.png new file mode 100644 index 00000000..f6f34797 Binary files /dev/null and b/public/textures/mcwtrpdoors/acacia_blossom_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/acacia_classic_trapdoor.png b/public/textures/mcwtrpdoors/acacia_classic_trapdoor.png new file mode 100644 index 00000000..83eaeac7 Binary files /dev/null and b/public/textures/mcwtrpdoors/acacia_classic_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/acacia_cottage_trapdoor.png b/public/textures/mcwtrpdoors/acacia_cottage_trapdoor.png new file mode 100644 index 00000000..1a81233b Binary files /dev/null and b/public/textures/mcwtrpdoors/acacia_cottage_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/acacia_four_panel_trapdoor.png b/public/textures/mcwtrpdoors/acacia_four_panel_trapdoor.png new file mode 100644 index 00000000..17318197 Binary files /dev/null and b/public/textures/mcwtrpdoors/acacia_four_panel_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/acacia_glass_trapdoor.png b/public/textures/mcwtrpdoors/acacia_glass_trapdoor.png new file mode 100644 index 00000000..17ea2b33 Binary files /dev/null and b/public/textures/mcwtrpdoors/acacia_glass_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/acacia_mystic_trapdoor.png b/public/textures/mcwtrpdoors/acacia_mystic_trapdoor.png new file mode 100644 index 00000000..4b8a5811 Binary files /dev/null and b/public/textures/mcwtrpdoors/acacia_mystic_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/acacia_paper_trapdoor.png b/public/textures/mcwtrpdoors/acacia_paper_trapdoor.png new file mode 100644 index 00000000..80435d0a Binary files /dev/null and b/public/textures/mcwtrpdoors/acacia_paper_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/acacia_ranch_trapdoor.png b/public/textures/mcwtrpdoors/acacia_ranch_trapdoor.png new file mode 100644 index 00000000..88429d3d Binary files /dev/null and b/public/textures/mcwtrpdoors/acacia_ranch_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/acacia_swamp_trapdoor.png b/public/textures/mcwtrpdoors/acacia_swamp_trapdoor.png new file mode 100644 index 00000000..d9918a41 Binary files /dev/null and b/public/textures/mcwtrpdoors/acacia_swamp_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/acacia_whispering_trapdoor.png b/public/textures/mcwtrpdoors/acacia_whispering_trapdoor.png new file mode 100644 index 00000000..85543af7 Binary files /dev/null and b/public/textures/mcwtrpdoors/acacia_whispering_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/bamboo_bark_trapdoor.png b/public/textures/mcwtrpdoors/bamboo_bark_trapdoor.png new file mode 100644 index 00000000..8c8016ba Binary files /dev/null and b/public/textures/mcwtrpdoors/bamboo_bark_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/bamboo_barn_trapdoor.png b/public/textures/mcwtrpdoors/bamboo_barn_trapdoor.png new file mode 100644 index 00000000..f242bb35 Binary files /dev/null and b/public/textures/mcwtrpdoors/bamboo_barn_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/bamboo_barred_trapdoor.png b/public/textures/mcwtrpdoors/bamboo_barred_trapdoor.png new file mode 100644 index 00000000..bda127be Binary files /dev/null and b/public/textures/mcwtrpdoors/bamboo_barred_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/bamboo_barrel_trapdoor.png b/public/textures/mcwtrpdoors/bamboo_barrel_trapdoor.png new file mode 100644 index 00000000..19859926 Binary files /dev/null and b/public/textures/mcwtrpdoors/bamboo_barrel_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/bamboo_beach_trapdoor.png b/public/textures/mcwtrpdoors/bamboo_beach_trapdoor.png new file mode 100644 index 00000000..c9b93502 Binary files /dev/null and b/public/textures/mcwtrpdoors/bamboo_beach_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/bamboo_blossom_trapdoor.png b/public/textures/mcwtrpdoors/bamboo_blossom_trapdoor.png new file mode 100644 index 00000000..8d880e25 Binary files /dev/null and b/public/textures/mcwtrpdoors/bamboo_blossom_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/bamboo_classic_trapdoor.png b/public/textures/mcwtrpdoors/bamboo_classic_trapdoor.png new file mode 100644 index 00000000..8965fc64 Binary files /dev/null and b/public/textures/mcwtrpdoors/bamboo_classic_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/bamboo_cottage_trapdoor.png b/public/textures/mcwtrpdoors/bamboo_cottage_trapdoor.png new file mode 100644 index 00000000..b0f28e86 Binary files /dev/null and b/public/textures/mcwtrpdoors/bamboo_cottage_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/bamboo_four_panel_trapdoor.png b/public/textures/mcwtrpdoors/bamboo_four_panel_trapdoor.png new file mode 100644 index 00000000..520ccac9 Binary files /dev/null and b/public/textures/mcwtrpdoors/bamboo_four_panel_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/bamboo_glass_trapdoor.png b/public/textures/mcwtrpdoors/bamboo_glass_trapdoor.png new file mode 100644 index 00000000..60d0f4bf Binary files /dev/null and b/public/textures/mcwtrpdoors/bamboo_glass_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/bamboo_mystic_trapdoor.png b/public/textures/mcwtrpdoors/bamboo_mystic_trapdoor.png new file mode 100644 index 00000000..ef3ffab1 Binary files /dev/null and b/public/textures/mcwtrpdoors/bamboo_mystic_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/bamboo_paper_trapdoor.png b/public/textures/mcwtrpdoors/bamboo_paper_trapdoor.png new file mode 100644 index 00000000..b94b59b0 Binary files /dev/null and b/public/textures/mcwtrpdoors/bamboo_paper_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/bamboo_swamp_trapdoor.png b/public/textures/mcwtrpdoors/bamboo_swamp_trapdoor.png new file mode 100644 index 00000000..944bf4ba Binary files /dev/null and b/public/textures/mcwtrpdoors/bamboo_swamp_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/bamboo_trapdoor.png b/public/textures/mcwtrpdoors/bamboo_trapdoor.png new file mode 100644 index 00000000..3d5bc959 Binary files /dev/null and b/public/textures/mcwtrpdoors/bamboo_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/bamboo_tropical_trapdoor.png b/public/textures/mcwtrpdoors/bamboo_tropical_trapdoor.png new file mode 100644 index 00000000..c538d87c Binary files /dev/null and b/public/textures/mcwtrpdoors/bamboo_tropical_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/bamboo_whispering_trapdoor.png b/public/textures/mcwtrpdoors/bamboo_whispering_trapdoor.png new file mode 100644 index 00000000..71086a17 Binary files /dev/null and b/public/textures/mcwtrpdoors/bamboo_whispering_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/birch_bamboo_trapdoor.png b/public/textures/mcwtrpdoors/birch_bamboo_trapdoor.png new file mode 100644 index 00000000..3765e43f Binary files /dev/null and b/public/textures/mcwtrpdoors/birch_bamboo_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/birch_bark_trapdoor.png b/public/textures/mcwtrpdoors/birch_bark_trapdoor.png new file mode 100644 index 00000000..cb0584bb Binary files /dev/null and b/public/textures/mcwtrpdoors/birch_bark_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/birch_barn_trapdoor.png b/public/textures/mcwtrpdoors/birch_barn_trapdoor.png new file mode 100644 index 00000000..508e91a9 Binary files /dev/null and b/public/textures/mcwtrpdoors/birch_barn_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/birch_barred_trapdoor.png b/public/textures/mcwtrpdoors/birch_barred_trapdoor.png new file mode 100644 index 00000000..16b00125 Binary files /dev/null and b/public/textures/mcwtrpdoors/birch_barred_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/birch_barrel_trapdoor.png b/public/textures/mcwtrpdoors/birch_barrel_trapdoor.png new file mode 100644 index 00000000..3549023b Binary files /dev/null and b/public/textures/mcwtrpdoors/birch_barrel_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/birch_beach_trapdoor.png b/public/textures/mcwtrpdoors/birch_beach_trapdoor.png new file mode 100644 index 00000000..1b332233 Binary files /dev/null and b/public/textures/mcwtrpdoors/birch_beach_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/birch_blossom_trapdoor.png b/public/textures/mcwtrpdoors/birch_blossom_trapdoor.png new file mode 100644 index 00000000..7ab63be4 Binary files /dev/null and b/public/textures/mcwtrpdoors/birch_blossom_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/birch_classic_trapdoor.png b/public/textures/mcwtrpdoors/birch_classic_trapdoor.png new file mode 100644 index 00000000..e8617d77 Binary files /dev/null and b/public/textures/mcwtrpdoors/birch_classic_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/birch_cottage_trapdoor.png b/public/textures/mcwtrpdoors/birch_cottage_trapdoor.png new file mode 100644 index 00000000..cf5af409 Binary files /dev/null and b/public/textures/mcwtrpdoors/birch_cottage_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/birch_four_panel_trapdoor.png b/public/textures/mcwtrpdoors/birch_four_panel_trapdoor.png new file mode 100644 index 00000000..83f87e1b Binary files /dev/null and b/public/textures/mcwtrpdoors/birch_four_panel_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/birch_glass_trapdoor.png b/public/textures/mcwtrpdoors/birch_glass_trapdoor.png new file mode 100644 index 00000000..5370a430 Binary files /dev/null and b/public/textures/mcwtrpdoors/birch_glass_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/birch_mystic_trapdoor.png b/public/textures/mcwtrpdoors/birch_mystic_trapdoor.png new file mode 100644 index 00000000..7beeee2e Binary files /dev/null and b/public/textures/mcwtrpdoors/birch_mystic_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/birch_ranch_trapdoor.png b/public/textures/mcwtrpdoors/birch_ranch_trapdoor.png new file mode 100644 index 00000000..55d9edb4 Binary files /dev/null and b/public/textures/mcwtrpdoors/birch_ranch_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/birch_swamp_trapdoor.png b/public/textures/mcwtrpdoors/birch_swamp_trapdoor.png new file mode 100644 index 00000000..972892bc Binary files /dev/null and b/public/textures/mcwtrpdoors/birch_swamp_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/birch_tropical_trapdoor.png b/public/textures/mcwtrpdoors/birch_tropical_trapdoor.png new file mode 100644 index 00000000..530ac2a4 Binary files /dev/null and b/public/textures/mcwtrpdoors/birch_tropical_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/birch_whispering_trapdoor.png b/public/textures/mcwtrpdoors/birch_whispering_trapdoor.png new file mode 100644 index 00000000..53d62e1c Binary files /dev/null and b/public/textures/mcwtrpdoors/birch_whispering_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/cherry_bamboo_trapdoor.png b/public/textures/mcwtrpdoors/cherry_bamboo_trapdoor.png new file mode 100644 index 00000000..a0a8e883 Binary files /dev/null and b/public/textures/mcwtrpdoors/cherry_bamboo_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/cherry_bark_trapdoor.png b/public/textures/mcwtrpdoors/cherry_bark_trapdoor.png new file mode 100644 index 00000000..fbfe236c Binary files /dev/null and b/public/textures/mcwtrpdoors/cherry_bark_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/cherry_barn_trapdoor.png b/public/textures/mcwtrpdoors/cherry_barn_trapdoor.png new file mode 100644 index 00000000..f9438d34 Binary files /dev/null and b/public/textures/mcwtrpdoors/cherry_barn_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/cherry_barred_trapdoor.png b/public/textures/mcwtrpdoors/cherry_barred_trapdoor.png new file mode 100644 index 00000000..6232a7cf Binary files /dev/null and b/public/textures/mcwtrpdoors/cherry_barred_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/cherry_barrel_trapdoor.png b/public/textures/mcwtrpdoors/cherry_barrel_trapdoor.png new file mode 100644 index 00000000..dafb6a5b Binary files /dev/null and b/public/textures/mcwtrpdoors/cherry_barrel_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/cherry_beach_trapdoor.png b/public/textures/mcwtrpdoors/cherry_beach_trapdoor.png new file mode 100644 index 00000000..9c9ecdaf Binary files /dev/null and b/public/textures/mcwtrpdoors/cherry_beach_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/cherry_classic_trapdoor.png b/public/textures/mcwtrpdoors/cherry_classic_trapdoor.png new file mode 100644 index 00000000..253d1198 Binary files /dev/null and b/public/textures/mcwtrpdoors/cherry_classic_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/cherry_cottage_trapdoor.png b/public/textures/mcwtrpdoors/cherry_cottage_trapdoor.png new file mode 100644 index 00000000..c3222053 Binary files /dev/null and b/public/textures/mcwtrpdoors/cherry_cottage_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/cherry_four_panel_trapdoor.png b/public/textures/mcwtrpdoors/cherry_four_panel_trapdoor.png new file mode 100644 index 00000000..2602036e Binary files /dev/null and b/public/textures/mcwtrpdoors/cherry_four_panel_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/cherry_glass_trapdoor.png b/public/textures/mcwtrpdoors/cherry_glass_trapdoor.png new file mode 100644 index 00000000..e3b64a17 Binary files /dev/null and b/public/textures/mcwtrpdoors/cherry_glass_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/cherry_mystic_trapdoor.png b/public/textures/mcwtrpdoors/cherry_mystic_trapdoor.png new file mode 100644 index 00000000..4be0c970 Binary files /dev/null and b/public/textures/mcwtrpdoors/cherry_mystic_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/cherry_paper_trapdoor.png b/public/textures/mcwtrpdoors/cherry_paper_trapdoor.png new file mode 100644 index 00000000..5d035e22 Binary files /dev/null and b/public/textures/mcwtrpdoors/cherry_paper_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/cherry_ranch_trapdoor.png b/public/textures/mcwtrpdoors/cherry_ranch_trapdoor.png new file mode 100644 index 00000000..c067dbf4 Binary files /dev/null and b/public/textures/mcwtrpdoors/cherry_ranch_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/cherry_swamp_trapdoor.png b/public/textures/mcwtrpdoors/cherry_swamp_trapdoor.png new file mode 100644 index 00000000..6c1a05ce Binary files /dev/null and b/public/textures/mcwtrpdoors/cherry_swamp_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/cherry_tropical_trapdoor.png b/public/textures/mcwtrpdoors/cherry_tropical_trapdoor.png new file mode 100644 index 00000000..fc97f264 Binary files /dev/null and b/public/textures/mcwtrpdoors/cherry_tropical_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/cherry_whispering_trapdoor.png b/public/textures/mcwtrpdoors/cherry_whispering_trapdoor.png new file mode 100644 index 00000000..76b9706e Binary files /dev/null and b/public/textures/mcwtrpdoors/cherry_whispering_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/crimson_bamboo_trapdoor.png b/public/textures/mcwtrpdoors/crimson_bamboo_trapdoor.png new file mode 100644 index 00000000..aa7565fc Binary files /dev/null and b/public/textures/mcwtrpdoors/crimson_bamboo_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/crimson_bark_trapdoor.png b/public/textures/mcwtrpdoors/crimson_bark_trapdoor.png new file mode 100644 index 00000000..f95ac335 Binary files /dev/null and b/public/textures/mcwtrpdoors/crimson_bark_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/crimson_barn_trapdoor.png b/public/textures/mcwtrpdoors/crimson_barn_trapdoor.png new file mode 100644 index 00000000..c63d812f Binary files /dev/null and b/public/textures/mcwtrpdoors/crimson_barn_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/crimson_barrel_trapdoor.png b/public/textures/mcwtrpdoors/crimson_barrel_trapdoor.png new file mode 100644 index 00000000..8f2317dd Binary files /dev/null and b/public/textures/mcwtrpdoors/crimson_barrel_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/crimson_beach_trapdoor.png b/public/textures/mcwtrpdoors/crimson_beach_trapdoor.png new file mode 100644 index 00000000..6c235513 Binary files /dev/null and b/public/textures/mcwtrpdoors/crimson_beach_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/crimson_blossom_trapdoor.png b/public/textures/mcwtrpdoors/crimson_blossom_trapdoor.png new file mode 100644 index 00000000..2ba195c1 Binary files /dev/null and b/public/textures/mcwtrpdoors/crimson_blossom_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/crimson_classic_trapdoor.png b/public/textures/mcwtrpdoors/crimson_classic_trapdoor.png new file mode 100644 index 00000000..f7943a56 Binary files /dev/null and b/public/textures/mcwtrpdoors/crimson_classic_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/crimson_cottage_trapdoor.png b/public/textures/mcwtrpdoors/crimson_cottage_trapdoor.png new file mode 100644 index 00000000..4e774060 Binary files /dev/null and b/public/textures/mcwtrpdoors/crimson_cottage_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/crimson_four_panel_trapdoor.png b/public/textures/mcwtrpdoors/crimson_four_panel_trapdoor.png new file mode 100644 index 00000000..64047a16 Binary files /dev/null and b/public/textures/mcwtrpdoors/crimson_four_panel_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/crimson_glass_trapdoor.png b/public/textures/mcwtrpdoors/crimson_glass_trapdoor.png new file mode 100644 index 00000000..fbd84534 Binary files /dev/null and b/public/textures/mcwtrpdoors/crimson_glass_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/crimson_mystic_trapdoor.png b/public/textures/mcwtrpdoors/crimson_mystic_trapdoor.png new file mode 100644 index 00000000..35fbfafd Binary files /dev/null and b/public/textures/mcwtrpdoors/crimson_mystic_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/crimson_paper_trapdoor.png b/public/textures/mcwtrpdoors/crimson_paper_trapdoor.png new file mode 100644 index 00000000..3f60c794 Binary files /dev/null and b/public/textures/mcwtrpdoors/crimson_paper_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/crimson_ranch_trapdoor.png b/public/textures/mcwtrpdoors/crimson_ranch_trapdoor.png new file mode 100644 index 00000000..7e246d53 Binary files /dev/null and b/public/textures/mcwtrpdoors/crimson_ranch_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/crimson_swamp_trapdoor.png b/public/textures/mcwtrpdoors/crimson_swamp_trapdoor.png new file mode 100644 index 00000000..b5684755 Binary files /dev/null and b/public/textures/mcwtrpdoors/crimson_swamp_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/crimson_tropical_trapdoor.png b/public/textures/mcwtrpdoors/crimson_tropical_trapdoor.png new file mode 100644 index 00000000..003f5a5f Binary files /dev/null and b/public/textures/mcwtrpdoors/crimson_tropical_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/crimson_whispering_trapdoor.png b/public/textures/mcwtrpdoors/crimson_whispering_trapdoor.png new file mode 100644 index 00000000..e8389a83 Binary files /dev/null and b/public/textures/mcwtrpdoors/crimson_whispering_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/dark_oak_bamboo_trapdoor.png b/public/textures/mcwtrpdoors/dark_oak_bamboo_trapdoor.png new file mode 100644 index 00000000..49474bf8 Binary files /dev/null and b/public/textures/mcwtrpdoors/dark_oak_bamboo_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/dark_oak_bark_trapdoor.png b/public/textures/mcwtrpdoors/dark_oak_bark_trapdoor.png new file mode 100644 index 00000000..d7bb12e0 Binary files /dev/null and b/public/textures/mcwtrpdoors/dark_oak_bark_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/dark_oak_barn_trapdoor.png b/public/textures/mcwtrpdoors/dark_oak_barn_trapdoor.png new file mode 100644 index 00000000..4124d4d8 Binary files /dev/null and b/public/textures/mcwtrpdoors/dark_oak_barn_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/dark_oak_barred_trapdoor.png b/public/textures/mcwtrpdoors/dark_oak_barred_trapdoor.png new file mode 100644 index 00000000..2f9d6dce Binary files /dev/null and b/public/textures/mcwtrpdoors/dark_oak_barred_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/dark_oak_barrel_trapdoor.png b/public/textures/mcwtrpdoors/dark_oak_barrel_trapdoor.png new file mode 100644 index 00000000..1e65d40d Binary files /dev/null and b/public/textures/mcwtrpdoors/dark_oak_barrel_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/dark_oak_beach_trapdoor.png b/public/textures/mcwtrpdoors/dark_oak_beach_trapdoor.png new file mode 100644 index 00000000..3d323a4d Binary files /dev/null and b/public/textures/mcwtrpdoors/dark_oak_beach_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/dark_oak_blossom_trapdoor.png b/public/textures/mcwtrpdoors/dark_oak_blossom_trapdoor.png new file mode 100644 index 00000000..00111009 Binary files /dev/null and b/public/textures/mcwtrpdoors/dark_oak_blossom_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/dark_oak_classic_trapdoor.png b/public/textures/mcwtrpdoors/dark_oak_classic_trapdoor.png new file mode 100644 index 00000000..cc65d55d Binary files /dev/null and b/public/textures/mcwtrpdoors/dark_oak_classic_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/dark_oak_cottage_trapdoor.png b/public/textures/mcwtrpdoors/dark_oak_cottage_trapdoor.png new file mode 100644 index 00000000..783e354e Binary files /dev/null and b/public/textures/mcwtrpdoors/dark_oak_cottage_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/dark_oak_glass_trapdoor.png b/public/textures/mcwtrpdoors/dark_oak_glass_trapdoor.png new file mode 100644 index 00000000..2bfb7833 Binary files /dev/null and b/public/textures/mcwtrpdoors/dark_oak_glass_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/dark_oak_mystic_trapdoor.png b/public/textures/mcwtrpdoors/dark_oak_mystic_trapdoor.png new file mode 100644 index 00000000..b956e6e2 Binary files /dev/null and b/public/textures/mcwtrpdoors/dark_oak_mystic_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/dark_oak_paper_trapdoor.png b/public/textures/mcwtrpdoors/dark_oak_paper_trapdoor.png new file mode 100644 index 00000000..503d1140 Binary files /dev/null and b/public/textures/mcwtrpdoors/dark_oak_paper_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/dark_oak_ranch_trapdoor.png b/public/textures/mcwtrpdoors/dark_oak_ranch_trapdoor.png new file mode 100644 index 00000000..d54eb46c Binary files /dev/null and b/public/textures/mcwtrpdoors/dark_oak_ranch_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/dark_oak_swamp_trapdoor.png b/public/textures/mcwtrpdoors/dark_oak_swamp_trapdoor.png new file mode 100644 index 00000000..3d53a969 Binary files /dev/null and b/public/textures/mcwtrpdoors/dark_oak_swamp_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/dark_oak_tropical_trapdoor.png b/public/textures/mcwtrpdoors/dark_oak_tropical_trapdoor.png new file mode 100644 index 00000000..21f6a3a1 Binary files /dev/null and b/public/textures/mcwtrpdoors/dark_oak_tropical_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/dark_oak_whispering_trapdoor.png b/public/textures/mcwtrpdoors/dark_oak_whispering_trapdoor.png new file mode 100644 index 00000000..3a0eb03c Binary files /dev/null and b/public/textures/mcwtrpdoors/dark_oak_whispering_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/jungle_bamboo_trapdoor.png b/public/textures/mcwtrpdoors/jungle_bamboo_trapdoor.png new file mode 100644 index 00000000..94be1401 Binary files /dev/null and b/public/textures/mcwtrpdoors/jungle_bamboo_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/jungle_bark_trapdoor.png b/public/textures/mcwtrpdoors/jungle_bark_trapdoor.png new file mode 100644 index 00000000..75fa9ed7 Binary files /dev/null and b/public/textures/mcwtrpdoors/jungle_bark_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/jungle_barn_trapdoor.png b/public/textures/mcwtrpdoors/jungle_barn_trapdoor.png new file mode 100644 index 00000000..72fa33d3 Binary files /dev/null and b/public/textures/mcwtrpdoors/jungle_barn_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/jungle_barred_trapdoor.png b/public/textures/mcwtrpdoors/jungle_barred_trapdoor.png new file mode 100644 index 00000000..51701f73 Binary files /dev/null and b/public/textures/mcwtrpdoors/jungle_barred_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/jungle_barrel_trapdoor.png b/public/textures/mcwtrpdoors/jungle_barrel_trapdoor.png new file mode 100644 index 00000000..41025994 Binary files /dev/null and b/public/textures/mcwtrpdoors/jungle_barrel_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/jungle_blossom_trapdoor.png b/public/textures/mcwtrpdoors/jungle_blossom_trapdoor.png new file mode 100644 index 00000000..d1038852 Binary files /dev/null and b/public/textures/mcwtrpdoors/jungle_blossom_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/jungle_classic_trapdoor.png b/public/textures/mcwtrpdoors/jungle_classic_trapdoor.png new file mode 100644 index 00000000..9fd4d848 Binary files /dev/null and b/public/textures/mcwtrpdoors/jungle_classic_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/jungle_cottage_trapdoor.png b/public/textures/mcwtrpdoors/jungle_cottage_trapdoor.png new file mode 100644 index 00000000..02603434 Binary files /dev/null and b/public/textures/mcwtrpdoors/jungle_cottage_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/jungle_four_panel_trapdoor.png b/public/textures/mcwtrpdoors/jungle_four_panel_trapdoor.png new file mode 100644 index 00000000..73f98e11 Binary files /dev/null and b/public/textures/mcwtrpdoors/jungle_four_panel_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/jungle_glass_trapdoor.png b/public/textures/mcwtrpdoors/jungle_glass_trapdoor.png new file mode 100644 index 00000000..ebc64767 Binary files /dev/null and b/public/textures/mcwtrpdoors/jungle_glass_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/jungle_mystic_trapdoor.png b/public/textures/mcwtrpdoors/jungle_mystic_trapdoor.png new file mode 100644 index 00000000..6f51d2c4 Binary files /dev/null and b/public/textures/mcwtrpdoors/jungle_mystic_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/jungle_paper_trapdoor.png b/public/textures/mcwtrpdoors/jungle_paper_trapdoor.png new file mode 100644 index 00000000..6ac82377 Binary files /dev/null and b/public/textures/mcwtrpdoors/jungle_paper_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/jungle_ranch_trapdoor.png b/public/textures/mcwtrpdoors/jungle_ranch_trapdoor.png new file mode 100644 index 00000000..e948305e Binary files /dev/null and b/public/textures/mcwtrpdoors/jungle_ranch_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/jungle_swamp_trapdoor.png b/public/textures/mcwtrpdoors/jungle_swamp_trapdoor.png new file mode 100644 index 00000000..31372d43 Binary files /dev/null and b/public/textures/mcwtrpdoors/jungle_swamp_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/jungle_tropical_trapdoor.png b/public/textures/mcwtrpdoors/jungle_tropical_trapdoor.png new file mode 100644 index 00000000..571a000c Binary files /dev/null and b/public/textures/mcwtrpdoors/jungle_tropical_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/jungle_whispering_trapdoor.png b/public/textures/mcwtrpdoors/jungle_whispering_trapdoor.png new file mode 100644 index 00000000..f670b443 Binary files /dev/null and b/public/textures/mcwtrpdoors/jungle_whispering_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/mangrove_bamboo_trapdoor.png b/public/textures/mcwtrpdoors/mangrove_bamboo_trapdoor.png new file mode 100644 index 00000000..502a4075 Binary files /dev/null and b/public/textures/mcwtrpdoors/mangrove_bamboo_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/mangrove_bark_trapdoor.png b/public/textures/mcwtrpdoors/mangrove_bark_trapdoor.png new file mode 100644 index 00000000..e31bbf8b Binary files /dev/null and b/public/textures/mcwtrpdoors/mangrove_bark_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/mangrove_barn_trapdoor.png b/public/textures/mcwtrpdoors/mangrove_barn_trapdoor.png new file mode 100644 index 00000000..beec1d6f Binary files /dev/null and b/public/textures/mcwtrpdoors/mangrove_barn_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/mangrove_barred_trapdoor.png b/public/textures/mcwtrpdoors/mangrove_barred_trapdoor.png new file mode 100644 index 00000000..8e351c73 Binary files /dev/null and b/public/textures/mcwtrpdoors/mangrove_barred_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/mangrove_barrel_trapdoor.png b/public/textures/mcwtrpdoors/mangrove_barrel_trapdoor.png new file mode 100644 index 00000000..67a31795 Binary files /dev/null and b/public/textures/mcwtrpdoors/mangrove_barrel_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/mangrove_beach_trapdoor.png b/public/textures/mcwtrpdoors/mangrove_beach_trapdoor.png new file mode 100644 index 00000000..6125c877 Binary files /dev/null and b/public/textures/mcwtrpdoors/mangrove_beach_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/mangrove_blossom_trapdoor.png b/public/textures/mcwtrpdoors/mangrove_blossom_trapdoor.png new file mode 100644 index 00000000..93fa5bd6 Binary files /dev/null and b/public/textures/mcwtrpdoors/mangrove_blossom_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/mangrove_classic_trapdoor.png b/public/textures/mcwtrpdoors/mangrove_classic_trapdoor.png new file mode 100644 index 00000000..b270f0fe Binary files /dev/null and b/public/textures/mcwtrpdoors/mangrove_classic_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/mangrove_cottage_trapdoor.png b/public/textures/mcwtrpdoors/mangrove_cottage_trapdoor.png new file mode 100644 index 00000000..06e2c5ca Binary files /dev/null and b/public/textures/mcwtrpdoors/mangrove_cottage_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/mangrove_four_panel_trapdoor.png b/public/textures/mcwtrpdoors/mangrove_four_panel_trapdoor.png new file mode 100644 index 00000000..ac0adf97 Binary files /dev/null and b/public/textures/mcwtrpdoors/mangrove_four_panel_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/mangrove_glass_trapdoor.png b/public/textures/mcwtrpdoors/mangrove_glass_trapdoor.png new file mode 100644 index 00000000..1b2e486a Binary files /dev/null and b/public/textures/mcwtrpdoors/mangrove_glass_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/mangrove_mystic_trapdoor.png b/public/textures/mcwtrpdoors/mangrove_mystic_trapdoor.png new file mode 100644 index 00000000..120daa2a Binary files /dev/null and b/public/textures/mcwtrpdoors/mangrove_mystic_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/mangrove_paper_trapdoor.png b/public/textures/mcwtrpdoors/mangrove_paper_trapdoor.png new file mode 100644 index 00000000..a5973033 Binary files /dev/null and b/public/textures/mcwtrpdoors/mangrove_paper_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/mangrove_ranch_trapdoor.png b/public/textures/mcwtrpdoors/mangrove_ranch_trapdoor.png new file mode 100644 index 00000000..5232ed46 Binary files /dev/null and b/public/textures/mcwtrpdoors/mangrove_ranch_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/mangrove_tropical_trapdoor.png b/public/textures/mcwtrpdoors/mangrove_tropical_trapdoor.png new file mode 100644 index 00000000..564ba61b Binary files /dev/null and b/public/textures/mcwtrpdoors/mangrove_tropical_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/mangrove_whispering_trapdoor.png b/public/textures/mcwtrpdoors/mangrove_whispering_trapdoor.png new file mode 100644 index 00000000..7cfe7ebe Binary files /dev/null and b/public/textures/mcwtrpdoors/mangrove_whispering_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/metal_full_trapdoor.png b/public/textures/mcwtrpdoors/metal_full_trapdoor.png new file mode 100644 index 00000000..e53a827a Binary files /dev/null and b/public/textures/mcwtrpdoors/metal_full_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/metal_trapdoor.png b/public/textures/mcwtrpdoors/metal_trapdoor.png new file mode 100644 index 00000000..010ea9d2 Binary files /dev/null and b/public/textures/mcwtrpdoors/metal_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/metal_warning_trapdoor.png b/public/textures/mcwtrpdoors/metal_warning_trapdoor.png new file mode 100644 index 00000000..d201008c Binary files /dev/null and b/public/textures/mcwtrpdoors/metal_warning_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/oak_bamboo_trapdoor.png b/public/textures/mcwtrpdoors/oak_bamboo_trapdoor.png new file mode 100644 index 00000000..2309d2f6 Binary files /dev/null and b/public/textures/mcwtrpdoors/oak_bamboo_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/oak_bark_trapdoor.png b/public/textures/mcwtrpdoors/oak_bark_trapdoor.png new file mode 100644 index 00000000..ff37de21 Binary files /dev/null and b/public/textures/mcwtrpdoors/oak_bark_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/oak_barn_trapdoor.png b/public/textures/mcwtrpdoors/oak_barn_trapdoor.png new file mode 100644 index 00000000..8fa01768 Binary files /dev/null and b/public/textures/mcwtrpdoors/oak_barn_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/oak_barred_trapdoor.png b/public/textures/mcwtrpdoors/oak_barred_trapdoor.png new file mode 100644 index 00000000..31da4384 Binary files /dev/null and b/public/textures/mcwtrpdoors/oak_barred_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/oak_barrel_trapdoor.png b/public/textures/mcwtrpdoors/oak_barrel_trapdoor.png new file mode 100644 index 00000000..0124769f Binary files /dev/null and b/public/textures/mcwtrpdoors/oak_barrel_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/oak_beach_trapdoor.png b/public/textures/mcwtrpdoors/oak_beach_trapdoor.png new file mode 100644 index 00000000..9ded4001 Binary files /dev/null and b/public/textures/mcwtrpdoors/oak_beach_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/oak_blossom_trapdoor.png b/public/textures/mcwtrpdoors/oak_blossom_trapdoor.png new file mode 100644 index 00000000..b8074cb2 Binary files /dev/null and b/public/textures/mcwtrpdoors/oak_blossom_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/oak_cottage_trapdoor.png b/public/textures/mcwtrpdoors/oak_cottage_trapdoor.png new file mode 100644 index 00000000..3f42a182 Binary files /dev/null and b/public/textures/mcwtrpdoors/oak_cottage_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/oak_four_panel_trapdoor.png b/public/textures/mcwtrpdoors/oak_four_panel_trapdoor.png new file mode 100644 index 00000000..c5bdb077 Binary files /dev/null and b/public/textures/mcwtrpdoors/oak_four_panel_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/oak_glass_trapdoor.png b/public/textures/mcwtrpdoors/oak_glass_trapdoor.png new file mode 100644 index 00000000..cd6eb868 Binary files /dev/null and b/public/textures/mcwtrpdoors/oak_glass_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/oak_mystic_trapdoor.png b/public/textures/mcwtrpdoors/oak_mystic_trapdoor.png new file mode 100644 index 00000000..a0edbd8d Binary files /dev/null and b/public/textures/mcwtrpdoors/oak_mystic_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/oak_paper_trapdoor.png b/public/textures/mcwtrpdoors/oak_paper_trapdoor.png new file mode 100644 index 00000000..3ad3fdb9 Binary files /dev/null and b/public/textures/mcwtrpdoors/oak_paper_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/oak_ranch_trapdoor.png b/public/textures/mcwtrpdoors/oak_ranch_trapdoor.png new file mode 100644 index 00000000..36560ae8 Binary files /dev/null and b/public/textures/mcwtrpdoors/oak_ranch_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/oak_swamp_trapdoor.png b/public/textures/mcwtrpdoors/oak_swamp_trapdoor.png new file mode 100644 index 00000000..bb19a3da Binary files /dev/null and b/public/textures/mcwtrpdoors/oak_swamp_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/oak_tropical_trapdoor.png b/public/textures/mcwtrpdoors/oak_tropical_trapdoor.png new file mode 100644 index 00000000..e218ce18 Binary files /dev/null and b/public/textures/mcwtrpdoors/oak_tropical_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/oak_whispering_trapdoor.png b/public/textures/mcwtrpdoors/oak_whispering_trapdoor.png new file mode 100644 index 00000000..b5031c6f Binary files /dev/null and b/public/textures/mcwtrpdoors/oak_whispering_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/print_bamboo.png b/public/textures/mcwtrpdoors/print_bamboo.png new file mode 100644 index 00000000..5ab710d5 Binary files /dev/null and b/public/textures/mcwtrpdoors/print_bamboo.png differ diff --git a/public/textures/mcwtrpdoors/print_barred.png b/public/textures/mcwtrpdoors/print_barred.png new file mode 100644 index 00000000..12982f19 Binary files /dev/null and b/public/textures/mcwtrpdoors/print_barred.png differ diff --git a/public/textures/mcwtrpdoors/print_beach.png b/public/textures/mcwtrpdoors/print_beach.png new file mode 100644 index 00000000..b455641f Binary files /dev/null and b/public/textures/mcwtrpdoors/print_beach.png differ diff --git a/public/textures/mcwtrpdoors/print_blossom.png b/public/textures/mcwtrpdoors/print_blossom.png new file mode 100644 index 00000000..63fb6ab1 Binary files /dev/null and b/public/textures/mcwtrpdoors/print_blossom.png differ diff --git a/public/textures/mcwtrpdoors/print_classic.png b/public/textures/mcwtrpdoors/print_classic.png new file mode 100644 index 00000000..558ddeab Binary files /dev/null and b/public/textures/mcwtrpdoors/print_classic.png differ diff --git a/public/textures/mcwtrpdoors/print_cottage.png b/public/textures/mcwtrpdoors/print_cottage.png new file mode 100644 index 00000000..b4755837 Binary files /dev/null and b/public/textures/mcwtrpdoors/print_cottage.png differ diff --git a/public/textures/mcwtrpdoors/print_four_panel.png b/public/textures/mcwtrpdoors/print_four_panel.png new file mode 100644 index 00000000..622b4f82 Binary files /dev/null and b/public/textures/mcwtrpdoors/print_four_panel.png differ diff --git a/public/textures/mcwtrpdoors/print_mystic.png b/public/textures/mcwtrpdoors/print_mystic.png new file mode 100644 index 00000000..87930bc0 Binary files /dev/null and b/public/textures/mcwtrpdoors/print_mystic.png differ diff --git a/public/textures/mcwtrpdoors/print_paper.png b/public/textures/mcwtrpdoors/print_paper.png new file mode 100644 index 00000000..95bab32c Binary files /dev/null and b/public/textures/mcwtrpdoors/print_paper.png differ diff --git a/public/textures/mcwtrpdoors/print_swamp.png b/public/textures/mcwtrpdoors/print_swamp.png new file mode 100644 index 00000000..69c040ef Binary files /dev/null and b/public/textures/mcwtrpdoors/print_swamp.png differ diff --git a/public/textures/mcwtrpdoors/print_tropical.png b/public/textures/mcwtrpdoors/print_tropical.png new file mode 100644 index 00000000..ab8e8f04 Binary files /dev/null and b/public/textures/mcwtrpdoors/print_tropical.png differ diff --git a/public/textures/mcwtrpdoors/print_whispering.png b/public/textures/mcwtrpdoors/print_whispering.png new file mode 100644 index 00000000..56070a9a Binary files /dev/null and b/public/textures/mcwtrpdoors/print_whispering.png differ diff --git a/public/textures/mcwtrpdoors/spruce_bamboo_trapdoor.png b/public/textures/mcwtrpdoors/spruce_bamboo_trapdoor.png new file mode 100644 index 00000000..594d9e3a Binary files /dev/null and b/public/textures/mcwtrpdoors/spruce_bamboo_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/spruce_bark_trapdoor.png b/public/textures/mcwtrpdoors/spruce_bark_trapdoor.png new file mode 100644 index 00000000..953e5986 Binary files /dev/null and b/public/textures/mcwtrpdoors/spruce_bark_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/spruce_barn_trapdoor.png b/public/textures/mcwtrpdoors/spruce_barn_trapdoor.png new file mode 100644 index 00000000..82fc9816 Binary files /dev/null and b/public/textures/mcwtrpdoors/spruce_barn_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/spruce_barred_trapdoor.png b/public/textures/mcwtrpdoors/spruce_barred_trapdoor.png new file mode 100644 index 00000000..1f3d5fbd Binary files /dev/null and b/public/textures/mcwtrpdoors/spruce_barred_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/spruce_barrel_trapdoor.png b/public/textures/mcwtrpdoors/spruce_barrel_trapdoor.png new file mode 100644 index 00000000..14d0964f Binary files /dev/null and b/public/textures/mcwtrpdoors/spruce_barrel_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/spruce_beach_trapdoor.png b/public/textures/mcwtrpdoors/spruce_beach_trapdoor.png new file mode 100644 index 00000000..53413295 Binary files /dev/null and b/public/textures/mcwtrpdoors/spruce_beach_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/spruce_blossom_trapdoor.png b/public/textures/mcwtrpdoors/spruce_blossom_trapdoor.png new file mode 100644 index 00000000..6b324563 Binary files /dev/null and b/public/textures/mcwtrpdoors/spruce_blossom_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/spruce_classic_trapdoor.png b/public/textures/mcwtrpdoors/spruce_classic_trapdoor.png new file mode 100644 index 00000000..2baa9b0d Binary files /dev/null and b/public/textures/mcwtrpdoors/spruce_classic_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/spruce_four_panel_trapdoor.png b/public/textures/mcwtrpdoors/spruce_four_panel_trapdoor.png new file mode 100644 index 00000000..3b8335ba Binary files /dev/null and b/public/textures/mcwtrpdoors/spruce_four_panel_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/spruce_glass_trapdoor.png b/public/textures/mcwtrpdoors/spruce_glass_trapdoor.png new file mode 100644 index 00000000..69450940 Binary files /dev/null and b/public/textures/mcwtrpdoors/spruce_glass_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/spruce_mystic_trapdoor.png b/public/textures/mcwtrpdoors/spruce_mystic_trapdoor.png new file mode 100644 index 00000000..afa0be1f Binary files /dev/null and b/public/textures/mcwtrpdoors/spruce_mystic_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/spruce_paper_trapdoor.png b/public/textures/mcwtrpdoors/spruce_paper_trapdoor.png new file mode 100644 index 00000000..2a69bfbe Binary files /dev/null and b/public/textures/mcwtrpdoors/spruce_paper_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/spruce_ranch_trapdoor.png b/public/textures/mcwtrpdoors/spruce_ranch_trapdoor.png new file mode 100644 index 00000000..8d2e30f3 Binary files /dev/null and b/public/textures/mcwtrpdoors/spruce_ranch_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/spruce_swamp_trapdoor.png b/public/textures/mcwtrpdoors/spruce_swamp_trapdoor.png new file mode 100644 index 00000000..c71341d6 Binary files /dev/null and b/public/textures/mcwtrpdoors/spruce_swamp_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/spruce_tropical_trapdoor.png b/public/textures/mcwtrpdoors/spruce_tropical_trapdoor.png new file mode 100644 index 00000000..3ae18afb Binary files /dev/null and b/public/textures/mcwtrpdoors/spruce_tropical_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/spruce_whispering_trapdoor.png b/public/textures/mcwtrpdoors/spruce_whispering_trapdoor.png new file mode 100644 index 00000000..3e831f1b Binary files /dev/null and b/public/textures/mcwtrpdoors/spruce_whispering_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/warped_bamboo_trapdoor.png b/public/textures/mcwtrpdoors/warped_bamboo_trapdoor.png new file mode 100644 index 00000000..17aa9007 Binary files /dev/null and b/public/textures/mcwtrpdoors/warped_bamboo_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/warped_bark_trapdoor.png b/public/textures/mcwtrpdoors/warped_bark_trapdoor.png new file mode 100644 index 00000000..1af9a1bc Binary files /dev/null and b/public/textures/mcwtrpdoors/warped_bark_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/warped_barn_trapdoor.png b/public/textures/mcwtrpdoors/warped_barn_trapdoor.png new file mode 100644 index 00000000..a0ab6dfa Binary files /dev/null and b/public/textures/mcwtrpdoors/warped_barn_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/warped_barred_trapdoor.png b/public/textures/mcwtrpdoors/warped_barred_trapdoor.png new file mode 100644 index 00000000..649a7e28 Binary files /dev/null and b/public/textures/mcwtrpdoors/warped_barred_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/warped_barrel_trapdoor.png b/public/textures/mcwtrpdoors/warped_barrel_trapdoor.png new file mode 100644 index 00000000..0121cf91 Binary files /dev/null and b/public/textures/mcwtrpdoors/warped_barrel_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/warped_beach_trapdoor.png b/public/textures/mcwtrpdoors/warped_beach_trapdoor.png new file mode 100644 index 00000000..ee031f1a Binary files /dev/null and b/public/textures/mcwtrpdoors/warped_beach_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/warped_blossom_trapdoor.png b/public/textures/mcwtrpdoors/warped_blossom_trapdoor.png new file mode 100644 index 00000000..0569b12e Binary files /dev/null and b/public/textures/mcwtrpdoors/warped_blossom_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/warped_classic_trapdoor.png b/public/textures/mcwtrpdoors/warped_classic_trapdoor.png new file mode 100644 index 00000000..1ef7c5f0 Binary files /dev/null and b/public/textures/mcwtrpdoors/warped_classic_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/warped_cottage_trapdoor.png b/public/textures/mcwtrpdoors/warped_cottage_trapdoor.png new file mode 100644 index 00000000..36c76717 Binary files /dev/null and b/public/textures/mcwtrpdoors/warped_cottage_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/warped_four_panel_trapdoor.png b/public/textures/mcwtrpdoors/warped_four_panel_trapdoor.png new file mode 100644 index 00000000..87427eab Binary files /dev/null and b/public/textures/mcwtrpdoors/warped_four_panel_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/warped_glass_trapdoor.png b/public/textures/mcwtrpdoors/warped_glass_trapdoor.png new file mode 100644 index 00000000..777a4f8e Binary files /dev/null and b/public/textures/mcwtrpdoors/warped_glass_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/warped_paper_trapdoor.png b/public/textures/mcwtrpdoors/warped_paper_trapdoor.png new file mode 100644 index 00000000..82970ac3 Binary files /dev/null and b/public/textures/mcwtrpdoors/warped_paper_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/warped_ranch_trapdoor.png b/public/textures/mcwtrpdoors/warped_ranch_trapdoor.png new file mode 100644 index 00000000..f6595d85 Binary files /dev/null and b/public/textures/mcwtrpdoors/warped_ranch_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/warped_swamp_trapdoor.png b/public/textures/mcwtrpdoors/warped_swamp_trapdoor.png new file mode 100644 index 00000000..d501cd24 Binary files /dev/null and b/public/textures/mcwtrpdoors/warped_swamp_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/warped_tropical_trapdoor.png b/public/textures/mcwtrpdoors/warped_tropical_trapdoor.png new file mode 100644 index 00000000..7486a53c Binary files /dev/null and b/public/textures/mcwtrpdoors/warped_tropical_trapdoor.png differ diff --git a/public/textures/mcwtrpdoors/warped_whispering_trapdoor.png b/public/textures/mcwtrpdoors/warped_whispering_trapdoor.png new file mode 100644 index 00000000..879453b2 Binary files /dev/null and b/public/textures/mcwtrpdoors/warped_whispering_trapdoor.png differ diff --git a/public/textures/mcwwindows/acacia_blinds.png b/public/textures/mcwwindows/acacia_blinds.png new file mode 100644 index 00000000..3ce6f47a Binary files /dev/null and b/public/textures/mcwwindows/acacia_blinds.png differ diff --git a/public/textures/mcwwindows/acacia_curtain_rod.png b/public/textures/mcwwindows/acacia_curtain_rod.png new file mode 100644 index 00000000..9a58a6c5 Binary files /dev/null and b/public/textures/mcwwindows/acacia_curtain_rod.png differ diff --git a/public/textures/mcwwindows/acacia_four_window.png b/public/textures/mcwwindows/acacia_four_window.png new file mode 100644 index 00000000..d96384a8 Binary files /dev/null and b/public/textures/mcwwindows/acacia_four_window.png differ diff --git a/public/textures/mcwwindows/acacia_log_parapet.png b/public/textures/mcwwindows/acacia_log_parapet.png new file mode 100644 index 00000000..1ff0a79c Binary files /dev/null and b/public/textures/mcwwindows/acacia_log_parapet.png differ diff --git a/public/textures/mcwwindows/acacia_louvered_shutter.png b/public/textures/mcwwindows/acacia_louvered_shutter.png new file mode 100644 index 00000000..940a1a7b Binary files /dev/null and b/public/textures/mcwwindows/acacia_louvered_shutter.png differ diff --git a/public/textures/mcwwindows/acacia_pane_window.png b/public/textures/mcwwindows/acacia_pane_window.png new file mode 100644 index 00000000..b6ed1254 Binary files /dev/null and b/public/textures/mcwwindows/acacia_pane_window.png differ diff --git a/public/textures/mcwwindows/acacia_plank_four_window.png b/public/textures/mcwwindows/acacia_plank_four_window.png new file mode 100644 index 00000000..55024e2b Binary files /dev/null and b/public/textures/mcwwindows/acacia_plank_four_window.png differ diff --git a/public/textures/mcwwindows/acacia_plank_pane_window.png b/public/textures/mcwwindows/acacia_plank_pane_window.png new file mode 100644 index 00000000..a30793ac Binary files /dev/null and b/public/textures/mcwwindows/acacia_plank_pane_window.png differ diff --git a/public/textures/mcwwindows/acacia_plank_parapet.png b/public/textures/mcwwindows/acacia_plank_parapet.png new file mode 100644 index 00000000..c61f5d4d Binary files /dev/null and b/public/textures/mcwwindows/acacia_plank_parapet.png differ diff --git a/public/textures/mcwwindows/acacia_plank_window.png b/public/textures/mcwwindows/acacia_plank_window.png new file mode 100644 index 00000000..d55f7ed6 Binary files /dev/null and b/public/textures/mcwwindows/acacia_plank_window.png differ diff --git a/public/textures/mcwwindows/acacia_plank_window2.png b/public/textures/mcwwindows/acacia_plank_window2.png new file mode 100644 index 00000000..8d3a79dd Binary files /dev/null and b/public/textures/mcwwindows/acacia_plank_window2.png differ diff --git a/public/textures/mcwwindows/acacia_shutter.png b/public/textures/mcwwindows/acacia_shutter.png new file mode 100644 index 00000000..ab0c605c Binary files /dev/null and b/public/textures/mcwwindows/acacia_shutter.png differ diff --git a/public/textures/mcwwindows/acacia_window.png b/public/textures/mcwwindows/acacia_window.png new file mode 100644 index 00000000..a4eb4b88 Binary files /dev/null and b/public/textures/mcwwindows/acacia_window.png differ diff --git a/public/textures/mcwwindows/acacia_window2.png b/public/textures/mcwwindows/acacia_window2.png new file mode 100644 index 00000000..dbf7f053 Binary files /dev/null and b/public/textures/mcwwindows/acacia_window2.png differ diff --git a/public/textures/mcwwindows/andesite_four_window.png b/public/textures/mcwwindows/andesite_four_window.png new file mode 100644 index 00000000..04606af8 Binary files /dev/null and b/public/textures/mcwwindows/andesite_four_window.png differ diff --git a/public/textures/mcwwindows/andesite_louvered_shutter.png b/public/textures/mcwwindows/andesite_louvered_shutter.png new file mode 100644 index 00000000..61fb9f97 Binary files /dev/null and b/public/textures/mcwwindows/andesite_louvered_shutter.png differ diff --git a/public/textures/mcwwindows/andesite_pane_window.png b/public/textures/mcwwindows/andesite_pane_window.png new file mode 100644 index 00000000..71818730 Binary files /dev/null and b/public/textures/mcwwindows/andesite_pane_window.png differ diff --git a/public/textures/mcwwindows/andesite_parapet.png b/public/textures/mcwwindows/andesite_parapet.png new file mode 100644 index 00000000..5fe23ea5 Binary files /dev/null and b/public/textures/mcwwindows/andesite_parapet.png differ diff --git a/public/textures/mcwwindows/andesite_window.png b/public/textures/mcwwindows/andesite_window.png new file mode 100644 index 00000000..7cab2909 Binary files /dev/null and b/public/textures/mcwwindows/andesite_window.png differ diff --git a/public/textures/mcwwindows/andesite_window2.png b/public/textures/mcwwindows/andesite_window2.png new file mode 100644 index 00000000..7cea8ec3 Binary files /dev/null and b/public/textures/mcwwindows/andesite_window2.png differ diff --git a/public/textures/mcwwindows/bamboo_shutter.png b/public/textures/mcwwindows/bamboo_shutter.png new file mode 100644 index 00000000..8a0874f9 Binary files /dev/null and b/public/textures/mcwwindows/bamboo_shutter.png differ diff --git a/public/textures/mcwwindows/birch_blinds.png b/public/textures/mcwwindows/birch_blinds.png new file mode 100644 index 00000000..1f9f13e9 Binary files /dev/null and b/public/textures/mcwwindows/birch_blinds.png differ diff --git a/public/textures/mcwwindows/birch_curtain_rod.png b/public/textures/mcwwindows/birch_curtain_rod.png new file mode 100644 index 00000000..6011b1ea Binary files /dev/null and b/public/textures/mcwwindows/birch_curtain_rod.png differ diff --git a/public/textures/mcwwindows/birch_four_window.png b/public/textures/mcwwindows/birch_four_window.png new file mode 100644 index 00000000..edee5e29 Binary files /dev/null and b/public/textures/mcwwindows/birch_four_window.png differ diff --git a/public/textures/mcwwindows/birch_log_parapet.png b/public/textures/mcwwindows/birch_log_parapet.png new file mode 100644 index 00000000..06198c97 Binary files /dev/null and b/public/textures/mcwwindows/birch_log_parapet.png differ diff --git a/public/textures/mcwwindows/birch_louvered_shutter.png b/public/textures/mcwwindows/birch_louvered_shutter.png new file mode 100644 index 00000000..bc0d90c9 Binary files /dev/null and b/public/textures/mcwwindows/birch_louvered_shutter.png differ diff --git a/public/textures/mcwwindows/birch_pane_window.png b/public/textures/mcwwindows/birch_pane_window.png new file mode 100644 index 00000000..5b7b5d49 Binary files /dev/null and b/public/textures/mcwwindows/birch_pane_window.png differ diff --git a/public/textures/mcwwindows/birch_plank_four_window.png b/public/textures/mcwwindows/birch_plank_four_window.png new file mode 100644 index 00000000..66b8a0af Binary files /dev/null and b/public/textures/mcwwindows/birch_plank_four_window.png differ diff --git a/public/textures/mcwwindows/birch_plank_pane_window.png b/public/textures/mcwwindows/birch_plank_pane_window.png new file mode 100644 index 00000000..4d2858bc Binary files /dev/null and b/public/textures/mcwwindows/birch_plank_pane_window.png differ diff --git a/public/textures/mcwwindows/birch_plank_parapet.png b/public/textures/mcwwindows/birch_plank_parapet.png new file mode 100644 index 00000000..25930328 Binary files /dev/null and b/public/textures/mcwwindows/birch_plank_parapet.png differ diff --git a/public/textures/mcwwindows/birch_plank_window.png b/public/textures/mcwwindows/birch_plank_window.png new file mode 100644 index 00000000..bbd5be70 Binary files /dev/null and b/public/textures/mcwwindows/birch_plank_window.png differ diff --git a/public/textures/mcwwindows/birch_plank_window2.png b/public/textures/mcwwindows/birch_plank_window2.png new file mode 100644 index 00000000..19f238b2 Binary files /dev/null and b/public/textures/mcwwindows/birch_plank_window2.png differ diff --git a/public/textures/mcwwindows/birch_shutter.png b/public/textures/mcwwindows/birch_shutter.png new file mode 100644 index 00000000..a4fa619a Binary files /dev/null and b/public/textures/mcwwindows/birch_shutter.png differ diff --git a/public/textures/mcwwindows/birch_window.png b/public/textures/mcwwindows/birch_window.png new file mode 100644 index 00000000..0d489b5a Binary files /dev/null and b/public/textures/mcwwindows/birch_window.png differ diff --git a/public/textures/mcwwindows/birch_window2.png b/public/textures/mcwwindows/birch_window2.png new file mode 100644 index 00000000..d32d2340 Binary files /dev/null and b/public/textures/mcwwindows/birch_window2.png differ diff --git a/public/textures/mcwwindows/black_curtain.png b/public/textures/mcwwindows/black_curtain.png new file mode 100644 index 00000000..e93ecc9f Binary files /dev/null and b/public/textures/mcwwindows/black_curtain.png differ diff --git a/public/textures/mcwwindows/black_mosaic_glass.png b/public/textures/mcwwindows/black_mosaic_glass.png new file mode 100644 index 00000000..fa3da6f6 Binary files /dev/null and b/public/textures/mcwwindows/black_mosaic_glass.png differ diff --git a/public/textures/mcwwindows/black_mosaic_glass_pane.png b/public/textures/mcwwindows/black_mosaic_glass_pane.png new file mode 100644 index 00000000..439e7f41 Binary files /dev/null and b/public/textures/mcwwindows/black_mosaic_glass_pane.png differ diff --git a/public/textures/mcwwindows/blackstone_brick_arrow_slit.png b/public/textures/mcwwindows/blackstone_brick_arrow_slit.png new file mode 100644 index 00000000..1598f59b Binary files /dev/null and b/public/textures/mcwwindows/blackstone_brick_arrow_slit.png differ diff --git a/public/textures/mcwwindows/blackstone_brick_gothic.png b/public/textures/mcwwindows/blackstone_brick_gothic.png new file mode 100644 index 00000000..31f73c04 Binary files /dev/null and b/public/textures/mcwwindows/blackstone_brick_gothic.png differ diff --git a/public/textures/mcwwindows/blackstone_four_window.png b/public/textures/mcwwindows/blackstone_four_window.png new file mode 100644 index 00000000..c255430b Binary files /dev/null and b/public/textures/mcwwindows/blackstone_four_window.png differ diff --git a/public/textures/mcwwindows/blackstone_pane_window.png b/public/textures/mcwwindows/blackstone_pane_window.png new file mode 100644 index 00000000..4aaddb81 Binary files /dev/null and b/public/textures/mcwwindows/blackstone_pane_window.png differ diff --git a/public/textures/mcwwindows/blackstone_parapet.png b/public/textures/mcwwindows/blackstone_parapet.png new file mode 100644 index 00000000..2e4c8ff8 Binary files /dev/null and b/public/textures/mcwwindows/blackstone_parapet.png differ diff --git a/public/textures/mcwwindows/blackstone_window.png b/public/textures/mcwwindows/blackstone_window.png new file mode 100644 index 00000000..6e051320 Binary files /dev/null and b/public/textures/mcwwindows/blackstone_window.png differ diff --git a/public/textures/mcwwindows/blackstone_window2.png b/public/textures/mcwwindows/blackstone_window2.png new file mode 100644 index 00000000..0089bf51 Binary files /dev/null and b/public/textures/mcwwindows/blackstone_window2.png differ diff --git a/public/textures/mcwwindows/blue_curtain.png b/public/textures/mcwwindows/blue_curtain.png new file mode 100644 index 00000000..d0558856 Binary files /dev/null and b/public/textures/mcwwindows/blue_curtain.png differ diff --git a/public/textures/mcwwindows/blue_mosaic_glass.png b/public/textures/mcwwindows/blue_mosaic_glass.png new file mode 100644 index 00000000..4c4e6d4f Binary files /dev/null and b/public/textures/mcwwindows/blue_mosaic_glass.png differ diff --git a/public/textures/mcwwindows/blue_mosaic_glass_pane.png b/public/textures/mcwwindows/blue_mosaic_glass_pane.png new file mode 100644 index 00000000..70a75ee5 Binary files /dev/null and b/public/textures/mcwwindows/blue_mosaic_glass_pane.png differ diff --git a/public/textures/mcwwindows/bricks_four_window.png b/public/textures/mcwwindows/bricks_four_window.png new file mode 100644 index 00000000..4b808732 Binary files /dev/null and b/public/textures/mcwwindows/bricks_four_window.png differ diff --git a/public/textures/mcwwindows/bricks_pane_window.png b/public/textures/mcwwindows/bricks_pane_window.png new file mode 100644 index 00000000..4e18bce0 Binary files /dev/null and b/public/textures/mcwwindows/bricks_pane_window.png differ diff --git a/public/textures/mcwwindows/bricks_window.png b/public/textures/mcwwindows/bricks_window.png new file mode 100644 index 00000000..57a9486c Binary files /dev/null and b/public/textures/mcwwindows/bricks_window.png differ diff --git a/public/textures/mcwwindows/bricks_window2.png b/public/textures/mcwwindows/bricks_window2.png new file mode 100644 index 00000000..2f398dbc Binary files /dev/null and b/public/textures/mcwwindows/bricks_window2.png differ diff --git a/public/textures/mcwwindows/brown_curtain.png b/public/textures/mcwwindows/brown_curtain.png new file mode 100644 index 00000000..147b79f4 Binary files /dev/null and b/public/textures/mcwwindows/brown_curtain.png differ diff --git a/public/textures/mcwwindows/brown_mosaic_glass.png b/public/textures/mcwwindows/brown_mosaic_glass.png new file mode 100644 index 00000000..619864d5 Binary files /dev/null and b/public/textures/mcwwindows/brown_mosaic_glass.png differ diff --git a/public/textures/mcwwindows/brown_mosaic_glass_pane.png b/public/textures/mcwwindows/brown_mosaic_glass_pane.png new file mode 100644 index 00000000..4d883c53 Binary files /dev/null and b/public/textures/mcwwindows/brown_mosaic_glass_pane.png differ diff --git a/public/textures/mcwwindows/cherry_blinds.png b/public/textures/mcwwindows/cherry_blinds.png new file mode 100644 index 00000000..f8c46422 Binary files /dev/null and b/public/textures/mcwwindows/cherry_blinds.png differ diff --git a/public/textures/mcwwindows/cherry_curtain_rod.png b/public/textures/mcwwindows/cherry_curtain_rod.png new file mode 100644 index 00000000..3001cd28 Binary files /dev/null and b/public/textures/mcwwindows/cherry_curtain_rod.png differ diff --git a/public/textures/mcwwindows/cherry_four_window.png b/public/textures/mcwwindows/cherry_four_window.png new file mode 100644 index 00000000..118adb54 Binary files /dev/null and b/public/textures/mcwwindows/cherry_four_window.png differ diff --git a/public/textures/mcwwindows/cherry_log_parapet.png b/public/textures/mcwwindows/cherry_log_parapet.png new file mode 100644 index 00000000..5356b74e Binary files /dev/null and b/public/textures/mcwwindows/cherry_log_parapet.png differ diff --git a/public/textures/mcwwindows/cherry_louvered_shutter.png b/public/textures/mcwwindows/cherry_louvered_shutter.png new file mode 100644 index 00000000..b9def5ee Binary files /dev/null and b/public/textures/mcwwindows/cherry_louvered_shutter.png differ diff --git a/public/textures/mcwwindows/cherry_pane_window.png b/public/textures/mcwwindows/cherry_pane_window.png new file mode 100644 index 00000000..30db9a17 Binary files /dev/null and b/public/textures/mcwwindows/cherry_pane_window.png differ diff --git a/public/textures/mcwwindows/cherry_plank_four_window.png b/public/textures/mcwwindows/cherry_plank_four_window.png new file mode 100644 index 00000000..03e2e0b9 Binary files /dev/null and b/public/textures/mcwwindows/cherry_plank_four_window.png differ diff --git a/public/textures/mcwwindows/cherry_plank_pane_window.png b/public/textures/mcwwindows/cherry_plank_pane_window.png new file mode 100644 index 00000000..9288e48f Binary files /dev/null and b/public/textures/mcwwindows/cherry_plank_pane_window.png differ diff --git a/public/textures/mcwwindows/cherry_plank_parapet.png b/public/textures/mcwwindows/cherry_plank_parapet.png new file mode 100644 index 00000000..c2f45e26 Binary files /dev/null and b/public/textures/mcwwindows/cherry_plank_parapet.png differ diff --git a/public/textures/mcwwindows/cherry_plank_window.png b/public/textures/mcwwindows/cherry_plank_window.png new file mode 100644 index 00000000..5e1c8bc2 Binary files /dev/null and b/public/textures/mcwwindows/cherry_plank_window.png differ diff --git a/public/textures/mcwwindows/cherry_plank_window2.png b/public/textures/mcwwindows/cherry_plank_window2.png new file mode 100644 index 00000000..5f5d77e1 Binary files /dev/null and b/public/textures/mcwwindows/cherry_plank_window2.png differ diff --git a/public/textures/mcwwindows/cherry_shutter.png b/public/textures/mcwwindows/cherry_shutter.png new file mode 100644 index 00000000..a4e81472 Binary files /dev/null and b/public/textures/mcwwindows/cherry_shutter.png differ diff --git a/public/textures/mcwwindows/cherry_window.png b/public/textures/mcwwindows/cherry_window.png new file mode 100644 index 00000000..14c749f1 Binary files /dev/null and b/public/textures/mcwwindows/cherry_window.png differ diff --git a/public/textures/mcwwindows/cherry_window2.png b/public/textures/mcwwindows/cherry_window2.png new file mode 100644 index 00000000..8e36d98a Binary files /dev/null and b/public/textures/mcwwindows/cherry_window2.png differ diff --git a/public/textures/mcwwindows/cobblestone_arrow_slit.png b/public/textures/mcwwindows/cobblestone_arrow_slit.png new file mode 100644 index 00000000..5d674c08 Binary files /dev/null and b/public/textures/mcwwindows/cobblestone_arrow_slit.png differ diff --git a/public/textures/mcwwindows/crimson_blinds.png b/public/textures/mcwwindows/crimson_blinds.png new file mode 100644 index 00000000..dbaec880 Binary files /dev/null and b/public/textures/mcwwindows/crimson_blinds.png differ diff --git a/public/textures/mcwwindows/crimson_curtain_rod.png b/public/textures/mcwwindows/crimson_curtain_rod.png new file mode 100644 index 00000000..2014b1c2 Binary files /dev/null and b/public/textures/mcwwindows/crimson_curtain_rod.png differ diff --git a/public/textures/mcwwindows/crimson_louvered_shutter.png b/public/textures/mcwwindows/crimson_louvered_shutter.png new file mode 100644 index 00000000..b0a8834f Binary files /dev/null and b/public/textures/mcwwindows/crimson_louvered_shutter.png differ diff --git a/public/textures/mcwwindows/crimson_pane_window.png b/public/textures/mcwwindows/crimson_pane_window.png new file mode 100644 index 00000000..1ad58000 Binary files /dev/null and b/public/textures/mcwwindows/crimson_pane_window.png differ diff --git a/public/textures/mcwwindows/crimson_plank_pane_window.png b/public/textures/mcwwindows/crimson_plank_pane_window.png new file mode 100644 index 00000000..8164f649 Binary files /dev/null and b/public/textures/mcwwindows/crimson_plank_pane_window.png differ diff --git a/public/textures/mcwwindows/crimson_plank_parapet.png b/public/textures/mcwwindows/crimson_plank_parapet.png new file mode 100644 index 00000000..c18afd91 Binary files /dev/null and b/public/textures/mcwwindows/crimson_plank_parapet.png differ diff --git a/public/textures/mcwwindows/crimson_planks_four_window.png b/public/textures/mcwwindows/crimson_planks_four_window.png new file mode 100644 index 00000000..c88e2490 Binary files /dev/null and b/public/textures/mcwwindows/crimson_planks_four_window.png differ diff --git a/public/textures/mcwwindows/crimson_planks_window.png b/public/textures/mcwwindows/crimson_planks_window.png new file mode 100644 index 00000000..52c340dd Binary files /dev/null and b/public/textures/mcwwindows/crimson_planks_window.png differ diff --git a/public/textures/mcwwindows/crimson_planks_window2.png b/public/textures/mcwwindows/crimson_planks_window2.png new file mode 100644 index 00000000..dfcd18e9 Binary files /dev/null and b/public/textures/mcwwindows/crimson_planks_window2.png differ diff --git a/public/textures/mcwwindows/crimson_shutter.png b/public/textures/mcwwindows/crimson_shutter.png new file mode 100644 index 00000000..a8b14387 Binary files /dev/null and b/public/textures/mcwwindows/crimson_shutter.png differ diff --git a/public/textures/mcwwindows/crimson_stem_four_window.png b/public/textures/mcwwindows/crimson_stem_four_window.png new file mode 100644 index 00000000..408bf9c8 Binary files /dev/null and b/public/textures/mcwwindows/crimson_stem_four_window.png differ diff --git a/public/textures/mcwwindows/crimson_stem_parapet.png b/public/textures/mcwwindows/crimson_stem_parapet.png new file mode 100644 index 00000000..81fa1ea9 Binary files /dev/null and b/public/textures/mcwwindows/crimson_stem_parapet.png differ diff --git a/public/textures/mcwwindows/crimson_stem_window.png b/public/textures/mcwwindows/crimson_stem_window.png new file mode 100644 index 00000000..2e17e63d Binary files /dev/null and b/public/textures/mcwwindows/crimson_stem_window.png differ diff --git a/public/textures/mcwwindows/crimson_stem_window2.png b/public/textures/mcwwindows/crimson_stem_window2.png new file mode 100644 index 00000000..f2ae33ac Binary files /dev/null and b/public/textures/mcwwindows/crimson_stem_window2.png differ diff --git a/public/textures/mcwwindows/cyan_curtain.png b/public/textures/mcwwindows/cyan_curtain.png new file mode 100644 index 00000000..84e399a1 Binary files /dev/null and b/public/textures/mcwwindows/cyan_curtain.png differ diff --git a/public/textures/mcwwindows/cyan_mosaic_glass.png b/public/textures/mcwwindows/cyan_mosaic_glass.png new file mode 100644 index 00000000..37403b05 Binary files /dev/null and b/public/textures/mcwwindows/cyan_mosaic_glass.png differ diff --git a/public/textures/mcwwindows/cyan_mosaic_glass_pane.png b/public/textures/mcwwindows/cyan_mosaic_glass_pane.png new file mode 100644 index 00000000..ae1d05a6 Binary files /dev/null and b/public/textures/mcwwindows/cyan_mosaic_glass_pane.png differ diff --git a/public/textures/mcwwindows/dark_oak_blinds.png b/public/textures/mcwwindows/dark_oak_blinds.png new file mode 100644 index 00000000..7a9c74ac Binary files /dev/null and b/public/textures/mcwwindows/dark_oak_blinds.png differ diff --git a/public/textures/mcwwindows/dark_oak_curtain_rod.png b/public/textures/mcwwindows/dark_oak_curtain_rod.png new file mode 100644 index 00000000..363b8b4d Binary files /dev/null and b/public/textures/mcwwindows/dark_oak_curtain_rod.png differ diff --git a/public/textures/mcwwindows/dark_oak_four_window.png b/public/textures/mcwwindows/dark_oak_four_window.png new file mode 100644 index 00000000..e420810c Binary files /dev/null and b/public/textures/mcwwindows/dark_oak_four_window.png differ diff --git a/public/textures/mcwwindows/dark_oak_log_parapet.png b/public/textures/mcwwindows/dark_oak_log_parapet.png new file mode 100644 index 00000000..51969936 Binary files /dev/null and b/public/textures/mcwwindows/dark_oak_log_parapet.png differ diff --git a/public/textures/mcwwindows/dark_oak_louvered_shutter.png b/public/textures/mcwwindows/dark_oak_louvered_shutter.png new file mode 100644 index 00000000..b71db5e2 Binary files /dev/null and b/public/textures/mcwwindows/dark_oak_louvered_shutter.png differ diff --git a/public/textures/mcwwindows/dark_oak_pane_window.png b/public/textures/mcwwindows/dark_oak_pane_window.png new file mode 100644 index 00000000..db9b1f19 Binary files /dev/null and b/public/textures/mcwwindows/dark_oak_pane_window.png differ diff --git a/public/textures/mcwwindows/dark_oak_plank_four_window.png b/public/textures/mcwwindows/dark_oak_plank_four_window.png new file mode 100644 index 00000000..62fc0505 Binary files /dev/null and b/public/textures/mcwwindows/dark_oak_plank_four_window.png differ diff --git a/public/textures/mcwwindows/dark_oak_plank_pane_window.png b/public/textures/mcwwindows/dark_oak_plank_pane_window.png new file mode 100644 index 00000000..47606604 Binary files /dev/null and b/public/textures/mcwwindows/dark_oak_plank_pane_window.png differ diff --git a/public/textures/mcwwindows/dark_oak_plank_parapet.png b/public/textures/mcwwindows/dark_oak_plank_parapet.png new file mode 100644 index 00000000..5b1fdfed Binary files /dev/null and b/public/textures/mcwwindows/dark_oak_plank_parapet.png differ diff --git a/public/textures/mcwwindows/dark_oak_plank_window.png b/public/textures/mcwwindows/dark_oak_plank_window.png new file mode 100644 index 00000000..ec1fee2e Binary files /dev/null and b/public/textures/mcwwindows/dark_oak_plank_window.png differ diff --git a/public/textures/mcwwindows/dark_oak_plank_window2.png b/public/textures/mcwwindows/dark_oak_plank_window2.png new file mode 100644 index 00000000..34afde98 Binary files /dev/null and b/public/textures/mcwwindows/dark_oak_plank_window2.png differ diff --git a/public/textures/mcwwindows/dark_oak_shutter.png b/public/textures/mcwwindows/dark_oak_shutter.png new file mode 100644 index 00000000..a900af18 Binary files /dev/null and b/public/textures/mcwwindows/dark_oak_shutter.png differ diff --git a/public/textures/mcwwindows/dark_oak_window.png b/public/textures/mcwwindows/dark_oak_window.png new file mode 100644 index 00000000..b500325f Binary files /dev/null and b/public/textures/mcwwindows/dark_oak_window.png differ diff --git a/public/textures/mcwwindows/dark_oak_window2.png b/public/textures/mcwwindows/dark_oak_window2.png new file mode 100644 index 00000000..b4c64110 Binary files /dev/null and b/public/textures/mcwwindows/dark_oak_window2.png differ diff --git a/public/textures/mcwwindows/dark_prismarine_brick_arrow_slit.png b/public/textures/mcwwindows/dark_prismarine_brick_arrow_slit.png new file mode 100644 index 00000000..ba58de8a Binary files /dev/null and b/public/textures/mcwwindows/dark_prismarine_brick_arrow_slit.png differ diff --git a/public/textures/mcwwindows/dark_prismarine_brick_gothic.png b/public/textures/mcwwindows/dark_prismarine_brick_gothic.png new file mode 100644 index 00000000..892bbc0e Binary files /dev/null and b/public/textures/mcwwindows/dark_prismarine_brick_gothic.png differ diff --git a/public/textures/mcwwindows/dark_prismarine_four_window.png b/public/textures/mcwwindows/dark_prismarine_four_window.png new file mode 100644 index 00000000..c030385b Binary files /dev/null and b/public/textures/mcwwindows/dark_prismarine_four_window.png differ diff --git a/public/textures/mcwwindows/dark_prismarine_pane_window.png b/public/textures/mcwwindows/dark_prismarine_pane_window.png new file mode 100644 index 00000000..d99e6223 Binary files /dev/null and b/public/textures/mcwwindows/dark_prismarine_pane_window.png differ diff --git a/public/textures/mcwwindows/dark_prismarine_parapet.png b/public/textures/mcwwindows/dark_prismarine_parapet.png new file mode 100644 index 00000000..331392e9 Binary files /dev/null and b/public/textures/mcwwindows/dark_prismarine_parapet.png differ diff --git a/public/textures/mcwwindows/dark_prismarine_window.png b/public/textures/mcwwindows/dark_prismarine_window.png new file mode 100644 index 00000000..82493542 Binary files /dev/null and b/public/textures/mcwwindows/dark_prismarine_window.png differ diff --git a/public/textures/mcwwindows/dark_prismarine_window2.png b/public/textures/mcwwindows/dark_prismarine_window2.png new file mode 100644 index 00000000..4a83e9a4 Binary files /dev/null and b/public/textures/mcwwindows/dark_prismarine_window2.png differ diff --git a/public/textures/mcwwindows/deepslate_four_window.png b/public/textures/mcwwindows/deepslate_four_window.png new file mode 100644 index 00000000..196d0126 Binary files /dev/null and b/public/textures/mcwwindows/deepslate_four_window.png differ diff --git a/public/textures/mcwwindows/deepslate_pane_window.png b/public/textures/mcwwindows/deepslate_pane_window.png new file mode 100644 index 00000000..de527007 Binary files /dev/null and b/public/textures/mcwwindows/deepslate_pane_window.png differ diff --git a/public/textures/mcwwindows/deepslate_window.png b/public/textures/mcwwindows/deepslate_window.png new file mode 100644 index 00000000..83e68329 Binary files /dev/null and b/public/textures/mcwwindows/deepslate_window.png differ diff --git a/public/textures/mcwwindows/deepslate_window2.png b/public/textures/mcwwindows/deepslate_window2.png new file mode 100644 index 00000000..e2e3d66f Binary files /dev/null and b/public/textures/mcwwindows/deepslate_window2.png differ diff --git a/public/textures/mcwwindows/diorite_four_window.png b/public/textures/mcwwindows/diorite_four_window.png new file mode 100644 index 00000000..1bbd9ddc Binary files /dev/null and b/public/textures/mcwwindows/diorite_four_window.png differ diff --git a/public/textures/mcwwindows/diorite_louvered_shutter.png b/public/textures/mcwwindows/diorite_louvered_shutter.png new file mode 100644 index 00000000..c9717e65 Binary files /dev/null and b/public/textures/mcwwindows/diorite_louvered_shutter.png differ diff --git a/public/textures/mcwwindows/diorite_pane_window.png b/public/textures/mcwwindows/diorite_pane_window.png new file mode 100644 index 00000000..22cae7ac Binary files /dev/null and b/public/textures/mcwwindows/diorite_pane_window.png differ diff --git a/public/textures/mcwwindows/diorite_parapet.png b/public/textures/mcwwindows/diorite_parapet.png new file mode 100644 index 00000000..ccf385ba Binary files /dev/null and b/public/textures/mcwwindows/diorite_parapet.png differ diff --git a/public/textures/mcwwindows/diorite_window.png b/public/textures/mcwwindows/diorite_window.png new file mode 100644 index 00000000..10850ab1 Binary files /dev/null and b/public/textures/mcwwindows/diorite_window.png differ diff --git a/public/textures/mcwwindows/diorite_window2.png b/public/textures/mcwwindows/diorite_window2.png new file mode 100644 index 00000000..64db6768 Binary files /dev/null and b/public/textures/mcwwindows/diorite_window2.png differ diff --git a/public/textures/mcwwindows/end_brick_gothic.png b/public/textures/mcwwindows/end_brick_gothic.png new file mode 100644 index 00000000..3beb50a8 Binary files /dev/null and b/public/textures/mcwwindows/end_brick_gothic.png differ diff --git a/public/textures/mcwwindows/ender_brick_arrow_slit.png b/public/textures/mcwwindows/ender_brick_arrow_slit.png new file mode 100644 index 00000000..eb2faf4b Binary files /dev/null and b/public/textures/mcwwindows/ender_brick_arrow_slit.png differ diff --git a/public/textures/mcwwindows/golden_curtain_rod.png b/public/textures/mcwwindows/golden_curtain_rod.png new file mode 100644 index 00000000..bfbded54 Binary files /dev/null and b/public/textures/mcwwindows/golden_curtain_rod.png differ diff --git a/public/textures/mcwwindows/granite_four_window.png b/public/textures/mcwwindows/granite_four_window.png new file mode 100644 index 00000000..1baf5155 Binary files /dev/null and b/public/textures/mcwwindows/granite_four_window.png differ diff --git a/public/textures/mcwwindows/granite_louvered_shutter.png b/public/textures/mcwwindows/granite_louvered_shutter.png new file mode 100644 index 00000000..ca52e717 Binary files /dev/null and b/public/textures/mcwwindows/granite_louvered_shutter.png differ diff --git a/public/textures/mcwwindows/granite_pane_window.png b/public/textures/mcwwindows/granite_pane_window.png new file mode 100644 index 00000000..ee587964 Binary files /dev/null and b/public/textures/mcwwindows/granite_pane_window.png differ diff --git a/public/textures/mcwwindows/granite_parapet.png b/public/textures/mcwwindows/granite_parapet.png new file mode 100644 index 00000000..c0d53bc7 Binary files /dev/null and b/public/textures/mcwwindows/granite_parapet.png differ diff --git a/public/textures/mcwwindows/granite_window.png b/public/textures/mcwwindows/granite_window.png new file mode 100644 index 00000000..187b516f Binary files /dev/null and b/public/textures/mcwwindows/granite_window.png differ diff --git a/public/textures/mcwwindows/granite_window2.png b/public/textures/mcwwindows/granite_window2.png new file mode 100644 index 00000000..d5581d37 Binary files /dev/null and b/public/textures/mcwwindows/granite_window2.png differ diff --git a/public/textures/mcwwindows/gray_curtain.png b/public/textures/mcwwindows/gray_curtain.png new file mode 100644 index 00000000..c2965342 Binary files /dev/null and b/public/textures/mcwwindows/gray_curtain.png differ diff --git a/public/textures/mcwwindows/gray_mosaic_glass.png b/public/textures/mcwwindows/gray_mosaic_glass.png new file mode 100644 index 00000000..e32af28e Binary files /dev/null and b/public/textures/mcwwindows/gray_mosaic_glass.png differ diff --git a/public/textures/mcwwindows/gray_mosaic_glass_pane.png b/public/textures/mcwwindows/gray_mosaic_glass_pane.png new file mode 100644 index 00000000..be46caf6 Binary files /dev/null and b/public/textures/mcwwindows/gray_mosaic_glass_pane.png differ diff --git a/public/textures/mcwwindows/green_curtain.png b/public/textures/mcwwindows/green_curtain.png new file mode 100644 index 00000000..9b8b7225 Binary files /dev/null and b/public/textures/mcwwindows/green_curtain.png differ diff --git a/public/textures/mcwwindows/green_mosaic_glass.png b/public/textures/mcwwindows/green_mosaic_glass.png new file mode 100644 index 00000000..aac57d60 Binary files /dev/null and b/public/textures/mcwwindows/green_mosaic_glass.png differ diff --git a/public/textures/mcwwindows/green_mosaic_glass_pane.png b/public/textures/mcwwindows/green_mosaic_glass_pane.png new file mode 100644 index 00000000..861eacbe Binary files /dev/null and b/public/textures/mcwwindows/green_mosaic_glass_pane.png differ diff --git a/public/textures/mcwwindows/hammer.png b/public/textures/mcwwindows/hammer.png new file mode 100644 index 00000000..7465f28c Binary files /dev/null and b/public/textures/mcwwindows/hammer.png differ diff --git a/public/textures/mcwwindows/iron_shutter.png b/public/textures/mcwwindows/iron_shutter.png new file mode 100644 index 00000000..5751b76a Binary files /dev/null and b/public/textures/mcwwindows/iron_shutter.png differ diff --git a/public/textures/mcwwindows/jungle_blinds.png b/public/textures/mcwwindows/jungle_blinds.png new file mode 100644 index 00000000..3ca6186b Binary files /dev/null and b/public/textures/mcwwindows/jungle_blinds.png differ diff --git a/public/textures/mcwwindows/jungle_curtain_rod.png b/public/textures/mcwwindows/jungle_curtain_rod.png new file mode 100644 index 00000000..99c4a65e Binary files /dev/null and b/public/textures/mcwwindows/jungle_curtain_rod.png differ diff --git a/public/textures/mcwwindows/jungle_four_window.png b/public/textures/mcwwindows/jungle_four_window.png new file mode 100644 index 00000000..c3924cc8 Binary files /dev/null and b/public/textures/mcwwindows/jungle_four_window.png differ diff --git a/public/textures/mcwwindows/jungle_log_parapet.png b/public/textures/mcwwindows/jungle_log_parapet.png new file mode 100644 index 00000000..fd54eb9c Binary files /dev/null and b/public/textures/mcwwindows/jungle_log_parapet.png differ diff --git a/public/textures/mcwwindows/jungle_louvered_shutter.png b/public/textures/mcwwindows/jungle_louvered_shutter.png new file mode 100644 index 00000000..5d5938b7 Binary files /dev/null and b/public/textures/mcwwindows/jungle_louvered_shutter.png differ diff --git a/public/textures/mcwwindows/jungle_pane_window.png b/public/textures/mcwwindows/jungle_pane_window.png new file mode 100644 index 00000000..040fad24 Binary files /dev/null and b/public/textures/mcwwindows/jungle_pane_window.png differ diff --git a/public/textures/mcwwindows/jungle_plank_four_window.png b/public/textures/mcwwindows/jungle_plank_four_window.png new file mode 100644 index 00000000..d29fb2fe Binary files /dev/null and b/public/textures/mcwwindows/jungle_plank_four_window.png differ diff --git a/public/textures/mcwwindows/jungle_plank_pane_window.png b/public/textures/mcwwindows/jungle_plank_pane_window.png new file mode 100644 index 00000000..8e9a18f4 Binary files /dev/null and b/public/textures/mcwwindows/jungle_plank_pane_window.png differ diff --git a/public/textures/mcwwindows/jungle_plank_parapet.png b/public/textures/mcwwindows/jungle_plank_parapet.png new file mode 100644 index 00000000..8242586a Binary files /dev/null and b/public/textures/mcwwindows/jungle_plank_parapet.png differ diff --git a/public/textures/mcwwindows/jungle_plank_window.png b/public/textures/mcwwindows/jungle_plank_window.png new file mode 100644 index 00000000..9d2ae1e1 Binary files /dev/null and b/public/textures/mcwwindows/jungle_plank_window.png differ diff --git a/public/textures/mcwwindows/jungle_plank_window2.png b/public/textures/mcwwindows/jungle_plank_window2.png new file mode 100644 index 00000000..366462a7 Binary files /dev/null and b/public/textures/mcwwindows/jungle_plank_window2.png differ diff --git a/public/textures/mcwwindows/jungle_shutter.png b/public/textures/mcwwindows/jungle_shutter.png new file mode 100644 index 00000000..5a047a4b Binary files /dev/null and b/public/textures/mcwwindows/jungle_shutter.png differ diff --git a/public/textures/mcwwindows/jungle_window.png b/public/textures/mcwwindows/jungle_window.png new file mode 100644 index 00000000..dde62c19 Binary files /dev/null and b/public/textures/mcwwindows/jungle_window.png differ diff --git a/public/textures/mcwwindows/jungle_window2.png b/public/textures/mcwwindows/jungle_window2.png new file mode 100644 index 00000000..2c9c53b4 Binary files /dev/null and b/public/textures/mcwwindows/jungle_window2.png differ diff --git a/public/textures/mcwwindows/key.png b/public/textures/mcwwindows/key.png new file mode 100644 index 00000000..3a56b82a Binary files /dev/null and b/public/textures/mcwwindows/key.png differ diff --git a/public/textures/mcwwindows/light_blue_curtain.png b/public/textures/mcwwindows/light_blue_curtain.png new file mode 100644 index 00000000..27b8bf8d Binary files /dev/null and b/public/textures/mcwwindows/light_blue_curtain.png differ diff --git a/public/textures/mcwwindows/light_blue_mosaic_glass.png b/public/textures/mcwwindows/light_blue_mosaic_glass.png new file mode 100644 index 00000000..9125cc2f Binary files /dev/null and b/public/textures/mcwwindows/light_blue_mosaic_glass.png differ diff --git a/public/textures/mcwwindows/light_blue_mosaic_glass_pane.png b/public/textures/mcwwindows/light_blue_mosaic_glass_pane.png new file mode 100644 index 00000000..af52ce3a Binary files /dev/null and b/public/textures/mcwwindows/light_blue_mosaic_glass_pane.png differ diff --git a/public/textures/mcwwindows/light_gray_curtain.png b/public/textures/mcwwindows/light_gray_curtain.png new file mode 100644 index 00000000..d2690f1c Binary files /dev/null and b/public/textures/mcwwindows/light_gray_curtain.png differ diff --git a/public/textures/mcwwindows/light_gray_mosaic_glass.png b/public/textures/mcwwindows/light_gray_mosaic_glass.png new file mode 100644 index 00000000..f0becfec Binary files /dev/null and b/public/textures/mcwwindows/light_gray_mosaic_glass.png differ diff --git a/public/textures/mcwwindows/light_gray_mosaic_glass_pane.png b/public/textures/mcwwindows/light_gray_mosaic_glass_pane.png new file mode 100644 index 00000000..3dd70c90 Binary files /dev/null and b/public/textures/mcwwindows/light_gray_mosaic_glass_pane.png differ diff --git a/public/textures/mcwwindows/lime_curtain.png b/public/textures/mcwwindows/lime_curtain.png new file mode 100644 index 00000000..171fc8fc Binary files /dev/null and b/public/textures/mcwwindows/lime_curtain.png differ diff --git a/public/textures/mcwwindows/lime_mosaic_glass.png b/public/textures/mcwwindows/lime_mosaic_glass.png new file mode 100644 index 00000000..aeb579ea Binary files /dev/null and b/public/textures/mcwwindows/lime_mosaic_glass.png differ diff --git a/public/textures/mcwwindows/lime_mosaic_glass_pane.png b/public/textures/mcwwindows/lime_mosaic_glass_pane.png new file mode 100644 index 00000000..6700522e Binary files /dev/null and b/public/textures/mcwwindows/lime_mosaic_glass_pane.png differ diff --git a/public/textures/mcwwindows/magenta_curtain.png b/public/textures/mcwwindows/magenta_curtain.png new file mode 100644 index 00000000..5fa4fb94 Binary files /dev/null and b/public/textures/mcwwindows/magenta_curtain.png differ diff --git a/public/textures/mcwwindows/magenta_mosaic_glass.png b/public/textures/mcwwindows/magenta_mosaic_glass.png new file mode 100644 index 00000000..bcf67cf7 Binary files /dev/null and b/public/textures/mcwwindows/magenta_mosaic_glass.png differ diff --git a/public/textures/mcwwindows/magenta_mosaic_glass_pane.png b/public/textures/mcwwindows/magenta_mosaic_glass_pane.png new file mode 100644 index 00000000..48854d6b Binary files /dev/null and b/public/textures/mcwwindows/magenta_mosaic_glass_pane.png differ diff --git a/public/textures/mcwwindows/mangrove_blinds.png b/public/textures/mcwwindows/mangrove_blinds.png new file mode 100644 index 00000000..68b3f127 Binary files /dev/null and b/public/textures/mcwwindows/mangrove_blinds.png differ diff --git a/public/textures/mcwwindows/mangrove_curtain_rod.png b/public/textures/mcwwindows/mangrove_curtain_rod.png new file mode 100644 index 00000000..f819d0dc Binary files /dev/null and b/public/textures/mcwwindows/mangrove_curtain_rod.png differ diff --git a/public/textures/mcwwindows/mangrove_four_window.png b/public/textures/mcwwindows/mangrove_four_window.png new file mode 100644 index 00000000..e93f846d Binary files /dev/null and b/public/textures/mcwwindows/mangrove_four_window.png differ diff --git a/public/textures/mcwwindows/mangrove_log_parapet.png b/public/textures/mcwwindows/mangrove_log_parapet.png new file mode 100644 index 00000000..23037f72 Binary files /dev/null and b/public/textures/mcwwindows/mangrove_log_parapet.png differ diff --git a/public/textures/mcwwindows/mangrove_louvered_shutter.png b/public/textures/mcwwindows/mangrove_louvered_shutter.png new file mode 100644 index 00000000..f833d966 Binary files /dev/null and b/public/textures/mcwwindows/mangrove_louvered_shutter.png differ diff --git a/public/textures/mcwwindows/mangrove_pane_window.png b/public/textures/mcwwindows/mangrove_pane_window.png new file mode 100644 index 00000000..76e02bf6 Binary files /dev/null and b/public/textures/mcwwindows/mangrove_pane_window.png differ diff --git a/public/textures/mcwwindows/mangrove_plank_four_window.png b/public/textures/mcwwindows/mangrove_plank_four_window.png new file mode 100644 index 00000000..2863dca4 Binary files /dev/null and b/public/textures/mcwwindows/mangrove_plank_four_window.png differ diff --git a/public/textures/mcwwindows/mangrove_plank_pane_window.png b/public/textures/mcwwindows/mangrove_plank_pane_window.png new file mode 100644 index 00000000..dfa6522a Binary files /dev/null and b/public/textures/mcwwindows/mangrove_plank_pane_window.png differ diff --git a/public/textures/mcwwindows/mangrove_plank_parapet.png b/public/textures/mcwwindows/mangrove_plank_parapet.png new file mode 100644 index 00000000..072bd1ae Binary files /dev/null and b/public/textures/mcwwindows/mangrove_plank_parapet.png differ diff --git a/public/textures/mcwwindows/mangrove_plank_window.png b/public/textures/mcwwindows/mangrove_plank_window.png new file mode 100644 index 00000000..8e46bd78 Binary files /dev/null and b/public/textures/mcwwindows/mangrove_plank_window.png differ diff --git a/public/textures/mcwwindows/mangrove_plank_window2.png b/public/textures/mcwwindows/mangrove_plank_window2.png new file mode 100644 index 00000000..a700dee7 Binary files /dev/null and b/public/textures/mcwwindows/mangrove_plank_window2.png differ diff --git a/public/textures/mcwwindows/mangrove_shutter.png b/public/textures/mcwwindows/mangrove_shutter.png new file mode 100644 index 00000000..7eeb4735 Binary files /dev/null and b/public/textures/mcwwindows/mangrove_shutter.png differ diff --git a/public/textures/mcwwindows/mangrove_window.png b/public/textures/mcwwindows/mangrove_window.png new file mode 100644 index 00000000..9324e2d4 Binary files /dev/null and b/public/textures/mcwwindows/mangrove_window.png differ diff --git a/public/textures/mcwwindows/mangrove_window2.png b/public/textures/mcwwindows/mangrove_window2.png new file mode 100644 index 00000000..f1da4b96 Binary files /dev/null and b/public/textures/mcwwindows/mangrove_window2.png differ diff --git a/public/textures/mcwwindows/metal_curtain_rod.png b/public/textures/mcwwindows/metal_curtain_rod.png new file mode 100644 index 00000000..e0f696a1 Binary files /dev/null and b/public/textures/mcwwindows/metal_curtain_rod.png differ diff --git a/public/textures/mcwwindows/metal_four_window.png b/public/textures/mcwwindows/metal_four_window.png new file mode 100644 index 00000000..83c82126 Binary files /dev/null and b/public/textures/mcwwindows/metal_four_window.png differ diff --git a/public/textures/mcwwindows/metal_pane_window.png b/public/textures/mcwwindows/metal_pane_window.png new file mode 100644 index 00000000..0c60ca94 Binary files /dev/null and b/public/textures/mcwwindows/metal_pane_window.png differ diff --git a/public/textures/mcwwindows/metal_window.png b/public/textures/mcwwindows/metal_window.png new file mode 100644 index 00000000..70b4aee0 Binary files /dev/null and b/public/textures/mcwwindows/metal_window.png differ diff --git a/public/textures/mcwwindows/metal_window2.png b/public/textures/mcwwindows/metal_window2.png new file mode 100644 index 00000000..f215ba44 Binary files /dev/null and b/public/textures/mcwwindows/metal_window2.png differ diff --git a/public/textures/mcwwindows/mud_brick_arrow_slit.png b/public/textures/mcwwindows/mud_brick_arrow_slit.png new file mode 100644 index 00000000..9e017c77 Binary files /dev/null and b/public/textures/mcwwindows/mud_brick_arrow_slit.png differ diff --git a/public/textures/mcwwindows/mud_brick_gothic.png b/public/textures/mcwwindows/mud_brick_gothic.png new file mode 100644 index 00000000..d6c5a3af Binary files /dev/null and b/public/textures/mcwwindows/mud_brick_gothic.png differ diff --git a/public/textures/mcwwindows/nether_brick_arrow_slit.png b/public/textures/mcwwindows/nether_brick_arrow_slit.png new file mode 100644 index 00000000..9e6eb993 Binary files /dev/null and b/public/textures/mcwwindows/nether_brick_arrow_slit.png differ diff --git a/public/textures/mcwwindows/nether_brick_gothic.png b/public/textures/mcwwindows/nether_brick_gothic.png new file mode 100644 index 00000000..2c19918b Binary files /dev/null and b/public/textures/mcwwindows/nether_brick_gothic.png differ diff --git a/public/textures/mcwwindows/oak_blinds.png b/public/textures/mcwwindows/oak_blinds.png new file mode 100644 index 00000000..085fc9f9 Binary files /dev/null and b/public/textures/mcwwindows/oak_blinds.png differ diff --git a/public/textures/mcwwindows/oak_curtain_rod.png b/public/textures/mcwwindows/oak_curtain_rod.png new file mode 100644 index 00000000..8b7c52e8 Binary files /dev/null and b/public/textures/mcwwindows/oak_curtain_rod.png differ diff --git a/public/textures/mcwwindows/oak_four_window.png b/public/textures/mcwwindows/oak_four_window.png new file mode 100644 index 00000000..71b746db Binary files /dev/null and b/public/textures/mcwwindows/oak_four_window.png differ diff --git a/public/textures/mcwwindows/oak_log_parapet.png b/public/textures/mcwwindows/oak_log_parapet.png new file mode 100644 index 00000000..b1ee3413 Binary files /dev/null and b/public/textures/mcwwindows/oak_log_parapet.png differ diff --git a/public/textures/mcwwindows/oak_louvered_shutter.png b/public/textures/mcwwindows/oak_louvered_shutter.png new file mode 100644 index 00000000..7b417559 Binary files /dev/null and b/public/textures/mcwwindows/oak_louvered_shutter.png differ diff --git a/public/textures/mcwwindows/oak_pane_window.png b/public/textures/mcwwindows/oak_pane_window.png new file mode 100644 index 00000000..9fd7f27a Binary files /dev/null and b/public/textures/mcwwindows/oak_pane_window.png differ diff --git a/public/textures/mcwwindows/oak_plank_four_window.png b/public/textures/mcwwindows/oak_plank_four_window.png new file mode 100644 index 00000000..8895bbef Binary files /dev/null and b/public/textures/mcwwindows/oak_plank_four_window.png differ diff --git a/public/textures/mcwwindows/oak_plank_pane_window.png b/public/textures/mcwwindows/oak_plank_pane_window.png new file mode 100644 index 00000000..045d8b7a Binary files /dev/null and b/public/textures/mcwwindows/oak_plank_pane_window.png differ diff --git a/public/textures/mcwwindows/oak_plank_parapet.png b/public/textures/mcwwindows/oak_plank_parapet.png new file mode 100644 index 00000000..be8989e9 Binary files /dev/null and b/public/textures/mcwwindows/oak_plank_parapet.png differ diff --git a/public/textures/mcwwindows/oak_plank_window.png b/public/textures/mcwwindows/oak_plank_window.png new file mode 100644 index 00000000..d2dd4cfb Binary files /dev/null and b/public/textures/mcwwindows/oak_plank_window.png differ diff --git a/public/textures/mcwwindows/oak_plank_window2.png b/public/textures/mcwwindows/oak_plank_window2.png new file mode 100644 index 00000000..b68fb949 Binary files /dev/null and b/public/textures/mcwwindows/oak_plank_window2.png differ diff --git a/public/textures/mcwwindows/oak_shutter.png b/public/textures/mcwwindows/oak_shutter.png new file mode 100644 index 00000000..7349e59a Binary files /dev/null and b/public/textures/mcwwindows/oak_shutter.png differ diff --git a/public/textures/mcwwindows/oak_window.png b/public/textures/mcwwindows/oak_window.png new file mode 100644 index 00000000..35c3152c Binary files /dev/null and b/public/textures/mcwwindows/oak_window.png differ diff --git a/public/textures/mcwwindows/oak_window2.png b/public/textures/mcwwindows/oak_window2.png new file mode 100644 index 00000000..8c1f4a63 Binary files /dev/null and b/public/textures/mcwwindows/oak_window2.png differ diff --git a/public/textures/mcwwindows/one_way_glass.png b/public/textures/mcwwindows/one_way_glass.png new file mode 100644 index 00000000..e4fe0ce1 Binary files /dev/null and b/public/textures/mcwwindows/one_way_glass.png differ diff --git a/public/textures/mcwwindows/one_way_glass_pane.png b/public/textures/mcwwindows/one_way_glass_pane.png new file mode 100644 index 00000000..36d6de5b Binary files /dev/null and b/public/textures/mcwwindows/one_way_glass_pane.png differ diff --git a/public/textures/mcwwindows/orange_curtain.png b/public/textures/mcwwindows/orange_curtain.png new file mode 100644 index 00000000..7e53c98a Binary files /dev/null and b/public/textures/mcwwindows/orange_curtain.png differ diff --git a/public/textures/mcwwindows/orange_mosaic_glass.png b/public/textures/mcwwindows/orange_mosaic_glass.png new file mode 100644 index 00000000..4894f70d Binary files /dev/null and b/public/textures/mcwwindows/orange_mosaic_glass.png differ diff --git a/public/textures/mcwwindows/orange_mosaic_glass_pane.png b/public/textures/mcwwindows/orange_mosaic_glass_pane.png new file mode 100644 index 00000000..a44706ac Binary files /dev/null and b/public/textures/mcwwindows/orange_mosaic_glass_pane.png differ diff --git a/public/textures/mcwwindows/pink_curtain.png b/public/textures/mcwwindows/pink_curtain.png new file mode 100644 index 00000000..e2e246c1 Binary files /dev/null and b/public/textures/mcwwindows/pink_curtain.png differ diff --git a/public/textures/mcwwindows/pink_mosaic_glass.png b/public/textures/mcwwindows/pink_mosaic_glass.png new file mode 100644 index 00000000..f84c8e97 Binary files /dev/null and b/public/textures/mcwwindows/pink_mosaic_glass.png differ diff --git a/public/textures/mcwwindows/pink_mosaic_glass_pane.png b/public/textures/mcwwindows/pink_mosaic_glass_pane.png new file mode 100644 index 00000000..cc1c821a Binary files /dev/null and b/public/textures/mcwwindows/pink_mosaic_glass_pane.png differ diff --git a/public/textures/mcwwindows/prismarine_brick_arrow_slit.png b/public/textures/mcwwindows/prismarine_brick_arrow_slit.png new file mode 100644 index 00000000..258bae2c Binary files /dev/null and b/public/textures/mcwwindows/prismarine_brick_arrow_slit.png differ diff --git a/public/textures/mcwwindows/prismarine_brick_gothic.png b/public/textures/mcwwindows/prismarine_brick_gothic.png new file mode 100644 index 00000000..1ca6364b Binary files /dev/null and b/public/textures/mcwwindows/prismarine_brick_gothic.png differ diff --git a/public/textures/mcwwindows/prismarine_four_window.png b/public/textures/mcwwindows/prismarine_four_window.png new file mode 100644 index 00000000..62e0c8fd Binary files /dev/null and b/public/textures/mcwwindows/prismarine_four_window.png differ diff --git a/public/textures/mcwwindows/prismarine_pane_window.png b/public/textures/mcwwindows/prismarine_pane_window.png new file mode 100644 index 00000000..5226776e Binary files /dev/null and b/public/textures/mcwwindows/prismarine_pane_window.png differ diff --git a/public/textures/mcwwindows/prismarine_parapet.png b/public/textures/mcwwindows/prismarine_parapet.png new file mode 100644 index 00000000..4a38ebcd Binary files /dev/null and b/public/textures/mcwwindows/prismarine_parapet.png differ diff --git a/public/textures/mcwwindows/prismarine_window.png b/public/textures/mcwwindows/prismarine_window.png new file mode 100644 index 00000000..fc85b953 Binary files /dev/null and b/public/textures/mcwwindows/prismarine_window.png differ diff --git a/public/textures/mcwwindows/prismarine_window2.png b/public/textures/mcwwindows/prismarine_window2.png new file mode 100644 index 00000000..00cd49b3 Binary files /dev/null and b/public/textures/mcwwindows/prismarine_window2.png differ diff --git a/public/textures/mcwwindows/purple_curtain.png b/public/textures/mcwwindows/purple_curtain.png new file mode 100644 index 00000000..98c39eea Binary files /dev/null and b/public/textures/mcwwindows/purple_curtain.png differ diff --git a/public/textures/mcwwindows/purple_mosaic_glass.png b/public/textures/mcwwindows/purple_mosaic_glass.png new file mode 100644 index 00000000..9c0cee42 Binary files /dev/null and b/public/textures/mcwwindows/purple_mosaic_glass.png differ diff --git a/public/textures/mcwwindows/purple_mosaic_glass_pane.png b/public/textures/mcwwindows/purple_mosaic_glass_pane.png new file mode 100644 index 00000000..fec011a5 Binary files /dev/null and b/public/textures/mcwwindows/purple_mosaic_glass_pane.png differ diff --git a/public/textures/mcwwindows/quartz_four_window.png b/public/textures/mcwwindows/quartz_four_window.png new file mode 100644 index 00000000..097fb59f Binary files /dev/null and b/public/textures/mcwwindows/quartz_four_window.png differ diff --git a/public/textures/mcwwindows/quartz_pane_window.png b/public/textures/mcwwindows/quartz_pane_window.png new file mode 100644 index 00000000..e23a01b8 Binary files /dev/null and b/public/textures/mcwwindows/quartz_pane_window.png differ diff --git a/public/textures/mcwwindows/quartz_window.png b/public/textures/mcwwindows/quartz_window.png new file mode 100644 index 00000000..c63f3e29 Binary files /dev/null and b/public/textures/mcwwindows/quartz_window.png differ diff --git a/public/textures/mcwwindows/quartz_window2.png b/public/textures/mcwwindows/quartz_window2.png new file mode 100644 index 00000000..7cb01b7b Binary files /dev/null and b/public/textures/mcwwindows/quartz_window2.png differ diff --git a/public/textures/mcwwindows/red_curtain.png b/public/textures/mcwwindows/red_curtain.png new file mode 100644 index 00000000..f0974099 Binary files /dev/null and b/public/textures/mcwwindows/red_curtain.png differ diff --git a/public/textures/mcwwindows/red_mosaic_glass.png b/public/textures/mcwwindows/red_mosaic_glass.png new file mode 100644 index 00000000..926db808 Binary files /dev/null and b/public/textures/mcwwindows/red_mosaic_glass.png differ diff --git a/public/textures/mcwwindows/red_mosaic_glass_pane.png b/public/textures/mcwwindows/red_mosaic_glass_pane.png new file mode 100644 index 00000000..19204607 Binary files /dev/null and b/public/textures/mcwwindows/red_mosaic_glass_pane.png differ diff --git a/public/textures/mcwwindows/red_sandstone_four_window.png b/public/textures/mcwwindows/red_sandstone_four_window.png new file mode 100644 index 00000000..0d3b97e1 Binary files /dev/null and b/public/textures/mcwwindows/red_sandstone_four_window.png differ diff --git a/public/textures/mcwwindows/red_sandstone_pane_window.png b/public/textures/mcwwindows/red_sandstone_pane_window.png new file mode 100644 index 00000000..e7424b26 Binary files /dev/null and b/public/textures/mcwwindows/red_sandstone_pane_window.png differ diff --git a/public/textures/mcwwindows/red_sandstone_window.png b/public/textures/mcwwindows/red_sandstone_window.png new file mode 100644 index 00000000..809bae2d Binary files /dev/null and b/public/textures/mcwwindows/red_sandstone_window.png differ diff --git a/public/textures/mcwwindows/red_sandstone_window2.png b/public/textures/mcwwindows/red_sandstone_window2.png new file mode 100644 index 00000000..c86544c2 Binary files /dev/null and b/public/textures/mcwwindows/red_sandstone_window2.png differ diff --git a/public/textures/mcwwindows/sandstone_four_window.png b/public/textures/mcwwindows/sandstone_four_window.png new file mode 100644 index 00000000..fc896f07 Binary files /dev/null and b/public/textures/mcwwindows/sandstone_four_window.png differ diff --git a/public/textures/mcwwindows/sandstone_pane_window.png b/public/textures/mcwwindows/sandstone_pane_window.png new file mode 100644 index 00000000..d2434f4a Binary files /dev/null and b/public/textures/mcwwindows/sandstone_pane_window.png differ diff --git a/public/textures/mcwwindows/sandstone_window.png b/public/textures/mcwwindows/sandstone_window.png new file mode 100644 index 00000000..8eb0f465 Binary files /dev/null and b/public/textures/mcwwindows/sandstone_window.png differ diff --git a/public/textures/mcwwindows/sandstone_window2.png b/public/textures/mcwwindows/sandstone_window2.png new file mode 100644 index 00000000..fb1314c7 Binary files /dev/null and b/public/textures/mcwwindows/sandstone_window2.png differ diff --git a/public/textures/mcwwindows/spruce_blinds.png b/public/textures/mcwwindows/spruce_blinds.png new file mode 100644 index 00000000..19b1f7fa Binary files /dev/null and b/public/textures/mcwwindows/spruce_blinds.png differ diff --git a/public/textures/mcwwindows/spruce_curtain_rod.png b/public/textures/mcwwindows/spruce_curtain_rod.png new file mode 100644 index 00000000..f03a2652 Binary files /dev/null and b/public/textures/mcwwindows/spruce_curtain_rod.png differ diff --git a/public/textures/mcwwindows/spruce_four_window.png b/public/textures/mcwwindows/spruce_four_window.png new file mode 100644 index 00000000..b8217978 Binary files /dev/null and b/public/textures/mcwwindows/spruce_four_window.png differ diff --git a/public/textures/mcwwindows/spruce_log_parapet.png b/public/textures/mcwwindows/spruce_log_parapet.png new file mode 100644 index 00000000..d6d9811c Binary files /dev/null and b/public/textures/mcwwindows/spruce_log_parapet.png differ diff --git a/public/textures/mcwwindows/spruce_louvered_shutter.png b/public/textures/mcwwindows/spruce_louvered_shutter.png new file mode 100644 index 00000000..f1fa71f8 Binary files /dev/null and b/public/textures/mcwwindows/spruce_louvered_shutter.png differ diff --git a/public/textures/mcwwindows/spruce_pane_window.png b/public/textures/mcwwindows/spruce_pane_window.png new file mode 100644 index 00000000..7b56bcd8 Binary files /dev/null and b/public/textures/mcwwindows/spruce_pane_window.png differ diff --git a/public/textures/mcwwindows/spruce_plank_four_window.png b/public/textures/mcwwindows/spruce_plank_four_window.png new file mode 100644 index 00000000..3b64f601 Binary files /dev/null and b/public/textures/mcwwindows/spruce_plank_four_window.png differ diff --git a/public/textures/mcwwindows/spruce_plank_pane_window.png b/public/textures/mcwwindows/spruce_plank_pane_window.png new file mode 100644 index 00000000..3970c978 Binary files /dev/null and b/public/textures/mcwwindows/spruce_plank_pane_window.png differ diff --git a/public/textures/mcwwindows/spruce_plank_parapet.png b/public/textures/mcwwindows/spruce_plank_parapet.png new file mode 100644 index 00000000..d797d63c Binary files /dev/null and b/public/textures/mcwwindows/spruce_plank_parapet.png differ diff --git a/public/textures/mcwwindows/spruce_plank_window.png b/public/textures/mcwwindows/spruce_plank_window.png new file mode 100644 index 00000000..675e6d39 Binary files /dev/null and b/public/textures/mcwwindows/spruce_plank_window.png differ diff --git a/public/textures/mcwwindows/spruce_plank_window2.png b/public/textures/mcwwindows/spruce_plank_window2.png new file mode 100644 index 00000000..9e4e7181 Binary files /dev/null and b/public/textures/mcwwindows/spruce_plank_window2.png differ diff --git a/public/textures/mcwwindows/spruce_shutter.png b/public/textures/mcwwindows/spruce_shutter.png new file mode 100644 index 00000000..9ff4dfa5 Binary files /dev/null and b/public/textures/mcwwindows/spruce_shutter.png differ diff --git a/public/textures/mcwwindows/spruce_window.png b/public/textures/mcwwindows/spruce_window.png new file mode 100644 index 00000000..d62c21c6 Binary files /dev/null and b/public/textures/mcwwindows/spruce_window.png differ diff --git a/public/textures/mcwwindows/spruce_window2.png b/public/textures/mcwwindows/spruce_window2.png new file mode 100644 index 00000000..d56d4e7e Binary files /dev/null and b/public/textures/mcwwindows/spruce_window2.png differ diff --git a/public/textures/mcwwindows/stone_brick_arrow_slit.png b/public/textures/mcwwindows/stone_brick_arrow_slit.png new file mode 100644 index 00000000..b75c2a15 Binary files /dev/null and b/public/textures/mcwwindows/stone_brick_arrow_slit.png differ diff --git a/public/textures/mcwwindows/stone_brick_gothic.png b/public/textures/mcwwindows/stone_brick_gothic.png new file mode 100644 index 00000000..f8ab6a25 Binary files /dev/null and b/public/textures/mcwwindows/stone_brick_gothic.png differ diff --git a/public/textures/mcwwindows/stone_four_window.png b/public/textures/mcwwindows/stone_four_window.png new file mode 100644 index 00000000..15820533 Binary files /dev/null and b/public/textures/mcwwindows/stone_four_window.png differ diff --git a/public/textures/mcwwindows/stone_pane_window.png b/public/textures/mcwwindows/stone_pane_window.png new file mode 100644 index 00000000..aa1a0524 Binary files /dev/null and b/public/textures/mcwwindows/stone_pane_window.png differ diff --git a/public/textures/mcwwindows/stone_window.png b/public/textures/mcwwindows/stone_window.png new file mode 100644 index 00000000..81435378 Binary files /dev/null and b/public/textures/mcwwindows/stone_window.png differ diff --git a/public/textures/mcwwindows/stone_window2.png b/public/textures/mcwwindows/stone_window2.png new file mode 100644 index 00000000..529aec24 Binary files /dev/null and b/public/textures/mcwwindows/stone_window2.png differ diff --git a/public/textures/mcwwindows/stripped_acacia_log_four_window.png b/public/textures/mcwwindows/stripped_acacia_log_four_window.png new file mode 100644 index 00000000..7779bdb7 Binary files /dev/null and b/public/textures/mcwwindows/stripped_acacia_log_four_window.png differ diff --git a/public/textures/mcwwindows/stripped_acacia_log_window.png b/public/textures/mcwwindows/stripped_acacia_log_window.png new file mode 100644 index 00000000..ef540577 Binary files /dev/null and b/public/textures/mcwwindows/stripped_acacia_log_window.png differ diff --git a/public/textures/mcwwindows/stripped_acacia_log_window2.png b/public/textures/mcwwindows/stripped_acacia_log_window2.png new file mode 100644 index 00000000..2c0567bf Binary files /dev/null and b/public/textures/mcwwindows/stripped_acacia_log_window2.png differ diff --git a/public/textures/mcwwindows/stripped_acacia_pane_window.png b/public/textures/mcwwindows/stripped_acacia_pane_window.png new file mode 100644 index 00000000..f21cae3f Binary files /dev/null and b/public/textures/mcwwindows/stripped_acacia_pane_window.png differ diff --git a/public/textures/mcwwindows/stripped_birch_log_four_window.png b/public/textures/mcwwindows/stripped_birch_log_four_window.png new file mode 100644 index 00000000..f1eaf4c8 Binary files /dev/null and b/public/textures/mcwwindows/stripped_birch_log_four_window.png differ diff --git a/public/textures/mcwwindows/stripped_birch_log_window.png b/public/textures/mcwwindows/stripped_birch_log_window.png new file mode 100644 index 00000000..75fb9c4c Binary files /dev/null and b/public/textures/mcwwindows/stripped_birch_log_window.png differ diff --git a/public/textures/mcwwindows/stripped_birch_log_window2.png b/public/textures/mcwwindows/stripped_birch_log_window2.png new file mode 100644 index 00000000..adddcca1 Binary files /dev/null and b/public/textures/mcwwindows/stripped_birch_log_window2.png differ diff --git a/public/textures/mcwwindows/stripped_birch_pane_window.png b/public/textures/mcwwindows/stripped_birch_pane_window.png new file mode 100644 index 00000000..386718e8 Binary files /dev/null and b/public/textures/mcwwindows/stripped_birch_pane_window.png differ diff --git a/public/textures/mcwwindows/stripped_cherry_log_four_window.png b/public/textures/mcwwindows/stripped_cherry_log_four_window.png new file mode 100644 index 00000000..5fb586f5 Binary files /dev/null and b/public/textures/mcwwindows/stripped_cherry_log_four_window.png differ diff --git a/public/textures/mcwwindows/stripped_cherry_log_window.png b/public/textures/mcwwindows/stripped_cherry_log_window.png new file mode 100644 index 00000000..0a54502d Binary files /dev/null and b/public/textures/mcwwindows/stripped_cherry_log_window.png differ diff --git a/public/textures/mcwwindows/stripped_cherry_log_window2.png b/public/textures/mcwwindows/stripped_cherry_log_window2.png new file mode 100644 index 00000000..65d4b94c Binary files /dev/null and b/public/textures/mcwwindows/stripped_cherry_log_window2.png differ diff --git a/public/textures/mcwwindows/stripped_cherry_pane_window.png b/public/textures/mcwwindows/stripped_cherry_pane_window.png new file mode 100644 index 00000000..af3e5ab3 Binary files /dev/null and b/public/textures/mcwwindows/stripped_cherry_pane_window.png differ diff --git a/public/textures/mcwwindows/stripped_crimson_pane_window.png b/public/textures/mcwwindows/stripped_crimson_pane_window.png new file mode 100644 index 00000000..ffa8423e Binary files /dev/null and b/public/textures/mcwwindows/stripped_crimson_pane_window.png differ diff --git a/public/textures/mcwwindows/stripped_crimson_stem_four_window.png b/public/textures/mcwwindows/stripped_crimson_stem_four_window.png new file mode 100644 index 00000000..56250f60 Binary files /dev/null and b/public/textures/mcwwindows/stripped_crimson_stem_four_window.png differ diff --git a/public/textures/mcwwindows/stripped_crimson_stem_window.png b/public/textures/mcwwindows/stripped_crimson_stem_window.png new file mode 100644 index 00000000..e3120fef Binary files /dev/null and b/public/textures/mcwwindows/stripped_crimson_stem_window.png differ diff --git a/public/textures/mcwwindows/stripped_crimson_stem_window2.png b/public/textures/mcwwindows/stripped_crimson_stem_window2.png new file mode 100644 index 00000000..55404700 Binary files /dev/null and b/public/textures/mcwwindows/stripped_crimson_stem_window2.png differ diff --git a/public/textures/mcwwindows/stripped_dark_oak_log_four_window.png b/public/textures/mcwwindows/stripped_dark_oak_log_four_window.png new file mode 100644 index 00000000..7abecc52 Binary files /dev/null and b/public/textures/mcwwindows/stripped_dark_oak_log_four_window.png differ diff --git a/public/textures/mcwwindows/stripped_dark_oak_log_window.png b/public/textures/mcwwindows/stripped_dark_oak_log_window.png new file mode 100644 index 00000000..2c1bca21 Binary files /dev/null and b/public/textures/mcwwindows/stripped_dark_oak_log_window.png differ diff --git a/public/textures/mcwwindows/stripped_dark_oak_log_window2.png b/public/textures/mcwwindows/stripped_dark_oak_log_window2.png new file mode 100644 index 00000000..869b22dd Binary files /dev/null and b/public/textures/mcwwindows/stripped_dark_oak_log_window2.png differ diff --git a/public/textures/mcwwindows/stripped_dark_oak_pane_window.png b/public/textures/mcwwindows/stripped_dark_oak_pane_window.png new file mode 100644 index 00000000..e1270dbf Binary files /dev/null and b/public/textures/mcwwindows/stripped_dark_oak_pane_window.png differ diff --git a/public/textures/mcwwindows/stripped_jungle_log_four_window.png b/public/textures/mcwwindows/stripped_jungle_log_four_window.png new file mode 100644 index 00000000..b2679fc4 Binary files /dev/null and b/public/textures/mcwwindows/stripped_jungle_log_four_window.png differ diff --git a/public/textures/mcwwindows/stripped_jungle_log_window.png b/public/textures/mcwwindows/stripped_jungle_log_window.png new file mode 100644 index 00000000..c2abd00c Binary files /dev/null and b/public/textures/mcwwindows/stripped_jungle_log_window.png differ diff --git a/public/textures/mcwwindows/stripped_jungle_log_window2.png b/public/textures/mcwwindows/stripped_jungle_log_window2.png new file mode 100644 index 00000000..a38f7a64 Binary files /dev/null and b/public/textures/mcwwindows/stripped_jungle_log_window2.png differ diff --git a/public/textures/mcwwindows/stripped_jungle_pane_window.png b/public/textures/mcwwindows/stripped_jungle_pane_window.png new file mode 100644 index 00000000..f330c020 Binary files /dev/null and b/public/textures/mcwwindows/stripped_jungle_pane_window.png differ diff --git a/public/textures/mcwwindows/stripped_mangrove_log_four_window.png b/public/textures/mcwwindows/stripped_mangrove_log_four_window.png new file mode 100644 index 00000000..0c0cbf07 Binary files /dev/null and b/public/textures/mcwwindows/stripped_mangrove_log_four_window.png differ diff --git a/public/textures/mcwwindows/stripped_mangrove_log_window.png b/public/textures/mcwwindows/stripped_mangrove_log_window.png new file mode 100644 index 00000000..0d3b4fae Binary files /dev/null and b/public/textures/mcwwindows/stripped_mangrove_log_window.png differ diff --git a/public/textures/mcwwindows/stripped_mangrove_log_window2.png b/public/textures/mcwwindows/stripped_mangrove_log_window2.png new file mode 100644 index 00000000..d09c384e Binary files /dev/null and b/public/textures/mcwwindows/stripped_mangrove_log_window2.png differ diff --git a/public/textures/mcwwindows/stripped_mangrove_pane_window.png b/public/textures/mcwwindows/stripped_mangrove_pane_window.png new file mode 100644 index 00000000..780a9709 Binary files /dev/null and b/public/textures/mcwwindows/stripped_mangrove_pane_window.png differ diff --git a/public/textures/mcwwindows/stripped_oak_log_four_window.png b/public/textures/mcwwindows/stripped_oak_log_four_window.png new file mode 100644 index 00000000..f4f74108 Binary files /dev/null and b/public/textures/mcwwindows/stripped_oak_log_four_window.png differ diff --git a/public/textures/mcwwindows/stripped_oak_log_window.png b/public/textures/mcwwindows/stripped_oak_log_window.png new file mode 100644 index 00000000..c94b0b44 Binary files /dev/null and b/public/textures/mcwwindows/stripped_oak_log_window.png differ diff --git a/public/textures/mcwwindows/stripped_oak_log_window2.png b/public/textures/mcwwindows/stripped_oak_log_window2.png new file mode 100644 index 00000000..47bd35f0 Binary files /dev/null and b/public/textures/mcwwindows/stripped_oak_log_window2.png differ diff --git a/public/textures/mcwwindows/stripped_oak_pane_window.png b/public/textures/mcwwindows/stripped_oak_pane_window.png new file mode 100644 index 00000000..2ae02e73 Binary files /dev/null and b/public/textures/mcwwindows/stripped_oak_pane_window.png differ diff --git a/public/textures/mcwwindows/stripped_spruce_log_four_window.png b/public/textures/mcwwindows/stripped_spruce_log_four_window.png new file mode 100644 index 00000000..66e46552 Binary files /dev/null and b/public/textures/mcwwindows/stripped_spruce_log_four_window.png differ diff --git a/public/textures/mcwwindows/stripped_spruce_log_window.png b/public/textures/mcwwindows/stripped_spruce_log_window.png new file mode 100644 index 00000000..8645c4de Binary files /dev/null and b/public/textures/mcwwindows/stripped_spruce_log_window.png differ diff --git a/public/textures/mcwwindows/stripped_spruce_log_window2.png b/public/textures/mcwwindows/stripped_spruce_log_window2.png new file mode 100644 index 00000000..f2017f78 Binary files /dev/null and b/public/textures/mcwwindows/stripped_spruce_log_window2.png differ diff --git a/public/textures/mcwwindows/stripped_spruce_pane_window.png b/public/textures/mcwwindows/stripped_spruce_pane_window.png new file mode 100644 index 00000000..26840d39 Binary files /dev/null and b/public/textures/mcwwindows/stripped_spruce_pane_window.png differ diff --git a/public/textures/mcwwindows/stripped_warped_pane_window.png b/public/textures/mcwwindows/stripped_warped_pane_window.png new file mode 100644 index 00000000..84625172 Binary files /dev/null and b/public/textures/mcwwindows/stripped_warped_pane_window.png differ diff --git a/public/textures/mcwwindows/stripped_warped_stem_four_window.png b/public/textures/mcwwindows/stripped_warped_stem_four_window.png new file mode 100644 index 00000000..9bfb7461 Binary files /dev/null and b/public/textures/mcwwindows/stripped_warped_stem_four_window.png differ diff --git a/public/textures/mcwwindows/stripped_warped_stem_window.png b/public/textures/mcwwindows/stripped_warped_stem_window.png new file mode 100644 index 00000000..269dbc9b Binary files /dev/null and b/public/textures/mcwwindows/stripped_warped_stem_window.png differ diff --git a/public/textures/mcwwindows/stripped_warped_stem_window2.png b/public/textures/mcwwindows/stripped_warped_stem_window2.png new file mode 100644 index 00000000..71515dfa Binary files /dev/null and b/public/textures/mcwwindows/stripped_warped_stem_window2.png differ diff --git a/public/textures/mcwwindows/warped_blinds.png b/public/textures/mcwwindows/warped_blinds.png new file mode 100644 index 00000000..19a88f9e Binary files /dev/null and b/public/textures/mcwwindows/warped_blinds.png differ diff --git a/public/textures/mcwwindows/warped_curtain_rod.png b/public/textures/mcwwindows/warped_curtain_rod.png new file mode 100644 index 00000000..cc026934 Binary files /dev/null and b/public/textures/mcwwindows/warped_curtain_rod.png differ diff --git a/public/textures/mcwwindows/warped_louvered_shutter.png b/public/textures/mcwwindows/warped_louvered_shutter.png new file mode 100644 index 00000000..320ab0e4 Binary files /dev/null and b/public/textures/mcwwindows/warped_louvered_shutter.png differ diff --git a/public/textures/mcwwindows/warped_pane_window.png b/public/textures/mcwwindows/warped_pane_window.png new file mode 100644 index 00000000..edbdd338 Binary files /dev/null and b/public/textures/mcwwindows/warped_pane_window.png differ diff --git a/public/textures/mcwwindows/warped_plank_pane_window.png b/public/textures/mcwwindows/warped_plank_pane_window.png new file mode 100644 index 00000000..7820394f Binary files /dev/null and b/public/textures/mcwwindows/warped_plank_pane_window.png differ diff --git a/public/textures/mcwwindows/warped_plank_parapet.png b/public/textures/mcwwindows/warped_plank_parapet.png new file mode 100644 index 00000000..c8bc4af0 Binary files /dev/null and b/public/textures/mcwwindows/warped_plank_parapet.png differ diff --git a/public/textures/mcwwindows/warped_planks_four_window.png b/public/textures/mcwwindows/warped_planks_four_window.png new file mode 100644 index 00000000..f83e730a Binary files /dev/null and b/public/textures/mcwwindows/warped_planks_four_window.png differ diff --git a/public/textures/mcwwindows/warped_planks_window.png b/public/textures/mcwwindows/warped_planks_window.png new file mode 100644 index 00000000..1523ca0a Binary files /dev/null and b/public/textures/mcwwindows/warped_planks_window.png differ diff --git a/public/textures/mcwwindows/warped_planks_window2.png b/public/textures/mcwwindows/warped_planks_window2.png new file mode 100644 index 00000000..76357977 Binary files /dev/null and b/public/textures/mcwwindows/warped_planks_window2.png differ diff --git a/public/textures/mcwwindows/warped_shutter.png b/public/textures/mcwwindows/warped_shutter.png new file mode 100644 index 00000000..e7cbe9b0 Binary files /dev/null and b/public/textures/mcwwindows/warped_shutter.png differ diff --git a/public/textures/mcwwindows/warped_stem_four_window.png b/public/textures/mcwwindows/warped_stem_four_window.png new file mode 100644 index 00000000..fe23aa5c Binary files /dev/null and b/public/textures/mcwwindows/warped_stem_four_window.png differ diff --git a/public/textures/mcwwindows/warped_stem_parapet.png b/public/textures/mcwwindows/warped_stem_parapet.png new file mode 100644 index 00000000..08557070 Binary files /dev/null and b/public/textures/mcwwindows/warped_stem_parapet.png differ diff --git a/public/textures/mcwwindows/warped_stem_window.png b/public/textures/mcwwindows/warped_stem_window.png new file mode 100644 index 00000000..ee52184a Binary files /dev/null and b/public/textures/mcwwindows/warped_stem_window.png differ diff --git a/public/textures/mcwwindows/warped_stem_window2.png b/public/textures/mcwwindows/warped_stem_window2.png new file mode 100644 index 00000000..7d8a2ec3 Binary files /dev/null and b/public/textures/mcwwindows/warped_stem_window2.png differ diff --git a/public/textures/mcwwindows/white_curtain.png b/public/textures/mcwwindows/white_curtain.png new file mode 100644 index 00000000..e24abbcb Binary files /dev/null and b/public/textures/mcwwindows/white_curtain.png differ diff --git a/public/textures/mcwwindows/white_mosaic_glass.png b/public/textures/mcwwindows/white_mosaic_glass.png new file mode 100644 index 00000000..9a4af195 Binary files /dev/null and b/public/textures/mcwwindows/white_mosaic_glass.png differ diff --git a/public/textures/mcwwindows/white_mosaic_glass_pane.png b/public/textures/mcwwindows/white_mosaic_glass_pane.png new file mode 100644 index 00000000..cb78c0df Binary files /dev/null and b/public/textures/mcwwindows/white_mosaic_glass_pane.png differ diff --git a/public/textures/mcwwindows/window_base.png b/public/textures/mcwwindows/window_base.png new file mode 100644 index 00000000..537536bd Binary files /dev/null and b/public/textures/mcwwindows/window_base.png differ diff --git a/public/textures/mcwwindows/window_centre_bar_base.png b/public/textures/mcwwindows/window_centre_bar_base.png new file mode 100644 index 00000000..6b77d053 Binary files /dev/null and b/public/textures/mcwwindows/window_centre_bar_base.png differ diff --git a/public/textures/mcwwindows/window_half_bar_base.png b/public/textures/mcwwindows/window_half_bar_base.png new file mode 100644 index 00000000..30b5cc3b Binary files /dev/null and b/public/textures/mcwwindows/window_half_bar_base.png differ diff --git a/public/textures/mcwwindows/yellow_curtain.png b/public/textures/mcwwindows/yellow_curtain.png new file mode 100644 index 00000000..bf8d729a Binary files /dev/null and b/public/textures/mcwwindows/yellow_curtain.png differ diff --git a/public/textures/mcwwindows/yellow_mosaic_glass.png b/public/textures/mcwwindows/yellow_mosaic_glass.png new file mode 100644 index 00000000..9e352f67 Binary files /dev/null and b/public/textures/mcwwindows/yellow_mosaic_glass.png differ diff --git a/public/textures/mcwwindows/yellow_mosaic_glass_pane.png b/public/textures/mcwwindows/yellow_mosaic_glass_pane.png new file mode 100644 index 00000000..86ad5b25 Binary files /dev/null and b/public/textures/mcwwindows/yellow_mosaic_glass_pane.png differ diff --git a/public/textures/mekanism/advanced_bin.png b/public/textures/mekanism/advanced_bin.png new file mode 100644 index 00000000..47bc31fe Binary files /dev/null and b/public/textures/mekanism/advanced_bin.png differ diff --git a/public/textures/mekanism/advanced_chemical_tank.png b/public/textures/mekanism/advanced_chemical_tank.png new file mode 100644 index 00000000..cebdf119 Binary files /dev/null and b/public/textures/mekanism/advanced_chemical_tank.png differ diff --git a/public/textures/mekanism/advanced_combining_factory.png b/public/textures/mekanism/advanced_combining_factory.png new file mode 100644 index 00000000..56e3b07d Binary files /dev/null and b/public/textures/mekanism/advanced_combining_factory.png differ diff --git a/public/textures/mekanism/advanced_compressing_factory.png b/public/textures/mekanism/advanced_compressing_factory.png new file mode 100644 index 00000000..a092337e Binary files /dev/null and b/public/textures/mekanism/advanced_compressing_factory.png differ diff --git a/public/textures/mekanism/advanced_control_circuit.png b/public/textures/mekanism/advanced_control_circuit.png new file mode 100644 index 00000000..4b060508 Binary files /dev/null and b/public/textures/mekanism/advanced_control_circuit.png differ diff --git a/public/textures/mekanism/advanced_crushing_factory.png b/public/textures/mekanism/advanced_crushing_factory.png new file mode 100644 index 00000000..583cacd0 Binary files /dev/null and b/public/textures/mekanism/advanced_crushing_factory.png differ diff --git a/public/textures/mekanism/advanced_energy_cube.png b/public/textures/mekanism/advanced_energy_cube.png new file mode 100644 index 00000000..34eaca67 Binary files /dev/null and b/public/textures/mekanism/advanced_energy_cube.png differ diff --git a/public/textures/mekanism/advanced_energy_cube__{'mekanism__energy'__{energy_containers__[L;16000000L]}}.png b/public/textures/mekanism/advanced_energy_cube__{'mekanism__energy'__{energy_containers__[L;16000000L]}}.png new file mode 100644 index 00000000..da43daac Binary files /dev/null and b/public/textures/mekanism/advanced_energy_cube__{'mekanism__energy'__{energy_containers__[L;16000000L]}}.png differ diff --git a/public/textures/mekanism/advanced_enriching_factory.png b/public/textures/mekanism/advanced_enriching_factory.png new file mode 100644 index 00000000..36e678b5 Binary files /dev/null and b/public/textures/mekanism/advanced_enriching_factory.png differ diff --git a/public/textures/mekanism/advanced_fluid_tank.png b/public/textures/mekanism/advanced_fluid_tank.png new file mode 100644 index 00000000..3d33ed17 Binary files /dev/null and b/public/textures/mekanism/advanced_fluid_tank.png differ diff --git a/public/textures/mekanism/advanced_induction_cell.png b/public/textures/mekanism/advanced_induction_cell.png new file mode 100644 index 00000000..020faa59 Binary files /dev/null and b/public/textures/mekanism/advanced_induction_cell.png differ diff --git a/public/textures/mekanism/advanced_induction_provider.png b/public/textures/mekanism/advanced_induction_provider.png new file mode 100644 index 00000000..0ce61734 Binary files /dev/null and b/public/textures/mekanism/advanced_induction_provider.png differ diff --git a/public/textures/mekanism/advanced_infusing_factory.png b/public/textures/mekanism/advanced_infusing_factory.png new file mode 100644 index 00000000..bb1e89db Binary files /dev/null and b/public/textures/mekanism/advanced_infusing_factory.png differ diff --git a/public/textures/mekanism/advanced_injecting_factory.png b/public/textures/mekanism/advanced_injecting_factory.png new file mode 100644 index 00000000..11d975ba Binary files /dev/null and b/public/textures/mekanism/advanced_injecting_factory.png differ diff --git a/public/textures/mekanism/advanced_logistical_transporter.png b/public/textures/mekanism/advanced_logistical_transporter.png new file mode 100644 index 00000000..75c9db6d Binary files /dev/null and b/public/textures/mekanism/advanced_logistical_transporter.png differ diff --git a/public/textures/mekanism/advanced_mechanical_pipe.png b/public/textures/mekanism/advanced_mechanical_pipe.png new file mode 100644 index 00000000..e0b5377b Binary files /dev/null and b/public/textures/mekanism/advanced_mechanical_pipe.png differ diff --git a/public/textures/mekanism/advanced_pressurized_tube.png b/public/textures/mekanism/advanced_pressurized_tube.png new file mode 100644 index 00000000..a6ecf287 Binary files /dev/null and b/public/textures/mekanism/advanced_pressurized_tube.png differ diff --git a/public/textures/mekanism/advanced_purifying_factory.png b/public/textures/mekanism/advanced_purifying_factory.png new file mode 100644 index 00000000..9dd8519c Binary files /dev/null and b/public/textures/mekanism/advanced_purifying_factory.png differ diff --git a/public/textures/mekanism/advanced_sawing_factory.png b/public/textures/mekanism/advanced_sawing_factory.png new file mode 100644 index 00000000..472c1bd7 Binary files /dev/null and b/public/textures/mekanism/advanced_sawing_factory.png differ diff --git a/public/textures/mekanism/advanced_smelting_factory.png b/public/textures/mekanism/advanced_smelting_factory.png new file mode 100644 index 00000000..5f9b9312 Binary files /dev/null and b/public/textures/mekanism/advanced_smelting_factory.png differ diff --git a/public/textures/mekanism/advanced_thermodynamic_conductor.png b/public/textures/mekanism/advanced_thermodynamic_conductor.png new file mode 100644 index 00000000..0954ad71 Binary files /dev/null and b/public/textures/mekanism/advanced_thermodynamic_conductor.png differ diff --git a/public/textures/mekanism/advanced_tier_installer.png b/public/textures/mekanism/advanced_tier_installer.png new file mode 100644 index 00000000..3d679a82 Binary files /dev/null and b/public/textures/mekanism/advanced_tier_installer.png differ diff --git a/public/textures/mekanism/advanced_universal_cable.png b/public/textures/mekanism/advanced_universal_cable.png new file mode 100644 index 00000000..f6cae21f Binary files /dev/null and b/public/textures/mekanism/advanced_universal_cable.png differ diff --git a/public/textures/mekanism/alloy_atomic.png b/public/textures/mekanism/alloy_atomic.png new file mode 100644 index 00000000..d74489c9 Binary files /dev/null and b/public/textures/mekanism/alloy_atomic.png differ diff --git a/public/textures/mekanism/alloy_infused.png b/public/textures/mekanism/alloy_infused.png new file mode 100644 index 00000000..0df21dc7 Binary files /dev/null and b/public/textures/mekanism/alloy_infused.png differ diff --git a/public/textures/mekanism/alloy_reinforced.png b/public/textures/mekanism/alloy_reinforced.png new file mode 100644 index 00000000..ad55440c Binary files /dev/null and b/public/textures/mekanism/alloy_reinforced.png differ diff --git a/public/textures/mekanism/antiprotonic_nucleosynthesizer.png b/public/textures/mekanism/antiprotonic_nucleosynthesizer.png new file mode 100644 index 00000000..d8e0e041 Binary files /dev/null and b/public/textures/mekanism/antiprotonic_nucleosynthesizer.png differ diff --git a/public/textures/mekanism/atomic_disassembler.png b/public/textures/mekanism/atomic_disassembler.png new file mode 100644 index 00000000..db212f7b Binary files /dev/null and b/public/textures/mekanism/atomic_disassembler.png differ diff --git a/public/textures/mekanism/atomic_disassembler__{'mekanism__energy'__{energy_containers__[L;1000000L]}}.png b/public/textures/mekanism/atomic_disassembler__{'mekanism__energy'__{energy_containers__[L;1000000L]}}.png new file mode 100644 index 00000000..db212f7b Binary files /dev/null and b/public/textures/mekanism/atomic_disassembler__{'mekanism__energy'__{energy_containers__[L;1000000L]}}.png differ diff --git a/public/textures/mekanism/basic_bin.png b/public/textures/mekanism/basic_bin.png new file mode 100644 index 00000000..bdbda354 Binary files /dev/null and b/public/textures/mekanism/basic_bin.png differ diff --git a/public/textures/mekanism/basic_chemical_tank.png b/public/textures/mekanism/basic_chemical_tank.png new file mode 100644 index 00000000..48b41fcd Binary files /dev/null and b/public/textures/mekanism/basic_chemical_tank.png differ diff --git a/public/textures/mekanism/basic_combining_factory.png b/public/textures/mekanism/basic_combining_factory.png new file mode 100644 index 00000000..3a46385f Binary files /dev/null and b/public/textures/mekanism/basic_combining_factory.png differ diff --git a/public/textures/mekanism/basic_compressing_factory.png b/public/textures/mekanism/basic_compressing_factory.png new file mode 100644 index 00000000..258a01a3 Binary files /dev/null and b/public/textures/mekanism/basic_compressing_factory.png differ diff --git a/public/textures/mekanism/basic_control_circuit.png b/public/textures/mekanism/basic_control_circuit.png new file mode 100644 index 00000000..8f85dd0a Binary files /dev/null and b/public/textures/mekanism/basic_control_circuit.png differ diff --git a/public/textures/mekanism/basic_crushing_factory.png b/public/textures/mekanism/basic_crushing_factory.png new file mode 100644 index 00000000..6ff059c8 Binary files /dev/null and b/public/textures/mekanism/basic_crushing_factory.png differ diff --git a/public/textures/mekanism/basic_energy_cube.png b/public/textures/mekanism/basic_energy_cube.png new file mode 100644 index 00000000..11e3505d Binary files /dev/null and b/public/textures/mekanism/basic_energy_cube.png differ diff --git a/public/textures/mekanism/basic_energy_cube__{'mekanism__energy'__{energy_containers__[L;4000000L]}}.png b/public/textures/mekanism/basic_energy_cube__{'mekanism__energy'__{energy_containers__[L;4000000L]}}.png new file mode 100644 index 00000000..e1e7361b Binary files /dev/null and b/public/textures/mekanism/basic_energy_cube__{'mekanism__energy'__{energy_containers__[L;4000000L]}}.png differ diff --git a/public/textures/mekanism/basic_enriching_factory.png b/public/textures/mekanism/basic_enriching_factory.png new file mode 100644 index 00000000..56964abf Binary files /dev/null and b/public/textures/mekanism/basic_enriching_factory.png differ diff --git a/public/textures/mekanism/basic_fluid_tank.png b/public/textures/mekanism/basic_fluid_tank.png new file mode 100644 index 00000000..9b7e608b Binary files /dev/null and b/public/textures/mekanism/basic_fluid_tank.png differ diff --git a/public/textures/mekanism/basic_induction_cell.png b/public/textures/mekanism/basic_induction_cell.png new file mode 100644 index 00000000..6cbc5312 Binary files /dev/null and b/public/textures/mekanism/basic_induction_cell.png differ diff --git a/public/textures/mekanism/basic_induction_provider.png b/public/textures/mekanism/basic_induction_provider.png new file mode 100644 index 00000000..c34b7375 Binary files /dev/null and b/public/textures/mekanism/basic_induction_provider.png differ diff --git a/public/textures/mekanism/basic_infusing_factory.png b/public/textures/mekanism/basic_infusing_factory.png new file mode 100644 index 00000000..4cd11dce Binary files /dev/null and b/public/textures/mekanism/basic_infusing_factory.png differ diff --git a/public/textures/mekanism/basic_injecting_factory.png b/public/textures/mekanism/basic_injecting_factory.png new file mode 100644 index 00000000..225f1080 Binary files /dev/null and b/public/textures/mekanism/basic_injecting_factory.png differ diff --git a/public/textures/mekanism/basic_logistical_transporter.png b/public/textures/mekanism/basic_logistical_transporter.png new file mode 100644 index 00000000..8b19edc1 Binary files /dev/null and b/public/textures/mekanism/basic_logistical_transporter.png differ diff --git a/public/textures/mekanism/basic_mechanical_pipe.png b/public/textures/mekanism/basic_mechanical_pipe.png new file mode 100644 index 00000000..31483a69 Binary files /dev/null and b/public/textures/mekanism/basic_mechanical_pipe.png differ diff --git a/public/textures/mekanism/basic_pressurized_tube.png b/public/textures/mekanism/basic_pressurized_tube.png new file mode 100644 index 00000000..8a38112e Binary files /dev/null and b/public/textures/mekanism/basic_pressurized_tube.png differ diff --git a/public/textures/mekanism/basic_purifying_factory.png b/public/textures/mekanism/basic_purifying_factory.png new file mode 100644 index 00000000..4370e349 Binary files /dev/null and b/public/textures/mekanism/basic_purifying_factory.png differ diff --git a/public/textures/mekanism/basic_sawing_factory.png b/public/textures/mekanism/basic_sawing_factory.png new file mode 100644 index 00000000..c7d9010a Binary files /dev/null and b/public/textures/mekanism/basic_sawing_factory.png differ diff --git a/public/textures/mekanism/basic_smelting_factory.png b/public/textures/mekanism/basic_smelting_factory.png new file mode 100644 index 00000000..a947a532 Binary files /dev/null and b/public/textures/mekanism/basic_smelting_factory.png differ diff --git a/public/textures/mekanism/basic_thermodynamic_conductor.png b/public/textures/mekanism/basic_thermodynamic_conductor.png new file mode 100644 index 00000000..6a8ce363 Binary files /dev/null and b/public/textures/mekanism/basic_thermodynamic_conductor.png differ diff --git a/public/textures/mekanism/basic_tier_installer.png b/public/textures/mekanism/basic_tier_installer.png new file mode 100644 index 00000000..8a261a25 Binary files /dev/null and b/public/textures/mekanism/basic_tier_installer.png differ diff --git a/public/textures/mekanism/basic_universal_cable.png b/public/textures/mekanism/basic_universal_cable.png new file mode 100644 index 00000000..daa3a407 Binary files /dev/null and b/public/textures/mekanism/basic_universal_cable.png differ diff --git a/public/textures/mekanism/bio_fuel.png b/public/textures/mekanism/bio_fuel.png new file mode 100644 index 00000000..dd6a5b49 Binary files /dev/null and b/public/textures/mekanism/bio_fuel.png differ diff --git a/public/textures/mekanism/block_bio_fuel.png b/public/textures/mekanism/block_bio_fuel.png new file mode 100644 index 00000000..d1ad6392 Binary files /dev/null and b/public/textures/mekanism/block_bio_fuel.png differ diff --git a/public/textures/mekanism/block_bronze.png b/public/textures/mekanism/block_bronze.png new file mode 100644 index 00000000..2097f914 Binary files /dev/null and b/public/textures/mekanism/block_bronze.png differ diff --git a/public/textures/mekanism/block_charcoal.png b/public/textures/mekanism/block_charcoal.png new file mode 100644 index 00000000..6e203520 Binary files /dev/null and b/public/textures/mekanism/block_charcoal.png differ diff --git a/public/textures/mekanism/block_fluorite.png b/public/textures/mekanism/block_fluorite.png new file mode 100644 index 00000000..5355fd97 Binary files /dev/null and b/public/textures/mekanism/block_fluorite.png differ diff --git a/public/textures/mekanism/block_lead.png b/public/textures/mekanism/block_lead.png new file mode 100644 index 00000000..94139fc9 Binary files /dev/null and b/public/textures/mekanism/block_lead.png differ diff --git a/public/textures/mekanism/block_osmium.png b/public/textures/mekanism/block_osmium.png new file mode 100644 index 00000000..f0a645c7 Binary files /dev/null and b/public/textures/mekanism/block_osmium.png differ diff --git a/public/textures/mekanism/block_raw_lead.png b/public/textures/mekanism/block_raw_lead.png new file mode 100644 index 00000000..ef27a9cf Binary files /dev/null and b/public/textures/mekanism/block_raw_lead.png differ diff --git a/public/textures/mekanism/block_raw_osmium.png b/public/textures/mekanism/block_raw_osmium.png new file mode 100644 index 00000000..a76ab5ef Binary files /dev/null and b/public/textures/mekanism/block_raw_osmium.png differ diff --git a/public/textures/mekanism/block_raw_tin.png b/public/textures/mekanism/block_raw_tin.png new file mode 100644 index 00000000..014a4a56 Binary files /dev/null and b/public/textures/mekanism/block_raw_tin.png differ diff --git a/public/textures/mekanism/block_raw_uranium.png b/public/textures/mekanism/block_raw_uranium.png new file mode 100644 index 00000000..27899308 Binary files /dev/null and b/public/textures/mekanism/block_raw_uranium.png differ diff --git a/public/textures/mekanism/block_refined_glowstone.png b/public/textures/mekanism/block_refined_glowstone.png new file mode 100644 index 00000000..5e53737c Binary files /dev/null and b/public/textures/mekanism/block_refined_glowstone.png differ diff --git a/public/textures/mekanism/block_refined_obsidian.png b/public/textures/mekanism/block_refined_obsidian.png new file mode 100644 index 00000000..12bce68c Binary files /dev/null and b/public/textures/mekanism/block_refined_obsidian.png differ diff --git a/public/textures/mekanism/block_salt.png b/public/textures/mekanism/block_salt.png new file mode 100644 index 00000000..a176305f Binary files /dev/null and b/public/textures/mekanism/block_salt.png differ diff --git a/public/textures/mekanism/block_steel.png b/public/textures/mekanism/block_steel.png new file mode 100644 index 00000000..d4cf3b13 Binary files /dev/null and b/public/textures/mekanism/block_steel.png differ diff --git a/public/textures/mekanism/block_tin.png b/public/textures/mekanism/block_tin.png new file mode 100644 index 00000000..cc8f25b1 Binary files /dev/null and b/public/textures/mekanism/block_tin.png differ diff --git a/public/textures/mekanism/block_uranium.png b/public/textures/mekanism/block_uranium.png new file mode 100644 index 00000000..7ccd34fd Binary files /dev/null and b/public/textures/mekanism/block_uranium.png differ diff --git a/public/textures/mekanism/boiler_casing.png b/public/textures/mekanism/boiler_casing.png new file mode 100644 index 00000000..acc4055b Binary files /dev/null and b/public/textures/mekanism/boiler_casing.png differ diff --git a/public/textures/mekanism/boiler_valve.png b/public/textures/mekanism/boiler_valve.png new file mode 100644 index 00000000..fab71e23 Binary files /dev/null and b/public/textures/mekanism/boiler_valve.png differ diff --git a/public/textures/mekanism/brine_bucket.png b/public/textures/mekanism/brine_bucket.png new file mode 100644 index 00000000..d129f86a Binary files /dev/null and b/public/textures/mekanism/brine_bucket.png differ diff --git a/public/textures/mekanism/canteen.png b/public/textures/mekanism/canteen.png new file mode 100644 index 00000000..55b03e87 Binary files /dev/null and b/public/textures/mekanism/canteen.png differ diff --git a/public/textures/mekanism/canteen__{'mekanism__fluids'__{fluid_tanks__[{amount__64000,id__'mekanism__nutritional_paste'}]}}.png b/public/textures/mekanism/canteen__{'mekanism__fluids'__{fluid_tanks__[{amount__64000,id__'mekanism__nutritional_paste'}]}}.png new file mode 100644 index 00000000..55b03e87 Binary files /dev/null and b/public/textures/mekanism/canteen__{'mekanism__fluids'__{fluid_tanks__[{amount__64000,id__'mekanism__nutritional_paste'}]}}.png differ diff --git a/public/textures/mekanism/cardboard_box.png b/public/textures/mekanism/cardboard_box.png new file mode 100644 index 00000000..a13813b5 Binary files /dev/null and b/public/textures/mekanism/cardboard_box.png differ diff --git a/public/textures/mekanism/chargepad.png b/public/textures/mekanism/chargepad.png new file mode 100644 index 00000000..c0445fb8 Binary files /dev/null and b/public/textures/mekanism/chargepad.png differ diff --git a/public/textures/mekanism/chemical_crystallizer.png b/public/textures/mekanism/chemical_crystallizer.png new file mode 100644 index 00000000..7e33e57e Binary files /dev/null and b/public/textures/mekanism/chemical_crystallizer.png differ diff --git a/public/textures/mekanism/chemical_dissolution_chamber.png b/public/textures/mekanism/chemical_dissolution_chamber.png new file mode 100644 index 00000000..d2e860fc Binary files /dev/null and b/public/textures/mekanism/chemical_dissolution_chamber.png differ diff --git a/public/textures/mekanism/chemical_infuser.png b/public/textures/mekanism/chemical_infuser.png new file mode 100644 index 00000000..16eab1a1 Binary files /dev/null and b/public/textures/mekanism/chemical_infuser.png differ diff --git a/public/textures/mekanism/chemical_injection_chamber.png b/public/textures/mekanism/chemical_injection_chamber.png new file mode 100644 index 00000000..4e254862 Binary files /dev/null and b/public/textures/mekanism/chemical_injection_chamber.png differ diff --git a/public/textures/mekanism/chemical_oxidizer.png b/public/textures/mekanism/chemical_oxidizer.png new file mode 100644 index 00000000..42171aa2 Binary files /dev/null and b/public/textures/mekanism/chemical_oxidizer.png differ diff --git a/public/textures/mekanism/chemical_washer.png b/public/textures/mekanism/chemical_washer.png new file mode 100644 index 00000000..61a516bc Binary files /dev/null and b/public/textures/mekanism/chemical_washer.png differ diff --git a/public/textures/mekanism/chlorine_bucket.png b/public/textures/mekanism/chlorine_bucket.png new file mode 100644 index 00000000..88e87a87 Binary files /dev/null and b/public/textures/mekanism/chlorine_bucket.png differ diff --git a/public/textures/mekanism/clump_copper.png b/public/textures/mekanism/clump_copper.png new file mode 100644 index 00000000..6fc6f139 Binary files /dev/null and b/public/textures/mekanism/clump_copper.png differ diff --git a/public/textures/mekanism/clump_gold.png b/public/textures/mekanism/clump_gold.png new file mode 100644 index 00000000..40fbb43a Binary files /dev/null and b/public/textures/mekanism/clump_gold.png differ diff --git a/public/textures/mekanism/clump_iron.png b/public/textures/mekanism/clump_iron.png new file mode 100644 index 00000000..c4078f67 Binary files /dev/null and b/public/textures/mekanism/clump_iron.png differ diff --git a/public/textures/mekanism/clump_lead.png b/public/textures/mekanism/clump_lead.png new file mode 100644 index 00000000..031718fd Binary files /dev/null and b/public/textures/mekanism/clump_lead.png differ diff --git a/public/textures/mekanism/clump_osmium.png b/public/textures/mekanism/clump_osmium.png new file mode 100644 index 00000000..26b4cdb9 Binary files /dev/null and b/public/textures/mekanism/clump_osmium.png differ diff --git a/public/textures/mekanism/clump_tin.png b/public/textures/mekanism/clump_tin.png new file mode 100644 index 00000000..6eb34b4f Binary files /dev/null and b/public/textures/mekanism/clump_tin.png differ diff --git a/public/textures/mekanism/clump_uranium.png b/public/textures/mekanism/clump_uranium.png new file mode 100644 index 00000000..08c80c20 Binary files /dev/null and b/public/textures/mekanism/clump_uranium.png differ diff --git a/public/textures/mekanism/combiner.png b/public/textures/mekanism/combiner.png new file mode 100644 index 00000000..8ae1ae24 Binary files /dev/null and b/public/textures/mekanism/combiner.png differ diff --git a/public/textures/mekanism/configuration_card.png b/public/textures/mekanism/configuration_card.png new file mode 100644 index 00000000..3135b49e Binary files /dev/null and b/public/textures/mekanism/configuration_card.png differ diff --git a/public/textures/mekanism/configurator.png b/public/textures/mekanism/configurator.png new file mode 100644 index 00000000..5834db57 Binary files /dev/null and b/public/textures/mekanism/configurator.png differ diff --git a/public/textures/mekanism/crafting_formula.png b/public/textures/mekanism/crafting_formula.png new file mode 100644 index 00000000..ea92d075 Binary files /dev/null and b/public/textures/mekanism/crafting_formula.png differ diff --git a/public/textures/mekanism/creative_bin.png b/public/textures/mekanism/creative_bin.png new file mode 100644 index 00000000..fb76472e Binary files /dev/null and b/public/textures/mekanism/creative_bin.png differ diff --git a/public/textures/mekanism/creative_chemical_tank.png b/public/textures/mekanism/creative_chemical_tank.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__antimatter'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__antimatter'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__antimatter'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__aqua'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__aqua'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__aqua'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__bio'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__bio'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__bio'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__black'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__black'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__black'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__blue'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__blue'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__blue'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__brine'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__brine'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__brine'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__brown'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__brown'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__brown'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__carbon'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__carbon'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__carbon'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__chlorine'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__chlorine'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__chlorine'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__clean_copper'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__clean_copper'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__clean_copper'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__clean_gold'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__clean_gold'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__clean_gold'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__clean_iron'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__clean_iron'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__clean_iron'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__clean_lead'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__clean_lead'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__clean_lead'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__clean_osmium'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__clean_osmium'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__clean_osmium'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__clean_tin'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__clean_tin'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__clean_tin'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__clean_uranium'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__clean_uranium'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__clean_uranium'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__cyan'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__cyan'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__cyan'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__dark_red'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__dark_red'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__dark_red'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__diamond'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__diamond'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__diamond'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__dirty_copper'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__dirty_copper'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__dirty_copper'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__dirty_gold'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__dirty_gold'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__dirty_gold'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__dirty_iron'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__dirty_iron'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__dirty_iron'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__dirty_lead'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__dirty_lead'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__dirty_lead'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__dirty_osmium'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__dirty_osmium'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__dirty_osmium'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__dirty_tin'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__dirty_tin'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__dirty_tin'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__dirty_uranium'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__dirty_uranium'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__dirty_uranium'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__ethene'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__ethene'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__ethene'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__fissile_fuel'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__fissile_fuel'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__fissile_fuel'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__fungi'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__fungi'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__fungi'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__gold'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__gold'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__gold'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__gray'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__gray'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__gray'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__green'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__green'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__green'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__hydrofluoric_acid'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__hydrofluoric_acid'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__hydrofluoric_acid'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__hydrogen'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__hydrogen'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__hydrogen'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__hydrogen_chloride'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__hydrogen_chloride'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__hydrogen_chloride'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__light_blue'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__light_blue'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__light_blue'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__light_gray'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__light_gray'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__light_gray'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__lime'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__lime'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__lime'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__lithium'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__lithium'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__lithium'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__magenta'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__magenta'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__magenta'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__nuclear_waste'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__nuclear_waste'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__nuclear_waste'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__orange'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__orange'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__orange'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__osmium'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__osmium'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__osmium'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__oxygen'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__oxygen'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__oxygen'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__pink'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__pink'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__pink'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__plutonium'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__plutonium'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__plutonium'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__polonium'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__polonium'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__polonium'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__purple'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__purple'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__purple'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__red'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__red'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__red'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__redstone'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__redstone'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__redstone'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__refined_obsidian'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__refined_obsidian'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__refined_obsidian'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__sodium'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__sodium'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__sodium'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__spent_nuclear_waste'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__spent_nuclear_waste'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__spent_nuclear_waste'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__steam'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__steam'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__steam'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__sulfur_dioxide'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__sulfur_dioxide'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__sulfur_dioxide'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__sulfur_trioxide'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__sulfur_trioxide'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__sulfur_trioxide'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__sulfuric_acid'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__sulfuric_acid'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__sulfuric_acid'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__superheated_sodium'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__superheated_sodium'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__superheated_sodium'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__tin'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__tin'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__tin'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__uranium_hexafluoride'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__uranium_hexafluoride'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__uranium_hexafluoride'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__uranium_oxide'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__uranium_oxide'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__uranium_oxide'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__water_vapor'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__water_vapor'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__water_vapor'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__white'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__white'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__white'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__yellow'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__yellow'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanism__yellow'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanismgenerators__deuterium'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanismgenerators__deuterium'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanismgenerators__deuterium'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanismgenerators__fusion_fuel'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanismgenerators__fusion_fuel'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanismgenerators__fusion_fuel'}]}}.png differ diff --git a/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanismgenerators__tritium'}]}}.png b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanismgenerators__tritium'}]}}.png new file mode 100644 index 00000000..0a52f3d0 Binary files /dev/null and b/public/textures/mekanism/creative_chemical_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__9223372036854775807L,id__'mekanismgenerators__tritium'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank.png b/public/textures/mekanism/creative_fluid_tank.png new file mode 100644 index 00000000..34086eef Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__beer'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__beer'}]}}.png new file mode 100644 index 00000000..088bc50b Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__beer'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__bloody_mary'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__bloody_mary'}]}}.png new file mode 100644 index 00000000..1e8e5439 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__bloody_mary'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__dread_nog'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__dread_nog'}]}}.png new file mode 100644 index 00000000..36d294d8 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__dread_nog'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__egg_grog'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__egg_grog'}]}}.png new file mode 100644 index 00000000..ee1fffe7 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__egg_grog'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__flaxen_cheese'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__flaxen_cheese'}]}}.png new file mode 100644 index 00000000..789a682c Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__flaxen_cheese'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__glittering_grenadine'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__glittering_grenadine'}]}}.png new file mode 100644 index 00000000..e03e051e Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__glittering_grenadine'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__honey'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__honey'}]}}.png new file mode 100644 index 00000000..29296f45 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__honey'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__kombucha'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__kombucha'}]}}.png new file mode 100644 index 00000000..afc575f9 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__kombucha'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__mead'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__mead'}]}}.png new file mode 100644 index 00000000..b34f8461 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__mead'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__pale_jane'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__pale_jane'}]}}.png new file mode 100644 index 00000000..d43a90b6 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__pale_jane'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__red_rum'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__red_rum'}]}}.png new file mode 100644 index 00000000..092d4b0f Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__red_rum'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__rice_wine'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__rice_wine'}]}}.png new file mode 100644 index 00000000..ee1fffe7 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__rice_wine'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__saccharine_rum'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__saccharine_rum'}]}}.png new file mode 100644 index 00000000..d7cd784c Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__saccharine_rum'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__salty_folly'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__salty_folly'}]}}.png new file mode 100644 index 00000000..b55e799a Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__salty_folly'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__scarlet_cheese'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__scarlet_cheese'}]}}.png new file mode 100644 index 00000000..80bc9f40 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__scarlet_cheese'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__steel_toe_stout'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__steel_toe_stout'}]}}.png new file mode 100644 index 00000000..48c061b6 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__steel_toe_stout'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__strongroot_ale'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__strongroot_ale'}]}}.png new file mode 100644 index 00000000..7a772f50 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__strongroot_ale'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__vodka'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__vodka'}]}}.png new file mode 100644 index 00000000..6eb5de6a Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__vodka'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__withering_dross'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__withering_dross'}]}}.png new file mode 100644 index 00000000..c93fcb92 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'brewinandchewin__withering_dross'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create__chocolate'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create__chocolate'}]}}.png new file mode 100644 index 00000000..cc422616 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create__chocolate'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create__honey'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create__honey'}]}}.png new file mode 100644 index 00000000..92bea220 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create__honey'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create__potion'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create__potion'}]}}.png new file mode 100644 index 00000000..2a9bfdd7 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create__potion'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create__tea'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create__tea'}]}}.png new file mode 100644 index 00000000..191d8c44 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create__tea'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__black_dye'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__black_dye'}]}}.png new file mode 100644 index 00000000..24bcc31b Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__black_dye'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__blue_dye'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__blue_dye'}]}}.png new file mode 100644 index 00000000..7aef284c Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__blue_dye'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__brown_dye'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__brown_dye'}]}}.png new file mode 100644 index 00000000..2d3b5846 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__brown_dye'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__cyan_dye'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__cyan_dye'}]}}.png new file mode 100644 index 00000000..3675db9f Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__cyan_dye'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__dragon_breath'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__dragon_breath'}]}}.png new file mode 100644 index 00000000..dfcbfc31 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__dragon_breath'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__gray_dye'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__gray_dye'}]}}.png new file mode 100644 index 00000000..131b0b3d Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__gray_dye'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__green_dye'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__green_dye'}]}}.png new file mode 100644 index 00000000..165ade8b Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__green_dye'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__light_blue_dye'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__light_blue_dye'}]}}.png new file mode 100644 index 00000000..fac9b081 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__light_blue_dye'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__light_gray_dye'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__light_gray_dye'}]}}.png new file mode 100644 index 00000000..45447ac0 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__light_gray_dye'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__lime_dye'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__lime_dye'}]}}.png new file mode 100644 index 00000000..0f172830 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__lime_dye'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__magenta_dye'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__magenta_dye'}]}}.png new file mode 100644 index 00000000..55b44012 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__magenta_dye'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__orange_dye'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__orange_dye'}]}}.png new file mode 100644 index 00000000..338a8017 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__orange_dye'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__pink_dye'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__pink_dye'}]}}.png new file mode 100644 index 00000000..c292b30b Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__pink_dye'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__purple_dye'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__purple_dye'}]}}.png new file mode 100644 index 00000000..c9cd6bc6 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__purple_dye'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__red_dye'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__red_dye'}]}}.png new file mode 100644 index 00000000..ceb6e713 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__red_dye'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__white_dye'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__white_dye'}]}}.png new file mode 100644 index 00000000..fa619bb8 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__white_dye'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__yellow_dye'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__yellow_dye'}]}}.png new file mode 100644 index 00000000..b66276cd Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_dragons_plus__yellow_dye'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_enchantment_industry__experience'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_enchantment_industry__experience'}]}}.png new file mode 100644 index 00000000..0c155397 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'create_enchantment_industry__experience'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'createaddition__bioethanol'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'createaddition__bioethanol'}]}}.png new file mode 100644 index 00000000..ac860542 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'createaddition__bioethanol'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'createaddition__seed_oil'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'createaddition__seed_oil'}]}}.png new file mode 100644 index 00000000..af0e2851 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'createaddition__seed_oil'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__acetaldehyde'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__acetaldehyde'}]}}.png new file mode 100644 index 00000000..4d332218 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__acetaldehyde'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__biodiesel'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__biodiesel'}]}}.png new file mode 100644 index 00000000..bcab96ef Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__biodiesel'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__concrete'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__concrete'}]}}.png new file mode 100644 index 00000000..c8e49ca2 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__concrete'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__creosote'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__creosote'}]}}.png new file mode 100644 index 00000000..088189e2 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__creosote'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__ethanol'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__ethanol'}]}}.png new file mode 100644 index 00000000..a6acf734 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__ethanol'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__herbicide'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__herbicide'}]}}.png new file mode 100644 index 00000000..9991aede Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__herbicide'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__high_power_biodiesel'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__high_power_biodiesel'}]}}.png new file mode 100644 index 00000000..bcab96ef Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__high_power_biodiesel'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__phenolic_resin'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__phenolic_resin'}]}}.png new file mode 100644 index 00000000..b2cc4e5b Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__phenolic_resin'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__plantoil'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__plantoil'}]}}.png new file mode 100644 index 00000000..00b8ee1d Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__plantoil'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__potion'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__potion'}]}}.png new file mode 100644 index 00000000..a63f1713 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__potion'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__redstone_acid'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__redstone_acid'}]}}.png new file mode 100644 index 00000000..0c42d326 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'immersiveengineering__redstone_acid'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__brine'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__brine'}]}}.png new file mode 100644 index 00000000..d7fb951b Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__brine'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__chlorine'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__chlorine'}]}}.png new file mode 100644 index 00000000..fb078572 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__chlorine'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__ethene'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__ethene'}]}}.png new file mode 100644 index 00000000..009915d2 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__ethene'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__heavy_water'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__heavy_water'}]}}.png new file mode 100644 index 00000000..0be33160 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__heavy_water'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__hydrofluoric_acid'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__hydrofluoric_acid'}]}}.png new file mode 100644 index 00000000..57ee67a9 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__hydrofluoric_acid'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__hydrogen'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__hydrogen'}]}}.png new file mode 100644 index 00000000..f866a115 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__hydrogen'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__hydrogen_chloride'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__hydrogen_chloride'}]}}.png new file mode 100644 index 00000000..4e86ac95 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__hydrogen_chloride'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__lithium'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__lithium'}]}}.png new file mode 100644 index 00000000..d0f8eaec Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__lithium'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__nutritional_paste'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__nutritional_paste'}]}}.png new file mode 100644 index 00000000..5dae886b Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__nutritional_paste'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__oxygen'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__oxygen'}]}}.png new file mode 100644 index 00000000..ecd12b3b Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__oxygen'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__sodium'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__sodium'}]}}.png new file mode 100644 index 00000000..f8346276 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__sodium'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__steam'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__steam'}]}}.png new file mode 100644 index 00000000..79b9bd22 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__steam'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__sulfur_dioxide'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__sulfur_dioxide'}]}}.png new file mode 100644 index 00000000..7398253c Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__sulfur_dioxide'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__sulfur_trioxide'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__sulfur_trioxide'}]}}.png new file mode 100644 index 00000000..ec631930 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__sulfur_trioxide'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__sulfuric_acid'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__sulfuric_acid'}]}}.png new file mode 100644 index 00000000..c22b9f76 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__sulfuric_acid'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__superheated_sodium'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__superheated_sodium'}]}}.png new file mode 100644 index 00000000..5b9a6fcc Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__superheated_sodium'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__uranium_hexafluoride'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__uranium_hexafluoride'}]}}.png new file mode 100644 index 00000000..408316f3 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__uranium_hexafluoride'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__uranium_oxide'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__uranium_oxide'}]}}.png new file mode 100644 index 00000000..4206f955 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanism__uranium_oxide'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanismgenerators__bioethanol'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanismgenerators__bioethanol'}]}}.png new file mode 100644 index 00000000..e9ad61ee Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanismgenerators__bioethanol'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanismgenerators__deuterium'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanismgenerators__deuterium'}]}}.png new file mode 100644 index 00000000..f70e34b9 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanismgenerators__deuterium'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanismgenerators__fusion_fuel'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanismgenerators__fusion_fuel'}]}}.png new file mode 100644 index 00000000..caf21f0b Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanismgenerators__fusion_fuel'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanismgenerators__tritium'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanismgenerators__tritium'}]}}.png new file mode 100644 index 00000000..9a26c197 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'mekanismgenerators__tritium'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'minecraft__lava'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'minecraft__lava'}]}}.png new file mode 100644 index 00000000..84d307b6 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'minecraft__lava'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'minecraft__milk'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'minecraft__milk'}]}}.png new file mode 100644 index 00000000..1b27f30f Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'minecraft__milk'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'minecraft__water'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'minecraft__water'}]}}.png new file mode 100644 index 00000000..f24e3b27 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'minecraft__water'}]}}.png differ diff --git a/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'sophisticatedcore__xp_still'}]}}.png b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'sophisticatedcore__xp_still'}]}}.png new file mode 100644 index 00000000..148f1227 Binary files /dev/null and b/public/textures/mekanism/creative_fluid_tank__{'mekanism__fluids'__{fluid_tanks__[{amount__2147483647,id__'sophisticatedcore__xp_still'}]}}.png differ diff --git a/public/textures/mekanism/crusher.png b/public/textures/mekanism/crusher.png new file mode 100644 index 00000000..f2e360f0 Binary files /dev/null and b/public/textures/mekanism/crusher.png differ diff --git a/public/textures/mekanism/crystal_copper.png b/public/textures/mekanism/crystal_copper.png new file mode 100644 index 00000000..198fa469 Binary files /dev/null and b/public/textures/mekanism/crystal_copper.png differ diff --git a/public/textures/mekanism/crystal_gold.png b/public/textures/mekanism/crystal_gold.png new file mode 100644 index 00000000..7951ec9c Binary files /dev/null and b/public/textures/mekanism/crystal_gold.png differ diff --git a/public/textures/mekanism/crystal_iron.png b/public/textures/mekanism/crystal_iron.png new file mode 100644 index 00000000..57ca1ec4 Binary files /dev/null and b/public/textures/mekanism/crystal_iron.png differ diff --git a/public/textures/mekanism/crystal_lead.png b/public/textures/mekanism/crystal_lead.png new file mode 100644 index 00000000..26ef4a7d Binary files /dev/null and b/public/textures/mekanism/crystal_lead.png differ diff --git a/public/textures/mekanism/crystal_osmium.png b/public/textures/mekanism/crystal_osmium.png new file mode 100644 index 00000000..5027a28e Binary files /dev/null and b/public/textures/mekanism/crystal_osmium.png differ diff --git a/public/textures/mekanism/crystal_tin.png b/public/textures/mekanism/crystal_tin.png new file mode 100644 index 00000000..87beabb3 Binary files /dev/null and b/public/textures/mekanism/crystal_tin.png differ diff --git a/public/textures/mekanism/crystal_uranium.png b/public/textures/mekanism/crystal_uranium.png new file mode 100644 index 00000000..f5dc86dd Binary files /dev/null and b/public/textures/mekanism/crystal_uranium.png differ diff --git a/public/textures/mekanism/deepslate_fluorite_ore.png b/public/textures/mekanism/deepslate_fluorite_ore.png new file mode 100644 index 00000000..4bf5f243 Binary files /dev/null and b/public/textures/mekanism/deepslate_fluorite_ore.png differ diff --git a/public/textures/mekanism/deepslate_lead_ore.png b/public/textures/mekanism/deepslate_lead_ore.png new file mode 100644 index 00000000..1b098c80 Binary files /dev/null and b/public/textures/mekanism/deepslate_lead_ore.png differ diff --git a/public/textures/mekanism/deepslate_osmium_ore.png b/public/textures/mekanism/deepslate_osmium_ore.png new file mode 100644 index 00000000..9f10179c Binary files /dev/null and b/public/textures/mekanism/deepslate_osmium_ore.png differ diff --git a/public/textures/mekanism/deepslate_tin_ore.png b/public/textures/mekanism/deepslate_tin_ore.png new file mode 100644 index 00000000..342256a8 Binary files /dev/null and b/public/textures/mekanism/deepslate_tin_ore.png differ diff --git a/public/textures/mekanism/deepslate_uranium_ore.png b/public/textures/mekanism/deepslate_uranium_ore.png new file mode 100644 index 00000000..5917b9de Binary files /dev/null and b/public/textures/mekanism/deepslate_uranium_ore.png differ diff --git a/public/textures/mekanism/dictionary.png b/public/textures/mekanism/dictionary.png new file mode 100644 index 00000000..c8bb1d5a Binary files /dev/null and b/public/textures/mekanism/dictionary.png differ diff --git a/public/textures/mekanism/digital_miner.png b/public/textures/mekanism/digital_miner.png new file mode 100644 index 00000000..928c8549 Binary files /dev/null and b/public/textures/mekanism/digital_miner.png differ diff --git a/public/textures/mekanism/dimensional_stabilizer.png b/public/textures/mekanism/dimensional_stabilizer.png new file mode 100644 index 00000000..00d8cb9c Binary files /dev/null and b/public/textures/mekanism/dimensional_stabilizer.png differ diff --git a/public/textures/mekanism/dirty_dust_copper.png b/public/textures/mekanism/dirty_dust_copper.png new file mode 100644 index 00000000..4fbdcf7c Binary files /dev/null and b/public/textures/mekanism/dirty_dust_copper.png differ diff --git a/public/textures/mekanism/dirty_dust_gold.png b/public/textures/mekanism/dirty_dust_gold.png new file mode 100644 index 00000000..a4a92907 Binary files /dev/null and b/public/textures/mekanism/dirty_dust_gold.png differ diff --git a/public/textures/mekanism/dirty_dust_iron.png b/public/textures/mekanism/dirty_dust_iron.png new file mode 100644 index 00000000..30d69854 Binary files /dev/null and b/public/textures/mekanism/dirty_dust_iron.png differ diff --git a/public/textures/mekanism/dirty_dust_lead.png b/public/textures/mekanism/dirty_dust_lead.png new file mode 100644 index 00000000..2dac076d Binary files /dev/null and b/public/textures/mekanism/dirty_dust_lead.png differ diff --git a/public/textures/mekanism/dirty_dust_osmium.png b/public/textures/mekanism/dirty_dust_osmium.png new file mode 100644 index 00000000..2781beee Binary files /dev/null and b/public/textures/mekanism/dirty_dust_osmium.png differ diff --git a/public/textures/mekanism/dirty_dust_tin.png b/public/textures/mekanism/dirty_dust_tin.png new file mode 100644 index 00000000..bbddef07 Binary files /dev/null and b/public/textures/mekanism/dirty_dust_tin.png differ diff --git a/public/textures/mekanism/dirty_dust_uranium.png b/public/textures/mekanism/dirty_dust_uranium.png new file mode 100644 index 00000000..dd7f0d5c Binary files /dev/null and b/public/textures/mekanism/dirty_dust_uranium.png differ diff --git a/public/textures/mekanism/dirty_netherite_scrap.png b/public/textures/mekanism/dirty_netherite_scrap.png new file mode 100644 index 00000000..2bce36d0 Binary files /dev/null and b/public/textures/mekanism/dirty_netherite_scrap.png differ diff --git a/public/textures/mekanism/diversion_transporter.png b/public/textures/mekanism/diversion_transporter.png new file mode 100644 index 00000000..80746ba7 Binary files /dev/null and b/public/textures/mekanism/diversion_transporter.png differ diff --git a/public/textures/mekanism/dosimeter.png b/public/textures/mekanism/dosimeter.png new file mode 100644 index 00000000..0ef334e1 Binary files /dev/null and b/public/textures/mekanism/dosimeter.png differ diff --git a/public/textures/mekanism/dust_bronze.png b/public/textures/mekanism/dust_bronze.png new file mode 100644 index 00000000..2bcc41f0 Binary files /dev/null and b/public/textures/mekanism/dust_bronze.png differ diff --git a/public/textures/mekanism/dust_charcoal.png b/public/textures/mekanism/dust_charcoal.png new file mode 100644 index 00000000..da647062 Binary files /dev/null and b/public/textures/mekanism/dust_charcoal.png differ diff --git a/public/textures/mekanism/dust_coal.png b/public/textures/mekanism/dust_coal.png new file mode 100644 index 00000000..24073b64 Binary files /dev/null and b/public/textures/mekanism/dust_coal.png differ diff --git a/public/textures/mekanism/dust_copper.png b/public/textures/mekanism/dust_copper.png new file mode 100644 index 00000000..05dd7788 Binary files /dev/null and b/public/textures/mekanism/dust_copper.png differ diff --git a/public/textures/mekanism/dust_diamond.png b/public/textures/mekanism/dust_diamond.png new file mode 100644 index 00000000..8dd02982 Binary files /dev/null and b/public/textures/mekanism/dust_diamond.png differ diff --git a/public/textures/mekanism/dust_emerald.png b/public/textures/mekanism/dust_emerald.png new file mode 100644 index 00000000..cec6b87b Binary files /dev/null and b/public/textures/mekanism/dust_emerald.png differ diff --git a/public/textures/mekanism/dust_fluorite.png b/public/textures/mekanism/dust_fluorite.png new file mode 100644 index 00000000..661b9faf Binary files /dev/null and b/public/textures/mekanism/dust_fluorite.png differ diff --git a/public/textures/mekanism/dust_gold.png b/public/textures/mekanism/dust_gold.png new file mode 100644 index 00000000..965cbec0 Binary files /dev/null and b/public/textures/mekanism/dust_gold.png differ diff --git a/public/textures/mekanism/dust_iron.png b/public/textures/mekanism/dust_iron.png new file mode 100644 index 00000000..e98789e3 Binary files /dev/null and b/public/textures/mekanism/dust_iron.png differ diff --git a/public/textures/mekanism/dust_lapis_lazuli.png b/public/textures/mekanism/dust_lapis_lazuli.png new file mode 100644 index 00000000..28b5e361 Binary files /dev/null and b/public/textures/mekanism/dust_lapis_lazuli.png differ diff --git a/public/textures/mekanism/dust_lead.png b/public/textures/mekanism/dust_lead.png new file mode 100644 index 00000000..ba9e1ac0 Binary files /dev/null and b/public/textures/mekanism/dust_lead.png differ diff --git a/public/textures/mekanism/dust_lithium.png b/public/textures/mekanism/dust_lithium.png new file mode 100644 index 00000000..e6b43923 Binary files /dev/null and b/public/textures/mekanism/dust_lithium.png differ diff --git a/public/textures/mekanism/dust_netherite.png b/public/textures/mekanism/dust_netherite.png new file mode 100644 index 00000000..5b17e57e Binary files /dev/null and b/public/textures/mekanism/dust_netherite.png differ diff --git a/public/textures/mekanism/dust_obsidian.png b/public/textures/mekanism/dust_obsidian.png new file mode 100644 index 00000000..1c7f9d7f Binary files /dev/null and b/public/textures/mekanism/dust_obsidian.png differ diff --git a/public/textures/mekanism/dust_osmium.png b/public/textures/mekanism/dust_osmium.png new file mode 100644 index 00000000..47675518 Binary files /dev/null and b/public/textures/mekanism/dust_osmium.png differ diff --git a/public/textures/mekanism/dust_quartz.png b/public/textures/mekanism/dust_quartz.png new file mode 100644 index 00000000..704da189 Binary files /dev/null and b/public/textures/mekanism/dust_quartz.png differ diff --git a/public/textures/mekanism/dust_refined_obsidian.png b/public/textures/mekanism/dust_refined_obsidian.png new file mode 100644 index 00000000..4b6e466b Binary files /dev/null and b/public/textures/mekanism/dust_refined_obsidian.png differ diff --git a/public/textures/mekanism/dust_steel.png b/public/textures/mekanism/dust_steel.png new file mode 100644 index 00000000..54ad68a8 Binary files /dev/null and b/public/textures/mekanism/dust_steel.png differ diff --git a/public/textures/mekanism/dust_sulfur.png b/public/textures/mekanism/dust_sulfur.png new file mode 100644 index 00000000..4c0c1ffb Binary files /dev/null and b/public/textures/mekanism/dust_sulfur.png differ diff --git a/public/textures/mekanism/dust_tin.png b/public/textures/mekanism/dust_tin.png new file mode 100644 index 00000000..dd9f4b9a Binary files /dev/null and b/public/textures/mekanism/dust_tin.png differ diff --git a/public/textures/mekanism/dust_uranium.png b/public/textures/mekanism/dust_uranium.png new file mode 100644 index 00000000..ae58207f Binary files /dev/null and b/public/textures/mekanism/dust_uranium.png differ diff --git a/public/textures/mekanism/dye_base.png b/public/textures/mekanism/dye_base.png new file mode 100644 index 00000000..2d248eda Binary files /dev/null and b/public/textures/mekanism/dye_base.png differ diff --git a/public/textures/mekanism/dynamic_tank.png b/public/textures/mekanism/dynamic_tank.png new file mode 100644 index 00000000..1175aeac Binary files /dev/null and b/public/textures/mekanism/dynamic_tank.png differ diff --git a/public/textures/mekanism/dynamic_valve.png b/public/textures/mekanism/dynamic_valve.png new file mode 100644 index 00000000..7c7e8dd0 Binary files /dev/null and b/public/textures/mekanism/dynamic_valve.png differ diff --git a/public/textures/mekanism/electric_bow.png b/public/textures/mekanism/electric_bow.png new file mode 100644 index 00000000..9ac49f79 Binary files /dev/null and b/public/textures/mekanism/electric_bow.png differ diff --git a/public/textures/mekanism/electric_bow__{'mekanism__energy'__{energy_containers__[L;120000L]}}.png b/public/textures/mekanism/electric_bow__{'mekanism__energy'__{energy_containers__[L;120000L]}}.png new file mode 100644 index 00000000..9ac49f79 Binary files /dev/null and b/public/textures/mekanism/electric_bow__{'mekanism__energy'__{energy_containers__[L;120000L]}}.png differ diff --git a/public/textures/mekanism/electric_pump.png b/public/textures/mekanism/electric_pump.png new file mode 100644 index 00000000..446acae7 Binary files /dev/null and b/public/textures/mekanism/electric_pump.png differ diff --git a/public/textures/mekanism/electrolytic_core.png b/public/textures/mekanism/electrolytic_core.png new file mode 100644 index 00000000..f28d7621 Binary files /dev/null and b/public/textures/mekanism/electrolytic_core.png differ diff --git a/public/textures/mekanism/electrolytic_separator.png b/public/textures/mekanism/electrolytic_separator.png new file mode 100644 index 00000000..d61dcd60 Binary files /dev/null and b/public/textures/mekanism/electrolytic_separator.png differ diff --git a/public/textures/mekanism/elite_bin.png b/public/textures/mekanism/elite_bin.png new file mode 100644 index 00000000..74f7b7da Binary files /dev/null and b/public/textures/mekanism/elite_bin.png differ diff --git a/public/textures/mekanism/elite_chemical_tank.png b/public/textures/mekanism/elite_chemical_tank.png new file mode 100644 index 00000000..0c5bb478 Binary files /dev/null and b/public/textures/mekanism/elite_chemical_tank.png differ diff --git a/public/textures/mekanism/elite_combining_factory.png b/public/textures/mekanism/elite_combining_factory.png new file mode 100644 index 00000000..de5cc3be Binary files /dev/null and b/public/textures/mekanism/elite_combining_factory.png differ diff --git a/public/textures/mekanism/elite_compressing_factory.png b/public/textures/mekanism/elite_compressing_factory.png new file mode 100644 index 00000000..254f7353 Binary files /dev/null and b/public/textures/mekanism/elite_compressing_factory.png differ diff --git a/public/textures/mekanism/elite_control_circuit.png b/public/textures/mekanism/elite_control_circuit.png new file mode 100644 index 00000000..9300adb0 Binary files /dev/null and b/public/textures/mekanism/elite_control_circuit.png differ diff --git a/public/textures/mekanism/elite_crushing_factory.png b/public/textures/mekanism/elite_crushing_factory.png new file mode 100644 index 00000000..f27a87c3 Binary files /dev/null and b/public/textures/mekanism/elite_crushing_factory.png differ diff --git a/public/textures/mekanism/elite_energy_cube.png b/public/textures/mekanism/elite_energy_cube.png new file mode 100644 index 00000000..a6b7a52a Binary files /dev/null and b/public/textures/mekanism/elite_energy_cube.png differ diff --git a/public/textures/mekanism/elite_energy_cube__{'mekanism__energy'__{energy_containers__[L;64000000L]}}.png b/public/textures/mekanism/elite_energy_cube__{'mekanism__energy'__{energy_containers__[L;64000000L]}}.png new file mode 100644 index 00000000..b85f5edf Binary files /dev/null and b/public/textures/mekanism/elite_energy_cube__{'mekanism__energy'__{energy_containers__[L;64000000L]}}.png differ diff --git a/public/textures/mekanism/elite_enriching_factory.png b/public/textures/mekanism/elite_enriching_factory.png new file mode 100644 index 00000000..562ebd0d Binary files /dev/null and b/public/textures/mekanism/elite_enriching_factory.png differ diff --git a/public/textures/mekanism/elite_fluid_tank.png b/public/textures/mekanism/elite_fluid_tank.png new file mode 100644 index 00000000..d44530b0 Binary files /dev/null and b/public/textures/mekanism/elite_fluid_tank.png differ diff --git a/public/textures/mekanism/elite_induction_cell.png b/public/textures/mekanism/elite_induction_cell.png new file mode 100644 index 00000000..ffdbc12a Binary files /dev/null and b/public/textures/mekanism/elite_induction_cell.png differ diff --git a/public/textures/mekanism/elite_induction_provider.png b/public/textures/mekanism/elite_induction_provider.png new file mode 100644 index 00000000..1fe03fd8 Binary files /dev/null and b/public/textures/mekanism/elite_induction_provider.png differ diff --git a/public/textures/mekanism/elite_infusing_factory.png b/public/textures/mekanism/elite_infusing_factory.png new file mode 100644 index 00000000..8d31db6a Binary files /dev/null and b/public/textures/mekanism/elite_infusing_factory.png differ diff --git a/public/textures/mekanism/elite_injecting_factory.png b/public/textures/mekanism/elite_injecting_factory.png new file mode 100644 index 00000000..8c39a12b Binary files /dev/null and b/public/textures/mekanism/elite_injecting_factory.png differ diff --git a/public/textures/mekanism/elite_logistical_transporter.png b/public/textures/mekanism/elite_logistical_transporter.png new file mode 100644 index 00000000..f38a104e Binary files /dev/null and b/public/textures/mekanism/elite_logistical_transporter.png differ diff --git a/public/textures/mekanism/elite_mechanical_pipe.png b/public/textures/mekanism/elite_mechanical_pipe.png new file mode 100644 index 00000000..e96fcd86 Binary files /dev/null and b/public/textures/mekanism/elite_mechanical_pipe.png differ diff --git a/public/textures/mekanism/elite_pressurized_tube.png b/public/textures/mekanism/elite_pressurized_tube.png new file mode 100644 index 00000000..fdca4050 Binary files /dev/null and b/public/textures/mekanism/elite_pressurized_tube.png differ diff --git a/public/textures/mekanism/elite_purifying_factory.png b/public/textures/mekanism/elite_purifying_factory.png new file mode 100644 index 00000000..626931e7 Binary files /dev/null and b/public/textures/mekanism/elite_purifying_factory.png differ diff --git a/public/textures/mekanism/elite_sawing_factory.png b/public/textures/mekanism/elite_sawing_factory.png new file mode 100644 index 00000000..9c215645 Binary files /dev/null and b/public/textures/mekanism/elite_sawing_factory.png differ diff --git a/public/textures/mekanism/elite_smelting_factory.png b/public/textures/mekanism/elite_smelting_factory.png new file mode 100644 index 00000000..50e388a6 Binary files /dev/null and b/public/textures/mekanism/elite_smelting_factory.png differ diff --git a/public/textures/mekanism/elite_thermodynamic_conductor.png b/public/textures/mekanism/elite_thermodynamic_conductor.png new file mode 100644 index 00000000..5684e585 Binary files /dev/null and b/public/textures/mekanism/elite_thermodynamic_conductor.png differ diff --git a/public/textures/mekanism/elite_tier_installer.png b/public/textures/mekanism/elite_tier_installer.png new file mode 100644 index 00000000..25691d00 Binary files /dev/null and b/public/textures/mekanism/elite_tier_installer.png differ diff --git a/public/textures/mekanism/elite_universal_cable.png b/public/textures/mekanism/elite_universal_cable.png new file mode 100644 index 00000000..6e30eb4a Binary files /dev/null and b/public/textures/mekanism/elite_universal_cable.png differ diff --git a/public/textures/mekanism/energized_smelter.png b/public/textures/mekanism/energized_smelter.png new file mode 100644 index 00000000..c8ddd4a0 Binary files /dev/null and b/public/textures/mekanism/energized_smelter.png differ diff --git a/public/textures/mekanism/energy_tablet.png b/public/textures/mekanism/energy_tablet.png new file mode 100644 index 00000000..41448658 Binary files /dev/null and b/public/textures/mekanism/energy_tablet.png differ diff --git a/public/textures/mekanism/energy_tablet__{'mekanism__energy'__{energy_containers__[L;1000000L]}}.png b/public/textures/mekanism/energy_tablet__{'mekanism__energy'__{energy_containers__[L;1000000L]}}.png new file mode 100644 index 00000000..41448658 Binary files /dev/null and b/public/textures/mekanism/energy_tablet__{'mekanism__energy'__{energy_containers__[L;1000000L]}}.png differ diff --git a/public/textures/mekanism/enriched_carbon.png b/public/textures/mekanism/enriched_carbon.png new file mode 100644 index 00000000..4ccb8e62 Binary files /dev/null and b/public/textures/mekanism/enriched_carbon.png differ diff --git a/public/textures/mekanism/enriched_diamond.png b/public/textures/mekanism/enriched_diamond.png new file mode 100644 index 00000000..60312b8f Binary files /dev/null and b/public/textures/mekanism/enriched_diamond.png differ diff --git a/public/textures/mekanism/enriched_gold.png b/public/textures/mekanism/enriched_gold.png new file mode 100644 index 00000000..794fae44 Binary files /dev/null and b/public/textures/mekanism/enriched_gold.png differ diff --git a/public/textures/mekanism/enriched_iron.png b/public/textures/mekanism/enriched_iron.png new file mode 100644 index 00000000..4f29289f Binary files /dev/null and b/public/textures/mekanism/enriched_iron.png differ diff --git a/public/textures/mekanism/enriched_redstone.png b/public/textures/mekanism/enriched_redstone.png new file mode 100644 index 00000000..1d348f0d Binary files /dev/null and b/public/textures/mekanism/enriched_redstone.png differ diff --git a/public/textures/mekanism/enriched_refined_obsidian.png b/public/textures/mekanism/enriched_refined_obsidian.png new file mode 100644 index 00000000..09df368e Binary files /dev/null and b/public/textures/mekanism/enriched_refined_obsidian.png differ diff --git a/public/textures/mekanism/enriched_tin.png b/public/textures/mekanism/enriched_tin.png new file mode 100644 index 00000000..58844550 Binary files /dev/null and b/public/textures/mekanism/enriched_tin.png differ diff --git a/public/textures/mekanism/enrichment_chamber.png b/public/textures/mekanism/enrichment_chamber.png new file mode 100644 index 00000000..c2620b97 Binary files /dev/null and b/public/textures/mekanism/enrichment_chamber.png differ diff --git a/public/textures/mekanism/ethene_bucket.png b/public/textures/mekanism/ethene_bucket.png new file mode 100644 index 00000000..d526c1ac Binary files /dev/null and b/public/textures/mekanism/ethene_bucket.png differ diff --git a/public/textures/mekanism/flamethrower.png b/public/textures/mekanism/flamethrower.png new file mode 100644 index 00000000..907cbbe8 Binary files /dev/null and b/public/textures/mekanism/flamethrower.png differ diff --git a/public/textures/mekanism/flamethrower__{'mekanism__chemicals'__{chemical_tanks__[{amount__24000L,id__'mekanism__hydrogen'}]}}.png b/public/textures/mekanism/flamethrower__{'mekanism__chemicals'__{chemical_tanks__[{amount__24000L,id__'mekanism__hydrogen'}]}}.png new file mode 100644 index 00000000..907cbbe8 Binary files /dev/null and b/public/textures/mekanism/flamethrower__{'mekanism__chemicals'__{chemical_tanks__[{amount__24000L,id__'mekanism__hydrogen'}]}}.png differ diff --git a/public/textures/mekanism/fluidic_plenisher.png b/public/textures/mekanism/fluidic_plenisher.png new file mode 100644 index 00000000..4bfe8737 Binary files /dev/null and b/public/textures/mekanism/fluidic_plenisher.png differ diff --git a/public/textures/mekanism/fluorite_gem.png b/public/textures/mekanism/fluorite_gem.png new file mode 100644 index 00000000..b16d91ef Binary files /dev/null and b/public/textures/mekanism/fluorite_gem.png differ diff --git a/public/textures/mekanism/fluorite_ore.png b/public/textures/mekanism/fluorite_ore.png new file mode 100644 index 00000000..7f9e27b0 Binary files /dev/null and b/public/textures/mekanism/fluorite_ore.png differ diff --git a/public/textures/mekanism/formulaic_assemblicator.png b/public/textures/mekanism/formulaic_assemblicator.png new file mode 100644 index 00000000..334674b2 Binary files /dev/null and b/public/textures/mekanism/formulaic_assemblicator.png differ diff --git a/public/textures/mekanism/free_runners.png b/public/textures/mekanism/free_runners.png new file mode 100644 index 00000000..b24f3592 Binary files /dev/null and b/public/textures/mekanism/free_runners.png differ diff --git a/public/textures/mekanism/free_runners__{'mekanism__energy'__{energy_containers__[L;64000L]}}.png b/public/textures/mekanism/free_runners__{'mekanism__energy'__{energy_containers__[L;64000L]}}.png new file mode 100644 index 00000000..b24f3592 Binary files /dev/null and b/public/textures/mekanism/free_runners__{'mekanism__energy'__{energy_containers__[L;64000L]}}.png differ diff --git a/public/textures/mekanism/free_runners_armored.png b/public/textures/mekanism/free_runners_armored.png new file mode 100644 index 00000000..fa25c5f0 Binary files /dev/null and b/public/textures/mekanism/free_runners_armored.png differ diff --git a/public/textures/mekanism/free_runners_armored__{'mekanism__energy'__{energy_containers__[L;64000L]}}.png b/public/textures/mekanism/free_runners_armored__{'mekanism__energy'__{energy_containers__[L;64000L]}}.png new file mode 100644 index 00000000..fa25c5f0 Binary files /dev/null and b/public/textures/mekanism/free_runners_armored__{'mekanism__energy'__{energy_containers__[L;64000L]}}.png differ diff --git a/public/textures/mekanism/fuelwood_heater.png b/public/textures/mekanism/fuelwood_heater.png new file mode 100644 index 00000000..8d0b5e3a Binary files /dev/null and b/public/textures/mekanism/fuelwood_heater.png differ diff --git a/public/textures/mekanism/gauge_dropper.png b/public/textures/mekanism/gauge_dropper.png new file mode 100644 index 00000000..1cb6b8b4 Binary files /dev/null and b/public/textures/mekanism/gauge_dropper.png differ diff --git a/public/textures/mekanism/geiger_counter.png b/public/textures/mekanism/geiger_counter.png new file mode 100644 index 00000000..7560a9be Binary files /dev/null and b/public/textures/mekanism/geiger_counter.png differ diff --git a/public/textures/mekanism/hazmat_boots.png b/public/textures/mekanism/hazmat_boots.png new file mode 100644 index 00000000..2d2a8bfe Binary files /dev/null and b/public/textures/mekanism/hazmat_boots.png differ diff --git a/public/textures/mekanism/hazmat_gown.png b/public/textures/mekanism/hazmat_gown.png new file mode 100644 index 00000000..d6e33bd1 Binary files /dev/null and b/public/textures/mekanism/hazmat_gown.png differ diff --git a/public/textures/mekanism/hazmat_mask.png b/public/textures/mekanism/hazmat_mask.png new file mode 100644 index 00000000..fe6d7fd1 Binary files /dev/null and b/public/textures/mekanism/hazmat_mask.png differ diff --git a/public/textures/mekanism/hazmat_pants.png b/public/textures/mekanism/hazmat_pants.png new file mode 100644 index 00000000..8d956a11 Binary files /dev/null and b/public/textures/mekanism/hazmat_pants.png differ diff --git a/public/textures/mekanism/hdpe_elytra.png b/public/textures/mekanism/hdpe_elytra.png new file mode 100644 index 00000000..c1e4bbb5 Binary files /dev/null and b/public/textures/mekanism/hdpe_elytra.png differ diff --git a/public/textures/mekanism/hdpe_pellet.png b/public/textures/mekanism/hdpe_pellet.png new file mode 100644 index 00000000..1cd90ac9 Binary files /dev/null and b/public/textures/mekanism/hdpe_pellet.png differ diff --git a/public/textures/mekanism/hdpe_rod.png b/public/textures/mekanism/hdpe_rod.png new file mode 100644 index 00000000..37a60e4a Binary files /dev/null and b/public/textures/mekanism/hdpe_rod.png differ diff --git a/public/textures/mekanism/hdpe_sheet.png b/public/textures/mekanism/hdpe_sheet.png new file mode 100644 index 00000000..073c258c Binary files /dev/null and b/public/textures/mekanism/hdpe_sheet.png differ diff --git a/public/textures/mekanism/hdpe_stick.png b/public/textures/mekanism/hdpe_stick.png new file mode 100644 index 00000000..32c6a090 Binary files /dev/null and b/public/textures/mekanism/hdpe_stick.png differ diff --git a/public/textures/mekanism/heavy_water_bucket.png b/public/textures/mekanism/heavy_water_bucket.png new file mode 100644 index 00000000..7a236f6b Binary files /dev/null and b/public/textures/mekanism/heavy_water_bucket.png differ diff --git a/public/textures/mekanism/hydrofluoric_acid_bucket.png b/public/textures/mekanism/hydrofluoric_acid_bucket.png new file mode 100644 index 00000000..db582500 Binary files /dev/null and b/public/textures/mekanism/hydrofluoric_acid_bucket.png differ diff --git a/public/textures/mekanism/hydrogen_bucket.png b/public/textures/mekanism/hydrogen_bucket.png new file mode 100644 index 00000000..caf35d9e Binary files /dev/null and b/public/textures/mekanism/hydrogen_bucket.png differ diff --git a/public/textures/mekanism/hydrogen_chloride_bucket.png b/public/textures/mekanism/hydrogen_chloride_bucket.png new file mode 100644 index 00000000..c26f106a Binary files /dev/null and b/public/textures/mekanism/hydrogen_chloride_bucket.png differ diff --git a/public/textures/mekanism/induction_casing.png b/public/textures/mekanism/induction_casing.png new file mode 100644 index 00000000..6b4132ec Binary files /dev/null and b/public/textures/mekanism/induction_casing.png differ diff --git a/public/textures/mekanism/induction_port.png b/public/textures/mekanism/induction_port.png new file mode 100644 index 00000000..b1239e20 Binary files /dev/null and b/public/textures/mekanism/induction_port.png differ diff --git a/public/textures/mekanism/industrial_alarm.png b/public/textures/mekanism/industrial_alarm.png new file mode 100644 index 00000000..67d3fdc9 Binary files /dev/null and b/public/textures/mekanism/industrial_alarm.png differ diff --git a/public/textures/mekanism/ingot_bronze.png b/public/textures/mekanism/ingot_bronze.png new file mode 100644 index 00000000..3aee99ae Binary files /dev/null and b/public/textures/mekanism/ingot_bronze.png differ diff --git a/public/textures/mekanism/ingot_lead.png b/public/textures/mekanism/ingot_lead.png new file mode 100644 index 00000000..d8565145 Binary files /dev/null and b/public/textures/mekanism/ingot_lead.png differ diff --git a/public/textures/mekanism/ingot_osmium.png b/public/textures/mekanism/ingot_osmium.png new file mode 100644 index 00000000..b4cc95fd Binary files /dev/null and b/public/textures/mekanism/ingot_osmium.png differ diff --git a/public/textures/mekanism/ingot_refined_glowstone.png b/public/textures/mekanism/ingot_refined_glowstone.png new file mode 100644 index 00000000..3c7b694d Binary files /dev/null and b/public/textures/mekanism/ingot_refined_glowstone.png differ diff --git a/public/textures/mekanism/ingot_refined_obsidian.png b/public/textures/mekanism/ingot_refined_obsidian.png new file mode 100644 index 00000000..529ec91e Binary files /dev/null and b/public/textures/mekanism/ingot_refined_obsidian.png differ diff --git a/public/textures/mekanism/ingot_steel.png b/public/textures/mekanism/ingot_steel.png new file mode 100644 index 00000000..7264bf03 Binary files /dev/null and b/public/textures/mekanism/ingot_steel.png differ diff --git a/public/textures/mekanism/ingot_tin.png b/public/textures/mekanism/ingot_tin.png new file mode 100644 index 00000000..3f4e8157 Binary files /dev/null and b/public/textures/mekanism/ingot_tin.png differ diff --git a/public/textures/mekanism/ingot_uranium.png b/public/textures/mekanism/ingot_uranium.png new file mode 100644 index 00000000..5abc74a5 Binary files /dev/null and b/public/textures/mekanism/ingot_uranium.png differ diff --git a/public/textures/mekanism/isotopic_centrifuge.png b/public/textures/mekanism/isotopic_centrifuge.png new file mode 100644 index 00000000..ec5b0947 Binary files /dev/null and b/public/textures/mekanism/isotopic_centrifuge.png differ diff --git a/public/textures/mekanism/jetpack.png b/public/textures/mekanism/jetpack.png new file mode 100644 index 00000000..5be858a0 Binary files /dev/null and b/public/textures/mekanism/jetpack.png differ diff --git a/public/textures/mekanism/jetpack__{'mekanism__chemicals'__{chemical_tanks__[{amount__24000L,id__'mekanism__hydrogen'}]}}.png b/public/textures/mekanism/jetpack__{'mekanism__chemicals'__{chemical_tanks__[{amount__24000L,id__'mekanism__hydrogen'}]}}.png new file mode 100644 index 00000000..5be858a0 Binary files /dev/null and b/public/textures/mekanism/jetpack__{'mekanism__chemicals'__{chemical_tanks__[{amount__24000L,id__'mekanism__hydrogen'}]}}.png differ diff --git a/public/textures/mekanism/jetpack_armored.png b/public/textures/mekanism/jetpack_armored.png new file mode 100644 index 00000000..b842a55f Binary files /dev/null and b/public/textures/mekanism/jetpack_armored.png differ diff --git a/public/textures/mekanism/jetpack_armored__{'mekanism__chemicals'__{chemical_tanks__[{amount__24000L,id__'mekanism__hydrogen'}]}}.png b/public/textures/mekanism/jetpack_armored__{'mekanism__chemicals'__{chemical_tanks__[{amount__24000L,id__'mekanism__hydrogen'}]}}.png new file mode 100644 index 00000000..b842a55f Binary files /dev/null and b/public/textures/mekanism/jetpack_armored__{'mekanism__chemicals'__{chemical_tanks__[{amount__24000L,id__'mekanism__hydrogen'}]}}.png differ diff --git a/public/textures/mekanism/laser.png b/public/textures/mekanism/laser.png new file mode 100644 index 00000000..30618c57 Binary files /dev/null and b/public/textures/mekanism/laser.png differ diff --git a/public/textures/mekanism/laser_amplifier.png b/public/textures/mekanism/laser_amplifier.png new file mode 100644 index 00000000..0060c66a Binary files /dev/null and b/public/textures/mekanism/laser_amplifier.png differ diff --git a/public/textures/mekanism/laser_tractor_beam.png b/public/textures/mekanism/laser_tractor_beam.png new file mode 100644 index 00000000..3c026e91 Binary files /dev/null and b/public/textures/mekanism/laser_tractor_beam.png differ diff --git a/public/textures/mekanism/lead_ore.png b/public/textures/mekanism/lead_ore.png new file mode 100644 index 00000000..b66f6d6f Binary files /dev/null and b/public/textures/mekanism/lead_ore.png differ diff --git a/public/textures/mekanism/lithium_bucket.png b/public/textures/mekanism/lithium_bucket.png new file mode 100644 index 00000000..f74d52c9 Binary files /dev/null and b/public/textures/mekanism/lithium_bucket.png differ diff --git a/public/textures/mekanism/logistical_sorter.png b/public/textures/mekanism/logistical_sorter.png new file mode 100644 index 00000000..71aba94a Binary files /dev/null and b/public/textures/mekanism/logistical_sorter.png differ diff --git a/public/textures/mekanism/meka_tool.png b/public/textures/mekanism/meka_tool.png new file mode 100644 index 00000000..7c41e0a1 Binary files /dev/null and b/public/textures/mekanism/meka_tool.png differ diff --git a/public/textures/mekanism/meka_tool__{'mekanism__energy'__{energy_containers__[L;16000000L]}}.png b/public/textures/mekanism/meka_tool__{'mekanism__energy'__{energy_containers__[L;16000000L]}}.png new file mode 100644 index 00000000..7c41e0a1 Binary files /dev/null and b/public/textures/mekanism/meka_tool__{'mekanism__energy'__{energy_containers__[L;16000000L]}}.png differ diff --git a/public/textures/mekanism/mekasuit_bodyarmor.png b/public/textures/mekanism/mekasuit_bodyarmor.png new file mode 100644 index 00000000..f1df0df5 Binary files /dev/null and b/public/textures/mekanism/mekasuit_bodyarmor.png differ diff --git a/public/textures/mekanism/mekasuit_bodyarmor__{'mekanism__energy'__{energy_containers__[L;16000000L]}}.png b/public/textures/mekanism/mekasuit_bodyarmor__{'mekanism__energy'__{energy_containers__[L;16000000L]}}.png new file mode 100644 index 00000000..f1df0df5 Binary files /dev/null and b/public/textures/mekanism/mekasuit_bodyarmor__{'mekanism__energy'__{energy_containers__[L;16000000L]}}.png differ diff --git a/public/textures/mekanism/mekasuit_boots.png b/public/textures/mekanism/mekasuit_boots.png new file mode 100644 index 00000000..26e921b6 Binary files /dev/null and b/public/textures/mekanism/mekasuit_boots.png differ diff --git a/public/textures/mekanism/mekasuit_boots__{'mekanism__energy'__{energy_containers__[L;16000000L]}}.png b/public/textures/mekanism/mekasuit_boots__{'mekanism__energy'__{energy_containers__[L;16000000L]}}.png new file mode 100644 index 00000000..26e921b6 Binary files /dev/null and b/public/textures/mekanism/mekasuit_boots__{'mekanism__energy'__{energy_containers__[L;16000000L]}}.png differ diff --git a/public/textures/mekanism/mekasuit_helmet.png b/public/textures/mekanism/mekasuit_helmet.png new file mode 100644 index 00000000..56e7a5de Binary files /dev/null and b/public/textures/mekanism/mekasuit_helmet.png differ diff --git a/public/textures/mekanism/mekasuit_helmet__{'mekanism__energy'__{energy_containers__[L;16000000L]}}.png b/public/textures/mekanism/mekasuit_helmet__{'mekanism__energy'__{energy_containers__[L;16000000L]}}.png new file mode 100644 index 00000000..56e7a5de Binary files /dev/null and b/public/textures/mekanism/mekasuit_helmet__{'mekanism__energy'__{energy_containers__[L;16000000L]}}.png differ diff --git a/public/textures/mekanism/mekasuit_pants.png b/public/textures/mekanism/mekasuit_pants.png new file mode 100644 index 00000000..e4793262 Binary files /dev/null and b/public/textures/mekanism/mekasuit_pants.png differ diff --git a/public/textures/mekanism/mekasuit_pants__{'mekanism__energy'__{energy_containers__[L;16000000L]}}.png b/public/textures/mekanism/mekasuit_pants__{'mekanism__energy'__{energy_containers__[L;16000000L]}}.png new file mode 100644 index 00000000..e4793262 Binary files /dev/null and b/public/textures/mekanism/mekasuit_pants__{'mekanism__energy'__{energy_containers__[L;16000000L]}}.png differ diff --git a/public/textures/mekanism/metallurgic_infuser.png b/public/textures/mekanism/metallurgic_infuser.png new file mode 100644 index 00000000..f950d642 Binary files /dev/null and b/public/textures/mekanism/metallurgic_infuser.png differ diff --git a/public/textures/mekanism/modification_station.png b/public/textures/mekanism/modification_station.png new file mode 100644 index 00000000..d99265b3 Binary files /dev/null and b/public/textures/mekanism/modification_station.png differ diff --git a/public/textures/mekanism/module_attack_amplification_unit.png b/public/textures/mekanism/module_attack_amplification_unit.png new file mode 100644 index 00000000..1159f9e9 Binary files /dev/null and b/public/textures/mekanism/module_attack_amplification_unit.png differ diff --git a/public/textures/mekanism/module_base.png b/public/textures/mekanism/module_base.png new file mode 100644 index 00000000..d3047c54 Binary files /dev/null and b/public/textures/mekanism/module_base.png differ diff --git a/public/textures/mekanism/module_blasting_unit.png b/public/textures/mekanism/module_blasting_unit.png new file mode 100644 index 00000000..d37084b8 Binary files /dev/null and b/public/textures/mekanism/module_blasting_unit.png differ diff --git a/public/textures/mekanism/module_charge_distribution_unit.png b/public/textures/mekanism/module_charge_distribution_unit.png new file mode 100644 index 00000000..18aaee4d Binary files /dev/null and b/public/textures/mekanism/module_charge_distribution_unit.png differ diff --git a/public/textures/mekanism/module_color_modulation_unit.png b/public/textures/mekanism/module_color_modulation_unit.png new file mode 100644 index 00000000..0c1c9194 Binary files /dev/null and b/public/textures/mekanism/module_color_modulation_unit.png differ diff --git a/public/textures/mekanism/module_dosimeter_unit.png b/public/textures/mekanism/module_dosimeter_unit.png new file mode 100644 index 00000000..f01758c3 Binary files /dev/null and b/public/textures/mekanism/module_dosimeter_unit.png differ diff --git a/public/textures/mekanism/module_electrolytic_breathing_unit.png b/public/textures/mekanism/module_electrolytic_breathing_unit.png new file mode 100644 index 00000000..25891b78 Binary files /dev/null and b/public/textures/mekanism/module_electrolytic_breathing_unit.png differ diff --git a/public/textures/mekanism/module_elytra_unit.png b/public/textures/mekanism/module_elytra_unit.png new file mode 100644 index 00000000..d2cbf0a6 Binary files /dev/null and b/public/textures/mekanism/module_elytra_unit.png differ diff --git a/public/textures/mekanism/module_energy_unit.png b/public/textures/mekanism/module_energy_unit.png new file mode 100644 index 00000000..31133196 Binary files /dev/null and b/public/textures/mekanism/module_energy_unit.png differ diff --git a/public/textures/mekanism/module_excavation_escalation_unit.png b/public/textures/mekanism/module_excavation_escalation_unit.png new file mode 100644 index 00000000..29be1acd Binary files /dev/null and b/public/textures/mekanism/module_excavation_escalation_unit.png differ diff --git a/public/textures/mekanism/module_farming_unit.png b/public/textures/mekanism/module_farming_unit.png new file mode 100644 index 00000000..26822604 Binary files /dev/null and b/public/textures/mekanism/module_farming_unit.png differ diff --git a/public/textures/mekanism/module_fortune_unit.png b/public/textures/mekanism/module_fortune_unit.png new file mode 100644 index 00000000..8ea5b846 Binary files /dev/null and b/public/textures/mekanism/module_fortune_unit.png differ diff --git a/public/textures/mekanism/module_frost_walker_unit.png b/public/textures/mekanism/module_frost_walker_unit.png new file mode 100644 index 00000000..6aa69961 Binary files /dev/null and b/public/textures/mekanism/module_frost_walker_unit.png differ diff --git a/public/textures/mekanism/module_geiger_unit.png b/public/textures/mekanism/module_geiger_unit.png new file mode 100644 index 00000000..ef35aa7c Binary files /dev/null and b/public/textures/mekanism/module_geiger_unit.png differ diff --git a/public/textures/mekanism/module_gravitational_modulating_unit.png b/public/textures/mekanism/module_gravitational_modulating_unit.png new file mode 100644 index 00000000..4c365282 Binary files /dev/null and b/public/textures/mekanism/module_gravitational_modulating_unit.png differ diff --git a/public/textures/mekanism/module_gyroscopic_stabilization_unit.png b/public/textures/mekanism/module_gyroscopic_stabilization_unit.png new file mode 100644 index 00000000..d68be63c Binary files /dev/null and b/public/textures/mekanism/module_gyroscopic_stabilization_unit.png differ diff --git a/public/textures/mekanism/module_hydraulic_propulsion_unit.png b/public/textures/mekanism/module_hydraulic_propulsion_unit.png new file mode 100644 index 00000000..196544f9 Binary files /dev/null and b/public/textures/mekanism/module_hydraulic_propulsion_unit.png differ diff --git a/public/textures/mekanism/module_hydrostatic_repulsor_unit.png b/public/textures/mekanism/module_hydrostatic_repulsor_unit.png new file mode 100644 index 00000000..b1cef643 Binary files /dev/null and b/public/textures/mekanism/module_hydrostatic_repulsor_unit.png differ diff --git a/public/textures/mekanism/module_inhalation_purification_unit.png b/public/textures/mekanism/module_inhalation_purification_unit.png new file mode 100644 index 00000000..9c6fc581 Binary files /dev/null and b/public/textures/mekanism/module_inhalation_purification_unit.png differ diff --git a/public/textures/mekanism/module_jetpack_unit.png b/public/textures/mekanism/module_jetpack_unit.png new file mode 100644 index 00000000..997f3861 Binary files /dev/null and b/public/textures/mekanism/module_jetpack_unit.png differ diff --git a/public/textures/mekanism/module_laser_dissipation_unit.png b/public/textures/mekanism/module_laser_dissipation_unit.png new file mode 100644 index 00000000..4e93c117 Binary files /dev/null and b/public/textures/mekanism/module_laser_dissipation_unit.png differ diff --git a/public/textures/mekanism/module_locomotive_boosting_unit.png b/public/textures/mekanism/module_locomotive_boosting_unit.png new file mode 100644 index 00000000..aa028a9d Binary files /dev/null and b/public/textures/mekanism/module_locomotive_boosting_unit.png differ diff --git a/public/textures/mekanism/module_magnetic_attraction_unit.png b/public/textures/mekanism/module_magnetic_attraction_unit.png new file mode 100644 index 00000000..fbfc5db1 Binary files /dev/null and b/public/textures/mekanism/module_magnetic_attraction_unit.png differ diff --git a/public/textures/mekanism/module_motorized_servo_unit.png b/public/textures/mekanism/module_motorized_servo_unit.png new file mode 100644 index 00000000..9b7c937d Binary files /dev/null and b/public/textures/mekanism/module_motorized_servo_unit.png differ diff --git a/public/textures/mekanism/module_nutritional_injection_unit.png b/public/textures/mekanism/module_nutritional_injection_unit.png new file mode 100644 index 00000000..33df341b Binary files /dev/null and b/public/textures/mekanism/module_nutritional_injection_unit.png differ diff --git a/public/textures/mekanism/module_radiation_shielding_unit.png b/public/textures/mekanism/module_radiation_shielding_unit.png new file mode 100644 index 00000000..c11f153f Binary files /dev/null and b/public/textures/mekanism/module_radiation_shielding_unit.png differ diff --git a/public/textures/mekanism/module_shearing_unit.png b/public/textures/mekanism/module_shearing_unit.png new file mode 100644 index 00000000..2ac79286 Binary files /dev/null and b/public/textures/mekanism/module_shearing_unit.png differ diff --git a/public/textures/mekanism/module_silk_touch_unit.png b/public/textures/mekanism/module_silk_touch_unit.png new file mode 100644 index 00000000..86102b6f Binary files /dev/null and b/public/textures/mekanism/module_silk_touch_unit.png differ diff --git a/public/textures/mekanism/module_soul_surfer_unit.png b/public/textures/mekanism/module_soul_surfer_unit.png new file mode 100644 index 00000000..a0fe21d0 Binary files /dev/null and b/public/textures/mekanism/module_soul_surfer_unit.png differ diff --git a/public/textures/mekanism/module_teleportation_unit.png b/public/textures/mekanism/module_teleportation_unit.png new file mode 100644 index 00000000..4ee3cf96 Binary files /dev/null and b/public/textures/mekanism/module_teleportation_unit.png differ diff --git a/public/textures/mekanism/module_vein_mining_unit.png b/public/textures/mekanism/module_vein_mining_unit.png new file mode 100644 index 00000000..bfe18bc2 Binary files /dev/null and b/public/textures/mekanism/module_vein_mining_unit.png differ diff --git a/public/textures/mekanism/module_vision_enhancement_unit.png b/public/textures/mekanism/module_vision_enhancement_unit.png new file mode 100644 index 00000000..759126b6 Binary files /dev/null and b/public/textures/mekanism/module_vision_enhancement_unit.png differ diff --git a/public/textures/mekanism/network_reader.png b/public/textures/mekanism/network_reader.png new file mode 100644 index 00000000..94edc8e3 Binary files /dev/null and b/public/textures/mekanism/network_reader.png differ diff --git a/public/textures/mekanism/network_reader__{'mekanism__energy'__{energy_containers__[L;60000L]}}.png b/public/textures/mekanism/network_reader__{'mekanism__energy'__{energy_containers__[L;60000L]}}.png new file mode 100644 index 00000000..0092ee46 Binary files /dev/null and b/public/textures/mekanism/network_reader__{'mekanism__energy'__{energy_containers__[L;60000L]}}.png differ diff --git a/public/textures/mekanism/nugget_bronze.png b/public/textures/mekanism/nugget_bronze.png new file mode 100644 index 00000000..13ec1987 Binary files /dev/null and b/public/textures/mekanism/nugget_bronze.png differ diff --git a/public/textures/mekanism/nugget_lead.png b/public/textures/mekanism/nugget_lead.png new file mode 100644 index 00000000..b457b219 Binary files /dev/null and b/public/textures/mekanism/nugget_lead.png differ diff --git a/public/textures/mekanism/nugget_osmium.png b/public/textures/mekanism/nugget_osmium.png new file mode 100644 index 00000000..74df8ea8 Binary files /dev/null and b/public/textures/mekanism/nugget_osmium.png differ diff --git a/public/textures/mekanism/nugget_refined_glowstone.png b/public/textures/mekanism/nugget_refined_glowstone.png new file mode 100644 index 00000000..210b0aba Binary files /dev/null and b/public/textures/mekanism/nugget_refined_glowstone.png differ diff --git a/public/textures/mekanism/nugget_refined_obsidian.png b/public/textures/mekanism/nugget_refined_obsidian.png new file mode 100644 index 00000000..ee1319ae Binary files /dev/null and b/public/textures/mekanism/nugget_refined_obsidian.png differ diff --git a/public/textures/mekanism/nugget_steel.png b/public/textures/mekanism/nugget_steel.png new file mode 100644 index 00000000..8f3662b3 Binary files /dev/null and b/public/textures/mekanism/nugget_steel.png differ diff --git a/public/textures/mekanism/nugget_tin.png b/public/textures/mekanism/nugget_tin.png new file mode 100644 index 00000000..03008d55 Binary files /dev/null and b/public/textures/mekanism/nugget_tin.png differ diff --git a/public/textures/mekanism/nugget_uranium.png b/public/textures/mekanism/nugget_uranium.png new file mode 100644 index 00000000..77aa97ef Binary files /dev/null and b/public/textures/mekanism/nugget_uranium.png differ diff --git a/public/textures/mekanism/nutritional_liquifier.png b/public/textures/mekanism/nutritional_liquifier.png new file mode 100644 index 00000000..6edf9c27 Binary files /dev/null and b/public/textures/mekanism/nutritional_liquifier.png differ diff --git a/public/textures/mekanism/nutritional_paste_bucket.png b/public/textures/mekanism/nutritional_paste_bucket.png new file mode 100644 index 00000000..6dcf73f2 Binary files /dev/null and b/public/textures/mekanism/nutritional_paste_bucket.png differ diff --git a/public/textures/mekanism/oredictionificator.png b/public/textures/mekanism/oredictionificator.png new file mode 100644 index 00000000..3db3070b Binary files /dev/null and b/public/textures/mekanism/oredictionificator.png differ diff --git a/public/textures/mekanism/osmium_compressor.png b/public/textures/mekanism/osmium_compressor.png new file mode 100644 index 00000000..095f3915 Binary files /dev/null and b/public/textures/mekanism/osmium_compressor.png differ diff --git a/public/textures/mekanism/osmium_ore.png b/public/textures/mekanism/osmium_ore.png new file mode 100644 index 00000000..9f9256c4 Binary files /dev/null and b/public/textures/mekanism/osmium_ore.png differ diff --git a/public/textures/mekanism/oxygen_bucket.png b/public/textures/mekanism/oxygen_bucket.png new file mode 100644 index 00000000..acfc87f3 Binary files /dev/null and b/public/textures/mekanism/oxygen_bucket.png differ diff --git a/public/textures/mekanism/painting_machine.png b/public/textures/mekanism/painting_machine.png new file mode 100644 index 00000000..cc36d585 Binary files /dev/null and b/public/textures/mekanism/painting_machine.png differ diff --git a/public/textures/mekanism/pellet_antimatter.png b/public/textures/mekanism/pellet_antimatter.png new file mode 100644 index 00000000..7ebe94dc Binary files /dev/null and b/public/textures/mekanism/pellet_antimatter.png differ diff --git a/public/textures/mekanism/pellet_plutonium.png b/public/textures/mekanism/pellet_plutonium.png new file mode 100644 index 00000000..ab1ce48a Binary files /dev/null and b/public/textures/mekanism/pellet_plutonium.png differ diff --git a/public/textures/mekanism/pellet_polonium.png b/public/textures/mekanism/pellet_polonium.png new file mode 100644 index 00000000..c8177206 Binary files /dev/null and b/public/textures/mekanism/pellet_polonium.png differ diff --git a/public/textures/mekanism/personal_barrel.png b/public/textures/mekanism/personal_barrel.png new file mode 100644 index 00000000..f5c7fe42 Binary files /dev/null and b/public/textures/mekanism/personal_barrel.png differ diff --git a/public/textures/mekanism/personal_chest.png b/public/textures/mekanism/personal_chest.png new file mode 100644 index 00000000..bc626da1 Binary files /dev/null and b/public/textures/mekanism/personal_chest.png differ diff --git a/public/textures/mekanism/pigment_extractor.png b/public/textures/mekanism/pigment_extractor.png new file mode 100644 index 00000000..e807ba9f Binary files /dev/null and b/public/textures/mekanism/pigment_extractor.png differ diff --git a/public/textures/mekanism/pigment_mixer.png b/public/textures/mekanism/pigment_mixer.png new file mode 100644 index 00000000..4934d4b6 Binary files /dev/null and b/public/textures/mekanism/pigment_mixer.png differ diff --git a/public/textures/mekanism/portable_qio_dashboard.png b/public/textures/mekanism/portable_qio_dashboard.png new file mode 100644 index 00000000..22babbe6 Binary files /dev/null and b/public/textures/mekanism/portable_qio_dashboard.png differ diff --git a/public/textures/mekanism/portable_teleporter.png b/public/textures/mekanism/portable_teleporter.png new file mode 100644 index 00000000..6ab1f0d9 Binary files /dev/null and b/public/textures/mekanism/portable_teleporter.png differ diff --git a/public/textures/mekanism/portable_teleporter__{'mekanism__energy'__{energy_containers__[L;1000000L]}}.png b/public/textures/mekanism/portable_teleporter__{'mekanism__energy'__{energy_containers__[L;1000000L]}}.png new file mode 100644 index 00000000..6ab1f0d9 Binary files /dev/null and b/public/textures/mekanism/portable_teleporter__{'mekanism__energy'__{energy_containers__[L;1000000L]}}.png differ diff --git a/public/textures/mekanism/precision_sawmill.png b/public/textures/mekanism/precision_sawmill.png new file mode 100644 index 00000000..f4d06170 Binary files /dev/null and b/public/textures/mekanism/precision_sawmill.png differ diff --git a/public/textures/mekanism/pressure_disperser.png b/public/textures/mekanism/pressure_disperser.png new file mode 100644 index 00000000..35c63949 Binary files /dev/null and b/public/textures/mekanism/pressure_disperser.png differ diff --git a/public/textures/mekanism/pressurized_reaction_chamber.png b/public/textures/mekanism/pressurized_reaction_chamber.png new file mode 100644 index 00000000..90961dff Binary files /dev/null and b/public/textures/mekanism/pressurized_reaction_chamber.png differ diff --git a/public/textures/mekanism/purification_chamber.png b/public/textures/mekanism/purification_chamber.png new file mode 100644 index 00000000..dbc0756a Binary files /dev/null and b/public/textures/mekanism/purification_chamber.png differ diff --git a/public/textures/mekanism/qio_dashboard.png b/public/textures/mekanism/qio_dashboard.png new file mode 100644 index 00000000..a8c5688b Binary files /dev/null and b/public/textures/mekanism/qio_dashboard.png differ diff --git a/public/textures/mekanism/qio_drive_array.png b/public/textures/mekanism/qio_drive_array.png new file mode 100644 index 00000000..967fc797 Binary files /dev/null and b/public/textures/mekanism/qio_drive_array.png differ diff --git a/public/textures/mekanism/qio_drive_base.png b/public/textures/mekanism/qio_drive_base.png new file mode 100644 index 00000000..151ce89e Binary files /dev/null and b/public/textures/mekanism/qio_drive_base.png differ diff --git a/public/textures/mekanism/qio_drive_hyper_dense.png b/public/textures/mekanism/qio_drive_hyper_dense.png new file mode 100644 index 00000000..d181e5e5 Binary files /dev/null and b/public/textures/mekanism/qio_drive_hyper_dense.png differ diff --git a/public/textures/mekanism/qio_drive_supermassive.png b/public/textures/mekanism/qio_drive_supermassive.png new file mode 100644 index 00000000..e2914c40 Binary files /dev/null and b/public/textures/mekanism/qio_drive_supermassive.png differ diff --git a/public/textures/mekanism/qio_drive_time_dilating.png b/public/textures/mekanism/qio_drive_time_dilating.png new file mode 100644 index 00000000..2ad6454c Binary files /dev/null and b/public/textures/mekanism/qio_drive_time_dilating.png differ diff --git a/public/textures/mekanism/qio_exporter.png b/public/textures/mekanism/qio_exporter.png new file mode 100644 index 00000000..6bca9879 Binary files /dev/null and b/public/textures/mekanism/qio_exporter.png differ diff --git a/public/textures/mekanism/qio_importer.png b/public/textures/mekanism/qio_importer.png new file mode 100644 index 00000000..64ff0ffa Binary files /dev/null and b/public/textures/mekanism/qio_importer.png differ diff --git a/public/textures/mekanism/qio_redstone_adapter.png b/public/textures/mekanism/qio_redstone_adapter.png new file mode 100644 index 00000000..e51d44d9 Binary files /dev/null and b/public/textures/mekanism/qio_redstone_adapter.png differ diff --git a/public/textures/mekanism/quantum_entangloporter.png b/public/textures/mekanism/quantum_entangloporter.png new file mode 100644 index 00000000..db124fa6 Binary files /dev/null and b/public/textures/mekanism/quantum_entangloporter.png differ diff --git a/public/textures/mekanism/radioactive_waste_barrel.png b/public/textures/mekanism/radioactive_waste_barrel.png new file mode 100644 index 00000000..4b35c006 Binary files /dev/null and b/public/textures/mekanism/radioactive_waste_barrel.png differ diff --git a/public/textures/mekanism/raw_lead.png b/public/textures/mekanism/raw_lead.png new file mode 100644 index 00000000..5ba78826 Binary files /dev/null and b/public/textures/mekanism/raw_lead.png differ diff --git a/public/textures/mekanism/raw_osmium.png b/public/textures/mekanism/raw_osmium.png new file mode 100644 index 00000000..ae9b4236 Binary files /dev/null and b/public/textures/mekanism/raw_osmium.png differ diff --git a/public/textures/mekanism/raw_tin.png b/public/textures/mekanism/raw_tin.png new file mode 100644 index 00000000..5504d268 Binary files /dev/null and b/public/textures/mekanism/raw_tin.png differ diff --git a/public/textures/mekanism/raw_uranium.png b/public/textures/mekanism/raw_uranium.png new file mode 100644 index 00000000..d506c734 Binary files /dev/null and b/public/textures/mekanism/raw_uranium.png differ diff --git a/public/textures/mekanism/reprocessed_fissile_fragment.png b/public/textures/mekanism/reprocessed_fissile_fragment.png new file mode 100644 index 00000000..28e3eba4 Binary files /dev/null and b/public/textures/mekanism/reprocessed_fissile_fragment.png differ diff --git a/public/textures/mekanism/resistive_heater.png b/public/textures/mekanism/resistive_heater.png new file mode 100644 index 00000000..68514842 Binary files /dev/null and b/public/textures/mekanism/resistive_heater.png differ diff --git a/public/textures/mekanism/restrictive_transporter.png b/public/textures/mekanism/restrictive_transporter.png new file mode 100644 index 00000000..a80bdfc4 Binary files /dev/null and b/public/textures/mekanism/restrictive_transporter.png differ diff --git a/public/textures/mekanism/robit.png b/public/textures/mekanism/robit.png new file mode 100644 index 00000000..d0b67a3d Binary files /dev/null and b/public/textures/mekanism/robit.png differ diff --git a/public/textures/mekanism/robit__{'mekanism__energy'__{energy_containers__[L;100000L]}}.png b/public/textures/mekanism/robit__{'mekanism__energy'__{energy_containers__[L;100000L]}}.png new file mode 100644 index 00000000..d0b67a3d Binary files /dev/null and b/public/textures/mekanism/robit__{'mekanism__energy'__{energy_containers__[L;100000L]}}.png differ diff --git a/public/textures/mekanism/rotary_condensentrator.png b/public/textures/mekanism/rotary_condensentrator.png new file mode 100644 index 00000000..e08ceb44 Binary files /dev/null and b/public/textures/mekanism/rotary_condensentrator.png differ diff --git a/public/textures/mekanism/salt.png b/public/textures/mekanism/salt.png new file mode 100644 index 00000000..93d34cc4 Binary files /dev/null and b/public/textures/mekanism/salt.png differ diff --git a/public/textures/mekanism/sawdust.png b/public/textures/mekanism/sawdust.png new file mode 100644 index 00000000..188ebd0a Binary files /dev/null and b/public/textures/mekanism/sawdust.png differ diff --git a/public/textures/mekanism/scuba_mask.png b/public/textures/mekanism/scuba_mask.png new file mode 100644 index 00000000..3b707b3f Binary files /dev/null and b/public/textures/mekanism/scuba_mask.png differ diff --git a/public/textures/mekanism/scuba_tank.png b/public/textures/mekanism/scuba_tank.png new file mode 100644 index 00000000..d44750b7 Binary files /dev/null and b/public/textures/mekanism/scuba_tank.png differ diff --git a/public/textures/mekanism/scuba_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__24000L,id__'mekanism__oxygen'}]}}.png b/public/textures/mekanism/scuba_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__24000L,id__'mekanism__oxygen'}]}}.png new file mode 100644 index 00000000..d44750b7 Binary files /dev/null and b/public/textures/mekanism/scuba_tank__{'mekanism__chemicals'__{chemical_tanks__[{amount__24000L,id__'mekanism__oxygen'}]}}.png differ diff --git a/public/textures/mekanism/security_desk.png b/public/textures/mekanism/security_desk.png new file mode 100644 index 00000000..f8dc548b Binary files /dev/null and b/public/textures/mekanism/security_desk.png differ diff --git a/public/textures/mekanism/seismic_reader.png b/public/textures/mekanism/seismic_reader.png new file mode 100644 index 00000000..b96b4d23 Binary files /dev/null and b/public/textures/mekanism/seismic_reader.png differ diff --git a/public/textures/mekanism/seismic_reader__{'mekanism__energy'__{energy_containers__[L;12000L]}}.png b/public/textures/mekanism/seismic_reader__{'mekanism__energy'__{energy_containers__[L;12000L]}}.png new file mode 100644 index 00000000..b96b4d23 Binary files /dev/null and b/public/textures/mekanism/seismic_reader__{'mekanism__energy'__{energy_containers__[L;12000L]}}.png differ diff --git a/public/textures/mekanism/seismic_vibrator.png b/public/textures/mekanism/seismic_vibrator.png new file mode 100644 index 00000000..fa94f8b4 Binary files /dev/null and b/public/textures/mekanism/seismic_vibrator.png differ diff --git a/public/textures/mekanism/shard_copper.png b/public/textures/mekanism/shard_copper.png new file mode 100644 index 00000000..42aa9dc7 Binary files /dev/null and b/public/textures/mekanism/shard_copper.png differ diff --git a/public/textures/mekanism/shard_gold.png b/public/textures/mekanism/shard_gold.png new file mode 100644 index 00000000..b61bf8cf Binary files /dev/null and b/public/textures/mekanism/shard_gold.png differ diff --git a/public/textures/mekanism/shard_iron.png b/public/textures/mekanism/shard_iron.png new file mode 100644 index 00000000..c5aea167 Binary files /dev/null and b/public/textures/mekanism/shard_iron.png differ diff --git a/public/textures/mekanism/shard_lead.png b/public/textures/mekanism/shard_lead.png new file mode 100644 index 00000000..c7ba048b Binary files /dev/null and b/public/textures/mekanism/shard_lead.png differ diff --git a/public/textures/mekanism/shard_osmium.png b/public/textures/mekanism/shard_osmium.png new file mode 100644 index 00000000..88fa1b67 Binary files /dev/null and b/public/textures/mekanism/shard_osmium.png differ diff --git a/public/textures/mekanism/shard_tin.png b/public/textures/mekanism/shard_tin.png new file mode 100644 index 00000000..3553c6a2 Binary files /dev/null and b/public/textures/mekanism/shard_tin.png differ diff --git a/public/textures/mekanism/shard_uranium.png b/public/textures/mekanism/shard_uranium.png new file mode 100644 index 00000000..4d55c693 Binary files /dev/null and b/public/textures/mekanism/shard_uranium.png differ diff --git a/public/textures/mekanism/sodium_bucket.png b/public/textures/mekanism/sodium_bucket.png new file mode 100644 index 00000000..f8defcdb Binary files /dev/null and b/public/textures/mekanism/sodium_bucket.png differ diff --git a/public/textures/mekanism/solar_neutron_activator.png b/public/textures/mekanism/solar_neutron_activator.png new file mode 100644 index 00000000..c72b3e4e Binary files /dev/null and b/public/textures/mekanism/solar_neutron_activator.png differ diff --git a/public/textures/mekanism/sps_casing.png b/public/textures/mekanism/sps_casing.png new file mode 100644 index 00000000..47777e03 Binary files /dev/null and b/public/textures/mekanism/sps_casing.png differ diff --git a/public/textures/mekanism/sps_port.png b/public/textures/mekanism/sps_port.png new file mode 100644 index 00000000..d976ff26 Binary files /dev/null and b/public/textures/mekanism/sps_port.png differ diff --git a/public/textures/mekanism/steam_bucket.png b/public/textures/mekanism/steam_bucket.png new file mode 100644 index 00000000..b190af04 Binary files /dev/null and b/public/textures/mekanism/steam_bucket.png differ diff --git a/public/textures/mekanism/steel_casing.png b/public/textures/mekanism/steel_casing.png new file mode 100644 index 00000000..6e0e38c9 Binary files /dev/null and b/public/textures/mekanism/steel_casing.png differ diff --git a/public/textures/mekanism/structural_glass.png b/public/textures/mekanism/structural_glass.png new file mode 100644 index 00000000..b4d8621d Binary files /dev/null and b/public/textures/mekanism/structural_glass.png differ diff --git a/public/textures/mekanism/substrate.png b/public/textures/mekanism/substrate.png new file mode 100644 index 00000000..532f1765 Binary files /dev/null and b/public/textures/mekanism/substrate.png differ diff --git a/public/textures/mekanism/sulfur_dioxide_bucket.png b/public/textures/mekanism/sulfur_dioxide_bucket.png new file mode 100644 index 00000000..b43f1f12 Binary files /dev/null and b/public/textures/mekanism/sulfur_dioxide_bucket.png differ diff --git a/public/textures/mekanism/sulfur_trioxide_bucket.png b/public/textures/mekanism/sulfur_trioxide_bucket.png new file mode 100644 index 00000000..b3c4627c Binary files /dev/null and b/public/textures/mekanism/sulfur_trioxide_bucket.png differ diff --git a/public/textures/mekanism/sulfuric_acid_bucket.png b/public/textures/mekanism/sulfuric_acid_bucket.png new file mode 100644 index 00000000..67ae5b53 Binary files /dev/null and b/public/textures/mekanism/sulfuric_acid_bucket.png differ diff --git a/public/textures/mekanism/supercharged_coil.png b/public/textures/mekanism/supercharged_coil.png new file mode 100644 index 00000000..7534f09f Binary files /dev/null and b/public/textures/mekanism/supercharged_coil.png differ diff --git a/public/textures/mekanism/superheated_sodium_bucket.png b/public/textures/mekanism/superheated_sodium_bucket.png new file mode 100644 index 00000000..b737facd Binary files /dev/null and b/public/textures/mekanism/superheated_sodium_bucket.png differ diff --git a/public/textures/mekanism/superheating_element.png b/public/textures/mekanism/superheating_element.png new file mode 100644 index 00000000..e3354223 Binary files /dev/null and b/public/textures/mekanism/superheating_element.png differ diff --git a/public/textures/mekanism/teleportation_core.png b/public/textures/mekanism/teleportation_core.png new file mode 100644 index 00000000..41f4dc44 Binary files /dev/null and b/public/textures/mekanism/teleportation_core.png differ diff --git a/public/textures/mekanism/teleporter.png b/public/textures/mekanism/teleporter.png new file mode 100644 index 00000000..8935ef03 Binary files /dev/null and b/public/textures/mekanism/teleporter.png differ diff --git a/public/textures/mekanism/teleporter_frame.png b/public/textures/mekanism/teleporter_frame.png new file mode 100644 index 00000000..473e8bf6 Binary files /dev/null and b/public/textures/mekanism/teleporter_frame.png differ diff --git a/public/textures/mekanism/thermal_evaporation_block.png b/public/textures/mekanism/thermal_evaporation_block.png new file mode 100644 index 00000000..f617814b Binary files /dev/null and b/public/textures/mekanism/thermal_evaporation_block.png differ diff --git a/public/textures/mekanism/thermal_evaporation_controller.png b/public/textures/mekanism/thermal_evaporation_controller.png new file mode 100644 index 00000000..d4cf1ff8 Binary files /dev/null and b/public/textures/mekanism/thermal_evaporation_controller.png differ diff --git a/public/textures/mekanism/thermal_evaporation_valve.png b/public/textures/mekanism/thermal_evaporation_valve.png new file mode 100644 index 00000000..a110ab1a Binary files /dev/null and b/public/textures/mekanism/thermal_evaporation_valve.png differ diff --git a/public/textures/mekanism/tin_ore.png b/public/textures/mekanism/tin_ore.png new file mode 100644 index 00000000..ab5d4bdb Binary files /dev/null and b/public/textures/mekanism/tin_ore.png differ diff --git a/public/textures/mekanism/ultimate_bin.png b/public/textures/mekanism/ultimate_bin.png new file mode 100644 index 00000000..80f3a315 Binary files /dev/null and b/public/textures/mekanism/ultimate_bin.png differ diff --git a/public/textures/mekanism/ultimate_chemical_tank.png b/public/textures/mekanism/ultimate_chemical_tank.png new file mode 100644 index 00000000..923d045d Binary files /dev/null and b/public/textures/mekanism/ultimate_chemical_tank.png differ diff --git a/public/textures/mekanism/ultimate_combining_factory.png b/public/textures/mekanism/ultimate_combining_factory.png new file mode 100644 index 00000000..42464a6c Binary files /dev/null and b/public/textures/mekanism/ultimate_combining_factory.png differ diff --git a/public/textures/mekanism/ultimate_compressing_factory.png b/public/textures/mekanism/ultimate_compressing_factory.png new file mode 100644 index 00000000..736fea12 Binary files /dev/null and b/public/textures/mekanism/ultimate_compressing_factory.png differ diff --git a/public/textures/mekanism/ultimate_control_circuit.png b/public/textures/mekanism/ultimate_control_circuit.png new file mode 100644 index 00000000..e17f01e8 Binary files /dev/null and b/public/textures/mekanism/ultimate_control_circuit.png differ diff --git a/public/textures/mekanism/ultimate_crushing_factory.png b/public/textures/mekanism/ultimate_crushing_factory.png new file mode 100644 index 00000000..cb4c2a07 Binary files /dev/null and b/public/textures/mekanism/ultimate_crushing_factory.png differ diff --git a/public/textures/mekanism/ultimate_energy_cube.png b/public/textures/mekanism/ultimate_energy_cube.png new file mode 100644 index 00000000..0723a00b Binary files /dev/null and b/public/textures/mekanism/ultimate_energy_cube.png differ diff --git a/public/textures/mekanism/ultimate_energy_cube__{'mekanism__energy'__{energy_containers__[L;256000000L]}}.png b/public/textures/mekanism/ultimate_energy_cube__{'mekanism__energy'__{energy_containers__[L;256000000L]}}.png new file mode 100644 index 00000000..1b8714c7 Binary files /dev/null and b/public/textures/mekanism/ultimate_energy_cube__{'mekanism__energy'__{energy_containers__[L;256000000L]}}.png differ diff --git a/public/textures/mekanism/ultimate_enriching_factory.png b/public/textures/mekanism/ultimate_enriching_factory.png new file mode 100644 index 00000000..56f52514 Binary files /dev/null and b/public/textures/mekanism/ultimate_enriching_factory.png differ diff --git a/public/textures/mekanism/ultimate_fluid_tank.png b/public/textures/mekanism/ultimate_fluid_tank.png new file mode 100644 index 00000000..1cac2343 Binary files /dev/null and b/public/textures/mekanism/ultimate_fluid_tank.png differ diff --git a/public/textures/mekanism/ultimate_induction_cell.png b/public/textures/mekanism/ultimate_induction_cell.png new file mode 100644 index 00000000..1fcaf735 Binary files /dev/null and b/public/textures/mekanism/ultimate_induction_cell.png differ diff --git a/public/textures/mekanism/ultimate_induction_provider.png b/public/textures/mekanism/ultimate_induction_provider.png new file mode 100644 index 00000000..9e8c58f1 Binary files /dev/null and b/public/textures/mekanism/ultimate_induction_provider.png differ diff --git a/public/textures/mekanism/ultimate_infusing_factory.png b/public/textures/mekanism/ultimate_infusing_factory.png new file mode 100644 index 00000000..b714a373 Binary files /dev/null and b/public/textures/mekanism/ultimate_infusing_factory.png differ diff --git a/public/textures/mekanism/ultimate_injecting_factory.png b/public/textures/mekanism/ultimate_injecting_factory.png new file mode 100644 index 00000000..0fbb0fcb Binary files /dev/null and b/public/textures/mekanism/ultimate_injecting_factory.png differ diff --git a/public/textures/mekanism/ultimate_logistical_transporter.png b/public/textures/mekanism/ultimate_logistical_transporter.png new file mode 100644 index 00000000..37369049 Binary files /dev/null and b/public/textures/mekanism/ultimate_logistical_transporter.png differ diff --git a/public/textures/mekanism/ultimate_mechanical_pipe.png b/public/textures/mekanism/ultimate_mechanical_pipe.png new file mode 100644 index 00000000..ae605b64 Binary files /dev/null and b/public/textures/mekanism/ultimate_mechanical_pipe.png differ diff --git a/public/textures/mekanism/ultimate_pressurized_tube.png b/public/textures/mekanism/ultimate_pressurized_tube.png new file mode 100644 index 00000000..38b7f077 Binary files /dev/null and b/public/textures/mekanism/ultimate_pressurized_tube.png differ diff --git a/public/textures/mekanism/ultimate_purifying_factory.png b/public/textures/mekanism/ultimate_purifying_factory.png new file mode 100644 index 00000000..ff5aa9ba Binary files /dev/null and b/public/textures/mekanism/ultimate_purifying_factory.png differ diff --git a/public/textures/mekanism/ultimate_sawing_factory.png b/public/textures/mekanism/ultimate_sawing_factory.png new file mode 100644 index 00000000..61fa81d1 Binary files /dev/null and b/public/textures/mekanism/ultimate_sawing_factory.png differ diff --git a/public/textures/mekanism/ultimate_smelting_factory.png b/public/textures/mekanism/ultimate_smelting_factory.png new file mode 100644 index 00000000..0a688b83 Binary files /dev/null and b/public/textures/mekanism/ultimate_smelting_factory.png differ diff --git a/public/textures/mekanism/ultimate_thermodynamic_conductor.png b/public/textures/mekanism/ultimate_thermodynamic_conductor.png new file mode 100644 index 00000000..6d863f35 Binary files /dev/null and b/public/textures/mekanism/ultimate_thermodynamic_conductor.png differ diff --git a/public/textures/mekanism/ultimate_tier_installer.png b/public/textures/mekanism/ultimate_tier_installer.png new file mode 100644 index 00000000..b331f354 Binary files /dev/null and b/public/textures/mekanism/ultimate_tier_installer.png differ diff --git a/public/textures/mekanism/ultimate_universal_cable.png b/public/textures/mekanism/ultimate_universal_cable.png new file mode 100644 index 00000000..f53c44ad Binary files /dev/null and b/public/textures/mekanism/ultimate_universal_cable.png differ diff --git a/public/textures/mekanism/upgrade_anchor.png b/public/textures/mekanism/upgrade_anchor.png new file mode 100644 index 00000000..27eb7084 Binary files /dev/null and b/public/textures/mekanism/upgrade_anchor.png differ diff --git a/public/textures/mekanism/upgrade_chemical.png b/public/textures/mekanism/upgrade_chemical.png new file mode 100644 index 00000000..907e3025 Binary files /dev/null and b/public/textures/mekanism/upgrade_chemical.png differ diff --git a/public/textures/mekanism/upgrade_energy.png b/public/textures/mekanism/upgrade_energy.png new file mode 100644 index 00000000..3f83bf87 Binary files /dev/null and b/public/textures/mekanism/upgrade_energy.png differ diff --git a/public/textures/mekanism/upgrade_filter.png b/public/textures/mekanism/upgrade_filter.png new file mode 100644 index 00000000..6aea962b Binary files /dev/null and b/public/textures/mekanism/upgrade_filter.png differ diff --git a/public/textures/mekanism/upgrade_muffling.png b/public/textures/mekanism/upgrade_muffling.png new file mode 100644 index 00000000..4d01ddef Binary files /dev/null and b/public/textures/mekanism/upgrade_muffling.png differ diff --git a/public/textures/mekanism/upgrade_speed.png b/public/textures/mekanism/upgrade_speed.png new file mode 100644 index 00000000..efb6fdf4 Binary files /dev/null and b/public/textures/mekanism/upgrade_speed.png differ diff --git a/public/textures/mekanism/upgrade_stone_generator.png b/public/textures/mekanism/upgrade_stone_generator.png new file mode 100644 index 00000000..44cfd352 Binary files /dev/null and b/public/textures/mekanism/upgrade_stone_generator.png differ diff --git a/public/textures/mekanism/uranium_hexafluoride_bucket.png b/public/textures/mekanism/uranium_hexafluoride_bucket.png new file mode 100644 index 00000000..809a8352 Binary files /dev/null and b/public/textures/mekanism/uranium_hexafluoride_bucket.png differ diff --git a/public/textures/mekanism/uranium_ore.png b/public/textures/mekanism/uranium_ore.png new file mode 100644 index 00000000..b4ce6087 Binary files /dev/null and b/public/textures/mekanism/uranium_ore.png differ diff --git a/public/textures/mekanism/uranium_oxide_bucket.png b/public/textures/mekanism/uranium_oxide_bucket.png new file mode 100644 index 00000000..04cfe435 Binary files /dev/null and b/public/textures/mekanism/uranium_oxide_bucket.png differ diff --git a/public/textures/mekanism/yellow_cake_uranium.png b/public/textures/mekanism/yellow_cake_uranium.png new file mode 100644 index 00000000..1917bedc Binary files /dev/null and b/public/textures/mekanism/yellow_cake_uranium.png differ diff --git a/public/textures/mekanismadditions/aqua_balloon.png b/public/textures/mekanismadditions/aqua_balloon.png new file mode 100644 index 00000000..3b21d07d Binary files /dev/null and b/public/textures/mekanismadditions/aqua_balloon.png differ diff --git a/public/textures/mekanismadditions/aqua_glow_panel.png b/public/textures/mekanismadditions/aqua_glow_panel.png new file mode 100644 index 00000000..4dec927d Binary files /dev/null and b/public/textures/mekanismadditions/aqua_glow_panel.png differ diff --git a/public/textures/mekanismadditions/aqua_plastic.png b/public/textures/mekanismadditions/aqua_plastic.png new file mode 100644 index 00000000..e61a71b4 Binary files /dev/null and b/public/textures/mekanismadditions/aqua_plastic.png differ diff --git a/public/textures/mekanismadditions/aqua_plastic_fence.png b/public/textures/mekanismadditions/aqua_plastic_fence.png new file mode 100644 index 00000000..755c54b7 Binary files /dev/null and b/public/textures/mekanismadditions/aqua_plastic_fence.png differ diff --git a/public/textures/mekanismadditions/aqua_plastic_fence_gate.png b/public/textures/mekanismadditions/aqua_plastic_fence_gate.png new file mode 100644 index 00000000..6f843df2 Binary files /dev/null and b/public/textures/mekanismadditions/aqua_plastic_fence_gate.png differ diff --git a/public/textures/mekanismadditions/aqua_plastic_glow.png b/public/textures/mekanismadditions/aqua_plastic_glow.png new file mode 100644 index 00000000..3649a6c8 Binary files /dev/null and b/public/textures/mekanismadditions/aqua_plastic_glow.png differ diff --git a/public/textures/mekanismadditions/aqua_plastic_glow_slab.png b/public/textures/mekanismadditions/aqua_plastic_glow_slab.png new file mode 100644 index 00000000..6897a925 Binary files /dev/null and b/public/textures/mekanismadditions/aqua_plastic_glow_slab.png differ diff --git a/public/textures/mekanismadditions/aqua_plastic_glow_stairs.png b/public/textures/mekanismadditions/aqua_plastic_glow_stairs.png new file mode 100644 index 00000000..07c307b7 Binary files /dev/null and b/public/textures/mekanismadditions/aqua_plastic_glow_stairs.png differ diff --git a/public/textures/mekanismadditions/aqua_plastic_road.png b/public/textures/mekanismadditions/aqua_plastic_road.png new file mode 100644 index 00000000..3649a6c8 Binary files /dev/null and b/public/textures/mekanismadditions/aqua_plastic_road.png differ diff --git a/public/textures/mekanismadditions/aqua_plastic_slab.png b/public/textures/mekanismadditions/aqua_plastic_slab.png new file mode 100644 index 00000000..c00b1380 Binary files /dev/null and b/public/textures/mekanismadditions/aqua_plastic_slab.png differ diff --git a/public/textures/mekanismadditions/aqua_plastic_stairs.png b/public/textures/mekanismadditions/aqua_plastic_stairs.png new file mode 100644 index 00000000..23691a3b Binary files /dev/null and b/public/textures/mekanismadditions/aqua_plastic_stairs.png differ diff --git a/public/textures/mekanismadditions/aqua_plastic_transparent.png b/public/textures/mekanismadditions/aqua_plastic_transparent.png new file mode 100644 index 00000000..bdf20a7d Binary files /dev/null and b/public/textures/mekanismadditions/aqua_plastic_transparent.png differ diff --git a/public/textures/mekanismadditions/aqua_plastic_transparent_slab.png b/public/textures/mekanismadditions/aqua_plastic_transparent_slab.png new file mode 100644 index 00000000..45a4054c Binary files /dev/null and b/public/textures/mekanismadditions/aqua_plastic_transparent_slab.png differ diff --git a/public/textures/mekanismadditions/aqua_plastic_transparent_stairs.png b/public/textures/mekanismadditions/aqua_plastic_transparent_stairs.png new file mode 100644 index 00000000..2b1067de Binary files /dev/null and b/public/textures/mekanismadditions/aqua_plastic_transparent_stairs.png differ diff --git a/public/textures/mekanismadditions/aqua_reinforced_plastic.png b/public/textures/mekanismadditions/aqua_reinforced_plastic.png new file mode 100644 index 00000000..1d31ce9c Binary files /dev/null and b/public/textures/mekanismadditions/aqua_reinforced_plastic.png differ diff --git a/public/textures/mekanismadditions/aqua_slick_plastic.png b/public/textures/mekanismadditions/aqua_slick_plastic.png new file mode 100644 index 00000000..44acab22 Binary files /dev/null and b/public/textures/mekanismadditions/aqua_slick_plastic.png differ diff --git a/public/textures/mekanismadditions/baby_bogged_spawn_egg.png b/public/textures/mekanismadditions/baby_bogged_spawn_egg.png new file mode 100644 index 00000000..d2e5be4e Binary files /dev/null and b/public/textures/mekanismadditions/baby_bogged_spawn_egg.png differ diff --git a/public/textures/mekanismadditions/baby_creeper_spawn_egg.png b/public/textures/mekanismadditions/baby_creeper_spawn_egg.png new file mode 100644 index 00000000..c3d089d8 Binary files /dev/null and b/public/textures/mekanismadditions/baby_creeper_spawn_egg.png differ diff --git a/public/textures/mekanismadditions/baby_enderman_spawn_egg.png b/public/textures/mekanismadditions/baby_enderman_spawn_egg.png new file mode 100644 index 00000000..7e78837f Binary files /dev/null and b/public/textures/mekanismadditions/baby_enderman_spawn_egg.png differ diff --git a/public/textures/mekanismadditions/baby_skeleton_spawn_egg.png b/public/textures/mekanismadditions/baby_skeleton_spawn_egg.png new file mode 100644 index 00000000..0d98f425 Binary files /dev/null and b/public/textures/mekanismadditions/baby_skeleton_spawn_egg.png differ diff --git a/public/textures/mekanismadditions/baby_stray_spawn_egg.png b/public/textures/mekanismadditions/baby_stray_spawn_egg.png new file mode 100644 index 00000000..877fd424 Binary files /dev/null and b/public/textures/mekanismadditions/baby_stray_spawn_egg.png differ diff --git a/public/textures/mekanismadditions/baby_wither_skeleton_spawn_egg.png b/public/textures/mekanismadditions/baby_wither_skeleton_spawn_egg.png new file mode 100644 index 00000000..7b104f40 Binary files /dev/null and b/public/textures/mekanismadditions/baby_wither_skeleton_spawn_egg.png differ diff --git a/public/textures/mekanismadditions/black_balloon.png b/public/textures/mekanismadditions/black_balloon.png new file mode 100644 index 00000000..e18cc981 Binary files /dev/null and b/public/textures/mekanismadditions/black_balloon.png differ diff --git a/public/textures/mekanismadditions/black_glow_panel.png b/public/textures/mekanismadditions/black_glow_panel.png new file mode 100644 index 00000000..ba6ff62a Binary files /dev/null and b/public/textures/mekanismadditions/black_glow_panel.png differ diff --git a/public/textures/mekanismadditions/black_plastic.png b/public/textures/mekanismadditions/black_plastic.png new file mode 100644 index 00000000..44deb983 Binary files /dev/null and b/public/textures/mekanismadditions/black_plastic.png differ diff --git a/public/textures/mekanismadditions/black_plastic_fence.png b/public/textures/mekanismadditions/black_plastic_fence.png new file mode 100644 index 00000000..bd7adc6b Binary files /dev/null and b/public/textures/mekanismadditions/black_plastic_fence.png differ diff --git a/public/textures/mekanismadditions/black_plastic_fence_gate.png b/public/textures/mekanismadditions/black_plastic_fence_gate.png new file mode 100644 index 00000000..d385b2f6 Binary files /dev/null and b/public/textures/mekanismadditions/black_plastic_fence_gate.png differ diff --git a/public/textures/mekanismadditions/black_plastic_glow.png b/public/textures/mekanismadditions/black_plastic_glow.png new file mode 100644 index 00000000..ed510827 Binary files /dev/null and b/public/textures/mekanismadditions/black_plastic_glow.png differ diff --git a/public/textures/mekanismadditions/black_plastic_glow_slab.png b/public/textures/mekanismadditions/black_plastic_glow_slab.png new file mode 100644 index 00000000..68933dab Binary files /dev/null and b/public/textures/mekanismadditions/black_plastic_glow_slab.png differ diff --git a/public/textures/mekanismadditions/black_plastic_glow_stairs.png b/public/textures/mekanismadditions/black_plastic_glow_stairs.png new file mode 100644 index 00000000..c1b53df5 Binary files /dev/null and b/public/textures/mekanismadditions/black_plastic_glow_stairs.png differ diff --git a/public/textures/mekanismadditions/black_plastic_road.png b/public/textures/mekanismadditions/black_plastic_road.png new file mode 100644 index 00000000..ed510827 Binary files /dev/null and b/public/textures/mekanismadditions/black_plastic_road.png differ diff --git a/public/textures/mekanismadditions/black_plastic_slab.png b/public/textures/mekanismadditions/black_plastic_slab.png new file mode 100644 index 00000000..71cd7b19 Binary files /dev/null and b/public/textures/mekanismadditions/black_plastic_slab.png differ diff --git a/public/textures/mekanismadditions/black_plastic_stairs.png b/public/textures/mekanismadditions/black_plastic_stairs.png new file mode 100644 index 00000000..ead6e7dd Binary files /dev/null and b/public/textures/mekanismadditions/black_plastic_stairs.png differ diff --git a/public/textures/mekanismadditions/black_plastic_transparent.png b/public/textures/mekanismadditions/black_plastic_transparent.png new file mode 100644 index 00000000..4abac729 Binary files /dev/null and b/public/textures/mekanismadditions/black_plastic_transparent.png differ diff --git a/public/textures/mekanismadditions/black_plastic_transparent_slab.png b/public/textures/mekanismadditions/black_plastic_transparent_slab.png new file mode 100644 index 00000000..bbb8e6c7 Binary files /dev/null and b/public/textures/mekanismadditions/black_plastic_transparent_slab.png differ diff --git a/public/textures/mekanismadditions/black_plastic_transparent_stairs.png b/public/textures/mekanismadditions/black_plastic_transparent_stairs.png new file mode 100644 index 00000000..d2f24bfa Binary files /dev/null and b/public/textures/mekanismadditions/black_plastic_transparent_stairs.png differ diff --git a/public/textures/mekanismadditions/black_reinforced_plastic.png b/public/textures/mekanismadditions/black_reinforced_plastic.png new file mode 100644 index 00000000..f16a75da Binary files /dev/null and b/public/textures/mekanismadditions/black_reinforced_plastic.png differ diff --git a/public/textures/mekanismadditions/black_slick_plastic.png b/public/textures/mekanismadditions/black_slick_plastic.png new file mode 100644 index 00000000..e77e5557 Binary files /dev/null and b/public/textures/mekanismadditions/black_slick_plastic.png differ diff --git a/public/textures/mekanismadditions/blue_balloon.png b/public/textures/mekanismadditions/blue_balloon.png new file mode 100644 index 00000000..4f4ba87a Binary files /dev/null and b/public/textures/mekanismadditions/blue_balloon.png differ diff --git a/public/textures/mekanismadditions/blue_glow_panel.png b/public/textures/mekanismadditions/blue_glow_panel.png new file mode 100644 index 00000000..dd2e7054 Binary files /dev/null and b/public/textures/mekanismadditions/blue_glow_panel.png differ diff --git a/public/textures/mekanismadditions/blue_plastic.png b/public/textures/mekanismadditions/blue_plastic.png new file mode 100644 index 00000000..e35e6339 Binary files /dev/null and b/public/textures/mekanismadditions/blue_plastic.png differ diff --git a/public/textures/mekanismadditions/blue_plastic_fence.png b/public/textures/mekanismadditions/blue_plastic_fence.png new file mode 100644 index 00000000..5a1972d1 Binary files /dev/null and b/public/textures/mekanismadditions/blue_plastic_fence.png differ diff --git a/public/textures/mekanismadditions/blue_plastic_fence_gate.png b/public/textures/mekanismadditions/blue_plastic_fence_gate.png new file mode 100644 index 00000000..38cad793 Binary files /dev/null and b/public/textures/mekanismadditions/blue_plastic_fence_gate.png differ diff --git a/public/textures/mekanismadditions/blue_plastic_glow.png b/public/textures/mekanismadditions/blue_plastic_glow.png new file mode 100644 index 00000000..5638f41f Binary files /dev/null and b/public/textures/mekanismadditions/blue_plastic_glow.png differ diff --git a/public/textures/mekanismadditions/blue_plastic_glow_slab.png b/public/textures/mekanismadditions/blue_plastic_glow_slab.png new file mode 100644 index 00000000..4c0c43af Binary files /dev/null and b/public/textures/mekanismadditions/blue_plastic_glow_slab.png differ diff --git a/public/textures/mekanismadditions/blue_plastic_glow_stairs.png b/public/textures/mekanismadditions/blue_plastic_glow_stairs.png new file mode 100644 index 00000000..d809db09 Binary files /dev/null and b/public/textures/mekanismadditions/blue_plastic_glow_stairs.png differ diff --git a/public/textures/mekanismadditions/blue_plastic_road.png b/public/textures/mekanismadditions/blue_plastic_road.png new file mode 100644 index 00000000..5638f41f Binary files /dev/null and b/public/textures/mekanismadditions/blue_plastic_road.png differ diff --git a/public/textures/mekanismadditions/blue_plastic_slab.png b/public/textures/mekanismadditions/blue_plastic_slab.png new file mode 100644 index 00000000..ab36a46c Binary files /dev/null and b/public/textures/mekanismadditions/blue_plastic_slab.png differ diff --git a/public/textures/mekanismadditions/blue_plastic_stairs.png b/public/textures/mekanismadditions/blue_plastic_stairs.png new file mode 100644 index 00000000..96bd5953 Binary files /dev/null and b/public/textures/mekanismadditions/blue_plastic_stairs.png differ diff --git a/public/textures/mekanismadditions/blue_plastic_transparent.png b/public/textures/mekanismadditions/blue_plastic_transparent.png new file mode 100644 index 00000000..d555158e Binary files /dev/null and b/public/textures/mekanismadditions/blue_plastic_transparent.png differ diff --git a/public/textures/mekanismadditions/blue_plastic_transparent_slab.png b/public/textures/mekanismadditions/blue_plastic_transparent_slab.png new file mode 100644 index 00000000..fc1a531b Binary files /dev/null and b/public/textures/mekanismadditions/blue_plastic_transparent_slab.png differ diff --git a/public/textures/mekanismadditions/blue_plastic_transparent_stairs.png b/public/textures/mekanismadditions/blue_plastic_transparent_stairs.png new file mode 100644 index 00000000..ea76294f Binary files /dev/null and b/public/textures/mekanismadditions/blue_plastic_transparent_stairs.png differ diff --git a/public/textures/mekanismadditions/blue_reinforced_plastic.png b/public/textures/mekanismadditions/blue_reinforced_plastic.png new file mode 100644 index 00000000..013726bb Binary files /dev/null and b/public/textures/mekanismadditions/blue_reinforced_plastic.png differ diff --git a/public/textures/mekanismadditions/blue_slick_plastic.png b/public/textures/mekanismadditions/blue_slick_plastic.png new file mode 100644 index 00000000..32c23b9a Binary files /dev/null and b/public/textures/mekanismadditions/blue_slick_plastic.png differ diff --git a/public/textures/mekanismadditions/brown_balloon.png b/public/textures/mekanismadditions/brown_balloon.png new file mode 100644 index 00000000..fab8f450 Binary files /dev/null and b/public/textures/mekanismadditions/brown_balloon.png differ diff --git a/public/textures/mekanismadditions/brown_glow_panel.png b/public/textures/mekanismadditions/brown_glow_panel.png new file mode 100644 index 00000000..c60ac052 Binary files /dev/null and b/public/textures/mekanismadditions/brown_glow_panel.png differ diff --git a/public/textures/mekanismadditions/brown_plastic.png b/public/textures/mekanismadditions/brown_plastic.png new file mode 100644 index 00000000..fb60381c Binary files /dev/null and b/public/textures/mekanismadditions/brown_plastic.png differ diff --git a/public/textures/mekanismadditions/brown_plastic_fence.png b/public/textures/mekanismadditions/brown_plastic_fence.png new file mode 100644 index 00000000..55e3129c Binary files /dev/null and b/public/textures/mekanismadditions/brown_plastic_fence.png differ diff --git a/public/textures/mekanismadditions/brown_plastic_fence_gate.png b/public/textures/mekanismadditions/brown_plastic_fence_gate.png new file mode 100644 index 00000000..f6d1222e Binary files /dev/null and b/public/textures/mekanismadditions/brown_plastic_fence_gate.png differ diff --git a/public/textures/mekanismadditions/brown_plastic_glow.png b/public/textures/mekanismadditions/brown_plastic_glow.png new file mode 100644 index 00000000..76119104 Binary files /dev/null and b/public/textures/mekanismadditions/brown_plastic_glow.png differ diff --git a/public/textures/mekanismadditions/brown_plastic_glow_slab.png b/public/textures/mekanismadditions/brown_plastic_glow_slab.png new file mode 100644 index 00000000..b6fc3b4c Binary files /dev/null and b/public/textures/mekanismadditions/brown_plastic_glow_slab.png differ diff --git a/public/textures/mekanismadditions/brown_plastic_glow_stairs.png b/public/textures/mekanismadditions/brown_plastic_glow_stairs.png new file mode 100644 index 00000000..594e2cf9 Binary files /dev/null and b/public/textures/mekanismadditions/brown_plastic_glow_stairs.png differ diff --git a/public/textures/mekanismadditions/brown_plastic_road.png b/public/textures/mekanismadditions/brown_plastic_road.png new file mode 100644 index 00000000..76119104 Binary files /dev/null and b/public/textures/mekanismadditions/brown_plastic_road.png differ diff --git a/public/textures/mekanismadditions/brown_plastic_slab.png b/public/textures/mekanismadditions/brown_plastic_slab.png new file mode 100644 index 00000000..c3ffe2b4 Binary files /dev/null and b/public/textures/mekanismadditions/brown_plastic_slab.png differ diff --git a/public/textures/mekanismadditions/brown_plastic_stairs.png b/public/textures/mekanismadditions/brown_plastic_stairs.png new file mode 100644 index 00000000..71fd97db Binary files /dev/null and b/public/textures/mekanismadditions/brown_plastic_stairs.png differ diff --git a/public/textures/mekanismadditions/brown_plastic_transparent.png b/public/textures/mekanismadditions/brown_plastic_transparent.png new file mode 100644 index 00000000..5c5b301a Binary files /dev/null and b/public/textures/mekanismadditions/brown_plastic_transparent.png differ diff --git a/public/textures/mekanismadditions/brown_plastic_transparent_slab.png b/public/textures/mekanismadditions/brown_plastic_transparent_slab.png new file mode 100644 index 00000000..2ecce8ab Binary files /dev/null and b/public/textures/mekanismadditions/brown_plastic_transparent_slab.png differ diff --git a/public/textures/mekanismadditions/brown_plastic_transparent_stairs.png b/public/textures/mekanismadditions/brown_plastic_transparent_stairs.png new file mode 100644 index 00000000..6c76cfe6 Binary files /dev/null and b/public/textures/mekanismadditions/brown_plastic_transparent_stairs.png differ diff --git a/public/textures/mekanismadditions/brown_reinforced_plastic.png b/public/textures/mekanismadditions/brown_reinforced_plastic.png new file mode 100644 index 00000000..d4813b8a Binary files /dev/null and b/public/textures/mekanismadditions/brown_reinforced_plastic.png differ diff --git a/public/textures/mekanismadditions/brown_slick_plastic.png b/public/textures/mekanismadditions/brown_slick_plastic.png new file mode 100644 index 00000000..19d96b17 Binary files /dev/null and b/public/textures/mekanismadditions/brown_slick_plastic.png differ diff --git a/public/textures/mekanismadditions/cyan_balloon.png b/public/textures/mekanismadditions/cyan_balloon.png new file mode 100644 index 00000000..ea953192 Binary files /dev/null and b/public/textures/mekanismadditions/cyan_balloon.png differ diff --git a/public/textures/mekanismadditions/cyan_glow_panel.png b/public/textures/mekanismadditions/cyan_glow_panel.png new file mode 100644 index 00000000..e02b0454 Binary files /dev/null and b/public/textures/mekanismadditions/cyan_glow_panel.png differ diff --git a/public/textures/mekanismadditions/cyan_plastic.png b/public/textures/mekanismadditions/cyan_plastic.png new file mode 100644 index 00000000..60156dad Binary files /dev/null and b/public/textures/mekanismadditions/cyan_plastic.png differ diff --git a/public/textures/mekanismadditions/cyan_plastic_fence.png b/public/textures/mekanismadditions/cyan_plastic_fence.png new file mode 100644 index 00000000..782ed883 Binary files /dev/null and b/public/textures/mekanismadditions/cyan_plastic_fence.png differ diff --git a/public/textures/mekanismadditions/cyan_plastic_fence_gate.png b/public/textures/mekanismadditions/cyan_plastic_fence_gate.png new file mode 100644 index 00000000..7ac6fc74 Binary files /dev/null and b/public/textures/mekanismadditions/cyan_plastic_fence_gate.png differ diff --git a/public/textures/mekanismadditions/cyan_plastic_glow.png b/public/textures/mekanismadditions/cyan_plastic_glow.png new file mode 100644 index 00000000..3fa8fb19 Binary files /dev/null and b/public/textures/mekanismadditions/cyan_plastic_glow.png differ diff --git a/public/textures/mekanismadditions/cyan_plastic_glow_slab.png b/public/textures/mekanismadditions/cyan_plastic_glow_slab.png new file mode 100644 index 00000000..a490cd0d Binary files /dev/null and b/public/textures/mekanismadditions/cyan_plastic_glow_slab.png differ diff --git a/public/textures/mekanismadditions/cyan_plastic_glow_stairs.png b/public/textures/mekanismadditions/cyan_plastic_glow_stairs.png new file mode 100644 index 00000000..4bd95e88 Binary files /dev/null and b/public/textures/mekanismadditions/cyan_plastic_glow_stairs.png differ diff --git a/public/textures/mekanismadditions/cyan_plastic_road.png b/public/textures/mekanismadditions/cyan_plastic_road.png new file mode 100644 index 00000000..3fa8fb19 Binary files /dev/null and b/public/textures/mekanismadditions/cyan_plastic_road.png differ diff --git a/public/textures/mekanismadditions/cyan_plastic_slab.png b/public/textures/mekanismadditions/cyan_plastic_slab.png new file mode 100644 index 00000000..b0bb7cb9 Binary files /dev/null and b/public/textures/mekanismadditions/cyan_plastic_slab.png differ diff --git a/public/textures/mekanismadditions/cyan_plastic_stairs.png b/public/textures/mekanismadditions/cyan_plastic_stairs.png new file mode 100644 index 00000000..76267495 Binary files /dev/null and b/public/textures/mekanismadditions/cyan_plastic_stairs.png differ diff --git a/public/textures/mekanismadditions/cyan_plastic_transparent.png b/public/textures/mekanismadditions/cyan_plastic_transparent.png new file mode 100644 index 00000000..12be2164 Binary files /dev/null and b/public/textures/mekanismadditions/cyan_plastic_transparent.png differ diff --git a/public/textures/mekanismadditions/cyan_plastic_transparent_slab.png b/public/textures/mekanismadditions/cyan_plastic_transparent_slab.png new file mode 100644 index 00000000..a2722cf2 Binary files /dev/null and b/public/textures/mekanismadditions/cyan_plastic_transparent_slab.png differ diff --git a/public/textures/mekanismadditions/cyan_plastic_transparent_stairs.png b/public/textures/mekanismadditions/cyan_plastic_transparent_stairs.png new file mode 100644 index 00000000..83674d43 Binary files /dev/null and b/public/textures/mekanismadditions/cyan_plastic_transparent_stairs.png differ diff --git a/public/textures/mekanismadditions/cyan_reinforced_plastic.png b/public/textures/mekanismadditions/cyan_reinforced_plastic.png new file mode 100644 index 00000000..61527c99 Binary files /dev/null and b/public/textures/mekanismadditions/cyan_reinforced_plastic.png differ diff --git a/public/textures/mekanismadditions/cyan_slick_plastic.png b/public/textures/mekanismadditions/cyan_slick_plastic.png new file mode 100644 index 00000000..54a8e865 Binary files /dev/null and b/public/textures/mekanismadditions/cyan_slick_plastic.png differ diff --git a/public/textures/mekanismadditions/dark_red_balloon.png b/public/textures/mekanismadditions/dark_red_balloon.png new file mode 100644 index 00000000..bae84a05 Binary files /dev/null and b/public/textures/mekanismadditions/dark_red_balloon.png differ diff --git a/public/textures/mekanismadditions/dark_red_glow_panel.png b/public/textures/mekanismadditions/dark_red_glow_panel.png new file mode 100644 index 00000000..b77fb39f Binary files /dev/null and b/public/textures/mekanismadditions/dark_red_glow_panel.png differ diff --git a/public/textures/mekanismadditions/dark_red_plastic.png b/public/textures/mekanismadditions/dark_red_plastic.png new file mode 100644 index 00000000..65549b9d Binary files /dev/null and b/public/textures/mekanismadditions/dark_red_plastic.png differ diff --git a/public/textures/mekanismadditions/dark_red_plastic_fence.png b/public/textures/mekanismadditions/dark_red_plastic_fence.png new file mode 100644 index 00000000..e78a9e22 Binary files /dev/null and b/public/textures/mekanismadditions/dark_red_plastic_fence.png differ diff --git a/public/textures/mekanismadditions/dark_red_plastic_fence_gate.png b/public/textures/mekanismadditions/dark_red_plastic_fence_gate.png new file mode 100644 index 00000000..637a13fd Binary files /dev/null and b/public/textures/mekanismadditions/dark_red_plastic_fence_gate.png differ diff --git a/public/textures/mekanismadditions/dark_red_plastic_glow.png b/public/textures/mekanismadditions/dark_red_plastic_glow.png new file mode 100644 index 00000000..9199401d Binary files /dev/null and b/public/textures/mekanismadditions/dark_red_plastic_glow.png differ diff --git a/public/textures/mekanismadditions/dark_red_plastic_glow_slab.png b/public/textures/mekanismadditions/dark_red_plastic_glow_slab.png new file mode 100644 index 00000000..0ab90ee2 Binary files /dev/null and b/public/textures/mekanismadditions/dark_red_plastic_glow_slab.png differ diff --git a/public/textures/mekanismadditions/dark_red_plastic_glow_stairs.png b/public/textures/mekanismadditions/dark_red_plastic_glow_stairs.png new file mode 100644 index 00000000..cb8d69d7 Binary files /dev/null and b/public/textures/mekanismadditions/dark_red_plastic_glow_stairs.png differ diff --git a/public/textures/mekanismadditions/dark_red_plastic_road.png b/public/textures/mekanismadditions/dark_red_plastic_road.png new file mode 100644 index 00000000..9199401d Binary files /dev/null and b/public/textures/mekanismadditions/dark_red_plastic_road.png differ diff --git a/public/textures/mekanismadditions/dark_red_plastic_slab.png b/public/textures/mekanismadditions/dark_red_plastic_slab.png new file mode 100644 index 00000000..c4f9d948 Binary files /dev/null and b/public/textures/mekanismadditions/dark_red_plastic_slab.png differ diff --git a/public/textures/mekanismadditions/dark_red_plastic_stairs.png b/public/textures/mekanismadditions/dark_red_plastic_stairs.png new file mode 100644 index 00000000..c03892f4 Binary files /dev/null and b/public/textures/mekanismadditions/dark_red_plastic_stairs.png differ diff --git a/public/textures/mekanismadditions/dark_red_plastic_transparent.png b/public/textures/mekanismadditions/dark_red_plastic_transparent.png new file mode 100644 index 00000000..c18f4fc1 Binary files /dev/null and b/public/textures/mekanismadditions/dark_red_plastic_transparent.png differ diff --git a/public/textures/mekanismadditions/dark_red_plastic_transparent_slab.png b/public/textures/mekanismadditions/dark_red_plastic_transparent_slab.png new file mode 100644 index 00000000..9a637d6e Binary files /dev/null and b/public/textures/mekanismadditions/dark_red_plastic_transparent_slab.png differ diff --git a/public/textures/mekanismadditions/dark_red_plastic_transparent_stairs.png b/public/textures/mekanismadditions/dark_red_plastic_transparent_stairs.png new file mode 100644 index 00000000..f6ac3dd0 Binary files /dev/null and b/public/textures/mekanismadditions/dark_red_plastic_transparent_stairs.png differ diff --git a/public/textures/mekanismadditions/dark_red_reinforced_plastic.png b/public/textures/mekanismadditions/dark_red_reinforced_plastic.png new file mode 100644 index 00000000..c5c87fcb Binary files /dev/null and b/public/textures/mekanismadditions/dark_red_reinforced_plastic.png differ diff --git a/public/textures/mekanismadditions/dark_red_slick_plastic.png b/public/textures/mekanismadditions/dark_red_slick_plastic.png new file mode 100644 index 00000000..9e9294ab Binary files /dev/null and b/public/textures/mekanismadditions/dark_red_slick_plastic.png differ diff --git a/public/textures/mekanismadditions/gray_balloon.png b/public/textures/mekanismadditions/gray_balloon.png new file mode 100644 index 00000000..5c173af6 Binary files /dev/null and b/public/textures/mekanismadditions/gray_balloon.png differ diff --git a/public/textures/mekanismadditions/gray_glow_panel.png b/public/textures/mekanismadditions/gray_glow_panel.png new file mode 100644 index 00000000..56c90852 Binary files /dev/null and b/public/textures/mekanismadditions/gray_glow_panel.png differ diff --git a/public/textures/mekanismadditions/gray_plastic.png b/public/textures/mekanismadditions/gray_plastic.png new file mode 100644 index 00000000..fec34431 Binary files /dev/null and b/public/textures/mekanismadditions/gray_plastic.png differ diff --git a/public/textures/mekanismadditions/gray_plastic_fence.png b/public/textures/mekanismadditions/gray_plastic_fence.png new file mode 100644 index 00000000..e92394ee Binary files /dev/null and b/public/textures/mekanismadditions/gray_plastic_fence.png differ diff --git a/public/textures/mekanismadditions/gray_plastic_fence_gate.png b/public/textures/mekanismadditions/gray_plastic_fence_gate.png new file mode 100644 index 00000000..3a295b20 Binary files /dev/null and b/public/textures/mekanismadditions/gray_plastic_fence_gate.png differ diff --git a/public/textures/mekanismadditions/gray_plastic_glow.png b/public/textures/mekanismadditions/gray_plastic_glow.png new file mode 100644 index 00000000..75340e2c Binary files /dev/null and b/public/textures/mekanismadditions/gray_plastic_glow.png differ diff --git a/public/textures/mekanismadditions/gray_plastic_glow_slab.png b/public/textures/mekanismadditions/gray_plastic_glow_slab.png new file mode 100644 index 00000000..30e4359c Binary files /dev/null and b/public/textures/mekanismadditions/gray_plastic_glow_slab.png differ diff --git a/public/textures/mekanismadditions/gray_plastic_glow_stairs.png b/public/textures/mekanismadditions/gray_plastic_glow_stairs.png new file mode 100644 index 00000000..d7383a95 Binary files /dev/null and b/public/textures/mekanismadditions/gray_plastic_glow_stairs.png differ diff --git a/public/textures/mekanismadditions/gray_plastic_road.png b/public/textures/mekanismadditions/gray_plastic_road.png new file mode 100644 index 00000000..75340e2c Binary files /dev/null and b/public/textures/mekanismadditions/gray_plastic_road.png differ diff --git a/public/textures/mekanismadditions/gray_plastic_slab.png b/public/textures/mekanismadditions/gray_plastic_slab.png new file mode 100644 index 00000000..e1baf42e Binary files /dev/null and b/public/textures/mekanismadditions/gray_plastic_slab.png differ diff --git a/public/textures/mekanismadditions/gray_plastic_stairs.png b/public/textures/mekanismadditions/gray_plastic_stairs.png new file mode 100644 index 00000000..f46fc577 Binary files /dev/null and b/public/textures/mekanismadditions/gray_plastic_stairs.png differ diff --git a/public/textures/mekanismadditions/gray_plastic_transparent.png b/public/textures/mekanismadditions/gray_plastic_transparent.png new file mode 100644 index 00000000..6a55b7d3 Binary files /dev/null and b/public/textures/mekanismadditions/gray_plastic_transparent.png differ diff --git a/public/textures/mekanismadditions/gray_plastic_transparent_slab.png b/public/textures/mekanismadditions/gray_plastic_transparent_slab.png new file mode 100644 index 00000000..7069b105 Binary files /dev/null and b/public/textures/mekanismadditions/gray_plastic_transparent_slab.png differ diff --git a/public/textures/mekanismadditions/gray_plastic_transparent_stairs.png b/public/textures/mekanismadditions/gray_plastic_transparent_stairs.png new file mode 100644 index 00000000..bb4c0060 Binary files /dev/null and b/public/textures/mekanismadditions/gray_plastic_transparent_stairs.png differ diff --git a/public/textures/mekanismadditions/gray_reinforced_plastic.png b/public/textures/mekanismadditions/gray_reinforced_plastic.png new file mode 100644 index 00000000..9953e0cf Binary files /dev/null and b/public/textures/mekanismadditions/gray_reinforced_plastic.png differ diff --git a/public/textures/mekanismadditions/gray_slick_plastic.png b/public/textures/mekanismadditions/gray_slick_plastic.png new file mode 100644 index 00000000..2e75f8e7 Binary files /dev/null and b/public/textures/mekanismadditions/gray_slick_plastic.png differ diff --git a/public/textures/mekanismadditions/green_balloon.png b/public/textures/mekanismadditions/green_balloon.png new file mode 100644 index 00000000..80e45977 Binary files /dev/null and b/public/textures/mekanismadditions/green_balloon.png differ diff --git a/public/textures/mekanismadditions/green_glow_panel.png b/public/textures/mekanismadditions/green_glow_panel.png new file mode 100644 index 00000000..134c2346 Binary files /dev/null and b/public/textures/mekanismadditions/green_glow_panel.png differ diff --git a/public/textures/mekanismadditions/green_plastic.png b/public/textures/mekanismadditions/green_plastic.png new file mode 100644 index 00000000..d4867479 Binary files /dev/null and b/public/textures/mekanismadditions/green_plastic.png differ diff --git a/public/textures/mekanismadditions/green_plastic_fence.png b/public/textures/mekanismadditions/green_plastic_fence.png new file mode 100644 index 00000000..5f496582 Binary files /dev/null and b/public/textures/mekanismadditions/green_plastic_fence.png differ diff --git a/public/textures/mekanismadditions/green_plastic_fence_gate.png b/public/textures/mekanismadditions/green_plastic_fence_gate.png new file mode 100644 index 00000000..72fc541e Binary files /dev/null and b/public/textures/mekanismadditions/green_plastic_fence_gate.png differ diff --git a/public/textures/mekanismadditions/green_plastic_glow.png b/public/textures/mekanismadditions/green_plastic_glow.png new file mode 100644 index 00000000..45f9a11a Binary files /dev/null and b/public/textures/mekanismadditions/green_plastic_glow.png differ diff --git a/public/textures/mekanismadditions/green_plastic_glow_slab.png b/public/textures/mekanismadditions/green_plastic_glow_slab.png new file mode 100644 index 00000000..e70c1d80 Binary files /dev/null and b/public/textures/mekanismadditions/green_plastic_glow_slab.png differ diff --git a/public/textures/mekanismadditions/green_plastic_glow_stairs.png b/public/textures/mekanismadditions/green_plastic_glow_stairs.png new file mode 100644 index 00000000..7c1f3af5 Binary files /dev/null and b/public/textures/mekanismadditions/green_plastic_glow_stairs.png differ diff --git a/public/textures/mekanismadditions/green_plastic_road.png b/public/textures/mekanismadditions/green_plastic_road.png new file mode 100644 index 00000000..45f9a11a Binary files /dev/null and b/public/textures/mekanismadditions/green_plastic_road.png differ diff --git a/public/textures/mekanismadditions/green_plastic_slab.png b/public/textures/mekanismadditions/green_plastic_slab.png new file mode 100644 index 00000000..61309fee Binary files /dev/null and b/public/textures/mekanismadditions/green_plastic_slab.png differ diff --git a/public/textures/mekanismadditions/green_plastic_stairs.png b/public/textures/mekanismadditions/green_plastic_stairs.png new file mode 100644 index 00000000..3c8fcb52 Binary files /dev/null and b/public/textures/mekanismadditions/green_plastic_stairs.png differ diff --git a/public/textures/mekanismadditions/green_plastic_transparent.png b/public/textures/mekanismadditions/green_plastic_transparent.png new file mode 100644 index 00000000..7ea3df99 Binary files /dev/null and b/public/textures/mekanismadditions/green_plastic_transparent.png differ diff --git a/public/textures/mekanismadditions/green_plastic_transparent_slab.png b/public/textures/mekanismadditions/green_plastic_transparent_slab.png new file mode 100644 index 00000000..0b020439 Binary files /dev/null and b/public/textures/mekanismadditions/green_plastic_transparent_slab.png differ diff --git a/public/textures/mekanismadditions/green_plastic_transparent_stairs.png b/public/textures/mekanismadditions/green_plastic_transparent_stairs.png new file mode 100644 index 00000000..e67a443c Binary files /dev/null and b/public/textures/mekanismadditions/green_plastic_transparent_stairs.png differ diff --git a/public/textures/mekanismadditions/green_reinforced_plastic.png b/public/textures/mekanismadditions/green_reinforced_plastic.png new file mode 100644 index 00000000..c6cb3fd7 Binary files /dev/null and b/public/textures/mekanismadditions/green_reinforced_plastic.png differ diff --git a/public/textures/mekanismadditions/green_slick_plastic.png b/public/textures/mekanismadditions/green_slick_plastic.png new file mode 100644 index 00000000..363e646f Binary files /dev/null and b/public/textures/mekanismadditions/green_slick_plastic.png differ diff --git a/public/textures/mekanismadditions/light_blue_balloon.png b/public/textures/mekanismadditions/light_blue_balloon.png new file mode 100644 index 00000000..aaf78a57 Binary files /dev/null and b/public/textures/mekanismadditions/light_blue_balloon.png differ diff --git a/public/textures/mekanismadditions/light_blue_glow_panel.png b/public/textures/mekanismadditions/light_blue_glow_panel.png new file mode 100644 index 00000000..7059362b Binary files /dev/null and b/public/textures/mekanismadditions/light_blue_glow_panel.png differ diff --git a/public/textures/mekanismadditions/light_blue_plastic.png b/public/textures/mekanismadditions/light_blue_plastic.png new file mode 100644 index 00000000..7cd42e9a Binary files /dev/null and b/public/textures/mekanismadditions/light_blue_plastic.png differ diff --git a/public/textures/mekanismadditions/light_blue_plastic_fence.png b/public/textures/mekanismadditions/light_blue_plastic_fence.png new file mode 100644 index 00000000..b36f3043 Binary files /dev/null and b/public/textures/mekanismadditions/light_blue_plastic_fence.png differ diff --git a/public/textures/mekanismadditions/light_blue_plastic_fence_gate.png b/public/textures/mekanismadditions/light_blue_plastic_fence_gate.png new file mode 100644 index 00000000..881f5476 Binary files /dev/null and b/public/textures/mekanismadditions/light_blue_plastic_fence_gate.png differ diff --git a/public/textures/mekanismadditions/light_blue_plastic_glow.png b/public/textures/mekanismadditions/light_blue_plastic_glow.png new file mode 100644 index 00000000..9375ec3a Binary files /dev/null and b/public/textures/mekanismadditions/light_blue_plastic_glow.png differ diff --git a/public/textures/mekanismadditions/light_blue_plastic_glow_slab.png b/public/textures/mekanismadditions/light_blue_plastic_glow_slab.png new file mode 100644 index 00000000..f75ada84 Binary files /dev/null and b/public/textures/mekanismadditions/light_blue_plastic_glow_slab.png differ diff --git a/public/textures/mekanismadditions/light_blue_plastic_glow_stairs.png b/public/textures/mekanismadditions/light_blue_plastic_glow_stairs.png new file mode 100644 index 00000000..53d97372 Binary files /dev/null and b/public/textures/mekanismadditions/light_blue_plastic_glow_stairs.png differ diff --git a/public/textures/mekanismadditions/light_blue_plastic_road.png b/public/textures/mekanismadditions/light_blue_plastic_road.png new file mode 100644 index 00000000..9375ec3a Binary files /dev/null and b/public/textures/mekanismadditions/light_blue_plastic_road.png differ diff --git a/public/textures/mekanismadditions/light_blue_plastic_slab.png b/public/textures/mekanismadditions/light_blue_plastic_slab.png new file mode 100644 index 00000000..2f943c58 Binary files /dev/null and b/public/textures/mekanismadditions/light_blue_plastic_slab.png differ diff --git a/public/textures/mekanismadditions/light_blue_plastic_stairs.png b/public/textures/mekanismadditions/light_blue_plastic_stairs.png new file mode 100644 index 00000000..7c6ea0ab Binary files /dev/null and b/public/textures/mekanismadditions/light_blue_plastic_stairs.png differ diff --git a/public/textures/mekanismadditions/light_blue_plastic_transparent.png b/public/textures/mekanismadditions/light_blue_plastic_transparent.png new file mode 100644 index 00000000..6f633ac3 Binary files /dev/null and b/public/textures/mekanismadditions/light_blue_plastic_transparent.png differ diff --git a/public/textures/mekanismadditions/light_blue_plastic_transparent_slab.png b/public/textures/mekanismadditions/light_blue_plastic_transparent_slab.png new file mode 100644 index 00000000..2373b6e9 Binary files /dev/null and b/public/textures/mekanismadditions/light_blue_plastic_transparent_slab.png differ diff --git a/public/textures/mekanismadditions/light_blue_plastic_transparent_stairs.png b/public/textures/mekanismadditions/light_blue_plastic_transparent_stairs.png new file mode 100644 index 00000000..25046fe2 Binary files /dev/null and b/public/textures/mekanismadditions/light_blue_plastic_transparent_stairs.png differ diff --git a/public/textures/mekanismadditions/light_blue_reinforced_plastic.png b/public/textures/mekanismadditions/light_blue_reinforced_plastic.png new file mode 100644 index 00000000..87a1b8e5 Binary files /dev/null and b/public/textures/mekanismadditions/light_blue_reinforced_plastic.png differ diff --git a/public/textures/mekanismadditions/light_blue_slick_plastic.png b/public/textures/mekanismadditions/light_blue_slick_plastic.png new file mode 100644 index 00000000..54c17617 Binary files /dev/null and b/public/textures/mekanismadditions/light_blue_slick_plastic.png differ diff --git a/public/textures/mekanismadditions/light_gray_balloon.png b/public/textures/mekanismadditions/light_gray_balloon.png new file mode 100644 index 00000000..923f5b4a Binary files /dev/null and b/public/textures/mekanismadditions/light_gray_balloon.png differ diff --git a/public/textures/mekanismadditions/light_gray_glow_panel.png b/public/textures/mekanismadditions/light_gray_glow_panel.png new file mode 100644 index 00000000..d6654b31 Binary files /dev/null and b/public/textures/mekanismadditions/light_gray_glow_panel.png differ diff --git a/public/textures/mekanismadditions/light_gray_plastic.png b/public/textures/mekanismadditions/light_gray_plastic.png new file mode 100644 index 00000000..4ab3aa2b Binary files /dev/null and b/public/textures/mekanismadditions/light_gray_plastic.png differ diff --git a/public/textures/mekanismadditions/light_gray_plastic_fence.png b/public/textures/mekanismadditions/light_gray_plastic_fence.png new file mode 100644 index 00000000..40f65962 Binary files /dev/null and b/public/textures/mekanismadditions/light_gray_plastic_fence.png differ diff --git a/public/textures/mekanismadditions/light_gray_plastic_fence_gate.png b/public/textures/mekanismadditions/light_gray_plastic_fence_gate.png new file mode 100644 index 00000000..7d492bc2 Binary files /dev/null and b/public/textures/mekanismadditions/light_gray_plastic_fence_gate.png differ diff --git a/public/textures/mekanismadditions/light_gray_plastic_glow.png b/public/textures/mekanismadditions/light_gray_plastic_glow.png new file mode 100644 index 00000000..d31bedc7 Binary files /dev/null and b/public/textures/mekanismadditions/light_gray_plastic_glow.png differ diff --git a/public/textures/mekanismadditions/light_gray_plastic_glow_slab.png b/public/textures/mekanismadditions/light_gray_plastic_glow_slab.png new file mode 100644 index 00000000..faa3c1a3 Binary files /dev/null and b/public/textures/mekanismadditions/light_gray_plastic_glow_slab.png differ diff --git a/public/textures/mekanismadditions/light_gray_plastic_glow_stairs.png b/public/textures/mekanismadditions/light_gray_plastic_glow_stairs.png new file mode 100644 index 00000000..610fa38b Binary files /dev/null and b/public/textures/mekanismadditions/light_gray_plastic_glow_stairs.png differ diff --git a/public/textures/mekanismadditions/light_gray_plastic_road.png b/public/textures/mekanismadditions/light_gray_plastic_road.png new file mode 100644 index 00000000..d31bedc7 Binary files /dev/null and b/public/textures/mekanismadditions/light_gray_plastic_road.png differ diff --git a/public/textures/mekanismadditions/light_gray_plastic_slab.png b/public/textures/mekanismadditions/light_gray_plastic_slab.png new file mode 100644 index 00000000..d44a7b27 Binary files /dev/null and b/public/textures/mekanismadditions/light_gray_plastic_slab.png differ diff --git a/public/textures/mekanismadditions/light_gray_plastic_stairs.png b/public/textures/mekanismadditions/light_gray_plastic_stairs.png new file mode 100644 index 00000000..d27e68a8 Binary files /dev/null and b/public/textures/mekanismadditions/light_gray_plastic_stairs.png differ diff --git a/public/textures/mekanismadditions/light_gray_plastic_transparent.png b/public/textures/mekanismadditions/light_gray_plastic_transparent.png new file mode 100644 index 00000000..ec948c39 Binary files /dev/null and b/public/textures/mekanismadditions/light_gray_plastic_transparent.png differ diff --git a/public/textures/mekanismadditions/light_gray_plastic_transparent_slab.png b/public/textures/mekanismadditions/light_gray_plastic_transparent_slab.png new file mode 100644 index 00000000..845bfeda Binary files /dev/null and b/public/textures/mekanismadditions/light_gray_plastic_transparent_slab.png differ diff --git a/public/textures/mekanismadditions/light_gray_plastic_transparent_stairs.png b/public/textures/mekanismadditions/light_gray_plastic_transparent_stairs.png new file mode 100644 index 00000000..83b75015 Binary files /dev/null and b/public/textures/mekanismadditions/light_gray_plastic_transparent_stairs.png differ diff --git a/public/textures/mekanismadditions/light_gray_reinforced_plastic.png b/public/textures/mekanismadditions/light_gray_reinforced_plastic.png new file mode 100644 index 00000000..224527a4 Binary files /dev/null and b/public/textures/mekanismadditions/light_gray_reinforced_plastic.png differ diff --git a/public/textures/mekanismadditions/light_gray_slick_plastic.png b/public/textures/mekanismadditions/light_gray_slick_plastic.png new file mode 100644 index 00000000..ce10d628 Binary files /dev/null and b/public/textures/mekanismadditions/light_gray_slick_plastic.png differ diff --git a/public/textures/mekanismadditions/lime_balloon.png b/public/textures/mekanismadditions/lime_balloon.png new file mode 100644 index 00000000..83e74d98 Binary files /dev/null and b/public/textures/mekanismadditions/lime_balloon.png differ diff --git a/public/textures/mekanismadditions/lime_glow_panel.png b/public/textures/mekanismadditions/lime_glow_panel.png new file mode 100644 index 00000000..81622668 Binary files /dev/null and b/public/textures/mekanismadditions/lime_glow_panel.png differ diff --git a/public/textures/mekanismadditions/lime_plastic.png b/public/textures/mekanismadditions/lime_plastic.png new file mode 100644 index 00000000..e93a481d Binary files /dev/null and b/public/textures/mekanismadditions/lime_plastic.png differ diff --git a/public/textures/mekanismadditions/lime_plastic_fence.png b/public/textures/mekanismadditions/lime_plastic_fence.png new file mode 100644 index 00000000..17a41e8d Binary files /dev/null and b/public/textures/mekanismadditions/lime_plastic_fence.png differ diff --git a/public/textures/mekanismadditions/lime_plastic_fence_gate.png b/public/textures/mekanismadditions/lime_plastic_fence_gate.png new file mode 100644 index 00000000..24fded60 Binary files /dev/null and b/public/textures/mekanismadditions/lime_plastic_fence_gate.png differ diff --git a/public/textures/mekanismadditions/lime_plastic_glow.png b/public/textures/mekanismadditions/lime_plastic_glow.png new file mode 100644 index 00000000..5c9d05cf Binary files /dev/null and b/public/textures/mekanismadditions/lime_plastic_glow.png differ diff --git a/public/textures/mekanismadditions/lime_plastic_glow_slab.png b/public/textures/mekanismadditions/lime_plastic_glow_slab.png new file mode 100644 index 00000000..e7846455 Binary files /dev/null and b/public/textures/mekanismadditions/lime_plastic_glow_slab.png differ diff --git a/public/textures/mekanismadditions/lime_plastic_glow_stairs.png b/public/textures/mekanismadditions/lime_plastic_glow_stairs.png new file mode 100644 index 00000000..4ff33b7b Binary files /dev/null and b/public/textures/mekanismadditions/lime_plastic_glow_stairs.png differ diff --git a/public/textures/mekanismadditions/lime_plastic_road.png b/public/textures/mekanismadditions/lime_plastic_road.png new file mode 100644 index 00000000..5c9d05cf Binary files /dev/null and b/public/textures/mekanismadditions/lime_plastic_road.png differ diff --git a/public/textures/mekanismadditions/lime_plastic_slab.png b/public/textures/mekanismadditions/lime_plastic_slab.png new file mode 100644 index 00000000..99924467 Binary files /dev/null and b/public/textures/mekanismadditions/lime_plastic_slab.png differ diff --git a/public/textures/mekanismadditions/lime_plastic_stairs.png b/public/textures/mekanismadditions/lime_plastic_stairs.png new file mode 100644 index 00000000..2db99ce3 Binary files /dev/null and b/public/textures/mekanismadditions/lime_plastic_stairs.png differ diff --git a/public/textures/mekanismadditions/lime_plastic_transparent.png b/public/textures/mekanismadditions/lime_plastic_transparent.png new file mode 100644 index 00000000..8faca130 Binary files /dev/null and b/public/textures/mekanismadditions/lime_plastic_transparent.png differ diff --git a/public/textures/mekanismadditions/lime_plastic_transparent_slab.png b/public/textures/mekanismadditions/lime_plastic_transparent_slab.png new file mode 100644 index 00000000..bda5913a Binary files /dev/null and b/public/textures/mekanismadditions/lime_plastic_transparent_slab.png differ diff --git a/public/textures/mekanismadditions/lime_plastic_transparent_stairs.png b/public/textures/mekanismadditions/lime_plastic_transparent_stairs.png new file mode 100644 index 00000000..f16e0fc8 Binary files /dev/null and b/public/textures/mekanismadditions/lime_plastic_transparent_stairs.png differ diff --git a/public/textures/mekanismadditions/lime_reinforced_plastic.png b/public/textures/mekanismadditions/lime_reinforced_plastic.png new file mode 100644 index 00000000..0583bc40 Binary files /dev/null and b/public/textures/mekanismadditions/lime_reinforced_plastic.png differ diff --git a/public/textures/mekanismadditions/lime_slick_plastic.png b/public/textures/mekanismadditions/lime_slick_plastic.png new file mode 100644 index 00000000..1af7895e Binary files /dev/null and b/public/textures/mekanismadditions/lime_slick_plastic.png differ diff --git a/public/textures/mekanismadditions/magenta_balloon.png b/public/textures/mekanismadditions/magenta_balloon.png new file mode 100644 index 00000000..b4171140 Binary files /dev/null and b/public/textures/mekanismadditions/magenta_balloon.png differ diff --git a/public/textures/mekanismadditions/magenta_glow_panel.png b/public/textures/mekanismadditions/magenta_glow_panel.png new file mode 100644 index 00000000..9b5c933f Binary files /dev/null and b/public/textures/mekanismadditions/magenta_glow_panel.png differ diff --git a/public/textures/mekanismadditions/magenta_plastic.png b/public/textures/mekanismadditions/magenta_plastic.png new file mode 100644 index 00000000..c7ba1283 Binary files /dev/null and b/public/textures/mekanismadditions/magenta_plastic.png differ diff --git a/public/textures/mekanismadditions/magenta_plastic_fence.png b/public/textures/mekanismadditions/magenta_plastic_fence.png new file mode 100644 index 00000000..3f03f8aa Binary files /dev/null and b/public/textures/mekanismadditions/magenta_plastic_fence.png differ diff --git a/public/textures/mekanismadditions/magenta_plastic_fence_gate.png b/public/textures/mekanismadditions/magenta_plastic_fence_gate.png new file mode 100644 index 00000000..0b48081f Binary files /dev/null and b/public/textures/mekanismadditions/magenta_plastic_fence_gate.png differ diff --git a/public/textures/mekanismadditions/magenta_plastic_glow.png b/public/textures/mekanismadditions/magenta_plastic_glow.png new file mode 100644 index 00000000..ae4eadaf Binary files /dev/null and b/public/textures/mekanismadditions/magenta_plastic_glow.png differ diff --git a/public/textures/mekanismadditions/magenta_plastic_glow_slab.png b/public/textures/mekanismadditions/magenta_plastic_glow_slab.png new file mode 100644 index 00000000..028645fb Binary files /dev/null and b/public/textures/mekanismadditions/magenta_plastic_glow_slab.png differ diff --git a/public/textures/mekanismadditions/magenta_plastic_glow_stairs.png b/public/textures/mekanismadditions/magenta_plastic_glow_stairs.png new file mode 100644 index 00000000..66e80329 Binary files /dev/null and b/public/textures/mekanismadditions/magenta_plastic_glow_stairs.png differ diff --git a/public/textures/mekanismadditions/magenta_plastic_road.png b/public/textures/mekanismadditions/magenta_plastic_road.png new file mode 100644 index 00000000..ae4eadaf Binary files /dev/null and b/public/textures/mekanismadditions/magenta_plastic_road.png differ diff --git a/public/textures/mekanismadditions/magenta_plastic_slab.png b/public/textures/mekanismadditions/magenta_plastic_slab.png new file mode 100644 index 00000000..444e0033 Binary files /dev/null and b/public/textures/mekanismadditions/magenta_plastic_slab.png differ diff --git a/public/textures/mekanismadditions/magenta_plastic_stairs.png b/public/textures/mekanismadditions/magenta_plastic_stairs.png new file mode 100644 index 00000000..afe0f578 Binary files /dev/null and b/public/textures/mekanismadditions/magenta_plastic_stairs.png differ diff --git a/public/textures/mekanismadditions/magenta_plastic_transparent.png b/public/textures/mekanismadditions/magenta_plastic_transparent.png new file mode 100644 index 00000000..d6c1ac66 Binary files /dev/null and b/public/textures/mekanismadditions/magenta_plastic_transparent.png differ diff --git a/public/textures/mekanismadditions/magenta_plastic_transparent_slab.png b/public/textures/mekanismadditions/magenta_plastic_transparent_slab.png new file mode 100644 index 00000000..bad6b056 Binary files /dev/null and b/public/textures/mekanismadditions/magenta_plastic_transparent_slab.png differ diff --git a/public/textures/mekanismadditions/magenta_plastic_transparent_stairs.png b/public/textures/mekanismadditions/magenta_plastic_transparent_stairs.png new file mode 100644 index 00000000..4f60826e Binary files /dev/null and b/public/textures/mekanismadditions/magenta_plastic_transparent_stairs.png differ diff --git a/public/textures/mekanismadditions/magenta_reinforced_plastic.png b/public/textures/mekanismadditions/magenta_reinforced_plastic.png new file mode 100644 index 00000000..e27dd388 Binary files /dev/null and b/public/textures/mekanismadditions/magenta_reinforced_plastic.png differ diff --git a/public/textures/mekanismadditions/magenta_slick_plastic.png b/public/textures/mekanismadditions/magenta_slick_plastic.png new file mode 100644 index 00000000..3d2fb28c Binary files /dev/null and b/public/textures/mekanismadditions/magenta_slick_plastic.png differ diff --git a/public/textures/mekanismadditions/obsidian_tnt.png b/public/textures/mekanismadditions/obsidian_tnt.png new file mode 100644 index 00000000..dcdf96dc Binary files /dev/null and b/public/textures/mekanismadditions/obsidian_tnt.png differ diff --git a/public/textures/mekanismadditions/orange_balloon.png b/public/textures/mekanismadditions/orange_balloon.png new file mode 100644 index 00000000..b5d9e2c1 Binary files /dev/null and b/public/textures/mekanismadditions/orange_balloon.png differ diff --git a/public/textures/mekanismadditions/orange_glow_panel.png b/public/textures/mekanismadditions/orange_glow_panel.png new file mode 100644 index 00000000..9c342b30 Binary files /dev/null and b/public/textures/mekanismadditions/orange_glow_panel.png differ diff --git a/public/textures/mekanismadditions/orange_plastic.png b/public/textures/mekanismadditions/orange_plastic.png new file mode 100644 index 00000000..e89aee1d Binary files /dev/null and b/public/textures/mekanismadditions/orange_plastic.png differ diff --git a/public/textures/mekanismadditions/orange_plastic_fence.png b/public/textures/mekanismadditions/orange_plastic_fence.png new file mode 100644 index 00000000..95eeedf5 Binary files /dev/null and b/public/textures/mekanismadditions/orange_plastic_fence.png differ diff --git a/public/textures/mekanismadditions/orange_plastic_fence_gate.png b/public/textures/mekanismadditions/orange_plastic_fence_gate.png new file mode 100644 index 00000000..e5d6676c Binary files /dev/null and b/public/textures/mekanismadditions/orange_plastic_fence_gate.png differ diff --git a/public/textures/mekanismadditions/orange_plastic_glow.png b/public/textures/mekanismadditions/orange_plastic_glow.png new file mode 100644 index 00000000..b552a370 Binary files /dev/null and b/public/textures/mekanismadditions/orange_plastic_glow.png differ diff --git a/public/textures/mekanismadditions/orange_plastic_glow_slab.png b/public/textures/mekanismadditions/orange_plastic_glow_slab.png new file mode 100644 index 00000000..b7e040b7 Binary files /dev/null and b/public/textures/mekanismadditions/orange_plastic_glow_slab.png differ diff --git a/public/textures/mekanismadditions/orange_plastic_glow_stairs.png b/public/textures/mekanismadditions/orange_plastic_glow_stairs.png new file mode 100644 index 00000000..55b92001 Binary files /dev/null and b/public/textures/mekanismadditions/orange_plastic_glow_stairs.png differ diff --git a/public/textures/mekanismadditions/orange_plastic_road.png b/public/textures/mekanismadditions/orange_plastic_road.png new file mode 100644 index 00000000..b552a370 Binary files /dev/null and b/public/textures/mekanismadditions/orange_plastic_road.png differ diff --git a/public/textures/mekanismadditions/orange_plastic_slab.png b/public/textures/mekanismadditions/orange_plastic_slab.png new file mode 100644 index 00000000..a92280f2 Binary files /dev/null and b/public/textures/mekanismadditions/orange_plastic_slab.png differ diff --git a/public/textures/mekanismadditions/orange_plastic_stairs.png b/public/textures/mekanismadditions/orange_plastic_stairs.png new file mode 100644 index 00000000..884f28f3 Binary files /dev/null and b/public/textures/mekanismadditions/orange_plastic_stairs.png differ diff --git a/public/textures/mekanismadditions/orange_plastic_transparent.png b/public/textures/mekanismadditions/orange_plastic_transparent.png new file mode 100644 index 00000000..81a46a94 Binary files /dev/null and b/public/textures/mekanismadditions/orange_plastic_transparent.png differ diff --git a/public/textures/mekanismadditions/orange_plastic_transparent_slab.png b/public/textures/mekanismadditions/orange_plastic_transparent_slab.png new file mode 100644 index 00000000..0541ff97 Binary files /dev/null and b/public/textures/mekanismadditions/orange_plastic_transparent_slab.png differ diff --git a/public/textures/mekanismadditions/orange_plastic_transparent_stairs.png b/public/textures/mekanismadditions/orange_plastic_transparent_stairs.png new file mode 100644 index 00000000..0f1491b4 Binary files /dev/null and b/public/textures/mekanismadditions/orange_plastic_transparent_stairs.png differ diff --git a/public/textures/mekanismadditions/orange_reinforced_plastic.png b/public/textures/mekanismadditions/orange_reinforced_plastic.png new file mode 100644 index 00000000..feccfe1a Binary files /dev/null and b/public/textures/mekanismadditions/orange_reinforced_plastic.png differ diff --git a/public/textures/mekanismadditions/orange_slick_plastic.png b/public/textures/mekanismadditions/orange_slick_plastic.png new file mode 100644 index 00000000..4d07d342 Binary files /dev/null and b/public/textures/mekanismadditions/orange_slick_plastic.png differ diff --git a/public/textures/mekanismadditions/pink_balloon.png b/public/textures/mekanismadditions/pink_balloon.png new file mode 100644 index 00000000..b9062fbe Binary files /dev/null and b/public/textures/mekanismadditions/pink_balloon.png differ diff --git a/public/textures/mekanismadditions/pink_glow_panel.png b/public/textures/mekanismadditions/pink_glow_panel.png new file mode 100644 index 00000000..905e0ed2 Binary files /dev/null and b/public/textures/mekanismadditions/pink_glow_panel.png differ diff --git a/public/textures/mekanismadditions/pink_plastic.png b/public/textures/mekanismadditions/pink_plastic.png new file mode 100644 index 00000000..a1ad8023 Binary files /dev/null and b/public/textures/mekanismadditions/pink_plastic.png differ diff --git a/public/textures/mekanismadditions/pink_plastic_fence.png b/public/textures/mekanismadditions/pink_plastic_fence.png new file mode 100644 index 00000000..f8e99052 Binary files /dev/null and b/public/textures/mekanismadditions/pink_plastic_fence.png differ diff --git a/public/textures/mekanismadditions/pink_plastic_fence_gate.png b/public/textures/mekanismadditions/pink_plastic_fence_gate.png new file mode 100644 index 00000000..49a3ec77 Binary files /dev/null and b/public/textures/mekanismadditions/pink_plastic_fence_gate.png differ diff --git a/public/textures/mekanismadditions/pink_plastic_glow.png b/public/textures/mekanismadditions/pink_plastic_glow.png new file mode 100644 index 00000000..ec5a13b7 Binary files /dev/null and b/public/textures/mekanismadditions/pink_plastic_glow.png differ diff --git a/public/textures/mekanismadditions/pink_plastic_glow_slab.png b/public/textures/mekanismadditions/pink_plastic_glow_slab.png new file mode 100644 index 00000000..0e43b602 Binary files /dev/null and b/public/textures/mekanismadditions/pink_plastic_glow_slab.png differ diff --git a/public/textures/mekanismadditions/pink_plastic_glow_stairs.png b/public/textures/mekanismadditions/pink_plastic_glow_stairs.png new file mode 100644 index 00000000..3d40c9e6 Binary files /dev/null and b/public/textures/mekanismadditions/pink_plastic_glow_stairs.png differ diff --git a/public/textures/mekanismadditions/pink_plastic_road.png b/public/textures/mekanismadditions/pink_plastic_road.png new file mode 100644 index 00000000..ec5a13b7 Binary files /dev/null and b/public/textures/mekanismadditions/pink_plastic_road.png differ diff --git a/public/textures/mekanismadditions/pink_plastic_slab.png b/public/textures/mekanismadditions/pink_plastic_slab.png new file mode 100644 index 00000000..63b72763 Binary files /dev/null and b/public/textures/mekanismadditions/pink_plastic_slab.png differ diff --git a/public/textures/mekanismadditions/pink_plastic_stairs.png b/public/textures/mekanismadditions/pink_plastic_stairs.png new file mode 100644 index 00000000..9ad65741 Binary files /dev/null and b/public/textures/mekanismadditions/pink_plastic_stairs.png differ diff --git a/public/textures/mekanismadditions/pink_plastic_transparent.png b/public/textures/mekanismadditions/pink_plastic_transparent.png new file mode 100644 index 00000000..e86664b9 Binary files /dev/null and b/public/textures/mekanismadditions/pink_plastic_transparent.png differ diff --git a/public/textures/mekanismadditions/pink_plastic_transparent_slab.png b/public/textures/mekanismadditions/pink_plastic_transparent_slab.png new file mode 100644 index 00000000..df60fc13 Binary files /dev/null and b/public/textures/mekanismadditions/pink_plastic_transparent_slab.png differ diff --git a/public/textures/mekanismadditions/pink_plastic_transparent_stairs.png b/public/textures/mekanismadditions/pink_plastic_transparent_stairs.png new file mode 100644 index 00000000..a8314e29 Binary files /dev/null and b/public/textures/mekanismadditions/pink_plastic_transparent_stairs.png differ diff --git a/public/textures/mekanismadditions/pink_reinforced_plastic.png b/public/textures/mekanismadditions/pink_reinforced_plastic.png new file mode 100644 index 00000000..51f9e134 Binary files /dev/null and b/public/textures/mekanismadditions/pink_reinforced_plastic.png differ diff --git a/public/textures/mekanismadditions/pink_slick_plastic.png b/public/textures/mekanismadditions/pink_slick_plastic.png new file mode 100644 index 00000000..8aa7ac88 Binary files /dev/null and b/public/textures/mekanismadditions/pink_slick_plastic.png differ diff --git a/public/textures/mekanismadditions/purple_balloon.png b/public/textures/mekanismadditions/purple_balloon.png new file mode 100644 index 00000000..1e7d285b Binary files /dev/null and b/public/textures/mekanismadditions/purple_balloon.png differ diff --git a/public/textures/mekanismadditions/purple_glow_panel.png b/public/textures/mekanismadditions/purple_glow_panel.png new file mode 100644 index 00000000..153362ad Binary files /dev/null and b/public/textures/mekanismadditions/purple_glow_panel.png differ diff --git a/public/textures/mekanismadditions/purple_plastic.png b/public/textures/mekanismadditions/purple_plastic.png new file mode 100644 index 00000000..07142195 Binary files /dev/null and b/public/textures/mekanismadditions/purple_plastic.png differ diff --git a/public/textures/mekanismadditions/purple_plastic_fence.png b/public/textures/mekanismadditions/purple_plastic_fence.png new file mode 100644 index 00000000..cac6c2a7 Binary files /dev/null and b/public/textures/mekanismadditions/purple_plastic_fence.png differ diff --git a/public/textures/mekanismadditions/purple_plastic_fence_gate.png b/public/textures/mekanismadditions/purple_plastic_fence_gate.png new file mode 100644 index 00000000..50c85129 Binary files /dev/null and b/public/textures/mekanismadditions/purple_plastic_fence_gate.png differ diff --git a/public/textures/mekanismadditions/purple_plastic_glow.png b/public/textures/mekanismadditions/purple_plastic_glow.png new file mode 100644 index 00000000..6d530a4a Binary files /dev/null and b/public/textures/mekanismadditions/purple_plastic_glow.png differ diff --git a/public/textures/mekanismadditions/purple_plastic_glow_slab.png b/public/textures/mekanismadditions/purple_plastic_glow_slab.png new file mode 100644 index 00000000..1c6df84b Binary files /dev/null and b/public/textures/mekanismadditions/purple_plastic_glow_slab.png differ diff --git a/public/textures/mekanismadditions/purple_plastic_glow_stairs.png b/public/textures/mekanismadditions/purple_plastic_glow_stairs.png new file mode 100644 index 00000000..a42d2179 Binary files /dev/null and b/public/textures/mekanismadditions/purple_plastic_glow_stairs.png differ diff --git a/public/textures/mekanismadditions/purple_plastic_road.png b/public/textures/mekanismadditions/purple_plastic_road.png new file mode 100644 index 00000000..6d530a4a Binary files /dev/null and b/public/textures/mekanismadditions/purple_plastic_road.png differ diff --git a/public/textures/mekanismadditions/purple_plastic_slab.png b/public/textures/mekanismadditions/purple_plastic_slab.png new file mode 100644 index 00000000..74187b07 Binary files /dev/null and b/public/textures/mekanismadditions/purple_plastic_slab.png differ diff --git a/public/textures/mekanismadditions/purple_plastic_stairs.png b/public/textures/mekanismadditions/purple_plastic_stairs.png new file mode 100644 index 00000000..77ce77ad Binary files /dev/null and b/public/textures/mekanismadditions/purple_plastic_stairs.png differ diff --git a/public/textures/mekanismadditions/purple_plastic_transparent.png b/public/textures/mekanismadditions/purple_plastic_transparent.png new file mode 100644 index 00000000..1fc3d5e0 Binary files /dev/null and b/public/textures/mekanismadditions/purple_plastic_transparent.png differ diff --git a/public/textures/mekanismadditions/purple_plastic_transparent_slab.png b/public/textures/mekanismadditions/purple_plastic_transparent_slab.png new file mode 100644 index 00000000..3efe2db0 Binary files /dev/null and b/public/textures/mekanismadditions/purple_plastic_transparent_slab.png differ diff --git a/public/textures/mekanismadditions/purple_plastic_transparent_stairs.png b/public/textures/mekanismadditions/purple_plastic_transparent_stairs.png new file mode 100644 index 00000000..f3954864 Binary files /dev/null and b/public/textures/mekanismadditions/purple_plastic_transparent_stairs.png differ diff --git a/public/textures/mekanismadditions/purple_reinforced_plastic.png b/public/textures/mekanismadditions/purple_reinforced_plastic.png new file mode 100644 index 00000000..a7cee09d Binary files /dev/null and b/public/textures/mekanismadditions/purple_reinforced_plastic.png differ diff --git a/public/textures/mekanismadditions/purple_slick_plastic.png b/public/textures/mekanismadditions/purple_slick_plastic.png new file mode 100644 index 00000000..d90c5355 Binary files /dev/null and b/public/textures/mekanismadditions/purple_slick_plastic.png differ diff --git a/public/textures/mekanismadditions/red_balloon.png b/public/textures/mekanismadditions/red_balloon.png new file mode 100644 index 00000000..0b9f2dcf Binary files /dev/null and b/public/textures/mekanismadditions/red_balloon.png differ diff --git a/public/textures/mekanismadditions/red_glow_panel.png b/public/textures/mekanismadditions/red_glow_panel.png new file mode 100644 index 00000000..53655c44 Binary files /dev/null and b/public/textures/mekanismadditions/red_glow_panel.png differ diff --git a/public/textures/mekanismadditions/red_plastic.png b/public/textures/mekanismadditions/red_plastic.png new file mode 100644 index 00000000..87bbf3ef Binary files /dev/null and b/public/textures/mekanismadditions/red_plastic.png differ diff --git a/public/textures/mekanismadditions/red_plastic_fence.png b/public/textures/mekanismadditions/red_plastic_fence.png new file mode 100644 index 00000000..ff410fe5 Binary files /dev/null and b/public/textures/mekanismadditions/red_plastic_fence.png differ diff --git a/public/textures/mekanismadditions/red_plastic_fence_gate.png b/public/textures/mekanismadditions/red_plastic_fence_gate.png new file mode 100644 index 00000000..ba1946e4 Binary files /dev/null and b/public/textures/mekanismadditions/red_plastic_fence_gate.png differ diff --git a/public/textures/mekanismadditions/red_plastic_glow.png b/public/textures/mekanismadditions/red_plastic_glow.png new file mode 100644 index 00000000..7c09079c Binary files /dev/null and b/public/textures/mekanismadditions/red_plastic_glow.png differ diff --git a/public/textures/mekanismadditions/red_plastic_glow_slab.png b/public/textures/mekanismadditions/red_plastic_glow_slab.png new file mode 100644 index 00000000..0f1610f5 Binary files /dev/null and b/public/textures/mekanismadditions/red_plastic_glow_slab.png differ diff --git a/public/textures/mekanismadditions/red_plastic_glow_stairs.png b/public/textures/mekanismadditions/red_plastic_glow_stairs.png new file mode 100644 index 00000000..36198f57 Binary files /dev/null and b/public/textures/mekanismadditions/red_plastic_glow_stairs.png differ diff --git a/public/textures/mekanismadditions/red_plastic_road.png b/public/textures/mekanismadditions/red_plastic_road.png new file mode 100644 index 00000000..7c09079c Binary files /dev/null and b/public/textures/mekanismadditions/red_plastic_road.png differ diff --git a/public/textures/mekanismadditions/red_plastic_slab.png b/public/textures/mekanismadditions/red_plastic_slab.png new file mode 100644 index 00000000..3d79e6b7 Binary files /dev/null and b/public/textures/mekanismadditions/red_plastic_slab.png differ diff --git a/public/textures/mekanismadditions/red_plastic_stairs.png b/public/textures/mekanismadditions/red_plastic_stairs.png new file mode 100644 index 00000000..9c7a406c Binary files /dev/null and b/public/textures/mekanismadditions/red_plastic_stairs.png differ diff --git a/public/textures/mekanismadditions/red_plastic_transparent.png b/public/textures/mekanismadditions/red_plastic_transparent.png new file mode 100644 index 00000000..a9163ec9 Binary files /dev/null and b/public/textures/mekanismadditions/red_plastic_transparent.png differ diff --git a/public/textures/mekanismadditions/red_plastic_transparent_slab.png b/public/textures/mekanismadditions/red_plastic_transparent_slab.png new file mode 100644 index 00000000..d5d8125c Binary files /dev/null and b/public/textures/mekanismadditions/red_plastic_transparent_slab.png differ diff --git a/public/textures/mekanismadditions/red_plastic_transparent_stairs.png b/public/textures/mekanismadditions/red_plastic_transparent_stairs.png new file mode 100644 index 00000000..505f646f Binary files /dev/null and b/public/textures/mekanismadditions/red_plastic_transparent_stairs.png differ diff --git a/public/textures/mekanismadditions/red_reinforced_plastic.png b/public/textures/mekanismadditions/red_reinforced_plastic.png new file mode 100644 index 00000000..1681006a Binary files /dev/null and b/public/textures/mekanismadditions/red_reinforced_plastic.png differ diff --git a/public/textures/mekanismadditions/red_slick_plastic.png b/public/textures/mekanismadditions/red_slick_plastic.png new file mode 100644 index 00000000..daa30030 Binary files /dev/null and b/public/textures/mekanismadditions/red_slick_plastic.png differ diff --git a/public/textures/mekanismadditions/walkie_talkie.png b/public/textures/mekanismadditions/walkie_talkie.png new file mode 100644 index 00000000..1552adcc Binary files /dev/null and b/public/textures/mekanismadditions/walkie_talkie.png differ diff --git a/public/textures/mekanismadditions/white_balloon.png b/public/textures/mekanismadditions/white_balloon.png new file mode 100644 index 00000000..348cd3fd Binary files /dev/null and b/public/textures/mekanismadditions/white_balloon.png differ diff --git a/public/textures/mekanismadditions/white_glow_panel.png b/public/textures/mekanismadditions/white_glow_panel.png new file mode 100644 index 00000000..6375879f Binary files /dev/null and b/public/textures/mekanismadditions/white_glow_panel.png differ diff --git a/public/textures/mekanismadditions/white_plastic.png b/public/textures/mekanismadditions/white_plastic.png new file mode 100644 index 00000000..714ba012 Binary files /dev/null and b/public/textures/mekanismadditions/white_plastic.png differ diff --git a/public/textures/mekanismadditions/white_plastic_fence.png b/public/textures/mekanismadditions/white_plastic_fence.png new file mode 100644 index 00000000..c55148e3 Binary files /dev/null and b/public/textures/mekanismadditions/white_plastic_fence.png differ diff --git a/public/textures/mekanismadditions/white_plastic_fence_gate.png b/public/textures/mekanismadditions/white_plastic_fence_gate.png new file mode 100644 index 00000000..6cce0d18 Binary files /dev/null and b/public/textures/mekanismadditions/white_plastic_fence_gate.png differ diff --git a/public/textures/mekanismadditions/white_plastic_glow.png b/public/textures/mekanismadditions/white_plastic_glow.png new file mode 100644 index 00000000..2b7f0a92 Binary files /dev/null and b/public/textures/mekanismadditions/white_plastic_glow.png differ diff --git a/public/textures/mekanismadditions/white_plastic_glow_slab.png b/public/textures/mekanismadditions/white_plastic_glow_slab.png new file mode 100644 index 00000000..eaa9b369 Binary files /dev/null and b/public/textures/mekanismadditions/white_plastic_glow_slab.png differ diff --git a/public/textures/mekanismadditions/white_plastic_glow_stairs.png b/public/textures/mekanismadditions/white_plastic_glow_stairs.png new file mode 100644 index 00000000..8f383e6d Binary files /dev/null and b/public/textures/mekanismadditions/white_plastic_glow_stairs.png differ diff --git a/public/textures/mekanismadditions/white_plastic_road.png b/public/textures/mekanismadditions/white_plastic_road.png new file mode 100644 index 00000000..2b7f0a92 Binary files /dev/null and b/public/textures/mekanismadditions/white_plastic_road.png differ diff --git a/public/textures/mekanismadditions/white_plastic_slab.png b/public/textures/mekanismadditions/white_plastic_slab.png new file mode 100644 index 00000000..459e4cb3 Binary files /dev/null and b/public/textures/mekanismadditions/white_plastic_slab.png differ diff --git a/public/textures/mekanismadditions/white_plastic_stairs.png b/public/textures/mekanismadditions/white_plastic_stairs.png new file mode 100644 index 00000000..60209167 Binary files /dev/null and b/public/textures/mekanismadditions/white_plastic_stairs.png differ diff --git a/public/textures/mekanismadditions/white_plastic_transparent.png b/public/textures/mekanismadditions/white_plastic_transparent.png new file mode 100644 index 00000000..49ebdd55 Binary files /dev/null and b/public/textures/mekanismadditions/white_plastic_transparent.png differ diff --git a/public/textures/mekanismadditions/white_plastic_transparent_slab.png b/public/textures/mekanismadditions/white_plastic_transparent_slab.png new file mode 100644 index 00000000..09265668 Binary files /dev/null and b/public/textures/mekanismadditions/white_plastic_transparent_slab.png differ diff --git a/public/textures/mekanismadditions/white_plastic_transparent_stairs.png b/public/textures/mekanismadditions/white_plastic_transparent_stairs.png new file mode 100644 index 00000000..919d9798 Binary files /dev/null and b/public/textures/mekanismadditions/white_plastic_transparent_stairs.png differ diff --git a/public/textures/mekanismadditions/white_reinforced_plastic.png b/public/textures/mekanismadditions/white_reinforced_plastic.png new file mode 100644 index 00000000..024814e5 Binary files /dev/null and b/public/textures/mekanismadditions/white_reinforced_plastic.png differ diff --git a/public/textures/mekanismadditions/white_slick_plastic.png b/public/textures/mekanismadditions/white_slick_plastic.png new file mode 100644 index 00000000..3b1ec17e Binary files /dev/null and b/public/textures/mekanismadditions/white_slick_plastic.png differ diff --git a/public/textures/mekanismadditions/yellow_balloon.png b/public/textures/mekanismadditions/yellow_balloon.png new file mode 100644 index 00000000..463c8b60 Binary files /dev/null and b/public/textures/mekanismadditions/yellow_balloon.png differ diff --git a/public/textures/mekanismadditions/yellow_glow_panel.png b/public/textures/mekanismadditions/yellow_glow_panel.png new file mode 100644 index 00000000..55f4ba60 Binary files /dev/null and b/public/textures/mekanismadditions/yellow_glow_panel.png differ diff --git a/public/textures/mekanismadditions/yellow_plastic.png b/public/textures/mekanismadditions/yellow_plastic.png new file mode 100644 index 00000000..49909aed Binary files /dev/null and b/public/textures/mekanismadditions/yellow_plastic.png differ diff --git a/public/textures/mekanismadditions/yellow_plastic_fence.png b/public/textures/mekanismadditions/yellow_plastic_fence.png new file mode 100644 index 00000000..5315abea Binary files /dev/null and b/public/textures/mekanismadditions/yellow_plastic_fence.png differ diff --git a/public/textures/mekanismadditions/yellow_plastic_fence_gate.png b/public/textures/mekanismadditions/yellow_plastic_fence_gate.png new file mode 100644 index 00000000..213084a4 Binary files /dev/null and b/public/textures/mekanismadditions/yellow_plastic_fence_gate.png differ diff --git a/public/textures/mekanismadditions/yellow_plastic_glow.png b/public/textures/mekanismadditions/yellow_plastic_glow.png new file mode 100644 index 00000000..5f30dd7c Binary files /dev/null and b/public/textures/mekanismadditions/yellow_plastic_glow.png differ diff --git a/public/textures/mekanismadditions/yellow_plastic_glow_slab.png b/public/textures/mekanismadditions/yellow_plastic_glow_slab.png new file mode 100644 index 00000000..8dbdffbe Binary files /dev/null and b/public/textures/mekanismadditions/yellow_plastic_glow_slab.png differ diff --git a/public/textures/mekanismadditions/yellow_plastic_glow_stairs.png b/public/textures/mekanismadditions/yellow_plastic_glow_stairs.png new file mode 100644 index 00000000..14c10df0 Binary files /dev/null and b/public/textures/mekanismadditions/yellow_plastic_glow_stairs.png differ diff --git a/public/textures/mekanismadditions/yellow_plastic_road.png b/public/textures/mekanismadditions/yellow_plastic_road.png new file mode 100644 index 00000000..5f30dd7c Binary files /dev/null and b/public/textures/mekanismadditions/yellow_plastic_road.png differ diff --git a/public/textures/mekanismadditions/yellow_plastic_slab.png b/public/textures/mekanismadditions/yellow_plastic_slab.png new file mode 100644 index 00000000..cd1323fa Binary files /dev/null and b/public/textures/mekanismadditions/yellow_plastic_slab.png differ diff --git a/public/textures/mekanismadditions/yellow_plastic_stairs.png b/public/textures/mekanismadditions/yellow_plastic_stairs.png new file mode 100644 index 00000000..0b2e24b5 Binary files /dev/null and b/public/textures/mekanismadditions/yellow_plastic_stairs.png differ diff --git a/public/textures/mekanismadditions/yellow_plastic_transparent.png b/public/textures/mekanismadditions/yellow_plastic_transparent.png new file mode 100644 index 00000000..3c34f5a8 Binary files /dev/null and b/public/textures/mekanismadditions/yellow_plastic_transparent.png differ diff --git a/public/textures/mekanismadditions/yellow_plastic_transparent_slab.png b/public/textures/mekanismadditions/yellow_plastic_transparent_slab.png new file mode 100644 index 00000000..a844b6dc Binary files /dev/null and b/public/textures/mekanismadditions/yellow_plastic_transparent_slab.png differ diff --git a/public/textures/mekanismadditions/yellow_plastic_transparent_stairs.png b/public/textures/mekanismadditions/yellow_plastic_transparent_stairs.png new file mode 100644 index 00000000..ca162e35 Binary files /dev/null and b/public/textures/mekanismadditions/yellow_plastic_transparent_stairs.png differ diff --git a/public/textures/mekanismadditions/yellow_reinforced_plastic.png b/public/textures/mekanismadditions/yellow_reinforced_plastic.png new file mode 100644 index 00000000..207a194b Binary files /dev/null and b/public/textures/mekanismadditions/yellow_reinforced_plastic.png differ diff --git a/public/textures/mekanismadditions/yellow_slick_plastic.png b/public/textures/mekanismadditions/yellow_slick_plastic.png new file mode 100644 index 00000000..1311ee04 Binary files /dev/null and b/public/textures/mekanismadditions/yellow_slick_plastic.png differ diff --git a/public/textures/mekanismgenerators/advanced_solar_generator.png b/public/textures/mekanismgenerators/advanced_solar_generator.png new file mode 100644 index 00000000..08f7d16e Binary files /dev/null and b/public/textures/mekanismgenerators/advanced_solar_generator.png differ diff --git a/public/textures/mekanismgenerators/bio_generator.png b/public/textures/mekanismgenerators/bio_generator.png new file mode 100644 index 00000000..0fe5d7e7 Binary files /dev/null and b/public/textures/mekanismgenerators/bio_generator.png differ diff --git a/public/textures/mekanismgenerators/bioethanol_bucket.png b/public/textures/mekanismgenerators/bioethanol_bucket.png new file mode 100644 index 00000000..c6489ce0 Binary files /dev/null and b/public/textures/mekanismgenerators/bioethanol_bucket.png differ diff --git a/public/textures/mekanismgenerators/control_rod_assembly.png b/public/textures/mekanismgenerators/control_rod_assembly.png new file mode 100644 index 00000000..000ef67b Binary files /dev/null and b/public/textures/mekanismgenerators/control_rod_assembly.png differ diff --git a/public/textures/mekanismgenerators/deuterium_bucket.png b/public/textures/mekanismgenerators/deuterium_bucket.png new file mode 100644 index 00000000..479df579 Binary files /dev/null and b/public/textures/mekanismgenerators/deuterium_bucket.png differ diff --git a/public/textures/mekanismgenerators/electromagnetic_coil.png b/public/textures/mekanismgenerators/electromagnetic_coil.png new file mode 100644 index 00000000..4cceaed9 Binary files /dev/null and b/public/textures/mekanismgenerators/electromagnetic_coil.png differ diff --git a/public/textures/mekanismgenerators/fission_fuel_assembly.png b/public/textures/mekanismgenerators/fission_fuel_assembly.png new file mode 100644 index 00000000..c32933a3 Binary files /dev/null and b/public/textures/mekanismgenerators/fission_fuel_assembly.png differ diff --git a/public/textures/mekanismgenerators/fission_reactor_casing.png b/public/textures/mekanismgenerators/fission_reactor_casing.png new file mode 100644 index 00000000..95035ee2 Binary files /dev/null and b/public/textures/mekanismgenerators/fission_reactor_casing.png differ diff --git a/public/textures/mekanismgenerators/fission_reactor_logic_adapter.png b/public/textures/mekanismgenerators/fission_reactor_logic_adapter.png new file mode 100644 index 00000000..ed495ed5 Binary files /dev/null and b/public/textures/mekanismgenerators/fission_reactor_logic_adapter.png differ diff --git a/public/textures/mekanismgenerators/fission_reactor_port.png b/public/textures/mekanismgenerators/fission_reactor_port.png new file mode 100644 index 00000000..85f596da Binary files /dev/null and b/public/textures/mekanismgenerators/fission_reactor_port.png differ diff --git a/public/textures/mekanismgenerators/fusion_fuel_bucket.png b/public/textures/mekanismgenerators/fusion_fuel_bucket.png new file mode 100644 index 00000000..8bd8f68f Binary files /dev/null and b/public/textures/mekanismgenerators/fusion_fuel_bucket.png differ diff --git a/public/textures/mekanismgenerators/fusion_reactor_controller.png b/public/textures/mekanismgenerators/fusion_reactor_controller.png new file mode 100644 index 00000000..969084bc Binary files /dev/null and b/public/textures/mekanismgenerators/fusion_reactor_controller.png differ diff --git a/public/textures/mekanismgenerators/fusion_reactor_frame.png b/public/textures/mekanismgenerators/fusion_reactor_frame.png new file mode 100644 index 00000000..cf6341cb Binary files /dev/null and b/public/textures/mekanismgenerators/fusion_reactor_frame.png differ diff --git a/public/textures/mekanismgenerators/fusion_reactor_logic_adapter.png b/public/textures/mekanismgenerators/fusion_reactor_logic_adapter.png new file mode 100644 index 00000000..6cf76cfc Binary files /dev/null and b/public/textures/mekanismgenerators/fusion_reactor_logic_adapter.png differ diff --git a/public/textures/mekanismgenerators/fusion_reactor_port.png b/public/textures/mekanismgenerators/fusion_reactor_port.png new file mode 100644 index 00000000..6163965f Binary files /dev/null and b/public/textures/mekanismgenerators/fusion_reactor_port.png differ diff --git a/public/textures/mekanismgenerators/gas_burning_generator.png b/public/textures/mekanismgenerators/gas_burning_generator.png new file mode 100644 index 00000000..3dacc8f3 Binary files /dev/null and b/public/textures/mekanismgenerators/gas_burning_generator.png differ diff --git a/public/textures/mekanismgenerators/heat_generator.png b/public/textures/mekanismgenerators/heat_generator.png new file mode 100644 index 00000000..dc716372 Binary files /dev/null and b/public/textures/mekanismgenerators/heat_generator.png differ diff --git a/public/textures/mekanismgenerators/hohlraum.png b/public/textures/mekanismgenerators/hohlraum.png new file mode 100644 index 00000000..92ce4207 Binary files /dev/null and b/public/textures/mekanismgenerators/hohlraum.png differ diff --git a/public/textures/mekanismgenerators/hohlraum__{'mekanism__chemicals'__{chemical_tanks__[{amount__10L,id__'mekanismgenerators__fusion_fuel'}]}}.png b/public/textures/mekanismgenerators/hohlraum__{'mekanism__chemicals'__{chemical_tanks__[{amount__10L,id__'mekanismgenerators__fusion_fuel'}]}}.png new file mode 100644 index 00000000..92ce4207 Binary files /dev/null and b/public/textures/mekanismgenerators/hohlraum__{'mekanism__chemicals'__{chemical_tanks__[{amount__10L,id__'mekanismgenerators__fusion_fuel'}]}}.png differ diff --git a/public/textures/mekanismgenerators/laser_focus_matrix.png b/public/textures/mekanismgenerators/laser_focus_matrix.png new file mode 100644 index 00000000..dc4cb483 Binary files /dev/null and b/public/textures/mekanismgenerators/laser_focus_matrix.png differ diff --git a/public/textures/mekanismgenerators/module_geothermal_generator_unit.png b/public/textures/mekanismgenerators/module_geothermal_generator_unit.png new file mode 100644 index 00000000..4af23216 Binary files /dev/null and b/public/textures/mekanismgenerators/module_geothermal_generator_unit.png differ diff --git a/public/textures/mekanismgenerators/module_solar_recharging_unit.png b/public/textures/mekanismgenerators/module_solar_recharging_unit.png new file mode 100644 index 00000000..d112ba0e Binary files /dev/null and b/public/textures/mekanismgenerators/module_solar_recharging_unit.png differ diff --git a/public/textures/mekanismgenerators/reactor_glass.png b/public/textures/mekanismgenerators/reactor_glass.png new file mode 100644 index 00000000..3b5f9425 Binary files /dev/null and b/public/textures/mekanismgenerators/reactor_glass.png differ diff --git a/public/textures/mekanismgenerators/rotational_complex.png b/public/textures/mekanismgenerators/rotational_complex.png new file mode 100644 index 00000000..742612c2 Binary files /dev/null and b/public/textures/mekanismgenerators/rotational_complex.png differ diff --git a/public/textures/mekanismgenerators/saturating_condenser.png b/public/textures/mekanismgenerators/saturating_condenser.png new file mode 100644 index 00000000..0f36ca8b Binary files /dev/null and b/public/textures/mekanismgenerators/saturating_condenser.png differ diff --git a/public/textures/mekanismgenerators/solar_generator.png b/public/textures/mekanismgenerators/solar_generator.png new file mode 100644 index 00000000..a345f522 Binary files /dev/null and b/public/textures/mekanismgenerators/solar_generator.png differ diff --git a/public/textures/mekanismgenerators/solar_panel.png b/public/textures/mekanismgenerators/solar_panel.png new file mode 100644 index 00000000..9521243f Binary files /dev/null and b/public/textures/mekanismgenerators/solar_panel.png differ diff --git a/public/textures/mekanismgenerators/tritium_bucket.png b/public/textures/mekanismgenerators/tritium_bucket.png new file mode 100644 index 00000000..56f5079f Binary files /dev/null and b/public/textures/mekanismgenerators/tritium_bucket.png differ diff --git a/public/textures/mekanismgenerators/turbine_blade.png b/public/textures/mekanismgenerators/turbine_blade.png new file mode 100644 index 00000000..1e4a8429 Binary files /dev/null and b/public/textures/mekanismgenerators/turbine_blade.png differ diff --git a/public/textures/mekanismgenerators/turbine_casing.png b/public/textures/mekanismgenerators/turbine_casing.png new file mode 100644 index 00000000..44f33aac Binary files /dev/null and b/public/textures/mekanismgenerators/turbine_casing.png differ diff --git a/public/textures/mekanismgenerators/turbine_rotor.png b/public/textures/mekanismgenerators/turbine_rotor.png new file mode 100644 index 00000000..64007ef9 Binary files /dev/null and b/public/textures/mekanismgenerators/turbine_rotor.png differ diff --git a/public/textures/mekanismgenerators/turbine_valve.png b/public/textures/mekanismgenerators/turbine_valve.png new file mode 100644 index 00000000..60690179 Binary files /dev/null and b/public/textures/mekanismgenerators/turbine_valve.png differ diff --git a/public/textures/mekanismgenerators/turbine_vent.png b/public/textures/mekanismgenerators/turbine_vent.png new file mode 100644 index 00000000..2d866697 Binary files /dev/null and b/public/textures/mekanismgenerators/turbine_vent.png differ diff --git a/public/textures/mekanismgenerators/wind_generator.png b/public/textures/mekanismgenerators/wind_generator.png new file mode 100644 index 00000000..6d510c6c Binary files /dev/null and b/public/textures/mekanismgenerators/wind_generator.png differ diff --git a/public/textures/mekanismtools/bronze_axe.png b/public/textures/mekanismtools/bronze_axe.png new file mode 100644 index 00000000..3f94137e Binary files /dev/null and b/public/textures/mekanismtools/bronze_axe.png differ diff --git a/public/textures/mekanismtools/bronze_boots.png b/public/textures/mekanismtools/bronze_boots.png new file mode 100644 index 00000000..0ec54cbe Binary files /dev/null and b/public/textures/mekanismtools/bronze_boots.png differ diff --git a/public/textures/mekanismtools/bronze_chestplate.png b/public/textures/mekanismtools/bronze_chestplate.png new file mode 100644 index 00000000..71d226d8 Binary files /dev/null and b/public/textures/mekanismtools/bronze_chestplate.png differ diff --git a/public/textures/mekanismtools/bronze_helmet.png b/public/textures/mekanismtools/bronze_helmet.png new file mode 100644 index 00000000..fe43bce2 Binary files /dev/null and b/public/textures/mekanismtools/bronze_helmet.png differ diff --git a/public/textures/mekanismtools/bronze_hoe.png b/public/textures/mekanismtools/bronze_hoe.png new file mode 100644 index 00000000..f93c289b Binary files /dev/null and b/public/textures/mekanismtools/bronze_hoe.png differ diff --git a/public/textures/mekanismtools/bronze_leggings.png b/public/textures/mekanismtools/bronze_leggings.png new file mode 100644 index 00000000..b053c600 Binary files /dev/null and b/public/textures/mekanismtools/bronze_leggings.png differ diff --git a/public/textures/mekanismtools/bronze_paxel.png b/public/textures/mekanismtools/bronze_paxel.png new file mode 100644 index 00000000..0c1cd790 Binary files /dev/null and b/public/textures/mekanismtools/bronze_paxel.png differ diff --git a/public/textures/mekanismtools/bronze_pickaxe.png b/public/textures/mekanismtools/bronze_pickaxe.png new file mode 100644 index 00000000..2e9714a1 Binary files /dev/null and b/public/textures/mekanismtools/bronze_pickaxe.png differ diff --git a/public/textures/mekanismtools/bronze_shield.png b/public/textures/mekanismtools/bronze_shield.png new file mode 100644 index 00000000..ccd70111 Binary files /dev/null and b/public/textures/mekanismtools/bronze_shield.png differ diff --git a/public/textures/mekanismtools/bronze_shovel.png b/public/textures/mekanismtools/bronze_shovel.png new file mode 100644 index 00000000..cc9767cb Binary files /dev/null and b/public/textures/mekanismtools/bronze_shovel.png differ diff --git a/public/textures/mekanismtools/bronze_sword.png b/public/textures/mekanismtools/bronze_sword.png new file mode 100644 index 00000000..a4117603 Binary files /dev/null and b/public/textures/mekanismtools/bronze_sword.png differ diff --git a/public/textures/mekanismtools/diamond_paxel.png b/public/textures/mekanismtools/diamond_paxel.png new file mode 100644 index 00000000..d0980ae3 Binary files /dev/null and b/public/textures/mekanismtools/diamond_paxel.png differ diff --git a/public/textures/mekanismtools/gold_paxel.png b/public/textures/mekanismtools/gold_paxel.png new file mode 100644 index 00000000..26920bd0 Binary files /dev/null and b/public/textures/mekanismtools/gold_paxel.png differ diff --git a/public/textures/mekanismtools/iron_paxel.png b/public/textures/mekanismtools/iron_paxel.png new file mode 100644 index 00000000..ff206da9 Binary files /dev/null and b/public/textures/mekanismtools/iron_paxel.png differ diff --git a/public/textures/mekanismtools/lapis_lazuli_axe.png b/public/textures/mekanismtools/lapis_lazuli_axe.png new file mode 100644 index 00000000..5e642b1e Binary files /dev/null and b/public/textures/mekanismtools/lapis_lazuli_axe.png differ diff --git a/public/textures/mekanismtools/lapis_lazuli_boots.png b/public/textures/mekanismtools/lapis_lazuli_boots.png new file mode 100644 index 00000000..6fee280a Binary files /dev/null and b/public/textures/mekanismtools/lapis_lazuli_boots.png differ diff --git a/public/textures/mekanismtools/lapis_lazuli_chestplate.png b/public/textures/mekanismtools/lapis_lazuli_chestplate.png new file mode 100644 index 00000000..efb7e4d6 Binary files /dev/null and b/public/textures/mekanismtools/lapis_lazuli_chestplate.png differ diff --git a/public/textures/mekanismtools/lapis_lazuli_helmet.png b/public/textures/mekanismtools/lapis_lazuli_helmet.png new file mode 100644 index 00000000..da1bb44f Binary files /dev/null and b/public/textures/mekanismtools/lapis_lazuli_helmet.png differ diff --git a/public/textures/mekanismtools/lapis_lazuli_hoe.png b/public/textures/mekanismtools/lapis_lazuli_hoe.png new file mode 100644 index 00000000..6da2f455 Binary files /dev/null and b/public/textures/mekanismtools/lapis_lazuli_hoe.png differ diff --git a/public/textures/mekanismtools/lapis_lazuli_leggings.png b/public/textures/mekanismtools/lapis_lazuli_leggings.png new file mode 100644 index 00000000..571e3a67 Binary files /dev/null and b/public/textures/mekanismtools/lapis_lazuli_leggings.png differ diff --git a/public/textures/mekanismtools/lapis_lazuli_paxel.png b/public/textures/mekanismtools/lapis_lazuli_paxel.png new file mode 100644 index 00000000..54b14af1 Binary files /dev/null and b/public/textures/mekanismtools/lapis_lazuli_paxel.png differ diff --git a/public/textures/mekanismtools/lapis_lazuli_pickaxe.png b/public/textures/mekanismtools/lapis_lazuli_pickaxe.png new file mode 100644 index 00000000..da854642 Binary files /dev/null and b/public/textures/mekanismtools/lapis_lazuli_pickaxe.png differ diff --git a/public/textures/mekanismtools/lapis_lazuli_shield.png b/public/textures/mekanismtools/lapis_lazuli_shield.png new file mode 100644 index 00000000..07b54e4f Binary files /dev/null and b/public/textures/mekanismtools/lapis_lazuli_shield.png differ diff --git a/public/textures/mekanismtools/lapis_lazuli_shovel.png b/public/textures/mekanismtools/lapis_lazuli_shovel.png new file mode 100644 index 00000000..01ea3ddc Binary files /dev/null and b/public/textures/mekanismtools/lapis_lazuli_shovel.png differ diff --git a/public/textures/mekanismtools/lapis_lazuli_sword.png b/public/textures/mekanismtools/lapis_lazuli_sword.png new file mode 100644 index 00000000..1015bbc9 Binary files /dev/null and b/public/textures/mekanismtools/lapis_lazuli_sword.png differ diff --git a/public/textures/mekanismtools/netherite_paxel.png b/public/textures/mekanismtools/netherite_paxel.png new file mode 100644 index 00000000..3eb28255 Binary files /dev/null and b/public/textures/mekanismtools/netherite_paxel.png differ diff --git a/public/textures/mekanismtools/osmium_axe.png b/public/textures/mekanismtools/osmium_axe.png new file mode 100644 index 00000000..efd12ff4 Binary files /dev/null and b/public/textures/mekanismtools/osmium_axe.png differ diff --git a/public/textures/mekanismtools/osmium_boots.png b/public/textures/mekanismtools/osmium_boots.png new file mode 100644 index 00000000..788ebf79 Binary files /dev/null and b/public/textures/mekanismtools/osmium_boots.png differ diff --git a/public/textures/mekanismtools/osmium_chestplate.png b/public/textures/mekanismtools/osmium_chestplate.png new file mode 100644 index 00000000..d8a26d98 Binary files /dev/null and b/public/textures/mekanismtools/osmium_chestplate.png differ diff --git a/public/textures/mekanismtools/osmium_helmet.png b/public/textures/mekanismtools/osmium_helmet.png new file mode 100644 index 00000000..672af59f Binary files /dev/null and b/public/textures/mekanismtools/osmium_helmet.png differ diff --git a/public/textures/mekanismtools/osmium_hoe.png b/public/textures/mekanismtools/osmium_hoe.png new file mode 100644 index 00000000..2def7b3b Binary files /dev/null and b/public/textures/mekanismtools/osmium_hoe.png differ diff --git a/public/textures/mekanismtools/osmium_leggings.png b/public/textures/mekanismtools/osmium_leggings.png new file mode 100644 index 00000000..4588c987 Binary files /dev/null and b/public/textures/mekanismtools/osmium_leggings.png differ diff --git a/public/textures/mekanismtools/osmium_paxel.png b/public/textures/mekanismtools/osmium_paxel.png new file mode 100644 index 00000000..1a6d65cb Binary files /dev/null and b/public/textures/mekanismtools/osmium_paxel.png differ diff --git a/public/textures/mekanismtools/osmium_pickaxe.png b/public/textures/mekanismtools/osmium_pickaxe.png new file mode 100644 index 00000000..485c29f6 Binary files /dev/null and b/public/textures/mekanismtools/osmium_pickaxe.png differ diff --git a/public/textures/mekanismtools/osmium_shield.png b/public/textures/mekanismtools/osmium_shield.png new file mode 100644 index 00000000..181dc385 Binary files /dev/null and b/public/textures/mekanismtools/osmium_shield.png differ diff --git a/public/textures/mekanismtools/osmium_shovel.png b/public/textures/mekanismtools/osmium_shovel.png new file mode 100644 index 00000000..ccd6a1ee Binary files /dev/null and b/public/textures/mekanismtools/osmium_shovel.png differ diff --git a/public/textures/mekanismtools/osmium_sword.png b/public/textures/mekanismtools/osmium_sword.png new file mode 100644 index 00000000..40ffae79 Binary files /dev/null and b/public/textures/mekanismtools/osmium_sword.png differ diff --git a/public/textures/mekanismtools/refined_glowstone_axe.png b/public/textures/mekanismtools/refined_glowstone_axe.png new file mode 100644 index 00000000..66681409 Binary files /dev/null and b/public/textures/mekanismtools/refined_glowstone_axe.png differ diff --git a/public/textures/mekanismtools/refined_glowstone_boots.png b/public/textures/mekanismtools/refined_glowstone_boots.png new file mode 100644 index 00000000..ab8e606d Binary files /dev/null and b/public/textures/mekanismtools/refined_glowstone_boots.png differ diff --git a/public/textures/mekanismtools/refined_glowstone_chestplate.png b/public/textures/mekanismtools/refined_glowstone_chestplate.png new file mode 100644 index 00000000..f783a46a Binary files /dev/null and b/public/textures/mekanismtools/refined_glowstone_chestplate.png differ diff --git a/public/textures/mekanismtools/refined_glowstone_helmet.png b/public/textures/mekanismtools/refined_glowstone_helmet.png new file mode 100644 index 00000000..609d5143 Binary files /dev/null and b/public/textures/mekanismtools/refined_glowstone_helmet.png differ diff --git a/public/textures/mekanismtools/refined_glowstone_hoe.png b/public/textures/mekanismtools/refined_glowstone_hoe.png new file mode 100644 index 00000000..d576979d Binary files /dev/null and b/public/textures/mekanismtools/refined_glowstone_hoe.png differ diff --git a/public/textures/mekanismtools/refined_glowstone_leggings.png b/public/textures/mekanismtools/refined_glowstone_leggings.png new file mode 100644 index 00000000..f2c7478d Binary files /dev/null and b/public/textures/mekanismtools/refined_glowstone_leggings.png differ diff --git a/public/textures/mekanismtools/refined_glowstone_paxel.png b/public/textures/mekanismtools/refined_glowstone_paxel.png new file mode 100644 index 00000000..d696f117 Binary files /dev/null and b/public/textures/mekanismtools/refined_glowstone_paxel.png differ diff --git a/public/textures/mekanismtools/refined_glowstone_pickaxe.png b/public/textures/mekanismtools/refined_glowstone_pickaxe.png new file mode 100644 index 00000000..3b6d3b68 Binary files /dev/null and b/public/textures/mekanismtools/refined_glowstone_pickaxe.png differ diff --git a/public/textures/mekanismtools/refined_glowstone_shield.png b/public/textures/mekanismtools/refined_glowstone_shield.png new file mode 100644 index 00000000..3f0c20fd Binary files /dev/null and b/public/textures/mekanismtools/refined_glowstone_shield.png differ diff --git a/public/textures/mekanismtools/refined_glowstone_shovel.png b/public/textures/mekanismtools/refined_glowstone_shovel.png new file mode 100644 index 00000000..555db2ba Binary files /dev/null and b/public/textures/mekanismtools/refined_glowstone_shovel.png differ diff --git a/public/textures/mekanismtools/refined_glowstone_sword.png b/public/textures/mekanismtools/refined_glowstone_sword.png new file mode 100644 index 00000000..ebbc4cc6 Binary files /dev/null and b/public/textures/mekanismtools/refined_glowstone_sword.png differ diff --git a/public/textures/mekanismtools/refined_obsidian_axe.png b/public/textures/mekanismtools/refined_obsidian_axe.png new file mode 100644 index 00000000..e076b061 Binary files /dev/null and b/public/textures/mekanismtools/refined_obsidian_axe.png differ diff --git a/public/textures/mekanismtools/refined_obsidian_boots.png b/public/textures/mekanismtools/refined_obsidian_boots.png new file mode 100644 index 00000000..a1d23b8d Binary files /dev/null and b/public/textures/mekanismtools/refined_obsidian_boots.png differ diff --git a/public/textures/mekanismtools/refined_obsidian_chestplate.png b/public/textures/mekanismtools/refined_obsidian_chestplate.png new file mode 100644 index 00000000..f8016289 Binary files /dev/null and b/public/textures/mekanismtools/refined_obsidian_chestplate.png differ diff --git a/public/textures/mekanismtools/refined_obsidian_helmet.png b/public/textures/mekanismtools/refined_obsidian_helmet.png new file mode 100644 index 00000000..3e6bf80b Binary files /dev/null and b/public/textures/mekanismtools/refined_obsidian_helmet.png differ diff --git a/public/textures/mekanismtools/refined_obsidian_hoe.png b/public/textures/mekanismtools/refined_obsidian_hoe.png new file mode 100644 index 00000000..2d830264 Binary files /dev/null and b/public/textures/mekanismtools/refined_obsidian_hoe.png differ diff --git a/public/textures/mekanismtools/refined_obsidian_leggings.png b/public/textures/mekanismtools/refined_obsidian_leggings.png new file mode 100644 index 00000000..9c339356 Binary files /dev/null and b/public/textures/mekanismtools/refined_obsidian_leggings.png differ diff --git a/public/textures/mekanismtools/refined_obsidian_paxel.png b/public/textures/mekanismtools/refined_obsidian_paxel.png new file mode 100644 index 00000000..a31c492e Binary files /dev/null and b/public/textures/mekanismtools/refined_obsidian_paxel.png differ diff --git a/public/textures/mekanismtools/refined_obsidian_pickaxe.png b/public/textures/mekanismtools/refined_obsidian_pickaxe.png new file mode 100644 index 00000000..bb5ac7bc Binary files /dev/null and b/public/textures/mekanismtools/refined_obsidian_pickaxe.png differ diff --git a/public/textures/mekanismtools/refined_obsidian_shield.png b/public/textures/mekanismtools/refined_obsidian_shield.png new file mode 100644 index 00000000..0a795700 Binary files /dev/null and b/public/textures/mekanismtools/refined_obsidian_shield.png differ diff --git a/public/textures/mekanismtools/refined_obsidian_shovel.png b/public/textures/mekanismtools/refined_obsidian_shovel.png new file mode 100644 index 00000000..b94931c9 Binary files /dev/null and b/public/textures/mekanismtools/refined_obsidian_shovel.png differ diff --git a/public/textures/mekanismtools/refined_obsidian_sword.png b/public/textures/mekanismtools/refined_obsidian_sword.png new file mode 100644 index 00000000..5f21302f Binary files /dev/null and b/public/textures/mekanismtools/refined_obsidian_sword.png differ diff --git a/public/textures/mekanismtools/steel_axe.png b/public/textures/mekanismtools/steel_axe.png new file mode 100644 index 00000000..9e1a8fd1 Binary files /dev/null and b/public/textures/mekanismtools/steel_axe.png differ diff --git a/public/textures/mekanismtools/steel_boots.png b/public/textures/mekanismtools/steel_boots.png new file mode 100644 index 00000000..a0fd197b Binary files /dev/null and b/public/textures/mekanismtools/steel_boots.png differ diff --git a/public/textures/mekanismtools/steel_chestplate.png b/public/textures/mekanismtools/steel_chestplate.png new file mode 100644 index 00000000..e659f21c Binary files /dev/null and b/public/textures/mekanismtools/steel_chestplate.png differ diff --git a/public/textures/mekanismtools/steel_helmet.png b/public/textures/mekanismtools/steel_helmet.png new file mode 100644 index 00000000..a9838b60 Binary files /dev/null and b/public/textures/mekanismtools/steel_helmet.png differ diff --git a/public/textures/mekanismtools/steel_hoe.png b/public/textures/mekanismtools/steel_hoe.png new file mode 100644 index 00000000..b9b05efb Binary files /dev/null and b/public/textures/mekanismtools/steel_hoe.png differ diff --git a/public/textures/mekanismtools/steel_leggings.png b/public/textures/mekanismtools/steel_leggings.png new file mode 100644 index 00000000..345734ef Binary files /dev/null and b/public/textures/mekanismtools/steel_leggings.png differ diff --git a/public/textures/mekanismtools/steel_paxel.png b/public/textures/mekanismtools/steel_paxel.png new file mode 100644 index 00000000..0be08c01 Binary files /dev/null and b/public/textures/mekanismtools/steel_paxel.png differ diff --git a/public/textures/mekanismtools/steel_pickaxe.png b/public/textures/mekanismtools/steel_pickaxe.png new file mode 100644 index 00000000..bce8d6ab Binary files /dev/null and b/public/textures/mekanismtools/steel_pickaxe.png differ diff --git a/public/textures/mekanismtools/steel_shield.png b/public/textures/mekanismtools/steel_shield.png new file mode 100644 index 00000000..6c74f070 Binary files /dev/null and b/public/textures/mekanismtools/steel_shield.png differ diff --git a/public/textures/mekanismtools/steel_shovel.png b/public/textures/mekanismtools/steel_shovel.png new file mode 100644 index 00000000..6c469897 Binary files /dev/null and b/public/textures/mekanismtools/steel_shovel.png differ diff --git a/public/textures/mekanismtools/steel_sword.png b/public/textures/mekanismtools/steel_sword.png new file mode 100644 index 00000000..42d700d9 Binary files /dev/null and b/public/textures/mekanismtools/steel_sword.png differ diff --git a/public/textures/mekanismtools/stone_paxel.png b/public/textures/mekanismtools/stone_paxel.png new file mode 100644 index 00000000..c5e771a7 Binary files /dev/null and b/public/textures/mekanismtools/stone_paxel.png differ diff --git a/public/textures/mekanismtools/wood_paxel.png b/public/textures/mekanismtools/wood_paxel.png new file mode 100644 index 00000000..e5332a6f Binary files /dev/null and b/public/textures/mekanismtools/wood_paxel.png differ diff --git a/public/textures/minecraft/acacia_boat.png b/public/textures/minecraft/acacia_boat.png new file mode 100644 index 00000000..32d021e4 Binary files /dev/null and b/public/textures/minecraft/acacia_boat.png differ diff --git a/public/textures/minecraft/acacia_button.png b/public/textures/minecraft/acacia_button.png new file mode 100644 index 00000000..dbeb8af9 Binary files /dev/null and b/public/textures/minecraft/acacia_button.png differ diff --git a/public/textures/minecraft/acacia_chest_boat.png b/public/textures/minecraft/acacia_chest_boat.png new file mode 100644 index 00000000..196e83ee Binary files /dev/null and b/public/textures/minecraft/acacia_chest_boat.png differ diff --git a/public/textures/minecraft/acacia_door.png b/public/textures/minecraft/acacia_door.png new file mode 100644 index 00000000..1f8f58c3 Binary files /dev/null and b/public/textures/minecraft/acacia_door.png differ diff --git a/public/textures/minecraft/acacia_fence.png b/public/textures/minecraft/acacia_fence.png new file mode 100644 index 00000000..fe6f2ce5 Binary files /dev/null and b/public/textures/minecraft/acacia_fence.png differ diff --git a/public/textures/minecraft/acacia_fence_gate.png b/public/textures/minecraft/acacia_fence_gate.png new file mode 100644 index 00000000..9ccac1b7 Binary files /dev/null and b/public/textures/minecraft/acacia_fence_gate.png differ diff --git a/public/textures/minecraft/acacia_hanging_sign.png b/public/textures/minecraft/acacia_hanging_sign.png new file mode 100644 index 00000000..e7b71873 Binary files /dev/null and b/public/textures/minecraft/acacia_hanging_sign.png differ diff --git a/public/textures/minecraft/acacia_leaves.png b/public/textures/minecraft/acacia_leaves.png new file mode 100644 index 00000000..1a2b9202 Binary files /dev/null and b/public/textures/minecraft/acacia_leaves.png differ diff --git a/public/textures/minecraft/acacia_log.png b/public/textures/minecraft/acacia_log.png new file mode 100644 index 00000000..3da23df9 Binary files /dev/null and b/public/textures/minecraft/acacia_log.png differ diff --git a/public/textures/minecraft/acacia_planks.png b/public/textures/minecraft/acacia_planks.png new file mode 100644 index 00000000..79816456 Binary files /dev/null and b/public/textures/minecraft/acacia_planks.png differ diff --git a/public/textures/minecraft/acacia_pressure_plate.png b/public/textures/minecraft/acacia_pressure_plate.png new file mode 100644 index 00000000..764f2bed Binary files /dev/null and b/public/textures/minecraft/acacia_pressure_plate.png differ diff --git a/public/textures/minecraft/acacia_sapling.png b/public/textures/minecraft/acacia_sapling.png new file mode 100644 index 00000000..83f13e6c Binary files /dev/null and b/public/textures/minecraft/acacia_sapling.png differ diff --git a/public/textures/minecraft/acacia_sign.png b/public/textures/minecraft/acacia_sign.png new file mode 100644 index 00000000..0a3457e6 Binary files /dev/null and b/public/textures/minecraft/acacia_sign.png differ diff --git a/public/textures/minecraft/acacia_slab.png b/public/textures/minecraft/acacia_slab.png new file mode 100644 index 00000000..2b274dab Binary files /dev/null and b/public/textures/minecraft/acacia_slab.png differ diff --git a/public/textures/minecraft/acacia_stairs.png b/public/textures/minecraft/acacia_stairs.png new file mode 100644 index 00000000..e54df6e7 Binary files /dev/null and b/public/textures/minecraft/acacia_stairs.png differ diff --git a/public/textures/minecraft/acacia_trapdoor.png b/public/textures/minecraft/acacia_trapdoor.png new file mode 100644 index 00000000..3b0c8d49 Binary files /dev/null and b/public/textures/minecraft/acacia_trapdoor.png differ diff --git a/public/textures/minecraft/acacia_wood.png b/public/textures/minecraft/acacia_wood.png new file mode 100644 index 00000000..209a972c Binary files /dev/null and b/public/textures/minecraft/acacia_wood.png differ diff --git a/public/textures/minecraft/activator_rail.png b/public/textures/minecraft/activator_rail.png new file mode 100644 index 00000000..8b0bc1bc Binary files /dev/null and b/public/textures/minecraft/activator_rail.png differ diff --git a/public/textures/minecraft/allay_spawn_egg.png b/public/textures/minecraft/allay_spawn_egg.png new file mode 100644 index 00000000..53a1e821 Binary files /dev/null and b/public/textures/minecraft/allay_spawn_egg.png differ diff --git a/public/textures/minecraft/allium.png b/public/textures/minecraft/allium.png new file mode 100644 index 00000000..6a3b65c2 Binary files /dev/null and b/public/textures/minecraft/allium.png differ diff --git a/public/textures/minecraft/amethyst_block.png b/public/textures/minecraft/amethyst_block.png new file mode 100644 index 00000000..9feaeed8 Binary files /dev/null and b/public/textures/minecraft/amethyst_block.png differ diff --git a/public/textures/minecraft/amethyst_cluster.png b/public/textures/minecraft/amethyst_cluster.png new file mode 100644 index 00000000..8a680988 Binary files /dev/null and b/public/textures/minecraft/amethyst_cluster.png differ diff --git a/public/textures/minecraft/amethyst_shard.png b/public/textures/minecraft/amethyst_shard.png new file mode 100644 index 00000000..eceee262 Binary files /dev/null and b/public/textures/minecraft/amethyst_shard.png differ diff --git a/public/textures/minecraft/ancient_debris.png b/public/textures/minecraft/ancient_debris.png new file mode 100644 index 00000000..1fe3dbeb Binary files /dev/null and b/public/textures/minecraft/ancient_debris.png differ diff --git a/public/textures/minecraft/andesite.png b/public/textures/minecraft/andesite.png new file mode 100644 index 00000000..6cbcf1a8 Binary files /dev/null and b/public/textures/minecraft/andesite.png differ diff --git a/public/textures/minecraft/andesite_slab.png b/public/textures/minecraft/andesite_slab.png new file mode 100644 index 00000000..aeb5fc47 Binary files /dev/null and b/public/textures/minecraft/andesite_slab.png differ diff --git a/public/textures/minecraft/andesite_stairs.png b/public/textures/minecraft/andesite_stairs.png new file mode 100644 index 00000000..f3e3fcee Binary files /dev/null and b/public/textures/minecraft/andesite_stairs.png differ diff --git a/public/textures/minecraft/andesite_wall.png b/public/textures/minecraft/andesite_wall.png new file mode 100644 index 00000000..36c46ec7 Binary files /dev/null and b/public/textures/minecraft/andesite_wall.png differ diff --git a/public/textures/minecraft/angler_pottery_sherd.png b/public/textures/minecraft/angler_pottery_sherd.png new file mode 100644 index 00000000..a621c705 Binary files /dev/null and b/public/textures/minecraft/angler_pottery_sherd.png differ diff --git a/public/textures/minecraft/anvil.png b/public/textures/minecraft/anvil.png new file mode 100644 index 00000000..9c23767c Binary files /dev/null and b/public/textures/minecraft/anvil.png differ diff --git a/public/textures/minecraft/apple.png b/public/textures/minecraft/apple.png new file mode 100644 index 00000000..1d8e5f9d Binary files /dev/null and b/public/textures/minecraft/apple.png differ diff --git a/public/textures/minecraft/archer_pottery_sherd.png b/public/textures/minecraft/archer_pottery_sherd.png new file mode 100644 index 00000000..605c4c04 Binary files /dev/null and b/public/textures/minecraft/archer_pottery_sherd.png differ diff --git a/public/textures/minecraft/armadillo_scute.png b/public/textures/minecraft/armadillo_scute.png new file mode 100644 index 00000000..0d113ffd Binary files /dev/null and b/public/textures/minecraft/armadillo_scute.png differ diff --git a/public/textures/minecraft/armadillo_spawn_egg.png b/public/textures/minecraft/armadillo_spawn_egg.png new file mode 100644 index 00000000..70f67740 Binary files /dev/null and b/public/textures/minecraft/armadillo_spawn_egg.png differ diff --git a/public/textures/minecraft/armor_stand.png b/public/textures/minecraft/armor_stand.png new file mode 100644 index 00000000..aeb42c76 Binary files /dev/null and b/public/textures/minecraft/armor_stand.png differ diff --git a/public/textures/minecraft/arms_up_pottery_sherd.png b/public/textures/minecraft/arms_up_pottery_sherd.png new file mode 100644 index 00000000..e80f429b Binary files /dev/null and b/public/textures/minecraft/arms_up_pottery_sherd.png differ diff --git a/public/textures/minecraft/arrow.png b/public/textures/minecraft/arrow.png new file mode 100644 index 00000000..ba222cbd Binary files /dev/null and b/public/textures/minecraft/arrow.png differ diff --git a/public/textures/minecraft/axolotl_bucket.png b/public/textures/minecraft/axolotl_bucket.png new file mode 100644 index 00000000..1d4b3c6e Binary files /dev/null and b/public/textures/minecraft/axolotl_bucket.png differ diff --git a/public/textures/minecraft/axolotl_spawn_egg.png b/public/textures/minecraft/axolotl_spawn_egg.png new file mode 100644 index 00000000..42b9ecb3 Binary files /dev/null and b/public/textures/minecraft/axolotl_spawn_egg.png differ diff --git a/public/textures/minecraft/azalea.png b/public/textures/minecraft/azalea.png new file mode 100644 index 00000000..cd9fd0ed Binary files /dev/null and b/public/textures/minecraft/azalea.png differ diff --git a/public/textures/minecraft/azalea_leaves.png b/public/textures/minecraft/azalea_leaves.png new file mode 100644 index 00000000..9281ebac Binary files /dev/null and b/public/textures/minecraft/azalea_leaves.png differ diff --git a/public/textures/minecraft/azure_bluet.png b/public/textures/minecraft/azure_bluet.png new file mode 100644 index 00000000..bfca3099 Binary files /dev/null and b/public/textures/minecraft/azure_bluet.png differ diff --git a/public/textures/minecraft/baked_potato.png b/public/textures/minecraft/baked_potato.png new file mode 100644 index 00000000..5c8e5a2a Binary files /dev/null and b/public/textures/minecraft/baked_potato.png differ diff --git a/public/textures/minecraft/bamboo.png b/public/textures/minecraft/bamboo.png new file mode 100644 index 00000000..ac383afc Binary files /dev/null and b/public/textures/minecraft/bamboo.png differ diff --git a/public/textures/minecraft/bamboo_block.png b/public/textures/minecraft/bamboo_block.png new file mode 100644 index 00000000..32728da8 Binary files /dev/null and b/public/textures/minecraft/bamboo_block.png differ diff --git a/public/textures/minecraft/bamboo_button.png b/public/textures/minecraft/bamboo_button.png new file mode 100644 index 00000000..a6ab19f1 Binary files /dev/null and b/public/textures/minecraft/bamboo_button.png differ diff --git a/public/textures/minecraft/bamboo_chest_raft.png b/public/textures/minecraft/bamboo_chest_raft.png new file mode 100644 index 00000000..96bd3837 Binary files /dev/null and b/public/textures/minecraft/bamboo_chest_raft.png differ diff --git a/public/textures/minecraft/bamboo_door.png b/public/textures/minecraft/bamboo_door.png new file mode 100644 index 00000000..e9f4ddbb Binary files /dev/null and b/public/textures/minecraft/bamboo_door.png differ diff --git a/public/textures/minecraft/bamboo_fence.png b/public/textures/minecraft/bamboo_fence.png new file mode 100644 index 00000000..b3d21473 Binary files /dev/null and b/public/textures/minecraft/bamboo_fence.png differ diff --git a/public/textures/minecraft/bamboo_fence_gate.png b/public/textures/minecraft/bamboo_fence_gate.png new file mode 100644 index 00000000..d088bc01 Binary files /dev/null and b/public/textures/minecraft/bamboo_fence_gate.png differ diff --git a/public/textures/minecraft/bamboo_hanging_sign.png b/public/textures/minecraft/bamboo_hanging_sign.png new file mode 100644 index 00000000..0fcfa66f Binary files /dev/null and b/public/textures/minecraft/bamboo_hanging_sign.png differ diff --git a/public/textures/minecraft/bamboo_mosaic.png b/public/textures/minecraft/bamboo_mosaic.png new file mode 100644 index 00000000..f708f727 Binary files /dev/null and b/public/textures/minecraft/bamboo_mosaic.png differ diff --git a/public/textures/minecraft/bamboo_mosaic_slab.png b/public/textures/minecraft/bamboo_mosaic_slab.png new file mode 100644 index 00000000..fc4edb48 Binary files /dev/null and b/public/textures/minecraft/bamboo_mosaic_slab.png differ diff --git a/public/textures/minecraft/bamboo_mosaic_stairs.png b/public/textures/minecraft/bamboo_mosaic_stairs.png new file mode 100644 index 00000000..6cad2a70 Binary files /dev/null and b/public/textures/minecraft/bamboo_mosaic_stairs.png differ diff --git a/public/textures/minecraft/bamboo_planks.png b/public/textures/minecraft/bamboo_planks.png new file mode 100644 index 00000000..abbf1f92 Binary files /dev/null and b/public/textures/minecraft/bamboo_planks.png differ diff --git a/public/textures/minecraft/bamboo_pressure_plate.png b/public/textures/minecraft/bamboo_pressure_plate.png new file mode 100644 index 00000000..88f315be Binary files /dev/null and b/public/textures/minecraft/bamboo_pressure_plate.png differ diff --git a/public/textures/minecraft/bamboo_raft.png b/public/textures/minecraft/bamboo_raft.png new file mode 100644 index 00000000..8f523f49 Binary files /dev/null and b/public/textures/minecraft/bamboo_raft.png differ diff --git a/public/textures/minecraft/bamboo_sign.png b/public/textures/minecraft/bamboo_sign.png new file mode 100644 index 00000000..af0bf748 Binary files /dev/null and b/public/textures/minecraft/bamboo_sign.png differ diff --git a/public/textures/minecraft/bamboo_slab.png b/public/textures/minecraft/bamboo_slab.png new file mode 100644 index 00000000..b9bfff41 Binary files /dev/null and b/public/textures/minecraft/bamboo_slab.png differ diff --git a/public/textures/minecraft/bamboo_stairs.png b/public/textures/minecraft/bamboo_stairs.png new file mode 100644 index 00000000..2002fe5e Binary files /dev/null and b/public/textures/minecraft/bamboo_stairs.png differ diff --git a/public/textures/minecraft/bamboo_trapdoor.png b/public/textures/minecraft/bamboo_trapdoor.png new file mode 100644 index 00000000..ae277904 Binary files /dev/null and b/public/textures/minecraft/bamboo_trapdoor.png differ diff --git a/public/textures/minecraft/barrel.png b/public/textures/minecraft/barrel.png new file mode 100644 index 00000000..13fba634 Binary files /dev/null and b/public/textures/minecraft/barrel.png differ diff --git a/public/textures/minecraft/basalt.png b/public/textures/minecraft/basalt.png new file mode 100644 index 00000000..539d1bdd Binary files /dev/null and b/public/textures/minecraft/basalt.png differ diff --git a/public/textures/minecraft/bat_spawn_egg.png b/public/textures/minecraft/bat_spawn_egg.png new file mode 100644 index 00000000..d5af2054 Binary files /dev/null and b/public/textures/minecraft/bat_spawn_egg.png differ diff --git a/public/textures/minecraft/beacon.png b/public/textures/minecraft/beacon.png new file mode 100644 index 00000000..f070ebe9 Binary files /dev/null and b/public/textures/minecraft/beacon.png differ diff --git a/public/textures/minecraft/bedrock.png b/public/textures/minecraft/bedrock.png new file mode 100644 index 00000000..5adc1413 Binary files /dev/null and b/public/textures/minecraft/bedrock.png differ diff --git a/public/textures/minecraft/bee_nest.png b/public/textures/minecraft/bee_nest.png new file mode 100644 index 00000000..9062cd50 Binary files /dev/null and b/public/textures/minecraft/bee_nest.png differ diff --git a/public/textures/minecraft/bee_spawn_egg.png b/public/textures/minecraft/bee_spawn_egg.png new file mode 100644 index 00000000..42b7cad9 Binary files /dev/null and b/public/textures/minecraft/bee_spawn_egg.png differ diff --git a/public/textures/minecraft/beef.png b/public/textures/minecraft/beef.png new file mode 100644 index 00000000..ab9593e9 Binary files /dev/null and b/public/textures/minecraft/beef.png differ diff --git a/public/textures/minecraft/beehive.png b/public/textures/minecraft/beehive.png new file mode 100644 index 00000000..ae0931d0 Binary files /dev/null and b/public/textures/minecraft/beehive.png differ diff --git a/public/textures/minecraft/beetroot.png b/public/textures/minecraft/beetroot.png new file mode 100644 index 00000000..70683673 Binary files /dev/null and b/public/textures/minecraft/beetroot.png differ diff --git a/public/textures/minecraft/beetroot_seeds.png b/public/textures/minecraft/beetroot_seeds.png new file mode 100644 index 00000000..e1056a82 Binary files /dev/null and b/public/textures/minecraft/beetroot_seeds.png differ diff --git a/public/textures/minecraft/beetroot_soup.png b/public/textures/minecraft/beetroot_soup.png new file mode 100644 index 00000000..432235db Binary files /dev/null and b/public/textures/minecraft/beetroot_soup.png differ diff --git a/public/textures/minecraft/bell.png b/public/textures/minecraft/bell.png new file mode 100644 index 00000000..50c00877 Binary files /dev/null and b/public/textures/minecraft/bell.png differ diff --git a/public/textures/minecraft/big_dripleaf.png b/public/textures/minecraft/big_dripleaf.png new file mode 100644 index 00000000..a1658e44 Binary files /dev/null and b/public/textures/minecraft/big_dripleaf.png differ diff --git a/public/textures/minecraft/birch_boat.png b/public/textures/minecraft/birch_boat.png new file mode 100644 index 00000000..48d481f2 Binary files /dev/null and b/public/textures/minecraft/birch_boat.png differ diff --git a/public/textures/minecraft/birch_button.png b/public/textures/minecraft/birch_button.png new file mode 100644 index 00000000..f352d5f3 Binary files /dev/null and b/public/textures/minecraft/birch_button.png differ diff --git a/public/textures/minecraft/birch_chest_boat.png b/public/textures/minecraft/birch_chest_boat.png new file mode 100644 index 00000000..4324f0c1 Binary files /dev/null and b/public/textures/minecraft/birch_chest_boat.png differ diff --git a/public/textures/minecraft/birch_door.png b/public/textures/minecraft/birch_door.png new file mode 100644 index 00000000..568f65b6 Binary files /dev/null and b/public/textures/minecraft/birch_door.png differ diff --git a/public/textures/minecraft/birch_fence.png b/public/textures/minecraft/birch_fence.png new file mode 100644 index 00000000..bfa733d7 Binary files /dev/null and b/public/textures/minecraft/birch_fence.png differ diff --git a/public/textures/minecraft/birch_fence_gate.png b/public/textures/minecraft/birch_fence_gate.png new file mode 100644 index 00000000..0511cc37 Binary files /dev/null and b/public/textures/minecraft/birch_fence_gate.png differ diff --git a/public/textures/minecraft/birch_hanging_sign.png b/public/textures/minecraft/birch_hanging_sign.png new file mode 100644 index 00000000..c8ad4cc5 Binary files /dev/null and b/public/textures/minecraft/birch_hanging_sign.png differ diff --git a/public/textures/minecraft/birch_leaves.png b/public/textures/minecraft/birch_leaves.png new file mode 100644 index 00000000..1d63b56c Binary files /dev/null and b/public/textures/minecraft/birch_leaves.png differ diff --git a/public/textures/minecraft/birch_log.png b/public/textures/minecraft/birch_log.png new file mode 100644 index 00000000..b822476d Binary files /dev/null and b/public/textures/minecraft/birch_log.png differ diff --git a/public/textures/minecraft/birch_planks.png b/public/textures/minecraft/birch_planks.png new file mode 100644 index 00000000..2e393a67 Binary files /dev/null and b/public/textures/minecraft/birch_planks.png differ diff --git a/public/textures/minecraft/birch_pressure_plate.png b/public/textures/minecraft/birch_pressure_plate.png new file mode 100644 index 00000000..4acb3645 Binary files /dev/null and b/public/textures/minecraft/birch_pressure_plate.png differ diff --git a/public/textures/minecraft/birch_sapling.png b/public/textures/minecraft/birch_sapling.png new file mode 100644 index 00000000..86671ef8 Binary files /dev/null and b/public/textures/minecraft/birch_sapling.png differ diff --git a/public/textures/minecraft/birch_sign.png b/public/textures/minecraft/birch_sign.png new file mode 100644 index 00000000..4588fe95 Binary files /dev/null and b/public/textures/minecraft/birch_sign.png differ diff --git a/public/textures/minecraft/birch_slab.png b/public/textures/minecraft/birch_slab.png new file mode 100644 index 00000000..e5ff55e7 Binary files /dev/null and b/public/textures/minecraft/birch_slab.png differ diff --git a/public/textures/minecraft/birch_stairs.png b/public/textures/minecraft/birch_stairs.png new file mode 100644 index 00000000..4e01f4f1 Binary files /dev/null and b/public/textures/minecraft/birch_stairs.png differ diff --git a/public/textures/minecraft/birch_trapdoor.png b/public/textures/minecraft/birch_trapdoor.png new file mode 100644 index 00000000..66b7a9a2 Binary files /dev/null and b/public/textures/minecraft/birch_trapdoor.png differ diff --git a/public/textures/minecraft/birch_wood.png b/public/textures/minecraft/birch_wood.png new file mode 100644 index 00000000..b63b30f0 Binary files /dev/null and b/public/textures/minecraft/birch_wood.png differ diff --git a/public/textures/minecraft/black_banner.png b/public/textures/minecraft/black_banner.png new file mode 100644 index 00000000..7764005d Binary files /dev/null and b/public/textures/minecraft/black_banner.png differ diff --git a/public/textures/minecraft/black_bed.png b/public/textures/minecraft/black_bed.png new file mode 100644 index 00000000..9f63f663 Binary files /dev/null and b/public/textures/minecraft/black_bed.png differ diff --git a/public/textures/minecraft/black_candle.png b/public/textures/minecraft/black_candle.png new file mode 100644 index 00000000..4403d933 Binary files /dev/null and b/public/textures/minecraft/black_candle.png differ diff --git a/public/textures/minecraft/black_carpet.png b/public/textures/minecraft/black_carpet.png new file mode 100644 index 00000000..6a9d261a Binary files /dev/null and b/public/textures/minecraft/black_carpet.png differ diff --git a/public/textures/minecraft/black_concrete.png b/public/textures/minecraft/black_concrete.png new file mode 100644 index 00000000..00033a74 Binary files /dev/null and b/public/textures/minecraft/black_concrete.png differ diff --git a/public/textures/minecraft/black_concrete_powder.png b/public/textures/minecraft/black_concrete_powder.png new file mode 100644 index 00000000..555de07b Binary files /dev/null and b/public/textures/minecraft/black_concrete_powder.png differ diff --git a/public/textures/minecraft/black_dye.png b/public/textures/minecraft/black_dye.png new file mode 100644 index 00000000..4f06ac2f Binary files /dev/null and b/public/textures/minecraft/black_dye.png differ diff --git a/public/textures/minecraft/black_glazed_terracotta.png b/public/textures/minecraft/black_glazed_terracotta.png new file mode 100644 index 00000000..a495dc62 Binary files /dev/null and b/public/textures/minecraft/black_glazed_terracotta.png differ diff --git a/public/textures/minecraft/black_shulker_box.png b/public/textures/minecraft/black_shulker_box.png new file mode 100644 index 00000000..25c21532 Binary files /dev/null and b/public/textures/minecraft/black_shulker_box.png differ diff --git a/public/textures/minecraft/black_stained_glass.png b/public/textures/minecraft/black_stained_glass.png new file mode 100644 index 00000000..4be7bac8 Binary files /dev/null and b/public/textures/minecraft/black_stained_glass.png differ diff --git a/public/textures/minecraft/black_stained_glass_pane.png b/public/textures/minecraft/black_stained_glass_pane.png new file mode 100644 index 00000000..caa568e4 Binary files /dev/null and b/public/textures/minecraft/black_stained_glass_pane.png differ diff --git a/public/textures/minecraft/black_terracotta.png b/public/textures/minecraft/black_terracotta.png new file mode 100644 index 00000000..7bef3a07 Binary files /dev/null and b/public/textures/minecraft/black_terracotta.png differ diff --git a/public/textures/minecraft/black_wool.png b/public/textures/minecraft/black_wool.png new file mode 100644 index 00000000..92f1545e Binary files /dev/null and b/public/textures/minecraft/black_wool.png differ diff --git a/public/textures/minecraft/blackstone.png b/public/textures/minecraft/blackstone.png new file mode 100644 index 00000000..2b1f78c6 Binary files /dev/null and b/public/textures/minecraft/blackstone.png differ diff --git a/public/textures/minecraft/blackstone_slab.png b/public/textures/minecraft/blackstone_slab.png new file mode 100644 index 00000000..d2972032 Binary files /dev/null and b/public/textures/minecraft/blackstone_slab.png differ diff --git a/public/textures/minecraft/blackstone_stairs.png b/public/textures/minecraft/blackstone_stairs.png new file mode 100644 index 00000000..15a9a534 Binary files /dev/null and b/public/textures/minecraft/blackstone_stairs.png differ diff --git a/public/textures/minecraft/blackstone_wall.png b/public/textures/minecraft/blackstone_wall.png new file mode 100644 index 00000000..0eb0f391 Binary files /dev/null and b/public/textures/minecraft/blackstone_wall.png differ diff --git a/public/textures/minecraft/blade_pottery_sherd.png b/public/textures/minecraft/blade_pottery_sherd.png new file mode 100644 index 00000000..3e3dcfe8 Binary files /dev/null and b/public/textures/minecraft/blade_pottery_sherd.png differ diff --git a/public/textures/minecraft/blast_furnace.png b/public/textures/minecraft/blast_furnace.png new file mode 100644 index 00000000..e271badf Binary files /dev/null and b/public/textures/minecraft/blast_furnace.png differ diff --git a/public/textures/minecraft/blaze_powder.png b/public/textures/minecraft/blaze_powder.png new file mode 100644 index 00000000..3f005619 Binary files /dev/null and b/public/textures/minecraft/blaze_powder.png differ diff --git a/public/textures/minecraft/blaze_rod.png b/public/textures/minecraft/blaze_rod.png new file mode 100644 index 00000000..2d77a7b3 Binary files /dev/null and b/public/textures/minecraft/blaze_rod.png differ diff --git a/public/textures/minecraft/blaze_spawn_egg.png b/public/textures/minecraft/blaze_spawn_egg.png new file mode 100644 index 00000000..27f304c5 Binary files /dev/null and b/public/textures/minecraft/blaze_spawn_egg.png differ diff --git a/public/textures/minecraft/blue_banner.png b/public/textures/minecraft/blue_banner.png new file mode 100644 index 00000000..e3d42271 Binary files /dev/null and b/public/textures/minecraft/blue_banner.png differ diff --git a/public/textures/minecraft/blue_bed.png b/public/textures/minecraft/blue_bed.png new file mode 100644 index 00000000..216f58d5 Binary files /dev/null and b/public/textures/minecraft/blue_bed.png differ diff --git a/public/textures/minecraft/blue_candle.png b/public/textures/minecraft/blue_candle.png new file mode 100644 index 00000000..341a3cda Binary files /dev/null and b/public/textures/minecraft/blue_candle.png differ diff --git a/public/textures/minecraft/blue_carpet.png b/public/textures/minecraft/blue_carpet.png new file mode 100644 index 00000000..47c697ee Binary files /dev/null and b/public/textures/minecraft/blue_carpet.png differ diff --git a/public/textures/minecraft/blue_concrete.png b/public/textures/minecraft/blue_concrete.png new file mode 100644 index 00000000..59bfbd40 Binary files /dev/null and b/public/textures/minecraft/blue_concrete.png differ diff --git a/public/textures/minecraft/blue_concrete_powder.png b/public/textures/minecraft/blue_concrete_powder.png new file mode 100644 index 00000000..64edc3ef Binary files /dev/null and b/public/textures/minecraft/blue_concrete_powder.png differ diff --git a/public/textures/minecraft/blue_dye.png b/public/textures/minecraft/blue_dye.png new file mode 100644 index 00000000..6a5d9cb7 Binary files /dev/null and b/public/textures/minecraft/blue_dye.png differ diff --git a/public/textures/minecraft/blue_glazed_terracotta.png b/public/textures/minecraft/blue_glazed_terracotta.png new file mode 100644 index 00000000..95a6bd19 Binary files /dev/null and b/public/textures/minecraft/blue_glazed_terracotta.png differ diff --git a/public/textures/minecraft/blue_ice.png b/public/textures/minecraft/blue_ice.png new file mode 100644 index 00000000..2499cc72 Binary files /dev/null and b/public/textures/minecraft/blue_ice.png differ diff --git a/public/textures/minecraft/blue_orchid.png b/public/textures/minecraft/blue_orchid.png new file mode 100644 index 00000000..786b7fcb Binary files /dev/null and b/public/textures/minecraft/blue_orchid.png differ diff --git a/public/textures/minecraft/blue_shulker_box.png b/public/textures/minecraft/blue_shulker_box.png new file mode 100644 index 00000000..956355fa Binary files /dev/null and b/public/textures/minecraft/blue_shulker_box.png differ diff --git a/public/textures/minecraft/blue_stained_glass.png b/public/textures/minecraft/blue_stained_glass.png new file mode 100644 index 00000000..0c369f31 Binary files /dev/null and b/public/textures/minecraft/blue_stained_glass.png differ diff --git a/public/textures/minecraft/blue_stained_glass_pane.png b/public/textures/minecraft/blue_stained_glass_pane.png new file mode 100644 index 00000000..630da238 Binary files /dev/null and b/public/textures/minecraft/blue_stained_glass_pane.png differ diff --git a/public/textures/minecraft/blue_terracotta.png b/public/textures/minecraft/blue_terracotta.png new file mode 100644 index 00000000..6d6579da Binary files /dev/null and b/public/textures/minecraft/blue_terracotta.png differ diff --git a/public/textures/minecraft/blue_wool.png b/public/textures/minecraft/blue_wool.png new file mode 100644 index 00000000..6a203496 Binary files /dev/null and b/public/textures/minecraft/blue_wool.png differ diff --git a/public/textures/minecraft/bogged_spawn_egg.png b/public/textures/minecraft/bogged_spawn_egg.png new file mode 100644 index 00000000..bff84c9b Binary files /dev/null and b/public/textures/minecraft/bogged_spawn_egg.png differ diff --git a/public/textures/minecraft/bolt_armor_trim_smithing_template.png b/public/textures/minecraft/bolt_armor_trim_smithing_template.png new file mode 100644 index 00000000..92333701 Binary files /dev/null and b/public/textures/minecraft/bolt_armor_trim_smithing_template.png differ diff --git a/public/textures/minecraft/bone.png b/public/textures/minecraft/bone.png new file mode 100644 index 00000000..2a504a91 Binary files /dev/null and b/public/textures/minecraft/bone.png differ diff --git a/public/textures/minecraft/bone_block.png b/public/textures/minecraft/bone_block.png new file mode 100644 index 00000000..b87aa167 Binary files /dev/null and b/public/textures/minecraft/bone_block.png differ diff --git a/public/textures/minecraft/bone_meal.png b/public/textures/minecraft/bone_meal.png new file mode 100644 index 00000000..7c22f985 Binary files /dev/null and b/public/textures/minecraft/bone_meal.png differ diff --git a/public/textures/minecraft/book.png b/public/textures/minecraft/book.png new file mode 100644 index 00000000..96448d3e Binary files /dev/null and b/public/textures/minecraft/book.png differ diff --git a/public/textures/minecraft/bookshelf.png b/public/textures/minecraft/bookshelf.png new file mode 100644 index 00000000..7f7ffc1b Binary files /dev/null and b/public/textures/minecraft/bookshelf.png differ diff --git a/public/textures/minecraft/bow.png b/public/textures/minecraft/bow.png new file mode 100644 index 00000000..b0141de4 Binary files /dev/null and b/public/textures/minecraft/bow.png differ diff --git a/public/textures/minecraft/bowl.png b/public/textures/minecraft/bowl.png new file mode 100644 index 00000000..33ac9383 Binary files /dev/null and b/public/textures/minecraft/bowl.png differ diff --git a/public/textures/minecraft/brain_coral.png b/public/textures/minecraft/brain_coral.png new file mode 100644 index 00000000..09558c72 Binary files /dev/null and b/public/textures/minecraft/brain_coral.png differ diff --git a/public/textures/minecraft/brain_coral_block.png b/public/textures/minecraft/brain_coral_block.png new file mode 100644 index 00000000..14ac714e Binary files /dev/null and b/public/textures/minecraft/brain_coral_block.png differ diff --git a/public/textures/minecraft/brain_coral_fan.png b/public/textures/minecraft/brain_coral_fan.png new file mode 100644 index 00000000..618ba91e Binary files /dev/null and b/public/textures/minecraft/brain_coral_fan.png differ diff --git a/public/textures/minecraft/bread.png b/public/textures/minecraft/bread.png new file mode 100644 index 00000000..72517153 Binary files /dev/null and b/public/textures/minecraft/bread.png differ diff --git a/public/textures/minecraft/breeze_rod.png b/public/textures/minecraft/breeze_rod.png new file mode 100644 index 00000000..6df01033 Binary files /dev/null and b/public/textures/minecraft/breeze_rod.png differ diff --git a/public/textures/minecraft/breeze_spawn_egg.png b/public/textures/minecraft/breeze_spawn_egg.png new file mode 100644 index 00000000..4e1ea6e0 Binary files /dev/null and b/public/textures/minecraft/breeze_spawn_egg.png differ diff --git a/public/textures/minecraft/brewer_pottery_sherd.png b/public/textures/minecraft/brewer_pottery_sherd.png new file mode 100644 index 00000000..b8ee8d36 Binary files /dev/null and b/public/textures/minecraft/brewer_pottery_sherd.png differ diff --git a/public/textures/minecraft/brewing_stand.png b/public/textures/minecraft/brewing_stand.png new file mode 100644 index 00000000..ab246759 Binary files /dev/null and b/public/textures/minecraft/brewing_stand.png differ diff --git a/public/textures/minecraft/brick.png b/public/textures/minecraft/brick.png new file mode 100644 index 00000000..9799fbff Binary files /dev/null and b/public/textures/minecraft/brick.png differ diff --git a/public/textures/minecraft/brick_slab.png b/public/textures/minecraft/brick_slab.png new file mode 100644 index 00000000..9dcdd69c Binary files /dev/null and b/public/textures/minecraft/brick_slab.png differ diff --git a/public/textures/minecraft/brick_stairs.png b/public/textures/minecraft/brick_stairs.png new file mode 100644 index 00000000..a21a10f7 Binary files /dev/null and b/public/textures/minecraft/brick_stairs.png differ diff --git a/public/textures/minecraft/brick_wall.png b/public/textures/minecraft/brick_wall.png new file mode 100644 index 00000000..6f4cdf51 Binary files /dev/null and b/public/textures/minecraft/brick_wall.png differ diff --git a/public/textures/minecraft/bricks.png b/public/textures/minecraft/bricks.png new file mode 100644 index 00000000..1a2ebbf6 Binary files /dev/null and b/public/textures/minecraft/bricks.png differ diff --git a/public/textures/minecraft/brown_banner.png b/public/textures/minecraft/brown_banner.png new file mode 100644 index 00000000..c552336d Binary files /dev/null and b/public/textures/minecraft/brown_banner.png differ diff --git a/public/textures/minecraft/brown_bed.png b/public/textures/minecraft/brown_bed.png new file mode 100644 index 00000000..c9289e23 Binary files /dev/null and b/public/textures/minecraft/brown_bed.png differ diff --git a/public/textures/minecraft/brown_candle.png b/public/textures/minecraft/brown_candle.png new file mode 100644 index 00000000..8702adbf Binary files /dev/null and b/public/textures/minecraft/brown_candle.png differ diff --git a/public/textures/minecraft/brown_carpet.png b/public/textures/minecraft/brown_carpet.png new file mode 100644 index 00000000..c4bf1a56 Binary files /dev/null and b/public/textures/minecraft/brown_carpet.png differ diff --git a/public/textures/minecraft/brown_concrete.png b/public/textures/minecraft/brown_concrete.png new file mode 100644 index 00000000..6a896218 Binary files /dev/null and b/public/textures/minecraft/brown_concrete.png differ diff --git a/public/textures/minecraft/brown_concrete_powder.png b/public/textures/minecraft/brown_concrete_powder.png new file mode 100644 index 00000000..d18d2bd6 Binary files /dev/null and b/public/textures/minecraft/brown_concrete_powder.png differ diff --git a/public/textures/minecraft/brown_dye.png b/public/textures/minecraft/brown_dye.png new file mode 100644 index 00000000..d76e554e Binary files /dev/null and b/public/textures/minecraft/brown_dye.png differ diff --git a/public/textures/minecraft/brown_glazed_terracotta.png b/public/textures/minecraft/brown_glazed_terracotta.png new file mode 100644 index 00000000..1434589d Binary files /dev/null and b/public/textures/minecraft/brown_glazed_terracotta.png differ diff --git a/public/textures/minecraft/brown_mushroom.png b/public/textures/minecraft/brown_mushroom.png new file mode 100644 index 00000000..ebb73575 Binary files /dev/null and b/public/textures/minecraft/brown_mushroom.png differ diff --git a/public/textures/minecraft/brown_mushroom_block.png b/public/textures/minecraft/brown_mushroom_block.png new file mode 100644 index 00000000..43d5408f Binary files /dev/null and b/public/textures/minecraft/brown_mushroom_block.png differ diff --git a/public/textures/minecraft/brown_shulker_box.png b/public/textures/minecraft/brown_shulker_box.png new file mode 100644 index 00000000..351ae316 Binary files /dev/null and b/public/textures/minecraft/brown_shulker_box.png differ diff --git a/public/textures/minecraft/brown_stained_glass.png b/public/textures/minecraft/brown_stained_glass.png new file mode 100644 index 00000000..6c1537df Binary files /dev/null and b/public/textures/minecraft/brown_stained_glass.png differ diff --git a/public/textures/minecraft/brown_stained_glass_pane.png b/public/textures/minecraft/brown_stained_glass_pane.png new file mode 100644 index 00000000..aca60139 Binary files /dev/null and b/public/textures/minecraft/brown_stained_glass_pane.png differ diff --git a/public/textures/minecraft/brown_terracotta.png b/public/textures/minecraft/brown_terracotta.png new file mode 100644 index 00000000..cab94813 Binary files /dev/null and b/public/textures/minecraft/brown_terracotta.png differ diff --git a/public/textures/minecraft/brown_wool.png b/public/textures/minecraft/brown_wool.png new file mode 100644 index 00000000..a3780afe Binary files /dev/null and b/public/textures/minecraft/brown_wool.png differ diff --git a/public/textures/minecraft/brush.png b/public/textures/minecraft/brush.png new file mode 100644 index 00000000..f8af483e Binary files /dev/null and b/public/textures/minecraft/brush.png differ diff --git a/public/textures/minecraft/bubble_coral.png b/public/textures/minecraft/bubble_coral.png new file mode 100644 index 00000000..9928cc3a Binary files /dev/null and b/public/textures/minecraft/bubble_coral.png differ diff --git a/public/textures/minecraft/bubble_coral_block.png b/public/textures/minecraft/bubble_coral_block.png new file mode 100644 index 00000000..bfaea344 Binary files /dev/null and b/public/textures/minecraft/bubble_coral_block.png differ diff --git a/public/textures/minecraft/bubble_coral_fan.png b/public/textures/minecraft/bubble_coral_fan.png new file mode 100644 index 00000000..757157c4 Binary files /dev/null and b/public/textures/minecraft/bubble_coral_fan.png differ diff --git a/public/textures/minecraft/bucket.png b/public/textures/minecraft/bucket.png new file mode 100644 index 00000000..dd23c043 Binary files /dev/null and b/public/textures/minecraft/bucket.png differ diff --git a/public/textures/minecraft/budding_amethyst.png b/public/textures/minecraft/budding_amethyst.png new file mode 100644 index 00000000..12e1d4a4 Binary files /dev/null and b/public/textures/minecraft/budding_amethyst.png differ diff --git a/public/textures/minecraft/burn_pottery_sherd.png b/public/textures/minecraft/burn_pottery_sherd.png new file mode 100644 index 00000000..fdcd3528 Binary files /dev/null and b/public/textures/minecraft/burn_pottery_sherd.png differ diff --git a/public/textures/minecraft/cactus.png b/public/textures/minecraft/cactus.png new file mode 100644 index 00000000..1d038533 Binary files /dev/null and b/public/textures/minecraft/cactus.png differ diff --git a/public/textures/minecraft/cake.png b/public/textures/minecraft/cake.png new file mode 100644 index 00000000..3bdfc74e Binary files /dev/null and b/public/textures/minecraft/cake.png differ diff --git a/public/textures/minecraft/calcite.png b/public/textures/minecraft/calcite.png new file mode 100644 index 00000000..9ea19580 Binary files /dev/null and b/public/textures/minecraft/calcite.png differ diff --git a/public/textures/minecraft/calibrated_sculk_sensor.png b/public/textures/minecraft/calibrated_sculk_sensor.png new file mode 100644 index 00000000..ad9dff10 Binary files /dev/null and b/public/textures/minecraft/calibrated_sculk_sensor.png differ diff --git a/public/textures/minecraft/camel_spawn_egg.png b/public/textures/minecraft/camel_spawn_egg.png new file mode 100644 index 00000000..cfef2ad9 Binary files /dev/null and b/public/textures/minecraft/camel_spawn_egg.png differ diff --git a/public/textures/minecraft/campfire.png b/public/textures/minecraft/campfire.png new file mode 100644 index 00000000..a4d34a0b Binary files /dev/null and b/public/textures/minecraft/campfire.png differ diff --git a/public/textures/minecraft/candle.png b/public/textures/minecraft/candle.png new file mode 100644 index 00000000..6fe347f9 Binary files /dev/null and b/public/textures/minecraft/candle.png differ diff --git a/public/textures/minecraft/carrot.png b/public/textures/minecraft/carrot.png new file mode 100644 index 00000000..44c49ed8 Binary files /dev/null and b/public/textures/minecraft/carrot.png differ diff --git a/public/textures/minecraft/carrot_on_a_stick.png b/public/textures/minecraft/carrot_on_a_stick.png new file mode 100644 index 00000000..e44d41be Binary files /dev/null and b/public/textures/minecraft/carrot_on_a_stick.png differ diff --git a/public/textures/minecraft/cartography_table.png b/public/textures/minecraft/cartography_table.png new file mode 100644 index 00000000..aa8826ec Binary files /dev/null and b/public/textures/minecraft/cartography_table.png differ diff --git a/public/textures/minecraft/carved_pumpkin.png b/public/textures/minecraft/carved_pumpkin.png new file mode 100644 index 00000000..a76d7415 Binary files /dev/null and b/public/textures/minecraft/carved_pumpkin.png differ diff --git a/public/textures/minecraft/cat_spawn_egg.png b/public/textures/minecraft/cat_spawn_egg.png new file mode 100644 index 00000000..67085da7 Binary files /dev/null and b/public/textures/minecraft/cat_spawn_egg.png differ diff --git a/public/textures/minecraft/cauldron.png b/public/textures/minecraft/cauldron.png new file mode 100644 index 00000000..35ca316e Binary files /dev/null and b/public/textures/minecraft/cauldron.png differ diff --git a/public/textures/minecraft/cave_spider_spawn_egg.png b/public/textures/minecraft/cave_spider_spawn_egg.png new file mode 100644 index 00000000..a848042f Binary files /dev/null and b/public/textures/minecraft/cave_spider_spawn_egg.png differ diff --git a/public/textures/minecraft/chain.png b/public/textures/minecraft/chain.png new file mode 100644 index 00000000..0879c822 Binary files /dev/null and b/public/textures/minecraft/chain.png differ diff --git a/public/textures/minecraft/chainmail_boots.png b/public/textures/minecraft/chainmail_boots.png new file mode 100644 index 00000000..538ee9b4 Binary files /dev/null and b/public/textures/minecraft/chainmail_boots.png differ diff --git a/public/textures/minecraft/chainmail_chestplate.png b/public/textures/minecraft/chainmail_chestplate.png new file mode 100644 index 00000000..a52a07e4 Binary files /dev/null and b/public/textures/minecraft/chainmail_chestplate.png differ diff --git a/public/textures/minecraft/chainmail_helmet.png b/public/textures/minecraft/chainmail_helmet.png new file mode 100644 index 00000000..2d7b48eb Binary files /dev/null and b/public/textures/minecraft/chainmail_helmet.png differ diff --git a/public/textures/minecraft/chainmail_leggings.png b/public/textures/minecraft/chainmail_leggings.png new file mode 100644 index 00000000..17603936 Binary files /dev/null and b/public/textures/minecraft/chainmail_leggings.png differ diff --git a/public/textures/minecraft/charcoal.png b/public/textures/minecraft/charcoal.png new file mode 100644 index 00000000..43410bb5 Binary files /dev/null and b/public/textures/minecraft/charcoal.png differ diff --git a/public/textures/minecraft/cherry_boat.png b/public/textures/minecraft/cherry_boat.png new file mode 100644 index 00000000..477b240a Binary files /dev/null and b/public/textures/minecraft/cherry_boat.png differ diff --git a/public/textures/minecraft/cherry_button.png b/public/textures/minecraft/cherry_button.png new file mode 100644 index 00000000..e7a31e97 Binary files /dev/null and b/public/textures/minecraft/cherry_button.png differ diff --git a/public/textures/minecraft/cherry_chest_boat.png b/public/textures/minecraft/cherry_chest_boat.png new file mode 100644 index 00000000..e7709acd Binary files /dev/null and b/public/textures/minecraft/cherry_chest_boat.png differ diff --git a/public/textures/minecraft/cherry_door.png b/public/textures/minecraft/cherry_door.png new file mode 100644 index 00000000..a3d0a25d Binary files /dev/null and b/public/textures/minecraft/cherry_door.png differ diff --git a/public/textures/minecraft/cherry_fence.png b/public/textures/minecraft/cherry_fence.png new file mode 100644 index 00000000..056d0a4f Binary files /dev/null and b/public/textures/minecraft/cherry_fence.png differ diff --git a/public/textures/minecraft/cherry_fence_gate.png b/public/textures/minecraft/cherry_fence_gate.png new file mode 100644 index 00000000..58482a39 Binary files /dev/null and b/public/textures/minecraft/cherry_fence_gate.png differ diff --git a/public/textures/minecraft/cherry_hanging_sign.png b/public/textures/minecraft/cherry_hanging_sign.png new file mode 100644 index 00000000..6b2e408c Binary files /dev/null and b/public/textures/minecraft/cherry_hanging_sign.png differ diff --git a/public/textures/minecraft/cherry_leaves.png b/public/textures/minecraft/cherry_leaves.png new file mode 100644 index 00000000..787438f6 Binary files /dev/null and b/public/textures/minecraft/cherry_leaves.png differ diff --git a/public/textures/minecraft/cherry_log.png b/public/textures/minecraft/cherry_log.png new file mode 100644 index 00000000..43517dd0 Binary files /dev/null and b/public/textures/minecraft/cherry_log.png differ diff --git a/public/textures/minecraft/cherry_planks.png b/public/textures/minecraft/cherry_planks.png new file mode 100644 index 00000000..a00f82a5 Binary files /dev/null and b/public/textures/minecraft/cherry_planks.png differ diff --git a/public/textures/minecraft/cherry_pressure_plate.png b/public/textures/minecraft/cherry_pressure_plate.png new file mode 100644 index 00000000..353fa47b Binary files /dev/null and b/public/textures/minecraft/cherry_pressure_plate.png differ diff --git a/public/textures/minecraft/cherry_sapling.png b/public/textures/minecraft/cherry_sapling.png new file mode 100644 index 00000000..4e6defe1 Binary files /dev/null and b/public/textures/minecraft/cherry_sapling.png differ diff --git a/public/textures/minecraft/cherry_sign.png b/public/textures/minecraft/cherry_sign.png new file mode 100644 index 00000000..f1331ae0 Binary files /dev/null and b/public/textures/minecraft/cherry_sign.png differ diff --git a/public/textures/minecraft/cherry_slab.png b/public/textures/minecraft/cherry_slab.png new file mode 100644 index 00000000..e11df1c3 Binary files /dev/null and b/public/textures/minecraft/cherry_slab.png differ diff --git a/public/textures/minecraft/cherry_stairs.png b/public/textures/minecraft/cherry_stairs.png new file mode 100644 index 00000000..a93ce972 Binary files /dev/null and b/public/textures/minecraft/cherry_stairs.png differ diff --git a/public/textures/minecraft/cherry_trapdoor.png b/public/textures/minecraft/cherry_trapdoor.png new file mode 100644 index 00000000..9e3e1ab2 Binary files /dev/null and b/public/textures/minecraft/cherry_trapdoor.png differ diff --git a/public/textures/minecraft/cherry_wood.png b/public/textures/minecraft/cherry_wood.png new file mode 100644 index 00000000..9fed1ce9 Binary files /dev/null and b/public/textures/minecraft/cherry_wood.png differ diff --git a/public/textures/minecraft/chest.png b/public/textures/minecraft/chest.png new file mode 100644 index 00000000..e075c829 Binary files /dev/null and b/public/textures/minecraft/chest.png differ diff --git a/public/textures/minecraft/chest_minecart.png b/public/textures/minecraft/chest_minecart.png new file mode 100644 index 00000000..97abca65 Binary files /dev/null and b/public/textures/minecraft/chest_minecart.png differ diff --git a/public/textures/minecraft/chicken.png b/public/textures/minecraft/chicken.png new file mode 100644 index 00000000..a665a7a3 Binary files /dev/null and b/public/textures/minecraft/chicken.png differ diff --git a/public/textures/minecraft/chicken_spawn_egg.png b/public/textures/minecraft/chicken_spawn_egg.png new file mode 100644 index 00000000..ec30f6f8 Binary files /dev/null and b/public/textures/minecraft/chicken_spawn_egg.png differ diff --git a/public/textures/minecraft/chipped_anvil.png b/public/textures/minecraft/chipped_anvil.png new file mode 100644 index 00000000..70e65e89 Binary files /dev/null and b/public/textures/minecraft/chipped_anvil.png differ diff --git a/public/textures/minecraft/chiseled_bookshelf.png b/public/textures/minecraft/chiseled_bookshelf.png new file mode 100644 index 00000000..82fac23b Binary files /dev/null and b/public/textures/minecraft/chiseled_bookshelf.png differ diff --git a/public/textures/minecraft/chiseled_copper.png b/public/textures/minecraft/chiseled_copper.png new file mode 100644 index 00000000..bee7cf12 Binary files /dev/null and b/public/textures/minecraft/chiseled_copper.png differ diff --git a/public/textures/minecraft/chiseled_deepslate.png b/public/textures/minecraft/chiseled_deepslate.png new file mode 100644 index 00000000..0087d167 Binary files /dev/null and b/public/textures/minecraft/chiseled_deepslate.png differ diff --git a/public/textures/minecraft/chiseled_nether_bricks.png b/public/textures/minecraft/chiseled_nether_bricks.png new file mode 100644 index 00000000..505abf3e Binary files /dev/null and b/public/textures/minecraft/chiseled_nether_bricks.png differ diff --git a/public/textures/minecraft/chiseled_polished_blackstone.png b/public/textures/minecraft/chiseled_polished_blackstone.png new file mode 100644 index 00000000..82cf3dc5 Binary files /dev/null and b/public/textures/minecraft/chiseled_polished_blackstone.png differ diff --git a/public/textures/minecraft/chiseled_quartz_block.png b/public/textures/minecraft/chiseled_quartz_block.png new file mode 100644 index 00000000..ffdb7acf Binary files /dev/null and b/public/textures/minecraft/chiseled_quartz_block.png differ diff --git a/public/textures/minecraft/chiseled_red_sandstone.png b/public/textures/minecraft/chiseled_red_sandstone.png new file mode 100644 index 00000000..0ce097d5 Binary files /dev/null and b/public/textures/minecraft/chiseled_red_sandstone.png differ diff --git a/public/textures/minecraft/chiseled_sandstone.png b/public/textures/minecraft/chiseled_sandstone.png new file mode 100644 index 00000000..2c6e9c87 Binary files /dev/null and b/public/textures/minecraft/chiseled_sandstone.png differ diff --git a/public/textures/minecraft/chiseled_stone_bricks.png b/public/textures/minecraft/chiseled_stone_bricks.png new file mode 100644 index 00000000..508c668f Binary files /dev/null and b/public/textures/minecraft/chiseled_stone_bricks.png differ diff --git a/public/textures/minecraft/chiseled_tuff.png b/public/textures/minecraft/chiseled_tuff.png new file mode 100644 index 00000000..374a280e Binary files /dev/null and b/public/textures/minecraft/chiseled_tuff.png differ diff --git a/public/textures/minecraft/chiseled_tuff_bricks.png b/public/textures/minecraft/chiseled_tuff_bricks.png new file mode 100644 index 00000000..23fa7268 Binary files /dev/null and b/public/textures/minecraft/chiseled_tuff_bricks.png differ diff --git a/public/textures/minecraft/chorus_flower.png b/public/textures/minecraft/chorus_flower.png new file mode 100644 index 00000000..acdb356e Binary files /dev/null and b/public/textures/minecraft/chorus_flower.png differ diff --git a/public/textures/minecraft/chorus_fruit.png b/public/textures/minecraft/chorus_fruit.png new file mode 100644 index 00000000..64bfab9e Binary files /dev/null and b/public/textures/minecraft/chorus_fruit.png differ diff --git a/public/textures/minecraft/chorus_plant.png b/public/textures/minecraft/chorus_plant.png new file mode 100644 index 00000000..2fe1f500 Binary files /dev/null and b/public/textures/minecraft/chorus_plant.png differ diff --git a/public/textures/minecraft/clay.png b/public/textures/minecraft/clay.png new file mode 100644 index 00000000..7a1bfee2 Binary files /dev/null and b/public/textures/minecraft/clay.png differ diff --git a/public/textures/minecraft/clay_ball.png b/public/textures/minecraft/clay_ball.png new file mode 100644 index 00000000..7122fef7 Binary files /dev/null and b/public/textures/minecraft/clay_ball.png differ diff --git a/public/textures/minecraft/clock.png b/public/textures/minecraft/clock.png new file mode 100644 index 00000000..eff986af Binary files /dev/null and b/public/textures/minecraft/clock.png differ diff --git a/public/textures/minecraft/coal.png b/public/textures/minecraft/coal.png new file mode 100644 index 00000000..89b4d8d0 Binary files /dev/null and b/public/textures/minecraft/coal.png differ diff --git a/public/textures/minecraft/coal_block.png b/public/textures/minecraft/coal_block.png new file mode 100644 index 00000000..699203e7 Binary files /dev/null and b/public/textures/minecraft/coal_block.png differ diff --git a/public/textures/minecraft/coal_ore.png b/public/textures/minecraft/coal_ore.png new file mode 100644 index 00000000..ee2415e8 Binary files /dev/null and b/public/textures/minecraft/coal_ore.png differ diff --git a/public/textures/minecraft/coarse_dirt.png b/public/textures/minecraft/coarse_dirt.png new file mode 100644 index 00000000..c6aec3cc Binary files /dev/null and b/public/textures/minecraft/coarse_dirt.png differ diff --git a/public/textures/minecraft/coast_armor_trim_smithing_template.png b/public/textures/minecraft/coast_armor_trim_smithing_template.png new file mode 100644 index 00000000..77f5ba2e Binary files /dev/null and b/public/textures/minecraft/coast_armor_trim_smithing_template.png differ diff --git a/public/textures/minecraft/cobbled_deepslate.png b/public/textures/minecraft/cobbled_deepslate.png new file mode 100644 index 00000000..b5569906 Binary files /dev/null and b/public/textures/minecraft/cobbled_deepslate.png differ diff --git a/public/textures/minecraft/cobbled_deepslate_slab.png b/public/textures/minecraft/cobbled_deepslate_slab.png new file mode 100644 index 00000000..9c969586 Binary files /dev/null and b/public/textures/minecraft/cobbled_deepslate_slab.png differ diff --git a/public/textures/minecraft/cobbled_deepslate_stairs.png b/public/textures/minecraft/cobbled_deepslate_stairs.png new file mode 100644 index 00000000..ef289c30 Binary files /dev/null and b/public/textures/minecraft/cobbled_deepslate_stairs.png differ diff --git a/public/textures/minecraft/cobbled_deepslate_wall.png b/public/textures/minecraft/cobbled_deepslate_wall.png new file mode 100644 index 00000000..bb5cf59a Binary files /dev/null and b/public/textures/minecraft/cobbled_deepslate_wall.png differ diff --git a/public/textures/minecraft/cobblestone.png b/public/textures/minecraft/cobblestone.png new file mode 100644 index 00000000..876e6448 Binary files /dev/null and b/public/textures/minecraft/cobblestone.png differ diff --git a/public/textures/minecraft/cobblestone_slab.png b/public/textures/minecraft/cobblestone_slab.png new file mode 100644 index 00000000..75de285a Binary files /dev/null and b/public/textures/minecraft/cobblestone_slab.png differ diff --git a/public/textures/minecraft/cobblestone_stairs.png b/public/textures/minecraft/cobblestone_stairs.png new file mode 100644 index 00000000..3a0b4092 Binary files /dev/null and b/public/textures/minecraft/cobblestone_stairs.png differ diff --git a/public/textures/minecraft/cobblestone_wall.png b/public/textures/minecraft/cobblestone_wall.png new file mode 100644 index 00000000..034195b2 Binary files /dev/null and b/public/textures/minecraft/cobblestone_wall.png differ diff --git a/public/textures/minecraft/cobweb.png b/public/textures/minecraft/cobweb.png new file mode 100644 index 00000000..601c9d89 Binary files /dev/null and b/public/textures/minecraft/cobweb.png differ diff --git a/public/textures/minecraft/cocoa_beans.png b/public/textures/minecraft/cocoa_beans.png new file mode 100644 index 00000000..997c8e31 Binary files /dev/null and b/public/textures/minecraft/cocoa_beans.png differ diff --git a/public/textures/minecraft/cod.png b/public/textures/minecraft/cod.png new file mode 100644 index 00000000..8dae70ea Binary files /dev/null and b/public/textures/minecraft/cod.png differ diff --git a/public/textures/minecraft/cod_bucket.png b/public/textures/minecraft/cod_bucket.png new file mode 100644 index 00000000..2773687a Binary files /dev/null and b/public/textures/minecraft/cod_bucket.png differ diff --git a/public/textures/minecraft/cod_spawn_egg.png b/public/textures/minecraft/cod_spawn_egg.png new file mode 100644 index 00000000..eea13697 Binary files /dev/null and b/public/textures/minecraft/cod_spawn_egg.png differ diff --git a/public/textures/minecraft/comparator.png b/public/textures/minecraft/comparator.png new file mode 100644 index 00000000..02084396 Binary files /dev/null and b/public/textures/minecraft/comparator.png differ diff --git a/public/textures/minecraft/compass.png b/public/textures/minecraft/compass.png new file mode 100644 index 00000000..1ff02616 Binary files /dev/null and b/public/textures/minecraft/compass.png differ diff --git a/public/textures/minecraft/composter.png b/public/textures/minecraft/composter.png new file mode 100644 index 00000000..7dbeeb40 Binary files /dev/null and b/public/textures/minecraft/composter.png differ diff --git a/public/textures/minecraft/conduit.png b/public/textures/minecraft/conduit.png new file mode 100644 index 00000000..1abf8f54 Binary files /dev/null and b/public/textures/minecraft/conduit.png differ diff --git a/public/textures/minecraft/cooked_beef.png b/public/textures/minecraft/cooked_beef.png new file mode 100644 index 00000000..20ae4eac Binary files /dev/null and b/public/textures/minecraft/cooked_beef.png differ diff --git a/public/textures/minecraft/cooked_chicken.png b/public/textures/minecraft/cooked_chicken.png new file mode 100644 index 00000000..b9d0b705 Binary files /dev/null and b/public/textures/minecraft/cooked_chicken.png differ diff --git a/public/textures/minecraft/cooked_cod.png b/public/textures/minecraft/cooked_cod.png new file mode 100644 index 00000000..08dd9d7f Binary files /dev/null and b/public/textures/minecraft/cooked_cod.png differ diff --git a/public/textures/minecraft/cooked_mutton.png b/public/textures/minecraft/cooked_mutton.png new file mode 100644 index 00000000..158c1221 Binary files /dev/null and b/public/textures/minecraft/cooked_mutton.png differ diff --git a/public/textures/minecraft/cooked_porkchop.png b/public/textures/minecraft/cooked_porkchop.png new file mode 100644 index 00000000..8ea1b747 Binary files /dev/null and b/public/textures/minecraft/cooked_porkchop.png differ diff --git a/public/textures/minecraft/cooked_rabbit.png b/public/textures/minecraft/cooked_rabbit.png new file mode 100644 index 00000000..9449451c Binary files /dev/null and b/public/textures/minecraft/cooked_rabbit.png differ diff --git a/public/textures/minecraft/cooked_salmon.png b/public/textures/minecraft/cooked_salmon.png new file mode 100644 index 00000000..b79dbdaa Binary files /dev/null and b/public/textures/minecraft/cooked_salmon.png differ diff --git a/public/textures/minecraft/cookie.png b/public/textures/minecraft/cookie.png new file mode 100644 index 00000000..e4636f64 Binary files /dev/null and b/public/textures/minecraft/cookie.png differ diff --git a/public/textures/minecraft/copper_block.png b/public/textures/minecraft/copper_block.png new file mode 100644 index 00000000..04105504 Binary files /dev/null and b/public/textures/minecraft/copper_block.png differ diff --git a/public/textures/minecraft/copper_bulb.png b/public/textures/minecraft/copper_bulb.png new file mode 100644 index 00000000..772b0bc2 Binary files /dev/null and b/public/textures/minecraft/copper_bulb.png differ diff --git a/public/textures/minecraft/copper_door.png b/public/textures/minecraft/copper_door.png new file mode 100644 index 00000000..a890b5f7 Binary files /dev/null and b/public/textures/minecraft/copper_door.png differ diff --git a/public/textures/minecraft/copper_grate.png b/public/textures/minecraft/copper_grate.png new file mode 100644 index 00000000..5636dc6d Binary files /dev/null and b/public/textures/minecraft/copper_grate.png differ diff --git a/public/textures/minecraft/copper_ingot.png b/public/textures/minecraft/copper_ingot.png new file mode 100644 index 00000000..e4693836 Binary files /dev/null and b/public/textures/minecraft/copper_ingot.png differ diff --git a/public/textures/minecraft/copper_ore.png b/public/textures/minecraft/copper_ore.png new file mode 100644 index 00000000..f58e154b Binary files /dev/null and b/public/textures/minecraft/copper_ore.png differ diff --git a/public/textures/minecraft/copper_trapdoor.png b/public/textures/minecraft/copper_trapdoor.png new file mode 100644 index 00000000..66447999 Binary files /dev/null and b/public/textures/minecraft/copper_trapdoor.png differ diff --git a/public/textures/minecraft/cornflower.png b/public/textures/minecraft/cornflower.png new file mode 100644 index 00000000..e576d779 Binary files /dev/null and b/public/textures/minecraft/cornflower.png differ diff --git a/public/textures/minecraft/cow_spawn_egg.png b/public/textures/minecraft/cow_spawn_egg.png new file mode 100644 index 00000000..8b72d2a1 Binary files /dev/null and b/public/textures/minecraft/cow_spawn_egg.png differ diff --git a/public/textures/minecraft/cracked_deepslate_bricks.png b/public/textures/minecraft/cracked_deepslate_bricks.png new file mode 100644 index 00000000..b192f356 Binary files /dev/null and b/public/textures/minecraft/cracked_deepslate_bricks.png differ diff --git a/public/textures/minecraft/cracked_deepslate_tiles.png b/public/textures/minecraft/cracked_deepslate_tiles.png new file mode 100644 index 00000000..0d99e5e8 Binary files /dev/null and b/public/textures/minecraft/cracked_deepslate_tiles.png differ diff --git a/public/textures/minecraft/cracked_nether_bricks.png b/public/textures/minecraft/cracked_nether_bricks.png new file mode 100644 index 00000000..cd9a100e Binary files /dev/null and b/public/textures/minecraft/cracked_nether_bricks.png differ diff --git a/public/textures/minecraft/cracked_polished_blackstone_bricks.png b/public/textures/minecraft/cracked_polished_blackstone_bricks.png new file mode 100644 index 00000000..90a96aeb Binary files /dev/null and b/public/textures/minecraft/cracked_polished_blackstone_bricks.png differ diff --git a/public/textures/minecraft/cracked_stone_bricks.png b/public/textures/minecraft/cracked_stone_bricks.png new file mode 100644 index 00000000..7c065021 Binary files /dev/null and b/public/textures/minecraft/cracked_stone_bricks.png differ diff --git a/public/textures/minecraft/crafter.png b/public/textures/minecraft/crafter.png new file mode 100644 index 00000000..635f042e Binary files /dev/null and b/public/textures/minecraft/crafter.png differ diff --git a/public/textures/minecraft/crafting_table.png b/public/textures/minecraft/crafting_table.png new file mode 100644 index 00000000..ea88c634 Binary files /dev/null and b/public/textures/minecraft/crafting_table.png differ diff --git a/public/textures/minecraft/creeper_banner_pattern.png b/public/textures/minecraft/creeper_banner_pattern.png new file mode 100644 index 00000000..43fad4e1 Binary files /dev/null and b/public/textures/minecraft/creeper_banner_pattern.png differ diff --git a/public/textures/minecraft/creeper_head.png b/public/textures/minecraft/creeper_head.png new file mode 100644 index 00000000..61961420 Binary files /dev/null and b/public/textures/minecraft/creeper_head.png differ diff --git a/public/textures/minecraft/creeper_spawn_egg.png b/public/textures/minecraft/creeper_spawn_egg.png new file mode 100644 index 00000000..1895c078 Binary files /dev/null and b/public/textures/minecraft/creeper_spawn_egg.png differ diff --git a/public/textures/minecraft/crimson_button.png b/public/textures/minecraft/crimson_button.png new file mode 100644 index 00000000..98b58922 Binary files /dev/null and b/public/textures/minecraft/crimson_button.png differ diff --git a/public/textures/minecraft/crimson_door.png b/public/textures/minecraft/crimson_door.png new file mode 100644 index 00000000..ac01fccb Binary files /dev/null and b/public/textures/minecraft/crimson_door.png differ diff --git a/public/textures/minecraft/crimson_fence.png b/public/textures/minecraft/crimson_fence.png new file mode 100644 index 00000000..5443dabe Binary files /dev/null and b/public/textures/minecraft/crimson_fence.png differ diff --git a/public/textures/minecraft/crimson_fence_gate.png b/public/textures/minecraft/crimson_fence_gate.png new file mode 100644 index 00000000..7e796960 Binary files /dev/null and b/public/textures/minecraft/crimson_fence_gate.png differ diff --git a/public/textures/minecraft/crimson_fungus.png b/public/textures/minecraft/crimson_fungus.png new file mode 100644 index 00000000..5dedfec8 Binary files /dev/null and b/public/textures/minecraft/crimson_fungus.png differ diff --git a/public/textures/minecraft/crimson_hanging_sign.png b/public/textures/minecraft/crimson_hanging_sign.png new file mode 100644 index 00000000..b62a9e3b Binary files /dev/null and b/public/textures/minecraft/crimson_hanging_sign.png differ diff --git a/public/textures/minecraft/crimson_hyphae.png b/public/textures/minecraft/crimson_hyphae.png new file mode 100644 index 00000000..8e034055 Binary files /dev/null and b/public/textures/minecraft/crimson_hyphae.png differ diff --git a/public/textures/minecraft/crimson_nylium.png b/public/textures/minecraft/crimson_nylium.png new file mode 100644 index 00000000..2c0de04f Binary files /dev/null and b/public/textures/minecraft/crimson_nylium.png differ diff --git a/public/textures/minecraft/crimson_planks.png b/public/textures/minecraft/crimson_planks.png new file mode 100644 index 00000000..c88ef2d3 Binary files /dev/null and b/public/textures/minecraft/crimson_planks.png differ diff --git a/public/textures/minecraft/crimson_pressure_plate.png b/public/textures/minecraft/crimson_pressure_plate.png new file mode 100644 index 00000000..cc17f941 Binary files /dev/null and b/public/textures/minecraft/crimson_pressure_plate.png differ diff --git a/public/textures/minecraft/crimson_roots.png b/public/textures/minecraft/crimson_roots.png new file mode 100644 index 00000000..9d389ed4 Binary files /dev/null and b/public/textures/minecraft/crimson_roots.png differ diff --git a/public/textures/minecraft/crimson_sign.png b/public/textures/minecraft/crimson_sign.png new file mode 100644 index 00000000..477dfca0 Binary files /dev/null and b/public/textures/minecraft/crimson_sign.png differ diff --git a/public/textures/minecraft/crimson_slab.png b/public/textures/minecraft/crimson_slab.png new file mode 100644 index 00000000..be467cfc Binary files /dev/null and b/public/textures/minecraft/crimson_slab.png differ diff --git a/public/textures/minecraft/crimson_stairs.png b/public/textures/minecraft/crimson_stairs.png new file mode 100644 index 00000000..cdd563f1 Binary files /dev/null and b/public/textures/minecraft/crimson_stairs.png differ diff --git a/public/textures/minecraft/crimson_stem.png b/public/textures/minecraft/crimson_stem.png new file mode 100644 index 00000000..505516aa Binary files /dev/null and b/public/textures/minecraft/crimson_stem.png differ diff --git a/public/textures/minecraft/crimson_trapdoor.png b/public/textures/minecraft/crimson_trapdoor.png new file mode 100644 index 00000000..deb53663 Binary files /dev/null and b/public/textures/minecraft/crimson_trapdoor.png differ diff --git a/public/textures/minecraft/crossbow.png b/public/textures/minecraft/crossbow.png new file mode 100644 index 00000000..54bc8579 Binary files /dev/null and b/public/textures/minecraft/crossbow.png differ diff --git a/public/textures/minecraft/crying_obsidian.png b/public/textures/minecraft/crying_obsidian.png new file mode 100644 index 00000000..bebd520c Binary files /dev/null and b/public/textures/minecraft/crying_obsidian.png differ diff --git a/public/textures/minecraft/cut_copper.png b/public/textures/minecraft/cut_copper.png new file mode 100644 index 00000000..c9d44236 Binary files /dev/null and b/public/textures/minecraft/cut_copper.png differ diff --git a/public/textures/minecraft/cut_copper_slab.png b/public/textures/minecraft/cut_copper_slab.png new file mode 100644 index 00000000..f6ae9341 Binary files /dev/null and b/public/textures/minecraft/cut_copper_slab.png differ diff --git a/public/textures/minecraft/cut_copper_stairs.png b/public/textures/minecraft/cut_copper_stairs.png new file mode 100644 index 00000000..8975122f Binary files /dev/null and b/public/textures/minecraft/cut_copper_stairs.png differ diff --git a/public/textures/minecraft/cut_red_sandstone.png b/public/textures/minecraft/cut_red_sandstone.png new file mode 100644 index 00000000..6fe8b8e7 Binary files /dev/null and b/public/textures/minecraft/cut_red_sandstone.png differ diff --git a/public/textures/minecraft/cut_red_sandstone_slab.png b/public/textures/minecraft/cut_red_sandstone_slab.png new file mode 100644 index 00000000..5b7575fa Binary files /dev/null and b/public/textures/minecraft/cut_red_sandstone_slab.png differ diff --git a/public/textures/minecraft/cut_sandstone.png b/public/textures/minecraft/cut_sandstone.png new file mode 100644 index 00000000..b9094866 Binary files /dev/null and b/public/textures/minecraft/cut_sandstone.png differ diff --git a/public/textures/minecraft/cut_sandstone_slab.png b/public/textures/minecraft/cut_sandstone_slab.png new file mode 100644 index 00000000..67a43672 Binary files /dev/null and b/public/textures/minecraft/cut_sandstone_slab.png differ diff --git a/public/textures/minecraft/cyan_banner.png b/public/textures/minecraft/cyan_banner.png new file mode 100644 index 00000000..1987b702 Binary files /dev/null and b/public/textures/minecraft/cyan_banner.png differ diff --git a/public/textures/minecraft/cyan_bed.png b/public/textures/minecraft/cyan_bed.png new file mode 100644 index 00000000..97d0a056 Binary files /dev/null and b/public/textures/minecraft/cyan_bed.png differ diff --git a/public/textures/minecraft/cyan_candle.png b/public/textures/minecraft/cyan_candle.png new file mode 100644 index 00000000..4c300244 Binary files /dev/null and b/public/textures/minecraft/cyan_candle.png differ diff --git a/public/textures/minecraft/cyan_carpet.png b/public/textures/minecraft/cyan_carpet.png new file mode 100644 index 00000000..3e85ff85 Binary files /dev/null and b/public/textures/minecraft/cyan_carpet.png differ diff --git a/public/textures/minecraft/cyan_concrete.png b/public/textures/minecraft/cyan_concrete.png new file mode 100644 index 00000000..ca4fb680 Binary files /dev/null and b/public/textures/minecraft/cyan_concrete.png differ diff --git a/public/textures/minecraft/cyan_concrete_powder.png b/public/textures/minecraft/cyan_concrete_powder.png new file mode 100644 index 00000000..1a668f31 Binary files /dev/null and b/public/textures/minecraft/cyan_concrete_powder.png differ diff --git a/public/textures/minecraft/cyan_dye.png b/public/textures/minecraft/cyan_dye.png new file mode 100644 index 00000000..ad622e60 Binary files /dev/null and b/public/textures/minecraft/cyan_dye.png differ diff --git a/public/textures/minecraft/cyan_glazed_terracotta.png b/public/textures/minecraft/cyan_glazed_terracotta.png new file mode 100644 index 00000000..74cf6a74 Binary files /dev/null and b/public/textures/minecraft/cyan_glazed_terracotta.png differ diff --git a/public/textures/minecraft/cyan_shulker_box.png b/public/textures/minecraft/cyan_shulker_box.png new file mode 100644 index 00000000..584cd717 Binary files /dev/null and b/public/textures/minecraft/cyan_shulker_box.png differ diff --git a/public/textures/minecraft/cyan_stained_glass.png b/public/textures/minecraft/cyan_stained_glass.png new file mode 100644 index 00000000..24dc0339 Binary files /dev/null and b/public/textures/minecraft/cyan_stained_glass.png differ diff --git a/public/textures/minecraft/cyan_stained_glass_pane.png b/public/textures/minecraft/cyan_stained_glass_pane.png new file mode 100644 index 00000000..64d7c107 Binary files /dev/null and b/public/textures/minecraft/cyan_stained_glass_pane.png differ diff --git a/public/textures/minecraft/cyan_terracotta.png b/public/textures/minecraft/cyan_terracotta.png new file mode 100644 index 00000000..e0a1306c Binary files /dev/null and b/public/textures/minecraft/cyan_terracotta.png differ diff --git a/public/textures/minecraft/cyan_wool.png b/public/textures/minecraft/cyan_wool.png new file mode 100644 index 00000000..7296ba7f Binary files /dev/null and b/public/textures/minecraft/cyan_wool.png differ diff --git a/public/textures/minecraft/damaged_anvil.png b/public/textures/minecraft/damaged_anvil.png new file mode 100644 index 00000000..97f7cae7 Binary files /dev/null and b/public/textures/minecraft/damaged_anvil.png differ diff --git a/public/textures/minecraft/dandelion.png b/public/textures/minecraft/dandelion.png new file mode 100644 index 00000000..c01b24f5 Binary files /dev/null and b/public/textures/minecraft/dandelion.png differ diff --git a/public/textures/minecraft/danger_pottery_sherd.png b/public/textures/minecraft/danger_pottery_sherd.png new file mode 100644 index 00000000..c0227aa9 Binary files /dev/null and b/public/textures/minecraft/danger_pottery_sherd.png differ diff --git a/public/textures/minecraft/dark_oak_boat.png b/public/textures/minecraft/dark_oak_boat.png new file mode 100644 index 00000000..bbbbeec9 Binary files /dev/null and b/public/textures/minecraft/dark_oak_boat.png differ diff --git a/public/textures/minecraft/dark_oak_button.png b/public/textures/minecraft/dark_oak_button.png new file mode 100644 index 00000000..8a31c54e Binary files /dev/null and b/public/textures/minecraft/dark_oak_button.png differ diff --git a/public/textures/minecraft/dark_oak_chest_boat.png b/public/textures/minecraft/dark_oak_chest_boat.png new file mode 100644 index 00000000..afd1425a Binary files /dev/null and b/public/textures/minecraft/dark_oak_chest_boat.png differ diff --git a/public/textures/minecraft/dark_oak_door.png b/public/textures/minecraft/dark_oak_door.png new file mode 100644 index 00000000..c873481a Binary files /dev/null and b/public/textures/minecraft/dark_oak_door.png differ diff --git a/public/textures/minecraft/dark_oak_fence.png b/public/textures/minecraft/dark_oak_fence.png new file mode 100644 index 00000000..5ed2367b Binary files /dev/null and b/public/textures/minecraft/dark_oak_fence.png differ diff --git a/public/textures/minecraft/dark_oak_fence_gate.png b/public/textures/minecraft/dark_oak_fence_gate.png new file mode 100644 index 00000000..dd23c904 Binary files /dev/null and b/public/textures/minecraft/dark_oak_fence_gate.png differ diff --git a/public/textures/minecraft/dark_oak_hanging_sign.png b/public/textures/minecraft/dark_oak_hanging_sign.png new file mode 100644 index 00000000..24d61b43 Binary files /dev/null and b/public/textures/minecraft/dark_oak_hanging_sign.png differ diff --git a/public/textures/minecraft/dark_oak_leaves.png b/public/textures/minecraft/dark_oak_leaves.png new file mode 100644 index 00000000..59adb8ae Binary files /dev/null and b/public/textures/minecraft/dark_oak_leaves.png differ diff --git a/public/textures/minecraft/dark_oak_log.png b/public/textures/minecraft/dark_oak_log.png new file mode 100644 index 00000000..f6cfd260 Binary files /dev/null and b/public/textures/minecraft/dark_oak_log.png differ diff --git a/public/textures/minecraft/dark_oak_planks.png b/public/textures/minecraft/dark_oak_planks.png new file mode 100644 index 00000000..d29c7144 Binary files /dev/null and b/public/textures/minecraft/dark_oak_planks.png differ diff --git a/public/textures/minecraft/dark_oak_pressure_plate.png b/public/textures/minecraft/dark_oak_pressure_plate.png new file mode 100644 index 00000000..8aa1643f Binary files /dev/null and b/public/textures/minecraft/dark_oak_pressure_plate.png differ diff --git a/public/textures/minecraft/dark_oak_sapling.png b/public/textures/minecraft/dark_oak_sapling.png new file mode 100644 index 00000000..a0a180b4 Binary files /dev/null and b/public/textures/minecraft/dark_oak_sapling.png differ diff --git a/public/textures/minecraft/dark_oak_sign.png b/public/textures/minecraft/dark_oak_sign.png new file mode 100644 index 00000000..7b9f1ee9 Binary files /dev/null and b/public/textures/minecraft/dark_oak_sign.png differ diff --git a/public/textures/minecraft/dark_oak_slab.png b/public/textures/minecraft/dark_oak_slab.png new file mode 100644 index 00000000..0276690d Binary files /dev/null and b/public/textures/minecraft/dark_oak_slab.png differ diff --git a/public/textures/minecraft/dark_oak_stairs.png b/public/textures/minecraft/dark_oak_stairs.png new file mode 100644 index 00000000..b5c4b4b1 Binary files /dev/null and b/public/textures/minecraft/dark_oak_stairs.png differ diff --git a/public/textures/minecraft/dark_oak_trapdoor.png b/public/textures/minecraft/dark_oak_trapdoor.png new file mode 100644 index 00000000..96b03386 Binary files /dev/null and b/public/textures/minecraft/dark_oak_trapdoor.png differ diff --git a/public/textures/minecraft/dark_oak_wood.png b/public/textures/minecraft/dark_oak_wood.png new file mode 100644 index 00000000..d74b96cc Binary files /dev/null and b/public/textures/minecraft/dark_oak_wood.png differ diff --git a/public/textures/minecraft/dark_prismarine.png b/public/textures/minecraft/dark_prismarine.png new file mode 100644 index 00000000..970eeae5 Binary files /dev/null and b/public/textures/minecraft/dark_prismarine.png differ diff --git a/public/textures/minecraft/dark_prismarine_slab.png b/public/textures/minecraft/dark_prismarine_slab.png new file mode 100644 index 00000000..aee176a5 Binary files /dev/null and b/public/textures/minecraft/dark_prismarine_slab.png differ diff --git a/public/textures/minecraft/dark_prismarine_stairs.png b/public/textures/minecraft/dark_prismarine_stairs.png new file mode 100644 index 00000000..89688452 Binary files /dev/null and b/public/textures/minecraft/dark_prismarine_stairs.png differ diff --git a/public/textures/minecraft/daylight_detector.png b/public/textures/minecraft/daylight_detector.png new file mode 100644 index 00000000..9ef82f4d Binary files /dev/null and b/public/textures/minecraft/daylight_detector.png differ diff --git a/public/textures/minecraft/dead_brain_coral.png b/public/textures/minecraft/dead_brain_coral.png new file mode 100644 index 00000000..13aa92cc Binary files /dev/null and b/public/textures/minecraft/dead_brain_coral.png differ diff --git a/public/textures/minecraft/dead_brain_coral_block.png b/public/textures/minecraft/dead_brain_coral_block.png new file mode 100644 index 00000000..a73c6a8d Binary files /dev/null and b/public/textures/minecraft/dead_brain_coral_block.png differ diff --git a/public/textures/minecraft/dead_brain_coral_fan.png b/public/textures/minecraft/dead_brain_coral_fan.png new file mode 100644 index 00000000..6b2058f5 Binary files /dev/null and b/public/textures/minecraft/dead_brain_coral_fan.png differ diff --git a/public/textures/minecraft/dead_bubble_coral.png b/public/textures/minecraft/dead_bubble_coral.png new file mode 100644 index 00000000..3403e33a Binary files /dev/null and b/public/textures/minecraft/dead_bubble_coral.png differ diff --git a/public/textures/minecraft/dead_bubble_coral_block.png b/public/textures/minecraft/dead_bubble_coral_block.png new file mode 100644 index 00000000..a39f51f7 Binary files /dev/null and b/public/textures/minecraft/dead_bubble_coral_block.png differ diff --git a/public/textures/minecraft/dead_bubble_coral_fan.png b/public/textures/minecraft/dead_bubble_coral_fan.png new file mode 100644 index 00000000..be52edf4 Binary files /dev/null and b/public/textures/minecraft/dead_bubble_coral_fan.png differ diff --git a/public/textures/minecraft/dead_bush.png b/public/textures/minecraft/dead_bush.png new file mode 100644 index 00000000..aff3118e Binary files /dev/null and b/public/textures/minecraft/dead_bush.png differ diff --git a/public/textures/minecraft/dead_fire_coral.png b/public/textures/minecraft/dead_fire_coral.png new file mode 100644 index 00000000..db3ff96d Binary files /dev/null and b/public/textures/minecraft/dead_fire_coral.png differ diff --git a/public/textures/minecraft/dead_fire_coral_block.png b/public/textures/minecraft/dead_fire_coral_block.png new file mode 100644 index 00000000..53cad100 Binary files /dev/null and b/public/textures/minecraft/dead_fire_coral_block.png differ diff --git a/public/textures/minecraft/dead_fire_coral_fan.png b/public/textures/minecraft/dead_fire_coral_fan.png new file mode 100644 index 00000000..f8b3480f Binary files /dev/null and b/public/textures/minecraft/dead_fire_coral_fan.png differ diff --git a/public/textures/minecraft/dead_horn_coral.png b/public/textures/minecraft/dead_horn_coral.png new file mode 100644 index 00000000..d12d4a44 Binary files /dev/null and b/public/textures/minecraft/dead_horn_coral.png differ diff --git a/public/textures/minecraft/dead_horn_coral_block.png b/public/textures/minecraft/dead_horn_coral_block.png new file mode 100644 index 00000000..9e50d81e Binary files /dev/null and b/public/textures/minecraft/dead_horn_coral_block.png differ diff --git a/public/textures/minecraft/dead_horn_coral_fan.png b/public/textures/minecraft/dead_horn_coral_fan.png new file mode 100644 index 00000000..73611316 Binary files /dev/null and b/public/textures/minecraft/dead_horn_coral_fan.png differ diff --git a/public/textures/minecraft/dead_tube_coral.png b/public/textures/minecraft/dead_tube_coral.png new file mode 100644 index 00000000..fca30824 Binary files /dev/null and b/public/textures/minecraft/dead_tube_coral.png differ diff --git a/public/textures/minecraft/dead_tube_coral_block.png b/public/textures/minecraft/dead_tube_coral_block.png new file mode 100644 index 00000000..24f30d01 Binary files /dev/null and b/public/textures/minecraft/dead_tube_coral_block.png differ diff --git a/public/textures/minecraft/dead_tube_coral_fan.png b/public/textures/minecraft/dead_tube_coral_fan.png new file mode 100644 index 00000000..41c2a9e5 Binary files /dev/null and b/public/textures/minecraft/dead_tube_coral_fan.png differ diff --git a/public/textures/minecraft/decorated_pot.png b/public/textures/minecraft/decorated_pot.png new file mode 100644 index 00000000..756ec797 Binary files /dev/null and b/public/textures/minecraft/decorated_pot.png differ diff --git a/public/textures/minecraft/deepslate.png b/public/textures/minecraft/deepslate.png new file mode 100644 index 00000000..4f97967b Binary files /dev/null and b/public/textures/minecraft/deepslate.png differ diff --git a/public/textures/minecraft/deepslate_brick_slab.png b/public/textures/minecraft/deepslate_brick_slab.png new file mode 100644 index 00000000..20727efd Binary files /dev/null and b/public/textures/minecraft/deepslate_brick_slab.png differ diff --git a/public/textures/minecraft/deepslate_brick_stairs.png b/public/textures/minecraft/deepslate_brick_stairs.png new file mode 100644 index 00000000..55e5a4dc Binary files /dev/null and b/public/textures/minecraft/deepslate_brick_stairs.png differ diff --git a/public/textures/minecraft/deepslate_brick_wall.png b/public/textures/minecraft/deepslate_brick_wall.png new file mode 100644 index 00000000..3d474f90 Binary files /dev/null and b/public/textures/minecraft/deepslate_brick_wall.png differ diff --git a/public/textures/minecraft/deepslate_bricks.png b/public/textures/minecraft/deepslate_bricks.png new file mode 100644 index 00000000..15404855 Binary files /dev/null and b/public/textures/minecraft/deepslate_bricks.png differ diff --git a/public/textures/minecraft/deepslate_coal_ore.png b/public/textures/minecraft/deepslate_coal_ore.png new file mode 100644 index 00000000..5432798a Binary files /dev/null and b/public/textures/minecraft/deepslate_coal_ore.png differ diff --git a/public/textures/minecraft/deepslate_copper_ore.png b/public/textures/minecraft/deepslate_copper_ore.png new file mode 100644 index 00000000..430f4e70 Binary files /dev/null and b/public/textures/minecraft/deepslate_copper_ore.png differ diff --git a/public/textures/minecraft/deepslate_diamond_ore.png b/public/textures/minecraft/deepslate_diamond_ore.png new file mode 100644 index 00000000..8bedc8e9 Binary files /dev/null and b/public/textures/minecraft/deepslate_diamond_ore.png differ diff --git a/public/textures/minecraft/deepslate_emerald_ore.png b/public/textures/minecraft/deepslate_emerald_ore.png new file mode 100644 index 00000000..a0ad31de Binary files /dev/null and b/public/textures/minecraft/deepslate_emerald_ore.png differ diff --git a/public/textures/minecraft/deepslate_gold_ore.png b/public/textures/minecraft/deepslate_gold_ore.png new file mode 100644 index 00000000..cefdd26b Binary files /dev/null and b/public/textures/minecraft/deepslate_gold_ore.png differ diff --git a/public/textures/minecraft/deepslate_iron_ore.png b/public/textures/minecraft/deepslate_iron_ore.png new file mode 100644 index 00000000..d29f3d97 Binary files /dev/null and b/public/textures/minecraft/deepslate_iron_ore.png differ diff --git a/public/textures/minecraft/deepslate_lapis_ore.png b/public/textures/minecraft/deepslate_lapis_ore.png new file mode 100644 index 00000000..96e7e87e Binary files /dev/null and b/public/textures/minecraft/deepslate_lapis_ore.png differ diff --git a/public/textures/minecraft/deepslate_redstone_ore.png b/public/textures/minecraft/deepslate_redstone_ore.png new file mode 100644 index 00000000..b030d950 Binary files /dev/null and b/public/textures/minecraft/deepslate_redstone_ore.png differ diff --git a/public/textures/minecraft/deepslate_tile_slab.png b/public/textures/minecraft/deepslate_tile_slab.png new file mode 100644 index 00000000..07126477 Binary files /dev/null and b/public/textures/minecraft/deepslate_tile_slab.png differ diff --git a/public/textures/minecraft/deepslate_tile_stairs.png b/public/textures/minecraft/deepslate_tile_stairs.png new file mode 100644 index 00000000..7a54b0a7 Binary files /dev/null and b/public/textures/minecraft/deepslate_tile_stairs.png differ diff --git a/public/textures/minecraft/deepslate_tile_wall.png b/public/textures/minecraft/deepslate_tile_wall.png new file mode 100644 index 00000000..b526489b Binary files /dev/null and b/public/textures/minecraft/deepslate_tile_wall.png differ diff --git a/public/textures/minecraft/deepslate_tiles.png b/public/textures/minecraft/deepslate_tiles.png new file mode 100644 index 00000000..c14506f6 Binary files /dev/null and b/public/textures/minecraft/deepslate_tiles.png differ diff --git a/public/textures/minecraft/detector_rail.png b/public/textures/minecraft/detector_rail.png new file mode 100644 index 00000000..101071bb Binary files /dev/null and b/public/textures/minecraft/detector_rail.png differ diff --git a/public/textures/minecraft/diamond.png b/public/textures/minecraft/diamond.png new file mode 100644 index 00000000..4ea6fa98 Binary files /dev/null and b/public/textures/minecraft/diamond.png differ diff --git a/public/textures/minecraft/diamond_axe.png b/public/textures/minecraft/diamond_axe.png new file mode 100644 index 00000000..67fd174a Binary files /dev/null and b/public/textures/minecraft/diamond_axe.png differ diff --git a/public/textures/minecraft/diamond_block.png b/public/textures/minecraft/diamond_block.png new file mode 100644 index 00000000..43984c8e Binary files /dev/null and b/public/textures/minecraft/diamond_block.png differ diff --git a/public/textures/minecraft/diamond_boots.png b/public/textures/minecraft/diamond_boots.png new file mode 100644 index 00000000..16439e68 Binary files /dev/null and b/public/textures/minecraft/diamond_boots.png differ diff --git a/public/textures/minecraft/diamond_chestplate.png b/public/textures/minecraft/diamond_chestplate.png new file mode 100644 index 00000000..e9745d6b Binary files /dev/null and b/public/textures/minecraft/diamond_chestplate.png differ diff --git a/public/textures/minecraft/diamond_helmet.png b/public/textures/minecraft/diamond_helmet.png new file mode 100644 index 00000000..742ad00d Binary files /dev/null and b/public/textures/minecraft/diamond_helmet.png differ diff --git a/public/textures/minecraft/diamond_hoe.png b/public/textures/minecraft/diamond_hoe.png new file mode 100644 index 00000000..cbc63ae6 Binary files /dev/null and b/public/textures/minecraft/diamond_hoe.png differ diff --git a/public/textures/minecraft/diamond_horse_armor.png b/public/textures/minecraft/diamond_horse_armor.png new file mode 100644 index 00000000..a5a8ced4 Binary files /dev/null and b/public/textures/minecraft/diamond_horse_armor.png differ diff --git a/public/textures/minecraft/diamond_leggings.png b/public/textures/minecraft/diamond_leggings.png new file mode 100644 index 00000000..1a720158 Binary files /dev/null and b/public/textures/minecraft/diamond_leggings.png differ diff --git a/public/textures/minecraft/diamond_ore.png b/public/textures/minecraft/diamond_ore.png new file mode 100644 index 00000000..2bb281bf Binary files /dev/null and b/public/textures/minecraft/diamond_ore.png differ diff --git a/public/textures/minecraft/diamond_pickaxe.png b/public/textures/minecraft/diamond_pickaxe.png new file mode 100644 index 00000000..640d923d Binary files /dev/null and b/public/textures/minecraft/diamond_pickaxe.png differ diff --git a/public/textures/minecraft/diamond_shovel.png b/public/textures/minecraft/diamond_shovel.png new file mode 100644 index 00000000..8537b5cb Binary files /dev/null and b/public/textures/minecraft/diamond_shovel.png differ diff --git a/public/textures/minecraft/diamond_sword.png b/public/textures/minecraft/diamond_sword.png new file mode 100644 index 00000000..86e05e7f Binary files /dev/null and b/public/textures/minecraft/diamond_sword.png differ diff --git a/public/textures/minecraft/diorite.png b/public/textures/minecraft/diorite.png new file mode 100644 index 00000000..bfc01738 Binary files /dev/null and b/public/textures/minecraft/diorite.png differ diff --git a/public/textures/minecraft/diorite_slab.png b/public/textures/minecraft/diorite_slab.png new file mode 100644 index 00000000..43f3b505 Binary files /dev/null and b/public/textures/minecraft/diorite_slab.png differ diff --git a/public/textures/minecraft/diorite_stairs.png b/public/textures/minecraft/diorite_stairs.png new file mode 100644 index 00000000..36b66ef5 Binary files /dev/null and b/public/textures/minecraft/diorite_stairs.png differ diff --git a/public/textures/minecraft/diorite_wall.png b/public/textures/minecraft/diorite_wall.png new file mode 100644 index 00000000..b4bc28d5 Binary files /dev/null and b/public/textures/minecraft/diorite_wall.png differ diff --git a/public/textures/minecraft/dirt.png b/public/textures/minecraft/dirt.png new file mode 100644 index 00000000..193a7e84 Binary files /dev/null and b/public/textures/minecraft/dirt.png differ diff --git a/public/textures/minecraft/dirt_path.png b/public/textures/minecraft/dirt_path.png new file mode 100644 index 00000000..789d62c0 Binary files /dev/null and b/public/textures/minecraft/dirt_path.png differ diff --git a/public/textures/minecraft/disc_fragment_5.png b/public/textures/minecraft/disc_fragment_5.png new file mode 100644 index 00000000..fcc22801 Binary files /dev/null and b/public/textures/minecraft/disc_fragment_5.png differ diff --git a/public/textures/minecraft/dispenser.png b/public/textures/minecraft/dispenser.png new file mode 100644 index 00000000..b397af93 Binary files /dev/null and b/public/textures/minecraft/dispenser.png differ diff --git a/public/textures/minecraft/dolphin_spawn_egg.png b/public/textures/minecraft/dolphin_spawn_egg.png new file mode 100644 index 00000000..080884eb Binary files /dev/null and b/public/textures/minecraft/dolphin_spawn_egg.png differ diff --git a/public/textures/minecraft/donkey_spawn_egg.png b/public/textures/minecraft/donkey_spawn_egg.png new file mode 100644 index 00000000..6506fe19 Binary files /dev/null and b/public/textures/minecraft/donkey_spawn_egg.png differ diff --git a/public/textures/minecraft/dragon_breath.png b/public/textures/minecraft/dragon_breath.png new file mode 100644 index 00000000..6efe6a03 Binary files /dev/null and b/public/textures/minecraft/dragon_breath.png differ diff --git a/public/textures/minecraft/dragon_egg.png b/public/textures/minecraft/dragon_egg.png new file mode 100644 index 00000000..2d28c7d0 Binary files /dev/null and b/public/textures/minecraft/dragon_egg.png differ diff --git a/public/textures/minecraft/dragon_head.png b/public/textures/minecraft/dragon_head.png new file mode 100644 index 00000000..82416cce Binary files /dev/null and b/public/textures/minecraft/dragon_head.png differ diff --git a/public/textures/minecraft/dried_kelp.png b/public/textures/minecraft/dried_kelp.png new file mode 100644 index 00000000..d2ef4f51 Binary files /dev/null and b/public/textures/minecraft/dried_kelp.png differ diff --git a/public/textures/minecraft/dried_kelp_block.png b/public/textures/minecraft/dried_kelp_block.png new file mode 100644 index 00000000..676108c9 Binary files /dev/null and b/public/textures/minecraft/dried_kelp_block.png differ diff --git a/public/textures/minecraft/dripstone_block.png b/public/textures/minecraft/dripstone_block.png new file mode 100644 index 00000000..4a38e23f Binary files /dev/null and b/public/textures/minecraft/dripstone_block.png differ diff --git a/public/textures/minecraft/dropper.png b/public/textures/minecraft/dropper.png new file mode 100644 index 00000000..4edd670d Binary files /dev/null and b/public/textures/minecraft/dropper.png differ diff --git a/public/textures/minecraft/drowned_spawn_egg.png b/public/textures/minecraft/drowned_spawn_egg.png new file mode 100644 index 00000000..025f53dd Binary files /dev/null and b/public/textures/minecraft/drowned_spawn_egg.png differ diff --git a/public/textures/minecraft/dune_armor_trim_smithing_template.png b/public/textures/minecraft/dune_armor_trim_smithing_template.png new file mode 100644 index 00000000..a05e8c26 Binary files /dev/null and b/public/textures/minecraft/dune_armor_trim_smithing_template.png differ diff --git a/public/textures/minecraft/echo_shard.png b/public/textures/minecraft/echo_shard.png new file mode 100644 index 00000000..87fc6a22 Binary files /dev/null and b/public/textures/minecraft/echo_shard.png differ diff --git a/public/textures/minecraft/egg.png b/public/textures/minecraft/egg.png new file mode 100644 index 00000000..77257b87 Binary files /dev/null and b/public/textures/minecraft/egg.png differ diff --git a/public/textures/minecraft/elder_guardian_spawn_egg.png b/public/textures/minecraft/elder_guardian_spawn_egg.png new file mode 100644 index 00000000..9093a0f6 Binary files /dev/null and b/public/textures/minecraft/elder_guardian_spawn_egg.png differ diff --git a/public/textures/minecraft/elytra.png b/public/textures/minecraft/elytra.png new file mode 100644 index 00000000..59dce9aa Binary files /dev/null and b/public/textures/minecraft/elytra.png differ diff --git a/public/textures/minecraft/emerald.png b/public/textures/minecraft/emerald.png new file mode 100644 index 00000000..494fccb5 Binary files /dev/null and b/public/textures/minecraft/emerald.png differ diff --git a/public/textures/minecraft/emerald_block.png b/public/textures/minecraft/emerald_block.png new file mode 100644 index 00000000..05608785 Binary files /dev/null and b/public/textures/minecraft/emerald_block.png differ diff --git a/public/textures/minecraft/emerald_ore.png b/public/textures/minecraft/emerald_ore.png new file mode 100644 index 00000000..88e2fb49 Binary files /dev/null and b/public/textures/minecraft/emerald_ore.png differ diff --git a/public/textures/minecraft/enchanted_book.png b/public/textures/minecraft/enchanted_book.png new file mode 100644 index 00000000..ac0f8cc9 Binary files /dev/null and b/public/textures/minecraft/enchanted_book.png differ diff --git a/public/textures/minecraft/enchanted_golden_apple.png b/public/textures/minecraft/enchanted_golden_apple.png new file mode 100644 index 00000000..556a6de4 Binary files /dev/null and b/public/textures/minecraft/enchanted_golden_apple.png differ diff --git a/public/textures/minecraft/enchanting_table.png b/public/textures/minecraft/enchanting_table.png new file mode 100644 index 00000000..0eaf75b8 Binary files /dev/null and b/public/textures/minecraft/enchanting_table.png differ diff --git a/public/textures/minecraft/end_crystal.png b/public/textures/minecraft/end_crystal.png new file mode 100644 index 00000000..91cdccf6 Binary files /dev/null and b/public/textures/minecraft/end_crystal.png differ diff --git a/public/textures/minecraft/end_portal_frame.png b/public/textures/minecraft/end_portal_frame.png new file mode 100644 index 00000000..8de4e7ec Binary files /dev/null and b/public/textures/minecraft/end_portal_frame.png differ diff --git a/public/textures/minecraft/end_rod.png b/public/textures/minecraft/end_rod.png new file mode 100644 index 00000000..6b9dd107 Binary files /dev/null and b/public/textures/minecraft/end_rod.png differ diff --git a/public/textures/minecraft/end_stone.png b/public/textures/minecraft/end_stone.png new file mode 100644 index 00000000..42d700a8 Binary files /dev/null and b/public/textures/minecraft/end_stone.png differ diff --git a/public/textures/minecraft/end_stone_brick_slab.png b/public/textures/minecraft/end_stone_brick_slab.png new file mode 100644 index 00000000..c171ca4e Binary files /dev/null and b/public/textures/minecraft/end_stone_brick_slab.png differ diff --git a/public/textures/minecraft/end_stone_brick_stairs.png b/public/textures/minecraft/end_stone_brick_stairs.png new file mode 100644 index 00000000..f9ab4882 Binary files /dev/null and b/public/textures/minecraft/end_stone_brick_stairs.png differ diff --git a/public/textures/minecraft/end_stone_brick_wall.png b/public/textures/minecraft/end_stone_brick_wall.png new file mode 100644 index 00000000..bae1f351 Binary files /dev/null and b/public/textures/minecraft/end_stone_brick_wall.png differ diff --git a/public/textures/minecraft/end_stone_bricks.png b/public/textures/minecraft/end_stone_bricks.png new file mode 100644 index 00000000..9f2bedac Binary files /dev/null and b/public/textures/minecraft/end_stone_bricks.png differ diff --git a/public/textures/minecraft/ender_chest.png b/public/textures/minecraft/ender_chest.png new file mode 100644 index 00000000..8e2aea27 Binary files /dev/null and b/public/textures/minecraft/ender_chest.png differ diff --git a/public/textures/minecraft/ender_eye.png b/public/textures/minecraft/ender_eye.png new file mode 100644 index 00000000..461e11a0 Binary files /dev/null and b/public/textures/minecraft/ender_eye.png differ diff --git a/public/textures/minecraft/ender_pearl.png b/public/textures/minecraft/ender_pearl.png new file mode 100644 index 00000000..198c482c Binary files /dev/null and b/public/textures/minecraft/ender_pearl.png differ diff --git a/public/textures/minecraft/enderman_spawn_egg.png b/public/textures/minecraft/enderman_spawn_egg.png new file mode 100644 index 00000000..1db4e1c3 Binary files /dev/null and b/public/textures/minecraft/enderman_spawn_egg.png differ diff --git a/public/textures/minecraft/endermite_spawn_egg.png b/public/textures/minecraft/endermite_spawn_egg.png new file mode 100644 index 00000000..cb1fe166 Binary files /dev/null and b/public/textures/minecraft/endermite_spawn_egg.png differ diff --git a/public/textures/minecraft/evoker_spawn_egg.png b/public/textures/minecraft/evoker_spawn_egg.png new file mode 100644 index 00000000..c8b0bb18 Binary files /dev/null and b/public/textures/minecraft/evoker_spawn_egg.png differ diff --git a/public/textures/minecraft/experience_bottle.png b/public/textures/minecraft/experience_bottle.png new file mode 100644 index 00000000..05dcb94d Binary files /dev/null and b/public/textures/minecraft/experience_bottle.png differ diff --git a/public/textures/minecraft/explorer_pottery_sherd.png b/public/textures/minecraft/explorer_pottery_sherd.png new file mode 100644 index 00000000..c70238c6 Binary files /dev/null and b/public/textures/minecraft/explorer_pottery_sherd.png differ diff --git a/public/textures/minecraft/exposed_chiseled_copper.png b/public/textures/minecraft/exposed_chiseled_copper.png new file mode 100644 index 00000000..7fb17de7 Binary files /dev/null and b/public/textures/minecraft/exposed_chiseled_copper.png differ diff --git a/public/textures/minecraft/exposed_copper.png b/public/textures/minecraft/exposed_copper.png new file mode 100644 index 00000000..c9355740 Binary files /dev/null and b/public/textures/minecraft/exposed_copper.png differ diff --git a/public/textures/minecraft/exposed_copper_bulb.png b/public/textures/minecraft/exposed_copper_bulb.png new file mode 100644 index 00000000..677e2f23 Binary files /dev/null and b/public/textures/minecraft/exposed_copper_bulb.png differ diff --git a/public/textures/minecraft/exposed_copper_door.png b/public/textures/minecraft/exposed_copper_door.png new file mode 100644 index 00000000..5decc8ea Binary files /dev/null and b/public/textures/minecraft/exposed_copper_door.png differ diff --git a/public/textures/minecraft/exposed_copper_grate.png b/public/textures/minecraft/exposed_copper_grate.png new file mode 100644 index 00000000..16eb3c84 Binary files /dev/null and b/public/textures/minecraft/exposed_copper_grate.png differ diff --git a/public/textures/minecraft/exposed_copper_trapdoor.png b/public/textures/minecraft/exposed_copper_trapdoor.png new file mode 100644 index 00000000..578e6c5d Binary files /dev/null and b/public/textures/minecraft/exposed_copper_trapdoor.png differ diff --git a/public/textures/minecraft/exposed_cut_copper.png b/public/textures/minecraft/exposed_cut_copper.png new file mode 100644 index 00000000..1ab962f0 Binary files /dev/null and b/public/textures/minecraft/exposed_cut_copper.png differ diff --git a/public/textures/minecraft/exposed_cut_copper_slab.png b/public/textures/minecraft/exposed_cut_copper_slab.png new file mode 100644 index 00000000..f2775208 Binary files /dev/null and b/public/textures/minecraft/exposed_cut_copper_slab.png differ diff --git a/public/textures/minecraft/exposed_cut_copper_stairs.png b/public/textures/minecraft/exposed_cut_copper_stairs.png new file mode 100644 index 00000000..d93e123f Binary files /dev/null and b/public/textures/minecraft/exposed_cut_copper_stairs.png differ diff --git a/public/textures/minecraft/eye_armor_trim_smithing_template.png b/public/textures/minecraft/eye_armor_trim_smithing_template.png new file mode 100644 index 00000000..c45b623a Binary files /dev/null and b/public/textures/minecraft/eye_armor_trim_smithing_template.png differ diff --git a/public/textures/minecraft/farmland.png b/public/textures/minecraft/farmland.png new file mode 100644 index 00000000..4f635785 Binary files /dev/null and b/public/textures/minecraft/farmland.png differ diff --git a/public/textures/minecraft/feather.png b/public/textures/minecraft/feather.png new file mode 100644 index 00000000..b2d10383 Binary files /dev/null and b/public/textures/minecraft/feather.png differ diff --git a/public/textures/minecraft/fermented_spider_eye.png b/public/textures/minecraft/fermented_spider_eye.png new file mode 100644 index 00000000..c1fffd87 Binary files /dev/null and b/public/textures/minecraft/fermented_spider_eye.png differ diff --git a/public/textures/minecraft/fern.png b/public/textures/minecraft/fern.png new file mode 100644 index 00000000..a7cd5171 Binary files /dev/null and b/public/textures/minecraft/fern.png differ diff --git a/public/textures/minecraft/fire_charge.png b/public/textures/minecraft/fire_charge.png new file mode 100644 index 00000000..1938fdee Binary files /dev/null and b/public/textures/minecraft/fire_charge.png differ diff --git a/public/textures/minecraft/fire_coral.png b/public/textures/minecraft/fire_coral.png new file mode 100644 index 00000000..3f08ce69 Binary files /dev/null and b/public/textures/minecraft/fire_coral.png differ diff --git a/public/textures/minecraft/fire_coral_block.png b/public/textures/minecraft/fire_coral_block.png new file mode 100644 index 00000000..c70abdb2 Binary files /dev/null and b/public/textures/minecraft/fire_coral_block.png differ diff --git a/public/textures/minecraft/fire_coral_fan.png b/public/textures/minecraft/fire_coral_fan.png new file mode 100644 index 00000000..883838d2 Binary files /dev/null and b/public/textures/minecraft/fire_coral_fan.png differ diff --git a/public/textures/minecraft/firework_rocket.png b/public/textures/minecraft/firework_rocket.png new file mode 100644 index 00000000..fda2a6e5 Binary files /dev/null and b/public/textures/minecraft/firework_rocket.png differ diff --git a/public/textures/minecraft/firework_rocket__{'minecraft__fireworks'__{flight_duration__2b}}.png b/public/textures/minecraft/firework_rocket__{'minecraft__fireworks'__{flight_duration__2b}}.png new file mode 100644 index 00000000..fda2a6e5 Binary files /dev/null and b/public/textures/minecraft/firework_rocket__{'minecraft__fireworks'__{flight_duration__2b}}.png differ diff --git a/public/textures/minecraft/firework_rocket__{'minecraft__fireworks'__{flight_duration__3b}}.png b/public/textures/minecraft/firework_rocket__{'minecraft__fireworks'__{flight_duration__3b}}.png new file mode 100644 index 00000000..fda2a6e5 Binary files /dev/null and b/public/textures/minecraft/firework_rocket__{'minecraft__fireworks'__{flight_duration__3b}}.png differ diff --git a/public/textures/minecraft/firework_star.png b/public/textures/minecraft/firework_star.png new file mode 100644 index 00000000..c23be06f Binary files /dev/null and b/public/textures/minecraft/firework_star.png differ diff --git a/public/textures/minecraft/fishing_rod.png b/public/textures/minecraft/fishing_rod.png new file mode 100644 index 00000000..445db188 Binary files /dev/null and b/public/textures/minecraft/fishing_rod.png differ diff --git a/public/textures/minecraft/fletching_table.png b/public/textures/minecraft/fletching_table.png new file mode 100644 index 00000000..d25252b5 Binary files /dev/null and b/public/textures/minecraft/fletching_table.png differ diff --git a/public/textures/minecraft/flint.png b/public/textures/minecraft/flint.png new file mode 100644 index 00000000..81fe9a25 Binary files /dev/null and b/public/textures/minecraft/flint.png differ diff --git a/public/textures/minecraft/flint_and_steel.png b/public/textures/minecraft/flint_and_steel.png new file mode 100644 index 00000000..36b5f56a Binary files /dev/null and b/public/textures/minecraft/flint_and_steel.png differ diff --git a/public/textures/minecraft/flow_armor_trim_smithing_template.png b/public/textures/minecraft/flow_armor_trim_smithing_template.png new file mode 100644 index 00000000..dfccdf0a Binary files /dev/null and b/public/textures/minecraft/flow_armor_trim_smithing_template.png differ diff --git a/public/textures/minecraft/flow_banner_pattern.png b/public/textures/minecraft/flow_banner_pattern.png new file mode 100644 index 00000000..43fad4e1 Binary files /dev/null and b/public/textures/minecraft/flow_banner_pattern.png differ diff --git a/public/textures/minecraft/flow_pottery_sherd.png b/public/textures/minecraft/flow_pottery_sherd.png new file mode 100644 index 00000000..eeb49be8 Binary files /dev/null and b/public/textures/minecraft/flow_pottery_sherd.png differ diff --git a/public/textures/minecraft/flower_banner_pattern.png b/public/textures/minecraft/flower_banner_pattern.png new file mode 100644 index 00000000..43fad4e1 Binary files /dev/null and b/public/textures/minecraft/flower_banner_pattern.png differ diff --git a/public/textures/minecraft/flower_pot.png b/public/textures/minecraft/flower_pot.png new file mode 100644 index 00000000..1a382e8d Binary files /dev/null and b/public/textures/minecraft/flower_pot.png differ diff --git a/public/textures/minecraft/flowering_azalea.png b/public/textures/minecraft/flowering_azalea.png new file mode 100644 index 00000000..a4f60c0c Binary files /dev/null and b/public/textures/minecraft/flowering_azalea.png differ diff --git a/public/textures/minecraft/flowering_azalea_leaves.png b/public/textures/minecraft/flowering_azalea_leaves.png new file mode 100644 index 00000000..b6d487b7 Binary files /dev/null and b/public/textures/minecraft/flowering_azalea_leaves.png differ diff --git a/public/textures/minecraft/fox_spawn_egg.png b/public/textures/minecraft/fox_spawn_egg.png new file mode 100644 index 00000000..3a8dcd9b Binary files /dev/null and b/public/textures/minecraft/fox_spawn_egg.png differ diff --git a/public/textures/minecraft/friend_pottery_sherd.png b/public/textures/minecraft/friend_pottery_sherd.png new file mode 100644 index 00000000..9bf47726 Binary files /dev/null and b/public/textures/minecraft/friend_pottery_sherd.png differ diff --git a/public/textures/minecraft/frog_spawn_egg.png b/public/textures/minecraft/frog_spawn_egg.png new file mode 100644 index 00000000..e0ee851e Binary files /dev/null and b/public/textures/minecraft/frog_spawn_egg.png differ diff --git a/public/textures/minecraft/frogspawn.png b/public/textures/minecraft/frogspawn.png new file mode 100644 index 00000000..17bacb70 Binary files /dev/null and b/public/textures/minecraft/frogspawn.png differ diff --git a/public/textures/minecraft/furnace.png b/public/textures/minecraft/furnace.png new file mode 100644 index 00000000..b394269f Binary files /dev/null and b/public/textures/minecraft/furnace.png differ diff --git a/public/textures/minecraft/furnace_minecart.png b/public/textures/minecraft/furnace_minecart.png new file mode 100644 index 00000000..29509c22 Binary files /dev/null and b/public/textures/minecraft/furnace_minecart.png differ diff --git a/public/textures/minecraft/ghast_spawn_egg.png b/public/textures/minecraft/ghast_spawn_egg.png new file mode 100644 index 00000000..f8f64d84 Binary files /dev/null and b/public/textures/minecraft/ghast_spawn_egg.png differ diff --git a/public/textures/minecraft/ghast_tear.png b/public/textures/minecraft/ghast_tear.png new file mode 100644 index 00000000..63c08d08 Binary files /dev/null and b/public/textures/minecraft/ghast_tear.png differ diff --git a/public/textures/minecraft/gilded_blackstone.png b/public/textures/minecraft/gilded_blackstone.png new file mode 100644 index 00000000..7b5aec8f Binary files /dev/null and b/public/textures/minecraft/gilded_blackstone.png differ diff --git a/public/textures/minecraft/glass.png b/public/textures/minecraft/glass.png new file mode 100644 index 00000000..17772e65 Binary files /dev/null and b/public/textures/minecraft/glass.png differ diff --git a/public/textures/minecraft/glass_bottle.png b/public/textures/minecraft/glass_bottle.png new file mode 100644 index 00000000..367e3b70 Binary files /dev/null and b/public/textures/minecraft/glass_bottle.png differ diff --git a/public/textures/minecraft/glass_pane.png b/public/textures/minecraft/glass_pane.png new file mode 100644 index 00000000..c191de2c Binary files /dev/null and b/public/textures/minecraft/glass_pane.png differ diff --git a/public/textures/minecraft/glistering_melon_slice.png b/public/textures/minecraft/glistering_melon_slice.png new file mode 100644 index 00000000..c1937672 Binary files /dev/null and b/public/textures/minecraft/glistering_melon_slice.png differ diff --git a/public/textures/minecraft/globe_banner_pattern.png b/public/textures/minecraft/globe_banner_pattern.png new file mode 100644 index 00000000..43fad4e1 Binary files /dev/null and b/public/textures/minecraft/globe_banner_pattern.png differ diff --git a/public/textures/minecraft/glow_berries.png b/public/textures/minecraft/glow_berries.png new file mode 100644 index 00000000..8db6436b Binary files /dev/null and b/public/textures/minecraft/glow_berries.png differ diff --git a/public/textures/minecraft/glow_ink_sac.png b/public/textures/minecraft/glow_ink_sac.png new file mode 100644 index 00000000..d5ca89b4 Binary files /dev/null and b/public/textures/minecraft/glow_ink_sac.png differ diff --git a/public/textures/minecraft/glow_item_frame.png b/public/textures/minecraft/glow_item_frame.png new file mode 100644 index 00000000..d1bb7233 Binary files /dev/null and b/public/textures/minecraft/glow_item_frame.png differ diff --git a/public/textures/minecraft/glow_lichen.png b/public/textures/minecraft/glow_lichen.png new file mode 100644 index 00000000..220e3476 Binary files /dev/null and b/public/textures/minecraft/glow_lichen.png differ diff --git a/public/textures/minecraft/glow_squid_spawn_egg.png b/public/textures/minecraft/glow_squid_spawn_egg.png new file mode 100644 index 00000000..d523eace Binary files /dev/null and b/public/textures/minecraft/glow_squid_spawn_egg.png differ diff --git a/public/textures/minecraft/glowstone.png b/public/textures/minecraft/glowstone.png new file mode 100644 index 00000000..618d918a Binary files /dev/null and b/public/textures/minecraft/glowstone.png differ diff --git a/public/textures/minecraft/glowstone_dust.png b/public/textures/minecraft/glowstone_dust.png new file mode 100644 index 00000000..7164d81a Binary files /dev/null and b/public/textures/minecraft/glowstone_dust.png differ diff --git a/public/textures/minecraft/goat_horn.png b/public/textures/minecraft/goat_horn.png new file mode 100644 index 00000000..ae9f76e4 Binary files /dev/null and b/public/textures/minecraft/goat_horn.png differ diff --git a/public/textures/minecraft/goat_spawn_egg.png b/public/textures/minecraft/goat_spawn_egg.png new file mode 100644 index 00000000..a9b58f93 Binary files /dev/null and b/public/textures/minecraft/goat_spawn_egg.png differ diff --git a/public/textures/minecraft/gold_block.png b/public/textures/minecraft/gold_block.png new file mode 100644 index 00000000..136cc266 Binary files /dev/null and b/public/textures/minecraft/gold_block.png differ diff --git a/public/textures/minecraft/gold_ingot.png b/public/textures/minecraft/gold_ingot.png new file mode 100644 index 00000000..07f64c8a Binary files /dev/null and b/public/textures/minecraft/gold_ingot.png differ diff --git a/public/textures/minecraft/gold_nugget.png b/public/textures/minecraft/gold_nugget.png new file mode 100644 index 00000000..2811dc13 Binary files /dev/null and b/public/textures/minecraft/gold_nugget.png differ diff --git a/public/textures/minecraft/gold_ore.png b/public/textures/minecraft/gold_ore.png new file mode 100644 index 00000000..687c527b Binary files /dev/null and b/public/textures/minecraft/gold_ore.png differ diff --git a/public/textures/minecraft/golden_apple.png b/public/textures/minecraft/golden_apple.png new file mode 100644 index 00000000..805b38b5 Binary files /dev/null and b/public/textures/minecraft/golden_apple.png differ diff --git a/public/textures/minecraft/golden_axe.png b/public/textures/minecraft/golden_axe.png new file mode 100644 index 00000000..2e263e47 Binary files /dev/null and b/public/textures/minecraft/golden_axe.png differ diff --git a/public/textures/minecraft/golden_boots.png b/public/textures/minecraft/golden_boots.png new file mode 100644 index 00000000..8fd17590 Binary files /dev/null and b/public/textures/minecraft/golden_boots.png differ diff --git a/public/textures/minecraft/golden_carrot.png b/public/textures/minecraft/golden_carrot.png new file mode 100644 index 00000000..e5676292 Binary files /dev/null and b/public/textures/minecraft/golden_carrot.png differ diff --git a/public/textures/minecraft/golden_chestplate.png b/public/textures/minecraft/golden_chestplate.png new file mode 100644 index 00000000..6e043747 Binary files /dev/null and b/public/textures/minecraft/golden_chestplate.png differ diff --git a/public/textures/minecraft/golden_helmet.png b/public/textures/minecraft/golden_helmet.png new file mode 100644 index 00000000..17ee032e Binary files /dev/null and b/public/textures/minecraft/golden_helmet.png differ diff --git a/public/textures/minecraft/golden_hoe.png b/public/textures/minecraft/golden_hoe.png new file mode 100644 index 00000000..b917713d Binary files /dev/null and b/public/textures/minecraft/golden_hoe.png differ diff --git a/public/textures/minecraft/golden_horse_armor.png b/public/textures/minecraft/golden_horse_armor.png new file mode 100644 index 00000000..24e8a7db Binary files /dev/null and b/public/textures/minecraft/golden_horse_armor.png differ diff --git a/public/textures/minecraft/golden_leggings.png b/public/textures/minecraft/golden_leggings.png new file mode 100644 index 00000000..2d3cb421 Binary files /dev/null and b/public/textures/minecraft/golden_leggings.png differ diff --git a/public/textures/minecraft/golden_pickaxe.png b/public/textures/minecraft/golden_pickaxe.png new file mode 100644 index 00000000..d50da508 Binary files /dev/null and b/public/textures/minecraft/golden_pickaxe.png differ diff --git a/public/textures/minecraft/golden_shovel.png b/public/textures/minecraft/golden_shovel.png new file mode 100644 index 00000000..fe370a98 Binary files /dev/null and b/public/textures/minecraft/golden_shovel.png differ diff --git a/public/textures/minecraft/golden_sword.png b/public/textures/minecraft/golden_sword.png new file mode 100644 index 00000000..6ab819c8 Binary files /dev/null and b/public/textures/minecraft/golden_sword.png differ diff --git a/public/textures/minecraft/granite.png b/public/textures/minecraft/granite.png new file mode 100644 index 00000000..6fd8f666 Binary files /dev/null and b/public/textures/minecraft/granite.png differ diff --git a/public/textures/minecraft/granite_slab.png b/public/textures/minecraft/granite_slab.png new file mode 100644 index 00000000..82d9300c Binary files /dev/null and b/public/textures/minecraft/granite_slab.png differ diff --git a/public/textures/minecraft/granite_stairs.png b/public/textures/minecraft/granite_stairs.png new file mode 100644 index 00000000..e6c85b52 Binary files /dev/null and b/public/textures/minecraft/granite_stairs.png differ diff --git a/public/textures/minecraft/granite_wall.png b/public/textures/minecraft/granite_wall.png new file mode 100644 index 00000000..92ff922b Binary files /dev/null and b/public/textures/minecraft/granite_wall.png differ diff --git a/public/textures/minecraft/grass_block.png b/public/textures/minecraft/grass_block.png new file mode 100644 index 00000000..683686a1 Binary files /dev/null and b/public/textures/minecraft/grass_block.png differ diff --git a/public/textures/minecraft/gravel.png b/public/textures/minecraft/gravel.png new file mode 100644 index 00000000..cfa3e796 Binary files /dev/null and b/public/textures/minecraft/gravel.png differ diff --git a/public/textures/minecraft/gray_banner.png b/public/textures/minecraft/gray_banner.png new file mode 100644 index 00000000..421bb8d4 Binary files /dev/null and b/public/textures/minecraft/gray_banner.png differ diff --git a/public/textures/minecraft/gray_bed.png b/public/textures/minecraft/gray_bed.png new file mode 100644 index 00000000..9f3c6368 Binary files /dev/null and b/public/textures/minecraft/gray_bed.png differ diff --git a/public/textures/minecraft/gray_candle.png b/public/textures/minecraft/gray_candle.png new file mode 100644 index 00000000..9f86fc31 Binary files /dev/null and b/public/textures/minecraft/gray_candle.png differ diff --git a/public/textures/minecraft/gray_carpet.png b/public/textures/minecraft/gray_carpet.png new file mode 100644 index 00000000..e2b9c64f Binary files /dev/null and b/public/textures/minecraft/gray_carpet.png differ diff --git a/public/textures/minecraft/gray_concrete.png b/public/textures/minecraft/gray_concrete.png new file mode 100644 index 00000000..d26ba860 Binary files /dev/null and b/public/textures/minecraft/gray_concrete.png differ diff --git a/public/textures/minecraft/gray_concrete_powder.png b/public/textures/minecraft/gray_concrete_powder.png new file mode 100644 index 00000000..3f94f811 Binary files /dev/null and b/public/textures/minecraft/gray_concrete_powder.png differ diff --git a/public/textures/minecraft/gray_dye.png b/public/textures/minecraft/gray_dye.png new file mode 100644 index 00000000..0b64eebd Binary files /dev/null and b/public/textures/minecraft/gray_dye.png differ diff --git a/public/textures/minecraft/gray_glazed_terracotta.png b/public/textures/minecraft/gray_glazed_terracotta.png new file mode 100644 index 00000000..32b1f267 Binary files /dev/null and b/public/textures/minecraft/gray_glazed_terracotta.png differ diff --git a/public/textures/minecraft/gray_shulker_box.png b/public/textures/minecraft/gray_shulker_box.png new file mode 100644 index 00000000..3142d585 Binary files /dev/null and b/public/textures/minecraft/gray_shulker_box.png differ diff --git a/public/textures/minecraft/gray_stained_glass.png b/public/textures/minecraft/gray_stained_glass.png new file mode 100644 index 00000000..7fa8fd33 Binary files /dev/null and b/public/textures/minecraft/gray_stained_glass.png differ diff --git a/public/textures/minecraft/gray_stained_glass_pane.png b/public/textures/minecraft/gray_stained_glass_pane.png new file mode 100644 index 00000000..1b5c5011 Binary files /dev/null and b/public/textures/minecraft/gray_stained_glass_pane.png differ diff --git a/public/textures/minecraft/gray_terracotta.png b/public/textures/minecraft/gray_terracotta.png new file mode 100644 index 00000000..a437336c Binary files /dev/null and b/public/textures/minecraft/gray_terracotta.png differ diff --git a/public/textures/minecraft/gray_wool.png b/public/textures/minecraft/gray_wool.png new file mode 100644 index 00000000..f0458f1b Binary files /dev/null and b/public/textures/minecraft/gray_wool.png differ diff --git a/public/textures/minecraft/green_banner.png b/public/textures/minecraft/green_banner.png new file mode 100644 index 00000000..f5d8ad91 Binary files /dev/null and b/public/textures/minecraft/green_banner.png differ diff --git a/public/textures/minecraft/green_bed.png b/public/textures/minecraft/green_bed.png new file mode 100644 index 00000000..6c470f7b Binary files /dev/null and b/public/textures/minecraft/green_bed.png differ diff --git a/public/textures/minecraft/green_candle.png b/public/textures/minecraft/green_candle.png new file mode 100644 index 00000000..319b52a7 Binary files /dev/null and b/public/textures/minecraft/green_candle.png differ diff --git a/public/textures/minecraft/green_carpet.png b/public/textures/minecraft/green_carpet.png new file mode 100644 index 00000000..6eac11a6 Binary files /dev/null and b/public/textures/minecraft/green_carpet.png differ diff --git a/public/textures/minecraft/green_concrete.png b/public/textures/minecraft/green_concrete.png new file mode 100644 index 00000000..9dec9cf2 Binary files /dev/null and b/public/textures/minecraft/green_concrete.png differ diff --git a/public/textures/minecraft/green_concrete_powder.png b/public/textures/minecraft/green_concrete_powder.png new file mode 100644 index 00000000..5f1945bc Binary files /dev/null and b/public/textures/minecraft/green_concrete_powder.png differ diff --git a/public/textures/minecraft/green_dye.png b/public/textures/minecraft/green_dye.png new file mode 100644 index 00000000..cc573ce6 Binary files /dev/null and b/public/textures/minecraft/green_dye.png differ diff --git a/public/textures/minecraft/green_glazed_terracotta.png b/public/textures/minecraft/green_glazed_terracotta.png new file mode 100644 index 00000000..60a024bd Binary files /dev/null and b/public/textures/minecraft/green_glazed_terracotta.png differ diff --git a/public/textures/minecraft/green_shulker_box.png b/public/textures/minecraft/green_shulker_box.png new file mode 100644 index 00000000..71483264 Binary files /dev/null and b/public/textures/minecraft/green_shulker_box.png differ diff --git a/public/textures/minecraft/green_stained_glass.png b/public/textures/minecraft/green_stained_glass.png new file mode 100644 index 00000000..c3360788 Binary files /dev/null and b/public/textures/minecraft/green_stained_glass.png differ diff --git a/public/textures/minecraft/green_stained_glass_pane.png b/public/textures/minecraft/green_stained_glass_pane.png new file mode 100644 index 00000000..e5322e49 Binary files /dev/null and b/public/textures/minecraft/green_stained_glass_pane.png differ diff --git a/public/textures/minecraft/green_terracotta.png b/public/textures/minecraft/green_terracotta.png new file mode 100644 index 00000000..a937035d Binary files /dev/null and b/public/textures/minecraft/green_terracotta.png differ diff --git a/public/textures/minecraft/green_wool.png b/public/textures/minecraft/green_wool.png new file mode 100644 index 00000000..a3f99962 Binary files /dev/null and b/public/textures/minecraft/green_wool.png differ diff --git a/public/textures/minecraft/grindstone.png b/public/textures/minecraft/grindstone.png new file mode 100644 index 00000000..e14de134 Binary files /dev/null and b/public/textures/minecraft/grindstone.png differ diff --git a/public/textures/minecraft/guardian_spawn_egg.png b/public/textures/minecraft/guardian_spawn_egg.png new file mode 100644 index 00000000..b2020a57 Binary files /dev/null and b/public/textures/minecraft/guardian_spawn_egg.png differ diff --git a/public/textures/minecraft/gunpowder.png b/public/textures/minecraft/gunpowder.png new file mode 100644 index 00000000..516d5d20 Binary files /dev/null and b/public/textures/minecraft/gunpowder.png differ diff --git a/public/textures/minecraft/guster_banner_pattern.png b/public/textures/minecraft/guster_banner_pattern.png new file mode 100644 index 00000000..43fad4e1 Binary files /dev/null and b/public/textures/minecraft/guster_banner_pattern.png differ diff --git a/public/textures/minecraft/guster_pottery_sherd.png b/public/textures/minecraft/guster_pottery_sherd.png new file mode 100644 index 00000000..6ae1b6be Binary files /dev/null and b/public/textures/minecraft/guster_pottery_sherd.png differ diff --git a/public/textures/minecraft/hanging_roots.png b/public/textures/minecraft/hanging_roots.png new file mode 100644 index 00000000..6430124a Binary files /dev/null and b/public/textures/minecraft/hanging_roots.png differ diff --git a/public/textures/minecraft/hay_block.png b/public/textures/minecraft/hay_block.png new file mode 100644 index 00000000..7040b988 Binary files /dev/null and b/public/textures/minecraft/hay_block.png differ diff --git a/public/textures/minecraft/heart_of_the_sea.png b/public/textures/minecraft/heart_of_the_sea.png new file mode 100644 index 00000000..7ac01b7f Binary files /dev/null and b/public/textures/minecraft/heart_of_the_sea.png differ diff --git a/public/textures/minecraft/heart_pottery_sherd.png b/public/textures/minecraft/heart_pottery_sherd.png new file mode 100644 index 00000000..1eef19cc Binary files /dev/null and b/public/textures/minecraft/heart_pottery_sherd.png differ diff --git a/public/textures/minecraft/heartbreak_pottery_sherd.png b/public/textures/minecraft/heartbreak_pottery_sherd.png new file mode 100644 index 00000000..130a5dd6 Binary files /dev/null and b/public/textures/minecraft/heartbreak_pottery_sherd.png differ diff --git a/public/textures/minecraft/heavy_core.png b/public/textures/minecraft/heavy_core.png new file mode 100644 index 00000000..14ff48be Binary files /dev/null and b/public/textures/minecraft/heavy_core.png differ diff --git a/public/textures/minecraft/heavy_weighted_pressure_plate.png b/public/textures/minecraft/heavy_weighted_pressure_plate.png new file mode 100644 index 00000000..68052cfc Binary files /dev/null and b/public/textures/minecraft/heavy_weighted_pressure_plate.png differ diff --git a/public/textures/minecraft/hoglin_spawn_egg.png b/public/textures/minecraft/hoglin_spawn_egg.png new file mode 100644 index 00000000..55306440 Binary files /dev/null and b/public/textures/minecraft/hoglin_spawn_egg.png differ diff --git a/public/textures/minecraft/honey_block.png b/public/textures/minecraft/honey_block.png new file mode 100644 index 00000000..d7c682b9 Binary files /dev/null and b/public/textures/minecraft/honey_block.png differ diff --git a/public/textures/minecraft/honey_bottle.png b/public/textures/minecraft/honey_bottle.png new file mode 100644 index 00000000..85b289f7 Binary files /dev/null and b/public/textures/minecraft/honey_bottle.png differ diff --git a/public/textures/minecraft/honeycomb.png b/public/textures/minecraft/honeycomb.png new file mode 100644 index 00000000..2567fc2c Binary files /dev/null and b/public/textures/minecraft/honeycomb.png differ diff --git a/public/textures/minecraft/honeycomb_block.png b/public/textures/minecraft/honeycomb_block.png new file mode 100644 index 00000000..9bcf345b Binary files /dev/null and b/public/textures/minecraft/honeycomb_block.png differ diff --git a/public/textures/minecraft/hopper.png b/public/textures/minecraft/hopper.png new file mode 100644 index 00000000..1d0777ae Binary files /dev/null and b/public/textures/minecraft/hopper.png differ diff --git a/public/textures/minecraft/hopper_minecart.png b/public/textures/minecraft/hopper_minecart.png new file mode 100644 index 00000000..b4b530ad Binary files /dev/null and b/public/textures/minecraft/hopper_minecart.png differ diff --git a/public/textures/minecraft/horn_coral.png b/public/textures/minecraft/horn_coral.png new file mode 100644 index 00000000..6fc9fa9a Binary files /dev/null and b/public/textures/minecraft/horn_coral.png differ diff --git a/public/textures/minecraft/horn_coral_block.png b/public/textures/minecraft/horn_coral_block.png new file mode 100644 index 00000000..e91b756f Binary files /dev/null and b/public/textures/minecraft/horn_coral_block.png differ diff --git a/public/textures/minecraft/horn_coral_fan.png b/public/textures/minecraft/horn_coral_fan.png new file mode 100644 index 00000000..130a5e16 Binary files /dev/null and b/public/textures/minecraft/horn_coral_fan.png differ diff --git a/public/textures/minecraft/horse_spawn_egg.png b/public/textures/minecraft/horse_spawn_egg.png new file mode 100644 index 00000000..ad915838 Binary files /dev/null and b/public/textures/minecraft/horse_spawn_egg.png differ diff --git a/public/textures/minecraft/host_armor_trim_smithing_template.png b/public/textures/minecraft/host_armor_trim_smithing_template.png new file mode 100644 index 00000000..fa2a3a5e Binary files /dev/null and b/public/textures/minecraft/host_armor_trim_smithing_template.png differ diff --git a/public/textures/minecraft/howl_pottery_sherd.png b/public/textures/minecraft/howl_pottery_sherd.png new file mode 100644 index 00000000..cb30a62d Binary files /dev/null and b/public/textures/minecraft/howl_pottery_sherd.png differ diff --git a/public/textures/minecraft/husk_spawn_egg.png b/public/textures/minecraft/husk_spawn_egg.png new file mode 100644 index 00000000..33a8b038 Binary files /dev/null and b/public/textures/minecraft/husk_spawn_egg.png differ diff --git a/public/textures/minecraft/ice.png b/public/textures/minecraft/ice.png new file mode 100644 index 00000000..07832062 Binary files /dev/null and b/public/textures/minecraft/ice.png differ diff --git a/public/textures/minecraft/infested_chiseled_stone_bricks.png b/public/textures/minecraft/infested_chiseled_stone_bricks.png new file mode 100644 index 00000000..508c668f Binary files /dev/null and b/public/textures/minecraft/infested_chiseled_stone_bricks.png differ diff --git a/public/textures/minecraft/infested_cobblestone.png b/public/textures/minecraft/infested_cobblestone.png new file mode 100644 index 00000000..876e6448 Binary files /dev/null and b/public/textures/minecraft/infested_cobblestone.png differ diff --git a/public/textures/minecraft/infested_cracked_stone_bricks.png b/public/textures/minecraft/infested_cracked_stone_bricks.png new file mode 100644 index 00000000..7c065021 Binary files /dev/null and b/public/textures/minecraft/infested_cracked_stone_bricks.png differ diff --git a/public/textures/minecraft/infested_deepslate.png b/public/textures/minecraft/infested_deepslate.png new file mode 100644 index 00000000..4f97967b Binary files /dev/null and b/public/textures/minecraft/infested_deepslate.png differ diff --git a/public/textures/minecraft/infested_mossy_stone_bricks.png b/public/textures/minecraft/infested_mossy_stone_bricks.png new file mode 100644 index 00000000..3ef55245 Binary files /dev/null and b/public/textures/minecraft/infested_mossy_stone_bricks.png differ diff --git a/public/textures/minecraft/infested_stone.png b/public/textures/minecraft/infested_stone.png new file mode 100644 index 00000000..f2d5f8c3 Binary files /dev/null and b/public/textures/minecraft/infested_stone.png differ diff --git a/public/textures/minecraft/infested_stone_bricks.png b/public/textures/minecraft/infested_stone_bricks.png new file mode 100644 index 00000000..46001e2b Binary files /dev/null and b/public/textures/minecraft/infested_stone_bricks.png differ diff --git a/public/textures/minecraft/ink_sac.png b/public/textures/minecraft/ink_sac.png new file mode 100644 index 00000000..f5ef3eb3 Binary files /dev/null and b/public/textures/minecraft/ink_sac.png differ diff --git a/public/textures/minecraft/iron_axe.png b/public/textures/minecraft/iron_axe.png new file mode 100644 index 00000000..73560e19 Binary files /dev/null and b/public/textures/minecraft/iron_axe.png differ diff --git a/public/textures/minecraft/iron_bars.png b/public/textures/minecraft/iron_bars.png new file mode 100644 index 00000000..12a5c8b1 Binary files /dev/null and b/public/textures/minecraft/iron_bars.png differ diff --git a/public/textures/minecraft/iron_block.png b/public/textures/minecraft/iron_block.png new file mode 100644 index 00000000..261fce56 Binary files /dev/null and b/public/textures/minecraft/iron_block.png differ diff --git a/public/textures/minecraft/iron_boots.png b/public/textures/minecraft/iron_boots.png new file mode 100644 index 00000000..2806e995 Binary files /dev/null and b/public/textures/minecraft/iron_boots.png differ diff --git a/public/textures/minecraft/iron_chestplate.png b/public/textures/minecraft/iron_chestplate.png new file mode 100644 index 00000000..840cf3e6 Binary files /dev/null and b/public/textures/minecraft/iron_chestplate.png differ diff --git a/public/textures/minecraft/iron_door.png b/public/textures/minecraft/iron_door.png new file mode 100644 index 00000000..6e793467 Binary files /dev/null and b/public/textures/minecraft/iron_door.png differ diff --git a/public/textures/minecraft/iron_golem_spawn_egg.png b/public/textures/minecraft/iron_golem_spawn_egg.png new file mode 100644 index 00000000..231009d2 Binary files /dev/null and b/public/textures/minecraft/iron_golem_spawn_egg.png differ diff --git a/public/textures/minecraft/iron_helmet.png b/public/textures/minecraft/iron_helmet.png new file mode 100644 index 00000000..53e6563f Binary files /dev/null and b/public/textures/minecraft/iron_helmet.png differ diff --git a/public/textures/minecraft/iron_hoe.png b/public/textures/minecraft/iron_hoe.png new file mode 100644 index 00000000..d1f8254f Binary files /dev/null and b/public/textures/minecraft/iron_hoe.png differ diff --git a/public/textures/minecraft/iron_horse_armor.png b/public/textures/minecraft/iron_horse_armor.png new file mode 100644 index 00000000..d983387e Binary files /dev/null and b/public/textures/minecraft/iron_horse_armor.png differ diff --git a/public/textures/minecraft/iron_ingot.png b/public/textures/minecraft/iron_ingot.png new file mode 100644 index 00000000..5411d546 Binary files /dev/null and b/public/textures/minecraft/iron_ingot.png differ diff --git a/public/textures/minecraft/iron_leggings.png b/public/textures/minecraft/iron_leggings.png new file mode 100644 index 00000000..1a016737 Binary files /dev/null and b/public/textures/minecraft/iron_leggings.png differ diff --git a/public/textures/minecraft/iron_nugget.png b/public/textures/minecraft/iron_nugget.png new file mode 100644 index 00000000..3ba90fcd Binary files /dev/null and b/public/textures/minecraft/iron_nugget.png differ diff --git a/public/textures/minecraft/iron_ore.png b/public/textures/minecraft/iron_ore.png new file mode 100644 index 00000000..d7bf83b8 Binary files /dev/null and b/public/textures/minecraft/iron_ore.png differ diff --git a/public/textures/minecraft/iron_pickaxe.png b/public/textures/minecraft/iron_pickaxe.png new file mode 100644 index 00000000..0eebc2fc Binary files /dev/null and b/public/textures/minecraft/iron_pickaxe.png differ diff --git a/public/textures/minecraft/iron_shovel.png b/public/textures/minecraft/iron_shovel.png new file mode 100644 index 00000000..604441d1 Binary files /dev/null and b/public/textures/minecraft/iron_shovel.png differ diff --git a/public/textures/minecraft/iron_sword.png b/public/textures/minecraft/iron_sword.png new file mode 100644 index 00000000..c01b8150 Binary files /dev/null and b/public/textures/minecraft/iron_sword.png differ diff --git a/public/textures/minecraft/iron_trapdoor.png b/public/textures/minecraft/iron_trapdoor.png new file mode 100644 index 00000000..f056387f Binary files /dev/null and b/public/textures/minecraft/iron_trapdoor.png differ diff --git a/public/textures/minecraft/item_frame.png b/public/textures/minecraft/item_frame.png new file mode 100644 index 00000000..4d15ab41 Binary files /dev/null and b/public/textures/minecraft/item_frame.png differ diff --git a/public/textures/minecraft/jack_o_lantern.png b/public/textures/minecraft/jack_o_lantern.png new file mode 100644 index 00000000..d9b70ed7 Binary files /dev/null and b/public/textures/minecraft/jack_o_lantern.png differ diff --git a/public/textures/minecraft/jukebox.png b/public/textures/minecraft/jukebox.png new file mode 100644 index 00000000..58b5219f Binary files /dev/null and b/public/textures/minecraft/jukebox.png differ diff --git a/public/textures/minecraft/jungle_boat.png b/public/textures/minecraft/jungle_boat.png new file mode 100644 index 00000000..f9c76dcc Binary files /dev/null and b/public/textures/minecraft/jungle_boat.png differ diff --git a/public/textures/minecraft/jungle_button.png b/public/textures/minecraft/jungle_button.png new file mode 100644 index 00000000..60a4eb75 Binary files /dev/null and b/public/textures/minecraft/jungle_button.png differ diff --git a/public/textures/minecraft/jungle_chest_boat.png b/public/textures/minecraft/jungle_chest_boat.png new file mode 100644 index 00000000..3ac05137 Binary files /dev/null and b/public/textures/minecraft/jungle_chest_boat.png differ diff --git a/public/textures/minecraft/jungle_door.png b/public/textures/minecraft/jungle_door.png new file mode 100644 index 00000000..03c112e8 Binary files /dev/null and b/public/textures/minecraft/jungle_door.png differ diff --git a/public/textures/minecraft/jungle_fence.png b/public/textures/minecraft/jungle_fence.png new file mode 100644 index 00000000..08052da6 Binary files /dev/null and b/public/textures/minecraft/jungle_fence.png differ diff --git a/public/textures/minecraft/jungle_fence_gate.png b/public/textures/minecraft/jungle_fence_gate.png new file mode 100644 index 00000000..5402a15d Binary files /dev/null and b/public/textures/minecraft/jungle_fence_gate.png differ diff --git a/public/textures/minecraft/jungle_hanging_sign.png b/public/textures/minecraft/jungle_hanging_sign.png new file mode 100644 index 00000000..a245c13e Binary files /dev/null and b/public/textures/minecraft/jungle_hanging_sign.png differ diff --git a/public/textures/minecraft/jungle_leaves.png b/public/textures/minecraft/jungle_leaves.png new file mode 100644 index 00000000..1383ae29 Binary files /dev/null and b/public/textures/minecraft/jungle_leaves.png differ diff --git a/public/textures/minecraft/jungle_log.png b/public/textures/minecraft/jungle_log.png new file mode 100644 index 00000000..68a124f1 Binary files /dev/null and b/public/textures/minecraft/jungle_log.png differ diff --git a/public/textures/minecraft/jungle_planks.png b/public/textures/minecraft/jungle_planks.png new file mode 100644 index 00000000..5954a641 Binary files /dev/null and b/public/textures/minecraft/jungle_planks.png differ diff --git a/public/textures/minecraft/jungle_pressure_plate.png b/public/textures/minecraft/jungle_pressure_plate.png new file mode 100644 index 00000000..d9136fbc Binary files /dev/null and b/public/textures/minecraft/jungle_pressure_plate.png differ diff --git a/public/textures/minecraft/jungle_sapling.png b/public/textures/minecraft/jungle_sapling.png new file mode 100644 index 00000000..f4ba767f Binary files /dev/null and b/public/textures/minecraft/jungle_sapling.png differ diff --git a/public/textures/minecraft/jungle_sign.png b/public/textures/minecraft/jungle_sign.png new file mode 100644 index 00000000..14037803 Binary files /dev/null and b/public/textures/minecraft/jungle_sign.png differ diff --git a/public/textures/minecraft/jungle_slab.png b/public/textures/minecraft/jungle_slab.png new file mode 100644 index 00000000..9f69fb79 Binary files /dev/null and b/public/textures/minecraft/jungle_slab.png differ diff --git a/public/textures/minecraft/jungle_stairs.png b/public/textures/minecraft/jungle_stairs.png new file mode 100644 index 00000000..c7ac7bdf Binary files /dev/null and b/public/textures/minecraft/jungle_stairs.png differ diff --git a/public/textures/minecraft/jungle_trapdoor.png b/public/textures/minecraft/jungle_trapdoor.png new file mode 100644 index 00000000..9e5dec44 Binary files /dev/null and b/public/textures/minecraft/jungle_trapdoor.png differ diff --git a/public/textures/minecraft/jungle_wood.png b/public/textures/minecraft/jungle_wood.png new file mode 100644 index 00000000..fe595224 Binary files /dev/null and b/public/textures/minecraft/jungle_wood.png differ diff --git a/public/textures/minecraft/kelp.png b/public/textures/minecraft/kelp.png new file mode 100644 index 00000000..8005222d Binary files /dev/null and b/public/textures/minecraft/kelp.png differ diff --git a/public/textures/minecraft/ladder.png b/public/textures/minecraft/ladder.png new file mode 100644 index 00000000..b740e503 Binary files /dev/null and b/public/textures/minecraft/ladder.png differ diff --git a/public/textures/minecraft/lantern.png b/public/textures/minecraft/lantern.png new file mode 100644 index 00000000..3520fd23 Binary files /dev/null and b/public/textures/minecraft/lantern.png differ diff --git a/public/textures/minecraft/lapis_block.png b/public/textures/minecraft/lapis_block.png new file mode 100644 index 00000000..8ae49fb0 Binary files /dev/null and b/public/textures/minecraft/lapis_block.png differ diff --git a/public/textures/minecraft/lapis_lazuli.png b/public/textures/minecraft/lapis_lazuli.png new file mode 100644 index 00000000..f6b6d155 Binary files /dev/null and b/public/textures/minecraft/lapis_lazuli.png differ diff --git a/public/textures/minecraft/lapis_ore.png b/public/textures/minecraft/lapis_ore.png new file mode 100644 index 00000000..200a5ec9 Binary files /dev/null and b/public/textures/minecraft/lapis_ore.png differ diff --git a/public/textures/minecraft/large_amethyst_bud.png b/public/textures/minecraft/large_amethyst_bud.png new file mode 100644 index 00000000..04f5e501 Binary files /dev/null and b/public/textures/minecraft/large_amethyst_bud.png differ diff --git a/public/textures/minecraft/large_fern.png b/public/textures/minecraft/large_fern.png new file mode 100644 index 00000000..07b05d4b Binary files /dev/null and b/public/textures/minecraft/large_fern.png differ diff --git a/public/textures/minecraft/lava_bucket.png b/public/textures/minecraft/lava_bucket.png new file mode 100644 index 00000000..ede2c7a6 Binary files /dev/null and b/public/textures/minecraft/lava_bucket.png differ diff --git a/public/textures/minecraft/lead.png b/public/textures/minecraft/lead.png new file mode 100644 index 00000000..166f4b7c Binary files /dev/null and b/public/textures/minecraft/lead.png differ diff --git a/public/textures/minecraft/leather.png b/public/textures/minecraft/leather.png new file mode 100644 index 00000000..6cc7f797 Binary files /dev/null and b/public/textures/minecraft/leather.png differ diff --git a/public/textures/minecraft/leather_boots.png b/public/textures/minecraft/leather_boots.png new file mode 100644 index 00000000..396d9861 Binary files /dev/null and b/public/textures/minecraft/leather_boots.png differ diff --git a/public/textures/minecraft/leather_chestplate.png b/public/textures/minecraft/leather_chestplate.png new file mode 100644 index 00000000..ea33fab6 Binary files /dev/null and b/public/textures/minecraft/leather_chestplate.png differ diff --git a/public/textures/minecraft/leather_helmet.png b/public/textures/minecraft/leather_helmet.png new file mode 100644 index 00000000..43976115 Binary files /dev/null and b/public/textures/minecraft/leather_helmet.png differ diff --git a/public/textures/minecraft/leather_horse_armor.png b/public/textures/minecraft/leather_horse_armor.png new file mode 100644 index 00000000..e1397a8e Binary files /dev/null and b/public/textures/minecraft/leather_horse_armor.png differ diff --git a/public/textures/minecraft/leather_leggings.png b/public/textures/minecraft/leather_leggings.png new file mode 100644 index 00000000..f10025dd Binary files /dev/null and b/public/textures/minecraft/leather_leggings.png differ diff --git a/public/textures/minecraft/lectern.png b/public/textures/minecraft/lectern.png new file mode 100644 index 00000000..e07c9ca6 Binary files /dev/null and b/public/textures/minecraft/lectern.png differ diff --git a/public/textures/minecraft/lever.png b/public/textures/minecraft/lever.png new file mode 100644 index 00000000..80868d21 Binary files /dev/null and b/public/textures/minecraft/lever.png differ diff --git a/public/textures/minecraft/light_blue_banner.png b/public/textures/minecraft/light_blue_banner.png new file mode 100644 index 00000000..1c474594 Binary files /dev/null and b/public/textures/minecraft/light_blue_banner.png differ diff --git a/public/textures/minecraft/light_blue_bed.png b/public/textures/minecraft/light_blue_bed.png new file mode 100644 index 00000000..851598d7 Binary files /dev/null and b/public/textures/minecraft/light_blue_bed.png differ diff --git a/public/textures/minecraft/light_blue_candle.png b/public/textures/minecraft/light_blue_candle.png new file mode 100644 index 00000000..9880bb6a Binary files /dev/null and b/public/textures/minecraft/light_blue_candle.png differ diff --git a/public/textures/minecraft/light_blue_carpet.png b/public/textures/minecraft/light_blue_carpet.png new file mode 100644 index 00000000..01b1f5d1 Binary files /dev/null and b/public/textures/minecraft/light_blue_carpet.png differ diff --git a/public/textures/minecraft/light_blue_concrete.png b/public/textures/minecraft/light_blue_concrete.png new file mode 100644 index 00000000..e279a015 Binary files /dev/null and b/public/textures/minecraft/light_blue_concrete.png differ diff --git a/public/textures/minecraft/light_blue_concrete_powder.png b/public/textures/minecraft/light_blue_concrete_powder.png new file mode 100644 index 00000000..f93e7955 Binary files /dev/null and b/public/textures/minecraft/light_blue_concrete_powder.png differ diff --git a/public/textures/minecraft/light_blue_dye.png b/public/textures/minecraft/light_blue_dye.png new file mode 100644 index 00000000..a92ed452 Binary files /dev/null and b/public/textures/minecraft/light_blue_dye.png differ diff --git a/public/textures/minecraft/light_blue_glazed_terracotta.png b/public/textures/minecraft/light_blue_glazed_terracotta.png new file mode 100644 index 00000000..9fcbe982 Binary files /dev/null and b/public/textures/minecraft/light_blue_glazed_terracotta.png differ diff --git a/public/textures/minecraft/light_blue_shulker_box.png b/public/textures/minecraft/light_blue_shulker_box.png new file mode 100644 index 00000000..be1abf52 Binary files /dev/null and b/public/textures/minecraft/light_blue_shulker_box.png differ diff --git a/public/textures/minecraft/light_blue_stained_glass.png b/public/textures/minecraft/light_blue_stained_glass.png new file mode 100644 index 00000000..01df3f6b Binary files /dev/null and b/public/textures/minecraft/light_blue_stained_glass.png differ diff --git a/public/textures/minecraft/light_blue_stained_glass_pane.png b/public/textures/minecraft/light_blue_stained_glass_pane.png new file mode 100644 index 00000000..5f2abfaf Binary files /dev/null and b/public/textures/minecraft/light_blue_stained_glass_pane.png differ diff --git a/public/textures/minecraft/light_blue_terracotta.png b/public/textures/minecraft/light_blue_terracotta.png new file mode 100644 index 00000000..4c061f44 Binary files /dev/null and b/public/textures/minecraft/light_blue_terracotta.png differ diff --git a/public/textures/minecraft/light_blue_wool.png b/public/textures/minecraft/light_blue_wool.png new file mode 100644 index 00000000..2f34fe77 Binary files /dev/null and b/public/textures/minecraft/light_blue_wool.png differ diff --git a/public/textures/minecraft/light_gray_banner.png b/public/textures/minecraft/light_gray_banner.png new file mode 100644 index 00000000..098fb779 Binary files /dev/null and b/public/textures/minecraft/light_gray_banner.png differ diff --git a/public/textures/minecraft/light_gray_bed.png b/public/textures/minecraft/light_gray_bed.png new file mode 100644 index 00000000..fa008e36 Binary files /dev/null and b/public/textures/minecraft/light_gray_bed.png differ diff --git a/public/textures/minecraft/light_gray_candle.png b/public/textures/minecraft/light_gray_candle.png new file mode 100644 index 00000000..47d7e730 Binary files /dev/null and b/public/textures/minecraft/light_gray_candle.png differ diff --git a/public/textures/minecraft/light_gray_carpet.png b/public/textures/minecraft/light_gray_carpet.png new file mode 100644 index 00000000..5f715f0f Binary files /dev/null and b/public/textures/minecraft/light_gray_carpet.png differ diff --git a/public/textures/minecraft/light_gray_concrete.png b/public/textures/minecraft/light_gray_concrete.png new file mode 100644 index 00000000..480410bb Binary files /dev/null and b/public/textures/minecraft/light_gray_concrete.png differ diff --git a/public/textures/minecraft/light_gray_concrete_powder.png b/public/textures/minecraft/light_gray_concrete_powder.png new file mode 100644 index 00000000..ebd1425e Binary files /dev/null and b/public/textures/minecraft/light_gray_concrete_powder.png differ diff --git a/public/textures/minecraft/light_gray_dye.png b/public/textures/minecraft/light_gray_dye.png new file mode 100644 index 00000000..4838d711 Binary files /dev/null and b/public/textures/minecraft/light_gray_dye.png differ diff --git a/public/textures/minecraft/light_gray_glazed_terracotta.png b/public/textures/minecraft/light_gray_glazed_terracotta.png new file mode 100644 index 00000000..642183c3 Binary files /dev/null and b/public/textures/minecraft/light_gray_glazed_terracotta.png differ diff --git a/public/textures/minecraft/light_gray_shulker_box.png b/public/textures/minecraft/light_gray_shulker_box.png new file mode 100644 index 00000000..116b2d1a Binary files /dev/null and b/public/textures/minecraft/light_gray_shulker_box.png differ diff --git a/public/textures/minecraft/light_gray_stained_glass.png b/public/textures/minecraft/light_gray_stained_glass.png new file mode 100644 index 00000000..eab54596 Binary files /dev/null and b/public/textures/minecraft/light_gray_stained_glass.png differ diff --git a/public/textures/minecraft/light_gray_stained_glass_pane.png b/public/textures/minecraft/light_gray_stained_glass_pane.png new file mode 100644 index 00000000..60d209e7 Binary files /dev/null and b/public/textures/minecraft/light_gray_stained_glass_pane.png differ diff --git a/public/textures/minecraft/light_gray_terracotta.png b/public/textures/minecraft/light_gray_terracotta.png new file mode 100644 index 00000000..eb3e748a Binary files /dev/null and b/public/textures/minecraft/light_gray_terracotta.png differ diff --git a/public/textures/minecraft/light_gray_wool.png b/public/textures/minecraft/light_gray_wool.png new file mode 100644 index 00000000..8a381f51 Binary files /dev/null and b/public/textures/minecraft/light_gray_wool.png differ diff --git a/public/textures/minecraft/light_weighted_pressure_plate.png b/public/textures/minecraft/light_weighted_pressure_plate.png new file mode 100644 index 00000000..a6c9907a Binary files /dev/null and b/public/textures/minecraft/light_weighted_pressure_plate.png differ diff --git a/public/textures/minecraft/lightning_rod.png b/public/textures/minecraft/lightning_rod.png new file mode 100644 index 00000000..f3d1dc29 Binary files /dev/null and b/public/textures/minecraft/lightning_rod.png differ diff --git a/public/textures/minecraft/lilac.png b/public/textures/minecraft/lilac.png new file mode 100644 index 00000000..451fa549 Binary files /dev/null and b/public/textures/minecraft/lilac.png differ diff --git a/public/textures/minecraft/lily_of_the_valley.png b/public/textures/minecraft/lily_of_the_valley.png new file mode 100644 index 00000000..fc76e0f5 Binary files /dev/null and b/public/textures/minecraft/lily_of_the_valley.png differ diff --git a/public/textures/minecraft/lily_pad.png b/public/textures/minecraft/lily_pad.png new file mode 100644 index 00000000..246e08f4 Binary files /dev/null and b/public/textures/minecraft/lily_pad.png differ diff --git a/public/textures/minecraft/lime_banner.png b/public/textures/minecraft/lime_banner.png new file mode 100644 index 00000000..b19cfb13 Binary files /dev/null and b/public/textures/minecraft/lime_banner.png differ diff --git a/public/textures/minecraft/lime_bed.png b/public/textures/minecraft/lime_bed.png new file mode 100644 index 00000000..a9d758ed Binary files /dev/null and b/public/textures/minecraft/lime_bed.png differ diff --git a/public/textures/minecraft/lime_candle.png b/public/textures/minecraft/lime_candle.png new file mode 100644 index 00000000..98527462 Binary files /dev/null and b/public/textures/minecraft/lime_candle.png differ diff --git a/public/textures/minecraft/lime_carpet.png b/public/textures/minecraft/lime_carpet.png new file mode 100644 index 00000000..000d46a8 Binary files /dev/null and b/public/textures/minecraft/lime_carpet.png differ diff --git a/public/textures/minecraft/lime_concrete.png b/public/textures/minecraft/lime_concrete.png new file mode 100644 index 00000000..64782183 Binary files /dev/null and b/public/textures/minecraft/lime_concrete.png differ diff --git a/public/textures/minecraft/lime_concrete_powder.png b/public/textures/minecraft/lime_concrete_powder.png new file mode 100644 index 00000000..94cefb74 Binary files /dev/null and b/public/textures/minecraft/lime_concrete_powder.png differ diff --git a/public/textures/minecraft/lime_dye.png b/public/textures/minecraft/lime_dye.png new file mode 100644 index 00000000..3c5221c2 Binary files /dev/null and b/public/textures/minecraft/lime_dye.png differ diff --git a/public/textures/minecraft/lime_glazed_terracotta.png b/public/textures/minecraft/lime_glazed_terracotta.png new file mode 100644 index 00000000..5480576e Binary files /dev/null and b/public/textures/minecraft/lime_glazed_terracotta.png differ diff --git a/public/textures/minecraft/lime_shulker_box.png b/public/textures/minecraft/lime_shulker_box.png new file mode 100644 index 00000000..6bdbdf2b Binary files /dev/null and b/public/textures/minecraft/lime_shulker_box.png differ diff --git a/public/textures/minecraft/lime_stained_glass.png b/public/textures/minecraft/lime_stained_glass.png new file mode 100644 index 00000000..44d60b7a Binary files /dev/null and b/public/textures/minecraft/lime_stained_glass.png differ diff --git a/public/textures/minecraft/lime_stained_glass_pane.png b/public/textures/minecraft/lime_stained_glass_pane.png new file mode 100644 index 00000000..c1eb5eed Binary files /dev/null and b/public/textures/minecraft/lime_stained_glass_pane.png differ diff --git a/public/textures/minecraft/lime_terracotta.png b/public/textures/minecraft/lime_terracotta.png new file mode 100644 index 00000000..d1dd32e1 Binary files /dev/null and b/public/textures/minecraft/lime_terracotta.png differ diff --git a/public/textures/minecraft/lime_wool.png b/public/textures/minecraft/lime_wool.png new file mode 100644 index 00000000..cecf04ed Binary files /dev/null and b/public/textures/minecraft/lime_wool.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__berserking'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__berserking'}}.png new file mode 100644 index 00000000..08ba1138 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__berserking'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__long_berserking'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__long_berserking'}}.png new file mode 100644 index 00000000..08ba1138 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__long_berserking'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__strong_berserking'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__strong_berserking'}}.png new file mode 100644 index 00000000..08ba1138 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__strong_berserking'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__awkward'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__awkward'}}.png new file mode 100644 index 00000000..b69445ee Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__awkward'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__fire_resistance'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__fire_resistance'}}.png new file mode 100644 index 00000000..d9469f87 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__fire_resistance'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__harming'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__harming'}}.png new file mode 100644 index 00000000..c3fdd5b2 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__harming'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__healing'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__healing'}}.png new file mode 100644 index 00000000..43e4357a Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__healing'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__infested'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__infested'}}.png new file mode 100644 index 00000000..68df16dc Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__infested'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__invisibility'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__invisibility'}}.png new file mode 100644 index 00000000..f1c4cb35 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__invisibility'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__leaping'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__leaping'}}.png new file mode 100644 index 00000000..33a7a152 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__leaping'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_fire_resistance'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_fire_resistance'}}.png new file mode 100644 index 00000000..d9469f87 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_fire_resistance'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_invisibility'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_invisibility'}}.png new file mode 100644 index 00000000..f1c4cb35 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_invisibility'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_leaping'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_leaping'}}.png new file mode 100644 index 00000000..33a7a152 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_leaping'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_night_vision'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_night_vision'}}.png new file mode 100644 index 00000000..15523c4d Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_night_vision'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_poison'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_poison'}}.png new file mode 100644 index 00000000..e02bfc40 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_poison'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_regeneration'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_regeneration'}}.png new file mode 100644 index 00000000..309ab79a Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_regeneration'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_slow_falling'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_slow_falling'}}.png new file mode 100644 index 00000000..4b90f263 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_slow_falling'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_slowness'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_slowness'}}.png new file mode 100644 index 00000000..2358ebde Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_slowness'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_strength'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_strength'}}.png new file mode 100644 index 00000000..57f2f386 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_strength'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_swiftness'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_swiftness'}}.png new file mode 100644 index 00000000..2e82f986 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_swiftness'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_turtle_master'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_turtle_master'}}.png new file mode 100644 index 00000000..c721d8f9 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_turtle_master'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_water_breathing'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_water_breathing'}}.png new file mode 100644 index 00000000..d84d4b89 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_water_breathing'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_weakness'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_weakness'}}.png new file mode 100644 index 00000000..6e9341cd Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_weakness'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__luck'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__luck'}}.png new file mode 100644 index 00000000..4d7c5ca9 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__luck'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__mundane'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__mundane'}}.png new file mode 100644 index 00000000..b69445ee Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__mundane'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__night_vision'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__night_vision'}}.png new file mode 100644 index 00000000..15523c4d Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__night_vision'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__oozing'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__oozing'}}.png new file mode 100644 index 00000000..ff9fd2fe Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__oozing'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__poison'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__poison'}}.png new file mode 100644 index 00000000..e02bfc40 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__poison'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__regeneration'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__regeneration'}}.png new file mode 100644 index 00000000..309ab79a Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__regeneration'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__slow_falling'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__slow_falling'}}.png new file mode 100644 index 00000000..4b90f263 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__slow_falling'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__slowness'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__slowness'}}.png new file mode 100644 index 00000000..2358ebde Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__slowness'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strength'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strength'}}.png new file mode 100644 index 00000000..57f2f386 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strength'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_harming'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_harming'}}.png new file mode 100644 index 00000000..c3fdd5b2 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_harming'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_healing'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_healing'}}.png new file mode 100644 index 00000000..43e4357a Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_healing'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_leaping'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_leaping'}}.png new file mode 100644 index 00000000..33a7a152 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_leaping'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_poison'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_poison'}}.png new file mode 100644 index 00000000..e02bfc40 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_poison'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_regeneration'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_regeneration'}}.png new file mode 100644 index 00000000..309ab79a Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_regeneration'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_slowness'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_slowness'}}.png new file mode 100644 index 00000000..2358ebde Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_slowness'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_strength'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_strength'}}.png new file mode 100644 index 00000000..57f2f386 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_strength'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_swiftness'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_swiftness'}}.png new file mode 100644 index 00000000..2e82f986 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_swiftness'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_turtle_master'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_turtle_master'}}.png new file mode 100644 index 00000000..7f3f1aee Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_turtle_master'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__swiftness'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__swiftness'}}.png new file mode 100644 index 00000000..2e82f986 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__swiftness'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__thick'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__thick'}}.png new file mode 100644 index 00000000..b69445ee Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__thick'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__turtle_master'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__turtle_master'}}.png new file mode 100644 index 00000000..c721d8f9 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__turtle_master'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__water'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__water'}}.png new file mode 100644 index 00000000..b69445ee Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__water'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__water_breathing'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__water_breathing'}}.png new file mode 100644 index 00000000..d84d4b89 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__water_breathing'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__weakness'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__weakness'}}.png new file mode 100644 index 00000000..6e9341cd Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__weakness'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__weaving'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__weaving'}}.png new file mode 100644 index 00000000..0a4990cb Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__weaving'}}.png differ diff --git a/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__wind_charged'}}.png b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__wind_charged'}}.png new file mode 100644 index 00000000..52d74130 Binary files /dev/null and b/public/textures/minecraft/lingering_potion__{'minecraft__potion_contents'__{potion__'minecraft__wind_charged'}}.png differ diff --git a/public/textures/minecraft/llama_spawn_egg.png b/public/textures/minecraft/llama_spawn_egg.png new file mode 100644 index 00000000..8ffcdb51 Binary files /dev/null and b/public/textures/minecraft/llama_spawn_egg.png differ diff --git a/public/textures/minecraft/lodestone.png b/public/textures/minecraft/lodestone.png new file mode 100644 index 00000000..620b45ed Binary files /dev/null and b/public/textures/minecraft/lodestone.png differ diff --git a/public/textures/minecraft/loom.png b/public/textures/minecraft/loom.png new file mode 100644 index 00000000..2bcfd476 Binary files /dev/null and b/public/textures/minecraft/loom.png differ diff --git a/public/textures/minecraft/mace.png b/public/textures/minecraft/mace.png new file mode 100644 index 00000000..b368bc36 Binary files /dev/null and b/public/textures/minecraft/mace.png differ diff --git a/public/textures/minecraft/magenta_banner.png b/public/textures/minecraft/magenta_banner.png new file mode 100644 index 00000000..56171367 Binary files /dev/null and b/public/textures/minecraft/magenta_banner.png differ diff --git a/public/textures/minecraft/magenta_bed.png b/public/textures/minecraft/magenta_bed.png new file mode 100644 index 00000000..c06ad594 Binary files /dev/null and b/public/textures/minecraft/magenta_bed.png differ diff --git a/public/textures/minecraft/magenta_candle.png b/public/textures/minecraft/magenta_candle.png new file mode 100644 index 00000000..f44d0166 Binary files /dev/null and b/public/textures/minecraft/magenta_candle.png differ diff --git a/public/textures/minecraft/magenta_carpet.png b/public/textures/minecraft/magenta_carpet.png new file mode 100644 index 00000000..fa0bf039 Binary files /dev/null and b/public/textures/minecraft/magenta_carpet.png differ diff --git a/public/textures/minecraft/magenta_concrete.png b/public/textures/minecraft/magenta_concrete.png new file mode 100644 index 00000000..d2948b9d Binary files /dev/null and b/public/textures/minecraft/magenta_concrete.png differ diff --git a/public/textures/minecraft/magenta_concrete_powder.png b/public/textures/minecraft/magenta_concrete_powder.png new file mode 100644 index 00000000..7be3105f Binary files /dev/null and b/public/textures/minecraft/magenta_concrete_powder.png differ diff --git a/public/textures/minecraft/magenta_dye.png b/public/textures/minecraft/magenta_dye.png new file mode 100644 index 00000000..4790a325 Binary files /dev/null and b/public/textures/minecraft/magenta_dye.png differ diff --git a/public/textures/minecraft/magenta_glazed_terracotta.png b/public/textures/minecraft/magenta_glazed_terracotta.png new file mode 100644 index 00000000..33c42196 Binary files /dev/null and b/public/textures/minecraft/magenta_glazed_terracotta.png differ diff --git a/public/textures/minecraft/magenta_shulker_box.png b/public/textures/minecraft/magenta_shulker_box.png new file mode 100644 index 00000000..b4081968 Binary files /dev/null and b/public/textures/minecraft/magenta_shulker_box.png differ diff --git a/public/textures/minecraft/magenta_stained_glass.png b/public/textures/minecraft/magenta_stained_glass.png new file mode 100644 index 00000000..a9056046 Binary files /dev/null and b/public/textures/minecraft/magenta_stained_glass.png differ diff --git a/public/textures/minecraft/magenta_stained_glass_pane.png b/public/textures/minecraft/magenta_stained_glass_pane.png new file mode 100644 index 00000000..0910da63 Binary files /dev/null and b/public/textures/minecraft/magenta_stained_glass_pane.png differ diff --git a/public/textures/minecraft/magenta_terracotta.png b/public/textures/minecraft/magenta_terracotta.png new file mode 100644 index 00000000..75da6e27 Binary files /dev/null and b/public/textures/minecraft/magenta_terracotta.png differ diff --git a/public/textures/minecraft/magenta_wool.png b/public/textures/minecraft/magenta_wool.png new file mode 100644 index 00000000..44acb9df Binary files /dev/null and b/public/textures/minecraft/magenta_wool.png differ diff --git a/public/textures/minecraft/magma_block.png b/public/textures/minecraft/magma_block.png new file mode 100644 index 00000000..b579f3d2 Binary files /dev/null and b/public/textures/minecraft/magma_block.png differ diff --git a/public/textures/minecraft/magma_cream.png b/public/textures/minecraft/magma_cream.png new file mode 100644 index 00000000..02f86f1f Binary files /dev/null and b/public/textures/minecraft/magma_cream.png differ diff --git a/public/textures/minecraft/magma_cube_spawn_egg.png b/public/textures/minecraft/magma_cube_spawn_egg.png new file mode 100644 index 00000000..a6004d96 Binary files /dev/null and b/public/textures/minecraft/magma_cube_spawn_egg.png differ diff --git a/public/textures/minecraft/mangrove_boat.png b/public/textures/minecraft/mangrove_boat.png new file mode 100644 index 00000000..dad9329a Binary files /dev/null and b/public/textures/minecraft/mangrove_boat.png differ diff --git a/public/textures/minecraft/mangrove_button.png b/public/textures/minecraft/mangrove_button.png new file mode 100644 index 00000000..f6c7c440 Binary files /dev/null and b/public/textures/minecraft/mangrove_button.png differ diff --git a/public/textures/minecraft/mangrove_chest_boat.png b/public/textures/minecraft/mangrove_chest_boat.png new file mode 100644 index 00000000..1281a231 Binary files /dev/null and b/public/textures/minecraft/mangrove_chest_boat.png differ diff --git a/public/textures/minecraft/mangrove_door.png b/public/textures/minecraft/mangrove_door.png new file mode 100644 index 00000000..ecf3e993 Binary files /dev/null and b/public/textures/minecraft/mangrove_door.png differ diff --git a/public/textures/minecraft/mangrove_fence.png b/public/textures/minecraft/mangrove_fence.png new file mode 100644 index 00000000..bf7a2240 Binary files /dev/null and b/public/textures/minecraft/mangrove_fence.png differ diff --git a/public/textures/minecraft/mangrove_fence_gate.png b/public/textures/minecraft/mangrove_fence_gate.png new file mode 100644 index 00000000..267341a2 Binary files /dev/null and b/public/textures/minecraft/mangrove_fence_gate.png differ diff --git a/public/textures/minecraft/mangrove_hanging_sign.png b/public/textures/minecraft/mangrove_hanging_sign.png new file mode 100644 index 00000000..f18f3e25 Binary files /dev/null and b/public/textures/minecraft/mangrove_hanging_sign.png differ diff --git a/public/textures/minecraft/mangrove_leaves.png b/public/textures/minecraft/mangrove_leaves.png new file mode 100644 index 00000000..5d2c7462 Binary files /dev/null and b/public/textures/minecraft/mangrove_leaves.png differ diff --git a/public/textures/minecraft/mangrove_log.png b/public/textures/minecraft/mangrove_log.png new file mode 100644 index 00000000..e4aa3840 Binary files /dev/null and b/public/textures/minecraft/mangrove_log.png differ diff --git a/public/textures/minecraft/mangrove_planks.png b/public/textures/minecraft/mangrove_planks.png new file mode 100644 index 00000000..a79e91dd Binary files /dev/null and b/public/textures/minecraft/mangrove_planks.png differ diff --git a/public/textures/minecraft/mangrove_pressure_plate.png b/public/textures/minecraft/mangrove_pressure_plate.png new file mode 100644 index 00000000..5aca46fd Binary files /dev/null and b/public/textures/minecraft/mangrove_pressure_plate.png differ diff --git a/public/textures/minecraft/mangrove_propagule.png b/public/textures/minecraft/mangrove_propagule.png new file mode 100644 index 00000000..c1f98fc6 Binary files /dev/null and b/public/textures/minecraft/mangrove_propagule.png differ diff --git a/public/textures/minecraft/mangrove_roots.png b/public/textures/minecraft/mangrove_roots.png new file mode 100644 index 00000000..1a1d5dfc Binary files /dev/null and b/public/textures/minecraft/mangrove_roots.png differ diff --git a/public/textures/minecraft/mangrove_sign.png b/public/textures/minecraft/mangrove_sign.png new file mode 100644 index 00000000..f5522f70 Binary files /dev/null and b/public/textures/minecraft/mangrove_sign.png differ diff --git a/public/textures/minecraft/mangrove_slab.png b/public/textures/minecraft/mangrove_slab.png new file mode 100644 index 00000000..9fbc92fa Binary files /dev/null and b/public/textures/minecraft/mangrove_slab.png differ diff --git a/public/textures/minecraft/mangrove_stairs.png b/public/textures/minecraft/mangrove_stairs.png new file mode 100644 index 00000000..1052d6d8 Binary files /dev/null and b/public/textures/minecraft/mangrove_stairs.png differ diff --git a/public/textures/minecraft/mangrove_trapdoor.png b/public/textures/minecraft/mangrove_trapdoor.png new file mode 100644 index 00000000..ac92d66e Binary files /dev/null and b/public/textures/minecraft/mangrove_trapdoor.png differ diff --git a/public/textures/minecraft/mangrove_wood.png b/public/textures/minecraft/mangrove_wood.png new file mode 100644 index 00000000..e71fa4e4 Binary files /dev/null and b/public/textures/minecraft/mangrove_wood.png differ diff --git a/public/textures/minecraft/map.png b/public/textures/minecraft/map.png new file mode 100644 index 00000000..e1b7eeb3 Binary files /dev/null and b/public/textures/minecraft/map.png differ diff --git a/public/textures/minecraft/medium_amethyst_bud.png b/public/textures/minecraft/medium_amethyst_bud.png new file mode 100644 index 00000000..6b0d77d1 Binary files /dev/null and b/public/textures/minecraft/medium_amethyst_bud.png differ diff --git a/public/textures/minecraft/melon.png b/public/textures/minecraft/melon.png new file mode 100644 index 00000000..12fcbfc9 Binary files /dev/null and b/public/textures/minecraft/melon.png differ diff --git a/public/textures/minecraft/melon_seeds.png b/public/textures/minecraft/melon_seeds.png new file mode 100644 index 00000000..2380b602 Binary files /dev/null and b/public/textures/minecraft/melon_seeds.png differ diff --git a/public/textures/minecraft/melon_slice.png b/public/textures/minecraft/melon_slice.png new file mode 100644 index 00000000..4495b1fe Binary files /dev/null and b/public/textures/minecraft/melon_slice.png differ diff --git a/public/textures/minecraft/milk_bucket.png b/public/textures/minecraft/milk_bucket.png new file mode 100644 index 00000000..41124926 Binary files /dev/null and b/public/textures/minecraft/milk_bucket.png differ diff --git a/public/textures/minecraft/minecart.png b/public/textures/minecraft/minecart.png new file mode 100644 index 00000000..eab779d3 Binary files /dev/null and b/public/textures/minecraft/minecart.png differ diff --git a/public/textures/minecraft/miner_pottery_sherd.png b/public/textures/minecraft/miner_pottery_sherd.png new file mode 100644 index 00000000..912cae36 Binary files /dev/null and b/public/textures/minecraft/miner_pottery_sherd.png differ diff --git a/public/textures/minecraft/mojang_banner_pattern.png b/public/textures/minecraft/mojang_banner_pattern.png new file mode 100644 index 00000000..43fad4e1 Binary files /dev/null and b/public/textures/minecraft/mojang_banner_pattern.png differ diff --git a/public/textures/minecraft/mooshroom_spawn_egg.png b/public/textures/minecraft/mooshroom_spawn_egg.png new file mode 100644 index 00000000..ee9e18b8 Binary files /dev/null and b/public/textures/minecraft/mooshroom_spawn_egg.png differ diff --git a/public/textures/minecraft/moss_block.png b/public/textures/minecraft/moss_block.png new file mode 100644 index 00000000..aff899bc Binary files /dev/null and b/public/textures/minecraft/moss_block.png differ diff --git a/public/textures/minecraft/moss_carpet.png b/public/textures/minecraft/moss_carpet.png new file mode 100644 index 00000000..482aee16 Binary files /dev/null and b/public/textures/minecraft/moss_carpet.png differ diff --git a/public/textures/minecraft/mossy_cobblestone.png b/public/textures/minecraft/mossy_cobblestone.png new file mode 100644 index 00000000..83376d85 Binary files /dev/null and b/public/textures/minecraft/mossy_cobblestone.png differ diff --git a/public/textures/minecraft/mossy_cobblestone_slab.png b/public/textures/minecraft/mossy_cobblestone_slab.png new file mode 100644 index 00000000..5f3c05f1 Binary files /dev/null and b/public/textures/minecraft/mossy_cobblestone_slab.png differ diff --git a/public/textures/minecraft/mossy_cobblestone_stairs.png b/public/textures/minecraft/mossy_cobblestone_stairs.png new file mode 100644 index 00000000..53982b8e Binary files /dev/null and b/public/textures/minecraft/mossy_cobblestone_stairs.png differ diff --git a/public/textures/minecraft/mossy_cobblestone_wall.png b/public/textures/minecraft/mossy_cobblestone_wall.png new file mode 100644 index 00000000..96e03ee1 Binary files /dev/null and b/public/textures/minecraft/mossy_cobblestone_wall.png differ diff --git a/public/textures/minecraft/mossy_stone_brick_slab.png b/public/textures/minecraft/mossy_stone_brick_slab.png new file mode 100644 index 00000000..dad9d577 Binary files /dev/null and b/public/textures/minecraft/mossy_stone_brick_slab.png differ diff --git a/public/textures/minecraft/mossy_stone_brick_stairs.png b/public/textures/minecraft/mossy_stone_brick_stairs.png new file mode 100644 index 00000000..a22fcba6 Binary files /dev/null and b/public/textures/minecraft/mossy_stone_brick_stairs.png differ diff --git a/public/textures/minecraft/mossy_stone_brick_wall.png b/public/textures/minecraft/mossy_stone_brick_wall.png new file mode 100644 index 00000000..249f7fd7 Binary files /dev/null and b/public/textures/minecraft/mossy_stone_brick_wall.png differ diff --git a/public/textures/minecraft/mossy_stone_bricks.png b/public/textures/minecraft/mossy_stone_bricks.png new file mode 100644 index 00000000..3ef55245 Binary files /dev/null and b/public/textures/minecraft/mossy_stone_bricks.png differ diff --git a/public/textures/minecraft/mourner_pottery_sherd.png b/public/textures/minecraft/mourner_pottery_sherd.png new file mode 100644 index 00000000..d23b0630 Binary files /dev/null and b/public/textures/minecraft/mourner_pottery_sherd.png differ diff --git a/public/textures/minecraft/mud.png b/public/textures/minecraft/mud.png new file mode 100644 index 00000000..19c53b8c Binary files /dev/null and b/public/textures/minecraft/mud.png differ diff --git a/public/textures/minecraft/mud_brick_slab.png b/public/textures/minecraft/mud_brick_slab.png new file mode 100644 index 00000000..0c8262d7 Binary files /dev/null and b/public/textures/minecraft/mud_brick_slab.png differ diff --git a/public/textures/minecraft/mud_brick_stairs.png b/public/textures/minecraft/mud_brick_stairs.png new file mode 100644 index 00000000..002b9698 Binary files /dev/null and b/public/textures/minecraft/mud_brick_stairs.png differ diff --git a/public/textures/minecraft/mud_brick_wall.png b/public/textures/minecraft/mud_brick_wall.png new file mode 100644 index 00000000..1e3ff1d2 Binary files /dev/null and b/public/textures/minecraft/mud_brick_wall.png differ diff --git a/public/textures/minecraft/mud_bricks.png b/public/textures/minecraft/mud_bricks.png new file mode 100644 index 00000000..b1c6f2f1 Binary files /dev/null and b/public/textures/minecraft/mud_bricks.png differ diff --git a/public/textures/minecraft/muddy_mangrove_roots.png b/public/textures/minecraft/muddy_mangrove_roots.png new file mode 100644 index 00000000..53f1a1c0 Binary files /dev/null and b/public/textures/minecraft/muddy_mangrove_roots.png differ diff --git a/public/textures/minecraft/mule_spawn_egg.png b/public/textures/minecraft/mule_spawn_egg.png new file mode 100644 index 00000000..324e21c6 Binary files /dev/null and b/public/textures/minecraft/mule_spawn_egg.png differ diff --git a/public/textures/minecraft/mushroom_stem.png b/public/textures/minecraft/mushroom_stem.png new file mode 100644 index 00000000..d38a65f2 Binary files /dev/null and b/public/textures/minecraft/mushroom_stem.png differ diff --git a/public/textures/minecraft/mushroom_stew.png b/public/textures/minecraft/mushroom_stew.png new file mode 100644 index 00000000..8b89b7af Binary files /dev/null and b/public/textures/minecraft/mushroom_stew.png differ diff --git a/public/textures/minecraft/music_disc_11.png b/public/textures/minecraft/music_disc_11.png new file mode 100644 index 00000000..543dc21c Binary files /dev/null and b/public/textures/minecraft/music_disc_11.png differ diff --git a/public/textures/minecraft/music_disc_13.png b/public/textures/minecraft/music_disc_13.png new file mode 100644 index 00000000..a19feec2 Binary files /dev/null and b/public/textures/minecraft/music_disc_13.png differ diff --git a/public/textures/minecraft/music_disc_5.png b/public/textures/minecraft/music_disc_5.png new file mode 100644 index 00000000..2e2527f1 Binary files /dev/null and b/public/textures/minecraft/music_disc_5.png differ diff --git a/public/textures/minecraft/music_disc_blocks.png b/public/textures/minecraft/music_disc_blocks.png new file mode 100644 index 00000000..2ae611ef Binary files /dev/null and b/public/textures/minecraft/music_disc_blocks.png differ diff --git a/public/textures/minecraft/music_disc_cat.png b/public/textures/minecraft/music_disc_cat.png new file mode 100644 index 00000000..517ea662 Binary files /dev/null and b/public/textures/minecraft/music_disc_cat.png differ diff --git a/public/textures/minecraft/music_disc_chirp.png b/public/textures/minecraft/music_disc_chirp.png new file mode 100644 index 00000000..b1bd925a Binary files /dev/null and b/public/textures/minecraft/music_disc_chirp.png differ diff --git a/public/textures/minecraft/music_disc_creator.png b/public/textures/minecraft/music_disc_creator.png new file mode 100644 index 00000000..57ecff70 Binary files /dev/null and b/public/textures/minecraft/music_disc_creator.png differ diff --git a/public/textures/minecraft/music_disc_creator_music_box.png b/public/textures/minecraft/music_disc_creator_music_box.png new file mode 100644 index 00000000..e5314acd Binary files /dev/null and b/public/textures/minecraft/music_disc_creator_music_box.png differ diff --git a/public/textures/minecraft/music_disc_far.png b/public/textures/minecraft/music_disc_far.png new file mode 100644 index 00000000..5b0939e4 Binary files /dev/null and b/public/textures/minecraft/music_disc_far.png differ diff --git a/public/textures/minecraft/music_disc_mall.png b/public/textures/minecraft/music_disc_mall.png new file mode 100644 index 00000000..6e4fdf72 Binary files /dev/null and b/public/textures/minecraft/music_disc_mall.png differ diff --git a/public/textures/minecraft/music_disc_mellohi.png b/public/textures/minecraft/music_disc_mellohi.png new file mode 100644 index 00000000..86868c25 Binary files /dev/null and b/public/textures/minecraft/music_disc_mellohi.png differ diff --git a/public/textures/minecraft/music_disc_otherside.png b/public/textures/minecraft/music_disc_otherside.png new file mode 100644 index 00000000..b6485cfd Binary files /dev/null and b/public/textures/minecraft/music_disc_otherside.png differ diff --git a/public/textures/minecraft/music_disc_pigstep.png b/public/textures/minecraft/music_disc_pigstep.png new file mode 100644 index 00000000..22f5eee0 Binary files /dev/null and b/public/textures/minecraft/music_disc_pigstep.png differ diff --git a/public/textures/minecraft/music_disc_precipice.png b/public/textures/minecraft/music_disc_precipice.png new file mode 100644 index 00000000..f241bc0f Binary files /dev/null and b/public/textures/minecraft/music_disc_precipice.png differ diff --git a/public/textures/minecraft/music_disc_relic.png b/public/textures/minecraft/music_disc_relic.png new file mode 100644 index 00000000..c0420a7e Binary files /dev/null and b/public/textures/minecraft/music_disc_relic.png differ diff --git a/public/textures/minecraft/music_disc_stal.png b/public/textures/minecraft/music_disc_stal.png new file mode 100644 index 00000000..359ddded Binary files /dev/null and b/public/textures/minecraft/music_disc_stal.png differ diff --git a/public/textures/minecraft/music_disc_strad.png b/public/textures/minecraft/music_disc_strad.png new file mode 100644 index 00000000..3fa0c2e8 Binary files /dev/null and b/public/textures/minecraft/music_disc_strad.png differ diff --git a/public/textures/minecraft/music_disc_wait.png b/public/textures/minecraft/music_disc_wait.png new file mode 100644 index 00000000..f0697540 Binary files /dev/null and b/public/textures/minecraft/music_disc_wait.png differ diff --git a/public/textures/minecraft/music_disc_ward.png b/public/textures/minecraft/music_disc_ward.png new file mode 100644 index 00000000..45e9ba99 Binary files /dev/null and b/public/textures/minecraft/music_disc_ward.png differ diff --git a/public/textures/minecraft/mutton.png b/public/textures/minecraft/mutton.png new file mode 100644 index 00000000..96f1ad8c Binary files /dev/null and b/public/textures/minecraft/mutton.png differ diff --git a/public/textures/minecraft/mycelium.png b/public/textures/minecraft/mycelium.png new file mode 100644 index 00000000..546a9226 Binary files /dev/null and b/public/textures/minecraft/mycelium.png differ diff --git a/public/textures/minecraft/name_tag.png b/public/textures/minecraft/name_tag.png new file mode 100644 index 00000000..5dd1279c Binary files /dev/null and b/public/textures/minecraft/name_tag.png differ diff --git a/public/textures/minecraft/nautilus_shell.png b/public/textures/minecraft/nautilus_shell.png new file mode 100644 index 00000000..add70bc6 Binary files /dev/null and b/public/textures/minecraft/nautilus_shell.png differ diff --git a/public/textures/minecraft/nether_brick.png b/public/textures/minecraft/nether_brick.png new file mode 100644 index 00000000..c37bf1b8 Binary files /dev/null and b/public/textures/minecraft/nether_brick.png differ diff --git a/public/textures/minecraft/nether_brick_fence.png b/public/textures/minecraft/nether_brick_fence.png new file mode 100644 index 00000000..4a8116b2 Binary files /dev/null and b/public/textures/minecraft/nether_brick_fence.png differ diff --git a/public/textures/minecraft/nether_brick_slab.png b/public/textures/minecraft/nether_brick_slab.png new file mode 100644 index 00000000..0f16cebe Binary files /dev/null and b/public/textures/minecraft/nether_brick_slab.png differ diff --git a/public/textures/minecraft/nether_brick_stairs.png b/public/textures/minecraft/nether_brick_stairs.png new file mode 100644 index 00000000..2ae3d3fc Binary files /dev/null and b/public/textures/minecraft/nether_brick_stairs.png differ diff --git a/public/textures/minecraft/nether_brick_wall.png b/public/textures/minecraft/nether_brick_wall.png new file mode 100644 index 00000000..d3e6ef52 Binary files /dev/null and b/public/textures/minecraft/nether_brick_wall.png differ diff --git a/public/textures/minecraft/nether_bricks.png b/public/textures/minecraft/nether_bricks.png new file mode 100644 index 00000000..0fa09733 Binary files /dev/null and b/public/textures/minecraft/nether_bricks.png differ diff --git a/public/textures/minecraft/nether_gold_ore.png b/public/textures/minecraft/nether_gold_ore.png new file mode 100644 index 00000000..98bb3284 Binary files /dev/null and b/public/textures/minecraft/nether_gold_ore.png differ diff --git a/public/textures/minecraft/nether_quartz_ore.png b/public/textures/minecraft/nether_quartz_ore.png new file mode 100644 index 00000000..5d25be48 Binary files /dev/null and b/public/textures/minecraft/nether_quartz_ore.png differ diff --git a/public/textures/minecraft/nether_sprouts.png b/public/textures/minecraft/nether_sprouts.png new file mode 100644 index 00000000..5a1de301 Binary files /dev/null and b/public/textures/minecraft/nether_sprouts.png differ diff --git a/public/textures/minecraft/nether_star.png b/public/textures/minecraft/nether_star.png new file mode 100644 index 00000000..8b15c87f Binary files /dev/null and b/public/textures/minecraft/nether_star.png differ diff --git a/public/textures/minecraft/nether_wart.png b/public/textures/minecraft/nether_wart.png new file mode 100644 index 00000000..2e8b1d1c Binary files /dev/null and b/public/textures/minecraft/nether_wart.png differ diff --git a/public/textures/minecraft/nether_wart_block.png b/public/textures/minecraft/nether_wart_block.png new file mode 100644 index 00000000..c5b78bd8 Binary files /dev/null and b/public/textures/minecraft/nether_wart_block.png differ diff --git a/public/textures/minecraft/netherite_axe.png b/public/textures/minecraft/netherite_axe.png new file mode 100644 index 00000000..61ee84fa Binary files /dev/null and b/public/textures/minecraft/netherite_axe.png differ diff --git a/public/textures/minecraft/netherite_block.png b/public/textures/minecraft/netherite_block.png new file mode 100644 index 00000000..2bae50c8 Binary files /dev/null and b/public/textures/minecraft/netherite_block.png differ diff --git a/public/textures/minecraft/netherite_boots.png b/public/textures/minecraft/netherite_boots.png new file mode 100644 index 00000000..65b75fe4 Binary files /dev/null and b/public/textures/minecraft/netherite_boots.png differ diff --git a/public/textures/minecraft/netherite_chestplate.png b/public/textures/minecraft/netherite_chestplate.png new file mode 100644 index 00000000..6eda89a9 Binary files /dev/null and b/public/textures/minecraft/netherite_chestplate.png differ diff --git a/public/textures/minecraft/netherite_helmet.png b/public/textures/minecraft/netherite_helmet.png new file mode 100644 index 00000000..79526809 Binary files /dev/null and b/public/textures/minecraft/netherite_helmet.png differ diff --git a/public/textures/minecraft/netherite_hoe.png b/public/textures/minecraft/netherite_hoe.png new file mode 100644 index 00000000..fbe5de38 Binary files /dev/null and b/public/textures/minecraft/netherite_hoe.png differ diff --git a/public/textures/minecraft/netherite_ingot.png b/public/textures/minecraft/netherite_ingot.png new file mode 100644 index 00000000..1c1abb8b Binary files /dev/null and b/public/textures/minecraft/netherite_ingot.png differ diff --git a/public/textures/minecraft/netherite_leggings.png b/public/textures/minecraft/netherite_leggings.png new file mode 100644 index 00000000..3a3f7e95 Binary files /dev/null and b/public/textures/minecraft/netherite_leggings.png differ diff --git a/public/textures/minecraft/netherite_pickaxe.png b/public/textures/minecraft/netherite_pickaxe.png new file mode 100644 index 00000000..00eb57ec Binary files /dev/null and b/public/textures/minecraft/netherite_pickaxe.png differ diff --git a/public/textures/minecraft/netherite_scrap.png b/public/textures/minecraft/netherite_scrap.png new file mode 100644 index 00000000..e4ad060a Binary files /dev/null and b/public/textures/minecraft/netherite_scrap.png differ diff --git a/public/textures/minecraft/netherite_shovel.png b/public/textures/minecraft/netherite_shovel.png new file mode 100644 index 00000000..1692a7a8 Binary files /dev/null and b/public/textures/minecraft/netherite_shovel.png differ diff --git a/public/textures/minecraft/netherite_sword.png b/public/textures/minecraft/netherite_sword.png new file mode 100644 index 00000000..e3901cc9 Binary files /dev/null and b/public/textures/minecraft/netherite_sword.png differ diff --git a/public/textures/minecraft/netherite_upgrade_smithing_template.png b/public/textures/minecraft/netherite_upgrade_smithing_template.png new file mode 100644 index 00000000..596d320f Binary files /dev/null and b/public/textures/minecraft/netherite_upgrade_smithing_template.png differ diff --git a/public/textures/minecraft/netherrack.png b/public/textures/minecraft/netherrack.png new file mode 100644 index 00000000..4132e718 Binary files /dev/null and b/public/textures/minecraft/netherrack.png differ diff --git a/public/textures/minecraft/note_block.png b/public/textures/minecraft/note_block.png new file mode 100644 index 00000000..47d15066 Binary files /dev/null and b/public/textures/minecraft/note_block.png differ diff --git a/public/textures/minecraft/oak_boat.png b/public/textures/minecraft/oak_boat.png new file mode 100644 index 00000000..6d595dc0 Binary files /dev/null and b/public/textures/minecraft/oak_boat.png differ diff --git a/public/textures/minecraft/oak_button.png b/public/textures/minecraft/oak_button.png new file mode 100644 index 00000000..4ccce25a Binary files /dev/null and b/public/textures/minecraft/oak_button.png differ diff --git a/public/textures/minecraft/oak_chest_boat.png b/public/textures/minecraft/oak_chest_boat.png new file mode 100644 index 00000000..8e71f4f3 Binary files /dev/null and b/public/textures/minecraft/oak_chest_boat.png differ diff --git a/public/textures/minecraft/oak_door.png b/public/textures/minecraft/oak_door.png new file mode 100644 index 00000000..b874095b Binary files /dev/null and b/public/textures/minecraft/oak_door.png differ diff --git a/public/textures/minecraft/oak_fence.png b/public/textures/minecraft/oak_fence.png new file mode 100644 index 00000000..d5768e6a Binary files /dev/null and b/public/textures/minecraft/oak_fence.png differ diff --git a/public/textures/minecraft/oak_fence_gate.png b/public/textures/minecraft/oak_fence_gate.png new file mode 100644 index 00000000..2bd5c60d Binary files /dev/null and b/public/textures/minecraft/oak_fence_gate.png differ diff --git a/public/textures/minecraft/oak_hanging_sign.png b/public/textures/minecraft/oak_hanging_sign.png new file mode 100644 index 00000000..c99a8a7d Binary files /dev/null and b/public/textures/minecraft/oak_hanging_sign.png differ diff --git a/public/textures/minecraft/oak_leaves.png b/public/textures/minecraft/oak_leaves.png new file mode 100644 index 00000000..b8faccf1 Binary files /dev/null and b/public/textures/minecraft/oak_leaves.png differ diff --git a/public/textures/minecraft/oak_log.png b/public/textures/minecraft/oak_log.png new file mode 100644 index 00000000..444eb9a8 Binary files /dev/null and b/public/textures/minecraft/oak_log.png differ diff --git a/public/textures/minecraft/oak_planks.png b/public/textures/minecraft/oak_planks.png new file mode 100644 index 00000000..ed665090 Binary files /dev/null and b/public/textures/minecraft/oak_planks.png differ diff --git a/public/textures/minecraft/oak_pressure_plate.png b/public/textures/minecraft/oak_pressure_plate.png new file mode 100644 index 00000000..2de9322f Binary files /dev/null and b/public/textures/minecraft/oak_pressure_plate.png differ diff --git a/public/textures/minecraft/oak_sapling.png b/public/textures/minecraft/oak_sapling.png new file mode 100644 index 00000000..28884212 Binary files /dev/null and b/public/textures/minecraft/oak_sapling.png differ diff --git a/public/textures/minecraft/oak_sign.png b/public/textures/minecraft/oak_sign.png new file mode 100644 index 00000000..d295a9b2 Binary files /dev/null and b/public/textures/minecraft/oak_sign.png differ diff --git a/public/textures/minecraft/oak_slab.png b/public/textures/minecraft/oak_slab.png new file mode 100644 index 00000000..0e2c664b Binary files /dev/null and b/public/textures/minecraft/oak_slab.png differ diff --git a/public/textures/minecraft/oak_stairs.png b/public/textures/minecraft/oak_stairs.png new file mode 100644 index 00000000..e2da0d25 Binary files /dev/null and b/public/textures/minecraft/oak_stairs.png differ diff --git a/public/textures/minecraft/oak_trapdoor.png b/public/textures/minecraft/oak_trapdoor.png new file mode 100644 index 00000000..d269f361 Binary files /dev/null and b/public/textures/minecraft/oak_trapdoor.png differ diff --git a/public/textures/minecraft/oak_wood.png b/public/textures/minecraft/oak_wood.png new file mode 100644 index 00000000..d06c3d91 Binary files /dev/null and b/public/textures/minecraft/oak_wood.png differ diff --git a/public/textures/minecraft/observer.png b/public/textures/minecraft/observer.png new file mode 100644 index 00000000..6aa38cb4 Binary files /dev/null and b/public/textures/minecraft/observer.png differ diff --git a/public/textures/minecraft/obsidian.png b/public/textures/minecraft/obsidian.png new file mode 100644 index 00000000..fa6ca336 Binary files /dev/null and b/public/textures/minecraft/obsidian.png differ diff --git a/public/textures/minecraft/ocelot_spawn_egg.png b/public/textures/minecraft/ocelot_spawn_egg.png new file mode 100644 index 00000000..6fc83772 Binary files /dev/null and b/public/textures/minecraft/ocelot_spawn_egg.png differ diff --git a/public/textures/minecraft/ochre_froglight.png b/public/textures/minecraft/ochre_froglight.png new file mode 100644 index 00000000..9c33f615 Binary files /dev/null and b/public/textures/minecraft/ochre_froglight.png differ diff --git a/public/textures/minecraft/ominous_bottle.png b/public/textures/minecraft/ominous_bottle.png new file mode 100644 index 00000000..cf75ce69 Binary files /dev/null and b/public/textures/minecraft/ominous_bottle.png differ diff --git a/public/textures/minecraft/ominous_bottle__{'minecraft__ominous_bottle_amplifier'__1}.png b/public/textures/minecraft/ominous_bottle__{'minecraft__ominous_bottle_amplifier'__1}.png new file mode 100644 index 00000000..cf75ce69 Binary files /dev/null and b/public/textures/minecraft/ominous_bottle__{'minecraft__ominous_bottle_amplifier'__1}.png differ diff --git a/public/textures/minecraft/ominous_bottle__{'minecraft__ominous_bottle_amplifier'__2}.png b/public/textures/minecraft/ominous_bottle__{'minecraft__ominous_bottle_amplifier'__2}.png new file mode 100644 index 00000000..cf75ce69 Binary files /dev/null and b/public/textures/minecraft/ominous_bottle__{'minecraft__ominous_bottle_amplifier'__2}.png differ diff --git a/public/textures/minecraft/ominous_bottle__{'minecraft__ominous_bottle_amplifier'__3}.png b/public/textures/minecraft/ominous_bottle__{'minecraft__ominous_bottle_amplifier'__3}.png new file mode 100644 index 00000000..cf75ce69 Binary files /dev/null and b/public/textures/minecraft/ominous_bottle__{'minecraft__ominous_bottle_amplifier'__3}.png differ diff --git a/public/textures/minecraft/ominous_bottle__{'minecraft__ominous_bottle_amplifier'__4}.png b/public/textures/minecraft/ominous_bottle__{'minecraft__ominous_bottle_amplifier'__4}.png new file mode 100644 index 00000000..cf75ce69 Binary files /dev/null and b/public/textures/minecraft/ominous_bottle__{'minecraft__ominous_bottle_amplifier'__4}.png differ diff --git a/public/textures/minecraft/ominous_trial_key.png b/public/textures/minecraft/ominous_trial_key.png new file mode 100644 index 00000000..a19810bf Binary files /dev/null and b/public/textures/minecraft/ominous_trial_key.png differ diff --git a/public/textures/minecraft/orange_banner.png b/public/textures/minecraft/orange_banner.png new file mode 100644 index 00000000..0592ee24 Binary files /dev/null and b/public/textures/minecraft/orange_banner.png differ diff --git a/public/textures/minecraft/orange_bed.png b/public/textures/minecraft/orange_bed.png new file mode 100644 index 00000000..30400f9b Binary files /dev/null and b/public/textures/minecraft/orange_bed.png differ diff --git a/public/textures/minecraft/orange_candle.png b/public/textures/minecraft/orange_candle.png new file mode 100644 index 00000000..bd73697b Binary files /dev/null and b/public/textures/minecraft/orange_candle.png differ diff --git a/public/textures/minecraft/orange_carpet.png b/public/textures/minecraft/orange_carpet.png new file mode 100644 index 00000000..b2176100 Binary files /dev/null and b/public/textures/minecraft/orange_carpet.png differ diff --git a/public/textures/minecraft/orange_concrete.png b/public/textures/minecraft/orange_concrete.png new file mode 100644 index 00000000..c1a96e25 Binary files /dev/null and b/public/textures/minecraft/orange_concrete.png differ diff --git a/public/textures/minecraft/orange_concrete_powder.png b/public/textures/minecraft/orange_concrete_powder.png new file mode 100644 index 00000000..0afafa91 Binary files /dev/null and b/public/textures/minecraft/orange_concrete_powder.png differ diff --git a/public/textures/minecraft/orange_dye.png b/public/textures/minecraft/orange_dye.png new file mode 100644 index 00000000..d69145c4 Binary files /dev/null and b/public/textures/minecraft/orange_dye.png differ diff --git a/public/textures/minecraft/orange_glazed_terracotta.png b/public/textures/minecraft/orange_glazed_terracotta.png new file mode 100644 index 00000000..4029fd4d Binary files /dev/null and b/public/textures/minecraft/orange_glazed_terracotta.png differ diff --git a/public/textures/minecraft/orange_shulker_box.png b/public/textures/minecraft/orange_shulker_box.png new file mode 100644 index 00000000..cc153d36 Binary files /dev/null and b/public/textures/minecraft/orange_shulker_box.png differ diff --git a/public/textures/minecraft/orange_stained_glass.png b/public/textures/minecraft/orange_stained_glass.png new file mode 100644 index 00000000..a3a32f4e Binary files /dev/null and b/public/textures/minecraft/orange_stained_glass.png differ diff --git a/public/textures/minecraft/orange_stained_glass_pane.png b/public/textures/minecraft/orange_stained_glass_pane.png new file mode 100644 index 00000000..036faec7 Binary files /dev/null and b/public/textures/minecraft/orange_stained_glass_pane.png differ diff --git a/public/textures/minecraft/orange_terracotta.png b/public/textures/minecraft/orange_terracotta.png new file mode 100644 index 00000000..2bf9a410 Binary files /dev/null and b/public/textures/minecraft/orange_terracotta.png differ diff --git a/public/textures/minecraft/orange_tulip.png b/public/textures/minecraft/orange_tulip.png new file mode 100644 index 00000000..efae14f9 Binary files /dev/null and b/public/textures/minecraft/orange_tulip.png differ diff --git a/public/textures/minecraft/orange_wool.png b/public/textures/minecraft/orange_wool.png new file mode 100644 index 00000000..ba80d17a Binary files /dev/null and b/public/textures/minecraft/orange_wool.png differ diff --git a/public/textures/minecraft/oxeye_daisy.png b/public/textures/minecraft/oxeye_daisy.png new file mode 100644 index 00000000..0a0c84ca Binary files /dev/null and b/public/textures/minecraft/oxeye_daisy.png differ diff --git a/public/textures/minecraft/oxidized_chiseled_copper.png b/public/textures/minecraft/oxidized_chiseled_copper.png new file mode 100644 index 00000000..e2c6834d Binary files /dev/null and b/public/textures/minecraft/oxidized_chiseled_copper.png differ diff --git a/public/textures/minecraft/oxidized_copper.png b/public/textures/minecraft/oxidized_copper.png new file mode 100644 index 00000000..647dd8f6 Binary files /dev/null and b/public/textures/minecraft/oxidized_copper.png differ diff --git a/public/textures/minecraft/oxidized_copper_bulb.png b/public/textures/minecraft/oxidized_copper_bulb.png new file mode 100644 index 00000000..eda2e1d5 Binary files /dev/null and b/public/textures/minecraft/oxidized_copper_bulb.png differ diff --git a/public/textures/minecraft/oxidized_copper_door.png b/public/textures/minecraft/oxidized_copper_door.png new file mode 100644 index 00000000..cb9cdcf1 Binary files /dev/null and b/public/textures/minecraft/oxidized_copper_door.png differ diff --git a/public/textures/minecraft/oxidized_copper_grate.png b/public/textures/minecraft/oxidized_copper_grate.png new file mode 100644 index 00000000..a6286bdb Binary files /dev/null and b/public/textures/minecraft/oxidized_copper_grate.png differ diff --git a/public/textures/minecraft/oxidized_copper_trapdoor.png b/public/textures/minecraft/oxidized_copper_trapdoor.png new file mode 100644 index 00000000..69ca0a13 Binary files /dev/null and b/public/textures/minecraft/oxidized_copper_trapdoor.png differ diff --git a/public/textures/minecraft/oxidized_cut_copper.png b/public/textures/minecraft/oxidized_cut_copper.png new file mode 100644 index 00000000..fd6cfaf3 Binary files /dev/null and b/public/textures/minecraft/oxidized_cut_copper.png differ diff --git a/public/textures/minecraft/oxidized_cut_copper_slab.png b/public/textures/minecraft/oxidized_cut_copper_slab.png new file mode 100644 index 00000000..4f83ec6e Binary files /dev/null and b/public/textures/minecraft/oxidized_cut_copper_slab.png differ diff --git a/public/textures/minecraft/oxidized_cut_copper_stairs.png b/public/textures/minecraft/oxidized_cut_copper_stairs.png new file mode 100644 index 00000000..27a5be14 Binary files /dev/null and b/public/textures/minecraft/oxidized_cut_copper_stairs.png differ diff --git a/public/textures/minecraft/packed_ice.png b/public/textures/minecraft/packed_ice.png new file mode 100644 index 00000000..bf5d596d Binary files /dev/null and b/public/textures/minecraft/packed_ice.png differ diff --git a/public/textures/minecraft/packed_mud.png b/public/textures/minecraft/packed_mud.png new file mode 100644 index 00000000..08d48fec Binary files /dev/null and b/public/textures/minecraft/packed_mud.png differ diff --git a/public/textures/minecraft/painting.png b/public/textures/minecraft/painting.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__alban'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__alban'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__alban'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__aztec'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__aztec'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__aztec'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__aztec2'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__aztec2'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__aztec2'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__backyard'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__backyard'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__backyard'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__baroque'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__baroque'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__baroque'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__bomb'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__bomb'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__bomb'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__bouquet'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__bouquet'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__bouquet'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__burning_skull'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__burning_skull'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__burning_skull'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__bust'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__bust'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__bust'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__cavebird'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__cavebird'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__cavebird'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__changing'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__changing'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__changing'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__cotan'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__cotan'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__cotan'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__courbet'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__courbet'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__courbet'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__creebet'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__creebet'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__creebet'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__donkey_kong'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__donkey_kong'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__donkey_kong'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__endboss'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__endboss'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__endboss'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__fern'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__fern'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__fern'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__fighters'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__fighters'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__fighters'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__finding'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__finding'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__finding'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__graham'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__graham'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__graham'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__humble'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__humble'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__humble'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__kebab'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__kebab'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__kebab'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__lowmist'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__lowmist'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__lowmist'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__match'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__match'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__match'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__meditative'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__meditative'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__meditative'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__orb'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__orb'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__orb'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__owlemons'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__owlemons'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__owlemons'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__passage'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__passage'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__passage'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__pigscene'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__pigscene'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__pigscene'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__plant'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__plant'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__plant'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__pointer'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__pointer'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__pointer'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__pond'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__pond'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__pond'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__pool'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__pool'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__pool'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__prairie_ride'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__prairie_ride'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__prairie_ride'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__sea'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__sea'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__sea'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__skeleton'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__skeleton'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__skeleton'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__skull_and_roses'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__skull_and_roses'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__skull_and_roses'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__stage'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__stage'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__stage'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__sunflowers'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__sunflowers'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__sunflowers'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__sunset'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__sunset'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__sunset'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__tides'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__tides'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__tides'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__unpacked'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__unpacked'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__unpacked'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__void'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__void'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__void'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__wanderer'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__wanderer'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__wanderer'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__wasteland'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__wasteland'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__wasteland'}}.png differ diff --git a/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__wither'}}.png b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__wither'}}.png new file mode 100644 index 00000000..cff1113b Binary files /dev/null and b/public/textures/minecraft/painting__{'minecraft__entity_data'__{id__'minecraft__painting',variant__'minecraft__wither'}}.png differ diff --git a/public/textures/minecraft/panda_spawn_egg.png b/public/textures/minecraft/panda_spawn_egg.png new file mode 100644 index 00000000..fd3c6211 Binary files /dev/null and b/public/textures/minecraft/panda_spawn_egg.png differ diff --git a/public/textures/minecraft/paper.png b/public/textures/minecraft/paper.png new file mode 100644 index 00000000..cf1af7b0 Binary files /dev/null and b/public/textures/minecraft/paper.png differ diff --git a/public/textures/minecraft/parrot_spawn_egg.png b/public/textures/minecraft/parrot_spawn_egg.png new file mode 100644 index 00000000..1fbbe7f0 Binary files /dev/null and b/public/textures/minecraft/parrot_spawn_egg.png differ diff --git a/public/textures/minecraft/pearlescent_froglight.png b/public/textures/minecraft/pearlescent_froglight.png new file mode 100644 index 00000000..afd01186 Binary files /dev/null and b/public/textures/minecraft/pearlescent_froglight.png differ diff --git a/public/textures/minecraft/peony.png b/public/textures/minecraft/peony.png new file mode 100644 index 00000000..f8b0be55 Binary files /dev/null and b/public/textures/minecraft/peony.png differ diff --git a/public/textures/minecraft/phantom_membrane.png b/public/textures/minecraft/phantom_membrane.png new file mode 100644 index 00000000..6cb0031f Binary files /dev/null and b/public/textures/minecraft/phantom_membrane.png differ diff --git a/public/textures/minecraft/phantom_spawn_egg.png b/public/textures/minecraft/phantom_spawn_egg.png new file mode 100644 index 00000000..d8094f55 Binary files /dev/null and b/public/textures/minecraft/phantom_spawn_egg.png differ diff --git a/public/textures/minecraft/pig_spawn_egg.png b/public/textures/minecraft/pig_spawn_egg.png new file mode 100644 index 00000000..714be533 Binary files /dev/null and b/public/textures/minecraft/pig_spawn_egg.png differ diff --git a/public/textures/minecraft/piglin_banner_pattern.png b/public/textures/minecraft/piglin_banner_pattern.png new file mode 100644 index 00000000..43fad4e1 Binary files /dev/null and b/public/textures/minecraft/piglin_banner_pattern.png differ diff --git a/public/textures/minecraft/piglin_brute_spawn_egg.png b/public/textures/minecraft/piglin_brute_spawn_egg.png new file mode 100644 index 00000000..16838424 Binary files /dev/null and b/public/textures/minecraft/piglin_brute_spawn_egg.png differ diff --git a/public/textures/minecraft/piglin_head.png b/public/textures/minecraft/piglin_head.png new file mode 100644 index 00000000..3ae65475 Binary files /dev/null and b/public/textures/minecraft/piglin_head.png differ diff --git a/public/textures/minecraft/piglin_spawn_egg.png b/public/textures/minecraft/piglin_spawn_egg.png new file mode 100644 index 00000000..41eae2c2 Binary files /dev/null and b/public/textures/minecraft/piglin_spawn_egg.png differ diff --git a/public/textures/minecraft/pillager_spawn_egg.png b/public/textures/minecraft/pillager_spawn_egg.png new file mode 100644 index 00000000..117d2d63 Binary files /dev/null and b/public/textures/minecraft/pillager_spawn_egg.png differ diff --git a/public/textures/minecraft/pink_banner.png b/public/textures/minecraft/pink_banner.png new file mode 100644 index 00000000..23102982 Binary files /dev/null and b/public/textures/minecraft/pink_banner.png differ diff --git a/public/textures/minecraft/pink_bed.png b/public/textures/minecraft/pink_bed.png new file mode 100644 index 00000000..a33e7b52 Binary files /dev/null and b/public/textures/minecraft/pink_bed.png differ diff --git a/public/textures/minecraft/pink_candle.png b/public/textures/minecraft/pink_candle.png new file mode 100644 index 00000000..02afaefd Binary files /dev/null and b/public/textures/minecraft/pink_candle.png differ diff --git a/public/textures/minecraft/pink_carpet.png b/public/textures/minecraft/pink_carpet.png new file mode 100644 index 00000000..abf3f0bd Binary files /dev/null and b/public/textures/minecraft/pink_carpet.png differ diff --git a/public/textures/minecraft/pink_concrete.png b/public/textures/minecraft/pink_concrete.png new file mode 100644 index 00000000..987a122c Binary files /dev/null and b/public/textures/minecraft/pink_concrete.png differ diff --git a/public/textures/minecraft/pink_concrete_powder.png b/public/textures/minecraft/pink_concrete_powder.png new file mode 100644 index 00000000..736a5ed9 Binary files /dev/null and b/public/textures/minecraft/pink_concrete_powder.png differ diff --git a/public/textures/minecraft/pink_dye.png b/public/textures/minecraft/pink_dye.png new file mode 100644 index 00000000..f3ee4ffd Binary files /dev/null and b/public/textures/minecraft/pink_dye.png differ diff --git a/public/textures/minecraft/pink_glazed_terracotta.png b/public/textures/minecraft/pink_glazed_terracotta.png new file mode 100644 index 00000000..4f0a06b9 Binary files /dev/null and b/public/textures/minecraft/pink_glazed_terracotta.png differ diff --git a/public/textures/minecraft/pink_petals.png b/public/textures/minecraft/pink_petals.png new file mode 100644 index 00000000..76093b2a Binary files /dev/null and b/public/textures/minecraft/pink_petals.png differ diff --git a/public/textures/minecraft/pink_shulker_box.png b/public/textures/minecraft/pink_shulker_box.png new file mode 100644 index 00000000..5c192e3e Binary files /dev/null and b/public/textures/minecraft/pink_shulker_box.png differ diff --git a/public/textures/minecraft/pink_stained_glass.png b/public/textures/minecraft/pink_stained_glass.png new file mode 100644 index 00000000..80182680 Binary files /dev/null and b/public/textures/minecraft/pink_stained_glass.png differ diff --git a/public/textures/minecraft/pink_stained_glass_pane.png b/public/textures/minecraft/pink_stained_glass_pane.png new file mode 100644 index 00000000..81a29609 Binary files /dev/null and b/public/textures/minecraft/pink_stained_glass_pane.png differ diff --git a/public/textures/minecraft/pink_terracotta.png b/public/textures/minecraft/pink_terracotta.png new file mode 100644 index 00000000..057fb4d0 Binary files /dev/null and b/public/textures/minecraft/pink_terracotta.png differ diff --git a/public/textures/minecraft/pink_tulip.png b/public/textures/minecraft/pink_tulip.png new file mode 100644 index 00000000..3b782253 Binary files /dev/null and b/public/textures/minecraft/pink_tulip.png differ diff --git a/public/textures/minecraft/pink_wool.png b/public/textures/minecraft/pink_wool.png new file mode 100644 index 00000000..6c8e73e5 Binary files /dev/null and b/public/textures/minecraft/pink_wool.png differ diff --git a/public/textures/minecraft/piston.png b/public/textures/minecraft/piston.png new file mode 100644 index 00000000..ce47d3a5 Binary files /dev/null and b/public/textures/minecraft/piston.png differ diff --git a/public/textures/minecraft/pitcher_plant.png b/public/textures/minecraft/pitcher_plant.png new file mode 100644 index 00000000..c0c9e30b Binary files /dev/null and b/public/textures/minecraft/pitcher_plant.png differ diff --git a/public/textures/minecraft/pitcher_pod.png b/public/textures/minecraft/pitcher_pod.png new file mode 100644 index 00000000..e9709589 Binary files /dev/null and b/public/textures/minecraft/pitcher_pod.png differ diff --git a/public/textures/minecraft/player_head.png b/public/textures/minecraft/player_head.png new file mode 100644 index 00000000..22a4a806 Binary files /dev/null and b/public/textures/minecraft/player_head.png differ diff --git a/public/textures/minecraft/plenty_pottery_sherd.png b/public/textures/minecraft/plenty_pottery_sherd.png new file mode 100644 index 00000000..ddd51a4c Binary files /dev/null and b/public/textures/minecraft/plenty_pottery_sherd.png differ diff --git a/public/textures/minecraft/podzol.png b/public/textures/minecraft/podzol.png new file mode 100644 index 00000000..765ec353 Binary files /dev/null and b/public/textures/minecraft/podzol.png differ diff --git a/public/textures/minecraft/pointed_dripstone.png b/public/textures/minecraft/pointed_dripstone.png new file mode 100644 index 00000000..e704cbe2 Binary files /dev/null and b/public/textures/minecraft/pointed_dripstone.png differ diff --git a/public/textures/minecraft/poisonous_potato.png b/public/textures/minecraft/poisonous_potato.png new file mode 100644 index 00000000..df34a21e Binary files /dev/null and b/public/textures/minecraft/poisonous_potato.png differ diff --git a/public/textures/minecraft/polar_bear_spawn_egg.png b/public/textures/minecraft/polar_bear_spawn_egg.png new file mode 100644 index 00000000..f21a97e4 Binary files /dev/null and b/public/textures/minecraft/polar_bear_spawn_egg.png differ diff --git a/public/textures/minecraft/polished_andesite.png b/public/textures/minecraft/polished_andesite.png new file mode 100644 index 00000000..a7cdb725 Binary files /dev/null and b/public/textures/minecraft/polished_andesite.png differ diff --git a/public/textures/minecraft/polished_andesite_slab.png b/public/textures/minecraft/polished_andesite_slab.png new file mode 100644 index 00000000..bd40532b Binary files /dev/null and b/public/textures/minecraft/polished_andesite_slab.png differ diff --git a/public/textures/minecraft/polished_andesite_stairs.png b/public/textures/minecraft/polished_andesite_stairs.png new file mode 100644 index 00000000..9b13a118 Binary files /dev/null and b/public/textures/minecraft/polished_andesite_stairs.png differ diff --git a/public/textures/minecraft/polished_basalt.png b/public/textures/minecraft/polished_basalt.png new file mode 100644 index 00000000..d32f6981 Binary files /dev/null and b/public/textures/minecraft/polished_basalt.png differ diff --git a/public/textures/minecraft/polished_blackstone.png b/public/textures/minecraft/polished_blackstone.png new file mode 100644 index 00000000..277feb17 Binary files /dev/null and b/public/textures/minecraft/polished_blackstone.png differ diff --git a/public/textures/minecraft/polished_blackstone_brick_slab.png b/public/textures/minecraft/polished_blackstone_brick_slab.png new file mode 100644 index 00000000..90f3f943 Binary files /dev/null and b/public/textures/minecraft/polished_blackstone_brick_slab.png differ diff --git a/public/textures/minecraft/polished_blackstone_brick_stairs.png b/public/textures/minecraft/polished_blackstone_brick_stairs.png new file mode 100644 index 00000000..f4019129 Binary files /dev/null and b/public/textures/minecraft/polished_blackstone_brick_stairs.png differ diff --git a/public/textures/minecraft/polished_blackstone_brick_wall.png b/public/textures/minecraft/polished_blackstone_brick_wall.png new file mode 100644 index 00000000..b569c6a3 Binary files /dev/null and b/public/textures/minecraft/polished_blackstone_brick_wall.png differ diff --git a/public/textures/minecraft/polished_blackstone_bricks.png b/public/textures/minecraft/polished_blackstone_bricks.png new file mode 100644 index 00000000..e92740cd Binary files /dev/null and b/public/textures/minecraft/polished_blackstone_bricks.png differ diff --git a/public/textures/minecraft/polished_blackstone_button.png b/public/textures/minecraft/polished_blackstone_button.png new file mode 100644 index 00000000..36683ab6 Binary files /dev/null and b/public/textures/minecraft/polished_blackstone_button.png differ diff --git a/public/textures/minecraft/polished_blackstone_pressure_plate.png b/public/textures/minecraft/polished_blackstone_pressure_plate.png new file mode 100644 index 00000000..7d118024 Binary files /dev/null and b/public/textures/minecraft/polished_blackstone_pressure_plate.png differ diff --git a/public/textures/minecraft/polished_blackstone_slab.png b/public/textures/minecraft/polished_blackstone_slab.png new file mode 100644 index 00000000..2a8d99ba Binary files /dev/null and b/public/textures/minecraft/polished_blackstone_slab.png differ diff --git a/public/textures/minecraft/polished_blackstone_stairs.png b/public/textures/minecraft/polished_blackstone_stairs.png new file mode 100644 index 00000000..87a84f8e Binary files /dev/null and b/public/textures/minecraft/polished_blackstone_stairs.png differ diff --git a/public/textures/minecraft/polished_blackstone_wall.png b/public/textures/minecraft/polished_blackstone_wall.png new file mode 100644 index 00000000..33e017cb Binary files /dev/null and b/public/textures/minecraft/polished_blackstone_wall.png differ diff --git a/public/textures/minecraft/polished_deepslate.png b/public/textures/minecraft/polished_deepslate.png new file mode 100644 index 00000000..cf2734f0 Binary files /dev/null and b/public/textures/minecraft/polished_deepslate.png differ diff --git a/public/textures/minecraft/polished_deepslate_slab.png b/public/textures/minecraft/polished_deepslate_slab.png new file mode 100644 index 00000000..194b490c Binary files /dev/null and b/public/textures/minecraft/polished_deepslate_slab.png differ diff --git a/public/textures/minecraft/polished_deepslate_stairs.png b/public/textures/minecraft/polished_deepslate_stairs.png new file mode 100644 index 00000000..dba7f374 Binary files /dev/null and b/public/textures/minecraft/polished_deepslate_stairs.png differ diff --git a/public/textures/minecraft/polished_deepslate_wall.png b/public/textures/minecraft/polished_deepslate_wall.png new file mode 100644 index 00000000..e0ec9929 Binary files /dev/null and b/public/textures/minecraft/polished_deepslate_wall.png differ diff --git a/public/textures/minecraft/polished_diorite.png b/public/textures/minecraft/polished_diorite.png new file mode 100644 index 00000000..6177921d Binary files /dev/null and b/public/textures/minecraft/polished_diorite.png differ diff --git a/public/textures/minecraft/polished_diorite_slab.png b/public/textures/minecraft/polished_diorite_slab.png new file mode 100644 index 00000000..adc14058 Binary files /dev/null and b/public/textures/minecraft/polished_diorite_slab.png differ diff --git a/public/textures/minecraft/polished_diorite_stairs.png b/public/textures/minecraft/polished_diorite_stairs.png new file mode 100644 index 00000000..b10f9a48 Binary files /dev/null and b/public/textures/minecraft/polished_diorite_stairs.png differ diff --git a/public/textures/minecraft/polished_granite.png b/public/textures/minecraft/polished_granite.png new file mode 100644 index 00000000..e3746310 Binary files /dev/null and b/public/textures/minecraft/polished_granite.png differ diff --git a/public/textures/minecraft/polished_granite_slab.png b/public/textures/minecraft/polished_granite_slab.png new file mode 100644 index 00000000..3438e87f Binary files /dev/null and b/public/textures/minecraft/polished_granite_slab.png differ diff --git a/public/textures/minecraft/polished_granite_stairs.png b/public/textures/minecraft/polished_granite_stairs.png new file mode 100644 index 00000000..d738d1ce Binary files /dev/null and b/public/textures/minecraft/polished_granite_stairs.png differ diff --git a/public/textures/minecraft/polished_tuff.png b/public/textures/minecraft/polished_tuff.png new file mode 100644 index 00000000..ce6d839b Binary files /dev/null and b/public/textures/minecraft/polished_tuff.png differ diff --git a/public/textures/minecraft/polished_tuff_slab.png b/public/textures/minecraft/polished_tuff_slab.png new file mode 100644 index 00000000..83166041 Binary files /dev/null and b/public/textures/minecraft/polished_tuff_slab.png differ diff --git a/public/textures/minecraft/polished_tuff_stairs.png b/public/textures/minecraft/polished_tuff_stairs.png new file mode 100644 index 00000000..d6e1107a Binary files /dev/null and b/public/textures/minecraft/polished_tuff_stairs.png differ diff --git a/public/textures/minecraft/polished_tuff_wall.png b/public/textures/minecraft/polished_tuff_wall.png new file mode 100644 index 00000000..34af3d31 Binary files /dev/null and b/public/textures/minecraft/polished_tuff_wall.png differ diff --git a/public/textures/minecraft/popped_chorus_fruit.png b/public/textures/minecraft/popped_chorus_fruit.png new file mode 100644 index 00000000..d385971c Binary files /dev/null and b/public/textures/minecraft/popped_chorus_fruit.png differ diff --git a/public/textures/minecraft/poppy.png b/public/textures/minecraft/poppy.png new file mode 100644 index 00000000..70395588 Binary files /dev/null and b/public/textures/minecraft/poppy.png differ diff --git a/public/textures/minecraft/porkchop.png b/public/textures/minecraft/porkchop.png new file mode 100644 index 00000000..51b29934 Binary files /dev/null and b/public/textures/minecraft/porkchop.png differ diff --git a/public/textures/minecraft/potato.png b/public/textures/minecraft/potato.png new file mode 100644 index 00000000..160014f9 Binary files /dev/null and b/public/textures/minecraft/potato.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__berserking'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__berserking'}}.png new file mode 100644 index 00000000..ae566947 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__berserking'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__long_berserking'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__long_berserking'}}.png new file mode 100644 index 00000000..ae566947 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__long_berserking'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__strong_berserking'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__strong_berserking'}}.png new file mode 100644 index 00000000..ae566947 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__strong_berserking'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__awkward'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__awkward'}}.png new file mode 100644 index 00000000..71f9ca21 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__awkward'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__fire_resistance'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__fire_resistance'}}.png new file mode 100644 index 00000000..65d1a536 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__fire_resistance'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__harming'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__harming'}}.png new file mode 100644 index 00000000..eacafc1a Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__harming'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__healing'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__healing'}}.png new file mode 100644 index 00000000..dad8741f Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__healing'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__infested'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__infested'}}.png new file mode 100644 index 00000000..5175f7e2 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__infested'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__invisibility'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__invisibility'}}.png new file mode 100644 index 00000000..99ffb872 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__invisibility'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__leaping'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__leaping'}}.png new file mode 100644 index 00000000..a61a183b Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__leaping'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_fire_resistance'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_fire_resistance'}}.png new file mode 100644 index 00000000..65d1a536 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_fire_resistance'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_invisibility'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_invisibility'}}.png new file mode 100644 index 00000000..99ffb872 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_invisibility'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_leaping'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_leaping'}}.png new file mode 100644 index 00000000..a61a183b Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_leaping'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_night_vision'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_night_vision'}}.png new file mode 100644 index 00000000..be05eb59 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_night_vision'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_poison'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_poison'}}.png new file mode 100644 index 00000000..82603069 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_poison'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_regeneration'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_regeneration'}}.png new file mode 100644 index 00000000..1812fdf8 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_regeneration'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_slow_falling'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_slow_falling'}}.png new file mode 100644 index 00000000..1e33135a Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_slow_falling'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_slowness'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_slowness'}}.png new file mode 100644 index 00000000..74e444b1 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_slowness'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_strength'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_strength'}}.png new file mode 100644 index 00000000..baaa7d03 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_strength'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_swiftness'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_swiftness'}}.png new file mode 100644 index 00000000..302e85fe Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_swiftness'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_turtle_master'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_turtle_master'}}.png new file mode 100644 index 00000000..0dbf9070 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_turtle_master'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_water_breathing'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_water_breathing'}}.png new file mode 100644 index 00000000..d74f51d0 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_water_breathing'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_weakness'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_weakness'}}.png new file mode 100644 index 00000000..6edb9f29 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__long_weakness'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__luck'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__luck'}}.png new file mode 100644 index 00000000..3e012156 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__luck'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__mundane'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__mundane'}}.png new file mode 100644 index 00000000..71f9ca21 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__mundane'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__night_vision'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__night_vision'}}.png new file mode 100644 index 00000000..be05eb59 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__night_vision'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__oozing'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__oozing'}}.png new file mode 100644 index 00000000..e2d42780 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__oozing'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__poison'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__poison'}}.png new file mode 100644 index 00000000..82603069 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__poison'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__regeneration'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__regeneration'}}.png new file mode 100644 index 00000000..1812fdf8 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__regeneration'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__slow_falling'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__slow_falling'}}.png new file mode 100644 index 00000000..1e33135a Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__slow_falling'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__slowness'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__slowness'}}.png new file mode 100644 index 00000000..74e444b1 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__slowness'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strength'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strength'}}.png new file mode 100644 index 00000000..baaa7d03 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strength'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_harming'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_harming'}}.png new file mode 100644 index 00000000..eacafc1a Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_harming'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_healing'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_healing'}}.png new file mode 100644 index 00000000..dad8741f Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_healing'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_leaping'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_leaping'}}.png new file mode 100644 index 00000000..a61a183b Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_leaping'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_poison'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_poison'}}.png new file mode 100644 index 00000000..82603069 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_poison'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_regeneration'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_regeneration'}}.png new file mode 100644 index 00000000..1812fdf8 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_regeneration'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_slowness'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_slowness'}}.png new file mode 100644 index 00000000..74e444b1 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_slowness'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_strength'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_strength'}}.png new file mode 100644 index 00000000..baaa7d03 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_strength'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_swiftness'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_swiftness'}}.png new file mode 100644 index 00000000..302e85fe Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_swiftness'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_turtle_master'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_turtle_master'}}.png new file mode 100644 index 00000000..18bae0f0 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_turtle_master'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__swiftness'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__swiftness'}}.png new file mode 100644 index 00000000..302e85fe Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__swiftness'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__thick'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__thick'}}.png new file mode 100644 index 00000000..71f9ca21 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__thick'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__turtle_master'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__turtle_master'}}.png new file mode 100644 index 00000000..0dbf9070 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__turtle_master'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__water'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__water'}}.png new file mode 100644 index 00000000..71f9ca21 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__water'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__water_breathing'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__water_breathing'}}.png new file mode 100644 index 00000000..d74f51d0 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__water_breathing'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__weakness'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__weakness'}}.png new file mode 100644 index 00000000..6edb9f29 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__weakness'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__weaving'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__weaving'}}.png new file mode 100644 index 00000000..b38130d4 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__weaving'}}.png differ diff --git a/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__wind_charged'}}.png b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__wind_charged'}}.png new file mode 100644 index 00000000..018b5690 Binary files /dev/null and b/public/textures/minecraft/potion__{'minecraft__potion_contents'__{potion__'minecraft__wind_charged'}}.png differ diff --git a/public/textures/minecraft/powder_snow_bucket.png b/public/textures/minecraft/powder_snow_bucket.png new file mode 100644 index 00000000..b7a40736 Binary files /dev/null and b/public/textures/minecraft/powder_snow_bucket.png differ diff --git a/public/textures/minecraft/powered_rail.png b/public/textures/minecraft/powered_rail.png new file mode 100644 index 00000000..68835c76 Binary files /dev/null and b/public/textures/minecraft/powered_rail.png differ diff --git a/public/textures/minecraft/prismarine.png b/public/textures/minecraft/prismarine.png new file mode 100644 index 00000000..a986faf7 Binary files /dev/null and b/public/textures/minecraft/prismarine.png differ diff --git a/public/textures/minecraft/prismarine_brick_slab.png b/public/textures/minecraft/prismarine_brick_slab.png new file mode 100644 index 00000000..c8b9a343 Binary files /dev/null and b/public/textures/minecraft/prismarine_brick_slab.png differ diff --git a/public/textures/minecraft/prismarine_brick_stairs.png b/public/textures/minecraft/prismarine_brick_stairs.png new file mode 100644 index 00000000..6c32e58b Binary files /dev/null and b/public/textures/minecraft/prismarine_brick_stairs.png differ diff --git a/public/textures/minecraft/prismarine_bricks.png b/public/textures/minecraft/prismarine_bricks.png new file mode 100644 index 00000000..b8080dd7 Binary files /dev/null and b/public/textures/minecraft/prismarine_bricks.png differ diff --git a/public/textures/minecraft/prismarine_crystals.png b/public/textures/minecraft/prismarine_crystals.png new file mode 100644 index 00000000..8c43f696 Binary files /dev/null and b/public/textures/minecraft/prismarine_crystals.png differ diff --git a/public/textures/minecraft/prismarine_shard.png b/public/textures/minecraft/prismarine_shard.png new file mode 100644 index 00000000..f9421605 Binary files /dev/null and b/public/textures/minecraft/prismarine_shard.png differ diff --git a/public/textures/minecraft/prismarine_slab.png b/public/textures/minecraft/prismarine_slab.png new file mode 100644 index 00000000..b5b8cf40 Binary files /dev/null and b/public/textures/minecraft/prismarine_slab.png differ diff --git a/public/textures/minecraft/prismarine_stairs.png b/public/textures/minecraft/prismarine_stairs.png new file mode 100644 index 00000000..4b86c756 Binary files /dev/null and b/public/textures/minecraft/prismarine_stairs.png differ diff --git a/public/textures/minecraft/prismarine_wall.png b/public/textures/minecraft/prismarine_wall.png new file mode 100644 index 00000000..5209ed69 Binary files /dev/null and b/public/textures/minecraft/prismarine_wall.png differ diff --git a/public/textures/minecraft/prize_pottery_sherd.png b/public/textures/minecraft/prize_pottery_sherd.png new file mode 100644 index 00000000..1cb52199 Binary files /dev/null and b/public/textures/minecraft/prize_pottery_sherd.png differ diff --git a/public/textures/minecraft/pufferfish.png b/public/textures/minecraft/pufferfish.png new file mode 100644 index 00000000..1fcae9c1 Binary files /dev/null and b/public/textures/minecraft/pufferfish.png differ diff --git a/public/textures/minecraft/pufferfish_bucket.png b/public/textures/minecraft/pufferfish_bucket.png new file mode 100644 index 00000000..67f3bb31 Binary files /dev/null and b/public/textures/minecraft/pufferfish_bucket.png differ diff --git a/public/textures/minecraft/pufferfish_spawn_egg.png b/public/textures/minecraft/pufferfish_spawn_egg.png new file mode 100644 index 00000000..17e54ab7 Binary files /dev/null and b/public/textures/minecraft/pufferfish_spawn_egg.png differ diff --git a/public/textures/minecraft/pumpkin.png b/public/textures/minecraft/pumpkin.png new file mode 100644 index 00000000..24ad3fe5 Binary files /dev/null and b/public/textures/minecraft/pumpkin.png differ diff --git a/public/textures/minecraft/pumpkin_pie.png b/public/textures/minecraft/pumpkin_pie.png new file mode 100644 index 00000000..10a445c5 Binary files /dev/null and b/public/textures/minecraft/pumpkin_pie.png differ diff --git a/public/textures/minecraft/pumpkin_seeds.png b/public/textures/minecraft/pumpkin_seeds.png new file mode 100644 index 00000000..665f1ff3 Binary files /dev/null and b/public/textures/minecraft/pumpkin_seeds.png differ diff --git a/public/textures/minecraft/purple_banner.png b/public/textures/minecraft/purple_banner.png new file mode 100644 index 00000000..64bbc07a Binary files /dev/null and b/public/textures/minecraft/purple_banner.png differ diff --git a/public/textures/minecraft/purple_bed.png b/public/textures/minecraft/purple_bed.png new file mode 100644 index 00000000..48aa55be Binary files /dev/null and b/public/textures/minecraft/purple_bed.png differ diff --git a/public/textures/minecraft/purple_candle.png b/public/textures/minecraft/purple_candle.png new file mode 100644 index 00000000..19cca64c Binary files /dev/null and b/public/textures/minecraft/purple_candle.png differ diff --git a/public/textures/minecraft/purple_carpet.png b/public/textures/minecraft/purple_carpet.png new file mode 100644 index 00000000..1ec8651b Binary files /dev/null and b/public/textures/minecraft/purple_carpet.png differ diff --git a/public/textures/minecraft/purple_concrete.png b/public/textures/minecraft/purple_concrete.png new file mode 100644 index 00000000..6a36cf0e Binary files /dev/null and b/public/textures/minecraft/purple_concrete.png differ diff --git a/public/textures/minecraft/purple_concrete_powder.png b/public/textures/minecraft/purple_concrete_powder.png new file mode 100644 index 00000000..7159b35e Binary files /dev/null and b/public/textures/minecraft/purple_concrete_powder.png differ diff --git a/public/textures/minecraft/purple_dye.png b/public/textures/minecraft/purple_dye.png new file mode 100644 index 00000000..37439aee Binary files /dev/null and b/public/textures/minecraft/purple_dye.png differ diff --git a/public/textures/minecraft/purple_glazed_terracotta.png b/public/textures/minecraft/purple_glazed_terracotta.png new file mode 100644 index 00000000..bf44eb88 Binary files /dev/null and b/public/textures/minecraft/purple_glazed_terracotta.png differ diff --git a/public/textures/minecraft/purple_shulker_box.png b/public/textures/minecraft/purple_shulker_box.png new file mode 100644 index 00000000..b4d8c460 Binary files /dev/null and b/public/textures/minecraft/purple_shulker_box.png differ diff --git a/public/textures/minecraft/purple_stained_glass.png b/public/textures/minecraft/purple_stained_glass.png new file mode 100644 index 00000000..4baa76c3 Binary files /dev/null and b/public/textures/minecraft/purple_stained_glass.png differ diff --git a/public/textures/minecraft/purple_stained_glass_pane.png b/public/textures/minecraft/purple_stained_glass_pane.png new file mode 100644 index 00000000..955481bb Binary files /dev/null and b/public/textures/minecraft/purple_stained_glass_pane.png differ diff --git a/public/textures/minecraft/purple_terracotta.png b/public/textures/minecraft/purple_terracotta.png new file mode 100644 index 00000000..3c7f7924 Binary files /dev/null and b/public/textures/minecraft/purple_terracotta.png differ diff --git a/public/textures/minecraft/purple_wool.png b/public/textures/minecraft/purple_wool.png new file mode 100644 index 00000000..d3aa18e5 Binary files /dev/null and b/public/textures/minecraft/purple_wool.png differ diff --git a/public/textures/minecraft/purpur_block.png b/public/textures/minecraft/purpur_block.png new file mode 100644 index 00000000..f552ffab Binary files /dev/null and b/public/textures/minecraft/purpur_block.png differ diff --git a/public/textures/minecraft/purpur_pillar.png b/public/textures/minecraft/purpur_pillar.png new file mode 100644 index 00000000..4bbfa34a Binary files /dev/null and b/public/textures/minecraft/purpur_pillar.png differ diff --git a/public/textures/minecraft/purpur_slab.png b/public/textures/minecraft/purpur_slab.png new file mode 100644 index 00000000..1bc87235 Binary files /dev/null and b/public/textures/minecraft/purpur_slab.png differ diff --git a/public/textures/minecraft/purpur_stairs.png b/public/textures/minecraft/purpur_stairs.png new file mode 100644 index 00000000..08a4f24e Binary files /dev/null and b/public/textures/minecraft/purpur_stairs.png differ diff --git a/public/textures/minecraft/quartz.png b/public/textures/minecraft/quartz.png new file mode 100644 index 00000000..3f67a923 Binary files /dev/null and b/public/textures/minecraft/quartz.png differ diff --git a/public/textures/minecraft/quartz_block.png b/public/textures/minecraft/quartz_block.png new file mode 100644 index 00000000..3853140f Binary files /dev/null and b/public/textures/minecraft/quartz_block.png differ diff --git a/public/textures/minecraft/quartz_bricks.png b/public/textures/minecraft/quartz_bricks.png new file mode 100644 index 00000000..a4856c5c Binary files /dev/null and b/public/textures/minecraft/quartz_bricks.png differ diff --git a/public/textures/minecraft/quartz_pillar.png b/public/textures/minecraft/quartz_pillar.png new file mode 100644 index 00000000..25d99ca0 Binary files /dev/null and b/public/textures/minecraft/quartz_pillar.png differ diff --git a/public/textures/minecraft/quartz_slab.png b/public/textures/minecraft/quartz_slab.png new file mode 100644 index 00000000..ec63bd7a Binary files /dev/null and b/public/textures/minecraft/quartz_slab.png differ diff --git a/public/textures/minecraft/quartz_stairs.png b/public/textures/minecraft/quartz_stairs.png new file mode 100644 index 00000000..32b492f9 Binary files /dev/null and b/public/textures/minecraft/quartz_stairs.png differ diff --git a/public/textures/minecraft/rabbit.png b/public/textures/minecraft/rabbit.png new file mode 100644 index 00000000..39765b1b Binary files /dev/null and b/public/textures/minecraft/rabbit.png differ diff --git a/public/textures/minecraft/rabbit_foot.png b/public/textures/minecraft/rabbit_foot.png new file mode 100644 index 00000000..3ccbe7fd Binary files /dev/null and b/public/textures/minecraft/rabbit_foot.png differ diff --git a/public/textures/minecraft/rabbit_hide.png b/public/textures/minecraft/rabbit_hide.png new file mode 100644 index 00000000..eeba0e8b Binary files /dev/null and b/public/textures/minecraft/rabbit_hide.png differ diff --git a/public/textures/minecraft/rabbit_spawn_egg.png b/public/textures/minecraft/rabbit_spawn_egg.png new file mode 100644 index 00000000..ee38e858 Binary files /dev/null and b/public/textures/minecraft/rabbit_spawn_egg.png differ diff --git a/public/textures/minecraft/rabbit_stew.png b/public/textures/minecraft/rabbit_stew.png new file mode 100644 index 00000000..9f6451fd Binary files /dev/null and b/public/textures/minecraft/rabbit_stew.png differ diff --git a/public/textures/minecraft/rail.png b/public/textures/minecraft/rail.png new file mode 100644 index 00000000..e26b6122 Binary files /dev/null and b/public/textures/minecraft/rail.png differ diff --git a/public/textures/minecraft/raiser_armor_trim_smithing_template.png b/public/textures/minecraft/raiser_armor_trim_smithing_template.png new file mode 100644 index 00000000..03add4ba Binary files /dev/null and b/public/textures/minecraft/raiser_armor_trim_smithing_template.png differ diff --git a/public/textures/minecraft/ravager_spawn_egg.png b/public/textures/minecraft/ravager_spawn_egg.png new file mode 100644 index 00000000..85ea7dd6 Binary files /dev/null and b/public/textures/minecraft/ravager_spawn_egg.png differ diff --git a/public/textures/minecraft/raw_copper.png b/public/textures/minecraft/raw_copper.png new file mode 100644 index 00000000..0f2f6c14 Binary files /dev/null and b/public/textures/minecraft/raw_copper.png differ diff --git a/public/textures/minecraft/raw_copper_block.png b/public/textures/minecraft/raw_copper_block.png new file mode 100644 index 00000000..b428bc68 Binary files /dev/null and b/public/textures/minecraft/raw_copper_block.png differ diff --git a/public/textures/minecraft/raw_gold.png b/public/textures/minecraft/raw_gold.png new file mode 100644 index 00000000..ba68af65 Binary files /dev/null and b/public/textures/minecraft/raw_gold.png differ diff --git a/public/textures/minecraft/raw_gold_block.png b/public/textures/minecraft/raw_gold_block.png new file mode 100644 index 00000000..709551dd Binary files /dev/null and b/public/textures/minecraft/raw_gold_block.png differ diff --git a/public/textures/minecraft/raw_iron.png b/public/textures/minecraft/raw_iron.png new file mode 100644 index 00000000..fd12c16e Binary files /dev/null and b/public/textures/minecraft/raw_iron.png differ diff --git a/public/textures/minecraft/raw_iron_block.png b/public/textures/minecraft/raw_iron_block.png new file mode 100644 index 00000000..8c757b82 Binary files /dev/null and b/public/textures/minecraft/raw_iron_block.png differ diff --git a/public/textures/minecraft/recovery_compass.png b/public/textures/minecraft/recovery_compass.png new file mode 100644 index 00000000..99dbd8e4 Binary files /dev/null and b/public/textures/minecraft/recovery_compass.png differ diff --git a/public/textures/minecraft/red_banner.png b/public/textures/minecraft/red_banner.png new file mode 100644 index 00000000..14076c07 Binary files /dev/null and b/public/textures/minecraft/red_banner.png differ diff --git a/public/textures/minecraft/red_bed.png b/public/textures/minecraft/red_bed.png new file mode 100644 index 00000000..01ac7e3e Binary files /dev/null and b/public/textures/minecraft/red_bed.png differ diff --git a/public/textures/minecraft/red_candle.png b/public/textures/minecraft/red_candle.png new file mode 100644 index 00000000..77badcf0 Binary files /dev/null and b/public/textures/minecraft/red_candle.png differ diff --git a/public/textures/minecraft/red_carpet.png b/public/textures/minecraft/red_carpet.png new file mode 100644 index 00000000..72302d0c Binary files /dev/null and b/public/textures/minecraft/red_carpet.png differ diff --git a/public/textures/minecraft/red_concrete.png b/public/textures/minecraft/red_concrete.png new file mode 100644 index 00000000..ea682ee5 Binary files /dev/null and b/public/textures/minecraft/red_concrete.png differ diff --git a/public/textures/minecraft/red_concrete_powder.png b/public/textures/minecraft/red_concrete_powder.png new file mode 100644 index 00000000..fcd94909 Binary files /dev/null and b/public/textures/minecraft/red_concrete_powder.png differ diff --git a/public/textures/minecraft/red_dye.png b/public/textures/minecraft/red_dye.png new file mode 100644 index 00000000..ce838ee6 Binary files /dev/null and b/public/textures/minecraft/red_dye.png differ diff --git a/public/textures/minecraft/red_glazed_terracotta.png b/public/textures/minecraft/red_glazed_terracotta.png new file mode 100644 index 00000000..593db38e Binary files /dev/null and b/public/textures/minecraft/red_glazed_terracotta.png differ diff --git a/public/textures/minecraft/red_mushroom.png b/public/textures/minecraft/red_mushroom.png new file mode 100644 index 00000000..85b56981 Binary files /dev/null and b/public/textures/minecraft/red_mushroom.png differ diff --git a/public/textures/minecraft/red_mushroom_block.png b/public/textures/minecraft/red_mushroom_block.png new file mode 100644 index 00000000..ed8dc0f7 Binary files /dev/null and b/public/textures/minecraft/red_mushroom_block.png differ diff --git a/public/textures/minecraft/red_nether_brick_slab.png b/public/textures/minecraft/red_nether_brick_slab.png new file mode 100644 index 00000000..1d2e9663 Binary files /dev/null and b/public/textures/minecraft/red_nether_brick_slab.png differ diff --git a/public/textures/minecraft/red_nether_brick_stairs.png b/public/textures/minecraft/red_nether_brick_stairs.png new file mode 100644 index 00000000..a98d3534 Binary files /dev/null and b/public/textures/minecraft/red_nether_brick_stairs.png differ diff --git a/public/textures/minecraft/red_nether_brick_wall.png b/public/textures/minecraft/red_nether_brick_wall.png new file mode 100644 index 00000000..8753f87d Binary files /dev/null and b/public/textures/minecraft/red_nether_brick_wall.png differ diff --git a/public/textures/minecraft/red_nether_bricks.png b/public/textures/minecraft/red_nether_bricks.png new file mode 100644 index 00000000..784267a0 Binary files /dev/null and b/public/textures/minecraft/red_nether_bricks.png differ diff --git a/public/textures/minecraft/red_sand.png b/public/textures/minecraft/red_sand.png new file mode 100644 index 00000000..688d3266 Binary files /dev/null and b/public/textures/minecraft/red_sand.png differ diff --git a/public/textures/minecraft/red_sandstone.png b/public/textures/minecraft/red_sandstone.png new file mode 100644 index 00000000..35a6d0d5 Binary files /dev/null and b/public/textures/minecraft/red_sandstone.png differ diff --git a/public/textures/minecraft/red_sandstone_slab.png b/public/textures/minecraft/red_sandstone_slab.png new file mode 100644 index 00000000..767f26ef Binary files /dev/null and b/public/textures/minecraft/red_sandstone_slab.png differ diff --git a/public/textures/minecraft/red_sandstone_stairs.png b/public/textures/minecraft/red_sandstone_stairs.png new file mode 100644 index 00000000..775cc142 Binary files /dev/null and b/public/textures/minecraft/red_sandstone_stairs.png differ diff --git a/public/textures/minecraft/red_sandstone_wall.png b/public/textures/minecraft/red_sandstone_wall.png new file mode 100644 index 00000000..a4f218f3 Binary files /dev/null and b/public/textures/minecraft/red_sandstone_wall.png differ diff --git a/public/textures/minecraft/red_shulker_box.png b/public/textures/minecraft/red_shulker_box.png new file mode 100644 index 00000000..a6ab07c1 Binary files /dev/null and b/public/textures/minecraft/red_shulker_box.png differ diff --git a/public/textures/minecraft/red_stained_glass.png b/public/textures/minecraft/red_stained_glass.png new file mode 100644 index 00000000..7b10eaec Binary files /dev/null and b/public/textures/minecraft/red_stained_glass.png differ diff --git a/public/textures/minecraft/red_stained_glass_pane.png b/public/textures/minecraft/red_stained_glass_pane.png new file mode 100644 index 00000000..c3caf8fe Binary files /dev/null and b/public/textures/minecraft/red_stained_glass_pane.png differ diff --git a/public/textures/minecraft/red_terracotta.png b/public/textures/minecraft/red_terracotta.png new file mode 100644 index 00000000..65f14f21 Binary files /dev/null and b/public/textures/minecraft/red_terracotta.png differ diff --git a/public/textures/minecraft/red_tulip.png b/public/textures/minecraft/red_tulip.png new file mode 100644 index 00000000..eba91356 Binary files /dev/null and b/public/textures/minecraft/red_tulip.png differ diff --git a/public/textures/minecraft/red_wool.png b/public/textures/minecraft/red_wool.png new file mode 100644 index 00000000..265726ce Binary files /dev/null and b/public/textures/minecraft/red_wool.png differ diff --git a/public/textures/minecraft/redstone.png b/public/textures/minecraft/redstone.png new file mode 100644 index 00000000..bace7f60 Binary files /dev/null and b/public/textures/minecraft/redstone.png differ diff --git a/public/textures/minecraft/redstone_block.png b/public/textures/minecraft/redstone_block.png new file mode 100644 index 00000000..db1e8982 Binary files /dev/null and b/public/textures/minecraft/redstone_block.png differ diff --git a/public/textures/minecraft/redstone_lamp.png b/public/textures/minecraft/redstone_lamp.png new file mode 100644 index 00000000..df98b379 Binary files /dev/null and b/public/textures/minecraft/redstone_lamp.png differ diff --git a/public/textures/minecraft/redstone_ore.png b/public/textures/minecraft/redstone_ore.png new file mode 100644 index 00000000..a5b38f24 Binary files /dev/null and b/public/textures/minecraft/redstone_ore.png differ diff --git a/public/textures/minecraft/redstone_torch.png b/public/textures/minecraft/redstone_torch.png new file mode 100644 index 00000000..7533d83c Binary files /dev/null and b/public/textures/minecraft/redstone_torch.png differ diff --git a/public/textures/minecraft/reinforced_deepslate.png b/public/textures/minecraft/reinforced_deepslate.png new file mode 100644 index 00000000..cb7b7ad7 Binary files /dev/null and b/public/textures/minecraft/reinforced_deepslate.png differ diff --git a/public/textures/minecraft/repeater.png b/public/textures/minecraft/repeater.png new file mode 100644 index 00000000..8683101c Binary files /dev/null and b/public/textures/minecraft/repeater.png differ diff --git a/public/textures/minecraft/respawn_anchor.png b/public/textures/minecraft/respawn_anchor.png new file mode 100644 index 00000000..715b3e9f Binary files /dev/null and b/public/textures/minecraft/respawn_anchor.png differ diff --git a/public/textures/minecraft/rib_armor_trim_smithing_template.png b/public/textures/minecraft/rib_armor_trim_smithing_template.png new file mode 100644 index 00000000..58d9b9b4 Binary files /dev/null and b/public/textures/minecraft/rib_armor_trim_smithing_template.png differ diff --git a/public/textures/minecraft/rooted_dirt.png b/public/textures/minecraft/rooted_dirt.png new file mode 100644 index 00000000..240c70cd Binary files /dev/null and b/public/textures/minecraft/rooted_dirt.png differ diff --git a/public/textures/minecraft/rose_bush.png b/public/textures/minecraft/rose_bush.png new file mode 100644 index 00000000..90813b1b Binary files /dev/null and b/public/textures/minecraft/rose_bush.png differ diff --git a/public/textures/minecraft/rotten_flesh.png b/public/textures/minecraft/rotten_flesh.png new file mode 100644 index 00000000..30577c1a Binary files /dev/null and b/public/textures/minecraft/rotten_flesh.png differ diff --git a/public/textures/minecraft/saddle.png b/public/textures/minecraft/saddle.png new file mode 100644 index 00000000..cde49b64 Binary files /dev/null and b/public/textures/minecraft/saddle.png differ diff --git a/public/textures/minecraft/salmon.png b/public/textures/minecraft/salmon.png new file mode 100644 index 00000000..54650057 Binary files /dev/null and b/public/textures/minecraft/salmon.png differ diff --git a/public/textures/minecraft/salmon_bucket.png b/public/textures/minecraft/salmon_bucket.png new file mode 100644 index 00000000..208ebf59 Binary files /dev/null and b/public/textures/minecraft/salmon_bucket.png differ diff --git a/public/textures/minecraft/salmon_spawn_egg.png b/public/textures/minecraft/salmon_spawn_egg.png new file mode 100644 index 00000000..34f9cd2f Binary files /dev/null and b/public/textures/minecraft/salmon_spawn_egg.png differ diff --git a/public/textures/minecraft/sand.png b/public/textures/minecraft/sand.png new file mode 100644 index 00000000..a7c01859 Binary files /dev/null and b/public/textures/minecraft/sand.png differ diff --git a/public/textures/minecraft/sandstone.png b/public/textures/minecraft/sandstone.png new file mode 100644 index 00000000..9c9f48ba Binary files /dev/null and b/public/textures/minecraft/sandstone.png differ diff --git a/public/textures/minecraft/sandstone_slab.png b/public/textures/minecraft/sandstone_slab.png new file mode 100644 index 00000000..be97760f Binary files /dev/null and b/public/textures/minecraft/sandstone_slab.png differ diff --git a/public/textures/minecraft/sandstone_stairs.png b/public/textures/minecraft/sandstone_stairs.png new file mode 100644 index 00000000..9d661bee Binary files /dev/null and b/public/textures/minecraft/sandstone_stairs.png differ diff --git a/public/textures/minecraft/sandstone_wall.png b/public/textures/minecraft/sandstone_wall.png new file mode 100644 index 00000000..1f8a8063 Binary files /dev/null and b/public/textures/minecraft/sandstone_wall.png differ diff --git a/public/textures/minecraft/scaffolding.png b/public/textures/minecraft/scaffolding.png new file mode 100644 index 00000000..c1fa5407 Binary files /dev/null and b/public/textures/minecraft/scaffolding.png differ diff --git a/public/textures/minecraft/scrape_pottery_sherd.png b/public/textures/minecraft/scrape_pottery_sherd.png new file mode 100644 index 00000000..a7823d90 Binary files /dev/null and b/public/textures/minecraft/scrape_pottery_sherd.png differ diff --git a/public/textures/minecraft/sculk.png b/public/textures/minecraft/sculk.png new file mode 100644 index 00000000..0faaebb5 Binary files /dev/null and b/public/textures/minecraft/sculk.png differ diff --git a/public/textures/minecraft/sculk_catalyst.png b/public/textures/minecraft/sculk_catalyst.png new file mode 100644 index 00000000..8009c443 Binary files /dev/null and b/public/textures/minecraft/sculk_catalyst.png differ diff --git a/public/textures/minecraft/sculk_sensor.png b/public/textures/minecraft/sculk_sensor.png new file mode 100644 index 00000000..c1007bec Binary files /dev/null and b/public/textures/minecraft/sculk_sensor.png differ diff --git a/public/textures/minecraft/sculk_shrieker.png b/public/textures/minecraft/sculk_shrieker.png new file mode 100644 index 00000000..68cca975 Binary files /dev/null and b/public/textures/minecraft/sculk_shrieker.png differ diff --git a/public/textures/minecraft/sculk_vein.png b/public/textures/minecraft/sculk_vein.png new file mode 100644 index 00000000..18eff473 Binary files /dev/null and b/public/textures/minecraft/sculk_vein.png differ diff --git a/public/textures/minecraft/sea_lantern.png b/public/textures/minecraft/sea_lantern.png new file mode 100644 index 00000000..26ad1115 Binary files /dev/null and b/public/textures/minecraft/sea_lantern.png differ diff --git a/public/textures/minecraft/sea_pickle.png b/public/textures/minecraft/sea_pickle.png new file mode 100644 index 00000000..b1c8f079 Binary files /dev/null and b/public/textures/minecraft/sea_pickle.png differ diff --git a/public/textures/minecraft/seagrass.png b/public/textures/minecraft/seagrass.png new file mode 100644 index 00000000..30401c1c Binary files /dev/null and b/public/textures/minecraft/seagrass.png differ diff --git a/public/textures/minecraft/sentry_armor_trim_smithing_template.png b/public/textures/minecraft/sentry_armor_trim_smithing_template.png new file mode 100644 index 00000000..08e5652b Binary files /dev/null and b/public/textures/minecraft/sentry_armor_trim_smithing_template.png differ diff --git a/public/textures/minecraft/shaper_armor_trim_smithing_template.png b/public/textures/minecraft/shaper_armor_trim_smithing_template.png new file mode 100644 index 00000000..dd8e3ebe Binary files /dev/null and b/public/textures/minecraft/shaper_armor_trim_smithing_template.png differ diff --git a/public/textures/minecraft/sheaf_pottery_sherd.png b/public/textures/minecraft/sheaf_pottery_sherd.png new file mode 100644 index 00000000..cb3623b7 Binary files /dev/null and b/public/textures/minecraft/sheaf_pottery_sherd.png differ diff --git a/public/textures/minecraft/shears.png b/public/textures/minecraft/shears.png new file mode 100644 index 00000000..d61ede2a Binary files /dev/null and b/public/textures/minecraft/shears.png differ diff --git a/public/textures/minecraft/sheep_spawn_egg.png b/public/textures/minecraft/sheep_spawn_egg.png new file mode 100644 index 00000000..0d7f891f Binary files /dev/null and b/public/textures/minecraft/sheep_spawn_egg.png differ diff --git a/public/textures/minecraft/shelter_pottery_sherd.png b/public/textures/minecraft/shelter_pottery_sherd.png new file mode 100644 index 00000000..05c11655 Binary files /dev/null and b/public/textures/minecraft/shelter_pottery_sherd.png differ diff --git a/public/textures/minecraft/shield.png b/public/textures/minecraft/shield.png new file mode 100644 index 00000000..23132fa0 Binary files /dev/null and b/public/textures/minecraft/shield.png differ diff --git a/public/textures/minecraft/short_grass.png b/public/textures/minecraft/short_grass.png new file mode 100644 index 00000000..1ac87245 Binary files /dev/null and b/public/textures/minecraft/short_grass.png differ diff --git a/public/textures/minecraft/shroomlight.png b/public/textures/minecraft/shroomlight.png new file mode 100644 index 00000000..b710463c Binary files /dev/null and b/public/textures/minecraft/shroomlight.png differ diff --git a/public/textures/minecraft/shulker_box.png b/public/textures/minecraft/shulker_box.png new file mode 100644 index 00000000..4d28467d Binary files /dev/null and b/public/textures/minecraft/shulker_box.png differ diff --git a/public/textures/minecraft/shulker_shell.png b/public/textures/minecraft/shulker_shell.png new file mode 100644 index 00000000..82586520 Binary files /dev/null and b/public/textures/minecraft/shulker_shell.png differ diff --git a/public/textures/minecraft/shulker_spawn_egg.png b/public/textures/minecraft/shulker_spawn_egg.png new file mode 100644 index 00000000..a60d2895 Binary files /dev/null and b/public/textures/minecraft/shulker_spawn_egg.png differ diff --git a/public/textures/minecraft/silence_armor_trim_smithing_template.png b/public/textures/minecraft/silence_armor_trim_smithing_template.png new file mode 100644 index 00000000..66579589 Binary files /dev/null and b/public/textures/minecraft/silence_armor_trim_smithing_template.png differ diff --git a/public/textures/minecraft/silverfish_spawn_egg.png b/public/textures/minecraft/silverfish_spawn_egg.png new file mode 100644 index 00000000..db2f6514 Binary files /dev/null and b/public/textures/minecraft/silverfish_spawn_egg.png differ diff --git a/public/textures/minecraft/skeleton_horse_spawn_egg.png b/public/textures/minecraft/skeleton_horse_spawn_egg.png new file mode 100644 index 00000000..3ccf96cc Binary files /dev/null and b/public/textures/minecraft/skeleton_horse_spawn_egg.png differ diff --git a/public/textures/minecraft/skeleton_skull.png b/public/textures/minecraft/skeleton_skull.png new file mode 100644 index 00000000..68862b47 Binary files /dev/null and b/public/textures/minecraft/skeleton_skull.png differ diff --git a/public/textures/minecraft/skeleton_spawn_egg.png b/public/textures/minecraft/skeleton_spawn_egg.png new file mode 100644 index 00000000..3f0c8aa2 Binary files /dev/null and b/public/textures/minecraft/skeleton_spawn_egg.png differ diff --git a/public/textures/minecraft/skull_banner_pattern.png b/public/textures/minecraft/skull_banner_pattern.png new file mode 100644 index 00000000..43fad4e1 Binary files /dev/null and b/public/textures/minecraft/skull_banner_pattern.png differ diff --git a/public/textures/minecraft/skull_pottery_sherd.png b/public/textures/minecraft/skull_pottery_sherd.png new file mode 100644 index 00000000..1228e363 Binary files /dev/null and b/public/textures/minecraft/skull_pottery_sherd.png differ diff --git a/public/textures/minecraft/slime_ball.png b/public/textures/minecraft/slime_ball.png new file mode 100644 index 00000000..58c8bfaf Binary files /dev/null and b/public/textures/minecraft/slime_ball.png differ diff --git a/public/textures/minecraft/slime_block.png b/public/textures/minecraft/slime_block.png new file mode 100644 index 00000000..36d0f69d Binary files /dev/null and b/public/textures/minecraft/slime_block.png differ diff --git a/public/textures/minecraft/slime_spawn_egg.png b/public/textures/minecraft/slime_spawn_egg.png new file mode 100644 index 00000000..38fddd02 Binary files /dev/null and b/public/textures/minecraft/slime_spawn_egg.png differ diff --git a/public/textures/minecraft/small_amethyst_bud.png b/public/textures/minecraft/small_amethyst_bud.png new file mode 100644 index 00000000..ccc74337 Binary files /dev/null and b/public/textures/minecraft/small_amethyst_bud.png differ diff --git a/public/textures/minecraft/small_dripleaf.png b/public/textures/minecraft/small_dripleaf.png new file mode 100644 index 00000000..f6b1bd3d Binary files /dev/null and b/public/textures/minecraft/small_dripleaf.png differ diff --git a/public/textures/minecraft/smithing_table.png b/public/textures/minecraft/smithing_table.png new file mode 100644 index 00000000..9992e6e4 Binary files /dev/null and b/public/textures/minecraft/smithing_table.png differ diff --git a/public/textures/minecraft/smoker.png b/public/textures/minecraft/smoker.png new file mode 100644 index 00000000..40ddaac4 Binary files /dev/null and b/public/textures/minecraft/smoker.png differ diff --git a/public/textures/minecraft/smooth_basalt.png b/public/textures/minecraft/smooth_basalt.png new file mode 100644 index 00000000..fb52768b Binary files /dev/null and b/public/textures/minecraft/smooth_basalt.png differ diff --git a/public/textures/minecraft/smooth_quartz.png b/public/textures/minecraft/smooth_quartz.png new file mode 100644 index 00000000..506536c9 Binary files /dev/null and b/public/textures/minecraft/smooth_quartz.png differ diff --git a/public/textures/minecraft/smooth_quartz_slab.png b/public/textures/minecraft/smooth_quartz_slab.png new file mode 100644 index 00000000..d50db900 Binary files /dev/null and b/public/textures/minecraft/smooth_quartz_slab.png differ diff --git a/public/textures/minecraft/smooth_quartz_stairs.png b/public/textures/minecraft/smooth_quartz_stairs.png new file mode 100644 index 00000000..d8fd8c1e Binary files /dev/null and b/public/textures/minecraft/smooth_quartz_stairs.png differ diff --git a/public/textures/minecraft/smooth_red_sandstone.png b/public/textures/minecraft/smooth_red_sandstone.png new file mode 100644 index 00000000..c673ce65 Binary files /dev/null and b/public/textures/minecraft/smooth_red_sandstone.png differ diff --git a/public/textures/minecraft/smooth_red_sandstone_slab.png b/public/textures/minecraft/smooth_red_sandstone_slab.png new file mode 100644 index 00000000..bc06aac4 Binary files /dev/null and b/public/textures/minecraft/smooth_red_sandstone_slab.png differ diff --git a/public/textures/minecraft/smooth_red_sandstone_stairs.png b/public/textures/minecraft/smooth_red_sandstone_stairs.png new file mode 100644 index 00000000..bee8cb93 Binary files /dev/null and b/public/textures/minecraft/smooth_red_sandstone_stairs.png differ diff --git a/public/textures/minecraft/smooth_sandstone.png b/public/textures/minecraft/smooth_sandstone.png new file mode 100644 index 00000000..bbdf7b72 Binary files /dev/null and b/public/textures/minecraft/smooth_sandstone.png differ diff --git a/public/textures/minecraft/smooth_sandstone_slab.png b/public/textures/minecraft/smooth_sandstone_slab.png new file mode 100644 index 00000000..532bb548 Binary files /dev/null and b/public/textures/minecraft/smooth_sandstone_slab.png differ diff --git a/public/textures/minecraft/smooth_sandstone_stairs.png b/public/textures/minecraft/smooth_sandstone_stairs.png new file mode 100644 index 00000000..7432a788 Binary files /dev/null and b/public/textures/minecraft/smooth_sandstone_stairs.png differ diff --git a/public/textures/minecraft/smooth_stone.png b/public/textures/minecraft/smooth_stone.png new file mode 100644 index 00000000..3ebe339c Binary files /dev/null and b/public/textures/minecraft/smooth_stone.png differ diff --git a/public/textures/minecraft/smooth_stone_slab.png b/public/textures/minecraft/smooth_stone_slab.png new file mode 100644 index 00000000..920410b7 Binary files /dev/null and b/public/textures/minecraft/smooth_stone_slab.png differ diff --git a/public/textures/minecraft/sniffer_egg.png b/public/textures/minecraft/sniffer_egg.png new file mode 100644 index 00000000..deb56509 Binary files /dev/null and b/public/textures/minecraft/sniffer_egg.png differ diff --git a/public/textures/minecraft/sniffer_spawn_egg.png b/public/textures/minecraft/sniffer_spawn_egg.png new file mode 100644 index 00000000..754c07a2 Binary files /dev/null and b/public/textures/minecraft/sniffer_spawn_egg.png differ diff --git a/public/textures/minecraft/snort_pottery_sherd.png b/public/textures/minecraft/snort_pottery_sherd.png new file mode 100644 index 00000000..94078e60 Binary files /dev/null and b/public/textures/minecraft/snort_pottery_sherd.png differ diff --git a/public/textures/minecraft/snout_armor_trim_smithing_template.png b/public/textures/minecraft/snout_armor_trim_smithing_template.png new file mode 100644 index 00000000..c08b8afc Binary files /dev/null and b/public/textures/minecraft/snout_armor_trim_smithing_template.png differ diff --git a/public/textures/minecraft/snow.png b/public/textures/minecraft/snow.png new file mode 100644 index 00000000..de873c3a Binary files /dev/null and b/public/textures/minecraft/snow.png differ diff --git a/public/textures/minecraft/snow_block.png b/public/textures/minecraft/snow_block.png new file mode 100644 index 00000000..f83f5f18 Binary files /dev/null and b/public/textures/minecraft/snow_block.png differ diff --git a/public/textures/minecraft/snow_golem_spawn_egg.png b/public/textures/minecraft/snow_golem_spawn_egg.png new file mode 100644 index 00000000..c952db96 Binary files /dev/null and b/public/textures/minecraft/snow_golem_spawn_egg.png differ diff --git a/public/textures/minecraft/snowball.png b/public/textures/minecraft/snowball.png new file mode 100644 index 00000000..0992afa9 Binary files /dev/null and b/public/textures/minecraft/snowball.png differ diff --git a/public/textures/minecraft/soul_campfire.png b/public/textures/minecraft/soul_campfire.png new file mode 100644 index 00000000..9ebc0488 Binary files /dev/null and b/public/textures/minecraft/soul_campfire.png differ diff --git a/public/textures/minecraft/soul_lantern.png b/public/textures/minecraft/soul_lantern.png new file mode 100644 index 00000000..76ed0f5d Binary files /dev/null and b/public/textures/minecraft/soul_lantern.png differ diff --git a/public/textures/minecraft/soul_sand.png b/public/textures/minecraft/soul_sand.png new file mode 100644 index 00000000..a231bca2 Binary files /dev/null and b/public/textures/minecraft/soul_sand.png differ diff --git a/public/textures/minecraft/soul_soil.png b/public/textures/minecraft/soul_soil.png new file mode 100644 index 00000000..c599c97b Binary files /dev/null and b/public/textures/minecraft/soul_soil.png differ diff --git a/public/textures/minecraft/soul_torch.png b/public/textures/minecraft/soul_torch.png new file mode 100644 index 00000000..1de86040 Binary files /dev/null and b/public/textures/minecraft/soul_torch.png differ diff --git a/public/textures/minecraft/spawner.png b/public/textures/minecraft/spawner.png new file mode 100644 index 00000000..5e96fdd1 Binary files /dev/null and b/public/textures/minecraft/spawner.png differ diff --git a/public/textures/minecraft/spectral_arrow.png b/public/textures/minecraft/spectral_arrow.png new file mode 100644 index 00000000..e70e65cb Binary files /dev/null and b/public/textures/minecraft/spectral_arrow.png differ diff --git a/public/textures/minecraft/spider_eye.png b/public/textures/minecraft/spider_eye.png new file mode 100644 index 00000000..e7c18b4a Binary files /dev/null and b/public/textures/minecraft/spider_eye.png differ diff --git a/public/textures/minecraft/spider_spawn_egg.png b/public/textures/minecraft/spider_spawn_egg.png new file mode 100644 index 00000000..b90f1ec7 Binary files /dev/null and b/public/textures/minecraft/spider_spawn_egg.png differ diff --git a/public/textures/minecraft/spire_armor_trim_smithing_template.png b/public/textures/minecraft/spire_armor_trim_smithing_template.png new file mode 100644 index 00000000..f1666451 Binary files /dev/null and b/public/textures/minecraft/spire_armor_trim_smithing_template.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__berserking'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__berserking'}}.png new file mode 100644 index 00000000..94aa5da0 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__berserking'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__long_berserking'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__long_berserking'}}.png new file mode 100644 index 00000000..94aa5da0 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__long_berserking'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__strong_berserking'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__strong_berserking'}}.png new file mode 100644 index 00000000..94aa5da0 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'illagerinvasion__strong_berserking'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__awkward'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__awkward'}}.png new file mode 100644 index 00000000..6628c3d6 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__awkward'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__fire_resistance'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__fire_resistance'}}.png new file mode 100644 index 00000000..41725a19 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__fire_resistance'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__harming'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__harming'}}.png new file mode 100644 index 00000000..c851badf Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__harming'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__healing'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__healing'}}.png new file mode 100644 index 00000000..6fa43de4 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__healing'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__infested'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__infested'}}.png new file mode 100644 index 00000000..ffd60ce7 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__infested'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__invisibility'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__invisibility'}}.png new file mode 100644 index 00000000..11b9f83b Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__invisibility'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__leaping'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__leaping'}}.png new file mode 100644 index 00000000..ca034c8c Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__leaping'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_fire_resistance'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_fire_resistance'}}.png new file mode 100644 index 00000000..41725a19 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_fire_resistance'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_invisibility'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_invisibility'}}.png new file mode 100644 index 00000000..11b9f83b Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_invisibility'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_leaping'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_leaping'}}.png new file mode 100644 index 00000000..ca034c8c Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_leaping'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_night_vision'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_night_vision'}}.png new file mode 100644 index 00000000..caca7744 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_night_vision'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_poison'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_poison'}}.png new file mode 100644 index 00000000..c868621a Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_poison'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_regeneration'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_regeneration'}}.png new file mode 100644 index 00000000..7099002c Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_regeneration'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_slow_falling'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_slow_falling'}}.png new file mode 100644 index 00000000..f3ed60f4 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_slow_falling'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_slowness'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_slowness'}}.png new file mode 100644 index 00000000..1576dab1 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_slowness'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_strength'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_strength'}}.png new file mode 100644 index 00000000..78350592 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_strength'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_swiftness'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_swiftness'}}.png new file mode 100644 index 00000000..acc57df3 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_swiftness'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_turtle_master'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_turtle_master'}}.png new file mode 100644 index 00000000..1d32ee3e Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_turtle_master'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_water_breathing'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_water_breathing'}}.png new file mode 100644 index 00000000..f47bb525 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_water_breathing'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_weakness'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_weakness'}}.png new file mode 100644 index 00000000..24f90248 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__long_weakness'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__luck'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__luck'}}.png new file mode 100644 index 00000000..e6b22801 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__luck'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__mundane'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__mundane'}}.png new file mode 100644 index 00000000..6628c3d6 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__mundane'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__night_vision'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__night_vision'}}.png new file mode 100644 index 00000000..caca7744 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__night_vision'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__oozing'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__oozing'}}.png new file mode 100644 index 00000000..cf6147bf Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__oozing'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__poison'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__poison'}}.png new file mode 100644 index 00000000..c868621a Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__poison'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__regeneration'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__regeneration'}}.png new file mode 100644 index 00000000..7099002c Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__regeneration'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__slow_falling'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__slow_falling'}}.png new file mode 100644 index 00000000..f3ed60f4 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__slow_falling'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__slowness'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__slowness'}}.png new file mode 100644 index 00000000..1576dab1 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__slowness'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strength'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strength'}}.png new file mode 100644 index 00000000..78350592 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strength'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_harming'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_harming'}}.png new file mode 100644 index 00000000..c851badf Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_harming'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_healing'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_healing'}}.png new file mode 100644 index 00000000..6fa43de4 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_healing'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_leaping'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_leaping'}}.png new file mode 100644 index 00000000..ca034c8c Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_leaping'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_poison'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_poison'}}.png new file mode 100644 index 00000000..c868621a Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_poison'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_regeneration'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_regeneration'}}.png new file mode 100644 index 00000000..7099002c Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_regeneration'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_slowness'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_slowness'}}.png new file mode 100644 index 00000000..1576dab1 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_slowness'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_strength'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_strength'}}.png new file mode 100644 index 00000000..78350592 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_strength'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_swiftness'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_swiftness'}}.png new file mode 100644 index 00000000..acc57df3 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_swiftness'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_turtle_master'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_turtle_master'}}.png new file mode 100644 index 00000000..d213ffb7 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__strong_turtle_master'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__swiftness'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__swiftness'}}.png new file mode 100644 index 00000000..acc57df3 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__swiftness'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__thick'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__thick'}}.png new file mode 100644 index 00000000..6628c3d6 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__thick'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__turtle_master'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__turtle_master'}}.png new file mode 100644 index 00000000..1d32ee3e Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__turtle_master'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__water'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__water'}}.png new file mode 100644 index 00000000..6628c3d6 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__water'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__water_breathing'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__water_breathing'}}.png new file mode 100644 index 00000000..f47bb525 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__water_breathing'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__weakness'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__weakness'}}.png new file mode 100644 index 00000000..24f90248 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__weakness'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__weaving'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__weaving'}}.png new file mode 100644 index 00000000..9d54f7e3 Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__weaving'}}.png differ diff --git a/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__wind_charged'}}.png b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__wind_charged'}}.png new file mode 100644 index 00000000..879c943c Binary files /dev/null and b/public/textures/minecraft/splash_potion__{'minecraft__potion_contents'__{potion__'minecraft__wind_charged'}}.png differ diff --git a/public/textures/minecraft/sponge.png b/public/textures/minecraft/sponge.png new file mode 100644 index 00000000..d242f6af Binary files /dev/null and b/public/textures/minecraft/sponge.png differ diff --git a/public/textures/minecraft/spore_blossom.png b/public/textures/minecraft/spore_blossom.png new file mode 100644 index 00000000..6436a374 Binary files /dev/null and b/public/textures/minecraft/spore_blossom.png differ diff --git a/public/textures/minecraft/spruce_boat.png b/public/textures/minecraft/spruce_boat.png new file mode 100644 index 00000000..6dedc106 Binary files /dev/null and b/public/textures/minecraft/spruce_boat.png differ diff --git a/public/textures/minecraft/spruce_button.png b/public/textures/minecraft/spruce_button.png new file mode 100644 index 00000000..609007ef Binary files /dev/null and b/public/textures/minecraft/spruce_button.png differ diff --git a/public/textures/minecraft/spruce_chest_boat.png b/public/textures/minecraft/spruce_chest_boat.png new file mode 100644 index 00000000..62a590cb Binary files /dev/null and b/public/textures/minecraft/spruce_chest_boat.png differ diff --git a/public/textures/minecraft/spruce_door.png b/public/textures/minecraft/spruce_door.png new file mode 100644 index 00000000..4ba466c2 Binary files /dev/null and b/public/textures/minecraft/spruce_door.png differ diff --git a/public/textures/minecraft/spruce_fence.png b/public/textures/minecraft/spruce_fence.png new file mode 100644 index 00000000..947dac5c Binary files /dev/null and b/public/textures/minecraft/spruce_fence.png differ diff --git a/public/textures/minecraft/spruce_fence_gate.png b/public/textures/minecraft/spruce_fence_gate.png new file mode 100644 index 00000000..e26b2d6b Binary files /dev/null and b/public/textures/minecraft/spruce_fence_gate.png differ diff --git a/public/textures/minecraft/spruce_hanging_sign.png b/public/textures/minecraft/spruce_hanging_sign.png new file mode 100644 index 00000000..2001b457 Binary files /dev/null and b/public/textures/minecraft/spruce_hanging_sign.png differ diff --git a/public/textures/minecraft/spruce_leaves.png b/public/textures/minecraft/spruce_leaves.png new file mode 100644 index 00000000..34cdab56 Binary files /dev/null and b/public/textures/minecraft/spruce_leaves.png differ diff --git a/public/textures/minecraft/spruce_log.png b/public/textures/minecraft/spruce_log.png new file mode 100644 index 00000000..bc9ab7fb Binary files /dev/null and b/public/textures/minecraft/spruce_log.png differ diff --git a/public/textures/minecraft/spruce_planks.png b/public/textures/minecraft/spruce_planks.png new file mode 100644 index 00000000..d10bcd3d Binary files /dev/null and b/public/textures/minecraft/spruce_planks.png differ diff --git a/public/textures/minecraft/spruce_pressure_plate.png b/public/textures/minecraft/spruce_pressure_plate.png new file mode 100644 index 00000000..dc7cf34c Binary files /dev/null and b/public/textures/minecraft/spruce_pressure_plate.png differ diff --git a/public/textures/minecraft/spruce_sapling.png b/public/textures/minecraft/spruce_sapling.png new file mode 100644 index 00000000..0d842ea3 Binary files /dev/null and b/public/textures/minecraft/spruce_sapling.png differ diff --git a/public/textures/minecraft/spruce_sign.png b/public/textures/minecraft/spruce_sign.png new file mode 100644 index 00000000..5d2affd1 Binary files /dev/null and b/public/textures/minecraft/spruce_sign.png differ diff --git a/public/textures/minecraft/spruce_slab.png b/public/textures/minecraft/spruce_slab.png new file mode 100644 index 00000000..a6212e8c Binary files /dev/null and b/public/textures/minecraft/spruce_slab.png differ diff --git a/public/textures/minecraft/spruce_stairs.png b/public/textures/minecraft/spruce_stairs.png new file mode 100644 index 00000000..feef1b52 Binary files /dev/null and b/public/textures/minecraft/spruce_stairs.png differ diff --git a/public/textures/minecraft/spruce_trapdoor.png b/public/textures/minecraft/spruce_trapdoor.png new file mode 100644 index 00000000..1e24afea Binary files /dev/null and b/public/textures/minecraft/spruce_trapdoor.png differ diff --git a/public/textures/minecraft/spruce_wood.png b/public/textures/minecraft/spruce_wood.png new file mode 100644 index 00000000..5e53f93e Binary files /dev/null and b/public/textures/minecraft/spruce_wood.png differ diff --git a/public/textures/minecraft/spyglass.png b/public/textures/minecraft/spyglass.png new file mode 100644 index 00000000..da91dd99 Binary files /dev/null and b/public/textures/minecraft/spyglass.png differ diff --git a/public/textures/minecraft/squid_spawn_egg.png b/public/textures/minecraft/squid_spawn_egg.png new file mode 100644 index 00000000..9885b3aa Binary files /dev/null and b/public/textures/minecraft/squid_spawn_egg.png differ diff --git a/public/textures/minecraft/stick.png b/public/textures/minecraft/stick.png new file mode 100644 index 00000000..f27178ec Binary files /dev/null and b/public/textures/minecraft/stick.png differ diff --git a/public/textures/minecraft/sticky_piston.png b/public/textures/minecraft/sticky_piston.png new file mode 100644 index 00000000..24531093 Binary files /dev/null and b/public/textures/minecraft/sticky_piston.png differ diff --git a/public/textures/minecraft/stone.png b/public/textures/minecraft/stone.png new file mode 100644 index 00000000..f2d5f8c3 Binary files /dev/null and b/public/textures/minecraft/stone.png differ diff --git a/public/textures/minecraft/stone_axe.png b/public/textures/minecraft/stone_axe.png new file mode 100644 index 00000000..56d0d7cd Binary files /dev/null and b/public/textures/minecraft/stone_axe.png differ diff --git a/public/textures/minecraft/stone_brick_slab.png b/public/textures/minecraft/stone_brick_slab.png new file mode 100644 index 00000000..a96d826a Binary files /dev/null and b/public/textures/minecraft/stone_brick_slab.png differ diff --git a/public/textures/minecraft/stone_brick_stairs.png b/public/textures/minecraft/stone_brick_stairs.png new file mode 100644 index 00000000..9af405f8 Binary files /dev/null and b/public/textures/minecraft/stone_brick_stairs.png differ diff --git a/public/textures/minecraft/stone_brick_wall.png b/public/textures/minecraft/stone_brick_wall.png new file mode 100644 index 00000000..b877f854 Binary files /dev/null and b/public/textures/minecraft/stone_brick_wall.png differ diff --git a/public/textures/minecraft/stone_bricks.png b/public/textures/minecraft/stone_bricks.png new file mode 100644 index 00000000..46001e2b Binary files /dev/null and b/public/textures/minecraft/stone_bricks.png differ diff --git a/public/textures/minecraft/stone_button.png b/public/textures/minecraft/stone_button.png new file mode 100644 index 00000000..3b0f2052 Binary files /dev/null and b/public/textures/minecraft/stone_button.png differ diff --git a/public/textures/minecraft/stone_hoe.png b/public/textures/minecraft/stone_hoe.png new file mode 100644 index 00000000..79cfc4ef Binary files /dev/null and b/public/textures/minecraft/stone_hoe.png differ diff --git a/public/textures/minecraft/stone_pickaxe.png b/public/textures/minecraft/stone_pickaxe.png new file mode 100644 index 00000000..2a935928 Binary files /dev/null and b/public/textures/minecraft/stone_pickaxe.png differ diff --git a/public/textures/minecraft/stone_pressure_plate.png b/public/textures/minecraft/stone_pressure_plate.png new file mode 100644 index 00000000..37442a64 Binary files /dev/null and b/public/textures/minecraft/stone_pressure_plate.png differ diff --git a/public/textures/minecraft/stone_shovel.png b/public/textures/minecraft/stone_shovel.png new file mode 100644 index 00000000..e3191692 Binary files /dev/null and b/public/textures/minecraft/stone_shovel.png differ diff --git a/public/textures/minecraft/stone_slab.png b/public/textures/minecraft/stone_slab.png new file mode 100644 index 00000000..47a4371f Binary files /dev/null and b/public/textures/minecraft/stone_slab.png differ diff --git a/public/textures/minecraft/stone_stairs.png b/public/textures/minecraft/stone_stairs.png new file mode 100644 index 00000000..6400c3bf Binary files /dev/null and b/public/textures/minecraft/stone_stairs.png differ diff --git a/public/textures/minecraft/stone_sword.png b/public/textures/minecraft/stone_sword.png new file mode 100644 index 00000000..6b19040d Binary files /dev/null and b/public/textures/minecraft/stone_sword.png differ diff --git a/public/textures/minecraft/stonecutter.png b/public/textures/minecraft/stonecutter.png new file mode 100644 index 00000000..068d39d9 Binary files /dev/null and b/public/textures/minecraft/stonecutter.png differ diff --git a/public/textures/minecraft/stray_spawn_egg.png b/public/textures/minecraft/stray_spawn_egg.png new file mode 100644 index 00000000..3d1f08c7 Binary files /dev/null and b/public/textures/minecraft/stray_spawn_egg.png differ diff --git a/public/textures/minecraft/strider_spawn_egg.png b/public/textures/minecraft/strider_spawn_egg.png new file mode 100644 index 00000000..231d05e5 Binary files /dev/null and b/public/textures/minecraft/strider_spawn_egg.png differ diff --git a/public/textures/minecraft/string.png b/public/textures/minecraft/string.png new file mode 100644 index 00000000..6613e3f9 Binary files /dev/null and b/public/textures/minecraft/string.png differ diff --git a/public/textures/minecraft/stripped_acacia_log.png b/public/textures/minecraft/stripped_acacia_log.png new file mode 100644 index 00000000..fa7fe78f Binary files /dev/null and b/public/textures/minecraft/stripped_acacia_log.png differ diff --git a/public/textures/minecraft/stripped_acacia_wood.png b/public/textures/minecraft/stripped_acacia_wood.png new file mode 100644 index 00000000..42ed2a5f Binary files /dev/null and b/public/textures/minecraft/stripped_acacia_wood.png differ diff --git a/public/textures/minecraft/stripped_bamboo_block.png b/public/textures/minecraft/stripped_bamboo_block.png new file mode 100644 index 00000000..9d5b071e Binary files /dev/null and b/public/textures/minecraft/stripped_bamboo_block.png differ diff --git a/public/textures/minecraft/stripped_birch_log.png b/public/textures/minecraft/stripped_birch_log.png new file mode 100644 index 00000000..77e89c56 Binary files /dev/null and b/public/textures/minecraft/stripped_birch_log.png differ diff --git a/public/textures/minecraft/stripped_birch_wood.png b/public/textures/minecraft/stripped_birch_wood.png new file mode 100644 index 00000000..f9901795 Binary files /dev/null and b/public/textures/minecraft/stripped_birch_wood.png differ diff --git a/public/textures/minecraft/stripped_cherry_log.png b/public/textures/minecraft/stripped_cherry_log.png new file mode 100644 index 00000000..d5886cb8 Binary files /dev/null and b/public/textures/minecraft/stripped_cherry_log.png differ diff --git a/public/textures/minecraft/stripped_cherry_wood.png b/public/textures/minecraft/stripped_cherry_wood.png new file mode 100644 index 00000000..251edbbe Binary files /dev/null and b/public/textures/minecraft/stripped_cherry_wood.png differ diff --git a/public/textures/minecraft/stripped_crimson_hyphae.png b/public/textures/minecraft/stripped_crimson_hyphae.png new file mode 100644 index 00000000..7087797d Binary files /dev/null and b/public/textures/minecraft/stripped_crimson_hyphae.png differ diff --git a/public/textures/minecraft/stripped_crimson_stem.png b/public/textures/minecraft/stripped_crimson_stem.png new file mode 100644 index 00000000..f5187f04 Binary files /dev/null and b/public/textures/minecraft/stripped_crimson_stem.png differ diff --git a/public/textures/minecraft/stripped_dark_oak_log.png b/public/textures/minecraft/stripped_dark_oak_log.png new file mode 100644 index 00000000..e231e3fe Binary files /dev/null and b/public/textures/minecraft/stripped_dark_oak_log.png differ diff --git a/public/textures/minecraft/stripped_dark_oak_wood.png b/public/textures/minecraft/stripped_dark_oak_wood.png new file mode 100644 index 00000000..ee631622 Binary files /dev/null and b/public/textures/minecraft/stripped_dark_oak_wood.png differ diff --git a/public/textures/minecraft/stripped_jungle_log.png b/public/textures/minecraft/stripped_jungle_log.png new file mode 100644 index 00000000..79a9083c Binary files /dev/null and b/public/textures/minecraft/stripped_jungle_log.png differ diff --git a/public/textures/minecraft/stripped_jungle_wood.png b/public/textures/minecraft/stripped_jungle_wood.png new file mode 100644 index 00000000..0fb2fb84 Binary files /dev/null and b/public/textures/minecraft/stripped_jungle_wood.png differ diff --git a/public/textures/minecraft/stripped_mangrove_log.png b/public/textures/minecraft/stripped_mangrove_log.png new file mode 100644 index 00000000..7d8622cc Binary files /dev/null and b/public/textures/minecraft/stripped_mangrove_log.png differ diff --git a/public/textures/minecraft/stripped_mangrove_wood.png b/public/textures/minecraft/stripped_mangrove_wood.png new file mode 100644 index 00000000..3500ec9f Binary files /dev/null and b/public/textures/minecraft/stripped_mangrove_wood.png differ diff --git a/public/textures/minecraft/stripped_oak_log.png b/public/textures/minecraft/stripped_oak_log.png new file mode 100644 index 00000000..7ce7ded6 Binary files /dev/null and b/public/textures/minecraft/stripped_oak_log.png differ diff --git a/public/textures/minecraft/stripped_oak_wood.png b/public/textures/minecraft/stripped_oak_wood.png new file mode 100644 index 00000000..3fb51598 Binary files /dev/null and b/public/textures/minecraft/stripped_oak_wood.png differ diff --git a/public/textures/minecraft/stripped_spruce_log.png b/public/textures/minecraft/stripped_spruce_log.png new file mode 100644 index 00000000..05d74748 Binary files /dev/null and b/public/textures/minecraft/stripped_spruce_log.png differ diff --git a/public/textures/minecraft/stripped_spruce_wood.png b/public/textures/minecraft/stripped_spruce_wood.png new file mode 100644 index 00000000..7e875c1f Binary files /dev/null and b/public/textures/minecraft/stripped_spruce_wood.png differ diff --git a/public/textures/minecraft/stripped_warped_hyphae.png b/public/textures/minecraft/stripped_warped_hyphae.png new file mode 100644 index 00000000..68e97d58 Binary files /dev/null and b/public/textures/minecraft/stripped_warped_hyphae.png differ diff --git a/public/textures/minecraft/stripped_warped_stem.png b/public/textures/minecraft/stripped_warped_stem.png new file mode 100644 index 00000000..dd2558b4 Binary files /dev/null and b/public/textures/minecraft/stripped_warped_stem.png differ diff --git a/public/textures/minecraft/sugar.png b/public/textures/minecraft/sugar.png new file mode 100644 index 00000000..5da9e6a1 Binary files /dev/null and b/public/textures/minecraft/sugar.png differ diff --git a/public/textures/minecraft/sugar_cane.png b/public/textures/minecraft/sugar_cane.png new file mode 100644 index 00000000..deb35bf3 Binary files /dev/null and b/public/textures/minecraft/sugar_cane.png differ diff --git a/public/textures/minecraft/sunflower.png b/public/textures/minecraft/sunflower.png new file mode 100644 index 00000000..94e23ea0 Binary files /dev/null and b/public/textures/minecraft/sunflower.png differ diff --git a/public/textures/minecraft/suspicious_gravel.png b/public/textures/minecraft/suspicious_gravel.png new file mode 100644 index 00000000..a534c0b1 Binary files /dev/null and b/public/textures/minecraft/suspicious_gravel.png differ diff --git a/public/textures/minecraft/suspicious_sand.png b/public/textures/minecraft/suspicious_sand.png new file mode 100644 index 00000000..c0a85c20 Binary files /dev/null and b/public/textures/minecraft/suspicious_sand.png differ diff --git a/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__100,id__'minecraft__night_vision'}]}.png b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__100,id__'minecraft__night_vision'}]}.png new file mode 100644 index 00000000..29a289d5 Binary files /dev/null and b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__100,id__'minecraft__night_vision'}]}.png differ diff --git a/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__120,id__'minecraft__fire_resistance'}]}.png b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__120,id__'minecraft__fire_resistance'}]}.png new file mode 100644 index 00000000..29a289d5 Binary files /dev/null and b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__120,id__'minecraft__fire_resistance'}]}.png differ diff --git a/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__120,id__'minecraft__jump_boost'}]}.png b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__120,id__'minecraft__jump_boost'}]}.png new file mode 100644 index 00000000..29a289d5 Binary files /dev/null and b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__120,id__'minecraft__jump_boost'}]}.png differ diff --git a/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__120,id__'minecraft__mining_fatigue'}]}.png b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__120,id__'minecraft__mining_fatigue'}]}.png new file mode 100644 index 00000000..29a289d5 Binary files /dev/null and b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__120,id__'minecraft__mining_fatigue'}]}.png differ diff --git a/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__120,id__'minecraft__strength'}]}.png b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__120,id__'minecraft__strength'}]}.png new file mode 100644 index 00000000..29a289d5 Binary files /dev/null and b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__120,id__'minecraft__strength'}]}.png differ diff --git a/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__140,id__'minecraft__nausea'}]}.png b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__140,id__'minecraft__nausea'}]}.png new file mode 100644 index 00000000..29a289d5 Binary files /dev/null and b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__140,id__'minecraft__nausea'}]}.png differ diff --git a/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__140,id__'minecraft__saturation'}]}.png b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__140,id__'minecraft__saturation'}]}.png new file mode 100644 index 00000000..29a289d5 Binary files /dev/null and b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__140,id__'minecraft__saturation'}]}.png differ diff --git a/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__180,id__'minecraft__weakness'}]}.png b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__180,id__'minecraft__weakness'}]}.png new file mode 100644 index 00000000..29a289d5 Binary files /dev/null and b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__180,id__'minecraft__weakness'}]}.png differ diff --git a/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__200,id__'minecraft__poison'}]}.png b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__200,id__'minecraft__poison'}]}.png new file mode 100644 index 00000000..29a289d5 Binary files /dev/null and b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__200,id__'minecraft__poison'}]}.png differ diff --git a/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__2000,id__'minecraft__speed'}]}.png b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__2000,id__'minecraft__speed'}]}.png new file mode 100644 index 00000000..29a289d5 Binary files /dev/null and b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__2000,id__'minecraft__speed'}]}.png differ diff --git a/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__220,id__'minecraft__blindness'}]}.png b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__220,id__'minecraft__blindness'}]}.png new file mode 100644 index 00000000..29a289d5 Binary files /dev/null and b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__220,id__'minecraft__blindness'}]}.png differ diff --git a/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__240,id__'minecraft__poison'}]}.png b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__240,id__'minecraft__poison'}]}.png new file mode 100644 index 00000000..29a289d5 Binary files /dev/null and b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__240,id__'minecraft__poison'}]}.png differ diff --git a/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__7,id__'minecraft__saturation'}]}.png b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__7,id__'minecraft__saturation'}]}.png new file mode 100644 index 00000000..29a289d5 Binary files /dev/null and b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__7,id__'minecraft__saturation'}]}.png differ diff --git a/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__80,id__'minecraft__fire_resistance'}]}.png b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__80,id__'minecraft__fire_resistance'}]}.png new file mode 100644 index 00000000..29a289d5 Binary files /dev/null and b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{duration__80,id__'minecraft__fire_resistance'}]}.png differ diff --git a/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{id__'minecraft__blindness'}]}.png b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{id__'minecraft__blindness'}]}.png new file mode 100644 index 00000000..29a289d5 Binary files /dev/null and b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{id__'minecraft__blindness'}]}.png differ diff --git a/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{id__'minecraft__nausea'}]}.png b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{id__'minecraft__nausea'}]}.png new file mode 100644 index 00000000..29a289d5 Binary files /dev/null and b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{id__'minecraft__nausea'}]}.png differ diff --git a/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{id__'minecraft__regeneration'}]}.png b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{id__'minecraft__regeneration'}]}.png new file mode 100644 index 00000000..29a289d5 Binary files /dev/null and b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{id__'minecraft__regeneration'}]}.png differ diff --git a/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{id__'minecraft__saturation'}]}.png b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{id__'minecraft__saturation'}]}.png new file mode 100644 index 00000000..29a289d5 Binary files /dev/null and b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{id__'minecraft__saturation'}]}.png differ diff --git a/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{id__'minecraft__water_breathing'}]}.png b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{id__'minecraft__water_breathing'}]}.png new file mode 100644 index 00000000..29a289d5 Binary files /dev/null and b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{id__'minecraft__water_breathing'}]}.png differ diff --git a/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{id__'minecraft__wither'}]}.png b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{id__'minecraft__wither'}]}.png new file mode 100644 index 00000000..29a289d5 Binary files /dev/null and b/public/textures/minecraft/suspicious_stew__{'minecraft__suspicious_stew_effects'__[{id__'minecraft__wither'}]}.png differ diff --git a/public/textures/minecraft/sweet_berries.png b/public/textures/minecraft/sweet_berries.png new file mode 100644 index 00000000..36e50677 Binary files /dev/null and b/public/textures/minecraft/sweet_berries.png differ diff --git a/public/textures/minecraft/tadpole_bucket.png b/public/textures/minecraft/tadpole_bucket.png new file mode 100644 index 00000000..5a79690e Binary files /dev/null and b/public/textures/minecraft/tadpole_bucket.png differ diff --git a/public/textures/minecraft/tadpole_spawn_egg.png b/public/textures/minecraft/tadpole_spawn_egg.png new file mode 100644 index 00000000..4db3af61 Binary files /dev/null and b/public/textures/minecraft/tadpole_spawn_egg.png differ diff --git a/public/textures/minecraft/tall_grass.png b/public/textures/minecraft/tall_grass.png new file mode 100644 index 00000000..2def8b0f Binary files /dev/null and b/public/textures/minecraft/tall_grass.png differ diff --git a/public/textures/minecraft/target.png b/public/textures/minecraft/target.png new file mode 100644 index 00000000..3674d15d Binary files /dev/null and b/public/textures/minecraft/target.png differ diff --git a/public/textures/minecraft/terracotta.png b/public/textures/minecraft/terracotta.png new file mode 100644 index 00000000..0326227e Binary files /dev/null and b/public/textures/minecraft/terracotta.png differ diff --git a/public/textures/minecraft/tide_armor_trim_smithing_template.png b/public/textures/minecraft/tide_armor_trim_smithing_template.png new file mode 100644 index 00000000..b7f716ea Binary files /dev/null and b/public/textures/minecraft/tide_armor_trim_smithing_template.png differ diff --git a/public/textures/minecraft/tinted_glass.png b/public/textures/minecraft/tinted_glass.png new file mode 100644 index 00000000..2742db93 Binary files /dev/null and b/public/textures/minecraft/tinted_glass.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'illagerinvasion__berserking'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'illagerinvasion__berserking'}}.png new file mode 100644 index 00000000..df93d709 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'illagerinvasion__berserking'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'illagerinvasion__long_berserking'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'illagerinvasion__long_berserking'}}.png new file mode 100644 index 00000000..df93d709 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'illagerinvasion__long_berserking'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'illagerinvasion__strong_berserking'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'illagerinvasion__strong_berserking'}}.png new file mode 100644 index 00000000..df93d709 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'illagerinvasion__strong_berserking'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__awkward'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__awkward'}}.png new file mode 100644 index 00000000..991a388a Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__awkward'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__fire_resistance'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__fire_resistance'}}.png new file mode 100644 index 00000000..45723d78 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__fire_resistance'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__harming'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__harming'}}.png new file mode 100644 index 00000000..13e8232a Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__harming'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__healing'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__healing'}}.png new file mode 100644 index 00000000..84d2fac0 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__healing'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__infested'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__infested'}}.png new file mode 100644 index 00000000..38a49d02 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__infested'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__invisibility'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__invisibility'}}.png new file mode 100644 index 00000000..b7afec1d Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__invisibility'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__leaping'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__leaping'}}.png new file mode 100644 index 00000000..4b7d682f Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__leaping'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_fire_resistance'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_fire_resistance'}}.png new file mode 100644 index 00000000..45723d78 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_fire_resistance'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_invisibility'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_invisibility'}}.png new file mode 100644 index 00000000..b7afec1d Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_invisibility'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_leaping'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_leaping'}}.png new file mode 100644 index 00000000..4b7d682f Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_leaping'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_night_vision'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_night_vision'}}.png new file mode 100644 index 00000000..21eab734 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_night_vision'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_poison'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_poison'}}.png new file mode 100644 index 00000000..75624dcb Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_poison'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_regeneration'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_regeneration'}}.png new file mode 100644 index 00000000..8301c751 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_regeneration'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_slow_falling'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_slow_falling'}}.png new file mode 100644 index 00000000..7baad040 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_slow_falling'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_slowness'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_slowness'}}.png new file mode 100644 index 00000000..01bba113 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_slowness'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_strength'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_strength'}}.png new file mode 100644 index 00000000..8bcd0812 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_strength'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_swiftness'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_swiftness'}}.png new file mode 100644 index 00000000..e6175372 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_swiftness'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_turtle_master'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_turtle_master'}}.png new file mode 100644 index 00000000..5ba76701 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_turtle_master'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_water_breathing'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_water_breathing'}}.png new file mode 100644 index 00000000..d61494db Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_water_breathing'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_weakness'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_weakness'}}.png new file mode 100644 index 00000000..fcdeda00 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__long_weakness'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__luck'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__luck'}}.png new file mode 100644 index 00000000..18af1a57 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__luck'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__mundane'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__mundane'}}.png new file mode 100644 index 00000000..991a388a Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__mundane'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__night_vision'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__night_vision'}}.png new file mode 100644 index 00000000..21eab734 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__night_vision'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__oozing'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__oozing'}}.png new file mode 100644 index 00000000..0302f759 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__oozing'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__poison'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__poison'}}.png new file mode 100644 index 00000000..75624dcb Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__poison'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__regeneration'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__regeneration'}}.png new file mode 100644 index 00000000..8301c751 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__regeneration'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__slow_falling'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__slow_falling'}}.png new file mode 100644 index 00000000..7baad040 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__slow_falling'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__slowness'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__slowness'}}.png new file mode 100644 index 00000000..01bba113 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__slowness'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strength'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strength'}}.png new file mode 100644 index 00000000..8bcd0812 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strength'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_harming'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_harming'}}.png new file mode 100644 index 00000000..13e8232a Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_harming'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_healing'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_healing'}}.png new file mode 100644 index 00000000..84d2fac0 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_healing'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_leaping'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_leaping'}}.png new file mode 100644 index 00000000..4b7d682f Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_leaping'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_poison'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_poison'}}.png new file mode 100644 index 00000000..75624dcb Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_poison'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_regeneration'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_regeneration'}}.png new file mode 100644 index 00000000..8301c751 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_regeneration'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_slowness'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_slowness'}}.png new file mode 100644 index 00000000..01bba113 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_slowness'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_strength'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_strength'}}.png new file mode 100644 index 00000000..8bcd0812 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_strength'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_swiftness'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_swiftness'}}.png new file mode 100644 index 00000000..e6175372 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_swiftness'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_turtle_master'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_turtle_master'}}.png new file mode 100644 index 00000000..29ec3a2e Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__strong_turtle_master'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__swiftness'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__swiftness'}}.png new file mode 100644 index 00000000..e6175372 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__swiftness'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__thick'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__thick'}}.png new file mode 100644 index 00000000..991a388a Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__thick'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__turtle_master'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__turtle_master'}}.png new file mode 100644 index 00000000..5ba76701 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__turtle_master'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__water'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__water'}}.png new file mode 100644 index 00000000..991a388a Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__water'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__water_breathing'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__water_breathing'}}.png new file mode 100644 index 00000000..d61494db Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__water_breathing'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__weakness'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__weakness'}}.png new file mode 100644 index 00000000..fcdeda00 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__weakness'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__weaving'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__weaving'}}.png new file mode 100644 index 00000000..dad9b111 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__weaving'}}.png differ diff --git a/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__wind_charged'}}.png b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__wind_charged'}}.png new file mode 100644 index 00000000..3996bd29 Binary files /dev/null and b/public/textures/minecraft/tipped_arrow__{'minecraft__potion_contents'__{potion__'minecraft__wind_charged'}}.png differ diff --git a/public/textures/minecraft/tnt.png b/public/textures/minecraft/tnt.png new file mode 100644 index 00000000..41624083 Binary files /dev/null and b/public/textures/minecraft/tnt.png differ diff --git a/public/textures/minecraft/tnt_minecart.png b/public/textures/minecraft/tnt_minecart.png new file mode 100644 index 00000000..5fc9fb0b Binary files /dev/null and b/public/textures/minecraft/tnt_minecart.png differ diff --git a/public/textures/minecraft/torch.png b/public/textures/minecraft/torch.png new file mode 100644 index 00000000..c9f97ded Binary files /dev/null and b/public/textures/minecraft/torch.png differ diff --git a/public/textures/minecraft/torchflower.png b/public/textures/minecraft/torchflower.png new file mode 100644 index 00000000..393bee9d Binary files /dev/null and b/public/textures/minecraft/torchflower.png differ diff --git a/public/textures/minecraft/torchflower_seeds.png b/public/textures/minecraft/torchflower_seeds.png new file mode 100644 index 00000000..d5db2bf1 Binary files /dev/null and b/public/textures/minecraft/torchflower_seeds.png differ diff --git a/public/textures/minecraft/totem_of_undying.png b/public/textures/minecraft/totem_of_undying.png new file mode 100644 index 00000000..d33eb09e Binary files /dev/null and b/public/textures/minecraft/totem_of_undying.png differ diff --git a/public/textures/minecraft/trader_llama_spawn_egg.png b/public/textures/minecraft/trader_llama_spawn_egg.png new file mode 100644 index 00000000..bd6c4f9d Binary files /dev/null and b/public/textures/minecraft/trader_llama_spawn_egg.png differ diff --git a/public/textures/minecraft/trapped_chest.png b/public/textures/minecraft/trapped_chest.png new file mode 100644 index 00000000..b7dca1c0 Binary files /dev/null and b/public/textures/minecraft/trapped_chest.png differ diff --git a/public/textures/minecraft/trial_key.png b/public/textures/minecraft/trial_key.png new file mode 100644 index 00000000..cc21b789 Binary files /dev/null and b/public/textures/minecraft/trial_key.png differ diff --git a/public/textures/minecraft/trial_spawner.png b/public/textures/minecraft/trial_spawner.png new file mode 100644 index 00000000..005604d3 Binary files /dev/null and b/public/textures/minecraft/trial_spawner.png differ diff --git a/public/textures/minecraft/trident.png b/public/textures/minecraft/trident.png new file mode 100644 index 00000000..23f00e7c Binary files /dev/null and b/public/textures/minecraft/trident.png differ diff --git a/public/textures/minecraft/tripwire_hook.png b/public/textures/minecraft/tripwire_hook.png new file mode 100644 index 00000000..e54fab1f Binary files /dev/null and b/public/textures/minecraft/tripwire_hook.png differ diff --git a/public/textures/minecraft/tropical_fish.png b/public/textures/minecraft/tropical_fish.png new file mode 100644 index 00000000..50c167e4 Binary files /dev/null and b/public/textures/minecraft/tropical_fish.png differ diff --git a/public/textures/minecraft/tropical_fish_bucket.png b/public/textures/minecraft/tropical_fish_bucket.png new file mode 100644 index 00000000..c0a9f42b Binary files /dev/null and b/public/textures/minecraft/tropical_fish_bucket.png differ diff --git a/public/textures/minecraft/tropical_fish_spawn_egg.png b/public/textures/minecraft/tropical_fish_spawn_egg.png new file mode 100644 index 00000000..14e3f0bf Binary files /dev/null and b/public/textures/minecraft/tropical_fish_spawn_egg.png differ diff --git a/public/textures/minecraft/tube_coral.png b/public/textures/minecraft/tube_coral.png new file mode 100644 index 00000000..dbbb234f Binary files /dev/null and b/public/textures/minecraft/tube_coral.png differ diff --git a/public/textures/minecraft/tube_coral_block.png b/public/textures/minecraft/tube_coral_block.png new file mode 100644 index 00000000..5b6f4cac Binary files /dev/null and b/public/textures/minecraft/tube_coral_block.png differ diff --git a/public/textures/minecraft/tube_coral_fan.png b/public/textures/minecraft/tube_coral_fan.png new file mode 100644 index 00000000..0148a209 Binary files /dev/null and b/public/textures/minecraft/tube_coral_fan.png differ diff --git a/public/textures/minecraft/tuff.png b/public/textures/minecraft/tuff.png new file mode 100644 index 00000000..6bd7360e Binary files /dev/null and b/public/textures/minecraft/tuff.png differ diff --git a/public/textures/minecraft/tuff_brick_slab.png b/public/textures/minecraft/tuff_brick_slab.png new file mode 100644 index 00000000..7a815a04 Binary files /dev/null and b/public/textures/minecraft/tuff_brick_slab.png differ diff --git a/public/textures/minecraft/tuff_brick_stairs.png b/public/textures/minecraft/tuff_brick_stairs.png new file mode 100644 index 00000000..81432ecb Binary files /dev/null and b/public/textures/minecraft/tuff_brick_stairs.png differ diff --git a/public/textures/minecraft/tuff_brick_wall.png b/public/textures/minecraft/tuff_brick_wall.png new file mode 100644 index 00000000..d75c67e8 Binary files /dev/null and b/public/textures/minecraft/tuff_brick_wall.png differ diff --git a/public/textures/minecraft/tuff_bricks.png b/public/textures/minecraft/tuff_bricks.png new file mode 100644 index 00000000..b544013d Binary files /dev/null and b/public/textures/minecraft/tuff_bricks.png differ diff --git a/public/textures/minecraft/tuff_slab.png b/public/textures/minecraft/tuff_slab.png new file mode 100644 index 00000000..0a393265 Binary files /dev/null and b/public/textures/minecraft/tuff_slab.png differ diff --git a/public/textures/minecraft/tuff_stairs.png b/public/textures/minecraft/tuff_stairs.png new file mode 100644 index 00000000..7fc12bf2 Binary files /dev/null and b/public/textures/minecraft/tuff_stairs.png differ diff --git a/public/textures/minecraft/tuff_wall.png b/public/textures/minecraft/tuff_wall.png new file mode 100644 index 00000000..84a3639f Binary files /dev/null and b/public/textures/minecraft/tuff_wall.png differ diff --git a/public/textures/minecraft/turtle_egg.png b/public/textures/minecraft/turtle_egg.png new file mode 100644 index 00000000..081ef577 Binary files /dev/null and b/public/textures/minecraft/turtle_egg.png differ diff --git a/public/textures/minecraft/turtle_helmet.png b/public/textures/minecraft/turtle_helmet.png new file mode 100644 index 00000000..b1b74568 Binary files /dev/null and b/public/textures/minecraft/turtle_helmet.png differ diff --git a/public/textures/minecraft/turtle_scute.png b/public/textures/minecraft/turtle_scute.png new file mode 100644 index 00000000..0fb3f9cb Binary files /dev/null and b/public/textures/minecraft/turtle_scute.png differ diff --git a/public/textures/minecraft/turtle_spawn_egg.png b/public/textures/minecraft/turtle_spawn_egg.png new file mode 100644 index 00000000..5721d401 Binary files /dev/null and b/public/textures/minecraft/turtle_spawn_egg.png differ diff --git a/public/textures/minecraft/twisting_vines.png b/public/textures/minecraft/twisting_vines.png new file mode 100644 index 00000000..4f208c58 Binary files /dev/null and b/public/textures/minecraft/twisting_vines.png differ diff --git a/public/textures/minecraft/vault.png b/public/textures/minecraft/vault.png new file mode 100644 index 00000000..f791212c Binary files /dev/null and b/public/textures/minecraft/vault.png differ diff --git a/public/textures/minecraft/verdant_froglight.png b/public/textures/minecraft/verdant_froglight.png new file mode 100644 index 00000000..65b07175 Binary files /dev/null and b/public/textures/minecraft/verdant_froglight.png differ diff --git a/public/textures/minecraft/vex_armor_trim_smithing_template.png b/public/textures/minecraft/vex_armor_trim_smithing_template.png new file mode 100644 index 00000000..b560755f Binary files /dev/null and b/public/textures/minecraft/vex_armor_trim_smithing_template.png differ diff --git a/public/textures/minecraft/vex_spawn_egg.png b/public/textures/minecraft/vex_spawn_egg.png new file mode 100644 index 00000000..dca3d69d Binary files /dev/null and b/public/textures/minecraft/vex_spawn_egg.png differ diff --git a/public/textures/minecraft/villager_spawn_egg.png b/public/textures/minecraft/villager_spawn_egg.png new file mode 100644 index 00000000..f33bcf13 Binary files /dev/null and b/public/textures/minecraft/villager_spawn_egg.png differ diff --git a/public/textures/minecraft/vindicator_spawn_egg.png b/public/textures/minecraft/vindicator_spawn_egg.png new file mode 100644 index 00000000..011d83fa Binary files /dev/null and b/public/textures/minecraft/vindicator_spawn_egg.png differ diff --git a/public/textures/minecraft/vine.png b/public/textures/minecraft/vine.png new file mode 100644 index 00000000..ba320760 Binary files /dev/null and b/public/textures/minecraft/vine.png differ diff --git a/public/textures/minecraft/wandering_trader_spawn_egg.png b/public/textures/minecraft/wandering_trader_spawn_egg.png new file mode 100644 index 00000000..35cdef1d Binary files /dev/null and b/public/textures/minecraft/wandering_trader_spawn_egg.png differ diff --git a/public/textures/minecraft/ward_armor_trim_smithing_template.png b/public/textures/minecraft/ward_armor_trim_smithing_template.png new file mode 100644 index 00000000..ed317e71 Binary files /dev/null and b/public/textures/minecraft/ward_armor_trim_smithing_template.png differ diff --git a/public/textures/minecraft/warden_spawn_egg.png b/public/textures/minecraft/warden_spawn_egg.png new file mode 100644 index 00000000..2d1bef4d Binary files /dev/null and b/public/textures/minecraft/warden_spawn_egg.png differ diff --git a/public/textures/minecraft/warped_button.png b/public/textures/minecraft/warped_button.png new file mode 100644 index 00000000..0a25015e Binary files /dev/null and b/public/textures/minecraft/warped_button.png differ diff --git a/public/textures/minecraft/warped_door.png b/public/textures/minecraft/warped_door.png new file mode 100644 index 00000000..a5c9de02 Binary files /dev/null and b/public/textures/minecraft/warped_door.png differ diff --git a/public/textures/minecraft/warped_fence.png b/public/textures/minecraft/warped_fence.png new file mode 100644 index 00000000..20c03b81 Binary files /dev/null and b/public/textures/minecraft/warped_fence.png differ diff --git a/public/textures/minecraft/warped_fence_gate.png b/public/textures/minecraft/warped_fence_gate.png new file mode 100644 index 00000000..94e99657 Binary files /dev/null and b/public/textures/minecraft/warped_fence_gate.png differ diff --git a/public/textures/minecraft/warped_fungus.png b/public/textures/minecraft/warped_fungus.png new file mode 100644 index 00000000..6689558a Binary files /dev/null and b/public/textures/minecraft/warped_fungus.png differ diff --git a/public/textures/minecraft/warped_fungus_on_a_stick.png b/public/textures/minecraft/warped_fungus_on_a_stick.png new file mode 100644 index 00000000..cfcc54eb Binary files /dev/null and b/public/textures/minecraft/warped_fungus_on_a_stick.png differ diff --git a/public/textures/minecraft/warped_hanging_sign.png b/public/textures/minecraft/warped_hanging_sign.png new file mode 100644 index 00000000..89e7a51a Binary files /dev/null and b/public/textures/minecraft/warped_hanging_sign.png differ diff --git a/public/textures/minecraft/warped_hyphae.png b/public/textures/minecraft/warped_hyphae.png new file mode 100644 index 00000000..20b5dc57 Binary files /dev/null and b/public/textures/minecraft/warped_hyphae.png differ diff --git a/public/textures/minecraft/warped_nylium.png b/public/textures/minecraft/warped_nylium.png new file mode 100644 index 00000000..fdcf0b7e Binary files /dev/null and b/public/textures/minecraft/warped_nylium.png differ diff --git a/public/textures/minecraft/warped_planks.png b/public/textures/minecraft/warped_planks.png new file mode 100644 index 00000000..f7e0598e Binary files /dev/null and b/public/textures/minecraft/warped_planks.png differ diff --git a/public/textures/minecraft/warped_pressure_plate.png b/public/textures/minecraft/warped_pressure_plate.png new file mode 100644 index 00000000..107c02a7 Binary files /dev/null and b/public/textures/minecraft/warped_pressure_plate.png differ diff --git a/public/textures/minecraft/warped_roots.png b/public/textures/minecraft/warped_roots.png new file mode 100644 index 00000000..8b73778a Binary files /dev/null and b/public/textures/minecraft/warped_roots.png differ diff --git a/public/textures/minecraft/warped_sign.png b/public/textures/minecraft/warped_sign.png new file mode 100644 index 00000000..ba6b4ca9 Binary files /dev/null and b/public/textures/minecraft/warped_sign.png differ diff --git a/public/textures/minecraft/warped_slab.png b/public/textures/minecraft/warped_slab.png new file mode 100644 index 00000000..da65517d Binary files /dev/null and b/public/textures/minecraft/warped_slab.png differ diff --git a/public/textures/minecraft/warped_stairs.png b/public/textures/minecraft/warped_stairs.png new file mode 100644 index 00000000..ed354aa8 Binary files /dev/null and b/public/textures/minecraft/warped_stairs.png differ diff --git a/public/textures/minecraft/warped_stem.png b/public/textures/minecraft/warped_stem.png new file mode 100644 index 00000000..bf33871a Binary files /dev/null and b/public/textures/minecraft/warped_stem.png differ diff --git a/public/textures/minecraft/warped_trapdoor.png b/public/textures/minecraft/warped_trapdoor.png new file mode 100644 index 00000000..1e8054c4 Binary files /dev/null and b/public/textures/minecraft/warped_trapdoor.png differ diff --git a/public/textures/minecraft/warped_wart_block.png b/public/textures/minecraft/warped_wart_block.png new file mode 100644 index 00000000..c6efaae0 Binary files /dev/null and b/public/textures/minecraft/warped_wart_block.png differ diff --git a/public/textures/minecraft/water_bucket.png b/public/textures/minecraft/water_bucket.png new file mode 100644 index 00000000..21df436c Binary files /dev/null and b/public/textures/minecraft/water_bucket.png differ diff --git a/public/textures/minecraft/waxed_chiseled_copper.png b/public/textures/minecraft/waxed_chiseled_copper.png new file mode 100644 index 00000000..bee7cf12 Binary files /dev/null and b/public/textures/minecraft/waxed_chiseled_copper.png differ diff --git a/public/textures/minecraft/waxed_copper_block.png b/public/textures/minecraft/waxed_copper_block.png new file mode 100644 index 00000000..04105504 Binary files /dev/null and b/public/textures/minecraft/waxed_copper_block.png differ diff --git a/public/textures/minecraft/waxed_copper_bulb.png b/public/textures/minecraft/waxed_copper_bulb.png new file mode 100644 index 00000000..772b0bc2 Binary files /dev/null and b/public/textures/minecraft/waxed_copper_bulb.png differ diff --git a/public/textures/minecraft/waxed_copper_door.png b/public/textures/minecraft/waxed_copper_door.png new file mode 100644 index 00000000..a890b5f7 Binary files /dev/null and b/public/textures/minecraft/waxed_copper_door.png differ diff --git a/public/textures/minecraft/waxed_copper_grate.png b/public/textures/minecraft/waxed_copper_grate.png new file mode 100644 index 00000000..5636dc6d Binary files /dev/null and b/public/textures/minecraft/waxed_copper_grate.png differ diff --git a/public/textures/minecraft/waxed_copper_trapdoor.png b/public/textures/minecraft/waxed_copper_trapdoor.png new file mode 100644 index 00000000..66447999 Binary files /dev/null and b/public/textures/minecraft/waxed_copper_trapdoor.png differ diff --git a/public/textures/minecraft/waxed_cut_copper.png b/public/textures/minecraft/waxed_cut_copper.png new file mode 100644 index 00000000..c9d44236 Binary files /dev/null and b/public/textures/minecraft/waxed_cut_copper.png differ diff --git a/public/textures/minecraft/waxed_cut_copper_slab.png b/public/textures/minecraft/waxed_cut_copper_slab.png new file mode 100644 index 00000000..f6ae9341 Binary files /dev/null and b/public/textures/minecraft/waxed_cut_copper_slab.png differ diff --git a/public/textures/minecraft/waxed_cut_copper_stairs.png b/public/textures/minecraft/waxed_cut_copper_stairs.png new file mode 100644 index 00000000..8975122f Binary files /dev/null and b/public/textures/minecraft/waxed_cut_copper_stairs.png differ diff --git a/public/textures/minecraft/waxed_exposed_chiseled_copper.png b/public/textures/minecraft/waxed_exposed_chiseled_copper.png new file mode 100644 index 00000000..7fb17de7 Binary files /dev/null and b/public/textures/minecraft/waxed_exposed_chiseled_copper.png differ diff --git a/public/textures/minecraft/waxed_exposed_copper.png b/public/textures/minecraft/waxed_exposed_copper.png new file mode 100644 index 00000000..c9355740 Binary files /dev/null and b/public/textures/minecraft/waxed_exposed_copper.png differ diff --git a/public/textures/minecraft/waxed_exposed_copper_bulb.png b/public/textures/minecraft/waxed_exposed_copper_bulb.png new file mode 100644 index 00000000..677e2f23 Binary files /dev/null and b/public/textures/minecraft/waxed_exposed_copper_bulb.png differ diff --git a/public/textures/minecraft/waxed_exposed_copper_door.png b/public/textures/minecraft/waxed_exposed_copper_door.png new file mode 100644 index 00000000..5decc8ea Binary files /dev/null and b/public/textures/minecraft/waxed_exposed_copper_door.png differ diff --git a/public/textures/minecraft/waxed_exposed_copper_grate.png b/public/textures/minecraft/waxed_exposed_copper_grate.png new file mode 100644 index 00000000..16eb3c84 Binary files /dev/null and b/public/textures/minecraft/waxed_exposed_copper_grate.png differ diff --git a/public/textures/minecraft/waxed_exposed_copper_trapdoor.png b/public/textures/minecraft/waxed_exposed_copper_trapdoor.png new file mode 100644 index 00000000..578e6c5d Binary files /dev/null and b/public/textures/minecraft/waxed_exposed_copper_trapdoor.png differ diff --git a/public/textures/minecraft/waxed_exposed_cut_copper.png b/public/textures/minecraft/waxed_exposed_cut_copper.png new file mode 100644 index 00000000..1ab962f0 Binary files /dev/null and b/public/textures/minecraft/waxed_exposed_cut_copper.png differ diff --git a/public/textures/minecraft/waxed_exposed_cut_copper_slab.png b/public/textures/minecraft/waxed_exposed_cut_copper_slab.png new file mode 100644 index 00000000..f2775208 Binary files /dev/null and b/public/textures/minecraft/waxed_exposed_cut_copper_slab.png differ diff --git a/public/textures/minecraft/waxed_exposed_cut_copper_stairs.png b/public/textures/minecraft/waxed_exposed_cut_copper_stairs.png new file mode 100644 index 00000000..d93e123f Binary files /dev/null and b/public/textures/minecraft/waxed_exposed_cut_copper_stairs.png differ diff --git a/public/textures/minecraft/waxed_oxidized_chiseled_copper.png b/public/textures/minecraft/waxed_oxidized_chiseled_copper.png new file mode 100644 index 00000000..e2c6834d Binary files /dev/null and b/public/textures/minecraft/waxed_oxidized_chiseled_copper.png differ diff --git a/public/textures/minecraft/waxed_oxidized_copper.png b/public/textures/minecraft/waxed_oxidized_copper.png new file mode 100644 index 00000000..647dd8f6 Binary files /dev/null and b/public/textures/minecraft/waxed_oxidized_copper.png differ diff --git a/public/textures/minecraft/waxed_oxidized_copper_bulb.png b/public/textures/minecraft/waxed_oxidized_copper_bulb.png new file mode 100644 index 00000000..eda2e1d5 Binary files /dev/null and b/public/textures/minecraft/waxed_oxidized_copper_bulb.png differ diff --git a/public/textures/minecraft/waxed_oxidized_copper_door.png b/public/textures/minecraft/waxed_oxidized_copper_door.png new file mode 100644 index 00000000..cb9cdcf1 Binary files /dev/null and b/public/textures/minecraft/waxed_oxidized_copper_door.png differ diff --git a/public/textures/minecraft/waxed_oxidized_copper_grate.png b/public/textures/minecraft/waxed_oxidized_copper_grate.png new file mode 100644 index 00000000..a6286bdb Binary files /dev/null and b/public/textures/minecraft/waxed_oxidized_copper_grate.png differ diff --git a/public/textures/minecraft/waxed_oxidized_copper_trapdoor.png b/public/textures/minecraft/waxed_oxidized_copper_trapdoor.png new file mode 100644 index 00000000..69ca0a13 Binary files /dev/null and b/public/textures/minecraft/waxed_oxidized_copper_trapdoor.png differ diff --git a/public/textures/minecraft/waxed_oxidized_cut_copper.png b/public/textures/minecraft/waxed_oxidized_cut_copper.png new file mode 100644 index 00000000..fd6cfaf3 Binary files /dev/null and b/public/textures/minecraft/waxed_oxidized_cut_copper.png differ diff --git a/public/textures/minecraft/waxed_oxidized_cut_copper_slab.png b/public/textures/minecraft/waxed_oxidized_cut_copper_slab.png new file mode 100644 index 00000000..4f83ec6e Binary files /dev/null and b/public/textures/minecraft/waxed_oxidized_cut_copper_slab.png differ diff --git a/public/textures/minecraft/waxed_oxidized_cut_copper_stairs.png b/public/textures/minecraft/waxed_oxidized_cut_copper_stairs.png new file mode 100644 index 00000000..27a5be14 Binary files /dev/null and b/public/textures/minecraft/waxed_oxidized_cut_copper_stairs.png differ diff --git a/public/textures/minecraft/waxed_weathered_chiseled_copper.png b/public/textures/minecraft/waxed_weathered_chiseled_copper.png new file mode 100644 index 00000000..1dc77a66 Binary files /dev/null and b/public/textures/minecraft/waxed_weathered_chiseled_copper.png differ diff --git a/public/textures/minecraft/waxed_weathered_copper.png b/public/textures/minecraft/waxed_weathered_copper.png new file mode 100644 index 00000000..7906a248 Binary files /dev/null and b/public/textures/minecraft/waxed_weathered_copper.png differ diff --git a/public/textures/minecraft/waxed_weathered_copper_bulb.png b/public/textures/minecraft/waxed_weathered_copper_bulb.png new file mode 100644 index 00000000..259ae263 Binary files /dev/null and b/public/textures/minecraft/waxed_weathered_copper_bulb.png differ diff --git a/public/textures/minecraft/waxed_weathered_copper_door.png b/public/textures/minecraft/waxed_weathered_copper_door.png new file mode 100644 index 00000000..2e2f43a0 Binary files /dev/null and b/public/textures/minecraft/waxed_weathered_copper_door.png differ diff --git a/public/textures/minecraft/waxed_weathered_copper_grate.png b/public/textures/minecraft/waxed_weathered_copper_grate.png new file mode 100644 index 00000000..3b945f81 Binary files /dev/null and b/public/textures/minecraft/waxed_weathered_copper_grate.png differ diff --git a/public/textures/minecraft/waxed_weathered_copper_trapdoor.png b/public/textures/minecraft/waxed_weathered_copper_trapdoor.png new file mode 100644 index 00000000..1933120e Binary files /dev/null and b/public/textures/minecraft/waxed_weathered_copper_trapdoor.png differ diff --git a/public/textures/minecraft/waxed_weathered_cut_copper.png b/public/textures/minecraft/waxed_weathered_cut_copper.png new file mode 100644 index 00000000..e38892dc Binary files /dev/null and b/public/textures/minecraft/waxed_weathered_cut_copper.png differ diff --git a/public/textures/minecraft/waxed_weathered_cut_copper_slab.png b/public/textures/minecraft/waxed_weathered_cut_copper_slab.png new file mode 100644 index 00000000..1d564fcd Binary files /dev/null and b/public/textures/minecraft/waxed_weathered_cut_copper_slab.png differ diff --git a/public/textures/minecraft/waxed_weathered_cut_copper_stairs.png b/public/textures/minecraft/waxed_weathered_cut_copper_stairs.png new file mode 100644 index 00000000..92ef1e57 Binary files /dev/null and b/public/textures/minecraft/waxed_weathered_cut_copper_stairs.png differ diff --git a/public/textures/minecraft/wayfinder_armor_trim_smithing_template.png b/public/textures/minecraft/wayfinder_armor_trim_smithing_template.png new file mode 100644 index 00000000..01807d8f Binary files /dev/null and b/public/textures/minecraft/wayfinder_armor_trim_smithing_template.png differ diff --git a/public/textures/minecraft/weathered_chiseled_copper.png b/public/textures/minecraft/weathered_chiseled_copper.png new file mode 100644 index 00000000..1dc77a66 Binary files /dev/null and b/public/textures/minecraft/weathered_chiseled_copper.png differ diff --git a/public/textures/minecraft/weathered_copper.png b/public/textures/minecraft/weathered_copper.png new file mode 100644 index 00000000..7906a248 Binary files /dev/null and b/public/textures/minecraft/weathered_copper.png differ diff --git a/public/textures/minecraft/weathered_copper_bulb.png b/public/textures/minecraft/weathered_copper_bulb.png new file mode 100644 index 00000000..259ae263 Binary files /dev/null and b/public/textures/minecraft/weathered_copper_bulb.png differ diff --git a/public/textures/minecraft/weathered_copper_door.png b/public/textures/minecraft/weathered_copper_door.png new file mode 100644 index 00000000..2e2f43a0 Binary files /dev/null and b/public/textures/minecraft/weathered_copper_door.png differ diff --git a/public/textures/minecraft/weathered_copper_grate.png b/public/textures/minecraft/weathered_copper_grate.png new file mode 100644 index 00000000..3b945f81 Binary files /dev/null and b/public/textures/minecraft/weathered_copper_grate.png differ diff --git a/public/textures/minecraft/weathered_copper_trapdoor.png b/public/textures/minecraft/weathered_copper_trapdoor.png new file mode 100644 index 00000000..1933120e Binary files /dev/null and b/public/textures/minecraft/weathered_copper_trapdoor.png differ diff --git a/public/textures/minecraft/weathered_cut_copper.png b/public/textures/minecraft/weathered_cut_copper.png new file mode 100644 index 00000000..e38892dc Binary files /dev/null and b/public/textures/minecraft/weathered_cut_copper.png differ diff --git a/public/textures/minecraft/weathered_cut_copper_slab.png b/public/textures/minecraft/weathered_cut_copper_slab.png new file mode 100644 index 00000000..1d564fcd Binary files /dev/null and b/public/textures/minecraft/weathered_cut_copper_slab.png differ diff --git a/public/textures/minecraft/weathered_cut_copper_stairs.png b/public/textures/minecraft/weathered_cut_copper_stairs.png new file mode 100644 index 00000000..92ef1e57 Binary files /dev/null and b/public/textures/minecraft/weathered_cut_copper_stairs.png differ diff --git a/public/textures/minecraft/weeping_vines.png b/public/textures/minecraft/weeping_vines.png new file mode 100644 index 00000000..ee43a8f5 Binary files /dev/null and b/public/textures/minecraft/weeping_vines.png differ diff --git a/public/textures/minecraft/wet_sponge.png b/public/textures/minecraft/wet_sponge.png new file mode 100644 index 00000000..e059817c Binary files /dev/null and b/public/textures/minecraft/wet_sponge.png differ diff --git a/public/textures/minecraft/wheat.png b/public/textures/minecraft/wheat.png new file mode 100644 index 00000000..b56be07b Binary files /dev/null and b/public/textures/minecraft/wheat.png differ diff --git a/public/textures/minecraft/wheat_seeds.png b/public/textures/minecraft/wheat_seeds.png new file mode 100644 index 00000000..6c31b5d9 Binary files /dev/null and b/public/textures/minecraft/wheat_seeds.png differ diff --git a/public/textures/minecraft/white_banner.png b/public/textures/minecraft/white_banner.png new file mode 100644 index 00000000..27fd304f Binary files /dev/null and b/public/textures/minecraft/white_banner.png differ diff --git a/public/textures/minecraft/white_bed.png b/public/textures/minecraft/white_bed.png new file mode 100644 index 00000000..3e995b16 Binary files /dev/null and b/public/textures/minecraft/white_bed.png differ diff --git a/public/textures/minecraft/white_candle.png b/public/textures/minecraft/white_candle.png new file mode 100644 index 00000000..13a54213 Binary files /dev/null and b/public/textures/minecraft/white_candle.png differ diff --git a/public/textures/minecraft/white_carpet.png b/public/textures/minecraft/white_carpet.png new file mode 100644 index 00000000..a9eff82b Binary files /dev/null and b/public/textures/minecraft/white_carpet.png differ diff --git a/public/textures/minecraft/white_concrete.png b/public/textures/minecraft/white_concrete.png new file mode 100644 index 00000000..0967bf73 Binary files /dev/null and b/public/textures/minecraft/white_concrete.png differ diff --git a/public/textures/minecraft/white_concrete_powder.png b/public/textures/minecraft/white_concrete_powder.png new file mode 100644 index 00000000..3cd21958 Binary files /dev/null and b/public/textures/minecraft/white_concrete_powder.png differ diff --git a/public/textures/minecraft/white_dye.png b/public/textures/minecraft/white_dye.png new file mode 100644 index 00000000..93799553 Binary files /dev/null and b/public/textures/minecraft/white_dye.png differ diff --git a/public/textures/minecraft/white_glazed_terracotta.png b/public/textures/minecraft/white_glazed_terracotta.png new file mode 100644 index 00000000..df66716a Binary files /dev/null and b/public/textures/minecraft/white_glazed_terracotta.png differ diff --git a/public/textures/minecraft/white_shulker_box.png b/public/textures/minecraft/white_shulker_box.png new file mode 100644 index 00000000..1ba8617f Binary files /dev/null and b/public/textures/minecraft/white_shulker_box.png differ diff --git a/public/textures/minecraft/white_stained_glass.png b/public/textures/minecraft/white_stained_glass.png new file mode 100644 index 00000000..52449d7f Binary files /dev/null and b/public/textures/minecraft/white_stained_glass.png differ diff --git a/public/textures/minecraft/white_stained_glass_pane.png b/public/textures/minecraft/white_stained_glass_pane.png new file mode 100644 index 00000000..c95a78ab Binary files /dev/null and b/public/textures/minecraft/white_stained_glass_pane.png differ diff --git a/public/textures/minecraft/white_terracotta.png b/public/textures/minecraft/white_terracotta.png new file mode 100644 index 00000000..235ebfb2 Binary files /dev/null and b/public/textures/minecraft/white_terracotta.png differ diff --git a/public/textures/minecraft/white_tulip.png b/public/textures/minecraft/white_tulip.png new file mode 100644 index 00000000..d6dd5c9e Binary files /dev/null and b/public/textures/minecraft/white_tulip.png differ diff --git a/public/textures/minecraft/white_wool.png b/public/textures/minecraft/white_wool.png new file mode 100644 index 00000000..eb2a2ae7 Binary files /dev/null and b/public/textures/minecraft/white_wool.png differ diff --git a/public/textures/minecraft/wild_armor_trim_smithing_template.png b/public/textures/minecraft/wild_armor_trim_smithing_template.png new file mode 100644 index 00000000..c89bc724 Binary files /dev/null and b/public/textures/minecraft/wild_armor_trim_smithing_template.png differ diff --git a/public/textures/minecraft/wind_charge.png b/public/textures/minecraft/wind_charge.png new file mode 100644 index 00000000..72fe08a1 Binary files /dev/null and b/public/textures/minecraft/wind_charge.png differ diff --git a/public/textures/minecraft/witch_spawn_egg.png b/public/textures/minecraft/witch_spawn_egg.png new file mode 100644 index 00000000..dc436c84 Binary files /dev/null and b/public/textures/minecraft/witch_spawn_egg.png differ diff --git a/public/textures/minecraft/wither_rose.png b/public/textures/minecraft/wither_rose.png new file mode 100644 index 00000000..78ebf2b6 Binary files /dev/null and b/public/textures/minecraft/wither_rose.png differ diff --git a/public/textures/minecraft/wither_skeleton_skull.png b/public/textures/minecraft/wither_skeleton_skull.png new file mode 100644 index 00000000..0523d0c6 Binary files /dev/null and b/public/textures/minecraft/wither_skeleton_skull.png differ diff --git a/public/textures/minecraft/wither_skeleton_spawn_egg.png b/public/textures/minecraft/wither_skeleton_spawn_egg.png new file mode 100644 index 00000000..c1545f30 Binary files /dev/null and b/public/textures/minecraft/wither_skeleton_spawn_egg.png differ diff --git a/public/textures/minecraft/wolf_armor.png b/public/textures/minecraft/wolf_armor.png new file mode 100644 index 00000000..d3f142e8 Binary files /dev/null and b/public/textures/minecraft/wolf_armor.png differ diff --git a/public/textures/minecraft/wolf_spawn_egg.png b/public/textures/minecraft/wolf_spawn_egg.png new file mode 100644 index 00000000..82e510c0 Binary files /dev/null and b/public/textures/minecraft/wolf_spawn_egg.png differ diff --git a/public/textures/minecraft/wooden_axe.png b/public/textures/minecraft/wooden_axe.png new file mode 100644 index 00000000..53f46585 Binary files /dev/null and b/public/textures/minecraft/wooden_axe.png differ diff --git a/public/textures/minecraft/wooden_hoe.png b/public/textures/minecraft/wooden_hoe.png new file mode 100644 index 00000000..b5e713ee Binary files /dev/null and b/public/textures/minecraft/wooden_hoe.png differ diff --git a/public/textures/minecraft/wooden_pickaxe.png b/public/textures/minecraft/wooden_pickaxe.png new file mode 100644 index 00000000..2dc08d12 Binary files /dev/null and b/public/textures/minecraft/wooden_pickaxe.png differ diff --git a/public/textures/minecraft/wooden_shovel.png b/public/textures/minecraft/wooden_shovel.png new file mode 100644 index 00000000..bc6de92f Binary files /dev/null and b/public/textures/minecraft/wooden_shovel.png differ diff --git a/public/textures/minecraft/wooden_sword.png b/public/textures/minecraft/wooden_sword.png new file mode 100644 index 00000000..7a00dd61 Binary files /dev/null and b/public/textures/minecraft/wooden_sword.png differ diff --git a/public/textures/minecraft/writable_book.png b/public/textures/minecraft/writable_book.png new file mode 100644 index 00000000..a08ffa3e Binary files /dev/null and b/public/textures/minecraft/writable_book.png differ diff --git a/public/textures/minecraft/yellow_banner.png b/public/textures/minecraft/yellow_banner.png new file mode 100644 index 00000000..7faa035e Binary files /dev/null and b/public/textures/minecraft/yellow_banner.png differ diff --git a/public/textures/minecraft/yellow_bed.png b/public/textures/minecraft/yellow_bed.png new file mode 100644 index 00000000..384b0548 Binary files /dev/null and b/public/textures/minecraft/yellow_bed.png differ diff --git a/public/textures/minecraft/yellow_candle.png b/public/textures/minecraft/yellow_candle.png new file mode 100644 index 00000000..cd7e0a2c Binary files /dev/null and b/public/textures/minecraft/yellow_candle.png differ diff --git a/public/textures/minecraft/yellow_carpet.png b/public/textures/minecraft/yellow_carpet.png new file mode 100644 index 00000000..f3a4c429 Binary files /dev/null and b/public/textures/minecraft/yellow_carpet.png differ diff --git a/public/textures/minecraft/yellow_concrete.png b/public/textures/minecraft/yellow_concrete.png new file mode 100644 index 00000000..3ef9e65d Binary files /dev/null and b/public/textures/minecraft/yellow_concrete.png differ diff --git a/public/textures/minecraft/yellow_concrete_powder.png b/public/textures/minecraft/yellow_concrete_powder.png new file mode 100644 index 00000000..4a63ae3b Binary files /dev/null and b/public/textures/minecraft/yellow_concrete_powder.png differ diff --git a/public/textures/minecraft/yellow_dye.png b/public/textures/minecraft/yellow_dye.png new file mode 100644 index 00000000..ce8d46e4 Binary files /dev/null and b/public/textures/minecraft/yellow_dye.png differ diff --git a/public/textures/minecraft/yellow_glazed_terracotta.png b/public/textures/minecraft/yellow_glazed_terracotta.png new file mode 100644 index 00000000..2c563709 Binary files /dev/null and b/public/textures/minecraft/yellow_glazed_terracotta.png differ diff --git a/public/textures/minecraft/yellow_shulker_box.png b/public/textures/minecraft/yellow_shulker_box.png new file mode 100644 index 00000000..9342c247 Binary files /dev/null and b/public/textures/minecraft/yellow_shulker_box.png differ diff --git a/public/textures/minecraft/yellow_stained_glass.png b/public/textures/minecraft/yellow_stained_glass.png new file mode 100644 index 00000000..133548f9 Binary files /dev/null and b/public/textures/minecraft/yellow_stained_glass.png differ diff --git a/public/textures/minecraft/yellow_stained_glass_pane.png b/public/textures/minecraft/yellow_stained_glass_pane.png new file mode 100644 index 00000000..6fef103c Binary files /dev/null and b/public/textures/minecraft/yellow_stained_glass_pane.png differ diff --git a/public/textures/minecraft/yellow_terracotta.png b/public/textures/minecraft/yellow_terracotta.png new file mode 100644 index 00000000..a27bb394 Binary files /dev/null and b/public/textures/minecraft/yellow_terracotta.png differ diff --git a/public/textures/minecraft/yellow_wool.png b/public/textures/minecraft/yellow_wool.png new file mode 100644 index 00000000..5cfd5945 Binary files /dev/null and b/public/textures/minecraft/yellow_wool.png differ diff --git a/public/textures/minecraft/zoglin_spawn_egg.png b/public/textures/minecraft/zoglin_spawn_egg.png new file mode 100644 index 00000000..f2ad4d8a Binary files /dev/null and b/public/textures/minecraft/zoglin_spawn_egg.png differ diff --git a/public/textures/minecraft/zombie_head.png b/public/textures/minecraft/zombie_head.png new file mode 100644 index 00000000..06d612df Binary files /dev/null and b/public/textures/minecraft/zombie_head.png differ diff --git a/public/textures/minecraft/zombie_horse_spawn_egg.png b/public/textures/minecraft/zombie_horse_spawn_egg.png new file mode 100644 index 00000000..9842eb61 Binary files /dev/null and b/public/textures/minecraft/zombie_horse_spawn_egg.png differ diff --git a/public/textures/minecraft/zombie_spawn_egg.png b/public/textures/minecraft/zombie_spawn_egg.png new file mode 100644 index 00000000..d86c2a60 Binary files /dev/null and b/public/textures/minecraft/zombie_spawn_egg.png differ diff --git a/public/textures/minecraft/zombie_villager_spawn_egg.png b/public/textures/minecraft/zombie_villager_spawn_egg.png new file mode 100644 index 00000000..8c428480 Binary files /dev/null and b/public/textures/minecraft/zombie_villager_spawn_egg.png differ diff --git a/public/textures/minecraft/zombified_piglin_spawn_egg.png b/public/textures/minecraft/zombified_piglin_spawn_egg.png new file mode 100644 index 00000000..69b6a4b1 Binary files /dev/null and b/public/textures/minecraft/zombified_piglin_spawn_egg.png differ diff --git a/public/textures/more_immersive_wires/ae_coil.png b/public/textures/more_immersive_wires/ae_coil.png new file mode 100644 index 00000000..e1ce818a Binary files /dev/null and b/public/textures/more_immersive_wires/ae_coil.png differ diff --git a/public/textures/more_immersive_wires/ae_connector.png b/public/textures/more_immersive_wires/ae_connector.png new file mode 100644 index 00000000..e7f566a6 Binary files /dev/null and b/public/textures/more_immersive_wires/ae_connector.png differ diff --git a/public/textures/more_immersive_wires/ae_dense_coil.png b/public/textures/more_immersive_wires/ae_dense_coil.png new file mode 100644 index 00000000..91951f2d Binary files /dev/null and b/public/textures/more_immersive_wires/ae_dense_coil.png differ diff --git a/public/textures/more_immersive_wires/ae_dense_connector.png b/public/textures/more_immersive_wires/ae_dense_connector.png new file mode 100644 index 00000000..88ba5bbe Binary files /dev/null and b/public/textures/more_immersive_wires/ae_dense_connector.png differ diff --git a/public/textures/more_immersive_wires/ae_dense_relay.png b/public/textures/more_immersive_wires/ae_dense_relay.png new file mode 100644 index 00000000..9efb13e6 Binary files /dev/null and b/public/textures/more_immersive_wires/ae_dense_relay.png differ diff --git a/public/textures/more_immersive_wires/ae_relay.png b/public/textures/more_immersive_wires/ae_relay.png new file mode 100644 index 00000000..137e9254 Binary files /dev/null and b/public/textures/more_immersive_wires/ae_relay.png differ diff --git a/public/textures/more_immersive_wires/cc_coil.png b/public/textures/more_immersive_wires/cc_coil.png new file mode 100644 index 00000000..8c7972ce Binary files /dev/null and b/public/textures/more_immersive_wires/cc_coil.png differ diff --git a/public/textures/more_immersive_wires/cc_connector.png b/public/textures/more_immersive_wires/cc_connector.png new file mode 100644 index 00000000..d1fbd4c6 Binary files /dev/null and b/public/textures/more_immersive_wires/cc_connector.png differ diff --git a/public/textures/more_immersive_wires/cc_modem.png b/public/textures/more_immersive_wires/cc_modem.png new file mode 100644 index 00000000..206fb031 Binary files /dev/null and b/public/textures/more_immersive_wires/cc_modem.png differ diff --git a/public/textures/more_immersive_wires/cc_relay.png b/public/textures/more_immersive_wires/cc_relay.png new file mode 100644 index 00000000..cb7dac6e Binary files /dev/null and b/public/textures/more_immersive_wires/cc_relay.png differ diff --git a/public/textures/morered/and_2_gate.png b/public/textures/morered/and_2_gate.png new file mode 100644 index 00000000..4f3a8cc8 Binary files /dev/null and b/public/textures/morered/and_2_gate.png differ diff --git a/public/textures/morered/and_gate.png b/public/textures/morered/and_gate.png new file mode 100644 index 00000000..cea07602 Binary files /dev/null and b/public/textures/morered/and_gate.png differ diff --git a/public/textures/morered/bitwise_and_gate.png b/public/textures/morered/bitwise_and_gate.png new file mode 100644 index 00000000..fc3434e2 Binary files /dev/null and b/public/textures/morered/bitwise_and_gate.png differ diff --git a/public/textures/morered/bitwise_diode.png b/public/textures/morered/bitwise_diode.png new file mode 100644 index 00000000..f0ac3dae Binary files /dev/null and b/public/textures/morered/bitwise_diode.png differ diff --git a/public/textures/morered/bitwise_not_gate.png b/public/textures/morered/bitwise_not_gate.png new file mode 100644 index 00000000..a29ce55b Binary files /dev/null and b/public/textures/morered/bitwise_not_gate.png differ diff --git a/public/textures/morered/bitwise_or_gate.png b/public/textures/morered/bitwise_or_gate.png new file mode 100644 index 00000000..42c758b3 Binary files /dev/null and b/public/textures/morered/bitwise_or_gate.png differ diff --git a/public/textures/morered/bitwise_xnor_gate.png b/public/textures/morered/bitwise_xnor_gate.png new file mode 100644 index 00000000..c1d3c857 Binary files /dev/null and b/public/textures/morered/bitwise_xnor_gate.png differ diff --git a/public/textures/morered/bitwise_xor_gate.png b/public/textures/morered/bitwise_xor_gate.png new file mode 100644 index 00000000..9ba88a11 Binary files /dev/null and b/public/textures/morered/bitwise_xor_gate.png differ diff --git a/public/textures/morered/black_network_cable.png b/public/textures/morered/black_network_cable.png new file mode 100644 index 00000000..e786898d Binary files /dev/null and b/public/textures/morered/black_network_cable.png differ diff --git a/public/textures/morered/blue_network_cable.png b/public/textures/morered/blue_network_cable.png new file mode 100644 index 00000000..2cb972ed Binary files /dev/null and b/public/textures/morered/blue_network_cable.png differ diff --git a/public/textures/morered/brown_network_cable.png b/public/textures/morered/brown_network_cable.png new file mode 100644 index 00000000..8b7e5279 Binary files /dev/null and b/public/textures/morered/brown_network_cable.png differ diff --git a/public/textures/morered/bundled_cable_post.png b/public/textures/morered/bundled_cable_post.png new file mode 100644 index 00000000..d56851c2 Binary files /dev/null and b/public/textures/morered/bundled_cable_post.png differ diff --git a/public/textures/morered/bundled_cable_relay_plate.png b/public/textures/morered/bundled_cable_relay_plate.png new file mode 100644 index 00000000..5e336aa6 Binary files /dev/null and b/public/textures/morered/bundled_cable_relay_plate.png differ diff --git a/public/textures/morered/bundled_cable_spool.png b/public/textures/morered/bundled_cable_spool.png new file mode 100644 index 00000000..4647ff50 Binary files /dev/null and b/public/textures/morered/bundled_cable_spool.png differ diff --git a/public/textures/morered/bundled_network_cable.png b/public/textures/morered/bundled_network_cable.png new file mode 100644 index 00000000..05c57f23 Binary files /dev/null and b/public/textures/morered/bundled_network_cable.png differ diff --git a/public/textures/morered/cyan_network_cable.png b/public/textures/morered/cyan_network_cable.png new file mode 100644 index 00000000..5b1d6e5f Binary files /dev/null and b/public/textures/morered/cyan_network_cable.png differ diff --git a/public/textures/morered/diode.png b/public/textures/morered/diode.png new file mode 100644 index 00000000..3d87c40f Binary files /dev/null and b/public/textures/morered/diode.png differ diff --git a/public/textures/morered/gray_network_cable.png b/public/textures/morered/gray_network_cable.png new file mode 100644 index 00000000..3b5ce27c Binary files /dev/null and b/public/textures/morered/gray_network_cable.png differ diff --git a/public/textures/morered/green_network_cable.png b/public/textures/morered/green_network_cable.png new file mode 100644 index 00000000..338f3d58 Binary files /dev/null and b/public/textures/morered/green_network_cable.png differ diff --git a/public/textures/morered/hexidecrubrometer.png b/public/textures/morered/hexidecrubrometer.png new file mode 100644 index 00000000..e4fa1c28 Binary files /dev/null and b/public/textures/morered/hexidecrubrometer.png differ diff --git a/public/textures/morered/latch.png b/public/textures/morered/latch.png new file mode 100644 index 00000000..a148a52b Binary files /dev/null and b/public/textures/morered/latch.png differ diff --git a/public/textures/morered/light_blue_network_cable.png b/public/textures/morered/light_blue_network_cable.png new file mode 100644 index 00000000..48900278 Binary files /dev/null and b/public/textures/morered/light_blue_network_cable.png differ diff --git a/public/textures/morered/light_gray_network_cable.png b/public/textures/morered/light_gray_network_cable.png new file mode 100644 index 00000000..68744520 Binary files /dev/null and b/public/textures/morered/light_gray_network_cable.png differ diff --git a/public/textures/morered/lime_network_cable.png b/public/textures/morered/lime_network_cable.png new file mode 100644 index 00000000..345b2c33 Binary files /dev/null and b/public/textures/morered/lime_network_cable.png differ diff --git a/public/textures/morered/magenta_network_cable.png b/public/textures/morered/magenta_network_cable.png new file mode 100644 index 00000000..a6e0c10c Binary files /dev/null and b/public/textures/morered/magenta_network_cable.png differ diff --git a/public/textures/morered/multiplexer.png b/public/textures/morered/multiplexer.png new file mode 100644 index 00000000..b2e2d3d7 Binary files /dev/null and b/public/textures/morered/multiplexer.png differ diff --git a/public/textures/morered/nand_2_gate.png b/public/textures/morered/nand_2_gate.png new file mode 100644 index 00000000..988b02d9 Binary files /dev/null and b/public/textures/morered/nand_2_gate.png differ diff --git a/public/textures/morered/nand_gate.png b/public/textures/morered/nand_gate.png new file mode 100644 index 00000000..ae3b629b Binary files /dev/null and b/public/textures/morered/nand_gate.png differ diff --git a/public/textures/morered/nor_gate.png b/public/textures/morered/nor_gate.png new file mode 100644 index 00000000..c8a10da9 Binary files /dev/null and b/public/textures/morered/nor_gate.png differ diff --git a/public/textures/morered/not_gate.png b/public/textures/morered/not_gate.png new file mode 100644 index 00000000..43ade6ae Binary files /dev/null and b/public/textures/morered/not_gate.png differ diff --git a/public/textures/morered/or_gate.png b/public/textures/morered/or_gate.png new file mode 100644 index 00000000..1f96cc7d Binary files /dev/null and b/public/textures/morered/or_gate.png differ diff --git a/public/textures/morered/orange_network_cable.png b/public/textures/morered/orange_network_cable.png new file mode 100644 index 00000000..fc3a6d12 Binary files /dev/null and b/public/textures/morered/orange_network_cable.png differ diff --git a/public/textures/morered/pink_network_cable.png b/public/textures/morered/pink_network_cable.png new file mode 100644 index 00000000..15a69987 Binary files /dev/null and b/public/textures/morered/pink_network_cable.png differ diff --git a/public/textures/morered/pulse_gate.png b/public/textures/morered/pulse_gate.png new file mode 100644 index 00000000..c54e5265 Binary files /dev/null and b/public/textures/morered/pulse_gate.png differ diff --git a/public/textures/morered/purple_network_cable.png b/public/textures/morered/purple_network_cable.png new file mode 100644 index 00000000..49088ab9 Binary files /dev/null and b/public/textures/morered/purple_network_cable.png differ diff --git a/public/textures/morered/red_alloy_ingot.png b/public/textures/morered/red_alloy_ingot.png new file mode 100644 index 00000000..fa8088cd Binary files /dev/null and b/public/textures/morered/red_alloy_ingot.png differ diff --git a/public/textures/morered/red_alloy_wire.png b/public/textures/morered/red_alloy_wire.png new file mode 100644 index 00000000..4eb952a4 Binary files /dev/null and b/public/textures/morered/red_alloy_wire.png differ diff --git a/public/textures/morered/red_network_cable.png b/public/textures/morered/red_network_cable.png new file mode 100644 index 00000000..0586af7b Binary files /dev/null and b/public/textures/morered/red_network_cable.png differ diff --git a/public/textures/morered/redwire_post.png b/public/textures/morered/redwire_post.png new file mode 100644 index 00000000..359104fa Binary files /dev/null and b/public/textures/morered/redwire_post.png differ diff --git a/public/textures/morered/redwire_post_plate.png b/public/textures/morered/redwire_post_plate.png new file mode 100644 index 00000000..6b3b1a38 Binary files /dev/null and b/public/textures/morered/redwire_post_plate.png differ diff --git a/public/textures/morered/redwire_post_relay_plate.png b/public/textures/morered/redwire_post_relay_plate.png new file mode 100644 index 00000000..38bebde7 Binary files /dev/null and b/public/textures/morered/redwire_post_relay_plate.png differ diff --git a/public/textures/morered/redwire_spool.png b/public/textures/morered/redwire_spool.png new file mode 100644 index 00000000..35b8b05c Binary files /dev/null and b/public/textures/morered/redwire_spool.png differ diff --git a/public/textures/morered/soldering_table.png b/public/textures/morered/soldering_table.png new file mode 100644 index 00000000..f5bf9830 Binary files /dev/null and b/public/textures/morered/soldering_table.png differ diff --git a/public/textures/morered/stone_plate.png b/public/textures/morered/stone_plate.png new file mode 100644 index 00000000..aa6fd7c0 Binary files /dev/null and b/public/textures/morered/stone_plate.png differ diff --git a/public/textures/morered/white_network_cable.png b/public/textures/morered/white_network_cable.png new file mode 100644 index 00000000..ed743dfd Binary files /dev/null and b/public/textures/morered/white_network_cable.png differ diff --git a/public/textures/morered/xnor_gate.png b/public/textures/morered/xnor_gate.png new file mode 100644 index 00000000..df956fd7 Binary files /dev/null and b/public/textures/morered/xnor_gate.png differ diff --git a/public/textures/morered/xor_gate.png b/public/textures/morered/xor_gate.png new file mode 100644 index 00000000..b4bfa7a9 Binary files /dev/null and b/public/textures/morered/xor_gate.png differ diff --git a/public/textures/morered/yellow_network_cable.png b/public/textures/morered/yellow_network_cable.png new file mode 100644 index 00000000..877b8517 Binary files /dev/null and b/public/textures/morered/yellow_network_cable.png differ diff --git a/public/textures/mynethersdelight/bacon-wrapped_sausage_on_a_stick.png b/public/textures/mynethersdelight/bacon-wrapped_sausage_on_a_stick.png new file mode 100644 index 00000000..2efdcf6c Binary files /dev/null and b/public/textures/mynethersdelight/bacon-wrapped_sausage_on_a_stick.png differ diff --git a/public/textures/mynethersdelight/blackstone_bricks_cabinet.png b/public/textures/mynethersdelight/blackstone_bricks_cabinet.png new file mode 100644 index 00000000..2979c373 Binary files /dev/null and b/public/textures/mynethersdelight/blackstone_bricks_cabinet.png differ diff --git a/public/textures/mynethersdelight/bleeding_tartar.png b/public/textures/mynethersdelight/bleeding_tartar.png new file mode 100644 index 00000000..81f152eb Binary files /dev/null and b/public/textures/mynethersdelight/bleeding_tartar.png differ diff --git a/public/textures/mynethersdelight/blue_tenderloin_steak.png b/public/textures/mynethersdelight/blue_tenderloin_steak.png new file mode 100644 index 00000000..ff894ef6 Binary files /dev/null and b/public/textures/mynethersdelight/blue_tenderloin_steak.png differ diff --git a/public/textures/mynethersdelight/boiled_egg.png b/public/textures/mynethersdelight/boiled_egg.png new file mode 100644 index 00000000..e86c7fc9 Binary files /dev/null and b/public/textures/mynethersdelight/boiled_egg.png differ diff --git a/public/textures/mynethersdelight/bread_loaf.png b/public/textures/mynethersdelight/bread_loaf.png new file mode 100644 index 00000000..6325baef Binary files /dev/null and b/public/textures/mynethersdelight/bread_loaf.png differ diff --git a/public/textures/mynethersdelight/breakfast_sampler.png b/public/textures/mynethersdelight/breakfast_sampler.png new file mode 100644 index 00000000..1cc24ff1 Binary files /dev/null and b/public/textures/mynethersdelight/breakfast_sampler.png differ diff --git a/public/textures/mynethersdelight/bullet_pepper.png b/public/textures/mynethersdelight/bullet_pepper.png new file mode 100644 index 00000000..3e1298ac Binary files /dev/null and b/public/textures/mynethersdelight/bullet_pepper.png differ diff --git a/public/textures/mynethersdelight/bullet_pepper_crate.png b/public/textures/mynethersdelight/bullet_pepper_crate.png new file mode 100644 index 00000000..357d58c0 Binary files /dev/null and b/public/textures/mynethersdelight/bullet_pepper_crate.png differ diff --git a/public/textures/mynethersdelight/burnt_roll.png b/public/textures/mynethersdelight/burnt_roll.png new file mode 100644 index 00000000..f51167f8 Binary files /dev/null and b/public/textures/mynethersdelight/burnt_roll.png differ diff --git a/public/textures/mynethersdelight/chilidog.png b/public/textures/mynethersdelight/chilidog.png new file mode 100644 index 00000000..0dc4cd17 Binary files /dev/null and b/public/textures/mynethersdelight/chilidog.png differ diff --git a/public/textures/mynethersdelight/cold_striderloaf.png b/public/textures/mynethersdelight/cold_striderloaf.png new file mode 100644 index 00000000..176db83e Binary files /dev/null and b/public/textures/mynethersdelight/cold_striderloaf.png differ diff --git a/public/textures/mynethersdelight/cooked_loin.png b/public/textures/mynethersdelight/cooked_loin.png new file mode 100644 index 00000000..716f39a9 Binary files /dev/null and b/public/textures/mynethersdelight/cooked_loin.png differ diff --git a/public/textures/mynethersdelight/crimson_fungus_colony.png b/public/textures/mynethersdelight/crimson_fungus_colony.png new file mode 100644 index 00000000..9b96e38e Binary files /dev/null and b/public/textures/mynethersdelight/crimson_fungus_colony.png differ diff --git a/public/textures/mynethersdelight/crimson_stroganoff.png b/public/textures/mynethersdelight/crimson_stroganoff.png new file mode 100644 index 00000000..7c30054b Binary files /dev/null and b/public/textures/mynethersdelight/crimson_stroganoff.png differ diff --git a/public/textures/mynethersdelight/deviled_egg.png b/public/textures/mynethersdelight/deviled_egg.png new file mode 100644 index 00000000..33636bf9 Binary files /dev/null and b/public/textures/mynethersdelight/deviled_egg.png differ diff --git a/public/textures/mynethersdelight/dried_ghast_with_milk.png b/public/textures/mynethersdelight/dried_ghast_with_milk.png new file mode 100644 index 00000000..06ed8bd2 Binary files /dev/null and b/public/textures/mynethersdelight/dried_ghast_with_milk.png differ diff --git a/public/textures/mynethersdelight/egg_soup.png b/public/textures/mynethersdelight/egg_soup.png new file mode 100644 index 00000000..a3bb2093 Binary files /dev/null and b/public/textures/mynethersdelight/egg_soup.png differ diff --git a/public/textures/mynethersdelight/enchanted_golden_egg.png b/public/textures/mynethersdelight/enchanted_golden_egg.png new file mode 100644 index 00000000..81ec1dda Binary files /dev/null and b/public/textures/mynethersdelight/enchanted_golden_egg.png differ diff --git a/public/textures/mynethersdelight/fried_hoglin_chop.png b/public/textures/mynethersdelight/fried_hoglin_chop.png new file mode 100644 index 00000000..9ab5d7b9 Binary files /dev/null and b/public/textures/mynethersdelight/fried_hoglin_chop.png differ diff --git a/public/textures/mynethersdelight/fries_ghasta.png b/public/textures/mynethersdelight/fries_ghasta.png new file mode 100644 index 00000000..cc9fa84f Binary files /dev/null and b/public/textures/mynethersdelight/fries_ghasta.png differ diff --git a/public/textures/mynethersdelight/ghasmati.png b/public/textures/mynethersdelight/ghasmati.png new file mode 100644 index 00000000..ae3b467a Binary files /dev/null and b/public/textures/mynethersdelight/ghasmati.png differ diff --git a/public/textures/mynethersdelight/ghast_dough.png b/public/textures/mynethersdelight/ghast_dough.png new file mode 100644 index 00000000..f7ead16e Binary files /dev/null and b/public/textures/mynethersdelight/ghast_dough.png differ diff --git a/public/textures/mynethersdelight/ghast_salad.png b/public/textures/mynethersdelight/ghast_salad.png new file mode 100644 index 00000000..726bf0bf Binary files /dev/null and b/public/textures/mynethersdelight/ghast_salad.png differ diff --git a/public/textures/mynethersdelight/ghast_sourdough.png b/public/textures/mynethersdelight/ghast_sourdough.png new file mode 100644 index 00000000..273f1ea8 Binary files /dev/null and b/public/textures/mynethersdelight/ghast_sourdough.png differ diff --git a/public/textures/mynethersdelight/ghasta.png b/public/textures/mynethersdelight/ghasta.png new file mode 100644 index 00000000..e52d08f7 Binary files /dev/null and b/public/textures/mynethersdelight/ghasta.png differ diff --git a/public/textures/mynethersdelight/ghasta_with_cream.png b/public/textures/mynethersdelight/ghasta_with_cream.png new file mode 100644 index 00000000..ca9033db Binary files /dev/null and b/public/textures/mynethersdelight/ghasta_with_cream.png differ diff --git a/public/textures/mynethersdelight/giant_takoyaki.png b/public/textures/mynethersdelight/giant_takoyaki.png new file mode 100644 index 00000000..ee510ba6 Binary files /dev/null and b/public/textures/mynethersdelight/giant_takoyaki.png differ diff --git a/public/textures/mynethersdelight/golden_egg.png b/public/textures/mynethersdelight/golden_egg.png new file mode 100644 index 00000000..054bbe8e Binary files /dev/null and b/public/textures/mynethersdelight/golden_egg.png differ diff --git a/public/textures/mynethersdelight/hoglin_hide.png b/public/textures/mynethersdelight/hoglin_hide.png new file mode 100644 index 00000000..852dafa3 Binary files /dev/null and b/public/textures/mynethersdelight/hoglin_hide.png differ diff --git a/public/textures/mynethersdelight/hoglin_loin.png b/public/textures/mynethersdelight/hoglin_loin.png new file mode 100644 index 00000000..d286d85e Binary files /dev/null and b/public/textures/mynethersdelight/hoglin_loin.png differ diff --git a/public/textures/mynethersdelight/hoglin_sausage.png b/public/textures/mynethersdelight/hoglin_sausage.png new file mode 100644 index 00000000..2bb96d29 Binary files /dev/null and b/public/textures/mynethersdelight/hoglin_sausage.png differ diff --git a/public/textures/mynethersdelight/hoglin_trophy.png b/public/textures/mynethersdelight/hoglin_trophy.png new file mode 100644 index 00000000..e646079f Binary files /dev/null and b/public/textures/mynethersdelight/hoglin_trophy.png differ diff --git a/public/textures/mynethersdelight/hot_cream.png b/public/textures/mynethersdelight/hot_cream.png new file mode 100644 index 00000000..85c26b52 Binary files /dev/null and b/public/textures/mynethersdelight/hot_cream.png differ diff --git a/public/textures/mynethersdelight/hot_cream_cone.png b/public/textures/mynethersdelight/hot_cream_cone.png new file mode 100644 index 00000000..9e178da9 Binary files /dev/null and b/public/textures/mynethersdelight/hot_cream_cone.png differ diff --git a/public/textures/mynethersdelight/hot_wings.png b/public/textures/mynethersdelight/hot_wings.png new file mode 100644 index 00000000..cd16a5cd Binary files /dev/null and b/public/textures/mynethersdelight/hot_wings.png differ diff --git a/public/textures/mynethersdelight/hot_wings_bucket.png b/public/textures/mynethersdelight/hot_wings_bucket.png new file mode 100644 index 00000000..de08d0cc Binary files /dev/null and b/public/textures/mynethersdelight/hot_wings_bucket.png differ diff --git a/public/textures/mynethersdelight/hotdog.png b/public/textures/mynethersdelight/hotdog.png new file mode 100644 index 00000000..4c8827f1 Binary files /dev/null and b/public/textures/mynethersdelight/hotdog.png differ diff --git a/public/textures/mynethersdelight/hotdog_with_mixed_salad.png b/public/textures/mynethersdelight/hotdog_with_mixed_salad.png new file mode 100644 index 00000000..54135190 Binary files /dev/null and b/public/textures/mynethersdelight/hotdog_with_mixed_salad.png differ diff --git a/public/textures/mynethersdelight/hotdog_with_nether_salad.png b/public/textures/mynethersdelight/hotdog_with_nether_salad.png new file mode 100644 index 00000000..59d07119 Binary files /dev/null and b/public/textures/mynethersdelight/hotdog_with_nether_salad.png differ diff --git a/public/textures/mynethersdelight/letios_compost.png b/public/textures/mynethersdelight/letios_compost.png new file mode 100644 index 00000000..022248df Binary files /dev/null and b/public/textures/mynethersdelight/letios_compost.png differ diff --git a/public/textures/mynethersdelight/magma_cake_block.png b/public/textures/mynethersdelight/magma_cake_block.png new file mode 100644 index 00000000..e23c6c84 Binary files /dev/null and b/public/textures/mynethersdelight/magma_cake_block.png differ diff --git a/public/textures/mynethersdelight/magma_cake_slice.png b/public/textures/mynethersdelight/magma_cake_slice.png new file mode 100644 index 00000000..82e6ee40 Binary files /dev/null and b/public/textures/mynethersdelight/magma_cake_slice.png differ diff --git a/public/textures/mynethersdelight/minced_strider.png b/public/textures/mynethersdelight/minced_strider.png new file mode 100644 index 00000000..5a83dfc9 Binary files /dev/null and b/public/textures/mynethersdelight/minced_strider.png differ diff --git a/public/textures/mynethersdelight/nether_bricks_cabinet.png b/public/textures/mynethersdelight/nether_bricks_cabinet.png new file mode 100644 index 00000000..2edfbb79 Binary files /dev/null and b/public/textures/mynethersdelight/nether_bricks_cabinet.png differ diff --git a/public/textures/mynethersdelight/nether_bricks_stove.png b/public/textures/mynethersdelight/nether_bricks_stove.png new file mode 100644 index 00000000..06b2b629 Binary files /dev/null and b/public/textures/mynethersdelight/nether_bricks_stove.png differ diff --git a/public/textures/mynethersdelight/nether_burger.png b/public/textures/mynethersdelight/nether_burger.png new file mode 100644 index 00000000..4f639a27 Binary files /dev/null and b/public/textures/mynethersdelight/nether_burger.png differ diff --git a/public/textures/mynethersdelight/plate_of_cold_striderloaf.png b/public/textures/mynethersdelight/plate_of_cold_striderloaf.png new file mode 100644 index 00000000..a08a26cc Binary files /dev/null and b/public/textures/mynethersdelight/plate_of_cold_striderloaf.png differ diff --git a/public/textures/mynethersdelight/plate_of_ghasta_with_cream.png b/public/textures/mynethersdelight/plate_of_ghasta_with_cream.png new file mode 100644 index 00000000..5278b8a4 Binary files /dev/null and b/public/textures/mynethersdelight/plate_of_ghasta_with_cream.png differ diff --git a/public/textures/mynethersdelight/plate_of_striderloaf.png b/public/textures/mynethersdelight/plate_of_striderloaf.png new file mode 100644 index 00000000..be3ade32 Binary files /dev/null and b/public/textures/mynethersdelight/plate_of_striderloaf.png differ diff --git a/public/textures/mynethersdelight/plate_of_stuffed_hoglin.png b/public/textures/mynethersdelight/plate_of_stuffed_hoglin.png new file mode 100644 index 00000000..3823385d Binary files /dev/null and b/public/textures/mynethersdelight/plate_of_stuffed_hoglin.png differ diff --git a/public/textures/mynethersdelight/plate_of_stuffed_hoglin_ham.png b/public/textures/mynethersdelight/plate_of_stuffed_hoglin_ham.png new file mode 100644 index 00000000..e9409126 Binary files /dev/null and b/public/textures/mynethersdelight/plate_of_stuffed_hoglin_ham.png differ diff --git a/public/textures/mynethersdelight/plate_of_stuffed_hoglin_snout.png b/public/textures/mynethersdelight/plate_of_stuffed_hoglin_snout.png new file mode 100644 index 00000000..fd41ace5 Binary files /dev/null and b/public/textures/mynethersdelight/plate_of_stuffed_hoglin_snout.png differ diff --git a/public/textures/mynethersdelight/powder_cannon.png b/public/textures/mynethersdelight/powder_cannon.png new file mode 100644 index 00000000..e59570d2 Binary files /dev/null and b/public/textures/mynethersdelight/powder_cannon.png differ diff --git a/public/textures/mynethersdelight/powdery_block.png b/public/textures/mynethersdelight/powdery_block.png new file mode 100644 index 00000000..2c347ee7 Binary files /dev/null and b/public/textures/mynethersdelight/powdery_block.png differ diff --git a/public/textures/mynethersdelight/powdery_button.png b/public/textures/mynethersdelight/powdery_button.png new file mode 100644 index 00000000..b9733ac2 Binary files /dev/null and b/public/textures/mynethersdelight/powdery_button.png differ diff --git a/public/textures/mynethersdelight/powdery_cabinet.png b/public/textures/mynethersdelight/powdery_cabinet.png new file mode 100644 index 00000000..132a3516 Binary files /dev/null and b/public/textures/mynethersdelight/powdery_cabinet.png differ diff --git a/public/textures/mynethersdelight/powdery_door.png b/public/textures/mynethersdelight/powdery_door.png new file mode 100644 index 00000000..d7eb210b Binary files /dev/null and b/public/textures/mynethersdelight/powdery_door.png differ diff --git a/public/textures/mynethersdelight/powdery_fence.png b/public/textures/mynethersdelight/powdery_fence.png new file mode 100644 index 00000000..e99a7370 Binary files /dev/null and b/public/textures/mynethersdelight/powdery_fence.png differ diff --git a/public/textures/mynethersdelight/powdery_fence_gate.png b/public/textures/mynethersdelight/powdery_fence_gate.png new file mode 100644 index 00000000..1f228ee4 Binary files /dev/null and b/public/textures/mynethersdelight/powdery_fence_gate.png differ diff --git a/public/textures/mynethersdelight/powdery_hanging_sign.png b/public/textures/mynethersdelight/powdery_hanging_sign.png new file mode 100644 index 00000000..1e25b62c Binary files /dev/null and b/public/textures/mynethersdelight/powdery_hanging_sign.png differ diff --git a/public/textures/mynethersdelight/powdery_mosaic.png b/public/textures/mynethersdelight/powdery_mosaic.png new file mode 100644 index 00000000..e208baf3 Binary files /dev/null and b/public/textures/mynethersdelight/powdery_mosaic.png differ diff --git a/public/textures/mynethersdelight/powdery_mosaic_slab.png b/public/textures/mynethersdelight/powdery_mosaic_slab.png new file mode 100644 index 00000000..335b8371 Binary files /dev/null and b/public/textures/mynethersdelight/powdery_mosaic_slab.png differ diff --git a/public/textures/mynethersdelight/powdery_mosaic_stairs.png b/public/textures/mynethersdelight/powdery_mosaic_stairs.png new file mode 100644 index 00000000..9532a5c6 Binary files /dev/null and b/public/textures/mynethersdelight/powdery_mosaic_stairs.png differ diff --git a/public/textures/mynethersdelight/powdery_planks.png b/public/textures/mynethersdelight/powdery_planks.png new file mode 100644 index 00000000..e99ae99e Binary files /dev/null and b/public/textures/mynethersdelight/powdery_planks.png differ diff --git a/public/textures/mynethersdelight/powdery_pressure_plate.png b/public/textures/mynethersdelight/powdery_pressure_plate.png new file mode 100644 index 00000000..074db21c Binary files /dev/null and b/public/textures/mynethersdelight/powdery_pressure_plate.png differ diff --git a/public/textures/mynethersdelight/powdery_sign.png b/public/textures/mynethersdelight/powdery_sign.png new file mode 100644 index 00000000..dc38bbee Binary files /dev/null and b/public/textures/mynethersdelight/powdery_sign.png differ diff --git a/public/textures/mynethersdelight/powdery_slab.png b/public/textures/mynethersdelight/powdery_slab.png new file mode 100644 index 00000000..b85d46df Binary files /dev/null and b/public/textures/mynethersdelight/powdery_slab.png differ diff --git a/public/textures/mynethersdelight/powdery_stairs.png b/public/textures/mynethersdelight/powdery_stairs.png new file mode 100644 index 00000000..e3f5e488 Binary files /dev/null and b/public/textures/mynethersdelight/powdery_stairs.png differ diff --git a/public/textures/mynethersdelight/powdery_torch.png b/public/textures/mynethersdelight/powdery_torch.png new file mode 100644 index 00000000..c5fe854f Binary files /dev/null and b/public/textures/mynethersdelight/powdery_torch.png differ diff --git a/public/textures/mynethersdelight/powdery_trapdoor.png b/public/textures/mynethersdelight/powdery_trapdoor.png new file mode 100644 index 00000000..1ea2879c Binary files /dev/null and b/public/textures/mynethersdelight/powdery_trapdoor.png differ diff --git a/public/textures/mynethersdelight/raw_stuffed_hoglin.png b/public/textures/mynethersdelight/raw_stuffed_hoglin.png new file mode 100644 index 00000000..e52acb4a Binary files /dev/null and b/public/textures/mynethersdelight/raw_stuffed_hoglin.png differ diff --git a/public/textures/mynethersdelight/red_loin_on_a_stick.png b/public/textures/mynethersdelight/red_loin_on_a_stick.png new file mode 100644 index 00000000..bf0e6ad5 Binary files /dev/null and b/public/textures/mynethersdelight/red_loin_on_a_stick.png differ diff --git a/public/textures/mynethersdelight/red_nether_bricks_cabinet.png b/public/textures/mynethersdelight/red_nether_bricks_cabinet.png new file mode 100644 index 00000000..5cf9a111 Binary files /dev/null and b/public/textures/mynethersdelight/red_nether_bricks_cabinet.png differ diff --git a/public/textures/mynethersdelight/resurgent_soil.png b/public/textures/mynethersdelight/resurgent_soil.png new file mode 100644 index 00000000..a2eae4b4 Binary files /dev/null and b/public/textures/mynethersdelight/resurgent_soil.png differ diff --git a/public/textures/mynethersdelight/resurgent_soil_farmland.png b/public/textures/mynethersdelight/resurgent_soil_farmland.png new file mode 100644 index 00000000..71ac629b Binary files /dev/null and b/public/textures/mynethersdelight/resurgent_soil_farmland.png differ diff --git a/public/textures/mynethersdelight/roast_ear.png b/public/textures/mynethersdelight/roast_ear.png new file mode 100644 index 00000000..dee2ada9 Binary files /dev/null and b/public/textures/mynethersdelight/roast_ear.png differ diff --git a/public/textures/mynethersdelight/roast_stuffed_hoglin.png b/public/textures/mynethersdelight/roast_stuffed_hoglin.png new file mode 100644 index 00000000..2304cadd Binary files /dev/null and b/public/textures/mynethersdelight/roast_stuffed_hoglin.png differ diff --git a/public/textures/mynethersdelight/roasted_sausage.png b/public/textures/mynethersdelight/roasted_sausage.png new file mode 100644 index 00000000..b007b6aa Binary files /dev/null and b/public/textures/mynethersdelight/roasted_sausage.png differ diff --git a/public/textures/mynethersdelight/rock_soup.png b/public/textures/mynethersdelight/rock_soup.png new file mode 100644 index 00000000..35550db3 Binary files /dev/null and b/public/textures/mynethersdelight/rock_soup.png differ diff --git a/public/textures/mynethersdelight/sausage_and_potatoes.png b/public/textures/mynethersdelight/sausage_and_potatoes.png new file mode 100644 index 00000000..52052ad4 Binary files /dev/null and b/public/textures/mynethersdelight/sausage_and_potatoes.png differ diff --git a/public/textures/mynethersdelight/scotch_eggs.png b/public/textures/mynethersdelight/scotch_eggs.png new file mode 100644 index 00000000..df22c3b4 Binary files /dev/null and b/public/textures/mynethersdelight/scotch_eggs.png differ diff --git a/public/textures/mynethersdelight/sizzling_pudding.png b/public/textures/mynethersdelight/sizzling_pudding.png new file mode 100644 index 00000000..51da5d32 Binary files /dev/null and b/public/textures/mynethersdelight/sizzling_pudding.png differ diff --git a/public/textures/mynethersdelight/skoglin_trophy.png b/public/textures/mynethersdelight/skoglin_trophy.png new file mode 100644 index 00000000..6f2f6c17 Binary files /dev/null and b/public/textures/mynethersdelight/skoglin_trophy.png differ diff --git a/public/textures/mynethersdelight/slices_of_bread.png b/public/textures/mynethersdelight/slices_of_bread.png new file mode 100644 index 00000000..b99faeeb Binary files /dev/null and b/public/textures/mynethersdelight/slices_of_bread.png differ diff --git a/public/textures/mynethersdelight/spicy_cotton.png b/public/textures/mynethersdelight/spicy_cotton.png new file mode 100644 index 00000000..e585aa6d Binary files /dev/null and b/public/textures/mynethersdelight/spicy_cotton.png differ diff --git a/public/textures/mynethersdelight/spicy_curry.png b/public/textures/mynethersdelight/spicy_curry.png new file mode 100644 index 00000000..306998b6 Binary files /dev/null and b/public/textures/mynethersdelight/spicy_curry.png differ diff --git a/public/textures/mynethersdelight/spicy_hoglin_stew.png b/public/textures/mynethersdelight/spicy_hoglin_stew.png new file mode 100644 index 00000000..1ff81069 Binary files /dev/null and b/public/textures/mynethersdelight/spicy_hoglin_stew.png differ diff --git a/public/textures/mynethersdelight/spicy_noodle_soup.png b/public/textures/mynethersdelight/spicy_noodle_soup.png new file mode 100644 index 00000000..538bfcc8 Binary files /dev/null and b/public/textures/mynethersdelight/spicy_noodle_soup.png differ diff --git a/public/textures/mynethersdelight/spicy_skewer.png b/public/textures/mynethersdelight/spicy_skewer.png new file mode 100644 index 00000000..a98acdb5 Binary files /dev/null and b/public/textures/mynethersdelight/spicy_skewer.png differ diff --git a/public/textures/mynethersdelight/strider_egg.png b/public/textures/mynethersdelight/strider_egg.png new file mode 100644 index 00000000..83b9fc82 Binary files /dev/null and b/public/textures/mynethersdelight/strider_egg.png differ diff --git a/public/textures/mynethersdelight/strider_rock.png b/public/textures/mynethersdelight/strider_rock.png new file mode 100644 index 00000000..bdc9f899 Binary files /dev/null and b/public/textures/mynethersdelight/strider_rock.png differ diff --git a/public/textures/mynethersdelight/strider_slice.png b/public/textures/mynethersdelight/strider_slice.png new file mode 100644 index 00000000..6350da05 Binary files /dev/null and b/public/textures/mynethersdelight/strider_slice.png differ diff --git a/public/textures/mynethersdelight/strider_stew.png b/public/textures/mynethersdelight/strider_stew.png new file mode 100644 index 00000000..548bbc0d Binary files /dev/null and b/public/textures/mynethersdelight/strider_stew.png differ diff --git a/public/textures/mynethersdelight/strider_with_grilled_fungus.png b/public/textures/mynethersdelight/strider_with_grilled_fungus.png new file mode 100644 index 00000000..a05d48a2 Binary files /dev/null and b/public/textures/mynethersdelight/strider_with_grilled_fungus.png differ diff --git a/public/textures/mynethersdelight/striderloaf.png b/public/textures/mynethersdelight/striderloaf.png new file mode 100644 index 00000000..d95a2998 Binary files /dev/null and b/public/textures/mynethersdelight/striderloaf.png differ diff --git a/public/textures/mynethersdelight/stripped_powdery_block.png b/public/textures/mynethersdelight/stripped_powdery_block.png new file mode 100644 index 00000000..e05453dc Binary files /dev/null and b/public/textures/mynethersdelight/stripped_powdery_block.png differ diff --git a/public/textures/mynethersdelight/stuffed_pepper.png b/public/textures/mynethersdelight/stuffed_pepper.png new file mode 100644 index 00000000..b126423d Binary files /dev/null and b/public/textures/mynethersdelight/stuffed_pepper.png differ diff --git a/public/textures/mynethersdelight/tear_popsicle.png b/public/textures/mynethersdelight/tear_popsicle.png new file mode 100644 index 00000000..65e9d06f Binary files /dev/null and b/public/textures/mynethersdelight/tear_popsicle.png differ diff --git a/public/textures/mynethersdelight/toasts.png b/public/textures/mynethersdelight/toasts.png new file mode 100644 index 00000000..38e2c734 Binary files /dev/null and b/public/textures/mynethersdelight/toasts.png differ diff --git a/public/textures/mynethersdelight/twisted_ghasta.png b/public/textures/mynethersdelight/twisted_ghasta.png new file mode 100644 index 00000000..aeee861c Binary files /dev/null and b/public/textures/mynethersdelight/twisted_ghasta.png differ diff --git a/public/textures/mynethersdelight/warped_fungus_colony.png b/public/textures/mynethersdelight/warped_fungus_colony.png new file mode 100644 index 00000000..0d85eb58 Binary files /dev/null and b/public/textures/mynethersdelight/warped_fungus_colony.png differ diff --git a/public/textures/mynethersdelight/waxed_hoglin_trophy.png b/public/textures/mynethersdelight/waxed_hoglin_trophy.png new file mode 100644 index 00000000..e646079f Binary files /dev/null and b/public/textures/mynethersdelight/waxed_hoglin_trophy.png differ diff --git a/public/textures/mynethersdelight/zoglin_trophy.png b/public/textures/mynethersdelight/zoglin_trophy.png new file mode 100644 index 00000000..d1e8562c Binary files /dev/null and b/public/textures/mynethersdelight/zoglin_trophy.png differ diff --git a/public/textures/naturescompass/naturescompass.png b/public/textures/naturescompass/naturescompass.png new file mode 100644 index 00000000..ad5731d8 Binary files /dev/null and b/public/textures/naturescompass/naturescompass.png differ diff --git a/public/textures/nethervillagertrader/hell_armor_boots.png b/public/textures/nethervillagertrader/hell_armor_boots.png new file mode 100644 index 00000000..e06de215 Binary files /dev/null and b/public/textures/nethervillagertrader/hell_armor_boots.png differ diff --git a/public/textures/nethervillagertrader/hell_armor_chestplate.png b/public/textures/nethervillagertrader/hell_armor_chestplate.png new file mode 100644 index 00000000..8acc7ec9 Binary files /dev/null and b/public/textures/nethervillagertrader/hell_armor_chestplate.png differ diff --git a/public/textures/nethervillagertrader/hell_armor_helmet.png b/public/textures/nethervillagertrader/hell_armor_helmet.png new file mode 100644 index 00000000..50e9b01f Binary files /dev/null and b/public/textures/nethervillagertrader/hell_armor_helmet.png differ diff --git a/public/textures/nethervillagertrader/hell_armor_leggings.png b/public/textures/nethervillagertrader/hell_armor_leggings.png new file mode 100644 index 00000000..555ba77d Binary files /dev/null and b/public/textures/nethervillagertrader/hell_armor_leggings.png differ diff --git a/public/textures/nethervillagertrader/hell_axe.png b/public/textures/nethervillagertrader/hell_axe.png new file mode 100644 index 00000000..28b93960 Binary files /dev/null and b/public/textures/nethervillagertrader/hell_axe.png differ diff --git a/public/textures/nethervillagertrader/hell_ingot.png b/public/textures/nethervillagertrader/hell_ingot.png new file mode 100644 index 00000000..198c0fa0 Binary files /dev/null and b/public/textures/nethervillagertrader/hell_ingot.png differ diff --git a/public/textures/nethervillagertrader/hell_potion.png b/public/textures/nethervillagertrader/hell_potion.png new file mode 100644 index 00000000..d7abff08 Binary files /dev/null and b/public/textures/nethervillagertrader/hell_potion.png differ diff --git a/public/textures/nethervillagertrader/hell_sword.png b/public/textures/nethervillagertrader/hell_sword.png new file mode 100644 index 00000000..23c936b1 Binary files /dev/null and b/public/textures/nethervillagertrader/hell_sword.png differ diff --git a/public/textures/nethervillagertrader/nether_sickle.png b/public/textures/nethervillagertrader/nether_sickle.png new file mode 100644 index 00000000..ce3f97a9 Binary files /dev/null and b/public/textures/nethervillagertrader/nether_sickle.png differ diff --git a/public/textures/oceansdelight/baked_tentacle_on_a_stick.png b/public/textures/oceansdelight/baked_tentacle_on_a_stick.png new file mode 100644 index 00000000..4b13e734 Binary files /dev/null and b/public/textures/oceansdelight/baked_tentacle_on_a_stick.png differ diff --git a/public/textures/oceansdelight/bowl_of_guardian_soup.png b/public/textures/oceansdelight/bowl_of_guardian_soup.png new file mode 100644 index 00000000..a56b15c1 Binary files /dev/null and b/public/textures/oceansdelight/bowl_of_guardian_soup.png differ diff --git a/public/textures/oceansdelight/braised_sea_pickle.png b/public/textures/oceansdelight/braised_sea_pickle.png new file mode 100644 index 00000000..ed716180 Binary files /dev/null and b/public/textures/oceansdelight/braised_sea_pickle.png differ diff --git a/public/textures/oceansdelight/cabbage_wrapped_elder_guardian.png b/public/textures/oceansdelight/cabbage_wrapped_elder_guardian.png new file mode 100644 index 00000000..eac85c0e Binary files /dev/null and b/public/textures/oceansdelight/cabbage_wrapped_elder_guardian.png differ diff --git a/public/textures/oceansdelight/cooked_elder_guardian_slice.png b/public/textures/oceansdelight/cooked_elder_guardian_slice.png new file mode 100644 index 00000000..a0691b0f Binary files /dev/null and b/public/textures/oceansdelight/cooked_elder_guardian_slice.png differ diff --git a/public/textures/oceansdelight/cooked_guardian_tail.png b/public/textures/oceansdelight/cooked_guardian_tail.png new file mode 100644 index 00000000..5698dcd0 Binary files /dev/null and b/public/textures/oceansdelight/cooked_guardian_tail.png differ diff --git a/public/textures/oceansdelight/cooked_stuffed_cod.png b/public/textures/oceansdelight/cooked_stuffed_cod.png new file mode 100644 index 00000000..4abda857 Binary files /dev/null and b/public/textures/oceansdelight/cooked_stuffed_cod.png differ diff --git a/public/textures/oceansdelight/cut_tentacles.png b/public/textures/oceansdelight/cut_tentacles.png new file mode 100644 index 00000000..4bfbc253 Binary files /dev/null and b/public/textures/oceansdelight/cut_tentacles.png differ diff --git a/public/textures/oceansdelight/elder_guardian_roll.png b/public/textures/oceansdelight/elder_guardian_roll.png new file mode 100644 index 00000000..1959fac3 Binary files /dev/null and b/public/textures/oceansdelight/elder_guardian_roll.png differ diff --git a/public/textures/oceansdelight/elder_guardian_slab.png b/public/textures/oceansdelight/elder_guardian_slab.png new file mode 100644 index 00000000..7d56ceac Binary files /dev/null and b/public/textures/oceansdelight/elder_guardian_slab.png differ diff --git a/public/textures/oceansdelight/elder_guardian_slice.png b/public/textures/oceansdelight/elder_guardian_slice.png new file mode 100644 index 00000000..871782cf Binary files /dev/null and b/public/textures/oceansdelight/elder_guardian_slice.png differ diff --git a/public/textures/oceansdelight/fugu_roll.png b/public/textures/oceansdelight/fugu_roll.png new file mode 100644 index 00000000..6d730f09 Binary files /dev/null and b/public/textures/oceansdelight/fugu_roll.png differ diff --git a/public/textures/oceansdelight/fugu_slice.png b/public/textures/oceansdelight/fugu_slice.png new file mode 100644 index 00000000..bb64facd Binary files /dev/null and b/public/textures/oceansdelight/fugu_slice.png differ diff --git a/public/textures/oceansdelight/guardian.png b/public/textures/oceansdelight/guardian.png new file mode 100644 index 00000000..130b3fcb Binary files /dev/null and b/public/textures/oceansdelight/guardian.png differ diff --git a/public/textures/oceansdelight/guardian_soup.png b/public/textures/oceansdelight/guardian_soup.png new file mode 100644 index 00000000..0abdf21a Binary files /dev/null and b/public/textures/oceansdelight/guardian_soup.png differ diff --git a/public/textures/oceansdelight/guardian_tail.png b/public/textures/oceansdelight/guardian_tail.png new file mode 100644 index 00000000..0a3b93ca Binary files /dev/null and b/public/textures/oceansdelight/guardian_tail.png differ diff --git a/public/textures/oceansdelight/honey_fried_kelp.png b/public/textures/oceansdelight/honey_fried_kelp.png new file mode 100644 index 00000000..14419ee7 Binary files /dev/null and b/public/textures/oceansdelight/honey_fried_kelp.png differ diff --git a/public/textures/oceansdelight/seagrass_salad.png b/public/textures/oceansdelight/seagrass_salad.png new file mode 100644 index 00000000..bf275ba0 Binary files /dev/null and b/public/textures/oceansdelight/seagrass_salad.png differ diff --git a/public/textures/oceansdelight/squid_rings.png b/public/textures/oceansdelight/squid_rings.png new file mode 100644 index 00000000..6eb80832 Binary files /dev/null and b/public/textures/oceansdelight/squid_rings.png differ diff --git a/public/textures/oceansdelight/stuffed_cod.png b/public/textures/oceansdelight/stuffed_cod.png new file mode 100644 index 00000000..17fc4c84 Binary files /dev/null and b/public/textures/oceansdelight/stuffed_cod.png differ diff --git a/public/textures/oceansdelight/tentacle_on_a_stick.png b/public/textures/oceansdelight/tentacle_on_a_stick.png new file mode 100644 index 00000000..08fca23b Binary files /dev/null and b/public/textures/oceansdelight/tentacle_on_a_stick.png differ diff --git a/public/textures/oceansdelight/tentacles.png b/public/textures/oceansdelight/tentacles.png new file mode 100644 index 00000000..0d1515c3 Binary files /dev/null and b/public/textures/oceansdelight/tentacles.png differ diff --git a/public/textures/piglinproliferation/buckler.png b/public/textures/piglinproliferation/buckler.png new file mode 100644 index 00000000..989479d0 Binary files /dev/null and b/public/textures/piglinproliferation/buckler.png differ diff --git a/public/textures/piglinproliferation/piglin_alchemist_head.png b/public/textures/piglinproliferation/piglin_alchemist_head.png new file mode 100644 index 00000000..d63512a2 Binary files /dev/null and b/public/textures/piglinproliferation/piglin_alchemist_head.png differ diff --git a/public/textures/piglinproliferation/piglin_alchemist_spawn_egg.png b/public/textures/piglinproliferation/piglin_alchemist_spawn_egg.png new file mode 100644 index 00000000..d33aa0f6 Binary files /dev/null and b/public/textures/piglinproliferation/piglin_alchemist_spawn_egg.png differ diff --git a/public/textures/piglinproliferation/piglin_brute_head.png b/public/textures/piglinproliferation/piglin_brute_head.png new file mode 100644 index 00000000..06b6a62b Binary files /dev/null and b/public/textures/piglinproliferation/piglin_brute_head.png differ diff --git a/public/textures/piglinproliferation/piglin_traveler_head.png b/public/textures/piglinproliferation/piglin_traveler_head.png new file mode 100644 index 00000000..8b199c28 Binary files /dev/null and b/public/textures/piglinproliferation/piglin_traveler_head.png differ diff --git a/public/textures/piglinproliferation/piglin_traveler_spawn_egg.png b/public/textures/piglinproliferation/piglin_traveler_spawn_egg.png new file mode 100644 index 00000000..f24715ef Binary files /dev/null and b/public/textures/piglinproliferation/piglin_traveler_spawn_egg.png differ diff --git a/public/textures/piglinproliferation/stone_fire_ring.png b/public/textures/piglinproliferation/stone_fire_ring.png new file mode 100644 index 00000000..e50a87ad Binary files /dev/null and b/public/textures/piglinproliferation/stone_fire_ring.png differ diff --git a/public/textures/piglinproliferation/travelers_compass.png b/public/textures/piglinproliferation/travelers_compass.png new file mode 100644 index 00000000..67c0b415 Binary files /dev/null and b/public/textures/piglinproliferation/travelers_compass.png differ diff --git a/public/textures/piglinproliferation/zombified_piglin_head.png b/public/textures/piglinproliferation/zombified_piglin_head.png new file mode 100644 index 00000000..fcc39539 Binary files /dev/null and b/public/textures/piglinproliferation/zombified_piglin_head.png differ diff --git a/public/textures/raided/electromancer_spawn_egg.png b/public/textures/raided/electromancer_spawn_egg.png new file mode 100644 index 00000000..ba3e6515 Binary files /dev/null and b/public/textures/raided/electromancer_spawn_egg.png differ diff --git a/public/textures/raided/incinerator_spawn_egg.png b/public/textures/raided/incinerator_spawn_egg.png new file mode 100644 index 00000000..ba3e6515 Binary files /dev/null and b/public/textures/raided/incinerator_spawn_egg.png differ diff --git a/public/textures/raided/inquisitor_spawn_egg.png b/public/textures/raided/inquisitor_spawn_egg.png new file mode 100644 index 00000000..ba3e6515 Binary files /dev/null and b/public/textures/raided/inquisitor_spawn_egg.png differ diff --git a/public/textures/raided/necromancer_spawn_egg.png b/public/textures/raided/necromancer_spawn_egg.png new file mode 100644 index 00000000..ba3e6515 Binary files /dev/null and b/public/textures/raided/necromancer_spawn_egg.png differ diff --git a/public/textures/raided/savager_spawn_egg.png b/public/textures/raided/savager_spawn_egg.png new file mode 100644 index 00000000..ba3e6515 Binary files /dev/null and b/public/textures/raided/savager_spawn_egg.png differ diff --git a/public/textures/rechiseled/acacia_planks_beams.png b/public/textures/rechiseled/acacia_planks_beams.png new file mode 100644 index 00000000..488c75eb Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_beams.png differ diff --git a/public/textures/rechiseled/acacia_planks_beams_connecting.png b/public/textures/rechiseled/acacia_planks_beams_connecting.png new file mode 100644 index 00000000..488c75eb Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_beams_connecting.png differ diff --git a/public/textures/rechiseled/acacia_planks_brick_pattern.png b/public/textures/rechiseled/acacia_planks_brick_pattern.png new file mode 100644 index 00000000..3e5aa5b1 Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_brick_pattern.png differ diff --git a/public/textures/rechiseled/acacia_planks_brick_pattern_connecting.png b/public/textures/rechiseled/acacia_planks_brick_pattern_connecting.png new file mode 100644 index 00000000..3e5aa5b1 Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/acacia_planks_brick_paving.png b/public/textures/rechiseled/acacia_planks_brick_paving.png new file mode 100644 index 00000000..adebace3 Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_brick_paving.png differ diff --git a/public/textures/rechiseled/acacia_planks_brick_paving_connecting.png b/public/textures/rechiseled/acacia_planks_brick_paving_connecting.png new file mode 100644 index 00000000..adebace3 Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/acacia_planks_bricks.png b/public/textures/rechiseled/acacia_planks_bricks.png new file mode 100644 index 00000000..5471680f Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_bricks.png differ diff --git a/public/textures/rechiseled/acacia_planks_bricks_connecting.png b/public/textures/rechiseled/acacia_planks_bricks_connecting.png new file mode 100644 index 00000000..5471680f Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_bricks_connecting.png differ diff --git a/public/textures/rechiseled/acacia_planks_crate.png b/public/textures/rechiseled/acacia_planks_crate.png new file mode 100644 index 00000000..08a09277 Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_crate.png differ diff --git a/public/textures/rechiseled/acacia_planks_crate_connecting.png b/public/textures/rechiseled/acacia_planks_crate_connecting.png new file mode 100644 index 00000000..08a09277 Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_crate_connecting.png differ diff --git a/public/textures/rechiseled/acacia_planks_diagonal_stripes.png b/public/textures/rechiseled/acacia_planks_diagonal_stripes.png new file mode 100644 index 00000000..7b8dab87 Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_diagonal_stripes.png differ diff --git a/public/textures/rechiseled/acacia_planks_diagonal_stripes_connecting.png b/public/textures/rechiseled/acacia_planks_diagonal_stripes_connecting.png new file mode 100644 index 00000000..7b8dab87 Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_diagonal_stripes_connecting.png differ diff --git a/public/textures/rechiseled/acacia_planks_diagonal_tiles.png b/public/textures/rechiseled/acacia_planks_diagonal_tiles.png new file mode 100644 index 00000000..4bba561e Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_diagonal_tiles.png differ diff --git a/public/textures/rechiseled/acacia_planks_diagonal_tiles_connecting.png b/public/textures/rechiseled/acacia_planks_diagonal_tiles_connecting.png new file mode 100644 index 00000000..4bba561e Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_diagonal_tiles_connecting.png differ diff --git a/public/textures/rechiseled/acacia_planks_dotted.png b/public/textures/rechiseled/acacia_planks_dotted.png new file mode 100644 index 00000000..248b26bc Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_dotted.png differ diff --git a/public/textures/rechiseled/acacia_planks_dotted_connecting.png b/public/textures/rechiseled/acacia_planks_dotted_connecting.png new file mode 100644 index 00000000..248b26bc Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_dotted_connecting.png differ diff --git a/public/textures/rechiseled/acacia_planks_flooring.png b/public/textures/rechiseled/acacia_planks_flooring.png new file mode 100644 index 00000000..d031df04 Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_flooring.png differ diff --git a/public/textures/rechiseled/acacia_planks_flooring_connecting.png b/public/textures/rechiseled/acacia_planks_flooring_connecting.png new file mode 100644 index 00000000..d031df04 Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_flooring_connecting.png differ diff --git a/public/textures/rechiseled/acacia_planks_large_tiles.png b/public/textures/rechiseled/acacia_planks_large_tiles.png new file mode 100644 index 00000000..1c184378 Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_large_tiles.png differ diff --git a/public/textures/rechiseled/acacia_planks_large_tiles_connecting.png b/public/textures/rechiseled/acacia_planks_large_tiles_connecting.png new file mode 100644 index 00000000..1c184378 Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_large_tiles_connecting.png differ diff --git a/public/textures/rechiseled/acacia_planks_mosaic.png b/public/textures/rechiseled/acacia_planks_mosaic.png new file mode 100644 index 00000000..101ac6ca Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_mosaic.png differ diff --git a/public/textures/rechiseled/acacia_planks_pattern.png b/public/textures/rechiseled/acacia_planks_pattern.png new file mode 100644 index 00000000..f93ebd8e Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_pattern.png differ diff --git a/public/textures/rechiseled/acacia_planks_pattern_connecting.png b/public/textures/rechiseled/acacia_planks_pattern_connecting.png new file mode 100644 index 00000000..f93ebd8e Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_pattern_connecting.png differ diff --git a/public/textures/rechiseled/acacia_planks_rotated_bricks.png b/public/textures/rechiseled/acacia_planks_rotated_bricks.png new file mode 100644 index 00000000..96aeccf8 Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_rotated_bricks.png differ diff --git a/public/textures/rechiseled/acacia_planks_rotated_bricks_connecting.png b/public/textures/rechiseled/acacia_planks_rotated_bricks_connecting.png new file mode 100644 index 00000000..96aeccf8 Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/acacia_planks_small_bricks.png b/public/textures/rechiseled/acacia_planks_small_bricks.png new file mode 100644 index 00000000..27ed9d07 Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_small_bricks.png differ diff --git a/public/textures/rechiseled/acacia_planks_small_bricks_connecting.png b/public/textures/rechiseled/acacia_planks_small_bricks_connecting.png new file mode 100644 index 00000000..27ed9d07 Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_small_bricks_connecting.png differ diff --git a/public/textures/rechiseled/acacia_planks_small_tiles.png b/public/textures/rechiseled/acacia_planks_small_tiles.png new file mode 100644 index 00000000..f19f8669 Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_small_tiles.png differ diff --git a/public/textures/rechiseled/acacia_planks_small_tiles_connecting.png b/public/textures/rechiseled/acacia_planks_small_tiles_connecting.png new file mode 100644 index 00000000..f19f8669 Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/acacia_planks_squares.png b/public/textures/rechiseled/acacia_planks_squares.png new file mode 100644 index 00000000..50c8140d Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_squares.png differ diff --git a/public/textures/rechiseled/acacia_planks_squares_connecting.png b/public/textures/rechiseled/acacia_planks_squares_connecting.png new file mode 100644 index 00000000..50c8140d Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_squares_connecting.png differ diff --git a/public/textures/rechiseled/acacia_planks_tiles.png b/public/textures/rechiseled/acacia_planks_tiles.png new file mode 100644 index 00000000..df596363 Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_tiles.png differ diff --git a/public/textures/rechiseled/acacia_planks_tiles_connecting.png b/public/textures/rechiseled/acacia_planks_tiles_connecting.png new file mode 100644 index 00000000..df596363 Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_tiles_connecting.png differ diff --git a/public/textures/rechiseled/acacia_planks_wavy.png b/public/textures/rechiseled/acacia_planks_wavy.png new file mode 100644 index 00000000..a3c62b1d Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_wavy.png differ diff --git a/public/textures/rechiseled/acacia_planks_wavy_connecting.png b/public/textures/rechiseled/acacia_planks_wavy_connecting.png new file mode 100644 index 00000000..a3c62b1d Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_wavy_connecting.png differ diff --git a/public/textures/rechiseled/acacia_planks_woven.png b/public/textures/rechiseled/acacia_planks_woven.png new file mode 100644 index 00000000..f3c2b4f0 Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_woven.png differ diff --git a/public/textures/rechiseled/acacia_planks_woven_connecting.png b/public/textures/rechiseled/acacia_planks_woven_connecting.png new file mode 100644 index 00000000..f3c2b4f0 Binary files /dev/null and b/public/textures/rechiseled/acacia_planks_woven_connecting.png differ diff --git a/public/textures/rechiseled/amethyst_block_beams.png b/public/textures/rechiseled/amethyst_block_beams.png new file mode 100644 index 00000000..def0ec06 Binary files /dev/null and b/public/textures/rechiseled/amethyst_block_beams.png differ diff --git a/public/textures/rechiseled/amethyst_block_beams_connecting.png b/public/textures/rechiseled/amethyst_block_beams_connecting.png new file mode 100644 index 00000000..def0ec06 Binary files /dev/null and b/public/textures/rechiseled/amethyst_block_beams_connecting.png differ diff --git a/public/textures/rechiseled/amethyst_block_bordered_diagonal_tiles.png b/public/textures/rechiseled/amethyst_block_bordered_diagonal_tiles.png new file mode 100644 index 00000000..6c6ab2f1 Binary files /dev/null and b/public/textures/rechiseled/amethyst_block_bordered_diagonal_tiles.png differ diff --git a/public/textures/rechiseled/amethyst_block_bordered_diagonal_tiles_connecting.png b/public/textures/rechiseled/amethyst_block_bordered_diagonal_tiles_connecting.png new file mode 100644 index 00000000..6c6ab2f1 Binary files /dev/null and b/public/textures/rechiseled/amethyst_block_bordered_diagonal_tiles_connecting.png differ diff --git a/public/textures/rechiseled/amethyst_block_bricks.png b/public/textures/rechiseled/amethyst_block_bricks.png new file mode 100644 index 00000000..d09059c3 Binary files /dev/null and b/public/textures/rechiseled/amethyst_block_bricks.png differ diff --git a/public/textures/rechiseled/amethyst_block_bricks_connecting.png b/public/textures/rechiseled/amethyst_block_bricks_connecting.png new file mode 100644 index 00000000..d09059c3 Binary files /dev/null and b/public/textures/rechiseled/amethyst_block_bricks_connecting.png differ diff --git a/public/textures/rechiseled/amethyst_block_cut.png b/public/textures/rechiseled/amethyst_block_cut.png new file mode 100644 index 00000000..7cd2869a Binary files /dev/null and b/public/textures/rechiseled/amethyst_block_cut.png differ diff --git a/public/textures/rechiseled/amethyst_block_cut_connecting.png b/public/textures/rechiseled/amethyst_block_cut_connecting.png new file mode 100644 index 00000000..7cd2869a Binary files /dev/null and b/public/textures/rechiseled/amethyst_block_cut_connecting.png differ diff --git a/public/textures/rechiseled/amethyst_block_diagonal_tiles.png b/public/textures/rechiseled/amethyst_block_diagonal_tiles.png new file mode 100644 index 00000000..ed486069 Binary files /dev/null and b/public/textures/rechiseled/amethyst_block_diagonal_tiles.png differ diff --git a/public/textures/rechiseled/amethyst_block_edged.png b/public/textures/rechiseled/amethyst_block_edged.png new file mode 100644 index 00000000..896da456 Binary files /dev/null and b/public/textures/rechiseled/amethyst_block_edged.png differ diff --git a/public/textures/rechiseled/amethyst_block_edged_connecting.png b/public/textures/rechiseled/amethyst_block_edged_connecting.png new file mode 100644 index 00000000..896da456 Binary files /dev/null and b/public/textures/rechiseled/amethyst_block_edged_connecting.png differ diff --git a/public/textures/rechiseled/amethyst_block_jewel.png b/public/textures/rechiseled/amethyst_block_jewel.png new file mode 100644 index 00000000..7829d97a Binary files /dev/null and b/public/textures/rechiseled/amethyst_block_jewel.png differ diff --git a/public/textures/rechiseled/amethyst_block_pillar.png b/public/textures/rechiseled/amethyst_block_pillar.png new file mode 100644 index 00000000..02265f31 Binary files /dev/null and b/public/textures/rechiseled/amethyst_block_pillar.png differ diff --git a/public/textures/rechiseled/amethyst_block_pillar_connecting.png b/public/textures/rechiseled/amethyst_block_pillar_connecting.png new file mode 100644 index 00000000..02265f31 Binary files /dev/null and b/public/textures/rechiseled/amethyst_block_pillar_connecting.png differ diff --git a/public/textures/rechiseled/amethyst_block_polished.png b/public/textures/rechiseled/amethyst_block_polished.png new file mode 100644 index 00000000..8d780405 Binary files /dev/null and b/public/textures/rechiseled/amethyst_block_polished.png differ diff --git a/public/textures/rechiseled/amethyst_block_polished_connecting.png b/public/textures/rechiseled/amethyst_block_polished_connecting.png new file mode 100644 index 00000000..8d780405 Binary files /dev/null and b/public/textures/rechiseled/amethyst_block_polished_connecting.png differ diff --git a/public/textures/rechiseled/amethyst_block_shiny.png b/public/textures/rechiseled/amethyst_block_shiny.png new file mode 100644 index 00000000..f464e8e5 Binary files /dev/null and b/public/textures/rechiseled/amethyst_block_shiny.png differ diff --git a/public/textures/rechiseled/amethyst_block_shiny_connecting.png b/public/textures/rechiseled/amethyst_block_shiny_connecting.png new file mode 100644 index 00000000..f464e8e5 Binary files /dev/null and b/public/textures/rechiseled/amethyst_block_shiny_connecting.png differ diff --git a/public/textures/rechiseled/amethyst_block_smooth.png b/public/textures/rechiseled/amethyst_block_smooth.png new file mode 100644 index 00000000..566e8595 Binary files /dev/null and b/public/textures/rechiseled/amethyst_block_smooth.png differ diff --git a/public/textures/rechiseled/amethyst_block_tiles.png b/public/textures/rechiseled/amethyst_block_tiles.png new file mode 100644 index 00000000..03c9d0b0 Binary files /dev/null and b/public/textures/rechiseled/amethyst_block_tiles.png differ diff --git a/public/textures/rechiseled/amethyst_block_tiles_connecting.png b/public/textures/rechiseled/amethyst_block_tiles_connecting.png new file mode 100644 index 00000000..03c9d0b0 Binary files /dev/null and b/public/textures/rechiseled/amethyst_block_tiles_connecting.png differ diff --git a/public/textures/rechiseled/andesite_brick_pattern.png b/public/textures/rechiseled/andesite_brick_pattern.png new file mode 100644 index 00000000..0ee4cfaf Binary files /dev/null and b/public/textures/rechiseled/andesite_brick_pattern.png differ diff --git a/public/textures/rechiseled/andesite_brick_pattern_connecting.png b/public/textures/rechiseled/andesite_brick_pattern_connecting.png new file mode 100644 index 00000000..0ee4cfaf Binary files /dev/null and b/public/textures/rechiseled/andesite_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/andesite_brick_paving.png b/public/textures/rechiseled/andesite_brick_paving.png new file mode 100644 index 00000000..328aeeb6 Binary files /dev/null and b/public/textures/rechiseled/andesite_brick_paving.png differ diff --git a/public/textures/rechiseled/andesite_brick_paving_connecting.png b/public/textures/rechiseled/andesite_brick_paving_connecting.png new file mode 100644 index 00000000..328aeeb6 Binary files /dev/null and b/public/textures/rechiseled/andesite_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/andesite_bricks.png b/public/textures/rechiseled/andesite_bricks.png new file mode 100644 index 00000000..b7117c72 Binary files /dev/null and b/public/textures/rechiseled/andesite_bricks.png differ diff --git a/public/textures/rechiseled/andesite_bricks_connecting.png b/public/textures/rechiseled/andesite_bricks_connecting.png new file mode 100644 index 00000000..b7117c72 Binary files /dev/null and b/public/textures/rechiseled/andesite_bricks_connecting.png differ diff --git a/public/textures/rechiseled/andesite_diagonal_bricks.png b/public/textures/rechiseled/andesite_diagonal_bricks.png new file mode 100644 index 00000000..295913d3 Binary files /dev/null and b/public/textures/rechiseled/andesite_diagonal_bricks.png differ diff --git a/public/textures/rechiseled/andesite_diagonal_bricks_connecting.png b/public/textures/rechiseled/andesite_diagonal_bricks_connecting.png new file mode 100644 index 00000000..295913d3 Binary files /dev/null and b/public/textures/rechiseled/andesite_diagonal_bricks_connecting.png differ diff --git a/public/textures/rechiseled/andesite_dotted.png b/public/textures/rechiseled/andesite_dotted.png new file mode 100644 index 00000000..59bdf355 Binary files /dev/null and b/public/textures/rechiseled/andesite_dotted.png differ diff --git a/public/textures/rechiseled/andesite_dotted_connecting.png b/public/textures/rechiseled/andesite_dotted_connecting.png new file mode 100644 index 00000000..59bdf355 Binary files /dev/null and b/public/textures/rechiseled/andesite_dotted_connecting.png differ diff --git a/public/textures/rechiseled/andesite_paving.png b/public/textures/rechiseled/andesite_paving.png new file mode 100644 index 00000000..4f75e9e7 Binary files /dev/null and b/public/textures/rechiseled/andesite_paving.png differ diff --git a/public/textures/rechiseled/andesite_paving_connecting.png b/public/textures/rechiseled/andesite_paving_connecting.png new file mode 100644 index 00000000..4f75e9e7 Binary files /dev/null and b/public/textures/rechiseled/andesite_paving_connecting.png differ diff --git a/public/textures/rechiseled/andesite_polished_connecting.png b/public/textures/rechiseled/andesite_polished_connecting.png new file mode 100644 index 00000000..4f2e00a8 Binary files /dev/null and b/public/textures/rechiseled/andesite_polished_connecting.png differ diff --git a/public/textures/rechiseled/andesite_rotated_bricks.png b/public/textures/rechiseled/andesite_rotated_bricks.png new file mode 100644 index 00000000..cbc824ec Binary files /dev/null and b/public/textures/rechiseled/andesite_rotated_bricks.png differ diff --git a/public/textures/rechiseled/andesite_rotated_bricks_connecting.png b/public/textures/rechiseled/andesite_rotated_bricks_connecting.png new file mode 100644 index 00000000..cbc824ec Binary files /dev/null and b/public/textures/rechiseled/andesite_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/andesite_squares.png b/public/textures/rechiseled/andesite_squares.png new file mode 100644 index 00000000..c8576a31 Binary files /dev/null and b/public/textures/rechiseled/andesite_squares.png differ diff --git a/public/textures/rechiseled/andesite_squares_connecting.png b/public/textures/rechiseled/andesite_squares_connecting.png new file mode 100644 index 00000000..c8576a31 Binary files /dev/null and b/public/textures/rechiseled/andesite_squares_connecting.png differ diff --git a/public/textures/rechiseled/andesite_tiles.png b/public/textures/rechiseled/andesite_tiles.png new file mode 100644 index 00000000..5f9f9faa Binary files /dev/null and b/public/textures/rechiseled/andesite_tiles.png differ diff --git a/public/textures/rechiseled/andesite_tiles_connecting.png b/public/textures/rechiseled/andesite_tiles_connecting.png new file mode 100644 index 00000000..5f9f9faa Binary files /dev/null and b/public/textures/rechiseled/andesite_tiles_connecting.png differ diff --git a/public/textures/rechiseled/andesite_wavy.png b/public/textures/rechiseled/andesite_wavy.png new file mode 100644 index 00000000..0141ee07 Binary files /dev/null and b/public/textures/rechiseled/andesite_wavy.png differ diff --git a/public/textures/rechiseled/andesite_wavy_connecting.png b/public/textures/rechiseled/andesite_wavy_connecting.png new file mode 100644 index 00000000..0141ee07 Binary files /dev/null and b/public/textures/rechiseled/andesite_wavy_connecting.png differ diff --git a/public/textures/rechiseled/bamboo_planks_beams.png b/public/textures/rechiseled/bamboo_planks_beams.png new file mode 100644 index 00000000..4bdea493 Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_beams.png differ diff --git a/public/textures/rechiseled/bamboo_planks_beams_connecting.png b/public/textures/rechiseled/bamboo_planks_beams_connecting.png new file mode 100644 index 00000000..4bdea493 Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_beams_connecting.png differ diff --git a/public/textures/rechiseled/bamboo_planks_brick_pattern.png b/public/textures/rechiseled/bamboo_planks_brick_pattern.png new file mode 100644 index 00000000..e7216b3b Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_brick_pattern.png differ diff --git a/public/textures/rechiseled/bamboo_planks_brick_pattern_connecting.png b/public/textures/rechiseled/bamboo_planks_brick_pattern_connecting.png new file mode 100644 index 00000000..e7216b3b Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/bamboo_planks_brick_paving.png b/public/textures/rechiseled/bamboo_planks_brick_paving.png new file mode 100644 index 00000000..a40ea629 Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_brick_paving.png differ diff --git a/public/textures/rechiseled/bamboo_planks_brick_paving_connecting.png b/public/textures/rechiseled/bamboo_planks_brick_paving_connecting.png new file mode 100644 index 00000000..a40ea629 Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/bamboo_planks_bricks.png b/public/textures/rechiseled/bamboo_planks_bricks.png new file mode 100644 index 00000000..bc7fdd28 Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_bricks.png differ diff --git a/public/textures/rechiseled/bamboo_planks_bricks_connecting.png b/public/textures/rechiseled/bamboo_planks_bricks_connecting.png new file mode 100644 index 00000000..bc7fdd28 Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_bricks_connecting.png differ diff --git a/public/textures/rechiseled/bamboo_planks_crate.png b/public/textures/rechiseled/bamboo_planks_crate.png new file mode 100644 index 00000000..8bfedc95 Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_crate.png differ diff --git a/public/textures/rechiseled/bamboo_planks_crate_connecting.png b/public/textures/rechiseled/bamboo_planks_crate_connecting.png new file mode 100644 index 00000000..8bfedc95 Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_crate_connecting.png differ diff --git a/public/textures/rechiseled/bamboo_planks_diagonal_stripes.png b/public/textures/rechiseled/bamboo_planks_diagonal_stripes.png new file mode 100644 index 00000000..ebb6ac8d Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_diagonal_stripes.png differ diff --git a/public/textures/rechiseled/bamboo_planks_diagonal_stripes_connecting.png b/public/textures/rechiseled/bamboo_planks_diagonal_stripes_connecting.png new file mode 100644 index 00000000..ebb6ac8d Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_diagonal_stripes_connecting.png differ diff --git a/public/textures/rechiseled/bamboo_planks_diagonal_tiles.png b/public/textures/rechiseled/bamboo_planks_diagonal_tiles.png new file mode 100644 index 00000000..576060de Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_diagonal_tiles.png differ diff --git a/public/textures/rechiseled/bamboo_planks_diagonal_tiles_connecting.png b/public/textures/rechiseled/bamboo_planks_diagonal_tiles_connecting.png new file mode 100644 index 00000000..576060de Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_diagonal_tiles_connecting.png differ diff --git a/public/textures/rechiseled/bamboo_planks_dotted.png b/public/textures/rechiseled/bamboo_planks_dotted.png new file mode 100644 index 00000000..2cc7e19d Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_dotted.png differ diff --git a/public/textures/rechiseled/bamboo_planks_dotted_connecting.png b/public/textures/rechiseled/bamboo_planks_dotted_connecting.png new file mode 100644 index 00000000..2cc7e19d Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_dotted_connecting.png differ diff --git a/public/textures/rechiseled/bamboo_planks_flooring.png b/public/textures/rechiseled/bamboo_planks_flooring.png new file mode 100644 index 00000000..2a78a7fb Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_flooring.png differ diff --git a/public/textures/rechiseled/bamboo_planks_flooring_connecting.png b/public/textures/rechiseled/bamboo_planks_flooring_connecting.png new file mode 100644 index 00000000..2a78a7fb Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_flooring_connecting.png differ diff --git a/public/textures/rechiseled/bamboo_planks_large_tiles.png b/public/textures/rechiseled/bamboo_planks_large_tiles.png new file mode 100644 index 00000000..dc00e9d4 Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_large_tiles.png differ diff --git a/public/textures/rechiseled/bamboo_planks_large_tiles_connecting.png b/public/textures/rechiseled/bamboo_planks_large_tiles_connecting.png new file mode 100644 index 00000000..dc00e9d4 Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_large_tiles_connecting.png differ diff --git a/public/textures/rechiseled/bamboo_planks_pattern.png b/public/textures/rechiseled/bamboo_planks_pattern.png new file mode 100644 index 00000000..7f07dff2 Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_pattern.png differ diff --git a/public/textures/rechiseled/bamboo_planks_pattern_connecting.png b/public/textures/rechiseled/bamboo_planks_pattern_connecting.png new file mode 100644 index 00000000..7f07dff2 Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_pattern_connecting.png differ diff --git a/public/textures/rechiseled/bamboo_planks_rotated_bricks.png b/public/textures/rechiseled/bamboo_planks_rotated_bricks.png new file mode 100644 index 00000000..e00f3056 Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_rotated_bricks.png differ diff --git a/public/textures/rechiseled/bamboo_planks_rotated_bricks_connecting.png b/public/textures/rechiseled/bamboo_planks_rotated_bricks_connecting.png new file mode 100644 index 00000000..e00f3056 Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/bamboo_planks_small_bricks.png b/public/textures/rechiseled/bamboo_planks_small_bricks.png new file mode 100644 index 00000000..dcdb9220 Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_small_bricks.png differ diff --git a/public/textures/rechiseled/bamboo_planks_small_bricks_connecting.png b/public/textures/rechiseled/bamboo_planks_small_bricks_connecting.png new file mode 100644 index 00000000..dcdb9220 Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_small_bricks_connecting.png differ diff --git a/public/textures/rechiseled/bamboo_planks_small_tiles.png b/public/textures/rechiseled/bamboo_planks_small_tiles.png new file mode 100644 index 00000000..ffe72e16 Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_small_tiles.png differ diff --git a/public/textures/rechiseled/bamboo_planks_small_tiles_connecting.png b/public/textures/rechiseled/bamboo_planks_small_tiles_connecting.png new file mode 100644 index 00000000..ffe72e16 Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/bamboo_planks_squares.png b/public/textures/rechiseled/bamboo_planks_squares.png new file mode 100644 index 00000000..0255df77 Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_squares.png differ diff --git a/public/textures/rechiseled/bamboo_planks_squares_connecting.png b/public/textures/rechiseled/bamboo_planks_squares_connecting.png new file mode 100644 index 00000000..0255df77 Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_squares_connecting.png differ diff --git a/public/textures/rechiseled/bamboo_planks_tiles.png b/public/textures/rechiseled/bamboo_planks_tiles.png new file mode 100644 index 00000000..a86bbd6b Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_tiles.png differ diff --git a/public/textures/rechiseled/bamboo_planks_tiles_connecting.png b/public/textures/rechiseled/bamboo_planks_tiles_connecting.png new file mode 100644 index 00000000..a86bbd6b Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_tiles_connecting.png differ diff --git a/public/textures/rechiseled/bamboo_planks_wavy.png b/public/textures/rechiseled/bamboo_planks_wavy.png new file mode 100644 index 00000000..778e9864 Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_wavy.png differ diff --git a/public/textures/rechiseled/bamboo_planks_wavy_connecting.png b/public/textures/rechiseled/bamboo_planks_wavy_connecting.png new file mode 100644 index 00000000..778e9864 Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_wavy_connecting.png differ diff --git a/public/textures/rechiseled/bamboo_planks_woven.png b/public/textures/rechiseled/bamboo_planks_woven.png new file mode 100644 index 00000000..97b8d62e Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_woven.png differ diff --git a/public/textures/rechiseled/bamboo_planks_woven_connecting.png b/public/textures/rechiseled/bamboo_planks_woven_connecting.png new file mode 100644 index 00000000..97b8d62e Binary files /dev/null and b/public/textures/rechiseled/bamboo_planks_woven_connecting.png differ diff --git a/public/textures/rechiseled/basalt_beams.png b/public/textures/rechiseled/basalt_beams.png new file mode 100644 index 00000000..3fd3e6b0 Binary files /dev/null and b/public/textures/rechiseled/basalt_beams.png differ diff --git a/public/textures/rechiseled/basalt_beams_connecting.png b/public/textures/rechiseled/basalt_beams_connecting.png new file mode 100644 index 00000000..3fd3e6b0 Binary files /dev/null and b/public/textures/rechiseled/basalt_beams_connecting.png differ diff --git a/public/textures/rechiseled/basalt_bordered.png b/public/textures/rechiseled/basalt_bordered.png new file mode 100644 index 00000000..b73803f0 Binary files /dev/null and b/public/textures/rechiseled/basalt_bordered.png differ diff --git a/public/textures/rechiseled/basalt_bordered_connecting.png b/public/textures/rechiseled/basalt_bordered_connecting.png new file mode 100644 index 00000000..b73803f0 Binary files /dev/null and b/public/textures/rechiseled/basalt_bordered_connecting.png differ diff --git a/public/textures/rechiseled/basalt_bordered_polished.png b/public/textures/rechiseled/basalt_bordered_polished.png new file mode 100644 index 00000000..00342c24 Binary files /dev/null and b/public/textures/rechiseled/basalt_bordered_polished.png differ diff --git a/public/textures/rechiseled/basalt_bordered_polished_connecting.png b/public/textures/rechiseled/basalt_bordered_polished_connecting.png new file mode 100644 index 00000000..00342c24 Binary files /dev/null and b/public/textures/rechiseled/basalt_bordered_polished_connecting.png differ diff --git a/public/textures/rechiseled/basalt_bricks.png b/public/textures/rechiseled/basalt_bricks.png new file mode 100644 index 00000000..460c3cc0 Binary files /dev/null and b/public/textures/rechiseled/basalt_bricks.png differ diff --git a/public/textures/rechiseled/basalt_bricks_connecting.png b/public/textures/rechiseled/basalt_bricks_connecting.png new file mode 100644 index 00000000..460c3cc0 Binary files /dev/null and b/public/textures/rechiseled/basalt_bricks_connecting.png differ diff --git a/public/textures/rechiseled/basalt_chiseled_piglin.png b/public/textures/rechiseled/basalt_chiseled_piglin.png new file mode 100644 index 00000000..ca39c39b Binary files /dev/null and b/public/textures/rechiseled/basalt_chiseled_piglin.png differ diff --git a/public/textures/rechiseled/basalt_diagonal_tiles.png b/public/textures/rechiseled/basalt_diagonal_tiles.png new file mode 100644 index 00000000..2c207940 Binary files /dev/null and b/public/textures/rechiseled/basalt_diagonal_tiles.png differ diff --git a/public/textures/rechiseled/basalt_diagonal_tiles_connecting.png b/public/textures/rechiseled/basalt_diagonal_tiles_connecting.png new file mode 100644 index 00000000..2c207940 Binary files /dev/null and b/public/textures/rechiseled/basalt_diagonal_tiles_connecting.png differ diff --git a/public/textures/rechiseled/basalt_pattern.png b/public/textures/rechiseled/basalt_pattern.png new file mode 100644 index 00000000..fbe2a93e Binary files /dev/null and b/public/textures/rechiseled/basalt_pattern.png differ diff --git a/public/textures/rechiseled/basalt_pattern_connecting.png b/public/textures/rechiseled/basalt_pattern_connecting.png new file mode 100644 index 00000000..fbe2a93e Binary files /dev/null and b/public/textures/rechiseled/basalt_pattern_connecting.png differ diff --git a/public/textures/rechiseled/basalt_patterned.png b/public/textures/rechiseled/basalt_patterned.png new file mode 100644 index 00000000..db20d77a Binary files /dev/null and b/public/textures/rechiseled/basalt_patterned.png differ diff --git a/public/textures/rechiseled/basalt_patterned_connecting.png b/public/textures/rechiseled/basalt_patterned_connecting.png new file mode 100644 index 00000000..db20d77a Binary files /dev/null and b/public/textures/rechiseled/basalt_patterned_connecting.png differ diff --git a/public/textures/rechiseled/basalt_tiles.png b/public/textures/rechiseled/basalt_tiles.png new file mode 100644 index 00000000..b09340a2 Binary files /dev/null and b/public/textures/rechiseled/basalt_tiles.png differ diff --git a/public/textures/rechiseled/basalt_tiles_connecting.png b/public/textures/rechiseled/basalt_tiles_connecting.png new file mode 100644 index 00000000..b09340a2 Binary files /dev/null and b/public/textures/rechiseled/basalt_tiles_connecting.png differ diff --git a/public/textures/rechiseled/birch_planks_beams.png b/public/textures/rechiseled/birch_planks_beams.png new file mode 100644 index 00000000..863b20df Binary files /dev/null and b/public/textures/rechiseled/birch_planks_beams.png differ diff --git a/public/textures/rechiseled/birch_planks_beams_connecting.png b/public/textures/rechiseled/birch_planks_beams_connecting.png new file mode 100644 index 00000000..863b20df Binary files /dev/null and b/public/textures/rechiseled/birch_planks_beams_connecting.png differ diff --git a/public/textures/rechiseled/birch_planks_brick_pattern.png b/public/textures/rechiseled/birch_planks_brick_pattern.png new file mode 100644 index 00000000..9a324109 Binary files /dev/null and b/public/textures/rechiseled/birch_planks_brick_pattern.png differ diff --git a/public/textures/rechiseled/birch_planks_brick_pattern_connecting.png b/public/textures/rechiseled/birch_planks_brick_pattern_connecting.png new file mode 100644 index 00000000..9a324109 Binary files /dev/null and b/public/textures/rechiseled/birch_planks_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/birch_planks_brick_paving.png b/public/textures/rechiseled/birch_planks_brick_paving.png new file mode 100644 index 00000000..6773be01 Binary files /dev/null and b/public/textures/rechiseled/birch_planks_brick_paving.png differ diff --git a/public/textures/rechiseled/birch_planks_brick_paving_connecting.png b/public/textures/rechiseled/birch_planks_brick_paving_connecting.png new file mode 100644 index 00000000..6773be01 Binary files /dev/null and b/public/textures/rechiseled/birch_planks_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/birch_planks_bricks.png b/public/textures/rechiseled/birch_planks_bricks.png new file mode 100644 index 00000000..347a1ae1 Binary files /dev/null and b/public/textures/rechiseled/birch_planks_bricks.png differ diff --git a/public/textures/rechiseled/birch_planks_bricks_connecting.png b/public/textures/rechiseled/birch_planks_bricks_connecting.png new file mode 100644 index 00000000..347a1ae1 Binary files /dev/null and b/public/textures/rechiseled/birch_planks_bricks_connecting.png differ diff --git a/public/textures/rechiseled/birch_planks_crate.png b/public/textures/rechiseled/birch_planks_crate.png new file mode 100644 index 00000000..8ce756a6 Binary files /dev/null and b/public/textures/rechiseled/birch_planks_crate.png differ diff --git a/public/textures/rechiseled/birch_planks_crate_connecting.png b/public/textures/rechiseled/birch_planks_crate_connecting.png new file mode 100644 index 00000000..8ce756a6 Binary files /dev/null and b/public/textures/rechiseled/birch_planks_crate_connecting.png differ diff --git a/public/textures/rechiseled/birch_planks_diagonal_stripes.png b/public/textures/rechiseled/birch_planks_diagonal_stripes.png new file mode 100644 index 00000000..98fecdcb Binary files /dev/null and b/public/textures/rechiseled/birch_planks_diagonal_stripes.png differ diff --git a/public/textures/rechiseled/birch_planks_diagonal_stripes_connecting.png b/public/textures/rechiseled/birch_planks_diagonal_stripes_connecting.png new file mode 100644 index 00000000..98fecdcb Binary files /dev/null and b/public/textures/rechiseled/birch_planks_diagonal_stripes_connecting.png differ diff --git a/public/textures/rechiseled/birch_planks_diagonal_tiles.png b/public/textures/rechiseled/birch_planks_diagonal_tiles.png new file mode 100644 index 00000000..105db59e Binary files /dev/null and b/public/textures/rechiseled/birch_planks_diagonal_tiles.png differ diff --git a/public/textures/rechiseled/birch_planks_diagonal_tiles_connecting.png b/public/textures/rechiseled/birch_planks_diagonal_tiles_connecting.png new file mode 100644 index 00000000..105db59e Binary files /dev/null and b/public/textures/rechiseled/birch_planks_diagonal_tiles_connecting.png differ diff --git a/public/textures/rechiseled/birch_planks_dotted.png b/public/textures/rechiseled/birch_planks_dotted.png new file mode 100644 index 00000000..46387bb3 Binary files /dev/null and b/public/textures/rechiseled/birch_planks_dotted.png differ diff --git a/public/textures/rechiseled/birch_planks_dotted_connecting.png b/public/textures/rechiseled/birch_planks_dotted_connecting.png new file mode 100644 index 00000000..46387bb3 Binary files /dev/null and b/public/textures/rechiseled/birch_planks_dotted_connecting.png differ diff --git a/public/textures/rechiseled/birch_planks_flooring.png b/public/textures/rechiseled/birch_planks_flooring.png new file mode 100644 index 00000000..edabf716 Binary files /dev/null and b/public/textures/rechiseled/birch_planks_flooring.png differ diff --git a/public/textures/rechiseled/birch_planks_flooring_connecting.png b/public/textures/rechiseled/birch_planks_flooring_connecting.png new file mode 100644 index 00000000..edabf716 Binary files /dev/null and b/public/textures/rechiseled/birch_planks_flooring_connecting.png differ diff --git a/public/textures/rechiseled/birch_planks_large_tiles.png b/public/textures/rechiseled/birch_planks_large_tiles.png new file mode 100644 index 00000000..a8b30aee Binary files /dev/null and b/public/textures/rechiseled/birch_planks_large_tiles.png differ diff --git a/public/textures/rechiseled/birch_planks_large_tiles_connecting.png b/public/textures/rechiseled/birch_planks_large_tiles_connecting.png new file mode 100644 index 00000000..a8b30aee Binary files /dev/null and b/public/textures/rechiseled/birch_planks_large_tiles_connecting.png differ diff --git a/public/textures/rechiseled/birch_planks_mosaic.png b/public/textures/rechiseled/birch_planks_mosaic.png new file mode 100644 index 00000000..265b1c7b Binary files /dev/null and b/public/textures/rechiseled/birch_planks_mosaic.png differ diff --git a/public/textures/rechiseled/birch_planks_pattern.png b/public/textures/rechiseled/birch_planks_pattern.png new file mode 100644 index 00000000..86942d0e Binary files /dev/null and b/public/textures/rechiseled/birch_planks_pattern.png differ diff --git a/public/textures/rechiseled/birch_planks_pattern_connecting.png b/public/textures/rechiseled/birch_planks_pattern_connecting.png new file mode 100644 index 00000000..86942d0e Binary files /dev/null and b/public/textures/rechiseled/birch_planks_pattern_connecting.png differ diff --git a/public/textures/rechiseled/birch_planks_rotated_bricks.png b/public/textures/rechiseled/birch_planks_rotated_bricks.png new file mode 100644 index 00000000..83463954 Binary files /dev/null and b/public/textures/rechiseled/birch_planks_rotated_bricks.png differ diff --git a/public/textures/rechiseled/birch_planks_rotated_bricks_connecting.png b/public/textures/rechiseled/birch_planks_rotated_bricks_connecting.png new file mode 100644 index 00000000..83463954 Binary files /dev/null and b/public/textures/rechiseled/birch_planks_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/birch_planks_small_bricks.png b/public/textures/rechiseled/birch_planks_small_bricks.png new file mode 100644 index 00000000..b7861b19 Binary files /dev/null and b/public/textures/rechiseled/birch_planks_small_bricks.png differ diff --git a/public/textures/rechiseled/birch_planks_small_bricks_connecting.png b/public/textures/rechiseled/birch_planks_small_bricks_connecting.png new file mode 100644 index 00000000..b7861b19 Binary files /dev/null and b/public/textures/rechiseled/birch_planks_small_bricks_connecting.png differ diff --git a/public/textures/rechiseled/birch_planks_small_tiles.png b/public/textures/rechiseled/birch_planks_small_tiles.png new file mode 100644 index 00000000..65f1b664 Binary files /dev/null and b/public/textures/rechiseled/birch_planks_small_tiles.png differ diff --git a/public/textures/rechiseled/birch_planks_small_tiles_connecting.png b/public/textures/rechiseled/birch_planks_small_tiles_connecting.png new file mode 100644 index 00000000..65f1b664 Binary files /dev/null and b/public/textures/rechiseled/birch_planks_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/birch_planks_squares.png b/public/textures/rechiseled/birch_planks_squares.png new file mode 100644 index 00000000..f2451e55 Binary files /dev/null and b/public/textures/rechiseled/birch_planks_squares.png differ diff --git a/public/textures/rechiseled/birch_planks_squares_connecting.png b/public/textures/rechiseled/birch_planks_squares_connecting.png new file mode 100644 index 00000000..f2451e55 Binary files /dev/null and b/public/textures/rechiseled/birch_planks_squares_connecting.png differ diff --git a/public/textures/rechiseled/birch_planks_tiles.png b/public/textures/rechiseled/birch_planks_tiles.png new file mode 100644 index 00000000..5709aed2 Binary files /dev/null and b/public/textures/rechiseled/birch_planks_tiles.png differ diff --git a/public/textures/rechiseled/birch_planks_tiles_connecting.png b/public/textures/rechiseled/birch_planks_tiles_connecting.png new file mode 100644 index 00000000..5709aed2 Binary files /dev/null and b/public/textures/rechiseled/birch_planks_tiles_connecting.png differ diff --git a/public/textures/rechiseled/birch_planks_wavy.png b/public/textures/rechiseled/birch_planks_wavy.png new file mode 100644 index 00000000..a7f6931a Binary files /dev/null and b/public/textures/rechiseled/birch_planks_wavy.png differ diff --git a/public/textures/rechiseled/birch_planks_wavy_connecting.png b/public/textures/rechiseled/birch_planks_wavy_connecting.png new file mode 100644 index 00000000..a7f6931a Binary files /dev/null and b/public/textures/rechiseled/birch_planks_wavy_connecting.png differ diff --git a/public/textures/rechiseled/birch_planks_woven.png b/public/textures/rechiseled/birch_planks_woven.png new file mode 100644 index 00000000..8d390a96 Binary files /dev/null and b/public/textures/rechiseled/birch_planks_woven.png differ diff --git a/public/textures/rechiseled/birch_planks_woven_connecting.png b/public/textures/rechiseled/birch_planks_woven_connecting.png new file mode 100644 index 00000000..8d390a96 Binary files /dev/null and b/public/textures/rechiseled/birch_planks_woven_connecting.png differ diff --git a/public/textures/rechiseled/blackstone_brick_pattern.png b/public/textures/rechiseled/blackstone_brick_pattern.png new file mode 100644 index 00000000..5b6e9bcb Binary files /dev/null and b/public/textures/rechiseled/blackstone_brick_pattern.png differ diff --git a/public/textures/rechiseled/blackstone_brick_pattern_connecting.png b/public/textures/rechiseled/blackstone_brick_pattern_connecting.png new file mode 100644 index 00000000..5b6e9bcb Binary files /dev/null and b/public/textures/rechiseled/blackstone_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/blackstone_brick_paving.png b/public/textures/rechiseled/blackstone_brick_paving.png new file mode 100644 index 00000000..9f754812 Binary files /dev/null and b/public/textures/rechiseled/blackstone_brick_paving.png differ diff --git a/public/textures/rechiseled/blackstone_brick_paving_connecting.png b/public/textures/rechiseled/blackstone_brick_paving_connecting.png new file mode 100644 index 00000000..9f754812 Binary files /dev/null and b/public/textures/rechiseled/blackstone_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/blackstone_diagonal_bricks.png b/public/textures/rechiseled/blackstone_diagonal_bricks.png new file mode 100644 index 00000000..3ac4551a Binary files /dev/null and b/public/textures/rechiseled/blackstone_diagonal_bricks.png differ diff --git a/public/textures/rechiseled/blackstone_diagonal_bricks_connecting.png b/public/textures/rechiseled/blackstone_diagonal_bricks_connecting.png new file mode 100644 index 00000000..3ac4551a Binary files /dev/null and b/public/textures/rechiseled/blackstone_diagonal_bricks_connecting.png differ diff --git a/public/textures/rechiseled/blackstone_polished_connecting.png b/public/textures/rechiseled/blackstone_polished_connecting.png new file mode 100644 index 00000000..9e798bed Binary files /dev/null and b/public/textures/rechiseled/blackstone_polished_connecting.png differ diff --git a/public/textures/rechiseled/blackstone_rotated_bricks.png b/public/textures/rechiseled/blackstone_rotated_bricks.png new file mode 100644 index 00000000..6d5c0652 Binary files /dev/null and b/public/textures/rechiseled/blackstone_rotated_bricks.png differ diff --git a/public/textures/rechiseled/blackstone_rotated_bricks_connecting.png b/public/textures/rechiseled/blackstone_rotated_bricks_connecting.png new file mode 100644 index 00000000..6d5c0652 Binary files /dev/null and b/public/textures/rechiseled/blackstone_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/blackstone_tiles.png b/public/textures/rechiseled/blackstone_tiles.png new file mode 100644 index 00000000..08d035b0 Binary files /dev/null and b/public/textures/rechiseled/blackstone_tiles.png differ diff --git a/public/textures/rechiseled/blackstone_tiles_connecting.png b/public/textures/rechiseled/blackstone_tiles_connecting.png new file mode 100644 index 00000000..08d035b0 Binary files /dev/null and b/public/textures/rechiseled/blackstone_tiles_connecting.png differ diff --git a/public/textures/rechiseled/blue_ice_bordered.png b/public/textures/rechiseled/blue_ice_bordered.png new file mode 100644 index 00000000..18be4257 Binary files /dev/null and b/public/textures/rechiseled/blue_ice_bordered.png differ diff --git a/public/textures/rechiseled/blue_ice_bordered_connecting.png b/public/textures/rechiseled/blue_ice_bordered_connecting.png new file mode 100644 index 00000000..18be4257 Binary files /dev/null and b/public/textures/rechiseled/blue_ice_bordered_connecting.png differ diff --git a/public/textures/rechiseled/blue_ice_bricks.png b/public/textures/rechiseled/blue_ice_bricks.png new file mode 100644 index 00000000..cd0e4258 Binary files /dev/null and b/public/textures/rechiseled/blue_ice_bricks.png differ diff --git a/public/textures/rechiseled/blue_ice_bricks_connecting.png b/public/textures/rechiseled/blue_ice_bricks_connecting.png new file mode 100644 index 00000000..cd0e4258 Binary files /dev/null and b/public/textures/rechiseled/blue_ice_bricks_connecting.png differ diff --git a/public/textures/rechiseled/blue_ice_chiseled.png b/public/textures/rechiseled/blue_ice_chiseled.png new file mode 100644 index 00000000..aced3d7e Binary files /dev/null and b/public/textures/rechiseled/blue_ice_chiseled.png differ diff --git a/public/textures/rechiseled/blue_ice_chiseled_connecting.png b/public/textures/rechiseled/blue_ice_chiseled_connecting.png new file mode 100644 index 00000000..aced3d7e Binary files /dev/null and b/public/textures/rechiseled/blue_ice_chiseled_connecting.png differ diff --git a/public/textures/rechiseled/blue_ice_cone.png b/public/textures/rechiseled/blue_ice_cone.png new file mode 100644 index 00000000..3b2f9fbb Binary files /dev/null and b/public/textures/rechiseled/blue_ice_cone.png differ diff --git a/public/textures/rechiseled/blue_ice_cracked.png b/public/textures/rechiseled/blue_ice_cracked.png new file mode 100644 index 00000000..b2aac72a Binary files /dev/null and b/public/textures/rechiseled/blue_ice_cracked.png differ diff --git a/public/textures/rechiseled/blue_ice_patterned.png b/public/textures/rechiseled/blue_ice_patterned.png new file mode 100644 index 00000000..f1f5b5d1 Binary files /dev/null and b/public/textures/rechiseled/blue_ice_patterned.png differ diff --git a/public/textures/rechiseled/blue_ice_patterned_connecting.png b/public/textures/rechiseled/blue_ice_patterned_connecting.png new file mode 100644 index 00000000..f1f5b5d1 Binary files /dev/null and b/public/textures/rechiseled/blue_ice_patterned_connecting.png differ diff --git a/public/textures/rechiseled/blue_ice_pillar.png b/public/textures/rechiseled/blue_ice_pillar.png new file mode 100644 index 00000000..855c9d11 Binary files /dev/null and b/public/textures/rechiseled/blue_ice_pillar.png differ diff --git a/public/textures/rechiseled/blue_ice_pillar_connecting.png b/public/textures/rechiseled/blue_ice_pillar_connecting.png new file mode 100644 index 00000000..855c9d11 Binary files /dev/null and b/public/textures/rechiseled/blue_ice_pillar_connecting.png differ diff --git a/public/textures/rechiseled/blue_ice_rocky.png b/public/textures/rechiseled/blue_ice_rocky.png new file mode 100644 index 00000000..6a640b56 Binary files /dev/null and b/public/textures/rechiseled/blue_ice_rocky.png differ diff --git a/public/textures/rechiseled/blue_ice_slanted_tiles.png b/public/textures/rechiseled/blue_ice_slanted_tiles.png new file mode 100644 index 00000000..bac15637 Binary files /dev/null and b/public/textures/rechiseled/blue_ice_slanted_tiles.png differ diff --git a/public/textures/rechiseled/blue_ice_slanted_tiles_connecting.png b/public/textures/rechiseled/blue_ice_slanted_tiles_connecting.png new file mode 100644 index 00000000..bac15637 Binary files /dev/null and b/public/textures/rechiseled/blue_ice_slanted_tiles_connecting.png differ diff --git a/public/textures/rechiseled/blue_ice_tiles.png b/public/textures/rechiseled/blue_ice_tiles.png new file mode 100644 index 00000000..28d55d34 Binary files /dev/null and b/public/textures/rechiseled/blue_ice_tiles.png differ diff --git a/public/textures/rechiseled/blue_ice_tiles_connecting.png b/public/textures/rechiseled/blue_ice_tiles_connecting.png new file mode 100644 index 00000000..28d55d34 Binary files /dev/null and b/public/textures/rechiseled/blue_ice_tiles_connecting.png differ diff --git a/public/textures/rechiseled/bone_block_bordered.png b/public/textures/rechiseled/bone_block_bordered.png new file mode 100644 index 00000000..74c368b4 Binary files /dev/null and b/public/textures/rechiseled/bone_block_bordered.png differ diff --git a/public/textures/rechiseled/bone_block_bordered_connecting.png b/public/textures/rechiseled/bone_block_bordered_connecting.png new file mode 100644 index 00000000..74c368b4 Binary files /dev/null and b/public/textures/rechiseled/bone_block_bordered_connecting.png differ diff --git a/public/textures/rechiseled/bone_block_bundled.png b/public/textures/rechiseled/bone_block_bundled.png new file mode 100644 index 00000000..e6d3e362 Binary files /dev/null and b/public/textures/rechiseled/bone_block_bundled.png differ diff --git a/public/textures/rechiseled/bone_block_chiseled.png b/public/textures/rechiseled/bone_block_chiseled.png new file mode 100644 index 00000000..0666cbb8 Binary files /dev/null and b/public/textures/rechiseled/bone_block_chiseled.png differ diff --git a/public/textures/rechiseled/bone_block_chiseled_connecting.png b/public/textures/rechiseled/bone_block_chiseled_connecting.png new file mode 100644 index 00000000..0666cbb8 Binary files /dev/null and b/public/textures/rechiseled/bone_block_chiseled_connecting.png differ diff --git a/public/textures/rechiseled/bone_block_connecting_connecting.png b/public/textures/rechiseled/bone_block_connecting_connecting.png new file mode 100644 index 00000000..b87aa167 Binary files /dev/null and b/public/textures/rechiseled/bone_block_connecting_connecting.png differ diff --git a/public/textures/rechiseled/bone_block_cracked.png b/public/textures/rechiseled/bone_block_cracked.png new file mode 100644 index 00000000..7f0209f0 Binary files /dev/null and b/public/textures/rechiseled/bone_block_cracked.png differ diff --git a/public/textures/rechiseled/bone_block_decorated.png b/public/textures/rechiseled/bone_block_decorated.png new file mode 100644 index 00000000..81003eeb Binary files /dev/null and b/public/textures/rechiseled/bone_block_decorated.png differ diff --git a/public/textures/rechiseled/bone_block_decorated_bordered.png b/public/textures/rechiseled/bone_block_decorated_bordered.png new file mode 100644 index 00000000..0b085dd6 Binary files /dev/null and b/public/textures/rechiseled/bone_block_decorated_bordered.png differ diff --git a/public/textures/rechiseled/bone_block_decorated_bordered_connecting.png b/public/textures/rechiseled/bone_block_decorated_bordered_connecting.png new file mode 100644 index 00000000..0b085dd6 Binary files /dev/null and b/public/textures/rechiseled/bone_block_decorated_bordered_connecting.png differ diff --git a/public/textures/rechiseled/bone_block_inverted_tiles.png b/public/textures/rechiseled/bone_block_inverted_tiles.png new file mode 100644 index 00000000..fca3b275 Binary files /dev/null and b/public/textures/rechiseled/bone_block_inverted_tiles.png differ diff --git a/public/textures/rechiseled/bone_block_inverted_tiles_connecting.png b/public/textures/rechiseled/bone_block_inverted_tiles_connecting.png new file mode 100644 index 00000000..fca3b275 Binary files /dev/null and b/public/textures/rechiseled/bone_block_inverted_tiles_connecting.png differ diff --git a/public/textures/rechiseled/bone_block_patterned.png b/public/textures/rechiseled/bone_block_patterned.png new file mode 100644 index 00000000..27eeccda Binary files /dev/null and b/public/textures/rechiseled/bone_block_patterned.png differ diff --git a/public/textures/rechiseled/bone_block_patterned_connecting.png b/public/textures/rechiseled/bone_block_patterned_connecting.png new file mode 100644 index 00000000..27eeccda Binary files /dev/null and b/public/textures/rechiseled/bone_block_patterned_connecting.png differ diff --git a/public/textures/rechiseled/bone_block_pillar.png b/public/textures/rechiseled/bone_block_pillar.png new file mode 100644 index 00000000..df063548 Binary files /dev/null and b/public/textures/rechiseled/bone_block_pillar.png differ diff --git a/public/textures/rechiseled/bone_block_pillar_connecting.png b/public/textures/rechiseled/bone_block_pillar_connecting.png new file mode 100644 index 00000000..df063548 Binary files /dev/null and b/public/textures/rechiseled/bone_block_pillar_connecting.png differ diff --git a/public/textures/rechiseled/bone_block_rib.png b/public/textures/rechiseled/bone_block_rib.png new file mode 100644 index 00000000..fbfec2cd Binary files /dev/null and b/public/textures/rechiseled/bone_block_rib.png differ diff --git a/public/textures/rechiseled/bone_block_skull.png b/public/textures/rechiseled/bone_block_skull.png new file mode 100644 index 00000000..af314c8f Binary files /dev/null and b/public/textures/rechiseled/bone_block_skull.png differ diff --git a/public/textures/rechiseled/bone_block_smooth.png b/public/textures/rechiseled/bone_block_smooth.png new file mode 100644 index 00000000..10fc846c Binary files /dev/null and b/public/textures/rechiseled/bone_block_smooth.png differ diff --git a/public/textures/rechiseled/cherry_planks_beams.png b/public/textures/rechiseled/cherry_planks_beams.png new file mode 100644 index 00000000..c3833792 Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_beams.png differ diff --git a/public/textures/rechiseled/cherry_planks_beams_connecting.png b/public/textures/rechiseled/cherry_planks_beams_connecting.png new file mode 100644 index 00000000..c3833792 Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_beams_connecting.png differ diff --git a/public/textures/rechiseled/cherry_planks_brick_pattern.png b/public/textures/rechiseled/cherry_planks_brick_pattern.png new file mode 100644 index 00000000..c873e531 Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_brick_pattern.png differ diff --git a/public/textures/rechiseled/cherry_planks_brick_pattern_connecting.png b/public/textures/rechiseled/cherry_planks_brick_pattern_connecting.png new file mode 100644 index 00000000..c873e531 Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/cherry_planks_brick_paving.png b/public/textures/rechiseled/cherry_planks_brick_paving.png new file mode 100644 index 00000000..29dea269 Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_brick_paving.png differ diff --git a/public/textures/rechiseled/cherry_planks_brick_paving_connecting.png b/public/textures/rechiseled/cherry_planks_brick_paving_connecting.png new file mode 100644 index 00000000..29dea269 Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/cherry_planks_bricks.png b/public/textures/rechiseled/cherry_planks_bricks.png new file mode 100644 index 00000000..b329b6cb Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_bricks.png differ diff --git a/public/textures/rechiseled/cherry_planks_bricks_connecting.png b/public/textures/rechiseled/cherry_planks_bricks_connecting.png new file mode 100644 index 00000000..b329b6cb Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_bricks_connecting.png differ diff --git a/public/textures/rechiseled/cherry_planks_crate.png b/public/textures/rechiseled/cherry_planks_crate.png new file mode 100644 index 00000000..83d4cf18 Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_crate.png differ diff --git a/public/textures/rechiseled/cherry_planks_crate_connecting.png b/public/textures/rechiseled/cherry_planks_crate_connecting.png new file mode 100644 index 00000000..83d4cf18 Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_crate_connecting.png differ diff --git a/public/textures/rechiseled/cherry_planks_diagonal_stripes.png b/public/textures/rechiseled/cherry_planks_diagonal_stripes.png new file mode 100644 index 00000000..b106856a Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_diagonal_stripes.png differ diff --git a/public/textures/rechiseled/cherry_planks_diagonal_stripes_connecting.png b/public/textures/rechiseled/cherry_planks_diagonal_stripes_connecting.png new file mode 100644 index 00000000..b106856a Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_diagonal_stripes_connecting.png differ diff --git a/public/textures/rechiseled/cherry_planks_diagonal_tiles.png b/public/textures/rechiseled/cherry_planks_diagonal_tiles.png new file mode 100644 index 00000000..5d0839ee Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_diagonal_tiles.png differ diff --git a/public/textures/rechiseled/cherry_planks_diagonal_tiles_connecting.png b/public/textures/rechiseled/cherry_planks_diagonal_tiles_connecting.png new file mode 100644 index 00000000..5d0839ee Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_diagonal_tiles_connecting.png differ diff --git a/public/textures/rechiseled/cherry_planks_dotted.png b/public/textures/rechiseled/cherry_planks_dotted.png new file mode 100644 index 00000000..c4331bed Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_dotted.png differ diff --git a/public/textures/rechiseled/cherry_planks_dotted_connecting.png b/public/textures/rechiseled/cherry_planks_dotted_connecting.png new file mode 100644 index 00000000..c4331bed Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_dotted_connecting.png differ diff --git a/public/textures/rechiseled/cherry_planks_flooring.png b/public/textures/rechiseled/cherry_planks_flooring.png new file mode 100644 index 00000000..d9ace157 Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_flooring.png differ diff --git a/public/textures/rechiseled/cherry_planks_flooring_connecting.png b/public/textures/rechiseled/cherry_planks_flooring_connecting.png new file mode 100644 index 00000000..d9ace157 Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_flooring_connecting.png differ diff --git a/public/textures/rechiseled/cherry_planks_large_tiles.png b/public/textures/rechiseled/cherry_planks_large_tiles.png new file mode 100644 index 00000000..b71d1ad0 Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_large_tiles.png differ diff --git a/public/textures/rechiseled/cherry_planks_large_tiles_connecting.png b/public/textures/rechiseled/cherry_planks_large_tiles_connecting.png new file mode 100644 index 00000000..b71d1ad0 Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_large_tiles_connecting.png differ diff --git a/public/textures/rechiseled/cherry_planks_mosaic.png b/public/textures/rechiseled/cherry_planks_mosaic.png new file mode 100644 index 00000000..afa9789f Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_mosaic.png differ diff --git a/public/textures/rechiseled/cherry_planks_pattern.png b/public/textures/rechiseled/cherry_planks_pattern.png new file mode 100644 index 00000000..811fd96d Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_pattern.png differ diff --git a/public/textures/rechiseled/cherry_planks_pattern_connecting.png b/public/textures/rechiseled/cherry_planks_pattern_connecting.png new file mode 100644 index 00000000..811fd96d Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_pattern_connecting.png differ diff --git a/public/textures/rechiseled/cherry_planks_rotated_bricks.png b/public/textures/rechiseled/cherry_planks_rotated_bricks.png new file mode 100644 index 00000000..a078d3ad Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_rotated_bricks.png differ diff --git a/public/textures/rechiseled/cherry_planks_rotated_bricks_connecting.png b/public/textures/rechiseled/cherry_planks_rotated_bricks_connecting.png new file mode 100644 index 00000000..a078d3ad Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/cherry_planks_small_bricks.png b/public/textures/rechiseled/cherry_planks_small_bricks.png new file mode 100644 index 00000000..b4566e43 Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_small_bricks.png differ diff --git a/public/textures/rechiseled/cherry_planks_small_bricks_connecting.png b/public/textures/rechiseled/cherry_planks_small_bricks_connecting.png new file mode 100644 index 00000000..b4566e43 Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_small_bricks_connecting.png differ diff --git a/public/textures/rechiseled/cherry_planks_small_tiles.png b/public/textures/rechiseled/cherry_planks_small_tiles.png new file mode 100644 index 00000000..a20b7067 Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_small_tiles.png differ diff --git a/public/textures/rechiseled/cherry_planks_small_tiles_connecting.png b/public/textures/rechiseled/cherry_planks_small_tiles_connecting.png new file mode 100644 index 00000000..a20b7067 Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/cherry_planks_squares.png b/public/textures/rechiseled/cherry_planks_squares.png new file mode 100644 index 00000000..f3c20ce9 Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_squares.png differ diff --git a/public/textures/rechiseled/cherry_planks_squares_connecting.png b/public/textures/rechiseled/cherry_planks_squares_connecting.png new file mode 100644 index 00000000..f3c20ce9 Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_squares_connecting.png differ diff --git a/public/textures/rechiseled/cherry_planks_tiles.png b/public/textures/rechiseled/cherry_planks_tiles.png new file mode 100644 index 00000000..6f0b5a65 Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_tiles.png differ diff --git a/public/textures/rechiseled/cherry_planks_tiles_connecting.png b/public/textures/rechiseled/cherry_planks_tiles_connecting.png new file mode 100644 index 00000000..6f0b5a65 Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_tiles_connecting.png differ diff --git a/public/textures/rechiseled/cherry_planks_wavy.png b/public/textures/rechiseled/cherry_planks_wavy.png new file mode 100644 index 00000000..17311cde Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_wavy.png differ diff --git a/public/textures/rechiseled/cherry_planks_wavy_connecting.png b/public/textures/rechiseled/cherry_planks_wavy_connecting.png new file mode 100644 index 00000000..17311cde Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_wavy_connecting.png differ diff --git a/public/textures/rechiseled/cherry_planks_woven.png b/public/textures/rechiseled/cherry_planks_woven.png new file mode 100644 index 00000000..6b02b7b8 Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_woven.png differ diff --git a/public/textures/rechiseled/cherry_planks_woven_connecting.png b/public/textures/rechiseled/cherry_planks_woven_connecting.png new file mode 100644 index 00000000..6b02b7b8 Binary files /dev/null and b/public/textures/rechiseled/cherry_planks_woven_connecting.png differ diff --git a/public/textures/rechiseled/chisel.png b/public/textures/rechiseled/chisel.png new file mode 100644 index 00000000..7f97c634 Binary files /dev/null and b/public/textures/rechiseled/chisel.png differ diff --git a/public/textures/rechiseled/coal_block_carved.png b/public/textures/rechiseled/coal_block_carved.png new file mode 100644 index 00000000..6f03a48b Binary files /dev/null and b/public/textures/rechiseled/coal_block_carved.png differ diff --git a/public/textures/rechiseled/coal_block_carved_connecting.png b/public/textures/rechiseled/coal_block_carved_connecting.png new file mode 100644 index 00000000..6f03a48b Binary files /dev/null and b/public/textures/rechiseled/coal_block_carved_connecting.png differ diff --git a/public/textures/rechiseled/coal_block_chiseled.png b/public/textures/rechiseled/coal_block_chiseled.png new file mode 100644 index 00000000..0dd9556a Binary files /dev/null and b/public/textures/rechiseled/coal_block_chiseled.png differ diff --git a/public/textures/rechiseled/coal_block_chiseled_connecting.png b/public/textures/rechiseled/coal_block_chiseled_connecting.png new file mode 100644 index 00000000..0dd9556a Binary files /dev/null and b/public/textures/rechiseled/coal_block_chiseled_connecting.png differ diff --git a/public/textures/rechiseled/coal_block_circles.png b/public/textures/rechiseled/coal_block_circles.png new file mode 100644 index 00000000..b13c4bbb Binary files /dev/null and b/public/textures/rechiseled/coal_block_circles.png differ diff --git a/public/textures/rechiseled/coal_block_circles_connecting.png b/public/textures/rechiseled/coal_block_circles_connecting.png new file mode 100644 index 00000000..b13c4bbb Binary files /dev/null and b/public/textures/rechiseled/coal_block_circles_connecting.png differ diff --git a/public/textures/rechiseled/coal_block_compacted.png b/public/textures/rechiseled/coal_block_compacted.png new file mode 100644 index 00000000..9bc79600 Binary files /dev/null and b/public/textures/rechiseled/coal_block_compacted.png differ diff --git a/public/textures/rechiseled/coal_block_compacted_connecting.png b/public/textures/rechiseled/coal_block_compacted_connecting.png new file mode 100644 index 00000000..9bc79600 Binary files /dev/null and b/public/textures/rechiseled/coal_block_compacted_connecting.png differ diff --git a/public/textures/rechiseled/coal_block_ovals.png b/public/textures/rechiseled/coal_block_ovals.png new file mode 100644 index 00000000..ecc2049e Binary files /dev/null and b/public/textures/rechiseled/coal_block_ovals.png differ diff --git a/public/textures/rechiseled/coal_block_ovals_connecting.png b/public/textures/rechiseled/coal_block_ovals_connecting.png new file mode 100644 index 00000000..ecc2049e Binary files /dev/null and b/public/textures/rechiseled/coal_block_ovals_connecting.png differ diff --git a/public/textures/rechiseled/coal_block_pattern.png b/public/textures/rechiseled/coal_block_pattern.png new file mode 100644 index 00000000..22c5cff6 Binary files /dev/null and b/public/textures/rechiseled/coal_block_pattern.png differ diff --git a/public/textures/rechiseled/coal_block_pattern_connecting.png b/public/textures/rechiseled/coal_block_pattern_connecting.png new file mode 100644 index 00000000..22c5cff6 Binary files /dev/null and b/public/textures/rechiseled/coal_block_pattern_connecting.png differ diff --git a/public/textures/rechiseled/coal_block_pillar.png b/public/textures/rechiseled/coal_block_pillar.png new file mode 100644 index 00000000..1469dcd9 Binary files /dev/null and b/public/textures/rechiseled/coal_block_pillar.png differ diff --git a/public/textures/rechiseled/coal_block_pillar_connecting.png b/public/textures/rechiseled/coal_block_pillar_connecting.png new file mode 100644 index 00000000..1469dcd9 Binary files /dev/null and b/public/textures/rechiseled/coal_block_pillar_connecting.png differ diff --git a/public/textures/rechiseled/coal_block_polished.png b/public/textures/rechiseled/coal_block_polished.png new file mode 100644 index 00000000..832c1838 Binary files /dev/null and b/public/textures/rechiseled/coal_block_polished.png differ diff --git a/public/textures/rechiseled/coal_block_rotated_bricks.png b/public/textures/rechiseled/coal_block_rotated_bricks.png new file mode 100644 index 00000000..27709794 Binary files /dev/null and b/public/textures/rechiseled/coal_block_rotated_bricks.png differ diff --git a/public/textures/rechiseled/coal_block_rotated_bricks_connecting.png b/public/textures/rechiseled/coal_block_rotated_bricks_connecting.png new file mode 100644 index 00000000..27709794 Binary files /dev/null and b/public/textures/rechiseled/coal_block_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/coal_block_small_tiles.png b/public/textures/rechiseled/coal_block_small_tiles.png new file mode 100644 index 00000000..a6108dcc Binary files /dev/null and b/public/textures/rechiseled/coal_block_small_tiles.png differ diff --git a/public/textures/rechiseled/coal_block_small_tiles_connecting.png b/public/textures/rechiseled/coal_block_small_tiles_connecting.png new file mode 100644 index 00000000..a6108dcc Binary files /dev/null and b/public/textures/rechiseled/coal_block_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/coal_block_stripes.png b/public/textures/rechiseled/coal_block_stripes.png new file mode 100644 index 00000000..39898c4b Binary files /dev/null and b/public/textures/rechiseled/coal_block_stripes.png differ diff --git a/public/textures/rechiseled/coal_block_stripes_connecting.png b/public/textures/rechiseled/coal_block_stripes_connecting.png new file mode 100644 index 00000000..39898c4b Binary files /dev/null and b/public/textures/rechiseled/coal_block_stripes_connecting.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_beams.png b/public/textures/rechiseled/cobbled_deepslate_beams.png new file mode 100644 index 00000000..773b9cb0 Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_beams.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_beams_connecting.png b/public/textures/rechiseled/cobbled_deepslate_beams_connecting.png new file mode 100644 index 00000000..773b9cb0 Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_beams_connecting.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_brick_pattern.png b/public/textures/rechiseled/cobbled_deepslate_brick_pattern.png new file mode 100644 index 00000000..8ed20923 Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_brick_pattern.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_brick_pattern_connecting.png b/public/textures/rechiseled/cobbled_deepslate_brick_pattern_connecting.png new file mode 100644 index 00000000..8ed20923 Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_brick_paving.png b/public/textures/rechiseled/cobbled_deepslate_brick_paving.png new file mode 100644 index 00000000..739b4a5c Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_brick_paving.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_brick_paving_connecting.png b/public/textures/rechiseled/cobbled_deepslate_brick_paving_connecting.png new file mode 100644 index 00000000..739b4a5c Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_bricks.png b/public/textures/rechiseled/cobbled_deepslate_bricks.png new file mode 100644 index 00000000..6efc004e Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_bricks.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_bricks_connecting.png b/public/textures/rechiseled/cobbled_deepslate_bricks_connecting.png new file mode 100644 index 00000000..6efc004e Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_bricks_connecting.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_large_tiles.png b/public/textures/rechiseled/cobbled_deepslate_large_tiles.png new file mode 100644 index 00000000..e9a09a00 Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_large_tiles.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_large_tiles_connecting.png b/public/textures/rechiseled/cobbled_deepslate_large_tiles_connecting.png new file mode 100644 index 00000000..e9a09a00 Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_large_tiles_connecting.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_paving.png b/public/textures/rechiseled/cobbled_deepslate_paving.png new file mode 100644 index 00000000..03d7daf6 Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_paving.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_paving_connecting.png b/public/textures/rechiseled/cobbled_deepslate_paving_connecting.png new file mode 100644 index 00000000..03d7daf6 Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_paving_connecting.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_pillar.png b/public/textures/rechiseled/cobbled_deepslate_pillar.png new file mode 100644 index 00000000..bc6b0cf9 Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_pillar.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_pillar_connecting.png b/public/textures/rechiseled/cobbled_deepslate_pillar_connecting.png new file mode 100644 index 00000000..bc6b0cf9 Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_pillar_connecting.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_pulverized.png b/public/textures/rechiseled/cobbled_deepslate_pulverized.png new file mode 100644 index 00000000..60251a1d Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_pulverized.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_pulverized_connecting.png b/public/textures/rechiseled/cobbled_deepslate_pulverized_connecting.png new file mode 100644 index 00000000..60251a1d Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_pulverized_connecting.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_rotated_bricks.png b/public/textures/rechiseled/cobbled_deepslate_rotated_bricks.png new file mode 100644 index 00000000..20639891 Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_rotated_bricks.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_rotated_bricks_connecting.png b/public/textures/rechiseled/cobbled_deepslate_rotated_bricks_connecting.png new file mode 100644 index 00000000..20639891 Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_small_tiles.png b/public/textures/rechiseled/cobbled_deepslate_small_tiles.png new file mode 100644 index 00000000..9120a5a5 Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_small_tiles.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_small_tiles_connecting.png b/public/textures/rechiseled/cobbled_deepslate_small_tiles_connecting.png new file mode 100644 index 00000000..9120a5a5 Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_squares.png b/public/textures/rechiseled/cobbled_deepslate_squares.png new file mode 100644 index 00000000..0602cf7e Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_squares.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_squares_connecting.png b/public/textures/rechiseled/cobbled_deepslate_squares_connecting.png new file mode 100644 index 00000000..0602cf7e Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_squares_connecting.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_stripes.png b/public/textures/rechiseled/cobbled_deepslate_stripes.png new file mode 100644 index 00000000..e1e0bbd9 Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_stripes.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_stripes_connecting.png b/public/textures/rechiseled/cobbled_deepslate_stripes_connecting.png new file mode 100644 index 00000000..e1e0bbd9 Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_stripes_connecting.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_tiles.png b/public/textures/rechiseled/cobbled_deepslate_tiles.png new file mode 100644 index 00000000..5260a149 Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_tiles.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_tiles_connecting.png b/public/textures/rechiseled/cobbled_deepslate_tiles_connecting.png new file mode 100644 index 00000000..5260a149 Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_tiles_connecting.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_worn_stripes.png b/public/textures/rechiseled/cobbled_deepslate_worn_stripes.png new file mode 100644 index 00000000..9aa2e8d6 Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_worn_stripes.png differ diff --git a/public/textures/rechiseled/cobbled_deepslate_worn_stripes_connecting.png b/public/textures/rechiseled/cobbled_deepslate_worn_stripes_connecting.png new file mode 100644 index 00000000..9aa2e8d6 Binary files /dev/null and b/public/textures/rechiseled/cobbled_deepslate_worn_stripes_connecting.png differ diff --git a/public/textures/rechiseled/cobblestone_beams.png b/public/textures/rechiseled/cobblestone_beams.png new file mode 100644 index 00000000..b07ce454 Binary files /dev/null and b/public/textures/rechiseled/cobblestone_beams.png differ diff --git a/public/textures/rechiseled/cobblestone_beams_connecting.png b/public/textures/rechiseled/cobblestone_beams_connecting.png new file mode 100644 index 00000000..b07ce454 Binary files /dev/null and b/public/textures/rechiseled/cobblestone_beams_connecting.png differ diff --git a/public/textures/rechiseled/cobblestone_brick_pattern.png b/public/textures/rechiseled/cobblestone_brick_pattern.png new file mode 100644 index 00000000..447690e0 Binary files /dev/null and b/public/textures/rechiseled/cobblestone_brick_pattern.png differ diff --git a/public/textures/rechiseled/cobblestone_brick_pattern_connecting.png b/public/textures/rechiseled/cobblestone_brick_pattern_connecting.png new file mode 100644 index 00000000..447690e0 Binary files /dev/null and b/public/textures/rechiseled/cobblestone_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/cobblestone_brick_paving.png b/public/textures/rechiseled/cobblestone_brick_paving.png new file mode 100644 index 00000000..f430f63b Binary files /dev/null and b/public/textures/rechiseled/cobblestone_brick_paving.png differ diff --git a/public/textures/rechiseled/cobblestone_brick_paving_connecting.png b/public/textures/rechiseled/cobblestone_brick_paving_connecting.png new file mode 100644 index 00000000..f430f63b Binary files /dev/null and b/public/textures/rechiseled/cobblestone_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/cobblestone_chiseled_border.png b/public/textures/rechiseled/cobblestone_chiseled_border.png new file mode 100644 index 00000000..f9e451c6 Binary files /dev/null and b/public/textures/rechiseled/cobblestone_chiseled_border.png differ diff --git a/public/textures/rechiseled/cobblestone_chiseled_border_connecting.png b/public/textures/rechiseled/cobblestone_chiseled_border_connecting.png new file mode 100644 index 00000000..f9e451c6 Binary files /dev/null and b/public/textures/rechiseled/cobblestone_chiseled_border_connecting.png differ diff --git a/public/textures/rechiseled/cobblestone_crosses.png b/public/textures/rechiseled/cobblestone_crosses.png new file mode 100644 index 00000000..28dbb822 Binary files /dev/null and b/public/textures/rechiseled/cobblestone_crosses.png differ diff --git a/public/textures/rechiseled/cobblestone_crosses_connecting.png b/public/textures/rechiseled/cobblestone_crosses_connecting.png new file mode 100644 index 00000000..28dbb822 Binary files /dev/null and b/public/textures/rechiseled/cobblestone_crosses_connecting.png differ diff --git a/public/textures/rechiseled/cobblestone_dented.png b/public/textures/rechiseled/cobblestone_dented.png new file mode 100644 index 00000000..6c49bcca Binary files /dev/null and b/public/textures/rechiseled/cobblestone_dented.png differ diff --git a/public/textures/rechiseled/cobblestone_dented_connecting.png b/public/textures/rechiseled/cobblestone_dented_connecting.png new file mode 100644 index 00000000..6c49bcca Binary files /dev/null and b/public/textures/rechiseled/cobblestone_dented_connecting.png differ diff --git a/public/textures/rechiseled/cobblestone_inverted_dented.png b/public/textures/rechiseled/cobblestone_inverted_dented.png new file mode 100644 index 00000000..2434e3d5 Binary files /dev/null and b/public/textures/rechiseled/cobblestone_inverted_dented.png differ diff --git a/public/textures/rechiseled/cobblestone_inverted_dented_connecting.png b/public/textures/rechiseled/cobblestone_inverted_dented_connecting.png new file mode 100644 index 00000000..2434e3d5 Binary files /dev/null and b/public/textures/rechiseled/cobblestone_inverted_dented_connecting.png differ diff --git a/public/textures/rechiseled/cobblestone_large_squares.png b/public/textures/rechiseled/cobblestone_large_squares.png new file mode 100644 index 00000000..3f27ecbb Binary files /dev/null and b/public/textures/rechiseled/cobblestone_large_squares.png differ diff --git a/public/textures/rechiseled/cobblestone_paving.png b/public/textures/rechiseled/cobblestone_paving.png new file mode 100644 index 00000000..878d1fad Binary files /dev/null and b/public/textures/rechiseled/cobblestone_paving.png differ diff --git a/public/textures/rechiseled/cobblestone_paving_connecting.png b/public/textures/rechiseled/cobblestone_paving_connecting.png new file mode 100644 index 00000000..878d1fad Binary files /dev/null and b/public/textures/rechiseled/cobblestone_paving_connecting.png differ diff --git a/public/textures/rechiseled/cobblestone_pillar.png b/public/textures/rechiseled/cobblestone_pillar.png new file mode 100644 index 00000000..df417b6e Binary files /dev/null and b/public/textures/rechiseled/cobblestone_pillar.png differ diff --git a/public/textures/rechiseled/cobblestone_pillar_connecting.png b/public/textures/rechiseled/cobblestone_pillar_connecting.png new file mode 100644 index 00000000..df417b6e Binary files /dev/null and b/public/textures/rechiseled/cobblestone_pillar_connecting.png differ diff --git a/public/textures/rechiseled/cobblestone_polished.png b/public/textures/rechiseled/cobblestone_polished.png new file mode 100644 index 00000000..7c4cdca2 Binary files /dev/null and b/public/textures/rechiseled/cobblestone_polished.png differ diff --git a/public/textures/rechiseled/cobblestone_pulverized.png b/public/textures/rechiseled/cobblestone_pulverized.png new file mode 100644 index 00000000..b605c734 Binary files /dev/null and b/public/textures/rechiseled/cobblestone_pulverized.png differ diff --git a/public/textures/rechiseled/cobblestone_pulverized_connecting.png b/public/textures/rechiseled/cobblestone_pulverized_connecting.png new file mode 100644 index 00000000..b605c734 Binary files /dev/null and b/public/textures/rechiseled/cobblestone_pulverized_connecting.png differ diff --git a/public/textures/rechiseled/cobblestone_rotated_bricks.png b/public/textures/rechiseled/cobblestone_rotated_bricks.png new file mode 100644 index 00000000..40433b0a Binary files /dev/null and b/public/textures/rechiseled/cobblestone_rotated_bricks.png differ diff --git a/public/textures/rechiseled/cobblestone_rotated_bricks_connecting.png b/public/textures/rechiseled/cobblestone_rotated_bricks_connecting.png new file mode 100644 index 00000000..40433b0a Binary files /dev/null and b/public/textures/rechiseled/cobblestone_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/cobblestone_sheared.png b/public/textures/rechiseled/cobblestone_sheared.png new file mode 100644 index 00000000..8d9af919 Binary files /dev/null and b/public/textures/rechiseled/cobblestone_sheared.png differ diff --git a/public/textures/rechiseled/cobblestone_small_tiles.png b/public/textures/rechiseled/cobblestone_small_tiles.png new file mode 100644 index 00000000..24a3caf6 Binary files /dev/null and b/public/textures/rechiseled/cobblestone_small_tiles.png differ diff --git a/public/textures/rechiseled/cobblestone_small_tiles_connecting.png b/public/textures/rechiseled/cobblestone_small_tiles_connecting.png new file mode 100644 index 00000000..24a3caf6 Binary files /dev/null and b/public/textures/rechiseled/cobblestone_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/cobblestone_squares.png b/public/textures/rechiseled/cobblestone_squares.png new file mode 100644 index 00000000..f634c3cd Binary files /dev/null and b/public/textures/rechiseled/cobblestone_squares.png differ diff --git a/public/textures/rechiseled/cobblestone_squares_connecting.png b/public/textures/rechiseled/cobblestone_squares_connecting.png new file mode 100644 index 00000000..f634c3cd Binary files /dev/null and b/public/textures/rechiseled/cobblestone_squares_connecting.png differ diff --git a/public/textures/rechiseled/cobblestone_stripes.png b/public/textures/rechiseled/cobblestone_stripes.png new file mode 100644 index 00000000..8bdd77d0 Binary files /dev/null and b/public/textures/rechiseled/cobblestone_stripes.png differ diff --git a/public/textures/rechiseled/cobblestone_stripes_connecting.png b/public/textures/rechiseled/cobblestone_stripes_connecting.png new file mode 100644 index 00000000..8bdd77d0 Binary files /dev/null and b/public/textures/rechiseled/cobblestone_stripes_connecting.png differ diff --git a/public/textures/rechiseled/cobblestone_tiles.png b/public/textures/rechiseled/cobblestone_tiles.png new file mode 100644 index 00000000..d7fed952 Binary files /dev/null and b/public/textures/rechiseled/cobblestone_tiles.png differ diff --git a/public/textures/rechiseled/cobblestone_tiles_connecting.png b/public/textures/rechiseled/cobblestone_tiles_connecting.png new file mode 100644 index 00000000..d7fed952 Binary files /dev/null and b/public/textures/rechiseled/cobblestone_tiles_connecting.png differ diff --git a/public/textures/rechiseled/cobblestone_worn_stripes.png b/public/textures/rechiseled/cobblestone_worn_stripes.png new file mode 100644 index 00000000..844b4a56 Binary files /dev/null and b/public/textures/rechiseled/cobblestone_worn_stripes.png differ diff --git a/public/textures/rechiseled/cobblestone_worn_stripes_connecting.png b/public/textures/rechiseled/cobblestone_worn_stripes_connecting.png new file mode 100644 index 00000000..844b4a56 Binary files /dev/null and b/public/textures/rechiseled/cobblestone_worn_stripes_connecting.png differ diff --git a/public/textures/rechiseled/copper_block_bars.png b/public/textures/rechiseled/copper_block_bars.png new file mode 100644 index 00000000..4eb220ec Binary files /dev/null and b/public/textures/rechiseled/copper_block_bars.png differ diff --git a/public/textures/rechiseled/copper_block_bars_connecting.png b/public/textures/rechiseled/copper_block_bars_connecting.png new file mode 100644 index 00000000..4eb220ec Binary files /dev/null and b/public/textures/rechiseled/copper_block_bars_connecting.png differ diff --git a/public/textures/rechiseled/copper_block_circles.png b/public/textures/rechiseled/copper_block_circles.png new file mode 100644 index 00000000..1a334d13 Binary files /dev/null and b/public/textures/rechiseled/copper_block_circles.png differ diff --git a/public/textures/rechiseled/copper_block_circles_connecting.png b/public/textures/rechiseled/copper_block_circles_connecting.png new file mode 100644 index 00000000..1a334d13 Binary files /dev/null and b/public/textures/rechiseled/copper_block_circles_connecting.png differ diff --git a/public/textures/rechiseled/copper_block_cone.png b/public/textures/rechiseled/copper_block_cone.png new file mode 100644 index 00000000..8bf9a4b6 Binary files /dev/null and b/public/textures/rechiseled/copper_block_cone.png differ diff --git a/public/textures/rechiseled/copper_block_gears.png b/public/textures/rechiseled/copper_block_gears.png new file mode 100644 index 00000000..a326f991 Binary files /dev/null and b/public/textures/rechiseled/copper_block_gears.png differ diff --git a/public/textures/rechiseled/copper_block_gears_connecting.png b/public/textures/rechiseled/copper_block_gears_connecting.png new file mode 100644 index 00000000..a326f991 Binary files /dev/null and b/public/textures/rechiseled/copper_block_gears_connecting.png differ diff --git a/public/textures/rechiseled/copper_block_lines.png b/public/textures/rechiseled/copper_block_lines.png new file mode 100644 index 00000000..d8cc3661 Binary files /dev/null and b/public/textures/rechiseled/copper_block_lines.png differ diff --git a/public/textures/rechiseled/copper_block_lines_connecting.png b/public/textures/rechiseled/copper_block_lines_connecting.png new file mode 100644 index 00000000..d8cc3661 Binary files /dev/null and b/public/textures/rechiseled/copper_block_lines_connecting.png differ diff --git a/public/textures/rechiseled/copper_block_pattern.png b/public/textures/rechiseled/copper_block_pattern.png new file mode 100644 index 00000000..bedc39f7 Binary files /dev/null and b/public/textures/rechiseled/copper_block_pattern.png differ diff --git a/public/textures/rechiseled/copper_block_pattern_connecting.png b/public/textures/rechiseled/copper_block_pattern_connecting.png new file mode 100644 index 00000000..bedc39f7 Binary files /dev/null and b/public/textures/rechiseled/copper_block_pattern_connecting.png differ diff --git a/public/textures/rechiseled/copper_block_pillar.png b/public/textures/rechiseled/copper_block_pillar.png new file mode 100644 index 00000000..87700b95 Binary files /dev/null and b/public/textures/rechiseled/copper_block_pillar.png differ diff --git a/public/textures/rechiseled/copper_block_pillar_connecting.png b/public/textures/rechiseled/copper_block_pillar_connecting.png new file mode 100644 index 00000000..87700b95 Binary files /dev/null and b/public/textures/rechiseled/copper_block_pillar_connecting.png differ diff --git a/public/textures/rechiseled/copper_block_polished.png b/public/textures/rechiseled/copper_block_polished.png new file mode 100644 index 00000000..4411ca19 Binary files /dev/null and b/public/textures/rechiseled/copper_block_polished.png differ diff --git a/public/textures/rechiseled/copper_block_polished_connecting.png b/public/textures/rechiseled/copper_block_polished_connecting.png new file mode 100644 index 00000000..4411ca19 Binary files /dev/null and b/public/textures/rechiseled/copper_block_polished_connecting.png differ diff --git a/public/textures/rechiseled/copper_block_shafts.png b/public/textures/rechiseled/copper_block_shafts.png new file mode 100644 index 00000000..6249f370 Binary files /dev/null and b/public/textures/rechiseled/copper_block_shafts.png differ diff --git a/public/textures/rechiseled/copper_block_shafts_connecting.png b/public/textures/rechiseled/copper_block_shafts_connecting.png new file mode 100644 index 00000000..6249f370 Binary files /dev/null and b/public/textures/rechiseled/copper_block_shafts_connecting.png differ diff --git a/public/textures/rechiseled/copper_block_small_bricks.png b/public/textures/rechiseled/copper_block_small_bricks.png new file mode 100644 index 00000000..4a492455 Binary files /dev/null and b/public/textures/rechiseled/copper_block_small_bricks.png differ diff --git a/public/textures/rechiseled/copper_block_small_bricks_connecting.png b/public/textures/rechiseled/copper_block_small_bricks_connecting.png new file mode 100644 index 00000000..4a492455 Binary files /dev/null and b/public/textures/rechiseled/copper_block_small_bricks_connecting.png differ diff --git a/public/textures/rechiseled/copper_block_smooth.png b/public/textures/rechiseled/copper_block_smooth.png new file mode 100644 index 00000000..76b9173d Binary files /dev/null and b/public/textures/rechiseled/copper_block_smooth.png differ diff --git a/public/textures/rechiseled/crimson_planks_beams.png b/public/textures/rechiseled/crimson_planks_beams.png new file mode 100644 index 00000000..71c84951 Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_beams.png differ diff --git a/public/textures/rechiseled/crimson_planks_beams_connecting.png b/public/textures/rechiseled/crimson_planks_beams_connecting.png new file mode 100644 index 00000000..71c84951 Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_beams_connecting.png differ diff --git a/public/textures/rechiseled/crimson_planks_brick_pattern.png b/public/textures/rechiseled/crimson_planks_brick_pattern.png new file mode 100644 index 00000000..13dfa4c2 Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_brick_pattern.png differ diff --git a/public/textures/rechiseled/crimson_planks_brick_pattern_connecting.png b/public/textures/rechiseled/crimson_planks_brick_pattern_connecting.png new file mode 100644 index 00000000..13dfa4c2 Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/crimson_planks_brick_paving.png b/public/textures/rechiseled/crimson_planks_brick_paving.png new file mode 100644 index 00000000..6055e109 Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_brick_paving.png differ diff --git a/public/textures/rechiseled/crimson_planks_brick_paving_connecting.png b/public/textures/rechiseled/crimson_planks_brick_paving_connecting.png new file mode 100644 index 00000000..6055e109 Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/crimson_planks_bricks.png b/public/textures/rechiseled/crimson_planks_bricks.png new file mode 100644 index 00000000..4caa88a3 Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_bricks.png differ diff --git a/public/textures/rechiseled/crimson_planks_bricks_connecting.png b/public/textures/rechiseled/crimson_planks_bricks_connecting.png new file mode 100644 index 00000000..4caa88a3 Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_bricks_connecting.png differ diff --git a/public/textures/rechiseled/crimson_planks_crate.png b/public/textures/rechiseled/crimson_planks_crate.png new file mode 100644 index 00000000..66a7dcb3 Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_crate.png differ diff --git a/public/textures/rechiseled/crimson_planks_crate_connecting.png b/public/textures/rechiseled/crimson_planks_crate_connecting.png new file mode 100644 index 00000000..66a7dcb3 Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_crate_connecting.png differ diff --git a/public/textures/rechiseled/crimson_planks_diagonal_stripes.png b/public/textures/rechiseled/crimson_planks_diagonal_stripes.png new file mode 100644 index 00000000..24844fb2 Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_diagonal_stripes.png differ diff --git a/public/textures/rechiseled/crimson_planks_diagonal_stripes_connecting.png b/public/textures/rechiseled/crimson_planks_diagonal_stripes_connecting.png new file mode 100644 index 00000000..24844fb2 Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_diagonal_stripes_connecting.png differ diff --git a/public/textures/rechiseled/crimson_planks_diagonal_tiles.png b/public/textures/rechiseled/crimson_planks_diagonal_tiles.png new file mode 100644 index 00000000..ee0527d3 Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_diagonal_tiles.png differ diff --git a/public/textures/rechiseled/crimson_planks_diagonal_tiles_connecting.png b/public/textures/rechiseled/crimson_planks_diagonal_tiles_connecting.png new file mode 100644 index 00000000..ee0527d3 Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_diagonal_tiles_connecting.png differ diff --git a/public/textures/rechiseled/crimson_planks_dotted.png b/public/textures/rechiseled/crimson_planks_dotted.png new file mode 100644 index 00000000..51e3319a Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_dotted.png differ diff --git a/public/textures/rechiseled/crimson_planks_dotted_connecting.png b/public/textures/rechiseled/crimson_planks_dotted_connecting.png new file mode 100644 index 00000000..51e3319a Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_dotted_connecting.png differ diff --git a/public/textures/rechiseled/crimson_planks_flooring.png b/public/textures/rechiseled/crimson_planks_flooring.png new file mode 100644 index 00000000..0130fa2a Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_flooring.png differ diff --git a/public/textures/rechiseled/crimson_planks_flooring_connecting.png b/public/textures/rechiseled/crimson_planks_flooring_connecting.png new file mode 100644 index 00000000..0130fa2a Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_flooring_connecting.png differ diff --git a/public/textures/rechiseled/crimson_planks_large_tiles.png b/public/textures/rechiseled/crimson_planks_large_tiles.png new file mode 100644 index 00000000..4273599f Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_large_tiles.png differ diff --git a/public/textures/rechiseled/crimson_planks_large_tiles_connecting.png b/public/textures/rechiseled/crimson_planks_large_tiles_connecting.png new file mode 100644 index 00000000..4273599f Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_large_tiles_connecting.png differ diff --git a/public/textures/rechiseled/crimson_planks_mosaic.png b/public/textures/rechiseled/crimson_planks_mosaic.png new file mode 100644 index 00000000..51a4653b Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_mosaic.png differ diff --git a/public/textures/rechiseled/crimson_planks_pattern.png b/public/textures/rechiseled/crimson_planks_pattern.png new file mode 100644 index 00000000..79e2c70d Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_pattern.png differ diff --git a/public/textures/rechiseled/crimson_planks_pattern_connecting.png b/public/textures/rechiseled/crimson_planks_pattern_connecting.png new file mode 100644 index 00000000..79e2c70d Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_pattern_connecting.png differ diff --git a/public/textures/rechiseled/crimson_planks_rotated_bricks.png b/public/textures/rechiseled/crimson_planks_rotated_bricks.png new file mode 100644 index 00000000..34e80401 Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_rotated_bricks.png differ diff --git a/public/textures/rechiseled/crimson_planks_rotated_bricks_connecting.png b/public/textures/rechiseled/crimson_planks_rotated_bricks_connecting.png new file mode 100644 index 00000000..34e80401 Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/crimson_planks_small_bricks.png b/public/textures/rechiseled/crimson_planks_small_bricks.png new file mode 100644 index 00000000..2973cbf8 Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_small_bricks.png differ diff --git a/public/textures/rechiseled/crimson_planks_small_bricks_connecting.png b/public/textures/rechiseled/crimson_planks_small_bricks_connecting.png new file mode 100644 index 00000000..2973cbf8 Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_small_bricks_connecting.png differ diff --git a/public/textures/rechiseled/crimson_planks_small_tiles.png b/public/textures/rechiseled/crimson_planks_small_tiles.png new file mode 100644 index 00000000..be8c91ca Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_small_tiles.png differ diff --git a/public/textures/rechiseled/crimson_planks_small_tiles_connecting.png b/public/textures/rechiseled/crimson_planks_small_tiles_connecting.png new file mode 100644 index 00000000..be8c91ca Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/crimson_planks_squares.png b/public/textures/rechiseled/crimson_planks_squares.png new file mode 100644 index 00000000..2e25bbfc Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_squares.png differ diff --git a/public/textures/rechiseled/crimson_planks_squares_connecting.png b/public/textures/rechiseled/crimson_planks_squares_connecting.png new file mode 100644 index 00000000..2e25bbfc Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_squares_connecting.png differ diff --git a/public/textures/rechiseled/crimson_planks_tiles.png b/public/textures/rechiseled/crimson_planks_tiles.png new file mode 100644 index 00000000..e2f17b82 Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_tiles.png differ diff --git a/public/textures/rechiseled/crimson_planks_tiles_connecting.png b/public/textures/rechiseled/crimson_planks_tiles_connecting.png new file mode 100644 index 00000000..e2f17b82 Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_tiles_connecting.png differ diff --git a/public/textures/rechiseled/crimson_planks_wavy.png b/public/textures/rechiseled/crimson_planks_wavy.png new file mode 100644 index 00000000..ea10424a Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_wavy.png differ diff --git a/public/textures/rechiseled/crimson_planks_wavy_connecting.png b/public/textures/rechiseled/crimson_planks_wavy_connecting.png new file mode 100644 index 00000000..ea10424a Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_wavy_connecting.png differ diff --git a/public/textures/rechiseled/crimson_planks_woven.png b/public/textures/rechiseled/crimson_planks_woven.png new file mode 100644 index 00000000..49b12c44 Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_woven.png differ diff --git a/public/textures/rechiseled/crimson_planks_woven_connecting.png b/public/textures/rechiseled/crimson_planks_woven_connecting.png new file mode 100644 index 00000000..49b12c44 Binary files /dev/null and b/public/textures/rechiseled/crimson_planks_woven_connecting.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_beams.png b/public/textures/rechiseled/dark_oak_planks_beams.png new file mode 100644 index 00000000..b99eaca2 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_beams.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_beams_connecting.png b/public/textures/rechiseled/dark_oak_planks_beams_connecting.png new file mode 100644 index 00000000..b99eaca2 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_beams_connecting.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_brick_pattern.png b/public/textures/rechiseled/dark_oak_planks_brick_pattern.png new file mode 100644 index 00000000..555aa67f Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_brick_pattern.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_brick_pattern_connecting.png b/public/textures/rechiseled/dark_oak_planks_brick_pattern_connecting.png new file mode 100644 index 00000000..555aa67f Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_brick_paving.png b/public/textures/rechiseled/dark_oak_planks_brick_paving.png new file mode 100644 index 00000000..497a91ba Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_brick_paving.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_brick_paving_connecting.png b/public/textures/rechiseled/dark_oak_planks_brick_paving_connecting.png new file mode 100644 index 00000000..497a91ba Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_bricks.png b/public/textures/rechiseled/dark_oak_planks_bricks.png new file mode 100644 index 00000000..460d4ea4 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_bricks.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_bricks_connecting.png b/public/textures/rechiseled/dark_oak_planks_bricks_connecting.png new file mode 100644 index 00000000..460d4ea4 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_bricks_connecting.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_crate.png b/public/textures/rechiseled/dark_oak_planks_crate.png new file mode 100644 index 00000000..f8a27f07 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_crate.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_crate_connecting.png b/public/textures/rechiseled/dark_oak_planks_crate_connecting.png new file mode 100644 index 00000000..f8a27f07 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_crate_connecting.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_diagonal_stripes.png b/public/textures/rechiseled/dark_oak_planks_diagonal_stripes.png new file mode 100644 index 00000000..59d09df5 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_diagonal_stripes.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_diagonal_stripes_connecting.png b/public/textures/rechiseled/dark_oak_planks_diagonal_stripes_connecting.png new file mode 100644 index 00000000..59d09df5 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_diagonal_stripes_connecting.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_diagonal_tiles.png b/public/textures/rechiseled/dark_oak_planks_diagonal_tiles.png new file mode 100644 index 00000000..4c0323e1 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_diagonal_tiles.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_diagonal_tiles_connecting.png b/public/textures/rechiseled/dark_oak_planks_diagonal_tiles_connecting.png new file mode 100644 index 00000000..4c0323e1 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_diagonal_tiles_connecting.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_dotted.png b/public/textures/rechiseled/dark_oak_planks_dotted.png new file mode 100644 index 00000000..7ed2cb34 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_dotted.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_dotted_connecting.png b/public/textures/rechiseled/dark_oak_planks_dotted_connecting.png new file mode 100644 index 00000000..7ed2cb34 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_dotted_connecting.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_flooring.png b/public/textures/rechiseled/dark_oak_planks_flooring.png new file mode 100644 index 00000000..42bcdda0 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_flooring.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_flooring_connecting.png b/public/textures/rechiseled/dark_oak_planks_flooring_connecting.png new file mode 100644 index 00000000..42bcdda0 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_flooring_connecting.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_large_tiles.png b/public/textures/rechiseled/dark_oak_planks_large_tiles.png new file mode 100644 index 00000000..196accc4 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_large_tiles.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_large_tiles_connecting.png b/public/textures/rechiseled/dark_oak_planks_large_tiles_connecting.png new file mode 100644 index 00000000..196accc4 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_large_tiles_connecting.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_mosaic.png b/public/textures/rechiseled/dark_oak_planks_mosaic.png new file mode 100644 index 00000000..12630c6c Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_mosaic.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_pattern.png b/public/textures/rechiseled/dark_oak_planks_pattern.png new file mode 100644 index 00000000..f06b4e47 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_pattern.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_pattern_connecting.png b/public/textures/rechiseled/dark_oak_planks_pattern_connecting.png new file mode 100644 index 00000000..f06b4e47 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_pattern_connecting.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_rotated_bricks.png b/public/textures/rechiseled/dark_oak_planks_rotated_bricks.png new file mode 100644 index 00000000..28c7f857 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_rotated_bricks.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_rotated_bricks_connecting.png b/public/textures/rechiseled/dark_oak_planks_rotated_bricks_connecting.png new file mode 100644 index 00000000..28c7f857 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_small_bricks.png b/public/textures/rechiseled/dark_oak_planks_small_bricks.png new file mode 100644 index 00000000..f224338b Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_small_bricks.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_small_bricks_connecting.png b/public/textures/rechiseled/dark_oak_planks_small_bricks_connecting.png new file mode 100644 index 00000000..f224338b Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_small_bricks_connecting.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_small_tiles.png b/public/textures/rechiseled/dark_oak_planks_small_tiles.png new file mode 100644 index 00000000..b07b0be2 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_small_tiles.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_small_tiles_connecting.png b/public/textures/rechiseled/dark_oak_planks_small_tiles_connecting.png new file mode 100644 index 00000000..b07b0be2 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_squares.png b/public/textures/rechiseled/dark_oak_planks_squares.png new file mode 100644 index 00000000..f810be96 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_squares.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_squares_connecting.png b/public/textures/rechiseled/dark_oak_planks_squares_connecting.png new file mode 100644 index 00000000..f810be96 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_squares_connecting.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_tiles.png b/public/textures/rechiseled/dark_oak_planks_tiles.png new file mode 100644 index 00000000..d50132a4 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_tiles.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_tiles_connecting.png b/public/textures/rechiseled/dark_oak_planks_tiles_connecting.png new file mode 100644 index 00000000..d50132a4 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_tiles_connecting.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_wavy.png b/public/textures/rechiseled/dark_oak_planks_wavy.png new file mode 100644 index 00000000..9d252974 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_wavy.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_wavy_connecting.png b/public/textures/rechiseled/dark_oak_planks_wavy_connecting.png new file mode 100644 index 00000000..9d252974 Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_wavy_connecting.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_woven.png b/public/textures/rechiseled/dark_oak_planks_woven.png new file mode 100644 index 00000000..3876f00a Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_woven.png differ diff --git a/public/textures/rechiseled/dark_oak_planks_woven_connecting.png b/public/textures/rechiseled/dark_oak_planks_woven_connecting.png new file mode 100644 index 00000000..3876f00a Binary files /dev/null and b/public/textures/rechiseled/dark_oak_planks_woven_connecting.png differ diff --git a/public/textures/rechiseled/dark_prismarine_beams.png b/public/textures/rechiseled/dark_prismarine_beams.png new file mode 100644 index 00000000..ca91b34d Binary files /dev/null and b/public/textures/rechiseled/dark_prismarine_beams.png differ diff --git a/public/textures/rechiseled/dark_prismarine_beams_connecting.png b/public/textures/rechiseled/dark_prismarine_beams_connecting.png new file mode 100644 index 00000000..ca91b34d Binary files /dev/null and b/public/textures/rechiseled/dark_prismarine_beams_connecting.png differ diff --git a/public/textures/rechiseled/dark_prismarine_brick_paving.png b/public/textures/rechiseled/dark_prismarine_brick_paving.png new file mode 100644 index 00000000..52723399 Binary files /dev/null and b/public/textures/rechiseled/dark_prismarine_brick_paving.png differ diff --git a/public/textures/rechiseled/dark_prismarine_brick_paving_connecting.png b/public/textures/rechiseled/dark_prismarine_brick_paving_connecting.png new file mode 100644 index 00000000..52723399 Binary files /dev/null and b/public/textures/rechiseled/dark_prismarine_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/dark_prismarine_bricks.png b/public/textures/rechiseled/dark_prismarine_bricks.png new file mode 100644 index 00000000..3bbf77e8 Binary files /dev/null and b/public/textures/rechiseled/dark_prismarine_bricks.png differ diff --git a/public/textures/rechiseled/dark_prismarine_bricks_connecting.png b/public/textures/rechiseled/dark_prismarine_bricks_connecting.png new file mode 100644 index 00000000..3bbf77e8 Binary files /dev/null and b/public/textures/rechiseled/dark_prismarine_bricks_connecting.png differ diff --git a/public/textures/rechiseled/dark_prismarine_dotted.png b/public/textures/rechiseled/dark_prismarine_dotted.png new file mode 100644 index 00000000..6a23ba8e Binary files /dev/null and b/public/textures/rechiseled/dark_prismarine_dotted.png differ diff --git a/public/textures/rechiseled/dark_prismarine_dotted_connecting.png b/public/textures/rechiseled/dark_prismarine_dotted_connecting.png new file mode 100644 index 00000000..6a23ba8e Binary files /dev/null and b/public/textures/rechiseled/dark_prismarine_dotted_connecting.png differ diff --git a/public/textures/rechiseled/dark_prismarine_fabric.png b/public/textures/rechiseled/dark_prismarine_fabric.png new file mode 100644 index 00000000..550548a1 Binary files /dev/null and b/public/textures/rechiseled/dark_prismarine_fabric.png differ diff --git a/public/textures/rechiseled/dark_prismarine_fabric_connecting.png b/public/textures/rechiseled/dark_prismarine_fabric_connecting.png new file mode 100644 index 00000000..550548a1 Binary files /dev/null and b/public/textures/rechiseled/dark_prismarine_fabric_connecting.png differ diff --git a/public/textures/rechiseled/dark_prismarine_large_tiles.png b/public/textures/rechiseled/dark_prismarine_large_tiles.png new file mode 100644 index 00000000..4f848361 Binary files /dev/null and b/public/textures/rechiseled/dark_prismarine_large_tiles.png differ diff --git a/public/textures/rechiseled/dark_prismarine_large_tiles_connecting.png b/public/textures/rechiseled/dark_prismarine_large_tiles_connecting.png new file mode 100644 index 00000000..4f848361 Binary files /dev/null and b/public/textures/rechiseled/dark_prismarine_large_tiles_connecting.png differ diff --git a/public/textures/rechiseled/dark_prismarine_rotated_bricks.png b/public/textures/rechiseled/dark_prismarine_rotated_bricks.png new file mode 100644 index 00000000..9e001651 Binary files /dev/null and b/public/textures/rechiseled/dark_prismarine_rotated_bricks.png differ diff --git a/public/textures/rechiseled/dark_prismarine_rotated_bricks_connecting.png b/public/textures/rechiseled/dark_prismarine_rotated_bricks_connecting.png new file mode 100644 index 00000000..9e001651 Binary files /dev/null and b/public/textures/rechiseled/dark_prismarine_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/dark_prismarine_rows.png b/public/textures/rechiseled/dark_prismarine_rows.png new file mode 100644 index 00000000..dd837746 Binary files /dev/null and b/public/textures/rechiseled/dark_prismarine_rows.png differ diff --git a/public/textures/rechiseled/dark_prismarine_rows_connecting.png b/public/textures/rechiseled/dark_prismarine_rows_connecting.png new file mode 100644 index 00000000..dd837746 Binary files /dev/null and b/public/textures/rechiseled/dark_prismarine_rows_connecting.png differ diff --git a/public/textures/rechiseled/dark_prismarine_squares.png b/public/textures/rechiseled/dark_prismarine_squares.png new file mode 100644 index 00000000..8890b993 Binary files /dev/null and b/public/textures/rechiseled/dark_prismarine_squares.png differ diff --git a/public/textures/rechiseled/dark_prismarine_squares_connecting.png b/public/textures/rechiseled/dark_prismarine_squares_connecting.png new file mode 100644 index 00000000..8890b993 Binary files /dev/null and b/public/textures/rechiseled/dark_prismarine_squares_connecting.png differ diff --git a/public/textures/rechiseled/dark_prismarine_tiles.png b/public/textures/rechiseled/dark_prismarine_tiles.png new file mode 100644 index 00000000..3ab2a4d0 Binary files /dev/null and b/public/textures/rechiseled/dark_prismarine_tiles.png differ diff --git a/public/textures/rechiseled/dark_prismarine_tiles_connecting.png b/public/textures/rechiseled/dark_prismarine_tiles_connecting.png new file mode 100644 index 00000000..3ab2a4d0 Binary files /dev/null and b/public/textures/rechiseled/dark_prismarine_tiles_connecting.png differ diff --git a/public/textures/rechiseled/dark_prismarine_wavy.png b/public/textures/rechiseled/dark_prismarine_wavy.png new file mode 100644 index 00000000..726c0095 Binary files /dev/null and b/public/textures/rechiseled/dark_prismarine_wavy.png differ diff --git a/public/textures/rechiseled/dark_prismarine_wavy_connecting.png b/public/textures/rechiseled/dark_prismarine_wavy_connecting.png new file mode 100644 index 00000000..726c0095 Binary files /dev/null and b/public/textures/rechiseled/dark_prismarine_wavy_connecting.png differ diff --git a/public/textures/rechiseled/dark_prismarine_woven.png b/public/textures/rechiseled/dark_prismarine_woven.png new file mode 100644 index 00000000..7911538a Binary files /dev/null and b/public/textures/rechiseled/dark_prismarine_woven.png differ diff --git a/public/textures/rechiseled/dark_prismarine_woven_connecting.png b/public/textures/rechiseled/dark_prismarine_woven_connecting.png new file mode 100644 index 00000000..7911538a Binary files /dev/null and b/public/textures/rechiseled/dark_prismarine_woven_connecting.png differ diff --git a/public/textures/rechiseled/diamond_block_chiseled.png b/public/textures/rechiseled/diamond_block_chiseled.png new file mode 100644 index 00000000..60c7caba Binary files /dev/null and b/public/textures/rechiseled/diamond_block_chiseled.png differ diff --git a/public/textures/rechiseled/diamond_block_chiseled_connecting.png b/public/textures/rechiseled/diamond_block_chiseled_connecting.png new file mode 100644 index 00000000..60c7caba Binary files /dev/null and b/public/textures/rechiseled/diamond_block_chiseled_connecting.png differ diff --git a/public/textures/rechiseled/diamond_block_chiseled_cubes.png b/public/textures/rechiseled/diamond_block_chiseled_cubes.png new file mode 100644 index 00000000..6253c782 Binary files /dev/null and b/public/textures/rechiseled/diamond_block_chiseled_cubes.png differ diff --git a/public/textures/rechiseled/diamond_block_chiseled_cubes_connecting.png b/public/textures/rechiseled/diamond_block_chiseled_cubes_connecting.png new file mode 100644 index 00000000..6253c782 Binary files /dev/null and b/public/textures/rechiseled/diamond_block_chiseled_cubes_connecting.png differ diff --git a/public/textures/rechiseled/diamond_block_connecting_connecting.png b/public/textures/rechiseled/diamond_block_connecting_connecting.png new file mode 100644 index 00000000..9d3ec6f5 Binary files /dev/null and b/public/textures/rechiseled/diamond_block_connecting_connecting.png differ diff --git a/public/textures/rechiseled/diamond_block_diagonal_tiles.png b/public/textures/rechiseled/diamond_block_diagonal_tiles.png new file mode 100644 index 00000000..690b5ee3 Binary files /dev/null and b/public/textures/rechiseled/diamond_block_diagonal_tiles.png differ diff --git a/public/textures/rechiseled/diamond_block_grid.png b/public/textures/rechiseled/diamond_block_grid.png new file mode 100644 index 00000000..0b3d4b80 Binary files /dev/null and b/public/textures/rechiseled/diamond_block_grid.png differ diff --git a/public/textures/rechiseled/diamond_block_grid_connecting.png b/public/textures/rechiseled/diamond_block_grid_connecting.png new file mode 100644 index 00000000..0b3d4b80 Binary files /dev/null and b/public/textures/rechiseled/diamond_block_grid_connecting.png differ diff --git a/public/textures/rechiseled/diamond_block_jewel_block.png b/public/textures/rechiseled/diamond_block_jewel_block.png new file mode 100644 index 00000000..caa1af8e Binary files /dev/null and b/public/textures/rechiseled/diamond_block_jewel_block.png differ diff --git a/public/textures/rechiseled/diamond_block_jewel_block_connecting.png b/public/textures/rechiseled/diamond_block_jewel_block_connecting.png new file mode 100644 index 00000000..caa1af8e Binary files /dev/null and b/public/textures/rechiseled/diamond_block_jewel_block_connecting.png differ diff --git a/public/textures/rechiseled/diamond_block_polished.png b/public/textures/rechiseled/diamond_block_polished.png new file mode 100644 index 00000000..54542a01 Binary files /dev/null and b/public/textures/rechiseled/diamond_block_polished.png differ diff --git a/public/textures/rechiseled/diamond_block_polished_connecting.png b/public/textures/rechiseled/diamond_block_polished_connecting.png new file mode 100644 index 00000000..54542a01 Binary files /dev/null and b/public/textures/rechiseled/diamond_block_polished_connecting.png differ diff --git a/public/textures/rechiseled/diamond_block_rhombuses.png b/public/textures/rechiseled/diamond_block_rhombuses.png new file mode 100644 index 00000000..c5ba2457 Binary files /dev/null and b/public/textures/rechiseled/diamond_block_rhombuses.png differ diff --git a/public/textures/rechiseled/diamond_block_rhombuses_connecting.png b/public/textures/rechiseled/diamond_block_rhombuses_connecting.png new file mode 100644 index 00000000..c5ba2457 Binary files /dev/null and b/public/textures/rechiseled/diamond_block_rhombuses_connecting.png differ diff --git a/public/textures/rechiseled/diamond_block_shiny.png b/public/textures/rechiseled/diamond_block_shiny.png new file mode 100644 index 00000000..d1881acf Binary files /dev/null and b/public/textures/rechiseled/diamond_block_shiny.png differ diff --git a/public/textures/rechiseled/diamond_block_shiny_bordered.png b/public/textures/rechiseled/diamond_block_shiny_bordered.png new file mode 100644 index 00000000..193c69bf Binary files /dev/null and b/public/textures/rechiseled/diamond_block_shiny_bordered.png differ diff --git a/public/textures/rechiseled/diamond_block_shiny_bordered_connecting.png b/public/textures/rechiseled/diamond_block_shiny_bordered_connecting.png new file mode 100644 index 00000000..193c69bf Binary files /dev/null and b/public/textures/rechiseled/diamond_block_shiny_bordered_connecting.png differ diff --git a/public/textures/rechiseled/diamond_block_small_tiles.png b/public/textures/rechiseled/diamond_block_small_tiles.png new file mode 100644 index 00000000..72fb79ce Binary files /dev/null and b/public/textures/rechiseled/diamond_block_small_tiles.png differ diff --git a/public/textures/rechiseled/diamond_block_small_tiles_connecting.png b/public/textures/rechiseled/diamond_block_small_tiles_connecting.png new file mode 100644 index 00000000..72fb79ce Binary files /dev/null and b/public/textures/rechiseled/diamond_block_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/diamond_block_smooth.png b/public/textures/rechiseled/diamond_block_smooth.png new file mode 100644 index 00000000..b0026893 Binary files /dev/null and b/public/textures/rechiseled/diamond_block_smooth.png differ diff --git a/public/textures/rechiseled/diorite_brick_pattern.png b/public/textures/rechiseled/diorite_brick_pattern.png new file mode 100644 index 00000000..8f00c4f5 Binary files /dev/null and b/public/textures/rechiseled/diorite_brick_pattern.png differ diff --git a/public/textures/rechiseled/diorite_brick_pattern_connecting.png b/public/textures/rechiseled/diorite_brick_pattern_connecting.png new file mode 100644 index 00000000..8f00c4f5 Binary files /dev/null and b/public/textures/rechiseled/diorite_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/diorite_brick_paving.png b/public/textures/rechiseled/diorite_brick_paving.png new file mode 100644 index 00000000..ac528b14 Binary files /dev/null and b/public/textures/rechiseled/diorite_brick_paving.png differ diff --git a/public/textures/rechiseled/diorite_brick_paving_connecting.png b/public/textures/rechiseled/diorite_brick_paving_connecting.png new file mode 100644 index 00000000..ac528b14 Binary files /dev/null and b/public/textures/rechiseled/diorite_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/diorite_bricks.png b/public/textures/rechiseled/diorite_bricks.png new file mode 100644 index 00000000..900631f5 Binary files /dev/null and b/public/textures/rechiseled/diorite_bricks.png differ diff --git a/public/textures/rechiseled/diorite_bricks_connecting.png b/public/textures/rechiseled/diorite_bricks_connecting.png new file mode 100644 index 00000000..900631f5 Binary files /dev/null and b/public/textures/rechiseled/diorite_bricks_connecting.png differ diff --git a/public/textures/rechiseled/diorite_diagonal_bricks.png b/public/textures/rechiseled/diorite_diagonal_bricks.png new file mode 100644 index 00000000..01c589eb Binary files /dev/null and b/public/textures/rechiseled/diorite_diagonal_bricks.png differ diff --git a/public/textures/rechiseled/diorite_diagonal_bricks_connecting.png b/public/textures/rechiseled/diorite_diagonal_bricks_connecting.png new file mode 100644 index 00000000..01c589eb Binary files /dev/null and b/public/textures/rechiseled/diorite_diagonal_bricks_connecting.png differ diff --git a/public/textures/rechiseled/diorite_dotted.png b/public/textures/rechiseled/diorite_dotted.png new file mode 100644 index 00000000..57203556 Binary files /dev/null and b/public/textures/rechiseled/diorite_dotted.png differ diff --git a/public/textures/rechiseled/diorite_dotted_connecting.png b/public/textures/rechiseled/diorite_dotted_connecting.png new file mode 100644 index 00000000..57203556 Binary files /dev/null and b/public/textures/rechiseled/diorite_dotted_connecting.png differ diff --git a/public/textures/rechiseled/diorite_paving.png b/public/textures/rechiseled/diorite_paving.png new file mode 100644 index 00000000..91053ac6 Binary files /dev/null and b/public/textures/rechiseled/diorite_paving.png differ diff --git a/public/textures/rechiseled/diorite_paving_connecting.png b/public/textures/rechiseled/diorite_paving_connecting.png new file mode 100644 index 00000000..91053ac6 Binary files /dev/null and b/public/textures/rechiseled/diorite_paving_connecting.png differ diff --git a/public/textures/rechiseled/diorite_polished_connecting.png b/public/textures/rechiseled/diorite_polished_connecting.png new file mode 100644 index 00000000..8b6d741a Binary files /dev/null and b/public/textures/rechiseled/diorite_polished_connecting.png differ diff --git a/public/textures/rechiseled/diorite_rotated_bricks.png b/public/textures/rechiseled/diorite_rotated_bricks.png new file mode 100644 index 00000000..f0181f73 Binary files /dev/null and b/public/textures/rechiseled/diorite_rotated_bricks.png differ diff --git a/public/textures/rechiseled/diorite_rotated_bricks_connecting.png b/public/textures/rechiseled/diorite_rotated_bricks_connecting.png new file mode 100644 index 00000000..f0181f73 Binary files /dev/null and b/public/textures/rechiseled/diorite_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/diorite_squares.png b/public/textures/rechiseled/diorite_squares.png new file mode 100644 index 00000000..f44d6cae Binary files /dev/null and b/public/textures/rechiseled/diorite_squares.png differ diff --git a/public/textures/rechiseled/diorite_squares_connecting.png b/public/textures/rechiseled/diorite_squares_connecting.png new file mode 100644 index 00000000..f44d6cae Binary files /dev/null and b/public/textures/rechiseled/diorite_squares_connecting.png differ diff --git a/public/textures/rechiseled/diorite_tiles.png b/public/textures/rechiseled/diorite_tiles.png new file mode 100644 index 00000000..65b9f432 Binary files /dev/null and b/public/textures/rechiseled/diorite_tiles.png differ diff --git a/public/textures/rechiseled/diorite_tiles_connecting.png b/public/textures/rechiseled/diorite_tiles_connecting.png new file mode 100644 index 00000000..65b9f432 Binary files /dev/null and b/public/textures/rechiseled/diorite_tiles_connecting.png differ diff --git a/public/textures/rechiseled/diorite_wavy.png b/public/textures/rechiseled/diorite_wavy.png new file mode 100644 index 00000000..ef271e64 Binary files /dev/null and b/public/textures/rechiseled/diorite_wavy.png differ diff --git a/public/textures/rechiseled/diorite_wavy_connecting.png b/public/textures/rechiseled/diorite_wavy_connecting.png new file mode 100644 index 00000000..ef271e64 Binary files /dev/null and b/public/textures/rechiseled/diorite_wavy_connecting.png differ diff --git a/public/textures/rechiseled/dirt_blobs.png b/public/textures/rechiseled/dirt_blobs.png new file mode 100644 index 00000000..d8443ab2 Binary files /dev/null and b/public/textures/rechiseled/dirt_blobs.png differ diff --git a/public/textures/rechiseled/dirt_blobs_connecting.png b/public/textures/rechiseled/dirt_blobs_connecting.png new file mode 100644 index 00000000..d8443ab2 Binary files /dev/null and b/public/textures/rechiseled/dirt_blobs_connecting.png differ diff --git a/public/textures/rechiseled/dirt_bricks.png b/public/textures/rechiseled/dirt_bricks.png new file mode 100644 index 00000000..f7af5be3 Binary files /dev/null and b/public/textures/rechiseled/dirt_bricks.png differ diff --git a/public/textures/rechiseled/dirt_bricks_connecting.png b/public/textures/rechiseled/dirt_bricks_connecting.png new file mode 100644 index 00000000..f7af5be3 Binary files /dev/null and b/public/textures/rechiseled/dirt_bricks_connecting.png differ diff --git a/public/textures/rechiseled/dirt_chunks.png b/public/textures/rechiseled/dirt_chunks.png new file mode 100644 index 00000000..773c0519 Binary files /dev/null and b/public/textures/rechiseled/dirt_chunks.png differ diff --git a/public/textures/rechiseled/dirt_chunks_connecting.png b/public/textures/rechiseled/dirt_chunks_connecting.png new file mode 100644 index 00000000..773c0519 Binary files /dev/null and b/public/textures/rechiseled/dirt_chunks_connecting.png differ diff --git a/public/textures/rechiseled/dirt_clumps.png b/public/textures/rechiseled/dirt_clumps.png new file mode 100644 index 00000000..5a3a4af7 Binary files /dev/null and b/public/textures/rechiseled/dirt_clumps.png differ diff --git a/public/textures/rechiseled/dirt_clumps_connecting.png b/public/textures/rechiseled/dirt_clumps_connecting.png new file mode 100644 index 00000000..5a3a4af7 Binary files /dev/null and b/public/textures/rechiseled/dirt_clumps_connecting.png differ diff --git a/public/textures/rechiseled/dirt_cobbled.png b/public/textures/rechiseled/dirt_cobbled.png new file mode 100644 index 00000000..b2917efd Binary files /dev/null and b/public/textures/rechiseled/dirt_cobbled.png differ diff --git a/public/textures/rechiseled/dirt_grooves.png b/public/textures/rechiseled/dirt_grooves.png new file mode 100644 index 00000000..70ce0b8b Binary files /dev/null and b/public/textures/rechiseled/dirt_grooves.png differ diff --git a/public/textures/rechiseled/dirt_large_tiles.png b/public/textures/rechiseled/dirt_large_tiles.png new file mode 100644 index 00000000..fcfd94a5 Binary files /dev/null and b/public/textures/rechiseled/dirt_large_tiles.png differ diff --git a/public/textures/rechiseled/dirt_large_tiles_connecting.png b/public/textures/rechiseled/dirt_large_tiles_connecting.png new file mode 100644 index 00000000..fcfd94a5 Binary files /dev/null and b/public/textures/rechiseled/dirt_large_tiles_connecting.png differ diff --git a/public/textures/rechiseled/dirt_muddy.png b/public/textures/rechiseled/dirt_muddy.png new file mode 100644 index 00000000..ee88c499 Binary files /dev/null and b/public/textures/rechiseled/dirt_muddy.png differ diff --git a/public/textures/rechiseled/dirt_small_bricks.png b/public/textures/rechiseled/dirt_small_bricks.png new file mode 100644 index 00000000..65911971 Binary files /dev/null and b/public/textures/rechiseled/dirt_small_bricks.png differ diff --git a/public/textures/rechiseled/dirt_small_bricks_connecting.png b/public/textures/rechiseled/dirt_small_bricks_connecting.png new file mode 100644 index 00000000..65911971 Binary files /dev/null and b/public/textures/rechiseled/dirt_small_bricks_connecting.png differ diff --git a/public/textures/rechiseled/dirt_small_tiles.png b/public/textures/rechiseled/dirt_small_tiles.png new file mode 100644 index 00000000..adc63761 Binary files /dev/null and b/public/textures/rechiseled/dirt_small_tiles.png differ diff --git a/public/textures/rechiseled/dirt_small_tiles_connecting.png b/public/textures/rechiseled/dirt_small_tiles_connecting.png new file mode 100644 index 00000000..adc63761 Binary files /dev/null and b/public/textures/rechiseled/dirt_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/dirt_smooth_clumps.png b/public/textures/rechiseled/dirt_smooth_clumps.png new file mode 100644 index 00000000..8aa62946 Binary files /dev/null and b/public/textures/rechiseled/dirt_smooth_clumps.png differ diff --git a/public/textures/rechiseled/dirt_smooth_clumps_connecting.png b/public/textures/rechiseled/dirt_smooth_clumps_connecting.png new file mode 100644 index 00000000..8aa62946 Binary files /dev/null and b/public/textures/rechiseled/dirt_smooth_clumps_connecting.png differ diff --git a/public/textures/rechiseled/dirt_soil.png b/public/textures/rechiseled/dirt_soil.png new file mode 100644 index 00000000..dab23602 Binary files /dev/null and b/public/textures/rechiseled/dirt_soil.png differ diff --git a/public/textures/rechiseled/dirt_soil_connecting.png b/public/textures/rechiseled/dirt_soil_connecting.png new file mode 100644 index 00000000..dab23602 Binary files /dev/null and b/public/textures/rechiseled/dirt_soil_connecting.png differ diff --git a/public/textures/rechiseled/dirt_squares.png b/public/textures/rechiseled/dirt_squares.png new file mode 100644 index 00000000..4af26972 Binary files /dev/null and b/public/textures/rechiseled/dirt_squares.png differ diff --git a/public/textures/rechiseled/dirt_squares_connecting.png b/public/textures/rechiseled/dirt_squares_connecting.png new file mode 100644 index 00000000..4af26972 Binary files /dev/null and b/public/textures/rechiseled/dirt_squares_connecting.png differ diff --git a/public/textures/rechiseled/dirt_tiles.png b/public/textures/rechiseled/dirt_tiles.png new file mode 100644 index 00000000..c522a7b3 Binary files /dev/null and b/public/textures/rechiseled/dirt_tiles.png differ diff --git a/public/textures/rechiseled/dirt_tiles_connecting.png b/public/textures/rechiseled/dirt_tiles_connecting.png new file mode 100644 index 00000000..c522a7b3 Binary files /dev/null and b/public/textures/rechiseled/dirt_tiles_connecting.png differ diff --git a/public/textures/rechiseled/dirt_tilled.png b/public/textures/rechiseled/dirt_tilled.png new file mode 100644 index 00000000..14457824 Binary files /dev/null and b/public/textures/rechiseled/dirt_tilled.png differ diff --git a/public/textures/rechiseled/dirt_tilled_connecting.png b/public/textures/rechiseled/dirt_tilled_connecting.png new file mode 100644 index 00000000..14457824 Binary files /dev/null and b/public/textures/rechiseled/dirt_tilled_connecting.png differ diff --git a/public/textures/rechiseled/emerald_block_bordered_crosses.png b/public/textures/rechiseled/emerald_block_bordered_crosses.png new file mode 100644 index 00000000..142848f4 Binary files /dev/null and b/public/textures/rechiseled/emerald_block_bordered_crosses.png differ diff --git a/public/textures/rechiseled/emerald_block_bordered_crosses_connecting.png b/public/textures/rechiseled/emerald_block_bordered_crosses_connecting.png new file mode 100644 index 00000000..142848f4 Binary files /dev/null and b/public/textures/rechiseled/emerald_block_bordered_crosses_connecting.png differ diff --git a/public/textures/rechiseled/emerald_block_bordered_plating.png b/public/textures/rechiseled/emerald_block_bordered_plating.png new file mode 100644 index 00000000..bdc8ed9b Binary files /dev/null and b/public/textures/rechiseled/emerald_block_bordered_plating.png differ diff --git a/public/textures/rechiseled/emerald_block_bordered_plating_connecting.png b/public/textures/rechiseled/emerald_block_bordered_plating_connecting.png new file mode 100644 index 00000000..bdc8ed9b Binary files /dev/null and b/public/textures/rechiseled/emerald_block_bordered_plating_connecting.png differ diff --git a/public/textures/rechiseled/emerald_block_chiseled.png b/public/textures/rechiseled/emerald_block_chiseled.png new file mode 100644 index 00000000..96084c8d Binary files /dev/null and b/public/textures/rechiseled/emerald_block_chiseled.png differ diff --git a/public/textures/rechiseled/emerald_block_chiseled_connecting.png b/public/textures/rechiseled/emerald_block_chiseled_connecting.png new file mode 100644 index 00000000..96084c8d Binary files /dev/null and b/public/textures/rechiseled/emerald_block_chiseled_connecting.png differ diff --git a/public/textures/rechiseled/emerald_block_clovers.png b/public/textures/rechiseled/emerald_block_clovers.png new file mode 100644 index 00000000..53c1fdbf Binary files /dev/null and b/public/textures/rechiseled/emerald_block_clovers.png differ diff --git a/public/textures/rechiseled/emerald_block_clovers_connecting.png b/public/textures/rechiseled/emerald_block_clovers_connecting.png new file mode 100644 index 00000000..53c1fdbf Binary files /dev/null and b/public/textures/rechiseled/emerald_block_clovers_connecting.png differ diff --git a/public/textures/rechiseled/emerald_block_crosses.png b/public/textures/rechiseled/emerald_block_crosses.png new file mode 100644 index 00000000..15a15372 Binary files /dev/null and b/public/textures/rechiseled/emerald_block_crosses.png differ diff --git a/public/textures/rechiseled/emerald_block_crystal.png b/public/textures/rechiseled/emerald_block_crystal.png new file mode 100644 index 00000000..e98fc087 Binary files /dev/null and b/public/textures/rechiseled/emerald_block_crystal.png differ diff --git a/public/textures/rechiseled/emerald_block_crystal_connecting.png b/public/textures/rechiseled/emerald_block_crystal_connecting.png new file mode 100644 index 00000000..e98fc087 Binary files /dev/null and b/public/textures/rechiseled/emerald_block_crystal_connecting.png differ diff --git a/public/textures/rechiseled/emerald_block_patterned.png b/public/textures/rechiseled/emerald_block_patterned.png new file mode 100644 index 00000000..4fa3c43b Binary files /dev/null and b/public/textures/rechiseled/emerald_block_patterned.png differ diff --git a/public/textures/rechiseled/emerald_block_patterned_connecting.png b/public/textures/rechiseled/emerald_block_patterned_connecting.png new file mode 100644 index 00000000..4fa3c43b Binary files /dev/null and b/public/textures/rechiseled/emerald_block_patterned_connecting.png differ diff --git a/public/textures/rechiseled/emerald_block_patterned_squares.png b/public/textures/rechiseled/emerald_block_patterned_squares.png new file mode 100644 index 00000000..cc3cfb25 Binary files /dev/null and b/public/textures/rechiseled/emerald_block_patterned_squares.png differ diff --git a/public/textures/rechiseled/emerald_block_patterned_squares_connecting.png b/public/textures/rechiseled/emerald_block_patterned_squares_connecting.png new file mode 100644 index 00000000..cc3cfb25 Binary files /dev/null and b/public/textures/rechiseled/emerald_block_patterned_squares_connecting.png differ diff --git a/public/textures/rechiseled/emerald_block_pillar.png b/public/textures/rechiseled/emerald_block_pillar.png new file mode 100644 index 00000000..5b6c0cb1 Binary files /dev/null and b/public/textures/rechiseled/emerald_block_pillar.png differ diff --git a/public/textures/rechiseled/emerald_block_pillar_connecting.png b/public/textures/rechiseled/emerald_block_pillar_connecting.png new file mode 100644 index 00000000..5b6c0cb1 Binary files /dev/null and b/public/textures/rechiseled/emerald_block_pillar_connecting.png differ diff --git a/public/textures/rechiseled/emerald_block_plating.png b/public/textures/rechiseled/emerald_block_plating.png new file mode 100644 index 00000000..7da7c462 Binary files /dev/null and b/public/textures/rechiseled/emerald_block_plating.png differ diff --git a/public/textures/rechiseled/emerald_block_polished.png b/public/textures/rechiseled/emerald_block_polished.png new file mode 100644 index 00000000..232d42ad Binary files /dev/null and b/public/textures/rechiseled/emerald_block_polished.png differ diff --git a/public/textures/rechiseled/emerald_block_polished_connecting.png b/public/textures/rechiseled/emerald_block_polished_connecting.png new file mode 100644 index 00000000..232d42ad Binary files /dev/null and b/public/textures/rechiseled/emerald_block_polished_connecting.png differ diff --git a/public/textures/rechiseled/emerald_block_smooth.png b/public/textures/rechiseled/emerald_block_smooth.png new file mode 100644 index 00000000..071d8946 Binary files /dev/null and b/public/textures/rechiseled/emerald_block_smooth.png differ diff --git a/public/textures/rechiseled/emerald_block_striped.png b/public/textures/rechiseled/emerald_block_striped.png new file mode 100644 index 00000000..5d50aabf Binary files /dev/null and b/public/textures/rechiseled/emerald_block_striped.png differ diff --git a/public/textures/rechiseled/emerald_block_striped_connecting.png b/public/textures/rechiseled/emerald_block_striped_connecting.png new file mode 100644 index 00000000..5d50aabf Binary files /dev/null and b/public/textures/rechiseled/emerald_block_striped_connecting.png differ diff --git a/public/textures/rechiseled/emerald_block_waxed.png b/public/textures/rechiseled/emerald_block_waxed.png new file mode 100644 index 00000000..054d0bff Binary files /dev/null and b/public/textures/rechiseled/emerald_block_waxed.png differ diff --git a/public/textures/rechiseled/emerald_block_waxed_connecting.png b/public/textures/rechiseled/emerald_block_waxed_connecting.png new file mode 100644 index 00000000..054d0bff Binary files /dev/null and b/public/textures/rechiseled/emerald_block_waxed_connecting.png differ diff --git a/public/textures/rechiseled/end_stone_blobs.png b/public/textures/rechiseled/end_stone_blobs.png new file mode 100644 index 00000000..4f9c861a Binary files /dev/null and b/public/textures/rechiseled/end_stone_blobs.png differ diff --git a/public/textures/rechiseled/end_stone_blobs_connecting.png b/public/textures/rechiseled/end_stone_blobs_connecting.png new file mode 100644 index 00000000..4f9c861a Binary files /dev/null and b/public/textures/rechiseled/end_stone_blobs_connecting.png differ diff --git a/public/textures/rechiseled/end_stone_brick_pattern.png b/public/textures/rechiseled/end_stone_brick_pattern.png new file mode 100644 index 00000000..2d87ea8d Binary files /dev/null and b/public/textures/rechiseled/end_stone_brick_pattern.png differ diff --git a/public/textures/rechiseled/end_stone_brick_pattern_connecting.png b/public/textures/rechiseled/end_stone_brick_pattern_connecting.png new file mode 100644 index 00000000..2d87ea8d Binary files /dev/null and b/public/textures/rechiseled/end_stone_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/end_stone_brick_paving.png b/public/textures/rechiseled/end_stone_brick_paving.png new file mode 100644 index 00000000..dff8498b Binary files /dev/null and b/public/textures/rechiseled/end_stone_brick_paving.png differ diff --git a/public/textures/rechiseled/end_stone_brick_paving_connecting.png b/public/textures/rechiseled/end_stone_brick_paving_connecting.png new file mode 100644 index 00000000..dff8498b Binary files /dev/null and b/public/textures/rechiseled/end_stone_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/end_stone_chiseled.png b/public/textures/rechiseled/end_stone_chiseled.png new file mode 100644 index 00000000..3f184dc9 Binary files /dev/null and b/public/textures/rechiseled/end_stone_chiseled.png differ diff --git a/public/textures/rechiseled/end_stone_chiseled_connecting.png b/public/textures/rechiseled/end_stone_chiseled_connecting.png new file mode 100644 index 00000000..3f184dc9 Binary files /dev/null and b/public/textures/rechiseled/end_stone_chiseled_connecting.png differ diff --git a/public/textures/rechiseled/end_stone_crushed.png b/public/textures/rechiseled/end_stone_crushed.png new file mode 100644 index 00000000..b40b096a Binary files /dev/null and b/public/textures/rechiseled/end_stone_crushed.png differ diff --git a/public/textures/rechiseled/end_stone_crushed_connecting.png b/public/textures/rechiseled/end_stone_crushed_connecting.png new file mode 100644 index 00000000..b40b096a Binary files /dev/null and b/public/textures/rechiseled/end_stone_crushed_connecting.png differ diff --git a/public/textures/rechiseled/end_stone_diagonal_bricks.png b/public/textures/rechiseled/end_stone_diagonal_bricks.png new file mode 100644 index 00000000..7c9013f2 Binary files /dev/null and b/public/textures/rechiseled/end_stone_diagonal_bricks.png differ diff --git a/public/textures/rechiseled/end_stone_diagonal_bricks_connecting.png b/public/textures/rechiseled/end_stone_diagonal_bricks_connecting.png new file mode 100644 index 00000000..7c9013f2 Binary files /dev/null and b/public/textures/rechiseled/end_stone_diagonal_bricks_connecting.png differ diff --git a/public/textures/rechiseled/end_stone_mesh.png b/public/textures/rechiseled/end_stone_mesh.png new file mode 100644 index 00000000..005601b2 Binary files /dev/null and b/public/textures/rechiseled/end_stone_mesh.png differ diff --git a/public/textures/rechiseled/end_stone_mesh_connecting.png b/public/textures/rechiseled/end_stone_mesh_connecting.png new file mode 100644 index 00000000..005601b2 Binary files /dev/null and b/public/textures/rechiseled/end_stone_mesh_connecting.png differ diff --git a/public/textures/rechiseled/end_stone_paving.png b/public/textures/rechiseled/end_stone_paving.png new file mode 100644 index 00000000..263fe014 Binary files /dev/null and b/public/textures/rechiseled/end_stone_paving.png differ diff --git a/public/textures/rechiseled/end_stone_paving_connecting.png b/public/textures/rechiseled/end_stone_paving_connecting.png new file mode 100644 index 00000000..263fe014 Binary files /dev/null and b/public/textures/rechiseled/end_stone_paving_connecting.png differ diff --git a/public/textures/rechiseled/end_stone_polished.png b/public/textures/rechiseled/end_stone_polished.png new file mode 100644 index 00000000..9de5992c Binary files /dev/null and b/public/textures/rechiseled/end_stone_polished.png differ diff --git a/public/textures/rechiseled/end_stone_polished_connecting.png b/public/textures/rechiseled/end_stone_polished_connecting.png new file mode 100644 index 00000000..9de5992c Binary files /dev/null and b/public/textures/rechiseled/end_stone_polished_connecting.png differ diff --git a/public/textures/rechiseled/end_stone_rotated_bricks.png b/public/textures/rechiseled/end_stone_rotated_bricks.png new file mode 100644 index 00000000..e3c18bd1 Binary files /dev/null and b/public/textures/rechiseled/end_stone_rotated_bricks.png differ diff --git a/public/textures/rechiseled/end_stone_rotated_bricks_connecting.png b/public/textures/rechiseled/end_stone_rotated_bricks_connecting.png new file mode 100644 index 00000000..e3c18bd1 Binary files /dev/null and b/public/textures/rechiseled/end_stone_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/end_stone_scales.png b/public/textures/rechiseled/end_stone_scales.png new file mode 100644 index 00000000..e1da51ec Binary files /dev/null and b/public/textures/rechiseled/end_stone_scales.png differ diff --git a/public/textures/rechiseled/end_stone_scales_connecting.png b/public/textures/rechiseled/end_stone_scales_connecting.png new file mode 100644 index 00000000..e1da51ec Binary files /dev/null and b/public/textures/rechiseled/end_stone_scales_connecting.png differ diff --git a/public/textures/rechiseled/end_stone_small_tiles.png b/public/textures/rechiseled/end_stone_small_tiles.png new file mode 100644 index 00000000..472e0acc Binary files /dev/null and b/public/textures/rechiseled/end_stone_small_tiles.png differ diff --git a/public/textures/rechiseled/end_stone_small_tiles_connecting.png b/public/textures/rechiseled/end_stone_small_tiles_connecting.png new file mode 100644 index 00000000..472e0acc Binary files /dev/null and b/public/textures/rechiseled/end_stone_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/end_stone_spiral_pattern.png b/public/textures/rechiseled/end_stone_spiral_pattern.png new file mode 100644 index 00000000..06060105 Binary files /dev/null and b/public/textures/rechiseled/end_stone_spiral_pattern.png differ diff --git a/public/textures/rechiseled/end_stone_spiral_pattern_connecting.png b/public/textures/rechiseled/end_stone_spiral_pattern_connecting.png new file mode 100644 index 00000000..06060105 Binary files /dev/null and b/public/textures/rechiseled/end_stone_spiral_pattern_connecting.png differ diff --git a/public/textures/rechiseled/end_stone_squares.png b/public/textures/rechiseled/end_stone_squares.png new file mode 100644 index 00000000..5cfb9db0 Binary files /dev/null and b/public/textures/rechiseled/end_stone_squares.png differ diff --git a/public/textures/rechiseled/end_stone_squares_connecting.png b/public/textures/rechiseled/end_stone_squares_connecting.png new file mode 100644 index 00000000..5cfb9db0 Binary files /dev/null and b/public/textures/rechiseled/end_stone_squares_connecting.png differ diff --git a/public/textures/rechiseled/end_stone_tiles.png b/public/textures/rechiseled/end_stone_tiles.png new file mode 100644 index 00000000..6a026ad5 Binary files /dev/null and b/public/textures/rechiseled/end_stone_tiles.png differ diff --git a/public/textures/rechiseled/end_stone_tiles_connecting.png b/public/textures/rechiseled/end_stone_tiles_connecting.png new file mode 100644 index 00000000..6a026ad5 Binary files /dev/null and b/public/textures/rechiseled/end_stone_tiles_connecting.png differ diff --git a/public/textures/rechiseled/glowstone_brick_pattern.png b/public/textures/rechiseled/glowstone_brick_pattern.png new file mode 100644 index 00000000..6d83bc61 Binary files /dev/null and b/public/textures/rechiseled/glowstone_brick_pattern.png differ diff --git a/public/textures/rechiseled/glowstone_brick_pattern_connecting.png b/public/textures/rechiseled/glowstone_brick_pattern_connecting.png new file mode 100644 index 00000000..6d83bc61 Binary files /dev/null and b/public/textures/rechiseled/glowstone_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/glowstone_brick_paving.png b/public/textures/rechiseled/glowstone_brick_paving.png new file mode 100644 index 00000000..41b97f37 Binary files /dev/null and b/public/textures/rechiseled/glowstone_brick_paving.png differ diff --git a/public/textures/rechiseled/glowstone_brick_paving_connecting.png b/public/textures/rechiseled/glowstone_brick_paving_connecting.png new file mode 100644 index 00000000..41b97f37 Binary files /dev/null and b/public/textures/rechiseled/glowstone_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/glowstone_bricks.png b/public/textures/rechiseled/glowstone_bricks.png new file mode 100644 index 00000000..7f5512bc Binary files /dev/null and b/public/textures/rechiseled/glowstone_bricks.png differ diff --git a/public/textures/rechiseled/glowstone_bricks_connecting.png b/public/textures/rechiseled/glowstone_bricks_connecting.png new file mode 100644 index 00000000..7f5512bc Binary files /dev/null and b/public/textures/rechiseled/glowstone_bricks_connecting.png differ diff --git a/public/textures/rechiseled/glowstone_crushed.png b/public/textures/rechiseled/glowstone_crushed.png new file mode 100644 index 00000000..bac83464 Binary files /dev/null and b/public/textures/rechiseled/glowstone_crushed.png differ diff --git a/public/textures/rechiseled/glowstone_crushed_connecting.png b/public/textures/rechiseled/glowstone_crushed_connecting.png new file mode 100644 index 00000000..bac83464 Binary files /dev/null and b/public/textures/rechiseled/glowstone_crushed_connecting.png differ diff --git a/public/textures/rechiseled/glowstone_large_tiles.png b/public/textures/rechiseled/glowstone_large_tiles.png new file mode 100644 index 00000000..97d65234 Binary files /dev/null and b/public/textures/rechiseled/glowstone_large_tiles.png differ diff --git a/public/textures/rechiseled/glowstone_large_tiles_connecting.png b/public/textures/rechiseled/glowstone_large_tiles_connecting.png new file mode 100644 index 00000000..97d65234 Binary files /dev/null and b/public/textures/rechiseled/glowstone_large_tiles_connecting.png differ diff --git a/public/textures/rechiseled/glowstone_rotated_bricks.png b/public/textures/rechiseled/glowstone_rotated_bricks.png new file mode 100644 index 00000000..8e9b8588 Binary files /dev/null and b/public/textures/rechiseled/glowstone_rotated_bricks.png differ diff --git a/public/textures/rechiseled/glowstone_rotated_bricks_connecting.png b/public/textures/rechiseled/glowstone_rotated_bricks_connecting.png new file mode 100644 index 00000000..8e9b8588 Binary files /dev/null and b/public/textures/rechiseled/glowstone_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/glowstone_small_tiles.png b/public/textures/rechiseled/glowstone_small_tiles.png new file mode 100644 index 00000000..4b5a31a3 Binary files /dev/null and b/public/textures/rechiseled/glowstone_small_tiles.png differ diff --git a/public/textures/rechiseled/glowstone_small_tiles_connecting.png b/public/textures/rechiseled/glowstone_small_tiles_connecting.png new file mode 100644 index 00000000..4b5a31a3 Binary files /dev/null and b/public/textures/rechiseled/glowstone_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/glowstone_smooth.png b/public/textures/rechiseled/glowstone_smooth.png new file mode 100644 index 00000000..06b8a815 Binary files /dev/null and b/public/textures/rechiseled/glowstone_smooth.png differ diff --git a/public/textures/rechiseled/glowstone_smooth_connecting.png b/public/textures/rechiseled/glowstone_smooth_connecting.png new file mode 100644 index 00000000..06b8a815 Binary files /dev/null and b/public/textures/rechiseled/glowstone_smooth_connecting.png differ diff --git a/public/textures/rechiseled/glowstone_tiles.png b/public/textures/rechiseled/glowstone_tiles.png new file mode 100644 index 00000000..b636484f Binary files /dev/null and b/public/textures/rechiseled/glowstone_tiles.png differ diff --git a/public/textures/rechiseled/glowstone_tiles_connecting.png b/public/textures/rechiseled/glowstone_tiles_connecting.png new file mode 100644 index 00000000..b636484f Binary files /dev/null and b/public/textures/rechiseled/glowstone_tiles_connecting.png differ diff --git a/public/textures/rechiseled/gold_block_beams.png b/public/textures/rechiseled/gold_block_beams.png new file mode 100644 index 00000000..2e58b09d Binary files /dev/null and b/public/textures/rechiseled/gold_block_beams.png differ diff --git a/public/textures/rechiseled/gold_block_beams_connecting.png b/public/textures/rechiseled/gold_block_beams_connecting.png new file mode 100644 index 00000000..2e58b09d Binary files /dev/null and b/public/textures/rechiseled/gold_block_beams_connecting.png differ diff --git a/public/textures/rechiseled/gold_block_bordered.png b/public/textures/rechiseled/gold_block_bordered.png new file mode 100644 index 00000000..182bba77 Binary files /dev/null and b/public/textures/rechiseled/gold_block_bordered.png differ diff --git a/public/textures/rechiseled/gold_block_bordered_connecting.png b/public/textures/rechiseled/gold_block_bordered_connecting.png new file mode 100644 index 00000000..182bba77 Binary files /dev/null and b/public/textures/rechiseled/gold_block_bordered_connecting.png differ diff --git a/public/textures/rechiseled/gold_block_lines.png b/public/textures/rechiseled/gold_block_lines.png new file mode 100644 index 00000000..64d19861 Binary files /dev/null and b/public/textures/rechiseled/gold_block_lines.png differ diff --git a/public/textures/rechiseled/gold_block_lines_connecting.png b/public/textures/rechiseled/gold_block_lines_connecting.png new file mode 100644 index 00000000..64d19861 Binary files /dev/null and b/public/textures/rechiseled/gold_block_lines_connecting.png differ diff --git a/public/textures/rechiseled/gold_block_pattern.png b/public/textures/rechiseled/gold_block_pattern.png new file mode 100644 index 00000000..87eb3b65 Binary files /dev/null and b/public/textures/rechiseled/gold_block_pattern.png differ diff --git a/public/textures/rechiseled/gold_block_pattern_connecting.png b/public/textures/rechiseled/gold_block_pattern_connecting.png new file mode 100644 index 00000000..87eb3b65 Binary files /dev/null and b/public/textures/rechiseled/gold_block_pattern_connecting.png differ diff --git a/public/textures/rechiseled/gold_block_polished.png b/public/textures/rechiseled/gold_block_polished.png new file mode 100644 index 00000000..08e7e136 Binary files /dev/null and b/public/textures/rechiseled/gold_block_polished.png differ diff --git a/public/textures/rechiseled/gold_block_polished_connecting.png b/public/textures/rechiseled/gold_block_polished_connecting.png new file mode 100644 index 00000000..08e7e136 Binary files /dev/null and b/public/textures/rechiseled/gold_block_polished_connecting.png differ diff --git a/public/textures/rechiseled/gold_block_scales.png b/public/textures/rechiseled/gold_block_scales.png new file mode 100644 index 00000000..07ac1368 Binary files /dev/null and b/public/textures/rechiseled/gold_block_scales.png differ diff --git a/public/textures/rechiseled/gold_block_scales_connecting.png b/public/textures/rechiseled/gold_block_scales_connecting.png new file mode 100644 index 00000000..07ac1368 Binary files /dev/null and b/public/textures/rechiseled/gold_block_scales_connecting.png differ diff --git a/public/textures/rechiseled/gold_block_small_bricks.png b/public/textures/rechiseled/gold_block_small_bricks.png new file mode 100644 index 00000000..5101e1a0 Binary files /dev/null and b/public/textures/rechiseled/gold_block_small_bricks.png differ diff --git a/public/textures/rechiseled/gold_block_small_bricks_connecting.png b/public/textures/rechiseled/gold_block_small_bricks_connecting.png new file mode 100644 index 00000000..5101e1a0 Binary files /dev/null and b/public/textures/rechiseled/gold_block_small_bricks_connecting.png differ diff --git a/public/textures/rechiseled/gold_block_small_tiles.png b/public/textures/rechiseled/gold_block_small_tiles.png new file mode 100644 index 00000000..a4a36b21 Binary files /dev/null and b/public/textures/rechiseled/gold_block_small_tiles.png differ diff --git a/public/textures/rechiseled/gold_block_small_tiles_connecting.png b/public/textures/rechiseled/gold_block_small_tiles_connecting.png new file mode 100644 index 00000000..a4a36b21 Binary files /dev/null and b/public/textures/rechiseled/gold_block_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/gold_block_smooth.png b/public/textures/rechiseled/gold_block_smooth.png new file mode 100644 index 00000000..0becf10d Binary files /dev/null and b/public/textures/rechiseled/gold_block_smooth.png differ diff --git a/public/textures/rechiseled/gold_block_striped.png b/public/textures/rechiseled/gold_block_striped.png new file mode 100644 index 00000000..392834fa Binary files /dev/null and b/public/textures/rechiseled/gold_block_striped.png differ diff --git a/public/textures/rechiseled/gold_block_striped_connecting.png b/public/textures/rechiseled/gold_block_striped_connecting.png new file mode 100644 index 00000000..392834fa Binary files /dev/null and b/public/textures/rechiseled/gold_block_striped_connecting.png differ diff --git a/public/textures/rechiseled/gold_block_tiles.png b/public/textures/rechiseled/gold_block_tiles.png new file mode 100644 index 00000000..3b4c69a6 Binary files /dev/null and b/public/textures/rechiseled/gold_block_tiles.png differ diff --git a/public/textures/rechiseled/gold_block_tiles_connecting.png b/public/textures/rechiseled/gold_block_tiles_connecting.png new file mode 100644 index 00000000..3b4c69a6 Binary files /dev/null and b/public/textures/rechiseled/gold_block_tiles_connecting.png differ diff --git a/public/textures/rechiseled/granite_brick_pattern.png b/public/textures/rechiseled/granite_brick_pattern.png new file mode 100644 index 00000000..5877af75 Binary files /dev/null and b/public/textures/rechiseled/granite_brick_pattern.png differ diff --git a/public/textures/rechiseled/granite_brick_pattern_connecting.png b/public/textures/rechiseled/granite_brick_pattern_connecting.png new file mode 100644 index 00000000..5877af75 Binary files /dev/null and b/public/textures/rechiseled/granite_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/granite_brick_paving.png b/public/textures/rechiseled/granite_brick_paving.png new file mode 100644 index 00000000..d6cc37aa Binary files /dev/null and b/public/textures/rechiseled/granite_brick_paving.png differ diff --git a/public/textures/rechiseled/granite_brick_paving_connecting.png b/public/textures/rechiseled/granite_brick_paving_connecting.png new file mode 100644 index 00000000..d6cc37aa Binary files /dev/null and b/public/textures/rechiseled/granite_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/granite_bricks.png b/public/textures/rechiseled/granite_bricks.png new file mode 100644 index 00000000..8aebb4bf Binary files /dev/null and b/public/textures/rechiseled/granite_bricks.png differ diff --git a/public/textures/rechiseled/granite_bricks_connecting.png b/public/textures/rechiseled/granite_bricks_connecting.png new file mode 100644 index 00000000..8aebb4bf Binary files /dev/null and b/public/textures/rechiseled/granite_bricks_connecting.png differ diff --git a/public/textures/rechiseled/granite_diagonal_bricks.png b/public/textures/rechiseled/granite_diagonal_bricks.png new file mode 100644 index 00000000..1dcf242e Binary files /dev/null and b/public/textures/rechiseled/granite_diagonal_bricks.png differ diff --git a/public/textures/rechiseled/granite_diagonal_bricks_connecting.png b/public/textures/rechiseled/granite_diagonal_bricks_connecting.png new file mode 100644 index 00000000..1dcf242e Binary files /dev/null and b/public/textures/rechiseled/granite_diagonal_bricks_connecting.png differ diff --git a/public/textures/rechiseled/granite_dotted.png b/public/textures/rechiseled/granite_dotted.png new file mode 100644 index 00000000..0b5799a5 Binary files /dev/null and b/public/textures/rechiseled/granite_dotted.png differ diff --git a/public/textures/rechiseled/granite_dotted_connecting.png b/public/textures/rechiseled/granite_dotted_connecting.png new file mode 100644 index 00000000..0b5799a5 Binary files /dev/null and b/public/textures/rechiseled/granite_dotted_connecting.png differ diff --git a/public/textures/rechiseled/granite_paving.png b/public/textures/rechiseled/granite_paving.png new file mode 100644 index 00000000..e93f33aa Binary files /dev/null and b/public/textures/rechiseled/granite_paving.png differ diff --git a/public/textures/rechiseled/granite_paving_connecting.png b/public/textures/rechiseled/granite_paving_connecting.png new file mode 100644 index 00000000..e93f33aa Binary files /dev/null and b/public/textures/rechiseled/granite_paving_connecting.png differ diff --git a/public/textures/rechiseled/granite_polished_connecting.png b/public/textures/rechiseled/granite_polished_connecting.png new file mode 100644 index 00000000..9fd4a5bc Binary files /dev/null and b/public/textures/rechiseled/granite_polished_connecting.png differ diff --git a/public/textures/rechiseled/granite_rotated_bricks.png b/public/textures/rechiseled/granite_rotated_bricks.png new file mode 100644 index 00000000..e08625e6 Binary files /dev/null and b/public/textures/rechiseled/granite_rotated_bricks.png differ diff --git a/public/textures/rechiseled/granite_rotated_bricks_connecting.png b/public/textures/rechiseled/granite_rotated_bricks_connecting.png new file mode 100644 index 00000000..e08625e6 Binary files /dev/null and b/public/textures/rechiseled/granite_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/granite_squares.png b/public/textures/rechiseled/granite_squares.png new file mode 100644 index 00000000..31628bb9 Binary files /dev/null and b/public/textures/rechiseled/granite_squares.png differ diff --git a/public/textures/rechiseled/granite_squares_connecting.png b/public/textures/rechiseled/granite_squares_connecting.png new file mode 100644 index 00000000..31628bb9 Binary files /dev/null and b/public/textures/rechiseled/granite_squares_connecting.png differ diff --git a/public/textures/rechiseled/granite_tiles.png b/public/textures/rechiseled/granite_tiles.png new file mode 100644 index 00000000..42da999d Binary files /dev/null and b/public/textures/rechiseled/granite_tiles.png differ diff --git a/public/textures/rechiseled/granite_tiles_connecting.png b/public/textures/rechiseled/granite_tiles_connecting.png new file mode 100644 index 00000000..42da999d Binary files /dev/null and b/public/textures/rechiseled/granite_tiles_connecting.png differ diff --git a/public/textures/rechiseled/granite_wavy.png b/public/textures/rechiseled/granite_wavy.png new file mode 100644 index 00000000..29e6b4ec Binary files /dev/null and b/public/textures/rechiseled/granite_wavy.png differ diff --git a/public/textures/rechiseled/granite_wavy_connecting.png b/public/textures/rechiseled/granite_wavy_connecting.png new file mode 100644 index 00000000..29e6b4ec Binary files /dev/null and b/public/textures/rechiseled/granite_wavy_connecting.png differ diff --git a/public/textures/rechiseled/iron_block_bordered.png b/public/textures/rechiseled/iron_block_bordered.png new file mode 100644 index 00000000..5bbb8282 Binary files /dev/null and b/public/textures/rechiseled/iron_block_bordered.png differ diff --git a/public/textures/rechiseled/iron_block_bordered_connecting.png b/public/textures/rechiseled/iron_block_bordered_connecting.png new file mode 100644 index 00000000..5bbb8282 Binary files /dev/null and b/public/textures/rechiseled/iron_block_bordered_connecting.png differ diff --git a/public/textures/rechiseled/iron_block_chiseled.png b/public/textures/rechiseled/iron_block_chiseled.png new file mode 100644 index 00000000..f846d56c Binary files /dev/null and b/public/textures/rechiseled/iron_block_chiseled.png differ diff --git a/public/textures/rechiseled/iron_block_chiseled_connecting.png b/public/textures/rechiseled/iron_block_chiseled_connecting.png new file mode 100644 index 00000000..f846d56c Binary files /dev/null and b/public/textures/rechiseled/iron_block_chiseled_connecting.png differ diff --git a/public/textures/rechiseled/iron_block_connecting_connecting.png b/public/textures/rechiseled/iron_block_connecting_connecting.png new file mode 100644 index 00000000..e97c4e04 Binary files /dev/null and b/public/textures/rechiseled/iron_block_connecting_connecting.png differ diff --git a/public/textures/rechiseled/iron_block_framed.png b/public/textures/rechiseled/iron_block_framed.png new file mode 100644 index 00000000..6c138f78 Binary files /dev/null and b/public/textures/rechiseled/iron_block_framed.png differ diff --git a/public/textures/rechiseled/iron_block_framed_connecting.png b/public/textures/rechiseled/iron_block_framed_connecting.png new file mode 100644 index 00000000..6c138f78 Binary files /dev/null and b/public/textures/rechiseled/iron_block_framed_connecting.png differ diff --git a/public/textures/rechiseled/iron_block_gears.png b/public/textures/rechiseled/iron_block_gears.png new file mode 100644 index 00000000..6af2b405 Binary files /dev/null and b/public/textures/rechiseled/iron_block_gears.png differ diff --git a/public/textures/rechiseled/iron_block_gears_connecting.png b/public/textures/rechiseled/iron_block_gears_connecting.png new file mode 100644 index 00000000..6af2b405 Binary files /dev/null and b/public/textures/rechiseled/iron_block_gears_connecting.png differ diff --git a/public/textures/rechiseled/iron_block_lines.png b/public/textures/rechiseled/iron_block_lines.png new file mode 100644 index 00000000..bd52dd74 Binary files /dev/null and b/public/textures/rechiseled/iron_block_lines.png differ diff --git a/public/textures/rechiseled/iron_block_lines_connecting.png b/public/textures/rechiseled/iron_block_lines_connecting.png new file mode 100644 index 00000000..bd52dd74 Binary files /dev/null and b/public/textures/rechiseled/iron_block_lines_connecting.png differ diff --git a/public/textures/rechiseled/iron_block_patterned.png b/public/textures/rechiseled/iron_block_patterned.png new file mode 100644 index 00000000..2d3975ba Binary files /dev/null and b/public/textures/rechiseled/iron_block_patterned.png differ diff --git a/public/textures/rechiseled/iron_block_patterned_connecting.png b/public/textures/rechiseled/iron_block_patterned_connecting.png new file mode 100644 index 00000000..2d3975ba Binary files /dev/null and b/public/textures/rechiseled/iron_block_patterned_connecting.png differ diff --git a/public/textures/rechiseled/iron_block_pipes.png b/public/textures/rechiseled/iron_block_pipes.png new file mode 100644 index 00000000..297ce4aa Binary files /dev/null and b/public/textures/rechiseled/iron_block_pipes.png differ diff --git a/public/textures/rechiseled/iron_block_pipes_connecting.png b/public/textures/rechiseled/iron_block_pipes_connecting.png new file mode 100644 index 00000000..297ce4aa Binary files /dev/null and b/public/textures/rechiseled/iron_block_pipes_connecting.png differ diff --git a/public/textures/rechiseled/iron_block_plated.png b/public/textures/rechiseled/iron_block_plated.png new file mode 100644 index 00000000..fe610c84 Binary files /dev/null and b/public/textures/rechiseled/iron_block_plated.png differ diff --git a/public/textures/rechiseled/iron_block_polished.png b/public/textures/rechiseled/iron_block_polished.png new file mode 100644 index 00000000..61416ded Binary files /dev/null and b/public/textures/rechiseled/iron_block_polished.png differ diff --git a/public/textures/rechiseled/iron_block_polished_connecting.png b/public/textures/rechiseled/iron_block_polished_connecting.png new file mode 100644 index 00000000..61416ded Binary files /dev/null and b/public/textures/rechiseled/iron_block_polished_connecting.png differ diff --git a/public/textures/rechiseled/iron_block_processed.png b/public/textures/rechiseled/iron_block_processed.png new file mode 100644 index 00000000..773a7798 Binary files /dev/null and b/public/textures/rechiseled/iron_block_processed.png differ diff --git a/public/textures/rechiseled/iron_block_processed_connecting.png b/public/textures/rechiseled/iron_block_processed_connecting.png new file mode 100644 index 00000000..773a7798 Binary files /dev/null and b/public/textures/rechiseled/iron_block_processed_connecting.png differ diff --git a/public/textures/rechiseled/iron_block_pulverized.png b/public/textures/rechiseled/iron_block_pulverized.png new file mode 100644 index 00000000..b9da72b2 Binary files /dev/null and b/public/textures/rechiseled/iron_block_pulverized.png differ diff --git a/public/textures/rechiseled/iron_block_reinforced.png b/public/textures/rechiseled/iron_block_reinforced.png new file mode 100644 index 00000000..a5479eee Binary files /dev/null and b/public/textures/rechiseled/iron_block_reinforced.png differ diff --git a/public/textures/rechiseled/iron_block_sheets.png b/public/textures/rechiseled/iron_block_sheets.png new file mode 100644 index 00000000..f96dcbe8 Binary files /dev/null and b/public/textures/rechiseled/iron_block_sheets.png differ diff --git a/public/textures/rechiseled/iron_block_small_bricks.png b/public/textures/rechiseled/iron_block_small_bricks.png new file mode 100644 index 00000000..401f74b3 Binary files /dev/null and b/public/textures/rechiseled/iron_block_small_bricks.png differ diff --git a/public/textures/rechiseled/iron_block_small_bricks_connecting.png b/public/textures/rechiseled/iron_block_small_bricks_connecting.png new file mode 100644 index 00000000..401f74b3 Binary files /dev/null and b/public/textures/rechiseled/iron_block_small_bricks_connecting.png differ diff --git a/public/textures/rechiseled/iron_block_smooth.png b/public/textures/rechiseled/iron_block_smooth.png new file mode 100644 index 00000000..408ba032 Binary files /dev/null and b/public/textures/rechiseled/iron_block_smooth.png differ diff --git a/public/textures/rechiseled/jungle_planks_beams.png b/public/textures/rechiseled/jungle_planks_beams.png new file mode 100644 index 00000000..95cf4792 Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_beams.png differ diff --git a/public/textures/rechiseled/jungle_planks_beams_connecting.png b/public/textures/rechiseled/jungle_planks_beams_connecting.png new file mode 100644 index 00000000..95cf4792 Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_beams_connecting.png differ diff --git a/public/textures/rechiseled/jungle_planks_brick_pattern.png b/public/textures/rechiseled/jungle_planks_brick_pattern.png new file mode 100644 index 00000000..dab43b24 Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_brick_pattern.png differ diff --git a/public/textures/rechiseled/jungle_planks_brick_pattern_connecting.png b/public/textures/rechiseled/jungle_planks_brick_pattern_connecting.png new file mode 100644 index 00000000..dab43b24 Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/jungle_planks_brick_paving.png b/public/textures/rechiseled/jungle_planks_brick_paving.png new file mode 100644 index 00000000..e31cf2d1 Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_brick_paving.png differ diff --git a/public/textures/rechiseled/jungle_planks_brick_paving_connecting.png b/public/textures/rechiseled/jungle_planks_brick_paving_connecting.png new file mode 100644 index 00000000..e31cf2d1 Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/jungle_planks_bricks.png b/public/textures/rechiseled/jungle_planks_bricks.png new file mode 100644 index 00000000..f638b9c3 Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_bricks.png differ diff --git a/public/textures/rechiseled/jungle_planks_bricks_connecting.png b/public/textures/rechiseled/jungle_planks_bricks_connecting.png new file mode 100644 index 00000000..f638b9c3 Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_bricks_connecting.png differ diff --git a/public/textures/rechiseled/jungle_planks_crate.png b/public/textures/rechiseled/jungle_planks_crate.png new file mode 100644 index 00000000..f60dccfa Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_crate.png differ diff --git a/public/textures/rechiseled/jungle_planks_crate_connecting.png b/public/textures/rechiseled/jungle_planks_crate_connecting.png new file mode 100644 index 00000000..f60dccfa Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_crate_connecting.png differ diff --git a/public/textures/rechiseled/jungle_planks_diagonal_stripes.png b/public/textures/rechiseled/jungle_planks_diagonal_stripes.png new file mode 100644 index 00000000..0221e9dd Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_diagonal_stripes.png differ diff --git a/public/textures/rechiseled/jungle_planks_diagonal_stripes_connecting.png b/public/textures/rechiseled/jungle_planks_diagonal_stripes_connecting.png new file mode 100644 index 00000000..0221e9dd Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_diagonal_stripes_connecting.png differ diff --git a/public/textures/rechiseled/jungle_planks_diagonal_tiles.png b/public/textures/rechiseled/jungle_planks_diagonal_tiles.png new file mode 100644 index 00000000..e953ebf8 Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_diagonal_tiles.png differ diff --git a/public/textures/rechiseled/jungle_planks_diagonal_tiles_connecting.png b/public/textures/rechiseled/jungle_planks_diagonal_tiles_connecting.png new file mode 100644 index 00000000..e953ebf8 Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_diagonal_tiles_connecting.png differ diff --git a/public/textures/rechiseled/jungle_planks_dotted.png b/public/textures/rechiseled/jungle_planks_dotted.png new file mode 100644 index 00000000..ca060ee9 Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_dotted.png differ diff --git a/public/textures/rechiseled/jungle_planks_dotted_connecting.png b/public/textures/rechiseled/jungle_planks_dotted_connecting.png new file mode 100644 index 00000000..ca060ee9 Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_dotted_connecting.png differ diff --git a/public/textures/rechiseled/jungle_planks_flooring.png b/public/textures/rechiseled/jungle_planks_flooring.png new file mode 100644 index 00000000..8fb36c51 Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_flooring.png differ diff --git a/public/textures/rechiseled/jungle_planks_flooring_connecting.png b/public/textures/rechiseled/jungle_planks_flooring_connecting.png new file mode 100644 index 00000000..8fb36c51 Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_flooring_connecting.png differ diff --git a/public/textures/rechiseled/jungle_planks_large_tiles.png b/public/textures/rechiseled/jungle_planks_large_tiles.png new file mode 100644 index 00000000..a9a6baa9 Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_large_tiles.png differ diff --git a/public/textures/rechiseled/jungle_planks_large_tiles_connecting.png b/public/textures/rechiseled/jungle_planks_large_tiles_connecting.png new file mode 100644 index 00000000..a9a6baa9 Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_large_tiles_connecting.png differ diff --git a/public/textures/rechiseled/jungle_planks_mosaic.png b/public/textures/rechiseled/jungle_planks_mosaic.png new file mode 100644 index 00000000..23295e6d Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_mosaic.png differ diff --git a/public/textures/rechiseled/jungle_planks_pattern.png b/public/textures/rechiseled/jungle_planks_pattern.png new file mode 100644 index 00000000..7b9466de Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_pattern.png differ diff --git a/public/textures/rechiseled/jungle_planks_pattern_connecting.png b/public/textures/rechiseled/jungle_planks_pattern_connecting.png new file mode 100644 index 00000000..7b9466de Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_pattern_connecting.png differ diff --git a/public/textures/rechiseled/jungle_planks_rotated_bricks.png b/public/textures/rechiseled/jungle_planks_rotated_bricks.png new file mode 100644 index 00000000..da8e026a Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_rotated_bricks.png differ diff --git a/public/textures/rechiseled/jungle_planks_rotated_bricks_connecting.png b/public/textures/rechiseled/jungle_planks_rotated_bricks_connecting.png new file mode 100644 index 00000000..da8e026a Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/jungle_planks_small_bricks.png b/public/textures/rechiseled/jungle_planks_small_bricks.png new file mode 100644 index 00000000..fde7bf7a Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_small_bricks.png differ diff --git a/public/textures/rechiseled/jungle_planks_small_bricks_connecting.png b/public/textures/rechiseled/jungle_planks_small_bricks_connecting.png new file mode 100644 index 00000000..fde7bf7a Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_small_bricks_connecting.png differ diff --git a/public/textures/rechiseled/jungle_planks_small_tiles.png b/public/textures/rechiseled/jungle_planks_small_tiles.png new file mode 100644 index 00000000..c2322f96 Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_small_tiles.png differ diff --git a/public/textures/rechiseled/jungle_planks_small_tiles_connecting.png b/public/textures/rechiseled/jungle_planks_small_tiles_connecting.png new file mode 100644 index 00000000..c2322f96 Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/jungle_planks_squares.png b/public/textures/rechiseled/jungle_planks_squares.png new file mode 100644 index 00000000..040c1e6f Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_squares.png differ diff --git a/public/textures/rechiseled/jungle_planks_squares_connecting.png b/public/textures/rechiseled/jungle_planks_squares_connecting.png new file mode 100644 index 00000000..040c1e6f Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_squares_connecting.png differ diff --git a/public/textures/rechiseled/jungle_planks_tiles.png b/public/textures/rechiseled/jungle_planks_tiles.png new file mode 100644 index 00000000..c1215ad7 Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_tiles.png differ diff --git a/public/textures/rechiseled/jungle_planks_tiles_connecting.png b/public/textures/rechiseled/jungle_planks_tiles_connecting.png new file mode 100644 index 00000000..c1215ad7 Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_tiles_connecting.png differ diff --git a/public/textures/rechiseled/jungle_planks_wavy.png b/public/textures/rechiseled/jungle_planks_wavy.png new file mode 100644 index 00000000..00327921 Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_wavy.png differ diff --git a/public/textures/rechiseled/jungle_planks_wavy_connecting.png b/public/textures/rechiseled/jungle_planks_wavy_connecting.png new file mode 100644 index 00000000..00327921 Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_wavy_connecting.png differ diff --git a/public/textures/rechiseled/jungle_planks_woven.png b/public/textures/rechiseled/jungle_planks_woven.png new file mode 100644 index 00000000..40cab938 Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_woven.png differ diff --git a/public/textures/rechiseled/jungle_planks_woven_connecting.png b/public/textures/rechiseled/jungle_planks_woven_connecting.png new file mode 100644 index 00000000..40cab938 Binary files /dev/null and b/public/textures/rechiseled/jungle_planks_woven_connecting.png differ diff --git a/public/textures/rechiseled/lapis_block_bordered.png b/public/textures/rechiseled/lapis_block_bordered.png new file mode 100644 index 00000000..6f11c24f Binary files /dev/null and b/public/textures/rechiseled/lapis_block_bordered.png differ diff --git a/public/textures/rechiseled/lapis_block_bordered_connecting.png b/public/textures/rechiseled/lapis_block_bordered_connecting.png new file mode 100644 index 00000000..6f11c24f Binary files /dev/null and b/public/textures/rechiseled/lapis_block_bordered_connecting.png differ diff --git a/public/textures/rechiseled/lapis_block_chiseled.png b/public/textures/rechiseled/lapis_block_chiseled.png new file mode 100644 index 00000000..ac1bbadd Binary files /dev/null and b/public/textures/rechiseled/lapis_block_chiseled.png differ diff --git a/public/textures/rechiseled/lapis_block_chiseled_connecting.png b/public/textures/rechiseled/lapis_block_chiseled_connecting.png new file mode 100644 index 00000000..ac1bbadd Binary files /dev/null and b/public/textures/rechiseled/lapis_block_chiseled_connecting.png differ diff --git a/public/textures/rechiseled/lapis_block_cobbled.png b/public/textures/rechiseled/lapis_block_cobbled.png new file mode 100644 index 00000000..92f567e2 Binary files /dev/null and b/public/textures/rechiseled/lapis_block_cobbled.png differ diff --git a/public/textures/rechiseled/lapis_block_connecting_connecting.png b/public/textures/rechiseled/lapis_block_connecting_connecting.png new file mode 100644 index 00000000..a4208b4d Binary files /dev/null and b/public/textures/rechiseled/lapis_block_connecting_connecting.png differ diff --git a/public/textures/rechiseled/lapis_block_crushed.png b/public/textures/rechiseled/lapis_block_crushed.png new file mode 100644 index 00000000..7ebec5c1 Binary files /dev/null and b/public/textures/rechiseled/lapis_block_crushed.png differ diff --git a/public/textures/rechiseled/lapis_block_decorated.png b/public/textures/rechiseled/lapis_block_decorated.png new file mode 100644 index 00000000..aca5c97d Binary files /dev/null and b/public/textures/rechiseled/lapis_block_decorated.png differ diff --git a/public/textures/rechiseled/lapis_block_decorated_connecting.png b/public/textures/rechiseled/lapis_block_decorated_connecting.png new file mode 100644 index 00000000..aca5c97d Binary files /dev/null and b/public/textures/rechiseled/lapis_block_decorated_connecting.png differ diff --git a/public/textures/rechiseled/lapis_block_glossy.png b/public/textures/rechiseled/lapis_block_glossy.png new file mode 100644 index 00000000..c0fcdd0f Binary files /dev/null and b/public/textures/rechiseled/lapis_block_glossy.png differ diff --git a/public/textures/rechiseled/lapis_block_glossy_connecting.png b/public/textures/rechiseled/lapis_block_glossy_connecting.png new file mode 100644 index 00000000..c0fcdd0f Binary files /dev/null and b/public/textures/rechiseled/lapis_block_glossy_connecting.png differ diff --git a/public/textures/rechiseled/lapis_block_inverted_tiles.png b/public/textures/rechiseled/lapis_block_inverted_tiles.png new file mode 100644 index 00000000..69407bfd Binary files /dev/null and b/public/textures/rechiseled/lapis_block_inverted_tiles.png differ diff --git a/public/textures/rechiseled/lapis_block_inverted_tiles_connecting.png b/public/textures/rechiseled/lapis_block_inverted_tiles_connecting.png new file mode 100644 index 00000000..69407bfd Binary files /dev/null and b/public/textures/rechiseled/lapis_block_inverted_tiles_connecting.png differ diff --git a/public/textures/rechiseled/lapis_block_mosaic.png b/public/textures/rechiseled/lapis_block_mosaic.png new file mode 100644 index 00000000..dfec23b4 Binary files /dev/null and b/public/textures/rechiseled/lapis_block_mosaic.png differ diff --git a/public/textures/rechiseled/lapis_block_mosaic_connecting.png b/public/textures/rechiseled/lapis_block_mosaic_connecting.png new file mode 100644 index 00000000..dfec23b4 Binary files /dev/null and b/public/textures/rechiseled/lapis_block_mosaic_connecting.png differ diff --git a/public/textures/rechiseled/lapis_block_pattern.png b/public/textures/rechiseled/lapis_block_pattern.png new file mode 100644 index 00000000..3b6006f0 Binary files /dev/null and b/public/textures/rechiseled/lapis_block_pattern.png differ diff --git a/public/textures/rechiseled/lapis_block_pattern_connecting.png b/public/textures/rechiseled/lapis_block_pattern_connecting.png new file mode 100644 index 00000000..3b6006f0 Binary files /dev/null and b/public/textures/rechiseled/lapis_block_pattern_connecting.png differ diff --git a/public/textures/rechiseled/lapis_block_pillar.png b/public/textures/rechiseled/lapis_block_pillar.png new file mode 100644 index 00000000..7121a015 Binary files /dev/null and b/public/textures/rechiseled/lapis_block_pillar.png differ diff --git a/public/textures/rechiseled/lapis_block_pillar_connecting.png b/public/textures/rechiseled/lapis_block_pillar_connecting.png new file mode 100644 index 00000000..7121a015 Binary files /dev/null and b/public/textures/rechiseled/lapis_block_pillar_connecting.png differ diff --git a/public/textures/rechiseled/lapis_block_polished.png b/public/textures/rechiseled/lapis_block_polished.png new file mode 100644 index 00000000..ef2f675f Binary files /dev/null and b/public/textures/rechiseled/lapis_block_polished.png differ diff --git a/public/textures/rechiseled/lapis_block_polished_connecting.png b/public/textures/rechiseled/lapis_block_polished_connecting.png new file mode 100644 index 00000000..ef2f675f Binary files /dev/null and b/public/textures/rechiseled/lapis_block_polished_connecting.png differ diff --git a/public/textures/rechiseled/lapis_block_scales.png b/public/textures/rechiseled/lapis_block_scales.png new file mode 100644 index 00000000..c5e7b19e Binary files /dev/null and b/public/textures/rechiseled/lapis_block_scales.png differ diff --git a/public/textures/rechiseled/lapis_block_scales_connecting.png b/public/textures/rechiseled/lapis_block_scales_connecting.png new file mode 100644 index 00000000..c5e7b19e Binary files /dev/null and b/public/textures/rechiseled/lapis_block_scales_connecting.png differ diff --git a/public/textures/rechiseled/lapis_block_small_tiles.png b/public/textures/rechiseled/lapis_block_small_tiles.png new file mode 100644 index 00000000..c4ec9dae Binary files /dev/null and b/public/textures/rechiseled/lapis_block_small_tiles.png differ diff --git a/public/textures/rechiseled/lapis_block_small_tiles_connecting.png b/public/textures/rechiseled/lapis_block_small_tiles_connecting.png new file mode 100644 index 00000000..c4ec9dae Binary files /dev/null and b/public/textures/rechiseled/lapis_block_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/lapis_block_smooth.png b/public/textures/rechiseled/lapis_block_smooth.png new file mode 100644 index 00000000..6b43c930 Binary files /dev/null and b/public/textures/rechiseled/lapis_block_smooth.png differ diff --git a/public/textures/rechiseled/lapis_block_stripes.png b/public/textures/rechiseled/lapis_block_stripes.png new file mode 100644 index 00000000..6123b234 Binary files /dev/null and b/public/textures/rechiseled/lapis_block_stripes.png differ diff --git a/public/textures/rechiseled/lapis_block_stripes_connecting.png b/public/textures/rechiseled/lapis_block_stripes_connecting.png new file mode 100644 index 00000000..6123b234 Binary files /dev/null and b/public/textures/rechiseled/lapis_block_stripes_connecting.png differ diff --git a/public/textures/rechiseled/lapis_block_swirling.png b/public/textures/rechiseled/lapis_block_swirling.png new file mode 100644 index 00000000..9556f633 Binary files /dev/null and b/public/textures/rechiseled/lapis_block_swirling.png differ diff --git a/public/textures/rechiseled/lapis_block_tiles.png b/public/textures/rechiseled/lapis_block_tiles.png new file mode 100644 index 00000000..f4e558be Binary files /dev/null and b/public/textures/rechiseled/lapis_block_tiles.png differ diff --git a/public/textures/rechiseled/lapis_block_tiles_connecting.png b/public/textures/rechiseled/lapis_block_tiles_connecting.png new file mode 100644 index 00000000..f4e558be Binary files /dev/null and b/public/textures/rechiseled/lapis_block_tiles_connecting.png differ diff --git a/public/textures/rechiseled/mangrove_planks_beams.png b/public/textures/rechiseled/mangrove_planks_beams.png new file mode 100644 index 00000000..23942065 Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_beams.png differ diff --git a/public/textures/rechiseled/mangrove_planks_beams_connecting.png b/public/textures/rechiseled/mangrove_planks_beams_connecting.png new file mode 100644 index 00000000..23942065 Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_beams_connecting.png differ diff --git a/public/textures/rechiseled/mangrove_planks_brick_pattern.png b/public/textures/rechiseled/mangrove_planks_brick_pattern.png new file mode 100644 index 00000000..8b10dbfc Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_brick_pattern.png differ diff --git a/public/textures/rechiseled/mangrove_planks_brick_pattern_connecting.png b/public/textures/rechiseled/mangrove_planks_brick_pattern_connecting.png new file mode 100644 index 00000000..8b10dbfc Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/mangrove_planks_brick_paving.png b/public/textures/rechiseled/mangrove_planks_brick_paving.png new file mode 100644 index 00000000..34a2c87a Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_brick_paving.png differ diff --git a/public/textures/rechiseled/mangrove_planks_brick_paving_connecting.png b/public/textures/rechiseled/mangrove_planks_brick_paving_connecting.png new file mode 100644 index 00000000..34a2c87a Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/mangrove_planks_bricks.png b/public/textures/rechiseled/mangrove_planks_bricks.png new file mode 100644 index 00000000..a0946c04 Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_bricks.png differ diff --git a/public/textures/rechiseled/mangrove_planks_bricks_connecting.png b/public/textures/rechiseled/mangrove_planks_bricks_connecting.png new file mode 100644 index 00000000..a0946c04 Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_bricks_connecting.png differ diff --git a/public/textures/rechiseled/mangrove_planks_crate.png b/public/textures/rechiseled/mangrove_planks_crate.png new file mode 100644 index 00000000..4defd857 Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_crate.png differ diff --git a/public/textures/rechiseled/mangrove_planks_crate_connecting.png b/public/textures/rechiseled/mangrove_planks_crate_connecting.png new file mode 100644 index 00000000..4defd857 Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_crate_connecting.png differ diff --git a/public/textures/rechiseled/mangrove_planks_diagonal_stripes.png b/public/textures/rechiseled/mangrove_planks_diagonal_stripes.png new file mode 100644 index 00000000..9c3e2294 Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_diagonal_stripes.png differ diff --git a/public/textures/rechiseled/mangrove_planks_diagonal_stripes_connecting.png b/public/textures/rechiseled/mangrove_planks_diagonal_stripes_connecting.png new file mode 100644 index 00000000..9c3e2294 Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_diagonal_stripes_connecting.png differ diff --git a/public/textures/rechiseled/mangrove_planks_diagonal_tiles.png b/public/textures/rechiseled/mangrove_planks_diagonal_tiles.png new file mode 100644 index 00000000..bf4ac150 Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_diagonal_tiles.png differ diff --git a/public/textures/rechiseled/mangrove_planks_diagonal_tiles_connecting.png b/public/textures/rechiseled/mangrove_planks_diagonal_tiles_connecting.png new file mode 100644 index 00000000..bf4ac150 Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_diagonal_tiles_connecting.png differ diff --git a/public/textures/rechiseled/mangrove_planks_dotted.png b/public/textures/rechiseled/mangrove_planks_dotted.png new file mode 100644 index 00000000..802ac5aa Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_dotted.png differ diff --git a/public/textures/rechiseled/mangrove_planks_dotted_connecting.png b/public/textures/rechiseled/mangrove_planks_dotted_connecting.png new file mode 100644 index 00000000..802ac5aa Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_dotted_connecting.png differ diff --git a/public/textures/rechiseled/mangrove_planks_flooring.png b/public/textures/rechiseled/mangrove_planks_flooring.png new file mode 100644 index 00000000..1a8f8ecf Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_flooring.png differ diff --git a/public/textures/rechiseled/mangrove_planks_flooring_connecting.png b/public/textures/rechiseled/mangrove_planks_flooring_connecting.png new file mode 100644 index 00000000..1a8f8ecf Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_flooring_connecting.png differ diff --git a/public/textures/rechiseled/mangrove_planks_large_tiles.png b/public/textures/rechiseled/mangrove_planks_large_tiles.png new file mode 100644 index 00000000..d7e6528c Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_large_tiles.png differ diff --git a/public/textures/rechiseled/mangrove_planks_large_tiles_connecting.png b/public/textures/rechiseled/mangrove_planks_large_tiles_connecting.png new file mode 100644 index 00000000..d7e6528c Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_large_tiles_connecting.png differ diff --git a/public/textures/rechiseled/mangrove_planks_mosaic.png b/public/textures/rechiseled/mangrove_planks_mosaic.png new file mode 100644 index 00000000..bcd503d2 Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_mosaic.png differ diff --git a/public/textures/rechiseled/mangrove_planks_pattern.png b/public/textures/rechiseled/mangrove_planks_pattern.png new file mode 100644 index 00000000..c6f22a58 Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_pattern.png differ diff --git a/public/textures/rechiseled/mangrove_planks_pattern_connecting.png b/public/textures/rechiseled/mangrove_planks_pattern_connecting.png new file mode 100644 index 00000000..c6f22a58 Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_pattern_connecting.png differ diff --git a/public/textures/rechiseled/mangrove_planks_rotated_bricks.png b/public/textures/rechiseled/mangrove_planks_rotated_bricks.png new file mode 100644 index 00000000..5fca2ee4 Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_rotated_bricks.png differ diff --git a/public/textures/rechiseled/mangrove_planks_rotated_bricks_connecting.png b/public/textures/rechiseled/mangrove_planks_rotated_bricks_connecting.png new file mode 100644 index 00000000..5fca2ee4 Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/mangrove_planks_small_bricks.png b/public/textures/rechiseled/mangrove_planks_small_bricks.png new file mode 100644 index 00000000..d5f486d9 Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_small_bricks.png differ diff --git a/public/textures/rechiseled/mangrove_planks_small_bricks_connecting.png b/public/textures/rechiseled/mangrove_planks_small_bricks_connecting.png new file mode 100644 index 00000000..d5f486d9 Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_small_bricks_connecting.png differ diff --git a/public/textures/rechiseled/mangrove_planks_small_tiles.png b/public/textures/rechiseled/mangrove_planks_small_tiles.png new file mode 100644 index 00000000..1e1fc8e0 Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_small_tiles.png differ diff --git a/public/textures/rechiseled/mangrove_planks_small_tiles_connecting.png b/public/textures/rechiseled/mangrove_planks_small_tiles_connecting.png new file mode 100644 index 00000000..1e1fc8e0 Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/mangrove_planks_squares.png b/public/textures/rechiseled/mangrove_planks_squares.png new file mode 100644 index 00000000..1cac6ab8 Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_squares.png differ diff --git a/public/textures/rechiseled/mangrove_planks_squares_connecting.png b/public/textures/rechiseled/mangrove_planks_squares_connecting.png new file mode 100644 index 00000000..1cac6ab8 Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_squares_connecting.png differ diff --git a/public/textures/rechiseled/mangrove_planks_tiles.png b/public/textures/rechiseled/mangrove_planks_tiles.png new file mode 100644 index 00000000..f6951d41 Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_tiles.png differ diff --git a/public/textures/rechiseled/mangrove_planks_tiles_connecting.png b/public/textures/rechiseled/mangrove_planks_tiles_connecting.png new file mode 100644 index 00000000..f6951d41 Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_tiles_connecting.png differ diff --git a/public/textures/rechiseled/mangrove_planks_wavy.png b/public/textures/rechiseled/mangrove_planks_wavy.png new file mode 100644 index 00000000..c97c279c Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_wavy.png differ diff --git a/public/textures/rechiseled/mangrove_planks_wavy_connecting.png b/public/textures/rechiseled/mangrove_planks_wavy_connecting.png new file mode 100644 index 00000000..c97c279c Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_wavy_connecting.png differ diff --git a/public/textures/rechiseled/mangrove_planks_woven.png b/public/textures/rechiseled/mangrove_planks_woven.png new file mode 100644 index 00000000..8a12e20e Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_woven.png differ diff --git a/public/textures/rechiseled/mangrove_planks_woven_connecting.png b/public/textures/rechiseled/mangrove_planks_woven_connecting.png new file mode 100644 index 00000000..8a12e20e Binary files /dev/null and b/public/textures/rechiseled/mangrove_planks_woven_connecting.png differ diff --git a/public/textures/rechiseled/mossy_cobblestone_beams.png b/public/textures/rechiseled/mossy_cobblestone_beams.png new file mode 100644 index 00000000..9cadf73e Binary files /dev/null and b/public/textures/rechiseled/mossy_cobblestone_beams.png differ diff --git a/public/textures/rechiseled/mossy_cobblestone_beams_connecting.png b/public/textures/rechiseled/mossy_cobblestone_beams_connecting.png new file mode 100644 index 00000000..9cadf73e Binary files /dev/null and b/public/textures/rechiseled/mossy_cobblestone_beams_connecting.png differ diff --git a/public/textures/rechiseled/mossy_cobblestone_dented.png b/public/textures/rechiseled/mossy_cobblestone_dented.png new file mode 100644 index 00000000..93e7ab7f Binary files /dev/null and b/public/textures/rechiseled/mossy_cobblestone_dented.png differ diff --git a/public/textures/rechiseled/mossy_cobblestone_dented_connecting.png b/public/textures/rechiseled/mossy_cobblestone_dented_connecting.png new file mode 100644 index 00000000..93e7ab7f Binary files /dev/null and b/public/textures/rechiseled/mossy_cobblestone_dented_connecting.png differ diff --git a/public/textures/rechiseled/mossy_cobblestone_inverted_dented.png b/public/textures/rechiseled/mossy_cobblestone_inverted_dented.png new file mode 100644 index 00000000..384cd542 Binary files /dev/null and b/public/textures/rechiseled/mossy_cobblestone_inverted_dented.png differ diff --git a/public/textures/rechiseled/mossy_cobblestone_inverted_dented_connecting.png b/public/textures/rechiseled/mossy_cobblestone_inverted_dented_connecting.png new file mode 100644 index 00000000..384cd542 Binary files /dev/null and b/public/textures/rechiseled/mossy_cobblestone_inverted_dented_connecting.png differ diff --git a/public/textures/rechiseled/mossy_cobblestone_paving.png b/public/textures/rechiseled/mossy_cobblestone_paving.png new file mode 100644 index 00000000..33260cea Binary files /dev/null and b/public/textures/rechiseled/mossy_cobblestone_paving.png differ diff --git a/public/textures/rechiseled/mossy_cobblestone_paving_connecting.png b/public/textures/rechiseled/mossy_cobblestone_paving_connecting.png new file mode 100644 index 00000000..33260cea Binary files /dev/null and b/public/textures/rechiseled/mossy_cobblestone_paving_connecting.png differ diff --git a/public/textures/rechiseled/mossy_cobblestone_small_tiles.png b/public/textures/rechiseled/mossy_cobblestone_small_tiles.png new file mode 100644 index 00000000..27220786 Binary files /dev/null and b/public/textures/rechiseled/mossy_cobblestone_small_tiles.png differ diff --git a/public/textures/rechiseled/mossy_cobblestone_small_tiles_connecting.png b/public/textures/rechiseled/mossy_cobblestone_small_tiles_connecting.png new file mode 100644 index 00000000..27220786 Binary files /dev/null and b/public/textures/rechiseled/mossy_cobblestone_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/mossy_cobblestone_squares.png b/public/textures/rechiseled/mossy_cobblestone_squares.png new file mode 100644 index 00000000..3dcca37e Binary files /dev/null and b/public/textures/rechiseled/mossy_cobblestone_squares.png differ diff --git a/public/textures/rechiseled/mossy_cobblestone_squares_connecting.png b/public/textures/rechiseled/mossy_cobblestone_squares_connecting.png new file mode 100644 index 00000000..3dcca37e Binary files /dev/null and b/public/textures/rechiseled/mossy_cobblestone_squares_connecting.png differ diff --git a/public/textures/rechiseled/mossy_cobblestone_stripes.png b/public/textures/rechiseled/mossy_cobblestone_stripes.png new file mode 100644 index 00000000..214e643d Binary files /dev/null and b/public/textures/rechiseled/mossy_cobblestone_stripes.png differ diff --git a/public/textures/rechiseled/mossy_cobblestone_stripes_connecting.png b/public/textures/rechiseled/mossy_cobblestone_stripes_connecting.png new file mode 100644 index 00000000..214e643d Binary files /dev/null and b/public/textures/rechiseled/mossy_cobblestone_stripes_connecting.png differ diff --git a/public/textures/rechiseled/mossy_cobblestone_worn_stripes.png b/public/textures/rechiseled/mossy_cobblestone_worn_stripes.png new file mode 100644 index 00000000..42c9738e Binary files /dev/null and b/public/textures/rechiseled/mossy_cobblestone_worn_stripes.png differ diff --git a/public/textures/rechiseled/mossy_cobblestone_worn_stripes_connecting.png b/public/textures/rechiseled/mossy_cobblestone_worn_stripes_connecting.png new file mode 100644 index 00000000..42c9738e Binary files /dev/null and b/public/textures/rechiseled/mossy_cobblestone_worn_stripes_connecting.png differ diff --git a/public/textures/rechiseled/nether_bricks_beams.png b/public/textures/rechiseled/nether_bricks_beams.png new file mode 100644 index 00000000..3b38f049 Binary files /dev/null and b/public/textures/rechiseled/nether_bricks_beams.png differ diff --git a/public/textures/rechiseled/nether_bricks_beams_connecting.png b/public/textures/rechiseled/nether_bricks_beams_connecting.png new file mode 100644 index 00000000..3b38f049 Binary files /dev/null and b/public/textures/rechiseled/nether_bricks_beams_connecting.png differ diff --git a/public/textures/rechiseled/nether_bricks_brick_pattern.png b/public/textures/rechiseled/nether_bricks_brick_pattern.png new file mode 100644 index 00000000..9162eb4a Binary files /dev/null and b/public/textures/rechiseled/nether_bricks_brick_pattern.png differ diff --git a/public/textures/rechiseled/nether_bricks_brick_pattern_connecting.png b/public/textures/rechiseled/nether_bricks_brick_pattern_connecting.png new file mode 100644 index 00000000..9162eb4a Binary files /dev/null and b/public/textures/rechiseled/nether_bricks_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/nether_bricks_brick_paving.png b/public/textures/rechiseled/nether_bricks_brick_paving.png new file mode 100644 index 00000000..adb54f69 Binary files /dev/null and b/public/textures/rechiseled/nether_bricks_brick_paving.png differ diff --git a/public/textures/rechiseled/nether_bricks_brick_paving_connecting.png b/public/textures/rechiseled/nether_bricks_brick_paving_connecting.png new file mode 100644 index 00000000..adb54f69 Binary files /dev/null and b/public/textures/rechiseled/nether_bricks_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/nether_bricks_chiseled_squares.png b/public/textures/rechiseled/nether_bricks_chiseled_squares.png new file mode 100644 index 00000000..7eb966b2 Binary files /dev/null and b/public/textures/rechiseled/nether_bricks_chiseled_squares.png differ diff --git a/public/textures/rechiseled/nether_bricks_chiseled_squares_connecting.png b/public/textures/rechiseled/nether_bricks_chiseled_squares_connecting.png new file mode 100644 index 00000000..7eb966b2 Binary files /dev/null and b/public/textures/rechiseled/nether_bricks_chiseled_squares_connecting.png differ diff --git a/public/textures/rechiseled/nether_bricks_diagonal_bricks.png b/public/textures/rechiseled/nether_bricks_diagonal_bricks.png new file mode 100644 index 00000000..13b62a8a Binary files /dev/null and b/public/textures/rechiseled/nether_bricks_diagonal_bricks.png differ diff --git a/public/textures/rechiseled/nether_bricks_diagonal_bricks_connecting.png b/public/textures/rechiseled/nether_bricks_diagonal_bricks_connecting.png new file mode 100644 index 00000000..13b62a8a Binary files /dev/null and b/public/textures/rechiseled/nether_bricks_diagonal_bricks_connecting.png differ diff --git a/public/textures/rechiseled/nether_bricks_large_bricks.png b/public/textures/rechiseled/nether_bricks_large_bricks.png new file mode 100644 index 00000000..48e81ef3 Binary files /dev/null and b/public/textures/rechiseled/nether_bricks_large_bricks.png differ diff --git a/public/textures/rechiseled/nether_bricks_large_bricks_connecting.png b/public/textures/rechiseled/nether_bricks_large_bricks_connecting.png new file mode 100644 index 00000000..48e81ef3 Binary files /dev/null and b/public/textures/rechiseled/nether_bricks_large_bricks_connecting.png differ diff --git a/public/textures/rechiseled/nether_bricks_large_tiles.png b/public/textures/rechiseled/nether_bricks_large_tiles.png new file mode 100644 index 00000000..515b82ca Binary files /dev/null and b/public/textures/rechiseled/nether_bricks_large_tiles.png differ diff --git a/public/textures/rechiseled/nether_bricks_large_tiles_connecting.png b/public/textures/rechiseled/nether_bricks_large_tiles_connecting.png new file mode 100644 index 00000000..515b82ca Binary files /dev/null and b/public/textures/rechiseled/nether_bricks_large_tiles_connecting.png differ diff --git a/public/textures/rechiseled/nether_bricks_rotated_bricks.png b/public/textures/rechiseled/nether_bricks_rotated_bricks.png new file mode 100644 index 00000000..441b589d Binary files /dev/null and b/public/textures/rechiseled/nether_bricks_rotated_bricks.png differ diff --git a/public/textures/rechiseled/nether_bricks_rotated_bricks_connecting.png b/public/textures/rechiseled/nether_bricks_rotated_bricks_connecting.png new file mode 100644 index 00000000..441b589d Binary files /dev/null and b/public/textures/rechiseled/nether_bricks_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/nether_bricks_small_tiles.png b/public/textures/rechiseled/nether_bricks_small_tiles.png new file mode 100644 index 00000000..7930b887 Binary files /dev/null and b/public/textures/rechiseled/nether_bricks_small_tiles.png differ diff --git a/public/textures/rechiseled/nether_bricks_small_tiles_connecting.png b/public/textures/rechiseled/nether_bricks_small_tiles_connecting.png new file mode 100644 index 00000000..7930b887 Binary files /dev/null and b/public/textures/rechiseled/nether_bricks_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/nether_bricks_smooth.png b/public/textures/rechiseled/nether_bricks_smooth.png new file mode 100644 index 00000000..8760e101 Binary files /dev/null and b/public/textures/rechiseled/nether_bricks_smooth.png differ diff --git a/public/textures/rechiseled/nether_bricks_smooth_connecting.png b/public/textures/rechiseled/nether_bricks_smooth_connecting.png new file mode 100644 index 00000000..8760e101 Binary files /dev/null and b/public/textures/rechiseled/nether_bricks_smooth_connecting.png differ diff --git a/public/textures/rechiseled/nether_bricks_squares.png b/public/textures/rechiseled/nether_bricks_squares.png new file mode 100644 index 00000000..74768190 Binary files /dev/null and b/public/textures/rechiseled/nether_bricks_squares.png differ diff --git a/public/textures/rechiseled/nether_bricks_squares_connecting.png b/public/textures/rechiseled/nether_bricks_squares_connecting.png new file mode 100644 index 00000000..74768190 Binary files /dev/null and b/public/textures/rechiseled/nether_bricks_squares_connecting.png differ diff --git a/public/textures/rechiseled/nether_bricks_tiles.png b/public/textures/rechiseled/nether_bricks_tiles.png new file mode 100644 index 00000000..84a77a0a Binary files /dev/null and b/public/textures/rechiseled/nether_bricks_tiles.png differ diff --git a/public/textures/rechiseled/nether_bricks_tiles_connecting.png b/public/textures/rechiseled/nether_bricks_tiles_connecting.png new file mode 100644 index 00000000..84a77a0a Binary files /dev/null and b/public/textures/rechiseled/nether_bricks_tiles_connecting.png differ diff --git a/public/textures/rechiseled/netherite_block_beams.png b/public/textures/rechiseled/netherite_block_beams.png new file mode 100644 index 00000000..233397be Binary files /dev/null and b/public/textures/rechiseled/netherite_block_beams.png differ diff --git a/public/textures/rechiseled/netherite_block_beams_connecting.png b/public/textures/rechiseled/netherite_block_beams_connecting.png new file mode 100644 index 00000000..233397be Binary files /dev/null and b/public/textures/rechiseled/netherite_block_beams_connecting.png differ diff --git a/public/textures/rechiseled/netherite_block_bricks.png b/public/textures/rechiseled/netherite_block_bricks.png new file mode 100644 index 00000000..abedd69e Binary files /dev/null and b/public/textures/rechiseled/netherite_block_bricks.png differ diff --git a/public/textures/rechiseled/netherite_block_bricks_connecting.png b/public/textures/rechiseled/netherite_block_bricks_connecting.png new file mode 100644 index 00000000..abedd69e Binary files /dev/null and b/public/textures/rechiseled/netherite_block_bricks_connecting.png differ diff --git a/public/textures/rechiseled/netherite_block_chiseled.png b/public/textures/rechiseled/netherite_block_chiseled.png new file mode 100644 index 00000000..848ab8d8 Binary files /dev/null and b/public/textures/rechiseled/netherite_block_chiseled.png differ diff --git a/public/textures/rechiseled/netherite_block_chiseled_connecting.png b/public/textures/rechiseled/netherite_block_chiseled_connecting.png new file mode 100644 index 00000000..848ab8d8 Binary files /dev/null and b/public/textures/rechiseled/netherite_block_chiseled_connecting.png differ diff --git a/public/textures/rechiseled/netherite_block_compacted.png b/public/textures/rechiseled/netherite_block_compacted.png new file mode 100644 index 00000000..4b1fc66e Binary files /dev/null and b/public/textures/rechiseled/netherite_block_compacted.png differ diff --git a/public/textures/rechiseled/netherite_block_compacted_connecting.png b/public/textures/rechiseled/netherite_block_compacted_connecting.png new file mode 100644 index 00000000..4b1fc66e Binary files /dev/null and b/public/textures/rechiseled/netherite_block_compacted_connecting.png differ diff --git a/public/textures/rechiseled/netherite_block_decorated.png b/public/textures/rechiseled/netherite_block_decorated.png new file mode 100644 index 00000000..05890edd Binary files /dev/null and b/public/textures/rechiseled/netherite_block_decorated.png differ diff --git a/public/textures/rechiseled/netherite_block_decorated_connecting.png b/public/textures/rechiseled/netherite_block_decorated_connecting.png new file mode 100644 index 00000000..05890edd Binary files /dev/null and b/public/textures/rechiseled/netherite_block_decorated_connecting.png differ diff --git a/public/textures/rechiseled/netherite_block_diagonal_tiles.png b/public/textures/rechiseled/netherite_block_diagonal_tiles.png new file mode 100644 index 00000000..ea389173 Binary files /dev/null and b/public/textures/rechiseled/netherite_block_diagonal_tiles.png differ diff --git a/public/textures/rechiseled/netherite_block_diagonal_tiles_connecting.png b/public/textures/rechiseled/netherite_block_diagonal_tiles_connecting.png new file mode 100644 index 00000000..ea389173 Binary files /dev/null and b/public/textures/rechiseled/netherite_block_diagonal_tiles_connecting.png differ diff --git a/public/textures/rechiseled/netherite_block_indented.png b/public/textures/rechiseled/netherite_block_indented.png new file mode 100644 index 00000000..7bf82551 Binary files /dev/null and b/public/textures/rechiseled/netherite_block_indented.png differ diff --git a/public/textures/rechiseled/netherite_block_indented_connecting.png b/public/textures/rechiseled/netherite_block_indented_connecting.png new file mode 100644 index 00000000..7bf82551 Binary files /dev/null and b/public/textures/rechiseled/netherite_block_indented_connecting.png differ diff --git a/public/textures/rechiseled/netherite_block_meteoric.png b/public/textures/rechiseled/netherite_block_meteoric.png new file mode 100644 index 00000000..8c0be026 Binary files /dev/null and b/public/textures/rechiseled/netherite_block_meteoric.png differ diff --git a/public/textures/rechiseled/netherite_block_patterned.png b/public/textures/rechiseled/netherite_block_patterned.png new file mode 100644 index 00000000..b9d9a5d7 Binary files /dev/null and b/public/textures/rechiseled/netherite_block_patterned.png differ diff --git a/public/textures/rechiseled/netherite_block_patterned_connecting.png b/public/textures/rechiseled/netherite_block_patterned_connecting.png new file mode 100644 index 00000000..b9d9a5d7 Binary files /dev/null and b/public/textures/rechiseled/netherite_block_patterned_connecting.png differ diff --git a/public/textures/rechiseled/netherite_block_pillar.png b/public/textures/rechiseled/netherite_block_pillar.png new file mode 100644 index 00000000..ac3cb891 Binary files /dev/null and b/public/textures/rechiseled/netherite_block_pillar.png differ diff --git a/public/textures/rechiseled/netherite_block_pillar_connecting.png b/public/textures/rechiseled/netherite_block_pillar_connecting.png new file mode 100644 index 00000000..ac3cb891 Binary files /dev/null and b/public/textures/rechiseled/netherite_block_pillar_connecting.png differ diff --git a/public/textures/rechiseled/netherite_block_small_tiles.png b/public/textures/rechiseled/netherite_block_small_tiles.png new file mode 100644 index 00000000..bfd51047 Binary files /dev/null and b/public/textures/rechiseled/netherite_block_small_tiles.png differ diff --git a/public/textures/rechiseled/netherite_block_small_tiles_connecting.png b/public/textures/rechiseled/netherite_block_small_tiles_connecting.png new file mode 100644 index 00000000..bfd51047 Binary files /dev/null and b/public/textures/rechiseled/netherite_block_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/netherite_block_smooth.png b/public/textures/rechiseled/netherite_block_smooth.png new file mode 100644 index 00000000..7cc73021 Binary files /dev/null and b/public/textures/rechiseled/netherite_block_smooth.png differ diff --git a/public/textures/rechiseled/netherrack_beams.png b/public/textures/rechiseled/netherrack_beams.png new file mode 100644 index 00000000..52663e19 Binary files /dev/null and b/public/textures/rechiseled/netherrack_beams.png differ diff --git a/public/textures/rechiseled/netherrack_beams_connecting.png b/public/textures/rechiseled/netherrack_beams_connecting.png new file mode 100644 index 00000000..52663e19 Binary files /dev/null and b/public/textures/rechiseled/netherrack_beams_connecting.png differ diff --git a/public/textures/rechiseled/netherrack_brick_pattern.png b/public/textures/rechiseled/netherrack_brick_pattern.png new file mode 100644 index 00000000..71f420ff Binary files /dev/null and b/public/textures/rechiseled/netherrack_brick_pattern.png differ diff --git a/public/textures/rechiseled/netherrack_brick_pattern_connecting.png b/public/textures/rechiseled/netherrack_brick_pattern_connecting.png new file mode 100644 index 00000000..71f420ff Binary files /dev/null and b/public/textures/rechiseled/netherrack_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/netherrack_brick_paving.png b/public/textures/rechiseled/netherrack_brick_paving.png new file mode 100644 index 00000000..d0f68187 Binary files /dev/null and b/public/textures/rechiseled/netherrack_brick_paving.png differ diff --git a/public/textures/rechiseled/netherrack_brick_paving_connecting.png b/public/textures/rechiseled/netherrack_brick_paving_connecting.png new file mode 100644 index 00000000..d0f68187 Binary files /dev/null and b/public/textures/rechiseled/netherrack_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/netherrack_bricks.png b/public/textures/rechiseled/netherrack_bricks.png new file mode 100644 index 00000000..c0a4f8ee Binary files /dev/null and b/public/textures/rechiseled/netherrack_bricks.png differ diff --git a/public/textures/rechiseled/netherrack_bricks_connecting.png b/public/textures/rechiseled/netherrack_bricks_connecting.png new file mode 100644 index 00000000..c0a4f8ee Binary files /dev/null and b/public/textures/rechiseled/netherrack_bricks_connecting.png differ diff --git a/public/textures/rechiseled/netherrack_dented.png b/public/textures/rechiseled/netherrack_dented.png new file mode 100644 index 00000000..84d82759 Binary files /dev/null and b/public/textures/rechiseled/netherrack_dented.png differ diff --git a/public/textures/rechiseled/netherrack_dented_connecting.png b/public/textures/rechiseled/netherrack_dented_connecting.png new file mode 100644 index 00000000..84d82759 Binary files /dev/null and b/public/textures/rechiseled/netherrack_dented_connecting.png differ diff --git a/public/textures/rechiseled/netherrack_rotated_bricks.png b/public/textures/rechiseled/netherrack_rotated_bricks.png new file mode 100644 index 00000000..a4e7a517 Binary files /dev/null and b/public/textures/rechiseled/netherrack_rotated_bricks.png differ diff --git a/public/textures/rechiseled/netherrack_rotated_bricks_connecting.png b/public/textures/rechiseled/netherrack_rotated_bricks_connecting.png new file mode 100644 index 00000000..a4e7a517 Binary files /dev/null and b/public/textures/rechiseled/netherrack_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/netherrack_small_tiles.png b/public/textures/rechiseled/netherrack_small_tiles.png new file mode 100644 index 00000000..08ac3925 Binary files /dev/null and b/public/textures/rechiseled/netherrack_small_tiles.png differ diff --git a/public/textures/rechiseled/netherrack_small_tiles_connecting.png b/public/textures/rechiseled/netherrack_small_tiles_connecting.png new file mode 100644 index 00000000..08ac3925 Binary files /dev/null and b/public/textures/rechiseled/netherrack_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/netherrack_stripes.png b/public/textures/rechiseled/netherrack_stripes.png new file mode 100644 index 00000000..c241cc07 Binary files /dev/null and b/public/textures/rechiseled/netherrack_stripes.png differ diff --git a/public/textures/rechiseled/netherrack_stripes_connecting.png b/public/textures/rechiseled/netherrack_stripes_connecting.png new file mode 100644 index 00000000..c241cc07 Binary files /dev/null and b/public/textures/rechiseled/netherrack_stripes_connecting.png differ diff --git a/public/textures/rechiseled/netherrack_tiles.png b/public/textures/rechiseled/netherrack_tiles.png new file mode 100644 index 00000000..bfbf11fc Binary files /dev/null and b/public/textures/rechiseled/netherrack_tiles.png differ diff --git a/public/textures/rechiseled/netherrack_tiles_connecting.png b/public/textures/rechiseled/netherrack_tiles_connecting.png new file mode 100644 index 00000000..bfbf11fc Binary files /dev/null and b/public/textures/rechiseled/netherrack_tiles_connecting.png differ diff --git a/public/textures/rechiseled/oak_planks_beams.png b/public/textures/rechiseled/oak_planks_beams.png new file mode 100644 index 00000000..f924c1fd Binary files /dev/null and b/public/textures/rechiseled/oak_planks_beams.png differ diff --git a/public/textures/rechiseled/oak_planks_beams_connecting.png b/public/textures/rechiseled/oak_planks_beams_connecting.png new file mode 100644 index 00000000..f924c1fd Binary files /dev/null and b/public/textures/rechiseled/oak_planks_beams_connecting.png differ diff --git a/public/textures/rechiseled/oak_planks_brick_pattern.png b/public/textures/rechiseled/oak_planks_brick_pattern.png new file mode 100644 index 00000000..80a04260 Binary files /dev/null and b/public/textures/rechiseled/oak_planks_brick_pattern.png differ diff --git a/public/textures/rechiseled/oak_planks_brick_pattern_connecting.png b/public/textures/rechiseled/oak_planks_brick_pattern_connecting.png new file mode 100644 index 00000000..80a04260 Binary files /dev/null and b/public/textures/rechiseled/oak_planks_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/oak_planks_brick_paving.png b/public/textures/rechiseled/oak_planks_brick_paving.png new file mode 100644 index 00000000..694547b4 Binary files /dev/null and b/public/textures/rechiseled/oak_planks_brick_paving.png differ diff --git a/public/textures/rechiseled/oak_planks_brick_paving_connecting.png b/public/textures/rechiseled/oak_planks_brick_paving_connecting.png new file mode 100644 index 00000000..694547b4 Binary files /dev/null and b/public/textures/rechiseled/oak_planks_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/oak_planks_bricks.png b/public/textures/rechiseled/oak_planks_bricks.png new file mode 100644 index 00000000..611440e7 Binary files /dev/null and b/public/textures/rechiseled/oak_planks_bricks.png differ diff --git a/public/textures/rechiseled/oak_planks_bricks_connecting.png b/public/textures/rechiseled/oak_planks_bricks_connecting.png new file mode 100644 index 00000000..611440e7 Binary files /dev/null and b/public/textures/rechiseled/oak_planks_bricks_connecting.png differ diff --git a/public/textures/rechiseled/oak_planks_crate.png b/public/textures/rechiseled/oak_planks_crate.png new file mode 100644 index 00000000..3dff7fe9 Binary files /dev/null and b/public/textures/rechiseled/oak_planks_crate.png differ diff --git a/public/textures/rechiseled/oak_planks_crate_connecting.png b/public/textures/rechiseled/oak_planks_crate_connecting.png new file mode 100644 index 00000000..3dff7fe9 Binary files /dev/null and b/public/textures/rechiseled/oak_planks_crate_connecting.png differ diff --git a/public/textures/rechiseled/oak_planks_diagonal_stripes.png b/public/textures/rechiseled/oak_planks_diagonal_stripes.png new file mode 100644 index 00000000..bb9e7700 Binary files /dev/null and b/public/textures/rechiseled/oak_planks_diagonal_stripes.png differ diff --git a/public/textures/rechiseled/oak_planks_diagonal_stripes_connecting.png b/public/textures/rechiseled/oak_planks_diagonal_stripes_connecting.png new file mode 100644 index 00000000..bb9e7700 Binary files /dev/null and b/public/textures/rechiseled/oak_planks_diagonal_stripes_connecting.png differ diff --git a/public/textures/rechiseled/oak_planks_diagonal_tiles.png b/public/textures/rechiseled/oak_planks_diagonal_tiles.png new file mode 100644 index 00000000..d02a0247 Binary files /dev/null and b/public/textures/rechiseled/oak_planks_diagonal_tiles.png differ diff --git a/public/textures/rechiseled/oak_planks_diagonal_tiles_connecting.png b/public/textures/rechiseled/oak_planks_diagonal_tiles_connecting.png new file mode 100644 index 00000000..d02a0247 Binary files /dev/null and b/public/textures/rechiseled/oak_planks_diagonal_tiles_connecting.png differ diff --git a/public/textures/rechiseled/oak_planks_dotted.png b/public/textures/rechiseled/oak_planks_dotted.png new file mode 100644 index 00000000..972391b7 Binary files /dev/null and b/public/textures/rechiseled/oak_planks_dotted.png differ diff --git a/public/textures/rechiseled/oak_planks_dotted_connecting.png b/public/textures/rechiseled/oak_planks_dotted_connecting.png new file mode 100644 index 00000000..972391b7 Binary files /dev/null and b/public/textures/rechiseled/oak_planks_dotted_connecting.png differ diff --git a/public/textures/rechiseled/oak_planks_flooring.png b/public/textures/rechiseled/oak_planks_flooring.png new file mode 100644 index 00000000..0ebee18c Binary files /dev/null and b/public/textures/rechiseled/oak_planks_flooring.png differ diff --git a/public/textures/rechiseled/oak_planks_flooring_connecting.png b/public/textures/rechiseled/oak_planks_flooring_connecting.png new file mode 100644 index 00000000..0ebee18c Binary files /dev/null and b/public/textures/rechiseled/oak_planks_flooring_connecting.png differ diff --git a/public/textures/rechiseled/oak_planks_large_tiles.png b/public/textures/rechiseled/oak_planks_large_tiles.png new file mode 100644 index 00000000..7c10d6de Binary files /dev/null and b/public/textures/rechiseled/oak_planks_large_tiles.png differ diff --git a/public/textures/rechiseled/oak_planks_large_tiles_connecting.png b/public/textures/rechiseled/oak_planks_large_tiles_connecting.png new file mode 100644 index 00000000..7c10d6de Binary files /dev/null and b/public/textures/rechiseled/oak_planks_large_tiles_connecting.png differ diff --git a/public/textures/rechiseled/oak_planks_mosaic.png b/public/textures/rechiseled/oak_planks_mosaic.png new file mode 100644 index 00000000..101f4a42 Binary files /dev/null and b/public/textures/rechiseled/oak_planks_mosaic.png differ diff --git a/public/textures/rechiseled/oak_planks_pattern.png b/public/textures/rechiseled/oak_planks_pattern.png new file mode 100644 index 00000000..56b243cd Binary files /dev/null and b/public/textures/rechiseled/oak_planks_pattern.png differ diff --git a/public/textures/rechiseled/oak_planks_pattern_connecting.png b/public/textures/rechiseled/oak_planks_pattern_connecting.png new file mode 100644 index 00000000..56b243cd Binary files /dev/null and b/public/textures/rechiseled/oak_planks_pattern_connecting.png differ diff --git a/public/textures/rechiseled/oak_planks_rotated_bricks.png b/public/textures/rechiseled/oak_planks_rotated_bricks.png new file mode 100644 index 00000000..92b1ec26 Binary files /dev/null and b/public/textures/rechiseled/oak_planks_rotated_bricks.png differ diff --git a/public/textures/rechiseled/oak_planks_rotated_bricks_connecting.png b/public/textures/rechiseled/oak_planks_rotated_bricks_connecting.png new file mode 100644 index 00000000..92b1ec26 Binary files /dev/null and b/public/textures/rechiseled/oak_planks_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/oak_planks_small_bricks.png b/public/textures/rechiseled/oak_planks_small_bricks.png new file mode 100644 index 00000000..4fe0c095 Binary files /dev/null and b/public/textures/rechiseled/oak_planks_small_bricks.png differ diff --git a/public/textures/rechiseled/oak_planks_small_bricks_connecting.png b/public/textures/rechiseled/oak_planks_small_bricks_connecting.png new file mode 100644 index 00000000..4fe0c095 Binary files /dev/null and b/public/textures/rechiseled/oak_planks_small_bricks_connecting.png differ diff --git a/public/textures/rechiseled/oak_planks_small_tiles.png b/public/textures/rechiseled/oak_planks_small_tiles.png new file mode 100644 index 00000000..686a015b Binary files /dev/null and b/public/textures/rechiseled/oak_planks_small_tiles.png differ diff --git a/public/textures/rechiseled/oak_planks_small_tiles_connecting.png b/public/textures/rechiseled/oak_planks_small_tiles_connecting.png new file mode 100644 index 00000000..686a015b Binary files /dev/null and b/public/textures/rechiseled/oak_planks_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/oak_planks_squares.png b/public/textures/rechiseled/oak_planks_squares.png new file mode 100644 index 00000000..3b9832c0 Binary files /dev/null and b/public/textures/rechiseled/oak_planks_squares.png differ diff --git a/public/textures/rechiseled/oak_planks_squares_connecting.png b/public/textures/rechiseled/oak_planks_squares_connecting.png new file mode 100644 index 00000000..3b9832c0 Binary files /dev/null and b/public/textures/rechiseled/oak_planks_squares_connecting.png differ diff --git a/public/textures/rechiseled/oak_planks_tiles.png b/public/textures/rechiseled/oak_planks_tiles.png new file mode 100644 index 00000000..6ca34fdf Binary files /dev/null and b/public/textures/rechiseled/oak_planks_tiles.png differ diff --git a/public/textures/rechiseled/oak_planks_tiles_connecting.png b/public/textures/rechiseled/oak_planks_tiles_connecting.png new file mode 100644 index 00000000..6ca34fdf Binary files /dev/null and b/public/textures/rechiseled/oak_planks_tiles_connecting.png differ diff --git a/public/textures/rechiseled/oak_planks_wavy.png b/public/textures/rechiseled/oak_planks_wavy.png new file mode 100644 index 00000000..144ef971 Binary files /dev/null and b/public/textures/rechiseled/oak_planks_wavy.png differ diff --git a/public/textures/rechiseled/oak_planks_wavy_connecting.png b/public/textures/rechiseled/oak_planks_wavy_connecting.png new file mode 100644 index 00000000..144ef971 Binary files /dev/null and b/public/textures/rechiseled/oak_planks_wavy_connecting.png differ diff --git a/public/textures/rechiseled/oak_planks_woven.png b/public/textures/rechiseled/oak_planks_woven.png new file mode 100644 index 00000000..0993ff13 Binary files /dev/null and b/public/textures/rechiseled/oak_planks_woven.png differ diff --git a/public/textures/rechiseled/oak_planks_woven_connecting.png b/public/textures/rechiseled/oak_planks_woven_connecting.png new file mode 100644 index 00000000..0993ff13 Binary files /dev/null and b/public/textures/rechiseled/oak_planks_woven_connecting.png differ diff --git a/public/textures/rechiseled/obsidian_bordered.png b/public/textures/rechiseled/obsidian_bordered.png new file mode 100644 index 00000000..d0378ffd Binary files /dev/null and b/public/textures/rechiseled/obsidian_bordered.png differ diff --git a/public/textures/rechiseled/obsidian_bordered_connecting.png b/public/textures/rechiseled/obsidian_bordered_connecting.png new file mode 100644 index 00000000..d0378ffd Binary files /dev/null and b/public/textures/rechiseled/obsidian_bordered_connecting.png differ diff --git a/public/textures/rechiseled/obsidian_brick_pattern.png b/public/textures/rechiseled/obsidian_brick_pattern.png new file mode 100644 index 00000000..a359667d Binary files /dev/null and b/public/textures/rechiseled/obsidian_brick_pattern.png differ diff --git a/public/textures/rechiseled/obsidian_brick_pattern_connecting.png b/public/textures/rechiseled/obsidian_brick_pattern_connecting.png new file mode 100644 index 00000000..a359667d Binary files /dev/null and b/public/textures/rechiseled/obsidian_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/obsidian_brick_paving.png b/public/textures/rechiseled/obsidian_brick_paving.png new file mode 100644 index 00000000..6e5a4519 Binary files /dev/null and b/public/textures/rechiseled/obsidian_brick_paving.png differ diff --git a/public/textures/rechiseled/obsidian_brick_paving_connecting.png b/public/textures/rechiseled/obsidian_brick_paving_connecting.png new file mode 100644 index 00000000..6e5a4519 Binary files /dev/null and b/public/textures/rechiseled/obsidian_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/obsidian_bricks.png b/public/textures/rechiseled/obsidian_bricks.png new file mode 100644 index 00000000..32e9abf1 Binary files /dev/null and b/public/textures/rechiseled/obsidian_bricks.png differ diff --git a/public/textures/rechiseled/obsidian_bricks_connecting.png b/public/textures/rechiseled/obsidian_bricks_connecting.png new file mode 100644 index 00000000..32e9abf1 Binary files /dev/null and b/public/textures/rechiseled/obsidian_bricks_connecting.png differ diff --git a/public/textures/rechiseled/obsidian_chiseled.png b/public/textures/rechiseled/obsidian_chiseled.png new file mode 100644 index 00000000..1e2891ea Binary files /dev/null and b/public/textures/rechiseled/obsidian_chiseled.png differ diff --git a/public/textures/rechiseled/obsidian_chiseled_circles.png b/public/textures/rechiseled/obsidian_chiseled_circles.png new file mode 100644 index 00000000..7266d45f Binary files /dev/null and b/public/textures/rechiseled/obsidian_chiseled_circles.png differ diff --git a/public/textures/rechiseled/obsidian_chiseled_circles_connecting.png b/public/textures/rechiseled/obsidian_chiseled_circles_connecting.png new file mode 100644 index 00000000..7266d45f Binary files /dev/null and b/public/textures/rechiseled/obsidian_chiseled_circles_connecting.png differ diff --git a/public/textures/rechiseled/obsidian_chiseled_connecting.png b/public/textures/rechiseled/obsidian_chiseled_connecting.png new file mode 100644 index 00000000..1e2891ea Binary files /dev/null and b/public/textures/rechiseled/obsidian_chiseled_connecting.png differ diff --git a/public/textures/rechiseled/obsidian_chiseled_creeper.png b/public/textures/rechiseled/obsidian_chiseled_creeper.png new file mode 100644 index 00000000..df7469ac Binary files /dev/null and b/public/textures/rechiseled/obsidian_chiseled_creeper.png differ diff --git a/public/textures/rechiseled/obsidian_chiseled_skeleton.png b/public/textures/rechiseled/obsidian_chiseled_skeleton.png new file mode 100644 index 00000000..0ccb490c Binary files /dev/null and b/public/textures/rechiseled/obsidian_chiseled_skeleton.png differ diff --git a/public/textures/rechiseled/obsidian_dark.png b/public/textures/rechiseled/obsidian_dark.png new file mode 100644 index 00000000..e48262ee Binary files /dev/null and b/public/textures/rechiseled/obsidian_dark.png differ diff --git a/public/textures/rechiseled/obsidian_dark_connecting.png b/public/textures/rechiseled/obsidian_dark_connecting.png new file mode 100644 index 00000000..e48262ee Binary files /dev/null and b/public/textures/rechiseled/obsidian_dark_connecting.png differ diff --git a/public/textures/rechiseled/obsidian_large_tiles.png b/public/textures/rechiseled/obsidian_large_tiles.png new file mode 100644 index 00000000..625131fe Binary files /dev/null and b/public/textures/rechiseled/obsidian_large_tiles.png differ diff --git a/public/textures/rechiseled/obsidian_pillars.png b/public/textures/rechiseled/obsidian_pillars.png new file mode 100644 index 00000000..b24f86bd Binary files /dev/null and b/public/textures/rechiseled/obsidian_pillars.png differ diff --git a/public/textures/rechiseled/obsidian_pillars_connecting.png b/public/textures/rechiseled/obsidian_pillars_connecting.png new file mode 100644 index 00000000..b24f86bd Binary files /dev/null and b/public/textures/rechiseled/obsidian_pillars_connecting.png differ diff --git a/public/textures/rechiseled/obsidian_rotated_bricks.png b/public/textures/rechiseled/obsidian_rotated_bricks.png new file mode 100644 index 00000000..62501fe2 Binary files /dev/null and b/public/textures/rechiseled/obsidian_rotated_bricks.png differ diff --git a/public/textures/rechiseled/obsidian_rotated_bricks_connecting.png b/public/textures/rechiseled/obsidian_rotated_bricks_connecting.png new file mode 100644 index 00000000..62501fe2 Binary files /dev/null and b/public/textures/rechiseled/obsidian_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/obsidian_spots.png b/public/textures/rechiseled/obsidian_spots.png new file mode 100644 index 00000000..1776a0ea Binary files /dev/null and b/public/textures/rechiseled/obsidian_spots.png differ diff --git a/public/textures/rechiseled/obsidian_spots_connecting.png b/public/textures/rechiseled/obsidian_spots_connecting.png new file mode 100644 index 00000000..1776a0ea Binary files /dev/null and b/public/textures/rechiseled/obsidian_spots_connecting.png differ diff --git a/public/textures/rechiseled/obsidian_squares.png b/public/textures/rechiseled/obsidian_squares.png new file mode 100644 index 00000000..61fb1a34 Binary files /dev/null and b/public/textures/rechiseled/obsidian_squares.png differ diff --git a/public/textures/rechiseled/obsidian_squares_connecting.png b/public/textures/rechiseled/obsidian_squares_connecting.png new file mode 100644 index 00000000..61fb1a34 Binary files /dev/null and b/public/textures/rechiseled/obsidian_squares_connecting.png differ diff --git a/public/textures/rechiseled/obsidian_stripes.png b/public/textures/rechiseled/obsidian_stripes.png new file mode 100644 index 00000000..2b77dc65 Binary files /dev/null and b/public/textures/rechiseled/obsidian_stripes.png differ diff --git a/public/textures/rechiseled/obsidian_stripes_connecting.png b/public/textures/rechiseled/obsidian_stripes_connecting.png new file mode 100644 index 00000000..2b77dc65 Binary files /dev/null and b/public/textures/rechiseled/obsidian_stripes_connecting.png differ diff --git a/public/textures/rechiseled/obsidian_tiles.png b/public/textures/rechiseled/obsidian_tiles.png new file mode 100644 index 00000000..7ceda8bc Binary files /dev/null and b/public/textures/rechiseled/obsidian_tiles.png differ diff --git a/public/textures/rechiseled/obsidian_tiles_connecting.png b/public/textures/rechiseled/obsidian_tiles_connecting.png new file mode 100644 index 00000000..7ceda8bc Binary files /dev/null and b/public/textures/rechiseled/obsidian_tiles_connecting.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_beams.png b/public/textures/rechiseled/prismarine_bricks_beams.png new file mode 100644 index 00000000..7b03ed89 Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_beams.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_beams_connecting.png b/public/textures/rechiseled/prismarine_bricks_beams_connecting.png new file mode 100644 index 00000000..7b03ed89 Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_beams_connecting.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_brick_pattern.png b/public/textures/rechiseled/prismarine_bricks_brick_pattern.png new file mode 100644 index 00000000..6cbc7fd4 Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_brick_pattern.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_brick_pattern_connecting.png b/public/textures/rechiseled/prismarine_bricks_brick_pattern_connecting.png new file mode 100644 index 00000000..6cbc7fd4 Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_brick_paving.png b/public/textures/rechiseled/prismarine_bricks_brick_paving.png new file mode 100644 index 00000000..6d0fd154 Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_brick_paving.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_brick_paving_connecting.png b/public/textures/rechiseled/prismarine_bricks_brick_paving_connecting.png new file mode 100644 index 00000000..6d0fd154 Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_bricks.png b/public/textures/rechiseled/prismarine_bricks_bricks.png new file mode 100644 index 00000000..f21c3fd5 Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_bricks.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_bricks_connecting.png b/public/textures/rechiseled/prismarine_bricks_bricks_connecting.png new file mode 100644 index 00000000..f21c3fd5 Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_bricks_connecting.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_chiseled_circles.png b/public/textures/rechiseled/prismarine_bricks_chiseled_circles.png new file mode 100644 index 00000000..bffe5a9c Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_chiseled_circles.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_chiseled_circles_connecting.png b/public/textures/rechiseled/prismarine_bricks_chiseled_circles_connecting.png new file mode 100644 index 00000000..bffe5a9c Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_chiseled_circles_connecting.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_chiseled_squares.png b/public/textures/rechiseled/prismarine_bricks_chiseled_squares.png new file mode 100644 index 00000000..1d645b85 Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_chiseled_squares.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_chiseled_squares_connecting.png b/public/textures/rechiseled/prismarine_bricks_chiseled_squares_connecting.png new file mode 100644 index 00000000..1d645b85 Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_chiseled_squares_connecting.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_diagonal_bricks.png b/public/textures/rechiseled/prismarine_bricks_diagonal_bricks.png new file mode 100644 index 00000000..da61c2cb Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_diagonal_bricks.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_diagonal_bricks_connecting.png b/public/textures/rechiseled/prismarine_bricks_diagonal_bricks_connecting.png new file mode 100644 index 00000000..da61c2cb Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_diagonal_bricks_connecting.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_diagonal_tiles.png b/public/textures/rechiseled/prismarine_bricks_diagonal_tiles.png new file mode 100644 index 00000000..cb3b5e60 Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_diagonal_tiles.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_diagonal_tiles_connecting.png b/public/textures/rechiseled/prismarine_bricks_diagonal_tiles_connecting.png new file mode 100644 index 00000000..cb3b5e60 Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_diagonal_tiles_connecting.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_dotted.png b/public/textures/rechiseled/prismarine_bricks_dotted.png new file mode 100644 index 00000000..5a4209db Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_dotted.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_dotted_connecting.png b/public/textures/rechiseled/prismarine_bricks_dotted_connecting.png new file mode 100644 index 00000000..5a4209db Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_dotted_connecting.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_pillars.png b/public/textures/rechiseled/prismarine_bricks_pillars.png new file mode 100644 index 00000000..f4af8462 Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_pillars.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_pillars_connecting.png b/public/textures/rechiseled/prismarine_bricks_pillars_connecting.png new file mode 100644 index 00000000..f4af8462 Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_pillars_connecting.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_polished.png b/public/textures/rechiseled/prismarine_bricks_polished.png new file mode 100644 index 00000000..dcf94276 Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_polished.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_polished_connecting.png b/public/textures/rechiseled/prismarine_bricks_polished_connecting.png new file mode 100644 index 00000000..dcf94276 Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_polished_connecting.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_rotated_bricks.png b/public/textures/rechiseled/prismarine_bricks_rotated_bricks.png new file mode 100644 index 00000000..eeaab67d Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_rotated_bricks.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_rotated_bricks_connecting.png b/public/textures/rechiseled/prismarine_bricks_rotated_bricks_connecting.png new file mode 100644 index 00000000..eeaab67d Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_rows.png b/public/textures/rechiseled/prismarine_bricks_rows.png new file mode 100644 index 00000000..5cefc145 Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_rows.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_rows_connecting.png b/public/textures/rechiseled/prismarine_bricks_rows_connecting.png new file mode 100644 index 00000000..5cefc145 Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_rows_connecting.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_small_tiles.png b/public/textures/rechiseled/prismarine_bricks_small_tiles.png new file mode 100644 index 00000000..9459a860 Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_small_tiles.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_small_tiles_connecting.png b/public/textures/rechiseled/prismarine_bricks_small_tiles_connecting.png new file mode 100644 index 00000000..9459a860 Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_squares.png b/public/textures/rechiseled/prismarine_bricks_squares.png new file mode 100644 index 00000000..fc8ffe5c Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_squares.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_squares_connecting.png b/public/textures/rechiseled/prismarine_bricks_squares_connecting.png new file mode 100644 index 00000000..fc8ffe5c Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_squares_connecting.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_tiles.png b/public/textures/rechiseled/prismarine_bricks_tiles.png new file mode 100644 index 00000000..badf11d3 Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_tiles.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_tiles_connecting.png b/public/textures/rechiseled/prismarine_bricks_tiles_connecting.png new file mode 100644 index 00000000..badf11d3 Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_tiles_connecting.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_wavy.png b/public/textures/rechiseled/prismarine_bricks_wavy.png new file mode 100644 index 00000000..5d309776 Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_wavy.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_wavy_connecting.png b/public/textures/rechiseled/prismarine_bricks_wavy_connecting.png new file mode 100644 index 00000000..5d309776 Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_wavy_connecting.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_woven.png b/public/textures/rechiseled/prismarine_bricks_woven.png new file mode 100644 index 00000000..7e4df861 Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_woven.png differ diff --git a/public/textures/rechiseled/prismarine_bricks_woven_connecting.png b/public/textures/rechiseled/prismarine_bricks_woven_connecting.png new file mode 100644 index 00000000..7e4df861 Binary files /dev/null and b/public/textures/rechiseled/prismarine_bricks_woven_connecting.png differ diff --git a/public/textures/rechiseled/purpur_brick_pattern.png b/public/textures/rechiseled/purpur_brick_pattern.png new file mode 100644 index 00000000..eee0c281 Binary files /dev/null and b/public/textures/rechiseled/purpur_brick_pattern.png differ diff --git a/public/textures/rechiseled/purpur_brick_pattern_connecting.png b/public/textures/rechiseled/purpur_brick_pattern_connecting.png new file mode 100644 index 00000000..eee0c281 Binary files /dev/null and b/public/textures/rechiseled/purpur_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/purpur_brick_paving.png b/public/textures/rechiseled/purpur_brick_paving.png new file mode 100644 index 00000000..a0179b79 Binary files /dev/null and b/public/textures/rechiseled/purpur_brick_paving.png differ diff --git a/public/textures/rechiseled/purpur_brick_paving_connecting.png b/public/textures/rechiseled/purpur_brick_paving_connecting.png new file mode 100644 index 00000000..a0179b79 Binary files /dev/null and b/public/textures/rechiseled/purpur_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/purpur_bricks.png b/public/textures/rechiseled/purpur_bricks.png new file mode 100644 index 00000000..a2c972de Binary files /dev/null and b/public/textures/rechiseled/purpur_bricks.png differ diff --git a/public/textures/rechiseled/purpur_bricks_connecting.png b/public/textures/rechiseled/purpur_bricks_connecting.png new file mode 100644 index 00000000..a2c972de Binary files /dev/null and b/public/textures/rechiseled/purpur_bricks_connecting.png differ diff --git a/public/textures/rechiseled/purpur_diagonal_bricks.png b/public/textures/rechiseled/purpur_diagonal_bricks.png new file mode 100644 index 00000000..040a2f41 Binary files /dev/null and b/public/textures/rechiseled/purpur_diagonal_bricks.png differ diff --git a/public/textures/rechiseled/purpur_diagonal_bricks_connecting.png b/public/textures/rechiseled/purpur_diagonal_bricks_connecting.png new file mode 100644 index 00000000..040a2f41 Binary files /dev/null and b/public/textures/rechiseled/purpur_diagonal_bricks_connecting.png differ diff --git a/public/textures/rechiseled/purpur_diagonal_tiles.png b/public/textures/rechiseled/purpur_diagonal_tiles.png new file mode 100644 index 00000000..1d507604 Binary files /dev/null and b/public/textures/rechiseled/purpur_diagonal_tiles.png differ diff --git a/public/textures/rechiseled/purpur_diagonal_tiles_connecting.png b/public/textures/rechiseled/purpur_diagonal_tiles_connecting.png new file mode 100644 index 00000000..1d507604 Binary files /dev/null and b/public/textures/rechiseled/purpur_diagonal_tiles_connecting.png differ diff --git a/public/textures/rechiseled/purpur_dotted.png b/public/textures/rechiseled/purpur_dotted.png new file mode 100644 index 00000000..dcabf37d Binary files /dev/null and b/public/textures/rechiseled/purpur_dotted.png differ diff --git a/public/textures/rechiseled/purpur_dotted_connecting.png b/public/textures/rechiseled/purpur_dotted_connecting.png new file mode 100644 index 00000000..dcabf37d Binary files /dev/null and b/public/textures/rechiseled/purpur_dotted_connecting.png differ diff --git a/public/textures/rechiseled/purpur_fabric.png b/public/textures/rechiseled/purpur_fabric.png new file mode 100644 index 00000000..e492eebd Binary files /dev/null and b/public/textures/rechiseled/purpur_fabric.png differ diff --git a/public/textures/rechiseled/purpur_fabric_connecting.png b/public/textures/rechiseled/purpur_fabric_connecting.png new file mode 100644 index 00000000..e492eebd Binary files /dev/null and b/public/textures/rechiseled/purpur_fabric_connecting.png differ diff --git a/public/textures/rechiseled/purpur_jagged_pattern.png b/public/textures/rechiseled/purpur_jagged_pattern.png new file mode 100644 index 00000000..132f16e5 Binary files /dev/null and b/public/textures/rechiseled/purpur_jagged_pattern.png differ diff --git a/public/textures/rechiseled/purpur_jagged_pattern_connecting.png b/public/textures/rechiseled/purpur_jagged_pattern_connecting.png new file mode 100644 index 00000000..132f16e5 Binary files /dev/null and b/public/textures/rechiseled/purpur_jagged_pattern_connecting.png differ diff --git a/public/textures/rechiseled/purpur_large_tiles.png b/public/textures/rechiseled/purpur_large_tiles.png new file mode 100644 index 00000000..df18f03a Binary files /dev/null and b/public/textures/rechiseled/purpur_large_tiles.png differ diff --git a/public/textures/rechiseled/purpur_large_tiles_connecting.png b/public/textures/rechiseled/purpur_large_tiles_connecting.png new file mode 100644 index 00000000..df18f03a Binary files /dev/null and b/public/textures/rechiseled/purpur_large_tiles_connecting.png differ diff --git a/public/textures/rechiseled/purpur_organic_pattern.png b/public/textures/rechiseled/purpur_organic_pattern.png new file mode 100644 index 00000000..31dbfe3f Binary files /dev/null and b/public/textures/rechiseled/purpur_organic_pattern.png differ diff --git a/public/textures/rechiseled/purpur_organic_pattern_connecting.png b/public/textures/rechiseled/purpur_organic_pattern_connecting.png new file mode 100644 index 00000000..31dbfe3f Binary files /dev/null and b/public/textures/rechiseled/purpur_organic_pattern_connecting.png differ diff --git a/public/textures/rechiseled/purpur_pillar.png b/public/textures/rechiseled/purpur_pillar.png new file mode 100644 index 00000000..94368ed4 Binary files /dev/null and b/public/textures/rechiseled/purpur_pillar.png differ diff --git a/public/textures/rechiseled/purpur_pillar_connecting.png b/public/textures/rechiseled/purpur_pillar_connecting.png new file mode 100644 index 00000000..94368ed4 Binary files /dev/null and b/public/textures/rechiseled/purpur_pillar_connecting.png differ diff --git a/public/textures/rechiseled/purpur_rotated_bricks.png b/public/textures/rechiseled/purpur_rotated_bricks.png new file mode 100644 index 00000000..66c6b976 Binary files /dev/null and b/public/textures/rechiseled/purpur_rotated_bricks.png differ diff --git a/public/textures/rechiseled/purpur_rotated_bricks_connecting.png b/public/textures/rechiseled/purpur_rotated_bricks_connecting.png new file mode 100644 index 00000000..66c6b976 Binary files /dev/null and b/public/textures/rechiseled/purpur_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/purpur_slanted_tiles.png b/public/textures/rechiseled/purpur_slanted_tiles.png new file mode 100644 index 00000000..8a3627b2 Binary files /dev/null and b/public/textures/rechiseled/purpur_slanted_tiles.png differ diff --git a/public/textures/rechiseled/purpur_slanted_tiles_connecting.png b/public/textures/rechiseled/purpur_slanted_tiles_connecting.png new file mode 100644 index 00000000..8a3627b2 Binary files /dev/null and b/public/textures/rechiseled/purpur_slanted_tiles_connecting.png differ diff --git a/public/textures/rechiseled/purpur_small_tiles.png b/public/textures/rechiseled/purpur_small_tiles.png new file mode 100644 index 00000000..08763d27 Binary files /dev/null and b/public/textures/rechiseled/purpur_small_tiles.png differ diff --git a/public/textures/rechiseled/purpur_small_tiles_connecting.png b/public/textures/rechiseled/purpur_small_tiles_connecting.png new file mode 100644 index 00000000..08763d27 Binary files /dev/null and b/public/textures/rechiseled/purpur_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/purpur_spiral_pattern.png b/public/textures/rechiseled/purpur_spiral_pattern.png new file mode 100644 index 00000000..992bc1d0 Binary files /dev/null and b/public/textures/rechiseled/purpur_spiral_pattern.png differ diff --git a/public/textures/rechiseled/purpur_spiral_pattern_connecting.png b/public/textures/rechiseled/purpur_spiral_pattern_connecting.png new file mode 100644 index 00000000..992bc1d0 Binary files /dev/null and b/public/textures/rechiseled/purpur_spiral_pattern_connecting.png differ diff --git a/public/textures/rechiseled/purpur_squares.png b/public/textures/rechiseled/purpur_squares.png new file mode 100644 index 00000000..e9842bf8 Binary files /dev/null and b/public/textures/rechiseled/purpur_squares.png differ diff --git a/public/textures/rechiseled/purpur_squares_connecting.png b/public/textures/rechiseled/purpur_squares_connecting.png new file mode 100644 index 00000000..e9842bf8 Binary files /dev/null and b/public/textures/rechiseled/purpur_squares_connecting.png differ diff --git a/public/textures/rechiseled/purpur_tiles_connecting.png b/public/textures/rechiseled/purpur_tiles_connecting.png new file mode 100644 index 00000000..eb4d3c2d Binary files /dev/null and b/public/textures/rechiseled/purpur_tiles_connecting.png differ diff --git a/public/textures/rechiseled/purpur_woven.png b/public/textures/rechiseled/purpur_woven.png new file mode 100644 index 00000000..99e7957d Binary files /dev/null and b/public/textures/rechiseled/purpur_woven.png differ diff --git a/public/textures/rechiseled/purpur_woven_connecting.png b/public/textures/rechiseled/purpur_woven_connecting.png new file mode 100644 index 00000000..99e7957d Binary files /dev/null and b/public/textures/rechiseled/purpur_woven_connecting.png differ diff --git a/public/textures/rechiseled/quartz_block_bordered.png b/public/textures/rechiseled/quartz_block_bordered.png new file mode 100644 index 00000000..f69557e0 Binary files /dev/null and b/public/textures/rechiseled/quartz_block_bordered.png differ diff --git a/public/textures/rechiseled/quartz_block_bordered_connecting.png b/public/textures/rechiseled/quartz_block_bordered_connecting.png new file mode 100644 index 00000000..f69557e0 Binary files /dev/null and b/public/textures/rechiseled/quartz_block_bordered_connecting.png differ diff --git a/public/textures/rechiseled/quartz_block_brick_paving.png b/public/textures/rechiseled/quartz_block_brick_paving.png new file mode 100644 index 00000000..3f6b8353 Binary files /dev/null and b/public/textures/rechiseled/quartz_block_brick_paving.png differ diff --git a/public/textures/rechiseled/quartz_block_brick_paving_connecting.png b/public/textures/rechiseled/quartz_block_brick_paving_connecting.png new file mode 100644 index 00000000..3f6b8353 Binary files /dev/null and b/public/textures/rechiseled/quartz_block_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/quartz_block_chiseled_pillar.png b/public/textures/rechiseled/quartz_block_chiseled_pillar.png new file mode 100644 index 00000000..3bd33264 Binary files /dev/null and b/public/textures/rechiseled/quartz_block_chiseled_pillar.png differ diff --git a/public/textures/rechiseled/quartz_block_chiseled_pillar_connecting.png b/public/textures/rechiseled/quartz_block_chiseled_pillar_connecting.png new file mode 100644 index 00000000..3bd33264 Binary files /dev/null and b/public/textures/rechiseled/quartz_block_chiseled_pillar_connecting.png differ diff --git a/public/textures/rechiseled/quartz_block_chiseled_squares.png b/public/textures/rechiseled/quartz_block_chiseled_squares.png new file mode 100644 index 00000000..ad7b3725 Binary files /dev/null and b/public/textures/rechiseled/quartz_block_chiseled_squares.png differ diff --git a/public/textures/rechiseled/quartz_block_connecting_connecting.png b/public/textures/rechiseled/quartz_block_connecting_connecting.png new file mode 100644 index 00000000..ebcda332 Binary files /dev/null and b/public/textures/rechiseled/quartz_block_connecting_connecting.png differ diff --git a/public/textures/rechiseled/quartz_block_crosses.png b/public/textures/rechiseled/quartz_block_crosses.png new file mode 100644 index 00000000..5ca588cd Binary files /dev/null and b/public/textures/rechiseled/quartz_block_crosses.png differ diff --git a/public/textures/rechiseled/quartz_block_crosses_connecting.png b/public/textures/rechiseled/quartz_block_crosses_connecting.png new file mode 100644 index 00000000..5ca588cd Binary files /dev/null and b/public/textures/rechiseled/quartz_block_crosses_connecting.png differ diff --git a/public/textures/rechiseled/quartz_block_diagonal_tiles.png b/public/textures/rechiseled/quartz_block_diagonal_tiles.png new file mode 100644 index 00000000..16e576f8 Binary files /dev/null and b/public/textures/rechiseled/quartz_block_diagonal_tiles.png differ diff --git a/public/textures/rechiseled/quartz_block_diagonal_tiles_connecting.png b/public/textures/rechiseled/quartz_block_diagonal_tiles_connecting.png new file mode 100644 index 00000000..16e576f8 Binary files /dev/null and b/public/textures/rechiseled/quartz_block_diagonal_tiles_connecting.png differ diff --git a/public/textures/rechiseled/quartz_block_pattern.png b/public/textures/rechiseled/quartz_block_pattern.png new file mode 100644 index 00000000..42d813da Binary files /dev/null and b/public/textures/rechiseled/quartz_block_pattern.png differ diff --git a/public/textures/rechiseled/quartz_block_pattern_connecting.png b/public/textures/rechiseled/quartz_block_pattern_connecting.png new file mode 100644 index 00000000..42d813da Binary files /dev/null and b/public/textures/rechiseled/quartz_block_pattern_connecting.png differ diff --git a/public/textures/rechiseled/quartz_block_rotated_bricks.png b/public/textures/rechiseled/quartz_block_rotated_bricks.png new file mode 100644 index 00000000..f2001b01 Binary files /dev/null and b/public/textures/rechiseled/quartz_block_rotated_bricks.png differ diff --git a/public/textures/rechiseled/quartz_block_rotated_bricks_connecting.png b/public/textures/rechiseled/quartz_block_rotated_bricks_connecting.png new file mode 100644 index 00000000..f2001b01 Binary files /dev/null and b/public/textures/rechiseled/quartz_block_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/quartz_block_rows.png b/public/textures/rechiseled/quartz_block_rows.png new file mode 100644 index 00000000..63bfb7d6 Binary files /dev/null and b/public/textures/rechiseled/quartz_block_rows.png differ diff --git a/public/textures/rechiseled/quartz_block_rows_connecting.png b/public/textures/rechiseled/quartz_block_rows_connecting.png new file mode 100644 index 00000000..63bfb7d6 Binary files /dev/null and b/public/textures/rechiseled/quartz_block_rows_connecting.png differ diff --git a/public/textures/rechiseled/quartz_block_scales.png b/public/textures/rechiseled/quartz_block_scales.png new file mode 100644 index 00000000..fd291872 Binary files /dev/null and b/public/textures/rechiseled/quartz_block_scales.png differ diff --git a/public/textures/rechiseled/quartz_block_scales_connecting.png b/public/textures/rechiseled/quartz_block_scales_connecting.png new file mode 100644 index 00000000..fd291872 Binary files /dev/null and b/public/textures/rechiseled/quartz_block_scales_connecting.png differ diff --git a/public/textures/rechiseled/quartz_block_small_tiles.png b/public/textures/rechiseled/quartz_block_small_tiles.png new file mode 100644 index 00000000..97497b55 Binary files /dev/null and b/public/textures/rechiseled/quartz_block_small_tiles.png differ diff --git a/public/textures/rechiseled/quartz_block_small_tiles_connecting.png b/public/textures/rechiseled/quartz_block_small_tiles_connecting.png new file mode 100644 index 00000000..97497b55 Binary files /dev/null and b/public/textures/rechiseled/quartz_block_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/quartz_block_squares.png b/public/textures/rechiseled/quartz_block_squares.png new file mode 100644 index 00000000..ca7bad01 Binary files /dev/null and b/public/textures/rechiseled/quartz_block_squares.png differ diff --git a/public/textures/rechiseled/quartz_block_squares_connecting.png b/public/textures/rechiseled/quartz_block_squares_connecting.png new file mode 100644 index 00000000..ca7bad01 Binary files /dev/null and b/public/textures/rechiseled/quartz_block_squares_connecting.png differ diff --git a/public/textures/rechiseled/quartz_block_stripes.png b/public/textures/rechiseled/quartz_block_stripes.png new file mode 100644 index 00000000..fc0de806 Binary files /dev/null and b/public/textures/rechiseled/quartz_block_stripes.png differ diff --git a/public/textures/rechiseled/quartz_block_stripes_connecting.png b/public/textures/rechiseled/quartz_block_stripes_connecting.png new file mode 100644 index 00000000..fc0de806 Binary files /dev/null and b/public/textures/rechiseled/quartz_block_stripes_connecting.png differ diff --git a/public/textures/rechiseled/quartz_block_tiles.png b/public/textures/rechiseled/quartz_block_tiles.png new file mode 100644 index 00000000..b03f89e0 Binary files /dev/null and b/public/textures/rechiseled/quartz_block_tiles.png differ diff --git a/public/textures/rechiseled/quartz_block_tiles_connecting.png b/public/textures/rechiseled/quartz_block_tiles_connecting.png new file mode 100644 index 00000000..b03f89e0 Binary files /dev/null and b/public/textures/rechiseled/quartz_block_tiles_connecting.png differ diff --git a/public/textures/rechiseled/red_nether_bricks_beams.png b/public/textures/rechiseled/red_nether_bricks_beams.png new file mode 100644 index 00000000..f462b26b Binary files /dev/null and b/public/textures/rechiseled/red_nether_bricks_beams.png differ diff --git a/public/textures/rechiseled/red_nether_bricks_beams_connecting.png b/public/textures/rechiseled/red_nether_bricks_beams_connecting.png new file mode 100644 index 00000000..f462b26b Binary files /dev/null and b/public/textures/rechiseled/red_nether_bricks_beams_connecting.png differ diff --git a/public/textures/rechiseled/red_nether_bricks_brick_pattern.png b/public/textures/rechiseled/red_nether_bricks_brick_pattern.png new file mode 100644 index 00000000..3a2068d1 Binary files /dev/null and b/public/textures/rechiseled/red_nether_bricks_brick_pattern.png differ diff --git a/public/textures/rechiseled/red_nether_bricks_brick_pattern_connecting.png b/public/textures/rechiseled/red_nether_bricks_brick_pattern_connecting.png new file mode 100644 index 00000000..3a2068d1 Binary files /dev/null and b/public/textures/rechiseled/red_nether_bricks_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/red_nether_bricks_brick_paving.png b/public/textures/rechiseled/red_nether_bricks_brick_paving.png new file mode 100644 index 00000000..a0130bd8 Binary files /dev/null and b/public/textures/rechiseled/red_nether_bricks_brick_paving.png differ diff --git a/public/textures/rechiseled/red_nether_bricks_brick_paving_connecting.png b/public/textures/rechiseled/red_nether_bricks_brick_paving_connecting.png new file mode 100644 index 00000000..a0130bd8 Binary files /dev/null and b/public/textures/rechiseled/red_nether_bricks_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/red_nether_bricks_chiseled_squares.png b/public/textures/rechiseled/red_nether_bricks_chiseled_squares.png new file mode 100644 index 00000000..5f4cce94 Binary files /dev/null and b/public/textures/rechiseled/red_nether_bricks_chiseled_squares.png differ diff --git a/public/textures/rechiseled/red_nether_bricks_chiseled_squares_connecting.png b/public/textures/rechiseled/red_nether_bricks_chiseled_squares_connecting.png new file mode 100644 index 00000000..5f4cce94 Binary files /dev/null and b/public/textures/rechiseled/red_nether_bricks_chiseled_squares_connecting.png differ diff --git a/public/textures/rechiseled/red_nether_bricks_diagonal_bricks.png b/public/textures/rechiseled/red_nether_bricks_diagonal_bricks.png new file mode 100644 index 00000000..7767792c Binary files /dev/null and b/public/textures/rechiseled/red_nether_bricks_diagonal_bricks.png differ diff --git a/public/textures/rechiseled/red_nether_bricks_diagonal_bricks_connecting.png b/public/textures/rechiseled/red_nether_bricks_diagonal_bricks_connecting.png new file mode 100644 index 00000000..7767792c Binary files /dev/null and b/public/textures/rechiseled/red_nether_bricks_diagonal_bricks_connecting.png differ diff --git a/public/textures/rechiseled/red_nether_bricks_large_bricks.png b/public/textures/rechiseled/red_nether_bricks_large_bricks.png new file mode 100644 index 00000000..e1c2c56e Binary files /dev/null and b/public/textures/rechiseled/red_nether_bricks_large_bricks.png differ diff --git a/public/textures/rechiseled/red_nether_bricks_large_bricks_connecting.png b/public/textures/rechiseled/red_nether_bricks_large_bricks_connecting.png new file mode 100644 index 00000000..e1c2c56e Binary files /dev/null and b/public/textures/rechiseled/red_nether_bricks_large_bricks_connecting.png differ diff --git a/public/textures/rechiseled/red_nether_bricks_large_tiles.png b/public/textures/rechiseled/red_nether_bricks_large_tiles.png new file mode 100644 index 00000000..9d655f3a Binary files /dev/null and b/public/textures/rechiseled/red_nether_bricks_large_tiles.png differ diff --git a/public/textures/rechiseled/red_nether_bricks_large_tiles_connecting.png b/public/textures/rechiseled/red_nether_bricks_large_tiles_connecting.png new file mode 100644 index 00000000..9d655f3a Binary files /dev/null and b/public/textures/rechiseled/red_nether_bricks_large_tiles_connecting.png differ diff --git a/public/textures/rechiseled/red_nether_bricks_rotated_bricks.png b/public/textures/rechiseled/red_nether_bricks_rotated_bricks.png new file mode 100644 index 00000000..92fa9db2 Binary files /dev/null and b/public/textures/rechiseled/red_nether_bricks_rotated_bricks.png differ diff --git a/public/textures/rechiseled/red_nether_bricks_rotated_bricks_connecting.png b/public/textures/rechiseled/red_nether_bricks_rotated_bricks_connecting.png new file mode 100644 index 00000000..92fa9db2 Binary files /dev/null and b/public/textures/rechiseled/red_nether_bricks_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/red_nether_bricks_small_tiles.png b/public/textures/rechiseled/red_nether_bricks_small_tiles.png new file mode 100644 index 00000000..c4214758 Binary files /dev/null and b/public/textures/rechiseled/red_nether_bricks_small_tiles.png differ diff --git a/public/textures/rechiseled/red_nether_bricks_small_tiles_connecting.png b/public/textures/rechiseled/red_nether_bricks_small_tiles_connecting.png new file mode 100644 index 00000000..c4214758 Binary files /dev/null and b/public/textures/rechiseled/red_nether_bricks_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/red_nether_bricks_smooth.png b/public/textures/rechiseled/red_nether_bricks_smooth.png new file mode 100644 index 00000000..e12e82d5 Binary files /dev/null and b/public/textures/rechiseled/red_nether_bricks_smooth.png differ diff --git a/public/textures/rechiseled/red_nether_bricks_smooth_connecting.png b/public/textures/rechiseled/red_nether_bricks_smooth_connecting.png new file mode 100644 index 00000000..e12e82d5 Binary files /dev/null and b/public/textures/rechiseled/red_nether_bricks_smooth_connecting.png differ diff --git a/public/textures/rechiseled/red_nether_bricks_squares.png b/public/textures/rechiseled/red_nether_bricks_squares.png new file mode 100644 index 00000000..caef38ea Binary files /dev/null and b/public/textures/rechiseled/red_nether_bricks_squares.png differ diff --git a/public/textures/rechiseled/red_nether_bricks_squares_connecting.png b/public/textures/rechiseled/red_nether_bricks_squares_connecting.png new file mode 100644 index 00000000..caef38ea Binary files /dev/null and b/public/textures/rechiseled/red_nether_bricks_squares_connecting.png differ diff --git a/public/textures/rechiseled/red_nether_bricks_tiles.png b/public/textures/rechiseled/red_nether_bricks_tiles.png new file mode 100644 index 00000000..7e57f7b8 Binary files /dev/null and b/public/textures/rechiseled/red_nether_bricks_tiles.png differ diff --git a/public/textures/rechiseled/red_nether_bricks_tiles_connecting.png b/public/textures/rechiseled/red_nether_bricks_tiles_connecting.png new file mode 100644 index 00000000..7e57f7b8 Binary files /dev/null and b/public/textures/rechiseled/red_nether_bricks_tiles_connecting.png differ diff --git a/public/textures/rechiseled/red_sandstone_brick_pattern.png b/public/textures/rechiseled/red_sandstone_brick_pattern.png new file mode 100644 index 00000000..aa76858d Binary files /dev/null and b/public/textures/rechiseled/red_sandstone_brick_pattern.png differ diff --git a/public/textures/rechiseled/red_sandstone_brick_pattern_connecting.png b/public/textures/rechiseled/red_sandstone_brick_pattern_connecting.png new file mode 100644 index 00000000..aa76858d Binary files /dev/null and b/public/textures/rechiseled/red_sandstone_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/red_sandstone_brick_paving.png b/public/textures/rechiseled/red_sandstone_brick_paving.png new file mode 100644 index 00000000..5a44023a Binary files /dev/null and b/public/textures/rechiseled/red_sandstone_brick_paving.png differ diff --git a/public/textures/rechiseled/red_sandstone_brick_paving_connecting.png b/public/textures/rechiseled/red_sandstone_brick_paving_connecting.png new file mode 100644 index 00000000..5a44023a Binary files /dev/null and b/public/textures/rechiseled/red_sandstone_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/red_sandstone_bricks.png b/public/textures/rechiseled/red_sandstone_bricks.png new file mode 100644 index 00000000..691d8ea8 Binary files /dev/null and b/public/textures/rechiseled/red_sandstone_bricks.png differ diff --git a/public/textures/rechiseled/red_sandstone_bricks_connecting.png b/public/textures/rechiseled/red_sandstone_bricks_connecting.png new file mode 100644 index 00000000..691d8ea8 Binary files /dev/null and b/public/textures/rechiseled/red_sandstone_bricks_connecting.png differ diff --git a/public/textures/rechiseled/red_sandstone_diagonal_bricks.png b/public/textures/rechiseled/red_sandstone_diagonal_bricks.png new file mode 100644 index 00000000..28a20df6 Binary files /dev/null and b/public/textures/rechiseled/red_sandstone_diagonal_bricks.png differ diff --git a/public/textures/rechiseled/red_sandstone_diagonal_bricks_connecting.png b/public/textures/rechiseled/red_sandstone_diagonal_bricks_connecting.png new file mode 100644 index 00000000..28a20df6 Binary files /dev/null and b/public/textures/rechiseled/red_sandstone_diagonal_bricks_connecting.png differ diff --git a/public/textures/rechiseled/red_sandstone_large_tiles.png b/public/textures/rechiseled/red_sandstone_large_tiles.png new file mode 100644 index 00000000..d66d15ef Binary files /dev/null and b/public/textures/rechiseled/red_sandstone_large_tiles.png differ diff --git a/public/textures/rechiseled/red_sandstone_large_tiles_connecting.png b/public/textures/rechiseled/red_sandstone_large_tiles_connecting.png new file mode 100644 index 00000000..d66d15ef Binary files /dev/null and b/public/textures/rechiseled/red_sandstone_large_tiles_connecting.png differ diff --git a/public/textures/rechiseled/red_sandstone_polished.png b/public/textures/rechiseled/red_sandstone_polished.png new file mode 100644 index 00000000..bfa10911 Binary files /dev/null and b/public/textures/rechiseled/red_sandstone_polished.png differ diff --git a/public/textures/rechiseled/red_sandstone_polished_connecting.png b/public/textures/rechiseled/red_sandstone_polished_connecting.png new file mode 100644 index 00000000..bfa10911 Binary files /dev/null and b/public/textures/rechiseled/red_sandstone_polished_connecting.png differ diff --git a/public/textures/rechiseled/red_sandstone_rotated_bricks.png b/public/textures/rechiseled/red_sandstone_rotated_bricks.png new file mode 100644 index 00000000..0e08fde6 Binary files /dev/null and b/public/textures/rechiseled/red_sandstone_rotated_bricks.png differ diff --git a/public/textures/rechiseled/red_sandstone_rotated_bricks_connecting.png b/public/textures/rechiseled/red_sandstone_rotated_bricks_connecting.png new file mode 100644 index 00000000..0e08fde6 Binary files /dev/null and b/public/textures/rechiseled/red_sandstone_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/red_sandstone_tiles.png b/public/textures/rechiseled/red_sandstone_tiles.png new file mode 100644 index 00000000..b0f3a965 Binary files /dev/null and b/public/textures/rechiseled/red_sandstone_tiles.png differ diff --git a/public/textures/rechiseled/red_sandstone_tiles_connecting.png b/public/textures/rechiseled/red_sandstone_tiles_connecting.png new file mode 100644 index 00000000..b0f3a965 Binary files /dev/null and b/public/textures/rechiseled/red_sandstone_tiles_connecting.png differ diff --git a/public/textures/rechiseled/redstone_block_bordered.png b/public/textures/rechiseled/redstone_block_bordered.png new file mode 100644 index 00000000..67db6bc4 Binary files /dev/null and b/public/textures/rechiseled/redstone_block_bordered.png differ diff --git a/public/textures/rechiseled/redstone_block_bordered_connecting.png b/public/textures/rechiseled/redstone_block_bordered_connecting.png new file mode 100644 index 00000000..67db6bc4 Binary files /dev/null and b/public/textures/rechiseled/redstone_block_bordered_connecting.png differ diff --git a/public/textures/rechiseled/redstone_block_brick_bordered.png b/public/textures/rechiseled/redstone_block_brick_bordered.png new file mode 100644 index 00000000..803a8f27 Binary files /dev/null and b/public/textures/rechiseled/redstone_block_brick_bordered.png differ diff --git a/public/textures/rechiseled/redstone_block_bricks.png b/public/textures/rechiseled/redstone_block_bricks.png new file mode 100644 index 00000000..de097358 Binary files /dev/null and b/public/textures/rechiseled/redstone_block_bricks.png differ diff --git a/public/textures/rechiseled/redstone_block_bricks_connecting.png b/public/textures/rechiseled/redstone_block_bricks_connecting.png new file mode 100644 index 00000000..de097358 Binary files /dev/null and b/public/textures/rechiseled/redstone_block_bricks_connecting.png differ diff --git a/public/textures/rechiseled/redstone_block_chiseled_clovers.png b/public/textures/rechiseled/redstone_block_chiseled_clovers.png new file mode 100644 index 00000000..7a456797 Binary files /dev/null and b/public/textures/rechiseled/redstone_block_chiseled_clovers.png differ diff --git a/public/textures/rechiseled/redstone_block_chiseled_clovers_connecting.png b/public/textures/rechiseled/redstone_block_chiseled_clovers_connecting.png new file mode 100644 index 00000000..7a456797 Binary files /dev/null and b/public/textures/rechiseled/redstone_block_chiseled_clovers_connecting.png differ diff --git a/public/textures/rechiseled/redstone_block_circles.png b/public/textures/rechiseled/redstone_block_circles.png new file mode 100644 index 00000000..51c9b43a Binary files /dev/null and b/public/textures/rechiseled/redstone_block_circles.png differ diff --git a/public/textures/rechiseled/redstone_block_circles_connecting.png b/public/textures/rechiseled/redstone_block_circles_connecting.png new file mode 100644 index 00000000..51c9b43a Binary files /dev/null and b/public/textures/rechiseled/redstone_block_circles_connecting.png differ diff --git a/public/textures/rechiseled/redstone_block_compressed.png b/public/textures/rechiseled/redstone_block_compressed.png new file mode 100644 index 00000000..dffbb2e9 Binary files /dev/null and b/public/textures/rechiseled/redstone_block_compressed.png differ diff --git a/public/textures/rechiseled/redstone_block_compressed_connecting.png b/public/textures/rechiseled/redstone_block_compressed_connecting.png new file mode 100644 index 00000000..dffbb2e9 Binary files /dev/null and b/public/textures/rechiseled/redstone_block_compressed_connecting.png differ diff --git a/public/textures/rechiseled/redstone_block_crushed.png b/public/textures/rechiseled/redstone_block_crushed.png new file mode 100644 index 00000000..0cbbab99 Binary files /dev/null and b/public/textures/rechiseled/redstone_block_crushed.png differ diff --git a/public/textures/rechiseled/redstone_block_diagonal_tiles.png b/public/textures/rechiseled/redstone_block_diagonal_tiles.png new file mode 100644 index 00000000..ff13e572 Binary files /dev/null and b/public/textures/rechiseled/redstone_block_diagonal_tiles.png differ diff --git a/public/textures/rechiseled/redstone_block_diagonal_tiles_connecting.png b/public/textures/rechiseled/redstone_block_diagonal_tiles_connecting.png new file mode 100644 index 00000000..ff13e572 Binary files /dev/null and b/public/textures/rechiseled/redstone_block_diagonal_tiles_connecting.png differ diff --git a/public/textures/rechiseled/redstone_block_patterned.png b/public/textures/rechiseled/redstone_block_patterned.png new file mode 100644 index 00000000..d232df97 Binary files /dev/null and b/public/textures/rechiseled/redstone_block_patterned.png differ diff --git a/public/textures/rechiseled/redstone_block_patterned_connecting.png b/public/textures/rechiseled/redstone_block_patterned_connecting.png new file mode 100644 index 00000000..d232df97 Binary files /dev/null and b/public/textures/rechiseled/redstone_block_patterned_connecting.png differ diff --git a/public/textures/rechiseled/redstone_block_paving.png b/public/textures/rechiseled/redstone_block_paving.png new file mode 100644 index 00000000..7d4e58d4 Binary files /dev/null and b/public/textures/rechiseled/redstone_block_paving.png differ diff --git a/public/textures/rechiseled/redstone_block_paving_connecting.png b/public/textures/rechiseled/redstone_block_paving_connecting.png new file mode 100644 index 00000000..7d4e58d4 Binary files /dev/null and b/public/textures/rechiseled/redstone_block_paving_connecting.png differ diff --git a/public/textures/rechiseled/redstone_block_pillar.png b/public/textures/rechiseled/redstone_block_pillar.png new file mode 100644 index 00000000..6428ce07 Binary files /dev/null and b/public/textures/rechiseled/redstone_block_pillar.png differ diff --git a/public/textures/rechiseled/redstone_block_pillar_connecting.png b/public/textures/rechiseled/redstone_block_pillar_connecting.png new file mode 100644 index 00000000..6428ce07 Binary files /dev/null and b/public/textures/rechiseled/redstone_block_pillar_connecting.png differ diff --git a/public/textures/rechiseled/redstone_block_polished.png b/public/textures/rechiseled/redstone_block_polished.png new file mode 100644 index 00000000..d1897526 Binary files /dev/null and b/public/textures/rechiseled/redstone_block_polished.png differ diff --git a/public/textures/rechiseled/redstone_block_polished_connecting.png b/public/textures/rechiseled/redstone_block_polished_connecting.png new file mode 100644 index 00000000..d1897526 Binary files /dev/null and b/public/textures/rechiseled/redstone_block_polished_connecting.png differ diff --git a/public/textures/rechiseled/redstone_block_scales.png b/public/textures/rechiseled/redstone_block_scales.png new file mode 100644 index 00000000..f097eade Binary files /dev/null and b/public/textures/rechiseled/redstone_block_scales.png differ diff --git a/public/textures/rechiseled/redstone_block_scales_connecting.png b/public/textures/rechiseled/redstone_block_scales_connecting.png new file mode 100644 index 00000000..f097eade Binary files /dev/null and b/public/textures/rechiseled/redstone_block_scales_connecting.png differ diff --git a/public/textures/rechiseled/redstone_block_small_tiles.png b/public/textures/rechiseled/redstone_block_small_tiles.png new file mode 100644 index 00000000..9451aed5 Binary files /dev/null and b/public/textures/rechiseled/redstone_block_small_tiles.png differ diff --git a/public/textures/rechiseled/redstone_block_small_tiles_connecting.png b/public/textures/rechiseled/redstone_block_small_tiles_connecting.png new file mode 100644 index 00000000..9451aed5 Binary files /dev/null and b/public/textures/rechiseled/redstone_block_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/redstone_block_smooth.png b/public/textures/rechiseled/redstone_block_smooth.png new file mode 100644 index 00000000..7cd4a20a Binary files /dev/null and b/public/textures/rechiseled/redstone_block_smooth.png differ diff --git a/public/textures/rechiseled/sandstone_brick_pattern.png b/public/textures/rechiseled/sandstone_brick_pattern.png new file mode 100644 index 00000000..382c7ec4 Binary files /dev/null and b/public/textures/rechiseled/sandstone_brick_pattern.png differ diff --git a/public/textures/rechiseled/sandstone_brick_pattern_connecting.png b/public/textures/rechiseled/sandstone_brick_pattern_connecting.png new file mode 100644 index 00000000..382c7ec4 Binary files /dev/null and b/public/textures/rechiseled/sandstone_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/sandstone_brick_paving.png b/public/textures/rechiseled/sandstone_brick_paving.png new file mode 100644 index 00000000..0fda293c Binary files /dev/null and b/public/textures/rechiseled/sandstone_brick_paving.png differ diff --git a/public/textures/rechiseled/sandstone_brick_paving_connecting.png b/public/textures/rechiseled/sandstone_brick_paving_connecting.png new file mode 100644 index 00000000..0fda293c Binary files /dev/null and b/public/textures/rechiseled/sandstone_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/sandstone_bricks.png b/public/textures/rechiseled/sandstone_bricks.png new file mode 100644 index 00000000..d7061d51 Binary files /dev/null and b/public/textures/rechiseled/sandstone_bricks.png differ diff --git a/public/textures/rechiseled/sandstone_bricks_connecting.png b/public/textures/rechiseled/sandstone_bricks_connecting.png new file mode 100644 index 00000000..d7061d51 Binary files /dev/null and b/public/textures/rechiseled/sandstone_bricks_connecting.png differ diff --git a/public/textures/rechiseled/sandstone_diagonal_bricks.png b/public/textures/rechiseled/sandstone_diagonal_bricks.png new file mode 100644 index 00000000..8932dad3 Binary files /dev/null and b/public/textures/rechiseled/sandstone_diagonal_bricks.png differ diff --git a/public/textures/rechiseled/sandstone_diagonal_bricks_connecting.png b/public/textures/rechiseled/sandstone_diagonal_bricks_connecting.png new file mode 100644 index 00000000..8932dad3 Binary files /dev/null and b/public/textures/rechiseled/sandstone_diagonal_bricks_connecting.png differ diff --git a/public/textures/rechiseled/sandstone_large_tiles.png b/public/textures/rechiseled/sandstone_large_tiles.png new file mode 100644 index 00000000..a0094fe6 Binary files /dev/null and b/public/textures/rechiseled/sandstone_large_tiles.png differ diff --git a/public/textures/rechiseled/sandstone_large_tiles_connecting.png b/public/textures/rechiseled/sandstone_large_tiles_connecting.png new file mode 100644 index 00000000..a0094fe6 Binary files /dev/null and b/public/textures/rechiseled/sandstone_large_tiles_connecting.png differ diff --git a/public/textures/rechiseled/sandstone_polished.png b/public/textures/rechiseled/sandstone_polished.png new file mode 100644 index 00000000..2f963390 Binary files /dev/null and b/public/textures/rechiseled/sandstone_polished.png differ diff --git a/public/textures/rechiseled/sandstone_polished_connecting.png b/public/textures/rechiseled/sandstone_polished_connecting.png new file mode 100644 index 00000000..2f963390 Binary files /dev/null and b/public/textures/rechiseled/sandstone_polished_connecting.png differ diff --git a/public/textures/rechiseled/sandstone_rotated_bricks.png b/public/textures/rechiseled/sandstone_rotated_bricks.png new file mode 100644 index 00000000..418d3107 Binary files /dev/null and b/public/textures/rechiseled/sandstone_rotated_bricks.png differ diff --git a/public/textures/rechiseled/sandstone_rotated_bricks_connecting.png b/public/textures/rechiseled/sandstone_rotated_bricks_connecting.png new file mode 100644 index 00000000..418d3107 Binary files /dev/null and b/public/textures/rechiseled/sandstone_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/sandstone_tiles.png b/public/textures/rechiseled/sandstone_tiles.png new file mode 100644 index 00000000..9728edc8 Binary files /dev/null and b/public/textures/rechiseled/sandstone_tiles.png differ diff --git a/public/textures/rechiseled/sandstone_tiles_connecting.png b/public/textures/rechiseled/sandstone_tiles_connecting.png new file mode 100644 index 00000000..9728edc8 Binary files /dev/null and b/public/textures/rechiseled/sandstone_tiles_connecting.png differ diff --git a/public/textures/rechiseled/spruce_planks_beams.png b/public/textures/rechiseled/spruce_planks_beams.png new file mode 100644 index 00000000..c8f50508 Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_beams.png differ diff --git a/public/textures/rechiseled/spruce_planks_beams_connecting.png b/public/textures/rechiseled/spruce_planks_beams_connecting.png new file mode 100644 index 00000000..c8f50508 Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_beams_connecting.png differ diff --git a/public/textures/rechiseled/spruce_planks_brick_pattern.png b/public/textures/rechiseled/spruce_planks_brick_pattern.png new file mode 100644 index 00000000..6258d0f6 Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_brick_pattern.png differ diff --git a/public/textures/rechiseled/spruce_planks_brick_pattern_connecting.png b/public/textures/rechiseled/spruce_planks_brick_pattern_connecting.png new file mode 100644 index 00000000..6258d0f6 Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/spruce_planks_brick_paving.png b/public/textures/rechiseled/spruce_planks_brick_paving.png new file mode 100644 index 00000000..839d4433 Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_brick_paving.png differ diff --git a/public/textures/rechiseled/spruce_planks_brick_paving_connecting.png b/public/textures/rechiseled/spruce_planks_brick_paving_connecting.png new file mode 100644 index 00000000..839d4433 Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/spruce_planks_bricks.png b/public/textures/rechiseled/spruce_planks_bricks.png new file mode 100644 index 00000000..0ca94b73 Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_bricks.png differ diff --git a/public/textures/rechiseled/spruce_planks_bricks_connecting.png b/public/textures/rechiseled/spruce_planks_bricks_connecting.png new file mode 100644 index 00000000..0ca94b73 Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_bricks_connecting.png differ diff --git a/public/textures/rechiseled/spruce_planks_crate.png b/public/textures/rechiseled/spruce_planks_crate.png new file mode 100644 index 00000000..58c1b59c Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_crate.png differ diff --git a/public/textures/rechiseled/spruce_planks_crate_connecting.png b/public/textures/rechiseled/spruce_planks_crate_connecting.png new file mode 100644 index 00000000..58c1b59c Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_crate_connecting.png differ diff --git a/public/textures/rechiseled/spruce_planks_diagonal_stripes.png b/public/textures/rechiseled/spruce_planks_diagonal_stripes.png new file mode 100644 index 00000000..2cbb7ba3 Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_diagonal_stripes.png differ diff --git a/public/textures/rechiseled/spruce_planks_diagonal_stripes_connecting.png b/public/textures/rechiseled/spruce_planks_diagonal_stripes_connecting.png new file mode 100644 index 00000000..2cbb7ba3 Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_diagonal_stripes_connecting.png differ diff --git a/public/textures/rechiseled/spruce_planks_diagonal_tiles.png b/public/textures/rechiseled/spruce_planks_diagonal_tiles.png new file mode 100644 index 00000000..65883368 Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_diagonal_tiles.png differ diff --git a/public/textures/rechiseled/spruce_planks_diagonal_tiles_connecting.png b/public/textures/rechiseled/spruce_planks_diagonal_tiles_connecting.png new file mode 100644 index 00000000..65883368 Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_diagonal_tiles_connecting.png differ diff --git a/public/textures/rechiseled/spruce_planks_dotted.png b/public/textures/rechiseled/spruce_planks_dotted.png new file mode 100644 index 00000000..1953361d Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_dotted.png differ diff --git a/public/textures/rechiseled/spruce_planks_dotted_connecting.png b/public/textures/rechiseled/spruce_planks_dotted_connecting.png new file mode 100644 index 00000000..1953361d Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_dotted_connecting.png differ diff --git a/public/textures/rechiseled/spruce_planks_flooring.png b/public/textures/rechiseled/spruce_planks_flooring.png new file mode 100644 index 00000000..01b40150 Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_flooring.png differ diff --git a/public/textures/rechiseled/spruce_planks_flooring_connecting.png b/public/textures/rechiseled/spruce_planks_flooring_connecting.png new file mode 100644 index 00000000..01b40150 Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_flooring_connecting.png differ diff --git a/public/textures/rechiseled/spruce_planks_large_tiles.png b/public/textures/rechiseled/spruce_planks_large_tiles.png new file mode 100644 index 00000000..1d3a8d49 Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_large_tiles.png differ diff --git a/public/textures/rechiseled/spruce_planks_large_tiles_connecting.png b/public/textures/rechiseled/spruce_planks_large_tiles_connecting.png new file mode 100644 index 00000000..1d3a8d49 Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_large_tiles_connecting.png differ diff --git a/public/textures/rechiseled/spruce_planks_mosaic.png b/public/textures/rechiseled/spruce_planks_mosaic.png new file mode 100644 index 00000000..71c03c84 Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_mosaic.png differ diff --git a/public/textures/rechiseled/spruce_planks_pattern.png b/public/textures/rechiseled/spruce_planks_pattern.png new file mode 100644 index 00000000..b6cc948a Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_pattern.png differ diff --git a/public/textures/rechiseled/spruce_planks_pattern_connecting.png b/public/textures/rechiseled/spruce_planks_pattern_connecting.png new file mode 100644 index 00000000..b6cc948a Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_pattern_connecting.png differ diff --git a/public/textures/rechiseled/spruce_planks_rotated_bricks.png b/public/textures/rechiseled/spruce_planks_rotated_bricks.png new file mode 100644 index 00000000..a271fd0b Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_rotated_bricks.png differ diff --git a/public/textures/rechiseled/spruce_planks_rotated_bricks_connecting.png b/public/textures/rechiseled/spruce_planks_rotated_bricks_connecting.png new file mode 100644 index 00000000..a271fd0b Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/spruce_planks_small_bricks.png b/public/textures/rechiseled/spruce_planks_small_bricks.png new file mode 100644 index 00000000..bad320e7 Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_small_bricks.png differ diff --git a/public/textures/rechiseled/spruce_planks_small_bricks_connecting.png b/public/textures/rechiseled/spruce_planks_small_bricks_connecting.png new file mode 100644 index 00000000..bad320e7 Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_small_bricks_connecting.png differ diff --git a/public/textures/rechiseled/spruce_planks_small_tiles.png b/public/textures/rechiseled/spruce_planks_small_tiles.png new file mode 100644 index 00000000..6ced531f Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_small_tiles.png differ diff --git a/public/textures/rechiseled/spruce_planks_small_tiles_connecting.png b/public/textures/rechiseled/spruce_planks_small_tiles_connecting.png new file mode 100644 index 00000000..6ced531f Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/spruce_planks_squares.png b/public/textures/rechiseled/spruce_planks_squares.png new file mode 100644 index 00000000..80a2ee1c Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_squares.png differ diff --git a/public/textures/rechiseled/spruce_planks_squares_connecting.png b/public/textures/rechiseled/spruce_planks_squares_connecting.png new file mode 100644 index 00000000..80a2ee1c Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_squares_connecting.png differ diff --git a/public/textures/rechiseled/spruce_planks_tiles.png b/public/textures/rechiseled/spruce_planks_tiles.png new file mode 100644 index 00000000..4cacebd2 Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_tiles.png differ diff --git a/public/textures/rechiseled/spruce_planks_tiles_connecting.png b/public/textures/rechiseled/spruce_planks_tiles_connecting.png new file mode 100644 index 00000000..4cacebd2 Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_tiles_connecting.png differ diff --git a/public/textures/rechiseled/spruce_planks_wavy.png b/public/textures/rechiseled/spruce_planks_wavy.png new file mode 100644 index 00000000..d50f88f2 Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_wavy.png differ diff --git a/public/textures/rechiseled/spruce_planks_wavy_connecting.png b/public/textures/rechiseled/spruce_planks_wavy_connecting.png new file mode 100644 index 00000000..d50f88f2 Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_wavy_connecting.png differ diff --git a/public/textures/rechiseled/spruce_planks_woven.png b/public/textures/rechiseled/spruce_planks_woven.png new file mode 100644 index 00000000..27abb0d9 Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_woven.png differ diff --git a/public/textures/rechiseled/spruce_planks_woven_connecting.png b/public/textures/rechiseled/spruce_planks_woven_connecting.png new file mode 100644 index 00000000..27abb0d9 Binary files /dev/null and b/public/textures/rechiseled/spruce_planks_woven_connecting.png differ diff --git a/public/textures/rechiseled/stone_big_tiles.png b/public/textures/rechiseled/stone_big_tiles.png new file mode 100644 index 00000000..2cb245ab Binary files /dev/null and b/public/textures/rechiseled/stone_big_tiles.png differ diff --git a/public/textures/rechiseled/stone_big_tiles_connecting.png b/public/textures/rechiseled/stone_big_tiles_connecting.png new file mode 100644 index 00000000..2cb245ab Binary files /dev/null and b/public/textures/rechiseled/stone_big_tiles_connecting.png differ diff --git a/public/textures/rechiseled/stone_bordered.png b/public/textures/rechiseled/stone_bordered.png new file mode 100644 index 00000000..77352bf7 Binary files /dev/null and b/public/textures/rechiseled/stone_bordered.png differ diff --git a/public/textures/rechiseled/stone_bordered_connecting.png b/public/textures/rechiseled/stone_bordered_connecting.png new file mode 100644 index 00000000..77352bf7 Binary files /dev/null and b/public/textures/rechiseled/stone_bordered_connecting.png differ diff --git a/public/textures/rechiseled/stone_brick_pattern.png b/public/textures/rechiseled/stone_brick_pattern.png new file mode 100644 index 00000000..eaaa7a8e Binary files /dev/null and b/public/textures/rechiseled/stone_brick_pattern.png differ diff --git a/public/textures/rechiseled/stone_brick_pattern_connecting.png b/public/textures/rechiseled/stone_brick_pattern_connecting.png new file mode 100644 index 00000000..eaaa7a8e Binary files /dev/null and b/public/textures/rechiseled/stone_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/stone_brick_paving.png b/public/textures/rechiseled/stone_brick_paving.png new file mode 100644 index 00000000..6b8f0ac7 Binary files /dev/null and b/public/textures/rechiseled/stone_brick_paving.png differ diff --git a/public/textures/rechiseled/stone_brick_paving_connecting.png b/public/textures/rechiseled/stone_brick_paving_connecting.png new file mode 100644 index 00000000..6b8f0ac7 Binary files /dev/null and b/public/textures/rechiseled/stone_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/stone_chiseled_bricks_connecting.png b/public/textures/rechiseled/stone_chiseled_bricks_connecting.png new file mode 100644 index 00000000..508c668f Binary files /dev/null and b/public/textures/rechiseled/stone_chiseled_bricks_connecting.png differ diff --git a/public/textures/rechiseled/stone_cobbled.png b/public/textures/rechiseled/stone_cobbled.png new file mode 100644 index 00000000..8693003e Binary files /dev/null and b/public/textures/rechiseled/stone_cobbled.png differ diff --git a/public/textures/rechiseled/stone_crushed.png b/public/textures/rechiseled/stone_crushed.png new file mode 100644 index 00000000..0208a225 Binary files /dev/null and b/public/textures/rechiseled/stone_crushed.png differ diff --git a/public/textures/rechiseled/stone_crushed_connecting.png b/public/textures/rechiseled/stone_crushed_connecting.png new file mode 100644 index 00000000..0208a225 Binary files /dev/null and b/public/textures/rechiseled/stone_crushed_connecting.png differ diff --git a/public/textures/rechiseled/stone_diagonal_bricks.png b/public/textures/rechiseled/stone_diagonal_bricks.png new file mode 100644 index 00000000..3cbf930a Binary files /dev/null and b/public/textures/rechiseled/stone_diagonal_bricks.png differ diff --git a/public/textures/rechiseled/stone_diagonal_bricks_connecting.png b/public/textures/rechiseled/stone_diagonal_bricks_connecting.png new file mode 100644 index 00000000..3cbf930a Binary files /dev/null and b/public/textures/rechiseled/stone_diagonal_bricks_connecting.png differ diff --git a/public/textures/rechiseled/stone_path.png b/public/textures/rechiseled/stone_path.png new file mode 100644 index 00000000..56ee5d09 Binary files /dev/null and b/public/textures/rechiseled/stone_path.png differ diff --git a/public/textures/rechiseled/stone_path_connecting.png b/public/textures/rechiseled/stone_path_connecting.png new file mode 100644 index 00000000..56ee5d09 Binary files /dev/null and b/public/textures/rechiseled/stone_path_connecting.png differ diff --git a/public/textures/rechiseled/stone_rotated_bricks.png b/public/textures/rechiseled/stone_rotated_bricks.png new file mode 100644 index 00000000..b505ef74 Binary files /dev/null and b/public/textures/rechiseled/stone_rotated_bricks.png differ diff --git a/public/textures/rechiseled/stone_rotated_bricks_connecting.png b/public/textures/rechiseled/stone_rotated_bricks_connecting.png new file mode 100644 index 00000000..b505ef74 Binary files /dev/null and b/public/textures/rechiseled/stone_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/stone_slated.png b/public/textures/rechiseled/stone_slated.png new file mode 100644 index 00000000..7930b064 Binary files /dev/null and b/public/textures/rechiseled/stone_slated.png differ diff --git a/public/textures/rechiseled/stone_small_bricks.png b/public/textures/rechiseled/stone_small_bricks.png new file mode 100644 index 00000000..cf93dfd1 Binary files /dev/null and b/public/textures/rechiseled/stone_small_bricks.png differ diff --git a/public/textures/rechiseled/stone_small_bricks_connecting.png b/public/textures/rechiseled/stone_small_bricks_connecting.png new file mode 100644 index 00000000..cf93dfd1 Binary files /dev/null and b/public/textures/rechiseled/stone_small_bricks_connecting.png differ diff --git a/public/textures/rechiseled/stone_small_tiles.png b/public/textures/rechiseled/stone_small_tiles.png new file mode 100644 index 00000000..9023d70f Binary files /dev/null and b/public/textures/rechiseled/stone_small_tiles.png differ diff --git a/public/textures/rechiseled/stone_small_tiles_connecting.png b/public/textures/rechiseled/stone_small_tiles_connecting.png new file mode 100644 index 00000000..9023d70f Binary files /dev/null and b/public/textures/rechiseled/stone_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/stone_smooth_brick_paving.png b/public/textures/rechiseled/stone_smooth_brick_paving.png new file mode 100644 index 00000000..b90e3ab2 Binary files /dev/null and b/public/textures/rechiseled/stone_smooth_brick_paving.png differ diff --git a/public/textures/rechiseled/stone_smooth_brick_paving_connecting.png b/public/textures/rechiseled/stone_smooth_brick_paving_connecting.png new file mode 100644 index 00000000..b90e3ab2 Binary files /dev/null and b/public/textures/rechiseled/stone_smooth_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/stone_smooth_connecting.png b/public/textures/rechiseled/stone_smooth_connecting.png new file mode 100644 index 00000000..63f12778 Binary files /dev/null and b/public/textures/rechiseled/stone_smooth_connecting.png differ diff --git a/public/textures/rechiseled/stone_smooth_large_tiles.png b/public/textures/rechiseled/stone_smooth_large_tiles.png new file mode 100644 index 00000000..ea361dc8 Binary files /dev/null and b/public/textures/rechiseled/stone_smooth_large_tiles.png differ diff --git a/public/textures/rechiseled/stone_smooth_large_tiles_connecting.png b/public/textures/rechiseled/stone_smooth_large_tiles_connecting.png new file mode 100644 index 00000000..ea361dc8 Binary files /dev/null and b/public/textures/rechiseled/stone_smooth_large_tiles_connecting.png differ diff --git a/public/textures/rechiseled/stone_smooth_rotated_bricks.png b/public/textures/rechiseled/stone_smooth_rotated_bricks.png new file mode 100644 index 00000000..0efbd6a6 Binary files /dev/null and b/public/textures/rechiseled/stone_smooth_rotated_bricks.png differ diff --git a/public/textures/rechiseled/stone_smooth_rotated_bricks_connecting.png b/public/textures/rechiseled/stone_smooth_rotated_bricks_connecting.png new file mode 100644 index 00000000..0efbd6a6 Binary files /dev/null and b/public/textures/rechiseled/stone_smooth_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/stone_smooth_tiles.png b/public/textures/rechiseled/stone_smooth_tiles.png new file mode 100644 index 00000000..7266ee29 Binary files /dev/null and b/public/textures/rechiseled/stone_smooth_tiles.png differ diff --git a/public/textures/rechiseled/stone_smooth_tiles_connecting.png b/public/textures/rechiseled/stone_smooth_tiles_connecting.png new file mode 100644 index 00000000..7266ee29 Binary files /dev/null and b/public/textures/rechiseled/stone_smooth_tiles_connecting.png differ diff --git a/public/textures/rechiseled/stone_squares.png b/public/textures/rechiseled/stone_squares.png new file mode 100644 index 00000000..f1c24603 Binary files /dev/null and b/public/textures/rechiseled/stone_squares.png differ diff --git a/public/textures/rechiseled/stone_squares_connecting.png b/public/textures/rechiseled/stone_squares_connecting.png new file mode 100644 index 00000000..f1c24603 Binary files /dev/null and b/public/textures/rechiseled/stone_squares_connecting.png differ diff --git a/public/textures/rechiseled/stone_tiles.png b/public/textures/rechiseled/stone_tiles.png new file mode 100644 index 00000000..ad456c02 Binary files /dev/null and b/public/textures/rechiseled/stone_tiles.png differ diff --git a/public/textures/rechiseled/stone_tiles_connecting.png b/public/textures/rechiseled/stone_tiles_connecting.png new file mode 100644 index 00000000..ad456c02 Binary files /dev/null and b/public/textures/rechiseled/stone_tiles_connecting.png differ diff --git a/public/textures/rechiseled/stone_waves.png b/public/textures/rechiseled/stone_waves.png new file mode 100644 index 00000000..4e3b30c4 Binary files /dev/null and b/public/textures/rechiseled/stone_waves.png differ diff --git a/public/textures/rechiseled/stone_waves_connecting.png b/public/textures/rechiseled/stone_waves_connecting.png new file mode 100644 index 00000000..4e3b30c4 Binary files /dev/null and b/public/textures/rechiseled/stone_waves_connecting.png differ diff --git a/public/textures/rechiseled/warped_planks_beams.png b/public/textures/rechiseled/warped_planks_beams.png new file mode 100644 index 00000000..7e435b78 Binary files /dev/null and b/public/textures/rechiseled/warped_planks_beams.png differ diff --git a/public/textures/rechiseled/warped_planks_beams_connecting.png b/public/textures/rechiseled/warped_planks_beams_connecting.png new file mode 100644 index 00000000..7e435b78 Binary files /dev/null and b/public/textures/rechiseled/warped_planks_beams_connecting.png differ diff --git a/public/textures/rechiseled/warped_planks_brick_pattern.png b/public/textures/rechiseled/warped_planks_brick_pattern.png new file mode 100644 index 00000000..7dec0a4f Binary files /dev/null and b/public/textures/rechiseled/warped_planks_brick_pattern.png differ diff --git a/public/textures/rechiseled/warped_planks_brick_pattern_connecting.png b/public/textures/rechiseled/warped_planks_brick_pattern_connecting.png new file mode 100644 index 00000000..7dec0a4f Binary files /dev/null and b/public/textures/rechiseled/warped_planks_brick_pattern_connecting.png differ diff --git a/public/textures/rechiseled/warped_planks_brick_paving.png b/public/textures/rechiseled/warped_planks_brick_paving.png new file mode 100644 index 00000000..aed0f151 Binary files /dev/null and b/public/textures/rechiseled/warped_planks_brick_paving.png differ diff --git a/public/textures/rechiseled/warped_planks_brick_paving_connecting.png b/public/textures/rechiseled/warped_planks_brick_paving_connecting.png new file mode 100644 index 00000000..aed0f151 Binary files /dev/null and b/public/textures/rechiseled/warped_planks_brick_paving_connecting.png differ diff --git a/public/textures/rechiseled/warped_planks_bricks.png b/public/textures/rechiseled/warped_planks_bricks.png new file mode 100644 index 00000000..63a2f864 Binary files /dev/null and b/public/textures/rechiseled/warped_planks_bricks.png differ diff --git a/public/textures/rechiseled/warped_planks_bricks_connecting.png b/public/textures/rechiseled/warped_planks_bricks_connecting.png new file mode 100644 index 00000000..63a2f864 Binary files /dev/null and b/public/textures/rechiseled/warped_planks_bricks_connecting.png differ diff --git a/public/textures/rechiseled/warped_planks_crate.png b/public/textures/rechiseled/warped_planks_crate.png new file mode 100644 index 00000000..bdda0589 Binary files /dev/null and b/public/textures/rechiseled/warped_planks_crate.png differ diff --git a/public/textures/rechiseled/warped_planks_crate_connecting.png b/public/textures/rechiseled/warped_planks_crate_connecting.png new file mode 100644 index 00000000..bdda0589 Binary files /dev/null and b/public/textures/rechiseled/warped_planks_crate_connecting.png differ diff --git a/public/textures/rechiseled/warped_planks_diagonal_stripes.png b/public/textures/rechiseled/warped_planks_diagonal_stripes.png new file mode 100644 index 00000000..bcdc54cb Binary files /dev/null and b/public/textures/rechiseled/warped_planks_diagonal_stripes.png differ diff --git a/public/textures/rechiseled/warped_planks_diagonal_stripes_connecting.png b/public/textures/rechiseled/warped_planks_diagonal_stripes_connecting.png new file mode 100644 index 00000000..bcdc54cb Binary files /dev/null and b/public/textures/rechiseled/warped_planks_diagonal_stripes_connecting.png differ diff --git a/public/textures/rechiseled/warped_planks_diagonal_tiles.png b/public/textures/rechiseled/warped_planks_diagonal_tiles.png new file mode 100644 index 00000000..f244c132 Binary files /dev/null and b/public/textures/rechiseled/warped_planks_diagonal_tiles.png differ diff --git a/public/textures/rechiseled/warped_planks_diagonal_tiles_connecting.png b/public/textures/rechiseled/warped_planks_diagonal_tiles_connecting.png new file mode 100644 index 00000000..f244c132 Binary files /dev/null and b/public/textures/rechiseled/warped_planks_diagonal_tiles_connecting.png differ diff --git a/public/textures/rechiseled/warped_planks_dotted.png b/public/textures/rechiseled/warped_planks_dotted.png new file mode 100644 index 00000000..748e002c Binary files /dev/null and b/public/textures/rechiseled/warped_planks_dotted.png differ diff --git a/public/textures/rechiseled/warped_planks_dotted_connecting.png b/public/textures/rechiseled/warped_planks_dotted_connecting.png new file mode 100644 index 00000000..748e002c Binary files /dev/null and b/public/textures/rechiseled/warped_planks_dotted_connecting.png differ diff --git a/public/textures/rechiseled/warped_planks_flooring.png b/public/textures/rechiseled/warped_planks_flooring.png new file mode 100644 index 00000000..12d09917 Binary files /dev/null and b/public/textures/rechiseled/warped_planks_flooring.png differ diff --git a/public/textures/rechiseled/warped_planks_flooring_connecting.png b/public/textures/rechiseled/warped_planks_flooring_connecting.png new file mode 100644 index 00000000..12d09917 Binary files /dev/null and b/public/textures/rechiseled/warped_planks_flooring_connecting.png differ diff --git a/public/textures/rechiseled/warped_planks_large_tiles.png b/public/textures/rechiseled/warped_planks_large_tiles.png new file mode 100644 index 00000000..c64ae568 Binary files /dev/null and b/public/textures/rechiseled/warped_planks_large_tiles.png differ diff --git a/public/textures/rechiseled/warped_planks_large_tiles_connecting.png b/public/textures/rechiseled/warped_planks_large_tiles_connecting.png new file mode 100644 index 00000000..c64ae568 Binary files /dev/null and b/public/textures/rechiseled/warped_planks_large_tiles_connecting.png differ diff --git a/public/textures/rechiseled/warped_planks_mosaic.png b/public/textures/rechiseled/warped_planks_mosaic.png new file mode 100644 index 00000000..22c6b6ec Binary files /dev/null and b/public/textures/rechiseled/warped_planks_mosaic.png differ diff --git a/public/textures/rechiseled/warped_planks_pattern.png b/public/textures/rechiseled/warped_planks_pattern.png new file mode 100644 index 00000000..205d940c Binary files /dev/null and b/public/textures/rechiseled/warped_planks_pattern.png differ diff --git a/public/textures/rechiseled/warped_planks_pattern_connecting.png b/public/textures/rechiseled/warped_planks_pattern_connecting.png new file mode 100644 index 00000000..205d940c Binary files /dev/null and b/public/textures/rechiseled/warped_planks_pattern_connecting.png differ diff --git a/public/textures/rechiseled/warped_planks_rotated_bricks.png b/public/textures/rechiseled/warped_planks_rotated_bricks.png new file mode 100644 index 00000000..fcb28cf6 Binary files /dev/null and b/public/textures/rechiseled/warped_planks_rotated_bricks.png differ diff --git a/public/textures/rechiseled/warped_planks_rotated_bricks_connecting.png b/public/textures/rechiseled/warped_planks_rotated_bricks_connecting.png new file mode 100644 index 00000000..fcb28cf6 Binary files /dev/null and b/public/textures/rechiseled/warped_planks_rotated_bricks_connecting.png differ diff --git a/public/textures/rechiseled/warped_planks_small_bricks.png b/public/textures/rechiseled/warped_planks_small_bricks.png new file mode 100644 index 00000000..2355571f Binary files /dev/null and b/public/textures/rechiseled/warped_planks_small_bricks.png differ diff --git a/public/textures/rechiseled/warped_planks_small_bricks_connecting.png b/public/textures/rechiseled/warped_planks_small_bricks_connecting.png new file mode 100644 index 00000000..2355571f Binary files /dev/null and b/public/textures/rechiseled/warped_planks_small_bricks_connecting.png differ diff --git a/public/textures/rechiseled/warped_planks_small_tiles.png b/public/textures/rechiseled/warped_planks_small_tiles.png new file mode 100644 index 00000000..78811551 Binary files /dev/null and b/public/textures/rechiseled/warped_planks_small_tiles.png differ diff --git a/public/textures/rechiseled/warped_planks_small_tiles_connecting.png b/public/textures/rechiseled/warped_planks_small_tiles_connecting.png new file mode 100644 index 00000000..78811551 Binary files /dev/null and b/public/textures/rechiseled/warped_planks_small_tiles_connecting.png differ diff --git a/public/textures/rechiseled/warped_planks_squares.png b/public/textures/rechiseled/warped_planks_squares.png new file mode 100644 index 00000000..1ec4606b Binary files /dev/null and b/public/textures/rechiseled/warped_planks_squares.png differ diff --git a/public/textures/rechiseled/warped_planks_squares_connecting.png b/public/textures/rechiseled/warped_planks_squares_connecting.png new file mode 100644 index 00000000..1ec4606b Binary files /dev/null and b/public/textures/rechiseled/warped_planks_squares_connecting.png differ diff --git a/public/textures/rechiseled/warped_planks_tiles.png b/public/textures/rechiseled/warped_planks_tiles.png new file mode 100644 index 00000000..d8324b42 Binary files /dev/null and b/public/textures/rechiseled/warped_planks_tiles.png differ diff --git a/public/textures/rechiseled/warped_planks_tiles_connecting.png b/public/textures/rechiseled/warped_planks_tiles_connecting.png new file mode 100644 index 00000000..d8324b42 Binary files /dev/null and b/public/textures/rechiseled/warped_planks_tiles_connecting.png differ diff --git a/public/textures/rechiseled/warped_planks_wavy.png b/public/textures/rechiseled/warped_planks_wavy.png new file mode 100644 index 00000000..836a84a6 Binary files /dev/null and b/public/textures/rechiseled/warped_planks_wavy.png differ diff --git a/public/textures/rechiseled/warped_planks_wavy_connecting.png b/public/textures/rechiseled/warped_planks_wavy_connecting.png new file mode 100644 index 00000000..836a84a6 Binary files /dev/null and b/public/textures/rechiseled/warped_planks_wavy_connecting.png differ diff --git a/public/textures/rechiseled/warped_planks_woven.png b/public/textures/rechiseled/warped_planks_woven.png new file mode 100644 index 00000000..41eb3140 Binary files /dev/null and b/public/textures/rechiseled/warped_planks_woven.png differ diff --git a/public/textures/rechiseled/warped_planks_woven_connecting.png b/public/textures/rechiseled/warped_planks_woven_connecting.png new file mode 100644 index 00000000..41eb3140 Binary files /dev/null and b/public/textures/rechiseled/warped_planks_woven_connecting.png differ diff --git a/public/textures/rechiseledcreate/acacia_window_covered.png b/public/textures/rechiseledcreate/acacia_window_covered.png new file mode 100644 index 00000000..eb07101d Binary files /dev/null and b/public/textures/rechiseledcreate/acacia_window_covered.png differ diff --git a/public/textures/rechiseledcreate/acacia_window_covered_connecting.png b/public/textures/rechiseledcreate/acacia_window_covered_connecting.png new file mode 100644 index 00000000..eb07101d Binary files /dev/null and b/public/textures/rechiseledcreate/acacia_window_covered_connecting.png differ diff --git a/public/textures/rechiseledcreate/acacia_window_diagonal.png b/public/textures/rechiseledcreate/acacia_window_diagonal.png new file mode 100644 index 00000000..5a858b52 Binary files /dev/null and b/public/textures/rechiseledcreate/acacia_window_diagonal.png differ diff --git a/public/textures/rechiseledcreate/acacia_window_diagonal_connecting.png b/public/textures/rechiseledcreate/acacia_window_diagonal_connecting.png new file mode 100644 index 00000000..5a858b52 Binary files /dev/null and b/public/textures/rechiseledcreate/acacia_window_diagonal_connecting.png differ diff --git a/public/textures/rechiseledcreate/acacia_window_large.png b/public/textures/rechiseledcreate/acacia_window_large.png new file mode 100644 index 00000000..0a693b7f Binary files /dev/null and b/public/textures/rechiseledcreate/acacia_window_large.png differ diff --git a/public/textures/rechiseledcreate/acacia_window_large_connecting.png b/public/textures/rechiseledcreate/acacia_window_large_connecting.png new file mode 100644 index 00000000..0a693b7f Binary files /dev/null and b/public/textures/rechiseledcreate/acacia_window_large_connecting.png differ diff --git a/public/textures/rechiseledcreate/acacia_window_panes.png b/public/textures/rechiseledcreate/acacia_window_panes.png new file mode 100644 index 00000000..b095e8c0 Binary files /dev/null and b/public/textures/rechiseledcreate/acacia_window_panes.png differ diff --git a/public/textures/rechiseledcreate/acacia_window_panes_connecting.png b/public/textures/rechiseledcreate/acacia_window_panes_connecting.png new file mode 100644 index 00000000..b095e8c0 Binary files /dev/null and b/public/textures/rechiseledcreate/acacia_window_panes_connecting.png differ diff --git a/public/textures/rechiseledcreate/acacia_window_rounded.png b/public/textures/rechiseledcreate/acacia_window_rounded.png new file mode 100644 index 00000000..c3338254 Binary files /dev/null and b/public/textures/rechiseledcreate/acacia_window_rounded.png differ diff --git a/public/textures/rechiseledcreate/acacia_window_rounded_connecting.png b/public/textures/rechiseledcreate/acacia_window_rounded_connecting.png new file mode 100644 index 00000000..c3338254 Binary files /dev/null and b/public/textures/rechiseledcreate/acacia_window_rounded_connecting.png differ diff --git a/public/textures/rechiseledcreate/acacia_window_slim.png b/public/textures/rechiseledcreate/acacia_window_slim.png new file mode 100644 index 00000000..240beb3b Binary files /dev/null and b/public/textures/rechiseledcreate/acacia_window_slim.png differ diff --git a/public/textures/rechiseledcreate/acacia_window_slim_connecting.png b/public/textures/rechiseledcreate/acacia_window_slim_connecting.png new file mode 100644 index 00000000..240beb3b Binary files /dev/null and b/public/textures/rechiseledcreate/acacia_window_slim_connecting.png differ diff --git a/public/textures/rechiseledcreate/acacia_window_swirling.png b/public/textures/rechiseledcreate/acacia_window_swirling.png new file mode 100644 index 00000000..97fa1a91 Binary files /dev/null and b/public/textures/rechiseledcreate/acacia_window_swirling.png differ diff --git a/public/textures/rechiseledcreate/acacia_window_swirling_connecting.png b/public/textures/rechiseledcreate/acacia_window_swirling_connecting.png new file mode 100644 index 00000000..97fa1a91 Binary files /dev/null and b/public/textures/rechiseledcreate/acacia_window_swirling_connecting.png differ diff --git a/public/textures/rechiseledcreate/acacia_window_tiles.png b/public/textures/rechiseledcreate/acacia_window_tiles.png new file mode 100644 index 00000000..f0054151 Binary files /dev/null and b/public/textures/rechiseledcreate/acacia_window_tiles.png differ diff --git a/public/textures/rechiseledcreate/acacia_window_tiles_connecting.png b/public/textures/rechiseledcreate/acacia_window_tiles_connecting.png new file mode 100644 index 00000000..f0054151 Binary files /dev/null and b/public/textures/rechiseledcreate/acacia_window_tiles_connecting.png differ diff --git a/public/textures/rechiseledcreate/andesite_cut_polished_connecting.png b/public/textures/rechiseledcreate/andesite_cut_polished_connecting.png new file mode 100644 index 00000000..166c471d Binary files /dev/null and b/public/textures/rechiseledcreate/andesite_cut_polished_connecting.png differ diff --git a/public/textures/rechiseledcreate/andesite_cut_small_brick_connecting.png b/public/textures/rechiseledcreate/andesite_cut_small_brick_connecting.png new file mode 100644 index 00000000..7ec0d779 Binary files /dev/null and b/public/textures/rechiseledcreate/andesite_cut_small_brick_connecting.png differ diff --git a/public/textures/rechiseledcreate/asurine_cut_polished_connecting.png b/public/textures/rechiseledcreate/asurine_cut_polished_connecting.png new file mode 100644 index 00000000..4689cace Binary files /dev/null and b/public/textures/rechiseledcreate/asurine_cut_polished_connecting.png differ diff --git a/public/textures/rechiseledcreate/asurine_cut_small_brick_connecting.png b/public/textures/rechiseledcreate/asurine_cut_small_brick_connecting.png new file mode 100644 index 00000000..dd4ab52a Binary files /dev/null and b/public/textures/rechiseledcreate/asurine_cut_small_brick_connecting.png differ diff --git a/public/textures/rechiseledcreate/birch_window_bars.png b/public/textures/rechiseledcreate/birch_window_bars.png new file mode 100644 index 00000000..051939b5 Binary files /dev/null and b/public/textures/rechiseledcreate/birch_window_bars.png differ diff --git a/public/textures/rechiseledcreate/birch_window_bars_connecting.png b/public/textures/rechiseledcreate/birch_window_bars_connecting.png new file mode 100644 index 00000000..051939b5 Binary files /dev/null and b/public/textures/rechiseledcreate/birch_window_bars_connecting.png differ diff --git a/public/textures/rechiseledcreate/birch_window_diagonal.png b/public/textures/rechiseledcreate/birch_window_diagonal.png new file mode 100644 index 00000000..7c0d8ce2 Binary files /dev/null and b/public/textures/rechiseledcreate/birch_window_diagonal.png differ diff --git a/public/textures/rechiseledcreate/birch_window_diagonal_connecting.png b/public/textures/rechiseledcreate/birch_window_diagonal_connecting.png new file mode 100644 index 00000000..7c0d8ce2 Binary files /dev/null and b/public/textures/rechiseledcreate/birch_window_diagonal_connecting.png differ diff --git a/public/textures/rechiseledcreate/birch_window_large.png b/public/textures/rechiseledcreate/birch_window_large.png new file mode 100644 index 00000000..12a341c2 Binary files /dev/null and b/public/textures/rechiseledcreate/birch_window_large.png differ diff --git a/public/textures/rechiseledcreate/birch_window_large_connecting.png b/public/textures/rechiseledcreate/birch_window_large_connecting.png new file mode 100644 index 00000000..12a341c2 Binary files /dev/null and b/public/textures/rechiseledcreate/birch_window_large_connecting.png differ diff --git a/public/textures/rechiseledcreate/birch_window_panes.png b/public/textures/rechiseledcreate/birch_window_panes.png new file mode 100644 index 00000000..477cba63 Binary files /dev/null and b/public/textures/rechiseledcreate/birch_window_panes.png differ diff --git a/public/textures/rechiseledcreate/birch_window_panes_connecting.png b/public/textures/rechiseledcreate/birch_window_panes_connecting.png new file mode 100644 index 00000000..477cba63 Binary files /dev/null and b/public/textures/rechiseledcreate/birch_window_panes_connecting.png differ diff --git a/public/textures/rechiseledcreate/birch_window_rounded.png b/public/textures/rechiseledcreate/birch_window_rounded.png new file mode 100644 index 00000000..b937a194 Binary files /dev/null and b/public/textures/rechiseledcreate/birch_window_rounded.png differ diff --git a/public/textures/rechiseledcreate/birch_window_rounded_connecting.png b/public/textures/rechiseledcreate/birch_window_rounded_connecting.png new file mode 100644 index 00000000..b937a194 Binary files /dev/null and b/public/textures/rechiseledcreate/birch_window_rounded_connecting.png differ diff --git a/public/textures/rechiseledcreate/birch_window_slim.png b/public/textures/rechiseledcreate/birch_window_slim.png new file mode 100644 index 00000000..704a3273 Binary files /dev/null and b/public/textures/rechiseledcreate/birch_window_slim.png differ diff --git a/public/textures/rechiseledcreate/birch_window_slim_connecting.png b/public/textures/rechiseledcreate/birch_window_slim_connecting.png new file mode 100644 index 00000000..704a3273 Binary files /dev/null and b/public/textures/rechiseledcreate/birch_window_slim_connecting.png differ diff --git a/public/textures/rechiseledcreate/birch_window_swirling.png b/public/textures/rechiseledcreate/birch_window_swirling.png new file mode 100644 index 00000000..e7c3c1b8 Binary files /dev/null and b/public/textures/rechiseledcreate/birch_window_swirling.png differ diff --git a/public/textures/rechiseledcreate/birch_window_swirling_connecting.png b/public/textures/rechiseledcreate/birch_window_swirling_connecting.png new file mode 100644 index 00000000..e7c3c1b8 Binary files /dev/null and b/public/textures/rechiseledcreate/birch_window_swirling_connecting.png differ diff --git a/public/textures/rechiseledcreate/birch_window_tiles.png b/public/textures/rechiseledcreate/birch_window_tiles.png new file mode 100644 index 00000000..cc24202e Binary files /dev/null and b/public/textures/rechiseledcreate/birch_window_tiles.png differ diff --git a/public/textures/rechiseledcreate/birch_window_tiles_connecting.png b/public/textures/rechiseledcreate/birch_window_tiles_connecting.png new file mode 100644 index 00000000..cc24202e Binary files /dev/null and b/public/textures/rechiseledcreate/birch_window_tiles_connecting.png differ diff --git a/public/textures/rechiseledcreate/calcite_cut_polished_connecting.png b/public/textures/rechiseledcreate/calcite_cut_polished_connecting.png new file mode 100644 index 00000000..300cddb8 Binary files /dev/null and b/public/textures/rechiseledcreate/calcite_cut_polished_connecting.png differ diff --git a/public/textures/rechiseledcreate/calcite_cut_small_brick_connecting.png b/public/textures/rechiseledcreate/calcite_cut_small_brick_connecting.png new file mode 100644 index 00000000..fe8afb26 Binary files /dev/null and b/public/textures/rechiseledcreate/calcite_cut_small_brick_connecting.png differ diff --git a/public/textures/rechiseledcreate/crimsite_cut_polished_connecting.png b/public/textures/rechiseledcreate/crimsite_cut_polished_connecting.png new file mode 100644 index 00000000..823847ab Binary files /dev/null and b/public/textures/rechiseledcreate/crimsite_cut_polished_connecting.png differ diff --git a/public/textures/rechiseledcreate/crimsite_cut_small_brick_connecting.png b/public/textures/rechiseledcreate/crimsite_cut_small_brick_connecting.png new file mode 100644 index 00000000..3fc088ab Binary files /dev/null and b/public/textures/rechiseledcreate/crimsite_cut_small_brick_connecting.png differ diff --git a/public/textures/rechiseledcreate/crimson_window_bars.png b/public/textures/rechiseledcreate/crimson_window_bars.png new file mode 100644 index 00000000..04ce3e66 Binary files /dev/null and b/public/textures/rechiseledcreate/crimson_window_bars.png differ diff --git a/public/textures/rechiseledcreate/crimson_window_bars_connecting.png b/public/textures/rechiseledcreate/crimson_window_bars_connecting.png new file mode 100644 index 00000000..04ce3e66 Binary files /dev/null and b/public/textures/rechiseledcreate/crimson_window_bars_connecting.png differ diff --git a/public/textures/rechiseledcreate/crimson_window_covered.png b/public/textures/rechiseledcreate/crimson_window_covered.png new file mode 100644 index 00000000..6aa18cd2 Binary files /dev/null and b/public/textures/rechiseledcreate/crimson_window_covered.png differ diff --git a/public/textures/rechiseledcreate/crimson_window_covered_connecting.png b/public/textures/rechiseledcreate/crimson_window_covered_connecting.png new file mode 100644 index 00000000..6aa18cd2 Binary files /dev/null and b/public/textures/rechiseledcreate/crimson_window_covered_connecting.png differ diff --git a/public/textures/rechiseledcreate/crimson_window_large.png b/public/textures/rechiseledcreate/crimson_window_large.png new file mode 100644 index 00000000..2fe10854 Binary files /dev/null and b/public/textures/rechiseledcreate/crimson_window_large.png differ diff --git a/public/textures/rechiseledcreate/crimson_window_large_connecting.png b/public/textures/rechiseledcreate/crimson_window_large_connecting.png new file mode 100644 index 00000000..2fe10854 Binary files /dev/null and b/public/textures/rechiseledcreate/crimson_window_large_connecting.png differ diff --git a/public/textures/rechiseledcreate/crimson_window_panes.png b/public/textures/rechiseledcreate/crimson_window_panes.png new file mode 100644 index 00000000..b7b0f935 Binary files /dev/null and b/public/textures/rechiseledcreate/crimson_window_panes.png differ diff --git a/public/textures/rechiseledcreate/crimson_window_panes_connecting.png b/public/textures/rechiseledcreate/crimson_window_panes_connecting.png new file mode 100644 index 00000000..b7b0f935 Binary files /dev/null and b/public/textures/rechiseledcreate/crimson_window_panes_connecting.png differ diff --git a/public/textures/rechiseledcreate/crimson_window_rounded.png b/public/textures/rechiseledcreate/crimson_window_rounded.png new file mode 100644 index 00000000..cdc12f69 Binary files /dev/null and b/public/textures/rechiseledcreate/crimson_window_rounded.png differ diff --git a/public/textures/rechiseledcreate/crimson_window_rounded_connecting.png b/public/textures/rechiseledcreate/crimson_window_rounded_connecting.png new file mode 100644 index 00000000..cdc12f69 Binary files /dev/null and b/public/textures/rechiseledcreate/crimson_window_rounded_connecting.png differ diff --git a/public/textures/rechiseledcreate/crimson_window_slim.png b/public/textures/rechiseledcreate/crimson_window_slim.png new file mode 100644 index 00000000..becfcb6c Binary files /dev/null and b/public/textures/rechiseledcreate/crimson_window_slim.png differ diff --git a/public/textures/rechiseledcreate/crimson_window_slim_connecting.png b/public/textures/rechiseledcreate/crimson_window_slim_connecting.png new file mode 100644 index 00000000..becfcb6c Binary files /dev/null and b/public/textures/rechiseledcreate/crimson_window_slim_connecting.png differ diff --git a/public/textures/rechiseledcreate/crimson_window_swirling.png b/public/textures/rechiseledcreate/crimson_window_swirling.png new file mode 100644 index 00000000..0bb0b863 Binary files /dev/null and b/public/textures/rechiseledcreate/crimson_window_swirling.png differ diff --git a/public/textures/rechiseledcreate/crimson_window_swirling_connecting.png b/public/textures/rechiseledcreate/crimson_window_swirling_connecting.png new file mode 100644 index 00000000..0bb0b863 Binary files /dev/null and b/public/textures/rechiseledcreate/crimson_window_swirling_connecting.png differ diff --git a/public/textures/rechiseledcreate/crimson_window_tiles.png b/public/textures/rechiseledcreate/crimson_window_tiles.png new file mode 100644 index 00000000..abbcf6eb Binary files /dev/null and b/public/textures/rechiseledcreate/crimson_window_tiles.png differ diff --git a/public/textures/rechiseledcreate/crimson_window_tiles_connecting.png b/public/textures/rechiseledcreate/crimson_window_tiles_connecting.png new file mode 100644 index 00000000..abbcf6eb Binary files /dev/null and b/public/textures/rechiseledcreate/crimson_window_tiles_connecting.png differ diff --git a/public/textures/rechiseledcreate/dark_oak_window_bars.png b/public/textures/rechiseledcreate/dark_oak_window_bars.png new file mode 100644 index 00000000..6e8cf735 Binary files /dev/null and b/public/textures/rechiseledcreate/dark_oak_window_bars.png differ diff --git a/public/textures/rechiseledcreate/dark_oak_window_bars_connecting.png b/public/textures/rechiseledcreate/dark_oak_window_bars_connecting.png new file mode 100644 index 00000000..6e8cf735 Binary files /dev/null and b/public/textures/rechiseledcreate/dark_oak_window_bars_connecting.png differ diff --git a/public/textures/rechiseledcreate/dark_oak_window_covered.png b/public/textures/rechiseledcreate/dark_oak_window_covered.png new file mode 100644 index 00000000..a5fab469 Binary files /dev/null and b/public/textures/rechiseledcreate/dark_oak_window_covered.png differ diff --git a/public/textures/rechiseledcreate/dark_oak_window_covered_connecting.png b/public/textures/rechiseledcreate/dark_oak_window_covered_connecting.png new file mode 100644 index 00000000..a5fab469 Binary files /dev/null and b/public/textures/rechiseledcreate/dark_oak_window_covered_connecting.png differ diff --git a/public/textures/rechiseledcreate/dark_oak_window_diagonal.png b/public/textures/rechiseledcreate/dark_oak_window_diagonal.png new file mode 100644 index 00000000..f16bd5a4 Binary files /dev/null and b/public/textures/rechiseledcreate/dark_oak_window_diagonal.png differ diff --git a/public/textures/rechiseledcreate/dark_oak_window_diagonal_connecting.png b/public/textures/rechiseledcreate/dark_oak_window_diagonal_connecting.png new file mode 100644 index 00000000..f16bd5a4 Binary files /dev/null and b/public/textures/rechiseledcreate/dark_oak_window_diagonal_connecting.png differ diff --git a/public/textures/rechiseledcreate/dark_oak_window_panes.png b/public/textures/rechiseledcreate/dark_oak_window_panes.png new file mode 100644 index 00000000..ed8e9e04 Binary files /dev/null and b/public/textures/rechiseledcreate/dark_oak_window_panes.png differ diff --git a/public/textures/rechiseledcreate/dark_oak_window_panes_connecting.png b/public/textures/rechiseledcreate/dark_oak_window_panes_connecting.png new file mode 100644 index 00000000..ed8e9e04 Binary files /dev/null and b/public/textures/rechiseledcreate/dark_oak_window_panes_connecting.png differ diff --git a/public/textures/rechiseledcreate/dark_oak_window_rounded.png b/public/textures/rechiseledcreate/dark_oak_window_rounded.png new file mode 100644 index 00000000..1b7881b4 Binary files /dev/null and b/public/textures/rechiseledcreate/dark_oak_window_rounded.png differ diff --git a/public/textures/rechiseledcreate/dark_oak_window_rounded_connecting.png b/public/textures/rechiseledcreate/dark_oak_window_rounded_connecting.png new file mode 100644 index 00000000..1b7881b4 Binary files /dev/null and b/public/textures/rechiseledcreate/dark_oak_window_rounded_connecting.png differ diff --git a/public/textures/rechiseledcreate/dark_oak_window_slim.png b/public/textures/rechiseledcreate/dark_oak_window_slim.png new file mode 100644 index 00000000..0ac92214 Binary files /dev/null and b/public/textures/rechiseledcreate/dark_oak_window_slim.png differ diff --git a/public/textures/rechiseledcreate/dark_oak_window_slim_connecting.png b/public/textures/rechiseledcreate/dark_oak_window_slim_connecting.png new file mode 100644 index 00000000..0ac92214 Binary files /dev/null and b/public/textures/rechiseledcreate/dark_oak_window_slim_connecting.png differ diff --git a/public/textures/rechiseledcreate/dark_oak_window_swirling.png b/public/textures/rechiseledcreate/dark_oak_window_swirling.png new file mode 100644 index 00000000..f571a139 Binary files /dev/null and b/public/textures/rechiseledcreate/dark_oak_window_swirling.png differ diff --git a/public/textures/rechiseledcreate/dark_oak_window_swirling_connecting.png b/public/textures/rechiseledcreate/dark_oak_window_swirling_connecting.png new file mode 100644 index 00000000..f571a139 Binary files /dev/null and b/public/textures/rechiseledcreate/dark_oak_window_swirling_connecting.png differ diff --git a/public/textures/rechiseledcreate/dark_oak_window_tiles.png b/public/textures/rechiseledcreate/dark_oak_window_tiles.png new file mode 100644 index 00000000..1473b5c3 Binary files /dev/null and b/public/textures/rechiseledcreate/dark_oak_window_tiles.png differ diff --git a/public/textures/rechiseledcreate/dark_oak_window_tiles_connecting.png b/public/textures/rechiseledcreate/dark_oak_window_tiles_connecting.png new file mode 100644 index 00000000..1473b5c3 Binary files /dev/null and b/public/textures/rechiseledcreate/dark_oak_window_tiles_connecting.png differ diff --git a/public/textures/rechiseledcreate/deepslate_cut_polished_connecting.png b/public/textures/rechiseledcreate/deepslate_cut_polished_connecting.png new file mode 100644 index 00000000..652fc1bf Binary files /dev/null and b/public/textures/rechiseledcreate/deepslate_cut_polished_connecting.png differ diff --git a/public/textures/rechiseledcreate/deepslate_cut_small_brick_connecting.png b/public/textures/rechiseledcreate/deepslate_cut_small_brick_connecting.png new file mode 100644 index 00000000..167acd0d Binary files /dev/null and b/public/textures/rechiseledcreate/deepslate_cut_small_brick_connecting.png differ diff --git a/public/textures/rechiseledcreate/diorite_cut_polished_connecting.png b/public/textures/rechiseledcreate/diorite_cut_polished_connecting.png new file mode 100644 index 00000000..47fb9bf7 Binary files /dev/null and b/public/textures/rechiseledcreate/diorite_cut_polished_connecting.png differ diff --git a/public/textures/rechiseledcreate/diorite_cut_small_brick_connecting.png b/public/textures/rechiseledcreate/diorite_cut_small_brick_connecting.png new file mode 100644 index 00000000..ea5e3ab5 Binary files /dev/null and b/public/textures/rechiseledcreate/diorite_cut_small_brick_connecting.png differ diff --git a/public/textures/rechiseledcreate/dripstone_cut_polished_connecting.png b/public/textures/rechiseledcreate/dripstone_cut_polished_connecting.png new file mode 100644 index 00000000..1bc21023 Binary files /dev/null and b/public/textures/rechiseledcreate/dripstone_cut_polished_connecting.png differ diff --git a/public/textures/rechiseledcreate/dripstone_cut_small_brick_connecting.png b/public/textures/rechiseledcreate/dripstone_cut_small_brick_connecting.png new file mode 100644 index 00000000..ba0ea2ff Binary files /dev/null and b/public/textures/rechiseledcreate/dripstone_cut_small_brick_connecting.png differ diff --git a/public/textures/rechiseledcreate/granite_cut_polished_connecting.png b/public/textures/rechiseledcreate/granite_cut_polished_connecting.png new file mode 100644 index 00000000..a0659435 Binary files /dev/null and b/public/textures/rechiseledcreate/granite_cut_polished_connecting.png differ diff --git a/public/textures/rechiseledcreate/granite_cut_small_brick_connecting.png b/public/textures/rechiseledcreate/granite_cut_small_brick_connecting.png new file mode 100644 index 00000000..3e6fb167 Binary files /dev/null and b/public/textures/rechiseledcreate/granite_cut_small_brick_connecting.png differ diff --git a/public/textures/rechiseledcreate/jungle_window_bars.png b/public/textures/rechiseledcreate/jungle_window_bars.png new file mode 100644 index 00000000..5be32d5c Binary files /dev/null and b/public/textures/rechiseledcreate/jungle_window_bars.png differ diff --git a/public/textures/rechiseledcreate/jungle_window_bars_connecting.png b/public/textures/rechiseledcreate/jungle_window_bars_connecting.png new file mode 100644 index 00000000..5be32d5c Binary files /dev/null and b/public/textures/rechiseledcreate/jungle_window_bars_connecting.png differ diff --git a/public/textures/rechiseledcreate/jungle_window_covered.png b/public/textures/rechiseledcreate/jungle_window_covered.png new file mode 100644 index 00000000..620718a2 Binary files /dev/null and b/public/textures/rechiseledcreate/jungle_window_covered.png differ diff --git a/public/textures/rechiseledcreate/jungle_window_covered_connecting.png b/public/textures/rechiseledcreate/jungle_window_covered_connecting.png new file mode 100644 index 00000000..620718a2 Binary files /dev/null and b/public/textures/rechiseledcreate/jungle_window_covered_connecting.png differ diff --git a/public/textures/rechiseledcreate/jungle_window_diagonal.png b/public/textures/rechiseledcreate/jungle_window_diagonal.png new file mode 100644 index 00000000..4d8932d0 Binary files /dev/null and b/public/textures/rechiseledcreate/jungle_window_diagonal.png differ diff --git a/public/textures/rechiseledcreate/jungle_window_diagonal_connecting.png b/public/textures/rechiseledcreate/jungle_window_diagonal_connecting.png new file mode 100644 index 00000000..4d8932d0 Binary files /dev/null and b/public/textures/rechiseledcreate/jungle_window_diagonal_connecting.png differ diff --git a/public/textures/rechiseledcreate/jungle_window_large.png b/public/textures/rechiseledcreate/jungle_window_large.png new file mode 100644 index 00000000..870f8190 Binary files /dev/null and b/public/textures/rechiseledcreate/jungle_window_large.png differ diff --git a/public/textures/rechiseledcreate/jungle_window_large_connecting.png b/public/textures/rechiseledcreate/jungle_window_large_connecting.png new file mode 100644 index 00000000..870f8190 Binary files /dev/null and b/public/textures/rechiseledcreate/jungle_window_large_connecting.png differ diff --git a/public/textures/rechiseledcreate/jungle_window_panes.png b/public/textures/rechiseledcreate/jungle_window_panes.png new file mode 100644 index 00000000..47e2f378 Binary files /dev/null and b/public/textures/rechiseledcreate/jungle_window_panes.png differ diff --git a/public/textures/rechiseledcreate/jungle_window_panes_connecting.png b/public/textures/rechiseledcreate/jungle_window_panes_connecting.png new file mode 100644 index 00000000..47e2f378 Binary files /dev/null and b/public/textures/rechiseledcreate/jungle_window_panes_connecting.png differ diff --git a/public/textures/rechiseledcreate/jungle_window_rounded.png b/public/textures/rechiseledcreate/jungle_window_rounded.png new file mode 100644 index 00000000..b98649d9 Binary files /dev/null and b/public/textures/rechiseledcreate/jungle_window_rounded.png differ diff --git a/public/textures/rechiseledcreate/jungle_window_rounded_connecting.png b/public/textures/rechiseledcreate/jungle_window_rounded_connecting.png new file mode 100644 index 00000000..b98649d9 Binary files /dev/null and b/public/textures/rechiseledcreate/jungle_window_rounded_connecting.png differ diff --git a/public/textures/rechiseledcreate/jungle_window_swirling.png b/public/textures/rechiseledcreate/jungle_window_swirling.png new file mode 100644 index 00000000..0d5895ed Binary files /dev/null and b/public/textures/rechiseledcreate/jungle_window_swirling.png differ diff --git a/public/textures/rechiseledcreate/jungle_window_swirling_connecting.png b/public/textures/rechiseledcreate/jungle_window_swirling_connecting.png new file mode 100644 index 00000000..0d5895ed Binary files /dev/null and b/public/textures/rechiseledcreate/jungle_window_swirling_connecting.png differ diff --git a/public/textures/rechiseledcreate/jungle_window_tiles.png b/public/textures/rechiseledcreate/jungle_window_tiles.png new file mode 100644 index 00000000..12c7b187 Binary files /dev/null and b/public/textures/rechiseledcreate/jungle_window_tiles.png differ diff --git a/public/textures/rechiseledcreate/jungle_window_tiles_connecting.png b/public/textures/rechiseledcreate/jungle_window_tiles_connecting.png new file mode 100644 index 00000000..12c7b187 Binary files /dev/null and b/public/textures/rechiseledcreate/jungle_window_tiles_connecting.png differ diff --git a/public/textures/rechiseledcreate/limestone_cut_polished_connecting.png b/public/textures/rechiseledcreate/limestone_cut_polished_connecting.png new file mode 100644 index 00000000..e1f64468 Binary files /dev/null and b/public/textures/rechiseledcreate/limestone_cut_polished_connecting.png differ diff --git a/public/textures/rechiseledcreate/limestone_cut_small_brick_connecting.png b/public/textures/rechiseledcreate/limestone_cut_small_brick_connecting.png new file mode 100644 index 00000000..69a1e332 Binary files /dev/null and b/public/textures/rechiseledcreate/limestone_cut_small_brick_connecting.png differ diff --git a/public/textures/rechiseledcreate/mangrove_window_bars.png b/public/textures/rechiseledcreate/mangrove_window_bars.png new file mode 100644 index 00000000..f2215e25 Binary files /dev/null and b/public/textures/rechiseledcreate/mangrove_window_bars.png differ diff --git a/public/textures/rechiseledcreate/mangrove_window_bars_connecting.png b/public/textures/rechiseledcreate/mangrove_window_bars_connecting.png new file mode 100644 index 00000000..f2215e25 Binary files /dev/null and b/public/textures/rechiseledcreate/mangrove_window_bars_connecting.png differ diff --git a/public/textures/rechiseledcreate/mangrove_window_covered.png b/public/textures/rechiseledcreate/mangrove_window_covered.png new file mode 100644 index 00000000..8b225e63 Binary files /dev/null and b/public/textures/rechiseledcreate/mangrove_window_covered.png differ diff --git a/public/textures/rechiseledcreate/mangrove_window_covered_connecting.png b/public/textures/rechiseledcreate/mangrove_window_covered_connecting.png new file mode 100644 index 00000000..8b225e63 Binary files /dev/null and b/public/textures/rechiseledcreate/mangrove_window_covered_connecting.png differ diff --git a/public/textures/rechiseledcreate/mangrove_window_diagonal.png b/public/textures/rechiseledcreate/mangrove_window_diagonal.png new file mode 100644 index 00000000..14debec6 Binary files /dev/null and b/public/textures/rechiseledcreate/mangrove_window_diagonal.png differ diff --git a/public/textures/rechiseledcreate/mangrove_window_diagonal_connecting.png b/public/textures/rechiseledcreate/mangrove_window_diagonal_connecting.png new file mode 100644 index 00000000..14debec6 Binary files /dev/null and b/public/textures/rechiseledcreate/mangrove_window_diagonal_connecting.png differ diff --git a/public/textures/rechiseledcreate/mangrove_window_large.png b/public/textures/rechiseledcreate/mangrove_window_large.png new file mode 100644 index 00000000..cab09e78 Binary files /dev/null and b/public/textures/rechiseledcreate/mangrove_window_large.png differ diff --git a/public/textures/rechiseledcreate/mangrove_window_large_connecting.png b/public/textures/rechiseledcreate/mangrove_window_large_connecting.png new file mode 100644 index 00000000..cab09e78 Binary files /dev/null and b/public/textures/rechiseledcreate/mangrove_window_large_connecting.png differ diff --git a/public/textures/rechiseledcreate/mangrove_window_panes.png b/public/textures/rechiseledcreate/mangrove_window_panes.png new file mode 100644 index 00000000..6eeb3336 Binary files /dev/null and b/public/textures/rechiseledcreate/mangrove_window_panes.png differ diff --git a/public/textures/rechiseledcreate/mangrove_window_panes_connecting.png b/public/textures/rechiseledcreate/mangrove_window_panes_connecting.png new file mode 100644 index 00000000..6eeb3336 Binary files /dev/null and b/public/textures/rechiseledcreate/mangrove_window_panes_connecting.png differ diff --git a/public/textures/rechiseledcreate/mangrove_window_slim.png b/public/textures/rechiseledcreate/mangrove_window_slim.png new file mode 100644 index 00000000..6e1bf98f Binary files /dev/null and b/public/textures/rechiseledcreate/mangrove_window_slim.png differ diff --git a/public/textures/rechiseledcreate/mangrove_window_slim_connecting.png b/public/textures/rechiseledcreate/mangrove_window_slim_connecting.png new file mode 100644 index 00000000..6e1bf98f Binary files /dev/null and b/public/textures/rechiseledcreate/mangrove_window_slim_connecting.png differ diff --git a/public/textures/rechiseledcreate/mangrove_window_swirling.png b/public/textures/rechiseledcreate/mangrove_window_swirling.png new file mode 100644 index 00000000..a06b7a2a Binary files /dev/null and b/public/textures/rechiseledcreate/mangrove_window_swirling.png differ diff --git a/public/textures/rechiseledcreate/mangrove_window_swirling_connecting.png b/public/textures/rechiseledcreate/mangrove_window_swirling_connecting.png new file mode 100644 index 00000000..a06b7a2a Binary files /dev/null and b/public/textures/rechiseledcreate/mangrove_window_swirling_connecting.png differ diff --git a/public/textures/rechiseledcreate/mangrove_window_tiles.png b/public/textures/rechiseledcreate/mangrove_window_tiles.png new file mode 100644 index 00000000..73ef1a0f Binary files /dev/null and b/public/textures/rechiseledcreate/mangrove_window_tiles.png differ diff --git a/public/textures/rechiseledcreate/mangrove_window_tiles_connecting.png b/public/textures/rechiseledcreate/mangrove_window_tiles_connecting.png new file mode 100644 index 00000000..73ef1a0f Binary files /dev/null and b/public/textures/rechiseledcreate/mangrove_window_tiles_connecting.png differ diff --git a/public/textures/rechiseledcreate/mechanical_chisel.png b/public/textures/rechiseledcreate/mechanical_chisel.png new file mode 100644 index 00000000..e747a957 Binary files /dev/null and b/public/textures/rechiseledcreate/mechanical_chisel.png differ diff --git a/public/textures/rechiseledcreate/oak_window_bars.png b/public/textures/rechiseledcreate/oak_window_bars.png new file mode 100644 index 00000000..3e290564 Binary files /dev/null and b/public/textures/rechiseledcreate/oak_window_bars.png differ diff --git a/public/textures/rechiseledcreate/oak_window_bars_connecting.png b/public/textures/rechiseledcreate/oak_window_bars_connecting.png new file mode 100644 index 00000000..3e290564 Binary files /dev/null and b/public/textures/rechiseledcreate/oak_window_bars_connecting.png differ diff --git a/public/textures/rechiseledcreate/oak_window_covered.png b/public/textures/rechiseledcreate/oak_window_covered.png new file mode 100644 index 00000000..8620f4e7 Binary files /dev/null and b/public/textures/rechiseledcreate/oak_window_covered.png differ diff --git a/public/textures/rechiseledcreate/oak_window_covered_connecting.png b/public/textures/rechiseledcreate/oak_window_covered_connecting.png new file mode 100644 index 00000000..8620f4e7 Binary files /dev/null and b/public/textures/rechiseledcreate/oak_window_covered_connecting.png differ diff --git a/public/textures/rechiseledcreate/oak_window_diagonal.png b/public/textures/rechiseledcreate/oak_window_diagonal.png new file mode 100644 index 00000000..95323ad1 Binary files /dev/null and b/public/textures/rechiseledcreate/oak_window_diagonal.png differ diff --git a/public/textures/rechiseledcreate/oak_window_diagonal_connecting.png b/public/textures/rechiseledcreate/oak_window_diagonal_connecting.png new file mode 100644 index 00000000..95323ad1 Binary files /dev/null and b/public/textures/rechiseledcreate/oak_window_diagonal_connecting.png differ diff --git a/public/textures/rechiseledcreate/oak_window_large.png b/public/textures/rechiseledcreate/oak_window_large.png new file mode 100644 index 00000000..da771a80 Binary files /dev/null and b/public/textures/rechiseledcreate/oak_window_large.png differ diff --git a/public/textures/rechiseledcreate/oak_window_large_connecting.png b/public/textures/rechiseledcreate/oak_window_large_connecting.png new file mode 100644 index 00000000..da771a80 Binary files /dev/null and b/public/textures/rechiseledcreate/oak_window_large_connecting.png differ diff --git a/public/textures/rechiseledcreate/oak_window_rounded.png b/public/textures/rechiseledcreate/oak_window_rounded.png new file mode 100644 index 00000000..262b5a96 Binary files /dev/null and b/public/textures/rechiseledcreate/oak_window_rounded.png differ diff --git a/public/textures/rechiseledcreate/oak_window_rounded_connecting.png b/public/textures/rechiseledcreate/oak_window_rounded_connecting.png new file mode 100644 index 00000000..262b5a96 Binary files /dev/null and b/public/textures/rechiseledcreate/oak_window_rounded_connecting.png differ diff --git a/public/textures/rechiseledcreate/oak_window_slim.png b/public/textures/rechiseledcreate/oak_window_slim.png new file mode 100644 index 00000000..a1b62d45 Binary files /dev/null and b/public/textures/rechiseledcreate/oak_window_slim.png differ diff --git a/public/textures/rechiseledcreate/oak_window_slim_connecting.png b/public/textures/rechiseledcreate/oak_window_slim_connecting.png new file mode 100644 index 00000000..a1b62d45 Binary files /dev/null and b/public/textures/rechiseledcreate/oak_window_slim_connecting.png differ diff --git a/public/textures/rechiseledcreate/oak_window_swirling.png b/public/textures/rechiseledcreate/oak_window_swirling.png new file mode 100644 index 00000000..3018970f Binary files /dev/null and b/public/textures/rechiseledcreate/oak_window_swirling.png differ diff --git a/public/textures/rechiseledcreate/oak_window_swirling_connecting.png b/public/textures/rechiseledcreate/oak_window_swirling_connecting.png new file mode 100644 index 00000000..3018970f Binary files /dev/null and b/public/textures/rechiseledcreate/oak_window_swirling_connecting.png differ diff --git a/public/textures/rechiseledcreate/oak_window_tiles.png b/public/textures/rechiseledcreate/oak_window_tiles.png new file mode 100644 index 00000000..2dd77eb4 Binary files /dev/null and b/public/textures/rechiseledcreate/oak_window_tiles.png differ diff --git a/public/textures/rechiseledcreate/oak_window_tiles_connecting.png b/public/textures/rechiseledcreate/oak_window_tiles_connecting.png new file mode 100644 index 00000000..2dd77eb4 Binary files /dev/null and b/public/textures/rechiseledcreate/oak_window_tiles_connecting.png differ diff --git a/public/textures/rechiseledcreate/ochrum_cut_polished_connecting.png b/public/textures/rechiseledcreate/ochrum_cut_polished_connecting.png new file mode 100644 index 00000000..4cec4aec Binary files /dev/null and b/public/textures/rechiseledcreate/ochrum_cut_polished_connecting.png differ diff --git a/public/textures/rechiseledcreate/ochrum_cut_small_brick_connecting.png b/public/textures/rechiseledcreate/ochrum_cut_small_brick_connecting.png new file mode 100644 index 00000000..2586c808 Binary files /dev/null and b/public/textures/rechiseledcreate/ochrum_cut_small_brick_connecting.png differ diff --git a/public/textures/rechiseledcreate/rose_quartz_bricks.png b/public/textures/rechiseledcreate/rose_quartz_bricks.png new file mode 100644 index 00000000..29eccf29 Binary files /dev/null and b/public/textures/rechiseledcreate/rose_quartz_bricks.png differ diff --git a/public/textures/rechiseledcreate/rose_quartz_bricks_connecting.png b/public/textures/rechiseledcreate/rose_quartz_bricks_connecting.png new file mode 100644 index 00000000..29eccf29 Binary files /dev/null and b/public/textures/rechiseledcreate/rose_quartz_bricks_connecting.png differ diff --git a/public/textures/rechiseledcreate/rose_quartz_chiseled.png b/public/textures/rechiseledcreate/rose_quartz_chiseled.png new file mode 100644 index 00000000..bb95af25 Binary files /dev/null and b/public/textures/rechiseledcreate/rose_quartz_chiseled.png differ diff --git a/public/textures/rechiseledcreate/rose_quartz_chiseled_connecting.png b/public/textures/rechiseledcreate/rose_quartz_chiseled_connecting.png new file mode 100644 index 00000000..bb95af25 Binary files /dev/null and b/public/textures/rechiseledcreate/rose_quartz_chiseled_connecting.png differ diff --git a/public/textures/rechiseledcreate/rose_quartz_crushed.png b/public/textures/rechiseledcreate/rose_quartz_crushed.png new file mode 100644 index 00000000..42f99ae2 Binary files /dev/null and b/public/textures/rechiseledcreate/rose_quartz_crushed.png differ diff --git a/public/textures/rechiseledcreate/rose_quartz_crushed_connecting.png b/public/textures/rechiseledcreate/rose_quartz_crushed_connecting.png new file mode 100644 index 00000000..42f99ae2 Binary files /dev/null and b/public/textures/rechiseledcreate/rose_quartz_crushed_connecting.png differ diff --git a/public/textures/rechiseledcreate/rose_quartz_polished_block.png b/public/textures/rechiseledcreate/rose_quartz_polished_block.png new file mode 100644 index 00000000..a680020d Binary files /dev/null and b/public/textures/rechiseledcreate/rose_quartz_polished_block.png differ diff --git a/public/textures/rechiseledcreate/rose_quartz_polished_block_connecting.png b/public/textures/rechiseledcreate/rose_quartz_polished_block_connecting.png new file mode 100644 index 00000000..a680020d Binary files /dev/null and b/public/textures/rechiseledcreate/rose_quartz_polished_block_connecting.png differ diff --git a/public/textures/rechiseledcreate/rose_quartz_squares.png b/public/textures/rechiseledcreate/rose_quartz_squares.png new file mode 100644 index 00000000..9474b4ad Binary files /dev/null and b/public/textures/rechiseledcreate/rose_quartz_squares.png differ diff --git a/public/textures/rechiseledcreate/rose_quartz_squares_connecting.png b/public/textures/rechiseledcreate/rose_quartz_squares_connecting.png new file mode 100644 index 00000000..9474b4ad Binary files /dev/null and b/public/textures/rechiseledcreate/rose_quartz_squares_connecting.png differ diff --git a/public/textures/rechiseledcreate/rose_quartz_tiles_connecting.png b/public/textures/rechiseledcreate/rose_quartz_tiles_connecting.png new file mode 100644 index 00000000..76d2fe50 Binary files /dev/null and b/public/textures/rechiseledcreate/rose_quartz_tiles_connecting.png differ diff --git a/public/textures/rechiseledcreate/scorchia_cut_polished_connecting.png b/public/textures/rechiseledcreate/scorchia_cut_polished_connecting.png new file mode 100644 index 00000000..8bb9c91b Binary files /dev/null and b/public/textures/rechiseledcreate/scorchia_cut_polished_connecting.png differ diff --git a/public/textures/rechiseledcreate/scorchia_cut_small_brick_connecting.png b/public/textures/rechiseledcreate/scorchia_cut_small_brick_connecting.png new file mode 100644 index 00000000..1ec91056 Binary files /dev/null and b/public/textures/rechiseledcreate/scorchia_cut_small_brick_connecting.png differ diff --git a/public/textures/rechiseledcreate/scoria_cut_polished_connecting.png b/public/textures/rechiseledcreate/scoria_cut_polished_connecting.png new file mode 100644 index 00000000..8c886bb7 Binary files /dev/null and b/public/textures/rechiseledcreate/scoria_cut_polished_connecting.png differ diff --git a/public/textures/rechiseledcreate/scoria_cut_small_brick_connecting.png b/public/textures/rechiseledcreate/scoria_cut_small_brick_connecting.png new file mode 100644 index 00000000..ed601962 Binary files /dev/null and b/public/textures/rechiseledcreate/scoria_cut_small_brick_connecting.png differ diff --git a/public/textures/rechiseledcreate/spruce_window_bars.png b/public/textures/rechiseledcreate/spruce_window_bars.png new file mode 100644 index 00000000..28d0ac69 Binary files /dev/null and b/public/textures/rechiseledcreate/spruce_window_bars.png differ diff --git a/public/textures/rechiseledcreate/spruce_window_bars_connecting.png b/public/textures/rechiseledcreate/spruce_window_bars_connecting.png new file mode 100644 index 00000000..28d0ac69 Binary files /dev/null and b/public/textures/rechiseledcreate/spruce_window_bars_connecting.png differ diff --git a/public/textures/rechiseledcreate/spruce_window_covered.png b/public/textures/rechiseledcreate/spruce_window_covered.png new file mode 100644 index 00000000..746b08b6 Binary files /dev/null and b/public/textures/rechiseledcreate/spruce_window_covered.png differ diff --git a/public/textures/rechiseledcreate/spruce_window_covered_connecting.png b/public/textures/rechiseledcreate/spruce_window_covered_connecting.png new file mode 100644 index 00000000..746b08b6 Binary files /dev/null and b/public/textures/rechiseledcreate/spruce_window_covered_connecting.png differ diff --git a/public/textures/rechiseledcreate/spruce_window_diagonal.png b/public/textures/rechiseledcreate/spruce_window_diagonal.png new file mode 100644 index 00000000..a6af07ba Binary files /dev/null and b/public/textures/rechiseledcreate/spruce_window_diagonal.png differ diff --git a/public/textures/rechiseledcreate/spruce_window_diagonal_connecting.png b/public/textures/rechiseledcreate/spruce_window_diagonal_connecting.png new file mode 100644 index 00000000..a6af07ba Binary files /dev/null and b/public/textures/rechiseledcreate/spruce_window_diagonal_connecting.png differ diff --git a/public/textures/rechiseledcreate/spruce_window_large.png b/public/textures/rechiseledcreate/spruce_window_large.png new file mode 100644 index 00000000..4f80c999 Binary files /dev/null and b/public/textures/rechiseledcreate/spruce_window_large.png differ diff --git a/public/textures/rechiseledcreate/spruce_window_large_connecting.png b/public/textures/rechiseledcreate/spruce_window_large_connecting.png new file mode 100644 index 00000000..4f80c999 Binary files /dev/null and b/public/textures/rechiseledcreate/spruce_window_large_connecting.png differ diff --git a/public/textures/rechiseledcreate/spruce_window_panes.png b/public/textures/rechiseledcreate/spruce_window_panes.png new file mode 100644 index 00000000..339d9cbc Binary files /dev/null and b/public/textures/rechiseledcreate/spruce_window_panes.png differ diff --git a/public/textures/rechiseledcreate/spruce_window_panes_connecting.png b/public/textures/rechiseledcreate/spruce_window_panes_connecting.png new file mode 100644 index 00000000..339d9cbc Binary files /dev/null and b/public/textures/rechiseledcreate/spruce_window_panes_connecting.png differ diff --git a/public/textures/rechiseledcreate/spruce_window_rounded.png b/public/textures/rechiseledcreate/spruce_window_rounded.png new file mode 100644 index 00000000..bcf415ef Binary files /dev/null and b/public/textures/rechiseledcreate/spruce_window_rounded.png differ diff --git a/public/textures/rechiseledcreate/spruce_window_rounded_connecting.png b/public/textures/rechiseledcreate/spruce_window_rounded_connecting.png new file mode 100644 index 00000000..bcf415ef Binary files /dev/null and b/public/textures/rechiseledcreate/spruce_window_rounded_connecting.png differ diff --git a/public/textures/rechiseledcreate/spruce_window_slim.png b/public/textures/rechiseledcreate/spruce_window_slim.png new file mode 100644 index 00000000..26805de6 Binary files /dev/null and b/public/textures/rechiseledcreate/spruce_window_slim.png differ diff --git a/public/textures/rechiseledcreate/spruce_window_slim_connecting.png b/public/textures/rechiseledcreate/spruce_window_slim_connecting.png new file mode 100644 index 00000000..26805de6 Binary files /dev/null and b/public/textures/rechiseledcreate/spruce_window_slim_connecting.png differ diff --git a/public/textures/rechiseledcreate/spruce_window_swirling.png b/public/textures/rechiseledcreate/spruce_window_swirling.png new file mode 100644 index 00000000..608118fe Binary files /dev/null and b/public/textures/rechiseledcreate/spruce_window_swirling.png differ diff --git a/public/textures/rechiseledcreate/spruce_window_swirling_connecting.png b/public/textures/rechiseledcreate/spruce_window_swirling_connecting.png new file mode 100644 index 00000000..608118fe Binary files /dev/null and b/public/textures/rechiseledcreate/spruce_window_swirling_connecting.png differ diff --git a/public/textures/rechiseledcreate/spruce_window_tiles.png b/public/textures/rechiseledcreate/spruce_window_tiles.png new file mode 100644 index 00000000..7f40cb18 Binary files /dev/null and b/public/textures/rechiseledcreate/spruce_window_tiles.png differ diff --git a/public/textures/rechiseledcreate/spruce_window_tiles_connecting.png b/public/textures/rechiseledcreate/spruce_window_tiles_connecting.png new file mode 100644 index 00000000..7f40cb18 Binary files /dev/null and b/public/textures/rechiseledcreate/spruce_window_tiles_connecting.png differ diff --git a/public/textures/rechiseledcreate/tuff_cut_polished_connecting.png b/public/textures/rechiseledcreate/tuff_cut_polished_connecting.png new file mode 100644 index 00000000..8979b85c Binary files /dev/null and b/public/textures/rechiseledcreate/tuff_cut_polished_connecting.png differ diff --git a/public/textures/rechiseledcreate/tuff_cut_small_brick_connecting.png b/public/textures/rechiseledcreate/tuff_cut_small_brick_connecting.png new file mode 100644 index 00000000..eac1c3e1 Binary files /dev/null and b/public/textures/rechiseledcreate/tuff_cut_small_brick_connecting.png differ diff --git a/public/textures/rechiseledcreate/veridium_cut_polished_connecting.png b/public/textures/rechiseledcreate/veridium_cut_polished_connecting.png new file mode 100644 index 00000000..6db1918f Binary files /dev/null and b/public/textures/rechiseledcreate/veridium_cut_polished_connecting.png differ diff --git a/public/textures/rechiseledcreate/veridium_cut_small_brick_connecting.png b/public/textures/rechiseledcreate/veridium_cut_small_brick_connecting.png new file mode 100644 index 00000000..e3a9f9c5 Binary files /dev/null and b/public/textures/rechiseledcreate/veridium_cut_small_brick_connecting.png differ diff --git a/public/textures/rechiseledcreate/warped_window_bars.png b/public/textures/rechiseledcreate/warped_window_bars.png new file mode 100644 index 00000000..9bb55cce Binary files /dev/null and b/public/textures/rechiseledcreate/warped_window_bars.png differ diff --git a/public/textures/rechiseledcreate/warped_window_bars_connecting.png b/public/textures/rechiseledcreate/warped_window_bars_connecting.png new file mode 100644 index 00000000..9bb55cce Binary files /dev/null and b/public/textures/rechiseledcreate/warped_window_bars_connecting.png differ diff --git a/public/textures/rechiseledcreate/warped_window_covered.png b/public/textures/rechiseledcreate/warped_window_covered.png new file mode 100644 index 00000000..2f45cd2d Binary files /dev/null and b/public/textures/rechiseledcreate/warped_window_covered.png differ diff --git a/public/textures/rechiseledcreate/warped_window_covered_connecting.png b/public/textures/rechiseledcreate/warped_window_covered_connecting.png new file mode 100644 index 00000000..2f45cd2d Binary files /dev/null and b/public/textures/rechiseledcreate/warped_window_covered_connecting.png differ diff --git a/public/textures/rechiseledcreate/warped_window_diagonal.png b/public/textures/rechiseledcreate/warped_window_diagonal.png new file mode 100644 index 00000000..60f70779 Binary files /dev/null and b/public/textures/rechiseledcreate/warped_window_diagonal.png differ diff --git a/public/textures/rechiseledcreate/warped_window_diagonal_connecting.png b/public/textures/rechiseledcreate/warped_window_diagonal_connecting.png new file mode 100644 index 00000000..60f70779 Binary files /dev/null and b/public/textures/rechiseledcreate/warped_window_diagonal_connecting.png differ diff --git a/public/textures/rechiseledcreate/warped_window_large.png b/public/textures/rechiseledcreate/warped_window_large.png new file mode 100644 index 00000000..ed35abc4 Binary files /dev/null and b/public/textures/rechiseledcreate/warped_window_large.png differ diff --git a/public/textures/rechiseledcreate/warped_window_large_connecting.png b/public/textures/rechiseledcreate/warped_window_large_connecting.png new file mode 100644 index 00000000..ed35abc4 Binary files /dev/null and b/public/textures/rechiseledcreate/warped_window_large_connecting.png differ diff --git a/public/textures/rechiseledcreate/warped_window_panes.png b/public/textures/rechiseledcreate/warped_window_panes.png new file mode 100644 index 00000000..68209993 Binary files /dev/null and b/public/textures/rechiseledcreate/warped_window_panes.png differ diff --git a/public/textures/rechiseledcreate/warped_window_panes_connecting.png b/public/textures/rechiseledcreate/warped_window_panes_connecting.png new file mode 100644 index 00000000..68209993 Binary files /dev/null and b/public/textures/rechiseledcreate/warped_window_panes_connecting.png differ diff --git a/public/textures/rechiseledcreate/warped_window_rounded.png b/public/textures/rechiseledcreate/warped_window_rounded.png new file mode 100644 index 00000000..50b3b0c2 Binary files /dev/null and b/public/textures/rechiseledcreate/warped_window_rounded.png differ diff --git a/public/textures/rechiseledcreate/warped_window_rounded_connecting.png b/public/textures/rechiseledcreate/warped_window_rounded_connecting.png new file mode 100644 index 00000000..50b3b0c2 Binary files /dev/null and b/public/textures/rechiseledcreate/warped_window_rounded_connecting.png differ diff --git a/public/textures/rechiseledcreate/warped_window_slim.png b/public/textures/rechiseledcreate/warped_window_slim.png new file mode 100644 index 00000000..ec1b7faa Binary files /dev/null and b/public/textures/rechiseledcreate/warped_window_slim.png differ diff --git a/public/textures/rechiseledcreate/warped_window_slim_connecting.png b/public/textures/rechiseledcreate/warped_window_slim_connecting.png new file mode 100644 index 00000000..ec1b7faa Binary files /dev/null and b/public/textures/rechiseledcreate/warped_window_slim_connecting.png differ diff --git a/public/textures/rechiseledcreate/warped_window_tiles.png b/public/textures/rechiseledcreate/warped_window_tiles.png new file mode 100644 index 00000000..f516bb27 Binary files /dev/null and b/public/textures/rechiseledcreate/warped_window_tiles.png differ diff --git a/public/textures/rechiseledcreate/warped_window_tiles_connecting.png b/public/textures/rechiseledcreate/warped_window_tiles_connecting.png new file mode 100644 index 00000000..f516bb27 Binary files /dev/null and b/public/textures/rechiseledcreate/warped_window_tiles_connecting.png differ diff --git a/public/textures/simpledrills/amethyst_drill.png b/public/textures/simpledrills/amethyst_drill.png new file mode 100644 index 00000000..8bfc7304 Binary files /dev/null and b/public/textures/simpledrills/amethyst_drill.png differ diff --git a/public/textures/simpledrills/copper_drill.png b/public/textures/simpledrills/copper_drill.png new file mode 100644 index 00000000..f55fb0eb Binary files /dev/null and b/public/textures/simpledrills/copper_drill.png differ diff --git a/public/textures/simpledrills/diamond_drill.png b/public/textures/simpledrills/diamond_drill.png new file mode 100644 index 00000000..0b966429 Binary files /dev/null and b/public/textures/simpledrills/diamond_drill.png differ diff --git a/public/textures/simpledrills/emerald_drill.png b/public/textures/simpledrills/emerald_drill.png new file mode 100644 index 00000000..68edc8e7 Binary files /dev/null and b/public/textures/simpledrills/emerald_drill.png differ diff --git a/public/textures/simpledrills/gold_drill.png b/public/textures/simpledrills/gold_drill.png new file mode 100644 index 00000000..5c4e2004 Binary files /dev/null and b/public/textures/simpledrills/gold_drill.png differ diff --git a/public/textures/simpledrills/iron_drill.png b/public/textures/simpledrills/iron_drill.png new file mode 100644 index 00000000..c5d0d87f Binary files /dev/null and b/public/textures/simpledrills/iron_drill.png differ diff --git a/public/textures/simpledrills/multi_drill.png b/public/textures/simpledrills/multi_drill.png new file mode 100644 index 00000000..0c0fa960 Binary files /dev/null and b/public/textures/simpledrills/multi_drill.png differ diff --git a/public/textures/simpledrills/netherite_drill.png b/public/textures/simpledrills/netherite_drill.png new file mode 100644 index 00000000..1a4cf49a Binary files /dev/null and b/public/textures/simpledrills/netherite_drill.png differ diff --git a/public/textures/simpledrills/sculk_drill.png b/public/textures/simpledrills/sculk_drill.png new file mode 100644 index 00000000..ea076130 Binary files /dev/null and b/public/textures/simpledrills/sculk_drill.png differ diff --git a/public/textures/snowyspirit/biomeswevegone___sled_aspen.png b/public/textures/snowyspirit/biomeswevegone___sled_aspen.png new file mode 100644 index 00000000..af62d065 Binary files /dev/null and b/public/textures/snowyspirit/biomeswevegone___sled_aspen.png differ diff --git a/public/textures/snowyspirit/biomeswevegone___sled_baobab.png b/public/textures/snowyspirit/biomeswevegone___sled_baobab.png new file mode 100644 index 00000000..a3ac3adc Binary files /dev/null and b/public/textures/snowyspirit/biomeswevegone___sled_baobab.png differ diff --git a/public/textures/snowyspirit/biomeswevegone___sled_blue_enchanted.png b/public/textures/snowyspirit/biomeswevegone___sled_blue_enchanted.png new file mode 100644 index 00000000..3f1fabff Binary files /dev/null and b/public/textures/snowyspirit/biomeswevegone___sled_blue_enchanted.png differ diff --git a/public/textures/snowyspirit/biomeswevegone___sled_cika.png b/public/textures/snowyspirit/biomeswevegone___sled_cika.png new file mode 100644 index 00000000..befd9b23 Binary files /dev/null and b/public/textures/snowyspirit/biomeswevegone___sled_cika.png differ diff --git a/public/textures/snowyspirit/biomeswevegone___sled_cypress.png b/public/textures/snowyspirit/biomeswevegone___sled_cypress.png new file mode 100644 index 00000000..18e9e947 Binary files /dev/null and b/public/textures/snowyspirit/biomeswevegone___sled_cypress.png differ diff --git a/public/textures/snowyspirit/biomeswevegone___sled_ebony.png b/public/textures/snowyspirit/biomeswevegone___sled_ebony.png new file mode 100644 index 00000000..563fd60f Binary files /dev/null and b/public/textures/snowyspirit/biomeswevegone___sled_ebony.png differ diff --git a/public/textures/snowyspirit/biomeswevegone___sled_fir.png b/public/textures/snowyspirit/biomeswevegone___sled_fir.png new file mode 100644 index 00000000..887a2501 Binary files /dev/null and b/public/textures/snowyspirit/biomeswevegone___sled_fir.png differ diff --git a/public/textures/snowyspirit/biomeswevegone___sled_florus.png b/public/textures/snowyspirit/biomeswevegone___sled_florus.png new file mode 100644 index 00000000..873fc71e Binary files /dev/null and b/public/textures/snowyspirit/biomeswevegone___sled_florus.png differ diff --git a/public/textures/snowyspirit/biomeswevegone___sled_green_enchanted.png b/public/textures/snowyspirit/biomeswevegone___sled_green_enchanted.png new file mode 100644 index 00000000..aeb9140b Binary files /dev/null and b/public/textures/snowyspirit/biomeswevegone___sled_green_enchanted.png differ diff --git a/public/textures/snowyspirit/biomeswevegone___sled_holly.png b/public/textures/snowyspirit/biomeswevegone___sled_holly.png new file mode 100644 index 00000000..a84d9369 Binary files /dev/null and b/public/textures/snowyspirit/biomeswevegone___sled_holly.png differ diff --git a/public/textures/snowyspirit/biomeswevegone___sled_ironwood.png b/public/textures/snowyspirit/biomeswevegone___sled_ironwood.png new file mode 100644 index 00000000..10c782f1 Binary files /dev/null and b/public/textures/snowyspirit/biomeswevegone___sled_ironwood.png differ diff --git a/public/textures/snowyspirit/biomeswevegone___sled_jacaranda.png b/public/textures/snowyspirit/biomeswevegone___sled_jacaranda.png new file mode 100644 index 00000000..b371e5b7 Binary files /dev/null and b/public/textures/snowyspirit/biomeswevegone___sled_jacaranda.png differ diff --git a/public/textures/snowyspirit/biomeswevegone___sled_mahogany.png b/public/textures/snowyspirit/biomeswevegone___sled_mahogany.png new file mode 100644 index 00000000..37c97c09 Binary files /dev/null and b/public/textures/snowyspirit/biomeswevegone___sled_mahogany.png differ diff --git a/public/textures/snowyspirit/biomeswevegone___sled_maple.png b/public/textures/snowyspirit/biomeswevegone___sled_maple.png new file mode 100644 index 00000000..4981a22f Binary files /dev/null and b/public/textures/snowyspirit/biomeswevegone___sled_maple.png differ diff --git a/public/textures/snowyspirit/biomeswevegone___sled_palm.png b/public/textures/snowyspirit/biomeswevegone___sled_palm.png new file mode 100644 index 00000000..b407a345 Binary files /dev/null and b/public/textures/snowyspirit/biomeswevegone___sled_palm.png differ diff --git a/public/textures/snowyspirit/biomeswevegone___sled_pine.png b/public/textures/snowyspirit/biomeswevegone___sled_pine.png new file mode 100644 index 00000000..2d5b1784 Binary files /dev/null and b/public/textures/snowyspirit/biomeswevegone___sled_pine.png differ diff --git a/public/textures/snowyspirit/biomeswevegone___sled_rainbow_eucalyptus.png b/public/textures/snowyspirit/biomeswevegone___sled_rainbow_eucalyptus.png new file mode 100644 index 00000000..39cf0077 Binary files /dev/null and b/public/textures/snowyspirit/biomeswevegone___sled_rainbow_eucalyptus.png differ diff --git a/public/textures/snowyspirit/biomeswevegone___sled_redwood.png b/public/textures/snowyspirit/biomeswevegone___sled_redwood.png new file mode 100644 index 00000000..79910855 Binary files /dev/null and b/public/textures/snowyspirit/biomeswevegone___sled_redwood.png differ diff --git a/public/textures/snowyspirit/biomeswevegone___sled_sakura.png b/public/textures/snowyspirit/biomeswevegone___sled_sakura.png new file mode 100644 index 00000000..7c89adf6 Binary files /dev/null and b/public/textures/snowyspirit/biomeswevegone___sled_sakura.png differ diff --git a/public/textures/snowyspirit/biomeswevegone___sled_skyris.png b/public/textures/snowyspirit/biomeswevegone___sled_skyris.png new file mode 100644 index 00000000..3ee980a2 Binary files /dev/null and b/public/textures/snowyspirit/biomeswevegone___sled_skyris.png differ diff --git a/public/textures/snowyspirit/biomeswevegone___sled_spirit.png b/public/textures/snowyspirit/biomeswevegone___sled_spirit.png new file mode 100644 index 00000000..20f91f6d Binary files /dev/null and b/public/textures/snowyspirit/biomeswevegone___sled_spirit.png differ diff --git a/public/textures/snowyspirit/biomeswevegone___sled_white_mangrove.png b/public/textures/snowyspirit/biomeswevegone___sled_white_mangrove.png new file mode 100644 index 00000000..b73782d2 Binary files /dev/null and b/public/textures/snowyspirit/biomeswevegone___sled_white_mangrove.png differ diff --git a/public/textures/snowyspirit/biomeswevegone___sled_willow.png b/public/textures/snowyspirit/biomeswevegone___sled_willow.png new file mode 100644 index 00000000..9897757f Binary files /dev/null and b/public/textures/snowyspirit/biomeswevegone___sled_willow.png differ diff --git a/public/textures/snowyspirit/biomeswevegone___sled_witch_hazel.png b/public/textures/snowyspirit/biomeswevegone___sled_witch_hazel.png new file mode 100644 index 00000000..67eb0776 Binary files /dev/null and b/public/textures/snowyspirit/biomeswevegone___sled_witch_hazel.png differ diff --git a/public/textures/snowyspirit/biomeswevegone___sled_zelkova.png b/public/textures/snowyspirit/biomeswevegone___sled_zelkova.png new file mode 100644 index 00000000..6407a301 Binary files /dev/null and b/public/textures/snowyspirit/biomeswevegone___sled_zelkova.png differ diff --git a/public/textures/snowyspirit/candy_cane.png b/public/textures/snowyspirit/candy_cane.png new file mode 100644 index 00000000..7227dca4 Binary files /dev/null and b/public/textures/snowyspirit/candy_cane.png differ diff --git a/public/textures/snowyspirit/candy_cane_block.png b/public/textures/snowyspirit/candy_cane_block.png new file mode 100644 index 00000000..81470ba4 Binary files /dev/null and b/public/textures/snowyspirit/candy_cane_block.png differ diff --git a/public/textures/snowyspirit/eggnog.png b/public/textures/snowyspirit/eggnog.png new file mode 100644 index 00000000..3d061898 Binary files /dev/null and b/public/textures/snowyspirit/eggnog.png differ diff --git a/public/textures/snowyspirit/ginger.png b/public/textures/snowyspirit/ginger.png new file mode 100644 index 00000000..5633209c Binary files /dev/null and b/public/textures/snowyspirit/ginger.png differ diff --git a/public/textures/snowyspirit/ginger_crate.png b/public/textures/snowyspirit/ginger_crate.png new file mode 100644 index 00000000..a02e4514 Binary files /dev/null and b/public/textures/snowyspirit/ginger_crate.png differ diff --git a/public/textures/snowyspirit/ginger_flower.png b/public/textures/snowyspirit/ginger_flower.png new file mode 100644 index 00000000..61b88fb0 Binary files /dev/null and b/public/textures/snowyspirit/ginger_flower.png differ diff --git a/public/textures/snowyspirit/gingerbread.png b/public/textures/snowyspirit/gingerbread.png new file mode 100644 index 00000000..b1114d47 Binary files /dev/null and b/public/textures/snowyspirit/gingerbread.png differ diff --git a/public/textures/snowyspirit/gingerbread_cookie.png b/public/textures/snowyspirit/gingerbread_cookie.png new file mode 100644 index 00000000..e49baee7 Binary files /dev/null and b/public/textures/snowyspirit/gingerbread_cookie.png differ diff --git a/public/textures/snowyspirit/gingerbread_door.png b/public/textures/snowyspirit/gingerbread_door.png new file mode 100644 index 00000000..56b4a6e4 Binary files /dev/null and b/public/textures/snowyspirit/gingerbread_door.png differ diff --git a/public/textures/snowyspirit/gingerbread_frosted.png b/public/textures/snowyspirit/gingerbread_frosted.png new file mode 100644 index 00000000..8ee30831 Binary files /dev/null and b/public/textures/snowyspirit/gingerbread_frosted.png differ diff --git a/public/textures/snowyspirit/gingerbread_golem_spawn_egg.png b/public/textures/snowyspirit/gingerbread_golem_spawn_egg.png new file mode 100644 index 00000000..7db08414 Binary files /dev/null and b/public/textures/snowyspirit/gingerbread_golem_spawn_egg.png differ diff --git a/public/textures/snowyspirit/gingerbread_slab.png b/public/textures/snowyspirit/gingerbread_slab.png new file mode 100644 index 00000000..4f79901f Binary files /dev/null and b/public/textures/snowyspirit/gingerbread_slab.png differ diff --git a/public/textures/snowyspirit/gingerbread_stairs.png b/public/textures/snowyspirit/gingerbread_stairs.png new file mode 100644 index 00000000..e013905b Binary files /dev/null and b/public/textures/snowyspirit/gingerbread_stairs.png differ diff --git a/public/textures/snowyspirit/gingerbread_trapdoor.png b/public/textures/snowyspirit/gingerbread_trapdoor.png new file mode 100644 index 00000000..bd2ebe4c Binary files /dev/null and b/public/textures/snowyspirit/gingerbread_trapdoor.png differ diff --git a/public/textures/snowyspirit/glow_lights_black.png b/public/textures/snowyspirit/glow_lights_black.png new file mode 100644 index 00000000..66b7d077 Binary files /dev/null and b/public/textures/snowyspirit/glow_lights_black.png differ diff --git a/public/textures/snowyspirit/glow_lights_blue.png b/public/textures/snowyspirit/glow_lights_blue.png new file mode 100644 index 00000000..3cfdb05b Binary files /dev/null and b/public/textures/snowyspirit/glow_lights_blue.png differ diff --git a/public/textures/snowyspirit/glow_lights_brown.png b/public/textures/snowyspirit/glow_lights_brown.png new file mode 100644 index 00000000..4324f03b Binary files /dev/null and b/public/textures/snowyspirit/glow_lights_brown.png differ diff --git a/public/textures/snowyspirit/glow_lights_cyan.png b/public/textures/snowyspirit/glow_lights_cyan.png new file mode 100644 index 00000000..4de03541 Binary files /dev/null and b/public/textures/snowyspirit/glow_lights_cyan.png differ diff --git a/public/textures/snowyspirit/glow_lights_gray.png b/public/textures/snowyspirit/glow_lights_gray.png new file mode 100644 index 00000000..9ac7f41e Binary files /dev/null and b/public/textures/snowyspirit/glow_lights_gray.png differ diff --git a/public/textures/snowyspirit/glow_lights_green.png b/public/textures/snowyspirit/glow_lights_green.png new file mode 100644 index 00000000..7e072ce5 Binary files /dev/null and b/public/textures/snowyspirit/glow_lights_green.png differ diff --git a/public/textures/snowyspirit/glow_lights_light_blue.png b/public/textures/snowyspirit/glow_lights_light_blue.png new file mode 100644 index 00000000..abb9153c Binary files /dev/null and b/public/textures/snowyspirit/glow_lights_light_blue.png differ diff --git a/public/textures/snowyspirit/glow_lights_light_gray.png b/public/textures/snowyspirit/glow_lights_light_gray.png new file mode 100644 index 00000000..f0c0079c Binary files /dev/null and b/public/textures/snowyspirit/glow_lights_light_gray.png differ diff --git a/public/textures/snowyspirit/glow_lights_lime.png b/public/textures/snowyspirit/glow_lights_lime.png new file mode 100644 index 00000000..04b4500a Binary files /dev/null and b/public/textures/snowyspirit/glow_lights_lime.png differ diff --git a/public/textures/snowyspirit/glow_lights_magenta.png b/public/textures/snowyspirit/glow_lights_magenta.png new file mode 100644 index 00000000..99600c78 Binary files /dev/null and b/public/textures/snowyspirit/glow_lights_magenta.png differ diff --git a/public/textures/snowyspirit/glow_lights_orange.png b/public/textures/snowyspirit/glow_lights_orange.png new file mode 100644 index 00000000..26acea84 Binary files /dev/null and b/public/textures/snowyspirit/glow_lights_orange.png differ diff --git a/public/textures/snowyspirit/glow_lights_pink.png b/public/textures/snowyspirit/glow_lights_pink.png new file mode 100644 index 00000000..0f4121d1 Binary files /dev/null and b/public/textures/snowyspirit/glow_lights_pink.png differ diff --git a/public/textures/snowyspirit/glow_lights_prismatic.png b/public/textures/snowyspirit/glow_lights_prismatic.png new file mode 100644 index 00000000..a74620c8 Binary files /dev/null and b/public/textures/snowyspirit/glow_lights_prismatic.png differ diff --git a/public/textures/snowyspirit/glow_lights_purple.png b/public/textures/snowyspirit/glow_lights_purple.png new file mode 100644 index 00000000..a59704fb Binary files /dev/null and b/public/textures/snowyspirit/glow_lights_purple.png differ diff --git a/public/textures/snowyspirit/glow_lights_red.png b/public/textures/snowyspirit/glow_lights_red.png new file mode 100644 index 00000000..d872a879 Binary files /dev/null and b/public/textures/snowyspirit/glow_lights_red.png differ diff --git a/public/textures/snowyspirit/glow_lights_white.png b/public/textures/snowyspirit/glow_lights_white.png new file mode 100644 index 00000000..04ce900c Binary files /dev/null and b/public/textures/snowyspirit/glow_lights_white.png differ diff --git a/public/textures/snowyspirit/glow_lights_yellow.png b/public/textures/snowyspirit/glow_lights_yellow.png new file mode 100644 index 00000000..69ba141b Binary files /dev/null and b/public/textures/snowyspirit/glow_lights_yellow.png differ diff --git a/public/textures/snowyspirit/gumdrop_black.png b/public/textures/snowyspirit/gumdrop_black.png new file mode 100644 index 00000000..ef494157 Binary files /dev/null and b/public/textures/snowyspirit/gumdrop_black.png differ diff --git a/public/textures/snowyspirit/gumdrop_blue.png b/public/textures/snowyspirit/gumdrop_blue.png new file mode 100644 index 00000000..139727c6 Binary files /dev/null and b/public/textures/snowyspirit/gumdrop_blue.png differ diff --git a/public/textures/snowyspirit/gumdrop_brown.png b/public/textures/snowyspirit/gumdrop_brown.png new file mode 100644 index 00000000..79f9cae2 Binary files /dev/null and b/public/textures/snowyspirit/gumdrop_brown.png differ diff --git a/public/textures/snowyspirit/gumdrop_cyan.png b/public/textures/snowyspirit/gumdrop_cyan.png new file mode 100644 index 00000000..3d0ba8f0 Binary files /dev/null and b/public/textures/snowyspirit/gumdrop_cyan.png differ diff --git a/public/textures/snowyspirit/gumdrop_gray.png b/public/textures/snowyspirit/gumdrop_gray.png new file mode 100644 index 00000000..2330eef7 Binary files /dev/null and b/public/textures/snowyspirit/gumdrop_gray.png differ diff --git a/public/textures/snowyspirit/gumdrop_green.png b/public/textures/snowyspirit/gumdrop_green.png new file mode 100644 index 00000000..5f3723aa Binary files /dev/null and b/public/textures/snowyspirit/gumdrop_green.png differ diff --git a/public/textures/snowyspirit/gumdrop_light_blue.png b/public/textures/snowyspirit/gumdrop_light_blue.png new file mode 100644 index 00000000..5fdc672c Binary files /dev/null and b/public/textures/snowyspirit/gumdrop_light_blue.png differ diff --git a/public/textures/snowyspirit/gumdrop_light_gray.png b/public/textures/snowyspirit/gumdrop_light_gray.png new file mode 100644 index 00000000..c9ca8d05 Binary files /dev/null and b/public/textures/snowyspirit/gumdrop_light_gray.png differ diff --git a/public/textures/snowyspirit/gumdrop_lime.png b/public/textures/snowyspirit/gumdrop_lime.png new file mode 100644 index 00000000..2eddfd19 Binary files /dev/null and b/public/textures/snowyspirit/gumdrop_lime.png differ diff --git a/public/textures/snowyspirit/gumdrop_magenta.png b/public/textures/snowyspirit/gumdrop_magenta.png new file mode 100644 index 00000000..84b3fa9c Binary files /dev/null and b/public/textures/snowyspirit/gumdrop_magenta.png differ diff --git a/public/textures/snowyspirit/gumdrop_orange.png b/public/textures/snowyspirit/gumdrop_orange.png new file mode 100644 index 00000000..b4c8c32f Binary files /dev/null and b/public/textures/snowyspirit/gumdrop_orange.png differ diff --git a/public/textures/snowyspirit/gumdrop_pink.png b/public/textures/snowyspirit/gumdrop_pink.png new file mode 100644 index 00000000..60e73215 Binary files /dev/null and b/public/textures/snowyspirit/gumdrop_pink.png differ diff --git a/public/textures/snowyspirit/gumdrop_purple.png b/public/textures/snowyspirit/gumdrop_purple.png new file mode 100644 index 00000000..0bcbd1b4 Binary files /dev/null and b/public/textures/snowyspirit/gumdrop_purple.png differ diff --git a/public/textures/snowyspirit/gumdrop_red.png b/public/textures/snowyspirit/gumdrop_red.png new file mode 100644 index 00000000..fbbe4e29 Binary files /dev/null and b/public/textures/snowyspirit/gumdrop_red.png differ diff --git a/public/textures/snowyspirit/gumdrop_white.png b/public/textures/snowyspirit/gumdrop_white.png new file mode 100644 index 00000000..b7cf7abf Binary files /dev/null and b/public/textures/snowyspirit/gumdrop_white.png differ diff --git a/public/textures/snowyspirit/gumdrop_yellow.png b/public/textures/snowyspirit/gumdrop_yellow.png new file mode 100644 index 00000000..97f3fe35 Binary files /dev/null and b/public/textures/snowyspirit/gumdrop_yellow.png differ diff --git a/public/textures/snowyspirit/music_disc_a_carol.png b/public/textures/snowyspirit/music_disc_a_carol.png new file mode 100644 index 00000000..53daf4f5 Binary files /dev/null and b/public/textures/snowyspirit/music_disc_a_carol.png differ diff --git a/public/textures/snowyspirit/sled_acacia.png b/public/textures/snowyspirit/sled_acacia.png new file mode 100644 index 00000000..75aa9a09 Binary files /dev/null and b/public/textures/snowyspirit/sled_acacia.png differ diff --git a/public/textures/snowyspirit/sled_bamboo.png b/public/textures/snowyspirit/sled_bamboo.png new file mode 100644 index 00000000..89222e88 Binary files /dev/null and b/public/textures/snowyspirit/sled_bamboo.png differ diff --git a/public/textures/snowyspirit/sled_birch.png b/public/textures/snowyspirit/sled_birch.png new file mode 100644 index 00000000..0721c89c Binary files /dev/null and b/public/textures/snowyspirit/sled_birch.png differ diff --git a/public/textures/snowyspirit/sled_cherry.png b/public/textures/snowyspirit/sled_cherry.png new file mode 100644 index 00000000..f59ceb6f Binary files /dev/null and b/public/textures/snowyspirit/sled_cherry.png differ diff --git a/public/textures/snowyspirit/sled_dark_oak.png b/public/textures/snowyspirit/sled_dark_oak.png new file mode 100644 index 00000000..8e56d288 Binary files /dev/null and b/public/textures/snowyspirit/sled_dark_oak.png differ diff --git a/public/textures/snowyspirit/sled_jungle.png b/public/textures/snowyspirit/sled_jungle.png new file mode 100644 index 00000000..c3005a37 Binary files /dev/null and b/public/textures/snowyspirit/sled_jungle.png differ diff --git a/public/textures/snowyspirit/sled_mangrove.png b/public/textures/snowyspirit/sled_mangrove.png new file mode 100644 index 00000000..c8068961 Binary files /dev/null and b/public/textures/snowyspirit/sled_mangrove.png differ diff --git a/public/textures/snowyspirit/sled_oak.png b/public/textures/snowyspirit/sled_oak.png new file mode 100644 index 00000000..94ea563e Binary files /dev/null and b/public/textures/snowyspirit/sled_oak.png differ diff --git a/public/textures/snowyspirit/sled_spruce.png b/public/textures/snowyspirit/sled_spruce.png new file mode 100644 index 00000000..e7d9a2bb Binary files /dev/null and b/public/textures/snowyspirit/sled_spruce.png differ diff --git a/public/textures/snowyspirit/snow_globe.png b/public/textures/snowyspirit/snow_globe.png new file mode 100644 index 00000000..2132cde2 Binary files /dev/null and b/public/textures/snowyspirit/snow_globe.png differ diff --git a/public/textures/snowyspirit/twilightforest___sled_canopy.png b/public/textures/snowyspirit/twilightforest___sled_canopy.png new file mode 100644 index 00000000..1e28f41f Binary files /dev/null and b/public/textures/snowyspirit/twilightforest___sled_canopy.png differ diff --git a/public/textures/snowyspirit/twilightforest___sled_dark.png b/public/textures/snowyspirit/twilightforest___sled_dark.png new file mode 100644 index 00000000..e2fd07d2 Binary files /dev/null and b/public/textures/snowyspirit/twilightforest___sled_dark.png differ diff --git a/public/textures/snowyspirit/twilightforest___sled_mangrove.png b/public/textures/snowyspirit/twilightforest___sled_mangrove.png new file mode 100644 index 00000000..50c01e77 Binary files /dev/null and b/public/textures/snowyspirit/twilightforest___sled_mangrove.png differ diff --git a/public/textures/snowyspirit/twilightforest___sled_mining.png b/public/textures/snowyspirit/twilightforest___sled_mining.png new file mode 100644 index 00000000..161d8505 Binary files /dev/null and b/public/textures/snowyspirit/twilightforest___sled_mining.png differ diff --git a/public/textures/snowyspirit/twilightforest___sled_sorting.png b/public/textures/snowyspirit/twilightforest___sled_sorting.png new file mode 100644 index 00000000..1825b0d8 Binary files /dev/null and b/public/textures/snowyspirit/twilightforest___sled_sorting.png differ diff --git a/public/textures/snowyspirit/twilightforest___sled_time.png b/public/textures/snowyspirit/twilightforest___sled_time.png new file mode 100644 index 00000000..d1e84875 Binary files /dev/null and b/public/textures/snowyspirit/twilightforest___sled_time.png differ diff --git a/public/textures/snowyspirit/twilightforest___sled_transformation.png b/public/textures/snowyspirit/twilightforest___sled_transformation.png new file mode 100644 index 00000000..78f9f5f2 Binary files /dev/null and b/public/textures/snowyspirit/twilightforest___sled_transformation.png differ diff --git a/public/textures/snowyspirit/twilightforest___sled_twilight_oak.png b/public/textures/snowyspirit/twilightforest___sled_twilight_oak.png new file mode 100644 index 00000000..24c3769e Binary files /dev/null and b/public/textures/snowyspirit/twilightforest___sled_twilight_oak.png differ diff --git a/public/textures/snowyspirit/vanillabackport___sled_pale_oak.png b/public/textures/snowyspirit/vanillabackport___sled_pale_oak.png new file mode 100644 index 00000000..94e60761 Binary files /dev/null and b/public/textures/snowyspirit/vanillabackport___sled_pale_oak.png differ diff --git a/public/textures/snowyspirit/wild_ginger.png b/public/textures/snowyspirit/wild_ginger.png new file mode 100644 index 00000000..23b42ddb Binary files /dev/null and b/public/textures/snowyspirit/wild_ginger.png differ diff --git a/public/textures/snowyspirit/wreath.png b/public/textures/snowyspirit/wreath.png new file mode 100644 index 00000000..b4e16323 Binary files /dev/null and b/public/textures/snowyspirit/wreath.png differ diff --git a/public/textures/sophisticatedbackpacks/advanced_alchemy_upgrade.png b/public/textures/sophisticatedbackpacks/advanced_alchemy_upgrade.png new file mode 100644 index 00000000..7d8d2483 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/advanced_alchemy_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/advanced_compacting_upgrade.png b/public/textures/sophisticatedbackpacks/advanced_compacting_upgrade.png new file mode 100644 index 00000000..16ce427e Binary files /dev/null and b/public/textures/sophisticatedbackpacks/advanced_compacting_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/advanced_deposit_upgrade.png b/public/textures/sophisticatedbackpacks/advanced_deposit_upgrade.png new file mode 100644 index 00000000..cbc0c0d7 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/advanced_deposit_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/advanced_feeding_upgrade.png b/public/textures/sophisticatedbackpacks/advanced_feeding_upgrade.png new file mode 100644 index 00000000..91e5bd2e Binary files /dev/null and b/public/textures/sophisticatedbackpacks/advanced_feeding_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/advanced_filter_upgrade.png b/public/textures/sophisticatedbackpacks/advanced_filter_upgrade.png new file mode 100644 index 00000000..b5e35e0a Binary files /dev/null and b/public/textures/sophisticatedbackpacks/advanced_filter_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/advanced_jukebox_upgrade.png b/public/textures/sophisticatedbackpacks/advanced_jukebox_upgrade.png new file mode 100644 index 00000000..dbd2878e Binary files /dev/null and b/public/textures/sophisticatedbackpacks/advanced_jukebox_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/advanced_magnet_upgrade.png b/public/textures/sophisticatedbackpacks/advanced_magnet_upgrade.png new file mode 100644 index 00000000..d212641a Binary files /dev/null and b/public/textures/sophisticatedbackpacks/advanced_magnet_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/advanced_pickup_upgrade.png b/public/textures/sophisticatedbackpacks/advanced_pickup_upgrade.png new file mode 100644 index 00000000..8fe11309 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/advanced_pickup_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/advanced_pump_upgrade.png b/public/textures/sophisticatedbackpacks/advanced_pump_upgrade.png new file mode 100644 index 00000000..84e3c0cd Binary files /dev/null and b/public/textures/sophisticatedbackpacks/advanced_pump_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/advanced_refill_upgrade.png b/public/textures/sophisticatedbackpacks/advanced_refill_upgrade.png new file mode 100644 index 00000000..a3ee690a Binary files /dev/null and b/public/textures/sophisticatedbackpacks/advanced_refill_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/advanced_restock_upgrade.png b/public/textures/sophisticatedbackpacks/advanced_restock_upgrade.png new file mode 100644 index 00000000..e257437d Binary files /dev/null and b/public/textures/sophisticatedbackpacks/advanced_restock_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/advanced_tool_swapper_upgrade.png b/public/textures/sophisticatedbackpacks/advanced_tool_swapper_upgrade.png new file mode 100644 index 00000000..bb360082 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/advanced_tool_swapper_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/advanced_void_upgrade.png b/public/textures/sophisticatedbackpacks/advanced_void_upgrade.png new file mode 100644 index 00000000..cc65ddae Binary files /dev/null and b/public/textures/sophisticatedbackpacks/advanced_void_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/alchemy_upgrade.png b/public/textures/sophisticatedbackpacks/alchemy_upgrade.png new file mode 100644 index 00000000..2f1d6e6e Binary files /dev/null and b/public/textures/sophisticatedbackpacks/alchemy_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/anvil_upgrade.png b/public/textures/sophisticatedbackpacks/anvil_upgrade.png new file mode 100644 index 00000000..8d9c2207 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/anvil_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/auto_blasting_upgrade.png b/public/textures/sophisticatedbackpacks/auto_blasting_upgrade.png new file mode 100644 index 00000000..80ba1fc8 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/auto_blasting_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/auto_smelting_upgrade.png b/public/textures/sophisticatedbackpacks/auto_smelting_upgrade.png new file mode 100644 index 00000000..906c219d Binary files /dev/null and b/public/textures/sophisticatedbackpacks/auto_smelting_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/auto_smoking_upgrade.png b/public/textures/sophisticatedbackpacks/auto_smoking_upgrade.png new file mode 100644 index 00000000..0d072d63 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/auto_smoking_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/backpack.png b/public/textures/sophisticatedbackpacks/backpack.png new file mode 100644 index 00000000..0f57030f Binary files /dev/null and b/public/textures/sophisticatedbackpacks/backpack.png differ diff --git a/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-10585066,'sophisticatedcore__main_color'__-10585066}.png b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-10585066,'sophisticatedcore__main_color'__-10585066}.png new file mode 100644 index 00000000..95880168 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-10585066,'sophisticatedcore__main_color'__-10585066}.png differ diff --git a/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-12103854,'sophisticatedcore__main_color'__-12103854}.png b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-12103854,'sophisticatedcore__main_color'__-12103854}.png new file mode 100644 index 00000000..f1f95f19 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-12103854,'sophisticatedcore__main_color'__-12103854}.png differ diff --git a/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-12827478,'sophisticatedcore__main_color'__-12827478}.png b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-12827478,'sophisticatedcore__main_color'__-12827478}.png new file mode 100644 index 00000000..f5e44825 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-12827478,'sophisticatedcore__main_color'__-12827478}.png differ diff --git a/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-12930086,'sophisticatedcore__main_color'__-12930086}.png b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-12930086,'sophisticatedcore__main_color'__-12930086}.png new file mode 100644 index 00000000..b3b49d9f Binary files /dev/null and b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-12930086,'sophisticatedcore__main_color'__-12930086}.png differ diff --git a/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-13881243,'sophisticatedcore__main_color'__-3087822}.png b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-13881243,'sophisticatedcore__main_color'__-3087822}.png new file mode 100644 index 00000000..5b8e8f2b Binary files /dev/null and b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-13881243,'sophisticatedcore__main_color'__-3087822}.png differ diff --git a/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-14869215,'sophisticatedcore__main_color'__-14869215}.png b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-14869215,'sophisticatedcore__main_color'__-14869215}.png new file mode 100644 index 00000000..7ed7b4aa Binary files /dev/null and b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-14869215,'sophisticatedcore__main_color'__-14869215}.png differ diff --git a/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-15295332,'sophisticatedcore__main_color'__-15295332}.png b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-15295332,'sophisticatedcore__main_color'__-15295332}.png new file mode 100644 index 00000000..0c434afe Binary files /dev/null and b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-15295332,'sophisticatedcore__main_color'__-15295332}.png differ diff --git a/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-3715395,'sophisticatedcore__main_color'__-3715395}.png b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-3715395,'sophisticatedcore__main_color'__-3715395}.png new file mode 100644 index 00000000..daf74722 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-3715395,'sophisticatedcore__main_color'__-3715395}.png differ diff --git a/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-393218,'sophisticatedcore__main_color'__-393218}.png b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-393218,'sophisticatedcore__main_color'__-393218}.png new file mode 100644 index 00000000..495bec42 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-393218,'sophisticatedcore__main_color'__-393218}.png differ diff --git a/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-425955,'sophisticatedcore__main_color'__-425955}.png b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-425955,'sophisticatedcore__main_color'__-425955}.png new file mode 100644 index 00000000..1660b678 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-425955,'sophisticatedcore__main_color'__-425955}.png differ diff --git a/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-5231066,'sophisticatedcore__main_color'__-5231066}.png b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-5231066,'sophisticatedcore__main_color'__-5231066}.png new file mode 100644 index 00000000..cccef2dc Binary files /dev/null and b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-5231066,'sophisticatedcore__main_color'__-5231066}.png differ diff --git a/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-6447721,'sophisticatedcore__main_color'__-6447721}.png b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-6447721,'sophisticatedcore__main_color'__-6447721}.png new file mode 100644 index 00000000..e6d10635 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-6447721,'sophisticatedcore__main_color'__-6447721}.png differ diff --git a/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-75715,'sophisticatedcore__main_color'__-75715}.png b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-75715,'sophisticatedcore__main_color'__-75715}.png new file mode 100644 index 00000000..eea02610 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-75715,'sophisticatedcore__main_color'__-75715}.png differ diff --git a/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-7785800,'sophisticatedcore__main_color'__-7785800}.png b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-7785800,'sophisticatedcore__main_color'__-7785800}.png new file mode 100644 index 00000000..ea0bcf07 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-7785800,'sophisticatedcore__main_color'__-7785800}.png differ diff --git a/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-816214,'sophisticatedcore__main_color'__-816214}.png b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-816214,'sophisticatedcore__main_color'__-816214}.png new file mode 100644 index 00000000..3989d2ff Binary files /dev/null and b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-816214,'sophisticatedcore__main_color'__-816214}.png differ diff --git a/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-8170446,'sophisticatedcore__main_color'__-8170446}.png b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-8170446,'sophisticatedcore__main_color'__-8170446}.png new file mode 100644 index 00000000..23799734 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-8170446,'sophisticatedcore__main_color'__-8170446}.png differ diff --git a/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-8337633,'sophisticatedcore__main_color'__-8337633}.png b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-8337633,'sophisticatedcore__main_color'__-8337633}.png new file mode 100644 index 00000000..7cfe95d9 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/backpack__{'sophisticatedcore__accent_color'__-8337633,'sophisticatedcore__main_color'__-8337633}.png differ diff --git a/public/textures/sophisticatedbackpacks/battery_upgrade.png b/public/textures/sophisticatedbackpacks/battery_upgrade.png new file mode 100644 index 00000000..7344973f Binary files /dev/null and b/public/textures/sophisticatedbackpacks/battery_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/blasting_upgrade.png b/public/textures/sophisticatedbackpacks/blasting_upgrade.png new file mode 100644 index 00000000..cce0a1a9 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/blasting_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/chipped___alchemy_bench_upgrade.png b/public/textures/sophisticatedbackpacks/chipped___alchemy_bench_upgrade.png new file mode 100644 index 00000000..ff043241 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/chipped___alchemy_bench_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/chipped___botanist_workbench_upgrade.png b/public/textures/sophisticatedbackpacks/chipped___botanist_workbench_upgrade.png new file mode 100644 index 00000000..75e22533 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/chipped___botanist_workbench_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/chipped___carpenters_table_upgrade.png b/public/textures/sophisticatedbackpacks/chipped___carpenters_table_upgrade.png new file mode 100644 index 00000000..ffe7939d Binary files /dev/null and b/public/textures/sophisticatedbackpacks/chipped___carpenters_table_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/chipped___glassblower_upgrade.png b/public/textures/sophisticatedbackpacks/chipped___glassblower_upgrade.png new file mode 100644 index 00000000..055d5ffc Binary files /dev/null and b/public/textures/sophisticatedbackpacks/chipped___glassblower_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/chipped___loom_table_upgrade.png b/public/textures/sophisticatedbackpacks/chipped___loom_table_upgrade.png new file mode 100644 index 00000000..9900234b Binary files /dev/null and b/public/textures/sophisticatedbackpacks/chipped___loom_table_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/chipped___mason_table_upgrade.png b/public/textures/sophisticatedbackpacks/chipped___mason_table_upgrade.png new file mode 100644 index 00000000..0690e521 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/chipped___mason_table_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/chipped___tinkering_table_upgrade.png b/public/textures/sophisticatedbackpacks/chipped___tinkering_table_upgrade.png new file mode 100644 index 00000000..933a3b6b Binary files /dev/null and b/public/textures/sophisticatedbackpacks/chipped___tinkering_table_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/compacting_upgrade.png b/public/textures/sophisticatedbackpacks/compacting_upgrade.png new file mode 100644 index 00000000..3a0d1256 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/compacting_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/copper_backpack.png b/public/textures/sophisticatedbackpacks/copper_backpack.png new file mode 100644 index 00000000..d98fc58b Binary files /dev/null and b/public/textures/sophisticatedbackpacks/copper_backpack.png differ diff --git a/public/textures/sophisticatedbackpacks/crafting_upgrade.png b/public/textures/sophisticatedbackpacks/crafting_upgrade.png new file mode 100644 index 00000000..12ba88c5 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/crafting_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/deposit_upgrade.png b/public/textures/sophisticatedbackpacks/deposit_upgrade.png new file mode 100644 index 00000000..da74ef55 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/deposit_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/diamond_backpack.png b/public/textures/sophisticatedbackpacks/diamond_backpack.png new file mode 100644 index 00000000..8e8dfeab Binary files /dev/null and b/public/textures/sophisticatedbackpacks/diamond_backpack.png differ diff --git a/public/textures/sophisticatedbackpacks/everlasting_upgrade.png b/public/textures/sophisticatedbackpacks/everlasting_upgrade.png new file mode 100644 index 00000000..7cfc8fc4 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/everlasting_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/feeding_upgrade.png b/public/textures/sophisticatedbackpacks/feeding_upgrade.png new file mode 100644 index 00000000..1a91ac37 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/feeding_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/filter_upgrade.png b/public/textures/sophisticatedbackpacks/filter_upgrade.png new file mode 100644 index 00000000..ef1b6e4c Binary files /dev/null and b/public/textures/sophisticatedbackpacks/filter_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/gold_backpack.png b/public/textures/sophisticatedbackpacks/gold_backpack.png new file mode 100644 index 00000000..bdf5779a Binary files /dev/null and b/public/textures/sophisticatedbackpacks/gold_backpack.png differ diff --git a/public/textures/sophisticatedbackpacks/inception_upgrade.png b/public/textures/sophisticatedbackpacks/inception_upgrade.png new file mode 100644 index 00000000..ed2a5937 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/inception_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/infinity_upgrade.png b/public/textures/sophisticatedbackpacks/infinity_upgrade.png new file mode 100644 index 00000000..52929533 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/infinity_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/iron_backpack.png b/public/textures/sophisticatedbackpacks/iron_backpack.png new file mode 100644 index 00000000..36e2f5ad Binary files /dev/null and b/public/textures/sophisticatedbackpacks/iron_backpack.png differ diff --git a/public/textures/sophisticatedbackpacks/jukebox_upgrade.png b/public/textures/sophisticatedbackpacks/jukebox_upgrade.png new file mode 100644 index 00000000..11f14ff4 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/jukebox_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/magnet_upgrade.png b/public/textures/sophisticatedbackpacks/magnet_upgrade.png new file mode 100644 index 00000000..ff5e7665 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/magnet_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/netherite_backpack.png b/public/textures/sophisticatedbackpacks/netherite_backpack.png new file mode 100644 index 00000000..78c722a2 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/netherite_backpack.png differ diff --git a/public/textures/sophisticatedbackpacks/pickup_upgrade.png b/public/textures/sophisticatedbackpacks/pickup_upgrade.png new file mode 100644 index 00000000..2be454a2 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/pickup_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/pump_upgrade.png b/public/textures/sophisticatedbackpacks/pump_upgrade.png new file mode 100644 index 00000000..38b1dc77 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/pump_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/refill_upgrade.png b/public/textures/sophisticatedbackpacks/refill_upgrade.png new file mode 100644 index 00000000..9bc27c05 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/refill_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/restock_upgrade.png b/public/textures/sophisticatedbackpacks/restock_upgrade.png new file mode 100644 index 00000000..066b0b0c Binary files /dev/null and b/public/textures/sophisticatedbackpacks/restock_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/smelting_upgrade.png b/public/textures/sophisticatedbackpacks/smelting_upgrade.png new file mode 100644 index 00000000..34ffe84d Binary files /dev/null and b/public/textures/sophisticatedbackpacks/smelting_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/smithing_upgrade.png b/public/textures/sophisticatedbackpacks/smithing_upgrade.png new file mode 100644 index 00000000..e2eaa67d Binary files /dev/null and b/public/textures/sophisticatedbackpacks/smithing_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/smoking_upgrade.png b/public/textures/sophisticatedbackpacks/smoking_upgrade.png new file mode 100644 index 00000000..4f1b5f7a Binary files /dev/null and b/public/textures/sophisticatedbackpacks/smoking_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/stack_downgrade_tier_1.png b/public/textures/sophisticatedbackpacks/stack_downgrade_tier_1.png new file mode 100644 index 00000000..af8c03eb Binary files /dev/null and b/public/textures/sophisticatedbackpacks/stack_downgrade_tier_1.png differ diff --git a/public/textures/sophisticatedbackpacks/stack_downgrade_tier_2.png b/public/textures/sophisticatedbackpacks/stack_downgrade_tier_2.png new file mode 100644 index 00000000..884ed11e Binary files /dev/null and b/public/textures/sophisticatedbackpacks/stack_downgrade_tier_2.png differ diff --git a/public/textures/sophisticatedbackpacks/stack_downgrade_tier_3.png b/public/textures/sophisticatedbackpacks/stack_downgrade_tier_3.png new file mode 100644 index 00000000..b34acb08 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/stack_downgrade_tier_3.png differ diff --git a/public/textures/sophisticatedbackpacks/stack_upgrade_omega_tier.png b/public/textures/sophisticatedbackpacks/stack_upgrade_omega_tier.png new file mode 100644 index 00000000..1a37fe94 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/stack_upgrade_omega_tier.png differ diff --git a/public/textures/sophisticatedbackpacks/stack_upgrade_starter_tier.png b/public/textures/sophisticatedbackpacks/stack_upgrade_starter_tier.png new file mode 100644 index 00000000..b3f330c5 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/stack_upgrade_starter_tier.png differ diff --git a/public/textures/sophisticatedbackpacks/stack_upgrade_tier_1.png b/public/textures/sophisticatedbackpacks/stack_upgrade_tier_1.png new file mode 100644 index 00000000..844deaff Binary files /dev/null and b/public/textures/sophisticatedbackpacks/stack_upgrade_tier_1.png differ diff --git a/public/textures/sophisticatedbackpacks/stack_upgrade_tier_2.png b/public/textures/sophisticatedbackpacks/stack_upgrade_tier_2.png new file mode 100644 index 00000000..4de37d7b Binary files /dev/null and b/public/textures/sophisticatedbackpacks/stack_upgrade_tier_2.png differ diff --git a/public/textures/sophisticatedbackpacks/stack_upgrade_tier_3.png b/public/textures/sophisticatedbackpacks/stack_upgrade_tier_3.png new file mode 100644 index 00000000..10760f6b Binary files /dev/null and b/public/textures/sophisticatedbackpacks/stack_upgrade_tier_3.png differ diff --git a/public/textures/sophisticatedbackpacks/stack_upgrade_tier_4.png b/public/textures/sophisticatedbackpacks/stack_upgrade_tier_4.png new file mode 100644 index 00000000..6c39f1a1 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/stack_upgrade_tier_4.png differ diff --git a/public/textures/sophisticatedbackpacks/stonecutter_upgrade.png b/public/textures/sophisticatedbackpacks/stonecutter_upgrade.png new file mode 100644 index 00000000..ac6cd007 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/stonecutter_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/survival_infinity_upgrade.png b/public/textures/sophisticatedbackpacks/survival_infinity_upgrade.png new file mode 100644 index 00000000..3b9fccae Binary files /dev/null and b/public/textures/sophisticatedbackpacks/survival_infinity_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/tank_upgrade.png b/public/textures/sophisticatedbackpacks/tank_upgrade.png new file mode 100644 index 00000000..ca834a02 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/tank_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/tool_swapper_upgrade.png b/public/textures/sophisticatedbackpacks/tool_swapper_upgrade.png new file mode 100644 index 00000000..0a3e5291 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/tool_swapper_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/upgrade_base.png b/public/textures/sophisticatedbackpacks/upgrade_base.png new file mode 100644 index 00000000..d0c92a66 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/upgrade_base.png differ diff --git a/public/textures/sophisticatedbackpacks/void_upgrade.png b/public/textures/sophisticatedbackpacks/void_upgrade.png new file mode 100644 index 00000000..0a6e8e04 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/void_upgrade.png differ diff --git a/public/textures/sophisticatedbackpacks/xp_pump_upgrade.png b/public/textures/sophisticatedbackpacks/xp_pump_upgrade.png new file mode 100644 index 00000000..b94d9314 Binary files /dev/null and b/public/textures/sophisticatedbackpacks/xp_pump_upgrade.png differ diff --git a/public/textures/sophisticatedcore/xp_bucket.png b/public/textures/sophisticatedcore/xp_bucket.png new file mode 100644 index 00000000..641db84e Binary files /dev/null and b/public/textures/sophisticatedcore/xp_bucket.png differ diff --git a/public/textures/storagedrawers/acacia_full_drawers_1.png b/public/textures/storagedrawers/acacia_full_drawers_1.png new file mode 100644 index 00000000..f1a079ee Binary files /dev/null and b/public/textures/storagedrawers/acacia_full_drawers_1.png differ diff --git a/public/textures/storagedrawers/acacia_full_drawers_2.png b/public/textures/storagedrawers/acacia_full_drawers_2.png new file mode 100644 index 00000000..8d8fd9c1 Binary files /dev/null and b/public/textures/storagedrawers/acacia_full_drawers_2.png differ diff --git a/public/textures/storagedrawers/acacia_full_drawers_4.png b/public/textures/storagedrawers/acacia_full_drawers_4.png new file mode 100644 index 00000000..9ec9ac3a Binary files /dev/null and b/public/textures/storagedrawers/acacia_full_drawers_4.png differ diff --git a/public/textures/storagedrawers/acacia_half_drawers_1.png b/public/textures/storagedrawers/acacia_half_drawers_1.png new file mode 100644 index 00000000..3e68650b Binary files /dev/null and b/public/textures/storagedrawers/acacia_half_drawers_1.png differ diff --git a/public/textures/storagedrawers/acacia_half_drawers_2.png b/public/textures/storagedrawers/acacia_half_drawers_2.png new file mode 100644 index 00000000..b86bb6c9 Binary files /dev/null and b/public/textures/storagedrawers/acacia_half_drawers_2.png differ diff --git a/public/textures/storagedrawers/acacia_half_drawers_4.png b/public/textures/storagedrawers/acacia_half_drawers_4.png new file mode 100644 index 00000000..61b7c392 Binary files /dev/null and b/public/textures/storagedrawers/acacia_half_drawers_4.png differ diff --git a/public/textures/storagedrawers/acacia_trim.png b/public/textures/storagedrawers/acacia_trim.png new file mode 100644 index 00000000..a6361c15 Binary files /dev/null and b/public/textures/storagedrawers/acacia_trim.png differ diff --git a/public/textures/storagedrawers/balance_fill_upgrade.png b/public/textures/storagedrawers/balance_fill_upgrade.png new file mode 100644 index 00000000..466ee300 Binary files /dev/null and b/public/textures/storagedrawers/balance_fill_upgrade.png differ diff --git a/public/textures/storagedrawers/bamboo_full_drawers_1.png b/public/textures/storagedrawers/bamboo_full_drawers_1.png new file mode 100644 index 00000000..d9b32017 Binary files /dev/null and b/public/textures/storagedrawers/bamboo_full_drawers_1.png differ diff --git a/public/textures/storagedrawers/bamboo_full_drawers_2.png b/public/textures/storagedrawers/bamboo_full_drawers_2.png new file mode 100644 index 00000000..9e1e688c Binary files /dev/null and b/public/textures/storagedrawers/bamboo_full_drawers_2.png differ diff --git a/public/textures/storagedrawers/bamboo_full_drawers_4.png b/public/textures/storagedrawers/bamboo_full_drawers_4.png new file mode 100644 index 00000000..81d115fc Binary files /dev/null and b/public/textures/storagedrawers/bamboo_full_drawers_4.png differ diff --git a/public/textures/storagedrawers/bamboo_half_drawers_1.png b/public/textures/storagedrawers/bamboo_half_drawers_1.png new file mode 100644 index 00000000..5893e5da Binary files /dev/null and b/public/textures/storagedrawers/bamboo_half_drawers_1.png differ diff --git a/public/textures/storagedrawers/bamboo_half_drawers_2.png b/public/textures/storagedrawers/bamboo_half_drawers_2.png new file mode 100644 index 00000000..5abceb90 Binary files /dev/null and b/public/textures/storagedrawers/bamboo_half_drawers_2.png differ diff --git a/public/textures/storagedrawers/bamboo_half_drawers_4.png b/public/textures/storagedrawers/bamboo_half_drawers_4.png new file mode 100644 index 00000000..4dc80a30 Binary files /dev/null and b/public/textures/storagedrawers/bamboo_half_drawers_4.png differ diff --git a/public/textures/storagedrawers/bamboo_trim.png b/public/textures/storagedrawers/bamboo_trim.png new file mode 100644 index 00000000..a5b1d7f0 Binary files /dev/null and b/public/textures/storagedrawers/bamboo_trim.png differ diff --git a/public/textures/storagedrawers/birch_full_drawers_1.png b/public/textures/storagedrawers/birch_full_drawers_1.png new file mode 100644 index 00000000..9cdfa0b3 Binary files /dev/null and b/public/textures/storagedrawers/birch_full_drawers_1.png differ diff --git a/public/textures/storagedrawers/birch_full_drawers_2.png b/public/textures/storagedrawers/birch_full_drawers_2.png new file mode 100644 index 00000000..468ff6d8 Binary files /dev/null and b/public/textures/storagedrawers/birch_full_drawers_2.png differ diff --git a/public/textures/storagedrawers/birch_full_drawers_4.png b/public/textures/storagedrawers/birch_full_drawers_4.png new file mode 100644 index 00000000..21d7c5a0 Binary files /dev/null and b/public/textures/storagedrawers/birch_full_drawers_4.png differ diff --git a/public/textures/storagedrawers/birch_half_drawers_1.png b/public/textures/storagedrawers/birch_half_drawers_1.png new file mode 100644 index 00000000..bbb3c2a0 Binary files /dev/null and b/public/textures/storagedrawers/birch_half_drawers_1.png differ diff --git a/public/textures/storagedrawers/birch_half_drawers_2.png b/public/textures/storagedrawers/birch_half_drawers_2.png new file mode 100644 index 00000000..0150e3a7 Binary files /dev/null and b/public/textures/storagedrawers/birch_half_drawers_2.png differ diff --git a/public/textures/storagedrawers/birch_half_drawers_4.png b/public/textures/storagedrawers/birch_half_drawers_4.png new file mode 100644 index 00000000..8dd35e3f Binary files /dev/null and b/public/textures/storagedrawers/birch_half_drawers_4.png differ diff --git a/public/textures/storagedrawers/birch_trim.png b/public/textures/storagedrawers/birch_trim.png new file mode 100644 index 00000000..ebceb8af Binary files /dev/null and b/public/textures/storagedrawers/birch_trim.png differ diff --git a/public/textures/storagedrawers/cherry_full_drawers_1.png b/public/textures/storagedrawers/cherry_full_drawers_1.png new file mode 100644 index 00000000..bdc6a92e Binary files /dev/null and b/public/textures/storagedrawers/cherry_full_drawers_1.png differ diff --git a/public/textures/storagedrawers/cherry_full_drawers_2.png b/public/textures/storagedrawers/cherry_full_drawers_2.png new file mode 100644 index 00000000..dcd2d635 Binary files /dev/null and b/public/textures/storagedrawers/cherry_full_drawers_2.png differ diff --git a/public/textures/storagedrawers/cherry_full_drawers_4.png b/public/textures/storagedrawers/cherry_full_drawers_4.png new file mode 100644 index 00000000..be355290 Binary files /dev/null and b/public/textures/storagedrawers/cherry_full_drawers_4.png differ diff --git a/public/textures/storagedrawers/cherry_half_drawers_1.png b/public/textures/storagedrawers/cherry_half_drawers_1.png new file mode 100644 index 00000000..9b913f68 Binary files /dev/null and b/public/textures/storagedrawers/cherry_half_drawers_1.png differ diff --git a/public/textures/storagedrawers/cherry_half_drawers_2.png b/public/textures/storagedrawers/cherry_half_drawers_2.png new file mode 100644 index 00000000..f768d35b Binary files /dev/null and b/public/textures/storagedrawers/cherry_half_drawers_2.png differ diff --git a/public/textures/storagedrawers/cherry_half_drawers_4.png b/public/textures/storagedrawers/cherry_half_drawers_4.png new file mode 100644 index 00000000..e7feb95c Binary files /dev/null and b/public/textures/storagedrawers/cherry_half_drawers_4.png differ diff --git a/public/textures/storagedrawers/cherry_trim.png b/public/textures/storagedrawers/cherry_trim.png new file mode 100644 index 00000000..eb20f3bb Binary files /dev/null and b/public/textures/storagedrawers/cherry_trim.png differ diff --git a/public/textures/storagedrawers/compacting_drawers_2.png b/public/textures/storagedrawers/compacting_drawers_2.png new file mode 100644 index 00000000..52f48367 Binary files /dev/null and b/public/textures/storagedrawers/compacting_drawers_2.png differ diff --git a/public/textures/storagedrawers/compacting_drawers_3.png b/public/textures/storagedrawers/compacting_drawers_3.png new file mode 100644 index 00000000..55ee0c93 Binary files /dev/null and b/public/textures/storagedrawers/compacting_drawers_3.png differ diff --git a/public/textures/storagedrawers/compacting_half_drawers_2.png b/public/textures/storagedrawers/compacting_half_drawers_2.png new file mode 100644 index 00000000..df21a874 Binary files /dev/null and b/public/textures/storagedrawers/compacting_half_drawers_2.png differ diff --git a/public/textures/storagedrawers/compacting_half_drawers_3.png b/public/textures/storagedrawers/compacting_half_drawers_3.png new file mode 100644 index 00000000..14f1ed77 Binary files /dev/null and b/public/textures/storagedrawers/compacting_half_drawers_3.png differ diff --git a/public/textures/storagedrawers/controller.png b/public/textures/storagedrawers/controller.png new file mode 100644 index 00000000..eaeea695 Binary files /dev/null and b/public/textures/storagedrawers/controller.png differ diff --git a/public/textures/storagedrawers/controller_io.png b/public/textures/storagedrawers/controller_io.png new file mode 100644 index 00000000..4d5687f2 Binary files /dev/null and b/public/textures/storagedrawers/controller_io.png differ diff --git a/public/textures/storagedrawers/conversion_upgrade.png b/public/textures/storagedrawers/conversion_upgrade.png new file mode 100644 index 00000000..572569ae Binary files /dev/null and b/public/textures/storagedrawers/conversion_upgrade.png differ diff --git a/public/textures/storagedrawers/creative_storage_upgrade.png b/public/textures/storagedrawers/creative_storage_upgrade.png new file mode 100644 index 00000000..f2c437d7 Binary files /dev/null and b/public/textures/storagedrawers/creative_storage_upgrade.png differ diff --git a/public/textures/storagedrawers/creative_vending_upgrade.png b/public/textures/storagedrawers/creative_vending_upgrade.png new file mode 100644 index 00000000..782509e2 Binary files /dev/null and b/public/textures/storagedrawers/creative_vending_upgrade.png differ diff --git a/public/textures/storagedrawers/crimson_full_drawers_1.png b/public/textures/storagedrawers/crimson_full_drawers_1.png new file mode 100644 index 00000000..3727a5eb Binary files /dev/null and b/public/textures/storagedrawers/crimson_full_drawers_1.png differ diff --git a/public/textures/storagedrawers/crimson_full_drawers_2.png b/public/textures/storagedrawers/crimson_full_drawers_2.png new file mode 100644 index 00000000..db6d069d Binary files /dev/null and b/public/textures/storagedrawers/crimson_full_drawers_2.png differ diff --git a/public/textures/storagedrawers/crimson_full_drawers_4.png b/public/textures/storagedrawers/crimson_full_drawers_4.png new file mode 100644 index 00000000..b9f2474a Binary files /dev/null and b/public/textures/storagedrawers/crimson_full_drawers_4.png differ diff --git a/public/textures/storagedrawers/crimson_half_drawers_1.png b/public/textures/storagedrawers/crimson_half_drawers_1.png new file mode 100644 index 00000000..c6bef15c Binary files /dev/null and b/public/textures/storagedrawers/crimson_half_drawers_1.png differ diff --git a/public/textures/storagedrawers/crimson_half_drawers_2.png b/public/textures/storagedrawers/crimson_half_drawers_2.png new file mode 100644 index 00000000..acc02a52 Binary files /dev/null and b/public/textures/storagedrawers/crimson_half_drawers_2.png differ diff --git a/public/textures/storagedrawers/crimson_half_drawers_4.png b/public/textures/storagedrawers/crimson_half_drawers_4.png new file mode 100644 index 00000000..e77f5785 Binary files /dev/null and b/public/textures/storagedrawers/crimson_half_drawers_4.png differ diff --git a/public/textures/storagedrawers/crimson_trim.png b/public/textures/storagedrawers/crimson_trim.png new file mode 100644 index 00000000..19777a79 Binary files /dev/null and b/public/textures/storagedrawers/crimson_trim.png differ diff --git a/public/textures/storagedrawers/dark_oak_full_drawers_1.png b/public/textures/storagedrawers/dark_oak_full_drawers_1.png new file mode 100644 index 00000000..7ab4fed0 Binary files /dev/null and b/public/textures/storagedrawers/dark_oak_full_drawers_1.png differ diff --git a/public/textures/storagedrawers/dark_oak_full_drawers_2.png b/public/textures/storagedrawers/dark_oak_full_drawers_2.png new file mode 100644 index 00000000..73cb12d7 Binary files /dev/null and b/public/textures/storagedrawers/dark_oak_full_drawers_2.png differ diff --git a/public/textures/storagedrawers/dark_oak_full_drawers_4.png b/public/textures/storagedrawers/dark_oak_full_drawers_4.png new file mode 100644 index 00000000..20a648c4 Binary files /dev/null and b/public/textures/storagedrawers/dark_oak_full_drawers_4.png differ diff --git a/public/textures/storagedrawers/dark_oak_half_drawers_1.png b/public/textures/storagedrawers/dark_oak_half_drawers_1.png new file mode 100644 index 00000000..02352c4f Binary files /dev/null and b/public/textures/storagedrawers/dark_oak_half_drawers_1.png differ diff --git a/public/textures/storagedrawers/dark_oak_half_drawers_2.png b/public/textures/storagedrawers/dark_oak_half_drawers_2.png new file mode 100644 index 00000000..0081ecac Binary files /dev/null and b/public/textures/storagedrawers/dark_oak_half_drawers_2.png differ diff --git a/public/textures/storagedrawers/dark_oak_half_drawers_4.png b/public/textures/storagedrawers/dark_oak_half_drawers_4.png new file mode 100644 index 00000000..c96b0db7 Binary files /dev/null and b/public/textures/storagedrawers/dark_oak_half_drawers_4.png differ diff --git a/public/textures/storagedrawers/dark_oak_trim.png b/public/textures/storagedrawers/dark_oak_trim.png new file mode 100644 index 00000000..9a9ecf16 Binary files /dev/null and b/public/textures/storagedrawers/dark_oak_trim.png differ diff --git a/public/textures/storagedrawers/detached_drawer.png b/public/textures/storagedrawers/detached_drawer.png new file mode 100644 index 00000000..9d1f28b1 Binary files /dev/null and b/public/textures/storagedrawers/detached_drawer.png differ diff --git a/public/textures/storagedrawers/diamond_storage_upgrade.png b/public/textures/storagedrawers/diamond_storage_upgrade.png new file mode 100644 index 00000000..b4e6e993 Binary files /dev/null and b/public/textures/storagedrawers/diamond_storage_upgrade.png differ diff --git a/public/textures/storagedrawers/drawer_key.png b/public/textures/storagedrawers/drawer_key.png new file mode 100644 index 00000000..e497ea8e Binary files /dev/null and b/public/textures/storagedrawers/drawer_key.png differ diff --git a/public/textures/storagedrawers/drawer_puller.png b/public/textures/storagedrawers/drawer_puller.png new file mode 100644 index 00000000..9342be64 Binary files /dev/null and b/public/textures/storagedrawers/drawer_puller.png differ diff --git a/public/textures/storagedrawers/emerald_storage_upgrade.png b/public/textures/storagedrawers/emerald_storage_upgrade.png new file mode 100644 index 00000000..5088ff35 Binary files /dev/null and b/public/textures/storagedrawers/emerald_storage_upgrade.png differ diff --git a/public/textures/storagedrawers/fill_level_upgrade.png b/public/textures/storagedrawers/fill_level_upgrade.png new file mode 100644 index 00000000..7ea20e23 Binary files /dev/null and b/public/textures/storagedrawers/fill_level_upgrade.png differ diff --git a/public/textures/storagedrawers/framing_table.png b/public/textures/storagedrawers/framing_table.png new file mode 100644 index 00000000..9019e283 Binary files /dev/null and b/public/textures/storagedrawers/framing_table.png differ diff --git a/public/textures/storagedrawers/gold_storage_upgrade.png b/public/textures/storagedrawers/gold_storage_upgrade.png new file mode 100644 index 00000000..739c1251 Binary files /dev/null and b/public/textures/storagedrawers/gold_storage_upgrade.png differ diff --git a/public/textures/storagedrawers/illumination_upgrade.png b/public/textures/storagedrawers/illumination_upgrade.png new file mode 100644 index 00000000..b572351a Binary files /dev/null and b/public/textures/storagedrawers/illumination_upgrade.png differ diff --git a/public/textures/storagedrawers/iron_storage_upgrade.png b/public/textures/storagedrawers/iron_storage_upgrade.png new file mode 100644 index 00000000..db57a897 Binary files /dev/null and b/public/textures/storagedrawers/iron_storage_upgrade.png differ diff --git a/public/textures/storagedrawers/jungle_full_drawers_1.png b/public/textures/storagedrawers/jungle_full_drawers_1.png new file mode 100644 index 00000000..f79ed31c Binary files /dev/null and b/public/textures/storagedrawers/jungle_full_drawers_1.png differ diff --git a/public/textures/storagedrawers/jungle_full_drawers_2.png b/public/textures/storagedrawers/jungle_full_drawers_2.png new file mode 100644 index 00000000..a5f62913 Binary files /dev/null and b/public/textures/storagedrawers/jungle_full_drawers_2.png differ diff --git a/public/textures/storagedrawers/jungle_full_drawers_4.png b/public/textures/storagedrawers/jungle_full_drawers_4.png new file mode 100644 index 00000000..01f8d5c7 Binary files /dev/null and b/public/textures/storagedrawers/jungle_full_drawers_4.png differ diff --git a/public/textures/storagedrawers/jungle_half_drawers_1.png b/public/textures/storagedrawers/jungle_half_drawers_1.png new file mode 100644 index 00000000..403b5a04 Binary files /dev/null and b/public/textures/storagedrawers/jungle_half_drawers_1.png differ diff --git a/public/textures/storagedrawers/jungle_half_drawers_2.png b/public/textures/storagedrawers/jungle_half_drawers_2.png new file mode 100644 index 00000000..36729560 Binary files /dev/null and b/public/textures/storagedrawers/jungle_half_drawers_2.png differ diff --git a/public/textures/storagedrawers/jungle_half_drawers_4.png b/public/textures/storagedrawers/jungle_half_drawers_4.png new file mode 100644 index 00000000..59b7a265 Binary files /dev/null and b/public/textures/storagedrawers/jungle_half_drawers_4.png differ diff --git a/public/textures/storagedrawers/jungle_trim.png b/public/textures/storagedrawers/jungle_trim.png new file mode 100644 index 00000000..a3b2f25e Binary files /dev/null and b/public/textures/storagedrawers/jungle_trim.png differ diff --git a/public/textures/storagedrawers/keybutton_concealment.png b/public/textures/storagedrawers/keybutton_concealment.png new file mode 100644 index 00000000..9dd7fff4 Binary files /dev/null and b/public/textures/storagedrawers/keybutton_concealment.png differ diff --git a/public/textures/storagedrawers/keybutton_drawer.png b/public/textures/storagedrawers/keybutton_drawer.png new file mode 100644 index 00000000..749e55ca Binary files /dev/null and b/public/textures/storagedrawers/keybutton_drawer.png differ diff --git a/public/textures/storagedrawers/keybutton_quantify.png b/public/textures/storagedrawers/keybutton_quantify.png new file mode 100644 index 00000000..fa271f10 Binary files /dev/null and b/public/textures/storagedrawers/keybutton_quantify.png differ diff --git a/public/textures/storagedrawers/keyring.png b/public/textures/storagedrawers/keyring.png new file mode 100644 index 00000000..93d0e9a5 Binary files /dev/null and b/public/textures/storagedrawers/keyring.png differ diff --git a/public/textures/storagedrawers/mangrove_full_drawers_1.png b/public/textures/storagedrawers/mangrove_full_drawers_1.png new file mode 100644 index 00000000..7b8f8960 Binary files /dev/null and b/public/textures/storagedrawers/mangrove_full_drawers_1.png differ diff --git a/public/textures/storagedrawers/mangrove_full_drawers_2.png b/public/textures/storagedrawers/mangrove_full_drawers_2.png new file mode 100644 index 00000000..94a60294 Binary files /dev/null and b/public/textures/storagedrawers/mangrove_full_drawers_2.png differ diff --git a/public/textures/storagedrawers/mangrove_full_drawers_4.png b/public/textures/storagedrawers/mangrove_full_drawers_4.png new file mode 100644 index 00000000..86cfba83 Binary files /dev/null and b/public/textures/storagedrawers/mangrove_full_drawers_4.png differ diff --git a/public/textures/storagedrawers/mangrove_half_drawers_1.png b/public/textures/storagedrawers/mangrove_half_drawers_1.png new file mode 100644 index 00000000..d5a729ad Binary files /dev/null and b/public/textures/storagedrawers/mangrove_half_drawers_1.png differ diff --git a/public/textures/storagedrawers/mangrove_half_drawers_2.png b/public/textures/storagedrawers/mangrove_half_drawers_2.png new file mode 100644 index 00000000..90626f35 Binary files /dev/null and b/public/textures/storagedrawers/mangrove_half_drawers_2.png differ diff --git a/public/textures/storagedrawers/mangrove_half_drawers_4.png b/public/textures/storagedrawers/mangrove_half_drawers_4.png new file mode 100644 index 00000000..6d0b5122 Binary files /dev/null and b/public/textures/storagedrawers/mangrove_half_drawers_4.png differ diff --git a/public/textures/storagedrawers/mangrove_trim.png b/public/textures/storagedrawers/mangrove_trim.png new file mode 100644 index 00000000..a5cb1391 Binary files /dev/null and b/public/textures/storagedrawers/mangrove_trim.png differ diff --git a/public/textures/storagedrawers/max_redstone_upgrade.png b/public/textures/storagedrawers/max_redstone_upgrade.png new file mode 100644 index 00000000..bbf5fca3 Binary files /dev/null and b/public/textures/storagedrawers/max_redstone_upgrade.png differ diff --git a/public/textures/storagedrawers/min_redstone_upgrade.png b/public/textures/storagedrawers/min_redstone_upgrade.png new file mode 100644 index 00000000..4d6d9b27 Binary files /dev/null and b/public/textures/storagedrawers/min_redstone_upgrade.png differ diff --git a/public/textures/storagedrawers/oak_full_drawers_1.png b/public/textures/storagedrawers/oak_full_drawers_1.png new file mode 100644 index 00000000..be2fe34a Binary files /dev/null and b/public/textures/storagedrawers/oak_full_drawers_1.png differ diff --git a/public/textures/storagedrawers/oak_full_drawers_2.png b/public/textures/storagedrawers/oak_full_drawers_2.png new file mode 100644 index 00000000..f9cc61f4 Binary files /dev/null and b/public/textures/storagedrawers/oak_full_drawers_2.png differ diff --git a/public/textures/storagedrawers/oak_full_drawers_4.png b/public/textures/storagedrawers/oak_full_drawers_4.png new file mode 100644 index 00000000..4b2b325c Binary files /dev/null and b/public/textures/storagedrawers/oak_full_drawers_4.png differ diff --git a/public/textures/storagedrawers/oak_half_drawers_1.png b/public/textures/storagedrawers/oak_half_drawers_1.png new file mode 100644 index 00000000..bab4cc7f Binary files /dev/null and b/public/textures/storagedrawers/oak_half_drawers_1.png differ diff --git a/public/textures/storagedrawers/oak_half_drawers_2.png b/public/textures/storagedrawers/oak_half_drawers_2.png new file mode 100644 index 00000000..f232f841 Binary files /dev/null and b/public/textures/storagedrawers/oak_half_drawers_2.png differ diff --git a/public/textures/storagedrawers/oak_half_drawers_4.png b/public/textures/storagedrawers/oak_half_drawers_4.png new file mode 100644 index 00000000..1801a05b Binary files /dev/null and b/public/textures/storagedrawers/oak_half_drawers_4.png differ diff --git a/public/textures/storagedrawers/oak_trim.png b/public/textures/storagedrawers/oak_trim.png new file mode 100644 index 00000000..80514c71 Binary files /dev/null and b/public/textures/storagedrawers/oak_trim.png differ diff --git a/public/textures/storagedrawers/obsidian_storage_upgrade.png b/public/textures/storagedrawers/obsidian_storage_upgrade.png new file mode 100644 index 00000000..b54984c7 Binary files /dev/null and b/public/textures/storagedrawers/obsidian_storage_upgrade.png differ diff --git a/public/textures/storagedrawers/one_stack_upgrade.png b/public/textures/storagedrawers/one_stack_upgrade.png new file mode 100644 index 00000000..852c4559 Binary files /dev/null and b/public/textures/storagedrawers/one_stack_upgrade.png differ diff --git a/public/textures/storagedrawers/personal_key.png b/public/textures/storagedrawers/personal_key.png new file mode 100644 index 00000000..085d09d3 Binary files /dev/null and b/public/textures/storagedrawers/personal_key.png differ diff --git a/public/textures/storagedrawers/personal_key_cofh.png b/public/textures/storagedrawers/personal_key_cofh.png new file mode 100644 index 00000000..51b7133c Binary files /dev/null and b/public/textures/storagedrawers/personal_key_cofh.png differ diff --git a/public/textures/storagedrawers/portability_upgrade.png b/public/textures/storagedrawers/portability_upgrade.png new file mode 100644 index 00000000..0cc4b0a4 Binary files /dev/null and b/public/textures/storagedrawers/portability_upgrade.png differ diff --git a/public/textures/storagedrawers/priority_key.png b/public/textures/storagedrawers/priority_key.png new file mode 100644 index 00000000..0f99acd7 Binary files /dev/null and b/public/textures/storagedrawers/priority_key.png differ diff --git a/public/textures/storagedrawers/quantify_key.png b/public/textures/storagedrawers/quantify_key.png new file mode 100644 index 00000000..1420182e Binary files /dev/null and b/public/textures/storagedrawers/quantify_key.png differ diff --git a/public/textures/storagedrawers/redstone_upgrade.png b/public/textures/storagedrawers/redstone_upgrade.png new file mode 100644 index 00000000..65ca8819 Binary files /dev/null and b/public/textures/storagedrawers/redstone_upgrade.png differ diff --git a/public/textures/storagedrawers/remote_group_upgrade.png b/public/textures/storagedrawers/remote_group_upgrade.png new file mode 100644 index 00000000..19201457 Binary files /dev/null and b/public/textures/storagedrawers/remote_group_upgrade.png differ diff --git a/public/textures/storagedrawers/remote_upgrade.png b/public/textures/storagedrawers/remote_upgrade.png new file mode 100644 index 00000000..962178ac Binary files /dev/null and b/public/textures/storagedrawers/remote_upgrade.png differ diff --git a/public/textures/storagedrawers/shroud_key.png b/public/textures/storagedrawers/shroud_key.png new file mode 100644 index 00000000..6880f9da Binary files /dev/null and b/public/textures/storagedrawers/shroud_key.png differ diff --git a/public/textures/storagedrawers/spruce_full_drawers_1.png b/public/textures/storagedrawers/spruce_full_drawers_1.png new file mode 100644 index 00000000..692eb46e Binary files /dev/null and b/public/textures/storagedrawers/spruce_full_drawers_1.png differ diff --git a/public/textures/storagedrawers/spruce_full_drawers_2.png b/public/textures/storagedrawers/spruce_full_drawers_2.png new file mode 100644 index 00000000..177cdba8 Binary files /dev/null and b/public/textures/storagedrawers/spruce_full_drawers_2.png differ diff --git a/public/textures/storagedrawers/spruce_full_drawers_4.png b/public/textures/storagedrawers/spruce_full_drawers_4.png new file mode 100644 index 00000000..46d15396 Binary files /dev/null and b/public/textures/storagedrawers/spruce_full_drawers_4.png differ diff --git a/public/textures/storagedrawers/spruce_half_drawers_1.png b/public/textures/storagedrawers/spruce_half_drawers_1.png new file mode 100644 index 00000000..b454ef37 Binary files /dev/null and b/public/textures/storagedrawers/spruce_half_drawers_1.png differ diff --git a/public/textures/storagedrawers/spruce_half_drawers_2.png b/public/textures/storagedrawers/spruce_half_drawers_2.png new file mode 100644 index 00000000..3e0c2f7d Binary files /dev/null and b/public/textures/storagedrawers/spruce_half_drawers_2.png differ diff --git a/public/textures/storagedrawers/spruce_half_drawers_4.png b/public/textures/storagedrawers/spruce_half_drawers_4.png new file mode 100644 index 00000000..7d10c0c6 Binary files /dev/null and b/public/textures/storagedrawers/spruce_half_drawers_4.png differ diff --git a/public/textures/storagedrawers/spruce_trim.png b/public/textures/storagedrawers/spruce_trim.png new file mode 100644 index 00000000..d341a88f Binary files /dev/null and b/public/textures/storagedrawers/spruce_trim.png differ diff --git a/public/textures/storagedrawers/upgrade_template.png b/public/textures/storagedrawers/upgrade_template.png new file mode 100644 index 00000000..9dd6e1be Binary files /dev/null and b/public/textures/storagedrawers/upgrade_template.png differ diff --git a/public/textures/storagedrawers/void_upgrade.png b/public/textures/storagedrawers/void_upgrade.png new file mode 100644 index 00000000..6dcc25db Binary files /dev/null and b/public/textures/storagedrawers/void_upgrade.png differ diff --git a/public/textures/storagedrawers/warped_full_drawers_1.png b/public/textures/storagedrawers/warped_full_drawers_1.png new file mode 100644 index 00000000..bf59bbbf Binary files /dev/null and b/public/textures/storagedrawers/warped_full_drawers_1.png differ diff --git a/public/textures/storagedrawers/warped_full_drawers_2.png b/public/textures/storagedrawers/warped_full_drawers_2.png new file mode 100644 index 00000000..df2b91c6 Binary files /dev/null and b/public/textures/storagedrawers/warped_full_drawers_2.png differ diff --git a/public/textures/storagedrawers/warped_full_drawers_4.png b/public/textures/storagedrawers/warped_full_drawers_4.png new file mode 100644 index 00000000..36821b4d Binary files /dev/null and b/public/textures/storagedrawers/warped_full_drawers_4.png differ diff --git a/public/textures/storagedrawers/warped_half_drawers_1.png b/public/textures/storagedrawers/warped_half_drawers_1.png new file mode 100644 index 00000000..25347cbb Binary files /dev/null and b/public/textures/storagedrawers/warped_half_drawers_1.png differ diff --git a/public/textures/storagedrawers/warped_half_drawers_2.png b/public/textures/storagedrawers/warped_half_drawers_2.png new file mode 100644 index 00000000..e6561701 Binary files /dev/null and b/public/textures/storagedrawers/warped_half_drawers_2.png differ diff --git a/public/textures/storagedrawers/warped_half_drawers_4.png b/public/textures/storagedrawers/warped_half_drawers_4.png new file mode 100644 index 00000000..e8022687 Binary files /dev/null and b/public/textures/storagedrawers/warped_half_drawers_4.png differ diff --git a/public/textures/storagedrawers/warped_trim.png b/public/textures/storagedrawers/warped_trim.png new file mode 100644 index 00000000..d446e001 Binary files /dev/null and b/public/textures/storagedrawers/warped_trim.png differ diff --git a/public/textures/strawstatues/straw_statue.png b/public/textures/strawstatues/straw_statue.png new file mode 100644 index 00000000..82a140f1 Binary files /dev/null and b/public/textures/strawstatues/straw_statue.png differ diff --git a/public/textures/twilightdelight/aurora_pie.png b/public/textures/twilightdelight/aurora_pie.png new file mode 100644 index 00000000..12b73815 Binary files /dev/null and b/public/textures/twilightdelight/aurora_pie.png differ diff --git a/public/textures/twilightdelight/aurora_pie_slice.png b/public/textures/twilightdelight/aurora_pie_slice.png new file mode 100644 index 00000000..04f1f1ed Binary files /dev/null and b/public/textures/twilightdelight/aurora_pie_slice.png differ diff --git a/public/textures/twilightdelight/berry_stick.png b/public/textures/twilightdelight/berry_stick.png new file mode 100644 index 00000000..9c32ead0 Binary files /dev/null and b/public/textures/twilightdelight/berry_stick.png differ diff --git a/public/textures/twilightdelight/borer_tear_soup.png b/public/textures/twilightdelight/borer_tear_soup.png new file mode 100644 index 00000000..a38ca1d6 Binary files /dev/null and b/public/textures/twilightdelight/borer_tear_soup.png differ diff --git a/public/textures/twilightdelight/canopy_cabinet.png b/public/textures/twilightdelight/canopy_cabinet.png new file mode 100644 index 00000000..031bdec0 Binary files /dev/null and b/public/textures/twilightdelight/canopy_cabinet.png differ diff --git a/public/textures/twilightdelight/chocolate_113.png b/public/textures/twilightdelight/chocolate_113.png new file mode 100644 index 00000000..ecde81d3 Binary files /dev/null and b/public/textures/twilightdelight/chocolate_113.png differ diff --git a/public/textures/twilightdelight/chocolate_wafer.png b/public/textures/twilightdelight/chocolate_wafer.png new file mode 100644 index 00000000..e2584087 Binary files /dev/null and b/public/textures/twilightdelight/chocolate_wafer.png differ diff --git a/public/textures/twilightdelight/cooked_insect.png b/public/textures/twilightdelight/cooked_insect.png new file mode 100644 index 00000000..c81a8fb5 Binary files /dev/null and b/public/textures/twilightdelight/cooked_insect.png differ diff --git a/public/textures/twilightdelight/cooked_meef_slice.png b/public/textures/twilightdelight/cooked_meef_slice.png new file mode 100644 index 00000000..8ecd1de0 Binary files /dev/null and b/public/textures/twilightdelight/cooked_meef_slice.png differ diff --git a/public/textures/twilightdelight/cooked_tomahawk_smeak.png b/public/textures/twilightdelight/cooked_tomahawk_smeak.png new file mode 100644 index 00000000..2be6ca0b Binary files /dev/null and b/public/textures/twilightdelight/cooked_tomahawk_smeak.png differ diff --git a/public/textures/twilightdelight/cooked_venison_rib.png b/public/textures/twilightdelight/cooked_venison_rib.png new file mode 100644 index 00000000..7b5dfd87 Binary files /dev/null and b/public/textures/twilightdelight/cooked_venison_rib.png differ diff --git a/public/textures/twilightdelight/dark_cabinet.png b/public/textures/twilightdelight/dark_cabinet.png new file mode 100644 index 00000000..8805488b Binary files /dev/null and b/public/textures/twilightdelight/dark_cabinet.png differ diff --git a/public/textures/twilightdelight/experiment_110.png b/public/textures/twilightdelight/experiment_110.png new file mode 100644 index 00000000..c28f5a44 Binary files /dev/null and b/public/textures/twilightdelight/experiment_110.png differ diff --git a/public/textures/twilightdelight/experiment_113.png b/public/textures/twilightdelight/experiment_113.png new file mode 100644 index 00000000..5dec2660 Binary files /dev/null and b/public/textures/twilightdelight/experiment_113.png differ diff --git a/public/textures/twilightdelight/fiery_cooking_pot.png b/public/textures/twilightdelight/fiery_cooking_pot.png new file mode 100644 index 00000000..6c608ab2 Binary files /dev/null and b/public/textures/twilightdelight/fiery_cooking_pot.png differ diff --git a/public/textures/twilightdelight/fiery_knife.png b/public/textures/twilightdelight/fiery_knife.png new file mode 100644 index 00000000..31e80ff3 Binary files /dev/null and b/public/textures/twilightdelight/fiery_knife.png differ diff --git a/public/textures/twilightdelight/fiery_snakes_block.png b/public/textures/twilightdelight/fiery_snakes_block.png new file mode 100644 index 00000000..6b75c986 Binary files /dev/null and b/public/textures/twilightdelight/fiery_snakes_block.png differ diff --git a/public/textures/twilightdelight/fried_insect.png b/public/textures/twilightdelight/fried_insect.png new file mode 100644 index 00000000..56eb3759 Binary files /dev/null and b/public/textures/twilightdelight/fried_insect.png differ diff --git a/public/textures/twilightdelight/ghast_brain_salad.png b/public/textures/twilightdelight/ghast_brain_salad.png new file mode 100644 index 00000000..20dbf295 Binary files /dev/null and b/public/textures/twilightdelight/ghast_brain_salad.png differ diff --git a/public/textures/twilightdelight/ghast_burger.png b/public/textures/twilightdelight/ghast_burger.png new file mode 100644 index 00000000..7833a475 Binary files /dev/null and b/public/textures/twilightdelight/ghast_burger.png differ diff --git a/public/textures/twilightdelight/glacier_ice_tea.png b/public/textures/twilightdelight/glacier_ice_tea.png new file mode 100644 index 00000000..05de2b8c Binary files /dev/null and b/public/textures/twilightdelight/glacier_ice_tea.png differ diff --git a/public/textures/twilightdelight/glow_113.png b/public/textures/twilightdelight/glow_113.png new file mode 100644 index 00000000..c0cb12ee Binary files /dev/null and b/public/textures/twilightdelight/glow_113.png differ diff --git a/public/textures/twilightdelight/glow_venison_rib_with_pasta.png b/public/textures/twilightdelight/glow_venison_rib_with_pasta.png new file mode 100644 index 00000000..b1fe23c1 Binary files /dev/null and b/public/textures/twilightdelight/glow_venison_rib_with_pasta.png differ diff --git a/public/textures/twilightdelight/glowstew.png b/public/textures/twilightdelight/glowstew.png new file mode 100644 index 00000000..06b4966d Binary files /dev/null and b/public/textures/twilightdelight/glowstew.png differ diff --git a/public/textures/twilightdelight/grilled_ghast.png b/public/textures/twilightdelight/grilled_ghast.png new file mode 100644 index 00000000..891c65c2 Binary files /dev/null and b/public/textures/twilightdelight/grilled_ghast.png differ diff --git a/public/textures/twilightdelight/grilled_tomahawk_smeak.png b/public/textures/twilightdelight/grilled_tomahawk_smeak.png new file mode 100644 index 00000000..93ed5d52 Binary files /dev/null and b/public/textures/twilightdelight/grilled_tomahawk_smeak.png differ diff --git a/public/textures/twilightdelight/honey_113.png b/public/textures/twilightdelight/honey_113.png new file mode 100644 index 00000000..3cac910a Binary files /dev/null and b/public/textures/twilightdelight/honey_113.png differ diff --git a/public/textures/twilightdelight/hydra_burger.png b/public/textures/twilightdelight/hydra_burger.png new file mode 100644 index 00000000..c5e717e5 Binary files /dev/null and b/public/textures/twilightdelight/hydra_burger.png differ diff --git a/public/textures/twilightdelight/hydra_piece.png b/public/textures/twilightdelight/hydra_piece.png new file mode 100644 index 00000000..ca258ca4 Binary files /dev/null and b/public/textures/twilightdelight/hydra_piece.png differ diff --git a/public/textures/twilightdelight/ironwood_knife.png b/public/textures/twilightdelight/ironwood_knife.png new file mode 100644 index 00000000..3b7c94ac Binary files /dev/null and b/public/textures/twilightdelight/ironwood_knife.png differ diff --git a/public/textures/twilightdelight/knightmetal_knife.png b/public/textures/twilightdelight/knightmetal_knife.png new file mode 100644 index 00000000..05955e31 Binary files /dev/null and b/public/textures/twilightdelight/knightmetal_knife.png differ diff --git a/public/textures/twilightdelight/lily_chicken_block.png b/public/textures/twilightdelight/lily_chicken_block.png new file mode 100644 index 00000000..2a38119c Binary files /dev/null and b/public/textures/twilightdelight/lily_chicken_block.png differ diff --git a/public/textures/twilightdelight/mangrove_cabinet.png b/public/textures/twilightdelight/mangrove_cabinet.png new file mode 100644 index 00000000..0d364cee Binary files /dev/null and b/public/textures/twilightdelight/mangrove_cabinet.png differ diff --git a/public/textures/twilightdelight/maze_stove.png b/public/textures/twilightdelight/maze_stove.png new file mode 100644 index 00000000..febcc443 Binary files /dev/null and b/public/textures/twilightdelight/maze_stove.png differ diff --git a/public/textures/twilightdelight/meef_wellington_block.png b/public/textures/twilightdelight/meef_wellington_block.png new file mode 100644 index 00000000..8f51f3e3 Binary files /dev/null and b/public/textures/twilightdelight/meef_wellington_block.png differ diff --git a/public/textures/twilightdelight/meef_wrap.png b/public/textures/twilightdelight/meef_wrap.png new file mode 100644 index 00000000..e3a258f5 Binary files /dev/null and b/public/textures/twilightdelight/meef_wrap.png differ diff --git a/public/textures/twilightdelight/milky_113.png b/public/textures/twilightdelight/milky_113.png new file mode 100644 index 00000000..5017d08a Binary files /dev/null and b/public/textures/twilightdelight/milky_113.png differ diff --git a/public/textures/twilightdelight/mining_cabinet.png b/public/textures/twilightdelight/mining_cabinet.png new file mode 100644 index 00000000..c8154de5 Binary files /dev/null and b/public/textures/twilightdelight/mining_cabinet.png differ diff --git a/public/textures/twilightdelight/mushgloom_colony.png b/public/textures/twilightdelight/mushgloom_colony.png new file mode 100644 index 00000000..c88ab3d6 Binary files /dev/null and b/public/textures/twilightdelight/mushgloom_colony.png differ diff --git a/public/textures/twilightdelight/mushgloom_meef_pasta.png b/public/textures/twilightdelight/mushgloom_meef_pasta.png new file mode 100644 index 00000000..f6491c13 Binary files /dev/null and b/public/textures/twilightdelight/mushgloom_meef_pasta.png differ diff --git a/public/textures/twilightdelight/mushgloom_sauce.png b/public/textures/twilightdelight/mushgloom_sauce.png new file mode 100644 index 00000000..54796377 Binary files /dev/null and b/public/textures/twilightdelight/mushgloom_sauce.png differ diff --git a/public/textures/twilightdelight/naga_chip.png b/public/textures/twilightdelight/naga_chip.png new file mode 100644 index 00000000..6060df48 Binary files /dev/null and b/public/textures/twilightdelight/naga_chip.png differ diff --git a/public/textures/twilightdelight/phytochemical_juice.png b/public/textures/twilightdelight/phytochemical_juice.png new file mode 100644 index 00000000..908ee898 Binary files /dev/null and b/public/textures/twilightdelight/phytochemical_juice.png differ diff --git a/public/textures/twilightdelight/plate_of_fiery_snakes.png b/public/textures/twilightdelight/plate_of_fiery_snakes.png new file mode 100644 index 00000000..c930abab Binary files /dev/null and b/public/textures/twilightdelight/plate_of_fiery_snakes.png differ diff --git a/public/textures/twilightdelight/plate_of_lily_chicken.png b/public/textures/twilightdelight/plate_of_lily_chicken.png new file mode 100644 index 00000000..4b482ca9 Binary files /dev/null and b/public/textures/twilightdelight/plate_of_lily_chicken.png differ diff --git a/public/textures/twilightdelight/plate_of_meef_wellington.png b/public/textures/twilightdelight/plate_of_meef_wellington.png new file mode 100644 index 00000000..272470cc Binary files /dev/null and b/public/textures/twilightdelight/plate_of_meef_wellington.png differ diff --git a/public/textures/twilightdelight/raw_insect.png b/public/textures/twilightdelight/raw_insect.png new file mode 100644 index 00000000..cd0f154f Binary files /dev/null and b/public/textures/twilightdelight/raw_insect.png differ diff --git a/public/textures/twilightdelight/raw_meef_slice.png b/public/textures/twilightdelight/raw_meef_slice.png new file mode 100644 index 00000000..4ddf79fd Binary files /dev/null and b/public/textures/twilightdelight/raw_meef_slice.png differ diff --git a/public/textures/twilightdelight/raw_tomahawk_smeak.png b/public/textures/twilightdelight/raw_tomahawk_smeak.png new file mode 100644 index 00000000..49d4a83b Binary files /dev/null and b/public/textures/twilightdelight/raw_tomahawk_smeak.png differ diff --git a/public/textures/twilightdelight/raw_venison_rib.png b/public/textures/twilightdelight/raw_venison_rib.png new file mode 100644 index 00000000..e46d4782 Binary files /dev/null and b/public/textures/twilightdelight/raw_venison_rib.png differ diff --git a/public/textures/twilightdelight/sorting_cabinet.png b/public/textures/twilightdelight/sorting_cabinet.png new file mode 100644 index 00000000..f608e6b3 Binary files /dev/null and b/public/textures/twilightdelight/sorting_cabinet.png differ diff --git a/public/textures/twilightdelight/steeleaf_knife.png b/public/textures/twilightdelight/steeleaf_knife.png new file mode 100644 index 00000000..493b6f8b Binary files /dev/null and b/public/textures/twilightdelight/steeleaf_knife.png differ diff --git a/public/textures/twilightdelight/tear_drink.png b/public/textures/twilightdelight/tear_drink.png new file mode 100644 index 00000000..644f4806 Binary files /dev/null and b/public/textures/twilightdelight/tear_drink.png differ diff --git a/public/textures/twilightdelight/teardrop_sword.png b/public/textures/twilightdelight/teardrop_sword.png new file mode 100644 index 00000000..a53bfd39 Binary files /dev/null and b/public/textures/twilightdelight/teardrop_sword.png differ diff --git a/public/textures/twilightdelight/thorn_rose_tea.png b/public/textures/twilightdelight/thorn_rose_tea.png new file mode 100644 index 00000000..cd5dce2b Binary files /dev/null and b/public/textures/twilightdelight/thorn_rose_tea.png differ diff --git a/public/textures/twilightdelight/thousand_plant_stew.png b/public/textures/twilightdelight/thousand_plant_stew.png new file mode 100644 index 00000000..148e9d1e Binary files /dev/null and b/public/textures/twilightdelight/thousand_plant_stew.png differ diff --git a/public/textures/twilightdelight/time_cabinet.png b/public/textures/twilightdelight/time_cabinet.png new file mode 100644 index 00000000..4e784267 Binary files /dev/null and b/public/textures/twilightdelight/time_cabinet.png differ diff --git a/public/textures/twilightdelight/torchberries_crate.png b/public/textures/twilightdelight/torchberries_crate.png new file mode 100644 index 00000000..0ae72f7a Binary files /dev/null and b/public/textures/twilightdelight/torchberries_crate.png differ diff --git a/public/textures/twilightdelight/torchberry_cookie.png b/public/textures/twilightdelight/torchberry_cookie.png new file mode 100644 index 00000000..261b370b Binary files /dev/null and b/public/textures/twilightdelight/torchberry_cookie.png differ diff --git a/public/textures/twilightdelight/torchberry_juice.png b/public/textures/twilightdelight/torchberry_juice.png new file mode 100644 index 00000000..a8d80933 Binary files /dev/null and b/public/textures/twilightdelight/torchberry_juice.png differ diff --git a/public/textures/twilightdelight/torchberry_pie.png b/public/textures/twilightdelight/torchberry_pie.png new file mode 100644 index 00000000..16781c59 Binary files /dev/null and b/public/textures/twilightdelight/torchberry_pie.png differ diff --git a/public/textures/twilightdelight/torchberry_pie_slice.png b/public/textures/twilightdelight/torchberry_pie_slice.png new file mode 100644 index 00000000..4aa3bda6 Binary files /dev/null and b/public/textures/twilightdelight/torchberry_pie_slice.png differ diff --git a/public/textures/twilightdelight/transformation_cabinet.png b/public/textures/twilightdelight/transformation_cabinet.png new file mode 100644 index 00000000..705423e3 Binary files /dev/null and b/public/textures/twilightdelight/transformation_cabinet.png differ diff --git a/public/textures/twilightdelight/twilight_oak_cabinet.png b/public/textures/twilightdelight/twilight_oak_cabinet.png new file mode 100644 index 00000000..52aeacbc Binary files /dev/null and b/public/textures/twilightdelight/twilight_oak_cabinet.png differ diff --git a/public/textures/twilightdelight/twilight_spring.png b/public/textures/twilightdelight/twilight_spring.png new file mode 100644 index 00000000..38694d31 Binary files /dev/null and b/public/textures/twilightdelight/twilight_spring.png differ diff --git a/public/textures/twilightforest/acacia_banister.png b/public/textures/twilightforest/acacia_banister.png new file mode 100644 index 00000000..dcd1f645 Binary files /dev/null and b/public/textures/twilightforest/acacia_banister.png differ diff --git a/public/textures/twilightforest/alpha_yeti_banner_pattern.png b/public/textures/twilightforest/alpha_yeti_banner_pattern.png new file mode 100644 index 00000000..bc4c0241 Binary files /dev/null and b/public/textures/twilightforest/alpha_yeti_banner_pattern.png differ diff --git a/public/textures/twilightforest/alpha_yeti_boss_spawner.png b/public/textures/twilightforest/alpha_yeti_boss_spawner.png new file mode 100644 index 00000000..5584d7d4 Binary files /dev/null and b/public/textures/twilightforest/alpha_yeti_boss_spawner.png differ diff --git a/public/textures/twilightforest/alpha_yeti_fur.png b/public/textures/twilightforest/alpha_yeti_fur.png new file mode 100644 index 00000000..cb079739 Binary files /dev/null and b/public/textures/twilightforest/alpha_yeti_fur.png differ diff --git a/public/textures/twilightforest/alpha_yeti_spawn_egg.png b/public/textures/twilightforest/alpha_yeti_spawn_egg.png new file mode 100644 index 00000000..c55d509a Binary files /dev/null and b/public/textures/twilightforest/alpha_yeti_spawn_egg.png differ diff --git a/public/textures/twilightforest/alpha_yeti_trophy.png b/public/textures/twilightforest/alpha_yeti_trophy.png new file mode 100644 index 00000000..f122004b Binary files /dev/null and b/public/textures/twilightforest/alpha_yeti_trophy.png differ diff --git a/public/textures/twilightforest/antibuilder.png b/public/textures/twilightforest/antibuilder.png new file mode 100644 index 00000000..2fec4b34 Binary files /dev/null and b/public/textures/twilightforest/antibuilder.png differ diff --git a/public/textures/twilightforest/arctic_boots.png b/public/textures/twilightforest/arctic_boots.png new file mode 100644 index 00000000..16e0f940 Binary files /dev/null and b/public/textures/twilightforest/arctic_boots.png differ diff --git a/public/textures/twilightforest/arctic_chestplate.png b/public/textures/twilightforest/arctic_chestplate.png new file mode 100644 index 00000000..4cd64da6 Binary files /dev/null and b/public/textures/twilightforest/arctic_chestplate.png differ diff --git a/public/textures/twilightforest/arctic_fur.png b/public/textures/twilightforest/arctic_fur.png new file mode 100644 index 00000000..9e65af8d Binary files /dev/null and b/public/textures/twilightforest/arctic_fur.png differ diff --git a/public/textures/twilightforest/arctic_fur_block.png b/public/textures/twilightforest/arctic_fur_block.png new file mode 100644 index 00000000..774b238f Binary files /dev/null and b/public/textures/twilightforest/arctic_fur_block.png differ diff --git a/public/textures/twilightforest/arctic_helmet.png b/public/textures/twilightforest/arctic_helmet.png new file mode 100644 index 00000000..41b1aead Binary files /dev/null and b/public/textures/twilightforest/arctic_helmet.png differ diff --git a/public/textures/twilightforest/arctic_leggings.png b/public/textures/twilightforest/arctic_leggings.png new file mode 100644 index 00000000..670d7af7 Binary files /dev/null and b/public/textures/twilightforest/arctic_leggings.png differ diff --git a/public/textures/twilightforest/armor_shard.png b/public/textures/twilightforest/armor_shard.png new file mode 100644 index 00000000..7f7ab776 Binary files /dev/null and b/public/textures/twilightforest/armor_shard.png differ diff --git a/public/textures/twilightforest/armor_shard_cluster.png b/public/textures/twilightforest/armor_shard_cluster.png new file mode 100644 index 00000000..6d2dcf05 Binary files /dev/null and b/public/textures/twilightforest/armor_shard_cluster.png differ diff --git a/public/textures/twilightforest/armored_giant_spawn_egg.png b/public/textures/twilightforest/armored_giant_spawn_egg.png new file mode 100644 index 00000000..29d2f874 Binary files /dev/null and b/public/textures/twilightforest/armored_giant_spawn_egg.png differ diff --git a/public/textures/twilightforest/aurora_block.png b/public/textures/twilightforest/aurora_block.png new file mode 100644 index 00000000..606939b7 Binary files /dev/null and b/public/textures/twilightforest/aurora_block.png differ diff --git a/public/textures/twilightforest/aurora_pillar.png b/public/textures/twilightforest/aurora_pillar.png new file mode 100644 index 00000000..668dbf66 Binary files /dev/null and b/public/textures/twilightforest/aurora_pillar.png differ diff --git a/public/textures/twilightforest/aurora_slab.png b/public/textures/twilightforest/aurora_slab.png new file mode 100644 index 00000000..1705ff73 Binary files /dev/null and b/public/textures/twilightforest/aurora_slab.png differ diff --git a/public/textures/twilightforest/beanstalk_leaves.png b/public/textures/twilightforest/beanstalk_leaves.png new file mode 100644 index 00000000..9281ebac Binary files /dev/null and b/public/textures/twilightforest/beanstalk_leaves.png differ diff --git a/public/textures/twilightforest/bighorn_sheep_spawn_egg.png b/public/textures/twilightforest/bighorn_sheep_spawn_egg.png new file mode 100644 index 00000000..c14c66ee Binary files /dev/null and b/public/textures/twilightforest/bighorn_sheep_spawn_egg.png differ diff --git a/public/textures/twilightforest/birch_banister.png b/public/textures/twilightforest/birch_banister.png new file mode 100644 index 00000000..a201b8b1 Binary files /dev/null and b/public/textures/twilightforest/birch_banister.png differ diff --git a/public/textures/twilightforest/block_and_chain.png b/public/textures/twilightforest/block_and_chain.png new file mode 100644 index 00000000..f29bb57f Binary files /dev/null and b/public/textures/twilightforest/block_and_chain.png differ diff --git a/public/textures/twilightforest/blockchain_goblin_spawn_egg.png b/public/textures/twilightforest/blockchain_goblin_spawn_egg.png new file mode 100644 index 00000000..1802e7ff Binary files /dev/null and b/public/textures/twilightforest/blockchain_goblin_spawn_egg.png differ diff --git a/public/textures/twilightforest/blue_castle_door.png b/public/textures/twilightforest/blue_castle_door.png new file mode 100644 index 00000000..7716be7a Binary files /dev/null and b/public/textures/twilightforest/blue_castle_door.png differ diff --git a/public/textures/twilightforest/blue_castle_rune_brick.png b/public/textures/twilightforest/blue_castle_rune_brick.png new file mode 100644 index 00000000..55bca84d Binary files /dev/null and b/public/textures/twilightforest/blue_castle_rune_brick.png differ diff --git a/public/textures/twilightforest/blue_force_field.png b/public/textures/twilightforest/blue_force_field.png new file mode 100644 index 00000000..62d5afa5 Binary files /dev/null and b/public/textures/twilightforest/blue_force_field.png differ diff --git a/public/textures/twilightforest/boar_spawn_egg.png b/public/textures/twilightforest/boar_spawn_egg.png new file mode 100644 index 00000000..7a858c9f Binary files /dev/null and b/public/textures/twilightforest/boar_spawn_egg.png differ diff --git a/public/textures/twilightforest/bold_castle_brick_pillar.png b/public/textures/twilightforest/bold_castle_brick_pillar.png new file mode 100644 index 00000000..d4fd6d14 Binary files /dev/null and b/public/textures/twilightforest/bold_castle_brick_pillar.png differ diff --git a/public/textures/twilightforest/bold_castle_brick_stairs.png b/public/textures/twilightforest/bold_castle_brick_stairs.png new file mode 100644 index 00000000..d9e53a30 Binary files /dev/null and b/public/textures/twilightforest/bold_castle_brick_stairs.png differ diff --git a/public/textures/twilightforest/bold_castle_brick_tile.png b/public/textures/twilightforest/bold_castle_brick_tile.png new file mode 100644 index 00000000..be0e81f6 Binary files /dev/null and b/public/textures/twilightforest/bold_castle_brick_tile.png differ diff --git a/public/textures/twilightforest/bold_stone_pillar.png b/public/textures/twilightforest/bold_stone_pillar.png new file mode 100644 index 00000000..7fad5ffd Binary files /dev/null and b/public/textures/twilightforest/bold_stone_pillar.png differ diff --git a/public/textures/twilightforest/borer_essence.png b/public/textures/twilightforest/borer_essence.png new file mode 100644 index 00000000..1195cb85 Binary files /dev/null and b/public/textures/twilightforest/borer_essence.png differ diff --git a/public/textures/twilightforest/brittle_potion_flask.png b/public/textures/twilightforest/brittle_potion_flask.png new file mode 100644 index 00000000..dc66133d Binary files /dev/null and b/public/textures/twilightforest/brittle_potion_flask.png differ diff --git a/public/textures/twilightforest/brown_thorns.png b/public/textures/twilightforest/brown_thorns.png new file mode 100644 index 00000000..8f26acc2 Binary files /dev/null and b/public/textures/twilightforest/brown_thorns.png differ diff --git a/public/textures/twilightforest/burnt_thorns.png b/public/textures/twilightforest/burnt_thorns.png new file mode 100644 index 00000000..86c381b9 Binary files /dev/null and b/public/textures/twilightforest/burnt_thorns.png differ diff --git a/public/textures/twilightforest/candelabra.png b/public/textures/twilightforest/candelabra.png new file mode 100644 index 00000000..8d597703 Binary files /dev/null and b/public/textures/twilightforest/candelabra.png differ diff --git a/public/textures/twilightforest/canopy_banister.png b/public/textures/twilightforest/canopy_banister.png new file mode 100644 index 00000000..64fd6216 Binary files /dev/null and b/public/textures/twilightforest/canopy_banister.png differ diff --git a/public/textures/twilightforest/canopy_boat.png b/public/textures/twilightforest/canopy_boat.png new file mode 100644 index 00000000..14c7a6c1 Binary files /dev/null and b/public/textures/twilightforest/canopy_boat.png differ diff --git a/public/textures/twilightforest/canopy_bookshelf.png b/public/textures/twilightforest/canopy_bookshelf.png new file mode 100644 index 00000000..ebfcfa03 Binary files /dev/null and b/public/textures/twilightforest/canopy_bookshelf.png differ diff --git a/public/textures/twilightforest/canopy_button.png b/public/textures/twilightforest/canopy_button.png new file mode 100644 index 00000000..600c27ee Binary files /dev/null and b/public/textures/twilightforest/canopy_button.png differ diff --git a/public/textures/twilightforest/canopy_chest.png b/public/textures/twilightforest/canopy_chest.png new file mode 100644 index 00000000..3a4fc85d Binary files /dev/null and b/public/textures/twilightforest/canopy_chest.png differ diff --git a/public/textures/twilightforest/canopy_chest_boat.png b/public/textures/twilightforest/canopy_chest_boat.png new file mode 100644 index 00000000..cc1a27cd Binary files /dev/null and b/public/textures/twilightforest/canopy_chest_boat.png differ diff --git a/public/textures/twilightforest/canopy_door.png b/public/textures/twilightforest/canopy_door.png new file mode 100644 index 00000000..2c3b6860 Binary files /dev/null and b/public/textures/twilightforest/canopy_door.png differ diff --git a/public/textures/twilightforest/canopy_fence.png b/public/textures/twilightforest/canopy_fence.png new file mode 100644 index 00000000..78b39dda Binary files /dev/null and b/public/textures/twilightforest/canopy_fence.png differ diff --git a/public/textures/twilightforest/canopy_fence_gate.png b/public/textures/twilightforest/canopy_fence_gate.png new file mode 100644 index 00000000..8d888a5d Binary files /dev/null and b/public/textures/twilightforest/canopy_fence_gate.png differ diff --git a/public/textures/twilightforest/canopy_hanging_sign.png b/public/textures/twilightforest/canopy_hanging_sign.png new file mode 100644 index 00000000..7800cd08 Binary files /dev/null and b/public/textures/twilightforest/canopy_hanging_sign.png differ diff --git a/public/textures/twilightforest/canopy_leaves.png b/public/textures/twilightforest/canopy_leaves.png new file mode 100644 index 00000000..34cdab56 Binary files /dev/null and b/public/textures/twilightforest/canopy_leaves.png differ diff --git a/public/textures/twilightforest/canopy_log.png b/public/textures/twilightforest/canopy_log.png new file mode 100644 index 00000000..361d9ed4 Binary files /dev/null and b/public/textures/twilightforest/canopy_log.png differ diff --git a/public/textures/twilightforest/canopy_planks.png b/public/textures/twilightforest/canopy_planks.png new file mode 100644 index 00000000..c25f8378 Binary files /dev/null and b/public/textures/twilightforest/canopy_planks.png differ diff --git a/public/textures/twilightforest/canopy_pressure_plate.png b/public/textures/twilightforest/canopy_pressure_plate.png new file mode 100644 index 00000000..389eea08 Binary files /dev/null and b/public/textures/twilightforest/canopy_pressure_plate.png differ diff --git a/public/textures/twilightforest/canopy_sapling.png b/public/textures/twilightforest/canopy_sapling.png new file mode 100644 index 00000000..a8b98422 Binary files /dev/null and b/public/textures/twilightforest/canopy_sapling.png differ diff --git a/public/textures/twilightforest/canopy_sign.png b/public/textures/twilightforest/canopy_sign.png new file mode 100644 index 00000000..61885ec5 Binary files /dev/null and b/public/textures/twilightforest/canopy_sign.png differ diff --git a/public/textures/twilightforest/canopy_slab.png b/public/textures/twilightforest/canopy_slab.png new file mode 100644 index 00000000..ed6291bd Binary files /dev/null and b/public/textures/twilightforest/canopy_slab.png differ diff --git a/public/textures/twilightforest/canopy_stairs.png b/public/textures/twilightforest/canopy_stairs.png new file mode 100644 index 00000000..91525308 Binary files /dev/null and b/public/textures/twilightforest/canopy_stairs.png differ diff --git a/public/textures/twilightforest/canopy_trapdoor.png b/public/textures/twilightforest/canopy_trapdoor.png new file mode 100644 index 00000000..03eda508 Binary files /dev/null and b/public/textures/twilightforest/canopy_trapdoor.png differ diff --git a/public/textures/twilightforest/canopy_trapped_chest.png b/public/textures/twilightforest/canopy_trapped_chest.png new file mode 100644 index 00000000..2ecd8fa9 Binary files /dev/null and b/public/textures/twilightforest/canopy_trapped_chest.png differ diff --git a/public/textures/twilightforest/canopy_window.png b/public/textures/twilightforest/canopy_window.png new file mode 100644 index 00000000..9e9534fc Binary files /dev/null and b/public/textures/twilightforest/canopy_window.png differ diff --git a/public/textures/twilightforest/canopy_window_pane.png b/public/textures/twilightforest/canopy_window_pane.png new file mode 100644 index 00000000..daf938a1 Binary files /dev/null and b/public/textures/twilightforest/canopy_window_pane.png differ diff --git a/public/textures/twilightforest/canopy_wood.png b/public/textures/twilightforest/canopy_wood.png new file mode 100644 index 00000000..08521730 Binary files /dev/null and b/public/textures/twilightforest/canopy_wood.png differ diff --git a/public/textures/twilightforest/carminite.png b/public/textures/twilightforest/carminite.png new file mode 100644 index 00000000..63611ddd Binary files /dev/null and b/public/textures/twilightforest/carminite.png differ diff --git a/public/textures/twilightforest/carminite_block.png b/public/textures/twilightforest/carminite_block.png new file mode 100644 index 00000000..82f77846 Binary files /dev/null and b/public/textures/twilightforest/carminite_block.png differ diff --git a/public/textures/twilightforest/carminite_broodling_spawn_egg.png b/public/textures/twilightforest/carminite_broodling_spawn_egg.png new file mode 100644 index 00000000..d5c2ecf2 Binary files /dev/null and b/public/textures/twilightforest/carminite_broodling_spawn_egg.png differ diff --git a/public/textures/twilightforest/carminite_builder.png b/public/textures/twilightforest/carminite_builder.png new file mode 100644 index 00000000..286f40d4 Binary files /dev/null and b/public/textures/twilightforest/carminite_builder.png differ diff --git a/public/textures/twilightforest/carminite_ghastguard_spawn_egg.png b/public/textures/twilightforest/carminite_ghastguard_spawn_egg.png new file mode 100644 index 00000000..4d1a5bb1 Binary files /dev/null and b/public/textures/twilightforest/carminite_ghastguard_spawn_egg.png differ diff --git a/public/textures/twilightforest/carminite_ghastling_spawn_egg.png b/public/textures/twilightforest/carminite_ghastling_spawn_egg.png new file mode 100644 index 00000000..92de4b6f Binary files /dev/null and b/public/textures/twilightforest/carminite_ghastling_spawn_egg.png differ diff --git a/public/textures/twilightforest/carminite_golem_spawn_egg.png b/public/textures/twilightforest/carminite_golem_spawn_egg.png new file mode 100644 index 00000000..89eab13e Binary files /dev/null and b/public/textures/twilightforest/carminite_golem_spawn_egg.png differ diff --git a/public/textures/twilightforest/carminite_reactor.png b/public/textures/twilightforest/carminite_reactor.png new file mode 100644 index 00000000..4ba46b3e Binary files /dev/null and b/public/textures/twilightforest/carminite_reactor.png differ diff --git a/public/textures/twilightforest/castle_brick.png b/public/textures/twilightforest/castle_brick.png new file mode 100644 index 00000000..1a1b6e62 Binary files /dev/null and b/public/textures/twilightforest/castle_brick.png differ diff --git a/public/textures/twilightforest/castle_brick_stairs.png b/public/textures/twilightforest/castle_brick_stairs.png new file mode 100644 index 00000000..6251b70f Binary files /dev/null and b/public/textures/twilightforest/castle_brick_stairs.png differ diff --git a/public/textures/twilightforest/castle_roof_tile.png b/public/textures/twilightforest/castle_roof_tile.png new file mode 100644 index 00000000..8621131b Binary files /dev/null and b/public/textures/twilightforest/castle_roof_tile.png differ diff --git a/public/textures/twilightforest/charm_of_keeping_1.png b/public/textures/twilightforest/charm_of_keeping_1.png new file mode 100644 index 00000000..486a9d5f Binary files /dev/null and b/public/textures/twilightforest/charm_of_keeping_1.png differ diff --git a/public/textures/twilightforest/charm_of_keeping_2.png b/public/textures/twilightforest/charm_of_keeping_2.png new file mode 100644 index 00000000..a2446e4e Binary files /dev/null and b/public/textures/twilightforest/charm_of_keeping_2.png differ diff --git a/public/textures/twilightforest/charm_of_keeping_3.png b/public/textures/twilightforest/charm_of_keeping_3.png new file mode 100644 index 00000000..96f64210 Binary files /dev/null and b/public/textures/twilightforest/charm_of_keeping_3.png differ diff --git a/public/textures/twilightforest/charm_of_life_1.png b/public/textures/twilightforest/charm_of_life_1.png new file mode 100644 index 00000000..11df0043 Binary files /dev/null and b/public/textures/twilightforest/charm_of_life_1.png differ diff --git a/public/textures/twilightforest/charm_of_life_2.png b/public/textures/twilightforest/charm_of_life_2.png new file mode 100644 index 00000000..cd85829d Binary files /dev/null and b/public/textures/twilightforest/charm_of_life_2.png differ diff --git a/public/textures/twilightforest/cherry_banister.png b/public/textures/twilightforest/cherry_banister.png new file mode 100644 index 00000000..08185b34 Binary files /dev/null and b/public/textures/twilightforest/cherry_banister.png differ diff --git a/public/textures/twilightforest/chiseled_canopy_bookshelf.png b/public/textures/twilightforest/chiseled_canopy_bookshelf.png new file mode 100644 index 00000000..f7d28ea1 Binary files /dev/null and b/public/textures/twilightforest/chiseled_canopy_bookshelf.png differ diff --git a/public/textures/twilightforest/cicada.png b/public/textures/twilightforest/cicada.png new file mode 100644 index 00000000..3ec4827b Binary files /dev/null and b/public/textures/twilightforest/cicada.png differ diff --git a/public/textures/twilightforest/cicada_jar__{'twilightforest__jar_lid'__{lid__'twilightforest__canopy_log'}}.png b/public/textures/twilightforest/cicada_jar__{'twilightforest__jar_lid'__{lid__'twilightforest__canopy_log'}}.png new file mode 100644 index 00000000..34906af6 Binary files /dev/null and b/public/textures/twilightforest/cicada_jar__{'twilightforest__jar_lid'__{lid__'twilightforest__canopy_log'}}.png differ diff --git a/public/textures/twilightforest/clover_patch.png b/public/textures/twilightforest/clover_patch.png new file mode 100644 index 00000000..9695110d Binary files /dev/null and b/public/textures/twilightforest/clover_patch.png differ diff --git a/public/textures/twilightforest/cooked_meef.png b/public/textures/twilightforest/cooked_meef.png new file mode 100644 index 00000000..c604ac26 Binary files /dev/null and b/public/textures/twilightforest/cooked_meef.png differ diff --git a/public/textures/twilightforest/cooked_venison.png b/public/textures/twilightforest/cooked_venison.png new file mode 100644 index 00000000..2106d2a0 Binary files /dev/null and b/public/textures/twilightforest/cooked_venison.png differ diff --git a/public/textures/twilightforest/coronation_carpet.png b/public/textures/twilightforest/coronation_carpet.png new file mode 100644 index 00000000..c346f3e0 Binary files /dev/null and b/public/textures/twilightforest/coronation_carpet.png differ diff --git a/public/textures/twilightforest/cracked_castle_brick.png b/public/textures/twilightforest/cracked_castle_brick.png new file mode 100644 index 00000000..4f00919b Binary files /dev/null and b/public/textures/twilightforest/cracked_castle_brick.png differ diff --git a/public/textures/twilightforest/cracked_castle_brick_stairs.png b/public/textures/twilightforest/cracked_castle_brick_stairs.png new file mode 100644 index 00000000..e31a5502 Binary files /dev/null and b/public/textures/twilightforest/cracked_castle_brick_stairs.png differ diff --git a/public/textures/twilightforest/cracked_deadrock.png b/public/textures/twilightforest/cracked_deadrock.png new file mode 100644 index 00000000..024aaf91 Binary files /dev/null and b/public/textures/twilightforest/cracked_deadrock.png differ diff --git a/public/textures/twilightforest/cracked_etched_nagastone.png b/public/textures/twilightforest/cracked_etched_nagastone.png new file mode 100644 index 00000000..9578fe5a Binary files /dev/null and b/public/textures/twilightforest/cracked_etched_nagastone.png differ diff --git a/public/textures/twilightforest/cracked_mazestone.png b/public/textures/twilightforest/cracked_mazestone.png new file mode 100644 index 00000000..e8c7b478 Binary files /dev/null and b/public/textures/twilightforest/cracked_mazestone.png differ diff --git a/public/textures/twilightforest/cracked_nagastone_pillar.png b/public/textures/twilightforest/cracked_nagastone_pillar.png new file mode 100644 index 00000000..f2c623bf Binary files /dev/null and b/public/textures/twilightforest/cracked_nagastone_pillar.png differ diff --git a/public/textures/twilightforest/cracked_nagastone_stairs_left.png b/public/textures/twilightforest/cracked_nagastone_stairs_left.png new file mode 100644 index 00000000..9c31134c Binary files /dev/null and b/public/textures/twilightforest/cracked_nagastone_stairs_left.png differ diff --git a/public/textures/twilightforest/cracked_nagastone_stairs_right.png b/public/textures/twilightforest/cracked_nagastone_stairs_right.png new file mode 100644 index 00000000..15da24fd Binary files /dev/null and b/public/textures/twilightforest/cracked_nagastone_stairs_right.png differ diff --git a/public/textures/twilightforest/cracked_towerwood.png b/public/textures/twilightforest/cracked_towerwood.png new file mode 100644 index 00000000..5f2261e1 Binary files /dev/null and b/public/textures/twilightforest/cracked_towerwood.png differ diff --git a/public/textures/twilightforest/cracked_underbrick.png b/public/textures/twilightforest/cracked_underbrick.png new file mode 100644 index 00000000..0b0b7c6d Binary files /dev/null and b/public/textures/twilightforest/cracked_underbrick.png differ diff --git a/public/textures/twilightforest/crimson_banister.png b/public/textures/twilightforest/crimson_banister.png new file mode 100644 index 00000000..778db7ee Binary files /dev/null and b/public/textures/twilightforest/crimson_banister.png differ diff --git a/public/textures/twilightforest/crown_splinter.png b/public/textures/twilightforest/crown_splinter.png new file mode 100644 index 00000000..767f3dbe Binary files /dev/null and b/public/textures/twilightforest/crown_splinter.png differ diff --git a/public/textures/twilightforest/crumble_horn.png b/public/textures/twilightforest/crumble_horn.png new file mode 100644 index 00000000..80b6ebb1 Binary files /dev/null and b/public/textures/twilightforest/crumble_horn.png differ diff --git a/public/textures/twilightforest/cut_mazestone.png b/public/textures/twilightforest/cut_mazestone.png new file mode 100644 index 00000000..a0873507 Binary files /dev/null and b/public/textures/twilightforest/cut_mazestone.png differ diff --git a/public/textures/twilightforest/dark_banister.png b/public/textures/twilightforest/dark_banister.png new file mode 100644 index 00000000..b8b5d1b9 Binary files /dev/null and b/public/textures/twilightforest/dark_banister.png differ diff --git a/public/textures/twilightforest/dark_boat.png b/public/textures/twilightforest/dark_boat.png new file mode 100644 index 00000000..88f24245 Binary files /dev/null and b/public/textures/twilightforest/dark_boat.png differ diff --git a/public/textures/twilightforest/dark_button.png b/public/textures/twilightforest/dark_button.png new file mode 100644 index 00000000..292d8b4d Binary files /dev/null and b/public/textures/twilightforest/dark_button.png differ diff --git a/public/textures/twilightforest/dark_chest.png b/public/textures/twilightforest/dark_chest.png new file mode 100644 index 00000000..dde71cba Binary files /dev/null and b/public/textures/twilightforest/dark_chest.png differ diff --git a/public/textures/twilightforest/dark_chest_boat.png b/public/textures/twilightforest/dark_chest_boat.png new file mode 100644 index 00000000..7ba68b75 Binary files /dev/null and b/public/textures/twilightforest/dark_chest_boat.png differ diff --git a/public/textures/twilightforest/dark_door.png b/public/textures/twilightforest/dark_door.png new file mode 100644 index 00000000..b3726f28 Binary files /dev/null and b/public/textures/twilightforest/dark_door.png differ diff --git a/public/textures/twilightforest/dark_fence.png b/public/textures/twilightforest/dark_fence.png new file mode 100644 index 00000000..a6884c36 Binary files /dev/null and b/public/textures/twilightforest/dark_fence.png differ diff --git a/public/textures/twilightforest/dark_fence_gate.png b/public/textures/twilightforest/dark_fence_gate.png new file mode 100644 index 00000000..318ac282 Binary files /dev/null and b/public/textures/twilightforest/dark_fence_gate.png differ diff --git a/public/textures/twilightforest/dark_hanging_sign.png b/public/textures/twilightforest/dark_hanging_sign.png new file mode 100644 index 00000000..5710e756 Binary files /dev/null and b/public/textures/twilightforest/dark_hanging_sign.png differ diff --git a/public/textures/twilightforest/dark_leaves.png b/public/textures/twilightforest/dark_leaves.png new file mode 100644 index 00000000..48175dae Binary files /dev/null and b/public/textures/twilightforest/dark_leaves.png differ diff --git a/public/textures/twilightforest/dark_log.png b/public/textures/twilightforest/dark_log.png new file mode 100644 index 00000000..a1850a35 Binary files /dev/null and b/public/textures/twilightforest/dark_log.png differ diff --git a/public/textures/twilightforest/dark_oak_banister.png b/public/textures/twilightforest/dark_oak_banister.png new file mode 100644 index 00000000..1eb7ae4e Binary files /dev/null and b/public/textures/twilightforest/dark_oak_banister.png differ diff --git a/public/textures/twilightforest/dark_planks.png b/public/textures/twilightforest/dark_planks.png new file mode 100644 index 00000000..aa0a775d Binary files /dev/null and b/public/textures/twilightforest/dark_planks.png differ diff --git a/public/textures/twilightforest/dark_pressure_plate.png b/public/textures/twilightforest/dark_pressure_plate.png new file mode 100644 index 00000000..00688d65 Binary files /dev/null and b/public/textures/twilightforest/dark_pressure_plate.png differ diff --git a/public/textures/twilightforest/dark_sign.png b/public/textures/twilightforest/dark_sign.png new file mode 100644 index 00000000..82268ec6 Binary files /dev/null and b/public/textures/twilightforest/dark_sign.png differ diff --git a/public/textures/twilightforest/dark_slab.png b/public/textures/twilightforest/dark_slab.png new file mode 100644 index 00000000..90fc6940 Binary files /dev/null and b/public/textures/twilightforest/dark_slab.png differ diff --git a/public/textures/twilightforest/dark_stairs.png b/public/textures/twilightforest/dark_stairs.png new file mode 100644 index 00000000..48158383 Binary files /dev/null and b/public/textures/twilightforest/dark_stairs.png differ diff --git a/public/textures/twilightforest/dark_trapdoor.png b/public/textures/twilightforest/dark_trapdoor.png new file mode 100644 index 00000000..63826e34 Binary files /dev/null and b/public/textures/twilightforest/dark_trapdoor.png differ diff --git a/public/textures/twilightforest/dark_trapped_chest.png b/public/textures/twilightforest/dark_trapped_chest.png new file mode 100644 index 00000000..e379f583 Binary files /dev/null and b/public/textures/twilightforest/dark_trapped_chest.png differ diff --git a/public/textures/twilightforest/dark_wood.png b/public/textures/twilightforest/dark_wood.png new file mode 100644 index 00000000..e3c6cd64 Binary files /dev/null and b/public/textures/twilightforest/dark_wood.png differ diff --git a/public/textures/twilightforest/darkwood_sapling.png b/public/textures/twilightforest/darkwood_sapling.png new file mode 100644 index 00000000..63b433d7 Binary files /dev/null and b/public/textures/twilightforest/darkwood_sapling.png differ diff --git a/public/textures/twilightforest/deadrock.png b/public/textures/twilightforest/deadrock.png new file mode 100644 index 00000000..daacab97 Binary files /dev/null and b/public/textures/twilightforest/deadrock.png differ diff --git a/public/textures/twilightforest/death_tome_spawn_egg.png b/public/textures/twilightforest/death_tome_spawn_egg.png new file mode 100644 index 00000000..64dd77b5 Binary files /dev/null and b/public/textures/twilightforest/death_tome_spawn_egg.png differ diff --git a/public/textures/twilightforest/decorative_mazestone.png b/public/textures/twilightforest/decorative_mazestone.png new file mode 100644 index 00000000..2d2d4939 Binary files /dev/null and b/public/textures/twilightforest/decorative_mazestone.png differ diff --git a/public/textures/twilightforest/deer_spawn_egg.png b/public/textures/twilightforest/deer_spawn_egg.png new file mode 100644 index 00000000..1e481dd4 Binary files /dev/null and b/public/textures/twilightforest/deer_spawn_egg.png differ diff --git a/public/textures/twilightforest/diamond_minotaur_axe.png b/public/textures/twilightforest/diamond_minotaur_axe.png new file mode 100644 index 00000000..921b16d2 Binary files /dev/null and b/public/textures/twilightforest/diamond_minotaur_axe.png differ diff --git a/public/textures/twilightforest/dwarf_rabbit_spawn_egg.png b/public/textures/twilightforest/dwarf_rabbit_spawn_egg.png new file mode 100644 index 00000000..73c7f3fd Binary files /dev/null and b/public/textures/twilightforest/dwarf_rabbit_spawn_egg.png differ diff --git a/public/textures/twilightforest/emperors_cloth.png b/public/textures/twilightforest/emperors_cloth.png new file mode 100644 index 00000000..75da5769 Binary files /dev/null and b/public/textures/twilightforest/emperors_cloth.png differ diff --git a/public/textures/twilightforest/encased_castle_brick_pillar.png b/public/textures/twilightforest/encased_castle_brick_pillar.png new file mode 100644 index 00000000..7644a101 Binary files /dev/null and b/public/textures/twilightforest/encased_castle_brick_pillar.png differ diff --git a/public/textures/twilightforest/encased_castle_brick_stairs.png b/public/textures/twilightforest/encased_castle_brick_stairs.png new file mode 100644 index 00000000..b4cd3d76 Binary files /dev/null and b/public/textures/twilightforest/encased_castle_brick_stairs.png differ diff --git a/public/textures/twilightforest/encased_castle_brick_tile.png b/public/textures/twilightforest/encased_castle_brick_tile.png new file mode 100644 index 00000000..31779efc Binary files /dev/null and b/public/textures/twilightforest/encased_castle_brick_tile.png differ diff --git a/public/textures/twilightforest/encased_fire_jet.png b/public/textures/twilightforest/encased_fire_jet.png new file mode 100644 index 00000000..efa9f796 Binary files /dev/null and b/public/textures/twilightforest/encased_fire_jet.png differ diff --git a/public/textures/twilightforest/encased_smoker.png b/public/textures/twilightforest/encased_smoker.png new file mode 100644 index 00000000..b4d38054 Binary files /dev/null and b/public/textures/twilightforest/encased_smoker.png differ diff --git a/public/textures/twilightforest/encased_towerwood.png b/public/textures/twilightforest/encased_towerwood.png new file mode 100644 index 00000000..17bda0af Binary files /dev/null and b/public/textures/twilightforest/encased_towerwood.png differ diff --git a/public/textures/twilightforest/ender_bow.png b/public/textures/twilightforest/ender_bow.png new file mode 100644 index 00000000..958d50e4 Binary files /dev/null and b/public/textures/twilightforest/ender_bow.png differ diff --git a/public/textures/twilightforest/etched_nagastone.png b/public/textures/twilightforest/etched_nagastone.png new file mode 100644 index 00000000..c78e2bc4 Binary files /dev/null and b/public/textures/twilightforest/etched_nagastone.png differ diff --git a/public/textures/twilightforest/exanimate_essence.png b/public/textures/twilightforest/exanimate_essence.png new file mode 100644 index 00000000..d5105819 Binary files /dev/null and b/public/textures/twilightforest/exanimate_essence.png differ diff --git a/public/textures/twilightforest/experiment_115.png b/public/textures/twilightforest/experiment_115.png new file mode 100644 index 00000000..e4da87fc Binary files /dev/null and b/public/textures/twilightforest/experiment_115.png differ diff --git a/public/textures/twilightforest/fallen_leaves.png b/public/textures/twilightforest/fallen_leaves.png new file mode 100644 index 00000000..a8936a63 Binary files /dev/null and b/public/textures/twilightforest/fallen_leaves.png differ diff --git a/public/textures/twilightforest/fiddlehead.png b/public/textures/twilightforest/fiddlehead.png new file mode 100644 index 00000000..e7ccc22d Binary files /dev/null and b/public/textures/twilightforest/fiddlehead.png differ diff --git a/public/textures/twilightforest/fiery_block.png b/public/textures/twilightforest/fiery_block.png new file mode 100644 index 00000000..29637736 Binary files /dev/null and b/public/textures/twilightforest/fiery_block.png differ diff --git a/public/textures/twilightforest/fiery_blood.png b/public/textures/twilightforest/fiery_blood.png new file mode 100644 index 00000000..61f2cf60 Binary files /dev/null and b/public/textures/twilightforest/fiery_blood.png differ diff --git a/public/textures/twilightforest/fiery_boots.png b/public/textures/twilightforest/fiery_boots.png new file mode 100644 index 00000000..9b0668e5 Binary files /dev/null and b/public/textures/twilightforest/fiery_boots.png differ diff --git a/public/textures/twilightforest/fiery_chestplate.png b/public/textures/twilightforest/fiery_chestplate.png new file mode 100644 index 00000000..fbc43946 Binary files /dev/null and b/public/textures/twilightforest/fiery_chestplate.png differ diff --git a/public/textures/twilightforest/fiery_helmet.png b/public/textures/twilightforest/fiery_helmet.png new file mode 100644 index 00000000..3d5a2ecb Binary files /dev/null and b/public/textures/twilightforest/fiery_helmet.png differ diff --git a/public/textures/twilightforest/fiery_ingot.png b/public/textures/twilightforest/fiery_ingot.png new file mode 100644 index 00000000..109e24dd Binary files /dev/null and b/public/textures/twilightforest/fiery_ingot.png differ diff --git a/public/textures/twilightforest/fiery_leggings.png b/public/textures/twilightforest/fiery_leggings.png new file mode 100644 index 00000000..58356059 Binary files /dev/null and b/public/textures/twilightforest/fiery_leggings.png differ diff --git a/public/textures/twilightforest/fiery_pickaxe.png b/public/textures/twilightforest/fiery_pickaxe.png new file mode 100644 index 00000000..7b0c6c0e Binary files /dev/null and b/public/textures/twilightforest/fiery_pickaxe.png differ diff --git a/public/textures/twilightforest/fiery_sword.png b/public/textures/twilightforest/fiery_sword.png new file mode 100644 index 00000000..13273ecc Binary files /dev/null and b/public/textures/twilightforest/fiery_sword.png differ diff --git a/public/textures/twilightforest/fiery_tears.png b/public/textures/twilightforest/fiery_tears.png new file mode 100644 index 00000000..f69c41ab Binary files /dev/null and b/public/textures/twilightforest/fiery_tears.png differ diff --git a/public/textures/twilightforest/fire_beetle_spawn_egg.png b/public/textures/twilightforest/fire_beetle_spawn_egg.png new file mode 100644 index 00000000..1286817d Binary files /dev/null and b/public/textures/twilightforest/fire_beetle_spawn_egg.png differ diff --git a/public/textures/twilightforest/fire_jet.png b/public/textures/twilightforest/fire_jet.png new file mode 100644 index 00000000..79a67c25 Binary files /dev/null and b/public/textures/twilightforest/fire_jet.png differ diff --git a/public/textures/twilightforest/firefly.png b/public/textures/twilightforest/firefly.png new file mode 100644 index 00000000..266be0b5 Binary files /dev/null and b/public/textures/twilightforest/firefly.png differ diff --git a/public/textures/twilightforest/firefly_jar__{'twilightforest__jar_lid'__{lid__'twilightforest__twilight_oak_log'}}.png b/public/textures/twilightforest/firefly_jar__{'twilightforest__jar_lid'__{lid__'twilightforest__twilight_oak_log'}}.png new file mode 100644 index 00000000..ab642932 Binary files /dev/null and b/public/textures/twilightforest/firefly_jar__{'twilightforest__jar_lid'__{lid__'twilightforest__twilight_oak_log'}}.png differ diff --git a/public/textures/twilightforest/firefly_particle_spawner.png b/public/textures/twilightforest/firefly_particle_spawner.png new file mode 100644 index 00000000..3f3052c2 Binary files /dev/null and b/public/textures/twilightforest/firefly_particle_spawner.png differ diff --git a/public/textures/twilightforest/fluffy_cloud.png b/public/textures/twilightforest/fluffy_cloud.png new file mode 100644 index 00000000..b0ea548f Binary files /dev/null and b/public/textures/twilightforest/fluffy_cloud.png differ diff --git a/public/textures/twilightforest/fortification_scepter.png b/public/textures/twilightforest/fortification_scepter.png new file mode 100644 index 00000000..eec592e0 Binary files /dev/null and b/public/textures/twilightforest/fortification_scepter.png differ diff --git a/public/textures/twilightforest/ghast_trap.png b/public/textures/twilightforest/ghast_trap.png new file mode 100644 index 00000000..46768b94 Binary files /dev/null and b/public/textures/twilightforest/ghast_trap.png differ diff --git a/public/textures/twilightforest/giant_cobblestone.png b/public/textures/twilightforest/giant_cobblestone.png new file mode 100644 index 00000000..fc58666d Binary files /dev/null and b/public/textures/twilightforest/giant_cobblestone.png differ diff --git a/public/textures/twilightforest/giant_leaves.png b/public/textures/twilightforest/giant_leaves.png new file mode 100644 index 00000000..febe3a63 Binary files /dev/null and b/public/textures/twilightforest/giant_leaves.png differ diff --git a/public/textures/twilightforest/giant_log.png b/public/textures/twilightforest/giant_log.png new file mode 100644 index 00000000..50778e6a Binary files /dev/null and b/public/textures/twilightforest/giant_log.png differ diff --git a/public/textures/twilightforest/giant_miner_spawn_egg.png b/public/textures/twilightforest/giant_miner_spawn_egg.png new file mode 100644 index 00000000..96464d6f Binary files /dev/null and b/public/textures/twilightforest/giant_miner_spawn_egg.png differ diff --git a/public/textures/twilightforest/giant_obsidian.png b/public/textures/twilightforest/giant_obsidian.png new file mode 100644 index 00000000..fe7589ca Binary files /dev/null and b/public/textures/twilightforest/giant_obsidian.png differ diff --git a/public/textures/twilightforest/giant_pickaxe.png b/public/textures/twilightforest/giant_pickaxe.png new file mode 100644 index 00000000..f461b0ea Binary files /dev/null and b/public/textures/twilightforest/giant_pickaxe.png differ diff --git a/public/textures/twilightforest/giant_sword.png b/public/textures/twilightforest/giant_sword.png new file mode 100644 index 00000000..d5b03966 Binary files /dev/null and b/public/textures/twilightforest/giant_sword.png differ diff --git a/public/textures/twilightforest/glass_sword.png b/public/textures/twilightforest/glass_sword.png new file mode 100644 index 00000000..245a45bd Binary files /dev/null and b/public/textures/twilightforest/glass_sword.png differ diff --git a/public/textures/twilightforest/glass_sword__{'minecraft__lore'__['{'color'__'gray','translate'__'item.twilightforest.glass_sword.desc'}'],'minecraft__unbreakable'__{},'twilightforest__infinite_glass_sword'__{}}.png b/public/textures/twilightforest/glass_sword__{'minecraft__lore'__['{'color'__'gray','translate'__'item.twilightforest.glass_sword.desc'}'],'minecraft__unbreakable'__{},'twilightforest__infinite_glass_sword'__{}}.png new file mode 100644 index 00000000..245a45bd Binary files /dev/null and b/public/textures/twilightforest/glass_sword__{'minecraft__lore'__['{'color'__'gray','translate'__'item.twilightforest.glass_sword.desc'}'],'minecraft__unbreakable'__{},'twilightforest__infinite_glass_sword'__{}}.png differ diff --git a/public/textures/twilightforest/gold_minotaur_axe.png b/public/textures/twilightforest/gold_minotaur_axe.png new file mode 100644 index 00000000..81f91c28 Binary files /dev/null and b/public/textures/twilightforest/gold_minotaur_axe.png differ diff --git a/public/textures/twilightforest/greater_potion_flask.png b/public/textures/twilightforest/greater_potion_flask.png new file mode 100644 index 00000000..37edd1be Binary files /dev/null and b/public/textures/twilightforest/greater_potion_flask.png differ diff --git a/public/textures/twilightforest/green_force_field.png b/public/textures/twilightforest/green_force_field.png new file mode 100644 index 00000000..4f7a1b4c Binary files /dev/null and b/public/textures/twilightforest/green_force_field.png differ diff --git a/public/textures/twilightforest/green_thorns.png b/public/textures/twilightforest/green_thorns.png new file mode 100644 index 00000000..2dca3e87 Binary files /dev/null and b/public/textures/twilightforest/green_thorns.png differ diff --git a/public/textures/twilightforest/hedge.png b/public/textures/twilightforest/hedge.png new file mode 100644 index 00000000..d1fdf7dc Binary files /dev/null and b/public/textures/twilightforest/hedge.png differ diff --git a/public/textures/twilightforest/hedge_spider_spawn_egg.png b/public/textures/twilightforest/hedge_spider_spawn_egg.png new file mode 100644 index 00000000..f318f0de Binary files /dev/null and b/public/textures/twilightforest/hedge_spider_spawn_egg.png differ diff --git a/public/textures/twilightforest/helmet_crab_spawn_egg.png b/public/textures/twilightforest/helmet_crab_spawn_egg.png new file mode 100644 index 00000000..f8ebe7af Binary files /dev/null and b/public/textures/twilightforest/helmet_crab_spawn_egg.png differ diff --git a/public/textures/twilightforest/hollow_acacia_log.png b/public/textures/twilightforest/hollow_acacia_log.png new file mode 100644 index 00000000..d9183082 Binary files /dev/null and b/public/textures/twilightforest/hollow_acacia_log.png differ diff --git a/public/textures/twilightforest/hollow_birch_log.png b/public/textures/twilightforest/hollow_birch_log.png new file mode 100644 index 00000000..1c08fdb8 Binary files /dev/null and b/public/textures/twilightforest/hollow_birch_log.png differ diff --git a/public/textures/twilightforest/hollow_canopy_log.png b/public/textures/twilightforest/hollow_canopy_log.png new file mode 100644 index 00000000..73b670b6 Binary files /dev/null and b/public/textures/twilightforest/hollow_canopy_log.png differ diff --git a/public/textures/twilightforest/hollow_cherry_log.png b/public/textures/twilightforest/hollow_cherry_log.png new file mode 100644 index 00000000..36cb45b9 Binary files /dev/null and b/public/textures/twilightforest/hollow_cherry_log.png differ diff --git a/public/textures/twilightforest/hollow_crimson_stem.png b/public/textures/twilightforest/hollow_crimson_stem.png new file mode 100644 index 00000000..e3a4dd6b Binary files /dev/null and b/public/textures/twilightforest/hollow_crimson_stem.png differ diff --git a/public/textures/twilightforest/hollow_dark_log.png b/public/textures/twilightforest/hollow_dark_log.png new file mode 100644 index 00000000..427cc79d Binary files /dev/null and b/public/textures/twilightforest/hollow_dark_log.png differ diff --git a/public/textures/twilightforest/hollow_dark_oak_log.png b/public/textures/twilightforest/hollow_dark_oak_log.png new file mode 100644 index 00000000..77b8851d Binary files /dev/null and b/public/textures/twilightforest/hollow_dark_oak_log.png differ diff --git a/public/textures/twilightforest/hollow_jungle_log.png b/public/textures/twilightforest/hollow_jungle_log.png new file mode 100644 index 00000000..21691cfa Binary files /dev/null and b/public/textures/twilightforest/hollow_jungle_log.png differ diff --git a/public/textures/twilightforest/hollow_mangrove_log.png b/public/textures/twilightforest/hollow_mangrove_log.png new file mode 100644 index 00000000..39ccf068 Binary files /dev/null and b/public/textures/twilightforest/hollow_mangrove_log.png differ diff --git a/public/textures/twilightforest/hollow_mining_log.png b/public/textures/twilightforest/hollow_mining_log.png new file mode 100644 index 00000000..d94a9b69 Binary files /dev/null and b/public/textures/twilightforest/hollow_mining_log.png differ diff --git a/public/textures/twilightforest/hollow_oak_log.png b/public/textures/twilightforest/hollow_oak_log.png new file mode 100644 index 00000000..d89f74c9 Binary files /dev/null and b/public/textures/twilightforest/hollow_oak_log.png differ diff --git a/public/textures/twilightforest/hollow_oak_sapling.png b/public/textures/twilightforest/hollow_oak_sapling.png new file mode 100644 index 00000000..b2c38fb9 Binary files /dev/null and b/public/textures/twilightforest/hollow_oak_sapling.png differ diff --git a/public/textures/twilightforest/hollow_sorting_log.png b/public/textures/twilightforest/hollow_sorting_log.png new file mode 100644 index 00000000..b58985ae Binary files /dev/null and b/public/textures/twilightforest/hollow_sorting_log.png differ diff --git a/public/textures/twilightforest/hollow_spruce_log.png b/public/textures/twilightforest/hollow_spruce_log.png new file mode 100644 index 00000000..0a03bf73 Binary files /dev/null and b/public/textures/twilightforest/hollow_spruce_log.png differ diff --git a/public/textures/twilightforest/hollow_time_log.png b/public/textures/twilightforest/hollow_time_log.png new file mode 100644 index 00000000..6da41efd Binary files /dev/null and b/public/textures/twilightforest/hollow_time_log.png differ diff --git a/public/textures/twilightforest/hollow_transformation_log.png b/public/textures/twilightforest/hollow_transformation_log.png new file mode 100644 index 00000000..91c7df52 Binary files /dev/null and b/public/textures/twilightforest/hollow_transformation_log.png differ diff --git a/public/textures/twilightforest/hollow_twilight_oak_log.png b/public/textures/twilightforest/hollow_twilight_oak_log.png new file mode 100644 index 00000000..d4ac7983 Binary files /dev/null and b/public/textures/twilightforest/hollow_twilight_oak_log.png differ diff --git a/public/textures/twilightforest/hollow_vangrove_log.png b/public/textures/twilightforest/hollow_vangrove_log.png new file mode 100644 index 00000000..dc6aef60 Binary files /dev/null and b/public/textures/twilightforest/hollow_vangrove_log.png differ diff --git a/public/textures/twilightforest/hollow_warped_stem.png b/public/textures/twilightforest/hollow_warped_stem.png new file mode 100644 index 00000000..782bd0e9 Binary files /dev/null and b/public/textures/twilightforest/hollow_warped_stem.png differ diff --git a/public/textures/twilightforest/hostile_wolf_spawn_egg.png b/public/textures/twilightforest/hostile_wolf_spawn_egg.png new file mode 100644 index 00000000..4173d510 Binary files /dev/null and b/public/textures/twilightforest/hostile_wolf_spawn_egg.png differ diff --git a/public/textures/twilightforest/huge_lily_pad.png b/public/textures/twilightforest/huge_lily_pad.png new file mode 100644 index 00000000..d770ebdf Binary files /dev/null and b/public/textures/twilightforest/huge_lily_pad.png differ diff --git a/public/textures/twilightforest/huge_mushgloom.png b/public/textures/twilightforest/huge_mushgloom.png new file mode 100644 index 00000000..2411dd04 Binary files /dev/null and b/public/textures/twilightforest/huge_mushgloom.png differ diff --git a/public/textures/twilightforest/huge_mushgloom_stem.png b/public/textures/twilightforest/huge_mushgloom_stem.png new file mode 100644 index 00000000..09580fa1 Binary files /dev/null and b/public/textures/twilightforest/huge_mushgloom_stem.png differ diff --git a/public/textures/twilightforest/huge_stalk.png b/public/textures/twilightforest/huge_stalk.png new file mode 100644 index 00000000..7c932de7 Binary files /dev/null and b/public/textures/twilightforest/huge_stalk.png differ diff --git a/public/textures/twilightforest/huge_water_lily.png b/public/textures/twilightforest/huge_water_lily.png new file mode 100644 index 00000000..0f6d63ba Binary files /dev/null and b/public/textures/twilightforest/huge_water_lily.png differ diff --git a/public/textures/twilightforest/hydra_banner_pattern.png b/public/textures/twilightforest/hydra_banner_pattern.png new file mode 100644 index 00000000..bc4c0241 Binary files /dev/null and b/public/textures/twilightforest/hydra_banner_pattern.png differ diff --git a/public/textures/twilightforest/hydra_boss_spawner.png b/public/textures/twilightforest/hydra_boss_spawner.png new file mode 100644 index 00000000..5584d7d4 Binary files /dev/null and b/public/textures/twilightforest/hydra_boss_spawner.png differ diff --git a/public/textures/twilightforest/hydra_chop.png b/public/textures/twilightforest/hydra_chop.png new file mode 100644 index 00000000..e546cc77 Binary files /dev/null and b/public/textures/twilightforest/hydra_chop.png differ diff --git a/public/textures/twilightforest/hydra_spawn_egg.png b/public/textures/twilightforest/hydra_spawn_egg.png new file mode 100644 index 00000000..869dbad3 Binary files /dev/null and b/public/textures/twilightforest/hydra_spawn_egg.png differ diff --git a/public/textures/twilightforest/hydra_trophy.png b/public/textures/twilightforest/hydra_trophy.png new file mode 100644 index 00000000..aed1e5aa Binary files /dev/null and b/public/textures/twilightforest/hydra_trophy.png differ diff --git a/public/textures/twilightforest/ice_bomb.png b/public/textures/twilightforest/ice_bomb.png new file mode 100644 index 00000000..236270ca Binary files /dev/null and b/public/textures/twilightforest/ice_bomb.png differ diff --git a/public/textures/twilightforest/ice_bow.png b/public/textures/twilightforest/ice_bow.png new file mode 100644 index 00000000..fbebe92c Binary files /dev/null and b/public/textures/twilightforest/ice_bow.png differ diff --git a/public/textures/twilightforest/ice_crystal_spawn_egg.png b/public/textures/twilightforest/ice_crystal_spawn_egg.png new file mode 100644 index 00000000..2208725e Binary files /dev/null and b/public/textures/twilightforest/ice_crystal_spawn_egg.png differ diff --git a/public/textures/twilightforest/ice_sword.png b/public/textures/twilightforest/ice_sword.png new file mode 100644 index 00000000..720ecdd8 Binary files /dev/null and b/public/textures/twilightforest/ice_sword.png differ diff --git a/public/textures/twilightforest/infested_towerwood.png b/public/textures/twilightforest/infested_towerwood.png new file mode 100644 index 00000000..28020426 Binary files /dev/null and b/public/textures/twilightforest/infested_towerwood.png differ diff --git a/public/textures/twilightforest/iron_ladder.png b/public/textures/twilightforest/iron_ladder.png new file mode 100644 index 00000000..bb787ad3 Binary files /dev/null and b/public/textures/twilightforest/iron_ladder.png differ diff --git a/public/textures/twilightforest/ironwood_axe.png b/public/textures/twilightforest/ironwood_axe.png new file mode 100644 index 00000000..779d5066 Binary files /dev/null and b/public/textures/twilightforest/ironwood_axe.png differ diff --git a/public/textures/twilightforest/ironwood_block.png b/public/textures/twilightforest/ironwood_block.png new file mode 100644 index 00000000..3f5ed1b5 Binary files /dev/null and b/public/textures/twilightforest/ironwood_block.png differ diff --git a/public/textures/twilightforest/ironwood_boots.png b/public/textures/twilightforest/ironwood_boots.png new file mode 100644 index 00000000..9bd92fe7 Binary files /dev/null and b/public/textures/twilightforest/ironwood_boots.png differ diff --git a/public/textures/twilightforest/ironwood_chestplate.png b/public/textures/twilightforest/ironwood_chestplate.png new file mode 100644 index 00000000..9433aaa6 Binary files /dev/null and b/public/textures/twilightforest/ironwood_chestplate.png differ diff --git a/public/textures/twilightforest/ironwood_helmet.png b/public/textures/twilightforest/ironwood_helmet.png new file mode 100644 index 00000000..79ef1e56 Binary files /dev/null and b/public/textures/twilightforest/ironwood_helmet.png differ diff --git a/public/textures/twilightforest/ironwood_hoe.png b/public/textures/twilightforest/ironwood_hoe.png new file mode 100644 index 00000000..501c01e4 Binary files /dev/null and b/public/textures/twilightforest/ironwood_hoe.png differ diff --git a/public/textures/twilightforest/ironwood_ingot.png b/public/textures/twilightforest/ironwood_ingot.png new file mode 100644 index 00000000..d57179d4 Binary files /dev/null and b/public/textures/twilightforest/ironwood_ingot.png differ diff --git a/public/textures/twilightforest/ironwood_leggings.png b/public/textures/twilightforest/ironwood_leggings.png new file mode 100644 index 00000000..d43a5e79 Binary files /dev/null and b/public/textures/twilightforest/ironwood_leggings.png differ diff --git a/public/textures/twilightforest/ironwood_pickaxe.png b/public/textures/twilightforest/ironwood_pickaxe.png new file mode 100644 index 00000000..bfc838b8 Binary files /dev/null and b/public/textures/twilightforest/ironwood_pickaxe.png differ diff --git a/public/textures/twilightforest/ironwood_shovel.png b/public/textures/twilightforest/ironwood_shovel.png new file mode 100644 index 00000000..c373c443 Binary files /dev/null and b/public/textures/twilightforest/ironwood_shovel.png differ diff --git a/public/textures/twilightforest/ironwood_sword.png b/public/textures/twilightforest/ironwood_sword.png new file mode 100644 index 00000000..5ffa8dcd Binary files /dev/null and b/public/textures/twilightforest/ironwood_sword.png differ diff --git a/public/textures/twilightforest/jungle_banister.png b/public/textures/twilightforest/jungle_banister.png new file mode 100644 index 00000000..3bb93ec7 Binary files /dev/null and b/public/textures/twilightforest/jungle_banister.png differ diff --git a/public/textures/twilightforest/keepsake_casket.png b/public/textures/twilightforest/keepsake_casket.png new file mode 100644 index 00000000..d93464c6 Binary files /dev/null and b/public/textures/twilightforest/keepsake_casket.png differ diff --git a/public/textures/twilightforest/keepsake_casket__{'twilightforest__casket_damage'__1}.png b/public/textures/twilightforest/keepsake_casket__{'twilightforest__casket_damage'__1}.png new file mode 100644 index 00000000..6b1e9b82 Binary files /dev/null and b/public/textures/twilightforest/keepsake_casket__{'twilightforest__casket_damage'__1}.png differ diff --git a/public/textures/twilightforest/keepsake_casket__{'twilightforest__casket_damage'__2}.png b/public/textures/twilightforest/keepsake_casket__{'twilightforest__casket_damage'__2}.png new file mode 100644 index 00000000..c123b423 Binary files /dev/null and b/public/textures/twilightforest/keepsake_casket__{'twilightforest__casket_damage'__2}.png differ diff --git a/public/textures/twilightforest/king_spider_spawn_egg.png b/public/textures/twilightforest/king_spider_spawn_egg.png new file mode 100644 index 00000000..9f2585f0 Binary files /dev/null and b/public/textures/twilightforest/king_spider_spawn_egg.png differ diff --git a/public/textures/twilightforest/knight_phantom_banner_pattern.png b/public/textures/twilightforest/knight_phantom_banner_pattern.png new file mode 100644 index 00000000..bc4c0241 Binary files /dev/null and b/public/textures/twilightforest/knight_phantom_banner_pattern.png differ diff --git a/public/textures/twilightforest/knight_phantom_boss_spawner.png b/public/textures/twilightforest/knight_phantom_boss_spawner.png new file mode 100644 index 00000000..5584d7d4 Binary files /dev/null and b/public/textures/twilightforest/knight_phantom_boss_spawner.png differ diff --git a/public/textures/twilightforest/knight_phantom_spawn_egg.png b/public/textures/twilightforest/knight_phantom_spawn_egg.png new file mode 100644 index 00000000..a87c0b23 Binary files /dev/null and b/public/textures/twilightforest/knight_phantom_spawn_egg.png differ diff --git a/public/textures/twilightforest/knight_phantom_trophy.png b/public/textures/twilightforest/knight_phantom_trophy.png new file mode 100644 index 00000000..3ae1c50b Binary files /dev/null and b/public/textures/twilightforest/knight_phantom_trophy.png differ diff --git a/public/textures/twilightforest/knightmetal_axe.png b/public/textures/twilightforest/knightmetal_axe.png new file mode 100644 index 00000000..65d34441 Binary files /dev/null and b/public/textures/twilightforest/knightmetal_axe.png differ diff --git a/public/textures/twilightforest/knightmetal_block.png b/public/textures/twilightforest/knightmetal_block.png new file mode 100644 index 00000000..f2cda7bb Binary files /dev/null and b/public/textures/twilightforest/knightmetal_block.png differ diff --git a/public/textures/twilightforest/knightmetal_boots.png b/public/textures/twilightforest/knightmetal_boots.png new file mode 100644 index 00000000..4ff36362 Binary files /dev/null and b/public/textures/twilightforest/knightmetal_boots.png differ diff --git a/public/textures/twilightforest/knightmetal_chestplate.png b/public/textures/twilightforest/knightmetal_chestplate.png new file mode 100644 index 00000000..5a574b1b Binary files /dev/null and b/public/textures/twilightforest/knightmetal_chestplate.png differ diff --git a/public/textures/twilightforest/knightmetal_helmet.png b/public/textures/twilightforest/knightmetal_helmet.png new file mode 100644 index 00000000..473ce6d8 Binary files /dev/null and b/public/textures/twilightforest/knightmetal_helmet.png differ diff --git a/public/textures/twilightforest/knightmetal_ingot.png b/public/textures/twilightforest/knightmetal_ingot.png new file mode 100644 index 00000000..f99eba0e Binary files /dev/null and b/public/textures/twilightforest/knightmetal_ingot.png differ diff --git a/public/textures/twilightforest/knightmetal_leggings.png b/public/textures/twilightforest/knightmetal_leggings.png new file mode 100644 index 00000000..d69fb6e7 Binary files /dev/null and b/public/textures/twilightforest/knightmetal_leggings.png differ diff --git a/public/textures/twilightforest/knightmetal_pickaxe.png b/public/textures/twilightforest/knightmetal_pickaxe.png new file mode 100644 index 00000000..782987cc Binary files /dev/null and b/public/textures/twilightforest/knightmetal_pickaxe.png differ diff --git a/public/textures/twilightforest/knightmetal_ring.png b/public/textures/twilightforest/knightmetal_ring.png new file mode 100644 index 00000000..0be1786a Binary files /dev/null and b/public/textures/twilightforest/knightmetal_ring.png differ diff --git a/public/textures/twilightforest/knightmetal_shield.png b/public/textures/twilightforest/knightmetal_shield.png new file mode 100644 index 00000000..4bae66a1 Binary files /dev/null and b/public/textures/twilightforest/knightmetal_shield.png differ diff --git a/public/textures/twilightforest/knightmetal_sword.png b/public/textures/twilightforest/knightmetal_sword.png new file mode 100644 index 00000000..66dd1621 Binary files /dev/null and b/public/textures/twilightforest/knightmetal_sword.png differ diff --git a/public/textures/twilightforest/kobold_spawn_egg.png b/public/textures/twilightforest/kobold_spawn_egg.png new file mode 100644 index 00000000..f6192348 Binary files /dev/null and b/public/textures/twilightforest/kobold_spawn_egg.png differ diff --git a/public/textures/twilightforest/lamp_of_cinders.png b/public/textures/twilightforest/lamp_of_cinders.png new file mode 100644 index 00000000..e69920b2 Binary files /dev/null and b/public/textures/twilightforest/lamp_of_cinders.png differ diff --git a/public/textures/twilightforest/lich_banner_pattern.png b/public/textures/twilightforest/lich_banner_pattern.png new file mode 100644 index 00000000..bc4c0241 Binary files /dev/null and b/public/textures/twilightforest/lich_banner_pattern.png differ diff --git a/public/textures/twilightforest/lich_boss_spawner.png b/public/textures/twilightforest/lich_boss_spawner.png new file mode 100644 index 00000000..5584d7d4 Binary files /dev/null and b/public/textures/twilightforest/lich_boss_spawner.png differ diff --git a/public/textures/twilightforest/lich_spawn_egg.png b/public/textures/twilightforest/lich_spawn_egg.png new file mode 100644 index 00000000..305076f9 Binary files /dev/null and b/public/textures/twilightforest/lich_spawn_egg.png differ diff --git a/public/textures/twilightforest/lich_trophy.png b/public/textures/twilightforest/lich_trophy.png new file mode 100644 index 00000000..6ae119c7 Binary files /dev/null and b/public/textures/twilightforest/lich_trophy.png differ diff --git a/public/textures/twilightforest/lifedrain_scepter.png b/public/textures/twilightforest/lifedrain_scepter.png new file mode 100644 index 00000000..f2d4cf64 Binary files /dev/null and b/public/textures/twilightforest/lifedrain_scepter.png differ diff --git a/public/textures/twilightforest/liveroot.png b/public/textures/twilightforest/liveroot.png new file mode 100644 index 00000000..40ac5827 Binary files /dev/null and b/public/textures/twilightforest/liveroot.png differ diff --git a/public/textures/twilightforest/liveroot_block.png b/public/textures/twilightforest/liveroot_block.png new file mode 100644 index 00000000..e51494ac Binary files /dev/null and b/public/textures/twilightforest/liveroot_block.png differ diff --git a/public/textures/twilightforest/locked_vanishing_block.png b/public/textures/twilightforest/locked_vanishing_block.png new file mode 100644 index 00000000..5c061e26 Binary files /dev/null and b/public/textures/twilightforest/locked_vanishing_block.png differ diff --git a/public/textures/twilightforest/lower_goblin_knight_spawn_egg.png b/public/textures/twilightforest/lower_goblin_knight_spawn_egg.png new file mode 100644 index 00000000..790bba1b Binary files /dev/null and b/public/textures/twilightforest/lower_goblin_knight_spawn_egg.png differ diff --git a/public/textures/twilightforest/magic_beans.png b/public/textures/twilightforest/magic_beans.png new file mode 100644 index 00000000..dbb6cd2c Binary files /dev/null and b/public/textures/twilightforest/magic_beans.png differ diff --git a/public/textures/twilightforest/magic_map.png b/public/textures/twilightforest/magic_map.png new file mode 100644 index 00000000..deae7895 Binary files /dev/null and b/public/textures/twilightforest/magic_map.png differ diff --git a/public/textures/twilightforest/magic_map_focus.png b/public/textures/twilightforest/magic_map_focus.png new file mode 100644 index 00000000..8edeebca Binary files /dev/null and b/public/textures/twilightforest/magic_map_focus.png differ diff --git a/public/textures/twilightforest/mangrove_banister.png b/public/textures/twilightforest/mangrove_banister.png new file mode 100644 index 00000000..7b6c3880 Binary files /dev/null and b/public/textures/twilightforest/mangrove_banister.png differ diff --git a/public/textures/twilightforest/mangrove_boat.png b/public/textures/twilightforest/mangrove_boat.png new file mode 100644 index 00000000..1a45509d Binary files /dev/null and b/public/textures/twilightforest/mangrove_boat.png differ diff --git a/public/textures/twilightforest/mangrove_button.png b/public/textures/twilightforest/mangrove_button.png new file mode 100644 index 00000000..025a6607 Binary files /dev/null and b/public/textures/twilightforest/mangrove_button.png differ diff --git a/public/textures/twilightforest/mangrove_chest.png b/public/textures/twilightforest/mangrove_chest.png new file mode 100644 index 00000000..d9acaf06 Binary files /dev/null and b/public/textures/twilightforest/mangrove_chest.png differ diff --git a/public/textures/twilightforest/mangrove_chest_boat.png b/public/textures/twilightforest/mangrove_chest_boat.png new file mode 100644 index 00000000..fbd0a661 Binary files /dev/null and b/public/textures/twilightforest/mangrove_chest_boat.png differ diff --git a/public/textures/twilightforest/mangrove_door.png b/public/textures/twilightforest/mangrove_door.png new file mode 100644 index 00000000..40d08358 Binary files /dev/null and b/public/textures/twilightforest/mangrove_door.png differ diff --git a/public/textures/twilightforest/mangrove_fence.png b/public/textures/twilightforest/mangrove_fence.png new file mode 100644 index 00000000..77978b34 Binary files /dev/null and b/public/textures/twilightforest/mangrove_fence.png differ diff --git a/public/textures/twilightforest/mangrove_fence_gate.png b/public/textures/twilightforest/mangrove_fence_gate.png new file mode 100644 index 00000000..1c5b8d48 Binary files /dev/null and b/public/textures/twilightforest/mangrove_fence_gate.png differ diff --git a/public/textures/twilightforest/mangrove_hanging_sign.png b/public/textures/twilightforest/mangrove_hanging_sign.png new file mode 100644 index 00000000..0c367fd6 Binary files /dev/null and b/public/textures/twilightforest/mangrove_hanging_sign.png differ diff --git a/public/textures/twilightforest/mangrove_leaves.png b/public/textures/twilightforest/mangrove_leaves.png new file mode 100644 index 00000000..1d63b56c Binary files /dev/null and b/public/textures/twilightforest/mangrove_leaves.png differ diff --git a/public/textures/twilightforest/mangrove_log.png b/public/textures/twilightforest/mangrove_log.png new file mode 100644 index 00000000..bccaf25b Binary files /dev/null and b/public/textures/twilightforest/mangrove_log.png differ diff --git a/public/textures/twilightforest/mangrove_planks.png b/public/textures/twilightforest/mangrove_planks.png new file mode 100644 index 00000000..7bd14ecd Binary files /dev/null and b/public/textures/twilightforest/mangrove_planks.png differ diff --git a/public/textures/twilightforest/mangrove_pressure_plate.png b/public/textures/twilightforest/mangrove_pressure_plate.png new file mode 100644 index 00000000..da3ddbdb Binary files /dev/null and b/public/textures/twilightforest/mangrove_pressure_plate.png differ diff --git a/public/textures/twilightforest/mangrove_root.png b/public/textures/twilightforest/mangrove_root.png new file mode 100644 index 00000000..1a3ff2ed Binary files /dev/null and b/public/textures/twilightforest/mangrove_root.png differ diff --git a/public/textures/twilightforest/mangrove_sapling.png b/public/textures/twilightforest/mangrove_sapling.png new file mode 100644 index 00000000..55d82961 Binary files /dev/null and b/public/textures/twilightforest/mangrove_sapling.png differ diff --git a/public/textures/twilightforest/mangrove_sign.png b/public/textures/twilightforest/mangrove_sign.png new file mode 100644 index 00000000..5e019615 Binary files /dev/null and b/public/textures/twilightforest/mangrove_sign.png differ diff --git a/public/textures/twilightforest/mangrove_slab.png b/public/textures/twilightforest/mangrove_slab.png new file mode 100644 index 00000000..ba9d7ed1 Binary files /dev/null and b/public/textures/twilightforest/mangrove_slab.png differ diff --git a/public/textures/twilightforest/mangrove_stairs.png b/public/textures/twilightforest/mangrove_stairs.png new file mode 100644 index 00000000..5a32db09 Binary files /dev/null and b/public/textures/twilightforest/mangrove_stairs.png differ diff --git a/public/textures/twilightforest/mangrove_trapdoor.png b/public/textures/twilightforest/mangrove_trapdoor.png new file mode 100644 index 00000000..c7138a4b Binary files /dev/null and b/public/textures/twilightforest/mangrove_trapdoor.png differ diff --git a/public/textures/twilightforest/mangrove_trapped_chest.png b/public/textures/twilightforest/mangrove_trapped_chest.png new file mode 100644 index 00000000..c7085f82 Binary files /dev/null and b/public/textures/twilightforest/mangrove_trapped_chest.png differ diff --git a/public/textures/twilightforest/mangrove_wood.png b/public/textures/twilightforest/mangrove_wood.png new file mode 100644 index 00000000..d5e215cb Binary files /dev/null and b/public/textures/twilightforest/mangrove_wood.png differ diff --git a/public/textures/twilightforest/mason_jar__{'twilightforest__jar_lid'__{lid__'twilightforest__twilight_oak_log'}}.png b/public/textures/twilightforest/mason_jar__{'twilightforest__jar_lid'__{lid__'twilightforest__twilight_oak_log'}}.png new file mode 100644 index 00000000..ab642932 Binary files /dev/null and b/public/textures/twilightforest/mason_jar__{'twilightforest__jar_lid'__{lid__'twilightforest__twilight_oak_log'}}.png differ diff --git a/public/textures/twilightforest/mayapple.png b/public/textures/twilightforest/mayapple.png new file mode 100644 index 00000000..dfe0d728 Binary files /dev/null and b/public/textures/twilightforest/mayapple.png differ diff --git a/public/textures/twilightforest/maze_map.png b/public/textures/twilightforest/maze_map.png new file mode 100644 index 00000000..787df206 Binary files /dev/null and b/public/textures/twilightforest/maze_map.png differ diff --git a/public/textures/twilightforest/maze_map_focus.png b/public/textures/twilightforest/maze_map_focus.png new file mode 100644 index 00000000..661aa940 Binary files /dev/null and b/public/textures/twilightforest/maze_map_focus.png differ diff --git a/public/textures/twilightforest/maze_slime_spawn_egg.png b/public/textures/twilightforest/maze_slime_spawn_egg.png new file mode 100644 index 00000000..120d2d75 Binary files /dev/null and b/public/textures/twilightforest/maze_slime_spawn_egg.png differ diff --git a/public/textures/twilightforest/maze_wafer.png b/public/textures/twilightforest/maze_wafer.png new file mode 100644 index 00000000..d5293bf1 Binary files /dev/null and b/public/textures/twilightforest/maze_wafer.png differ diff --git a/public/textures/twilightforest/mazebreaker_pickaxe.png b/public/textures/twilightforest/mazebreaker_pickaxe.png new file mode 100644 index 00000000..324ea3ff Binary files /dev/null and b/public/textures/twilightforest/mazebreaker_pickaxe.png differ diff --git a/public/textures/twilightforest/mazestone.png b/public/textures/twilightforest/mazestone.png new file mode 100644 index 00000000..3971fb67 Binary files /dev/null and b/public/textures/twilightforest/mazestone.png differ diff --git a/public/textures/twilightforest/mazestone_border.png b/public/textures/twilightforest/mazestone_border.png new file mode 100644 index 00000000..cdfafc0a Binary files /dev/null and b/public/textures/twilightforest/mazestone_border.png differ diff --git a/public/textures/twilightforest/mazestone_brick.png b/public/textures/twilightforest/mazestone_brick.png new file mode 100644 index 00000000..554e1b23 Binary files /dev/null and b/public/textures/twilightforest/mazestone_brick.png differ diff --git a/public/textures/twilightforest/mazestone_mosaic.png b/public/textures/twilightforest/mazestone_mosaic.png new file mode 100644 index 00000000..28164518 Binary files /dev/null and b/public/textures/twilightforest/mazestone_mosaic.png differ diff --git a/public/textures/twilightforest/meef_stroganoff.png b/public/textures/twilightforest/meef_stroganoff.png new file mode 100644 index 00000000..d9f21a36 Binary files /dev/null and b/public/textures/twilightforest/meef_stroganoff.png differ diff --git a/public/textures/twilightforest/mining_banister.png b/public/textures/twilightforest/mining_banister.png new file mode 100644 index 00000000..46ffbabc Binary files /dev/null and b/public/textures/twilightforest/mining_banister.png differ diff --git a/public/textures/twilightforest/mining_boat.png b/public/textures/twilightforest/mining_boat.png new file mode 100644 index 00000000..21db53b2 Binary files /dev/null and b/public/textures/twilightforest/mining_boat.png differ diff --git a/public/textures/twilightforest/mining_button.png b/public/textures/twilightforest/mining_button.png new file mode 100644 index 00000000..37b054da Binary files /dev/null and b/public/textures/twilightforest/mining_button.png differ diff --git a/public/textures/twilightforest/mining_chest.png b/public/textures/twilightforest/mining_chest.png new file mode 100644 index 00000000..3b47cfe2 Binary files /dev/null and b/public/textures/twilightforest/mining_chest.png differ diff --git a/public/textures/twilightforest/mining_chest_boat.png b/public/textures/twilightforest/mining_chest_boat.png new file mode 100644 index 00000000..7becf9a2 Binary files /dev/null and b/public/textures/twilightforest/mining_chest_boat.png differ diff --git a/public/textures/twilightforest/mining_door.png b/public/textures/twilightforest/mining_door.png new file mode 100644 index 00000000..2aed9ff9 Binary files /dev/null and b/public/textures/twilightforest/mining_door.png differ diff --git a/public/textures/twilightforest/mining_fence.png b/public/textures/twilightforest/mining_fence.png new file mode 100644 index 00000000..17faee19 Binary files /dev/null and b/public/textures/twilightforest/mining_fence.png differ diff --git a/public/textures/twilightforest/mining_fence_gate.png b/public/textures/twilightforest/mining_fence_gate.png new file mode 100644 index 00000000..868f4c67 Binary files /dev/null and b/public/textures/twilightforest/mining_fence_gate.png differ diff --git a/public/textures/twilightforest/mining_hanging_sign.png b/public/textures/twilightforest/mining_hanging_sign.png new file mode 100644 index 00000000..e2f2fdc7 Binary files /dev/null and b/public/textures/twilightforest/mining_hanging_sign.png differ diff --git a/public/textures/twilightforest/mining_leaves.png b/public/textures/twilightforest/mining_leaves.png new file mode 100644 index 00000000..a485269a Binary files /dev/null and b/public/textures/twilightforest/mining_leaves.png differ diff --git a/public/textures/twilightforest/mining_log.png b/public/textures/twilightforest/mining_log.png new file mode 100644 index 00000000..24f67588 Binary files /dev/null and b/public/textures/twilightforest/mining_log.png differ diff --git a/public/textures/twilightforest/mining_log_core.png b/public/textures/twilightforest/mining_log_core.png new file mode 100644 index 00000000..ef4407fe Binary files /dev/null and b/public/textures/twilightforest/mining_log_core.png differ diff --git a/public/textures/twilightforest/mining_planks.png b/public/textures/twilightforest/mining_planks.png new file mode 100644 index 00000000..a1f3fc1e Binary files /dev/null and b/public/textures/twilightforest/mining_planks.png differ diff --git a/public/textures/twilightforest/mining_pressure_plate.png b/public/textures/twilightforest/mining_pressure_plate.png new file mode 100644 index 00000000..249368ea Binary files /dev/null and b/public/textures/twilightforest/mining_pressure_plate.png differ diff --git a/public/textures/twilightforest/mining_sapling.png b/public/textures/twilightforest/mining_sapling.png new file mode 100644 index 00000000..67328326 Binary files /dev/null and b/public/textures/twilightforest/mining_sapling.png differ diff --git a/public/textures/twilightforest/mining_sign.png b/public/textures/twilightforest/mining_sign.png new file mode 100644 index 00000000..6a77890a Binary files /dev/null and b/public/textures/twilightforest/mining_sign.png differ diff --git a/public/textures/twilightforest/mining_slab.png b/public/textures/twilightforest/mining_slab.png new file mode 100644 index 00000000..1666a8ed Binary files /dev/null and b/public/textures/twilightforest/mining_slab.png differ diff --git a/public/textures/twilightforest/mining_stairs.png b/public/textures/twilightforest/mining_stairs.png new file mode 100644 index 00000000..4354fd64 Binary files /dev/null and b/public/textures/twilightforest/mining_stairs.png differ diff --git a/public/textures/twilightforest/mining_trapdoor.png b/public/textures/twilightforest/mining_trapdoor.png new file mode 100644 index 00000000..041e4762 Binary files /dev/null and b/public/textures/twilightforest/mining_trapdoor.png differ diff --git a/public/textures/twilightforest/mining_trapped_chest.png b/public/textures/twilightforest/mining_trapped_chest.png new file mode 100644 index 00000000..ed01123d Binary files /dev/null and b/public/textures/twilightforest/mining_trapped_chest.png differ diff --git a/public/textures/twilightforest/mining_wood.png b/public/textures/twilightforest/mining_wood.png new file mode 100644 index 00000000..64619173 Binary files /dev/null and b/public/textures/twilightforest/mining_wood.png differ diff --git a/public/textures/twilightforest/minoshroom_banner_pattern.png b/public/textures/twilightforest/minoshroom_banner_pattern.png new file mode 100644 index 00000000..bc4c0241 Binary files /dev/null and b/public/textures/twilightforest/minoshroom_banner_pattern.png differ diff --git a/public/textures/twilightforest/minoshroom_boss_spawner.png b/public/textures/twilightforest/minoshroom_boss_spawner.png new file mode 100644 index 00000000..5584d7d4 Binary files /dev/null and b/public/textures/twilightforest/minoshroom_boss_spawner.png differ diff --git a/public/textures/twilightforest/minoshroom_spawn_egg.png b/public/textures/twilightforest/minoshroom_spawn_egg.png new file mode 100644 index 00000000..0fe7c5b2 Binary files /dev/null and b/public/textures/twilightforest/minoshroom_spawn_egg.png differ diff --git a/public/textures/twilightforest/minoshroom_trophy.png b/public/textures/twilightforest/minoshroom_trophy.png new file mode 100644 index 00000000..e06a2677 Binary files /dev/null and b/public/textures/twilightforest/minoshroom_trophy.png differ diff --git a/public/textures/twilightforest/minotaur_spawn_egg.png b/public/textures/twilightforest/minotaur_spawn_egg.png new file mode 100644 index 00000000..9e77e3ae Binary files /dev/null and b/public/textures/twilightforest/minotaur_spawn_egg.png differ diff --git a/public/textures/twilightforest/mist_wolf_spawn_egg.png b/public/textures/twilightforest/mist_wolf_spawn_egg.png new file mode 100644 index 00000000..48f8480a Binary files /dev/null and b/public/textures/twilightforest/mist_wolf_spawn_egg.png differ diff --git a/public/textures/twilightforest/moon_dial.png b/public/textures/twilightforest/moon_dial.png new file mode 100644 index 00000000..13fc6923 Binary files /dev/null and b/public/textures/twilightforest/moon_dial.png differ diff --git a/public/textures/twilightforest/moonworm.png b/public/textures/twilightforest/moonworm.png new file mode 100644 index 00000000..d3d5b8e9 Binary files /dev/null and b/public/textures/twilightforest/moonworm.png differ diff --git a/public/textures/twilightforest/moonworm_queen.png b/public/textures/twilightforest/moonworm_queen.png new file mode 100644 index 00000000..8b008639 Binary files /dev/null and b/public/textures/twilightforest/moonworm_queen.png differ diff --git a/public/textures/twilightforest/mosquito_swarm_spawn_egg.png b/public/textures/twilightforest/mosquito_swarm_spawn_egg.png new file mode 100644 index 00000000..72654a01 Binary files /dev/null and b/public/textures/twilightforest/mosquito_swarm_spawn_egg.png differ diff --git a/public/textures/twilightforest/moss_patch.png b/public/textures/twilightforest/moss_patch.png new file mode 100644 index 00000000..f00f8721 Binary files /dev/null and b/public/textures/twilightforest/moss_patch.png differ diff --git a/public/textures/twilightforest/mossy_castle_brick.png b/public/textures/twilightforest/mossy_castle_brick.png new file mode 100644 index 00000000..edce05bd Binary files /dev/null and b/public/textures/twilightforest/mossy_castle_brick.png differ diff --git a/public/textures/twilightforest/mossy_castle_brick_stairs.png b/public/textures/twilightforest/mossy_castle_brick_stairs.png new file mode 100644 index 00000000..50fe08d1 Binary files /dev/null and b/public/textures/twilightforest/mossy_castle_brick_stairs.png differ diff --git a/public/textures/twilightforest/mossy_etched_nagastone.png b/public/textures/twilightforest/mossy_etched_nagastone.png new file mode 100644 index 00000000..d31da307 Binary files /dev/null and b/public/textures/twilightforest/mossy_etched_nagastone.png differ diff --git a/public/textures/twilightforest/mossy_mazestone.png b/public/textures/twilightforest/mossy_mazestone.png new file mode 100644 index 00000000..eb9a5e4d Binary files /dev/null and b/public/textures/twilightforest/mossy_mazestone.png differ diff --git a/public/textures/twilightforest/mossy_nagastone_pillar.png b/public/textures/twilightforest/mossy_nagastone_pillar.png new file mode 100644 index 00000000..5c5f857d Binary files /dev/null and b/public/textures/twilightforest/mossy_nagastone_pillar.png differ diff --git a/public/textures/twilightforest/mossy_nagastone_stairs_left.png b/public/textures/twilightforest/mossy_nagastone_stairs_left.png new file mode 100644 index 00000000..1fd9b1bb Binary files /dev/null and b/public/textures/twilightforest/mossy_nagastone_stairs_left.png differ diff --git a/public/textures/twilightforest/mossy_nagastone_stairs_right.png b/public/textures/twilightforest/mossy_nagastone_stairs_right.png new file mode 100644 index 00000000..faf690e5 Binary files /dev/null and b/public/textures/twilightforest/mossy_nagastone_stairs_right.png differ diff --git a/public/textures/twilightforest/mossy_towerwood.png b/public/textures/twilightforest/mossy_towerwood.png new file mode 100644 index 00000000..da02a1e7 Binary files /dev/null and b/public/textures/twilightforest/mossy_towerwood.png differ diff --git a/public/textures/twilightforest/mossy_underbrick.png b/public/textures/twilightforest/mossy_underbrick.png new file mode 100644 index 00000000..2fff1b05 Binary files /dev/null and b/public/textures/twilightforest/mossy_underbrick.png differ diff --git a/public/textures/twilightforest/mushgloom.png b/public/textures/twilightforest/mushgloom.png new file mode 100644 index 00000000..0fc7b7be Binary files /dev/null and b/public/textures/twilightforest/mushgloom.png differ diff --git a/public/textures/twilightforest/music_disc_findings.png b/public/textures/twilightforest/music_disc_findings.png new file mode 100644 index 00000000..5a602588 Binary files /dev/null and b/public/textures/twilightforest/music_disc_findings.png differ diff --git a/public/textures/twilightforest/music_disc_home.png b/public/textures/twilightforest/music_disc_home.png new file mode 100644 index 00000000..069601a4 Binary files /dev/null and b/public/textures/twilightforest/music_disc_home.png differ diff --git a/public/textures/twilightforest/music_disc_maker.png b/public/textures/twilightforest/music_disc_maker.png new file mode 100644 index 00000000..a6791feb Binary files /dev/null and b/public/textures/twilightforest/music_disc_maker.png differ diff --git a/public/textures/twilightforest/music_disc_motion.png b/public/textures/twilightforest/music_disc_motion.png new file mode 100644 index 00000000..9e8e8cb7 Binary files /dev/null and b/public/textures/twilightforest/music_disc_motion.png differ diff --git a/public/textures/twilightforest/music_disc_radiance.png b/public/textures/twilightforest/music_disc_radiance.png new file mode 100644 index 00000000..8a5a338d Binary files /dev/null and b/public/textures/twilightforest/music_disc_radiance.png differ diff --git a/public/textures/twilightforest/music_disc_steps.png b/public/textures/twilightforest/music_disc_steps.png new file mode 100644 index 00000000..f5ddeefa Binary files /dev/null and b/public/textures/twilightforest/music_disc_steps.png differ diff --git a/public/textures/twilightforest/music_disc_superstitious.png b/public/textures/twilightforest/music_disc_superstitious.png new file mode 100644 index 00000000..283c44a0 Binary files /dev/null and b/public/textures/twilightforest/music_disc_superstitious.png differ diff --git a/public/textures/twilightforest/music_disc_thread.png b/public/textures/twilightforest/music_disc_thread.png new file mode 100644 index 00000000..e7a795d4 Binary files /dev/null and b/public/textures/twilightforest/music_disc_thread.png differ diff --git a/public/textures/twilightforest/music_disc_wayfarer.png b/public/textures/twilightforest/music_disc_wayfarer.png new file mode 100644 index 00000000..4301da90 Binary files /dev/null and b/public/textures/twilightforest/music_disc_wayfarer.png differ diff --git a/public/textures/twilightforest/mystic_crown.png b/public/textures/twilightforest/mystic_crown.png new file mode 100644 index 00000000..bb404617 Binary files /dev/null and b/public/textures/twilightforest/mystic_crown.png differ diff --git a/public/textures/twilightforest/naga_banner_pattern.png b/public/textures/twilightforest/naga_banner_pattern.png new file mode 100644 index 00000000..bc4c0241 Binary files /dev/null and b/public/textures/twilightforest/naga_banner_pattern.png differ diff --git a/public/textures/twilightforest/naga_boss_spawner.png b/public/textures/twilightforest/naga_boss_spawner.png new file mode 100644 index 00000000..5584d7d4 Binary files /dev/null and b/public/textures/twilightforest/naga_boss_spawner.png differ diff --git a/public/textures/twilightforest/naga_chestplate.png b/public/textures/twilightforest/naga_chestplate.png new file mode 100644 index 00000000..e76e77e3 Binary files /dev/null and b/public/textures/twilightforest/naga_chestplate.png differ diff --git a/public/textures/twilightforest/naga_leggings.png b/public/textures/twilightforest/naga_leggings.png new file mode 100644 index 00000000..a9869182 Binary files /dev/null and b/public/textures/twilightforest/naga_leggings.png differ diff --git a/public/textures/twilightforest/naga_scale.png b/public/textures/twilightforest/naga_scale.png new file mode 100644 index 00000000..4b48e651 Binary files /dev/null and b/public/textures/twilightforest/naga_scale.png differ diff --git a/public/textures/twilightforest/naga_spawn_egg.png b/public/textures/twilightforest/naga_spawn_egg.png new file mode 100644 index 00000000..924dd8a7 Binary files /dev/null and b/public/textures/twilightforest/naga_spawn_egg.png differ diff --git a/public/textures/twilightforest/naga_trophy.png b/public/textures/twilightforest/naga_trophy.png new file mode 100644 index 00000000..f6cb2021 Binary files /dev/null and b/public/textures/twilightforest/naga_trophy.png differ diff --git a/public/textures/twilightforest/nagastone.png b/public/textures/twilightforest/nagastone.png new file mode 100644 index 00000000..06a50112 Binary files /dev/null and b/public/textures/twilightforest/nagastone.png differ diff --git a/public/textures/twilightforest/nagastone_head.png b/public/textures/twilightforest/nagastone_head.png new file mode 100644 index 00000000..73bf71fc Binary files /dev/null and b/public/textures/twilightforest/nagastone_head.png differ diff --git a/public/textures/twilightforest/nagastone_pillar.png b/public/textures/twilightforest/nagastone_pillar.png new file mode 100644 index 00000000..3a385733 Binary files /dev/null and b/public/textures/twilightforest/nagastone_pillar.png differ diff --git a/public/textures/twilightforest/nagastone_stairs_left.png b/public/textures/twilightforest/nagastone_stairs_left.png new file mode 100644 index 00000000..1693826b Binary files /dev/null and b/public/textures/twilightforest/nagastone_stairs_left.png differ diff --git a/public/textures/twilightforest/nagastone_stairs_right.png b/public/textures/twilightforest/nagastone_stairs_right.png new file mode 100644 index 00000000..49665f66 Binary files /dev/null and b/public/textures/twilightforest/nagastone_stairs_right.png differ diff --git a/public/textures/twilightforest/oak_banister.png b/public/textures/twilightforest/oak_banister.png new file mode 100644 index 00000000..8374e24f Binary files /dev/null and b/public/textures/twilightforest/oak_banister.png differ diff --git a/public/textures/twilightforest/orange_force_field.png b/public/textures/twilightforest/orange_force_field.png new file mode 100644 index 00000000..6a977788 Binary files /dev/null and b/public/textures/twilightforest/orange_force_field.png differ diff --git a/public/textures/twilightforest/ore_magnet.png b/public/textures/twilightforest/ore_magnet.png new file mode 100644 index 00000000..21ac95cb Binary files /dev/null and b/public/textures/twilightforest/ore_magnet.png differ diff --git a/public/textures/twilightforest/ore_map.png b/public/textures/twilightforest/ore_map.png new file mode 100644 index 00000000..1e20e24f Binary files /dev/null and b/public/textures/twilightforest/ore_map.png differ diff --git a/public/textures/twilightforest/ore_meter.png b/public/textures/twilightforest/ore_meter.png new file mode 100644 index 00000000..9e050b3e Binary files /dev/null and b/public/textures/twilightforest/ore_meter.png differ diff --git a/public/textures/twilightforest/peacock_feather_fan.png b/public/textures/twilightforest/peacock_feather_fan.png new file mode 100644 index 00000000..c95a5b02 Binary files /dev/null and b/public/textures/twilightforest/peacock_feather_fan.png differ diff --git a/public/textures/twilightforest/penguin_spawn_egg.png b/public/textures/twilightforest/penguin_spawn_egg.png new file mode 100644 index 00000000..b64a7b8d Binary files /dev/null and b/public/textures/twilightforest/penguin_spawn_egg.png differ diff --git a/public/textures/twilightforest/phantom_chestplate.png b/public/textures/twilightforest/phantom_chestplate.png new file mode 100644 index 00000000..e63a3d05 Binary files /dev/null and b/public/textures/twilightforest/phantom_chestplate.png differ diff --git a/public/textures/twilightforest/phantom_helmet.png b/public/textures/twilightforest/phantom_helmet.png new file mode 100644 index 00000000..04135e7b Binary files /dev/null and b/public/textures/twilightforest/phantom_helmet.png differ diff --git a/public/textures/twilightforest/pinch_beetle_spawn_egg.png b/public/textures/twilightforest/pinch_beetle_spawn_egg.png new file mode 100644 index 00000000..5bb8df42 Binary files /dev/null and b/public/textures/twilightforest/pinch_beetle_spawn_egg.png differ diff --git a/public/textures/twilightforest/pink_castle_door.png b/public/textures/twilightforest/pink_castle_door.png new file mode 100644 index 00000000..6a2e5ec4 Binary files /dev/null and b/public/textures/twilightforest/pink_castle_door.png differ diff --git a/public/textures/twilightforest/pink_castle_rune_brick.png b/public/textures/twilightforest/pink_castle_rune_brick.png new file mode 100644 index 00000000..b2a3ef25 Binary files /dev/null and b/public/textures/twilightforest/pink_castle_rune_brick.png differ diff --git a/public/textures/twilightforest/pink_force_field.png b/public/textures/twilightforest/pink_force_field.png new file mode 100644 index 00000000..27ee5d3a Binary files /dev/null and b/public/textures/twilightforest/pink_force_field.png differ diff --git a/public/textures/twilightforest/pocket_watch.png b/public/textures/twilightforest/pocket_watch.png new file mode 100644 index 00000000..3755fdcc Binary files /dev/null and b/public/textures/twilightforest/pocket_watch.png differ diff --git a/public/textures/twilightforest/quest_ram_banner_pattern.png b/public/textures/twilightforest/quest_ram_banner_pattern.png new file mode 100644 index 00000000..bc4c0241 Binary files /dev/null and b/public/textures/twilightforest/quest_ram_banner_pattern.png differ diff --git a/public/textures/twilightforest/quest_ram_spawn_egg.png b/public/textures/twilightforest/quest_ram_spawn_egg.png new file mode 100644 index 00000000..92de4a36 Binary files /dev/null and b/public/textures/twilightforest/quest_ram_spawn_egg.png differ diff --git a/public/textures/twilightforest/quest_ram_trophy.png b/public/textures/twilightforest/quest_ram_trophy.png new file mode 100644 index 00000000..cd0c4410 Binary files /dev/null and b/public/textures/twilightforest/quest_ram_trophy.png differ diff --git a/public/textures/twilightforest/rainbow_oak_leaves.png b/public/textures/twilightforest/rainbow_oak_leaves.png new file mode 100644 index 00000000..b8faccf1 Binary files /dev/null and b/public/textures/twilightforest/rainbow_oak_leaves.png differ diff --git a/public/textures/twilightforest/rainbow_oak_sapling.png b/public/textures/twilightforest/rainbow_oak_sapling.png new file mode 100644 index 00000000..79cff12f Binary files /dev/null and b/public/textures/twilightforest/rainbow_oak_sapling.png differ diff --git a/public/textures/twilightforest/rainy_cloud.png b/public/textures/twilightforest/rainy_cloud.png new file mode 100644 index 00000000..0eccc289 Binary files /dev/null and b/public/textures/twilightforest/rainy_cloud.png differ diff --git a/public/textures/twilightforest/raven_feather.png b/public/textures/twilightforest/raven_feather.png new file mode 100644 index 00000000..64f5675b Binary files /dev/null and b/public/textures/twilightforest/raven_feather.png differ diff --git a/public/textures/twilightforest/raven_spawn_egg.png b/public/textures/twilightforest/raven_spawn_egg.png new file mode 100644 index 00000000..b804b356 Binary files /dev/null and b/public/textures/twilightforest/raven_spawn_egg.png differ diff --git a/public/textures/twilightforest/raw_ironwood.png b/public/textures/twilightforest/raw_ironwood.png new file mode 100644 index 00000000..c741402d Binary files /dev/null and b/public/textures/twilightforest/raw_ironwood.png differ diff --git a/public/textures/twilightforest/raw_meef.png b/public/textures/twilightforest/raw_meef.png new file mode 100644 index 00000000..f65008f7 Binary files /dev/null and b/public/textures/twilightforest/raw_meef.png differ diff --git a/public/textures/twilightforest/raw_venison.png b/public/textures/twilightforest/raw_venison.png new file mode 100644 index 00000000..e9df8719 Binary files /dev/null and b/public/textures/twilightforest/raw_venison.png differ diff --git a/public/textures/twilightforest/reappearing_block.png b/public/textures/twilightforest/reappearing_block.png new file mode 100644 index 00000000..b4b6a4b0 Binary files /dev/null and b/public/textures/twilightforest/reappearing_block.png differ diff --git a/public/textures/twilightforest/red_thread.png b/public/textures/twilightforest/red_thread.png new file mode 100644 index 00000000..11f79209 Binary files /dev/null and b/public/textures/twilightforest/red_thread.png differ diff --git a/public/textures/twilightforest/redcap_sapper_spawn_egg.png b/public/textures/twilightforest/redcap_sapper_spawn_egg.png new file mode 100644 index 00000000..f0ead60d Binary files /dev/null and b/public/textures/twilightforest/redcap_sapper_spawn_egg.png differ diff --git a/public/textures/twilightforest/redcap_spawn_egg.png b/public/textures/twilightforest/redcap_spawn_egg.png new file mode 100644 index 00000000..b5dc3ccd Binary files /dev/null and b/public/textures/twilightforest/redcap_spawn_egg.png differ diff --git a/public/textures/twilightforest/root.png b/public/textures/twilightforest/root.png new file mode 100644 index 00000000..2daf73c6 Binary files /dev/null and b/public/textures/twilightforest/root.png differ diff --git a/public/textures/twilightforest/root_strand.png b/public/textures/twilightforest/root_strand.png new file mode 100644 index 00000000..d3079421 Binary files /dev/null and b/public/textures/twilightforest/root_strand.png differ diff --git a/public/textures/twilightforest/rope.png b/public/textures/twilightforest/rope.png new file mode 100644 index 00000000..1b737e8e Binary files /dev/null and b/public/textures/twilightforest/rope.png differ diff --git a/public/textures/twilightforest/seeker_bow.png b/public/textures/twilightforest/seeker_bow.png new file mode 100644 index 00000000..6e46bd7b Binary files /dev/null and b/public/textures/twilightforest/seeker_bow.png differ diff --git a/public/textures/twilightforest/sinister_spawner.png b/public/textures/twilightforest/sinister_spawner.png new file mode 100644 index 00000000..5a2c449e Binary files /dev/null and b/public/textures/twilightforest/sinister_spawner.png differ diff --git a/public/textures/twilightforest/skeleton_druid_spawn_egg.png b/public/textures/twilightforest/skeleton_druid_spawn_egg.png new file mode 100644 index 00000000..120d2d75 Binary files /dev/null and b/public/textures/twilightforest/skeleton_druid_spawn_egg.png differ diff --git a/public/textures/twilightforest/skull_chest.png b/public/textures/twilightforest/skull_chest.png new file mode 100644 index 00000000..3ac2bd33 Binary files /dev/null and b/public/textures/twilightforest/skull_chest.png differ diff --git a/public/textures/twilightforest/slime_beetle_spawn_egg.png b/public/textures/twilightforest/slime_beetle_spawn_egg.png new file mode 100644 index 00000000..cd94a064 Binary files /dev/null and b/public/textures/twilightforest/slime_beetle_spawn_egg.png differ diff --git a/public/textures/twilightforest/smoker.png b/public/textures/twilightforest/smoker.png new file mode 100644 index 00000000..79a67c25 Binary files /dev/null and b/public/textures/twilightforest/smoker.png differ diff --git a/public/textures/twilightforest/snow_guardian_spawn_egg.png b/public/textures/twilightforest/snow_guardian_spawn_egg.png new file mode 100644 index 00000000..e1032f40 Binary files /dev/null and b/public/textures/twilightforest/snow_guardian_spawn_egg.png differ diff --git a/public/textures/twilightforest/snow_queen_banner_pattern.png b/public/textures/twilightforest/snow_queen_banner_pattern.png new file mode 100644 index 00000000..bc4c0241 Binary files /dev/null and b/public/textures/twilightforest/snow_queen_banner_pattern.png differ diff --git a/public/textures/twilightforest/snow_queen_boss_spawner.png b/public/textures/twilightforest/snow_queen_boss_spawner.png new file mode 100644 index 00000000..5584d7d4 Binary files /dev/null and b/public/textures/twilightforest/snow_queen_boss_spawner.png differ diff --git a/public/textures/twilightforest/snow_queen_spawn_egg.png b/public/textures/twilightforest/snow_queen_spawn_egg.png new file mode 100644 index 00000000..9b8ee6ec Binary files /dev/null and b/public/textures/twilightforest/snow_queen_spawn_egg.png differ diff --git a/public/textures/twilightforest/snow_queen_trophy.png b/public/textures/twilightforest/snow_queen_trophy.png new file mode 100644 index 00000000..3a5d15c5 Binary files /dev/null and b/public/textures/twilightforest/snow_queen_trophy.png differ diff --git a/public/textures/twilightforest/snowy_cloud.png b/public/textures/twilightforest/snowy_cloud.png new file mode 100644 index 00000000..23978dc8 Binary files /dev/null and b/public/textures/twilightforest/snowy_cloud.png differ diff --git a/public/textures/twilightforest/sorting_banister.png b/public/textures/twilightforest/sorting_banister.png new file mode 100644 index 00000000..8cb751cc Binary files /dev/null and b/public/textures/twilightforest/sorting_banister.png differ diff --git a/public/textures/twilightforest/sorting_boat.png b/public/textures/twilightforest/sorting_boat.png new file mode 100644 index 00000000..8d7982e4 Binary files /dev/null and b/public/textures/twilightforest/sorting_boat.png differ diff --git a/public/textures/twilightforest/sorting_button.png b/public/textures/twilightforest/sorting_button.png new file mode 100644 index 00000000..9dabfc48 Binary files /dev/null and b/public/textures/twilightforest/sorting_button.png differ diff --git a/public/textures/twilightforest/sorting_chest.png b/public/textures/twilightforest/sorting_chest.png new file mode 100644 index 00000000..2ddc8233 Binary files /dev/null and b/public/textures/twilightforest/sorting_chest.png differ diff --git a/public/textures/twilightforest/sorting_chest_boat.png b/public/textures/twilightforest/sorting_chest_boat.png new file mode 100644 index 00000000..ce2e9a52 Binary files /dev/null and b/public/textures/twilightforest/sorting_chest_boat.png differ diff --git a/public/textures/twilightforest/sorting_door.png b/public/textures/twilightforest/sorting_door.png new file mode 100644 index 00000000..8508f757 Binary files /dev/null and b/public/textures/twilightforest/sorting_door.png differ diff --git a/public/textures/twilightforest/sorting_fence.png b/public/textures/twilightforest/sorting_fence.png new file mode 100644 index 00000000..3b7376ed Binary files /dev/null and b/public/textures/twilightforest/sorting_fence.png differ diff --git a/public/textures/twilightforest/sorting_fence_gate.png b/public/textures/twilightforest/sorting_fence_gate.png new file mode 100644 index 00000000..57f7087c Binary files /dev/null and b/public/textures/twilightforest/sorting_fence_gate.png differ diff --git a/public/textures/twilightforest/sorting_hanging_sign.png b/public/textures/twilightforest/sorting_hanging_sign.png new file mode 100644 index 00000000..bb760d48 Binary files /dev/null and b/public/textures/twilightforest/sorting_hanging_sign.png differ diff --git a/public/textures/twilightforest/sorting_leaves.png b/public/textures/twilightforest/sorting_leaves.png new file mode 100644 index 00000000..10b90ce1 Binary files /dev/null and b/public/textures/twilightforest/sorting_leaves.png differ diff --git a/public/textures/twilightforest/sorting_log.png b/public/textures/twilightforest/sorting_log.png new file mode 100644 index 00000000..f2a92359 Binary files /dev/null and b/public/textures/twilightforest/sorting_log.png differ diff --git a/public/textures/twilightforest/sorting_log_core.png b/public/textures/twilightforest/sorting_log_core.png new file mode 100644 index 00000000..01bd2906 Binary files /dev/null and b/public/textures/twilightforest/sorting_log_core.png differ diff --git a/public/textures/twilightforest/sorting_planks.png b/public/textures/twilightforest/sorting_planks.png new file mode 100644 index 00000000..ef7eca12 Binary files /dev/null and b/public/textures/twilightforest/sorting_planks.png differ diff --git a/public/textures/twilightforest/sorting_pressure_plate.png b/public/textures/twilightforest/sorting_pressure_plate.png new file mode 100644 index 00000000..3415af24 Binary files /dev/null and b/public/textures/twilightforest/sorting_pressure_plate.png differ diff --git a/public/textures/twilightforest/sorting_sapling.png b/public/textures/twilightforest/sorting_sapling.png new file mode 100644 index 00000000..623501b8 Binary files /dev/null and b/public/textures/twilightforest/sorting_sapling.png differ diff --git a/public/textures/twilightforest/sorting_sign.png b/public/textures/twilightforest/sorting_sign.png new file mode 100644 index 00000000..eba21fed Binary files /dev/null and b/public/textures/twilightforest/sorting_sign.png differ diff --git a/public/textures/twilightforest/sorting_slab.png b/public/textures/twilightforest/sorting_slab.png new file mode 100644 index 00000000..6915cbc8 Binary files /dev/null and b/public/textures/twilightforest/sorting_slab.png differ diff --git a/public/textures/twilightforest/sorting_stairs.png b/public/textures/twilightforest/sorting_stairs.png new file mode 100644 index 00000000..c2934fc7 Binary files /dev/null and b/public/textures/twilightforest/sorting_stairs.png differ diff --git a/public/textures/twilightforest/sorting_trapdoor.png b/public/textures/twilightforest/sorting_trapdoor.png new file mode 100644 index 00000000..993c0fab Binary files /dev/null and b/public/textures/twilightforest/sorting_trapdoor.png differ diff --git a/public/textures/twilightforest/sorting_trapped_chest.png b/public/textures/twilightforest/sorting_trapped_chest.png new file mode 100644 index 00000000..9dc08401 Binary files /dev/null and b/public/textures/twilightforest/sorting_trapped_chest.png differ diff --git a/public/textures/twilightforest/sorting_wood.png b/public/textures/twilightforest/sorting_wood.png new file mode 100644 index 00000000..748dc75f Binary files /dev/null and b/public/textures/twilightforest/sorting_wood.png differ diff --git a/public/textures/twilightforest/spiral_bricks.png b/public/textures/twilightforest/spiral_bricks.png new file mode 100644 index 00000000..e9ccce8e Binary files /dev/null and b/public/textures/twilightforest/spiral_bricks.png differ diff --git a/public/textures/twilightforest/spruce_banister.png b/public/textures/twilightforest/spruce_banister.png new file mode 100644 index 00000000..c01e6adb Binary files /dev/null and b/public/textures/twilightforest/spruce_banister.png differ diff --git a/public/textures/twilightforest/squirrel_spawn_egg.png b/public/textures/twilightforest/squirrel_spawn_egg.png new file mode 100644 index 00000000..1a1dcef9 Binary files /dev/null and b/public/textures/twilightforest/squirrel_spawn_egg.png differ diff --git a/public/textures/twilightforest/stable_ice_core_spawn_egg.png b/public/textures/twilightforest/stable_ice_core_spawn_egg.png new file mode 100644 index 00000000..7dcdebcd Binary files /dev/null and b/public/textures/twilightforest/stable_ice_core_spawn_egg.png differ diff --git a/public/textures/twilightforest/steeleaf_axe.png b/public/textures/twilightforest/steeleaf_axe.png new file mode 100644 index 00000000..518a76aa Binary files /dev/null and b/public/textures/twilightforest/steeleaf_axe.png differ diff --git a/public/textures/twilightforest/steeleaf_block.png b/public/textures/twilightforest/steeleaf_block.png new file mode 100644 index 00000000..d7a66e2f Binary files /dev/null and b/public/textures/twilightforest/steeleaf_block.png differ diff --git a/public/textures/twilightforest/steeleaf_boots.png b/public/textures/twilightforest/steeleaf_boots.png new file mode 100644 index 00000000..b70226f5 Binary files /dev/null and b/public/textures/twilightforest/steeleaf_boots.png differ diff --git a/public/textures/twilightforest/steeleaf_chestplate.png b/public/textures/twilightforest/steeleaf_chestplate.png new file mode 100644 index 00000000..365604a8 Binary files /dev/null and b/public/textures/twilightforest/steeleaf_chestplate.png differ diff --git a/public/textures/twilightforest/steeleaf_helmet.png b/public/textures/twilightforest/steeleaf_helmet.png new file mode 100644 index 00000000..e0ad4904 Binary files /dev/null and b/public/textures/twilightforest/steeleaf_helmet.png differ diff --git a/public/textures/twilightforest/steeleaf_hoe.png b/public/textures/twilightforest/steeleaf_hoe.png new file mode 100644 index 00000000..d1384485 Binary files /dev/null and b/public/textures/twilightforest/steeleaf_hoe.png differ diff --git a/public/textures/twilightforest/steeleaf_ingot.png b/public/textures/twilightforest/steeleaf_ingot.png new file mode 100644 index 00000000..67142452 Binary files /dev/null and b/public/textures/twilightforest/steeleaf_ingot.png differ diff --git a/public/textures/twilightforest/steeleaf_leggings.png b/public/textures/twilightforest/steeleaf_leggings.png new file mode 100644 index 00000000..18458dee Binary files /dev/null and b/public/textures/twilightforest/steeleaf_leggings.png differ diff --git a/public/textures/twilightforest/steeleaf_pickaxe.png b/public/textures/twilightforest/steeleaf_pickaxe.png new file mode 100644 index 00000000..ebd586d3 Binary files /dev/null and b/public/textures/twilightforest/steeleaf_pickaxe.png differ diff --git a/public/textures/twilightforest/steeleaf_shovel.png b/public/textures/twilightforest/steeleaf_shovel.png new file mode 100644 index 00000000..c4131e99 Binary files /dev/null and b/public/textures/twilightforest/steeleaf_shovel.png differ diff --git a/public/textures/twilightforest/steeleaf_sword.png b/public/textures/twilightforest/steeleaf_sword.png new file mode 100644 index 00000000..bb3ced8c Binary files /dev/null and b/public/textures/twilightforest/steeleaf_sword.png differ diff --git a/public/textures/twilightforest/stripped_canopy_log.png b/public/textures/twilightforest/stripped_canopy_log.png new file mode 100644 index 00000000..29cdf18b Binary files /dev/null and b/public/textures/twilightforest/stripped_canopy_log.png differ diff --git a/public/textures/twilightforest/stripped_canopy_wood.png b/public/textures/twilightforest/stripped_canopy_wood.png new file mode 100644 index 00000000..168f7e05 Binary files /dev/null and b/public/textures/twilightforest/stripped_canopy_wood.png differ diff --git a/public/textures/twilightforest/stripped_dark_log.png b/public/textures/twilightforest/stripped_dark_log.png new file mode 100644 index 00000000..8d3d78de Binary files /dev/null and b/public/textures/twilightforest/stripped_dark_log.png differ diff --git a/public/textures/twilightforest/stripped_dark_wood.png b/public/textures/twilightforest/stripped_dark_wood.png new file mode 100644 index 00000000..99ac29fd Binary files /dev/null and b/public/textures/twilightforest/stripped_dark_wood.png differ diff --git a/public/textures/twilightforest/stripped_mangrove_log.png b/public/textures/twilightforest/stripped_mangrove_log.png new file mode 100644 index 00000000..26ee20a8 Binary files /dev/null and b/public/textures/twilightforest/stripped_mangrove_log.png differ diff --git a/public/textures/twilightforest/stripped_mangrove_wood.png b/public/textures/twilightforest/stripped_mangrove_wood.png new file mode 100644 index 00000000..820d9332 Binary files /dev/null and b/public/textures/twilightforest/stripped_mangrove_wood.png differ diff --git a/public/textures/twilightforest/stripped_mining_log.png b/public/textures/twilightforest/stripped_mining_log.png new file mode 100644 index 00000000..c8271591 Binary files /dev/null and b/public/textures/twilightforest/stripped_mining_log.png differ diff --git a/public/textures/twilightforest/stripped_mining_wood.png b/public/textures/twilightforest/stripped_mining_wood.png new file mode 100644 index 00000000..c84e61f9 Binary files /dev/null and b/public/textures/twilightforest/stripped_mining_wood.png differ diff --git a/public/textures/twilightforest/stripped_sorting_log.png b/public/textures/twilightforest/stripped_sorting_log.png new file mode 100644 index 00000000..09d4ad3e Binary files /dev/null and b/public/textures/twilightforest/stripped_sorting_log.png differ diff --git a/public/textures/twilightforest/stripped_sorting_wood.png b/public/textures/twilightforest/stripped_sorting_wood.png new file mode 100644 index 00000000..948aa9ad Binary files /dev/null and b/public/textures/twilightforest/stripped_sorting_wood.png differ diff --git a/public/textures/twilightforest/stripped_time_log.png b/public/textures/twilightforest/stripped_time_log.png new file mode 100644 index 00000000..84b72cad Binary files /dev/null and b/public/textures/twilightforest/stripped_time_log.png differ diff --git a/public/textures/twilightforest/stripped_time_wood.png b/public/textures/twilightforest/stripped_time_wood.png new file mode 100644 index 00000000..d37a7d5f Binary files /dev/null and b/public/textures/twilightforest/stripped_time_wood.png differ diff --git a/public/textures/twilightforest/stripped_transformation_log.png b/public/textures/twilightforest/stripped_transformation_log.png new file mode 100644 index 00000000..a56938da Binary files /dev/null and b/public/textures/twilightforest/stripped_transformation_log.png differ diff --git a/public/textures/twilightforest/stripped_transformation_wood.png b/public/textures/twilightforest/stripped_transformation_wood.png new file mode 100644 index 00000000..70c600dc Binary files /dev/null and b/public/textures/twilightforest/stripped_transformation_wood.png differ diff --git a/public/textures/twilightforest/stripped_twilight_oak_log.png b/public/textures/twilightforest/stripped_twilight_oak_log.png new file mode 100644 index 00000000..4193c6c8 Binary files /dev/null and b/public/textures/twilightforest/stripped_twilight_oak_log.png differ diff --git a/public/textures/twilightforest/stripped_twilight_oak_wood.png b/public/textures/twilightforest/stripped_twilight_oak_wood.png new file mode 100644 index 00000000..20aba684 Binary files /dev/null and b/public/textures/twilightforest/stripped_twilight_oak_wood.png differ diff --git a/public/textures/twilightforest/stronghold_shield.png b/public/textures/twilightforest/stronghold_shield.png new file mode 100644 index 00000000..f284d4f0 Binary files /dev/null and b/public/textures/twilightforest/stronghold_shield.png differ diff --git a/public/textures/twilightforest/swarm_spider_spawn_egg.png b/public/textures/twilightforest/swarm_spider_spawn_egg.png new file mode 100644 index 00000000..482882a2 Binary files /dev/null and b/public/textures/twilightforest/swarm_spider_spawn_egg.png differ diff --git a/public/textures/twilightforest/terrorcotta_arcs.png b/public/textures/twilightforest/terrorcotta_arcs.png new file mode 100644 index 00000000..de5600e3 Binary files /dev/null and b/public/textures/twilightforest/terrorcotta_arcs.png differ diff --git a/public/textures/twilightforest/terrorcotta_curves.png b/public/textures/twilightforest/terrorcotta_curves.png new file mode 100644 index 00000000..5f1f9adc Binary files /dev/null and b/public/textures/twilightforest/terrorcotta_curves.png differ diff --git a/public/textures/twilightforest/terrorcotta_lines.png b/public/textures/twilightforest/terrorcotta_lines.png new file mode 100644 index 00000000..85d1b536 Binary files /dev/null and b/public/textures/twilightforest/terrorcotta_lines.png differ diff --git a/public/textures/twilightforest/thick_castle_brick.png b/public/textures/twilightforest/thick_castle_brick.png new file mode 100644 index 00000000..d1558c7a Binary files /dev/null and b/public/textures/twilightforest/thick_castle_brick.png differ diff --git a/public/textures/twilightforest/thorn_leaves.png b/public/textures/twilightforest/thorn_leaves.png new file mode 100644 index 00000000..427c76c6 Binary files /dev/null and b/public/textures/twilightforest/thorn_leaves.png differ diff --git a/public/textures/twilightforest/thorn_rose.png b/public/textures/twilightforest/thorn_rose.png new file mode 100644 index 00000000..48d24167 Binary files /dev/null and b/public/textures/twilightforest/thorn_rose.png differ diff --git a/public/textures/twilightforest/time_banister.png b/public/textures/twilightforest/time_banister.png new file mode 100644 index 00000000..0c82258e Binary files /dev/null and b/public/textures/twilightforest/time_banister.png differ diff --git a/public/textures/twilightforest/time_boat.png b/public/textures/twilightforest/time_boat.png new file mode 100644 index 00000000..06f3d489 Binary files /dev/null and b/public/textures/twilightforest/time_boat.png differ diff --git a/public/textures/twilightforest/time_button.png b/public/textures/twilightforest/time_button.png new file mode 100644 index 00000000..e901d92b Binary files /dev/null and b/public/textures/twilightforest/time_button.png differ diff --git a/public/textures/twilightforest/time_chest.png b/public/textures/twilightforest/time_chest.png new file mode 100644 index 00000000..7ca6b5f1 Binary files /dev/null and b/public/textures/twilightforest/time_chest.png differ diff --git a/public/textures/twilightforest/time_chest_boat.png b/public/textures/twilightforest/time_chest_boat.png new file mode 100644 index 00000000..28861f57 Binary files /dev/null and b/public/textures/twilightforest/time_chest_boat.png differ diff --git a/public/textures/twilightforest/time_door.png b/public/textures/twilightforest/time_door.png new file mode 100644 index 00000000..a2686197 Binary files /dev/null and b/public/textures/twilightforest/time_door.png differ diff --git a/public/textures/twilightforest/time_fence.png b/public/textures/twilightforest/time_fence.png new file mode 100644 index 00000000..8c5f3e91 Binary files /dev/null and b/public/textures/twilightforest/time_fence.png differ diff --git a/public/textures/twilightforest/time_fence_gate.png b/public/textures/twilightforest/time_fence_gate.png new file mode 100644 index 00000000..7282b01f Binary files /dev/null and b/public/textures/twilightforest/time_fence_gate.png differ diff --git a/public/textures/twilightforest/time_hanging_sign.png b/public/textures/twilightforest/time_hanging_sign.png new file mode 100644 index 00000000..6afddf83 Binary files /dev/null and b/public/textures/twilightforest/time_hanging_sign.png differ diff --git a/public/textures/twilightforest/time_leaves.png b/public/textures/twilightforest/time_leaves.png new file mode 100644 index 00000000..4957dedd Binary files /dev/null and b/public/textures/twilightforest/time_leaves.png differ diff --git a/public/textures/twilightforest/time_log.png b/public/textures/twilightforest/time_log.png new file mode 100644 index 00000000..02fe6fa1 Binary files /dev/null and b/public/textures/twilightforest/time_log.png differ diff --git a/public/textures/twilightforest/time_log_core.png b/public/textures/twilightforest/time_log_core.png new file mode 100644 index 00000000..c5b7e98e Binary files /dev/null and b/public/textures/twilightforest/time_log_core.png differ diff --git a/public/textures/twilightforest/time_planks.png b/public/textures/twilightforest/time_planks.png new file mode 100644 index 00000000..27b99fa2 Binary files /dev/null and b/public/textures/twilightforest/time_planks.png differ diff --git a/public/textures/twilightforest/time_pressure_plate.png b/public/textures/twilightforest/time_pressure_plate.png new file mode 100644 index 00000000..351e7cf9 Binary files /dev/null and b/public/textures/twilightforest/time_pressure_plate.png differ diff --git a/public/textures/twilightforest/time_sapling.png b/public/textures/twilightforest/time_sapling.png new file mode 100644 index 00000000..b13733e1 Binary files /dev/null and b/public/textures/twilightforest/time_sapling.png differ diff --git a/public/textures/twilightforest/time_sign.png b/public/textures/twilightforest/time_sign.png new file mode 100644 index 00000000..3557ab6a Binary files /dev/null and b/public/textures/twilightforest/time_sign.png differ diff --git a/public/textures/twilightforest/time_slab.png b/public/textures/twilightforest/time_slab.png new file mode 100644 index 00000000..6f2819df Binary files /dev/null and b/public/textures/twilightforest/time_slab.png differ diff --git a/public/textures/twilightforest/time_stairs.png b/public/textures/twilightforest/time_stairs.png new file mode 100644 index 00000000..e1d87147 Binary files /dev/null and b/public/textures/twilightforest/time_stairs.png differ diff --git a/public/textures/twilightforest/time_trapdoor.png b/public/textures/twilightforest/time_trapdoor.png new file mode 100644 index 00000000..741bc42f Binary files /dev/null and b/public/textures/twilightforest/time_trapdoor.png differ diff --git a/public/textures/twilightforest/time_trapped_chest.png b/public/textures/twilightforest/time_trapped_chest.png new file mode 100644 index 00000000..67b595e8 Binary files /dev/null and b/public/textures/twilightforest/time_trapped_chest.png differ diff --git a/public/textures/twilightforest/time_wood.png b/public/textures/twilightforest/time_wood.png new file mode 100644 index 00000000..eb3da28a Binary files /dev/null and b/public/textures/twilightforest/time_wood.png differ diff --git a/public/textures/twilightforest/tiny_bird_spawn_egg.png b/public/textures/twilightforest/tiny_bird_spawn_egg.png new file mode 100644 index 00000000..24e61f84 Binary files /dev/null and b/public/textures/twilightforest/tiny_bird_spawn_egg.png differ diff --git a/public/textures/twilightforest/torchberries.png b/public/textures/twilightforest/torchberries.png new file mode 100644 index 00000000..a1947522 Binary files /dev/null and b/public/textures/twilightforest/torchberries.png differ diff --git a/public/textures/twilightforest/torchberry_plant.png b/public/textures/twilightforest/torchberry_plant.png new file mode 100644 index 00000000..13d496c0 Binary files /dev/null and b/public/textures/twilightforest/torchberry_plant.png differ diff --git a/public/textures/twilightforest/tower_key.png b/public/textures/twilightforest/tower_key.png new file mode 100644 index 00000000..3616d9da Binary files /dev/null and b/public/textures/twilightforest/tower_key.png differ diff --git a/public/textures/twilightforest/towerwood.png b/public/textures/twilightforest/towerwood.png new file mode 100644 index 00000000..7616abd5 Binary files /dev/null and b/public/textures/twilightforest/towerwood.png differ diff --git a/public/textures/twilightforest/towerwood_borer_spawn_egg.png b/public/textures/twilightforest/towerwood_borer_spawn_egg.png new file mode 100644 index 00000000..4ac64122 Binary files /dev/null and b/public/textures/twilightforest/towerwood_borer_spawn_egg.png differ diff --git a/public/textures/twilightforest/transformation_banister.png b/public/textures/twilightforest/transformation_banister.png new file mode 100644 index 00000000..f51f8a70 Binary files /dev/null and b/public/textures/twilightforest/transformation_banister.png differ diff --git a/public/textures/twilightforest/transformation_boat.png b/public/textures/twilightforest/transformation_boat.png new file mode 100644 index 00000000..9c1006ba Binary files /dev/null and b/public/textures/twilightforest/transformation_boat.png differ diff --git a/public/textures/twilightforest/transformation_button.png b/public/textures/twilightforest/transformation_button.png new file mode 100644 index 00000000..999f6b0a Binary files /dev/null and b/public/textures/twilightforest/transformation_button.png differ diff --git a/public/textures/twilightforest/transformation_chest.png b/public/textures/twilightforest/transformation_chest.png new file mode 100644 index 00000000..6bfb3631 Binary files /dev/null and b/public/textures/twilightforest/transformation_chest.png differ diff --git a/public/textures/twilightforest/transformation_chest_boat.png b/public/textures/twilightforest/transformation_chest_boat.png new file mode 100644 index 00000000..808e0dc2 Binary files /dev/null and b/public/textures/twilightforest/transformation_chest_boat.png differ diff --git a/public/textures/twilightforest/transformation_door.png b/public/textures/twilightforest/transformation_door.png new file mode 100644 index 00000000..b5a6795c Binary files /dev/null and b/public/textures/twilightforest/transformation_door.png differ diff --git a/public/textures/twilightforest/transformation_fence.png b/public/textures/twilightforest/transformation_fence.png new file mode 100644 index 00000000..475d976c Binary files /dev/null and b/public/textures/twilightforest/transformation_fence.png differ diff --git a/public/textures/twilightforest/transformation_fence_gate.png b/public/textures/twilightforest/transformation_fence_gate.png new file mode 100644 index 00000000..71180648 Binary files /dev/null and b/public/textures/twilightforest/transformation_fence_gate.png differ diff --git a/public/textures/twilightforest/transformation_hanging_sign.png b/public/textures/twilightforest/transformation_hanging_sign.png new file mode 100644 index 00000000..c3adb21f Binary files /dev/null and b/public/textures/twilightforest/transformation_hanging_sign.png differ diff --git a/public/textures/twilightforest/transformation_leaves.png b/public/textures/twilightforest/transformation_leaves.png new file mode 100644 index 00000000..332c10f5 Binary files /dev/null and b/public/textures/twilightforest/transformation_leaves.png differ diff --git a/public/textures/twilightforest/transformation_log.png b/public/textures/twilightforest/transformation_log.png new file mode 100644 index 00000000..e646bf55 Binary files /dev/null and b/public/textures/twilightforest/transformation_log.png differ diff --git a/public/textures/twilightforest/transformation_log_core.png b/public/textures/twilightforest/transformation_log_core.png new file mode 100644 index 00000000..75ddde82 Binary files /dev/null and b/public/textures/twilightforest/transformation_log_core.png differ diff --git a/public/textures/twilightforest/transformation_planks.png b/public/textures/twilightforest/transformation_planks.png new file mode 100644 index 00000000..34717699 Binary files /dev/null and b/public/textures/twilightforest/transformation_planks.png differ diff --git a/public/textures/twilightforest/transformation_powder.png b/public/textures/twilightforest/transformation_powder.png new file mode 100644 index 00000000..de491329 Binary files /dev/null and b/public/textures/twilightforest/transformation_powder.png differ diff --git a/public/textures/twilightforest/transformation_pressure_plate.png b/public/textures/twilightforest/transformation_pressure_plate.png new file mode 100644 index 00000000..c424f65a Binary files /dev/null and b/public/textures/twilightforest/transformation_pressure_plate.png differ diff --git a/public/textures/twilightforest/transformation_sapling.png b/public/textures/twilightforest/transformation_sapling.png new file mode 100644 index 00000000..a09275d6 Binary files /dev/null and b/public/textures/twilightforest/transformation_sapling.png differ diff --git a/public/textures/twilightforest/transformation_sign.png b/public/textures/twilightforest/transformation_sign.png new file mode 100644 index 00000000..40efca92 Binary files /dev/null and b/public/textures/twilightforest/transformation_sign.png differ diff --git a/public/textures/twilightforest/transformation_slab.png b/public/textures/twilightforest/transformation_slab.png new file mode 100644 index 00000000..488b24d6 Binary files /dev/null and b/public/textures/twilightforest/transformation_slab.png differ diff --git a/public/textures/twilightforest/transformation_stairs.png b/public/textures/twilightforest/transformation_stairs.png new file mode 100644 index 00000000..c01c4ae6 Binary files /dev/null and b/public/textures/twilightforest/transformation_stairs.png differ diff --git a/public/textures/twilightforest/transformation_trapdoor.png b/public/textures/twilightforest/transformation_trapdoor.png new file mode 100644 index 00000000..d153d0c9 Binary files /dev/null and b/public/textures/twilightforest/transformation_trapdoor.png differ diff --git a/public/textures/twilightforest/transformation_trapped_chest.png b/public/textures/twilightforest/transformation_trapped_chest.png new file mode 100644 index 00000000..add85b17 Binary files /dev/null and b/public/textures/twilightforest/transformation_trapped_chest.png differ diff --git a/public/textures/twilightforest/transformation_wood.png b/public/textures/twilightforest/transformation_wood.png new file mode 100644 index 00000000..a3b5affb Binary files /dev/null and b/public/textures/twilightforest/transformation_wood.png differ diff --git a/public/textures/twilightforest/triple_bow.png b/public/textures/twilightforest/triple_bow.png new file mode 100644 index 00000000..0616d6eb Binary files /dev/null and b/public/textures/twilightforest/triple_bow.png differ diff --git a/public/textures/twilightforest/troll_spawn_egg.png b/public/textures/twilightforest/troll_spawn_egg.png new file mode 100644 index 00000000..004df426 Binary files /dev/null and b/public/textures/twilightforest/troll_spawn_egg.png differ diff --git a/public/textures/twilightforest/trollber.png b/public/textures/twilightforest/trollber.png new file mode 100644 index 00000000..54745b26 Binary files /dev/null and b/public/textures/twilightforest/trollber.png differ diff --git a/public/textures/twilightforest/trollsteinn.png b/public/textures/twilightforest/trollsteinn.png new file mode 100644 index 00000000..73c2d9be Binary files /dev/null and b/public/textures/twilightforest/trollsteinn.png differ diff --git a/public/textures/twilightforest/trollvidr.png b/public/textures/twilightforest/trollvidr.png new file mode 100644 index 00000000..81cb77f3 Binary files /dev/null and b/public/textures/twilightforest/trollvidr.png differ diff --git a/public/textures/twilightforest/trophy_pedestal.png b/public/textures/twilightforest/trophy_pedestal.png new file mode 100644 index 00000000..aa48c443 Binary files /dev/null and b/public/textures/twilightforest/trophy_pedestal.png differ diff --git a/public/textures/twilightforest/twilight_oak_banister.png b/public/textures/twilightforest/twilight_oak_banister.png new file mode 100644 index 00000000..77f6e0af Binary files /dev/null and b/public/textures/twilightforest/twilight_oak_banister.png differ diff --git a/public/textures/twilightforest/twilight_oak_boat.png b/public/textures/twilightforest/twilight_oak_boat.png new file mode 100644 index 00000000..310def48 Binary files /dev/null and b/public/textures/twilightforest/twilight_oak_boat.png differ diff --git a/public/textures/twilightforest/twilight_oak_button.png b/public/textures/twilightforest/twilight_oak_button.png new file mode 100644 index 00000000..e2a56fe0 Binary files /dev/null and b/public/textures/twilightforest/twilight_oak_button.png differ diff --git a/public/textures/twilightforest/twilight_oak_chest.png b/public/textures/twilightforest/twilight_oak_chest.png new file mode 100644 index 00000000..6a5cc588 Binary files /dev/null and b/public/textures/twilightforest/twilight_oak_chest.png differ diff --git a/public/textures/twilightforest/twilight_oak_chest_boat.png b/public/textures/twilightforest/twilight_oak_chest_boat.png new file mode 100644 index 00000000..012723e2 Binary files /dev/null and b/public/textures/twilightforest/twilight_oak_chest_boat.png differ diff --git a/public/textures/twilightforest/twilight_oak_door.png b/public/textures/twilightforest/twilight_oak_door.png new file mode 100644 index 00000000..766e32b7 Binary files /dev/null and b/public/textures/twilightforest/twilight_oak_door.png differ diff --git a/public/textures/twilightforest/twilight_oak_fence.png b/public/textures/twilightforest/twilight_oak_fence.png new file mode 100644 index 00000000..7134455c Binary files /dev/null and b/public/textures/twilightforest/twilight_oak_fence.png differ diff --git a/public/textures/twilightforest/twilight_oak_fence_gate.png b/public/textures/twilightforest/twilight_oak_fence_gate.png new file mode 100644 index 00000000..005a4bc8 Binary files /dev/null and b/public/textures/twilightforest/twilight_oak_fence_gate.png differ diff --git a/public/textures/twilightforest/twilight_oak_hanging_sign.png b/public/textures/twilightforest/twilight_oak_hanging_sign.png new file mode 100644 index 00000000..84f896b4 Binary files /dev/null and b/public/textures/twilightforest/twilight_oak_hanging_sign.png differ diff --git a/public/textures/twilightforest/twilight_oak_leaves.png b/public/textures/twilightforest/twilight_oak_leaves.png new file mode 100644 index 00000000..b8faccf1 Binary files /dev/null and b/public/textures/twilightforest/twilight_oak_leaves.png differ diff --git a/public/textures/twilightforest/twilight_oak_log.png b/public/textures/twilightforest/twilight_oak_log.png new file mode 100644 index 00000000..f4e4a988 Binary files /dev/null and b/public/textures/twilightforest/twilight_oak_log.png differ diff --git a/public/textures/twilightforest/twilight_oak_planks.png b/public/textures/twilightforest/twilight_oak_planks.png new file mode 100644 index 00000000..901a8b23 Binary files /dev/null and b/public/textures/twilightforest/twilight_oak_planks.png differ diff --git a/public/textures/twilightforest/twilight_oak_pressure_plate.png b/public/textures/twilightforest/twilight_oak_pressure_plate.png new file mode 100644 index 00000000..5de9eda1 Binary files /dev/null and b/public/textures/twilightforest/twilight_oak_pressure_plate.png differ diff --git a/public/textures/twilightforest/twilight_oak_sapling.png b/public/textures/twilightforest/twilight_oak_sapling.png new file mode 100644 index 00000000..8e13b217 Binary files /dev/null and b/public/textures/twilightforest/twilight_oak_sapling.png differ diff --git a/public/textures/twilightforest/twilight_oak_sign.png b/public/textures/twilightforest/twilight_oak_sign.png new file mode 100644 index 00000000..d4b306d2 Binary files /dev/null and b/public/textures/twilightforest/twilight_oak_sign.png differ diff --git a/public/textures/twilightforest/twilight_oak_slab.png b/public/textures/twilightforest/twilight_oak_slab.png new file mode 100644 index 00000000..2edefbac Binary files /dev/null and b/public/textures/twilightforest/twilight_oak_slab.png differ diff --git a/public/textures/twilightforest/twilight_oak_stairs.png b/public/textures/twilightforest/twilight_oak_stairs.png new file mode 100644 index 00000000..351a302b Binary files /dev/null and b/public/textures/twilightforest/twilight_oak_stairs.png differ diff --git a/public/textures/twilightforest/twilight_oak_trapdoor.png b/public/textures/twilightforest/twilight_oak_trapdoor.png new file mode 100644 index 00000000..137cbca8 Binary files /dev/null and b/public/textures/twilightforest/twilight_oak_trapdoor.png differ diff --git a/public/textures/twilightforest/twilight_oak_trapped_chest.png b/public/textures/twilightforest/twilight_oak_trapped_chest.png new file mode 100644 index 00000000..b5da4b4b Binary files /dev/null and b/public/textures/twilightforest/twilight_oak_trapped_chest.png differ diff --git a/public/textures/twilightforest/twilight_oak_wood.png b/public/textures/twilightforest/twilight_oak_wood.png new file mode 100644 index 00000000..9d1a4697 Binary files /dev/null and b/public/textures/twilightforest/twilight_oak_wood.png differ diff --git a/public/textures/twilightforest/twilight_scepter.png b/public/textures/twilightforest/twilight_scepter.png new file mode 100644 index 00000000..5fac54e1 Binary files /dev/null and b/public/textures/twilightforest/twilight_scepter.png differ diff --git a/public/textures/twilightforest/twisted_stone.png b/public/textures/twilightforest/twisted_stone.png new file mode 100644 index 00000000..8994ae43 Binary files /dev/null and b/public/textures/twilightforest/twisted_stone.png differ diff --git a/public/textures/twilightforest/twisted_stone_pillar.png b/public/textures/twilightforest/twisted_stone_pillar.png new file mode 100644 index 00000000..f89ef22e Binary files /dev/null and b/public/textures/twilightforest/twisted_stone_pillar.png differ diff --git a/public/textures/twilightforest/uberous_soil.png b/public/textures/twilightforest/uberous_soil.png new file mode 100644 index 00000000..14eaa26e Binary files /dev/null and b/public/textures/twilightforest/uberous_soil.png differ diff --git a/public/textures/twilightforest/uncrafting_table.png b/public/textures/twilightforest/uncrafting_table.png new file mode 100644 index 00000000..c88db952 Binary files /dev/null and b/public/textures/twilightforest/uncrafting_table.png differ diff --git a/public/textures/twilightforest/underbrick.png b/public/textures/twilightforest/underbrick.png new file mode 100644 index 00000000..ad0d8fab Binary files /dev/null and b/public/textures/twilightforest/underbrick.png differ diff --git a/public/textures/twilightforest/underbrick_floor.png b/public/textures/twilightforest/underbrick_floor.png new file mode 100644 index 00000000..9a89bd87 Binary files /dev/null and b/public/textures/twilightforest/underbrick_floor.png differ diff --git a/public/textures/twilightforest/unripe_trollber.png b/public/textures/twilightforest/unripe_trollber.png new file mode 100644 index 00000000..2353c2e5 Binary files /dev/null and b/public/textures/twilightforest/unripe_trollber.png differ diff --git a/public/textures/twilightforest/unstable_ice_core_spawn_egg.png b/public/textures/twilightforest/unstable_ice_core_spawn_egg.png new file mode 100644 index 00000000..369b261a Binary files /dev/null and b/public/textures/twilightforest/unstable_ice_core_spawn_egg.png differ diff --git a/public/textures/twilightforest/ur_ghast_banner_pattern.png b/public/textures/twilightforest/ur_ghast_banner_pattern.png new file mode 100644 index 00000000..bc4c0241 Binary files /dev/null and b/public/textures/twilightforest/ur_ghast_banner_pattern.png differ diff --git a/public/textures/twilightforest/ur_ghast_boss_spawner.png b/public/textures/twilightforest/ur_ghast_boss_spawner.png new file mode 100644 index 00000000..5584d7d4 Binary files /dev/null and b/public/textures/twilightforest/ur_ghast_boss_spawner.png differ diff --git a/public/textures/twilightforest/ur_ghast_spawn_egg.png b/public/textures/twilightforest/ur_ghast_spawn_egg.png new file mode 100644 index 00000000..4d1a5bb1 Binary files /dev/null and b/public/textures/twilightforest/ur_ghast_spawn_egg.png differ diff --git a/public/textures/twilightforest/ur_ghast_trophy.png b/public/textures/twilightforest/ur_ghast_trophy.png new file mode 100644 index 00000000..084283a0 Binary files /dev/null and b/public/textures/twilightforest/ur_ghast_trophy.png differ diff --git a/public/textures/twilightforest/vangrove_banister.png b/public/textures/twilightforest/vangrove_banister.png new file mode 100644 index 00000000..8bd72061 Binary files /dev/null and b/public/textures/twilightforest/vangrove_banister.png differ diff --git a/public/textures/twilightforest/vanishing_block.png b/public/textures/twilightforest/vanishing_block.png new file mode 100644 index 00000000..e92f0122 Binary files /dev/null and b/public/textures/twilightforest/vanishing_block.png differ diff --git a/public/textures/twilightforest/violet_castle_door.png b/public/textures/twilightforest/violet_castle_door.png new file mode 100644 index 00000000..7ac38b63 Binary files /dev/null and b/public/textures/twilightforest/violet_castle_door.png differ diff --git a/public/textures/twilightforest/violet_castle_rune_brick.png b/public/textures/twilightforest/violet_castle_rune_brick.png new file mode 100644 index 00000000..7183ea32 Binary files /dev/null and b/public/textures/twilightforest/violet_castle_rune_brick.png differ diff --git a/public/textures/twilightforest/violet_force_field.png b/public/textures/twilightforest/violet_force_field.png new file mode 100644 index 00000000..6ce565de Binary files /dev/null and b/public/textures/twilightforest/violet_force_field.png differ diff --git a/public/textures/twilightforest/warped_banister.png b/public/textures/twilightforest/warped_banister.png new file mode 100644 index 00000000..58c491aa Binary files /dev/null and b/public/textures/twilightforest/warped_banister.png differ diff --git a/public/textures/twilightforest/weathered_deadrock.png b/public/textures/twilightforest/weathered_deadrock.png new file mode 100644 index 00000000..2179e1c3 Binary files /dev/null and b/public/textures/twilightforest/weathered_deadrock.png differ diff --git a/public/textures/twilightforest/winter_wolf_spawn_egg.png b/public/textures/twilightforest/winter_wolf_spawn_egg.png new file mode 100644 index 00000000..e578e1ab Binary files /dev/null and b/public/textures/twilightforest/winter_wolf_spawn_egg.png differ diff --git a/public/textures/twilightforest/wispy_cloud.png b/public/textures/twilightforest/wispy_cloud.png new file mode 100644 index 00000000..2c8e6c0f Binary files /dev/null and b/public/textures/twilightforest/wispy_cloud.png differ diff --git a/public/textures/twilightforest/worn_castle_brick.png b/public/textures/twilightforest/worn_castle_brick.png new file mode 100644 index 00000000..327f7f39 Binary files /dev/null and b/public/textures/twilightforest/worn_castle_brick.png differ diff --git a/public/textures/twilightforest/worn_castle_brick_stairs.png b/public/textures/twilightforest/worn_castle_brick_stairs.png new file mode 100644 index 00000000..3cf1a34a Binary files /dev/null and b/public/textures/twilightforest/worn_castle_brick_stairs.png differ diff --git a/public/textures/twilightforest/wraith_spawn_egg.png b/public/textures/twilightforest/wraith_spawn_egg.png new file mode 100644 index 00000000..b4f27209 Binary files /dev/null and b/public/textures/twilightforest/wraith_spawn_egg.png differ diff --git a/public/textures/twilightforest/wrought_iron_bar.png b/public/textures/twilightforest/wrought_iron_bar.png new file mode 100644 index 00000000..28f2b84e Binary files /dev/null and b/public/textures/twilightforest/wrought_iron_bar.png differ diff --git a/public/textures/twilightforest/wrought_iron_fence.png b/public/textures/twilightforest/wrought_iron_fence.png new file mode 100644 index 00000000..1878a2b5 Binary files /dev/null and b/public/textures/twilightforest/wrought_iron_fence.png differ diff --git a/public/textures/twilightforest/yellow_castle_door.png b/public/textures/twilightforest/yellow_castle_door.png new file mode 100644 index 00000000..f390e7a7 Binary files /dev/null and b/public/textures/twilightforest/yellow_castle_door.png differ diff --git a/public/textures/twilightforest/yellow_castle_rune_brick.png b/public/textures/twilightforest/yellow_castle_rune_brick.png new file mode 100644 index 00000000..70b1d725 Binary files /dev/null and b/public/textures/twilightforest/yellow_castle_rune_brick.png differ diff --git a/public/textures/twilightforest/yeti_boots.png b/public/textures/twilightforest/yeti_boots.png new file mode 100644 index 00000000..6a080bc6 Binary files /dev/null and b/public/textures/twilightforest/yeti_boots.png differ diff --git a/public/textures/twilightforest/yeti_chestplate.png b/public/textures/twilightforest/yeti_chestplate.png new file mode 100644 index 00000000..47eb4fbe Binary files /dev/null and b/public/textures/twilightforest/yeti_chestplate.png differ diff --git a/public/textures/twilightforest/yeti_helmet.png b/public/textures/twilightforest/yeti_helmet.png new file mode 100644 index 00000000..4e197a30 Binary files /dev/null and b/public/textures/twilightforest/yeti_helmet.png differ diff --git a/public/textures/twilightforest/yeti_leggings.png b/public/textures/twilightforest/yeti_leggings.png new file mode 100644 index 00000000..b938febf Binary files /dev/null and b/public/textures/twilightforest/yeti_leggings.png differ diff --git a/public/textures/twilightforest/yeti_spawn_egg.png b/public/textures/twilightforest/yeti_spawn_egg.png new file mode 100644 index 00000000..abc425a3 Binary files /dev/null and b/public/textures/twilightforest/yeti_spawn_egg.png differ diff --git a/public/textures/twilightforest/zombie_scepter.png b/public/textures/twilightforest/zombie_scepter.png new file mode 100644 index 00000000..73b9e80f Binary files /dev/null and b/public/textures/twilightforest/zombie_scepter.png differ diff --git a/public/textures/vanillabackport/black_harness.png b/public/textures/vanillabackport/black_harness.png new file mode 100644 index 00000000..66ab5f99 Binary files /dev/null and b/public/textures/vanillabackport/black_harness.png differ diff --git a/public/textures/vanillabackport/blue_harness.png b/public/textures/vanillabackport/blue_harness.png new file mode 100644 index 00000000..93021b92 Binary files /dev/null and b/public/textures/vanillabackport/blue_harness.png differ diff --git a/public/textures/vanillabackport/brown_harness.png b/public/textures/vanillabackport/brown_harness.png new file mode 100644 index 00000000..ff272899 Binary files /dev/null and b/public/textures/vanillabackport/brown_harness.png differ diff --git a/public/textures/vanillabackport/chiseled_resin_bricks.png b/public/textures/vanillabackport/chiseled_resin_bricks.png new file mode 100644 index 00000000..17671479 Binary files /dev/null and b/public/textures/vanillabackport/chiseled_resin_bricks.png differ diff --git a/public/textures/vanillabackport/closed_eyeblossom.png b/public/textures/vanillabackport/closed_eyeblossom.png new file mode 100644 index 00000000..0206b60e Binary files /dev/null and b/public/textures/vanillabackport/closed_eyeblossom.png differ diff --git a/public/textures/vanillabackport/creaking_heart.png b/public/textures/vanillabackport/creaking_heart.png new file mode 100644 index 00000000..aa0b8d3b Binary files /dev/null and b/public/textures/vanillabackport/creaking_heart.png differ diff --git a/public/textures/vanillabackport/creaking_spawn_egg.png b/public/textures/vanillabackport/creaking_spawn_egg.png new file mode 100644 index 00000000..10abcb52 Binary files /dev/null and b/public/textures/vanillabackport/creaking_spawn_egg.png differ diff --git a/public/textures/vanillabackport/cyan_harness.png b/public/textures/vanillabackport/cyan_harness.png new file mode 100644 index 00000000..f31a3875 Binary files /dev/null and b/public/textures/vanillabackport/cyan_harness.png differ diff --git a/public/textures/vanillabackport/dried_ghast.png b/public/textures/vanillabackport/dried_ghast.png new file mode 100644 index 00000000..c79dbff5 Binary files /dev/null and b/public/textures/vanillabackport/dried_ghast.png differ diff --git a/public/textures/vanillabackport/gray_harness.png b/public/textures/vanillabackport/gray_harness.png new file mode 100644 index 00000000..43a89e87 Binary files /dev/null and b/public/textures/vanillabackport/gray_harness.png differ diff --git a/public/textures/vanillabackport/green_harness.png b/public/textures/vanillabackport/green_harness.png new file mode 100644 index 00000000..aa3285c0 Binary files /dev/null and b/public/textures/vanillabackport/green_harness.png differ diff --git a/public/textures/vanillabackport/happy_ghast_spawn_egg.png b/public/textures/vanillabackport/happy_ghast_spawn_egg.png new file mode 100644 index 00000000..f8f64d84 Binary files /dev/null and b/public/textures/vanillabackport/happy_ghast_spawn_egg.png differ diff --git a/public/textures/vanillabackport/light_blue_harness.png b/public/textures/vanillabackport/light_blue_harness.png new file mode 100644 index 00000000..4f837a74 Binary files /dev/null and b/public/textures/vanillabackport/light_blue_harness.png differ diff --git a/public/textures/vanillabackport/light_gray_harness.png b/public/textures/vanillabackport/light_gray_harness.png new file mode 100644 index 00000000..29ac980b Binary files /dev/null and b/public/textures/vanillabackport/light_gray_harness.png differ diff --git a/public/textures/vanillabackport/lime_harness.png b/public/textures/vanillabackport/lime_harness.png new file mode 100644 index 00000000..9246329b Binary files /dev/null and b/public/textures/vanillabackport/lime_harness.png differ diff --git a/public/textures/vanillabackport/magenta_harness.png b/public/textures/vanillabackport/magenta_harness.png new file mode 100644 index 00000000..0a64c341 Binary files /dev/null and b/public/textures/vanillabackport/magenta_harness.png differ diff --git a/public/textures/vanillabackport/open_eyeblossom.png b/public/textures/vanillabackport/open_eyeblossom.png new file mode 100644 index 00000000..fc96cc08 Binary files /dev/null and b/public/textures/vanillabackport/open_eyeblossom.png differ diff --git a/public/textures/vanillabackport/orange_harness.png b/public/textures/vanillabackport/orange_harness.png new file mode 100644 index 00000000..8e096b92 Binary files /dev/null and b/public/textures/vanillabackport/orange_harness.png differ diff --git a/public/textures/vanillabackport/pale_hanging_moss.png b/public/textures/vanillabackport/pale_hanging_moss.png new file mode 100644 index 00000000..034e02cb Binary files /dev/null and b/public/textures/vanillabackport/pale_hanging_moss.png differ diff --git a/public/textures/vanillabackport/pale_moss_block.png b/public/textures/vanillabackport/pale_moss_block.png new file mode 100644 index 00000000..f28b858c Binary files /dev/null and b/public/textures/vanillabackport/pale_moss_block.png differ diff --git a/public/textures/vanillabackport/pale_moss_carpet.png b/public/textures/vanillabackport/pale_moss_carpet.png new file mode 100644 index 00000000..17ebbd79 Binary files /dev/null and b/public/textures/vanillabackport/pale_moss_carpet.png differ diff --git a/public/textures/vanillabackport/pale_oak_boat.png b/public/textures/vanillabackport/pale_oak_boat.png new file mode 100644 index 00000000..e34f9063 Binary files /dev/null and b/public/textures/vanillabackport/pale_oak_boat.png differ diff --git a/public/textures/vanillabackport/pale_oak_button.png b/public/textures/vanillabackport/pale_oak_button.png new file mode 100644 index 00000000..4ae2c485 Binary files /dev/null and b/public/textures/vanillabackport/pale_oak_button.png differ diff --git a/public/textures/vanillabackport/pale_oak_chest_boat.png b/public/textures/vanillabackport/pale_oak_chest_boat.png new file mode 100644 index 00000000..35f3b964 Binary files /dev/null and b/public/textures/vanillabackport/pale_oak_chest_boat.png differ diff --git a/public/textures/vanillabackport/pale_oak_door.png b/public/textures/vanillabackport/pale_oak_door.png new file mode 100644 index 00000000..4a2991af Binary files /dev/null and b/public/textures/vanillabackport/pale_oak_door.png differ diff --git a/public/textures/vanillabackport/pale_oak_fence.png b/public/textures/vanillabackport/pale_oak_fence.png new file mode 100644 index 00000000..d38841de Binary files /dev/null and b/public/textures/vanillabackport/pale_oak_fence.png differ diff --git a/public/textures/vanillabackport/pale_oak_fence_gate.png b/public/textures/vanillabackport/pale_oak_fence_gate.png new file mode 100644 index 00000000..58fb277a Binary files /dev/null and b/public/textures/vanillabackport/pale_oak_fence_gate.png differ diff --git a/public/textures/vanillabackport/pale_oak_hanging_sign.png b/public/textures/vanillabackport/pale_oak_hanging_sign.png new file mode 100644 index 00000000..e757fc1f Binary files /dev/null and b/public/textures/vanillabackport/pale_oak_hanging_sign.png differ diff --git a/public/textures/vanillabackport/pale_oak_leaves.png b/public/textures/vanillabackport/pale_oak_leaves.png new file mode 100644 index 00000000..2b206441 Binary files /dev/null and b/public/textures/vanillabackport/pale_oak_leaves.png differ diff --git a/public/textures/vanillabackport/pale_oak_log.png b/public/textures/vanillabackport/pale_oak_log.png new file mode 100644 index 00000000..8576e6bd Binary files /dev/null and b/public/textures/vanillabackport/pale_oak_log.png differ diff --git a/public/textures/vanillabackport/pale_oak_planks.png b/public/textures/vanillabackport/pale_oak_planks.png new file mode 100644 index 00000000..6c9342ed Binary files /dev/null and b/public/textures/vanillabackport/pale_oak_planks.png differ diff --git a/public/textures/vanillabackport/pale_oak_pressure_plate.png b/public/textures/vanillabackport/pale_oak_pressure_plate.png new file mode 100644 index 00000000..0b5c9e46 Binary files /dev/null and b/public/textures/vanillabackport/pale_oak_pressure_plate.png differ diff --git a/public/textures/vanillabackport/pale_oak_sapling.png b/public/textures/vanillabackport/pale_oak_sapling.png new file mode 100644 index 00000000..85f74cd8 Binary files /dev/null and b/public/textures/vanillabackport/pale_oak_sapling.png differ diff --git a/public/textures/vanillabackport/pale_oak_sign.png b/public/textures/vanillabackport/pale_oak_sign.png new file mode 100644 index 00000000..b9314365 Binary files /dev/null and b/public/textures/vanillabackport/pale_oak_sign.png differ diff --git a/public/textures/vanillabackport/pale_oak_slab.png b/public/textures/vanillabackport/pale_oak_slab.png new file mode 100644 index 00000000..11bfb59f Binary files /dev/null and b/public/textures/vanillabackport/pale_oak_slab.png differ diff --git a/public/textures/vanillabackport/pale_oak_stairs.png b/public/textures/vanillabackport/pale_oak_stairs.png new file mode 100644 index 00000000..d3b68b28 Binary files /dev/null and b/public/textures/vanillabackport/pale_oak_stairs.png differ diff --git a/public/textures/vanillabackport/pale_oak_trapdoor.png b/public/textures/vanillabackport/pale_oak_trapdoor.png new file mode 100644 index 00000000..cb25acbf Binary files /dev/null and b/public/textures/vanillabackport/pale_oak_trapdoor.png differ diff --git a/public/textures/vanillabackport/pale_oak_wood.png b/public/textures/vanillabackport/pale_oak_wood.png new file mode 100644 index 00000000..51b3c52b Binary files /dev/null and b/public/textures/vanillabackport/pale_oak_wood.png differ diff --git a/public/textures/vanillabackport/pink_harness.png b/public/textures/vanillabackport/pink_harness.png new file mode 100644 index 00000000..eb79e658 Binary files /dev/null and b/public/textures/vanillabackport/pink_harness.png differ diff --git a/public/textures/vanillabackport/purple_harness.png b/public/textures/vanillabackport/purple_harness.png new file mode 100644 index 00000000..8931a681 Binary files /dev/null and b/public/textures/vanillabackport/purple_harness.png differ diff --git a/public/textures/vanillabackport/red_harness.png b/public/textures/vanillabackport/red_harness.png new file mode 100644 index 00000000..4edbb22d Binary files /dev/null and b/public/textures/vanillabackport/red_harness.png differ diff --git a/public/textures/vanillabackport/resin_block.png b/public/textures/vanillabackport/resin_block.png new file mode 100644 index 00000000..1a7d62e4 Binary files /dev/null and b/public/textures/vanillabackport/resin_block.png differ diff --git a/public/textures/vanillabackport/resin_brick.png b/public/textures/vanillabackport/resin_brick.png new file mode 100644 index 00000000..2811cf17 Binary files /dev/null and b/public/textures/vanillabackport/resin_brick.png differ diff --git a/public/textures/vanillabackport/resin_brick_slab.png b/public/textures/vanillabackport/resin_brick_slab.png new file mode 100644 index 00000000..bafed213 Binary files /dev/null and b/public/textures/vanillabackport/resin_brick_slab.png differ diff --git a/public/textures/vanillabackport/resin_brick_stairs.png b/public/textures/vanillabackport/resin_brick_stairs.png new file mode 100644 index 00000000..e284ef90 Binary files /dev/null and b/public/textures/vanillabackport/resin_brick_stairs.png differ diff --git a/public/textures/vanillabackport/resin_brick_wall.png b/public/textures/vanillabackport/resin_brick_wall.png new file mode 100644 index 00000000..e0d1a35f Binary files /dev/null and b/public/textures/vanillabackport/resin_brick_wall.png differ diff --git a/public/textures/vanillabackport/resin_bricks.png b/public/textures/vanillabackport/resin_bricks.png new file mode 100644 index 00000000..7de200c3 Binary files /dev/null and b/public/textures/vanillabackport/resin_bricks.png differ diff --git a/public/textures/vanillabackport/resin_clump.png b/public/textures/vanillabackport/resin_clump.png new file mode 100644 index 00000000..131f9ab7 Binary files /dev/null and b/public/textures/vanillabackport/resin_clump.png differ diff --git a/public/textures/vanillabackport/stripped_pale_oak_log.png b/public/textures/vanillabackport/stripped_pale_oak_log.png new file mode 100644 index 00000000..d90c1682 Binary files /dev/null and b/public/textures/vanillabackport/stripped_pale_oak_log.png differ diff --git a/public/textures/vanillabackport/stripped_pale_oak_wood.png b/public/textures/vanillabackport/stripped_pale_oak_wood.png new file mode 100644 index 00000000..c0c85c98 Binary files /dev/null and b/public/textures/vanillabackport/stripped_pale_oak_wood.png differ diff --git a/public/textures/vanillabackport/white_harness.png b/public/textures/vanillabackport/white_harness.png new file mode 100644 index 00000000..ab9ed2d4 Binary files /dev/null and b/public/textures/vanillabackport/white_harness.png differ diff --git a/public/textures/vanillabackport/yellow_harness.png b/public/textures/vanillabackport/yellow_harness.png new file mode 100644 index 00000000..d9be2c56 Binary files /dev/null and b/public/textures/vanillabackport/yellow_harness.png differ diff --git a/public/textures/waystones/black_portstone.png b/public/textures/waystones/black_portstone.png new file mode 100644 index 00000000..fde56c53 Binary files /dev/null and b/public/textures/waystones/black_portstone.png differ diff --git a/public/textures/waystones/black_sharestone.png b/public/textures/waystones/black_sharestone.png new file mode 100644 index 00000000..00ff88d0 Binary files /dev/null and b/public/textures/waystones/black_sharestone.png differ diff --git a/public/textures/waystones/blackstone_waystone.png b/public/textures/waystones/blackstone_waystone.png new file mode 100644 index 00000000..7cd64801 Binary files /dev/null and b/public/textures/waystones/blackstone_waystone.png differ diff --git a/public/textures/waystones/blank_scroll.png b/public/textures/waystones/blank_scroll.png new file mode 100644 index 00000000..15eaa4e4 Binary files /dev/null and b/public/textures/waystones/blank_scroll.png differ diff --git a/public/textures/waystones/blue_portstone.png b/public/textures/waystones/blue_portstone.png new file mode 100644 index 00000000..2999d063 Binary files /dev/null and b/public/textures/waystones/blue_portstone.png differ diff --git a/public/textures/waystones/blue_sharestone.png b/public/textures/waystones/blue_sharestone.png new file mode 100644 index 00000000..91bd70cf Binary files /dev/null and b/public/textures/waystones/blue_sharestone.png differ diff --git a/public/textures/waystones/brown_portstone.png b/public/textures/waystones/brown_portstone.png new file mode 100644 index 00000000..e613f40a Binary files /dev/null and b/public/textures/waystones/brown_portstone.png differ diff --git a/public/textures/waystones/brown_sharestone.png b/public/textures/waystones/brown_sharestone.png new file mode 100644 index 00000000..987ca13c Binary files /dev/null and b/public/textures/waystones/brown_sharestone.png differ diff --git a/public/textures/waystones/cyan_portstone.png b/public/textures/waystones/cyan_portstone.png new file mode 100644 index 00000000..cf2713c1 Binary files /dev/null and b/public/textures/waystones/cyan_portstone.png differ diff --git a/public/textures/waystones/cyan_sharestone.png b/public/textures/waystones/cyan_sharestone.png new file mode 100644 index 00000000..f85e1c6d Binary files /dev/null and b/public/textures/waystones/cyan_sharestone.png differ diff --git a/public/textures/waystones/deepslate_waystone.png b/public/textures/waystones/deepslate_waystone.png new file mode 100644 index 00000000..93de3ea7 Binary files /dev/null and b/public/textures/waystones/deepslate_waystone.png differ diff --git a/public/textures/waystones/dormant_shard.png b/public/textures/waystones/dormant_shard.png new file mode 100644 index 00000000..6004c111 Binary files /dev/null and b/public/textures/waystones/dormant_shard.png differ diff --git a/public/textures/waystones/end_stone_waystone.png b/public/textures/waystones/end_stone_waystone.png new file mode 100644 index 00000000..a82a7cd0 Binary files /dev/null and b/public/textures/waystones/end_stone_waystone.png differ diff --git a/public/textures/waystones/gray_portstone.png b/public/textures/waystones/gray_portstone.png new file mode 100644 index 00000000..75bd562c Binary files /dev/null and b/public/textures/waystones/gray_portstone.png differ diff --git a/public/textures/waystones/gray_sharestone.png b/public/textures/waystones/gray_sharestone.png new file mode 100644 index 00000000..ae74a59f Binary files /dev/null and b/public/textures/waystones/gray_sharestone.png differ diff --git a/public/textures/waystones/green_portstone.png b/public/textures/waystones/green_portstone.png new file mode 100644 index 00000000..37b57e93 Binary files /dev/null and b/public/textures/waystones/green_portstone.png differ diff --git a/public/textures/waystones/green_sharestone.png b/public/textures/waystones/green_sharestone.png new file mode 100644 index 00000000..74aa43cc Binary files /dev/null and b/public/textures/waystones/green_sharestone.png differ diff --git a/public/textures/waystones/light_blue_portstone.png b/public/textures/waystones/light_blue_portstone.png new file mode 100644 index 00000000..b6e35dc7 Binary files /dev/null and b/public/textures/waystones/light_blue_portstone.png differ diff --git a/public/textures/waystones/light_blue_sharestone.png b/public/textures/waystones/light_blue_sharestone.png new file mode 100644 index 00000000..91ae7993 Binary files /dev/null and b/public/textures/waystones/light_blue_sharestone.png differ diff --git a/public/textures/waystones/light_gray_portstone.png b/public/textures/waystones/light_gray_portstone.png new file mode 100644 index 00000000..40d245a9 Binary files /dev/null and b/public/textures/waystones/light_gray_portstone.png differ diff --git a/public/textures/waystones/light_gray_sharestone.png b/public/textures/waystones/light_gray_sharestone.png new file mode 100644 index 00000000..e671a85f Binary files /dev/null and b/public/textures/waystones/light_gray_sharestone.png differ diff --git a/public/textures/waystones/lime_portstone.png b/public/textures/waystones/lime_portstone.png new file mode 100644 index 00000000..51ad29c9 Binary files /dev/null and b/public/textures/waystones/lime_portstone.png differ diff --git a/public/textures/waystones/lime_sharestone.png b/public/textures/waystones/lime_sharestone.png new file mode 100644 index 00000000..797121db Binary files /dev/null and b/public/textures/waystones/lime_sharestone.png differ diff --git a/public/textures/waystones/magenta_portstone.png b/public/textures/waystones/magenta_portstone.png new file mode 100644 index 00000000..afc56d09 Binary files /dev/null and b/public/textures/waystones/magenta_portstone.png differ diff --git a/public/textures/waystones/magenta_sharestone.png b/public/textures/waystones/magenta_sharestone.png new file mode 100644 index 00000000..3444f1a9 Binary files /dev/null and b/public/textures/waystones/magenta_sharestone.png differ diff --git a/public/textures/waystones/mossy_waystone.png b/public/textures/waystones/mossy_waystone.png new file mode 100644 index 00000000..4255b186 Binary files /dev/null and b/public/textures/waystones/mossy_waystone.png differ diff --git a/public/textures/waystones/orange_portstone.png b/public/textures/waystones/orange_portstone.png new file mode 100644 index 00000000..4ac1807f Binary files /dev/null and b/public/textures/waystones/orange_portstone.png differ diff --git a/public/textures/waystones/orange_sharestone.png b/public/textures/waystones/orange_sharestone.png new file mode 100644 index 00000000..5d4a16b0 Binary files /dev/null and b/public/textures/waystones/orange_sharestone.png differ diff --git a/public/textures/waystones/pink_portstone.png b/public/textures/waystones/pink_portstone.png new file mode 100644 index 00000000..55bb673a Binary files /dev/null and b/public/textures/waystones/pink_portstone.png differ diff --git a/public/textures/waystones/pink_sharestone.png b/public/textures/waystones/pink_sharestone.png new file mode 100644 index 00000000..36b7a083 Binary files /dev/null and b/public/textures/waystones/pink_sharestone.png differ diff --git a/public/textures/waystones/purple_portstone.png b/public/textures/waystones/purple_portstone.png new file mode 100644 index 00000000..aa7ff741 Binary files /dev/null and b/public/textures/waystones/purple_portstone.png differ diff --git a/public/textures/waystones/purple_sharestone.png b/public/textures/waystones/purple_sharestone.png new file mode 100644 index 00000000..9bcb1ba2 Binary files /dev/null and b/public/textures/waystones/purple_sharestone.png differ diff --git a/public/textures/waystones/red_portstone.png b/public/textures/waystones/red_portstone.png new file mode 100644 index 00000000..ed7de4eb Binary files /dev/null and b/public/textures/waystones/red_portstone.png differ diff --git a/public/textures/waystones/red_sharestone.png b/public/textures/waystones/red_sharestone.png new file mode 100644 index 00000000..e8a1ab6e Binary files /dev/null and b/public/textures/waystones/red_sharestone.png differ diff --git a/public/textures/waystones/return_scroll.png b/public/textures/waystones/return_scroll.png new file mode 100644 index 00000000..3b2aea07 Binary files /dev/null and b/public/textures/waystones/return_scroll.png differ diff --git a/public/textures/waystones/sandy_waystone.png b/public/textures/waystones/sandy_waystone.png new file mode 100644 index 00000000..0e0f3bd1 Binary files /dev/null and b/public/textures/waystones/sandy_waystone.png differ diff --git a/public/textures/waystones/warp_dust.png b/public/textures/waystones/warp_dust.png new file mode 100644 index 00000000..6f7190a5 Binary files /dev/null and b/public/textures/waystones/warp_dust.png differ diff --git a/public/textures/waystones/warp_plate.png b/public/textures/waystones/warp_plate.png new file mode 100644 index 00000000..2bb7ad72 Binary files /dev/null and b/public/textures/waystones/warp_plate.png differ diff --git a/public/textures/waystones/warp_scroll.png b/public/textures/waystones/warp_scroll.png new file mode 100644 index 00000000..9df5ad72 Binary files /dev/null and b/public/textures/waystones/warp_scroll.png differ diff --git a/public/textures/waystones/warp_stone.png b/public/textures/waystones/warp_stone.png new file mode 100644 index 00000000..970ebf47 Binary files /dev/null and b/public/textures/waystones/warp_stone.png differ diff --git a/public/textures/waystones/waystone.png b/public/textures/waystones/waystone.png new file mode 100644 index 00000000..79e09af7 Binary files /dev/null and b/public/textures/waystones/waystone.png differ diff --git a/public/textures/waystones/white_portstone.png b/public/textures/waystones/white_portstone.png new file mode 100644 index 00000000..14d3d916 Binary files /dev/null and b/public/textures/waystones/white_portstone.png differ diff --git a/public/textures/waystones/yellow_portstone.png b/public/textures/waystones/yellow_portstone.png new file mode 100644 index 00000000..b79f50f8 Binary files /dev/null and b/public/textures/waystones/yellow_portstone.png differ diff --git a/public/textures/waystones/yellow_sharestone.png b/public/textures/waystones/yellow_sharestone.png new file mode 100644 index 00000000..c825acce Binary files /dev/null and b/public/textures/waystones/yellow_sharestone.png differ diff --git a/public/textures/xercapaint/item_canvas.png b/public/textures/xercapaint/item_canvas.png new file mode 100644 index 00000000..634433d7 Binary files /dev/null and b/public/textures/xercapaint/item_canvas.png differ diff --git a/public/textures/xercapaint/item_canvas_large.png b/public/textures/xercapaint/item_canvas_large.png new file mode 100644 index 00000000..159c68f8 Binary files /dev/null and b/public/textures/xercapaint/item_canvas_large.png differ diff --git a/public/textures/xercapaint/item_canvas_long.png b/public/textures/xercapaint/item_canvas_long.png new file mode 100644 index 00000000..877051a3 Binary files /dev/null and b/public/textures/xercapaint/item_canvas_long.png differ diff --git a/public/textures/xercapaint/item_canvas_tall.png b/public/textures/xercapaint/item_canvas_tall.png new file mode 100644 index 00000000..8a8538f5 Binary files /dev/null and b/public/textures/xercapaint/item_canvas_tall.png differ diff --git a/public/textures/xercapaint/item_easel.png b/public/textures/xercapaint/item_easel.png new file mode 100644 index 00000000..ad117fa7 Binary files /dev/null and b/public/textures/xercapaint/item_easel.png differ diff --git a/public/textures/xercapaint/item_palette.png b/public/textures/xercapaint/item_palette.png new file mode 100644 index 00000000..e4bfe50c Binary files /dev/null and b/public/textures/xercapaint/item_palette.png differ diff --git a/public/textures/xercapaint/item_palette__{'xercapaint__palette_basic_colors'__[B;1B,1B,1B,1B,1B,1B,1B,1B,1B,1B,1B,1B,1B,1B,1B,1B]}.png b/public/textures/xercapaint/item_palette__{'xercapaint__palette_basic_colors'__[B;1B,1B,1B,1B,1B,1B,1B,1B,1B,1B,1B,1B,1B,1B,1B,1B]}.png new file mode 100644 index 00000000..6a57aab9 Binary files /dev/null and b/public/textures/xercapaint/item_palette__{'xercapaint__palette_basic_colors'__[B;1B,1B,1B,1B,1B,1B,1B,1B,1B,1B,1B,1B,1B,1B,1B,1B]}.png differ diff --git a/src/app/account/page.tsx b/src/app/account/page.tsx new file mode 100644 index 00000000..e69de29b diff --git a/src/app/api/items/route.ts b/src/app/api/items/route.ts new file mode 100644 index 00000000..0aa6077b --- /dev/null +++ b/src/app/api/items/route.ts @@ -0,0 +1,21 @@ +// make api route to get all sellables +import { NextResponse } from "next/server"; +import { auth } from "~/server/auth"; +import { db } from "~/server/db"; + +export async function GET() { + const session = await auth(); + + if (!session) { + return NextResponse.json({ error: "Unauthorized" }, { status: 401 }); + } + + const sellables = await db.sellable.findMany({ + include: { + shop: { select: { label: true } }, + item: { select: { stock: true } }, + }, + }); + + return NextResponse.json(sellables); +} diff --git a/src/app/api/user/route.ts b/src/app/api/user/route.ts new file mode 100644 index 00000000..5bdb4711 --- /dev/null +++ b/src/app/api/user/route.ts @@ -0,0 +1,175 @@ +// make api route to get user data if user is logged in (nextauth) +import { NextResponse } from "next/server"; +import { auth } from "~/server/auth"; +import type { Session } from "next-auth"; +import { db } from "~/server/db"; + +export async function PATCH(request: Request) { + const session = await auth(); + + if (!session?.user?.id) { + return NextResponse.json({ error: "Unauthorized" }, { status: 401 }); + } + + const { adress } = (await request.json()) as { adress: string }; + + if (!adress || typeof adress !== "string") { + return NextResponse.json({ error: "Invalid adress" }, { status: 400 }); + } + + const result = await db.adress.create({ + data: { + adress, + userId: session.user.id, + }, + }); + + return NextResponse.json(result, { status: 201 }); +} + +export async function GET() { + const session: Session | null = await auth(); + + if (!session?.user?.id) { + return NextResponse.json({ error: "Unauthorized" }, { status: 401 }); + } + + const user = await db.user.findUnique({ + where: { id: session.user.id }, + select: { + id: true, + name: true, + adresses: { + select: { adress: true }, + }, + shops: { + select: { id: true, label: true, sellables: true }, + }, + }, + }); + + if (!user) { + return NextResponse.json({ error: "User not found" }, { status: 404 }); + } + + return NextResponse.json({ + ...user, + adresses: user.adresses.map((a) => a.adress), + }); +} + +type ShopInput = { + id: number; + label: string; +}; + +export async function POST(request: Request) { + const session: Session | null = await auth(); + + if (!session?.user?.id) { + return NextResponse.json({ error: "Unauthorized" }, { status: 401 }); + } + + const body = (await request.json()) as { + adresses: string[]; + shops: ShopInput[]; + }; + + if (!Array.isArray(body.adresses) || !Array.isArray(body.shops)) { + return NextResponse.json( + { error: "Invalid input format" }, + { status: 400 }, + ); + } + + /* ─────────────── ADDRESSES ─────────────── */ + + const currentAdresses = await db.adress.findMany({ + where: { userId: session.user.id }, + select: { id: true, adress: true }, + }); + + const currentAdressSet = new Set(currentAdresses.map((a) => a.adress)); + const incomingAdressSet = new Set(body.adresses); + + // Add only new addresses + const adressesToAdd = body.adresses.filter((a) => !currentAdressSet.has(a)); + + // Remove only missing addresses + const adressesToDelete = currentAdresses + .filter((a) => !incomingAdressSet.has(a.adress)) + .map((a) => a.id); + + if (adressesToAdd.length > 0) { + await db.adress.createMany({ + data: adressesToAdd.map((adress) => ({ + adress, + userId: session.user.id, + })), + }); + } + + if (adressesToDelete.length > 0) { + await db.adress.deleteMany({ + where: { id: { in: adressesToDelete } }, + }); + } + + /* ─────────────── SHOPS ─────────────── */ + + const currentShops = await db.shop.findMany({ + where: { userId: session.user.id }, + select: { id: true, label: true }, + }); + + const incomingShopMap = new Map(body.shops.map((s) => [s.id, s.label])); + + const currentShopIds = new Set(currentShops.map((s) => s.id)); + const incomingShopIds = new Set(body.shops.map((s) => s.id)); + + if (!Array.from(incomingShopIds).every((id) => Number.isInteger(id))) { + throw new Error("Invalid shop id"); + } + + // Create new shops + const shopsToCreate = body.shops.filter((s) => !currentShopIds.has(s.id)); + + if (shopsToCreate.length > 0) { + await db.shop.createMany({ + data: shopsToCreate.map((s) => ({ + id: s.id, + label: s.label, + userId: session.user.id, + })), + }); + } + + // Update labels ONLY if changed + const shopsToUpdate = currentShops.filter( + (s) => incomingShopMap.has(s.id) && incomingShopMap.get(s.id) !== s.label, + ); + + await Promise.all( + shopsToUpdate.map((s) => + db.shop.update({ + where: { id: s.id }, + data: { label: incomingShopMap.get(s.id)! }, + }), + ), + ); + + // Delete removed shops (Sellables cascade) + const shopsToDelete = currentShops + .filter((s) => !incomingShopIds.has(s.id)) + .map((s) => s.id); + + if (shopsToDelete.length > 0) { + await db.shop.deleteMany({ + where: { id: { in: shopsToDelete } }, + }); + } + + /* ─────────────── RESPONSE ─────────────── */ + + return NextResponse.json({ success: true }); +} diff --git a/src/app/items/page.tsx b/src/app/items/page.tsx new file mode 100644 index 00000000..89dcaf4d --- /dev/null +++ b/src/app/items/page.tsx @@ -0,0 +1,204 @@ +import { db } from "~/server/db"; +import { auth } from "~/server/auth"; +import { redirect } from "next/navigation"; +import { revalidatePath } from "next/cache"; + +export default async function ItemsPage() { + const session = await auth(); + + if (!session?.user?.id) { + redirect("/sign-in"); + } + const userId = session.user.id; + + // fetch all items for shops owned by the user + const items = await db.sellable.findMany({ + where: { shop: { userId: userId } }, + include: { shop: true }, + }); + + // extract unique shops for dropdown + const uniqueShops = await db.shop.findMany({ + where: { userId: userId }, + }); + + // --- Server actions --- + async function addItem(data: FormData) { + "use server"; + const name = data.get("item_name") as string; + const price = parseFloat(data.get("price") as string); + const amount = parseInt(data.get("amount") as string); + const shopId = parseInt(data.get("shopId") as string); + + if (!name || isNaN(price) || isNaN(amount) || isNaN(shopId)) return; + + await db.sellable.create({ + data: { item_name: name, price, amount, shopId }, + }); + + revalidatePath("/items"); + } + + async function updateItem(data: FormData) { + "use server"; + const id = data.get("id") as string; + const name = data.get("item_name") as string; + const price = parseFloat(data.get("price") as string); + const amount = parseInt(data.get("amount") as string); + + if (!id || !name || isNaN(price) || isNaN(amount)) return; + + await db.sellable.update({ + where: { id }, + data: { item_name: name, price, amount }, + }); + + revalidatePath("/items"); + } + + async function deleteItem(data: FormData) { + "use server"; + const id = data.get("id") as string; + if (!id) return; + + await db.sellable.delete({ where: { id } }); + revalidatePath("/items"); + } + + return ( +

+
+

+ Manage Items +

+ + {/* Add new item */} +
+

Add New Item

+
+ + + + + +
+
+ + {/* Existing items in a grid */} +
+

Your Items

+
+ {items.map((item) => ( +
+ {/* Update form */} +
+ + + + + + + + + +
+ + {/* Delete button */} +
+ + +
+ +

Shop: {item.shop.label}

+
+ ))} +
+
+
+
+ ); +} diff --git a/src/app/page.tsx b/src/app/page.tsx index 773fef1b..3d5b5925 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -1,37 +1,9 @@ -import Link from "next/link"; +import { auth } from "~/server/auth"; +import type { Session } from "next-auth"; +import HomeClient from "~/components/HomeClient"; -export default function HomePage() { - return ( -
-
-

- Create T3 App -

-
- -

First Steps →

-
- Just the basics - Everything you need to know to set up your - database and authentication. -
- - -

Documentation →

-
- Learn more about Create T3 App, the libraries it uses, and how to - deploy it. -
- -
-
-
- ); +export default async function HomePage() { + const session: Session | null = await auth(); + + return ; } diff --git a/src/components/HomeClient.tsx b/src/components/HomeClient.tsx new file mode 100644 index 00000000..b021f34a --- /dev/null +++ b/src/components/HomeClient.tsx @@ -0,0 +1,48 @@ +"use client"; + +import { useState } from "react"; +import Link from "next/link"; +import Items from "~/components/sellable_items"; +import Search from "~/components/search"; +import type { Session } from "next-auth"; + +type Props = { + session: Session | null; +}; + +export default function HomeClient({ session }: Props) { + const [query, setQuery] = useState(""); + + return ( +
+
+ + + {session?.user ? ( + + Sign out + + ) : ( + + Sign in + + )} +
+ +
+

+ Suchodupin MC Shop +

+ + {/* ✅ query flows down */} + +
+
+ ); +} diff --git a/src/components/editable-shops.tsx b/src/components/editable-shops.tsx new file mode 100644 index 00000000..e7f383c0 --- /dev/null +++ b/src/components/editable-shops.tsx @@ -0,0 +1,117 @@ +"use client"; + +import { useState } from "react"; + +type Shop = { + id: number; + label: string; +}; + +export default function EditableShops({ shops }: { shops: Shop[] }) { + const [items, setItems] = useState(shops); + const [saving, setSaving] = useState(false); + + function addShop() { + setItems((prev) => [ + ...prev, + { id: 0, label: "" }, // user must set ID + ]); + } + + function removeShop(id: number) { + setItems((prev) => prev.filter((s) => s.id !== id)); + } + + function updateId(oldId: number, newId: number) { + setItems((prev) => + prev.map((s) => (s.id === oldId ? { ...s, id: newId } : s)), + ); + } + + function updateLabel(id: number, value: string) { + setItems((prev) => + prev.map((s) => (s.id === id ? { ...s, label: value } : s)), + ); + } + + function hasDuplicateIds() { + const ids = items.map((s) => s.id).filter((id) => id !== 0); + return new Set(ids).size !== ids.length; + } + + async function save() { + if (hasDuplicateIds()) { + alert("Shop IDs must be unique"); + return; + } + + setSaving(true); + + await fetch("/api/user", { + method: "POST", + headers: { "Content-Type": "application/json" }, + body: JSON.stringify({ + shops: items.filter((s) => s.id > 0), + }), + }); + + setSaving(false); + } + + return ( +
+
+

Shops

+ +
+ + {items.map((shop, index) => ( +
+
+ + + updateId(shop.id, Number(e.target.value))} + className="w-full rounded-md bg-black/40 p-2 text-white outline-none focus:ring-2 focus:ring-purple-400" + /> + + updateLabel(shop.id, e.target.value)} + className="w-full rounded-md bg-black/40 p-2 text-white outline-none focus:ring-2 focus:ring-purple-400" + /> +
+ + +
+ ))} + + +
+ ); +} diff --git a/src/components/search.tsx b/src/components/search.tsx new file mode 100644 index 00000000..bc8776d3 --- /dev/null +++ b/src/components/search.tsx @@ -0,0 +1,29 @@ +"use client"; + +type Props = { + query: string; + setQuery: (value: string) => void; +}; + +export default function Search({ query, setQuery }: Props) { + return ( +
+ setQuery(e.target.value)} + placeholder="Search items..." + className="w-48 rounded-full bg-white/10 px-4 py-2 text-sm text-white placeholder-white/60 transition outline-none focus:bg-white/20 focus:ring-2 focus:ring-white/30" + /> + {query && ( + + )} +
+ ); +} diff --git a/src/components/sellable_items.tsx b/src/components/sellable_items.tsx new file mode 100644 index 00000000..13974f7f --- /dev/null +++ b/src/components/sellable_items.tsx @@ -0,0 +1,88 @@ +"use client"; + +import { useEffect, useState } from "react"; + +type ApiItem = { + id: string; + item_name: string; + amount: number; + price: number; + enabled: boolean; + shop: { + label: string; + }; + item: { + stock: number; + }; +}; + +const formatName = (name: string) => { + const parts = name.split(":"); + if (!parts[1]) return ""; + return parts[1] + .split("_") + .map((part) => part.charAt(0).toUpperCase() + part.slice(1)) + .join(" "); +}; + +const getImage = (name: string) => { + const [mod, item] = name.split(":"); + return `/textures/${mod}/${item}.png`; +}; + +const Items = ({ query }: { query: string }) => { + const [items, setItems] = useState([]); + + useEffect(() => { + const loadItems = async () => { + try { + const res = await fetch("/api/items"); + const data = (await res.json()) as ApiItem[]; + + setItems(data.filter((item) => item.enabled)); + } catch (err) { + console.error("Failed to load items", err); + } + }; + + void loadItems(); + }, []); + + const filteredItems = items.filter((item) => + formatName(item.item_name).toLowerCase().includes(query.toLowerCase()), + ); + + return ( +
+ {filteredItems.map((item) => ( +
+ {item.item_name} + +
+

{formatName(item.item_name)}

+

{item.item.stock} available

+

Shop: {item.shop.label}

+
+ +
+ +

+ {item.price}$/{item.amount} +

+
+
+ ))} +
+ ); +}; + +export default Items;